dodo-mcp 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +425 -0
- package/dist/auth/adapter.js +43 -0
- package/dist/auth/adapter.js.map +1 -0
- package/dist/auth/clientDeletion.js +45 -0
- package/dist/auth/clientDeletion.js.map +1 -0
- package/dist/auth/clients.js +55 -0
- package/dist/auth/clients.js.map +1 -0
- package/dist/auth/constants.js +10 -0
- package/dist/auth/constants.js.map +1 -0
- package/dist/auth/interactions.js +184 -0
- package/dist/auth/interactions.js.map +1 -0
- package/dist/auth/keys.js +56 -0
- package/dist/auth/keys.js.map +1 -0
- package/dist/auth/provider.js +131 -0
- package/dist/auth/provider.js.map +1 -0
- package/dist/auth/verifier.js +74 -0
- package/dist/auth/verifier.js.map +1 -0
- package/dist/cli/kill.js +124 -0
- package/dist/cli/kill.js.map +1 -0
- package/dist/cli/main.js +1393 -0
- package/dist/cli/main.js.map +1 -0
- package/dist/cli/menu.js +127 -0
- package/dist/cli/menu.js.map +1 -0
- package/dist/cli/terminal.js +30 -0
- package/dist/cli/terminal.js.map +1 -0
- package/dist/config/globalConfig.js +144 -0
- package/dist/config/globalConfig.js.map +1 -0
- package/dist/config/limits.js +42 -0
- package/dist/config/limits.js.map +1 -0
- package/dist/config/paths.js +94 -0
- package/dist/config/paths.js.map +1 -0
- package/dist/config/projectConfig.js +63 -0
- package/dist/config/projectConfig.js.map +1 -0
- package/dist/config/stateImport.js +306 -0
- package/dist/config/stateImport.js.map +1 -0
- package/dist/config/tunnelConfig.js +23 -0
- package/dist/config/tunnelConfig.js.map +1 -0
- package/dist/errors.js +82 -0
- package/dist/errors.js.map +1 -0
- package/dist/evaluation/contracts.js +86 -0
- package/dist/evaluation/contracts.js.map +1 -0
- package/dist/evaluation/dodoBench.js +69 -0
- package/dist/evaluation/dodoBench.js.map +1 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/ipc/authentication.js +117 -0
- package/dist/ipc/authentication.js.map +1 -0
- package/dist/ipc/client.js +86 -0
- package/dist/ipc/client.js.map +1 -0
- package/dist/ipc/installationClient.js +83 -0
- package/dist/ipc/installationClient.js.map +1 -0
- package/dist/ipc/ownerControl.js +46 -0
- package/dist/ipc/ownerControl.js.map +1 -0
- package/dist/ipc/protocol.js +2 -0
- package/dist/ipc/protocol.js.map +1 -0
- package/dist/ipc/server.js +108 -0
- package/dist/ipc/server.js.map +1 -0
- package/dist/platform/execResolve.js +64 -0
- package/dist/platform/execResolve.js.map +1 -0
- package/dist/platform/fileIdentity.js +26 -0
- package/dist/platform/fileIdentity.js.map +1 -0
- package/dist/platform/fsRetry.js +22 -0
- package/dist/platform/fsRetry.js.map +1 -0
- package/dist/platform/pathPolicy.js +29 -0
- package/dist/platform/pathPolicy.js.map +1 -0
- package/dist/platform/privateFs.js +116 -0
- package/dist/platform/privateFs.js.map +1 -0
- package/dist/platform/processTree.js +31 -0
- package/dist/platform/processTree.js.map +1 -0
- package/dist/platform/shell.js +74 -0
- package/dist/platform/shell.js.map +1 -0
- package/dist/platform/speech.js +94 -0
- package/dist/platform/speech.js.map +1 -0
- package/dist/platform/system.js +28 -0
- package/dist/platform/system.js.map +1 -0
- package/dist/platform/windowsSandbox.js +129 -0
- package/dist/platform/windowsSandbox.js.map +1 -0
- package/dist/projects/federation.js +312 -0
- package/dist/projects/federation.js.map +1 -0
- package/dist/projects/registry.js +291 -0
- package/dist/projects/registry.js.map +1 -0
- package/dist/security/accessMode.js +19 -0
- package/dist/security/accessMode.js.map +1 -0
- package/dist/security/approvals.js +56 -0
- package/dist/security/approvals.js.map +1 -0
- package/dist/security/env.js +57 -0
- package/dist/security/env.js.map +1 -0
- package/dist/security/mutationQueue.js +78 -0
- package/dist/security/mutationQueue.js.map +1 -0
- package/dist/security/policy.js +22 -0
- package/dist/security/policy.js.map +1 -0
- package/dist/security/projectAuthority.js +22 -0
- package/dist/security/projectAuthority.js.map +1 -0
- package/dist/security/redact.js +30 -0
- package/dist/security/redact.js.map +1 -0
- package/dist/server/aiAdmin.js +201 -0
- package/dist/server/aiAdmin.js.map +1 -0
- package/dist/server/appServer.js +461 -0
- package/dist/server/appServer.js.map +1 -0
- package/dist/server/bootstrap.js +185 -0
- package/dist/server/bootstrap.js.map +1 -0
- package/dist/server/configUi/app.css +347 -0
- package/dist/server/configUi/app.js +958 -0
- package/dist/server/configUi/index.html +379 -0
- package/dist/server/configUi/ui/alerts.js +92 -0
- package/dist/server/configUi/ui/dom.js +19 -0
- package/dist/server/configUi/ui/tooltips.js +115 -0
- package/dist/server/configUi/vendor/VERSION.txt +1 -0
- package/dist/server/configUi/vendor/sweetalert2.min.css +1 -0
- package/dist/server/configUi/vendor/sweetalert2.min.js +5 -0
- package/dist/server/configUi/workbench.css +62 -0
- package/dist/server/configUi/workbench.js +394 -0
- package/dist/server/installationRuntime.js +155 -0
- package/dist/server/installationRuntime.js.map +1 -0
- package/dist/server/instructions.js +17 -0
- package/dist/server/instructions.js.map +1 -0
- package/dist/server/ipcDispatch.js +225 -0
- package/dist/server/ipcDispatch.js.map +1 -0
- package/dist/server/localConfig.js +561 -0
- package/dist/server/localConfig.js.map +1 -0
- package/dist/server/optionalServices.js +30 -0
- package/dist/server/optionalServices.js.map +1 -0
- package/dist/server/projectLease.js +46 -0
- package/dist/server/projectLease.js.map +1 -0
- package/dist/server/stdioServer.js +75 -0
- package/dist/server/stdioServer.js.map +1 -0
- package/dist/server/version.js +13 -0
- package/dist/server/version.js.map +1 -0
- package/dist/server/workspaceHost.js +194 -0
- package/dist/server/workspaceHost.js.map +1 -0
- package/dist/services/agent/agentService.js +598 -0
- package/dist/services/agent/agentService.js.map +1 -0
- package/dist/services/agent/contracts.js +102 -0
- package/dist/services/agent/contracts.js.map +1 -0
- package/dist/services/ai/adapters.js +287 -0
- package/dist/services/ai/adapters.js.map +1 -0
- package/dist/services/ai/contracts.js +39 -0
- package/dist/services/ai/contracts.js.map +1 -0
- package/dist/services/ai/credentials.js +77 -0
- package/dist/services/ai/credentials.js.map +1 -0
- package/dist/services/ai/network.js +113 -0
- package/dist/services/ai/network.js.map +1 -0
- package/dist/services/ai/settings.js +178 -0
- package/dist/services/ai/settings.js.map +1 -0
- package/dist/services/ai/subagents.js +468 -0
- package/dist/services/ai/subagents.js.map +1 -0
- package/dist/services/assistance/analysis.js +352 -0
- package/dist/services/assistance/analysis.js.map +1 -0
- package/dist/services/assistance/contracts.js +54 -0
- package/dist/services/assistance/contracts.js.map +1 -0
- package/dist/services/assistance/verification.js +274 -0
- package/dist/services/assistance/verification.js.map +1 -0
- package/dist/services/brain/brainParser.js +97 -0
- package/dist/services/brain/brainParser.js.map +1 -0
- package/dist/services/brain/brainService.js +733 -0
- package/dist/services/brain/brainService.js.map +1 -0
- package/dist/services/brain/brainWorker.js +212 -0
- package/dist/services/brain/brainWorker.js.map +1 -0
- package/dist/services/brain/contracts.js +154 -0
- package/dist/services/brain/contracts.js.map +1 -0
- package/dist/services/brain/protocol.js +2 -0
- package/dist/services/brain/protocol.js.map +1 -0
- package/dist/services/changes/applier.js +544 -0
- package/dist/services/changes/applier.js.map +1 -0
- package/dist/services/changes/contentBudget.js +11 -0
- package/dist/services/changes/contentBudget.js.map +1 -0
- package/dist/services/changes/planner.js +284 -0
- package/dist/services/changes/planner.js.map +1 -0
- package/dist/services/changes/types.js +3 -0
- package/dist/services/changes/types.js.map +1 -0
- package/dist/services/context/contextEngine.js +746 -0
- package/dist/services/context/contextEngine.js.map +1 -0
- package/dist/services/context/contracts.js +88 -0
- package/dist/services/context/contracts.js.map +1 -0
- package/dist/services/desktop/desktopPolicy.js +76 -0
- package/dist/services/desktop/desktopPolicy.js.map +1 -0
- package/dist/services/desktop/desktopService.js +130 -0
- package/dist/services/desktop/desktopService.js.map +1 -0
- package/dist/services/desktop/nativeBackend.js +174 -0
- package/dist/services/desktop/nativeBackend.js.map +1 -0
- package/dist/services/desktop/protocol.js +32 -0
- package/dist/services/desktop/protocol.js.map +1 -0
- package/dist/services/files/readService.js +136 -0
- package/dist/services/files/readService.js.map +1 -0
- package/dist/services/git/gitService.js +369 -0
- package/dist/services/git/gitService.js.map +1 -0
- package/dist/services/intelligence/intelService.js +136 -0
- package/dist/services/intelligence/intelService.js.map +1 -0
- package/dist/services/intelligence/protocol.js +2 -0
- package/dist/services/intelligence/protocol.js.map +1 -0
- package/dist/services/intelligence/tsWorker.js +419 -0
- package/dist/services/intelligence/tsWorker.js.map +1 -0
- package/dist/services/jobs/commandInput.js +34 -0
- package/dist/services/jobs/commandInput.js.map +1 -0
- package/dist/services/jobs/jobManager.js +398 -0
- package/dist/services/jobs/jobManager.js.map +1 -0
- package/dist/services/jobs/sandbox.js +156 -0
- package/dist/services/jobs/sandbox.js.map +1 -0
- package/dist/services/jobs/sandboxWiring.js +37 -0
- package/dist/services/jobs/sandboxWiring.js.map +1 -0
- package/dist/services/jobs/spool.js +112 -0
- package/dist/services/jobs/spool.js.map +1 -0
- package/dist/services/jobs/windowsSandboxChild.js +24 -0
- package/dist/services/jobs/windowsSandboxChild.js.map +1 -0
- package/dist/services/jobs/windowsSandboxWorker.js +155 -0
- package/dist/services/jobs/windowsSandboxWorker.js.map +1 -0
- package/dist/services/lsp/documentUri.js +16 -0
- package/dist/services/lsp/documentUri.js.map +1 -0
- package/dist/services/lsp/jsonrpc.js +382 -0
- package/dist/services/lsp/jsonrpc.js.map +1 -0
- package/dist/services/lsp/lspService.js +1051 -0
- package/dist/services/lsp/lspService.js.map +1 -0
- package/dist/services/memory/contracts.js +94 -0
- package/dist/services/memory/contracts.js.map +1 -0
- package/dist/services/memory/memoryService.js +683 -0
- package/dist/services/memory/memoryService.js.map +1 -0
- package/dist/services/multimodal/browserService.js +407 -0
- package/dist/services/multimodal/browserService.js.map +1 -0
- package/dist/services/multimodal/byteRange.js +31 -0
- package/dist/services/multimodal/byteRange.js.map +1 -0
- package/dist/services/multimodal/contracts.js +59 -0
- package/dist/services/multimodal/contracts.js.map +1 -0
- package/dist/services/multimodal/gameService.js +95 -0
- package/dist/services/multimodal/gameService.js.map +1 -0
- package/dist/services/multimodal/images.js +107 -0
- package/dist/services/multimodal/images.js.map +1 -0
- package/dist/services/multimodal/mediaService.js +279 -0
- package/dist/services/multimodal/mediaService.js.map +1 -0
- package/dist/services/multimodal/mediaWorker.js +143 -0
- package/dist/services/multimodal/mediaWorker.js.map +1 -0
- package/dist/services/multimodal/multimodalService.js +51 -0
- package/dist/services/multimodal/multimodalService.js.map +1 -0
- package/dist/services/multimodal/network.js +69 -0
- package/dist/services/multimodal/network.js.map +1 -0
- package/dist/services/multimodal/operations.js +40 -0
- package/dist/services/multimodal/operations.js.map +1 -0
- package/dist/services/multimodal/storage.js +160 -0
- package/dist/services/multimodal/storage.js.map +1 -0
- package/dist/services/multimodal/workflowService.js +179 -0
- package/dist/services/multimodal/workflowService.js.map +1 -0
- package/dist/services/overview.js +284 -0
- package/dist/services/overview.js.map +1 -0
- package/dist/services/resources/casStore.js +304 -0
- package/dist/services/resources/casStore.js.map +1 -0
- package/dist/services/resources/contracts.js +75 -0
- package/dist/services/resources/contracts.js.map +1 -0
- package/dist/services/resources/mime.js +77 -0
- package/dist/services/resources/mime.js.map +1 -0
- package/dist/services/resources/providerRegistry.js +22 -0
- package/dist/services/resources/providerRegistry.js.map +1 -0
- package/dist/services/resources/providers.js +120 -0
- package/dist/services/resources/providers.js.map +1 -0
- package/dist/services/resources/resourceService.js +282 -0
- package/dist/services/resources/resourceService.js.map +1 -0
- package/dist/services/runtime/contracts.js +65 -0
- package/dist/services/runtime/contracts.js.map +1 -0
- package/dist/services/runtime/runtimeService.js +364 -0
- package/dist/services/runtime/runtimeService.js.map +1 -0
- package/dist/services/schedules/scheduleService.js +198 -0
- package/dist/services/schedules/scheduleService.js.map +1 -0
- package/dist/services/search/searchService.js +434 -0
- package/dist/services/search/searchService.js.map +1 -0
- package/dist/services/search/searchWorker.js +58 -0
- package/dist/services/search/searchWorker.js.map +1 -0
- package/dist/setup/componentProbes.js +259 -0
- package/dist/setup/componentProbes.js.map +1 -0
- package/dist/setup/download.js +139 -0
- package/dist/setup/download.js.map +1 -0
- package/dist/setup/managedTools.js +118 -0
- package/dist/setup/managedTools.js.map +1 -0
- package/dist/setup/sandboxProbe.js +172 -0
- package/dist/setup/sandboxProbe.js.map +1 -0
- package/dist/setup/setup.js +522 -0
- package/dist/setup/setup.js.map +1 -0
- package/dist/setup/windowsChromiumAcl.js +56 -0
- package/dist/setup/windowsChromiumAcl.js.map +1 -0
- package/dist/setup/windowsSandboxInstall.js +94 -0
- package/dist/setup/windowsSandboxInstall.js.map +1 -0
- package/dist/setup/windowsSpeechInstall.js +86 -0
- package/dist/setup/windowsSpeechInstall.js.map +1 -0
- package/dist/store/db.js +711 -0
- package/dist/store/db.js.map +1 -0
- package/dist/store/scopeEncoding.js +15 -0
- package/dist/store/scopeEncoding.js.map +1 -0
- package/dist/store/store.js +467 -0
- package/dist/store/store.js.map +1 -0
- package/dist/tools/agentRuntimeTools.js +216 -0
- package/dist/tools/agentRuntimeTools.js.map +1 -0
- package/dist/tools/agentTools.js +317 -0
- package/dist/tools/agentTools.js.map +1 -0
- package/dist/tools/assistanceTools.js +126 -0
- package/dist/tools/assistanceTools.js.map +1 -0
- package/dist/tools/brainTools.js +130 -0
- package/dist/tools/brainTools.js.map +1 -0
- package/dist/tools/catalog.js +30 -0
- package/dist/tools/catalog.js.map +1 -0
- package/dist/tools/changeTools.js +188 -0
- package/dist/tools/changeTools.js.map +1 -0
- package/dist/tools/context.js +243 -0
- package/dist/tools/context.js.map +1 -0
- package/dist/tools/contextTools.js +57 -0
- package/dist/tools/contextTools.js.map +1 -0
- package/dist/tools/coreCatalog.js +82 -0
- package/dist/tools/coreCatalog.js.map +1 -0
- package/dist/tools/desktopTools.js +41 -0
- package/dist/tools/desktopTools.js.map +1 -0
- package/dist/tools/directTools.js +273 -0
- package/dist/tools/directTools.js.map +1 -0
- package/dist/tools/envelope.js +71 -0
- package/dist/tools/envelope.js.map +1 -0
- package/dist/tools/extraTools.js +298 -0
- package/dist/tools/extraTools.js.map +1 -0
- package/dist/tools/gitTools.js +93 -0
- package/dist/tools/gitTools.js.map +1 -0
- package/dist/tools/jobTools.js +454 -0
- package/dist/tools/jobTools.js.map +1 -0
- package/dist/tools/memoryTools.js +102 -0
- package/dist/tools/memoryTools.js.map +1 -0
- package/dist/tools/metaTools.js +153 -0
- package/dist/tools/metaTools.js.map +1 -0
- package/dist/tools/multimodalTools.js +262 -0
- package/dist/tools/multimodalTools.js.map +1 -0
- package/dist/tools/projectTools.js +261 -0
- package/dist/tools/projectTools.js.map +1 -0
- package/dist/tools/resourceTools.js +81 -0
- package/dist/tools/resourceTools.js.map +1 -0
- package/dist/tools/runtimeTools.js +137 -0
- package/dist/tools/runtimeTools.js.map +1 -0
- package/dist/tools/scheduleTools.js +10 -0
- package/dist/tools/scheduleTools.js.map +1 -0
- package/dist/tools/semanticTools.js +141 -0
- package/dist/tools/semanticTools.js.map +1 -0
- package/dist/tools/subagentTools.js +32 -0
- package/dist/tools/subagentTools.js.map +1 -0
- package/dist/tools/surface.js +644 -0
- package/dist/tools/surface.js.map +1 -0
- package/dist/tunnel/control.js +113 -0
- package/dist/tunnel/control.js.map +1 -0
- package/dist/tunnel/credentials.js +392 -0
- package/dist/tunnel/credentials.js.map +1 -0
- package/dist/tunnel/log.js +84 -0
- package/dist/tunnel/log.js.map +1 -0
- package/dist/tunnel/runtime.js +55 -0
- package/dist/tunnel/runtime.js.map +1 -0
- package/dist/tunnel/supervisor.js +280 -0
- package/dist/tunnel/supervisor.js.map +1 -0
- package/dist/util/bytes.js +53 -0
- package/dist/util/bytes.js.map +1 -0
- package/dist/util/hash.js +53 -0
- package/dist/util/hash.js.map +1 -0
- package/dist/workspace/fs.js +305 -0
- package/dist/workspace/fs.js.map +1 -0
- package/dist/workspace/identity.js +17 -0
- package/dist/workspace/identity.js.map +1 -0
- package/dist/workspace/ignores.js +173 -0
- package/dist/workspace/ignores.js.map +1 -0
- package/dist/workspace/root.js +59 -0
- package/dist/workspace/root.js.map +1 -0
- package/docs/AGENT_RUNTIME.md +154 -0
- package/docs/AI_PROVIDERS.md +110 -0
- package/docs/ARCHITECTURE.md +331 -0
- package/docs/ASSISTANCE.md +31 -0
- package/docs/AUTH.md +59 -0
- package/docs/BRAIN.md +92 -0
- package/docs/COMPATIBILITY.md +92 -0
- package/docs/CONFIRMATION.md +13 -0
- package/docs/CONTEXT.md +87 -0
- package/docs/DESKTOP.md +35 -0
- package/docs/EVALUATION.md +86 -0
- package/docs/LARGE_INPUTS.md +21 -0
- package/docs/LSP.md +21 -0
- package/docs/MANUAL_ACCEPTANCE.md +283 -0
- package/docs/MEMORY.md +128 -0
- package/docs/MULTIMODAL.md +32 -0
- package/docs/PROJECTS.md +146 -0
- package/docs/RELEASE_1.0.0.md +111 -0
- package/docs/RELEASE_NOTES.md +92 -0
- package/docs/RESOURCES.md +83 -0
- package/docs/RUNTIME.md +125 -0
- package/docs/SCHEDULES.md +23 -0
- package/docs/SECURITY.md +250 -0
- package/docs/TEST_REPORT.md +312 -0
- package/docs/TUNNEL.md +86 -0
- package/docs/WEB_CLIENTS.md +43 -0
- package/docs/WINDOWS.md +79 -0
- package/docs/adr/001-one-process-one-workspace.md +22 -0
- package/docs/adr/002-external-tunnel.md +19 -0
- package/docs/adr/003-sdk-v2-legacy-stateless.md +20 -0
- package/docs/adr/004-embedded-oauth-provider.md +19 -0
- package/docs/adr/005-static-client-baseline.md +19 -0
- package/docs/adr/006-guarded-fs-explicit-exec.md +16 -0
- package/docs/adr/007-preview-hash-journal.md +18 -0
- package/docs/adr/008-ts-js-semantics-first.md +17 -0
- package/docs/adr/009-jobs-polling.md +18 -0
- package/docs/adr/010-sqlite-better-sqlite3.md +18 -0
- package/docs/adr/011-env-example-secure-default.md +19 -0
- package/docs/adr/012-workspace-scope-grant.md +24 -0
- package/docs/adr/013-loopback-proxy-trust.md +18 -0
- package/docs/adr/014-direct-coding-tier.md +48 -0
- package/docs/adr/015-coding-agent-parity.md +56 -0
- package/docs/adr/016-oidc-openid-consent.md +15 -0
- package/docs/adr/017-installation-identity-local-config.md +44 -0
- package/docs/adr/018-access-scope-encoding.md +11 -0
- package/docs/adr/019-runtime-workspace-switch.md +59 -0
- package/docs/adr/020-desktop-access.md +50 -0
- package/docs/adr/021-persistent-desktop-consent.md +39 -0
- package/docs/adr/022-owner-kill-preserves-login.md +30 -0
- package/docs/adr/023-large-coding-inputs.md +49 -0
- package/docs/adr/024-usage-rounds-and-schedules.md +72 -0
- package/docs/adr/025-owner-chat-whitelist.md +53 -0
- package/docs/adr/026-remove-conversation-confirmation.md +35 -0
- package/docs/adr/027-workspace-client-list.md +20 -0
- package/docs/adr/028-owner-client-deletion.md +25 -0
- package/docs/adr/029-compact-tool-surface.md +121 -0
- package/docs/adr/030-windows-native-candidate.md +71 -0
- package/docs/adr/031-owner-selected-tunnel-supervision.md +13 -0
- package/docs/adr/032-owner-project-registry.md +43 -0
- package/docs/adr/033-read-only-project-federation.md +61 -0
- package/docs/adr/034-universal-resource-cas.md +60 -0
- package/docs/adr/035-project-brain-incremental-index.md +51 -0
- package/docs/adr/036-context-engine-evidence.md +53 -0
- package/docs/adr/037-owner-reviewed-memory.md +46 -0
- package/docs/adr/038-runtime-intelligence.md +46 -0
- package/docs/adr/039-advanced-agent-runtime.md +57 -0
- package/docs/adr/040-dodobench-release-gate.md +43 -0
- package/docs/adr/041-local-macos-docker-linux-gates.md +32 -0
- package/docs/adr/042-project-directory-generation-identity.md +36 -0
- package/docs/adr/043-trusted-self-hosted-platform-gates.md +38 -0
- package/docs/adr/044-global-launcher-and-cli-menu.md +43 -0
- package/docs/adr/045-ai-providers-multiproject.md +56 -0
- package/docs/adr/046-personal-access-mode.md +32 -0
- package/docs/adr/README.md +64 -0
- package/examples/.dodo.json.example +20 -0
- package/examples/cloudflared.yml +23 -0
- package/examples/reverse-proxy-fixture.mjs +37 -0
- package/native/desktop-linux.py +387 -0
- package/native/desktop-windows.cs +180 -0
- package/native/desktop.swift +212 -0
- package/package.json +145 -0
- package/schemas/global-config.schema.json +497 -0
- package/schemas/project-config.schema.json +75 -0
- package/schemas/tools.compact.json +3236 -0
- package/schemas/tools.hybrid.json +8194 -0
- package/schemas/tools.json +34518 -0
- package/scripts/guard-publish.mjs +12 -0
- package/scripts/setup-multimodal.mjs +70 -0
|
@@ -0,0 +1,3236 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$comment": "GENERATED from src/tools — do not edit by hand. Complete Compact capability contract; the default live surface filters optional operation enums according to optionalMcpFeatures.",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"toolCount": 19,
|
|
5
|
+
"defaultLiveToolCount": 19,
|
|
6
|
+
"fullToolCount": 125,
|
|
7
|
+
"defaultLiveFullToolCount": 121,
|
|
8
|
+
"optionalMcpFeatures": {
|
|
9
|
+
"subagents": {
|
|
10
|
+
"configKey": "exposeSubagentsToMcp",
|
|
11
|
+
"default": false,
|
|
12
|
+
"restartRequired": true,
|
|
13
|
+
"operations": [
|
|
14
|
+
"subagent_spawn",
|
|
15
|
+
"subagent_status",
|
|
16
|
+
"subagent_result",
|
|
17
|
+
"subagent_control"
|
|
18
|
+
]
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"stats": {
|
|
22
|
+
"compact": {
|
|
23
|
+
"toolCount": 19,
|
|
24
|
+
"schemaBytes": 52317
|
|
25
|
+
},
|
|
26
|
+
"hybrid": {
|
|
27
|
+
"toolCount": 49,
|
|
28
|
+
"schemaBytes": 124657
|
|
29
|
+
},
|
|
30
|
+
"full": {
|
|
31
|
+
"toolCount": 125,
|
|
32
|
+
"schemaBytes": 443030
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"tools": [
|
|
36
|
+
{
|
|
37
|
+
"name": "project_overview",
|
|
38
|
+
"title": "Project overview",
|
|
39
|
+
"description": "Bootstrap tool: returns the active workspace root, workspaceId + workspaceEpoch (required by every other tool), trust policy, capabilities, detected manifests/languages, runnable task recipes, a shallow file tree, and a scoped git summary. It also lists owner-registered projects this client may read under the current personal/managed access mode. Pass projectId for a read-only federated overview without switching the active workspace. Never executes project code. Call this first. This connection uses the COMPACT tool surface: capabilities are invoked through dodo_* gateway tools; call dodo_discover to find an operation and its exact schema.",
|
|
40
|
+
"requiredScope": "dodo:read",
|
|
41
|
+
"annotations": {
|
|
42
|
+
"readOnlyHint": true,
|
|
43
|
+
"destructiveHint": false,
|
|
44
|
+
"idempotentHint": true,
|
|
45
|
+
"openWorldHint": false
|
|
46
|
+
},
|
|
47
|
+
"inputSchema": {
|
|
48
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
49
|
+
"type": "object",
|
|
50
|
+
"properties": {
|
|
51
|
+
"targetProjectId": {
|
|
52
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
53
|
+
"type": "string",
|
|
54
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
55
|
+
},
|
|
56
|
+
"projectId": {
|
|
57
|
+
"description": "Optional owner-registered project ID for read-only federation; omit to use the active workspace",
|
|
58
|
+
"type": "string",
|
|
59
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"additionalProperties": false
|
|
63
|
+
},
|
|
64
|
+
"outputSchema": {
|
|
65
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
66
|
+
"type": "object",
|
|
67
|
+
"properties": {
|
|
68
|
+
"ok": {
|
|
69
|
+
"type": "boolean"
|
|
70
|
+
},
|
|
71
|
+
"workspaceId": {
|
|
72
|
+
"type": [
|
|
73
|
+
"string",
|
|
74
|
+
"null"
|
|
75
|
+
]
|
|
76
|
+
},
|
|
77
|
+
"workspaceEpoch": {
|
|
78
|
+
"type": [
|
|
79
|
+
"string",
|
|
80
|
+
"null"
|
|
81
|
+
]
|
|
82
|
+
},
|
|
83
|
+
"data": {
|
|
84
|
+
"anyOf": [
|
|
85
|
+
{
|
|
86
|
+
"type": "object",
|
|
87
|
+
"properties": {},
|
|
88
|
+
"additionalProperties": {}
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"type": "null"
|
|
92
|
+
}
|
|
93
|
+
]
|
|
94
|
+
},
|
|
95
|
+
"error": {
|
|
96
|
+
"anyOf": [
|
|
97
|
+
{
|
|
98
|
+
"type": "object",
|
|
99
|
+
"properties": {
|
|
100
|
+
"code": {
|
|
101
|
+
"type": "string"
|
|
102
|
+
},
|
|
103
|
+
"message": {
|
|
104
|
+
"type": "string"
|
|
105
|
+
},
|
|
106
|
+
"retryable": {
|
|
107
|
+
"type": "boolean"
|
|
108
|
+
},
|
|
109
|
+
"recovery": {
|
|
110
|
+
"type": "string"
|
|
111
|
+
},
|
|
112
|
+
"detail": {
|
|
113
|
+
"type": "object",
|
|
114
|
+
"propertyNames": {
|
|
115
|
+
"type": "string"
|
|
116
|
+
},
|
|
117
|
+
"additionalProperties": {}
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"required": [
|
|
121
|
+
"code",
|
|
122
|
+
"message",
|
|
123
|
+
"retryable"
|
|
124
|
+
],
|
|
125
|
+
"additionalProperties": false
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"type": "null"
|
|
129
|
+
}
|
|
130
|
+
]
|
|
131
|
+
},
|
|
132
|
+
"warnings": {
|
|
133
|
+
"type": "array",
|
|
134
|
+
"items": {
|
|
135
|
+
"type": "string"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"truncated": {
|
|
139
|
+
"type": "boolean"
|
|
140
|
+
},
|
|
141
|
+
"nextCursor": {
|
|
142
|
+
"type": [
|
|
143
|
+
"string",
|
|
144
|
+
"null"
|
|
145
|
+
]
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
"required": [
|
|
149
|
+
"ok",
|
|
150
|
+
"workspaceId",
|
|
151
|
+
"workspaceEpoch",
|
|
152
|
+
"data",
|
|
153
|
+
"error",
|
|
154
|
+
"warnings",
|
|
155
|
+
"truncated",
|
|
156
|
+
"nextCursor"
|
|
157
|
+
],
|
|
158
|
+
"additionalProperties": false
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"name": "dodo_discover",
|
|
163
|
+
"title": "Discover operations behind the compact gateways",
|
|
164
|
+
"description": "Find which gateway operation covers a capability. With query/domain it returns matching operations (name, gateway, scope, short description — no schemas). With operation=\"<name>\" it returns that operation's full input JSON Schema, deterministic schemaHash, required scope, action class and usage notes. Discovery never grants permissions and never reveals tokens, grants or owner state.",
|
|
165
|
+
"requiredScope": "dodo:read",
|
|
166
|
+
"annotations": {
|
|
167
|
+
"readOnlyHint": true,
|
|
168
|
+
"destructiveHint": false,
|
|
169
|
+
"idempotentHint": true,
|
|
170
|
+
"openWorldHint": false
|
|
171
|
+
},
|
|
172
|
+
"inputSchema": {
|
|
173
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
174
|
+
"type": "object",
|
|
175
|
+
"properties": {
|
|
176
|
+
"targetProjectId": {
|
|
177
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
178
|
+
"type": "string",
|
|
179
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
180
|
+
},
|
|
181
|
+
"workspaceId": {
|
|
182
|
+
"type": "string",
|
|
183
|
+
"minLength": 1,
|
|
184
|
+
"maxLength": 128,
|
|
185
|
+
"description": "Workspace id from project_overview"
|
|
186
|
+
},
|
|
187
|
+
"workspaceEpoch": {
|
|
188
|
+
"type": "string",
|
|
189
|
+
"minLength": 1,
|
|
190
|
+
"maxLength": 128,
|
|
191
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
192
|
+
},
|
|
193
|
+
"query": {
|
|
194
|
+
"description": "Free-text capability search, e.g. \"edit a TypeScript file\"",
|
|
195
|
+
"type": "string",
|
|
196
|
+
"maxLength": 200
|
|
197
|
+
},
|
|
198
|
+
"domain": {
|
|
199
|
+
"description": "Restrict matches to one capability domain",
|
|
200
|
+
"type": "string",
|
|
201
|
+
"enum": [
|
|
202
|
+
"code",
|
|
203
|
+
"exec",
|
|
204
|
+
"git",
|
|
205
|
+
"desktop",
|
|
206
|
+
"media",
|
|
207
|
+
"browser",
|
|
208
|
+
"game",
|
|
209
|
+
"workflow",
|
|
210
|
+
"schedule",
|
|
211
|
+
"web"
|
|
212
|
+
]
|
|
213
|
+
},
|
|
214
|
+
"operation": {
|
|
215
|
+
"description": "Exact operation name for full schema detail",
|
|
216
|
+
"type": "string",
|
|
217
|
+
"maxLength": 64
|
|
218
|
+
},
|
|
219
|
+
"limit": {
|
|
220
|
+
"default": 8,
|
|
221
|
+
"type": "integer",
|
|
222
|
+
"minimum": 1,
|
|
223
|
+
"maximum": 25
|
|
224
|
+
},
|
|
225
|
+
"cursor": {
|
|
226
|
+
"description": "nextCursor from a previous dodo_discover result",
|
|
227
|
+
"type": "string",
|
|
228
|
+
"maxLength": 32
|
|
229
|
+
}
|
|
230
|
+
},
|
|
231
|
+
"required": [
|
|
232
|
+
"workspaceId",
|
|
233
|
+
"workspaceEpoch",
|
|
234
|
+
"limit"
|
|
235
|
+
],
|
|
236
|
+
"additionalProperties": false
|
|
237
|
+
},
|
|
238
|
+
"outputSchema": {
|
|
239
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
240
|
+
"type": "object",
|
|
241
|
+
"properties": {
|
|
242
|
+
"ok": {
|
|
243
|
+
"type": "boolean"
|
|
244
|
+
},
|
|
245
|
+
"workspaceId": {
|
|
246
|
+
"type": [
|
|
247
|
+
"string",
|
|
248
|
+
"null"
|
|
249
|
+
]
|
|
250
|
+
},
|
|
251
|
+
"workspaceEpoch": {
|
|
252
|
+
"type": [
|
|
253
|
+
"string",
|
|
254
|
+
"null"
|
|
255
|
+
]
|
|
256
|
+
},
|
|
257
|
+
"data": {
|
|
258
|
+
"anyOf": [
|
|
259
|
+
{
|
|
260
|
+
"type": "object",
|
|
261
|
+
"properties": {},
|
|
262
|
+
"additionalProperties": {}
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"type": "null"
|
|
266
|
+
}
|
|
267
|
+
]
|
|
268
|
+
},
|
|
269
|
+
"error": {
|
|
270
|
+
"anyOf": [
|
|
271
|
+
{
|
|
272
|
+
"type": "object",
|
|
273
|
+
"properties": {
|
|
274
|
+
"code": {
|
|
275
|
+
"type": "string"
|
|
276
|
+
},
|
|
277
|
+
"message": {
|
|
278
|
+
"type": "string"
|
|
279
|
+
},
|
|
280
|
+
"retryable": {
|
|
281
|
+
"type": "boolean"
|
|
282
|
+
},
|
|
283
|
+
"recovery": {
|
|
284
|
+
"type": "string"
|
|
285
|
+
},
|
|
286
|
+
"detail": {
|
|
287
|
+
"type": "object",
|
|
288
|
+
"propertyNames": {
|
|
289
|
+
"type": "string"
|
|
290
|
+
},
|
|
291
|
+
"additionalProperties": {}
|
|
292
|
+
}
|
|
293
|
+
},
|
|
294
|
+
"required": [
|
|
295
|
+
"code",
|
|
296
|
+
"message",
|
|
297
|
+
"retryable"
|
|
298
|
+
],
|
|
299
|
+
"additionalProperties": false
|
|
300
|
+
},
|
|
301
|
+
{
|
|
302
|
+
"type": "null"
|
|
303
|
+
}
|
|
304
|
+
]
|
|
305
|
+
},
|
|
306
|
+
"warnings": {
|
|
307
|
+
"type": "array",
|
|
308
|
+
"items": {
|
|
309
|
+
"type": "string"
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
"truncated": {
|
|
313
|
+
"type": "boolean"
|
|
314
|
+
},
|
|
315
|
+
"nextCursor": {
|
|
316
|
+
"type": [
|
|
317
|
+
"string",
|
|
318
|
+
"null"
|
|
319
|
+
]
|
|
320
|
+
}
|
|
321
|
+
},
|
|
322
|
+
"required": [
|
|
323
|
+
"ok",
|
|
324
|
+
"workspaceId",
|
|
325
|
+
"workspaceEpoch",
|
|
326
|
+
"data",
|
|
327
|
+
"error",
|
|
328
|
+
"warnings",
|
|
329
|
+
"truncated",
|
|
330
|
+
"nextCursor"
|
|
331
|
+
],
|
|
332
|
+
"additionalProperties": false
|
|
333
|
+
}
|
|
334
|
+
},
|
|
335
|
+
{
|
|
336
|
+
"name": "dodo_read",
|
|
337
|
+
"title": "Read workspace state",
|
|
338
|
+
"description": "Gateway: read-only workspace access: files, search, symbols, jobs, history and agent notes. Set operation to one of: list_files, read_files, read_image, read_instructions, search_code, glob_files, symbols, references, diagnostics, change_history, approval_status, environment_info, todo_read, handoff_read, job_status, job_output, job_wait, list_jobs. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
339
|
+
"requiredScope": "dodo:read",
|
|
340
|
+
"annotations": {
|
|
341
|
+
"readOnlyHint": true,
|
|
342
|
+
"destructiveHint": false,
|
|
343
|
+
"idempotentHint": false,
|
|
344
|
+
"openWorldHint": false
|
|
345
|
+
},
|
|
346
|
+
"domain": "code",
|
|
347
|
+
"operations": [
|
|
348
|
+
"list_files",
|
|
349
|
+
"read_files",
|
|
350
|
+
"read_image",
|
|
351
|
+
"read_instructions",
|
|
352
|
+
"search_code",
|
|
353
|
+
"glob_files",
|
|
354
|
+
"symbols",
|
|
355
|
+
"references",
|
|
356
|
+
"diagnostics",
|
|
357
|
+
"change_history",
|
|
358
|
+
"approval_status",
|
|
359
|
+
"environment_info",
|
|
360
|
+
"todo_read",
|
|
361
|
+
"handoff_read",
|
|
362
|
+
"job_status",
|
|
363
|
+
"job_output",
|
|
364
|
+
"job_wait",
|
|
365
|
+
"list_jobs"
|
|
366
|
+
],
|
|
367
|
+
"inputSchema": {
|
|
368
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
369
|
+
"type": "object",
|
|
370
|
+
"properties": {
|
|
371
|
+
"targetProjectId": {
|
|
372
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
373
|
+
"type": "string",
|
|
374
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
375
|
+
},
|
|
376
|
+
"workspaceId": {
|
|
377
|
+
"type": "string",
|
|
378
|
+
"minLength": 1,
|
|
379
|
+
"maxLength": 128,
|
|
380
|
+
"description": "Workspace id from project_overview"
|
|
381
|
+
},
|
|
382
|
+
"workspaceEpoch": {
|
|
383
|
+
"type": "string",
|
|
384
|
+
"minLength": 1,
|
|
385
|
+
"maxLength": 128,
|
|
386
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
387
|
+
},
|
|
388
|
+
"operation": {
|
|
389
|
+
"type": "string",
|
|
390
|
+
"enum": [
|
|
391
|
+
"list_files",
|
|
392
|
+
"read_files",
|
|
393
|
+
"read_image",
|
|
394
|
+
"read_instructions",
|
|
395
|
+
"search_code",
|
|
396
|
+
"glob_files",
|
|
397
|
+
"symbols",
|
|
398
|
+
"references",
|
|
399
|
+
"diagnostics",
|
|
400
|
+
"change_history",
|
|
401
|
+
"approval_status",
|
|
402
|
+
"environment_info",
|
|
403
|
+
"todo_read",
|
|
404
|
+
"handoff_read",
|
|
405
|
+
"job_status",
|
|
406
|
+
"job_output",
|
|
407
|
+
"job_wait",
|
|
408
|
+
"list_jobs"
|
|
409
|
+
],
|
|
410
|
+
"description": "Target operation to invoke"
|
|
411
|
+
},
|
|
412
|
+
"args": {
|
|
413
|
+
"default": {},
|
|
414
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
415
|
+
"type": "object",
|
|
416
|
+
"propertyNames": {
|
|
417
|
+
"type": "string"
|
|
418
|
+
},
|
|
419
|
+
"additionalProperties": {}
|
|
420
|
+
}
|
|
421
|
+
},
|
|
422
|
+
"required": [
|
|
423
|
+
"workspaceId",
|
|
424
|
+
"workspaceEpoch",
|
|
425
|
+
"operation",
|
|
426
|
+
"args"
|
|
427
|
+
],
|
|
428
|
+
"additionalProperties": false
|
|
429
|
+
},
|
|
430
|
+
"outputSchema": {
|
|
431
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
432
|
+
"type": "object",
|
|
433
|
+
"properties": {
|
|
434
|
+
"ok": {
|
|
435
|
+
"type": "boolean"
|
|
436
|
+
},
|
|
437
|
+
"workspaceId": {
|
|
438
|
+
"type": [
|
|
439
|
+
"string",
|
|
440
|
+
"null"
|
|
441
|
+
]
|
|
442
|
+
},
|
|
443
|
+
"workspaceEpoch": {
|
|
444
|
+
"type": [
|
|
445
|
+
"string",
|
|
446
|
+
"null"
|
|
447
|
+
]
|
|
448
|
+
},
|
|
449
|
+
"data": {
|
|
450
|
+
"anyOf": [
|
|
451
|
+
{
|
|
452
|
+
"type": "object",
|
|
453
|
+
"properties": {},
|
|
454
|
+
"additionalProperties": {}
|
|
455
|
+
},
|
|
456
|
+
{
|
|
457
|
+
"type": "null"
|
|
458
|
+
}
|
|
459
|
+
]
|
|
460
|
+
},
|
|
461
|
+
"error": {
|
|
462
|
+
"anyOf": [
|
|
463
|
+
{
|
|
464
|
+
"type": "object",
|
|
465
|
+
"properties": {
|
|
466
|
+
"code": {
|
|
467
|
+
"type": "string"
|
|
468
|
+
},
|
|
469
|
+
"message": {
|
|
470
|
+
"type": "string"
|
|
471
|
+
},
|
|
472
|
+
"retryable": {
|
|
473
|
+
"type": "boolean"
|
|
474
|
+
},
|
|
475
|
+
"recovery": {
|
|
476
|
+
"type": "string"
|
|
477
|
+
},
|
|
478
|
+
"detail": {
|
|
479
|
+
"type": "object",
|
|
480
|
+
"propertyNames": {
|
|
481
|
+
"type": "string"
|
|
482
|
+
},
|
|
483
|
+
"additionalProperties": {}
|
|
484
|
+
}
|
|
485
|
+
},
|
|
486
|
+
"required": [
|
|
487
|
+
"code",
|
|
488
|
+
"message",
|
|
489
|
+
"retryable"
|
|
490
|
+
],
|
|
491
|
+
"additionalProperties": false
|
|
492
|
+
},
|
|
493
|
+
{
|
|
494
|
+
"type": "null"
|
|
495
|
+
}
|
|
496
|
+
]
|
|
497
|
+
},
|
|
498
|
+
"warnings": {
|
|
499
|
+
"type": "array",
|
|
500
|
+
"items": {
|
|
501
|
+
"type": "string"
|
|
502
|
+
}
|
|
503
|
+
},
|
|
504
|
+
"truncated": {
|
|
505
|
+
"type": "boolean"
|
|
506
|
+
},
|
|
507
|
+
"nextCursor": {
|
|
508
|
+
"type": [
|
|
509
|
+
"string",
|
|
510
|
+
"null"
|
|
511
|
+
]
|
|
512
|
+
}
|
|
513
|
+
},
|
|
514
|
+
"required": [
|
|
515
|
+
"ok",
|
|
516
|
+
"workspaceId",
|
|
517
|
+
"workspaceEpoch",
|
|
518
|
+
"data",
|
|
519
|
+
"error",
|
|
520
|
+
"warnings",
|
|
521
|
+
"truncated",
|
|
522
|
+
"nextCursor"
|
|
523
|
+
],
|
|
524
|
+
"additionalProperties": false
|
|
525
|
+
}
|
|
526
|
+
},
|
|
527
|
+
{
|
|
528
|
+
"name": "dodo_write",
|
|
529
|
+
"title": "Change workspace files",
|
|
530
|
+
"description": "Gateway: hash-verified, journaled file changes: write/edit/patch, preview→apply→rollback, todos and handoff. Set operation to one of: write_file, edit_file, apply_patch, replace_in_files, delete_path, move_path, make_directory, preview_changes, apply_changes, rollback_changes, preview_rename, todo_write, handoff_write, agent_write, agent_snapshot_rollback. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
531
|
+
"requiredScope": "dodo:write",
|
|
532
|
+
"annotations": {
|
|
533
|
+
"readOnlyHint": false,
|
|
534
|
+
"destructiveHint": true,
|
|
535
|
+
"idempotentHint": false,
|
|
536
|
+
"openWorldHint": true
|
|
537
|
+
},
|
|
538
|
+
"domain": "code",
|
|
539
|
+
"operations": [
|
|
540
|
+
"write_file",
|
|
541
|
+
"edit_file",
|
|
542
|
+
"apply_patch",
|
|
543
|
+
"replace_in_files",
|
|
544
|
+
"delete_path",
|
|
545
|
+
"move_path",
|
|
546
|
+
"make_directory",
|
|
547
|
+
"preview_changes",
|
|
548
|
+
"apply_changes",
|
|
549
|
+
"rollback_changes",
|
|
550
|
+
"preview_rename",
|
|
551
|
+
"todo_write",
|
|
552
|
+
"handoff_write",
|
|
553
|
+
"agent_write",
|
|
554
|
+
"agent_snapshot_rollback"
|
|
555
|
+
],
|
|
556
|
+
"inputSchema": {
|
|
557
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
558
|
+
"type": "object",
|
|
559
|
+
"properties": {
|
|
560
|
+
"targetProjectId": {
|
|
561
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
562
|
+
"type": "string",
|
|
563
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
564
|
+
},
|
|
565
|
+
"workspaceId": {
|
|
566
|
+
"type": "string",
|
|
567
|
+
"minLength": 1,
|
|
568
|
+
"maxLength": 128,
|
|
569
|
+
"description": "Workspace id from project_overview"
|
|
570
|
+
},
|
|
571
|
+
"workspaceEpoch": {
|
|
572
|
+
"type": "string",
|
|
573
|
+
"minLength": 1,
|
|
574
|
+
"maxLength": 128,
|
|
575
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
576
|
+
},
|
|
577
|
+
"operation": {
|
|
578
|
+
"type": "string",
|
|
579
|
+
"enum": [
|
|
580
|
+
"write_file",
|
|
581
|
+
"edit_file",
|
|
582
|
+
"apply_patch",
|
|
583
|
+
"replace_in_files",
|
|
584
|
+
"delete_path",
|
|
585
|
+
"move_path",
|
|
586
|
+
"make_directory",
|
|
587
|
+
"preview_changes",
|
|
588
|
+
"apply_changes",
|
|
589
|
+
"rollback_changes",
|
|
590
|
+
"preview_rename",
|
|
591
|
+
"todo_write",
|
|
592
|
+
"handoff_write",
|
|
593
|
+
"agent_write",
|
|
594
|
+
"agent_snapshot_rollback"
|
|
595
|
+
],
|
|
596
|
+
"description": "Target operation to invoke"
|
|
597
|
+
},
|
|
598
|
+
"args": {
|
|
599
|
+
"default": {},
|
|
600
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
601
|
+
"type": "object",
|
|
602
|
+
"propertyNames": {
|
|
603
|
+
"type": "string"
|
|
604
|
+
},
|
|
605
|
+
"additionalProperties": {}
|
|
606
|
+
}
|
|
607
|
+
},
|
|
608
|
+
"required": [
|
|
609
|
+
"workspaceId",
|
|
610
|
+
"workspaceEpoch",
|
|
611
|
+
"operation",
|
|
612
|
+
"args"
|
|
613
|
+
],
|
|
614
|
+
"additionalProperties": false
|
|
615
|
+
},
|
|
616
|
+
"outputSchema": {
|
|
617
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
618
|
+
"type": "object",
|
|
619
|
+
"properties": {
|
|
620
|
+
"ok": {
|
|
621
|
+
"type": "boolean"
|
|
622
|
+
},
|
|
623
|
+
"workspaceId": {
|
|
624
|
+
"type": [
|
|
625
|
+
"string",
|
|
626
|
+
"null"
|
|
627
|
+
]
|
|
628
|
+
},
|
|
629
|
+
"workspaceEpoch": {
|
|
630
|
+
"type": [
|
|
631
|
+
"string",
|
|
632
|
+
"null"
|
|
633
|
+
]
|
|
634
|
+
},
|
|
635
|
+
"data": {
|
|
636
|
+
"anyOf": [
|
|
637
|
+
{
|
|
638
|
+
"type": "object",
|
|
639
|
+
"properties": {},
|
|
640
|
+
"additionalProperties": {}
|
|
641
|
+
},
|
|
642
|
+
{
|
|
643
|
+
"type": "null"
|
|
644
|
+
}
|
|
645
|
+
]
|
|
646
|
+
},
|
|
647
|
+
"error": {
|
|
648
|
+
"anyOf": [
|
|
649
|
+
{
|
|
650
|
+
"type": "object",
|
|
651
|
+
"properties": {
|
|
652
|
+
"code": {
|
|
653
|
+
"type": "string"
|
|
654
|
+
},
|
|
655
|
+
"message": {
|
|
656
|
+
"type": "string"
|
|
657
|
+
},
|
|
658
|
+
"retryable": {
|
|
659
|
+
"type": "boolean"
|
|
660
|
+
},
|
|
661
|
+
"recovery": {
|
|
662
|
+
"type": "string"
|
|
663
|
+
},
|
|
664
|
+
"detail": {
|
|
665
|
+
"type": "object",
|
|
666
|
+
"propertyNames": {
|
|
667
|
+
"type": "string"
|
|
668
|
+
},
|
|
669
|
+
"additionalProperties": {}
|
|
670
|
+
}
|
|
671
|
+
},
|
|
672
|
+
"required": [
|
|
673
|
+
"code",
|
|
674
|
+
"message",
|
|
675
|
+
"retryable"
|
|
676
|
+
],
|
|
677
|
+
"additionalProperties": false
|
|
678
|
+
},
|
|
679
|
+
{
|
|
680
|
+
"type": "null"
|
|
681
|
+
}
|
|
682
|
+
]
|
|
683
|
+
},
|
|
684
|
+
"warnings": {
|
|
685
|
+
"type": "array",
|
|
686
|
+
"items": {
|
|
687
|
+
"type": "string"
|
|
688
|
+
}
|
|
689
|
+
},
|
|
690
|
+
"truncated": {
|
|
691
|
+
"type": "boolean"
|
|
692
|
+
},
|
|
693
|
+
"nextCursor": {
|
|
694
|
+
"type": [
|
|
695
|
+
"string",
|
|
696
|
+
"null"
|
|
697
|
+
]
|
|
698
|
+
}
|
|
699
|
+
},
|
|
700
|
+
"required": [
|
|
701
|
+
"ok",
|
|
702
|
+
"workspaceId",
|
|
703
|
+
"workspaceEpoch",
|
|
704
|
+
"data",
|
|
705
|
+
"error",
|
|
706
|
+
"warnings",
|
|
707
|
+
"truncated",
|
|
708
|
+
"nextCursor"
|
|
709
|
+
],
|
|
710
|
+
"additionalProperties": false
|
|
711
|
+
}
|
|
712
|
+
},
|
|
713
|
+
{
|
|
714
|
+
"name": "dodo_exec",
|
|
715
|
+
"title": "Run commands and control jobs",
|
|
716
|
+
"description": "Gateway: shell/argv commands, task recipes, and stdin/cancel for owned background jobs. Set operation to one of: run_command, run_commands, run_task, exec_command, job_input, job_cancel, runtime_task_start, runtime_task_cancel, agent_exec. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
717
|
+
"requiredScope": "dodo:exec",
|
|
718
|
+
"annotations": {
|
|
719
|
+
"readOnlyHint": false,
|
|
720
|
+
"destructiveHint": true,
|
|
721
|
+
"idempotentHint": false,
|
|
722
|
+
"openWorldHint": true
|
|
723
|
+
},
|
|
724
|
+
"domain": "exec",
|
|
725
|
+
"operations": [
|
|
726
|
+
"run_command",
|
|
727
|
+
"run_commands",
|
|
728
|
+
"run_task",
|
|
729
|
+
"exec_command",
|
|
730
|
+
"job_input",
|
|
731
|
+
"job_cancel",
|
|
732
|
+
"runtime_task_start",
|
|
733
|
+
"runtime_task_cancel",
|
|
734
|
+
"agent_exec"
|
|
735
|
+
],
|
|
736
|
+
"inputSchema": {
|
|
737
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
738
|
+
"type": "object",
|
|
739
|
+
"properties": {
|
|
740
|
+
"targetProjectId": {
|
|
741
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
742
|
+
"type": "string",
|
|
743
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
744
|
+
},
|
|
745
|
+
"workspaceId": {
|
|
746
|
+
"type": "string",
|
|
747
|
+
"minLength": 1,
|
|
748
|
+
"maxLength": 128,
|
|
749
|
+
"description": "Workspace id from project_overview"
|
|
750
|
+
},
|
|
751
|
+
"workspaceEpoch": {
|
|
752
|
+
"type": "string",
|
|
753
|
+
"minLength": 1,
|
|
754
|
+
"maxLength": 128,
|
|
755
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
756
|
+
},
|
|
757
|
+
"operation": {
|
|
758
|
+
"type": "string",
|
|
759
|
+
"enum": [
|
|
760
|
+
"run_command",
|
|
761
|
+
"run_commands",
|
|
762
|
+
"run_task",
|
|
763
|
+
"exec_command",
|
|
764
|
+
"job_input",
|
|
765
|
+
"job_cancel",
|
|
766
|
+
"runtime_task_start",
|
|
767
|
+
"runtime_task_cancel",
|
|
768
|
+
"agent_exec"
|
|
769
|
+
],
|
|
770
|
+
"description": "Target operation to invoke"
|
|
771
|
+
},
|
|
772
|
+
"args": {
|
|
773
|
+
"default": {},
|
|
774
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
775
|
+
"type": "object",
|
|
776
|
+
"propertyNames": {
|
|
777
|
+
"type": "string"
|
|
778
|
+
},
|
|
779
|
+
"additionalProperties": {}
|
|
780
|
+
}
|
|
781
|
+
},
|
|
782
|
+
"required": [
|
|
783
|
+
"workspaceId",
|
|
784
|
+
"workspaceEpoch",
|
|
785
|
+
"operation",
|
|
786
|
+
"args"
|
|
787
|
+
],
|
|
788
|
+
"additionalProperties": false
|
|
789
|
+
},
|
|
790
|
+
"outputSchema": {
|
|
791
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
792
|
+
"type": "object",
|
|
793
|
+
"properties": {
|
|
794
|
+
"ok": {
|
|
795
|
+
"type": "boolean"
|
|
796
|
+
},
|
|
797
|
+
"workspaceId": {
|
|
798
|
+
"type": [
|
|
799
|
+
"string",
|
|
800
|
+
"null"
|
|
801
|
+
]
|
|
802
|
+
},
|
|
803
|
+
"workspaceEpoch": {
|
|
804
|
+
"type": [
|
|
805
|
+
"string",
|
|
806
|
+
"null"
|
|
807
|
+
]
|
|
808
|
+
},
|
|
809
|
+
"data": {
|
|
810
|
+
"anyOf": [
|
|
811
|
+
{
|
|
812
|
+
"type": "object",
|
|
813
|
+
"properties": {},
|
|
814
|
+
"additionalProperties": {}
|
|
815
|
+
},
|
|
816
|
+
{
|
|
817
|
+
"type": "null"
|
|
818
|
+
}
|
|
819
|
+
]
|
|
820
|
+
},
|
|
821
|
+
"error": {
|
|
822
|
+
"anyOf": [
|
|
823
|
+
{
|
|
824
|
+
"type": "object",
|
|
825
|
+
"properties": {
|
|
826
|
+
"code": {
|
|
827
|
+
"type": "string"
|
|
828
|
+
},
|
|
829
|
+
"message": {
|
|
830
|
+
"type": "string"
|
|
831
|
+
},
|
|
832
|
+
"retryable": {
|
|
833
|
+
"type": "boolean"
|
|
834
|
+
},
|
|
835
|
+
"recovery": {
|
|
836
|
+
"type": "string"
|
|
837
|
+
},
|
|
838
|
+
"detail": {
|
|
839
|
+
"type": "object",
|
|
840
|
+
"propertyNames": {
|
|
841
|
+
"type": "string"
|
|
842
|
+
},
|
|
843
|
+
"additionalProperties": {}
|
|
844
|
+
}
|
|
845
|
+
},
|
|
846
|
+
"required": [
|
|
847
|
+
"code",
|
|
848
|
+
"message",
|
|
849
|
+
"retryable"
|
|
850
|
+
],
|
|
851
|
+
"additionalProperties": false
|
|
852
|
+
},
|
|
853
|
+
{
|
|
854
|
+
"type": "null"
|
|
855
|
+
}
|
|
856
|
+
]
|
|
857
|
+
},
|
|
858
|
+
"warnings": {
|
|
859
|
+
"type": "array",
|
|
860
|
+
"items": {
|
|
861
|
+
"type": "string"
|
|
862
|
+
}
|
|
863
|
+
},
|
|
864
|
+
"truncated": {
|
|
865
|
+
"type": "boolean"
|
|
866
|
+
},
|
|
867
|
+
"nextCursor": {
|
|
868
|
+
"type": [
|
|
869
|
+
"string",
|
|
870
|
+
"null"
|
|
871
|
+
]
|
|
872
|
+
}
|
|
873
|
+
},
|
|
874
|
+
"required": [
|
|
875
|
+
"ok",
|
|
876
|
+
"workspaceId",
|
|
877
|
+
"workspaceEpoch",
|
|
878
|
+
"data",
|
|
879
|
+
"error",
|
|
880
|
+
"warnings",
|
|
881
|
+
"truncated",
|
|
882
|
+
"nextCursor"
|
|
883
|
+
],
|
|
884
|
+
"additionalProperties": false
|
|
885
|
+
}
|
|
886
|
+
},
|
|
887
|
+
{
|
|
888
|
+
"name": "dodo_git_read",
|
|
889
|
+
"title": "Inspect git state",
|
|
890
|
+
"description": "Gateway: git status, diff and log for the workspace repository. Set operation to one of: git_status, git_diff, git_log. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
891
|
+
"requiredScope": "dodo:read",
|
|
892
|
+
"annotations": {
|
|
893
|
+
"readOnlyHint": true,
|
|
894
|
+
"destructiveHint": false,
|
|
895
|
+
"idempotentHint": false,
|
|
896
|
+
"openWorldHint": false
|
|
897
|
+
},
|
|
898
|
+
"domain": "git",
|
|
899
|
+
"operations": [
|
|
900
|
+
"git_status",
|
|
901
|
+
"git_diff",
|
|
902
|
+
"git_log"
|
|
903
|
+
],
|
|
904
|
+
"inputSchema": {
|
|
905
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
906
|
+
"type": "object",
|
|
907
|
+
"properties": {
|
|
908
|
+
"targetProjectId": {
|
|
909
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
910
|
+
"type": "string",
|
|
911
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
912
|
+
},
|
|
913
|
+
"workspaceId": {
|
|
914
|
+
"type": "string",
|
|
915
|
+
"minLength": 1,
|
|
916
|
+
"maxLength": 128,
|
|
917
|
+
"description": "Workspace id from project_overview"
|
|
918
|
+
},
|
|
919
|
+
"workspaceEpoch": {
|
|
920
|
+
"type": "string",
|
|
921
|
+
"minLength": 1,
|
|
922
|
+
"maxLength": 128,
|
|
923
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
924
|
+
},
|
|
925
|
+
"operation": {
|
|
926
|
+
"type": "string",
|
|
927
|
+
"enum": [
|
|
928
|
+
"git_status",
|
|
929
|
+
"git_diff",
|
|
930
|
+
"git_log"
|
|
931
|
+
],
|
|
932
|
+
"description": "Target operation to invoke"
|
|
933
|
+
},
|
|
934
|
+
"args": {
|
|
935
|
+
"default": {},
|
|
936
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
937
|
+
"type": "object",
|
|
938
|
+
"propertyNames": {
|
|
939
|
+
"type": "string"
|
|
940
|
+
},
|
|
941
|
+
"additionalProperties": {}
|
|
942
|
+
}
|
|
943
|
+
},
|
|
944
|
+
"required": [
|
|
945
|
+
"workspaceId",
|
|
946
|
+
"workspaceEpoch",
|
|
947
|
+
"operation",
|
|
948
|
+
"args"
|
|
949
|
+
],
|
|
950
|
+
"additionalProperties": false
|
|
951
|
+
},
|
|
952
|
+
"outputSchema": {
|
|
953
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
954
|
+
"type": "object",
|
|
955
|
+
"properties": {
|
|
956
|
+
"ok": {
|
|
957
|
+
"type": "boolean"
|
|
958
|
+
},
|
|
959
|
+
"workspaceId": {
|
|
960
|
+
"type": [
|
|
961
|
+
"string",
|
|
962
|
+
"null"
|
|
963
|
+
]
|
|
964
|
+
},
|
|
965
|
+
"workspaceEpoch": {
|
|
966
|
+
"type": [
|
|
967
|
+
"string",
|
|
968
|
+
"null"
|
|
969
|
+
]
|
|
970
|
+
},
|
|
971
|
+
"data": {
|
|
972
|
+
"anyOf": [
|
|
973
|
+
{
|
|
974
|
+
"type": "object",
|
|
975
|
+
"properties": {},
|
|
976
|
+
"additionalProperties": {}
|
|
977
|
+
},
|
|
978
|
+
{
|
|
979
|
+
"type": "null"
|
|
980
|
+
}
|
|
981
|
+
]
|
|
982
|
+
},
|
|
983
|
+
"error": {
|
|
984
|
+
"anyOf": [
|
|
985
|
+
{
|
|
986
|
+
"type": "object",
|
|
987
|
+
"properties": {
|
|
988
|
+
"code": {
|
|
989
|
+
"type": "string"
|
|
990
|
+
},
|
|
991
|
+
"message": {
|
|
992
|
+
"type": "string"
|
|
993
|
+
},
|
|
994
|
+
"retryable": {
|
|
995
|
+
"type": "boolean"
|
|
996
|
+
},
|
|
997
|
+
"recovery": {
|
|
998
|
+
"type": "string"
|
|
999
|
+
},
|
|
1000
|
+
"detail": {
|
|
1001
|
+
"type": "object",
|
|
1002
|
+
"propertyNames": {
|
|
1003
|
+
"type": "string"
|
|
1004
|
+
},
|
|
1005
|
+
"additionalProperties": {}
|
|
1006
|
+
}
|
|
1007
|
+
},
|
|
1008
|
+
"required": [
|
|
1009
|
+
"code",
|
|
1010
|
+
"message",
|
|
1011
|
+
"retryable"
|
|
1012
|
+
],
|
|
1013
|
+
"additionalProperties": false
|
|
1014
|
+
},
|
|
1015
|
+
{
|
|
1016
|
+
"type": "null"
|
|
1017
|
+
}
|
|
1018
|
+
]
|
|
1019
|
+
},
|
|
1020
|
+
"warnings": {
|
|
1021
|
+
"type": "array",
|
|
1022
|
+
"items": {
|
|
1023
|
+
"type": "string"
|
|
1024
|
+
}
|
|
1025
|
+
},
|
|
1026
|
+
"truncated": {
|
|
1027
|
+
"type": "boolean"
|
|
1028
|
+
},
|
|
1029
|
+
"nextCursor": {
|
|
1030
|
+
"type": [
|
|
1031
|
+
"string",
|
|
1032
|
+
"null"
|
|
1033
|
+
]
|
|
1034
|
+
}
|
|
1035
|
+
},
|
|
1036
|
+
"required": [
|
|
1037
|
+
"ok",
|
|
1038
|
+
"workspaceId",
|
|
1039
|
+
"workspaceEpoch",
|
|
1040
|
+
"data",
|
|
1041
|
+
"error",
|
|
1042
|
+
"warnings",
|
|
1043
|
+
"truncated",
|
|
1044
|
+
"nextCursor"
|
|
1045
|
+
],
|
|
1046
|
+
"additionalProperties": false
|
|
1047
|
+
}
|
|
1048
|
+
},
|
|
1049
|
+
{
|
|
1050
|
+
"name": "dodo_git_write",
|
|
1051
|
+
"title": "Commit to git",
|
|
1052
|
+
"description": "Gateway: create a git commit from staged DODO changes (never pushes). Set operation to one of: git_commit. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
1053
|
+
"requiredScope": "dodo:exec",
|
|
1054
|
+
"annotations": {
|
|
1055
|
+
"readOnlyHint": false,
|
|
1056
|
+
"destructiveHint": false,
|
|
1057
|
+
"idempotentHint": false,
|
|
1058
|
+
"openWorldHint": false
|
|
1059
|
+
},
|
|
1060
|
+
"domain": "git",
|
|
1061
|
+
"operations": [
|
|
1062
|
+
"git_commit"
|
|
1063
|
+
],
|
|
1064
|
+
"inputSchema": {
|
|
1065
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1066
|
+
"type": "object",
|
|
1067
|
+
"properties": {
|
|
1068
|
+
"targetProjectId": {
|
|
1069
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
1070
|
+
"type": "string",
|
|
1071
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
1072
|
+
},
|
|
1073
|
+
"workspaceId": {
|
|
1074
|
+
"type": "string",
|
|
1075
|
+
"minLength": 1,
|
|
1076
|
+
"maxLength": 128,
|
|
1077
|
+
"description": "Workspace id from project_overview"
|
|
1078
|
+
},
|
|
1079
|
+
"workspaceEpoch": {
|
|
1080
|
+
"type": "string",
|
|
1081
|
+
"minLength": 1,
|
|
1082
|
+
"maxLength": 128,
|
|
1083
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
1084
|
+
},
|
|
1085
|
+
"operation": {
|
|
1086
|
+
"type": "string",
|
|
1087
|
+
"enum": [
|
|
1088
|
+
"git_commit"
|
|
1089
|
+
],
|
|
1090
|
+
"description": "Target operation to invoke"
|
|
1091
|
+
},
|
|
1092
|
+
"args": {
|
|
1093
|
+
"default": {},
|
|
1094
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
1095
|
+
"type": "object",
|
|
1096
|
+
"propertyNames": {
|
|
1097
|
+
"type": "string"
|
|
1098
|
+
},
|
|
1099
|
+
"additionalProperties": {}
|
|
1100
|
+
}
|
|
1101
|
+
},
|
|
1102
|
+
"required": [
|
|
1103
|
+
"workspaceId",
|
|
1104
|
+
"workspaceEpoch",
|
|
1105
|
+
"operation",
|
|
1106
|
+
"args"
|
|
1107
|
+
],
|
|
1108
|
+
"additionalProperties": false
|
|
1109
|
+
},
|
|
1110
|
+
"outputSchema": {
|
|
1111
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1112
|
+
"type": "object",
|
|
1113
|
+
"properties": {
|
|
1114
|
+
"ok": {
|
|
1115
|
+
"type": "boolean"
|
|
1116
|
+
},
|
|
1117
|
+
"workspaceId": {
|
|
1118
|
+
"type": [
|
|
1119
|
+
"string",
|
|
1120
|
+
"null"
|
|
1121
|
+
]
|
|
1122
|
+
},
|
|
1123
|
+
"workspaceEpoch": {
|
|
1124
|
+
"type": [
|
|
1125
|
+
"string",
|
|
1126
|
+
"null"
|
|
1127
|
+
]
|
|
1128
|
+
},
|
|
1129
|
+
"data": {
|
|
1130
|
+
"anyOf": [
|
|
1131
|
+
{
|
|
1132
|
+
"type": "object",
|
|
1133
|
+
"properties": {},
|
|
1134
|
+
"additionalProperties": {}
|
|
1135
|
+
},
|
|
1136
|
+
{
|
|
1137
|
+
"type": "null"
|
|
1138
|
+
}
|
|
1139
|
+
]
|
|
1140
|
+
},
|
|
1141
|
+
"error": {
|
|
1142
|
+
"anyOf": [
|
|
1143
|
+
{
|
|
1144
|
+
"type": "object",
|
|
1145
|
+
"properties": {
|
|
1146
|
+
"code": {
|
|
1147
|
+
"type": "string"
|
|
1148
|
+
},
|
|
1149
|
+
"message": {
|
|
1150
|
+
"type": "string"
|
|
1151
|
+
},
|
|
1152
|
+
"retryable": {
|
|
1153
|
+
"type": "boolean"
|
|
1154
|
+
},
|
|
1155
|
+
"recovery": {
|
|
1156
|
+
"type": "string"
|
|
1157
|
+
},
|
|
1158
|
+
"detail": {
|
|
1159
|
+
"type": "object",
|
|
1160
|
+
"propertyNames": {
|
|
1161
|
+
"type": "string"
|
|
1162
|
+
},
|
|
1163
|
+
"additionalProperties": {}
|
|
1164
|
+
}
|
|
1165
|
+
},
|
|
1166
|
+
"required": [
|
|
1167
|
+
"code",
|
|
1168
|
+
"message",
|
|
1169
|
+
"retryable"
|
|
1170
|
+
],
|
|
1171
|
+
"additionalProperties": false
|
|
1172
|
+
},
|
|
1173
|
+
{
|
|
1174
|
+
"type": "null"
|
|
1175
|
+
}
|
|
1176
|
+
]
|
|
1177
|
+
},
|
|
1178
|
+
"warnings": {
|
|
1179
|
+
"type": "array",
|
|
1180
|
+
"items": {
|
|
1181
|
+
"type": "string"
|
|
1182
|
+
}
|
|
1183
|
+
},
|
|
1184
|
+
"truncated": {
|
|
1185
|
+
"type": "boolean"
|
|
1186
|
+
},
|
|
1187
|
+
"nextCursor": {
|
|
1188
|
+
"type": [
|
|
1189
|
+
"string",
|
|
1190
|
+
"null"
|
|
1191
|
+
]
|
|
1192
|
+
}
|
|
1193
|
+
},
|
|
1194
|
+
"required": [
|
|
1195
|
+
"ok",
|
|
1196
|
+
"workspaceId",
|
|
1197
|
+
"workspaceEpoch",
|
|
1198
|
+
"data",
|
|
1199
|
+
"error",
|
|
1200
|
+
"warnings",
|
|
1201
|
+
"truncated",
|
|
1202
|
+
"nextCursor"
|
|
1203
|
+
],
|
|
1204
|
+
"additionalProperties": false
|
|
1205
|
+
}
|
|
1206
|
+
},
|
|
1207
|
+
{
|
|
1208
|
+
"name": "dodo_desktop_view",
|
|
1209
|
+
"title": "View permitted desktop windows",
|
|
1210
|
+
"description": "Gateway: status, window list, capture and accessibility text for owner-permitted apps only. Set operation to one of: desktop_status, desktop_windows, desktop_capture, desktop_accessibility. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
1211
|
+
"requiredScope": "dodo:read",
|
|
1212
|
+
"annotations": {
|
|
1213
|
+
"readOnlyHint": true,
|
|
1214
|
+
"destructiveHint": false,
|
|
1215
|
+
"idempotentHint": false,
|
|
1216
|
+
"openWorldHint": true
|
|
1217
|
+
},
|
|
1218
|
+
"domain": "desktop",
|
|
1219
|
+
"operations": [
|
|
1220
|
+
"desktop_status",
|
|
1221
|
+
"desktop_windows",
|
|
1222
|
+
"desktop_capture",
|
|
1223
|
+
"desktop_accessibility"
|
|
1224
|
+
],
|
|
1225
|
+
"inputSchema": {
|
|
1226
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1227
|
+
"type": "object",
|
|
1228
|
+
"properties": {
|
|
1229
|
+
"targetProjectId": {
|
|
1230
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
1231
|
+
"type": "string",
|
|
1232
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
1233
|
+
},
|
|
1234
|
+
"workspaceId": {
|
|
1235
|
+
"type": "string",
|
|
1236
|
+
"minLength": 1,
|
|
1237
|
+
"maxLength": 128,
|
|
1238
|
+
"description": "Workspace id from project_overview"
|
|
1239
|
+
},
|
|
1240
|
+
"workspaceEpoch": {
|
|
1241
|
+
"type": "string",
|
|
1242
|
+
"minLength": 1,
|
|
1243
|
+
"maxLength": 128,
|
|
1244
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
1245
|
+
},
|
|
1246
|
+
"operation": {
|
|
1247
|
+
"type": "string",
|
|
1248
|
+
"enum": [
|
|
1249
|
+
"desktop_status",
|
|
1250
|
+
"desktop_windows",
|
|
1251
|
+
"desktop_capture",
|
|
1252
|
+
"desktop_accessibility"
|
|
1253
|
+
],
|
|
1254
|
+
"description": "Target operation to invoke"
|
|
1255
|
+
},
|
|
1256
|
+
"args": {
|
|
1257
|
+
"default": {},
|
|
1258
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
1259
|
+
"type": "object",
|
|
1260
|
+
"propertyNames": {
|
|
1261
|
+
"type": "string"
|
|
1262
|
+
},
|
|
1263
|
+
"additionalProperties": {}
|
|
1264
|
+
}
|
|
1265
|
+
},
|
|
1266
|
+
"required": [
|
|
1267
|
+
"workspaceId",
|
|
1268
|
+
"workspaceEpoch",
|
|
1269
|
+
"operation",
|
|
1270
|
+
"args"
|
|
1271
|
+
],
|
|
1272
|
+
"additionalProperties": false
|
|
1273
|
+
},
|
|
1274
|
+
"outputSchema": {
|
|
1275
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1276
|
+
"type": "object",
|
|
1277
|
+
"properties": {
|
|
1278
|
+
"ok": {
|
|
1279
|
+
"type": "boolean"
|
|
1280
|
+
},
|
|
1281
|
+
"workspaceId": {
|
|
1282
|
+
"type": [
|
|
1283
|
+
"string",
|
|
1284
|
+
"null"
|
|
1285
|
+
]
|
|
1286
|
+
},
|
|
1287
|
+
"workspaceEpoch": {
|
|
1288
|
+
"type": [
|
|
1289
|
+
"string",
|
|
1290
|
+
"null"
|
|
1291
|
+
]
|
|
1292
|
+
},
|
|
1293
|
+
"data": {
|
|
1294
|
+
"anyOf": [
|
|
1295
|
+
{
|
|
1296
|
+
"type": "object",
|
|
1297
|
+
"properties": {},
|
|
1298
|
+
"additionalProperties": {}
|
|
1299
|
+
},
|
|
1300
|
+
{
|
|
1301
|
+
"type": "null"
|
|
1302
|
+
}
|
|
1303
|
+
]
|
|
1304
|
+
},
|
|
1305
|
+
"error": {
|
|
1306
|
+
"anyOf": [
|
|
1307
|
+
{
|
|
1308
|
+
"type": "object",
|
|
1309
|
+
"properties": {
|
|
1310
|
+
"code": {
|
|
1311
|
+
"type": "string"
|
|
1312
|
+
},
|
|
1313
|
+
"message": {
|
|
1314
|
+
"type": "string"
|
|
1315
|
+
},
|
|
1316
|
+
"retryable": {
|
|
1317
|
+
"type": "boolean"
|
|
1318
|
+
},
|
|
1319
|
+
"recovery": {
|
|
1320
|
+
"type": "string"
|
|
1321
|
+
},
|
|
1322
|
+
"detail": {
|
|
1323
|
+
"type": "object",
|
|
1324
|
+
"propertyNames": {
|
|
1325
|
+
"type": "string"
|
|
1326
|
+
},
|
|
1327
|
+
"additionalProperties": {}
|
|
1328
|
+
}
|
|
1329
|
+
},
|
|
1330
|
+
"required": [
|
|
1331
|
+
"code",
|
|
1332
|
+
"message",
|
|
1333
|
+
"retryable"
|
|
1334
|
+
],
|
|
1335
|
+
"additionalProperties": false
|
|
1336
|
+
},
|
|
1337
|
+
{
|
|
1338
|
+
"type": "null"
|
|
1339
|
+
}
|
|
1340
|
+
]
|
|
1341
|
+
},
|
|
1342
|
+
"warnings": {
|
|
1343
|
+
"type": "array",
|
|
1344
|
+
"items": {
|
|
1345
|
+
"type": "string"
|
|
1346
|
+
}
|
|
1347
|
+
},
|
|
1348
|
+
"truncated": {
|
|
1349
|
+
"type": "boolean"
|
|
1350
|
+
},
|
|
1351
|
+
"nextCursor": {
|
|
1352
|
+
"type": [
|
|
1353
|
+
"string",
|
|
1354
|
+
"null"
|
|
1355
|
+
]
|
|
1356
|
+
}
|
|
1357
|
+
},
|
|
1358
|
+
"required": [
|
|
1359
|
+
"ok",
|
|
1360
|
+
"workspaceId",
|
|
1361
|
+
"workspaceEpoch",
|
|
1362
|
+
"data",
|
|
1363
|
+
"error",
|
|
1364
|
+
"warnings",
|
|
1365
|
+
"truncated",
|
|
1366
|
+
"nextCursor"
|
|
1367
|
+
],
|
|
1368
|
+
"additionalProperties": false
|
|
1369
|
+
}
|
|
1370
|
+
},
|
|
1371
|
+
{
|
|
1372
|
+
"name": "dodo_desktop_control",
|
|
1373
|
+
"title": "Act in a permitted desktop window",
|
|
1374
|
+
"description": "Gateway: one bounded input action (focus/click/type/key/scroll/drag) in an owner-permitted window. Set operation to one of: desktop_action. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
1375
|
+
"requiredScope": "dodo:exec",
|
|
1376
|
+
"annotations": {
|
|
1377
|
+
"readOnlyHint": false,
|
|
1378
|
+
"destructiveHint": true,
|
|
1379
|
+
"idempotentHint": false,
|
|
1380
|
+
"openWorldHint": true
|
|
1381
|
+
},
|
|
1382
|
+
"domain": "desktop",
|
|
1383
|
+
"operations": [
|
|
1384
|
+
"desktop_action"
|
|
1385
|
+
],
|
|
1386
|
+
"inputSchema": {
|
|
1387
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1388
|
+
"type": "object",
|
|
1389
|
+
"properties": {
|
|
1390
|
+
"targetProjectId": {
|
|
1391
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
1392
|
+
"type": "string",
|
|
1393
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
1394
|
+
},
|
|
1395
|
+
"workspaceId": {
|
|
1396
|
+
"type": "string",
|
|
1397
|
+
"minLength": 1,
|
|
1398
|
+
"maxLength": 128,
|
|
1399
|
+
"description": "Workspace id from project_overview"
|
|
1400
|
+
},
|
|
1401
|
+
"workspaceEpoch": {
|
|
1402
|
+
"type": "string",
|
|
1403
|
+
"minLength": 1,
|
|
1404
|
+
"maxLength": 128,
|
|
1405
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
1406
|
+
},
|
|
1407
|
+
"operation": {
|
|
1408
|
+
"type": "string",
|
|
1409
|
+
"enum": [
|
|
1410
|
+
"desktop_action"
|
|
1411
|
+
],
|
|
1412
|
+
"description": "Target operation to invoke"
|
|
1413
|
+
},
|
|
1414
|
+
"args": {
|
|
1415
|
+
"default": {},
|
|
1416
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
1417
|
+
"type": "object",
|
|
1418
|
+
"propertyNames": {
|
|
1419
|
+
"type": "string"
|
|
1420
|
+
},
|
|
1421
|
+
"additionalProperties": {}
|
|
1422
|
+
}
|
|
1423
|
+
},
|
|
1424
|
+
"required": [
|
|
1425
|
+
"workspaceId",
|
|
1426
|
+
"workspaceEpoch",
|
|
1427
|
+
"operation",
|
|
1428
|
+
"args"
|
|
1429
|
+
],
|
|
1430
|
+
"additionalProperties": false
|
|
1431
|
+
},
|
|
1432
|
+
"outputSchema": {
|
|
1433
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1434
|
+
"type": "object",
|
|
1435
|
+
"properties": {
|
|
1436
|
+
"ok": {
|
|
1437
|
+
"type": "boolean"
|
|
1438
|
+
},
|
|
1439
|
+
"workspaceId": {
|
|
1440
|
+
"type": [
|
|
1441
|
+
"string",
|
|
1442
|
+
"null"
|
|
1443
|
+
]
|
|
1444
|
+
},
|
|
1445
|
+
"workspaceEpoch": {
|
|
1446
|
+
"type": [
|
|
1447
|
+
"string",
|
|
1448
|
+
"null"
|
|
1449
|
+
]
|
|
1450
|
+
},
|
|
1451
|
+
"data": {
|
|
1452
|
+
"anyOf": [
|
|
1453
|
+
{
|
|
1454
|
+
"type": "object",
|
|
1455
|
+
"properties": {},
|
|
1456
|
+
"additionalProperties": {}
|
|
1457
|
+
},
|
|
1458
|
+
{
|
|
1459
|
+
"type": "null"
|
|
1460
|
+
}
|
|
1461
|
+
]
|
|
1462
|
+
},
|
|
1463
|
+
"error": {
|
|
1464
|
+
"anyOf": [
|
|
1465
|
+
{
|
|
1466
|
+
"type": "object",
|
|
1467
|
+
"properties": {
|
|
1468
|
+
"code": {
|
|
1469
|
+
"type": "string"
|
|
1470
|
+
},
|
|
1471
|
+
"message": {
|
|
1472
|
+
"type": "string"
|
|
1473
|
+
},
|
|
1474
|
+
"retryable": {
|
|
1475
|
+
"type": "boolean"
|
|
1476
|
+
},
|
|
1477
|
+
"recovery": {
|
|
1478
|
+
"type": "string"
|
|
1479
|
+
},
|
|
1480
|
+
"detail": {
|
|
1481
|
+
"type": "object",
|
|
1482
|
+
"propertyNames": {
|
|
1483
|
+
"type": "string"
|
|
1484
|
+
},
|
|
1485
|
+
"additionalProperties": {}
|
|
1486
|
+
}
|
|
1487
|
+
},
|
|
1488
|
+
"required": [
|
|
1489
|
+
"code",
|
|
1490
|
+
"message",
|
|
1491
|
+
"retryable"
|
|
1492
|
+
],
|
|
1493
|
+
"additionalProperties": false
|
|
1494
|
+
},
|
|
1495
|
+
{
|
|
1496
|
+
"type": "null"
|
|
1497
|
+
}
|
|
1498
|
+
]
|
|
1499
|
+
},
|
|
1500
|
+
"warnings": {
|
|
1501
|
+
"type": "array",
|
|
1502
|
+
"items": {
|
|
1503
|
+
"type": "string"
|
|
1504
|
+
}
|
|
1505
|
+
},
|
|
1506
|
+
"truncated": {
|
|
1507
|
+
"type": "boolean"
|
|
1508
|
+
},
|
|
1509
|
+
"nextCursor": {
|
|
1510
|
+
"type": [
|
|
1511
|
+
"string",
|
|
1512
|
+
"null"
|
|
1513
|
+
]
|
|
1514
|
+
}
|
|
1515
|
+
},
|
|
1516
|
+
"required": [
|
|
1517
|
+
"ok",
|
|
1518
|
+
"workspaceId",
|
|
1519
|
+
"workspaceEpoch",
|
|
1520
|
+
"data",
|
|
1521
|
+
"error",
|
|
1522
|
+
"warnings",
|
|
1523
|
+
"truncated",
|
|
1524
|
+
"nextCursor"
|
|
1525
|
+
],
|
|
1526
|
+
"additionalProperties": false
|
|
1527
|
+
}
|
|
1528
|
+
},
|
|
1529
|
+
{
|
|
1530
|
+
"name": "dodo_assist_read",
|
|
1531
|
+
"title": "Coding-task analysis",
|
|
1532
|
+
"description": "Gateway: goal-driven context, owner-reviewed memory, static analysis, symbol reads and source-verified project graph queries. Set operation to one of: subagent_status, subagent_result, context_for_task, analyze_impact, read_symbol, context_query, context_evidence, context_status, memory_search, memory_inspect, memory_status, runtime_session_status, runtime_task_observe, runtime_snapshot, runtime_evidence, runtime_diagnose, agent_run_status, agent_read, agent_snapshot_create, agent_snapshot_compare, agent_skill_search, agent_skill_inspect, brain_status, brain_query, brain_symbol. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
1533
|
+
"requiredScope": "dodo:read",
|
|
1534
|
+
"annotations": {
|
|
1535
|
+
"readOnlyHint": true,
|
|
1536
|
+
"destructiveHint": false,
|
|
1537
|
+
"idempotentHint": false,
|
|
1538
|
+
"openWorldHint": false
|
|
1539
|
+
},
|
|
1540
|
+
"domain": "code",
|
|
1541
|
+
"operations": [
|
|
1542
|
+
"subagent_status",
|
|
1543
|
+
"subagent_result",
|
|
1544
|
+
"context_for_task",
|
|
1545
|
+
"analyze_impact",
|
|
1546
|
+
"read_symbol",
|
|
1547
|
+
"context_query",
|
|
1548
|
+
"context_evidence",
|
|
1549
|
+
"context_status",
|
|
1550
|
+
"memory_search",
|
|
1551
|
+
"memory_inspect",
|
|
1552
|
+
"memory_status",
|
|
1553
|
+
"runtime_session_status",
|
|
1554
|
+
"runtime_task_observe",
|
|
1555
|
+
"runtime_snapshot",
|
|
1556
|
+
"runtime_evidence",
|
|
1557
|
+
"runtime_diagnose",
|
|
1558
|
+
"agent_run_status",
|
|
1559
|
+
"agent_read",
|
|
1560
|
+
"agent_snapshot_create",
|
|
1561
|
+
"agent_snapshot_compare",
|
|
1562
|
+
"agent_skill_search",
|
|
1563
|
+
"agent_skill_inspect",
|
|
1564
|
+
"brain_status",
|
|
1565
|
+
"brain_query",
|
|
1566
|
+
"brain_symbol"
|
|
1567
|
+
],
|
|
1568
|
+
"inputSchema": {
|
|
1569
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1570
|
+
"type": "object",
|
|
1571
|
+
"properties": {
|
|
1572
|
+
"targetProjectId": {
|
|
1573
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
1574
|
+
"type": "string",
|
|
1575
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
1576
|
+
},
|
|
1577
|
+
"workspaceId": {
|
|
1578
|
+
"type": "string",
|
|
1579
|
+
"minLength": 1,
|
|
1580
|
+
"maxLength": 128,
|
|
1581
|
+
"description": "Workspace id from project_overview"
|
|
1582
|
+
},
|
|
1583
|
+
"workspaceEpoch": {
|
|
1584
|
+
"type": "string",
|
|
1585
|
+
"minLength": 1,
|
|
1586
|
+
"maxLength": 128,
|
|
1587
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
1588
|
+
},
|
|
1589
|
+
"operation": {
|
|
1590
|
+
"type": "string",
|
|
1591
|
+
"enum": [
|
|
1592
|
+
"subagent_status",
|
|
1593
|
+
"subagent_result",
|
|
1594
|
+
"context_for_task",
|
|
1595
|
+
"analyze_impact",
|
|
1596
|
+
"read_symbol",
|
|
1597
|
+
"context_query",
|
|
1598
|
+
"context_evidence",
|
|
1599
|
+
"context_status",
|
|
1600
|
+
"memory_search",
|
|
1601
|
+
"memory_inspect",
|
|
1602
|
+
"memory_status",
|
|
1603
|
+
"runtime_session_status",
|
|
1604
|
+
"runtime_task_observe",
|
|
1605
|
+
"runtime_snapshot",
|
|
1606
|
+
"runtime_evidence",
|
|
1607
|
+
"runtime_diagnose",
|
|
1608
|
+
"agent_run_status",
|
|
1609
|
+
"agent_read",
|
|
1610
|
+
"agent_snapshot_create",
|
|
1611
|
+
"agent_snapshot_compare",
|
|
1612
|
+
"agent_skill_search",
|
|
1613
|
+
"agent_skill_inspect",
|
|
1614
|
+
"brain_status",
|
|
1615
|
+
"brain_query",
|
|
1616
|
+
"brain_symbol"
|
|
1617
|
+
],
|
|
1618
|
+
"description": "Target operation to invoke"
|
|
1619
|
+
},
|
|
1620
|
+
"args": {
|
|
1621
|
+
"default": {},
|
|
1622
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
1623
|
+
"type": "object",
|
|
1624
|
+
"propertyNames": {
|
|
1625
|
+
"type": "string"
|
|
1626
|
+
},
|
|
1627
|
+
"additionalProperties": {}
|
|
1628
|
+
}
|
|
1629
|
+
},
|
|
1630
|
+
"required": [
|
|
1631
|
+
"workspaceId",
|
|
1632
|
+
"workspaceEpoch",
|
|
1633
|
+
"operation",
|
|
1634
|
+
"args"
|
|
1635
|
+
],
|
|
1636
|
+
"additionalProperties": false
|
|
1637
|
+
},
|
|
1638
|
+
"outputSchema": {
|
|
1639
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1640
|
+
"type": "object",
|
|
1641
|
+
"properties": {
|
|
1642
|
+
"ok": {
|
|
1643
|
+
"type": "boolean"
|
|
1644
|
+
},
|
|
1645
|
+
"workspaceId": {
|
|
1646
|
+
"type": [
|
|
1647
|
+
"string",
|
|
1648
|
+
"null"
|
|
1649
|
+
]
|
|
1650
|
+
},
|
|
1651
|
+
"workspaceEpoch": {
|
|
1652
|
+
"type": [
|
|
1653
|
+
"string",
|
|
1654
|
+
"null"
|
|
1655
|
+
]
|
|
1656
|
+
},
|
|
1657
|
+
"data": {
|
|
1658
|
+
"anyOf": [
|
|
1659
|
+
{
|
|
1660
|
+
"type": "object",
|
|
1661
|
+
"properties": {},
|
|
1662
|
+
"additionalProperties": {}
|
|
1663
|
+
},
|
|
1664
|
+
{
|
|
1665
|
+
"type": "null"
|
|
1666
|
+
}
|
|
1667
|
+
]
|
|
1668
|
+
},
|
|
1669
|
+
"error": {
|
|
1670
|
+
"anyOf": [
|
|
1671
|
+
{
|
|
1672
|
+
"type": "object",
|
|
1673
|
+
"properties": {
|
|
1674
|
+
"code": {
|
|
1675
|
+
"type": "string"
|
|
1676
|
+
},
|
|
1677
|
+
"message": {
|
|
1678
|
+
"type": "string"
|
|
1679
|
+
},
|
|
1680
|
+
"retryable": {
|
|
1681
|
+
"type": "boolean"
|
|
1682
|
+
},
|
|
1683
|
+
"recovery": {
|
|
1684
|
+
"type": "string"
|
|
1685
|
+
},
|
|
1686
|
+
"detail": {
|
|
1687
|
+
"type": "object",
|
|
1688
|
+
"propertyNames": {
|
|
1689
|
+
"type": "string"
|
|
1690
|
+
},
|
|
1691
|
+
"additionalProperties": {}
|
|
1692
|
+
}
|
|
1693
|
+
},
|
|
1694
|
+
"required": [
|
|
1695
|
+
"code",
|
|
1696
|
+
"message",
|
|
1697
|
+
"retryable"
|
|
1698
|
+
],
|
|
1699
|
+
"additionalProperties": false
|
|
1700
|
+
},
|
|
1701
|
+
{
|
|
1702
|
+
"type": "null"
|
|
1703
|
+
}
|
|
1704
|
+
]
|
|
1705
|
+
},
|
|
1706
|
+
"warnings": {
|
|
1707
|
+
"type": "array",
|
|
1708
|
+
"items": {
|
|
1709
|
+
"type": "string"
|
|
1710
|
+
}
|
|
1711
|
+
},
|
|
1712
|
+
"truncated": {
|
|
1713
|
+
"type": "boolean"
|
|
1714
|
+
},
|
|
1715
|
+
"nextCursor": {
|
|
1716
|
+
"type": [
|
|
1717
|
+
"string",
|
|
1718
|
+
"null"
|
|
1719
|
+
]
|
|
1720
|
+
}
|
|
1721
|
+
},
|
|
1722
|
+
"required": [
|
|
1723
|
+
"ok",
|
|
1724
|
+
"workspaceId",
|
|
1725
|
+
"workspaceEpoch",
|
|
1726
|
+
"data",
|
|
1727
|
+
"error",
|
|
1728
|
+
"warnings",
|
|
1729
|
+
"truncated",
|
|
1730
|
+
"nextCursor"
|
|
1731
|
+
],
|
|
1732
|
+
"additionalProperties": false
|
|
1733
|
+
}
|
|
1734
|
+
},
|
|
1735
|
+
{
|
|
1736
|
+
"name": "dodo_assist_change",
|
|
1737
|
+
"title": "Refactor previews and verification",
|
|
1738
|
+
"description": "Gateway: preview-only refactors, memory/learning proposals, explicit verification and owner-controlled Project Brain maintenance. Set operation to one of: subagent_spawn, subagent_control, preview_refactor, verify_changes, memory_propose, memory_learning_propose, runtime_session_open, runtime_session_close, agent_run_open, agent_plan_set, agent_hypothesis_open, agent_intent_acquire, agent_intent_release, agent_hypothesis_judge, agent_skill_propose, agent_run_control, brain_rebuild, brain_pause, brain_cancel. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
1739
|
+
"requiredScope": "dodo:write",
|
|
1740
|
+
"annotations": {
|
|
1741
|
+
"readOnlyHint": false,
|
|
1742
|
+
"destructiveHint": true,
|
|
1743
|
+
"idempotentHint": false,
|
|
1744
|
+
"openWorldHint": true
|
|
1745
|
+
},
|
|
1746
|
+
"domain": "code",
|
|
1747
|
+
"operations": [
|
|
1748
|
+
"subagent_spawn",
|
|
1749
|
+
"subagent_control",
|
|
1750
|
+
"preview_refactor",
|
|
1751
|
+
"verify_changes",
|
|
1752
|
+
"memory_propose",
|
|
1753
|
+
"memory_learning_propose",
|
|
1754
|
+
"runtime_session_open",
|
|
1755
|
+
"runtime_session_close",
|
|
1756
|
+
"agent_run_open",
|
|
1757
|
+
"agent_plan_set",
|
|
1758
|
+
"agent_hypothesis_open",
|
|
1759
|
+
"agent_intent_acquire",
|
|
1760
|
+
"agent_intent_release",
|
|
1761
|
+
"agent_hypothesis_judge",
|
|
1762
|
+
"agent_skill_propose",
|
|
1763
|
+
"agent_run_control",
|
|
1764
|
+
"brain_rebuild",
|
|
1765
|
+
"brain_pause",
|
|
1766
|
+
"brain_cancel"
|
|
1767
|
+
],
|
|
1768
|
+
"inputSchema": {
|
|
1769
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1770
|
+
"type": "object",
|
|
1771
|
+
"properties": {
|
|
1772
|
+
"targetProjectId": {
|
|
1773
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
1774
|
+
"type": "string",
|
|
1775
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
1776
|
+
},
|
|
1777
|
+
"workspaceId": {
|
|
1778
|
+
"type": "string",
|
|
1779
|
+
"minLength": 1,
|
|
1780
|
+
"maxLength": 128,
|
|
1781
|
+
"description": "Workspace id from project_overview"
|
|
1782
|
+
},
|
|
1783
|
+
"workspaceEpoch": {
|
|
1784
|
+
"type": "string",
|
|
1785
|
+
"minLength": 1,
|
|
1786
|
+
"maxLength": 128,
|
|
1787
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
1788
|
+
},
|
|
1789
|
+
"operation": {
|
|
1790
|
+
"type": "string",
|
|
1791
|
+
"enum": [
|
|
1792
|
+
"subagent_spawn",
|
|
1793
|
+
"subagent_control",
|
|
1794
|
+
"preview_refactor",
|
|
1795
|
+
"verify_changes",
|
|
1796
|
+
"memory_propose",
|
|
1797
|
+
"memory_learning_propose",
|
|
1798
|
+
"runtime_session_open",
|
|
1799
|
+
"runtime_session_close",
|
|
1800
|
+
"agent_run_open",
|
|
1801
|
+
"agent_plan_set",
|
|
1802
|
+
"agent_hypothesis_open",
|
|
1803
|
+
"agent_intent_acquire",
|
|
1804
|
+
"agent_intent_release",
|
|
1805
|
+
"agent_hypothesis_judge",
|
|
1806
|
+
"agent_skill_propose",
|
|
1807
|
+
"agent_run_control",
|
|
1808
|
+
"brain_rebuild",
|
|
1809
|
+
"brain_pause",
|
|
1810
|
+
"brain_cancel"
|
|
1811
|
+
],
|
|
1812
|
+
"description": "Target operation to invoke"
|
|
1813
|
+
},
|
|
1814
|
+
"args": {
|
|
1815
|
+
"default": {},
|
|
1816
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
1817
|
+
"type": "object",
|
|
1818
|
+
"propertyNames": {
|
|
1819
|
+
"type": "string"
|
|
1820
|
+
},
|
|
1821
|
+
"additionalProperties": {}
|
|
1822
|
+
}
|
|
1823
|
+
},
|
|
1824
|
+
"required": [
|
|
1825
|
+
"workspaceId",
|
|
1826
|
+
"workspaceEpoch",
|
|
1827
|
+
"operation",
|
|
1828
|
+
"args"
|
|
1829
|
+
],
|
|
1830
|
+
"additionalProperties": false
|
|
1831
|
+
},
|
|
1832
|
+
"outputSchema": {
|
|
1833
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1834
|
+
"type": "object",
|
|
1835
|
+
"properties": {
|
|
1836
|
+
"ok": {
|
|
1837
|
+
"type": "boolean"
|
|
1838
|
+
},
|
|
1839
|
+
"workspaceId": {
|
|
1840
|
+
"type": [
|
|
1841
|
+
"string",
|
|
1842
|
+
"null"
|
|
1843
|
+
]
|
|
1844
|
+
},
|
|
1845
|
+
"workspaceEpoch": {
|
|
1846
|
+
"type": [
|
|
1847
|
+
"string",
|
|
1848
|
+
"null"
|
|
1849
|
+
]
|
|
1850
|
+
},
|
|
1851
|
+
"data": {
|
|
1852
|
+
"anyOf": [
|
|
1853
|
+
{
|
|
1854
|
+
"type": "object",
|
|
1855
|
+
"properties": {},
|
|
1856
|
+
"additionalProperties": {}
|
|
1857
|
+
},
|
|
1858
|
+
{
|
|
1859
|
+
"type": "null"
|
|
1860
|
+
}
|
|
1861
|
+
]
|
|
1862
|
+
},
|
|
1863
|
+
"error": {
|
|
1864
|
+
"anyOf": [
|
|
1865
|
+
{
|
|
1866
|
+
"type": "object",
|
|
1867
|
+
"properties": {
|
|
1868
|
+
"code": {
|
|
1869
|
+
"type": "string"
|
|
1870
|
+
},
|
|
1871
|
+
"message": {
|
|
1872
|
+
"type": "string"
|
|
1873
|
+
},
|
|
1874
|
+
"retryable": {
|
|
1875
|
+
"type": "boolean"
|
|
1876
|
+
},
|
|
1877
|
+
"recovery": {
|
|
1878
|
+
"type": "string"
|
|
1879
|
+
},
|
|
1880
|
+
"detail": {
|
|
1881
|
+
"type": "object",
|
|
1882
|
+
"propertyNames": {
|
|
1883
|
+
"type": "string"
|
|
1884
|
+
},
|
|
1885
|
+
"additionalProperties": {}
|
|
1886
|
+
}
|
|
1887
|
+
},
|
|
1888
|
+
"required": [
|
|
1889
|
+
"code",
|
|
1890
|
+
"message",
|
|
1891
|
+
"retryable"
|
|
1892
|
+
],
|
|
1893
|
+
"additionalProperties": false
|
|
1894
|
+
},
|
|
1895
|
+
{
|
|
1896
|
+
"type": "null"
|
|
1897
|
+
}
|
|
1898
|
+
]
|
|
1899
|
+
},
|
|
1900
|
+
"warnings": {
|
|
1901
|
+
"type": "array",
|
|
1902
|
+
"items": {
|
|
1903
|
+
"type": "string"
|
|
1904
|
+
}
|
|
1905
|
+
},
|
|
1906
|
+
"truncated": {
|
|
1907
|
+
"type": "boolean"
|
|
1908
|
+
},
|
|
1909
|
+
"nextCursor": {
|
|
1910
|
+
"type": [
|
|
1911
|
+
"string",
|
|
1912
|
+
"null"
|
|
1913
|
+
]
|
|
1914
|
+
}
|
|
1915
|
+
},
|
|
1916
|
+
"required": [
|
|
1917
|
+
"ok",
|
|
1918
|
+
"workspaceId",
|
|
1919
|
+
"workspaceEpoch",
|
|
1920
|
+
"data",
|
|
1921
|
+
"error",
|
|
1922
|
+
"warnings",
|
|
1923
|
+
"truncated",
|
|
1924
|
+
"nextCursor"
|
|
1925
|
+
],
|
|
1926
|
+
"additionalProperties": false
|
|
1927
|
+
}
|
|
1928
|
+
},
|
|
1929
|
+
{
|
|
1930
|
+
"name": "dodo_media",
|
|
1931
|
+
"title": "Screen, image, media and speech",
|
|
1932
|
+
"description": "Gateway: bounded screen/image views, local video/audio evidence, transcription, subtitles and local speech synthesis. Set operation to one of: multimodal_status, screen_observe, image_view, media_open, media_extract, media_transcribe, media_subtitles, media_search, media_read, media_job, media_close, speech_synthesize, resource_inspect, resource_read, resource_read_range, resource_preview, resource_extract, resource_transform. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
1933
|
+
"requiredScope": "dodo:read",
|
|
1934
|
+
"annotations": {
|
|
1935
|
+
"readOnlyHint": false,
|
|
1936
|
+
"destructiveHint": true,
|
|
1937
|
+
"idempotentHint": false,
|
|
1938
|
+
"openWorldHint": true
|
|
1939
|
+
},
|
|
1940
|
+
"domain": "media",
|
|
1941
|
+
"operations": [
|
|
1942
|
+
"multimodal_status",
|
|
1943
|
+
"screen_observe",
|
|
1944
|
+
"image_view",
|
|
1945
|
+
"media_open",
|
|
1946
|
+
"media_extract",
|
|
1947
|
+
"media_transcribe",
|
|
1948
|
+
"media_subtitles",
|
|
1949
|
+
"media_search",
|
|
1950
|
+
"media_read",
|
|
1951
|
+
"media_job",
|
|
1952
|
+
"media_close",
|
|
1953
|
+
"speech_synthesize",
|
|
1954
|
+
"resource_inspect",
|
|
1955
|
+
"resource_read",
|
|
1956
|
+
"resource_read_range",
|
|
1957
|
+
"resource_preview",
|
|
1958
|
+
"resource_extract",
|
|
1959
|
+
"resource_transform"
|
|
1960
|
+
],
|
|
1961
|
+
"inputSchema": {
|
|
1962
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1963
|
+
"type": "object",
|
|
1964
|
+
"properties": {
|
|
1965
|
+
"targetProjectId": {
|
|
1966
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
1967
|
+
"type": "string",
|
|
1968
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
1969
|
+
},
|
|
1970
|
+
"workspaceId": {
|
|
1971
|
+
"type": "string",
|
|
1972
|
+
"minLength": 1,
|
|
1973
|
+
"maxLength": 128,
|
|
1974
|
+
"description": "Workspace id from project_overview"
|
|
1975
|
+
},
|
|
1976
|
+
"workspaceEpoch": {
|
|
1977
|
+
"type": "string",
|
|
1978
|
+
"minLength": 1,
|
|
1979
|
+
"maxLength": 128,
|
|
1980
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
1981
|
+
},
|
|
1982
|
+
"operation": {
|
|
1983
|
+
"type": "string",
|
|
1984
|
+
"enum": [
|
|
1985
|
+
"multimodal_status",
|
|
1986
|
+
"screen_observe",
|
|
1987
|
+
"image_view",
|
|
1988
|
+
"media_open",
|
|
1989
|
+
"media_extract",
|
|
1990
|
+
"media_transcribe",
|
|
1991
|
+
"media_subtitles",
|
|
1992
|
+
"media_search",
|
|
1993
|
+
"media_read",
|
|
1994
|
+
"media_job",
|
|
1995
|
+
"media_close",
|
|
1996
|
+
"speech_synthesize",
|
|
1997
|
+
"resource_inspect",
|
|
1998
|
+
"resource_read",
|
|
1999
|
+
"resource_read_range",
|
|
2000
|
+
"resource_preview",
|
|
2001
|
+
"resource_extract",
|
|
2002
|
+
"resource_transform"
|
|
2003
|
+
],
|
|
2004
|
+
"description": "Target operation to invoke"
|
|
2005
|
+
},
|
|
2006
|
+
"args": {
|
|
2007
|
+
"default": {},
|
|
2008
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
2009
|
+
"type": "object",
|
|
2010
|
+
"propertyNames": {
|
|
2011
|
+
"type": "string"
|
|
2012
|
+
},
|
|
2013
|
+
"additionalProperties": {}
|
|
2014
|
+
}
|
|
2015
|
+
},
|
|
2016
|
+
"required": [
|
|
2017
|
+
"workspaceId",
|
|
2018
|
+
"workspaceEpoch",
|
|
2019
|
+
"operation",
|
|
2020
|
+
"args"
|
|
2021
|
+
],
|
|
2022
|
+
"additionalProperties": false
|
|
2023
|
+
},
|
|
2024
|
+
"outputSchema": {
|
|
2025
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2026
|
+
"type": "object",
|
|
2027
|
+
"properties": {
|
|
2028
|
+
"ok": {
|
|
2029
|
+
"type": "boolean"
|
|
2030
|
+
},
|
|
2031
|
+
"workspaceId": {
|
|
2032
|
+
"type": [
|
|
2033
|
+
"string",
|
|
2034
|
+
"null"
|
|
2035
|
+
]
|
|
2036
|
+
},
|
|
2037
|
+
"workspaceEpoch": {
|
|
2038
|
+
"type": [
|
|
2039
|
+
"string",
|
|
2040
|
+
"null"
|
|
2041
|
+
]
|
|
2042
|
+
},
|
|
2043
|
+
"data": {
|
|
2044
|
+
"anyOf": [
|
|
2045
|
+
{
|
|
2046
|
+
"type": "object",
|
|
2047
|
+
"properties": {},
|
|
2048
|
+
"additionalProperties": {}
|
|
2049
|
+
},
|
|
2050
|
+
{
|
|
2051
|
+
"type": "null"
|
|
2052
|
+
}
|
|
2053
|
+
]
|
|
2054
|
+
},
|
|
2055
|
+
"error": {
|
|
2056
|
+
"anyOf": [
|
|
2057
|
+
{
|
|
2058
|
+
"type": "object",
|
|
2059
|
+
"properties": {
|
|
2060
|
+
"code": {
|
|
2061
|
+
"type": "string"
|
|
2062
|
+
},
|
|
2063
|
+
"message": {
|
|
2064
|
+
"type": "string"
|
|
2065
|
+
},
|
|
2066
|
+
"retryable": {
|
|
2067
|
+
"type": "boolean"
|
|
2068
|
+
},
|
|
2069
|
+
"recovery": {
|
|
2070
|
+
"type": "string"
|
|
2071
|
+
},
|
|
2072
|
+
"detail": {
|
|
2073
|
+
"type": "object",
|
|
2074
|
+
"propertyNames": {
|
|
2075
|
+
"type": "string"
|
|
2076
|
+
},
|
|
2077
|
+
"additionalProperties": {}
|
|
2078
|
+
}
|
|
2079
|
+
},
|
|
2080
|
+
"required": [
|
|
2081
|
+
"code",
|
|
2082
|
+
"message",
|
|
2083
|
+
"retryable"
|
|
2084
|
+
],
|
|
2085
|
+
"additionalProperties": false
|
|
2086
|
+
},
|
|
2087
|
+
{
|
|
2088
|
+
"type": "null"
|
|
2089
|
+
}
|
|
2090
|
+
]
|
|
2091
|
+
},
|
|
2092
|
+
"warnings": {
|
|
2093
|
+
"type": "array",
|
|
2094
|
+
"items": {
|
|
2095
|
+
"type": "string"
|
|
2096
|
+
}
|
|
2097
|
+
},
|
|
2098
|
+
"truncated": {
|
|
2099
|
+
"type": "boolean"
|
|
2100
|
+
},
|
|
2101
|
+
"nextCursor": {
|
|
2102
|
+
"type": [
|
|
2103
|
+
"string",
|
|
2104
|
+
"null"
|
|
2105
|
+
]
|
|
2106
|
+
}
|
|
2107
|
+
},
|
|
2108
|
+
"required": [
|
|
2109
|
+
"ok",
|
|
2110
|
+
"workspaceId",
|
|
2111
|
+
"workspaceEpoch",
|
|
2112
|
+
"data",
|
|
2113
|
+
"error",
|
|
2114
|
+
"warnings",
|
|
2115
|
+
"truncated",
|
|
2116
|
+
"nextCursor"
|
|
2117
|
+
],
|
|
2118
|
+
"additionalProperties": false
|
|
2119
|
+
}
|
|
2120
|
+
},
|
|
2121
|
+
{
|
|
2122
|
+
"name": "dodo_browser",
|
|
2123
|
+
"title": "Isolated browser",
|
|
2124
|
+
"description": "Gateway: open/observe/act in the isolated local Chromium session. Set operation to one of: browser_session, browser_observe, browser_action, runtime_browser_collect. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
2125
|
+
"requiredScope": "dodo:read",
|
|
2126
|
+
"annotations": {
|
|
2127
|
+
"readOnlyHint": false,
|
|
2128
|
+
"destructiveHint": true,
|
|
2129
|
+
"idempotentHint": false,
|
|
2130
|
+
"openWorldHint": true
|
|
2131
|
+
},
|
|
2132
|
+
"domain": "browser",
|
|
2133
|
+
"operations": [
|
|
2134
|
+
"browser_session",
|
|
2135
|
+
"browser_observe",
|
|
2136
|
+
"browser_action",
|
|
2137
|
+
"runtime_browser_collect"
|
|
2138
|
+
],
|
|
2139
|
+
"inputSchema": {
|
|
2140
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2141
|
+
"type": "object",
|
|
2142
|
+
"properties": {
|
|
2143
|
+
"targetProjectId": {
|
|
2144
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
2145
|
+
"type": "string",
|
|
2146
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
2147
|
+
},
|
|
2148
|
+
"workspaceId": {
|
|
2149
|
+
"type": "string",
|
|
2150
|
+
"minLength": 1,
|
|
2151
|
+
"maxLength": 128,
|
|
2152
|
+
"description": "Workspace id from project_overview"
|
|
2153
|
+
},
|
|
2154
|
+
"workspaceEpoch": {
|
|
2155
|
+
"type": "string",
|
|
2156
|
+
"minLength": 1,
|
|
2157
|
+
"maxLength": 128,
|
|
2158
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
2159
|
+
},
|
|
2160
|
+
"operation": {
|
|
2161
|
+
"type": "string",
|
|
2162
|
+
"enum": [
|
|
2163
|
+
"browser_session",
|
|
2164
|
+
"browser_observe",
|
|
2165
|
+
"browser_action",
|
|
2166
|
+
"runtime_browser_collect"
|
|
2167
|
+
],
|
|
2168
|
+
"description": "Target operation to invoke"
|
|
2169
|
+
},
|
|
2170
|
+
"args": {
|
|
2171
|
+
"default": {},
|
|
2172
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
2173
|
+
"type": "object",
|
|
2174
|
+
"propertyNames": {
|
|
2175
|
+
"type": "string"
|
|
2176
|
+
},
|
|
2177
|
+
"additionalProperties": {}
|
|
2178
|
+
}
|
|
2179
|
+
},
|
|
2180
|
+
"required": [
|
|
2181
|
+
"workspaceId",
|
|
2182
|
+
"workspaceEpoch",
|
|
2183
|
+
"operation",
|
|
2184
|
+
"args"
|
|
2185
|
+
],
|
|
2186
|
+
"additionalProperties": false
|
|
2187
|
+
},
|
|
2188
|
+
"outputSchema": {
|
|
2189
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2190
|
+
"type": "object",
|
|
2191
|
+
"properties": {
|
|
2192
|
+
"ok": {
|
|
2193
|
+
"type": "boolean"
|
|
2194
|
+
},
|
|
2195
|
+
"workspaceId": {
|
|
2196
|
+
"type": [
|
|
2197
|
+
"string",
|
|
2198
|
+
"null"
|
|
2199
|
+
]
|
|
2200
|
+
},
|
|
2201
|
+
"workspaceEpoch": {
|
|
2202
|
+
"type": [
|
|
2203
|
+
"string",
|
|
2204
|
+
"null"
|
|
2205
|
+
]
|
|
2206
|
+
},
|
|
2207
|
+
"data": {
|
|
2208
|
+
"anyOf": [
|
|
2209
|
+
{
|
|
2210
|
+
"type": "object",
|
|
2211
|
+
"properties": {},
|
|
2212
|
+
"additionalProperties": {}
|
|
2213
|
+
},
|
|
2214
|
+
{
|
|
2215
|
+
"type": "null"
|
|
2216
|
+
}
|
|
2217
|
+
]
|
|
2218
|
+
},
|
|
2219
|
+
"error": {
|
|
2220
|
+
"anyOf": [
|
|
2221
|
+
{
|
|
2222
|
+
"type": "object",
|
|
2223
|
+
"properties": {
|
|
2224
|
+
"code": {
|
|
2225
|
+
"type": "string"
|
|
2226
|
+
},
|
|
2227
|
+
"message": {
|
|
2228
|
+
"type": "string"
|
|
2229
|
+
},
|
|
2230
|
+
"retryable": {
|
|
2231
|
+
"type": "boolean"
|
|
2232
|
+
},
|
|
2233
|
+
"recovery": {
|
|
2234
|
+
"type": "string"
|
|
2235
|
+
},
|
|
2236
|
+
"detail": {
|
|
2237
|
+
"type": "object",
|
|
2238
|
+
"propertyNames": {
|
|
2239
|
+
"type": "string"
|
|
2240
|
+
},
|
|
2241
|
+
"additionalProperties": {}
|
|
2242
|
+
}
|
|
2243
|
+
},
|
|
2244
|
+
"required": [
|
|
2245
|
+
"code",
|
|
2246
|
+
"message",
|
|
2247
|
+
"retryable"
|
|
2248
|
+
],
|
|
2249
|
+
"additionalProperties": false
|
|
2250
|
+
},
|
|
2251
|
+
{
|
|
2252
|
+
"type": "null"
|
|
2253
|
+
}
|
|
2254
|
+
]
|
|
2255
|
+
},
|
|
2256
|
+
"warnings": {
|
|
2257
|
+
"type": "array",
|
|
2258
|
+
"items": {
|
|
2259
|
+
"type": "string"
|
|
2260
|
+
}
|
|
2261
|
+
},
|
|
2262
|
+
"truncated": {
|
|
2263
|
+
"type": "boolean"
|
|
2264
|
+
},
|
|
2265
|
+
"nextCursor": {
|
|
2266
|
+
"type": [
|
|
2267
|
+
"string",
|
|
2268
|
+
"null"
|
|
2269
|
+
]
|
|
2270
|
+
}
|
|
2271
|
+
},
|
|
2272
|
+
"required": [
|
|
2273
|
+
"ok",
|
|
2274
|
+
"workspaceId",
|
|
2275
|
+
"workspaceEpoch",
|
|
2276
|
+
"data",
|
|
2277
|
+
"error",
|
|
2278
|
+
"warnings",
|
|
2279
|
+
"truncated",
|
|
2280
|
+
"nextCursor"
|
|
2281
|
+
],
|
|
2282
|
+
"additionalProperties": false
|
|
2283
|
+
}
|
|
2284
|
+
},
|
|
2285
|
+
{
|
|
2286
|
+
"name": "dodo_game",
|
|
2287
|
+
"title": "Turn-based visual game",
|
|
2288
|
+
"description": "Gateway: step-based visual game sessions with fresh observations per move. Set operation to one of: game_session, game_step. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
2289
|
+
"requiredScope": "dodo:exec",
|
|
2290
|
+
"annotations": {
|
|
2291
|
+
"readOnlyHint": false,
|
|
2292
|
+
"destructiveHint": true,
|
|
2293
|
+
"idempotentHint": false,
|
|
2294
|
+
"openWorldHint": true
|
|
2295
|
+
},
|
|
2296
|
+
"domain": "game",
|
|
2297
|
+
"operations": [
|
|
2298
|
+
"game_session",
|
|
2299
|
+
"game_step"
|
|
2300
|
+
],
|
|
2301
|
+
"inputSchema": {
|
|
2302
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2303
|
+
"type": "object",
|
|
2304
|
+
"properties": {
|
|
2305
|
+
"targetProjectId": {
|
|
2306
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
2307
|
+
"type": "string",
|
|
2308
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
2309
|
+
},
|
|
2310
|
+
"workspaceId": {
|
|
2311
|
+
"type": "string",
|
|
2312
|
+
"minLength": 1,
|
|
2313
|
+
"maxLength": 128,
|
|
2314
|
+
"description": "Workspace id from project_overview"
|
|
2315
|
+
},
|
|
2316
|
+
"workspaceEpoch": {
|
|
2317
|
+
"type": "string",
|
|
2318
|
+
"minLength": 1,
|
|
2319
|
+
"maxLength": 128,
|
|
2320
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
2321
|
+
},
|
|
2322
|
+
"operation": {
|
|
2323
|
+
"type": "string",
|
|
2324
|
+
"enum": [
|
|
2325
|
+
"game_session",
|
|
2326
|
+
"game_step"
|
|
2327
|
+
],
|
|
2328
|
+
"description": "Target operation to invoke"
|
|
2329
|
+
},
|
|
2330
|
+
"args": {
|
|
2331
|
+
"default": {},
|
|
2332
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
2333
|
+
"type": "object",
|
|
2334
|
+
"propertyNames": {
|
|
2335
|
+
"type": "string"
|
|
2336
|
+
},
|
|
2337
|
+
"additionalProperties": {}
|
|
2338
|
+
}
|
|
2339
|
+
},
|
|
2340
|
+
"required": [
|
|
2341
|
+
"workspaceId",
|
|
2342
|
+
"workspaceEpoch",
|
|
2343
|
+
"operation",
|
|
2344
|
+
"args"
|
|
2345
|
+
],
|
|
2346
|
+
"additionalProperties": false
|
|
2347
|
+
},
|
|
2348
|
+
"outputSchema": {
|
|
2349
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2350
|
+
"type": "object",
|
|
2351
|
+
"properties": {
|
|
2352
|
+
"ok": {
|
|
2353
|
+
"type": "boolean"
|
|
2354
|
+
},
|
|
2355
|
+
"workspaceId": {
|
|
2356
|
+
"type": [
|
|
2357
|
+
"string",
|
|
2358
|
+
"null"
|
|
2359
|
+
]
|
|
2360
|
+
},
|
|
2361
|
+
"workspaceEpoch": {
|
|
2362
|
+
"type": [
|
|
2363
|
+
"string",
|
|
2364
|
+
"null"
|
|
2365
|
+
]
|
|
2366
|
+
},
|
|
2367
|
+
"data": {
|
|
2368
|
+
"anyOf": [
|
|
2369
|
+
{
|
|
2370
|
+
"type": "object",
|
|
2371
|
+
"properties": {},
|
|
2372
|
+
"additionalProperties": {}
|
|
2373
|
+
},
|
|
2374
|
+
{
|
|
2375
|
+
"type": "null"
|
|
2376
|
+
}
|
|
2377
|
+
]
|
|
2378
|
+
},
|
|
2379
|
+
"error": {
|
|
2380
|
+
"anyOf": [
|
|
2381
|
+
{
|
|
2382
|
+
"type": "object",
|
|
2383
|
+
"properties": {
|
|
2384
|
+
"code": {
|
|
2385
|
+
"type": "string"
|
|
2386
|
+
},
|
|
2387
|
+
"message": {
|
|
2388
|
+
"type": "string"
|
|
2389
|
+
},
|
|
2390
|
+
"retryable": {
|
|
2391
|
+
"type": "boolean"
|
|
2392
|
+
},
|
|
2393
|
+
"recovery": {
|
|
2394
|
+
"type": "string"
|
|
2395
|
+
},
|
|
2396
|
+
"detail": {
|
|
2397
|
+
"type": "object",
|
|
2398
|
+
"propertyNames": {
|
|
2399
|
+
"type": "string"
|
|
2400
|
+
},
|
|
2401
|
+
"additionalProperties": {}
|
|
2402
|
+
}
|
|
2403
|
+
},
|
|
2404
|
+
"required": [
|
|
2405
|
+
"code",
|
|
2406
|
+
"message",
|
|
2407
|
+
"retryable"
|
|
2408
|
+
],
|
|
2409
|
+
"additionalProperties": false
|
|
2410
|
+
},
|
|
2411
|
+
{
|
|
2412
|
+
"type": "null"
|
|
2413
|
+
}
|
|
2414
|
+
]
|
|
2415
|
+
},
|
|
2416
|
+
"warnings": {
|
|
2417
|
+
"type": "array",
|
|
2418
|
+
"items": {
|
|
2419
|
+
"type": "string"
|
|
2420
|
+
}
|
|
2421
|
+
},
|
|
2422
|
+
"truncated": {
|
|
2423
|
+
"type": "boolean"
|
|
2424
|
+
},
|
|
2425
|
+
"nextCursor": {
|
|
2426
|
+
"type": [
|
|
2427
|
+
"string",
|
|
2428
|
+
"null"
|
|
2429
|
+
]
|
|
2430
|
+
}
|
|
2431
|
+
},
|
|
2432
|
+
"required": [
|
|
2433
|
+
"ok",
|
|
2434
|
+
"workspaceId",
|
|
2435
|
+
"workspaceEpoch",
|
|
2436
|
+
"data",
|
|
2437
|
+
"error",
|
|
2438
|
+
"warnings",
|
|
2439
|
+
"truncated",
|
|
2440
|
+
"nextCursor"
|
|
2441
|
+
],
|
|
2442
|
+
"additionalProperties": false
|
|
2443
|
+
}
|
|
2444
|
+
},
|
|
2445
|
+
{
|
|
2446
|
+
"name": "dodo_workflow_read",
|
|
2447
|
+
"title": "Find remembered procedures",
|
|
2448
|
+
"description": "Gateway: search or read revisioned demonstration workflows. Set operation to one of: workflow_search. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
2449
|
+
"requiredScope": "dodo:read",
|
|
2450
|
+
"annotations": {
|
|
2451
|
+
"readOnlyHint": true,
|
|
2452
|
+
"destructiveHint": false,
|
|
2453
|
+
"idempotentHint": false,
|
|
2454
|
+
"openWorldHint": true
|
|
2455
|
+
},
|
|
2456
|
+
"domain": "workflow",
|
|
2457
|
+
"operations": [
|
|
2458
|
+
"workflow_search"
|
|
2459
|
+
],
|
|
2460
|
+
"inputSchema": {
|
|
2461
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2462
|
+
"type": "object",
|
|
2463
|
+
"properties": {
|
|
2464
|
+
"targetProjectId": {
|
|
2465
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
2466
|
+
"type": "string",
|
|
2467
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
2468
|
+
},
|
|
2469
|
+
"workspaceId": {
|
|
2470
|
+
"type": "string",
|
|
2471
|
+
"minLength": 1,
|
|
2472
|
+
"maxLength": 128,
|
|
2473
|
+
"description": "Workspace id from project_overview"
|
|
2474
|
+
},
|
|
2475
|
+
"workspaceEpoch": {
|
|
2476
|
+
"type": "string",
|
|
2477
|
+
"minLength": 1,
|
|
2478
|
+
"maxLength": 128,
|
|
2479
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
2480
|
+
},
|
|
2481
|
+
"operation": {
|
|
2482
|
+
"type": "string",
|
|
2483
|
+
"enum": [
|
|
2484
|
+
"workflow_search"
|
|
2485
|
+
],
|
|
2486
|
+
"description": "Target operation to invoke"
|
|
2487
|
+
},
|
|
2488
|
+
"args": {
|
|
2489
|
+
"default": {},
|
|
2490
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
2491
|
+
"type": "object",
|
|
2492
|
+
"propertyNames": {
|
|
2493
|
+
"type": "string"
|
|
2494
|
+
},
|
|
2495
|
+
"additionalProperties": {}
|
|
2496
|
+
}
|
|
2497
|
+
},
|
|
2498
|
+
"required": [
|
|
2499
|
+
"workspaceId",
|
|
2500
|
+
"workspaceEpoch",
|
|
2501
|
+
"operation",
|
|
2502
|
+
"args"
|
|
2503
|
+
],
|
|
2504
|
+
"additionalProperties": false
|
|
2505
|
+
},
|
|
2506
|
+
"outputSchema": {
|
|
2507
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2508
|
+
"type": "object",
|
|
2509
|
+
"properties": {
|
|
2510
|
+
"ok": {
|
|
2511
|
+
"type": "boolean"
|
|
2512
|
+
},
|
|
2513
|
+
"workspaceId": {
|
|
2514
|
+
"type": [
|
|
2515
|
+
"string",
|
|
2516
|
+
"null"
|
|
2517
|
+
]
|
|
2518
|
+
},
|
|
2519
|
+
"workspaceEpoch": {
|
|
2520
|
+
"type": [
|
|
2521
|
+
"string",
|
|
2522
|
+
"null"
|
|
2523
|
+
]
|
|
2524
|
+
},
|
|
2525
|
+
"data": {
|
|
2526
|
+
"anyOf": [
|
|
2527
|
+
{
|
|
2528
|
+
"type": "object",
|
|
2529
|
+
"properties": {},
|
|
2530
|
+
"additionalProperties": {}
|
|
2531
|
+
},
|
|
2532
|
+
{
|
|
2533
|
+
"type": "null"
|
|
2534
|
+
}
|
|
2535
|
+
]
|
|
2536
|
+
},
|
|
2537
|
+
"error": {
|
|
2538
|
+
"anyOf": [
|
|
2539
|
+
{
|
|
2540
|
+
"type": "object",
|
|
2541
|
+
"properties": {
|
|
2542
|
+
"code": {
|
|
2543
|
+
"type": "string"
|
|
2544
|
+
},
|
|
2545
|
+
"message": {
|
|
2546
|
+
"type": "string"
|
|
2547
|
+
},
|
|
2548
|
+
"retryable": {
|
|
2549
|
+
"type": "boolean"
|
|
2550
|
+
},
|
|
2551
|
+
"recovery": {
|
|
2552
|
+
"type": "string"
|
|
2553
|
+
},
|
|
2554
|
+
"detail": {
|
|
2555
|
+
"type": "object",
|
|
2556
|
+
"propertyNames": {
|
|
2557
|
+
"type": "string"
|
|
2558
|
+
},
|
|
2559
|
+
"additionalProperties": {}
|
|
2560
|
+
}
|
|
2561
|
+
},
|
|
2562
|
+
"required": [
|
|
2563
|
+
"code",
|
|
2564
|
+
"message",
|
|
2565
|
+
"retryable"
|
|
2566
|
+
],
|
|
2567
|
+
"additionalProperties": false
|
|
2568
|
+
},
|
|
2569
|
+
{
|
|
2570
|
+
"type": "null"
|
|
2571
|
+
}
|
|
2572
|
+
]
|
|
2573
|
+
},
|
|
2574
|
+
"warnings": {
|
|
2575
|
+
"type": "array",
|
|
2576
|
+
"items": {
|
|
2577
|
+
"type": "string"
|
|
2578
|
+
}
|
|
2579
|
+
},
|
|
2580
|
+
"truncated": {
|
|
2581
|
+
"type": "boolean"
|
|
2582
|
+
},
|
|
2583
|
+
"nextCursor": {
|
|
2584
|
+
"type": [
|
|
2585
|
+
"string",
|
|
2586
|
+
"null"
|
|
2587
|
+
]
|
|
2588
|
+
}
|
|
2589
|
+
},
|
|
2590
|
+
"required": [
|
|
2591
|
+
"ok",
|
|
2592
|
+
"workspaceId",
|
|
2593
|
+
"workspaceEpoch",
|
|
2594
|
+
"data",
|
|
2595
|
+
"error",
|
|
2596
|
+
"warnings",
|
|
2597
|
+
"truncated",
|
|
2598
|
+
"nextCursor"
|
|
2599
|
+
],
|
|
2600
|
+
"additionalProperties": false
|
|
2601
|
+
}
|
|
2602
|
+
},
|
|
2603
|
+
{
|
|
2604
|
+
"name": "dodo_workflow_write",
|
|
2605
|
+
"title": "Save a demonstrated procedure",
|
|
2606
|
+
"description": "Gateway: save or revise a demonstration workflow (never executes it). Set operation to one of: workflow_save. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
2607
|
+
"requiredScope": "dodo:write",
|
|
2608
|
+
"annotations": {
|
|
2609
|
+
"readOnlyHint": false,
|
|
2610
|
+
"destructiveHint": false,
|
|
2611
|
+
"idempotentHint": false,
|
|
2612
|
+
"openWorldHint": true
|
|
2613
|
+
},
|
|
2614
|
+
"domain": "workflow",
|
|
2615
|
+
"operations": [
|
|
2616
|
+
"workflow_save"
|
|
2617
|
+
],
|
|
2618
|
+
"inputSchema": {
|
|
2619
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2620
|
+
"type": "object",
|
|
2621
|
+
"properties": {
|
|
2622
|
+
"targetProjectId": {
|
|
2623
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
2624
|
+
"type": "string",
|
|
2625
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
2626
|
+
},
|
|
2627
|
+
"workspaceId": {
|
|
2628
|
+
"type": "string",
|
|
2629
|
+
"minLength": 1,
|
|
2630
|
+
"maxLength": 128,
|
|
2631
|
+
"description": "Workspace id from project_overview"
|
|
2632
|
+
},
|
|
2633
|
+
"workspaceEpoch": {
|
|
2634
|
+
"type": "string",
|
|
2635
|
+
"minLength": 1,
|
|
2636
|
+
"maxLength": 128,
|
|
2637
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
2638
|
+
},
|
|
2639
|
+
"operation": {
|
|
2640
|
+
"type": "string",
|
|
2641
|
+
"enum": [
|
|
2642
|
+
"workflow_save"
|
|
2643
|
+
],
|
|
2644
|
+
"description": "Target operation to invoke"
|
|
2645
|
+
},
|
|
2646
|
+
"args": {
|
|
2647
|
+
"default": {},
|
|
2648
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
2649
|
+
"type": "object",
|
|
2650
|
+
"propertyNames": {
|
|
2651
|
+
"type": "string"
|
|
2652
|
+
},
|
|
2653
|
+
"additionalProperties": {}
|
|
2654
|
+
}
|
|
2655
|
+
},
|
|
2656
|
+
"required": [
|
|
2657
|
+
"workspaceId",
|
|
2658
|
+
"workspaceEpoch",
|
|
2659
|
+
"operation",
|
|
2660
|
+
"args"
|
|
2661
|
+
],
|
|
2662
|
+
"additionalProperties": false
|
|
2663
|
+
},
|
|
2664
|
+
"outputSchema": {
|
|
2665
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2666
|
+
"type": "object",
|
|
2667
|
+
"properties": {
|
|
2668
|
+
"ok": {
|
|
2669
|
+
"type": "boolean"
|
|
2670
|
+
},
|
|
2671
|
+
"workspaceId": {
|
|
2672
|
+
"type": [
|
|
2673
|
+
"string",
|
|
2674
|
+
"null"
|
|
2675
|
+
]
|
|
2676
|
+
},
|
|
2677
|
+
"workspaceEpoch": {
|
|
2678
|
+
"type": [
|
|
2679
|
+
"string",
|
|
2680
|
+
"null"
|
|
2681
|
+
]
|
|
2682
|
+
},
|
|
2683
|
+
"data": {
|
|
2684
|
+
"anyOf": [
|
|
2685
|
+
{
|
|
2686
|
+
"type": "object",
|
|
2687
|
+
"properties": {},
|
|
2688
|
+
"additionalProperties": {}
|
|
2689
|
+
},
|
|
2690
|
+
{
|
|
2691
|
+
"type": "null"
|
|
2692
|
+
}
|
|
2693
|
+
]
|
|
2694
|
+
},
|
|
2695
|
+
"error": {
|
|
2696
|
+
"anyOf": [
|
|
2697
|
+
{
|
|
2698
|
+
"type": "object",
|
|
2699
|
+
"properties": {
|
|
2700
|
+
"code": {
|
|
2701
|
+
"type": "string"
|
|
2702
|
+
},
|
|
2703
|
+
"message": {
|
|
2704
|
+
"type": "string"
|
|
2705
|
+
},
|
|
2706
|
+
"retryable": {
|
|
2707
|
+
"type": "boolean"
|
|
2708
|
+
},
|
|
2709
|
+
"recovery": {
|
|
2710
|
+
"type": "string"
|
|
2711
|
+
},
|
|
2712
|
+
"detail": {
|
|
2713
|
+
"type": "object",
|
|
2714
|
+
"propertyNames": {
|
|
2715
|
+
"type": "string"
|
|
2716
|
+
},
|
|
2717
|
+
"additionalProperties": {}
|
|
2718
|
+
}
|
|
2719
|
+
},
|
|
2720
|
+
"required": [
|
|
2721
|
+
"code",
|
|
2722
|
+
"message",
|
|
2723
|
+
"retryable"
|
|
2724
|
+
],
|
|
2725
|
+
"additionalProperties": false
|
|
2726
|
+
},
|
|
2727
|
+
{
|
|
2728
|
+
"type": "null"
|
|
2729
|
+
}
|
|
2730
|
+
]
|
|
2731
|
+
},
|
|
2732
|
+
"warnings": {
|
|
2733
|
+
"type": "array",
|
|
2734
|
+
"items": {
|
|
2735
|
+
"type": "string"
|
|
2736
|
+
}
|
|
2737
|
+
},
|
|
2738
|
+
"truncated": {
|
|
2739
|
+
"type": "boolean"
|
|
2740
|
+
},
|
|
2741
|
+
"nextCursor": {
|
|
2742
|
+
"type": [
|
|
2743
|
+
"string",
|
|
2744
|
+
"null"
|
|
2745
|
+
]
|
|
2746
|
+
}
|
|
2747
|
+
},
|
|
2748
|
+
"required": [
|
|
2749
|
+
"ok",
|
|
2750
|
+
"workspaceId",
|
|
2751
|
+
"workspaceEpoch",
|
|
2752
|
+
"data",
|
|
2753
|
+
"error",
|
|
2754
|
+
"warnings",
|
|
2755
|
+
"truncated",
|
|
2756
|
+
"nextCursor"
|
|
2757
|
+
],
|
|
2758
|
+
"additionalProperties": false
|
|
2759
|
+
}
|
|
2760
|
+
},
|
|
2761
|
+
{
|
|
2762
|
+
"name": "dodo_workflow_run",
|
|
2763
|
+
"title": "Run a remembered procedure",
|
|
2764
|
+
"description": "Gateway: apply a saved workflow one checked step at a time. Set operation to one of: workflow_run. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
2765
|
+
"requiredScope": "dodo:exec",
|
|
2766
|
+
"annotations": {
|
|
2767
|
+
"readOnlyHint": false,
|
|
2768
|
+
"destructiveHint": true,
|
|
2769
|
+
"idempotentHint": false,
|
|
2770
|
+
"openWorldHint": true
|
|
2771
|
+
},
|
|
2772
|
+
"domain": "workflow",
|
|
2773
|
+
"operations": [
|
|
2774
|
+
"workflow_run"
|
|
2775
|
+
],
|
|
2776
|
+
"inputSchema": {
|
|
2777
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2778
|
+
"type": "object",
|
|
2779
|
+
"properties": {
|
|
2780
|
+
"targetProjectId": {
|
|
2781
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
2782
|
+
"type": "string",
|
|
2783
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
2784
|
+
},
|
|
2785
|
+
"workspaceId": {
|
|
2786
|
+
"type": "string",
|
|
2787
|
+
"minLength": 1,
|
|
2788
|
+
"maxLength": 128,
|
|
2789
|
+
"description": "Workspace id from project_overview"
|
|
2790
|
+
},
|
|
2791
|
+
"workspaceEpoch": {
|
|
2792
|
+
"type": "string",
|
|
2793
|
+
"minLength": 1,
|
|
2794
|
+
"maxLength": 128,
|
|
2795
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
2796
|
+
},
|
|
2797
|
+
"operation": {
|
|
2798
|
+
"type": "string",
|
|
2799
|
+
"enum": [
|
|
2800
|
+
"workflow_run"
|
|
2801
|
+
],
|
|
2802
|
+
"description": "Target operation to invoke"
|
|
2803
|
+
},
|
|
2804
|
+
"args": {
|
|
2805
|
+
"default": {},
|
|
2806
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
2807
|
+
"type": "object",
|
|
2808
|
+
"propertyNames": {
|
|
2809
|
+
"type": "string"
|
|
2810
|
+
},
|
|
2811
|
+
"additionalProperties": {}
|
|
2812
|
+
}
|
|
2813
|
+
},
|
|
2814
|
+
"required": [
|
|
2815
|
+
"workspaceId",
|
|
2816
|
+
"workspaceEpoch",
|
|
2817
|
+
"operation",
|
|
2818
|
+
"args"
|
|
2819
|
+
],
|
|
2820
|
+
"additionalProperties": false
|
|
2821
|
+
},
|
|
2822
|
+
"outputSchema": {
|
|
2823
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2824
|
+
"type": "object",
|
|
2825
|
+
"properties": {
|
|
2826
|
+
"ok": {
|
|
2827
|
+
"type": "boolean"
|
|
2828
|
+
},
|
|
2829
|
+
"workspaceId": {
|
|
2830
|
+
"type": [
|
|
2831
|
+
"string",
|
|
2832
|
+
"null"
|
|
2833
|
+
]
|
|
2834
|
+
},
|
|
2835
|
+
"workspaceEpoch": {
|
|
2836
|
+
"type": [
|
|
2837
|
+
"string",
|
|
2838
|
+
"null"
|
|
2839
|
+
]
|
|
2840
|
+
},
|
|
2841
|
+
"data": {
|
|
2842
|
+
"anyOf": [
|
|
2843
|
+
{
|
|
2844
|
+
"type": "object",
|
|
2845
|
+
"properties": {},
|
|
2846
|
+
"additionalProperties": {}
|
|
2847
|
+
},
|
|
2848
|
+
{
|
|
2849
|
+
"type": "null"
|
|
2850
|
+
}
|
|
2851
|
+
]
|
|
2852
|
+
},
|
|
2853
|
+
"error": {
|
|
2854
|
+
"anyOf": [
|
|
2855
|
+
{
|
|
2856
|
+
"type": "object",
|
|
2857
|
+
"properties": {
|
|
2858
|
+
"code": {
|
|
2859
|
+
"type": "string"
|
|
2860
|
+
},
|
|
2861
|
+
"message": {
|
|
2862
|
+
"type": "string"
|
|
2863
|
+
},
|
|
2864
|
+
"retryable": {
|
|
2865
|
+
"type": "boolean"
|
|
2866
|
+
},
|
|
2867
|
+
"recovery": {
|
|
2868
|
+
"type": "string"
|
|
2869
|
+
},
|
|
2870
|
+
"detail": {
|
|
2871
|
+
"type": "object",
|
|
2872
|
+
"propertyNames": {
|
|
2873
|
+
"type": "string"
|
|
2874
|
+
},
|
|
2875
|
+
"additionalProperties": {}
|
|
2876
|
+
}
|
|
2877
|
+
},
|
|
2878
|
+
"required": [
|
|
2879
|
+
"code",
|
|
2880
|
+
"message",
|
|
2881
|
+
"retryable"
|
|
2882
|
+
],
|
|
2883
|
+
"additionalProperties": false
|
|
2884
|
+
},
|
|
2885
|
+
{
|
|
2886
|
+
"type": "null"
|
|
2887
|
+
}
|
|
2888
|
+
]
|
|
2889
|
+
},
|
|
2890
|
+
"warnings": {
|
|
2891
|
+
"type": "array",
|
|
2892
|
+
"items": {
|
|
2893
|
+
"type": "string"
|
|
2894
|
+
}
|
|
2895
|
+
},
|
|
2896
|
+
"truncated": {
|
|
2897
|
+
"type": "boolean"
|
|
2898
|
+
},
|
|
2899
|
+
"nextCursor": {
|
|
2900
|
+
"type": [
|
|
2901
|
+
"string",
|
|
2902
|
+
"null"
|
|
2903
|
+
]
|
|
2904
|
+
}
|
|
2905
|
+
},
|
|
2906
|
+
"required": [
|
|
2907
|
+
"ok",
|
|
2908
|
+
"workspaceId",
|
|
2909
|
+
"workspaceEpoch",
|
|
2910
|
+
"data",
|
|
2911
|
+
"error",
|
|
2912
|
+
"warnings",
|
|
2913
|
+
"truncated",
|
|
2914
|
+
"nextCursor"
|
|
2915
|
+
],
|
|
2916
|
+
"additionalProperties": false
|
|
2917
|
+
}
|
|
2918
|
+
},
|
|
2919
|
+
{
|
|
2920
|
+
"name": "dodo_schedule",
|
|
2921
|
+
"title": "Propose a scheduled command",
|
|
2922
|
+
"description": "Gateway: propose an immutable scheduled command; the owner approves it locally before it ever runs. Set operation to one of: schedule_propose. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
2923
|
+
"requiredScope": "dodo:exec",
|
|
2924
|
+
"annotations": {
|
|
2925
|
+
"readOnlyHint": false,
|
|
2926
|
+
"destructiveHint": false,
|
|
2927
|
+
"idempotentHint": false,
|
|
2928
|
+
"openWorldHint": false
|
|
2929
|
+
},
|
|
2930
|
+
"domain": "schedule",
|
|
2931
|
+
"operations": [
|
|
2932
|
+
"schedule_propose"
|
|
2933
|
+
],
|
|
2934
|
+
"inputSchema": {
|
|
2935
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2936
|
+
"type": "object",
|
|
2937
|
+
"properties": {
|
|
2938
|
+
"targetProjectId": {
|
|
2939
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
2940
|
+
"type": "string",
|
|
2941
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
2942
|
+
},
|
|
2943
|
+
"workspaceId": {
|
|
2944
|
+
"type": "string",
|
|
2945
|
+
"minLength": 1,
|
|
2946
|
+
"maxLength": 128,
|
|
2947
|
+
"description": "Workspace id from project_overview"
|
|
2948
|
+
},
|
|
2949
|
+
"workspaceEpoch": {
|
|
2950
|
+
"type": "string",
|
|
2951
|
+
"minLength": 1,
|
|
2952
|
+
"maxLength": 128,
|
|
2953
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
2954
|
+
},
|
|
2955
|
+
"operation": {
|
|
2956
|
+
"type": "string",
|
|
2957
|
+
"enum": [
|
|
2958
|
+
"schedule_propose"
|
|
2959
|
+
],
|
|
2960
|
+
"description": "Target operation to invoke"
|
|
2961
|
+
},
|
|
2962
|
+
"args": {
|
|
2963
|
+
"default": {},
|
|
2964
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
2965
|
+
"type": "object",
|
|
2966
|
+
"propertyNames": {
|
|
2967
|
+
"type": "string"
|
|
2968
|
+
},
|
|
2969
|
+
"additionalProperties": {}
|
|
2970
|
+
}
|
|
2971
|
+
},
|
|
2972
|
+
"required": [
|
|
2973
|
+
"workspaceId",
|
|
2974
|
+
"workspaceEpoch",
|
|
2975
|
+
"operation",
|
|
2976
|
+
"args"
|
|
2977
|
+
],
|
|
2978
|
+
"additionalProperties": false
|
|
2979
|
+
},
|
|
2980
|
+
"outputSchema": {
|
|
2981
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
2982
|
+
"type": "object",
|
|
2983
|
+
"properties": {
|
|
2984
|
+
"ok": {
|
|
2985
|
+
"type": "boolean"
|
|
2986
|
+
},
|
|
2987
|
+
"workspaceId": {
|
|
2988
|
+
"type": [
|
|
2989
|
+
"string",
|
|
2990
|
+
"null"
|
|
2991
|
+
]
|
|
2992
|
+
},
|
|
2993
|
+
"workspaceEpoch": {
|
|
2994
|
+
"type": [
|
|
2995
|
+
"string",
|
|
2996
|
+
"null"
|
|
2997
|
+
]
|
|
2998
|
+
},
|
|
2999
|
+
"data": {
|
|
3000
|
+
"anyOf": [
|
|
3001
|
+
{
|
|
3002
|
+
"type": "object",
|
|
3003
|
+
"properties": {},
|
|
3004
|
+
"additionalProperties": {}
|
|
3005
|
+
},
|
|
3006
|
+
{
|
|
3007
|
+
"type": "null"
|
|
3008
|
+
}
|
|
3009
|
+
]
|
|
3010
|
+
},
|
|
3011
|
+
"error": {
|
|
3012
|
+
"anyOf": [
|
|
3013
|
+
{
|
|
3014
|
+
"type": "object",
|
|
3015
|
+
"properties": {
|
|
3016
|
+
"code": {
|
|
3017
|
+
"type": "string"
|
|
3018
|
+
},
|
|
3019
|
+
"message": {
|
|
3020
|
+
"type": "string"
|
|
3021
|
+
},
|
|
3022
|
+
"retryable": {
|
|
3023
|
+
"type": "boolean"
|
|
3024
|
+
},
|
|
3025
|
+
"recovery": {
|
|
3026
|
+
"type": "string"
|
|
3027
|
+
},
|
|
3028
|
+
"detail": {
|
|
3029
|
+
"type": "object",
|
|
3030
|
+
"propertyNames": {
|
|
3031
|
+
"type": "string"
|
|
3032
|
+
},
|
|
3033
|
+
"additionalProperties": {}
|
|
3034
|
+
}
|
|
3035
|
+
},
|
|
3036
|
+
"required": [
|
|
3037
|
+
"code",
|
|
3038
|
+
"message",
|
|
3039
|
+
"retryable"
|
|
3040
|
+
],
|
|
3041
|
+
"additionalProperties": false
|
|
3042
|
+
},
|
|
3043
|
+
{
|
|
3044
|
+
"type": "null"
|
|
3045
|
+
}
|
|
3046
|
+
]
|
|
3047
|
+
},
|
|
3048
|
+
"warnings": {
|
|
3049
|
+
"type": "array",
|
|
3050
|
+
"items": {
|
|
3051
|
+
"type": "string"
|
|
3052
|
+
}
|
|
3053
|
+
},
|
|
3054
|
+
"truncated": {
|
|
3055
|
+
"type": "boolean"
|
|
3056
|
+
},
|
|
3057
|
+
"nextCursor": {
|
|
3058
|
+
"type": [
|
|
3059
|
+
"string",
|
|
3060
|
+
"null"
|
|
3061
|
+
]
|
|
3062
|
+
}
|
|
3063
|
+
},
|
|
3064
|
+
"required": [
|
|
3065
|
+
"ok",
|
|
3066
|
+
"workspaceId",
|
|
3067
|
+
"workspaceEpoch",
|
|
3068
|
+
"data",
|
|
3069
|
+
"error",
|
|
3070
|
+
"warnings",
|
|
3071
|
+
"truncated",
|
|
3072
|
+
"nextCursor"
|
|
3073
|
+
],
|
|
3074
|
+
"additionalProperties": false
|
|
3075
|
+
}
|
|
3076
|
+
},
|
|
3077
|
+
{
|
|
3078
|
+
"name": "dodo_web",
|
|
3079
|
+
"title": "Fetch a public URL",
|
|
3080
|
+
"description": "Gateway: SSRF-guarded outbound HTTPS fetch (only when the owner enabled allowWebFetch). Set operation to one of: fetch_url. Put that operation's own arguments in args (never workspaceId/workspaceEpoch — they come from the top level only). Identical authorization to calling the operation directly: its own OAuth scope, workspace access, trust policy, local approvals, path/secret guards, hash checks and audit all apply. Call dodo_discover with operation=\"<name>\" for the exact input schema.",
|
|
3081
|
+
"requiredScope": "dodo:read",
|
|
3082
|
+
"annotations": {
|
|
3083
|
+
"readOnlyHint": true,
|
|
3084
|
+
"destructiveHint": false,
|
|
3085
|
+
"idempotentHint": false,
|
|
3086
|
+
"openWorldHint": true
|
|
3087
|
+
},
|
|
3088
|
+
"domain": "web",
|
|
3089
|
+
"operations": [
|
|
3090
|
+
"fetch_url"
|
|
3091
|
+
],
|
|
3092
|
+
"inputSchema": {
|
|
3093
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3094
|
+
"type": "object",
|
|
3095
|
+
"properties": {
|
|
3096
|
+
"targetProjectId": {
|
|
3097
|
+
"description": "Explicit owner-registered target; use its project_overview context",
|
|
3098
|
+
"type": "string",
|
|
3099
|
+
"pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
|
|
3100
|
+
},
|
|
3101
|
+
"workspaceId": {
|
|
3102
|
+
"type": "string",
|
|
3103
|
+
"minLength": 1,
|
|
3104
|
+
"maxLength": 128,
|
|
3105
|
+
"description": "Workspace id from project_overview"
|
|
3106
|
+
},
|
|
3107
|
+
"workspaceEpoch": {
|
|
3108
|
+
"type": "string",
|
|
3109
|
+
"minLength": 1,
|
|
3110
|
+
"maxLength": 128,
|
|
3111
|
+
"description": "Workspace epoch from project_overview (changes on server restart or workspace switch)"
|
|
3112
|
+
},
|
|
3113
|
+
"operation": {
|
|
3114
|
+
"type": "string",
|
|
3115
|
+
"enum": [
|
|
3116
|
+
"fetch_url"
|
|
3117
|
+
],
|
|
3118
|
+
"description": "Target operation to invoke"
|
|
3119
|
+
},
|
|
3120
|
+
"args": {
|
|
3121
|
+
"default": {},
|
|
3122
|
+
"description": "The selected operation's own arguments, exactly as its schema defines (dodo_discover returns it). Never include workspaceId/workspaceEpoch here.",
|
|
3123
|
+
"type": "object",
|
|
3124
|
+
"propertyNames": {
|
|
3125
|
+
"type": "string"
|
|
3126
|
+
},
|
|
3127
|
+
"additionalProperties": {}
|
|
3128
|
+
}
|
|
3129
|
+
},
|
|
3130
|
+
"required": [
|
|
3131
|
+
"workspaceId",
|
|
3132
|
+
"workspaceEpoch",
|
|
3133
|
+
"operation",
|
|
3134
|
+
"args"
|
|
3135
|
+
],
|
|
3136
|
+
"additionalProperties": false
|
|
3137
|
+
},
|
|
3138
|
+
"outputSchema": {
|
|
3139
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3140
|
+
"type": "object",
|
|
3141
|
+
"properties": {
|
|
3142
|
+
"ok": {
|
|
3143
|
+
"type": "boolean"
|
|
3144
|
+
},
|
|
3145
|
+
"workspaceId": {
|
|
3146
|
+
"type": [
|
|
3147
|
+
"string",
|
|
3148
|
+
"null"
|
|
3149
|
+
]
|
|
3150
|
+
},
|
|
3151
|
+
"workspaceEpoch": {
|
|
3152
|
+
"type": [
|
|
3153
|
+
"string",
|
|
3154
|
+
"null"
|
|
3155
|
+
]
|
|
3156
|
+
},
|
|
3157
|
+
"data": {
|
|
3158
|
+
"anyOf": [
|
|
3159
|
+
{
|
|
3160
|
+
"type": "object",
|
|
3161
|
+
"properties": {},
|
|
3162
|
+
"additionalProperties": {}
|
|
3163
|
+
},
|
|
3164
|
+
{
|
|
3165
|
+
"type": "null"
|
|
3166
|
+
}
|
|
3167
|
+
]
|
|
3168
|
+
},
|
|
3169
|
+
"error": {
|
|
3170
|
+
"anyOf": [
|
|
3171
|
+
{
|
|
3172
|
+
"type": "object",
|
|
3173
|
+
"properties": {
|
|
3174
|
+
"code": {
|
|
3175
|
+
"type": "string"
|
|
3176
|
+
},
|
|
3177
|
+
"message": {
|
|
3178
|
+
"type": "string"
|
|
3179
|
+
},
|
|
3180
|
+
"retryable": {
|
|
3181
|
+
"type": "boolean"
|
|
3182
|
+
},
|
|
3183
|
+
"recovery": {
|
|
3184
|
+
"type": "string"
|
|
3185
|
+
},
|
|
3186
|
+
"detail": {
|
|
3187
|
+
"type": "object",
|
|
3188
|
+
"propertyNames": {
|
|
3189
|
+
"type": "string"
|
|
3190
|
+
},
|
|
3191
|
+
"additionalProperties": {}
|
|
3192
|
+
}
|
|
3193
|
+
},
|
|
3194
|
+
"required": [
|
|
3195
|
+
"code",
|
|
3196
|
+
"message",
|
|
3197
|
+
"retryable"
|
|
3198
|
+
],
|
|
3199
|
+
"additionalProperties": false
|
|
3200
|
+
},
|
|
3201
|
+
{
|
|
3202
|
+
"type": "null"
|
|
3203
|
+
}
|
|
3204
|
+
]
|
|
3205
|
+
},
|
|
3206
|
+
"warnings": {
|
|
3207
|
+
"type": "array",
|
|
3208
|
+
"items": {
|
|
3209
|
+
"type": "string"
|
|
3210
|
+
}
|
|
3211
|
+
},
|
|
3212
|
+
"truncated": {
|
|
3213
|
+
"type": "boolean"
|
|
3214
|
+
},
|
|
3215
|
+
"nextCursor": {
|
|
3216
|
+
"type": [
|
|
3217
|
+
"string",
|
|
3218
|
+
"null"
|
|
3219
|
+
]
|
|
3220
|
+
}
|
|
3221
|
+
},
|
|
3222
|
+
"required": [
|
|
3223
|
+
"ok",
|
|
3224
|
+
"workspaceId",
|
|
3225
|
+
"workspaceEpoch",
|
|
3226
|
+
"data",
|
|
3227
|
+
"error",
|
|
3228
|
+
"warnings",
|
|
3229
|
+
"truncated",
|
|
3230
|
+
"nextCursor"
|
|
3231
|
+
],
|
|
3232
|
+
"additionalProperties": false
|
|
3233
|
+
}
|
|
3234
|
+
}
|
|
3235
|
+
]
|
|
3236
|
+
}
|