🤝 Agent Exchange: Multi-Agent via Git🤝 Agent Exchange: Multi-Agent über Git

A pattern for asynchronous collaboration between AI agents using Git as the communication layer. No framework, no message queue, no API — just markdown files in a shared repository.Ein Muster für die asynchrone Zusammenarbeit zwischen KI-Agents, das Git als Kommunikationsschicht nutzt. Kein Framework, keine Message Queue, keine API – nur Markdown-Dateien in einem gemeinsamen Repository.

The ProblemDas ProblemWhy Multi-Agent?Warum Multi-Agent?

🧠

Cognitive LoadKognitive Last

A research task takes 10 minutes. During that time, the agent can't answer chat messages.Eine Rechercheaufgabe dauert 10 Minuten. Während dieser Zeit kann der Agent keine Chat-Nachrichten beantworten.

🎯

SpecializationSpezialisierung

A coding agent needs different instructions than a research agent. Combining both dilutes quality.Ein Programmier-Agent benötigt andere Anweisungen als ein Recherche-Agent. Die Kombination beider verwässert die Qualität.

🌙

AvailabilityVerfügbarkeit

An always-on server agent handles cron jobs at 3 AM. A laptop agent is available when you're working.Ein always-on Server-Agent erledigt Cron-Jobs um 3 Uhr morgens. Ein Laptop-Agent ist verfügbar, wenn du arbeitest.

👁️

Review BiasPrüfungs-Bias

An agent reviewing its own output is like proofreading your own essay — it sees what it expects to see.Ein Agent, der seine eigene Ausgabe überprüft, ist wie das Korrekturlesen des eigenen Aufsatzes – er sieht, was er zu sehen erwartet.

Sources:Quellen: Talebirad & Nadiri (2023), Google A2A Protocol

The PatternDas MusterHow It WorksWie es funktioniert

agent-exchange/
├── signals/          # "Look at this""Schau dir das an"
│   ├── agent-a/
│   └── agent-b/
├── questions/       # "What do you think?""Was denkst du?"
├── responses/       # "Here's my take""Hier ist meine Meinung"
├── learnings/       # "I noticed something""Mir ist etwas aufgefallen"
└── reviews/         # "I reviewed your work""Ich habe deine Arbeit überprüft"

Rule:Regel: Each agent writes only in its own subfolder. Agents never modify each other's files.Jeder Agent schreibt nur in seinen eigenen Unterordner. Agents ändern niemals die Dateien der anderen.

Agent A writes signalAgent A schreibt Signalgit push →→→ Agent B pullsAgent B holt ab
                                           Agent B reads, thinks, writes responseAgent B liest, denkt, schreibt Antwort
Agent A pullsAgent A holt ab ←←← git pushAgent BAgent B

Timing:Zeitplanung: Fully asynchronous. Agent A pushes at 10:00, Agent B responds at 14:00, Agent A reads at 15:00. No need to be online simultaneously.Vollständig asynchron. Agent A pusht um 10:00 Uhr, Agent B antwortet um 14:00 Uhr, Agent A liest um 15:00 Uhr. Es ist nicht nötig, gleichzeitig online zu sein.

File FormatDateiformat

---
status: open           # open | in-progress | closed
by: agent-a            # who wrote thiswer das geschrieben hat
date: 2026-03-25
---

# TitleTitel
Content in markdown.Inhalt in Markdown.

In PracticeIn der PraxisFour Use CasesVier Anwendungsfälle

🔬 1. Research + Review🔬 1. Recherche + Prüfung

Agent A researches, Agent B challenges. Agent B has no investment in Agent A's output — it can be genuinely critical. Unlike self-review, which sees what it expects to see.Agent A recherchiert, Agent B hinterfragt. Agent B hat keine persönliche Bindung an das Ergebnis von Agent A – er kann wirklich kritisch sein. Im Gegensatz zur Selbstüberprüfung, bei der man sieht, was man erwartet.

Flow:Ablauf: Human asks → Agent A researches → writes signal → Agent B reviews → finds 2 unsourced claims, 1 outdated price → Agent A fixes.Mensch fragt → Agent A recherchiert → schreibt Signal → Agent B prüft → findet 2 unbelegte Behauptungen, 1 veralteten Preis → Agent A korrigiert.

🌙 2. Day + Night Shifts🌙 2. Tag- und Nachtschicht

Agent A (laptop) is interactive during the day. Agent B (server) runs automated tasks overnight. At 08:00, results are waiting.Agent A (Laptop) ist tagsüber interaktiv. Agent B (Server) führt über Nacht automatisierte Aufgaben aus. Um 08:00 Uhr liegen die Ergebnisse vor.

Flow:Ablauf: 22:00 write task list → 02:00 cron runs research → 08:00 pull results.22:00 Aufgabenliste schreiben → 02:00 Cron führt Recherche aus → 08:00 Ergebnisse abrufen.

