Skip to content

jevman

Pac-Man where Jev or other System One models choose each move at junctions, with live odds, fallbacks and a leaderboard.

Projectbeta

Overview

jevman is a browser Pac-Man game where the characters are driven by System One decision models: TypeSafe's jev-1.13.0 by default, plus other models served through Opper. The main mode is watching an AI play against the classic arcade ghosts, with the model's odds drawn on the board at each junction and a side panel showing every decision's probabilities, confidence, latency, model and running cost.

Other modes let you play against the classic ghosts, steer Pac-Man while a model plays the ghosts, or pit models against each other, and a key hands control to the AI mid-game. When a model times out, errors or returns an invalid answer, a greedy fallback move is used and shown in red. npm run leaderboard benchmarks which model plays best, and you can add your own. Keys can come from a project-scoped Opper key for local development or via Login with Opper, where players pay for their own calls. A public app is hosted at jevman.chadda.se.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich direction should Pac-Man take at this junction?(inferred)up · down · left · right
ChoiceWhich direction should this ghost take? (AI ghosts mode)(inferred)—

How it works

  1. Game reaches a junction and builds the board state
  2. Model returns probabilities over legal directions
  3. Move is applied; timeouts, errors or invalid answers use a greedy fallback marked in red
  4. Panel logs probabilities, latency and cost; leaderboard script compares models

Strengths

  • Makes decision latency and cost visible per move
  • Explicit fallback keeps play going on model errors
  • Model leaderboard for comparing System One models
  • Players can pay for their own calls via OAuth

Caveats

  • A game demo, not a general-purpose library
  • Live play needs an Opper or TypeSafe key
  • Unsigned visitors see a recorded demo

Getting started

npm install, cp .env.example .env (set an Opper key or OAuth), then npm run dev and open http://localhost:5173.

At a glance

Type
Project
Status
beta
Language
TypeScript
Runtime
Node server and browser
Has code
yes

Use cases and integrations

How curated lists describe it

Frequently asked questions

What does the model decide?

Which way Pac-Man (or a ghost) turns at each junction, shown as odds on the board.

What if the model fails?

A greedy fallback move is used and highlighted in red in the decision log.

Who pays for the calls?

Your own Opper key in development, or each player's Opper wallet when they sign in.

Related projects

  • Fifteen live arcade games where Jev and LLMs play each other, led by WikiRace in which Jev picks only real links.

    ProjectbetaTypeScript
  • One-page web app where Jev plays chess against OpenRouter LLMs, Stockfish or you, showing the moves it weighed and their probabilities.

    AppbetaJavaScript
  • Browser chess lab where Jev, LLMs and people play, each Jev turn being one Choice over the legal moves, with Stockfish analysis.

    ProjectbetaPython
  • NiceGUI desktop chess app for evaluating Jev's move choices against Stockfish, random players or itself, with PGN export.

    ProjectprototypePython
  • Browser 2D driving sim where Jev answers lane, speed, hazard and pedestrian-yield questions every 200 ms, with an LLM comparison mode.

    ProjectprototypeJavaScript
  • Real-time versus Tetris where Jev and an LLM or open Laya model pick placements on the same seeded pieces and clock.

    ProjectprototypeTypeScript