Repository navigation
PariahBot 2.0 adds a server log: what happens in your server, posted to channels you choose. It ships as a container image for amd64 and arm64, as well as the systemd install.
📖 Documentation: setup, configuration, per-server walkthroughs and troubleshooting.
⚠️ Before you update: switch on Server Members Intent
The bot now always asks Discord for the privileged Server Members intent, which the server log's joins and leaves need. Until you switch it on, Discord refuses the bot's login.
- Open the Discord Developer Portal → your application → Bot.
- Under Privileged Gateway Intents, switch on Server Members Intent.
- Save Changes, then update.
Do this first if your install updates itself: the systemd sync job or the container update job. If you forget, the bot prints which switch to turn on and exits, rather than sitting offline. Discord reviews this intent only for bots in 100 or more servers.
Container image
ghcr.io/cosmiccubicle/pariahbot:2.0.0
| Tag | Follows |
|---|---|
2.0.0 |
This release. Never changes |
2.0 |
The newest 2.0.x release |
latest |
Every change merged to main |
sha-<commit> |
One specific build |
Both amd64 and arm64 (Raspberry Pi with a 64-bit OS, AWS Graviton) are in each tag.
Install on any Linux host with Docker. On Ubuntu, the script can install Docker for you:
git clone --branch v2.0.0 https://github.com/CosmicCubicle/PariahBot.git
cd PariahBot
sudo ./deploy/container-setup.shThe script asks for your token, IDs, dashboard settings, and whether the server log shows message text. It then pulls the image, starts it with Docker Compose and registers the commands, and offers an update job. It follows latest. To move only on releases, put this in /opt/pariahbot-container/.env:
PARIAHBOT_IMAGE=ghcr.io/cosmiccubicle/pariahbot:2.0What's new
Server log (/logging, and a Logging tab on the dashboard)
- Four sections, each with its own channel and on/off switch:
- Kicks and bans: by anyone. Ones the bot carried out name their case, e.g. #12, through the bot by @moderator.
- Joins and leaves: with account age, and the roles a leaver had.
- Messages: edits and deletes, with a link. Bot messages and auto-delete channels are left out.
- Server changes: roles and channels created, edited or deleted, permission changes, and members gaining or losing roles, with who did it. The bot's own changes, such as temporary voice channels and role menus, are left out.
- Problems are explained.
/logging statusand each dashboard card say what's stopping a section, worded as the fix. - Message text is an opt-in for the bot's host. Say yes in a setup script, or set
SERVER_LOG_MESSAGE_CONTENT=true, after switching on Message Content Intent. Edits then show Before and After, and deletions show the Text. Recent messages are kept in memory for up to a day, only for servers logging messages. - New permission: View Audit Log. Kicks and bans, and server changes, need it. The standard invite has always included it.
- It can be switched off per server like any other feature:
/setup feature disable feature:logging.
Setup and hosting
- Both setup scripts ask whether the server log shows message text, and remind you about Server Members Intent at the end of every run.
- The owner's Status page on the dashboard shows whether message text is on.
- Faster, more reliable arm64 builds: the image's dependencies install without emulation.
Upgrading from 1.x
- Switch on Server Members Intent (above).
- Check View Audit Log. If you invited the bot with the Required-only link, add View Audit Log to its PariahBot role in Server Settings → Roles. The Recommended invite already has it.
- Update:
- Container:
cd /opt/pariahbot-container && sudo docker compose pull && sudo docker compose up -d, or let the update job do it. systemd: in your clone,git pull, thensudo ./deploy/setup.sh, pressing Enter to keep each setting. The sync job picks it up by itself.
- Container:
- Set up the log in each server:
/logging set section:… channel:#…. Every section starts off.
The database upgrades itself on startup; a new table holds the log settings.
Install without containers
Under systemd, on Debian or Ubuntu, with Node.js 24+ installed by the script:
git clone --branch v2.0.0 https://github.com/CosmicCubicle/PariahBot.git
cd PariahBot
sudo ./deploy/setup.shSee Host Installation. On AWS or Azure, start with AWS Hosting or Azure Hosting: either install runs on a small Ubuntu VM.
Full guide to the new feature: Server Log
Full changes: v1.1.0...v2.0.0