Skip to main content

Subagents (Subagenten und Delegation)

FÜR AI-AGENTENChatGPTClaude

Architekturmuster zum Starten von einmaligen, isolierten Unter-Agenten für die parallele Ausführung ressourcenintensiver Teilaufgaben, ohne den Kontextfenster des übergeordneten Prozesses zu belasten.

1. Konzeptüberblick und systemisches Problem

Bei komplexen Entwicklungsaufgaben wird ein erheblicher Teil der Zeit für „schmutzige“ Recherchearbeit aufgewendet: Stichwortsuche in hunderten Dateien, Lesen von Dokumentation, Durchsuchen von Systemlogs oder Prüfen dutzender Abhängigkeiten.

Wenn alle diese Operationen von einem einzigen Haupt-Agenten innerhalb eines Dialogs ausgeführt werden, entstehen folgende Probleme:

  1. Katastrophale Kontextverschmutzung (Context Pollution): Tausende Zeilen Rohcode und Logs verdrängen die ursprünglichen Systemanweisungen des Benutzers.
  2. Aufmerksamkeitsdegradation (Lost-in-the-Middle): Der Agent verliert sich in seinen eigenen Zwischenentwürfen und aus dem Blickfeld der primären Zielsetzung.
  3. Sequentielles Engpass (Sequential Bottleneck): Der Agent ist gezwungen, jede Quelle nacheinander zu prüfen und vergeudet Minuten dort, wo die Arbeit parallelisiert in Sekunden erledigt werden könnte.

Das Subagent-Pattern implementiert das Prinzip der Ausführungskontext-Isolation: Der Parent-Agent spawnet separate Child-Executer mit einem sauberen Aufmerksamkeitsfenster, delegiert Routineaufgaben an sie und erhält nur das raffinierte, strukturierte Ergebnis zurück.

2. Architektonische Taxonomie und mentales Modell

Je nach Organisationsweise der Subagent-Arbeit lassen sich drei Haupttopologien unterscheiden:

  • 1. Fork-Join (Map-Reduce Pattern): Der Parent-Agent zerlegt eine große Aufgabe in $N$ unabhängige Teile (z. B. Analyse von 4 einzelnen Microservices), startet gleichzeitig 4 parallele Subagents (Fork), wartet auf deren Abschluss und konsolidiert die Ergebnisse in einem einzigen Bericht (Join).
  • 2. Transient Deep-Dive Worker (Einmaliger Reconnaissance-Agent): Ein Subagent wird für eine spezifische Operation erzeugt: z. B. Zugriff auf die Dokumentationswebsite, Durchführung der Authentifizierung, Finden eines Endpunkt-Nutzungsbeispiels und Rückgabe von lediglich 5 Codezeilen. Anschließend wird der Subagent-Container gelöscht.
  • 3. Hierarchischer Baum mit Tiefenbegrenzung (Bounded Delegation Tree): Der Parent-Prozess steuert Subagents der ersten Ebene, welche bei Bedarf Worker der zweiten Ebene spawnen können. Um unkontrollierten Ressourcenverbrauch zu verhindern, wird die Rekursionstiefe streng begrenzt (max_depth = 2).

3. Technischer Pipeline und interne Mechanik

Der Lebenszyklus eines Subagenten umfasst folgende Schritte:

  1. Delegation Call (Initialisierung der Delegation): Der Haupt-Agent ruft ein spezielles Start-Tool auf: invoke_subagent(task_name="grep_auth_logs", prompt="...", tools=["grep", "cat"]).
  2. Context Sandbox Isolation (Erstellung eines isolierten Threads): Die Runtime initialisiert eine neue LLM-Sitzung mit sauberem Kontext. Es werden ausschließlich die Anweisung für die Teilaufgabe und eine eingeschränkte Liste erlaubter Tools injiziert.
  3. Autonomous Execution (Autonomer innerer Loop): Der Subagent durchläuft seinen eigenen ReAct-Zyklus, begeht Fehler, testet Hypothesen und formt das Endergebnis, ohne den Parent-Agenten mit Zwischenmeldungen zu belasten.
  4. Synthesis & Garbage Collection (Zusammenfassung und Bereinigung): Das Rohprotokoll des Subagent-Dialogs wird archiviert oder verworfen. Der Haupt-Agent erhält eine Tool-Rückmeldung mit einer kurzen Zusammenfassung (z. B.: „2 Memory Leaks in Datei worker.ts gefunden: Zeilen 14 und 89“).

4. Praktische Engineering-Szenarien im Production-Umfeld

01. Paralleler Sicherheitsaudit eines großen Monorepos

Der Lead Architect spawnet drei Subagents gleichzeitig:

  • Worker 1: Scannt das Backend auf SQL-Injections und unsichere Raw Queries.
  • Worker 2: Prüft das Frontend auf XSS und gefährliche Aufrufe von dangerouslySetInnerHTML.
  • Worker 3: Analysiert Docker-Konfigurationsdateien und CI/CD-Pipelines auf offene Ports und nicht gehärtete Images. Jeder Subagent liest hunderte Dateien, aber der Lead Architect erhält eine kompakte, zusammengefasste Tabelle mit den drei kritischen Punkten.

02. Hintergrundanalyse massiver Server-Logs

Anstatt 50 Megabyte Nginx-Logs in den Hauptkontext zu laden, wird ein analytischer Subagent gestartet. Er filtert die Logs lokal via grep/awk, identifiziert einen anomalen Anstieg von Statuscodes 500 und liefert dem Haupt-Agenten nur den relevanten Stacktrace zurück.

03. Recherche externer Bibliotheken ohne Fokusverlust

Während der Coding-Agent die Service-Architektur entwirft, sendet er einen Subagenten los, um die offizielle Stripe API-Dokumentation zu lesen. Der Subagent klärt die Checkout-Syntax und gibt ein fertiges Minimal-Code-Beispiel zurück.

5. Fallstricke, typische Fehler und Sicherheit

  • Token-Sturm und Rate Limits (TPM Spikes): Der gleichzeitige Start von 10 Subagents erzeugt einen enormen Anstieg der Anfragen an den Provider, was zu kaskadierenden Fehlern 429 Too Many Requests führt. Verwenden Sie stets Task-Queues mit Pool-Limits (z. B. maximal 3 gleichzeitige Worker).
  • Konflikte bei parallelen Schreibvorgängen (Race Conditions): Wenn zwei Subagents versuchen, dieselbe Datei im Repository gleichzeitig zu editieren, kommt es zu Überschreibungen oder Code-Beschädigungen. Gewähren Sie Research-Subagents ausschließlich Read-Only-Rechte.
  • Endlose Delegations-Rekursion (Fork Bomb): Ein Subagent entscheidet, dass die Aufgabe zu komplex sei, und spawnet weitere 5 Subagents, die dasselbe tun. Verbieten Sie Child-Agenten strikt den Aufruf des Tools invoke_subagent.
/ Häufig gestellte FragenSchema.org FAQPage

FAQ: Subagents (Subagenten und Delegation)

Multi-Agent-Systeme bestehen aus langfristigen, eigenständigen Agenten mit definierten Rollen und kontinuierlicher Kommunikation. Subagenten sind hingegen einmalige, kurzlebige (ephemeral) Worker, die vom übergeordneten Agenten für eine spezifische, eng gefasste Aufgabe erstellt werden (z. B. Durchsuchen von 50 Log-Dateien) und nach Rückgabe einer kompakten Antwort vollständig zerstört werden.
/ Interne Links
Alle Begriffe