1. Projektübersicht
A2A (Agent2Agent) ist ein offenes, anbieterneutrales Protokoll, das es KI-Agenten, die mit verschiedenen Frameworks, von verschiedenen Teams und Unternehmen entwickelt wurden, ermöglicht, einander zu entdecken und direkt zu kommunizieren – und damit das Problem löst, dass Agenten, die mit LangGraph, CrewAI, Semantic Kernel oder einem anderen Stack gebaut wurden, sonst keine gemeinsame Möglichkeit haben, miteinander zu sprechen.
2. Hintergrund & Positionierung
Da KI-Agenten sich stark verbreitet haben, neigt jedes Framework und jeder Anbieter dazu, eine eigene geschlossene Methode für die Interaktion von Agenten zu entwickeln, was zu Silos führt: Ein Agent, der auf einer Plattform basiert, kann im Allgemeinen keine Arbeit an einen Agenten delegieren, der auf einer anderen basiert, oder Ergebnisse von ihm erhalten. A2A wurde entwickelt, um diese Silos aufzubrechen, indem es Agenten ein gemeinsames, offenes Protokoll für die Zusammenarbeit bietet – das es ihnen ermöglicht, Informationen auszutauschen und Aufgaben „als Agenten“ zu koordinieren (autonome Peers mit eigenem Zustand, eigenem Gedächtnis und eigener Argumentation), anstatt auf einfache Werkzeuge reduziert zu werden, die über eine feste API aufgerufen werden.
Die Kernmission des Projekts, wie in seiner Dokumentation beschrieben, ist es, komplexe Multi-Agenten-Kollaboration zu ermöglichen und offene Standards dafür zu fördern, wie Agenten interoperieren. Agenten können zusammenarbeiten, ohne internen Speicher, proprietäre Logik oder spezifische Werkzeugimplementierungen teilen zu müssen – jeder Agent legt nur das offen, was er über eine standardisierte „Agent Card“ offenlegen möchte, und der Rest seiner Interna bleibt undurchsichtig.
A2A ist bewusst komplementär zum Model Context Protocol (MCP) und nicht in Konkurrenz dazu. MCP standardisiert, wie ein einzelner Agent sich mit Werkzeugen, Datenquellen und APIs verbindet. A2A standardisiert, wie unabhängige Agenten einander über Organisations- und Framework-Grenzen hinweg entdecken und kommunizieren. Ein System, das mit beiden aufgebaut ist, nutzt MCP, um einem einzelnen Agenten seine Werkzeuge zu geben, und A2A, damit dieser Agent mit anderen Agenten zusammenarbeiten kann.
Das Protokoll wird als Linux-Foundation-Projekt verwaltet, mit einem technischen Lenkungsausschuss, dessen Mitglieder von AWS, Cisco, Google, IBM Research, Microsoft, Salesforce, SAP und ServiceNow kommen, was seine Absicht widerspiegelt, ein wirklich branchenübergreifender Standard zu sein und nicht das Produkt eines einzelnen Anbieters.
3. Funktionskategorien
📜 Protokollspezifikation
Die formale Definition der Nachrichtenformate, Transporte und Verhaltensweisen von A2A, gepflegt unter /specification im Repository.
- JSON-RPC 2.0 über HTTP(S) als Drahtformat
- Agent-Card-Schema für die Fähigkeitserkennung
- Task-Lebenszyklus- und Zustandsübergangsregeln
- Nachrichtenformate für Streaming und Push-Benachrichtigungen
- Ein abgestufter Erweiterungsförderungsprozess zur schrittweisen Hinzufügung neuer Fähigkeiten
Zweck: Implementierern eine einzige, versionierte Quelle der Wahrheit bieten, damit unabhängige A2A-Implementierungen interoperabel bleiben.
🧰 Sprach-SDKs
Offizielle Client- und Server-Bibliotheken, damit Entwickler das Drahtprotokoll nicht von Hand implementieren müssen.
- Python-SDK (
a2a-sdk) - JavaScript/TypeScript-SDK (
@a2a-js/sdk) - Go-SDK (
a2a-go) - Java-SDK
- .NET / C#-SDK
- Rust-SDK
Zweck: Teams ermöglichen, A2A in der Sprache zu übernehmen, die ihr Agenten-Stack bereits verwendet, ohne die Protokollbehandlung selbst zu entwickeln.
📚 Dokumentation & Anleitungen
Konzeptionelles und Referenzmaterial, das auf der Dokumentationswebsite des Projekts veröffentlicht wird und Kernkonzepte, Task-Lebenszyklus, Agentenerkennung, Enterprise-Funktionen, Streaming und Multi-Tenancy abdeckt.
- Erste-Schritte-Anleitungen pro SDK
- Kernkonzepte (Agent Card, Task, Message, Artifact)
- Enterprise-Bereitschaftsleitfaden (Authentifizierung, Beobachtbarkeit)
- Protokollerweiterungsmechanismus
Zweck: Sowohl Protokollimplementierern als auch Anwendungsentwicklern helfen, die A2A-Konzepte zu verstehen und korrekt anzuwenden.
🧪 Beispiele & Referenzimplementierungen
Beispielagenten und Client/Server-Paare, die im begleitenden Repository a2a-samples gepflegt werden und reale Interoperabilitätsszenarien über Frameworks hinweg demonstrieren.
Zweck: Übernehmern funktionierenden, ausführbaren Referenzcode bieten, anstatt nur mit der Spezifikation zu starten.
4. Hauptmerkmale
- Standardisierte Agent-zu-Agent-Nachrichtenübermittlung – Die Kommunikation läuft über JSON-RPC 2.0 auf HTTP(S), einen weitgehend unterstützten, gut verstandenen Transport, statt über ein maßgeschneidertes Protokoll.
- Agent Cards zur Erkennung – Jeder Agent veröffentlicht eine maschinenlesbare Karte, die seine Fähigkeiten beschreibt, sodass andere Agenten (oder Orchestratoren) ihn ohne Out-of-Band-Koordination finden und korrekt aufrufen können.
- Mehrere Interaktionsmodi – Unterstützt einfache synchrone Anfrage/Antwort, Server-Sent Events (SSE) zum Streamen langlaufender Antworten und asynchrone Push-Benachrichtigungen für Tasks, die eine einzelne Verbindung überdauern.
- Reichhaltiger Inhaltsaustausch – Nachrichten können Klartext, Dateien und strukturierte JSON-Nutzlasten enthalten, nicht nur Chat-ähnliche Zeichenfolgen.
- Undurchsichtigkeit by Design – Agenten arbeiten bei Aufgaben zusammen, ohne internen Speicher, Werkzeuge oder proprietäre Logik offenzulegen, was wichtig ist, wenn die beteiligten Agenten zu verschiedenen Organisationen gehören.
- Mehrsprachige, anbieterübergreifende Governance – Offizielle SDKs decken sechs Sprachen ab, und das Protokoll selbst wird von einem unternehmensübergreifenden technischen Lenkungsausschuss unter der Linux Foundation gesteuert, was das Risiko der Bindung an einen einzelnen Anbieter reduziert.
5. Anwendungsfälle nach Rolle
- Allgemeine Entwickler: Bauen Sie einen Agenten in Ihrem bevorzugten Framework und machen Sie ihn über eine Agent Card verfügbar, damit er von anderen Agenten oder Orchestrierungsebenen entdeckt und aufgerufen werden kann, ohne für jeden Gegenpart benutzerdefinierten Integrationscode zu schreiben.
- Plattform-/Integrationsingenieure: Nutzen Sie A2A als Interoperabilitätsschicht zwischen internen Agenten und Agenten von Drittanbietern oder Partnern, wobei die interne Implementierung jeder Seite privat bleibt, während die Delegierung von Teilaufgaben weiterhin ermöglicht wird.
- Projektmanager/technische Leiter, die Multi-Agenten-Architekturen evaluieren: Nutzen Sie den Task-Lebenszyklus und das Streaming-Modell von A2A, um zu planen, wie langlaufende, mehrstufige Agenten-Workflows über Teams oder Anbieter hinweg koordiniert und überwacht werden.
6. Erste Schritte
Finden Sie, was Sie brauchen – Beginnen Sie mit der Protokolldokumentationswebsite und dem Spezifikationsverzeichnis im Repository, um die Kernkonzepte (Agent Card, Task, Message) zu verstehen, bevor Sie ein SDK auswählen:
https://a2a-protocol.org/latest/
Installieren / integrieren – Wählen Sie das SDK, das zu Ihrem Stack passt:
pip install a2a-sdk # Python
npm install @a2a-js/sdk # JavaScript / TypeScript
go get github.com/a2aproject/a2a-go # Go
Dann erkunden Sie ausführbare Beispiele im begleitenden Beispiele-Repository:
https://github.com/a2aproject/a2a-samples
Beitragen – Melden Sie Probleme, beteiligen Sie sich an Diskussionen oder eröffnen Sie einen Pull Request gegen die Spezifikation oder ein SDK, gemäß der CONTRIBUTING.md des Projekts:
https://github.com/a2aproject/A2A/blob/main/CONTRIBUTING.md
7. Projektstruktur
A2A/
├── specification/ # formale A2A-Protokollspezifikation (Quelle der Wahrheit)
├── docs/ # Inhalte und Anleitungen der Dokumentationswebsite
├── scripts/ # Dienstprogramm- und Wartungsskripte
├── CONTRIBUTING.md # Richtlinien für Beiträge
├── LICENSE # Apache-2.0-Lizenz
└── README.md
Wichtige Verzeichnisse: specification/ definiert den versionierten Protokollvertrag, dem alle SDKs und Implementierungen folgen müssen; docs/ betreibt die öffentliche Dokumentationswebsite unter a2a-protocol.org. Sprach-SDKs und Beispielagenten werden in separaten begleitenden Repositories (z. B. a2a-python, a2a-js, a2a-samples) unter derselben GitHub-Organisation a2aproject gepflegt.
8. Verwandtes Ökosystem
- Model Context Protocol (MCP) – Der komplementäre Standard zum Verbinden eines einzelnen Agenten mit seinen Werkzeugen und Datenquellen; A2A und MCP werden häufig gemeinsam im selben System verwendet.
- Agenten-Frameworks – LangGraph, CrewAI, Semantic Kernel und ähnliche Frameworks sind die Arten von Systemen, die A2A interoperabel machen soll.
- Linux Foundation – Beherbergt und verwaltet das Projekt, mit einem Multi-Unternehmens-Technischen-Lenkungsausschuss.
- DeepLearning.AI – Hat einen Bildungskurs veröffentlicht, der das A2A-Protokoll abdeckt.
a2a-samples– Begleitendes Repository mit ausführbaren Beispielagenten und -clients in unterstützten Sprachen.
9. Lizenz
✅ Frei zur Nutzung, Änderung und Verbreitung, einschließlich in kommerziellen Produkten, unter der Apache-Lizenz 2.0.
✅ Patentgewährung enthalten, wie bei allen unter Apache-2.0 lizenzierten Projekten.
✅ Beiträge werden über GitHub Issues, Discussions und Pull Requests angenommen.
❌ Es wird keine Garantie gewährt; die Software wird „wie besehen“ verteilt.
ℹ️ Weitergegebene oder modifizierte Versionen müssen das ursprüngliche Urheberrecht, die Lizenz und alle NOTICE-Datei-Attributionen gemäß Apache-2.0 beibehalten.
10. FAQ
F: Wie unterscheidet sich A2A von MCP?
A: MCP standardisiert, wie ein Agent sich mit seinen eigenen Werkzeugen und Datenquellen verbindet. A2A standardisiert, wie unabhängige Agenten einander entdecken und miteinander kommunizieren. Viele Systeme verwenden beide zusammen.
F: Müssen alle Agenten mit demselben Framework gebaut werden, um A2A zu verwenden?
A: Nein – das ist genau das Kernproblem, das A2A löst. Agenten, die mit verschiedenen Frameworks (LangGraph, CrewAI, Semantic Kernel, benutzerdefinierte Stacks usw.) gebaut wurden, können interoperieren, solange jeder eine A2A-konforme Agent Card und einen Endpunkt bereitstellt.
F: Welchen Transport verwendet A2A?
A: JSON-RPC 2.0 über HTTP(S), mit Unterstützung für Server-Sent Events (SSE) zum Streamen und asynchrone Push-Benachrichtigungen für langlaufende Tasks.
F: Welche Sprachen haben offizielle SDKs?
A: Python, JavaScript/TypeScript, Go, Java, .NET/C# und Rust.
F: Wo kann ich ein funktionierendes Beispiel sehen, bevor ich A2A in meinen eigenen Agenten integriere?
A: Das Repository a2a-samples (https://github.com/a2aproject/a2a-samples) enthält ausführbare Referenzagenten und -clients.
11. Schnellzugriff
- Repository: https://github.com/a2aproject/A2A
- Offizielle Dokumentation: https://a2a-protocol.org/latest/
- Leitfaden für Beiträge: https://github.com/a2aproject/A2A/blob/main/CONTRIBUTING.md
- Beispiele-Repository: https://github.com/a2aproject/a2a-samples
12. Zusammenfassung
A2A gibt KI-Agenten eine gemeinsame, offene Sprache zum Entdecken und Zusammenarbeiten über Frameworks, Anbieter und Organisationen hinweg und schließt damit eine Lücke, die frameworkspezifische Werkzeuge allein nicht schließen können. Es eignet sich am besten für Teams, die Multi-Agenten-Systeme bauen, die mit Agenten interoperieren müssen, die sie nicht kontrollieren – interne Plattformteams, Integrationsingenieure und alle, die Agentenarchitekturen entwerfen, die mehr als einen Anbieter oder Stack umfassen.