Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 20 additions & 6 deletions docs-web/developer/management-actions.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
# Management actions

Code UX exposes **one MCP tool per management domain** — `manage_projects`, `manage_sprints`,
Code UX exposes grouped MCP tools per management domain — `manage_projects`, `manage_sprints`,
`manage_tasks`, `manage_quicksprints`, `manage_scheduler`, `manage_agents`, `manage_memory`,
`manage_settings`, `manage_preview`, and `manage_telemetry` — ten domains, each with a set of
**actions**. This page is the complete matrix. (See [MCP tools](./mcp-tools.md) for the tool list and
schemas.)
`search_knowledge`, `manage_settings`, `manage_preview`, and `manage_telemetry`. The deprecated
`manage_code_ux` tool remains available for compatibility, but the grouped tools are the primary
surface. Each domain has a set of **actions**. This page is the complete matrix. (See
[MCP tools](./mcp-tools.md) for the tool list and schemas.)

A dedicated-tool call takes the `action` plus action-specific fields:

Expand Down Expand Up @@ -99,15 +100,15 @@ Task create/update fields include `title`, `name`, `promptMarkdown`, `descriptio
| Action | Destructive | Required payload | Description |
| --- | --- | --- | --- |
| `list` | – | `projectId`, optional `from`, `to` | List scheduler entries and occurrences for a project window. |
| `create` | – | `projectId`, `targetType`, `scheduledFor`, target payload | Create a generic scheduler entry for `sprint`, `quicksprint`, or `chat`. |
| `create` | – | `projectId`, `targetType`, `scheduledFor`, target payload | Create a generic scheduler entry for `sprint`, `quicksprint`, `chat`, or `memory_remediation`. |
| `schedule_sprint` | – | `projectId`, `scheduledFor`, `sprintId` | Schedule a sprint orchestration. |
| `schedule_quicksprint` | – | `projectId`, `scheduledFor`, `templateId` | Schedule a quicksprint. Optional `taskCount`, `submitMode`, `additionalPrompt`, `agentPresetId`, `planningOverrides`. |
| `schedule_chat` | – | `projectId`, `scheduledFor`, `bodyMarkdown` | Schedule a chat message. Optional `threadId`, `connectionId`, `title`, `timezone`, `recurrence`. |
| `update` | – | `entryId`, update fields | Update scheduler title, status, time, recurrence, or target payload. |
| `delete` | ✅ | `entryId` | Delete a scheduler entry. |
| `run_due` | – | optional `now` ISO date override | Evaluate due entries immediately, mostly for operational verification. |

`create` accepts nested targets (`sprintTarget`, `quicksprintTarget`, `chatTarget`) or the flattened fields used by the `schedule_*` aliases. Scheduled chat entries post through the dashboard chat runtime when due, so they can target an existing thread with `threadId` or create/use a titled thread with `title`.
`create` accepts nested targets (`sprintTarget`, `quicksprintTarget`, `chatTarget`) or the flattened fields used by the `schedule_*` aliases. `schedule_sprint`, `schedule_quicksprint`, and `schedule_chat` infer the target type. Scheduling supports an absolute time (`scheduledFor`) or an `after_sprint_end` anchor via `scheduleMode` or `anchorMode`, with `sourceSprintId` / `anchorSourceSprintId` and optional `offsetMinutes` / `anchorOffsetMinutes`.

Memory remediation schedules use `targetType: "memory_remediation"` but have their own dedicated `/api/projects/:projectId/scheduler/memory-remediation` HTTP routes separate from the normal scheduler entries.

Expand Down Expand Up @@ -176,6 +177,19 @@ Manages agent presets per project.
| `count` | – | `projectId`, `scope` | Count by scope. |
| `model_status` | – | – | Get embedding model status. |

### Claim actions

The memory domain also exposes durable claim management:

| Action | Destructive | Required payload | Description |
| --- | --- | --- | --- |
| `create_claim` | – | `projectId`, `claim` | Create a project claim. Accepts `category`, `confidence`, `durability`, `tags`, `appliesToPaths`, `sourceMemoryId`, `supersedesClaimId`, `supportType`, `weight`, and `evidenceWeight`. |
| `list_claims` | – | `projectId` | List project claims. Accepts `status`, `category`, and `limit`. |
| `get_claim` | – | `projectId`, `claimId` | Get a specific claim. |
| `update_claim` | – | `projectId`, `claimId` | Update a claim. Accepts `claim`, `category`, `confidence`, `durability`, `status`, `tags`, `appliesToPaths`, and `supersedesClaimId`. |
| `add_claim_evidence` | – | `projectId`, `claimId`, `memoryId` | Add evidence to a claim. Accepts `supportType` and `weight`. |
| `deprecate_claim` | ✅ | `projectId`, `claimId` | Deprecate a claim and require approval confirmation. |

---

## `preview`
Expand Down
21 changes: 12 additions & 9 deletions docs-web/developer/mcp-tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,10 @@ failures return `InvalidParams` with the failing JSON path.

## The tools

Code UX exposes **one tool per management domain**, plus `search_knowledge`. Each `manage_*` tool
takes an `action` (from a fixed enum) plus action-specific fields, and an optional `approval` object
for destructive actions.
Code UX exposes grouped management tools per domain, plus `search_knowledge`. The deprecated
`manage_code_ux` tool remains registered for compatibility, but the grouped tools are the primary
surface. Each `manage_*` tool takes an `action` (from a fixed enum) plus action-specific fields,
and an optional `approval` object for destructive actions.

| Tool | Category | Purpose |
| --- | --- | --- |
Expand All @@ -35,11 +36,12 @@ for destructive actions.
| `manage_quicksprints` | orchestration | Manage quicksprint templates and execute them. |
| `manage_scheduler` | orchestration | Create and run scheduled sprints, quicksprints, and messages. |
| `manage_agents` | agents & memory | Manage agent presets and sync them to project markdown. |
| `manage_memory` | agents & memory | Inspect, search, promote, and re-embed short/long-term memory. |
| `manage_memory` | agents & memory | Inspect, search, promote, re-embed, and manage durable claims. |
| `search_knowledge` | agents & memory | Semantic search over the knowledge base subscribed to the caller. |
| `manage_settings` | platform | Get/resolve/patch/replace/reset system, project, and sprint settings. |
| `manage_preview` | platform | Manage sprint preview containers (start/stop/rebuild, logs, scripts). |
| `manage_telemetry` | platform | Read execution snapshots, invocations, sprint runs, and dispatches. |
| `manage_code_ux` | advanced | (Deprecated) Manage internal Code UX state for compatibility. |

Every tool requires `runtimeRoles: ["project_manager"]` and is enabled by default.

Expand All @@ -51,12 +53,13 @@ Every tool requires `runtimeRoles: ["project_manager"]` and is enabled by defaul
| `manage_sprints` | `list`, `get`, `create`, `update`, `delete`, `start`, `pause`, `cancel`, `force_cancel`, `inspect_run`, `import_issues`, `plan` |
| `manage_tasks` | `list`, `get`, `create`, `update`, `delete`, `start`, `stop`, `force_stop`, `pause`, `inspect_run` |
| `manage_quicksprints` | `list_templates`, `get_template`, `create_template`, `update_template`, `delete_template`, `execute`, `start` |
| `manage_scheduler` | `list`, `create`, `update`, `delete`, `run_due`, `schedule_sprint`, `schedule_quicksprint`, `schedule_chat` |
| `manage_agents` | `list`, `get`, `create`, `update`, `delete`, `sync` |
| `manage_memory` | `list`, `get`, `count`, `create`, `update`, `delete`, `search`, `promote`, `get_map`, `model_status`, `start_reembed` |
| `manage_scheduler` | `list`, `create`, `schedule_sprint`, `schedule_quicksprint`, `schedule_chat`, `update`, `delete`, `run_due` |
| `manage_agents` | `list`, `get`, `sync`, `create`, `update`, `delete` |
| `manage_memory` | `search`, `list`, `get`, `create`, `update`, `delete`, `promote`, `start_reembed`, `get_map`, `count`, `model_status`, `create_claim`, `list_claims`, `get_claim`, `update_claim`, `add_claim_evidence`, `deprecate_claim` |
| `manage_settings` | `get_system`, `get_project_override`, `resolve_project_effective`, `get_sprint_override`, `resolve_sprint_effective`, `replace_system_settings`, `patch_system_setting`, `replace_project_settings`, `patch_project_setting`, `reset_project_settings`, `replace_sprint_settings`, `patch_sprint_setting`, `reset_sprint_settings` |
| `manage_preview` | `list_sessions`, `start_session`, `stop_session`, `rebuild_session`, `remove_session`, `get_logs`, `get_url`, `get_script`, `update_script` |
| `manage_telemetry` | `get_project_stats_snapshot`, `get_project_execution_snapshot`, `list_execution_invocations`, `list_execution_invocation_messages`, `list_sprint_runs`, `list_task_dispatches` |
| `manage_preview` | `list_sessions`, `start_session`, `rebuild_session`, `stop_session`, `remove_session`, `get_logs`, `get_url`, `get_script`, `update_script` |
| `manage_telemetry` | `get_project_execution_snapshot`, `get_project_stats_snapshot`, `list_sprint_runs`, `list_task_dispatches`, `list_execution_invocations`, `list_execution_invocation_messages` |
| `manage_code_ux` | Domain/action specific (Deprecated) |

For the full per-action payloads and return shapes, see [Management actions](./management-actions.md).

Expand Down
2 changes: 1 addition & 1 deletion docs-web/developer/settings-reference.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Settings schema reference

This page enumerates every settings field, its type, default, range (if applicable), and the JSON path you would use with `manage_code_ux` → `settings` → `patch_*_setting`.
This page enumerates every settings field, its type, default, range (if applicable), and the JSON path you would use with `manage_settings` → `patch_*_setting`.

Settings are evaluated in cascade: **System → Project → Sprint** (with built-in defaults folded into System). Higher-level fields override lower; unspecified fields inherit. Effective settings API responses include a `sources` object mapping JSON paths to their originating scope (`system`, `project`, or `sprint`).

Expand Down
10 changes: 6 additions & 4 deletions docs/mcp/tools-and-contracts.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,9 @@ These cover:
- `manage_settings`
- `manage_preview`
- `manage_telemetry`
- `manage_code_ux` (Deprecated compatibility surface)

The same management domains are also exposed through the direct `codeux` CLI management surface. See [CLI Commands Reference](../reference/cli-commands.md) for the command syntax, aliases, interactive prompting behavior, and approval handling.
The grouped management domains are the primary surface. `manage_code_ux` remains registered for compatibility, but it is deprecated. The same management domains are also exposed through the direct `codeux` CLI management surface. See [CLI Commands Reference](../reference/cli-commands.md) for the command syntax, aliases, interactive prompting behavior, and approval handling.

### Core tools
Implemented in:
Expand Down Expand Up @@ -50,14 +51,14 @@ These cover:
- `manage_settings`
- `manage_preview`
- `manage_telemetry`
- `manage_code_ux` (Deprecated)

## Registered Tools

Defined in `src/contracts/mcp-tool-definitions.ts`.

Typed tool argument contracts and registry dispatch are defined in `src/api/mcp/tool-registry.ts`.

- `get_session`
### Listen mode
- `listen`
- `start_listen`
Expand Down Expand Up @@ -205,7 +206,7 @@ For payload normalization in management tools, Code UX centralizes parsing behav
- **Validation Errors**: Parser failures throw `ManagementValidationError`, which the management tool handler serializes as the standardized `result.status: "error"` envelope with `errorType: "validation"` and `isError: true`.


The dedicated management tools (`manage_sprints`, `manage_tasks`, `manage_quicksprints`, `manage_scheduler`, `manage_settings`) share the same action handlers.
The dedicated management tools (`manage_projects`, `manage_sprints`, `manage_tasks`, `manage_quicksprints`, `manage_scheduler`, `manage_agents`, `manage_memory`, `search_knowledge`, `manage_settings`, `manage_preview`, and `manage_telemetry`) share the same action handlers. `manage_code_ux` remains as a deprecated compatibility entry point.

### `manage_memory` claim actions

Expand Down Expand Up @@ -418,7 +419,7 @@ Persistence and prompt behavior:
For task create/update calls:
- `title` is canonical; `name` is accepted as an alias.
- `projectId` is required for list/create, and `sprintId` is required for create. List can omit `sprintId` to return all project tasks.
- Supported edit fields include `promptMarkdown`, `description`, `status`, `priority`, `executorType`, `agentPresetId`, `model`, `sortOrder`, `dependsOnTaskIds`, `isIndependent`, and `isMerged`.
- Supported edit fields include `promptMarkdown`, `description`, `status`, `priority`, `executorType`, `agentPresetId` (`model` is accepted as an alias), `sortOrder`, `dependsOnTaskIds`, `isIndependent`, and `isMerged`.

For quicksprint calls:
- `manage_quicksprints` supports `list_templates`, `get_template`, `create_template`, `update_template`, `delete_template`, `execute`, and `start`.
Expand All @@ -428,6 +429,7 @@ For quicksprint calls:
- `execute` defaults to `submitMode: "plan_only"` when no submit mode is supplied. Both `execute` and `start` accept optional execution modifiers: `routeOverride`, and `modelOverride`.
- `taskCount` is the canonical task-number field for execution. MCP accepts it as a number or numeric string.
- `noTaskLimit: true` lets the planner choose the number of subtasks and disables the fixed-count prompt.
- Flattened target fields (like `promptMarkdown`, `modelOverride`, etc.) are also accepted when scheduling or executing templates.
- `delete_template` requires approval confirmation. Custom templates are removed from the project template directory; built-in/default templates are hidden for the project by writing a local tombstone marker instead of deleting shared bundled assets.

For scheduler calls:
Expand Down