Skip to content

Latest commit

 

History

History
222 lines (163 loc) · 5.12 KB

File metadata and controls

222 lines (163 loc) · 5.12 KB

Agent Integration Guide

Configure your OpenClaw agents to use the Kanban system in Alfred Mission Control.


Overview

Alfred Mission Control provides a REST API for agents to manage tasks programmatically. Each agent needs:

  1. IDENTITY.md - Define role and domain
  2. API Key - In auth-profiles.json
  3. Alfred Mission Control Config - KANBAN_AGENT_KEYS in .env

Quick Setup

Step 1: Create IDENTITY.md

Create /home/ubuntu/.openclaw/agents/<agent-id>/IDENTITY.md:

# IDENTITY.md

*Role:* <Role description>
*Domain:* <work|general|finance|personal>
*Agent-Id:* <agent-id>

Step 2: Add API Key to Agent

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"
    }
  }
}

Step 3: Configure Alfred Mission Control

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-2026

Format: agent-id:api-key,agent-id:api-key,...

Step 4: Restart Alfred Mission Control

cd /home/ubuntu/.openclaw/workspace/alfred-mission-control
npm run build && npm start

API Reference

Base URL: http://localhost:3000/api/kanban/agent

Required Headers:

X-Agent-Id: <agent-id>
X-Agent-Key: <api-key>
Content-Type: application/json

Create 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": "Fix bug", "status": "backlog", "priority": "high"}'

List Tasks

curl "http://localhost:3000/api/kanban/agent/tasks?assignee=boti" \
  -H "X-Agent-Id: boti" \
  -H "X-Agent-Key: sk-boti-secret-2026"

Update Task

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"}'

Claim Task

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"}'

Delete Task

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 Values

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 Values

Priority Description
low Nice to have
medium Normal priority
high Important
critical Urgent

Domain Values

Domain Description
work Development, operations
finance Invoices, payments
personal Family, health
general Default domain

Authorization

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

Complete Example

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"}'

Troubleshooting

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

See Also

  • Skill: /home/ubuntu/.openclaw/workspace/skills/kanban-tasks/SKILL.md
  • API Docs: /home/ubuntu/.openclaw/workspace/alfred-mission-control/docs/AGENT_KANBAN_API.md