asyncLio-bot is a bridge between UCI chess engines and Lichess using an async/await pattern. It handles multiple concurrent games and includes a matchmaker.
To run asyncLio-bot using Docker:
- Clone the repo as
git clone https://github.com/Heiaha/asyncLio-bot.git. - Copy
config.default.ymltoconfig.ymland customize to your liking. - Create a
.envfile with your Lichess OAuth token:LICHESS_TOKEN=your_token_here - Place your chess engines in the
engines/directory and opening books in thebooks/directory. - Run
docker-compose up -dto start the bot in detached mode.
Docker Commands:
docker-compose up -d- Start the bot in the backgrounddocker-compose logs -f- View bot logsdocker-compose down- Stop the botdocker-compose restart- Restart the bot
To use asyncLio-bot (requires Python 3.10 or later):
- Clone the repo as
git clone https://github.com/Heiaha/asyncLio-bot.git. - Copy
config.default.ymltoconfig.ymland customize to your liking. - Install the required packages in your environment (preferably using venv or conda) like
python -m pip install -r requirements.txt.
- Create an account for a BOT on Lichess.
- Create a new OAuth token with the "Play games with the bot API" permission.
- Add this token to a
.envfile as:LICHESS_TOKEN=your_token_here
To use asyncLio-bot your account must be upgraded to a BOT, which requires it to not have played any games.
Make sure this is something you desire, as it is irreversible.
For a bit more information, see the relevant announcement.
To upgrade your account, make sure your OAuth key is in the .env file and run python main.py --upgrade
Significant inspiration for this repository is drawn from lichess-bot and BotLi.