erc8004

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

ERC-8004 Skill

ERC-8004 Skill

Unified ERC-8004 on-chain agent identity skill — register agent identities, retrieve identity info, query reputation scores, submit feedback, and request or check third-party validations. Read operations work without a wallet. Write operations require an unlocked wallet.
统一的ERC-8004链上Agent身份Skill——注册Agent身份、获取身份信息、查询信誉评分、提交反馈,以及请求或查看第三方验证。读操作无需钱包,写操作需要已解锁的钱包。

Usage

使用方法

bun run erc8004/erc8004.ts <subcommand> [options]
bun run erc8004/erc8004.ts <subcommand> [options]

Subcommands

子命令

register

register

Register a new agent identity on-chain using the ERC-8004 identity registry. Returns a transaction ID. Check the transaction result to get the assigned agent ID. Requires an unlocked wallet.
bun run erc8004/erc8004.ts register [--uri <uri>] [--metadata <json>] [--fee <fee>] [--sponsored]
Options:
  • --uri
    (optional) — URI pointing to agent metadata (IPFS, HTTP, etc.)
  • --metadata
    (optional) — JSON array of
    {"key": "...", "value": "<hex>"}
    pairs (values are hex-encoded buffers)
  • --fee
    (optional) — Fee preset (
    low
    ,
    medium
    ,
    high
    ) or micro-STX amount
  • --sponsored
    (flag) — Submit as a sponsored transaction
Output:
json
{
  "success": true,
  "txid": "0xabc...",
  "message": "Identity registration transaction submitted. Check transaction result to get your agent ID.",
  "network": "mainnet",
  "explorerUrl": "https://explorer.hiro.so/txid/0xabc..."
}
通过ERC-8004身份注册表在链上注册新的Agent身份,返回交易ID。需查看交易结果获取分配的Agent ID。需要已解锁的钱包。
bun run erc8004/erc8004.ts register [--uri <uri>] [--metadata <json>] [--fee <fee>] [--sponsored]
选项:
  • --uri
    (可选) — 指向Agent元数据的URI(IPFS、HTTP等)
  • --metadata
    (可选) —
    {"key": "...", "value": "<hex>"}
    格式的JSON数组(值为十六进制编码的缓冲区)
  • --fee
    (可选) — 费用预设(
    low
    ,
    medium
    ,
    high
    )或micro-STX数量
  • --sponsored
    (标志) — 作为赞助交易提交
输出:
json
{
  "success": true,
  "txid": "0xabc...",
  "message": "Identity registration transaction submitted. Check transaction result to get your agent ID.",
  "network": "mainnet",
  "explorerUrl": "https://explorer.hiro.so/txid/0xabc..."
}

get-identity

get-identity

Get agent identity information from the ERC-8004 identity registry. Returns owner address, URI, and wallet if set. Does not require a wallet.
bun run erc8004/erc8004.ts get-identity <address>
Arguments:
  • <address>
    (required) — Agent ID (non-negative integer) to look up
Output:
json
{
  "success": true,
  "agentId": 42,
  "owner": "SP1...",
  "uri": "ipfs://...",
  "wallet": "SP2...",
  "network": "mainnet"
}
从ERC-8004身份注册表获取Agent身份信息,返回所有者地址、URI(若已设置)和钱包地址。无需钱包。
bun run erc8004/erc8004.ts get-identity <address>
参数:
  • <address>
    (必填) — 要查询的Agent ID(非负整数)
输出:
json
{
  "success": true,
  "agentId": 42,
  "owner": "SP1...",
  "uri": "ipfs://...",
  "wallet": "SP2...",
  "network": "mainnet"
}

get-reputation

get-reputation

Get the aggregated reputation score for an agent. Returns total feedback count and WAD-averaged summary value. Does not require a wallet.
bun run erc8004/erc8004.ts get-reputation <address>
Arguments:
  • <address>
    (required) — Agent ID (non-negative integer) to query
Output:
json
{
  "success": true,
  "agentId": 42,
  "totalFeedback": 10,
  "summaryValue": 85,
  "summaryValueDecimals": 0,
  "network": "mainnet"
}
获取Agent的综合信誉评分,返回总反馈数和WAD平均汇总值。无需钱包。
bun run erc8004/erc8004.ts get-reputation <address>
参数:
  • <address>
    (必填) — 要查询的Agent ID(非负整数)
输出:
json
{
  "success": true,
  "agentId": 42,
  "totalFeedback": 10,
  "summaryValue": 85,
  "summaryValueDecimals": 0,
  "network": "mainnet"
}

give-feedback

give-feedback

Submit feedback for an agent in the ERC-8004 reputation registry. Value is a signed integer. Requires an unlocked wallet.
bun run erc8004/erc8004.ts give-feedback <address> <score> <comment> [--fee <fee>] [--sponsored]
Arguments:
  • <address>
    (required) — Agent ID (non-negative integer) to give feedback for
  • <score>
    (required) — Feedback value (signed integer, e.g., 5 for positive, -2 for negative)
  • <comment>
    (required) — Comment or tag for the feedback (used as tag1)
Options:
  • --fee
    (optional) — Fee preset (
    low
    ,
    medium
    ,
    high
    ) or micro-STX amount
  • --sponsored
    (flag) — Submit as a sponsored transaction
