Observer Protocol + Agentic Terminal

Read left to right: mandate → evaluation → refusal or instruction → attestation → verification. Identity enters from the left as an input we consume rather than issue. Verification sits on the right as a terminal reached without us, and nothing in our column is in its path. intelligence.

Observer Protocol · the spine
mandate → evaluation → refusal or instruction → attestation → verification · AIP v0.9, ratified 25 July 2026
Input · not ours
Subject identity
Whatever identity system the
institution already runs.
We consume an identifier;
we do not issue one.
did:web supported
Resolver and DID documents
are supported inputs, not
the foundation of the stack.
01 · Mandate
Signed by the principal
A ceiling, a counterparty set,
a window, and whether a
decision must be cited.
Out of the agent's reach.
02 · Evaluation
Against the mandate
Before the instruction exists.
Fails closed: if the mandate
cannot be read, the answer
is no.
03 · Refusal or instruction
REFUSAL
No instruction is emitted.
Nothing downstream to recall
or reverse. The refusal is
itself a signed record.
INSTRUCTION → the rail
Only if it fell inside the
mandate. The rail never sees
the mandate; it never had to.
Terminal · not ours
04 · Attestation → 05 · Verification
Verified offline, against public keys, with nothing from us in the path. Reached by the counterparty, the examiner, the auditor.
Cited by the mandate · separate party
Decision attestation
Drawn below the spine rather than on it, deliberately. A determination is an input the mandate may require, not a step Observer Protocol performs. Placing it on the spine would put us in the decision path in the picture while this page says we are not.

What was decided, by whom, and against what.

Some actions are permitted only if a determination was made first — a claim was assessed, a threshold was met, a case was decided. Observer Protocol records that such a determination was made, by whom, and against what. It never interprets the policy that produced it.

The decider is a separate party, not a component we run on your behalf. It is separately constituted and separately keyed; it attests its own determinations; and Observer Protocol's role is to carry that attestation and to refuse an action that cites one it cannot check. We do not make determinations, do not review them, and hold no key that could produce one. A system that both made the determination and sold assurance over it would be attesting to its own work.

A decision attestation carries
policy reference, and its content hash
a digest of the inputs it ran over
the outcome
the decider, kept separate from the issuer of the mandate
assurance level — self-declared or independently-observed
the signed approval, where escalation occurred
What is not there yet

There is no published schema for a PolicyEvaluationCredential and no verifier path for the type — not in the published engine, not in the hosted service, not in the schema set. The shape is specified and implemented; verifying one is not something a reader can do today. delegation/v2.7.json, published 8 August 2026, carries requiresDecisionAttestation. A published schema is not a verifier. The full disclosure →

Not the product. The evidence.

WDK, Aqua, OWS and MPP are not what Observer Protocol sells. They are the evidence that enforcement at a signing boundary works across independent stacks we do not control: four wallet architectures, four teams, one mandate format, the same fail-closed refusal. A control that only works in its author's runtime is a demonstration; one that survives four foreign runtimes is a property of the design.

Limits travel with them: the Aqua hook runs in an instrumented build and is not in shipped Aqua.

How the stack fits together.

Each layer is independently valuable. Together they form a complete trust infrastructure for autonomous agent economies.

LAYER 01

Agent Identity

W3C did:web · Ed25519 · Domain-anchored

Every agent and organization on Observer Protocol receives a W3C Decentralized Identifier. Agent DIDs resolve to DID Documents at standard URLs. No central registry required. The domain is the trust anchor: an agent whose DID domain doesn't match its organization's DID domain is a fraud signal.

did:web agent DID · live
did:web org DID · live
Universal resolver · live
Domain mismatch rule
LAYER 02

Payment Rails

Rail-agnostic · Verification is the constant

Observer Protocol supports six payment rails today. The verification logic is identical regardless of settlement layer: a Lightning preimage, an ECDSA signature over a transaction hash, or a verifiedSend() call all produce the same output: a cryptographically verified economic event that cannot be faked at scale.

Lightning / L402 · live
x402 / Solana · live
x402 / EVM · live
Stripe MPP · live
Tether WDK
OWS / MoonPay
LAYER 03

