This proposal introduces a standard for AI agent NFTs. In order for AI Agents to be created and traded as NFTs it doesn’t make sense to put the prompts in the token metadata, therefore it requires a standard custom struct. It also needs doesn’t make sense to store the prompts directly onchain as they can be quite large, therefore this standard proposes they be stored as decentralized storage URLs. This standard also proposes two options on how this data should be made private to the owner of the NFT, with the favored implementation option being encrypting the data using custom contract parameters for decryption that decrypt only to the owner of the NFT.
Motivation
The creation and trading of AI Agent NFTs are a natural fit and offer the potential for an entirely new onchain market. This requires some custom data to be embedded in the NFT through a custom struct and this needs to be standardized so that any marketplace or AI Agent management product, among others, know how to create and parse AI Agent NFTs.
Nice work on this. The encrypted prompt storage approach makes sense for privacy.
Since the original proposal in most recent time AI Agent have really now surfaced, and my initial reaction was sure, I can just swap models around and things should still work, but realistically switching model isn’t quite going to work without univesal context file, which we likely won’t be having in near term.
Few things we ran into building L3/L4 equivalent agentic agents:
Model on-chain doesn’t work great in practice — when you switch models (GPT → Claude etc), the memory/context breaks. Different tokenizers, different formats. Ended up keeping model info off-chain. Because context updated files are LLM specific.
Agent signing — we gave agents their own EOA instead of deriving from owner. Owner controls the NFT, agent controls its operations. Agent encrypt and protect it’s own data, Owner does have over sight. EOA for agent should NOT be transferrd (once trasnferred it gets messy)
Cloning — original keeps everything, clone is what gets sold. Like Star Wars clones, same template but new individual (each should retain it’s own EOA)
Built on these with ERC-AINFT (PR #1558) and ERC-6551A (PR #1559) if anyone want to compare notes, also got DEMO running on both with live deploys.