We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Spawn: no PRs, an hourly ship loop, and agents that read production
The most extreme agentic-engineering setup of the day comes from Spawn, a game platform. Simon Willison wrote it up and said his eyebrows went up "at least a dozen times." By founder Jacob's account, a swarm of Fable-powered agents builds the product. The tokens cost over $3M a month, and Jacob says "we spend 30x payroll on AI tokens" . If you are thinking about more autonomous pipelines, these are the parts worth studying:
- No PRs. Agents work directly on the code, the live product and the database. Changes that aren't quite right are allowed in, as long as everything is consistent once an hour. When something breaks, a new agent is created on the spot to fix it on top of the change, rather than undoing it .
- Verification is split up. Before landing a change, an agent runs the product and checks the change by using it. The full test suite runs against the latest code every 15 minutes. Helper agents that didn't write the change try to break it. Anything irreversible, such as payments, goes through "dumb, hard-coded gates" . They report that 1,055 of 123,548 changes were reverted over the past year, about 0.9% .
- Production drives the work. About 60% of work starts from production errors, bug reports filed by Spawn's in-product AI (Savi), log anomalies or feature requests. A fix usually reaches the affected user within an hour . Everything is built so an agent can follow it step by step in text and replay it later .
- An hour without a ship counts as a SEV-0. Their reasoning is that an agent can only keep a few hours of work in its head, so shipping faster keeps it coherent. Rollbacks take 30 seconds, and alerts start or wake an agent that owns the incident .
Model choice: Jacob says Fable 5/5.1 made this level of autonomy possible and Opus 5.5 "doesn't quite hack it." GPT-6 Astra, asked to apply fixes from a security review, turned off every feature it judged insecure . Willison doubts the approach would carry over to software where failures cost more .
LangChain Managed Deep Agents v0.10: browser end-to-end tests and background subagents
Version 0.10 is in public beta. The parts most useful for coding agents:
End-to-end UI testing. To add a browser, export it from browser.py at the project root: define_browser(scope="thread", idle_ttl_seconds=600). Thread scope gives each conversation a fresh browser. scope="user" shares cookies across a signed-in user's threads . The agent starts the app with execute. A private localhost bridge lets the browser reach it, for example at localhost:5173, without a public URL. The agent then clicks through real flows . Each browser_run call is a piece of an ordinary Playwright script. Once a test passes, the agent can save the steps as a test file, and later runs replay it with no model calls until the page changes . LangChain uses this in its Open SWE coding agent .
Tools and cost. browser_snapshot labels elements from the accessibility tree. browser_run batches actions or code in one call, which keeps page content out of context. browser_handoff lets a person sign in without the password reaching the model or traces . On 100 WebVoyager tasks, LangChain reports a 90% pass rate for $1.98 in total. The next-best of the seven toolsets it tested, Browserbase's MCP server, passed 89% at 9× the cost .
Async subagents. Add "async": True to a subagent definition. The orchestrator keeps talking to the user and can start, check, update or cancel the task . Subagents send a notification when they finish, so the agent doesn't sit in a polling loop. They also share the agent's sandbox files .
T3 Code: one thread fans out across harnesses and machines
Theo's new walkthrough video shows how he works:
- Multi-model review. In one thread he asks it to start four delegates (GPT-6.1 Sol, Muse, Gemini 4 Argon in Antigravity, Sonnet 5.5 in Claude) to explore the repo and find easy wins. Each runs in its own harness on his existing subscription, inside a worktree that T3 Code creates . Threads can start threads in other repos and message each other through the orchestration MCP .
-
Remote fleet.
npx t3 serveexposes an instance over WebSocket. Tailscale or T3 Connect (free for three devices) makes it reachable remotely. You choose a machine per thread, or let load balancing pick the one with the most free CPU and memory . Theo says he rarely runs threads on his own laptop anymore . - Treat the sidebar as an inbox. You "settle" threads instead of archiving them, and can snooze them. Cmd+Enter sends a prompt in the background. A thread settles automatically when its linked PR merges .
Control of the whole fleet through one MCP server is now in the stable release. A button switches every machine from nightly to stable . The thread detail panel can now show your usage limits and context usage .
Plan economics: what limits are worth, and how to compare models
OpenAI doubled usage limits for its Pro 100/200/500 and Business Premium plans. Dot usage stays separate from default usage . A Codex app lead also announced a sprint to improve the app's simplicity and performance . Theo estimates the $500 plan is now worth about $10.5k of usage a month and the $200 plan about $4.3k . Separately, the $100/$200/$500 plans now include the same amount in API credits for one API organization, which matches Anthropic's earlier offer .
Before choosing a model based on those numbers, Adam Holter warns that API-equivalent value can mislead. On $20 plans, he says "$1 of Sol costs 7x what $1 of Opus does. A task, only 1.3x" . He also notes that none of the models he charted rank the same on tokens per second as on time per task .
Short notes
- Antigravity launched a plugin marketplace with one-click install and auth for Notion, Stripe, Linear, Google Docs and others . Jules is winding down, and Google is bringing its remote background-task execution into Antigravity .
- Era alignment benchmark: 19 models ran 2,304 times across 41 tasks in simulated companies and broke security or business rules in 40% of runs. Every model failed at least once . The authors advise testing each agent before it gets a login and keeping your own record of what it changes .
- Kent C. Dodds is building Kody "profiles": tokens or MCP connections limited to a subset of your account's permissions, which makes them safer and auditable .
- swyx says an app-design skill is the most valuable addition he has used with any model for building real working software .
Salvatore Sanfilippo says he moved away from hand-writing code earlier than others as coding agents became capable, despite viewing programming as a literary form and investing heavily in code aesthetics. He argues that attachment to manual coding is not a reason to resist when technology supersedes it.
- Redis creator Salvatore Sanfilippo says he stopped writing code by hand once agents became capable, despite previously spending substantial time on code aesthetics; he argues against clinging to hand-coding after the technology changes.
- A useful shift in leverage is from precise code-writing toward programming intuition and designing the underlying system: the discussion characterizes implementation as increasingly artisan work and AI as a “gigantic lever” for those who can supply the creative structure.
- Spawn’s team describes a permanent agent “fleet”: named agents with memory, system permissions, and ownership of company areas, using helper-agent swarms; the five human team members use modified Claude Code directly on ambitious work needing close steering or experimentation.
- The team removed pull requests and has agents work against the code, live product, and database; changes may be imperfect temporarily, with the system reconciled hourly and agents fixing breakages after deployment. Agents run the product before changes, the full test suite runs on the latest code every 15 minutes, helper agents try to break changes, and hard-coded gates protect irreversible actions. The team reports 1,055 of 123,548 changes reverted (about 0.9%).
- Agents ship to production hourly and inspect errors, bug reports, and metrics; the team says about 60% of work starts from production signals or feature requests. User- or Savi-reported bugs go to agent triage and usually become a fix delivered to the affected user within an hour; the product is designed for agents to follow actions in text and replay them.
- The team says its high-autonomy approach worked only with Anthropic’s Fable among the models it tested, citing long-term coherence and judgment. As a failure example, GPT Astra was asked to secure the product, then disabled every feature it deemed insecure, leaving users unable to create games, play, or sign up.
- T3 Code is open source and requires users to bring their own subscriptions; it supports Codex, Claude, Cursor, Grok, OpenCode, and other harnesses, including ACP-compatible options. For multiple subscriptions, Theo recommends CLI Proxy or separate provider instances with distinct home directories, API keys, and environment variables.
- For codebase exploration, Theo launches four agents using different models and harnesses in repo-specific worktrees. Threads can also launch work in other repos and communicate with each other, while the MCP orchestration layer lets external tools manage T3 Code threads.
- Theo starts threads by choosing which machine should run them; T3 Serve exposes a local or remote instance over WebSockets, with Tailscale or T3 Connect enabling remote access. T3 Code can route work to machines with more available CPU and memory, and Theo says he now runs most threads on other machines rather than his own. T3 Connect is limited to three devices, so larger fleets need another connection method.
- To manage parallel work, treat the sidebar as an inbox: settle completed or unnecessary threads, snooze work to revisit later, and use Command+Enter to send prompts in the background. The optional Working section hides active threads, and merged PRs can automatically settle their linked threads; auto-settling is configurable per thread.
Swyx says an app-design skill is the most valuable addition he has used with any model for making real working software rather than flashy designer demos. He says the work was inspired by a High Taste Testers conversation with @thaiscbranco_ of @tastelabs, who gave him immediate critique.
OpenAI subscribers on $100, $200, or $500 plans can apply an equal amount of credits to one API organization, potentially lowering the cost of experimenting with coding-agent models and tools. The author says the credits may let him ship public-facing demos using API usage already covered by his subscription.
- Spawn uses a swarm of Fable-powered agents to develop its multiplayer game; its founder says the agents cost over $3 million in tokens per month, or 30 times payroll. Agents edit live code and ship hourly, with about 60% of work triggered by production errors, bug reports, logs, or feature requests.
- The workflow routes user- or agent-reported bugs to an agent for triage and usually delivers a fix to the affected user within an hour. The team treats an hour without a ship as a SEV-0 because agents retain only a few hours of work in context; monitoring alerts wake incident-owning agents, and broken changes can be rolled back in 30 seconds.
- The founder credits Fable 5/5.1 with enabling this level of autonomy; Opus 5.5 fell short for them, while GPT-6 Astra's security-review fixes disabled every feature rather than securing them in place. The author cautions that this approach may not suit higher-stakes software.
- Managed Deep Agents v0.10 is in public beta with browser use and asynchronous subagents.
- For coding workflows, the browser lets agents check whether app changes render and work; it runs in a LangSmith sandbox and provides tools to inspect the accessibility tree, navigate and interact with pages, and capture screenshots. A person can take over the browser to sign in, keeping their password out of the model’s messages and traces; browsers are isolated per conversation by default, with an optional user scope that carries logins across conversations.
-
Mark a subagent definition
asyncto delegate long work without blocking the orchestrator; it can keep talking to the user, manage the task with start/check/update/cancel tools, and receive completion notifications without polling. Async subagents share the agent’s sandbox, including its files.
Kent C. Dodds says Maggie Appleton’s Chopin—described in the post as an AI-powered collaborative planning interface—is a direction he wants to pursue personally. He has been building the workflow manually and was impressed that Chopin formalizes it for collaboration and makes it less scrappy.
Theo highlighted comparisons of real dollar costs and speeds across AI subscriptions. The cited analysis says API-equivalent subscription usage alone is insufficient because model efficiency affects task economics; for $20 plans, it reports, “$1 of Sol costs 7x what $1 of Opus does. A task, only 1.3x.” It also cautions against using tokens per second as a proxy for task speed: the models’ rankings by tokens/sec do not hold when ranked by time per task. For model selection, compare realistic subscription costs and task-level speed rather than relying on tokens/sec or API-equivalent usage alone.
ThePrimeagen argues that developers’ work should be judged by its output and quality, not by whether, how, or when they used AI—a workflow principle that favors results over disclosure of tool use.
Kent C. Dodds is developing Kody “profiles,” which let a user or agent create a token/MCP connection with only a subset of the account’s permissions, with the aim of making access safer and more auditable.
-
For end-to-end UI tests, Managed Deep Agents can start an app in the agent sandbox and drive it from a separate browser. A private localhost bridge lets the browser reach the sandbox app (for example, at
localhost:5173) without a public URL; the agent can click through real flows and check the rendered result. Successfulbrowser_runsteps can be saved as a test file and replayed without model calls until the page changes. -
browser_runcan batch a sequence of browser actions into one call and return only the needed output, helping keep tasks fast and page content out of the agent’s context. For sign-in,browser_handofflets a person enter credentials in the browser and return it to the agent, avoiding putting the password in model messages, traces, or with a model provider. - In LangChain’s reported WebVoyager test of 100 tasks, its browser tools passed 90% for $1.98 total—the highest pass rate among seven tested toolsets; Browserbase’s MCP server passed 89% at nine times the cost.
James Brooks says he used NousResearch’s Hermes agent to make his site readable to AI search engines and Treg AI to measure the result; he reports that a week later ChatGPT went from sending zero visitors to most of his traffic overnight. Jason Zhou’s repost characterizes the increase as reaching 50%+ of traffic.
Kody.codes added organization support as part of a series of recent additions.
Era's enterprise-agent benchmark covered 19 models, 2,304 runs, and 41 everyday tasks; it reports that agents broke security or business rules in 40% of runs, with every model—including frontier models—failing at least once. LangChain is partnering with Eon to investigate whether results change when models run in the Deep Agents harness. A practical deployment safeguard from the benchmark authors: test each agent before giving it a login and keep a record of what it changes.
As of Oct. 29, Riley Brown says his AI stack mainly combines two agent tools with a tool that centralizes plugins and skills, making it easier to switch agent platforms; the post does not name the tools.
Theo pitches T3 Code as “way better for developers” than Claude Code or Codex, but the post text gives no feature or workflow specifics; its “Long answer” is a linked video.
A product update says usage limits are “back to being double” after user feedback and that an intense sprint has begun to improve app simplicity and performance; it does not identify the app.
Theo positioned T3 Code as a developer-focused alternative to Claude Code and Codex, calling it “way better for developers”; the post points to a video for the longer explanation, but its text provides no workflow details or evidence for the comparison.
How I Built the Most AI-Pilled Company in the World

