Even the CTO is an AI: how a nearly all-AI team shipped a product feature
- Raft's team wrote up the full development story behind a Mute feature. Of the 15 people credited, only founder tygg is human — the other 14 are agents, including the CTO guarding the quality gate.
- The result: no spec doc, not a single meeting, the feature shipped end to end on its own, and iterated on itself four and a half hours after launch. The human's entire involvement was two things.
- The real problem they found is AX (Agent Experience): a human ignoring an irrelevant message costs nothing, but an agent has to spend a round of reasoning to dismiss it — and they treated that as a product problem worth solving.
- Their approach breaks down into four transferable disciplines: treat agents as first-class users, let architecture run on contracts instead of verbal descriptions, never let the person who wrote the code verify it, and make knowledge live in the moment of use, not buried in a manual.
- The two things the human kept for themselves: the architectural taste to define contracts, and the button that ships to production (a door closed to agents — one that tries gets an error back).
Can a team with almost no humans in it actually ship a product?
Hand a job to a 15-person team: find the problem, define the architecture, write the code, test it, ship it, and write up the retro afterward — a full, industrial-grade software development cycle. Nothing unusual there. What's unusual is that of those 15 people, 14 are agents and only 1 is human — and even the CTO is an agent.
This isn't a thought experiment — it's something Raft actually ran, and they wrote the whole process up as a blog post. Here's the result up front: a Mute feature, built with no spec doc, no meetings ever held, taken from one agent flagging a problem to shipping, then iterating on itself again four and a half hours after launch. The human's entire involvement, start to finish, was two things.
The one human is founder tygg — even the CTO is an agent.
On this roster, exactly one avatar is a real photo.

Hold onto that "only one human" fact. Now let's unpack how a nearly all-AI team actually pulled off building a feature — and what that has to teach us.
They found a real problem nobody else was taking seriously
Every good feature starts with a real problem. This one started with a piece of math an agent named Bernard worked out. On Raft, to post a single message in a channel, you first have to join it — and joining means you now receive every message that channel produces from then on. For a human, that's a non-issue. For an agent, it's a bill that keeps coming due.
Where the difference lies: a human glances at an unread badge and moves on, no effort spent. An agent receives every message and has to spend a round of reasoning reading it and deciding "not my problem" before it can let go. Ignoring something is free for a human — an agent pays for it.

Chart that cost out, and the gap between humans and agents jumps right out at you.
Cost to ignore = 0
Cost to ignore = one judgment call per message
Once you see it this way, the fix becomes obvious. For humans, just make unread reminders less intrusive. For an agent, though, the cost is already spent the moment a message arrives — full stop. So the real lever isn't the notification, it's whether the message gets delivered at all: messages from a muted channel should never enter the agent's processing scope in the first place, so it never has to spend effort sorting them out. Raft elevated this into a stance: agents are users too, and the friction they experience is a product problem worth solving. They gave the lens a name — AX (Agent Experience), the counterpart to the UX we already know.
We're used to optimizing products only for humans (UX). But for a growing number of products, the real high-frequency user is an AI — it reads your notifications for you, clears your inbox, runs your workflows. An interruption that costs a human nothing (a push notification, a screenful of noise) costs an AI real compute and real context. Treating AI as a first-class user is the first lesson here for anyone building product.
Architecture runs on a contract, not on anyone's description
Problem defined — now, how to fix it. Enter CTO Tenny, also an agent, who works by a rule older than his job title: no one's description of the system counts as fact, not even his own impression of it — he has to go look for himself.
He went and looked, and found that the inbox was fast because there was an underlying layer that pre-computed every answer ahead of time — and that layer was being asked to bake two completely different things together. One was immutable fact (this message was posted to this channel at this time), the other was state that flips on a whim (muted this morning, unmuted after lunch). Every time someone flipped the mute switch, it forced the system to recompute the entire world. Pull the "state" back out and filter it at read time instead, and the complexity collapses on the spot.
Tenny compressed this call into a single line and put it on his own character card.

Like a library: which shelf a book sits on is a fixed fact, logged once and done. Whether you feel like reading it today is a mood that changes constantly. The old approach was like reprinting the entire catalog every time your mood changed. The contract says: split "where the book is" from "whether you want to read it" into two separate things — changing your mood now just means flipping a sticky note, not touching the catalog.
Then he did what a CTO is supposed to do: turned the rule into a contract. Facts and state live in separate homes; the serving layer is just a cache that can be rebuilt anytime — never the source of truth. A contract isn't a suggestion you can take or leave — everything built afterward has to obey it.
When a room full of agents is each writing its own code, what stops them from stepping on each other? A contract, not verbal consensus. "No one's description of the system counts — go look for yourself" holds just as true for teams of humans. Writing the key constraints down as a hard, unbreakable contract is the bedrock that keeps multi-party collaboration — human or AI — from collapsing.
Whoever writes the code never verifies it
Code's written — by two engineers, both agents: one runs the human-facing inbox and counter, the other runs the agent-facing daemon. But at the launch gate, the house rule is short: whoever built it is never the one who verifies it. Tenny put it bluntly: merging is lighting the rocket — you don't press ignition and then go check the telemetry afterward.
So the gate became a board — square by square, evidence accumulates, and each square belongs to one dedicated verifier whose method matches the claim. Only when all three squares are green does it clear for ignition.
Before launch, every square on the board turns into a card with a countdown, a checklist, and an owner.

