@vellumai/assistant 0.7.1 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ARCHITECTURE.md +32 -49
- package/Dockerfile +1 -0
- package/README.md +1 -2
- package/__tests__/permissions/gateway-threshold-reader.test.ts +9 -3
- package/bun.lock +26 -26
- package/docs/architecture/security.md +20 -0
- package/docs/plugins.md +7 -9
- package/knip.json +1 -0
- package/node_modules/@vellumai/gateway-client/src/index.ts +1 -0
- package/node_modules/@vellumai/gateway-client/src/ipc-client.ts +39 -1
- package/node_modules/@vellumai/gateway-client/src/types.ts +11 -0
- package/node_modules/@vellumai/service-contracts/package.json +2 -0
- package/node_modules/@vellumai/service-contracts/src/__tests__/contracts.test.ts +4 -0
- package/node_modules/@vellumai/service-contracts/src/__tests__/ingress.test.ts +107 -0
- package/node_modules/@vellumai/service-contracts/src/index.ts +5 -1
- package/node_modules/@vellumai/service-contracts/src/ingress.ts +24 -0
- package/node_modules/@vellumai/service-contracts/src/twilio-ingress.ts +84 -0
- package/node_modules/@vellumai/skill-host-contracts/src/assistant-event.ts +9 -0
- package/node_modules/@vellumai/twilio-client/bun.lock +24 -0
- package/node_modules/@vellumai/twilio-client/package.json +18 -0
- package/node_modules/@vellumai/twilio-client/src/__tests__/twilio-client.test.ts +128 -0
- package/node_modules/@vellumai/twilio-client/src/index.ts +179 -0
- package/node_modules/@vellumai/twilio-client/tsconfig.json +20 -0
- package/openapi.yaml +565 -12
- package/package.json +6 -3
- package/src/__tests__/app-builder-tool-scripts.test.ts +3 -3
- package/src/__tests__/app-bundler.test.ts +170 -1
- package/src/__tests__/app-control-flow.test.ts +374 -0
- package/src/__tests__/app-control-no-global-cgevent.test.ts +98 -0
- package/src/__tests__/app-control-tool-schemas.test.ts +621 -0
- package/src/__tests__/app-executors.test.ts +30 -43
- package/src/__tests__/approval-routes-http.test.ts +23 -6
- package/src/__tests__/assistant-event-hub-machine-name.test.ts +146 -0
- package/src/__tests__/assistant-event-hub-targeted.test.ts +257 -0
- package/src/__tests__/assistant-event-hub.test.ts +109 -2
- package/src/__tests__/assistant-event.test.ts +10 -0
- package/src/__tests__/assistant-events-sse-hardening.test.ts +7 -2
- package/src/__tests__/assistant-feature-flags-integration.test.ts +11 -7
- package/src/__tests__/background-shell-host-bash.test.ts +14 -15
- package/src/__tests__/bootstrap-turn-cleanup.test.ts +44 -0
- package/src/__tests__/btw-routes.test.ts +13 -4
- package/src/__tests__/call-controller.test.ts +49 -1
- package/src/__tests__/call-domain.test.ts +0 -2
- package/src/__tests__/call-routes-http.test.ts +0 -2
- package/src/__tests__/channel-readiness-service.test.ts +59 -1
- package/src/__tests__/checker.test.ts +3 -4
- package/src/__tests__/config-loader-backfill.test.ts +90 -155
- package/src/__tests__/config-loader-platform-defaults.test.ts +196 -0
- package/src/__tests__/config-schema-cmd.test.ts +0 -1
- package/src/__tests__/config-set-platform-guard.test.ts +48 -4
- package/src/__tests__/config-watcher-cleanup-throttle.test.ts +2 -2
- package/src/__tests__/config-watcher.test.ts +2 -2
- package/src/__tests__/conversation-app-control-instantiation.test.ts +392 -0
- package/src/__tests__/conversation-app-control-lifecycle.test.ts +237 -0
- package/src/__tests__/conversation-init.benchmark.test.ts +0 -2
- package/src/__tests__/conversation-lifecycle.test.ts +36 -0
- package/src/__tests__/conversation-process-app-control-preactivation.test.ts +283 -0
- package/src/__tests__/conversation-routes-disk-view.test.ts +6 -0
- package/src/__tests__/conversation-routes-guardian-reply.test.ts +120 -72
- package/src/__tests__/conversation-routes-slash-commands.test.ts +1 -0
- package/src/__tests__/conversation-slash-commands.test.ts +0 -4
- package/src/__tests__/conversation-surfaces-action-delivery.test.ts +202 -0
- package/src/__tests__/conversation-surfaces-app-control.test.ts +317 -0
- package/src/__tests__/credential-execution-feature-gates.test.ts +5 -12
- package/src/__tests__/credential-execution-managed-contract.test.ts +3 -131
- package/src/__tests__/credentials-cli.test.ts +5 -12
- package/src/__tests__/cu-unified-flow.test.ts +185 -23
- package/src/__tests__/daemon-credential-client.test.ts +101 -19
- package/src/__tests__/db-schedule-syntax-migration.test.ts +2 -0
- package/src/__tests__/dynamic-skill-workflow-prompt.test.ts +0 -1
- package/src/__tests__/gateway-only-enforcement.test.ts +0 -1
- package/src/__tests__/guardian-verification-voice-binding.test.ts +0 -2
- package/src/__tests__/handlers-skills-memory-v2-reseed.test.ts +0 -2
- package/src/__tests__/handlers-user-message-approval-consumption.test.ts +0 -1
- package/src/__tests__/heartbeat-service.test.ts +718 -1
- package/src/__tests__/helpers/call-route-handler.ts +7 -1
- package/src/__tests__/host-app-control-proxy.test.ts +602 -0
- package/src/__tests__/host-app-control-routes.test.ts +263 -0
- package/src/__tests__/host-bash-proxy.test.ts +246 -47
- package/src/__tests__/host-bash-routes.test.ts +294 -0
- package/src/__tests__/host-browser-proxy.test.ts +24 -22
- package/src/__tests__/host-browser-routes.test.ts +39 -13
- package/src/__tests__/host-cu-proxy.test.ts +41 -52
- package/src/__tests__/host-cu-routes-targeted.test.ts +300 -0
- package/src/__tests__/host-file-edit-tool.test.ts +47 -1
- package/src/__tests__/host-file-proxy-targeted.test.ts +339 -0
- package/src/__tests__/host-file-proxy.test.ts +37 -43
- package/src/__tests__/host-file-read-tool.test.ts +17 -0
- package/src/__tests__/host-file-routes-targeted.test.ts +262 -0
- package/src/__tests__/host-file-write-tool.test.ts +42 -1
- package/src/__tests__/host-proxy-base.test.ts +312 -0
- package/src/__tests__/host-shell-tool.test.ts +22 -4
- package/src/__tests__/host-transfer-proxy-targeted.test.ts +583 -0
- package/src/__tests__/host-transfer-proxy.test.ts +121 -22
- package/src/__tests__/host-transfer-routes-targeted.test.ts +447 -0
- package/src/__tests__/http-user-message-parity.test.ts +1 -0
- package/src/__tests__/identity-intro-cache.test.ts +29 -0
- package/src/__tests__/identity-routes.test.ts +103 -1
- package/src/__tests__/init-feature-flag-overrides.test.ts +26 -3
- package/src/__tests__/inline-command-runner.test.ts +0 -1
- package/src/__tests__/inline-skill-load-permissions.test.ts +5 -11
- package/src/__tests__/integration-status.test.ts +85 -5
- package/src/__tests__/intent-routing.test.ts +0 -1
- package/src/__tests__/jobs-store-qdrant-breaker.test.ts +95 -5
- package/src/__tests__/lifecycle-memory-v2-seed.test.ts +17 -0
- package/src/__tests__/managed-skill-lifecycle.test.ts +0 -1
- package/src/__tests__/mcp-auth-routes.test.ts +197 -0
- package/src/__tests__/mcp-cli.test.ts +338 -2
- package/src/__tests__/memory-jobs-worker-lanes.test.ts +188 -0
- package/src/__tests__/migration-import-commit-http.test.ts +108 -2
- package/src/__tests__/mock-gateway-ipc.ts +1 -0
- package/src/__tests__/oauth-cli.test.ts +0 -2
- package/src/__tests__/oauth2-gateway-transport.test.ts +0 -1
- package/src/__tests__/persistence-secret-redaction.test.ts +299 -0
- package/src/__tests__/platform-bash-auto-approve.test.ts +5 -9
- package/src/__tests__/prechat-onboarding-contract.test.ts +3 -1
- package/src/__tests__/process-message-background-slack.test.ts +2 -0
- package/src/__tests__/provider-commit-message-generator.test.ts +0 -1
- package/src/__tests__/public-ingress-urls.test.ts +97 -0
- package/src/__tests__/require-fresh-approval.test.ts +0 -1
- package/src/__tests__/retry-backoff.test.ts +87 -0
- package/src/__tests__/runtime-events-sse.test.ts +10 -6
- package/src/__tests__/sanitize-config-for-transfer.test.ts +24 -2
- package/src/__tests__/schedule-retry.test.ts +715 -0
- package/src/__tests__/script-proxy-mitm-handler.test.ts +1 -1
- package/src/__tests__/secret-ingress-http.test.ts +1 -0
- package/src/__tests__/send-endpoint-busy.test.ts +3 -0
- package/src/__tests__/shell-tool-proxy-mode.test.ts +0 -1
- package/src/__tests__/skill-feature-flags.test.ts +43 -41
- package/src/__tests__/skill-load-feature-flag.test.ts +13 -14
- package/src/__tests__/skill-load-inline-command.test.ts +0 -51
- package/src/__tests__/skill-load-inline-includes.test.ts +0 -43
- package/src/__tests__/skill-projection.benchmark.test.ts +0 -1
- package/src/__tests__/skill-script-runner-sandbox.test.ts +0 -1
- package/src/__tests__/slack-channel-config.test.ts +9 -14
- package/src/__tests__/system-prompt-ask-mode.test.ts +0 -1
- package/src/__tests__/system-prompt.test.ts +0 -1
- package/src/__tests__/telegram-config.test.ts +0 -1
- package/src/__tests__/test-preload.ts +8 -0
- package/src/__tests__/tool-approval-handler.test.ts +3 -4
- package/src/__tests__/tool-audit-listener.test.ts +48 -0
- package/src/__tests__/tool-execute-pipeline.test.ts +0 -1
- package/src/__tests__/tool-execution-abort-cleanup.test.ts +0 -1
- package/src/__tests__/tool-executor-lifecycle-events.test.ts +0 -1
- package/src/__tests__/tool-executor.test.ts +0 -1
- package/src/__tests__/twilio-config.test.ts +3 -16
- package/src/__tests__/twilio-routes.test.ts +3 -5
- package/src/__tests__/twilio-validation.test.ts +93 -0
- package/src/__tests__/vellum-self-knowledge-inline-command.test.ts +1 -4
- package/src/__tests__/verification-control-plane-policy.test.ts +2 -4
- package/src/__tests__/voice-ingress-preflight.test.ts +19 -0
- package/src/__tests__/workspace-migration-006-services-config.test.ts +3 -2
- package/src/__tests__/workspace-migration-backfill-installation-id.test.ts +1 -5
- package/src/__tests__/workspace-migration-down-functions.test.ts +8 -8
- package/src/__tests__/workspace-migration-unify-llm-callsite-configs.test.ts +10 -6
- package/src/backup/__tests__/paths.test.ts +0 -22
- package/src/backup/__tests__/restore.test.ts +51 -151
- package/src/backup/paths.ts +2 -18
- package/src/backup/restore.ts +107 -231
- package/src/bundler/app-bundler.ts +51 -3
- package/src/calls/relay-server.ts +4 -44
- package/src/calls/twilio-config.ts +2 -17
- package/src/calls/twilio-rest.ts +33 -105
- package/src/calls/twilio-routes.ts +11 -12
- package/src/channels/types.ts +8 -7
- package/src/cli/commands/__tests__/backup.test.ts +6 -277
- package/src/cli/commands/__tests__/gateway.test.ts +288 -0
- package/src/cli/commands/__tests__/memory-v2.test.ts +4 -0
- package/src/cli/commands/__tests__/webhooks.test.ts +0 -1
- package/src/cli/commands/backup.ts +6 -331
- package/src/cli/commands/clients.ts +36 -37
- package/src/cli/commands/contacts.ts +73 -0
- package/src/cli/commands/conversations.ts +2 -5
- package/src/cli/commands/credentials.ts +15 -7
- package/src/cli/commands/domain.ts +66 -15
- package/src/cli/commands/gateway.ts +183 -0
- package/src/cli/commands/keys.ts +9 -6
- package/src/cli/commands/mcp.ts +116 -156
- package/src/cli/commands/memory-v2.ts +296 -1
- package/src/cli/commands/platform/__tests__/callback-routes-list.test.ts +0 -1
- package/src/cli/commands/platform/__tests__/connect.test.ts +0 -2
- package/src/cli/commands/platform/__tests__/disconnect.test.ts +0 -2
- package/src/cli/commands/platform/__tests__/status.test.ts +13 -15
- package/src/cli/commands/platform/disconnect.ts +5 -4
- package/src/cli/commands/platform/index.ts +0 -18
- package/src/cli/lib/daemon-credential-client.ts +110 -28
- package/src/cli/program.ts +2 -0
- package/src/config/assistant-feature-flags.ts +67 -10
- package/src/config/bundled-skills/acp/SKILL.md +6 -0
- package/src/config/bundled-skills/acp/TOOLS.json +1 -22
- package/src/config/bundled-skills/app-builder/SKILL.md +14 -109
- package/src/config/bundled-skills/app-builder/TOOLS.json +1 -28
- package/src/config/bundled-skills/app-builder/tools/app-create.ts +1 -10
- package/src/config/bundled-skills/app-control/SKILL.md +75 -0
- package/src/config/bundled-skills/app-control/TOOLS.json +299 -0
- package/src/config/bundled-skills/app-control/tools/app-control-click.ts +12 -0
- package/src/config/bundled-skills/app-control/tools/app-control-combo.ts +12 -0
- package/src/config/bundled-skills/app-control/tools/app-control-drag.ts +12 -0
- package/src/config/bundled-skills/app-control/tools/app-control-observe.ts +12 -0
- package/src/config/bundled-skills/app-control/tools/app-control-press.ts +12 -0
- package/src/config/bundled-skills/app-control/tools/app-control-sequence.ts +12 -0
- package/src/config/bundled-skills/app-control/tools/app-control-start.ts +12 -0
- package/src/config/bundled-skills/app-control/tools/app-control-stop.ts +12 -0
- package/src/config/bundled-skills/app-control/tools/app-control-type.ts +12 -0
- package/src/config/bundled-skills/computer-use/SKILL.md +6 -0
- package/src/config/bundled-skills/computer-use/TOOLS.json +67 -43
- package/src/config/bundled-skills/contacts/TOOLS.json +0 -16
- package/src/config/bundled-skills/document/TOOLS.json +0 -8
- package/src/config/bundled-skills/followups/TOOLS.json +0 -12
- package/src/config/bundled-skills/image-studio/SKILL.md +4 -0
- package/src/config/bundled-skills/image-studio/TOOLS.json +0 -4
- package/src/config/bundled-skills/media-processing/TOOLS.json +0 -24
- package/src/config/bundled-skills/messaging/TOOLS.json +0 -40
- package/src/config/bundled-skills/phone-calls/TOOLS.json +0 -12
- package/src/config/bundled-skills/phone-calls/references/TROUBLESHOOTING.md +19 -4
- package/src/config/bundled-skills/playbooks/TOOLS.json +0 -16
- package/src/config/bundled-skills/schedule/TOOLS.json +14 -14
- package/src/config/bundled-skills/sequences/TOOLS.json +0 -36
- package/src/config/bundled-skills/settings/SKILL.md +4 -0
- package/src/config/bundled-skills/settings/TOOLS.json +0 -12
- package/src/config/bundled-skills/skill-management/SKILL.md +6 -0
- package/src/config/bundled-skills/skill-management/TOOLS.json +0 -8
- package/src/config/bundled-skills/subagent/SKILL.md +6 -2
- package/src/config/bundled-skills/subagent/TOOLS.json +0 -20
- package/src/config/bundled-skills/transcribe/SKILL.md +4 -0
- package/src/config/bundled-skills/transcribe/TOOLS.json +0 -4
- package/src/config/bundled-tool-registry.ts +21 -0
- package/src/config/env-registry.ts +0 -2
- package/src/config/env.ts +19 -12
- package/src/config/feature-flag-registry.json +21 -133
- package/src/config/loader.ts +73 -99
- package/src/config/sanitize-for-transfer.ts +2 -0
- package/src/config/schemas/__tests__/memory-lifecycle.test.ts +80 -0
- package/src/config/schemas/__tests__/memory-v2.test.ts +7 -4
- package/src/config/schemas/calls.ts +0 -9
- package/src/config/schemas/heartbeat.ts +63 -0
- package/src/config/schemas/ingress.ts +10 -6
- package/src/config/schemas/llm.ts +5 -10
- package/src/config/schemas/memory-lifecycle.ts +77 -24
- package/src/config/schemas/memory-v2.ts +48 -4
- package/src/config/schemas/platform.ts +6 -0
- package/src/config/schemas/services.ts +1 -15
- package/src/config/schemas/skills.ts +0 -6
- package/src/config/seed-inference-profiles.ts +1 -1
- package/src/contacts/contact-store.ts +0 -30
- package/src/contacts/contacts-write.ts +0 -27
- package/src/context/window-manager.ts +1 -2
- package/src/credential-execution/feature-gates.ts +10 -10
- package/src/credential-execution/process-manager.ts +12 -41
- package/src/daemon/__tests__/conversation-tool-setup.test.ts +126 -5
- package/src/daemon/bootstrap-turn-cleanup.ts +45 -0
- package/src/daemon/config-watcher.ts +4 -3
- package/src/daemon/conversation-agent-loop-handlers.ts +21 -3
- package/src/daemon/conversation-agent-loop.ts +32 -28
- package/src/daemon/conversation-lifecycle.ts +8 -1
- package/src/daemon/conversation-process.ts +16 -11
- package/src/daemon/conversation-runtime-assembly.ts +2 -2
- package/src/daemon/conversation-surfaces.ts +125 -4
- package/src/daemon/conversation-tool-setup.ts +16 -55
- package/src/daemon/conversation.ts +21 -2
- package/src/daemon/doordash-steps.ts +1 -1
- package/src/daemon/handlers/shared.ts +4 -1
- package/src/daemon/host-app-control-proxy.ts +293 -0
- package/src/daemon/host-bash-proxy.ts +84 -74
- package/src/daemon/host-browser-proxy.ts +67 -82
- package/src/daemon/host-cu-proxy.ts +81 -86
- package/src/daemon/host-file-proxy.ts +93 -69
- package/src/daemon/host-proxy-base.ts +294 -0
- package/src/daemon/host-proxy-preactivation.ts +82 -0
- package/src/daemon/host-transfer-proxy.ts +247 -129
- package/src/daemon/lifecycle.ts +115 -117
- package/src/daemon/message-protocol.ts +3 -8
- package/src/daemon/message-types/contacts.ts +23 -1
- package/src/daemon/message-types/conversations.ts +11 -8
- package/src/daemon/message-types/host-app-control.ts +150 -0
- package/src/daemon/message-types/host-bash.ts +4 -0
- package/src/daemon/message-types/host-cu.ts +2 -0
- package/src/daemon/message-types/host-file.ts +4 -0
- package/src/daemon/message-types/host-transfer.ts +3 -0
- package/src/daemon/message-types/schedules.ts +8 -3
- package/src/daemon/message-types/skills.ts +2 -2
- package/src/daemon/process-message.ts +18 -1
- package/src/daemon/shutdown-handlers.ts +0 -3
- package/src/daemon/tool-setup-types.ts +51 -0
- package/src/daemon/tool-side-effects.ts +1 -1
- package/src/events/tool-audit-listener.ts +2 -1
- package/src/heartbeat/__tests__/heartbeat-feed-event.test.ts +15 -7
- package/src/heartbeat/__tests__/heartbeat-run-store.test.ts +216 -0
- package/src/heartbeat/heartbeat-run-store.ts +236 -0
- package/src/heartbeat/heartbeat-service.ts +280 -49
- package/src/home/__tests__/post-connect-feed.test.ts +99 -0
- package/src/home/__tests__/relationship-state-writer.test.ts +11 -9
- package/src/home/__tests__/suggested-prompts.test.ts +89 -0
- package/src/home/post-connect-feed.ts +68 -0
- package/src/home/relationship-state-writer.ts +17 -92
- package/src/home/suggested-prompts.ts +46 -10
- package/src/inbound/public-ingress-urls.ts +32 -34
- package/src/ipc/__tests__/route-error-envelope.test.ts +80 -0
- package/src/ipc/assistant-server.ts +14 -1
- package/src/ipc/cli-client.ts +32 -1
- package/src/live-voice/live-voice-metrics.ts +10 -10
- package/src/mcp/__tests__/mcp-auth-orchestrator.test.ts +304 -0
- package/src/mcp/mcp-auth-orchestrator.ts +213 -0
- package/src/mcp/mcp-auth-state.ts +133 -0
- package/src/mcp/mcp-oauth-provider.ts +19 -0
- package/src/memory/__tests__/jobs-store-job-classes.test.ts +24 -0
- package/src/memory/__tests__/qdrant-client-sentinel.test.ts +49 -0
- package/src/memory/__tests__/sparse-tokenize.test.ts +66 -0
- package/src/memory/anisotropy.test.ts +247 -0
- package/src/memory/anisotropy.ts +443 -0
- package/src/memory/auto-analysis-constants.ts +17 -0
- package/src/memory/auto-analysis-guard.ts +5 -15
- package/src/memory/canonical-guardian-store.ts +7 -7
- package/src/memory/context-search/__tests__/agent-runner-redaction.test.ts +122 -0
- package/src/memory/context-search/agent-protocol.ts +6 -6
- package/src/memory/context-search/agent-runner.ts +32 -7
- package/src/memory/context-search/sources/memory-v2.ts +17 -5
- package/src/memory/conversation-crud.ts +1 -1
- package/src/memory/conversation-key-store.ts +2 -15
- package/src/memory/db-init.ts +4 -0
- package/src/memory/embedding-backend.ts +9 -21
- package/src/memory/graph/__tests__/conversation-graph-memory-v2-routing.test.ts +49 -4
- package/src/memory/graph/conversation-graph-memory.ts +1 -24
- package/src/memory/graph/graph-search.ts +8 -0
- package/src/memory/graph/retriever.ts +28 -0
- package/src/memory/graph/tools.ts +1 -1
- package/src/memory/jobs/__tests__/embed-concept-page.test.ts +8 -2
- package/src/memory/jobs/embed-concept-page.ts +28 -2
- package/src/memory/jobs/embed-pkb-file.test.ts +2 -2
- package/src/memory/jobs-store.ts +66 -22
- package/src/memory/jobs-worker.ts +112 -63
- package/src/memory/memory-v2-activation-log-store.ts +1 -1
- package/src/memory/migrations/237-heartbeat-runs.ts +45 -0
- package/src/memory/migrations/238-schedule-retry-policy.ts +20 -0
- package/src/memory/migrations/index.ts +5 -0
- package/src/memory/migrations/registry.ts +8 -0
- package/src/memory/pkb/pkb-search.ts +7 -0
- package/src/memory/qdrant-client.ts +50 -20
- package/src/memory/schema/infrastructure.ts +15 -0
- package/src/memory/search/semantic.ts +7 -0
- package/src/memory/sparse-tokenize.ts +49 -0
- package/src/memory/v2/__tests__/activation.test.ts +77 -95
- package/src/memory/v2/__tests__/injection.test.ts +43 -21
- package/src/memory/v2/__tests__/sim.test.ts +166 -6
- package/src/memory/v2/__tests__/sparse-bm25.test.ts +292 -0
- package/src/memory/v2/__tests__/static-context.test.ts +0 -1
- package/src/memory/v2/activation.ts +69 -88
- package/src/memory/v2/consolidation-job.ts +3 -5
- package/src/memory/v2/constants.ts +7 -0
- package/src/memory/v2/injection.ts +86 -53
- package/src/memory/v2/prompts/consolidation.ts +312 -91
- package/src/memory/v2/qdrant.ts +99 -1
- package/src/memory/v2/sim.ts +126 -16
- package/src/memory/v2/skill-qdrant.ts +12 -3
- package/src/memory/v2/skill-store.ts +16 -1
- package/src/memory/v2/sparse-bm25.ts +245 -0
- package/src/memory/v2/static-context.ts +6 -5
- package/src/messaging/providers/gmail/types.ts +0 -49
- package/src/messaging/providers/slack/adapter.ts +1 -31
- package/src/messaging/providers/slack/types.ts +0 -32
- package/src/notifications/README.md +10 -10
- package/src/notifications/broadcaster.ts +1 -1
- package/src/notifications/guardian-question-mode.ts +5 -5
- package/src/oauth/connect-orchestrator.ts +4 -0
- package/src/oauth/credential-token-resolver.ts +1 -3
- package/src/oauth/manual-token-connection.ts +0 -4
- package/src/outbound-proxy/index.ts +1 -37
- package/src/outbound-proxy/logging.ts +1 -1
- package/src/outbound-proxy/policy.ts +6 -5
- package/src/outbound-proxy/router.ts +2 -1
- package/src/permissions/approval-policy.test.ts +6 -275
- package/src/permissions/approval-policy.ts +0 -51
- package/src/permissions/checker.test.ts +0 -1
- package/src/permissions/checker.ts +3 -17
- package/src/permissions/gateway-threshold-reader.ts +2 -0
- package/src/permissions/prompter.ts +34 -1
- package/src/permissions/secret-prompter.ts +6 -2
- package/src/prompts/bootstrap-cleanup.ts +27 -0
- package/src/prompts/system-prompt.ts +3 -18
- package/src/prompts/templates/SOUL.md +13 -1
- package/src/providers/speech-to-text/provider-catalog.ts +7 -8
- package/src/runtime/assistant-event-hub.ts +118 -96
- package/src/runtime/assistant-event.ts +1 -0
- package/src/runtime/auth/__tests__/middleware.test.ts +11 -56
- package/src/runtime/auth/middleware.ts +0 -96
- package/src/runtime/auth/route-policy.ts +19 -0
- package/src/runtime/btw-sidechain.ts +2 -3
- package/src/runtime/channel-invite-transport.ts +2 -48
- package/src/runtime/channel-invite-transports/email.ts +1 -1
- package/src/runtime/channel-invite-transports/slack.ts +1 -1
- package/src/runtime/channel-invite-transports/telegram.ts +1 -1
- package/src/runtime/channel-invite-transports/voice.ts +1 -1
- package/src/runtime/channel-invite-transports/whatsapp.ts +1 -1
- package/src/runtime/channel-invite-types.ts +54 -0
- package/src/runtime/channel-readiness-service.ts +32 -13
- package/src/runtime/http-server.ts +3 -329
- package/src/runtime/http-types.ts +0 -5
- package/src/runtime/migrations/__tests__/vbundle-import-parity.test.ts +413 -0
- package/src/runtime/migrations/__tests__/vbundle-import-policy.test.ts +260 -0
- package/src/runtime/migrations/__tests__/vbundle-import-version-compat.test.ts +189 -0
- package/src/runtime/migrations/__tests__/vbundle-streaming-importer.test.ts +153 -1
- package/src/runtime/migrations/__tests__/vbundle-symlink-importer.test.ts +451 -0
- package/src/runtime/migrations/__tests__/vbundle-symlink-streaming-importer.test.ts +0 -0
- package/src/runtime/migrations/__tests__/vbundle-symlink-streaming.test.ts +515 -0
- package/src/runtime/migrations/__tests__/vbundle-symlink-tar.test.ts +437 -0
- package/src/runtime/migrations/__tests__/vbundle-symlink-walker.test.ts +319 -0
- package/src/runtime/migrations/__tests__/vbundle-validator-v1-schema.test.ts +51 -1
- package/src/runtime/migrations/migration-transport.ts +7 -7
- package/src/runtime/migrations/vbundle-builder.ts +327 -60
- package/src/runtime/migrations/vbundle-import-analyzer.ts +4 -4
- package/src/runtime/migrations/vbundle-import-policy.ts +172 -0
- package/src/runtime/migrations/vbundle-importer.ts +245 -68
- package/src/runtime/migrations/vbundle-streaming-importer.ts +326 -35
- package/src/runtime/migrations/vbundle-streaming-validator.ts +157 -4
- package/src/runtime/migrations/vbundle-tar-stream.ts +15 -6
- package/src/runtime/migrations/vbundle-validator.ts +114 -0
- package/src/runtime/pending-interactions.ts +35 -9
- package/src/runtime/routes/__tests__/backup-routes.test.ts +22 -150
- package/src/runtime/routes/__tests__/conversation-query-routes.test.ts +98 -0
- package/src/runtime/routes/__tests__/gateway-log-routes.test.ts +242 -0
- package/src/runtime/routes/__tests__/heartbeat-routes.test.ts +112 -0
- package/src/runtime/routes/approval-interception-types.ts +13 -0
- package/src/runtime/routes/approval-strategies/guardian-text-engine-strategy.ts +1 -1
- package/src/runtime/routes/backup-routes.ts +15 -38
- package/src/runtime/routes/btw-routes.ts +14 -37
- package/src/runtime/routes/client-routes.ts +1 -0
- package/src/runtime/routes/contact-prompt-routes.ts +183 -0
- package/src/runtime/routes/conversation-query-routes.ts +36 -1
- package/src/runtime/routes/conversation-routes.ts +30 -13
- package/src/runtime/routes/document-pdf-renderer.ts +165 -0
- package/src/runtime/routes/documents-routes.ts +30 -0
- package/src/runtime/routes/errors.ts +19 -4
- package/src/runtime/routes/events-routes.ts +12 -6
- package/src/runtime/routes/gateway-log-routes.ts +79 -0
- package/src/runtime/routes/guardian-approval-interception.ts +2 -8
- package/src/runtime/routes/heartbeat-routes.ts +103 -38
- package/src/runtime/routes/host-app-control-routes.ts +134 -0
- package/src/runtime/routes/host-bash-routes.ts +36 -6
- package/src/runtime/routes/host-browser-routes.ts +108 -13
- package/src/runtime/routes/host-cu-routes.ts +44 -14
- package/src/runtime/routes/host-file-routes.ts +33 -10
- package/src/runtime/routes/host-transfer-routes.ts +64 -24
- package/src/runtime/routes/http-adapter.ts +1 -0
- package/src/runtime/routes/identity-intro-cache.ts +30 -0
- package/src/runtime/routes/identity-routes.ts +15 -43
- package/src/runtime/routes/inbound-message-handler.ts +1 -9
- package/src/runtime/routes/inbound-stages/acl-enforcement.ts +0 -7
- package/src/runtime/routes/inbound-stages/edit-intercept.ts +0 -8
- package/src/runtime/routes/inbound-stages/transcribe-audio.test.ts +0 -20
- package/src/runtime/routes/inbound-stages/transcribe-audio.ts +5 -13
- package/src/runtime/routes/index.ts +8 -0
- package/src/runtime/routes/mcp-auth-routes.ts +132 -0
- package/src/runtime/routes/memory-item-routes.ts +10 -12
- package/src/runtime/routes/memory-v2-routes.ts +441 -1
- package/src/runtime/routes/migration-routes.ts +96 -0
- package/src/runtime/routes/schedule-routes.ts +7 -0
- package/src/runtime/verification-templates.ts +4 -7
- package/src/schedule/integration-status.ts +66 -2
- package/src/schedule/recurrence-engine.ts +4 -1
- package/src/schedule/retry-backoff.ts +18 -0
- package/src/schedule/retry-policy.ts +82 -0
- package/src/schedule/schedule-recovery.ts +64 -0
- package/src/schedule/schedule-store.ts +106 -2
- package/src/schedule/scheduler-types.ts +25 -0
- package/src/schedule/scheduler.ts +63 -38
- package/src/security/oauth-callback-registry.ts +8 -0
- package/src/sequence/analytics.ts +5 -5
- package/src/sequence/engine.ts +1 -1
- package/src/skills/catalog-files.ts +2 -8
- package/src/skills/include-graph.ts +5 -5
- package/src/skills/remote-skill-policy.ts +5 -5
- package/src/skills/skill-file-provider.ts +1 -1
- package/src/skills/skill-file-types.ts +13 -0
- package/src/skills/skillssh-audit-types.ts +28 -0
- package/src/skills/skillssh-registry.ts +8 -21
- package/src/telemetry/types.ts +2 -0
- package/src/telemetry/usage-telemetry-reporter.test.ts +21 -0
- package/src/telemetry/usage-telemetry-reporter.ts +1 -0
- package/src/tools/app-control/skill-proxy-bridge.ts +28 -0
- package/src/tools/apps/executors.ts +56 -69
- package/src/tools/browser/__tests__/browser-status.test.ts +21 -18
- package/src/tools/browser/browser-execution.ts +2 -2
- package/src/tools/browser/cdp-client/__tests__/factory.test.ts +55 -4
- package/src/tools/browser/cdp-client/cdp-inspect/__tests__/ws-transport.test.ts +12 -6
- package/src/tools/browser/cdp-client/factory.ts +23 -24
- package/src/tools/browser/cdp-client/index.ts +1 -14
- package/src/tools/computer-use/definitions.ts +42 -20
- package/src/tools/executor.ts +2 -0
- package/src/tools/host-filesystem/edit.ts +26 -0
- package/src/tools/host-filesystem/read.ts +26 -0
- package/src/tools/host-filesystem/transfer.ts +31 -1
- package/src/tools/host-filesystem/write.ts +26 -0
- package/src/tools/host-terminal/host-shell.ts +58 -0
- package/src/tools/schedule/create.ts +6 -0
- package/src/tools/schedule/list.ts +2 -0
- package/src/tools/schedule/update.ts +10 -0
- package/src/tools/shared/filesystem/file-ops-service.ts +2 -0
- package/src/tools/shared/filesystem/path-policy.ts +25 -1
- package/src/tools/skills/load.ts +0 -32
- package/src/tools/tool-approval-handler.ts +1 -5
- package/src/tools/types.ts +4 -0
- package/src/usage/pricing.ts +1 -1
- package/src/workspace/hatched-date.ts +86 -0
- package/src/workspace/migrations/003-seed-device-id.ts +1 -1
- package/src/workspace/migrations/006-services-config.ts +8 -5
- package/src/workspace/migrations/016-extract-feature-flags-to-protected.ts +3 -9
- package/src/workspace/migrations/021-move-signals-to-workspace.ts +4 -10
- package/src/workspace/migrations/022-move-hooks-to-workspace.ts +4 -10
- package/src/workspace/migrations/023-move-config-files-to-workspace.ts +4 -11
- package/src/workspace/migrations/024-move-runtime-files-to-workspace.ts +3 -10
- package/src/workspace/migrations/040-seed-latency-callsite-defaults.ts +3 -2
- package/src/workspace/migrations/050-seed-main-agent-opus-callsite.ts +2 -1
- package/src/workspace/migrations/059-move-pid-to-workspace.ts +3 -8
- package/src/workspace/migrations/061-move-backup-key-to-workspace.ts +3 -8
- package/src/workspace/migrations/AGENTS.md +1 -1
- package/src/workspace/migrations/migrate-to-workspace-volume.ts +4 -10
- package/src/workspace/migrations/utils.ts +21 -0
- package/src/__tests__/host-browser-e2e-cloud.test.ts +0 -443
- package/src/__tests__/host-browser-e2e-self-hosted-capability.test.ts +0 -226
- package/src/__tests__/host-browser-ws-events-e2e.test.ts +0 -427
- package/src/__tests__/twilio-rest.test.ts +0 -34
- package/src/backup/__tests__/backup-key.test.ts +0 -152
- package/src/backup/__tests__/backup-worker.test.ts +0 -782
- package/src/backup/__tests__/offsite-writer.test.ts +0 -641
- package/src/backup/__tests__/stream-crypt.test.ts +0 -228
- package/src/backup/backup-key.ts +0 -137
- package/src/backup/backup-worker.ts +0 -472
- package/src/backup/offsite-writer.ts +0 -222
- package/src/backup/stream-crypt.ts +0 -263
- package/src/daemon/message-types/pairing.ts +0 -58
- package/src/outbound-proxy/config.ts +0 -20
- package/src/outbound-proxy/health.ts +0 -18
- package/src/outbound-proxy/types.ts +0 -150
- package/src/runtime/capability-tokens.ts +0 -190
- package/src/signals/mcp-reload.ts +0 -18
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.7.
|
|
6
|
+
version: 0.7.2
|
|
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
|
|
@@ -3206,6 +3206,68 @@ paths:
|
|
|
3206
3206
|
- keepId
|
|
3207
3207
|
- mergeId
|
|
3208
3208
|
additionalProperties: false
|
|
3209
|
+
/v1/contacts/prompt:
|
|
3210
|
+
post:
|
|
3211
|
+
operationId: contacts_prompt_post
|
|
3212
|
+
summary: Prompt user to register a contact channel
|
|
3213
|
+
description:
|
|
3214
|
+
Broadcasts a contact_request to connected clients, waits for the user to submit an address via the gateway.
|
|
3215
|
+
The gateway owns the contact write and notifies the daemon via resolve_contact_prompt IPC.
|
|
3216
|
+
tags:
|
|
3217
|
+
- contacts
|
|
3218
|
+
responses:
|
|
3219
|
+
"200":
|
|
3220
|
+
description: Successful response
|
|
3221
|
+
content:
|
|
3222
|
+
application/json:
|
|
3223
|
+
schema:
|
|
3224
|
+
type: object
|
|
3225
|
+
properties:
|
|
3226
|
+
ok:
|
|
3227
|
+
type: boolean
|
|
3228
|
+
error:
|
|
3229
|
+
type: string
|
|
3230
|
+
contactId:
|
|
3231
|
+
type: string
|
|
3232
|
+
channelId:
|
|
3233
|
+
type: string
|
|
3234
|
+
channelType:
|
|
3235
|
+
type: string
|
|
3236
|
+
address:
|
|
3237
|
+
type: string
|
|
3238
|
+
required:
|
|
3239
|
+
- ok
|
|
3240
|
+
additionalProperties: false
|
|
3241
|
+
requestBody:
|
|
3242
|
+
required: true
|
|
3243
|
+
content:
|
|
3244
|
+
application/json:
|
|
3245
|
+
schema:
|
|
3246
|
+
type: object
|
|
3247
|
+
properties:
|
|
3248
|
+
channel:
|
|
3249
|
+
description: Suggested channel type hint (e.g. phone, email, telegram). Free text — not enforced.
|
|
3250
|
+
type: string
|
|
3251
|
+
placeholder:
|
|
3252
|
+
description: Placeholder text for the address input field.
|
|
3253
|
+
type: string
|
|
3254
|
+
label:
|
|
3255
|
+
description: Display label shown in the prompt UI.
|
|
3256
|
+
type: string
|
|
3257
|
+
description:
|
|
3258
|
+
description: Longer description for the prompt UI.
|
|
3259
|
+
type: string
|
|
3260
|
+
role:
|
|
3261
|
+
default: unknown
|
|
3262
|
+
description: Intended role of the contact being registered.
|
|
3263
|
+
type: string
|
|
3264
|
+
enum:
|
|
3265
|
+
- guardian
|
|
3266
|
+
- trusted-contact
|
|
3267
|
+
- unknown
|
|
3268
|
+
required:
|
|
3269
|
+
- role
|
|
3270
|
+
additionalProperties: false
|
|
3209
3271
|
/v1/contacts/search:
|
|
3210
3272
|
post:
|
|
3211
3273
|
operationId: contacts_search_post
|
|
@@ -4520,6 +4582,22 @@ paths:
|
|
|
4520
4582
|
required: true
|
|
4521
4583
|
schema:
|
|
4522
4584
|
type: string
|
|
4585
|
+
/v1/documents/{id}/pdf:
|
|
4586
|
+
get:
|
|
4587
|
+
operationId: documents_by_id_pdf_get
|
|
4588
|
+
summary: Export a document as PDF
|
|
4589
|
+
description: Render a document to PDF and return the binary content.
|
|
4590
|
+
tags:
|
|
4591
|
+
- documents
|
|
4592
|
+
responses:
|
|
4593
|
+
"200":
|
|
4594
|
+
description: Successful response
|
|
4595
|
+
parameters:
|
|
4596
|
+
- name: id
|
|
4597
|
+
in: path
|
|
4598
|
+
required: true
|
|
4599
|
+
schema:
|
|
4600
|
+
type: string
|
|
4523
4601
|
/v1/events:
|
|
4524
4602
|
get:
|
|
4525
4603
|
operationId: events_get
|
|
@@ -4647,6 +4725,35 @@ paths:
|
|
|
4647
4725
|
- success
|
|
4648
4726
|
- ran
|
|
4649
4727
|
additionalProperties: false
|
|
4728
|
+
/v1/gateway/logs/tail:
|
|
4729
|
+
get:
|
|
4730
|
+
operationId: gateway_logs_tail_get
|
|
4731
|
+
summary: Tail gateway log entries
|
|
4732
|
+
description: Return the last N structured log entries from the gateway log files.
|
|
4733
|
+
tags:
|
|
4734
|
+
- gateway-logs
|
|
4735
|
+
responses:
|
|
4736
|
+
"200":
|
|
4737
|
+
description: Successful response
|
|
4738
|
+
parameters:
|
|
4739
|
+
- name: n
|
|
4740
|
+
in: query
|
|
4741
|
+
required: false
|
|
4742
|
+
schema:
|
|
4743
|
+
type: string
|
|
4744
|
+
description: "Number of lines to return (1–1000, default: 10)"
|
|
4745
|
+
- name: level
|
|
4746
|
+
in: query
|
|
4747
|
+
required: false
|
|
4748
|
+
schema:
|
|
4749
|
+
type: string
|
|
4750
|
+
description: "Minimum pino level name (default: info)"
|
|
4751
|
+
- name: module
|
|
4752
|
+
in: query
|
|
4753
|
+
required: false
|
|
4754
|
+
schema:
|
|
4755
|
+
type: string
|
|
4756
|
+
description: Filter to exact pino module name
|
|
4650
4757
|
/v1/groups:
|
|
4651
4758
|
get:
|
|
4652
4759
|
operationId: groups_get
|
|
@@ -5175,6 +5282,14 @@ paths:
|
|
|
5175
5282
|
anyOf:
|
|
5176
5283
|
- type: number
|
|
5177
5284
|
- type: "null"
|
|
5285
|
+
cronExpression:
|
|
5286
|
+
anyOf:
|
|
5287
|
+
- type: string
|
|
5288
|
+
- type: "null"
|
|
5289
|
+
timezone:
|
|
5290
|
+
anyOf:
|
|
5291
|
+
- type: string
|
|
5292
|
+
- type: "null"
|
|
5178
5293
|
nextRunAt:
|
|
5179
5294
|
anyOf:
|
|
5180
5295
|
- type: number
|
|
@@ -5190,6 +5305,8 @@ paths:
|
|
|
5190
5305
|
- intervalMs
|
|
5191
5306
|
- activeHoursStart
|
|
5192
5307
|
- activeHoursEnd
|
|
5308
|
+
- cronExpression
|
|
5309
|
+
- timezone
|
|
5193
5310
|
- nextRunAt
|
|
5194
5311
|
- lastRunAt
|
|
5195
5312
|
- success
|
|
@@ -5220,6 +5337,14 @@ paths:
|
|
|
5220
5337
|
anyOf:
|
|
5221
5338
|
- type: number
|
|
5222
5339
|
- type: "null"
|
|
5340
|
+
cronExpression:
|
|
5341
|
+
anyOf:
|
|
5342
|
+
- type: string
|
|
5343
|
+
- type: "null"
|
|
5344
|
+
timezone:
|
|
5345
|
+
anyOf:
|
|
5346
|
+
- type: string
|
|
5347
|
+
- type: "null"
|
|
5223
5348
|
nextRunAt:
|
|
5224
5349
|
anyOf:
|
|
5225
5350
|
- type: number
|
|
@@ -5235,6 +5360,8 @@ paths:
|
|
|
5235
5360
|
- intervalMs
|
|
5236
5361
|
- activeHoursStart
|
|
5237
5362
|
- activeHoursEnd
|
|
5363
|
+
- cronExpression
|
|
5364
|
+
- timezone
|
|
5238
5365
|
- nextRunAt
|
|
5239
5366
|
- lastRunAt
|
|
5240
5367
|
- success
|
|
@@ -5247,22 +5374,31 @@ paths:
|
|
|
5247
5374
|
type: object
|
|
5248
5375
|
properties:
|
|
5249
5376
|
enabled:
|
|
5250
|
-
type: boolean
|
|
5251
5377
|
description: Enable or disable heartbeat
|
|
5378
|
+
type: boolean
|
|
5252
5379
|
intervalMs:
|
|
5253
|
-
type: number
|
|
5254
5380
|
description: Heartbeat interval in ms
|
|
5255
|
-
activeHoursStart:
|
|
5256
5381
|
type: number
|
|
5382
|
+
activeHoursStart:
|
|
5257
5383
|
description: Active hours start (0–23)
|
|
5384
|
+
anyOf:
|
|
5385
|
+
- type: number
|
|
5386
|
+
- type: "null"
|
|
5258
5387
|
activeHoursEnd:
|
|
5259
|
-
type: number
|
|
5260
5388
|
description: Active hours end (0–23)
|
|
5261
|
-
|
|
5262
|
-
|
|
5263
|
-
|
|
5264
|
-
|
|
5265
|
-
|
|
5389
|
+
anyOf:
|
|
5390
|
+
- type: number
|
|
5391
|
+
- type: "null"
|
|
5392
|
+
cronExpression:
|
|
5393
|
+
description: Cron expression for heartbeat timing, or null for fixed interval
|
|
5394
|
+
anyOf:
|
|
5395
|
+
- type: string
|
|
5396
|
+
- type: "null"
|
|
5397
|
+
timezone:
|
|
5398
|
+
description: Timezone for cron evaluation
|
|
5399
|
+
anyOf:
|
|
5400
|
+
- type: string
|
|
5401
|
+
- type: "null"
|
|
5266
5402
|
additionalProperties: false
|
|
5267
5403
|
/v1/heartbeat/run-now:
|
|
5268
5404
|
post:
|
|
@@ -5305,7 +5441,53 @@ paths:
|
|
|
5305
5441
|
properties:
|
|
5306
5442
|
runs:
|
|
5307
5443
|
type: array
|
|
5308
|
-
items:
|
|
5444
|
+
items:
|
|
5445
|
+
type: object
|
|
5446
|
+
properties:
|
|
5447
|
+
id:
|
|
5448
|
+
type: string
|
|
5449
|
+
scheduledFor:
|
|
5450
|
+
type: number
|
|
5451
|
+
startedAt:
|
|
5452
|
+
anyOf:
|
|
5453
|
+
- type: number
|
|
5454
|
+
- type: "null"
|
|
5455
|
+
finishedAt:
|
|
5456
|
+
anyOf:
|
|
5457
|
+
- type: number
|
|
5458
|
+
- type: "null"
|
|
5459
|
+
durationMs:
|
|
5460
|
+
anyOf:
|
|
5461
|
+
- type: number
|
|
5462
|
+
- type: "null"
|
|
5463
|
+
status:
|
|
5464
|
+
type: string
|
|
5465
|
+
skipReason:
|
|
5466
|
+
anyOf:
|
|
5467
|
+
- type: string
|
|
5468
|
+
- type: "null"
|
|
5469
|
+
error:
|
|
5470
|
+
anyOf:
|
|
5471
|
+
- type: string
|
|
5472
|
+
- type: "null"
|
|
5473
|
+
conversationId:
|
|
5474
|
+
anyOf:
|
|
5475
|
+
- type: string
|
|
5476
|
+
- type: "null"
|
|
5477
|
+
createdAt:
|
|
5478
|
+
type: number
|
|
5479
|
+
required:
|
|
5480
|
+
- id
|
|
5481
|
+
- scheduledFor
|
|
5482
|
+
- startedAt
|
|
5483
|
+
- finishedAt
|
|
5484
|
+
- durationMs
|
|
5485
|
+
- status
|
|
5486
|
+
- skipReason
|
|
5487
|
+
- error
|
|
5488
|
+
- conversationId
|
|
5489
|
+
- createdAt
|
|
5490
|
+
additionalProperties: false
|
|
5309
5491
|
description: Heartbeat run records
|
|
5310
5492
|
required:
|
|
5311
5493
|
- runs
|
|
@@ -5811,6 +5993,73 @@ paths:
|
|
|
5811
5993
|
additionalProperties: false
|
|
5812
5994
|
"500":
|
|
5813
5995
|
description: Failed to compute relationship state
|
|
5996
|
+
/v1/host-app-control-result:
|
|
5997
|
+
post:
|
|
5998
|
+
operationId: hostappcontrolresult_post
|
|
5999
|
+
summary: Submit host app-control result
|
|
6000
|
+
description:
|
|
6001
|
+
Resolve a pending host app-control request by requestId. Returns 200 even when no pending interaction
|
|
6002
|
+
matches (late delivery is tolerated).
|
|
6003
|
+
tags:
|
|
6004
|
+
- host
|
|
6005
|
+
responses:
|
|
6006
|
+
"200":
|
|
6007
|
+
description: Successful response
|
|
6008
|
+
content:
|
|
6009
|
+
application/json:
|
|
6010
|
+
schema:
|
|
6011
|
+
type: object
|
|
6012
|
+
properties:
|
|
6013
|
+
accepted:
|
|
6014
|
+
type: boolean
|
|
6015
|
+
required:
|
|
6016
|
+
- accepted
|
|
6017
|
+
additionalProperties: false
|
|
6018
|
+
requestBody:
|
|
6019
|
+
required: true
|
|
6020
|
+
content:
|
|
6021
|
+
application/json:
|
|
6022
|
+
schema:
|
|
6023
|
+
type: object
|
|
6024
|
+
properties:
|
|
6025
|
+
requestId:
|
|
6026
|
+
type: string
|
|
6027
|
+
description: Pending app-control request ID
|
|
6028
|
+
state:
|
|
6029
|
+
type: string
|
|
6030
|
+
enum:
|
|
6031
|
+
- running
|
|
6032
|
+
- missing
|
|
6033
|
+
- minimized
|
|
6034
|
+
description: Lifecycle state of the targeted application
|
|
6035
|
+
pngBase64:
|
|
6036
|
+
type: string
|
|
6037
|
+
description: Base64 PNG screenshot of the targeted app window
|
|
6038
|
+
windowBounds:
|
|
6039
|
+
type: object
|
|
6040
|
+
properties:
|
|
6041
|
+
x:
|
|
6042
|
+
type: number
|
|
6043
|
+
y:
|
|
6044
|
+
type: number
|
|
6045
|
+
width:
|
|
6046
|
+
type: number
|
|
6047
|
+
height:
|
|
6048
|
+
type: number
|
|
6049
|
+
required:
|
|
6050
|
+
- x
|
|
6051
|
+
- y
|
|
6052
|
+
- width
|
|
6053
|
+
- height
|
|
6054
|
+
additionalProperties: false
|
|
6055
|
+
executionResult:
|
|
6056
|
+
type: string
|
|
6057
|
+
executionError:
|
|
6058
|
+
type: string
|
|
6059
|
+
required:
|
|
6060
|
+
- requestId
|
|
6061
|
+
- state
|
|
6062
|
+
additionalProperties: false
|
|
5814
6063
|
/v1/host-bash-result:
|
|
5815
6064
|
post:
|
|
5816
6065
|
operationId: hostbashresult_post
|
|
@@ -5831,6 +6080,14 @@ paths:
|
|
|
5831
6080
|
required:
|
|
5832
6081
|
- accepted
|
|
5833
6082
|
additionalProperties: false
|
|
6083
|
+
"400":
|
|
6084
|
+
description: x-vellum-client-id header is missing for a targeted host bash request.
|
|
6085
|
+
"403":
|
|
6086
|
+
description: Submitting client does not match the targeted client for this request.
|
|
6087
|
+
"404":
|
|
6088
|
+
description: No pending interaction found for the given requestId.
|
|
6089
|
+
"409":
|
|
6090
|
+
description: Pending interaction exists but is of a different kind (e.g. host_file, host_cu).
|
|
5834
6091
|
requestBody:
|
|
5835
6092
|
required: true
|
|
5836
6093
|
content:
|
|
@@ -5852,6 +6109,44 @@ paths:
|
|
|
5852
6109
|
required:
|
|
5853
6110
|
- requestId
|
|
5854
6111
|
additionalProperties: false
|
|
6112
|
+
/v1/host-browser-event:
|
|
6113
|
+
post:
|
|
6114
|
+
operationId: hostbrowserevent_post
|
|
6115
|
+
summary: Forward a CDP event from the browser extension
|
|
6116
|
+
description: Publishes a chrome.debugger.onEvent firing into the runtime-side browser-session event bus.
|
|
6117
|
+
tags:
|
|
6118
|
+
- host
|
|
6119
|
+
responses:
|
|
6120
|
+
"200":
|
|
6121
|
+
description: Successful response
|
|
6122
|
+
content:
|
|
6123
|
+
application/json:
|
|
6124
|
+
schema:
|
|
6125
|
+
type: object
|
|
6126
|
+
properties:
|
|
6127
|
+
accepted:
|
|
6128
|
+
type: boolean
|
|
6129
|
+
required:
|
|
6130
|
+
- accepted
|
|
6131
|
+
additionalProperties: false
|
|
6132
|
+
requestBody:
|
|
6133
|
+
required: true
|
|
6134
|
+
content:
|
|
6135
|
+
application/json:
|
|
6136
|
+
schema:
|
|
6137
|
+
type: object
|
|
6138
|
+
properties:
|
|
6139
|
+
method:
|
|
6140
|
+
type: string
|
|
6141
|
+
description: CDP event method name
|
|
6142
|
+
params:
|
|
6143
|
+
description: CDP event parameters
|
|
6144
|
+
cdpSessionId:
|
|
6145
|
+
description: CDP session ID (if target-scoped)
|
|
6146
|
+
type: string
|
|
6147
|
+
required:
|
|
6148
|
+
- method
|
|
6149
|
+
additionalProperties: false
|
|
5855
6150
|
/v1/host-browser-result:
|
|
5856
6151
|
post:
|
|
5857
6152
|
operationId: hostbrowserresult_post
|
|
@@ -5889,6 +6184,40 @@ paths:
|
|
|
5889
6184
|
required:
|
|
5890
6185
|
- requestId
|
|
5891
6186
|
additionalProperties: false
|
|
6187
|
+
/v1/host-browser-session-invalidated:
|
|
6188
|
+
post:
|
|
6189
|
+
operationId: hostbrowsersessioninvalidated_post
|
|
6190
|
+
summary: Notify runtime that a CDP session was invalidated
|
|
6191
|
+
description: Marks the target as invalidated in the runtime-side browser session registry.
|
|
6192
|
+
tags:
|
|
6193
|
+
- host
|
|
6194
|
+
responses:
|
|
6195
|
+
"200":
|
|
6196
|
+
description: Successful response
|
|
6197
|
+
content:
|
|
6198
|
+
application/json:
|
|
6199
|
+
schema:
|
|
6200
|
+
type: object
|
|
6201
|
+
properties:
|
|
6202
|
+
accepted:
|
|
6203
|
+
type: boolean
|
|
6204
|
+
required:
|
|
6205
|
+
- accepted
|
|
6206
|
+
additionalProperties: false
|
|
6207
|
+
requestBody:
|
|
6208
|
+
required: true
|
|
6209
|
+
content:
|
|
6210
|
+
application/json:
|
|
6211
|
+
schema:
|
|
6212
|
+
type: object
|
|
6213
|
+
properties:
|
|
6214
|
+
targetId:
|
|
6215
|
+
description: CDP target that was detached
|
|
6216
|
+
type: string
|
|
6217
|
+
reason:
|
|
6218
|
+
description: Detach reason
|
|
6219
|
+
type: string
|
|
6220
|
+
additionalProperties: false
|
|
5892
6221
|
/v1/host-cu-result:
|
|
5893
6222
|
post:
|
|
5894
6223
|
operationId: hostcuresult_post
|
|
@@ -5909,6 +6238,14 @@ paths:
|
|
|
5909
6238
|
required:
|
|
5910
6239
|
- accepted
|
|
5911
6240
|
additionalProperties: false
|
|
6241
|
+
"400":
|
|
6242
|
+
description: x-vellum-client-id header is missing for a targeted host CU request.
|
|
6243
|
+
"403":
|
|
6244
|
+
description: Submitting client does not match the targeted client for this request.
|
|
6245
|
+
"404":
|
|
6246
|
+
description: No pending interaction found for the given requestId, or the conversation/proxy no longer exists.
|
|
6247
|
+
"409":
|
|
6248
|
+
description: Pending interaction exists but is of a different kind (e.g. host_bash, host_file).
|
|
5912
6249
|
requestBody:
|
|
5913
6250
|
required: true
|
|
5914
6251
|
content:
|
|
@@ -5967,6 +6304,14 @@ paths:
|
|
|
5967
6304
|
required:
|
|
5968
6305
|
- accepted
|
|
5969
6306
|
additionalProperties: false
|
|
6307
|
+
"400":
|
|
6308
|
+
description: x-vellum-client-id header is missing for a targeted host file request.
|
|
6309
|
+
"403":
|
|
6310
|
+
description: Submitting client does not match the targeted client for this request.
|
|
6311
|
+
"404":
|
|
6312
|
+
description: No pending interaction found for the given requestId.
|
|
6313
|
+
"409":
|
|
6314
|
+
description: Pending interaction exists but is of a different kind (e.g. host_bash, host_cu).
|
|
5970
6315
|
requestBody:
|
|
5971
6316
|
required: true
|
|
5972
6317
|
content:
|
|
@@ -6009,6 +6354,10 @@ paths:
|
|
|
6009
6354
|
required:
|
|
6010
6355
|
- accepted
|
|
6011
6356
|
additionalProperties: false
|
|
6357
|
+
"400":
|
|
6358
|
+
description: x-vellum-client-id header is missing for a targeted host transfer request.
|
|
6359
|
+
"403":
|
|
6360
|
+
description: Submitting client does not match the targeted client for this transfer.
|
|
6012
6361
|
requestBody:
|
|
6013
6362
|
required: true
|
|
6014
6363
|
content:
|
|
@@ -6070,7 +6419,9 @@ paths:
|
|
|
6070
6419
|
get:
|
|
6071
6420
|
operationId: identity_intro_get
|
|
6072
6421
|
summary: Get identity intro text
|
|
6073
|
-
description:
|
|
6422
|
+
description:
|
|
6423
|
+
Returns a deterministic greeting derived from the assistant name in IDENTITY.md, falling back to
|
|
6424
|
+
LLM-generated cache.
|
|
6074
6425
|
tags:
|
|
6075
6426
|
- identity
|
|
6076
6427
|
responses:
|
|
@@ -6355,6 +6706,56 @@ paths:
|
|
|
6355
6706
|
required: true
|
|
6356
6707
|
schema:
|
|
6357
6708
|
type: string
|
|
6709
|
+
/v1/internal/mcp/auth/start:
|
|
6710
|
+
post:
|
|
6711
|
+
operationId: internal_mcp_auth_start_post
|
|
6712
|
+
summary: Start MCP OAuth flow
|
|
6713
|
+
description: Starts a daemon-owned MCP OAuth flow and returns the authorization URL for the CLI to open in the browser.
|
|
6714
|
+
tags:
|
|
6715
|
+
- internal
|
|
6716
|
+
responses:
|
|
6717
|
+
"200":
|
|
6718
|
+
description: Successful response
|
|
6719
|
+
requestBody:
|
|
6720
|
+
required: true
|
|
6721
|
+
content:
|
|
6722
|
+
application/json:
|
|
6723
|
+
schema:
|
|
6724
|
+
type: object
|
|
6725
|
+
properties:
|
|
6726
|
+
serverId:
|
|
6727
|
+
type: string
|
|
6728
|
+
required:
|
|
6729
|
+
- serverId
|
|
6730
|
+
additionalProperties: false
|
|
6731
|
+
/v1/internal/mcp/auth/status/{serverId}:
|
|
6732
|
+
get:
|
|
6733
|
+
operationId: internal_mcp_auth_status_by_serverId_get
|
|
6734
|
+
summary: Poll MCP OAuth flow status
|
|
6735
|
+
description: Returns the current status of an in-flight MCP OAuth flow (pending/complete/error).
|
|
6736
|
+
tags:
|
|
6737
|
+
- internal
|
|
6738
|
+
responses:
|
|
6739
|
+
"200":
|
|
6740
|
+
description: Successful response
|
|
6741
|
+
"404":
|
|
6742
|
+
description: No active OAuth flow for the given serverId
|
|
6743
|
+
parameters:
|
|
6744
|
+
- name: serverId
|
|
6745
|
+
in: path
|
|
6746
|
+
required: true
|
|
6747
|
+
schema:
|
|
6748
|
+
type: string
|
|
6749
|
+
/v1/internal/mcp/reload:
|
|
6750
|
+
post:
|
|
6751
|
+
operationId: internal_mcp_reload_post
|
|
6752
|
+
summary: Trigger MCP server reload
|
|
6753
|
+
description: Kicks off reloadMcpServers() async on the daemon. Returns immediately.
|
|
6754
|
+
tags:
|
|
6755
|
+
- internal
|
|
6756
|
+
responses:
|
|
6757
|
+
"200":
|
|
6758
|
+
description: Successful response
|
|
6358
6759
|
/v1/internal/oauth/callback:
|
|
6359
6760
|
post:
|
|
6360
6761
|
operationId: internal_oauth_callback_post
|
|
@@ -6717,6 +7118,124 @@ paths:
|
|
|
6717
7118
|
required:
|
|
6718
7119
|
- op
|
|
6719
7120
|
additionalProperties: false
|
|
7121
|
+
/v1/memory/v2/concept-page:
|
|
7122
|
+
post:
|
|
7123
|
+
operationId: memory_v2_conceptpage_post
|
|
7124
|
+
summary: Read a single memory v2 concept page
|
|
7125
|
+
description:
|
|
7126
|
+
Returns the rendered (frontmatter + body) markdown for a slug. 404 when the slug has no on-disk page — the
|
|
7127
|
+
activation log inspector uses this to show what got injected.
|
|
7128
|
+
tags:
|
|
7129
|
+
- memory
|
|
7130
|
+
responses:
|
|
7131
|
+
"200":
|
|
7132
|
+
description: Successful response
|
|
7133
|
+
requestBody:
|
|
7134
|
+
required: true
|
|
7135
|
+
content:
|
|
7136
|
+
application/json:
|
|
7137
|
+
schema:
|
|
7138
|
+
type: object
|
|
7139
|
+
properties:
|
|
7140
|
+
slug:
|
|
7141
|
+
type: string
|
|
7142
|
+
minLength: 1
|
|
7143
|
+
required:
|
|
7144
|
+
- slug
|
|
7145
|
+
additionalProperties: false
|
|
7146
|
+
/v1/memory/v2/explain-similarity:
|
|
7147
|
+
post:
|
|
7148
|
+
operationId: memory_v2_explainsimilarity_post
|
|
7149
|
+
summary: Diagnose dense vs sparse similarity score distributions
|
|
7150
|
+
description:
|
|
7151
|
+
Read-only diagnostic. Embeds the supplied text(s), runs hybrid dense + sparse queries against the
|
|
7152
|
+
concept-page collection, and returns per-slug raw dense, raw sparse, normalized sparse, and fused scores plus
|
|
7153
|
+
per-channel summary stats. Used to investigate score-compression at the head of the activation distribution.
|
|
7154
|
+
tags:
|
|
7155
|
+
- memory
|
|
7156
|
+
responses:
|
|
7157
|
+
"200":
|
|
7158
|
+
description: Successful response
|
|
7159
|
+
requestBody:
|
|
7160
|
+
required: true
|
|
7161
|
+
content:
|
|
7162
|
+
application/json:
|
|
7163
|
+
schema:
|
|
7164
|
+
type: object
|
|
7165
|
+
properties:
|
|
7166
|
+
userText:
|
|
7167
|
+
type: string
|
|
7168
|
+
minLength: 1
|
|
7169
|
+
assistantText:
|
|
7170
|
+
type: string
|
|
7171
|
+
nowText:
|
|
7172
|
+
type: string
|
|
7173
|
+
top:
|
|
7174
|
+
default: 25
|
|
7175
|
+
type: integer
|
|
7176
|
+
minimum: 1
|
|
7177
|
+
maximum: 9007199254740991
|
|
7178
|
+
required:
|
|
7179
|
+
- userText
|
|
7180
|
+
- top
|
|
7181
|
+
additionalProperties: false
|
|
7182
|
+
/v1/memory/v2/fit-anisotropy:
|
|
7183
|
+
post:
|
|
7184
|
+
operationId: memory_v2_fitanisotropy_post
|
|
7185
|
+
summary: Fit the embedding anisotropy correction for memory v2
|
|
7186
|
+
description:
|
|
7187
|
+
Samples stored dense vectors from the concept-page Qdrant collection, fits a corpus mean + top-k principal
|
|
7188
|
+
components (Mu & Viswanath 'all-but-the-top'), and persists the calibration so subsequent embeds and queries
|
|
7189
|
+
apply the correction. Run `assistant memory v2 reembed` after fitting so stored vectors are written under the
|
|
7190
|
+
new calibration — until then, queries (corrected) and stored vectors (uncorrected) live in different spaces.
|
|
7191
|
+
tags:
|
|
7192
|
+
- memory
|
|
7193
|
+
responses:
|
|
7194
|
+
"200":
|
|
7195
|
+
description: Successful response
|
|
7196
|
+
requestBody:
|
|
7197
|
+
required: true
|
|
7198
|
+
content:
|
|
7199
|
+
application/json:
|
|
7200
|
+
schema:
|
|
7201
|
+
type: object
|
|
7202
|
+
properties:
|
|
7203
|
+
k:
|
|
7204
|
+
default: 1
|
|
7205
|
+
type: integer
|
|
7206
|
+
minimum: 1
|
|
7207
|
+
maximum: 16
|
|
7208
|
+
sample:
|
|
7209
|
+
default: 5000
|
|
7210
|
+
type: integer
|
|
7211
|
+
minimum: 1
|
|
7212
|
+
maximum: 100000
|
|
7213
|
+
required:
|
|
7214
|
+
- k
|
|
7215
|
+
- sample
|
|
7216
|
+
additionalProperties: false
|
|
7217
|
+
/v1/memory/v2/rebuild-corpus-stats:
|
|
7218
|
+
post:
|
|
7219
|
+
operationId: memory_v2_rebuildcorpusstats_post
|
|
7220
|
+
summary: Rebuild the BM25 corpus statistics for memory v2
|
|
7221
|
+
description:
|
|
7222
|
+
Walks every concept page on disk, recomputes the document-frequency table and average document length used
|
|
7223
|
+
by the BM25 sparse channel, and atomically swaps the in-memory stats. Run after bulk content imports or to
|
|
7224
|
+
recover from a rebuild that errored at startup. Does not reembed individual page sparse vectors — pair with
|
|
7225
|
+
`assistant memory v2 reembed` when document-side weights need refreshing.
|
|
7226
|
+
tags:
|
|
7227
|
+
- memory
|
|
7228
|
+
responses:
|
|
7229
|
+
"200":
|
|
7230
|
+
description: Successful response
|
|
7231
|
+
requestBody:
|
|
7232
|
+
required: true
|
|
7233
|
+
content:
|
|
7234
|
+
application/json:
|
|
7235
|
+
schema:
|
|
7236
|
+
type: object
|
|
7237
|
+
properties: {}
|
|
7238
|
+
additionalProperties: false
|
|
6720
7239
|
/v1/memory/v2/reembed-skills:
|
|
6721
7240
|
post:
|
|
6722
7241
|
operationId: memory_v2_reembedskills_post
|
|
@@ -6874,6 +7393,13 @@ paths:
|
|
|
6874
7393
|
properties:
|
|
6875
7394
|
messageId:
|
|
6876
7395
|
type: string
|
|
7396
|
+
conversationKind:
|
|
7397
|
+
type: string
|
|
7398
|
+
enum:
|
|
7399
|
+
- user
|
|
7400
|
+
- background
|
|
7401
|
+
- background_memory_consolidation
|
|
7402
|
+
- scheduled
|
|
6877
7403
|
logs:
|
|
6878
7404
|
type: array
|
|
6879
7405
|
items: {}
|
|
@@ -6891,6 +7417,7 @@ paths:
|
|
|
6891
7417
|
- type: "null"
|
|
6892
7418
|
required:
|
|
6893
7419
|
- messageId
|
|
7420
|
+
- conversationKind
|
|
6894
7421
|
- logs
|
|
6895
7422
|
- memoryRecall
|
|
6896
7423
|
- memoryV2Activation
|
|
@@ -8243,6 +8770,16 @@ paths:
|
|
|
8243
8770
|
required:
|
|
8244
8771
|
- conversationId
|
|
8245
8772
|
additionalProperties: false
|
|
8773
|
+
/v1/resolve_contact_prompt:
|
|
8774
|
+
post:
|
|
8775
|
+
operationId: resolve_contact_prompt_post
|
|
8776
|
+
summary: "Gateway callback: resolve a pending contact prompt"
|
|
8777
|
+
description: Called by the gateway after it writes the contact and channel. Unblocks the waiting contacts/prompt IPC call.
|
|
8778
|
+
tags:
|
|
8779
|
+
- contacts
|
|
8780
|
+
responses:
|
|
8781
|
+
"200":
|
|
8782
|
+
description: Successful response
|
|
8246
8783
|
/v1/schedules:
|
|
8247
8784
|
get:
|
|
8248
8785
|
operationId: schedules_get
|
|
@@ -8357,6 +8894,12 @@ paths:
|
|
|
8357
8894
|
type: boolean
|
|
8358
8895
|
reuseConversation:
|
|
8359
8896
|
type: boolean
|
|
8897
|
+
maxRetries:
|
|
8898
|
+
type: number
|
|
8899
|
+
description: Maximum retry attempts
|
|
8900
|
+
retryBackoffMs:
|
|
8901
|
+
type: number
|
|
8902
|
+
description: Retry backoff in milliseconds
|
|
8360
8903
|
required:
|
|
8361
8904
|
- name
|
|
8362
8905
|
- expression
|
|
@@ -8367,6 +8910,8 @@ paths:
|
|
|
8367
8910
|
- routingIntent
|
|
8368
8911
|
- quiet
|
|
8369
8912
|
- reuseConversation
|
|
8913
|
+
- maxRetries
|
|
8914
|
+
- retryBackoffMs
|
|
8370
8915
|
additionalProperties: false
|
|
8371
8916
|
/v1/schedules/{id}/cancel:
|
|
8372
8917
|
post:
|
|
@@ -10855,6 +11400,10 @@ paths:
|
|
|
10855
11400
|
responses:
|
|
10856
11401
|
"200":
|
|
10857
11402
|
description: Successful response
|
|
11403
|
+
"400":
|
|
11404
|
+
description: x-vellum-client-id header is missing for a targeted transfer.
|
|
11405
|
+
"403":
|
|
11406
|
+
description: Submitting client does not match the targeted client for this transfer.
|
|
10858
11407
|
parameters:
|
|
10859
11408
|
- name: transferId
|
|
10860
11409
|
in: path
|
|
@@ -10870,6 +11419,10 @@ paths:
|
|
|
10870
11419
|
responses:
|
|
10871
11420
|
"200":
|
|
10872
11421
|
description: Successful response
|
|
11422
|
+
"400":
|
|
11423
|
+
description: x-vellum-client-id header is missing for a targeted transfer.
|
|
11424
|
+
"403":
|
|
11425
|
+
description: Submitting client does not match the targeted client for this transfer.
|
|
10873
11426
|
parameters:
|
|
10874
11427
|
- name: transferId
|
|
10875
11428
|
in: path
|