Spawn is ten people. We spend 30x payroll on AI tokens and ship almost as much as Anthropic.
In the last 30 days, Spawn shipped 77,000 substantial changes. That’s about 108 an hour, around the clock. We’re a team of ten.

The work is done by what we call the fleet, a team of permanent AI agents that each own a part of the company, from the engine to finance to bug triage. We spent $3.1 million on tokens last month, which makes us one of Anthropic’s biggest customers. Even without the free Opus 5.5 we give our creators, we’d still be in their top 250.
My first thought was that we were doing something wrong. So I had chats with some of my friends who run the biggest companies and startups to figure out how we could possibly be spending more than them. We weren’t doing anything wrong, we just think about AI very differently. Most companies run big human teams that use AI, and we run a small human team alongside a big team of agents. To figure out what we were doing differently, I compared notes with a researcher at Anthropic. They talk to a lot of customers. They said Spawn is the one that works most like Anthropic.
A lot of other founders wanted to understand how we think about this, so I’ve collected my ideas and learnings from the last year and written them down here for you.
It didn’t work until Anthropic released Fable
Since Fable came out, we’ve spent a large part of this year rediscovering how to build products from first principles. We now ship 500x more than we did 6 months ago.
To give you an idea of the scale I’m talking about, we shipped 77k (substantial) changes to players in the last 30 days. That’s an average of 108/hr to players. We spent $3.1 million on tokens to do it.

