Lesson 02 · Jev 101

How Jev works: state + typed questions

Forget prompt engineering for a moment. Every Jev call has the same shape: state in, questions in, typed answers out.

State (your context)

State is whatever the decision is about: a ticket, email, agent trace, document, game state, log blob—often unstructured text, sometimes structured program state (company emphasis). Official docs: a string, a JSON object, or an array of text. Text only — no image, audio, or video yet. Communityjev-ax-pilot therefore walks the Accessibility tree instead of uploading screenshots,MacWork does the same on a live Mac (14/29 is one run, not a success rate), andjev-tower lets code predict geometry — Jev is not visionPRESS.

ChatGPT parallel: the stuff you paste into the prompt.
Difference: you’re not also asking Jev to write the answer in English.

Official jaggedness note: accuracy falls when you stuff large irrelevant state (“context rot”). Filter. Send only what the decision needs. The reverse bug is just as real: if the fact is not in the state, Jev cannot invent it.jev-drone first saw Jev refuse climb every time — five range sectors had no vertical information, so “fly over it” was not inferable. Adding the obstruction’s top-edge height moved climb to p=0.93. That was a state-design bug, not a model failure. Jev is also not a vision model there: 15 Hz classical CV writes the JSON; Jev only answers at ~2.5 Hz; a 50 Hz reflex can override any judgment.NRS Navigator is the same lesson on a statute shortlist: Jev cannot recover a keyword the keyword stage omitted, and three nominated sources were never in the 30-candidate pool — Hit@5 12/18 vs 15/18 is that regression, not lawyer gold.PRESS

Jev also has no conversation history. Each request is self-contained — if last turn matters, your code must put it in this state.milanboers/jev-plays-pokemon does that on Pokémon Red: the harness re-injects recent dialog and actions every turn. Community demo, not TypeSafe.PRESS

Official System One page: like an LLM, it understands natural-language input; unlike an LLM, it returns typed decisions and probabilities rather than generated text. The name is Kahneman’s fast/intuitive System 1 as a metaphor for focused judgments — not a claim that Jev is human cognition.

Three question types

TypePlain EnglishChatGPT prompt you might retire
ChoicePick from labels you define. Returns the option, a distribution, and confidence.“Classify as A/B/C. Return JSON.”
ScorePlace on an ordered scale / rubric you define. Returns a weighted score plus confidence.“Rate 1–5 severity.”
NoulYes/no-style probability (0–1). No separate confidence field — the probability is the signal.“Is this spam? Answer yes or no.”

Multiple questions can be evaluated together in one request (company: independently, in parallel). Official theme: speculative fan-out — ask more than you might need, let code select. Official Choice page: up to 255 options. Communitywellposed restates that 255, plus official 64k / 32k, and shows a closed menu can answer at confidence 1.00.MacWork folds groups instead of ranking options away when the menu is larger than 255. Communityjev-tree walks a larger taxonomy one short Choice at a time and does not invent a leaf when the call fails. dabit3inbox-blitz packs seven,agent-assist nine, andturbo-rerank fifty Scores,jev-instant-search thirty-five questions, andjev-swarm up to eight agents, andjudge-sheets every column about one cell of source text, andJevTest measured 6.37× vs sequential on an 8-question probe — not official 193.6×.jev-demo-screener packs eight,jev-demo-rag twelve (six chunks × two), andjev-demo-logictest up to twelve Nouls in one call.jev-first-look saw 1 Noul median 143 ms vs 10 Nouls 157 ms after warm-up — author Austin client timings, not official Envoy process time.nak1b/jev-experiments puts 43 questions on one flight reading.bo7/jev_test asks two independent Choices (priority + category) — noteddydong/JevTest.QA-Classifier-Jev asks one Fact / Definition / Reason ChoicePRESS. Official Score page: at least two levels; the API accepts up to 10. CommunityTangerg/typesafe-sdk-go checked the live API on 2026-09-20 and saw a one-level Score accepted (always zero).fgn/jevgo documents the same one-level accept via OpenAPIminItems: 1 (official Python accepts; official TypeScript rejects).withzombies/jev-go follows the live minimum too. Prefer official docs on conflict.PRESSHow to write them is the next lesson.

