Shadow mode, framework adapters, limits, a decision server and MCP tools.
0.3.0 - 2026-09-25
Shadow mode, framework adapters, limits, a decision server and MCP tools.
Added
- Shadow mode (
thinkless.shadow): run a candidate engine next to existing
decision code without changing what it returns, log both answers, and
report agreement with a 95% interval, the share settled without an LLM,
cost and latency on both sides, thresholds fitted on production traffic,
and a verdict per question (thinkless shadow report). Disagreements
export as labeling rows (thinkless shadow export). The same class audits
a live engine against an LLM. - Framework adapters (
thinkless.integrations): a LangGraph router, decision
node and async decision node; OpenAI Agents SDK input guardrails, tool input
guardrails androute_agent; and framework-neutralRouter,routeand
gate, tested with LangChain tools and Pydantic AI. Extraslanggraphand
openai-agents. - Engine deadlines (
deadline_mson the engine and per call), spend limits
(SpendLimit, lifetime or rolling window) and per-run caps
(engine.run(..., max_cost_usd=...)). Skipped providers are recorded with
reasondeadlineorspend_limit. - A decision server (
thinkless serve,thinkless.server.app.create_app)
with/v1/decideand a System One compatible/v1/systemone, so another
engine'sSystemOneprovider, or TypeSafe's SDK, can use it. Extra
server. - MCP tools (
thinkless mcp,thinkless.server.mcp.create_mcp_server): one
decide_<question>tool per registered question. Extramcp. thinkless trace exportturns traced decisions into labeling rows, and
thinkless trace driftcompares two periods and exits with 1 when a
question drifted.question_from_specrebuilds a question from its spec.- Docs: an integrations section, a migration guide, shadow mode, serving,
a pilot playbook and a FAQ, published to GitHub Pages by a new workflow.