@vellumai/assistant 0.12.3-staging.1 → 0.12.3-staging.2

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 (560) hide show
  1. package/ARCHITECTURE.md +43 -29
  2. package/Dockerfile +63 -0
  3. package/docs/architecture/security.md +10 -5
  4. package/docs/architecture/turn-actor.md +2 -0
  5. package/docs/desktop-browser-cli.md +45 -4
  6. package/docs/live-voice-task-outcomes.md +100 -0
  7. package/docs/mode-sessions.md +183 -0
  8. package/docs/voice-input-diagnostics.md +58 -0
  9. package/node_modules/@vellumai/ces-client/node_modules/@vellumai/service-contracts/package.json +2 -1
  10. package/node_modules/@vellumai/ces-client/node_modules/@vellumai/service-contracts/src/index.ts +1 -0
  11. package/node_modules/@vellumai/ces-client/node_modules/@vellumai/service-contracts/src/integration-categories.ts +36 -0
  12. package/node_modules/@vellumai/gateway-client/node_modules/@vellumai/service-contracts/package.json +2 -1
  13. package/node_modules/@vellumai/gateway-client/node_modules/@vellumai/service-contracts/src/index.ts +1 -0
  14. package/node_modules/@vellumai/gateway-client/node_modules/@vellumai/service-contracts/src/integration-categories.ts +36 -0
  15. package/node_modules/@vellumai/gateway-client/src/gateway-ipc-contracts.ts +20 -0
  16. package/node_modules/@vellumai/gateway-client/src/index.ts +4 -1
  17. package/node_modules/@vellumai/gateway-client/src/outbound-contract.ts +38 -7
  18. package/node_modules/@vellumai/gateway-client/src/trust-verdict-contract.ts +5 -6
  19. package/node_modules/@vellumai/service-contracts/package.json +2 -1
  20. package/node_modules/@vellumai/service-contracts/src/index.ts +1 -0
  21. package/node_modules/@vellumai/service-contracts/src/integration-categories.ts +36 -0
  22. package/node_modules/@vellumai/slack-text/src/index.ts +4 -8
  23. package/openapi.yaml +665 -14
  24. package/package.json +1 -1
  25. package/scripts/smoke-desktop-browser-cli.ts +10 -26
  26. package/scripts/smoke-desktop-window-theme.ts +2 -3
  27. package/src/__tests__/agent-loop-output-hooks.test.ts +150 -1
  28. package/src/__tests__/agent-loop-provider-error-recording.test.ts +87 -19
  29. package/src/__tests__/annotate-activity-metadata.test.ts +3 -1
  30. package/src/__tests__/annotate-risk-options.test.ts +2 -0
  31. package/src/__tests__/answered-question-persistence.test.ts +2 -0
  32. package/src/__tests__/anthropic-gateway-shared.test.ts +22 -0
  33. package/src/__tests__/approval-message-composer.test.ts +1 -118
  34. package/src/__tests__/approval-routes-http.test.ts +3 -0
  35. package/src/__tests__/assistant-event-hub-connection-history.test.ts +111 -0
  36. package/src/__tests__/assistant-event-hub-targeted.test.ts +50 -0
  37. package/src/__tests__/assistant-event-targeting.test.ts +186 -0
  38. package/src/__tests__/assistant-stream-state.test.ts +29 -9
  39. package/src/__tests__/browser-fill-credential.test.ts +11 -22
  40. package/src/__tests__/btw-routes.test.ts +4 -1
  41. package/src/__tests__/build-persisted-content.test.ts +1 -1
  42. package/src/__tests__/call-conversation-messages.test.ts +5 -0
  43. package/src/__tests__/call-recovery.test.ts +7 -2
  44. package/src/__tests__/call-routes-http.test.ts +12 -0
  45. package/src/__tests__/call-store.test.ts +7 -2
  46. package/src/__tests__/channel-retry-sweep.test.ts +9 -0
  47. package/src/__tests__/chat-reveal-guard-priming.test.ts +2 -0
  48. package/src/__tests__/checker.test.ts +11 -3
  49. package/src/__tests__/client-os-metadata-persistence.test.ts +35 -1
  50. package/src/__tests__/computer-use-skill-manifest-regression.test.ts +0 -25
  51. package/src/__tests__/computer-use-tools.test.ts +1 -233
  52. package/src/__tests__/config-model-image-provider.test.ts +39 -0
  53. package/src/__tests__/config-schema.test.ts +16 -0
  54. package/src/__tests__/config-watcher.test.ts +24 -0
  55. package/src/__tests__/context-search-agent-runner.test.ts +260 -1
  56. package/src/__tests__/context-search-fanout.test.ts +1 -1
  57. package/src/__tests__/context-search-types.test.ts +7 -7
  58. package/src/__tests__/conversation-agent-loop-disk-pressure.test.ts +8 -2
  59. package/src/__tests__/conversation-agent-loop-fatal-cleanup.test.ts +2 -0
  60. package/src/__tests__/conversation-agent-loop.test.ts +546 -16
  61. package/src/__tests__/conversation-app-control-lifecycle.test.ts +53 -1
  62. package/src/__tests__/conversation-evictor.test.ts +62 -37
  63. package/src/__tests__/conversation-history-boundary-repair-failure.test.ts +174 -0
  64. package/src/__tests__/conversation-loop-db-lock-resilience.test.ts +2 -0
  65. package/src/__tests__/conversation-process-app-control-preactivation.test.ts +2 -0
  66. package/src/__tests__/conversation-retry-route.test.ts +22 -0
  67. package/src/__tests__/conversation-routes-disk-view.test.ts +2 -0
  68. package/src/__tests__/conversation-routes-enabled-plugins.test.ts +2 -0
  69. package/src/__tests__/conversation-routes-guardian-reply.test.ts +10 -0
  70. package/src/__tests__/conversation-routes-hidden-queue.test.ts +2 -0
  71. package/src/__tests__/conversation-routes-slash-commands.test.ts +2 -0
  72. package/src/__tests__/conversation-runtime-assembly.test.ts +29 -0
  73. package/src/__tests__/conversation-surface-snapshots.test.ts +543 -0
  74. package/src/__tests__/conversation-surfaces-action-delivery.test.ts +151 -0
  75. package/src/__tests__/conversation-surfaces-point-at-budget.test.ts +63 -1
  76. package/src/__tests__/conversation-tool-setup-attribution.test.ts +23 -0
  77. package/src/__tests__/conversation-undo.test.ts +61 -0
  78. package/src/__tests__/credential-execution-client.test.ts +6 -6
  79. package/src/__tests__/credential-prompt-route.test.ts +35 -3
  80. package/src/__tests__/cu-unified-flow.test.ts +82 -1
  81. package/src/__tests__/db-mode-sessions-migration.test.ts +175 -0
  82. package/src/__tests__/deterministic-verification-control-plane.test.ts +2 -0
  83. package/src/__tests__/dm-backfill.test.ts +91 -1
  84. package/src/__tests__/document-create-route.test.ts +88 -0
  85. package/src/__tests__/document-sync-tags.test.ts +27 -0
  86. package/src/__tests__/emit-signal-routing-intent.test.ts +142 -2
  87. package/src/__tests__/events-tail-route.test.ts +25 -0
  88. package/src/__tests__/evict-conversations-for-reload.test.ts +57 -8
  89. package/src/__tests__/guardian-action-sweep.test.ts +16 -0
  90. package/src/__tests__/guardian-dispatch.test.ts +13 -0
  91. package/src/__tests__/headless-browser-interactions.test.ts +64 -20
  92. package/src/__tests__/heartbeat-service.test.ts +2 -59
  93. package/src/__tests__/helpers/mock-conversation.ts +21 -0
  94. package/src/__tests__/helpers/native-web-search-harness.ts +2 -0
  95. package/src/__tests__/helpers/verification-sessions-ipc-sim.ts +5 -0
  96. package/src/__tests__/host-cu-proxy.test.ts +46 -2
  97. package/src/__tests__/http-user-message-parity.test.ts +2 -0
  98. package/src/__tests__/image-credentials.test.ts +49 -0
  99. package/src/__tests__/image-service-dispatcher.test.ts +45 -0
  100. package/src/__tests__/inference-profile-session-handler.test.ts +1 -1
  101. package/src/__tests__/interrupt-on-send.test.ts +57 -43
  102. package/src/__tests__/interrupt-turn-note.test.ts +5 -6
  103. package/src/__tests__/llm-catalog-parity.test.ts +2 -2
  104. package/src/__tests__/media-generate-image.test.ts +49 -1
  105. package/src/__tests__/message-provenance-contact-id.test.ts +69 -0
  106. package/src/__tests__/migration-export-to-gcs.test.ts +142 -0
  107. package/src/__tests__/mode-session-history.test.ts +245 -0
  108. package/src/__tests__/mode-session-recovery.test.ts +222 -0
  109. package/src/__tests__/mode-session-wire.test.ts +141 -0
  110. package/src/__tests__/notification-guardian-path.test.ts +7 -0
  111. package/src/__tests__/notification-telegram-adapter.test.ts +2 -2
  112. package/src/__tests__/notification-vellum-adapter.test.ts +34 -0
  113. package/src/__tests__/oauth-provider-serializer.test.ts +12 -0
  114. package/src/__tests__/oauth-providers-routes.test.ts +1 -0
  115. package/src/__tests__/outbound-slack-persistence.test.ts +2 -0
  116. package/src/__tests__/persistence-secret-redaction.test.ts +2 -0
  117. package/src/__tests__/plugin-api-provider.test.ts +5 -0
  118. package/src/__tests__/plugin-api-resolve-credential.test.ts +97 -0
  119. package/src/__tests__/plugin-import-boundary-guard.test.ts +9 -0
  120. package/src/__tests__/process-message-display-content.test.ts +56 -0
  121. package/src/__tests__/reaction-persistence.test.ts +5 -0
  122. package/src/__tests__/request-secret-standalone-channel-gate.test.ts +25 -9
  123. package/src/__tests__/runtime-events-sse-reconnect.test.ts +1 -1
  124. package/src/__tests__/scripted-turn-metadata-persistence.test.ts +73 -0
  125. package/src/__tests__/secret-ingress-http.test.ts +2 -0
  126. package/src/__tests__/secure-keys.test.ts +43 -1
  127. package/src/__tests__/send-endpoint-busy.test.ts +163 -1
  128. package/src/__tests__/server-history-render.test.ts +91 -1
  129. package/src/__tests__/settings-routes.test.ts +50 -1
  130. package/src/__tests__/skill-script-runner-sandbox.test.ts +32 -0
  131. package/src/__tests__/subagent-fork-notifications.test.ts +1 -2
  132. package/src/__tests__/subagent-manager-notify.test.ts +1 -2
  133. package/src/__tests__/subagent-notify-parent.test.ts +146 -39
  134. package/src/__tests__/subagent-notify-stale-rebuild.test.ts +2 -4
  135. package/src/__tests__/surface-completion-in-flight-snapshot.test.ts +2 -0
  136. package/src/__tests__/thread-backfill.test.ts +53 -0
  137. package/src/__tests__/tool-preview-lifecycle.test.ts +2 -0
  138. package/src/__tests__/tool-result-metadata-plumbing.test.ts +3 -1
  139. package/src/__tests__/tool-start-timestamp.test.ts +2 -0
  140. package/src/__tests__/twilio-routes.test.ts +1 -0
  141. package/src/__tests__/web-search-backend-failure.test.ts +1 -1
  142. package/src/activation/progress-store.test.ts +12 -7
  143. package/src/agent/loop.ts +99 -41
  144. package/src/api/events/assistant-turn-start.ts +3 -0
  145. package/src/api/events/generation-handoff.ts +2 -0
  146. package/src/api/events/message-complete.ts +2 -0
  147. package/src/api/events/notification-conversation-created.ts +14 -16
  148. package/src/api/events/notification-intent.ts +4 -2
  149. package/src/api/events/tool-result.ts +85 -0
  150. package/src/api/events/tool-use-start.ts +3 -0
  151. package/src/api/events/user-message-echo.ts +3 -0
  152. package/src/api/index.ts +31 -6
  153. package/src/api/mode-session.test.ts +131 -0
  154. package/src/api/mode-session.ts +148 -0
  155. package/src/api/remember-tool.ts +15 -0
  156. package/src/api/responses/conversation-message.ts +6 -0
  157. package/src/approvals/AGENTS.md +4 -2
  158. package/src/browser/__tests__/operations.test.ts +29 -0
  159. package/src/browser/operation-meta.ts +2 -1
  160. package/src/browser/operations.ts +29 -0
  161. package/src/browser/virtual-desktop-target.ts +2 -8
  162. package/src/bundler/bundle-signer.ts +1 -3
  163. package/src/calls/__tests__/barge-in-guard.test.ts +3 -0
  164. package/src/calls/__tests__/call-controller.test.ts +94 -0
  165. package/src/calls/__tests__/call-funnel-telemetry.test.ts +204 -0
  166. package/src/calls/__tests__/voice-control-protocol.test.ts +15 -0
  167. package/src/calls/__tests__/voice-escalation-judge.test.ts +209 -0
  168. package/src/calls/__tests__/voice-leg-coordinator.test.ts +168 -0
  169. package/src/{live-voice/__tests__/live-voice-metrics.test.ts → calls/__tests__/voice-metrics.test.ts} +32 -38
  170. package/src/calls/__tests__/voice-session-bridge.test.ts +576 -122
  171. package/src/calls/barge-in-guard.ts +5 -0
  172. package/src/calls/call-controller.ts +196 -1
  173. package/src/calls/call-domain.ts +4 -0
  174. package/src/calls/call-store.ts +87 -2
  175. package/src/calls/guardian-action-sweep.ts +22 -8
  176. package/src/calls/media-stream-audio-transcode.ts +1 -3
  177. package/src/calls/typesafe-noul.ts +156 -0
  178. package/src/calls/voice-control-protocol.ts +6 -0
  179. package/src/calls/voice-escalation-judge.ts +145 -0
  180. package/src/calls/voice-escalation-target.ts +10 -0
  181. package/src/calls/voice-leg-coordinator.ts +121 -3
  182. package/src/{live-voice/live-voice-metrics.ts → calls/voice-metrics.ts} +94 -87
  183. package/src/calls/voice-session-bridge.ts +256 -112
  184. package/src/calls/voice-triage-escalate.ts +7 -0
  185. package/src/cli/__tests__/roadmap-cli.test.ts +4 -41
  186. package/src/cli/commands/__tests__/notifications.test.ts +35 -10
  187. package/src/cli/commands/browser.help.ts +4 -5
  188. package/src/cli/commands/browser.ts +0 -1
  189. package/src/cli/commands/clients.help.ts +46 -0
  190. package/src/cli/commands/clients.ts +116 -0
  191. package/src/cli/commands/credentials.help.ts +6 -1
  192. package/src/cli/commands/notifications.help.ts +16 -2
  193. package/src/cli/commands/notifications.ts +30 -8
  194. package/src/cli/commands/roadmap.help.ts +18 -21
  195. package/src/cli/commands/roadmap.ts +4 -21
  196. package/src/cli/lib/__tests__/list-installed-plugins.test.ts +5 -2
  197. package/src/cli/lib/bundled-marketplace.json +84 -34
  198. package/src/cli/lib/plugin-marketplace.ts +8 -0
  199. package/src/cli/lib/publish-plugin.ts +1 -2
  200. package/src/config/__tests__/default-provider.test.ts +3 -1
  201. package/src/config/__tests__/memory-retrospective-schema.test.ts +14 -1
  202. package/src/config/bundled-skills/computer-use/SKILL.md +1 -1
  203. package/src/config/bundled-skills/computer-use/TOOLS.json +89 -1
  204. package/src/config/bundled-skills/image-studio/SKILL.md +17 -2
  205. package/src/config/bundled-skills/image-studio/tools/media-generate-image.ts +7 -11
  206. package/src/config/bundled-skills/sequences/TOOLS.json +1 -5
  207. package/src/config/call-site-defaults.ts +9 -0
  208. package/src/config/feature-flag-registry.json +16 -0
  209. package/src/config/profile-text-generation.test.ts +2 -2
  210. package/src/config/schemas/__tests__/tools.test.ts +31 -0
  211. package/src/config/schemas/call-site-catalog.ts +14 -0
  212. package/src/config/schemas/channels.ts +0 -18
  213. package/src/config/schemas/llm.ts +3 -1
  214. package/src/config/schemas/mcp.ts +2 -1
  215. package/src/config/schemas/memory-retrospective.ts +11 -2
  216. package/src/config/schemas/services.ts +15 -6
  217. package/src/config/schemas/tools.ts +10 -0
  218. package/src/config/session-groups-gate.ts +21 -0
  219. package/src/config/skills.ts +2 -6
  220. package/src/conversations/__tests__/message-consolidation.test.ts +149 -0
  221. package/src/conversations/message-consolidation.ts +102 -5
  222. package/src/credential-execution/ces-connect.test.ts +69 -0
  223. package/src/credential-execution/ces-connect.ts +115 -0
  224. package/src/credential-execution/ces-runtime.ts +55 -93
  225. package/src/credential-execution/executable-discovery.ts +1 -11
  226. package/src/daemon/__tests__/conversation-surfaces-launch.test.ts +10 -1
  227. package/src/daemon/__tests__/inference-profile-notification.test.ts +2 -0
  228. package/src/daemon/browser-mode-session.test.ts +402 -0
  229. package/src/daemon/browser-mode-session.ts +186 -0
  230. package/src/daemon/computer-use-mode-session.test.ts +210 -0
  231. package/src/daemon/computer-use-mode-session.ts +105 -0
  232. package/src/daemon/config-watcher.ts +10 -0
  233. package/src/daemon/conversation-agent-loop-handlers.ts +58 -10
  234. package/src/daemon/conversation-agent-loop.ts +219 -25
  235. package/src/daemon/conversation-evictor.ts +5 -24
  236. package/src/daemon/conversation-history.ts +10 -0
  237. package/src/daemon/conversation-interrupt-repair.ts +4 -43
  238. package/src/daemon/conversation-interrupt.ts +7 -11
  239. package/src/daemon/conversation-messaging.ts +58 -5
  240. package/src/daemon/conversation-mode-session.test.ts +1667 -0
  241. package/src/daemon/conversation-mode-session.ts +1008 -0
  242. package/src/daemon/conversation-process.ts +5 -0
  243. package/src/daemon/conversation-runtime-assembly.ts +10 -20
  244. package/src/daemon/conversation-skill-tools.ts +1 -0
  245. package/src/daemon/conversation-store.ts +4 -4
  246. package/src/daemon/conversation-surface-snapshots.ts +135 -0
  247. package/src/daemon/conversation-surfaces.ts +113 -5
  248. package/src/daemon/conversation-tool-setup.ts +8 -3
  249. package/src/daemon/conversation.ts +143 -41
  250. package/src/daemon/handlers/config-model.ts +7 -5
  251. package/src/daemon/handlers/shared.ts +55 -16
  252. package/src/daemon/host-cu-proxy.ts +51 -22
  253. package/src/daemon/lifecycle.ts +30 -13
  254. package/src/daemon/message-protocol.ts +0 -1
  255. package/src/daemon/message-provenance.ts +28 -4
  256. package/src/daemon/mode-session-startup-recovery.ts +23 -0
  257. package/src/daemon/mode-session-tracking.ts +54 -0
  258. package/src/daemon/process-message.ts +13 -4
  259. package/src/daemon/virtual-desktop-context.ts +21 -0
  260. package/src/desktop/__tests__/fake-desktop.ts +1 -0
  261. package/src/desktop/desktop-accessibility-script.ts +88 -0
  262. package/src/desktop/desktop-accessibility.test.ts +160 -0
  263. package/src/desktop/desktop-accessibility.ts +169 -0
  264. package/src/desktop/desktop-automation-lease.test.ts +76 -68
  265. package/src/desktop/desktop-automation-lease.ts +41 -50
  266. package/src/desktop/desktop-browser-endpoint.ts +4 -0
  267. package/src/desktop/desktop-computer-use-routing.test.ts +330 -0
  268. package/src/desktop/desktop-computer-use.test.ts +449 -0
  269. package/src/desktop/desktop-computer-use.ts +502 -0
  270. package/src/desktop/desktop-dependencies.ts +47 -293
  271. package/src/desktop/desktop-display.ts +2 -2
  272. package/src/desktop/desktop-panel-config.test.ts +13 -3
  273. package/src/desktop/desktop-panel-config.ts +109 -15
  274. package/src/desktop/desktop-session-manager.test.ts +69 -21
  275. package/src/desktop/desktop-session-manager.ts +76 -22
  276. package/src/desktop/desktop-stream-bridge.test.ts +11 -122
  277. package/src/desktop/desktop-stream-bridge.ts +6 -8
  278. package/src/desktop/desktop-window-theme.ts +5 -25
  279. package/src/desktop/virtual-desktop-feature.ts +52 -2
  280. package/src/desktop/virtual-desktop-platform.test.ts +5 -9
  281. package/src/documents/document-store.ts +23 -0
  282. package/src/heartbeat/__tests__/heartbeat-service.test.ts +22 -26
  283. package/src/heartbeat/heartbeat-service.ts +5 -33
  284. package/src/ipc/__tests__/browser-ipc.test.ts +215 -6
  285. package/src/ipc/assistant-server.ts +2 -0
  286. package/src/ipc/routes/__tests__/channel-reply-ipc-routes.test.ts +111 -0
  287. package/src/ipc/routes/channel-reply-ipc-routes.ts +73 -0
  288. package/src/live-voice/__tests__/continuation-judge.test.ts +151 -0
  289. package/src/live-voice/__tests__/live-activity-reporter.test.ts +154 -15
  290. package/src/live-voice/__tests__/live-voice-flux-turn-end.test.ts +743 -31
  291. package/src/live-voice/__tests__/live-voice-look-follow-up.test.ts +191 -10
  292. package/src/live-voice/__tests__/live-voice-session-groups-gate.test.ts +87 -0
  293. package/src/live-voice/__tests__/live-voice-session-manager.test.ts +5 -1
  294. package/src/live-voice/__tests__/live-voice-sight-frame-echo.test.ts +41 -0
  295. package/src/live-voice/__tests__/live-voice-sight-frame.test.ts +1017 -9
  296. package/src/live-voice/__tests__/live-voice-triage-escalate.test.ts +224 -1
  297. package/src/live-voice/__tests__/live-voice-tts-session.test.ts +101 -0
  298. package/src/live-voice/__tests__/live-voice-tts.test.ts +44 -0
  299. package/src/live-voice/__tests__/live-voice-vad.test.ts +939 -75
  300. package/src/live-voice/__tests__/microphone-idle-gate.test.ts +87 -0
  301. package/src/live-voice/__tests__/session-controls.test.ts +23 -0
  302. package/src/live-voice/__tests__/task-outcomes.test.ts +117 -0
  303. package/src/live-voice/__tests__/voice-input-diagnostics.test.ts +117 -0
  304. package/src/live-voice/camera-mode-session.test.ts +265 -0
  305. package/src/live-voice/camera-mode-session.ts +277 -0
  306. package/src/live-voice/continuation-judge.ts +123 -0
  307. package/src/live-voice/live-activity-reporter.ts +115 -6
  308. package/src/live-voice/live-voice-manager.ts +36 -1
  309. package/src/live-voice/live-voice-photo.ts +88 -7
  310. package/src/live-voice/live-voice-session-manager.ts +15 -0
  311. package/src/live-voice/live-voice-session.ts +1443 -747
  312. package/src/live-voice/live-voice-tts.ts +22 -4
  313. package/src/live-voice/microphone-idle-gate.ts +56 -0
  314. package/src/live-voice/protocol.ts +171 -4
  315. package/src/live-voice/session-controls.ts +11 -3
  316. package/src/live-voice/task-outcomes.ts +131 -0
  317. package/src/live-voice/voice-input-diagnostics.ts +117 -0
  318. package/src/mcp/__tests__/manager-tool-caps.test.ts +63 -18
  319. package/src/mcp/__tests__/tool-caps.test.ts +28 -1
  320. package/src/mcp/manager.ts +3 -0
  321. package/src/mcp/tool-caps.ts +12 -4
  322. package/src/media/__tests__/image-models.test.ts +58 -0
  323. package/src/media/image-credentials.ts +5 -0
  324. package/src/media/image-models.ts +52 -0
  325. package/src/media/image-service.ts +8 -0
  326. package/src/media/openrouter-image-service.test.ts +133 -0
  327. package/src/media/openrouter-image-service.ts +153 -0
  328. package/src/media/types.ts +1 -1
  329. package/src/messaging/providers/__tests__/transport-dispatch.test.ts +65 -11
  330. package/src/messaging/providers/discord/send.ts +4 -17
  331. package/src/messaging/providers/discord/transport.ts +2 -2
  332. package/src/messaging/providers/outlook/client.ts +16 -22
  333. package/src/messaging/providers/telegram-bot/send.test.ts +236 -1
  334. package/src/messaging/providers/telegram-bot/send.ts +10 -7
  335. package/src/messaging/providers/telegram-bot/transport.ts +3 -10
  336. package/src/messaging/providers/whatsapp/send.test.ts +169 -4
  337. package/src/monitoring/__tests__/control.test.ts +17 -5
  338. package/src/monitoring/control.ts +15 -5
  339. package/src/notifications/AGENTS.md +1 -1
  340. package/src/notifications/README.md +83 -99
  341. package/src/notifications/__tests__/broadcaster.test.ts +1 -1
  342. package/src/notifications/__tests__/channel-allowlist.test.ts +39 -0
  343. package/src/notifications/__tests__/copy-composer.test.ts +1 -1
  344. package/src/notifications/__tests__/decision-engine.test.ts +79 -2
  345. package/src/notifications/__tests__/deterministic-checks.test.ts +10 -10
  346. package/src/notifications/__tests__/home-feed-side-effect.test.ts +93 -4
  347. package/src/notifications/__tests__/notification-utils.test.ts +18 -0
  348. package/src/notifications/adapters/macos.ts +37 -46
  349. package/src/notifications/broadcaster.ts +5 -6
  350. package/src/notifications/channel-allowlist.ts +44 -0
  351. package/src/notifications/copy-composer.ts +0 -23
  352. package/src/notifications/decision-engine.ts +24 -14
  353. package/src/notifications/deterministic-checks.ts +1 -1
  354. package/src/notifications/emit-signal.ts +123 -37
  355. package/src/notifications/home-feed-side-effect.ts +9 -7
  356. package/src/notifications/notification-utils.ts +19 -0
  357. package/src/notifications/signal.ts +4 -19
  358. package/src/notifications/types.ts +15 -0
  359. package/src/oauth/connection-resolver.ts +1 -2
  360. package/src/oauth/oauth-store.ts +1 -3
  361. package/src/oauth/provider-serializer.ts +7 -0
  362. package/src/oauth/seed-providers.ts +30 -0
  363. package/src/onboarding/onboarding-events-store.ts +99 -12
  364. package/src/persistence/__tests__/client-connection-events-store.test.ts +322 -0
  365. package/src/persistence/client-connection-events-store.ts +377 -0
  366. package/src/persistence/conversation-crud.ts +55 -6
  367. package/src/persistence/conversation-mode-sessions.test.ts +424 -0
  368. package/src/persistence/conversation-mode-sessions.ts +460 -0
  369. package/src/persistence/conversation-queries.ts +6 -19
  370. package/src/persistence/llm-usage-store.ts +3 -9
  371. package/src/persistence/message-metadata.ts +25 -0
  372. package/src/persistence/migrations/381-create-conversation-mode-sessions.ts +41 -0
  373. package/src/persistence/migrations/382-create-client-connection-events.ts +40 -0
  374. package/src/persistence/migrations/__tests__/382-create-client-connection-events.test.ts +56 -0
  375. package/src/persistence/schema/conversations.ts +67 -0
  376. package/src/persistence/schema/infrastructure.ts +29 -0
  377. package/src/persistence/steps.ts +17 -0
  378. package/src/plugin-api/__tests__/plugin-name-env.test.ts +249 -0
  379. package/src/plugin-api/effective-context-window.ts +33 -0
  380. package/src/plugin-api/index.ts +24 -5
  381. package/src/plugin-api/plugin-name-env.ts +125 -0
  382. package/src/plugin-api/resolve-credential.ts +79 -20
  383. package/src/plugin-api/vision-support.test.ts +22 -0
  384. package/src/plugin-api/vision-support.ts +17 -5
  385. package/src/plugins/__tests__/active-plugin-env.test.ts +136 -0
  386. package/src/plugins/active-plugin-env.ts +51 -0
  387. package/src/plugins/defaults/index.ts +24 -0
  388. package/src/plugins/defaults/memory/__tests__/archive-removal-framing.test.ts +64 -0
  389. package/src/plugins/defaults/memory/__tests__/worker-control.test.ts +19 -6
  390. package/src/plugins/defaults/memory/context-search/agent-protocol.ts +9 -12
  391. package/src/plugins/defaults/memory/context-search/agent-runner.ts +78 -22
  392. package/src/plugins/defaults/memory/context-search/format.ts +51 -7
  393. package/src/plugins/defaults/memory/context-search/limits.ts +10 -12
  394. package/src/plugins/defaults/memory/context-search/recall-input.ts +38 -0
  395. package/src/plugins/defaults/memory/context-search/search.ts +8 -14
  396. package/src/plugins/defaults/memory/context-search/sources/conversations.ts +1 -0
  397. package/src/plugins/defaults/memory/context-search/types.ts +1 -11
  398. package/src/plugins/defaults/memory/graph/__tests__/handle-remember-v2.test.ts +11 -4
  399. package/src/plugins/defaults/memory/graph/tool-handlers.ts +12 -21
  400. package/src/plugins/defaults/memory/graph/tools.ts +35 -64
  401. package/src/plugins/defaults/memory/src/memory-eval-routes.ts +2 -3
  402. package/src/plugins/defaults/memory/src/memory-item-routes.test.ts +5 -0
  403. package/src/plugins/defaults/memory/src/memory-item-routes.ts +2 -1
  404. package/src/plugins/defaults/memory/substrate/prompts/consolidation.ts +2 -2
  405. package/src/plugins/defaults/memory/tools.test.ts +124 -9
  406. package/src/plugins/defaults/memory/tools.ts +38 -11
  407. package/src/plugins/defaults/memory/v3/__tests__/pool-log-store.test.ts +165 -27
  408. package/src/plugins/defaults/memory/v3/__tests__/pool-select.test.ts +626 -27
  409. package/src/plugins/defaults/memory/v3/__tests__/shadow-plugin.test.ts +46 -27
  410. package/src/plugins/defaults/memory/v3/orchestrate.ts +78 -38
  411. package/src/plugins/defaults/memory/v3/pool-log-store.ts +65 -79
  412. package/src/plugins/defaults/memory/v3/pool-select.test.ts +14 -5
  413. package/src/plugins/defaults/memory/v3/pool-select.ts +683 -44
  414. package/src/plugins/defaults/memory/worker-control.ts +15 -5
  415. package/src/plugins/defaults/task-progress/__tests__/registration.test.ts +70 -0
  416. package/src/plugins/defaults/task-progress/__tests__/task-progress-context.test.ts +380 -0
  417. package/src/plugins/defaults/task-progress/hooks/post-compact.ts +19 -0
  418. package/src/plugins/defaults/task-progress/hooks/user-prompt-submit.ts +24 -0
  419. package/src/plugins/defaults/task-progress/package.json +14 -0
  420. package/src/plugins/defaults/task-progress/src/apply-task-progress-context.ts +93 -0
  421. package/src/plugins/defaults/task-progress/src/format-task-progress-context.ts +67 -0
  422. package/src/providers/__tests__/context-overflow-error.test.ts +10 -0
  423. package/src/providers/__tests__/search-provider-catalog.test.ts +18 -0
  424. package/src/providers/anthropic/client.ts +10 -1
  425. package/src/providers/anthropic-gateway-shared.ts +6 -0
  426. package/src/providers/fetch-provider-catalog.ts +11 -0
  427. package/src/providers/gemini/client.ts +25 -8
  428. package/src/providers/inference/adapter-factory.ts +1 -1
  429. package/src/providers/jev/client.test.ts +10 -0
  430. package/src/providers/jev/client.ts +20 -4
  431. package/src/providers/model-catalog.ts +4 -3
  432. package/src/providers/openai/__tests__/chat-completions-extra-body.test.ts +94 -1
  433. package/src/providers/openai/__tests__/chat-completions-provider-reasoning.test.ts +106 -1
  434. package/src/providers/openai/__tests__/chat-template-flatten.test.ts +24 -0
  435. package/src/providers/openai/__tests__/google-thought-signature.test.ts +1 -2
  436. package/src/providers/openai/chat-completions-provider.ts +100 -29
  437. package/src/providers/openai/google-thought-signature.ts +0 -6
  438. package/src/providers/openai/responses-provider.ts +23 -1
  439. package/src/providers/ratelimit.ts +1 -3
  440. package/src/providers/search-provider-catalog.ts +24 -0
  441. package/src/providers/speech-to-text/__tests__/deepgram-flux-frames.test.ts +24 -0
  442. package/src/providers/speech-to-text/__tests__/deepgram-flux-realtime.test.ts +7 -1
  443. package/src/providers/speech-to-text/__tests__/vellum-managed-realtime.test.ts +50 -1
  444. package/src/providers/speech-to-text/deepgram-flux-frames.ts +11 -0
  445. package/src/providers/speech-to-text/vellum-managed-flux-realtime.ts +13 -0
  446. package/src/providers/types.ts +5 -0
  447. package/src/routes/control.ts +7 -5
  448. package/src/runtime/AGENTS.md +4 -2
  449. package/src/runtime/actor-trust-resolver.ts +3 -3
  450. package/src/runtime/agent-wake.ts +1 -1
  451. package/src/runtime/approval-message-composer.ts +3 -69
  452. package/src/runtime/assistant-event-hub.ts +73 -75
  453. package/src/runtime/assistant-event-publish-options.ts +7 -0
  454. package/src/runtime/assistant-event-targeting.ts +79 -0
  455. package/src/runtime/assistant-stream-state.ts +13 -100
  456. package/src/runtime/background-job-runner.ts +5 -5
  457. package/src/runtime/channel-retry-sweep.ts +1 -0
  458. package/src/runtime/guardian-action-message-composer.ts +8 -161
  459. package/src/runtime/guardian-reply-router.ts +28 -32
  460. package/src/runtime/http-types.ts +6 -0
  461. package/src/runtime/message-composer-types.ts +3 -61
  462. package/src/runtime/migrations/__tests__/vbundle-import-parity.test.ts +67 -1
  463. package/src/runtime/migrations/vbundle-builder.ts +24 -1
  464. package/src/runtime/migrations/vbundle-import-analyzer.ts +13 -4
  465. package/src/runtime/migrations/vbundle-import-policy.ts +10 -0
  466. package/src/runtime/migrations/vbundle-importer.ts +4 -1
  467. package/src/runtime/migrations/vbundle-streaming-importer.ts +4 -1
  468. package/src/runtime/migrations/vbundle-validator.ts +1 -0
  469. package/src/runtime/pending-interactions-mode-session.test.ts +62 -0
  470. package/src/runtime/pending-interactions.ts +29 -0
  471. package/src/runtime/routes/__tests__/client-history-routes.test.ts +104 -0
  472. package/src/runtime/routes/__tests__/image-generation-routes.test.ts +97 -0
  473. package/src/runtime/routes/__tests__/inference-profiles-routes.test.ts +1 -1
  474. package/src/runtime/routes/__tests__/roadmap-routes.test.ts +29 -6
  475. package/src/runtime/routes/browser-context.ts +31 -11
  476. package/src/runtime/routes/browser-routes.ts +43 -4
  477. package/src/runtime/routes/btw-routes.ts +9 -4
  478. package/src/runtime/routes/client-routes.ts +108 -0
  479. package/src/runtime/routes/conversation-management-routes.ts +4 -1
  480. package/src/runtime/routes/conversation-routes.ts +113 -27
  481. package/src/runtime/routes/credential-prompt-routes.ts +4 -3
  482. package/src/runtime/routes/credential-routes.ts +1 -2
  483. package/src/runtime/routes/desktop-setup-routes.test.ts +9 -18
  484. package/src/runtime/routes/desktop-setup-routes.ts +4 -6
  485. package/src/runtime/routes/documents-routes.ts +51 -0
  486. package/src/runtime/routes/email-routes.ts +3 -7
  487. package/src/runtime/routes/events-routes.ts +75 -54
  488. package/src/runtime/routes/identity-routes.ts +1 -5
  489. package/src/runtime/routes/image-generation-routes.ts +8 -14
  490. package/src/runtime/routes/inbound-message-handler.ts +35 -38
  491. package/src/runtime/routes/inbound-stages/backfill-sender-provenance.test.ts +168 -0
  492. package/src/runtime/routes/inbound-stages/backfill-sender-provenance.ts +96 -0
  493. package/src/runtime/routes/inbound-stages/background-dispatch.test.ts +38 -9
  494. package/src/runtime/routes/inbound-stages/background-dispatch.ts +2 -5
  495. package/src/runtime/routes/inbound-stages/reaction-intercept.ts +2 -0
  496. package/src/runtime/routes/llm-context-normalization.ts +1 -7
  497. package/src/runtime/routes/migration-routes.ts +73 -2
  498. package/src/runtime/routes/notification-routes.ts +10 -0
  499. package/src/runtime/routes/oauth-providers.ts +7 -0
  500. package/src/runtime/routes/plugins-routes.ts +6 -0
  501. package/src/runtime/routes/roadmap-routes.ts +47 -8
  502. package/src/runtime/routes/secret-routes.ts +1 -1
  503. package/src/runtime/routes/settings-routes.ts +10 -4
  504. package/src/runtime/routes/watcher-routes.ts +1 -3
  505. package/src/runtime/trust-class.test.ts +7 -6
  506. package/src/runtime/trust-class.ts +9 -17
  507. package/src/schedule/__tests__/worker-control.test.ts +36 -5
  508. package/src/schedule/worker-control.ts +15 -5
  509. package/src/security/secure-keys.ts +53 -103
  510. package/src/skills/clawhub.ts +3 -8
  511. package/src/skills/managed-store.ts +1 -5
  512. package/src/stt/types.ts +4 -0
  513. package/src/subagent/notify.ts +54 -34
  514. package/src/subagent/parent-notification.ts +6 -0
  515. package/src/telemetry/__tests__/phone-call-funnel.test.ts +72 -0
  516. package/src/telemetry/phone-call-funnel.ts +144 -0
  517. package/src/tools/__tests__/tool-schema-root-combinator-guard.test.ts +81 -0
  518. package/src/tools/ask-question/ask-question-tool.ts +6 -4
  519. package/src/tools/browser/browser-execution.ts +22 -59
  520. package/src/tools/browser/cdp-client/__tests__/cdp-dom-helpers.test.ts +561 -39
  521. package/src/tools/browser/cdp-client/cdp-dom-helpers.ts +435 -39
  522. package/src/tools/browser/cdp-client/cdp-inspect-client.ts +1 -8
  523. package/src/tools/client-os.ts +15 -0
  524. package/src/tools/computer-use/skill-proxy-bridge.ts +1 -1
  525. package/src/tools/computer-use/target.ts +42 -0
  526. package/src/tools/document/document-tool.ts +13 -18
  527. package/src/tools/execution-target.ts +14 -16
  528. package/src/tools/host-terminal/host-shell.ts +4 -1
  529. package/src/tools/network/__tests__/web-fetch-tinyfish.test.ts +250 -0
  530. package/src/tools/network/__tests__/web-search.test.ts +203 -0
  531. package/src/tools/network/web-fetch.ts +274 -7
  532. package/src/tools/network/web-search.ts +468 -6
  533. package/src/tools/permission-checker.ts +3 -3
  534. package/src/tools/policy-context.ts +3 -1
  535. package/src/tools/skills/load.ts +2 -1
  536. package/src/tools/skills/sandbox-runner.ts +11 -2
  537. package/src/tools/skills/skill-script-runner.ts +7 -0
  538. package/src/tools/skills/skill-tool-factory.ts +15 -1
  539. package/src/tools/terminal/__tests__/safe-env.test.ts +11 -0
  540. package/src/tools/terminal/safe-env.ts +4 -0
  541. package/src/tools/terminal/shell.ts +2 -0
  542. package/src/tools/tool-approval-handler.ts +5 -1
  543. package/src/tools/tool-types.ts +3 -3
  544. package/src/tools/types.ts +8 -2
  545. package/src/util/__tests__/worker-process-command.test.ts +5 -4
  546. package/src/util/abort-reasons.ts +18 -26
  547. package/src/util/canonicalize-identity.test.ts +21 -0
  548. package/src/util/canonicalize-identity.ts +16 -0
  549. package/src/util/errors.ts +13 -3
  550. package/src/util/provider-error-patterns.ts +3 -0
  551. package/src/util/worker-process.ts +77 -35
  552. package/src/workspace/migrations/157-add-desktop-files-launcher.ts +94 -0
  553. package/src/workspace/migrations/__tests__/156-extract-workspace-mcp-json.test.ts +4 -10
  554. package/src/workspace/migrations/__tests__/157-add-desktop-files-launcher.test.ts +113 -0
  555. package/src/workspace/migrations/registry.ts +2 -0
  556. package/src/__tests__/computer-use-window-schema.test.ts +0 -24
  557. package/src/api/events/heartbeat-alert.ts +0 -20
  558. package/src/daemon/message-types/web-activity.ts +0 -65
  559. package/src/desktop/desktop-dependencies.test.ts +0 -131
  560. package/src/tools/computer-use/definitions.ts +0 -607
