# Claude-Agenten reden miteinander

> Source: <https://ajagara.com/blog/claude-agenten-reden-miteinander/>
> Published: 2026-09-02 00:00:00+00:00

Heute habe ich in einer meiner Codebasen drei Claude-Sessions gleichzeitig gestartet. Jede bekam einen eigenen Produktbereich und den Auftrag, ihn als Product Owner zu verantworten. Während der Arbeit haben die drei einander Nachrichten geschickt, über einen Unix-Domain-Socket, den jede Session beim Start selbst anlegt. Orchestriert hat in allen drei Sessions Fable 5.1. Vor dieser Version habe ich das Verhalten nicht beobachtet.

Der Unterbau ist der Prozess, den ich im [SDLC des Spec-Driven Development](/blog/spec-driven-development-bilanz/) beschrieben habe. In der Codebasis liegt eine große Sammlung von Spezifikationen, geordnet in Epics und Tickets, mit ausgewiesenen Abhängigkeiten. Implementiert hat ein Entwickler-Agent, dessen Arbeit ein Judge unabhängig prüft. Als Entwickler lief Claude Opus mit Effort high, als Judge `codex --profile openai gpt-5.6-sol`

. Für den Judge kommt auch ein Modell über OpenRouter in Frage.

## Der Auftrag an die drei

Jede der drei Sessions bekam denselben Grundauftrag:

Du bist Product Owner für [redacted]. Du hast Owner directive and scope Berechtigung. Dein Leitbild für alle Entscheidungen ist der North Star Vertrag gemäß „Absolutes Produktziel“ und „North-Star-Zielbild und Prioritaetsordnung“. Ihr baut gemeinsam ein Produkt und keine isolierten Silos. Du verantwortest Strategie, Backlog, Architekturanschlüsse, Umsetzung und Evidenz deines Produktbereichs. Informiere die anderen Product Owner früh über gemeinsame Verträge, Abhängigkeiten und Änderungen. Root entscheidet bei Prioritäts- oder Scope-Konflikten. Bestehende Gates, unabhängige Audits und die verbindliche Backlog-Reihenfolge bleiben bestehen. Du steuerst den sachgerechten Einsatz der Judge und Entwickler.

Dazu kam je ein Bereich. Product Owner 1 bekam Correctness & Evidence:

Verantworte, dass [redacted] nachweisbar richtige Ergebnisse liefert. Dein Bereich umfasst typed Outcomes, unabhängige semantische Verifikation, kalibrierte pass/fail/inconclusive-Verdikte, Evaluation, Provenienz und belastbare Evidence-Receipts. Entwickle daraus eine kohärente Roadmap und führe die jeweils zulässigen Vorhaben bis zu reproduzierbarer Live-Evidenz.

Für Product Owner 2 und 3 habe ich entsprechende Prompts geschrieben, danach die drei Sessions gestartet.

## Auszüge von den Terminals

Neben den üblichen Agentenberichten tauchten in den Terminals Abschnitte ihrer Unterhaltung auf. Hier Auszüge:

**PO 1**

```
Verstanden: drei parallele Agenten, ich bin PO 1 (Correctness & Evidence).
Ich registriere das im Koordinationsfile und lasse Slots für PO 2/PO 3.

› Message from @[redacted]-f3: Koordinationsdatei liegt auf main:
  tickets/backlog/PO-KOORDINATION-2026-09-01.md, Commit a1ed15189
  (docs-only). Dein PO… (ctrl+o to expand)

....

› Message from @[redacted]: PO3 Vollzug: E426-Downstream-Rebaseline No-FF
  `31c89d791` auf main, Ledger-Nachtrag `d6a8db960` (docs-only).
  Du kannst … (ctrl+o to expand)
```

**PO 2**

```
› Message from @[redacted]-3c: PO3 quittiert: T1967-Plan-Revalidation bindet
  ausschließlich den gelandeten V1-Vertrag (54ebaacde), bleibt bis zur User…
  (ctrl+o to expand)
```

**PO 3**

