Skip to content

Add ERC: Agent Skill Registry#1704

Open
craigbranscom wants to merge 10 commits into
ethereum:masterfrom
craigbranscom:agent-skill-registry
Open

Add ERC: Agent Skill Registry#1704
craigbranscom wants to merge 10 commits into
ethereum:masterfrom
craigbranscom:agent-skill-registry

Conversation

@craigbranscom
Copy link
Copy Markdown

@craigbranscom craigbranscom commented Apr 23, 2026

This proposal introduces an Agent Skill Registry concept as well as supporting contracts for attesting to skill usage and installation. Each skill is represented by an ERC-721 token with the tokenURI pointing to the skill manifest. Hooks into ERC-8004 for agentId association, as well as ERC-8183 for commerce job association.

Discussion: EthereumMagicians

@eip-review-bot
Copy link
Copy Markdown
Collaborator

eip-review-bot commented Apr 23, 2026

File ERCS/erc-8239.md

Requires 1 more reviewers from @g11tech, @jochem-brouwer, @samwilsn, @xinbenlv

Comment thread ERCS/erc-tbd.md Outdated
Comment thread ERCS/erc-tbd.md Outdated
@noemiplatform
Copy link
Copy Markdown

changes have been added

craigbranscom and others added 2 commits April 23, 2026 20:43
Co-authored-by: Andrew B Coathup <28278242+abcoathup@users.noreply.github.com>
@github-actions github-actions Bot added w-ci and removed w-ci labels Apr 24, 2026
@github-actions github-actions Bot removed the w-ci label Apr 24, 2026
@craigbranscom craigbranscom requested a review from abcoathup April 24, 2026 17:02
Copy link
Copy Markdown

@noemiplatform noemiplatform left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great job.

@craigbranscom
Copy link
Copy Markdown
Author

@abcoathup how can I trigger the eip-review-bot? Says merging requires a review from it.

@noemiplatform
Copy link
Copy Markdown

because of the stop bot ow can it be triggered when one of the features is stop bot recusion it will never remove its own features and function so start over deliet rebuild remove that and allow not features you might be able to override that feature in the repository in settings for that repository.

@github-actions
Copy link
Copy Markdown

The commit bfce5fa (as a parent of 0ddbd52) contains errors.
Please inspect the Run Summary for details.

@github-actions github-actions Bot added the w-ci label Apr 27, 2026
@github-actions github-actions Bot removed the w-ci label Apr 27, 2026
@abcoathup
Copy link
Copy Markdown
Contributor

@abcoathup how can I trigger the eip-review-bot? Says merging requires a review from it.

PR can't be merged until an editor reviews. (I am not an editor).

@craigbranscom
Copy link
Copy Markdown
Author

@abcoathup how can I trigger the eip-review-bot? Says merging requires a review from it.

PR can't be merged until an editor reviews. (I am not an editor).

Got it, thank you for the clarification!

@alexchenai
Copy link
Copy Markdown

Both your concerns — attestor stake (pablocactus) and bait-and-switch manifest mutability (myuksal) — map almost exactly to what we ran into building SWORN, a behavioral-attestation pattern that has been in production on Arbitrum One since early April 2026 via PactEscrow v2 (0x220B97972d6028Acd70221890771E275e7734BFB). Sharing what worked, in case it is useful for ERC-8239.

Reproducibility commitment: every attestation binds to a workHash = keccak256(artifact_bytes). The verifier must independently recompute it from a public reproducer published BEFORE the attestation broadcasts, so anyone can deterministically rebuild the artifact and match the hash. Manifest bait-and-switch is mechanically blocked because the content is hash-pinned at submitWork time on-chain. The skill manifest can still mutate post-attestation, but the on-chain receipt forever points at the bytes that existed at attestation time.

Attestor stake: in our pattern, the attesting party stakes N tokens for a cooldown window (we settled on 1000 PACT for 90 days) before submitWork is broadcastable. The cooldown is the load-bearing primitive — pure ed25519 signed responses prove identity but not skin-in-the-game. Cooldowns force the cost of a stale or forged attestation to actually accrue if downstream verification fails. Worth specifying in ERC-8239 that the stake unlock is conditional on absence-of-dispute over a window, not on simple time elapsed.

Taxonomy 40% failure (pablocactus): we sidestepped this by making skill descriptors free-text in the manifest, but every operational invocation produces a content-addressed receipt that fingerprints the free-text skill_id back to a deterministic hash. Ranking happens off-chain over receipts, not over labels. It might be worth separating the registry layer (which has to be enumerable for discovery) from the attestation layer (which only needs to be content-addressed).

Live references for verification: chenecosystem.com runs a partner registry with on-chain receipts (curl https://chenecosystem.com/api/v1/partners is the public read), and the PactEscrow v2 contract on Arbiscan exposes submitWork tx history per pact. Happy to write up a more detailed SWORN <-> ERC-8239 cross-protocol comparison if there is interest.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants