Obelisk Docs
Moderation

Moderation

Ban, kick, time out and warn members through Obelisk. Every action needs a reason, gets a numbered case and is posted to your moderation log channel.

All moderation commands are included on the Free plan.

What it is

Obelisk’s moderation commands replace right-clicking a member and using Discord’s own Ban, Kick or Timeout buttons. The result is the same Discord action, but Obelisk also records who did it, to whom, when and why.

Why moderate through Obelisk

  • A reason every time. Reasons are required, so nobody can ban or kick without explaining it.
  • A case for every action. Each action gets a case number you can look up later with /case.
  • One public record. Replies are private to the moderator; the moderation log channel is where everyone on the team sees what happened.
  • Proof stays with the case. Attach a screenshot with proof or paste a link with proof_url.
  • Less risk from a compromised account. Your mods don’t need Discord’s Ban, Kick or Moderate Members permissions, so a stolen mod account can’t mass-ban from the member list.

Permits setup

Moderation permits let a role or a specific member use the matching commands through Obelisk without Discord’s native permissions. Every permit is off by default; the server owner or an admin grants them to roles or members.

PermitCommands
mod_ban/ban, /unban
mod_kick/kick
mod_timeout/timeout, /untimeout
mod_warn/warn, /warnings, /warnings_clear
mod_cases/case, /case_reason (also allowed for anyone with another moderation permit or the matching native Discord permission)

The server owner, Administrator and Manage Server can use every moderation command. Members with Discord’s native Ban Members, Kick Members or Moderate Members permission can still use the matching commands.

Recommended setup

  1. Grant your mod role the permits it needs (for example mod_ban, mod_kick, mod_timeout and mod_warn).
  2. In Server Settings → Roles, remove Ban Members, Kick Members and Timeout Members (Moderate Members) from that role.
  3. Your mods now moderate only through Obelisk, so every action has a reason and a case.
Permits are edited from the dashboard. Dashboard — coming soon. See Who Can Use Commands for the other staff permits.

Cases

Every ban, unban, kick, timeout, untimeout, warning and warning clear creates a numbered case. A case stores the member, the moderator, the action, the reason, any proof and the time. Automatic unbans when a temporary ban expires get their own case too.

View a case with /case. If a reason was wrong or too short, fix it with /case_reason; the edit is logged as well.

Moderation log channel

Each case is posted to the moderation log channel with the reason and proof. Command replies are private (only the moderator sees them), so the log channel is the public record for your staff team. See Logging for how log channels are set up.

DMs and proof

  • Turn on dm to message the member about the action first, with the reason. If their DMs are closed, the action still happens.
  • proof takes a file (such as a screenshot). proof_url takes a link that starts with http:// or https://.

Safety rules

Obelisk refuses an action when the target is:

  • the server owner,
  • yourself,
  • Obelisk itself,
  • anyone whose highest role is equal to or higher than yours (the server owner skips this check), or
  • anyone whose highest role is equal to or higher than Obelisk’s.

When you ban by user ID and that person isn’t in the server, there are no roles to compare, so the role check is skipped.

Checking it with /selftest

/selftest (owner or Administrator) is a dry run that changes nothing. It now also checks moderation:

  • the moderation commands are registered,
  • Obelisk’s permissions and role position, including a list of roles it can’t act on,
  • the moderation log channel can receive posts,
  • case storage works (without creating a case),
  • the temporary-ban timer is running, and how many temporary bans are pending,
  • which roles hold each moderation permit.