package/openapi.yaml CHANGED
@@ -5647,6 +5647,64 @@ paths:
5647
5647
  required:
5648
5648
  - disconnected
5649
5649
  additionalProperties: false
5650
+ /v1/clients/history:
5651
+ get:
5652
+ operationId: clients_history_get
5653
+ summary: List client connection history
5654
+ description:
5655
+ Return persisted client subscribe/dispose events and coalesced sessions. Reconnects shorter than 60 seconds
5656
+ are flaps, not outages.
5657
+ tags:
5658
+ - clients
5659
+ parameters:
5660
+ - name: clientId
5661
+ in: query
5662
+ required: false
5663
+ schema:
5664
+ type: string
5665
+ description: Restrict history to one client UUID.
5666
+ - name: interfaceId
5667
+ in: query
5668
+ required: false
5669
+ schema:
5670
+ type: string
5671
+ description: Restrict history to one interface (e.g. chrome-extension).
5672
+ - name: since
5673
+ in: query
5674
+ required: false
5675
+ schema:
5676
+ type: string
5677
+ description: ISO-8601 or epoch-ms lower bound. Sessions already open at this time are included.
5678
+ - name: limit
5679
+ in: query
5680
+ required: false
5681
+ schema:
5682
+ type: string
5683
+ description: Max coalesced sessions to return (1-500, default 50).
5684
+ responses:
5685
+ "200":
5686
+ description: Successful response
5687
+ content:
5688
+ application/json:
5689
+ schema:
5690
+ type: object
5691
+ properties:
5692
+ sessions:
5693
+ type: array
5694
+ items:
5695
+ type: object
5696
+ properties: {}
5697
+ additionalProperties: {}
5698
+ events:
5699
+ type: array
5700
+ items:
5701
+ type: object
5702
+ properties: {}
5703
+ additionalProperties: {}
5704
+ required:
5705
+ - sessions
5706
+ - events
5707
+ additionalProperties: false
5650
5708
  /v1/clients/presence:
