bitflow-swap-aggregator
Bitflow Swap Aggregator
What it does
bitflow-swap-aggregator quotes, plans, and executes swaps through Bitflow's aggregator route surface. It resolves tokens from the live Bitflow token registry, asks the Bitflow SDK for the best executable route, prepares the swap call, and broadcasts the transaction only after explicit confirmation.
Why agents need it
Autonomous strategies need a general Bitflow swap primitive that does not force one pool family. This skill gives higher-level controllers a route-aware swap leg that can choose the aggregator's current best supported route and return proof-ready execution details.
Safety notes
- This is a write skill and can move wallet funds.
- Mainnet only.
runrefuses without--confirm=SWAP.- The skill uses
PostConditionMode.Denywith the postconditions produced by Bitflow's swap preparation path. - The skill checks input balance, STX gas reserve, pending transaction depth, signer match, route availability, and mined transaction status.
- The skill blocks if the mined transaction status is not
success.
Commands
doctor
Checks dependency readiness, Bitflow SDK access, live token registry access, Hiro reachability, and optional wallet readiness.
bun run bitflow-swap-aggregator/bitflow-swap-aggregator.ts doctor --wallet <stacks-address>
tokens
Lists live Bitflow tokens and optionally filters by symbol, token ID, or contract ID.
bun run bitflow-swap-aggregator/bitflow-swap-aggregator.ts tokens --search stx
quote
Fetches the current Bitflow aggregator quote and best route.
bun run bitflow-swap-aggregator/bitflow-swap-aggregator.ts quote --token-in token-stx --token-out token-USDCx-auto --amount-in 1
plan
Prepares the executable swap call and reports the contract/function, route, postconditions, balances, and safety gates without broadcasting.
bun run bitflow-swap-aggregator/bitflow-swap-aggregator.ts plan --wallet <stacks-address> --token-in token-stx --token-out token-USDCx-auto --amount-in 1
run
Re-runs fresh quote and preparation checks, resolves the signer, broadcasts the Bitflow aggregator swap, waits for status, and returns proof-ready JSON.
bun run bitflow-swap-aggregator/bitflow-swap-aggregator.ts run --wallet <stacks-address> --token-in token-stx --token-out token-USDCx-auto --amount-in 1 --confirm=SWAP
Output contract
Every command prints exactly one JSON object to stdout.
Success:
{ "status": "success", "action": "plan", "data": {}, "error": null }
Blocked:
{
"status": "blocked",
"action": "run",
"data": {},
"error": {
"code": "CONFIRMATION_REQUIRED",
"message": "This write skill requires --confirm=SWAP.",
"next": "Re-run with --confirm=SWAP after reviewing plan output."
}
}
Known constraints
- Uses Bitflow's SDK-supported aggregator route surface.
- Does not force HODLMM-only execution.
- Does not implement custom direct-pool HODLMM swap calls.
- Does not perform DCA scheduling, keeper orders, LP deposits, LP withdrawals, Zest writes, or controller checkpointing.
- Requires the wallet to already hold the selected input asset.
Origin
Winner of AIBTC x Bitflow Skills Pay the Bills competition. Original author: @macbotmini-eng Competition PR: https://github.com/BitflowFinance/bff-skills/pull/577
More from aibtcdev/skills
arxiv-research
Fetch and compile arXiv papers on LLMs, autonomous agents, and AI infrastructure into scored, grouped research digests. Stores digests at ~/.aibtc/arxiv-research/digests/. No API key required.
178aibtc-news
aibtc.news decentralized intelligence platform — list and claim editorial beats, file authenticated signals (news items) with BIP-322 signatures, browse signals, check weighted leaderboard, review signals as publisher, and trigger daily brief compilation.
166aibtc-news-correspondent
Correspondent for aibtc.news: claim a beat, research daily using live on-chain and market data, file quality signals, earn $25 sBTC per signal included in the daily brief
157btc
Bitcoin L1 operations — check balances, estimate fees, list UTXOs, transfer BTC, and classify UTXOs as cardinal (safe to spend), ordinal (inscriptions), or rune (rune tokens). Data sourced from mempool.space and the Unisat API.
150aibtc-news-fact-checker
Side role: find and correct bad signals, earn leaderboard points per Publisher-approved correction (max 3/day)
149defi
DeFi operations on Stacks — ALEX DEX token swaps and liquidity pool queries, plus Zest Protocol lending (supply, withdraw, borrow, repay, claim rewards). All operations are mainnet-only. Write operations require an unlocked wallet.
148