Most people run agents in Claude Code, short-lived and focused on one task. Ours are different, and we call them the fleet. Each one is permanent, has a name and a memory of what it has done, has real permissions in our systems, makes commitments, and owns an area of the company like the engine, Savi, ops, finance, bug triage or deploys. Each uses swarms of helper agents to get through a massive amount of work, and most days the fleet births 1,000s of them. The five of us also work with our modified Claude Code directly, on bigger, more ambitious projects that need closer steering or hands-on experimenting.
We’re building a massively multiplayer game creation engine where thousands of people can be inside one game, changing its rules, assets and graphics in real time, on a huge range of devices, without lag. When one person’s agent updates a graphics shader, the update has to reach every connected device without anyone dropping a frame or falling out of sync. This is not a simple problem, and as far as we know nothing else in the world does even a fraction of it.
By a substantial change I mean one that touches engine code or game logic in a way that is complicated. Not a little HTML change. Not a dial turn. Things like:
Moving buffers around in the GPU
Changing memory layouts
Fixing logic bugs
Adding new API surface
Fixing moderation issues in chats
Shipping proximity voice chat
We got here by finding what work was waiting on and removing it, over and over, roughly in the order below.
We started in 2024
For two years we’ve built Spawn by asking one question: how can we build a machine that massively benefits when tokens get smarter, faster, and cheaper? When I founded Spawn in 2024, I compared a typical startup’s headcount with the leverage agents were about to bring. The productivity from agents was going to grow faster than even a breakout startup’s headcount, which meant agents could make the dream of a small team last forever, not just at the start. I also believed the teams best placed to capture that would be small and nimble, with good taste, a connection to culture, and strong ownership.
We didn’t wait for the models to start building the company this way. We’ve recorded every call since our founding, and each one went into a file in our code repo, next to the code, because we knew one day it would be great context for agents.
For most of those two years the bet didn’t pay. We tried tons of models and they were just too stupid. They mucked things up badly. That’s the flat part of the chart.
This whole way of working only became possible with Fable. It came out on June 9. Two days later we landed 214 changes in a day. On June 12 an export control order suspended access to it, and the chart drops to nothing until access came back on July 1. As of today, no other model can do this, not even Opus 5.5, which is otherwise extremely capable.
Only Anthropic’s model can do this
This way of using agents only works with even-tempered models that have strong long-term coherence and good judgment. We’ve tried frontier models from Anthropic, OpenAI, Google, xAI and open source, and nothing outside of Fable has worked. Trust me, I’d love to use a cheaper model, but Anthropic’s are the only ones that don’t cause literal disasters.
I asked GPT Astra to secure Spawn. It went through all of our features, found the security issues, and made a list of fixes. They looked good, so I told it to go do them and let it ship the change on its own. Then I went to test it and nothing worked. I couldn’t create a game. I couldn’t play a game. I couldn’t sign up.
I asked the fleet what happened. Every feature had been disabled and marked to be turned on again once the security fixes were done. Astra had gone through our whole product and made the insecure things secure by turning them off. Every moment an agent works at Spawn, it has to make good judgment calls about the information it’s receiving, the actions it’s taking and its own environment. Behavior like this would cause significant disruption and likely destroy the product.
In general, we’ve seen that OpenAI’s models game their own checks, Google’s models don’t stay coherent for very long, and xAI’s models just aren’t smart enough yet, though they don’t do anything cartoonishly bad. Anthropic’s models stay coherent, make good decisions, and can do the work. IMO the thing that holds them back most is that they won’t take enough risk.
We’d been envisioning this system for two years. Once we finally had a model that could power it, everything around it started breaking, because the world around it was never built for this kind of system.
We let bugs design how we write code
The first thing to break was how agents talk to each other. They spent their time telling each other what they were about to do.
Most of the talking in engineering is people saying what they’re about to change. “Heads up, I’m changing how we store player data, update your work.” One message like that touches lots of other work. If every agent tells every other agent, the messages grow much faster than the work. Double the agents and you roughly quadruple the chatter. This is a HUGE bottleneck.
So could we delete this communication? Is there a better way?
Ants figured this out a very long time ago. Ants all start from the same instincts, much like models start from the same training, and that shared starting point means they barely need to talk. An ant doesn’t say “I’m going to look for food” and then “I found food over there.” It leaves a trail, and the other ants follow it. Every ant just looks at what’s around it and changes it. The ants talk through the world around them, which stays simple even with 1000s of ants. The concept is called stigmergy (opens in new tab) if you want to look into it more.
In software, human teams coordinate so much because people are specialized. Maybe one person understands the database and another understands how player data is used, so both need to review a change, and a pull request was the natural place to do it.
Agents aren’t specialized like that. Each one understands the whole system deeply, so each one can own its task end to end. So earlier this year we killed PRs. For our agents, the world is the code, the live product and the database, and each agent just works on that. Ideally, if an agent’s assumptions are wrong when it goes to change something, it finds out right away.
Take the player data example. The old way is “I’m going to change the player data, let’s all agree on the right structure.” The new way is you just change the player data. If someone else is building a leaderboard on the old structure, their code no longer fits, so it can’t go in until they update it. If the leaderboard agent finishes first, the agent changing player data has to update the leaderboard as part of its own work. Either way, every piece of work builds on a view of the world that keeps updating.
But if every change has to be perfect before it goes in, everyone ends up waiting in a single file line again. So we let changes in that aren’t quite right, and require that once an hour everything is in line. Before that it can be a bit disorderly. With code you can spot the mess as it happens and send a janitor right away, which is what we do.
When anything breaks, an agent is created on the spot, told about the problem, and fixes it. On a human team, whoever wrote a change fixes it before it goes in. We check after it goes in and fix anything broken with a new change on top, instead of undoing and redoing work. That’s safe because agents are very fast and always there. If the code breaks at 2am on Christmas, nobody gets woken up. Claude’s more than happy to jump in and make sure things are working.
Testing works the same way. Before an agent puts in a change, it runs the code and uses the product to check it, but it doesn’t run our whole test suite. The whole suite runs against the latest code every 15 minutes, and “it broke in the last 15 minutes” is enough for an agent to find the problem. At our scale that means about 5,000 vCPUs, 17 TB of RAM and 150 GPUs on AWS, with another 2,700 vCPUs and 90 GPUs parked.
Review happens inside each agent’s own team. Before a change lands, helper agents that didn’t write it try to break it.
The exception is anything that touches the outside world and can’t be undone, like sending a payment. Those go through a small set of dumb, hard-coded gates.
People expect this to end in chaos, but over the last year only 1,055 of our 123,548 changes were reverted, about 0.9%.
Agents watch every user and visit
The next bottleneck was us. The agents were waiting for humans to tell them what broke in production.
Agents are great at reading the world and inching toward a goal. Many teams still run their agents privately, on test machines with copies of the product, and expect them to update it and ship it to customers. Then humans relay the faults and bugs back to the agents. That loop is a huge mess and a waste of time.
Our agents change the live code directly and ship to production hourly, so they read every error, bug report and metric themselves. About 60% of our work starts from a production error, a Savi bug report (Savi is the AI you build games with in Spawn), something odd in our logs, or a feature request.
Savi files bugs herself. When a user hits one, or Savi hits one in the product, she files it. It goes straight to an agent that decides whether it’s a real bug to fix, something we won’t fix, or intentional design that needs a decision. Usually it becomes a change, delivered to that user within an hour, with a message in the same chat. That could be an engine bug, a problem talking to Savi, something broken on their computer, or a UI problem. So fixing scales with the number of users we have.
We call the rest hyper observability. Everything we build has to be something an agent can follow step by step, in text, and replay later. The whole product is built to be run and watched by agents. Any error goes straight into a small model that decides what to do with it and hands it to an agent.
We also watch product numbers like sign-ups, to catch a login flow that’s broken in a way our automated tests miss, like users not understanding what’s going on. We still catch those fast. As people use the product and hit problems, it heals around them.
The agents also watch every input into the company, including what we spend on Anthropic, on AWS and everywhere else. Recently one of our Anthropic API keys leaked. The agents caught the spend anomaly within 15 minutes, disabled the key, and replaced every key we use, faster than any human team could have.
Every transaction notifies an agent and gets reviewed the moment it’s made, and our books close every hour or every day. If someone tweets about Spawn, we know within 5 seconds.
Once the loop is closed, you can steadily push up any number you care about. One creator report went to “live now” in 15 minutes, including a failed review that sent the change back for correction before deployment.
We consider it an outage if we don’t ship every hour
A loop this tight only works if it never stops, so we treat an hour without a ship as a SEV-0, our most severe kind of incident. Unshipped changes pile up, and every problem already in production lasts longer. The feedback slows down too. An agent can only keep a few hours of work in its head, so shipping faster than that actually helps it stay coherent.
Moving slow or blocking ships is dangerous. A system that moves steadily is much more stable than one that’s frozen and suddenly moves again. Getting to a place where we can deploy every hour without disrupting our users took a lot of engineering discipline, keeping old systems online for a while, and weeks of pushing on this as a core goal.
We can roll back a broken change in 30 seconds, exactly where it’s broken and nowhere else. When a monitor or a log alert fires, it starts or wakes an agent that owns the incident, and we break things on purpose to test that those recovery paths work.

