🧪 Skills

predict-intelligence

Predict intelligence skill for AI agents. Generates professional PDF reports with probability-ranked predictions, D3 visualizations, and Polymarket consensus...

v1.0.1
❤️ 0
⬇️ 17
👁 1
Share

Description


name: predict-intelligence description: >- Predict intelligence skill for AI agents. Generates professional PDF reports with probability-ranked predictions, D3 visualizations, and Polymarket consensus signals. Covers geopolitics, finance, tech, elections, and any predicting question. Use when user asks about event predictions, probability predicts, "when will X happen", "will X happen", or outcome analysis. keywords:

  • predict
  • prediction
  • intelligence report
  • PDF generation
  • Polymarket
  • prediction market
  • D3 visualization
  • geopolitics
  • financial predicting
  • market consensus

Predict Intelligence Skill

You generate a professional PDF intelligence brief. The user should grasp the key finding in 30 seconds. You own information efficiency.

Agent Requirements

Capability What you need
Web search Search the internet for news, analysis, data
URL fetch Open a URL and read its content
File read/write Read template, write HTML report
Shell execute Run Python 3.9+ scripts

First-Time Setup

pip install playwright
playwright install chromium

No other Python packages needed (Jinja2, requests, etc. are NOT required).


How It Works

Read template → Do research → Write HTML → Convert to PDF
  1. Read SKILL_DIR/templates/report_template.html — your structural reference.
  2. Research and analyze the topic (Steps 1–8 below).
  3. Generate a NEW .html file following the template's exact structure.
  4. Convert to PDF:
    python SKILL_DIR/scripts/to_pdf.py report.html predict_report.pdf
    

The template IS the spec. It contains:

  • All CSS (copy verbatim — never modify)
  • All D3 visualization code (copy verbatim — only change data variables)
  • Example content showing exact formatting for every section
  • Extensive comments explaining what each section does and how to fill it

Step 0 — Domain Detection

Signal Domain
Countries, leaders, military, diplomacy, sanctions Geopolitical
Stocks, crypto, Fed, rates, commodities Financial
Tech releases, AI models, products Technology
M&A, acquisitions, IPO, corporate Corporate
Other Custom

Classification bar is always: ANYGEN PREDICT INTELLIGENCE ASSESSMENT with #YY-MM-DD on the right (2-digit year, e.g. #26-03-12).

The report structure and design are IDENTICAL across all domains. Only research sources and visualization choices change. See Domain Adaptation at the bottom.

Step 1 — Parse Query

Extract:

  • event: what is being predicted
  • actors: who is involved
  • regions / sectors: geographic or industry scope
  • timeframe: any dates or deadlines
  • question type: temporal ("when"), binary ("will"), or multi_outcome ("what")

Step 2 — Research

Search the web at least 8 times, covering:

  1. Breaking news (last 48 hours)
  2. Diplomatic / military / industry developments
  3. Decision-makers' public statements
  4. Historical precedent
  5. Expert / think-tank / analyst reports
  6. Regional or sector-specific media
  7. Economic / financial context
  8. Low-probability high-impact wildcards

CRITICAL: For every fact, save the exact article URL.

For geopolitical / diplomacy / military / sanctions topics, ALSO collect:

  • 3–5 key locations (cities, capitals, bases, meeting venues) with lat/lon
  • ISO alpha-2 country codes of all parties involved
  • Any diplomatic channels, proxy lines, or trade routes between locations This data is required for the V2 Regional Map in Step 7. Collect it now.
fact: "Oman hosted senior US-Iran talks on March 5"
url:  "https://reuters.com/world/middle-east/oman-hosts-rare-us-iran-talks-2026-03-06/"

Homepage URLs are forbidden. Every URL must point to a specific article.

Step 3 — Formulate Predictions

Create outcomes sorted by probability descending. All must sum to ~100%.

The verdict has five parts:

  • verdict_number: top probability as text (e.g. "34%") — displayed at 52px, the BIGGEST element
  • verdict_outcome: 3–6 word label
  • verdict_detail: 1 sentence — "Most likely path: ..."
  • verdict_bg (Context): 2–3 sentences of BACKGROUND BRIEFING — what led to the current situation, key prior events, the "前情提要" (previously on...)
  • verdict_context: 2–3 sentences of assessment reasoning with key evidence

Calibration:

Confidence Range
Near-certain 90–99%
Very likely 75–89%
Likely 60–74%
Toss-up 40–59%
Unlikely 25–39%
Very unlikely 10–24%
Remote 1–9%

Step 4 — Key Drivers (5 items, causal logic required)

Each driver MUST have:

  • Title: 3–5 words
  • Direction: positive (↑ increases likelihood) or negative (↓ decreases)
  • Causal logic: 1 sentence: fact → mechanism → directional impact
  • Source URL: exact article URL

❌ Bad: "Sanctions pressure — Iran inflation at 45%" ✅ Good: "Sanctions pressure ↑ — 45% inflation pushes Tehran toward concessions for relief"

The bad one states facts. The good one explains the causal chain.

