Jev experiments
★ 412▲ 3dabit3/jev-experiments
Latency-focused demos from Nader Dabit, each app in its own directory with its own README. No licence file at the time of writing.
Jev picks NES controller inputs for Super Mario Bros. from emulator state, with no screenshots.
View on GitHub →Our review
A well-structured demo where Jev picks Mario's controller input from parsed game state, not screenshots. Great to read; no license, and you need your own ROM.
Good for
Watch out for
How we reviewed this: TypeSafe Mario needs a Super Mario Bros. game file, which is copyrighted, so we didn’t run the game. We read the code at commit ca22449, ran its lint and test suite (all 10 tests passed), and ran the built-in state-demo command, which shows the exact JSON sent to TypeSafe without a ROM or an API call.
TypeSafe Mario lets Jev choose the controller input for World 1-1 of the original Super Mario Bros. The model never sees a screenshot. Instead, the harness reads the emulator’s telemetry and memory and turns them into a compact JSON object describing Mario’s position and velocity, jump phase, up to three upcoming enemies with projected positions, nearby terrain, how stale the last observation was, what the previous action achieved, and overall episode progress.
On each decision, one request asks Jev three independent questions about that state:
The design principle is stated clearly in the README and followed in the code: exact timing math stays in code. For example, the parser combines measured response delay, enemy motion, and the frames a jump needs to clear an enemy into a single jump_must_start_this_decision fact. Jev interprets these facts and makes the call, with no scripted override.
The documented setup uses Python 3.13 and PowerShell:
.venv\Scripts\python -m pip install -e ".[mario,dev]"
$env:TYPESAFE_API_KEY = "your-key"
.venv\Scripts\typesafe-mario state-demo
.venv\Scripts\typesafe-mario play --env SuperMarioBros-1-1-v0 --frames-per-decision 8
The mario extra installs the emulator stack: gym-super-mario-bros, nes-py, Gymnasium, NumPy, and Pygame. The README states that the repository contains no Nintendo ROM and that you’re responsible for obtaining and using your emulator and game files lawfully. Be aware that the upstream gym-super-mario-bros project’s source tree includes .nes files, so installing that dependency may bring game data onto your machine. Check the legal position where you live before running it.
typesafe-mario state-demo printed the full model-facing JSON and the human-readable debug view using a built-in sample, with no game and no network call. It’s the best way to understand the project, and the right thing to run before trusting any tool with your API key.--policy heuristic runs a simple built-in controller for smoke-testing the emulator setup without spending API calls. The code labels it a test policy, not a baseline.TYPESAFE_API_KEY from the environment. We found no other network destinations in the project’s code.artifacts/run-<timestamp>.jsonl, including the model’s action probabilities, confidence, latency, and the full state. Keep those files private if you’re bound by TypeSafe’s terms on publishing performance information.The project was published as a single commit on September 16, around Jev’s launch, and hasn’t changed since. There are no open issues. The dependencies it relies on for emulation are community projects, and the nes-py emulator is MIT licensed.
TypeSafe Mario is a compact, readable example of the pattern that makes Jev useful in real-time settings: parse the world into facts, do the arithmetic in code, and ask the model only for the judgment. Even if you never run it, state.py and the question design in policy.py are worth reading. To run it, you’ll need your own lawfully obtained game file, and to reuse it, you’ll need the author’s permission.
For another game driven the same way, see Jev Plays StarCraft. For a lighter demo you can run without game files, try Jev Pong. Our best Jev tools roundup covers the projects we’ve tested hands-on.
See how it compares with other tools in Best Jev tools, tested hands-on.
Review updated Sep 19, 2026. Numbers quoted from the project are its author's own; we don't publish our own measurements of Jev.
dabit3/jev-experiments
Latency-focused demos from Nader Dabit, each app in its own directory with its own README. No licence file at the time of writing.
RomanSlack/jev-drone
Camera-only quadrotor in MuJoCo with Jev making judgment calls at about 2.5 Hz.
standardagents/jevpilot
Three.js driving simulator with a Jev-powered autopilot.
New Jev releases, pricing changes, and the best new projects, once a week. No spam; unsubscribe anytime.
Powered by Buttondown. See our privacy policy.