Agent Identity (Agent_ID)
Agent identities follow a URI-based pattern:Agent Identity Document
Each agent publishes a JSON document at theiragent_id URI containing their metadata and public key:
- Discovery — Other parties can learn about the agent’s capabilities
- Verification — The public key is used to verify agent attestation JWTs
Agent Attestation
Agents prove their identity using a signed JWT (Agent Attestation Token):agent_id URI.
Attestation JWTs MUST include an expiration time (
exp) and audience (aud). Implementors MUST reject expired or audience-mismatched attestations.Service Identity (App_ID)
Services are identified by their existing identifiers:- Client-side apps: Package name (e.g.,
com.example.mail) - Server-side services: URI (e.g.,
https://api.example.com)
Verification Flow
When an agent interacts with an ATH implementor:- The agent signs an attestation JWT with its private key
- The implementor fetches the agent’s identity document from the
agent_idURI - The implementor extracts the public key from the identity document
- The implementor verifies the JWT signature, expiry, and audience
- If valid, the agent’s identity is confirmed