explaingit

a2aproject/a2a

📈 Trending23,844ShellAudience · developerComplexity · 4/5ActiveLicenseSetup · easy

TLDR

A standard protocol that lets AI agents built by different companies talk to each other and work together, like a common language for AI systems.

Mindmap

mindmap
  root((A2A Protocol))
    What it does
      Agents discover each other
      Exchange data safely
      Coordinate long tasks
    How it works
      JSON-RPC over HTTP
      Agent Cards describe capabilities
      Real-time and async modes
    Use cases
      Multi-vendor AI teams
      Research and scheduling agents
      Enterprise automation
    Tech stack
      Python SDK
      Go SDK
      JavaScript SDK
    Key features
      Built-in security
      No vendor lock-in
      Framework agnostic

Things people build with this

USE CASE 1

Build a multi-agent system where a research agent, scheduling agent, and writing agent collaborate on complex tasks without knowing each other's internal code.

USE CASE 2

Connect AI agents from different vendors (e.g., one from Company A, one from Company B) so they can work together in a single workflow.

USE CASE 3

Create enterprise automation where specialized agents discover each other's capabilities and negotiate data formats automatically.

Tech stack

JSON-RPC 2.0HTTPPythonGoJavaScriptJava.NET

Getting it running

Difficulty · easy Time to first run · 5min
Open source protocol allowing free use, modification, and distribution for building interoperable AI agent systems.

In plain English

Agent2Agent (A2A) is an open communication protocol that lets AI agents built by different companies, using different frameworks, and running on separate servers talk to each other and collaborate. Think of it like a common language for AI agents: without a shared standard, an AI agent built with one toolkit cannot work with an agent built with another, even if they could theoretically complement each other. The core challenge A2A addresses is that modern AI systems often need multiple specialized agents working together, one agent might be good at researching information, another at scheduling, another at writing. A2A gives these agents a standard way to discover each other's capabilities, negotiate what format they'll exchange data in (text, files, forms, etc.), and coordinate on long-running tasks, all without any agent needing to expose its internal workings or proprietary logic. Technically, A2A uses JSON-RPC 2.0 over HTTP as its transport layer, supports both real-time streaming and asynchronous communication, and includes a concept called "Agent Cards", structured descriptions that agents publish so other agents can discover what they can do. It is designed for enterprise use with security and authentication built in. You would use A2A when building multi-agent AI systems where different agents, potentially from different vendors, need to collaborate. SDKs are available in Python, Go, JavaScript, Java, and .NET.

Copy-paste prompts

Prompt 1
How do I set up two AI agents to communicate using the A2A protocol? Show me a minimal Python example.
Prompt 2
What is an Agent Card in A2A and how do I publish one so other agents can discover my agent's capabilities?
Prompt 3
I have agents built in different languages (Python and Go). How does A2A let them work together without rewriting either one?
Prompt 4
Show me how to handle authentication and security when connecting multiple AI agents over A2A.
Prompt 5
How do I make my AI agent support both real-time streaming and asynchronous communication using A2A?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.