5651
5709
  post:
5652
5710
  operationId: clients_presence_post
@@ -11954,7 +12012,7 @@ paths:
11954
12012
  additionalProperties: false
11955
12013
  post:
11956
12014
  operationId: desktop_setup_post
11957
- summary: Install virtual desktop components
12015
+ summary: Check virtual desktop readiness (legacy POST)
11958
12016
  tags:
11959
12017
  - desktop
11960
12018
  responses:
@@ -12891,6 +12949,62 @@ paths:
12891
12949
  schema:
12892
12950
  type: string
12893
12951
  format: binary
12952
+ /v1/documents/create:
12953
+ post:
12954
+ operationId: documents_create_post
12955
+ summary: Create a document
12956
+ description: Create an empty document owned by a conversation and return it with its new surface ID.
12957
+ tags:
12958
+ - documents
12959
+ requestBody:
12960
+ required: true
12961
+ content:
12962
+ application/json:
12963
+ schema:
12964
+ type: object
12965
+ properties:
12966
+ conversationId:
12967
+ type: string
12968
+ description: Owning conversation
12969
+ title:
12970
+ description: Document title. Defaults to "Untitled Document".
12971
+ type: string
12972
+ required:
12973
+ - conversationId
12974
+ responses:
12975
+ "200":
12976
+ description: Successful response
12977
+ content:
12978
+ application/json:
12979
+ schema:
12980
+ type: object
12981
+ properties:
12982
+ success:
12983
+ type: boolean
12984
+ surfaceId:
12985
+ type: string
12986
+ conversationId:
12987
+ type: string
12988
+ title:
12989
+ type: string
12990
+ content:
12991
+ type: string
12992
+ wordCount:
12993
+ type: number
12994
+ createdAt:
12995
+ type: number
12996
+ updatedAt:
12997
+ type: number
12998
+ required:
12999
+ - success
13000
+ - surfaceId
13001
+ - conversationId
13002
+ - title
13003
+ - content
13004
+ - wordCount
13005
+ - createdAt
13006
+ - updatedAt
13007
+ additionalProperties: false
12894
13008
  /v1/domain/register:
