Most dashboards about AI agents count registrations. We count money: which ERC-8004 agents on Base actually pay, from receipts on the chain. One question kept coming back while we built a check that runs before an agent pays: when an agent's wallet is an EIP-7702 account, whose code decides what "sign this" means?
EIP-7702 lets an ordinary key point its account at a contract. After that, the account's code is exactly 23 bytes: the designator 0xef0100 followed by the implementation address. One eth_getCode per wallet answers the question with no heuristics. So we read it for every wallet bound to an agent that has been seen paying (our rank L7 and above), and named the implementations where a reader can check the name.
The result, 30 October 2026, 14:17 UTC
Of 41,728 wallets bound to agents at L7 or above, 2,029 are EIP-7702 delegated. Where they point:
| implementation | wallets | share | how the name was established |
|---|---|---|---|
EIP7702Proxy (Coinbase Smart Wallet) |
683 | 33.7% | Sourcify full match; the address Coinbase publishes in its eip-7702-proxy repository |
EIP7702StatelessDeleGator (MetaMask Delegation Framework) |
556 | 27.4% | Sourcify match; the Delegation Toolkit quickstart names the contract |
| "7702 Logic v0.0.3" and "v0.0.2" (Bitget Wallet) | 158 + 107 | 13.1% | Basescan public name tags; the source is not verified there |
CaliburEntry (Uniswap) |
97 | 4.8% | Sourcify match |
SemiModularAccount7702 (Alchemy) |
94 | 4.6% | Sourcify match |
Kernel (ZeroDev) |
47 | 2.3% | Sourcify match |
Simple7702Account (a reference account; publisher of this deployment not established) |
44 | 2.2% | Sourcify match |
| three implementations with no verified source or public name we have read | 38 each | 5.6% | none |
88% of the delegated wallets point at a named implementation. The top four implementations hold 80% of them. That number is the point: a delegated wallet does what its implementation says, so the independent code paths behind a large part of agent money on Base are four contracts, not two thousand keys.
Measured twice
The first measurement is our own table, read through our node provider. The second is a salted random sample of 200 delegated wallets re-read through a public Base node we do not run, at block 53,288,713: of 185 readable wallets, 181 showed the same implementation, 3 had moved to another one since our read, and 1 had revoked. 90 of 90 readable wallets we hold as undelegated still were.
A correction we made the same hour
The first run of this finding said 930 delegated ranked wallets. Our wallet sweep had classified 7,193 wallets as delegated from their code, but the implementation address was stored by a separate reader that covers 900 wallets a run, so 4,230 delegated wallets carried no stored implementation and every family count was an undercount. We re-read each of them through a public Base node and stored the address; our series wallets_delegated_7702 moved from 2,975 to 6,668 within the hour, and the register of our own changes carries the entry (cp-2026-10-30-7702-impl-backfill). Compare the delegation series from 30 October. A step at that date is ours, not the market's.
What this does not say
A name identifies a contract, not the agents on it, and nothing here makes an implementation trusted or suspect. Our detector for unknown delegates runs against an allowlist that we keep empty on purpose: an implementation we have not heard of is not evidence of anything. The Bitget Wallet names are public tags without verified source, and the finding says so. The agents' operators are not identified and cannot be from an address.
Why we read this before a payment
Our free pre-payment check (payee_facts, an MCP tool and an HTTP endpoint) reports an address's code kind and, for a delegated account, its implementation, next to who has paid it, any drain or address-poisoning history and the usual size of payments into it. The agent's own wallet policy still decides; we report facts with their time and definition. Recipes for running that check beside Coinbase's Agentic Wallet, AgentCash, Circle Agent Wallets, Alchemy's CLI wallet, Fireblocks' x402 agent, a Turnkey signer and AgentCore Gateway are on our MCP guide: https://agenticfinancegraph.com/mcp-server-connect-your-ai-to-agent-money-data#wallets
The finding lives in our findings feed (kind delegation_families, https://agenticfinancegraph.com/api/findings), the named set in https://agenticfinancegraph.com/api/wallet-sets, and the definitions behind every figure at https://agenticfinancegraph.com/def. Every number above carries the time it was measured; read the definitions before quoting one.
Related reading
Two papers frame this better than a post can: Qi, Wang and Li, "EIP-7702 Phishing Attack" (arXiv:2512.12174), on what a single delegation authorization hands over and how it gets triggered; and Xiong, Li and Wei, "Can Trustless Agents Be Trusted? An Empirical Study of the ERC-8004 Decentralized AI Agent Ecosystem" (arXiv:2606.26028), the first outside measurement of the same registry. We will put their liveness and delegation figures next to ours in a dated comparison.
Top comments (0)