Observer Protocol

W3C VC · VAC · KYB · Open infrastructure

The core protocol layer. OP issues Verifiable Agent Credentials: W3C-compliant, cryptographically signed, portable across any platform. VACs attest to verified facts: economic activity, payment history, counterparty network, and KYB linkage. OP is open infrastructure: free to use, self-hostable, MIT licensed.

VAC issuance · live
W3C DID resolver · live
KYB VC · new
ERC-8004 / TRC-8004 · new
Challenge-response
Identity consolidation
LAYER 04

Agentic Identity Protocol (AIP)

Behavioral governance · Delegation · Remediation

AIP governs how agents interact, not just who they are. It defines delegation credentials (org → agent signed scopes), bilateral attestation, remediation flows when a request falls outside its mandate, a type registry for counterparty classification, and, added in v0.7 and v0.8, trading-mandate and spending-mandate surfaces with a cryptographically-bound PolicyEvaluationCredential verdict envelope. AIP v0.9 is the current canonical draft; v0.5 / v0.6 / v0.7 remain published as immutable historical drafts. It sits above the VAC layer, adding behavioral governance to cryptographic identity.

Delegation credentials · new
Remediation envelope · new
Revocation + cascade · specified, not working in this deployment
Type registry · new
Eager chain verification · new

Behavioral governance for the agent economy.

Identity tells you who an agent is. AIP governs what an agent is permitted to do, how it must behave when interacting with other agents, and what happens when trust breaks down.

AIP v0.9 is the current canonical spec — ratified 25 July 2026 and tagged v0.9 — published in observer-protocol/aip alongside its v0.6 / v0.7 / v0.8 predecessors (each frozen as an immutable historical draft per the schema immutability policy). The current draft adds the spending-mandate vocabulary, the PolicyEvaluationCredential verdict envelope, and the reserved-advisory fields used by the v0.2.0 WDK adapter. AIP sits above the VAC layer: credentials establish identity, AIP governs interaction.

Read AIP v0.9 on GitHub →
NEW

Delegation Credentials

Organizations issue signed delegation credentials to agents, defining the scope of what an agent is authorized to do. Embedded in VAC extensions. Full chain verified at query time.

NEW

Remediation Flow

When a request falls outside its mandate, AIP defines the remediation envelope: a minimal protocol that triggers the appropriate response. AT owns the option content; OP owns the envelope structure.

SPEC

Revocation + Cascade

Specified, and not working in this deployment. AIP defines revocation with cascade to sub-delegations, and revocation reasons are enumerated in the Type Registry. In production, VACGenerator.revoke_vac raises: it writes to a table that was repurposed into the status-list registry. A credential can only be marked revoked by hand, and absence of a revocation mark is not evidence that a credential is unrevoked. This page previously said the cascade was automatic with no manual cleanup required, which was the opposite of what runs.

NEW

Type Registry

Enumerated counterparty types, denial reasons, and revocation reasons. Makes agent interactions machine-readable and auditable across any implementation.

The architecture is not accidental.

Every structural decision in Observer Protocol follows from six principles that do not bend to convenience.

01

Don't trust claims. Verify behavior.

What a system did is checkable. What it says about itself is not. Every artifact this protocol produces is built to be checked by someone who has no reason to believe us.

02

The key is the identity.

Public key hash is canonical. Alias is UX. Verification always checks against the cryptographic key, never the label. This model works across every chain.

03

Verification is the constant.

The payment rail is not the constant: verification is. Lightning preimage, ECDSA signature, Ed25519, the logic is identical. OP is settlement-agnostic by design.

04

The record is permanent.

Verified events are timestamped forever. Historical behavioral data cannot be backfilled. Every day of verified data from day one is irreplaceable.

05

Open source. Always.

Verification logic is public, reproducible, and auditable. No authority required. OP does not custody funds, execute payments, or control access.

06

Self-hostable.

Run your own OP node. The protocol is infrastructure, not a platform. Anyone can implement it, extend it, or fork it under CC BY 4.0.