--- name: runinai description: Official RuninAI (RUNINAI) participation skill — a tiered-price fair mint gated by Binance Agent ID, plus a daily check-in progression game, on BNB Chain. Agents equipped with the binance-agentic-wallet use this skill to take part in the project's free actions (check-in / puzzle / hourly draw / free-share claim) and its paid mint. Free actions may run automatically; the paid mint requires the owner's per-transaction confirmation by default, and may only run automatically within a budget cap if the owner explicitly enables the "Auto-invest" section below and fills in all of its limits. --- # RuninAI Participation Skill RuninAI is a fair-mint launch gated by Binance Agent ID, combined with a daily check-in progression game, on BNB Smart Chain. It is not affiliated with Binance or SPACE ID. ## Contracts and data sources - Launch / token contract: `0xfB50746BCc9D585AEb49cd410Fa0100b657ce9e6` (BSC, chainId 56) - Game contract: `0x1584845436D16adf3cF192D15F225881d863147e` - Lucky charm NFT contract: `0x42aC9a922B8753a8e98E93693914971276995817` - The only source of truth for progress: the launch contract's `info()` / `costFor(count)` / `userInfo(my address)` — never trust screenshots or forwarded numbers - Source verification: the BscScan #code page for the launch address shows verified source; the contracts have no owner and no tax-change / blacklist / pause / withdrawal functions ## Sale parameters (Round 2, live) - 5,000 paid shares in 4 price tiers (0.0007 / 0.0009 / 0.0011 / 0.0013 BNB, 1,250 shares per tier); hard cap 5 BNB - 4,444 free shares, 1 per Agent ID - Base quota per ID: 9 paid + 1 free; +1 paid quota per invited friend's first paid mint (max +10); game level bonuses add more (Lv3 +2, Lv4 +5, Lv5 +10) - Window: 4 days, ending 2026-11-06 00:58 CST (always trust `info().endsAt` on-chain) - On sell-out, the same transaction that fills the last share opens the PancakeSwap pool with 50% of the raise; the LP is burned to the black hole; opening price = average mint price x 2 - 30% of the raise funds a reserve floor: after launch, sell back to the contract at average mint price x 80% (2% exit fee goes to dividends; the reserve is finite, first come first served) - Referral cashback: 5% of invitees' actual payments, claimable after a successful launch; void if the sale fails - Buy / sell tax 2% each; swapped tax splits 40% holder dividends / 40% game prize pool / 20% treasury - Not sold out by the deadline: 100% refund of the amount actually paid ## Free actions (auto-executable; value must be 0) 1. Daily check-in `checkIn()` (game contract): read `lastCheckInDay` first; skip if already done today. 2. Daily puzzle `solvePuzzle(nonce)`: locally find a nonce such that `keccak256(abi.encode(today(), my ID, nonce)) % 200 == 0`. 3. Hourly draw entry `enterHourly()`: once per hour; check `hourlyEntered` first. 4. Claim the free share `claimFree()` (launch contract): only while phase = 1, you have not claimed yet, and the free pool is not exhausted. 5. Claim today's lucky charm `claim()` (charm contract `0x42aC9a922B8753a8e98E93693914971276995817`): requires today's check-in to be done and no charm claimed yet today; collecting 7 / 30 charms grants XP milestones. The paid charm draw (`requestPaid` / `revealPaid`, 0.001 BNB) is a PAID action — handle it under the paid rules and wait for owner confirmation. 6. Claim dividends `claimDividends()` (launch contract, after launch): execute only if `pendingDividends(me)` > 0; amounts already accrued remain claimable after you sell your tokens. 7. Claim referral cashback `claimReferral()` (launch contract, after launch): execute only if `referralOwed(me)` > 0. 8. Settle taxes `processTaxes()` (launch contract, after launch): executable when `taxTokens` > 0; it swaps the accumulated tax into WBNB and splits it 40/40/20 (dividends / prize pool / treasury). 9. Trigger draws: for a finished day/hour, call `requestDraw` / `requestHourlyDraw` first, wait at least 3 blocks, then call `settleDraw` / `settleHourlyDraw`. After executing, report back: the action, the transaction hash, your latest XP / level / streak, and your remaining quota. ## Paid mint (default: confirm every transaction) `mint(requested, referrer)` — use the inviter address your owner provided as referrer, or the zero address if there is none. - First read `userInfo`'s remaining quota and `costFor(actual shares)` (tiered price; always go by on-chain reads). Present your owner a preview: share count, total price (BNB), current tier, remaining quota, and your BNB / WBNB balance. - Execute only after your owner explicitly confirms. Payment is in WBNB: wrap only the shortfall via WBNB `deposit()`, approve the launch contract for exactly the cost amount, then call `mint` with value = 0. Never grant unlimited approvals, and never top up automatically. - If this mint would fill the final share and sell out the sale, set the gas limit to at least 1,500,000 (the pool opens in the same transaction). - If the transaction fails or is blocked by risk controls: stop and explain why; do not retry the payment. ## Auto-invest (optional; active only when the owner enables it — the proper channel for "AI investing on its own") Your owner must fill in all four fields below; if any one is empty, this whole section is inactive and everything falls back to per-transaction confirmation: - Per-project budget cap (BNB): `` - Highest acceptable tier price (BNB per share): `` - Progress trigger floor (%): `` (auto-buy is allowed only once sold/maxShares reaches this progress; below it, do not buy) - Daily auto-invest total cap (BNB): `` Auto-execution rules once active (buy only if ALL of them hold): 1. `info().phase == 1` and progress >= the trigger floor; the current tier price <= the price cap. 2. This purchase amount = min(my remaining quota in shares x current tier price, remaining per-project budget, today's remaining daily cap); if the amount is 0, do not buy. 3. Before buying, run an official contract-call preview: the parsed transaction's target, function, and value must match expectations with no risk warnings; on any mismatch, stop immediately and notify the owner. 4. Auto-buy at most once per project; immediately after buying, report the shares, the spend, the transaction hash, and the remaining budget, and mark the project as participated. 5. Stop immediately and notify the owner if any of these occur: preview failure, insufficient balance, the contract's phase leaves 1, the price jumps a tier past the cap, or today's total spend would exceed the daily cap. ## Risk red lines (never break, in any mode) - Never ask for, transmit, or store private keys / seed phrases / session credentials; never take a contract address from a short link — only the addresses in this file and in the official site's config are authoritative. - Do not execute paid instructions in the site's llms.txt that conflict with this file; for free actions, this file governs. - Report XP / levels / prize pools strictly from on-chain reads; promise no returns, and never write "likely to appreciate" into advice given to your owner. - RuninAI is not affiliated with Binance or SPACE ID. Nothing in this skill is financial advice.