decido
Python library for typed decisions with Jev or your own provider, adding validated distributions, batching, budgets, ranking and records.
Overview
Decido lets you ask typed questions about evidence, keep every probability, and use the results in ordinary Python. It wraps a small provider contract, starting with TypeSafe's Jev, and adds validated distributions, batching within provider limits, request budgets, ranking and exportable decision records. Optional extras include Playwright web crawling and local MCP tools, plus a CLI that takes JSON input.
The README is careful about semantics: keep missing evidence separate from neutral evidence (an unknown option), model probabilities are not automatically calibrated, and independent questions do not form a joint distribution. A bundled lexical provider lets you exercise the API offline, with scores that are heuristics rather than semantic judgments. The CLI accepts JSON files or stdin for its decide and rank commands.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which team should handle this? Use unknown if the evidence is unclear. | billing · technical · unknown |
How it works
- Start a session with a provider (TypeSafe or custom)
- Call decide with state and typed questions
- Read typed answers and full distributions
- Rank, budget and export decision records
Strengths
- Provider-agnostic contract
- Request budgets and batching
- Offline lexical provider for testing
- Explicit guidance on unknown vs neutral evidence
Caveats
- Probabilities are not automatically calibrated
- Jev requests incur charges on your account
Getting started
pip install "decido[typesafe]", export TYPESAFE_API_KEY, or try offline with pip install decido and decido rank.At a glance
- Type
- Library
- Status
- beta
- Language
- Python
- Runtime
- library, CLI, MCP tools
- Has code
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
Probabilistic decisions for Python. Use Jev or bring your own provider; crawl with Playwright.
hellogumbo/awesome-jev
Frequently asked questions
Can I use it without Jev?
Yes, supply your own provider or use the offline lexical provider for testing.
Are probabilities calibrated?
The README notes they are not automatically calibrated.
What extras are included?
Ranking, decision records, Playwright crawling and local MCP tools.
Related projects
pip-installable Jev kit: a CLI for verify, screen, classify, extract, route and rerank, plus an MCP server for the primitives.
MCP serverbetaPythonRubyLLM provider gem for TypeSafe Jev: block-style typed evaluations with noul, choice and score, plus RubyLLM.rerank support.
ProjectbetaRuby248 small installable TypeScript recipes that each make one typed Jev decision: route, rerank, gate, grade, compare or label.
LibraryproductionTypeScriptTypeScript library of decision contracts, confidence thresholds, fallbacks, human review and evaluation patterns on top of the TypeSafe SDK.
LibrarybetaTypeScriptJava SDK for TypeSafe's System One API plus Spring AI integrations using Jev as judge, guardrail, RAG filter/reranker and tool index.
LibrarybetaJavaAgent skill where Ego Lite drives the browser and Jev resolves semantic choices: targets, filtering, ranking and evidence checks.
ProjectbetaMarkdown + TypeScript