For the complete documentation index, see llms.txt. This page is also available as Markdown.

Standards Commands

End-user surface for every BitBadges standard. Each command group lets you read collections of that standard from the indexer and emit the right transaction msg for the user-side action β€” bid on an auction, pay a payment-request, redeem a credit-token tier, etc.

Two halves to know about:

  1. Read verbs β€” list, show, status. Pure indexer queries, no signing.

  2. Action verbs β€” emit a ready-to-sign msg JSON to stdout. Pipe into deploy to broadcast.

The create side of every standard (the manager/creator setting up an auction, posting a payment-request, etc.) lives under build. The commands on this page cover the consumer / participant side.

# Read
bb auctions list                          # browse active auctions
bb auctions show 42                       # full details for one
bb auctions status 42                     # quick status: bidding / accepting / sold / expired

# Act (emit + deploy)
bb auctions place-bid 42 \
  --creator bb1... --amount 5000 --denom uusdc \
  | bb deploy --browser --msg-stdin

Every action verb emits the universal {ok, data, ...} envelope on stdout. Pipe it straight into bb deploy β€” deploy unwraps the envelope transparently. Use --quiet (or BB_QUIET=1) to suppress the human-readable auto-review banner on stderr; standard build flags (--explain, --simulate, --dry-run, etc.) all apply.

Available Standards

Standard
Command
What users do

Auctions

bb auctions

list / show / status / place-bid / cancel-bid / accept-bid / build

Bounties

bb bounties

list / show / status / accept / deny / claim-refund / build. Accept/deny emit a 2-msg envelope (cast-vote + transfer).

Credit Tokens

bb credit-tokens

list / show / purchase / build. Tier amounts use bigint.

Custom 2FA

bb custom-2fa

mint. Create the collection with bb build custom-2fa, then mint issues short-lived 2FA tokens (5m default). The lifetime is encoded at mint time β€” minting without the helper yields tokens that never expire.

Dynamic Stores

bb dynamic-stores

On-chain key→bool maps. create / update / delete / add / remove / set-value / get-value / list-values / search.

Intents

bb intents

Off-chain OTC swap offers via user outgoing approvals. list / show / create / fill / cancel.

NFTs (orderbook)

bb nfts

bid / list / cancel / buy / sell / orders / history / build. Orderbook trading on individual badges.

Payment Requests

bb pay-requests

list / show / status / pay / deny / claim-refund / build. The no-escrow inverse of bounty β€” recipient asks payer to approve.

Prediction Markets

bb prediction-markets

list / show / status / buy / sell / cancel / deposit / redeem / resolve / build. YES/NO share trading.

Products

bb products

list / show / purchase / build. Product-catalog purchase flow.

Smart Tokens

bb smart-tokens

list / show / status / deposit / withdraw / build. The unified primitive behind vaults, AI-agent vaults, and tradable wrapped tokens.

Subscriptions

bb subscriptions

list / status / claim / enable-renewal / cancel / subscribe. Recurring-payment approvals.

Swap / DEX

bb swap

Cross-chain swap helpers β€” assets / chains / balances / estimate / execute / track / status / activities. Read-only except execute, which signs + broadcasts a BitBadges-only route. Powered by Skip:Go via the indexer's consolidated /swap/* routes.

Status semantics

Every standard with a lifecycle (auctions, prediction-markets, bounties, pay-requests) exposes a status subcommand that returns one of a fixed set of values. Read these BEFORE acting β€” most action verbs throw if the standard isn't in a compatible state.

Standard
Status values

Auctions

bidding, accepting, sold, expired

Bounties

open, accepting, accepted, denied, expired

Payment Requests

pending, paid, denied, expired

Prediction Markets

active, closed, resolved, canceled

Subscriptions

active, renewable, cancelled

Pattern: list β†’ show β†’ act

The agentic pattern most users follow:

Read commands hit the indexer

Every list / show / status reads from the BitBadges indexer (api.bitbadges.io by default). The CLI accepts the standard network flags inherited from api-commands:

Action commands need signing

Every action verb (place-bid, contribute, pay, purchase, redeem, etc.) emits a MsgSet*Approval / MsgTransferTokens JSON to stdout. You then sign + broadcast through one of:

  • Browser wallet (Keplr / MetaMask):

  • Local keyring (bitbadgeschaind key):

  • Custom signer (ethers / viem / HSM): pipe through gen-tx-payload:

See Deploy Commands for the full signing-path matrix.

Executing a swap (bb swap execute)

bb swap is read-only except for execute. bb swap execute (or bb swap estimate --execute) takes a bb swap estimate result and, only when the whole route is BitBadges-only β€” a single native swap on the BitBadges chain, with no Skip:Go rerouting, no EVM transaction, no IBC-transfer leg, and no WETH redirect β€” signs + broadcasts it by reusing the standard deploy signing flags. It accepts the estimate JSON on stdin, as @file.json, or inline.

  • Default (no deploy flag) emits the signable message to stdout, so | bb deploy and scripting keep working.

  • --browser signs + broadcasts through the /sign page (Keplr / MetaMask). No second/EVM keyring is added to the CLI.

  • --track auto-calls bb swap track after a successful broadcast so the swap activity row is seeded.

  • --force broadcasts a route flagged for compliance or low liquidity (otherwise refused).

Cross-chain / EVM / multi-hop routes are not auto-executed. The estimate is still returned, but the execute path throws an explicit not-implemented error β€” there is no partial execution and no cross-chain orchestrator. Sign the returned estimate in your wallet via the /sign page, broadcast the first transaction, then track it:

Reference

Every command has --help with the full flag surface. Required vs optional flags are now rendered as separate sections (Required: first, then Options: with sub-groups for Metadata, Output, Network, Builder, Deploy):

Last updated