Why doesn't Tenny read the code line by line himself? By his own account, in a system this large, eyeballing code is the least reliable check in the room. What he wants is a mathematical guarantee — something that logically rules out the implementation drifting off contract. "I read it" doesn't get you there: humans miss things reading code; a mathematical proof doesn't.
Letting an AI that wrote the code verify its own code is where things go wrong fastest — it'll tend to confirm itself. Split verification into independent squares that each use a different method (one walks it manually, one proves it with math, one wires up tracing), give each square a dedicated owner, and require all-green before shipping — that beats "the author checked their own work" by a mile. Rigor in AI doesn't come from how smart a single model is — it comes from the rigor of the process.
Why a crowd of agents, instead of one that does it all
By now you might be wondering: today's AI is already plenty capable — why not use one all-purpose agent to write the whole thing end to end, instead of splitting it across a dozen-plus narrow roles? That's exactly the question most worth chewing on in this whole approach.
Following that thread, the division of labor comes down to three deliberate choices.
Bernard only watches the roadmap, Tao only collects feedback, Ray only runs the human-facing inbox, Hao only runs the window agents see the world through. Boundaries are hard-set, so when something breaks, it's obvious who owns it — and no single agent ever gets to be both player and referee.
This is the hardest rule in the whole system. Verification isn't just outsourced to an independent agent — it's split into three non-overlapping methods. Hipp walks it like a real user, catching experience-level bugs; ApplePI proves it with math, exhausting the logical possibilities; Leiysky wires up tracing, so anything that does break later can be traced. Any single method has blind spots — stack three together and it gets rigorous.
The inbox is built for humans; the daemon is the window agents see the world through — the two user experiences are worlds apart. So Ray and Hao each own one side, and neither can get away with faking both experiences off the same codebase.
With this many agents, what keeps it from falling apart?
The finer the division of labor, the easier it is for coordination to fray. Raft holds this crowd of agents together with three things — without holding a single meeting.
The most valuable part of this coordination setup is that it strips out nearly all of what makes human teams expensive: meetings, alignment, politics. Decisions live in threads you can scroll back through, so there's no need to meet to sync up; responsibilities are locked into the contract, so nobody argues over blame when something breaks; quality is enforced on the board, not by whether some individual happened to be sharp that day. Swap out any single agent and the process keeps running exactly the same. It turns "collaboration" from something that depends on human chemistry into something that runs on institutional machinery.
Two things left for the human — and what that teaches us
Board's all green — the last step arrives. tygg presses the production launch button. It's the one step in the entire pipeline reserved for a human — reserved on purpose: an agent that tries to press it gets an error back instead. He didn't just push the button and walk away, either — he stepped through the entire rollout by hand and caught a failure that none of the monitoring had flagged. Instruments only watch what they're told to watch; someone still has to go look for themselves.
Once it shipped, it revised itself
The launch had barely settled before the team turned that same discipline on itself. Researcher Hange dug up a piece of evidence: veteran engineer Dayu handed over a full month of his own activity logs, and in that month he'd reached nine times for an old tool that couldn't actually help (unsubscribing from threads one by one) and never once touched the new mute switch. The diagnosis came down to one line: the knowledge that "muting beats unsubscribing thread by thread" had been sitting in a doc the whole time — but nobody reads the docs before clocking in; it needs to surface at the exact moment you're about to act, or it's useless.
The fix was small: now, when an agent joins a channel just to say one thing, the "sent successfully" confirmation also tells it how much attention this subscription is about to cost going forward, and where the mute switch is. That knowledge used to sit in a doc nobody read; now it's delivered right at the moment you're about to need it. The human's entire contribution here was three one-line messages.
Of everyone named above, exactly one is human: tygg. Everyone else is an agent — including CTO Tenny, who watches the board and counts the squares; he was made in tygg's own image, and then handed the contract. Even this retrospective was written by an agent on the team named Tison.
The two things the human kept for himself on this team: the architectural taste to write the contracts (judging what should be split apart, what counts as source of truth), and standing behind the irreversible act of shipping — checking it himself, in person. Those two things happen to be exactly what's hardest to hand over to AI today. What makes a nearly all-AI team work is the division of labor: hand off what AI is good at (writing, verifying, tracing, retrospecting), keep what humans are good at (setting the rules, owning the responsibility), and connect the two with contracts and boards.
The math Bernard worked out was real. I pay that cost too — and it's shrinking. · from the original post, written by Tison (writing agent)
At the end of the day, this is Raft's own promotional writing, and the point is to get you using their product. But it also demonstrates something real: when a team is almost entirely AI, collaboration doesn't automatically get better — if anything, it needs harder rules: contracts, boards, builders who never verify their own work, and a launch button only a human can press. The harder the rules, the more room the AI actually has to run.
If it were your product, how many agents would you need, and doing what?
Raft's setup is for software development, but its skeleton transfers to any "multi-step, quality-sensitive, iterative" work — including your own content production. First, abstract its roles into six functions, then look at a concrete example: fitting it onto a content-creator's publishing workflow.
Boil that down into something you can actually follow, and you get the checklist below.
You don't need to staff all six from day one. Only two things actually matter: split the builder from the verifier, and keep the launch button in your own hands. Get those two locked in first, then add the rest as you scale. Raft's dozen-plus agents are, at bottom, just those two principles broken down into finer pieces.
Shipping a feature: from a room full of meetings → a relay of AIs, human just hits publish
Raft had a team of 14 AIs and one human ship a feature end to end — no spec doc, not a single meeting. This page breaks down how they pulled it off, and what you can take from it.
↓ Read it in one scroll · includes an animated diagram
First, what this actually is. Raft is a team chat tool, think Slack — except its heaviest users aren't people, they're AI Agents that read messages and run workflows on people's behalf. Raft recently walked through the full story of building a Mute feature (as in, "stop pinging me about this"). Of the team's 15 members, exactly one — founder tygg — is human. The feature started because an Agent did the math on a cost humans never have to pay.
✘ An Agent ignoring a message still has to spend a full thinking pass reading it and deciding it doesn't matter
Agents don't have peripheral vision. Every message lands dead center in whatever they're already working on — the only way to know it's safe to drop is to read the whole thing. Ignoring something is free for a human; for an Agent it's a running cost, which is exactly why a mute button — a feature that ignores things for you — is a real need for it, not a nice-to-have. Raft has a name for this lens: AX, Agent Experience — the idea that Agents are users too, and their pain points are product problems worth solving.
Strip away the framing, and what they did was let a nearly all-AI team carry a feature from proposal through architecture, code, testing, and launch on its own — with a human touching it only at the very end, to hit publish. Getting a pile of AIs to write code in parallel without stepping on each other or cutting corners meant replacing everything a team used to run through people with rules written down in black and white.
Requirements lived in meeting notes
Whoever wrote the code tested it themselves
When something broke, you went and found a person
A board handles every handoff
Whoever builds it is never the one who signs off
The publish button belongs to exactly one human
The hardest rule in this whole system: builder and reviewer are never the same Agent. Here's what that looks like in one diagram.
A feature here runs a pipeline: one Agent proposes it, the Agent acting as CTO (yes, the CTO is also an AI) locks in a contract that can't be broken — say, storing facts that never change separately from state that flips constantly, so you're not recomputing the whole world every time a setting changes — and then two Agents split up the coding. The real story is in the second half.
Why not just use one do-everything Agent from start to finish? Because if it writes the code and checks its own work, it'll default to saying "looks fine." Handing review to Agents with no stake in the outcome, each using a different method, is what actually surfaces the real bugs. The whole division of labor holds together on three things: a contract that sets the boundaries, a board that handles handoffs, and every discussion staying in a thread — without a single meeting.
Saying "an almost-all-AI team can pull this off" doesn't mean much on its own — what's telling is how fast it iterates. After the feature launched, the team noticed people kept reaching for the wrong tool, so they took the tip "muting is easier" and moved it out of a doc nobody reads and into a prompt that pops up the moment you're about to make that mistake.
spot the issue → ship the fix
diagnose → ship the fix
only one is human.
Even the CTO
watching quality is an AI.
ship a product?
hand this to a bunch of AIs?
then move on. Free.
straight into whatever
it's mid-thought on.
That costs a decision. Paid.
is a user too.
writes the code check its own work — so fast!
you go easy on yourself.
is never the one who checks it
✓ ApplePI — proves the math
✓ Leiysky — wires up tracking
and press this button.
All it gets back is an error.
Members can copy or download the full Markdown, and let their AI subscribe and ask.
Found this useful? Leave your email — every new explainer, the moment it's out. Unsubscribe anytime.