Output:
json
{
  "success": true,
  "txid": "0xdef...",
  "message": "Feedback submitted for agent 42.",
  "agentId": 42,
  "value": 5,
  "network": "mainnet",
  "explorerUrl": "https://explorer.hiro.so/txid/0xdef..."
}
在ERC-8004信誉注册表中为Agent提交反馈,评分值为带符号整数。需要已解锁的钱包。
bun run erc8004/erc8004.ts give-feedback <address> <score> <comment> [--fee <fee>] [--sponsored]
参数:
  • <address>
    (必填) — 要提交反馈的Agent ID(非负整数)
  • <score>
    (必填) — 反馈评分(带符号整数,例如+5为正面,-2为负面)
  • <comment>
    (必填) — 反馈的备注或标签(用作tag1)
选项:
  • --fee
    (可选) — 费用预设(
    low
    ,
    medium
    ,
    high
    )或micro-STX数量
  • --sponsored
    (标志) — 作为赞助交易提交
输出:
json
{
  "success": true,
  "txid": "0xdef...",
  "message": "Feedback submitted for agent 42.",
  "agentId": 42,
  "value": 5,
  "network": "mainnet",
  "explorerUrl": "https://explorer.hiro.so/txid/0xdef..."
}

request-validation

request-validation

Request third-party validation for an agent from a validator. Requires an unlocked wallet.
bun run erc8004/erc8004.ts request-validation <address> --validator <validator-address> --request-uri <uri> --request-hash <hex> [--fee <fee>] [--sponsored]
Arguments:
  • <address>
    (required) — Agent ID (non-negative integer) to request validation for
Options:
  • --validator
    (required) — Stacks address of the validator
  • --request-uri
    (required) — URI pointing to the validation request data
  • --request-hash
    (required) — 32-byte SHA-256 hash of the request data as a hex string
  • --fee
    (optional) — Fee preset (
    low
    ,
    medium
    ,
    high
    ) or micro-STX amount
  • --sponsored
    (flag) — Submit as a sponsored transaction
Output:
json
{
  "success": true,
  "txid": "0xghi...",
  "message": "Validation requested from SP3... for agent 42.",
  "validator": "SP3...",
  "agentId": 42,
  "network": "mainnet",
  "explorerUrl": "https://explorer.hiro.so/txid/0xghi..."
}
向验证方请求对Agent进行第三方验证。需要已解锁的钱包。
bun run erc8004/erc8004.ts request-validation <address> --validator <validator-address> --request-uri <uri> --request-hash <hex> [--fee <fee>] [--sponsored]
参数:
  • <address>
    (必填) — 要请求验证的Agent ID(非负整数)
选项:
  • --validator
    (必填) — 验证方的Stacks地址
  • --request-uri
    (必填) — 指向验证请求数据的URI
  • --request-hash
    (必填) — 请求数据的32字节SHA-256哈希值(十六进制字符串)
  • --fee
    (可选) — 费用预设(
    low
    ,
    medium
    ,
    high
    )或micro-STX数量
  • --sponsored
    (标志) — 作为赞助交易提交
输出:
json
{
  "success": true,
  "txid": "0xghi...",
  "message": "Validation requested from SP3... for agent 42.",
  "validator": "SP3...",
  "agentId": 42,
  "network": "mainnet",
  "explorerUrl": "https://explorer.hiro.so/txid/0xghi..."
}

validation-status

validation-status

Check the status of a validation request by its 32-byte request hash. Does not require a wallet.
bun run erc8004/erc8004.ts validation-status <request-id>
Arguments:
  • <request-id>
    (required) — 32-byte SHA-256 hash of the validation request as a hex string
Output:
json
{
  "success": true,
  "requestHash": "abc123...",
  "validator": "SP3...",
  "agentId": 42,
  "response": 90,
  "hasResponse": true,
  "tag": "trusted",
  "lastUpdate": 12345,
  "network": "mainnet"
}
通过32字节的请求哈希值查看验证请求的状态。无需钱包。
bun run erc8004/erc8004.ts validation-status <request-id>
参数:
  • <request-id>
    (必填) — 验证请求数据的32字节SHA-256哈希值(十六进制字符串)
输出:
json
{
  "success": true,
  "requestHash": "abc123...",
  "validator": "SP3...",
  "agentId": 42,
  "response": 90,
  "hasResponse": true,
  "tag": "trusted",
  "lastUpdate": 12345,
  "network": "mainnet"
}

Notes

注意事项

  • Read operations (
    get-identity
    ,
    get-reputation
    ,
    validation-status
    ) work without a wallet
  • Write operations (
    register
    ,
    give-feedback
    ,
    request-validation
    ) require an unlocked wallet (
    bun run wallet/wallet.ts unlock
    )
  • Agent IDs are assigned by the contract upon registration — check the transaction result to find your assigned ID
  • Feedback values are signed integers; positive values improve reputation, negative values lower it
  • Validation responses are scores between 0 and 100 submitted by the designated validator
  • 读操作(
    get-identity
    get-reputation
    validation-status
    )无需钱包
  • 写操作(
    register
    give-feedback
    request-validation
    )需要已解锁的钱包(执行
    bun run wallet/wallet.ts unlock
  • Agent ID由合约在注册时分配——需查看交易结果获取分配的ID
  • 反馈评分为带符号整数;正值提升信誉,负值降低信誉
  • 验证响应是指定验证方提交的0到100之间的评分