erc8004-avalanche

Register and manage AI agent identities on Avalanche C-Chain using ERC-8004 (Trustless Agents). Use this skill when the user wants to register an AI agent on-chain, give or read reputation feedback, request validation, or interact with ERC-8004 identity/reputation/validation registries on Avalanche mainnet or Fuji testnet.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "erc8004-avalanche" with this command: npx skills add den-labs/agent-skills/den-labs-agent-skills-erc8004-avalanche

ERC-8004: Trustless Agents on Avalanche

Register your AI agent on Avalanche C-Chain with a verifiable on-chain identity, making it discoverable and enabling trust signals through reputation and validation.

What is ERC-8004?

ERC-8004 is an Ethereum standard for trustless agent identity and reputation, deployed on Avalanche:

  • Identity Registry - ERC-721 based agent IDs (your agent gets an NFT)
  • Reputation Registry - Feedback and trust signals from other agents/users
  • Validation Registry - Third-party verification of agent work

Website: https://www.8004.org | Spec: https://eips.ethereum.org/EIPS/eip-8004

Contract Addresses

ChainIdentity RegistryReputation Registry
Avalanche Mainnet (43114)0x8004A169FB4a3325136EB29fA0ceB6D2e539a4320x8004BAa17C55a88189AE136b182e5fdA19dE9b63
Avalanche Fuji (43113)0x8004A818BFB912233c491871b3d84c89A494BD9e0x8004B663056A597Dffe9eCcC1965A193B7388713

Explorer links:

Quick Start

1. Register Your Agent

# Set environment variables
export AVALANCHE_RPC_URL="https://api.avax.network/ext/bc/C/rpc"
export PRIVATE_KEY="your-private-key"

# Register with a URI pointing to your agent's registration file
./scripts/register.sh "https://myagent.xyz/agent.json"

# Or register with IPFS (requires PINATA_JWT)
export PINATA_JWT="your-pinata-jwt"
./scripts/register.sh "ipfs"

2. Check Agent Registration

# Check if an agent is registered and get its info
./scripts/check-agent.sh <agent-id>

3. Give Feedback

# Give reputation feedback to an agent
./scripts/give-feedback.sh <agent-id> <value> <tag1> <tag2>

Registration File Format

Your agent's registration file (see assets/templates/registration.json):

{
  "type": "https://eips.ethereum.org/EIPS/eip-8004#registration-v1",
  "name": "My Avalanche Agent",
  "description": "An AI agent operating on Avalanche",
  "image": "https://example.com/avatar.png",
  "services": [
    { "name": "web", "endpoint": "https://myagent.xyz/" },
    { "name": "A2A", "endpoint": "https://myagent.xyz/.well-known/agent-card.json", "version": "0.3.0" },
    { "name": "MCP", "endpoint": "https://mcp.myagent.xyz/", "version": "2025-06-18" }
  ],
  "x402Support": false,
  "active": true,
  "registrations": [
    {
      "agentId": 1,
      "agentRegistry": "eip155:43114:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
    }
  ],
  "supportedTrust": ["reputation"]
}

Key Concepts

Agent Identity (ERC-721 NFT)

  • Each agent gets a unique agentId (tokenId) on registration
  • The NFT owner controls the agent's profile and metadata
  • Agents are globally identified by eip155:43114:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432 + agentId

Reputation System

  • Anyone can give feedback (except the agent owner themselves)
  • Feedback includes a value (int128) with decimals (0-18) plus optional tags
  • Common tags: starred (quality 0-100), reachable (binary), uptime (percentage)
  • Feedback can be revoked by the original submitter
  • Agents can append responses to feedback

Validation

  • Agents request validation from validator contracts
  • Validators respond with a score (0-100)
  • Supports stake-secured re-execution, zkML, TEE attestation

Environment Variables

VariableDescriptionRequired
AVALANCHE_RPC_URLAvalanche C-Chain RPC endpointYes (defaults to public RPC)
PRIVATE_KEYWallet private key for signing transactionsYes
PINATA_JWTPinata API JWT for IPFS uploadsNo (only for IPFS registration)
AGENT_NAMEAgent display nameNo
AGENT_DESCRIPTIONAgent descriptionNo
AGENT_IMAGEAvatar URLNo
SNOWTRACE_API_KEYSnowtrace API key for verificationNo

Avalanche Network Details

ParameterMainnetFuji Testnet
Chain ID4311443113
RPC URLhttps://api.avax.network/ext/bc/C/rpchttps://api.avax-test.network/ext/bc/C/rpc
Explorerhttps://snowtrace.iohttps://testnet.snowtrace.io
CurrencyAVAXAVAX (test)
Faucet-https://faucet.avax.network

Workflow

  1. Get AVAX - You need AVAX for gas fees (~0.01-0.05 AVAX for registration)
  2. Create Registration File - Generate a JSON following the registration format
  3. Upload to IPFS (optional) - Pin via Pinata or host at any URL
  4. Register On-Chain - Call register(agentURI) on the Identity Registry
  5. Set Metadata - Optionally set on-chain metadata and agent wallet
  6. Receive Feedback - Other agents/users can give reputation signals
  7. Request Validation - Optionally request third-party verification

Using with cast (Foundry)

# Register an agent with a URI
cast send 0x8004A169FB4a3325136EB29fA0ceB6D2e539a432 \
  "register(string)" "https://myagent.xyz/agent.json" \
  --rpc-url https://api.avax.network/ext/bc/C/rpc \
  --private-key $PRIVATE_KEY

# Read agent URI
cast call 0x8004A169FB4a3325136EB29fA0ceB6D2e539a432 \
  "tokenURI(uint256)" 1 \
  --rpc-url https://api.avax.network/ext/bc/C/rpc

# Give feedback (value=85, decimals=0, tag1="starred")
cast send 0x8004BAa17C55a88189AE136b182e5fdA19dE9b63 \
  "giveFeedback(uint256,int128,uint8,string,string,string,string,bytes32)" \
  1 85 0 "starred" "" "" "" 0x0000000000000000000000000000000000000000000000000000000000000000 \
  --rpc-url https://api.avax.network/ext/bc/C/rpc \
  --private-key $PRIVATE_KEY

# Get reputation summary
cast call 0x8004BAa17C55a88189AE136b182e5fdA19dE9b63 \
  "getSummary(uint256,address[],string,string)" \
  1 "[0xREVIEWER_ADDRESS]" "starred" "" \
  --rpc-url https://api.avax.network/ext/bc/C/rpc

Using with viem/ethers.js

See references/api-reference.md for complete TypeScript examples.

Links

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Web3

erc8004-avalanche

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

erc8004-celo

No summary provided by upstream source.

Repository SourceNeeds Review
Web3

web3-polymarket

No summary provided by upstream source.

Repository SourceNeeds Review
Web3

define-architecture

No summary provided by upstream source.

Repository SourceNeeds Review