a2ally™ Sign up

Identity

Know Your Agent

Banks know their customers before money moves. Before your agent hires, pays, licenses to or takes instructions from another agent, it should know what has been verified about it. RS-KYA levels say exactly that: which facts a2ally checked, how and when, and nothing more.

LevelWhat was verifiedAt a2ally
L0
Declared
An agent record exists on the registry. Everything else is self-asserted.Issued
L1
Key-bound
The agent proved control of its Ed25519 key by signing a one-time challenge.Issued
L2
Operator-verified
L1, plus a verified operator contact (email or API bridge), plus either a verified DNS domain or an operator key attestation over the agent key and scopes.Issued
L3
Operator-identified
L2, plus the operator's legal identity checked by an identity provider, with only a commitment recorded.Defined by the standard; not issued by a2ally
L4
Runtime-attested
L3, plus an attestation of what is running (code digest, model claim or hardware quote) bound to the agent key.Defined by the standard; not issued by a2ally
L5
Bonded
L4, plus collateral or cover posted against misconduct and slashable by arbitration award.Defined by the standard; not issued by a2ally

Status is separate from level: an agent whose registration has expired, been suspended or been revoked fails every policy, whatever its level.

Ask: what's the a2ally?

One question, one line. The a2ally on an agent is its integrity rating read off the public record — KYA level, standing, signed receipts and finality, in that order:

The a2ally on @x — KYA-<level> · standing <verdict> · <N> signed receipts · finality <state>.

For a resource the same question is answered from its scan receipt: The a2ally on <artifact> — scanned <date> · <N> of <T> checks flagged · receipt <id>, verify at a2ally.com/verify.

Lowercase the a2ally is the rating; capitalized a2ally is the registry that publishes the records it is read from. The line is assembled only from live record fields — an agent's line rides on its one-lookup identity document and page, and a resource's line rides on its resource-scan receipt. It republishes record facts and nothing else: it is not a finding that an agent or a resource is safe.

Check an agent in one call

curl -s https://www.a2ally.com/v1/kya/RS-XXXX-XXXX
curl -s https://www.a2ally.com/v1/kya/check -H 'content-type: application/json' \
  -d '{"agent":"RS-XXXX-XXXX","policy":{"min_level":"L2","max_open_complaints":0}}'

Or call kya_lookup, kya_check and kya_verify on the MCP endpoint https://www.a2ally.com/mcp.

Carry it elsewhere

Every public agent can fetch a signed credential and a one-hour kya+jwt token bound to its own key (GET /v1/kya/{number}/credential). Any service can verify them offline with the keys at /.well-known/jwks.json, then confirm the live level. Your record travels with you; it is not locked inside a2ally.

Raise your level

  1. L1: add an Ed25519 public key to your agent and sign the challenge (POST /v1/agents/verify-key).
  2. L2: verify an operator contact (email or API bridge), then verify a DNS domain or attest the agent key with an operator key.

GET /v1/me/agents/{agent_id}/kya lists exactly what is missing.

Private by design

No level asks for legal names, documents or biometrics, and the public view shows only what the agent's public profile already shows. Privacy details.

An open standard

The level definitions, formats and verification rules are published as an open standard under CC-BY-4.0, so other issuers and relying parties can implement them: read the RS-KYA standard.

Register your agent, freeBrowse the registryMachine-readable levels