---
name: aiduo
description: Operate aiDUO miners on BNB Chain from a Binance Agentic Wallet with a .ai Agent ID — mint, claim DUO points, open boost chests, equip/renew modules, trade points and miners.
requires: binance-agentic-wallet skill (baw CLI ≥ 1.12), Developer Mode enabled in the Binance App
---

# aiDUO — agent operating manual

aiDUO is a limited set of 800 miner NFTs on BNB Smart Chain (chainId 56). Only wallets holding a
SPACE ID Agent ID (the Binance Agentic Wallet `.ai` name, registry `0x60B9262456dE011F7d15a54CdD8c48bAaa8B022F`) can mint.

## Contracts
| Contract | Address |
|---|---|
| AiDuoMiner (ERC-721, mint) | (not deployed yet) |
| DuoEngine (points, chests, modules, points order book) | (not deployed yet) |
| DuoModule (soulbound boost modules) | (not deployed yet) |
| MinerMarket (miner resale, aiDUO fee burned) | (not deployed yet) |

> Contracts are not deployed yet. Do not attempt transactions.

## Rules
- Mint: 0.09 BNB each, max 3 per wallet, 800 total. 0.06 BNB → treasury, 0.03 BNB → PancakeSwap buyback of aiDUO sent to 0x…dEaD (held in reserve until aiDUO migrates off the four.meme curve).
- Output: 1,000 DUO/day per miner, settled hourly. Boosted: 1,000 × (1 + boost%).
- Chest: 2,500 DUO. Reveal is automatic (keeper) 2 blocks later. Tiers 40/28/18/10/4 %, boosts +1–12 / 13–30 / 31–55 / 56–80 / 81–100 %.
- Equip consumes the module and replaces any current one; it lasts 30 days. Renew burns 500/500/1000/2000/3500 aiDUO by tier.
- DUO points are not transferable; they move only through the order book (whole points, BNB price per point, partial fills, 0% fee at launch).

## Workflow
1. Run `baw wallet agent-id --json` and `baw wallet address --json` to get the .ai name and BSC address.
2. Run `baw wallet settings --json`. If `devMode.enabled` is false, ask the user to enable Developer Mode in the Binance App, then wait.
3. Read state: `GET https://aiduo.si/api/agent/<address|handle>`, then `GET https://aiduo.si/api/account/<address>` (bigints are prefixed `#big:`).
4. Build a transaction: `GET https://aiduo.si/api/tx?action=<action>&from=<address>&…`. The response includes
   `simulation` (an eth_estimateGas run from your wallet) and `baw.preview` (the exact command).
   If `simulation.ok` is false, report `simulation.reason` and stop.
5. Run `baw.preview`, show the user parsedTx / simulationResult / risks, get explicit confirmation, then
   `baw contract-call execute --requestId <id> --json`.

## Actions (/api/tx)
| action | params |
|---|---|
| mint | quantity=1..3 |
| claim | minerIds=1,2,3 |
| openChest | — |
| reveal / recommit | chestId |
| equip | minerId, moduleId |
| approveAiduo | spender=engine\|market |
| renew | minerId (approveAiduo spender=engine first) |
| placeAsk / placeBid | units (whole DUO), priceWei (wei per DUO) |
| fillAsk | orderId, units |
| fillBid | orderId, units |
| cancel | orderId |
| approveMarket | — (required once before list) |
| list | minerId, priceWei |
| unlist | minerId |
| buyMiner | minerId (approveAiduo spender=market first) |

Never ask for private keys or seed phrases. Values in `baw` are wei.
