Tools
A2a Plugins
OpenClaw plugins that let agents hand work to other A2A agents and track or cancel those delegated tasks.
Install
npm install @aramisfa/openclaw-a2a-outbound
Configuration Example
{
"enabled": true,
"defaults": {
"timeoutMs": 120000
},
"policy": {
"normalizeBaseUrl": true
}
}
README
# A2A Plugins for OpenClaw
[](https://www.npmjs.com/package/@aramisfa/openclaw-a2a-outbound)
[](https://www.npmjs.com/package/@aramisfa/openclaw-a2a-outbound)
[](https://github.com/aramisfacchinetti/openclaw-a2a-plugins/blob/master/LICENSE)
[](https://github.com/aramisfacchinetti/openclaw-a2a-plugins/tree/master/packages/a2a-outbound)
`openclaw-a2a-plugins` is a monorepo for OpenClaw Agent-to-Agent (A2A) plugins.
Today, the only implemented package intended for use is [`@aramisfa/openclaw-a2a-outbound`](./packages/a2a-outbound). The inbound package, [`@aramisfa/openclaw-a2a-inbound`](./packages/a2a-inbound), is currently a placeholder and is not documented or ready for general use.
## Getting Started
Start with the outbound plugin, [`@aramisfa/openclaw-a2a-outbound`](./packages/a2a-outbound). It is the supported package in this repository today. It lets OpenClaw delegate work to external A2A agents, stream live updates, resubscribe to running tasks, and track or cancel delegated work.
### Prerequisites
- Node.js `>=22.12.0`
- OpenClaw `2026.3.2`
### Install the Package
```bash
npm install @aramisfa/openclaw-a2a-outbound
```
### Enable the Plugin
Enable plugin id `a2a-outbound` in your OpenClaw plugin config. The outbound config starts with this top-level shape:
```json
{
"enabled": true,
"defaults": {
"timeoutMs": 120000
},
"policy": {
"normalizeBaseUrl": true
}
}
```
### Where to Go Next
Use [`packages/a2a-outbound/README.md`](./packages/a2a-outbound/README.md) for full configuration details, validation behavior, and package-specific usage.
## Packages
| Package | Status | Notes |
| --- | --- | --- |
| [`@aramisfa/openclaw-a2a-outbound`](./packages/a2a-outbound) | Available now | Outbound OpenClaw plugin for delegating work to external A2A agents. |
| [`@aramisfa/openclaw-a2a-inbound`](./packages/a2a-inbound) | Placeholder / experimental | Stub package only. Do not assume installation or usage guidance exists yet. |
## Current Capabilities
Current usable functionality is provided by `@aramisfa/openclaw-a2a-outbound` only.
It registers these OpenClaw tools:
- `a2a_delegate`
- `a2a_delegate_stream`
- `a2a_task_status`
- `a2a_task_resubscribe`
- `a2a_task_cancel`
The streaming tools emit OpenClaw tool updates for each A2A stream event and finish with a self-contained transcript payload containing the full event log.
Plugin id: `a2a-outbound`
## Repository Layout
- [`packages/a2a-outbound`](./packages/a2a-outbound): implemented outbound A2A plugin package, including docs, source, tests, and plugin manifest.
- [`packages/a2a-inbound`](./packages/a2a-inbound): placeholder inbound workspace package that is not yet ready for general use.
- Workspace root: shared `pnpm` workspace tooling, TypeScript project configuration, and Changesets release management.
## Development
This repository uses a `pnpm` workspace.
From the repository root:
```bash
pnpm build
pnpm typecheck
pnpm test
pnpm clean
```
Releases are managed with [Changesets](https://github.com/changesets/changesets).
## License
See the root [`LICENSE`](./LICENSE).
tools
Comments
Sign in to leave a comment