bitflow-hodlmm-withdraw/SKILL.md
Withdraws Bitflow HODLMM liquidity across one or more bins with proof-ready guardrails.
npx skillsauth add aibtcdev/skills bitflow-hodlmm-withdrawInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
bitflow-hodlmm-withdraw withdraws full or partial liquidity from Bitflow HODLMM bins on Stacks mainnet. It is a primitive write skill: one action, one HODLMM withdrawal transaction, and proof-ready JSON output.
It does not claim HODLMM earnings separately. HODLMM LP value is represented by per-bin liquidity, so exiting value means withdrawing from one or more bins.
Agents need a reliable exit primitive before they can build full economic loops such as HODLMM-to-Zest routing. Without this primitive, a router can identify that capital should move, but it cannot safely execute the HODLMM withdrawal leg.
run refuses to broadcast unless --confirm=EXIT is supplied.--bin-id <id> or --bin-ids <ids>, or make full-scope intent explicit with --all-bins.PostConditionMode.Deny with explicit postconditions for aggregate max DLP spend, one selected per-bin pool-token-id send per bin, and aggregate minimum token outputs where Stacks postconditions can express them.CLIENT_MNEMONIC, STACKS_PRIVATE_KEY, or AIBTC_WALLET_PASSWORD fallback.Checks API reachability, contract existence, wallet position availability, gas balance, pending transaction depth, and postcondition model.
bun run bitflow-hodlmm-withdraw/bitflow-hodlmm-withdraw.ts doctor --wallet <stacks-address> --pool-id <pool-id>
Read-only position and withdrawal preview. It returns an agent-readable bin index in withdrawableBins, the current selectedBins, aggregate totals, and selection.availableModes.
Default selection is full position scope: all eligible user bins with --withdraw-bps 10000.
bun run bitflow-hodlmm-withdraw/bitflow-hodlmm-withdraw.ts status --wallet <stacks-address> --pool-id <pool-id>
Optional scope controls:
bun run bitflow-hodlmm-withdraw/bitflow-hodlmm-withdraw.ts status --wallet <stacks-address> --pool-id <pool-id> --bin-id <bin-id>
bun run bitflow-hodlmm-withdraw/bitflow-hodlmm-withdraw.ts status --wallet <stacks-address> --pool-id <pool-id> --bin-ids <bin-id>,<bin-id>
bun run bitflow-hodlmm-withdraw/bitflow-hodlmm-withdraw.ts status --wallet <stacks-address> --pool-id <pool-id> --all-bins --withdraw-bps <bps>
Rechecks all live state, builds the HODLMM withdrawal transaction, broadcasts only after explicit confirmation, and returns proof JSON.
bun run bitflow-hodlmm-withdraw/bitflow-hodlmm-withdraw.ts run --wallet <stacks-address> --pool-id <pool-id> --confirm=EXIT
With no bin selector, run withdraws all eligible bins. To withdraw a strategy-selected subset, pass --bin-id or --bin-ids from the latest status output.
For autonomous loops, unlock the AIBTC wallet once before the loop using the wallet skill or MCP wallet_unlock; this skill will use the active/restored session without needing the password on every call. Inline secret fallbacks are for proof or recovery runs only. Never pass wallet secrets in command text that may be copied into logs.
All outputs are JSON to stdout.
Success:
{ "status": "success", "action": "...", "data": {}, "error": null }
Blocked:
{ "status": "blocked", "action": "...", "data": {}, "error": { "code": "...", "message": "...", "next": "..." } }
Error:
{ "error": "descriptive message" }
pool-token-id, and adds one pool-token-id NFT postcondition for each selected withdrawal bin.--amount is only valid with exactly one selected bin. Use --withdraw-bps for multi-bin withdrawals.Winner of AIBTC x Bitflow Skills Pay the Bills competition (Day 22). Original author: @macbotmini-eng Competition PR: https://github.com/BitflowFinance/bff-skills/pull/551
development
Web of Trust operations for Nostr pubkeys — trust scoring, sybil detection, trust path analysis, neighbor discovery, follow recommendations, and network health. Free tier (wot.klabo.world, 50 req/day) with paid fallback (maximumsats.com, 100 sats via L402). Covers 52K+ pubkeys and 2.4M+ zap-weighted trust edges. Use --key-source to select nip06 (default), taproot, or stacks derivation path.
data-ai
BTC ordinals marketplace operations via Magic Eden — browse active listings, list inscriptions for sale via PSBT flow, submit signed listings, buy inscriptions, and cancel active listings. BTC ordinals only (not Solana). Mainnet-only.
testing
Pay-per-call access to LunarCrush social and market intelligence (Galaxy Score, AltRank, market cap rank, price, 24h change) via x402 on Stacks. USD-pegged pricing recomputed hourly from live STX/USD. Mainnet endpoint live; testnet supported.
devops
Detects HODLMM LP inventory drift (token-ratio imbalance from one-sided swap flow) and restores the target ratio via a corrective Bitflow swap plus a hodlmm-move-liquidity redeploy, gated by the 4h per-pool cooldown.