12895
13009
  post:
12896
13010
  operationId: domain_register_post
@@ -16217,7 +16331,7 @@ paths:
16217
16331
  post:
16218
16332
  operationId: imagegeneration_generate_post
16219
16333
  summary: Generate or edit images using AI
16220
- description: Calls the configured image-generation provider (Gemini or OpenAI) to produce one or more images.
16334
+ description: Calls the configured image-generation provider (Gemini, OpenAI, or OpenRouter) to produce one or more images.
16221
16335
  tags:
16222
16336
  - image-generation
16223
16337
  requestBody:
@@ -16556,7 +16670,7 @@ paths:
16556
16670
  type: string
16557
16671
  description:
16558
16672
  "Filter by provider id. One of: anthropic, openai, gemini, ollama, fireworks, together, openrouter,
16559
- vercel-ai-gateway, litellm, opencode, openai-compatible, minimax, atlascloud, baseten, poolside, jev,
16673
+ vercel-ai-gateway, litellm, opencode, openai-compatible, minimax, atlascloud, baseten, poolside, typesafe,
16560
16674
  vellum"
16561
16675
  responses:
16562
16676
  "200":
@@ -16829,7 +16943,7 @@ paths:
16829
16943
  type: string
16830
16944
  description:
16831
16945
  "Filter by provider. One of: anthropic, openai, gemini, ollama, fireworks, together, openrouter,
