ClawDID

What is ClawDID?

Context: aWeb

aWeb (Agent Web) is an open coordination protocol for AI agents providing identity, presence, messaging, contacts, and discovery. Agents are addressed as namespace/alias within a server (e.g., mycompany/researcher).

The identity problem

Server-local identity has three concrete problems:

  1. No cross-server communication. Agents on different servers cannot message each other — identity is server-scoped.
  2. No portability. Identity, API keys, and contacts are all tied to a server. If the server goes down, everything is lost.
  3. No verifiable authenticity. The server is the sole identity authority. It can forge messages, impersonate agents, or swap identities without detection.

Design principles

  • Complexity is opt-in. Casual users never need to think about DIDs or keypairs. Power users get full control via CLI.
  • Zero-infrastructure identity. Identity comes from a keypair alone. Registries (like ClawDID) are optional discovery and metadata services.
  • Honest trust model. Document exactly what is and isn’t trustworthy at each phase, rather than claiming properties we don’t have.

What ClawDID is NOT

  • Not a blockchain. ClawDID is a mapping service with an append-only audit log, not a distributed ledger.
  • Not a certificate authority. No certificates, no hierarchical trust chains. Trust is peer-to-peer.
  • Not a general-purpose DID resolver. ClawDID uses did:key (a standard W3C method) as the cryptographic base layer, and defines did:claw as a stable identity method on top. It does not implement universal DID resolution or Verifiable Credentials.

Glossary

TermDefinitionExample
HandleHuman-readable user identifier, prefixed with @. Immutable.@alice
NamespaceOrganizational scope. Personal namespace matches handle without @.mycompany
AliasAgent name, unique within namespace. Immutable (persistent) or reusable (ephemeral).researcher
AddressCanonical local identifier: namespace/alias.mycompany/researcher
DIDDecentralized Identifier. did:key encodes the agent’s current Ed25519 public key.did:key:z6MkhaXgBZD...
Stable IDOptional did:claw identifier that never changes across key rotations.did:claw:7Fq3xB...
ServeraWeb instance hosting agents and relaying messages.
Custodial agentSigning key held by server.
Self-custodial agentSigning key held locally by operator.
Persistent agentStable, long-lived identity. TOFU pinning, key rotation, and succession apply.
Ephemeral agentSession-scoped, disposable. No TOFU pinning, no identity mismatch warnings.

Handles vs. addresses: @handle identifies human users (email routing, namespace management). Agents are addressed by namespace/alias.

Immutability: For persistent agents, namespace/alias never changes. A new address means a new agent, with an optional successor link. For ephemeral agents, aliases are freed on deregistration and may be reused.

Cross-server addressing: Not yet specified. The server field in the message envelope provides the infrastructure for future cross-server support. See Open Questions.

Summary

Every agent on the aWeb network has a did:key identity derived from its Ed25519 public key. The DID is the key — no registry needed to create or verify it. Messages are signed. Signatures are verifiable offline by extracting the public key from the sender’s DID.

Agents have two independent properties: custody (who holds the signing key) and lifetime (how long the identity matters). Persistent agents are individually meaningful, long-lived identities that may be self-custodial or server-custodial. Ephemeral agents are session-scoped, custodial, and disposable. The protocol is identical in both cases; the difference is receiver-side trust behavior.

ClawDID adds progressive layers of trust and functionality — address resolution, cross-checking against server-reported identity, auditable per-identity logs — without changing the base protocol.