After an agent finishes, its change still has to get through CI and onto main. Most of that time is waiting, and most of the waiting is CI rerunning tests that already passed, after every rebase, in the merge queue and again on main.
land doesn't buy CI a faster machine. It just stops sending the same change through the same machine again and again, like a dishwasher that only rewashes the cups you actually used.
land shortens the trip in three ways, and none of them involve you clicking Approve.
1
Only the tests that matter run
land remembers which parts of your code each test touches. Change one function and only the tests that use it run again. The rest already passed on this exact code, and asking them again is like checking the oven is off when you never turned it on. And no AI is guessing here. land writes down which functions each test actually ran, compares that with what your change touched, and gives the same answer every time you ask.
2
No line to wait in
Each push is checked the moment it arrives, on top of the latest main. There's no rebase, no second CI run and no merge queue, so ten agents finishing at once don't have to stand in single file like it's airport security.
3
No conflicts over the same file
land combines changes function by function instead of line by line. Two agents editing different functions in one file slot together like Tetris pieces that land where you meant them to, and nobody has to referee.
Below, each picture shows the same moment twice. On the left is git and CI the way most teams run them today. On the right is land, looking a little smug. Click any picture to play it again.
Try it yourself
Push a few changes and watch both sides. land is honestly just too fast. By the time CI finishes its first run on the left, the right side is already on main and wondering what to do with its free time. The timings here are a toy, and the real measurements are further down.
0.0 s
Today · git + CI
With land
Or click the belts. One click pushes one change, and a few quick clicks send a whole burst. Some of them will be buggy, because agents.
1 / 5
Everyone pushes at once
Today · git + CI
agent 1
agent 2
agent 3
agent 4
agent 5
agent 6
agent 7
agent 8
time → all 188 tests waiting in line
✗ agent 8 waits for 7 full test runs first
Eight agents finish at once, so eight pull requests form an orderly queue, and each one reruns all 188 tests to double check a change that touched one tiny function. Agent 8 has time to take up a hobby.
With land
agent 1
agent 2
agent 3
agent 4
agent 5
agent 6
agent 7
agent 8
time → 2 tests
✓ all 8 on main, each in seconds
land knows which tests actually use the function that changed, 2 of 188 here, so every push is checked on arrival and each agent is back at work before it finishes saying done.
2 / 5
Two changes, one file
Today · git + CI
itertoolz.py
def first(seq) agent 3
def second(seq)
def last(seq) agent 4
✗ merge conflict · a person has to fix it
Two agents edited the same file, so git declares a conflict and a human gets summoned from lunch to untangle it while both agents stare at the wall.
With land
itertoolz.py
def first(seq) agent 3
def second(seq)
def last(seq) agent 4
✓ different functions · combined automatically
The edits were in different functions, so land just fits them together and tests the result. Nobody's lunch gets interrupted.
3 / 5
Fine alone, broken together
Today · git + CI
change Atested alone ✓
change Btested alone ✓
main + A + B✗ broken, everyone blocked
Each change passed its tests alone. Together on main they break it, and every agent is blocked while someone plays detective in the CI logs.
With land
main + A✓ landed
main + A + B✗ 2 tests fail · B sent back
main✓ still green
land tests every change on top of what's already on main, so the clash gets stopped at the door, and the agent gets a note naming the 2 tests that fail.
4 / 5
An agent deletes a failing test
Today · git + CI
tests/test_itertoolz.py
def test_first()
def test_last()
def test_second()
CI ✓ green · the bug ships
An agent can't make a test pass, so it does the obvious thing and deletes the test. CI turns green, everyone high fives, and the bug ships.
With land
tests/test_itertoolz.py
def test_first()
def test_last()
def test_second()
✗ sent back · tests are protected
land never lets a push delete or weaken your tests. The change is sent back before anything runs, with a polite but firm note.
5 / 5measured, 16 agents on each side, t3code, 7 Nov 2026
The same morning, measured
wait for an answer, per push
today18.8 min
land5.3 min
features shipped
today11
land13
server time
today5.87 h
land0.93 h
Put land on your repo
Sign in with GitHub, pick a plan, add a repository, and add three lines to your agents' CLAUDE.md. Your CI will wonder where everyone went.