PaulCLI logoPaulCLI

Bot permissions

Which Discord permissions PaulCLI needs, and why role position matters.

PaulCLI asks for a broad permission set on invite so that any module works out of the box. If you trim permissions, use this table to know what each module needs.

ModulePermissions used
SuggestionsSend Messages, Manage Messages (deletes the original post), Create Public Threads (auto-thread)
AutoModManage Messages, Moderate Members (timeouts)
WelcomeSend Messages, Attach Files (image cards)
LoggingSend Messages in the log channel (or a webhook)
GiveawaysSend Messages, Embed Links
Stats channelsManage Channels (renames)
ModerationKick Members, Ban Members, Moderate Members
RSSManage Webhooks (creates one per feed)
TicketsManage Channels, Manage Roles (channel overwrites), Read Message History (transcripts)
StarboardSend Messages, Embed Links in the starboard channel
Auto voiceManage Channels, Move Members
Economy / LevelsSend Messages, Attach Files, Manage Roles (rewards)
Auto rolesManage Roles
WorkflowWhatever the actions you use require — see the Workflow reference

Role hierarchy

The most common cause of “it does nothing”

Discord only lets a bot manage roles below its own highest role, and only moderate members whose highest role is below the bot's. Drag the PaulCLI role near the top of Server Settings → Roles and most “missing permissions” problems disappear.

Modules check this before acting and report it clearly — Moderation commands reply with an ephemeral error, Workflow stores it as the workflow's last error, and queued dashboard actions are marked FAILED with the reason.

Privileged intents

The bot uses the Server Members, Presence and Message Content privileged intents. These are enabled by the bot owner in the Discord Developer Portal — nothing for server admins to configure.