Repository navigation
Home
PariahBot is a self-hosted Discord bot that replaces a stack of single-purpose bots with one: temporary voice channels, self-service role menus, message auto-deletion, anti-spam (captcha + honeypot), moderation, banned words, giveaways, activity levels, Twitch and YouTube stream and upload alerts, Instagram post alerts, RSS feeds, a server log, and admin alerting.
All per-server state lives in a local SQLite database and is scoped by guild, so one server's configuration never affects another's.
| Page | What it covers |
|---|---|
| Bot-Setup | Creating the Discord application, permissions, and inviting the bot. Start here. |
| Container-Installation | Running the bot in Docker from the published image, with a setup script and an optional update job. |
| Host-Installation | Running the bot on a Linux host with systemd, plus the optional cron job that keeps it in sync with main. |
| AWS-Hosting | Setting up an EC2 instance for either install, and why not Fargate or Lambda. |
| Azure-Hosting | Setting up an Azure VM for either install, and why not Container Apps. |
| Permissions | Every permission and intent the bot needs, which feature uses it, and who can run each command. |
| Configuration | The hom.env file — every environment variable and what it does. |
| Admin-Dashboard | The optional web page where the bot's owner sees its status and changes settings for every server. |
| Server-Configuration | Setting the bot up inside a Discord server, in the order that actually works. |
| Commands | Every command and subcommand. |
| Troubleshooting | Why a command is missing, a role won't apply, or a feature silently does nothing. |
Each feature has its own page: how it works, how to set it up, every option, and what to check when it doesn't work.
| Feature | Command | What it does |
|---|---|---|
| Server-Roles | /setup |
The mod, member and streamer roles the other features depend on. Set these first. |
| Feature-Switches | /setup feature |
Switch whole feature sets off for your server, and back on. |
| Temp-Voice-Channels |
/voice, /vc
|
Join-to-create voice channels, with per-hub names and limits, that owners manage themselves (within controls admins set) and that delete themselves when empty |
| Role-Menus | /roles |
Menus where members pick their own roles |
| Verification | /security captcha |
New members pass a quick check to get the member role, optionally hiding the server until they do |
| Honeypot | /security honeypot |
A trap channel that removes spam bots who post in it |
| Moderation |
/mod, right-click |
Warn, kick, ban (permanent or temporary), softban and time out members, with safety checks, each member's history, and automatic timeouts for repeated warnings |
| Banned-Words | /bannedwords |
Blocks messages with banned words through Discord AutoMod |
| Auto-Delete | /autodelete |
Deletes a channel's messages after a set time or count |
| Admin-Alerts | /alerts |
Where the bot reports things admins should know about, plus the command audit log |
| Server-Log | /logging |
Kicks and bans, joins and leaves, message edits and deletes, and server changes, each section in its own channel |
| Streamer-Alerts | /streamers |
Twitch and YouTube live and upload alerts |
| Instagram-Alerts | /instagram |
New Instagram posts and reels, in their own channel |
| RSS-Feeds | /rss |
New items from RSS and Atom feeds, each feed in its own channel |
| Giveaways | /giveaway |
Timed giveaways members enter with a button |
| Activity-Levels | /level |
XP and levels from chatting, with a leaderboard |
- Create a Discord application, copy its token and application ID — Bot-Setup
- Install it on a Linux host, in a container (Container-Installation) or under
systemd(Host-Installation). On AWS or Azure, start with AWS-Hosting or Azure-Hosting - Invite the bot, then drag its role above any role it needs to hand out
- In Discord, run
/setup admin-role add,/setup mod-role addand/setup member-rolefirst — several features depend on them — Server-Configuration
The single most common setup failure is role hierarchy. Discord will not let a bot grant, remove, or moderate anyone whose highest role sits above the bot's own, no matter which permissions you ticked. If role-related features fail, check this before anything else.