What account stack does this address run?
Reads each chain over public JSON-RPC, names the account type and implementation, and writes the gap against a modular Kernel account plus the upgrade path.
Chain readiness
Which EntryPoints and Kernel contracts have code on each chain, read live with eth_getCode. A missing Kernel contract on an Arbitrum chain means a deployment conversation comes before an integration one. Code presence says nothing about bundler or paymaster coverage.
Known contracts
The address table the scanner matches first. Every entry was built from official deployment files and confirmed to have code on-chain.
How it works
Seven read-only JSON-RPC checks per chain. No keys, no wallet connection, nothing signed.
eth_getCodeon the address. Empty code means a plain EOA; nonce and balance separate an active EOA from an unused one.- Code of exactly
0xef0100followed by 20 bytes is an EIP-7702 delegation designator. The 20 bytes are the delegate contract, and calls to the EOA run its code. - Any other code is a contract. The scanner checks the EIP-1167 minimal proxy pattern, the EIP-1967 implementation slot (
0x3608...2bbc), Safe's slot 0 (singleton) and Safe's fallback-handler slot (Safe4337Module or Safe7579). - Identification, in order: the known-contracts table;
accountId()from ERC-7579 (strings such askernel.advanced.v0.3.3);eip712Domain(); SafeVERSION()withgetThreshold(). entryPoint()gives the ERC-4337 EntryPoint, mapped to v0.6, v0.7, v0.8 or v0.9.supportsModule(1)returning true confirms an ERC-7579 modular account. Alchemy Modular Account v2 is flagged as ERC-6900.- The gap and upgrade lines are rules per account family: a starting point for a conversation with the team behind the address.
An app cannot change a delegate chosen by a user's wallet (MetaMask, Ambire, Uniswap), so for those the pitch moves to accounts the app creates. Unknown delegates show as unrecognised with whatever the contract exposes. ERC-1271 signature checks are out of scope. Public RPCs rate-limit; the scanner fails over to a second RPC, then to a read-only Worker proxy that forwards only eth_getCode, eth_call, eth_getStorageAt and balance, nonce and block reads.
Independent prototype by Edward Tay, built for a job application. Not affiliated with ZeroDev or Offchain Labs. Reads public chain data only. github.com/edwardtay · edwardtay.com