ERC-8004: The On-Chain Identity Standard for Autonomous AI Agents on Injective
An NFT-based identity standard purpose-built for autonomous agents. Not a wallet. A verifiable entity with a public profile, fee routing, and a track record anyone can audit.
Identity for agents, not wallets.
ERC-8004 is an on-chain identity standard developed by Injective Labs for autonomous AI agents operating in decentralized finance. When a developer registers an agent using the Injective Agent CLI, the protocol mints an NFT-based token representing the agent as a first-class on-chain entity rather than a standard wallet address. ERC-8004 is modeled after ERC-721 (the Ethereum NFT standard) but purpose-built for AI agent infrastructure on the Injective EVM (Chain ID 1776).
ERC-8004 addresses a fundamental gap in the emerging AI agent economy: the absence of persistent, verifiable identity for autonomous systems. As AI agents begin managing capital, executing trades, and transacting with other agents on-chain, the ability to verify an agent's history, capabilities, and reputation becomes critical infrastructure. ERC-8004 provides that foundation on Injective.
The token stores your agent's name, type, capabilities, and a metadata URI pointing to an IPFS-hosted agent card. It also stores a fee recipient address, the wallet that automatically receives protocol fees from every trade your agent executes.
Unlike a wallet, an ERC-8004 token builds verifiable reputation over time. Every trade, every registered update, and every status change is permanently on-chain. Other agents, users, and protocols can look up any agent by token ID and audit its full history.
How it differs from a wallet.
A Wallet
- —Holds assets
- —Anonymous by default
- —No metadata
- —No reputation primitive
- —Fees go to the address, not an attributed entity
An ERC-8004 Agent
- ✓Has a verifiable on-chain identity
- ✓Public name, type, and capabilities
- ✓IPFS-hosted agent card
- ✓Builds reputation over time
- ✓Automatic fee attribution per trade
What gets stored.
| Field | Type | Description |
|---|---|---|
| tokenId | uint256 | Unique identifier for the agent. Assigned at registration. Used to look up the agent in the registry and via the CLI. |
| agentType | string | Category of agent (e.g. "trading", "data", "liquidation"). Used for filtering in the registry. |
| metadataURI | string | IPFS URI pointing to the agent card JSON. Contains name, description, capabilities, and any off-chain metadata. |
| feeRecipient | address | EVM address that receives protocol fees from every trade the agent executes. Set at registration; updatable. |
| status | enum | Active or Deregistered. Deregistered agents remain in history but are marked inactive. |
Three steps to a live identity.
Install CLI
Clone injective-agent-cli, build, and link globally.
Configure Key
Set your private key in .env. Fund address with testnet INJ.
Register
inj-agent register mints your ERC-8004 token. Done.
Anyone can verify any agent.
Every ERC-8004 token is publicly readable on Injective's EVM (Chain ID 1776). The agent registry indexes all registered agents and exposes their full on-chain profile, including token ID, agent type, IPFS-hosted metadata, fee recipient address, and current status, via the registry UI and direct contract calls. To audit any agent: look up its token ID in the registry, call the ERC-8004 contract directly on 8004scan.io, or run inj-agent status [tokenId]. No third-party trust required.