web3wagmi
← All standards

ERC-8001 Agent Coordination Framework

FinalERCcreated 2025-08-021 later proposal build on itrequires EIP-712, ERC-1271, ERC-2098, ERC-5267

Minimal, single-chain, multi-party agent coordination using EIP-712 attestations

Author: Kwame Bryan (@KBryan)

Functions this standard introduces (4)

0xb0238fc3cancelCoordination(bytes32,string)
0x223330d5getAgentNonce(address)view
0x9a001b07getCoordinationStatus(bytes32)view
0x808b986fgetRequiredAcceptances(bytes32)view

Events (4)

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

0xacde37a8bdf1b4e8d860c0bc7761700998c645538e0b0e82d4ddb849408becc9CoordinationProposed(bytes32,address,bytes32,uint256,uint256)
0x4a2ab4d283695ba88a29902489ba60a30360715a4c78d7bbd0d8a32832f2827aCoordinationAccepted(bytes32,address,bytes32,uint256,uint256)
0x043fce3906c170ea7e42dc454dc9505fde973726bf40487d684a5c6ec0baa1d7CoordinationExecuted(bytes32,address,bool,uint256,bytes)
0x8a9a765a352797a4de9716a03da2d64133c867373b5ac29ada8edd7350e94b14CoordinationCancelled(bytes32,address,string,uint8)

Custom errors (10)

0x767a5805ERC8001_NotProposer()
0x3fdef458ERC8001_ExpiredIntent()
0x62369e57ERC8001_ExpiredAcceptance(address)
0x24561500ERC8001_BadSignature()
0xe00fb7feERC8001_NotParticipant()
0xc811a0d7ERC8001_DuplicateAcceptance()
0xff5e49aaERC8001_ParticipantsNotCanonical()
0xe3806a93ERC8001_NonceTooLow()
0xfa277262ERC8001_PayloadHashMismatch()
0xa8ce9480ERC8001_NotReady()

Depends on (4)

Proposals this one names in its requires field.

Built on by (1)

Later proposals that name this one in their requires field.

What the specification covers

Compare with

Parsed from the canonical specification · discussion