Polyclawster

v2.0.1

Trade on Polymarket prediction markets. Non-custodial — your agent generates a Polygon wallet, signs orders locally, and submits via polyclawster.com relay (...

1· 619· 26 versions· 1 current· 1 all-time· Updated 7m ago· MIT-0
byIlya@al1enjesus

Install

openclaw skills install polyclawster-agent

polyclawster-agent

Trade on Polymarket prediction markets with your OpenClaw agent.

User experience

This skill is designed for conversational use. When a user asks to trade, the agent runs the appropriate script and reports results naturally.

For example, if a user says "Bet $5 on Bitcoin above 100k", the agent runs the trade script and responds with the outcome — the trade details, price, and confirmation. Users can always ask for more technical details if they want them.

The agent should share the wallet address when the user needs to fund it, and explain any errors in clear terms.

Setup flow

When a user wants to start trading Polymarket:

  1. Run setup.js --auto — creates a local Polygon wallet and registers the agent on polyclawster.com
  2. Share the wallet address — the user sends POL (Polygon native token) to fund it
  3. Once funded, the agent can place trades

Config is stored in ~/.polyclawster/config.json (private key, CLOB API credentials).

Scripts reference

All scripts are in the scripts/ directory. Run with node scripts/<name>.js.

ScriptPurposeKey flags
setup.jsCreate wallet + register agent--auto, --info, --derive-clob
balance.jsCheck POL, USDC.e, and CLOB balances
swap.jsConvert POL or native USDC → USDC.e--pol N, --usdc N, --check
approve.jsOne-time Polymarket contract approvals--check (read-only)
browse.jsSearch markets by topicPass search term as argument
trade.jsPlace a bet (live or demo)--market, --side YES/NO, --amount N, --demo
sell.jsClose a position--bet-id N, --list
auto.jsAutonomous trading on AI signals--demo, --min-score N, --max-bet N, --dry-run
link.jsLink agent to Telegram Mini AppPass claim code as argument

Live trading

trade.js handles the full flow automatically before placing a live bet:

  1. Checks USDC.e balance
  2. Swaps POL → USDC.e if needed (keeps 1 POL for gas)
  3. Runs one-time contract approvals if missing
  4. Refreshes CLOB balance
  5. Places the order (signed locally, submitted via relay)

About approvals

approve.js grants ERC-20 allowance and CTF setApprovalForAll to Polymarket exchange contracts. These are standard Polymarket approvals — the same ones the official Polymarket UI requests. You can check approval status with approve.js --check before granting, and revoke them on-chain at any time.

Architecture

  • Wallet: Polygon EOA generated locally — private key stays on this machine in ~/.polyclawster/config.json
  • Trading token: USDC.e (bridged USDC on Polygon, 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174)
  • Funding: user sends POL → agent swaps to USDC.e via Uniswap SwapRouter02
  • Relay: signed orders go through polyclawster.com (Tokyo) for geo-bypass — the relay never sees the private key
  • Dashboard: polyclawster.com/a/{agent_id}

Important notes

  • USDC.e ≠ native USDC — Polymarket uses bridged USDC.e. If user sends native USDC (0x3c499...), use swap.js to convert.
  • Demo mode (--demo) uses a free $10 paper balance — recommended for first-time testing.
  • All orders are signed locally with EIP-712 + HMAC. The relay forwards signed payloads without access to keys.
  • Start small — fund with a small amount of POL first to verify everything works.

📱 Not using OpenClaw? Trade via Telegram

Don't have an AI agent? Use the Telegram Mini App instead — same markets, same signals, no coding needed.

👉 @PolyClawsterBot

Version tags

latestvk97fx9z5m7xf5e6p2mv0t6xrqh82vw8a

Runtime requirements

Binsnode