- Dynamische Workflows sind eine Funktion, mit der Claude Code einen zur Aufgabe passenden Harness spontan selbst schreibt und so maßgeschneiderte Harnesses, die zuvor separat aufgebaut wurden, nativ innerhalb des Codes verarbeitet
- Durch das Ausführen von JavaScript-Dateien können Subagents erzeugt und koordiniert werden; dabei lässt sich sogar auswählen, welches Modell jeder Agent verwendet und ob eine Worktree-Isolierung genutzt wird
- Fehlermodi wie agentic laziness, self-preferential bias, goal drift, die in einem einzelnen Kontextfenster auftreten, werden durch getrennte Kontexte strukturell verhindert
- Auch für nichttechnische Aufgaben außerhalb des Codings nutzbar, etwa Migrationen, Deep Research, Sortierung, Triage und Ursachenanalyse
- Wegen des hohen Token-Verbrauchs nicht für jede Aufgabe nötig, aber ein Ausgangspunkt, um Claude Code durch kreative Nutzung auf neue Weise zu erweitern
Überblick über dynamische Workflows
- Letzte Woche wurde Dynamische Workflows in Claude Code eingeführt; damit kann Claude einen zur Aufgabe passenden Harness spontan schreiben
- Der grundlegende Claude-Code-Harness wurde für Coding entwickelt, ist aber auch für andere Aufgabentypen nützlich, da viele Aufgaben dem Coding ähneln
- Für Research, security analysis, agent teams und Code Review wurden bisher separate maßgeschneiderte Harnesses auf Claude Code aufgebaut, um die beste Leistung zu erzielen
- Workflows lösen diese Probleme nun nativ innerhalb von Claude Code und unterstützen auch das Teilen und Wiederverwenden mit anderen
- Best Practices entwickeln sich noch weiter, und wegen des hohen Token-Verbrauchs sollte gut überlegt werden, wann und wie sie eingesetzt werden
Beispiel-Prompts
- "Dieser Test kann ungefähr einmal in 50 Durchläufen fehlschlagen. Erstelle einen Workflow, der das reproduzieren kann. Stelle verschiedene Hypothesen über das Race auf und fahre fort, bis durch Belege eine plausible Hypothese entsteht."
- "Nutze einen Workflow, um die letzten 50 Sessions zu prüfen, wiederholt geänderte Bereiche zu finden und die wiederkehrenden Teile als
CLAUDE.md-Regeln umzuwandeln" - "Nutze einen Workflow, um die #incidents in Slack der letzten 6 Monate zu analysieren und wiederkehrende Ursachen zu finden, zu denen niemand ein Ticket eingereicht hat."
- "Nimm meinen Geschäftsplan und führe einen Workflow aus, in dem mehrere Rollen ihn sorgfältig aus Sicht von Investoren, Kunden und Wettbewerbern analysieren."
- "Hier ist ein Ordner mit 80 Lebensläufen. Nutze einen Workflow, um sie für eine Backend-Position zu ranken, und prüfe die Top 10 noch einmal. Verwende das Tool AskUserQuestion, um mich anhand der Bewertungskriterien zu interviewen."
- "Wir müssen diesem CLI-Tool einen Namen geben. Nutze einen Workflow, um mehrere Optionen zu brainstormen und per Turniermodus die besten 3 auszuwählen."
- "Nutze einen Workflow, um überall das User-Modell in Account umzubenennen."
- "Prüfe den Entwurf meines Blogposts gründlich und nutze einen Workflow, um ihn mit der Codebase und allen technischen Behauptungen abzugleichen. Ich möchte nichts Falsches veröffentlichen."
Wie dynamische Workflows funktionieren
- Es wird eine JavaScript-Datei ausgeführt, die einige spezielle Funktionen enthält, um das Erzeugen und Koordinieren von Subagents zu unterstützen
- Auch Standard-JavaScript-Funktionen wie JSON, Math und Array sind enthalten und unterstützen die Datenverarbeitung
- Es kann das Modell ausgewählt werden, das ein Agent verwenden soll, und entschieden werden, ob für Subagents eine Worktree-Isolierung genutzt wird; Claude wählt das nötige Intelligenzniveau und den Isolationsgrad
- Selbst wenn ein Workflow durch Benutzerinteraktion oder das Beenden des Terminals unterbrochen wird, kann er beim Fortsetzen der Session ab dem Unterbrechungspunkt weiterlaufen
Warum dynamische Workflows nötig sind
- Der grundlegende Harness führt Planung und Ausführung in einem einzelnen Kontextfenster aus; das ist für viele Coding-Aufgaben effektiv, stößt aber bei langfristigen, groß angelegten parallelen oder stark strukturierten adversarialen Aufgaben an Grenzen
- Je länger komplexe Aufgaben in einem einzigen Kontext bearbeitet werden, desto anfälliger werden sie für bestimmte Fehlermodi
- Agentic laziness: Eine komplexe mehrstufige Aufgabe wird vor Abschluss abgebrochen, und nach nur teilweiser Erledigung wird sie als abgeschlossen erklärt, etwa wenn bei einem Security Review nur 20 von 50 Punkten bearbeitet werden
- Self-preferential bias: Tendenz, bei Validierung und Bewertung gegenüber einer Rubrik die eigenen Ergebnisse zu bevorzugen
- Goal drift: Über mehrere Turns hinweg geht die Treue zum ursprünglichen Ziel schrittweise verloren, besonders nach der Kompaktierung; dabei gehen Edge-Case-Anforderungen oder Einschränkungen wie "nicht X tun" verloren
- Dies wird verhindert, indem mehrere Claude-Instanzen mit separaten Kontextfenstern sowie fokussierten und isolierten Zielen koordiniert werden
Dynamische vs. statische Workflows
- Bisher konnten mit dem Claude Agent SDK oder
claude -pstatische Workflows geschrieben werden, die mehrere Claude-Code-Instanzen koordinieren - Statische Workflows sind in der Regel allgemeiner, weil sie alle Edge Cases abdecken müssen
- Mit Claude Opus 4.8 und dynamischen Workflows ist Claude nun intelligent genug, selbst maßgeschneiderte Harnesses für konkrete Use Cases zu schreiben
Nutzungsmuster für dynamische Workflows
- Claude kann direkt um die Erstellung eines Workflows gebeten werden, oder mit dem Triggerwort
ultracodelässt sich die Workflow-Erstellung sicher auslösen - Es gibt gemeinsame Muster, die Claude beim Aufbau von Workflows kombiniert
-
Classify-and-act
- Ein Klassifikator-Agent bestimmt den Aufgabentyp und leitet dann je nach Aufgabe an unterschiedliche Agenten oder Aktionen weiter, oder entscheidet am Ende per Klassifikator über die Ausgabe
-
Fan-out-and-synthesize
- Die Aufgabe wird in kleine Schritte aufgeteilt, für jeden Schritt wird ein Agent ausgeführt und anschließend werden die Ergebnisse zusammengeführt
- Nützlich, wenn es viele kleine Schritte gibt oder wenn jeder Schritt von einem sauberen Kontextfenster profitiert, um gegenseitige Interferenzen und Kreuzkontamination zu vermeiden
- Die Synthesize-Phase dient als Barriere: Sie wartet auf alle Fan-out-Agenten und führt dann die strukturierten Ausgaben zu einer zusammen
-
Adversarial verification
- Für jeden erzeugten Agenten wird ein separater Agent ausgeführt, der dessen Ausgabe adversarial gegen eine Rubrik oder Kriterien prüft
-
Generate-and-filter
- Es werden viele Ideen zu einem Thema erzeugt und dann per Rubrik oder Validierung gefiltert, dedupliziert und nur die besten verifizierten Ideen zurückgegeben
-
Tournament
- Statt die Aufgabe aufzuteilen, konkurrieren Agenten miteinander: N Agenten versuchen dieselbe Aufgabe mit unterschiedlichen Ansätzen, und ein Jury-Agent bewertet paarweise, bis ein Gewinner feststeht
-
Loop until done
- Wenn der Arbeitsumfang unklar ist, werden statt einer festen Anzahl wiederholt Agenten erzeugt, bis eine Abbruchbedingung erfüllt ist, etwa keine neuen Funde oder keine Fehler mehr im Log
Anwendungsfälle
- Workflows sind in manchen Fällen sogar für nichttechnische Aufgaben nützlicher
-
Migrationen und Refactoring
- Bun wurde mit einem Workflow von Zig nach Rust neu geschrieben; Details finden sich im X-Thread von Jarred
- Zentral ist die Zerlegung in Arbeitsschritte wie Callsites, fehlschlagende Tests und Module
- Für jede Änderung werden in einem Worktree Subagents erzeugt, anschließend wird die Änderung von anderen Agenten adversarial geprüft und dann gemergt
- Es wird angewiesen, ressourcenintensive Befehle zu vermeiden, damit maximale Parallelität ohne Erschöpfung der Maschinenressourcen möglich ist
-
Deep Research
- Das Deep-Research-Skill (
/deep-research), das dynamische Workflows nutzt, wurde veröffentlicht; es verteilt Websuche per Fan-out, holt Quellen, prüft Behauptungen adversarial und erstellt einen Bericht mit Zitaten - Neben Websuche kann es auch genutzt werden, um mit Slack-Kontext Statusberichte zu erstellen oder durch tiefes Erkunden einer Codebase zu untersuchen, wie Features funktionieren
- Das Deep-Research-Skill (
-
Tiefgehende Verifikation
- Um alle Tatsachenbehauptungen in einem Bericht zu prüfen und mit Quellen zu versehen, kann ein Workflow erzeugt werden, in dem ein Agent alle Tatsachenbehauptungen identifiziert und Subagents jede einzelne im Detail prüfen
- Verifikations-Agenten können auch die Qualität der Quellen der Source-Subagents kontrollieren
-
Sortierung
- Nützlich beim Sortieren von Elementen nach qualitativen Kriterien, etwa Support-Tickets nach Schweregrad von Bugs
- Wenn mehr als 1000 Zeilen in einem Prompt sortiert werden, leidet die Qualität oder der Kontext läuft über; stattdessen können Turniere, paarweise Vergleichspipelines oder paralleles Bucket-Ranking mit anschließendem Merge genutzt werden
- Vergleichendes Urteilen ist verlässlicher als absolute Punktzahlen; da jeder Vergleich von einem separaten Agenten durchgeführt wird, behält ein deterministischer Loop das Bracket bei und nur die Ausführungsreihenfolge bleibt im Kontext
-
Memory und Regelbefolgung
- Wenn Claude Regeln übersieht, die selbst in CLAUDE.md stehen, kann ein Workflow erzeugt werden, der eine Regelliste nimmt und pro Regel einen Verifikations-Agenten prüfen lässt
- Um False Positives zu reduzieren, kann ein Skeptic-Persona-Subagent erzeugt werden, der die Regeln überprüft
- Auch die umgekehrte Richtung ist möglich: Wiederkehrende Änderungen aus aktuellen Sessions und Code-Review-Kommentaren werden extrahiert, von parallelen Agenten geclustert, jeder Kandidat adversarial verifiziert ("Hätte diese Regel den tatsächlichen Fehler verhindert?") und die überlebenden Regeln in CLAUDE.md verfeinert
-
Ursachenanalyse
- Debugging funktioniert gut, wenn mehrere unabhängige Hypothesen aufgestellt und geprüft werden, doch in einem einzelnen Kontextfenster kann Self-preferential Bias auftreten
- Ein Workflow verhindert das strukturell, indem aus getrennten Belegen wie Logs, Dateien und Daten Agenten Hypothesen erzeugen; jede Hypothese wird anschließend einem Panel aus Prüfern und Widerlegern gegenübergestellt
- Das ist auch für Post-Mortems außerhalb von Code nutzbar, etwa im Vertrieb zur Ursachenanalyse sinkender Umsätze im März oder im Data Engineering zur Untersuchung gescheiterter Pipelines
-
Triage in großem Maßstab
- Ein Triage-Workflow für Support-Queues, Bug-Reports oder Backlogs, die Menschen nicht vollständig bewältigen können, klassifiziert jedes Element, entfernt Duplikate zu bestehenden Tracking-Einträgen und leitet Maßnahmen ein, etwa einen Fix-Versuch oder Eskalation an Menschen
- Ein nützliches Muster ist Quarantine: Es blockiert hochprivilegierte Aktionen von Agenten, die nicht vertrauenswürdige öffentliche Inhalte lesen, während informationsverarbeitende Agenten die Auswertung übernehmen
- In Kombination mit
/loopist ein kontinuierlicher Betrieb möglich
-
Exploration und Geschmack
- Nützlich, um Lösungen für geschmacksbasierte Themen wie Design oder Naming zu erkunden, bei denen Rubriken Vorteile bieten
- Mehrere Lösungen werden exploriert, einem Review-Agenten wird eine Rubrik für gute Lösungen gegeben, und sobald er entscheidet, dass die Kriterien erfüllt sind, ist die Aufgabe abgeschlossen; per Turnier lassen sich die Ergebnisse sortieren und auswählen
-
Evals
- Leichtgewichtige Evaluierungen lassen sich ausführen, indem in einem Worktree separate Agenten erzeugt und von Vergleichs-Agenten gegen eine Rubrik bewertet werden, etwa um ein erzeugtes Skill nach bestimmten Kriterien zu bewerten und zu verbessern
-
Modell- und Intelligenz-Routing
- Ein Klassifikator-Agent kann erzeugt werden, der je nach Aufgabe das Modell bestimmt und bei Aufgaben mit vielen Tool-Aufrufen durch Voruntersuchung das optimale Modell identifiziert
- Zum Beispiel hängt beim Task "erkläre die Funktionsweise des Auth-Moduls" das optimale Modell von der Anzahl der Dateien im Auth-Modul und der Form der Codebase ab; der Klassifikator untersucht dies und routet je nach Komplexität zu Sonnet oder Opus
Wann man sie nicht verwenden sollte
- Workflows sind eine neue Funktion; es gibt viele Use Cases mit großem Mehrwert, aber sie werden nicht für jede Aufgabe benötigt und können deutlich mehr Tokens verbrauchen
- Besonders geeignet sind kreative Anwendungen, die Claude Code auf bisher unversuchte Weise ausreizen
- Bei normalen Coding-Aufgaben sollte man sich fragen: "Braucht das wirklich mehr Compute?" Für die meisten klassischen Coding-Aufgaben ist kein Panel aus fünf Reviewern nötig
Tipps zum Aufbau dynamischer Workflows
-
Prompting
- Detailliertes Prompting mit den zuvor beschriebenen Techniken liefert die besten Ergebnisse
- Sie sind nicht nur für große Aufgaben gedacht; man kann auch einen "quick workflow" prompten, um etwa Annahmen schnell adversarial zu überprüfen
-
Mit /goal und /loop kombinieren
- Wiederholbare Workflows wie Triage, Research oder Verifikation lassen sich mit
/loopfür regelmäßige Ausführung kombinieren und mit/goallassen sich harte Abschlussanforderungen setzen
- Wiederholbare Workflows wie Triage, Research oder Verifikation lassen sich mit
-
Budget für Token-Nutzung
- Durch ein explizites Token-Budget lässt sich die Anzahl der Tokens pro Aufgabe begrenzen, etwa mit Prompts wie "use 10k tokens"
-
Speichern und teilen
- Im Workflow-Menü kann mit "s" gespeichert werden; außerdem lassen sich Workflows in
~/.claude/workflowseinchecken oder als Skill veröffentlichen - Beim Teilen als Skill wird die JavaScript-Workflow-Datei im Skill-Ordner abgelegt und in SKILL.md referenziert; für mehr Flexibilität sollte der Prompt das Workflow im Skill als Template statt als Skript behandeln, das unverändert ausgeführt wird
- Im Workflow-Menü kann mit "s" gespeichert werden; außerdem lassen sich Workflows in
-
Ausgangspunkt für Erweiterungen
- Workflows sind eine neue Möglichkeit, Claude Code zu erweitern, und der beste Einsatz ist noch ein offener Ausgangspunkt für weitere Entdeckungen
Noch keine Kommentare.