@alexkroman1/aai 0.8.8 → 0.9.0

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.
Files changed (292) hide show
  1. package/dist/{sdk/_internal_types.d.ts → _internal-types.d.ts} +0 -3
  2. package/dist/_internal-types.js +19 -0
  3. package/dist/{sdk/_mock_ws.d.ts → _mock-ws.d.ts} +16 -5
  4. package/dist/_mock-ws.js +158 -0
  5. package/dist/{sdk/_utils.d.ts → _utils.d.ts} +1 -2
  6. package/dist/_utils.js +8 -0
  7. package/dist/{sdk/builtin_tools.d.ts → builtin-tools.d.ts} +5 -8
  8. package/dist/builtin-tools.js +270 -0
  9. package/dist/{sdk/direct_executor.d.ts → direct-executor.d.ts} +3 -7
  10. package/dist/direct-executor.js +125 -0
  11. package/dist/{sdk/mod.d.ts → index.d.ts} +0 -4
  12. package/dist/index.js +2 -0
  13. package/dist/{sdk/kv.d.ts → kv.d.ts} +23 -20
  14. package/dist/kv.js +99 -0
  15. package/dist/{sdk/protocol.d.ts → protocol.d.ts} +65 -29
  16. package/dist/protocol.js +142 -0
  17. package/dist/runtime.d.ts +18 -0
  18. package/dist/runtime.js +16 -0
  19. package/dist/s2s.d.ts +110 -0
  20. package/dist/s2s.js +242 -0
  21. package/dist/{sdk/server.d.ts → server.d.ts} +3 -23
  22. package/dist/server.js +105 -0
  23. package/dist/{sdk/session.d.ts → session.d.ts} +4 -11
  24. package/dist/session.js +312 -0
  25. package/dist/tsdown.config.d.ts +2 -0
  26. package/dist/{sdk/types.d.ts → types.d.ts} +41 -25
  27. package/dist/types.js +139 -0
  28. package/dist/{sdk/vector.d.ts → vector.d.ts} +14 -15
  29. package/dist/vector.js +56 -0
  30. package/dist/{sdk/worker_entry.d.ts → worker-entry.d.ts} +2 -5
  31. package/dist/worker-entry.js +59 -0
  32. package/dist/{sdk/ws_handler.d.ts → ws-handler.d.ts} +10 -8
  33. package/dist/ws-handler.js +155 -0
  34. package/package.json +66 -149
  35. package/README.md +0 -34
  36. package/dist/aai.js +0 -3
  37. package/dist/cli/tsconfig.tsbuildinfo +0 -1
  38. package/dist/cli.js +0 -2811
  39. package/dist/sdk/_internal_types.d.ts.map +0 -1
  40. package/dist/sdk/_internal_types.js +0 -25
  41. package/dist/sdk/_internal_types.js.map +0 -1
  42. package/dist/sdk/_mock_ws.d.ts.map +0 -1
  43. package/dist/sdk/_mock_ws.js +0 -154
  44. package/dist/sdk/_mock_ws.js.map +0 -1
  45. package/dist/sdk/_render_check.d.ts +0 -10
  46. package/dist/sdk/_render_check.d.ts.map +0 -1
  47. package/dist/sdk/_render_check.js +0 -72
  48. package/dist/sdk/_render_check.js.map +0 -1
  49. package/dist/sdk/_utils.d.ts.map +0 -1
  50. package/dist/sdk/_utils.js +0 -7
  51. package/dist/sdk/_utils.js.map +0 -1
  52. package/dist/sdk/builtin_tools.d.ts.map +0 -1
  53. package/dist/sdk/builtin_tools.js +0 -309
  54. package/dist/sdk/builtin_tools.js.map +0 -1
  55. package/dist/sdk/capnweb.d.ts +0 -102
  56. package/dist/sdk/capnweb.d.ts.map +0 -1
  57. package/dist/sdk/capnweb.js +0 -219
  58. package/dist/sdk/capnweb.js.map +0 -1
  59. package/dist/sdk/define_agent.d.ts +0 -36
  60. package/dist/sdk/define_agent.d.ts.map +0 -1
  61. package/dist/sdk/define_agent.js +0 -71
  62. package/dist/sdk/define_agent.js.map +0 -1
  63. package/dist/sdk/direct_executor.d.ts.map +0 -1
  64. package/dist/sdk/direct_executor.js +0 -145
  65. package/dist/sdk/direct_executor.js.map +0 -1
  66. package/dist/sdk/host.d.ts +0 -59
  67. package/dist/sdk/host.d.ts.map +0 -1
  68. package/dist/sdk/host.js +0 -131
  69. package/dist/sdk/host.js.map +0 -1
  70. package/dist/sdk/kv.d.ts.map +0 -1
  71. package/dist/sdk/kv.js +0 -94
  72. package/dist/sdk/kv.js.map +0 -1
  73. package/dist/sdk/memory_tools.d.ts +0 -38
  74. package/dist/sdk/memory_tools.d.ts.map +0 -1
  75. package/dist/sdk/memory_tools.js +0 -77
  76. package/dist/sdk/memory_tools.js.map +0 -1
  77. package/dist/sdk/mod.d.ts.map +0 -1
  78. package/dist/sdk/mod.js +0 -27
  79. package/dist/sdk/mod.js.map +0 -1
  80. package/dist/sdk/protocol.d.ts.map +0 -1
  81. package/dist/sdk/protocol.js +0 -133
  82. package/dist/sdk/protocol.js.map +0 -1
  83. package/dist/sdk/runtime.d.ts +0 -36
  84. package/dist/sdk/runtime.d.ts.map +0 -1
  85. package/dist/sdk/runtime.js +0 -27
  86. package/dist/sdk/runtime.js.map +0 -1
  87. package/dist/sdk/s2s.d.ts +0 -74
  88. package/dist/sdk/s2s.d.ts.map +0 -1
  89. package/dist/sdk/s2s.js +0 -218
  90. package/dist/sdk/s2s.js.map +0 -1
  91. package/dist/sdk/server.d.ts.map +0 -1
  92. package/dist/sdk/server.js +0 -144
  93. package/dist/sdk/server.js.map +0 -1
  94. package/dist/sdk/session.d.ts.map +0 -1
  95. package/dist/sdk/session.js +0 -303
  96. package/dist/sdk/session.js.map +0 -1
  97. package/dist/sdk/system_prompt.d.ts +0 -6
  98. package/dist/sdk/system_prompt.d.ts.map +0 -1
  99. package/dist/sdk/system_prompt.js +0 -35
  100. package/dist/sdk/system_prompt.js.map +0 -1
  101. package/dist/sdk/tsconfig.tsbuildinfo +0 -1
  102. package/dist/sdk/types.d.ts.map +0 -1
  103. package/dist/sdk/types.js +0 -96
  104. package/dist/sdk/types.js.map +0 -1
  105. package/dist/sdk/vector.d.ts.map +0 -1
  106. package/dist/sdk/vector.js +0 -63
  107. package/dist/sdk/vector.js.map +0 -1
  108. package/dist/sdk/winterc_server.d.ts +0 -56
  109. package/dist/sdk/winterc_server.d.ts.map +0 -1
  110. package/dist/sdk/winterc_server.js +0 -77
  111. package/dist/sdk/winterc_server.js.map +0 -1
  112. package/dist/sdk/worker_entry.d.ts.map +0 -1
  113. package/dist/sdk/worker_entry.js +0 -68
  114. package/dist/sdk/worker_entry.js.map +0 -1
  115. package/dist/sdk/worker_shim.d.ts +0 -19
  116. package/dist/sdk/worker_shim.d.ts.map +0 -1
  117. package/dist/sdk/worker_shim.js +0 -141
  118. package/dist/sdk/worker_shim.js.map +0 -1
  119. package/dist/sdk/ws_handler.d.ts.map +0 -1
  120. package/dist/sdk/ws_handler.js +0 -158
  121. package/dist/sdk/ws_handler.js.map +0 -1
  122. package/dist/ui/_cn.d.ts +0 -5
  123. package/dist/ui/_cn.d.ts.map +0 -1
  124. package/dist/ui/_cn.js +0 -22
  125. package/dist/ui/_cn.js.map +0 -1
  126. package/dist/ui/_components/app.d.ts +0 -5
  127. package/dist/ui/_components/app.d.ts.map +0 -1
  128. package/dist/ui/_components/app.js +0 -12
  129. package/dist/ui/_components/app.js.map +0 -1
  130. package/dist/ui/_components/button.d.ts +0 -11
  131. package/dist/ui/_components/button.d.ts.map +0 -1
  132. package/dist/ui/_components/button.js +0 -17
  133. package/dist/ui/_components/button.js.map +0 -1
  134. package/dist/ui/_components/chat_view.d.ts +0 -5
  135. package/dist/ui/_components/chat_view.d.ts.map +0 -1
  136. package/dist/ui/_components/chat_view.js +0 -15
  137. package/dist/ui/_components/chat_view.js.map +0 -1
  138. package/dist/ui/_components/controls.d.ts +0 -4
  139. package/dist/ui/_components/controls.d.ts.map +0 -1
  140. package/dist/ui/_components/controls.js +0 -10
  141. package/dist/ui/_components/controls.js.map +0 -1
  142. package/dist/ui/_components/error_banner.d.ts +0 -8
  143. package/dist/ui/_components/error_banner.d.ts.map +0 -1
  144. package/dist/ui/_components/error_banner.js +0 -8
  145. package/dist/ui/_components/error_banner.js.map +0 -1
  146. package/dist/ui/_components/message_bubble.d.ts +0 -7
  147. package/dist/ui/_components/message_bubble.d.ts.map +0 -1
  148. package/dist/ui/_components/message_bubble.js +0 -11
  149. package/dist/ui/_components/message_bubble.js.map +0 -1
  150. package/dist/ui/_components/message_list.d.ts +0 -4
  151. package/dist/ui/_components/message_list.d.ts.map +0 -1
  152. package/dist/ui/_components/message_list.js +0 -45
  153. package/dist/ui/_components/message_list.js.map +0 -1
  154. package/dist/ui/_components/sidebar_layout.d.ts +0 -20
  155. package/dist/ui/_components/sidebar_layout.d.ts.map +0 -1
  156. package/dist/ui/_components/sidebar_layout.js +0 -19
  157. package/dist/ui/_components/sidebar_layout.js.map +0 -1
  158. package/dist/ui/_components/start_screen.d.ts +0 -25
  159. package/dist/ui/_components/start_screen.d.ts.map +0 -1
  160. package/dist/ui/_components/start_screen.js +0 -28
  161. package/dist/ui/_components/start_screen.js.map +0 -1
  162. package/dist/ui/_components/state_indicator.d.ts +0 -8
  163. package/dist/ui/_components/state_indicator.d.ts.map +0 -1
  164. package/dist/ui/_components/state_indicator.js +0 -6
  165. package/dist/ui/_components/state_indicator.js.map +0 -1
  166. package/dist/ui/_components/thinking_indicator.d.ts +0 -5
  167. package/dist/ui/_components/thinking_indicator.d.ts.map +0 -1
  168. package/dist/ui/_components/thinking_indicator.js +0 -10
  169. package/dist/ui/_components/thinking_indicator.js.map +0 -1
  170. package/dist/ui/_components/tool_call_block.d.ts +0 -7
  171. package/dist/ui/_components/tool_call_block.d.ts.map +0 -1
  172. package/dist/ui/_components/tool_call_block.js +0 -46
  173. package/dist/ui/_components/tool_call_block.js.map +0 -1
  174. package/dist/ui/_components/tool_icons.d.ts +0 -18
  175. package/dist/ui/_components/tool_icons.d.ts.map +0 -1
  176. package/dist/ui/_components/tool_icons.js +0 -26
  177. package/dist/ui/_components/tool_icons.js.map +0 -1
  178. package/dist/ui/_components/transcript.d.ts +0 -7
  179. package/dist/ui/_components/transcript.d.ts.map +0 -1
  180. package/dist/ui/_components/transcript.js +0 -9
  181. package/dist/ui/_components/transcript.js.map +0 -1
  182. package/dist/ui/_dom_shim.d.ts +0 -7
  183. package/dist/ui/_dom_shim.d.ts.map +0 -1
  184. package/dist/ui/_dom_shim.js +0 -21
  185. package/dist/ui/_dom_shim.js.map +0 -1
  186. package/dist/ui/_hooks.d.ts +0 -21
  187. package/dist/ui/_hooks.d.ts.map +0 -1
  188. package/dist/ui/_hooks.js +0 -35
  189. package/dist/ui/_hooks.js.map +0 -1
  190. package/dist/ui/_jsdom_setup.d.ts +0 -1
  191. package/dist/ui/_jsdom_setup.d.ts.map +0 -1
  192. package/dist/ui/_jsdom_setup.js +0 -6
  193. package/dist/ui/_jsdom_setup.js.map +0 -1
  194. package/dist/ui/_render_check.d.ts +0 -10
  195. package/dist/ui/_render_check.d.ts.map +0 -1
  196. package/dist/ui/_render_check.js +0 -72
  197. package/dist/ui/_render_check.js.map +0 -1
  198. package/dist/ui/_test_utils.js +0 -272
  199. package/dist/ui/_test_utils.js.map +0 -1
  200. package/dist/ui/audio.d.ts +0 -46
  201. package/dist/ui/audio.d.ts.map +0 -1
  202. package/dist/ui/audio.js +0 -130
  203. package/dist/ui/audio.js.map +0 -1
  204. package/dist/ui/components.d.ts +0 -14
  205. package/dist/ui/components.d.ts.map +0 -1
  206. package/dist/ui/components.js +0 -15
  207. package/dist/ui/components.js.map +0 -1
  208. package/dist/ui/components_mod.d.ts +0 -34
  209. package/dist/ui/components_mod.d.ts.map +0 -1
  210. package/dist/ui/components_mod.js +0 -32
  211. package/dist/ui/components_mod.js.map +0 -1
  212. package/dist/ui/mod.d.ts +0 -23
  213. package/dist/ui/mod.d.ts.map +0 -1
  214. package/dist/ui/mod.js +0 -22
  215. package/dist/ui/mod.js.map +0 -1
  216. package/dist/ui/mount.d.ts +0 -44
  217. package/dist/ui/mount.d.ts.map +0 -1
  218. package/dist/ui/mount.js +0 -61
  219. package/dist/ui/mount.js.map +0 -1
  220. package/dist/ui/mount_context.d.ts +0 -22
  221. package/dist/ui/mount_context.d.ts.map +0 -1
  222. package/dist/ui/mount_context.js +0 -10
  223. package/dist/ui/mount_context.js.map +0 -1
  224. package/dist/ui/session.d.ts +0 -96
  225. package/dist/ui/session.d.ts.map +0 -1
  226. package/dist/ui/session.js +0 -379
  227. package/dist/ui/session.js.map +0 -1
  228. package/dist/ui/session_mod.d.ts +0 -19
  229. package/dist/ui/session_mod.d.ts.map +0 -1
  230. package/dist/ui/session_mod.js +0 -18
  231. package/dist/ui/session_mod.js.map +0 -1
  232. package/dist/ui/signals.d.ts +0 -80
  233. package/dist/ui/signals.d.ts.map +0 -1
  234. package/dist/ui/signals.js +0 -137
  235. package/dist/ui/signals.js.map +0 -1
  236. package/dist/ui/tsconfig.tsbuildinfo +0 -1
  237. package/dist/ui/types.d.ts +0 -36
  238. package/dist/ui/types.d.ts.map +0 -1
  239. package/dist/ui/types.js +0 -4
  240. package/dist/ui/types.js.map +0 -1
  241. package/dist/ui/worklets/capture-processor.d.ts +0 -3
  242. package/dist/ui/worklets/capture-processor.d.ts.map +0 -1
  243. package/dist/ui/worklets/capture-processor.js +0 -61
  244. package/dist/ui/worklets/capture-processor.js.map +0 -1
  245. package/dist/ui/worklets/playback-processor.d.ts +0 -3
  246. package/dist/ui/worklets/playback-processor.d.ts.map +0 -1
  247. package/dist/ui/worklets/playback-processor.js +0 -109
  248. package/dist/ui/worklets/playback-processor.js.map +0 -1
  249. package/templates/.env +0 -1
  250. package/templates/_shared/.env.example +0 -5
  251. package/templates/_shared/CLAUDE.md +0 -1073
  252. package/templates/_shared/biome.json +0 -32
  253. package/templates/_shared/global.d.ts +0 -1
  254. package/templates/_shared/index.html +0 -16
  255. package/templates/_shared/package.json +0 -22
  256. package/templates/_shared/tsconfig.json +0 -16
  257. package/templates/code-interpreter/agent.ts +0 -27
  258. package/templates/code-interpreter/client.tsx +0 -3
  259. package/templates/dispatch-center/agent.ts +0 -1223
  260. package/templates/dispatch-center/client.tsx +0 -505
  261. package/templates/embedded-assets/agent.ts +0 -48
  262. package/templates/embedded-assets/client.tsx +0 -3
  263. package/templates/embedded-assets/knowledge.json +0 -20
  264. package/templates/health-assistant/agent.ts +0 -160
  265. package/templates/health-assistant/client.tsx +0 -3
  266. package/templates/infocom-adventure/agent.ts +0 -164
  267. package/templates/infocom-adventure/client.tsx +0 -300
  268. package/templates/math-buddy/agent.ts +0 -21
  269. package/templates/math-buddy/client.tsx +0 -3
  270. package/templates/memory-agent/agent.ts +0 -20
  271. package/templates/memory-agent/client.tsx +0 -3
  272. package/templates/night-owl/agent.ts +0 -98
  273. package/templates/night-owl/client.tsx +0 -12
  274. package/templates/personal-finance/agent.ts +0 -26
  275. package/templates/personal-finance/client.tsx +0 -3
  276. package/templates/pizza-ordering/agent.ts +0 -214
  277. package/templates/pizza-ordering/client.tsx +0 -264
  278. package/templates/simple/agent.ts +0 -6
  279. package/templates/simple/client.tsx +0 -3
  280. package/templates/smart-research/agent.ts +0 -164
  281. package/templates/smart-research/client.tsx +0 -3
  282. package/templates/solo-rpg/agent.ts +0 -1240
  283. package/templates/solo-rpg/client.tsx +0 -698
  284. package/templates/support/README.md +0 -62
  285. package/templates/support/agent.ts +0 -19
  286. package/templates/support/client.tsx +0 -3
  287. package/templates/travel-concierge/agent.ts +0 -29
  288. package/templates/travel-concierge/client.tsx +0 -3
  289. package/templates/tsconfig.json +0 -1
  290. package/templates/web-researcher/agent.ts +0 -17
  291. package/templates/web-researcher/client.tsx +0 -3
  292. package/ui/styles.css +0 -74
