Skip to main content
Guard is the moderation bot. Everything you need to run a tight server with a small team.

Core moderation

All actions are source-agnostic — whether you trigger them from the dashboard, the /mod slash command, or AutoMod, they produce the same case row with the same case number.
ActionWhat it does
BanPermanent or time-bound. Auto-unban when the duration expires.
SoftbanBan + immediate unban to purge the user’s recent messages.
KickRemoves the member. They can rejoin with a new invite.
MuteDiscord timeout. 60s to 28d.
WarnLogs + DMs the target. Warns decay after N days (configurable).
NoteStaff-only note. No DM, no Discord-side action.
Purge / Lock / Unlock / SlowmodeChannel-level ops, audit-only.
Every action writes to mod_cases with a monotonic case number per guild. The Case Browser lets you filter by action, source, moderator, or user.

AutoMod

Ten rule types, all with shared config surface (triggers, exempt roles, exempt channels, action chain):
  • Spam — rate-limit messages per user.
  • Mention spam — cap unique mentions per message.
  • Links — block all, or allow-list specific domains.
  • Invite — block Discord invite links with optional whitelist.
  • Regex — custom pattern matching with tested preview.
  • New account — flag users whose account age is below a threshold.
  • Image only — restrict a channel to image-only messages.
  • Caps — flag messages with too much uppercase.
  • Emoji spam — cap repeated emoji per message.
  • Duplicate messages — detect copy-paste across channels.
Actions chain: delete → warn → mute (with duration) → kick → ban. Every trigger surfaces in the Triggers feed with the message content, channel, and action taken.

Anti-raid

Lockdown mode. One click from the dashboard or /raid lock slash command:
  • Raises the server verification level to Highest.
  • Records the previous setting so unlock restores it.
  • Announces the lockdown with reason + expected duration.
Mass ban. Paste up to 500 user IDs, optional reason + message-delete window. All bans run through the Action Queue with per-moderator rate limits respected.

Anti-nuke

Protects against compromised admin accounts. Quotas per event type with audit-log actor lookup:
  • Channel deletes
  • Role deletes
  • Bans
  • Kicks
  • Webhook creates
When a user exceeds the quota within the window, Guard:
  1. Strips their roles, bans them, or moves them to a quarantine role (your choice).
  2. Optionally auto-reverts ban/kick actions they took while over quota.
  3. Posts an alert to the configured channel with actor, event count, and revert summary.
Whitelist roles, whitelist users, and ignore-bots are all supported.

Verification gate

Post a button message. When new members click:
  • Account age is checked against your minimum (e.g. 7 days).
  • If pass, the configured verified role is assigned.
  • If fail, they get an ephemeral message explaining why.
Combined with Discord’s member-screening, this kills drive-by spam accounts without any friction for real members.

Logging

By default, all moderation events go to one channel. Premium upgrade: per-event routing. Send:
  • Mod actions → #mod-log
  • Member joins/leaves → #join-log
  • Channel/role/emoji CRUD → #audit-log
  • AutoMod triggers → #automod
  • Voice events → #voice-log
  • Anti-nuke alerts → #alerts
Every embed carries the actor’s avatar, the action, the target, and a clickable case number where applicable.

Welcome + leave

Pick a channel, write a message (tokens like {user}, {server}, {server.membercount} supported), optionally post an embed. Auto-role on join applies a role to every new member after verification.

Custom commands

Text or embed responses, triggered by /<name> slash commands. Token language:
  • {user} — mention the invoker
  • {server} — server name
  • {channel} — current channel
  • {random:A|B|C} — pick one at random
  • {if_role_has:ID:then|else} — conditional on role
Allowed-role and allowed-channel restrictions per command. Cooldowns per user.