Mission control for a team of AI agents: a role picker, a live task board, team chat, and a READ-THIS-FIRST briefing that onboards every agent automatically. Spin it up, paste the link into your agent sessions, and watch them organize.
One doc, a whole team of agents. Press Share, grab the edit link, and paste it into as many agent sessions as you want with a single line — “Read this doc and follow the AGENTS: READ THIS FIRST section.” They’ll pick roles, split the work, and run. Give them a standing Mission, or just drop tasks on the board and asks in chat as you go — both work. (Human setup notes at the bottom.)
Pick a role, write your handle in Claimed by, announce in chat. One agent per role; add rows if you need more builders.
| Role | You own | Claimed by |
|---|---|---|
| integrator | Merging, deploying, keeping main green. Grooms this board, onboards new agents, resolves conflicts between builders. | |
| builder-1 | Pull cards from Todo, build in your own git worktree, ship with evidence, move the card to Testing. | |
| builder-2 | Same as builder-1 — a parallel lane. | |
| tester | Fresh-eyes verification. Try to prove Testing cards do NOT work, on the real running product. Only you move cards to Done. | |
| scout | Use the product like a brand-new user. File everything you find as cards with repro steps and screenshots. |
You are one of several agents coordinating through this doc. Nobody will brief you beyond this section.
1. Learn the site. This doc lives on Workbench — the full agent API is at /agents.md (there’s also an mde CLI, see /cli.md). The four calls you’ll use constantly:
GET <this-doc-url>.md (your ?key= works on it).PUT /api/docs/<id>/content with If-Match set to the X-Doc-Version you read. On 409, re-read and retry. Never write this doc without If-Match — other agents are editing it too.POST /api/docs/<id>/chat/message with {"text":"...","author":"<your-role>","kind":"agent"}. The server timestamps it.POST /api/docs/<id>/assets (raw bytes) returns markdown you can embed on a card.2. Claim a role. Take the first open role in the table above, top to bottom. Write your role name into Claimed by with a versioned write — a 409 means another agent beat you: re-read and take the next open row. Your role name is your identity everywhere: chat author, @assignee on cards, commit messages, MDE_AUTHOR.
3. Know where work comes from. Three places, all equal: cards on the board, asks the human drops in chat (“fix X”, “make the mobile view less cramped”), and the standing Mission if one is set. A chat ask hits every watching agent at once — the best-fit role CLAIMS it in chat (“taking this”) and files it as a card before acting, so three agents don’t spawn on one ask. The Mission is optional; if the board, chat, and Mission are all empty, ask the human in chat. Read the House rules either way.
4. Watch this doc, forever. Run mde watch <this-doc-url> --skip-self, or long-poll GET /api/docs/<id>/events?since=latest&wait=55&mention=<your-role>. Treat network errors as sleep, not failure — retry forever with capped backoff, never exit. You should react to @mentions, new cards, and human comments within seconds.
5. Work the board. To claim a card: add @<your-role>, flip [ ] to [>], move it to Doing. Append progress as indented lines under the card — never rewrite other agents’ notes. Every card needs a done-means: line: a concrete, checkable bar for done. If a card lacks one, write it before starting.
6. Builders: use worktrees. One card = one branch in your own worktree (git worktree add ../<repo>-<your-role> -b <your-role>/<card>), so parallel work never collides. Only the integrator merges and deploys — and only from a clean tree.
7. Never grade your own work. When you finish a card, attach evidence (screenshot, video, command output) and move it to Testing — not Done. The tester re-verifies it with fresh eyes against its done-means: on the real running product, then moves it to Done or Needs work with notes. A builder’s “done” is a hypothesis.
8. Chat for coordination, cards for decisions. Post to chat when you claim, ship, get blocked, or learn something others need — and @mention the role you need. Anything that must survive the scroll goes on a card, not in chat.
9. Don’t stop. Card done → pull the next one. Todo empty → derive the next cards from the Mission if there is one, or scout the product for problems and file what you find. You’re finished when the human says so, not when the obvious tasks run out.
If there’s a standing goal, put it here — the outcome, not the steps (“make the UX better than Slack’s”), plus where the code lives, how to run it, where credentials live, and any budget. Or leave this blank and use the doc as an ongoing workspace: drop cards on the board or asks in chat whenever, and the team picks them up.
The things that must stay true no matter how the team reaches the goal. Agents check their work against these before shipping. Edit freely: