Preface
What Jev is
Jev is AI’s model: it does not generate text; it only makes structured judgments.
A chat model is an autoregressive text generator: it writes natural language one at a time. In theory that includes JSON.
Getting structured JSON from an LLM still means emitting text, then constraining it with prompts and decoding strategies.
Jev skips text generation. It does not need elaborate prompts or decoding constraints. Formatted output is a first-class part of the design.
Input
state can be all the context as text, or a ticket that grows in a conversation. If the problem is Markov, sometimes the current state is enough (which is why we use Jev to drive a browser or play a simple board game).
questions: Jev can handle several questions on one program state. As the number of questions grows, latency does not show a drop — that is its parallel decoding.
Output
Jev returns JSON with a fixed set of fields, including probabilities and scores.
A request and response that could happen in real life
Wednesday, 9:30 p.m. You get home, open the fridge: two eggs, half a cabbage, leftover rice. It is raining. What do you do?
If you cook, fried rice is clearly more favorable than delivery or going out.
Now we ask Jev to decide.
First, define the background.
state = (
"It is 9:30 on Wednesday night. I just got home. The fridge has two eggs, half a cabbage, and a bowl of leftover rice."
"It is raining."
)state gives Jev the background and prior knowledge it needs. A detailed, clear state is key to a high-confidence decision.
With that background, ask Jev the question.
{
"dinner": {
"type": "choice",
"instructions": "How does dinner most likely get solved tonight?",
"criteria": {
"Cook": "Cook with what is already at home",
"Order delivery": "Order on the phone and wait for it",
"Go out": "Walk to a nearby place",
"Skip it": "Skip this meal"
}
}
}dinner is a short name for this question — settling dinner. You can write eat, hungry, or similar.
type: choice is one kind of question. Think of it as a multiple-choice item on an exam.
instructions define the question. criteria provide the closed set of options.
You build criteria by giving each candidate a text description and a unique key.
With state and questions ready, a request to the official endpoint looks like this:
curl https://api.typesafe.ai/v1/systemone \
-H "Authorization: Bearer sk-••••••••" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"model": "jev-latest",
"state": "It is 9:30 on Wednesday night. I just got home. The fridge has two eggs, half a cabbage, and a bowl of leftover rice. It is raining.",
"questions": {
"dinner": {
"type": "choice",
"instructions": "How does dinner most likely get solved tonight?",
"criteria": {
"Cook": "Cook with what is already at home",
"Order delivery": "Order on the phone and wait for it",
"Go out": "Walk to a nearby place",
"Skip it": "Skip this meal"
}
}
}
}'Response:
{
"model": "jev-1.13.0",
"answers": {
"dinner": {
"type": "choice",
"choice": "Cook",
"confidence": 0.76,
"probabilities": {
"Cook": 0.82,
"Order delivery": 0.18,
"Go out": 0.0,
"Skip it": 0.0
}
}
},
"usage": { "input_tokens": 430, "output_tokens": 56 }
}Try it!
Jev prices output as free, but still counts output_tokens. That suggests a decoding process is still there.
Readings

Diogo Almeida
TypeSafe founder
We've been optimizing for humans, and we're superhuman at pleasing humans. If AI is going to change how work gets done, people can't be the only consumers of intelligence.

James Hardiman
General Partner, DCVC; led the seed
TypeSafe is approaching one of the biggest remaining challenges in AI: turning increasingly capable models into technology that developers can reliably build into products at scale.

Flavio Copes
Independent technical writer
The simplest way to describe it: Jev is a smart if statement.

Kingy AI
Product review
Worth serious attention for teams making thousands of small semantic decisions, not for anyone looking for a better ChatGPT.

LangChain
Daniel Shea / Seán Roche
The unlock is not just cheaper evals, but a tighter feedback loop for building reliable agents.

MindStudio
Edited by Luis Chavez-Mattos
Always include an other or unknown option with a path to human review, and don’t treat a numerical confidence score as a real-world accuracy rate.

dax
OpenCode / @thdxr
Preview of how fast browser use can be powered by TypeSafe's Jev and OpenCode's browser-use CLI.

Browser Use
jev-ultrafast
With Jev choosing actions, Zürich→London on Google Flights finished in about 7.1s, ~$0.0039 in model cost.