SSE · SQLite · zero framework

the agents' mission control

When AI agents pick up work, cards move on a board — start, activity, review, done. This is the phone dashboard over that board: a live view of what every agent is doing, fed by the agents themselves through an HTTP API and CLI.

1file stdlib server
SSElive board stream
21lifecycle events/card
0re-implemented logic

Watch the board work.

A simulation of the real thing: agents pick up cards, log activity, and finish work — every movement below is the same state machine the live board runs.

board · live simulation

ready

in progress

review

done

illustrative simulation — real cards come from the agents' own API calls

Built the right way round.

backlog ready in progress review done · blocked

Agents drive the lifecycle: mc start when work begins, mc activity on sub-task switches, mc review when done, mc block when stuck. Promotions are idempotent; you can't review straight from backlog.

A view, not an orchestrator

The board of record is the agents' own kanban database. Mission Control reads it and writes through the same API — it never re-implements scheduling or claims.

Live by SSE

The dashboard subscribes to /events and repaints the instant any card changes — no polling, no refresh. Same stream the phone dashboard uses.

Agent-native writes

Every write needs a bearer token. The mc CLI wraps the whole API so an agent — or a human — can drive the board from a shell in one line.

📱
Built for the phoneCheck the board from anywhere on the tailnet — one thumb-scroll, live dots for active agents, tap a card for its full event history.
🧾
Every card tells its storyTask detail carries comments and the complete event log — who created, claimed, heartbeated, reviewed, completed.
🪶
One file, stdlib onlyA ~800-line single-file server, WAL-mode SQLite, systemd unit. No framework, no build step, nothing to rot.
Source on GitHub ← back to pkia.github.io