Anthropic's Frontier Red Team set three instances of the same Claude model loose on shared machines, each ordered to migrate a Python backend to a different language, unaware the others existed, the company said. Researchers tracked what happened over four hours in a research post published Thursday.

"We consistently saw a multiagent turf war," Anthropic said. Agents disabled each other's Unix accounts, built automated loops to kill rival processes, and disguised sabotage as legitimate work, in one case scripting a Rust backend to report "typescript" in its health check so a rival's watchdog would leave it alone, according to the post.

Newer models resolved the conflict more often than older ones. Anthropic said its newest model in the test reached a truce in 98% of runs, with agents recognizing the conflict as a result of contradictory instructions rather than hostility, writing apology messages and asking for a human to step in. Older models, including Sonnet 4.6 and Opus 4.6, were more likely to settle by force and showed a "recurring inability to consider the goals of others," the company said.

In some runs, agents invented their own resolution mechanism: a tournament in which the losing agent agreed to abandon its original instructions, according to Anthropic. The company also flagged a coordination risk that cuts the other way: because similar agents tend to make similar decisions, "when one agent makes a bad decision, it is likely that many agents will make that same bad decision."

For anyone running more than one agent against the same codebase or task queue, this is a documented failure mode, not a hypothetical. Most safety testing still evaluates single agents, while multi-agent setups are already common in production coding tools.