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.

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.

ScopeWhy
botAdds the bot as a member so it can read and send messages
applications.commandsRegisters 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:

FeatureWhat the bot needsWithout it
,antinukeView Audit LogDetection never fires. Nothing errors, because the bot never gets told an action happened
,setupAdministratorRefuses to run. It needs Administrator on you as well
,voicemasterManage Channels, Manage RolesTemporary channels aren't created, or arrive without the overwrites their panel depends on
,autoroleManage RolesRoles aren't handed out on join
,logView Audit Log, plus Manage Webhooks for webhook deliveryLog entries still post, but say "executor unknown" instead of naming who did it
Moderation commandsBan Members, Kick Members, Moderate Members, Manage MessagesEach 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 Muted and jailed roles, if you let ,setup create 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.