@jambonz/schema 0.3.9 → 0.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -113,6 +113,8 @@ The `turn_end` event is the most useful for observability. It includes per-compo
113
113
 
114
114
  ## toolHook (function calling)
115
115
 
116
+ > **Before implementing a custom toolHook handler**, check if `@jambonz/tools` provides a pre-built tool that fits your needs (weather, web search, calculator, date/time, Wikipedia). Use `createWeather()`, `createTavilySearch()`, etc. with `registerTools()` to avoid hand-rolling common functionality. Call `list_jambonz_tools` in the MCP server for the full catalog.
117
+
116
118
  When the LLM requests a tool/function call, the agent sends a request to the `toolHook` with:
117
119
 
118
120
  ```json
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jambonz/schema",
3
- "version": "0.3.9",
3
+ "version": "0.3.11",
4
4
  "description": "JSON Schema definitions and validation for jambonz verb applications",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -86,10 +86,26 @@
86
86
  "description": "Allow the user to interrupt the assistant while it is speaking. Default: true.",
87
87
  "default": true
88
88
  },
89
+ "strategy": {
90
+ "type": "string",
91
+ "enum": ["vad", "interruptPrediction"],
92
+ "default": "vad",
93
+ "description": "How interruptions are detected. 'vad' (default): speech onset tentatively interrupts the assistant and is confirmed after minSpeechDuration of sustained speech, otherwise the assistant resumes. 'interruptPrediction': an ML model scores whether caller speech is a genuine interruption attempt vs backchannel (e.g. 'uh-huh'), so the assistant is never tentatively paused and backchannel does not cut it off; requires a provisioned vendor API key."
94
+ },
95
+ "vendor": {
96
+ "type": "string",
97
+ "description": "Detection vendor for strategy 'interruptPrediction'; defaults to 'krisp' (currently the only option). Not used with strategy 'vad'."
98
+ },
99
+ "threshold": {
100
+ "type": "number",
101
+ "minimum": 0,
102
+ "maximum": 1,
103
+ "description": "Probability threshold for interruptPrediction (0-1). Higher values require stronger evidence before interrupting the assistant. Default: 0.5."
104
+ },
89
105
  "minSpeechDuration": {
90
106
  "type": "number",
91
107
  "minimum": 0,
92
- "description": "Seconds of detected speech required before confirming an interruption. Prevents brief noises from cutting off the assistant. Default: 0.5",
108
+ "description": "Seconds of detected speech required before confirming an interruption. Prevents brief noises from cutting off the assistant. Applies to strategy 'vad' only. Default: 0.5",
93
109
  "default": 0.5
94
110
  },
95
111
  "sticky": {