How to Use Integral Chess Engine

XB

November 3, 2025

Integral is a strong, modern chess engine written in C++. Below is a simple, easy-to-follow guide that explains how to download Integral, how to get it working, and a quick note that you can also use Integral through IntegralBot on Lichess if you don’t want to build anything.

1. Downloading Integral

You can get Integral in two common ways:

A. Download a release (binary)

  • Check the project’s Releases on GitHub. If the author provided a binary for your platform (Windows, macOS, Linux), you can download that file and run it directly without compiling.
  • If a binary is available, also download any accompanying evaluation/network files (.nnue) that the release mentions.

B. Download the source code (and build it yourself)

  • If there is no prebuilt binary for your platform, download the source. Two simple options:
    • Use git: git clone https://github.com/aronpetko/integral cd integral
    • Or download the ZIP of the repository and unzip it locally.
  • Building usually requires a modern C++ compiler (README notes GCC ≥ 13 or Clang ≥ 10), plus make or cmake.

2. Prepare the evaluation/network file (.nnue)

Integral uses an NNUE network for evaluation. The engine may not include the .nnue file in the source ZIP, so you typically must:

  • Download the correct .nnue file separately (the project often stores network weights in a related repository or in release assets).
  • Some projects embed the NNUE in source via an “incbin” step; other projects load it at runtime from a file. Read the engine README to follow the exact expected workflow.

3. Building (if you downloaded source)

A standard quick flow on Linux / WSL:

# install compiler (example)
sudo apt update
sudo apt install build-essential cmake git g++-13

# build
cd integral
make native   # or another target listed in the Makefile

If the build fails because the engine expects an embedded NNUE, follow the repo’s instructions to generate the embedded file (often a small tool converts the .nnue into a C source file before building).

On Windows, consider using WSL (Windows Subsystem for Linux) or check if a Windows binary is available in the Releases.

4. Running Integral and analyzing games

Integral speaks the standard UCI protocol, so you can:

  • Use any UCI-compatible GUI (Cute Chess GUI, Arena, Scid, etc.): add the Integral binary as an engine, then load PGN or FEN and start analysis.
  • Or use the command line and UCI commands:
./integral
# then send UCI text commands like:
uci
isready
position startpos
go depth 20

You can also set MultiPV (multiple variations) and other options to get richer analysis.

5. Quick alternative: IntegralBot on Lichess

If you don’t want to download or build anything, you can still use Integral by playing against IntegralBot on Lichess. That’s the fastest way to try the engine for games or quick analysis without dealing with compilation or NNUE files.