/lichess-bot

A bridge between Lichess API and chess engines

Primary LanguagePythonGNU Affero General Public License v3.0AGPL-3.0

lichess-bot

lichess-bot

A bridge between lichess.org and bots.
Explore lichess-bot docs »

Python Build Python Test Mypy

Overview

lichess-bot is a free bridge between the Lichess Bot API and chess engines.

With lichess-bot, you can create and operate a bot on lichess. Your bot will be able to play against humans and bots alike, and you will be able to view these games live on lichess.

See also the lichess-bot documentation for further usage help.

Features

Supports:

  • Every variant and time control
  • UCI, XBoard, and Homemade engines
  • Matchmaking (challenging other bots)
  • Offering Draws and Resigning
  • Accepting move takeback requests from opponents
  • Saving games as PGN
  • Local & Online Opening Books
  • Local & Online Endgame Tablebases

Can run on:

  • Python 3.9 and later
  • Windows, Linux and MacOS
  • Docker

Steps

  1. Install lichess-bot
  2. Create a lichess OAuth token
  3. Upgrade to a BOT account
  4. Setup the engine
  5. Configure lichess-bot
  6. Run lichess-bot

Advanced options


Acknowledgements

Thanks to the Lichess team, especially T. Alexander Lystad and Thibault Duplessis for working with the LeelaChessZero team to get this API up. Thanks to the Niklas Fiekas and his python-chess code which allows engine communication seamlessly.

License

lichess-bot is licensed under the AGPLv3 (or any later version at your option). Check out the LICENSE file for the full text.