Zenaique

Why OpenAI replaced the experimental Swarm with the Agents SDK in 2025

Flashcard·Easy·4.0 · 0·~30s·Asked atInfosysRobust IntelligenceXai
Attempt it
TL;DR

The Agents SDK keeps Swarm's handoff as tool call pattern and small API, and adds the production primitives Swarm omitted: guardrails, tracing, typed payloads, streaming, evals, and provider-agnostic adapters.

Memory aid
Sign in to see the mnemonic that makes this stick.
Easy to grasp

Imagine a chef shares a viral recipe card that shows a brilliant new way to braise lamb. Cooks everywhere try it and love the technique. But the recipe card has no notes about how long it lasts in the fridge, how to scale it for fifty guests, or what to do if the lamb is too tough. A year later the chef publishes a proper cookbook with the same recipe plus all the production details: storage, scaling, troubleshooting, substitutions. The technique is identical; the cookbook just adds everything you need to actually run a kitchen on it. Swarm was the recipe card; the Agents SDK is the cookbook.

Concept explanation~2 min read

Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.

When OpenAI released Swarm in October 2024, the README opened with a deliberate disclaimer: 'an educational framework exploring ergonomic, lightweight multi-agent orchestration.' That was not modesty. It was a load-bearing design choice that shaped what Swarm did and did not include. Twelve months later, the production successor (the Agents SDK) shipped, and the difference between the two artefacts is the cleanest available case study of how a framework matures from prototype to production.

This card walks through what OpenAI kept, what they fixed, and why the two-step shipping cadence (minimal sample first, productionisation second) was the right play.

What survived from Swarm

Four things from Swarm carried forward into the Agents SDK essentially unchanged.

Handoff as a tool call

The load-bearing primitive. An agent that wants to transfer control to another agent emits a tool call (transfer_to_research_agent(brief)). The runtime intercepts the call, swaps the active agent, and continues the loop. There is no separate handoff API; handoff lives in the model's native action space alongside every other tool.

This was the idea Swarm was built to demonstrate, and the community workflows that grew up around it (and the parallel adoption in LangGraph's swarm prebuilt, Mastra, and smolagents) proved that the pattern was durable. The Agents SDK kept it because there was no reason to change it.

Peer agents with no central manager

Swarm has no orchestrator role. Every agent is a peer; control flows by direct handoff. This is the architectural opposite of AutoGen's GroupChat or LangGraph's create_supervisor. The Agents SDK preserves the peer topology as its default and only mode.

Tiny API surface

Swarm's entire surface was an Agent class, a run function, and a handful of helpers. The Agents SDK is larger because production primitives have real surface area, but it is still small relative to LangGraph or AutoGen. The minimalism was part of Swarm's appeal and the Agents SDK preserves it as much as the production scope allows.

The mental model

The simplicity of the mental model: an agent is a prompt plus tools plus handoff targets. Read the docs in an hour, build a working prototype the same afternoon. This learnability was Swarm's main selling point and the Agents SDK keeps it.

What got fixed (the five production primitives)
Provider-agnostic adapters and what they unlock
The sample code versus production framework lesson
Sign in to unlock the full deep dive.

Situations where this technique stops working.

Sign in to see when this approach fails.

2–4 min · Everything important, quickly.

Sign in to see the quick scan of the deep dive.
CapabilitySwarm (2024)Agents SDK (2025)
Handoff as tool callYesYes
Peer agents, no central managerYesYes
Tiny API surfaceYesYes (still small)
First-class guardrailsNoYes
Structured tracingNoYes
Typed handoff payloadsNoYes
End to end streamingPartialYes
Eval harnessNoYes
Provider-agnostic adaptersNoYes

Real products, models, and research that use this idea.

  • OpenAI's Swarm repository on GitHub still exists but is explicitly marked as superseded by the Agents SDK; the README points users to the new framework.
  • The Agents SDK is used in production at OpenAI for some of their first-party agent experiences and is the framework they recommend for partners building on the API.
Sign in to see more production examples.

What an interviewer would ask next. Try answering before peeking at the approach.

QHow does the Agents SDK handoff primitive differ from LangGraph's create_swarm prebuilt?
A

Both implement handoff as tool call with peer agents. The Agents SDK is more minimal and provider-agnostic; LangGraph's swarm sits on top of the same state-graph machinery as create_supervisor, which gives you checkpointing and time-travel for free at the cost of a heavier underlying model.

2 more follow-ups an interviewer would ask next. Sign in to reveal them.

Red flags & common mistakes

The phrases that signal junior thinking. Click to expand.

Most common mistake

Thinking the difference between Swarm and the Agents SDK is the handoff pattern. The pattern survives unchanged; what changed is everything around it that production needs.

Sign in to see all red flags and common mistakes.

60 second bullets to scan on the way to the call.

  • What survived from Swarm (pattern, peer topology, small API)

  • The five primitives the Agents SDK adds (guardrails, tracing, schemas, streaming, evals)

Sign in to unlock the revision sheet.

Primary sources. Browse if you want the original framing.

Similar questions

Same topic, related formats. Practice these next.

4 curated
Next question
Why AutoGen 0.4 makes TerminationCondition a first class primitive instead of leaving it to convention
Flashcard·Medium