Repository navigation
Squadra 3+ 3.10.2: messages that always arrive, and a dashboard that keeps up with a working squad.
The coordinator can deliver every message to its window, the dashboard updates only what changed, and the search box finds past work by the words people wrote. The registry format does not change.
What changes
- Messages always find their way. The coordinator can deliver any message, including one written by a sandboxed Codex window, and every delivery attempt is recorded. A Claude window receives its own mail as it arrives with
squadra inbox --follow. A message to a Codex window that nobody has delivered yet is listed first, as «to forward», with how long it has been waiting. - Waits that tell the truth. The waits list only what is still open: a closed task's confirmations leave it, and a plan waiting for its reader shows up there.
- Search. The search box finds past work by the words people wrote, in any order and with or without accents, including decisions, questions and reviews. The dropdown shows the newest results first and ends with a ready-made question for your agent.
- Newest first, everywhere. Every list and task picker shows the latest items on top.
- A dashboard that keeps up. After a new event the page updates only what changed; an idle page costs almost nothing, and a search sends only its results.
- Shorter answers.
task,briefandstartprint a short summary. Plaininboxshows the messages waiting for you plus the latest 10;--allshows everything. - A safer registry. A new registry folder is ignored by Git, so it cannot be committed by accident. A slow write holds the other windows only briefly.
doctoris read-only and reports a damaged cache;doctor --repairfixes it and--quickis a fast check. Commands explain errors in plain words. A file leaked into the registry can be removed with a recorded decision. - Save and restore you can rely on.
saveworks on large projects and on repositories that track.env.example; the way back to an older version works with either version; a save package restores after you open it, and stashed work comes back. - Usage and Balance measure every window registered as the guide shows (
--session), also on machines with many saved conversations. - Install anywhere. The installer works under a shared-group umask and with a linked home folder. On Python older than 3.12 it refuses with one clear line.
- English stays English. An English workspace gets English in every command.
- Joining and presence. A new window can answer its first presence call, and the coordinator's own sweep keeps the coordinator active.
- Waiting in line.
resource acquire --wait SECONDSkeeps your place in line for a busy resource, such as the test gate, instead of failing until it is free: windows that wait with--waitget it in the order they asked, and nothing is recorded while they wait.provechecks before it starts that the run covers the task's requirements, so a long proof is never thrown away for a missing--covers. - One proof for both final reads.
prove --also <task>lets one run of the suite serve several tasks on the same frozen code, such as a release's Claude and Codex final reads; each task still checks its own requirements. Use it when every reader's Squadra lists--alsoinsquadra prove --help; otherwise prove each task on its own. - Windows that are gone stop filling the waits. Mail to a window you put in stand-by shows as one line per window, for example «12 messages to core-A on stand-by (window closed)», and comes back as soon as the window returns.
- A registry that stays small. The registry's journal file goes back to a small size after writes, even with a dashboard open;
doctorreports its size anddoctor --repaircompacts it. Nothing is deleted. - The coordinator coordinates, and releases leave sooner. The coordinator builds only the integration and the release, and gives the lanes to the builders. Every lane is read once in full; its fixes are read together in the release's final read, with one fix round.
- Plugins: memoranda 1.0.7, Playwright 1.0.8, Sentry 0.1.5.
Measured on our own squad
The same script against the dashboard of published 3.10.1 and then of 3.10.2, on the same copy of our registry (11,488 events), on an 8-core machine under moderate load (load average 5 to 11 during the runs): five updates, each after one new message, and three searches. Time is the dashboard's own processing time for one request. Here the dashboard was already open on the copy before its first write, so the first update paid one more full read (8.5 s): a copied or moved registry has its cache re-bound by its first write in the new place, and a dashboard already open there pays one full read on the next update. The table shows the updates after it.
| What we measured | 3.10.1 | 3.10.2 |
|---|---|---|
| Page update after a new message | 4.7–5.3 s, 8.2 MB | 0.17 s, 0.56 MB |
| A search | 3.1–6.6 s, 8.3 MB | 0.4 s, at most 0.13 MB |
| Page update when nothing changed | 0.02 s | about 0.001 s |
Updating
- In Claude Code run
/plugin marketplace update squadra, then/plugin update squadra@squadra; in Codex runcodex plugin marketplace upgrade, thencodex plugin add squadra@squadra. For a standalone install rungit pulland the installer. Then restart the windows. Runsquadra plugin install <name>again for plugins from the Store. - If you installed 3.10.2 before the afternoon of 17 October 2026, Claude Code answers that 3.10.2 is already the latest: run
/plugin marketplace update squadra, then/plugin uninstall squadra@squadraand/plugin install squadra@squadra, then restart Claude Code. Codex and the standalone installer pick the refresh up with the usual steps. To check, ask the window «Show me the help of squadra'sresourcecommand»: the refresh lists--wait. - 3.10.1 and 3.10.2 windows can share a registry while you update them; nothing is converted.
- A settings change made from a 3.10.1 window puts the two new wait thresholds (
to-forward,plan) back to their defaults. - Removing a leaked file with a recorded decision makes a 3.10.1 window's full audit and dashboard fail on the missing file: update every window before you remove one.