Monitor and manage AI agent squads via Mission Control dashboard. Send heartbeats, log activities, update tasks.
Install
npx skillscat add rguillory747/mission-control Install via the SkillsCat registry.
Mission Control Integration
Your Mission Control dashboard tracks agent status, activities, and tasks in real-time.
Environment Setup
Set your Mission Control URL in OpenClaw config or environment:
export MISSION_CONTROL_URL="https://your-mission-control.vercel.app"Or in ~/.openclaw/openclaw.json:
{
"skills": {
"mission-control": {
"env": {
"MISSION_CONTROL_URL": "https://your-mission-control.vercel.app"
}
}
}
}API Endpoints
Heartbeat (Agent Status)
Send heartbeat to show agent is alive:
curl -X POST "$MISSION_CONTROL_URL/api/heartbeat" \
-H "Content-Type: application/json" \
-d '{"name": "Jarvis", "status": "active"}'Status options: active, idle, sleeping, error
Log Activity
Record what an agent is doing:
curl -X POST "$MISSION_CONTROL_URL/api/activity" \
-H "Content-Type: application/json" \
-d '{"agent": "Jarvis", "action": "Deployed PR #42 to production"}'Update Task Status
Move a task through the workflow:
curl -X POST "$MISSION_CONTROL_URL/api/task-update" \
-H "Content-Type: application/json" \
-d '{"title": "Build landing page", "status": "in_progress"}'Status options: inbox, in_progress, review, done, blocked
โ ๏ธ Gotcha: Use in_progress (underscore), NOT in-progress (hyphen).
Create New Task
Add a task to the queue:
curl -X POST "$MISSION_CONTROL_URL/api/task-create" \
-H "Content-Type: application/json" \
-d '{
"title": "Implement feature X",
"description": "Details here",
"status": "inbox",
"assignee": "Forge",
"priority": "P1"
}'Priority: P0 (urgent), P1 (high), P2 (normal)
Log Metrics
Track numerical metrics:
curl -X POST "$MISSION_CONTROL_URL/api/metric" \
-H "Content-Type: application/json" \
-d '{"name": "emails_sent", "value": 15, "agent": "Ghost"}'Agent Behavior Rules
Every agent MUST:
Send heartbeat on start:
curl -X POST "$MISSION_CONTROL_URL/api/heartbeat" \ -d '{"name": "YOUR_NAME", "status": "active"}'Log significant actions:
curl -X POST "$MISSION_CONTROL_URL/api/activity" \ -d '{"agent": "YOUR_NAME", "action": "What you did"}'Update task status when working:
curl -X POST "$MISSION_CONTROL_URL/api/task-update" \ -d '{"title": "Task name", "status": "in_progress"}'Send heartbeat when done:
curl -X POST "$MISSION_CONTROL_URL/api/heartbeat" \ -d '{"name": "YOUR_NAME", "status": "sleeping"}'
Agent Names (Customize in config/agents.json)
Default squad:
- Forge ๐จ - Code Builder
- Scout ๐ - Research & Discovery
- Ghost ๐ป - Outreach & Growth
- Closer ๐ค - Sales & Deals
- Hype ๐ฃ - Social & Content
Edit config/agents.json to rename or add agents.
Dashboard Views
/- Main dashboard with agent cards/ops- Operations overview/tasks- Task management kanban/activity- Activity feed
Making Agents "Real"
Agents become real when they:
- Have a cron schedule - Run automatically via OpenClaw cron
- Send heartbeats - Show up as "active" on dashboard
- Log activities - Create visible trail of work
- Complete tasks - Move items through the pipeline
Example OpenClaw cron for an agent:
{
"name": "forge-builder",
"schedule": { "kind": "cron", "expr": "0 2 * * *" },
"sessionTarget": "isolated",
"payload": {
"kind": "agentTurn",
"message": "Check build-queue, pick highest priority task, build it, create PR"
}
}Troubleshooting
Agent not showing on dashboard?
- Check heartbeat is being sent
- Verify MISSION_CONTROL_URL is correct
- Check Convex deployment is running
Tasks not updating?
- Use
in_progressnotin-progress - Ensure task title matches exactly
- Check API response for errors