“System One is TypeSafe's model for building AI-powered software, not agents.”

TypeSafe docs · how to build · fetched Sep 20, 2026 · Source

What you do not get back

Jev does not return essays, code, tool calls, or chain-of-thought prose. Official docs: “jev-1.13 is not trained to generate text.” If you need an explanation for a human, call an LLM after (or beside) the decision—or show your own UI copy. Communityagent-assist never writes the reply (it picks a macro id) andjev-voice-turn never generates speech — audio stays on device.JevChat is a community experiment that still builds each word as a Choice — it is not official generation.uspraveen/Jevify,fidecastro/jevify, andchakuho expose a /v1/systemone surface over open checkpoints — they are not TypeSafe weights or RLCD.qwen-rlcd andLFM2.5-350M-RLCD put RLCD in the name only — one is an unbuilt-head prefix-fork, the other keeps stock LiquidAI weights.the 2.6B card,harshatheg, andGemma E2B do the same: pretrained scoring, not TypeSafe RLCD.eve-rlcd is the author’s own loop and says TypeSafe published no method.typesafe-jev-dojo falls back to amber SIM (local decisions) when there is no key — that SIM is not TypeSafe either.jev-lab without a key is a keyword heuristic that only mimics the response shape — also not Jev.jev-spec README “0.85 means empirically true in 85% of cases” is not TypeSafe docs — official: a high-confidence answer can still be wrongPRESS.

“jev-1.13 is not trained to generate text.”

TypeSafe docs · jaggedness · reviewed Sep 17, 2026 · Source

“Jev is not a calculator. We strongly recommend implementing any mathematical logic in code.”

TypeSafe docs · jaggedness · Sep 17, 2026 · Source

Why this feels more like code

Your application defines the answer space before inference. That constraint is the product: TypeSafe claims the model never makes type errors; schema matching is guaranteed by constructionCompany claim. You still design for wrong decisions via confidence and escalation. Communityrh-guard is the same split on a hook: code owns a structural deny; Jev is skipped after that fire; a soft score cannot independently create or cancel it.jevgate is the complementary envelope: the allowlist can prove a read; Jev only sees unknown verbs; the tool cannot blockPRESS.

“No type errors: This would be an easy thing to falsify with just a single counter-example, but it is mathematically impossible.”

TypeSafe launch blog · Sep 15, 2026 · Source

“We want AI to work alongside existing software as a primitive that any programmer can invoke for semantic judgement and decisions, while still using code for what it’s best at: exact computation.”

TypeSafe manifesto · fetched Sep 20, 2026 · Source

Constraints worth knowing

  • Context cited in models.md: 64k for state + all questions; 32k for state + longest question. Communityjev-analysis saw 400 max_tokens_exceeded from 36k on one path, and official ~100 ms as Envoy process time — not Oregon e2e.jev-demo-screener caps combined JD+resume at 50,000 characters for that 64k window.semantic-microscope saw Envoy p50 98 ms vs a Bengaluru client p50 356 ms — most of the trip was RTT, same lesson as jev-analysisPRESS
  • English is primary; CJK and other languages are accepted with lower accuracy
  • No customer fine-tune / LoRA; same weights for all accounts
  • Not trained on customer requests or responses (official models.md)
  • State is data, not a hostile user by default — add your own injection defenses

Optional code · official surface

Endpoint from the official quickstart. Do not freeze a request body here — copy the current schema fromdocs.typesafe.ai.

POST https://api.typesafe.ai/v1/systemone
Authorization: Bearer $TYPESAFE_API_KEY

# Python: pip install typesafe-sdk
# JS:     @typesafe-ai/sdk
# Pin:    jev-1.13.0  (aliases jev-latest / jev-preview can move)