Skip to main content

What is the Filter?

The filter system automatically scans every message sent in your server and deletes content that breaks your rules. Each module is independent — enable only what you need, configure thresholds, exempt trusted roles, and send logs to a dedicated channel. All filter commands require the Manage Channels permission or a Fake Permission equivalent.
Messages from bots and members with Manage Server are never filtered.

Modules at a glance

Global log channel

Set a fallback log channel used by every filter module that doesn’t have its own log channel configured.
Per-module log channels take priority. The global log channel only receives violations from modules with no log channel of their own.

View configuration

Shows every filter module — enabled/disabled status, threshold (where applicable), exempt roles, and assigned log channel.

Punishments

By default a filter module only deletes the offending message. Set a punishment to also act on the member.
Applies to caps, spam, chatspam, spoilers, massmention, emoji, invites, links, and musicfiles.
;filter punishment requires Manage Server (or the Fake Permission equivalent) — stricter than the rest of the filter commands. duration is only used by timeout.
warn is the strongest option — it stacks with your warn thresholds, so repeat automod offenders escalate to whatever punishment your warn actions define instead of being punished identically every time.

Heat Automod

Instead of punishing a single message, heat tracks a running score per member. Every filter violation adds heat; heat decays over time, so occasional slip-ups fade away. When a member’s heat crosses the max, they collect a strike — and once strikes hit the cap, slug automatically times them out.

Configure

All three values are optional — pass only the ones you want to change.
Run with no subcommand to see the current max heat, decay rate, and strikes cap.
Heat pairs well with lenient per-module settings — let individual violations slide, but catch members who break many rules in a short burst.

Snipe configuration

Control which message types are stored by the snipe command.

How logging works

Every module has its own log channel. When a violation is caught the bot sends an embed showing:
  • Module — which filter triggered
  • Author — who sent the message
  • Reason — what was detected
  • Channel — where it happened
If you point multiple modules at the same log channel and abuse is heavy, the bot rate-limits itself to 1 log per second per channel. Any violations that couldn’t be logged are counted and shown as Suppressed: x violations on the next log that gets through.