jev-tetris
Tetris where each reachable placement is an English sentence that Jev ranks, with controls showing a regex baseline does better.
Overview
JEV Tetris is played by a model that cannot write, cannot see the board and has never been told what Tetris is. Deterministic code finds every place the falling piece can reach, including tucks and spins, and describes each in a sentence such as traps no new space underneath, clears one line, flattens the surface. Those sentences become the options of five Choice questions, Jev returns a probability for each in about 380 ms, and the highest-weighted option is played. The whole distribution is drawn on the board before the drop, and settled blocks are dimmed by the model's confidence.
The README is unusually honest. Over three seeds, Jev cleared 23, 115 and 23 lines versus zero for random play and for a control with shuffled probabilities, which shows the model's ordering drives play. But a 23-line regular-expression keyword table over the same sentences cleared 118, 73 and 118 lines, beating Jev, and a classic heuristic did better still. The author also notes tuning on the same seeds and fitted question weights. Spending is capped at 1,500 calls or $1.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which described placement is best? (five Choice questions over the same sentences, weighted) | — |
How it works
- Search all reachable placements, including tucks and spins
- Describe each outcome as an English sentence
- Five Choice questions return probabilities; weighted blend picks the move
- Draw the distribution on the board, then commit
Strengths
- Includes shuffled-probability and keyword baselines as honesty checks
- Visualises the full probability distribution
- No dependencies; spend cap built in; mock mode without a key
- Engine and UI test suites
Caveats
- A simple regex baseline outscores Jev on the same descriptions
- Only three seeds; configuration tuned on them
- Much performance comes from fitted weights
Getting started
git clone, cp .env.example .env (set TYPESAFE_API_KEY), `npm run dev`, or `npm run dev:mock` without a key.At a glance
- Type
- Project
- Status
- research
- Language
- JavaScript
- Runtime
- Node + browser
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Tetris where deterministic code enumerates every reachable placement, including tucks and spins, and writes each one as an English sentence; Jev returns a probability for all of them across five Choice questions, and the highest-weighted option is played while the whole distribution is drawn on the board. Ships a shuffled-probability control and a 23-line regex baseline over the same sentences, which outscores the model.
cobanov/awesome-jev
Frequently asked questions
Does Jev play Tetris well?
Far above chance, but a 23-line regex over the same sentences beats it, so the claim is narrow.
How do they know the model is doing the work?
Shuffling which option each probability belongs to drops play to random-level, showing the ordering matters.
How much does it cost?
A game costs a few cents, and the server stops at 1,500 calls or $1.
Related projects
Fifteen live arcade games where Jev and LLMs play each other, led by WikiRace in which Jev picks only real links.
ProjectbetaTypeScriptOne-page web app where Jev plays chess against OpenRouter LLMs, Stockfish or you, showing the moves it weighed and their probabilities.
AppbetaJavaScriptPac-Man where Jev or other System One models choose each move at junctions, with live odds, fallbacks and a leaderboard.
ProjectbetaTypeScriptBrowser chess lab where Jev, LLMs and people play, each Jev turn being one Choice over the legal moves, with Stockfish analysis.
ProjectbetaPythonNiceGUI desktop chess app for evaluating Jev's move choices against Stockfish, random players or itself, with PGN export.
ProjectprototypePythonBrowser 2D driving sim where Jev answers lane, speed, hazard and pedestrian-yield questions every 200 ms, with an LLM comparison mode.
ProjectprototypeJavaScript