Zum Inhalt springen

Shared Tasks & Messaging

Wissen

Tasks als Koordinationsprimitiv

In Agent Teams sind Tasks die zentrale Einheit der Arbeitsteilung. Der Lead erstellt Tasks, und die Teammates arbeiten sie ab. Jede Task durchläuft einen einfachen Lebenszyklus:

pending  -->  in_progress  -->  completed
  • pending: Die Task wartet darauf, von einem Teammate übernommen zu werden
  • in_progress: Ein Teammate hat die Task claimed und arbeitet daran
  • completed: Die Task ist abgeschlossen, das Ergebnis steht bereit

Dependencies zwischen Tasks

Tasks können voneinander abhängen. Das ist entscheidend für Workflows, bei denen eine Reihenfolge eingehalten werden muss:

Task A: "API-Endpunkt implementieren"     [keine Abhängigkeit]
Task B: "Tests für API schreiben"          [abhängig von Task A]
Task C: "API-Dokumentation erstellen"      [abhängig von Task A]

In diesem Beispiel können Tasks B und C erst starten, wenn Task A abgeschlossen ist. Sobald Task A auf completed wechselt, werden B und C automatisch freigegeben -- und können parallel von verschiedenen Teammates bearbeitet werden.

iDAG statt Reihenfolge

Dependencies bilden einen gerichteten azyklischen Graphen (DAG). Das bedeutet: Tasks können mehrere Vorgänger haben, aber keine Zyklen. Claude Code erkennt zyklische Dependencies und meldet einen Fehler.

File Locking im Detail

Wenn ein Teammate eine Task claimen will, passiert Folgendes:

  1. Der Teammate versucht, ein Lock auf die Task-Datei zu setzen
  2. Wenn das Lock erfolgreich ist: Status wird auf in_progress gesetzt, Teammate-ID wird eingetragen
  3. Wenn das Lock fehlschlägt: Ein anderer Teammate war schneller -- der aktuelle sucht sich die nächste verfügbare Task

Dieses optimistische Locking verhindert Race Conditions, ohne dass ein zentraler Koordinator nötig ist. Jeder Teammate kann eigenständig Tasks aus der Queue nehmen.

Direkte Agent-zu-Agent-Kommunikation

Neben der Task List gibt es ein Mailbox-System für direkte Kommunikation:

message(recipient, content) -- Nachricht an einen bestimmten Teammate:

"Hey test-writer, die API hat einen zusätzlichen Parameter 'format' bekommen.
Bitte berücksichtige das in den Tests."

broadcast(content) -- Nachricht an alle Teammates:

"Achtung: Die Datenbankschema-Migration wurde gerade ausgeführt.
Bitte pullt die neueste Version."

Nachrichten werden nicht in Echtzeit zugestellt. Stattdessen prüft jeder Agent seine Mailbox bei jedem Tool-Call-Zyklus. Das bedeutet: Eine Nachricht kommt typischerweise innerhalb weniger Sekunden an, aber nicht sofort.

Du hast drei Tasks: Feature implementieren, Tests schreiben, Dokumentation aktualisieren. Die Tests und die Dokumentation hängen beide vom Feature ab. Wie viele Tasks können maximal parallel laufen?

Verstehen

Plan erstellen: Der Team Lead analysiert die Aufgabe und erstellt Tasks in der Shared Task List
Schritt 1 von 8

Bekannte Einschränkungen

!Aktuelle Limitierungen

Da Agent Teams experimentell sind, gibt es einige bekannte Einschränkungen, die du kennen solltest.

Agent Teams befinden sich in aktiver Entwicklung. Diese Einschränkungen sind Stand Mai 2026 bekannt:

  1. Kein Session-Resume für in-process Teammates: Wenn du die Session beendest, gehen die Teammate-Kontexte verloren. Nur der Lead kann mit /resume fortgesetzt werden.

  2. Task-Status kann veraltet sein: Da die Task List dateibasiert ist, kann es kurzzeitig vorkommen, dass ein Teammate einen veralteten Status sieht. Das File Locking verhindert doppelte Bearbeitung, aber die Anzeige kann kurz inkonsistent sein.

  3. Shutdown kann langsam sein: Wenn du die Session beendest, müssen alle Teammates sauber heruntergefahren werden. Bei vielen laufenden Tasks kann das einige Sekunden dauern.

  4. Eine Team-Session pro Lead: Du kannst nicht mehrere Teams gleichzeitig aus einer Lead-Session heraus steuern. Für mehrere Teams brauchst du mehrere Terminal-Sessions.

  5. Keine verschachtelten Teams: Ein Teammate kann keine eigenen Teammates spawnen. Die Hierarchie ist flach: Lead --> Teammates. Wenn ein Teammate eine Teilaufgabe delegieren will, nutzt er klassische Subagents.

Wann Tasks, wann Messages?

Die Faustregel:

  • Tasks für planbare Arbeit: "Implementiere Feature X", "Schreibe Tests für Y"
  • Messages für unerwartete Situationen: "Achtung, Interface hat sich geändert", "Brauchst du Hilfe?"

Tasks sind die Hauptkoordinationsachse. Messages sind der Notfallkanal für alles, was nicht in den Plan passt.

Reflektieren

Die Kombination aus Task List und Messaging gibt Agent Teams genug Struktur für planbare Arbeit und genug Flexibilität für unvorhergesehene Situationen. Im nächsten Abschnitt schauen wir uns konkrete Praxis-Patterns an und klären, wann Agent Teams sinnvoller sind als Subagents.