← all repositories
clarkerubber/irwin

Lichess built a detective that studies your chess moves

Irwin is the anti-cheat engine that learns how cheaters play by grinding through games with Stockfish and TensorFlow.

525 stars Python Domain Apps
irwin
Not currently ranked — collecting fresh signals.
star history

What it does Irwin analyses chess games on Lichess to spot likely cheaters. It feeds player games through Stockfish, then runs the data through TensorFlow neural networks trained on known cheating patterns. Flagged accounts get reported to moderators for human review.

The interesting bit The architecture is deliberately modular: modules/irwin houses the ML brain, but the README notes it “can be replaced with other approaches to player assessment.” The core (modules/core) handles BSON serialisation, database interfaces, and generic datatypes—boring infrastructure that makes the swap possible. Also, it’s named after Steve Irwin, which is either charming or slightly ominous for the accused.

Key highlights

  • Uses Stockfish analysis of principal variations (PVs) to detect anomalous engine-like play
  • Trains on a database of analysed players; needs “a few hundred” to get started
  • Modular design separates ML logic from data plumbing and Lichess API interaction
  • Companion web app exists for visualising reports (screenshot in README)
  • Replaces an earlier system called “cheatnet” with a “dramatically more modular” and faster approach

Caveats

  • Setup is involved: requires MongoDB, Stockfish config, Lichess API token, and TensorFlow installation
  • No mention of current maintenance status; 526 stars but no recent activity indicators in the provided sources
  • Training data requirements are vague—“a few hundred” players is a hand-wavy starting point

Verdict Worth a look if you run a chess platform or study anti-cheat systems. Skip it if you want a drop-in tool; this is infrastructure you assemble and tune yourself.

Frequently asked

What is clarkerubber/irwin?
Irwin is the anti-cheat engine that learns how cheaters play by grinding through games with Stockfish and TensorFlow.
Is irwin open source?
Yes — clarkerubber/irwin is open source, released under the AGPL-3.0 license.
What language is irwin written in?
clarkerubber/irwin is primarily written in Python.
How popular is irwin?
clarkerubber/irwin has 525 stars on GitHub.
Where can I find irwin?
clarkerubber/irwin is on GitHub at https://github.com/clarkerubber/irwin.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.