AutoMod & Moderation
Protect your community automatically with spam filters, bad word blocking, anti-nuke, and a full suite of moderation commands.
ShadowCore comes with a powerful two-layer protection system: AutoMod for automatic rule enforcement, and manual moderation commands for staff. Together they give you complete control over your server's safety.
AutoMod — Automatic Protection
AutoMod watches your server's messages automatically and acts on violations based on your configuration.
Quick Setup with Autosetup
/mod autosetup
Automatically creates a #mod-logs and #audit-logs channel and links them to ShadowCore's logging system. The fastest way to get started.
Enabling AutoMod Filters
Toggle individual protection modules on or off:
/automod toggle <filter> status: Enable
/automod toggle <filter> status: Disable
| Filter | Command | What it blocks |
|---|---|---|
| Anti-Spam | anti-spam |
Rapid repeated messages in a short window |
| Anti-Invites | anti-invites |
Discord invite links from other servers |
| Anti-Links | anti-links |
All external URLs |
| Anti-Bad Words | anti-badwords |
Words on your custom block list |
| Anti-Mention | anti-mention |
Mass user mentions in a single message |
| Anti-All Caps | anti-all-caps |
Messages that are mostly capital letters |
| Anti-Emoji Spam | anti-emoji-spam |
Messages flooded with emojis |
| Anti-Zalgo | anti-zalgo |
Zalgo/cursed text characters |
Managing the Whitelist
Whitelisted users and roles are exempt from all AutoMod rules.
/automod whitelist add target: @User_or_Role
/automod whitelist remove target: @User_or_Role
/automod whitelist list
Bad Word Management
Add or remove words from your server's blocked word list:
/automod badwords add word: <word>
/automod badwords remove word: <word>
/automod badwords list
Allowing specific words that contain bad words
Sometimes a word triggers the filter even though it's fine in context. Whitelist it:
/automod badword-whitelist add word: <word>
/automod badword-whitelist remove word: <word>
/automod badword-whitelist list
Ignored Channels
Some channels (e.g. #staff-chat) should be exempt from AutoMod entirely:
/automod ignored-channels add channel: #channel
/automod ignored-channels remove channel: #channel
/automod ignored-channels list
Log Channels
/automod logs mod-log channel: #channel # AutoMod violation logs
/automod logs audit-log channel: #channel # Message edits/deletes audit trail
AntiNuke System
AntiNuke protects your server against raid attacks and compromised admin accounts. If someone performs destructive actions (mass banning, deleting channels, etc.) too quickly, ShadowCore automatically punishes them.
Enable AntiNuke
/automod antinuke toggle status: Enable
Configure protection modules
/automod antinuke module <module> status: Enable
| Module | Protects against |
|---|---|
massBan |
Rapid mass banning of members |
massKick |
Rapid mass kicking of members |
channelCreate |
Rapidly creating many channels |
channelDelete |
Rapidly deleting channels |
roleDelete |
Rapidly deleting roles |
webhookCreate |
Mass webhook creation (common in raids) |
adminGrant |
Giving admin to many users quickly |
Set thresholds
/automod antinuke threshold <module> count: 3 seconds: 10
For example: trigger if 3 or more channel deletions happen within 10 seconds.
Set punishment
/automod antinuke action <module> action: ban
Available actions: kick, ban, dehoistRole (strip all roles), none (log only)
AntiNuke whitelist (trusted admins)
/automod antinuke whitelist action: add target: @Admin
Add trusted users/roles that are immune from AntiNuke punishments.
Set AntiNuke log channel
/automod antinuke log-channel channel: #antinuke-logs
View current AntiNuke config
/automod antinuke status
Manual Moderation Commands
All moderation commands use /mod. They require appropriate permissions (Kick Members, Ban Members, Manage Messages, etc.).
Member Actions
| Command | Permission | Description |
|---|---|---|
/mod ban user: @User [reason] |
Ban Members | Bans a user from the server |
/mod kick user: @User [reason] |
Kick Members | Kicks a user from the server |
/mod timeout user: @User duration: <minutes> [reason] |
Moderate Members | Temporarily mutes a user |
/mod mute user: @User [reason] |
Moderate Members | Mutes a user in voice channels |
/mod unmute user: @User |
Moderate Members | Unmutes a user |
/mod unban user_id: <id> |
Ban Members | Unbans a user by their ID |
/mod warn user: @User reason: <reason> |
Moderate Members | Issues a formal warning |
/mod warnings user: @User |
Moderate Members | Views all warnings for a user |
/mod role user: @User role: @Role |
Manage Roles | Adds or removes a role from a user |
Channel Actions
| Command | Permission | Description |
|---|---|---|
/mod lock [reason] |
Manage Channels | Locks the current channel (no one can send) |
/mod unlock [reason] |
Manage Channels | Unlocks the current channel |
/mod slowmode seconds: <n> [reason] |
Manage Channels | Sets channel slowmode (0 to disable) |
/mod clear amount: <n> |
Manage Messages | Deletes messages (0 = all) |
/mod pin message_id: <id> |
Manage Messages | Pins a message |
/mod unpin message_id: <id> |
Manage Messages | Unpins a message |
Communication
| Command | Permission | Description |
|---|---|---|
/mod announce message: <text> [title] |
Manage Messages | Sends an announcement embed |
/mod say message: <text> |
Manage Messages | Makes ShadowCore say a message |
/report user: @User reason: <reason> to let regular members report other users to moderators — no mod permissions needed.