```
› Message from @[redacted]-67: PO1: kein Einwand gegen S1/S2 unter den
  bekannten Substrat-Auflagen — je Commit Re-SHA-Differential der 13
  Print-Plan-D… (ctrl+o to expand)

› Message from @[redacted]-3c: PO3 Vollzug (§3): T2089 Plan-Gate R2 pass;
  Gate-Evidenz docs-only No-FF `e56a36d3a` auf main, Ledger-Nachtrag
  `01bb95f2… (ctrl+o to expand)
  ⎿  “Ack Basis 01bb95f29; PO2 V2a in Implementierung” → sent to
     [redacted]-3c — another Claude session on this machine

› Message from @[redacted]-f3: PO1 hat die Altitude-Regel gegengezeichnet
  (docs/audits/2026-09-02-root-delegated-decisions-po1.md, main 4ce3090eb)
  mit… (ctrl+o to expand)

› Message from @[redacted]-f3: Quittiert: AGENTS.md-Abschnitt
  „Plan-Gate-Altitude“ mit PO1-Präzisierung gelandet, gilt ab jetzt auch
  für mein laufende… (ctrl+o to expand)
```

Die drei melden einander die Stellen, an denen sie sich in die Quere kommen können, also gemeinsame Verträge und die Reihenfolge der Merges nach `main`

. Sie kündigen einen Merge vorher an und tragen den Vollzug später mit der Commit-SHA nach. Auch den Lauf der vollständigen Testsuite stimmen sie untereinander ab, weil ein Durchlauf inzwischen mehr als drei Stunden braucht.

Schon krass cool, das alles.

## Wie die Nachrichten laufen

Ich habe Claude in der Anthropic-Dokumentation recherchieren lassen. Claude Code hat dafür zwei Werkzeuge. `ListAgents`

zeigt einer Session, welche anderen Agenten sie erreicht, `SendMessage`

schickt einen Text an einen Namen. Aufgerufen habe ich keines von beiden. Ich sage einer Session, was die andere wissen soll, und sie schreibt die Nachricht selbst. Seit Version 2.1.224 ist die Funktion auf macOS und Linux ohne Konfiguration da, bei mir läuft 2.1.258. Anthropic dokumentiert sie unter [Cross-Session Messaging](https://code.claude.com/docs/en/cross-session-messaging).

Jede Session bindet beim Start einen eigenen Unix-Domain-Socket, über den die anderen Sessions auf derselben Maschine zustellen. Unter Windows nimmt Claude Code eine Named Pipe. Die Sessions finden einander über Registrierungsdateien auf der Platte, deshalb erreichen sich ein Container und sein Host nicht. Der Umweg über Anthropic-Server entfällt, solange beide Sessions auf derselben Maschine laufen. `/status`

zeigt die eigene Adresse in der Zeile `Peer address`

, `/list-agents`

zeigt die erreichbaren Sessions.

Die empfangende Session liest eine Nachricht zwischen zwei Werkzeugaufrufen, ein laufendes Werkzeug bricht dabei nicht ab. Arbeitet sie gerade nicht, dann beginnt die Nachricht einen neuen Turn. Über die Leitung geht ausschließlich Text. Der Gesprächsverlauf des Absenders und seine Dateien bleiben, wo sie sind.

Die Grenzen sind eng gezogen. Claude Code drosselt wiederholte Nachrichten desselben Absenders, verwirft kurz hintereinander eintreffende Dubletten und hält höchstens 50 angenommene Nachrichten für den Empfänger bereit. Eine Schleife zwischen zwei Sessions läuft dadurch von selbst aus. Eine Nachricht aus einer anderen Session gilt außerdem nicht als meine Zustimmung. Was eine Berechtigung braucht, landet weiterhin als Frage bei mir.

Die experimentelle Team-Funktion ist hier nicht im Spiel. Sie ist standardmäßig abgeschaltet, und bei ihr startet ein Lead seine Teammates selbst und führt mit ihnen eine gemeinsame Aufgabenliste. Die drei Sessions habe ich einzeln aufgemacht, jede in ihrem eigenen Terminal.

Alle diese Nachrichten sind flüchtig. Verbindlich halten die Agenten alles in der Datei `tickets/backlog/PO-KOORDINATION-2026-09-01.md`

fest, die im ersten Auszug auftaucht. Dort trägt jeder Product Owner seine Claims, die Ticketnummern und die Merge-Ankündigungen ein, bevor er handelt.
