Every moderation action creates a numbered case, so staff can see what happened and why.
Before you begin
- You need Manage Server to change settings. Each command needs its own permission.
- Discortics needs Send Messages, Embed Links, Manage Roles, Ban Members, Kick Members, Timeout Members, and Manage Channels.
- Keep its role above the members it moderates and any Muted or Member Role.
Configure moderation
Configure from the Dashboard
- Open Dashboard → Moderator → General.
- Choose a private modlog channel.
- Choose a Muted Role, and a Member Role if your server uses one.
- Choose which actions DM the member.
- Save, then test a reversible action with a staff test account.
[Insert screenshot here]
The General tab on Dashboard → Moderator
Settings
| Setting | What it does |
|---|---|
| Modlog Channel | Receives moderation cases and Automoderation logs. Keep it private |
| Muted Role | Given by /mute. Create new role sets it up and denies communication across channels |
| Member Role | Used by /lock and /unlock. If empty, they apply to @everyone |
| DM Notices | Choose per action whether the member gets a DM |
| Case Count | The number of cases recorded |
The muted role can't be a managed role, @everyone, or a role with risky permissions.
[Insert screenshot here]
Modlog Channel and Muted Role selected on the General tab
DM notices: Warn, Mute, Unmute, Timeout, Ban, and Kick send a DM by default. Untimeout and Unban don't. If a member's DMs are closed, the action still completes.
Mute or timeout?
| Mute | Timeout | |
|---|---|---|
| How it works | Gives a role that denies sending | Uses Discord's built-in timeout |
| Setup | Set a Muted Role first | None |
| Duration | Optional, or permanent | Required |
| Leaving and rejoining | Role is given back if the mute is active | Discord keeps it in place |
Commands
| Command | What it does | Permission |
|---|---|---|
/warn user: reason: | Records a warning and a case | Kick Members |
/mute user: duration: reason: | Gives the Muted Role, such as for 10m, 2h, or 7d | Timeout Members |
/unmute user: reason: | Removes the Muted Role | Timeout Members |
/timeout user: duration: reason: | Times out the member. Over 28 days is supported | Timeout Members |
/untimeout user: reason: | Removes the timeout | Timeout Members |
/ban user: duration: purge: reason: | Bans the member, optionally for a set time | Ban Members |
/softban | Bans, deletes recent messages, then unbans | Ban Members |
/unban user: reason: | Unbans a user by ID | Ban Members |
/kick user: reason: | Removes the member. They can rejoin with an invite | Kick Members |
/lock channel: duration: reason: | Stops messages and new threads for the Member Role | Manage Channels and Manage Roles |
/unlock channel: reason: | Reverses a lock | Manage Channels and Manage Roles |
/purge amount: | Deletes recent messages, with filters | Manage Messages |
/nuke | Deletes and recreates the channel, keeping its settings | Administrator |
/slowmode duration: | Sets slow mode, such as 5s, or off | Manage Channels |
/nickname user: new-nick: | Changes a nickname | Manage Nicknames |
/cases user: action: case: | Browses and filters cases | Kick Members |
/remove-case case: user: | Hides a case, or all of a user's cases | Kick Members |
/scheduled-actions list | Lists pending unmutes, unbans, unlocks, and timeout extensions | Manage Server |
/scheduled-actions delete job: | Cancels a pending action | Manage Server |
/settings moderation | Opens the settings panel | Manage Server |
Most commands have a 3-second cooldown, and /nuke has 10 seconds. Role hierarchy always applies.
Purge filters
Filters combine, so only messages matching all of them are deleted. Discord can't bulk-delete messages over 14 days old.
| Filter | What it matches |
|---|---|
user | One user's messages |
links | All links, or Discord invites |
from | Humans or bots |
filter | Embeds, files, reactions, emoji, or pins |
contains | Exact text |
mentions | All mentions, user, role, channel, or everyone and here |
emoji | A specific emoji |
regex | A regex pattern, not case-sensitive |
Temporary actions
Mutes, bans, and locks with a duration reverse automatically. Timeouts over 28 days extend automatically. Reversing an action manually cancels its pending job. See them all with /scheduled-actions list.
Right-click commands
Right-click a member and open Apps for Mod Warn, Mod Mute / Unmute, Mod Timeout, Mod Kick, Mod Softban, Mod Ban, and Mod Cases. Premium also adds Verify Request and Whitelist.
Right-click a message for the same actions on its author, plus Giveaway End, Giveaway Reroll, and Purge until Here.
- These are private, and show the details before you select Confirm. Use Change Reason and Change Duration where available.
- Normal permissions, command rules, and role hierarchy apply.
- Timeout takes up to 28 days. Mute and Ban can be permanent.
- Purge until Here includes the selected message, covers up to 1,000 messages, and skips any over 14 days old.
- Whitelist exempts a member from Verification or Automoderation modules you choose. Discord's own AutoMod may still block their messages.
- Verify Request sends a verification DM without resetting their status.
User modlogs also have a dropdown of follow-up actions. Each one asks you to confirm and writes a new log.
Troubleshooting
"Muted role has not been set." Run /settings moderation and choose a Muted Role below Discortics' highest role.
Discortics can't mute or time out someone. Check for Manage Roles or Timeout Members, and that the target's highest role is below Discortics.
A muted member can still speak. Check that the Muted Role denies Send Messages in that channel, and that the Discortics role is above it.
A case is missing from the modlog. Check that the channel exists and Discortics has View Channel, Send Messages, and Embed Links there.
A scheduled unban didn't happen. A newer ban or manual unban replaces the job. Check /scheduled-actions list.
I need a user's ID. Turn on Developer Mode in Discord's User Settings → Advanced, then right-click the user and select Copy User ID.
Prefer one-line commands? See Direct Commands.