A new Gaia release — and this one you can try without downloading anything:
Play Gaia in your browser on itch.io
The big change since 4.2.2 is that the engine now ships with its own graphical interface, embedded in the same binary. Run gaiachess with nothing after it: it listens for two seconds, and if nothing speaks UCI in that time, a pixel-art chess board opens. A GUI that launches it says "uci" straight away and gets a normal UCI engine, with no delay and no window — so nothing changes for Arena, CuteChess, fastchess or match play over SSH. --no-gui skips the wait entirely.

The board is playable with the mouse (the hand is the cursor, pieces are dragged and dropped) or with the keyboard, has six languages, clocks, and its sounds are not files — each one is a few numbers, synthesised at startup with sfxr.
The other half of the release is twenty levels of play, and I tried to make them feel human rather than "full engine with a depth cap". A network judging positions one ply deep already plays around 1500 Elo, so cutting depth alone never reaches a beginner. Instead, below full strength five things give at once: the engine looks less far ahead, judges positions more crudely (material only at the bottom, then piece-square tables, then the NNUE), misjudges them on purpose — usually a little, occasionally by a piece — picks among the root moves worth playing instead of always the same one, and simply fails to see some moves at all. That last one, applied in quiescence too, is what makes the low levels leave a piece hanging.
Each rung is worth roughly 120 Elo, from ~580 (just learned the moves) to ~2640 (grandmaster), with level 20 the untouched full-strength engine. The scale was anchored outside the engine: levels 8–14 played matches against the Maia networks, whose ratings were earned against humans on lichess over hundreds of thousands of games. And a level is deterministic — never a time or node budget, all randomness drawn from the position hash — so it is the same opponent on a laptop as on a server, with stable blind spots rather than a tremor. Exposed over UCI as Skill Level (1–20) and Skill Seed.
The browser version plays levels 1–19 exactly as the desktop one does (they are depth-bounded, never clock-bounded); level 20 is worth meeting on a downloaded build, where it gets real threads instead of a WebAssembly worker.
Links:
- Play in the browser (itch.io) — first load fetches the ~22 MB network, cached afterwards
- Source code (GPLv3)
- Binary releases — Windows, Linux, macOS, ARM
Jean-François