blog /
Run as many coding agents as you can land
Running agents in parallel is the easy half. Landing their work is the queue, and you are it — so that is the half Tade now leads with.
Plenty of things run coding agents in parallel. Ten of them in ten worktrees is an afternoon’s setup now, and it is not where the day goes. The day goes on the other half: reading what they did, checking it, and merging it — and for that half there is one queue, and you are it.
So Tade is pitched differently from today. The line at the top of the README and of this site is run as many coding agents as you can land, and the number it says to read first is not how many agents are running but what a landed task cost. This post says what that means, and what it does not.
Most of what follows is on Tade’s main and not in tade-sh 0.2.1, which is
what npm installs today: the desk, the forecast, the scorecards, races, replays
and mistakes turned into checks were all built after it was tagged. The judge
and the checks are older, and 0.2.1 has both. Until a release carries the rest,
the way to it is a checkout, which is also how Tade is changed — there is no
build step, so git pull is the upgrade:
git clone https://github.com/mujacica/tade && cd tade
pnpm install
pnpm run link:global # puts `tade` on your PATH
Then /land in the window opens the desk, /evals the scorecards and /race
a race.
The desk is the queue, made visible
Every finished piece of work and every open review, in every project, in the order it is cheapest to trust.
Green at its head, nothing open, waiting on nobody, and small: that goes first, because it is the cheapest thing on the page to say yes to. Then what waits on you — a verdict on a finding its agent answered, a check nobody ran at its head. Then what waits on its agent: still working, red, a finding nobody has answered, a collision. A row is in the last tier any of its reasons puts it in, because a change whose agent still has to move is not yours to read yet.
It is a view and nothing more. Nothing on it is remembered, so there is no desk to fall out of step with the work, and looking at it lands nothing: merging is yours, on the forge. Tade never merges.
Collisions, while either side can still give way
Two agents can each be right and still not land together. While the work is
live, Tade looks for what would collide — with a worktree each, by asking
git merge-tree, which writes nothing; in a shared checkout, by comparing what
each agent’s harness said it wrote.
Both wear ⇄, the orchestrator is told once which side should give way, and
that is all. The forecast tells; it never stops, holds or reorders anything,
and where it cannot tell it says so rather than nothing.
A judge, and who answers it
Jev reads each change once it stops moving, for the things nobody has time to: injection, secrets, swallowed errors, missing tests, whether it did what was asked. That part shipped a while ago. What makes it worth having is who says what after it flags. The agent whose change it was gets the question in the judge’s own words and accounts for it — it fixed the cause, or the finding is not real and why. The verdict is yours or the orchestrator’s, never the agent’s: an agent calling its own work a false positive is the defendant grading the exam.
And when the verdicts say the same question was real about two changes in one project, Tade proposes something a machine runs — a line in the commit hook, a lint rule or a test — rather than one more paragraph an agent can read past. It arrives parked. Picking it up is approving it.
Scorecards nobody graded for themselves
Every vendor publishes the flattering version of which model is best, graded by themselves. Tade already writes down the facts the honest version needs, so Evaluations folds them by harness, model, persona and template: how many agents finished and landed, how often the first push was green, what the judge raised and how its verdicts came out, and what a landed agent cost.
Counts come first and a rate only from five, because 2 of 2 is a fact and
100% is not. Billed money and a plan’s list price are divided by their own
agents and never added. And because public benchmarks do not transfer to your
repository, you can replay your own last few landed tasks on a candidate model
at the commit each began from, scored by the same facts — only when you ask,
under a ceiling you set.
What is not built
How long finished work waits to land is the next number after what it cost, and Tade does not compute it yet. The desk says how long each piece has waited since it last moved; nothing folds the stretch from done to merged into a figure per harness or model. It is in the README under Planned, and nowhere above it.