@@ -1,59 +0,0 @@
1
- /**
2
- * Host-side helpers for managing sandboxed workers.
3
- *
4
- * Provides `createHostEndpoint` factory that registers all standard
5
- * host→worker RPC methods for server implementations.
6
- *
7
- * @module
8
- */
9
- import { type BridgeableWebSocket, type WorkerPort } from "./capnweb.ts";
10
- import type { Kv } from "./kv.ts";
11
- import type { VectorStore } from "./vector.ts";
12
- /** Serialized fetch response for RPC transport. */
13
- export type FetchResult = {
14
- status: number;
15
- headers: Record<string, string>;
16
- body: string;
17
- };
18
- /** Fetch function signature for host→worker RPC. */
19
- export type HostFetchFn = (url: string, method: string, headers: Record<string, string>, body?: string) => Promise<FetchResult>;
20
- /** Kv with optional key-listing support. */
21
- export type KvWithKeys = Kv & {
22
- keys?(pattern?: string): Promise<string[]>;
23
- };
24
- /**
25
- * Execute an HTTP fetch on behalf of the sandboxed worker.
26
- *
27
- * Default implementation for the host fetch RPC — performs the fetch
28
- * and returns a serialized response. Servers can wrap this to add SSRF
29
- * checks or other guards.
30
- */
31
- export declare function defaultHostFetch(url: string, method: string, headers: Record<string, string>, body?: string): Promise<FetchResult>;
32
- /** Options for {@linkcode createHostEndpoint}. */
33
- export type HostEndpointOptions = {
34
- /** Environment variables passed to the worker on init. */
35
- env: Record<string, string>;
36
- /** KV store operations. */
37
- kv: KvWithKeys;
38
- /** Vector store operations. Omit if not configured. */
39
- vector?: VectorStore | undefined;
40
- /** Fetch handler. Use {@linkcode defaultHostFetch} as the base. */
41
- fetch: HostFetchFn;
42
- /** Called when the worker requests an S2S WebSocket connection. */
43
- createWebSocket(url: string, headers: Record<string, string>, port: MessagePort): void;
44
- };
45
- /** A host-side sandbox created by {@linkcode createHostEndpoint}. */
46
- export type HostSandbox = {
47
- /** Bridge a WebSocket to a new worker session. */
48
- startSession(socket: BridgeableWebSocket, skipGreeting?: boolean): void;
49
- /** Forward an HTTP request to the worker. */
50
- fetch(request: Request): Promise<Response>;
51
- };
52
- /**
53
- * Create a host endpoint for a sandboxed worker.
54
- *
55
- * Sets up capnweb RPC with a {@linkcode HostService}, initializes the worker,
56
- * and returns a {@linkcode HostSandbox} with `startSession` and `fetch`.
57
- */
58
- export declare function createHostEndpoint(port: WorkerPort, opts: HostEndpointOptions): Promise<HostSandbox>;
59
- //# sourceMappingURL=host.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../sdk/host.ts"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EACL,KAAK,mBAAmB,EAMxB,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,EAAE,EAAiB,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAgB/C,mDAAmD;AACnD,MAAM,MAAM,WAAW,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5F,oDAAoD;AACpD,MAAM,MAAM,WAAW,GAAG,CACxB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,IAAI,CAAC,EAAE,MAAM,KACV,OAAO,CAAC,WAAW,CAAC,CAAC;AAE1B,4CAA4C;AAC5C,MAAM,MAAM,UAAU,GAAG,EAAE,GAAG;IAAE,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAE7E;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,WAAW,CAAC,CAOtB;AAuED,kDAAkD;AAClD,MAAM,MAAM,mBAAmB,GAAG;IAChC,0DAA0D;IAC1D,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,2BAA2B;IAC3B,EAAE,EAAE,UAAU,CAAC;IACf,uDAAuD;IACvD,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,mEAAmE;IACnE,KAAK,EAAE,WAAW,CAAC;IACnB,mEAAmE;IACnE,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;CACxF,CAAC;AAEF,qEAAqE;AACrE,MAAM,MAAM,WAAW,GAAG;IACxB,kDAAkD;IAClD,YAAY,CAAC,MAAM,EAAE,mBAAmB,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACxE,6CAA6C;IAC7C,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC5C,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,WAAW,CAAC,CA2CtB"}
package/dist/sdk/host.js DELETED
@@ -1,131 +0,0 @@
1
- // Copyright 2025 the AAI authors. MIT license.
2
- /**
3
- * Host-side helpers for managing sandboxed workers.
4
- *
5
- * Provides `createHostEndpoint` factory that registers all standard
6
- * host→worker RPC methods for server implementations.
7
- *
8
- * @module
9
- */
10
- import { bridgeWebSocketToPort, createRpcSession, isTransferMessage, RpcTarget, sendTransfer, } from "./capnweb.js";
11
- // ─── Audio validation (applied at the host transport layer) ─────────────────
12
- /** Max size for a single audio chunk from the browser (1 MB). */
13
- const MAX_AUDIO_CHUNK_BYTES = 1_048_576;
14
- /** Validate a PCM16 audio chunk: non-empty, within size bounds, even byte length. */
15
- function isValidAudioChunk(data) {
16
- return (data.byteLength > 0 && data.byteLength <= MAX_AUDIO_CHUNK_BYTES && data.byteLength % 2 === 0);
17
- }
18
- /**
19
- * Execute an HTTP fetch on behalf of the sandboxed worker.
20
- *
21
- * Default implementation for the host fetch RPC — performs the fetch
22
- * and returns a serialized response. Servers can wrap this to add SSRF
23
- * checks or other guards.
24
- */
25
- export async function defaultHostFetch(url, method, headers, body) {
26
- const response = await fetch(new Request(url, { method, headers, ...(body ? { body } : {}) }));
27
- return {
28
- status: response.status,
29
- headers: Object.fromEntries(response.headers),
30
- body: await response.text(),
31
- };
32
- }
33
- // ─── Host RPC service ────────────────────────────────────────────────────────
34
- /** Convert a void promise to null (capnweb RPC requires a return value). */
35
- async function voidToNull(p) {
36
- await p;
37
- return null;
38
- }
39
- /**
40
- * RPC service exposed by the host to the sandboxed worker.
41
- * Methods are callable via capnweb RPC stubs.
42
- */
43
- class HostService extends RpcTarget {
44
- #kv;
45
- #vec;
46
- #fetchFn;
47
- constructor(kv, vec, fetchFn) {
48
- super();
49
- this.#kv = kv;
50
- this.#vec = vec;
51
- this.#fetchFn = fetchFn;
52
- }
53
- hostFetch(url, method, headers, body) {
54
- return this.#fetchFn(url, method, headers, body);
55
- }
56
- kvGet(key) {
57
- return this.#kv.get(key);
58
- }
59
- kvSet(key, value, options) {
60
- return voidToNull(this.#kv.set(key, value, options));
61
- }
62
- kvDel(key) {
63
- return voidToNull(this.#kv.delete(key));
64
- }
65
- kvList(prefix, options) {
66
- return this.#kv.list(prefix, options);
67
- }
68
- kvKeys(pattern) {
69
- if (!this.#kv.keys)
70
- throw new Error("keys op not supported");
71
- return this.#kv.keys(pattern);
72
- }
73
- #requireVec() {
74
- if (!this.#vec)
75
- throw new Error("Vector store not configured");
76
- return this.#vec;
77
- }
78
- vecUpsert(id, data, metadata) {
79
- return voidToNull(this.#requireVec().upsert(id, data, metadata));
80
- }
81
- vecQuery(text, options) {
82
- return this.#requireVec().query(text, options);
83
- }
84
- vecRemove(ids) {
85
- return voidToNull(this.#requireVec().remove(ids));
86
- }
87
- }
88
- /**
89
- * Create a host endpoint for a sandboxed worker.
90
- *
91
- * Sets up capnweb RPC with a {@linkcode HostService}, initializes the worker,
92
- * and returns a {@linkcode HostSandbox} with `startSession` and `fetch`.
93
- */
94
- export async function createHostEndpoint(port, opts) {
95
- const hostService = new HostService(opts.kv, opts.vector, opts.fetch);
96
- const workerStub = createRpcSession({
97
- port,
98
- localMain: hostService,
99
- onTransfer(data, ports) {
100
- if (!isTransferMessage(data))
101
- return;
102
- if (data._t === "createWs") {
103
- const transferPort = ports[0];
104
- if (!transferPort)
105
- throw new Error("No port transferred for WebSocket");
106
- const headers = JSON.parse(data.headers);
107
- opts.createWebSocket(data.url, headers, transferPort);
108
- }
109
- },
110
- });
111
- // Initialize the worker
112
- await workerStub.init(opts.env);
113
- return {
114
- startSession(socket, skipGreeting) {
115
- const { port1, port2 } = new MessageChannel();
116
- bridgeWebSocketToPort(socket, port1, {
117
- filterBinary: isValidAudioChunk,
118
- });
119
- sendTransfer(port, { _t: "handleWs", skipGreeting: skipGreeting ?? false }, [port2]);
120
- },
121
- async fetch(request) {
122
- const body = request.body ? await request.text() : undefined;
123
- const result = await workerStub.workerFetch(request.url, request.method, Object.fromEntries(request.headers), body);
124
- return new Response(result.body, {
125
- status: result.status,
126
- headers: result.headers,
127
- });
128
- },
129
- };
130
- }
131
- //# sourceMappingURL=host.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"host.js","sourceRoot":"","sources":["../../sdk/host.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../sdk/kv.ts"],"names":[],"mappings":"AACA;;;;GAIG;AAEH;;;;GAIG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,GAAG,OAAO,IAAI;IACjC,+CAA+C;IAC/C,GAAG,EAAE,MAAM,CAAC;IACZ,8BAA8B;IAC9B,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,EAAE,GAAG;IACf;;;;;;;OAOG;IACH,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACjD;;;;;;;;;OASG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjF;;;;OAIG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC;;;;;;;;;OASG;IACH,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CACnF,CAAC;AAEF,eAAO,MAAM,cAAc,QAAS,CAAC;AAErC,8EAA8E;AAC9E,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,EACvD,OAAO,EAAE,CAAC,EAAE,EACZ,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,CAAC,EAAE,CAOL;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,cAAc,IAAI,EAAE,CAqDnC"}
package/dist/sdk/kv.js DELETED
@@ -1,94 +0,0 @@
1
- // Copyright 2025 the AAI authors. MIT license.
2
- /**
3
- * Key-value storage interface and in-memory implementation.
4
- *
5
- * @module
6
- */
7
- export const MAX_VALUE_SIZE = 65_536;
8
- /** Sort entries by key and apply reverse/limit options. Mutates the array. */
9
- export function sortAndPaginate(entries, options) {
10
- entries.sort((a, b) => (a.key < b.key ? -1 : a.key > b.key ? 1 : 0));
11
- if (options?.reverse)
12
- entries.reverse();
13
- if (options?.limit && options.limit > 0) {
14
- entries.length = Math.min(entries.length, options.limit);
15
- }
16
- return entries;
17
- }
18
- /**
19
- * Create an in-memory KV store (useful for testing and local development).
20
- *
21
- * Data is stored in a plain `Map` and does not persist across restarts.
22
- * TTL expiration is checked lazily on reads and list operations.
23
- *
24
- * @returns A {@linkcode Kv} instance backed by in-memory storage.
25
- *
26
- * @example
27
- * ```ts
28
- * import { createMemoryKv } from "./kv.ts";
29
- *
30
- * const kv = createMemoryKv();
31
- * await kv.set("greeting", "hello");
32
- * const value = await kv.get<string>("greeting"); // "hello"
33
- * ```
34
- *
35
- * @example With TTL
36
- * ```ts
37
- * import { createMemoryKv } from "./kv.ts";
38
- *
39
- * const kv = createMemoryKv();
40
- * await kv.set("temp", "expires soon", { expireIn: 5000 });
41
- * ```
42
- */
43
- export function createMemoryKv() {
44
- const store = new Map();
45
- function isExpired(entry) {
46
- return entry.expiresAt !== undefined && entry.expiresAt <= Date.now();
47
- }
48
- return {
49
- get(key) {
50
- const entry = store.get(key);
51
- if (!entry || isExpired(entry)) {
52
- if (entry)
53
- store.delete(key);
54
- return Promise.resolve(null);
55
- }
56
- return Promise.resolve(JSON.parse(entry.raw));
57
- },
58
- set(key, value, options) {
59
- const raw = JSON.stringify(value);
60
- if (raw.length > MAX_VALUE_SIZE) {
61
- throw new Error(`Value exceeds max size of ${MAX_VALUE_SIZE} bytes`);
62
- }
63
- const expireIn = options?.expireIn;
64
- const entry = { raw };
65
- if (expireIn && expireIn > 0) {
66
- entry.expiresAt = Date.now() + expireIn;
67
- }
68
- store.set(key, entry);
69
- return Promise.resolve();
70
- },
71
- delete(key) {
72
- store.delete(key);
73
- return Promise.resolve();
74
- },
75
- async list(prefix, options) {
76
- const now = Date.now();
77
- const entries = [];
78
- let i = 0;
79
- for (const [key, entry] of store) {
80
- if (++i % 500 === 0)
81
- await new Promise((r) => setTimeout(r, 0));
82
- if (entry.expiresAt && entry.expiresAt <= now) {
83
- store.delete(key);
84
- continue;
85
- }
86
- if (key.startsWith(prefix)) {
87
- entries.push({ key, value: JSON.parse(entry.raw) });
88
- }
89
- }
90
- return sortAndPaginate(entries, options);
91
- },
92
- };
93
- }
94
- //# sourceMappingURL=kv.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"kv.js","sourceRoot":"","sources":["../../sdk/kv.ts"],"names":[],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- import { z } from "zod";
2
- /**
3
- * Returns a standard set of KV-backed memory tools: `save_memory`,
4
- * `recall_memory`, `list_memories`, and `forget_memory`.
5
- *
6
- * Spread the result into your agent's `tools` record. Combine with
7
- * custom tools as needed.
8
- *
9
- * @example
10
- * ```ts
11
- * import { defineAgent } from "aai";
12
- * import { memoryTools } from "aai";
13
- *
14
- * export default defineAgent({
15
- * name: "My Agent",
16
- * tools: {
17
- * ...memoryTools(),
18
- * // other tools...
19
- * },
20
- * });
21
- * ```
22
- */
23
- export declare function memoryTools(): {
24
- save_memory: import("./types.ts").ToolDef<z.ZodObject<{
25
- key: z.ZodString;
26
- value: z.ZodString;
27
- }, z.core.$strip>, any>;
28
- recall_memory: import("./types.ts").ToolDef<z.ZodObject<{
29
- key: z.ZodString;
30
- }, z.core.$strip>, any>;
31
- list_memories: import("./types.ts").ToolDef<z.ZodObject<{
32
- prefix: z.ZodOptional<z.ZodString>;
33
- }, z.core.$strip>, any>;
34
- forget_memory: import("./types.ts").ToolDef<z.ZodObject<{
35
- key: z.ZodString;
36
- }, z.core.$strip>, any>;
37
- };
38
- //# sourceMappingURL=memory_tools.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory_tools.d.ts","sourceRoot":"","sources":["../../sdk/memory_tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,WAAW;;;;;;;;;;;;;;EAmD1B"}
@@ -1,77 +0,0 @@
1
- // Copyright 2025 the AAI authors. MIT license.
2
- import { z } from "zod";
3
- import { tool } from "./types.js";
4
- /**
5
- * Returns a standard set of KV-backed memory tools: `save_memory`,
6
- * `recall_memory`, `list_memories`, and `forget_memory`.
7
- *
8
- * Spread the result into your agent's `tools` record. Combine with
9
- * custom tools as needed.
10
- *
11
- * @example
12
- * ```ts
13
- * import { defineAgent } from "aai";
14
- * import { memoryTools } from "aai";
15
- *
16
- * export default defineAgent({
17
- * name: "My Agent",
18
- * tools: {
19
- * ...memoryTools(),
20
- * // other tools...
21
- * },
22
- * });
23
- * ```
24
- */
25
- export function memoryTools() {
26
- return {
27
- save_memory: tool({
28
- description: "Save a piece of information to persistent memory. Use a descriptive key like 'user:name' or 'project:status'.",
29
- parameters: z.object({
30
- key: z
31
- .string()
32
- .describe("A descriptive key for this memory (e.g. 'user:name', 'preference:color')"),
33
- value: z.string().describe("The information to remember"),
34
- }),
35
- execute: async ({ key, value }, ctx) => {
36
- await ctx.kv.set(key, value);
37
- return { saved: key };
38
- },
39
- }),
40
- recall_memory: tool({
41
- description: "Retrieve a previously saved memory by its key.",
42
- parameters: z.object({
43
- key: z.string().describe("The key to look up"),
44
- }),
45
- execute: async ({ key }, ctx) => {
46
- const value = await ctx.kv.get(key);
47
- if (value === null)
48
- return { found: false, key };
49
- return { found: true, key, value };
50
- },
51
- }),
52
- list_memories: tool({
53
- description: "List all saved memory keys, optionally filtered by a prefix (e.g. 'user:').",
54
- parameters: z.object({
55
- prefix: z
56
- .string()
57
- .describe("Prefix to filter keys (e.g. 'user:'). Use empty string for all.")
58
- .optional(),
59
- }),
60
- execute: async ({ prefix }, ctx) => {
61
- const entries = await ctx.kv.list(prefix ?? "");
62
- return { count: entries.length, keys: entries.map((e) => e.key) };
63
- },
64
- }),
65
- forget_memory: tool({
66
- description: "Delete a previously saved memory by its key.",
67
- parameters: z.object({
68
- key: z.string().describe("The key to delete"),
69
- }),
70
- execute: async ({ key }, ctx) => {
71
- await ctx.kv.delete(key);
72
- return { deleted: key };
73
- },
74
- }),
75
- };
76
- }
77
- //# sourceMappingURL=memory_tools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory_tools.js","sourceRoot":"","sources":["../../sdk/memory_tools.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAE/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO;QACL,WAAW,EAAE,IAAI,CAAC;YAChB,WAAW,EACT,+GAA+G;YACjH,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;gBACnB,GAAG,EAAE,CAAC;qBACH,MAAM,EAAE;qBACR,QAAQ,CAAC,0EAA0E,CAAC;gBACvF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;aAC1D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;gBACrC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC7B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;YACxB,CAAC;SACF,CAAC;QACF,aAAa,EAAE,IAAI,CAAC;YAClB,WAAW,EAAE,gDAAgD;YAC7D,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;gBACnB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;aAC/C,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE;gBAC9B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpC,IAAI,KAAK,KAAK,IAAI;oBAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;gBACjD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;YACrC,CAAC;SACF,CAAC;QACF,aAAa,EAAE,IAAI,CAAC;YAClB,WAAW,EAAE,6EAA6E;YAC1F,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;gBACnB,MAAM,EAAE,CAAC;qBACN,MAAM,EAAE;qBACR,QAAQ,CAAC,iEAAiE,CAAC;qBAC3E,QAAQ,EAAE;aACd,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE;gBACjC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;gBAChD,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACpE,CAAC;SACF,CAAC;QACF,aAAa,EAAE,IAAI,CAAC;YAClB,WAAW,EAAE,8CAA8C;YAC3D,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;gBACnB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;aAC9C,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE;gBAC9B,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACzB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;YAC1B,CAAC;SACF,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../sdk/mod.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,IAAI,GACL,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
package/dist/sdk/mod.js DELETED
@@ -1,27 +0,0 @@
1
- // Copyright 2025 the AAI authors. MIT license.
2
- /**
3
- * AAI SDK — build voice agents powered by STT, LLM, and TTS.
4
- *
5
- * @example
6
- * ```ts
7
- * import { defineAgent } from "aai";
8
- * import { z } from "zod";
9
- *
10
- * export default defineAgent({
11
- * name: "my-agent",
12
- * instructions: "You are a helpful voice assistant.",
13
- * tools: {
14
- * greet: {
15
- * description: "Greet the user by name",
16
- * parameters: z.object({ name: z.string() }),
17
- * execute: ({ name }) => `Hello, ${name}!`,
18
- * },
19
- * },
20
- * });
21
- * ```
22
- *
23
- * @module
24
- */
25
- export { memoryTools } from "./builtin_tools.js";
26
- export { defineAgent, tool, } from "./types.js";
27
- //# sourceMappingURL=mod.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../sdk/mod.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAIL,WAAW,EAMX,IAAI,GACL,MAAM,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../sdk/protocol.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAE9C;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAE9C;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAG,OAAgB,CAAC;AAE7C,sEAAsE;AACtE,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AAEX,wEAAwE;AACxE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;yBAgB1B,CAAC;AAEH,oEAAoE;AACpE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAIxD,gDAAgD;AAChD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;yBAiB9B,CAAC;AAEH,wEAAwE;AACxE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAIhE,0EAA0E;AAC1E,eAAO,MAAM,eAAe,OAAQ,CAAC;AAErC,wDAAwD;AACxD,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAIhD,0CAA0C;AAC1C,eAAO,MAAM,sBAAsB;;;;;;;;;EASjC,CAAC;AAEH,+DAA+D;AAC/D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAWtE,8CAA8C;AAC9C,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAsB5B,CAAC;AAEH,+DAA+D;AAC/D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,qEAAqE;IACrE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,0CAA0C;IAC1C,KAAK,CAAC,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B,mDAAmD;IACnD,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACxC,yCAAyC;IACzC,aAAa,IAAI,IAAI,CAAC;CACvB;AAID,qDAAqD;AACrD,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC;AAEpC,uEAAuE;AACvE,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,aAAa,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,yEAAyE;AACzE,MAAM,MAAM,aAAa,GACrB,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAAG,WAAW,CAAC,GAClC;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB,WAAW,CAAC;AAEhB,kDAAkD;AAClD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;2BAU9B,CAAC;AAEH,yEAAyE;AACzE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAIhE,iFAAiF;AACjF,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC"}
@@ -1,133 +0,0 @@
1
- // Copyright 2025 the AAI authors. MIT license.
2
- /**
3
- * WebSocket wire-format types shared by server and client.
4
- *
5
- * Note: this module is for internal use only and should not be used directly.
6
- *
7
- * @module
8
- */
9
- import { z } from "zod";
10
- /**
11
- * Default sample rate for speech-to-text audio in Hz.
12
- *
13
- * This is the sample rate expected by the STT provider (AssemblyAI).
14
- */
15
- export const DEFAULT_STT_SAMPLE_RATE = 16_000;
16
- /**
17
- * Default sample rate for text-to-speech audio in Hz.
18
- *
19
- * This is the sample rate produced by the TTS provider.
20
- */
21
- export const DEFAULT_TTS_SAMPLE_RATE = 24_000;
22
- /**
23
- * Audio codec identifier used in the wire protocol.
24
- *
25
- * All audio frames are 16-bit signed PCM, little-endian, mono.
26
- */
27
- export const AUDIO_FORMAT = "pcm16";
28
- /** Specification for binary audio frames exchanged over WebSocket. */
29
- export const AudioFrameSpec = {
30
- format: AUDIO_FORMAT,
31
- bitsPerSample: 16,
32
- endianness: "little",
33
- channels: 1,
34
- bytesPerSample: 2,
35
- };
36
- /** Zod schema for KV operation requests from the worker to the host. */
37
- export const KvRequestSchema = z.discriminatedUnion("op", [
38
- z.object({ op: z.literal("get"), key: z.string().min(1) }),
39
- z.object({
40
- op: z.literal("set"),
41
- key: z.string().min(1),
42
- value: z.string(),
43
- ttl: z.number().int().positive().optional(),
44
- }),
45
- z.object({ op: z.literal("del"), key: z.string().min(1) }),
46
- z.object({
47
- op: z.literal("list"),
48
- prefix: z.string(),
49
- limit: z.number().int().positive().optional(),
50
- reverse: z.boolean().optional(),
51
- }),
52
- z.object({ op: z.literal("keys"), pattern: z.string().optional() }),
53
- ]);
54
- // ─── Vector request types ───────────────────────────────────────────────────
55
- /** Zod schema for vector operation requests. */
56
- export const VectorRequestSchema = z.discriminatedUnion("op", [
57
- z.object({
58
- op: z.literal("upsert"),
59
- id: z.string().min(1),
60
- data: z.string().min(1),
61
- metadata: z.record(z.string(), z.unknown()).optional(),
62
- }),
63
- z.object({
64
- op: z.literal("query"),
65
- text: z.string().min(1),
66
- topK: z.number().int().positive().max(100).optional(),
67
- filter: z.string().optional(),
68
- }),
69
- z.object({
70
- op: z.literal("remove"),
71
- ids: z.array(z.string().min(1)).min(1),
72
- }),
73
- ]);
74
- // ─── Timeout constants ─────────────────────────────────────────────────────
75
- /** Default timeout for agent lifecycle hooks (onConnect, onTurn, etc). */
76
- export const HOOK_TIMEOUT_MS = 5_000;
77
- /** Default timeout for tool execution in the worker. */
78
- export const TOOL_EXECUTION_TIMEOUT_MS = 30_000;
79
- // ─── Error codes ───────────────────────────────────────────────────────────
80
- /** Zod schema for session error codes. */
81
- export const SessionErrorCodeSchema = z.enum([
82
- "stt",
83
- "llm",
84
- "tts",
85
- "tool",
86
- "protocol",
87
- "connection",
88
- "audio",
89
- "internal",
90
- ]);
91
- // ─── Client events ─────────────────────────────────────────────────────────
92
- /** Helper: simple event with only a type field. */
93
- const ev = (t) => z.object({ type: z.literal(t) });
94
- /** Helper: event with type + text. */
95
- const textEv = (t) => z.object({ type: z.literal(t), text: z.string() });
96
- const turnOrder = z.number().int().nonnegative().optional();
97
- /** Zod schema for {@linkcode ClientEvent}. */
98
- export const ClientEventSchema = z.discriminatedUnion("type", [
99
- ev("speech_started"),
100
- ev("speech_stopped"),
101
- z.object({ type: z.literal("transcript"), text: z.string(), isFinal: z.boolean(), turnOrder }),
102
- textEv("turn").extend({ turnOrder }),
103
- textEv("chat"),
104
- textEv("chat_delta"),
105
- z.object({
106
- type: z.literal("tool_call_start"),
107
- toolCallId: z.string(),
108
- toolName: z.string(),
109
- args: z.record(z.string(), z.unknown()),
110
- }),
111
- z.object({
112
- type: z.literal("tool_call_done"),
113
- toolCallId: z.string(),
114
- result: z.string().max(4000),
115
- }),
116
- ev("tts_done"),
117
- ev("cancelled"),
118
- ev("reset"),
119
- z.object({ type: z.literal("error"), code: SessionErrorCodeSchema, message: z.string() }),
120
- ]);
121
- /** Zod schema for client→server text messages. */
122
- export const ClientMessageSchema = z.discriminatedUnion("type", [
123
- ev("audio_ready"),
124
- ev("cancel"),
125
- ev("reset"),
126
- z.object({
127
- type: z.literal("history"),
128
- messages: z
129
- .array(z.object({ role: z.enum(["user", "assistant"]), text: z.string().max(100_000) }))
130
- .max(200),
131
- }),
132
- ]);
133
- //# sourceMappingURL=protocol.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../sdk/protocol.ts"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- /**
2
- * Pluggable interfaces for cross-runtime concerns.
3
- *
4
- * @module
5
- */
6
- /** Structured context attached to log messages. */
7
- export type LogContext = Record<string, unknown>;
8
- /** Runtime-agnostic structured logger. */
9
- export type Logger = {
10
- info(msg: string, ctx?: LogContext): void;
11
- warn(msg: string, ctx?: LogContext): void;
12
- error(msg: string, ctx?: LogContext): void;
13
- debug(msg: string, ctx?: LogContext): void;
14
- };
15
- /** Runtime-agnostic session metrics. */
16
- export type Metrics = {
17
- sessionsTotal: {
18
- inc(labels: Record<string, string>): void;
19
- };
20
- sessionsActive: {
21
- inc(labels: Record<string, string>): void;
22
- dec(labels: Record<string, string>): void;
23
- };
24
- };
25
- export declare const consoleLogger: Logger;
26
- /** No-op metrics implementation for environments without monitoring. */
27
- export declare const noopMetrics: Metrics;
28
- /** Configuration for the AssemblyAI Speech-to-Speech connection. */
29
- export type S2SConfig = {
30
- wssUrl: string;
31
- inputSampleRate: number;
32
- outputSampleRate: number;
33
- };
34
- /** Default S2S configuration pointing to AssemblyAI's production endpoint. */
35
- export declare const DEFAULT_S2S_CONFIG: S2SConfig;
36
- //# sourceMappingURL=runtime.d.ts.map