Kern des Patterns
Task Decomposition ist ein Pattern, mit dem ein Agent eine komplexe Aufgabe vor der Ausführung in kleinere Teilaufgaben zerlegt.
Wann sinnvoll: wenn sich eine komplexe Aufgabe nicht zuverlässig in einem Schritt lösen lässt und in Teilaufgaben aufgeteilt werden muss.
Statt alles auf einmal zu lösen, macht er:
- analysiert die Aufgabe
- definiert Schritte
- führt sie der Reihe nach aus
Jeder Schritt ist eine eigene Teilaufgabe.

Problem
Stell dir vor, der Agent bekommt eine Aufgabe:
"Erstelle einen monatlichen Verkaufsbericht."
In der Praxis ist das kein einzelner Schritt, sondern eine Abfolge von Teilaufgaben:
- Daten sammeln
- Daten bereinigen und validieren
- Metriken berechnen
- Fazit erstellen
Ohne expliziten Plan wird eine komplexe Aufgabe schnell intransparent: Schritte gehen verloren und die Logik bricht.
Wenn der Agent versucht, alles "in einem Durchlauf" zu machen, entsteht meist Chaos:
- fehlende Zwischenschritte
- falsche Ausführungsreihenfolge
- Vermischung von Planung und Ausführung
- schwache Kontrollierbarkeit von Fehlern
Das ist das Problem: Ohne Struktur lässt sich eine komplexe Aufgabe leicht instabil und fehlerhaft ausführen.
Lösung
Task Decomposition ergänzt vor der Ausführung eine eigene Planungsphase.
Analogie: Das ist wie Möbelaufbau nach Anleitung. Ohne Anleitung verwechselt man leicht die Reihenfolge oder vergisst ein Teil. Mit Anleitung ist jeder Schritt transparent und Fehler lassen sich leichter finden.
Schlüsselprinzip: Erst Plan, dann Aktionen. Genau das macht den Prozess steuerbar.
Damit der Agent nicht direkt zur finalen Antwort springt, legt decomposition-policy fest:
- welche Teilaufgaben verpflichtend sind
- in welcher Reihenfolge sie ausgeführt werden
- wann ein
re-plannötig ist
Der gesteuerte Prozess sieht so aus (wie im Diagramm):
- Goal: Ziel und Einschränkungen klären
- Plan: Aufgabe in Teilaufgaben und Abhängigkeiten zerlegen
- Schrittausführung (Step 1..N / Execute): Teilaufgaben nach Plan ausführen
- Combine Results: Ergebnisse der Schritte zusammenführen
- Done: finales Ergebnis erzeugen
Zwischenergebnisse (checkpoint) werden innerhalb der Ausführungsphase festgehalten.
Task Decomposition hilft dabei:
- Vorhersehbarkeit zu erhöhen
- wichtige Phasen nicht zu verlieren
- Fehler auf einen konkreten Schritt zu lokalisieren
- stabilere Ergebnisse bei langen Aufgaben zu bekommen
Es funktioniert am besten, wenn:
- es klare Schrittgrenzen und Abhängigkeiten gibt
- jeder Schritt ein Abschlusskriterium hat
- re-plan-Regeln bei geänderten Bedingungen definiert sind
- die Ausführungsphase den bestätigten Plan nicht umgeht
Auch wenn das Modell "sofort" eine finale Antwort geben will, bringt decomposition-policy den Prozess zurück zu strukturierten Schritten.
Wie es funktioniert
Task Decomposition führt die Schritte nicht selbst aus.
Es definiert nur, welche Teilaufgaben erledigt werden müssen, und jede davon kann über einen eigenen ReAct-Zyklus ausgeführt werden.
Das heißt: Der Agent erstellt zuerst einen Plan und löst dann die Teilaufgaben meist sequenziell, Schritt für Schritt.
Beschreibung des gesamten Ablaufs: Plan → Execute
Planung (Plan)
Der Agent bestimmt, welche Schritte zur Erfüllung der Aufgabe nötig sind.
Ausführung (Execute)
Das System führt jeden Schritt auf Basis des Agentenplans aus, oft über einen separaten ReAct-Zyklus, und führt danach das Ergebnis zusammen.
Im Code sieht das so aus
steps = plan(goal)
for step_no, step in enumerate(steps, start=1):
result = execute(step, context=context) # jeder Schritt sieht Ergebnisse vorheriger Schritte
if not result.ok:
return stop_or_replan(step_no=step_no, reason=result.error)
context.append(result.data)
return build_final_output(context)
Der Agent zerlegt die Aufgabe in Teilaufgaben und führt sie der Reihe nach aus.
So sieht das während der Ausführung aus
Goal: monatlichen Verkaufsbericht erstellen
Plan:
1. Verkaufsdaten sammeln
2. Daten bereinigen
3. zentrale Metriken berechnen
4. Diagramme erstellen
5. Fazit schreiben
Execute step 1: System ruft fetch_sales_data(month) auf
Observe: Rohdaten erhalten
Zwischen Schritten: raw_data wird zum Input für die Bereinigung
Execute step 2: System ruft clean_sales_data(raw_data) auf
Observe: Daten bereinigt und validiert
Zwischen Schritten: clean_data wird zum Input für die Metrikberechnung
Execute step 3: System ruft calculate_metrics(clean_data) auf
Observe: Metriken berechnet
Execute step 4: System ruft build_charts(metrics) auf
Observe: Diagramme erstellt
Execute step 5: System erstellt Zusammenfassung
Observe: finaler Bericht ist fertig
Stop: Nach dem letzten Schritt endet der Zyklus
Jeder Schritt wird getrennt ausgeführt, und das Zwischenergebnis wird zum Input für die nächste Phase.
Vollständiges Task-Decomposition-Agent-Beispiel
Wann es passt - und wann nicht
Passt
| Situation | Warum Task Decomposition passt | |
|---|---|---|
| ✅ | Die Aufgabe hat mehrere Phasen | Das Pattern teilt ein großes Ziel in klare Teilaufgaben, die nacheinander ausgeführt werden können. |
| ✅ | Die Reihenfolge der Aktionen ist wichtig | Der Plan fixiert die Schrittfolge und verringert das Risiko, eine kritische Phase zu überspringen. |
| ✅ | Das Ergebnis hängt von Zwischenschritten ab | Jede Teilaufgabe hat ein eigenes Ergebnis, das zum Input für die nächste wird. |
Passt nicht
| Situation | Warum Task Decomposition nicht passt | |
|---|---|---|
| ❌ | Die Aufgabe ist einfach | Decomposition fügt zusätzliche Schritte hinzu, wo die Aufgabe direkt lösbar ist. |
| ❌ | Eine schnelle Antwort ist erforderlich | Planaufbau und Ausführung erhöhen die Latenz gegenüber einer einmaligen Ausführung. |
| ❌ | Der Plan lässt sich nicht im Voraus erstellen | Wenn sich die Aufgabenstruktur ständig ändert, verliert ein starrer Plan schnell seine Relevanz. |
Weil der Plan ungenau oder unnötig sein kann.
Wann Task Decomposition verwenden (vs andere Patterns)
Verwende Task Decomposition, wenn du zuerst ein großes Ziel in kleinere ausführbare Teilaufgaben zerlegen musst.
Kurzer Test:
- wenn du brauchst "zuerst eine komplexe Aufgabe in Teilaufgaben aufteilen" -> Task Decomposition
- wenn du brauchst "nach jedem Schritt entscheiden, was als Nächstes passiert" -> ReAct Agent
Vergleich mit anderen Patterns und Beispiele
Schnellübersicht:
| Wenn die Aufgabe so aussieht... | Verwende |
|---|---|
| Nach jedem Schritt muss entschieden werden, was als Nächstes passiert | ReAct Agent |
| Zuerst muss ein großes Ziel in kleinere ausführbare Aufgaben zerlegt werden | Task Decomposition Agent |
| Code soll ausgeführt, Ergebnisse geprüft und sicher iteriert werden | Code Execution Agent |
| Daten sollen analysiert und daraus Schlussfolgerungen abgeleitet werden | Data Analysis Agent |
| Recherche aus mehreren Quellen mit strukturierten Belegen ist nötig | Research Agent |
Beispiele:
ReAct: "Finde die Ursache eines API-Ausfalls: Logs prüfen -> Fehler anschauen -> den nächsten Check anhand des Ergebnisses ausführen".
Task Decomposition: "Plane den Launch eines neuen Tarifs: zerlege die Aufgabe in Teilaufgaben für Content, Technik, QA und Support".
Code Execution: "Berechne 12-Monats-Retention in Python und prüfe die Formeln auf realen Daten".
Data Analysis: "Analysiere eine Sales-CSV: finde Trends, Anomalien und gib kurze Schlussfolgerungen".
Research: "Sammle Daten zu 5 Wettbewerbern aus mehreren Quellen und erstelle eine Vergleichszusammenfassung".
Wie man es mit anderen Patterns kombiniert
- Task Decomposition + ReAct - jede Teilaufgabe wird Schritt für Schritt ausgeführt, sodass Fehler leichter kontrollierbar sind.
- Task Decomposition + Routing - für jede Teilaufgabe wird automatisch der passendste Ausführer gewählt.
- Task Decomposition + Orchestrator - der Orchestrator steuert Abhängigkeiten und Parallelität, damit der Plan ohne Blockaden läuft.
Unterschied zu ReAct
| ReAct | Task Decomposition | |
|---|---|---|
| Was es entscheidet | Was als Nächstes zu tun ist | Welche Schritte nötig sind |
| Ebene | Ausführung | Planung |
| Wie es arbeitet | Führt einen Schritt aus | Teilt eine Aufgabe in Teilaufgaben |
| Verwendet | Tools zur Ausführung | ReAct-Zyklen zur Ausführung von Teilaufgaben |
ReAct hilft, einen Schritt auszuführen.
Task Decomposition definiert, welche Schritte überhaupt ausgeführt werden sollen.
Kurz gesagt
Task-Decomposition-Agent:
- analysiert die Aufgabe
- teilt sie auf in Schritte
- führt aus der Reihe nach
Vorteile und Nachteile
Vorteile
zerlegt große Aufgaben in klare Schritte
Aufwand und Risiken lassen sich leichter einschätzen
Teilaufgaben lassen sich leichter delegieren und testen
reduziert Chaos in der Ausführung
Nachteile
auch die Dekomposition kostet Zeit
der Plan kann zu detailliert werden
wenn der Startplan falsch ist, wird es später schwieriger
FAQ
Q: Ist ein Plan immer erforderlich?
A: Nein. Bei einfachen Aufgaben kann er unnötig sein.
Q: Kann der Agent den Plan ändern?
A: Ja. Wenn während der Ausführung neue Daten auftauchen oder ein Schritt fehlschlägt, kann der Agent den ursprünglichen Plan überarbeiten: neue Teilaufgaben hinzufügen, Reihenfolge ändern oder vor den nächsten Aktionen einen neuen Plan erstellen.
Q: Funktioniert Task Decomposition ohne ReAct?
A: Ja. Die Planung von Teilaufgaben kann separat laufen, zum Beispiel wenn jeder Schritt einen festen Workflow hat. Bei komplexeren Aufgaben wird jedoch jede Teilaufgabe oft über einen ReAct-Zyklus ausgeführt.
Was als Nächstes
Task Decomposition erlaubt, eine Aufgabe in Schritte zu zerlegen.
Aber was tun, wenn zwischen mehreren Agenten gewählt werden muss?