Fan-out von Subagents in Claude Code, dann prüfen, was zurückkommt
In Claude Code bedeutet Fan-out, eine Aufgabe in unabhängige Teile zu zerlegen und jeden Teil in einem eigenen Subagent laufen zu lassen: indem du darum bittest, mit /batch oder mit einer claude -p Schleife. Geprüft auf Claude Code 2.1.301. Und wie wir das Zusammenführen der Arbeit von sechs Subagents kontrollieren, die jede Nacht unseren Blog übersetzen.
Leute tippen „claude fan out subagents“ in Google, und einige hängen „command“ an, als gäbe es einen Schalter, den man umlegen kann. Es gibt ein Muster, und es gibt auch einen Befehl. Wir haben beides am 16. Oktober 2026 auf Claude Code 2.1.301 und anhand der Dokumentation von Anthropic geprüft.
Dann gibt es den Teil, über den die Dokumentation wenig sagt, und den Grund, warum wir diesen Artikel schreiben: was man mit den Ergebnissen macht. Wir fahren jede Nacht einen Fan-out. Sechs Subagents übersetzen jeden neuen Artikel dieses Blogs in siebzehn Sprachen, und die Hauptsitzung führt ihre Arbeit zusammen. Jeder von ihnen meldet, dass er die Regeln befolgt hat. Die Prüfung, die wir vor dem Start geschrieben haben, findet trotzdem etwas.
Die kurze Antwort
Fan-out heißt: Eine Sitzung zerlegt eine Aufgabe in Teile, die nicht voneinander abhängen, gibt jeden Teil einem Subagent, lässt sie gleichzeitig laufen und führt zusammen, was zurückkommt. In Claude Code geht das auf drei Wegen.
| Weg | Was du tippst | Wo jeder Teil läuft | Gut für |
|---|---|---|---|
| Im Prompt darum bitten | „Untersuche die Module Auth, Datenbank und API parallel mit separaten Subagents“ | Ein Subagent deiner Sitzung, eigener Kontext, Zusammenfassung zurück | Recherche und Lesen |
/batch | /batch migrate src/ from JavaScript to TypeScript | 5 bis 30 Subagents im Hintergrund, je ein Git-Worktree | Eine große Änderung quer durch eine Codebasis |
| Skript-Schleife | claude -p einmal pro Datei aufgerufen | Eine eigene, nicht interaktive Sitzung pro Aufruf | Hunderte Dateien, CI |
Der Rest dieser Seite geht jeden Weg durch und danach die Prüfungen, die wir auf unseren eigenen Fan-out anwenden.
Was ein Subagent sieht und was nicht
Drei Fakten aus der Dokumentation entscheiden darüber, wie du die Arbeit zerlegst.
Jeder Subagent startet leer. Er läuft in seinem eigenen Kontextfenster, mit eigenem System-Prompt, eigenen Werkzeugen und eigenen Berechtigungen. Er sieht weder deine Konversation noch die Skills, die du schon benutzt hast, noch die Dateien, die Claude schon gelesen hat. Alles, was er wissen muss, gehört in sein Briefing.
Die Ergebnisse kommen in die Hauptkonversation zurück. Der ausführliche Teil der Arbeit eines Subagents bleibt in seinem eigenen Kontext, nur sein Ergebnis kommt zurück. Viele Subagents mit langen Berichten können deinen Hauptkontext aber trotzdem füllen, und jeder verbraucht eigene Tokens, solange er läuft.
Es gibt Limits. Standardmäßig können in einer Sitzung 20 Subagents gleichzeitig laufen. Der 21. schlägt mit Concurrent subagent limit reached fehl, und der Fehler sagt Claude, es nicht erneut zu versuchen. Mit CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS kannst du das Limit erhöhen oder senken. Subagents können eigene Subagents starten, bis zu drei Ebenen unter der Hauptkonversation, und für die Gesamtzahl in einer Sitzung gibt es kein Limit.
Weg 1: einfach in Worten danach fragen
Der einfachste Fan-out ist ein Satz. Das Beispiel aus der Dokumentation von Anthropic:
Research the authentication, database, and API modules in parallel using separate subagents
Jeder Subagent erkundet seinen Bereich, dann schreibt Claude eine Synthese. Die Dokumentation nennt die Bedingung, auf die es ankommt: Das funktioniert am besten, wenn die Recherchepfade nicht voneinander abhängen. Wenn die Frage zur Datenbank die Antwort zur Auth braucht, hast du keine drei Teile, sondern eine Abfolge.
Bei normalen Worten entscheidet Claude. Wenn du einen eigenen Subagent in .claude/agents/ definiert hast, sorgt eine @-Erwähnung dafür, dass er für diese Aufgabe läuft. Unsere Seite zu Claude Code Subagents erklärt, wie diese Dateien funktionieren.
Weg 2: /batch, das, was einem Fan-out-Befehl am nächsten kommt
/batch ist ein Skill, der mit Claude Code mitgeliefert wird. Du gibst ihm eine Anweisung:
/batch migrate src/ from JavaScript to TypeScript
Es untersucht die Codebasis, zerlegt die Arbeit in 5 bis 30 unabhängige Einheiten und zeigt dir einen Plan. Sobald du ihn freigibst, startet es pro Einheit einen Subagent im Hintergrund, jeden in einem isolierten Git-Worktree. Jeder Subagent setzt seine Einheit um, führt die Tests aus und veröffentlicht seine Änderung. Dafür braucht es ein Git-Repository oder einen WorktreeCreate Hook, der die Worktrees für ein anderes Versionskontrollsystem anlegt.
Beim Plan solltest du langsamer werden. Dort wird die Aufteilung entschieden, und auf die Aufteilung kommt es an: Zwei Einheiten, die dieselbe Datei anfassen, oder eine Einheit, die das Ergebnis einer anderen braucht, lassen sich nicht sauber zusammenführen, egal wie gut jeder Subagent ist. Lies die Liste der Einheiten so, wie du den Migrationsplan eines Kollegen lesen würdest.
Weg 3: eine Schleife über claude -p
Wenn die Aufgabe eine Liste von Dateien ist und du jeden Aufruf unter Kontrolle haben willst, beschreiben die Best Practices von Anthropic eine Schleife. Lass Claude zuerst die Liste schreiben (list all 2,000 Python files that need migrating and save the list to files.txt). Dann:
for file in $(cat files.txt); do
claude -p "Migrate $file from Python 2 to Python 3. Return OK or FAIL." \
--allowedTools "Edit,Bash(git commit *)" \
--permission-mode dontAsk
done
Drei Details aus diesem Beispiel lohnen sich zum Übernehmen.
- Die Antwort ist maschinenlesbar. „Return OK or FAIL“ heißt, dass dein Skript Fehlschläge zählen kann, ohne Fließtext zu lesen.
- Die Berechtigungen werden vorher festgelegt.
--allowedToolserlaubt genau das, was die Migration braucht, und--permission-mode dontAsklehnt alles andere ab, statt auf jemanden zu warten, der nicht da ist. - Du fängst mit zwei oder drei Dateien an. Die Dokumentation sagt es klar: Verbessere den Prompt anhand dessen, was bei den ersten Dateien schiefgeht, und lass dann die ganze Liste laufen.
So wie sie geschrieben ist, arbeitet die Schleife eine Datei nach der anderen ab. Mehrere Aufrufe gleichzeitig laufen zu lassen, ist normale Shell-Arbeit, aber jeder Aufruf ist eine vollständige Sitzung auf deinem Rechner und auf deinem Kontingent. Was passiert, wenn mehrere Agenten in derselben Minute denselben schweren Befehl starten, haben wir in diesem Artikel gemessen, und hier ist es dieselbe Geschichte: Fang mit wenigen parallelen Aufrufen an.
Für CI empfiehlt die Dokumentation, --bare hinzuzufügen. Das überspringt Hooks, Skills, MCP-Server und CLAUDE.md, damit jede Maschine denselben Lauf bekommt. Der Bare-Modus nutzt nicht die Anmeldung deines Abonnements: Er braucht ANTHROPIC_API_KEY.
Wie wir jede Nacht einen Fan-out fahren
Das hier ist der Fan-out, den wir tatsächlich laufen lassen. Unser nächtliches SEO-Team schreibt jeden neuen Artikel von Hand auf Englisch und Französisch. Ein zweiter Agent übersetzt ihn dann mit Claude Code Subagents in siebzehn weitere Sprachen und erzeugt traditionelles Chinesisch per Skript aus vereinfachtem Chinesisch, statt es zu übersetzen. Elf Artikel sind seit dem 13. September 2026 diesen Weg gegangen, und jeder kommt als zwanzig Dateien an.
Die Teile
Sechs Subagents, je drei Sprachen (zwei für den letzten): Spanisch, Portugiesisch und Italienisch; Deutsch, Niederländisch und Polnisch; Russisch, Ukrainisch und Türkisch; Japanisch, Koreanisch und Chinesisch; Thai, Vietnamesisch und Indonesisch; Arabisch und Hindi. Keine Sprache hängt von einer anderen ab, und genau das macht daraus einen sauberen Fan-out.
Jedes Briefing enthält dieselben fünf Dinge, weil der Subagent sonst nichts sieht:
- die englische Quelle und die französische Fassung als Referenz für Ton und Produktbegriffe;
- für jede Sprache Texte, die auf der Website in dieser Sprache schon veröffentlicht sind, damit der Subagent die Wörter übernimmt, die die Website schon verwendet, statt neue zu erfinden;
- die harten Regeln: Marken- und Produktnamen bleiben, wie sie sind, Code bleibt Byte für Byte gleich, kein Geviertstrich;
- das Prüfskript, mit der Anweisung, es so lange laufen zu lassen, bis es OK meldet;
- die Bitte, alles Zweifelhafte zu melden, was er gesehen hat, innerhalb oder außerhalb seines Teils.
Die Prüfung wird vor dem Start geschrieben
Die Prüfung ist ein Skript, nicht die Meinung eines Subagents. Für jede Sprache vergleicht es die Datei mit der englischen Quelle:
- gleicher Slug und gleiches Datum, Titel gleich der H1;
- gleiche Anzahl an Abschnitten, Unterabschnitten, Bildern, Links und Tabellenzeilen, und im Text so viele FAQ-Antworten wie Fragen in den Metadaten;
- Links Byte für Byte identisch, Code-Segmente Byte für Byte identisch;
- Markennamen gezählt, nie weniger als im Englischen;
- eine Länge innerhalb von Grenzen, die für jede Sprache kalibriert sind, weil Chinesisch dasselbe in etwa 36 % der Zeichen sagt, die Englisch braucht, und Japanisch in etwa der Hälfte;
- Akzente dort, wo die Sprache welche hat (Polnisch, Türkisch, Vietnamesisch).
Jeder Subagent endet mit einer Variante von „fertig, alle Prüfungen bestanden“. Das einzige Urteil, nach dem wir handeln, ist dasselbe Skript, noch einmal von der Hauptsitzung ausgeführt, auf allen Dateien auf einmal.
Was die zentrale Prüfung fand und die Selbstberichte nicht
Übersetzter Code in einer Tabelle. Am 13. September hat etwa die Hälfte der Subagents die Wörter übersetzt, die in einer Tabelle innerhalb derselben Backticks auf einen Befehl folgten. Jeder hatte sein Briefing so befolgt, wie er es verstanden hatte. Die Korrektur kam ins Briefing, nicht in die Subagents: Ein Code-Segment enthält nur den Befehl, und die Wörter danach stehen außerhalb der Backticks.
Unsere eigene Prüfung lag falsch. Am 6. September hat eine Längenprüfung, die auf den alten Text kalibriert war, den wir ersetzten, 11 von 17 Subagents markiert. Alle 11 lagen richtig: Der neue Text sollte länger sein. Auf das korrigierte Französisch kalibriert, hat sie keinen mehr markiert. Auch eine zentrale Prüfung kann falsch liegen, und du siehst es, wenn du sie zuerst auf eine Lieferung anwendest, von der du weißt, dass sie gut ist.
Konsistenz über die Teile hinweg. Am 15. Oktober, bei einer neuen Feature-Seite, die auf dieselbe Weise übersetzt wurde, hat die Zusammenführungsprüfung bestätigt, dass sich in 90 Dateien nur die erwarteten Texte geändert hatten. Aber die Subagents für Japanisch, Koreanisch und Chinesisch hatten jeweils einen anderen Titel für „You may also like“ gewählt als den, den ihre Sprache auf einer Nachbarseite schon verwendete. Jede Wahl war eine korrekte Übersetzung. Keine passte zur Website. Kein Subagent konnte das aus seinem Teil heraus sehen: Das sieht nur ein Durchgang über das zusammengeführte Ergebnis.
Ein falsches Wort besteht jede Strukturprüfung. Eine Sprache der Website nannte KI-Agenten einmal Autohäuser, und das blieb monatelang online. Gleiche Länge, gleiche Satzzeichen, Marke vorhanden: Jede Zählung war grün. Das Einzige, was so etwas abfängt, ist eine benannte Liste bekannter falscher Wörter, die jedes Deployment blockiert und um eine Zeile wächst, sobald wir ein neues finden.
Die Meldungen außerhalb des Teils. Am 15. Oktober hat der Subagent für Türkisch gemeldet, dass die Website in 97 bestehenden Texten „ajans“, also Agentur, für „Agent“ schrieb. Er hat sie nicht angefasst, weil sein Briefing es verbot. Wir haben ein Ticket aufgemacht, und die Korrektur ging am nächsten Tag raus. Subagents zu fragen, was sie gesehen haben, und nicht nur, was sie getan haben, kostet wenig und zahlt sich aus.
Zusammengeführt wird an einer einzigen Stelle
Subagents schreiben nicht direkt ins Repository. Jeder liefert seine Dateien ab, ein Skript führt sie zusammen und vergleicht das Ergebnis dann Text für Text mit der vorherigen Version: Nur die angeforderten Texte dürfen sich geändert haben. Danach laufen die Prüfungen des Repositorys und der Build der Website einmal, auf dem zusammengeführten Ergebnis. Den Build einmal pro Subagent laufen zu lassen, wäre langsamer und würde halb zusammengeführte Zustände testen, die nie live gehen.
Wann du keinen Fan-out machen solltest
- Die Teile hängen voneinander ab. Wenn Teil B das Ergebnis von Teil A braucht, lass sie nacheinander laufen.
- Die Aufgabe ist klein. Jeder Subagent startet leer und liest erneut, was er braucht. Bei einer Aufgabe von zehn Minuten kosten die Neustarts mehr, als sie sparen.
- Du kannst die Prüfung nicht schreiben. Wenn es keine Möglichkeit gibt, einen guten Teil von einem schlechten zu unterscheiden, ohne selbst alles zu lesen, verbringst du deine Zeit beim Zusammenführen.
- Das Kontingent ist knapp. Jeder Subagent verbraucht eigene Tokens. Ein Fan-out bringt Zeit und einen sauberen Hauptkontext, keine kleinere Rechnung.
Wo AgentsRoom ins Spiel kommt
Subagents leben innerhalb einer einzigen Claude Code Sitzung. Du siehst ihre Ergebnisse, nicht ihre Arbeit, und du kannst keinen von ihnen mittendrin umlenken. Wenn jeder Teil ein Agent sein soll, den du beobachten, dem du antworten und dessen Arbeit du einzeln prüfen kannst, starte stattdessen getrennte Sitzungen: jedes Ticket in seinem eigenen Git-Worktree, und Agent Teams, wenn die Teile sich gegenseitig Arbeit übergeben. Ein Team-Schritt kann einen Prüfbefehl mitführen, und dessen Exit-Code, nicht die Aussage des Agenten, entscheidet, ob der Lauf weitergeht. Das ist dieselbe Regel wie oben, durchgesetzt vom Runner. Das funktioniert mit Claude Code, Codex und den anderen Agent-CLIs, die AgentsRoom unterstützt.
Wenn du noch zwischen Subagents und Agent Teams schwankst, erklärt dieser Vergleich, wofür beides gedacht ist.
AgentsRoom herunterladen
Führe alle deine KI-Agenten aus, in all deinen Projekten, aus einem einzigen Fenster.
Companion-App: Agenten auch unterwegs im Blick behalten
Nutzen Sie Claude, Codex, Antigravity CLI oder einen anderen KI-Anbieter.
Bugs und Wünsche direkt in dein öffentliches Backlog schicken.
Weiterlesen
AI Agent Loops: Wie sich selbst korrigierende Coding-Agents die Arbeit zu Ende bringen
Ein AI Agent Loop macht aus Prompten-und-Korrigieren einen selbstkorrigierenden Kreislauf: Der Agent schreibt einen Plan, baut ihn, prüft seine eigene Arbeit gegen den Plan und loopt, bis es fertig ist. Wie der Loop in Claude Code, Codex, Antigravity CLI, Cursor und beim Ralph loop funktioniert.
Zum ArtikelWas sind Tokens bei Claude und wie funktionieren sie? Wir haben 3,8 Milliarden gezählt
Ein Token ist ein Wortstück, und Claude zählt vier Arten davon: Eingabe, Cache-Schreibvorgänge, Cache-Lesevorgänge und Ausgabe. Wir haben 30 Tage unserer eigenen Claude Code-Sitzungen gezählt, 3,8 Milliarden Tokens: 98 % waren die Konversation, die erneut aus dem Cache gelesen wurde, 0,3 % das, was Claude geschrieben hat. Was jede Art kostet, warum eine Sitzung mit jeder Runde schwerer wird und was das 5-Stunden-Fenster misst.
Zum ArtikelSprachmodus in Codex, OpenCode, Antigravity und Claude Code: Welche CLI hat einen?
Wir haben am 13. Oktober 2026 fünf CLIs für Coding-Agenten und zwei Apps geprüft. Codex CLI und oh-my-pi führen ein gesprochenes Gespräch, Claude Code und Antigravity CLI diktieren nur in den Prompt, OpenCode hat nichts eingebaut. Wie du jede startest, wohin das Audio geht und was Sprache an Tokens kostet.
Zum Artikel