Source Authorship Forensics
How the collection is made: the two axes, the methodology, the coverage, and where everything is saved.
A companion project on this site: a source-level read of chess-engine repositories, judging each on two independent axes — authorship (human, AI, or in between) and Stockfish similarity (independent vs. built on Stockfish). Every engine is cloned, its git history and code scanned for tell-tale fingerprints, and contrasted with Stockfish. Live index: /engine-analysis/.
| Band | Meaning |
|---|---|
| AI-generated | The code itself was produced by AI; the human role is direction / prompting. |
| AI-assisted | A person's own project, with an AI assistant used as a tool in the loop. |
| Human-written | Authored by a person — hobbyist to expert to veteran. |
| Rating | Meaning |
|---|---|
| Derived | Builds directly on Stockfish's code or network. |
| Strong | Re-implements Stockfish's techniques independently (bitboards + NNUE + LMR/NMP/SEE). |
| Moderate | Modern architecture with its own distinct choices. |
| Independent | Own board representation / hand-crafted eval / unusual language. |
The axes are orthogonal: a human engine can be very Stockfish-like (Catalyst), and "Strong similarity" means shared technique, never shared code.
For each engine:
[cite: N] markers (Luna had 147).claude npm dependency / node_modules/claude (Owen).CLAUDE.md project file (Triumviratus, Arasan).id author Dylan (with Claude)).Verdicts infer authorship from convergent evidence; they are well-supported readings, not certifications.
Mostly from the TalkChess "New engine releases H1 2026" thread.
| Engine | Authorship | SF sim. |
|---|---|---|
| Luna | 🔴 AI-generated (careless paste, Gemini; dev-confirmed) | Moderate |
| Owen | 🔴 AI-generated (agent-built, Claude Code) | Derived |
| Triumviratus | 🟠 AI-assisted (expert human-led) | Derived |
| Onyx | 🟠 AI-assisted (self-disclosed) | Moderate |
| Askaig | 🟠 AI-assisted (self-disclosed, Claude Fable 5) | Strong |
| Pawnstar | 🟠 AI-assisted (veteran-led, since 2014) | Strong |
| Amira | 🟠 AI-assisted (human + LLM) | Independent |
| rudim | 🟢 Human | Strong |
| Crustik | 🟢 Human (hobbyist C) | Independent |
| Catalyst | 🟢 Human (expert) | Strong |
| tomitankChess | 🟢 Human (9-yr JS lineage) | Independent |
| Ember | 🟢 Human (collaborative) | Strong |
| Lozza | 🟢 Human (veteran JS) | Moderate |
| chessnix | 🟢 Human (Zig) | Independent |
| Ratsu | 🟢 Human (Rust) | Independent |
| Gyatso | 🟢 Human (Nim) | Moderate |
| Porcupine | 🟢 Human (Rust) | Independent |
CLAUDE.md — the only AI-marker hit in the whole elite sweep), Chess System Tal (this site's own engine, CCRL #19).Each analysis is a self-contained HTML page (inline CSS, theme-aware light/dark, responsive, GoatCounter view-counter) at /<slug>-analysis/.
#engine-forensics) with a summary blurb and three cards, plus a nav link.The pages share one CSS/scaffold. Generators are archived in tools/ in the repository: gen_pages.py (the TalkChess pages), gen_ccrl.py (the CCRL standouts), and add_sfsim.py (injects the "Stockfish similarity" header line into each page).
To add a new engine: clone & run the tests → pick a verdict + SF-similarity → author the page (copy an existing *-analysis/ as a template) → add a row/link to /engine-analysis/ (and the CCRL survey if applicable) → deploy.