Guides

How AutoMod and Raid Protection actually work

AutoMod Guide

AutoMod automatically filters messages using rules. Each rule pairs a trigger (what to detect) with an action (what to do). It runs alongside Discord's built-in auto-mod: Discord always checks first.

All logs are fully silent: no pings, no sounds.

Trigger types

KEYWORD
Blocks messages containing specific words. Trigger: comma-separated words (word1,word2).
REGEX
Blocks messages matching a regex pattern. Trigger: a valid regex string.
LINK
Blocks messages containing URLs. No trigger value.
INVITE
Blocks Discord invite links. No trigger value.
MENTION
Blocks messages with many mentions. Trigger: count (5).
CAPS
Blocks messages that are mostly uppercase. Trigger: percentage (70).
SPAM
Blocks repeated words or emojis, even one-per-message spam. Trigger: repeat count (4).

Actions

DELETE
Removes the message instantly.
WARN
Removes + warns the user.
TIMEOUT
Removes + times the user out (set duration).
BAN
Removes + bans the user.
LOG_ONLY
Logs the trigger, takes no action.

Presets

  • Basic: invites + mass mentions.
  • Standard (recommended): + anti-caps + anti-spam. Anti-Spam now gives a 5-minute timeout.
  • Strict: + block links + stronger actions.

Spam behaviour

Repeat spam (same emoji or word, even one per message) is detected across messages. Messages vanish instantly, and offenders get a 5-minute mute with a sticky warning that stays until they stop.

Allowed words & staff

  • /allowword add <word> lets a word pass every filter.
  • Staff (Administrators + your configured staff roles) are not auto-modded.

Raid Protection Guide

Raid Protection watches joins and kicks suspicious accounts or locks the server when abnormal activity is detected. Raid kicks are now logged to /modlog and show up in the stats.

How it works

Account Age
Blocks accounts younger than a minimum age (account_age_hours, default 24h). New accounts are kicked.
Join Rate
Too many joins in a window (join_limit/join_window) and the server auto-locks for 5 minutes.
Lockdown
/raid lockdown manually locks the server: new joins are kicked until it lifts.
Alerts
Set alert_channel to get pinged the moment a raid is detected.

Presets

  • Basic: account age check only.
  • Standard (recommended): + join rate limit.
  • Strict: 72h age + stricter rate limits.

Quiet Logs

Every log message (moderation, joins, leaves, AutoMod, raid, errors) is sent silently: no @mentions, no notification sounds, no pings. Logs stay in their channels without bothering anyone.

Verification System

The Verification system requires users to complete a human verification challenge (Cloudflare Turnstile) before gaining access to your server. This prevents bots and automated accounts from joining.

Setup

Run /verifysetup to configure the verification system for your server.

Role
The role to grant after successful verification (e.g., @Verified).
Log Channel
Channel to log verification attempts (success/fail).
Enabled
Toggle verification on/off.

Example: /verifysetup role:@Verified log_channel:#verification-logs enable:true

How it works

1. User runs /verify
The bot generates a unique, one-time link and sends it to the user (ephemeral).
2. User clicks the link
Opens the verification page on the website.
3. User completes the Cloudflare Turnstile challenge
A privacy-friendly human check runs in the browser (no personal data collected).
4. Role granted
On success, the bot grants the verified role in the server.

Token details

  • Expires: 10 minutes after generation.
  • Usage: One-time only (token invalidated after use).
  • Privacy: No personal data collected; the Cloudflare Turnstile check runs in the browser.

Commands

/verify
Get your personal verification link (ephemeral).
/verifysetup
Configure verification role, log channel, and enable/disable (Admin only).

Logs & Stats

Verification attempts are logged to the configured log channel and appear in the website stats:

  • Total attempts, successful verifications, failed attempts.
  • Breakdown by outcome (success/failed) over 30 days.
  • Daily activity for the last 7 days.