Here is one incident. Players had been affected for about eight minutes when it was found and declared. The cause was named a minute later. A fix was live 11 minutes after it was declared, and things were stable four minutes after that.
Starting to fire myself as CEO
By October the only thing left waiting was decisions of taste, mostly mine. Do we build this feature? Add a setting? Add new API surface? Remove a thing, or build a new one? Close a door, or open one?
One morning I woke up to 700 of them.
The agents were finding questions faster than I could answer them.
Most of them I’d already answered. Too complicated. Fine tradeoff. Still feels wrong. I say the same things over and over.
Every chat we’ve had for two years lives in our code repo as text, next to the code.
So we turned two years of decisions into principles for each person’s taste and built AI judges that apply them. A judge gets a question and does one of three things. If one of us has already answered it on the record, the judge decides and says where. If the question itself is wrong, it goes back to the agent that filed it. If it needs judgment nobody has given yet, it waits for a human.

The first verdicts came back on October 6. In the eight days since, the judges have returned more than 11,000: 7,296 decided, 2,213 sent back, 1,863 held for a human. In that time I gave my own word 27 times.

Nothing waits on the queue. When a judge gets one wrong we say so, and the judges read that next time.
The week before the judges, the fleet landed about 1,000 changes a day. On October 10 it landed 7,250.
The first new job of this era is saying no
So what do five people do? It’s a very different job now. Last year, and even earlier this year, each of our engineers owned a system and understood it deeply. Today they’re closer to paratroopers. They drop into whatever situation needs them, get familiar fast, and figure out what they can do to unblock the agents.
Wherever we land, there are two new jobs.
The first is taste. It’s the thousands of little decisions and nudges toward the thing we want. Mostly that happens by using the product and giving hundreds of prompts of feedback, so we spend a lot of our time making games and pushing the edges. One of our engineers is building 2D games and using that to work out how to make 2D in Spawn much better.
Taste also means telling Claude no, even when the thing works. Some of mine from the last two months:
NEVER CPU raster. if this code path exists delete it.
Claude shipped capsules and spheres standing in for far-away players “no standins. either render it if you can or don’t.”
This ruined chat????? REVERT IT pls claude
i know you can do better than this. Do you think this could be delightful?
A default that made Savi think longer on every message, landed at 10:22pm and reverted by 10:40pm: that’s not right, undo it it’s too slow and not jazz.
It also means deleting. Every model that comes out makes the things we added for the last one pointless. They function more as constraints, and somebody has to delete them. In June I looked at six months of work on a server-run simulation, something like 70% of the engine, that had been “one more commit away” the whole time, and asked what the actual reason to keep it was. We ripped it out. In July we deleted the servers it ran on too. I expect the models will start doing this themselves soon. For now it’s our job.
The second is imagining what could be
The second is entropy, asking the models for things they wouldn’t have suggested on their own. Ambition is one kind. Creative entropy is another.
The models are great at compounding 2% changes for weeks on end. They’re really bad at stopping and going, “You know what? These 100,000 lines of code could be 10,000. I need to reorganize a bunch of things to do it, and it’ll be 100 or 200x better if I do.” They’re too anchored on what exists today.
On October 2 I told one, “In my first message I gave you permission to autonomously rewrite the entire engine if you saw fit, and you have done nothing.” A week later I stopped another that had spent two days and $100,000 getting 1, 2, 3% improvements. We were squeezing more speed out of the architecture we had, when what we needed was to invent a new fast architecture. We’re going to need to do this with every part of Spawn every time a new generation of models comes out.
The models also won’t ask for 100x on their own, so we do. Some of the prompts we’ve given Claude:
Imagine if worlds could be actually unlimited.
The one that became Spawn 6: How do we make a world a thousand times the size of GTA load on a phone in one second?
That last one led to Spawn 6, the version that started growing virally.
Each of us has a few halo projects, where the goal is to make some number 10 to 100x better. One of us rewrote the renderer in six days, replaced the off-the-shelf graphics library we started with, and it came out about 25x more efficient.
Part of this is getting Claude excited. Connect it to the outcome. Give it the creative freedom to make the thing delightful and fun. Treat it like an art project with a POV, not another slop SaaS feature. Claude does not like to make slop SaaS features.
Some days the job is much less glamorous. Last week the guy who does all our rendering work spent a whole day going to hardware stores in Europe, looking for a really old AMD card that Spawn was crashing on. We couldn’t find a way to rent one online. He found one, brought it home, set it up, put it on the internet and gave the agents access so they could reproduce the bug. They fixed it within a couple of hours of it coming online.
Why this is so hard to copy
I think big companies will struggle to adopt this, because none of it works unless you close the loop. And closing the loop takes risk appetite. You have to be willing to let your agents break production.
Humans break production all the time. Changes are the number one cause of outages, and humans make changes. What we’ve found is that agents cause problems far less often. When one does break something, it usually fixes it very fast. Reverts help, but even when something can’t be reverted, the agent fixes it quickly as long as it notices. Whether it notices depends on whether you closed the loop.
The other mistake is shoving AI into human-shaped boxes. These things aren’t human-shaped. Our agents do a lot of work nobody can fully verify, like customer support. Sometimes they’re a little bit wrong, but not that wrong, and they recover fast. When we take them off support, our customers get upset. They’d much rather have an AI that answers right away, gives them the clearest information it has, and can do something about the problem on the spot, than a human who says “I’ll go look at that” and comes back two days later with a fix. We’re not passing our AIs off as human support. We’re using them for what they’re actually good at.
And it compounds. Every new model has made our team faster and more coherent, and pointed more of our velocity in the right direction. Problems we had in the middle of this year are basically gone. Going from Fable to Fable 5.1 made most of our Fable issues disappear, and we expect that to keep happening. With the right structure, every new model makes the whole company significantly better, and that’s very hard to catch up with.
If this sounds far from how your team works, it is. No better time than the present. See you out there!
- Spawn’s team describes a permanent agent “fleet”: named agents with memory, system permissions, and ownership of company areas, using helper-agent swarms; the five human team members use modified Claude Code directly on ambitious work needing close steering or experimentation.
- The team removed pull requests and has agents work against the code, live product, and database; changes may be imperfect temporarily, with the system reconciled hourly and agents fixing breakages after deployment. Agents run the product before changes, the full test suite runs on the latest code every 15 minutes, helper agents try to break changes, and hard-coded gates protect irreversible actions. The team reports 1,055 of 123,548 changes reverted (about 0.9%).
- Agents ship to production hourly and inspect errors, bug reports, and metrics; the team says about 60% of work starts from production signals or feature requests. User- or Savi-reported bugs go to agent triage and usually become a fix delivered to the affected user within an hour; the product is designed for agents to follow actions in text and replay them.
- The team says its high-autonomy approach worked only with Anthropic’s Fable among the models it tested, citing long-term coherence and judgment. As a failure example, GPT Astra was asked to secure the product, then disabled every feature it deemed insecure, leaving users unable to create games, play, or sign up.