Moderation

Warns, mutes, kicks and bans with a numbered case history. 22 case types, a warning ladder, appeals on the web, reports from your members, and lockdowns that restore what they changed.

On this page

Moderation is the half of protection where a person decides. Its twin, Auto Moderation, is the half where the bot decides, and both file cases through the same engine, so a filter's action and a moderator's action look the same in a member's history.

Moderation

Everything your staff do, recorded as a numbered case they can quote.

Enabled
GeneralPunishmentsLockdownReports3Appeals1CasesLoggingCommands

Cases in 30 days

128

warning 52 · mute 31 · ban 12 · kick 9

In force

9

Bans, mutes and roles that have not lifted yet.

Reports waiting

3

Members can report each other with /report.

Appeals waiting

1

Approving one lifts the punishment.

What happened lately

The last eight cases, newest first.

#1284

Ban throwaway_84

Raid participation · by mira

3 hours ago
#1283

Mute loud.tim

Arguing in #general after a warning · by nova

5 hours ago
#1282

Warning kito

Backseat modding in #events · by nova

22 hours ago
#1281

Unban juno

Appeal accepted · by mira

1 day ago
#1280

Kick drifter_22

Alt of a banned account · by mira

2 days ago
#1279

Mute pixelfox

Mass mention · by Arclo

2 days ago
#1278

Warning orion.wav

Advertising another server · by Arclo

3 days ago
#1277

Warning sable

Spoilers outside #spoilers · by mira

4 days ago
Search a reason, a name, or a case number
Every kind
Any status
#1284

Banthrowaway_84

Raid participation · 3 hours ago · by mira

#1283

Muteloud.timLifts in 19 hours

Arguing in #general after a warning · 5 hours ago · by nova

#1282

Warningkito

Backseat modding in #events · 22 hours ago · by nova

