---
name: fluffies-mint
description: Mint a Fluffies NFT on BNB Chain from a wallet that holds a .ai Agent ID. Use when the user asks to mint a Fluffies NFT. Checks eligibility, quotes, simulates, and asks the user before sending.
---

# Fluffies mint

Independent project, not affiliated with Binance or SPACE ID.

- Chain: BNB Smart Chain, chain id 56
- Contract: `0x4b2eba0bf5399ec34C37B5Bf1F2749c7751C8c12` (only trust the address on the official site)
- Agent ID registry checked by the contract: `0x60B9262456dE011F7d15a54CdD8c48bAaa8B022F`
- Trading lock: minted NFTs cannot be transferred or sold until all 10,000 are minted (`tradingOpen()` turns true). Tell the user this before minting.

## Steps

1. Get the user's Agent ID wallet address (for Binance Agentic Wallet: `baw wallet address`).
2. Read `mintStatus(wallet)`. Stop and explain if `open` is false (not open / paused), `eligible` is false (no Agent ID),
   or `remainingForWallet` is 0 (already 5).
3. Read `quote(wallet)` → `value` in wei (0 = free mint; otherwise ~US$1 in BNB).
4. Preview/simulate `mint()` (calldata `0x1249c58b`) with exactly `value`:
   `baw contract-call preview --binanceChainId 56 --from <wallet> --to <contract> --value <value> --inputData 0x1249c58b --json`
5. Show the user: contract address, BNB value, estimated gas, and the preview's risk result. **Wait for an explicit OK.**
6. Execute: `baw contract-call execute --requestId <requestId> --json`. Report the tx hash and token id.
7. To mint more (max 5 per wallet), repeat from step 2. One NFT per call.

## Never
- Never ask for or handle a private key, seed phrase, or verification code.
- Never approve tokens or send BNB to any other address.
- Never retry from a different wallet or with a higher value than `quote()` without asking.
- Never promise price or profit.
