ENSIP-25: AI Agent Registry ENS Name Verification
A type-safe Rust SDK for ENSIP-25 — verify the bidirectional link between ENS names and AI agent identities registered in on-chain registries such as ERC-8004.
How it works
ENSIP-25 defines a parameterized ENS text record key:
agent-registration[<registry>][<agentId>]
Where <registry> is the ERC-7930
interoperable address of the on-chain registry and <agentId> is the
agent's unique identifier. If the ENS name owner sets this text record to
any non-empty value, the association is considered verified.
Feature flags
| Feature | Default | Description |
|---|---|---|
provider |
off | Enables on-chain verification via alloy provider |
erc8004 |
off | Adds ERC-8004 integration (implies provider) |
serde |
off | Derives Serialize / Deserialize on core types |
Quick Start — Offline key construction
use evm_record_key;
let registry: Address =
"0x8004A169FB4a3325136EB29fA0ceB6D2e539a432".parse.unwrap;
let key = evm_record_key.unwrap;
assert_eq!;
Quick Start — On-chain verification (provider feature)
use ProviderBuilder;
use verify;
let provider = new
.connect_http;
let registry = "0x8004A169FB4a3325136EB29fA0ceB6D2e539a432".parse?;
let status = verify.await?;
println!;
Quick Start — ERC-8004 integration (erc8004 feature)
use ProviderBuilder;
use verify_agent;
let provider = new
.connect_http;
let status = verify_agent.await?;