v2.3.1

Mission Control

rdsthomas rdsthomas ← All skills

Kanban-style task management dashboard for AI assistants. Manage tasks via CLI or dashboard UI. Use when user mentions tasks, kanban, task board, mission con...

Downloads
2.0k
Stars
3
Versions
5
Updated
2026-02-24

Install

npx clawhub@latest install mission-control

Documentation

Mission Control — Task Management for AI Assistants

A Kanban-style task board that you (the AI assistant) manage. Your human creates and prioritizes tasks via the web dashboard; you execute them automatically when they're moved to "In Progress".

🚀 Quick Start

Just say: *"Set up Mission Control for my workspace"*

The agent will:

1. Check prerequisites (Tailscale, gh CLI)

2. Copy dashboard files to your workspace

3. Create the config file (~/.clawdbot/mission-control.json)

4. Install the webhook transform

5. Set up GitHub webhook

6. Push to GitHub and enable Pages

That's it. The agent handles everything.

---

Prerequisites

Before setup, you need:

| Requirement | Check | Install |

|-------------|-------|---------|

| Tailscale | tailscale status | brew install tailscale or [tailscale.com/download](https://tailscale.com/download) |

| Tailscale Funnel | tailscale funnel status | tailscale funnel 18789 (one-time) |

| GitHub CLI | gh auth status | brew install gh && gh auth login |

If any are missing, tell the agent — it will guide you through installation.

---

How It Works

1. Dashboard — Web UI hosted on GitHub Pages where humans manage tasks

2. Webhook — GitHub sends push events to Clawdbot when tasks change

3. Transform — Compares old vs new tasks.json, detects status changes

4. Auto-Processing — When a task moves to "In Progress", the agent starts working

The Flow

Human moves task → GitHub push → Webhook → Transform → Agent receives work order

↓ ↓

Dashboard Executes task

↓ ↓

Agent updates status ← Commits changes ← Marks subtasks done ←─┘

---

Task Structure

Tasks live in <workspace>/data/tasks.json:

{

"id": "task_001",

"title": "Implement feature X",

"description": "Detailed context for the agent",

"status": "backlog",

"subtasks": [

{ "id": "sub_001", "title": "Research approach", "done": false },

{ "id": "sub_002", "title": "Write code", "done": false }

],

"priority": "high",

"dod": "Definition of Done - what success looks like",

"comments": []

}

Status Values

| Status | Meaning |

|--------|---------|

| permanent | Recurring tasks (daily checks, etc.) |

| backlog | Waiting to be worked on |

| in_progress | Agent is working on this |

| review | Done, awaiting human approval |

| done | Completed and approved |

---

CLI Commands

Use <skill>/scripts/mc-update.sh for task updates:

Status changes

mc-update.sh status <task_id> review

mc-update.sh status <task_id> done

Comments

mc-update.sh comment <task_id> "Progress update..."

Subtasks

mc-update.sh subtask <task_id> sub_1 done

Complete (moves to review + adds summary)

mc-update.sh complete <task_id> "Summary of what was done"

Push to GitHub

mc-update.sh push "Commit message"

---

Agent Workflow

When you receive a task (moved to "In Progress"):

1. Read — Check title, description, subtasks, dod

2. Mark startedmc-update.sh start <task_id>

3. Execute — Work through subtasks, mark each done

4. Document — Add progress comments

5. Completemc-update.sh complete <task_id> "Summary"

Handling Rework

If a completed task is moved back to "In Progress" with a new comment:

1. Read the feedback comment

2. Address the issues

3. Add a comment explaining your changes

4. Move back to Review

---

EPICs

EPICs are parent tasks with multiple child tickets. When you receive an EPIC:

1. Child tickets are listed in the subtasks (format: MC-XXX-001: Title)

2. Work through them sequentially (1 → 2 → 3...)

3. After each child: comment result, set to "review", mark EPIC subtask done

4. After last child: set EPIC to "review"

---

Heartbeat Integration

Add to your HEARTBEAT.md:

Task Check

1. Check data/tasks.json for tasks in "in_progress"

2. Flag tasks with processingStartedAt but no recent activity

3. Check "review" tasks for new feedback comments

---

Configuration

Config lives in ~/.clawdbot/mission-control.json. See assets/examples/CONFIG-REFERENCE.md for all options.

Minimal config (set by agent during setup):

{

"gateway": { "hookToken": "your-token" },

"workspace": { "path": "/path/to/workspace" },

"slack": { "botToken": "xoxb-...", "channel": "C0123456789" }

}

---

Troubleshooting

See docs/TROUBLESHOOTING.md for common issues:

  • -Dashboard shows sample data → Connect GitHub token
  • -Webhook not triggering → Check Tailscale Funnel
  • -Changes not appearing → GitHub Pages cache (wait 1-2 min)

---

Security

Mission Control is a task management system for AI agents — its core purpose is to pass human-authored task descriptions to an agent for execution. This is by design, not a vulnerability.

Trust Model

  • -Single-user / trusted-user setup: Task authors are the same people who control the agent. The trust boundary is identical to typing a message directly to your assistant.
  • -Multi-user setups: If multiple users can create tasks on the dashboard, treat task content as untrusted input. Use Clawdbot's agent sandbox and permission model to limit what the agent can do.

Mitigations

  • -Input sanitization: mc-update.sh validates all inputs against injection patterns before passing them to Python or git.
  • -No credential storage: The dashboard stores no tokens or secrets — all auth is handled by Clawdbot's config.
  • -Webhook HMAC verification: The transform module validates webhook signatures using timingSafeEqual to prevent tampering.
  • -Security scan on sync: The sync-to-opensource.sh script scans for leaked credentials before publishing.

Recommendations

  • -Keep your dashboard repository private if you don't want others to see your task data.
  • -Review task descriptions before moving them to "In Progress" if the task was created by someone else.
  • -Use Clawdbot's groupPolicy and allowFrom settings to restrict who can interact with the agent.

---

Files

| File | Purpose |

|------|---------|

| <workspace>/index.html | Dashboard UI |

| <workspace>/data/tasks.json | Task data |

| <skill>/scripts/mc-update.sh | CLI tool |

| ~/.clawdbot/mission-control.json | Config |

| ~/.clawdbot/hooks-transforms/github-mission-control.mjs | Webhook transform |

Launch an agent with Mission Control on Termo.