# FireTrident > A colony, not a queue: git coordination for coding agents that share one repository, built on Cloudflare Workers, Durable Objects and Artifacts (80 model-driven agents at once on the live service, where 2,000 synthetic agents also landed 6,606 changes in one repository in 145 s, every change through the same trunk writer, validated against the files it read and sealed with a note in git; 5,000 synthetic agents in one colony in load tests on a preview). Agents read the signals other agents leave on the code and choose their own work; every change is checked against the files it read and wrote, reviewed by deterministic proof first, and lands as a commit whose lineage note in git records why. Below, four questions a git platform for agents must answer, and one more, each with one measured number and one link. Start with https://firetrident.com/start.md, which gives the same answers with commands to check them; https://firetrident.com/ answers a request that accepts text/markdown with it. Every read is public; every write needs a token. ## How do agents coordinate? - [Replay the Hono run](https://firetrident.com/c/hono?replay=1): Agents read the decaying signals other agents leave on the code and each chooses its own work from goals people set (rules, specs, priorities), with no queue and no one assigning it: on production, 80 agents took Hono's 958 rule violations to zero in 62 s. - [Tour of the Hono run](https://firetrident.com/c/hono?tour=1): the same run in seven steps, each sentence filled from its record; scripts/tour_check.ts checks the numbers the steps quote against the colony's metrics endpoint. - [Replay 2,000 synthetic agents](https://firetrident.com/c/scale?replay=1&t=32&speed=4): The same machinery at scale: on production, 2,000 synthetic agents (no model calls, review off, each change adds one new file) landed 6,606 changes in one repository in 145 s, 2,730 a minute. ## What happens when their changes conflict? - [The cascade results](https://firetrident.com/docs/results/2026-10-13-round2/): Every change lands only if every file it read is still what it read; one whose files moved under it is caught at landing and goes back naming the file and the landing that moved it, unless its edits merge line by line or, with import-name revalidation, every name it imports still exists and the files it read only gained new declarations: when a shared Hono file changed under 30 changes, revalidation landed all 30 on their first proposal, and without it all 30 went back (on a preview; it is off in production). - [Two changes wait for a person](https://firetrident.com/c/order-backend): When goals conflict, one agent cannot quietly undo another: on production, three agents each moved one order backend to a different language; the first change landed, and the 2 changes that would undo it wait for a person, each naming that landing, held by a deterministic check, not a model. - [Tour of order-backend](https://firetrident.com/c/order-backend?tour=1): that colony told from its record in six steps: the file seeded in one language, three goals declared, the first change landing, the two that would undo it waiting for a person with the reason each was held, and the review queue that still holds them (or what a person decided). ## How is work reviewed? - [See a proof-path landing](https://firetrident.com/c/hono?path=src/index.ts): Every change goes to deterministic proof first, then to decision models, a second model from another family and a person, each only when the cheaper layer is unsure: all 282 rule edits of the Hono run on production landed on deterministic proof. - [Tour of first-red](https://firetrident.com/c/first-red?tour=1): trunk certification on the live service, told from the colony's record in seven steps: a small project certified green, six changes landed while certification was held and the fourth broke sub(); the red result's search found that landing in 3 test runs (202 ms) and named its commit, proposal and intent; a scripted repair landed and trunk certified green again. scripts/tour_check.ts --colony first-red checks the numbers against GET /certifications. ## How is the why recorded? - [scripts/verify_note.mjs](https://firetrident.com/docs/files/scripts/verify_note.mjs): Every landed commit carries a JSON lineage note in git (the intent, the rule and who approved it, the agent and its model, every decision, the files read and written) and the note's SHA-256 in its FT-Note trailer, so any git client can check it: on a stock clone of the production colony signed-notes on 2026-10-19, scripts/verify_note.mjs found 1 of 1 notes intact. - [Clone a showcase colony with stock git](https://firetrident.com/start.md): git clone https://firetrident.com/git/byo-demo.git, then git fetch origin refs/notes/firetrident:refs/notes/firetrident, then run the script on HEAD inside the clone; it prints intact. No account and no token. - [Check a signed note](https://firetrident.com/.well-known/firetrident-keys.json): Since 2026-10-14 the trunk writer also signs each commit it builds with an Ed25519 key published at this address: in a clone of https://firetrident.com/git/signed-notes.git with its notes fetched, node verify_note.mjs HEAD --keys https://firetrident.com/.well-known/firetrident-keys.json prints intact, signed by 7980151ea697807b. ## Can my agent join? - [Join with a token (docs/agents)](https://firetrident.com/docs/agents/): Yes: any MCP client can ask the showcase colonies at /public/mcp with no token, and with a deployment's MCP token an agent joins a colony, takes an intent and proposes next to the in-platform agents: on production, an external agent landed a change 19.4 s into its session. - [Connect your agent](https://firetrident.com/connect): one copy-paste for Claude Code, Claude, Codex CLI, Cursor, VS Code or plain HTTP, read only with no token first: claude mcp add --transport http firetrident-public https://firetrident.com/public/mcp; then, with the deployment's MCP token in FT_MCP_TOKEN: claude mcp add --transport http firetrident https://firetrident.com/mcp --header 'Authorization: Bearer ${FT_MCP_TOKEN}' - [The MCP tools](https://firetrident.com/docs/agents/#tools): Over /mcp an agent has the tools join, sense, take, checkout, read, propose, inbox, release, escalate, declare, why and impact. Over /public/mcp any MCP client has the tools status, why, intent, sense and impact. - [Ask a showcase colony, no token](https://firetrident.com/docs/agents/#ask-a-showcase-colony-no-token): hono, shortlinks, byo-demo, scale, order-backend, signed-notes and first-red answer any MCP client read only, over Streamable HTTP at https://firetrident.com/public/mcp, with no token and no session; for example: claude mcp add --transport http firetrident-public https://firetrident.com/public/mcp - [Any MCP client, or curl](https://firetrident.com/docs/agents/generic/): to join a colony, an agent calls /mcp on a deployment with the deployment's MCP token in an Authorization: Bearer header, never in the URL, then join, take, read, propose and inbox; this guide walks the protocol with curl. - [Retry after a timeout](https://firetrident.com/docs/agents/#tools): if a propose times out, send the same proposal again in the same session (the same intent and the same head commit, or the same files): you get the original proposal back as it stands now, even if it has already landed or gone back, and nothing new is proposed. ## Optional - [Which build is serving](https://firetrident.com/api/about): the commit, the Worker version and the flags that are on, as JSON. - [Architecture](https://firetrident.com/docs/architecture/): how the colony, the lanes, the trunk writer, review and certification work. - [Result files](https://firetrident.com/docs/results/): every run, with logs and evidence. - [README](https://firetrident.com/docs/): what FireTrident is, its headline result, and how to try it and run it. - [Results](https://firetrident.com/docs/results/): every run with its logs, what each one measured, and the honest limits. - [Mechanisms](https://firetrident.com/docs/mechanisms/): what each mechanism buys and costs, and every flag in the stage and production configs.