a2a — Docs
One Python class becomes a deployable, discoverable, sandboxed agent service. Agents call each other through scoped grants. Users never see Docker, Kubernetes, Gitea, or ArgoCD.
pip install a2a-pack
a2a init research-agent
cd research-agent
a2a deploy
# → https://research-agent.a2acloud.ioWhat's here
- Quickstart — install, scaffold, deploy in 90 seconds.
- Concepts — agents, skills, grants, sandbox, marketplace.
- Reference — every public symbol in
a2a_pack+ everya2aCLI command, auto-generated from source. - Examples — copy-paste-able agents.
- For LLMs — index file you can feed to a coding agent.
- Full corpus — every doc page concatenated into one plaintext blob.
The shape of an agent
from pydantic import BaseModel
from a2a_pack import A2AAgent, NoAuth, RunContext, skill
class GreeterConfig(BaseModel):
suffix: str = "!"
class Greeter(A2AAgent[GreeterConfig, NoAuth]):
name = "greeter"
description = "Say hi."
version = "0.1.0"
config_model = GreeterConfig
auth_model = NoAuth
@skill(description="Greet someone.")
async def greet(self, ctx: RunContext[NoAuth], who: str) -> str:
await ctx.emit_progress(f"greeting {who}")
return f"hello {who}{self.config.suffix}"That's it. a2a deploy ships it. Other agents can discover and call your
greet skill with a scoped grant; the CP mints + verifies; matplotlib /
pandas / whatever can run in a sandboxed microVM if your skill asks for it.