16832
- vercel-ai-gateway, litellm, opencode, openai-compatible, minimax, atlascloud, baseten, poolside, jev,
16946
+ vercel-ai-gateway, litellm, opencode, openai-compatible, minimax, atlascloud, baseten, poolside, typesafe,
16833
16947
  vellum, chatgpt"
16834
16948
  responses:
16835
16949
  "200":
@@ -20944,6 +21058,12 @@ paths:
20944
21058
  schema:
20945
21059
  type: integer
20946
21060
  description: Maximum number of messages to return.
21061
+ - name: modeSessionIds
21062
+ in: query
21063
+ required: false
21064
+ schema:
21065
+ type: string
21066
+ description: Comma-separated mode-session IDs to include with summaries for loaded active groups outside this page.
20947
21067
  responses:
20948
21068
  "200":
20949
21069
  description: Successful response
@@ -20959,6 +21079,38 @@ paths:
20959
21079
  properties:
20960
21080
  id:
20961
21081
  type: string
21082
+ modeSession:
21083
+ type: object
21084
+ properties:
21085
+ mode:
21086
+ type: string
21087
+ enum:
21088
+ - computer_use
21089
+ - browser
21090
+ - live_vision
21091
+ - ambient
21092
+ id:
21093
+ type: string
21094
+ minLength: 1
21095
+ required:
21096
+ - mode
21097
+ - id
21098
+ additionalProperties: false
21099
+ modeSessionActivity:
21100
+ type: object
21101
+ properties:
21102
+ firstAt:
21103
+ type: integer
21104
+ minimum: 0
21105
+ maximum: 8640000000000000
21106
+ lastAt:
21107
+ type: integer
21108
+ minimum: 0
21109
+ maximum: 8640000000000000
21110
+ required:
21111
+ - firstAt
21112
+ - lastAt
21113
+ additionalProperties: false
20962
21114
  mergedMessageIds:
