thinkthen
Command-line tool and SDK that answers typed questions about text with true/false, a label or a number, for scripts and evals.
Overview
ThinkThen is a command-line program (with SDK support) that answers typed questions about text and, in the 0.2 development line, JPEG and PNG images. You pipe in a message and ask something like "Does the customer ask for money back?"; it prints true, false, a label or a number, and the exit code (0 yes, 1 no, 3 not sure) lets a shell if branch directly on it.
It is aimed at people who want a decision step inside shell scripts, labeling jobs or evaluation harnesses without writing a parser. The README lists ten functions, including decide, choose, tag, score, filter, rank and find. A live run needs a backend: a TypeSafe key for the hosted Jev, or another server such as a local Ollama. A replay mode answers from recorded results with no key or network, which is meant for tests and first runs.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Does the customer ask for money back? | true · false · not sure |
| Choice | Which option fits best? (choose) | — |
| Score | Where does this text sit on a scale? (score) | — |
How it works
- Pipe text (or an image in 0.2) into the thinkthen command with a question.
- The configured backend (TypeSafe Jev or a local server) returns a typed answer.
- ThinkThen prints true/false, a label or a number and sets the exit code.
- A shell if or program branches on the exit code; 3 (not sure) can route to a fallback.
Strengths
- Exit codes make decisions usable directly in shell scripts.
- A failed call never looks like an answer, per the README.
- Recorded answers can be replayed offline for tests without a key.
- Backend is swappable between hosted Jev and a local server such as Ollama.
Caveats
- The public release is 0.1.2; the 0.2 features described need a development build.
- Windows support and signed distribution are still in progress.
- Live use needs a hosted key or a self-run backend.
Getting started
curl -fsSL https://thinkthen.dev/install.sh | sh (or brew install botassembly/thinkthen/thinkthen, or cargo install thinkthen)At a glance
- Type
- Project
- Status
- beta
- Language
- Rust
- Runtime
- CLI
- Has code
- yes
Use cases and integrations
How curated lists describe it
ThinkThen: code that knows what you mean.
wh000wh000/awesome-jev-live
Frequently asked questions
What does ThinkThen decide?
Any typed question you pose about a piece of text: yes/no/not sure, one best option, a set of tags, a score, a ranking or a filter.
Does it need a TypeSafe key?
A live hosted run does; you can instead point it at another server such as Ollama, or replay recorded answers with no key.
How is it different from prompting an LLM in a script?
It returns typed values and exit codes rather than prose, so there is nothing to parse, and errors are kept distinct from answers.
Related projects
DeepSeek Harness plugin adding a jev_evaluate tool for mixed Noul, Choice and Score evaluation of text or JSON.
ProjectbetaTypeScriptMCP server exposing a judge tool for typed noul, choice and score questions over JSON state, backed by Jev.
MCP serverbetaTypeScriptStandalone Node studio for building and testing workflows of typed Jev judgments with code-owned decisions, plus games and simulations.
ProjectbetaJavaScriptSelf-hosted Yao Agents platform for agents, workspaces and task boards across devices, which announces Jev support.
ProjectbetaBuilds auditable decision trees and runnable decision SOPs from data and a natural-language goal via LLM features and information gain.
ProjectresearchPythonSimon Willison's LLM plugin that adds Jev as a model for yes/no, choice and score questions from the command line.
PluginproductionPython