Auto Moderation
35 filters over what people say, plus honeypots, auto purge, a slowmode manager and a local AI classifier — everything that acts before a moderator has to.
On this page
Auto Moderation is what somebody says, and the name they change it to. It never punishes anybody itself: every action runs through the same engine a moderator's command does, so a filter hit files a real numbered case in the same history. Arrivals are Security's job, not this system's.
Auto Moderation
Thirty-five filters, honeypots, auto purge, a slowmode manager and AI moderation — all of it acting before a moderator has to.
Runs on every message, before a moderator has to.
EnabledCaught today
47
Since midnight UTC.
Caught in total
12,480
Since it was switched on.
Violations · 24h
9
What the ladders count.
Rules5 / 30
Checked in order — the harsh rules belong at the top.
35 filters · per-channel and per-role exemptions · test any rule before it goes live
Setting it up
Switch it on
Essentials → Auto Moderation.
Add two or three rules, not thirty
Start from a premade — there are eighteen — or build one from the filter picker. Invite links, mass mentions and message flood cover most of what a small server sees.
Exempt your staff
The Punishments tab leads with exemptions: roles, channels and members the system skips. A staff channel tripping a rule meant for
#generalis the fastest way to lose faith in a filter.Test it before you trust it
The rule tester on the Rules tab runs the same function the live bot runs. If it passes there, it passes in your server.
The eight tabs
| Tab | What lives there |
|---|---|
| Rules | Your rules, the tester, word lists, Discord's own AutoMod, and the thread-notice sweep |
| Punishments | Exemptions, and what a hit actually does |
| Slowmode | The adaptive slowmode manager |
| Auto purge | Standing keep this channel clean rules |
| Honeypots | Trap channels |
| AI moderation | The local classifier |
| Logging | The Auto Moderation logger |
| Commands | /automod and its operations |
Filters
35 filters in 7 groups. A rule is one filter, its settings, its scope and its actions — so "no links, except in #media" is one rule rather than a global switch plus an exception list.
| Words & phrases | What may and may not be said. |
|---|---|
| Banned words | Block a list of words and phrases. |
| Pattern match | Block messages matching a regular expression. |
| Allowed words only | Block anything containing a word that isn't on the list. |
| Formatting | Shouting, walls of text, unreadable characters. |
|---|---|
| Excessive caps | Block SHOUTING. |
| Repeated text | Block aaaaaaaaaa and spam spam spam. |
| Zalgo text | Block corrupted text. |
| Very long messages | Block walls of text. |
| Chat-clearing newlines | Block messages that push the channel off screen. |
| Spoiler spam | Block excessive spoiler tags. |
| Too many emoji | Block emoji walls in one message. |
| Too many stickers | Limit stickers in a message. |
| Too many attachments | Limit files in one message. |
| Mentions | Pings, mass mentions and protected roles. |
|---|---|
| Mass mentions | Block a message that pings a crowd. |
| @everyone attempts | Block @everyone and @here from people who shouldn't. |
| Protected role mentions | Stop specific roles being pinged. |
| Mention spam | Block many mentions across several messages. |
| Links & files | Invites, scams, masked links and attachments. |
|---|---|
| Discord invites | Block invite links to other servers. |
| Links | Block links — all of them, a denylist, or everything outside an allowlist. |
| Scam & phishing links | Block known token stealers, fake Nitro and IP grabbers. |
| Masked links | Block links hidden behind different text. |
| Unsafe attachments | Block file types nobody should be sharing. |
| Spam & flooding | Anything measured over time rather than per message. |
|---|---|
| Duplicate messages | Block the same message sent over and over. |
| Message spam | Block a member sending too many messages too fast. |
| Channel flood | React when a whole channel speeds up at once. |
| Attachment spam | Block a flood of files. |
| Link spam | Block a flood of links. |
| Emoji flood | Block emoji spam across several messages. |
| Reaction spam | Block somebody reacting to everything at once. |
| Cross-channel spam | Block the same person posting in many channels at once. |
| Violation threshold | Act when somebody trips other rules repeatedly. |
| Members | Account age, names and avatars. |
|---|---|
| New accounts | Act on messages from accounts made recently. |
| Username & nickname filter | Catch banned words in names people change to. |
| No profile picture | Act on accounts still using the default avatar. |
| Channel rules | What a particular channel is for. |
|---|---|
| Media-only channel | Require every message to carry an image or a link. |
| Text-only channel | Refuse attachments, embeds or stickers in a channel. |
Evasion is folded away before matching
Lookalike characters, leetspeak and invisible spacing are normalised first, so 𝓯𝓾𝓬𝓴, f u c k and a word with a zero-width space inside it all hit the same word list.
Whole-word matching means whole words
A word list matching whole words will not flag raccoon for containing a slur, and will not flag Scunthorpe. That is the point — but it means a filter set to whole words genuinely will not catch a word glued to another one.
ArcloBOTToday at 14:32
Message filtered
Member
@loud.tim
Rule
Discord invites
Action
Deleted · Warned
Case
#1283
Message
join my server discord.gg/…
Auto Moderation · #general
Scope and exemptions
- Per rule
- Each rule names the channels, categories and roles it applies to or skips. Exemptions on a rule are about that rule.
- Server-wide
- The Punishments tab's exemption card applies to everything: roles, channels and specific members.
- Ignore bots
- On by default for most filters. A trap that eats the music bot's now-playing card gets switched off, and then nothing is protected.
What a hit does
Eighteen action types, run in order: delete the message, warn, mute, kick, ban, softban, add or remove roles, set a member's whole role list (quarantine, in one call so there is never a window with no roles), add a reaction to flag it, slow the channel down, DM the member, notify staff, or simply count it.
- Violation threshold is a filter of its own: “N violations in M minutes → do this”, so individual rules can be gentle and the pattern can be punished.
- Punishments go through Moderation's engine, so they file cases, send that punishment's DM and climb its escalation ladder.
Word lists
A list is inert until a rule points at it. Make the list, write a rule, tick the list in that rule — and each list tells you which rules currently use it, or that none do.
- Arclo ships seven built-in lists (slurs, scam domains and the like). They are editable per server as a difference: click a word to strike it out for you only, and add your own on top.
- That way the shared list keeps updating itself — a scam domain added upstream still protects your server, around whatever you decided about the rest.
- Lists can be sorted, downloaded, and replaced from a file (a JSON array, or newline- or comma-separated text).
Honeypots
A trap channel nobody should ever post in. Anything posted there is, by construction, a bot or somebody who does not read — no heuristic, no false positives, and the cheapest true signal in the whole system.
- Arm existing channels, or let Arclo create one for you and arm it.
- A designed pinned warning is the feature, not decoration: a trap whose channel does not explain itself catches your own curious members.
- Each trap has its own punishments and its own exemptions — ignore bots (on by default), excluded roles and members, an arming grace period, and a maximum account age.
- A thirty-day trigger history records who, what they posted, what ran, and the two numbers that settle whether it was a real person: account age and time in the server.
Slowmode manager
Slowmode that climbs when a channel gets busy and steps back down when it calms. Two modes, and they are different mechanisms:
| Mode | Who enforces it | Notes |
|---|---|---|
| Per user | Discord — it is Slowmode in channel settings | Nothing is ever deleted. Exemptions are Discord's own (Manage Messages / Manage Channels), so Arclo does not show exemption fields it could not honour. |
| Per channel | Arclo | One message every N seconds from anyone. Discord has no such setting, so Arclo enforces it by deleting what arrives early — which is why this mode is the one with exemption lists and a choice of enforcement. |
It stands down rather than fighting
Five other things can move a channel's slowmode — the /slowmode command, a filter action, Security's flood response, an automation, or a human. If the value is not what Arclo last set, it assumes somebody else moved it and stops touching that channel for a while. A manager that re-asserts itself is experienced as “slowmode keeps resetting”.
The ladder climbs one rung at a time. Jumping straight to the rung matching the current rate would read its own suppression as more traffic and run to the ceiling.
Auto Purge
A standing instruction to keep a channel clean. One rule can cover many channels, because “clear these six spam channels every hour” is one decision.
| Mode | What it does | Cap |
|---|---|---|
| Interval | Clear the channel on a timer. | Up to 7 days |
| Age | Nothing in the channel outlives N. Checked four times per window, so overshoot stays small. | Up to 13 days |
- Exempt roles server-wide, and per rule; a protected-channel list makes sure a rule can never reach somewhere it should not.
- Never deleted, whatever the settings: Discord's own system messages, and the channel's sticky message.
- New rules arrive switched off — the only create in the dashboard that does, because it would otherwise start deleting on the next sweep.
Why the caps are 7 and 13 days
Discord will not bulk-delete anything older than 14 days. Past those limits a message could never be both old enough to qualify and young enough to delete, so the rule would silently do nothing.
AI moderation
A classifier that scores a message across twelve categories when no cheaper filter has already handled it.
It runs locally, and it is deliberately timid
There is no external API, no key and no per-message cost. It is log-only by default, has a minimum message length, runs last, and an unattended automatic ban on a classifier's judgement is exactly what the default avoids. Turn actions on once you have watched its log for a while.
Discord's own AutoMod, and thread notices
- Discord AutoMod rules stay in Server Settings — Arclo does not create or edit them, because two places to look when a message is blocked is worse than one. What Arclo adds is its own action vocabulary on top: when Discord blocks something, Arclo can warn, file a case, quarantine, or count it toward a repeat-offender threshold, per rule or as a default.
- Thread notices sweeps Discord's “started a thread” system messages out of the parent channel, immediately or after a delay, with the usual channel and exemption lists.
Commands
/automod statusManage ServerWhat Auto Moderation is doing right now — rules, hits today, AI moderation.
/automod rules [group]Manage ServerEvery rule, what it catches and what it does about it.
/automod toggle <rule> [state]Manage ServerSwitches one rule on or off without opening the dashboard.
/automod test <text> [as-member]Manage ServerRuns a message through every rule and reports which would fire — without punishing anybody.
/automod scan [channel] [count]Manage ServerRuns your rules over the recent messages in a channel and reports what they would have caught.
/automod violations view <member>Manage ServerA member's recent Auto Moderation hits, and how close they are to a threshold.
/automod violations clear <member> [name]Manage ServerCannot be undoneWipes a member's violation counters, so they start from zero on the ladder.
/automod bypass add [role] [channel] [member]Manage ServerExempts a role, a channel or a member from every rule.
/automod bypass remove [role] [channel] [member]Manage ServerPuts a role, channel or member back under the rules.
/automod bypass listManage ServerEverything and everybody Auto Moderation ignores.
/automod words add <list> <words>Manage ServerAdds a word or phrase to one of your word lists, right now.
/automod words remove <list> <words>Manage ServerTakes a word out of one of your word lists.
/automod words list [list]Manage ServerYour word lists, or everything on one of them.
/automod words clear <list>Manage ServerCannot be undoneEmpties one of your word lists.
/automod honeypot add [channel]Manage ServerTurns a channel into a trap: anyone who posts there is dealt with automatically.
/automod honeypot remove <channel>Manage ServerStops a channel being a trap. The channel itself stays.
/automod honeypot listManage ServerYour trap channels and how many accounts each has caught.
Still stuck? Ask in the support server — somebody there has almost certainly configured this before.

