Agent Identity (ERC-8004)

An Etherean with a Soul equipped is structurally an agent. It has identity (the NFT), a wallet (the TBA), a decision framework (soul.md), and can be embodied by any AI. We register this on the ERC-8004 Identity Registry.

What is ERC-8004

ERC-8004 is Ethereum's standard for trustless AI agent identity. It defines three onchain registries:

The standard went live on Ethereum mainnet in January 2026. Co-authored by contributors from MetaMask, the Ethereum Foundation, Google, and Coinbase.

How Ethereans Use It

Registration

When a Soul is equipped, the Etherean's TBA calls IdentityRegistry.register(agentURI). The TBA itself makes the call (via tba.execute()), so the TBA owns the 8004 agent NFT. This means:

Agent Card

The agentURI points to /api/etherean/{id}/agent-card, which returns spec-compliant JSON:

{
  "type": "https://eips.ethereum.org/EIPS/eip-8004#registration-v1",
  "name": "Etherean #1 (gami.eth)",
  "description": "Fully onchain Ethereum avatar...",
  "image": "https://etherean.ai/api/avatar/1.svg",
  "services": [
    { "name": "web", "endpoint": "https://etherean.ai/etherean/1" },
    { "name": "mcp", "endpoint": "npx @etherean/mcp --id 1" }
  ],
  "active": true,
  "supportedTrust": ["reputation"]
}

Transaction Flow

  1. User calls EthereanSoul.mint(ethereanId, pixelData, content) — soul NFT minted to TBA
  2. On confirmation, UI encodes register(agentURI) calldata
  3. User calls tba.execute(identityRegistry, 0, calldata, 0)
  4. Identity Registry mints agent NFT to TBA, sets agentWallet to TBA address

Registration is non-blocking — if it fails, the soul is still equipped. The agent registration can be retried later.

What This Unlocks

Contracts

ContractAddress
Identity Registry0x8004A169FB4a3325136EB29fA0ceB6D2e539a432
Reputation Registry0x8004BAa17C55a88189AE136b182e5fdA19dE9b63
Agent Identity (ERC-8004) — ETHEREAN Docs