Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
232 commits
Select commit Hold shift + click to select a range
386f1c8
Modernize engines; fix Lichess/Chess.com detection, turn tracking, au…
IchNukeDichWeg Jul 11, 2026
da377ea
popup: discard flushed bestmove of a stopped search
IchNukeDichWeg Jul 11, 2026
3edf676
Restore Stockfish 17 & 18 full builds; chunk nets >100MB
IchNukeDichWeg Jul 11, 2026
f8d977d
Mephisto 3.0.0: floating in-page panel, help mode, safe premove, eval…
IchNukeDichWeg Jul 12, 2026
b468dce
Mephisto 3.x: floating panel, modern engines, help mode, safe premove…
IchNukeDichWeg Jul 12, 2026
bc36581
popup: guard against overlapping fen requests (subsumes #28)
IchNukeDichWeg Jul 12, 2026
5ddabca
options: dark mode toggle, refreshed Getting Started, 2026 copyright
IchNukeDichWeg Jul 12, 2026
cb6ffc5
content-script: fix poll-lag during moves + verify autoplayed moves l…
IchNukeDichWeg Jul 12, 2026
12ce041
content-script: don't verify/retry premoves (only real, on-turn moves)
IchNukeDichWeg Jul 12, 2026
0cd53f7
content-script: guard automove on config.autoplay (defense in depth)
IchNukeDichWeg Jul 12, 2026
04ff2d4
popup: never play a premove reply that isn't playable in the real pos…
IchNukeDichWeg Jul 12, 2026
b38be73
popup: dispatch autoplay clicks to the game tab, not the active tab
IchNukeDichWeg Jul 12, 2026
c9dd35b
autoplay: gate on legality + deselect before each move click
IchNukeDichWeg Jul 13, 2026
c2ed81c
autoplay: fix move-verification retry re-reading the count baseline
IchNukeDichWeg Jul 13, 2026
c4a0547
autoplay: verify move-registration via an explicit turn flag, not DOM…
IchNukeDichWeg Jul 13, 2026
92c8705
overlay: shrink the in-page panel a notch and flush it to the right edge
IchNukeDichWeg Jul 13, 2026
8a5ed34
overlay: bump scale 0.75 -> 0.8
IchNukeDichWeg Jul 13, 2026
c5e93b3
overlay: add minimize (panel hidden, engine keeps running) + richer d…
IchNukeDichWeg Jul 13, 2026
b9f2670
eval bar: optional evaluation bar on the site board
IchNukeDichWeg Jul 13, 2026
7d898fc
scope each popup to its own tab; clear board overlays on close
IchNukeDichWeg Jul 13, 2026
8ad7de4
minimize keeps engine at full speed; readable options dark mode
IchNukeDichWeg Jul 13, 2026
a308930
chess960: send UCI_Chess960 to mainline Stockfish for fischerandom
IchNukeDichWeg Jul 13, 2026
1f0c210
variant selector in the panel + detect button (Fairy-Stockfish)
IchNukeDichWeg Jul 13, 2026
7f62d43
remove Stockfish 17; calmer options dark mode
IchNukeDichWeg Jul 13, 2026
9997787
minimize: make the whole invisible panel click-through
IchNukeDichWeg Jul 13, 2026
0091e58
dark mode: fix the harsh white slider track (it's the element's border)
IchNukeDichWeg Jul 13, 2026
4b96327
dark mode: proper filled slider tracks (teal fill + dark remainder)
IchNukeDichWeg Jul 13, 2026
30f822f
dark mode: flatten the settings box + fix the leftover white slider t…
IchNukeDichWeg Jul 13, 2026
781db30
chess.com variants: detect, scrape and autoplay the /variants/ board
IchNukeDichWeg Jul 13, 2026
6169f20
event-driven position detection: replace the fen_refresh polling loop
IchNukeDichWeg Jul 13, 2026
dd5fd50
README: correct the engine lineup (SF 17 is removed) + document new f…
IchNukeDichWeg Jul 13, 2026
a5f411e
panel: corner-resize + persisted geometry, minimize really click-thro…
IchNukeDichWeg Jul 13, 2026
6c9222c
humanize, clock mode, mirror time, move countdown, alternative lines,…
IchNukeDichWeg Jul 13, 2026
7469886
options: humanize move mix sliders, clock/mirror toggles, chess960-aw…
IchNukeDichWeg Jul 13, 2026
b048370
README: document humanize, clock/mirror pacing, countdown, alt lines,…
IchNukeDichWeg Jul 13, 2026
c4374c2
TakeTakeTake (taketaketake.com) support + chess.com variant detection…
IchNukeDichWeg Jul 14, 2026
a9d14f2
panel: search fills the pacing time, chess.com variant auto-detect, m…
IchNukeDichWeg Jul 14, 2026
55bb189
README: document taketaketake support, chess.com variant auto-detect,…
IchNukeDichWeg Jul 14, 2026
8403ae4
eval bar: thicker on-board bar (16 -> 28px), larger score number
IchNukeDichWeg Jul 14, 2026
5181dd4
countdown: show the full move time, not just the ~150ms tail after th…
IchNukeDichWeg Jul 14, 2026
7497965
humanize: show the coming move from the countdown's start; mix slider…
IchNukeDichWeg Jul 14, 2026
97204d0
Elo strength cap, timing-priority tooltips, human-reflex premoves
IchNukeDichWeg Jul 14, 2026
282e7bd
README: comparison vs upstream, supported sites & modes matrix, SEO k…
IchNukeDichWeg Jul 14, 2026
335bec9
Keep autoplay running when the tab is backgrounded
IchNukeDichWeg Jul 14, 2026
cc4de21
remote-engine.py: friendlier, harder to misuse
IchNukeDichWeg Jul 15, 2026
cfdb780
Remove accidentally committed __pycache__ bytecode; gitignore it
IchNukeDichWeg Jul 15, 2026
0c245e2
README: add public Roadmap (lc0, Maia NNUE, board-from-screenshot)
IchNukeDichWeg Jul 15, 2026
e01334a
Add opt-in full-power native engines (Stockfish / Fairy-Stockfish)
IchNukeDichWeg Jul 15, 2026
27ef118
Fix native host names (hyphens invalid) + hide WASM when native is in…
IchNukeDichWeg Jul 15, 2026
730254a
Native engines: honor Threads/Hash sliders, fix Humanize + pure analysis
IchNukeDichWeg Jul 15, 2026
9833387
UI: Hash slider to 2048 MB, Threads to 24, search-time step 25 ms, li…
IchNukeDichWeg Jul 15, 2026
c961583
Clamp WASM engine hash to 512 MB (the slider now allows up to 2 GB)
IchNukeDichWeg Jul 15, 2026
9ec5357
NPS line: match the surrounding text size (17px) and center it
IchNukeDichWeg Jul 15, 2026
12e8e8f
Shut down the old native engine on switch (was throttling the new one…
IchNukeDichWeg Jul 15, 2026
6807c27
Show local + WASM engines side by side (drop the hide-when-native logic)
IchNukeDichWeg Jul 15, 2026
6567a43
README: native engines now labeled "(local)" next to WASM; fix Window…
IchNukeDichWeg Jul 15, 2026
6c6cdf1
README: add 4 roadmap items (native health badge, smart default threa…
IchNukeDichWeg Jul 15, 2026
ee37ebc
variants: ship duck/minihouse/seirawan/chaturanga nets + expose in pi…
IchNukeDichWeg Jul 15, 2026
ed2e3cc
README: roadmap — auto-download variant nets, unsupported-variant sta…
IchNukeDichWeg Jul 15, 2026
fc6a64a
bump version to 3.1.56 (variant nets + picker entries)
IchNukeDichWeg Jul 15, 2026
544f6da
README: Supported sites table — list all Lichess variants + add 4 new…
IchNukeDichWeg Jul 15, 2026
80ce212
README: roadmap — opening explorer, blunder alert, syzygy, panel togg…
IchNukeDichWeg Jul 15, 2026
bb59faa
WDL readout under the score (UCI_ShowWDL) + taller panel; roadmap tri…
IchNukeDichWeg Jul 15, 2026
5386784
ChessBase Tactics support + smaller page footprint (closed shadow-roo…
IchNukeDichWeg Jul 15, 2026
0b7f582
Panel Style toggle (floating vs zero-footprint toolbar popup) + per-s…
IchNukeDichWeg Jul 15, 2026
9919d8e
Fix Chess960 castling in bundled chess.js (board corruption, stalls)
IchNukeDichWeg Jul 15, 2026
0d93d41
Remove the in-page iframe: panel in a closed shadow root, engine in a…
IchNukeDichWeg Jul 16, 2026
0ef4277
README: disclaimer & fair-play section; document the zero-iframe panel
IchNukeDichWeg Jul 16, 2026
81beb8f
Never play a superseded search's move; fix the moving-state desync
IchNukeDichWeg Jul 16, 2026
fb8c3d0
README: roadmap — rebindable hotkeys, export/import settings as JSON
IchNukeDichWeg Jul 16, 2026
4842b8f
Two inherited crashes: a stray move-list node, and a removed engine
IchNukeDichWeg Jul 16, 2026
b4bcef6
README: roadmap — Manual mode (engine thinks until you hit Spacebar)
IchNukeDichWeg Jul 16, 2026
a8eb7b4
README: roadmap — a one-line description on every item
IchNukeDichWeg Jul 16, 2026
294e82b
Copy PGN, compact panel, engine-health dot, export/import, cores-1 th…
IchNukeDichWeg Jul 16, 2026
2ac9d37
Fix Copy PGN button: it fell into flow and shoved the board arrows off
IchNukeDichWeg Jul 16, 2026
94e2672
Panel polish: no stray arrows in compact, tighter text, smaller FEN/PGN
IchNukeDichWeg Jul 17, 2026
e5d4aff
README: split the roadmap — open items on top, an Implemented section…
IchNukeDichWeg Jul 17, 2026
d8b143b
Compact view gets the mid-game toggles; drop the threat line; sane NPS
IchNukeDichWeg Jul 17, 2026
287b137
Fix NPS: my 200ms gate hid it entirely on every native engine
IchNukeDichWeg Jul 17, 2026
aaebc7f
Fix "From Position" games dying on the first O-O (queen odds &c)
IchNukeDichWeg Jul 17, 2026
7a9854a
Humanize: widen the bands, and give them moves to actually pick from
IchNukeDichWeg Jul 17, 2026
88185e0
Humanize: configurable per-category cp thresholds, +4th line +Inaccur…
IchNukeDichWeg Jul 17, 2026
42fc73a
README: document the rebuilt Humanize move mix
IchNukeDichWeg Jul 17, 2026
7e99d0b
Stream the best move from depth 1; distinct colour per engine line
IchNukeDichWeg Jul 17, 2026
9b9f0a5
Humanize: 3rd/4th-line rolls were silently playing the top move
IchNukeDichWeg Jul 17, 2026
20af5bc
Docs: correct which categories trigger the wide Humanize search
IchNukeDichWeg Jul 17, 2026
37ccaf8
Manual Mode, a hotkey system, opponent-mistake alert, and a self-test
IchNukeDichWeg Jul 17, 2026
b9b07fe
NPS / depth sparkline, and a font-independent self-test icon
IchNukeDichWeg Jul 17, 2026
a9bf76a
Settings: stack the mode toggles vertically instead of a scrolling row
IchNukeDichWeg Jul 17, 2026
0d7dac0
Fix Manual Mode not moving; bigger, longer opponent alert with the move
IchNukeDichWeg Jul 17, 2026
777f48a
Remove the sparkline; single-letter hotkey defaults; show keys on tog…
IchNukeDichWeg Jul 17, 2026
7eef093
README: tighten the Implemented list to one line per item
IchNukeDichWeg Jul 17, 2026
fbe9dbf
Security hardening from issue #36: authenticated tab ids, URL pin, ba…
IchNukeDichWeg Jul 18, 2026
14f31a6
README: mark Blunder alert implemented (shipped as Opponent Mistake A…
IchNukeDichWeg Jul 18, 2026
c7d5612
v3.1.90: cursor travel before every click, Move Time is total wall-cl…
IchNukeDichWeg Jul 20, 2026
6044f9c
v3.1.91: turn badge on the board, auto engine shutdown, stream from d…
IchNukeDichWeg Jul 20, 2026
f2f2b1b
v3.1.92: header turn switch, warm engine + instant reopen
IchNukeDichWeg Jul 20, 2026
50a81ef
v3.1.93: Maia — human-like play in the browser (1100-1900)
IchNukeDichWeg Jul 20, 2026
c86b6e6
README: add Maia to the footprint + "Why this fork?" tables; version …
IchNukeDichWeg Jul 20, 2026
c5885ab
v3.1.94: add Maia 2200
IchNukeDichWeg Jul 20, 2026
80358d5
v3.1.95: Maia-3 — one human-like model, live 600-2600 rating slider
IchNukeDichWeg Jul 20, 2026
cae93ba
v3.1.96: Maia-3 default upgraded to the 23M model
IchNukeDichWeg Jul 20, 2026
d48fb06
v3.1.97: Maia (1) now draws board arrows + supports Multi Lines
IchNukeDichWeg Jul 20, 2026
07e340f
v3.1.98: fix Maia Multi Lines showing only one line/arrow
IchNukeDichWeg Jul 20, 2026
38b48a1
v3.1.99: fix intermittent promotion failures on lichess (picker race)
IchNukeDichWeg Jul 20, 2026
e1454cd
v3.1.100: license compliance -- add GPL/AGPL texts, third-party notic…
IchNukeDichWeg Jul 20, 2026
a270ab1
v3.1.101: hide "(local)" native engines when their host isn't installed
IchNukeDichWeg Jul 20, 2026
090553c
v3.1.102: Pondering — use the opponent's think time (settings toggle)
IchNukeDichWeg Jul 20, 2026
b0d38f2
v3.1.103: ponder the opponent's top 5 replies, narrow on forced/recap…
IchNukeDichWeg Jul 20, 2026
839b541
v3.1.104: show "Pondering —" in the readout while pondering the oppon…
IchNukeDichWeg Jul 20, 2026
10fe98b
v3.1.107: double premove, pondering for the native/remote engines, th…
IchNukeDichWeg Jul 21, 2026
55e7ce6
README: move Ponder off the roadmap now that it has shipped
IchNukeDichWeg Jul 21, 2026
e029bbd
v3.1.119: opening explorer, set-up-position, and a batch of robustnes…
IchNukeDichWeg Jul 22, 2026
f55af6a
README: document the Opening Explorer, book play and set-up-position;…
IchNukeDichWeg Jul 22, 2026
f1a4c15
README: Auto-recover off the roadmap (shipped), and prose feature sec…
IchNukeDichWeg Jul 22, 2026
85b7f3e
README: separate the engine-blocked variants from what is actually bu…
IchNukeDichWeg Jul 25, 2026
7e35481
v3.1.124: read a position off the screen, and a playable panel board
IchNukeDichWeg Jul 25, 2026
1e6607e
v3.1.125: custom start positions, on-demand nets, ChessBase arrows an…
IchNukeDichWeg Jul 25, 2026
37c11f9
v3.1.126: fit all the quick settings in the panel again
IchNukeDichWeg Jul 25, 2026
b112443
v3.1.128: put the panel back to its original height
IchNukeDichWeg Jul 25, 2026
c01b59b
v3.1.129: revert the ChessBase board detection
IchNukeDichWeg Jul 25, 2026
488a813
v3.1.130: draw an arrow for every line, not just the first
IchNukeDichWeg Jul 25, 2026
180ba9a
v3.1.131: stop the old engine when you switch, and an option to hide …
IchNukeDichWeg Jul 25, 2026
49de1cf
README: show what the extension actually looks like
IchNukeDichWeg Jul 25, 2026
4111038
Keep the README screenshots out of the release zip
IchNukeDichWeg Jul 25, 2026
98ed48b
v3.1.133: puzzles understand en passant, and premoves wait for depth 14
IchNukeDichWeg Jul 26, 2026
a2f4454
v3.1.134: puzzles get their castling rights back, and stop analysing …
IchNukeDichWeg Jul 26, 2026
92adc6d
v3.1.135: endgame tablebase, an eval graph, and a panel that stops pr…
IchNukeDichWeg Jul 28, 2026
3b09e31
v3.1.136: remove the blunder guard -- it refused winning sacrifices
IchNukeDichWeg Jul 28, 2026
9bd8778
v3.1.137: follow a board on screen, walk your own line, and stop losi…
IchNukeDichWeg Jul 29, 2026
03a6cc5
v3.1.138: never play the answer to a position that has already gone
IchNukeDichWeg Jul 30, 2026
ca82b77
v3.1.139: an engine that never loaded, a veto that was backwards, and…
IchNukeDichWeg Jul 30, 2026
1f9e230
v3.1.140: fourteen languages, the puzzle database, and an autoplay bu…
IchNukeDichWeg Jul 31, 2026
6b46fe0
README: four more roadmap items
IchNukeDichWeg Jul 31, 2026
995949e
README: rewrite it, as its own roadmap item
IchNukeDichWeg Jul 31, 2026
7b2ad63
README: two more roadmap items — footprint, and an open wishlist
IchNukeDichWeg Jul 31, 2026
832581e
README: four more roadmap items — screenshots, clearer prose, videos,…
IchNukeDichWeg Jul 31, 2026
925cdc5
v3.1.141: "move dropped, re-scraping" — and then it never re-scraped
IchNukeDichWeg Jul 31, 2026
5ce56f7
v3.1.142: pause 100ms before the first click of a database move
IchNukeDichWeg Jul 31, 2026
0048526
README: a screenshot for the puzzle database
IchNukeDichWeg Jul 31, 2026
193c6aa
README: a clip of the puzzle database running
IchNukeDichWeg Jul 31, 2026
c29058a
README: the 3999 shot, and put the gif on this branch too
IchNukeDichWeg Jul 31, 2026
3bda2d1
i18n: the 28 labels the injector had skipped
IchNukeDichWeg Jul 31, 2026
388dd20
Puzzle Storm and Racer stopped after a handful of puzzles
IchNukeDichWeg Jul 31, 2026
58696c2
README: shorter, and less of it written as release notes
IchNukeDichWeg Jul 31, 2026
251830c
i18n: translate the long settings tooltips, all thirteen languages
IchNukeDichWeg Jul 31, 2026
64dd9c7
README: rewrite around the reader, 739 -> 456 lines
IchNukeDichWeg Aug 2, 2026
3f1f5bc
README: the "why this fork" run-on becomes bullets
IchNukeDichWeg Aug 2, 2026
b1303bd
README: 4-player chess moves onto the roadmap
IchNukeDichWeg Aug 2, 2026
6ddb335
Four-player chess on chess.com, driven by Tetrarch
IchNukeDichWeg Aug 3, 2026
b20d1c9
Windows support for the four-player engine
IchNukeDichWeg Aug 3, 2026
3d19bf4
Invite issues, and make the roadmap a checklist
IchNukeDichWeg Aug 3, 2026
f09f047
Drop cloud evaluation from the roadmap
IchNukeDichWeg Aug 3, 2026
e574d2a
Tick the panel rework off the roadmap
IchNukeDichWeg Aug 3, 2026
f2f2519
Fix the panel dying on load, and the update notice opening your game
IchNukeDichWeg Aug 5, 2026
c4fde37
Four-player chess: arrows, eval-bar colours, and a switch that lied
IchNukeDichWeg Aug 5, 2026
60e4c18
Follow Screen: a flip now sticks, and the header keeps up with panel …
IchNukeDichWeg Aug 5, 2026
2ebf8ff
A 6 MB update download, and a guard for applying it wrongly
IchNukeDichWeg Aug 5, 2026
bfacc38
Four-player chess: read the game mode, and let the eval bar move
IchNukeDichWeg Aug 5, 2026
c18ef24
Work out the four-player game mode once per game, not once per scrape
IchNukeDichWeg Aug 5, 2026
c4da5f8
Import chess.com puzzles through the same button
IchNukeDichWeg Aug 5, 2026
ea28b19
Document the chess.com puzzle CSV for people generating their own
IchNukeDichWeg Aug 5, 2026
8b43c21
Keep the two puzzle databases apart
IchNukeDichWeg Aug 5, 2026
0191896
Puzzle Mode: pace every move, and show what the puzzle is rated
IchNukeDichWeg Aug 5, 2026
0e3441c
The replay guard must not block its own continuation
IchNukeDichWeg Aug 5, 2026
2434823
Puzzle moves pause 300ms, both publishers
IchNukeDichWeg Aug 5, 2026
c2ed984
Look at a solved puzzle position, at depth 10, without acting on it
IchNukeDichWeg Aug 5, 2026
4243df8
The board changing is the only proof the opponent moved
IchNukeDichWeg Aug 5, 2026
4008c5c
Ask the puzzle database before the engine, not alongside it
IchNukeDichWeg Aug 5, 2026
32b92c5
Finish the panel port, and three things a full diff found
IchNukeDichWeg Aug 5, 2026
3c683ff
Capitalise every display line, and put the rating where it belongs
IchNukeDichWeg Aug 5, 2026
31e76b6
Screenshots for the panel that actually ships now
IchNukeDichWeg Aug 5, 2026
35c883f
Stream the four-player search like any other engine
IchNukeDichWeg Aug 6, 2026
4d8b422
Read the four-player game mode off chess.com's own mode chip
IchNukeDichWeg Aug 6, 2026
2e62d92
The moving guard was swallowing hint arrows, not just moves
IchNukeDichWeg Aug 6, 2026
77c6df7
Self-update from the releases page, strictly opt-in
IchNukeDichWeg Aug 6, 2026
4188170
The unpacked extension id is path-derived, not reload-derived
IchNukeDichWeg Aug 6, 2026
e72ca8d
Version 3.1.214
IchNukeDichWeg Aug 6, 2026
b2119ee
The whole Humanize mix in one number
IchNukeDichWeg Aug 6, 2026
3148dce
Update from the panel notice, and let the switch be switched off
IchNukeDichWeg Aug 6, 2026
2a0b15f
Version 3.1.215
IchNukeDichWeg Aug 6, 2026
e4d84b6
README: the panel notice is the update button
IchNukeDichWeg Aug 6, 2026
7d3a82f
Tetrarch has no UCI_Elo, so stop offering it a strength cap
IchNukeDichWeg Aug 6, 2026
98e77b5
Say why four-player autoplay skipped a move
IchNukeDichWeg Aug 6, 2026
f21ddfd
Help Mode in four-player chess drew nothing until a move was played
IchNukeDichWeg Aug 6, 2026
e06cc7a
Four-player traces were hidden from the only person who could report …
IchNukeDichWeg Aug 6, 2026
85c521a
Autoplay can click on the four-player analysis board
IchNukeDichWeg Aug 6, 2026
d1947e0
Let the four-player mode be set by hand
IchNukeDichWeg Aug 6, 2026
6c20e6a
Version 3.1.216
IchNukeDichWeg Aug 6, 2026
51a15f4
README: the four-player mode override and the analysis board
IchNukeDichWeg Aug 6, 2026
bd22b3d
README: credit the panel one-click install to 3.1.215
IchNukeDichWeg Aug 6, 2026
74a7272
Say why nothing happened, and make it copyable
IchNukeDichWeg Aug 6, 2026
a2a7995
Updates are undoable, resumable, and say what changed
IchNukeDichWeg Aug 6, 2026
868fce8
Copy Diagnostics is a hotkey, not a sixth toolbar button
IchNukeDichWeg Aug 6, 2026
f407bdb
Copy Diagnostics is a button, and the reason line stops narrating
IchNukeDichWeg Aug 6, 2026
df98872
The floating panel shipped three board textures to use one
IchNukeDichWeg Aug 7, 2026
74bfb45
Opening the floating panel can never be a silent wait
IchNukeDichWeg Aug 7, 2026
a64892a
Four-player: promotion picker, elimination, and one arrow per line
IchNukeDichWeg Aug 7, 2026
832b1f8
Four-player multi-PV reaches the panel board and the eval list
IchNukeDichWeg Aug 7, 2026
dd69a9c
Record what the promotion picker test actually proved
IchNukeDichWeg Aug 7, 2026
2d7251e
README: three claims the four-player work made false
IchNukeDichWeg Aug 7, 2026
7445ff3
Version 3.1.217
IchNukeDichWeg Aug 7, 2026
66585ed
Pace to Clock: shrink the simulated delay when the clock is short
IchNukeDichWeg Aug 7, 2026
83989f3
Game Review: analyse a finished game on the extension's own page
IchNukeDichWeg Aug 7, 2026
c9a30e9
The build marker was four releases stale
IchNukeDichWeg Aug 7, 2026
36c696a
Game review: four things the audit found
IchNukeDichWeg Aug 7, 2026
c8c63ee
README: game review and Pace to Clock
IchNukeDichWeg Aug 7, 2026
6799135
Record what a cold start actually spent its time on
IchNukeDichWeg Aug 7, 2026
77ef124
The panel's own timing stamp was out of scope where it was read
IchNukeDichWeg Aug 7, 2026
1260bd0
Game review: a human model worth reading, native engines, and a repor…
IchNukeDichWeg Aug 7, 2026
477bcaf
Openings are named from a bundled table, not a server
IchNukeDichWeg Aug 7, 2026
6a00141
Game review: an overall estimate, a human-likeness report, and batch …
IchNukeDichWeg Aug 7, 2026
1ddedcf
Native engines are not greyed out for asking a depth
IchNukeDichWeg Aug 7, 2026
f7d6652
The four-player promotion picker is not rotated per seat
IchNukeDichWeg Aug 7, 2026
25be905
README: everything the review page grew, and what a cold start records
IchNukeDichWeg Aug 7, 2026
849d3fd
Version 3.1.218
IchNukeDichWeg Aug 7, 2026
3615d10
Carry a lichess API token, because the explorer now requires one
IchNukeDichWeg Aug 7, 2026
c795575
Version 3.1.219
IchNukeDichWeg Aug 7, 2026
0fa49e1
The +/- buttons on the settings page saved nothing
IchNukeDichWeg Aug 7, 2026
f4cc0ca
Puzzle move delay is a setting
IchNukeDichWeg Aug 7, 2026
0cb2150
Version 3.1.220
IchNukeDichWeg Aug 7, 2026
fc249a7
Auto-Next Puzzle on chess.com
IchNukeDichWeg Aug 8, 2026
e3a8e66
Puzzle database: a known position is never searched, and never claimed
IchNukeDichWeg Aug 8, 2026
439347a
Puzzle Mode follows the page back off again
IchNukeDichWeg Aug 8, 2026
1917795
Version 3.1.221
IchNukeDichWeg Aug 8, 2026
bf7e294
Read the chess.com variants board from its pieces
IchNukeDichWeg Aug 8, 2026
e1091bf
Play a move by dragging, because a capture needs it
IchNukeDichWeg Aug 8, 2026
fa69907
Promotions on the chess.com variants board
IchNukeDichWeg Aug 8, 2026
323629c
Version 3.1.222
IchNukeDichWeg Aug 8, 2026
25c2152
A chess.com game is not a bare FEN, and other things 3.1.222 got wrong
IchNukeDichWeg Aug 9, 2026
ffca64b
Report what the extension is actually doing
IchNukeDichWeg Aug 9, 2026
d8d2dc3
Version 3.1.223
IchNukeDichWeg Aug 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,2 +1,12 @@
*.dat.gz filter=lfs diff=lfs merge=lfs -text
*.nnue filter=lfs diff=lfs merge=lfs -text

lib/engine/stockfish-dev/*.nnue -filter -diff -merge -text
lib/engine/stockfish-18-small/*.nnue -filter -diff -merge -text
lib/engine/stockfish-18/*.nnue -filter -diff -merge -text
lib/engine/stockfish-17-79/*.nnue -filter -diff -merge -text
lib/engine/fairy-stockfish-14/nnue/*.nnue -filter -diff -merge -text

# README screenshots: they belong on GitHub, not inside the installed extension --
# keep them out of the release zip (git archive honours export-ignore).
docs/ export-ignore
49 changes: 49 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Something is broken
description: A bug, a site that stopped working, an engine misbehaving — no diagnosis needed.
labels: [bug]
body:
- type: markdown
attributes:
value: |
You don't need to know what caused it. Several of the worst bugs here were silent rather
than loud — autoplay skipping a move with nothing logged, an engine that never loaded — so
"it did nothing" is a real report, not a vague one.
- type: textarea
id: what
attributes:
label: What happened?
placeholder: It stopped playing moves on lichess this morning. Panel showed a move, nothing clicked.
validations:
required: true
- type: input
id: version
attributes:
label: Version
description: Shown at the top of the extension's settings page.
placeholder: "3.1.200"
- type: input
id: where
attributes:
label: Site and browser
placeholder: chess.com, Chrome 141 on Windows 11
- type: dropdown
id: windows-4pc
attributes:
label: Is this the Windows four-player setup?
description: >
If so, which stage failed? Native-messaging failures on Windows are silent — Chrome reports
the host as unavailable and says nothing about why — so the stage is most of the diagnosis.
options:
- "No, not four-player on Windows"
- "1. setup.sh does not produce build/tetrarch.dll"
- "2. `from tetrarch import core` raises"
- "3. `python uci.py` does not answer `go` in a terminal"
- "4. Engine works in a terminal, but the panel cannot find it"
- type: textarea
id: console
attributes:
label: Anything in the console?
description: >
Optional. Right-click the page → Inspect → Console, and for the worker, chrome://extensions
→ Mephisto → "service worker". Paste whatever looks relevant.
render: text
3 changes: 3 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Freeform issues stay enabled on purpose: "it did nothing this morning" is a useful report, and a
# required-fields form is a good way to lose it.
blank_issues_enabled: true
14 changes: 14 additions & 0 deletions .github/ISSUE_TEMPLATE/idea.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: Idea or request
description: A feature, a site to support, an engine to add, or just a thought.
labels: [idea]
body:
- type: markdown
attributes:
value: |
Most of what's in here exists because something was annoying in a real game. Half-formed is fine.
- type: textarea
id: idea
attributes:
label: What would you like?
validations:
required: true
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
.idea
.DS_Store

__pycache__/
*.pyc
56 changes: 56 additions & 0 deletions LICENSING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Licensing

This project bundles third-party engines, neural networks, and libraries under several
licenses. Because some of those components are copyleft, the licensing of the project as a
**whole distribution** is not simply the MIT license in [`LICENSE`](LICENSE). Please read this
file before redistributing.

## Short version

- The **original Mephisto source code** (by Alexandru Petrusca) and this fork's own source-code
changes are made available under the **MIT License** — see [`LICENSE`](LICENSE).
- However, the project **bundles and distributes** components licensed under **GPL-3.0**
(Stockfish, Fairy-Stockfish, and their NNUE nets; the Maia-1 nets and the Maia 2200 net) and
under **AGPL-3.0** (the Maia-3 model, and this project's Maia-3 encoder which is derived from
the Maia-3 source).
- Because AGPL-3.0 is the strongest copyleft here and it is one-way compatible with GPL-3.0, the
**combined work as distributed (the released .zip / the installed extension) is governed by the
GNU Affero General Public License, version 3** — see [`licenses/AGPL-3.0.txt`](licenses/AGPL-3.0.txt).
The GPL-3.0 text is included at [`licenses/GPL-3.0.txt`](licenses/GPL-3.0.txt).

MIT-licensed code stays MIT-licensed (MIT is compatible with, and may be included in, an
AGPL/GPL work); the copyleft obligations attach to the combined distribution.

## What that means if you redistribute

If you distribute this project (or a modified version), the AGPL-3.0 / GPL-3.0 terms require you to:

1. **Keep the license texts and notices.** Ship `LICENSE`, `LICENSING.md`, `THIRD-PARTY-NOTICES.md`,
and `licenses/` intact, and preserve the copyright/permission headers inside the bundled files.
2. **License your combined work under AGPL-3.0** and make **complete corresponding source** available
to the people you distribute to (this repository is that source for the JavaScript; see
`THIRD-PARTY-NOTICES.md` for where to obtain the source of the compiled engine binaries and of the
neural-network models).
3. **Do not add further restrictions** beyond those the licenses allow.

## Corresponding source

- This Git repository **is** the corresponding source for all of the project's own JavaScript/HTML/CSS.
- The **Stockfish** and **Fairy-Stockfish** engines are shipped as pre-compiled WebAssembly. Their
corresponding C++ source, and the source used to produce the WebAssembly builds, are available from
the upstream projects listed in `THIRD-PARTY-NOTICES.md`.
- The **Maia** neural networks (Maia-1, Maia 2200, Maia-3) are trained models. Their training code,
and where applicable the model weights in their original form, are available from the upstream
projects listed in `THIRD-PARTY-NOTICES.md`.

## Note on AGPL-3.0 §13 (network use)

The Maia-3 component is AGPL-3.0, whose §13 requires that users **interacting with a modified version
over a network** be offered its source. In this project Maia-3 runs **locally in the user's own
browser** (an offscreen document); it is not offered as a network service. §13 is therefore not
expected to be triggered by ordinary use of this extension. The ordinary copyleft obligations above
(source-on-distribution, license text, no added restrictions) still apply because the model and its
derived code are distributed.

*This file is a good-faith summary, not legal advice. If in doubt, consult a lawyer or the individual
upstream licenses.*
Loading