Subagenten-Delegation
Verantwortung
delegate_tool lässt den Haupt-Agenten eine Teilaufgabe an einen isolierten Subagenten delegieren: Der Subagent hat einen eigenen Dialog, ein eigenes Terminal, einen eigenen Werkzeugsatz; wenn er fertig ist, gibt er nur das finale Ergebnis an den Vater-Agenten zurück. Das realisiert eine Pipeline mit «null Kontextkosten» – der Kontext des Vaters wird nicht mit Prozessdetails der Teilaufgabe verschmutzt. Der Subagent läuft in einem ThreadPoolExecutor-Worker; gefährliche Befehle sind per Default auto-deny (konfigurierbar auf auto-approve).
Schlüsseldateien
def delegate_task:2426— Delegations-Einstiegclass DelegateEvent:625— Delegations-Event-Enumauto-deny / auto-approve Callback:61-103—_subagent_auto_deny(sichere Vorgabe) /_subagent_auto_approve(opt-in YOLO)_get_subagent_approval_callback:102-160— wählt den Callback gemäßdelegation.subagent_auto_approveDaemonThreadPoolExecutor:1978-1990— residenter Thread-Pool für Subagentenwith DaemonThreadPoolExecutor:2651-2660— Delegations-Ausführungskontexttools/daemon_pool.py— Implementierung desDaemonThreadPoolExecutorMulti-Backend-Terminal:5-15— das Terminal des Subagenten läuft in einem der 6 Sandbox-Backends (siehe Sandbox)
Datenfluss
- Die Hauptschleife erhält vom Provider
tool_call: delegate. delegate_task:2426wird aufgerufen und erhält die Beschreibung der Teilaufgabe sowie optionale Toolsets.- In
DaemonThreadPoolExecutor:2651wird ein Worker gestartet:- der Worker-Installer installiert den Approval-Callback (
tools/delegate_tool.py:102); per Default auto-deny für gefährliche Befehle - der Subagent baut seinen eigenen Dialogkontext auf und ruft
run_conversation:588auf, um die Schleife zu drehen - Werkzeugaufrufe des Subagenten laufen über
registry:765(Toolsets können vom Vater eingeschränkt werden)
- der Worker-Installer installiert den Approval-Callback (
- Nach Abschluss gibt der Subagent nur den finalen Text zurück;
delegate_taskverpackt ihn übertool_result:798und füllt ihn beim Vater auf. - Der Kontext des Vaters wächst nur um ein Tool-Ergebnis, nicht um Prozessdetails.
Zusammenfassung
Subagenten-Delegation = Kontext-Isolation + Kontrolle gefährlicher Befehle. Der Vater sieht nur das Ergebnis, nicht den Prozess, was lange Pipelines vor Prozessrauschen schützt. Standard ist auto-deny; für Batch-/Cron-Szenarien lässt sich auto-approve opt-in einschalten. Die Terminal-Ausführung fällt auf die Sandbox-Backends.