- A bridge between Lichess API and bots.
- This bot is made with Python and it is running using Docker container and is concentrated on heroku.
- Import or Fork this repository to your Github.
- Open the
config.yml
file and insert your API access token in to token option and commit changes over here. - Install Heroku CLI and create a new app in Heroku.
Do note that in certain operating systems Heroku CLI doesn't get added to path automatically. If that's the case you'll have to add heroku to your path manually. - Run this command in cmd or powershell
heroku stack:set container -a appname
, whereappname
is replaced with your Heroku app's name. - In heroku, in the
Deploy
tab click onConnect to GitHub
and then click onsearch
and select your fork/import of this repository. - Now scroll down and under
Manual deploy
, click ondeploy
with themaster
branch selected.
Note: You could alsoEnable Automatic Deploys
with themaster
branch selected if you would like each commit you make to get automatically and easily deployed onto your bot. It is your choice whether you'd like to Enable or Disable Automatic Deploys. - After deploying wait for about 5 minutes till the build finishes and then in the
Resources
tab in heroku turnworker
dynos. If you do not see any option to enable any dynos, then you'll have to wait for about 5 minutes and then refresh your page on heroku.
You're now connected to lichess and awaiting challenges! Your bot is up and ready!
Engine:
- Stockfish 14 dev with the default NNUE.
Opening Books:
If you would like to run bot locally on PC, read the lichess-bot manual.
Changing the engine to an engine of your preference is simple. Just follow the following steps:
-
Firstly, you have to remove the engine used. To do this you need to put
#
at the start of these lines 16 to 18 in the dockerfile (or you can delete those lines). -
Then you need to download the binary of the chess engine you want to used and in your GitHub repository, Click on
Add files
and the clickUpload files
and upload the binary of the chess engine you have downloaded.
Note: Make sure you download a linux binary that is supported by heroku (by default Stockfish is used, but the default engine name is chess-engine
).
- Then change the name of engine in 6th line of config.yml and 23rd line of Dockerfile to your binary file's name.
- You can reset link in 20th line in Dockerfile to the Stockfish dev binary link from abrok.eu/stockfish
(You can set this
http://abrok.eu/stockfish/latest/linux/stockfish_x64_modern.zip
link for latest Stockfish dev binary)
- You can reset link in 21th line in Dockerfile to the Stockfish nnue binary link from https://tests.stockfishchess.org/nns.Also in config.yml you have to set the use NNue to true to use nnue after putting binary link . This will be done in config.yml in line 43.
Note: You need to use Linux x64 for modern computers
binary for Heroku.
Credits to Kingnandi and ChessGreatPlayer. They helped to collaborate and make this repository it contains codes of them and it is the best lichess repository to run bot in lichess by heroku server and a modified version of ShailChoksi.