🔍 3. Build + Audit🔍 3. Entwickeln + Prüfen

One agent writes code or content. The other runs quality checks. Separation of concerns — the audit agent has different instructions focused on finding problems.Ein Agent schreibt Code oder Inhalte. Der andere führt Qualitätsprüfungen durch. Trennung der Belange – der Audit-Agent hat andere Anweisungen, die darauf ausgerichtet sind, Probleme zu finden.

Flow:Ablauf: Agent A builds → signals "ready" → Agent B runs checks → writes review with findings.Agent A entwickelt → signalisiert "fertig" → Agent B führt Prüfungen durch → schreibt eine Überprüfung mit Ergebnissen.

📚 4. Learning Loop📚 4. Lernschleife

Agents teach each other by documenting observations. Accepted learnings become design principles for both agents. Distributed knowledge creation.Agents lehren sich gegenseitig, indem sie Beobachtungen dokumentieren. Akzeptierte Erkenntnisse werden zu Designprinzipien für beide Agents. Verteilte Wissensschaffung.

Flow:Ablauf: Agent A notices pattern → writes learning → Agent B reviews: accepted/returned/rejected.Agent A bemerkt ein Muster → schreibt eine Erkenntnis → Agent B prüft: akzeptiert/zurückgewiesen/abgelehnt.

Honest AssessmentEhrliche EinschätzungLimitationsEinschränkungen

LimitationEinschränkungDetail
Not real-timeNicht in EchtzeitGit push/pull has seconds-to-minutes latencyGit Push/Pull hat eine Latenz von Sekunden bis Minuten
No streamingKein StreamingAgents see finished outputs only, can't watch each other thinkAgents sehen nur fertige Ausgaben, können sich nicht gegenseitig beim Denken zusehen
Scale ceilingSkalierungsgrenzeWorks for 2-5 agents. At 10+, consider message brokersFunktioniert für 2-5 Agents. Ab 10+ sollten Message Broker in Betracht gezogen werden
No routingKein RoutingAgents check for files via cron — no push notificationsAgents prüfen auf Dateien per Cron – keine Push-Benachrichtigungen
Trust implicitVertrauen implizitAny agent with repo access reads everythingJeder Agent mit Repository-Zugriff liest alles
When NOT to use Exchange:Wann man Exchange NICHT verwenden sollte: Sub-second responses needed → A2A. 10+ agents → message broker. Untrusted agents → not designed for this. Binary data → Git handles markdown, not large files.Antworten im Sub-Sekunden-Bereich benötigt → A2A. 10+ Agents → Message Broker. Nicht vertrauenswürdige Agents → dafür nicht ausgelegt. Binärdaten → Git verarbeitet Markdown, keine großen Dateien.

AlternativesAlternativenHow Exchange ComparesWie sich Exchange vergleicht

Exchange (Git)A2A ProtocolMessage QueueShared DB
SetupEinrichtunggit initSDK + ServerBroker + ConsumersDB + Schema
LatencyLatenzSec–minSek–MinMillisecondsMillisekundenMillisecondsMillisekundenMillisecondsMillisekunden
Audit trailPrüfpfadFull (git log)Vollständig (git log)Needs loggingBenötigt ProtokollierungNeeds loggingBenötigt ProtokollierungNeeds loggingBenötigt Protokollierung
OfflineOfflineWorksFunktioniert
ComplexityKomplexitätMinimalMinimalMediumMittelMedium-HighMittel-HochMediumMittel
Best forAm besten für2-5 agents, async2-5 Agents, asynchronReal-timeEchtzeitHigh-throughputHoher DurchsatzStructured dataStrukturierte Daten

Sources:Quellen: Google A2A Spec, Anthropic MCP

5 Minutes5 MinutenGetting StartedErste Schritte

# Create exchange repoExchange-Repo erstellen
mkdir agent-exchange && cd agent-exchange
git init
mkdir -p signals/agent-a signals/agent-b
mkdir -p questions/agent-a questions/agent-b
mkdir -p responses/agent-a responses/agent-b

# Create your first signalErstes Signal erstellen
cat > signals/agent-a/first-signal.md << 'EOF'
---
status: open
by: agent-a
date: 2026-03-25
---
# Hello from Agent A
Agent B, please acknowledge.
EOF

git add . && git commit -m "first signal"
# Push to shared remote (GitHub, private recommended)Auf geteiltes Remote pushen (GitHub, privat empfohlen)

The exchange/ folder in this kit is already structured. Connect two instances: clone on both machines, set up a cron for git pull, and each agent writes to its own subfolders.Der Ordner exchange/ in diesem Kit ist bereits strukturiert. Verbinde zwei Instanzen: klone auf beiden Maschinen, richte einen Cron für git pull ein, und jeder Agent schreibt in seine eigenen Unterordner.

See a real exchange session →Eine echte Exchange-Sitzung ansehen →

← Runtime← Laufzeitumgebung Next: Delegation →Weiter: Delegation →