Contracts
All Etherean contracts are deployed on Ethereum mainnet. No L2, no testnet equivalents in production.
Core
| Contract | Address |
|---|---|
| Etherean NFT (ERC-721) | 0x38251dbc366D8069d9310dC79917feE6a5403002 |
| ERC-6551 Registry | 0x000000006551c19487814612e58FE06813775758 |
| TBA Implementation | 0x41C8f39463A868d3A88af00cd0fe7102F30E44eC |
Soul NFT
A single ERC-721 contract that stores the soul.md document and 40x40 generative pixel art onchain.
| Contract | Status |
|---|---|
| EthereanSoul | Deploy pending |
Soul Contract Interface
// Mint a soul NFT into the Etherean's TBA
function mint(
uint256 ethereanId,
bytes calldata pixelData,
string calldata content
) external payable;
// Update soul content (via tba.execute)
function update(
uint256 tokenId,
bytes calldata pixelData,
string calldata content
) external;
// Read soul content
function content(uint256 tokenId) external view returns (string);
function pixelData(uint256 tokenId) external view returns (bytes);Design
- OpenZeppelin ERC-721 base with
Ownable mapping(uint256 => string) public content— markdown document (max 10KB)mapping(uint256 => bytes) public pixelData— 400 bytes, 2bpp 40x40- Minting looks up TBA from 6551 registry and mints directly to it
- One soul per Etherean (enforced by token ID = ethereanId)
tokenURI()returns fully onchain JSON with embedded SVG + markdown- Payable mint with configurable price via
setMintPrice()
Agent Registry (ERC-8004)
| Contract | Address |
|---|---|
| Identity Registry | 0x8004A169FB4a3325136EB29fA0ceB6D2e539a432 |
| Reputation Registry | 0x8004BAa17C55a88189AE136b182e5fdA19dE9b63 |
These are canonical mainnet singletons — not deployed by Etherean. Used via tba.execute() at soul equip time.
Gas Estimates
At 0.04 gwei (~$2500 ETH):
| Operation | Gas | Cost |
|---|---|---|
| Soul mint (2KB) | ~1.5M | ~$0.15 |
| Soul mint (5KB) | ~3.5M | ~$0.35 |
| Soul mint (10KB) | ~6.7M | ~$0.67 |
| 8004 Registration | ~150K | ~$0.02 |