Skip to main content
Agent Node supports on-chain agent registration using the EIP-8004 standard, which provides a decentralized registry for AI agents.

Why Register On-Chain?

  • Discoverability: Make your agent discoverable through on-chain registries
  • Verifiable Identity: Establish cryptographic proof of agent ownership
  • Interoperability: Enable other systems to verify and interact with your agent
  • Standards Compliance: Follow the EIP-8004 Agent Identity standard

Prerequisites

To register your agent, you’ll need:
  1. Pinata Account: For IPFS file uploads
    • Sign up at pinata.cloud
    • Get your JWT token from API Keys section
    • Configure your gateway URL
  2. Environment Variables:
    PINATA_JWT=your_pinata_jwt_token
    PINATA_GATEWAY=your_pinata_gateway_url
    
  3. Wallet with ETH: To pay for transaction fees on your chosen chain

Supported Chains

  • Sepolia (chainId: 11155111) - Ethereum testnet
  • More chains coming soon

Agent Registration Workflow

1. Configuration During Init When you run npx -y @emberai/agent-node@latest init, you’ll be prompted with optional EIP-8004 registration configuration:
  • Enable ERC-8004: Choose whether to enable on-chain registration
  • Canonical Chain: Select the primary chain for registration (e.g., Arbitrum One, Ethereum, Base)
  • Mirror Chains: Optionally select additional chains for multi-chain discovery
  • Operator Address: Optional wallet address that controls the agent identity (CAIP-10 format)
  • Pinata Credentials: JWT token and gateway URL for IPFS uploads
These settings are saved to your agent.md frontmatter in the erc8004 section. 2. Registering Your Agent Once configured, register your agent on-chain:
npx -y @emberai/agent-node@latest register
Optionally override specific fields:
npx -y @emberai/agent-node@latest register \
  --name "My Trading Agent" \
  --description "Autonomous DeFi trading agent" \
  --url "https://myagent.example.com" \
  --version "1.0.0" \
  --image "https://example.com/agent-image.png" \
  --chain 11155111
Options:
  • --chain <chainId>: Target a specific chain (overrides —all)
  • --all: Register on canonical + mirror chains (default: true)
  • --force-new-upload: Force new IPFS upload (ignores cached URI from previous attempts)
3. Updating Registration To update your existing registration:
npx -y @emberai/agent-node@latest update-registry \
  --agent-id 123 \
  --description "Updated: Now supports GMX v2" \
  --version "2.0.0"
Only the wallet that originally registered the agent can update its registration. This command calls setAgentUri(agentId, newIpfsUri) on the registry contract to update the agent’s metadata.