GPT swarms beat Claude in YC's game experiments, but in Bed Wars several Claudes thought breaking beds was impossible
YC Labs, a research project at Y Combinator, has published a long account of what happened when it put swarms of AI agents into video games. The write-up, produced with Olam Labs, a startup that builds multi-agent environments for frontier labs, covers three experiments: a 50-agent Minecraft colony, a Bed Wars series between Claude and GPT teams, and a series of the factory-and-tower-defense game Mindustry. GPT won both head-to-head contests, 6–3 in Bed Wars and 6–1 in Mindustry.
The scorelines are the least interesting part. The page comes with downloadable logs, private reasoning, memory files and DM counts, and those show the teams being shaped as much by their tools and their starting roster as by anything a model "chose".
Bed Wars: a broken tool on the main objective
In Bed Wars, each team defends a bed on its own island and tries to destroy the other's; once your bed is gone, your next death is final. If no bed falls, the team with more kills wins. YC ran nine 45-minute games, 10 Claude Opus 5.5 agents against 10 GPT-6.1 Sol agents, all told only to "win the game". The published session logs for both sides are stored as Pi sessions, so this contest, unlike Mindustry, appears to have put both models in the same harness.
The organizers describe GPT as aggressive and Claude as defensive. GPT kept sending raiders and ender pearls at Claude's bed. Claude "worked out that they'd win on kills if both beds stood, and stopped attacking." In GPT's three wins in the last two series, Claude led on kills 63–16, 57–19 and 59–24 and still lost, each time because GPT broke its bed with about three minutes left.
Further down the page there is a detail the write-up doesn't connect to that strategy. A tool bug stopped block-breaking: the harness's automatic tool selection failed when an agent was holding an enchanted sword. A GPT agent worked out the fix and passed it on: "manually equip iron_pickaxe then break_block successfully mined three RED roof wool blocks." On the other side, according to the organizers, "several Claudes concluded breaking was impossible." One Claude agent's private reasoning in game B reads: "With 79 iron I could buy shears for 20, but that's pointless since breaking is bugged anyway. I'll keep guarding."
A team that believes beds can't be broken has every reason to play for kills. The logs don't tell us how many Claude agents held that belief or for how long, so it would be wrong to say the bug decided the series. But one of the commenters on Hacker News asked the obvious question: would Claude have turned defensive if it had believed breaking the bed was possible? Until somebody reruns it with the bug fixed, a 6–3 result is partly a measurement of which team debugged a broken tool, and that's a skill too.
The two teams also handled their own experience differently. Claude agents wrote lessons into private memory files ("LESSON: never chase (max_distance<=4, chase=false) near edges; died 3x from falls/chasing") and, the organizers write, repeated the mistakes anyway. GPT agents left their memory files empty and broadcast warnings to teammates by DM. GPT was far chattier overall: 1,147 DMs against Claude's 82 in game A, and its most-messaged player received 198–368 DMs a game, against 11–48 for Claude's. Claude signed its name and said "we" in 30% of messages, against 5% for GPT, which quickly drifted into clipped status lines like "First leg complete x32 z9..24 y100."
Leaders by alphabetical accident
The most consistent result has nothing to do with which model was playing. In the 50-agent Minecraft colony, all GPT-6.1 Sol, told to "build a thriving civilization" in a three-hour survival run, most agents sent their first message to Ada, the first name on the roster. She ended up receiving 616 DMs and wrote the colony's plans in the shared sandbox. "There was no vote, election or challenge," the write-up says. In Bed Wars the same thing happened on both teams: almost everyone messaged whoever was listed first in their directory (Ada on red, Kiri on blue), and that agent became the leader.
For anyone building multi-agent systems, that's the practical takeaway: the order of a roster in the prompt is not neutral. In both Minecraft experiments, it decided who coordinated.
The colony also shows what that coordination costs. After 22 of the run's 34 deaths came on the first night, agents became steadily more cautious, though death only cost them their gear. After the third night Ada wrote that they should "idle in lit closed shelters until assigned short productive tasks." The 50 agents exchanged about 5,900 messages, kept a food ledger in a shared markdown file, and spent 11 minutes appointing a "sole fertilizer operator" for one piece of bone meal on one wheat block. When one agent accidentally ate a cooked chicken meant for another, a three-minute "no blame" inquiry produced a written rule that rations go into named chests and are never tossed.
Mindustry: model plus harness
The Mindustry series is the least controlled comparison of the three. Each side came as a package: GPT-6.1 Sol in Codex against Claude Opus 5.5 in Claude Code, both teams with the same game API and no instructions on how to play. GPT won 6–1 over about 9.5 hours; the organizers say most games other than the last two were very close.
Some of what they report is behavior a harness could plausibly shape. When games got tight, GPT agents fetched Mindustry's public source code from the web to understand units and mechanics, which the sandbox allowed but nobody suggested. The Claudes never did. Claude teams kept a single leader and decided plans by posting proposals that teammates answered with "+1". GPT agents divided ownership into small slices and talked far more, though the organizers judged much of it low-value and Claude's messaging more effective. GPT's chat compressed until it read like "G7T5FIRSTcourierLIVE".
The best moment is Claude's. After losing game 6 to a strike by 24 zenith air units, a Claude agent found that 55 of the team's 74 anti-air turrets had been loaded with copper instead of graphite. In game 7 the Claudes built a ring of 207 graphite-fed turrets, and the same strike failed. They lost the game anyway.
What it adds up to
These are a handful of single-configuration runs, written up by the people who ran them, with no reported settings for reasoning effort and no repeats. They don't rank models. What makes the page worth reading is that it publishes enough raw material to check the narrative against the logs: the bed-breaking bug and the roster effect are both visible in the data, and neither shows up in the scoreline.
The page frames the work as alignment research, pointing to the swarm behavior in the OpenAI and Hugging Face incident. The environments are open source, so others can test it: the Minecraft harness (MIT, built on Mineflayer with Pi as the agent loop), Multi-Agent Mindustry (GPL-3.0) and Olam's multi-agent fork of Harbor, the framework behind Terminal-Bench. A rerun with the tool bug fixed, or with the roster shuffled, would tell us more than another scoreline.
Comments
No comments yet. Be the first.