grimoire-polymarket▌
franalgaba/grimoire · updated Apr 8, 2026
Query Polymarket markets and manage CLOB orders via the official Polymarket CLI.
- ›Provides market discovery through search-markets with filters for query, category, sport, league, event, tag, and trading status; also supports passthrough access to official markets , events , tags , series , and sports commands
- ›Exposes CLOB operations including order placement, cancellation, price queries, order book inspection, trade history, and balance checks; supports GTC, GTD, FOK, and FAK order type
Grimoire Polymarket Skill
Use this skill for Polymarket market discovery, CLOB market data, and order-management operations through the polymarket venue adapter.
Preferred invocations:
grimoire venue polymarket ...npx -y @grimoirelabs/cli venue polymarket ...(no-install)bun run packages/cli/src/index.ts venue polymarket ...(repo-local)grimoire-polymarket ...(direct binary from@grimoirelabs/venues)
Recommended preflight:
grimoire venue doctor --adapter polymarket --jsongrimoire venue polymarket info --format json
Commands
Canonical agent commands:
grimoire venue polymarket info [--format <auto|json|table>]grimoire venue polymarket search-markets [--query <text>] [--slug <slug|url>] [--question <text>] [--event <text>] [--tag <text>] [--category <text>] [--league <text>] [--sport <text>] [--open-only <true|false>] [--active-only <true|false>] [--ignore-end-date <true|false>] [--tradable-only <true|false>] [--all-pages <true|false>] [--max-pages <n>] [--stop-after-empty-pages <n>] [--limit <n>] [--format <auto|json|table>]
Allowed passthrough groups (official CLI surface, restricted by wrapper policy):
markets(list|get|search|tags)data(positions/value/leaderboards/etc.)
Blocked groups in this wrapper (intentionally not exposed for agents):
walletbridgeapprovectfsetupupgradeshell
Legacy compatibility aliases are still supported (market, book, midpoint, spread, price, last-trade-price, tick-size, neg-risk, fee-rate, price-history, order, trades, open-orders, balance-allowance, closed-only-mode, server-time) but should not be used for new agent flows.
Examples
# Wrapper/health
grimoire venue polymarket info --format json
grimoire venue polymarket status --format json
# Canonical discovery
grimoire venue polymarket search-markets --query bitcoin --active-only true --open-only true --format json
grimoire venue polymarket search-markets --category sports --league "la liga" --active-only true --open-only true --format json
# Official passthrough discovery/data
grimoire venue polymarket markets list --limit 25 --format json
grimoire venue polymarket markets search "atleti" --limit 25 --format json
grimoire venue polymarket data positions <address> --limit 25 --format json
grimoire venue polymarket data trades <address> --limit 25 --format json
grimoire venue polymarket data leaderboard --period week --order-by vol --limit 25 --format json
# Legacy compatibility aliases (still supported)
grimoire venue polymarket book --token-id <token_id> --format json
grimoire venue polymarket price --token-id <token_id> --side buy --format json
grimoire venue polymarket order --order-id <order_id> --format json
grimoire venue polymarket open-orders --market <condition_id> --format json
Runtime Configuration
Adapter/runtime auth (for spell execution):
- required by default:
POLYMARKET_PRIVATE_KEY - optional API creds:
POLYMARKET_API_KEY,POLYMARKET_API_SECRET,POLYMARKET_API_PASSPHRASE - optional derive toggle (default true):
POLYMARKET_DERIVE_API_KEY=true|false - optional signature routing:
POLYMARKET_SIGNATURE_TYPE(0EOA,1POLY_PROXY,2GNOSIS_SAFE),POLYMARKET_FUNDER grimoire cast/grimoire resumekey-based flows inject the same wallet-manager key into the Polymarket adapter, so a separatePOLYMARKET_PRIVATE_KEYenv is not required there.
Venue CLI backend:
- Official binary required:
polymarket - Install:
brew tap Polymarket/polymarket-cli && brew install polymarket - Optional path override:
POLYMARKET_OFFICIAL_CLI=/custom/path/polymarket
Spell Actions
Polymarket uses custom action type with op: "order" for order placement:
polymarket.custom(
op="order",
token_id="TOKEN_ID",
price="0.55",
size="100",
side="BUY",
order_type="GTC",
)
The adapter does not support runtime constraints (max_slippage, etc.). Order routing:
GTC/GTD→ limit order (createAndPostOrder)FOK/FAK→ market order (createAndPostMarketOrder)
Metric Surface (Spell Comparisons)
Polymarket exposes mid_price for CLOB token midpoint comparisons:
poly_mid = metric("mid_price", polymarket, USDC, "token_id=<clobTokenId>")
Selector keys accepted: token_id, tokenid, market_id, id.
If selector is omitted, the metric falls back to the 3rd argument value.
Adapter Notes
- Adapter name:
polymarket - Execution type:
offchain - Supported chain metadata:
137(Polygon) - Action type:
custom - Supported custom ops:
order,cancel_order,cancel_orders,cancel_all,heartbeat
Order argument aliases accepted:
- token:
token_idortokenIDortokenIdorcoin - amount:
sizeoramount - side:
BUY/SELL - order type:
GTC/GTD/FOK/FAK - extra compatibility aliases:
arg0..arg5,reduce_only
Order type routing:
GTC/GTD-> limit order path (createAndPostOrder)FOK/FAK-> market order path (createAndPostMarketOrder)
Notes
- Prefer
--format jsonfor agent and automation workflows. search-marketsis the agent-oriented normalized discovery command; passthroughmarkets searchis thinner and closer to official behavior.- Keep prompts/tooling on this CLI surface; do not call Polymarket HTTP APIs directly from advisory tools.