Start here
Two hours, end to end
Jev is small. 13 tutorials cover essentially all of it, and they are meant to be read in order — each one assumes the one before. If you only have five minutes, the call below is the whole idea in one request.
The five-minute version
needs a key from console.typesafe.aicurl -X POST https://api.typesafe.ai/v1/systemone \
-H "Authorization: Bearer $TYPESAFE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"state": "My card was charged twice for order A-104.",
"model": "jev-latest",
"questions": {
"refund_requested": {
"type": "noul",
"instructions": "Does the customer request a refund?"
}
}
}'You get back {"refund_requested": {"type": "noul", "noul": 0.94}}. No prose to parse, no schema to validate, no branch for “the model apologised instead”. That is the entire pitch, and everything else on this site is about what to build on top of it.
Foundations
~26 minJev's whole surface area: one endpoint, three question types, one state field. Get this right and the rest is architecture.
- 01Your first Jev call
Get a key, send one request, and read a typed answer back — in cURL, Python and TypeScript.
Beginner · 6 min
- 02Noul, Choice and Score
Jev has exactly three question types. Picking the wrong one is the most common early mistake — here is how to tell them apart.
Beginner · 11 min
- 03Designing state Jev can actually use
State is not a prompt. Shape it like a record you'd hand an expert, filter it in code first, and name the parts your questions point at.
Beginner · 9 min
Patterns
~69 minThe shapes that recur in every real system — fan-out, confidence gates, composite scores, cascades, agent harnesses and real-time loops.
- 04Ask every question at once
Questions run in parallel and output tokens are free, so asking something you might not need is close to free. Branch in code afterwards.
Intermediate · 8 min
- 05Confidence-gated routing
The answer tells you what. Confidence tells you whether you're allowed to act on it without asking anyone.
Intermediate · 12 min
- 06Composite scoring: move the weights into code
Stop asking one model one big question. Ask several small ones and own the weighting yourself.
Intermediate · 9 min
- 07Ask for features, not answers
The one lesson every practitioner reached independently in launch week: Jev is a bad judge and an excellent sensor.
Intermediate · 10 min
- 08The cascade: Jev in front of an LLM
Let a fast, cheap decision decide who handles the work — plain code, a specialist model, or a person.
Intermediate · 10 min
- 09Building an agent harness
Tool selection, dangerous-action gates and loop detection — the control layer that every coding agent already has, and nobody could build cheaply until now.
Advanced · 11 min
- 10Real-time loops: the Doom lesson
Ten decisions a second for about $7 an hour. What that unlocks, what it does not, and the discipline a control loop demands.
Advanced · 9 min
Reliability
~34 minWhere it breaks, what the benchmarks actually say, and the operational details that decide whether this survives contact with production.
- 11Read this before you ship
The nine documented ways jev-1.13 gets things wrong, and what to do instead of each one.
Intermediate · 13 min
- 12What the numbers actually say
193.6× faster, 445× cheaper, 100×, 200×, 40×, 20× — six multipliers from one vendor, and what independent testers measured instead.
Advanced · 12 min
- 13Shipping it
Errors, retries, rate limits, version pinning and the request ID you will wish you had logged.
Advanced · 9 min
If you only read three pages
- Noul, Choice and ScorePicking the wrong primitive is the most common early mistake, and the three do not agree with each other.
- Read this before you shipTypeSafe publishes nine documented failure modes for its own model. Most people never find the page.
- What “cannot hallucinate” actually guaranteesA real guarantee about types, and none whatsoever about correctness. The difference matters in a control path.