Inviting the bot
Add Righteous with the right scopes and permissions, place its role so it can act, and confirm it arrived.
Adding Righteous takes one authorization screen. Making it able to do anything takes two more things: the right scopes on that screen, and its role sitting above the roles it has to act on. This guide covers all three, plus how to tell "the bot is broken" apart from "the bot isn't allowed".
Sort out access first, though. The bot leaves any server that isn't entitled, and it does it within seconds of joining.
Get an invite link
If you're already in a server that has Righteous, run
,inviteme. It replies with an invite button for the bot and
a second button for the support server. The link is built from the bot's live application, so it
never points at a stale one.
If you aren't in such a server, join the support server and take the link from there. You can also open the bot's Discord profile and use Add App, which starts the same authorization flow.
You need Manage Server in the server you're adding it to. Discord enforces that for every bot, and its server picker hides servers where you don't have it.
Authorize it with both scopes
The invite link asks for two scopes, and you need both.
| Scope | Why |
|---|---|
bot | Adds the bot as a member so it can read and send messages |
applications.commands | Registers the slash commands in your server |
Dropping applications.commands is the common mistake
Without it the bot joins fine and every prefix command works, but / shows nothing from
Righteous. There's no in-server fix. Re-run the invite link and authorize it again with the scope
included.
Leave Administrator ticked
The invite link asks for Administrator, and the practical answer is to grant it.
Righteous creates channels and roles, edits per-channel overwrites, bans and times people out, manages webhooks for log delivery, and moves members between voice channels. Trimming the permission set first means finding out what you removed one broken command at a time. You can always narrow it later.
If you'd rather not grant it, these are the requirements that aren't obvious from the command name:
| Feature | What the bot needs | Without it |
|---|---|---|
,antinuke | View Audit Log | Detection never fires. Nothing errors, because the bot never gets told an action happened |
,setup | Administrator | Refuses to run. It needs Administrator on you as well |
,voicemaster | Manage Channels, Manage Roles | Temporary channels aren't created, or arrive without the overwrites their panel depends on |
,autorole | Manage Roles | Roles aren't handed out on join |
,log | View Audit Log, plus Manage Webhooks for webhook delivery | Log entries still post, but say "executor unknown" instead of naming who did it |
| Moderation commands | Ban Members, Kick Members, Moderate Members, Manage Messages | Each command refuses on its own and names what's missing |
,antinuke check is worth running once you've set
protection up. It audits whether anti-nuke would actually fire, and a missing View Audit Log is
exactly the kind of thing it reports.
Move its role above what it manages
Discord's role hierarchy applies to bots exactly as it applies to people. A bot can't moderate a member whose highest role sits above its own, and it can't edit a role above its own either. This is the single most common reason a fully-permissioned bot refuses to act.
Open Server Settings → Roles and drag the Righteous role up. It needs to sit above:
- every role held by members you want moderated
- every role you want the bot to hand out, including autoroles, booster roles and verification
- the
Mutedandjailedroles, if you let,setupcreate them
It doesn't need to be at the top. It needs to be above the things it touches. Righteous checks hierarchy before it acts, so a role placed too low gets you a refusal that says so rather than a silent no-op.
Confirm it landed
Say something to it
Run /help in any channel the bot can see. The slash form is deliberate here — it works
whatever prefix your server uses, so a silent reply rules the prefix out as the cause.
Check the prefix form
Run ,help. If nothing happens, your server has changed its
prefix. ,prefix list reports what it answers to
now, and it needs Manage Server. Without that, ask a moderator.
Provision the basics
Move on to First five minutes and run the setup picker. It creates the roles and channels the rest of the bot expects to find.
Common issues
The bot joined and then left immediately. That server doesn't have access. The server owner gets a DM explaining it. See Access and the whitelist.
Slash commands don't appear. Re-invite with applications.commands, then give Discord a minute
and reload your client. Newly registered commands take a moment to show up in the picker.
The bot doesn't respond in one channel. If you didn't grant Administrator, check its View Channel and Send Messages on that channel specifically. A channel-level deny beats a server-level allow for every permission except Administrator.
A command refuses to act on a role or a member. The target sits above the bot in the role list. Drag the bot's role higher, above anything it needs to manage.
A command replies "Server not whitelisted". The bot is present but the server isn't entitled. That's Access and the whitelist again.