Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions typescript/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion typescript/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@
"postpublish": "npm run clean-docs"
},
"dependencies": {
"@jambonz/schema": "^0.3.16",
"@jambonz/schema": "^0.3.18",
"ajv": "^8.17.1",
"ws": "^8.18.0"
},
Expand Down
4 changes: 3 additions & 1 deletion typescript/src/types/llm-vendors.generated.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// AUTO-GENERATED — DO NOT EDIT BY HAND.
// Source of truth: @jambonz/schema@0.3.16 verbs/agent.schema.json (llm.vendor.enum)
// Source of truth: @jambonz/schema@0.3.18 verbs/agent.schema.json (llm.vendor.enum)
// Regenerate with: npm run gen:types
//
// This file derives the LLM vendor list from the JSON schema so the SDK's
Expand All @@ -18,6 +18,8 @@ export const LLM_VENDORS = [
'azure-openai',
'groq',
'huggingface',
'moonshot',
'zai',
] as const;

/** Union of LLM vendor ids accepted by the agent verb's `llm.vendor`. */
Expand Down
10 changes: 10 additions & 0 deletions typescript/src/types/verbs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,14 @@ export interface LlmBaseOptions {
events?: string[];
/** Declarative transfer-to-human: injects a transfer tool and runs the packaged transfer when the model calls it. */
handoff?: Handoff;
/** Enable the built-in hangup tool for s2s verbs. When present, the runtime injects a 'hangup' tool; when the model calls it the call ends with the reason placed in an X-Reason SIP header (LLM-supplied reason wins, falling back to hangup.reason). */
hangup?: { reason?: string };
/** Opt-in per-response stall watchdog (ms) for s2s vendors that support app-driven turn-taking. Omit or set to 0 to disable (the default). */
responseTimeoutMs?: number;
/** When a response stall is detected (see responseTimeoutMs), cancel the in-progress server-side response. Has no effect unless responseTimeoutMs is set. */
cancelOnResponseTimeout?: boolean;
/** On caller barge-in, cancel the in-progress server-side response (app-driven turn-taking configurations). */
cancelOnBargeIn?: boolean;
}

export interface LlmVerb extends LlmBaseOptions {
Expand Down Expand Up @@ -316,6 +324,8 @@ export interface AgentVerb {
toolHook?: ActionHook;
/** Declarative transfer-to-human: injects a transfer tool and runs the packaged transfer when the model calls it. */
handoff?: Handoff;
/** Enable the built-in hangup tool. When present, the runtime injects a 'hangup' tool; when the model calls it the call ends with the reason placed in an X-Reason SIP header (LLM-supplied reason wins, falling back to hangup.reason). */
hangup?: { reason?: string };
/** Configuration for playing filler audio while tool calls are in progress. Prevents silence during long-running tool executions. */
toolFiller?: false | {
/** Filler mode. 'audio' plays a looping audio file. 'backchannel' uses TTS to speak short phrases. */
Expand Down