Full-Code · Orchestration Frameworksactive

Agent2Agent (A2A) Protocol

Type: full-code · Vendor: Google / Linux Foundation · Language: N/A · License: Apache-2.0 · Status: active · Status in practice: emerging · First released: 2025-04-09

Links: homepage docs repo

A2A is an open protocol that lets independent AI agents built by different vendors or frameworks discover each other and exchange tasks, messages, and results over a standard wire format.

Description. Agent2Agent (A2A) is an open protocol specification originally developed by Google Cloud and donated to the Linux Foundation in 2025. Each A2A server publishes an Agent Card describing its identity, skills, and endpoint, and clients send messages to it that the server either answers directly or turns into an asynchronous Task with a defined lifecycle. The protocol defines transport bindings over JSON-RPC, gRPC, and HTTP/REST so agents can communicate across process and vendor boundaries without sharing an internal framework.

Agent loop shape. A2A is not an agent loop itself but a request/response and task-lifecycle protocol between agents: a client agent discovers a remote agent through its Agent Card, sends a message, and the remote agent returns a direct response or creates a long-running Task whose state the client polls or streams until completion.

Primary use cases

  • cross-vendor agent interoperability
  • runtime agent discovery via Agent Cards
  • delegating tasks between enterprise agents
  • multi-agent coordination across frameworks

Key concepts

  • Agent Card agent-capability-manifest (docs)A JSON metadata document published by an A2A server at a well-known URI describing its identity, capabilities, skills, service endpoint, and authentication requirements so clients can discover and bind to it.
  • Task async-tool-handle (docs)The fundamental unit of work, identified by a unique id and stateful through a defined lifecycle (submitted, working, input-required, completed, failed, canceled, rejected), with results stored as artifacts.
  • Message and Part inter-agent-communication (docs)A communication turn between client and agent, composed of typed Parts (text, file, structured data), exchanged via message/send or the streaming message/stream method.
  • Transport bindings streaming-typed-events (docs)A2A is async-first and reuses HTTP, JSON-RPC 2.0, gRPC, and Server-Sent Events so streaming updates and long-running tasks ride on standard infrastructure.

Patterns this full-code implements —

Neighbourhood

Click any neighbour to follow the lineage. Scroll to zoom, drag to pan.