This folder contains example scripts that integrate third-party tools and SDKs with the Metaculus forecasting bot template.
Integration dependencies are in an optional poetry group. Install them with:
poetry install --with integrationsmain_lightningrod_eval.py - Uses the LightningRod SDK to generate forecasting questions from news.
The Lightning Rod SDK is a Python library for generating custom forecasting datasets. It transforms real-world data sources into labeled forecasting samples automatically, using built-in integrations like Google News, or your own documents.
The output is an exportable dataset you can use to benchmark LLMs, or train on to improve calibration and sharpen reasoning. The SDK covers the full pipeline: ingesting sources, generating questions, labeling questions, and scoring against real outcomes.
Data generation pipelines are fully customizable: including date ranges, question format (e.g. binary, multiple choice), and custom instructions to shape the output.
Create an account at lightningrod.ai and explore the SDK examples to get started. Check the LightningRod site or reach out to them for any promotions available to the Metaculus community.
- Get a
LIGHTNINGROD_API_KEYat dashboard.lightningrod.ai - Add it to your
.envfile - Run:
poetry run python integrations/main_lightningrod_eval.pymetaculus-bot-review - Scores your bot's resolved forecasts and displays its reasoning on specific questions.
It reads the reports your bot published as Metaculus comments, so there is nothing to set up beyond the METACULUS_TOKEN you already have. No LLM spend is incurred.
poetry install --with integrations
poetry run bot-review review --tournament <slug-or-id> --output review.json --summary review.md
poetry run bot-review review --resolved-since 30 # anything that resolved recentlyreview.md gives your rank, how many questions were scored, and the best and worst questions on whichever score the leaderboard uses. review.json adds per-question detail, including every forecaster's prediction on every run.
Reasoning text is not in the table. Pull it a piece at a time:
poetry run bot-review show <POST_ID> --section research
poetry run bot-review show <POST_ID> --forecaster R1:F3Two extras ship with this template:
- .github/workflows/review_bot.yaml runs the review weekly and attaches
review.jsonandreview.mdto the run. It needs onlyMETACULUS_TOKEN. It is off by default: set the repository variableREVIEW_BOT_ENABLEDtotrueto turn it on (Settings → Secrets and variables → Actions → Variables). - .claude/skills/review-bot/SKILL.md drives the whole loop with Claude Code and writes up what it finds. Ask it to review how the bot did on a tournament.
Have a tool or SDK that could help with forecasting? Add it here and open a PR!