Track and manage tasks across multiple AI coding agents (Codex, Google Antigravity, Cursor, Gemini CLI, Claude Code) through the Mission Control web UI at http://localhost:6969. Use when you need a visual kanban for multi-agent work, dispatching tasks, monitoring agent activity, or syncing task state from a CLI agent.
Scanned 9/5/2026
Install to Claude Code
npx -y skills add tody-agent/codymaster --skill cm-dashboard --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Cm Dashboard?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/tody-agent-cm-dashboard-codymaster)More formats (shields.io, HTML) on the badges page.
---
name: cm-dashboard
description: Track and manage tasks across multiple AI coding agents (Codex, Google Antigravity, Cursor, Gemini CLI, Claude Code) through the Mission Control web UI at http://localhost:6969. Use when you need a visual kanban for multi-agent work, dispatching tasks, monitoring agent activity, or syncing task state from a CLI agent.
---
# cm-dashboard — Multi-Agent Mission Control
> Visual + API control plane for tasks dispatched to **Codex, Google Antigravity, Cursor, Gemini CLI, and Claude Code**. Runs locally at **http://localhost:6969**.
## When to use
- You are juggling work across multiple AI coding agents and need one source of truth.
- You want a kanban (`backlog → in-progress → review → done`) per project.
- You need to dispatch a task to a specific agent and capture its progress.
- A CLI agent (Codex, Gemini, etc.) needs to report its conversation lifecycle to a shared board.
## Supported agents
| ID | Display name | Skill prefix |
|----------------|---------------------|--------------|
| `codex` | OpenAI Codex | `/` |
| `antigravity` | Google Antigravity | `@[/...]` |
| `cursor` | Cursor | `@` |
| `gemini-cli` | Gemini CLI | `@[/...]` |
| `claude-code` | Claude Code | `/` |
(Also: `windsurf`, `cline`, `copilot`, `manual`.)
## Quick start
```bash
# 1. Start the dashboard (auto-starts on first cm command, or run explicitly)
cm dashboard # opens http://localhost:6969
# 2. Health-check
curl -s http://localhost:6969/api/projects | jq
```
## Core workflows
### A. Create + dispatch a task to an agent
```bash
# Create
TASK_ID=$(curl -s -X POST http://localhost:6969/api/tasks \
-H "Content-Type: application/json" \
-d '{"title":"Refactor auth middleware","agent":"codex","skill":"cm-execution","priority":"high"}' \
| jq -r .id)
# Dispatch (writes .agent-tasks/<id>-*.agent-task.md inside the project)
curl -s -X POST http://localhost:6969/api/tasks/$TASK_ID/dispatch | jq
```
The dispatcher emits a per-agent CLI command:
- `codex --task "<file>"`
- `antigravity -p "$(cat <file>)"`
- `cursor --task "<file>"`
- `gemini run --task "<file>"`
- `claude --task "<file>"`
### B. Move a task across columns
```bash
curl -s -X PUT http://localhost:6969/api/tasks/$TASK_ID/move \
-H "Content-Type: application/json" \
-d '{"column":"in-progress"}' # backlog | in-progress | review | done
```
### C. Auto-sync from an agent conversation
Use this from a running Codex/Gemini/Cursor/Antigravity session to report status — upserts by `conversationId`.
```bash
curl -s -X POST http://localhost:6969/api/tasks/auto-sync \
-H "Content-Type: application/json" \
-d '{
"conversationId":"codex-2026-05-11-001",
"title":"Refactor auth middleware",
"status":"in-progress",
"agent":"codex",
"skill":"cm-execution"
}'
```
Status values map to columns: `pending|todo` → backlog, `started|active|in-progress|idle` → in-progress, `review` → review, `completed|done` → done.
### D. Get agent suggestions for a skill
```bash
curl -s 'http://localhost:6969/api/agents/suggest?skill=cm-debugging' | jq
# → { skill, domain, agents: ["claude-code","codex","cursor","antigravity"] }
```
### E. Live activity & per-agent badges
The web UI shows:
- **Agent badges** with color + task count per agent (Codex teal, Antigravity green, Cursor blue, Gemini gold, Claude purple).
- **Active Agents** sidebar — currently working on `in-progress` tasks.
- **Activity feed** — task created/moved/dispatched/transitioned events in real time (WebSocket).
## API reference (most-used)
| Method | Path | Purpose |
|--------|---------------------------------------|--------------------------------------|
| GET | `/api/projects` | List projects with task counts |
| POST | `/api/projects` | Create project |
| GET | `/api/tasks?projectId=…` | List tasks (optionally per project) |
| POST | `/api/tasks` | Create task (`agent`, `skill`, …) |
| POST | `/api/tasks/sync` | Bulk import tasks from an agent |
| POST | `/api/tasks/auto-sync` | Upsert by `conversationId` |
| PUT | `/api/tasks/:id/move` | Move to column |
| POST | `/api/tasks/:id/dispatch` | Write `.agent-tasks/*.md` for agent |
| GET | `/api/agents/suggest?skill=…` | Best agents for a skill domain |
| GET | `/api/judge/suggestions?projectId=…` | Auto-transition recommendations |
Full surface: see [src/dashboard.ts](file:///Volumes/Data/Coder/codymaster/Cody_Master/src/dashboard.ts).
## Recommended per-agent usage
| Domain | Best fit |
|-------------------------------------|-----------------------|
| Engineering / refactor / debugging | Claude Code, Codex |
| Long-context architecture & docs | Antigravity, Gemini |
| Inline edits / IDE-driven | Cursor |
| Quick CLI prompts / shell tasks | Gemini CLI, Codex |
## Troubleshooting
- **`{"error":"not found"}`** — endpoint typo; check the table above. The fallback returns 404 for any unknown `/api/*`.
- **Port 6969 already in use** — another dashboard is running. `lsof -i :6969` to find it.
- **`NO_AGENT` on dispatch** — task has no `agent` set; `PUT /api/tasks/:id` with `{"agent":"codex"}` first.
- **`NO_PROJECT_PATH`** — set the project's `path` so dispatch can write into `.agent-tasks/`.
## Files of authority
- [src/dashboard.ts](file:///Volumes/Data/Coder/codymaster/Cody_Master/src/dashboard.ts) — HTTP API
- [src/agent-dispatch.ts](file:///Volumes/Data/Coder/codymaster/Cody_Master/src/agent-dispatch.ts) — per-agent file + CLI generation
- [src/judge.ts](file:///Volumes/Data/Coder/codymaster/Cody_Master/src/judge.ts) — agent affinity per skill domain
- [public/dashboard/app.js](file:///Volumes/Data/Coder/codymaster/Cody_Master/public/dashboard/app.js) — UI badges and colors
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!