> For the complete documentation index, see [llms.txt](https://zoomiescore.gitbook.io/zoomiescore-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zoomiescore.gitbook.io/zoomiescore-docs/moderation.md).

# moderation

Full mod toolkit with per-guild isolated modlogs.

## Slash commands

| Command                              | Options                                                           | Requires         |
| ------------------------------------ | ----------------------------------------------------------------- | ---------------- |
| `/kick user reason?`                 | Kick a member from the server                                     | Kick Members     |
| `/ban user reason? delete_days?`     | Ban with optional 0-7 day message purge                           | Ban Members      |
| `/unban user_id reason?`             | Lift a ban by user ID                                             | Ban Members      |
| `/softban user reason? delete_days?` | Ban → immediate unban (nukes their recent messages)               | Ban Members      |
| `/timeout user duration reason?`     | Discord timeout (e.g. `10m`, `1h`, `1d`, max 28d)                 | Moderate Members |
| `/untimeout user reason?`            | Clear an active timeout                                           | Moderate Members |
| `/warn user reason`                  | Adds a warning to their record                                    | Manage Messages  |
| `/warnings user`                     | Shows a user's warning history                                    | Manage Messages  |
| `/clearwarns user`                   | Wipes all warnings for a user                                     | Manage Guild     |
| `/purge count target?`               | Delete last N (max 200) messages, optionally filtered to one user | Manage Messages  |
| `/modlogs user`                      | Every logged mod action against a user                            | Manage Messages  |
| `/lockdown reason?`                  | Deny Send Messages for @everyone in this channel                  | Manage Channels  |
| `/unlock`                            | Undo `/lockdown` on this channel                                  | Manage Channels  |
| `/note user text`                    | Add an internal, mod-only note on a user                          | Manage Messages  |
| `/role add\|remove user role`        | Grant or revoke a role                                            | Manage Roles     |
| `/nickname user new_name?`           | Set or clear a nickname                                           | Manage Nicknames |
| `/slowmode seconds?`                 | 0-21600. Omit to clear.                                           | Manage Channels  |

## Modlog channel

Set your modlog channel in **Dashboard → Settings**. Every mod action posts an embed with:

* Action + target
* Actor (who ran it)
* Reason (or `No reason provided`)
* Timestamp

`/purge` additionally posts a **transcript embed** containing up to 200 deleted messages (author, timestamp, content) chunked across multiple embeds if the content exceeds 3800 chars each.

## Dashboard: `/dashboard/moderation`

* Live modlog viewer with filters (action type, target user, actor, date range).
* Issue actions from the web with the same audit trail as slash.
* Per-guild scope — never leaks across servers.

## Isolation guarantees

Every mod-action query includes a mandatory `guild_id` filter. There is no code path that returns cross-guild moderation data, even for bot-owner-level accounts.