Step 5 — Watch List (5 items, forward-looking only)

Each item is a FUTURE event or trigger that could shift the predict. No past events. No source URLs (these haven't happened yet).

Each item MUST have:

  • Date or window: specific date or range (e.g. "Apr 3", "Late March")
  • Trigger: 3–6 words describing what might happen
  • Conditional impact: 1 sentence — "If [X] → [how probability shifts]"

✅ Good: "Apr 3 — UNSC sanctions vote — If passed → ceasefire probability ↑10-15%" ✅ Good: "Late Mar — FOMC meeting — Dovish tone → ↑ rate cut odds; hawkish → ↓" ❌ Bad: "Mar 5 — Secret Muscat meeting happened" (PAST event — belongs in Key Drivers)

The distinction:

  • Key Drivers = WHY the current probability is what it is (past + present evidence, with source URLs)
  • Watch List = WHAT could change the probability next (future triggers, no sources needed)

Step 6 — Polymarket Data

Run:

python SKILL_DIR/scripts/fetch_polymarket.py --query "<keywords>" --limit 10

From results:

  1. Add your probability estimate for each option
  2. Calculate delta = your_estimate − market_probability
  3. Select 3 markets with highest absolute delta
  4. Sort by delta descending (most undervalued first)

If no script available, search "polymarket [topic]" on the web. If no markets exist, skip the Polymarket section entirely.

Step 7 — Visualization (REQUIRED)

⚠ MANDATORY MAP RULE — READ THIS FIRST

If the topic involves countries, regions, borders, military, diplomacy, or sanctions → you MUST include V2 (Regional Map). Non-negotiable.

Do NOT skip V2 because:

  • "I only want one chart" → V2 IS that one chart. Add a second if needed.
  • "It needs extra dependencies" → TopoJSON is already in the template <head>. Just keep the <script> tag. Do NOT remove it.
  • "I don't have good marker data" → You researched 8+ sources in Step 2. You have city names, country names, and actor locations. Use them. Minimum: 3 markers from your research + highlight the relevant countries.

Only these domains are exempt from V2: financial, technology, corporate, budget/aid (unless they have a geographic dimension).

Choosing visualizations

Pick 1 or 2 types total. Minimum 1, maximum 2.

Domain Required Optional 2nd
War / conflict V2 (map) V3 (entity)
Sanctions / trade V2 (map) V5 (comparison) or V8 (sankey)
Military balance V2 (map) V5 (comparison bars)
Diplomacy V2 (map) V9 (gantt phases)
Election V7 (choropleth) V1 (polling trend)
Economic / monetary V1 (trend) V10 (key rate) or V5 (comparison)
Budget / aid flow V8 (sankey) V5 (comparison)
Multi-phase process V9 (gantt) V4 (timeline)

V2 data — how to fill it

From your Step 2 research, extract:

  • markers[]: 3–5 locations mentioned in your sources (capitals, cities, military bases, meeting venues). Use real lat/lon coordinates.
  • connections[]: diplomatic channels, proxy influence lines, trade routes.
  • hlCodes[]: ISO alpha-2 codes of countries involved (e.g. ["IR","IQ","OM"]).

This data comes from your research. You already have it. Do not skip.

Available types

9 pre-built types (there is NO V6). DO NOT write custom D3/SVG.

Type ID When to use
Regional Map V2 Geographic theater with markers
Metric Trend V1 Data over time — polls, rates, escalation
Entity Graph V3 Actor networks — alliances, proxies
Event Timeline V4 Complex event sequences (sparingly)
Comparison Bars V5 Ranked values — spending, strength, polls
Choropleth V7 Election maps / regional statistics
Sankey V8 Flow diagrams — funding, resources, influence
Gantt V9 Phase / timeline bars for overlapping activities
Big Number V10 1–3 key metrics as large display (see rules below)

V10 Big Number — VERY RARE, strict rules:

  • Use ONLY when a specific number is truly critical to the analytical argument
  • The number must NOT already appear in the Verdict
  • Maximum 3 number cards
  • Must include delta/change indicator (↑ or ↓ with amount)
  • ✅ "US unemployment 4.1% (↑0.3pp)" when discussing Fed rate decisions
  • ✅ "$12B reserves (↓40% YoY)" when discussing Iran sanctions threshold
  • ❌ Generic statistics, redundant percentages, or decorative numbers

Placement and rules

Section order: Visualization comes AFTER Predict → Key Drivers → Watch List, and BEFORE Polymarket.

For each type you use:

  1. Keep its <section> in the HTML body (after Watch List section)
  2. Keep its matching <script> block at the bottom
  3. Only change the data variables at the top of the script (AGENT: markers)
  4. Delete ALL unused types — both HTML <section> AND <script>
  5. <h2> title MUST describe what the chart shows

Label limits (auto-truncated, keep short anyway):

Type Limits
V2 marker labels ≤20
V1 y-label ≤20, series ≤20, max 12 x-points, max 3 lines
V3 node ≤16, edge ≤14, max 8 nodes
V4 labels ≤45, max 8 items
V5 bar labels ≤18, max 8 bars
V7 category labels ≤20
V8 node names ≤18, max 12 nodes, max 15 links
V9 task labels ≤22, max 8 tasks
V10 max 3 cards

Step 8 — Fact Check

This report may inform six-figure financial decisions.

  • Every source URL is a real article page you actually visited
  • Every Polymarket URL is a real event page on polymarket.com
  • All stated facts match their sources
  • Probabilities sum to ~100%
  • Remove any claim without a verified source URL

Step 9 — Generate HTML

Open SKILL_DIR/templates/report_template.html and read it. Then generate a new HTML file following the same structure:

  1. Copy the entire <style> block verbatim — never modify CSS.
  2. Copy D3 <script> blocks for the 1–2 viz types you chose. Only replace the data variables at the top of each script (clearly marked with AGENT: Replace comments).
  3. CDN dependencies:
    • D3: always include (needed for V1–V9)
    • TopoJSON: only for V2 (map), V7 (choropleth)
    • d3-sankey: only for V8 (sankey)
    • V10 (Big Number) needs NO scripts — pure HTML/CSS
  4. Fill in the HTML content sections following the template's structure. Section order: [A] → [B] → [E] → [F] → [G] → Visualization → [H] → [I]
  5. Delete ALL unused viz types — both <section> and matching <script>.
    • No Polymarket → delete section [H]

Save as report.html in the working directory.

Step 10 — Convert to PDF

python SKILL_DIR/scripts/to_pdf.py report.html predict_report.pdf

Step 11 — Deliver

Tell the user the PDF is ready. State the verdict in one sentence: "Report generated. 34% chance of ceasefire before April 15 — most likely via Omani-mediated direct talks."


Template Quick Reference

The template contains example content for a "US-Iran Ceasefire" report. Here's the section-by-section mapping:

Order Section What to fill
1 Classification bar [A] ANYGEN PREDICT INTELLIGENCE ASSESSMENT + #YY-MM-DD
2 Header + verdict [B] Title, date, verdict number/outcome/detail/context-bg/context
3 Predict [E] Outcome divs with probability bars
4 Key Drivers [F] 5 driver items with ↑/↓, causal logic, source URL
5 Watch List [G] 5 future triggers with date/window, trigger title, conditional impact
6 Visualization REQUIRED — pick 1–2 of 9 types (V1–V5, V7–V10). See domain rules for mandatory types.
7 Polymarket [H] Optional: 3 market blocks with option tables
8 Footer [I] Source list + disclaimer

Domain Adaptation

Research Sources by Domain

Domain Primary sources
Geopolitical Reuters, AP, Al Jazeera, CSIS, IISS, Brookings, ICG
Financial Bloomberg, FT, WSJ, Fed minutes, bank research, on-chain analytics
Technology TechCrunch, The Verge, Ars Technica, company blogs, SEC filings
Corporate SEC filings, press releases, industry analysts, FT, Bloomberg

Visualization by Domain (pick 1–2, min 1 max 2)

⚠ V2 (Regional Map) is MANDATORY for Geopolitical, Diplomacy, Military, and Sanctions topics. Do not substitute Gantt, Timeline, or any other type in place of V2. V2 must always be included; add a second chart if needed.

Domain Required viz Optional 2nd Rule
Geopolitical V2 (map) V3 (entity) V2 MANDATORY — never omit
Diplomacy V2 (map) V9 (gantt — phases) V2 MANDATORY — never omit
Military V2 (map) V5 (comparison) V2 MANDATORY — never omit
Sanctions V2 (map) V5 or V8 (sankey) V2 MANDATORY — never omit
Financial V1 (trend) V10 (key metric) or V5
Technology V1 (trend) V3 (entity — ecosystem)
Corporate V3 (entity — M&A) V8 (sankey — deal flow)
Election V7 (choropleth) V1 (polling trend) V7 MANDATORY
Budget / aid V8 (sankey — flow) V5 (comparison)

What NEVER Changes

  1. White monochrome CIA-brief aesthetic with ANYGEN classification bars
  2. 52px verdict number — the biggest element on the page
  3. Verdict block: number → outcome → detail → context background → assessment
  4. Probability-ranked outcomes with bars
  5. Key drivers with ↑/↓ direction and causal logic
  6. Watch list with forward-looking triggers and conditional impacts
  7. Polymarket delta comparison with UNDERVALUED highlight (when markets exist)
  8. Every URL must be a real article, never a homepage
  9. 30-second scannability — no filler, no academic prose

Writing Rules

Element Rule
Verdict number 52px. THE biggest element.
Verdict outcome 3–6 words
Verdict context 2–3 sentences of reasoning
Driver title 3–5 words
Driver detail 1 sentence: fact → mechanism → direction
Watch trigger 3–6 words
Watch impact 1 sentence: "If [X] → [shift]"
URLs Real article URLs. Never homepages.
Polymarket 3 markets, delta-sorted, highlight undervalued
General If a word doesn't add information, cut it

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs