Jev and "System One" models

TypeSafe's Jev returns typed, probabilistic decisions instead of text. A visual walkthrough: why it exists, how it differs from an LLM, what people are building, and what's still unproven.

6 min readlearning

TL;DR: TypeSafe AI launched Jev on September 15, 2026. It is not a chatbot and not a coding model — it never writes text. You hand it some state plus a list of typed questions, and it returns one typed answer per question with a probability attached. The bet: language generation is the wrong interface between a model and the software that has to act on its output.

1. Start with what code can't do

Ordinary code branches on things it can compute. It falls apart the moment the condition is a judgment.

if (order.total > 100) computable ✓
if (user.createdAt < cutoff) computable ✓
if (message.isAngry) …who decides? ✗
if (email.isAbout("billing")) …who decides? ✗

So we hand the judgment to an LLM. And that's where things get messy.

2. Six things that go wrong

01It talks backYour code needs "billing". You get a paragraph. So you beg for JSON, then parse, validate, retry.
02It goes off-menuYou gave five categories. It invents a sixth, or misspells one. Your router misfires.
03It's slowOne token at a time. Even a yes/no waits for the model to finish "typing."
04It's expensivePaying a genius-level writer, by the word, to press one of five buttons.
05Fuzzy confidence"Fairly confident" is not a number you can put a threshold on.
06Trained to pleaseTypeSafe's claim: RLHF models assist humans rather than decide reliably on their own.
So what's the root cause?

We're using a text-writing machine for what is really a multiple-choice question. The interface is language — and language was designed for humans, not for if statements.

It's hiring a novelist to fill in a bubble sheet.

3. So how would you fix it?

Follow the questions down, one at a time:

What does software actually need?
Data in, an answer it can use directly out. Nothing to parse.

If the answers come from a fixed menu, do we need words at all?
No. Just score every option on the menu.

If nothing is being written, must it go token by token?
No. Answer every question in parallel, in a single pass.

And can it still go off-menu?
No. It can only return one of your options — so invented categories and type errors become structurally impossible.

LLM as decision-maker the long way round

state + prompt
↓
generate text, token by token
↓
parse the string
↓
validate · retry · pray
↓
a usable value (probably)

Jev the short way

state + typed questions
↓
one parallel pass
↓
typed answers + probabilities
↓
— no parse step —
↓
— no retry step —

4. Watch the difference

The same decision, two ways. One writes it out; one just picks.

LLM — writing the answer, token by token
JEV — all questions answered in one pass

5. What Jev actually is

TypeSafe's framing: unstructured state in, typed probabilistic decisions out — a frontier-intelligence function call. One writer put it better: a smart if statement. Three answer shapes:

the shape of a call (illustrative)
const answers = await jev({
  state: supportMessage,
  questions: {
    topic:      choice(["billing", "bug", "refund", "other"]),
    anger:      score(5),
    needsHuman: boolean(),
  },
});
// answers.topic -> "billing", p = 0.93
// no parsing, no "please reply in JSON"

Your code acts when confidence is high and escalates when it isn't. Try it on a few messages:

a support inbox, decided

Illustrative only — these outputs are hardcoded to show the shape of a response, not a live API call.

6. Where the name comes from

Kahneman's Thinking, Fast and Slow. System 1 is fast instinct — catching a ball. System 2 is slow deliberation — solving a puzzle. LLMs with chain-of-thought and multi-second reasoning traces sit firmly in System 2 territory.

TypeSafe's argument is that the automation gap exists because everyone built System 2 models, while most decisions inside software want a System 1 answer.

7. How it differs from an LLM

Typical LLMJev
Outputfree-form texttyped answers from your menu
Generationone token at a timeall questions in parallel, one pass
Confidencevague, in wordscalibrated probabilities
Chat or write code?yesno, by design
Best atopen-ended thinking, writingfast repeated decisions, known answers

Against older AI — a sentiment classifier trained for one fixed task — the difference is flexibility: you define new questions at call time instead of training a new model per question. The training method is RLCD (Reinforcement Learning for Calibrated Decisions), aimed at making those probabilities honest.

8. The numbers

40–200×faster than frontier LLMs
~150 mstypical call
$0.042per M input tokens
(output free)
67.8%avg. agreement with reference answers

All of the above is vendor-reported. The 67.8% comes from TypeSafe's own evaluation across four workflows — security incident response, agent-trace observability, invoice processing, customer service — scored against GPT-6 Astra and Fable. Read as: mid-tier frontier accuracy, at one to two orders of magnitude less cost and latency.

9. What people built in week one

A model routerJev decides which model serves a request before it's forwarded. Easy question → cheap model; hard question → big model.
A fast browser agentBrowser Use wired Jev into a tiny open-source agent: a flight search in ~7 seconds for about $0.0039. DOM as state, a fresh action space each step, a small LLM only as fallback for typing.
An agent safety monitorJev checks every agent action before it runs. The tester reported catching most attacks with almost no false blocks, at far lower latency.
Routine sorting and scoringEmail triage, urgency scoring, output verification, trading decisions.
ClonesOne builder claims a small MLP on top of Qwen 4B already reproduces Jev-like behaviour. Others are attempting local Jev-style models.
PlumbingAvailable on the Vercel AI Gateway, with an AI SDK provider and a community Elixir SDK.

The pattern worth noticing: in the router, the browser agent and the safety monitor, Jev doesn't replace the LLM. It wraps around it as a reflex layer — deciding who answers, what to click, whether an action is safe — and hands off to a big model only when needed.

A model that can't write paragraphs turns out to be useful for the small decisions between the paragraphs.

10. Caveats

before you believe any of it
  • "Cannot hallucinate" is narrower than it sounds. It can't emit an invalid answer or a type error. It can still pick the wrong option off the menu. Valid ≠ correct.
  • All benchmarks are TypeSafe's own. No large-scale independent reproduction has surfaced yet.
  • Measure cost per workflow, fallback models and human review included — not per cheap API call.
  • It is days old. Everything here is demos and launch-week enthusiasm, not production track record.

The idea underneath

Not every intelligent part of a system needs to talk. Some tasks need a paragraph; others need a bounded decision, usable uncertainty, and an explicit account of what happens next.

Whether RLCD delivers on that is unproven. But the question is a good one: how much more dependable could AI get if we stopped requiring every intelligent component to speak?


Sources: TypeSafe AI's launch post, DataCamp, flaviocopes.com, Anthony Maio, and a community list of Jev projects. Written up from a Claude session, Sep 18, 2026.

✦