@vellumai/assistant 0.8.10 → 0.8.11-dev.202606112057.e4bc22e
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/bun.lock +63 -118
- package/docs/workspace-tools.md +196 -0
- package/examples/plugins/echo/README.md +3 -3
- package/knip.json +1 -0
- package/openapi.yaml +578 -128
- package/package.json +2 -3
- package/scripts/build-plugin-api.ts +299 -0
- package/src/__tests__/agent-loop-callsite-precedence.test.ts +7 -0
- package/src/__tests__/agent-loop-compaction-events.test.ts +197 -0
- package/src/__tests__/agent-loop-exit-reason.test.ts +93 -96
- package/src/__tests__/agent-loop-mutable-latest-user-message.test.ts +2 -0
- package/src/__tests__/agent-loop-output-hooks.test.ts +274 -1
- package/src/__tests__/agent-loop-override-profile.test.ts +3 -0
- package/src/__tests__/agent-loop-provider-error-recording.test.ts +4 -0
- package/src/__tests__/agent-loop-thinking.test.ts +4 -0
- package/src/__tests__/agent-loop.test.ts +578 -5
- package/src/__tests__/agent-wake-disk-pressure-callsite.test.ts +0 -1
- package/src/__tests__/approval-cascade.test.ts +1 -0
- package/src/__tests__/background-workers-disk-pressure.test.ts +0 -2
- package/src/__tests__/btw-routes.test.ts +7 -35
- package/src/__tests__/build-persisted-content.test.ts +75 -1
- package/src/__tests__/catalog-install-normalize.test.ts +141 -0
- package/src/__tests__/ces-startup-timeout.test.ts +60 -0
- package/src/__tests__/compaction-events.test.ts +1 -0
- package/src/__tests__/config-managed-gemini-defaults.test.ts +2 -46
- package/src/__tests__/context-overflow-reducer.test.ts +264 -124
- package/src/__tests__/context-window-manager-overflow-rung.test.ts +351 -0
- package/src/__tests__/conversation-abort-tool-results.test.ts +1 -1
- package/src/__tests__/conversation-agent-loop-inference-profile.test.ts +13 -5
- package/src/__tests__/conversation-agent-loop-overflow.test.ts +284 -455
- package/src/__tests__/conversation-agent-loop.test.ts +131 -551
- package/src/__tests__/conversation-app-control-instantiation.test.ts +13 -0
- package/src/__tests__/conversation-confirmation-signals.test.ts +1 -0
- package/src/__tests__/conversation-error.test.ts +2 -6
- package/src/__tests__/conversation-fork-crud.test.ts +259 -0
- package/src/__tests__/conversation-history-web-search.test.ts +1 -1
- package/src/__tests__/conversation-lifecycle.test.ts +257 -1
- package/src/__tests__/conversation-process-callsite.test.ts +1 -0
- package/src/__tests__/conversation-provider-retry-repair.test.ts +38 -377
- package/src/__tests__/conversation-queue.test.ts +1 -39
- package/src/__tests__/conversation-runtime-assembly.test.ts +119 -8
- package/src/__tests__/conversation-skill-tools.test.ts +491 -5
- package/src/__tests__/conversation-slash-queue.test.ts +1 -1
- package/src/__tests__/conversation-slash-unknown.test.ts +1 -0
- package/src/__tests__/conversation-speed-override.test.ts +1 -0
- package/src/__tests__/conversation-store.test.ts +74 -0
- package/src/__tests__/conversation-surfaces-app-control.test.ts +4 -1
- package/src/__tests__/conversation-tool-setup-attribution.test.ts +323 -0
- package/src/__tests__/conversation-tool-setup-tools-disabled.test.ts +34 -0
- package/src/__tests__/conversation-workspace-cache-state.test.ts +1 -0
- package/src/__tests__/conversation-workspace-injection.test.ts +1 -1
- package/src/__tests__/conversation-workspace-tool-tracking.test.ts +1 -0
- package/src/__tests__/corrected-target.test.ts +93 -0
- package/src/__tests__/credential-execution-feature-gates.test.ts +3 -5
- package/src/__tests__/credential-execution-tools.test.ts +23 -11
- package/src/__tests__/credential-security-invariants.test.ts +6 -1
- package/src/__tests__/db-schedule-syntax-migration.test.ts +80 -0
- package/src/__tests__/device-id.test.ts +70 -1
- package/src/__tests__/embedding-managed-proxy-selection.test.ts +6 -40
- package/src/__tests__/empty-response-hook.test.ts +242 -66
- package/src/__tests__/external-plugin-loader.test.ts +0 -31
- package/src/__tests__/get-skill-detail-audit.test.ts +43 -1
- package/src/__tests__/guardian-routing-invariants.test.ts +91 -0
- package/src/__tests__/history-repair-hook.test.ts +228 -3
- package/src/__tests__/host-app-control-proxy.test.ts +45 -0
- package/src/__tests__/host-browser-proxy.test.ts +254 -9
- package/src/__tests__/identity-intro-cache.test.ts +12 -5
- package/src/__tests__/identity-routes.test.ts +17 -57
- package/src/__tests__/image-recovery-hook.test.ts +387 -0
- package/src/__tests__/injector-chain.test.ts +5 -4
- package/src/__tests__/injector-v3-suppression.test.ts +373 -47
- package/src/__tests__/intent-routing.test.ts +7 -0
- package/src/__tests__/memory-retrieval-hook.test.ts +117 -15
- package/src/__tests__/model-intents.test.ts +1 -1
- package/src/__tests__/notification-decision-strategy.test.ts +3 -3
- package/src/__tests__/oauth-store.test.ts +0 -85
- package/src/__tests__/{context-overflow-policy.test.ts → overflow-policy.test.ts} +1 -1
- package/src/__tests__/parallel-tool.benchmark.test.ts +4 -0
- package/src/__tests__/persist-unsendable-image-downscale.test.ts +29 -9
- package/src/__tests__/persist-unsendable-image.test.ts +4 -4
- package/src/__tests__/persistence-secret-redaction.test.ts +78 -0
- package/src/__tests__/plugin-bootstrap.test.ts +82 -73
- package/src/__tests__/plugin-tool-contribution.test.ts +7 -4
- package/src/__tests__/plugin-types.test.ts +0 -8
- package/src/__tests__/provider-catalog-visibility.test.ts +1 -9
- package/src/__tests__/prune-old-conversations-job.test.ts +99 -0
- package/src/__tests__/registry.test.ts +240 -1
- package/src/__tests__/require-fresh-approval.test.ts +3 -0
- package/src/__tests__/schedule-routes.test.ts +116 -1
- package/src/__tests__/schedule-store.test.ts +28 -0
- package/src/__tests__/schedule-tools.test.ts +94 -1
- package/src/__tests__/server-history-render.test.ts +39 -0
- package/src/__tests__/skill-projection-feature-flag.test.ts +13 -0
- package/src/__tests__/skill-projection.benchmark.test.ts +25 -7
- package/src/__tests__/skills.test.ts +202 -0
- package/src/__tests__/slim-skill-category.test.ts +195 -0
- package/src/__tests__/strip-memory-injections.test.ts +33 -39
- package/src/__tests__/test-support/tool-invocation-seed.ts +79 -0
- package/src/__tests__/title-generate-hook.test.ts +9 -7
- package/src/__tests__/tool-audit-listener.test.ts +264 -1
- package/src/__tests__/tool-error-hook.test.ts +4 -3
- package/src/__tests__/tool-execution-pipeline.benchmark.test.ts +1 -0
- package/src/__tests__/tool-executor-lifecycle-events.test.ts +273 -0
- package/src/__tests__/tool-result-truncate-hook.test.ts +1 -0
- package/src/__tests__/tool-start-timestamp.test.ts +218 -0
- package/src/__tests__/tools-get-route.test.ts +202 -0
- package/src/__tests__/workspace-tool-loader.test.ts +319 -0
- package/src/__tests__/workspace-tools-watcher-flag.test.ts +70 -0
- package/src/agent/loop.ts +569 -319
- package/src/api/events/tool-result.ts +9 -0
- package/src/api/events/tool-use-start.ts +7 -0
- package/src/api/events/usage-progress.ts +28 -0
- package/src/api/index.ts +16 -0
- package/src/api/responses/conversation-message.ts +135 -27
- package/src/api/responses/memory-v3-selection-log.ts +4 -4
- package/src/approvals/guardian-request-resolvers.ts +26 -0
- package/src/browser-session/backends/host-bridge.ts +29 -0
- package/src/browser-session/index.ts +1 -0
- package/src/browser-session/types.ts +5 -1
- package/src/bundler/app-bundler.ts +25 -42
- package/src/cli/commands/__tests__/schedules.test.ts +62 -4
- package/src/cli/commands/__tests__/skills.test.ts +53 -0
- package/src/cli/commands/channel-verification-sessions.ts +6 -6
- package/src/cli/commands/inference-providers.ts +0 -8
- package/src/cli/commands/plugins.ts +2 -2
- package/src/cli/commands/schedules.ts +27 -4
- package/src/cli/commands/skills.ts +187 -146
- package/src/cli/commands/tools.ts +106 -0
- package/src/cli/lib/__tests__/install-from-github.test.ts +256 -328
- package/src/cli/lib/__tests__/plugin-artifact.test.ts +116 -0
- package/src/cli/lib/__tests__/plugin-catalog-cache.test.ts +6 -2
- package/src/cli/lib/__tests__/plugin-details.test.ts +166 -16
- package/src/cli/lib/__tests__/plugin-marketplace.test.ts +2 -2
- package/src/cli/lib/__tests__/search-plugins.test.ts +145 -240
- package/src/cli/lib/install-from-github.ts +187 -117
- package/src/cli/lib/plugin-artifact.ts +84 -0
- package/src/cli/lib/plugin-catalog-cache.ts +9 -9
- package/src/cli/lib/plugin-details.ts +56 -69
- package/src/cli/lib/plugin-marketplace.ts +42 -14
- package/src/cli/lib/search-plugins.ts +29 -129
- package/src/cli/program.ts +2 -0
- package/src/config/bundled-skills/acp/SKILL.md +1 -0
- package/src/config/bundled-skills/app-builder/SKILL.md +1 -0
- package/src/config/bundled-skills/app-control/SKILL.md +1 -0
- package/src/config/bundled-skills/computer-use/SKILL.md +1 -0
- package/src/config/bundled-skills/contacts/SKILL.md +1 -0
- package/src/config/bundled-skills/document-editor/SKILL.md +1 -0
- package/src/config/bundled-skills/followups/SKILL.md +1 -0
- package/src/config/bundled-skills/image-studio/SKILL.md +1 -0
- package/src/config/bundled-skills/media-processing/SKILL.md +1 -0
- package/src/config/bundled-skills/messaging/SKILL.md +1 -0
- package/src/config/bundled-skills/phone-calls/SKILL.md +1 -0
- package/src/config/bundled-skills/playbooks/SKILL.md +1 -0
- package/src/config/bundled-skills/schedule/SKILL.md +1 -0
- package/src/config/bundled-skills/schedule/TOOLS.json +11 -3
- package/src/config/bundled-skills/sequences/SKILL.md +1 -0
- package/src/config/bundled-skills/settings/SKILL.md +1 -0
- package/src/config/bundled-skills/skill-management/SKILL.md +101 -1
- package/src/config/bundled-skills/subagent/SKILL.md +1 -0
- package/src/config/bundled-skills/transcribe/SKILL.md +1 -0
- package/src/config/env-registry.ts +23 -0
- package/src/config/feature-flag-registry.json +17 -89
- package/src/config/loader.ts +5 -22
- package/src/config/schema.ts +2 -0
- package/src/config/schemas/__tests__/compaction-logs.test.ts +56 -0
- package/src/config/schemas/__tests__/memory-v2.test.ts +0 -1
- package/src/config/schemas/__tests__/memory-v3.test.ts +61 -1
- package/src/config/schemas/compaction-logs.ts +79 -0
- package/src/config/schemas/memory-v2.ts +0 -8
- package/src/config/schemas/memory-v3.ts +104 -33
- package/src/config/seed-inference-profiles.ts +1 -1
- package/src/config/skills.ts +117 -47
- package/src/context/compactor.ts +11 -0
- package/src/context/strip-injections.ts +38 -4
- package/src/credential-execution/feature-gates.ts +0 -21
- package/src/credential-execution/startup-timeout.ts +32 -4
- package/src/daemon/__tests__/conversation-tool-setup-exclude.test.ts +18 -0
- package/src/daemon/conversation-agent-loop-handlers.ts +140 -91
- package/src/daemon/conversation-agent-loop.ts +123 -658
- package/src/daemon/conversation-error.ts +12 -48
- package/src/daemon/conversation-lifecycle.ts +1 -1
- package/src/daemon/conversation-runtime-assembly.ts +183 -22
- package/src/daemon/conversation-skill-tools.ts +137 -8
- package/src/daemon/conversation-slash.ts +0 -14
- package/src/daemon/conversation-store.ts +2 -19
- package/src/daemon/conversation-tool-setup.ts +87 -1
- package/src/daemon/conversation.ts +119 -50
- package/src/daemon/external-plugins-bootstrap.ts +36 -95
- package/src/daemon/handlers/config-channels.ts +11 -2
- package/src/daemon/handlers/shared.ts +9 -1
- package/src/daemon/handlers/skills.ts +10 -4
- package/src/daemon/host-app-control-proxy.ts +72 -57
- package/src/daemon/host-browser-proxy.ts +117 -22
- package/src/daemon/lifecycle.ts +34 -5
- package/src/daemon/message-protocol.ts +0 -7
- package/src/daemon/message-types/conversations.ts +2 -15
- package/src/daemon/message-types/schedules.ts +1 -0
- package/src/daemon/message-types/skills.ts +17 -0
- package/src/daemon/providers-setup.ts +3 -0
- package/src/daemon/server.ts +3 -3
- package/src/daemon/tool-setup-types.ts +9 -3
- package/src/daemon/trust-context.ts +23 -0
- package/src/daemon/workspace-tools-watcher.ts +324 -0
- package/src/events/tool-audit-listener.ts +78 -16
- package/src/events/tool-metrics-listener.ts +2 -5
- package/src/media/image-credentials.ts +2 -2
- package/src/memory/__tests__/compaction-log-writer-clickhouse.test.ts +227 -0
- package/src/memory/__tests__/conversation-queries.test.ts +176 -0
- package/src/memory/__tests__/jobs-worker-v2-schedule.test.ts +20 -32
- package/src/memory/compaction-log-writer-clickhouse.ts +418 -0
- package/src/memory/conversation-attention-store.ts +1 -0
- package/src/memory/conversation-crud.ts +134 -3
- package/src/memory/conversation-queries.ts +64 -7
- package/src/memory/db-init.ts +14 -0
- package/src/memory/delivery-channels.ts +0 -69
- package/src/memory/embedding-backend.test.ts +130 -1
- package/src/memory/embedding-backend.ts +79 -106
- package/src/memory/embedding-gemini.ts +5 -0
- package/src/memory/graph/__tests__/conversation-graph-memory-v2-routing.test.ts +12 -0
- package/src/memory/graph/__tests__/handle-remember-v2.test.ts +19 -0
- package/src/memory/graph/conversation-graph-memory.ts +36 -25
- package/src/memory/graph/tool-handlers.ts +3 -0
- package/src/memory/job-handlers/cleanup.ts +3 -1
- package/src/memory/jobs-store.ts +0 -28
- package/src/memory/jobs-worker.ts +10 -22
- package/src/memory/memory-marker.ts +29 -0
- package/src/memory/memory-retrospective-startup-cleanup.ts +1 -1
- package/src/memory/migrations/268-add-memory-v3-selections.ts +6 -0
- package/src/memory/migrations/270-schedule-description.ts +36 -0
- package/src/memory/migrations/275-tool-invocations-add-skill-id.test.ts +81 -0
- package/src/memory/migrations/275-tool-invocations-add-skill-id.ts +20 -0
- package/src/memory/migrations/276-tool-invocations-created-at-id-index.test.ts +68 -0
- package/src/memory/migrations/276-tool-invocations-created-at-id-index.ts +20 -0
- package/src/memory/migrations/277-add-memory-v3-ever-injected.ts +29 -0
- package/src/memory/migrations/278-tool-invocations-telemetry-columns.test.ts +96 -0
- package/src/memory/migrations/278-tool-invocations-telemetry-columns.ts +39 -0
- package/src/memory/migrations/279-create-skill-loaded-events.test.ts +84 -0
- package/src/memory/migrations/279-create-skill-loaded-events.ts +26 -0
- package/src/memory/migrations/280-conversations-surfaced-at.test.ts +88 -0
- package/src/memory/migrations/280-conversations-surfaced-at.ts +24 -0
- package/src/memory/migrations/index.ts +10 -0
- package/src/memory/migrations/registry.ts +8 -0
- package/src/memory/schema/conversations.ts +16 -0
- package/src/memory/schema/infrastructure.ts +26 -0
- package/src/memory/skill-loaded-events-store.test.ts +160 -0
- package/src/memory/skill-loaded-events-store.ts +95 -0
- package/src/memory/tool-executed-events-store.test.ts +219 -0
- package/src/memory/tool-executed-events-store.ts +102 -0
- package/src/memory/tool-usage-store.ts +15 -3
- package/src/memory/v2/__tests__/consolidation-job.test.ts +117 -12
- package/src/memory/v2/__tests__/consolidation-prompt-flag-gating-guard.test.ts +189 -0
- package/src/memory/v2/__tests__/injected-block-slugs.test.ts +90 -0
- package/src/memory/v2/__tests__/page-store.test.ts +33 -0
- package/src/memory/v2/__tests__/prompts-consolidation.test.ts +88 -15
- package/src/memory/v2/activation-store.ts +50 -1
- package/src/memory/v2/consolidation-job.ts +113 -29
- package/src/memory/v2/injected-block-slugs.ts +79 -0
- package/src/memory/v2/injection.ts +6 -1
- package/src/memory/v2/prompts/consolidation.ts +414 -13
- package/src/memory/v2/router.ts +2 -28
- package/src/memory/v2/static-context.ts +1 -1
- package/src/memory/v2/types.ts +16 -0
- package/src/notifications/__tests__/copy-composer.test.ts +244 -0
- package/src/notifications/access-request-copy.ts +298 -0
- package/src/notifications/adapters/slack.ts +3 -3
- package/src/notifications/adapters/telegram.ts +2 -1
- package/src/notifications/copy-composer.ts +49 -267
- package/src/notifications/decision-engine.ts +16 -35
- package/src/notifications/home-feed-side-effect.ts +1 -6
- package/src/oauth/oauth-store.ts +0 -9
- package/src/permissions/checker.test.ts +83 -1
- package/src/permissions/checker.ts +25 -2
- package/src/permissions/gateway-threshold-reader.test.ts +182 -0
- package/src/permissions/gateway-threshold-reader.ts +80 -0
- package/src/platform/client.ts +1 -3
- package/src/platform/feature-gate.ts +3 -12
- package/src/plugin-api/constants.ts +4 -2
- package/src/plugin-api/index.ts +63 -11
- package/src/plugin-api/types.ts +236 -71
- package/src/plugins/defaults/compaction/compact.ts +66 -2
- package/src/plugins/defaults/compaction/context-overflow-reducer.ts +240 -32
- package/src/plugins/defaults/compaction/corrected-target.ts +53 -0
- package/src/{daemon/context-overflow-policy.ts → plugins/defaults/compaction/overflow-policy.ts} +1 -1
- package/src/plugins/defaults/compaction/window-manager.ts +303 -1
- package/src/plugins/defaults/empty-response/hooks/post-model-call.ts +173 -0
- package/src/plugins/defaults/empty-response/hooks/stop.ts +11 -115
- package/src/plugins/defaults/empty-response/nudge-state-store.ts +46 -0
- package/src/plugins/defaults/history-repair/hooks/post-model-call.ts +50 -0
- package/src/plugins/defaults/history-repair/hooks/stop.ts +22 -0
- package/src/plugins/defaults/history-repair/repair-state-store.ts +51 -0
- package/src/plugins/defaults/history-repair/terminal.ts +39 -2
- package/src/plugins/defaults/image-recovery/detect.ts +25 -0
- package/src/plugins/defaults/image-recovery/hooks/post-model-call.ts +73 -0
- package/src/plugins/defaults/image-recovery/hooks/stop.ts +22 -0
- package/src/plugins/defaults/image-recovery/image-recovery-state-store.ts +48 -0
- package/src/plugins/defaults/image-recovery/package.json +14 -0
- package/src/{daemon/persist-unsendable-image.ts → plugins/defaults/image-recovery/recover.ts} +67 -14
- package/src/plugins/defaults/index.ts +71 -5
- package/src/plugins/defaults/memory-retrieval/hooks/post-compact.ts +76 -112
- package/src/plugins/defaults/memory-retrieval/hooks/{user-prompt-submit-temp.ts → user-prompt-submit.ts} +83 -74
- package/src/plugins/defaults/memory-retrieval/injector-chain.ts +14 -8
- package/src/plugins/defaults/memory-retrieval/injectors.ts +2 -18
- package/src/plugins/defaults/memory-retrieval/package.json +14 -0
- package/src/plugins/defaults/memory-v3-shadow/__tests__/carry-integration.test.ts +1157 -0
- package/src/plugins/defaults/memory-v3-shadow/__tests__/injection.test.ts +683 -0
- package/src/plugins/defaults/memory-v3-shadow/__tests__/live-integration.test.ts +161 -140
- package/src/plugins/defaults/memory-v3-shadow/__tests__/maintain-job.test.ts +160 -0
- package/src/plugins/defaults/memory-v3-shadow/__tests__/orchestrate.test.ts +335 -316
- package/src/plugins/defaults/memory-v3-shadow/__tests__/pool-select.test.ts +145 -53
- package/src/plugins/defaults/memory-v3-shadow/__tests__/render-injection.test.ts +38 -1
- package/src/plugins/defaults/memory-v3-shadow/__tests__/selection-log-store.test.ts +18 -8
- package/src/plugins/defaults/memory-v3-shadow/__tests__/shadow-integration.test.ts +112 -71
- package/src/plugins/defaults/memory-v3-shadow/__tests__/shadow-plugin.test.ts +192 -51
- package/src/plugins/defaults/memory-v3-shadow/__tests__/types.test.ts +4 -16
- package/src/plugins/defaults/memory-v3-shadow/card.test.ts +173 -0
- package/src/plugins/defaults/memory-v3-shadow/card.ts +116 -0
- package/src/plugins/defaults/memory-v3-shadow/core-set.test.ts +104 -0
- package/src/plugins/defaults/memory-v3-shadow/core-set.ts +59 -0
- package/src/plugins/defaults/memory-v3-shadow/ever-injected-store.test.ts +305 -0
- package/src/plugins/defaults/memory-v3-shadow/ever-injected-store.ts +278 -0
- package/src/plugins/defaults/memory-v3-shadow/hot-set.test.ts +138 -0
- package/src/plugins/defaults/memory-v3-shadow/hot-set.ts +85 -0
- package/src/plugins/defaults/memory-v3-shadow/injector.ts +331 -24
- package/src/plugins/defaults/memory-v3-shadow/maintain-job.ts +119 -13
- package/src/plugins/defaults/memory-v3-shadow/orchestrate.ts +169 -114
- package/src/plugins/defaults/memory-v3-shadow/page-content.ts +47 -16
- package/src/plugins/defaults/memory-v3-shadow/pool-select.ts +144 -66
- package/src/plugins/defaults/memory-v3-shadow/prune.test.ts +758 -0
- package/src/plugins/defaults/memory-v3-shadow/prune.ts +471 -0
- package/src/plugins/defaults/memory-v3-shadow/render-injection.ts +68 -16
- package/src/plugins/defaults/memory-v3-shadow/selection-log-store.ts +19 -12
- package/src/plugins/defaults/memory-v3-shadow/shadow-plugin.ts +96 -43
- package/src/plugins/defaults/memory-v3-shadow/types.ts +34 -17
- package/src/plugins/defaults/title-generate/hooks/stop.ts +9 -11
- package/src/plugins/pipeline.ts +8 -5
- package/src/plugins/types.ts +5 -51
- package/src/providers/cache-control.ts +26 -0
- package/src/providers/inference/__tests__/base-url-route-validation.test.ts +1 -2
- package/src/providers/model-catalog.ts +13 -1
- package/src/providers/model-intents.ts +2 -2
- package/src/providers/openai/__tests__/tool-choice-mapping.test.ts +147 -0
- package/src/providers/openai/chat-completions-provider.ts +46 -0
- package/src/providers/openai/responses-provider.ts +45 -0
- package/src/providers/registry.ts +0 -8
- package/src/runtime/AGENTS.md +2 -0
- package/src/runtime/__tests__/agent-wake.test.ts +0 -1
- package/src/runtime/agent-wake.ts +13 -0
- package/src/runtime/routes/__tests__/acp-routes.test.ts +151 -0
- package/src/runtime/routes/__tests__/consolidation-routes.test.ts +12 -50
- package/src/runtime/routes/__tests__/conversation-surface-routes.test.ts +322 -0
- package/src/runtime/routes/__tests__/inference-provider-connection-routes.test.ts +0 -62
- package/src/runtime/routes/__tests__/plugins-routes.test.ts +32 -11
- package/src/runtime/routes/acp-routes.test.ts +106 -0
- package/src/runtime/routes/acp-routes.ts +248 -2
- package/src/runtime/routes/browser-tabs-routes.ts +1 -1
- package/src/runtime/routes/btw-routes.ts +0 -14
- package/src/runtime/routes/channel-verification-routes.ts +14 -5
- package/src/runtime/routes/chatgpt-subscription-auth-routes.ts +0 -14
- package/src/runtime/routes/consolidation-routes.ts +6 -82
- package/src/runtime/routes/conversation-list-routes.ts +83 -5
- package/src/runtime/routes/conversation-management-routes.ts +125 -0
- package/src/runtime/routes/identity-intro-cache.ts +1 -1
- package/src/runtime/routes/identity-routes.ts +84 -20
- package/src/runtime/routes/inbound-message-handler.ts +0 -36
- package/src/runtime/routes/inbound-stages/acl-enforcement.ts +33 -34
- package/src/runtime/routes/inference-provider-connection-routes.ts +0 -45
- package/src/runtime/routes/plugins-routes.ts +49 -45
- package/src/runtime/routes/schedule-routes.ts +43 -5
- package/src/runtime/routes/settings-routes.ts +140 -15
- package/src/runtime/routes/skills-routes.ts +18 -6
- package/src/runtime/services/__tests__/conversation-serializer.test.ts +140 -0
- package/src/runtime/services/conversation-serializer.ts +38 -1
- package/src/runtime/verification-outbound-actions.ts +147 -2
- package/src/runtime/verification-templates.ts +29 -3
- package/src/schedule/schedule-store.ts +19 -0
- package/src/skills/catalog-install.ts +77 -13
- package/src/tasks/task-scheduler.ts +1 -0
- package/src/telemetry/types.ts +66 -1
- package/src/telemetry/usage-telemetry-reporter.test.ts +542 -13
- package/src/telemetry/usage-telemetry-reporter.ts +213 -20
- package/src/tools/apps/executors.ts +1 -1
- package/src/tools/browser/__tests__/browser-execution-acquire.test.ts +49 -2
- package/src/tools/browser/__tests__/browser-status.test.ts +29 -5
- package/src/tools/browser/browser-execution.ts +27 -9
- package/src/tools/browser/cdp-client/__tests__/factory.test.ts +380 -4
- package/src/tools/browser/cdp-client/__tests__/host-bridge-cdp-client.test.ts +107 -0
- package/src/tools/browser/cdp-client/__tests__/types.test.ts +6 -1
- package/src/tools/browser/cdp-client/factory.ts +217 -17
- package/src/tools/browser/cdp-client/host-bridge-cdp-client.ts +67 -0
- package/src/tools/browser/cdp-client/types.ts +22 -2
- package/src/tools/credential-execution/make-authenticated-request.ts +2 -1
- package/src/tools/credential-execution/manage-secure-command-tool.ts +169 -164
- package/src/tools/credential-execution/run-authenticated-command.ts +2 -1
- package/src/tools/executor.ts +39 -7
- package/src/tools/registry.ts +387 -5
- package/src/tools/schedule/create.ts +16 -0
- package/src/tools/schedule/list.ts +12 -4
- package/src/tools/schedule/update.ts +12 -0
- package/src/tools/skills/load.ts +11 -6
- package/src/tools/terminal/safe-env.ts +2 -0
- package/src/tools/types.ts +65 -9
- package/src/tools/workspace-tools/loader.ts +673 -0
- package/src/usage/attribution.ts +28 -0
- package/src/util/device-id.ts +17 -3
- package/src/util/platform.ts +16 -0
- package/tsconfig.plugin-api.json +13 -0
- package/src/__tests__/plugin-external-api.test.ts +0 -68
- package/src/__tests__/plugin-skill-contribution.test.ts +0 -355
- package/src/daemon/message-types/browser.ts +0 -10
- package/src/notifications/__tests__/emit-signal-home-feed.test.ts +0 -187
- package/src/plugins/defaults/memory-v3-shadow/__tests__/fixtures/eval-turns.json +0 -36
- package/src/plugins/defaults/memory-v3-shadow/__tests__/fixtures/live-turns.json +0 -37
- package/src/plugins/defaults/memory-v3-shadow/__tests__/working-set-eviction.test.ts +0 -106
- package/src/plugins/defaults/memory-v3-shadow/__tests__/working-set-skeleton.test.ts +0 -44
- package/src/plugins/defaults/memory-v3-shadow/working-set.ts +0 -91
- package/src/plugins/external-api.ts +0 -114
- package/src/plugins/plugin-skill-contributions.ts +0 -292
package/openapi.yaml
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
openapi: 3.1.0
|
|
4
4
|
info:
|
|
5
5
|
title: Vellum Assistant API
|
|
6
|
-
version: 0.8.
|
|
6
|
+
version: 0.8.11
|
|
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
|
|
@@ -96,8 +96,11 @@ paths:
|
|
|
96
96
|
operationId: acp_by_id_steer_post
|
|
97
97
|
summary: Steer ACP session
|
|
98
98
|
description:
|
|
99
|
-
Send a steering instruction to an ACP session. Sessions no longer in memory (completed, or lost to a
|
|
100
|
-
restart) are transparently resumed from persisted history first, when the agent supports ACP session
|
|
99
|
+
"Send a steering instruction to an ACP session. Sessions no longer in memory (completed, or lost to a
|
|
100
|
+
daemon restart) are transparently resumed from persisted history first, when the agent supports ACP session
|
|
101
|
+
loading. Resuming a terminal session re-spawns the host agent, so it requires guardian approval: the route acks
|
|
102
|
+
immediately with approvalPending=true and performs the resume in the background once approved, streaming results
|
|
103
|
+
over SSE."
|
|
101
104
|
tags:
|
|
102
105
|
- acp
|
|
103
106
|
responses:
|
|
@@ -115,6 +118,11 @@ paths:
|
|
|
115
118
|
resumed:
|
|
116
119
|
description: True when the session was resumed from persisted history before steering.
|
|
117
120
|
type: boolean
|
|
121
|
+
approvalPending:
|
|
122
|
+
description:
|
|
123
|
+
True when the steer triggered a guardian-approval-gated resume that will run asynchronously; watch SSE for
|
|
124
|
+
the outcome.
|
|
125
|
+
type: boolean
|
|
118
126
|
required:
|
|
119
127
|
- acpSessionId
|
|
120
128
|
- steered
|
|
@@ -4531,55 +4539,6 @@ paths:
|
|
|
4531
4539
|
- lastRunAt
|
|
4532
4540
|
- success
|
|
4533
4541
|
additionalProperties: false
|
|
4534
|
-
put:
|
|
4535
|
-
operationId: consolidation_config_put
|
|
4536
|
-
summary: Update consolidation config
|
|
4537
|
-
description: Update the memory v2 consolidation schedule configuration.
|
|
4538
|
-
tags:
|
|
4539
|
-
- consolidation
|
|
4540
|
-
responses:
|
|
4541
|
-
"200":
|
|
4542
|
-
description: Successful response
|
|
4543
|
-
content:
|
|
4544
|
-
application/json:
|
|
4545
|
-
schema:
|
|
4546
|
-
type: object
|
|
4547
|
-
properties:
|
|
4548
|
-
available:
|
|
4549
|
-
type: boolean
|
|
4550
|
-
enabled:
|
|
4551
|
-
type: boolean
|
|
4552
|
-
intervalMs:
|
|
4553
|
-
type: number
|
|
4554
|
-
nextRunAt:
|
|
4555
|
-
anyOf:
|
|
4556
|
-
- type: number
|
|
4557
|
-
- type: "null"
|
|
4558
|
-
lastRunAt:
|
|
4559
|
-
anyOf:
|
|
4560
|
-
- type: number
|
|
4561
|
-
- type: "null"
|
|
4562
|
-
success:
|
|
4563
|
-
type: boolean
|
|
4564
|
-
required:
|
|
4565
|
-
- available
|
|
4566
|
-
- enabled
|
|
4567
|
-
- intervalMs
|
|
4568
|
-
- nextRunAt
|
|
4569
|
-
- lastRunAt
|
|
4570
|
-
- success
|
|
4571
|
-
additionalProperties: false
|
|
4572
|
-
requestBody:
|
|
4573
|
-
required: true
|
|
4574
|
-
content:
|
|
4575
|
-
application/json:
|
|
4576
|
-
schema:
|
|
4577
|
-
type: object
|
|
4578
|
-
properties:
|
|
4579
|
-
enabled:
|
|
4580
|
-
description: Enable or disable automatic consolidation
|
|
4581
|
-
type: boolean
|
|
4582
|
-
additionalProperties: false
|
|
4583
4542
|
/v1/consolidation/run-now:
|
|
4584
4543
|
post:
|
|
4585
4544
|
operationId: consolidation_runnow_post
|
|
@@ -5978,6 +5937,7 @@ paths:
|
|
|
5978
5937
|
- macos_notification_view
|
|
5979
5938
|
- macos_conversation_opened
|
|
5980
5939
|
- ios_conversation_opened
|
|
5940
|
+
- web_bulk_mark_read
|
|
5981
5941
|
- telegram_inbound_message
|
|
5982
5942
|
- telegram_callback
|
|
5983
5943
|
- slack_inbound_message
|
|
@@ -6012,6 +5972,8 @@ paths:
|
|
|
6012
5972
|
additionalProperties: false
|
|
6013
5973
|
archivedAt:
|
|
6014
5974
|
type: number
|
|
5975
|
+
surfacedAt:
|
|
5976
|
+
type: number
|
|
6015
5977
|
inferenceProfile:
|
|
6016
5978
|
type: string
|
|
6017
5979
|
isProcessing:
|
|
@@ -6339,6 +6301,7 @@ paths:
|
|
|
6339
6301
|
- macos_notification_view
|
|
6340
6302
|
- macos_conversation_opened
|
|
6341
6303
|
- ios_conversation_opened
|
|
6304
|
+
- web_bulk_mark_read
|
|
6342
6305
|
- telegram_inbound_message
|
|
6343
6306
|
- telegram_callback
|
|
6344
6307
|
- slack_inbound_message
|
|
@@ -6373,6 +6336,8 @@ paths:
|
|
|
6373
6336
|
additionalProperties: false
|
|
6374
6337
|
archivedAt:
|
|
6375
6338
|
type: number
|
|
6339
|
+
surfacedAt:
|
|
6340
|
+
type: number
|
|
6376
6341
|
inferenceProfile:
|
|
6377
6342
|
type: string
|
|
6378
6343
|
isProcessing:
|
|
@@ -6537,6 +6502,7 @@ paths:
|
|
|
6537
6502
|
- macos_notification_view
|
|
6538
6503
|
- macos_conversation_opened
|
|
6539
6504
|
- ios_conversation_opened
|
|
6505
|
+
- web_bulk_mark_read
|
|
6540
6506
|
- telegram_inbound_message
|
|
6541
6507
|
- telegram_callback
|
|
6542
6508
|
- slack_inbound_message
|
|
@@ -6571,6 +6537,8 @@ paths:
|
|
|
6571
6537
|
additionalProperties: false
|
|
6572
6538
|
archivedAt:
|
|
6573
6539
|
type: number
|
|
6540
|
+
surfacedAt:
|
|
6541
|
+
type: number
|
|
6574
6542
|
inferenceProfile:
|
|
6575
6543
|
type: string
|
|
6576
6544
|
isProcessing:
|
|
@@ -6979,6 +6947,56 @@ paths:
|
|
|
6979
6947
|
required: true
|
|
6980
6948
|
schema:
|
|
6981
6949
|
type: string
|
|
6950
|
+
/v1/conversations/{id}/surface:
|
|
6951
|
+
post:
|
|
6952
|
+
operationId: conversations_by_id_surface_post
|
|
6953
|
+
summary: Surface a conversation into Recents
|
|
6954
|
+
description:
|
|
6955
|
+
Explicitly promote a background or scheduled conversation into the default conversation listing (the
|
|
6956
|
+
Recents sidebar grouping), or demote it with surfaced=false. Conversations are never surfaced automatically.
|
|
6957
|
+
tags:
|
|
6958
|
+
- conversations
|
|
6959
|
+
responses:
|
|
6960
|
+
"200":
|
|
6961
|
+
description: Successful response
|
|
6962
|
+
content:
|
|
6963
|
+
application/json:
|
|
6964
|
+
schema:
|
|
6965
|
+
type: object
|
|
6966
|
+
properties:
|
|
6967
|
+
ok:
|
|
6968
|
+
type: boolean
|
|
6969
|
+
conversationId:
|
|
6970
|
+
type: string
|
|
6971
|
+
surfacedAt:
|
|
6972
|
+
anyOf:
|
|
6973
|
+
- type: number
|
|
6974
|
+
- type: "null"
|
|
6975
|
+
description: Epoch-ms timestamp of the promotion, or null when cleared.
|
|
6976
|
+
required:
|
|
6977
|
+
- ok
|
|
6978
|
+
- conversationId
|
|
6979
|
+
- surfacedAt
|
|
6980
|
+
additionalProperties: false
|
|
6981
|
+
parameters:
|
|
6982
|
+
- name: id
|
|
6983
|
+
in: path
|
|
6984
|
+
required: true
|
|
6985
|
+
schema:
|
|
6986
|
+
type: string
|
|
6987
|
+
requestBody:
|
|
6988
|
+
required: true
|
|
6989
|
+
content:
|
|
6990
|
+
application/json:
|
|
6991
|
+
schema:
|
|
6992
|
+
type: object
|
|
6993
|
+
properties:
|
|
6994
|
+
surfaced:
|
|
6995
|
+
type: boolean
|
|
6996
|
+
description: true to surface the conversation into Recents, false to clear the promotion.
|
|
6997
|
+
required:
|
|
6998
|
+
- surfaced
|
|
6999
|
+
additionalProperties: false
|
|
6982
7000
|
/v1/conversations/{id}/unarchive:
|
|
6983
7001
|
post:
|
|
6984
7002
|
operationId: conversations_by_id_unarchive_post
|
|
@@ -7080,6 +7098,44 @@ paths:
|
|
|
7080
7098
|
required: true
|
|
7081
7099
|
schema:
|
|
7082
7100
|
type: string
|
|
7101
|
+
/v1/conversations/archive/bulk:
|
|
7102
|
+
post:
|
|
7103
|
+
operationId: conversations_archive_bulk_post
|
|
7104
|
+
summary: Bulk archive conversations
|
|
7105
|
+
description: Archive multiple conversations in one request. Emits a single sync invalidation for the entire batch.
|
|
7106
|
+
tags:
|
|
7107
|
+
- conversations
|
|
7108
|
+
responses:
|
|
7109
|
+
"200":
|
|
7110
|
+
description: Successful response
|
|
7111
|
+
content:
|
|
7112
|
+
application/json:
|
|
7113
|
+
schema:
|
|
7114
|
+
type: object
|
|
7115
|
+
properties:
|
|
7116
|
+
ok:
|
|
7117
|
+
type: boolean
|
|
7118
|
+
archived:
|
|
7119
|
+
type: number
|
|
7120
|
+
required:
|
|
7121
|
+
- ok
|
|
7122
|
+
- archived
|
|
7123
|
+
additionalProperties: false
|
|
7124
|
+
requestBody:
|
|
7125
|
+
required: true
|
|
7126
|
+
content:
|
|
7127
|
+
application/json:
|
|
7128
|
+
schema:
|
|
7129
|
+
type: object
|
|
7130
|
+
properties:
|
|
7131
|
+
conversationIds:
|
|
7132
|
+
minItems: 1
|
|
7133
|
+
type: array
|
|
7134
|
+
items:
|
|
7135
|
+
type: string
|
|
7136
|
+
required:
|
|
7137
|
+
- conversationIds
|
|
7138
|
+
additionalProperties: false
|
|
7083
7139
|
/v1/conversations/attention:
|
|
7084
7140
|
get:
|
|
7085
7141
|
operationId: conversations_attention_get
|
|
@@ -7500,6 +7556,7 @@ paths:
|
|
|
7500
7556
|
- macos_notification_view
|
|
7501
7557
|
- macos_conversation_opened
|
|
7502
7558
|
- ios_conversation_opened
|
|
7559
|
+
- web_bulk_mark_read
|
|
7503
7560
|
- telegram_inbound_message
|
|
7504
7561
|
- telegram_callback
|
|
7505
7562
|
- slack_inbound_message
|
|
@@ -7534,6 +7591,8 @@ paths:
|
|
|
7534
7591
|
additionalProperties: false
|
|
7535
7592
|
archivedAt:
|
|
7536
7593
|
type: number
|
|
7594
|
+
surfacedAt:
|
|
7595
|
+
type: number
|
|
7537
7596
|
inferenceProfile:
|
|
7538
7597
|
type: string
|
|
7539
7598
|
isProcessing:
|
|
@@ -8505,6 +8564,46 @@ paths:
|
|
|
8505
8564
|
required:
|
|
8506
8565
|
- conversationId
|
|
8507
8566
|
additionalProperties: false
|
|
8567
|
+
/v1/conversations/seen/bulk:
|
|
8568
|
+
post:
|
|
8569
|
+
operationId: conversations_seen_bulk_post
|
|
8570
|
+
summary: Bulk mark conversations as seen
|
|
8571
|
+
description:
|
|
8572
|
+
Mark multiple conversations as seen in one request. Emits a single sync invalidation for the entire batch
|
|
8573
|
+
instead of per-conversation events.
|
|
8574
|
+
tags:
|
|
8575
|
+
- conversations
|
|
8576
|
+
responses:
|
|
8577
|
+
"200":
|
|
8578
|
+
description: Successful response
|
|
8579
|
+
content:
|
|
8580
|
+
application/json:
|
|
8581
|
+
schema:
|
|
8582
|
+
type: object
|
|
8583
|
+
properties:
|
|
8584
|
+
ok:
|
|
8585
|
+
type: boolean
|
|
8586
|
+
updated:
|
|
8587
|
+
type: number
|
|
8588
|
+
required:
|
|
8589
|
+
- ok
|
|
8590
|
+
- updated
|
|
8591
|
+
additionalProperties: false
|
|
8592
|
+
requestBody:
|
|
8593
|
+
required: true
|
|
8594
|
+
content:
|
|
8595
|
+
application/json:
|
|
8596
|
+
schema:
|
|
8597
|
+
type: object
|
|
8598
|
+
properties:
|
|
8599
|
+
conversationIds:
|
|
8600
|
+
minItems: 1
|
|
8601
|
+
type: array
|
|
8602
|
+
items:
|
|
8603
|
+
type: string
|
|
8604
|
+
required:
|
|
8605
|
+
- conversationIds
|
|
8606
|
+
additionalProperties: false
|
|
8508
8607
|
/v1/conversations/switch:
|
|
8509
8608
|
post:
|
|
8510
8609
|
operationId: conversations_switch_post
|
|
@@ -11174,6 +11273,14 @@ paths:
|
|
|
11174
11273
|
required:
|
|
11175
11274
|
- connected
|
|
11176
11275
|
additionalProperties: false
|
|
11276
|
+
capabilities:
|
|
11277
|
+
type: object
|
|
11278
|
+
properties:
|
|
11279
|
+
memoryOptOut:
|
|
11280
|
+
type: boolean
|
|
11281
|
+
required:
|
|
11282
|
+
- memoryOptOut
|
|
11283
|
+
additionalProperties: false
|
|
11177
11284
|
profiler:
|
|
11178
11285
|
type: object
|
|
11179
11286
|
properties:
|
|
@@ -11258,6 +11365,7 @@ paths:
|
|
|
11258
11365
|
- cpu
|
|
11259
11366
|
- migrations
|
|
11260
11367
|
- ces
|
|
11368
|
+
- capabilities
|
|
11261
11369
|
additionalProperties: false
|
|
11262
11370
|
/v1/healthz:
|
|
11263
11371
|
get:
|
|
@@ -11342,6 +11450,14 @@ paths:
|
|
|
11342
11450
|
required:
|
|
11343
11451
|
- connected
|
|
11344
11452
|
additionalProperties: false
|
|
11453
|
+
capabilities:
|
|
11454
|
+
type: object
|
|
11455
|
+
properties:
|
|
11456
|
+
memoryOptOut:
|
|
11457
|
+
type: boolean
|
|
11458
|
+
required:
|
|
11459
|
+
- memoryOptOut
|
|
11460
|
+
additionalProperties: false
|
|
11345
11461
|
profiler:
|
|
11346
11462
|
type: object
|
|
11347
11463
|
properties:
|
|
@@ -11426,6 +11542,7 @@ paths:
|
|
|
11426
11542
|
- cpu
|
|
11427
11543
|
- migrations
|
|
11428
11544
|
- ces
|
|
11545
|
+
- capabilities
|
|
11429
11546
|
additionalProperties: false
|
|
11430
11547
|
/v1/heartbeat/checklist:
|
|
11431
11548
|
get:
|
|
@@ -12885,6 +13002,23 @@ paths:
|
|
|
12885
13002
|
- source
|
|
12886
13003
|
- refreshing
|
|
12887
13004
|
additionalProperties: false
|
|
13005
|
+
parameters:
|
|
13006
|
+
- name: localHour
|
|
13007
|
+
in: query
|
|
13008
|
+
required: false
|
|
13009
|
+
schema:
|
|
13010
|
+
type: integer
|
|
13011
|
+
minimum: 0
|
|
13012
|
+
maximum: 23
|
|
13013
|
+
description: Optional client-local hour of day used only when refreshing generated greetings.
|
|
13014
|
+
- name: localMinute
|
|
13015
|
+
in: query
|
|
13016
|
+
required: false
|
|
13017
|
+
schema:
|
|
13018
|
+
type: integer
|
|
13019
|
+
minimum: 0
|
|
13020
|
+
maximum: 59
|
|
13021
|
+
description: Optional client-local minute used only when refreshing generated greetings.
|
|
12888
13022
|
/v1/image-generation/generate:
|
|
12889
13023
|
post:
|
|
12890
13024
|
operationId: imagegeneration_generate_post
|
|
@@ -15937,6 +16071,8 @@ paths:
|
|
|
15937
16071
|
- assistant
|
|
15938
16072
|
content:
|
|
15939
16073
|
type: string
|
|
16074
|
+
deprecated: true
|
|
16075
|
+
description: "Deprecated: superseded by contentBlocks. Flat plain-text body (joined text segments)."
|
|
15940
16076
|
timestamp:
|
|
15941
16077
|
type: string
|
|
15942
16078
|
attachments:
|
|
@@ -16241,6 +16377,8 @@ paths:
|
|
|
16241
16377
|
- name
|
|
16242
16378
|
- input
|
|
16243
16379
|
additionalProperties: false
|
|
16380
|
+
deprecated: true
|
|
16381
|
+
description: "Deprecated: superseded by contentBlocks (the tool_use variant). Flat list of tool calls."
|
|
16244
16382
|
surfaces:
|
|
16245
16383
|
type: array
|
|
16246
16384
|
items:
|
|
@@ -16292,18 +16430,28 @@ paths:
|
|
|
16292
16430
|
- surfaceType
|
|
16293
16431
|
- data
|
|
16294
16432
|
additionalProperties: false
|
|
16433
|
+
deprecated: true
|
|
16434
|
+
description: "Deprecated: superseded by contentBlocks (the surface variant). Flat list of surfaces."
|
|
16295
16435
|
textSegments:
|
|
16296
16436
|
type: array
|
|
16297
16437
|
items:
|
|
16298
16438
|
type: string
|
|
16439
|
+
deprecated: true
|
|
16440
|
+
description: "Deprecated: superseded by contentBlocks. Text segments split by tool-call boundaries."
|
|
16299
16441
|
thinkingSegments:
|
|
16300
16442
|
type: array
|
|
16301
16443
|
items:
|
|
16302
16444
|
type: string
|
|
16445
|
+
deprecated: true
|
|
16446
|
+
description: "Deprecated: superseded by contentBlocks. Reasoning text extracted from thinking blocks."
|
|
16303
16447
|
contentOrder:
|
|
16304
16448
|
type: array
|
|
16305
16449
|
items:
|
|
16306
16450
|
type: string
|
|
16451
|
+
deprecated: true
|
|
16452
|
+
description:
|
|
16453
|
+
'Deprecated: superseded by contentBlocks. Positional "<type>:<index>" content ordering (e.g. "text:0",
|
|
16454
|
+
"thinking:1").'
|
|
16307
16455
|
contentBlocks:
|
|
16308
16456
|
type: array
|
|
16309
16457
|
items:
|
|
@@ -16326,6 +16474,10 @@ paths:
|
|
|
16326
16474
|
const: thinking
|
|
16327
16475
|
thinking:
|
|
16328
16476
|
type: string
|
|
16477
|
+
startedAt:
|
|
16478
|
+
type: number
|
|
16479
|
+
completedAt:
|
|
16480
|
+
type: number
|
|
16329
16481
|
required:
|
|
16330
16482
|
- type
|
|
16331
16483
|
- thinking
|
|
@@ -19380,15 +19532,7 @@ paths:
|
|
|
19380
19532
|
- type: "null"
|
|
19381
19533
|
description: Resolved version (installed copy first, then repo `package.json`).
|
|
19382
19534
|
source:
|
|
19383
|
-
|
|
19384
|
-
- type: object
|
|
19385
|
-
properties:
|
|
19386
|
-
kind:
|
|
19387
|
-
type: string
|
|
19388
|
-
const: first-party
|
|
19389
|
-
required:
|
|
19390
|
-
- kind
|
|
19391
|
-
additionalProperties: false
|
|
19535
|
+
anyOf:
|
|
19392
19536
|
- type: object
|
|
19393
19537
|
properties:
|
|
19394
19538
|
kind:
|
|
@@ -19408,7 +19552,9 @@ paths:
|
|
|
19408
19552
|
- repo
|
|
19409
19553
|
- ref
|
|
19410
19554
|
additionalProperties: false
|
|
19411
|
-
|
|
19555
|
+
description: "Origin of the match: a whitelisted external plugin repository."
|
|
19556
|
+
- type: "null"
|
|
19557
|
+
description: Pinned origin from the marketplace entry, or null when an installed copy has no catalog entry.
|
|
19412
19558
|
readme:
|
|
19413
19559
|
anyOf:
|
|
19414
19560
|
- type: string
|
|
@@ -19417,6 +19563,24 @@ paths:
|
|
|
19417
19563
|
ref:
|
|
19418
19564
|
type: string
|
|
19419
19565
|
description: Git ref the catalog metadata / README were resolved at.
|
|
19566
|
+
artifact:
|
|
19567
|
+
anyOf:
|
|
19568
|
+
- type: object
|
|
19569
|
+
properties:
|
|
19570
|
+
url:
|
|
19571
|
+
type: string
|
|
19572
|
+
description: HTTPS URL the prebuilt client artifact is downloaded from.
|
|
19573
|
+
sha256:
|
|
19574
|
+
type: string
|
|
19575
|
+
description: Lowercase 64-char hex SHA-256 the download is verified against.
|
|
19576
|
+
required:
|
|
19577
|
+
- url
|
|
19578
|
+
- sha256
|
|
19579
|
+
additionalProperties: false
|
|
19580
|
+
- type: "null"
|
|
19581
|
+
description:
|
|
19582
|
+
Prebuilt client artifact from `package.json` `vellum.artifact`, or null when the plugin ships none or its
|
|
19583
|
+
descriptor is incomplete (e.g. a placeholder sha256).
|
|
19420
19584
|
required:
|
|
19421
19585
|
- name
|
|
19422
19586
|
- installed
|
|
@@ -19427,6 +19591,7 @@ paths:
|
|
|
19427
19591
|
- source
|
|
19428
19592
|
- readme
|
|
19429
19593
|
- ref
|
|
19594
|
+
- artifact
|
|
19430
19595
|
additionalProperties: false
|
|
19431
19596
|
"400":
|
|
19432
19597
|
description: The plugin name failed sanitization (e.g. contained slashes, dots, or uppercase letters).
|
|
@@ -19449,13 +19614,12 @@ paths:
|
|
|
19449
19614
|
operationId: plugins_install_post
|
|
19450
19615
|
summary: Install a plugin
|
|
19451
19616
|
description:
|
|
19452
|
-
"Install a plugin by name from the canonical source — a whitelisted `
|
|
19453
|
-
|
|
19454
|
-
|
|
19455
|
-
|
|
19456
|
-
|
|
19457
|
-
|
|
19458
|
-
returns 404. Sibling to `POST /v1/skills/install`."
|
|
19617
|
+
"Install a plugin by name from the canonical source — a whitelisted `plugins/marketplace.json` entry.
|
|
19618
|
+
Always resolves against the curated default git ref (no caller-supplied ref): installing from an unreviewed
|
|
19619
|
+
revision would bypass the marketplace curation boundary and let attacker-controlled code be loaded. Materializes
|
|
19620
|
+
the plugin under `<workspaceDir>/plugins/<name>/`; the assistant must be restarted to load it. Mirrors the CLI's
|
|
19621
|
+
`assistant plugins install <name>`. An already-installed name without `force` returns 409; a name that resolves
|
|
19622
|
+
to nothing returns 404. Sibling to `POST /v1/skills/install`."
|
|
19459
19623
|
tags:
|
|
19460
19624
|
- plugins
|
|
19461
19625
|
responses:
|
|
@@ -19503,7 +19667,7 @@ paths:
|
|
|
19503
19667
|
properties:
|
|
19504
19668
|
name:
|
|
19505
19669
|
type: string
|
|
19506
|
-
description: Install name to resolve against the
|
|
19670
|
+
description: Install name to resolve against the marketplace catalog.
|
|
19507
19671
|
force:
|
|
19508
19672
|
description: Overwrite an existing install in place. Defaults to false.
|
|
19509
19673
|
type: boolean
|
|
@@ -19515,9 +19679,9 @@ paths:
|
|
|
19515
19679
|
operationId: plugins_search_get
|
|
19516
19680
|
summary: Search the plugin catalog
|
|
19517
19681
|
description:
|
|
19518
|
-
List installable plugins from the
|
|
19519
|
-
|
|
19520
|
-
|
|
19682
|
+
List installable plugins from the curated `plugins/marketplace.json` catalog. The query is an ECMAScript
|
|
19683
|
+
regex matched case-insensitively against the plugin name (e.g. `memory`, `^simple`). Empty query returns every
|
|
19684
|
+
entry. Mirrors the CLI's `assistant plugins search`.
|
|
19521
19685
|
tags:
|
|
19522
19686
|
- plugins
|
|
19523
19687
|
responses:
|
|
@@ -19544,42 +19708,31 @@ paths:
|
|
|
19544
19708
|
description: Install name. Matches `assistant plugins install <name>`.
|
|
19545
19709
|
path:
|
|
19546
19710
|
type: string
|
|
19547
|
-
description:
|
|
19548
|
-
"Human-readable origin: a repo-relative path (`experimental/plugins/<name>`) for first-party plugins or a
|
|
19549
|
-
`github:owner/repo@ref` locator for external ones."
|
|
19711
|
+
description: "Human-readable origin: a `github:owner/repo@ref` locator for the external plugin."
|
|
19550
19712
|
description:
|
|
19551
19713
|
description: Short description, when known (external entries only today).
|
|
19552
19714
|
type: string
|
|
19553
19715
|
source:
|
|
19554
|
-
|
|
19555
|
-
|
|
19556
|
-
|
|
19557
|
-
|
|
19558
|
-
|
|
19559
|
-
|
|
19560
|
-
|
|
19561
|
-
|
|
19562
|
-
|
|
19563
|
-
|
|
19564
|
-
|
|
19565
|
-
|
|
19566
|
-
|
|
19567
|
-
|
|
19568
|
-
|
|
19569
|
-
|
|
19570
|
-
|
|
19571
|
-
|
|
19572
|
-
|
|
19573
|
-
|
|
19574
|
-
ref:
|
|
19575
|
-
type: string
|
|
19576
|
-
description: Pinned git ref the plugin is fetched from.
|
|
19577
|
-
required:
|
|
19578
|
-
- kind
|
|
19579
|
-
- repo
|
|
19580
|
-
- ref
|
|
19581
|
-
additionalProperties: false
|
|
19582
|
-
description: "Origin of the match: a first-party in-repo plugin or a whitelisted external one."
|
|
19716
|
+
type: object
|
|
19717
|
+
properties:
|
|
19718
|
+
kind:
|
|
19719
|
+
type: string
|
|
19720
|
+
const: github
|
|
19721
|
+
repo:
|
|
19722
|
+
type: string
|
|
19723
|
+
description: "`owner/repo` of the external plugin repository."
|
|
19724
|
+
path:
|
|
19725
|
+
description: Directory within the repo, when the plugin is not at the root.
|
|
19726
|
+
type: string
|
|
19727
|
+
ref:
|
|
19728
|
+
type: string
|
|
19729
|
+
description: Pinned git ref the plugin is fetched from.
|
|
19730
|
+
required:
|
|
19731
|
+
- kind
|
|
19732
|
+
- repo
|
|
19733
|
+
- ref
|
|
19734
|
+
additionalProperties: false
|
|
19735
|
+
description: "Origin of the match: a whitelisted external plugin repository."
|
|
19583
19736
|
required:
|
|
19584
19737
|
- name
|
|
19585
19738
|
- path
|
|
@@ -20290,9 +20443,9 @@ paths:
|
|
|
20290
20443
|
- type: number
|
|
20291
20444
|
- type: "null"
|
|
20292
20445
|
description:
|
|
20293
|
-
|
|
20294
|
-
|
|
20295
|
-
|
|
20446
|
+
type: string
|
|
20447
|
+
cadenceDescription:
|
|
20448
|
+
type: string
|
|
20296
20449
|
mode:
|
|
20297
20450
|
type: string
|
|
20298
20451
|
enum:
|
|
@@ -20342,6 +20495,7 @@ paths:
|
|
|
20342
20495
|
- createdFromConversationExists
|
|
20343
20496
|
- createdFromConversationArchivedAt
|
|
20344
20497
|
- description
|
|
20498
|
+
- cadenceDescription
|
|
20345
20499
|
- mode
|
|
20346
20500
|
- status
|
|
20347
20501
|
- routingIntent
|
|
@@ -20439,9 +20593,9 @@ paths:
|
|
|
20439
20593
|
- type: number
|
|
20440
20594
|
- type: "null"
|
|
20441
20595
|
description:
|
|
20442
|
-
|
|
20443
|
-
|
|
20444
|
-
|
|
20596
|
+
type: string
|
|
20597
|
+
cadenceDescription:
|
|
20598
|
+
type: string
|
|
20445
20599
|
mode:
|
|
20446
20600
|
type: string
|
|
20447
20601
|
enum:
|
|
@@ -20491,6 +20645,7 @@ paths:
|
|
|
20491
20645
|
- createdFromConversationExists
|
|
20492
20646
|
- createdFromConversationArchivedAt
|
|
20493
20647
|
- description
|
|
20648
|
+
- cadenceDescription
|
|
20494
20649
|
- mode
|
|
20495
20650
|
- status
|
|
20496
20651
|
- routingIntent
|
|
@@ -20512,6 +20667,9 @@ paths:
|
|
|
20512
20667
|
name:
|
|
20513
20668
|
type: string
|
|
20514
20669
|
description: Display name
|
|
20670
|
+
description:
|
|
20671
|
+
type: string
|
|
20672
|
+
description: Authored schedule description. Defaults to the schedule name when omitted for backward compatibility.
|
|
20515
20673
|
expression:
|
|
20516
20674
|
type: string
|
|
20517
20675
|
description: Cron or RRULE expression
|
|
@@ -20614,9 +20772,9 @@ paths:
|
|
|
20614
20772
|
- type: number
|
|
20615
20773
|
- type: "null"
|
|
20616
20774
|
description:
|
|
20617
|
-
|
|
20618
|
-
|
|
20619
|
-
|
|
20775
|
+
type: string
|
|
20776
|
+
cadenceDescription:
|
|
20777
|
+
type: string
|
|
20620
20778
|
mode:
|
|
20621
20779
|
type: string
|
|
20622
20780
|
enum:
|
|
@@ -20666,6 +20824,7 @@ paths:
|
|
|
20666
20824
|
- createdFromConversationExists
|
|
20667
20825
|
- createdFromConversationArchivedAt
|
|
20668
20826
|
- description
|
|
20827
|
+
- cadenceDescription
|
|
20669
20828
|
- mode
|
|
20670
20829
|
- status
|
|
20671
20830
|
- routingIntent
|
|
@@ -20762,9 +20921,9 @@ paths:
|
|
|
20762
20921
|
- type: number
|
|
20763
20922
|
- type: "null"
|
|
20764
20923
|
description:
|
|
20765
|
-
|
|
20766
|
-
|
|
20767
|
-
|
|
20924
|
+
type: string
|
|
20925
|
+
cadenceDescription:
|
|
20926
|
+
type: string
|
|
20768
20927
|
mode:
|
|
20769
20928
|
type: string
|
|
20770
20929
|
enum:
|
|
@@ -20814,6 +20973,7 @@ paths:
|
|
|
20814
20973
|
- createdFromConversationExists
|
|
20815
20974
|
- createdFromConversationArchivedAt
|
|
20816
20975
|
- description
|
|
20976
|
+
- cadenceDescription
|
|
20817
20977
|
- mode
|
|
20818
20978
|
- status
|
|
20819
20979
|
- routingIntent
|
|
@@ -20840,6 +21000,8 @@ paths:
|
|
|
20840
21000
|
properties:
|
|
20841
21001
|
name:
|
|
20842
21002
|
type: string
|
|
21003
|
+
description:
|
|
21004
|
+
type: string
|
|
20843
21005
|
expression:
|
|
20844
21006
|
type: string
|
|
20845
21007
|
timezone:
|
|
@@ -20953,9 +21115,9 @@ paths:
|
|
|
20953
21115
|
- type: number
|
|
20954
21116
|
- type: "null"
|
|
20955
21117
|
description:
|
|
20956
|
-
|
|
20957
|
-
|
|
20958
|
-
|
|
21118
|
+
type: string
|
|
21119
|
+
cadenceDescription:
|
|
21120
|
+
type: string
|
|
20959
21121
|
mode:
|
|
20960
21122
|
type: string
|
|
20961
21123
|
enum:
|
|
@@ -21005,6 +21167,7 @@ paths:
|
|
|
21005
21167
|
- createdFromConversationExists
|
|
21006
21168
|
- createdFromConversationArchivedAt
|
|
21007
21169
|
- description
|
|
21170
|
+
- cadenceDescription
|
|
21008
21171
|
- mode
|
|
21009
21172
|
- status
|
|
21010
21173
|
- routingIntent
|
|
@@ -21102,9 +21265,9 @@ paths:
|
|
|
21102
21265
|
- type: number
|
|
21103
21266
|
- type: "null"
|
|
21104
21267
|
description:
|
|
21105
|
-
|
|
21106
|
-
|
|
21107
|
-
|
|
21268
|
+
type: string
|
|
21269
|
+
cadenceDescription:
|
|
21270
|
+
type: string
|
|
21108
21271
|
mode:
|
|
21109
21272
|
type: string
|
|
21110
21273
|
enum:
|
|
@@ -21154,6 +21317,7 @@ paths:
|
|
|
21154
21317
|
- createdFromConversationExists
|
|
21155
21318
|
- createdFromConversationArchivedAt
|
|
21156
21319
|
- description
|
|
21320
|
+
- cadenceDescription
|
|
21157
21321
|
- mode
|
|
21158
21322
|
- status
|
|
21159
21323
|
- routingIntent
|
|
@@ -21340,9 +21504,9 @@ paths:
|
|
|
21340
21504
|
- type: number
|
|
21341
21505
|
- type: "null"
|
|
21342
21506
|
description:
|
|
21343
|
-
|
|
21344
|
-
|
|
21345
|
-
|
|
21507
|
+
type: string
|
|
21508
|
+
cadenceDescription:
|
|
21509
|
+
type: string
|
|
21346
21510
|
mode:
|
|
21347
21511
|
type: string
|
|
21348
21512
|
enum:
|
|
@@ -21392,6 +21556,7 @@ paths:
|
|
|
21392
21556
|
- createdFromConversationExists
|
|
21393
21557
|
- createdFromConversationArchivedAt
|
|
21394
21558
|
- description
|
|
21559
|
+
- cadenceDescription
|
|
21395
21560
|
- mode
|
|
21396
21561
|
- status
|
|
21397
21562
|
- routingIntent
|
|
@@ -22176,6 +22341,22 @@ paths:
|
|
|
22176
22341
|
- available
|
|
22177
22342
|
category:
|
|
22178
22343
|
type: string
|
|
22344
|
+
owner:
|
|
22345
|
+
type: object
|
|
22346
|
+
properties:
|
|
22347
|
+
kind:
|
|
22348
|
+
type: string
|
|
22349
|
+
enum:
|
|
22350
|
+
- skill
|
|
22351
|
+
- mcp
|
|
22352
|
+
- plugin
|
|
22353
|
+
- workspace
|
|
22354
|
+
id:
|
|
22355
|
+
type: string
|
|
22356
|
+
required:
|
|
22357
|
+
- kind
|
|
22358
|
+
- id
|
|
22359
|
+
additionalProperties: false
|
|
22179
22360
|
origin:
|
|
22180
22361
|
type: string
|
|
22181
22362
|
const: vellum
|
|
@@ -22214,6 +22395,22 @@ paths:
|
|
|
22214
22395
|
- available
|
|
22215
22396
|
category:
|
|
22216
22397
|
type: string
|
|
22398
|
+
owner:
|
|
22399
|
+
type: object
|
|
22400
|
+
properties:
|
|
22401
|
+
kind:
|
|
22402
|
+
type: string
|
|
22403
|
+
enum:
|
|
22404
|
+
- skill
|
|
22405
|
+
- mcp
|
|
22406
|
+
- plugin
|
|
22407
|
+
- workspace
|
|
22408
|
+
id:
|
|
22409
|
+
type: string
|
|
22410
|
+
required:
|
|
22411
|
+
- kind
|
|
22412
|
+
- id
|
|
22413
|
+
additionalProperties: false
|
|
22217
22414
|
origin:
|
|
22218
22415
|
type: string
|
|
22219
22416
|
const: clawhub
|
|
@@ -22272,6 +22469,22 @@ paths:
|
|
|
22272
22469
|
- available
|
|
22273
22470
|
category:
|
|
22274
22471
|
type: string
|
|
22472
|
+
owner:
|
|
22473
|
+
type: object
|
|
22474
|
+
properties:
|
|
22475
|
+
kind:
|
|
22476
|
+
type: string
|
|
22477
|
+
enum:
|
|
22478
|
+
- skill
|
|
22479
|
+
- mcp
|
|
22480
|
+
- plugin
|
|
22481
|
+
- workspace
|
|
22482
|
+
id:
|
|
22483
|
+
type: string
|
|
22484
|
+
required:
|
|
22485
|
+
- kind
|
|
22486
|
+
- id
|
|
22487
|
+
additionalProperties: false
|
|
22275
22488
|
origin:
|
|
22276
22489
|
type: string
|
|
22277
22490
|
const: skillssh
|
|
@@ -22345,6 +22558,22 @@ paths:
|
|
|
22345
22558
|
- available
|
|
22346
22559
|
category:
|
|
22347
22560
|
type: string
|
|
22561
|
+
owner:
|
|
22562
|
+
type: object
|
|
22563
|
+
properties:
|
|
22564
|
+
kind:
|
|
22565
|
+
type: string
|
|
22566
|
+
enum:
|
|
22567
|
+
- skill
|
|
22568
|
+
- mcp
|
|
22569
|
+
- plugin
|
|
22570
|
+
- workspace
|
|
22571
|
+
id:
|
|
22572
|
+
type: string
|
|
22573
|
+
required:
|
|
22574
|
+
- kind
|
|
22575
|
+
- id
|
|
22576
|
+
additionalProperties: false
|
|
22348
22577
|
origin:
|
|
22349
22578
|
type: string
|
|
22350
22579
|
const: custom
|
|
@@ -22502,6 +22731,22 @@ paths:
|
|
|
22502
22731
|
- available
|
|
22503
22732
|
category:
|
|
22504
22733
|
type: string
|
|
22734
|
+
owner:
|
|
22735
|
+
type: object
|
|
22736
|
+
properties:
|
|
22737
|
+
kind:
|
|
22738
|
+
type: string
|
|
22739
|
+
enum:
|
|
22740
|
+
- skill
|
|
22741
|
+
- mcp
|
|
22742
|
+
- plugin
|
|
22743
|
+
- workspace
|
|
22744
|
+
id:
|
|
22745
|
+
type: string
|
|
22746
|
+
required:
|
|
22747
|
+
- kind
|
|
22748
|
+
- id
|
|
22749
|
+
additionalProperties: false
|
|
22505
22750
|
origin:
|
|
22506
22751
|
type: string
|
|
22507
22752
|
const: vellum
|
|
@@ -22725,6 +22970,22 @@ paths:
|
|
|
22725
22970
|
- available
|
|
22726
22971
|
category:
|
|
22727
22972
|
type: string
|
|
22973
|
+
owner:
|
|
22974
|
+
type: object
|
|
22975
|
+
properties:
|
|
22976
|
+
kind:
|
|
22977
|
+
type: string
|
|
22978
|
+
enum:
|
|
22979
|
+
- skill
|
|
22980
|
+
- mcp
|
|
22981
|
+
- plugin
|
|
22982
|
+
- workspace
|
|
22983
|
+
id:
|
|
22984
|
+
type: string
|
|
22985
|
+
required:
|
|
22986
|
+
- kind
|
|
22987
|
+
- id
|
|
22988
|
+
additionalProperties: false
|
|
22728
22989
|
origin:
|
|
22729
22990
|
type: string
|
|
22730
22991
|
const: custom
|
|
@@ -22892,6 +23153,22 @@ paths:
|
|
|
22892
23153
|
- available
|
|
22893
23154
|
category:
|
|
22894
23155
|
type: string
|
|
23156
|
+
owner:
|
|
23157
|
+
type: object
|
|
23158
|
+
properties:
|
|
23159
|
+
kind:
|
|
23160
|
+
type: string
|
|
23161
|
+
enum:
|
|
23162
|
+
- skill
|
|
23163
|
+
- mcp
|
|
23164
|
+
- plugin
|
|
23165
|
+
- workspace
|
|
23166
|
+
id:
|
|
23167
|
+
type: string
|
|
23168
|
+
required:
|
|
23169
|
+
- kind
|
|
23170
|
+
- id
|
|
23171
|
+
additionalProperties: false
|
|
22895
23172
|
origin:
|
|
22896
23173
|
type: string
|
|
22897
23174
|
const: vellum
|
|
@@ -22930,6 +23207,22 @@ paths:
|
|
|
22930
23207
|
- available
|
|
22931
23208
|
category:
|
|
22932
23209
|
type: string
|
|
23210
|
+
owner:
|
|
23211
|
+
type: object
|
|
23212
|
+
properties:
|
|
23213
|
+
kind:
|
|
23214
|
+
type: string
|
|
23215
|
+
enum:
|
|
23216
|
+
- skill
|
|
23217
|
+
- mcp
|
|
23218
|
+
- plugin
|
|
23219
|
+
- workspace
|
|
23220
|
+
id:
|
|
23221
|
+
type: string
|
|
23222
|
+
required:
|
|
23223
|
+
- kind
|
|
23224
|
+
- id
|
|
23225
|
+
additionalProperties: false
|
|
22933
23226
|
origin:
|
|
22934
23227
|
type: string
|
|
22935
23228
|
const: clawhub
|
|
@@ -22988,6 +23281,22 @@ paths:
|
|
|
22988
23281
|
- available
|
|
22989
23282
|
category:
|
|
22990
23283
|
type: string
|
|
23284
|
+
owner:
|
|
23285
|
+
type: object
|
|
23286
|
+
properties:
|
|
23287
|
+
kind:
|
|
23288
|
+
type: string
|
|
23289
|
+
enum:
|
|
23290
|
+
- skill
|
|
23291
|
+
- mcp
|
|
23292
|
+
- plugin
|
|
23293
|
+
- workspace
|
|
23294
|
+
id:
|
|
23295
|
+
type: string
|
|
23296
|
+
required:
|
|
23297
|
+
- kind
|
|
23298
|
+
- id
|
|
23299
|
+
additionalProperties: false
|
|
22991
23300
|
origin:
|
|
22992
23301
|
type: string
|
|
22993
23302
|
const: skillssh
|
|
@@ -23061,6 +23370,22 @@ paths:
|
|
|
23061
23370
|
- available
|
|
23062
23371
|
category:
|
|
23063
23372
|
type: string
|
|
23373
|
+
owner:
|
|
23374
|
+
type: object
|
|
23375
|
+
properties:
|
|
23376
|
+
kind:
|
|
23377
|
+
type: string
|
|
23378
|
+
enum:
|
|
23379
|
+
- skill
|
|
23380
|
+
- mcp
|
|
23381
|
+
- plugin
|
|
23382
|
+
- workspace
|
|
23383
|
+
id:
|
|
23384
|
+
type: string
|
|
23385
|
+
required:
|
|
23386
|
+
- kind
|
|
23387
|
+
- id
|
|
23388
|
+
additionalProperties: false
|
|
23064
23389
|
origin:
|
|
23065
23390
|
type: string
|
|
23066
23391
|
const: custom
|
|
@@ -23409,6 +23734,22 @@ paths:
|
|
|
23409
23734
|
- available
|
|
23410
23735
|
category:
|
|
23411
23736
|
type: string
|
|
23737
|
+
owner:
|
|
23738
|
+
type: object
|
|
23739
|
+
properties:
|
|
23740
|
+
kind:
|
|
23741
|
+
type: string
|
|
23742
|
+
enum:
|
|
23743
|
+
- skill
|
|
23744
|
+
- mcp
|
|
23745
|
+
- plugin
|
|
23746
|
+
- workspace
|
|
23747
|
+
id:
|
|
23748
|
+
type: string
|
|
23749
|
+
required:
|
|
23750
|
+
- kind
|
|
23751
|
+
- id
|
|
23752
|
+
additionalProperties: false
|
|
23412
23753
|
origin:
|
|
23413
23754
|
type: string
|
|
23414
23755
|
const: vellum
|
|
@@ -23447,6 +23788,22 @@ paths:
|
|
|
23447
23788
|
- available
|
|
23448
23789
|
category:
|
|
23449
23790
|
type: string
|
|
23791
|
+
owner:
|
|
23792
|
+
type: object
|
|
23793
|
+
properties:
|
|
23794
|
+
kind:
|
|
23795
|
+
type: string
|
|
23796
|
+
enum:
|
|
23797
|
+
- skill
|
|
23798
|
+
- mcp
|
|
23799
|
+
- plugin
|
|
23800
|
+
- workspace
|
|
23801
|
+
id:
|
|
23802
|
+
type: string
|
|
23803
|
+
required:
|
|
23804
|
+
- kind
|
|
23805
|
+
- id
|
|
23806
|
+
additionalProperties: false
|
|
23450
23807
|
origin:
|
|
23451
23808
|
type: string
|
|
23452
23809
|
const: clawhub
|
|
@@ -23505,6 +23862,22 @@ paths:
|
|
|
23505
23862
|
- available
|
|
23506
23863
|
category:
|
|
23507
23864
|
type: string
|
|
23865
|
+
owner:
|
|
23866
|
+
type: object
|
|
23867
|
+
properties:
|
|
23868
|
+
kind:
|
|
23869
|
+
type: string
|
|
23870
|
+
enum:
|
|
23871
|
+
- skill
|
|
23872
|
+
- mcp
|
|
23873
|
+
- plugin
|
|
23874
|
+
- workspace
|
|
23875
|
+
id:
|
|
23876
|
+
type: string
|
|
23877
|
+
required:
|
|
23878
|
+
- kind
|
|
23879
|
+
- id
|
|
23880
|
+
additionalProperties: false
|
|
23508
23881
|
origin:
|
|
23509
23882
|
type: string
|
|
23510
23883
|
const: skillssh
|
|
@@ -23578,6 +23951,22 @@ paths:
|
|
|
23578
23951
|
- available
|
|
23579
23952
|
category:
|
|
23580
23953
|
type: string
|
|
23954
|
+
owner:
|
|
23955
|
+
type: object
|
|
23956
|
+
properties:
|
|
23957
|
+
kind:
|
|
23958
|
+
type: string
|
|
23959
|
+
enum:
|
|
23960
|
+
- skill
|
|
23961
|
+
- mcp
|
|
23962
|
+
- plugin
|
|
23963
|
+
- workspace
|
|
23964
|
+
id:
|
|
23965
|
+
type: string
|
|
23966
|
+
required:
|
|
23967
|
+
- kind
|
|
23968
|
+
- id
|
|
23969
|
+
additionalProperties: false
|
|
23581
23970
|
origin:
|
|
23582
23971
|
type: string
|
|
23583
23972
|
const: custom
|
|
@@ -24663,13 +25052,74 @@ paths:
|
|
|
24663
25052
|
/v1/tools:
|
|
24664
25053
|
get:
|
|
24665
25054
|
operationId: tools_get
|
|
24666
|
-
summary: List tools
|
|
24667
|
-
description:
|
|
25055
|
+
summary: List registered tools with metadata and schemas
|
|
25056
|
+
description:
|
|
25057
|
+
"Return registered tools. Without `conversationId`, returns every tool in the global registry; `tools`
|
|
25058
|
+
carries per-tool metadata (description, author-asserted risk level, category, and contributing source: core,
|
|
25059
|
+
skill, plugin, or MCP server) and `names`/`schemas` additionally cover skill tools whose manifests are present
|
|
25060
|
+
but not yet loaded, for the permission-simulator catalog. With `conversationId`, scopes the result to the tools
|
|
25061
|
+
available to that conversation as of its most recent turn (including skill/MCP tools registered over its
|
|
25062
|
+
lifecycle); 404 if no such conversation is active."
|
|
24668
25063
|
tags:
|
|
24669
25064
|
- tools
|
|
24670
25065
|
responses:
|
|
24671
25066
|
"200":
|
|
24672
25067
|
description: Successful response
|
|
25068
|
+
content:
|
|
25069
|
+
application/json:
|
|
25070
|
+
schema:
|
|
25071
|
+
type: object
|
|
25072
|
+
properties:
|
|
25073
|
+
names:
|
|
25074
|
+
type: array
|
|
25075
|
+
items:
|
|
25076
|
+
type: string
|
|
25077
|
+
schemas:
|
|
25078
|
+
type: object
|
|
25079
|
+
propertyNames:
|
|
25080
|
+
type: string
|
|
25081
|
+
additionalProperties:
|
|
25082
|
+
type: object
|
|
25083
|
+
propertyNames:
|
|
25084
|
+
type: string
|
|
25085
|
+
additionalProperties: {}
|
|
25086
|
+
tools:
|
|
25087
|
+
type: array
|
|
25088
|
+
items:
|
|
25089
|
+
type: object
|
|
25090
|
+
properties:
|
|
25091
|
+
name:
|
|
25092
|
+
type: string
|
|
25093
|
+
description:
|
|
25094
|
+
type: string
|
|
25095
|
+
riskLevel:
|
|
25096
|
+
type: string
|
|
25097
|
+
category:
|
|
25098
|
+
type: string
|
|
25099
|
+
source:
|
|
25100
|
+
type: string
|
|
25101
|
+
description:
|
|
25102
|
+
'Tool origin: "core" for built-ins, otherwise "<kind>:<id>" (e.g. "plugin:echo", "skill:my-skill",
|
|
25103
|
+
"mcp:server").'
|
|
25104
|
+
required:
|
|
25105
|
+
- name
|
|
25106
|
+
- description
|
|
25107
|
+
- riskLevel
|
|
25108
|
+
- category
|
|
25109
|
+
- source
|
|
25110
|
+
additionalProperties: false
|
|
25111
|
+
required:
|
|
25112
|
+
- names
|
|
25113
|
+
- schemas
|
|
25114
|
+
- tools
|
|
25115
|
+
additionalProperties: false
|
|
25116
|
+
parameters:
|
|
25117
|
+
- name: conversationId
|
|
25118
|
+
in: query
|
|
25119
|
+
required: false
|
|
25120
|
+
schema:
|
|
25121
|
+
type: string
|
|
25122
|
+
description: When set, scope the tool inventory to this conversation's most recent turn instead of the global registry.
|
|
24673
25123
|
/v1/tools/simulate-permission:
|
|
24674
25124
|
post:
|
|
24675
25125
|
operationId: tools_simulatepermission_post
|