Skip to content

TypeSafe Chess — Dimesio

A local chess workbench for measuring Jev as a move chooser: the code enumerates legal moves with chess.js, Jev picks from them, and Stockfish grades every pick without its evaluations reaching the model.

Stars
2
Language
JavaScript
Published by
Community
Author
Dimesio
Last verified
Oct 2026

Dimesio/typesafe-chess

User repository on GitHub

View on GitHub

FUn little experiment with Typesafe AI Jev Model playing chess against stockfish :)

Forks
0
Last pushed
Updated Sep 2026

Repo stats from the GitHub API, cached Oct 2026.

About this project

A local app for testing TypeSafe Jev (a System One model) as a chess decision-maker. Jev never generates a move: the code lists the legal moves, Jev picks from them, and Stockfish grades every pick. The point is to find out how well Jev chooses, so nothing here is tuned to make it look good or bad. chess.js owns the rules. Jev only chooses. Stockfish only grades. Its evaluations never reach Jev's state, with one deliberate exception: the opt-in lesson levels, which feed Jev's own graded mistakes back to it.

Quoted from the project's README. Read the full README.

Highlights

  • Stockfish grades but never informs Jev, apart from the opt-in lesson levels that feed Jev's own graded mistakes back to it.
  • Raw or assisted facts, choice or noul framing, foresight 0–3 and lessons 0–2 are switchable, and setups can be compared on one position.
  • A Stockfish ladder adjusts engine strength after each game, moving one setting and refusing to switch difficulty modes.
  • Runs without a key in mock mode behind an amber badge, and a failed live call surfaces the error instead of quietly falling back.

Watch out

The app is explicit that Jev never generates a move, so this measures choice quality inside a small legal-move set rather than chess strength. Answers vary between identical requests — the Ask again button exists to show it — so one position is not a stable measurement and the intended unit is a run. Estimated Elo comes from a Stockfish-versus-Stockfish calibration run stored in bench/elo-calibration.json, not FIDE or lichess, and settings the calibration does not cover are shown as unrated and excluded from performance Elo. The lessons levels are the single place Stockfish output reaches Jev, a deliberate exception to the separation. Re-calibrating takes about an hour on 10 workers, and the full bench run is 5,000–6,000 decisions. Copy reviewed against the repository README on 2026-10-04, not from running it.

Questions about this entry

Short answers drawn from the linked project or page.

Other listings of this project

Forks and copies of this project in the directory. This entry is the canonical one.

10GitHub stars
Two Jev players playing chess with no engine: code owns the rules and the tactical facts, and the model returns one Choice per legal move with a probability for each, plus a Score for the position and a Noul for sharpness.
Jev Demos & Experiments#community#jevbest#catalog-import

More Jev resources like this

23GitHub stars
Live race rig that labels 1,000 real app reviews with Jev typed questions against Gemini JSON output on identical batches, then replays recordings and re-ranks rows locally without extra model calls.
Jev Practices & Patterns#community#jevbest#catalog-import
Minecraft setup where Hermes plans at milestones, Jev picks one bounded harness action per step, and Mineflayer code owns validity and execution with no screenshots.
Jev Practices & Patterns#community#awesomejev#catalog-import
6GitHub stars
Watch Jev play chess against OpenRouter LLMs or Stockfish, or play Jev yourself, with every weighed move, likelihood, clock, and finished game saved for replay.
Jev Practices & Patterns#community#awesomejev#catalog-import
5GitHub stars
Inline verifier that checks LLM responses and agent plans with one Jev call across alignment heads and returns block, flag, or pass for gates and hooks.
Jev Practices & Patterns#community#awesomejev#catalog-import
6GitHub stars
Self-hosted Feishu bot plus web workbench where a text model proposes 2-5 candidate answers and TypeSafe Jev picks among them with probabilities.
Jev Practices & Patterns#community#awesomejev#catalog-import
4GitHub stars
OpenAI-compatible proxy that holds streamed tokens in a sliding buffer and scores the full criteria matrix before release, cutting the stream before a violating token reaches the client.
Jev Practices & Patterns#community#awesomejev#catalog-import

From the Jev guides

Original write-ups on what this entry is for.

Most Jev accuracy problems are state problems. What belongs in a state, what is a pre-made judgment to leave out, and why naming the slice you ask about matters more than the wording.
Jev Practices & Patterns#state#design#primitives
Read article
A Noul returns one number and no separate confidence. How to read the value, pin its boundary with criteria, split compound questions, and set a per-action threshold that matches the cost of being wrong.
Jev Practices & Patterns#noul#primitives#confidence
Read article
A Score is a weighted position, not a ruler. Why the number can land between levels, why levels are judged separately, and how to combine several atomic scores in code instead of one crowded rubric.
Jev Practices & Patterns#score#primitives#scoring
Read article
Back to all resources

From the Jev community

Posts from builders shipping with Jev right now.

Follow @typesafeai