🧩 The Problem: Siloed Agents
0:00Different teams inside a company have all gone and built their own AI agents — marketing has one, finance has one, supply chain has one — each in its own project with its own files. The problem: none of them talk to each other efficiently. To fix that, there's a protocol called A2A (Agent-to-Agent), which Google built and open-sourced last year. It gives every agent a common language, so it doesn't matter what each one was built with — marketing could use the ADK (Agent Development Kit) while supply chain used LangChain, and they can still talk to each other.
That agent-to-agent part has been working for a while. What shipped this week is the A2A CLI, and it changes who can join the conversation.
🆕 What the CLI Adds
0:59The A2A CLI (a2a) is the official command-line client for A2A agents, maintained by the A2A Project Team. Its tagline sums it up: "discover, message, and manage A2A agents from your terminal." Before this week, if you wanted a non-agent — you at a terminal, an overnight script, or your coding assistant — to talk to an agent, you'd be writing that client yourself.
Alongside the CLI, the team shipped an agent skill — a bundled skill descriptor that lets Antigravity, Claude Code, or whichever coding assistant you use do the talking for you, no custom plugins per harness.
🔀 Three Things That Talk to an Agent
2:04Surya breaks the audience into three categories, and the CLI serves two of them. The first is another AI agent — marketing agent talking to supply chain agent. That's a few lines of code inside the individual agents, and the CLI doesn't change it at all; that's not what it's for.
The second is something that isn't an agent — a tool or coding assistant that knows nothing about A2A. Before, you'd have to build A2A support into that specific thing; now you run one command. The third is you, a script, or an overnight job: before this you wrote a client, now it's one line. That's the whole value proposition — a readymade client for everything that isn't already an A2A agent.
🛠️ The Demo Setup & Install
2:48The setup is two ADK agents running on Surya's laptop — a marketing agent and a supply chain agent — both made A2A-compliant, with A2A already established between them. The CLI lives in the A2A project itself and installs like any modern tool:
# Homebrew (macOS / Linux)
brew tap a2aproject/a2a-cli https://github.com/a2aproject/a2a-cli
brew install a2a
# WinGet (Windows)
winget install a2aproject.a2acli
# From source
go install github.com/a2aproject/a2a-cli@latest
Then the usage is three verbs: a2a card get <url> to fetch an agent's card, a2a send -a <url> "message" to message it and wait for the result, and a2a send -a <url> --stream to stream events as they arrive.
🗣️ Agents Talking to Each Other
4:21First, the agents are tested individually. Ask the supply chain agent "how many trail jackets do we have, and what's the lead time?" and it queries inventory and returns a simple response. Ask the marketing agent which channels work best for a Q4 outdoor-gear campaign, and it works from marketing data alone.
Then the interesting one: a question that requires the marketing agent to work with the supply chain agent. The traces show exactly what happens — the marketing agent makes its LLM call, invokes the A2A client to request the supply chain agent, and combines the result into the response. That works because both agents are A2A-compliant and can discover each other's capabilities via their agent cards.
💻 The CLI from Antigravity
6:10Now the CLI comes in. Surya opens a terminal inside Antigravity, installs the agent skill (selecting Claude Code as the harness, via symlink), and can then talk to an A2A agent directly. He points it at the supply chain agent on localhost:8001 and asks what it can do — the CLI inspects the agent card, reports "this is a supply chain agent," and executes the command. Before the CLI, this required writing an A2A-based SDK yourself.
localhost:8002 and asks it to plan a Q4 trail-jacket campaign — which triggers the marketing agent to make an A2A tool call to the supply chain agent, then return a combined response. You're talking to an agent, which talks to another agent, from inside a coding assistant that is itself an agent.🎯 Should You Use It This Week?
9:37Surya's answer is yes — install it, point it at an agent, and show your team what this looks like. The install is one download, and the repository ships a set of worked examples you can get through in about 20 minutes (which is exactly what he did).
The bigger picture: the A2A CLI is the readymade client that completes the A2A story. Agents could already talk to agents; now terminals, CI jobs, and coding assistants can join that conversation with a single command — which makes the whole "siloed agents" problem cheaper to dissolve.
✅ Key Takeaways
- A2A is the common language for agents. Google's open protocol lets agents built on different stacks (ADK, LangChain, etc.) talk to each other.
- The CLI completes the story. Agents could already talk to agents; the
a2aCLI gives non-agents a readymade client to join in. - Three verbs, one surface.
a2a card getto discover,a2a sendto message (with--streamfor live events). - It negotiates transport for you. JSON-RPC, REST, or gRPC — decided from the agent's card, consistently across agents and languages.
- A bundled skill covers coding assistants. Antigravity and Claude Code can delegate to A2A agents without per-harness plugins.
- The chained call is the demo's payoff. Ask the marketing agent a campaign question, and it transparently makes an A2A call to the supply chain agent.
- Try it this week. One download, worked examples in ~20 minutes, and an immediate answer for any two agents that can't talk to each other.
🔗 Resources & Links
- 📦 A2A CLI (a2aproject/a2a-cli) — the official client
- 🌐 A2A protocol — the specification
- 🐙 A2A project on GitHub
- 🛠️ Google ADK — the Agent Development Kit
- 🧭 Google AntiGravity — the agentic IDE used in the demo
- ▶️ AI with Surya — the channel
CLI behavior, install commands, and the three verbs verified against the a2a-cli README; A2A protocol verified against a2a-protocol.org. The caption track mangles A2A repeatedly ("E2A", "EA CLI", "ALI") and renders "Claude Code" as "cloud code"/"claude core".