zurichess: a chess engine | Reference Build Status

zurichess is a chess engine and a chess library written in Go. Its main goals are: to be a relatively strong chess engine and to enable chess tools writing. See the library reference.

zurichess is NOT a complete chess program. Like with most other chess engines you need a GUI that supports the UCI protocol. Some popular GUIs are XBoard (Linux), Eboard (Linux) Winboard (Windows), Arena (Windows).

zurichess partially implements UCI protocol, but the available commands are enough for most purposes. zurichess was successfully tested under Linux AMD64 and Linux ARM7 and other people have tested zurichess under Windows AMD64.

zurichess plays on FICS under the handle zurichess. Usually it runs code at tip (master) which is a bit stronger than the latest stable version.

Build and Compile

First you need to get the latest version of Go (currently 1.7.4). For instructions how to download and install Go for your OS see documentation. After the Go compiler is installed, create a workspace:

$ mkdir gows ; cd gows
$ export GOPATH=`pwd`

After the workspace is created cloning and compiling zurichess is easy:

$ go get -u
$ $GOPATH/bin/zurichess --version
zurichess (devel), build with go1.5 at (just now), running on amd64


Precompiled binaries for several platforms and architectures can be found on the downloads page.



Pages and articles with a lot of useful information on chess programming which helped development of Zurichess.


This project is not associated with my employer.