HTTP API reference
HTTP API reference--auto-generated from the generated OpenAPI spec.
This file is generated from the generated OpenAPI spec by
bun run docs:api. Do not edit by hand — changes will be overwritten on the next CI run.
Authentication
All endpoints are protected by OPENCORVUS_SERVER_PASSWORD when it is set. Clients must use HTTP Basic Auth with username OPENCORVUS_SERVER_USERNAME or the default opencorvus, and password = OPENCORVUS_SERVER_PASSWORD.
Directory Scope
OpenAPI marks project-scoped operations with a directory query parameter. These task record routes are keyed by taskID and do not require directory: GET /task/{taskID}, /status, /board, /progress, /events, /brief, /transcript, /interactions, /bindings, /operator-model-context, and task conversation read routes. Project lists, task creation, task writes, browser preview routes, and project archive downloads remain project-scoped.
Endpoints
Global
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /event | Subscribe to events | event.subscribe |
| GET | /global/agents | List primary assistants for global configuration | global.agents.list |
| GET | /global/automations | List scheduled automations Errors: BadRequestError. | global.automations.list |
| POST | /global/automations | Create a scheduled automation Body: executionMode, model, name, prompt, reasoningEffort, recurrence, target; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | global.automations.create |
| DELETE | /global/automations/{id} | Delete a scheduled automation Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | global.automations.delete |
| PATCH | /global/automations/{id} | Update a scheduled automation Body: executionMode, model, name, prompt, reasoningEffort, recurrence, status, target; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | global.automations.update |
| POST | /global/automations/{id}/run | Run a scheduled automation now Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | global.automations.run |
| GET | /global/automations/{id}/runs | List scheduled automation runs Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | global.automations.runs |
| POST | /global/chat | Create Chat in a temporary project Body: model; Errors: BadRequestError. | global.chat.create |
| GET | /global/composer-expert-squads | Search global Composer expert squads Errors: BadRequestError, UnknownError. | global.composerExpertSquads |
| GET | /global/composer-references | List global Composer references Errors: UnknownError. | global.composerReferences |
| GET | /global/config | Get global configuration Errors: NonCanonicalConfigFileError. | global.config.get |
| PATCH | /global/config | Update global configuration Errors: AuthReadError, BadRequestError, NonCanonicalConfigFileError. | global.config.update |
| GET | /global/db/mysql/export | Export MySQL transfer snapshot | global.db.mysql.export |
| POST | /global/db/mysql/import | Import MySQL transfer snapshot Body: snapshot; Errors: BadRequestError, OwnedPromptControllersError. | global.db.mysql.import |
| GET | /global/db/mysql/schema | Export MySQL staging schema | global.db.mysql.schema |
| POST | /global/dispose | Dispose instance Errors: OwnedPromptControllersError. | global.dispose |
| GET | /global/event | Get global events | global.event |
| GET | /global/health | Get health | global.health |
| POST | /global/projects/anonymous | Create an anonymous project | global.projects.anonymous |
| GET | /global/projects/discover | Discover local OpenCorvus projects Errors: BadRequestError, UnknownError. | global.projects.discover |
| GET | /global/providers | List providers for a new global task | global.providers.list |
| GET | /global/providers/auth | Get global Provider auth methods | global.providers.auth |
| POST | /global/providers/discover-models | Discover global Provider models Body: api, apiKey, providerID; Errors: AuthReadError, BadRequestError. | global.providers.discover.models |
| POST | /global/providers/models/refresh | Refresh global configured provider model lists Errors: AuthReadError. | global.providers.models.refresh |
| POST | /global/providers/refresh | Refresh the global provider registry | global.providers.refresh |
| DELETE | /global/providers/{providerID} | Delete a global provider Errors: AuthReadError, BadRequestError. | global.providers.remove |
| GET | /global/providers/{providerID}/account-usage | Get global Provider account usage Errors: AuthReadError. | global.providers.account.usage |
| POST | /global/providers/{providerID}/auth/execute | Execute global Provider auth Body: inputs, method; Errors: AuthReadError, BadRequestError. | global.providers.auth.execute |
| POST | /global/providers/{providerID}/auth/prompts | Get global Provider auth prompts Body: inputs, method; Errors: BadRequestError. | global.providers.auth.prompts |
| POST | /global/providers/{providerID}/oauth/authorize | Authorize a global Provider subscription Body: inputs, method; Errors: BadRequestError. | global.providers.oauth.authorize |
| POST | /global/providers/{providerID}/oauth/callback | Complete global Provider subscription authorization Body: code, method; Errors: AuthReadError, BadRequestError. | global.providers.oauth.callback |
| POST | /global/providers/{providerID}/test | Test a global Provider connection Body: modelID; Errors: AuthReadError, BadRequestError. | global.providers.test |
| POST | /global/skill/install | Install a global Skill market source Body: kind, policy, value; Errors: BadRequestError. | global.skill.install |
| GET | /global/skill/market | List the global Skill market | global.skill.market |
| GET | /global/tasks | List tasks across projects | task.global.list |
| POST | /global/tasks | Create a task in an implicit project Body: artifactSources, attachments, budget, channelBinding, checks, directory, expectedPackageDigest, metadata, model, priority, productPillar, project, promptProfile, request, requestID, source, title; Errors: BadRequestError, ExternalChildTaskLineageError, LogFileNotFoundError, NotFoundError, TaskCreationIdempotencyConflictError, TaskCreatorAuthorityError, TaskCreatorSessionError, TaskExpectedPackageDigestConflictError, TaskPackageRevisionBindingError. | task.global.create |
| GET | /global/usage | Get natural-period Provider usage Errors: BadRequestError. | global.usage |
| POST | /global/work | Create Work in a temporary project Body: model; Errors: BadRequestError. | global.work.create |
| POST | /instance/dispose | Dispose instance Errors: OwnedPromptControllersError. | instance.dispose |
| GET | /log | Read logs Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | log.read |
| POST | /log | Write log batch Body: entries; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | app.log |
| GET | /log/export | Export log support bundle | log.export |
| GET | /log/files | List log files | log.files |
| GET | /log/tail | Read recent logs Errors: LogFileNotFoundError, NotFoundError. | log.tail |
| POST | /restart | Restart the server | server.restart |
| POST | /shutdown | Shutdown the server | server.shutdown |
Authentication
| Method | Path | Summary | operationId |
|---|---|---|---|
| DELETE | /auth/{providerID} | Remove auth credentials Errors: AuthReadError, BadRequestError. | auth.remove |
| PUT | /auth/{providerID} | Set auth credentials Errors: AuthReadError, BadRequestError. | auth.set |
Configuration
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /command | List commands Errors: UnknownError. | command.list |
| GET | /config | Get configuration Errors: AuthReadError, NonCanonicalConfigFileError. | config.get |
| PATCH | /config | Update configuration (JSON Merge Patch) Errors: AuthReadError, BadRequestError, NonCanonicalConfigFileError. | config.update |
| GET | /config/prompt | List prompt catalog Errors: AuthReadError. | config.prompt |
| GET | /config/providers | List config providers Errors: AuthReadError. | config.providers |
| POST | /config/proxy/test | Test network proxy Errors: NetworkProxyTestResponse. | config.proxy.test |
| GET | /formatter | Get formatter status | formatter.status |
| GET | /path | Get paths | path.get |
Project
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /project | List all projects | project.list |
| DELETE | /project/current | Delete current project Body: reason, surface; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | project.current.delete |
| GET | /project/current | Get current project | project.current |
| PATCH | /project/current | Update current project Body: name; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | project.current.update |
| GET | /project/current/cleanup-candidates | Inspect current project cleanup candidates Errors: BadRequestError, LogFileNotFoundError, NotFoundError, WorktreeOwnershipObservationError. | project.current.cleanupCandidates |
| POST | /project/current/init-git | Initialize git in current directory Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | project.current.initGit |
| POST | /project/current/promote-anonymous | Convert current anonymous project to a named project Body: destinationParent, name; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | project.current.promoteAnonymous |
| DELETE | /project/current/worktrees | Delete a current project worktree Errors: BadRequestError, LogFileNotFoundError, NotFoundError, WorktreeOwnershipObservationError. | project.current.worktrees.delete |
| GET | /project/current/worktrees | List current project worktrees Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | project.current.worktrees |
| PATCH | /project/{projectID} | Update project Body: commands, icon, name; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | project.update |
| GET | /vcs | Get VCS info Errors: UnknownError. | vcs.get |
| POST | /vcs/branch | Switch local VCS branch Body: branch; Errors: UnknownError, VcsPrerequisiteError. | vcs.switchBranch |
| GET | /vcs/branches | List local VCS branches Errors: UnknownError, VcsPrerequisiteError. | vcs.branches |
| POST | /vcs/commit | Commit current VCS changes Body: message; Errors: UnknownError, VcsPrerequisiteError. | vcs.commit |
| POST | /vcs/commit-message/stream | Generate a Git commit message with streaming AI Body: sessionID, taskID; Errors: UnknownError. | vcs.commitMessage.stream |
| GET | /vcs/diff | Get VCS diff Errors: UnknownError, VcsPrerequisiteError. | vcs.diff |
| POST | /vcs/push | Push current VCS branch Errors: UnknownError, VcsPrerequisiteError. | vcs.push |
Task / Orchestrator
| Method | Path | Summary | operationId |
|---|---|---|---|
| DELETE | /goal/{goalID} | Delete goal Errors: LogFileNotFoundError, NotFoundError. | goal.delete |
| PATCH | /goal/{goalID} | Update goal title Body: title; Errors: LogFileNotFoundError, NotFoundError. | goal.updateTitle |
| POST | /interaction/{interactionID}/reject | Reject interaction Body: message; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | interaction.reject |
| POST | /interaction/{interactionID}/reply | Reply to interaction Body: answers, decision, message; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | interaction.reply |
| DELETE | /mailbox | Delete selected mailbox items Body: messageIDs; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | mailbox.deleteMany |
| GET | /mailbox | List the global mailbox Errors: BadRequestError. | mailbox.list |
| PATCH | /mailbox/read-all | Mark all active mailbox items as read | mailbox.readAll |
| DELETE | /mailbox/{messageID} | Delete a mailbox item Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | mailbox.delete |
| PATCH | /mailbox/{messageID} | Update a mailbox item Body: action; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | mailbox.acknowledge |
| GET | /mission | List Missions | mission.list |
| POST | /mission/draft | Create a Mission draft Body: expertSquadIDs, productPillar, request, title; Errors: BadRequestError. | mission.createDraft |
| POST | /mission/wake | Wake the Mission agent Body: attachments, expertSquadIDs, missionID, model, productPillar, text; Errors: AuthReadError, BadRequestError, MissionExecutionClosingError, MissionExpertSquadSnapshotMismatchError. | mission.wake |
| DELETE | /mission/{missionID} | Delete a Mission Body: reason, surface; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | mission.delete |
| POST | /mission/{missionID}/abort | Abort a Mission Body: reason, surface; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | mission.abort |
| GET | /mission/{missionID}/activity-cursor | Get Mission durable activity cursor Errors: LogFileNotFoundError, NotFoundError. | mission.activityCursor |
| PATCH | /mission/{missionID}/archive | Archive or restore a Mission Body: archived, reason, surface; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | mission.setArchived |
| POST | /mission/{missionID}/dispatch | Dispatch a Mission draft Body: model; Errors: AuthReadError, BadRequestError, LogFileNotFoundError, MissionExecutionClosingError, NotFoundError. | mission.dispatch |
| GET | /mission/{missionID}/project-archive | Download Mission project archive Errors: LogFileNotFoundError, NotFoundError. | mission.projectArchive |
| GET | /mission/{missionID}/status | Get Mission status Errors: LogFileNotFoundError, NotFoundError. | mission.status |
| PATCH | /mission/{missionID}/title | Rename a Mission Body: title; Errors: LogFileNotFoundError, NotFoundError. | mission.rename |
| POST | /task | Create task Body: artifactSources, attachments, budget, channelBinding, checks, directory, expectedPackageDigest, metadata, model, priority, productPillar, project, promptProfile, request, requestID, source, title; Errors: BadRequestError, ExternalChildTaskLineageError, LogFileNotFoundError, NotFoundError, TaskCreationIdempotencyConflictError, TaskCreatorAuthorityError, TaskCreatorSessionError, TaskExpectedPackageDigestConflictError, TaskPackageRevisionBindingError. | task.create |
| DELETE | /task/{taskID} | Delete task Body: reason, surface; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskArtifactDeletionCommittedError, TaskCancellationIncompleteError, UnknownError. | task.delete |
| GET | /task/{taskID} | Get task Errors: LogFileNotFoundError, NotFoundError. | task.get |
| PATCH | /task/{taskID}/archive | Archive or restore task Body: archived, reason, surface; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | task.setArchived |
| POST | /task/{taskID}/artifact-read | Read one exact Task deliverable Artifact chunk Body: byte_offset, locator, max_bytes; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, UnknownError. | task.readConversationArtifact |
| GET | /task/{taskID}/bindings | List channel bindings for a task | task.bindings |
| GET | /task/{taskID}/board | Get task board Errors: LogFileNotFoundError, NotFoundError. | task.board |
| GET | /task/{taskID}/brief | Get task brief Errors: LogFileNotFoundError, NotFoundError. | task.brief |
| GET | /task/{taskID}/browser-preview | Resolve task browser preview target Errors: BadRequestError, BrowserPreviewEvidenceCorruptionError, BrowserPreviewTargetCorruptionError, LogFileNotFoundError, NotFoundError. | browserPreview.taskTarget |
| POST | /task/{taskID}/browser-preview/capture | Capture browser preview verification evidence Body: targetID, viewportIDs; Errors: BadRequestError, BrowserPreviewTargetCorruptionError, LogFileNotFoundError, NotFoundError. | browserPreview.captureTaskTarget |
| POST | /task/{taskID}/browser-preview/compare | Compare browser preview regions against source visual evidence Body: inlineBindings, output, targetID; Errors: BadRequestError, BrowserPreviewTargetCorruptionError, LogFileNotFoundError, NotFoundError. | browserPreview.compareTaskTargetRegions |
| GET | /task/{taskID}/browser-preview/evidence/{evidenceID} | Read browser preview verification evidence Errors: BadRequestError, BrowserPreviewEvidenceCorruptionError, LogFileNotFoundError, NotFoundError. | browserPreview.readTaskEvidence |
| GET | /task/{taskID}/browser-preview/evidence/{evidenceID}/artifact/{artifactName} | Read browser preview region comparison artifact Errors: BrowserPreviewEvidenceCorruptionError, LogFileNotFoundError, NotFoundError. | browserPreview.readTaskEvidenceArtifact |
| GET | /task/{taskID}/browser-preview/evidence/{evidenceID}/capture.png | Read browser preview evidence screenshot Errors: BrowserPreviewEvidenceCorruptionError, LogFileNotFoundError, NotFoundError. | browserPreview.readTaskEvidenceCapture |
| PUT | /task/{taskID}/browser-preview/target | Set task browser preview target Body: targetID, url, viewports; Errors: BrowserPreviewTargetCorruptionError, LogFileNotFoundError, NotFoundError. | browserPreview.selectTaskTarget |
| PATCH | /task/{taskID}/budget | Update task budget Body: budget; Errors: LogFileNotFoundError, NotFoundError. | task.updateBudget |
| GET | /task/{taskID}/build-observation/{artifactID}/content | Read an exact Build observation content range Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | task.buildObservationContent |
| POST | /task/{taskID}/cancel | Cancel task Body: reason, surface; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | task.cancel |
| GET | /task/{taskID}/conversation | Hydrate task conversation state Errors: LogFileNotFoundError, NotFoundError. | task.conversation |
| GET | /task/{taskID}/conversation/events | Page task conversation replay events Errors: LogFileNotFoundError, NotFoundError. | task.conversation.events |
| GET | /task/{taskID}/conversation/history | Page older task conversation transcript Errors: LogFileNotFoundError, NotFoundError. | task.conversation.history |
| GET | /task/{taskID}/conversation/session/{sessionID} | Get one task conversation session transcript Errors: LogFileNotFoundError, NotFoundError. | task.conversation.session |
| GET | /task/{taskID}/debug/task-root-ingresses | Get Task-root ingress debug projection Errors: LogFileNotFoundError, NotFoundError. | task.debug.taskRootIngresses |
| GET | /task/{taskID}/events | Subscribe to task events | task.events |
| POST | /task/{taskID}/inject | Inject message into running task Body: message; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | task.inject |
| GET | /task/{taskID}/interactions | List task interactions Errors: LogFileNotFoundError, NotFoundError. | task.interactions |
| POST | /task/{taskID}/message | Handle task message Body: attachments, channel, metadata, model, resolvedRole, source, text, user_id; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError, TaskPackageRevisionBindingError. | task.message |
| GET | /task/{taskID}/operator-model-context | Get task operator model context Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | task.operatorModelContext |
| GET | /task/{taskID}/progress | Get task progress Errors: LogFileNotFoundError, NotFoundError. | task.progress |
| GET | /task/{taskID}/project-archive | Download task project archive Errors: LogFileNotFoundError, NotFoundError. | task.projectArchive |
| POST | /task/{taskID}/rewind | Rewind the visible Task conversation timeline Body: anchor, reason; Errors: LogFileNotFoundError, NotFoundError. | task.rewind |
| POST | /task/{taskID}/rewind/clear | Clear the Task conversation visibility cursor Errors: LogFileNotFoundError, NotFoundError. | task.clearRewindCursor |
| POST | /task/{taskID}/session/{sessionID}/cancel | Cancel a task agent session Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | task.session.cancel |
| POST | /task/{taskID}/session/{sessionID}/operator-steer | Steer a task agent session through operator coordination Body: message; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, OperatorSteerTargetError, TaskCancellationIncompleteError. | task.session.operatorSteer |
| GET | /task/{taskID}/status | Get task status Errors: LogFileNotFoundError, NotFoundError. | task.status |
| PATCH | /task/{taskID}/title | Update task title Body: title; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | task.updateTitle |
| GET | /task/{taskID}/trace | Get task AgentTrace events (all sessions) Errors: LogFileNotFoundError, NotFoundError. | task.trace |
| GET | /task/{taskID}/transcript | Get task transcript Errors: LogFileNotFoundError, NotFoundError. | task.transcript |
| GET | /task/{taskID}/turn-artifacts | Project terminal artifacts onto the owning Task turn Errors: LogFileNotFoundError, NotFoundError. | task.turnArtifacts |
| GET | /tasks | List project tasks | task.list |
| GET | /work-ledger | List Work Ledger rows Errors: BadRequestError. | workLedger.list |
| GET | /work-ledger/archive | List archived Work Ledger rows Errors: BadRequestError. | workLedger.listArchived |
| GET | /work-ledger/events | Subscribe to Work Ledger change notifications | workLedger.events |
| PATCH | /work-ledger/item/{kind}/{itemID}/pin | Pin or unpin a Work Ledger item Body: pinned; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | workLedger.setItemPinned |
| PATCH | /work-ledger/project/{projectID}/pin | Pin or unpin a Work Ledger project Body: pinned; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | workLedger.setProjectPinned |
Session
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /session | List sessions | session.list |
| POST | /session | Create session Body: kind, metadata, parentID, permission, title; Errors: BadRequestError, MissionSessionAuthorityError. | session.create |
| GET | /session/global | List sessions across projects Errors: BadRequestError. | session.listGlobal |
| GET | /session/status | Get session status Errors: BadRequestError. | session.status |
| DELETE | /session/{sessionID} | Delete session Errors: BadRequestError, LogFileNotFoundError, MissionSessionAuthorityError, NotFoundError, TaskArtifactDeletionCommittedError, TaskBoundSessionDeletionError, TaskCancellationIncompleteError, UnknownError. | session.delete |
| GET | /session/{sessionID} | Get session Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | session.get |
| PATCH | /session/{sessionID} | Update session Body: time, title; Errors: BadRequestError, LogFileNotFoundError, MissionSessionAuthorityError, NotFoundError. | session.update |
| POST | /session/{sessionID}/abort | Abort session Errors: BadRequestError, LogFileNotFoundError, MissionSessionAuthorityError, NotFoundError, TaskCancellationIncompleteError. | session.abort |
| GET | /session/{sessionID}/children | Get session children Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | session.children |
| POST | /session/{sessionID}/command | Send command Body: agent, arguments, command, messageID, model, parts, variant; Errors: BadRequestError, LogFileNotFoundError, MissionSessionAuthorityError, NotFoundError. | session.command |
| GET | /session/{sessionID}/config | Get session effective configuration Errors: AuthReadError, BadRequestError, LogFileNotFoundError, NotFoundError. | session.config.get |
| PATCH | /session/{sessionID}/config | Update session configuration overlay Body: agent, expert_squads, model, prompt, prompt_profile, runtime_templates, skill_mounts; Errors: AuthReadError, BadRequestError, LogFileNotFoundError, NotFoundError, TaskPackageRevisionBindingError, TaskPromptProfileImmutableError. | session.config.update |
| GET | /session/{sessionID}/conversation | Hydrate session conversation state Errors: LogFileNotFoundError, NotFoundError. | session.conversation |
| GET | /session/{sessionID}/conversation/history | Page older session conversation transcript Errors: LogFileNotFoundError, NotFoundError. | session.conversation.history |
| GET | /session/{sessionID}/diff | Get message diff | session.diff |
| GET | /session/{sessionID}/events | Subscribe to session events | session.events |
| POST | /session/{sessionID}/fork | Fork session Body: messageID; Errors: MissionSessionAuthorityError. | session.fork |
| POST | /session/{sessionID}/init | Initialize session Body: messageID, modelID, providerID; Errors: BadRequestError, LogFileNotFoundError, MissionSessionAuthorityError, NotFoundError. | session.init |
| GET | /session/{sessionID}/interactive-artifact/{artifactID} | Read session interactive artifact Errors: BadRequestError, InteractiveArtifactCorruptionError, LogFileNotFoundError, NotFoundError. | interactiveArtifact.readSessionArtifact |
| GET | /session/{sessionID}/interactive-artifact/{artifactID}/mcp-app/events | Subscribe to MCP App capability changes Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | interactiveArtifact.eventsMcpApp |
| POST | /session/{sessionID}/interactive-artifact/{artifactID}/mcp-app/request | Forward an MCP App request Errors: BadRequestError, LogFileNotFoundError, McpAppHostForbiddenError, NotFoundError, UnknownError. | interactiveArtifact.requestMcpApp |
| GET | /session/{sessionID}/message | Get session messages Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | session.messages |
| POST | /session/{sessionID}/message | Send message Body: agent, format, messageID, model, parts, variant; Errors: AuthReadError, BadRequestError, LogFileNotFoundError, NotFoundError, PublicSessionPromptIdentityConflictError. | session.prompt |
| DELETE | /session/{sessionID}/message/{messageID} | Delete message Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | session.deleteMessage |
| GET | /session/{sessionID}/message/{messageID} | Get message Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | session.message |
| DELETE | /session/{sessionID}/message/{messageID}/part/{partID} | (no summary) Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | part.delete |
| PATCH | /session/{sessionID}/message/{messageID}/part/{partID} | (no summary) Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | part.update |
| POST | /session/{sessionID}/shell | Run shell command Body: agent, command, model; Errors: BadRequestError, LogFileNotFoundError, MissionSessionAuthorityError, NotFoundError. | session.shell |
| POST | /session/{sessionID}/summarize | Summarize session Body: auto, focus, modelID, providerID; Errors: BadRequestError, LogFileNotFoundError, MissionSessionAuthorityError, NotFoundError. | session.summarize |
| GET | /session/{sessionID}/todo | Get session todos Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | session.todo |
| GET | /session/{sessionID}/trace | Get session AgentTrace events | session.trace |
| GET | /session/{sessionID}/turn-artifacts | Project Mission child Task artifacts onto their owning turns Errors: LogFileNotFoundError, NotFoundError. | session.turnArtifacts |
Coding
| Method | Path | Summary | operationId |
|---|---|---|---|
| POST | /coding/chat/session | Create right sidebar Chat session Body: model; Errors: AuthReadError. | coding.chat.session.create |
| DELETE | /coding/chat/session/{sessionID} | Delete right sidebar Chat session Errors: LogFileNotFoundError, NotFoundError. | coding.chat.session.delete |
| GET | /coding/chat/session/{sessionID} | Claim right sidebar Chat session Errors: LogFileNotFoundError, NotFoundError. | coding.chat.session.get |
| PATCH | /coding/chat/session/{sessionID} | Update right sidebar Chat session Body: title; Errors: LogFileNotFoundError, NotFoundError. | coding.chat.session.update |
| POST | /coding/chat/session/{sessionID}/abort | Abort right sidebar Chat session Errors: LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | coding.chat.session.abort |
| PATCH | /coding/chat/session/{sessionID}/archive | Archive or restore right sidebar Chat session Body: archived; Errors: LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | coding.chat.session.setArchived |
| PATCH | /coding/chat/session/{sessionID}/selection | Update right sidebar Chat task selection Body: taskID; Errors: LogFileNotFoundError, NotFoundError. | coding.chat.session.selection.update |
| GET | /coding/chat/sessions | List right sidebar Chat sessions Errors: BadRequestError. | coding.chat.sessions.list |
| POST | /coding/cli/open | Open coding CLI Body: cliID, cwd, terminalProfileID; Errors: BadRequestError. | coding.cli.open |
| GET | /coding/cli/profiles | List installed coding CLIs Errors: BadRequestError. | coding.cli.profiles |
| POST | /coding/work/session | Create right sidebar Work session Body: model; Errors: AuthReadError. | coding.work.session.create |
| DELETE | /coding/work/session/{sessionID} | Delete right sidebar Work session Errors: LogFileNotFoundError, NotFoundError. | coding.work.session.delete |
| GET | /coding/work/session/{sessionID} | Claim right sidebar Work session Errors: LogFileNotFoundError, NotFoundError. | coding.work.session.get |
| PATCH | /coding/work/session/{sessionID} | Update right sidebar Work session Body: title; Errors: LogFileNotFoundError, NotFoundError. | coding.work.session.update |
| POST | /coding/work/session/{sessionID}/abort | Abort right sidebar Work session Errors: LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | coding.work.session.abort |
| PATCH | /coding/work/session/{sessionID}/archive | Archive or restore right sidebar Work session Body: archived; Errors: LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | coding.work.session.setArchived |
| PATCH | /coding/work/session/{sessionID}/selection | Update right sidebar Work task selection Body: taskID; Errors: LogFileNotFoundError, NotFoundError. | coding.work.session.selection.update |
| GET | /coding/work/sessions | List right sidebar Work sessions Errors: BadRequestError. | coding.work.sessions.list |
Channel
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /channel | List channels | channel.list |
| POST | /channel/attachment | Create a temporary channel attachment URL Body: data, filename, mime; Errors: BadRequestError. | channel.attachment.create |
| GET | /channel/attachment/{id} | Read a temporary channel attachment Errors: LogFileNotFoundError, NotFoundError. | channel.attachment.get |
| POST | /channel/message | Handle channel message Body: allow_create, allow_session_mutation, attachments, bind, channel, model, platform, request_id, source, task_id, text, thread, user_id. | channel.message |
| GET | /channel/runtime | Get managed channel runtime | channel.runtime |
| POST | /channel/runtime/restart | Restart managed channel runtime | channel.runtime.restart |
Gateway
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /gateway/capabilities | List gateway capabilities | gateway.capabilities |
| POST | /gateway/channel/{platform}/message | Handle gateway channel message Body: allow_create, allow_session_mutation, attachments, bind, channel, model, platform, request_id, source, task_id, text, thread, user_id. | gateway.channel.message |
| POST | /gateway/control/action | Run gateway control action Body: acceptance_specs, action, allow_create, artifact_locator_ref, artifact_transport_version, artifact_types, byte_offset, channel, checks, created_at_or_after_ms, created_before_ms, delivery, directory, evidence_read_refs, expectedPackageDigest, goalID, goal_ids, id, import_source_task_ids, includeInteractions, interactionID, kinds, labels, match, max_bytes, media_types, message, metadata, model, page_number, platform, producer_agent_ids, producer_session_ids, producer_squad_ids, productPillar, promptProfile, query, reason, reply, request, request_id, sessionID, sort, source, sources, summary, taskID, taskIDs, task_acceptances, terminal_lifecycle_reference, text, thread, title, user_id, version_scope, workflowCursor. | gateway.control.action |
| POST | /gateway/control/message | Handle gateway control message Body: allow_create, attachments, channel, model, request_id, sessionID, source, surface, taskID, text, thread, user_id. | gateway.control.message |
| GET | /gateway/stats | Get gateway stats | gateway.stats |
Attachment
| Method | Path | Summary | operationId |
|---|---|---|---|
| POST | /attachment | Upload a conversation attachment | attachment.create |
| POST | /attachment/directory-reference | Reference a local directory Body: path. | attachment.createDirectoryReference |
| GET | /attachment/{projectID}/{name} | Fetch a task attachment | attachment.get |
Panel
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /panel/capabilities | List panel capabilities | panel.capabilities |
| GET | /panel/knowledge/memory | List memory files for current project | panel.knowledge.memory.list |
| POST | /panel/knowledge/memory/search | Search memories Body: limit, query. | panel.knowledge.memory.search |
| DELETE | /panel/knowledge/memory/{id} | Delete memory file Errors: LogFileNotFoundError, NotFoundError. | panel.knowledge.memory.delete |
| GET | /panel/knowledge/memory/{id} | Get memory file content (all chunks) Errors: LogFileNotFoundError, NotFoundError. | panel.knowledge.memory.get |
| POST | /panel/message | Handle desktop panel message Body: allow_create, attachments, channel, model, request_id, sessionID, source, surface, taskID, text, thread, user_id; Errors: MissionSessionAuthorityError. | panel.message |
| POST | /panel/message/stream | Handle desktop panel message with streaming Body: allow_create, attachments, channel, model, request_id, sessionID, source, surface, taskID, text, thread, user_id; Errors: MissionSessionAuthorityError. | panel.message.stream |
Expert Squad
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /expert-squad/catalog | Resolve the active expert-squad capability projection Errors: AuthReadError, BadRequestError, NotFoundError, UnknownError. | expertSquad.catalog |
| GET | /expert-squad/configuration | Get expert squad configuration Errors: ExpertSquadPackageError. | expertSquad.configuration.get |
| PUT | /expert-squad/configuration | Update expert squad configuration Body: id, installationScope, updates; Errors: ExpertSquadPackageError. | expertSquad.configuration.update |
| GET | /expert-squad/diagnostics | Page Expert Squad discovery diagnostics Errors: BadRequestError, UnknownError. | expertSquad.diagnostics |
| POST | /expert-squad/evolution-authorization | Authorize an expert squad evolution mutation Body: confirmationText, intent, sessionID, taskID; Errors: ExpertSquadPackageError. | expertSquad.evolutionAuthorization |
| GET | /expert-squad/evolution-history | Read expert squad evolution history Errors: ExpertSquadPackageError. | expertSquad.evolutionHistory |
| POST | /expert-squad/evolution-history/detail | Read one exact expert squad evolution campaign Body: campaignLocator, campaignTaskID, candidateLocator, catalogRevisionUpper, comparisonLocator, id, installationScope, namespace; Errors: EvolutionHistoryAuthorityError, ExpertSquadPackageError. | expertSquad.evolutionHistoryDetail |
| POST | /expert-squad/evolution-mutation | Execute an authorized expert squad evolution mutation Body: authorization, campaignSpecLocator, candidateRevisionLocator, comparisonResultLocator, expectedCurrentPackageDigest, operation, priorReceiptLocator, restorePackageDigest; Errors: ExpertSquadPackageError, ExpertSquadPackageMutationConflictError. | expertSquad.evolutionMutation |
| POST | /expert-squad/export | Export an expert squad ZIP archive Body: id, installationScope; Errors: ExpertSquadPackageError. | expertSquad.export |
| POST | /expert-squad/import-exact-file | Import an exact hosted expert squad ZIP revision Body: archiveBase64, expectedCurrentPackageDigest, expectedID, expectedNamespace, expectedPackageDigest, expectedVersion, filename, installationScope; Errors: ExpertSquadPackageError, ExpertSquadPackageMutationConflictError. | expertSquad.importExactFile |
| POST | /expert-squad/import-file | Import an expert squad ZIP archive Body: archiveBase64, expectedCurrentPackageDigest, filename, installationScope; Errors: ExpertSquadPackageError, ExpertSquadPackageMutationConflictError. | expertSquad.importFile |
| POST | /expert-squad/import-folder | Import an expert squad folder Body: expectedCurrentPackageDigest, installationScope, sourceDirectory; Errors: ExpertSquadPackageError, ExpertSquadPackageMutationConflictError. | expertSquad.importFolder |
| GET | /expert-squad/inspect | Inspect one expert-squad declaration Errors: BadRequestError, NotFoundError, UnknownError. | expertSquad.inspect |
| POST | /expert-squad/install-payload | Install one bundled expert squad Body: id, installationScope; Errors: ExpertSquadPackageError, ExpertSquadPackageMutationConflictError. | expertSquad.installPayload |
| GET | /expert-squad/inventory-status | Get expert-squad inventory status Errors: BadRequestError, UnknownError. | expertSquad.inventoryStatus |
| GET | /expert-squad/market | Browse bundled expert squads Errors: ExpertSquadPackageError. | expertSquad.market |
| GET | /expert-squad/market/detail | Inspect one bundled expert squad Errors: ExpertSquadPackageError, NotFoundError. | expertSquad.marketDetail |
| POST | /expert-squad/multica/preview | Preview a Multica squad import Body: mapping, squadID; Errors: ExpertSquadPackageError. | expertSquad.multicaPreview |
| GET | /expert-squad/multica/squads | List Multica squads with expert-squad installation status Errors: ExpertSquadPackageError. | expertSquad.multicaSquads |
| POST | /expert-squad/release-payload | Release bundled expert-squad packages Errors: ExpertSquadPackageError, ExpertSquadPackageMutationConflictError. | expertSquad.releasePayload |
| GET | /expert-squad/search | Search expert-squad declarations Errors: BadRequestError, UnknownError. | expertSquad.search |
| GET | /expert-squad/settings/detail | Load one full expert-squad settings declaration Errors: BadRequestError, NotFoundError, UnknownError. | expertSquad.settingsDetail |
| POST | /expert-squad/uninstall | Uninstall an expert squad package Body: id, installationScope, replacementID; Errors: AuthReadError, ExpertSquadPackageError. | expertSquad.uninstall |
| POST | /expert-squad/update | Update an installed expert squad Body: expectedCurrentPackageDigest, id, installationScope, source; Errors: ExpertSquadPackageError, ExpertSquadPackageMutationConflictError. | expertSquad.update |
| POST | /expert-squad/validate-folder | Validate an expert squad source folder Body: sourceDirectory; Errors: ExpertSquadPackageError. | expertSquad.validateFolder |
Mission Skill
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /mission-skill/catalog | List Mission Skills Errors: BadRequestError, LogFileNotFoundError, NotFoundError, UnknownError. | missionSkill.catalog |
| POST | /mission-skill/directory | Prepare Mission Skill Directory Body: source; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, UnknownError. | missionSkill.directory |
| GET | /mission-skill/settings | Inspect Mission Skill Settings Errors: BadRequestError, LogFileNotFoundError, NotFoundError, UnknownError. | missionSkill.settings |
Conversation Capabilities
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /chat/capability | Inspect native Chat capabilities Errors: UnknownError. | chat.capability.get |
| PATCH | /chat/capability | Update native Chat capability assignments Errors: BadRequestError, UnknownError. | chat.capability.update |
| GET | /work/capability | Inspect native Work capabilities Errors: UnknownError. | work.capability.get |
| PATCH | /work/capability | Update native Work capability assignments Errors: BadRequestError, UnknownError. | work.capability.update |
Skill
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /agent | List primary assistants | app.agents |
| GET | /skill | List skills | app.skills |
| GET | /skill/directories | Get skill directories | skill.directories |
| POST | /skill/import-file | Import a dropped skill source Body: archiveBase64, content, filename, files, policy, sourceName. | skill.importFile |
| POST | /skill/install | Install or import a skill source Body: kind, policy, value. | skill.install |
| GET | /skill/installed | List installed skills | skill.installed |
| GET | /skill/issues | List Skill catalog issues | skill.issues |
| GET | /skill/market | List skill markets | skill.market |
| PATCH | /skill/mount | Set a qualified skill mount override Body: agentID, defaultSkillRef, expertSquadID, override, scope, sessionID. | skill.setMountOverride |
| GET | /skill/mounts | List agent skill mounts | skill.mounts |
| POST | /skill/policy | Set skill permission policy Body: action, name. | skill.policy |
| POST | /skill/remove | Remove a skill source Body: kind, source. | skill.remove |
| POST | /skill/update | Update an installed skill Body: name, source. | skill.update |
Export
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /export/session/{sessionID} | Export session messages Errors: LogFileNotFoundError, NotFoundError. | export.session |
QuickNote
| Method | Path | Summary | operationId |
|---|---|---|---|
| POST | /api/v1/notes | Create QuickNote Errors: BadRequestError. | quicknote.create |
Computer
| Method | Path | Summary | operationId |
|---|---|---|---|
| POST | /computer/return | Return the current desktop to Agent automation Body: computerID, displayID, sessionID; Errors: BadRequestError, UnknownError. | computer.return |
| POST | /computer/status | Get Computer desktop ownership Body: computerID, displayID, sessionID; Errors: BadRequestError, UnknownError. | computer.status |
| POST | /computer/takeover | Take over the current desktop Body: computerID, displayID, sessionID; Errors: BadRequestError, UnknownError. | computer.takeover |
MCP
| Method | Path | Summary | operationId |
|---|---|---|---|
| DELETE | /mcp | Remove project MCP servers Errors: BadRequestError, LogFileNotFoundError, NotFoundError, UnknownError. | mcp.remove |
| GET | /mcp | Get MCP status | mcp.status |
| POST | /mcp | Add MCP server Body: config, credentialSecret, name; Errors: BadRequestError. | mcp.add |
| GET | /mcp/project | Get project-owned MCP status | mcp.project.status |
| DELETE | /mcp/{name}/auth | Remove MCP OAuth Errors: LogFileNotFoundError, NotFoundError, UnknownError. | mcp.auth.remove |
| POST | /mcp/{name}/auth | Start MCP OAuth Errors: BadRequestError, LogFileNotFoundError, NotFoundError, UnknownError. | mcp.auth.start |
| POST | /mcp/{name}/auth/authenticate | Authenticate MCP OAuth Errors: BadRequestError, LogFileNotFoundError, NotFoundError, UnknownError. | mcp.auth.authenticate |
| POST | /mcp/{name}/auth/callback | Complete MCP OAuth Body: code, state; Errors: BadRequestError, LogFileNotFoundError, MCPOAuthStateError, NotFoundError, UnknownError. | mcp.auth.callback |
| POST | /mcp/{name}/connect | (no summary) Errors: LogFileNotFoundError, NotFoundError, UnknownError. | mcp.connect |
| POST | /mcp/{name}/disconnect | (no summary) Errors: LogFileNotFoundError, NotFoundError. | mcp.disconnect |
Permission
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /permission | List durable pending permission requests | permission.list |
| GET | /permission/grants | List active permission grants | permission.grants |
| POST | /permission/grants/{grantID}/revoke | Revoke an active permission grant Errors: LogFileNotFoundError, NotFoundError. | permission.revoke |
| GET | /permission/history | List permission ledger history | permission.history |
| POST | /permission/{requestID}/reply | Decide a pending permission request Body: actorID, decision, message; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | permission.reply |
Provider
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /provider | List providers | provider.list |
| GET | /provider/auth | Get provider auth methods | provider.auth |
| POST | /provider/discover-models | Discover OpenAI-compatible provider models Body: api, apiKey, providerID; Errors: AuthReadError, BadRequestError. | provider.discover.models |
| POST | /provider/models/refresh | Refresh configured provider model lists Errors: AuthReadError. | provider.models.refresh |
| POST | /provider/refresh | Refresh the provider registry | provider.refresh |
| DELETE | /provider/{providerID} | Delete a project provider Errors: AuthReadError, BadRequestError. | provider.remove |
| GET | /provider/{providerID}/account-usage | Get Provider account usage Errors: AuthReadError. | provider.account.usage |
| POST | /provider/{providerID}/auth/execute | Execute auth method Body: inputs, method; Errors: AuthReadError, BadRequestError. | provider.auth.execute |
| POST | /provider/{providerID}/auth/prompts | Get auth prompts Body: inputs, method; Errors: BadRequestError. | provider.auth.prompts |
| POST | /provider/{providerID}/oauth/authorize | OAuth authorize Body: inputs, method; Errors: BadRequestError. | provider.oauth.authorize |
| POST | /provider/{providerID}/oauth/callback | OAuth callback Body: code, method; Errors: AuthReadError, BadRequestError. | provider.oauth.callback |
| POST | /provider/{providerID}/test | Test provider connection Body: modelID; Errors: AuthReadError, BadRequestError. | provider.test |
Question
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /question | List pending questions | question.list |
| POST | /question/{requestID}/reject | Reject question request Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | question.reject |
| POST | /question/{requestID}/reply | Reply to question request Body: answers; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | question.reply |
PTY
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /pty | List PTY sessions | pty.list |
| POST | /pty | Create PTY session Body: cwd, profileID, title; Errors: BadRequestError. | pty.create |
| DELETE | /pty/{ptyID} | Remove PTY session Errors: LogFileNotFoundError, NotFoundError. | pty.remove |
| GET | /pty/{ptyID} | Get PTY session Errors: LogFileNotFoundError, NotFoundError. | pty.get |
| PUT | /pty/{ptyID} | Update PTY session Body: size, title; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | pty.update |
| POST | /pty/{ptyID}/input | Write PTY input Body: data; Errors: LogFileNotFoundError, NotFoundError. | pty.input |
| GET | /pty/{ptyID}/output | Stream PTY output Errors: LogFileNotFoundError, NotFoundError. | pty.output |
| POST | /terminal/open | Open system terminal Body: cwd, profileID; Errors: BadRequestError. | terminal.open |
| GET | /terminal/profiles | List system terminal profiles Errors: BadRequestError. | terminal.profiles |
File / Search
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /file | List files | file.list |
| GET | /file/content | Read file Errors: FileNotFoundError, UnknownError. | file.read |
| PATCH | /file/content | Write file Body: content, path; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, UnknownError. | file.write |
| DELETE | /file/item | Delete file item Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | file.delete |
| PATCH | /file/item | Move file item Body: newPath, path; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | file.move |
| POST | /file/item | Create file item Body: content, path, type; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | file.create |
| POST | /file/item/copy | Copy file item Body: newPath, path; Errors: BadRequestError, LogFileNotFoundError, NotFoundError, TaskCancellationIncompleteError. | file.copy |
| GET | /file/source-content | Read an absolute source file Errors: BadRequestError, FileInvalidPathError, FileNotFoundError, UnknownError. | file.readSource |
| GET | /file/status | Get file status | file.status |
| POST | /file/upload | Upload files Body: files, targetDir; Errors: BadRequestError, TaskCancellationIncompleteError. | file.upload |
| GET | /find | Find text Errors: UnknownError. | find.text |
| GET | /find/file | Find files Errors: UnknownError. | find.files |
| GET | /find/symbol | Find symbols | find.symbols |
| GET | /lsp | Get LSP status | lsp.status |
Experimental
| Method | Path | Summary | operationId |
|---|---|---|---|
| GET | /experimental/event-schedule | List event-triggered tasks Errors: BadRequestError. | experimental.eventschedule.list |
| POST | /experimental/event-schedule | Create event-triggered task Body: cooldownMs, eventType, match, name, oneShot, prompt, sessionId; Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | experimental.eventschedule.create |
| DELETE | /experimental/event-schedule/{id} | Cancel event-triggered task Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | experimental.eventschedule.delete |
| GET | /experimental/memory | Get the Session MEMORY.MD document Errors: LogFileNotFoundError, NotFoundError. | experimental.memory.get |
| GET | /experimental/project-memory | Get the organized Project MEMORY.MD context | experimental.projectMemory.get |
| POST | /experimental/project-memory/notice/acknowledge | Acknowledge a Project MEMORY.MD notice Body: generation. | experimental.projectMemory.acknowledgeNotice |
| POST | /experimental/project-memory/organize | Request Project MEMORY.MD organization | experimental.projectMemory.organize |
| GET | /experimental/resource | Get MCP resources Errors: UnknownError. | experimental.resource.list |
| GET | /experimental/task-plan | List tasks for a session Errors: LogFileNotFoundError, NotFoundError. | experimental.taskplan.list |
| GET | /experimental/tool | List tools Errors: BadRequestError. | tool.list |
| GET | /experimental/tool/ids | List tool IDs Errors: BadRequestError. | tool.ids |
| GET | /experimental/workspace | List workspaces | experimental.workspace.list |
| DELETE | /experimental/workspace/{id} | Remove workspace Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | experimental.workspace.remove |
| POST | /experimental/workspace/{id} | Create workspace Errors: BadRequestError. | experimental.workspace.create |
| DELETE | /experimental/worktree | Remove worktree Errors: BadRequestError, LogFileNotFoundError, NotFoundError, WorktreeOwnershipObservationError. | worktree.remove |
| GET | /experimental/worktree | List worktrees | worktree.list |
| POST | /experimental/worktree | Create worktree Errors: BadRequestError. | worktree.create |
| POST | /experimental/worktree/reset | Reset worktree Errors: BadRequestError, LogFileNotFoundError, NotFoundError. | worktree.reset |