OpenAI Swarm im Test: klare Handoff-Lektion, aber 2026 kein Produktionsframework
OpenAI Swarm ist ein kleines Python-Framework, das Multi-Agent-Orchestrierung mit zwei Primitiven erklärt: Agenten und Handoffs. Die offizielle README bezeichnet es inzwischen ausdrücklich als experimentell und lehrorientiert, nennt das OpenAI Agents SDK als Ersatz und empfiehlt die Migration sämtlicher Produktionsfälle. Diese Aussage gehört vor jede Featureliste: Swarm ist Lehrcode, nicht OpenAIs aktuelle Produktionsempfehlung.
Das Repository war am Prüftag nicht als archived markiert. Der letzte verifizierte Commit vom 15. April 2026 fixierte pre-commit hooks auf unveränderliche Revisionen. Das ist eine Supply-Chain-Wartung, kein Runtime-Release. Formale GitHub Releases gibt es nicht; installiert wird weiterhin aus dem Git-Repository. Ein sichtbares Repository ist daher kein Gegenargument zur expliziten Ablösung.
Swarm bleibt didaktisch wertvoll. Eine Routine besteht im Wesentlichen aus Instructions und Functions. Gibt eine Funktion einen anderen Agent zurück, wechselt die aktive Zuständigkeit. Context variables beeinflussen Instructions und Funktionen; der Client Loop ruft Chat Completions auf, führt Tools aus, merged Kontextupdates und setzt den aktiven Agenten. Der kleine Code zeigt zugleich, welche Produktionsschichten fehlen.
Status 2026
| Frage | Geprüfte Antwort | Entscheidung |
|---|---|---|
| Official positioning | experimentell/lehrorientiert; ersetzt | Nicht neu produktiv einsetzen |
| GitHub flag | archived=false | Keine Freigabe |
| Latest commit | 6af0b4c · 2026-04-15 | Wartungscommit, kein Feature-Release |
| Releases | Keine formalen Releases | Git SHA fixieren |
| License | MIT | API/Modelle separat |
| Runtime | Chat Completions; stateless client | State extern |
| Successor | OpenAI Agents SDK | Offizieller Nachfolger |
Was Swarm tatsächlich lehrt
| Primitiv | Swarm-Verhalten | Prüfgrenze |
|---|---|---|
| Agent | name + instructions + functions | prompt persona ≠ security principal |
| Routine | instructions + focused tools | probabilistic, not workflow constraint |
| Function/tool | Python callable + schema | authorization and side effects |
| Handoff | function returns another Agent | cycle, misroute, context disclosure |
| context_variables | mutable run dictionary | not durable memory |
| Result | value + agent + context update | merge/persistence belong to app |
| Client.run | model/tool loop until stop/max turns | no queue/checkpoint/lease |
| Streaming | chunks + delimiters | no reconnect/exactly-once |
Ausführbares Handoff-Experiment
Ein sinnvoller Versuch bleibt eng: Triage darf nur an Sales oder Refund übergeben. Sales erhält einen read-only Katalog; Refund darf eine Erstattung nur vorbereiten. Serverseitig geprüfte customer_id, Sprache und Auftragszugehörigkeit kommen in context_variables. Transferfunktionen protokollieren Quelle, Ziel und Grund; max_turns steht auf fünf. Beginnen Sie mit Fake-Provider und Sandbox-Tools. Ziel ist das Routing-Muster, nicht echte Finanzautonomie.
Testen Sie Routinen einzeln. Ein gelabeltes Set aus Billing-, Sales-, mehrdeutigen und adversarial Anfragen misst Zielgenauigkeit und unnötige Handoffs. Jeder Spezialist erhält nur seine Tools und muss außerhalb des Scopes ablehnen. Danach folgen A→B→A-Zyklen, parallele Calls, ungültige Argumente, Tool-Exceptions, Cross-Tenant-Zugriff und Prompt Injection in Auftragsnotizen. Sichere Fehler sind Teil des Solls, nicht nur flüssige Antworten.
Context variables sind lokale Anwendungsdaten, kein Geheimkanal und keine automatische Conversation Memory. Dynamische Instructions können Werte in den Modellprompt übernehmen. Kennzeichnen Sie jeden Key als model-visible oder code-only, lassen Sie Tenant-Identität nie vom Modell bestimmen und legen Sie keine langlebigen Credentials in ein veränderliches Dictionary. Der autoritative Zustand gehört versioniert in eine Datenbank; pro Run wird der minimale Kontext rekonstruiert.
Migration und Evaluation
- Swarm-Commit, Python und Modellkonfiguration pinnen.
- Agenten, Handoffs, Tools, Kontext, Endzustände, Zyklen und Privilegien zeichnen.
- Golden Set mit Routinglabels, Antworten, Refusals, Toolresultaten und sicheren Fehlern bauen.
- Sandbox, Fake/read-only Tools, max_turns, Timeout und Side-effect Ledger einsetzen.
- Active Agent, Quelle/Ziel/Grund, Tool Call ID, Argument-Hash, Result und Usage protokollieren.
- Mit Agents-SDK-Handoffs oder Agents-as-tools und typisiertem Kontext nachbauen.
- Session/State, Approvals, Guardrails, Autorisierung, Idempotenz und Trace-Policy ergänzen.
- Identische Inputs shadowen; Routing, Qualität, Tools, Turns, Latenz und Kosten vergleichen.
- Read-only canary, danach enges Write mit Approval; Crash und Rollback üben.
- Nach Parität Swarm entfernen, Tests und expliziten Graph behalten.
Messgrößen
| Kennzahl | Methode | Warum |
|---|---|---|
| Handoff accuracy | labeled destination/confusion matrix | wrong route ruins specialist quality |
| Cycle rate | repeated agent edges | loops burn tokens |
| Authorization | allow/deny by tenant/resource | schema ≠ permission |
| Side effects | idempotency duplicate simulation | retry can repeat action |
| Answer quality | task rubric/evidence | routing ≠ correct answer |
| Turns/usage | requests/tokens by agent | network amplifies cost |
| Latency | p50/p95 per step | handoffs serialize calls |
| Recovery | crash/timeout/approval/resume | no durable checkpoint |
| Trace privacy | sensitive-field detection | observability can leak |
Migration beginnt mit einer Verhaltensinventur. Erfassen Sie Agenten, Instructions, Functions, Transferkanten, Kontextkeys, Modelleinstellungen, maximale Turns, Streamevents und Seiteneffekte. Zeichnen Sie den realen Handoff-Graphen und markieren Sie Zyklen, Endzustände und Privilegwechsel. Redigierte Transkripte und Tool-Traces bilden ein Golden Set. Swarm-Commit und Modellsnapshot bleiben vorübergehend gepinnt, damit der Ausgangspunkt reproduzierbar ist.
Im Agents SDK werden Agenten zu gepflegten Agents, Transferfunktionen zu handoffs oder handoff() und context variables zu typisiertem RunContextWrapper. Ein Handoff passt, wenn der Spezialist das Nutzergespräch übernimmt; Agent.as_tool() passt, wenn ein Manager die finale Antwort besitzen soll. Wählen Sie genau eine Memory-Strategie—Session, to_input_list() oder OpenAI-managed continuation—sonst entsteht doppelter Kontext.
Fügen Sie beim Umstieg Approvals, Timeouts, Tool-Guardrails, Interrupt/Resume-State und Tracing hinzu. Tracing ist im Agents SDK standardmäßig aktiv und kann sensible Inputs und Outputs enthalten; Redaction oder Deaktivierung ist eine bewusste Policy. Guardrails können Stufen prüfen oder blockieren, ersetzen aber keine serverseitige Autorisierung für Identität, Tenant und Ressource.
Sicherheit, Zustand und Betrieb
| Risiko | Mindestkontrolle | Swarm-Lücke |
|---|---|---|
| Wrong handoff | allowlisted edges + eval + human route | model selects route |
| Privilege escalation | separate tools + server authorization | agent name is not identity |
| Infinite loop | max_turns + cycle detector | agents can return each other |
| Duplicate action | idempotency + ledger | no exactly-once |
| Lost state | database/session + resume token | stateless across calls |
| Prompt injection | instruction/data separation + validation | tool content returns to model |
| Secret leakage | code-only context + redaction | dynamic prompt may expose values |
| Silent failure | structured trace + usage + alerts | no production observability |
Swarm im Vergleich
| Option | Geeignet wenn | Unterschied |
|---|---|---|
| OpenAI Agents SDK | official maintained OpenAI path | handoffs + state + guardrails + tracing |
| LangGraph | durable checkpoints/graphs/provider flexibility | more engineering, stronger state |
| AutoGen | event-driven/distributed teams | broader runtime surface |
| CrewAI | role crews + business flows | more opinionated ecosystem |
| Single agent + tools | one model can route tools | simpler baseline |
| Deterministic workflow | known audited sequence | less autonomous, easier control |
| Swarm | learn minimal handoff loop | small, inspectable, superseded |
Swarm liefert keinen durable State, Scheduler, distributed Runtime, Auth, Tenant-Isolation, Retry Ledger, Kostenbudget oder Trace Store. Stirbt der Prozess nach einem Seiteneffekt und vor dem Tool Result, ist ein Retry zweideutig. Nutzen Sie geschäftsbezogene Idempotency Keys, Transactional Outbox, Tool-Timeouts, Rate Limits, Max Turns, Human Escalation und einen Detektor für wiederholte Agentenkanten.
Prompt Injection ist besonders gefährlich, wenn ein Handoff den Tool-Satz verändert. Nutzertext, Retrieval-Daten und Tool-Outputs bleiben untrusted. Eine Anweisung im Dokument darf nicht selbst den Agenten wählen. Autorisieren Sie am Tool mit serverseitiger Identität, prüfen Sie Konto, Betrag und Ziel, minimieren Sie Credentials und verlangen Sie Freigabe für irreversible Aktionen. Policy-Entscheidungen werden getrennt vom Modelltext protokolliert.
Urteil: Swarm ist weiterhin einer der besten kleinen Codebestände, um Handoffs zu verstehen. Gerade die fehlende Infrastruktur macht den Loop sichtbar. Für neue Produktion ist dieselbe Einfachheit ein Risiko, zumal der Hersteller einen Nachfolger empfiehlt. Lesen und reproduzieren Sie das Muster; migrieren Sie anschließend die Idee, nicht die Dependency, in Agents SDK, LangGraph oder einen passenden Runtime.
Häufige Fragen
Ist Swarm produktionsreif?
Nein. Die README nennt es experimentell/lehrorientiert, durch Agents SDK ersetzt und empfiehlt Produktionsmigration.
Ist das Repository archived?
Am 20.08.2026 war das Flag false. Das ist keine Produktionsfreigabe.
Wird Swarm gepflegt?
Ein Wartungscommit erschien 2026-04, formale Releases gibt es nicht. Aktivität ist keine aktive Produktentwicklung.
Was ist ein Handoff?
Ein tool-artiger Wechsel des aktiven Agenten; in Swarm gibt eine Funktion einen anderen Agent zurück.
Sind context_variables Memory?
Nein. Sie sind Run-Daten; autoritativer Gesprächs- und Geschäftszustand muss extern persistieren.
Funktionieren andere Modelle?
Compatibility Layer können funktionieren, rechtfertigen aber kein superseded Framework.
Was ersetzt Swarm?
OpenAI empfiehlt das OpenAI Agents SDK.
Ersetzen Guardrails Autorisierung?
Nein. Identity-, Tenant- und Ressourcenrechte bleiben serverseitig.
Braucht jeder Prozess Multi-Agent?
Nein. Single Agent plus Tools oder deterministischer Workflow ist der bessere Baseline-Test.
Wie migriert man?
Baseline fixieren, Graph/Kontext abbilden, typisiert neu bauen, Controls ergänzen, shadowen, canary und Swarm entfernen.
Quellen
- Official Swarm repository
- Swarm README: replacement notice
- Swarm source: core loop
- Swarm commits
- Swarm releases
- Swarm MIT license
- OpenAI Agents SDK quickstart
- Agents SDK handoffs
- Agents SDK context
- Agents SDK guardrails
- Agents SDK running and state
- Agents SDK tracing
- LangGraph overview
- AutoGen AgentChat
- AutoGen handoff pattern
- CrewAI documentation
Unabhängig geprüft am 20. August 2026. Repository-Status, Commits und Nachfolger-APIs können sich ändern; prüfen Sie README und aktuelles Agents SDK.



