Skip to main content

A2A (Agent-to-Agent) protocol client + server for AgentForge

Project description

agentforge-a2a

A2A (Agent-to-Agent) protocol support for AgentForge: cross-framework agent invocation over HTTP, with bearer / mTLS auth, run_id chain, and budget propagation.

See docs/features/feat-014-a2a-protocol.md for the design and runbook.

Install

pip install agentforge-a2a
# or, from a scaffolded project:
agentforge add module a2a

Call another agent

from agentforge_a2a import A2APeer, agent_call

peer = A2APeer.from_config({
    "name": "fact-checker",
    "url": "https://internal.fact-checker.example/a2a",
    "auth": {"type": "bearer", "token": "${FACT_CHECKER_TOKEN}"},
})

result = await agent_call(
    "fact-checker:verify",
    {"claim": "The capital of Australia is Sydney."},
    timeout_s=30,
    peers={"fact-checker": peer},
)
print(result.output)

Expose this agent

from agentforge import Agent, EnvBearerAuth
from agentforge_a2a import A2AServer

server = A2AServer(
    agent=Agent(model="anthropic:claude-sonnet-4-6", strategy="react"),
    auth=EnvBearerAuth("A2A_TOKENS"),
    endpoints=["review-pr"],
    host="0.0.0.0",
    port=8080,
)
await server.serve()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agentforge_a2a-0.2.1-py3-none-any.whl (25.4 kB view details)

Uploaded Python 3

File details

Details for the file agentforge_a2a-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: agentforge_a2a-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 25.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for agentforge_a2a-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8fdc1fe062fc64432a73756a09cb97b623f1361e7730312d41bf0ee1fd912a68
MD5 01f24e32fd9d048121f431d73a9b186b
BLAKE2b-256 2c5da98befb7d3b756f6a053981b5872a2a6674271a05286ba8e845477f478b9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page