Configure your OpenClaw agents to use the Kanban system in Alfred Mission Control.
Alfred Mission Control provides a REST API for agents to manage tasks programmatically. Each agent needs:
- IDENTITY.md - Define role and domain
- API Key - In auth-profiles.json
- Alfred Mission Control Config - KANBAN_AGENT_KEYS in .env
Create /home/ubuntu/.openclaw/agents/<agent-id>/IDENTITY.md:
# IDENTITY.md
*Role:* <Role description>
*Domain:* <work|general|finance|personal>
*Agent-Id:* <agent-id>Add to /home/ubuntu/.openclaw/agents/<agent-id>/agent/auth-profiles.json:
{
"profiles": {
"alfred-mission-control:kanban": {
"type": "api_key",
"provider": "alfred-mission-control",
"key": "sk-<agent-id>-secret-2026"
}
}
}Add to /home/ubuntu/.openclaw/workspace/alfred-mission-control/.env:
KANBAN_AGENT_KEYS=boti:sk-boti-secret-2026,memo:sk-memo-secret-2026,opencode:sk-opencode-secret-2026Format: agent-id:api-key,agent-id:api-key,...
cd /home/ubuntu/.openclaw/workspace/alfred-mission-control
npm run build && npm startBase URL: http://localhost:3000/api/kanban/agent
Required Headers:
X-Agent-Id: <agent-id>
X-Agent-Key: <api-key>
Content-Type: application/json
curl -X POST http://localhost:3000/api/kanban/agent/tasks \
-H "Content-Type: application/json" \
-H "X-Agent-Id: boti" \
-H "X-Agent-Key: sk-boti-secret-2026" \
-d '{"title": "Fix bug", "status": "backlog", "priority": "high"}'curl "http://localhost:3000/api/kanban/agent/tasks?assignee=boti" \
-H "X-Agent-Id: boti" \
-H "X-Agent-Key: sk-boti-secret-2026"curl -X PATCH http://localhost:3000/api/kanban/agent/tasks/{taskId} \
-H "Content-Type: application/json" \
-H "X-Agent-Id: boti" \
-H "X-Agent-Key: sk-boti-secret-2026" \
-d '{"status": "in_progress"}'curl -X PATCH http://localhost:3000/api/kanban/agent/tasks/{taskId} \
-H "Content-Type: application/json" \
-H "X-Agent-Id: boti" \
-H "X-Agent-Key: sk-boti-secret-2026" \
-d '{"claim": true, "status": "in_progress"}'curl -X DELETE http://localhost:3000/api/kanban/agent/tasks/{taskId} \
-H "X-Agent-Id: boti" \
-H "X-Agent-Key: sk-boti-secret-2026"| Status | Description |
|---|---|
backlog |
Task is pending |
in_progress |
Currently working |
review |
Needs review |
done |
Completed |
blocked |
Blocked by something |
waiting |
Waiting for external input |
| Priority | Description |
|---|---|
low |
Nice to have |
medium |
Normal priority |
high |
Important |
critical |
Urgent |
| Domain | Description |
|---|---|
work |
Development, operations |
finance |
Invoices, payments |
personal |
Family, health |
general |
Default domain |
| Action | Who Can Do It |
|---|---|
| Create task | Any authenticated agent |
| Update task | Creator, Assignee, or Claimer |
| Claim task | Any agent (if unclaimed) |
| Unclaim task | Only the claimer |
| Delete task | Only the creator |
Boti creates task for Memo:
# 1. Boti creates and assigns task
curl -X POST http://localhost:3000/api/kanban/agent/tasks \
-H "Content-Type: application/json" \
-H "X-Agent-Id: boti" \
-H "X-Agent-Key: sk-boti-secret-2026" \
-d '{"title": "Review Obsidian notes", "status": "backlog", "priority": "high", "assignee": "memo"}'
# 2. Memo claims and starts working
curl -X PATCH http://localhost:3000/api/kanban/agent/tasks/{taskId} \
-H "Content-Type: application/json" \
-H "X-Agent-Id: memo" \
-H "X-Agent-Key: sk-memo-secret-2026" \
-d '{"claim": true, "status": "in_progress"}'
# 3. Memo completes task
curl -X PATCH http://localhost:3000/api/kanban/agent/tasks/{taskId} \
-H "Content-Type: application/json" \
-H "X-Agent-Id: memo" \
-H "X-Agent-Key: sk-memo-secret-2026" \
-d '{"status": "review"}'
# 4. Boti reviews and marks done
curl -X PATCH http://localhost:3000/api/kanban/agent/tasks/{taskId} \
-H "Content-Type: application/json" \
-H "X-Agent-Id: boti" \
-H "X-Agent-Key: sk-boti-secret-2026" \
-d '{"status": "done"}'401 Unauthorized:
- Check X-Agent-Id header is correct
- Check X-Agent-Key matches KANBAN_AGENT_KEYS in .env
403 Forbidden:
- You're not creator/assignee/claimer of the task
Task not appearing:
- Restart Alfred Mission Control after adding KANBAN_AGENT_KEYS
- Check .env file is in Alfred Mission Control root directory
- Skill:
/home/ubuntu/.openclaw/workspace/skills/kanban-tasks/SKILL.md - API Docs:
/home/ubuntu/.openclaw/workspace/alfred-mission-control/docs/AGENT_KANBAN_API.md