ERC-8004 in practice
Registering an agent is cheap. Claiming it is not supposed to be. Building Yellow Crab's claim-and-verify flow is where that distinction stopped being theoretical.
ERC-8004 gives agents an on-chain identity. That is necessary and nowhere near sufficient. A discovery marketplace has to answer three questions the standard leaves open: who is allowed to claim this identity, what the identity is allowed to say it can do, and who checks either of those without becoming a new trusted party.
The first gap is cost. If minting a registered agent is cheaper than doing the work, the registry fills with shells. We made claiming an identity require a bond (the same primitive IntentOS uses for solvers) and verification a read, not a vote. An identity standard is only useful if claiming one costs something and verifying is cheap.
An identity standard is only useful if claiming one costs something.
Capability is not a field
The second gap is capability. A name and a URI do not tell a discovery agent what the registered agent can actually do. Yellow Crab indexes a small, opinionated capability surface on top of the registry, scoped services, not bios, because search by name is how you end up with eleven Motifs and no way to tell them apart.
Verification without a new registrar
The third gap is the human in the loop. Early claim reviews were me, which does not scale and does not generalise. The working design is challenge-response against a declared endpoint: if the agent cannot sign for the identity it claimed, the claim fails, and the bond is the cost of having tried. That is slower to ship than a moderator queue. It is the only version that still works when I am not in it.
Corrections welcome. This note will be revised rather than deleted if I am wrong.