From df7230dbe9c103ab299d88b017dfc57cbd3bc2ba Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
<41898282+github-actions[bot]@users.noreply.github.com>
Date: Mon, 6 Jul 2026 11:32:10 +0000
Subject: [PATCH] chore: autofix docs formatting
---
docs/custom-bot/modules/community/birthday.md | 12 +-
.../modules/moderation/anti-nuke.md | 76 +++++------
docs/scnx-api/scnx-integration.md | 10 +-
.../ai-faq/pre-ticket-gatekeeper.md | 4 +-
docs/support-bot/feature-comparison.md | 108 +++++++--------
.../forum-support/ai-deflection.md | 8 +-
docs/support-bot/forum-support/claiming.md | 10 +-
docs/support-bot/forum-support/commands.md | 28 ++--
.../forum-support/configuration.md | 94 ++++++-------
docs/support-bot/forum-support/intro.md | 26 ++--
.../forum-support/support-feedback.md | 16 +--
docs/support-bot/forum-support/topics.md | 10 +-
docs/support-bot/intro.md | 2 +-
docs/support-bot/modmail/basics.md | 106 +++++++--------
docs/support-bot/modmail/configuration.md | 70 +++++-----
.../ticket-system/configuration.md | 38 +++---
.../modules/community/activity-streak.md | 2 +-
.../custom-bot/modules/community/birthday.md | 14 +-
.../current/scnx/guilds/message-editor.md | 3 +-
.../current/scnx/guilds/trusted-admins.md | 36 ++---
.../current/support-bot/feature-comparison.md | 126 +++++++++---------
.../current/support-bot/intro.md | 10 +-
22 files changed, 404 insertions(+), 405 deletions(-)
diff --git a/docs/custom-bot/modules/community/birthday.md b/docs/custom-bot/modules/community/birthday.md
index cfe6e636..c4b5e560 100644
--- a/docs/custom-bot/modules/community/birthday.md
+++ b/docs/custom-bot/modules/community/birthday.md
@@ -101,13 +101,13 @@ The configuration is organized into tabs in the dashboard - the rows below are g
### Pre-Birthday Notifications
-| Field | Description |
-| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Enable pre-birthday notifications? | If enabled, the bot posts a notification in the birthday channel a configurable number of days before each user's birthday. |
+| Field | Description |
+| ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Enable pre-birthday notifications? | If enabled, the bot posts a notification in the birthday channel a configurable number of days before each user's birthday. |
| (optional) Pre-Birthday-Channel | _Only visible if pre-birthday notifications are enabled._ Optional separate channel for pre-birthday reminders. If empty, they are sent to the notification channel (if set) or otherwise the birthday channel. Use this to keep pre-birthday reminders apart from the actual "Happy birthday" messages. |
-| Pre-birthday lead times (days) | _Only visible if pre-birthday notifications are enabled._ List of lead times (in days) before a birthday at which to post a notification. For example, `[1, 7]` sends a notification both 7 days and 1 day before the birthday. |
-| Pre-birthday message | _Only visible if pre-birthday notifications are enabled._ The pre-birthday message sent for users who did not provide a birth year. The `%days%` placeholder gives the number of days remaining. |
-| Pre-birthday message with age | _Only visible if pre-birthday notifications are enabled._ The pre-birthday message sent for users who did provide a birth year. Supports the `%age%` placeholder for the age the user will turn. |
+| Pre-birthday lead times (days) | _Only visible if pre-birthday notifications are enabled._ List of lead times (in days) before a birthday at which to post a notification. For example, `[1, 7]` sends a notification both 7 days and 1 day before the birthday. |
+| Pre-birthday message | _Only visible if pre-birthday notifications are enabled._ The pre-birthday message sent for users who did not provide a birth year. The `%days%` placeholder gives the number of days remaining. |
+| Pre-birthday message with age | _Only visible if pre-birthday notifications are enabled._ The pre-birthday message sent for users who did provide a birth year. Supports the `%age%` placeholder for the age the user will turn. |
### Commands
diff --git a/docs/custom-bot/modules/moderation/anti-nuke.md b/docs/custom-bot/modules/moderation/anti-nuke.md
index ae757775..2c589d24 100644
--- a/docs/custom-bot/modules/moderation/anti-nuke.md
+++ b/docs/custom-bot/modules/moderation/anti-nuke.md
@@ -7,10 +7,10 @@ Detect and respond to destructive server actions (nuking) with configurable thre
:::warning
**Anti-nuke cannot protect against users who can reconfigure it.** Access to the `/anti-nuke` commands (including `whitelist add`) is controlled by the **Exempt Users** list, not by Discord permissions. Separately, anyone with access to the SCNX dashboard for this bot (the server owner, co-owners, or Trusted Admins with the "Change and Reload Configuration" permission) can bypass anti-nuke entirely by:
-* Adding themselves or an accomplice to the **Exempt Users** list (which also grants access to the `/anti-nuke` commands).
-* Raising thresholds, disabling action types, or changing the **Response Action** to **Alert only**.
-* Resetting the module database, wiping action records, snapshots, and undo history.
-* Disabling the module entirely.
+- Adding themselves or an accomplice to the **Exempt Users** list (which also grants access to the `/anti-nuke` commands).
+- Raising thresholds, disabling action types, or changing the **Response Action** to **Alert only**.
+- Resetting the module database, wiping action records, snapshots, and undo history.
+- Disabling the module entirely.
Anti-nuke is designed to slow down compromised accounts and rogue bots before they cause catastrophic damage. It cannot stop someone who has legitimate configuration access and acts deliberately. Only grant SCNX dashboard configuration access to people you actually trust.
@@ -19,25 +19,25 @@ Anti-nuke is designed to slow down compromised accounts and rogue bots before th
## Features {#features}
-* Detects 19 different types of destructive server actions, including mass channel/role deletion, mass bans/kicks, permission escalation, webhook spam, and more.
-* Hybrid detection system using both gateway events (instant detection) and audit log entries (catch-all backup) with automatic deduplication.
-* Configurable per-action thresholds: set how many actions of each type within a sliding time window trigger a response.
-* Four response actions: alert only, strip all roles, ban the executor, or strip only dangerous permissions.
-* Temporary whitelist system to allow trusted users to perform bulk actions without triggering a response (e.g., during planned restructures).
-* Undo system to reverse damage caused by a nuke event, either with the **Undo** button on each alert or the `/anti-nuke undo` command. It restores deleted channels, roles, emojis, stickers, threads, webhooks, guild settings, channel permission overwrites, role permissions, and mass-role-removal changes from stored snapshots. Emoji and sticker recovery is best-effort and depends on the image having been archived. Member kicks, member prunes, and integration creations cannot be automatically reversed.
-* All detection data is stored in the database (not in-memory), ensuring crash safety: if the bot restarts during a nuke, incomplete events are flagged for manual review.
-* Permanently exempt specific users from detection.
-* Detailed logging of all detected events to a configurable log channel.
+- Detects 19 different types of destructive server actions, including mass channel/role deletion, mass bans/kicks, permission escalation, webhook spam, and more.
+- Hybrid detection system using both gateway events (instant detection) and audit log entries (catch-all backup) with automatic deduplication.
+- Configurable per-action thresholds: set how many actions of each type within a sliding time window trigger a response.
+- Four response actions: alert only, strip all roles, ban the executor, or strip only dangerous permissions.
+- Temporary whitelist system to allow trusted users to perform bulk actions without triggering a response (e.g., during planned restructures).
+- Undo system to reverse damage caused by a nuke event, either with the **Undo** button on each alert or the `/anti-nuke undo` command. It restores deleted channels, roles, emojis, stickers, threads, webhooks, guild settings, channel permission overwrites, role permissions, and mass-role-removal changes from stored snapshots. Emoji and sticker recovery is best-effort and depends on the image having been archived. Member kicks, member prunes, and integration creations cannot be automatically reversed.
+- All detection data is stored in the database (not in-memory), ensuring crash safety: if the bot restarts during a nuke, incomplete events are flagged for manual review.
+- Permanently exempt specific users from detection.
+- Detailed logging of all detected events to a configurable log channel.
## Setup {#setup}
1. [Enable the module](https://scnx.app/glink?page=bot/modules?query=anti-nuke) on your server.
2. Open the [Configuration](https://scnx.app/glink?page=bot/configuration?file=anti-nuke%7Cconfiguration) and set the **Log Channel** where anti-nuke alerts will be sent.
3. Choose your preferred **Response Action**. This determines what happens to the user who triggered a nuke detection:
- * **Alert only**: Only send an alert to the log channel. No action is taken against the user.
- * **Strip all roles** (default): Remove all roles from the user, preventing further damage.
- * **Ban**: Ban the user from the server.
- * **Strip dangerous permissions**: Remove dangerous permissions from the user's roles. The stripped permissions are Administrator, Manage Channels, Manage Roles, Ban Members, Kick Members, Manage Guild, and Manage Webhooks. Because this edits the roles themselves, it affects every member who holds those roles, not only the executor.
+ - **Alert only**: Only send an alert to the log channel. No action is taken against the user.
+ - **Strip all roles** (default): Remove all roles from the user, preventing further damage.
+ - **Ban**: Ban the user from the server.
+ - **Strip dangerous permissions**: Remove dangerous permissions from the user's roles. The stripped permissions are Administrator, Manage Channels, Manage Roles, Ban Members, Kick Members, Manage Guild, and Manage Webhooks. Because this edits the roles themselves, it affects every member who holds those roles, not only the executor.
4. Add trusted users to the **Exempt Users** list. Listed users never trigger anti-nuke detection, and this list is also the only gate for who may use the `/anti-nuke` commands and the alert **Undo** button (Discord permissions such as Administrator do not grant access on their own).
5. Review the [Thresholds configuration](https://scnx.app/glink?page=bot/configuration?file=anti-nuke%7Cthresholds) and adjust limits for each action type as needed for your server.
6. Make sure the bot has the following permissions: **Administrator** (recommended), or at minimum **View Audit Log**, **Manage Roles**, **Ban Members**, **Manage Channels**, **Manage Webhooks**, **Manage Guild Expressions**, **View Channel**, **Send Messages**, and **Embed Links**.
@@ -59,9 +59,9 @@ Detection uses a hybrid approach: gateway events provide instant detection, whil
Before performing planned bulk actions (e.g., reorganizing channels or cleaning up roles), administrators can temporarily whitelist a user. Whitelisted users' actions are still recorded, but thresholds are not evaluated and no response action is triggered for the specified duration.
-* Use `/anti-nuke whitelist add` to create a temporary whitelist entry with a duration and reason.
-* Use `/anti-nuke whitelist remove` to revoke a whitelist entry early.
-* Use `/anti-nuke whitelist list` to view all active whitelist entries.
+- Use `/anti-nuke whitelist add` to create a temporary whitelist entry with a duration and reason.
+- Use `/anti-nuke whitelist remove` to revoke a whitelist entry early.
+- Use `/anti-nuke whitelist list` to view all active whitelist entries.
Whitelist entries expire automatically and are cleaned up on bot restart.
@@ -69,8 +69,8 @@ Whitelist entries expire automatically and are cleaned up on bot restart.
If a nuke is detected, the bot stores snapshots of affected resources (channel configurations, role settings, emoji images, etc.). Users on the **Exempt Users** list can reverse the damage in one of two ways:
-* **From the alert:** click the **Undo** button on the "Nuke Detected" alert, then confirm. Once complete, this also reverses the response taken against the executor (for example, unbanning them or restoring their stripped roles).
-* **With the command:** run `/anti-nuke undo`, then select the event from the dropdown menu.
+- **From the alert:** click the **Undo** button on the "Nuke Detected" alert, then confirm. Once complete, this also reverses the response taken against the executor (for example, unbanning them or restoring their stripped roles).
+- **With the command:** run `/anti-nuke undo`, then select the event from the dropdown menu.
Either way, the bot attempts to restore all affected resources using the stored snapshots and reports what was restored and what could not be.
@@ -82,9 +82,9 @@ Undo is a best-effort recovery. Some data cannot be restored: message history in
All detection data is persisted to the database immediately. If the bot crashes or restarts during a nuke event:
-* Incomplete response actions are flagged and reported in the log channel on restart.
-* Snapshot data is preserved for undo recovery.
-* Action tracking records linked to unresolved nuke events are retained until the event is undone or manually resolved.
+- Incomplete response actions are flagged and reported in the log channel on restart.
+- Snapshot data is preserved for undo recovery.
+- Action tracking records linked to unresolved nuke events are retained until the event is undone or manually resolved.
## Considerations and limitations {#considerations}
@@ -145,7 +145,7 @@ You are solely responsible for your threshold configuration, response-action cho
## Tracked action types {#action-types}
| Action Type | Description | Default Threshold |
-|-------------------------------|-------------------------------------------------------|-------------------|
+| ----------------------------- | ----------------------------------------------------- | ----------------- |
| Channel Deletion | Channels being deleted | 3 in 60s |
| Channel Creation | Channels being created in bulk | 5 in 60s |
| Role Deletion | Roles being deleted | 3 in 60s |
@@ -173,7 +173,7 @@ Each action type can be individually enabled/disabled and has its own threshold
| Command | Description |
-|----------------------------------------------------------------------------|------------------------------------------------------------------------------------|
+| -------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| `/anti-nuke whitelist add user: duration: [reason:]` | Add a temporary whitelist entry. Duration supports formats like `30m`, `2h`, `1d`. |
| `/anti-nuke whitelist remove user:` | Remove an active whitelist entry for a user. |
| `/anti-nuke whitelist list` | List all currently active whitelist entries. |
@@ -188,13 +188,13 @@ All commands (and the alert **Undo** button) are restricted to users on the **Ex
Configure the general settings of the anti-nuke system. Open it in your [dashboard](https://scnx.app/glink?page=bot/configuration?file=anti-nuke%7Cconfiguration).
-| Field | Description |
-|-----------------------------|------------------------------------------------------------------------------------------------------|
-| Log Channel | Channel where anti-nuke alerts and event logs are sent. |
+| Field | Description |
+| --------------------------- | --------------------------------------------------------------------------------------------------------------------- |
+| Log Channel | Channel where anti-nuke alerts and event logs are sent. |
| Response Action | What to do when a nuke is detected: **Alert only**, **Strip all roles**, **Ban**, or **Strip dangerous permissions**. |
-| Exempt Users | Users who are completely exempt from anti-nuke detection. |
-| Snapshot Retention (days) | How long to keep resource snapshots for undo recovery (default: 30 days). |
-| Action Log Retention (days) | How long to keep individual action tracking records (default: 7 days). |
+| Exempt Users | Users who are completely exempt from anti-nuke detection. |
+| Snapshot Retention (days) | How long to keep resource snapshots for undo recovery (default: 30 days). |
+| Action Log Retention (days) | How long to keep individual action tracking records (default: 7 days). |
### Thresholds {#configuration-thresholds}
@@ -203,7 +203,7 @@ Configure detection thresholds for each action type. Open it in your [dashboard]
Each action type has three settings:
| Field | Description |
-|---------------------|------------------------------------------------------------------------|
+| ------------------- | ---------------------------------------------------------------------- |
| Track [Action Type] | Enable or disable detection for this action type. |
| Max [Action Type] | Number of actions within the time window before triggering a response. |
| Timeframe (seconds) | The sliding time window in seconds used to count actions. |
@@ -259,9 +259,9 @@ Each action type has three settings:
The following data is stored by this module:
-* **Action records**: The action type, target ID, executor ID, and timestamp of every tracked destructive action. Automatically cleaned up after the configured retention period (default: 7 days).
-* **Snapshots**: Detailed resource data (channel settings, role configurations, emoji images, etc.) for undo recovery. Automatically cleaned up after the configured retention period (default: 30 days).
-* **Nuke events**: Records of detected nuke incidents, including the executor, action type, action count, response taken, and whether the event has been undone.
-* **Whitelist entries**: User ID, granting user, reason, and expiration time for temporary whitelist entries. Automatically cleaned up on expiration.
+- **Action records**: The action type, target ID, executor ID, and timestamp of every tracked destructive action. Automatically cleaned up after the configured retention period (default: 7 days).
+- **Snapshots**: Detailed resource data (channel settings, role configurations, emoji images, etc.) for undo recovery. Automatically cleaned up after the configured retention period (default: 30 days).
+- **Nuke events**: Records of detected nuke incidents, including the executor, action type, action count, response taken, and whether the event has been undone.
+- **Whitelist entries**: User ID, granting user, reason, and expiration time for temporary whitelist entries. Automatically cleaned up on expiration.
To remove all data stored by this module, [purge the module database](/docs/custom-bot/additional-features#reset-module-database).
diff --git a/docs/scnx-api/scnx-integration.md b/docs/scnx-api/scnx-integration.md
index 6ed9c8c4..193ce342 100644
--- a/docs/scnx-api/scnx-integration.md
+++ b/docs/scnx-api/scnx-integration.md
@@ -41,11 +41,11 @@ Format: `text/plain`. Consists of three components in a string:
1. The timestamp the response was generated
2. A "," character
3. The actual JSON-Body (see table below)
- | Key | Description |
- | ---- | --- |
- | event | Name of the event or request |
- | guildID? | ID of the associated guild |
- | body | Body of the request, depending on the event type |
+ | Key | Description |
+ | -------- | ------------------------------------------------ |
+ | event | Name of the event or request |
+ | guildID? | ID of the associated guild |
+ | body | Body of the request, depending on the event type |
### Installation Events
diff --git a/docs/support-bot/ai-faq/pre-ticket-gatekeeper.md b/docs/support-bot/ai-faq/pre-ticket-gatekeeper.md
index ffff3234..4d6b5103 100644
--- a/docs/support-bot/ai-faq/pre-ticket-gatekeeper.md
+++ b/docs/support-bot/ai-faq/pre-ticket-gatekeeper.md
@@ -78,12 +78,12 @@ If a member picks a topic that has a [form](/docs/support-bot/general/forms) att
Which topics the gatekeeper screens is controlled in two layers: a **global default** and a **per-topic override**.
-**Global default** - on the AI FAQ settings page, under **Default for topics**:
+**Global default** - on the AI FAQ settings page, under **Default for topics**:
- **Screen all topics by default** _(default)_ - the gatekeeper runs on every topic unless a topic opts out.
- **Don't screen topics by default** - the gatekeeper runs on no topic unless a topic opts in. Handy when you only want the AI on a few high-volume topics (like a general "Question" topic) and want everything else to behave normally.
-**Per-topic override** - on each topic's settings page (Ticket Topics for [Modmail](https://scnx.app/glink?page=support-system/modmail/ticket-topics) or the [Ticket System](https://scnx.app/glink?page=support-system/ticket-system/ticket-topics)), the **AI gatekeeper for this topic** option lets you override the default for that one topic:
+**Per-topic override** - on each topic's settings page (Ticket Topics for [Modmail](https://scnx.app/glink?page=support-system/modmail/ticket-topics) or the [Ticket System](https://scnx.app/glink?page=support-system/ticket-system/ticket-topics)), the **AI gatekeeper for this topic** option lets you override the default for that one topic:
- **Follow global default** - uses whichever default you picked above.
- **Always screen with AI** - the gatekeeper always runs on this topic.
diff --git a/docs/support-bot/feature-comparison.md b/docs/support-bot/feature-comparison.md
index 3d6a5232..3009ae93 100644
--- a/docs/support-bot/feature-comparison.md
+++ b/docs/support-bot/feature-comparison.md
@@ -10,18 +10,18 @@ The SCNX Support Bot offers four support systems. You can enable any combination
## At a glance {#at-a-glance}
-| | Modmail | Ticket System | Forum Support | Voice Support |
-| ------------------------------ | -------------------- | ---------------------- | ---------------------------- | ----------------------- |
-| **How members reach you** | DM the bot | Click a button | Post in a public forum | Join a voice channel |
-| **Visibility** | Private | Private channel | **Public thread** | Private voice |
-| **Conversation style** | Text (relayed) | Text (in a channel) | Text (in the open) | Live voice |
-| **Built-in AI first answer** | ➖ (via AI FAQ) | ➖ (via AI FAQ) | ✅ | ❌ |
-| **Shared queue & claiming** | ✅ | ✅ | ✅ | ✅ (pull next) |
-| **Auto-close & SLA reminders** | ✅ | ✅ | ✅ | ➖ |
-| **Feedback & star ratings** | ✅ | ✅ | ✅ | ✅ |
-| **Analytics & wait-time** | ✅ | ✅ | ✅ | ✅ |
-| **Best for** | Private 1:1 help | Structured private tickets | Public, reusable answers | Real-time voice help |
-| **Availability** | All Support Bot plans | All Support Bot plans | Early-access preview | Early-access preview |
+| | Modmail | Ticket System | Forum Support | Voice Support |
+| ------------------------------ | --------------------- | -------------------------- | ------------------------ | -------------------- |
+| **How members reach you** | DM the bot | Click a button | Post in a public forum | Join a voice channel |
+| **Visibility** | Private | Private channel | **Public thread** | Private voice |
+| **Conversation style** | Text (relayed) | Text (in a channel) | Text (in the open) | Live voice |
+| **Built-in AI first answer** | ➖ (via AI FAQ) | ➖ (via AI FAQ) | ✅ | ❌ |
+| **Shared queue & claiming** | ✅ | ✅ | ✅ | ✅ (pull next) |
+| **Auto-close & SLA reminders** | ✅ | ✅ | ✅ | ➖ |
+| **Feedback & star ratings** | ✅ | ✅ | ✅ | ✅ |
+| **Analytics & wait-time** | ✅ | ✅ | ✅ | ✅ |
+| **Best for** | Private 1:1 help | Structured private tickets | Public, reusable answers | Real-time voice help |
+| **Availability** | All Support Bot plans | All Support Bot plans | Early-access preview | Early-access preview |
:::info Legend
✅ supported · ❌ not supported · ➖ not applicable to how this system works
@@ -46,54 +46,54 @@ The detailed tables below compare the three **text-based** systems in depth. **V
## Messaging & communication
-| | Modmail | Ticket System | Forum Support |
-| ---------------------------------------------------------- | :-----: | :-----------: | :-----------: |
-| Conversation happens directly in a channel/thread | ❌ | ✅ | ✅ |
-| Messages relayed via DM | ✅ | ❌ | ➖ |
-| Anonymous staff messages | ✅ | ❌ | ❌ |
-| Snippets (reusable quick responses) | ✅ | ❌ | ❌ |
-| Customizable bot messages (welcome, close, etc.) | ✅ | ✅ | ✅ |
-| Keep the thread to the asker & staff only | ❌ | ➖ | ✅ |
-| View past tickets button | ✅ | ❌ | ❌ |
+| | Modmail | Ticket System | Forum Support |
+| ------------------------------------------------- | :-----: | :-----------: | :-----------: |
+| Conversation happens directly in a channel/thread | ❌ | ✅ | ✅ |
+| Messages relayed via DM | ✅ | ❌ | ➖ |
+| Anonymous staff messages | ✅ | ❌ | ❌ |
+| Snippets (reusable quick responses) | ✅ | ❌ | ❌ |
+| Customizable bot messages (welcome, close, etc.) | ✅ | ✅ | ✅ |
+| Keep the thread to the asker & staff only | ❌ | ➖ | ✅ |
+| View past tickets button | ✅ | ❌ | ❌ |
## Ticket management
-| | Modmail | Ticket System | Forum Support |
-| ----------------------------------------- | :---------------: | :-----------: | :-----------: |
-| Topics / categories | ✅ | ✅ | ✅ |
-| Claiming / assignment | ✅ | ✅ | ✅ |
-| Hand a claimed item back to the queue | ➖ | ➖ | ✅ |
-| Hold / pause | ✅ | ✅ | ❌ |
-| Rename | ✅ | ✅ | ➖ |
-| Additional members | ✅ | ✅ | ➖ |
-| Scheduled closing | ✅ | ✅ | ❌ |
-| Close requests (user/staff confirmation) | ✅ | ✅ | ❌ |
-| Close reasons (custom & predefined) | ✅ | ❌ | ❌ |
-| One ticket per user limit | ✅ | ✅ | ❌ |
-| Per-topic priority | ❌ | ❌ | ✅ |
-| Priority by member role | ❌ | ❌ | ✅ |
-| Close / "mark solved" button | ✅ | ✅ | ✅ |
-| Apply a "solved" tag on close | ➖ | ➖ | ✅ |
-| Archive on close | ✅ | ❌ | ✅ |
-| Reopen closed items | ✅ | ❌ | ❌ |
-| DM confirmation on close | ✅ | ✅ | ✅ |
-| Attach transcript to close DM | ✅ | ✅ | ✅ |
+| | Modmail | Ticket System | Forum Support |
+| ---------------------------------------- | :-----: | :-----------: | :-----------: |
+| Topics / categories | ✅ | ✅ | ✅ |
+| Claiming / assignment | ✅ | ✅ | ✅ |
+| Hand a claimed item back to the queue | ➖ | ➖ | ✅ |
+| Hold / pause | ✅ | ✅ | ❌ |
+| Rename | ✅ | ✅ | ➖ |
+| Additional members | ✅ | ✅ | ➖ |
+| Scheduled closing | ✅ | ✅ | ❌ |
+| Close requests (user/staff confirmation) | ✅ | ✅ | ❌ |
+| Close reasons (custom & predefined) | ✅ | ❌ | ❌ |
+| One ticket per user limit | ✅ | ✅ | ❌ |
+| Per-topic priority | ❌ | ❌ | ✅ |
+| Priority by member role | ❌ | ❌ | ✅ |
+| Close / "mark solved" button | ✅ | ✅ | ✅ |
+| Apply a "solved" tag on close | ➖ | ➖ | ✅ |
+| Archive on close | ✅ | ❌ | ✅ |
+| Reopen closed items | ✅ | ❌ | ❌ |
+| DM confirmation on close | ✅ | ✅ | ✅ |
+| Attach transcript to close DM | ✅ | ✅ | ✅ |
## Automation
-| | Modmail | Ticket System | Forum Support |
-| ---------------------------------------- | :-----: | :-----------: | :-----------: |
-| Auto-close on inactivity | ✅ | ✅ | ✅ |
-| Auto-close when user leaves server | ✅ | ✅ | ❌ |
-| Inactivity warning before auto-close | ✅ | ✅ | ✅ |
-| Team member inactivity reminders | ✅ | ✅ | ✅ |
-| Unassigned / unclaimed reminders | ✅ | ✅ | ✅ |
-| Only remind inside opening hours | ✅ | ✅ | ✅ |
-| Opening hours | ✅ | ✅ | ✅ |
-| Closed-hours notice to the member | ✅ | ➖ | ✅ |
-| Team notification on new items | ➖ | ✅ | ✅ |
-| Built-in AI first answer / deflection | ❌ | ❌ | ✅ |
-| Holiday detection & custom holidays | ✅ | ✅ | ✅ |
+| | Modmail | Ticket System | Forum Support |
+| ------------------------------------- | :-----: | :-----------: | :-----------: |
+| Auto-close on inactivity | ✅ | ✅ | ✅ |
+| Auto-close when user leaves server | ✅ | ✅ | ❌ |
+| Inactivity warning before auto-close | ✅ | ✅ | ✅ |
+| Team member inactivity reminders | ✅ | ✅ | ✅ |
+| Unassigned / unclaimed reminders | ✅ | ✅ | ✅ |
+| Only remind inside opening hours | ✅ | ✅ | ✅ |
+| Opening hours | ✅ | ✅ | ✅ |
+| Closed-hours notice to the member | ✅ | ➖ | ✅ |
+| Team notification on new items | ➖ | ✅ | ✅ |
+| Built-in AI first answer / deflection | ❌ | ❌ | ✅ |
+| Holiday detection & custom holidays | ✅ | ✅ | ✅ |
## Feedback, analytics & monitoring
diff --git a/docs/support-bot/forum-support/ai-deflection.md b/docs/support-bot/forum-support/ai-deflection.md
index 1f7cdea7..d859fe54 100644
--- a/docs/support-bot/forum-support/ai-deflection.md
+++ b/docs/support-bot/forum-support/ai-deflection.md
@@ -27,10 +27,10 @@ Forum Support can let AI take a first pass at every new thread, answering common
AI auto-answer lives in the **AI** section of the [Configuration](/docs/support-bot/forum-support/configuration#ai) page. The section only appears when AI is available for your server.
-| Setting | What it does |
-| ---------------------- | ------------------------------------------------------------------------------------------------------------------------ |
-| **Enable AI answers** | Posts an AI first response on new threads, with the yes/no buttons. |
-| **AI summary on claim**| DMs the claiming staff member a short summary of the conversation so far. |
+| Setting | What it does |
+| ----------------------- | ------------------------------------------------------------------------- |
+| **Enable AI answers** | Posts an AI first response on new threads, with the yes/no buttons. |
+| **AI summary on claim** | DMs the claiming staff member a short summary of the conversation so far. |
You can customize the acknowledgement messages for the **Yes** and **No** buttons in the [Messages](/docs/support-bot/forum-support/configuration#messages) section.
diff --git a/docs/support-bot/forum-support/claiming.md b/docs/support-bot/forum-support/claiming.md
index f1e361d0..0fd2ee86 100644
--- a/docs/support-bot/forum-support/claiming.md
+++ b/docs/support-bot/forum-support/claiming.md
@@ -20,11 +20,11 @@ Forum Support gives your whole team one shared queue. Threads are claimed by a s
The panel is a live message the bot keeps up to date in your [staff queue panel channel](/docs/support-bot/forum-support/configuration#main). It groups threads into:
-| Group | Meaning |
-| --------------- | ----------------------------------------------------------------- |
-| **Unclaimed** | Waiting for someone to pick them up. |
-| **In progress** | Currently claimed and being worked on. |
-| **Handed back** | Were claimed, then returned to the queue and need a new owner. |
+| Group | Meaning |
+| --------------- | -------------------------------------------------------------- |
+| **Unclaimed** | Waiting for someone to pick them up. |
+| **In progress** | Currently claimed and being worked on. |
+| **Handed back** | Were claimed, then returned to the queue and need a new owner. |
Priority threads (see [Topics](/docs/support-bot/forum-support/topics) and per-channel [Priority](/docs/support-bot/forum-support/configuration#priority)) appear first within each group.
diff --git a/docs/support-bot/forum-support/commands.md b/docs/support-bot/forum-support/commands.md
index f3de963b..1733ab24 100644
--- a/docs/support-bot/forum-support/commands.md
+++ b/docs/support-bot/forum-support/commands.md
@@ -14,11 +14,11 @@ Commands and staff buttons only work for members with one of your configured [st
## Slash commands {#commands}
-| Command | What it does |
+| Command | What it does |
| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
-| `/forum next` | Claims the next available thread in the queue and assigns it to you - the quickest way to pick up work. |
+| `/forum next` | Claims the next available thread in the queue and assigns it to you - the quickest way to pick up work. |
| `/forum step-away` | Hands the thread you're currently in back to the queue so another team member can take over. Use it when you can't continue. |
-| `/forum my-assignments` | Lists the threads currently assigned to you, so you can keep track of what's on your plate. |
+| `/forum my-assignments` | Lists the threads currently assigned to you, so you can keep track of what's on your plate. |
| `/forum close` | Closes the current thread (marks it solved, applies the solved tag if configured, and runs the close steps). |
## Buttons {#buttons}
@@ -27,20 +27,20 @@ Commands and staff buttons only work for members with one of your configured [st
The queue panel lives in your [staff queue panel channel](/docs/support-bot/forum-support/configuration#main) and updates itself as the queue changes. It groups threads into **Unclaimed**, **In progress**, and **Handed back**.
-| Button | What it does |
-| ------------------ | -------------------------------------------------------------------- |
-| **Assign me** | Claims the next unclaimed thread and assigns it to you. |
-| **Claim** | Claims a specific thread. |
-| **My assignments** | Shows the threads currently assigned to you. |
-| **Step away** | Returns your current thread to the queue. |
+| Button | What it does |
+| ------------------ | ------------------------------------------------------- |
+| **Assign me** | Claims the next unclaimed thread and assigns it to you. |
+| **Claim** | Claims a specific thread. |
+| **My assignments** | Shows the threads currently assigned to you. |
+| **Step away** | Returns your current thread to the queue. |
### In a thread {#thread-buttons}
-| Button | Who sees it | What it does |
-| ------------------ | ---------------- | ------------------------------------------------------------------------------------------------- |
-| **Mark as solved** | Asker & staff | Closes the thread as solved. The person who opened the thread can resolve it themselves once they're happy, and staff can close it any time. |
-| **Yes, solved** | Asker (AI flow) | Shown after an AI answer - confirms it helped and closes the thread. Only the person who opened the thread can use it. |
-| **No, I need a human** | Asker (AI flow) | Shown after an AI answer - hands the thread to your team. Only the person who opened the thread can use it. |
+| Button | Who sees it | What it does |
+| ---------------------- | --------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
+| **Mark as solved** | Asker & staff | Closes the thread as solved. The person who opened the thread can resolve it themselves once they're happy, and staff can close it any time. |
+| **Yes, solved** | Asker (AI flow) | Shown after an AI answer - confirms it helped and closes the thread. Only the person who opened the thread can use it. |
+| **No, I need a human** | Asker (AI flow) | Shown after an AI answer - hands the thread to your team. Only the person who opened the thread can use it. |
## A typical workflow {#workflow}
diff --git a/docs/support-bot/forum-support/configuration.md b/docs/support-bot/forum-support/configuration.md
index d670b506..f97af828 100644
--- a/docs/support-bot/forum-support/configuration.md
+++ b/docs/support-bot/forum-support/configuration.md
@@ -26,22 +26,22 @@ If you don't have a forum channel yet, create one in Discord first (**Create Cha
The main **Configuration** page holds your overall settings. The most important ones:
-| Setting | What it does |
-| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| **Enable Forum Support** | Turns the whole system on or off. While off, the bot ignores your forum channels and the `/forum` commands are hidden. |
-| **Maintenance mode** | Temporarily pauses handling of new threads without fully disabling the system. |
-| **Staff queue panel channel** | The text channel where the live queue panel is posted. Your team claims and picks up threads from here. |
-| **Staff member roles** | Anyone with one of these roles is treated as support staff - they can claim threads, use the buttons, and run the `/forum` commands. |
-| **Only send reminders during open hours** | When on, staff/inactivity reminders are only sent during your [opening hours](/docs/support-bot/general/opening-hours), so your team isn't pinged overnight. |
-| **Save transcripts** | When on, a full transcript of each closed thread is saved to [modmail.net](/docs/support-bot/general/modmail-net) and can be attached to the log channel and close DM. |
+| Setting | What it does |
+| ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| **Enable Forum Support** | Turns the whole system on or off. While off, the bot ignores your forum channels and the `/forum` commands are hidden. |
+| **Maintenance mode** | Temporarily pauses handling of new threads without fully disabling the system. |
+| **Staff queue panel channel** | The text channel where the live queue panel is posted. Your team claims and picks up threads from here. |
+| **Staff member roles** | Anyone with one of these roles is treated as support staff - they can claim threads, use the buttons, and run the `/forum` commands. |
+| **Only send reminders during open hours** | When on, staff/inactivity reminders are only sent during your [opening hours](/docs/support-bot/general/opening-hours), so your team isn't pinged overnight. |
+| **Save transcripts** | When on, a full transcript of each closed thread is saved to [modmail.net](/docs/support-bot/general/modmail-net) and can be attached to the log channel and close DM. |
### AI auto-answers {#ai}
If AI is available for your server, you can let the bot try to answer a new thread before a human gets involved. The member is then asked whether the answer helped - "yes" closes the thread, "no" hands it to your team. This is a great way to deflect common, repeat questions.
-| Setting | What it does |
-| --------------------- | -------------------------------------------------------------------------------------- |
-| **Enable AI answers** | Lets the bot post an AI first response on new threads. |
+| Setting | What it does |
+| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
+| **Enable AI answers** | Lets the bot post an AI first response on new threads. |
| **AI summary on claim** | When a staff member claims a thread, the bot DMs them a short AI summary of the conversation so far, so they can catch up instantly. |
:::info AI usage
@@ -52,14 +52,14 @@ AI answers and summaries use your server's AI Coins. The AI section only appears
Keep threads moving and close out the ones that have gone quiet.
-| Setting | What it does |
-| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
-| **Reminder: unanswered (claimed)** | If a staff member claims a thread but doesn't reply within this time, they get a nudge. Example: `24h`. |
-| **Reminder: unclaimed** | If a new thread sits in the queue unclaimed for this long, your team is reminded. Example: `6h`. |
-| **Auto-close inactive threads** | When on, threads with no activity are closed automatically. |
-| **Auto-close notice timeframe** | How long of silence before the member gets a "this will close soon" warning. Example: `24h`. |
-| **Auto-close timeframe** | How long of silence before the thread is actually closed. Example: `48h`. |
-| **Team notification** | Optionally ping your staff roles in a channel whenever a new thread opens. See [Team notification](#team-notification). |
+| Setting | What it does |
+| ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
+| **Reminder: unanswered (claimed)** | If a staff member claims a thread but doesn't reply within this time, they get a nudge. Example: `24h`. |
+| **Reminder: unclaimed** | If a new thread sits in the queue unclaimed for this long, your team is reminded. Example: `6h`. |
+| **Auto-close inactive threads** | When on, threads with no activity are closed automatically. |
+| **Auto-close notice timeframe** | How long of silence before the member gets a "this will close soon" warning. Example: `24h`. |
+| **Auto-close timeframe** | How long of silence before the thread is actually closed. Example: `48h`. |
+| **Team notification** | Optionally ping your staff roles in a channel whenever a new thread opens. See [Team notification](#team-notification). |
:::tip Time values
Time fields accept friendly values like `30m`, `6h`, or `48h` (minutes, hours, days).
@@ -69,12 +69,12 @@ Time fields accept friendly values like `30m`, `6h`, or `48h` (minutes, hours, d
Show members an estimated wait time in their thread, so they know what to expect. The estimate adapts automatically based on how quickly your team has been resolving recent threads. Learn more in [Estimated wait time](/docs/support-bot/general/estimated-wait-time).
-| Setting | What it does |
-| ------------------------ | ------------------------------------------------------------------------------------- |
-| **Enable wait-time message** | Posts an estimated wait time in new threads. |
-| **Refresh interval** | How often (in minutes) the wait-time message is updated after it's first posted. |
-| **Cushion** | Extra minutes added to the estimate so you under-promise and over-deliver. |
-| **Maximum hours** | A cap so the estimate never shows an unhelpfully large number. |
+| Setting | What it does |
+| ---------------------------- | -------------------------------------------------------------------------------- |
+| **Enable wait-time message** | Posts an estimated wait time in new threads. |
+| **Refresh interval** | How often (in minutes) the wait-time message is updated after it's first posted. |
+| **Cushion** | Extra minutes added to the estimate so you under-promise and over-deliver. |
+| **Maximum hours** | A cap so the estimate never shows an unhelpfully large number. |
### Messages {#messages}
@@ -97,20 +97,20 @@ Turn on **Send closed notice** to automatically let members know when they post
Members on your bot's blocklist can be stopped from using Forum Support.
-| Setting | What it does |
-| ----------------------------- | -------------------------------------------------------------------------------------- |
-| **Close blocked threads** | When a blocked member opens a thread, automatically close it. |
-| **Blocklist notice message** | The message shown to a blocked member before their thread is closed. |
+| Setting | What it does |
+| ---------------------------- | -------------------------------------------------------------------- |
+| **Close blocked threads** | When a blocked member opens a thread, automatically close it. |
+| **Blocklist notice message** | The message shown to a blocked member before their thread is closed. |
### Keep threads to the asker & staff only {#thread-writing}
By default anyone can comment in a public thread. If you'd rather keep each thread focused on the person who opened it, turn on **Only the original poster and staff can write**. Other members' messages are then removed automatically.
-| Setting | What it does |
-| ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
-| **Only OP and staff can write** | Removes messages from anyone who isn't the original poster or a staff member, keeping the thread clean and on-topic. |
-| **Tell the member why** | When on, the bot DMs the member whose message was removed, explaining they should open their own thread for help. |
-| **Removed-message notice** | The DM text sent to that member. |
+| Setting | What it does |
+| ------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
+| **Only OP and staff can write** | Removes messages from anyone who isn't the original poster or a staff member, keeping the thread clean and on-topic. |
+| **Tell the member why** | When on, the bot DMs the member whose message was removed, explaining they should open their own thread for help. |
+| **Removed-message notice** | The DM text sent to that member. |
## Forum Channels page {#forum-channels}
@@ -118,19 +118,19 @@ The [Forum Channels](https://scnx.app/glink?page=support-system/forum-support/ch
For **each** forum channel you can set:
-| Setting | What it does |
-| -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
-| **Forum channel** | The Discord forum channel to manage. |
-| **Welcome message (override)** | A welcome message just for this channel (otherwise the global one is used). |
-| **Closed message (override)** | A message posted in the thread when it's closed. |
-| **Log channel (override)** | Send this channel's close summaries to a specific log channel instead of the [default](#log-channel). |
-| **Close DM message (override)** | A custom [close DM](#close-dm) message for this channel. |
-| **Solved tag** | A forum tag automatically applied to threads when they're marked solved. |
-| **Lock until claimed** | Locks a new thread so the member can't add more until a staff member claims it. Claiming unlocks it automatically. |
-| **Lock on close** | Locks the thread when it's closed. |
-| **Only OP and staff can write** | Same as the global option, but just for this channel. |
-| **Staff member roles (override)**| Use different staff roles for this channel. |
-| **Priority** ([details](#priority)) | Treat threads as high-priority based on the asker's roles or a chosen forum tag, with an optional priority welcome message. |
+| Setting | What it does |
+| ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
+| **Forum channel** | The Discord forum channel to manage. |
+| **Welcome message (override)** | A welcome message just for this channel (otherwise the global one is used). |
+| **Closed message (override)** | A message posted in the thread when it's closed. |
+| **Log channel (override)** | Send this channel's close summaries to a specific log channel instead of the [default](#log-channel). |
+| **Close DM message (override)** | A custom [close DM](#close-dm) message for this channel. |
+| **Solved tag** | A forum tag automatically applied to threads when they're marked solved. |
+| **Lock until claimed** | Locks a new thread so the member can't add more until a staff member claims it. Claiming unlocks it automatically. |
+| **Lock on close** | Locks the thread when it's closed. |
+| **Only OP and staff can write** | Same as the global option, but just for this channel. |
+| **Staff member roles (override)** | Use different staff roles for this channel. |
+| **Priority** ([details](#priority)) | Treat threads as high-priority based on the asker's roles or a chosen forum tag, with an optional priority welcome message. |
### Default log channel {#log-channel}
diff --git a/docs/support-bot/forum-support/intro.md b/docs/support-bot/forum-support/intro.md
index 76073703..a75c6d0f 100644
--- a/docs/support-bot/forum-support/intro.md
+++ b/docs/support-bot/forum-support/intro.md
@@ -49,23 +49,23 @@ Threads carrying a configured [priority](/docs/support-bot/forum-support/configu
At any moment, the bot knows whether a thread is waiting on your team or on the member. This is what drives the reminders, the auto-close timer and how threads are sorted in the staff queue:
-| Status | What it means |
-| ------------------- | ------------------------------------------------------------------ |
-| **New** | Just opened - nobody has claimed or answered it yet. |
-| **Waiting on team** | The member is waiting for your team to reply. |
-| **Waiting on user** | Your team replied and is now waiting for the member. |
+| Status | What it means |
+| ------------------- | -------------------------------------------------------------------------- |
+| **New** | Just opened - nobody has claimed or answered it yet. |
+| **Waiting on team** | The member is waiting for your team to reply. |
+| **Waiting on user** | Your team replied and is now waiting for the member. |
| **Handed back** | Someone claimed it, then returned it to the queue for another team member. |
-| **Closed** | Resolved and closed. |
+| **Closed** | Resolved and closed. |
## Main components {#components}
-| Component | Purpose |
-| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| **Forum channel(s)** | One or more Discord forum channels the bot manages. Each can have its own welcome/close messages, solved tag, locking, topics and overrides. |
-| **Staff queue panel** | A live embed posted in a channel of your choice showing unclaimed, in-progress and handed-back threads, with **Claim** / **Assign me** buttons. |
-| **Topics (tags)** | Map forum tags to topics for per-topic welcome messages and priority. See [Topics](/docs/support-bot/forum-support/topics). |
-| **AI auto-answer** | Optional first-response AI that tries to resolve the thread before a human is involved, with "did this help?" deflect buttons. |
-| **Log channel** | Optional channel that receives a close summary plus a transcript file for every closed thread. Can be set globally or per forum channel. |
+| Component | Purpose |
+| --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
+| **Forum channel(s)** | One or more Discord forum channels the bot manages. Each can have its own welcome/close messages, solved tag, locking, topics and overrides. |
+| **Staff queue panel** | A live embed posted in a channel of your choice showing unclaimed, in-progress and handed-back threads, with **Claim** / **Assign me** buttons. |
+| **Topics (tags)** | Map forum tags to topics for per-topic welcome messages and priority. See [Topics](/docs/support-bot/forum-support/topics). |
+| **AI auto-answer** | Optional first-response AI that tries to resolve the thread before a human is involved, with "did this help?" deflect buttons. |
+| **Log channel** | Optional channel that receives a close summary plus a transcript file for every closed thread. Can be set globally or per forum channel. |
## Key features {#features}
diff --git a/docs/support-bot/forum-support/support-feedback.md b/docs/support-bot/forum-support/support-feedback.md
index 95e4fac8..ddc6d58d 100644
--- a/docs/support-bot/forum-support/support-feedback.md
+++ b/docs/support-bot/forum-support/support-feedback.md
@@ -24,14 +24,14 @@ Collect a quick star rating from members after their thread closes, so you can m
## Configuration {#configuration}
-| Setting | What it does |
-| ----------------------------- | ----------------------------------------------------------------------------------------------------------------- |
-| **Enable feedback** | Asks members to rate their experience after a thread closes. |
-| **Anonymous feedback** | When on, the member's identity isn't stored with their rating. |
-| **Send results to a channel** | Posts submitted feedback to a channel of your choice. |
-| **Feedback channel** | The channel that receives the results (when the option above is on). |
-| **Minimum thread duration** | Only ask for feedback on threads that were open at least this long, so trivial threads are skipped. |
-| **Custom questions** | Add your own follow-up questions to the rating modal (short or paragraph answers, optional/required). |
+| Setting | What it does |
+| ----------------------------- | ----------------------------------------------------------------------------------------------------- |
+| **Enable feedback** | Asks members to rate their experience after a thread closes. |
+| **Anonymous feedback** | When on, the member's identity isn't stored with their rating. |
+| **Send results to a channel** | Posts submitted feedback to a channel of your choice. |
+| **Feedback channel** | The channel that receives the results (when the option above is on). |
+| **Minimum thread duration** | Only ask for feedback on threads that were open at least this long, so trivial threads are skipped. |
+| **Custom questions** | Add your own follow-up questions to the rating modal (short or paragraph answers, optional/required). |
The rate-request and post-submission messages are customizable right on this page.
diff --git a/docs/support-bot/forum-support/topics.md b/docs/support-bot/forum-support/topics.md
index 10ecfb7f..9895d739 100644
--- a/docs/support-bot/forum-support/topics.md
+++ b/docs/support-bot/forum-support/topics.md
@@ -24,11 +24,11 @@ Topics let you turn your forum channel's **tags** into smart behaviors. A single
For each topic you can set:
-| Setting | What it does |
-| -------------------- | ---------------------------------------------------------------------------------------------------------------------- |
-| **Tag** | The forum tag this topic applies to. Threads opened with this tag use the topic's settings. |
-| **Welcome message** | A custom welcome posted (and pinned) when a thread opens with this tag, instead of the channel's default welcome. |
-| **Priority** | When on, threads with this tag are sorted ahead of everyone else in the [staff queue](/docs/support-bot/forum-support/claiming). |
+| Setting | What it does |
+| ------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
+| **Tag** | The forum tag this topic applies to. Threads opened with this tag use the topic's settings. |
+| **Welcome message** | A custom welcome posted (and pinned) when a thread opens with this tag, instead of the channel's default welcome. |
+| **Priority** | When on, threads with this tag are sorted ahead of everyone else in the [staff queue](/docs/support-bot/forum-support/claiming). |
:::tip Two ways to set priority
Marking a topic as priority is the simplest way to prioritize a whole category. If you'd rather prioritize threads by **who** opened them (for example a "Customer" role), use the per-channel [Priority](/docs/support-bot/forum-support/configuration#priority) settings instead - both feed the same queue.
diff --git a/docs/support-bot/intro.md b/docs/support-bot/intro.md
index a2131c59..e0d775d8 100644
--- a/docs/support-bot/intro.md
+++ b/docs/support-bot/intro.md
@@ -15,7 +15,7 @@ Whether you're running a small community or a large server with thousands of mem
| | [Modmail](/docs/support-bot/modmail/intro) | [Ticket System](/docs/support-bot/ticket-system/intro) | [Forum Support](/docs/support-bot/forum-support/intro) | [Voice Support](/docs/support-bot/voice-support/intro) |
| ------------------- | -------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| **How it works** | Users open tickets by DMing your bot. Messages are relayed between the user's DMs and a private staff channel. | Users open tickets via buttons, dropdown menus, or commands on your server. A private channel is created for each ticket. | Users post a thread in a public forum channel. AI can answer first, then your team claims and resolves it in the open. | Users join a voice channel to queue up. Staff pull them into their own support voice channels one at a time. |
-| **Best for** | Servers that want a private, DM-based support experience. Users don't need to interact in a public channel. | Servers that want a channel-based support flow where everything happens directly on the server. | Servers that want public, self-serve support where answers stay visible and reusable for the whole community. | Servers that want to talk to users over voice - onboarding calls, 1:1 coaching, live troubleshooting. |
+| **Best for** | Servers that want a private, DM-based support experience. Users don't need to interact in a public channel. | Servers that want a channel-based support flow where everything happens directly on the server. | Servers that want public, self-serve support where answers stay visible and reusable for the whole community. | Servers that want to talk to users over voice - onboarding calls, 1:1 coaching, live troubleshooting. |
| **Unique features** | Anonymous messages, snippets (quick replies), typing relay, message editing/deletion | Per-topic ticket limits, per-topic required roles, button colors per topic | Built-in AI deflection, public threads, tag-based topics, priority queue, write restriction, per-channel log channel & close DM | Priority queue, waiting music, closed-state music, per-call notes & history, debrief form, call thread under dashboard channel |
All four systems share [general features](/docs/support-bot/general/bot-configuration) like opening hours, forms, analytics, ticket utilization, estimated wait times, and more. Not sure which is right for you? Check the [Feature Comparison](/docs/support-bot/feature-comparison).
diff --git a/docs/support-bot/modmail/basics.md b/docs/support-bot/modmail/basics.md
index 97028c0e..856bc369 100644
--- a/docs/support-bot/modmail/basics.md
+++ b/docs/support-bot/modmail/basics.md
@@ -110,7 +110,7 @@ To use snippets, staff members can:
To manage snippets, the following commands are available to staff members:
-- `/modmail snippets create key: [form: