TypeScript SDK
The TypeScript SDK reference is generated from the authored public surface in
sdk/typescript/src. It covers the root package exports from
@valon-technologies/gestalt together with the build, runtime, schema,
and target entrypoints used by Bun-based providers.
Open the TypeScript API reference
import { definePlugin, ok, operation, s } from "@valon-technologies/gestalt";
export const plugin = definePlugin({
displayName: "Example Provider",
operations: [
operation({
id: "hello",
input: s.object({ name: s.string({ default: "World" }) }),
output: s.object({ message: s.string() }),
async handler(input) {
return ok({ message: `Hello, ${input.name}` });
},
}),
],
});import { parseRuntimeArgs, serve } from "@valon-technologies/gestalt/runtime";
const args = parseRuntimeArgs(process.argv.slice(2));Agent-provider surfaces are part of the same package:
import {
AgentRunStatus,
defineAgentProvider,
} from "@valon-technologies/gestalt";
export const provider = defineAgentProvider({
displayName: "Example Agent",
async startRun(request) {
return {
id: request.runId,
providerName: request.providerName || "example",
model: request.model,
status: AgentRunStatus.PENDING,
messages: request.messages,
};
},
async getRun(request) {
return { id: request.runId, providerName: "example", status: AgentRunStatus.RUNNING };
},
async listRuns() {
return [];
},
async cancelRun(request) {
return { id: request.runId, providerName: "example", status: AgentRunStatus.CANCELED };
},
});