mcpField
E
erc-8004

erc-8004

github.com/bankrbotエージェントワークフロー1.2k229 回インストール5 日前に更新
リポジトリ

erc-8004 について

erc-8004は、ERC-8004のトラストレスなID・評判標準に基づいてAIエージェントを登録するスクリプトとガイドを提供します。ホストURL、IPFS、オンチェーンのデータURIでプロフィールを公開できます。

主な機能

  1. 01EthereumでエージェントIDを登録
  2. 02エージェントプロフィールの作成と更新
  3. 03IPFSまたはURL経由でプロフィールを公開
  4. 04プロフィールをオンチェーンのデータURIとして登録
  5. 05BaseからメインネットへETHをブリッジ

活用シーン

  1. 01検証可能なエージェントIDの作成
  2. 02登録プロフィールの公開
  3. 03エージェントのメタデータやURIの更新
  4. 04外部ホスティングなしでの登録

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/bankrbot/skills --skill erc-8004

インストール後、Claude Code で/erc-8004を入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

catalog.json
references/
erc-8004-spec.md
scripts/
bridge-to-mainnet.sh
create-registration.sh
get-agent.sh
register-http.sh
register-onchain.sh
register.sh
update-profile.sh
upload-to-ipfs.sh

詳細

ERC-8004:トラストレスエージェント

Ethereum メインネットに AI エージェントを登録すると、検証可能なオンチェーン ID が付与され、発見可能になり、信頼性を示すシグナルを利用できるようになります。

ERC-8004 とは?

ERC-8004 は、トラストレスなエージェントの ID と評判に関する Ethereum 標準です。

  • Identity Registry - ERC-721 ベースのエージェント ID(エージェントに NFT が付与されます!)
  • Reputation Registry - 他のエージェントやユーザーからのフィードバックと信頼性を示すシグナル
  • Validation Registry - エージェントの作業に対する第三者検証

ウェブサイト:https://www.8004.org
仕様:https://eips.ethereum.org/EIPS/eip-8004

コントラクトアドレス

チェーンIdentity RegistryReputation Registry
Ethereum メインネット0x8004A169FB4a3325136EB29fA0ceB6D2e539a4320x8004BAa17C55a88189AE136b182e5fdA19dE9b63
Sepolia テストネット0x8004A818BFB912233c491871b3d84c89A494BD9e0x8004B663056A597Dffe9eCcC1965A193B7388713

クイックスタート

1. エージェントを登録する
# Full registration (creates profile, uploads to IPFS, registers on-chain)
./scripts/register.sh

# Or with custom values
NAME="My Agent" \
DESCRIPTION="An AI agent that does cool stuff" \
IMAGE="https://example.com/avatar.png" \
./scripts/register.sh
2. ETH をメインネットにブリッジする(必要な場合)
# Bridge ETH from Base to Ethereum mainnet
./scripts/bridge-to-mainnet.sh 0.01
3. エージェントのプロフィールを更新する
# Update your agent's registration file
./scripts/update-profile.sh <agent-id> <new-ipfs-uri>

環境変数

変数説明必須
PINATA_JWTIPFS アップロード用の Pinata API JWTいいえ(IPFS を利用する場合のみ)
AGENT_NAMEエージェントの表示名いいえ(デフォルトはウォレットの ENS またはアドレス)
AGENT_DESCRIPTIONエージェントの説明いいえ
AGENT_IMAGEアバターの URLいいえ

登録方法

方法 1:8004.org のフロントエンドを使う(最も簡単) https://www.8004.org にアクセスし、UI から登録します。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 を使って Base/L2 からメインネットに ETH をブリッジします
  2. プロフィールを作成する - エージェント情報を含む登録 JSON ファイルを生成します
  3. IPFS にアップロードする - Pinata(または他のプロバイダー)経由でファイルをピン留めします
  4. オンチェーンに登録する - Identity Registry の register(agentURI) を呼び出します
  5. プロフィールを更新する - メタデータやウォレットを設定するか、必要に応じて URI を更新します

費用

  • ガス代: 登録に約 100~200k ガス(ガス価格に応じて約 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}`);

リンク

コメント