,,
,/ \
/ 'O |
( < _|
\___/
/ \
/_____\
/_______\
(________)
A UCI-compatible chess engine written in C++23.
FollyChess implements the Universal Chess Interface (UCI), so you can use it with a chess GUI such as Arena, Cutechess, BanksiaGUI, or HIARCS. You can also run it directly in a terminal. The source code is available on GitHub.
To build FollyChess, you need a C++23 compiler (Clang 17 or newer) and Bazel:
git clone https://github.com/aryann/follychess.git
cd follychess
bazel build --compilation_mode=opt //cli:follychess
The binary is written to bazel-bin/cli/follychess. Point your
chess GUI at it, or run it directly.
Commands you type are shown in bold; the rest is engine output.
$ bazel-bin/cli/follychess
,,
,/ \
/ 'O |
( < _|
\___/
/ \
/_____\
/_______\
(________)
FollyChess
position startpos moves e2e4 e7e5
d
8: r n b q k b n r
7: p p p p . p p p
6: . . . . . . . .
5: . . . . p . . .
4: . . . . P . . .
3: . . . . . . . .
2: P P P P . P P P
1: R N B Q K B N R
a b c d e f g h
w KQkq e6 0 2
go depth 3
info depth 1 score cp 67 nodes 63 nps 3847 tthits 0 tthitrate 0.00 pv d2d4
info depth 2 score cp 24 nodes 292 nps 17040 tthits 0 tthitrate 0.00 pv d2d4 d7d5 d4e5 d5e4 d1d8 e8d8
info depth 3 score cp 38 nodes 2653 nps 140782 tthits 14 tthitrate 0.01 pv d1h5 d7d6 h5d1
bestmove d1h5