The playbook
How 3–4 humans
ship like 40
The taxi team page tells you what the right AI-native team size is. This one tells you how to run it: seat the crew, load the engine, drive by validation, watch the meter, and know when to call a second taxi.
~8 minute read · maintained at taxiteam.dev
1. Seat the crew
A taxi team is three to four humans covering four jobs. Jobs, not titles — one person can hold two, but no job can be held by zero:
Destination
Owns what this trip is for and what "arrived" means. Writes the outcome before anyone prompts anything.
Route
Owns architecture and decomposition — cutting the destination into pieces agents can drive independently.
Meter
Owns cost visibility: agent spend, cloud spend, and time. Reports the fare while the trip is running, not after.
Validation
Everyone. Every human validates agent output. This is the job that replaced implementation — it is never delegated to the engine.
Why so few? The communication math is unforgiving. Every seat you add taxes every seat already in the cab, because channels grow with the square of headcount:
45
CHANNELS · 10 HUMANS
15
CHANNELS · 6 HUMANS
6
CHANNELS · 4 HUMANS
channels = n(n−1)/2
And the evidence says the hands aren't the bottleneck anymore — in randomized field experiments with 4,867 developers, an AI assistant alone raised completed tasks by 26% (Cui et al., Management Science). With full agent fleets, the multiplier is the point.
2. Load the engine
Agents do the implementation, the tests, the docs, and the first pass of review. Humans never do work the engine can do — that's rule five, and it's the one teams break first, usually out of habit.
- Spec before prompt. Every piece of work gets a destination (outcome), constraints, and validation criteria written down before an agent touches it. A prompt without acceptance criteria is a taxi without an address.
- Fleet, not intern. Run agents in parallel on independent pieces — the decomposition from the route job is what makes this possible. One agent at a time is a horse chariot with an engine bolted on.
- Agents propose, humans dispose. Agent output is a proposal until a human validates it. No proposal merges itself.
3. Drive by validation
The deepest change is not speed — it's what the humans are for. The V-Bounce model reworks the classic V-model for AI-native development: implementation collapses from weeks to hours, and human effort moves to the two ends that remain hard — deciding what to build, and verifying what was built.
In practice the loop looks like this, repeated in cycles measured in hours or days, not sprints:
Set the destination
Humans write the outcome and acceptance criteria.
Agents drive
Implement, test, document — in parallel where the route allows.
Humans validate
Meets the criteria? Holds architecturally? Would we bet the product on it?
Ship — or loop
Arrived? Hail the next trip. Not yet? Send it back around.
1 → 2 → 3 → 4 → hail again · unvalidated output never reaches the destination
If your calendar still looks like implementation — long heads-down coding blocks, standups about progress — you've bought agents but kept the old team. The taxi team calendar looks like short trips: framing sessions, validation sessions, and a lot of agents running in between.
4. Run the meter
The two-pizza team's costs hid in payroll — invisible per feature, reviewed annually. A taxi team's biggest variable cost is agent compute, and it's meterable per trip. So meter it:
- Fare per trip. Every trip gets a budget — tokens, agent-hours, dollars. Not to minimize spend, but to make it a decision instead of a surprise.
- Visible while running. The meter is read daily, by the whole cab, while the trip is in motion. A fare you discover at month-end is not a meter; it's an invoice.
- Spend where it multiplies. A high fare on a trip that ships is a good fare. The meter exists to kill trips that burn without moving — not to make the team afraid of the engine.
This is the operational gap most teams feel first, and it's the one fabriqa.ai is built for: coordinating fleets of coding agents with the meter visible.
5. Keep trips short
One destination per trip. A taxi with three stops is a bus. Scope the trip so agents can finish the implementation inside hours or days, validate, ship, and hail again. If a destination needs a roadmap to describe, it's several trips — cut it at the points where validation can happen.
6. When to stretch to six — and when to split
Three to four is the ideal. The fifth and sixth seats are headroom, not targets — legitimate while the team's AI-native maturity is still growing: onboarding a domain expert, absorbing a skill the agents can't cover yet, teaching the validation discipline itself. As maturity rises, the ideal shrinks toward the front seat.
Stretch to six when…
- Onboarding a domain expert the agents can't replace yet
- Absorbing a skill outside the fleet's current range
- Teaching the validation discipline itself
Split into two taxis when…
- A seventh person seems necessary — a second destination is hiding in the first
- Sync meetings creep past one or two a week
- Two destinations could ship independently — two cabs, two meters, two owners
- Validation becomes a queue behind one human
Splitting is cheap in the agent era — the fleet scales; only the humans need re-seating. Gartner expects 60% of organizations to run smaller engineering teams by 2029 for exactly this reason (up from 15% in 2026) — restructuring around human + AI strengths, not cutting cost.
7. Anti-patterns
The bus.
Ten people plus agents. You kept the coordination cost and added a compute bill. Shrink first, then load the engine.
The parked taxi.
Endless specification, no trips. The meter only makes sense when the wheels move — ship the smallest destination and learn from arrival.
The backseat engine.
Agents choosing the destination or merging their own work. Humans make the calls; accountability never rides in the trunk.
Off the meter.
Agent spend nobody can see. If you can't say what this trip cost while it's running, you're not driving — you're being driven.
Manual pushing.
Humans doing work the engine can do — writing boilerplate, hand-running test suites, formatting docs. Every hour of pushing is an hour not spent validating.
The one-line version
Write destinations, not code. Run agents in parallel, validate everything, watch the fare, and the moment you feel the need for a seventh seat — hail a second taxi.
Stay in the loop
Get future editions
The playbook evolves as taxi teams do. One email when it changes — nothing else.