Moderation Guide

Complete guide to moderation commands, case management, warnings, and best practices for server moderation.

Overview

Lyx provides a comprehensive moderation toolkit designed for Discord server management. Every moderation action creates a persistent case record with the moderator, target, action, reason, timestamp, and unique case ID. Cases are linked to moderation logs and can be reviewed at any time.

Key Features:
  • Role hierarchy enforcement — Lyx cannot moderate users with equal or higher roles
  • Persistent case records with unique IDs
  • Configurable logging for all actions
  • DM notifications for warned/timed out/banned users
  • Dashboard integration for visual case management

Basic Moderation Commands

/ban

Permanently ban a member from the server.

/ban user:@user reason:"Repeated rule violations" delete_message_days:1
  • user (required): The user to ban
  • reason: Reason for the ban (logged in case record)
  • delete_message_days: Delete messages from last 0-7 days (default: 0)

Requires: Ban Members permission

/unban

Remove a ban by user ID.

/unban user_id:123456789012345678 reason:"Appeal accepted"
  • user_id (required): Discord user ID (not mention)
  • reason: Reason for unban

/kick

Remove a member from the server (they can rejoin).

/kick user:@user reason:"Toxic behavior in #general"
  • user (required): Member to kick
  • reason: Reason for kick

Requires: Kick Members permission

/timeout

Temporarily prevent a member from sending messages (1 minute to 28 days).

/timeout user:@user duration:60 reason:"Spamming in #chat"
  • user (required): Member to timeout
  • duration (required): Minutes (1-40320, max 28 days)
  • reason: Reason for timeout

Requires: Moderate Members permission

/untimeout

Remove an active timeout early.

/untimeout user:@user reason:"Timeout served"

Requires: Moderate Members permission

Warning System

Warnings are tracked per-user with unique warning IDs. They can be viewed, individually removed, or cleared entirely.

/warn

Issue a warning to a member. Attempts to DM the user.

/warn user:@user reason:"Inappropriate language"

/warnings

View all warnings for a user with timestamps and moderators.

/warnings user:@user

/warning remove

Remove a specific warning by its ID.

/warning remove user:@user warning_id:warn_abc123

Requires: Moderate Members permission

/warning clear

Clear all warnings for a user.

/warning clear user:@user

Requires: Moderate Members permission

Tip: Warning IDs are shown in /warnings output. Use the dashboard's Warnings page for a visual interface to manage warnings.

Message Management

/purge

Bulk delete messages with optional filters.

/purge amount:50 user:@spammer contains:"discord.gg"
  • amount (required): Number of messages to check (1-100)
  • user: Only delete messages from this user
  • contains: Only delete messages containing this text

Requires: Manage Messages permission

Note: Discord only allows bulk deletion of messages younger than 14 days. Older messages must be deleted individually.

Channel Control

/slowmode

Set slowmode delay on a channel.

/slowmode channel:#chat duration:30
  • duration: Seconds (0-21600, 0 to disable)

/lock

Lock a channel by removing Send Messages from @everyone.

/lock channel:#announcements reason:"Event starting soon"

/unlock

Restore Send Messages permission for @everyone.

/unlock channel:#announcements

/lockdown

Lock multiple pre-configured channels at once (configured in dashboard).

/lockdown reason:"Server event in progress"

/unlockdown

Unlock all channels locked by /lockdown.

All channel commands require: Manage Channels permission

Case Management

Every moderation action creates a case with a unique ID. Cases are numbered sequentially per server.

/modlogs

View a user's complete moderation history.

/modlogs user:@user

Shows: case ID, action, moderator, reason, timestamp.

/case

View detailed information for a specific case.

/case case_id:42

Includes: full reason, moderator details, target details, related messages.

Dashboard: The Moderation Center in the dashboard provides a searchable, filterable table of all cases with pagination and case detail drawers.

Member Management

/nickname

Change a member's nickname.

/nickname user:@user nickname:"New Name" reason:"Name policy violation"

Leave nickname empty to reset to username.

Requires: Manage Nicknames permission

Moderation Statistics

/modstats

View moderation activity statistics.

/modstats user:@mod days:30
  • user (optional): Filter by specific moderator
  • days (optional): Lookback period (default: 30)

Shows: total actions, breakdown by type, top moderators, recent activity.

Best Practices

Always Provide Reasons

Include clear, specific reasons for every action. This creates an audit trail and helps with appeals.

Use the Case System

Reference case IDs in communications: "See case #42 for details." This keeps discussions organized.

Configure Logging

Set up /logs setup with a dedicated mod-log channel. Enable moderation event logging for transparency.

Role Hierarchy

Ensure Lyx's role is above moderator roles and roles you want to manage. Lyx cannot act on users with roles >= its highest role.

Progressive Discipline

Use warnings first, then timeouts, then kicks/bans for repeat offenses. Document the pattern in case reasons.

Appeal Process

Have a clear appeal process. Use /case to review history and /unban with reason "Appeal approved" when appropriate.

Using the Dashboard

The dashboard's Moderation Center (/dashboard/{guildId}/moderation) provides:

  • Searchable, filterable case table (by action, moderator, date)
  • Pagination for large case histories
  • Case detail drawers with full information
  • Quick action buttons for common moderation tasks
  • Export functionality for records

The Warnings & Cases page (/dashboard/{guildId}/warnings) focuses on warning management with per-user views and remove/clear actions.

Common Issues

"Missing Permissions" when banning/kicking

Check: 1) You have the required permission, 2) Lyx's role is above the target's highest role, 3) Lyx's role is above the role you're trying to manage, 4) No channel overrides block the action.

Timeout not working

Timeouts require the Moderate Members permission (not Ban Members or Kick Members). Ensure the target isn't timed out already (max one active timeout).

Case numbers don't match

Case numbers are sequential per server. Deleted cases don't reuse numbers. Use /case with the exact ID.

DMs not sending to warned users

Users may have DMs disabled or blocked the bot. The warning is still recorded. Check "DM Users on Moderation" in Server Settings.