20963
21115
  type: array
20964
21116
  items:
@@ -21120,6 +21272,8 @@ paths:
21120
21272
  - keenable
21121
21273
  - firecrawl
21122
21274
  - fastcrw
21275
+ - searxng
21276
+ - tinyfish
21123
21277
  resultCount:
21124
21278
  type: number
21125
21279
  durationMs:
@@ -21173,6 +21327,7 @@ paths:
21173
21327
  - default
21174
21328
  - firecrawl
21175
21329
  - fastcrw
21330
+ - tinyfish
21176
21331
  status:
21177
21332
  type: number
21178
21333
  contentType:
@@ -21208,6 +21363,100 @@ paths:
21208
21363
  - redirectCount
21209
21364
  - durationMs
21210
21365
  additionalProperties: false
21366
+ recall:
21367
+ type: object
21368
+ properties:
21369
+ query:
21370
+ type: string
21371
+ depth:
21372
+ type: string
21373
+ enum:
21374
+ - fast
21375
+ - standard
21376
+ - deep
21377
+ sources:
21378
+ type: array
21379
+ items:
21380
+ type: string
21381
+ enum:
21382
+ - memory
21383
+ - conversations
21384
+ - workspace
21385
+ answer:
21386
+ type: string
21387
+ evidence:
21388
+ type: array
21389
+ items:
21390
+ type: object
21391
+ properties:
21392
+ source:
21393
+ type: string
21394
+ enum:
21395
+ - memory
21396
+ - conversations
21397
+ - workspace
21398
+ title:
21399
+ type: string
21400
+ locator:
21401
+ type: string
21402
+ excerpt:
21403
+ type: string
21404
+ timestampMs:
21405
+ type: number
21406
+ path:
21407
+ type: string
21408
+ conversationId:
21409
+ type: string
21410
+ messageId:
21411
+ type: string
21412
+ required:
21413
+ - source
21414
+ - title
21415
+ - locator
21416
+ - excerpt
21417
+ additionalProperties: false
21418
+ searchedSources:
21419
+ type: array
21420
+ items:
21421
+ type: object
21422
+ properties:
21423
+ source:
21424
+ type: string
21425
+ enum:
21426
+ - memory
21427
+ - conversations
21428
+ - workspace
21429
+ status:
21430
+ type: string
21431
+ enum:
21432
+ - searched
21433
+ - degraded
21434
+ evidenceCount:
21435
+ type: number
21436
+ error:
21437
+ type: string
21438
+ required:
21439
+ - source
21440
+ - status
21441
+ - evidenceCount
21442
+ additionalProperties: false
21443
+ required:
21444
+ - query
21445
+ - depth
21446
+ - sources
21447
+ - evidence
21448
+ - searchedSources
21449
+ additionalProperties: false
21450
+ remember:
21451
+ type: object
21452
+ properties:
21453
+ facts:
21454
+ type: array
21455
+ items:
21456
+ type: string
21457
+ required:
21458
+ - facts
21459
+ additionalProperties: false
21211
21460
  additionalProperties: false
21212
21461
  scopeOptions:
21213
21462
  type: array
@@ -21637,6 +21886,8 @@ paths:
21637
21886
  - keenable
21638
21887
  - firecrawl
21639
21888
  - fastcrw
21889
+ - searxng
21890
+ - tinyfish
21640
21891
  resultCount:
21641
21892
  type: number
21642
21893
  durationMs:
@@ -21690,6 +21941,7 @@ paths:
21690
21941
  - default
21691
21942
  - firecrawl
21692
21943
  - fastcrw
21944
+ - tinyfish
21693
21945
  status:
21694
21946
  type: number
21695
21947
  contentType:
@@ -21725,6 +21977,100 @@ paths:
21725
21977
  - redirectCount
21726
21978
  - durationMs
21727
21979
  additionalProperties: false
21980
+ recall:
21981
+ type: object
21982
+ properties:
21983
+ query:
21984
+ type: string
21985
+ depth:
21986
+ type: string
21987
+ enum:
21988
+ - fast
21989
+ - standard
21990
+ - deep
21991
+ sources:
21992
+ type: array
21993
+ items:
21994
+ type: string
21995
+ enum:
21996
+ - memory
21997
+ - conversations
21998
+ - workspace
21999
+ answer:
22000
+ type: string
22001
+ evidence:
22002
+ type: array
22003
+ items:
22004
+ type: object
22005
+ properties:
22006
+ source:
22007
+ type: string
22008
+ enum:
22009
+ - memory
22010
+ - conversations
22011
+ - workspace
22012
+ title:
22013
+ type: string
22014
+ locator:
22015
+ type: string
22016
+ excerpt:
22017
+ type: string
22018
+ timestampMs:
22019
+ type: number
22020
+ path:
22021
+ type: string
22022
+ conversationId:
22023
+ type: string
22024
+ messageId:
22025
+ type: string
22026
+ required:
22027
+ - source
22028
+ - title
22029
+ - locator
22030
+ - excerpt
22031
+ additionalProperties: false
22032
+ searchedSources:
22033
+ type: array
22034
+ items:
22035
+ type: object
22036
+ properties:
22037
+ source:
22038
+ type: string
22039
+ enum:
22040
+ - memory
22041
+ - conversations
22042
+ - workspace
22043
+ status:
22044
+ type: string
22045
+ enum:
22046
+ - searched
22047
+ - degraded
22048
+ evidenceCount:
22049
+ type: number
22050
+ error:
22051
+ type: string
22052
+ required:
22053
+ - source
22054
+ - status
22055
+ - evidenceCount
22056
+ additionalProperties: false
22057
+ required:
22058
+ - query
22059
+ - depth
22060
+ - sources
22061
+ - evidence
22062
+ - searchedSources
22063
+ additionalProperties: false
22064
+ remember:
22065
+ type: object
22066
+ properties:
22067
+ facts:
22068
+ type: array
22069
+ items:
22070
+ type: string
22071
+ required:
22072
+ - facts
22073
+ additionalProperties: false
21728
22074
  additionalProperties: false
21729
22075
  scopeOptions:
21730
22076
  type: array
@@ -22275,6 +22621,223 @@ paths:
22275
22621
  locally but the server reports `processing: false`, the turn has ended (or died) and the UI should
22276
22622
  stop waiting rather than spin indefinitely. Absent on older daemons that predate this field."
22277
22623
  type: boolean
22624
+ modeSessions:
22625
+ description: Conversation-owned mode-session summaries referenced by this page or explicitly requested by ID.
22626
+ type: array
22627
+ items:
22628
+ type: object
22629
+ properties:
22630
+ summary:
22631
+ oneOf:
22632
+ - type: object
22633
+ properties:
22634
+ id:
22635
+ type: string
22636
+ minLength: 1
22637
+ conversationId:
22638
+ type: string
22639
+ minLength: 1
22640
+ mode:
22641
+ type: string
22642
+ enum:
22643
+ - computer_use
22644
+ - browser
22645
+ - live_vision
22646
+ - ambient
22647
+ sourceStartedAt:
22648
+ type: integer
22649
+ minimum: 0
22650
+ maximum: 9007199254740991
22651
+ firstIncludedAt:
22652
+ anyOf:
22653
+ - type: integer
22654
+ minimum: 0
22655
+ maximum: 9007199254740991
22656
+ - type: "null"
22657
+ firstIncludedMessageId:
22658
+ anyOf:
22659
+ - type: string
22660
+ minLength: 1
22661
+ - type: "null"
22662
+ lastActivityAt:
22663
+ type: integer
22664
+ minimum: 0
22665
+ maximum: 9007199254740991
22666
+ lastOwnedMessageId:
22667
+ anyOf:
22668
+ - type: string
22669
+ minLength: 1
22670
+ - type: "null"
22671
+ revision:
22672
+ type: integer
22673
+ exclusiveMinimum: 0
22674
+ maximum: 9007199254740991
22675
+ status:
22676
+ type: string
22677
+ const: active
22678
+ endedAt:
22679
+ type: "null"
22680
+ endReason:
22681
+ type: "null"
22682
+ required:
22683
+ - id
22684
+ - conversationId
22685
+ - mode
22686
+ - sourceStartedAt
22687
+ - firstIncludedAt
22688
+ - firstIncludedMessageId
22689
+ - lastActivityAt
22690
+ - lastOwnedMessageId
22691
+ - revision
22692
+ - status
22693
+ - endedAt
22694
+ - endReason
22695
+ additionalProperties: false
22696
+ - type: object
22697
+ properties:
22698
+ id:
22699
+ type: string
22700
+ minLength: 1
22701
+ conversationId:
22702
+ type: string
22703
+ minLength: 1
22704
+ mode:
22705
+ type: string
22706
+ enum:
22707
+ - computer_use
22708
+ - browser
22709
+ - live_vision
22710
+ - ambient
22711
+ sourceStartedAt:
22712
+ type: integer
22713
+ minimum: 0
22714
+ maximum: 9007199254740991
22715
+ firstIncludedAt:
22716
+ anyOf:
22717
+ - type: integer
22718
+ minimum: 0
22719
+ maximum: 9007199254740991
22720
+ - type: "null"
22721
+ firstIncludedMessageId:
22722
+ anyOf:
22723
+ - type: string
22724
+ minLength: 1
22725
+ - type: "null"
22726
+ lastActivityAt:
22727
+ type: integer
22728
+ minimum: 0
22729
+ maximum: 9007199254740991
22730
+ lastOwnedMessageId:
22731
+ anyOf:
22732
+ - type: string
22733
+ minLength: 1
22734
+ - type: "null"
22735
+ revision:
22736
+ type: integer
22737
+ exclusiveMinimum: 0
22738
+ maximum: 9007199254740991
22739
+ status:
22740
+ type: string
22741
+ const: completed
22742
+ endedAt:
22743
+ type: integer
22744
+ minimum: 0
22745
+ maximum: 9007199254740991
22746
+ endReason:
22747
+ type: string
22748
+ minLength: 1
22749
+ required:
22750
+ - id
22751
+ - conversationId
22752
+ - mode
22753
+ - sourceStartedAt
22754
+ - firstIncludedAt
22755
+ - firstIncludedMessageId
22756
+ - lastActivityAt
22757
+ - lastOwnedMessageId
22758
+ - revision
22759
+ - status
22760
+ - endedAt
22761
+ - endReason
22762
+ additionalProperties: false
22763
+ - type: object
22764
+ properties:
22765
+ id:
22766
+ type: string
22767
+ minLength: 1
22768
+ conversationId:
22769
+ type: string
22770
+ minLength: 1
22771
+ mode:
22772
+ type: string
22773
+ enum:
22774
+ - computer_use
22775
+ - browser
22776
+ - live_vision
22777
+ - ambient
22778
+ sourceStartedAt:
22779
+ type: integer
22780
+ minimum: 0
22781
+ maximum: 9007199254740991
22782
+ firstIncludedAt:
22783
+ anyOf:
22784
+ - type: integer
22785
+ minimum: 0
22786
+ maximum: 9007199254740991
22787
+ - type: "null"
22788
+ firstIncludedMessageId:
22789
+ anyOf:
22790
+ - type: string
22791
+ minLength: 1
22792
+ - type: "null"
22793
+ lastActivityAt:
22794
+ type: integer
22795
+ minimum: 0
22796
+ maximum: 9007199254740991
22797
+ lastOwnedMessageId:
22798
+ anyOf:
22799
+ - type: string
22800
+ minLength: 1
22801
+ - type: "null"
22802
+ revision:
22803
+ type: integer
22804
+ exclusiveMinimum: 0
22805
+ maximum: 9007199254740991
22806
+ status:
22807
+ type: string
22808
+ const: interrupted
22809
+ endedAt:
22810
+ anyOf:
22811
+ - type: integer
22812
+ minimum: 0
22813
+ maximum: 9007199254740991
22814
+ - type: "null"
22815
+ endReason:
22816
+ type: string
22817
+ minLength: 1
22818
+ required:
22819
+ - id
22820
+ - conversationId
22821
+ - mode
22822
+ - sourceStartedAt
22823
+ - firstIncludedAt
22824
+ - firstIncludedMessageId
22825
+ - lastActivityAt
22826
+ - lastOwnedMessageId
22827
+ - revision
22828
+ - status
22829
+ - endedAt
22830
+ - endReason
22831
+ additionalProperties: false
22832
+ type: object
22833
+ runtimeState:
22834
+ type: string
22835
+ enum:
22836
+ - waiting
22837
+ - finishing
22838
+ required:
22839
+ - summary
22840
+ additionalProperties: false
22278
22841
  required:
