Claude Code
Claude Code is the most complete integration: coord login finds it on its own, and its hooks report every edit, so its agents show files in use, hear about conflicts and get messages mid-turn.
Set it up
Log in once per machine. Each repo also has to be connected once, by anyone in the project: say yes when its first agent asks, or run coord connect in it. Until then nothing done there is recorded.
coord logincoord connect # once per repo, inside it, unless a teammate connected it alreadycoord login (and coord connect, which does the same) detects Claude Code when ~/.claude.json or ~/.claude exists, or claude is on your PATH. It registers Coordigent and adds its hooks at user level, so agents in every repo are covered with no files in the repo.
Restart any Claude Code agent that was already running so it picks up the new tools.
What gets written
On this machine
One entry in ~/.claude.json, named coordigent:
{
"mcpServers": {
"coordigent": {
"type": "stdio",
"command": "/Users/you/.tower/bin/coord-mcp",
"args": [],
"env": {}
}
}
}Other MCP servers and the rest of the file stay as they were. An existing coordigent entry is kept, unless its command points at a binary that no longer exists, in which case it is repaired. An old entry named tower that runs tower-mcp, left by an earlier version, is deleted in the same write. No token is stored here: coord-mcp reads your login from ~/.tower/config.json.
Hooks in ~/.claude/settings.json that report each agent's prompts, reads, edits and shell commands, and warn before an edit to a file another agent holds. Hooks you added yourself are kept.
In the repo, with --repo-files
Nothing is written into a repo unless you ask. coord connect --repo-files, run inside the repo, writes these files for teams that commit them:
.mcp.json: the samecoordigentserver, written so the file is identical on every teammate's machine. Commit it if your team wants it..claude/settings.json: hooks that report the agent's prompts, reads, edits and shell commands, warn before an edit to a file another agent holds, and save a handoff before Claude Code compacts its context. It also sets the statusline tocoord status --oneline. Hooks you added yourself are kept.CLAUDE.md: the coordination rules, between<!-- coordigent:start -->and<!-- coordigent:end -->markers. The rest of the file is yours..claude/coordigent-statusline.sh: the statusline script..claude/commands/coordigent-status.md,coordigent-msg.mdandcoordigent-handoff.md: the/coordigent-status,/coordigent-msgand/coordigent-handoffslash commands..claude/skills/coordigent-context/SKILL.md: the coordination rules as a skill.
The repo's .mcp.json entry looks like this. It finds coord-mcp through $HOME instead of an absolute path, and names the repo so the server does not have to work it out:
{
"mcpServers": {
"coordigent": {
"type": "stdio",
"command": "sh",
"args": ["-c", "exec \"${TOWER_BIN_DIR:-$HOME/.tower/bin}/coord-mcp\" \"$@\"", "coord-mcp"],
"env": { "COORDIGENT_REPO": "your-org/your-repo" }
}
}
}If you edit the rules block or a file Coordigent wrote, the next coord connect --repo-files leaves it alone and says so. Add --force to replace it. Running it again also deletes .claude/skills/parallel-session-protocol/, a duplicate an earlier version wrote, if you never edited it.
Only for Claude Code
coord install claude-code writes the .mcp.json entry, the rules, the slash commands, the skill, the statusline and the hooks that save and pick up handoffs, without the rest of coord connect. It does not add the hooks that report edits; coord login adds those at user level. Add --user to write them under your home directory instead, which gives every repo the statusline, the rules and the slash commands: ~/.claude.json, ~/.claude/settings.json, ~/.claude/CLAUDE.md, and the commands, skill and statusline script under ~/.claude/. Both print the matching claude mcp add command, if you would rather run it yourself.
coord install claude-code --userUpdate
coord updateThis downloads the current coord and coord-mcp and restarts the daemon. Restart Claude Code to load the new coord-mcp.
Check it
coord doctorclaude mcp get coordigentcoord doctor lists claude-code with a ✓ and the config file it found, in the repo or at user level, and a Hooks: line naming the events whose hooks are installed, or none. A ✗ line names the command that fixes it. Inside Claude Code, run /coordigent-status, or ask the agent to call coordigent.status: its own row is marked (you).
What works and what degrades
Nothing important degrades. Claude Code supports MCP resources, prompts, elicitation, roots and tool-list updates. Coordigent leaves sampling and resource subscriptions off, because Claude Code does not document them.
- Files in use and conflicts. The hooks record each edit, so other agents see what this one holds, and this one is warned before it edits a file another agent holds. The edit is never blocked.
- Messages. A message or conflict reaches a running agent through its hooks, without a restart. It also arrives as a
⚠ COORD:banner on the nextcoordigent.*tool result, andcoordigent.message.inboxreads the rest. - Handoffs. With the repo files or
coord install claude-code, a hook saves a handoff before Claude Code compacts its context, for the next agent to pick up.
Remove
To remove Coordigent from this machine entirely, run coord uninstall (add --dry-run to see the plan first). It takes out the hooks, the MCP entries and the rules blocks it wrote, and keeps anything you edited by hand.
To stop Coordigent in one repo only, run coord unenroll there; see Connect a repo.
To remove only Claude Code's setup by hand, delete the coordigent entry from ~/.claude.json and the repo's .mcp.json, the Coordigent hooks from ~/.claude/settings.json, the hooks and statusLine from the repo's .claude/settings.json, the marked block in CLAUDE.md, and the .claude/commands/coordigent-*.md, .claude/coordigent-statusline.sh and .claude/skills/coordigent-context/ files.
Next
- Connect a repo explains how a repo joins your project.
- MCP tools lists every
coordigent.*tool the agent can call. - Files in use explains what the hooks record.