Core moderation
All actions are source-agnostic — whether you trigger them from the dashboard, the/mod slash command, or AutoMod, they produce the same case row with the same case number.
| Action | What it does |
|---|---|
| Ban | Permanent or time-bound. Auto-unban when the duration expires. |
| Softban | Ban + immediate unban to purge the user’s recent messages. |
| Kick | Removes the member. They can rejoin with a new invite. |
| Mute | Discord timeout. 60s to 28d. |
| Warn | Logs + DMs the target. Warns decay after N days (configurable). |
| Note | Staff-only note. No DM, no Discord-side action. |
| Purge / Lock / Unlock / Slowmode | Channel-level ops, audit-only. |
mod_cases with a monotonic case number per guild. The Case Browser lets you filter by action, source, moderator, or user.
AutoMod
Ten rule types, all with shared config surface (triggers, exempt roles, exempt channels, action chain):- Spam — rate-limit messages per user.
- Mention spam — cap unique mentions per message.
- Links — block all, or allow-list specific domains.
- Invite — block Discord invite links with optional whitelist.
- Regex — custom pattern matching with tested preview.
- New account — flag users whose account age is below a threshold.
- Image only — restrict a channel to image-only messages.
- Caps — flag messages with too much uppercase.
- Emoji spam — cap repeated emoji per message.
- Duplicate messages — detect copy-paste across channels.
Anti-raid
Lockdown mode. One click from the dashboard or/raid lock slash command:
- Raises the server verification level to Highest.
- Records the previous setting so unlock restores it.
- Announces the lockdown with reason + expected duration.
Anti-nuke
Protects against compromised admin accounts. Quotas per event type with audit-log actor lookup:- Channel deletes
- Role deletes
- Bans
- Kicks
- Webhook creates
- Strips their roles, bans them, or moves them to a quarantine role (your choice).
- Optionally auto-reverts ban/kick actions they took while over quota.
- Posts an alert to the configured channel with actor, event count, and revert summary.
Verification gate
Post a button message. When new members click:- Account age is checked against your minimum (e.g. 7 days).
- If pass, the configured verified role is assigned.
- If fail, they get an ephemeral message explaining why.
Logging
By default, all moderation events go to one channel. Premium upgrade: per-event routing. Send:- Mod actions →
#mod-log - Member joins/leaves →
#join-log - Channel/role/emoji CRUD →
#audit-log - AutoMod triggers →
#automod - Voice events →
#voice-log - Anti-nuke alerts →
#alerts
Welcome + leave
Pick a channel, write a message (tokens like{user}, {server}, {server.membercount} supported), optionally post an embed. Auto-role on join applies a role to every new member after verification.
Custom commands
Text or embed responses, triggered by/<name> slash commands. Token language:
{user}— mention the invoker{server}— server name{channel}— current channel{random:A|B|C}— pick one at random{if_role_has:ID:then|else}— conditional on role