🌐 English | 中文 | 日本語 | Deutsch
- 📋 Overview
- 🚀 Getting Started
- 📚 Resources
- 💻 Implementations
- 🎴 AgentCard
- 🤝 Community Implementations
- 👥 Community
- 🤝 Contributing
A2A (Agent2Agent) is an open protocol from Google enabling AI agents to communicate securely and collaborate. It breaks down silos between isolated agent systems, allowing for complex cross-application automation.
Key Features:
- 🎯 Simple: Uses HTTP, JSON-RPC, SSE
- 🏢 Enterprise Ready: Focuses on security and privacy
- ⚡ Async First: Handles long-running tasks
- 🔄 Modality Agnostic: Supports text, files, forms, streams
- 🔒 Opaque Execution: Agents interact without sharing internal logic
Official Links:
- 🌐 Website: google.github.io/A2A
- 📦 GitHub: github.com/google/A2A
-
Learn the Basics
- 📖 Read the technical documentation
- 🎥 Watch the demo video
-
Run Samples
- 📥 Clone the official repo
- 📝 Follow instructions in
/samples
-
Build Your Own
- 🛠️ Use official libraries or adapt samples
- 🏗️ Start with a basic A2A agent or client
- 🇺🇸 A2A TypeScript Guide - A comprehensive guide for implementing A2A in TypeScript
- 🇺🇸 A2A vs MCP - Comparison between A2A and Model Context Protocol
- 🇺🇸 Understanding A2A Protocol - Deep dive into A2A protocol concepts
- 🇺🇸 A2A Sample Methods and JSON Responses - Detailed examples of A2A methods and responses
- 🇺🇸 Python A2A: A powerful and easy-to-use library for implementing Google's Agent-to-Agent (A2A) protocol - Link
- 🇨🇳 A2A 协议介绍 - A2A 协议的中文介绍
- 📄 A Survey of AI Agent Protocols - Academic paper surveying existing LLM agent communication protocols (including the category A2A falls into), classifying them, analyzing performance, and discussing future challenges.
- 🐍 Common Library: Core HTTP, JSON-RPC, SSE handling - Link
- 🐍 Host (Client): Command-line client example - Link
- 🐍 Host (Agent): Orchestrator agent delegating to A2A agents - Link
- 🚀 Server Library: Core server implementation - Link
- 🚀 Client Library: Client implementation - Link
- 🚀 Host (Client): Command-line client example - Link
- 🚀 Demo Web App: Interactive web interface for A2A - Link
Name | Author | Description | Stars |
---|---|---|---|
a2ajava | @vishalmysore | A pure Java implementation of Google's A2A protocol for Spring Boot applications, featuring both client and server implementations | |
legion-a2a | @TheRaLabs | A TypeScript implementation of the A2A protocol with a focus on modularity and extensibility | |
trpc-a2a-go | @trpc-group | Go A2A implementation by the tRPC team featuring full client/server support, in-memory task management, streaming responses, session management, multiple auth methods (JWT, API Key, OAuth2), and comprehensive examples | |
jira-a2a | @tuannvm | The Jira A2A system is a DevOps workflow automation platform using the tRPC-A2A-Go framework. It consists of independent Go agents that communicate via A2A messages. | |
a2a-go | @a2aserver | A Go library for building A2A servers, with example implementations | |
a2a-rs | @EmilLindfors | An idiomatic Rust implementation following hexagonal architecture principles | |
a2a_min | @pcingola | A minimalistic Python SDK for A2A communication | |
a2adotnet | @azixaka | A C#/.NET implementation of the A2A protocol | |
nestjs-a2a | @thestupd | A module for integrating the A2A protocol into NestJS applications | |
python-a2a | @themanojdesai | An easy-to-use Python library for implementing the A2A protocol | |
Aira | @IhateCreatingUserNames2 | An A2A network implementation for hosting, registering, discovering, and interacting with agents | |
Cognisphere | @IhateCreatingUserNames2 | An AI agent development framework built on Google's ADK, facilitating agent creation potentially for A2A networks | |
a2a-server | @chrishayuk | A lightweight A2A python implementation | |
a2a-cli | @chrishayuk | A command-line client for the A2A | |
A2A Test Suit | @robert-at-pretension-io | A2A Test Suite | |
Grasp | @adcentury | A Self-hosted Browser Using Agent with built-in MCP and A2A support | |
swissknife | @daltonnyx | A multi-agent chat application with MCP support, aiming to expose agents via the A2A protocol and connect to remote A2A agents as a client | |
artinet-sdk | @the-artinet-project | A JS/TS SDK for the Agent2Agent Protocol with a focus on developer experience and comprehensive features |
- 🐍 LangGraph: Currency conversion (Features: Tools, Streaming, Multi-turn) - Link
- 🐍 CrewAI: Image generation (Features: Non-textual Artifacts (Files)) - Link
- 🐍 Google ADK: Expense reimbursement (Features: Multi-turn, Forms (DataPart)) - Link
- 🐍 Python A2A: A powerful and easy-to-use library for implementing Google's Agent-to-Agent (A2A) protocol - Link
- 🚀 Genkit: Movie info / Code generation (Features: Tools, Artifacts (Files), Async) - Link
Name | Author | Description | Stars |
---|---|---|---|
a2a-agent-coder | @sing1ee | A Coder Agent implementation with A2A Server and Client | |
agentic-trading | @kweinmeister | A sample application demonstrating Google ADK and A2A interoperability for trading automation | |
python-a2a-tutorial | @sing1ee | A comprehensive tutorial for implementing A2A in Python with practical examples |
Contributions are welcome! Please read the contributing guidelines first.