Files
hermes-agent/agent/a2a/__init__.py
Alexander Whitestone ab1b196160
Some checks failed
Docker Build and Publish / build-and-push (pull_request) Has been skipped
Contributor Attribution Check / check-attribution (pull_request) Failing after 32s
Tests / test (pull_request) Failing after 1h0m29s
Supply Chain Audit / Scan PR for supply chain risks (pull_request) Successful in 34s
Tests / e2e (pull_request) Successful in 1m34s
feat: A2A auth — mutual TLS between fleet agents (#806)
Secure agent-to-agent communication with mutual TLS.

agent/a2a/mtls.py (260 lines):
- FleetCA: generate CA, issue per-agent certs
- AgentCert: cert/key management per agent
- verify_peer(): verify peer cert against fleet CA
- get_cert_info(): extract cert metadata
- generate_fleet_certs(): batch cert generation
- CLI: generate, verify, check subcommands

tests/agent/a2a/test_mtls.py: 11 tests
ansible/roles/a2a-certs/: Ansible role for cert distribution

Usage:
  python3 -m agent.a2a.mtls generate --agents timmy,allegro,ezra,bezalel
  python3 -m agent.a2a.mtls verify --cert cert.pem --ca ca.pem
  python3 -m agent.a2a.mtls check --cert cert.pem

Closes #806
2026-04-16 00:53:53 -04:00

3 lines
128 B
Python

"""A2A (Agent-to-Agent) authentication and security."""
from .mtls import FleetCA, AgentCert, verify_peer, generate_fleet_certs