Jev doesn't write. That's the feature.

Published 6 min read

For a few days every other post was some version of "Jev is insane." I read the docs, the TechCrunch piece, and the Hacker News thread, because the landing pages do not agree with each other.

Here is the part that still holds.

Jev is TypeSafe's System One model. It is not a chatbot. You hand it a state (plain text, a JSON object, or an array) and one or more questions whose answers you already listed. It returns a typed decision and a probability. Your code decides whether to do anything with that.

There are three question types. Choice picks one option from your list and shows the probability of each. Score places the input on levels you ordered, like calm up through ready to leave. Noul is a yes or no: a probability from 0 to 1 that one specific statement is true. Some writeups call that last one a boolean. Same thing.

You can ask several of those about one state in a single call. They are meant to stay independent. "Which team owns this?" does not answer "how angry is the customer?" and you should not let one of them stand in for the other.

Why they call it System One

The name is Daniel Kahneman's split. Fast intuition on one side, slow deliberate reasoning on the other. TypeSafe is pointing at the fast side.

For a developer the useful bit is smaller than the psychology. The question has a closed set of answers, and two reviewers could agree on what a good one looks like. "Handle this incident" is not that question. "Which of these teams should look first?" is.

Diogo Almeida, who worked on ChatGPT and the RLHF paper at OpenAI, left and started TypeSafe around this bet: chat is the wrong shape for software. A program wants a branch, not a paragraph. The weights are not public. The training recipe, which they call reinforcement learning for calibrated decisions, is still mostly a name. When the homepage says the model cannot hallucinate, read that as "it cannot emit a label you did not allow."

The numbers, with the fine print

The giant headlines, on the order of 200 times faster and 400 times cheaper, come from TypeSafe's own workflow evals, on jobs shaped like classification rather than writing. MarkTechPost's writeup of that launch keeps the footnotes the homepage skips. TypeSafe wrote the workflows. The reference answer is an average of two frontier models. The company says those gains sit at the high end of real use, and that it cannot prove the price is unsubsidized.

Reports from outside that spreadsheet are smaller, and more useful for planning. A Vercel engineer, swapping Luna for Jev on a command-safety classifier, saw something like 5 to 18 times faster. An email-sorting test found Gemini a little more accurate, and 10 to 20 times more expensive. Faster and cheaper on a bounded question, at a quality you still measure yourself.

The price in that MarkTechPost breakdown is $42 per billion input tokens, which is $0.042 per million. Output tokens are free. A few community pages say $0.42 per million instead. Trust the invoice. The latency people keep quoting from the docs is roughly 70 to 500 milliseconds. I have not run this on my own tickets, so none of the above is a personal benchmark.

A label that type-checks can still be the wrong team

"No hallucinations" means Jev will not return a team name you left off the list. It can still send the payments ticket to storefront. If the report never says whether the request reached the payment service, a forced choice hides the hole. When the workflow needs an out, put "not enough evidence" in the list.

Confidence comes from how the probability is spread across the options. In TypeSafe's own docs example, billing can "win" at 0.84 while confidence sits near 0.6, because another option still holds a real slice of the probability. High, act. Middle, review. Low, a person. The threshold lives in your code, next to what a wrong action costs. Picking an owner is not permission to roll back a deploy.

This is the same class of mistake as a retrieval system that answers from a file it never retrieved. If that is the bug you are already chasing, the plain version is what RAG is for.

If the key is already in your env

The API shape is small. State in, questions in, typed answers out. The official introduction is the TypeSafe docs. Guides also show it through Vercel AI Gateway, and forum threads mention OpenRouter. Stick to the TypeSafe docs or a gateway you already pay for. The lookalike playgrounds say in the footer that they are someone else's product.

If you have a key and a blank file, these are the repos from the first week that have a concrete job. The timings are the authors' numbers.

Start here if you just want it inside the agent you already run:

  • typesafe-mcp puts choice, score, and noul on Claude Code, Claude Desktop, Codex, and Pi.
  • jev-mcp is the judgment kit: fact-check, screen content, rank, classify, extract.

Then the pattern that actually needs the speed. Lots of tiny decisions inside a loop:

  • jev-ultrafast is a browser agent. Each step, Jev only says what to click. A small language model is called when something has to be typed. Their Google Flights clip is about 7 seconds and roughly $0.004.
  • fast-jev-compaction and Winnow both sit on Claude Code and decide which tool output is still about the task. What they keep stays verbatim. They do not rewrite it into a summary.
  • Blink walks a repo one folder at a time and asks which files are closer to the current issue.

A few that are narrower:

  • json-render, from Vercel labs, is the generative UI experiment. The idea going around is that Jev picks the component, the props, and the layout, instead of writing JSON token by token.
  • SemDecide is the shell version, for a crawler, CI, or a data pipe.
  • jev-codex-router asks how hard this coding turn is, then picks the model tier.
  • jev-review flags the risky parts of a diff before a more expensive model, or a person, reads the rest.

shipwithjev.com is a community catalog if ten links is not enough. TypeSafe's own site is typesafe.ai.

Leave the sentences to the other model

Jev does not write the incident update, the email, or the patch. It also does not look at an image or an audio clip until you turn that into text. The docs treat English as the language it is best at. For anything else, test it, and watch the confidence.

Use it when the next line of your program is a branch you are tired of hand-writing, and the input is already a mess of language. Ticket owner, tool-call risk, "is this tool result still relevant," "is this turn done." If you need a paragraph, call the model that writes paragraphs, and let Jev decide whether that call is worth making.

What is Jev? TypeSafe's System One model | Erfan Shafiee Moghaddam