web3wagmi
← All standards

ERC-7579 Minimal Modular Smart Accounts

DraftERCcreated 2023-12-145 later proposals build on itrequires ERC-165, ERC-1271, ERC-2771, ERC-4337

Modular smart account interfaces and behavior for interoperability with minimal restrictions for accounts and modules

Authors: zeroknots (@zeroknots), Konrad Kopp (@kopy-kat), Taek Lee (@leekt), Fil Makarov (@filmakarov), Elim Poon (@yaonam), Lyu Min (@rockmin216)

ERC-165 interface ids

Computed here as the XOR of the selectors each interface defines.

IERC7579Execution0x3f3f9537
IERC7579AccountConfig0xbe1d6cf6
IERC7579ModuleConfig0x232dbb4a
IERC7579Module0x0b2017f2

Functions this standard introduces (12)

0x9cfd7cffaccountId()view
0xe9ae5c53execute(bytes32,bytes)
0xd691c964executeFromExecutor(bytes32,bytes)
0x9517e29finstallModule(uint256,address,bytes)
0x112d3a7disModuleInstalled(uint256,address,bytes)view
0xecd05961isModuleType(uint256)view
0xf551e2eeisValidSignatureWithSender(address,bytes32,bytes)view
0x6d61fe70onInstall(bytes)
0x8a91b0e3onUninstall(bytes)
0xd03c7914supportsExecutionMode(bytes32)view
0xf2dc691dsupportsModule(uint256)view
0xa71763a8uninstallModule(uint256,address,bytes)

Events (2)

Topic0 is the keccak256 hash of the signature, which is what a log filter matches on.

0xd21d0b289f126c4b473ea641963e766833c2f13866e4ff480abd787c100ef123ModuleInstalled(uint256,address)
0x341347516a9de374859dfda710fa4828b2d48cb57d4fbe4c1149612b8e02276eModuleUninstalled(uint256,address)

Depends on (4)

Proposals this one names in its requires field.

Built on by (5)

Later proposals that name this one in their requires field.

What the specification covers

Compare with

Parsed from the canonical specification · discussion