サービス レジストリは、HALO レコードを ERC-8004 ID にバインドできます。 HALO は、トランザクション データを準備し、確認されたチェーン結果を検証し、安定したメタデータ ドキュメントを提供します。
#登録フロー
- 1サービス ドラフトを作成する
最初に説明的なメタデータとオプションの DNS インテントを保存します。
- 2登録の準備
prepare-registerを呼び出して、トランザクション データと正確な HALO メタデータ URL を受け取ります。 - 3オーナー ウォレットから送信します
返されたトランザクションを設定されたチェーン上でブロードキャストします。
- 4トランザクションの確認
HALO は、ID をバインドする前に、登録済みイベント、
ownerOf、トークン URI、所有者証明を検証します。 - 5URI をアクティブ化
必要に応じて、最終的な set-URI トランザクションを準備して確認します。
POST
/api/v1/agents/:id/erc8004/prepare-registerPOST
/api/v1/agents/:id/erc8004/confirm-registerPOST
/api/v1/agents/:id/erc8004/prepare-set-uriPOST
/api/v1/agents/:id/erc8004/confirm-uri#所有者の証明
確認操作には、現在のオンチェーン所有者からの署名が必要です。 HALO は、正確な所有者証明メッセージをレコード内で返すか、署名がない場合は 401 応答で返します。
#管理されたメタデータ
{
"type": "https://eips.ethereum.org/EIPS/eip-8004#registration-v1",
"name": "Schedule Service",
"services": [
{
"name": "Schedule",
"endpoint": "https://service.example.com/runtime",
"version": "v1"
}
],
"x402Support": true,
"active": true,
"registrations": [
{
"agentRegistry": "eip155:{chainId}:{registryAddress}",
"agentId": "{tokenId}"
}
],
"supportedTrust": ["identity-reference"],
"halo": {
"canonicalAgentId": "eip155:{chainId}:{registryAddress}:{tokenId}",
"metadataHost": {
"provider": "agihalo",
"managed": true,
"contentHash": "sha256:..."
}
}
}#DNS 検証
dnsDomain が構成されている場合、HALO はサービスに割り当てられた証明値を含む_agihalo.example.comのような TXT レコードを期待します。検証により管理メタデータは更新されますが、ウォレットの所有権は置き換えられません。