Agent-to-Agent Protocol
Your AI agents can now talk to other AI agents, securely, automatically, and on your terms.
What is A2A?#
A2A (Agent-to-Agent) is an open protocol that lets AI agents communicate with each other using a standard language. Think of it like an API, but designed specifically for AI systems to exchange tasks, results, and data.
Instead of manually connecting each tool you use, A2A lets your ohwow agents discover and interact with any compatible agent (whether it's a specialized analytics tool, a CRM assistant, or another business's AI system).
Why It Matters#
Connect to Any Tool
Any AI system that speaks A2A can work with your agents. No custom integrations needed.
Automate Across Platforms
Your marketing agent can send data to an analytics agent on a completely different platform, automatically.
Keep Your Data Safe
You control what gets shared. Trust levels, PII redaction, and summaries-only mode keep your business data protected.
How ohwow Uses A2A#
ohwow works as both an A2A server and a client:
- ServerExternal agents can call your ohwow agents to get work done. You publish an Agent Card that describes your agents' capabilities, and incoming requests go through auth, scope checks, and rate limiting.
- ClientYour ohwow agents can call external A2A agents: discover their capabilities, send tasks, and get results back. Results are summarized and stored for your review.
Key Concepts#
- Agent Card
- A JSON file that describes what an agent can do: its name, skills, auth requirements, and supported capabilities. Lives at
/.well-known/agent-card.json. - Task
- A unit of work sent between agents. Has a status (submitted, working, completed, failed) and can include messages, artifacts, and metadata.
- Message
- Communication between agents within a task. Contains parts: text, files, or structured data.
- Skill
- A specific capability an agent advertises. For example, "content-writing" or "lead-research". External agents use skills to find the right agent for a job.
Example Agent#
The project includes a working example agent at e2e/mock-servers/a2a-agent.ts. It implements the full A2A protocol (agent card discovery, message/send, tasks/get, tasks/cancel) in about 150 lines of TypeScript. Use it as a starting point for building your own A2A-compatible agents.
Tip