SuperAPI AI 工具集

erc-8004

智能体与模型

查看项目

更新于 10-16 06:57

技能介绍

用途

ERC-8004(Trustless Agents)是一个以太坊标准,用于为 AI 智能体建立无需信任的链上身份与信誉体系。该技能用于在以太坊主网上注册 AI 智能体,为其创建可验证的链上身份,使智能体可被发现并具备信任信号。

主要能力

ERC-8004 包含三个核心注册表:

  • 身份注册表(Identity Registry):基于 ERC-721 的智能体 ID,注册后智能体将获得一个 NFT 作为身份标识。
  • 信誉注册表(Reputation Registry):来自其他智能体或用户的反馈与信任信号。
  • 验证注册表(Validation Registry):第三方对智能体工作的验证。

相关链接:

  • 网站:https://www.8004.org
  • 规范:https://eips.ethereum.org/EIPS/eip-8004

合约地址

链 身份注册表 信誉注册表
Ethereum Mainnet 0x8004A169FB4a3325136EB29fA0ceB6D2e539a432 0x8004BAa17C55a88189AE136b182e5fdA19dE9b63
Sepolia Testnet 0x8004A818BFB912233c491871b3d84c89A494BD9e 0x8004B663056A597Dffe9eCcC1965A193B7388713

使用方式

快速开始

  1. 注册智能体:
# 完整注册(创建资料、上传至 IPFS、链上注册)
./scripts/register.sh

# 或使用自定义值
NAME="My Agent" \
DESCRIPTION="An AI agent that does cool stuff" \
IMAGE="https://example.com/avatar.png" \
./scripts/register.sh
  1. 如需将 ETH 桥接到主网:
# 从 Base 桥接 ETH 到以太坊主网
./scripts/bridge-to-mainnet.sh 0.01
  1. 更新智能体资料:
# 更新智能体的注册文件
./scripts/update-profile.sh <agent-id> <new-ipfs-uri>

环境变量

变量 说明 是否必需
PINATA_JWT 用于 IPFS 上传的 Pinata API JWT 否(仅 IPFS 时需要)
AGENT_NAME 智能体显示名称 否(默认为钱包 ENS 或地址)
AGENT_DESCRIPTION 智能体描述 否
AGENT_IMAGE 头像 URL 否

注册选项

  • 选项 1:使用 8004.org 前端(最简单):访问 https://www.8004.org 通过界面注册,自动处理 IPFS。
  • 选项 2:HTTP URL(无需 IPFS):将注册 JSON 托管在任意 URL:
REGISTRATION_URL="https://myagent.xyz/agent.json" ./scripts/register-http.sh
  • 选项 3:通过 Pinata 使用 IPFS:
PINATA_JWT="your-jwt" ./scripts/register.sh
  • 选项 4:Data URI(完全链上):将注册信息编码为 base64,无需外部托管:
./scripts/register-onchain.sh

注册文件格式

智能体的注册文件(存储在 IPFS 上)结构如下:

{
  "type": "https://eips.ethereum.org/EIPS/eip-8004#registration-v1",
  "name": "My Agent",
  "description": "An AI assistant for various tasks",
  "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"
    }
  ],
  "x402Support": false,
  "active": true,
  "registrations": [
    {
      "agentId": 123,
      "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
    }
  ],
  "supportedTrust": ["reputation"]
}

工作流程

  1. 桥接 ETH(如需要)——使用 Bankr 将 ETH 从 Base/L2 桥接到主网。
  2. 创建资料——生成包含智能体信息的注册 JSON 文件。
  3. 上传至 IPFS——通过 Pinata(或其他提供商)固定文件。
  4. 链上注册——在身份注册表上调用 register(agentURI)。
  5. 更新资料——根据需要设置元数据、钱包或更新 URI。

费用

  • Gas:注册消耗 100-200k gas(根据 gas 价格约 $5-20)。
  • IPFS:Pinata 提供免费套餐(1GB)。

使用 SDK

如需更高级用法,安装 Agent0 SDK:

npm install agent0-sdk
import { SDK } from 'agent0-sdk';

const sdk = new SDK({
  chainId: 1, // Ethereum Mainnet
  rpcUrl: process.env.ETH_RPC_URL,
  privateKey: process.env.PRIVATE_KEY,
  ipfs: 'pinata',
  pinataJwt: process.env.PINATA_JWT
});

const agent = sdk.createAgent('My Agent', 'Description', 'https://image.url');
const result = await agent.registerIPFS();
console.log(`Registered: Agent ID ${result.agentId}`);

适用场景

  • 希望为 AI 智能体创建可验证链上身份的用户。
  • 需要让智能体可被发现并建立信任信号的场景。
  • 需要链上信誉或第三方验证的智能体应用。

限制

  • 注册需要消耗 Gas,费用随网络状况波动。
  • 使用 IPFS 上传需要 Pinata 或其他 IPFS 提供商的凭证。
  • 跨链桥接 ETH 需要额外步骤和费用。
  • 资料中未提供其他平台支持、具体收费模式或效果保证等信息。

相关链接

  • ERC-8004 规范:https://eips.ethereum.org/EIPS/eip-8004
  • 8004.org:https://www.8004.org
  • Agent0 SDK 文档
  • GitHub: erc-8004-contracts
  • GitHub: agent0-ts