# Bullpen CLI Public Docs LLM Bundle Generated: 2026-04-10 Source: docs/public Generator: scripts/generate_public_llm_txt.sh This file is auto-generated and concatenates public docs into a single text artifact for LLM ingestion. ## Included Files - README.md - quickstart.md - prediction-markets.md - trading.md - orders-and-watchlist.md - reference/index.md - install.sh - introduction.md - march-madness.md - reference/commands/auth/login.md - reference/commands/auth/logout.md - reference/commands/completion.md - reference/commands/config/index.md - reference/commands/config/init.md - reference/commands/config/show.md - reference/commands/experimental/disable.md - reference/commands/experimental/enable.md - reference/commands/experimental/index.md - reference/commands/experimental/list.md - reference/commands/index.md - reference/commands/notifications.md - reference/commands/points.md - reference/commands/polymarket/activity.md - reference/commands/polymarket/approve.md - reference/commands/polymarket/bridge.md - reference/commands/polymarket/buy.md - reference/commands/polymarket/clob/account-status.md - reference/commands/polymarket/clob/api-keys.md - reference/commands/polymarket/clob/balance.md - reference/commands/polymarket/clob/batch-prices.md - reference/commands/polymarket/clob/book.md - reference/commands/polymarket/clob/books.md - reference/commands/polymarket/clob/create-api-key.md - reference/commands/polymarket/clob/current-rewards.md - reference/commands/polymarket/clob/delete-api-key.md - reference/commands/polymarket/clob/delete-notifications.md - reference/commands/polymarket/clob/earnings-markets.md - reference/commands/polymarket/clob/earnings.md - reference/commands/polymarket/clob/fee-rate.md - reference/commands/polymarket/clob/geoblock.md - reference/commands/polymarket/clob/index.md - reference/commands/polymarket/clob/last-trades.md - reference/commands/polymarket/clob/market-order.md - reference/commands/polymarket/clob/market-reward.md - reference/commands/polymarket/clob/midpoint.md - reference/commands/polymarket/clob/midpoints.md - reference/commands/polymarket/clob/neg-risk.md - reference/commands/polymarket/clob/ok.md - reference/commands/polymarket/clob/order-scoring.md - reference/commands/polymarket/clob/order.md - reference/commands/polymarket/clob/orders-scoring.md - reference/commands/polymarket/clob/post-orders.md - reference/commands/polymarket/clob/price-history.md - reference/commands/polymarket/clob/reward-percentages.md - reference/commands/polymarket/clob/rewards.md - reference/commands/polymarket/clob/sampling-markets.md - reference/commands/polymarket/clob/simplified-markets.md - reference/commands/polymarket/clob/spread.md - reference/commands/polymarket/clob/spreads.md - reference/commands/polymarket/clob/tick-size.md - reference/commands/polymarket/clob/time.md - reference/commands/polymarket/clob/trades.md - reference/commands/polymarket/clob/update-balance.md - reference/commands/polymarket/collection-id.md - reference/commands/polymarket/comment-alert.md - reference/commands/polymarket/comments.md - reference/commands/polymarket/condition-id.md - reference/commands/polymarket/data/builder-leaderboard.md - reference/commands/polymarket/data/builder-volume.md - reference/commands/polymarket/data/index.md - reference/commands/polymarket/data/leaderboard.md - reference/commands/polymarket/data/open-interest.md - reference/commands/polymarket/data/profile.md - reference/commands/polymarket/data/smart-money.md - reference/commands/polymarket/data/volume.md - reference/commands/polymarket/deposit.md - reference/commands/polymarket/discover.md - reference/commands/polymarket/event.md - reference/commands/polymarket/feed.md - reference/commands/polymarket/holders.md - reference/commands/polymarket/index.md - reference/commands/polymarket/limit-buy.md - reference/commands/polymarket/limit-sell.md - reference/commands/polymarket/market.md - reference/commands/polymarket/markets.md - reference/commands/polymarket/merge.md - reference/commands/polymarket/orders.md - reference/commands/polymarket/position-id.md - reference/commands/polymarket/positions.md - reference/commands/polymarket/preflight.md - reference/commands/polymarket/price-history.md - reference/commands/polymarket/price.md - reference/commands/polymarket/redeem.md - reference/commands/polymarket/search.md - reference/commands/polymarket/sell.md - reference/commands/polymarket/series.md - reference/commands/polymarket/smart-alerts.md - reference/commands/polymarket/split.md - reference/commands/polymarket/tags.md - reference/commands/polymarket/trade-alert.md - reference/commands/polymarket/trades.md - reference/commands/polymarket/watch.md - reference/commands/polymarket/watchlist.md - reference/commands/polymarket/withdraw.md - reference/commands/portfolio/balances.md - reference/commands/portfolio/index.md - reference/commands/portfolio/overview.md - reference/commands/portfolio/pnl.md - reference/commands/rewards.md - reference/commands/setup.md - reference/commands/shell.md - reference/commands/status.md - reference/commands/tracker/add.md - reference/commands/tracker/follow.md - reference/commands/tracker/following.md - reference/commands/tracker/index.md - reference/commands/tracker/list.md - reference/commands/tracker/remove.md - reference/commands/tracker/trades.md - reference/commands/tracker/unfollow.md - reference/commands/upgrade.md - skill-format-spec.md - skill/SKILL.md - skill/bullpen-bracket/SKILL.md - skill/references/bracket-contest.md - skill/references/community.md - skill/references/diagnostics.md - skill/references/discovery-and-research.md - skill/references/getting-started.md - skill/references/platform-and-account.md - skill/references/portfolio-and-orders.md - skill/references/scripting-and-automation.md - skill/references/social-and-signals.md - skill/references/trading.md ================================================================================ FILE: README.md ================================================================================ # Bullpen CLI !!! warning "Alpha" Bullpen CLI is in **Alpha**. Commands, APIs, and behavior may change between releases. Report bugs at [github.com/BullpenFi/bullpen-cli-releases/issues](https://github.com/BullpenFi/bullpen-cli-releases/issues). **Trade prediction markets with AI agents — or from your terminal.** Bullpen CLI is a command-line tool for [Polymarket](https://polymarket.com/) prediction markets. Use it directly, or let AI agents (Claude Code, Codex CLI) trade, research, and manage your portfolio through natural language. ## Use with AI Agents Bullpen CLI ships with AI skills that teach Claude Code and Codex CLI how to trade prediction markets. After setup, just ask in natural language: - *"Buy $10 of Yes on will-bitcoin-hit-100k"* - *"Show me trending prediction markets about crypto"* - *"Fill my March Madness bracket with chalk picks"* - *"What are my open positions and P&L?"* - *"Set up a limit order to sell my Trump shares at 65 cents"* ### Setup (4 steps) ```bash # 1. Install the CLI brew install bullpenfi/tap/bullpen # 2. Install AI skills bullpen skill install # 3. Log in bullpen login # 4. Restart Claude Code / Codex CLI, then ask it anything ``` Already installed? Run `bullpen upgrade` to update to the latest version. After installing skills and restarting your AI assistant, it has full access to discover markets, execute trades, manage positions, fill brackets, and automate workflows — all through conversation. ## Quick Install === "Homebrew" ```bash brew install BullpenFi/tap/bullpen ``` === "npm" ```bash npm install -g @bullpenfi/cli ``` === "Shell Script" ```bash curl -fsSL https://cli.bullpen.fi/install.sh | sh ``` === "Manual Download" Download the latest binary from [Releases](https://github.com/BullpenFi/bullpen-cli-releases/releases). ## Get Started in 30 Seconds ```bash # 1. Log in bullpen login # 2. Check your balances across all chains bullpen portfolio balances # 3. Discover trending prediction markets bullpen polymarket discover # 4. Buy shares on a market outcome bullpen polymarket buy "will-btc-hit-150k" "Yes" 10 --yes ``` See the [Quickstart Guide](quickstart.md) for full setup instructions. ## Key Features **Prediction Markets** Discover, search, and filter Polymarket events. View event details, real-time prices (bid/ask/mid/spread), price history, recent trades, top holders, and leaderboard rankings. Browse markets by tags and series. **Trading** Buy and sell shares, place limit orders (GTC/GTD/FOK/FAK), redeem resolved positions, and manage open orders (including bulk cancel) -- all via the CLI. **Bridge & Funds** Deposit and withdraw funds via the Polymarket bridge. Check supported chains/tokens and track deposit status. **Smart Money Signals** Follow top traders and new wallets. Filter trade and comment feeds by PnL, volume, category, and more. Set up trade and comment alerts. **Portfolio & Wallet Tracking** View balances and PnL across Solana, Hyperliquid (Spot + Perps), and Polymarket. Track external wallet addresses with nicknames. **Social & Community** Read and filter market comments, view trader profiles, browse the leaderboard, and manage your watchlist. **Points & Rewards** Check your Bullpen points, view distribution history, and claim rewards. **Interactive TUI** Run `bullpen` with no arguments for a full-screen interactive terminal interface. Browse markets, manage positions, and execute trades without memorizing commands. **AI Agent Skills** Install skills that teach Claude Code and Codex CLI to trade on your behalf. Discover markets, place orders, manage positions, and fill brackets through natural language. ## Scriptable Output Most read commands support `--output json` for piping into scripts, dashboards, or other tools: ```bash bullpen portfolio balances --output json | jq '.totals' bullpen polymarket discover --output json ``` Some interactive and state-changing commands still print plain-text prompts/messages even when `--output json` is set. For strict automation, test the exact command path first. ## Guides - [Quickstart](quickstart.md) -- Install, authenticate, and get started - [Prediction Markets](prediction-markets.md) -- Discover, search, and analyze markets - [Trading](trading.md) -- Buy, sell, redeem shares, and place limit orders - [Orders & Watchlist](orders-and-watchlist.md) -- Manage open orders, trade history, and watchlist - [March Madness Brackets](march-madness.md) -- Fill brackets, submit picks, track standings ## Reference - [Command Reference](reference/index.md) -- Per-command documentation generated from live CLI help (100+ command pages) - [LLM Bundle](llm.txt) -- Single-file concatenation of public docs for LLM ingestion (auto-generated) ## Configuration Config lives at `~/.bullpen/config.toml` (or `$BULLPEN_HOME/config.toml`). ```bash bullpen config init ``` ================================================================================ FILE: quickstart.md ================================================================================ # Bullpen CLI Quickstart Bullpen CLI lets you authenticate, view portfolio balances, discover prediction markets, and trade from the terminal. ## System Requirements | Requirement | Details | |-------------|---------| | Operating systems | macOS 12+, Ubuntu 20.04+/Debian 10+, or Windows 11 via WSL2 | ## Install ### Homebrew (macOS / Linux) ```bash brew install BullpenFi/tap/bullpen ``` ### npm ```bash npm install -g @bullpenfi/cli ``` ### Shell Script ```bash curl -fsSL https://cli.bullpen.fi/install.sh | sh ``` ### Manual Download Download the latest binary from [Releases](https://github.com/BullpenFi/bullpen-cli-releases/releases). If `bullpen` is not found after install, ensure the install location is on your PATH. ## Getting Started 1. Log in (device auth): ```bash bullpen login ``` 2. A code and URL are displayed. Open the URL in your browser. 3. Enter the code and complete login in the browser. 4. The CLI automatically picks up your session — no copy-pasting required. 5. Check your balances: ```bash bullpen portfolio balances ``` **TUI Mode:** Run `bullpen` with no arguments to launch the interactive terminal UI for a full-screen experience. **AI Agent Mode:** Install skills with `bullpen skill install`, restart Claude Code or Codex CLI, then trade through natural language. Expected output (example): ``` Total USD (All): 1234.56 [Solana] Address: ... Chain: Solana (0) Total USD: 345.67 Symbol Balance Value USD SOL 1.2345 123.45 USDC 10.0000 10.00 [Hyperliquid Spot] Address: ... Chain: HyperCore Spot (6) Total USD: 456.78 Symbol Balance Value USD USDC 100.0000 100.00 [Polymarket] Address: ... Chain: Polygon (10) Total USD: 432.11 Symbol Balance Value USD USDC.e 432.1100 432.11 ``` ## AI Agent Skills Install skills so Claude Code or Codex CLI can trade on your behalf: ```bash bullpen skill install # Restart Claude Code / Codex CLI after installing ``` ## What Balances Are Included The CLI fetches balances via usergate for: - Solana - Hyperliquid (HyperCore Spot + Perps) - Polymarket (via Polygon proxy) ## Configuration Config lives at `~/.bullpen/config.toml` (or `$BULLPEN_HOME/config.toml`). To generate a default config: ```bash bullpen config init ``` To force a different environment: ```bash bullpen --env staging portfolio balances ``` **Update notifications:** The CLI automatically checks for updates in the background and prints a notice to stderr when a newer version is available. This check is non-blocking and does not slow down commands. To disable, add `check_for_updates = false` to your `config.toml`. ## Logging Set `RUST_LOG` to enable log output: ```bash RUST_LOG=info bullpen status ``` ## Uninstall ### Step 1: Remove AI skills (optional) If you installed AI skills, remove them first: ```bash bullpen skill uninstall --yes ``` ### Step 2: Remove the binary === "Homebrew" ```bash brew uninstall bullpen brew untap bullpenfi/tap # optional: remove the tap ``` === "npm" ```bash npm uninstall -g @bullpenfi/cli ``` === "Shell Script / Manual" ```bash rm "$(which bullpen)" # Also remove from PATH in ~/.zshrc or ~/.bashrc if added by the installer: # Delete the line: export PATH="$HOME/.bullpen/bin:$PATH" ``` ### Step 3: Clean up local data (optional) Remove configuration, credentials, and keys: ```bash rm -rf ~/.bullpen ``` !!! warning This deletes your stored credentials, Turnkey keys, and config. You'll need to log in again if you reinstall. If you want to keep your config but clear credentials: ```bash rm ~/.bullpen/credentials.json rm -rf ~/.bullpen/keys ``` ## Next Steps - [Prediction Markets](prediction-markets.md) — discover, search, and analyze markets (event details, price history, trades, holders, leaderboard, smart money, social & community) - [Trading](trading.md) — buy, sell, redeem shares, and place limit orders - [Orders and Watchlist](orders-and-watchlist.md) — manage orders and watchlist - [Command Reference](reference/index.md) — complete per-command reference for all commands - [LLM Bundle](llm.txt) — single-file concatenation of public docs for LLM ingestion Other useful commands: ```bash bullpen status # CLI + account status bullpen portfolio pnl # view profit & loss bullpen points # view your points bullpen rewards # view and claim rewards bullpen notifications # view notifications bullpen tracker add --chain solana # track a wallet bullpen polymarket price # real-time bid/ask/mid bullpen polymarket market # detailed market info bullpen polymarket markets --active --sort volume # browse markets bullpen polymarket deposit --address 0xYourWallet # get bridge deposit addresses bullpen polymarket bridge --supported # supported bridge assets bullpen polymarket comments # view market comments bullpen polymarket feed trades --min-pnl 10000 # filtered trade feed ``` ================================================================================ FILE: prediction-markets.md ================================================================================ # Prediction Markets Discover and browse Polymarket prediction markets, check real-time prices, and view positions with P&L tracking. ## Discover Markets The `discover` command supports 7 lenses that provide different views into prediction markets. ```bash bullpen polymarket discover [LENS] ``` ### Lenses | Lens | Description | Key Flags | |------|-------------|-----------| | `all` | Browse all active markets (default) | `--search`, `--category`, `--sort` | | `sports` | Sports markets (auto-filtered by tag) | `--category`, `--limit` | | `crypto` | Crypto markets (auto-filtered by tag) | `--category` | | `traders` | Leaderboard by volume and P&L | `--limit`, `--offset` | | `walletscope` | Markets a specific wallet holds | `--address` (required) | | `flow` | Recent trade activity for a wallet | `--address` (required) | | `eventscope` | Deep-dive into a specific event | `--search` | ### Examples Browse trending markets: ```bash bullpen polymarket discover ``` Search for a topic: ```bash bullpen polymarket discover --search "bitcoin" ``` View sports markets: ```bash bullpen polymarket discover sports ``` View top traders: ```bash bullpen polymarket discover traders --limit 10 ``` See what a wallet holds: ```bash bullpen polymarket discover walletscope --address 0xABC... ``` View a wallet's recent trades: ```bash bullpen polymarket discover flow --address 0xABC... ``` ### Filters and Sorting Apply filters across lenses: ```bash bullpen polymarket discover --min-liquidity 10000 --min-volume 50000 bullpen polymarket discover --sort ending-soon --limit 5 bullpen polymarket discover --min-odds 80 --status active ``` Sort options: `volume`, `volume24h`, `liquidity`, `newest`, `ending-soon` ### Output Table output (default): ``` Market Odds Vol 24h Liquidity Ends -------------------------------------------------------------------------------------------- Will BTC reach $100K by March? Yes 65¢ / No 35¢ $1.2M $500.0K Mar 31 Will ETH flip SOL in TVL? Yes 42¢ / No 58¢ $800.5K $320.0K Apr 15 ``` JSON output for scripts: ```bash bullpen polymarket discover --output json ``` ## Positions View active, closed, or redeemable prediction market positions for a wallet. ### Active Positions ```bash # View your own positions (address from stored credentials) bullpen polymarket positions # View another wallet's positions bullpen polymarket positions --address 0xABC... ``` Output: ``` Portfolio Value: $1234.56 | Cash: $500.00 | Unrealized P&L: +$123.45 Redeemable: 2 positions ($45.00) Market Outcome Shares Avg Value P&L P&L % ---------------------------------------------------------------------------------------------- Will BTC reach $100K? Yes 50.0 60¢ $32.50 +$2.50 +8.3% Will ETH merge succeed? No 100.0 30¢ $35.00 +$5.00 +16.7% ``` ### Closed Positions ```bash bullpen polymarket positions --closed # Or for another wallet bullpen polymarket positions --address 0xABC... --closed ``` Output: ``` Portfolio Value: $1234.56 | Cash: $500.00 | Unrealized P&L: +$123.45 Market Outcome Result Shares Invested Payout P&L P&L % ------------------------------------------------------------------------------------------------------ Did BTC hit $50K in 2024? Yes Profit 80.0 $48.00 $80.00 +$32.00 +66.7% Will SOL reach $500? No Loss 20.0 $14.00 $0.00 -$14.00 -100.0% ``` ### Redeemable Positions Show only positions ready to redeem (resolved markets with winning outcomes): ```bash bullpen polymarket positions --redeemable ``` ### JSON Output ```bash bullpen polymarket positions --output json ``` Note: `--output json` is not always strict JSON for mutating/interactive flows; validate exact command behavior before automating. ## Search Search across prediction markets and trader profiles. ```bash bullpen polymarket search "bitcoin" bullpen polymarket search "trump" --type market --status active bullpen polymarket search "vitalik" --type user --limit 5 ``` Results include both matching markets and trader profiles by default. Use `--type market` or `--type user` to filter. ## Event Details Get comprehensive details about a specific prediction market event, including all outcomes and their current prices. ```bash bullpen polymarket event will-bitcoin-hit-100k ``` ## Real-Time Prices Quick price check for a prediction market, showing midpoint, last trade price, bid/ask, and spread for each outcome. ```bash bullpen polymarket price will-bitcoin-hit-100k ``` Output: ``` will-bitcoin-hit-100k Outcome Midpoint Last Trade Bid Ask Spread ------------------------------------------------------ Yes 65¢ 64¢ 64¢ 66¢ 2.0¢ No 35¢ 36¢ 34¢ 36¢ 2.0¢ ``` Filter to a specific outcome: ```bash bullpen polymarket price will-bitcoin-hit-100k yes ``` ## Market Details Show detailed information about a specific market by slug or numeric ID. ```bash bullpen polymarket market will-bitcoin-hit-100k bullpen polymarket market 12345 ``` ## Browse Markets List and filter markets from the Polymarket CLOB. ```bash # List active markets sorted by volume bullpen polymarket markets --active --sort volume # Filter by minimum liquidity bullpen polymarket markets --min-liquidity 50000 --limit 10 # Browse closed markets bullpen polymarket markets --closed --sort volume_24hr # Filter by tag bullpen polymarket markets --tag-id 42 --active ``` | Flag | Description | |------|-------------| | `--limit` | Maximum results (default 20) | | `--offset` | Pagination offset | | `--sort` | Sort by: `volume`, `liquidity`, `volume_24hr`, `created_at` | | `--active` | Only active markets | | `--closed` | Only closed markets | | `--tag-id` | Filter by tag ID | | `--min-volume` | Minimum volume | | `--min-liquidity` | Minimum liquidity | ## Price History View price history charts for specific market outcomes. ```bash bullpen polymarket price-history will-bitcoin-hit-100k --outcome Yes bullpen polymarket price-history will-bitcoin-hit-100k --outcome No --interval 1w ``` Intervals: `1h`, `6h`, `1d` (default), `1w` ## Market Activity ### Recent Trades View the latest trades on a market: ```bash bullpen polymarket trades will-bitcoin-hit-100k --limit 50 ``` ### Top Holders See the biggest position holders: ```bash bullpen polymarket holders will-bitcoin-hit-100k --limit 10 ``` ## Leaderboard View top traders ranked by volume and P&L. ```bash bullpen polymarket data leaderboard bullpen polymarket data leaderboard --period week --limit 10 ``` Time periods: `day`, `week`, `month`, `all` (default) ## Trader Profiles Look up detailed statistics for any trader by wallet address. ```bash bullpen polymarket data profile 0xABC... bullpen polymarket data profile 0xABC... --trades ``` Shows volume, trade count, win rate, biggest win, and account age. Add `--trades` for recent trade history. ## Smart Money Signals View smart money trading signals and discover top traders. Requires authentication. ```bash bullpen polymarket data smart-money bullpen polymarket data smart-money --type top_traders --category crypto bullpen polymarket data smart-money --type new_wallet --limit 10 ``` Signal types: - `aggregated` (default) — Aggregated smart money signals - `top_traders` — Discover top traders by category - `new_wallet` — New wallet activity ## Limit Orders Place limit buy and sell orders at a specific price. ```bash bullpen polymarket limit-buy will-bitcoin-hit-100k Yes --price 0.45 --shares 100 bullpen polymarket limit-sell will-bitcoin-hit-100k Yes --price 0.65 --shares 50 ``` Price range: 0.01–0.99 (in dollars). Expiration: `gtc` (good til canceled, default), `gtd`, `fok`, or `fak`. ## Social & Community ### Comments View comments on markets, events, series, or by a specific user. ```bash # Comments on a market bullpen polymarket comments will-bitcoin-hit-100k # Comments on an event or series bullpen polymarket comments my-event-slug --event bullpen polymarket comments my-series-slug --series # Comments from a specific user bullpen polymarket comments --user 0xABC... # Replies to a specific comment bullpen polymarket comments will-bitcoin-hit-100k --replies ``` Filter to high-quality comments using `--filtered` with trader quality thresholds: ```bash bullpen polymarket comments --filtered --min-pnl 5000 --min-volume 50000 bullpen polymarket comments --filtered --category crypto --following-only bullpen polymarket comments --filtered --min-predictions 10 ``` Available `--filtered` filters: `--min-pnl`, `--min-volume`, `--min-predictions`, `--category`, `--following-only`. Pagination: use `--page` and `--limit` (default 20 per page). ### Filtered Feeds The `feed` command provides a filtered stream of recent trades or comments across all markets, with trader quality controls. ```bash # Filtered trade feed bullpen polymarket feed trades bullpen polymarket feed trades --min-pnl 10000 --action Buy --min-trade-size 500 # Filtered comment feed bullpen polymarket feed comments --min-volume 100000 --category politics bullpen polymarket feed comments --following-only ``` Common filters for both feed types: | Filter | Description | |--------|-------------| | `--min-pnl` | Minimum lifetime PnL of the commenter/trader | | `--min-volume` | Minimum lifetime volume | | `--min-predictions` | Minimum number of predictions made | | `--min-position-value` | Minimum current position value | | `--category` | Filter by market category | | `--exclude-categories` | Comma-separated list of categories to exclude | Additional filters for the `trades` feed: | Filter | Description | |--------|-------------| | `--action` | Trade direction: `All`, `Buy`, or `Sell` | | `--min-trade-size` | Minimum trade size in USD | | `--min-price` / `--max-price` | Share price range (0.01–0.99) | Additional filter for the `comments` feed: | Filter | Description | |--------|-------------| | `--following-only` | Limit to users you follow | Pagination: use `--page` and `--limit` (default 20 per page). ### Alert Management Configure notifications for trades and comments that match your quality criteria. All alert commands require authentication. **Comment Alerts** Receive notifications when qualifying comments are posted: ```bash # View current comment alert bullpen polymarket comment-alert # Set an alert (qualify by PnL and category) bullpen polymarket comment-alert --set --min-pnl 5000 --category crypto # Only alert on comments from followed users bullpen polymarket comment-alert --set --following-only # Set with multiple quality filters bullpen polymarket comment-alert --set --min-volume 50000 --min-predictions 20 --exclude-categories sports,culture # Delete the alert bullpen polymarket comment-alert --delete ``` Available filters for `--set`: `--min-pnl`, `--min-volume`, `--min-predictions`, `--min-position-value`, `--min-position-size`, `--category`, `--following-only`, `--exclude-categories`. **Trade Alerts** Receive notifications when qualifying trades are made: ```bash # View current trade alert bullpen polymarket trade-alert # Alert on large buys from experienced traders bullpen polymarket trade-alert --set --min-pnl 10000 --action Buy --min-trade-size 1000 # Alert only from traders you track bullpen polymarket trade-alert --set --tracked-only # Set with price range and category exclusions bullpen polymarket trade-alert --set --min-price 0.10 --max-price 0.90 --exclude-categories culture # Delete the alert bullpen polymarket trade-alert --delete ``` Available filters for `--set`: `--min-pnl`, `--min-volume`, `--min-predictions`, `--min-position-value`, `--category`, `--action`, `--min-trade-size`, `--min-price`, `--max-price`, `--tracked-only`, `--exclude-categories`. **Smart Alerts** Manage broad smart alert preferences for smart money, new wallets, and top traders: ```bash # View current smart alert settings bullpen polymarket smart-alerts # Enable smart money and top traders alerts for specific categories bullpen polymarket smart-alerts --set --categories crypto,politics --smart-money true --top-traders true # Disable new wallet alerts bullpen polymarket smart-alerts --set --new-wallet false ``` ### Address Tracking Polymarket address tracking is now available under the `tracker` subcommand. See [tracker command docs](reference/commands/tracker/index.md) for full details. ```bash # Follow a Polymarket address bullpen tracker follow 0xABC... # Unfollow bullpen tracker unfollow 0xABC... # List followed addresses bullpen tracker following # View recent trades from followed addresses bullpen tracker trades # Update notification filters bullpen tracker follow 0xABC... --update-filters --notify-trades true --trade-threshold 500 ``` Notification filters per followed address: | Filter | Description | |--------|-------------| | `--notify-comments` | Enable/disable comment notifications | | `--notify-trades` | Enable/disable trade notifications | | `--trade-threshold` | Minimum trade size in USD for a notification | | `--markets` | Comma-separated market slugs to watch | | `--category` | Limit to a specific category | | `--min-position-size` | Minimum position size | | `--action` | Trade direction: `All`, `Buy`, or `Sell` | Pagination: `tracker trades` supports `--page` and `--limit`; `tracker following` returns the full list. ## Activity Feed View your account activity history — trades, redemptions, merges, splits, rewards, conversions, and maker rebates. ```bash # View recent activity (defaults to your own address) bullpen polymarket activity # Specify a different address bullpen polymarket activity --address 0xABC... # Filter by activity type bullpen polymarket activity --type trade bullpen polymarket activity --type trade,redeem,reward # Filter by side and date range bullpen polymarket activity --side buy --start 2026-02-01 --end 2026-02-24 # Sort by USDC size bullpen polymarket activity --sort cash --limit 20 ``` | Flag | Type | Default | Description | |------|------|---------|-------------| | `--address` | string | own | Wallet address | | `--limit` | number | `50` | Maximum results | | `--type` | string | | Comma-separated types: trade, split, merge, redeem, reward, conversion, maker_rebate | | `--market` | string | | Filter by market condition ID (repeatable) | | `--side` | string | | Filter by side: buy, sell | | `--start` | string | | Start date (ISO 8601 date or unix timestamp) | | `--end` | string | | End date (ISO 8601 date or unix timestamp) | | `--sort` | string | | Sort by: timestamp, tokens, cash | ## Tags & Series ### Browse Tags List market tags (categories) or discover related tags. ```bash # List all tags bullpen polymarket tags # Find tags related to a specific tag bullpen polymarket tags --related crypto ``` | Flag | Type | Description | |------|------|-------------| | `--related` | string | Show tags related to this slug | ### Browse Series List event series or view details for a specific series. ```bash # List all series bullpen polymarket series # View a specific series by ID bullpen polymarket series 42 ``` | Arg | Type | Description | |-----|------|-------------| | `ID` | positional | Series ID (optional; omit to list all) | ================================================================================ FILE: trading.md ================================================================================ # Trading Buy, sell, and redeem Polymarket prediction market shares. ## Prerequisites Trading requires authentication via `bullpen login`. Credentials are resolved automatically from your stored session. ## Buy Buy shares on a prediction market outcome. ```bash bullpen polymarket buy --yes ``` Example: ```bash bullpen polymarket buy will-btc-reach-100k "Yes" 10.00 --yes ``` The command first shows a trade preview, then executes if `--yes` is set: ``` Buy Yes on "Will BTC reach $100K by March?" Price: 65¢ | Amount: $10.00 Est. shares: 15.38 | Potential: $15.38 Spread: 1.2¢ Order submitted successfully (ID: abc123) Filled: 15.38 @ 65¢ ``` Without `--yes`, the preview is shown and you are prompted to confirm interactively (`Confirm trade? [y/N]:`). Entering anything other than `y` cancels the trade. ## Sell Sell shares on a prediction market outcome. ```bash bullpen polymarket sell --yes ``` Example: ```bash bullpen polymarket sell will-btc-reach-100k "Yes" 15.38 --yes ``` Preview output: ``` Sell Yes on "Will BTC reach $100K by March?" Price: 68¢ | Amount: $10.46 ``` ## Redeem Redeem resolved prediction market positions. Collect winnings for markets that have settled. ```bash bullpen polymarket redeem \ --address 0xABC... \ --condition-ids id1,id2,id3 \ --yes ``` | Flag | Description | |------|-------------| | `--address` | Wallet address (defaults to your own Polymarket address) | | `--condition-ids` | Comma-separated condition IDs to redeem (required) | | `--yes` | Skip confirmation prompt | Both standard binary markets and neg-risk markets are supported. The CLI auto-detects the market type and uses the appropriate redemption path (CTF contract for standard, NegRiskAdapter for neg-risk). All redemptions are gasless via relayer — no MATIC needed. Without `--yes`, the CLI lists the condition IDs and prompts for confirmation (`Confirm redeem? [y/N]:`). To find redeemable condition IDs, check your positions: ```bash bullpen polymarket positions --redeemable --output json ``` ## Limit Buy Place a limit buy order at a specific price. ```bash bullpen polymarket limit-buy \ --price 0.45 --shares 20 --yes ``` | Flag | Description | |------|-------------| | `--price` | Limit price between 0.01 and 0.99 (required) | | `--shares` | Number of shares (required) | | `--expiration` | Order expiration: `gtc` (default), `gtd`, `fok`, or `fak` | | `--post-only` | Reject if the order would fill immediately (maker-only) | | `--yes` | Skip confirmation prompt | | `--preview` | Show order preview without executing | Example: ```bash bullpen polymarket limit-buy will-btc-reach-100k "Yes" \ --price 0.55 --shares 50 --expiration gtc --yes ``` ## Limit Sell Place a limit sell order at a specific price. ```bash bullpen polymarket limit-sell \ --price 0.65 --shares 15 --yes ``` | Flag | Description | |------|-------------| | `--price` | Limit price between 0.01 and 0.99 (required) | | `--shares` | Number of shares (required) | | `--expiration` | Order expiration: `gtc` (default), `gtd`, `fok`, or `fak` | | `--post-only` | Reject if the order would fill immediately (maker-only) | | `--yes` | Skip confirmation prompt | | `--preview` | Show order preview without executing | Example: ```bash bullpen polymarket limit-sell will-btc-reach-100k "Yes" \ --price 0.70 --shares 15 --expiration fok --yes ``` ## Trade Preview Every buy, sell, limit-buy, and limit-sell command shows a preview before executing. The preview includes: | Field | Description | |-------|-------------| | Side | Buy or Sell | | Outcome | The outcome being traded (e.g., "Yes") | | Market | The market question | | Price | Current price in cents | | Amount | USD value of the trade | | Est. shares | Estimated shares to receive (buy only) | | Potential | Potential payout if outcome wins (buy only) | | Spread | Bid-ask spread in cents (buy only) | ## Pre-Trade Setup ### Approve Check and set ERC-1155 and USDC token approvals required for trading. Approvals are one-time per operator on Polygon and are submitted gaslessly via relayer (no MATIC needed). ```bash # Check approval status bullpen polymarket approve --check # Set all required approvals bullpen polymarket approve --yes ``` | Flag | Description | |------|-------------| | `--check` | Only check approval status, don't submit transactions | | `--yes` | Skip confirmation prompt | ### Preflight Run pre-trade safety checks before placing orders. Checks server time sync, account status (close-only mode), USDC balance/allowance, and ERC-1155 approval status. ```bash bullpen polymarket preflight ``` ## CTF Operations All CTF operations (split, merge) are gasless — submitted via Polymarket's relayer. No MATIC is needed. ### Split Split USDC into YES and NO outcome tokens for a condition via the Conditional Token Framework (CTF). ```bash bullpen polymarket split --condition 0xbd31dc8a... --amount 100.00 --yes ``` | Flag | Description | |------|-------------| | `--condition` | Condition ID (required) | | `--amount` | Amount in USDC to split (required) | | `--partition` | Optional custom partition index set list | | `--parent-collection` | Optional parent collection ID | | `--yes` | Skip confirmation prompt | ### Merge Merge YES and NO outcome tokens back into USDC sets. ```bash bullpen polymarket merge --condition 0xbd31dc8a... --amount 50.00 --yes ``` | Flag | Description | |------|-------------| | `--condition` | Condition ID (required) | | `--amount` | Number of USDC sets to merge (required) | | `--partition` | Optional custom partition index set list | | `--parent-collection` | Optional parent collection ID | | `--yes` | Skip confirmation prompt | ## Real-Time Data ### Watch Subscribe to real-time market data updates. ```bash bullpen polymarket watch will-btc-reach-100k ``` | Arg | Description | |-----|-------------| | `MARKET_SLUG` | Market slug or URL (required) | The stream runs until `Ctrl+C`. Use `--output json` for line-delimited JSON events. ## Bridge & Funds ### Deposit Get deposit addresses for a specific Polymarket wallet. ```bash bullpen polymarket deposit --address 0xYourWalletAddress ``` This command returns bridge deposit routes for the provided address. ### Withdraw Withdraw funds from Polymarket to an external address. ```bash bullpen polymarket withdraw --to 0xABC... --amount 100.00 --chain ethereum --yes ``` | Flag | Description | |------|-------------| | `--to` | Destination address (required) | | `--amount` | Amount to withdraw, e.g. "100.00" (required) | | `--chain` | Destination chain (required) | | `--yes` | Skip confirmation prompt | Without `--yes`, the CLI shows a summary and prompts for confirmation. ### Bridge Utilities Query supported assets and check deposit status for an address. ```bash # List supported chains and tokens bullpen polymarket bridge --supported # Check status of deposits for an address (EVM, Solana, or Bitcoin) bullpen polymarket bridge --status 0xYourWalletAddress ``` | Flag | Description | |------|-------------| | `--supported` | List supported chains and tokens | | `--status` | Check status of deposits for a deposit address | ## Exit Codes | Code | Meaning | |------|---------| | 0 | Success | | 1 | General error (invalid args, network, etc.) | | 3 | Trade failed (order rejected by exchange) | ## JSON Output Most trading commands accept `--output json`: ```bash bullpen polymarket buy will-btc-reach-100k "Yes" 10.00 --yes --output json ``` Current behavior caveat: some interactive/state-changing flows still print non-JSON prompt/status text even when `--output json` is set. ================================================================================ FILE: orders-and-watchlist.md ================================================================================ # Orders and Watchlist View open orders, trade history, cancel orders, and maintain a watchlist. ## Orders Overview The `orders` subcommand manages your open orders, trade history, and order cancellation. By default (no flags), it shows your current open orders. ```bash # View open orders (default) bullpen polymarket orders # Trade history bullpen polymarket orders --history # Cancel a single order bullpen polymarket orders --cancel # Bulk cancel (comma-separated IDs) bullpen polymarket orders --cancel id1,id2,id3 # Cancel ALL open orders bullpen polymarket orders --cancel-all --yes # Cancel all orders on a specific market bullpen polymarket orders --cancel-market --yes ``` | Flag | Description | |------|-------------| | `--address` | Wallet address (used with `--history`) | | `--history` | Show past trade history | | `--cancel` | Cancel order(s) by ID; comma-separate multiple IDs | | `--cancel-all` | Cancel ALL open orders | | `--cancel-market` | Cancel all orders on a specific market (by condition ID) | | `--yes` | Skip confirmation prompt (for cancel operations) | **Note:** `--history`, `--cancel`, `--cancel-all`, and `--cancel-market` are mutually exclusive. Only one can be used at a time. ## Open Orders View your current open orders (requires authentication): ```bash bullpen polymarket orders ``` Output: ``` Market Outcome Side Price Shares Expiration ------------------------------------------------------------------------------------ Will BTC reach $100K? Yes BUY 65¢ 10.00 GTC Will ETH flip SOL in TVL? No SELL 42¢ 20.00 EOD ``` ## Trade History View past trades: ```bash bullpen polymarket orders --address 0xABC... --history ``` If `--address` is omitted, the CLI uses your logged-in Polymarket address. Output: ``` Market Outcome Side Price Size Time ------------------------------------------------------------------------------------ Will BTC reach $100K? Yes BUY 65¢ 10.00 2024-12-01T10:30:00Z Will ETH merge succeed? No SELL 40¢ 20.00 2024-12-01T09:15:00Z ``` ## Cancel Orders ### Cancel a Single Order ```bash bullpen polymarket orders --cancel abc123 ``` Output: ``` Order abc123 cancelled. ``` ### Bulk Cancel Cancel multiple orders at once by passing comma-separated IDs: ```bash bullpen polymarket orders --cancel abc123,def456,ghi789 ``` Output: ``` Cancelled 3 order(s). ``` If some orders fail to cancel, the CLI reports which ones and why: ``` Cancelled 2 order(s). ghi789: order not found ``` ### Cancel All Orders Cancel every open order on your account: ```bash bullpen polymarket orders --cancel-all ``` You will be prompted to confirm unless `--yes` is passed: ``` Cancel ALL open orders? [y/N]: y Cancelled 5 order(s). ``` ### Cancel by Market Cancel all orders on a specific market (by condition ID): ```bash bullpen polymarket orders --cancel-market 0x1234abcd... ``` You will be prompted to confirm unless `--yes` is passed: ``` Cancel all orders on market 0x1234abcd...? [y/N]: y Cancelled 3 order(s). ``` ## Watchlist The watchlist is stored locally at `~/.bullpen/watchlist.json` (or `$BULLPEN_HOME/watchlist.json`). ### List Watchlist ```bash bullpen polymarket watchlist ``` Output: ``` Market Added ------------------------------------------------------------------ Will BTC reach $100K by March? 2024-12-01T10:30:00+00:00 Will ETH merge succeed? 2024-11-28T08:00:00+00:00 ``` ### Add a Market ```bash bullpen polymarket watchlist --add will-btc-reach-100k ``` The CLI looks up the market title by slug and confirms: ``` Added 'Will BTC reach $100K by March?' to watchlist. ``` Current behavior note: some slugs resolve only when passed as the event slug (not a child market slug). If `--add` fails with `failed to fetch event`, retry with the parent event slug. ### Remove a Market ```bash bullpen polymarket watchlist --remove will-btc-reach-100k ``` Output: ``` Removed 'will-btc-reach-100k' from watchlist. ``` ### JSON Output ```bash bullpen polymarket watchlist --output json bullpen polymarket orders --output json bullpen polymarket orders --history --output json ``` Current behavior caveat: some mutating commands (`--add`, `--remove`, cancel flows) can still emit plain-text status lines in `--output json` mode. ================================================================================ FILE: reference/index.md ================================================================================ # Command Reference _Last updated: February 26, 2026_ Bullpen CLI command reference generated from installed CLI version `0.1.1`. For LLM ingestion, use the generated [llm.txt](../llm.txt) bundle. ## Global Flags These flags are accepted across commands: | Flag | Values | Description | |---|---|---| | `--output` | `table`, `json` | Output format override | | `--env` | `staging`, `production` | Environment override | | `--config` | path | Custom config file path | ## Command Pages - [`bullpen`](commands/index.md) - [`bullpen login`](commands/auth/login.md) - [`bullpen logout`](commands/auth/logout.md) - [`bullpen config`](commands/config/index.md) - [`bullpen config init`](commands/config/init.md) - [`bullpen config show`](commands/config/show.md) - [`bullpen portfolio`](commands/portfolio/index.md) - [`bullpen portfolio overview`](commands/portfolio/overview.md) - [`bullpen portfolio balances`](commands/portfolio/balances.md) - [`bullpen portfolio pnl`](commands/portfolio/pnl.md) - [`bullpen polymarket`](commands/polymarket/index.md) - [`bullpen polymarket discover`](commands/polymarket/discover.md) - [`bullpen polymarket positions`](commands/polymarket/positions.md) - [`bullpen polymarket activity`](commands/polymarket/activity.md) - [`bullpen polymarket buy`](commands/polymarket/buy.md) - [`bullpen polymarket sell`](commands/polymarket/sell.md) - [`bullpen polymarket limit-buy`](commands/polymarket/limit-buy.md) - [`bullpen polymarket limit-sell`](commands/polymarket/limit-sell.md) - [`bullpen polymarket redeem`](commands/polymarket/redeem.md) - [`bullpen polymarket orders`](commands/polymarket/orders.md) - [`bullpen polymarket search`](commands/polymarket/search.md) - [`bullpen polymarket watchlist`](commands/polymarket/watchlist.md) - [`bullpen polymarket event`](commands/polymarket/event.md) - [`bullpen polymarket trades`](commands/polymarket/trades.md) - [`bullpen polymarket price-history`](commands/polymarket/price-history.md) - [`bullpen polymarket holders`](commands/polymarket/holders.md) - [`bullpen polymarket comments`](commands/polymarket/comments.md) - [`bullpen polymarket feed`](commands/polymarket/feed.md) - [`bullpen polymarket comment-alert`](commands/polymarket/comment-alert.md) - [`bullpen polymarket trade-alert`](commands/polymarket/trade-alert.md) - [`bullpen polymarket smart-alerts`](commands/polymarket/smart-alerts.md) - [`bullpen polymarket approve`](commands/polymarket/approve.md) - [`bullpen polymarket preflight`](commands/polymarket/preflight.md) - [`bullpen polymarket market`](commands/polymarket/market.md) - [`bullpen polymarket markets`](commands/polymarket/markets.md) - [`bullpen polymarket price`](commands/polymarket/price.md) - [`bullpen polymarket deposit`](commands/polymarket/deposit.md) - [`bullpen polymarket withdraw`](commands/polymarket/withdraw.md) - [`bullpen polymarket bridge`](commands/polymarket/bridge.md) - [`bullpen polymarket tags`](commands/polymarket/tags.md) - [`bullpen polymarket series`](commands/polymarket/series.md) - [`bullpen polymarket split`](commands/polymarket/split.md) - [`bullpen polymarket merge`](commands/polymarket/merge.md) - [`bullpen polymarket condition-id`](commands/polymarket/condition-id.md) - [`bullpen polymarket collection-id`](commands/polymarket/collection-id.md) - [`bullpen polymarket position-id`](commands/polymarket/position-id.md) - [`bullpen polymarket watch`](commands/polymarket/watch.md) - [`bullpen polymarket clob`](commands/polymarket/clob/index.md) - [`bullpen polymarket clob midpoint`](commands/polymarket/clob/midpoint.md) - [`bullpen polymarket clob midpoints`](commands/polymarket/clob/midpoints.md) - [`bullpen polymarket clob spread`](commands/polymarket/clob/spread.md) - [`bullpen polymarket clob spreads`](commands/polymarket/clob/spreads.md) - [`bullpen polymarket clob book`](commands/polymarket/clob/book.md) - [`bullpen polymarket clob books`](commands/polymarket/clob/books.md) - [`bullpen polymarket clob batch-prices`](commands/polymarket/clob/batch-prices.md) - [`bullpen polymarket clob last-trades`](commands/polymarket/clob/last-trades.md) - [`bullpen polymarket clob balance`](commands/polymarket/clob/balance.md) - [`bullpen polymarket clob ok`](commands/polymarket/clob/ok.md) - [`bullpen polymarket clob time`](commands/polymarket/clob/time.md) - [`bullpen polymarket clob geoblock`](commands/polymarket/clob/geoblock.md) - [`bullpen polymarket clob fee-rate`](commands/polymarket/clob/fee-rate.md) - [`bullpen polymarket clob account-status`](commands/polymarket/clob/account-status.md) - [`bullpen polymarket clob tick-size`](commands/polymarket/clob/tick-size.md) - [`bullpen polymarket clob neg-risk`](commands/polymarket/clob/neg-risk.md) - [`bullpen polymarket clob order`](commands/polymarket/clob/order.md) - [`bullpen polymarket clob rewards`](commands/polymarket/clob/rewards.md) - [`bullpen polymarket clob earnings`](commands/polymarket/clob/earnings.md) - [`bullpen polymarket clob current-rewards`](commands/polymarket/clob/current-rewards.md) - [`bullpen polymarket clob reward-percentages`](commands/polymarket/clob/reward-percentages.md) - [`bullpen polymarket clob order-scoring`](commands/polymarket/clob/order-scoring.md) - [`bullpen polymarket clob orders-scoring`](commands/polymarket/clob/orders-scoring.md) - [`bullpen polymarket clob market-reward`](commands/polymarket/clob/market-reward.md) - [`bullpen polymarket clob earnings-markets`](commands/polymarket/clob/earnings-markets.md) - [`bullpen polymarket clob api-keys`](commands/polymarket/clob/api-keys.md) - [`bullpen polymarket clob create-api-key`](commands/polymarket/clob/create-api-key.md) - [`bullpen polymarket clob delete-api-key`](commands/polymarket/clob/delete-api-key.md) - [`bullpen polymarket clob price-history`](commands/polymarket/clob/price-history.md) - [`bullpen polymarket clob trades`](commands/polymarket/clob/trades.md) - [`bullpen polymarket clob post-orders`](commands/polymarket/clob/post-orders.md) - [`bullpen polymarket clob market-order`](commands/polymarket/clob/market-order.md) - [`bullpen polymarket clob delete-notifications`](commands/polymarket/clob/delete-notifications.md) - [`bullpen polymarket clob update-balance`](commands/polymarket/clob/update-balance.md) - [`bullpen polymarket clob simplified-markets`](commands/polymarket/clob/simplified-markets.md) - [`bullpen polymarket clob sampling-markets`](commands/polymarket/clob/sampling-markets.md) - [`bullpen polymarket data`](commands/polymarket/data/index.md) - [`bullpen polymarket data leaderboard`](commands/polymarket/data/leaderboard.md) - [`bullpen polymarket data profile`](commands/polymarket/data/profile.md) - [`bullpen polymarket data smart-money`](commands/polymarket/data/smart-money.md) - [`bullpen polymarket data open-interest`](commands/polymarket/data/open-interest.md) - [`bullpen polymarket data volume`](commands/polymarket/data/volume.md) - [`bullpen polymarket data builder-leaderboard`](commands/polymarket/data/builder-leaderboard.md) - [`bullpen polymarket data builder-volume`](commands/polymarket/data/builder-volume.md) - [`bullpen points`](commands/points.md) - [`bullpen rewards`](commands/rewards.md) - [`bullpen notifications`](commands/notifications.md) - [`bullpen tracker`](commands/tracker/index.md) - [`bullpen tracker add`](commands/tracker/add.md) - [`bullpen tracker remove`](commands/tracker/remove.md) - [`bullpen tracker list`](commands/tracker/list.md) - [`bullpen tracker follow`](commands/tracker/follow.md) - [`bullpen tracker unfollow`](commands/tracker/unfollow.md) - [`bullpen tracker following`](commands/tracker/following.md) - [`bullpen tracker trades`](commands/tracker/trades.md) - [`bullpen completion`](commands/completion.md) - [`bullpen shell`](commands/shell.md) - [`bullpen setup`](commands/setup.md) - [`bullpen status`](commands/status.md) - [`bullpen experimental`](commands/experimental/index.md) - [`bullpen experimental list`](commands/experimental/list.md) - [`bullpen experimental enable`](commands/experimental/enable.md) - [`bullpen experimental disable`](commands/experimental/disable.md) - [`bullpen upgrade`](commands/upgrade.md) ## Migration Note The old single-page reference has been replaced by per-command pages under `reference/commands/`. ================================================================================ FILE: install.sh ================================================================================ #!/bin/sh # Bullpen CLI installer # Usage: curl -fsSL https://cli.bullpen.fi/install.sh | sh # # Environment variables: # BULLPEN_VERSION - Install a specific version (e.g., "0.1.0") instead of latest # BULLPEN_INSTALL_DIR - Override install directory (default: ~/.bullpen/bin) set -eu REPO="BullpenFi/bullpen-cli-releases" DEFAULT_INSTALL_DIR="${HOME}/.bullpen/bin" INSTALL_DIR="${BULLPEN_INSTALL_DIR:-${DEFAULT_INSTALL_DIR}}" # Temporary directory for downloads; cleaned up on exit TMPDIR_INSTALL="" cleanup() { if [ -n "${TMPDIR_INSTALL}" ] && [ -d "${TMPDIR_INSTALL}" ]; then rm -rf "${TMPDIR_INSTALL}" fi } trap cleanup EXIT INT TERM log() { printf '%s\n' "$@" } err() { printf 'Error: %s\n' "$1" >&2 exit 1 } # --------------------------------------------------------------------------- # HTTP fetch abstraction (curl preferred, wget fallback) # --------------------------------------------------------------------------- has_cmd() { command -v "$1" >/dev/null 2>&1 } http_get() { _url="$1" if has_cmd curl; then curl -fsSL "$_url" elif has_cmd wget; then wget -qO- "$_url" else err "Neither curl nor wget found. Please install one and retry." fi } http_download() { _url="$1" _dest="$2" if has_cmd curl; then curl -fsSL -o "$_dest" "$_url" elif has_cmd wget; then wget -q -O "$_dest" "$_url" else err "Neither curl nor wget found. Please install one and retry." fi } # --------------------------------------------------------------------------- # Detect platform # --------------------------------------------------------------------------- detect_platform() { OS="$(uname -s)" ARCH="$(uname -m)" case "${OS}" in Darwin) case "${ARCH}" in arm64) TARGET="aarch64-apple-darwin" ;; x86_64) TARGET="x86_64-apple-darwin" ;; *) err "Unsupported architecture on macOS: ${ARCH}. Supported: arm64, x86_64." ;; esac ;; Linux) case "${ARCH}" in x86_64) TARGET="x86_64-unknown-linux-musl" ;; aarch64) TARGET="aarch64-unknown-linux-musl" ;; *) err "Unsupported architecture on Linux: ${ARCH}. Supported: x86_64, aarch64." ;; esac ;; *) err "Unsupported operating system: ${OS}. Supported: Darwin (macOS), Linux." ;; esac log "Detected platform: ${OS} ${ARCH} -> ${TARGET}" } # --------------------------------------------------------------------------- # Resolve version # --------------------------------------------------------------------------- resolve_version() { if [ -n "${BULLPEN_VERSION:-}" ]; then VERSION="${BULLPEN_VERSION}" log "Using specified version: v${VERSION}" else log "Fetching latest release..." LATEST_JSON="$(http_get "https://api.github.com/repos/${REPO}/releases/latest")" || err "Failed to fetch latest release from GitHub. Check your internet connection." # Extract tag_name without jq (POSIX-compatible) VERSION="$(printf '%s' "${LATEST_JSON}" | sed -n 's/.*"tag_name"[[:space:]]*:[[:space:]]*"v\{0,1\}\([^"]*\)".*/\1/p')" if [ -z "${VERSION}" ]; then err "Could not determine latest version from GitHub API response." fi log "Latest version: v${VERSION}" fi } # --------------------------------------------------------------------------- # Download, verify, and install # --------------------------------------------------------------------------- download_and_install() { TARBALL="bullpen-${VERSION}-${TARGET}.tar.gz" CHECKSUM_FILE="${TARBALL}.sha256" BASE_URL="https://github.com/${REPO}/releases/download/v${VERSION}" TMPDIR_INSTALL="$(mktemp -d)" log "Downloading ${TARBALL}..." http_download "${BASE_URL}/${TARBALL}" "${TMPDIR_INSTALL}/${TARBALL}" || err "Failed to download ${BASE_URL}/${TARBALL}. Does this version/platform exist?" log "Downloading checksum..." http_download "${BASE_URL}/${CHECKSUM_FILE}" "${TMPDIR_INSTALL}/${CHECKSUM_FILE}" || err "Failed to download checksum file ${BASE_URL}/${CHECKSUM_FILE}." log "Verifying checksum..." verify_checksum "${TMPDIR_INSTALL}/${TARBALL}" "${TMPDIR_INSTALL}/${CHECKSUM_FILE}" log "Extracting binary..." mkdir -p "${INSTALL_DIR}" tar -xzf "${TMPDIR_INSTALL}/${TARBALL}" -C "${TMPDIR_INSTALL}" # The tarball should contain a 'bullpen' binary (possibly in a subdirectory) BINARY="$(find "${TMPDIR_INSTALL}" -name bullpen -type f ! -path "${TMPDIR_INSTALL}/${TARBALL}" | head -1)" if [ -z "${BINARY}" ]; then err "Could not find 'bullpen' binary in the downloaded archive." fi cp "${BINARY}" "${INSTALL_DIR}/bullpen" chmod +x "${INSTALL_DIR}/bullpen" # Record install method for the auto-updater MARKER_DIR="${HOME}/.bullpen" mkdir -p "${MARKER_DIR}" printf 'curl\n' > "${MARKER_DIR}/install_method" log "Installed bullpen to ${INSTALL_DIR}/bullpen" } # --------------------------------------------------------------------------- # Checksum verification # --------------------------------------------------------------------------- verify_checksum() { _file="$1" _checksum_file="$2" # Read expected checksum (first field of the .sha256 file) EXPECTED="$(awk '{ print $1 }' "$_checksum_file")" if [ -z "${EXPECTED}" ]; then err "Checksum file is empty or malformed." fi # Compute actual checksum OS_NAME="$(uname -s)" if [ "${OS_NAME}" = "Darwin" ]; then ACTUAL="$(shasum -a 256 "$_file" | awk '{ print $1 }')" else ACTUAL="$(sha256sum "$_file" | awk '{ print $1 }')" fi if [ "${ACTUAL}" != "${EXPECTED}" ]; then err "Checksum mismatch! Expected: ${EXPECTED} Got: ${ACTUAL} The downloaded file may be corrupted. Please try again." fi log "Checksum verified." } # --------------------------------------------------------------------------- # PATH setup # --------------------------------------------------------------------------- setup_path() { # If already on PATH, skip case ":${PATH}:" in *":${INSTALL_DIR}:"*) return ;; esac PATH_LINE="export PATH=\"${INSTALL_DIR}:\$PATH\"" ADDED=false for RC_FILE in "${HOME}/.zshrc" "${HOME}/.bashrc" "${HOME}/.profile"; do if [ -f "${RC_FILE}" ]; then # Check for duplicate before appending if ! grep -qF "${INSTALL_DIR}" "${RC_FILE}" 2>/dev/null; then printf '\n# Added by Bullpen CLI installer\n%s\n' "${PATH_LINE}" >> "${RC_FILE}" log "Added ${INSTALL_DIR} to PATH in ${RC_FILE}" ADDED=true fi fi done if [ "${ADDED}" = false ]; then # None of the RC files existed or all already had the entry # Try creating ~/.profile as a fallback if ! grep -qF "${INSTALL_DIR}" "${HOME}/.profile" 2>/dev/null; then printf '\n# Added by Bullpen CLI installer\n%s\n' "${PATH_LINE}" >> "${HOME}/.profile" log "Added ${INSTALL_DIR} to PATH in ${HOME}/.profile" fi fi } # --------------------------------------------------------------------------- # Main # --------------------------------------------------------------------------- main() { log "" log " Bullpen CLI Installer" log " =====================" log "" # If Homebrew manages bullpen, don't install a second copy — direct # the user to update via brew so Homebrew's metadata stays in sync. if has_cmd brew && brew list bullpen >/dev/null 2>&1; then log "Homebrew installation detected." log "" log " To update, run:" log " bullpen upgrade" log "" return fi detect_platform resolve_version download_and_install setup_path log "" log " Bullpen CLI v${VERSION} installed successfully!" log "" log " To get started:" log " 1. Restart your shell or run: export PATH=\"${INSTALL_DIR}:\$PATH\"" log " 2. Verify installation: bullpen --version" log " 3. Log in: bullpen login" log "" } main ================================================================================ FILE: introduction.md ================================================================================ # Introduction: Live Demo Walkthrough A step-by-step guide for demoing the Bullpen CLI on a fresh macOS machine. Every command is pre-filled and ready to copy-paste. Example output is shown below each command. --- ## 1. Install ```bash brew install BullpenFi/tap/bullpen ``` Verify: ```bash bullpen --version ``` ``` bullpen 0.1.19 ``` ## 2. First-Time Setup Run the guided wizard — it initializes config, opens login, and checks Polymarket approvals in one flow: ```bash bullpen setup ``` Or do it manually: ```bash bullpen config init bullpen login ``` A code and URL are displayed. Open the URL in your browser, enter the code, and login completes automatically. Confirm you're logged in: ```bash bullpen status ``` ``` Logged in. Token store: file Access token: present JWT expires: 2026-02-27 17:40:15 UTC Refresh token: present Session expires: 2026-03-07 17:57:24 UTC Turnkey bundle: present (decryptable) Turnkey org: present ``` ## 3. Install AI Agent Skills (Optional) Install skills so Claude Code or Codex CLI can trade on your behalf through natural language: ```bash bullpen skill install ``` ``` Installed 8 skill files to /Users/you/.claude/skills/bullpen-cli Installed 2 skill files to /Users/you/.claude/skills/bullpen-bracket ``` After installing, **restart Claude Code or Codex CLI**. Then just ask: - *"Buy $10 of Yes on will-bitcoin-hit-100k"* - *"Show me trending crypto prediction markets"* - *"What are my open positions?"* ## 4. Check Your Account ```bash bullpen status ``` ``` Bullpen CLI v0.1.19 Environment: production Credentials: file (~/.bullpen/credentials.json) Update: up to date Account Status: Logged in Address: 0x31Ea...B40e JWT expires: 2026-02-27 17:40:15 UTC Session expires: 2026-03-07 17:57:24 UTC Polymarket Status: UP Incidents: none Maintenances: none ``` ```bash bullpen portfolio overview ``` ``` ╭──────────────────────────────────╮ │ Total Portfolio Value +$337.30 │ │ $372.72 │ ├──────────────────────────────────┤ │ Solana -$15.66 │ │ $19.75 │ ├──────────────────────────────────┤ │ Hyperliquid $0.00 │ │ $0.00 │ ├──────────────────────────────────┤ │ Polymarket +$352.96 │ │ $352.96 │ ╰──────────────────────────────────╯ ``` ```bash bullpen points ``` ``` Points Summary ============== Total Points: 3318.69 Total Volume: $220.27 Total Count: 46 ``` ## 5. Discover Markets Browse trending markets: ```bash bullpen polymarket discover --limit 5 ``` ``` Market Odds Vol 24h Liquidity Ends ----------------------------------------------------------------------------------------------------- US strikes Iran by February 28, 2026? Yes 14¢ / No 86¢ $9.6M $664.1K Jan 14 ... and 62 more markets Will Elon Musk post 80-99 tweets from Feb... Yes 0¢ / No 100¢ $7.6M $62.4K Mar 03 ... and 27 more markets Will the Fed decrease interest rates by 50+... Yes 0¢ / No 100¢ $7.0M $6.0M Mar 18 ... and 3 more markets Will LeBron James win the 2025–2026 NBA MVP? Yes 0¢ / No 100¢ $3.6M $143.3K Jun 10 ... and 30 more markets Will Richard Grenell be the leader of Venez... Yes 0¢ / No 100¢ $5.0M $143.4K Dec 31 ... and 54 more markets ``` Filter by category: ```bash bullpen polymarket discover --category crypto --limit 5 ``` ``` Market Odds Vol 24h Liquidity Ends ----------------------------------------------------------------------------------------------------- Will the price of Bitcoin be above $70,000... Yes 0¢ / No 100¢ $846.8K $478.2K Feb 27 ... and 8 more markets Will Bitcoin reach $75,000 in February? Yes 0¢ / No 100¢ $807.0K $128.0K Mar 01 ... and 20 more markets Will the price of Ethereum be above $1,700... Yes 100¢ / No 0¢ $212.9K $403.3K Feb 27 ... and 8 more markets ``` Search for a specific topic: ```bash bullpen polymarket search "bitcoin" ``` ``` Markets (10 results) Market Odds Vol 24h Liquidity ----------------------------------------------------------------------------------------- Will the price of Bitcoin be above $58,000... Yes 100¢ / No 0¢ $4.5M $4.9M Will the price of Bitcoin be above $60,000... Yes 100¢ / No 0¢ $4.5M $4.9M Will the price of Bitcoin be above $64,000... Yes 100¢ / No 0¢ $4.5M $4.9M Will the price of Bitcoin be above $66,000... Yes 0¢ / No 100¢ $4.5M $4.9M Will Bitcoin reach $150,000 in February? Yes 0¢ / No 100¢ $3.1M $7.0M Will Bitcoin dip to $55,000 in February? Yes 1¢ / No 99¢ $3.1M $7.0M ... ``` ## 6. Research a Market Pick a slug from discover/search results and drill in. We'll use the Fed March rate decision: ```bash bullpen polymarket event fed-decision-in-march-885 ``` ``` Fed decision in March? ====================== The FED interest rates are defined in this market by the upper bound of the target federal funds range... Status: Active | Volume: $181.6M | 24h Vol: $7.0M | Liquidity: $6.0M Tags: Economy, Fed Rates, Jerome Powell, Economic Policy, Politics, Fed Markets (4) Question Outcomes Volume Spread ------------------------------------------------------------------------------------- Will the Fed decrease interest rates by 50… Yes 0¢ / No 100¢ $74.4M 0.1¢ Will the Fed decrease interest rates by 25… Yes 2¢ / No 98¢ $21.8M 0.2¢ Will there be no change in Fed interest ra… Yes 97¢ / No 3¢ $21.5M 0.1¢ Will the Fed increase interest rates by 25… Yes 0¢ / No 100¢ $63.8M 0.1¢ ``` Check the current price: ```bash bullpen polymarket price will-the-fed-decrease-interest-rates-by-25-bps-after-the-march-2026-meeting ``` ``` Will the Fed decrease interest rates by 25 bps after the March 2026 meeting? ───────────────────────────────────────────────────────────────────────────── Outcome Mid Last Bid Ask Spread ──────────────────────────────────────────────────────── Yes 1.7¢ 1.6¢ 1.6¢ 1.8¢ 0.2¢ No 98.3¢ 98.2¢ 98.2¢ 98.4¢ 0.2¢ Tick size: 0.0010 Fee: 0 bps ``` See recent trades: ```bash bullpen polymarket trades will-the-fed-decrease-interest-rates-by-25-bps-after-the-march-2026-meeting ``` ``` Time Side Outcome Price Shares USD ------------------------------------------------------------------------ 2026-02-27T18:44:03 Sell No 98¢ 1.39 1.36 2026-02-27T18:43:47 Buy No 98¢ 1.39 1.37 2026-02-27T18:41:03 Sell No 98¢ 1.30 1.28 2026-02-27T18:40:59 Buy Yes 2¢ 425.56 7.66 2026-02-27T18:30:09 Buy No 98¢ 120.80 118.87 2026-02-27T18:25:13 Buy Yes 2¢ 55.56 1.00 ... ``` See who holds positions: ```bash bullpen polymarket holders will-the-fed-decrease-interest-rates-by-25-bps-after-the-march-2026-meeting ``` ``` # Address/User Shares USD Value ---------------------------------------------------------------------- 1 Vitalbrother 687244.53 - 2 blurp5185188 399242.74 - 3 scratattack 330075.28 - 4 Economancy 265646.61 - 5 risk-manager 251068.70 - 6 surf 199999.47 - 7 gloriafoster 179999.32 - 8 Cacctus 168650.98 - 9 Magamyman 120000.00 - 10 debased 115590.41 - ``` ## 7. Place a Trade Preview first (no execution): ```bash bullpen polymarket buy will-the-fed-decrease-interest-rates-by-25-bps-after-the-march-2026-meeting Yes 5 --preview ``` ``` Order Preview ─────────────────────────────────── Action: Buy Yes Market: Will the Fed decrease interest rates by 25 bps after the March 2026 meeting? Amount: $5.00 Price: 1.7¢ Est. Shares: 294.11 Potential: $294.11 Trading Fee: $0.01 Network Fee: ~$0.01 Total Cost: $5.02 Spread: 99.8¢ ─────────────────────────────────── ``` Execute: ```bash bullpen polymarket buy will-the-fed-decrease-interest-rates-by-25-bps-after-the-march-2026-meeting Yes 5 --yes ``` Place a limit order: ```bash bullpen polymarket limit-buy --price 0.01 --shares 100 will-the-fed-decrease-interest-rates-by-25-bps-after-the-march-2026-meeting Yes --yes ``` ## 8. Manage Positions & Orders View your positions: ```bash bullpen polymarket positions ``` ``` Portfolio Value: $89.80 | Cash: $0.00 | Unrealized P&L: +$4.37 Market Outcome Shares Avg Price Value P&L P&L % ------------------------------------------------------------------------------------------------------ Will the New York Knicks win the NBA … Yes 36.0 14¢ 14¢ 5.22 +$0.17 3.5% Will the Denver Nuggets win the NBA W… Yes 33.0 15¢ 16¢ 5.11 +$0.16 3.3% US recession by end of 2026? Yes 28.9 23¢ 22¢ 6.21 -$0.56 -8.2% Will the Oklahoma City Thunder win th… Yes 18.8 36¢ 36¢ 6.70 -$0.04 -0.6% Will Solana dip to $60 in February? No 13.5 75¢ 99¢ 13.47 +$3.32 32.7% Will Bitcoin dip to $55,000 in Februa… No 13.5 74¢ 99¢ 13.41 +$3.42 34.2% S&P 500 all time high by March 31, 20… Yes 8.3 60¢ 55¢ 4.58 -$0.41 -8.3% Will Jesus Christ return before GTA V… Yes 5.0 48¢ 48¢ 2.42 +$0.02 1.0% ... ``` View open orders: ```bash bullpen polymarket orders ``` ``` Market ID Outcome Side Price Size Filled Type -------------------------------------------------------------------------------------------------- Will Kon Knueppel win the… 0x93fb842… Yes BUY 8¢ 5.00 0.00 GTC ... ``` View trade history: ```bash bullpen polymarket activity --type trade --limit 5 ``` ``` Activity (showing 5) Time Type Market Side Amount USDC ────────────────────────────────────────────────────────────────────────────────────── 2026-02-27T18:34:09 TRADE Will the Denver Nuggets win the… BUY 10.0 $1.50 2026-02-27T17:14:07 TRADE Will the Denver Nuggets win the… BUY 13.0 $1.95 2026-02-27T16:31:03 TRADE Will the Denver Nuggets win the… BUY 10.0 $1.50 2026-02-27T14:35:23 TRADE Will the New York Knicks win th… BUY 16.6 $2.32 2026-02-27T14:35:23 TRADE Will the Detroit Pistons win th… BUY 0.6 $0.14 ``` ## 9. Leaderboard & Trader Intelligence View the weekly leaderboard: ```bash bullpen polymarket data leaderboard --period week --limit 10 ``` ``` # Username Address Volume P&L Win Rate Trades ----------------------------------------------------------------------------------------------- 1 gmanas 0xe90b...5da2 $22.9M +$1.7M - - 2 lfc123 0xb904...c255 $4.8M +$749.2K - - 3 joosangyoo 0x07b8...8e25 $8.4M +$540.3K - - 4 0x1979ae6B7E6534dE9c4539D0c20… 0x1979...7c9d $31.5M +$459.4K - - 5 gopatriots 0xe20a...e469 $4.5M +$415.5K - - 6 predictorxyz 0x1d9a...426d $540.3K +$410.4K - - 7 0x6a57D263cD7c8EbA88b857eDEB7… 0x6a57...2afa $1.7M +$392.0K - - 8 kch123 0x6a72...33ee $1.6M +$389.1K - - 9 GamblingIsAllYouNeed 0x507e...beae $11.6M +$354.8K - - 10 0x054eC2F0cCfdaE941886a3eD306… 0x054e...6639 $1.7M +$354.2K - - ``` View the daily leaderboard: ```bash bullpen polymarket data leaderboard --period day --limit 5 ``` ``` # Username Address Volume P&L Win Rate Trades ----------------------------------------------------------------------------------------------- 1 weflyhigh 0x03e8...1697 $430.4K +$400.4K - - 2 Countryside 0xbddf...c684 $610.9K +$346.1K - - 3 kch123 0x6a72...33ee $352.4K +$167.6K - - 4 joosangyoo 0x07b8...8e25 $772.8K +$150.0K - - 5 0x24357454d8d1a0cc93a6c25fd49… 0x6e82...752c $135.6K +$127.8K - - ``` ## 10. Trade Feed Watch the live trade feed filtered to large trades: ```bash bullpen polymarket feed trades --min-trade-size 500 ``` ``` Filtered Trades (10 total, page 1) Market Side Price Size Trader PnL Tracked -------------------------------------------------------------------------------- Will Leverkusen win the 202… SELL 1¢ $591 -$314 - US strikes Iran by February… BUY 4¢ $2.6K $0 - Will Wolverhampton Wanderer… BUY 80¢ $798 $760 - Ethereum Up or Down - Febru… SELL 7¢ $643 -$109 - RC Strasbourg Alsace vs. Ra… BUY 68¢ $2.0K $4.3M - Bitcoin Up or Down - Februa… BUY 59¢ $508 -$6.2K - Will Elon Musk post 60-79 t… BUY 0¢ $8.1K -$65 - ``` ## 11. Watchlist Add a market to your watchlist: ```bash bullpen polymarket watchlist --add will-the-fed-decrease-interest-rates-by-25-bps-after-the-march-2026-meeting ``` View your watchlist: ```bash bullpen polymarket watchlist ``` ## 12. JSON Output & Scripting Every command supports `--output json` for programmatic use: ```bash bullpen polymarket discover --limit 5 --output json | jq '.events[:2] | .[].title' ``` ```json "US strikes Iran?" "Elon Musk tweets February 24 - March 3" ``` ```bash bullpen polymarket positions --output json | jq '.positions[:3] | .[] | {market: .title, outcome, pnl, pnl_pct}' ``` ## 13. Interactive Shell Launch the REPL — runs commands without the `bullpen` prefix: ```bash bullpen shell ``` Inside the shell: ``` bullpen> polymarket discover --limit 5 bullpen> polymarket price will-the-fed-decrease-interest-rates-by-25-bps-after-the-march-2026-meeting bullpen> portfolio overview bullpen> exit ``` ## 14. Upgrade ```bash bullpen upgrade ``` --- ## Demo Tips - **`--preview`** on trading commands shows what *would* happen without executing — great for demos. - **`--output json | jq .`** on any command to show structured data. - **`bullpen shell`** feels like a native trading terminal — impressive for live demos. - Tab completion: `bullpen completion zsh >> ~/.zshrc && source ~/.zshrc`. - The Fed March rate market (`fed-decision-in-march-885`) is a good demo market — high volume, multiple outcomes, active trading. - If a market slug expires or resolves, swap in any slug from `bullpen polymarket discover`. ================================================================================ FILE: march-madness.md ================================================================================ # March Madness Brackets Fill and manage NCAA March Madness bracket picks on Polymarket bracket contests — win prizes for correct predictions. ## Get Started (New Users) If you don't have Bullpen CLI installed yet, run these 3 commands first: === "Homebrew (macOS/Linux)" ```bash brew install bullpenfi/tap/bullpen ``` === "npm" ```bash npm install -g @bullpenfi/cli ``` === "Shell Script" ```bash curl -fsSL https://cli.bullpen.fi/install.sh | sh ``` Then log in: ```bash bullpen login ``` A code and URL are displayed. Open the URL in your browser, enter the code, and you're authenticated. !!! tip "AI Agent Mode" Want Claude Code or Codex CLI to fill your bracket for you? Install AI skills after logging in: ```bash bullpen skill install ``` Then restart Claude Code and ask: *"Fill my March Madness bracket picking Duke to win it all"* ## Quick Start — Fill Your Bracket ```bash # 1. Find the active contest bullpen polymarket bracket contests --status open # 2. Preview chalk picks (higher seed always wins) bullpen polymarket bracket fill-chalk --tiebreaker 145 --dry-run # 3. Submit your bracket bullpen polymarket bracket fill-chalk --tiebreaker 145 # 4. Override with your upset picks bullpen polymarket bracket pick --slot R1_E2 --winner "TCU" # 5. Check your bracket bullpen polymarket bracket summary ``` ## Fill Your Bracket with AI If you installed AI skills (`bullpen skill install`), you can fill your entire bracket through conversation with Claude Code or Codex CLI. Just copy-paste one of these prompts. ### Option A: Fully Autonomous (AI researches and fills for you) Paste this into Claude Code or Codex CLI: ``` Fill my 2026 NCAA March Madness bracket on Bullpen. Here's what I want: 1. Find the active bracket contest 2. Research the tournament field — seeds, matchups, team strengths 3. Fill all 63 picks using your best analysis: - Favor teams with March experience and defensive identity - Pick 2-3 realistic upsets per region (12-over-5, 10-over-7 range) - Pick a champion you believe in, not just the #1 overall seed 4. Set tiebreaker to your best estimate of championship game total points 5. Show me the bracket summary when done Go ahead and submit the picks — I trust your judgment. ``` ### Option B: Interactive Bracket Builder (AI asks you questions) Paste this into Claude Code or Codex CLI for a personalized bracket: ``` Help me fill my 2026 NCAA March Madness bracket on Bullpen. Walk me through it by asking me these questions one at a time, then build my bracket based on my answers: 1. Who's your champion? (gut feel — who wins it all?) 2. Chaos level? (chalk / moderate / madness) - chalk: mostly higher seeds win - moderate: 2-3 upsets per region - madness: go wild, 4-5 upsets per region 3. Teams you love this year? (2-3 teams you think are underseeded or on a run) 4. Teams to fade? (overseeded or overrated teams you want to lose early) 5. Cinderella pick? (a double-digit seed to make a deep run — Sweet 16 or further) 6. Conference bias? (e.g. "Big Ten is underrated" or "SEC is overrated") 7. Tiebreaker — predicted total points in the championship game? After I answer, generate the full 63-pick bracket reflecting my preferences, preview it with --dry-run, and submit it once I confirm. ``` Both prompts work with Claude Code (`claude`) or Codex CLI. The AI will use the Bullpen CLI bracket commands to find the contest, generate picks, and submit them. ## How It Works Polymarket runs bracket contests where you predict the winner of all 63 NCAA tournament games. Points are awarded for each correct pick, with later rounds worth more. The tiebreaker (predicted total points in the championship game) resolves ties. **64 teams, 4 regions** (East, West, South, Midwest), **63 total picks** | Round | Games | Points/Pick | Max Points | |-------|-------|-------------|------------| | First Round (R1) | 32 | 1 | 32 | | Second Round (R2) | 16 | 2 | 32 | | Sweet 16 (R3) | 8 | 4 | 32 | | Elite 8 (R4) | 4 | 8 | 32 | | Final Four (R5) | 2 | 16 | 32 | | Championship (R6) | 1 | 32 | 32 | | **Total** | **63** | — | **192** | ## Find Contests ```bash # List all bracket contests bullpen polymarket bracket contests # Filter by status bullpen polymarket bracket contests --status open # JSON output for scripting bullpen polymarket bracket contests --output json ``` ## View the Bracket ```bash # Full bracket tree with matchups and seeds bullpen polymarket bracket bracket-view # JSON output bullpen polymarket bracket bracket-view --output json ``` ## Fill Your Bracket ### Option 1: Auto-Fill with Chalk (Higher Seeds Win) The fastest way to get a complete bracket — always picks the higher seed: ```bash # Preview first (no submission) bullpen polymarket bracket fill-chalk --tiebreaker 145 --dry-run # Submit bullpen polymarket bracket fill-chalk --tiebreaker 145 ``` Picks are submitted **round by round** (R1 first, then R2-R6). If any round batch fails, the CLI automatically falls back to individual pick submission. A final verification confirms how many picks persisted. ### Option 2: Fill from a JSON File Create a picks file with your custom selections: ```json { "picks": [ {"slot": "R1_E1", "winner": "Duke"}, {"slot": "R1_E2", "winner": "TCU"}, {"slot": "R1_S1", "winner": "Illinois"}, {"slot": "R2_E1", "winner": "Duke"}, {"slot": "R6_CH1", "winner": "Duke"} ], "tiebreaker": 148 } ``` ```bash # Preview bullpen polymarket bracket fill --file picks.json --dry-run # Submit bullpen polymarket bracket fill --file picks.json ``` Team names support **fuzzy matching** — use short names like "Duke", "UConn", "Michigan St". ### Option 3: Pick One at a Time Submit or update individual picks: ```bash bullpen polymarket bracket pick --slot R1_E1 --winner "Duke" bullpen polymarket bracket pick --slot R2_E1 --winner "Duke" bullpen polymarket bracket pick --slot R6_CH1 --winner "Duke" ``` Works for all rounds (R1-R6). For later rounds where matchups aren't determined yet, the CLI resolves team names against all tournament entries. ## Slot ID Format Slot IDs identify each game in the bracket: `R{round}_{region}_{game}` | Slot | Meaning | |------|---------| | `R1_E1` | East region, Round 1, Game 1 (seed 1 vs seed 16) | | `R1_E8` | East region, Round 1, Game 8 (seed 8 vs seed 9) | | `R2_W4` | West region, Round 2, Game 4 | | `R3_S2` | South region, Sweet 16, Game 2 | | `R4_MW1` | Midwest region, Elite 8, Game 1 | | `R5_FF1` | Final Four, Game 1 | | `R6_CH1` | Championship game | Get exact slot IDs from `bullpen polymarket bracket bracket-view --output json`. ## Set Tiebreaker The tiebreaker is your prediction of the total points scored in the championship game. It resolves ties in the final standings. ```bash bullpen polymarket bracket submit --tiebreaker 145 ``` !!! note `fill-chalk` and `fill` set the tiebreaker as part of submission. Use `submit --tiebreaker` to update it separately. ## View Your Picks ```bash # All picks bullpen polymarket bracket picks # Filter by round bullpen polymarket bracket picks --round 1 bullpen polymarket bracket picks --round 5 # Final Four only # JSON output bullpen polymarket bracket picks --output json ``` ## Bracket Summary See a compact overview — champion, Final Four, Elite 8, upsets, and pick count: ```bash bullpen polymarket bracket summary ``` ``` Champion: Duke Final Four: Duke (E) | Arizona (W) | Iowa St. (MW) | Illinois (S) Elite 8: Duke (E) | Michigan St. (E) | Arizona (W) | ... Upsets: TCU(9)>Ohio St.(8), USF(11)>Louisville(6) Picks: 63/63 Tiebreaker: 148 ``` ## Track Results Once the tournament starts: ```bash # Game results bullpen polymarket bracket results # Your rank and score bullpen polymarket bracket status # Full leaderboard bullpen polymarket bracket leaderboard ``` ## Polymarket Market Mappings Each bracket game maps to a Polymarket prediction market. View the mappings: ```bash bullpen polymarket bracket markets ``` This lets you cross-reference bracket picks with live Polymarket odds for your research. ## Strategy Guide ### Chalk (Favor Higher Seeds) Pick the team with the better seed in every game. Maximizes expected correct picks but leaves points on the table if there are upsets. ```bash bullpen polymarket bracket fill-chalk --tiebreaker 145 ``` ### Upset-Heavy Target statistically common upsets in Round 1: - **12 over 5**: ~35% historically - **10 over 7**: ~40% historically - **11 over 6**: ~37% historically - **13 over 4**: ~21% historically - **14 over 3**: ~15% historically Start with chalk, then override 2-3 upsets per region: ```bash bullpen polymarket bracket fill-chalk --tiebreaker 150 bullpen polymarket bracket pick --slot R1_E5 --winner "12-seed team" bullpen polymarket bracket pick --slot R1_W4 --winner "13-seed team" ``` ### Custom Champion (Work Backwards) 1. Pick your champion (`R6_CH1`) 2. Work backwards — your champion must win Final Four, Elite 8, etc. 3. Fill the rest freely ```bash bullpen polymarket bracket fill-chalk --tiebreaker 152 bullpen polymarket bracket pick --slot R6_CH1 --winner "Duke" bullpen polymarket bracket pick --slot R5_FF1 --winner "Duke" # Continue working backwards through Duke's region ``` ### Contrarian (Large Field Differentiation) In contests with many participants, differentiation matters more than raw accuracy. Pick a non-consensus champion (3 or 4 seed) and several 12-seed upsets. ## Troubleshooting | Issue | Fix | |-------|-----| | "Not authenticated" | Run `bullpen login` | | "Contest not found" | Run `bullpen polymarket bracket contests` to get valid IDs | | "Invalid slot ID" | Use `bracket-view --output json` to get exact slot IDs | | "No team matching..." | Check team names with `bracket-view`. Fuzzy matching works for short names. | | "Ambiguous team name..." | Be more specific — the error lists matching candidates | | Picks not persisting | The CLI verifies and falls back to individual submission automatically | | Command not found | Run `bullpen upgrade` to get the latest version | ================================================================================ FILE: reference/commands/auth/login.md ================================================================================ # `bullpen login` _Last updated: March 19, 2026_ Log in to Bullpen via device auth (RFC 8628): displays a code, opens browser. ## Usage ```bash bullpen login [OPTIONS] ``` ## Live Help ```text Log in to Bullpen via device auth (RFC 8628): displays a code, opens browser Usage: bullpen login [OPTIONS] Options: --non-interactive --webapp-url Override the web app URL for browser login --skip-init Skip post-login wallet initialization --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen login bullpen login --skip-init ``` ================================================================================ FILE: reference/commands/auth/logout.md ================================================================================ # `bullpen logout` _Last updated: March 19, 2026_ Log out and clear stored credentials. ## Usage ```bash bullpen logout ``` ## Live Help ```text Log out and clear stored credentials Usage: bullpen logout [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen logout ``` ================================================================================ FILE: reference/commands/completion.md ================================================================================ # `bullpen completion` _Last updated: February 26, 2026_ Generate shell completion scripts for bash, zsh, fish, elvish, or PowerShell ## Usage ```bash bullpen completion [OPTIONS] ``` ## Live Help ```text Generate shell completion scripts for bash, zsh, fish, elvish, or PowerShell Usage: bullpen completion [OPTIONS] Arguments: [possible values: bash, elvish, fish, powershell, zsh] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen completion [OPTIONS] bullpen completion --help bullpen completion --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen completion --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/config/index.md ================================================================================ # `bullpen config` _Last updated: February 26, 2026_ Initialize and manage CLI configuration ## Usage ```bash bullpen config [OPTIONS] ``` ## Subcommands | Subcommand | Description | |---|---| | `init` | Create a new configuration file with default settings | | `show` | Display the current configuration | ## Live Help ```text Initialize and manage CLI configuration Usage: bullpen config [OPTIONS] Commands: init Create a new configuration file with default settings show Display the current configuration help Print this message or the help of the given subcommand(s) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen config [OPTIONS] bullpen config --help bullpen config --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen config", "type": "command_group", "subcommands": [ "init", "show" ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/config/init.md ================================================================================ # `bullpen config init` _Last updated: February 26, 2026_ Create a new configuration file with default settings ## Usage ```bash bullpen config init [OPTIONS] ``` ## Live Help ```text Create a new configuration file with default settings Usage: bullpen config init [OPTIONS] Options: --env [possible values: staging, production] --output [possible values: table, json] --usergate-url --config --output-format [possible values: table, json] --credential-store [possible values: auto, keyring, file, ephemeral] -h, --help Print help ``` ## Example Commands ```bash bullpen config init [OPTIONS] bullpen config init --help bullpen config init --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen config init --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/config/show.md ================================================================================ # `bullpen config show` _Last updated: February 26, 2026_ Display the current configuration ## Usage ```bash bullpen config show [OPTIONS] ``` ## Live Help ```text Display the current configuration Usage: bullpen config show [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen config show [OPTIONS] bullpen config show --help bullpen config show --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen config show --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/experimental/disable.md ================================================================================ # `bullpen experimental disable` _Last updated: February 26, 2026_ Disable an experimental feature ## Usage ```bash bullpen experimental disable [OPTIONS] ``` ## Live Help ```text Disable an experimental feature Usage: bullpen experimental disable [OPTIONS] Arguments: Feature name (e.g. device_login) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen experimental disable [OPTIONS] bullpen experimental disable --help bullpen experimental disable --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen experimental disable", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/experimental/enable.md ================================================================================ # `bullpen experimental enable` _Last updated: February 26, 2026_ Enable an experimental feature ## Usage ```bash bullpen experimental enable [OPTIONS] ``` ## Live Help ```text Enable an experimental feature Usage: bullpen experimental enable [OPTIONS] Arguments: Feature name (e.g. device_login) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen experimental enable [OPTIONS] bullpen experimental enable --help bullpen experimental enable --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen experimental enable", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/experimental/index.md ================================================================================ # `bullpen experimental` _Last updated: February 26, 2026_ Enable, disable, and list experimental features ## Usage ```bash bullpen experimental [OPTIONS] ``` ## Subcommands | Subcommand | Description | |---|---| | `list` | List all experimental features and their status | | `enable` | Enable an experimental feature | | `disable` | Disable an experimental feature | ## Live Help ```text Enable, disable, and list experimental features Usage: bullpen experimental [OPTIONS] Commands: list List all experimental features and their status enable Enable an experimental feature disable Disable an experimental feature help Print this message or the help of the given subcommand(s) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen experimental [OPTIONS] bullpen experimental --help bullpen experimental --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen experimental", "type": "command_group", "subcommands": [ "list", "enable", "disable" ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/experimental/list.md ================================================================================ # `bullpen experimental list` _Last updated: February 26, 2026_ List all experimental features and their status ## Usage ```bash bullpen experimental list [OPTIONS] ``` ## Live Help ```text List all experimental features and their status Usage: bullpen experimental list [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen experimental list [OPTIONS] bullpen experimental list --help bullpen experimental list --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen experimental list --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/index.md ================================================================================ # `bullpen` _Last updated: February 26, 2026_ Bullpen CLI — trade prediction markets from your terminal ## Usage ```bash bullpen [OPTIONS] [COMMAND] ``` ## Subcommands | Subcommand | Description | |---|---| | `auth` | Authentication: login, logout, and view credential status | | `config` | Initialize and manage CLI configuration | | `portfolio` | View portfolio balances, overview, and P&L across all chains | | `polymarket` | Polymarket prediction market commands: discover, search, trade, and manage positions [aliases: pm] | | `points` | Show Bullpen points balance and distribution history | | `rewards` | Show and claim available rewards | | `notifications` | View and manage account notifications | | `tracker` | Track wallets and monitor smart money activity | | `completion` | Generate shell completion scripts for bash, zsh, fish, elvish, or PowerShell | | `shell` | Launch an interactive REPL shell with readline history | | `setup` | Guided first-time setup: configure, authenticate, and approve Polymarket trading | | `status` | Show CLI version, environment, account info, and Polymarket platform status | | `experimental` | Enable, disable, and list experimental features | | `upgrade` | Update the bullpen binary to the latest release from GitHub | ## Live Help ```text Bullpen CLI — trade prediction markets from your terminal Usage: bullpen [OPTIONS] [COMMAND] Commands: auth Authentication: login, logout, and view credential status config Initialize and manage CLI configuration portfolio View portfolio balances, overview, and P&L across all chains polymarket Polymarket prediction market commands: discover, search, trade, and manage positions [aliases: pm] points Show Bullpen points balance and distribution history rewards Show and claim available rewards notifications View and manage account notifications tracker Track wallets and monitor smart money activity completion Generate shell completion scripts for bash, zsh, fish, elvish, or PowerShell shell Launch an interactive REPL shell with readline history setup Guided first-time setup: configure, authenticate, and approve Polymarket trading status Show CLI version, environment, account info, and Polymarket platform status experimental Enable, disable, and list experimental features upgrade Update the bullpen binary to the latest release from GitHub help Print this message or the help of the given subcommand(s) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help -V, --version Print version ``` ## Example Commands ```bash bullpen [OPTIONS] [COMMAND] bullpen --help bullpen --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen", "type": "command_group", "subcommands": [ "auth", "config", "portfolio", "polymarket", "points", "rewards" ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/notifications.md ================================================================================ # `bullpen notifications` _Last updated: February 26, 2026_ View and manage account notifications ## Usage ```bash bullpen notifications [OPTIONS] ``` ## Live Help ```text View and manage account notifications Usage: bullpen notifications [OPTIONS] Options: --output [possible values: table, json] --unread Show only unread notifications --env [possible values: staging, production] --mark-read Mark all notifications as read --config -h, --help Print help ``` ## Example Commands ```bash bullpen notifications [OPTIONS] bullpen notifications --help bullpen notifications --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen notifications --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/points.md ================================================================================ # `bullpen points` _Last updated: February 26, 2026_ Show Bullpen points balance and distribution history ## Usage ```bash bullpen points [OPTIONS] ``` ## Live Help ```text Show Bullpen points balance and distribution history Usage: bullpen points [OPTIONS] Options: --history Include points distribution history --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen points [OPTIONS] bullpen points --help bullpen points --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen points --output json", "points": { "total": 12345, "tier": "Pro", "next_tier_points": 15000 }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/activity.md ================================================================================ # `bullpen polymarket activity` _Last updated: February 26, 2026_ View activity history (trades, redemptions, rewards, etc.) ## Usage ```bash bullpen polymarket activity [OPTIONS] ``` ## Live Help ```text View activity history (trades, redemptions, rewards, etc.) Usage: bullpen polymarket activity [OPTIONS] Options: --address
Polymarket address (defaults to your own) --output [possible values: table, json] --env [possible values: staging, production] --limit Maximum number of results (default 50) [default: 50] --config --type Filter by type: trade, split, merge, redeem, reward, conversion, deposit, withdrawal, yield, maker_rebate (comma-separated) --market Filter by market condition ID (repeatable) --side Filter by side: buy, sell --start Start date (ISO 8601 or unix timestamp) --end End date (ISO 8601 or unix timestamp) --sort Sort by: timestamp, tokens, cash -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket activity [OPTIONS] bullpen polymarket activity --help bullpen polymarket activity --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket activity --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/approve.md ================================================================================ # `bullpen polymarket approve` _Last updated: February 26, 2026_ Check and set ERC-1155 token approvals for sell orders ## Usage ```bash bullpen polymarket approve [OPTIONS] ``` ## Live Help ```text Check and set ERC-1155 token approvals for sell orders Usage: bullpen polymarket approve [OPTIONS] Options: --check Only check approval status, don't submit transactions --output [possible values: table, json] --env [possible values: staging, production] --yes Skip confirmation prompt --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket approve [OPTIONS] bullpen polymarket approve --help bullpen polymarket approve --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket approve", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/bridge.md ================================================================================ # `bullpen polymarket bridge` _Last updated: February 26, 2026_ Bridge utilities: supported assets and deposit transaction status ## Usage ```bash bullpen polymarket bridge [OPTIONS] ``` ## Live Help ```text Bridge utilities: supported assets and deposit transaction status Usage: bullpen polymarket bridge [OPTIONS] Options: --output [possible values: table, json] --supported List supported chains and tokens --env [possible values: staging, production] --status Check status of all deposits for a deposit address (EVM, Solana, or Bitcoin) --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket bridge [OPTIONS] bullpen polymarket bridge --help bullpen polymarket bridge --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket bridge --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/buy.md ================================================================================ # `bullpen polymarket buy` _Last updated: February 26, 2026_ Buy shares on a prediction market outcome ## Usage ```bash bullpen polymarket buy [OPTIONS] ``` ## Live Help ```text Buy shares on a prediction market outcome Usage: bullpen polymarket buy [OPTIONS] Arguments: Market slug (e.g., "will-trump-win") Outcome name (e.g., "Yes" or "No") Amount in USD Options: --output [possible values: table, json] --yes Skip confirmation --env [possible values: staging, production] --preview Show order preview without executing --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket buy [OPTIONS] bullpen polymarket buy --help bullpen polymarket buy --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket buy", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/account-status.md ================================================================================ # `bullpen polymarket clob account-status` _Last updated: February 26, 2026_ Get account close-only mode status (authenticated) ## Usage ```bash bullpen polymarket clob account-status [OPTIONS] ``` ## Live Help ```text Get account close-only mode status (authenticated) Usage: bullpen polymarket clob account-status [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob account-status [OPTIONS] bullpen polymarket clob account-status --help bullpen polymarket clob account-status --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob account-status --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/api-keys.md ================================================================================ # `bullpen polymarket clob api-keys` _Last updated: February 26, 2026_ List API keys associated with the authenticated wallet (authenticated) ## Usage ```bash bullpen polymarket clob api-keys [OPTIONS] ``` ## Live Help ```text List API keys associated with the authenticated wallet (authenticated) Usage: bullpen polymarket clob api-keys [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob api-keys [OPTIONS] bullpen polymarket clob api-keys --help bullpen polymarket clob api-keys --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob api-keys --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/balance.md ================================================================================ # `bullpen polymarket clob balance` _Last updated: February 26, 2026_ Query USDC balance and allowance (authenticated) ## Usage ```bash bullpen polymarket clob balance [OPTIONS] ``` ## Live Help ```text Query USDC balance and allowance (authenticated) Usage: bullpen polymarket clob balance [OPTIONS] Options: --asset-type Asset type: collateral or conditional [default: collateral] --output [possible values: table, json] --env [possible values: staging, production] --token-id Token ID (required for conditional asset type) --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob balance [OPTIONS] bullpen polymarket clob balance --help bullpen polymarket clob balance --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob balance --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/batch-prices.md ================================================================================ # `bullpen polymarket clob batch-prices` _Last updated: February 26, 2026_ Get batch prices for multiple token IDs ## Usage ```bash bullpen polymarket clob batch-prices [OPTIONS] ``` ## Live Help ```text Get batch prices for multiple token IDs Usage: bullpen polymarket clob batch-prices [OPTIONS] Arguments: Comma-separated token IDs (e.g. "123,456,789") Options: --output [possible values: table, json] --side Side: buy or sell [default: buy] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob batch-prices [OPTIONS] bullpen polymarket clob batch-prices --help bullpen polymarket clob batch-prices --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob batch-prices --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/book.md ================================================================================ # `bullpen polymarket clob book` _Last updated: February 26, 2026_ Get order book depth for a token ID ## Usage ```bash bullpen polymarket clob book [OPTIONS] ``` ## Live Help ```text Get order book depth for a token ID Usage: bullpen polymarket clob book [OPTIONS] Arguments: Token ID (condition token, large decimal string) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob book [OPTIONS] bullpen polymarket clob book --help bullpen polymarket clob book --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob book --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/books.md ================================================================================ # `bullpen polymarket clob books` _Last updated: February 26, 2026_ Get order books for multiple token IDs (batch) ## Usage ```bash bullpen polymarket clob books [OPTIONS] ``` ## Live Help ```text Get order books for multiple token IDs (batch) Usage: bullpen polymarket clob books [OPTIONS] Arguments: Comma-separated token IDs (e.g. "123,456,789") Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob books [OPTIONS] bullpen polymarket clob books --help bullpen polymarket clob books --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob books --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/create-api-key.md ================================================================================ # `bullpen polymarket clob create-api-key` _Last updated: February 26, 2026_ Create or derive API key credentials for the authenticated wallet (authenticated) ## Usage ```bash bullpen polymarket clob create-api-key [OPTIONS] ``` ## Live Help ```text Create or derive API key credentials for the authenticated wallet (authenticated) Usage: bullpen polymarket clob create-api-key [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob create-api-key [OPTIONS] bullpen polymarket clob create-api-key --help bullpen polymarket clob create-api-key --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob create-api-key", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/current-rewards.md ================================================================================ # `bullpen polymarket clob current-rewards` _Last updated: February 26, 2026_ List current active reward programs (authenticated) ## Usage ```bash bullpen polymarket clob current-rewards [OPTIONS] ``` ## Live Help ```text List current active reward programs (authenticated) Usage: bullpen polymarket clob current-rewards [OPTIONS] Options: --cursor Pagination cursor (from previous response next_cursor) --output [possible values: table, json] --env [possible values: staging, production] --limit Maximum number of rows to print in table output --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob current-rewards [OPTIONS] bullpen polymarket clob current-rewards --help bullpen polymarket clob current-rewards --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob current-rewards --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/delete-api-key.md ================================================================================ # `bullpen polymarket clob delete-api-key` _Last updated: February 26, 2026_ Delete the current API key used by the authenticated wallet (authenticated) ## Usage ```bash bullpen polymarket clob delete-api-key [OPTIONS] ``` ## Live Help ```text Delete the current API key used by the authenticated wallet (authenticated) Usage: bullpen polymarket clob delete-api-key [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob delete-api-key [OPTIONS] bullpen polymarket clob delete-api-key --help bullpen polymarket clob delete-api-key --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob delete-api-key", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/delete-notifications.md ================================================================================ # `bullpen polymarket clob delete-notifications` _Last updated: February 26, 2026_ Delete CLOB notifications by ID (authenticated) ## Usage ```bash bullpen polymarket clob delete-notifications [OPTIONS] ``` ## Live Help ```text Delete CLOB notifications by ID (authenticated) Usage: bullpen polymarket clob delete-notifications [OPTIONS] Arguments: Notification IDs (comma-separated) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob delete-notifications [OPTIONS] bullpen polymarket clob delete-notifications --help bullpen polymarket clob delete-notifications --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob delete-notifications --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/earnings-markets.md ================================================================================ # `bullpen polymarket clob earnings-markets` _Last updated: February 26, 2026_ Get earnings with market reward config for a date (authenticated) ## Usage ```bash bullpen polymarket clob earnings-markets [OPTIONS] --date ``` ## Live Help ```text Get earnings with market reward config for a date (authenticated) Usage: bullpen polymarket clob earnings-markets [OPTIONS] --date Options: --date Date in YYYY-MM-DD format --output [possible values: table, json] --cursor Pagination cursor (from previous response next_cursor) --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob earnings-markets [OPTIONS] --date bullpen polymarket clob earnings-markets --help bullpen polymarket clob earnings-markets --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob earnings-markets --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/earnings.md ================================================================================ # `bullpen polymarket clob earnings` _Last updated: February 26, 2026_ View total earnings summary for a date (authenticated) ## Usage ```bash bullpen polymarket clob earnings [OPTIONS] --date ``` ## Live Help ```text View total earnings summary for a date (authenticated) Usage: bullpen polymarket clob earnings [OPTIONS] --date Options: --date Date in YYYY-MM-DD format --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob earnings [OPTIONS] --date bullpen polymarket clob earnings --help bullpen polymarket clob earnings --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob earnings --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/fee-rate.md ================================================================================ # `bullpen polymarket clob fee-rate` _Last updated: February 26, 2026_ Get the fee rate in basis points for a token ID ## Usage ```bash bullpen polymarket clob fee-rate [OPTIONS] ``` ## Live Help ```text Get the fee rate in basis points for a token ID Usage: bullpen polymarket clob fee-rate [OPTIONS] Arguments: Token ID (condition token, large decimal string) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob fee-rate [OPTIONS] bullpen polymarket clob fee-rate --help bullpen polymarket clob fee-rate --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob fee-rate --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/geoblock.md ================================================================================ # `bullpen polymarket clob geoblock` _Last updated: February 26, 2026_ Check geo-restriction status for your IP address ## Usage ```bash bullpen polymarket clob geoblock [OPTIONS] ``` ## Live Help ```text Check geo-restriction status for your IP address Usage: bullpen polymarket clob geoblock [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob geoblock [OPTIONS] bullpen polymarket clob geoblock --help bullpen polymarket clob geoblock --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob geoblock --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/index.md ================================================================================ # `bullpen polymarket clob` _Last updated: February 26, 2026_ Direct CLOB API commands: prices, order book, balances, and order lookup ## Usage ```bash bullpen polymarket clob [OPTIONS] ``` ## Subcommands | Subcommand | Description | |---|---| | `midpoint` | Get the midpoint price for a token ID | | `midpoints` | Get midpoint prices for multiple token IDs (batch) | | `spread` | Get the bid-ask spread for a token ID | | `spreads` | Get bid-ask spreads for multiple token IDs (batch) | | `book` | Get order book depth for a token ID | | `books` | Get order books for multiple token IDs (batch) | | `batch-prices` | Get batch prices for multiple token IDs | | `last-trades` | Get last trade prices for multiple token IDs (batch) | | `balance` | Query USDC balance and allowance (authenticated) | | `ok` | Check CLOB API health | | `time` | Get the current CLOB server time | | `geoblock` | Check geo-restriction status for your IP address | | `fee-rate` | Get the fee rate in basis points for a token ID | | `account-status` | Get account close-only mode status (authenticated) | | `tick-size` | Get the minimum tick size for a token ID | | `neg-risk` | Check whether a token uses the NegRisk adapter | | `order` | Look up a single order by order ID (authenticated) | | `rewards` | View reward earnings for a specific date (authenticated) | | `earnings` | View total earnings summary for a date (authenticated) | | `current-rewards` | List current active reward programs (authenticated) | | `reward-percentages` | View reward percentage breakdown by market (authenticated) | | `order-scoring` | Check if a single order is scoring rewards (authenticated) | | `orders-scoring` | Check if multiple orders are scoring rewards (authenticated) | | `market-reward` | Get reward details for a specific market (authenticated) | | `earnings-markets` | Get earnings with market reward config for a date (authenticated) | | `api-keys` | List API keys associated with the authenticated wallet (authenticated) | | `create-api-key` | Create or derive API key credentials for the authenticated wallet (authenticated) | | `delete-api-key` | Delete the current API key used by the authenticated wallet (authenticated) | | `price-history` | Get price history for a token ID (unauthenticated) | | `trades` | Get authenticated trade history filtered by market/asset (authenticated) | | `post-orders` | Post multiple limit orders in one batch call (authenticated, direct CLOB) | | `market-order` | Place an explicit market order directly on the Polymarket CLOB (authenticated) | | `delete-notifications` | Delete CLOB notifications by ID (authenticated) | | `update-balance` | Refresh on-chain USDC balance and allowance in the CLOB (authenticated) | | `simplified-markets` | List simplified market views with reduced detail (unauthenticated) | | `sampling-markets` | List reward-eligible sampling markets (unauthenticated) | ## Live Help ```text Direct CLOB API commands: prices, order book, balances, and order lookup Usage: bullpen polymarket clob [OPTIONS] Commands: midpoint Get the midpoint price for a token ID midpoints Get midpoint prices for multiple token IDs (batch) spread Get the bid-ask spread for a token ID spreads Get bid-ask spreads for multiple token IDs (batch) book Get order book depth for a token ID books Get order books for multiple token IDs (batch) batch-prices Get batch prices for multiple token IDs last-trades Get last trade prices for multiple token IDs (batch) balance Query USDC balance and allowance (authenticated) ok Check CLOB API health time Get the current CLOB server time geoblock Check geo-restriction status for your IP address fee-rate Get the fee rate in basis points for a token ID account-status Get account close-only mode status (authenticated) tick-size Get the minimum tick size for a token ID neg-risk Check whether a token uses the NegRisk adapter order Look up a single order by order ID (authenticated) rewards View reward earnings for a specific date (authenticated) earnings View total earnings summary for a date (authenticated) current-rewards List current active reward programs (authenticated) reward-percentages View reward percentage breakdown by market (authenticated) order-scoring Check if a single order is scoring rewards (authenticated) orders-scoring Check if multiple orders are scoring rewards (authenticated) market-reward Get reward details for a specific market (authenticated) earnings-markets Get earnings with market reward config for a date (authenticated) api-keys List API keys associated with the authenticated wallet (authenticated) create-api-key Create or derive API key credentials for the authenticated wallet (authenticated) delete-api-key Delete the current API key used by the authenticated wallet (authenticated) price-history Get price history for a token ID (unauthenticated) trades Get authenticated trade history filtered by market/asset (authenticated) post-orders Post multiple limit orders in one batch call (authenticated, direct CLOB) market-order Place an explicit market order directly on the Polymarket CLOB (authenticated) delete-notifications Delete CLOB notifications by ID (authenticated) update-balance Refresh on-chain USDC balance and allowance in the CLOB (authenticated) simplified-markets List simplified market views with reduced detail (unauthenticated) sampling-markets List reward-eligible sampling markets (unauthenticated) help Print this message or the help of the given subcommand(s) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob [OPTIONS] bullpen polymarket clob --help bullpen polymarket clob --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob", "type": "command_group", "subcommands": [ "midpoint", "midpoints", "spread", "spreads", "book", "books" ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/last-trades.md ================================================================================ # `bullpen polymarket clob last-trades` _Last updated: February 26, 2026_ Get last trade prices for multiple token IDs (batch) ## Usage ```bash bullpen polymarket clob last-trades [OPTIONS] ``` ## Live Help ```text Get last trade prices for multiple token IDs (batch) Usage: bullpen polymarket clob last-trades [OPTIONS] Arguments: Comma-separated token IDs (e.g. "123,456,789") Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob last-trades [OPTIONS] bullpen polymarket clob last-trades --help bullpen polymarket clob last-trades --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob last-trades --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/market-order.md ================================================================================ # `bullpen polymarket clob market-order` _Last updated: February 26, 2026_ Place an explicit market order directly on the Polymarket CLOB (authenticated). ## Usage ```bash bullpen polymarket clob market-order [OPTIONS] --token --side --amount ``` ## Live Help ```text Place an explicit market order directly on the Polymarket CLOB (authenticated). Amount is USDC for buys, shares for sells. Order type must be FOK or FAK. Orders are signed locally and submitted directly to the Polymarket CLOB (no builder headers, no geoblock bypass). For normal trading use `polymarket buy` / `polymarket sell` instead. Usage: bullpen polymarket clob market-order [OPTIONS] --token --side --amount Options: --output [possible values: table, json] --token Token ID (numeric string) --env [possible values: staging, production] --side Side: buy or sell [possible values: buy, sell] --amount Amount (USDC for buys, shares for sells) --config --order-type Order type: FOK or FAK (default: FOK) [default: fok] [possible values: gtc, fok, gtd, fak] -h, --help Print help (see a summary with '-h') ``` ## Example Commands ```bash bullpen polymarket clob market-order [OPTIONS] --token --side --amount bullpen polymarket clob market-order --help bullpen polymarket clob market-order --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob market-order --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/market-reward.md ================================================================================ # `bullpen polymarket clob market-reward` _Last updated: February 26, 2026_ Get reward details for a specific market (authenticated) ## Usage ```bash bullpen polymarket clob market-reward [OPTIONS] ``` ## Live Help ```text Get reward details for a specific market (authenticated) Usage: bullpen polymarket clob market-reward [OPTIONS] Arguments: Market condition ID Options: --cursor Pagination cursor (from previous response next_cursor) --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob market-reward [OPTIONS] bullpen polymarket clob market-reward --help bullpen polymarket clob market-reward --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob market-reward --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/midpoint.md ================================================================================ # `bullpen polymarket clob midpoint` _Last updated: February 26, 2026_ Get the midpoint price for a token ID ## Usage ```bash bullpen polymarket clob midpoint [OPTIONS] ``` ## Live Help ```text Get the midpoint price for a token ID Usage: bullpen polymarket clob midpoint [OPTIONS] Arguments: Token ID (condition token, large decimal string) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob midpoint [OPTIONS] bullpen polymarket clob midpoint --help bullpen polymarket clob midpoint --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob midpoint --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/midpoints.md ================================================================================ # `bullpen polymarket clob midpoints` _Last updated: February 26, 2026_ Get midpoint prices for multiple token IDs (batch) ## Usage ```bash bullpen polymarket clob midpoints [OPTIONS] ``` ## Live Help ```text Get midpoint prices for multiple token IDs (batch) Usage: bullpen polymarket clob midpoints [OPTIONS] Arguments: Comma-separated token IDs (e.g. "123,456,789") Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob midpoints [OPTIONS] bullpen polymarket clob midpoints --help bullpen polymarket clob midpoints --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob midpoints --output json", "points": { "total": 12345, "tier": "Pro", "next_tier_points": 15000 }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/neg-risk.md ================================================================================ # `bullpen polymarket clob neg-risk` _Last updated: February 26, 2026_ Check whether a token uses the NegRisk adapter ## Usage ```bash bullpen polymarket clob neg-risk [OPTIONS] ``` ## Live Help ```text Check whether a token uses the NegRisk adapter Usage: bullpen polymarket clob neg-risk [OPTIONS] Arguments: Token ID (condition token, large decimal string) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob neg-risk [OPTIONS] bullpen polymarket clob neg-risk --help bullpen polymarket clob neg-risk --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob neg-risk --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/ok.md ================================================================================ # `bullpen polymarket clob ok` _Last updated: February 26, 2026_ Check CLOB API health ## Usage ```bash bullpen polymarket clob ok [OPTIONS] ``` ## Live Help ```text Check CLOB API health Usage: bullpen polymarket clob ok [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob ok [OPTIONS] bullpen polymarket clob ok --help bullpen polymarket clob ok --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob ok --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/order-scoring.md ================================================================================ # `bullpen polymarket clob order-scoring` _Last updated: February 26, 2026_ Check if a single order is scoring rewards (authenticated) ## Usage ```bash bullpen polymarket clob order-scoring [OPTIONS] ``` ## Live Help ```text Check if a single order is scoring rewards (authenticated) Usage: bullpen polymarket clob order-scoring [OPTIONS] Arguments: Order ID (UUID string) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob order-scoring [OPTIONS] bullpen polymarket clob order-scoring --help bullpen polymarket clob order-scoring --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob order-scoring --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/order.md ================================================================================ # `bullpen polymarket clob order` _Last updated: February 26, 2026_ Look up a single order by order ID (authenticated) ## Usage ```bash bullpen polymarket clob order [OPTIONS] ``` ## Live Help ```text Look up a single order by order ID (authenticated) Usage: bullpen polymarket clob order [OPTIONS] Arguments: Order ID (UUID string) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob order [OPTIONS] bullpen polymarket clob order --help bullpen polymarket clob order --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob order --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/orders-scoring.md ================================================================================ # `bullpen polymarket clob orders-scoring` _Last updated: February 26, 2026_ Check if multiple orders are scoring rewards (authenticated) ## Usage ```bash bullpen polymarket clob orders-scoring [OPTIONS] ``` ## Live Help ```text Check if multiple orders are scoring rewards (authenticated) Usage: bullpen polymarket clob orders-scoring [OPTIONS] Arguments: Order IDs as a comma-separated list (e.g. "id1,id2,id3") Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob orders-scoring [OPTIONS] bullpen polymarket clob orders-scoring --help bullpen polymarket clob orders-scoring --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob orders-scoring --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/post-orders.md ================================================================================ # `bullpen polymarket clob post-orders` _Last updated: February 26, 2026_ Post multiple limit orders in one batch call (authenticated, direct CLOB). ## Usage ```bash bullpen polymarket clob post-orders [OPTIONS] --tokens --side --prices --sizes ``` ## Live Help ```text Post multiple limit orders in one batch call (authenticated, direct CLOB). Token IDs, prices, and sizes are comma-separated and must have equal counts. Orders are signed locally and submitted directly to the Polymarket CLOB (no builder headers, no geoblock bypass). For normal trading use `polymarket limit-buy` / `polymarket limit-sell` instead. Usage: bullpen polymarket clob post-orders [OPTIONS] --tokens --side --prices --sizes Options: --output [possible values: table, json] --tokens Token IDs (comma-separated, one per order) --env [possible values: staging, production] --side Side for all orders: buy or sell [possible values: buy, sell] --config --prices Prices (comma-separated, one per order, range 0.01–0.99) --sizes Sizes in shares (comma-separated, one per order) --order-type Order type: GTC, FOK, GTD, FAK (default: GTC) [default: gtc] [possible values: gtc, fok, gtd, fak] -h, --help Print help (see a summary with '-h') ``` ## Example Commands ```bash bullpen polymarket clob post-orders [OPTIONS] --tokens --side --prices --sizes bullpen polymarket clob post-orders --help bullpen polymarket clob post-orders --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob post-orders --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/price-history.md ================================================================================ # `bullpen polymarket clob price-history` _Last updated: February 26, 2026_ Get price history for a token ID (unauthenticated) ## Usage ```bash bullpen polymarket clob price-history [OPTIONS] ``` ## Live Help ```text Get price history for a token ID (unauthenticated) Usage: bullpen polymarket clob price-history [OPTIONS] Arguments: Token ID (condition token, large decimal string) Options: --interval Time interval: 1m, 1h, 6h, 1d, 1w, max Possible values: - 1m: 1 minute window (fine-grained data points) - 1h: 1 hour window (5-minute data points) - 6h: 6 hour window (30-minute data points) - 1d: 1 day window (60-minute data points) - 1w: 1 week window (720-minute data points) - max: Maximum available history [default: 1d] --output [possible values: table, json] --env [possible values: staging, production] --fidelity Number of data points to return (optional fidelity override) --config -h, --help Print help (see a summary with '-h') ``` ## Example Commands ```bash bullpen polymarket clob price-history [OPTIONS] bullpen polymarket clob price-history --help bullpen polymarket clob price-history --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob price-history --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/reward-percentages.md ================================================================================ # `bullpen polymarket clob reward-percentages` _Last updated: February 26, 2026_ View reward percentage breakdown by market (authenticated) ## Usage ```bash bullpen polymarket clob reward-percentages [OPTIONS] ``` ## Live Help ```text View reward percentage breakdown by market (authenticated) Usage: bullpen polymarket clob reward-percentages [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob reward-percentages [OPTIONS] bullpen polymarket clob reward-percentages --help bullpen polymarket clob reward-percentages --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob reward-percentages --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/rewards.md ================================================================================ # `bullpen polymarket clob rewards` _Last updated: February 26, 2026_ View reward earnings for a specific date (authenticated) ## Usage ```bash bullpen polymarket clob rewards [OPTIONS] --date ``` ## Live Help ```text View reward earnings for a specific date (authenticated) Usage: bullpen polymarket clob rewards [OPTIONS] --date Options: --date Date in YYYY-MM-DD format --output [possible values: table, json] --cursor Pagination cursor (from previous response next_cursor) --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob rewards [OPTIONS] --date bullpen polymarket clob rewards --help bullpen polymarket clob rewards --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob rewards --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/sampling-markets.md ================================================================================ # `bullpen polymarket clob sampling-markets` _Last updated: February 26, 2026_ List reward-eligible sampling markets (unauthenticated) ## Usage ```bash bullpen polymarket clob sampling-markets [OPTIONS] ``` ## Live Help ```text List reward-eligible sampling markets (unauthenticated) Usage: bullpen polymarket clob sampling-markets [OPTIONS] Options: --cursor Pagination cursor (from previous response next_cursor) --output [possible values: table, json] --env [possible values: staging, production] --limit Maximum number of rows to print in table output --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob sampling-markets [OPTIONS] bullpen polymarket clob sampling-markets --help bullpen polymarket clob sampling-markets --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob sampling-markets --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/simplified-markets.md ================================================================================ # `bullpen polymarket clob simplified-markets` _Last updated: February 26, 2026_ List simplified market views with reduced detail (unauthenticated) ## Usage ```bash bullpen polymarket clob simplified-markets [OPTIONS] ``` ## Live Help ```text List simplified market views with reduced detail (unauthenticated) Usage: bullpen polymarket clob simplified-markets [OPTIONS] Options: --cursor Pagination cursor (from previous response next_cursor) --output [possible values: table, json] --env [possible values: staging, production] --limit Maximum number of rows to print in table output --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob simplified-markets [OPTIONS] bullpen polymarket clob simplified-markets --help bullpen polymarket clob simplified-markets --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob simplified-markets --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/spread.md ================================================================================ # `bullpen polymarket clob spread` _Last updated: February 26, 2026_ Get the bid-ask spread for a token ID ## Usage ```bash bullpen polymarket clob spread [OPTIONS] ``` ## Live Help ```text Get the bid-ask spread for a token ID Usage: bullpen polymarket clob spread [OPTIONS] Arguments: Token ID (condition token, large decimal string) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob spread [OPTIONS] bullpen polymarket clob spread --help bullpen polymarket clob spread --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob spread --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/spreads.md ================================================================================ # `bullpen polymarket clob spreads` _Last updated: February 26, 2026_ Get bid-ask spreads for multiple token IDs (batch) ## Usage ```bash bullpen polymarket clob spreads [OPTIONS] ``` ## Live Help ```text Get bid-ask spreads for multiple token IDs (batch) Usage: bullpen polymarket clob spreads [OPTIONS] Arguments: Comma-separated token IDs (e.g. "123,456,789") Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob spreads [OPTIONS] bullpen polymarket clob spreads --help bullpen polymarket clob spreads --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob spreads --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/tick-size.md ================================================================================ # `bullpen polymarket clob tick-size` _Last updated: February 26, 2026_ Get the minimum tick size for a token ID ## Usage ```bash bullpen polymarket clob tick-size [OPTIONS] ``` ## Live Help ```text Get the minimum tick size for a token ID Usage: bullpen polymarket clob tick-size [OPTIONS] Arguments: Token ID (condition token, large decimal string) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob tick-size [OPTIONS] bullpen polymarket clob tick-size --help bullpen polymarket clob tick-size --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob tick-size --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/time.md ================================================================================ # `bullpen polymarket clob time` _Last updated: February 26, 2026_ Get the current CLOB server time ## Usage ```bash bullpen polymarket clob time [OPTIONS] ``` ## Live Help ```text Get the current CLOB server time Usage: bullpen polymarket clob time [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob time [OPTIONS] bullpen polymarket clob time --help bullpen polymarket clob time --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob time --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/trades.md ================================================================================ # `bullpen polymarket clob trades` _Last updated: February 26, 2026_ Get authenticated trade history filtered by market/asset (authenticated) ## Usage ```bash bullpen polymarket clob trades [OPTIONS] ``` ## Live Help ```text Get authenticated trade history filtered by market/asset (authenticated) Usage: bullpen polymarket clob trades [OPTIONS] Options: --market Filter by market condition ID (0x-prefixed hex) --output [possible values: table, json] --asset Filter by asset/token ID (large decimal string) --env [possible values: staging, production] --config --cursor Pagination cursor (from previous response next_cursor) -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob trades [OPTIONS] bullpen polymarket clob trades --help bullpen polymarket clob trades --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob trades --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/clob/update-balance.md ================================================================================ # `bullpen polymarket clob update-balance` _Last updated: February 26, 2026_ Refresh on-chain USDC balance and allowance in the CLOB (authenticated) ## Usage ```bash bullpen polymarket clob update-balance [OPTIONS] ``` ## Live Help ```text Refresh on-chain USDC balance and allowance in the CLOB (authenticated) Usage: bullpen polymarket clob update-balance [OPTIONS] Options: --asset-type Asset type: collateral or conditional [default: collateral] --output [possible values: table, json] --env [possible values: staging, production] --token-id Token ID (required for conditional asset type) --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket clob update-balance [OPTIONS] bullpen polymarket clob update-balance --help bullpen polymarket clob update-balance --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket clob update-balance --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/collection-id.md ================================================================================ # `bullpen polymarket collection-id` _Last updated: February 26, 2026_ Calculate a collection ID from condition ID and index set ## Usage ```bash bullpen polymarket collection-id [OPTIONS] --condition --index-set ``` ## Live Help ```text Calculate a collection ID from condition ID and index set Usage: bullpen polymarket collection-id [OPTIONS] --condition --index-set Options: --condition Condition ID (0x-prefixed 32-byte hex) --output [possible values: table, json] --env [possible values: staging, production] --index-set Index set bitmask (1 = YES, 2 = NO for standard binary markets) --config --parent-collection Parent collection ID (0x-prefixed 32-byte hex, defaults to zero) [default: 0x0000000000000000000000000000000000000000000000000000000000000000] -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket collection-id [OPTIONS] --condition --index-set bullpen polymarket collection-id --help bullpen polymarket collection-id --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket collection-id --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/comment-alert.md ================================================================================ # `bullpen polymarket comment-alert` _Last updated: February 26, 2026_ Manage comment alert settings ## Usage ```bash bullpen polymarket comment-alert [OPTIONS] ``` ## Live Help ```text Manage comment alert settings Usage: bullpen polymarket comment-alert [OPTIONS] Options: --output [possible values: table, json] --set Create or update the alert --delete Delete the alert --env [possible values: staging, production] --config --min-pnl Minimum lifetime PnL --min-volume Minimum lifetime volume --min-predictions Minimum prediction count --min-position-value Minimum position value --min-position-size Minimum position size --category Filter by category --following-only Only following --exclude-categories Exclude categories (comma-separated) -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket comment-alert [OPTIONS] bullpen polymarket comment-alert --help bullpen polymarket comment-alert --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket comment-alert --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/comments.md ================================================================================ # `bullpen polymarket comments` _Last updated: February 26, 2026_ View comments on markets, events, series, or users ## Usage ```bash bullpen polymarket comments [OPTIONS] [SLUG] ``` ## Live Help ```text View comments on markets, events, series, or users Usage: bullpen polymarket comments [OPTIONS] [SLUG] Arguments: [SLUG] Market slug (or event/series slug with --event/--series) Options: --event Treat slug as event --output [possible values: table, json] --env [possible values: staging, production] --series Treat slug as series --config --user Show user's comments by address --replies Show replies to a comment by ID --filtered Use smart-filtered comment feed --page Page number [default: 1] --limit Results per page [default: 20] --min-pnl Minimum lifetime PnL --min-volume Minimum lifetime volume --min-predictions Minimum prediction count --category Filter by category --following-only Only show comments from followed users --min-position-value Minimum position value filter --exclude-categories Exclude categories (comma-separated) -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket comments [OPTIONS] [SLUG] bullpen polymarket comments --help bullpen polymarket comments --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket comments --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/condition-id.md ================================================================================ # `bullpen polymarket condition-id` _Last updated: February 26, 2026_ Calculate a condition ID from oracle address, question ID, and outcome count ## Usage ```bash bullpen polymarket condition-id [OPTIONS] --oracle --question ``` ## Live Help ```text Calculate a condition ID from oracle address, question ID, and outcome count Usage: bullpen polymarket condition-id [OPTIONS] --oracle --question Options: --oracle Oracle address (0x-prefixed 20-byte EVM address) --output [possible values: table, json] --env [possible values: staging, production] --question Question ID (0x-prefixed 32-byte hex) --config --outcomes Number of outcome slots (e.g. 2 for binary markets) [default: 2] -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket condition-id [OPTIONS] --oracle --question bullpen polymarket condition-id --help bullpen polymarket condition-id --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket condition-id --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/data/builder-leaderboard.md ================================================================================ # `bullpen polymarket data builder-leaderboard` _Last updated: February 26, 2026_ Builder (third-party app) leaderboard rankings ## Usage ```bash bullpen polymarket data builder-leaderboard [OPTIONS] ``` ## Live Help ```text Builder (third-party app) leaderboard rankings Usage: bullpen polymarket data builder-leaderboard [OPTIONS] Options: --output [possible values: table, json] --period Time period: day, week, month, all [default: day] --env [possible values: staging, production] --limit Number of results [default: 25] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket data builder-leaderboard [OPTIONS] bullpen polymarket data builder-leaderboard --help bullpen polymarket data builder-leaderboard --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket data builder-leaderboard --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/data/builder-volume.md ================================================================================ # `bullpen polymarket data builder-volume` _Last updated: February 26, 2026_ Builder volume time-series data ## Usage ```bash bullpen polymarket data builder-volume [OPTIONS] ``` ## Live Help ```text Builder volume time-series data Usage: bullpen polymarket data builder-volume [OPTIONS] Options: --output [possible values: table, json] --period Time period: day, week, month, all [default: day] --env [possible values: staging, production] --limit Maximum number of entries to return --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket data builder-volume [OPTIONS] bullpen polymarket data builder-volume --help bullpen polymarket data builder-volume --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket data builder-volume --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/data/index.md ================================================================================ # `bullpen polymarket data` _Last updated: February 26, 2026_ Query Polymarket data: leaderboards, profiles, smart money, open interest, and builder stats ## Usage ```bash bullpen polymarket data [OPTIONS] ``` ## Subcommands | Subcommand | Description | |---|---| | `leaderboard` | View top traders on the leaderboard | | `profile` | View trader profile statistics | | `smart-money` | View smart money signals and top trader activity | | `open-interest` | Get open interest (outstanding position value) for a market | | `volume` | Get live trading volume for an event | | `builder-leaderboard` | Builder (third-party app) leaderboard rankings | | `builder-volume` | Builder volume time-series data | ## Live Help ```text Query Polymarket data: leaderboards, profiles, smart money, open interest, and builder stats Usage: bullpen polymarket data [OPTIONS] Commands: leaderboard View top traders on the leaderboard profile View trader profile statistics smart-money View smart money signals and top trader activity open-interest Get open interest (outstanding position value) for a market volume Get live trading volume for an event builder-leaderboard Builder (third-party app) leaderboard rankings builder-volume Builder volume time-series data help Print this message or the help of the given subcommand(s) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket data [OPTIONS] bullpen polymarket data --help bullpen polymarket data --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket data", "type": "command_group", "subcommands": [ "leaderboard", "profile", "smart-money", "open-interest", "volume", "builder-leaderboard" ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/data/leaderboard.md ================================================================================ # `bullpen polymarket data leaderboard` _Last updated: February 26, 2026_ View top traders on the leaderboard ## Usage ```bash bullpen polymarket data leaderboard [OPTIONS] ``` ## Live Help ```text View top traders on the leaderboard Usage: bullpen polymarket data leaderboard [OPTIONS] Options: --output [possible values: table, json] --period Time period: day, week, month, all [default: all] --env [possible values: staging, production] --limit Maximum number of traders to show [default: 25] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket data leaderboard [OPTIONS] bullpen polymarket data leaderboard --help bullpen polymarket data leaderboard --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket data leaderboard --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/data/open-interest.md ================================================================================ # `bullpen polymarket data open-interest` _Last updated: February 26, 2026_ Get open interest (outstanding position value) for a market ## Usage ```bash bullpen polymarket data open-interest [OPTIONS] ``` ## Live Help ```text Get open interest (outstanding position value) for a market Usage: bullpen polymarket data open-interest [OPTIONS] Arguments: Market slug, market numeric ID, or condition ID (0x...) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket data open-interest [OPTIONS] bullpen polymarket data open-interest --help bullpen polymarket data open-interest --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket data open-interest --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/data/profile.md ================================================================================ # `bullpen polymarket data profile` _Last updated: February 26, 2026_ View trader profile statistics ## Usage ```bash bullpen polymarket data profile [OPTIONS]
``` ## Live Help ```text View trader profile statistics Usage: bullpen polymarket data profile [OPTIONS]
Arguments:
Wallet address to look up Options: --output [possible values: table, json] --trades Include recent trade history --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket data profile [OPTIONS]
bullpen polymarket data profile --help bullpen polymarket data profile --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket data profile --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/data/smart-money.md ================================================================================ # `bullpen polymarket data smart-money` _Last updated: February 26, 2026_ View smart money signals and top trader activity ## Usage ```bash bullpen polymarket data smart-money [OPTIONS] ``` ## Live Help ```text View smart money signals and top trader activity Usage: bullpen polymarket data smart-money [OPTIONS] Options: --output [possible values: table, json] --type Signal type: aggregated (default), top_traders, new_wallet [default: aggregated] --category Category: overall (default), politics, sports, crypto, culture, economics, tech, finance --env [possible values: staging, production] --config --limit Maximum number of results [default: 20] -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket data smart-money [OPTIONS] bullpen polymarket data smart-money --help bullpen polymarket data smart-money --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket data smart-money --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/data/volume.md ================================================================================ # `bullpen polymarket data volume` _Last updated: February 26, 2026_ Get live trading volume for an event ## Usage ```bash bullpen polymarket data volume [OPTIONS] ``` ## Live Help ```text Get live trading volume for an event Usage: bullpen polymarket data volume [OPTIONS] Arguments: Event ID (numeric) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket data volume [OPTIONS] bullpen polymarket data volume --help bullpen polymarket data volume --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket data volume --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/deposit.md ================================================================================ # `bullpen polymarket deposit` _Last updated: February 26, 2026_ Get deposit addresses for your Polymarket wallet via the bridge ## Usage ```bash bullpen polymarket deposit [OPTIONS] --address
``` ## Live Help ```text Get deposit addresses for your Polymarket wallet via the bridge Usage: bullpen polymarket deposit [OPTIONS] --address
Options: --address
Your Polymarket wallet address (0x...) --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket deposit [OPTIONS] --address
bullpen polymarket deposit --help bullpen polymarket deposit --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket deposit", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/discover.md ================================================================================ # `bullpen polymarket discover` _Last updated: February 26, 2026_ Discover prediction markets with various lenses and filters ## Usage ```bash bullpen polymarket discover [OPTIONS] [LENS] ``` ## Live Help ```text Discover prediction markets with various lenses and filters Usage: bullpen polymarket discover [OPTIONS] [LENS] Arguments: [LENS] Discovery lens: all, sports, crypto, walletscope, eventscope, traders, flow [default: all] Options: --output [possible values: table, json] --search Search markets by title --category Filter by category/tag --env [possible values: staging, production] --config --min-liquidity Minimum liquidity filter --min-volume Minimum volume filter --min-odds Minimum odds percentage (e.g., 50 for 50%) --status Market status: active, closed [default: active] --sort Sort order: volume, volume24h, liquidity, newest, ending-soon --limit Number of results to return [default: 20] --offset Offset for pagination --address
Wallet address (required for walletscope/flow lens) -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket discover [OPTIONS] [LENS] bullpen polymarket discover --help bullpen polymarket discover --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket discover --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/event.md ================================================================================ # `bullpen polymarket event` _Last updated: February 26, 2026_ View details for a specific prediction market event ## Usage ```bash bullpen polymarket event [OPTIONS] ``` ## Live Help ```text View details for a specific prediction market event Usage: bullpen polymarket event [OPTIONS] Arguments: Event slug (e.g., "will-bitcoin-hit-100k") Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket event [OPTIONS] bullpen polymarket event --help bullpen polymarket event --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket event --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/feed.md ================================================================================ # `bullpen polymarket feed` _Last updated: February 26, 2026_ View filtered trade or comment feeds ## Usage ```bash bullpen polymarket feed [OPTIONS] ``` ## Live Help ```text View filtered trade or comment feeds Usage: bullpen polymarket feed [OPTIONS] Arguments: Feed type: trades or comments Options: --min-pnl Minimum lifetime PnL --output [possible values: table, json] --env [possible values: staging, production] --min-volume Minimum lifetime volume --config --min-predictions Minimum prediction count --min-position-value Minimum position value --category Filter by category --following-only Only following (comments only) --action Trade action: All, Buy, Sell (trades only) --min-trade-size Minimum trade size in USD (trades only) --min-price Minimum share price 0.01-0.99 (trades only) --max-price Maximum share price 0.01-0.99 (trades only) --exclude-categories Exclude categories (comma-separated) --page Page number [default: 1] --limit Results per page [default: 20] -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket feed [OPTIONS] bullpen polymarket feed --help bullpen polymarket feed --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket feed --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/holders.md ================================================================================ # `bullpen polymarket holders` _Last updated: February 26, 2026_ Show top position holders for a market ## Usage ```bash bullpen polymarket holders [OPTIONS] ``` ## Live Help ```text Show top position holders for a market Usage: bullpen polymarket holders [OPTIONS] Arguments: Market slug Options: --limit Maximum number of holders to show [default: 20] --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket holders [OPTIONS] bullpen polymarket holders --help bullpen polymarket holders --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket holders --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/index.md ================================================================================ # `bullpen polymarket` _Last updated: February 26, 2026_ Polymarket prediction market commands: discover, search, trade, and manage positions ## Usage ```bash bullpen polymarket [OPTIONS] ``` ## Subcommands | Subcommand | Description | |---|---| | `discover` | Discover prediction markets with various lenses and filters | | `positions` | View prediction market positions and P&L | | `activity` | View activity history (trades, redemptions, rewards, etc.) | | `buy` | Buy shares on a prediction market outcome | | `sell` | Sell shares on a prediction market outcome | | `limit-buy` | Place a limit buy order on a prediction market outcome | | `limit-sell` | Place a limit sell order on a prediction market outcome | | `redeem` | Redeem resolved prediction market positions | | `orders` | View open orders, trade history, or cancel orders | | `search` | Search prediction markets and trader profiles | | `watchlist` | Manage prediction market watchlist | | `event` | View details for a specific prediction market event | | `trades` | Show recent trades on a market | | `price-history` | Show price history for a market outcome | | `holders` | Show top position holders for a market | | `comments` | View comments on markets, events, series, or users | | `feed` | View filtered trade or comment feeds | | `comment-alert` | Manage comment alert settings | | `trade-alert` | Manage trade alert settings | | `smart-alerts` | Manage smart alert preferences | | `approve` | Check and set ERC-1155 token approvals for sell orders | | `preflight` | Run pre-trade safety checks (server time, account status, balance, approvals) | | `market` | Show detailed market information | | `markets` | List and filter markets | | `price` | Quick price check for a prediction market (midpoint, last trade, bid/ask, spread) | | `deposit` | Get deposit addresses for your Polymarket wallet via the bridge | | `withdraw` | Withdraw funds from Polymarket to an external address | | `bridge` | Bridge utilities: supported assets and deposit transaction status | | `tags` | List market tags/categories | | `series` | List event series or show series detail | | `split` | Split USDC into YES and NO tokens for a market | | `merge` | Merge YES and NO tokens back into USDC | | `condition-id` | Calculate a condition ID from oracle address, question ID, and outcome count | | `collection-id` | Calculate a collection ID from condition ID and index set | | `position-id` | Calculate a position ID from collateral token and collection ID | | `watch` | Subscribe to real-time market data via WebSocket | | `clob` | Direct CLOB API commands: prices, order book, balances, and order lookup | | `data` | Query Polymarket data: leaderboards, profiles, smart money, open interest, and builder stats | ## Live Help ```text Polymarket prediction market commands: discover, search, trade, and manage positions Usage: bullpen polymarket [OPTIONS] Commands: discover Discover prediction markets with various lenses and filters positions View prediction market positions and P&L activity View activity history (trades, redemptions, rewards, etc.) buy Buy shares on a prediction market outcome sell Sell shares on a prediction market outcome limit-buy Place a limit buy order on a prediction market outcome limit-sell Place a limit sell order on a prediction market outcome redeem Redeem resolved prediction market positions orders View open orders, trade history, or cancel orders search Search prediction markets and trader profiles watchlist Manage prediction market watchlist event View details for a specific prediction market event trades Show recent trades on a market price-history Show price history for a market outcome holders Show top position holders for a market comments View comments on markets, events, series, or users feed View filtered trade or comment feeds comment-alert Manage comment alert settings trade-alert Manage trade alert settings smart-alerts Manage smart alert preferences approve Check and set ERC-1155 token approvals for sell orders preflight Run pre-trade safety checks (server time, account status, balance, approvals) market Show detailed market information markets List and filter markets price Quick price check for a prediction market (midpoint, last trade, bid/ask, spread) deposit Get deposit addresses for your Polymarket wallet via the bridge withdraw Withdraw funds from Polymarket to an external address bridge Bridge utilities: supported assets and deposit transaction status tags List market tags/categories series List event series or show series detail split Split USDC into YES and NO tokens for a market merge Merge YES and NO tokens back into USDC condition-id Calculate a condition ID from oracle address, question ID, and outcome count collection-id Calculate a collection ID from condition ID and index set position-id Calculate a position ID from collateral token and collection ID watch Subscribe to real-time market data via WebSocket clob Direct CLOB API commands: prices, order book, balances, and order lookup data Query Polymarket data: leaderboards, profiles, smart money, open interest, and builder stats help Print this message or the help of the given subcommand(s) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket [OPTIONS] bullpen polymarket --help bullpen polymarket --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket", "type": "command_group", "subcommands": [ "discover", "positions", "activity", "buy", "sell", "limit-buy" ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/limit-buy.md ================================================================================ # `bullpen polymarket limit-buy` _Last updated: February 26, 2026_ Place a limit buy order on a prediction market outcome ## Usage ```bash bullpen polymarket limit-buy [OPTIONS] --price --shares ``` ## Live Help ```text Place a limit buy order on a prediction market outcome Usage: bullpen polymarket limit-buy [OPTIONS] --price --shares Arguments: Market slug Outcome name Options: --output [possible values: table, json] --price Limit price (0.01-0.99, e.g., 0.45 for 45 cents) --env [possible values: staging, production] --shares Number of shares --config --expiration Order time-in-force: gtc (Good-Til-Cancelled, default), gtd (Good-Til-Date), fok (Fill-Or-Kill), or fak (Fill-And-Kill) Possible values: - gtc: Good-Til-Cancelled: rests on the book until explicitly cancelled - fok: Fill-Or-Kill: must fill entirely immediately, otherwise cancelled - gtd: Good-Til-Date: rests on the book until the specified date - fak: Fill-And-Kill: fills as much as possible immediately, rest cancelled [default: gtc] --post-only Post-only mode: reject the order if it would fill immediately --yes Skip confirmation --preview Show order preview without executing -h, --help Print help (see a summary with '-h') ``` ## Example Commands ```bash bullpen polymarket limit-buy [OPTIONS] --price --shares bullpen polymarket limit-buy --help bullpen polymarket limit-buy --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket limit-buy", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/limit-sell.md ================================================================================ # `bullpen polymarket limit-sell` _Last updated: February 26, 2026_ Place a limit sell order on a prediction market outcome ## Usage ```bash bullpen polymarket limit-sell [OPTIONS] --price --shares ``` ## Live Help ```text Place a limit sell order on a prediction market outcome Usage: bullpen polymarket limit-sell [OPTIONS] --price --shares Arguments: Market slug Outcome name Options: --output [possible values: table, json] --price Limit price (0.01-0.99, e.g., 0.65 for 65 cents) --env [possible values: staging, production] --shares Number of shares --config --expiration Order time-in-force: gtc (Good-Til-Cancelled, default), gtd (Good-Til-Date), fok (Fill-Or-Kill), or fak (Fill-And-Kill) Possible values: - gtc: Good-Til-Cancelled: rests on the book until explicitly cancelled - fok: Fill-Or-Kill: must fill entirely immediately, otherwise cancelled - gtd: Good-Til-Date: rests on the book until the specified date - fak: Fill-And-Kill: fills as much as possible immediately, rest cancelled [default: gtc] --post-only Post-only mode: reject the order if it would fill immediately --yes Skip confirmation --preview Show order preview without executing -h, --help Print help (see a summary with '-h') ``` ## Example Commands ```bash bullpen polymarket limit-sell [OPTIONS] --price --shares bullpen polymarket limit-sell --help bullpen polymarket limit-sell --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket limit-sell", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/market.md ================================================================================ # `bullpen polymarket market` _Last updated: February 26, 2026_ Show detailed market information ## Usage ```bash bullpen polymarket market [OPTIONS] ``` ## Live Help ```text Show detailed market information Usage: bullpen polymarket market [OPTIONS] Arguments: Market slug or numeric ID Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket market [OPTIONS] bullpen polymarket market --help bullpen polymarket market --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket market --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/markets.md ================================================================================ # `bullpen polymarket markets` _Last updated: February 26, 2026_ List and filter markets ## Usage ```bash bullpen polymarket markets [OPTIONS] ``` ## Live Help ```text List and filter markets Usage: bullpen polymarket markets [OPTIONS] Options: --limit Maximum results (default 20) [default: 20] --output [possible values: table, json] --env [possible values: staging, production] --offset Pagination offset --config --sort Sort by: volume, liquidity, volume_24hr (alias: volume24h) --active Only active markets --closed Only closed markets --tag-id Filter by tag ID --min-volume Minimum volume --min-liquidity Minimum liquidity -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket markets [OPTIONS] bullpen polymarket markets --help bullpen polymarket markets --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket markets --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/merge.md ================================================================================ # `bullpen polymarket merge` _Last updated: February 26, 2026_ Merge YES and NO tokens back into USDC ## Usage ```bash bullpen polymarket merge [OPTIONS] --condition --amount ``` ## Live Help ```text Merge YES and NO tokens back into USDC Usage: bullpen polymarket merge [OPTIONS] --condition --amount Options: --condition Condition ID (0x-prefixed 32-byte hex, e.g. 0xbd31dc8a...) --output [possible values: table, json] --amount Amount in USDC sets to merge (e.g. "10" for 10 sets) --env [possible values: staging, production] --config --partition Custom partition as comma-separated index sets (e.g. "1,2" for binary) --parent-collection Parent collection ID for nested positions (defaults to zero) --yes Skip confirmation prompt -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket merge [OPTIONS] --condition --amount bullpen polymarket merge --help bullpen polymarket merge --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket merge", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/orders.md ================================================================================ # `bullpen polymarket orders` _Last updated: February 26, 2026_ View open orders, trade history, or cancel orders ## Usage ```bash bullpen polymarket orders [OPTIONS] ``` ## Live Help ```text View open orders, trade history, or cancel orders Usage: bullpen polymarket orders [OPTIONS] Options: --address
Wallet address (used with --history) --output [possible values: table, json] --env [possible values: staging, production] --history Show past trade history --cancel Cancel order(s) by ID; comma-separate multiple IDs for bulk cancel --config --cancel-all Cancel ALL open orders --cancel-market Cancel all orders on a specific market (by condition ID) --yes Skip confirmation prompt -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket orders [OPTIONS] bullpen polymarket orders --help bullpen polymarket orders --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket orders --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/position-id.md ================================================================================ # `bullpen polymarket position-id` _Last updated: February 26, 2026_ Calculate a position ID from collateral token and collection ID ## Usage ```bash bullpen polymarket position-id [OPTIONS] --collection ``` ## Live Help ```text Calculate a position ID from collateral token and collection ID Usage: bullpen polymarket position-id [OPTIONS] --collection Options: --collateral Collateral token address (defaults to USDC on Polygon) [default: 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174] --output [possible values: table, json] --collection Collection ID (0x-prefixed 32-byte hex) --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket position-id [OPTIONS] --collection bullpen polymarket position-id --help bullpen polymarket position-id --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket position-id --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/positions.md ================================================================================ # `bullpen polymarket positions` _Last updated: February 26, 2026_ View prediction market positions and P&L ## Usage ```bash bullpen polymarket positions [OPTIONS] ``` ## Live Help ```text View prediction market positions and P&L Usage: bullpen polymarket positions [OPTIONS] Options: --address
Wallet address (defaults to your own Polymarket address) --output [possible values: table, json] --closed Show closed positions instead of active --env [possible values: staging, production] --config --redeemable Show only redeemable positions -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket positions [OPTIONS] bullpen polymarket positions --help bullpen polymarket positions --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket positions --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/preflight.md ================================================================================ # `bullpen polymarket preflight` _Last updated: February 26, 2026_ Run pre-trade safety checks (server time, account status, balance, approvals) ## Usage ```bash bullpen polymarket preflight [OPTIONS] ``` ## Live Help ```text Run pre-trade safety checks (server time, account status, balance, approvals) Usage: bullpen polymarket preflight [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket preflight [OPTIONS] bullpen polymarket preflight --help bullpen polymarket preflight --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket preflight --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/price-history.md ================================================================================ # `bullpen polymarket price-history` _Last updated: February 26, 2026_ Show price history for a market outcome ## Usage ```bash bullpen polymarket price-history [OPTIONS] --outcome ``` ## Live Help ```text Show price history for a market outcome Usage: bullpen polymarket price-history [OPTIONS] --outcome Arguments: Market slug Options: --outcome Outcome name (e.g., "Yes" or "No") --output [possible values: table, json] --env [possible values: staging, production] --interval Time interval for price history window Possible values: - 1m: 1 minute window (fine-grained data points) - 1h: 1 hour window (5-minute data points) - 6h: 6 hour window (30-minute data points) - 1d: 1 day window (60-minute data points) - 1w: 1 week window (720-minute data points) - max: Maximum available history [default: 1d] --config -h, --help Print help (see a summary with '-h') ``` ## Example Commands ```bash bullpen polymarket price-history [OPTIONS] --outcome bullpen polymarket price-history --help bullpen polymarket price-history --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket price-history --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/price.md ================================================================================ # `bullpen polymarket price` _Last updated: February 26, 2026_ Quick price check for a prediction market (midpoint, last trade, bid/ask, spread) ## Usage ```bash bullpen polymarket price [OPTIONS] [OUTCOME] ``` ## Live Help ```text Quick price check for a prediction market (midpoint, last trade, bid/ask, spread) Usage: bullpen polymarket price [OPTIONS] [OUTCOME] Arguments: Market slug (e.g. "will-bitcoin-hit-100k") [OUTCOME] Filter to a specific outcome (e.g. "yes", "no") Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket price [OPTIONS] [OUTCOME] bullpen polymarket price --help bullpen polymarket price --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket price --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/redeem.md ================================================================================ # `bullpen polymarket redeem` _Last updated: February 26, 2026_ Redeem resolved prediction market positions ## Usage ```bash bullpen polymarket redeem [OPTIONS] ``` ## Live Help ```text Redeem resolved prediction market positions Usage: bullpen polymarket redeem [OPTIONS] Options: --address
Wallet address (defaults to your own Polymarket address) --output [possible values: table, json] --condition-ids Condition IDs to redeem (comma-separated) --env [possible values: staging, production] --config --yes Skip confirmation prompt -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket redeem [OPTIONS] bullpen polymarket redeem --help bullpen polymarket redeem --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket redeem", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/search.md ================================================================================ # `bullpen polymarket search` _Last updated: March 19, 2026_ Search prediction markets and trader profiles ## Usage ```bash bullpen polymarket search [OPTIONS] ``` ## Live Help ```text Search prediction markets and trader profiles Usage: bullpen polymarket search [OPTIONS] Arguments: Search query (text, slug, or Polymarket URL) Options: --output [possible values: table, json] --type Filter by type: all, market, user [default: all] --env [possible values: staging, production] --limit Number of results per type --config --status Filter by market status: active, closed -h, --help Print help ``` ## Smart Features - **URL detection**: Paste a full Polymarket URL (e.g., `https://polymarket.com/event/bitcoin-100k`) — the slug is extracted and searched automatically. - **Smart retry**: For market searches, if no results match, the query is simplified (numbers and special characters stripped) and retried. Output shows "No results for X. Showing results for Y instead." - **Market slugs**: Table output includes the market slug below each result for easy copy-paste into trading commands. - **Fallback query**: JSON output includes `fallback_query` when a simplified query was used. ## Example Commands ```bash # Basic text search bullpen polymarket search "bitcoin" # Search by Polymarket URL bullpen polymarket search "https://polymarket.com/event/bitcoin-100k" # Market-only search (enables smart retry) bullpen polymarket search "bitcoin $100k!!" --type market # JSON output for automation bullpen polymarket search "election" --output json --limit 10 ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "query": "bitcoin $100k", "fallback_query": "bitcoin k", "events": [ { "id": "evt_1", "slug": "bitcoin-100k", "title": "Will Bitcoin hit $100k?", "markets": [ { "id": "m1", "question": "Will Bitcoin hit $100k?", "slug": "will-bitcoin-hit-100k", "outcomes": [ { "name": "Yes", "probability": 0.72, "price": 0.72 }, { "name": "No", "probability": 0.28, "price": 0.28 } ], "warnings": [] } ] } ], "profiles": [], "has_more": false } ``` ================================================================================ FILE: reference/commands/polymarket/sell.md ================================================================================ # `bullpen polymarket sell` _Last updated: February 26, 2026_ Sell shares on a prediction market outcome ## Usage ```bash bullpen polymarket sell [OPTIONS] ``` ## Live Help ```text Sell shares on a prediction market outcome Usage: bullpen polymarket sell [OPTIONS] Arguments: Market slug Outcome name Number of shares to sell Options: --output [possible values: table, json] --yes Skip confirmation --env [possible values: staging, production] --preview Show order preview without executing --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket sell [OPTIONS] bullpen polymarket sell --help bullpen polymarket sell --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket sell", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/series.md ================================================================================ # `bullpen polymarket series` _Last updated: February 26, 2026_ List event series or show series detail ## Usage ```bash bullpen polymarket series [OPTIONS] [ID] ``` ## Live Help ```text List event series or show series detail Usage: bullpen polymarket series [OPTIONS] [ID] Arguments: [ID] Series ID to show detail Options: --limit Maximum number of series to display when listing --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket series [OPTIONS] [ID] bullpen polymarket series --help bullpen polymarket series --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket series --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/smart-alerts.md ================================================================================ # `bullpen polymarket smart-alerts` _Last updated: February 26, 2026_ Manage smart alert preferences ## Usage ```bash bullpen polymarket smart-alerts [OPTIONS] ``` ## Live Help ```text Manage smart alert preferences Usage: bullpen polymarket smart-alerts [OPTIONS] Options: --output [possible values: table, json] --set Update settings --categories Preferred categories (comma-separated) --env [possible values: staging, production] --config --smart-money Enable/disable smart money alerts [possible values: true, false] --new-wallet Enable/disable new wallet alerts [possible values: true, false] --top-traders Enable/disable top traders alerts [possible values: true, false] -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket smart-alerts [OPTIONS] bullpen polymarket smart-alerts --help bullpen polymarket smart-alerts --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket smart-alerts --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/split.md ================================================================================ # `bullpen polymarket split` _Last updated: February 26, 2026_ Split USDC into YES and NO tokens for a market ## Usage ```bash bullpen polymarket split [OPTIONS] --condition --amount ``` ## Live Help ```text Split USDC into YES and NO tokens for a market Usage: bullpen polymarket split [OPTIONS] --condition --amount Options: --condition Condition ID (0x-prefixed 32-byte hex, e.g. 0xbd31dc8a...) --output [possible values: table, json] --amount Amount in USDC (e.g. "10" for $10, supports up to 6 decimal places) --env [possible values: staging, production] --config --partition Custom partition as comma-separated index sets (e.g. "1,2" for binary) --parent-collection Parent collection ID for nested positions (defaults to zero) --yes Skip confirmation prompt -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket split [OPTIONS] --condition --amount bullpen polymarket split --help bullpen polymarket split --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket split", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/tags.md ================================================================================ # `bullpen polymarket tags` _Last updated: February 26, 2026_ List market tags/categories ## Usage ```bash bullpen polymarket tags [OPTIONS] ``` ## Live Help ```text List market tags/categories Usage: bullpen polymarket tags [OPTIONS] Options: --output [possible values: table, json] --related Show tags related to this slug --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket tags [OPTIONS] bullpen polymarket tags --help bullpen polymarket tags --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket tags --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/trade-alert.md ================================================================================ # `bullpen polymarket trade-alert` _Last updated: February 26, 2026_ Manage trade alert settings ## Usage ```bash bullpen polymarket trade-alert [OPTIONS] ``` ## Live Help ```text Manage trade alert settings Usage: bullpen polymarket trade-alert [OPTIONS] Options: --output [possible values: table, json] --set Create or update the alert --delete Delete the alert --env [possible values: staging, production] --config --min-pnl Minimum lifetime PnL --min-volume Minimum lifetime volume --min-predictions Minimum prediction count --min-position-value Minimum position value --category Filter by category --action Trade action: All, Buy, Sell --min-trade-size Minimum trade size --min-price Minimum share price 0.01-0.99 --max-price Maximum share price 0.01-0.99 --tracked-only Only tracked traders --exclude-categories Exclude categories (comma-separated) -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket trade-alert [OPTIONS] bullpen polymarket trade-alert --help bullpen polymarket trade-alert --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket trade-alert --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/trades.md ================================================================================ # `bullpen polymarket trades` _Last updated: February 26, 2026_ Show recent trades on a market ## Usage ```bash bullpen polymarket trades [OPTIONS] ``` ## Live Help ```text Show recent trades on a market Usage: bullpen polymarket trades [OPTIONS] Arguments: Market slug Options: --limit Maximum number of trades to show [default: 20] --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket trades [OPTIONS] bullpen polymarket trades --help bullpen polymarket trades --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket trades --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/watch.md ================================================================================ # `bullpen polymarket watch` _Last updated: February 26, 2026_ Subscribe to real-time market data via WebSocket ## Usage ```bash bullpen polymarket watch [OPTIONS] ``` ## Live Help ```text Subscribe to real-time market data via WebSocket Usage: bullpen polymarket watch [OPTIONS] Arguments: Market slug or URL Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket watch [OPTIONS] bullpen polymarket watch --help bullpen polymarket watch --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket watch --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/watchlist.md ================================================================================ # `bullpen polymarket watchlist` _Last updated: February 26, 2026_ Manage prediction market watchlist ## Usage ```bash bullpen polymarket watchlist [OPTIONS] ``` ## Live Help ```text Manage prediction market watchlist Usage: bullpen polymarket watchlist [OPTIONS] Options: --add Add a market by slug --output [possible values: table, json] --env [possible values: staging, production] --remove Remove a market by slug --config -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket watchlist [OPTIONS] bullpen polymarket watchlist --help bullpen polymarket watchlist --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket watchlist --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/polymarket/withdraw.md ================================================================================ # `bullpen polymarket withdraw` _Last updated: February 26, 2026_ Withdraw funds from Polymarket to an external address ## Usage ```bash bullpen polymarket withdraw [OPTIONS] --to --amount --chain ``` ## Live Help ```text Withdraw funds from Polymarket to an external address Usage: bullpen polymarket withdraw [OPTIONS] --to --amount --chain Options: --output [possible values: table, json] --to Destination address --amount Amount to withdraw (e.g. "100.00") --env [possible values: staging, production] --chain Destination chain (ethereum, polygon, arbitrum, base, optimism) --config --yes Skip confirmation prompt -h, --help Print help ``` ## Example Commands ```bash bullpen polymarket withdraw [OPTIONS] --to --amount --chain bullpen polymarket withdraw --help bullpen polymarket withdraw --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen polymarket withdraw", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/portfolio/balances.md ================================================================================ # `bullpen portfolio balances` _Last updated: February 26, 2026_ Show token balances by chain (Solana, Hyperliquid, Polymarket) ## Usage ```bash bullpen portfolio balances [OPTIONS] ``` ## Live Help ```text Show token balances by chain (Solana, Hyperliquid, Polymarket) Usage: bullpen portfolio balances [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen portfolio balances [OPTIONS] bullpen portfolio balances --help bullpen portfolio balances --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen portfolio balances --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/portfolio/index.md ================================================================================ # `bullpen portfolio` _Last updated: February 26, 2026_ View portfolio balances, overview, and P&L across all chains ## Usage ```bash bullpen portfolio [OPTIONS] ``` ## Subcommands | Subcommand | Description | |---|---| | `overview` | Show portfolio value summary across all chains | | `balances` | Show token balances by chain (Solana, Hyperliquid, Polymarket) | | `pnl` | Show realized and unrealized profit & loss | ## Live Help ```text View portfolio balances, overview, and P&L across all chains Usage: bullpen portfolio [OPTIONS] Commands: overview Show portfolio value summary across all chains balances Show token balances by chain (Solana, Hyperliquid, Polymarket) pnl Show realized and unrealized profit & loss help Print this message or the help of the given subcommand(s) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen portfolio [OPTIONS] bullpen portfolio --help bullpen portfolio --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen portfolio", "type": "command_group", "subcommands": [ "overview", "balances", "pnl" ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/portfolio/overview.md ================================================================================ # `bullpen portfolio overview` _Last updated: February 26, 2026_ Show portfolio value summary across all chains ## Usage ```bash bullpen portfolio overview [OPTIONS] ``` ## Live Help ```text Show portfolio value summary across all chains Usage: bullpen portfolio overview [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen portfolio overview [OPTIONS] bullpen portfolio overview --help bullpen portfolio overview --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen portfolio overview --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/portfolio/pnl.md ================================================================================ # `bullpen portfolio pnl` _Last updated: February 26, 2026_ Show realized and unrealized profit & loss ## Usage ```bash bullpen portfolio pnl [OPTIONS] ``` ## Live Help ```text Show realized and unrealized profit & loss Usage: bullpen portfolio pnl [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen portfolio pnl [OPTIONS] bullpen portfolio pnl --help bullpen portfolio pnl --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen portfolio pnl --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/rewards.md ================================================================================ # `bullpen rewards` _Last updated: February 26, 2026_ Show and claim available rewards ## Usage ```bash bullpen rewards [OPTIONS] ``` ## Live Help ```text Show and claim available rewards Usage: bullpen rewards [OPTIONS] Options: --claim Claim rewards --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen rewards [OPTIONS] bullpen rewards --help bullpen rewards --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen rewards --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/setup.md ================================================================================ # `bullpen setup` _Last updated: February 26, 2026_ Guided first-time setup: configure, authenticate, and approve Polymarket trading ## Usage ```bash bullpen setup [OPTIONS] ``` ## Live Help ```text Guided first-time setup: configure, authenticate, and approve Polymarket trading Usage: bullpen setup [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen setup [OPTIONS] bullpen setup --help bullpen setup --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen setup", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/shell.md ================================================================================ # `bullpen shell` _Last updated: February 26, 2026_ Launch an interactive REPL shell with readline history ## Usage ```bash bullpen shell [OPTIONS] ``` ## Live Help ```text Launch an interactive REPL shell with readline history Usage: bullpen shell [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen shell [OPTIONS] bullpen shell --help bullpen shell --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen shell --output json", "ok": true, "data": { "example": "This is a representative output shape." }, "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/status.md ================================================================================ # `bullpen status` _Last updated: February 26, 2026_ Show CLI version, environment, account info, and Polymarket platform status ## Usage ```bash bullpen status [OPTIONS] ``` ## Live Help ```text Show CLI version, environment, account info, and Polymarket platform status Usage: bullpen status [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen status [OPTIONS] bullpen status --help bullpen status --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen status --output json", "status": "ok", "checks": [ { "name": "connectivity", "status": "pass" }, { "name": "auth", "status": "pass" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/tracker/add.md ================================================================================ # `bullpen tracker add` _Last updated: February 26, 2026_ Start tracking a wallet address ## Usage ```bash bullpen tracker add [OPTIONS] --chain
``` ## Live Help ```text Start tracking a wallet address Usage: bullpen tracker add [OPTIONS] --chain
Arguments:
Wallet address to track Options: --chain Blockchain chain [possible values: solana] --output [possible values: table, json] --env [possible values: staging, production] --nickname Optional nickname for the wallet --config -h, --help Print help ``` ## Example Commands ```bash bullpen tracker add [OPTIONS] --chain
bullpen tracker add --help bullpen tracker add --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen tracker add", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/tracker/follow.md ================================================================================ # `bullpen tracker follow` _Last updated: February 26, 2026_ Follow a Polymarket address for trade/comment notifications ## Usage ```bash bullpen tracker follow [OPTIONS]
``` ## Live Help ```text Follow a Polymarket address for trade/comment notifications Usage: bullpen tracker follow [OPTIONS]
Arguments:
Address to follow Options: --output [possible values: table, json] --update-filters Update filters for an already-followed address --env [possible values: staging, production] --notify-comments Notify on comments [possible values: true, false] --config --notify-trades Notify on trades [possible values: true, false] --trade-threshold Trade size threshold in USD --markets Specific market slugs (comma-separated) --category Filter by category --min-position-size Minimum position size --action Trade action: All, Buy, Sell -h, --help Print help ``` ## Example Commands ```bash bullpen tracker follow [OPTIONS]
bullpen tracker follow --help bullpen tracker follow --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen tracker follow", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/tracker/following.md ================================================================================ # `bullpen tracker following` _Last updated: February 26, 2026_ List all followed Polymarket addresses ## Usage ```bash bullpen tracker following [OPTIONS] ``` ## Live Help ```text List all followed Polymarket addresses Usage: bullpen tracker following [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen tracker following [OPTIONS] bullpen tracker following --help bullpen tracker following --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen tracker following --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/tracker/index.md ================================================================================ # `bullpen tracker` _Last updated: February 26, 2026_ Track wallets and monitor smart money activity ## Usage ```bash bullpen tracker [OPTIONS] ``` ## Subcommands | Subcommand | Description | |---|---| | `add` | Start tracking a wallet address | | `remove` | Stop tracking a wallet address | | `list` | List all tracked wallets | | `follow` | Follow a Polymarket address for trade/comment notifications | | `unfollow` | Unfollow a Polymarket address | | `following` | List all followed Polymarket addresses | | `trades` | Show trades from followed Polymarket addresses | ## Live Help ```text Track wallets and monitor smart money activity Usage: bullpen tracker [OPTIONS] Commands: add Start tracking a wallet address remove Stop tracking a wallet address list List all tracked wallets follow Follow a Polymarket address for trade/comment notifications unfollow Unfollow a Polymarket address following List all followed Polymarket addresses trades Show trades from followed Polymarket addresses help Print this message or the help of the given subcommand(s) Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen tracker [OPTIONS] bullpen tracker --help bullpen tracker --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen tracker", "type": "command_group", "subcommands": [ "add", "remove", "list", "follow", "unfollow", "following" ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/tracker/list.md ================================================================================ # `bullpen tracker list` _Last updated: February 26, 2026_ List all tracked wallets ## Usage ```bash bullpen tracker list [OPTIONS] ``` ## Live Help ```text List all tracked wallets Usage: bullpen tracker list [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen tracker list [OPTIONS] bullpen tracker list --help bullpen tracker list --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen tracker list --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/tracker/remove.md ================================================================================ # `bullpen tracker remove` _Last updated: February 26, 2026_ Stop tracking a wallet address ## Usage ```bash bullpen tracker remove [OPTIONS] --chain
``` ## Live Help ```text Stop tracking a wallet address Usage: bullpen tracker remove [OPTIONS] --chain
Arguments:
Wallet address to stop tracking Options: --chain Blockchain chain [possible values: solana] --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen tracker remove [OPTIONS] --chain
bullpen tracker remove --help bullpen tracker remove --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen tracker remove", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/tracker/trades.md ================================================================================ # `bullpen tracker trades` _Last updated: February 26, 2026_ Show trades from followed Polymarket addresses ## Usage ```bash bullpen tracker trades [OPTIONS] ``` ## Live Help ```text Show trades from followed Polymarket addresses Usage: bullpen tracker trades [OPTIONS] Options: --output [possible values: table, json] --page Page number [default: 1] --env [possible values: staging, production] --limit Results per page [default: 20] --config -h, --help Print help ``` ## Example Commands ```bash bullpen tracker trades [OPTIONS] bullpen tracker trades --help bullpen tracker trades --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen tracker trades --output json", "count": 2, "items": [ { "id": "item_1", "name": "Sample Item", "status": "active" }, { "id": "item_2", "name": "Sample Item 2", "status": "active" } ], "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/tracker/unfollow.md ================================================================================ # `bullpen tracker unfollow` _Last updated: February 26, 2026_ Unfollow a Polymarket address ## Usage ```bash bullpen tracker unfollow [OPTIONS]
``` ## Live Help ```text Unfollow a Polymarket address Usage: bullpen tracker unfollow [OPTIONS]
Arguments:
Address to unfollow Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen tracker unfollow [OPTIONS]
bullpen tracker unfollow --help bullpen tracker unfollow --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen tracker unfollow", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: reference/commands/upgrade.md ================================================================================ # `bullpen upgrade` _Last updated: February 26, 2026_ Update the bullpen binary to the latest release from GitHub ## Usage ```bash bullpen upgrade [OPTIONS] ``` ## Live Help ```text Update the bullpen binary to the latest release from GitHub Usage: bullpen upgrade [OPTIONS] Options: --output [possible values: table, json] --env [possible values: staging, production] --config -h, --help Print help ``` ## Example Commands ```bash bullpen upgrade [OPTIONS] bullpen upgrade --help bullpen upgrade --output json ``` ## Example Data Representative JSON shape for automation and integrations: ```json { "command": "bullpen upgrade", "ok": true, "message": "Operation completed", "transaction_id": "sample_tx_123", "last_updated": "2026-02-26" } ``` ================================================================================ FILE: skill-format-spec.md ================================================================================ # AI Agent Skill Format Specification An **AI agent skill** is a self-contained directory that teaches an AI coding assistant how to use a specific tool, API, or workflow. The assistant discovers installed skills at startup and loads their instructions alongside its built-in knowledge. This document specifies the portable skill format used by Claude Code, Codex CLI, Gemini CLI, OpenClaw, and any agent platform that adopts this convention. --- ## Overview Skills bridge the gap between what an AI assistant knows by default and what it needs to know to operate your specific tool. A skill for a CLI tool might teach the agent which commands exist, which flags are required, and how to chain commands together for common workflows. A skill for an API might explain authentication, rate limits, and error handling patterns. Skills are plain text — a directory of Markdown files — so they are portable, diff-friendly, and trivial to distribute alongside a binary or publish to a package registry. ### Ecosystem Support The following platforms read skills from `skills/` subdirectories within their config directories: | Platform | Config Directory | |----------|-----------------| | Claude Code | `~/.claude/` | | Codex CLI | `~/.codex/` | | Gemini CLI | `~/.gemini/` | | OpenClaw | `~/.openclaw/` | | Cross-tool standard | `~/.agents/` | --- ## File Structure ``` my-skill/ SKILL.md # Required: frontmatter metadata + instructions references/ # Optional: topic-specific deep dives scripts/ # Optional: executable helper scripts assets/ # Optional: templates, data files, schemas ``` The only required file is `SKILL.md`. Everything else is optional and referenced from the main file as needed. The directory name is the skill name. A skill installed at `~/.claude/skills/bullpen-cli/` has name `bullpen-cli`. --- ## SKILL.md Format `SKILL.md` is a Markdown file with YAML frontmatter. The frontmatter provides metadata for discovery and version management. The Markdown body contains the instructions the agent reads. ### Frontmatter The file must begin with a YAML frontmatter block delimited by `---`: ```yaml --- name: my-skill description: "When and why to use this skill." version: "1.0.0" license: MIT metadata: author: Your Name or Organization tags: [tag1, tag2, tag3] docs-url: docs.example.com allowed-tools: [Bash, Read] --- ``` #### Required Fields | Field | Type | Description | |-------|------|-------------| | `name` | string | Unique identifier. Should match the directory name. The directory name is the authoritative identifier; this field is used for display and verification. | | `description` | string | One or two sentences describing when the agent should activate this skill. This is the primary signal the agent uses to decide whether to consult the skill for a given user request. | #### Optional Fields | Field | Type | Description | |-------|------|-------------| | `version` | string (semver) | Skill version for update tracking. Use `"0.0.0"` as a placeholder that the installer stamps at install time. | | `license` | string (SPDX) | License identifier, e.g. `MIT`, `Apache-2.0`. | | `metadata.author` | string | Human-readable author or organization name. | | `metadata.tags` | string[] | Discovery tags for search and categorization. | | `metadata.docs-url` | string | URL to full documentation (without `https://` prefix is fine). | | `allowed-tools` | string[] | Platform-specific tool allowlist (Claude Code). Restricts which tools the agent may invoke when operating under this skill. Omit to allow all tools. | #### Writing a Good `description` The description field is critical — it is what the agent reads to decide whether a skill is relevant to the current task. Write it as an explicit activation condition: ```yaml # Good: specific, scannable activation conditions description: "Use the Bullpen CLI to trade Polymarket prediction markets, discover events, manage portfolios, and automate trading workflows. Use when the user asks about prediction markets, Polymarket, buying/selling shares, checking positions, market discovery, orderbooks, or scripting prediction market operations." # Poor: vague, no activation signal description: "Bullpen CLI skill for trading." ``` ### Markdown Body The body after the frontmatter `---` is free-form Markdown. The sections below are recommended but not required. #### Recommended Sections **1. Instructions / Decision Tree** A routing section that tells the agent where to go for each type of user intent. For simple skills, this can be a short paragraph. For complex tools with many commands, use a table or decision tree: ```markdown ## Instructions Route to the right reference based on the user's intent: | User Intent | Reference | |-------------|-----------| | Install or authenticate | `references/getting-started.md` | | Execute a trade | `references/trading.md` | | Check portfolio | `references/portfolio-and-orders.md` | ``` **2. Quick Command Map** An intent-to-command table for common operations the agent can use without loading full references: ```markdown ## Quick Command Map | Intent | Command | |--------|---------| | Log in | `mytool login` | | Check status | `mytool status` | | List items | `mytool list` | ``` **3. Examples** Multi-step workflows showing how commands chain together. Examples are especially useful for non-obvious sequences: ```markdown ## Examples ### Research and Trade User says: "Buy Yes shares on the Bitcoin market" 1. Search: `bullpen polymarket search "bitcoin"` 2. Check price: `bullpen polymarket price ` 3. Buy: `bullpen polymarket buy Yes 10 --yes` 4. Verify: `bullpen polymarket positions` ``` **4. Troubleshooting** An error-to-fix table for the most common failure modes: ```markdown ## Troubleshooting | Error | Fix | |-------|-----| | "Not authenticated" | Run `mytool login` | | "Rate limited" | Wait 30 seconds; reduce request frequency in scripts | | Command not found | Run `mytool upgrade` to get the latest version | ``` **5. Resources** Links to documentation, issue tracker, and support channels. --- ## Install Locations Skills are installed as subdirectories under a `skills/` folder within a platform's config directory. Each platform looks in its own directory, and most platforms also support a cross-tool standard path under `~/.agents/`. ### Personal Skills (User-Scoped) Personal skills apply to all projects for that user. | Platform | Path | |----------|------| | Claude Code | `~/.claude/skills/{name}/` | | Codex CLI | `~/.codex/skills/{name}/` | | Gemini CLI | `~/.gemini/skills/{name}/` | | OpenClaw | `~/.openclaw/skills/{name}/` | | Cross-tool standard | `~/.agents/skills/{name}/` | The cross-tool path (`~/.agents/skills/`) is a platform-neutral location that non-Claude platforms read in addition to their own directories. Installing to this path makes a skill available across all tools without platform-specific installs. > **Sibling skills:** When a skill is distributed with companion skills, the installer may write sibling directories automatically. For example, `bullpen skill install` writes both `bullpen-cli/` and `bullpen-bracket/` under the same skills directory in a single command. ### Project Skills (Repository-Scoped) Project skills are checked in to a repository and apply only when the agent is working within that project. | Platform | Path | |----------|------| | Claude Code | `.claude/skills/{name}/` (in repo root) | | Other platforms | `.agents/skills/{name}/` (in repo root) | Both project and personal skills are loaded. If both exist for the same name, behavior depends on the platform. The directory name is the authoritative identifier. ### Discovery Algorithm At startup, each platform scans its `skills/` directories for subdirectories containing `SKILL.md`: ``` for each skills_dir in [personal_dir, project_dir, cross_tool_dir]: for each entry in skills_dir: if entry is a directory and entry/SKILL.md exists: load skill with name = entry.directory_name ``` The directory name is the authoritative skill name — not the `name` field in the frontmatter — because the directory name is what the file system enforces as unique. The `name` field in frontmatter should match the directory name and is used for display and version reporting. --- ## Parsing Contract Platforms parse the SKILL.md frontmatter without a full YAML library, using simple line-by-line extraction. This keeps the parser dependency-free and guarantees that all platforms parse identically. ### Algorithm ``` state = BEFORE_FRONTMATTER for each line in file: if line.trim() == "---": if state == BEFORE_FRONTMATTER: state = IN_FRONTMATTER elif state == IN_FRONTMATTER: state = AFTER_FRONTMATTER (stop parsing) continue if state == IN_FRONTMATTER: # Split on first colon if line contains ":": key, value = line.split(":", maxsplit=1) key = key.trim() value = value.trim().strip_quotes() store key -> value ``` ### Rules - Only **top-level** keys are extracted by default. Nested keys (e.g. `metadata.author`) require additional logic to track nesting depth. - Values are stripped of surrounding double quotes. - Array values (e.g. `tags: [a, b, c]`) are parsed by stripping `[` and `]` and splitting on `,`. - Lines that do not contain `:` are ignored. - The frontmatter ends at the second `---` line. ### Example (Rust) ```rust fn parse_frontmatter_field(content: &str, field: &str) -> Option { let mut in_frontmatter = false; for line in content.lines() { if line.trim() == "---" { if in_frontmatter { break; } in_frontmatter = true; continue; } if in_frontmatter { let trimmed = line.trim(); if let Some(rest) = trimmed.strip_prefix(field) { if let Some(value) = rest.strip_prefix(':') { return Some(value.trim().trim_matches('"').to_string()); } } } } None } ``` This approach is intentionally minimal. For skills that need richer metadata, place additional structured data in a separate file under `assets/` and parse it independently. --- ## Version Management Skills use semantic versioning (`major.minor.patch`). The version field enables tools that install skills to detect when an installed skill is outdated relative to the version shipped with the latest binary. ### Version Placement The `version` field can appear in two locations within the frontmatter: - **Top-level** (preferred for new skills): ```yaml version: "1.0.0" ``` - **Under `metadata`** (legacy, supported by Bullpen CLI): ```yaml metadata: version: "1.0.0" ``` Both placements are supported. Bullpen's `stamp_version()` implementation searches for `version:` at any indentation level within the frontmatter, so it handles both top-level and nested `metadata.version` fields. New skills should prefer the top-level placement for consistency with the rest of the spec. ### Placeholder Stamping Skills distributed with a CLI tool should use `"0.0.0"` as a placeholder version in the source file: ```yaml version: "0.0.0" ``` At install time, the CLI replaces this placeholder with the actual binary version: ```rust fn stamp_version(content: &str, version: &str) -> String { // Replace `version: "0.0.0"` with `version: "1.2.3"` in frontmatter // Searches for `version:` at any indentation level // ... } ``` This ensures the installed skill version always matches the CLI version without requiring the skill file to be manually updated on every release. ### Checking for Updates When listing installed skills, a tool can compare the installed `version` field against the current binary version to report outdated skills: ``` bullpen skill list bullpen-cli v0.1.10 (outdated, latest: 0.1.17) [Claude Code personal] bullpen-bracket v0.1.17 (up to date) [Claude Code personal] ``` --- ## Examples ### Minimal Skill The smallest valid skill — only the two required fields: ```yaml --- name: my-tool description: "Use my-tool CLI to manage widgets and automations. Use when the user asks about widgets, querying the widget catalog, or running widget automations." --- # My Tool Run `my-tool --help` to see available commands. ``` ### Full-Featured Skill A skill using all available fields and the recommended section structure: ```yaml --- name: bullpen-cli description: "Use the Bullpen CLI to trade Polymarket prediction markets, discover events, manage portfolios, and automate trading workflows. Use when the user asks about prediction markets, Polymarket, buying/selling shares, checking positions, market discovery, orderbooks, tracking traders, or scripting prediction market operations." version: "0.0.0" license: MIT metadata: author: BullpenFi tags: [prediction-markets, polymarket, trading, cli, portfolio] docs-url: cli.bullpen.fi allowed-tools: [Bash, Read] --- # Bullpen CLI Skill ## Instructions Route to the right reference based on the user's intent: | User Intent | Reference | |-------------|-----------| | Install or authenticate | `references/getting-started.md` | | Discover and research markets | `references/discovery-and-research.md` | | Execute trades | `references/trading.md` | | Manage portfolio and orders | `references/portfolio-and-orders.md` | ## Quick Command Map | Intent | Command | |--------|---------| | Log in | `bullpen login` | | Check status | `bullpen status` | | Discover markets | `bullpen polymarket discover` | | Buy shares | `bullpen polymarket buy ` | ## Troubleshooting | Error | Fix | |-------|-----| | "Not authenticated" | Run `bullpen login` | | "Market not found" | Use `bullpen polymarket search` to find the correct slug | ## Resources - Docs: [cli.bullpen.fi](https://cli.bullpen.fi) - Issues: [github.com/BullpenFi/bullpen-cli-releases/issues](https://github.com/BullpenFi/bullpen-cli-releases/issues) ``` ### Skill with References Directory For large tools with many commands, split the instructions across topic-specific reference files and load them on demand: ``` bullpen-cli/ SKILL.md # Router: identifies user intent and points to references references/ getting-started.md # Install, auth, first-time setup trading.md # Buy, sell, limit orders, CTF split/merge portfolio-and-orders.md # Positions, open orders, watchlist discovery-and-research.md # Discover, search, event details, price history scripting-and-automation.md # JSON output, jq pipelines, batch workflows ``` The main `SKILL.md` acts as a router. It reads the user intent and directs the agent to load the appropriate reference file before acting: ```markdown ## Instructions ### Step 1: Identify the user's intent **Trading** (buy, sell, limit orders): - Read `references/trading.md` **Discovery** (find markets, prices, events): - Read `references/discovery-and-research.md` **Portfolio** (positions, orders, watchlist): - Read `references/portfolio-and-orders.md` ``` This pattern keeps the main file concise while making deep documentation available on demand without loading everything upfront. --- ## Platform Compatibility Matrix Not all platforms support all frontmatter fields. The table below shows which fields each platform reads as of the current specification version. | Field | Claude Code | Codex CLI | Gemini CLI | OpenClaw | |-------|:-----------:|:---------:|:----------:|:--------:| | `name` | Yes | Yes | Yes | Yes | | `description` | Yes | Yes | Yes | Yes | | `version` | Yes | Yes | Yes | Yes | | `license` | display only | display only | display only | display only | | `metadata.author` | display only | display only | display only | display only | | `metadata.tags` | display only | display only | display only | display only | | `metadata.docs-url` | display only | display only | display only | display only | | `allowed-tools` | Yes | No | No | No | "Yes" means the platform uses the field to affect agent behavior. "display only" means the field is read and shown in skill listings but does not change how the agent operates. "No" means the field is ignored. The `allowed-tools` field is Claude Code-specific. On other platforms, the agent uses its default tool allowlist regardless of what this field contains. > **Note:** This matrix describes Bullpen CLI's implementation of the skill format. Support for other platforms reflects the intended behavior of the emerging standard. Verify specific platform documentation for authoritative compatibility information. --- ## Distributing Skills with a CLI Tool The recommended pattern for CLI tools is to embed skill files directly in the binary and write them to disk via an install command: ```bash # Install skills to all detected AI agent platforms mytool skill install # Install to a specific platform mytool skill install --claude mytool skill install --codex # Install to a specific path mytool skill install --path /custom/path/ # Uninstall mytool skill uninstall ``` Embedding skill files in the binary (using `include_str!()` in Rust or equivalent) means the skill is always in sync with the binary version, works offline, and requires no network access at install time. When the binary is upgraded, the skills should be re-written automatically so the installed skill version tracks the binary version. --- ## See Also - [Bullpen CLI Skill](skill/SKILL.md) — live example skill for the Bullpen CLI tool - [Bullpen Bracket Skill](skill/bullpen-bracket/SKILL.md) — live example skill for the bracket contest feature ================================================================================ FILE: skill/SKILL.md ================================================================================ --- name: bullpen-cli description: "Use the Bullpen CLI to trade Polymarket prediction markets, discover events, manage portfolios, and automate trading workflows. Use when the user asks about prediction markets, Polymarket, buying/selling shares, checking positions, market discovery, orderbooks, tracking traders, or scripting prediction market operations. Do NOT use for building Polymarket API integrations from scratch or for non-Polymarket protocols." license: MIT metadata: author: BullpenFi version: "0.0.0" tags: [prediction-markets, polymarket, trading, cli, portfolio] docs-url: cli.bullpen.fi --- # Bullpen CLI Skill > This is a live example of the AI agent skill format. For the full format specification, see [AI Agent Skill Format Specification](https://cli.bullpen.fi/skill-format-spec/). ## Instructions ### Quick Start (if user is new) If the user hasn't set up Bullpen yet, guide them through these 4 steps: 1. **Install CLI**: `brew install bullpenfi/tap/bullpen` 2. **Install AI skills**: `bullpen skill install` 3. **Log in**: `bullpen login` 4. **Restart Claude/Codex** so it picks up the new skills, then ask it anything To update an existing install: `bullpen upgrade` (updates the binary and skills automatically). ### Step 1: Identify What the User Wants to Do Route to the right reference based on the user's intent: **Getting started** (install, authenticate, configure, install skills): - `references/getting-started.md` **Find and research markets** (discover, search, events, prices, tags, series): - `references/discovery-and-research.md` **Trade** (buy, sell, limit orders, redeem, CTF split/merge, bridge funds): - `references/trading.md` **Manage portfolio and orders** (positions, open orders, cancel, watchlist, activity): - `references/portfolio-and-orders.md` **Social and signals** (comments, feeds, alerts, tracker, leaderboard): - `references/social-and-signals.md` **Account and platform** (auth, config, portfolio balances, points, status): - `references/platform-and-account.md` **Wallet management** (list wallets, select primary, switch chains): - `references/platform-and-account.md` **Scripting and automation** (JSON output, jq piping, batch workflows): - `references/scripting-and-automation.md` **Bracket contests** (March Madness, tournament picks, fill bracket, leaderboard): - `references/bracket-contest.md` **Community and support** (Discord, X/Twitter, file a ticket, report a bug): - `references/community.md` **Diagnostics and troubleshooting** (collect system info, debug errors, file support tickets): - `references/diagnostics.md` Many tasks span multiple categories. Read all relevant references before acting. ### Step 2: Key Rules Before running any command, keep these rules in mind: - **All commands support `--output json`** for machine-readable output. Default is `table`. - **Trading commands require `--yes`** to skip interactive confirmation (essential for automation). - **Authentication is required** for any write operation (trading, orders, alerts, comments). - **Read-only operations** (discover, search, price, event, leaderboard) work without auth. - **Market slugs** are the primary identifier (e.g., `will-bitcoin-hit-100k`), not numeric IDs. - **Outcomes** are specified by name: `Yes`, `No`, or the outcome text for multi-outcome markets. Aliases work too: `Y`/`N`, `True`/`False`, `1`/`0`. - **Prices** are 0.01-0.99 (representing cents per share / probability). - **Global flags**: `--env staging|production`, `--config ` work on all commands. ### Step 3: Execute Run commands via `bullpen` CLI. If the CLI is not installed, start with `references/getting-started.md`. ## Quick Command Map Use this for simple queries without reading full references: | Intent | Command | |--------|---------| | Install CLI | `brew install bullpenfi/tap/bullpen` | | Log in | `bullpen login` | | Check auth status | `bullpen status` | | Discover markets | `bullpen polymarket discover` | | Discover sports markets | `bullpen polymarket discover sports` | | Discover crypto markets | `bullpen polymarket discover crypto` | | Search markets | `bullpen polymarket search "bitcoin"` | | Get event details | `bullpen polymarket event ` | | Check price | `bullpen polymarket price ` | | Check price history | `bullpen polymarket price-history --outcome ` | | View market details | `bullpen polymarket market ` | | List markets with filters | `bullpen polymarket markets --status active --sort volume` | | Browse tags | `bullpen polymarket tags` | | Browse series | `bullpen polymarket series` | | Buy shares | `bullpen polymarket buy ` | | Sell shares | `bullpen polymarket sell ` | | Limit buy | `bullpen polymarket limit-buy --price 0.45 --shares 100 ` | | Limit sell | `bullpen polymarket limit-sell --price 0.65 --shares 50 ` | | View positions | `bullpen polymarket positions` | | View open orders | `bullpen polymarket orders` | | Cancel an order | `bullpen polymarket orders --cancel ` | | Cancel all orders | `bullpen polymarket orders --cancel-all --yes` | | Redeem resolved | `bullpen polymarket redeem` | | View watchlist | `bullpen tracker watchlist` | | Add to watchlist | `bullpen tracker watchlist add ` | | View activity | `bullpen polymarket activity` | | View recent trades | `bullpen polymarket trades ` | | View top holders | `bullpen polymarket holders ` | | View comments | `bullpen polymarket comments ` | | View trade feed | `bullpen polymarket feed trades` | | View comment feed | `bullpen polymarket feed comments` | | Set smart alerts (legacy) | `bullpen polymarket smart-alerts --set --smart-money true` | | Leaderboard | `bullpen polymarket data leaderboard` | | Trader profile | `bullpen polymarket data profile
` | | Smart money signals | `bullpen polymarket data smart-money` | | Portfolio balances | `bullpen portfolio balances` | | Portfolio P&L | `bullpen portfolio pnl` | | List wallets | `bullpen wallet list` | | Set primary EVM wallet | `bullpen wallet select
--chain evm` | | Set primary Solana wallet | `bullpen wallet select
--chain solana` | | View primary wallets | `bullpen wallet info` | | Track a trader | `bullpen tracker add
` | | Track with group | `bullpen tracker add
--group --nickname "Name"` | | List tracked addresses | `bullpen tracker list` | | View tracked trades | `bullpen tracker feed` | | Manage groups | `bullpen tracker groups` | | Create a group | `bullpen tracker groups create "Name" --emoji "🐋"` | | Share a group | `bullpen tracker groups share ` | | Import a group | `bullpen tracker groups import ` | | Browse curated groups | `bullpen tracker groups curated` | | View alerts config | `bullpen tracker alerts` | | Set trade alert | `bullpen tracker alerts trade set --min-trade-size 5000 --tracked-only` | | Set smart alerts | `bullpen tracker alerts smart --smart-money true` | | Check CLI status | `bullpen status` | | Upgrade CLI | `bullpen upgrade` | | List bracket contests | `bullpen polymarket bracket contests --status open` | | Auto-fill chalk bracket | `bullpen polymarket bracket fill-chalk --tiebreaker 145` | | Fill bracket from file | `bullpen polymarket bracket fill --file picks.json` | | Bracket summary | `bullpen polymarket bracket summary ` | | Submit bracket pick | `bullpen polymarket bracket pick --slot --winner "Duke"` | | Bracket leaderboard | `bullpen polymarket bracket leaderboard ` | | Deposit funds | `bullpen deposit` (opens web app) | | Wrap USDC to pUSD (V2 only, whitelisted users) | `bullpen polymarket wrap --yes` | | Unwrap pUSD to USDC (V2 only, whitelisted users) | `bullpen polymarket unwrap --yes` | | Join Discord | `open "https://discord.com/invite/bullpen"` | | Follow on X | `open "https://x.com/BullpenFi"` | | File support ticket | `open "https://bullpen-help.freshdesk.com/support/tickets/new"` | | Collect diagnostics | `bullpen status --output json` + `bullpen config show --output json` | | Enable CLOB V2 (whitelisted users only) | `bullpen experimental enable pm_clob_v2` | | Disable CLOB V2 | `bullpen experimental disable pm_clob_v2` | ## Examples ### Example 1: First-Time Setup and First Trade User says: "Set up Bullpen and buy Yes on the Bitcoin market" Actions: 1. Install: `brew install bullpenfi/tap/bullpen` 2. Log in: `bullpen login` 3. Verify: `bullpen status` 4. Find the market: `bullpen polymarket search "bitcoin"` 5. Check the price: `bullpen polymarket price will-bitcoin-hit-100k` 6. Buy shares: `bullpen polymarket buy will-bitcoin-hit-100k Yes 10 --yes` 7. Verify position: `bullpen polymarket positions` ### Example 2: Market Research Workflow User says: "Research the most active prediction markets" Actions: 1. Discover trending: `bullpen polymarket discover --sort volume --limit 10 --output json` 2. Pick an event and drill down: `bullpen polymarket event --output json` 3. Check pricing: `bullpen polymarket price --output json` 4. View recent trades: `bullpen polymarket trades --output json` 5. Check top holders: `bullpen polymarket holders --output json` 6. Check smart money: `bullpen polymarket data smart-money --output json` ### Example 3: Execute a Buy and Verify User says: "Buy $50 of Yes shares on will-trump-win and show me the position" Actions: 1. Preview the order: `bullpen polymarket buy will-trump-win Yes 50 --preview` 2. Execute: `bullpen polymarket buy will-trump-win Yes 50 --yes` 3. Check position: `bullpen polymarket positions --output json` ### Example 4: Set Up Smart Money Alerts User says: "Alert me when whales trade on crypto markets" Actions: 1. Enable smart alerts: `bullpen polymarket smart-alerts --set --smart-money true --top-traders true --categories crypto` 2. Follow specific traders: `bullpen tracker follow
` 3. Check current alerts: `bullpen polymarket smart-alerts --output json` ### Example 5: Automated Portfolio Monitoring User says: "Script that checks my positions and finds markets to trade" ```bash # Check positions bullpen polymarket positions --output json | jq '.positions[] | {market: .title, shares: .size, value: .current_value}' # Find high-volume active markets bullpen polymarket discover --sort volume --min-liquidity 100000 --output json | jq '.markets[] | {title, volume, liquidity}' # Check prices on watchlist bullpen polymarket watchlist --output json | jq -r '.markets[].slug' | while read slug; do bullpen polymarket price "$slug" --output json done # Get leaderboard for strategy ideas bullpen polymarket data leaderboard --period week --limit 5 --output json ``` ## Troubleshooting | Error | Fix | |-------|-----| | "Not authenticated" | Run `bullpen login` | | "Market not found" | The CLI will suggest similar markets ("Did you mean?"). Use slugs from `bullpen polymarket search` or `discover`, not numeric IDs. You can also paste a full Polymarket URL. | | "Insufficient balance" | Check `bullpen portfolio balances` and fund via `bullpen deposit` (opens web app) | | "Positions API shows 0 shares" | This is an indexing delay warning after a recent trade, not a real error. The order may still succeed. Wait a few seconds and retry, or run `bullpen polymarket positions` to verify holdings. | | "Rate limited" | Wait 30 seconds and retry; reduce request frequency in scripts | | "Order failed" | Run `bullpen polymarket preflight` to check approvals and balance | | "Approval needed" | Run `bullpen polymarket approve` before first sell on a market | | Command not found | Run `bullpen upgrade` to get the latest version | | Config issues | Run `bullpen config init` to reset, or `bullpen config show` to inspect | | Other bugs | Report at [github.com/BullpenFi/bullpen-cli-releases/issues](https://github.com/BullpenFi/bullpen-cli-releases/issues) or [help.bullpen.fi](https://help.bullpen.fi) | ## Resources - Docs: [cli.bullpen.fi](https://cli.bullpen.fi) - Bug reports: [github.com/BullpenFi/bullpen-cli-releases/issues](https://github.com/BullpenFi/bullpen-cli-releases/issues) - Support: [help.bullpen.fi](https://help.bullpen.fi) - Releases: [github.com/BullpenFi/bullpen-cli-releases](https://github.com/BullpenFi/bullpen-cli-releases) - Full LLM docs bundle: [cli.bullpen.fi/llm.txt](https://cli.bullpen.fi/llm.txt) ================================================================================ FILE: skill/bullpen-bracket/SKILL.md ================================================================================ --- name: bullpen-bracket description: "AI-assisted bracket contest filling and management for Polymarket tournament contests (e.g. March Madness). Use when the user wants to fill a bracket, make picks, submit a tiebreaker, view standings, check results, or automate bracket strategies. Provides command reference, slot ID format, scoring rules, and strategy templates (chalk, upset-heavy, custom champion)." license: MIT metadata: author: BullpenFi version: "0.1.13" tags: [bracket, march-madness, tournament, polymarket, prediction-markets, sports] docs-url: cli.bullpen.fi --- # Bullpen Bracket Skill > This is a live example of the AI agent skill format. For the full format specification, see [AI Agent Skill Format Specification](https://cli.bullpen.fi/skill-format-spec/). ## Instructions ### Step 1: Identify What the User Wants to Do Route to the right section based on intent: | User Intent | Go To | |-------------|-------| | Find bracket contests | [List Contests](#list-contests) | | See the full tournament bracket | [Display Tournament Bracket](#display-tournament-bracket) | | Submit picks (one or many) | [Submit a Single Pick](#submit-a-single-pick) | | Fill entire bracket automatically | [Auto-Fill Bracket](#auto-fill-bracket) | | Fill from a JSON file | [Fill from File](#fill-from-file) | | See bracket summary | [View Bracket Summary](#view-bracket-summary) | | Set tiebreaker score | [Submit Tiebreaker](#submit-tiebreaker) | | See standings / my rank | [View Leaderboard](#view-leaderboard) / [View Your Status](#view-your-status) | | Check game outcomes | [View Game Results](#view-game-results) | | See Polymarket market mappings | [View Polymarket Market Mappings](#view-polymarket-market-mappings) | | Strategy help | [Strategy Templates](#strategy-templates) | Read `references/bracket-contest.md` for full command reference, slot ID format, scoring rules, strategy templates, and the automated fill script. ### Step 2: Key Rules - **Authentication required** for all write operations (picks, tiebreaker). Run `bullpen login` first. - **Slot IDs** follow the format `R{round}_{region}_{game}`. Get exact slot IDs from `bullpen polymarket bracket bracket-view `. - **Team names support fuzzy matching** — you can use short names like "Duke", "Illinois", "Michigan St" instead of full university names. The CLI resolves against the server's team list. - **R2+ picks work** — for later-round matchups where opponents are TBD, the CLI resolves team names against all tournament entries. - **Round-by-round submission** — `fill-chalk` and `fill` submit picks round by round (R1 first, then R2-R6) with automatic fallback to individual submission if a batch fails. - **Dry-run mode** — use `--dry-run` on `fill-chalk` or `fill` to preview picks without submitting. - **Consistency warnings** — picking a team in R2+ that you didn't pick to advance from the previous round triggers a warning (non-blocking). - **Tiebreaker** is the predicted total points in the championship game. Submit after filling all 63 picks. - **All commands support `--output json`** for scripting and automation. ### Step 3: Execute Run commands via `bullpen` CLI. Bracket commands are all under `bullpen polymarket bracket`. ## Quick Command Map | Intent | Command | |--------|---------| | List open contests | `bullpen polymarket bracket contests --status open` | | View contest details | `bullpen polymarket bracket view ` | | Display bracket tree | `bullpen polymarket bracket bracket-view ` | | View my picks | `bullpen polymarket bracket picks ` | | View picks for one round | `bullpen polymarket bracket picks --round 1` | | Submit one pick | `bullpen polymarket bracket pick --slot --winner "Duke"` | | Preview chalk bracket | `bullpen polymarket bracket fill-chalk --dry-run` | | Auto-fill chalk bracket | `bullpen polymarket bracket fill-chalk --tiebreaker 145` | | Fill from JSON file | `bullpen polymarket bracket fill --file picks.json` | | View bracket summary | `bullpen polymarket bracket summary ` | | Submit tiebreaker | `bullpen polymarket bracket submit --tiebreaker ` | | View leaderboard | `bullpen polymarket bracket leaderboard ` | | My rank and score | `bullpen polymarket bracket status ` | | Game results | `bullpen polymarket bracket results ` | | Polymarket mappings | `bullpen polymarket bracket markets ` | ## Examples ### Example 1: Fill a Full Bracket (Chalk Strategy) User says: "Fill my March Madness bracket picking the higher seed every time" Actions: 1. Find the active contest: `bullpen polymarket bracket contests --status open --output json` 2. Auto-fill all 63 picks with chalk (higher seed always wins): `bullpen polymarket bracket fill-chalk --tiebreaker 145` 3. Review the bracket summary: `bullpen polymarket bracket summary ` 4. Override specific picks if desired: `bullpen polymarket bracket pick --slot R1_E2 --winner "TCU"` 5. Verify: `bullpen polymarket bracket picks ` ### Example 2: Fill a Bracket with a Specific Champion User says: "Fill my bracket with Duke winning it all" Actions: 1. Find contest: `bullpen polymarket bracket contests --status open --output json` 2. Start with chalk base: `bullpen polymarket bracket fill-chalk --tiebreaker 152` 3. Override Duke's path to the championship — work backwards from R6: - `bullpen polymarket bracket pick --slot R6_CH1 --winner "Duke"` - `bullpen polymarket bracket pick --slot R5_FF1 --winner "Duke"` - (continue for Elite 8, Sweet 16, etc.) 4. Review: `bullpen polymarket bracket summary ` 5. Verify all 63 picks: `bullpen polymarket bracket picks ` ### Example 3: Check Standings Mid-Tournament User says: "How am I doing in the bracket contest?" Actions: 1. Quick overview: `bullpen polymarket bracket summary ` 2. Check your rank: `bullpen polymarket bracket status ` 3. View recent results: `bullpen polymarket bracket results ` 4. See leaderboard: `bullpen polymarket bracket leaderboard ` 5. Compare max possible points vs current leader to assess your path to winning ### Example 4: Fill from a JSON File User says: "I have my picks in a file, submit them all" Actions: 1. Create a picks file (`picks.json`): ```json { "picks": [ {"slot": "R1_E1", "winner": "Duke"}, {"slot": "R1_E2", "winner": "TCU"}, {"slot": "R1_E3", "winner": "Illinois"} ], "tiebreaker": 148 } ``` 2. Submit: `bullpen polymarket bracket fill --file picks.json` 3. Team names support fuzzy matching — "Duke", "Illinois", "Michigan St" all work. 4. Verify: `bullpen polymarket bracket summary ` ## March Madness Quick Reference **64 teams, 4 regions** (East, West, South, Midwest), **63 total picks** | Round | Games | Pts/Pick | Max Pts | |-------|-------|----------|---------| | First Round | 32 | 1 | 32 | | Second Round | 16 | 2 | 32 | | Sweet 16 | 8 | 4 | 32 | | Elite 8 | 4 | 8 | 32 | | Final Four | 2 | 16 | 32 | | Championship | 1 | 32 | 32 | | **Total** | **63** | — | **192** | **Historic upset rates (Round 1):** - 12 over 5: ~35% - 11 over 6: ~37% - 10 over 7: ~40% - 13 over 4: ~21% - 14 over 3: ~15% - 15 over 2: ~6% - 16 over 1: ~1% (has happened once in history) ## Troubleshooting | Error | Fix | |-------|-----| | "Not authenticated" | Run `bullpen login` | | "Contest not found" | Run `bullpen polymarket bracket contests` to get valid IDs | | "Invalid slot ID" | Use `bracket-view --output json` to get exact slot IDs | | "No team matching..." | Check team names with `bracket-view`. Fuzzy matching works for short names ("Duke", "UNC") | | "Ambiguous team name..." | Be more specific — the error lists matching candidates | | "Warning: ... not picked to advance" | Consistency warning — your later-round pick doesn't match an earlier pick. Non-blocking. | | "Picks deadline passed" | Contest is closed — check `bracket-view` for deadline field | | Command not found | Run `bullpen upgrade` to get the latest version | ## Full Reference See `references/bracket-contest.md` for: - Complete command syntax and all flags - Full slot ID format specification - All strategy templates (chalk, upset-heavy, custom champion, contrarian) - Automated fill script - Polymarket market mapping usage ## Resources - Docs: [cli.bullpen.fi](https://cli.bullpen.fi) - Bug reports: [github.com/BullpenFi/bullpen-cli-releases/issues](https://github.com/BullpenFi/bullpen-cli-releases/issues) - Support: [help.bullpen.fi](https://help.bullpen.fi) - Releases: [github.com/BullpenFi/bullpen-cli-releases](https://github.com/BullpenFi/bullpen-cli-releases) ================================================================================ FILE: skill/references/bracket-contest.md ================================================================================ # Bracket Contest Fill and manage tournament bracket picks on Polymarket bracket contests. All bracket commands are under `bullpen polymarket bracket`. ## List Contests Discover available bracket contests: ```bash bullpen polymarket bracket contests bullpen polymarket bracket contests --status open bullpen polymarket bracket contests --output json ``` **Status values:** `upcoming`, `open`, `locked` ## View Contest Details Get full contest metadata (name, description, deadlines, scoring rules): ```bash bullpen polymarket bracket view bullpen polymarket bracket view --output json ``` ## Display Tournament Bracket Visualize the full bracket tree — teams, seeds, matchups, and round structure: ```bash bullpen polymarket bracket bracket-view bullpen polymarket bracket bracket-view --output json ``` The bracket view shows: - All regions and their seeds (1–16) - Current matchups per round - Already-decided games with results - Your existing picks (if any) Use this as your starting point before filling picks. ## View Your Picks See all picks you have submitted so far: ```bash bullpen polymarket bracket picks bullpen polymarket bracket picks --output json # Filter by round (1-6) bullpen polymarket bracket picks --round 1 bullpen polymarket bracket picks --round 3 # Sweet 16 only ``` JSON output includes `slot`, `winner`, `is_correct` (null until game resolves), and `points_earned`. ## Submit a Single Pick Submit or update one pick at a time. Team names support **fuzzy matching** — use short names like "Duke", "Illinois", "Michigan St" instead of full university names. ```bash bullpen polymarket bracket pick --slot --winner ``` ```bash # Pick Duke to win slot R1_E1 (Region East, Round 1, Game 1) bullpen polymarket bracket pick march-madness-2026 --slot R1_E1 --winner "Duke" # Fuzzy matching works — all of these resolve correctly: bullpen polymarket bracket pick --slot R1_S1 --winner "Illinois" bullpen polymarket bracket pick --slot R1_E2 --winner "Michigan St" bullpen polymarket bracket pick --slot R1_W3 --winner "UConn" ``` **Consistency check:** When picking for R2+, the CLI warns if the picked team wasn't selected to advance from the previous round. This is a non-blocking warning. **Slot ID format:** `R{round}_{region}_{game}` - Round: `R1` through `R6` (R6 = Championship) - Region: `E` (East), `W` (West), `S` (South), `MW` (Midwest), `FF` (Final Four), `CH` (Championship) - Game: sequential number within that round and region Example slots: | Slot | Meaning | |------|---------| | `R1_E1` | East region, Round 1, Game 1 (seed 1 vs seed 16) | | `R1_E8` | East region, Round 1, Game 8 (seed 8 vs seed 9) | | `R2_W4` | West region, Round 2, Game 4 | | `R3_S2` | South region, Sweet 16, Game 2 | | `R4_MW1` | Midwest region, Elite 8, Game 1 | | `R5_FF1` | Final Four, Game 1 | | `R5_FF2` | Final Four, Game 2 | | `R6_CH1` | Championship game | ## Auto-Fill Bracket (Chalk) Fill all 63 picks in one command — always picks the higher seed: ```bash # Preview what will be submitted (no auth required) bullpen polymarket bracket fill-chalk --tiebreaker 145 --dry-run # Submit for real (round-by-round with verification) bullpen polymarket bracket fill-chalk --tiebreaker 145 ``` This generates chalk picks (seed 1 beats 16, seed 2 beats 15, etc.) for all rounds. Picks are submitted round by round (R1 first, then R2-R6) with automatic fallback to individual submission if a batch fails. The final pick count is verified by reading back from the server. After filling with chalk, override specific picks for your upsets: ```bash bullpen polymarket bracket pick --slot R1_E2 --winner "TCU" ``` ## Fill from JSON File Submit all picks from a JSON file with fuzzy team name resolution: ```bash # Preview first bullpen polymarket bracket fill --file picks.json --tiebreaker 148 --dry-run # Submit bullpen polymarket bracket fill --file picks.json --tiebreaker 148 ``` **JSON format:** ```json { "picks": [ {"slot": "R1_E1", "winner": "Duke"}, {"slot": "R1_E2", "winner": "TCU"}, {"slot": "R1_S1", "winner": "Illinois"} ], "tiebreaker": 148 } ``` Team names in the JSON file support fuzzy matching — use short names. If the `tiebreaker` field is in the JSON, it overrides the `--tiebreaker` CLI flag. ## View Bracket Summary See a compact overview of your bracket — champion, Final Four, Elite 8, key upsets, and pick count: ```bash bullpen polymarket bracket summary ``` Example output: ``` Champion: Arizona Final Four: Michigan St. (E) | Arizona (W) | Iowa St. (MW) | Illinois (S) Elite 8: Duke (E) | Michigan St. (E) | Arizona (W) | ... Upsets: TCU(9)>Ohio St.(8), USF(11)>Louisville(6) Picks: 63/63 Tiebreaker: 148 ``` ## Submit Tiebreaker Submit or update your tiebreaker score prediction (total points in championship game): ```bash bullpen polymarket bracket submit --tiebreaker ``` ```bash # Predict 145 total points in the championship bullpen polymarket bracket submit march-madness-2026 --tiebreaker 145 ``` Submit the tiebreaker after filling all 63 picks. The tiebreaker resolves ties in the final standings. ## View Leaderboard See the contest standings (top participants, scores, rank): ```bash bullpen polymarket bracket leaderboard bullpen polymarket bracket leaderboard --limit 20 bullpen polymarket bracket leaderboard --output json ``` ## View Your Status Check your current rank and score: ```bash bullpen polymarket bracket status bullpen polymarket bracket status --output json ``` JSON output includes: `rank`, `score`, `max_possible`, `picks_correct`, `picks_remaining`, `tiebreaker`. ## View Game Results See actual game outcomes to understand which picks scored: ```bash bullpen polymarket bracket results bullpen polymarket bracket results --round 1 bullpen polymarket bracket results --output json ``` ## View Polymarket Market Mappings See how each bracket game maps to a Polymarket market (token IDs, slugs, prices): ```bash bullpen polymarket bracket markets bullpen polymarket bracket markets --output json ``` Useful for cross-referencing bracket picks with Polymarket trading opportunities. ## March Madness Bracket Structure 64-team NCAA tournament organized into 4 regions: | Region | Seeds | |--------|-------| | East | 1–16 | | West | 1–16 | | South | 1–16 | | Midwest | 1–16 | **Rounds and scoring:** | Round | Games | Points per correct pick | |-------|-------|------------------------| | First Round (R1) | 32 | 1 | | Second Round (R2) | 16 | 2 | | Sweet 16 (R3) | 8 | 4 | | Elite 8 (R4) | 4 | 8 | | Final Four (R5) | 2 | 16 | | Championship (R6) | 1 | 32 | **Total:** 63 picks, maximum 192 points (if all picks correct). **Seeding shorthand:** Seed 1 is the strongest team; seed 16 is the weakest. Round 1 matchups: 1 vs 16, 2 vs 15, 3 vs 14, 4 vs 13, 5 vs 12, 6 vs 11, 7 vs 10, 8 vs 9. ## AI-Assisted Bracket Filling Workflow ### Step 1: Discover the active contest ```bash bullpen polymarket bracket contests --status open --output json ``` Note the `contest_id` for use in subsequent commands. ### Step 2: Start with chalk base ```bash bullpen polymarket bracket fill-chalk --tiebreaker 145 ``` This fills all 63 picks with higher-seed wins. Now you have a complete bracket to customize. ### Step 3: Override with your picks Apply upsets and personal picks over the chalk base: ```bash # Pick some R1 upsets bullpen polymarket bracket pick --slot R1_E2 --winner "TCU" bullpen polymarket bracket pick --slot R1_S4 --winner "McNeese" # Override later rounds — the CLI warns about inconsistencies bullpen polymarket bracket pick --slot R6_CH1 --winner "Arizona" ``` Or submit all overrides at once from a JSON file: ```bash bullpen polymarket bracket fill --file my_upsets.json ``` ### Step 4: Review your bracket ```bash bullpen polymarket bracket summary ``` ### Step 5: Verify all picks ```bash bullpen polymarket bracket picks ``` Confirm all 63 slots are filled and the summary looks right. ## Strategy Templates ### Chalk (favor higher seeds) Pick the team with the better seed in every game. Maximizes expected correct picks but leaves points on the table if there are upsets. ``` Round 1: always pick the lower seed number (seed 1 beats 16, seed 2 beats 15, etc.) Champion: pick the overall #1 seed ``` ### Upset-Heavy (2–3 upsets per round in early rounds) Target statistically common upsets: - 5 vs 12: 12-seeds win ~35% historically — strong upset candidate - 10 vs 7: 10-seeds win ~40% historically - 11 vs 6: 11-seeds win ~37% historically - 13 vs 4: 13-seeds win ~21% historically Sprinkle in 2–3 of these per region. Avoid picking upsets in Sweet 16 or later unless you have strong conviction. ### Custom Champion (work backwards) 1. Pick your champion first (`R6_CH1`). 2. Work backwards: your champion must win both Final Four games, their Elite 8 game, etc. 3. Fill the rest of the bracket to support your champion's path, then fill other regions freely. Use this when you have strong conviction on a champion that is not the consensus favorite (creates differentiation from the field). ### Contrarian (maximize differentiation) 1. Get the contest leaderboard structure if available. 2. Pick a non-consensus champion (e.g., a 3 or 4 seed). 3. Pick several 12-seed upsets in Round 1. 4. This maximizes upside in a large-field contest where differentiation matters more than raw accuracy. ## Automated Full-Bracket Fill Script The simplest approach uses the built-in `fill-chalk` command: ```bash #!/usr/bin/env bash # Fill an entire bracket using chalk strategy (always pick higher seed) CONTEST_ID="$1" # One command fills all 63 picks + sets tiebreaker bullpen polymarket bracket fill-chalk "$CONTEST_ID" --tiebreaker 145 # Review the result bullpen polymarket bracket summary "$CONTEST_ID" ``` For a custom bracket from a JSON file: ```bash #!/usr/bin/env bash CONTEST_ID="$1" # Start with chalk base, then override with custom picks bullpen polymarket bracket fill-chalk "$CONTEST_ID" --tiebreaker 148 bullpen polymarket bracket fill "$CONTEST_ID" --file my_picks.json # Review bullpen polymarket bracket summary "$CONTEST_ID" echo "Bracket complete!" bullpen polymarket bracket picks "$CONTEST_ID" ``` ## Cross-References - **Trade on bracket outcomes**: See `references/trading.md` for buying/selling shares on related Polymarket markets - **Track scores live**: Use `bullpen polymarket bracket results ` during the tournament - **Authentication required**: See `references/getting-started.md` if not logged in ================================================================================ FILE: skill/references/community.md ================================================================================ # Community and Support Connect with the Bullpen community and get help when you need it. ## Community Links | Channel | URL | |---------|-----| | Discord | https://discord.com/invite/bullpen | | X (Twitter) | https://x.com/BullpenFi | | Docs | https://cli.bullpen.fi | ## Join Discord Open the Bullpen Discord server for the user: ```bash open "https://discord.com/invite/bullpen" # macOS xdg-open "https://discord.com/invite/bullpen" # Linux ``` Discord is the best place to: - Chat with other CLI users - Get help with trading strategies - Report issues and request features - Share feedback on new features - Stay up to date on releases ## Follow on X Open Bullpen's X (Twitter) profile: ```bash open "https://x.com/BullpenFi" # macOS xdg-open "https://x.com/BullpenFi" # Linux ``` Follow @BullpenFi for: - New feature announcements - Market insights - Community highlights ## File a Support Ticket Open the Bullpen support portal to file a new ticket: ```bash open "https://bullpen-help.freshdesk.com/support/tickets/new" # macOS xdg-open "https://bullpen-help.freshdesk.com/support/tickets/new" # Linux ``` When filing a ticket, include: 1. Your CLI version (`bullpen --version`) 2. What you were trying to do 3. The full error message (if any) 4. Steps to reproduce For faster diagnosis, collect diagnostic info first — see `references/diagnostics.md`. ## Report a Bug Open a GitHub issue: ```bash open "https://github.com/BullpenFi/bullpen-cli-releases/issues/new" ``` ## Cross-References - **Diagnostics for support tickets**: See `references/diagnostics.md` - **Account and auth issues**: See `references/platform-and-account.md` - **Getting started**: See `references/getting-started.md` ================================================================================ FILE: skill/references/diagnostics.md ================================================================================ # Diagnostics Collect detailed system and account information for troubleshooting. Use this when the user needs help diagnosing an issue or filing a support ticket. ## Quick Diagnostic Summary Run these commands and collect the output: ```bash # CLI version and build info bullpen --version # Full status (version, environment, auth, wallet, skills) bullpen status # Configuration bullpen config show # Installed skills bullpen skill list ``` ## Step-by-Step Diagnostic Collection ### 1. CLI Version and Environment ```bash bullpen --version bullpen status --output json ``` Capture: - CLI version (e.g., `0.1.40 (Alpha)`) - Environment (`staging` or `production`) - Credential store type (`keyring`, `file`, or `ephemeral`) - Update availability ### 2. System Information Collect OS and architecture: ```bash uname -s -r -m # OS, kernel version, architecture ``` Detect how the CLI was installed: ```bash which bullpen # installation path brew list bullpen 2>/dev/null && echo "Installed via Homebrew" npm list -g @bullpenfi/cli 2>/dev/null && echo "Installed via npm" ``` ### 3. Authentication Status ```bash bullpen status --output json | jq '.account' ``` Check: - Whether the user is logged in - Username - JWT/session expiry (if visible in status) - Credential store type and whether tokens are decryptable ### 4. Wallet Information ```bash # Polymarket proxy address and balances bullpen polymarket clob balance --output json # Multi-chain portfolio balances bullpen portfolio balances --output json # Operator approvals (required for selling) bullpen polymarket approve --check --output json ``` Capture: - Polygon proxy address - USDC balance - Conditional token balances - Approval status for Exchange, NegRiskExchange, NegRiskAdapter operators ### 5. Configuration ```bash bullpen config show --output json ``` Check: - `env` (staging vs production) - `credential_store` - `trade_server_url` (if overridden) - `polygon_rpc_url` (if overridden) - `experimental` features enabled - `read_only` mode ### 6. Skills ```bash bullpen skill list --output json ``` Check: - Installed skills and versions - Whether any skills are outdated ### 7. What the User Was Trying to Do Always ask and record: - What command they ran (exact command line) - What they expected to happen - What actually happened (full error output) - Whether it worked before (regression vs first attempt) - Any recent changes (upgraded CLI, changed config, etc.) ### 8. Network and Connectivity (if relevant) ```bash # Test usergate connectivity bullpen status --output json | jq '.version' # Test Polymarket CLOB connectivity bullpen polymarket clob balance --output json 2>&1 | head -5 ``` If network issues are suspected, check: - VPN status - Geographic restrictions (Polymarket has geoblock on some direct CLOB operations) - Proxy/firewall settings ## Composing a Support Ticket Once diagnostics are collected, compose a support message with: ``` **CLI Version:** **OS:** **Install Method:** **Environment:** **Auth Status:** **Wallet Address:**
**USDC Balance:** **What I was trying to do:** **Command run:** **Expected behavior:** **Actual behavior:** **Steps to reproduce:** 1. ... 2. ... ``` Then either: - File a ticket: `open "https://bullpen-help.freshdesk.com/support/tickets/new"` - Post in Discord: `open "https://discord.com/invite/bullpen"` - Open a GitHub issue: `open "https://github.com/BullpenFi/bullpen-cli-releases/issues/new"` ## Cross-References - **Community and support channels**: See `references/community.md` - **Account and auth troubleshooting**: See `references/platform-and-account.md` - **Configuration reference**: See `references/platform-and-account.md` ================================================================================ FILE: skill/references/discovery-and-research.md ================================================================================ # Discovery and Research Find, search, and analyze prediction markets on Polymarket. All commands in this section work without authentication. ## Discover Markets Browse markets with curated lenses and filters: ```bash bullpen polymarket discover [OPTIONS] [LENS] ``` **Lenses** (first argument): - `all` (default) — all active markets - `sports` — sports markets - `crypto` — cryptocurrency markets - `traders` — popular among traders - `walletscope` — markets relevant to your wallet (requires `--address`) - `flow` — unusual trading flow (requires `--address`) - `eventscope` — event-level grouping **Key filters:** ```bash # High-volume markets bullpen polymarket discover --sort volume --min-liquidity 100000 # Sports markets ending soon bullpen polymarket discover sports --sort ending-soon # Crypto markets with tight odds bullpen polymarket discover crypto --min-odds 40 --sort volume # Paginated results bullpen polymarket discover --limit 50 --offset 0 # Filter by category bullpen polymarket discover --category politics ``` **Sort options**: `volume`, `volume24h`, `liquidity`, `newest`, `ending-soon` **Status filter**: `--status active` (default) or `--status closed` ## Search Markets and Traders ```bash bullpen polymarket search [OPTIONS] ``` ```bash # Search markets bullpen polymarket search "bitcoin" # Search only markets bullpen polymarket search "bitcoin" --type market # Search only traders bullpen polymarket search "0x1234" --type user # Limit results bullpen polymarket search "election" --limit 10 --status active # Search by Polymarket URL (extracts slug automatically) bullpen polymarket search "https://polymarket.com/event/bitcoin-100k" ``` **Type filter**: `all` (default), `market`, `user` **Smart features:** - **URL detection**: Paste a full Polymarket URL — the slug is extracted automatically - **Smart retry**: If no results are found for market searches, the query is simplified (numbers/special chars stripped) and retried. The output shows "No results for X. Showing results for Y instead." - **Market slugs**: Search results include market slugs below each row for easy copy-paste into trading commands - **Outcome aliases**: When trading, `Y`/`N`, `True`/`False`, `1`/`0` all work as aliases for `Yes`/`No` ## Event Details Get comprehensive info about an event (may contain multiple markets): ```bash bullpen polymarket event ``` ```bash bullpen polymarket event will-bitcoin-hit-100k bullpen polymarket event will-bitcoin-hit-100k --output json ``` Returns: event title, description, all outcomes with current prices, end date, volume, liquidity. ## Market Details Get detailed info about a specific market: ```bash bullpen polymarket market ``` ```bash bullpen polymarket market will-bitcoin-hit-100k bullpen polymarket market will-bitcoin-hit-100k --output json ``` ## List and Filter Markets Browse markets with filters: ```bash bullpen polymarket markets [OPTIONS] ``` ```bash bullpen polymarket markets --status active --sort volume --limit 20 bullpen polymarket markets --status closed ``` ## Price Check Quick price for a market (midpoint, last trade, bid/ask, spread): ```bash bullpen polymarket price [OUTCOME] ``` ```bash # All outcomes bullpen polymarket price will-bitcoin-hit-100k # Specific outcome bullpen polymarket price will-bitcoin-hit-100k Yes # JSON for scripting bullpen polymarket price will-bitcoin-hit-100k --output json ``` ## Price History Historical prices for an outcome: ```bash bullpen polymarket price-history [OPTIONS] ``` ```bash bullpen polymarket price-history will-bitcoin-hit-100k Yes bullpen polymarket price-history will-bitcoin-hit-100k Yes --interval 1h ``` **Intervals**: `1h`, `6h`, `1d`, `1w` ## Recent Trades View recent trades on a market: ```bash bullpen polymarket trades ``` ```bash bullpen polymarket trades will-bitcoin-hit-100k --output json ``` ## Top Holders View top position holders for a market: ```bash bullpen polymarket holders ``` ```bash bullpen polymarket holders will-bitcoin-hit-100k --output json ``` ## Tags and Categories Browse available market tags: ```bash bullpen polymarket tags bullpen polymarket tags --output json ``` ## Series Browse event series (recurring events): ```bash bullpen polymarket series bullpen polymarket series --output json ``` ## Smart Money Signals View aggregated smart money activity: ```bash bullpen polymarket data smart-money [OPTIONS] ``` ```bash bullpen polymarket data smart-money bullpen polymarket data smart-money --output json ``` Signal types: aggregated activity, top trader movements, new wallet activity. ## Trader Profiles Look up a trader's stats: ```bash bullpen polymarket data profile
``` ```bash bullpen polymarket data profile 0x1234...abcd --output json ``` Returns: volume, P&L, win rate, number of predictions, account age. ## Open Interest and Volume ```bash # Open interest for a market bullpen polymarket data open-interest # Live volume for an event bullpen polymarket data volume ``` ## Research Workflow Recipe Combine commands for deep market research: ```bash # 1. Find trending markets bullpen polymarket discover --sort volume --limit 5 --output json # 2. Drill into a specific event bullpen polymarket event --output json # 3. Check current pricing bullpen polymarket price --output json # 4. Review price history bullpen polymarket price-history Yes --interval 1d # 5. See who's trading bullpen polymarket trades --output json # 6. Check top holders bullpen polymarket holders --output json # 7. Check smart money signals bullpen polymarket data smart-money --output json # 8. Look up a specific trader bullpen polymarket data profile
--output json ``` ## Cross-References - **Ready to trade?** See `references/trading.md` - **Track positions after trading**: See `references/portfolio-and-orders.md` - **Follow smart money traders**: See `references/social-and-signals.md` - **Automate research with scripts**: See `references/scripting-and-automation.md` ================================================================================ FILE: skill/references/getting-started.md ================================================================================ # Getting Started Install, authenticate, and configure the Bullpen CLI for prediction market trading on Polymarket. ## Quick Start (4 steps) ```bash # 1. Install the CLI brew install bullpenfi/tap/bullpen # 2. Install AI skills (enables Claude/Codex to trade for you) bullpen skill install # 3. Log in bullpen login # 4. Restart Claude Code / Codex CLI, then ask it anything: # "Buy $10 of Yes on will-bitcoin-hit-100k" # "Show me trending prediction markets" # "Fill my March Madness bracket with chalk picks" ``` After installing skills and restarting your AI coding assistant, it can discover markets, place trades, manage positions, fill brackets, and automate workflows — all through natural language. **Already have Bullpen installed?** Run `bullpen upgrade` to update to the latest version (updates the binary and skills automatically). ## Installation Four installation methods (pick one): ```bash # Homebrew (macOS/Linux) brew install bullpenfi/tap/bullpen # npm (requires Node.js) npm install -g @bullpenfi/cli # Shell script curl -fsSL https://cli.bullpen.fi/install.sh | bash # Manual download # Visit https://github.com/BullpenFi/bullpen-cli-releases/releases/latest ``` **System requirements**: macOS 12+, Ubuntu 20.04+, or Windows 11 WSL2. After install, verify: ```bash bullpen --version ``` ## Install AI Skills Skills teach Claude Code and Codex CLI how to use Bullpen. Without them, your AI assistant won't know the commands. ```bash bullpen skill install ``` After installing, **restart your AI assistant** (Claude Code or Codex CLI) so it picks up the new skills. You only need to do this once — skills auto-update when you upgrade the CLI. ## Authentication Authentication is required for trading, viewing positions, and managing alerts. Read-only operations (discover, search, price) work without auth. ### Login (Device Auth) ```bash bullpen login ``` Opens your browser with an 8-character code and a QR code. Complete login in the browser and the CLI automatically picks up your session. No copy-pasting required. ### Check Status ```bash bullpen status # Shows: CLI version, environment, auth status, wallet address, Polymarket status ``` ### Log Out ```bash bullpen logout ``` ## Configuration Config is stored at `~/.bullpen/config.toml`. Credentials at `~/.bullpen/credentials.json`. ### Initialize Config ```bash bullpen config init # Creates config with default settings (production environment) ``` ### View Current Config ```bash bullpen config show ``` ### Environment Selection ```bash # Use staging environment bullpen --env staging polymarket discover # Or set in config bullpen config init --env staging ``` All commands accept `--env staging|production` and `--config ` overrides. ## First-Time Setup Wizard For a guided walkthrough that covers all of the above: ```bash bullpen setup ``` This runs through authentication, configuration, and initial wallet setup. ## Updating ```bash bullpen upgrade # Checks for new version and installs it ``` ## Quick Verification After setup, verify everything works: ```bash bullpen status # CLI version, environment, auth status bullpen portfolio balances # Your balances across chains bullpen polymarket discover # Browse prediction markets ``` ## Credential Storage Credentials are stored with this fallback chain: 1. System keyring (most secure) 2. File at `~/.bullpen/credentials.json` (0600 permissions) 3. In-memory (ephemeral, for CI) ## Uninstall ```bash # 1. Remove AI skills bullpen skill uninstall --yes # 2. Remove the binary brew uninstall bullpen # Homebrew # npm uninstall -g @bullpenfi/cli # npm # rm "$(which bullpen)" # shell script install # 3. Clean up local data (optional — removes credentials and config) rm -rf ~/.bullpen ``` ## What's Next - **Find markets**: See `references/discovery-and-research.md` - **Start trading**: See `references/trading.md` - **Manage positions**: See `references/portfolio-and-orders.md` - **Fill brackets**: See `references/bracket-contest.md` ================================================================================ FILE: skill/references/platform-and-account.md ================================================================================ # Platform and Account Manage authentication, configuration, multi-chain portfolio, points, and CLI status. ## Authentication ### Login ```bash bullpen login ``` Uses RFC 8628 device auth: opens your browser with an 8-character code. Complete login in the browser and the CLI automatically picks up your session. ### Check Status ```bash bullpen status bullpen status --output json ``` Shows: CLI version, environment, auth state, wallet address, Polymarket platform status. ### Logout ```bash bullpen logout ``` ## Configuration ### Initialize ```bash bullpen config init [OPTIONS] ``` Creates `~/.bullpen/config.toml` with defaults. ### View ```bash bullpen config show bullpen config show --output json ``` ### Environment All commands accept `--env staging|production`: ```bash bullpen --env staging polymarket discover ``` ### Config File Location - Config: `~/.bullpen/config.toml` - Credentials: `~/.bullpen/credentials.json` - Keys: `~/.bullpen/keys/turnkey_p256.json` - Watchlist: `~/.bullpen/watchlist.json` ## Wallet Management ### List Wallets ```bash bullpen wallet list bullpen wallet list --type turnkey bullpen wallet list --role trading bullpen wallet list --output json ``` Shows all wallets with their accounts, chain selection status, and roles. Filter by `--type` (turnkey, external, internal) or `--role` (trading, routing). ### Select Primary Wallet ```bash bullpen wallet select
--chain evm bullpen wallet select
--chain solana ``` Sets the primary wallet for all EVM chains (Polygon, Arbitrum, HyperCore) or Solana. The selected wallet will be used for all subsequent trading, portfolio, and balance commands. After switching, cached credentials are cleared and re-resolved on the next command. ### View Current Selection ```bash bullpen wallet info bullpen wallet info --output json ``` Shows which wallet is currently primary for each chain namespace (EVM, Solana), plus the Polymarket Safe address. ## Portfolio (Multi-Chain) View balances and P&L across all connected chains. ### Overview ```bash bullpen portfolio overview bullpen portfolio overview --output json ``` Portfolio value summary across Solana, Hyperliquid, and Polymarket. ### Balances ```bash bullpen portfolio balances bullpen portfolio balances --output json ``` Token balances broken down by chain (Solana, Hyperliquid Spot, Hyperliquid Perps, Polymarket). ### P&L ```bash bullpen portfolio pnl bullpen portfolio pnl --output json ``` Realized and unrealized profit/loss. ## Points View your Bullpen points balance: ```bash bullpen points bullpen points --output json ``` ## Rewards View and claim Bullpen rewards: ```bash bullpen rewards bullpen rewards --output json ``` ## CLI Status Check CLI version, environment, and connection status: ```bash bullpen status bullpen status --output json ``` Shows: CLI version, environment (staging/production), authentication status, connected services. ## Upgrade Update to the latest CLI version: ```bash bullpen upgrade ``` ## Shell Mode Launch an interactive REPL for running multiple commands: ```bash bullpen shell ``` ## Shell Completion Generate shell completion scripts: ```bash # Bash bullpen completion bash # Zsh bullpen completion zsh # Fish bullpen completion fish ``` ## Setup Wizard Run the guided first-time setup: ```bash bullpen setup ``` Walks through: authentication, configuration, wallet initialization. ## Experimental Features ```bash # List available experimental features bullpen experimental list # Enable a feature bullpen experimental enable # Disable a feature bullpen experimental disable ``` ## Cross-References - **Get started from scratch**: See `references/getting-started.md` - **Polymarket-specific positions**: See `references/portfolio-and-orders.md` - **Start trading**: See `references/trading.md` - **Community and support**: See `references/community.md` - **Diagnostics and troubleshooting**: See `references/diagnostics.md` ================================================================================ FILE: skill/references/portfolio-and-orders.md ================================================================================ # Portfolio and Orders View positions, manage orders, track activity, and maintain your watchlist on Polymarket. ## Positions View your active prediction market positions: ```bash bullpen polymarket positions [OPTIONS] ``` ```bash # Active positions (default) bullpen polymarket positions # Closed positions bullpen polymarket positions --closed # Only redeemable positions (resolved markets) bullpen polymarket positions --redeemable # Another wallet's positions bullpen polymarket positions --address 0x1234...abcd # JSON for scripting bullpen polymarket positions --output json ``` Shows: market title, outcome, shares held, average entry price, current price, P&L, current value. ## Open Orders View your current open orders: ```bash bullpen polymarket orders [OPTIONS] ``` ```bash # View open orders bullpen polymarket orders # JSON output bullpen polymarket orders --output json ``` Shows: market, outcome, side (buy/sell), price, shares, expiration type, order ID. ## Trade History View past trades: ```bash bullpen polymarket orders --history ``` ```bash # Your trade history bullpen polymarket orders --history # Another address's history bullpen polymarket orders --history --address 0x1234...abcd # JSON output bullpen polymarket orders --history --output json ``` ## Cancel Orders ```bash # Cancel a single order bullpen polymarket orders --cancel # Cancel multiple orders (comma-separated) bullpen polymarket orders --cancel ,, # Cancel ALL open orders bullpen polymarket orders --cancel-all --yes # Cancel all orders on a specific market bullpen polymarket orders --cancel-market --yes ``` Cancel output lists each cancelled order ID. If some orders fail to cancel, both successes and failures are shown separately. The process exits with code 1 on partial failure. ## Activity History View comprehensive activity (trades, redemptions, rewards, etc.): ```bash bullpen polymarket activity [OPTIONS] ``` ```bash # All activity bullpen polymarket activity # Filter by type bullpen polymarket activity --type trade bullpen polymarket activity --type redeem bullpen polymarket activity --type reward # Filter by side bullpen polymarket activity --side buy # Filter by date range bullpen polymarket activity --start 2026-01-01 --end 2026-02-01 # Filter by market bullpen polymarket activity --market # Sort and limit bullpen polymarket activity --sort timestamp --limit 100 # JSON output bullpen polymarket activity --output json ``` **Activity types**: `trade`, `split`, `merge`, `redeem`, `reward`, `conversion`, `deposit`, `withdrawal`, `yield`, `maker_rebate` ## Watchlist Manage a local watchlist of markets you're tracking: ```bash bullpen polymarket watchlist [OPTIONS] ``` ```bash # View watchlist bullpen polymarket watchlist # Add a market bullpen polymarket watchlist --add will-bitcoin-hit-100k # Remove a market bullpen polymarket watchlist --remove will-bitcoin-hit-100k # JSON output bullpen polymarket watchlist --output json ``` Watchlist is stored locally at `~/.bullpen/watchlist.json`. ## Portfolio Management Workflow Complete portfolio monitoring flow: ```bash # 1. Check all positions bullpen polymarket positions --output json # 2. Check for redeemable positions bullpen polymarket positions --redeemable # 3. Redeem any resolved positions bullpen polymarket redeem --yes # 4. Review open orders bullpen polymarket orders --output json # 5. Review recent activity bullpen polymarket activity --type trade --limit 10 # 6. Check overall balances bullpen portfolio balances ``` ## Cross-References - **Find new markets**: See `references/discovery-and-research.md` - **Execute trades**: See `references/trading.md` - **Track other traders**: See `references/social-and-signals.md` - **Automate monitoring**: See `references/scripting-and-automation.md` ================================================================================ FILE: skill/references/scripting-and-automation.md ================================================================================ # Scripting and Automation Use JSON output, jq piping, and batch workflows to automate prediction market operations. ## JSON Output All commands support `--output json` for machine-readable output: ```bash bullpen polymarket discover --output json bullpen polymarket positions --output json bullpen polymarket price will-bitcoin-hit-100k --output json ``` ## Essential Flags for Automation - `--output json` — Machine-readable output (all commands) - `--yes` — Skip confirmation prompts (trading commands) - `--non-interactive` — Disable all interactive prompts (auth) - `--preview` — Dry-run trade without executing ## Piping with jq ### Extract Market Data ```bash # Get market slugs from discovery bullpen polymarket discover --output json | jq -r '.markets[].slug' # Get prices for specific outcome bullpen polymarket price will-bitcoin-hit-100k --output json | jq '.outcomes[] | select(.name == "Yes") | .midpoint' # Filter high-value positions bullpen polymarket positions --output json | jq '.positions[] | select(.current_value > 100)' ``` ### Extract Order Data ```bash # List open order IDs bullpen polymarket orders --output json | jq -r '.orders[].id' # Find orders on a specific market bullpen polymarket orders --output json | jq '.orders[] | select(.market_slug == "will-bitcoin-hit-100k")' ``` ### Extract Trader Data ```bash # Top 5 traders by P&L bullpen polymarket data leaderboard --output json | jq '.traders[:5] | .[] | {name, pnl, volume}' # Smart money signals for a category bullpen polymarket data smart-money --output json | jq '.signals[] | select(.category == "crypto")' ``` ## Batch Operations ### Monitor Multiple Markets ```bash #!/bin/bash # Price check across watchlist bullpen polymarket watchlist --output json | jq -r '.markets[].slug' | while read slug; do echo "=== $slug ===" bullpen polymarket price "$slug" --output json done ``` ### Bulk Cancel Orders ```bash # Cancel all orders on a market bullpen polymarket orders --cancel-all --yes # Cancel specific orders IDS=$(bullpen polymarket orders --output json | jq -r '.orders[].id' | paste -sd,) bullpen polymarket orders --cancel "$IDS" --yes ``` ### Automated Position Check ```bash #!/bin/bash # Check for redeemable positions and redeem REDEEMABLE=$(bullpen polymarket positions --redeemable --output json | jq '.positions | length') if [ "$REDEEMABLE" -gt 0 ]; then echo "Found $REDEEMABLE redeemable positions, redeeming..." bullpen polymarket redeem --yes fi ``` ### Market Screening ```bash #!/bin/bash # Find high-volume crypto markets with tight spreads bullpen polymarket discover crypto --sort volume --min-liquidity 50000 --output json | \ jq -r '.markets[].slug' | while read slug; do PRICE_DATA=$(bullpen polymarket price "$slug" --output json) SPREAD=$(echo "$PRICE_DATA" | jq '.outcomes[0].spread // 0') if (( $(echo "$SPREAD < 0.05" | bc -l) )); then echo "Tight spread ($SPREAD): $slug" fi done ``` ### Portfolio Snapshot ```bash #!/bin/bash # Daily portfolio snapshot DATE=$(date +%Y-%m-%d) echo "=== Portfolio Snapshot $DATE ===" echo "--- Balances ---" bullpen portfolio balances --output json echo "--- Positions ---" bullpen polymarket positions --output json | jq '{ total_positions: (.positions | length), total_value: ([.positions[].current_value] | add), positions: [.positions[] | {title, outcome, shares: .size, value: .current_value, pnl: .pnl}] }' echo "--- Open Orders ---" bullpen polymarket orders --output json | jq '.orders | length' ``` ### Smart Money Following ```bash #!/bin/bash # Follow top weekly traders bullpen polymarket data leaderboard --period week --limit 10 --output json | \ jq -r '.traders[].address' | while read addr; do bullpen tracker follow "$addr" echo "Following: $addr" done ``` ## Authentication Device auth (RFC 8628) requires a browser, so CI pipelines should pre-authenticate and cache credentials: ```bash # Pre-authenticate locally, then copy credentials to CI: # ~/.bullpen/credentials.json + ~/.bullpen/keys/turnkey_p256.json bullpen login ``` ## Cron Job Recipes ### Hourly Position Check ```bash # crontab -e 0 * * * * /usr/local/bin/bullpen polymarket positions --redeemable --output json | jq '.positions | length' >> /var/log/bullpen-redeemable.log ``` ### Daily Leaderboard Snapshot ```bash 0 9 * * * /usr/local/bin/bullpen polymarket data leaderboard --period day --output json > /data/leaderboard-$(date +\%Y\%m\%d).json ``` ## Error Handling in Scripts ```bash #!/bin/bash set -e # Check auth before trading if ! bullpen status --output json | jq -e '.account.logged_in' > /dev/null 2>&1; then echo "Error: Not authenticated. Run: bullpen login" exit 1 fi # Trade with error handling if bullpen polymarket buy will-bitcoin-hit-100k Yes 10 --yes --output json 2>/dev/null; then echo "Trade successful" else EXIT_CODE=$? if [ $EXIT_CODE -eq 3 ]; then echo "Trade execution failed — check balance and approvals" else echo "Unexpected error (exit code: $EXIT_CODE)" fi fi ``` ## Rate Limiting When scripting multiple requests: - Add 1-2 second delays between API calls in loops - Use `--output json` to avoid unnecessary formatting overhead - Batch operations where possible (e.g., `--cancel-all` instead of individual cancels) ## Cross-References - **Command details**: See `references/discovery-and-research.md`, `references/trading.md`, `references/portfolio-and-orders.md` - **Account setup for CI**: See `references/getting-started.md` - **Social monitoring scripts**: See `references/social-and-signals.md` ================================================================================ FILE: skill/references/social-and-signals.md ================================================================================ # Social and Signals Monitor market commentary, track traders, view leaderboards, and configure alerts. ## Comments View comments on markets, events, series, or by user: ```bash bullpen polymarket comments [OPTIONS] [SLUG] ``` ```bash # Comments on a market bullpen polymarket comments will-bitcoin-hit-100k # Comments on an event bullpen polymarket comments --event some-event-slug # Comments on a series bullpen polymarket comments --series some-series-slug # Comments by a specific user bullpen polymarket comments --user 0x1234...abcd # Replies to a comment bullpen polymarket comments --replies # Smart-filtered feed (filters spam/low-quality) bullpen polymarket comments --filtered # Filter by commenter quality bullpen polymarket comments --filtered --min-pnl 1000 --min-volume 10000 # Only from followed users bullpen polymarket comments --filtered --following-only # Paginate bullpen polymarket comments will-bitcoin-hit-100k --page 2 --limit 50 # JSON output bullpen polymarket comments will-bitcoin-hit-100k --output json ``` ## Feeds View aggregated trade or comment feeds across all markets: ```bash bullpen polymarket feed [OPTIONS] ``` **Feed types**: `trades`, `comments` ```bash # Trade feed bullpen polymarket feed trades # Comment feed bullpen polymarket feed comments # Filter trade feed by quality bullpen polymarket feed trades --min-trade-size 1000 --min-pnl 5000 # Filter by price range bullpen polymarket feed trades --min-price 0.10 --max-price 0.90 # Filter by action bullpen polymarket feed trades --action Buy # Filter by category bullpen polymarket feed trades --category crypto # Exclude categories bullpen polymarket feed trades --exclude-categories sports,entertainment # Comment feed from followed users only bullpen polymarket feed comments --following-only # Paginate bullpen polymarket feed trades --page 1 --limit 50 # JSON output bullpen polymarket feed trades --output json ``` ## Alerts ### Comment Alerts Manage alerts for comments on markets you follow: ```bash bullpen polymarket comment-alert [OPTIONS] ``` ### Trade Alerts Manage alerts for trades on markets you follow: ```bash bullpen polymarket trade-alert [OPTIONS] ``` ### Smart Alerts Configure smart alert preferences for automated notifications: ```bash bullpen polymarket smart-alerts [OPTIONS] ``` ```bash # View current settings bullpen polymarket smart-alerts # Enable smart money alerts bullpen polymarket smart-alerts --set --smart-money true # Enable top trader alerts bullpen polymarket smart-alerts --set --top-traders true # Enable new wallet alerts bullpen polymarket smart-alerts --set --new-wallet true # Set preferred categories bullpen polymarket smart-alerts --set --categories crypto,politics # Combine settings bullpen polymarket smart-alerts --set --smart-money true --top-traders true --categories crypto # JSON output bullpen polymarket smart-alerts --output json ``` ## Tracker Unified entry point for tracking Polymarket traders, organizing into groups, managing your watchlist, and configuring alerts. ### Track Addresses ```bash # Track a Polymarket address bullpen tracker add
# Track with nickname and group bullpen tracker add
--nickname "GCR" --group # Track with notifications bullpen tracker add
--notify-trades true --trade-threshold 5000 # Stop tracking bullpen tracker remove
# List all tracked addresses bullpen tracker list # Filter by group bullpen tracker list --group # Update tracking settings bullpen tracker update
--notify-trades true --notify-comments true # View trade feed from tracked addresses bullpen tracker feed # Filter feed by group or address bullpen tracker feed --group --limit 50 # JSON output bullpen tracker list --output json ``` ### Wallet Groups Organize tracked addresses into named groups with sharing support: ```bash # List all groups bullpen tracker groups # Create a group bullpen tracker groups create "Whales" --emoji "🐋" # Edit a group bullpen tracker groups edit --name "Top Whales" --emoji "🐳" # Delete a group bullpen tracker groups delete --confirm # Toggle notifications for all addresses in a group bullpen tracker groups notify on # Share a group (generates a share code) bullpen tracker groups share # Import a group from a share code bullpen tracker groups import # Browse curated groups bullpen tracker groups curated # Import a curated group bullpen tracker groups curated import ``` ### Watchlist Bookmark markets to track prices and activity: ```bash # List watchlist items bullpen tracker watchlist # Add a Polymarket event to watchlist bullpen tracker watchlist add presidential-election-2028 # Remove from watchlist bullpen tracker watchlist remove presidential-election-2028 # View details for a watchlist item bullpen tracker watchlist view presidential-election-2028 # JSON output bullpen tracker watchlist --output json ``` ### Alerts Configure global trade/comment alerts and smart alert settings: ```bash # View all alert configuration bullpen tracker alerts # View trade alert config bullpen tracker alerts trade # Set a trade alert bullpen tracker alerts trade set --min-trade-size 5000 --action Buy --tracked-only # Delete trade alert bullpen tracker alerts trade delete # Set a comment alert bullpen tracker alerts comment set --min-pnl 100000 --tracked-only # Delete comment alert bullpen tracker alerts comment delete # View smart alert settings bullpen tracker alerts smart # Configure smart alerts bullpen tracker alerts smart --smart-money true --top-traders true --categories crypto,politics ``` ## Leaderboard View top traders ranked by performance: ```bash bullpen polymarket data leaderboard [OPTIONS] ``` ```bash # All-time leaderboard bullpen polymarket data leaderboard # Weekly leaders bullpen polymarket data leaderboard --period week # Daily leaders, top 10 bullpen polymarket data leaderboard --period day --limit 10 # JSON output bullpen polymarket data leaderboard --output json ``` **Periods**: `day`, `week`, `month`, `all` (default) ## Trader Profiles Look up detailed stats for any trader: ```bash bullpen polymarket data profile
``` ```bash bullpen polymarket data profile 0x1234...abcd --output json ``` Returns: total volume, P&L, win rate, number of predictions, account age. ## Smart Money Signals View aggregated smart money activity: ```bash bullpen polymarket data smart-money [OPTIONS] ``` ```bash bullpen polymarket data smart-money --output json ``` ## Notifications View account notifications: ```bash bullpen notifications bullpen notifications --output json ``` ## Social Monitoring Workflow Set up comprehensive market monitoring: ```bash # 1. Create a group and track top traders from leaderboard bullpen tracker groups create "Whales" --emoji "🐋" bullpen polymarket data leaderboard --period week --limit 5 --output json # Then track interesting addresses into the group: bullpen tracker add
--group --notify-trades true # 2. Add markets to your watchlist bullpen tracker watchlist add presidential-election-2028 bullpen tracker watchlist add fed-rate-cut-june # 3. Configure alerts bullpen tracker alerts trade set --min-trade-size 5000 --tracked-only bullpen tracker alerts smart --smart-money true --top-traders true # 4. Monitor trade feed from your tracked group bullpen tracker feed --group # 5. Check your watchlist bullpen tracker watchlist # 6. Read high-quality comments bullpen polymarket comments --filtered --min-pnl 5000 ``` ## Cross-References - **Research markets mentioned in feeds**: See `references/discovery-and-research.md` - **Act on signals by trading**: See `references/trading.md` - **Check your own positions**: See `references/portfolio-and-orders.md` - **Automate monitoring**: See `references/scripting-and-automation.md` ================================================================================ FILE: skill/references/trading.md ================================================================================ # Trading Buy, sell, place limit orders, redeem resolved positions, and manage funds on Polymarket. All trading commands require authentication (`bullpen login`). ## Market Buy Buy shares at the current market price: ```bash bullpen polymarket buy [OPTIONS] ``` ```bash # Buy $10 of Yes shares bullpen polymarket buy will-bitcoin-hit-100k Yes 10 # Skip confirmation (for automation) bullpen polymarket buy will-bitcoin-hit-100k Yes 10 --yes # Preview without executing bullpen polymarket buy will-bitcoin-hit-100k Yes 10 --preview # JSON output bullpen polymarket buy will-bitcoin-hit-100k Yes 10 --yes --output json ``` **Arguments:** - `MARKET_SLUG` — Market slug (e.g., `will-bitcoin-hit-100k`). If the slug is wrong, the CLI shows "Did you mean?" suggestions. - `OUTCOME` — Outcome name (`Yes`, `No`, or specific outcome text). Aliases work: `Y`/`N`, `True`/`False`, `1`/`0`. - `AMOUNT_USD` — Dollar amount to spend **Key flags:** - `--yes` — Skip confirmation prompt (required for automation) - `--preview` — Show order preview without executing **Multi-market events:** When an event contains multiple markets, the CLI auto-selects the highest-volume active market and shows a warning listing all alternatives. JSON output (`--output json`) includes an `alternatives` array for programmatic selection. ## Market Sell Sell shares you hold: ```bash bullpen polymarket sell [OPTIONS] ``` ```bash # Sell 50 Yes shares bullpen polymarket sell will-bitcoin-hit-100k Yes 50 # Skip confirmation bullpen polymarket sell will-bitcoin-hit-100k Yes 50 --yes # Preview bullpen polymarket sell will-bitcoin-hit-100k Yes 50 --preview ``` **Notes:** - Selling requires ERC-1155 token approval. If you get an approval error, run `bullpen polymarket approve` first. - **Share rounding:** Shares are automatically rounded to 2 decimal places before submission. If you sell your exact position (e.g., 28.924238 shares from `positions` output), the CLI rounds to 28.92 shares. - **Output labels:** Sell output shows "Sold X shares / Received $Y" with correct side-aware labels and average price. ## Limit Buy Place a limit buy order at a specific price: ```bash bullpen polymarket limit-buy [OPTIONS] --price --shares ``` ```bash # Buy 100 shares at $0.45 each bullpen polymarket limit-buy --price 0.45 --shares 100 will-bitcoin-hit-100k Yes # Fill-or-Kill (must fill entirely or cancel) bullpen polymarket limit-buy --price 0.45 --shares 100 --expiration fok will-bitcoin-hit-100k Yes # Post-only (reject if it would fill immediately) bullpen polymarket limit-buy --price 0.45 --shares 100 --post-only will-bitcoin-hit-100k Yes # Skip confirmation bullpen polymarket limit-buy --price 0.45 --shares 100 --yes will-bitcoin-hit-100k Yes ``` **Price**: 0.01-0.99 (represents cents per share / probability). **Expiration types:** - `gtc` (default) — Good-Til-Cancelled: rests on book until cancelled - `fok` — Fill-Or-Kill: must fill entirely immediately - `fak` — Fill-And-Kill: fills what it can immediately, cancels rest - `gtd` — Good-Til-Date: rests until specified date ## Limit Sell Place a limit sell order: ```bash bullpen polymarket limit-sell [OPTIONS] --price --shares ``` ```bash bullpen polymarket limit-sell --price 0.65 --shares 50 will-bitcoin-hit-100k Yes --yes ``` Same options as limit-buy. ## Redeem Resolved Positions Redeem winnings from resolved markets: ```bash bullpen polymarket redeem [OPTIONS] ``` ```bash # Redeem all redeemable positions bullpen polymarket redeem --yes # Redeem specific condition IDs bullpen polymarket redeem --condition-ids 0xabc123,0xdef456 --yes # Check what's redeemable first bullpen polymarket positions --redeemable ``` ## Pre-Trade Checks Run safety checks before trading: ```bash bullpen polymarket preflight ``` Checks: server connectivity, account status, USDC balance, token approvals. ## Token Approvals Check and set approvals needed for selling: ```bash bullpen polymarket approve ``` ```bash # Check current approval status bullpen polymarket approve # Approvals are gasless (relayer pays gas) ``` Required before your first sell on Polymarket. The approve command handles ERC-1155 approvals for the Exchange, NegRiskExchange, and NegRiskAdapter operators. ## CTF Operations (Split/Merge) Convert between USDC and outcome tokens directly: ```bash # Split: USDC -> YES + NO tokens bullpen polymarket split --condition --amount # Merge: YES + NO tokens -> USDC bullpen polymarket merge --condition --amount ``` ```bash # Split $100 into 100 Yes + 100 No shares (use condition ID from market details) bullpen polymarket split --condition 0xbd31dc8a... --amount 100 --yes # Merge 50 Yes + 50 No back into $50 bullpen polymarket merge --condition 0xbd31dc8a... --amount 50 --yes ``` To find the condition ID for a market, use `bullpen polymarket market --output json` and look for the `condition_id` field. Gasless operations. Useful for market-making or arbitrage strategies. ## Depositing Funds Direct users to the Bullpen web app for all deposits: ```bash bullpen deposit ``` This opens the web app where deposits are handled safely with asset validation and chain routing. **IMPORTANT:** Do NOT instruct users to send funds directly to wallet addresses shown in the CLI. The web app handles deposit routing to ensure the correct assets reach the correct chain. Sending wrong assets to raw addresses can result in lost funds. If the user asks about their wallet addresses for informational purposes only, use `bullpen portfolio balances`. ### Withdraw Withdraw funds to an external address: ```bash bullpen polymarket withdraw
``` ### Bridge Status Check the status of a deposit transaction: ```bash bullpen polymarket bridge --status ``` ## Real-Time Market Watch Subscribe to real-time market data via WebSocket: ```bash bullpen polymarket watch ``` Streams live price updates, orderbook changes, and trades. ## Trade Preview All trading commands support `--preview` to see what would happen without executing: ```bash bullpen polymarket buy will-bitcoin-hit-100k Yes 10 --preview ``` Preview shows: side, outcome, market, estimated price, amount, estimated shares, potential payout, current spread. ## Order Status After placing an order, the CLI shows a status-aware result with side-aware labels: - **MATCHED** — "Order filled" with spent/received amounts and avg price. For buys: "Spent $X / Received Y shares". For sells: "Sold X shares / Received $Y". - **LIVE** — "Order resting on book" (limit orders waiting for fills), with a tip to check `bullpen polymarket orders` - **DELAYED** — "Order delayed" (temporary processing delay) - **UNMATCHED** — "Order not matched" (no counterparty found) **Holdings warning:** If you sell immediately after buying, you may see "Positions API shows 0 shares" — this is an indexing delay, not a real error. The order may still succeed if shares are held on-chain. Wait a few seconds and retry if needed. JSON output (`--output json`) includes full details: `status`, `making_amount`, `taking_amount`, `avg_price`, `transaction_hashes`, and `trade_ids`. ## Exit Codes - `0` — Success - `1` — General error (including partial cancel failures) - `3` — Trade execution failed ## Trading Workflow Recipe Complete flow from research to executed trade: ```bash # 1. Find a market bullpen polymarket search "bitcoin" --output json # 2. Check current price bullpen polymarket price will-bitcoin-hit-100k # 3. Run pre-trade checks bullpen polymarket preflight # 4. Preview the order bullpen polymarket buy will-bitcoin-hit-100k Yes 25 --preview # 5. Execute bullpen polymarket buy will-bitcoin-hit-100k Yes 25 --yes # 6. Verify position bullpen polymarket positions ``` ## CLOB V2 (Experimental) Polymarket is migrating to CLOB V2 with new smart contracts, fee model, and collateral token (pUSD). The CLI supports V2 behind an experimental feature flag. ### Enable V2 Mode ```bash bullpen experimental enable pm_clob_v2 ``` When enabled, all trading commands use: - CLOB V2 backend (`clob-v2.polymarket.com`) - V2 exchange contracts - pUSD collateral token (instead of USDC.e) ### Disable V2 Mode ```bash bullpen experimental disable pm_clob_v2 ``` Returns to the current V1 CLOB backend. ### What Changes in V2 - **Fees**: Protocol-handled (no longer client-side). Fee parameters queryable per market. - **Collateral**: pUSD (Polymarket USD) replaces USDC.e. Users must wrap USDC -> pUSD before trading. - **Order format**: Nonce removed, builder codes added for integrator attribution. - **Contracts**: New exchange contract addresses for standard and neg-risk markets. ### Migration Notes - All open orders are wiped during the V1 -> V2 migration. Users must re-place orders. - The CLI handles the version switch automatically when the flag is toggled. - V1 SDK will stop working after migration. Ensure `pm_clob_v2` is enabled before the cutover date. ### IMPORTANT CLOB V2 is currently in limited testing. Only users whitelisted by Polymarket can access the V2 backend. Do NOT enable this flag unless you have been explicitly approved for V2 testing. If you are whitelisted, use `--env staging` for initial testing before enabling on production. ### Wrap and Unwrap pUSD (V2 only) When `pm_clob_v2` is enabled, the collateral token is pUSD instead of USDC.e. You must wrap USDC into pUSD before trading: ```bash # Wrap USDC into pUSD bullpen polymarket wrap --yes # Unwrap pUSD back to USDC bullpen polymarket unwrap --yes ``` ```bash # Example: wrap $100 USDC into pUSD bullpen polymarket wrap 100 --yes # Example: unwrap $50 pUSD back to USDC bullpen polymarket unwrap 50 --yes ``` Both operations require `pm_clob_v2` to be enabled and the user to be whitelisted by Polymarket. ## Cross-References - **Find markets first**: See `references/discovery-and-research.md` - **Manage positions after trading**: See `references/portfolio-and-orders.md` - **Automate trades with scripts**: See `references/scripting-and-automation.md` - **Account setup**: See `references/getting-started.md`