Lucid is a fully open-source, general purpose moderation and administration discord bot build in discord.py.
The bot is built to make self-hosting very easy, including hosting multiple instances of the bot at once.
NOTE: If you haven't already, create a Discord application and bot using the Discord Developer Portal. A guide on how to do so can be found here. Ensure that your bot application has the server members intent enabled, like this.
To install Lucid, begin by cloning the repository:
$ git clone https://github.com/viargentum/lucid-bot
Then, copy the config.json file found in the examples directory to your working directory:
$ cp examples/config.json .
Fill in all of the empty values, including your bot token.
The suggested way to run Lucid is through docker and docker-compose. Ensure you have the latest installations of docker and docker-compose, and the docker daemon is running. Then run:
$ docker-compose up --build -d
This will start a new daemonized compose network with the bot and redis containers. If you've followed these steps correctly, you should be done. You can check if the containers are running with:
$ docker ps
It should show that two containers are running.
To stop the bot at any time, make sure you're in the working directory, and run:
$ docker-compose stop
This will persist your redis db data. If you would like to completely reset the bot and its db, run:
$ docker-compose down
Command | Permission | Usage |
---|---|---|
announce | administrator | ,announce |
ban | banmembers | ,ban @user OR ,ban |
editlog | administrator | ,editlog (,help for more) |
help | N/A | ,help |
info | N/A | ,info |
kick | kickmembers | ,kick @user OR ,kick |
lockdown | managechannels | ,lockdown OR ,lockdown lift |
mute | kickmembers | ,mute @user OR ,mute |
ping | N/A | ,ping |
profile | N/A | ,profile <username> |
purge | managemessages | ,purge <amount> |
reload | isbotowner | ,reload <cog> |
report | N/A | ,report |
repost | administrator | ,repost (,help for more) |
say | managemessages | ,say <message> |
slowmode | managechannels | ,slowmode OR ,slowmode lift |
unban | banmembers | ,unban <id> |
unmute | kickmembers | ,unmute @user OR ,unmute |