Skip to main content

Overview

Slug uses a combination of Discord’s built-in role hierarchy and its own advanced access control systems (like Extra Owners and Fake Permissions) to determine who can run which commands. Understanding this hierarchy is crucial for securing your server.

The Hierarchy

When a member attempts to run a command, slug evaluates their permissions from top to bottom. If they meet a higher tier, they bypass lower restrictions.
  1. Server Owner: The user who owns the Discord server. They have absolute access to every command and configuration in slug.
  2. Extra Owners: Users added via the ;extraowner command. They are granted identical privileges to the Server Owner (excluding destructive bot-level commands) and bypass all standard permission checks.
  3. Administrators: Users with the Administrator Discord permission. They can run almost all configuration commands.
  4. Fake Permissions: Slug’s custom permission system. Users granted a “Fake Permission” (e.g., Fake Admin, Fake Ban) can use the respective commands without actually holding those dangerous permissions in Discord.
  5. Command-Specific Allowed Users: Members who have been explicitly allowed to use a command via role or user whitelists (e.g., via the ;allow command for specific modules).
  6. Standard Role Hierarchy: For moderation commands (like kick or ban), slug strictly obeys Discord’s native role hierarchy. A moderator cannot ban a user whose top role is higher than or equal to the moderator’s top role, even if they have the necessary command permissions.

Discord Requirements

For slug to function properly and enforce hierarchy rules, it must have its integration role placed high up in the role hierarchy. Slug cannot manage or punish users who have a role higher than the bot itself. While granting the Administrator permission is the easiest way to ensure slug can perform all its duties, it is not strictly required. As long as slug is granted the specific permissions needed for its configured modules (e.g., Manage Roles, Ban Members, Manage Channels), it will function correctly.

Advanced Access Control

Slug provides several ways to customize access beyond Discord’s default permissions:

Fake Permissions

If you want your moderators to use ;ban or ;kick but don’t want to give them native Discord Ban/Kick permissions (to prevent them from using the standard Discord UI or other bots), you can assign them Fake Permissions. Read more about Fake Permissions

Extra Owners

For co-owners or highly trusted server managers, you can grant them Extra Owner status. This gives them unrestricted access to configure slug without needing the Server Owner to transfer ownership. Read more about Extra Owners

Command Disabling

If you don’t want anyone to use a specific command, you can use the built-in disable command to restrict it globally or in specific channels.