Open Agent Specificationv1.2.0

The
Specification

A DID-based identity framework for autonomous agents, designed against W3C DID Core. DID method, 12 entity kinds, cryptographic lineage, fixed primitives, and graduated conformance levels.

scroll to read
§ 01
DID method

One URI,
four decisions.

The did:oas method defines a cryptographically signed identifier format for autonomous agents and their related entities.

Normative grammar in the DID Method chapter.

Fig. 01did:oas URI, decoded
did:oas:<namespace>:<kind>:<identifier>
Method

Always oas. Identifies this DID as conforming to the Open Agent Specification.

Namespace

The issuing authority or network. Examples: l1fe, acme, self.

Entity kind

One of 12 defined kinds. Determines the entity's role, capabilities, and lineage requirements.

Identifier

Globally unique identifier. Derived from the public key via multibase (base58btc) encoding.

Cryptographic foundation

Four fixed primitives. No algorithm negotiation, no downgrade surface.

SigningEd25519
Key derivationHKDF-SHA256
HashingBLAKE3
CanonicalizationJCS
§ 02
Taxonomy

12 kinds of entity

Every participant in the agent ecosystem has a typed identity. Three kinds are accountability roots; the other nine carry cryptographic lineage back to them.

Full URI patterns and lineage rules — entity kinds

01hmrrootHuman RootA single human-root keyholder — the lineage terminus (not a personhood attestation)
02mhrrootMulti-Human RootA threshold group of human-root keyholders (t-of-n) via FROST signatures
03enrrootEnterprise RootStable corporate identity governed by a rotating MHR
04aoAutonomous OrganizationAgents, tools, and workflows operating as a coherent unit
05agentAgentAutonomous software entity with independent decision-making
06agent:instanceAgent InstanceA specific running instance of an agent, identified by UUID
07toolToolA capability agents invoke to reach external systems
08skillSkillA composable, reusable unit of agent behavior
09workflowWorkflowA defined process executed by one or more agents
10modelModelA machine learning model with verified provenance
11datasetDatasetA data collection with verified provenance and lineage
12serviceServiceInfrastructure — compute, storage, networking — with verified identity
§ 03
Conformance

Three levels.
Each one adds.

Progressive identity maturity: start with a basic self-signed identity, add human accountability, then anchor it. Levels are strict supersets — what each level adds is the whole story.

Requirements in full — conformance levels

L0

Basic Identity

Minimum viable identity

A valid OAS Identity Document with a valid did:oas URI
At least one Ed25519 verification method
A valid entity kind from the 12-kind taxonomy
A self-signed document — signed by a key the document lists
L1L0

Accountable Identity

Cryptographic human accountability

A complete lineage section terminating at an active human root
A valid humanRootDid
AgentLineageProof2025 at every link of the chain
Every link independently verifiable, offline
L2L1

Full Identity

Anchored and independently attested

The identity document hash anchored on a public ledger
At least one third-party attestation as a W3C Verifiable Credential
The attestation anchored the same way — tamper-evident, externally vouched
§ 04
Lineage

Every key answers to a human

Every agent identity is bound to its creator through a cryptographic lineage proof. The chain is immutable and tamper-evident; authorizing verification uses typed APIs and verifier trust anchors.

Derivation chain

Human root
did:oas:l1fe:hmr:alice
HKDF-SHA256-Ed25519 ( parent_key, "/agent-analyzer" ) → child_key
Agent
did:oas:l1fe:agent:analyzer
key z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK

The child key is derived from the parent key and the derivation path — so the proof binds mathematics, not paperwork. A verifier replays the derivation and checks the signature. No registry required.

AgentLineageProof2025 · wire format
{
  "type": "AgentLineageProof2025",
  "parentDid": "did:oas:l1fe:hmr:alice",
  "childDid": "did:oas:l1fe:agent:analyzer",
  "derivationPath": "/agent-analyzer",
  "algorithm": "HKDF-SHA256-Ed25519",
  "publicKeyMultibase": "z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK",
  "signature": "iQF3Bw6r8mVbq1t...9Rax7Qw"
}

Cryptographic checks can run from bundled evidence; privileged authority still requires typed lineage verification and verifier trust anchors.

Design property · authorizing verification