Setting it up

  1. Switch it on

    Essentials → Moderation. The page has 8 tabs; General is where you start.

  2. Name your moderator roles

    Moderator roles may use every moderation command that is not admin-only, /ban included. Separately, Administrator roles can also delete cases, change another moderator's case reason, run /role all, and start and end a lockdown.

  3. Set immunity

    Server-wide under Who can't be moderated, and per punishment type, so a role can be warnable but not bannable. The server owner and Arclo are always out of reach, and by default nobody can punish somebody above them in the role list, or another moderator. An immune member is refused before anything happens: no case and no DM, only a log line saying the action was refused.

  4. Choose how a mute works

    Discord timeout (Discord's own, no setup, capped at 28 days per application; Arclo renews longer mutes automatically), a Muted role, or Both. Arclo can build the muted role for you.

  5. Point the logger at a channel

    On the Logging tab, or from Logging.

The eight tabs

TabWhat lives there
GeneralModerator and admin roles, immunity, how a mute works, what a punishment records, what people can see about a case, and general behavior
PunishmentsA tile per punishment: default duration, DM, announcement, immunity, roles, the warning thresholds, and the reason shortcuts
LockdownWhich channels and roles a lockdown covers, who can still talk, the notices it posts, and how long it lasts
ReportsWho may report, what a report must contain, where it lands, and what Arclo does about repeats
AppealsThe public appeal page, its rules, and the queue
CasesThe searchable case history, its numbers, and the latest cases
LoggingThe Moderation logger and its per-action switches
CommandsPer-command settings and reply text

Cases

Every action opens a numbered case. There are 22 types, covering members, channels and the server itself.

Case typeWhat it recordsTimed
Warningwas warnedNo
Mutewas mutedYes
Unmutewas unmutedNo
Kickwas kickedNo
Banwas bannedYes
Unbanwas unbannedNo
Softbanwas softbannedNo
Voice mutewas muted in voiceYes
Voice unmutewas unmuted in voiceNo
Deafenwas deafenedYes
Undeafenwas undeafenedNo
Voice disconnectwas disconnected from voiceNo
Nickname changehad their nickname changedNo
Role givenwas given a roleYes
Role removedhad a role removedNo
Notehad a note addedNo
Purgehad messages purgedNo
Channel lockedwas lockedYes
Channel unlockedwas unlockedNo
Lockdownwent into lockdownYes
Lockdown liftedcame out of lockdownNo
Slowmodehad its slowmode changedYes
  • Case numbers are allocated atomically, so two simultaneous bans can never share one.
  • /case view <case> opens a case; the rest of /case changes its reason, duration or evidence, pardons it, deletes it, searches and counts. /modlogs <member> shows a member's whole history, and the Cases tab edits cases from the dashboard.
  • Bans, kicks, timeouts and unbans done through Discord's own interface are picked up from the audit log and filed as cases, so the history has no holes. The member is DMed about one only if DM people punished outside Arclo is on (it is off by default).
  • Deleting a case removes it from the record. A punishment it holds that is still in force is lifted first.
  • /note keeps private staff notes on a member. They sit beside the case history rather than in it, and are never numbered.

Punishments

The full order of operations (immunity, escalation, the case, the DM before the action, the expiry) is on Punishments. Per punishment, you can set:

Default duration
For punishments that can expire. Used when a moderator gives no duration: leaving a command's duration blank means use this; typing permanent means never expire. A mute lasts an hour by default, everything else is permanent, and Longest a moderator may set caps what a command can ask for.
Tell the member
An editable DM sent before the punishment lands, which can name the moderator and offer an appeal.
Announce it in the channel
An editable public message. Off by default, and never sent for Auto Moderation's punishments.
Roles immune to this specifically
On top of the server-wide immune roles.
Take their other roles away too
On Mute: strips a muted member's other roles and hands them back when the mute lifts. Works for every mute method, not only the muted role.
Also give them these roles
And …and take these away: roles to add or remove when this punishment lands.
What Discord's audit log says
The template written into Discord's audit log, separate from the reason your members see. Empty means {moderator}: {reason}.
Always show the form first
Sends the moderator through a review form before a slash command goes through.

Each tile also has its own switch (a switched-off punishment's command refuses), a default reason and Require a reason for this punishment, and where they fit, Delete their recent messages (ban and softban), warning points and an expiry (warn), and Ask before a mass action hits more than.

Reason shortcuts

Map an alias to a full wording (spam → “Repeated spam in public channels”) and optionally a duration, up to ten of them, each limited to the punishments you pick. It expands inside the engine, so commands, the Warn Member menu and report-card buttons all get it. An explicit duration on the command still wins.

@Arclo
ArcloBOTToday at 3:11 AM

You have been banned

You have been banned from Nebula Collective. Reason: Raid participationDuration: PermanentExpires: never

Nebula CollectiveToday at 3:11 AM

arclo_dark_linkAppeal this
The DM, sent before the punishment lands. After a ban, it could not be delivered at all.
#mod-log
ArcloBOTToday at 3:11 AM

Member banned (case #1284)

mira (@Mira) banned throwaway_84

Reason

Raid participation

Duration

Permanent

History deleted

nothing

ID

1290465318820544572

throwaway_84 · ModerationToday at 3:11 AM

The same action in your log channel.

Privacy

Per audience (the public announcement and the DM), you choose whether to include who did it, the attached evidence, the message it was about, the case number and how long it lasts. A withheld moderator reads “a moderator”; anything else withheld is left out. The DM goes out before the case exists, so it never carries a case number.

Escalation

Warning thresholds turn repeated warnings into something stronger: three warnings in seven days becomes a mute. Switch them on with Enable warning thresholds (off by default) and add up to 15 rungs, counting warnings or, if you weigh them, warning points. A rung can mute them, kick them, ban them, softban them, give them a role or only notify staff. Each rung names its own window, but a warning that has already expired (Warnings stop counting after) never counts.

Automatic warnings climb the same ladder

A filter that warns somebody escalates exactly as a moderator's warning would. That is usually right, and it is a reason to be careful with a filter that fires often.

Reports

/report, or right-click → Apps → Report Member or Report Message, lets your members bring something to staff. Reports are off until you switch on Enable reports. A report card lands in the channel you choose with buttons on it.

Where reports land
The channel. Left empty, reports go to the moderation log channel.
Who may report
Allow and block lists, roles that cannot be reported at all, and account-age and time-in-server gates.
What a report must say
Template reasons offered by autocomplete, a minimum length, and optionally a required attachment.
Card actions
Which punishments the card's buttons offer: Warn, Mute, Kick, Ban and Delete their messages, all on by default. Claim, History and Dismiss are always there.
When Arclo acts on its own
X members report one member within Y days → do Z. Each member counts once however often they report, dismissed reports never count, and one report can only advance the ladder one rung. Up to five rungs.
Auto-close
Close untouched reports after a while. Off by default.

The automatic actions are nine: warn them, mute them, kick them, ban them, softban them, give them a role, take a role away, send them a message or only ping the staff. The last two deliberately file no case: a server that wants “three reports and they hear about it” should not have to reach for a punishment to say it. A role given this way can be temporary.

Appeals

A banned member is not in your server: no command, no channel and no DM thread reaches them. So appeals live on a public page at /appeal/<your-server>, which they can open from the ban DM. Appeals are off by default, and you choose which punishments can be appealed (bans, mutes, kicks and warnings to begin with). Members still in the server can also use /appeal submit.

  1. The member signs in with Discord and fills in the form on the web page. The appeal gets its own number.
  2. Arclo posts a card into your staff channel with Approve, Deny and History buttons.
  3. Staff decide: in Discord, or from the Appeals tab on the dashboard. Either way the decision is logged, and by default the member is told and an approval lifts the punishment (Tell the member the outcome, Approving lifts the punishment).

Note

Appeal pages are not indexed by search engines: the contents are one person's business.

Lockdown

Locks a channel, a list of channels, whole categories or the whole server, with an optional automatic end. Voice, stage, forum and media channels lock too: nobody new joins or speaks in a locked voice channel. The Lockdown tab decides which roles are locked out, which can still talk, which channels stay open, and whether a lockdown also raises Discord's verification level or pauses invites. A single /lock posts a notice in its channel; a lockdown posts in up to the first five channels it locks; both post again when the lock lifts.

Unlock restores, it does not grant

Arclo records every permission bit it changed on every channel it locked, and puts each one back. A naive unlock grants Send Messages to @everyone in channels that never had it, which is how a lockdown ends with the announcement channel open to the world.

Clearing messages

/clear deletes up to 1,000 messages at once, with a filter that picks which: any, from one member, bots, humans, containing text, matching a pattern, links, invites, images, files, embeds, pings or emoji, plus one that strips every reaction and leaves the messages. Pinned messages are skipped unless the General tab says otherwise.

Discord's 14-day wall

Discord refuses to bulk-delete anything older than two weeks, and deleting old messages one at a time is rate-limited in hours. Every purge in Arclo works inside that window; older messages are counted and reported rather than deleted.

Commands

Moderation registers 26 slash commands. The punishments are kept flat on purpose (/ban, /kick, /mute and /warn are muscle memory from every other bot), and the rest group their operations as subcommands (/case, /note, /role, /mass, /lockdown and more). There are also three user context commands and one message context command.

  • /ban <member> [reason] [duration] [delete] [silent] [evidence] [message] [review]
    Ban MembersCannot be undone

    Bans a member, permanently, or for a duration that lifts itself. Works on somebody who has already left.

  • /unban <user> [reason]
    Ban Members

    Lifts a ban. Accepts a user id or picks from the ban list.

  • /softban <member> [reason] [delete] [silent] [message] [review]
    Ban MembersCannot be undone

    Bans and immediately unbans. The way to wipe somebody's recent messages without keeping them out.

  • /kick <member> [reason] [silent] [message] [review]
    Kick Members

    Removes a member from the server. They can rejoin with a new invite.

  • /mute <member> [duration] [reason] [scope] [strip-roles] [silent] [message] [review]
    Timeout Members

    Stops a member talking, with Discord's timeout, a muted role, or both, whichever this server uses.

  • /unmute <member> [reason] [scope]
    Timeout Members

    Lets a member talk again. Lifts the timeout, the muted role, or both.

  • /warn <member> <reason> [points] [silent] [evidence] [message] [review]
    Moderators

    Warns a member and records it. Crossing a threshold can mute, kick or ban them automatically.

  • /unwarn <case> [reason]
    ModeratorsCannot be undone

    Removes a single warning by its case number.

  • /hardmute <member> [duration] [reason] [scope] [silent] [message] [review]
    Timeout Members

    Mutes a member AND takes every role they have away. A temporary hardmute hands the roles back when it expires; a permanent one leaves them off.

  • /mass ban [members|name|created|joined] [full] [duration] [reason] [delete] [silent]
    Ban MembersCannot be undone

    Bans everybody in a list of members or user ids, in one go.

  • /mass kick [members|name|created|joined] [full] [reason] [silent]
    Kick Members

    Kicks everybody in a list of members, in one go.

  • /mass mute [members|name|created|joined] [full] [duration] [reason] [silent]
    Timeout Members

    Mutes everybody in a list of members, in one go.

  • /mass warn [members|name|created|joined] [full] [reason] [points] [silent]
    Moderators

    Warns everybody in a list of members, in one go. Each warning counts toward that member's own threshold ladder.

  • /deafen <member> [duration] [reason]
    Deafen Members

    Server-deafens a member so they can't hear voice channels. Optionally timed.

  • /undeafen <member> [reason]
    Deafen Members

    Lifts a server deafen.

  • /voicekick <member> [reason]
    Move Members

    Disconnects a member from voice. They can come straight back. It is a nudge, not a punishment.

  • /warnings list <member> [include-expired]
    Moderators

    Shows a member's warnings, their points and which ones have expired.

  • /warnings clear <member> [reason]
    ModeratorsCannot be undone

    Wipes every warning a member has.

  • /modlogs <member> [type] [page]
    Moderators

    The full moderation history of a member. Every case, newest first.

  • /case view <case>
    Moderators

    One case in full. Reason, moderator, duration, evidence and its appeal.

  • /case reason <case> <reason>
    Moderators

    Rewrites a case's reason. The fix for the one typed in a hurry.

  • /case duration <case> <duration>
    Moderators

    Changes how long a timed punishment lasts, or makes it permanent.

  • /case evidence <case> [file] [link]
    Moderators

    Attaches a screenshot or a message link to a case, so it survives the deleted message.

  • /case pardon <case> [reason]
    Moderators

    Lifts a punishment and marks the case pardoned. It stays in the history, but stops counting.

  • /case delete <case> [reason]
    AdministratorsCannot be undone

    Erases a case entirely. The history will not show it happened.

  • /case search [member] [moderator] [type] [contains] [page]
    Moderators

    Finds cases by member, moderator, type or a word in the reason.

  • /case stats [moderator] [days]
    Moderators

    How much moderating has been done, and by whom. The leaderboard for a staff team.

  • /note add <member> <note> [pin]
    Moderators

    Records a private staff note about a member. Never shown to them, and never counts as a punishment.

  • /note list <member>
    Moderators

    Every staff note about a member.

  • /note remove <member> <number>
    ModeratorsCannot be undone

    Removes one note by its number.

  • /note clear <member>
    ModeratorsCannot be undone

    Removes every note about a member.

  • /clear <count> [filter] [channel] [member] [text] [pattern] [prefix] [reason]
    Manage MessagesCannot be undone

    Deletes the last N messages in a channel. Everything, or only what the filter matches (one member, bots, links, invites, images, files, embeds, pings, emoji, text, a regular expression). It can also strip every reaction and leave the messages.

  • /slowmode <interval> [channel] [duration] [reason]
    Manage Channels

    Sets or clears a channel's slowmode, optionally lifting itself after a while.

  • /lock [channel] [duration] [reason] [silent]
    Manage Channels

    Stops everyone talking in a channel. Optionally unlocks itself after a set time.

  • /unlock [channel] [reason]
    Manage Channels

    Opens a locked channel again.

  • /lockdown start [duration] [reason]
    Administrators

    Locks every channel on your lockdown list at once. The raid button.

  • /lockdown end [reason]
    Administrators

    Lifts a lockdown and restores every channel to what it was before.

  • /lockdown status
    Moderators

    Whether the server is locked down, which channels, and for how much longer.

  • /nickname set <member> <nickname> [reason]
    Manage Nicknames

    Changes a member's nickname.

  • /nickname reset <member> [reason]
    Manage Nicknames

    Clears a member's nickname, putting their username back.

  • /nickname decancer <member> [reason]
    Manage Nicknames

    Rewrites an unreadable name (fancy fonts, Zalgo, invisible characters) as plain letters.

  • /nickname freeze <member> [nickname] [reason]
    Manage Nicknames

    Locks a member's nickname where it is. Arclo puts it back if they change it.

  • /nickname unfreeze <member>
    Manage Nicknames

    Lets a member change their own nickname again.

  • /role add <member> <role> [reason]
    Manage Roles

    Gives a member a role.

  • /role remove <member> <role> [reason]
    Manage Roles

    Takes a role away from a member.

  • /role toggle <member> <role> [reason]
    Manage Roles

    Gives the role if they don't have it, takes it if they do.

  • /role temp <member> <role> <duration> [reason]
    Manage Roles

    Gives a role that takes itself away again after a set time.

  • /role all <role> <action> [only] [with-role] [reason]
    AdministratorsCannot be undone

    Gives (or removes) a role for every member at once. Runs in the background.

  • /role list [page]
    Moderators

    Every role in the server, with how many members hold each.

  • /role members <role> [page]
    Moderators

    Who holds a role.

  • /report <reason> [member] [message-link] [evidence]
    Everyone

    Reports a member, or one specific message, to the staff. The reason can be picked from this server's own list. Anybody can use it.

  • /appeal submit [case]
    Everyone

    Files an appeal against a punishment, for the staff to review.

  • /appeal status
    Everyone

    Where a member's own appeals stand.

  • /appeal list [status] [page]
    Moderators

    The appeals waiting for staff to decide.

  • /appeal review <appeal> <decision> [note]
    Moderators

    Approves or denies an appeal, lifting the punishment if it's approved.

  • Right-click a member → Apps → Moderation History
    Moderators

    Right-click a member → Apps → Moderation History

    Right-click a member → Apps → Moderation History. Their full case list without typing a name.

  • Right-click a member → Apps → Warn Member
    Moderators

    Right-click a member → Apps → Warn Member

    Right-click a member → Apps → Warn Member. Opens a box for the reason and files the warning.

  • Right-click a member → Apps → Report Member
    Everyone

    Right-click a member → Apps → Report Member

    Right-click a member → Apps → Report Member. Files a report without a command.

  • Right-click a message → Apps → Report Message
    Everyone

    Right-click a message → Apps → Report Message

    Right-click a message → Apps → Report Message. Reports the message and its author together, with the text attached.

Still stuck? Ask in the support server: somebody there has almost certainly configured this before.