Add registering-an-erc-8004-agent-on-base skill#38
Open
xam-dev-ux wants to merge 3 commits into
Open
Conversation
Collaborator
🟡 Heimdall Review Status
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #36
Summary
Adds
registering-an-erc-8004-agent-on-baseskill — a behavioral, phase-based registration flow for the ERC-8004 Identity Registry on Base Mainnet and Sepolia, following the same agent-behavioral pattern asregistering-agent-base-dev.Motivation
AI coding agents consistently produce wrong information about ERC-8004: stale contract addresses, treating the three registries as one contract, confusing
agentId(an ERC-721 tokenId) with wallet addresses. A skill with the canonical addresses and a "you MUST load this skill" signal in the description fixes this at the routing layer before a wrong call gets made.ERC-8004 is co-authored by Erik Reppel (Coinbase), Marco De Rossi (MetaMask), Davide Crapis (EF), and Jordan Ellis (Google). The Identity Registry is live on Base Mainnet with >256,000 agents registered. Contracts verified on-chain (version 2.0.0, "AgentIdentity" ERC-721) before opening this PR.
registering-agent-base-devcovers ERC-8021 (builder-code attribution) — a completely different standard. Zero overlap.This was tested live on Base Sepolia before opening this PR
Full end-to-end flow executed against
0x8004A818BFB912233c491871b3d84c89A494BD9e:balanceOfpre-flight check →0(no prior registration)register()with no URI → agentId 6199 (fromRegisteredevent)data:application/json;base64,...setAgentURI(6199, dataURI)→ confirmed on-chainownerOf(6199),tokenURI(6199)(decoded JSON),getAgentWallet(6199)— all read back correctlybalanceOfpost-registration →1The EIP-712 typed data for
setAgentWalletwas verified against the contract source:AgentWalletSet(uint256 agentId, address newWallet, address owner, uint256 deadline)— theownerfield is required and frequently missing from third-party documentation.Scope
ERC8004SPEC.md)register()overloads in viem +castone-liners for both networkssetAgentURI()for post-mint URI updatessetAgentWallet()with correct EIP-712 typed data (EOA + ERC-1271)ownerOf,tokenURI,getAgentWalletOut of scope
Checklist
registering-an-erc-8004-agent-on-baseskill #36registering-agent-base-deverc-8004/erc-8004-contractsREADMEERC8004SPEC.md