Library by layer
Seven layers, 109 bot specifications. Each module is a bot or service that votes on, shapes, or audits an OrderIntent. 109 docs-complete · 9 demo-wired · 0 production-live
Discovery
6 modules · 1 live · 0 beta · 5 plannedFind markets worth considering. Discovery runs before everything else — if MarketScanner says a market is unqualified, no Strategy ever sees it. That is the contract. OpportunityQueue is the cockpit feed: a ranked list of best-next-trades per strategy type, the product of MarketQualityRanker scores and per-strategy fit weights.
Risk
19 modules · 7 live · 1 beta · 11 plannedThe authority layer. Sixteen guardrails vote on every OrderIntent before it leaves the process — account limits, kill switches, oracle risk, liquidity depth, rate caps, inventory unwinds, blacklists, jurisdiction gates, and guards covering user suitability, capital allocation, correlation shocks, model drift, tail-loss, fee economics, settlement exposure, and override discipline. Each runs in its own goroutine and short-circuits on REJECT — there is no retry-with-different-params loophole.
Execution
15 modules · 4 live · 1 beta · 10 plannedConvert approved intent into executable orders. Execution never picks direction or size — those come from Strategy. It decides order type (LIMIT, IOC, FOK, POST_ONLY), timing, and microstructure behaviour (aggressive vs passive, replenish vs once-and-done). Most production bugs live here, because this is where strategy intent collides with real-world latency, fills, and re-quotes.
Strategy
24 modules · 4 live · 6 beta · 14 plannedThe only layer that takes directional or spread risk — every other layer supports it. Each strategy declares its risk envelope to Layer 1 at startup; a mid-run parameter change requires re-declaration and re-validation. Strategies are configuration-only by contract: the user picks a template, sets parameters, the strategy runs.
Intelligence
17 modules · 3 live · 3 beta · 11 plannedRead-only signal services. These bots never submit orders — they emit typed signals onto the internal bus that Strategy subscribes to. Every signal carries a freshness timestamp and a provenance string (feed, version, sample window) so a downstream strategy can decide whether to trust it. Stale signals must be discarded, not patched.
Security
9 modules · 0 live · 0 beta · 9 plannedEight modules between non-custodial as a marketing word and as a real property. Non-custodial means signing happens in the user’s wallet — but every signing surface is a failure surface. These bots make that real: contract allow-listing, session scoping, signing-authority enforcement, revocation discipline, allow-lists and deny-lists, and explicit user warnings when something looks wrong.
Governance
19 modules · 5 live · 2 beta · 12 plannedPost-trade, runtime, and accountability. These bots don’t pick direction or police strategies — they sit across the top of everything else, continuously reconciling our view of Polymarket against its own state, recording every parameter change, and producing the artefacts the team and users need to trust the system.