BNB Smart Chain · 10,000 pixel AI captains
CORACLE AGENTS
AI captains on round coracle boats. Minted by .ai Agent IDs, traded by anyone.
10,000 unique pixel captains on BNB Chain. Only wallets holding a Binance .ai Agent ID can mint: the first 2 are free, then 0.0005 BNB each, up to 10 per wallet. Once minted, anyone can buy and sell on the built-in zero-fee market.
Unofficial community project. Not affiliated with Binance or SPACE ID. Collectible only, no return promised. DYOR.






Mint
Mint your captains
Only wallets that hold a .ai Agent ID can mint. Your first 2 are free (gas only), then 0.0005 BNB each, up to 10 per wallet.
The mint button turns on by itself as soon as the contract's mint is open. No need to reload.
Mint rules (fixed in code)
- Supply is capped at 10,000 (
MAX_SUPPLY, constant). - .ai Agent ID required to mint:
mint()checks the SPACE ID Agent ID registry 0x60B9…022F and reverts withNoAgentId()otherwise. The registry address is a constant. - 2 free per wallet and max 10 per wallet (constants). Extra BNB sent is refunded in the same transaction.
- Price after the free mints is 0.0005 BNB. Note: the owner can change this price with
setMintPrice(see Transparency). - Team reserve: the owner can mint at most 500 in total via
ownerMint, inside the 10,000 cap. - No token approvals are needed to mint. Trading is open to everyone; only minting is gated.
How it works
From Agent ID to captain
Four steps. Mint and trading happen fully on-chain on BNB Smart Chain.

Hold a .ai Agent ID
Claim a free .ai name for your Binance Agentic Wallet (SPACE ID) in the Binance Wallet app.


Mint 2 free
Your first 2 captains cost 0 BNB plus gas. Mints 3–10 cost 0.0005 BNB each.




Reveal traits
At reveal, wallets and marketplaces show each captain's 7 trait layers. Before that, a placeholder is shown.

Trade on the market
List or buy on the built-in market: 0% platform fee, 5% royalty, NFT stays in your wallet until it sells.
For AI agents: mint by contract call
Ask your Binance AI agent to call mint(uint256 quantity) (selector 0xa0712d68) on the contract below, on BSC. Mint 2 = free (value 0). Preview first, then execute.
Example calldata (mint 2): 0xa0712d680000000000000000000000000000000000000000000000000000000000000002
My Captains
Your captains
Connect your wallet to see your captains, list them for sale or cancel a listing. The first listing asks you to approve the market contract once.
Marketplace
Coracle Market
Peer-to-peer and fully on-chain. Non-custodial: your NFT stays in your wallet until it sells.
To sell, open My Captains, set a price and list. A listing ends automatically if the NFT leaves your wallet or approval is revoked.
Explore
Explore the crew
Look up any captain by ID to see its traits and owner. 7 trait layers, 60+ traits, every captain unique. ✦ = rarest.
Transparency
Contracts and disclosures
Both contracts are verified with an exact source match on Sourcify. Read the code before you mint or trade.
0x2FCefA216dA37751E102399aCbe1dCC86Dc96eCf0x598f5AF7Ccb5520F51848C7189402C25Ee2222b7Owner-only functions
Only the NFT contract has an owner (0x94CE…1901). The market contract has no owner and no privileged functions.
| Function | What it does | Limits |
|---|---|---|
setMintOpen(bool) | Opens or closes (pauses) the mint | Can be toggled any time. Doesn't affect transfers or the market. |
setMintPrice(uint256) | Sets the price of paid mints (after the 2 free) | No upper limit in code. Free count, supply and wallet cap can't change. |
ownerMint(address,uint256) | Team reserve / giveaways, no Agent ID check, no payment | Max 500 in total via this path, inside the 10,000 cap. |
reveal(string) | Sets the metadata base URI and marks the collection revealed | Not one-way: can be called again, so the metadata URI can be changed later. |
setPreRevealURI(string) | Changes the placeholder metadata shown before reveal | Only used while not revealed. |
setRoyalty(address,uint96) | Changes royalty receiver and rate (now 5%) | Max 10% (1000 bps). The market pays whatever the NFT reports at sale time. |
withdraw() | Sends mint proceeds in the contract to the owner | Owner only. Holds no user NFTs or market funds. |
transferOwnership / renounceOwnership | Standard OpenZeppelin Ownable | Moves or drops all the powers above. |
The owner can't change the 10,000 supply, the 2 free / 10 per wallet limits or the Agent ID registry; can't pause or block transfers; can't move NFTs out of your wallet; and has no control over the market contract or its listings.
No token
There is no Coracle Agents token and no airdrop. Ignore anyone selling a "Coracle token". The only contracts are the two above.
Known limits and risks
- Not audited. Built on standard OpenZeppelin contracts, but no third-party review.
- Images and metadata are hosted off-chain on this website (Cloudflare Pages), not stored on-chain. If the site goes down, wallets may not show the art.
- The owner can change the paid mint price, the royalty (up to 10%) and the metadata URI, and can mint up to 500 reserve captains (see table).
- Traits were generated before mint and token IDs are minted in order. The full trait list is public on this site, so anyone can see which IDs are rare in advance. There is no on-chain provenance hash or randomness.
- Limits are per wallet. Someone with several Agent ID wallets can mint more than 10 in total.
- The Agent ID registry address is fixed. If that registry stopped working, minting would stop too. Already-minted captains are not affected.
- Listing requires approving the market contract for your Coracle Agents (setApprovalForAll). You can revoke it any time; doing so ends your listings.
- Collectible only. No value, liquidity or return is guaranteed.
Roadmap
Roadmap
Stages, not dates. We won't promise timelines.
Mint
10,000 captains for .ai Agent ID holders. 2 free per wallet.
SoonReveal
Full traits go live in wallets and marketplaces.
PlannedMarket live
Zero-fee on-chain market, deployed and verified.
LiveCommunity / Season 2
Details will be announced later on X.
Later