Moderation

Auto-Moderation System

SYNTHET's auto-moderation system monitors every message in real-time and automatically enforces your community rules. With six powerful filter types, custom word lists, and granular configuration options, you can maintain a safe and welcoming community 24/7 without manual intervention.

How Auto-Moderation Works

When a user sends a message, SYNTHET instantly evaluates it against your active auto-moderation profiles. Each profile contains rules that trigger actions based on message content and user behavior.

Real-Time Detection Flow

  1. 1. Message Sent: User posts a message
  2. 2. Check Immunity: Is the user/role/channel immune from this profile?
  3. 3. Evaluate Filters: Check message against all enabled triggers
  4. 4. Match Found: If trigger matches, execute configured action
  5. 5. Log Event: Record action to mod log and audit trail

The Six Auto-Mod Filters

Anti-Spam Filter

Detects rapid message sending and duplicate message spam. Useful for catching bot floods and user harassment.

Trigger: User sends 5+ messages within 5 seconds
Alternative: Same message repeated 3+ times in a row
Customizable: Message count threshold, time window

Bad Words Filter

Automatically detects and removes messages containing profanity or other blacklisted keywords. Includes default word list with server-specific customization.

Includes: Pre-built word list (customizable)
Features: Case-insensitive, partial word matching
Control: Add/remove custom words, manage exceptions

Anti-Links Filter

Prevents suspicious or unapproved URLs from being shared. Whitelist trusted domains to allow legitimate links.

Detects: HTTP/HTTPS links, shortened URLs
Whitelist: youtube.com, github.com, company domains
Scope: Per-channel link allowance configuration

Anti-Invite Filter

Blocks Discord server invites to prevent members from being recruited to other communities. Option to allow invites to your own server.

Detects: discord.gg, Discord.com/invite, vanity URLs
Option: Allow own server invites (discord.gg/yourserver)
Action: Delete + optional warning

Anti-Caps Filter

Detects and removes messages with excessive uppercase letters. Prevents users from "yelling" and spamming.

Default: Trigger if 70%+ of letters are uppercase
Minimum: Only applies to messages 10+ characters
Customizable: Percentage threshold per profile

Anti-Mentions Filter

Prevents mass mentions and "@everyone/@here" abuse. Limits how many users/roles can be mentioned in a single message.

Default: Maximum 5 unique mentions per message
Special: Blocks @everyone/@here (configurable)
Customizable: Mention count threshold

Configurable Actions

When a filter is triggered, SYNTHET executes your configured action. You can choose different actions for different filter types and severity levels:

Delete

Immediately remove the offending message. No notification to user. Good for light violations.

Warn

Issue a warning and increment the user's warning count. User receives DM notification. Configurable escalation triggers automatic actions at thresholds.

Timeout

Apply Discord's native timeout (users cannot send messages, react, or connect to voice). Configurable duration.

Mute

Assign a mute role that prevents messaging in text channels. Temporary or permanent. Different from timeout.

Kick

Remove user from server immediately. They can rejoin if they have an invite link. User receives DM with reason.

Ban

Permanently ban the user from the server. Can optionally delete their recent messages. User receives DM with appeal information if configured.

Immunity & Exemptions

Prevent false positives and protect important members by configuring immunity:

Immune Roles

Users with these roles bypass the auto-moderation profile entirely. Common choices:

  • • Administrator/Server Owner (should always be immune)
  • • Moderator/Staff roles
  • • Bot management roles (for other bots)
  • • Trusted member roles

Immune Channels

This profile will not apply to messages in these channels. Good for:

  • • #bot-commands (bots may legitimately use caps or links)
  • • #spam or #off-topic (more lenient channels)
  • • #code or #paste (may need to allow special characters)
  • • #announcements (admin-curated content)

Tip: Start with immune roles for staff only. As your word lists mature, you can remove immunity to catch violations from everyone equally.

Custom Word Lists & Whitelists

Managing Bad Words

The Bad Words filter comes with a default list but you can customize it:

Add: /automod words add [word]
Remove: /automod words remove [word]
View: /automod words list
Bulk: Dashboard import/export CSV

Note: Matching is case-insensitive. "spam" catches "SPAM", "Spam", "sPaM", etc.

Whitelist for Links & Invites

For anti-link filters, maintain a whitelist of approved domains:

Add: /automod whitelist add youtube.com
Remove: /automod whitelist remove youtube.com
View: /automod whitelist list

Works for both domains (youtube.com matches youtube.com/watch?v=...) and exact URLs.

Discord vs Dashboard Configuration

Slash Commands (Real-Time)

Use these for quick changes and one-time actions:

  • • Add/remove words from blacklist
  • • Add/remove domain from whitelist
  • • Quick enable/disable filters
  • • Test filter triggers

Dashboard (Persistent Configuration)

Use the dashboard for comprehensive profile management:

  • • Create/edit/delete profiles
  • • Configure trigger thresholds
  • • Set up immunity roles/channels
  • • Review action history & statistics
  • • Bulk import/export word lists

Best Practices & Setup Guide

Step 1: Create Your First Profile

Start with a basic spam detection profile to catch common violations:

  1. 1. Go to Dashboard → Protection → Moderation → Profiles tab
  2. 2. Click "Create Profile"
  3. 3. Name it "General Rules" or "Spam Detection"
  4. 4. Enable Anti-Spam, Bad Words, Anti-Invites filters
  5. 5. Set action to Delete for now (no warnings yet)

Step 2: Exemptions First

Configure immunity before rolling out widely:

  • • Add all Staff/Moderator roles to immune roles
  • • Add #bot-commands to immune channels
  • • Test in #general first with a limited rollout

Step 3: Monitor & Adjust

Watch for false positives and refine over 1-2 weeks:

  • • Check mod logs daily for auto-mod activity
  • • Ask community for feedback on deletions
  • • Whitelist legitimate domains that got blocked
  • • Gradually expand to other channels once stable

Important Notes

  • • Always enable logging before deploying profiles
  • • Start permissive, tighten gradually (avoid false positives)
  • • Review word lists quarterly for outdated entries
  • • Never make staff immune from everything - use scoped immunity instead
  • • Test major changes in #testing-ground first

Frequently Asked Questions

Can I have multiple profiles running at once?

Yes! You can create multiple profiles and apply them to different channels. For example: strict "announcements" profile and lenient "off-topic" profile. Each message is checked against all enabled profiles.

What if a legitimate word matches the bad words filter?

Add it to the whitelist using /automod whitelist add [word]. Whitelist entries take precedence and prevent deletion. Alternatively, remove the word from the blacklist.

Do changes take effect immediately?

Yes! Profile changes, word additions, and filter toggles are applied instantly. No restart needed. The next message sent will use the new rules.

Can users see that a message was deleted by auto-mod?

The user sees their message was deleted but not the specific reason (unless they receive a DM warning). Staff can see the reason in the mod log. This privacy is intentional - prevents users from gaming the system.