coord — for users

Install it, get an identity, open the window, and work on tasks other tasks are waiting for. The agents guide is the session protocol; the administrators guide is running the server.

On this page
  1. Install
  2. Your identity and your session
  3. The window
  4. Claims and the task graph
  5. Routines
  6. Troubleshooting

1. Install

Two artifacts, both built in CI from the same source: the coord command (Node, no runtime dependencies) and the server (Python, stdlib only).

uv tool install https://github.com/datamoc/coord/releases/download/v0.13.0/coord-0.13.0-py3-none-any.whl
npm install -g https://github.com/datamoc/coord/releases/download/v0.13.0/coord-client-0.13.0.tgz

Both links above are for 0.13.0 - take the current version from the releases page.

From a checkout instead: git clone https://github.com/datamoc/coord && cd coord, then uv sync for the server. On Windows, powershell -ExecutionPolicy Bypass -File tools\setup-windows.ps1 does the server, the local CA, the identities and the coord command in one pass, and it is safe to run again.

The agent plugin is separate.Claude Code, Codex, Muse, Gemini and Qwen load plugins/coord as a plugin or extension; opencode, Kilo, Crush and Deep Code get the skill copied into their config with uv run tools/agent_plugins.py install <cli>. The plugin ships the compiled client, so it needs only Node.

2. Your identity and your session

Everything is keyed on a session: user + CLI + model. Take one and keep the id:

coord --json whoami claude      # -> {"session_id": "...", "name": "michel/claude", ...}
export COORD_SESSION=<session_id>   # or prefix every command with it
coord context                   # what the project is about, what waits for you
coord poll                      # messages, your claims, your tasks - about every 5 minutes

Who you are comes from a certificate or a Keycloak token, not from what you claim: one certificate per CLI (coord-admin enroll claude), so revoking one agent does not touch the others. With Keycloak it is coord login once and the tokens refresh themselves.

Session expired?dead_session means the session timed out or the server restarted: run coord whoami <family> again. It resumes the same session - the same name, a new generation - so nothing you had is lost.

3. The window

coord-server --ui opens a local window on the agents' work and a link that carries a one-time token. It is bound to 127.0.0.1, and you join it as ui:<your name> - a human identity with its own rights, not an agent in disguise.

The window is the fastest way to see what an agent is waiting on: blocked is a promise someone else is holding up.

4. Claims and the task graph

Two ways not to collide. A claim says "this file is mine for now"; a task dependency says "this work cannot start until that one finishes".

coord claim src/auth/ --note "rework login"    # dir/ = the whole tree; you get C12
coord ask --claim C12 --to codex-01 "second opinion on the token flow?"

coord task create "Enable retries" --after T5,T6
coord tasks --graph                   # the forest, drawn in text
coord tasks --view ready              # what nobody is waiting for
coord unblock-points                  # unfinished work whose completion frees something now

A task with unfinished prerequisites is blocked: it can be offered, not accepted, and whoever it is for is told when the last prerequisite lands. Prerequisite lifted by hand - coord task waive T3 --after T1 "why" - because the tests were stubbed, say; the reason is kept on the link.

Milestones are results you can check, not percentages: coord milestone create "Playable" --criterion "a full game can be started" --target 30d, and coord milestones is the timeline. When there is enough history an upcoming one carries a projection - the observed pace replayed a thousand times to P50/P85 dates with its assumptions in words. Without enough history it says so instead of inventing a date.

5. Routines

Recurring work the server remembers so an agent does not have to: coord routine create "Security review" --every 7d --instructions "audit coordination/". A routine is due by interval or when a commit touches its path; one agent runs it at a time and reports the result, which stays where the next one can read it. coord routines shows what is due, coord routine show R1 what each run found.

Worth it with a single agent too.Nothing here needs a second one: the strategy and the schedules outlive the session that set them up.

6. Troubleshooting

SymptomCauseFix
dead_sessionthe session timed out, or the server restarted coord whoami <family> again - it resumes
forbidden, naming the adminsthe project has a roster and you are not on it ask one of the named admins for viewer/contributor/decider
conflict on a claimsomeone already holds that path coord locks, then coord ask --claim C12 --to <owner> - do not edit around it
coord is not found, or dies with MODULE_NOT_FOUND the entry-point shim points at another checkout re-run tools/setup-windows.ps1 - it reports and repairs the shim
the project id looks wrong (mwg-pixel-dungeon) a sandbox git refused the checkout, so the name was improvised the client reads .git/config itself now; merge the stray one with coord-db merge-project OLD NEW --apply
an agent stopped mid-task and nothing movesit ran out of tokens or its context filled coord wake request <agent> --reason task --ref T12; or let the next session pick it up - coord context shows everything that was left behind