@vellumai/assistant 0.6.6 → 0.7.1
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.
- package/AGENTS.md +20 -0
- package/ARCHITECTURE.md +46 -38
- package/Dockerfile +27 -6
- package/README.md +9 -11
- package/__tests__/permissions/gateway-threshold-reader.test.ts +83 -149
- package/bun.lock +309 -119
- package/docs/architecture/memory.md +1 -90
- package/docs/architecture/security.md +28 -41
- package/docs/credential-execution-service.md +7 -5
- package/docs/skills.md +10 -10
- package/docs/stt-provider-onboarding.md +17 -45
- package/examples/plugins/echo/bun.lock +25 -0
- package/knip.json +9 -22
- package/node_modules/@vellumai/ces-client/bun.lock +33 -0
- package/node_modules/@vellumai/ces-client/package.json +25 -0
- package/node_modules/@vellumai/ces-client/src/__tests__/ces-client.test.ts +631 -0
- package/node_modules/@vellumai/ces-client/src/__tests__/package-boundary.test.ts +138 -0
- package/node_modules/@vellumai/ces-client/src/credential-rpc.ts +13 -0
- package/node_modules/@vellumai/ces-client/src/http-credentials.ts +296 -0
- package/node_modules/@vellumai/ces-client/src/http-log-export.ts +111 -0
- package/node_modules/@vellumai/ces-client/src/index.ts +43 -0
- package/node_modules/@vellumai/ces-client/src/rpc-client.ts +445 -0
- package/node_modules/@vellumai/credential-storage/src/__tests__/package-boundary.test.ts +32 -6
- package/node_modules/@vellumai/egress-proxy/src/__tests__/package-boundary.test.ts +32 -1
- package/node_modules/@vellumai/gateway-client/bun.lock +39 -0
- package/node_modules/@vellumai/gateway-client/package.json +23 -0
- package/node_modules/@vellumai/gateway-client/src/__tests__/gateway-client.test.ts +343 -0
- package/node_modules/@vellumai/gateway-client/src/__tests__/package-boundary.test.ts +140 -0
- package/node_modules/@vellumai/gateway-client/src/http-delivery.ts +422 -0
- package/node_modules/@vellumai/gateway-client/src/index.ts +35 -0
- package/node_modules/@vellumai/gateway-client/src/ipc-client.ts +331 -0
- package/node_modules/@vellumai/gateway-client/src/types.ts +131 -0
- package/node_modules/@vellumai/gateway-client/tsconfig.json +20 -0
- package/node_modules/@vellumai/{ces-contracts → service-contracts}/bun.lock +1 -1
- package/node_modules/@vellumai/{ces-contracts → service-contracts}/package.json +4 -2
- package/node_modules/@vellumai/{ces-contracts → service-contracts}/src/__tests__/contracts.test.ts +5 -1
- package/node_modules/@vellumai/service-contracts/src/__tests__/package-boundary.test.ts +155 -0
- package/node_modules/@vellumai/service-contracts/src/credential-rpc.ts +23 -0
- package/node_modules/@vellumai/service-contracts/src/index.ts +25 -0
- package/node_modules/@vellumai/{ces-contracts/src/index.ts → service-contracts/src/transport.ts} +6 -28
- package/node_modules/@vellumai/service-contracts/src/trust-rules.ts +116 -0
- package/node_modules/@vellumai/service-contracts/tsconfig.json +20 -0
- package/node_modules/@vellumai/skill-host-contracts/__tests__/client.test.ts +887 -0
- package/node_modules/@vellumai/skill-host-contracts/bun.lock +24 -0
- package/node_modules/@vellumai/skill-host-contracts/package.json +18 -0
- package/node_modules/@vellumai/skill-host-contracts/src/assistant-event.ts +86 -0
- package/node_modules/@vellumai/skill-host-contracts/src/client.ts +1342 -0
- package/node_modules/@vellumai/skill-host-contracts/src/index.ts +6 -0
- package/node_modules/@vellumai/skill-host-contracts/src/runtime-mode.ts +11 -0
- package/node_modules/@vellumai/skill-host-contracts/src/server-message.ts +32 -0
- package/node_modules/@vellumai/skill-host-contracts/src/skill-host.ts +325 -0
- package/node_modules/@vellumai/skill-host-contracts/src/tool-types.ts +444 -0
- package/node_modules/@vellumai/skill-host-contracts/tsconfig.json +20 -0
- package/node_modules/@vellumai/skill-host-contracts/tsconfig.test.json +12 -0
- package/node_modules/@vellumai/slack-text/bun.lock +24 -0
- package/node_modules/@vellumai/slack-text/package.json +18 -0
- package/node_modules/@vellumai/slack-text/src/index.test.ts +153 -0
- package/node_modules/@vellumai/slack-text/src/index.ts +235 -0
- package/node_modules/@vellumai/slack-text/tsconfig.json +20 -0
- package/openapi.yaml +3136 -650
- package/package.json +15 -7
- package/scripts/check-circular-deps.ts +80 -0
- package/scripts/generate-openapi.ts +29 -107
- package/{src/memory/graph/inspect.ts → scripts/memory-inspect.ts} +27 -27
- package/src/__tests__/access-request-decision.test.ts +2 -11
- package/src/__tests__/acp-session.test.ts +4 -150
- package/src/__tests__/actor-token-service.test.ts +17 -678
- package/src/__tests__/agent-loop-callsite-precedence.test.ts +2 -6
- package/src/__tests__/agent-loop-override-profile.test.ts +404 -0
- package/src/__tests__/agent-loop-thinking.test.ts +4 -4
- package/src/__tests__/agent-wake-override-profile.test.ts +283 -0
- package/src/__tests__/always-loaded-tools-guard.test.ts +2 -1
- package/src/__tests__/anthropic-provider.test.ts +183 -28
- package/src/__tests__/app-conversation-ids-backfill.test.ts +278 -0
- package/src/__tests__/app-conversation-ids.test.ts +151 -0
- package/src/__tests__/app-routes-csp.test.ts +106 -55
- package/src/__tests__/approval-cascade.test.ts +3 -370
- package/src/__tests__/approval-conversation-turn.test.ts +3 -8
- package/src/__tests__/approval-hardcoded-copy-guard.test.ts +1 -1
- package/src/__tests__/approval-primitive.test.ts +2 -1
- package/src/__tests__/approval-routes-http.test.ts +36 -464
- package/src/__tests__/assistant-event-hub.test.ts +126 -77
- package/src/__tests__/assistant-event.test.ts +0 -5
- package/src/__tests__/assistant-events-sse-hardening.test.ts +107 -92
- package/src/__tests__/assistant-feature-flags-integration.test.ts +0 -29
- package/src/__tests__/assistant-id-boundary-guard.test.ts +0 -3
- package/src/__tests__/attachment-upload-trusted-source.test.ts +139 -0
- package/src/__tests__/attachments-store.test.ts +46 -1
- package/src/__tests__/audit-log-rotation.test.ts +2 -1
- package/src/__tests__/auto-analysis-end-to-end.test.ts +8 -20
- package/src/__tests__/background-shell-bash.test.ts +227 -0
- package/src/__tests__/background-shell-host-bash.test.ts +465 -0
- package/src/__tests__/background-tool-registry.test.ts +145 -0
- package/src/__tests__/background-tool-routes.test.ts +175 -0
- package/src/__tests__/btw-routes.test.ts +147 -183
- package/src/__tests__/call-controller.test.ts +15 -2
- package/src/__tests__/call-conversation-messages.test.ts +2 -1
- package/src/__tests__/call-domain.test.ts +2 -2
- package/src/__tests__/call-pointer-messages.test.ts +11 -13
- package/src/__tests__/call-recovery.test.ts +2 -1
- package/src/__tests__/call-routes-http.test.ts +3 -14
- package/src/__tests__/call-site-routing-provider.test.ts +193 -0
- package/src/__tests__/call-store.test.ts +2 -1
- package/src/__tests__/cancel-resolves-conversation-key.test.ts +31 -62
- package/src/__tests__/canonical-guardian-store.test.ts +2 -2
- package/src/__tests__/catalog-files.test.ts +0 -26
- package/src/__tests__/ces-rpc-credential-backend.test.ts +1 -1
- package/src/__tests__/channel-approval-routes.test.ts +88 -344
- package/src/__tests__/channel-approval.test.ts +9 -7
- package/src/__tests__/channel-approvals.test.ts +34 -197
- package/src/__tests__/channel-delivery-store.test.ts +11 -10
- package/src/__tests__/channel-guardian.test.ts +114 -171
- package/src/__tests__/channel-readiness-service.test.ts +8 -6
- package/src/__tests__/channel-reply-delivery.test.ts +3 -19
- package/src/__tests__/channel-retry-sweep.test.ts +2 -5
- package/src/__tests__/checker.test.ts +272 -3933
- package/src/__tests__/circuit-breaker-pipeline.test.ts +1 -1
- package/src/__tests__/cli-memory-v2-reembed-skills.test.ts +208 -0
- package/src/__tests__/cli.test.ts +1 -38
- package/src/__tests__/compact-event-conversation-id-guard.test.ts +50 -0
- package/src/__tests__/compaction-events.test.ts +2 -1
- package/src/__tests__/compaction-pipeline.test.ts +1 -1
- package/src/__tests__/compaction-strip-metadata-clear.test.ts +2 -2
- package/src/__tests__/compaction-timeout-recovery.test.ts +1 -1
- package/src/__tests__/config-managed-gemini-defaults.test.ts +3 -7
- package/src/__tests__/config-model-image-provider.test.ts +0 -1
- package/src/__tests__/config-schema-cmd.test.ts +1 -1
- package/src/__tests__/config-schema.test.ts +36 -269
- package/src/__tests__/config-watcher.test.ts +12 -0
- package/src/__tests__/confirmation-request-guardian-bridge.test.ts +4 -25
- package/src/__tests__/connection-policy.test.ts +1 -52
- package/src/__tests__/contact-store-user-file.test.ts +2 -1
- package/src/__tests__/contacts-tools.test.ts +56 -29
- package/src/__tests__/contacts-write.test.ts +8 -125
- package/src/__tests__/context-image-dimensions.test.ts +1 -1
- package/src/__tests__/context-search-agent-protocol.test.ts +230 -0
- package/src/__tests__/context-search-agent-runner.test.ts +998 -0
- package/src/__tests__/context-search-conversations-source.test.ts +320 -0
- package/src/__tests__/context-search-fanout.test.ts +380 -0
- package/src/__tests__/context-search-memory-source.test.ts +430 -0
- package/src/__tests__/context-search-memory-v2-source.test.ts +383 -0
- package/src/__tests__/context-search-pkb-source.test.ts +493 -0
- package/src/__tests__/context-search-types.test.ts +95 -0
- package/src/__tests__/context-search-workspace-source.test.ts +532 -0
- package/src/__tests__/context-window-manager.test.ts +71 -0
- package/src/__tests__/conversation-abort-tool-results.test.ts +10 -1
- package/src/__tests__/conversation-agent-loop-inference-profile.test.ts +633 -0
- package/src/__tests__/conversation-agent-loop-overflow.test.ts +117 -31
- package/src/__tests__/conversation-agent-loop.test.ts +1004 -15
- package/src/__tests__/conversation-analysis-routes.test.ts +68 -88
- package/src/__tests__/conversation-attachments.test.ts +9 -20
- package/src/__tests__/conversation-attention-store.test.ts +2 -1
- package/src/__tests__/conversation-attention-telegram.test.ts +15 -5
- package/src/__tests__/conversation-clear-safety.test.ts +53 -95
- package/src/__tests__/conversation-confirmation-signals.test.ts +1 -330
- package/src/__tests__/conversation-crud-inference-profile.test.ts +54 -0
- package/src/__tests__/conversation-delete-schedule-cleanup.test.ts +63 -157
- package/src/__tests__/conversation-disk-view-integration.test.ts +2 -2
- package/src/__tests__/conversation-disk-view.test.ts +5 -4
- package/src/__tests__/conversation-fork-crud.test.ts +26 -55
- package/src/__tests__/conversation-fork-route.test.ts +5 -74
- package/src/__tests__/conversation-history-web-search.test.ts +4 -3
- package/src/__tests__/conversation-inference-profile-list.test.ts +128 -0
- package/src/__tests__/conversation-inference-profile-route.test.ts +205 -0
- package/src/__tests__/conversation-init.benchmark.test.ts +4 -81
- package/src/__tests__/conversation-key-store-disk-view.test.ts +2 -1
- package/src/__tests__/conversation-lifecycle.test.ts +4 -5
- package/src/__tests__/conversation-list-source.test.ts +2 -2
- package/src/__tests__/conversation-load-history-repair.test.ts +0 -1
- package/src/__tests__/conversation-pairing.test.ts +0 -1
- package/src/__tests__/conversation-pre-run-repair.test.ts +137 -297
- package/src/__tests__/conversation-process-callsite.test.ts +79 -3
- package/src/__tests__/conversation-provider-retry-repair.test.ts +6 -1
- package/src/__tests__/conversation-queue.test.ts +4 -41
- package/src/__tests__/conversation-routes-disk-view.test.ts +55 -188
- package/src/__tests__/conversation-routes-guardian-reply.test.ts +64 -71
- package/src/__tests__/conversation-routes-slash-commands.test.ts +144 -64
- package/src/__tests__/conversation-runtime-assembly.test.ts +295 -84
- package/src/__tests__/conversation-slash-commands.test.ts +30 -47
- package/src/__tests__/conversation-slash-queue.test.ts +2 -1
- package/src/__tests__/conversation-slash-unknown.test.ts +0 -1
- package/src/__tests__/conversation-speed-override.test.ts +0 -4
- package/src/__tests__/conversation-starter-routes.test.ts +254 -55
- package/src/__tests__/conversation-starters-cadence.test.ts +2 -2
- package/src/__tests__/conversation-store.test.ts +2 -375
- package/src/__tests__/conversation-surfaces-standalone-payloads.test.ts +12 -5
- package/src/__tests__/conversation-surfaces-standalone.test.ts +18 -14
- package/src/__tests__/conversation-surfaces-state-update.test.ts +3 -2
- package/src/__tests__/conversation-tool-setup-app-refresh.test.ts +9 -47
- package/src/__tests__/conversation-tool-setup-memory-scope.test.ts +6 -6
- package/src/__tests__/conversation-unread-route.test.ts +1 -1
- package/src/__tests__/conversation-usage.test.ts +255 -4
- package/src/__tests__/conversation-wipe.test.ts +2 -103
- package/src/__tests__/conversation-workspace-cache-state.test.ts +0 -1
- package/src/__tests__/conversation-workspace-injection.test.ts +0 -1
- package/src/__tests__/conversation-workspace-tool-tracking.test.ts +0 -1
- package/src/__tests__/conversations-defer-cli.test.ts +150 -0
- package/src/__tests__/credential-execution-admin-cli.test.ts +1 -1
- package/src/__tests__/credential-execution-api-key-propagation.test.ts +2 -2
- package/src/__tests__/credential-execution-approval-bridge.test.ts +22 -289
- package/src/__tests__/credential-execution-client.test.ts +1 -1
- package/src/__tests__/credential-execution-managed-contract.test.ts +1 -1
- package/src/__tests__/credential-execution-shell-lockdown.test.ts +0 -39
- package/src/__tests__/credential-health-service.test.ts +68 -0
- package/src/__tests__/credential-security-e2e.test.ts +4 -3
- package/src/__tests__/credential-security-invariants.test.ts +15 -5
- package/src/__tests__/credential-token-resolver.test.ts +180 -0
- package/src/__tests__/credentials-cli.test.ts +45 -21
- package/src/__tests__/cu-unified-flow.test.ts +33 -16
- package/src/__tests__/daemon-assistant-events.test.ts +34 -21
- package/src/__tests__/daemon-credential-client.test.ts +26 -108
- package/src/__tests__/db-acp-history.test.ts +284 -0
- package/src/__tests__/db-activation-state.test.ts +240 -0
- package/src/__tests__/db-connection-isolation.test.ts +125 -0
- package/src/__tests__/db-conversation-fork-lineage-migration.test.ts +2 -1
- package/src/__tests__/db-conversation-inference-profile-migration.test.ts +248 -0
- package/src/__tests__/db-llm-request-log-provider-migration.test.ts +2 -1
- package/src/__tests__/db-memory-graph-event-date-repair.test.ts +116 -0
- package/src/__tests__/db-migration-rollback.test.ts +101 -0
- package/src/__tests__/db-rename-inference-profile-snake-case-migration.test.ts +132 -0
- package/src/__tests__/db-schedule-syntax-migration.test.ts +1 -0
- package/src/__tests__/db-slack-compaction-watermark-migration.test.ts +169 -0
- package/src/__tests__/delete-propagation.test.ts +3 -2
- package/src/__tests__/deterministic-verification-control-plane.test.ts +38 -104
- package/src/__tests__/dm-backfill.test.ts +3 -2
- package/src/__tests__/document-conversations.test.ts +332 -0
- package/src/__tests__/edit-propagation.test.ts +5 -7
- package/src/__tests__/embedding-managed-proxy-selection.test.ts +3 -3
- package/src/__tests__/emit-event-signal.test.ts +4 -6
- package/src/__tests__/empty-response-pipeline.test.ts +1 -1
- package/src/__tests__/events-client-registration.test.ts +441 -0
- package/src/__tests__/file-write-tool.test.ts +2 -4
- package/src/__tests__/filing-service.test.ts +197 -19
- package/src/__tests__/first-greeting.test.ts +156 -150
- package/src/__tests__/fixtures/mock-chrome-extension.ts +108 -66
- package/src/__tests__/followup-tools.test.ts +2 -1
- package/src/__tests__/gateway-client-managed-outbound.test.ts +8 -12
- package/src/__tests__/gateway-only-enforcement.test.ts +2 -6
- package/src/__tests__/gateway-only-guard.test.ts +4 -3
- package/src/__tests__/gemini-provider.test.ts +276 -10
- package/src/__tests__/get-skill-detail-audit.test.ts +3 -8
- package/src/__tests__/graph-extraction-event-date.test.ts +30 -0
- package/src/__tests__/guardian-action-conversation-turn.test.ts +2 -1
- package/src/__tests__/guardian-action-followup-executor.test.ts +2 -2
- package/src/__tests__/guardian-action-followup-store.test.ts +2 -1
- package/src/__tests__/guardian-action-grant-mint-consume.test.ts +9 -9
- package/src/__tests__/guardian-action-late-reply.test.ts +2 -1
- package/src/__tests__/guardian-action-store.test.ts +2 -1
- package/src/__tests__/guardian-action-sweep.test.ts +9 -8
- package/src/__tests__/guardian-binding-drift-heal.test.ts +3 -2
- package/src/__tests__/guardian-decision-primitive-canonical.test.ts +21 -118
- package/src/__tests__/guardian-dispatch.test.ts +14 -11
- package/src/__tests__/guardian-grant-minting.test.ts +16 -17
- package/src/__tests__/guardian-outbound-http.test.ts +71 -106
- package/src/__tests__/guardian-principal-id-roundtrip.test.ts +2 -2
- package/src/__tests__/guardian-routing-invariants.test.ts +41 -92
- package/src/__tests__/guardian-routing-state.test.ts +15 -23
- package/src/__tests__/guardian-verification-voice-binding.test.ts +1 -2
- package/src/__tests__/handlers-skills-memory-v2-reseed.test.ts +274 -0
- package/src/__tests__/handlers-user-message-approval-consumption.test.ts +10 -87
- package/src/__tests__/headless-browser-mode.test.ts +4 -9
- package/src/__tests__/headless-browser-navigate.test.ts +21 -20
- package/src/__tests__/heartbeat-service.test.ts +325 -25
- package/src/__tests__/helpers/call-route-handler.ts +72 -0
- package/src/__tests__/helpers/channel-test-adapter.ts +161 -0
- package/src/__tests__/helpers/create-guardian-binding.ts +91 -0
- package/src/__tests__/helpers/gateway-classify-mock.ts +67 -0
- package/src/__tests__/helpers/mock-logger.ts +36 -0
- package/src/__tests__/history-repair-pipeline.test.ts +1 -1
- package/src/__tests__/home-state-routes.test.ts +10 -31
- package/src/__tests__/host-bash-proxy.test.ts +46 -122
- package/src/__tests__/host-browser-e2e-cloud.test.ts +38 -498
- package/src/__tests__/host-browser-e2e-self-hosted-capability.test.ts +35 -95
- package/src/__tests__/host-browser-proxy.test.ts +111 -185
- package/src/__tests__/host-browser-routes.test.ts +68 -153
- package/src/__tests__/host-browser-ws-events-e2e.test.ts +35 -31
- package/src/__tests__/host-cu-proxy.test.ts +56 -111
- package/src/__tests__/host-file-proxy.test.ts +44 -98
- package/src/__tests__/host-file-read-tool.test.ts +42 -21
- package/src/__tests__/host-proxy-interface.test.ts +3 -3
- package/src/__tests__/host-shell-tool.test.ts +35 -72
- package/src/__tests__/host-transfer-pending-interactions.test.ts +144 -0
- package/src/__tests__/host-transfer-proxy.test.ts +723 -0
- package/src/__tests__/http-conversation-lineage.test.ts +3 -2
- package/src/__tests__/http-user-message-parity.test.ts +18 -15
- package/src/__tests__/inbound-invite-redemption.test.ts +3 -2
- package/src/__tests__/inbound-slack-persistence.test.ts +31 -0
- package/src/__tests__/injector-chain.test.ts +25 -21
- package/src/__tests__/injector-pkb-v2-silenced.test.ts +124 -0
- package/src/__tests__/inline-command-runner.test.ts +0 -66
- package/src/__tests__/inline-skill-load-permissions.test.ts +41 -208
- package/src/__tests__/install-skill-routing.test.ts +2 -14
- package/src/__tests__/invite-redemption-service.test.ts +2 -1
- package/src/__tests__/invite-routes-http.test.ts +80 -12
- package/src/__tests__/jobs-store-qdrant-breaker.test.ts +2 -1
- package/src/__tests__/jobs-store-upsert-debounced.test.ts +2 -1
- package/src/__tests__/lifecycle-memory-v2-seed.test.ts +157 -0
- package/src/__tests__/list-messages-attachments.test.ts +52 -55
- package/src/__tests__/list-messages-page-latest.test.ts +283 -0
- package/src/__tests__/list-messages-tool-merge.test.ts +16 -17
- package/src/__tests__/llm-call-pipeline.test.ts +7 -8
- package/src/__tests__/llm-callsite-catalog.test.ts +34 -0
- package/src/__tests__/llm-catalog-parity.test.ts +90 -0
- package/src/__tests__/llm-context-normalization.test.ts +69 -4
- package/src/__tests__/llm-context-resolution.test.ts +180 -0
- package/src/__tests__/llm-context-route-provider.test.ts +39 -113
- package/src/__tests__/llm-request-log-turn-query.test.ts +2 -1
- package/src/__tests__/llm-resolver.test.ts +279 -0
- package/src/__tests__/llm-schema.test.ts +57 -1
- package/src/__tests__/llm-usage-store.test.ts +271 -5
- package/src/__tests__/log-export-routes.test.ts +89 -0
- package/src/__tests__/log-export-workspace.test.ts +28 -17
- package/src/__tests__/managed-profile-guard.test.ts +225 -0
- package/src/__tests__/managed-skill-lifecycle.test.ts +0 -10
- package/src/__tests__/manual-token-reconciliation.test.ts +334 -0
- package/src/__tests__/mcp-abort-signal.test.ts +2 -3
- package/src/__tests__/mcp-client-auth.test.ts +2 -3
- package/src/__tests__/memory-admin-recall.test.ts +221 -0
- package/src/__tests__/memory-recall-log-store.test.ts +2 -1
- package/src/__tests__/memory-retrieval-pipeline.test.ts +6 -8
- package/src/__tests__/memory-upsert-concurrency.test.ts +2 -1
- package/src/__tests__/memory-v2-static-injector.test.ts +95 -0
- package/src/__tests__/migration-cross-version-compatibility.test.ts +209 -302
- package/src/__tests__/migration-export-http.test.ts +50 -43
- package/src/__tests__/migration-export-streaming.test.ts +18 -10
- package/src/__tests__/migration-export-to-gcs.test.ts +531 -0
- package/src/__tests__/migration-import-commit-http.test.ts +82 -37
- package/src/__tests__/migration-import-from-gcs.test.ts +574 -0
- package/src/__tests__/migration-import-from-url.test.ts +34 -27
- package/src/__tests__/migration-import-preflight-http.test.ts +108 -108
- package/src/__tests__/migration-jobs-status.test.ts +164 -0
- package/src/__tests__/migration-parity-persistence.test.ts +62 -25
- package/src/__tests__/migration-transport.test.ts +115 -23
- package/src/__tests__/migration-validate-http.test.ts +149 -159
- package/src/__tests__/migration-wizard.test.ts +133 -27
- package/src/__tests__/mock-gateway-ipc.ts +32 -62
- package/src/__tests__/model-intents.test.ts +15 -2
- package/src/__tests__/nl-approval-parser.test.ts +13 -17
- package/src/__tests__/non-member-access-request.test.ts +14 -6
- package/src/__tests__/notification-guardian-path.test.ts +15 -8
- package/src/__tests__/notification-schedule-notify-dedup.test.ts +2 -1
- package/src/__tests__/notification-telegram-adapter.test.ts +57 -55
- package/src/__tests__/oauth-apps-routes.test.ts +76 -122
- package/src/__tests__/oauth-cli.test.ts +14 -1
- package/src/__tests__/oauth-provider-profiles.test.ts +1 -1
- package/src/__tests__/oauth-provider-visibility.test.ts +3 -1
- package/src/__tests__/oauth-providers-routes.test.ts +78 -101
- package/src/__tests__/oauth-store.test.ts +22 -1
- package/src/__tests__/oauth2-gateway-transport.test.ts +6 -3
- package/src/__tests__/openai-provider.test.ts +105 -6
- package/src/__tests__/openai-responses-provider.test.ts +146 -4
- package/src/__tests__/openrouter-provider-only.test.ts +22 -4
- package/src/__tests__/overflow-reduce-pipeline.test.ts +4 -9
- package/src/__tests__/permission-types.test.ts +3 -18
- package/src/__tests__/persistence-pipeline.test.ts +3 -2
- package/src/__tests__/pipeline-runner.test.ts +1 -1
- package/src/__tests__/platform-bash-auto-approve.test.ts +44 -28
- package/src/__tests__/platform.test.ts +11 -63
- package/src/__tests__/playbook-execution.test.ts +2 -1
- package/src/__tests__/playbook-tools.test.ts +2 -1
- package/src/__tests__/plugin-bootstrap.test.ts +51 -5
- package/src/__tests__/plugin-registry.test.ts +30 -0
- package/src/__tests__/plugin-route-contribution.test.ts +17 -11
- package/src/__tests__/plugin-skill-contribution.test.ts +3 -3
- package/src/__tests__/plugin-tool-contribution.test.ts +10 -4
- package/src/__tests__/plugin-types.test.ts +1 -1
- package/src/__tests__/prechat-onboarding-contract.test.ts +31 -7
- package/src/__tests__/pricing.test.ts +218 -5
- package/src/__tests__/process-message-background-slack.test.ts +331 -0
- package/src/__tests__/profiler-routes.test.ts +112 -177
- package/src/__tests__/provider-managed-proxy-integration.test.ts +153 -17
- package/src/__tests__/provider-send-message-override-profile.test.ts +273 -0
- package/src/__tests__/provider-usage-tracking.test.ts +208 -0
- package/src/__tests__/proxy-approval-callback.test.ts +6 -554
- package/src/__tests__/qdrant-collection-migration.test.ts +7 -7
- package/src/__tests__/reaction-persistence.test.ts +12 -8
- package/src/__tests__/rebind-secrets-screen.test.ts +53 -16
- package/src/__tests__/rebuild-index-graph-nodes.test.ts +1 -1
- package/src/__tests__/recording-handler.test.ts +64 -83
- package/src/__tests__/regenerate-fire-and-forget-trace.test.ts +4 -3
- package/src/__tests__/registry.test.ts +1 -0
- package/src/__tests__/relay-server.test.ts +37 -17
- package/src/__tests__/require-fresh-approval.test.ts +24 -182
- package/src/__tests__/resolve-trust-class.test.ts +2 -1
- package/src/__tests__/retry-thinking-tool-choice.test.ts +19 -7
- package/src/__tests__/retry-verbosity-normalization.test.ts +139 -0
- package/src/__tests__/runtime-attachment-metadata.test.ts +26 -6
- package/src/__tests__/runtime-events-sse-parity.test.ts +15 -17
- package/src/__tests__/runtime-events-sse.test.ts +16 -33
- package/src/__tests__/schedule-routes.test.ts +226 -129
- package/src/__tests__/schedule-store.test.ts +119 -1
- package/src/__tests__/schedule-tools.test.ts +2 -1
- package/src/__tests__/scheduler-recurrence.test.ts +2 -1
- package/src/__tests__/scheduler-reuse-conversation.test.ts +2 -1
- package/src/__tests__/scheduler-wake.test.ts +356 -0
- package/src/__tests__/scoped-approval-grants.test.ts +2 -1
- package/src/__tests__/scoped-grant-security-matrix.test.ts +2 -1
- package/src/__tests__/search-skills-unified.test.ts +9 -15
- package/src/__tests__/secret-ingress-cli.test.ts +2 -5
- package/src/__tests__/secret-ingress-http.test.ts +36 -23
- package/src/__tests__/secret-onetime-send.test.ts +4 -2
- package/src/__tests__/secret-prompt-log-hygiene.test.ts +24 -7
- package/src/__tests__/secret-prompter-channel-fallback.test.ts +42 -47
- package/src/__tests__/secret-response-routing.test.ts +29 -15
- package/src/__tests__/secret-routes-managed-proxy.test.ts +51 -103
- package/src/__tests__/secret-scanner.test.ts +2 -545
- package/src/__tests__/send-endpoint-busy.test.ts +36 -38
- package/src/__tests__/sequence-store.test.ts +2 -1
- package/src/__tests__/server-history-render.test.ts +2 -2
- package/src/__tests__/service-contracts-import-guard.test.ts +185 -0
- package/src/__tests__/set-permission-mode.test.ts +0 -10
- package/src/__tests__/settings-routes.test.ts +36 -69
- package/src/__tests__/shell-credential-ref.test.ts +0 -8
- package/src/__tests__/shell-tool-proxy-mode.test.ts +0 -56
- package/src/__tests__/skill-boundary-guard.test.ts +105 -0
- package/src/__tests__/skill-load-inline-command.test.ts +2 -2
- package/src/__tests__/skill-load-inline-includes.test.ts +2 -2
- package/src/__tests__/skill-runtime-path.test.ts +64 -0
- package/src/__tests__/skill-script-runner-sandbox.test.ts +0 -11
- package/src/__tests__/skill-tool-factory.test.ts +97 -0
- package/src/__tests__/skills-file-content-endpoint.test.ts +9 -32
- package/src/__tests__/skills-files-catalog-fallback.test.ts +11 -17
- package/src/__tests__/slack-inbound-verification.test.ts +12 -64
- package/src/__tests__/slack-messaging-token-resolution.test.ts +1 -3
- package/src/__tests__/slack-reaction-approvals.test.ts +4 -4
- package/src/__tests__/slack-share-routes.test.ts +37 -72
- package/src/__tests__/subagent-call-site-routing.test.ts +79 -0
- package/src/__tests__/subagent-fork-notifications.test.ts +57 -47
- package/src/__tests__/subagent-fork-spawn.test.ts +20 -28
- package/src/__tests__/subagent-manager-notify.test.ts +70 -70
- package/src/__tests__/subagent-notify-parent.test.ts +83 -109
- package/src/__tests__/subagent-role-registry.test.ts +3 -3
- package/src/__tests__/subagent-spawn-tool-fork.test.ts +52 -104
- package/src/__tests__/subagent-tools.test.ts +0 -1
- package/src/__tests__/suggestion-routes.test.ts +55 -62
- package/src/__tests__/system-prompt.test.ts +115 -13
- package/src/__tests__/task-compiler.test.ts +2 -1
- package/src/__tests__/task-management-tools.test.ts +2 -1
- package/src/__tests__/task-memory-cleanup.test.ts +2 -1
- package/src/__tests__/task-scheduler.test.ts +2 -1
- package/src/__tests__/telegram-config.test.ts +0 -1
- package/src/__tests__/terminal-tools.test.ts +3 -401
- package/src/__tests__/test-preload.ts +0 -11
- package/src/__tests__/thread-backfill.test.ts +947 -32
- package/src/__tests__/token-estimate-pipeline.test.ts +68 -15
- package/src/__tests__/tool-approval-handler.test.ts +21 -63
- package/src/__tests__/tool-audit-listener.test.ts +3 -3
- package/src/__tests__/tool-domain-event-publisher.test.ts +3 -39
- package/src/__tests__/tool-error-pipeline.test.ts +6 -6
- package/src/__tests__/tool-execute-pipeline.test.ts +6 -14
- package/src/__tests__/tool-execution-abort-cleanup.test.ts +0 -16
- package/src/__tests__/tool-execution-pipeline.benchmark.test.ts +69 -16
- package/src/__tests__/tool-executor-lifecycle-events.test.ts +31 -62
- package/src/__tests__/tool-executor.test.ts +336 -1654
- package/src/__tests__/tool-grant-request-escalation.test.ts +90 -311
- package/src/__tests__/tool-metrics-listener.test.ts +0 -35
- package/src/__tests__/tool-result-truncate-pipeline.test.ts +1 -1
- package/src/__tests__/tool-side-effects-slack-dm.test.ts +1 -0
- package/src/__tests__/tool-trace-listener.test.ts +0 -17
- package/src/__tests__/transfer-progress-screen.test.ts +63 -26
- package/src/__tests__/trust-context-guards.test.ts +1 -1
- package/src/__tests__/trusted-contact-approval-notifier.test.ts +7 -15
- package/src/__tests__/trusted-contact-inline-approval-integration.test.ts +178 -354
- package/src/__tests__/trusted-contact-lifecycle-notifications.test.ts +5 -151
- package/src/__tests__/trusted-contact-multichannel.test.ts +5 -6
- package/src/__tests__/trusted-contact-verification.test.ts +3 -2
- package/src/__tests__/tts-catalog-parity.test.ts +16 -5
- package/src/__tests__/turn-boundary-resolution.test.ts +2 -1
- package/src/__tests__/twilio-routes.test.ts +25 -66
- package/src/__tests__/usage-attribution.test.ts +247 -0
- package/src/__tests__/usage-cache-backfill-migration.test.ts +3 -7
- package/src/__tests__/usage-cli.test.ts +143 -0
- package/src/__tests__/usage-grouped-buckets.test.ts +155 -0
- package/src/__tests__/usage-routes.test.ts +223 -90
- package/src/__tests__/user-plugin-loader.test.ts +54 -12
- package/src/__tests__/validation-results-screen.test.ts +39 -16
- package/src/__tests__/vbundle-pax-and-symlink.test.ts +12 -3
- package/src/__tests__/vellum-self-knowledge-inline-command.test.ts +51 -139
- package/src/__tests__/verification-control-plane-policy.test.ts +97 -19
- package/src/__tests__/voice-ingress-preflight.test.ts +5 -5
- package/src/__tests__/voice-invite-redemption.test.ts +2 -1
- package/src/__tests__/voice-scoped-grant-consumer.test.ts +3 -3
- package/src/__tests__/voice-session-bridge.test.ts +285 -106
- package/src/__tests__/volume-security-guard.test.ts +0 -2
- package/src/__tests__/workspace-migration-009-backfill-conversation-disk-view.test.ts +2 -1
- package/src/__tests__/workspace-migration-013-repair-conversation-disk-view.test.ts +3 -1
- package/src/__tests__/workspace-migration-028-recover-conversations-from-disk-view.test.ts +2 -1
- package/src/__tests__/workspace-migration-045-release-notes-meet-avatar.test.ts +1 -1
- package/src/__tests__/workspace-migration-052-seed-default-inference-profiles.test.ts +260 -0
- package/src/__tests__/workspace-migration-053-release-notes-acp-codex.test.ts +225 -0
- package/src/__tests__/workspace-migration-054-seed-recall-callsite.test.ts +235 -0
- package/src/__tests__/workspace-migration-055-release-notes-agentic-recall.test.ts +128 -0
- package/src/__tests__/workspace-migration-057-repair-stale-gemini-model-ids.test.ts +232 -0
- package/src/__tests__/workspace-migration-062-drop-memory-v2-edges-json.test.ts +103 -0
- package/src/__tests__/workspace-migration-063-release-notes-dynamic-model-context.test.ts +77 -0
- package/src/__tests__/workspace-migration-064-unwind-main-agent-opus-seed.test.ts +225 -0
- package/src/__tests__/workspace-migration-acp-sessions-ui.test.ts +144 -0
- package/src/__tests__/workspace-migration-drop-user-md.test.ts +1 -1
- package/src/__tests__/workspace-migration-memory-v2-init.test.ts +252 -0
- package/src/acp/__tests__/client-handler.test.ts +64 -0
- package/src/acp/__tests__/helpers/acp-config-stub.ts +62 -0
- package/src/acp/__tests__/helpers/which-stub.ts +45 -0
- package/src/acp/__tests__/session-manager-persistence.test.ts +366 -0
- package/src/acp/__tests__/session-manager-startup.test.ts +159 -0
- package/src/acp/__tests__/session-manager.test.ts +83 -0
- package/src/acp/client-handler.ts +23 -139
- package/src/acp/index.ts +0 -15
- package/src/acp/resolve-agent.test.ts +291 -0
- package/src/acp/resolve-agent.ts +176 -0
- package/src/acp/session-manager.ts +193 -31
- package/src/acp/types.ts +2 -50
- package/src/agent/loop.ts +53 -15
- package/src/agent/message-types.ts +0 -2
- package/src/approvals/AGENTS.md +5 -1
- package/src/approvals/__tests__/guardian-feed-event.test.ts +11 -12
- package/src/approvals/approval-primitive.ts +3 -20
- package/src/approvals/guardian-decision-primitive.ts +37 -68
- package/src/approvals/guardian-request-resolvers.ts +38 -104
- package/src/avatar/character-components.ts +6 -6
- package/src/{config/bundled-skills/settings/tools → avatar}/identity-avatar.ts +1 -1
- package/src/backup/__tests__/backup-worker.test.ts +36 -10
- package/src/backup/__tests__/paths.test.ts +5 -4
- package/src/backup/__tests__/restore.test.ts +45 -28
- package/src/backup/backup-worker.ts +37 -12
- package/src/backup/paths.ts +11 -24
- package/src/backup/restore.ts +7 -11
- package/src/browser/__tests__/operations.test.ts +0 -35
- package/src/browser/operations.ts +1 -47
- package/src/browser-session/events.ts +0 -9
- package/src/bundler/package-resolver.ts +2 -6
- package/src/calls/active-call-lease.ts +1 -1
- package/src/calls/call-constants.ts +1 -1
- package/src/calls/call-controller.ts +1 -5
- package/src/calls/call-domain.ts +14 -14
- package/src/calls/call-pointer-messages.ts +4 -9
- package/src/calls/call-store.ts +2 -34
- package/src/calls/guardian-action-sweep.ts +9 -25
- package/src/calls/guardian-dispatch.ts +1 -20
- package/src/calls/guardian-question-copy.ts +0 -108
- package/src/calls/media-stream-audio-transcode.ts +2 -41
- package/src/calls/media-stream-server.ts +2 -3
- package/src/calls/media-stream-stt-session.ts +1 -3
- package/src/calls/relay-access-wait.ts +5 -8
- package/src/calls/relay-server.ts +15 -42
- package/src/calls/relay-setup-router.ts +2 -2
- package/src/calls/relay-verification.ts +4 -4
- package/src/calls/twilio-rest.ts +1 -39
- package/src/calls/twilio-routes.ts +160 -78
- package/src/calls/voice-control-protocol.ts +10 -10
- package/src/calls/voice-ingress-preflight.ts +2 -2
- package/src/calls/voice-session-bridge.ts +141 -77
- package/src/channels/__tests__/types.test.ts +25 -3
- package/src/channels/permission-profiles.ts +2 -72
- package/src/channels/types.ts +25 -44
- package/src/cli/AGENTS.md +1 -0
- package/src/cli/__tests__/notifications.test.ts +12 -10
- package/src/cli/commands/__tests__/attachment.test.ts +14 -8
- package/src/cli/commands/__tests__/backup.test.ts +3 -14
- package/src/cli/commands/__tests__/browser.test.ts +36 -31
- package/src/cli/commands/__tests__/cache.test.ts +175 -23
- package/src/cli/commands/__tests__/memory-v2.test.ts +382 -0
- package/src/cli/commands/__tests__/task.test.ts +36 -35
- package/src/cli/commands/__tests__/trust.test.ts +236 -0
- package/src/cli/commands/__tests__/ui-confirm.test.ts +14 -14
- package/src/cli/commands/__tests__/ui.test.ts +17 -17
- package/src/cli/commands/__tests__/watchers.test.ts +29 -29
- package/src/cli/commands/__tests__/webhooks.test.ts +544 -0
- package/src/cli/commands/attachment.ts +12 -8
- package/src/cli/commands/auth.ts +1 -1
- package/src/cli/commands/avatar.ts +192 -9
- package/src/cli/commands/backup.ts +18 -48
- package/src/cli/commands/browser.ts +52 -4
- package/src/cli/commands/cache-fs.ts +8 -0
- package/src/cli/commands/cache.ts +157 -84
- package/src/cli/commands/channel-verification-sessions.ts +6 -6
- package/src/cli/commands/clients.ts +74 -17
- package/src/cli/commands/completions.ts +3 -3
- package/src/cli/commands/contacts.ts +241 -86
- package/src/cli/commands/conversations-defer.ts +364 -0
- package/src/cli/commands/conversations-import.ts +2 -3
- package/src/cli/commands/conversations.ts +63 -53
- package/src/cli/commands/credential-execution.ts +1 -1
- package/src/cli/commands/credentials.ts +139 -5
- package/src/cli/commands/default-action.ts +1 -1
- package/src/cli/commands/domain.ts +2 -2
- package/src/cli/commands/email.ts +7 -7
- package/src/cli/commands/image-generation.ts +1 -1
- package/src/cli/commands/keys.ts +5 -2
- package/src/cli/commands/mcp.ts +1 -1
- package/src/cli/commands/memory-v2.ts +315 -0
- package/src/cli/commands/memory.ts +8 -8
- package/src/cli/commands/notifications.ts +21 -20
- package/src/cli/commands/oauth/__tests__/connect.test.ts +23 -5
- package/src/cli/commands/oauth/__tests__/disconnect.test.ts +1 -1
- package/src/cli/commands/oauth/__tests__/mode.test.ts +1 -1
- package/src/cli/commands/oauth/__tests__/status.test.ts +1 -1
- package/src/cli/commands/oauth/__tests__/token.test.ts +1 -1
- package/src/cli/commands/oauth/connect.ts +2 -2
- package/src/cli/commands/pending.ts +102 -0
- package/src/cli/commands/platform/__tests__/callback-routes-list.test.ts +0 -6
- package/src/cli/commands/platform/__tests__/connect.test.ts +23 -11
- package/src/cli/commands/platform/__tests__/disconnect.test.ts +22 -10
- package/src/cli/commands/platform/__tests__/status.test.ts +22 -10
- package/src/cli/commands/platform/connect.ts +3 -3
- package/src/cli/commands/platform/disconnect.ts +4 -6
- package/src/cli/commands/platform/index.ts +12 -10
- package/src/cli/commands/routes.ts +7 -1
- package/src/cli/commands/sequence.ts +7 -7
- package/src/cli/commands/skills.ts +264 -116
- package/src/cli/commands/task.ts +12 -10
- package/src/cli/commands/trust.ts +105 -167
- package/src/cli/commands/ui.ts +3 -3
- package/src/cli/commands/usage.ts +29 -15
- package/src/cli/commands/watchers.ts +8 -8
- package/src/cli/commands/webhooks.ts +270 -0
- package/src/cli/lib/daemon-avatar-client.ts +37 -0
- package/src/cli/lib/daemon-credential-client.ts +41 -189
- package/src/cli/lib/ipc-params.ts +22 -0
- package/src/cli/program.ts +6 -0
- package/src/cli.ts +1 -82
- package/src/config/__tests__/feature-flag-registry-guard.test.ts +2 -2
- package/src/config/acp-defaults.test.ts +57 -0
- package/src/config/acp-defaults.ts +40 -0
- package/src/config/acp-schema.ts +1 -1
- package/src/config/assistant-feature-flags.ts +18 -142
- package/src/config/bundled-skills/acp/SKILL.md +44 -16
- package/src/config/bundled-skills/acp/TOOLS.json +45 -1
- package/src/config/bundled-skills/acp/tools/acp-list-agents.ts +12 -0
- package/src/config/bundled-skills/acp/tools/acp-steer.ts +12 -0
- package/src/config/bundled-skills/contacts/tools/contact-merge.ts +14 -14
- package/src/config/bundled-skills/contacts/tools/contact-search.ts +1 -4
- package/src/config/bundled-skills/contacts/tools/contact-upsert.ts +11 -6
- package/src/config/bundled-skills/media-processing/__tests__/cost-tracker.test.ts +6 -6
- package/src/config/bundled-skills/media-processing/services/reduce.ts +0 -13
- package/src/config/bundled-skills/messaging/TOOLS.json +14 -4
- package/src/config/bundled-skills/messaging/tools/gmail-mime-helpers.ts +1 -1
- package/src/config/bundled-skills/messaging/tools/messaging-analyze-style.ts +1 -1
- package/src/config/bundled-skills/playbooks/tools/playbook-create.ts +1 -1
- package/src/config/bundled-skills/playbooks/tools/playbook-list.ts +1 -1
- package/src/config/bundled-skills/playbooks/tools/playbook-update.ts +1 -1
- package/src/config/bundled-skills/settings/SKILL.md +2 -17
- package/src/config/bundled-skills/settings/TOOLS.json +0 -56
- package/src/config/bundled-skills/subagent/SKILL.md +2 -0
- package/src/config/bundled-tool-registry.ts +4 -6
- package/src/config/env-registry.ts +12 -2
- package/src/config/env.ts +10 -22
- package/src/config/feature-flag-registry.json +38 -46
- package/src/config/llm-callsite-catalog.ts +12 -0
- package/src/config/llm-context-resolution.ts +80 -0
- package/src/config/llm-resolver.ts +90 -36
- package/src/config/loader.ts +9 -12
- package/src/config/schema.ts +5 -228
- package/src/config/schemas/__tests__/filing.test.ts +58 -0
- package/src/config/schemas/__tests__/memory-v2.test.ts +187 -0
- package/src/config/schemas/call-site-catalog.ts +271 -0
- package/src/config/schemas/calls.ts +5 -5
- package/src/config/schemas/filing.ts +12 -0
- package/src/config/schemas/host-browser.ts +2 -2
- package/src/config/schemas/inference.ts +1 -3
- package/src/config/schemas/ingress.ts +2 -2
- package/src/config/schemas/llm.ts +82 -12
- package/src/config/schemas/memory-retrieval.ts +2 -2
- package/src/config/schemas/memory-storage.ts +1 -1
- package/src/config/schemas/memory-v2.ts +185 -0
- package/src/config/schemas/memory.ts +2 -0
- package/src/config/schemas/security.ts +1 -102
- package/src/config/schemas/services.ts +52 -13
- package/src/config/schemas/skills.ts +5 -5
- package/src/config/schemas/tts.ts +1 -1
- package/src/config/seed-inference-profiles.ts +117 -0
- package/src/config/skills.ts +1 -91
- package/src/config/types.ts +3 -47
- package/src/contacts/contact-store.ts +2 -19
- package/src/contacts/contacts-write.ts +1 -143
- package/src/contacts/types.ts +8 -10
- package/src/context/token-estimator.ts +1 -1
- package/src/context/tool-result-truncation.ts +1 -1
- package/src/context/window-manager.ts +45 -6
- package/src/credential-execution/approval-bridge.ts +7 -69
- package/src/credential-execution/client.ts +17 -422
- package/src/credential-execution/feature-gates.ts +1 -2
- package/src/credential-execution/managed-catalog.ts +1 -1
- package/src/credential-execution/process-manager.ts +34 -10
- package/src/credential-health/credential-health-service.ts +22 -17
- package/src/daemon/__tests__/conversation-feed-event.test.ts +0 -13
- package/src/daemon/__tests__/conversation-surfaces-launch.test.ts +76 -83
- package/src/daemon/__tests__/daemon-skill-host.test.ts +265 -0
- package/src/daemon/__tests__/meet-host-supervisor.test.ts +587 -0
- package/src/daemon/__tests__/meet-manifest-loader.test.ts +463 -0
- package/src/daemon/approval-generators.ts +2 -14
- package/src/daemon/classifier.ts +0 -106
- package/src/daemon/config-watcher.ts +14 -54
- package/src/daemon/connection-policy.ts +1 -40
- package/src/daemon/conversation-agent-loop-handlers.ts +89 -9
- package/src/daemon/conversation-agent-loop.ts +440 -88
- package/src/daemon/conversation-attachments.ts +5 -81
- package/src/daemon/conversation-error.ts +9 -5
- package/src/daemon/conversation-history.ts +9 -9
- package/src/daemon/conversation-launch.ts +21 -136
- package/src/daemon/conversation-lifecycle.ts +1 -1
- package/src/daemon/conversation-messaging.ts +2 -1
- package/src/daemon/conversation-notifiers.ts +1 -1
- package/src/daemon/conversation-process.ts +90 -174
- package/src/daemon/conversation-runtime-assembly.ts +245 -164
- package/src/daemon/conversation-slash.ts +50 -164
- package/src/daemon/conversation-store.ts +344 -0
- package/src/daemon/conversation-surfaces.ts +27 -32
- package/src/daemon/conversation-tool-setup.ts +23 -202
- package/src/daemon/conversation-usage.ts +36 -0
- package/src/daemon/conversation.ts +129 -381
- package/src/daemon/daemon-control.ts +4 -72
- package/src/daemon/daemon-skill-host.ts +259 -0
- package/src/daemon/dictation-profile-store.ts +2 -26
- package/src/daemon/external-plugins-bootstrap.ts +67 -13
- package/src/daemon/first-greeting.ts +44 -156
- package/src/daemon/handlers/config-channels.ts +14 -14
- package/src/daemon/handlers/config-embeddings.ts +1 -1
- package/src/daemon/handlers/config-ingress.ts +27 -166
- package/src/daemon/handlers/config-model.test.ts +17 -0
- package/src/daemon/handlers/config-model.ts +8 -53
- package/src/daemon/handlers/config-telegram.ts +6 -53
- package/src/daemon/handlers/config-voice.ts +0 -42
- package/src/daemon/handlers/conversations.ts +32 -345
- package/src/daemon/handlers/recording.ts +27 -159
- package/src/daemon/handlers/shared.ts +50 -99
- package/src/daemon/handlers/skills.ts +55 -114
- package/src/daemon/host-bash-proxy.ts +67 -45
- package/src/daemon/host-browser-proxy.ts +65 -27
- package/src/daemon/host-cu-proxy.ts +40 -39
- package/src/daemon/host-file-proxy.ts +58 -37
- package/src/daemon/host-transfer-proxy.ts +538 -0
- package/src/daemon/lifecycle.ts +71 -272
- package/src/daemon/meet-host-startup.ts +51 -0
- package/src/daemon/meet-host-supervisor.ts +781 -0
- package/src/daemon/meet-manifest-loader.ts +410 -0
- package/src/daemon/memory-v2-startup.ts +35 -0
- package/src/daemon/message-protocol.ts +4 -7
- package/src/daemon/message-types/acp.ts +1 -0
- package/src/daemon/message-types/conversations.ts +23 -2
- package/src/daemon/message-types/host-bash.ts +1 -0
- package/src/daemon/message-types/host-cu.ts +1 -0
- package/src/daemon/message-types/host-file.ts +1 -0
- package/src/daemon/message-types/host-transfer.ts +42 -0
- package/src/daemon/message-types/integrations.ts +6 -0
- package/src/daemon/message-types/messages.ts +24 -23
- package/src/daemon/message-types/schedules.ts +1 -0
- package/src/daemon/message-types/settings.ts +0 -6
- package/src/daemon/message-types/shared.ts +5 -2
- package/src/daemon/message-types/subagents.ts +2 -1
- package/src/daemon/message-types/workspace.ts +1 -3
- package/src/daemon/pkb-reminder-builder.test.ts +13 -12
- package/src/daemon/pkb-reminder-builder.ts +8 -16
- package/src/daemon/process-message.ts +479 -0
- package/src/daemon/providers-setup.ts +14 -6
- package/src/daemon/server.ts +58 -1702
- package/src/daemon/shutdown-handlers.ts +3 -3
- package/src/daemon/startup-error.ts +1 -1
- package/src/daemon/tool-side-effects.ts +125 -107
- package/src/daemon/trust-context.ts +45 -0
- package/src/daemon/wake-target-adapter.ts +218 -0
- package/src/email/feature-gate.ts +1 -1
- package/src/events/domain-events.ts +1 -16
- package/src/events/tool-audit-listener.ts +5 -9
- package/src/events/tool-domain-event-publisher.ts +0 -10
- package/src/events/tool-metrics-listener.ts +1 -21
- package/src/events/tool-trace-listener.ts +0 -14
- package/src/filing/filing-service.ts +207 -55
- package/src/followups/followup-store.ts +3 -71
- package/src/heartbeat/__tests__/heartbeat-feed-event.test.ts +93 -21
- package/src/heartbeat/heartbeat-service.ts +55 -16
- package/src/home/__tests__/feed-writer.test.ts +0 -4
- package/src/home/__tests__/phase5-exit-criteria.test.ts +18 -1
- package/src/home/__tests__/relationship-state-writer.test.ts +30 -0
- package/src/home/__tests__/rollup-producer.test.ts +67 -2
- package/src/home/assistant-feed-authoring.ts +8 -1
- package/src/home/feed-types.ts +1 -1
- package/src/home/feed-writer.ts +1 -2
- package/src/home/relationship-state-writer.ts +17 -4
- package/src/home/rewrite-feed-title.ts +58 -0
- package/src/home/rollup-producer.ts +16 -3
- package/src/inbound/platform-callback-registration.ts +1 -17
- package/src/ipc/__tests__/attachment-ipc.test.ts +128 -66
- package/src/ipc/__tests__/browser-ipc.test.ts +72 -58
- package/src/ipc/__tests__/cache-ipc.test.ts +52 -107
- package/src/ipc/__tests__/cli-ipc.test.ts +9 -6
- package/src/ipc/__tests__/skill-server-bidirectional.test.ts +253 -0
- package/src/ipc/__tests__/skill-server.test.ts +182 -0
- package/src/ipc/__tests__/socket-path.test.ts +69 -23
- package/src/ipc/__tests__/ui-request-route.test.ts +241 -216
- package/src/ipc/__tests__/watcher-ipc.test.ts +33 -33
- package/src/ipc/assistant-server.ts +443 -0
- package/src/ipc/cli-client.ts +3 -3
- package/src/ipc/gateway-client.test.ts +131 -0
- package/src/ipc/gateway-client.ts +98 -123
- package/src/ipc/ipc-framing.ts +281 -0
- package/src/ipc/routes/__tests__/memory-v2-backfill.test.ts +171 -0
- package/src/ipc/routes/db-proxy.ts +73 -0
- package/src/ipc/routes/route-adapter.ts +32 -0
- package/src/ipc/routes/trust-rules.test.ts +123 -0
- package/src/ipc/skill-ipc-types.ts +54 -0
- package/src/ipc/skill-routes/__tests__/config.test.ts +146 -0
- package/src/ipc/skill-routes/__tests__/events-ipc.test.ts +388 -0
- package/src/ipc/skill-routes/__tests__/identity.test.ts +62 -0
- package/src/ipc/skill-routes/__tests__/log.test.ts +133 -0
- package/src/ipc/skill-routes/__tests__/memory.test.ts +178 -0
- package/src/ipc/skill-routes/__tests__/platform.test.ts +111 -0
- package/src/ipc/skill-routes/__tests__/providers.test.ts +265 -0
- package/src/ipc/skill-routes/__tests__/registries.test.ts +361 -0
- package/src/ipc/skill-routes/config.ts +47 -0
- package/src/ipc/skill-routes/events.ts +120 -0
- package/src/ipc/skill-routes/identity.ts +21 -0
- package/src/ipc/skill-routes/index.ts +37 -0
- package/src/ipc/skill-routes/log.ts +40 -0
- package/src/ipc/skill-routes/memory.ts +76 -0
- package/src/ipc/skill-routes/platform.ts +39 -0
- package/src/ipc/skill-routes/providers.ts +163 -0
- package/src/ipc/skill-routes/registries.ts +393 -0
- package/src/ipc/skill-server.ts +738 -0
- package/src/ipc/skill-socket-path.ts +20 -0
- package/src/ipc/socket-cleanup.ts +92 -0
- package/src/ipc/socket-path.ts +63 -32
- package/src/live-voice/__tests__/live-voice-agent-turn.test.ts +374 -0
- package/src/live-voice/__tests__/live-voice-archive.test.ts +525 -0
- package/src/live-voice/__tests__/live-voice-events.test.ts +473 -0
- package/src/live-voice/__tests__/live-voice-integration.test.ts +359 -0
- package/src/live-voice/__tests__/live-voice-metrics.test.ts +179 -0
- package/src/live-voice/__tests__/live-voice-session-manager.test.ts +349 -0
- package/src/live-voice/__tests__/live-voice-stt.test.ts +244 -0
- package/src/live-voice/__tests__/live-voice-tts-session.test.ts +337 -0
- package/src/live-voice/__tests__/live-voice-tts.test.ts +337 -0
- package/src/live-voice/__tests__/protocol.test.ts +295 -0
- package/src/live-voice/__tests__/runtime-websocket-shell.test.ts +413 -0
- package/src/live-voice/live-voice-archive.ts +758 -0
- package/src/live-voice/live-voice-metrics.ts +472 -0
- package/src/live-voice/live-voice-session-manager.ts +222 -0
- package/src/live-voice/live-voice-session.ts +1144 -0
- package/src/live-voice/live-voice-tts.ts +260 -0
- package/src/live-voice/protocol.ts +515 -0
- package/src/mcp/client.ts +2 -2
- package/src/mcp/manager.ts +0 -5
- package/src/media/types.ts +4 -4
- package/src/memory/__tests__/auto-analysis-enqueue.test.ts +4 -28
- package/src/memory/__tests__/auto-analysis-guard.test.ts +2 -2
- package/src/memory/__tests__/conversation-analyze-job.test.ts +7 -62
- package/src/memory/__tests__/conversation-group-migration.test.ts +2 -2
- package/src/memory/__tests__/find-analysis-conversation.test.ts +2 -1
- package/src/memory/__tests__/fixtures/memory-v2-activation-fixtures.ts +55 -0
- package/src/memory/__tests__/jobs-worker-v2-schedule.test.ts +235 -0
- package/src/memory/__tests__/memory-v2-activation-log-store.test.ts +127 -0
- package/src/memory/admin.ts +65 -7
- package/src/memory/app-git-service.ts +0 -46
- package/src/memory/app-store.ts +154 -0
- package/src/memory/attachments-store.ts +20 -16
- package/src/memory/auto-analysis-enqueue.ts +2 -17
- package/src/memory/canonical-guardian-store.ts +2 -1
- package/src/memory/channel-verification-sessions.ts +1 -1
- package/src/memory/checkpoints.ts +1 -1
- package/src/memory/context-search/agent-protocol.ts +424 -0
- package/src/memory/context-search/agent-runner.ts +1295 -0
- package/src/memory/context-search/format.ts +160 -0
- package/src/memory/context-search/limits.ts +106 -0
- package/src/memory/context-search/search.ts +387 -0
- package/src/memory/context-search/sources/conversations.ts +278 -0
- package/src/memory/context-search/sources/memory-v2.ts +578 -0
- package/src/memory/context-search/sources/memory.ts +95 -0
- package/src/memory/context-search/sources/pkb.ts +477 -0
- package/src/memory/context-search/sources/workspace.ts +1256 -0
- package/src/memory/context-search/types.ts +49 -0
- package/src/memory/conversation-analyze-job.ts +3 -24
- package/src/memory/conversation-attention-store.ts +1 -1
- package/src/memory/conversation-bootstrap.ts +1 -1
- package/src/memory/conversation-crud.ts +86 -119
- package/src/memory/conversation-directories.ts +1 -11
- package/src/memory/conversation-disk-view.ts +1 -5
- package/src/memory/conversation-display-order-migration.ts +11 -2
- package/src/memory/conversation-group-migration.ts +20 -4
- package/src/memory/conversation-key-store.ts +3 -4
- package/src/memory/conversation-queries.ts +13 -26
- package/src/memory/conversation-starter-checkpoints.ts +63 -0
- package/src/memory/conversation-starter-validation.ts +88 -0
- package/src/memory/conversation-starters-cadence.ts +1 -1
- package/src/memory/conversation-title-service.ts +2 -1
- package/src/memory/db-connection.ts +62 -0
- package/src/memory/db-init.ts +28 -4
- package/src/memory/db-maintenance.ts +1 -1
- package/src/memory/delivery-channels.ts +1 -14
- package/src/memory/delivery-crud.ts +2 -32
- package/src/memory/delivery-status.ts +1 -1
- package/src/memory/embedding-backend.ts +3 -21
- package/src/memory/embedding-gemini.test.ts +4 -4
- package/src/memory/embedding-gemini.ts +0 -2
- package/src/memory/embedding-local.ts +6 -6
- package/src/memory/embedding-ollama.ts +6 -6
- package/src/memory/embedding-openai.ts +6 -6
- package/src/memory/embedding-types.ts +21 -0
- package/src/memory/external-conversation-store.ts +1 -1
- package/src/memory/graph/__tests__/conversation-graph-memory-v2-routing.test.ts +408 -0
- package/src/memory/graph/__tests__/handle-remember-v2.test.ts +225 -0
- package/src/memory/graph/bootstrap.test.ts +2 -7
- package/src/memory/graph/bootstrap.ts +2 -1
- package/src/memory/graph/capability-seed.ts +3 -3
- package/src/memory/graph/compaction.ts +1 -1
- package/src/memory/graph/consolidation.ts +13 -10
- package/src/memory/graph/conversation-graph-memory.ts +184 -12
- package/src/memory/graph/decay.ts +1 -1
- package/src/memory/graph/extraction.ts +53 -21
- package/src/memory/graph/graph-memory-state-store.ts +1 -1
- package/src/memory/graph/graph-search.test.ts +94 -2
- package/src/memory/graph/graph-search.ts +22 -7
- package/src/memory/graph/image-ref-utils.ts +1 -1
- package/src/memory/graph/injection.test.ts +2 -2
- package/src/memory/graph/injection.ts +1 -1
- package/src/memory/graph/retriever.test.ts +158 -4
- package/src/memory/graph/retriever.ts +17 -5
- package/src/memory/graph/store.test.ts +2 -1
- package/src/memory/graph/store.ts +1 -1
- package/src/memory/graph/tool-handlers.ts +73 -247
- package/src/memory/graph/tools.ts +35 -53
- package/src/memory/group-crud.ts +1 -2
- package/src/memory/guardian-action-store.ts +2 -84
- package/src/memory/guardian-approvals.ts +1 -49
- package/src/memory/guardian-rate-limits.ts +1 -1
- package/src/memory/indexer.ts +44 -32
- package/src/memory/invite-store.ts +1 -1
- package/src/memory/job-handlers/backfill.ts +1 -1
- package/src/memory/job-handlers/cleanup.ts +2 -1
- package/src/memory/job-handlers/conversation-starters.ts +54 -63
- package/src/memory/job-handlers/embedding.test.ts +2 -1
- package/src/memory/job-handlers/embedding.ts +1 -1
- package/src/memory/job-handlers/index-maintenance.ts +1 -1
- package/src/memory/job-handlers/summarization.ts +3 -3
- package/src/memory/job-utils.ts +3 -9
- package/src/memory/jobs/__tests__/embed-concept-page.test.ts +362 -0
- package/src/memory/jobs/embed-concept-page.ts +210 -0
- package/src/memory/jobs/embed-pkb-file.test.ts +2 -1
- package/src/memory/jobs-store.ts +9 -2
- package/src/memory/jobs-worker.ts +56 -17
- package/src/memory/lifecycle-events-store.ts +1 -1
- package/src/memory/llm-request-log-store.ts +1 -42
- package/src/memory/llm-usage-store.ts +130 -44
- package/src/memory/media-store.ts +1 -1
- package/src/memory/memory-recall-log-store.ts +1 -1
- package/src/memory/memory-v2-activation-log-store.ts +115 -0
- package/src/memory/migrations/038-actor-token-records.ts +3 -0
- package/src/memory/migrations/039-actor-refresh-token-records.ts +3 -0
- package/src/memory/migrations/226-schedule-wake-conversation-id.ts +11 -0
- package/src/memory/migrations/227-add-conversation-inference-profile.ts +18 -0
- package/src/memory/migrations/228-rename-inference-profile-snake-case.ts +27 -0
- package/src/memory/migrations/229-delete-private-conversations.test.ts +1087 -0
- package/src/memory/migrations/229-delete-private-conversations.ts +210 -0
- package/src/memory/migrations/230-acp-session-history.ts +41 -0
- package/src/memory/migrations/231-repair-memory-graph-event-dates.ts +128 -0
- package/src/memory/migrations/232-activation-state.ts +38 -0
- package/src/memory/migrations/233-document-conversations.ts +54 -0
- package/src/memory/migrations/234-memory-v2-activation-logs.ts +55 -0
- package/src/memory/migrations/235-llm-usage-attribution.ts +31 -0
- package/src/memory/migrations/235-slack-compaction-watermark.ts +44 -0
- package/src/memory/migrations/236-tool-invocations-matched-rule-id.ts +26 -0
- package/src/memory/migrations/__tests__/234-memory-v2-activation-logs.test.ts +182 -0
- package/src/memory/migrations/index.ts +24 -0
- package/src/memory/migrations/registry.ts +31 -0
- package/src/memory/pkb/pkb-index.test.ts +4 -5
- package/src/memory/pkb/pkb-reconcile.test.ts +4 -5
- package/src/memory/pkb/pkb-search.test.ts +83 -3
- package/src/memory/pkb/pkb-search.ts +27 -14
- package/src/memory/published-pages-store.ts +1 -1
- package/src/memory/raw-query.ts +2 -68
- package/src/memory/schema/acp.ts +30 -0
- package/src/memory/schema/conversations.ts +8 -1
- package/src/memory/schema/index.ts +1 -0
- package/src/memory/schema/infrastructure.ts +26 -32
- package/src/memory/schema/memory-graph.ts +36 -14
- package/src/memory/scoped-approval-grants.ts +2 -1
- package/src/memory/search/semantic.ts +7 -18
- package/src/memory/shared-app-links-store.ts +2 -1
- package/src/memory/tool-usage-store.ts +3 -1
- package/src/memory/trace-event-store.ts +2 -1
- package/src/memory/turn-events-store.ts +1 -1
- package/src/memory/usage-buckets.ts +40 -1
- package/src/memory/usage-grouped-buckets.ts +127 -0
- package/src/memory/v2/__tests__/activation-store.test.ts +202 -0
- package/src/memory/v2/__tests__/activation.test.ts +1155 -0
- package/src/memory/v2/__tests__/backfill-jobs.test.ts +483 -0
- package/src/memory/v2/__tests__/consolidation-job.test.ts +412 -0
- package/src/memory/v2/__tests__/edge-index.test.ts +278 -0
- package/src/memory/v2/__tests__/injection.test.ts +1161 -0
- package/src/memory/v2/__tests__/migration.test.ts +840 -0
- package/src/memory/v2/__tests__/page-store.test.ts +517 -0
- package/src/memory/v2/__tests__/prompts-consolidation.test.ts +181 -0
- package/src/memory/v2/__tests__/qdrant.test.ts +438 -0
- package/src/memory/v2/__tests__/sim.test.ts +549 -0
- package/src/memory/v2/__tests__/skill-content.test.ts +85 -0
- package/src/memory/v2/__tests__/skill-qdrant.test.ts +657 -0
- package/src/memory/v2/__tests__/skill-store.test.ts +463 -0
- package/src/memory/v2/__tests__/static-context.test.ts +153 -0
- package/src/memory/v2/__tests__/sweep-job.test.ts +441 -0
- package/src/memory/v2/activation-store.ts +109 -0
- package/src/memory/v2/activation.ts +561 -0
- package/src/memory/v2/backfill-jobs.ts +357 -0
- package/src/memory/v2/consolidation-job.ts +306 -0
- package/src/memory/v2/edge-index.ts +191 -0
- package/src/memory/v2/injection.ts +431 -0
- package/src/memory/v2/migration.ts +647 -0
- package/src/memory/v2/now-text.ts +37 -0
- package/src/memory/v2/page-store.ts +382 -0
- package/src/memory/v2/prompts/consolidation.ts +261 -0
- package/src/memory/v2/prompts/sweep.ts +56 -0
- package/src/memory/v2/qdrant.ts +342 -0
- package/src/memory/v2/sim.ts +206 -0
- package/src/memory/v2/skill-content.ts +42 -0
- package/src/memory/v2/skill-qdrant.ts +395 -0
- package/src/memory/v2/skill-store.ts +176 -0
- package/src/memory/v2/static-context.ts +62 -0
- package/src/memory/v2/sweep-job.ts +298 -0
- package/src/memory/v2/types.ts +106 -0
- package/src/memory/validation.ts +0 -11
- package/src/messaging/draft-store.ts +0 -6
- package/src/messaging/provider-types.ts +8 -0
- package/src/messaging/provider.ts +7 -0
- package/src/messaging/providers/gmail/client.ts +1 -121
- package/src/messaging/providers/index.ts +262 -0
- package/src/messaging/providers/outlook/client.ts +0 -73
- package/src/messaging/providers/slack/__tests__/adapter-mention-rendering.test.ts +226 -0
- package/src/messaging/providers/slack/adapter.ts +122 -21
- package/src/messaging/providers/slack/api.ts +242 -0
- package/src/messaging/providers/slack/backfill.test.ts +95 -6
- package/src/messaging/providers/slack/backfill.ts +89 -11
- package/src/messaging/providers/slack/client.ts +10 -124
- package/src/messaging/providers/slack/message-metadata.ts +13 -3
- package/src/messaging/providers/slack/render-transcript.test.ts +56 -0
- package/src/messaging/providers/slack/render-transcript.ts +126 -25
- package/src/messaging/providers/slack/send.ts +383 -0
- package/src/messaging/providers/slack/types.ts +1 -0
- package/src/messaging/providers/telegram-bot/adapter.ts +4 -42
- package/src/messaging/providers/telegram-bot/api.ts +253 -0
- package/src/messaging/providers/telegram-bot/client.ts +17 -58
- package/src/messaging/providers/telegram-bot/send.ts +232 -0
- package/src/messaging/providers/whatsapp/adapter.ts +4 -36
- package/src/messaging/providers/whatsapp/api.ts +319 -0
- package/src/messaging/providers/whatsapp/client.ts +4 -48
- package/src/messaging/providers/whatsapp/send.ts +209 -0
- package/src/notifications/adapters/slack.ts +5 -23
- package/src/notifications/adapters/telegram.ts +8 -29
- package/src/notifications/conversation-candidates.ts +1 -1
- package/src/notifications/conversation-seed-composer.ts +12 -6
- package/src/notifications/copy-composer.ts +1 -1
- package/src/notifications/decision-engine.ts +1 -1
- package/src/notifications/decisions-store.ts +1 -1
- package/src/notifications/deliveries-store.ts +2 -1
- package/src/notifications/deterministic-checks.ts +1 -1
- package/src/notifications/events-store.ts +1 -13
- package/src/notifications/preferences-store.ts +1 -1
- package/src/notifications/signal.ts +0 -9
- package/src/oauth/connection-resolver.test.ts +8 -0
- package/src/oauth/connection-resolver.ts +6 -5
- package/src/oauth/credential-token-resolver.ts +97 -0
- package/src/oauth/manual-token-connection.ts +30 -34
- package/src/oauth/oauth-store.ts +8 -5
- package/src/outbound-proxy/certs.ts +0 -7
- package/src/outbound-proxy/config.ts +0 -74
- package/src/outbound-proxy/health.ts +0 -44
- package/src/outbound-proxy/index.ts +0 -23
- package/src/permissions/approval-policy.test.ts +149 -132
- package/src/permissions/approval-policy.ts +65 -91
- package/src/permissions/approval-provenance.test.ts +184 -0
- package/src/permissions/approval-provenance.ts +70 -0
- package/src/permissions/checker.test.ts +632 -0
- package/src/permissions/checker.ts +270 -460
- package/src/permissions/gateway-threshold-reader.ts +31 -47
- package/src/permissions/ipc-risk-types.ts +95 -0
- package/src/permissions/prompter.ts +13 -11
- package/src/permissions/risk-types.ts +24 -210
- package/src/permissions/secret-prompter.ts +21 -48
- package/src/permissions/types.ts +49 -46
- package/src/permissions/workspace-policy.ts +1 -8
- package/src/platform/sync-identity.ts +0 -8
- package/src/playbooks/playbook-compiler.ts +1 -1
- package/src/plugins/defaults/index.ts +1 -1
- package/src/plugins/defaults/injectors.ts +87 -23
- package/src/plugins/defaults/llm-call.ts +6 -9
- package/src/plugins/defaults/memory-retrieval.ts +1 -6
- package/src/plugins/defaults/overflow-reduce.ts +12 -7
- package/src/plugins/defaults/token-estimate.ts +2 -3
- package/src/plugins/registry.ts +61 -1
- package/src/plugins/types.ts +14 -7
- package/src/plugins/user-loader.ts +36 -10
- package/src/prompts/persona-resolver.ts +2 -4
- package/src/prompts/system-prompt.ts +34 -31
- package/src/prompts/templates/BOOTSTRAP.md +52 -6
- package/src/prompts/templates/SOUL.md +3 -1
- package/src/prompts/update-bulletin-job.ts +2 -0
- package/src/providers/__tests__/provider-env-vars.test.ts +0 -21
- package/src/providers/__tests__/retry-callsite.test.ts +141 -7
- package/src/providers/anthropic/client.ts +143 -52
- package/src/providers/call-site-routing.ts +49 -6
- package/src/providers/fireworks/client.ts +3 -0
- package/src/providers/gemini/client.ts +113 -23
- package/src/providers/managed-proxy/context.ts +0 -17
- package/src/providers/model-catalog.ts +188 -27
- package/src/providers/model-intents.ts +7 -8
- package/src/providers/openai/chat-completions-provider.ts +43 -7
- package/src/providers/openai/responses-provider.ts +46 -5
- package/src/providers/openrouter/client.ts +4 -5
- package/src/providers/provider-env-vars.ts +4 -12
- package/src/providers/provider-send-message.ts +61 -13
- package/src/providers/ratelimit.ts +7 -2
- package/src/providers/registry.ts +15 -10
- package/src/providers/retry.ts +148 -31
- package/src/providers/speech-to-text/openai-whisper-stream.ts +1 -1
- package/src/providers/speech-to-text/openai-whisper.ts +3 -6
- package/src/providers/speech-to-text/provider-catalog.ts +75 -0
- package/src/providers/speech-to-text/xai.ts +5 -5
- package/src/providers/thinking-config.ts +34 -0
- package/src/providers/types.ts +35 -10
- package/src/providers/usage-tracking.ts +96 -0
- package/src/runtime/AGENTS.md +16 -11
- package/src/runtime/__tests__/agent-wake.test.ts +122 -9
- package/src/runtime/__tests__/interactive-ui.test.ts +157 -246
- package/src/runtime/access-request-helper.ts +9 -20
- package/src/runtime/actor-trust-resolver.ts +2 -2
- package/src/runtime/agent-wake.ts +211 -68
- package/src/runtime/approval-conversation-turn.ts +2 -15
- package/src/runtime/approval-message-composer.ts +11 -60
- package/src/runtime/assistant-event-hub.ts +541 -45
- package/src/runtime/assistant-event.ts +16 -69
- package/src/runtime/auth/__tests__/guard-tests.test.ts +6 -30
- package/src/runtime/auth/__tests__/middleware.test.ts +10 -10
- package/src/runtime/auth/__tests__/route-policy.test.ts +0 -8
- package/src/runtime/auth/middleware.ts +5 -5
- package/src/runtime/auth/route-policy.ts +205 -12
- package/src/runtime/auth/token-service.ts +1 -111
- package/src/runtime/capability-tokens.ts +89 -313
- package/src/runtime/channel-approval-types.ts +1 -6
- package/src/runtime/channel-approvals.ts +13 -81
- package/src/runtime/channel-readiness-service.ts +2 -2
- package/src/runtime/channel-reply-delivery.ts +2 -8
- package/src/runtime/channel-retry-sweep.ts +20 -17
- package/src/runtime/channel-verification-service.ts +3 -5
- package/src/runtime/confirmation-request-guardian-bridge.ts +2 -7
- package/src/runtime/gateway-client.ts +37 -378
- package/src/runtime/guardian-action-grant-minter.ts +2 -3
- package/src/runtime/guardian-action-message-composer.ts +11 -52
- package/src/runtime/guardian-action-service.ts +19 -7
- package/src/runtime/guardian-decision-types.ts +4 -65
- package/src/runtime/guardian-reply-router.ts +10 -19
- package/src/runtime/guardian-vellum-migration.ts +5 -64
- package/src/runtime/http-errors.ts +1 -32
- package/src/runtime/http-router.ts +54 -8
- package/src/runtime/http-server.ts +362 -1187
- package/src/runtime/http-types.ts +20 -98
- package/src/runtime/interactive-ui-types.ts +145 -0
- package/src/runtime/interactive-ui.ts +37 -196
- package/src/runtime/invite-redemption-service.ts +1 -1
- package/src/runtime/invite-redemption-templates.ts +1 -1
- package/src/runtime/local-actor-identity.ts +13 -43
- package/src/runtime/message-composer-types.ts +134 -0
- package/src/runtime/middleware/auth.ts +0 -20
- package/src/runtime/middleware/rate-limiter.ts +1 -1
- package/src/runtime/middleware/request-logger.ts +5 -2
- package/src/runtime/migrations/__tests__/job-registry.test.ts +346 -0
- package/src/runtime/migrations/__tests__/v1-test-helpers.ts +112 -0
- package/src/runtime/migrations/__tests__/vbundle-builder-credentials.test.ts +11 -4
- package/src/runtime/migrations/__tests__/vbundle-builder-v1-shape.test.ts +253 -0
- package/src/runtime/migrations/__tests__/vbundle-import-credentials.test.ts +19 -6
- package/src/runtime/migrations/__tests__/vbundle-legacy-user-md.test.ts +71 -27
- package/src/runtime/migrations/__tests__/vbundle-metadata-merge-integration.test.ts +41 -2
- package/src/runtime/migrations/__tests__/vbundle-streaming-importer.test.ts +143 -79
- package/src/runtime/migrations/__tests__/vbundle-streaming-validator.test.ts +143 -23
- package/src/runtime/migrations/__tests__/vbundle-tar-stream.test.ts +18 -2
- package/src/runtime/migrations/__tests__/vbundle-validator-v1-schema.test.ts +371 -0
- package/src/runtime/migrations/job-registry.ts +281 -0
- package/src/runtime/migrations/migration-transport.ts +46 -13
- package/src/runtime/migrations/migration-wizard.ts +2 -2
- package/src/runtime/migrations/origin-mode.ts +40 -0
- package/src/runtime/migrations/vbundle-builder.ts +133 -80
- package/src/runtime/migrations/vbundle-import-analyzer.ts +9 -7
- package/src/runtime/migrations/vbundle-importer.ts +8 -8
- package/src/runtime/migrations/vbundle-metadata-merge.ts +1 -1
- package/src/runtime/migrations/vbundle-streaming-importer.ts +3 -16
- package/src/runtime/migrations/vbundle-streaming-validator.ts +48 -26
- package/src/runtime/migrations/vbundle-tar-stream.ts +11 -3
- package/src/runtime/migrations/vbundle-validator.ts +214 -41
- package/src/runtime/nl-approval-parser.ts +16 -21
- package/src/runtime/pending-interactions.ts +42 -16
- package/src/runtime/routes/__tests__/acp-routes.test.ts +394 -0
- package/src/runtime/routes/__tests__/backup-routes.test.ts +232 -339
- package/src/runtime/routes/__tests__/conversation-query-routes.test.ts +235 -0
- package/src/runtime/routes/__tests__/home-feed-routes.test.ts +72 -4
- package/src/runtime/routes/__tests__/llm-call-sites-routes.test.ts +58 -0
- package/src/runtime/routes/__tests__/migration-export-secrets-redacted.test.ts +54 -0
- package/src/runtime/routes/__tests__/migration-import-credential-filter.test.ts +19 -6
- package/src/runtime/routes/__tests__/stt-routes.test.ts +182 -223
- package/src/runtime/routes/__tests__/suggest-trust-rule-routes.test.ts +230 -0
- package/src/{ipc/__tests__/task-ipc.test.ts → runtime/routes/__tests__/task-routes.test.ts} +116 -96
- package/src/runtime/routes/__tests__/tts-routes.test.ts +185 -289
- package/src/runtime/routes/__tests__/user-route-dispatcher.test.ts +7 -7
- package/src/runtime/routes/access-request-decision.ts +25 -50
- package/src/runtime/routes/acp-routes.test.ts +368 -0
- package/src/runtime/routes/acp-routes.ts +392 -170
- package/src/runtime/routes/app-management-routes.ts +475 -662
- package/src/runtime/routes/app-routes.ts +192 -177
- package/src/runtime/routes/approval-routes.ts +163 -440
- package/src/runtime/routes/approval-strategies/guardian-callback-strategy.ts +24 -84
- package/src/runtime/routes/approval-strategies/guardian-text-engine-strategy.ts +3 -10
- package/src/runtime/routes/attachment-routes.ts +409 -253
- package/src/runtime/routes/audio-routes.ts +51 -18
- package/src/runtime/routes/avatar-routes.ts +81 -76
- package/src/runtime/routes/background-tool-routes.ts +94 -0
- package/src/runtime/routes/backup-routes.ts +154 -336
- package/src/runtime/routes/brain-graph-routes.ts +83 -110
- package/src/runtime/routes/browser-routes.ts +127 -0
- package/src/runtime/routes/btw-routes.ts +62 -106
- package/src/runtime/routes/cache-routes.ts +96 -0
- package/src/runtime/routes/call-routes.ts +208 -247
- package/src/runtime/routes/canonical-guardian-expiry-sweep.ts +1 -1
- package/src/runtime/routes/channel-delivery-routes.ts +25 -27
- package/src/runtime/routes/channel-guardian-routes.ts +1 -5
- package/src/runtime/routes/channel-readiness-routes.ts +79 -120
- package/src/runtime/routes/channel-route-definitions.ts +62 -0
- package/src/runtime/routes/channel-route-shared.ts +15 -45
- package/src/runtime/routes/channel-verification-routes.ts +207 -187
- package/src/runtime/routes/client-routes.ts +81 -0
- package/src/runtime/routes/consolidation-routes.ts +115 -0
- package/src/runtime/routes/contact-routes.ts +533 -407
- package/src/runtime/routes/conversation-analysis-routes.ts +48 -49
- package/src/runtime/routes/conversation-attention-routes.ts +55 -67
- package/src/runtime/routes/conversation-list-routes.ts +248 -0
- package/src/runtime/routes/conversation-management-routes.ts +591 -717
- package/src/runtime/routes/conversation-query-routes.ts +621 -459
- package/src/runtime/routes/conversation-routes.ts +396 -792
- package/src/runtime/routes/conversation-starter-routes.ts +137 -108
- package/src/runtime/routes/credential-prompt-routes.ts +124 -0
- package/src/runtime/routes/debug-routes.ts +34 -39
- package/src/runtime/routes/defer-routes.ts +230 -0
- package/src/runtime/routes/diagnostics-routes.ts +79 -70
- package/src/runtime/routes/documents-routes.ts +163 -117
- package/src/runtime/routes/errors.ts +132 -0
- package/src/runtime/routes/events-routes.ts +126 -119
- package/src/runtime/routes/filing-routes.ts +80 -76
- package/src/runtime/routes/global-search-routes.ts +51 -57
- package/src/runtime/routes/group-routes.ts +199 -181
- package/src/runtime/routes/guardian-action-routes.ts +100 -171
- package/src/runtime/routes/guardian-approval-interception.ts +27 -58
- package/src/runtime/routes/guardian-approval-prompt.ts +10 -21
- package/src/runtime/routes/guardian-approval-reply-helpers.ts +2 -6
- package/src/runtime/routes/guardian-expiry-sweep.ts +19 -36
- package/src/runtime/routes/heartbeat-routes.ts +194 -209
- package/src/runtime/routes/home-feed-routes.ts +85 -187
- package/src/runtime/routes/home-state-routes.ts +27 -24
- package/src/runtime/routes/host-bash-routes.ts +45 -54
- package/src/runtime/routes/host-browser-routes.ts +44 -99
- package/src/runtime/routes/host-cu-routes.ts +80 -71
- package/src/runtime/routes/host-file-routes.ts +53 -62
- package/src/runtime/routes/host-transfer-routes.ts +216 -0
- package/src/runtime/routes/http-adapter.ts +172 -0
- package/src/runtime/routes/identity-routes.ts +161 -85
- package/src/runtime/routes/inbound-conversation.ts +11 -18
- package/src/runtime/routes/inbound-message-handler.ts +639 -232
- package/src/runtime/routes/inbound-stages/acl-enforcement.ts +81 -226
- package/src/runtime/routes/inbound-stages/background-dispatch.test.ts +2 -3
- package/src/runtime/routes/inbound-stages/background-dispatch.ts +57 -90
- package/src/runtime/routes/inbound-stages/bootstrap-intercept.ts +25 -50
- package/src/runtime/routes/inbound-stages/edit-intercept.ts +7 -7
- package/src/runtime/routes/inbound-stages/escalation-intercept.ts +5 -5
- package/src/runtime/routes/inbound-stages/guardian-activation-intercept.test.ts +5 -6
- package/src/runtime/routes/inbound-stages/guardian-activation-intercept.ts +14 -24
- package/src/runtime/routes/inbound-stages/guardian-reply-intercept.ts +3 -10
- package/src/runtime/routes/inbound-stages/secret-ingress-check.ts +4 -4
- package/src/runtime/routes/inbound-stages/transcribe-audio.ts +3 -3
- package/src/runtime/routes/index.ts +201 -0
- package/src/runtime/routes/integrations/slack/__tests__/channel.test.ts +25 -32
- package/src/runtime/routes/integrations/slack/__tests__/share.test.ts +22 -31
- package/src/runtime/routes/integrations/slack/channel.ts +50 -71
- package/src/runtime/routes/integrations/slack/share.ts +49 -58
- package/src/runtime/routes/integrations/telegram.ts +91 -74
- package/src/runtime/routes/integrations/twilio.ts +163 -240
- package/src/runtime/routes/integrations/vercel.ts +57 -54
- package/src/runtime/routes/interface-routes.ts +43 -0
- package/src/runtime/routes/internal-oauth-routes.ts +56 -0
- package/src/runtime/routes/internal-twilio-routes.ts +46 -0
- package/src/runtime/routes/llm-call-sites-routes.ts +22 -0
- package/src/runtime/routes/llm-context-normalization.ts +4 -2
- package/src/runtime/routes/log-export/workspace-allowlist.ts +1 -1
- package/src/runtime/routes/log-export-routes.ts +90 -100
- package/src/runtime/routes/memory-item-routes.test.ts +152 -175
- package/src/runtime/routes/memory-item-routes.ts +243 -323
- package/src/runtime/routes/memory-v2-routes.ts +188 -0
- package/src/runtime/routes/migration-rollback-routes.ts +167 -212
- package/src/runtime/routes/migration-routes.ts +1037 -377
- package/src/runtime/routes/notification-routes.ts +199 -70
- package/src/runtime/routes/oauth-apps.ts +254 -251
- package/src/runtime/routes/oauth-providers.ts +66 -57
- package/src/runtime/routes/playground/__tests__/force-compact.test.ts +60 -120
- package/src/runtime/routes/playground/__tests__/guard.test.ts +34 -54
- package/src/runtime/routes/playground/__tests__/inject-failures.test.ts +107 -151
- package/src/runtime/routes/playground/__tests__/reset-circuit.test.ts +41 -117
- package/src/runtime/routes/playground/__tests__/seed-conversation.test.ts +95 -138
- package/src/runtime/routes/playground/__tests__/seeded-conversations.test.ts +115 -217
- package/src/runtime/routes/playground/__tests__/state.test.ts +41 -90
- package/src/runtime/routes/playground/conversation-not-found.ts +9 -11
- package/src/runtime/routes/playground/force-compact.ts +41 -54
- package/src/runtime/routes/playground/guard.ts +18 -19
- package/src/runtime/routes/playground/helpers.ts +103 -0
- package/src/runtime/routes/playground/index.ts +15 -27
- package/src/runtime/routes/playground/inject-failures.ts +48 -64
- package/src/runtime/routes/playground/reset-circuit.ts +31 -57
- package/src/runtime/routes/playground/seed-conversation.ts +66 -92
- package/src/runtime/routes/playground/seeded-conversations.ts +60 -64
- package/src/runtime/routes/playground/state.ts +23 -24
- package/src/runtime/routes/profiler-routes.ts +132 -167
- package/src/runtime/routes/ps-routes.ts +120 -0
- package/src/runtime/routes/recording-routes.ts +189 -270
- package/src/runtime/routes/rename-conversation-routes.ts +85 -0
- package/src/runtime/routes/schedule-routes.ts +239 -246
- package/src/runtime/routes/secret-routes.ts +305 -282
- package/src/runtime/routes/secrets-deps.ts +24 -0
- package/src/runtime/routes/settings-routes.ts +370 -449
- package/src/runtime/routes/skills-routes.ts +417 -471
- package/src/runtime/routes/stt-routes.ts +196 -206
- package/src/runtime/routes/subagents-routes.ts +125 -141
- package/src/runtime/routes/suggest-trust-rule-routes.ts +275 -0
- package/src/runtime/routes/surface-action-routes.ts +135 -190
- package/src/runtime/routes/surface-content-routes.ts +84 -118
- package/src/runtime/routes/task-routes.ts +354 -0
- package/src/runtime/routes/telemetry-routes.ts +33 -49
- package/src/runtime/routes/trace-event-routes.ts +55 -74
- package/src/runtime/routes/trust-rules-routes.ts +61 -244
- package/src/runtime/routes/tts-routes.ts +187 -169
- package/src/runtime/routes/types.ts +139 -0
- package/src/{ipc/routes/ui-request.ts → runtime/routes/ui-request-routes.ts} +23 -17
- package/src/runtime/routes/upgrade-broadcast-routes.ts +150 -198
- package/src/runtime/routes/usage-routes.ts +222 -171
- package/src/runtime/routes/user-routes.ts +88 -18
- package/src/runtime/routes/wake-conversation-routes.ts +49 -0
- package/src/{ipc/routes/watcher.ts → runtime/routes/watcher-routes.ts} +84 -39
- package/src/runtime/routes/wipe-conversation-routes.ts +89 -0
- package/src/runtime/routes/work-items-routes.test.ts +10 -20
- package/src/runtime/routes/work-items-routes.ts +419 -437
- package/src/runtime/routes/workspace-commit-routes.ts +30 -61
- package/src/runtime/routes/workspace-routes.test.ts +254 -381
- package/src/runtime/routes/workspace-routes.ts +238 -246
- package/src/runtime/runtime-mode.ts +8 -1
- package/src/runtime/services/__tests__/analyze-conversation.test.ts +82 -120
- package/src/runtime/services/analyze-conversation.ts +18 -55
- package/src/runtime/services/conversation-serializer.ts +179 -0
- package/src/runtime/trust-context-resolver.ts +3 -2
- package/src/runtime/verification-outbound-actions.ts +14 -50
- package/src/runtime/verification-rate-limiter.ts +1 -1
- package/src/schedule/schedule-store.ts +64 -18
- package/src/schedule/scheduler.ts +101 -0
- package/src/security/ces-credential-client.ts +32 -169
- package/src/security/ces-rpc-credential-backend.ts +1 -1
- package/src/security/credential-backend.ts +6 -6
- package/src/security/oauth-completion-page.ts +1 -1
- package/src/security/oauth2.ts +3 -6
- package/src/security/secret-scanner.ts +14 -547
- package/src/security/secure-keys.ts +31 -11
- package/src/security/token-manager.ts +7 -3
- package/src/sequence/analytics.ts +1 -1
- package/src/sequence/guardrails.ts +3 -3
- package/src/sequence/store.ts +2 -1
- package/src/signals/bash.ts +1 -1
- package/src/signals/cancel.ts +16 -25
- package/src/signals/conversation-undo.ts +2 -27
- package/src/signals/emit-event.ts +1 -2
- package/src/signals/event-stream.ts +1 -1
- package/src/signals/user-message.ts +108 -22
- package/src/skills/catalog-cache.ts +7 -0
- package/src/skills/catalog-files.ts +0 -5
- package/src/skills/catalog-install.ts +29 -18
- package/src/skills/category-inference.ts +0 -11
- package/src/skills/clawhub.ts +4 -4
- package/src/skills/inline-command-runner.ts +1 -7
- package/src/skills/managed-store.ts +2 -2
- package/src/skills/remote-skill-policy.ts +6 -7
- package/src/subagent/index.ts +2 -6
- package/src/subagent/manager.ts +94 -107
- package/src/subagent/types.ts +9 -0
- package/src/tasks/SPEC.md +2 -2
- package/src/tasks/task-compiler.ts +1 -1
- package/src/tasks/task-runner.ts +2 -22
- package/src/tasks/task-store.ts +2 -29
- package/src/telemetry/types.ts +6 -0
- package/src/telemetry/usage-telemetry-reporter.test.ts +38 -15
- package/src/telemetry/usage-telemetry-reporter.ts +3 -5
- package/src/tools/acp/list-agents.test.ts +115 -0
- package/src/tools/acp/list-agents.ts +31 -0
- package/src/tools/acp/spawn.test.ts +378 -0
- package/src/tools/acp/spawn.ts +142 -62
- package/src/tools/acp/steer.test.ts +100 -0
- package/src/tools/acp/steer.ts +38 -0
- package/src/tools/background-tool-registry.ts +98 -0
- package/src/tools/browser/__tests__/browser-status.test.ts +44 -127
- package/src/tools/browser/browser-execution.ts +38 -127
- package/src/tools/browser/browser-manager.ts +1 -8
- package/src/tools/browser/cdp-client/__tests__/factory.test.ts +92 -68
- package/src/tools/browser/cdp-client/accessibility-snapshot.ts +1 -1
- package/src/tools/browser/cdp-client/cdp-inspect/discovery.ts +3 -1
- package/src/tools/browser/cdp-client/factory.ts +48 -76
- package/src/tools/browser/cdp-client/index.ts +1 -14
- package/src/tools/browser/cdp-client/types.ts +4 -1
- package/src/tools/computer-use/definitions.ts +1 -1
- package/src/tools/credential-execution/make-authenticated-request.ts +2 -2
- package/src/tools/credential-execution/manage-secure-command-tool.ts +1 -1
- package/src/tools/credential-execution/run-authenticated-command.ts +2 -2
- package/src/tools/credentials/broker-types.ts +2 -1
- package/src/tools/document/editor-template.ts +1 -1
- package/src/tools/execution-timeout.ts +1 -1
- package/src/tools/executor.ts +53 -45
- package/src/tools/host-filesystem/edit.ts +3 -2
- package/src/tools/host-filesystem/read.ts +3 -2
- package/src/tools/host-filesystem/transfer.test.ts +271 -0
- package/src/tools/host-filesystem/transfer.ts +235 -0
- package/src/tools/host-filesystem/write.ts +3 -2
- package/src/tools/host-terminal/host-shell.ts +192 -13
- package/src/tools/mcp/mcp-tool-factory.ts +1 -1
- package/src/tools/memory/register.test.ts +161 -1
- package/src/tools/memory/register.ts +19 -34
- package/src/tools/network/script-proxy/index.ts +1 -10
- package/src/tools/permission-checker.ts +84 -220
- package/src/tools/policy-context.ts +1 -8
- package/src/tools/registry.ts +16 -1
- package/src/tools/shared/shell-output.ts +4 -1
- package/src/tools/side-effects.ts +2 -2
- package/src/tools/skills/execute.ts +1 -1
- package/src/tools/skills/sandbox-runner.ts +1 -6
- package/src/tools/skills/skill-tool-factory.ts +32 -0
- package/src/tools/subagent/spawn.ts +35 -11
- package/src/tools/terminal/safe-env.ts +10 -1
- package/src/tools/terminal/shell.ts +142 -88
- package/src/tools/tool-approval-handler.ts +4 -70
- package/src/tools/tool-input-summary.ts +10 -0
- package/src/tools/types.ts +136 -183
- package/src/tools/ui-surface/definitions.ts +2 -2
- package/src/tts/__tests__/provider-catalog.test.ts +2 -2
- package/src/tts/provider-catalog.ts +1 -1
- package/src/usage/actors.ts +2 -1
- package/src/usage/attribution.ts +185 -0
- package/src/usage/pricing.ts +166 -0
- package/src/usage/types.ts +14 -0
- package/src/util/debounce.ts +0 -21
- package/src/util/errors.ts +0 -8
- package/src/util/json.ts +13 -0
- package/src/util/log-redact.ts +0 -1
- package/src/util/logger.ts +3 -3
- package/src/util/platform.ts +85 -124
- package/src/util/pricing.ts +158 -8
- package/src/watcher/engine.ts +42 -20
- package/src/watcher/watcher-store.ts +2 -1
- package/src/work-items/work-item-runner.ts +15 -42
- package/src/work-items/work-item-store.ts +1 -1
- package/src/workspace/git-service.ts +1 -6
- package/src/workspace/migrations/006-services-config.ts +10 -1
- package/src/workspace/migrations/017-seed-persona-dirs.ts +1 -1
- package/src/workspace/migrations/019-scope-journal-to-guardian.ts +1 -1
- package/src/workspace/migrations/028-recover-conversations-from-disk-view.ts +1 -1
- package/src/workspace/migrations/031-drop-user-md.ts +1 -1
- package/src/workspace/migrations/045-release-notes-meet-avatar.ts +3 -4
- package/src/workspace/migrations/050-seed-main-agent-opus-callsite.ts +4 -3
- package/src/workspace/migrations/052-seed-default-inference-profiles.ts +150 -0
- package/src/workspace/migrations/053-release-notes-acp-codex.ts +107 -0
- package/src/workspace/migrations/054-seed-recall-callsite.ts +102 -0
- package/src/workspace/migrations/055-release-notes-agentic-recall.ts +63 -0
- package/src/workspace/migrations/056-release-notes-inference-profile-reordering.ts +65 -0
- package/src/workspace/migrations/057-repair-stale-gemini-model-ids.ts +98 -0
- package/src/workspace/migrations/058-release-notes-acp-sessions-ui.ts +71 -0
- package/src/workspace/migrations/059-move-pid-to-workspace.ts +53 -0
- package/src/workspace/migrations/060-memory-v2-init.ts +37 -0
- package/src/workspace/migrations/061-move-backup-key-to-workspace.ts +59 -0
- package/src/workspace/migrations/062-drop-memory-v2-edges-json.ts +27 -0
- package/src/workspace/migrations/063-release-notes-dynamic-model-context.ts +70 -0
- package/src/workspace/migrations/064-unwind-main-agent-opus-seed.ts +64 -0
- package/src/workspace/migrations/rebuild-conversation-disk-view.ts +1 -1
- package/src/workspace/migrations/registry.ts +26 -0
- package/src/workspace/migrations/runner.ts +2 -2
- package/src/workspace/provider-commit-message-generator.ts +4 -4
- package/node_modules/@vellumai/ces-contracts/src/__tests__/trust-rules.test.ts +0 -471
- package/node_modules/@vellumai/ces-contracts/src/trust-rules.ts +0 -436
- package/src/__tests__/cli-command-risk-guard.test.ts +0 -368
- package/src/__tests__/config-watcher-feature-flags.test.ts +0 -211
- package/src/__tests__/conversation-approval-overrides.test.ts +0 -207
- package/src/__tests__/conversation-host-access-routes.test.ts +0 -229
- package/src/__tests__/conversation-tool-setup-batch-authorized.test.ts +0 -226
- package/src/__tests__/conversation-tool-setup-side-effect-flag.test.ts +0 -167
- package/src/__tests__/ephemeral-permissions.test.ts +0 -474
- package/src/__tests__/extension-id-sync-guard.test.ts +0 -241
- package/src/__tests__/host-browser-e2e-self-hosted.test.ts +0 -374
- package/src/__tests__/native-host-marker-sync-guard.test.ts +0 -157
- package/src/__tests__/pairing-concurrent.test.ts +0 -84
- package/src/__tests__/pairing-routes.test.ts +0 -181
- package/src/__tests__/parser.test.ts +0 -595
- package/src/__tests__/permission-checker-host-gate.test.ts +0 -488
- package/src/__tests__/permission-controls-v2-flag.test.ts +0 -55
- package/src/__tests__/permission-mode.test.ts +0 -89
- package/src/__tests__/provider-env-vars-scope.test.ts +0 -52
- package/src/__tests__/risk-classifier-parity.test.ts +0 -230
- package/src/__tests__/sandbox-diagnostics.test.ts +0 -138
- package/src/__tests__/sandbox-host-parity.test.ts +0 -1024
- package/src/__tests__/secret-detection-handler.test.ts +0 -74
- package/src/__tests__/secret-scanner-executor.test.ts +0 -451
- package/src/__tests__/shell-identity.test.ts +0 -236
- package/src/__tests__/shell-parser-fuzz.test.ts +0 -629
- package/src/__tests__/shell-parser-property.test.ts +0 -936
- package/src/__tests__/starter-bundle.test.ts +0 -173
- package/src/__tests__/stt-catalog-parity.test.ts +0 -282
- package/src/__tests__/task-runner.test.ts +0 -224
- package/src/__tests__/tcc-sandbox-deny.test.ts +0 -198
- package/src/__tests__/terminal-sandbox.test.ts +0 -374
- package/src/__tests__/tool-executor-shell-integration.test.ts +0 -354
- package/src/__tests__/tool-notification-listener.test.ts +0 -65
- package/src/__tests__/trust-store-pattern-matches.test.ts +0 -29
- package/src/__tests__/trust-store.test.ts +0 -2013
- package/src/__tests__/v2-consent-policy.test.ts +0 -103
- package/src/browser/identifiers.ts +0 -51
- package/src/cli/db.ts +0 -1
- package/src/config/bundled-skills/settings/tools/avatar-get.ts +0 -40
- package/src/config/bundled-skills/settings/tools/avatar-remove.ts +0 -64
- package/src/config/bundled-skills/settings/tools/avatar-update.ts +0 -88
- package/src/context/__tests__/microcompact.test.ts +0 -805
- package/src/context/microcompact.ts +0 -443
- package/src/daemon/__tests__/lifecycle-startup-ordering.test.ts +0 -127
- package/src/daemon/approved-devices-store.ts +0 -110
- package/src/daemon/external-skills-bootstrap.ts +0 -41
- package/src/daemon/handlers/slack-channel-oauth-install.ts +0 -197
- package/src/daemon/message-types/trust.ts +0 -71
- package/src/daemon/pairing-store.ts +0 -229
- package/src/events/tool-notification-listener.ts +0 -17
- package/src/ipc/cli-server.ts +0 -252
- package/src/ipc/routes/attachment.ts +0 -114
- package/src/ipc/routes/browser-context.ts +0 -63
- package/src/ipc/routes/browser.ts +0 -97
- package/src/ipc/routes/cache.ts +0 -96
- package/src/ipc/routes/get-contact.ts +0 -16
- package/src/ipc/routes/index.ts +0 -35
- package/src/ipc/routes/list-clients.ts +0 -31
- package/src/ipc/routes/merge-contacts.ts +0 -17
- package/src/ipc/routes/notification.ts +0 -133
- package/src/ipc/routes/rename-conversation.ts +0 -59
- package/src/ipc/routes/search-contacts.ts +0 -19
- package/src/ipc/routes/task-queue.ts +0 -226
- package/src/ipc/routes/task.ts +0 -173
- package/src/ipc/routes/upsert-contact.ts +0 -25
- package/src/ipc/routes/wake-conversation.ts +0 -19
- package/src/memory/db.ts +0 -23
- package/src/permissions/arg-parser.test.ts +0 -161
- package/src/permissions/arg-parser.ts +0 -141
- package/src/permissions/bash-risk-classifier.test.ts +0 -1620
- package/src/permissions/bash-risk-classifier.ts +0 -950
- package/src/permissions/command-registry.test.ts +0 -774
- package/src/permissions/command-registry.ts +0 -1005
- package/src/permissions/defaults.ts +0 -314
- package/src/permissions/file-risk-classifier.test.ts +0 -535
- package/src/permissions/file-risk-classifier.ts +0 -274
- package/src/permissions/permission-mode.ts +0 -24
- package/src/permissions/schedule-risk-classifier.test.ts +0 -129
- package/src/permissions/schedule-risk-classifier.ts +0 -85
- package/src/permissions/shell-identity.ts +0 -297
- package/src/permissions/skill-risk-classifier.test.ts +0 -311
- package/src/permissions/skill-risk-classifier.ts +0 -214
- package/src/permissions/trust-client.ts +0 -359
- package/src/permissions/trust-store-interface.ts +0 -100
- package/src/permissions/trust-store.ts +0 -1330
- package/src/permissions/v2-consent-policy.ts +0 -87
- package/src/permissions/web-risk-classifier.test.ts +0 -170
- package/src/permissions/web-risk-classifier.ts +0 -89
- package/src/runtime/__tests__/browser-extension-pair-routes.test.ts +0 -715
- package/src/runtime/__tests__/capability-tokens.test.ts +0 -258
- package/src/runtime/__tests__/chrome-extension-registry.test.ts +0 -518
- package/src/runtime/__tests__/client-registry.test.ts +0 -293
- package/src/runtime/actor-refresh-token-store.ts +0 -156
- package/src/runtime/actor-token-store.ts +0 -207
- package/src/runtime/auth/__tests__/credential-service.test.ts +0 -264
- package/src/runtime/auth/credential-service.ts +0 -352
- package/src/runtime/chrome-extension-registry.ts +0 -368
- package/src/runtime/client-registry.ts +0 -261
- package/src/runtime/conversation-approval-overrides.ts +0 -86
- package/src/runtime/routes/browser-extension-pair-routes.ts +0 -575
- package/src/runtime/routes/channel-routes.ts +0 -112
- package/src/runtime/routes/contact-routes.test.ts +0 -298
- package/src/runtime/routes/guardian-bootstrap-routes.ts +0 -175
- package/src/runtime/routes/guardian-refresh-routes.ts +0 -79
- package/src/runtime/routes/inbound-stages/verification-intercept.ts +0 -336
- package/src/runtime/routes/invite-routes.ts +0 -280
- package/src/runtime/routes/pairing-routes.ts +0 -431
- package/src/runtime/routes/playground/deps.ts +0 -56
- package/src/runtime/services/__tests__/analyze-deps-singleton.test.ts +0 -67
- package/src/runtime/services/analyze-deps-singleton.ts +0 -32
- package/src/tasks/ephemeral-permissions.ts +0 -55
- package/src/tools/secret-detection-handler.ts +0 -359
- package/src/tools/terminal/backends/native.ts +0 -327
- package/src/tools/terminal/backends/types.ts +0 -37
- package/src/tools/terminal/parser.ts +0 -623
- package/src/tools/terminal/sandbox-diagnostics.ts +0 -87
- package/src/tools/terminal/sandbox.ts +0 -40
- package/src/types/qrcode.d.ts +0 -13
- package/src/util/network-info.ts +0 -55
- /package/node_modules/@vellumai/{ces-contracts → ces-client}/tsconfig.json +0 -0
- /package/node_modules/@vellumai/{ces-contracts → service-contracts}/src/__tests__/grants.test.ts +0 -0
- /package/node_modules/@vellumai/{ces-contracts → service-contracts}/src/error.ts +0 -0
- /package/node_modules/@vellumai/{ces-contracts → service-contracts}/src/grants.ts +0 -0
- /package/node_modules/@vellumai/{ces-contracts → service-contracts}/src/handles.ts +0 -0
- /package/node_modules/@vellumai/{ces-contracts → service-contracts}/src/rendering.ts +0 -0
- /package/node_modules/@vellumai/{ces-contracts → service-contracts}/src/rpc.ts +0 -0
package/openapi.yaml
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
openapi: 3.0.0
|
|
4
4
|
info:
|
|
5
5
|
title: Vellum Assistant API
|
|
6
|
-
version: 0.
|
|
6
|
+
version: 0.7.1
|
|
7
7
|
description: Auto-generated OpenAPI specification for the Vellum Assistant runtime HTTP server.
|
|
8
8
|
servers:
|
|
9
9
|
- url: http://127.0.0.1:7821
|
|
@@ -133,10 +133,40 @@ paths:
|
|
|
133
133
|
- instruction
|
|
134
134
|
additionalProperties: false
|
|
135
135
|
/v1/acp/sessions:
|
|
136
|
+
delete:
|
|
137
|
+
operationId: acp_sessions_delete
|
|
138
|
+
summary: Bulk-clear terminal ACP sessions
|
|
139
|
+
description: Remove every terminal-state row (completed/failed/cancelled) from the persisted acp_session_history table.
|
|
140
|
+
tags:
|
|
141
|
+
- acp
|
|
142
|
+
responses:
|
|
143
|
+
"200":
|
|
144
|
+
description: Successful response
|
|
145
|
+
content:
|
|
146
|
+
application/json:
|
|
147
|
+
schema:
|
|
148
|
+
type: object
|
|
149
|
+
properties:
|
|
150
|
+
deleted:
|
|
151
|
+
type: integer
|
|
152
|
+
minimum: -9007199254740991
|
|
153
|
+
maximum: 9007199254740991
|
|
154
|
+
required:
|
|
155
|
+
- deleted
|
|
156
|
+
additionalProperties: false
|
|
157
|
+
parameters:
|
|
158
|
+
- name: status
|
|
159
|
+
in: query
|
|
160
|
+
required: true
|
|
161
|
+
schema:
|
|
162
|
+
type: string
|
|
163
|
+
description: Must be 'completed'. Shorthand for all terminal statuses (completed/failed/cancelled).
|
|
136
164
|
get:
|
|
137
165
|
operationId: acp_sessions_get
|
|
138
166
|
summary: List ACP sessions
|
|
139
|
-
description:
|
|
167
|
+
description:
|
|
168
|
+
Return the merged set of in-memory and persisted ACP sessions, newest first. In-memory sessions take
|
|
169
|
+
precedence on id collision.
|
|
140
170
|
tags:
|
|
141
171
|
- acp
|
|
142
172
|
responses:
|
|
@@ -149,11 +179,88 @@ paths:
|
|
|
149
179
|
properties:
|
|
150
180
|
sessions:
|
|
151
181
|
type: array
|
|
152
|
-
items:
|
|
153
|
-
|
|
182
|
+
items:
|
|
183
|
+
type: object
|
|
184
|
+
properties:
|
|
185
|
+
id:
|
|
186
|
+
type: string
|
|
187
|
+
agentId:
|
|
188
|
+
type: string
|
|
189
|
+
acpSessionId:
|
|
190
|
+
type: string
|
|
191
|
+
parentConversationId:
|
|
192
|
+
type: string
|
|
193
|
+
status:
|
|
194
|
+
type: string
|
|
195
|
+
startedAt:
|
|
196
|
+
type: number
|
|
197
|
+
completedAt:
|
|
198
|
+
anyOf:
|
|
199
|
+
- type: number
|
|
200
|
+
- type: "null"
|
|
201
|
+
error:
|
|
202
|
+
anyOf:
|
|
203
|
+
- type: string
|
|
204
|
+
- type: "null"
|
|
205
|
+
stopReason:
|
|
206
|
+
anyOf:
|
|
207
|
+
- type: string
|
|
208
|
+
- type: "null"
|
|
209
|
+
eventLog:
|
|
210
|
+
type: array
|
|
211
|
+
items: {}
|
|
212
|
+
required:
|
|
213
|
+
- id
|
|
214
|
+
- agentId
|
|
215
|
+
- acpSessionId
|
|
216
|
+
- status
|
|
217
|
+
- startedAt
|
|
218
|
+
additionalProperties: false
|
|
219
|
+
description: Merged in-memory and persisted ACP sessions.
|
|
154
220
|
required:
|
|
155
221
|
- sessions
|
|
156
222
|
additionalProperties: false
|
|
223
|
+
parameters:
|
|
224
|
+
- name: limit
|
|
225
|
+
in: query
|
|
226
|
+
required: false
|
|
227
|
+
schema:
|
|
228
|
+
type: integer
|
|
229
|
+
description: Maximum number of sessions to return (default 50, max 500).
|
|
230
|
+
- name: conversationId
|
|
231
|
+
in: query
|
|
232
|
+
required: false
|
|
233
|
+
schema:
|
|
234
|
+
type: string
|
|
235
|
+
description: Filter to sessions whose parentConversationId matches this value.
|
|
236
|
+
/v1/acp/sessions/{id}:
|
|
237
|
+
delete:
|
|
238
|
+
operationId: acp_sessions_by_id_delete
|
|
239
|
+
summary: Delete ACP session from history
|
|
240
|
+
description:
|
|
241
|
+
Remove a persisted ACP session row. Rejects with 409 when the session is still active in memory; idempotent
|
|
242
|
+
for unknown ids.
|
|
243
|
+
tags:
|
|
244
|
+
- acp
|
|
245
|
+
responses:
|
|
246
|
+
"200":
|
|
247
|
+
description: Successful response
|
|
248
|
+
content:
|
|
249
|
+
application/json:
|
|
250
|
+
schema:
|
|
251
|
+
type: object
|
|
252
|
+
properties:
|
|
253
|
+
deleted:
|
|
254
|
+
type: boolean
|
|
255
|
+
required:
|
|
256
|
+
- deleted
|
|
257
|
+
additionalProperties: false
|
|
258
|
+
parameters:
|
|
259
|
+
- name: id
|
|
260
|
+
in: path
|
|
261
|
+
required: true
|
|
262
|
+
schema:
|
|
263
|
+
type: string
|
|
157
264
|
/v1/acp/spawn:
|
|
158
265
|
post:
|
|
159
266
|
operationId: acp_spawn_post
|
|
@@ -358,6 +465,13 @@ paths:
|
|
|
358
465
|
required:
|
|
359
466
|
- apps
|
|
360
467
|
additionalProperties: false
|
|
468
|
+
parameters:
|
|
469
|
+
- name: conversationId
|
|
470
|
+
in: query
|
|
471
|
+
required: false
|
|
472
|
+
schema:
|
|
473
|
+
type: string
|
|
474
|
+
description: Filter apps by conversation ID
|
|
361
475
|
/v1/apps/{appId}/dist/{filename}:
|
|
362
476
|
get:
|
|
363
477
|
operationId: apps_by_appId_dist_by_filename_get
|
|
@@ -432,6 +546,11 @@ paths:
|
|
|
432
546
|
required: true
|
|
433
547
|
schema:
|
|
434
548
|
type: string
|
|
549
|
+
- name: method
|
|
550
|
+
in: query
|
|
551
|
+
required: false
|
|
552
|
+
schema:
|
|
553
|
+
type: string
|
|
435
554
|
post:
|
|
436
555
|
operationId: apps_by_id_data_post
|
|
437
556
|
summary: Mutate app data
|
|
@@ -500,6 +619,16 @@ paths:
|
|
|
500
619
|
required: true
|
|
501
620
|
schema:
|
|
502
621
|
type: string
|
|
622
|
+
- name: fromCommit
|
|
623
|
+
in: query
|
|
624
|
+
required: true
|
|
625
|
+
schema:
|
|
626
|
+
type: string
|
|
627
|
+
- name: toCommit
|
|
628
|
+
in: query
|
|
629
|
+
required: false
|
|
630
|
+
schema:
|
|
631
|
+
type: string
|
|
503
632
|
/v1/apps/{id}/history:
|
|
504
633
|
get:
|
|
505
634
|
operationId: apps_by_id_history_get
|
|
@@ -530,6 +659,11 @@ paths:
|
|
|
530
659
|
required: true
|
|
531
660
|
schema:
|
|
532
661
|
type: string
|
|
662
|
+
- name: limit
|
|
663
|
+
in: query
|
|
664
|
+
required: false
|
|
665
|
+
schema:
|
|
666
|
+
type: number
|
|
533
667
|
/v1/apps/{id}/open:
|
|
534
668
|
post:
|
|
535
669
|
operationId: apps_by_id_open_post
|
|
@@ -905,7 +1039,6 @@ paths:
|
|
|
905
1039
|
description: Canonical JSON payload to sign
|
|
906
1040
|
signature:
|
|
907
1041
|
type: string
|
|
908
|
-
description: Ed25519 signature (optional, completes signing)
|
|
909
1042
|
keyId:
|
|
910
1043
|
type: string
|
|
911
1044
|
publicKey:
|
|
@@ -931,7 +1064,7 @@ paths:
|
|
|
931
1064
|
tags:
|
|
932
1065
|
- attachments
|
|
933
1066
|
responses:
|
|
934
|
-
"
|
|
1067
|
+
"204":
|
|
935
1068
|
description: Successful response
|
|
936
1069
|
requestBody:
|
|
937
1070
|
required: true
|
|
@@ -996,6 +1129,11 @@ paths:
|
|
|
996
1129
|
filePath:
|
|
997
1130
|
type: string
|
|
998
1131
|
description: On-disk file path (file-backed upload)
|
|
1132
|
+
trustedSource:
|
|
1133
|
+
type: boolean
|
|
1134
|
+
description:
|
|
1135
|
+
Set by the gateway when the file came from a guardian-bound channel actor. Honored only when the request is
|
|
1136
|
+
authenticated as a gateway service token; ignored otherwise.
|
|
999
1137
|
required:
|
|
1000
1138
|
- filename
|
|
1001
1139
|
- mimeType
|
|
@@ -1026,8 +1164,10 @@ paths:
|
|
|
1026
1164
|
kind:
|
|
1027
1165
|
type: string
|
|
1028
1166
|
data:
|
|
1029
|
-
|
|
1030
|
-
|
|
1167
|
+
anyOf:
|
|
1168
|
+
- type: string
|
|
1169
|
+
description: Base64-encoded content
|
|
1170
|
+
- type: "null"
|
|
1031
1171
|
fileBacked:
|
|
1032
1172
|
type: boolean
|
|
1033
1173
|
required:
|
|
@@ -1037,7 +1177,6 @@ paths:
|
|
|
1037
1177
|
- sizeBytes
|
|
1038
1178
|
- kind
|
|
1039
1179
|
- data
|
|
1040
|
-
- fileBacked
|
|
1041
1180
|
additionalProperties: false
|
|
1042
1181
|
parameters:
|
|
1043
1182
|
- name: id
|
|
@@ -1055,20 +1194,125 @@ paths:
|
|
|
1055
1194
|
responses:
|
|
1056
1195
|
"200":
|
|
1057
1196
|
description: Successful response
|
|
1197
|
+
"416":
|
|
1198
|
+
description: Range Not Satisfiable
|
|
1058
1199
|
parameters:
|
|
1059
1200
|
- name: id
|
|
1060
1201
|
in: path
|
|
1061
1202
|
required: true
|
|
1062
1203
|
schema:
|
|
1063
1204
|
type: string
|
|
1064
|
-
/v1/
|
|
1205
|
+
/v1/attachments/lookup:
|
|
1206
|
+
post:
|
|
1207
|
+
operationId: attachments_lookup_post
|
|
1208
|
+
summary: Look up attachment by source path
|
|
1209
|
+
description: Search for a previously registered attachment by its original source path, scoped to a conversation.
|
|
1210
|
+
tags:
|
|
1211
|
+
- attachments
|
|
1212
|
+
responses:
|
|
1213
|
+
"200":
|
|
1214
|
+
description: Successful response
|
|
1215
|
+
content:
|
|
1216
|
+
application/json:
|
|
1217
|
+
schema:
|
|
1218
|
+
type: object
|
|
1219
|
+
properties:
|
|
1220
|
+
filePath:
|
|
1221
|
+
type: string
|
|
1222
|
+
required:
|
|
1223
|
+
- filePath
|
|
1224
|
+
additionalProperties: false
|
|
1225
|
+
requestBody:
|
|
1226
|
+
required: true
|
|
1227
|
+
content:
|
|
1228
|
+
application/json:
|
|
1229
|
+
schema:
|
|
1230
|
+
type: object
|
|
1231
|
+
properties:
|
|
1232
|
+
sourcePath:
|
|
1233
|
+
type: string
|
|
1234
|
+
description: Original source path of the file
|
|
1235
|
+
conversationId:
|
|
1236
|
+
type: string
|
|
1237
|
+
description: Conversation ID to search within
|
|
1238
|
+
required:
|
|
1239
|
+
- sourcePath
|
|
1240
|
+
- conversationId
|
|
1241
|
+
additionalProperties: false
|
|
1242
|
+
/v1/attachments/register:
|
|
1243
|
+
post:
|
|
1244
|
+
operationId: attachments_register_post
|
|
1245
|
+
summary: Register a file-backed attachment
|
|
1246
|
+
description:
|
|
1247
|
+
Register an on-disk file as a file-backed attachment. The file must be within the workspace directory and
|
|
1248
|
+
must remain on disk for the lifetime of the attachment.
|
|
1249
|
+
tags:
|
|
1250
|
+
- attachments
|
|
1251
|
+
responses:
|
|
1252
|
+
"200":
|
|
1253
|
+
description: Successful response
|
|
1254
|
+
content:
|
|
1255
|
+
application/json:
|
|
1256
|
+
schema:
|
|
1257
|
+
type: object
|
|
1258
|
+
properties:
|
|
1259
|
+
id:
|
|
1260
|
+
type: string
|
|
1261
|
+
originalFilename:
|
|
1262
|
+
type: string
|
|
1263
|
+
mimeType:
|
|
1264
|
+
type: string
|
|
1265
|
+
sizeBytes:
|
|
1266
|
+
type: number
|
|
1267
|
+
kind:
|
|
1268
|
+
type: string
|
|
1269
|
+
filePath:
|
|
1270
|
+
type: string
|
|
1271
|
+
createdAt:
|
|
1272
|
+
type: number
|
|
1273
|
+
required:
|
|
1274
|
+
- id
|
|
1275
|
+
- originalFilename
|
|
1276
|
+
- mimeType
|
|
1277
|
+
- sizeBytes
|
|
1278
|
+
- kind
|
|
1279
|
+
- filePath
|
|
1280
|
+
- createdAt
|
|
1281
|
+
additionalProperties: false
|
|
1282
|
+
requestBody:
|
|
1283
|
+
required: true
|
|
1284
|
+
content:
|
|
1285
|
+
application/json:
|
|
1286
|
+
schema:
|
|
1287
|
+
type: object
|
|
1288
|
+
properties:
|
|
1289
|
+
path:
|
|
1290
|
+
type: string
|
|
1291
|
+
description: Absolute path to the file
|
|
1292
|
+
mimeType:
|
|
1293
|
+
type: string
|
|
1294
|
+
description: MIME type of the file
|
|
1295
|
+
filename:
|
|
1296
|
+
type: string
|
|
1297
|
+
description: Display filename (defaults to basename of path)
|
|
1298
|
+
required:
|
|
1299
|
+
- path
|
|
1300
|
+
- mimeType
|
|
1301
|
+
additionalProperties: false
|
|
1302
|
+
/v1/audio/{audioId}:
|
|
1065
1303
|
get:
|
|
1066
|
-
operationId:
|
|
1304
|
+
operationId: audio_by_audioId_get
|
|
1305
|
+
summary: Get audio segment
|
|
1306
|
+
description:
|
|
1307
|
+
Retrieve a previously stored audio segment by ID. Unauthenticated — the audioId is an unguessable UUID
|
|
1308
|
+
capability token.
|
|
1309
|
+
tags:
|
|
1310
|
+
- audio
|
|
1067
1311
|
responses:
|
|
1068
1312
|
"200":
|
|
1069
1313
|
description: Successful response
|
|
1070
1314
|
parameters:
|
|
1071
|
-
- name:
|
|
1315
|
+
- name: audioId
|
|
1072
1316
|
in: path
|
|
1073
1317
|
required: true
|
|
1074
1318
|
schema:
|
|
@@ -1083,6 +1327,26 @@ paths:
|
|
|
1083
1327
|
responses:
|
|
1084
1328
|
"200":
|
|
1085
1329
|
description: Successful response
|
|
1330
|
+
/v1/avatar/notify-updated:
|
|
1331
|
+
post:
|
|
1332
|
+
operationId: avatar_notifyupdated_post
|
|
1333
|
+
summary: Notify avatar updated
|
|
1334
|
+
description: Publish an avatar_updated SSE event to connected clients.
|
|
1335
|
+
tags:
|
|
1336
|
+
- avatar
|
|
1337
|
+
responses:
|
|
1338
|
+
"200":
|
|
1339
|
+
description: Successful response
|
|
1340
|
+
content:
|
|
1341
|
+
application/json:
|
|
1342
|
+
schema:
|
|
1343
|
+
type: object
|
|
1344
|
+
properties:
|
|
1345
|
+
ok:
|
|
1346
|
+
type: boolean
|
|
1347
|
+
required:
|
|
1348
|
+
- ok
|
|
1349
|
+
additionalProperties: false
|
|
1086
1350
|
/v1/avatar/render-from-traits:
|
|
1087
1351
|
post:
|
|
1088
1352
|
operationId: avatar_renderfromtraits_post
|
|
@@ -1121,17 +1385,13 @@ paths:
|
|
|
1121
1385
|
- eyeStyle
|
|
1122
1386
|
- color
|
|
1123
1387
|
additionalProperties: false
|
|
1124
|
-
/v1/
|
|
1388
|
+
/v1/background-tools:
|
|
1125
1389
|
get:
|
|
1126
|
-
operationId:
|
|
1127
|
-
summary: List
|
|
1128
|
-
description:
|
|
1129
|
-
Lists local and offsite backup snapshots. Each offsite destination includes a `reachable` flag reflecting
|
|
1130
|
-
whether the backing volume is currently available. When `backup.offsite.enabled` is false the `offsite` array is
|
|
1131
|
-
empty and `offsiteEnabled` is false — clients should gate offsite UI on `offsiteEnabled` rather than
|
|
1132
|
-
`offsite.length`.
|
|
1390
|
+
operationId: backgroundtools_get
|
|
1391
|
+
summary: List active background tools
|
|
1392
|
+
description: List all active background tool executions, optionally filtered by conversationId.
|
|
1133
1393
|
tags:
|
|
1134
|
-
-
|
|
1394
|
+
- background-tools
|
|
1135
1395
|
responses:
|
|
1136
1396
|
"200":
|
|
1137
1397
|
description: Successful response
|
|
@@ -1140,45 +1400,128 @@ paths:
|
|
|
1140
1400
|
schema:
|
|
1141
1401
|
type: object
|
|
1142
1402
|
properties:
|
|
1143
|
-
|
|
1144
|
-
type: array
|
|
1145
|
-
items: {}
|
|
1146
|
-
offsite:
|
|
1403
|
+
tools:
|
|
1147
1404
|
type: array
|
|
1148
1405
|
items:
|
|
1149
1406
|
type: object
|
|
1150
1407
|
properties:
|
|
1151
|
-
|
|
1152
|
-
type:
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
type:
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1408
|
+
id:
|
|
1409
|
+
type: string
|
|
1410
|
+
toolName:
|
|
1411
|
+
type: string
|
|
1412
|
+
conversationId:
|
|
1413
|
+
type: string
|
|
1414
|
+
command:
|
|
1415
|
+
type: string
|
|
1416
|
+
startedAt:
|
|
1417
|
+
type: number
|
|
1160
1418
|
required:
|
|
1161
|
-
-
|
|
1162
|
-
-
|
|
1163
|
-
-
|
|
1419
|
+
- id
|
|
1420
|
+
- toolName
|
|
1421
|
+
- conversationId
|
|
1422
|
+
- command
|
|
1423
|
+
- startedAt
|
|
1164
1424
|
additionalProperties: false
|
|
1165
|
-
offsiteEnabled:
|
|
1166
|
-
type: boolean
|
|
1167
|
-
nextRunAt:
|
|
1168
|
-
anyOf:
|
|
1169
|
-
- type: string
|
|
1170
|
-
- type: "null"
|
|
1171
1425
|
required:
|
|
1172
|
-
-
|
|
1173
|
-
- offsite
|
|
1174
|
-
- offsiteEnabled
|
|
1175
|
-
- nextRunAt
|
|
1426
|
+
- tools
|
|
1176
1427
|
additionalProperties: false
|
|
1177
|
-
|
|
1428
|
+
parameters:
|
|
1429
|
+
- name: conversationId
|
|
1430
|
+
in: query
|
|
1431
|
+
required: false
|
|
1432
|
+
schema:
|
|
1433
|
+
type: string
|
|
1434
|
+
description: Filter by conversation ID
|
|
1435
|
+
/v1/background-tools/cancel:
|
|
1178
1436
|
post:
|
|
1179
|
-
operationId:
|
|
1180
|
-
summary:
|
|
1181
|
-
description:
|
|
1437
|
+
operationId: backgroundtools_cancel_post
|
|
1438
|
+
summary: Cancel a background tool
|
|
1439
|
+
description: Cancel an active background tool execution by ID.
|
|
1440
|
+
tags:
|
|
1441
|
+
- background-tools
|
|
1442
|
+
responses:
|
|
1443
|
+
"200":
|
|
1444
|
+
description: Successful response
|
|
1445
|
+
content:
|
|
1446
|
+
application/json:
|
|
1447
|
+
schema:
|
|
1448
|
+
type: object
|
|
1449
|
+
properties:
|
|
1450
|
+
cancelled:
|
|
1451
|
+
type: boolean
|
|
1452
|
+
required:
|
|
1453
|
+
- cancelled
|
|
1454
|
+
additionalProperties: false
|
|
1455
|
+
requestBody:
|
|
1456
|
+
required: true
|
|
1457
|
+
content:
|
|
1458
|
+
application/json:
|
|
1459
|
+
schema:
|
|
1460
|
+
type: object
|
|
1461
|
+
properties:
|
|
1462
|
+
id:
|
|
1463
|
+
type: string
|
|
1464
|
+
required:
|
|
1465
|
+
- id
|
|
1466
|
+
additionalProperties: false
|
|
1467
|
+
/v1/backups:
|
|
1468
|
+
get:
|
|
1469
|
+
operationId: backups_get
|
|
1470
|
+
summary: List backup snapshots
|
|
1471
|
+
description:
|
|
1472
|
+
Lists local and offsite backup snapshots. Each offsite destination includes a `reachable` flag reflecting
|
|
1473
|
+
whether the backing volume is currently available. When `backup.offsite.enabled` is false the `offsite` array is
|
|
1474
|
+
empty and `offsiteEnabled` is false — clients should gate offsite UI on `offsiteEnabled` rather than
|
|
1475
|
+
`offsite.length`.
|
|
1476
|
+
tags:
|
|
1477
|
+
- backups
|
|
1478
|
+
responses:
|
|
1479
|
+
"200":
|
|
1480
|
+
description: Successful response
|
|
1481
|
+
content:
|
|
1482
|
+
application/json:
|
|
1483
|
+
schema:
|
|
1484
|
+
type: object
|
|
1485
|
+
properties:
|
|
1486
|
+
local:
|
|
1487
|
+
type: array
|
|
1488
|
+
items: {}
|
|
1489
|
+
offsite:
|
|
1490
|
+
type: array
|
|
1491
|
+
items:
|
|
1492
|
+
type: object
|
|
1493
|
+
properties:
|
|
1494
|
+
destination:
|
|
1495
|
+
type: object
|
|
1496
|
+
properties: {}
|
|
1497
|
+
additionalProperties: {}
|
|
1498
|
+
snapshots:
|
|
1499
|
+
type: array
|
|
1500
|
+
items: {}
|
|
1501
|
+
reachable:
|
|
1502
|
+
type: boolean
|
|
1503
|
+
required:
|
|
1504
|
+
- destination
|
|
1505
|
+
- snapshots
|
|
1506
|
+
- reachable
|
|
1507
|
+
additionalProperties: false
|
|
1508
|
+
offsiteEnabled:
|
|
1509
|
+
type: boolean
|
|
1510
|
+
nextRunAt:
|
|
1511
|
+
anyOf:
|
|
1512
|
+
- type: string
|
|
1513
|
+
- type: "null"
|
|
1514
|
+
required:
|
|
1515
|
+
- local
|
|
1516
|
+
- offsite
|
|
1517
|
+
- offsiteEnabled
|
|
1518
|
+
- nextRunAt
|
|
1519
|
+
additionalProperties: false
|
|
1520
|
+
/v1/backups/create:
|
|
1521
|
+
post:
|
|
1522
|
+
operationId: backups_create_post
|
|
1523
|
+
summary: Create a backup snapshot immediately
|
|
1524
|
+
description:
|
|
1182
1525
|
Trigger a manual snapshot. Bypasses the enabled and interval gates, but honors the in-progress mutex — a
|
|
1183
1526
|
concurrent caller receives 409.
|
|
1184
1527
|
tags:
|
|
@@ -1332,12 +1675,93 @@ paths:
|
|
|
1332
1675
|
get:
|
|
1333
1676
|
operationId: braingraphui_get
|
|
1334
1677
|
summary: Serve brain graph UI
|
|
1335
|
-
description: Return the brain-graph HTML visualization page
|
|
1678
|
+
description: Return the brain-graph HTML visualization page. The gateway injects an auth token before serving.
|
|
1336
1679
|
tags:
|
|
1337
1680
|
- brain-graph
|
|
1338
1681
|
responses:
|
|
1339
1682
|
"200":
|
|
1340
1683
|
description: Successful response
|
|
1684
|
+
/v1/browser/execute:
|
|
1685
|
+
post:
|
|
1686
|
+
operationId: browser_execute_post
|
|
1687
|
+
summary: Execute a browser operation
|
|
1688
|
+
description: Invoke a browser operation (navigate, click, type, screenshot, etc.) via the headless browser subsystem.
|
|
1689
|
+
tags:
|
|
1690
|
+
- browser
|
|
1691
|
+
responses:
|
|
1692
|
+
"200":
|
|
1693
|
+
description: Successful response
|
|
1694
|
+
content:
|
|
1695
|
+
application/json:
|
|
1696
|
+
schema:
|
|
1697
|
+
type: object
|
|
1698
|
+
properties:
|
|
1699
|
+
content:
|
|
1700
|
+
type: string
|
|
1701
|
+
isError:
|
|
1702
|
+
type: boolean
|
|
1703
|
+
screenshots:
|
|
1704
|
+
type: array
|
|
1705
|
+
items:
|
|
1706
|
+
type: object
|
|
1707
|
+
properties:
|
|
1708
|
+
mediaType:
|
|
1709
|
+
type: string
|
|
1710
|
+
data:
|
|
1711
|
+
type: string
|
|
1712
|
+
required:
|
|
1713
|
+
- mediaType
|
|
1714
|
+
- data
|
|
1715
|
+
additionalProperties: false
|
|
1716
|
+
required:
|
|
1717
|
+
- content
|
|
1718
|
+
- isError
|
|
1719
|
+
additionalProperties: false
|
|
1720
|
+
requestBody:
|
|
1721
|
+
required: true
|
|
1722
|
+
content:
|
|
1723
|
+
application/json:
|
|
1724
|
+
schema:
|
|
1725
|
+
type: object
|
|
1726
|
+
properties:
|
|
1727
|
+
operation:
|
|
1728
|
+
type: string
|
|
1729
|
+
enum:
|
|
1730
|
+
- navigate
|
|
1731
|
+
- snapshot
|
|
1732
|
+
- screenshot
|
|
1733
|
+
- close
|
|
1734
|
+
- attach
|
|
1735
|
+
- detach
|
|
1736
|
+
- click
|
|
1737
|
+
- type
|
|
1738
|
+
- press_key
|
|
1739
|
+
- scroll
|
|
1740
|
+
- select_option
|
|
1741
|
+
- hover
|
|
1742
|
+
- wait_for
|
|
1743
|
+
- extract
|
|
1744
|
+
- wait_for_download
|
|
1745
|
+
- fill_credential
|
|
1746
|
+
- status
|
|
1747
|
+
input:
|
|
1748
|
+
default: {}
|
|
1749
|
+
type: object
|
|
1750
|
+
propertyNames:
|
|
1751
|
+
type: string
|
|
1752
|
+
additionalProperties: {}
|
|
1753
|
+
sessionId:
|
|
1754
|
+
default: default
|
|
1755
|
+
type: string
|
|
1756
|
+
minLength: 1
|
|
1757
|
+
conversationId:
|
|
1758
|
+
type: string
|
|
1759
|
+
minLength: 1
|
|
1760
|
+
required:
|
|
1761
|
+
- operation
|
|
1762
|
+
- input
|
|
1763
|
+
- sessionId
|
|
1764
|
+
additionalProperties: false
|
|
1341
1765
|
/v1/btw:
|
|
1342
1766
|
post:
|
|
1343
1767
|
operationId: btw_post
|
|
@@ -1367,9 +1791,114 @@ paths:
|
|
|
1367
1791
|
- conversationKey
|
|
1368
1792
|
- content
|
|
1369
1793
|
additionalProperties: false
|
|
1370
|
-
/v1/
|
|
1794
|
+
/v1/cache/delete:
|
|
1795
|
+
post:
|
|
1796
|
+
operationId: cache_delete_post
|
|
1797
|
+
summary: Delete a cache entry
|
|
1798
|
+
description: Remove a cached value by key.
|
|
1799
|
+
tags:
|
|
1800
|
+
- cache
|
|
1801
|
+
responses:
|
|
1802
|
+
"200":
|
|
1803
|
+
description: Successful response
|
|
1804
|
+
content:
|
|
1805
|
+
application/json:
|
|
1806
|
+
schema:
|
|
1807
|
+
type: object
|
|
1808
|
+
properties:
|
|
1809
|
+
deleted:
|
|
1810
|
+
type: boolean
|
|
1811
|
+
required:
|
|
1812
|
+
- deleted
|
|
1813
|
+
additionalProperties: false
|
|
1814
|
+
requestBody:
|
|
1815
|
+
required: true
|
|
1816
|
+
content:
|
|
1817
|
+
application/json:
|
|
1818
|
+
schema:
|
|
1819
|
+
type: object
|
|
1820
|
+
properties:
|
|
1821
|
+
key:
|
|
1822
|
+
type: string
|
|
1823
|
+
minLength: 1
|
|
1824
|
+
required:
|
|
1825
|
+
- key
|
|
1826
|
+
additionalProperties: false
|
|
1827
|
+
/v1/cache/get:
|
|
1828
|
+
post:
|
|
1829
|
+
operationId: cache_get_post
|
|
1830
|
+
summary: Get a cache entry
|
|
1831
|
+
description: Retrieve a cached value by key. Returns null if not found.
|
|
1832
|
+
tags:
|
|
1833
|
+
- cache
|
|
1834
|
+
responses:
|
|
1835
|
+
"200":
|
|
1836
|
+
description: Successful response
|
|
1837
|
+
content:
|
|
1838
|
+
application/json:
|
|
1839
|
+
schema:
|
|
1840
|
+
anyOf:
|
|
1841
|
+
- type: object
|
|
1842
|
+
properties:
|
|
1843
|
+
data: {}
|
|
1844
|
+
required:
|
|
1845
|
+
- data
|
|
1846
|
+
additionalProperties: false
|
|
1847
|
+
- type: "null"
|
|
1848
|
+
requestBody:
|
|
1849
|
+
required: true
|
|
1850
|
+
content:
|
|
1851
|
+
application/json:
|
|
1852
|
+
schema:
|
|
1853
|
+
type: object
|
|
1854
|
+
properties:
|
|
1855
|
+
key:
|
|
1856
|
+
type: string
|
|
1857
|
+
minLength: 1
|
|
1858
|
+
required:
|
|
1859
|
+
- key
|
|
1860
|
+
additionalProperties: false
|
|
1861
|
+
/v1/cache/set:
|
|
1862
|
+
post:
|
|
1863
|
+
operationId: cache_set_post
|
|
1864
|
+
summary: Set a cache entry
|
|
1865
|
+
description: Store a value in the daemon's in-memory cache, optionally with a TTL.
|
|
1866
|
+
tags:
|
|
1867
|
+
- cache
|
|
1868
|
+
responses:
|
|
1869
|
+
"200":
|
|
1870
|
+
description: Successful response
|
|
1871
|
+
content:
|
|
1872
|
+
application/json:
|
|
1873
|
+
schema:
|
|
1874
|
+
type: object
|
|
1875
|
+
properties:
|
|
1876
|
+
key:
|
|
1877
|
+
type: string
|
|
1878
|
+
required:
|
|
1879
|
+
- key
|
|
1880
|
+
additionalProperties: false
|
|
1881
|
+
requestBody:
|
|
1882
|
+
required: true
|
|
1883
|
+
content:
|
|
1884
|
+
application/json:
|
|
1885
|
+
schema:
|
|
1886
|
+
type: object
|
|
1887
|
+
properties:
|
|
1888
|
+
data: {}
|
|
1889
|
+
key:
|
|
1890
|
+
type: string
|
|
1891
|
+
minLength: 1
|
|
1892
|
+
ttl_ms:
|
|
1893
|
+
type: integer
|
|
1894
|
+
exclusiveMinimum: 0
|
|
1895
|
+
maximum: 9007199254740991
|
|
1896
|
+
required:
|
|
1897
|
+
- data
|
|
1898
|
+
additionalProperties: false
|
|
1899
|
+
/v1/calls/{callSessionId}:
|
|
1371
1900
|
get:
|
|
1372
|
-
operationId:
|
|
1901
|
+
operationId: calls_by_callSessionId_get
|
|
1373
1902
|
summary: Get call status
|
|
1374
1903
|
description: Return the current status and details of a call session.
|
|
1375
1904
|
tags:
|
|
@@ -1399,15 +1928,23 @@ paths:
|
|
|
1399
1928
|
task:
|
|
1400
1929
|
type: string
|
|
1401
1930
|
startedAt:
|
|
1402
|
-
|
|
1931
|
+
anyOf:
|
|
1932
|
+
- type: string
|
|
1933
|
+
- type: "null"
|
|
1403
1934
|
endedAt:
|
|
1404
|
-
|
|
1935
|
+
anyOf:
|
|
1936
|
+
- type: string
|
|
1937
|
+
- type: "null"
|
|
1405
1938
|
lastError:
|
|
1406
|
-
|
|
1939
|
+
anyOf:
|
|
1940
|
+
- type: string
|
|
1941
|
+
- type: "null"
|
|
1407
1942
|
pendingQuestion:
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1943
|
+
anyOf:
|
|
1944
|
+
- type: object
|
|
1945
|
+
properties: {}
|
|
1946
|
+
additionalProperties: {}
|
|
1947
|
+
- type: "null"
|
|
1411
1948
|
createdAt:
|
|
1412
1949
|
type: string
|
|
1413
1950
|
updatedAt:
|
|
@@ -1429,14 +1966,14 @@ paths:
|
|
|
1429
1966
|
- updatedAt
|
|
1430
1967
|
additionalProperties: false
|
|
1431
1968
|
parameters:
|
|
1432
|
-
- name:
|
|
1969
|
+
- name: callSessionId
|
|
1433
1970
|
in: path
|
|
1434
1971
|
required: true
|
|
1435
1972
|
schema:
|
|
1436
1973
|
type: string
|
|
1437
|
-
/v1/calls/{
|
|
1974
|
+
/v1/calls/{callSessionId}/answer:
|
|
1438
1975
|
post:
|
|
1439
|
-
operationId:
|
|
1976
|
+
operationId: calls_by_callSessionId_answer_post
|
|
1440
1977
|
summary: Answer a pending call question
|
|
1441
1978
|
description: Provide an answer to a pending question during an active call.
|
|
1442
1979
|
tags:
|
|
@@ -1458,7 +1995,7 @@ paths:
|
|
|
1458
1995
|
- questionId
|
|
1459
1996
|
additionalProperties: false
|
|
1460
1997
|
parameters:
|
|
1461
|
-
- name:
|
|
1998
|
+
- name: callSessionId
|
|
1462
1999
|
in: path
|
|
1463
2000
|
required: true
|
|
1464
2001
|
schema:
|
|
@@ -1478,11 +2015,10 @@ paths:
|
|
|
1478
2015
|
description: ID of the pending question
|
|
1479
2016
|
required:
|
|
1480
2017
|
- answer
|
|
1481
|
-
- pendingQuestionId
|
|
1482
2018
|
additionalProperties: false
|
|
1483
|
-
/v1/calls/{
|
|
2019
|
+
/v1/calls/{callSessionId}/cancel:
|
|
1484
2020
|
post:
|
|
1485
|
-
operationId:
|
|
2021
|
+
operationId: calls_by_callSessionId_cancel_post
|
|
1486
2022
|
summary: Cancel a call
|
|
1487
2023
|
description: Cancel an active or pending call.
|
|
1488
2024
|
tags:
|
|
@@ -1504,7 +2040,7 @@ paths:
|
|
|
1504
2040
|
- status
|
|
1505
2041
|
additionalProperties: false
|
|
1506
2042
|
parameters:
|
|
1507
|
-
- name:
|
|
2043
|
+
- name: callSessionId
|
|
1508
2044
|
in: path
|
|
1509
2045
|
required: true
|
|
1510
2046
|
schema:
|
|
@@ -1519,12 +2055,10 @@ paths:
|
|
|
1519
2055
|
reason:
|
|
1520
2056
|
type: string
|
|
1521
2057
|
description: Cancellation reason
|
|
1522
|
-
required:
|
|
1523
|
-
- reason
|
|
1524
2058
|
additionalProperties: false
|
|
1525
|
-
/v1/calls/{
|
|
2059
|
+
/v1/calls/{callSessionId}/instruction:
|
|
1526
2060
|
post:
|
|
1527
|
-
operationId:
|
|
2061
|
+
operationId: calls_by_callSessionId_instruction_post
|
|
1528
2062
|
summary: Relay instruction to active call
|
|
1529
2063
|
description: Send a real-time instruction to an active call.
|
|
1530
2064
|
tags:
|
|
@@ -1543,7 +2077,7 @@ paths:
|
|
|
1543
2077
|
- ok
|
|
1544
2078
|
additionalProperties: false
|
|
1545
2079
|
parameters:
|
|
1546
|
-
- name:
|
|
2080
|
+
- name: callSessionId
|
|
1547
2081
|
in: path
|
|
1548
2082
|
required: true
|
|
1549
2083
|
schema:
|
|
@@ -1569,7 +2103,7 @@ paths:
|
|
|
1569
2103
|
tags:
|
|
1570
2104
|
- calls
|
|
1571
2105
|
responses:
|
|
1572
|
-
"
|
|
2106
|
+
"201":
|
|
1573
2107
|
description: Successful response
|
|
1574
2108
|
content:
|
|
1575
2109
|
application/json:
|
|
@@ -1634,19 +2168,6 @@ paths:
|
|
|
1634
2168
|
responses:
|
|
1635
2169
|
"200":
|
|
1636
2170
|
description: Successful response
|
|
1637
|
-
content:
|
|
1638
|
-
application/json:
|
|
1639
|
-
schema:
|
|
1640
|
-
type: object
|
|
1641
|
-
properties:
|
|
1642
|
-
success:
|
|
1643
|
-
type: boolean
|
|
1644
|
-
channel:
|
|
1645
|
-
type: string
|
|
1646
|
-
required:
|
|
1647
|
-
- success
|
|
1648
|
-
- channel
|
|
1649
|
-
additionalProperties: false
|
|
1650
2171
|
requestBody:
|
|
1651
2172
|
required: true
|
|
1652
2173
|
content:
|
|
@@ -1792,7 +2313,7 @@ paths:
|
|
|
1792
2313
|
tags:
|
|
1793
2314
|
- channels
|
|
1794
2315
|
responses:
|
|
1795
|
-
"
|
|
2316
|
+
"204":
|
|
1796
2317
|
description: Successful response
|
|
1797
2318
|
/v1/channels/inbound:
|
|
1798
2319
|
post:
|
|
@@ -1894,22 +2415,87 @@ paths:
|
|
|
1894
2415
|
responses:
|
|
1895
2416
|
"200":
|
|
1896
2417
|
description: Successful response
|
|
1897
|
-
/v1/
|
|
2418
|
+
/v1/clients:
|
|
1898
2419
|
get:
|
|
1899
|
-
operationId:
|
|
1900
|
-
summary:
|
|
1901
|
-
description: Return
|
|
1902
|
-
tags:
|
|
1903
|
-
- config
|
|
1904
|
-
responses:
|
|
1905
|
-
"200":
|
|
1906
|
-
description: Successful response
|
|
1907
|
-
patch:
|
|
1908
|
-
operationId: config_patch
|
|
1909
|
-
summary: Patch config
|
|
1910
|
-
description: Deep-merge a partial JSON object into the settings.json configuration.
|
|
2420
|
+
operationId: clients_get
|
|
2421
|
+
summary: List connected clients
|
|
2422
|
+
description: Return all connected clients, optionally filtered by capability.
|
|
1911
2423
|
tags:
|
|
1912
|
-
-
|
|
2424
|
+
- clients
|
|
2425
|
+
responses:
|
|
2426
|
+
"200":
|
|
2427
|
+
description: Successful response
|
|
2428
|
+
content:
|
|
2429
|
+
application/json:
|
|
2430
|
+
schema:
|
|
2431
|
+
type: object
|
|
2432
|
+
properties:
|
|
2433
|
+
clients:
|
|
2434
|
+
type: array
|
|
2435
|
+
items:
|
|
2436
|
+
type: object
|
|
2437
|
+
properties: {}
|
|
2438
|
+
additionalProperties: {}
|
|
2439
|
+
required:
|
|
2440
|
+
- clients
|
|
2441
|
+
additionalProperties: false
|
|
2442
|
+
parameters:
|
|
2443
|
+
- name: capability
|
|
2444
|
+
in: query
|
|
2445
|
+
required: false
|
|
2446
|
+
schema:
|
|
2447
|
+
type: string
|
|
2448
|
+
description: Filter clients by a specific capability.
|
|
2449
|
+
/v1/clients/disconnect:
|
|
2450
|
+
post:
|
|
2451
|
+
operationId: clients_disconnect_post
|
|
2452
|
+
summary: Force-disconnect a client
|
|
2453
|
+
description: Dispose all hub subscribers for the given clientId, forcibly closing their SSE streams.
|
|
2454
|
+
tags:
|
|
2455
|
+
- clients
|
|
2456
|
+
responses:
|
|
2457
|
+
"200":
|
|
2458
|
+
description: Successful response
|
|
2459
|
+
content:
|
|
2460
|
+
application/json:
|
|
2461
|
+
schema:
|
|
2462
|
+
type: object
|
|
2463
|
+
properties:
|
|
2464
|
+
disconnected:
|
|
2465
|
+
type: number
|
|
2466
|
+
description: Number of disposed subscribers.
|
|
2467
|
+
required:
|
|
2468
|
+
- disconnected
|
|
2469
|
+
additionalProperties: false
|
|
2470
|
+
requestBody:
|
|
2471
|
+
required: true
|
|
2472
|
+
content:
|
|
2473
|
+
application/json:
|
|
2474
|
+
schema:
|
|
2475
|
+
type: object
|
|
2476
|
+
properties:
|
|
2477
|
+
clientId:
|
|
2478
|
+
type: string
|
|
2479
|
+
description: The client UUID to disconnect.
|
|
2480
|
+
required:
|
|
2481
|
+
- clientId
|
|
2482
|
+
additionalProperties: false
|
|
2483
|
+
/v1/config:
|
|
2484
|
+
get:
|
|
2485
|
+
operationId: config_get
|
|
2486
|
+
summary: Get full config
|
|
2487
|
+
description: Return the raw settings.json configuration object.
|
|
2488
|
+
tags:
|
|
2489
|
+
- config
|
|
2490
|
+
responses:
|
|
2491
|
+
"200":
|
|
2492
|
+
description: Successful response
|
|
2493
|
+
patch:
|
|
2494
|
+
operationId: config_patch
|
|
2495
|
+
summary: Patch config
|
|
2496
|
+
description: Deep-merge a partial JSON object into the settings.json configuration.
|
|
2497
|
+
tags:
|
|
2498
|
+
- config
|
|
1913
2499
|
responses:
|
|
1914
2500
|
"200":
|
|
1915
2501
|
description: Successful response
|
|
@@ -1946,6 +2532,34 @@ paths:
|
|
|
1946
2532
|
required:
|
|
1947
2533
|
- provider
|
|
1948
2534
|
additionalProperties: false
|
|
2535
|
+
/v1/config/llm/call-sites:
|
|
2536
|
+
get:
|
|
2537
|
+
operationId: config_llm_callsites_get
|
|
2538
|
+
summary: List LLM call sites
|
|
2539
|
+
description:
|
|
2540
|
+
Returns the full catalog of LLM call sites with display names, descriptions, and domain groupings. Used by
|
|
2541
|
+
clients to render the per-call-site override settings UI.
|
|
2542
|
+
tags:
|
|
2543
|
+
- config
|
|
2544
|
+
responses:
|
|
2545
|
+
"200":
|
|
2546
|
+
description: Successful response
|
|
2547
|
+
/v1/config/llm/profiles/{name}:
|
|
2548
|
+
put:
|
|
2549
|
+
operationId: config_llm_profiles_by_name_put
|
|
2550
|
+
summary: Replace an inference profile
|
|
2551
|
+
description: Replace the settings-UI-managed leaves of a single llm.profiles entry while preserving non-UI leaves.
|
|
2552
|
+
tags:
|
|
2553
|
+
- config
|
|
2554
|
+
responses:
|
|
2555
|
+
"200":
|
|
2556
|
+
description: Successful response
|
|
2557
|
+
parameters:
|
|
2558
|
+
- name: name
|
|
2559
|
+
in: path
|
|
2560
|
+
required: true
|
|
2561
|
+
schema:
|
|
2562
|
+
type: string
|
|
1949
2563
|
/v1/config/platform:
|
|
1950
2564
|
get:
|
|
1951
2565
|
operationId: config_platform_get
|
|
@@ -2022,7 +2636,7 @@ paths:
|
|
|
2022
2636
|
description: Pending interaction request ID
|
|
2023
2637
|
decision:
|
|
2024
2638
|
type: string
|
|
2025
|
-
description: "One of: allow,
|
|
2639
|
+
description: "One of: allow, deny"
|
|
2026
2640
|
selectedPattern:
|
|
2027
2641
|
type: string
|
|
2028
2642
|
description: Allowlist pattern for persistent decisions
|
|
@@ -2033,6 +2647,76 @@ paths:
|
|
|
2033
2647
|
- requestId
|
|
2034
2648
|
- decision
|
|
2035
2649
|
additionalProperties: false
|
|
2650
|
+
/v1/consolidation/config:
|
|
2651
|
+
get:
|
|
2652
|
+
operationId: consolidation_config_get
|
|
2653
|
+
summary: Get consolidation config
|
|
2654
|
+
description: Return the current memory v2 consolidation schedule configuration.
|
|
2655
|
+
tags:
|
|
2656
|
+
- consolidation
|
|
2657
|
+
responses:
|
|
2658
|
+
"200":
|
|
2659
|
+
description: Successful response
|
|
2660
|
+
content:
|
|
2661
|
+
application/json:
|
|
2662
|
+
schema:
|
|
2663
|
+
type: object
|
|
2664
|
+
properties:
|
|
2665
|
+
available:
|
|
2666
|
+
type: boolean
|
|
2667
|
+
enabled:
|
|
2668
|
+
type: boolean
|
|
2669
|
+
intervalMs:
|
|
2670
|
+
type: number
|
|
2671
|
+
nextRunAt:
|
|
2672
|
+
anyOf:
|
|
2673
|
+
- type: number
|
|
2674
|
+
- type: "null"
|
|
2675
|
+
lastRunAt:
|
|
2676
|
+
anyOf:
|
|
2677
|
+
- type: number
|
|
2678
|
+
- type: "null"
|
|
2679
|
+
success:
|
|
2680
|
+
type: boolean
|
|
2681
|
+
required:
|
|
2682
|
+
- available
|
|
2683
|
+
- enabled
|
|
2684
|
+
- intervalMs
|
|
2685
|
+
- nextRunAt
|
|
2686
|
+
- lastRunAt
|
|
2687
|
+
- success
|
|
2688
|
+
additionalProperties: false
|
|
2689
|
+
/v1/consolidation/run-now:
|
|
2690
|
+
post:
|
|
2691
|
+
operationId: consolidation_runnow_post
|
|
2692
|
+
summary: Run consolidation now
|
|
2693
|
+
description:
|
|
2694
|
+
Enqueue an immediate memory v2 consolidation job. Returns once the job is queued; the job itself runs
|
|
2695
|
+
through the memory jobs worker.
|
|
2696
|
+
tags:
|
|
2697
|
+
- consolidation
|
|
2698
|
+
responses:
|
|
2699
|
+
"200":
|
|
2700
|
+
description: Successful response
|
|
2701
|
+
content:
|
|
2702
|
+
application/json:
|
|
2703
|
+
schema:
|
|
2704
|
+
type: object
|
|
2705
|
+
properties:
|
|
2706
|
+
success:
|
|
2707
|
+
type: boolean
|
|
2708
|
+
ran:
|
|
2709
|
+
type: boolean
|
|
2710
|
+
description: Whether a job was enqueued
|
|
2711
|
+
jobId:
|
|
2712
|
+
anyOf:
|
|
2713
|
+
- type: string
|
|
2714
|
+
- type: "null"
|
|
2715
|
+
required:
|
|
2716
|
+
- success
|
|
2717
|
+
- ran
|
|
2718
|
+
- jobId
|
|
2719
|
+
additionalProperties: false
|
|
2036
2720
|
/v1/contact-channels/{contactChannelId}:
|
|
2037
2721
|
patch:
|
|
2038
2722
|
operationId: contactchannels_by_contactChannelId_patch
|
|
@@ -2111,6 +2795,43 @@ paths:
|
|
|
2111
2795
|
- ok
|
|
2112
2796
|
- contacts
|
|
2113
2797
|
additionalProperties: false
|
|
2798
|
+
parameters:
|
|
2799
|
+
- name: limit
|
|
2800
|
+
in: query
|
|
2801
|
+
required: false
|
|
2802
|
+
schema:
|
|
2803
|
+
type: integer
|
|
2804
|
+
description: Max contacts to return (default 50)
|
|
2805
|
+
- name: role
|
|
2806
|
+
in: query
|
|
2807
|
+
required: false
|
|
2808
|
+
schema:
|
|
2809
|
+
type: string
|
|
2810
|
+
description: Filter by role (e.g. guardian)
|
|
2811
|
+
- name: contactType
|
|
2812
|
+
in: query
|
|
2813
|
+
required: false
|
|
2814
|
+
schema:
|
|
2815
|
+
type: string
|
|
2816
|
+
description: Filter by contact type (human or assistant)
|
|
2817
|
+
- name: query
|
|
2818
|
+
in: query
|
|
2819
|
+
required: false
|
|
2820
|
+
schema:
|
|
2821
|
+
type: string
|
|
2822
|
+
description: Full-text search query
|
|
2823
|
+
- name: channelAddress
|
|
2824
|
+
in: query
|
|
2825
|
+
required: false
|
|
2826
|
+
schema:
|
|
2827
|
+
type: string
|
|
2828
|
+
description: Filter by channel address
|
|
2829
|
+
- name: channelType
|
|
2830
|
+
in: query
|
|
2831
|
+
required: false
|
|
2832
|
+
schema:
|
|
2833
|
+
type: string
|
|
2834
|
+
description: Filter by channel type
|
|
2114
2835
|
post:
|
|
2115
2836
|
operationId: contacts_post
|
|
2116
2837
|
summary: Create or update a contact
|
|
@@ -2172,7 +2893,7 @@ paths:
|
|
|
2172
2893
|
tags:
|
|
2173
2894
|
- contacts
|
|
2174
2895
|
responses:
|
|
2175
|
-
"
|
|
2896
|
+
"204":
|
|
2176
2897
|
description: Successful response
|
|
2177
2898
|
parameters:
|
|
2178
2899
|
- name: id
|
|
@@ -2217,56 +2938,6 @@ paths:
|
|
|
2217
2938
|
required: true
|
|
2218
2939
|
schema:
|
|
2219
2940
|
type: string
|
|
2220
|
-
/v1/contacts/guardian/channel:
|
|
2221
|
-
post:
|
|
2222
|
-
operationId: contacts_guardian_channel_post
|
|
2223
|
-
summary: Add a channel to the guardian contact
|
|
2224
|
-
description: Used by the guardian to auto-verify their own channel.
|
|
2225
|
-
tags:
|
|
2226
|
-
- contacts
|
|
2227
|
-
responses:
|
|
2228
|
-
"200":
|
|
2229
|
-
description: Successful response
|
|
2230
|
-
content:
|
|
2231
|
-
application/json:
|
|
2232
|
-
schema:
|
|
2233
|
-
type: object
|
|
2234
|
-
properties:
|
|
2235
|
-
ok:
|
|
2236
|
-
type: boolean
|
|
2237
|
-
contact:
|
|
2238
|
-
type: object
|
|
2239
|
-
properties: {}
|
|
2240
|
-
additionalProperties: {}
|
|
2241
|
-
description: Updated guardian contact
|
|
2242
|
-
required:
|
|
2243
|
-
- ok
|
|
2244
|
-
- contact
|
|
2245
|
-
additionalProperties: false
|
|
2246
|
-
requestBody:
|
|
2247
|
-
required: true
|
|
2248
|
-
content:
|
|
2249
|
-
application/json:
|
|
2250
|
-
schema:
|
|
2251
|
-
type: object
|
|
2252
|
-
properties:
|
|
2253
|
-
type:
|
|
2254
|
-
type: string
|
|
2255
|
-
description: Channel type, e.g. 'email'
|
|
2256
|
-
address:
|
|
2257
|
-
type: string
|
|
2258
|
-
description: Channel address, e.g. 'user@example.com'
|
|
2259
|
-
externalUserId:
|
|
2260
|
-
type: string
|
|
2261
|
-
description: External user ID for trust resolution
|
|
2262
|
-
status:
|
|
2263
|
-
description: "Channel status (default: active)"
|
|
2264
|
-
type: string
|
|
2265
|
-
required:
|
|
2266
|
-
- type
|
|
2267
|
-
- address
|
|
2268
|
-
- externalUserId
|
|
2269
|
-
additionalProperties: false
|
|
2270
2941
|
/v1/contacts/invites:
|
|
2271
2942
|
get:
|
|
2272
2943
|
operationId: contacts_invites_get
|
|
@@ -2312,7 +2983,7 @@ paths:
|
|
|
2312
2983
|
tags:
|
|
2313
2984
|
- contacts
|
|
2314
2985
|
responses:
|
|
2315
|
-
"
|
|
2986
|
+
"201":
|
|
2316
2987
|
description: Successful response
|
|
2317
2988
|
content:
|
|
2318
2989
|
application/json:
|
|
@@ -2330,6 +3001,8 @@ paths:
|
|
|
2330
3001
|
- ok
|
|
2331
3002
|
- invite
|
|
2332
3003
|
additionalProperties: false
|
|
3004
|
+
"400":
|
|
3005
|
+
description: Invalid invite parameters
|
|
2333
3006
|
requestBody:
|
|
2334
3007
|
required: true
|
|
2335
3008
|
content:
|
|
@@ -2377,6 +3050,8 @@ paths:
|
|
|
2377
3050
|
responses:
|
|
2378
3051
|
"200":
|
|
2379
3052
|
description: Successful response
|
|
3053
|
+
"404":
|
|
3054
|
+
description: Invite not found
|
|
2380
3055
|
parameters:
|
|
2381
3056
|
- name: id
|
|
2382
3057
|
in: path
|
|
@@ -2407,6 +3082,8 @@ paths:
|
|
|
2407
3082
|
- ok
|
|
2408
3083
|
- callSid
|
|
2409
3084
|
additionalProperties: false
|
|
3085
|
+
"400":
|
|
3086
|
+
description: Invite not eligible for outbound call
|
|
2410
3087
|
parameters:
|
|
2411
3088
|
- name: id
|
|
2412
3089
|
in: path
|
|
@@ -2447,6 +3124,8 @@ paths:
|
|
|
2447
3124
|
- type
|
|
2448
3125
|
- memberId
|
|
2449
3126
|
additionalProperties: false
|
|
3127
|
+
"400":
|
|
3128
|
+
description: Invalid redemption parameters or failed redemption
|
|
2450
3129
|
requestBody:
|
|
2451
3130
|
required: true
|
|
2452
3131
|
content:
|
|
@@ -2527,6 +3206,40 @@ paths:
|
|
|
2527
3206
|
- keepId
|
|
2528
3207
|
- mergeId
|
|
2529
3208
|
additionalProperties: false
|
|
3209
|
+
/v1/contacts/search:
|
|
3210
|
+
post:
|
|
3211
|
+
operationId: contacts_search_post
|
|
3212
|
+
summary: Search contacts
|
|
3213
|
+
description: Search contacts by query, channel address, or channel type.
|
|
3214
|
+
tags:
|
|
3215
|
+
- contacts
|
|
3216
|
+
responses:
|
|
3217
|
+
"200":
|
|
3218
|
+
description: Successful response
|
|
3219
|
+
content:
|
|
3220
|
+
application/json:
|
|
3221
|
+
schema:
|
|
3222
|
+
type: array
|
|
3223
|
+
items:
|
|
3224
|
+
type: object
|
|
3225
|
+
properties: {}
|
|
3226
|
+
additionalProperties: {}
|
|
3227
|
+
requestBody:
|
|
3228
|
+
required: true
|
|
3229
|
+
content:
|
|
3230
|
+
application/json:
|
|
3231
|
+
schema:
|
|
3232
|
+
type: object
|
|
3233
|
+
properties:
|
|
3234
|
+
query:
|
|
3235
|
+
type: string
|
|
3236
|
+
channelAddress:
|
|
3237
|
+
type: string
|
|
3238
|
+
channelType:
|
|
3239
|
+
type: string
|
|
3240
|
+
limit:
|
|
3241
|
+
type: number
|
|
3242
|
+
additionalProperties: false
|
|
2530
3243
|
/v1/conversation-starters:
|
|
2531
3244
|
get:
|
|
2532
3245
|
operationId: conversationstarters_get
|
|
@@ -2583,18 +3296,53 @@ paths:
|
|
|
2583
3296
|
schema:
|
|
2584
3297
|
type: string
|
|
2585
3298
|
description: Scope ID (default "default")
|
|
3299
|
+
/v1/conversation-starters/{id}:
|
|
3300
|
+
delete:
|
|
3301
|
+
operationId: conversationstarters_by_id_delete
|
|
3302
|
+
summary: Delete conversation starter
|
|
3303
|
+
description: Remove a generated conversation starter chip from the current starter set.
|
|
3304
|
+
tags:
|
|
3305
|
+
- conversation-starters
|
|
3306
|
+
responses:
|
|
3307
|
+
"200":
|
|
3308
|
+
description: Successful response
|
|
3309
|
+
content:
|
|
3310
|
+
application/json:
|
|
3311
|
+
schema:
|
|
3312
|
+
type: object
|
|
3313
|
+
properties:
|
|
3314
|
+
deleted:
|
|
3315
|
+
type: boolean
|
|
3316
|
+
id:
|
|
3317
|
+
type: string
|
|
3318
|
+
required:
|
|
3319
|
+
- deleted
|
|
3320
|
+
- id
|
|
3321
|
+
additionalProperties: false
|
|
3322
|
+
"404":
|
|
3323
|
+
description: Conversation starter not found
|
|
3324
|
+
parameters:
|
|
3325
|
+
- name: id
|
|
3326
|
+
in: path
|
|
3327
|
+
required: true
|
|
3328
|
+
schema:
|
|
3329
|
+
type: string
|
|
2586
3330
|
/v1/conversations:
|
|
2587
3331
|
delete:
|
|
2588
3332
|
operationId: conversations_delete
|
|
2589
3333
|
summary: Clear all conversations
|
|
2590
|
-
description: Permanently delete ALL conversations, messages, and memory.
|
|
3334
|
+
description: Permanently delete ALL conversations, messages, and memory.
|
|
2591
3335
|
tags:
|
|
2592
3336
|
- conversations
|
|
2593
3337
|
responses:
|
|
2594
|
-
"
|
|
3338
|
+
"204":
|
|
2595
3339
|
description: Successful response
|
|
2596
3340
|
get:
|
|
2597
3341
|
operationId: conversations_get
|
|
3342
|
+
summary: List conversations
|
|
3343
|
+
description: Paginated list of conversations with attention state and display metadata.
|
|
3344
|
+
tags:
|
|
3345
|
+
- conversations
|
|
2598
3346
|
responses:
|
|
2599
3347
|
"200":
|
|
2600
3348
|
description: Successful response
|
|
@@ -2618,10 +3366,13 @@ paths:
|
|
|
2618
3366
|
type: string
|
|
2619
3367
|
conversationType:
|
|
2620
3368
|
type: string
|
|
3369
|
+
created:
|
|
3370
|
+
type: boolean
|
|
2621
3371
|
required:
|
|
2622
3372
|
- id
|
|
2623
3373
|
- conversationKey
|
|
2624
3374
|
- conversationType
|
|
3375
|
+
- created
|
|
2625
3376
|
additionalProperties: false
|
|
2626
3377
|
requestBody:
|
|
2627
3378
|
required: true
|
|
@@ -2634,11 +3385,11 @@ paths:
|
|
|
2634
3385
|
type: string
|
|
2635
3386
|
description: Idempotency key for the conversation
|
|
2636
3387
|
conversationType:
|
|
3388
|
+
description: Only standard conversations are created by this endpoint
|
|
2637
3389
|
type: string
|
|
2638
|
-
|
|
3390
|
+
const: standard
|
|
2639
3391
|
required:
|
|
2640
3392
|
- conversationKey
|
|
2641
|
-
- conversationType
|
|
2642
3393
|
additionalProperties: false
|
|
2643
3394
|
/v1/conversations/{id}:
|
|
2644
3395
|
delete:
|
|
@@ -2648,7 +3399,7 @@ paths:
|
|
|
2648
3399
|
tags:
|
|
2649
3400
|
- conversations
|
|
2650
3401
|
responses:
|
|
2651
|
-
"
|
|
3402
|
+
"204":
|
|
2652
3403
|
description: Successful response
|
|
2653
3404
|
parameters:
|
|
2654
3405
|
- name: id
|
|
@@ -2658,6 +3409,10 @@ paths:
|
|
|
2658
3409
|
type: string
|
|
2659
3410
|
get:
|
|
2660
3411
|
operationId: conversations_by_id_get
|
|
3412
|
+
summary: Get conversation detail
|
|
3413
|
+
description: Retrieve a single conversation with full metadata.
|
|
3414
|
+
tags:
|
|
3415
|
+
- conversations
|
|
2661
3416
|
responses:
|
|
2662
3417
|
"200":
|
|
2663
3418
|
description: Successful response
|
|
@@ -2687,9 +3442,7 @@ paths:
|
|
|
2687
3442
|
post:
|
|
2688
3443
|
operationId: conversations_by_id_archive_post
|
|
2689
3444
|
summary: Archive a conversation
|
|
2690
|
-
description:
|
|
2691
|
-
Move a conversation to the archived state. Archived conversations are hidden from the default sidebar but
|
|
2692
|
-
preserved for search and recall.
|
|
3445
|
+
description: Move a conversation to the archived state.
|
|
2693
3446
|
tags:
|
|
2694
3447
|
- conversations
|
|
2695
3448
|
responses:
|
|
@@ -2709,7 +3462,7 @@ paths:
|
|
|
2709
3462
|
tags:
|
|
2710
3463
|
- conversations
|
|
2711
3464
|
responses:
|
|
2712
|
-
"
|
|
3465
|
+
"202":
|
|
2713
3466
|
description: Successful response
|
|
2714
3467
|
parameters:
|
|
2715
3468
|
- name: id
|
|
@@ -2717,39 +3470,11 @@ paths:
|
|
|
2717
3470
|
required: true
|
|
2718
3471
|
schema:
|
|
2719
3472
|
type: string
|
|
2720
|
-
/v1/conversations/{id}/
|
|
2721
|
-
|
|
2722
|
-
operationId:
|
|
2723
|
-
summary:
|
|
2724
|
-
description:
|
|
2725
|
-
tags:
|
|
2726
|
-
- conversations
|
|
2727
|
-
responses:
|
|
2728
|
-
"200":
|
|
2729
|
-
description: Successful response
|
|
2730
|
-
content:
|
|
2731
|
-
application/json:
|
|
2732
|
-
schema:
|
|
2733
|
-
type: object
|
|
2734
|
-
properties:
|
|
2735
|
-
conversationId:
|
|
2736
|
-
type: string
|
|
2737
|
-
hostAccess:
|
|
2738
|
-
type: boolean
|
|
2739
|
-
required:
|
|
2740
|
-
- conversationId
|
|
2741
|
-
- hostAccess
|
|
2742
|
-
additionalProperties: false
|
|
2743
|
-
parameters:
|
|
2744
|
-
- name: id
|
|
2745
|
-
in: path
|
|
2746
|
-
required: true
|
|
2747
|
-
schema:
|
|
2748
|
-
type: string
|
|
2749
|
-
patch:
|
|
2750
|
-
operationId: conversations_by_id_hostaccess_patch
|
|
2751
|
-
summary: Update conversation host access
|
|
2752
|
-
description: Enable or disable host access for a conversation.
|
|
3473
|
+
/v1/conversations/{id}/inference-profile:
|
|
3474
|
+
put:
|
|
3475
|
+
operationId: conversations_by_id_inferenceprofile_put
|
|
3476
|
+
summary: Set conversation inference profile
|
|
3477
|
+
description: Override the LLM inference profile for a single conversation.
|
|
2753
3478
|
tags:
|
|
2754
3479
|
- conversations
|
|
2755
3480
|
responses:
|
|
@@ -2762,11 +3487,13 @@ paths:
|
|
|
2762
3487
|
properties:
|
|
2763
3488
|
conversationId:
|
|
2764
3489
|
type: string
|
|
2765
|
-
|
|
2766
|
-
|
|
3490
|
+
profile:
|
|
3491
|
+
anyOf:
|
|
3492
|
+
- type: string
|
|
3493
|
+
- type: "null"
|
|
2767
3494
|
required:
|
|
2768
3495
|
- conversationId
|
|
2769
|
-
-
|
|
3496
|
+
- profile
|
|
2770
3497
|
additionalProperties: false
|
|
2771
3498
|
parameters:
|
|
2772
3499
|
- name: id
|
|
@@ -2781,10 +3508,12 @@ paths:
|
|
|
2781
3508
|
schema:
|
|
2782
3509
|
type: object
|
|
2783
3510
|
properties:
|
|
2784
|
-
|
|
2785
|
-
|
|
3511
|
+
profile:
|
|
3512
|
+
anyOf:
|
|
3513
|
+
- type: string
|
|
3514
|
+
- type: "null"
|
|
2786
3515
|
required:
|
|
2787
|
-
-
|
|
3516
|
+
- profile
|
|
2788
3517
|
additionalProperties: false
|
|
2789
3518
|
/v1/conversations/{id}/name:
|
|
2790
3519
|
patch:
|
|
@@ -2898,7 +3627,7 @@ paths:
|
|
|
2898
3627
|
tags:
|
|
2899
3628
|
- conversations
|
|
2900
3629
|
responses:
|
|
2901
|
-
"
|
|
3630
|
+
"202":
|
|
2902
3631
|
description: Successful response
|
|
2903
3632
|
parameters:
|
|
2904
3633
|
- name: id
|
|
@@ -3075,6 +3804,33 @@ paths:
|
|
|
3075
3804
|
required:
|
|
3076
3805
|
- conversationId
|
|
3077
3806
|
additionalProperties: false
|
|
3807
|
+
/v1/conversations/rename:
|
|
3808
|
+
post:
|
|
3809
|
+
operationId: conversations_rename_post
|
|
3810
|
+
summary: Rename a conversation
|
|
3811
|
+
description: Update the display title of a conversation.
|
|
3812
|
+
tags:
|
|
3813
|
+
- conversations
|
|
3814
|
+
responses:
|
|
3815
|
+
"200":
|
|
3816
|
+
description: Successful response
|
|
3817
|
+
requestBody:
|
|
3818
|
+
required: true
|
|
3819
|
+
content:
|
|
3820
|
+
application/json:
|
|
3821
|
+
schema:
|
|
3822
|
+
type: object
|
|
3823
|
+
properties:
|
|
3824
|
+
conversationId:
|
|
3825
|
+
type: string
|
|
3826
|
+
minLength: 1
|
|
3827
|
+
title:
|
|
3828
|
+
type: string
|
|
3829
|
+
minLength: 1
|
|
3830
|
+
required:
|
|
3831
|
+
- conversationId
|
|
3832
|
+
- title
|
|
3833
|
+
additionalProperties: false
|
|
3078
3834
|
/v1/conversations/reorder:
|
|
3079
3835
|
post:
|
|
3080
3836
|
operationId: conversations_reorder_post
|
|
@@ -3123,9 +3879,32 @@ paths:
|
|
|
3123
3879
|
- query
|
|
3124
3880
|
- results
|
|
3125
3881
|
additionalProperties: false
|
|
3882
|
+
parameters:
|
|
3883
|
+
- name: q
|
|
3884
|
+
in: query
|
|
3885
|
+
required: true
|
|
3886
|
+
schema:
|
|
3887
|
+
type: string
|
|
3888
|
+
description: Search query
|
|
3889
|
+
- name: limit
|
|
3890
|
+
in: query
|
|
3891
|
+
required: false
|
|
3892
|
+
schema:
|
|
3893
|
+
type: integer
|
|
3894
|
+
description: Max results
|
|
3895
|
+
- name: maxMessagesPerConversation
|
|
3896
|
+
in: query
|
|
3897
|
+
required: false
|
|
3898
|
+
schema:
|
|
3899
|
+
type: integer
|
|
3900
|
+
description: Max messages per conversation
|
|
3126
3901
|
/v1/conversations/seen:
|
|
3127
3902
|
post:
|
|
3128
3903
|
operationId: conversations_seen_post
|
|
3904
|
+
summary: Record a seen signal
|
|
3905
|
+
description: Mark a conversation as seen, advancing the attention cursor.
|
|
3906
|
+
tags:
|
|
3907
|
+
- conversations
|
|
3129
3908
|
responses:
|
|
3130
3909
|
"200":
|
|
3131
3910
|
description: Successful response
|
|
@@ -3150,13 +3929,12 @@ paths:
|
|
|
3150
3929
|
type: string
|
|
3151
3930
|
conversationType:
|
|
3152
3931
|
type: string
|
|
3153
|
-
|
|
3154
|
-
type:
|
|
3932
|
+
inferenceProfile:
|
|
3933
|
+
type: string
|
|
3155
3934
|
required:
|
|
3156
3935
|
- conversationId
|
|
3157
3936
|
- title
|
|
3158
3937
|
- conversationType
|
|
3159
|
-
- hostAccess
|
|
3160
3938
|
additionalProperties: false
|
|
3161
3939
|
requestBody:
|
|
3162
3940
|
required: true
|
|
@@ -3176,9 +3954,183 @@ paths:
|
|
|
3176
3954
|
/v1/conversations/unread:
|
|
3177
3955
|
post:
|
|
3178
3956
|
operationId: conversations_unread_post
|
|
3957
|
+
summary: Mark conversation unread
|
|
3958
|
+
description: Reset the seen cursor so the conversation appears unread.
|
|
3959
|
+
tags:
|
|
3960
|
+
- conversations
|
|
3961
|
+
responses:
|
|
3962
|
+
"200":
|
|
3963
|
+
description: Successful response
|
|
3964
|
+
/v1/conversations/wake:
|
|
3965
|
+
post:
|
|
3966
|
+
operationId: conversations_wake_post
|
|
3967
|
+
summary: Wake a conversation
|
|
3968
|
+
description: Invoke the agent loop for a conversation with an opportunity hint.
|
|
3969
|
+
tags:
|
|
3970
|
+
- conversations
|
|
3971
|
+
responses:
|
|
3972
|
+
"200":
|
|
3973
|
+
description: Successful response
|
|
3974
|
+
content:
|
|
3975
|
+
application/json:
|
|
3976
|
+
schema:
|
|
3977
|
+
type: object
|
|
3978
|
+
properties:
|
|
3979
|
+
invoked:
|
|
3980
|
+
type: boolean
|
|
3981
|
+
producedToolCalls:
|
|
3982
|
+
type: boolean
|
|
3983
|
+
reason:
|
|
3984
|
+
type: string
|
|
3985
|
+
required:
|
|
3986
|
+
- invoked
|
|
3987
|
+
- producedToolCalls
|
|
3988
|
+
additionalProperties: false
|
|
3989
|
+
requestBody:
|
|
3990
|
+
required: true
|
|
3991
|
+
content:
|
|
3992
|
+
application/json:
|
|
3993
|
+
schema:
|
|
3994
|
+
type: object
|
|
3995
|
+
properties:
|
|
3996
|
+
conversationId:
|
|
3997
|
+
type: string
|
|
3998
|
+
minLength: 1
|
|
3999
|
+
hint:
|
|
4000
|
+
type: string
|
|
4001
|
+
minLength: 1
|
|
4002
|
+
source:
|
|
4003
|
+
default: cli
|
|
4004
|
+
type: string
|
|
4005
|
+
required:
|
|
4006
|
+
- conversationId
|
|
4007
|
+
- hint
|
|
4008
|
+
- source
|
|
4009
|
+
additionalProperties: false
|
|
4010
|
+
/v1/conversations/wipe:
|
|
4011
|
+
post:
|
|
4012
|
+
operationId: conversations_wipe_post
|
|
4013
|
+
summary: Wipe a conversation
|
|
4014
|
+
description: Permanently delete a conversation and its associated data including memory vectors.
|
|
4015
|
+
tags:
|
|
4016
|
+
- conversations
|
|
4017
|
+
responses:
|
|
4018
|
+
"200":
|
|
4019
|
+
description: Successful response
|
|
4020
|
+
content:
|
|
4021
|
+
application/json:
|
|
4022
|
+
schema:
|
|
4023
|
+
type: object
|
|
4024
|
+
properties:
|
|
4025
|
+
wiped:
|
|
4026
|
+
type: boolean
|
|
4027
|
+
unsupersededItems:
|
|
4028
|
+
type: number
|
|
4029
|
+
deletedSummaries:
|
|
4030
|
+
type: number
|
|
4031
|
+
cancelledJobs:
|
|
4032
|
+
type: number
|
|
4033
|
+
required:
|
|
4034
|
+
- wiped
|
|
4035
|
+
- unsupersededItems
|
|
4036
|
+
- deletedSummaries
|
|
4037
|
+
- cancelledJobs
|
|
4038
|
+
additionalProperties: false
|
|
4039
|
+
requestBody:
|
|
4040
|
+
required: true
|
|
4041
|
+
content:
|
|
4042
|
+
application/json:
|
|
4043
|
+
schema:
|
|
4044
|
+
type: object
|
|
4045
|
+
properties:
|
|
4046
|
+
conversationId:
|
|
4047
|
+
type: string
|
|
4048
|
+
minLength: 1
|
|
4049
|
+
required:
|
|
4050
|
+
- conversationId
|
|
4051
|
+
additionalProperties: false
|
|
4052
|
+
/v1/credentials/prompt:
|
|
4053
|
+
post:
|
|
4054
|
+
operationId: credentials_prompt_post
|
|
4055
|
+
summary: Prompt user for a credential
|
|
4056
|
+
description: Trigger a secure input prompt in the user's app to collect a credential value.
|
|
4057
|
+
tags:
|
|
4058
|
+
- credentials
|
|
3179
4059
|
responses:
|
|
3180
4060
|
"200":
|
|
3181
4061
|
description: Successful response
|
|
4062
|
+
content:
|
|
4063
|
+
application/json:
|
|
4064
|
+
schema:
|
|
4065
|
+
type: object
|
|
4066
|
+
properties:
|
|
4067
|
+
ok:
|
|
4068
|
+
type: boolean
|
|
4069
|
+
error:
|
|
4070
|
+
type: string
|
|
4071
|
+
service:
|
|
4072
|
+
type: string
|
|
4073
|
+
field:
|
|
4074
|
+
type: string
|
|
4075
|
+
required:
|
|
4076
|
+
- ok
|
|
4077
|
+
additionalProperties: false
|
|
4078
|
+
requestBody:
|
|
4079
|
+
required: true
|
|
4080
|
+
content:
|
|
4081
|
+
application/json:
|
|
4082
|
+
schema:
|
|
4083
|
+
type: object
|
|
4084
|
+
properties:
|
|
4085
|
+
service:
|
|
4086
|
+
type: string
|
|
4087
|
+
minLength: 1
|
|
4088
|
+
field:
|
|
4089
|
+
type: string
|
|
4090
|
+
minLength: 1
|
|
4091
|
+
label:
|
|
4092
|
+
type: string
|
|
4093
|
+
minLength: 1
|
|
4094
|
+
description:
|
|
4095
|
+
type: string
|
|
4096
|
+
placeholder:
|
|
4097
|
+
type: string
|
|
4098
|
+
allowedDomains:
|
|
4099
|
+
type: array
|
|
4100
|
+
items:
|
|
4101
|
+
type: string
|
|
4102
|
+
allowedTools:
|
|
4103
|
+
type: array
|
|
4104
|
+
items:
|
|
4105
|
+
type: string
|
|
4106
|
+
injectionTemplates:
|
|
4107
|
+
type: array
|
|
4108
|
+
items:
|
|
4109
|
+
type: object
|
|
4110
|
+
properties:
|
|
4111
|
+
hostPattern:
|
|
4112
|
+
type: string
|
|
4113
|
+
minLength: 1
|
|
4114
|
+
injectionType:
|
|
4115
|
+
type: string
|
|
4116
|
+
enum:
|
|
4117
|
+
- header
|
|
4118
|
+
- query
|
|
4119
|
+
headerName:
|
|
4120
|
+
type: string
|
|
4121
|
+
valuePrefix:
|
|
4122
|
+
type: string
|
|
4123
|
+
queryParamName:
|
|
4124
|
+
type: string
|
|
4125
|
+
required:
|
|
4126
|
+
- hostPattern
|
|
4127
|
+
- injectionType
|
|
4128
|
+
additionalProperties: false
|
|
4129
|
+
required:
|
|
4130
|
+
- service
|
|
4131
|
+
- field
|
|
4132
|
+
- label
|
|
4133
|
+
additionalProperties: false
|
|
3182
4134
|
/v1/debug:
|
|
3183
4135
|
get:
|
|
3184
4136
|
operationId: debug_get
|
|
@@ -3230,23 +4182,13 @@ paths:
|
|
|
3230
4182
|
- schedules
|
|
3231
4183
|
- timestamp
|
|
3232
4184
|
additionalProperties: false
|
|
3233
|
-
/v1/
|
|
3234
|
-
get:
|
|
3235
|
-
operationId: diagnostics_envvars_get
|
|
3236
|
-
summary: List safe environment variables
|
|
3237
|
-
description: Return environment variable names and values that are safe to expose (no secrets).
|
|
3238
|
-
tags:
|
|
3239
|
-
- diagnostics
|
|
3240
|
-
responses:
|
|
3241
|
-
"200":
|
|
3242
|
-
description: Successful response
|
|
3243
|
-
/v1/dictation:
|
|
4185
|
+
/v1/defer/cancel:
|
|
3244
4186
|
post:
|
|
3245
|
-
operationId:
|
|
3246
|
-
summary:
|
|
3247
|
-
description:
|
|
4187
|
+
operationId: defer_cancel_post
|
|
4188
|
+
summary: Cancel deferred wakes
|
|
4189
|
+
description: Cancel a specific deferred wake by ID, or all defers for a conversation.
|
|
3248
4190
|
tags:
|
|
3249
|
-
-
|
|
4191
|
+
- defer
|
|
3250
4192
|
responses:
|
|
3251
4193
|
"200":
|
|
3252
4194
|
description: Successful response
|
|
@@ -3255,27 +4197,12 @@ paths:
|
|
|
3255
4197
|
schema:
|
|
3256
4198
|
type: object
|
|
3257
4199
|
properties:
|
|
3258
|
-
|
|
3259
|
-
type:
|
|
3260
|
-
|
|
3261
|
-
mode:
|
|
3262
|
-
type: string
|
|
3263
|
-
description: "Detected mode: dictation, command, or action"
|
|
3264
|
-
actionPlan:
|
|
3265
|
-
type: string
|
|
3266
|
-
description: Action plan (only when mode is action)
|
|
3267
|
-
resolvedProfileId:
|
|
3268
|
-
type: string
|
|
3269
|
-
description: Resolved dictation profile ID
|
|
3270
|
-
profileSource:
|
|
4200
|
+
cancelled:
|
|
4201
|
+
type: number
|
|
4202
|
+
error:
|
|
3271
4203
|
type: string
|
|
3272
|
-
description: How the profile was resolved
|
|
3273
4204
|
required:
|
|
3274
|
-
-
|
|
3275
|
-
- mode
|
|
3276
|
-
- actionPlan
|
|
3277
|
-
- resolvedProfileId
|
|
3278
|
-
- profileSource
|
|
4205
|
+
- cancelled
|
|
3279
4206
|
additionalProperties: false
|
|
3280
4207
|
requestBody:
|
|
3281
4208
|
required: true
|
|
@@ -3284,25 +4211,191 @@ paths:
|
|
|
3284
4211
|
schema:
|
|
3285
4212
|
type: object
|
|
3286
4213
|
properties:
|
|
3287
|
-
|
|
4214
|
+
id:
|
|
3288
4215
|
type: string
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
properties: {}
|
|
3293
|
-
additionalProperties: {}
|
|
3294
|
-
description: Dictation context (app name, window title, bundle ID, cursor state, selected text)
|
|
3295
|
-
profileId:
|
|
4216
|
+
all:
|
|
4217
|
+
type: boolean
|
|
4218
|
+
conversationId:
|
|
3296
4219
|
type: string
|
|
3297
|
-
description: Optional dictation profile ID
|
|
3298
|
-
required:
|
|
3299
|
-
- transcription
|
|
3300
|
-
- context
|
|
3301
4220
|
additionalProperties: false
|
|
3302
|
-
/v1/
|
|
3303
|
-
|
|
3304
|
-
operationId:
|
|
3305
|
-
summary:
|
|
4221
|
+
/v1/defer/create:
|
|
4222
|
+
post:
|
|
4223
|
+
operationId: defer_create_post
|
|
4224
|
+
summary: Create a deferred wake
|
|
4225
|
+
description: Schedule a future wake-up on a conversation, optionally with a delay or absolute timestamp.
|
|
4226
|
+
tags:
|
|
4227
|
+
- defer
|
|
4228
|
+
responses:
|
|
4229
|
+
"200":
|
|
4230
|
+
description: Successful response
|
|
4231
|
+
content:
|
|
4232
|
+
application/json:
|
|
4233
|
+
schema:
|
|
4234
|
+
type: object
|
|
4235
|
+
properties:
|
|
4236
|
+
id:
|
|
4237
|
+
type: string
|
|
4238
|
+
name:
|
|
4239
|
+
type: string
|
|
4240
|
+
fireAt:
|
|
4241
|
+
type: number
|
|
4242
|
+
conversationId:
|
|
4243
|
+
type: string
|
|
4244
|
+
required:
|
|
4245
|
+
- id
|
|
4246
|
+
- name
|
|
4247
|
+
- fireAt
|
|
4248
|
+
- conversationId
|
|
4249
|
+
additionalProperties: false
|
|
4250
|
+
requestBody:
|
|
4251
|
+
required: true
|
|
4252
|
+
content:
|
|
4253
|
+
application/json:
|
|
4254
|
+
schema:
|
|
4255
|
+
type: object
|
|
4256
|
+
properties:
|
|
4257
|
+
conversationId:
|
|
4258
|
+
type: string
|
|
4259
|
+
minLength: 1
|
|
4260
|
+
hint:
|
|
4261
|
+
type: string
|
|
4262
|
+
minLength: 1
|
|
4263
|
+
delaySeconds:
|
|
4264
|
+
type: number
|
|
4265
|
+
fireAt:
|
|
4266
|
+
type: number
|
|
4267
|
+
name:
|
|
4268
|
+
type: string
|
|
4269
|
+
required:
|
|
4270
|
+
- conversationId
|
|
4271
|
+
- hint
|
|
4272
|
+
additionalProperties: false
|
|
4273
|
+
/v1/defer/list:
|
|
4274
|
+
post:
|
|
4275
|
+
operationId: defer_list_post
|
|
4276
|
+
summary: List active deferred wakes
|
|
4277
|
+
description: List all active deferred wakes, optionally filtered by conversation.
|
|
4278
|
+
tags:
|
|
4279
|
+
- defer
|
|
4280
|
+
responses:
|
|
4281
|
+
"200":
|
|
4282
|
+
description: Successful response
|
|
4283
|
+
content:
|
|
4284
|
+
application/json:
|
|
4285
|
+
schema:
|
|
4286
|
+
type: object
|
|
4287
|
+
properties:
|
|
4288
|
+
defers:
|
|
4289
|
+
type: array
|
|
4290
|
+
items:
|
|
4291
|
+
type: object
|
|
4292
|
+
properties:
|
|
4293
|
+
id:
|
|
4294
|
+
type: string
|
|
4295
|
+
name:
|
|
4296
|
+
type: string
|
|
4297
|
+
hint:
|
|
4298
|
+
type: string
|
|
4299
|
+
conversationId:
|
|
4300
|
+
type: string
|
|
4301
|
+
fireAt:
|
|
4302
|
+
type: number
|
|
4303
|
+
status:
|
|
4304
|
+
type: string
|
|
4305
|
+
required:
|
|
4306
|
+
- id
|
|
4307
|
+
- name
|
|
4308
|
+
- hint
|
|
4309
|
+
- conversationId
|
|
4310
|
+
- fireAt
|
|
4311
|
+
- status
|
|
4312
|
+
additionalProperties: false
|
|
4313
|
+
required:
|
|
4314
|
+
- defers
|
|
4315
|
+
additionalProperties: false
|
|
4316
|
+
requestBody:
|
|
4317
|
+
required: true
|
|
4318
|
+
content:
|
|
4319
|
+
application/json:
|
|
4320
|
+
schema:
|
|
4321
|
+
type: object
|
|
4322
|
+
properties:
|
|
4323
|
+
conversationId:
|
|
4324
|
+
type: string
|
|
4325
|
+
additionalProperties: false
|
|
4326
|
+
/v1/diagnostics/env-vars:
|
|
4327
|
+
get:
|
|
4328
|
+
operationId: diagnostics_envvars_get
|
|
4329
|
+
summary: List safe environment variables
|
|
4330
|
+
description: Return environment variable names and values that are safe to expose (no secrets).
|
|
4331
|
+
tags:
|
|
4332
|
+
- diagnostics
|
|
4333
|
+
responses:
|
|
4334
|
+
"200":
|
|
4335
|
+
description: Successful response
|
|
4336
|
+
/v1/dictation:
|
|
4337
|
+
post:
|
|
4338
|
+
operationId: dictation_post
|
|
4339
|
+
summary: Process dictation
|
|
4340
|
+
description: Classify voice input as dictation or action, clean up text, and apply user style preferences.
|
|
4341
|
+
tags:
|
|
4342
|
+
- diagnostics
|
|
4343
|
+
responses:
|
|
4344
|
+
"200":
|
|
4345
|
+
description: Successful response
|
|
4346
|
+
content:
|
|
4347
|
+
application/json:
|
|
4348
|
+
schema:
|
|
4349
|
+
type: object
|
|
4350
|
+
properties:
|
|
4351
|
+
text:
|
|
4352
|
+
type: string
|
|
4353
|
+
description: Processed text output
|
|
4354
|
+
mode:
|
|
4355
|
+
type: string
|
|
4356
|
+
description: "Detected mode: dictation, command, or action"
|
|
4357
|
+
actionPlan:
|
|
4358
|
+
type: string
|
|
4359
|
+
description: Action plan (only when mode is action)
|
|
4360
|
+
resolvedProfileId:
|
|
4361
|
+
type: string
|
|
4362
|
+
description: Resolved dictation profile ID
|
|
4363
|
+
profileSource:
|
|
4364
|
+
type: string
|
|
4365
|
+
description: How the profile was resolved
|
|
4366
|
+
required:
|
|
4367
|
+
- text
|
|
4368
|
+
- mode
|
|
4369
|
+
- actionPlan
|
|
4370
|
+
- resolvedProfileId
|
|
4371
|
+
- profileSource
|
|
4372
|
+
additionalProperties: false
|
|
4373
|
+
requestBody:
|
|
4374
|
+
required: true
|
|
4375
|
+
content:
|
|
4376
|
+
application/json:
|
|
4377
|
+
schema:
|
|
4378
|
+
type: object
|
|
4379
|
+
properties:
|
|
4380
|
+
transcription:
|
|
4381
|
+
type: string
|
|
4382
|
+
description: Raw speech transcription
|
|
4383
|
+
context:
|
|
4384
|
+
type: object
|
|
4385
|
+
properties: {}
|
|
4386
|
+
additionalProperties: {}
|
|
4387
|
+
description: Dictation context (app name, window title, bundle ID, cursor state, selected text)
|
|
4388
|
+
profileId:
|
|
4389
|
+
type: string
|
|
4390
|
+
description: Optional dictation profile ID
|
|
4391
|
+
required:
|
|
4392
|
+
- transcription
|
|
4393
|
+
- context
|
|
4394
|
+
additionalProperties: false
|
|
4395
|
+
/v1/documents:
|
|
4396
|
+
get:
|
|
4397
|
+
operationId: documents_get
|
|
4398
|
+
summary: List documents
|
|
3306
4399
|
description: Return all documents, optionally filtered by conversation.
|
|
3307
4400
|
tags:
|
|
3308
4401
|
- documents
|
|
@@ -3344,6 +4437,7 @@ paths:
|
|
|
3344
4437
|
properties:
|
|
3345
4438
|
success:
|
|
3346
4439
|
type: boolean
|
|
4440
|
+
const: true
|
|
3347
4441
|
surfaceId:
|
|
3348
4442
|
type: string
|
|
3349
4443
|
required:
|
|
@@ -3453,6 +4547,8 @@ paths:
|
|
|
3453
4547
|
responses:
|
|
3454
4548
|
"200":
|
|
3455
4549
|
description: Successful response
|
|
4550
|
+
"500":
|
|
4551
|
+
description: Failed to create archive
|
|
3456
4552
|
requestBody:
|
|
3457
4553
|
required: true
|
|
3458
4554
|
content:
|
|
@@ -3469,9 +4565,7 @@ paths:
|
|
|
3469
4565
|
description: Scope to a single conversation
|
|
3470
4566
|
type: string
|
|
3471
4567
|
full:
|
|
3472
|
-
description:
|
|
3473
|
-
Full export — include messages, LLM request logs, and usage events for all conversations. Use for test data
|
|
3474
|
-
debugging.
|
|
4568
|
+
description: Full export — include messages, LLM request logs, and usage events for all conversations.
|
|
3475
4569
|
type: boolean
|
|
3476
4570
|
startTime:
|
|
3477
4571
|
description: Lower bound epoch ms
|
|
@@ -3495,6 +4589,8 @@ paths:
|
|
|
3495
4589
|
schema:
|
|
3496
4590
|
type: object
|
|
3497
4591
|
properties:
|
|
4592
|
+
available:
|
|
4593
|
+
type: boolean
|
|
3498
4594
|
enabled:
|
|
3499
4595
|
type: boolean
|
|
3500
4596
|
intervalMs:
|
|
@@ -3518,6 +4614,7 @@ paths:
|
|
|
3518
4614
|
success:
|
|
3519
4615
|
type: boolean
|
|
3520
4616
|
required:
|
|
4617
|
+
- available
|
|
3521
4618
|
- enabled
|
|
3522
4619
|
- intervalMs
|
|
3523
4620
|
- activeHoursStart
|
|
@@ -3567,8 +4664,10 @@ paths:
|
|
|
3567
4664
|
tags:
|
|
3568
4665
|
- groups
|
|
3569
4666
|
responses:
|
|
3570
|
-
"
|
|
4667
|
+
"201":
|
|
3571
4668
|
description: Successful response
|
|
4669
|
+
"400":
|
|
4670
|
+
description: Missing or invalid name, or sort_position ceiling reached
|
|
3572
4671
|
requestBody:
|
|
3573
4672
|
required: true
|
|
3574
4673
|
content:
|
|
@@ -3590,8 +4689,12 @@ paths:
|
|
|
3590
4689
|
tags:
|
|
3591
4690
|
- groups
|
|
3592
4691
|
responses:
|
|
3593
|
-
"
|
|
4692
|
+
"204":
|
|
3594
4693
|
description: Successful response
|
|
4694
|
+
"403":
|
|
4695
|
+
description: System groups cannot be deleted
|
|
4696
|
+
"404":
|
|
4697
|
+
description: Group not found
|
|
3595
4698
|
parameters:
|
|
3596
4699
|
- name: groupId
|
|
3597
4700
|
in: path
|
|
@@ -3607,6 +4710,10 @@ paths:
|
|
|
3607
4710
|
responses:
|
|
3608
4711
|
"200":
|
|
3609
4712
|
description: Successful response
|
|
4713
|
+
"403":
|
|
4714
|
+
description: System group sort position cannot be changed
|
|
4715
|
+
"404":
|
|
4716
|
+
description: Group not found
|
|
3610
4717
|
parameters:
|
|
3611
4718
|
- name: groupId
|
|
3612
4719
|
in: path
|
|
@@ -3635,6 +4742,8 @@ paths:
|
|
|
3635
4742
|
responses:
|
|
3636
4743
|
"200":
|
|
3637
4744
|
description: Successful response
|
|
4745
|
+
"403":
|
|
4746
|
+
description: Cannot reorder system groups
|
|
3638
4747
|
requestBody:
|
|
3639
4748
|
required: true
|
|
3640
4749
|
content:
|
|
@@ -3740,18 +4849,6 @@ paths:
|
|
|
3740
4849
|
schema:
|
|
3741
4850
|
type: string
|
|
3742
4851
|
description: Conversation ID (required)
|
|
3743
|
-
/v1/guardian/init:
|
|
3744
|
-
post:
|
|
3745
|
-
operationId: guardian_init_post
|
|
3746
|
-
responses:
|
|
3747
|
-
"200":
|
|
3748
|
-
description: Successful response
|
|
3749
|
-
/v1/guardian/refresh:
|
|
3750
|
-
post:
|
|
3751
|
-
operationId: guardian_refresh_post
|
|
3752
|
-
responses:
|
|
3753
|
-
"200":
|
|
3754
|
-
description: Successful response
|
|
3755
4852
|
/v1/health:
|
|
3756
4853
|
get:
|
|
3757
4854
|
operationId: health_get
|
|
@@ -4071,11 +5168,21 @@ paths:
|
|
|
4071
5168
|
intervalMs:
|
|
4072
5169
|
type: number
|
|
4073
5170
|
activeHoursStart:
|
|
4074
|
-
|
|
5171
|
+
anyOf:
|
|
5172
|
+
- type: number
|
|
5173
|
+
- type: "null"
|
|
4075
5174
|
activeHoursEnd:
|
|
4076
|
-
|
|
5175
|
+
anyOf:
|
|
5176
|
+
- type: number
|
|
5177
|
+
- type: "null"
|
|
4077
5178
|
nextRunAt:
|
|
4078
|
-
|
|
5179
|
+
anyOf:
|
|
5180
|
+
- type: number
|
|
5181
|
+
- type: "null"
|
|
5182
|
+
lastRunAt:
|
|
5183
|
+
anyOf:
|
|
5184
|
+
- type: number
|
|
5185
|
+
- type: "null"
|
|
4079
5186
|
success:
|
|
4080
5187
|
type: boolean
|
|
4081
5188
|
required:
|
|
@@ -4084,6 +5191,7 @@ paths:
|
|
|
4084
5191
|
- activeHoursStart
|
|
4085
5192
|
- activeHoursEnd
|
|
4086
5193
|
- nextRunAt
|
|
5194
|
+
- lastRunAt
|
|
4087
5195
|
- success
|
|
4088
5196
|
additionalProperties: false
|
|
4089
5197
|
put:
|
|
@@ -4105,11 +5213,21 @@ paths:
|
|
|
4105
5213
|
intervalMs:
|
|
4106
5214
|
type: number
|
|
4107
5215
|
activeHoursStart:
|
|
4108
|
-
|
|
5216
|
+
anyOf:
|
|
5217
|
+
- type: number
|
|
5218
|
+
- type: "null"
|
|
4109
5219
|
activeHoursEnd:
|
|
4110
|
-
|
|
5220
|
+
anyOf:
|
|
5221
|
+
- type: number
|
|
5222
|
+
- type: "null"
|
|
4111
5223
|
nextRunAt:
|
|
4112
|
-
|
|
5224
|
+
anyOf:
|
|
5225
|
+
- type: number
|
|
5226
|
+
- type: "null"
|
|
5227
|
+
lastRunAt:
|
|
5228
|
+
anyOf:
|
|
5229
|
+
- type: number
|
|
5230
|
+
- type: "null"
|
|
4113
5231
|
success:
|
|
4114
5232
|
type: boolean
|
|
4115
5233
|
required:
|
|
@@ -4118,6 +5236,7 @@ paths:
|
|
|
4118
5236
|
- activeHoursStart
|
|
4119
5237
|
- activeHoursEnd
|
|
4120
5238
|
- nextRunAt
|
|
5239
|
+
- lastRunAt
|
|
4121
5240
|
- success
|
|
4122
5241
|
additionalProperties: false
|
|
4123
5242
|
requestBody:
|
|
@@ -4197,7 +5316,7 @@ paths:
|
|
|
4197
5316
|
required: false
|
|
4198
5317
|
schema:
|
|
4199
5318
|
type: integer
|
|
4200
|
-
description: Max runs to return (default 20)
|
|
5319
|
+
description: Max runs to return (default 20, max 100)
|
|
4201
5320
|
/v1/home/feed:
|
|
4202
5321
|
get:
|
|
4203
5322
|
operationId: home_feed_get
|
|
@@ -4508,6 +5627,10 @@ paths:
|
|
|
4508
5627
|
- author
|
|
4509
5628
|
- createdAt
|
|
4510
5629
|
additionalProperties: false
|
|
5630
|
+
"404":
|
|
5631
|
+
description: Feed item not found
|
|
5632
|
+
"500":
|
|
5633
|
+
description: Failed to persist feed item status
|
|
4511
5634
|
parameters:
|
|
4512
5635
|
- name: id
|
|
4513
5636
|
in: path
|
|
@@ -4553,6 +5676,10 @@ paths:
|
|
|
4553
5676
|
required:
|
|
4554
5677
|
- conversationId
|
|
4555
5678
|
additionalProperties: false
|
|
5679
|
+
"404":
|
|
5680
|
+
description: Feed item or action not found
|
|
5681
|
+
"500":
|
|
5682
|
+
description: Failed to create conversation
|
|
4556
5683
|
parameters:
|
|
4557
5684
|
- name: id
|
|
4558
5685
|
in: path
|
|
@@ -4682,6 +5809,8 @@ paths:
|
|
|
4682
5809
|
- assistantName
|
|
4683
5810
|
- updatedAt
|
|
4684
5811
|
additionalProperties: false
|
|
5812
|
+
"500":
|
|
5813
|
+
description: Failed to compute relationship state
|
|
4685
5814
|
/v1/host-bash-result:
|
|
4686
5815
|
post:
|
|
4687
5816
|
operationId: hostbashresult_post
|
|
@@ -4860,6 +5989,45 @@ paths:
|
|
|
4860
5989
|
required:
|
|
4861
5990
|
- requestId
|
|
4862
5991
|
additionalProperties: false
|
|
5992
|
+
/v1/host-transfer-result:
|
|
5993
|
+
post:
|
|
5994
|
+
operationId: hosttransferresult_post
|
|
5995
|
+
summary: Submit host transfer result
|
|
5996
|
+
description: Resolve a pending to_host transfer after the client has downloaded and written the file.
|
|
5997
|
+
tags:
|
|
5998
|
+
- host-transfer
|
|
5999
|
+
responses:
|
|
6000
|
+
"200":
|
|
6001
|
+
description: Successful response
|
|
6002
|
+
content:
|
|
6003
|
+
application/json:
|
|
6004
|
+
schema:
|
|
6005
|
+
type: object
|
|
6006
|
+
properties:
|
|
6007
|
+
accepted:
|
|
6008
|
+
type: boolean
|
|
6009
|
+
required:
|
|
6010
|
+
- accepted
|
|
6011
|
+
additionalProperties: false
|
|
6012
|
+
requestBody:
|
|
6013
|
+
required: true
|
|
6014
|
+
content:
|
|
6015
|
+
application/json:
|
|
6016
|
+
schema:
|
|
6017
|
+
type: object
|
|
6018
|
+
properties:
|
|
6019
|
+
requestId:
|
|
6020
|
+
type: string
|
|
6021
|
+
description: Pending transfer request ID
|
|
6022
|
+
isError:
|
|
6023
|
+
type: boolean
|
|
6024
|
+
bytesWritten:
|
|
6025
|
+
type: number
|
|
6026
|
+
errorMessage:
|
|
6027
|
+
type: string
|
|
6028
|
+
required:
|
|
6029
|
+
- requestId
|
|
6030
|
+
additionalProperties: false
|
|
4863
6031
|
/v1/identity:
|
|
4864
6032
|
get:
|
|
4865
6033
|
operationId: identity_get
|
|
@@ -4948,6 +6116,8 @@ paths:
|
|
|
4948
6116
|
type: string
|
|
4949
6117
|
localGatewayTarget:
|
|
4950
6118
|
type: string
|
|
6119
|
+
managedCallbacks:
|
|
6120
|
+
type: boolean
|
|
4951
6121
|
success:
|
|
4952
6122
|
type: boolean
|
|
4953
6123
|
required:
|
|
@@ -5000,151 +6170,182 @@ paths:
|
|
|
5000
6170
|
/v1/integrations/slack/channel/config:
|
|
5001
6171
|
delete:
|
|
5002
6172
|
operationId: integrations_slack_channel_config_delete
|
|
6173
|
+
summary: Clear Slack channel config
|
|
6174
|
+
description: Clear stored Slack channel credentials.
|
|
5003
6175
|
tags:
|
|
5004
|
-
-
|
|
6176
|
+
- integrations
|
|
5005
6177
|
responses:
|
|
5006
6178
|
"200":
|
|
5007
6179
|
description: Successful response
|
|
5008
6180
|
get:
|
|
5009
6181
|
operationId: integrations_slack_channel_config_get
|
|
6182
|
+
summary: Get Slack channel config
|
|
6183
|
+
description: Check current Slack channel configuration status.
|
|
5010
6184
|
tags:
|
|
5011
|
-
-
|
|
6185
|
+
- integrations
|
|
5012
6186
|
responses:
|
|
5013
6187
|
"200":
|
|
5014
6188
|
description: Successful response
|
|
5015
6189
|
post:
|
|
5016
6190
|
operationId: integrations_slack_channel_config_post
|
|
6191
|
+
summary: Set Slack channel config
|
|
6192
|
+
description: Validate and store Slack channel credentials.
|
|
5017
6193
|
tags:
|
|
5018
|
-
-
|
|
5019
|
-
responses:
|
|
5020
|
-
"200":
|
|
5021
|
-
description: Successful response
|
|
5022
|
-
/v1/integrations/slack/channel/oauth-install:
|
|
5023
|
-
post:
|
|
5024
|
-
operationId: integrations_slack_channel_oauthinstall_post
|
|
5025
|
-
tags:
|
|
5026
|
-
- channel
|
|
6194
|
+
- integrations
|
|
5027
6195
|
responses:
|
|
5028
6196
|
"200":
|
|
5029
6197
|
description: Successful response
|
|
5030
6198
|
/v1/integrations/telegram/commands:
|
|
5031
6199
|
post:
|
|
5032
6200
|
operationId: integrations_telegram_commands_post
|
|
6201
|
+
summary: Register Telegram commands
|
|
6202
|
+
description: Register bot commands with the Telegram API.
|
|
5033
6203
|
tags:
|
|
5034
|
-
-
|
|
6204
|
+
- integrations
|
|
5035
6205
|
responses:
|
|
5036
6206
|
"200":
|
|
5037
6207
|
description: Successful response
|
|
5038
6208
|
/v1/integrations/telegram/config:
|
|
5039
6209
|
delete:
|
|
5040
6210
|
operationId: integrations_telegram_config_delete
|
|
6211
|
+
summary: Clear Telegram config
|
|
6212
|
+
description: Clear credentials and deregister webhook.
|
|
5041
6213
|
tags:
|
|
5042
|
-
-
|
|
6214
|
+
- integrations
|
|
5043
6215
|
responses:
|
|
5044
6216
|
"200":
|
|
5045
6217
|
description: Successful response
|
|
5046
6218
|
get:
|
|
5047
6219
|
operationId: integrations_telegram_config_get
|
|
6220
|
+
summary: Get Telegram config
|
|
6221
|
+
description: Check current Telegram bot configuration status.
|
|
5048
6222
|
tags:
|
|
5049
|
-
-
|
|
6223
|
+
- integrations
|
|
5050
6224
|
responses:
|
|
5051
6225
|
"200":
|
|
5052
6226
|
description: Successful response
|
|
5053
6227
|
post:
|
|
5054
6228
|
operationId: integrations_telegram_config_post
|
|
6229
|
+
summary: Set Telegram config
|
|
6230
|
+
description: Set bot token and configure webhook.
|
|
5055
6231
|
tags:
|
|
5056
|
-
-
|
|
6232
|
+
- integrations
|
|
5057
6233
|
responses:
|
|
5058
6234
|
"200":
|
|
5059
6235
|
description: Successful response
|
|
5060
6236
|
/v1/integrations/telegram/setup:
|
|
5061
6237
|
post:
|
|
5062
6238
|
operationId: integrations_telegram_setup_post
|
|
6239
|
+
summary: Setup Telegram
|
|
6240
|
+
description: "Composite: set config + register commands."
|
|
5063
6241
|
tags:
|
|
5064
|
-
-
|
|
6242
|
+
- integrations
|
|
5065
6243
|
responses:
|
|
5066
6244
|
"200":
|
|
5067
6245
|
description: Successful response
|
|
5068
6246
|
/v1/integrations/twilio/config:
|
|
5069
6247
|
get:
|
|
5070
6248
|
operationId: integrations_twilio_config_get
|
|
6249
|
+
summary: Get Twilio config
|
|
6250
|
+
description: Return current Twilio configuration status.
|
|
5071
6251
|
tags:
|
|
5072
|
-
-
|
|
6252
|
+
- integrations
|
|
5073
6253
|
responses:
|
|
5074
6254
|
"200":
|
|
5075
6255
|
description: Successful response
|
|
5076
6256
|
/v1/integrations/twilio/credentials:
|
|
5077
6257
|
delete:
|
|
5078
6258
|
operationId: integrations_twilio_credentials_delete
|
|
6259
|
+
summary: Clear Twilio credentials
|
|
6260
|
+
description: Remove stored Twilio credentials.
|
|
5079
6261
|
tags:
|
|
5080
|
-
-
|
|
6262
|
+
- integrations
|
|
5081
6263
|
responses:
|
|
5082
6264
|
"200":
|
|
5083
6265
|
description: Successful response
|
|
5084
6266
|
post:
|
|
5085
6267
|
operationId: integrations_twilio_credentials_post
|
|
6268
|
+
summary: Set Twilio credentials
|
|
6269
|
+
description: Validate and store Twilio account SID and auth token.
|
|
5086
6270
|
tags:
|
|
5087
|
-
-
|
|
6271
|
+
- integrations
|
|
5088
6272
|
responses:
|
|
5089
6273
|
"200":
|
|
5090
6274
|
description: Successful response
|
|
5091
6275
|
/v1/integrations/twilio/numbers:
|
|
5092
6276
|
get:
|
|
5093
6277
|
operationId: integrations_twilio_numbers_get
|
|
6278
|
+
summary: List Twilio numbers
|
|
6279
|
+
description: List phone numbers on the Twilio account.
|
|
5094
6280
|
tags:
|
|
5095
|
-
-
|
|
6281
|
+
- integrations
|
|
5096
6282
|
responses:
|
|
5097
6283
|
"200":
|
|
5098
6284
|
description: Successful response
|
|
5099
6285
|
/v1/integrations/twilio/numbers/assign:
|
|
5100
6286
|
post:
|
|
5101
6287
|
operationId: integrations_twilio_numbers_assign_post
|
|
6288
|
+
summary: Assign Twilio number
|
|
6289
|
+
description: Assign an existing phone number to this assistant.
|
|
5102
6290
|
tags:
|
|
5103
|
-
-
|
|
6291
|
+
- integrations
|
|
5104
6292
|
responses:
|
|
5105
6293
|
"200":
|
|
5106
6294
|
description: Successful response
|
|
5107
6295
|
/v1/integrations/twilio/numbers/provision:
|
|
5108
6296
|
post:
|
|
5109
6297
|
operationId: integrations_twilio_numbers_provision_post
|
|
6298
|
+
summary: Provision Twilio number
|
|
6299
|
+
description: Search for and provision a new phone number.
|
|
5110
6300
|
tags:
|
|
5111
|
-
-
|
|
6301
|
+
- integrations
|
|
5112
6302
|
responses:
|
|
5113
6303
|
"200":
|
|
5114
6304
|
description: Successful response
|
|
5115
6305
|
/v1/integrations/twilio/numbers/release:
|
|
5116
6306
|
post:
|
|
5117
6307
|
operationId: integrations_twilio_numbers_release_post
|
|
6308
|
+
summary: Release Twilio number
|
|
6309
|
+
description: Release a phone number back to Twilio.
|
|
5118
6310
|
tags:
|
|
5119
|
-
-
|
|
6311
|
+
- integrations
|
|
5120
6312
|
responses:
|
|
5121
6313
|
"200":
|
|
5122
6314
|
description: Successful response
|
|
5123
6315
|
/v1/integrations/vercel/config:
|
|
5124
6316
|
delete:
|
|
5125
6317
|
operationId: integrations_vercel_config_delete
|
|
6318
|
+
summary: Delete Vercel config
|
|
6319
|
+
description: Delete the stored Vercel API token.
|
|
5126
6320
|
tags:
|
|
5127
|
-
-
|
|
6321
|
+
- integrations
|
|
5128
6322
|
responses:
|
|
5129
6323
|
"200":
|
|
5130
6324
|
description: Successful response
|
|
5131
6325
|
get:
|
|
5132
6326
|
operationId: integrations_vercel_config_get
|
|
6327
|
+
summary: Get Vercel config
|
|
6328
|
+
description: Check if a Vercel API token is stored.
|
|
5133
6329
|
tags:
|
|
5134
|
-
-
|
|
6330
|
+
- integrations
|
|
5135
6331
|
responses:
|
|
5136
6332
|
"200":
|
|
5137
6333
|
description: Successful response
|
|
5138
6334
|
post:
|
|
5139
6335
|
operationId: integrations_vercel_config_post
|
|
6336
|
+
summary: Set or delete Vercel config
|
|
6337
|
+
description: Set or delete the Vercel API token. Action is determined by the body action field.
|
|
5140
6338
|
tags:
|
|
5141
|
-
-
|
|
6339
|
+
- integrations
|
|
5142
6340
|
responses:
|
|
5143
6341
|
"200":
|
|
5144
6342
|
description: Successful response
|
|
5145
6343
|
/v1/interfaces/{path}:
|
|
5146
6344
|
get:
|
|
5147
6345
|
operationId: interfaces_by_path_get
|
|
6346
|
+
summary: Serve an interface definition file
|
|
6347
|
+
tags:
|
|
6348
|
+
- interfaces
|
|
5148
6349
|
responses:
|
|
5149
6350
|
"200":
|
|
5150
6351
|
description: Successful response
|
|
@@ -5157,24 +6358,58 @@ paths:
|
|
|
5157
6358
|
/v1/internal/oauth/callback:
|
|
5158
6359
|
post:
|
|
5159
6360
|
operationId: internal_oauth_callback_post
|
|
6361
|
+
summary: Internal OAuth callback
|
|
6362
|
+
description:
|
|
6363
|
+
Receives forwarded OAuth callback results (code or error) from the gateway and resolves the pending
|
|
6364
|
+
callback in the runtime.
|
|
6365
|
+
tags:
|
|
6366
|
+
- internal
|
|
5160
6367
|
responses:
|
|
5161
6368
|
"200":
|
|
5162
6369
|
description: Successful response
|
|
6370
|
+
requestBody:
|
|
6371
|
+
required: true
|
|
6372
|
+
content:
|
|
6373
|
+
application/json:
|
|
6374
|
+
schema:
|
|
6375
|
+
type: object
|
|
6376
|
+
properties:
|
|
6377
|
+
state:
|
|
6378
|
+
type: string
|
|
6379
|
+
code:
|
|
6380
|
+
type: string
|
|
6381
|
+
error:
|
|
6382
|
+
type: string
|
|
6383
|
+
required:
|
|
6384
|
+
- state
|
|
6385
|
+
additionalProperties: false
|
|
5163
6386
|
/v1/internal/twilio/connect-action:
|
|
5164
6387
|
post:
|
|
5165
6388
|
operationId: internal_twilio_connectaction_post
|
|
6389
|
+
summary: Internal Twilio connect-action
|
|
6390
|
+
description: Gateway-to-runtime forwarding for ConversationRelay connect-action callback.
|
|
6391
|
+
tags:
|
|
6392
|
+
- internal
|
|
5166
6393
|
responses:
|
|
5167
6394
|
"200":
|
|
5168
6395
|
description: Successful response
|
|
5169
6396
|
/v1/internal/twilio/status:
|
|
5170
6397
|
post:
|
|
5171
6398
|
operationId: internal_twilio_status_post
|
|
6399
|
+
summary: Internal Twilio status callback
|
|
6400
|
+
description: Gateway-to-runtime forwarding for Twilio call status updates. Accepts pre-parsed form params as JSON.
|
|
6401
|
+
tags:
|
|
6402
|
+
- internal
|
|
5172
6403
|
responses:
|
|
5173
6404
|
"200":
|
|
5174
6405
|
description: Successful response
|
|
5175
6406
|
/v1/internal/twilio/voice-webhook:
|
|
5176
6407
|
post:
|
|
5177
6408
|
operationId: internal_twilio_voicewebhook_post
|
|
6409
|
+
summary: Internal Twilio voice webhook
|
|
6410
|
+
description: Gateway-to-runtime forwarding for Twilio voice webhook. Accepts pre-parsed form params as JSON.
|
|
6411
|
+
tags:
|
|
6412
|
+
- internal
|
|
5178
6413
|
responses:
|
|
5179
6414
|
"200":
|
|
5180
6415
|
description: Successful response
|
|
@@ -5218,6 +6453,8 @@ paths:
|
|
|
5218
6453
|
responses:
|
|
5219
6454
|
"200":
|
|
5220
6455
|
description: Successful response
|
|
6456
|
+
"500":
|
|
6457
|
+
description: Failed to create archive
|
|
5221
6458
|
requestBody:
|
|
5222
6459
|
required: true
|
|
5223
6460
|
content:
|
|
@@ -5234,9 +6471,7 @@ paths:
|
|
|
5234
6471
|
description: Scope to a single conversation
|
|
5235
6472
|
type: string
|
|
5236
6473
|
full:
|
|
5237
|
-
description:
|
|
5238
|
-
Full export — include messages, LLM request logs, and usage events for all conversations. Use for test data
|
|
5239
|
-
debugging.
|
|
6474
|
+
description: Full export — include messages, LLM request logs, and usage events for all conversations.
|
|
5240
6475
|
type: boolean
|
|
5241
6476
|
startTime:
|
|
5242
6477
|
description: Lower bound epoch ms
|
|
@@ -5320,7 +6555,7 @@ paths:
|
|
|
5320
6555
|
tags:
|
|
5321
6556
|
- memory
|
|
5322
6557
|
responses:
|
|
5323
|
-
"
|
|
6558
|
+
"201":
|
|
5324
6559
|
description: Successful response
|
|
5325
6560
|
content:
|
|
5326
6561
|
application/json:
|
|
@@ -5335,6 +6570,8 @@ paths:
|
|
|
5335
6570
|
required:
|
|
5336
6571
|
- item
|
|
5337
6572
|
additionalProperties: false
|
|
6573
|
+
"409":
|
|
6574
|
+
description: A memory with this content already exists
|
|
5338
6575
|
requestBody:
|
|
5339
6576
|
required: true
|
|
5340
6577
|
content:
|
|
@@ -5366,18 +6603,8 @@ paths:
|
|
|
5366
6603
|
tags:
|
|
5367
6604
|
- memory
|
|
5368
6605
|
responses:
|
|
5369
|
-
"
|
|
6606
|
+
"204":
|
|
5370
6607
|
description: Successful response
|
|
5371
|
-
content:
|
|
5372
|
-
application/json:
|
|
5373
|
-
schema:
|
|
5374
|
-
type: object
|
|
5375
|
-
properties:
|
|
5376
|
-
ok:
|
|
5377
|
-
type: boolean
|
|
5378
|
-
required:
|
|
5379
|
-
- ok
|
|
5380
|
-
additionalProperties: false
|
|
5381
6608
|
parameters:
|
|
5382
6609
|
- name: id
|
|
5383
6610
|
in: path
|
|
@@ -5434,6 +6661,8 @@ paths:
|
|
|
5434
6661
|
required:
|
|
5435
6662
|
- item
|
|
5436
6663
|
additionalProperties: false
|
|
6664
|
+
"409":
|
|
6665
|
+
description: Another memory item with this content already exists
|
|
5437
6666
|
parameters:
|
|
5438
6667
|
- name: id
|
|
5439
6668
|
in: path
|
|
@@ -5458,6 +6687,74 @@ paths:
|
|
|
5458
6687
|
importance:
|
|
5459
6688
|
type: number
|
|
5460
6689
|
additionalProperties: false
|
|
6690
|
+
/v1/memory/v2/backfill:
|
|
6691
|
+
post:
|
|
6692
|
+
operationId: memory_v2_backfill_post
|
|
6693
|
+
summary: Enqueue a memory v2 backfill job
|
|
6694
|
+
description:
|
|
6695
|
+
Enqueues one of four operator-triggered backfill jobs (migrate, rebuild-edges, reembed,
|
|
6696
|
+
activation-recompute) against the memory jobs queue.
|
|
6697
|
+
tags:
|
|
6698
|
+
- memory
|
|
6699
|
+
responses:
|
|
6700
|
+
"200":
|
|
6701
|
+
description: Successful response
|
|
6702
|
+
requestBody:
|
|
6703
|
+
required: true
|
|
6704
|
+
content:
|
|
6705
|
+
application/json:
|
|
6706
|
+
schema:
|
|
6707
|
+
type: object
|
|
6708
|
+
properties:
|
|
6709
|
+
op:
|
|
6710
|
+
type: string
|
|
6711
|
+
enum:
|
|
6712
|
+
- migrate
|
|
6713
|
+
- reembed
|
|
6714
|
+
- activation-recompute
|
|
6715
|
+
force:
|
|
6716
|
+
type: boolean
|
|
6717
|
+
required:
|
|
6718
|
+
- op
|
|
6719
|
+
additionalProperties: false
|
|
6720
|
+
/v1/memory/v2/reembed-skills:
|
|
6721
|
+
post:
|
|
6722
|
+
operationId: memory_v2_reembedskills_post
|
|
6723
|
+
summary: Re-seed v2 skill entries from the current skill catalog
|
|
6724
|
+
description:
|
|
6725
|
+
Synchronously re-runs seedV2SkillEntries against the current skill catalog. Gated on memory-v2-enabled flag
|
|
6726
|
+
and config.memory.v2.enabled.
|
|
6727
|
+
tags:
|
|
6728
|
+
- memory
|
|
6729
|
+
responses:
|
|
6730
|
+
"200":
|
|
6731
|
+
description: Successful response
|
|
6732
|
+
requestBody:
|
|
6733
|
+
required: true
|
|
6734
|
+
content:
|
|
6735
|
+
application/json:
|
|
6736
|
+
schema:
|
|
6737
|
+
type: object
|
|
6738
|
+
properties: {}
|
|
6739
|
+
additionalProperties: false
|
|
6740
|
+
/v1/memory/v2/validate:
|
|
6741
|
+
post:
|
|
6742
|
+
operationId: memory_v2_validate_post
|
|
6743
|
+
summary: Validate memory v2 workspace state
|
|
6744
|
+
description: Read-only structural validation of the v2 workspace — reports orphan edges, oversized pages, and parse failures.
|
|
6745
|
+
tags:
|
|
6746
|
+
- memory
|
|
6747
|
+
responses:
|
|
6748
|
+
"200":
|
|
6749
|
+
description: Successful response
|
|
6750
|
+
requestBody:
|
|
6751
|
+
required: true
|
|
6752
|
+
content:
|
|
6753
|
+
application/json:
|
|
6754
|
+
schema:
|
|
6755
|
+
type: object
|
|
6756
|
+
properties: {}
|
|
6757
|
+
additionalProperties: false
|
|
5461
6758
|
/v1/messages:
|
|
5462
6759
|
get:
|
|
5463
6760
|
operationId: messages_get
|
|
@@ -5481,11 +6778,17 @@ paths:
|
|
|
5481
6778
|
description: Whether older messages exist beyond this page
|
|
5482
6779
|
type: boolean
|
|
5483
6780
|
oldestTimestamp:
|
|
5484
|
-
description:
|
|
5485
|
-
|
|
6781
|
+
description:
|
|
6782
|
+
Timestamp of the oldest message in this page (ms since epoch). Null when page=latest is used on an empty
|
|
6783
|
+
conversation.
|
|
6784
|
+
anyOf:
|
|
6785
|
+
- type: number
|
|
6786
|
+
- type: "null"
|
|
5486
6787
|
oldestMessageId:
|
|
5487
6788
|
description: ID of the oldest message in this page
|
|
5488
|
-
|
|
6789
|
+
anyOf:
|
|
6790
|
+
- type: string
|
|
6791
|
+
- type: "null"
|
|
5489
6792
|
required:
|
|
5490
6793
|
- messages
|
|
5491
6794
|
additionalProperties: false
|
|
@@ -5496,7 +6799,7 @@ paths:
|
|
|
5496
6799
|
tags:
|
|
5497
6800
|
- messages
|
|
5498
6801
|
responses:
|
|
5499
|
-
"
|
|
6802
|
+
"202":
|
|
5500
6803
|
description: Successful response
|
|
5501
6804
|
requestBody:
|
|
5502
6805
|
required: true
|
|
@@ -5518,6 +6821,17 @@ paths:
|
|
|
5518
6821
|
type: string
|
|
5519
6822
|
slashCommand:
|
|
5520
6823
|
type: string
|
|
6824
|
+
inferenceProfile:
|
|
6825
|
+
anyOf:
|
|
6826
|
+
- type: string
|
|
6827
|
+
- type: "null"
|
|
6828
|
+
riskThreshold:
|
|
6829
|
+
type: string
|
|
6830
|
+
enum:
|
|
6831
|
+
- none
|
|
6832
|
+
- low
|
|
6833
|
+
- medium
|
|
6834
|
+
- high
|
|
5521
6835
|
required:
|
|
5522
6836
|
- content
|
|
5523
6837
|
additionalProperties: false
|
|
@@ -5537,6 +6851,12 @@ paths:
|
|
|
5537
6851
|
required: true
|
|
5538
6852
|
schema:
|
|
5539
6853
|
type: string
|
|
6854
|
+
- name: conversationId
|
|
6855
|
+
in: query
|
|
6856
|
+
required: false
|
|
6857
|
+
schema:
|
|
6858
|
+
type: string
|
|
6859
|
+
description: Optional conversation ID filter
|
|
5540
6860
|
/v1/messages/{id}/llm-context:
|
|
5541
6861
|
get:
|
|
5542
6862
|
operationId: messages_by_id_llmcontext_get
|
|
@@ -5558,13 +6878,22 @@ paths:
|
|
|
5558
6878
|
type: array
|
|
5559
6879
|
items: {}
|
|
5560
6880
|
memoryRecall:
|
|
5561
|
-
|
|
5562
|
-
|
|
5563
|
-
|
|
6881
|
+
anyOf:
|
|
6882
|
+
- type: object
|
|
6883
|
+
properties: {}
|
|
6884
|
+
additionalProperties: {}
|
|
6885
|
+
- type: "null"
|
|
6886
|
+
memoryV2Activation:
|
|
6887
|
+
anyOf:
|
|
6888
|
+
- type: object
|
|
6889
|
+
properties: {}
|
|
6890
|
+
additionalProperties: {}
|
|
6891
|
+
- type: "null"
|
|
5564
6892
|
required:
|
|
5565
6893
|
- messageId
|
|
5566
6894
|
- logs
|
|
5567
6895
|
- memoryRecall
|
|
6896
|
+
- memoryV2Activation
|
|
5568
6897
|
additionalProperties: false
|
|
5569
6898
|
parameters:
|
|
5570
6899
|
- name: id
|
|
@@ -5572,9 +6901,9 @@ paths:
|
|
|
5572
6901
|
required: true
|
|
5573
6902
|
schema:
|
|
5574
6903
|
type: string
|
|
5575
|
-
/v1/messages/{
|
|
6904
|
+
/v1/messages/{messageId}/tts:
|
|
5576
6905
|
post:
|
|
5577
|
-
operationId:
|
|
6906
|
+
operationId: messages_by_messageId_tts_post
|
|
5578
6907
|
summary: Synthesize message to speech
|
|
5579
6908
|
description: Synthesize a message's text content to audio using the configured TTS provider.
|
|
5580
6909
|
tags:
|
|
@@ -5583,7 +6912,7 @@ paths:
|
|
|
5583
6912
|
"200":
|
|
5584
6913
|
description: Successful response
|
|
5585
6914
|
parameters:
|
|
5586
|
-
- name:
|
|
6915
|
+
- name: messageId
|
|
5587
6916
|
in: path
|
|
5588
6917
|
required: true
|
|
5589
6918
|
schema:
|
|
@@ -5610,6 +6939,12 @@ paths:
|
|
|
5610
6939
|
required: true
|
|
5611
6940
|
schema:
|
|
5612
6941
|
type: string
|
|
6942
|
+
- name: conversationId
|
|
6943
|
+
in: query
|
|
6944
|
+
required: true
|
|
6945
|
+
schema:
|
|
6946
|
+
type: string
|
|
6947
|
+
description: Conversation ID (required)
|
|
5613
6948
|
/v1/migrations/export:
|
|
5614
6949
|
post:
|
|
5615
6950
|
operationId: migrations_export_post
|
|
@@ -5633,14 +6968,62 @@ paths:
|
|
|
5633
6968
|
required:
|
|
5634
6969
|
- description
|
|
5635
6970
|
additionalProperties: false
|
|
6971
|
+
/v1/migrations/export-to-gcs:
|
|
6972
|
+
post:
|
|
6973
|
+
operationId: migrations_exporttogcs_post
|
|
6974
|
+
summary: Start an async export streamed to a GCS signed URL
|
|
6975
|
+
description:
|
|
6976
|
+
Kick off a background export job that PUTs a freshly-built .vbundle archive to the supplied GCS signed URL.
|
|
6977
|
+
Returns 202 with a job_id the caller can poll via the job-status endpoint. Fails fast with 409 if another export
|
|
6978
|
+
job is already pending or running.
|
|
6979
|
+
tags:
|
|
6980
|
+
- migrations
|
|
6981
|
+
responses:
|
|
6982
|
+
"202":
|
|
6983
|
+
description: Successful response
|
|
6984
|
+
content:
|
|
6985
|
+
application/json:
|
|
6986
|
+
schema:
|
|
6987
|
+
type: object
|
|
6988
|
+
properties:
|
|
6989
|
+
job_id:
|
|
6990
|
+
type: string
|
|
6991
|
+
status:
|
|
6992
|
+
type: string
|
|
6993
|
+
const: pending
|
|
6994
|
+
type:
|
|
6995
|
+
type: string
|
|
6996
|
+
const: export
|
|
6997
|
+
required:
|
|
6998
|
+
- job_id
|
|
6999
|
+
- status
|
|
7000
|
+
- type
|
|
7001
|
+
additionalProperties: false
|
|
7002
|
+
requestBody:
|
|
7003
|
+
required: true
|
|
7004
|
+
content:
|
|
7005
|
+
application/json:
|
|
7006
|
+
schema:
|
|
7007
|
+
type: object
|
|
7008
|
+
properties:
|
|
7009
|
+
upload_url:
|
|
7010
|
+
type: string
|
|
7011
|
+
format: uri
|
|
7012
|
+
description: Signed GCS PUT URL that receives the exported bundle.
|
|
7013
|
+
description:
|
|
7014
|
+
description: Human-readable export description.
|
|
7015
|
+
type: string
|
|
7016
|
+
required:
|
|
7017
|
+
- upload_url
|
|
7018
|
+
additionalProperties: false
|
|
5636
7019
|
/v1/migrations/import:
|
|
5637
7020
|
post:
|
|
5638
7021
|
operationId: migrations_import_post
|
|
5639
7022
|
summary: Import a .vbundle archive
|
|
5640
7023
|
description:
|
|
5641
7024
|
Commit a .vbundle archive import to disk — destructive. Accepts the bundle as raw bytes
|
|
5642
|
-
(application/octet-stream), multipart/form-data, or a JSON body carrying a signed URL the daemon
|
|
5643
|
-
|
|
7025
|
+
(application/octet-stream), multipart/form-data, or a JSON body with `{ url }` carrying a signed URL the daemon
|
|
7026
|
+
fetches.
|
|
5644
7027
|
tags:
|
|
5645
7028
|
- migrations
|
|
5646
7029
|
responses:
|
|
@@ -5675,55 +7058,67 @@ paths:
|
|
|
5675
7058
|
- warnings
|
|
5676
7059
|
additionalProperties: false
|
|
5677
7060
|
"502":
|
|
5678
|
-
description:
|
|
5679
|
-
|
|
5680
|
-
|
|
7061
|
+
description: Upstream fetch failed (URL body only).
|
|
7062
|
+
requestBody:
|
|
7063
|
+
required: true
|
|
7064
|
+
content:
|
|
7065
|
+
application/json:
|
|
7066
|
+
schema:
|
|
7067
|
+
type: object
|
|
7068
|
+
properties:
|
|
7069
|
+
url:
|
|
7070
|
+
type: string
|
|
7071
|
+
format: uri
|
|
7072
|
+
description: A signed GCS URL pointing to the .vbundle archive (JSON body path only).
|
|
7073
|
+
required:
|
|
7074
|
+
- url
|
|
7075
|
+
additionalProperties: false
|
|
7076
|
+
/v1/migrations/import-from-gcs:
|
|
7077
|
+
post:
|
|
7078
|
+
operationId: migrations_importfromgcs_post
|
|
7079
|
+
summary: Start an async .vbundle import from a signed GCS URL
|
|
7080
|
+
description:
|
|
7081
|
+
Schedule a background import job that fetches the bundle at `bundle_url` and streams it through the
|
|
7082
|
+
importer. Returns 202 with a `job_id`; poll `GET /v1/migrations/jobs/{job_id}` for status. 409 if another import
|
|
7083
|
+
is already in flight.
|
|
7084
|
+
tags:
|
|
7085
|
+
- migrations
|
|
7086
|
+
responses:
|
|
7087
|
+
"202":
|
|
7088
|
+
description: Successful response
|
|
5681
7089
|
content:
|
|
5682
7090
|
application/json:
|
|
5683
7091
|
schema:
|
|
5684
7092
|
type: object
|
|
5685
7093
|
properties:
|
|
5686
|
-
|
|
5687
|
-
type: boolean
|
|
5688
|
-
reason:
|
|
7094
|
+
job_id:
|
|
5689
7095
|
type: string
|
|
5690
|
-
|
|
5691
|
-
|
|
5692
|
-
|
|
5693
|
-
|
|
7096
|
+
status:
|
|
7097
|
+
type: string
|
|
7098
|
+
const: pending
|
|
7099
|
+
type:
|
|
7100
|
+
type: string
|
|
7101
|
+
const: import
|
|
5694
7102
|
required:
|
|
5695
|
-
-
|
|
5696
|
-
-
|
|
7103
|
+
- job_id
|
|
7104
|
+
- status
|
|
7105
|
+
- type
|
|
7106
|
+
additionalProperties: false
|
|
7107
|
+
"409":
|
|
7108
|
+
description: Another import job is already pending or running.
|
|
5697
7109
|
requestBody:
|
|
5698
7110
|
required: true
|
|
5699
7111
|
content:
|
|
5700
|
-
application/octet-stream:
|
|
5701
|
-
schema:
|
|
5702
|
-
type: string
|
|
5703
|
-
format: binary
|
|
5704
|
-
description: Raw .vbundle archive bytes.
|
|
5705
|
-
multipart/form-data:
|
|
5706
|
-
schema:
|
|
5707
|
-
type: object
|
|
5708
|
-
properties:
|
|
5709
|
-
file:
|
|
5710
|
-
type: string
|
|
5711
|
-
format: binary
|
|
5712
|
-
description: The .vbundle archive uploaded as a file field.
|
|
5713
|
-
required:
|
|
5714
|
-
- file
|
|
5715
7112
|
application/json:
|
|
5716
7113
|
schema:
|
|
5717
7114
|
type: object
|
|
5718
7115
|
properties:
|
|
5719
|
-
|
|
7116
|
+
bundle_url:
|
|
5720
7117
|
type: string
|
|
5721
7118
|
format: uri
|
|
5722
|
-
description:
|
|
5723
|
-
A signed GCS URL pointing to the .vbundle archive. The daemon fetches the URL and streams the body through
|
|
5724
|
-
the importer.
|
|
5725
7119
|
required:
|
|
5726
|
-
-
|
|
7120
|
+
- bundle_url
|
|
7121
|
+
additionalProperties: false
|
|
5727
7122
|
/v1/migrations/import-preflight:
|
|
5728
7123
|
post:
|
|
5729
7124
|
operationId: migrations_importpreflight_post
|
|
@@ -5762,6 +7157,94 @@ paths:
|
|
|
5762
7157
|
- conflicts
|
|
5763
7158
|
- manifest
|
|
5764
7159
|
additionalProperties: false
|
|
7160
|
+
/v1/migrations/jobs/{job_id}:
|
|
7161
|
+
get:
|
|
7162
|
+
operationId: migrations_jobs_by_job_id_get
|
|
7163
|
+
summary: Get migration job status
|
|
7164
|
+
description:
|
|
7165
|
+
"Return the current status of an async migration job (export or import). The response discriminates on
|
|
7166
|
+
`status`: `processing` (pending or running), `complete` (with `result`), or `failed` (with `error`,
|
|
7167
|
+
`error_code`, optional `upstream_status`)."
|
|
7168
|
+
tags:
|
|
7169
|
+
- migrations
|
|
7170
|
+
responses:
|
|
7171
|
+
"200":
|
|
7172
|
+
description: Successful response
|
|
7173
|
+
content:
|
|
7174
|
+
application/json:
|
|
7175
|
+
schema:
|
|
7176
|
+
oneOf:
|
|
7177
|
+
- type: object
|
|
7178
|
+
properties:
|
|
7179
|
+
job_id:
|
|
7180
|
+
type: string
|
|
7181
|
+
type:
|
|
7182
|
+
type: string
|
|
7183
|
+
enum:
|
|
7184
|
+
- export
|
|
7185
|
+
- import
|
|
7186
|
+
status:
|
|
7187
|
+
type: string
|
|
7188
|
+
const: processing
|
|
7189
|
+
required:
|
|
7190
|
+
- job_id
|
|
7191
|
+
- type
|
|
7192
|
+
- status
|
|
7193
|
+
additionalProperties: false
|
|
7194
|
+
- type: object
|
|
7195
|
+
properties:
|
|
7196
|
+
job_id:
|
|
7197
|
+
type: string
|
|
7198
|
+
type:
|
|
7199
|
+
type: string
|
|
7200
|
+
enum:
|
|
7201
|
+
- export
|
|
7202
|
+
- import
|
|
7203
|
+
status:
|
|
7204
|
+
type: string
|
|
7205
|
+
const: complete
|
|
7206
|
+
result: {}
|
|
7207
|
+
required:
|
|
7208
|
+
- job_id
|
|
7209
|
+
- type
|
|
7210
|
+
- status
|
|
7211
|
+
- result
|
|
7212
|
+
additionalProperties: false
|
|
7213
|
+
- type: object
|
|
7214
|
+
properties:
|
|
7215
|
+
job_id:
|
|
7216
|
+
type: string
|
|
7217
|
+
type:
|
|
7218
|
+
type: string
|
|
7219
|
+
enum:
|
|
7220
|
+
- export
|
|
7221
|
+
- import
|
|
7222
|
+
status:
|
|
7223
|
+
type: string
|
|
7224
|
+
const: failed
|
|
7225
|
+
error:
|
|
7226
|
+
type: string
|
|
7227
|
+
error_code:
|
|
7228
|
+
type: string
|
|
7229
|
+
upstream_status:
|
|
7230
|
+
type: integer
|
|
7231
|
+
minimum: -9007199254740991
|
|
7232
|
+
maximum: 9007199254740991
|
|
7233
|
+
required:
|
|
7234
|
+
- job_id
|
|
7235
|
+
- type
|
|
7236
|
+
- status
|
|
7237
|
+
- error
|
|
7238
|
+
- error_code
|
|
7239
|
+
additionalProperties: false
|
|
7240
|
+
"404":
|
|
7241
|
+
description: No job matches the given id.
|
|
7242
|
+
parameters:
|
|
7243
|
+
- name: job_id
|
|
7244
|
+
in: path
|
|
7245
|
+
required: true
|
|
7246
|
+
schema:
|
|
7247
|
+
type: string
|
|
5765
7248
|
/v1/migrations/validate:
|
|
5766
7249
|
post:
|
|
5767
7250
|
operationId: migrations_validate_post
|
|
@@ -5889,55 +7372,224 @@ paths:
|
|
|
5889
7372
|
required:
|
|
5890
7373
|
- deliveryId
|
|
5891
7374
|
additionalProperties: false
|
|
5892
|
-
/v1/
|
|
5893
|
-
get:
|
|
5894
|
-
operationId: oauth_apps_get
|
|
5895
|
-
tags:
|
|
5896
|
-
- oauth-apps
|
|
5897
|
-
responses:
|
|
5898
|
-
"200":
|
|
5899
|
-
description: Successful response
|
|
5900
|
-
post:
|
|
5901
|
-
operationId: oauth_apps_post
|
|
5902
|
-
tags:
|
|
5903
|
-
- oauth-apps
|
|
5904
|
-
responses:
|
|
5905
|
-
"200":
|
|
5906
|
-
description: Successful response
|
|
5907
|
-
/v1/oauth/apps/{appId}/connect:
|
|
7375
|
+
/v1/notifications/emit:
|
|
5908
7376
|
post:
|
|
5909
|
-
operationId:
|
|
5910
|
-
|
|
5911
|
-
|
|
5912
|
-
responses:
|
|
5913
|
-
"200":
|
|
5914
|
-
description: Successful response
|
|
5915
|
-
parameters:
|
|
5916
|
-
- name: appId
|
|
5917
|
-
in: path
|
|
5918
|
-
required: true
|
|
5919
|
-
schema:
|
|
5920
|
-
type: string
|
|
5921
|
-
/v1/oauth/apps/{appId}/connections:
|
|
5922
|
-
get:
|
|
5923
|
-
operationId: oauth_apps_by_appId_connections_get
|
|
7377
|
+
operationId: notifications_emit_post
|
|
7378
|
+
summary: Emit a notification signal
|
|
7379
|
+
description: Emit a notification signal into the pipeline for routing and delivery.
|
|
5924
7380
|
tags:
|
|
5925
|
-
-
|
|
7381
|
+
- notifications
|
|
5926
7382
|
responses:
|
|
5927
7383
|
"200":
|
|
5928
7384
|
description: Successful response
|
|
5929
|
-
|
|
5930
|
-
|
|
5931
|
-
|
|
5932
|
-
|
|
5933
|
-
|
|
5934
|
-
|
|
5935
|
-
|
|
5936
|
-
|
|
5937
|
-
|
|
5938
|
-
|
|
5939
|
-
|
|
5940
|
-
|
|
7385
|
+
content:
|
|
7386
|
+
application/json:
|
|
7387
|
+
schema:
|
|
7388
|
+
type: object
|
|
7389
|
+
properties:
|
|
7390
|
+
signalId:
|
|
7391
|
+
type: string
|
|
7392
|
+
dispatched:
|
|
7393
|
+
type: boolean
|
|
7394
|
+
deduplicated:
|
|
7395
|
+
type: boolean
|
|
7396
|
+
reason:
|
|
7397
|
+
type: string
|
|
7398
|
+
required:
|
|
7399
|
+
- signalId
|
|
7400
|
+
- dispatched
|
|
7401
|
+
- deduplicated
|
|
7402
|
+
- reason
|
|
7403
|
+
additionalProperties: false
|
|
7404
|
+
requestBody:
|
|
7405
|
+
required: true
|
|
7406
|
+
content:
|
|
7407
|
+
application/json:
|
|
7408
|
+
schema:
|
|
7409
|
+
type: object
|
|
7410
|
+
properties:
|
|
7411
|
+
sourceEventName:
|
|
7412
|
+
type: string
|
|
7413
|
+
minLength: 1
|
|
7414
|
+
sourceChannel:
|
|
7415
|
+
type: string
|
|
7416
|
+
enum:
|
|
7417
|
+
- assistant_tool
|
|
7418
|
+
- vellum
|
|
7419
|
+
- phone
|
|
7420
|
+
- telegram
|
|
7421
|
+
- slack
|
|
7422
|
+
- scheduler
|
|
7423
|
+
- watcher
|
|
7424
|
+
sourceContextId:
|
|
7425
|
+
type: string
|
|
7426
|
+
minLength: 1
|
|
7427
|
+
attentionHints:
|
|
7428
|
+
type: object
|
|
7429
|
+
properties:
|
|
7430
|
+
requiresAction:
|
|
7431
|
+
type: boolean
|
|
7432
|
+
urgency:
|
|
7433
|
+
type: string
|
|
7434
|
+
enum:
|
|
7435
|
+
- low
|
|
7436
|
+
- medium
|
|
7437
|
+
- high
|
|
7438
|
+
deadlineAt:
|
|
7439
|
+
type: number
|
|
7440
|
+
isAsyncBackground:
|
|
7441
|
+
type: boolean
|
|
7442
|
+
visibleInSourceNow:
|
|
7443
|
+
type: boolean
|
|
7444
|
+
required:
|
|
7445
|
+
- requiresAction
|
|
7446
|
+
- urgency
|
|
7447
|
+
- isAsyncBackground
|
|
7448
|
+
- visibleInSourceNow
|
|
7449
|
+
additionalProperties: false
|
|
7450
|
+
contextPayload:
|
|
7451
|
+
type: object
|
|
7452
|
+
propertyNames:
|
|
7453
|
+
type: string
|
|
7454
|
+
additionalProperties: {}
|
|
7455
|
+
routingIntent:
|
|
7456
|
+
type: string
|
|
7457
|
+
enum:
|
|
7458
|
+
- single_channel
|
|
7459
|
+
- multi_channel
|
|
7460
|
+
- all_channels
|
|
7461
|
+
dedupeKey:
|
|
7462
|
+
type: string
|
|
7463
|
+
throwOnError:
|
|
7464
|
+
type: boolean
|
|
7465
|
+
required:
|
|
7466
|
+
- sourceEventName
|
|
7467
|
+
- sourceChannel
|
|
7468
|
+
- sourceContextId
|
|
7469
|
+
- attentionHints
|
|
7470
|
+
additionalProperties: false
|
|
7471
|
+
/v1/notifications/events:
|
|
7472
|
+
post:
|
|
7473
|
+
operationId: notifications_events_post
|
|
7474
|
+
summary: List notification events
|
|
7475
|
+
description: List recent notification events, optionally filtered by source event name.
|
|
7476
|
+
tags:
|
|
7477
|
+
- notifications
|
|
7478
|
+
responses:
|
|
7479
|
+
"200":
|
|
7480
|
+
description: Successful response
|
|
7481
|
+
content:
|
|
7482
|
+
application/json:
|
|
7483
|
+
schema:
|
|
7484
|
+
type: array
|
|
7485
|
+
items:
|
|
7486
|
+
type: object
|
|
7487
|
+
properties:
|
|
7488
|
+
id:
|
|
7489
|
+
type: string
|
|
7490
|
+
sourceEventName:
|
|
7491
|
+
type: string
|
|
7492
|
+
sourceChannel:
|
|
7493
|
+
type: string
|
|
7494
|
+
sourceContextId:
|
|
7495
|
+
type: string
|
|
7496
|
+
urgency:
|
|
7497
|
+
type: string
|
|
7498
|
+
dedupeKey:
|
|
7499
|
+
anyOf:
|
|
7500
|
+
- type: string
|
|
7501
|
+
- type: "null"
|
|
7502
|
+
createdAt:
|
|
7503
|
+
type: string
|
|
7504
|
+
required:
|
|
7505
|
+
- id
|
|
7506
|
+
- sourceEventName
|
|
7507
|
+
- sourceChannel
|
|
7508
|
+
- sourceContextId
|
|
7509
|
+
- urgency
|
|
7510
|
+
- dedupeKey
|
|
7511
|
+
- createdAt
|
|
7512
|
+
additionalProperties: false
|
|
7513
|
+
requestBody:
|
|
7514
|
+
required: true
|
|
7515
|
+
content:
|
|
7516
|
+
application/json:
|
|
7517
|
+
schema:
|
|
7518
|
+
type: object
|
|
7519
|
+
properties:
|
|
7520
|
+
limit:
|
|
7521
|
+
type: integer
|
|
7522
|
+
exclusiveMinimum: 0
|
|
7523
|
+
maximum: 9007199254740991
|
|
7524
|
+
sourceEventName:
|
|
7525
|
+
type: string
|
|
7526
|
+
additionalProperties: false
|
|
7527
|
+
/v1/oauth/apps:
|
|
7528
|
+
get:
|
|
7529
|
+
operationId: oauth_apps_get
|
|
7530
|
+
summary: List OAuth apps
|
|
7531
|
+
description: List OAuth apps filtered by provider_key.
|
|
7532
|
+
tags:
|
|
7533
|
+
- oauth
|
|
7534
|
+
responses:
|
|
7535
|
+
"200":
|
|
7536
|
+
description: Successful response
|
|
7537
|
+
parameters:
|
|
7538
|
+
- name: provider_key
|
|
7539
|
+
in: query
|
|
7540
|
+
required: true
|
|
7541
|
+
schema:
|
|
7542
|
+
type: string
|
|
7543
|
+
description: OAuth provider key to filter by
|
|
7544
|
+
post:
|
|
7545
|
+
operationId: oauth_apps_post
|
|
7546
|
+
summary: Create OAuth app
|
|
7547
|
+
description: Register a new OAuth app with client credentials.
|
|
7548
|
+
tags:
|
|
7549
|
+
- oauth
|
|
7550
|
+
responses:
|
|
7551
|
+
"201":
|
|
7552
|
+
description: Successful response
|
|
7553
|
+
/v1/oauth/apps/{appId}/connect:
|
|
7554
|
+
post:
|
|
7555
|
+
operationId: oauth_apps_by_appId_connect_post
|
|
7556
|
+
summary: Start OAuth connect
|
|
7557
|
+
description: Start an OAuth connect flow for an app.
|
|
7558
|
+
tags:
|
|
7559
|
+
- oauth
|
|
7560
|
+
responses:
|
|
7561
|
+
"200":
|
|
7562
|
+
description: Successful response
|
|
7563
|
+
parameters:
|
|
7564
|
+
- name: appId
|
|
7565
|
+
in: path
|
|
7566
|
+
required: true
|
|
7567
|
+
schema:
|
|
7568
|
+
type: string
|
|
7569
|
+
/v1/oauth/apps/{appId}/connections:
|
|
7570
|
+
get:
|
|
7571
|
+
operationId: oauth_apps_by_appId_connections_get
|
|
7572
|
+
summary: List OAuth connections
|
|
7573
|
+
description: List connections for an OAuth app.
|
|
7574
|
+
tags:
|
|
7575
|
+
- oauth
|
|
7576
|
+
responses:
|
|
7577
|
+
"200":
|
|
7578
|
+
description: Successful response
|
|
7579
|
+
parameters:
|
|
7580
|
+
- name: appId
|
|
7581
|
+
in: path
|
|
7582
|
+
required: true
|
|
7583
|
+
schema:
|
|
7584
|
+
type: string
|
|
7585
|
+
/v1/oauth/apps/{id}:
|
|
7586
|
+
delete:
|
|
7587
|
+
operationId: oauth_apps_by_id_delete
|
|
7588
|
+
summary: Delete OAuth app
|
|
7589
|
+
description: Delete an OAuth app and disconnect all its connections.
|
|
7590
|
+
tags:
|
|
7591
|
+
- oauth
|
|
7592
|
+
responses:
|
|
5941
7593
|
"200":
|
|
5942
7594
|
description: Successful response
|
|
5943
7595
|
parameters:
|
|
@@ -5949,8 +7601,10 @@ paths:
|
|
|
5949
7601
|
/v1/oauth/connections/{id}:
|
|
5950
7602
|
delete:
|
|
5951
7603
|
operationId: oauth_connections_by_id_delete
|
|
7604
|
+
summary: Disconnect OAuth connection
|
|
7605
|
+
description: Disconnect a single OAuth connection.
|
|
5952
7606
|
tags:
|
|
5953
|
-
- oauth
|
|
7607
|
+
- oauth
|
|
5954
7608
|
responses:
|
|
5955
7609
|
"200":
|
|
5956
7610
|
description: Successful response
|
|
@@ -5963,16 +7617,27 @@ paths:
|
|
|
5963
7617
|
/v1/oauth/providers:
|
|
5964
7618
|
get:
|
|
5965
7619
|
operationId: oauth_providers_get
|
|
7620
|
+
summary: List OAuth providers
|
|
7621
|
+
description: List all registered OAuth providers with optional filtering.
|
|
5966
7622
|
tags:
|
|
5967
|
-
- oauth
|
|
7623
|
+
- oauth
|
|
5968
7624
|
responses:
|
|
5969
7625
|
"200":
|
|
5970
7626
|
description: Successful response
|
|
7627
|
+
parameters:
|
|
7628
|
+
- name: supports_managed_mode
|
|
7629
|
+
in: query
|
|
7630
|
+
required: false
|
|
7631
|
+
schema:
|
|
7632
|
+
type: string
|
|
7633
|
+
description: Filter by managed mode support (true/false)
|
|
5971
7634
|
/v1/oauth/providers/{providerKey}:
|
|
5972
7635
|
get:
|
|
5973
7636
|
operationId: oauth_providers_by_providerKey_get
|
|
7637
|
+
summary: Get OAuth provider
|
|
7638
|
+
description: Get a single OAuth provider by key.
|
|
5974
7639
|
tags:
|
|
5975
|
-
- oauth
|
|
7640
|
+
- oauth
|
|
5976
7641
|
responses:
|
|
5977
7642
|
"200":
|
|
5978
7643
|
description: Successful response
|
|
@@ -6008,63 +7673,29 @@ paths:
|
|
|
6008
7673
|
- service
|
|
6009
7674
|
- requestedScopes
|
|
6010
7675
|
additionalProperties: false
|
|
6011
|
-
/v1/
|
|
6012
|
-
post:
|
|
6013
|
-
operationId: pairing_register_post
|
|
6014
|
-
summary: Register pairing request
|
|
6015
|
-
description: Pre-register a pairing request when the QR code is displayed.
|
|
6016
|
-
tags:
|
|
6017
|
-
- pairing
|
|
6018
|
-
responses:
|
|
6019
|
-
"200":
|
|
6020
|
-
description: Successful response
|
|
6021
|
-
content:
|
|
6022
|
-
application/json:
|
|
6023
|
-
schema:
|
|
6024
|
-
type: object
|
|
6025
|
-
properties:
|
|
6026
|
-
ok:
|
|
6027
|
-
type: boolean
|
|
6028
|
-
required:
|
|
6029
|
-
- ok
|
|
6030
|
-
additionalProperties: false
|
|
6031
|
-
requestBody:
|
|
6032
|
-
required: true
|
|
6033
|
-
content:
|
|
6034
|
-
application/json:
|
|
6035
|
-
schema:
|
|
6036
|
-
type: object
|
|
6037
|
-
properties:
|
|
6038
|
-
pairingRequestId:
|
|
6039
|
-
type: string
|
|
6040
|
-
pairingSecret:
|
|
6041
|
-
type: string
|
|
6042
|
-
gatewayUrl:
|
|
6043
|
-
type: string
|
|
6044
|
-
localLanUrl:
|
|
6045
|
-
type: string
|
|
6046
|
-
required:
|
|
6047
|
-
- pairingRequestId
|
|
6048
|
-
- pairingSecret
|
|
6049
|
-
- gatewayUrl
|
|
6050
|
-
additionalProperties: false
|
|
6051
|
-
/v1/pairing/request:
|
|
6052
|
-
post:
|
|
6053
|
-
operationId: pairing_request_post
|
|
6054
|
-
responses:
|
|
6055
|
-
"200":
|
|
6056
|
-
description: Successful response
|
|
6057
|
-
/v1/pairing/status:
|
|
7676
|
+
/v1/pages/{appId}:
|
|
6058
7677
|
get:
|
|
6059
|
-
operationId:
|
|
7678
|
+
operationId: pages_by_appId_get
|
|
7679
|
+
summary: Serve app page
|
|
7680
|
+
description: Render and serve a shareable app page as HTML.
|
|
7681
|
+
tags:
|
|
7682
|
+
- apps
|
|
6060
7683
|
responses:
|
|
6061
7684
|
"200":
|
|
6062
7685
|
description: Successful response
|
|
7686
|
+
parameters:
|
|
7687
|
+
- name: appId
|
|
7688
|
+
in: path
|
|
7689
|
+
required: true
|
|
7690
|
+
schema:
|
|
7691
|
+
type: string
|
|
6063
7692
|
/v1/pending-interactions:
|
|
6064
7693
|
get:
|
|
6065
7694
|
operationId: pendinginteractions_get
|
|
6066
7695
|
summary: List pending interactions
|
|
6067
|
-
description:
|
|
7696
|
+
description:
|
|
7697
|
+
Return pending interactions. When conversationKey or conversationId is provided, returns details for that
|
|
7698
|
+
conversation. When neither is provided, returns all pending interactions.
|
|
6068
7699
|
tags:
|
|
6069
7700
|
- approvals
|
|
6070
7701
|
responses:
|
|
@@ -6085,9 +7716,27 @@ paths:
|
|
|
6085
7716
|
properties: {}
|
|
6086
7717
|
additionalProperties: {}
|
|
6087
7718
|
description: Pending secret request or null
|
|
6088
|
-
|
|
6089
|
-
|
|
6090
|
-
|
|
7719
|
+
interactions:
|
|
7720
|
+
type: array
|
|
7721
|
+
items:
|
|
7722
|
+
type: object
|
|
7723
|
+
properties:
|
|
7724
|
+
requestId:
|
|
7725
|
+
type: string
|
|
7726
|
+
conversationId:
|
|
7727
|
+
type: string
|
|
7728
|
+
kind:
|
|
7729
|
+
type: string
|
|
7730
|
+
toolName:
|
|
7731
|
+
type: string
|
|
7732
|
+
riskLevel:
|
|
7733
|
+
type: string
|
|
7734
|
+
required:
|
|
7735
|
+
- requestId
|
|
7736
|
+
- conversationId
|
|
7737
|
+
- kind
|
|
7738
|
+
additionalProperties: false
|
|
7739
|
+
description: All pending interactions (returned when no filters given)
|
|
6091
7740
|
additionalProperties: false
|
|
6092
7741
|
parameters:
|
|
6093
7742
|
- name: conversationKey
|
|
@@ -6095,13 +7744,13 @@ paths:
|
|
|
6095
7744
|
required: false
|
|
6096
7745
|
schema:
|
|
6097
7746
|
type: string
|
|
6098
|
-
description: Conversation key
|
|
7747
|
+
description: Conversation key (optional)
|
|
6099
7748
|
- name: conversationId
|
|
6100
7749
|
in: query
|
|
6101
7750
|
required: false
|
|
6102
7751
|
schema:
|
|
6103
7752
|
type: string
|
|
6104
|
-
description: Conversation ID
|
|
7753
|
+
description: Conversation ID (optional)
|
|
6105
7754
|
/v1/playground/seed-conversation:
|
|
6106
7755
|
post:
|
|
6107
7756
|
operationId: playground_seedconversation_post
|
|
@@ -6340,6 +7989,50 @@ paths:
|
|
|
6340
7989
|
required: true
|
|
6341
7990
|
schema:
|
|
6342
7991
|
type: string
|
|
7992
|
+
/v1/ps:
|
|
7993
|
+
get:
|
|
7994
|
+
operationId: ps_get
|
|
7995
|
+
summary: Process status
|
|
7996
|
+
description: Returns a JSON summary of the assistant's process tree including qdrant and embed-worker status.
|
|
7997
|
+
tags:
|
|
7998
|
+
- system
|
|
7999
|
+
responses:
|
|
8000
|
+
"200":
|
|
8001
|
+
description: Successful response
|
|
8002
|
+
content:
|
|
8003
|
+
application/json:
|
|
8004
|
+
schema:
|
|
8005
|
+
type: object
|
|
8006
|
+
properties:
|
|
8007
|
+
processes:
|
|
8008
|
+
type: array
|
|
8009
|
+
items:
|
|
8010
|
+
$ref: "#/$defs/__schema0"
|
|
8011
|
+
required:
|
|
8012
|
+
- processes
|
|
8013
|
+
additionalProperties: false
|
|
8014
|
+
$defs:
|
|
8015
|
+
__schema0:
|
|
8016
|
+
type: object
|
|
8017
|
+
properties:
|
|
8018
|
+
name:
|
|
8019
|
+
type: string
|
|
8020
|
+
status:
|
|
8021
|
+
type: string
|
|
8022
|
+
enum:
|
|
8023
|
+
- running
|
|
8024
|
+
- not_running
|
|
8025
|
+
- unreachable
|
|
8026
|
+
children:
|
|
8027
|
+
type: array
|
|
8028
|
+
items:
|
|
8029
|
+
$ref: "#/$defs/__schema0"
|
|
8030
|
+
info:
|
|
8031
|
+
type: string
|
|
8032
|
+
required:
|
|
8033
|
+
- name
|
|
8034
|
+
- status
|
|
8035
|
+
additionalProperties: false
|
|
6343
8036
|
/v1/recordings/pause:
|
|
6344
8037
|
post:
|
|
6345
8038
|
operationId: recordings_pause_post
|
|
@@ -6418,7 +8111,7 @@ paths:
|
|
|
6418
8111
|
tags:
|
|
6419
8112
|
- recordings
|
|
6420
8113
|
responses:
|
|
6421
|
-
"
|
|
8114
|
+
"201":
|
|
6422
8115
|
description: Successful response
|
|
6423
8116
|
content:
|
|
6424
8117
|
application/json:
|
|
@@ -6572,6 +8265,13 @@ paths:
|
|
|
6572
8265
|
required:
|
|
6573
8266
|
- schedules
|
|
6574
8267
|
additionalProperties: false
|
|
8268
|
+
parameters:
|
|
8269
|
+
- name: include_all
|
|
8270
|
+
in: query
|
|
8271
|
+
required: false
|
|
8272
|
+
schema:
|
|
8273
|
+
type: string
|
|
8274
|
+
description: When 'true', include deferred schedules that are normally hidden.
|
|
6575
8275
|
/v1/schedules/{id}:
|
|
6576
8276
|
delete:
|
|
6577
8277
|
operationId: schedules_by_id_delete
|
|
@@ -6752,6 +8452,12 @@ paths:
|
|
|
6752
8452
|
required: true
|
|
6753
8453
|
schema:
|
|
6754
8454
|
type: string
|
|
8455
|
+
- name: limit
|
|
8456
|
+
in: query
|
|
8457
|
+
required: false
|
|
8458
|
+
schema:
|
|
8459
|
+
type: integer
|
|
8460
|
+
description: Max runs to return (default 10, max 100)
|
|
6755
8461
|
/v1/schedules/{id}/toggle:
|
|
6756
8462
|
post:
|
|
6757
8463
|
operationId: schedules_by_id_toggle_post
|
|
@@ -6846,7 +8552,7 @@ paths:
|
|
|
6846
8552
|
parameters:
|
|
6847
8553
|
- name: q
|
|
6848
8554
|
in: query
|
|
6849
|
-
required:
|
|
8555
|
+
required: true
|
|
6850
8556
|
schema:
|
|
6851
8557
|
type: string
|
|
6852
8558
|
description: Search query (required)
|
|
@@ -7404,7 +9110,7 @@ paths:
|
|
|
7404
9110
|
tags:
|
|
7405
9111
|
- skills
|
|
7406
9112
|
responses:
|
|
7407
|
-
"
|
|
9113
|
+
"201":
|
|
7408
9114
|
description: Successful response
|
|
7409
9115
|
content:
|
|
7410
9116
|
application/json:
|
|
@@ -7445,7 +9151,7 @@ paths:
|
|
|
7445
9151
|
tags:
|
|
7446
9152
|
- skills
|
|
7447
9153
|
responses:
|
|
7448
|
-
"
|
|
9154
|
+
"204":
|
|
7449
9155
|
description: Successful response
|
|
7450
9156
|
parameters:
|
|
7451
9157
|
- name: id
|
|
@@ -8249,36 +9955,96 @@ paths:
|
|
|
8249
9955
|
/v1/slack/channels:
|
|
8250
9956
|
get:
|
|
8251
9957
|
operationId: slack_channels_get
|
|
9958
|
+
summary: List Slack channels
|
|
9959
|
+
description: List Slack channels, groups, and DMs for the channel picker.
|
|
8252
9960
|
tags:
|
|
8253
|
-
-
|
|
9961
|
+
- integrations
|
|
8254
9962
|
responses:
|
|
8255
9963
|
"200":
|
|
8256
9964
|
description: Successful response
|
|
8257
9965
|
/v1/slack/share:
|
|
8258
9966
|
post:
|
|
8259
9967
|
operationId: slack_share_post
|
|
9968
|
+
summary: Share to Slack channel
|
|
9969
|
+
description: Post an app link directly to a Slack channel.
|
|
9970
|
+
tags:
|
|
9971
|
+
- integrations
|
|
9972
|
+
responses:
|
|
9973
|
+
"200":
|
|
9974
|
+
description: Successful response
|
|
9975
|
+
/v1/stt/providers:
|
|
9976
|
+
get:
|
|
9977
|
+
operationId: stt_providers_get
|
|
9978
|
+
summary: List STT providers
|
|
9979
|
+
description: Return the catalog of available STT providers with client-facing metadata.
|
|
8260
9980
|
tags:
|
|
8261
|
-
-
|
|
9981
|
+
- stt
|
|
8262
9982
|
responses:
|
|
8263
9983
|
"200":
|
|
8264
9984
|
description: Successful response
|
|
9985
|
+
content:
|
|
9986
|
+
application/json:
|
|
9987
|
+
schema:
|
|
9988
|
+
type: object
|
|
9989
|
+
properties:
|
|
9990
|
+
providers:
|
|
9991
|
+
type: array
|
|
9992
|
+
items:
|
|
9993
|
+
type: object
|
|
9994
|
+
properties:
|
|
9995
|
+
id:
|
|
9996
|
+
type: string
|
|
9997
|
+
displayName:
|
|
9998
|
+
type: string
|
|
9999
|
+
subtitle:
|
|
10000
|
+
type: string
|
|
10001
|
+
setupMode:
|
|
10002
|
+
type: string
|
|
10003
|
+
setupHint:
|
|
10004
|
+
type: string
|
|
10005
|
+
apiKeyProviderName:
|
|
10006
|
+
type: string
|
|
10007
|
+
conversationStreamingMode:
|
|
10008
|
+
type: string
|
|
10009
|
+
credentialsGuide:
|
|
10010
|
+
type: string
|
|
10011
|
+
required:
|
|
10012
|
+
- id
|
|
10013
|
+
- displayName
|
|
10014
|
+
additionalProperties: false
|
|
10015
|
+
required:
|
|
10016
|
+
- providers
|
|
10017
|
+
additionalProperties: false
|
|
8265
10018
|
/v1/stt/transcribe:
|
|
8266
10019
|
post:
|
|
8267
10020
|
operationId: stt_transcribe_post
|
|
8268
10021
|
summary: Transcribe audio to text
|
|
8269
|
-
description:
|
|
8270
|
-
Transcribe base64-encoded audio to text using the configured STT provider. Provider selection is resolved
|
|
8271
|
-
globally via config.
|
|
10022
|
+
description: Transcribe base64-encoded audio to text using the configured STT provider.
|
|
8272
10023
|
tags:
|
|
8273
10024
|
- stt
|
|
8274
10025
|
responses:
|
|
8275
10026
|
"200":
|
|
8276
10027
|
description: Successful response
|
|
8277
|
-
|
|
8278
|
-
|
|
8279
|
-
|
|
8280
|
-
|
|
8281
|
-
|
|
10028
|
+
content:
|
|
10029
|
+
application/json:
|
|
10030
|
+
schema:
|
|
10031
|
+
type: object
|
|
10032
|
+
properties:
|
|
10033
|
+
text:
|
|
10034
|
+
type: string
|
|
10035
|
+
providerId:
|
|
10036
|
+
type: string
|
|
10037
|
+
boundaryId:
|
|
10038
|
+
type: string
|
|
10039
|
+
required:
|
|
10040
|
+
- text
|
|
10041
|
+
- providerId
|
|
10042
|
+
additionalProperties: false
|
|
10043
|
+
requestBody:
|
|
10044
|
+
required: true
|
|
10045
|
+
content:
|
|
10046
|
+
application/json:
|
|
10047
|
+
schema:
|
|
8282
10048
|
type: object
|
|
8283
10049
|
properties:
|
|
8284
10050
|
audioBase64:
|
|
@@ -8464,9 +10230,7 @@ paths:
|
|
|
8464
10230
|
type: boolean
|
|
8465
10231
|
conversationId:
|
|
8466
10232
|
type: string
|
|
8467
|
-
description:
|
|
8468
|
-
Id of a newly launched conversation when the action dispatched one (e.g. launch_conversation). Omitted
|
|
8469
|
-
otherwise.
|
|
10233
|
+
description: Id of a newly launched conversation when the action dispatched one. Omitted otherwise.
|
|
8470
10234
|
required:
|
|
8471
10235
|
- ok
|
|
8472
10236
|
additionalProperties: false
|
|
@@ -8578,6 +10342,378 @@ paths:
|
|
|
8578
10342
|
schema:
|
|
8579
10343
|
type: string
|
|
8580
10344
|
description: Conversation that owns the surface
|
|
10345
|
+
/v1/tasks/delete:
|
|
10346
|
+
post:
|
|
10347
|
+
operationId: tasks_delete_post
|
|
10348
|
+
summary: Delete task templates
|
|
10349
|
+
description: Delete one or more task templates by ID.
|
|
10350
|
+
tags:
|
|
10351
|
+
- tasks
|
|
10352
|
+
responses:
|
|
10353
|
+
"200":
|
|
10354
|
+
description: Successful response
|
|
10355
|
+
content:
|
|
10356
|
+
application/json:
|
|
10357
|
+
schema:
|
|
10358
|
+
type: object
|
|
10359
|
+
properties:
|
|
10360
|
+
ok:
|
|
10361
|
+
type: boolean
|
|
10362
|
+
content:
|
|
10363
|
+
type: string
|
|
10364
|
+
required:
|
|
10365
|
+
- ok
|
|
10366
|
+
- content
|
|
10367
|
+
additionalProperties: false
|
|
10368
|
+
requestBody:
|
|
10369
|
+
required: true
|
|
10370
|
+
content:
|
|
10371
|
+
application/json:
|
|
10372
|
+
schema:
|
|
10373
|
+
type: object
|
|
10374
|
+
properties:
|
|
10375
|
+
task_ids:
|
|
10376
|
+
minItems: 1
|
|
10377
|
+
type: array
|
|
10378
|
+
items:
|
|
10379
|
+
type: string
|
|
10380
|
+
minLength: 1
|
|
10381
|
+
required:
|
|
10382
|
+
- task_ids
|
|
10383
|
+
additionalProperties: false
|
|
10384
|
+
/v1/tasks/list:
|
|
10385
|
+
post:
|
|
10386
|
+
operationId: tasks_list_post
|
|
10387
|
+
summary: List task templates
|
|
10388
|
+
description: List all saved task templates.
|
|
10389
|
+
tags:
|
|
10390
|
+
- tasks
|
|
10391
|
+
responses:
|
|
10392
|
+
"200":
|
|
10393
|
+
description: Successful response
|
|
10394
|
+
content:
|
|
10395
|
+
application/json:
|
|
10396
|
+
schema:
|
|
10397
|
+
type: object
|
|
10398
|
+
properties:
|
|
10399
|
+
ok:
|
|
10400
|
+
type: boolean
|
|
10401
|
+
content:
|
|
10402
|
+
type: string
|
|
10403
|
+
required:
|
|
10404
|
+
- ok
|
|
10405
|
+
- content
|
|
10406
|
+
additionalProperties: false
|
|
10407
|
+
/v1/tasks/queue/add:
|
|
10408
|
+
post:
|
|
10409
|
+
operationId: tasks_queue_add_post
|
|
10410
|
+
summary: Add to task queue
|
|
10411
|
+
description: Add a new work item to the task queue.
|
|
10412
|
+
tags:
|
|
10413
|
+
- tasks
|
|
10414
|
+
responses:
|
|
10415
|
+
"200":
|
|
10416
|
+
description: Successful response
|
|
10417
|
+
content:
|
|
10418
|
+
application/json:
|
|
10419
|
+
schema:
|
|
10420
|
+
type: object
|
|
10421
|
+
properties:
|
|
10422
|
+
content:
|
|
10423
|
+
type: string
|
|
10424
|
+
isError:
|
|
10425
|
+
type: boolean
|
|
10426
|
+
required:
|
|
10427
|
+
- content
|
|
10428
|
+
additionalProperties: false
|
|
10429
|
+
requestBody:
|
|
10430
|
+
required: true
|
|
10431
|
+
content:
|
|
10432
|
+
application/json:
|
|
10433
|
+
schema:
|
|
10434
|
+
type: object
|
|
10435
|
+
properties:
|
|
10436
|
+
task_id:
|
|
10437
|
+
type: string
|
|
10438
|
+
task_name:
|
|
10439
|
+
type: string
|
|
10440
|
+
title:
|
|
10441
|
+
type: string
|
|
10442
|
+
execution_prompt:
|
|
10443
|
+
type: string
|
|
10444
|
+
notes:
|
|
10445
|
+
type: string
|
|
10446
|
+
priority_tier:
|
|
10447
|
+
type: number
|
|
10448
|
+
sort_index:
|
|
10449
|
+
type: number
|
|
10450
|
+
if_exists:
|
|
10451
|
+
type: string
|
|
10452
|
+
enum:
|
|
10453
|
+
- create_duplicate
|
|
10454
|
+
- reuse_existing
|
|
10455
|
+
- update_existing
|
|
10456
|
+
required_tools:
|
|
10457
|
+
type: array
|
|
10458
|
+
items:
|
|
10459
|
+
type: string
|
|
10460
|
+
additionalProperties: false
|
|
10461
|
+
/v1/tasks/queue/remove:
|
|
10462
|
+
post:
|
|
10463
|
+
operationId: tasks_queue_remove_post
|
|
10464
|
+
summary: Remove from task queue
|
|
10465
|
+
description: Remove a work item from the task queue.
|
|
10466
|
+
tags:
|
|
10467
|
+
- tasks
|
|
10468
|
+
responses:
|
|
10469
|
+
"200":
|
|
10470
|
+
description: Successful response
|
|
10471
|
+
content:
|
|
10472
|
+
application/json:
|
|
10473
|
+
schema:
|
|
10474
|
+
type: object
|
|
10475
|
+
properties:
|
|
10476
|
+
content:
|
|
10477
|
+
type: string
|
|
10478
|
+
isError:
|
|
10479
|
+
type: boolean
|
|
10480
|
+
required:
|
|
10481
|
+
- content
|
|
10482
|
+
additionalProperties: false
|
|
10483
|
+
requestBody:
|
|
10484
|
+
required: true
|
|
10485
|
+
content:
|
|
10486
|
+
application/json:
|
|
10487
|
+
schema:
|
|
10488
|
+
type: object
|
|
10489
|
+
properties:
|
|
10490
|
+
work_item_id:
|
|
10491
|
+
type: string
|
|
10492
|
+
task_id:
|
|
10493
|
+
type: string
|
|
10494
|
+
task_name:
|
|
10495
|
+
type: string
|
|
10496
|
+
title:
|
|
10497
|
+
type: string
|
|
10498
|
+
priority_tier:
|
|
10499
|
+
type: number
|
|
10500
|
+
status:
|
|
10501
|
+
type: string
|
|
10502
|
+
created_order:
|
|
10503
|
+
type: number
|
|
10504
|
+
additionalProperties: false
|
|
10505
|
+
/v1/tasks/queue/run:
|
|
10506
|
+
post:
|
|
10507
|
+
operationId: tasks_queue_run_post
|
|
10508
|
+
summary: Run next task queue item
|
|
10509
|
+
description: Pick up and execute the next work item from the queue.
|
|
10510
|
+
tags:
|
|
10511
|
+
- tasks
|
|
10512
|
+
responses:
|
|
10513
|
+
"200":
|
|
10514
|
+
description: Successful response
|
|
10515
|
+
content:
|
|
10516
|
+
application/json:
|
|
10517
|
+
schema:
|
|
10518
|
+
type: object
|
|
10519
|
+
properties:
|
|
10520
|
+
content:
|
|
10521
|
+
type: string
|
|
10522
|
+
isError:
|
|
10523
|
+
type: boolean
|
|
10524
|
+
required:
|
|
10525
|
+
- content
|
|
10526
|
+
additionalProperties: false
|
|
10527
|
+
requestBody:
|
|
10528
|
+
required: true
|
|
10529
|
+
content:
|
|
10530
|
+
application/json:
|
|
10531
|
+
schema:
|
|
10532
|
+
type: object
|
|
10533
|
+
properties:
|
|
10534
|
+
work_item_id:
|
|
10535
|
+
type: string
|
|
10536
|
+
task_name:
|
|
10537
|
+
type: string
|
|
10538
|
+
title:
|
|
10539
|
+
type: string
|
|
10540
|
+
additionalProperties: false
|
|
10541
|
+
/v1/tasks/queue/show:
|
|
10542
|
+
post:
|
|
10543
|
+
operationId: tasks_queue_show_post
|
|
10544
|
+
summary: Show task queue
|
|
10545
|
+
description: List work items in the task queue, optionally filtered by status.
|
|
10546
|
+
tags:
|
|
10547
|
+
- tasks
|
|
10548
|
+
responses:
|
|
10549
|
+
"200":
|
|
10550
|
+
description: Successful response
|
|
10551
|
+
content:
|
|
10552
|
+
application/json:
|
|
10553
|
+
schema:
|
|
10554
|
+
type: object
|
|
10555
|
+
properties:
|
|
10556
|
+
content:
|
|
10557
|
+
type: string
|
|
10558
|
+
isError:
|
|
10559
|
+
type: boolean
|
|
10560
|
+
required:
|
|
10561
|
+
- content
|
|
10562
|
+
additionalProperties: false
|
|
10563
|
+
requestBody:
|
|
10564
|
+
required: true
|
|
10565
|
+
content:
|
|
10566
|
+
application/json:
|
|
10567
|
+
schema:
|
|
10568
|
+
type: object
|
|
10569
|
+
properties:
|
|
10570
|
+
status:
|
|
10571
|
+
anyOf:
|
|
10572
|
+
- type: string
|
|
10573
|
+
- type: array
|
|
10574
|
+
items:
|
|
10575
|
+
type: string
|
|
10576
|
+
additionalProperties: false
|
|
10577
|
+
/v1/tasks/queue/update:
|
|
10578
|
+
post:
|
|
10579
|
+
operationId: tasks_queue_update_post
|
|
10580
|
+
summary: Update a task queue item
|
|
10581
|
+
description: Update an existing work item in the task queue.
|
|
10582
|
+
tags:
|
|
10583
|
+
- tasks
|
|
10584
|
+
responses:
|
|
10585
|
+
"200":
|
|
10586
|
+
description: Successful response
|
|
10587
|
+
content:
|
|
10588
|
+
application/json:
|
|
10589
|
+
schema:
|
|
10590
|
+
type: object
|
|
10591
|
+
properties:
|
|
10592
|
+
content:
|
|
10593
|
+
type: string
|
|
10594
|
+
isError:
|
|
10595
|
+
type: boolean
|
|
10596
|
+
required:
|
|
10597
|
+
- content
|
|
10598
|
+
additionalProperties: false
|
|
10599
|
+
requestBody:
|
|
10600
|
+
required: true
|
|
10601
|
+
content:
|
|
10602
|
+
application/json:
|
|
10603
|
+
schema:
|
|
10604
|
+
type: object
|
|
10605
|
+
properties:
|
|
10606
|
+
work_item_id:
|
|
10607
|
+
type: string
|
|
10608
|
+
task_id:
|
|
10609
|
+
type: string
|
|
10610
|
+
task_name:
|
|
10611
|
+
type: string
|
|
10612
|
+
title:
|
|
10613
|
+
type: string
|
|
10614
|
+
priority_tier:
|
|
10615
|
+
type: number
|
|
10616
|
+
notes:
|
|
10617
|
+
type: string
|
|
10618
|
+
status:
|
|
10619
|
+
type: string
|
|
10620
|
+
enum:
|
|
10621
|
+
- queued
|
|
10622
|
+
- running
|
|
10623
|
+
- awaiting_review
|
|
10624
|
+
- done
|
|
10625
|
+
- failed
|
|
10626
|
+
- cancelled
|
|
10627
|
+
- archived
|
|
10628
|
+
sort_index:
|
|
10629
|
+
type: number
|
|
10630
|
+
filter_priority_tier:
|
|
10631
|
+
type: number
|
|
10632
|
+
filter_status:
|
|
10633
|
+
type: string
|
|
10634
|
+
created_order:
|
|
10635
|
+
type: number
|
|
10636
|
+
additionalProperties: false
|
|
10637
|
+
/v1/tasks/run:
|
|
10638
|
+
post:
|
|
10639
|
+
operationId: tasks_run_post
|
|
10640
|
+
summary: Run a task template
|
|
10641
|
+
description: Execute a saved task template by name or ID.
|
|
10642
|
+
tags:
|
|
10643
|
+
- tasks
|
|
10644
|
+
responses:
|
|
10645
|
+
"200":
|
|
10646
|
+
description: Successful response
|
|
10647
|
+
content:
|
|
10648
|
+
application/json:
|
|
10649
|
+
schema:
|
|
10650
|
+
type: object
|
|
10651
|
+
properties:
|
|
10652
|
+
ok:
|
|
10653
|
+
type: boolean
|
|
10654
|
+
content:
|
|
10655
|
+
type: string
|
|
10656
|
+
required:
|
|
10657
|
+
- ok
|
|
10658
|
+
- content
|
|
10659
|
+
additionalProperties: false
|
|
10660
|
+
requestBody:
|
|
10661
|
+
required: true
|
|
10662
|
+
content:
|
|
10663
|
+
application/json:
|
|
10664
|
+
schema:
|
|
10665
|
+
type: object
|
|
10666
|
+
properties:
|
|
10667
|
+
task_name:
|
|
10668
|
+
type: string
|
|
10669
|
+
minLength: 1
|
|
10670
|
+
task_id:
|
|
10671
|
+
type: string
|
|
10672
|
+
minLength: 1
|
|
10673
|
+
inputs:
|
|
10674
|
+
type: object
|
|
10675
|
+
propertyNames:
|
|
10676
|
+
type: string
|
|
10677
|
+
additionalProperties:
|
|
10678
|
+
type: string
|
|
10679
|
+
additionalProperties: false
|
|
10680
|
+
/v1/tasks/save:
|
|
10681
|
+
post:
|
|
10682
|
+
operationId: tasks_save_post
|
|
10683
|
+
summary: Save a task template
|
|
10684
|
+
description: Save the current conversation as a reusable task template.
|
|
10685
|
+
tags:
|
|
10686
|
+
- tasks
|
|
10687
|
+
responses:
|
|
10688
|
+
"200":
|
|
10689
|
+
description: Successful response
|
|
10690
|
+
content:
|
|
10691
|
+
application/json:
|
|
10692
|
+
schema:
|
|
10693
|
+
type: object
|
|
10694
|
+
properties:
|
|
10695
|
+
ok:
|
|
10696
|
+
type: boolean
|
|
10697
|
+
content:
|
|
10698
|
+
type: string
|
|
10699
|
+
required:
|
|
10700
|
+
- ok
|
|
10701
|
+
- content
|
|
10702
|
+
additionalProperties: false
|
|
10703
|
+
requestBody:
|
|
10704
|
+
required: true
|
|
10705
|
+
content:
|
|
10706
|
+
application/json:
|
|
10707
|
+
schema:
|
|
10708
|
+
type: object
|
|
10709
|
+
properties:
|
|
10710
|
+
conversation_id:
|
|
10711
|
+
type: string
|
|
10712
|
+
minLength: 1
|
|
10713
|
+
title:
|
|
10714
|
+
type: string
|
|
10715
|
+
minLength: 1
|
|
10716
|
+
additionalProperties: false
|
|
8581
10717
|
/v1/telemetry/lifecycle:
|
|
8582
10718
|
post:
|
|
8583
10719
|
operationId: telemetry_lifecycle_post
|
|
@@ -8660,15 +10796,12 @@ paths:
|
|
|
8660
10796
|
additionalProperties: {}
|
|
8661
10797
|
workingDir:
|
|
8662
10798
|
type: string
|
|
8663
|
-
forcePromptSideEffects:
|
|
8664
|
-
type: boolean
|
|
8665
10799
|
isInteractive:
|
|
8666
10800
|
type: boolean
|
|
8667
10801
|
required:
|
|
8668
10802
|
- toolName
|
|
8669
10803
|
- input
|
|
8670
10804
|
- workingDir
|
|
8671
|
-
- forcePromptSideEffects
|
|
8672
10805
|
- isInteractive
|
|
8673
10806
|
additionalProperties: false
|
|
8674
10807
|
/v1/trace-events:
|
|
@@ -8712,154 +10845,73 @@ paths:
|
|
|
8712
10845
|
schema:
|
|
8713
10846
|
type: integer
|
|
8714
10847
|
description: Return events after this sequence number
|
|
8715
|
-
/v1/
|
|
8716
|
-
post:
|
|
8717
|
-
operationId: trustrules_post
|
|
8718
|
-
summary: Add a trust rule for a pending confirmation
|
|
8719
|
-
description: Add a trust rule bound to a pending confirmation without resolving it.
|
|
8720
|
-
tags:
|
|
8721
|
-
- approvals
|
|
8722
|
-
responses:
|
|
8723
|
-
"200":
|
|
8724
|
-
description: Successful response
|
|
8725
|
-
content:
|
|
8726
|
-
application/json:
|
|
8727
|
-
schema:
|
|
8728
|
-
type: object
|
|
8729
|
-
properties:
|
|
8730
|
-
accepted:
|
|
8731
|
-
type: boolean
|
|
8732
|
-
required:
|
|
8733
|
-
- accepted
|
|
8734
|
-
additionalProperties: false
|
|
8735
|
-
requestBody:
|
|
8736
|
-
required: true
|
|
8737
|
-
content:
|
|
8738
|
-
application/json:
|
|
8739
|
-
schema:
|
|
8740
|
-
type: object
|
|
8741
|
-
properties:
|
|
8742
|
-
requestId:
|
|
8743
|
-
type: string
|
|
8744
|
-
description: Pending confirmation request ID
|
|
8745
|
-
pattern:
|
|
8746
|
-
type: string
|
|
8747
|
-
description: Allowlist pattern
|
|
8748
|
-
scope:
|
|
8749
|
-
type: string
|
|
8750
|
-
description: Scope for the rule
|
|
8751
|
-
decision:
|
|
8752
|
-
type: string
|
|
8753
|
-
description: allow or deny
|
|
8754
|
-
required:
|
|
8755
|
-
- requestId
|
|
8756
|
-
- pattern
|
|
8757
|
-
- scope
|
|
8758
|
-
- decision
|
|
8759
|
-
additionalProperties: false
|
|
8760
|
-
/v1/trust-rules/manage:
|
|
10848
|
+
/v1/transfers/{transferId}/content:
|
|
8761
10849
|
get:
|
|
8762
|
-
operationId:
|
|
8763
|
-
summary:
|
|
8764
|
-
description:
|
|
10850
|
+
operationId: transfers_by_transferId_content_get
|
|
10851
|
+
summary: Get transfer content
|
|
10852
|
+
description: "Serve raw file bytes for a to_host transfer. Single-use: returns 404 after first consumption."
|
|
8765
10853
|
tags:
|
|
8766
|
-
-
|
|
10854
|
+
- host-transfer
|
|
8767
10855
|
responses:
|
|
8768
10856
|
"200":
|
|
8769
10857
|
description: Successful response
|
|
8770
|
-
|
|
8771
|
-
|
|
8772
|
-
|
|
8773
|
-
|
|
8774
|
-
|
|
8775
|
-
|
|
8776
|
-
|
|
8777
|
-
|
|
8778
|
-
|
|
8779
|
-
|
|
8780
|
-
description: Trust rule objects
|
|
8781
|
-
required:
|
|
8782
|
-
- type
|
|
8783
|
-
- rules
|
|
8784
|
-
additionalProperties: false
|
|
8785
|
-
post:
|
|
8786
|
-
operationId: trustrules_manage_post
|
|
8787
|
-
summary: Add a trust rule
|
|
8788
|
-
description: Create a new persistent trust rule (standalone, not approval-flow).
|
|
10858
|
+
parameters:
|
|
10859
|
+
- name: transferId
|
|
10860
|
+
in: path
|
|
10861
|
+
required: true
|
|
10862
|
+
schema:
|
|
10863
|
+
type: string
|
|
10864
|
+
put:
|
|
10865
|
+
operationId: transfers_by_transferId_content_put
|
|
10866
|
+
summary: Put transfer content
|
|
10867
|
+
description: Receive raw file bytes for a to_sandbox transfer. Verifies SHA-256 integrity via the X-Transfer-SHA256 header.
|
|
8789
10868
|
tags:
|
|
8790
|
-
-
|
|
10869
|
+
- host-transfer
|
|
8791
10870
|
responses:
|
|
8792
10871
|
"200":
|
|
8793
10872
|
description: Successful response
|
|
8794
|
-
|
|
8795
|
-
|
|
8796
|
-
|
|
8797
|
-
|
|
8798
|
-
|
|
8799
|
-
|
|
8800
|
-
|
|
8801
|
-
|
|
8802
|
-
|
|
8803
|
-
|
|
8804
|
-
|
|
8805
|
-
required: true
|
|
8806
|
-
content:
|
|
8807
|
-
application/json:
|
|
8808
|
-
schema:
|
|
8809
|
-
type: object
|
|
8810
|
-
properties:
|
|
8811
|
-
toolName:
|
|
8812
|
-
type: string
|
|
8813
|
-
description: Tool name
|
|
8814
|
-
pattern:
|
|
8815
|
-
type: string
|
|
8816
|
-
description: Allowlist pattern
|
|
8817
|
-
scope:
|
|
8818
|
-
type: string
|
|
8819
|
-
description: Scope (required for scoped tools, ignored for others)
|
|
8820
|
-
decision:
|
|
8821
|
-
type: string
|
|
8822
|
-
description: allow, deny, or ask
|
|
8823
|
-
executionTarget:
|
|
8824
|
-
type: string
|
|
8825
|
-
description: Execution target
|
|
8826
|
-
required:
|
|
8827
|
-
- toolName
|
|
8828
|
-
- pattern
|
|
8829
|
-
- decision
|
|
8830
|
-
additionalProperties: false
|
|
8831
|
-
/v1/trust-rules/manage/{id}:
|
|
8832
|
-
delete:
|
|
8833
|
-
operationId: trustrules_manage_by_id_delete
|
|
8834
|
-
summary: Remove a trust rule
|
|
8835
|
-
description: Delete a trust rule by ID.
|
|
10873
|
+
parameters:
|
|
10874
|
+
- name: transferId
|
|
10875
|
+
in: path
|
|
10876
|
+
required: true
|
|
10877
|
+
schema:
|
|
10878
|
+
type: string
|
|
10879
|
+
/v1/trust-rules:
|
|
10880
|
+
get:
|
|
10881
|
+
operationId: trustrules_get
|
|
10882
|
+
summary: List trust rules
|
|
10883
|
+
description: List trust rules, optionally filtered by tool, origin, or include_all.
|
|
8836
10884
|
tags:
|
|
8837
10885
|
- trust-rules
|
|
8838
10886
|
responses:
|
|
8839
10887
|
"200":
|
|
8840
10888
|
description: Successful response
|
|
8841
|
-
content:
|
|
8842
|
-
application/json:
|
|
8843
|
-
schema:
|
|
8844
|
-
type: object
|
|
8845
|
-
properties:
|
|
8846
|
-
ok:
|
|
8847
|
-
type: boolean
|
|
8848
|
-
required:
|
|
8849
|
-
- ok
|
|
8850
|
-
additionalProperties: false
|
|
8851
10889
|
parameters:
|
|
8852
|
-
- name:
|
|
8853
|
-
in:
|
|
8854
|
-
required:
|
|
10890
|
+
- name: tool
|
|
10891
|
+
in: query
|
|
10892
|
+
required: false
|
|
8855
10893
|
schema:
|
|
8856
10894
|
type: string
|
|
8857
|
-
|
|
8858
|
-
|
|
8859
|
-
|
|
8860
|
-
|
|
10895
|
+
description: Filter by tool name
|
|
10896
|
+
- name: origin
|
|
10897
|
+
in: query
|
|
10898
|
+
required: false
|
|
10899
|
+
schema:
|
|
10900
|
+
type: string
|
|
10901
|
+
description: Filter by origin
|
|
10902
|
+
- name: include_all
|
|
10903
|
+
in: query
|
|
10904
|
+
required: false
|
|
10905
|
+
schema:
|
|
10906
|
+
type: string
|
|
10907
|
+
description: Include unmodified defaults
|
|
10908
|
+
/v1/trust-rules/suggest:
|
|
10909
|
+
post:
|
|
10910
|
+
operationId: trustrules_suggest_post
|
|
10911
|
+
summary: Suggest a trust rule
|
|
10912
|
+
description: Use an LLM to suggest a trust rule pattern, risk level, and scope for a given action.
|
|
8861
10913
|
tags:
|
|
8862
|
-
- trust
|
|
10914
|
+
- trust
|
|
8863
10915
|
responses:
|
|
8864
10916
|
"200":
|
|
8865
10917
|
description: Successful response
|
|
@@ -8868,17 +10920,46 @@ paths:
|
|
|
8868
10920
|
schema:
|
|
8869
10921
|
type: object
|
|
8870
10922
|
properties:
|
|
8871
|
-
|
|
8872
|
-
type:
|
|
10923
|
+
pattern:
|
|
10924
|
+
type: string
|
|
10925
|
+
risk:
|
|
10926
|
+
type: string
|
|
10927
|
+
scope:
|
|
10928
|
+
type: string
|
|
10929
|
+
description:
|
|
10930
|
+
type: string
|
|
10931
|
+
scopeOptions:
|
|
10932
|
+
type: array
|
|
10933
|
+
items:
|
|
10934
|
+
type: object
|
|
10935
|
+
properties:
|
|
10936
|
+
pattern:
|
|
10937
|
+
type: string
|
|
10938
|
+
label:
|
|
10939
|
+
type: string
|
|
10940
|
+
required:
|
|
10941
|
+
- pattern
|
|
10942
|
+
- label
|
|
10943
|
+
additionalProperties: false
|
|
10944
|
+
directoryScopeOptions:
|
|
10945
|
+
type: array
|
|
10946
|
+
items:
|
|
10947
|
+
type: object
|
|
10948
|
+
properties:
|
|
10949
|
+
scope:
|
|
10950
|
+
type: string
|
|
10951
|
+
label:
|
|
10952
|
+
type: string
|
|
10953
|
+
required:
|
|
10954
|
+
- scope
|
|
10955
|
+
- label
|
|
10956
|
+
additionalProperties: false
|
|
8873
10957
|
required:
|
|
8874
|
-
-
|
|
10958
|
+
- pattern
|
|
10959
|
+
- risk
|
|
10960
|
+
- description
|
|
10961
|
+
- scopeOptions
|
|
8875
10962
|
additionalProperties: false
|
|
8876
|
-
parameters:
|
|
8877
|
-
- name: id
|
|
8878
|
-
in: path
|
|
8879
|
-
required: true
|
|
8880
|
-
schema:
|
|
8881
|
-
type: string
|
|
8882
10963
|
requestBody:
|
|
8883
10964
|
required: true
|
|
8884
10965
|
content:
|
|
@@ -8888,33 +10969,84 @@ paths:
|
|
|
8888
10969
|
properties:
|
|
8889
10970
|
tool:
|
|
8890
10971
|
type: string
|
|
8891
|
-
|
|
8892
|
-
|
|
10972
|
+
minLength: 1
|
|
10973
|
+
command:
|
|
8893
10974
|
type: string
|
|
8894
|
-
|
|
8895
|
-
|
|
10975
|
+
minLength: 1
|
|
10976
|
+
riskAssessment:
|
|
10977
|
+
type: object
|
|
10978
|
+
properties:
|
|
10979
|
+
risk:
|
|
10980
|
+
type: string
|
|
10981
|
+
reasoning:
|
|
10982
|
+
type: string
|
|
10983
|
+
reasonDescription:
|
|
10984
|
+
type: string
|
|
10985
|
+
required:
|
|
10986
|
+
- risk
|
|
10987
|
+
- reasoning
|
|
10988
|
+
- reasonDescription
|
|
10989
|
+
additionalProperties: false
|
|
10990
|
+
scopeOptions:
|
|
10991
|
+
type: array
|
|
10992
|
+
items:
|
|
10993
|
+
type: object
|
|
10994
|
+
properties:
|
|
10995
|
+
pattern:
|
|
10996
|
+
type: string
|
|
10997
|
+
label:
|
|
10998
|
+
type: string
|
|
10999
|
+
required:
|
|
11000
|
+
- pattern
|
|
11001
|
+
- label
|
|
11002
|
+
additionalProperties: false
|
|
11003
|
+
directoryScopeOptions:
|
|
11004
|
+
type: array
|
|
11005
|
+
items:
|
|
11006
|
+
type: object
|
|
11007
|
+
properties:
|
|
11008
|
+
scope:
|
|
11009
|
+
type: string
|
|
11010
|
+
label:
|
|
11011
|
+
type: string
|
|
11012
|
+
required:
|
|
11013
|
+
- scope
|
|
11014
|
+
- label
|
|
11015
|
+
additionalProperties: false
|
|
11016
|
+
currentThreshold:
|
|
8896
11017
|
type: string
|
|
8897
|
-
|
|
8898
|
-
decision:
|
|
11018
|
+
intent:
|
|
8899
11019
|
type: string
|
|
8900
|
-
|
|
8901
|
-
|
|
8902
|
-
|
|
8903
|
-
|
|
11020
|
+
enum:
|
|
11021
|
+
- auto_approve
|
|
11022
|
+
- escalate
|
|
11023
|
+
existingRule:
|
|
11024
|
+
type: object
|
|
11025
|
+
properties:
|
|
11026
|
+
id:
|
|
11027
|
+
type: string
|
|
11028
|
+
pattern:
|
|
11029
|
+
type: string
|
|
11030
|
+
risk:
|
|
11031
|
+
type: string
|
|
11032
|
+
required:
|
|
11033
|
+
- id
|
|
11034
|
+
- pattern
|
|
11035
|
+
- risk
|
|
11036
|
+
additionalProperties: false
|
|
8904
11037
|
required:
|
|
8905
11038
|
- tool
|
|
8906
|
-
-
|
|
8907
|
-
-
|
|
8908
|
-
-
|
|
8909
|
-
-
|
|
11039
|
+
- command
|
|
11040
|
+
- riskAssessment
|
|
11041
|
+
- scopeOptions
|
|
11042
|
+
- currentThreshold
|
|
11043
|
+
- intent
|
|
8910
11044
|
additionalProperties: false
|
|
8911
11045
|
/v1/tts/synthesize:
|
|
8912
11046
|
post:
|
|
8913
11047
|
operationId: tts_synthesize_post
|
|
8914
11048
|
summary: Synthesize text to speech
|
|
8915
|
-
description:
|
|
8916
|
-
Synthesize arbitrary text to audio using the configured TTS provider. Provider selection is resolved
|
|
8917
|
-
globally via config — callers do not specify a provider.
|
|
11049
|
+
description: Synthesize arbitrary text to audio using the configured TTS provider.
|
|
8918
11050
|
tags:
|
|
8919
11051
|
- tts
|
|
8920
11052
|
responses:
|
|
@@ -8931,9 +11063,7 @@ paths:
|
|
|
8931
11063
|
type: string
|
|
8932
11064
|
description: Text to synthesize into speech
|
|
8933
11065
|
context:
|
|
8934
|
-
description:
|
|
8935
|
-
Optional context hint for output policy or capability selection (e.g. voice-mode). Does not affect provider
|
|
8936
|
-
selection.
|
|
11066
|
+
description: Optional context hint for output policy or capability selection.
|
|
8937
11067
|
type: string
|
|
8938
11068
|
conversationId:
|
|
8939
11069
|
description: Optional conversation ID for scoping or analytics.
|
|
@@ -8941,11 +11071,75 @@ paths:
|
|
|
8941
11071
|
required:
|
|
8942
11072
|
- text
|
|
8943
11073
|
additionalProperties: false
|
|
11074
|
+
/v1/ui/request:
|
|
11075
|
+
post:
|
|
11076
|
+
operationId: ui_request_post
|
|
11077
|
+
summary: Present an interactive UI surface
|
|
11078
|
+
description: Present an interactive UI surface to the user and await their response.
|
|
11079
|
+
tags:
|
|
11080
|
+
- ui
|
|
11081
|
+
responses:
|
|
11082
|
+
"200":
|
|
11083
|
+
description: Successful response
|
|
11084
|
+
requestBody:
|
|
11085
|
+
required: true
|
|
11086
|
+
content:
|
|
11087
|
+
application/json:
|
|
11088
|
+
schema:
|
|
11089
|
+
type: object
|
|
11090
|
+
properties:
|
|
11091
|
+
conversationId:
|
|
11092
|
+
type: string
|
|
11093
|
+
minLength: 1
|
|
11094
|
+
surfaceType:
|
|
11095
|
+
type: string
|
|
11096
|
+
enum:
|
|
11097
|
+
- confirmation
|
|
11098
|
+
- form
|
|
11099
|
+
title:
|
|
11100
|
+
type: string
|
|
11101
|
+
data:
|
|
11102
|
+
type: object
|
|
11103
|
+
propertyNames:
|
|
11104
|
+
type: string
|
|
11105
|
+
additionalProperties: {}
|
|
11106
|
+
actions:
|
|
11107
|
+
type: array
|
|
11108
|
+
items:
|
|
11109
|
+
type: object
|
|
11110
|
+
properties:
|
|
11111
|
+
id:
|
|
11112
|
+
type: string
|
|
11113
|
+
minLength: 1
|
|
11114
|
+
label:
|
|
11115
|
+
type: string
|
|
11116
|
+
minLength: 1
|
|
11117
|
+
variant:
|
|
11118
|
+
type: string
|
|
11119
|
+
enum:
|
|
11120
|
+
- primary
|
|
11121
|
+
- danger
|
|
11122
|
+
- secondary
|
|
11123
|
+
required:
|
|
11124
|
+
- id
|
|
11125
|
+
- label
|
|
11126
|
+
additionalProperties: false
|
|
11127
|
+
timeoutMs:
|
|
11128
|
+
type: integer
|
|
11129
|
+
exclusiveMinimum: 0
|
|
11130
|
+
maximum: 9007199254740991
|
|
11131
|
+
required:
|
|
11132
|
+
- conversationId
|
|
11133
|
+
- surfaceType
|
|
11134
|
+
- data
|
|
11135
|
+
additionalProperties: false
|
|
8944
11136
|
/v1/usage/breakdown:
|
|
8945
11137
|
get:
|
|
8946
11138
|
operationId: usage_breakdown_get
|
|
8947
11139
|
summary: Get usage breakdown
|
|
8948
|
-
description:
|
|
11140
|
+
description:
|
|
11141
|
+
Return grouped usage breakdown. Prefer call_site for user-facing task breakdowns; actor is a
|
|
11142
|
+
legacy/internal dimension.
|
|
8949
11143
|
tags:
|
|
8950
11144
|
- usage
|
|
8951
11145
|
responses:
|
|
@@ -8981,7 +11175,7 @@ paths:
|
|
|
8981
11175
|
required: false
|
|
8982
11176
|
schema:
|
|
8983
11177
|
type: string
|
|
8984
|
-
description: "Group by: actor, provider, model,
|
|
11178
|
+
description: "Group by: actor, provider, model, conversation, call_site, inference_profile (required)"
|
|
8985
11179
|
/v1/usage/daily:
|
|
8986
11180
|
get:
|
|
8987
11181
|
operationId: usage_daily_get
|
|
@@ -9034,6 +11228,64 @@ paths:
|
|
|
9034
11228
|
description:
|
|
9035
11229
|
IANA timezone identifier (e.g. "America/Los_Angeles"). Bucket boundaries and display labels are computed in
|
|
9036
11230
|
this timezone. Defaults to "UTC" for backwards compatibility.
|
|
11231
|
+
/v1/usage/series:
|
|
11232
|
+
get:
|
|
11233
|
+
operationId: usage_series_get
|
|
11234
|
+
summary: Get grouped usage series
|
|
11235
|
+
description: Return usage buckets with per-group values for stacked charts. Prefer call_site for user-facing task stacks.
|
|
11236
|
+
tags:
|
|
11237
|
+
- usage
|
|
11238
|
+
responses:
|
|
11239
|
+
"200":
|
|
11240
|
+
description: Successful response
|
|
11241
|
+
content:
|
|
11242
|
+
application/json:
|
|
11243
|
+
schema:
|
|
11244
|
+
type: object
|
|
11245
|
+
properties:
|
|
11246
|
+
buckets:
|
|
11247
|
+
type: array
|
|
11248
|
+
items: {}
|
|
11249
|
+
description: Grouped usage bucket objects
|
|
11250
|
+
required:
|
|
11251
|
+
- buckets
|
|
11252
|
+
additionalProperties: false
|
|
11253
|
+
parameters:
|
|
11254
|
+
- name: from
|
|
11255
|
+
in: query
|
|
11256
|
+
required: false
|
|
11257
|
+
schema:
|
|
11258
|
+
type: integer
|
|
11259
|
+
description: Start epoch millis (required)
|
|
11260
|
+
- name: to
|
|
11261
|
+
in: query
|
|
11262
|
+
required: false
|
|
11263
|
+
schema:
|
|
11264
|
+
type: integer
|
|
11265
|
+
description: End epoch millis (required)
|
|
11266
|
+
- name: granularity
|
|
11267
|
+
in: query
|
|
11268
|
+
required: false
|
|
11269
|
+
schema:
|
|
11270
|
+
type: string
|
|
11271
|
+
enum:
|
|
11272
|
+
- daily
|
|
11273
|
+
- hourly
|
|
11274
|
+
description: 'Bucket granularity: "daily" (default) or "hourly"'
|
|
11275
|
+
- name: groupBy
|
|
11276
|
+
in: query
|
|
11277
|
+
required: false
|
|
11278
|
+
schema:
|
|
11279
|
+
type: string
|
|
11280
|
+
description: "Group by: actor, provider, model, call_site, inference_profile (required)"
|
|
11281
|
+
- name: tz
|
|
11282
|
+
in: query
|
|
11283
|
+
required: false
|
|
11284
|
+
schema:
|
|
11285
|
+
type: string
|
|
11286
|
+
description:
|
|
11287
|
+
IANA timezone identifier (e.g. "America/Los_Angeles"). Bucket boundaries and display labels are computed in
|
|
11288
|
+
this timezone. Defaults to "UTC".
|
|
9037
11289
|
/v1/usage/totals:
|
|
9038
11290
|
get:
|
|
9039
11291
|
operationId: usage_totals_get
|
|
@@ -9057,6 +11309,196 @@ paths:
|
|
|
9057
11309
|
schema:
|
|
9058
11310
|
type: integer
|
|
9059
11311
|
description: End epoch millis (required)
|
|
11312
|
+
/v1/watchers/create:
|
|
11313
|
+
post:
|
|
11314
|
+
operationId: watchers_create_post
|
|
11315
|
+
summary: Create a watcher
|
|
11316
|
+
description: Create a new watcher with a provider and action prompt.
|
|
11317
|
+
tags:
|
|
11318
|
+
- watchers
|
|
11319
|
+
responses:
|
|
11320
|
+
"200":
|
|
11321
|
+
description: Successful response
|
|
11322
|
+
content:
|
|
11323
|
+
application/json:
|
|
11324
|
+
schema:
|
|
11325
|
+
type: object
|
|
11326
|
+
properties: {}
|
|
11327
|
+
additionalProperties: {}
|
|
11328
|
+
requestBody:
|
|
11329
|
+
required: true
|
|
11330
|
+
content:
|
|
11331
|
+
application/json:
|
|
11332
|
+
schema:
|
|
11333
|
+
type: object
|
|
11334
|
+
properties:
|
|
11335
|
+
name:
|
|
11336
|
+
type: string
|
|
11337
|
+
minLength: 1
|
|
11338
|
+
provider:
|
|
11339
|
+
type: string
|
|
11340
|
+
minLength: 1
|
|
11341
|
+
action_prompt:
|
|
11342
|
+
type: string
|
|
11343
|
+
minLength: 1
|
|
11344
|
+
poll_interval_ms:
|
|
11345
|
+
type: integer
|
|
11346
|
+
minimum: 15000
|
|
11347
|
+
maximum: 9007199254740991
|
|
11348
|
+
config:
|
|
11349
|
+
type: object
|
|
11350
|
+
propertyNames:
|
|
11351
|
+
type: string
|
|
11352
|
+
additionalProperties: {}
|
|
11353
|
+
credential_service:
|
|
11354
|
+
type: string
|
|
11355
|
+
required:
|
|
11356
|
+
- name
|
|
11357
|
+
- provider
|
|
11358
|
+
- action_prompt
|
|
11359
|
+
additionalProperties: false
|
|
11360
|
+
/v1/watchers/delete:
|
|
11361
|
+
post:
|
|
11362
|
+
operationId: watchers_delete_post
|
|
11363
|
+
summary: Delete a watcher
|
|
11364
|
+
description: Delete a watcher by ID.
|
|
11365
|
+
tags:
|
|
11366
|
+
- watchers
|
|
11367
|
+
responses:
|
|
11368
|
+
"200":
|
|
11369
|
+
description: Successful response
|
|
11370
|
+
content:
|
|
11371
|
+
application/json:
|
|
11372
|
+
schema:
|
|
11373
|
+
type: object
|
|
11374
|
+
properties: {}
|
|
11375
|
+
additionalProperties: {}
|
|
11376
|
+
requestBody:
|
|
11377
|
+
required: true
|
|
11378
|
+
content:
|
|
11379
|
+
application/json:
|
|
11380
|
+
schema:
|
|
11381
|
+
type: object
|
|
11382
|
+
properties:
|
|
11383
|
+
watcher_id:
|
|
11384
|
+
type: string
|
|
11385
|
+
minLength: 1
|
|
11386
|
+
required:
|
|
11387
|
+
- watcher_id
|
|
11388
|
+
additionalProperties: false
|
|
11389
|
+
/v1/watchers/digest:
|
|
11390
|
+
post:
|
|
11391
|
+
operationId: watchers_digest_post
|
|
11392
|
+
summary: Get watcher event digest
|
|
11393
|
+
description: Get recent watcher events, optionally filtered by watcher ID.
|
|
11394
|
+
tags:
|
|
11395
|
+
- watchers
|
|
11396
|
+
responses:
|
|
11397
|
+
"200":
|
|
11398
|
+
description: Successful response
|
|
11399
|
+
content:
|
|
11400
|
+
application/json:
|
|
11401
|
+
schema:
|
|
11402
|
+
type: object
|
|
11403
|
+
properties: {}
|
|
11404
|
+
additionalProperties: {}
|
|
11405
|
+
requestBody:
|
|
11406
|
+
required: true
|
|
11407
|
+
content:
|
|
11408
|
+
application/json:
|
|
11409
|
+
schema:
|
|
11410
|
+
type: object
|
|
11411
|
+
properties:
|
|
11412
|
+
watcher_id:
|
|
11413
|
+
type: string
|
|
11414
|
+
hours:
|
|
11415
|
+
default: 24
|
|
11416
|
+
type: number
|
|
11417
|
+
exclusiveMinimum: 0
|
|
11418
|
+
limit:
|
|
11419
|
+
default: 50
|
|
11420
|
+
type: integer
|
|
11421
|
+
exclusiveMinimum: 0
|
|
11422
|
+
maximum: 9007199254740991
|
|
11423
|
+
required:
|
|
11424
|
+
- hours
|
|
11425
|
+
- limit
|
|
11426
|
+
additionalProperties: false
|
|
11427
|
+
/v1/watchers/list:
|
|
11428
|
+
post:
|
|
11429
|
+
operationId: watchers_list_post
|
|
11430
|
+
summary: List watchers
|
|
11431
|
+
description: List all watchers, or get details for a specific watcher by ID.
|
|
11432
|
+
tags:
|
|
11433
|
+
- watchers
|
|
11434
|
+
responses:
|
|
11435
|
+
"200":
|
|
11436
|
+
description: Successful response
|
|
11437
|
+
content:
|
|
11438
|
+
application/json:
|
|
11439
|
+
schema:
|
|
11440
|
+
type: object
|
|
11441
|
+
properties: {}
|
|
11442
|
+
additionalProperties: {}
|
|
11443
|
+
requestBody:
|
|
11444
|
+
required: true
|
|
11445
|
+
content:
|
|
11446
|
+
application/json:
|
|
11447
|
+
schema:
|
|
11448
|
+
type: object
|
|
11449
|
+
properties:
|
|
11450
|
+
watcher_id:
|
|
11451
|
+
type: string
|
|
11452
|
+
enabled_only:
|
|
11453
|
+
default: false
|
|
11454
|
+
type: boolean
|
|
11455
|
+
required:
|
|
11456
|
+
- enabled_only
|
|
11457
|
+
additionalProperties: false
|
|
11458
|
+
/v1/watchers/update:
|
|
11459
|
+
post:
|
|
11460
|
+
operationId: watchers_update_post
|
|
11461
|
+
summary: Update a watcher
|
|
11462
|
+
description: Update an existing watcher's configuration.
|
|
11463
|
+
tags:
|
|
11464
|
+
- watchers
|
|
11465
|
+
responses:
|
|
11466
|
+
"200":
|
|
11467
|
+
description: Successful response
|
|
11468
|
+
content:
|
|
11469
|
+
application/json:
|
|
11470
|
+
schema:
|
|
11471
|
+
type: object
|
|
11472
|
+
properties: {}
|
|
11473
|
+
additionalProperties: {}
|
|
11474
|
+
requestBody:
|
|
11475
|
+
required: true
|
|
11476
|
+
content:
|
|
11477
|
+
application/json:
|
|
11478
|
+
schema:
|
|
11479
|
+
type: object
|
|
11480
|
+
properties:
|
|
11481
|
+
watcher_id:
|
|
11482
|
+
type: string
|
|
11483
|
+
minLength: 1
|
|
11484
|
+
name:
|
|
11485
|
+
type: string
|
|
11486
|
+
action_prompt:
|
|
11487
|
+
type: string
|
|
11488
|
+
poll_interval_ms:
|
|
11489
|
+
type: integer
|
|
11490
|
+
minimum: 15000
|
|
11491
|
+
maximum: 9007199254740991
|
|
11492
|
+
enabled:
|
|
11493
|
+
type: boolean
|
|
11494
|
+
config:
|
|
11495
|
+
type: object
|
|
11496
|
+
propertyNames:
|
|
11497
|
+
type: string
|
|
11498
|
+
additionalProperties: {}
|
|
11499
|
+
required:
|
|
11500
|
+
- watcher_id
|
|
11501
|
+
additionalProperties: false
|
|
9060
11502
|
/v1/work-items:
|
|
9061
11503
|
get:
|
|
9062
11504
|
operationId: workitems_get
|
|
@@ -9078,6 +11520,21 @@ paths:
|
|
|
9078
11520
|
required:
|
|
9079
11521
|
- items
|
|
9080
11522
|
additionalProperties: false
|
|
11523
|
+
parameters:
|
|
11524
|
+
- name: status
|
|
11525
|
+
in: query
|
|
11526
|
+
required: false
|
|
11527
|
+
schema:
|
|
11528
|
+
type: string
|
|
11529
|
+
enum:
|
|
11530
|
+
- pending
|
|
11531
|
+
- running
|
|
11532
|
+
- awaiting_review
|
|
11533
|
+
- done
|
|
11534
|
+
- failed
|
|
11535
|
+
- cancelled
|
|
11536
|
+
- archived
|
|
11537
|
+
description: Filter by work item status
|
|
9081
11538
|
/v1/work-items/{id}:
|
|
9082
11539
|
delete:
|
|
9083
11540
|
operationId: workitems_by_id_delete
|
|
@@ -9192,6 +11649,10 @@ paths:
|
|
|
9192
11649
|
responses:
|
|
9193
11650
|
"200":
|
|
9194
11651
|
description: Successful response
|
|
11652
|
+
"404":
|
|
11653
|
+
description: Work item not found
|
|
11654
|
+
"409":
|
|
11655
|
+
description: Work item is not running
|
|
9195
11656
|
parameters:
|
|
9196
11657
|
- name: id
|
|
9197
11658
|
in: path
|
|
@@ -9292,6 +11753,12 @@ paths:
|
|
|
9292
11753
|
responses:
|
|
9293
11754
|
"200":
|
|
9294
11755
|
description: Successful response
|
|
11756
|
+
"403":
|
|
11757
|
+
description: Required tool permissions not approved
|
|
11758
|
+
"404":
|
|
11759
|
+
description: Work item or associated task not found
|
|
11760
|
+
"409":
|
|
11761
|
+
description: Work item is already running or not runnable
|
|
9295
11762
|
parameters:
|
|
9296
11763
|
- name: id
|
|
9297
11764
|
in: path
|
|
@@ -9318,6 +11785,13 @@ paths:
|
|
|
9318
11785
|
responses:
|
|
9319
11786
|
"200":
|
|
9320
11787
|
description: Successful response
|
|
11788
|
+
parameters:
|
|
11789
|
+
- name: path
|
|
11790
|
+
in: query
|
|
11791
|
+
required: true
|
|
11792
|
+
schema:
|
|
11793
|
+
type: string
|
|
11794
|
+
description: File path to read
|
|
9321
11795
|
/v1/workspace/delete:
|
|
9322
11796
|
post:
|
|
9323
11797
|
operationId: workspace_delete_post
|
|
@@ -9328,6 +11802,16 @@ paths:
|
|
|
9328
11802
|
responses:
|
|
9329
11803
|
"200":
|
|
9330
11804
|
description: Successful response
|
|
11805
|
+
content:
|
|
11806
|
+
application/json:
|
|
11807
|
+
schema:
|
|
11808
|
+
type: object
|
|
11809
|
+
properties:
|
|
11810
|
+
success:
|
|
11811
|
+
type: boolean
|
|
11812
|
+
required:
|
|
11813
|
+
- success
|
|
11814
|
+
additionalProperties: false
|
|
9331
11815
|
requestBody:
|
|
9332
11816
|
required: true
|
|
9333
11817
|
content:
|
|
@@ -9403,13 +11887,15 @@ paths:
|
|
|
9403
11887
|
responses:
|
|
9404
11888
|
"200":
|
|
9405
11889
|
description: Successful response
|
|
11890
|
+
"416":
|
|
11891
|
+
description: Range Not Satisfiable
|
|
9406
11892
|
parameters:
|
|
9407
11893
|
- name: path
|
|
9408
11894
|
in: query
|
|
9409
|
-
required:
|
|
11895
|
+
required: true
|
|
9410
11896
|
schema:
|
|
9411
11897
|
type: string
|
|
9412
|
-
description: Relative file path
|
|
11898
|
+
description: Relative file path
|
|
9413
11899
|
- name: showHidden
|
|
9414
11900
|
in: query
|
|
9415
11901
|
required: false
|