22279
22842
  - messages
22280
22843
  additionalProperties: false
@@ -23234,6 +23797,14 @@ paths:
23234
23797
  description:
23235
23798
  description: Human-readable export description.
23236
23799
  type: string
23800
+ profile:
23801
+ description:
23802
+ "Export profile. 'migration' (default) builds a teleport bundle. 'debug' builds a bundle for Vellum staff
23803
+ to open on a debug clone: no credentials, plus the gateway's database and logs under gateway/."
23804
+ type: string
23805
+ enum:
23806
+ - migration
23807
+ - debug
23237
23808
  required:
23238
23809
  - upload_url
23239
23810
  responses:
@@ -24389,11 +24960,58 @@ paths:
24389
24960
  type: boolean
24390
24961
  reason:
24391
24962
  type: string
24963
+ selectedChannels:
24964
+ type: array
24965
+ items:
24966
+ type: string
24967
+ deliveryResults:
24968
+ type: array
24969
+ items:
24970
+ type: object
24971
+ properties:
24972
+ channel:
24973
+ type: string
24974
+ destination:
24975
+ type: string
24976
+ status:
24977
+ type: string
24978
+ enum:
24979
+ - pending
24980
+ - sent
24981
+ - failed
24982
+ - skipped
24983
+ errorCode:
24984
+ type: string
24985
+ errorMessage:
24986
+ type: string
24987
+ sentAt:
24988
+ type: number
24989
+ conversationId:
24990
+ type: string
24991
+ messageId:
24992
+ type: string
24993
+ conversationStrategy:
24994
+ type: string
24995
+ required:
24996
+ - channel
24997
+ - destination
24998
+ - status
24999
+ additionalProperties: false
25000
+ receiptClass:
25001
+ type: string
25002
+ enum:
25003
+ - provider_accepted
25004
+ - gateway_accepted
25005
+ - client_os_posted
25006
+ - unknown
24392
25007
  required:
24393
25008
  - signalId
24394
25009
  - dispatched
24395
25010
  - deduplicated
24396
25011
  - reason
25012
+ - selectedChannels
25013
+ - deliveryResults
25014
+ - receiptClass
24397
25015
  additionalProperties: false
24398
25016
  /v1/notifications/events:
24399
25017
  post:
@@ -24508,6 +25126,22 @@ paths:
24508
25126
  anyOf:
24509
25127
  - type: string
24510
25128
  - type: "null"
25129
+ category:
25130
+ anyOf:
25131
+ - type: string
25132
+ enum:
25133
+ - productivity
25134
+ - communication
25135
+ - meetings
25136
+ - sales
25137
+ - marketing
25138
+ - finance
25139
+ - commerce
25140
+ - engineering
25141
+ - knowledge
25142
+ - recruiting
25143
+ - type: "null"
25144
+ description: Where the integrations catalog files the provider; null for a provider without a seed entry.
24511
25145
  tenant_host:
24512
25146
  anyOf:
24513
25147
  - type: object
@@ -24540,6 +25174,7 @@ paths:
24540
25174
  - supports_managed_mode
24541
25175
  - managed_service_is_paid
24542
25176
  - feature_flag
25177
+ - category
24543
25178
  - tenant_host
24544
25179
  - acts_as
24545
25180
  additionalProperties: false
@@ -25059,6 +25694,22 @@ paths:
25059
25694
  anyOf:
25060
25695
  - type: string
25061
25696
  - type: "null"
25697
+ category:
25698
+ anyOf:
25699
+ - type: string
25700
+ enum:
25701
+ - productivity
25702
+ - communication
25703
+ - meetings
25704
+ - sales
25705
+ - marketing
25706
+ - finance
25707
+ - commerce
25708
+ - engineering
25709
+ - knowledge
25710
+ - recruiting
25711
+ - type: "null"
25712
+ description: Where the integrations catalog files the provider; null for a provider without a seed entry.
25062
25713
  tenant_host:
25063
25714
  anyOf:
25064
25715
  - type: object
@@ -25091,6 +25742,7 @@ paths:
25091
25742
  - supports_managed_mode
25092
25743
  - managed_service_is_paid
25093
25744
  - feature_flag
25745
+ - category
25094
25746
  - tenant_host
25095
25747
  - acts_as
25096
25748
  additionalProperties: false
@@ -27656,6 +28308,11 @@ paths:
27656
28308
  type: string
27657
28309
  oauthProvider:
27658
28310
  type: string
28311
+ category:
28312
+ description:
28313
+ "Where the integrations catalog files the entry: a slug from the shared integration-category vocabulary,
28314
+ passed through as the catalog declares it."
28315
+ type: string
27659
28316
  required:
27660
28317
  - kind
27661
28318
  - displayName
@@ -28811,8 +29468,8 @@ paths:
28811
29468
  operationId: roadmap_by_slug_patch
28812
29469
  summary: Update a roadmap item
28813
29470
  description:
28814
- Updates a roadmap item. At least one field is required; the roadmap service decides which items this
28815
- assistant may edit.
29471
+ Updates the title or description of a roadmap item this assistant filed, while the item is still open.
29472
+ Status and tags are set by Vellum staff.
28816
29473
  tags:
28817
29474
  - roadmap
28818
29475
  parameters:
@@ -28832,13 +29489,7 @@ paths:
28832
29489
  type: string
28833
29490
  description:
28834
29491
  type: string
28835
- status:
28836
- type: string
28837
- tags:
28838
- description: Tag slugs
28839
- type: array
28840
- items:
28841
- type: string
29492
+ additionalProperties: false
28842
29493
  responses:
28843
29494
  "200":
28844
29495
  description: Successful response
@@ -38400,7 +39051,7 @@ components:
38400
39051
  - atlascloud
38401
39052
  - baseten
38402
39053
  - poolside
38403
- - jev
39054
+ - typesafe
38404
39055
  - vellum
38405
39056
  - chatgpt
38406
39057
  Auth: