Documentation

Overview

Tutorials
How-to guides
Infrastructure
Reference
Explanation
On this page

What it does

The agent-to-agent door answers exactly what A2A message/send means: a message whose text names a capability id from the published register, answered by a completed Task — through the same core function the MCP tool and the REST operation call. The code is our own: there is no official Rust SDK, and a third-party 0.x SDK would not hit the specification; the reference SDK lives only on the other side of the wire, in the wire suite. The agent card is validated against the vendored A2A v1.0.1 schema on the serving path — the process refuses to start with an invalid card, because a build gate proves something about a file while a counterparty fetches an answer. What the door cannot do and does not claim: understand free language, plan, remember across turns, stream, or push; asked for a parameterised capability it refuses rather than half-answering. It is not in operation: the served card's supportedInterfaces is empty because no A2A endpoint runs — the card advertises none. It is unsigned on purpose too: the signature member appears only when a real key is handed to the build, and test keys never sign.

Run it yourself

You need:

  • Rust (stable via rustup) and Git; every command runs from the root of the corpus checkout.

From the root of the corpus checkout, line by line:

cargo run --locked --manifest-path public/web/site-gen/Cargo.toml -- --entries registry/entries --schema registry/standard/schema/manifest.schema.json --config public/web/site-config.json --assets public/web/ui/design --standard registry/standard --out public/web/build/site
cargo run --locked --manifest-path agents/a2a/Cargo.toml -- --root . --card public/web/build/site/.well-known/agent-card.json --http 8720

Then you should see:

a2a http shell on 127.0.0.1:8720

The first command builds the website because the agent card is made there; the second serves message/send against that card.

Test

cargo test --locked --manifest-path agents/a2a/Cargo.toml
  • Runs without network: every answer comes from the repository, the result is the same every run.

Five of the six cases need the built agent card via OH_AGENT_CARD (see agents/a2a/README.md).

Call

  • Public: not yet — No public endpoint: zone, route and deployment are not switched on.
  • Local: http://127.0.0.1:8720

Contracts

  • Agent card schema registry/standard/card/agent-card.schema.json

Contribute

Changes go through merge requests and the same gates as the association's own: formatting, Clippy without warnings, tests, seal and drift checks. Security reports, in confidence, to [email protected].

The base tier costs nothing; what the operation lives on is under About us, Financing.

Module card

State, evidence, download and dependencies are on the infrastructure page: A2A-Agent.