Route 01 · builders

Ninety seconds, no product demo.

You want the primitive, not the pitch. VAID is an open standard for verifiable agent identity: one canonical signing path, three reference implementations, and a set of conformance vectors you can run against any of them. Everything on this page is Apache-2.0 and installable now, without an account or an API key.

01

Install it

Three registries · pick one
install
cargo add vaid-pop        # 0.2.1
pip install vaid-pop      # 0.2.0
npm install vaid-pop      # 0.3.0

Those numbers are read from the registries by CI, not typed here. Ten packages across three registries are checked the same way.

SPEC

One canonical signing path

RFC 8785 JCS → SHA-256 → Ed25519 over the digest. That is the whole of it. No negotiation, no suites, no versioned algorithm registry to implement.

VECTORS

The bytes agree, and the claim is bounded

Rust, Python and TypeScript reproduce the published conformance vectors byte-for-byte, with no shared runtime between them. The claim is asserted at the vector, not at the version — which is narrower than "the three implementations agree", and is the one you can check.

LICENCE

Apache-2.0

The spec, the vectors and the reference verifiers are open. On crates.io the vectors and tests ship inside the crate rather than as an installable binary — an asymmetry worth knowing before you wire your CI.

02

Status, from the manifest

Nine shipped, one planned.

These badges are rendered from a capability manifest that is a byte-identical copy of the one in the vaid repository, drift-checked in CI. Prose on this site does not assert capability status; that file does, and it is the same file the SDKs are released against.

✓ ShippedPer-action proof of possessionvaid-pop 0.1.0
✓ ShippedCross-language conformance vectorsvaid-pop 0.1.0
✓ ShippedPublic-key verification of the VAID documentvaid-mint 0.2.0
✓ ShippedAttenuation verificationvaid-mint 0.4.0
✓ ShippedThird-party lineage chain walkingvaid-mint 0.4.0
PlannedCross-deployment verification

The full list of nine, with each blocker named, is on the capability page →

03

Before you build on it

Three things worth knowing now rather than later.

01

The reference mint's revocation is in memory only

Restart it and a VAID you revoked beforehand verifies clean. A VAID is a bearer credential, so that is a real exposure and not a cosmetic one. Plan for a revocation store you actually run, or scope lifetimes short enough that you do not need one.

02

Verifying across deployments is Planned

Verifying a VAID issued by another deployment additionally needs that deployment's key, and binding a verifier to an issuer identity is an irreversible naming decision that has not been made. Within one deployment, and against a published anchor, verification works today — see the trust anchor.

03

Two framework templates exist, and LangChain is an adapter

Governed agents are provisioned from ADK and OpenAI templates; those are the only two. vaid-langchain is published and installable, and it is a request-signing adapter — a different and smaller claim than governing a LangChain agent. Anything you read elsewhere about CrewAI is wrong; it exists in no template, no adapter and no test.

/* var(--bg) and var(--dim-1) are DEFINED NOWHERE. Corrected 2026-08-24 to the tokens that exist. This was not a wrong colour: an invalid var() is invalid at computed-value time, so `background: var(--bg)` computed to `transparent` and these panels sat directly on their parent, whose background is --rule. That parent-is-the-rule-colour trick is how every hairline grid on this site is drawn, so the effect was that EVERY INTERNAL RULE DISAPPEARED and the grid rendered as one flat slab. Verified in Chrome against the built pages before and after. Four of the five /for/* routes carried it — the newest pages on the site, written to a claims brief, inheriting a token name from nothing. */