# 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.

Published 2026-10-16 · by The Tade project · tagged landing, agents, jev, review.
Published at https://tade.sh/blog/run-as-many-coding-agents-as-you-can-land/ — part of https://tade.sh/blog/.

---

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:

```sh
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.

> **A screen from Tade — `the-landing-desk`.** The landing desk: every finished piece of work and open review across three projects, in the order it is cheapest to trust — green and small first, then what waits on you, then what waits on its agent, each with the one sentence why — and beside each its checks, findings, collisions, size, cost and how long it has waited.
>
> The landing desk: two ready to land, two waiting on you, two waiting on their
> agents — each with the one sentence why, and its checks, findings, collisions,
> size, cost and wait beside it.

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.

> **A screen from Tade — `work-that-would-collide`.** Two agents the conflict forecast says would collide, both with uncommitted changes in src/charge.ts: each wears ⇄ after its name down the side, and in the plan the line under its box names the other — while the work queued after both waits for them, and nothing is stopped.
>
> Two agents with uncommitted changes in one file, each wearing ⇄ after its name,
> and the work queued after both waiting as it was.

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.

> **A screen from Tade — `evaluations-by-harness`.** Evaluations by harness: for each one, how many agents it ran, how many finished and landed, how often the first push was green, the reds caught on this machine before CI, what the judge raised and how its verdicts came out, what a landed agent cost and how long work took to finish. Counts first, and a rate only from five.
>
> Evaluations by harness: agents, done and landed, first push green, reds caught
> here, the judge's findings, cost per landed agent and time to done — counts
> first, and a rate only from five.

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.
