Perception. Analysis.
Execution.
SimpleFunctions is an intelligence engine for prediction markets. It watches the world, reasons about what matters, and acts when the edge is right.
Perception
What is happening in the world right now?
Real-time data from prediction markets, traditional markets, and social signals — distilled into context your agent can reason over.
World State
9,706 prediction markets distilled into ~800 tokens. Calibrated by real money. One curl, no auth.
$ curl simplefunctions.dev/api/agent/world?focus=energy,geo for deeper coverage. /delta for ~30 tokens of changes only.
Query
LLM-enhanced search across Kalshi, Polymarket, X/Twitter, and traditional markets. Ask in plain English.
$ sf query "iran oil impact"Returns contracts, prices, sentiment, and a synthesized answer. No auth.
Monitor the Situation
Scrape any URL, analyze with any LLM, cross-reference with prediction markets, push to webhook.
$ POST /api/monitor-the-situationFirecrawl + OpenRouter + 9,706 markets. Enrich endpoint is free.
$ curl simplefunctions.dev/api/agent/world
Prediction Index Uncertainty: 67 · Geo Risk: 85
Geopolitics
Iran invasion 53¢ +5¢
Hormuz <3 ships/day 95¢
Economy
Recession 2026 35¢ +3¢
Fed cuts before Jul 42¢ -2¢
Traditional
WTI $127.40 +3.2% SPY 512.40
VIX 18.3 Gold $2,890
Analysis
Turn intuition into structure.
A thesis in plain English becomes a causal tree of testable claims, each mapped to real contracts. The system finds where the market disagrees with you — and why.
$ sf edges
WTI T150 YES +36¢ consensus_gap
Market 38¢ · Thesis 74¢ · Depth $2,400
Gas $4.50 YES +41¢ attention_gap
Market 14¢ · Thesis 55¢ · Depth $800
Recession YES +20¢ timing_gap
Market 35¢ · Thesis 55¢ · Depth $1,200
Track record: 67% of edges moved in thesis direction
Causal Tree
Natural language → directed graph of testable claims. Each node has a probability and maps to real contracts.
$ sf create "Oil above $100 through 2026"Weekly augmentation adds nodes from evaluation insights. Append-only.
Edge Discovery
Where your model disagrees with the market. Four types: consensus gap, attention gap, timing gap, risk premium.
$ sf edges --jsonEach edge sized against orderbook depth, scored for executable edge after spread.
What-If
Override node probabilities, see how edges change. Zero LLM cost — pure propagation.
$ sf whatif <id> --set "n1=0.1"Test scenarios before committing capital.
Track Record
Hit rate: % of edges that moved toward thesis. Feeds back into evaluation prompt so the model calibrates.
$ sf performanceSettlement sync tracks realized P&L from settled contracts.
Execution
From edge to fill.
Declare what you want. Set conditions. The runtime handles timing. The heartbeat handles lifecycle — requotes, cancellations, fill tracking.
Intents
Declarative execution: what to trade, how much, under what conditions. Price, confidence, and time triggers.
$ sf intent buy TICKER 200 --price 40 --trigger below:38REST: POST /api/intents. MCP: create_intent tool.
Runtime
Daemon that evaluates triggers every 30 seconds and places orders when conditions are met.
$ sf runtime startRecords fills, updates positions. sf runtime status to check.
Orderbook
Full bid/ask ladder, liquidity scoring, slippage estimation. Kalshi and Polymarket.
$ sf book KXWTIMAX-T150GET /api/public/market/TICKER?depth=true for 5-level depth.
$ sf intent buy KXWTIMAX-T150 200 --price 40 --trigger below:38
✓ Intent armed — waiting for trigger
$ sf runtime start
Runtime active
11:14 WTI T150: 39¢ — waiting
11:15 WTI T150: 37¢ — trigger!
11:15 ✓ Filled 200 YES @ 37¢
Cost: $74.00
Edge at entry: +37¢
Monitoring
Runs while you sleep.
The heartbeat engine runs every 15 minutes per thesis. News scanning, price tracking, kill condition checks, adversarial search, LLM evaluation — all autonomous.
Heartbeat
Every 15 min: 3 news queries (1 adversarial), price rescan, milestone detection, kill check, LLM eval.
$ sf context <id> --jsonFully autonomous. Your agent just reads the results.
Feed
Every evaluation timestamped with confidence change and summary. Your thesis's full history.
$ sf feed --hours 24REST: GET /api/feed?hours=24&limit=200
Delta
~50 bytes when nothing changed, full diff when something did. 100x cheaper than polling context.
$ sf delta <id>Pattern: poll /changes, fetch /context only on change.
Agent
Built for agents, usable by humans.
Every feature is accessible via MCP (44 tools), REST API, and CLI. The interactive agent gives you natural language on top.
Interactive Agent
Natural language session with 50 tools. Slash commands for common actions.
$ sf agent [id]/edges, /tree, /buy TICKER QTY, /eval, /switch
Skills
Reusable prompts: /morning briefing, /discipline review, /precheck argues against your trade.
$ sf agent → /morningCreate, fork, and publish skills to the community.
Telegram
Same tools, in Telegram. Auto-pushes confidence alerts. Runs locally, credentials stay on your machine.
$ sf telegram --token TOKEN/context, /positions, /edges, /balance, /eval
Start with one curl.
Every feature works via CLI, MCP, and REST. Public endpoints need no auth.
$ curl simplefunctions.dev/api/public/context