NovusEdge/a2a-mod
a2a-mod
A Claude Code plugin that lets Claude hand tasks to non-Claude A2A worker agents, keep working, and pick up results when they finish.
About this mod
a2a-mod is a Claude Code plugin that acts as an A2A (Agent2Agent) client. Claude can send a task to a remote A2A-compatible agent (ADK, AG2, LangGraph, @a2a-js/sdk, etc.); if the worker is slow, the task moves to the background after a few seconds and Claude continues working, then is woken with the result. It provides tools (workers, add_worker, remove_worker, send, task), a status line showing live task state, a hand-off band above the prompt, a ⇄ a2a pane as a tab next to /diff, and boxed transcript cards for sends and results, with full/pane/minimal UI modes. Worker auth tokens are read from a setting, command or file rather than being pasted into chat. The repo ships a fake worker for a quick local demo and links to docs for UI, tokens, protocol support, writing a worker, troubleshooting and security.
Installation
Check the author's README for the marketplace and plugin name first. Commands may change as the repository evolves.
claude plugin marketplace add NovusEdge/a2a-mod claude plugin install a2a-mod
Original text / README
a2a-mod
Hand work to other AI agents from Claude Code. Keep going. Get the result back.
<img src="docs/assets/demo.gif" alt="Claude Code hands a slow build to a worker, keeps working, and gets the result when it lands" width="900"> </div>Why
- Claude never waits on a slow agent. After a few seconds the task moves to the background and Claude carries on. When the agent finishes, Claude gets the result.
- Works with any A2A agent. ADK, AG2, LangGraph, @a2a-js/sdk, or anything else that speaks A2A 1.0 or 0.3.
- Your tokens stay out of the chat. Keys come from a setting, a command or a file. You never paste one into Claude.
Install
In Claude Code 2.1.287 or later:
/plugin marketplace add NovusEdge/a2a-mod
/plugin install a2a-mod@a2a-mod
Try it in a minute
You don't need a real agent. The repo ships a fake worker (needs Node 24 and pnpm).
- Start it:
git clone https://github.com/NovusEdge/a2a-mod && cd a2a-mod pnpm i && pnpm worker - In Claude Code, add it:
/a2a add http://127.0.0.1:41241 fake - Ask Claude:
send "slow 20 build" to the fake worker
The task takes 20 seconds. Claude gets a task id after about 7 and moves on. When the worker is done, the mod wakes Claude with the result.
What you'll see
- A status line with the live task:
a2a-mod: ⠋ fake slow 20 build 0:12. It stays visible next to/diff. - A band above your prompt while a task runs, showing the hand-off from Claude to the worker.
- A slim
⇄ a2apane that opens with/a2a, as a tab next to/diff. It shows each worker, its tasks, and buttons to copy a result, reply to a question or cancel. - Boxed cards in the transcript for each
sendand each result.
Pick full, pane or minimal in /config to show more or less. The UI has the details.
Use your own agents
/a2a add https://worker.example.com research --token-cmd "pass show research"
The token is read from a command, a file or a setting, and never typed into Claude. Worker tokens covers all three. You can also just ask Claude to add a worker; it shows a dialog, and nothing is added until you approve it.
Learn more
How it works · Write a worker · Troubleshooting · Security · Protocol support
Contributing and license
Contributions are welcome: see CONTRIBUTING.md. To report a vulnerability, see SECURITY.md. MIT licensed: see LICENSE.