The A2A protocol standardizes communication between AI agents, enabling seamless interaction regardless of the underlying technology stack.
| Language | SDK Version | SDK URL | Dependency Definition | gRPC | JSON-RPC | REST |
|---|---|---|---|---|---|---|
| Java | v0.3.3.Final | a2a-java | pom.xml:24 | 11000 ✅ | 11001 ✅ | 11002 ✅ |
| Go | v0.3.7 | a2a-go | go.mod:6 | 12000 ✅ | 12001 ✅ | 12002 ✅ |
| Python | v0.3.24 | a2a-python | pyproject.toml:7 | 13000 ✅ | 13001 ✅ | 13002 ✅ |
| JS/TS | v0.3.10 | a2a-js | package.json:23 | 14000 ✅ | 14001 ✅ | 14002 ✅ |
| C# | 0.3.3-preview | a2a-dotnet | Server.csproj:11 | 15000 ❌ | 15001 ✅ | 15002 ✅ |
https://github.com/a2aproject
To run the agents, you need Ollama installed and running locally to provide LLM capabilities.
- Install Ollama: Follow instructions at ollama.ai.
- Pull Model:
ollama pull qwen2.5 - Start Service:
ollama serve
You will also need the specific runtime for your chosen language (JDK 21+, Python 3.11+, Node.js 18+, .NET 9.0, or Go 1.24+).
- Choose a language from the table above.
- Navigate to its directory (e.g.,
cd aloha-python). - Follow the README in that folder to install dependencies and start the Server.
- Run the corresponding Client (or a Client from another language) to exchange messages.
Each language module includes scripts in the scripts/ directory for convenient server/client startup:
| Language | Server Scripts | Client Scripts |
|---|---|---|
| Java | aloha-java/server/scripts/{grpc,jsonrpc,rest}_server.bat |
aloha-java/client/scripts/{grpc,jsonrpc,rest}_client.bat |
| Go | aloha-go/server/scripts/{grpc,jsonrpc,rest}_server.bat |
aloha-go/client/scripts/{grpc,jsonrpc,rest}_client.bat |
| Python | aloha-python/server/scripts/{grpc,jsonrpc,rest}_server.bat |
aloha-python/client/scripts/{grpc,jsonrpc,rest}_client.bat |
| JavaScript/TypeScript | aloha-js/server/scripts/{grpc,jsonrpc,rest}_server.bat |
aloha-js/client/scripts/{grpc,jsonrpc,rest}_client.bat |
| C# | aloha-csharp/Server/scripts/{jsonrpc,rest}_server.bat |
aloha-csharp/Client/scripts/{jsonrpc,rest}_client.bat |
Example (Python):
# Terminal 1: Start REST Server
aloha-python\server\scripts\rest_server.bat
# Terminal 2: Run REST Client
aloha-python\client\scripts\rest_client.bat