Install
openclaw skills install kalshi-agentKalshi prediction market agent - analyzes markets and executes trades via the Kalshi v2 API
openclaw skills install kalshi-agentCLI tool for trading prediction markets on Kalshi.
npm install -g kalshi-cli
~/.kalshi/private_key.pem~/.kalshi/.env:KALSHI_ACCESS_KEY=your_access_key_id
Or run kalshi setup-shell to add it to your shell config.
# List open markets (default 20)
kalshi markets
kalshi markets -l 50
kalshi markets --status settled
# Search by keyword, ticker, or category
kalshi search "Super Bowl"
kalshi search soccer
kalshi search hockey
kalshi search KXWO-GOLD-26
# Search with filters
kalshi search politics --min-odds 5 # hide markets where either side < 5%
kalshi search soccer --expiring # sort by soonest expiry, show expiry column
kalshi search soccer -e -m 2 -l 20 # combine flags: expiring, 2% min-odds, 20 results
# Browse all active series (interactive — pick a number to drill down)
kalshi series
kalshi series soccer
kalshi series --all # include series with no active markets
kalshi series -e # sort by soonest expiry
# View single market detail
kalshi detail KXWO-GOLD-26-NOR
# View orderbook depth
kalshi orderbook KXWO-GOLD-26-NOR
Search uses a multi-strategy approach:
KX prefix), or series tickerCommon sport/category aliases are expanded automatically (e.g. "nfl" also searches "football").
Both kalshi search and kalshi series display numbered tables when listing series. After the table, you're prompted:
Enter # to drill down (or q to quit):
Pick a number to load that series' open markets inline. The prompt loops so you can explore multiple series without re-running the command.
# Check balance
kalshi balance
# View positions
kalshi positions
# View open orders
kalshi orders
# Buy 10 YES contracts at 68c each
kalshi buy KXSB-26 10 68
# Buy NO contracts
kalshi buy KXWO-GOLD-26-NOR 5 32 --side no
# Sell (same syntax)
kalshi sell KXWO-GOLD-26-NOR 5 40 --side no
# Skip confirmation prompt
kalshi buy KXSB-26 10 68 --force
# Cancel an open order
kalshi cancel <order-id>
$0.68 (68%))--side defaults to yes if not specifiedbuy and sell show a cost/proceeds summary and ask for confirmation (bypass with --force)--min-odds / -m filters out markets where either side's bid is below a percentage threshold (default 0.5%)--expiring / -e sorts results by soonest expiry, adds an "Expires" column, and excludes already-expired entriesKX (e.g. KXWO-GOLD-26); market tickers have more segments (e.g. KXWO-GOLD-26-NOR)Full API docs: https://docs.kalshi.com/api-reference/