Files
hermes-agent/website/docs/user-guide/skills/bundled/research/research-polymarket.md
Teknium 0f6eabb890 docs(website): dedicated page per bundled + optional skill (#14929)
Generates a full dedicated Docusaurus page for every one of the 132 skills
(73 bundled + 59 optional) under website/docs/user-guide/skills/{bundled,optional}/<category>/.
Each page carries the skill's description, metadata (version, author, license,
dependencies, platform gating, tags, related skills cross-linked to their own
pages), and the complete SKILL.md body that Hermes loads at runtime.

Previously the two catalog pages just listed skills with a one-line blurb and
no way to see what the skill actually did — users had to go read the source
repo. Now every skill has a browsable, searchable, cross-linked reference in
the docs.

- website/scripts/generate-skill-docs.py — generator that reads skills/ and
  optional-skills/, writes per-skill pages, regenerates both catalog indexes,
  and rewrites the Skills section of sidebars.ts. Handles MDX escaping
  (outside fenced code blocks: curly braces, unsafe HTML-ish tags) and
  rewrites relative references/*.md links to point at the GitHub source.
- website/docs/reference/skills-catalog.md — regenerated; each row links to
  the new dedicated page.
- website/docs/reference/optional-skills-catalog.md — same.
- website/sidebars.ts — Skills section now has Bundled / Optional subtrees
  with one nested category per skill folder.
- .github/workflows/{docs-site-checks,deploy-site}.yml — run the generator
  before docusaurus build so CI stays in sync with the source SKILL.md files.

Build verified locally with `npx docusaurus build`. Only remaining warnings
are pre-existing broken link/anchor issues in unrelated pages.
2026-04-23 22:22:11 -07:00

3.6 KiB

title, sidebar_label, description
title sidebar_label description
Polymarket — Query Polymarket prediction market data — search markets, get prices, orderbooks, and price history Polymarket Query Polymarket prediction market data — search markets, get prices, orderbooks, and price history

{/* This page is auto-generated from the skill's SKILL.md by website/scripts/generate-skill-docs.py. Edit the source SKILL.md, not this page. */}

Polymarket

Query Polymarket prediction market data — search markets, get prices, orderbooks, and price history. Read-only via public REST APIs, no API key needed.

Skill metadata

Source Bundled (installed by default)
Path skills/research/polymarket
Version 1.0.0
Author Hermes Agent + Teknium

Reference: full SKILL.md

:::info The following is the complete skill definition that Hermes loads when this skill is triggered. This is what the agent sees as instructions when the skill is active. :::

Polymarket — Prediction Market Data

Query prediction market data from Polymarket using their public REST APIs. All endpoints are read-only and require zero authentication.

See references/api-endpoints.md for the full endpoint reference with curl examples.

When to Use

  • User asks about prediction markets, betting odds, or event probabilities
  • User wants to know "what are the odds of X happening?"
  • User asks about Polymarket specifically
  • User wants market prices, orderbook data, or price history
  • User asks to monitor or track prediction market movements

Key Concepts

  • Events contain one or more Markets (1:many relationship)
  • Markets are binary outcomes with Yes/No prices between 0.00 and 1.00
  • Prices ARE probabilities: price 0.65 means the market thinks 65% likely
  • outcomePrices field: JSON-encoded array like ["0.80", "0.20"]
  • clobTokenIds field: JSON-encoded array of two token IDs [Yes, No] for price/book queries
  • conditionId field: hex string used for price history queries
  • Volume is in USDC (US dollars)

Three Public APIs

  1. Gamma API at gamma-api.polymarket.com — Discovery, search, browsing
  2. CLOB API at clob.polymarket.com — Real-time prices, orderbooks, history
  3. Data API at data-api.polymarket.com — Trades, open interest

Typical Workflow

When a user asks about prediction market odds:

  1. Search using the Gamma API public-search endpoint with their query
  2. Parse the response — extract events and their nested markets
  3. Present market question, current prices as percentages, and volume
  4. Deep dive if asked — use clobTokenIds for orderbook, conditionId for history

Presenting Results

Format prices as percentages for readability:

  • outcomePrices ["0.652", "0.348"] becomes "Yes: 65.2%, No: 34.8%"
  • Always show the market question and probability
  • Include volume when available

Example: "Will X happen?" — 65.2% Yes ($1.2M volume)

Parsing Double-Encoded Fields

The Gamma API returns outcomePrices, outcomes, and clobTokenIds as JSON strings inside JSON responses (double-encoded). When processing with Python, parse them with json.loads(market['outcomePrices']) to get the actual array.

Rate Limits

Generous — unlikely to hit for normal usage:

  • Gamma: 4,000 requests per 10 seconds (general)
  • CLOB: 9,000 requests per 10 seconds (general)
  • Data: 1,000 requests per 10 seconds (general)

Limitations

  • This skill is read-only — it does not support placing trades
  • Trading requires wallet-based crypto authentication (EIP-712 signatures)
  • Some new markets may have empty price history
  • Geographic restrictions apply to trading but read-only data is globally accessible