Anthropic's CJ Avilla: Single AI Agents Get Lazy, Lie, and Lose the Plot

BigGo Finance

Source published: Site published:

Original article · فارسی

Anthropic engineers CJ Avilla and Harrison Stall make the case that multi-agent orchestration, not bigger single models, is the key to solving genuinely hard problems. In an AI Engineer talk, they detailed Flows, a new Claude Managed Agents feature that lets a lead agent design and run its own topology of up to 1,000 specialized sub-agents. The core argument: single agents fail in three predictable ways — agentic laziness, self-preferential bias, and goal drift. Flows addresses each by isolating context per sub-agent, separating generators from judges, and copying explicit constraints into every phase. The cost is real: flows run far more expensive than single agents, suited only for ambitious, verifiable work. Safety hinges on separating the inference "brain" from the execution "hands," with fake credentials substituted at an egress proxy so real secrets never enter the sandbox. Avilla's 1,000-agent experiment building a Unix-compatible OS was still grinding after 85 hours — a reminder that scaling agents doesn't guarantee finishing on schedule.

Anthropic's CJ Avilla: Single AI Agents Get Lazy, Lie, and Lose the Plot

Ken Thompson built Unix in roughly a month, alone, holding the entire design in one head. Fred Brooks watched IBM's OS/360 drown in coordination overhead and wrote The Mythical Man-Month about it. Those 1960s and 1970s lessons — conceptual integrity, surgical teams, layered trust instead of star topologies — are now Anthropic's blueprint for how to run not one AI agent, but a thousand.

That's the core argument from CJ Avilla and Harrison Stall, both members of technical staff at Anthropic, speaking on the AI Engineer podcast. Their pitch: single agents hit a hard ceiling, and the fix isn't a bigger model — it's orchestration. Flows, a feature in Claude Managed Agents that shipped the Friday before the talk, lets Claude design and run its own multi-agent topology. Avilla personally kicked off a 1,000-agent flow to build a Unix-compatible operating system. It was still running 85 hours later, with roughly 1,000 commits in a GitHub repo. It was not finished.

Why one agent isn't enough

Avilla names three specific ways single agents break down, and each one maps to a design pattern in Flows.

Agentic laziness. Give a single agent a prompt like "we're having an outage, check these 50 services, don't touch production." It checks 35 services, sees they're all healthy, and convinces itself the rest are probably fine. It stops verifying. Flows fix this by dedicating an isolated agent context to each service — you know every single one was actually checked.

Self-preferential bias. Avilla's illustration is disarmingly simple: "If you ask an agent to write a poem and then you ask the agent, is that poem good? It's gonna say, yeah." The same happens with code. The generator and the judge must be separate, in contexts that aren't influenced by what previous reviewers checked.

Goal drift. In the outage example, the instruction "don't touch prod" arrives last. As the context window fills and compacts repeatedly, that constraint can get lost. Flows copy a specific goal consistently into each sub-agent across all phases.

The historical parallel is direct. Linux creator Linus Torvalds hit a breaking point in 1998, telling contributors he was going on vacation. The day after, Larry McVoy posted a diagnosis Avilla quotes verbatim: "The problem is that Linus doesn't scale." By 2002, Torvalds had moved from a star structure — 36 actors all contributing directly to him — to a layered network of trusted maintainers. Avilla's point: developers orchestrating many agents today will feel the exact same bottleneck.

The flow costs more, and that's the point

Stall frames the value proposition against a single agent's ceiling: a single agent runs about an hour before degrading. A coordinator-and-roster setup runs longer. Dynamic workflows enable "arbitrarily complex nested sets of agents operating all in parallel." He cites the meme of people carrying laptops half-open to keep Claude Code alive, pressing approve repeatedly — "hugely limiting" for society-level problems.

The clearest cost/benefit data point comes from Avilla's comparison of the same watchlist-scanner task run as a single agent versus as a flow. The flow costs much more, but is much more effective at finding all the details.

DimensionSingle agentCoordinator + rosterFlows (dynamic workflows)
Runtime before degrading~1 hourLongerArbitrarily long, multi-phase
Who defines sub-agentsN/ADeveloper defines eachLead agent defines its own
Context isolationNonePer threadPer session thread, physically separate
CostLowestMiddleHighest
Best fitQuick tasks (~30 seconds)Specific delegated tasksAmbitious, complex, verifiable work

Avilla is blunt about the limits. Flows cap at 1,000 agents. A lead agent can run multiple flows or start a new one after the first finishes. And flows are a poor fit for anything a single agent can do in 30 seconds.

Budgets are set per session before kickoff. If a flow hits its budget, you get a "budget reached" event; you can raise it mid-session and the flow picks up where it left off without discarding completed work. Stall says the model deliberately does not know its own budget while running — "if you tell it the budget, Claude can get a little bit anxious."

Separating the brain from the hands

Stall spends the back half of the talk on safety, and the architectural principle is the headline: "The idea here is that the brain, which is like the loop that's actually running inference... is fully separate from what we call the hands of Cloud, which is the place that the agent is actually able to take action in the real world."

The most technically specific mechanism is credential handling. Every container that needs a secret holds a fake secret that doesn't work if used. Only at the egress proxy layer are real credentials substituted on the way out. Stall says there is no way to prompt Claude or access a sandbox to extract the real credential. Vaults store secrets as environment variables with two configuration fields: injection location (where in the outbound request the secret belongs — a bearer token, the request body) and allowed hosts (which domain the substitution applies to, so a Twilio key never goes to an arbitrary domain).

Stall's framework for developers is three verbs: declare (what the agent is, its permissions, persona, skills, tools), contain (physical limits — environment policy restricting domains, allowing web search but not web fetch), and detect (the durable event stream, which lets you interrupt any session going the wrong direction).

His single lowest-hanging recommendation: switch your permission policy from "always ask" to Auto Mode. Humans approve roughly 97% of the time when repeatedly prompted, making manual approval a theater of control. Claude, he argues, is "much more patient" and can actually judge whether a tool call is safe or destructive.

What the pattern looks like in production

Two named flows show the architecture at work. Bug Hunter reviews pull requests by slicing code and handing each slice to an isolated agent context that flags potential problems. A second phase has a reviewer agree or disagree with each flag. A third phase picks candidates that might be real and runs a prover phase — downloading the repo and attempting to reproduce the bug. Results surface as inline PR comments with severity priorities.

Explainer Studio generates the animated videos Anthropic posts from its ClaudeDevs account. It runs a research phase (plan, scout, fact-check), builds a brief, then hands off to production, which makes and animates individual scenes. Additional phases handle sound effects, voiceovers, and scripting. Avilla says a video that would have taken about 20 hours to animate four years ago is now one small prompt to a flow.

The unresolved part

The episode offers no formula for when a flow is worth it beyond "ambitious, complex tasks." Cost scales with capability. The model doesn't know its own budget by design. Nesting is capped at one layer — Anthropic doesn't support arbitrarily complex mega-fan-outs yet, citing safety. And the headline experiment, 1,000 agents building an operating system, was still grinding when the session ended.

That's the honest tension at the center of Anthropic's bet. The organizational lessons of 1960s and 1970s software engineering transfer directly to agent orchestration — conceptual integrity, the surgical team, layered trust. But those lessons also carried a warning: adding more people to a late project makes it later. Avilla's 1,000-agent OS experiment is the first data point in whether that warning applies to agents, too. The API surface, not the terminal, is where Anthropic is productizing the answer. Whether it scales or sprawls is the question the next year will answer.

‌
‌
‌
‌
‌

‌