⚠ DEV / TEST INSTANCE — changes here do not affect the live bot. Switch to goofbot.gyneric.net for production.
D Dev GoofBot Dev build
Knowledge center

GoofBot docs

Setup guide, feature reference, slash-command index, and settings documentation for the current build.

74 commands documented
223 settings indexed
7 command groups for quicker scanning

Start here

Recommended first-run path for a new server.
  1. Add GoofBot to your Discord server and log into the dashboard.
  2. If this is a fresh server, start with the setup wizard and auto-build flow before tuning individual tabs.
  3. Then finish the core setup: staff roles, audit/mod log channel, welcome/verify flow, and tickets if you use support.
  4. If you stream, connect Twitch and add your channel on the Twitch page. Use the separate Twitch guide if you want the chat bot in-channel too.
  5. Review the operator guides first, then use the grouped slash-command reference for the workflows your staff and members actually touch.
  6. Use the settings reference before changing less obvious toggles; the descriptions here come from the same schema the dashboard uses.

Core workflows

The fastest way to get real value out of the bot.
Auto-build first: use the setup wizard when you want the bot to create the recommended Discord structure in one pass.
Moderation and logging: set staff roles, audit/mod log channels, then review AutoMod, blocked terms, warning decay, anti-raid, and slow-mode protections.
Tickets and support: configure ticket categories and archive category, post the panel, tune per-category prompts, then add KB articles members can read before opening tickets.
Community systems: configure welcome, birthdays, points, XP, suggestions, reaction roles, custom commands, tags, and automation features around the routines you actually use.
Twitch and creator ops: link Twitch, add watched channels, configure go-live posts, EventSub alerts, chat bridge, clips, schedules, and moderator tools after the base Discord setup is stable.
Operator guides

Learn the workflows first

These sections explain how the systems behave in practice, not just what each setting is called.

Auto-build (the one-click setup) Pick a template, click Build my server, get a complete server in ~30 seconds. Idempotent - re-runs add what is missing without touching what is there.
🎥
Streamer
Single broadcaster's community
24 channels
Roles
AdminModVerifiedUnverifiedBirthdayBoost ThanksLive PingsLive NowTwitch SubTwitch VIPStreamerCreator
Reaction panels
PronounsNotificationsColors
Default seeds
  • !discord / !socials / !subscribe / !schedule commands
  • !claim wave / hug / gg / lurk / f triggers
  • Starboard threshold 3 + star emoji
Flags flipped on
Twitch raid auto-shoutoutHype auto-clipStarboardBirthdaysXPLoyalty
24 channels (click to expand)
#welcome#rules#general#bot-spam#live-alerts#clips#vod-timestamps#twitch-events#donations#boosts#birthdays#starboard#lfg#roles#support#voice-hub#stream-chat#music#afk#mod-voice#mod-log#audit-log#modmail#system-status#twitch-chat-log
👥
Community
Broader community, less stream-specific
18 channels
Roles
AdminModVerifiedUnverifiedBirthdayBoost Thanks
Reaction panels
PronounsNotificationsColorsRegion
Default seeds
  • Starboard threshold 3 + star emoji
Flags flipped on
StarboardBirthdaysXP (chat + voice)Loyalty
18 channels (click to expand)
#welcome#rules#general#bot-spam#suggestions#starboard#birthdays#boosts#lfg#roles#support#voice-hub#stream-chat#music#afk#mod-voice#mod-log#audit-log#modmail#message-log#system-status
🎮
Gaming
Game-night focused
18 channels
Roles
AdminModVerifiedUnverifiedBirthdayBoost ThanksStreamerCreator
Reaction panels
PronounsNotificationsColorsPlatformRegion
Default seeds
  • Starboard threshold 3 + star emoji
Flags flipped on
XP (chat + voice)StarboardBirthdaysLoyalty
18 channels (click to expand)
#welcome#rules#general#bot-spam#lfg#tournaments#clips#starboard#birthdays#boosts#roles#support#voice-hub#stream-chat#music#afk#mod-voice#mod-log#audit-log#modmail#system-status
🎁
Everything
Kitchen-sink - pick this, then trim
24 channels
Roles
AdminModVerifiedUnverifiedBirthdayBoost ThanksLive PingsLive NowTwitch SubTwitch VIPStreamerCreator
Reaction panels
PronounsNotificationsColorsPlatformRegion
Default seeds
  • !discord / !socials / !subscribe / !schedule commands
  • !claim wave / hug / gg / lurk / f triggers
  • Starboard threshold 3 + star emoji
Flags flipped on
Twitch raid auto-shoutoutHype auto-clipStarboardBirthdaysXP (chat + voice)Loyalty
24 channels (click to expand)
#welcome#rules#general#suggestions#bot-spam#live-alerts#clips#vod-timestamps#twitch-events#donations#lfg#tournaments#starboard#birthdays#boosts#roles#support#voice-hub#stream-chat#music#afk#mod-voice#mod-log#audit-log#modmail#message-log#system-status#twitch-chat-log

How it works

  1. Open the Setup wizard -> pick a template -> optionally let the bot auto-create staff roles -> click Build my server.
  2. The build creates categories, channels, and roles in a single pass with their final permission overwrites - no second-pass cleanup needed.
  3. After channels exist, the bot wires every relevant *_channel setting, posts the welcome / verify / ticket panels, and seeds default chat commands + claim triggers when the preset calls for them.
  4. Every preset finishes by writing a post-build checklist into the build summary: link Twitch (if applicable), mod the bot in chat, customise welcome message, review auto-created roles.

What auto-build never does

  • Never deletes anything
  • Never re-orders existing channels
  • Never overrides existing settings (only seeds empty keys)
  • Never re-runs the welcome post if one is already there
  • Never overrides custom embed templates you've edited
  • Never changes the bot mode (hybrid / discord / twitch)
☠️

Nuclear options - rebuild from scratch

If you need destructive rebuilds (channels you want gone, layouts you want fully redone), the Setup wizard hides two owner-only options behind a multi-step typed-phrase confirm. Both options run the chosen template after the destructive step, so you end up with a clean preset-built server.

☠️ Wipe + rebuild WIPE _server_

Deletes every category and channel in the server, then runs the chosen auto-build template. Roles are untouched. Irreversible. Pick this when you want a hard reset - the existing server gets nuked completely.

When to use:
  • Test server you want to flatten
  • Rebuilding from scratch with a different preset
  • Recovering from a chaotic structure where moving channels is harder than re-creating them
📦 Archive + rebuild ARCHIVE _server_

Moves every existing channel under a new "Archive (read-only)" category locked to admins, then runs the chosen template. Roles untouched. Reversible - your old channels are still there, just hidden and read-only.

When to use:
  • Reorganising while keeping the old layout reachable
  • Auditing your existing channels before deciding which to migrate to the new preset
  • When you're not 100% sure what to keep

Guard rails

  • Both options are owner-only (the user whose Discord ID matches guild.ownerId). Admins can't run them.
  • Both require a typed phrase that includes your literal server name in place of _server_. Typo-protection.
  • Both are hidden behind a <details> panel on the Setup wizard so they're not one tap from auto-build.
  • Confirmation modals tell you exactly what's about to happen before the destructive step runs.

Useful commands

/dashboard
Server setup Get the bot into a usable state before you start turning on advanced systems.
Start in the dashboard, not in slash commands. The dashboard exposes almost every per-guild setting in one place and shows what is already configured.
Set access and logging first: admin or moderator roles, audit log channel, and mod log channel. These give the rest of the workflow somewhere safe to report actions.
After access is set, configure member-facing systems in the order your server actually uses them: welcome and verify, tickets, then points or levels, then Twitch and automation.
Use the dev site to review structural changes before moving them to live. That is the safer path for channel creation, support flows, and public-facing announcements.

Useful commands

/config show/ticket setup/kb list

Important settings

audit_log_channel channel
Audit log channel(s)

Where the bot posts moderation events — message edits, deletes, member joins/leaves, automod actions. Pick multiple if you want the same events mirrored to several channels.

mod_log_channel channel
Mod log channel(s)

Dedicated channel(s) for moderation actions (warns, timeouts, kicks, bans). Falls back to the audit log channel if left empty. Pick multiple to mirror.

admin_role role
Admin role(s)

Members with any of these roles get admin-tier commands without needing the Administrator permission. Roles on your server that already have the Administrator permission are auto-suggested.

moderator_role role
Moderator role(s)

Members with any of these roles get moderator-tier commands (close tickets, warn, timeout, etc.). Admin roles are already covered.

staff_role role
Staff role(s)

Alternative label for moderator roles — same behavior. Pick any role you also want treated as staff/mod.

verified_role role
Verified role

Role granted when a new member clicks I Agree on the /verifypanel. Required for verification to work.

unverified_role role
Unverified role

Auto-assigned to new members on join. Removed when they verify. Leave blank to skip auto-assignment.

Tickets and support How the ticket workflow behaves for members, staff, and follow-up handling.
Members open tickets either from the dashboard-posted ticket panel or from `/ticket open`. Each ticket becomes a private Discord channel scoped to the opener and staff.
The main ticket category setting controls where active tickets are created. The archive category is where closed tickets move after the close flow completes.
Per-category templates let you change the label, intro prompt, and category-specific mod role for different ticket types such as technical, reports, or Twitch support.
Closing a ticket archives the channel, writes the transcript, removes the opener's live access, and optionally DMs the opener with a close message and rating prompt.
The stale-ticket warning setting only affects the dashboard highlight. It does not auto-close tickets by itself. Bulk stale-close is an explicit staff action from the dashboard.
Knowledge base articles are staff-authored answers that members can read with `/kb search`, `/kb show`, and `/kb list` before or after they open a ticket.

Useful commands

/ticket setup/ticket open/ticket close/ticket list/kb search/kb show/kb list

Important settings

tickets_enabled bool default: 1
Tickets system

Master toggle for the support / ticket system. When off, the /ticket command and the panel Create button do nothing; existing tickets stay open but no new ones can be created.

tickets_category channel
Tickets category

Category under which private ticket channels are created. Leave blank to create tickets at the top level.

tickets_archive channel
Tickets archive category

Closed tickets get moved into this category and locked to read-only. Leave blank to leave them in place.

tickets_dm_on_close bool default: 1
DM the opener when their ticket is closed

Sends the ticket creator a polite "thanks, your ticket has been closed" DM when staff closes the ticket. Hidden when Tickets is off.

tickets_close_dm_message text default: Thanks for opening a ticket in {server} — it's been closed by our staff. If your issue isn't fully resolved, you're welcome to open another one anytime.
Close-DM message

Body of the DM sent on close. {server} is replaced with the server name. Leave blank to use the built-in default.

tickets_rating_enabled bool default: 0
Ask for a 1–5 rating after close

Adds five star buttons to the close-DM. Members can tap a number (1=poor, 5=excellent) and optionally leave a comment. Anonymous in DMs to staff; raw analytics live in the Tickets dashboard.

tickets_rating_prompt text default: Quick favour — how was your support experience? Tap a number to rate (1=poor, 5=excellent). Your feedback helps us improve.
Rating prompt

Wording shown above the star buttons. Leave blank for the default. Members can skip the rating entirely by ignoring the message.

tickets_sla_warn_hours int default: 24
Stale-ticket warning (hours)

Tickets older than this without being closed show as STALE on the Tickets dashboard. Set to 0 to disable the highlight. Default 24h.

tickets_reopen_enabled bool default: 0
Allow reopening closed tickets

When on, the close confirmation gets a Reopen button so a mod can flip an archived ticket back to active without losing transcript history. Off by default — most teams prefer that closed means closed.

modmail_channel channel
Modmail channel

When members DM the bot, a private staff thread is created here. Replies in the thread DM the user; messages prefixed with ! stay internal. Use a private channel hidden from regular members.

Moderation and logging Use this layer to make moderation visible, reviewable, and predictable.
Audit logging and mod logging should be set before you rely on warning, timeout, ban, or AutoMod workflows. Without them, staff actions still happen, but you lose the clean review trail.
Use AutoMod and blocked terms for repeatable guardrails. Those are the correct tools for invite spam, caps spam, mention spam, and known bad phrases.
Message logging is privacy-sensitive. Only enable it when your moderation workflow genuinely needs message history review, and keep the retention window as short as your team can tolerate.
For higher-risk communities, anti-raid and autoslow are the first automation surfaces worth enabling. They are directly operational and easier to reason about than more decorative automations.

Useful commands

/config bool/config int/config channel/config role

Important settings

message_logging_enabled bool
Message logging

When enabled, the bot keeps a local copy of every non-bot message for a retention window so mods can review a user's recent chat (including deleted messages) from a ticket. Off by default for privacy.

message_log_retention_days int default: 30
Message log retention (days)

How long the local message log keeps rows before pruning them. 0 = keep forever. Default: 30.

audit_log_channel channel
Audit log channel(s)

Where the bot posts moderation events — message edits, deletes, member joins/leaves, automod actions. Pick multiple if you want the same events mirrored to several channels.

mod_log_channel channel
Mod log channel(s)

Dedicated channel(s) for moderation actions (warns, timeouts, kicks, bans). Falls back to the audit log channel if left empty. Pick multiple to mirror.

Community systems Welcome, verify, points, levels, and recurring engagement systems should be built in a way staff can maintain.
Welcome and verify are the first member-experience systems to set because they affect every new join. Keep those flows short and clear before you add more decorative systems.
Points and XP are both retention tools, but they create moderation overhead if you over-reward low-effort behavior. Start with conservative cooldowns and reward values.
Use role rewards, points payouts, and reaction roles to reinforce existing community structure. Do not use them to replace permissions planning.
If you are unsure whether to enable a community system, leave it off until you know the operational owner for it. Feature breadth is not the same as a good server experience.

Useful commands

/config text/config int/config bool

Important settings

welcome_channel channel
Welcome channel

Channel that receives the welcome embed when a new member joins.

welcome_message text default: Welcome, {user}! 👋 Read <#rules> and pick up roles in <#roles>.
Welcome message

Template for the welcome embed. Supports {user}, {server}, {memberCount}.

welcome_dm_enabled bool
DM welcome

When enabled, new members get a DM with welcome_dm_message (in addition to the channel post).

welcome_dm_message text default: Hey {user}! Welcome to {server}. Take a minute to read the rules and grab the notification roles you want.
Welcome DM body

Template sent as a DM to new members. Supports {user}, {server}, {memberCount}.

verify_channel channel
Verify panel channel

Where /verifypanel posts the rules + I Agree button. Informational only — not required for the feature to work.

points_enabled bool
Points system

Toggle the cross-platform points system for this server. When enabled, members earn points from Discord chat (and later, Twitch chat once the bridge is active).

points_per_message int default: 1
Points per chat message

How many points a member earns per qualifying chat message (short messages and cooldowns still apply). Default: 1.

points_cooldown_seconds int default: 60
Points earn cooldown (seconds)

Minimum seconds between point-earning messages per user — prevents farming. Default: 60.

xp_enabled bool
XP / Levels system

Toggle the per-server XP system. When enabled, members earn XP by chatting and gain levels (configurable rewards on the dashboard).

xp_per_message_min int default: 15
XP per message — minimum

Lower bound of the random XP roll for each qualifying chat message. Default: 15.

xp_per_message_max int default: 25
XP per message — maximum

Upper bound of the random XP roll. Random pick between min/max keeps farming harder. Default: 25.

xp_cooldown_seconds int default: 60
XP earn cooldown (seconds)

Minimum seconds between XP-earning messages per user. Default: 60.

xp_announce_channel channel
Level-up announce channel

Channel where level-up messages get posted. Leave blank to suppress in-channel announcements (DM-only if xp_announce_dm is on).

xp_announce_dm bool
DM members on level-up

Send a DM to the leveled-up member in addition to (or instead of) the channel announcement.

Twitch and creator tools Turn this on after the Discord side is stable so stream announcements and chat tooling do not become your first deployment problem.
Link the broadcaster's Twitch account first, then add watched channels, then configure alert routing. That order keeps auth and routing failures easier to diagnose.
The announce channel and ping role settings are defaults. Individual watched channels can override them when one server supports multiple creators.
Twitch chat features, bridges, and EventSub-style flows create more external failure modes than Discord-only features. Keep the Discord base healthy before expanding here.
For dev review, keep Twitch integrations isolated or explicitly disabled unless you are intentionally validating creator-side behavior.

Useful commands

/twitch add/twitch remove/link twitch

Important settings

twitch_announce_channel channel
Twitch announce channel

Default destination for Twitch live-stream announcements. Each watched channel can override this.

twitch_ping_role role
Twitch ping role

Mentioned by default when a watched Twitch channel goes live. Each watched channel can override this.

twitch_go_live_role role
Twitch go-live role

Automatically granted to linked Discord members whose Twitch account (from the watchlist) is currently streaming, and removed when they stop. Leave empty to disable.

twitch_chat_log_enabled bool
Twitch chat logging

When enabled, the bot archives non-bot Twitch chat for this guild's watched streamers so mods can review recent chat (including via the ticket "Show User History" button's Twitch branch). Off by default for privacy.

twitch_chat_points_enabled bool
Twitch chat points earning

When enabled, linked Discord members earn points from Twitch chat messages (subject to a cooldown) — same balance as Discord-side earnings.

twitch_chat_points_per_message int default: 1
Twitch points per chat message

Points awarded per qualifying Twitch chat message from a linked user. Default: 1.

twitch_chat_points_cooldown_seconds int default: 60
Twitch points earn cooldown (seconds)

Minimum seconds between point-earning Twitch chat messages per user. Default: 60.

Twitch anti-bot & hate-raid protection Sery-style follow-bot / hate-raid defense for Twitch chat. Starts in observe mode — it never bans until a channel explicitly opts in.
Every channel starts in OBSERVE / record mode: the bot detects suspicious activity, logs it, and contributes to a shared global learned blocklist, but takes NO actions. This makes it safe to run alongside another moderation bot (e.g. Sery).
To let GoofBot enforce, the broadcaster mods GGoofBot in their channel, then runs `!antibot enforce` and `!antibot on` in their own chat (or flips the toggles in the dashboard). Until then, nothing is banned.
Detection layers: follow-bot guard (account age, no-avatar, batch-created networks, bot-like usernames), follow-spike → automatic Shield Mode (raid-aware, so legit raids are not punished), first-message scam filter, malicious-link filter on any message, chat flood/spam guard, Twitch's native suspicious-user feed, and a known-bot blocklist (public list seed + self-learning across all channels).
Self-serve: a streamer can type `!join` in GGoofBot's own Twitch chat to add the bot to their channel in observe mode, and `!leave` to remove it.
High-precision detections (scam messages, malicious links, Twitch-restricted users, batch-created networks) are added to the shared global blocklist automatically, so the more channels run the system, the smarter it gets for everyone.
Quick on-demand cleanup: `!removebots` scans current chatters and bans anyone on the known-bot blocklist; `!shield on/off` is a manual Shield Mode panic button.

Useful commands

!antibot status!antibot on!antibot enforce!antibot observe!antibot followguard on!antibot firstmsg on!antibot links on!antibot flood on!antibot blocklist on!antibot suspicious on!antibot action ban!antibot allow <user>!shield on!removebots!join!leave

Important settings

antibot_enabled bool
Twitch anti-bot

Master switch for the Twitch anti-bot system (follow-bot guard, first-message scam filter, blocklist, suspicious-user automation). Everything below is also individually gated.

antibot_observe_only bool
Anti-bot: observe / record mode

ON by default — detect, log, and contribute to the global learned blocklist, but take NO enforcement actions (no bans/timeouts/Shield). Safe to run alongside another bot (e.g. Sery) that does the actual moderating. Turn OFF (or '!antibot observe off') to let GoofBot enforce. Manual !shield always works.

antibot_followguard_enabled bool
Anti-bot: follow-bot guard

On each new follow, check account age / profile picture / known-bot blocklist and act on suspicious accounts. Also powers the follow-spike (hate-raid) detector.

antibot_min_account_age_days int
Anti-bot: min follower account age (days)

Followers whose Twitch account is younger than this are flagged by the follow-bot guard. Default 3.

antibot_require_avatar bool
Anti-bot: flag followers with no avatar

Treat a default (no) profile picture as a suspicion signal for the follow-bot guard.

antibot_name_heuristics bool
Anti-bot: bot-like username detection

Flag generic-word + random-digit usernames in the follow-bot guard. Only counts when paired with another signal (young account / no avatar), never a solo ban.

antibot_follow_action text
Anti-bot: follow action

What to do with a flagged follower: ban | timeout | log. Default log.

antibot_followspike_count int
Anti-bot: follow-spike count

Number of follows within the spike window that triggers hate-raid defense (Shield Mode). Default 15.

antibot_followspike_window_sec int
Anti-bot: follow-spike window (sec)

Time window for the follow-spike count. Default 60.

antibot_shield_auto bool
Anti-bot: auto Shield Mode on spike

When a follow spike is detected, automatically enable Twitch Shield Mode. Auto-clears after 5 min.

antibot_lockdown_followermode bool
Anti-bot: follower-only on spike

Also engage follower-only chat (30m) when a follow spike triggers Shield Mode.

antibot_firstmsg_enabled bool
Anti-bot: first-message scam filter

Scan each chatter's FIRST message for scam patterns (cheap viewers, buy followers, sketchy links). Matches are deleted + actioned.

antibot_firstmsg_action text
Anti-bot: first-message action

What to do on a scam first-message (the message is always deleted): delete | timeout | ban. Default delete.

antibot_link_filter bool
Anti-bot: malicious link filter

Delete + action ANY message (not just first) containing scam shorteners or 'buy followers/viewers' link spam. Mods / VIPs exempt.

antibot_flood_enabled bool
Anti-bot: chat flood guard

Timeout users who flood (>6 messages in 8s) or repeat the same message 4+ times. Mods / VIPs exempt.

antibot_blocklist_enabled bool
Anti-bot: known-bot blocklist

Auto-act on usernames in the known-bot blocklist when they follow or chat. Which list(s) are consulted is set by the blocklist scope below.

antibot_suspicious_enabled bool
Anti-bot: Twitch suspicious users

Act on Twitch's own restricted/monitored (low-trust) flag via EventSub. Requires the broadcaster to grant moderator:read:suspicious_users.

antibot_suspicious_action text
Anti-bot: suspicious-user action

Action for a Twitch-flagged suspicious user: ban (restricted only) | timeout | delete | log. Default log.

antibot_allowlist text
Anti-bot: allowlist

Comma/space-separated Twitch logins that are always exempt from every anti-bot check.

antibot_log_channel channel
Anti-bot: log channel

Discord channel for anti-bot action logs. Falls back to the Twitch events channel, then the default log channel.

How settings behave Understand the setting types so the dashboard and `/config` do not surprise you.
Channel settings point the bot at a destination or container. Some require a category instead of a text channel, especially ticket category and archive settings.
Role settings grant or reference authority. Treat these as permission edges, not just labels. A wrong role here changes who can act on moderation and support workflows.
Boolean settings are feature gates. When a feature is off, dependent settings may stay saved but are intentionally ignored or hidden until the master toggle is enabled again.
Text settings are templates or labels. When help text mentions placeholders such as `{user}` or `{server}`, those are replaced at runtime by the bot.
Integer settings are thresholds, cooldowns, or counts. Use conservative values first, watch the behavior, then tune upward only when the workflow is stable.

Useful commands

/config show/config reset

Slash commands

74 commands currently registered in the codebase.
Start by workflow Open the category that matches the job: setup, support, moderation, community, or creator tools.
Read command cards left to right Each card shows the command purpose, quick examples, subcommands, and required option names.
Setup & server control Core setup, role wiring, verification, admin utilities, and configuration commands. - 14 commands
10 subcommands

/admin

Admin-only bot ops (reload runtime caches, diagnostics)

10
Examples /admin tier grant/admin tier list +8 more
/admin tier grant Grant a tier to a guild or Twitch streamer
No extra options.
/admin tier list List current premium and tester grants
No extra options.
/admin tier check Show the current tier for a scope/identifier
No extra options.
/admin mfa reset Request a 2FA reset — target user approves via DM
No extra options.
/admin mfa list Show everyone with TOTP enrolled
No extra options.
/admin analytics grant Let another Discord user see /dashboard/owner/analytics
No extra options.
/admin analytics revoke Revoke bot-wide analytics access
No extra options.
/admin analytics list List current analytics delegates
No extra options.
/admin reload Re-sync Twitch IRC + EventSub without a full restart
No extra options.
/admin status Show live bot status (Twitch IRC, EventSub, etc.)
No extra options.
7 subcommands

/chantemplate

Channel permission templates (hide/restrict patterns)

7
Examples /chantemplate create/chantemplate update +5 more
/chantemplate create Create a new template (JSON overwrites array)
No extra options.
/chantemplate update Update a template's overwrites or description
No extra options.
/chantemplate apply Apply a template to a channel (REPLACES its overwrites)
No extra options.
/chantemplate delete Delete a template
No extra options.
/chantemplate list List templates
No extra options.
/chantemplate show Show a template's overwrites JSON
No extra options.
/chantemplate help Explain the overwrites JSON format
No extra options.
7 subcommands

/config

Configure GoofBot's per-guild settings (admin only)

7
Examples /config show/config channel +5 more
/config show Show the current configuration for this server
No extra options.
/config channel Set a channel-type setting
No extra options.
/config role Set a role-type setting
No extra options.
/config text Set a text-type setting (e.g. welcome message template)
No extra options.
/config bool Toggle a boolean setting
No extra options.
/config int Set a numeric setting
No extra options.
/config reset Clear a single setting back to unset
No extra options.
2 subcommands

/goofbot

GoofBot admin tools (support access, status)

2
Examples /goofbot support/goofbot revoke-support-access
/goofbot support Open a GoofBot support ticket + optionally authorise support-team dashboard access
No extra options.
/goofbot revoke-support-access Revoke any active GoofBot support-team access to this server
No extra options.
3 subcommands

/notify

Manage your personal DM notifications

3
Examples /notify add/notify remove +1 more
/notify add Subscribe to an event
No extra options.
/notify remove Unsubscribe
No extra options.
/notify list Show your subscriptions
No extra options.
3 subcommands

/rolegrant

Schedule a role grant (with optional auto-revoke)

3
Examples /rolegrant schedule/rolegrant list +1 more
/rolegrant schedule Schedule a grant — optional grant time + optional revoke time
No extra options.
/rolegrant list List all scheduled / pending / granted grants
No extra options.
/rolegrant cancel Cancel a pending grant (already-granted ones can't be un-granted here)
No extra options.
5 subcommands

/rolemenu

Button / select-menu role menus

5
Examples /rolemenu create/rolemenu addrole +3 more
/rolemenu create Create a new role menu (posts to the chosen channel)
No extra options.
/rolemenu addrole Add a role option to a menu
No extra options.
/rolemenu removerole Remove a role option from a menu
No extra options.
/rolemenu delete Delete a menu (removes the posted message)
No extra options.
/rolemenu list List role menus in this server
No extra options.
4 subcommands

/statschannel

Manage server-stats voice channels (auto-renamed)

4
Examples /statschannel add/statschannel list +2 more
/statschannel add Mark a channel as a stats display
No extra options.
/statschannel list List configured stats channels
No extra options.
/statschannel remove Stop tracking a stats channel
No extra options.
/statschannel refresh Force-refresh now
No extra options.
3 subcommands

/timezone

Set your preferred timezone for /remind and birthdays

3
Examples /timezone set/timezone show +1 more
/timezone set Save your timezone (IANA name)
No extra options.
/timezone show Show your saved timezone + the current local time
No extra options.
/timezone clear Remove your saved timezone
No extra options.
5 subcommands

/trust

Cross-server trust-group moderation sync

5
Examples /trust create/trust join +3 more
/trust create Create a trust group — gives you an invite code
No extra options.
/trust join Join a trust group using its invite code
No extra options.
/trust configure Choose which sync types this guild opts into for a group
No extra options.
/trust leave Leave a trust group
No extra options.
/trust list List groups this guild is in
No extra options.
simple command

/verifypanel

Post the rules + I Agree button in a channel (staff)

0
Examples /verifypanel
This command does not define subcommands.
3 subcommands

/voicehub

Manage voice auto-channels (creator → spawned VC)

3
Examples /voicehub add/voicehub remove +1 more
/voicehub add Mark a voice channel as a creator that spawns private VCs
No extra options.
/voicehub remove Stop treating a channel as a voice hub
No extra options.
/voicehub list List active voice hubs
No extra options.
4 subcommands

/welcome

Configure welcome messages (shortcut for /config welcome_*)

4
Examples /welcome set/welcome test +2 more
/welcome set Set welcome channel and message
No extra options.
/welcome test Preview the welcome message
No extra options.
/welcome card Configure the welcome image card
No extra options.
/welcome disable Disable welcome messages
No extra options.
Support, tickets & feedback Ticket intake, knowledge base, reports, suggestions, and direct support workflows. - 4 commands
3 subcommands

/kb

Knowledge base — mod-curated answers to common questions

3
Examples /kb search/kb show +1 more
/kb search Search the knowledge base by keyword
No extra options.
/kb show Show a specific article by its slug
No extra options.
/kb list List the most recent articles in the knowledge base
No extra options.
2 subcommands

/modmail

Modmail thread management

2
Examples /modmail close/modmail reopen
/modmail close Close the modmail thread you're in
No extra options.
/modmail reopen Reopen the most recent closed modmail thread for a user
No extra options.
3 subcommands

/suggest

Suggestion system

3
Examples /suggest create/suggest view +1 more
/suggest create Submit a suggestion
No extra options.
/suggest view View a suggestion
No extra options.
/suggest close Close a suggestion (staff)
No extra options.
8 subcommands

/ticket

Support ticket system

8
Examples /ticket reaction add/ticket reaction remove +6 more
/ticket reaction add Map a reaction on an existing message to a ticket category
No extra options.
/ticket reaction remove Delete a reaction mapping
No extra options.
/ticket reaction list List reaction-ticket mappings
No extra options.
/ticket setup Post a ticket panel with category buttons (staff)
No extra options.
/ticket open Open a support ticket
No extra options.
/ticket close Close this ticket
No extra options.
/ticket add Add a server member into this ticket (staff: instant, others: request)
No extra options.
/ticket list List open tickets (staff)
No extra options.
Moderation & safety Warnings, AutoMod, mutes, raid protection, sticky messages, and day-to-day staff tools. - 13 commands
4 subcommands

/automod

Configure AutoMod filters (admin only)

4
Examples /automod status/automod invites +2 more
/automod status Show current AutoMod settings
No extra options.
/automod invites Block Discord invite links
No extra options.
/automod caps Block messages over a caps percentage (set 0 to disable)
No extra options.
/automod mentions Block messages with too many @ mentions (0 = disabled)
No extra options.
4 subcommands

/automod_regex

Automod: regex patterns → auto-action on match

4
Examples /automod_regex add/automod_regex edit +2 more
/automod_regex add Add a regex rule
No extra options.
/automod_regex edit Update a rule
No extra options.
/automod_regex remove Delete a rule
No extra options.
/automod_regex list List rules
No extra options.
3 subcommands

/autoslow

Configure auto slow-mode

3
Examples /autoslow setup/autoslow disable +1 more
/autoslow setup Enable + tune auto slow-mode
No extra options.
/autoslow disable Turn auto slow-mode off
No extra options.
/autoslow status Show the current config
No extra options.
5 subcommands

/banlist

Subscribe to a global ban list URL (auto-bans users on schedule)

5
Examples /banlist add/banlist edit +3 more
/banlist add Add a subscription
No extra options.
/banlist edit Update a subscription
No extra options.
/banlist remove Delete a subscription
No extra options.
/banlist list List subscriptions
No extra options.
/banlist sync Force-sync a subscription now
No extra options.
3 subcommands

/chmute

Per-channel user mutes (deny SendMessages in one channel)

3
Examples /chmute add/chmute remove +1 more
/chmute add Mute a user in this channel (or any)
No extra options.
/chmute remove Lift a channel mute early
No extra options.
/chmute list Show active channel mutes in this server
No extra options.
4 subcommands

/dmblast

Scheduled DM campaigns to every member of a role

4
Examples /dmblast schedule/dmblast list +2 more
/dmblast schedule Create a scheduled DM campaign
No extra options.
/dmblast list List campaigns
No extra options.
/dmblast toggle Pause or resume a campaign
No extra options.
/dmblast delete Delete a campaign
No extra options.
10 subcommands

/mod

Moderation tools (staff only)

10
Examples /mod warn/mod warnings +8 more
/mod warn Add a warning to a member
No extra options.
/mod warnings List a member's warnings
No extra options.
/mod clearwarning Clear a specific warning by ID
No extra options.
/mod timeout Timeout a member (up to 28 days)
No extra options.
/mod untimeout Remove a member's active timeout
No extra options.
/mod kick Kick a member from this server
No extra options.
/mod ban Ban a member from this server
No extra options.
/mod unban Unban a user by ID
No extra options.
/mod unwarn Remove a specific warning by ID (alias for clearwarning)
No extra options.
/mod congratulate Recognise a member for good behaviour — awards stars + points + a public embed
No extra options.
3 subcommands

/passthrough

Reaction pass-through: mirror messages between channels on specific reactions

3
Examples /passthrough add/passthrough remove +1 more
/passthrough add Mirror a source channel's messages into a target when an emoji is reacted
No extra options.
/passthrough remove Delete a rule
No extra options.
/passthrough list List pass-through rules
No extra options.
4 subcommands

/raid

Anti-raid controls

4
Examples /raid setup/raid lock +2 more
/raid setup Enable anti-raid and configure thresholds
No extra options.
/raid lock Manually lockdown the server now
No extra options.
/raid unlock Clear an active lockdown
No extra options.
/raid status Show current anti-raid state
No extra options.
3 subcommands

/sticky

Manage sticky messages

3
Examples /sticky set/sticky clear +1 more
/sticky set Set or update the sticky message for a channel
No extra options.
/sticky clear Disable the sticky for a channel
No extra options.
/sticky list List active stickies in this server
No extra options.
simple command

/tempmute

Timeout a member for a duration using Discord's native timeout

0
Examples /tempmute
This command does not define subcommands.
3 subcommands

/temprole

Grant a role for a limited time, auto-removed on expiry

3
Examples /temprole grant/temprole revoke +1 more
/temprole grant Give a role that expires after the duration
No extra options.
/temprole revoke Revoke an active temp-role early
No extra options.
/temprole list Show active temp roles
No extra options.
3 subcommands

/threads

Auto-thread + auto-lock rules for a channel

3
Examples /threads configure/threads off +1 more
/threads configure Set up auto-thread / auto-lock for a channel
No extra options.
/threads off Delete all thread rules on a channel
No extra options.
/threads list Show this guild's thread rules
No extra options.
Community & engagement Birthdays, levels, points, games, events, reminders, and repeatable member engagement tools. - 26 commands
simple command

/afk

Mark yourself AFK; bot replies on @mentions

0
Examples /afk
This command does not define subcommands.
4 subcommands

/birthday

Birthday tracking

4
Examples /birthday set/birthday clear +2 more
/birthday set Set your birthday
No extra options.
/birthday clear Remove your birthday from the list
No extra options.
/birthday show Show your stored birthday
No extra options.
/birthday month List birthdays in a month
No extra options.
4 subcommands

/cmd

Manage cross-platform custom chat commands

4
Examples /cmd add/cmd edit +2 more
/cmd add Add a new !command
No extra options.
/cmd edit Edit an existing custom command
No extra options.
/cmd remove Delete a custom command
No extra options.
/cmd list List all custom commands in this server
No extra options.
simple command

/coin

Flip a coin (optionally for points)

0
Examples /coin
This command does not define subcommands.
3 subcommands

/color

Your personal cosmetic name colour

3
Examples /color set/color clear +1 more
/color set Set your name colour
No extra options.
/color clear Remove your cosmetic colour
No extra options.
/color show Show your current cosmetic
No extra options.
4 subcommands

/counting

Counting channel with reset-on-miss + streaks

4
Examples /counting setup/counting disable +2 more
/counting setup Mark a channel as a counting channel
No extra options.
/counting disable Stop counting in a channel (doesn't reset the high score)
No extra options.
/counting list List counting channels in this server
No extra options.
/counting status Show the current count + all-time high
No extra options.
simple command

/dice

Roll dice (NdM notation, e.g. 2d6, 1d20+3)

0
Examples /dice
This command does not define subcommands.
simple command

/drop

Drop points — first N clickers each grab the share

0
Examples /drop
This command does not define subcommands.
simple command

/gamble

Double-or-nothing — 45% to double your bet, 55% to lose it

0
Examples /gamble
This command does not define subcommands.
2 subcommands

/gifts

Twitch gift-sub leaderboard (cumulative per broadcaster)

2
Examples /gifts top/gifts user
/gifts top Top gifters on a Twitch channel
No extra options.
/gifts user Lookup a specific gifter's total on a channel
No extra options.
2 subcommands

/giveaway

Run a timed giveaway

2
Examples /giveaway start/giveaway reroll
/giveaway start Start a new giveaway in this channel
No extra options.
/giveaway reroll Reroll a finished giveaway for new winner(s)
No extra options.
3 subcommands

/invites

Invite tracking

3
Examples /invites top/invites user +1 more
/invites top Top inviters this server
No extra options.
/invites user How many people a member has invited
No extra options.
/invites me Your invite stats + who invited you
No extra options.
10 subcommands

/levels

XP / leveling system

10
Examples /levels rewards add/levels rewards remove +8 more
/levels rewards add Grant a role to members who reach a level
No extra options.
/levels rewards remove Stop granting the role at a level
No extra options.
/levels rewards list List configured role rewards
No extra options.
/levels xp add Add XP to a member
No extra options.
/levels xp set Set a member's total XP
No extra options.
/levels xp reset Reset a member's XP to zero
No extra options.
/levels multiplier set Set a multiplier for a channel (0 = no XP, 1 = default, 2 = 2x …)
No extra options.
/levels multiplier clear Remove a channel's multiplier (back to 1x)
No extra options.
/levels multiplier list List configured multipliers
No extra options.
/levels top Show the XP leaderboard
No extra options.
4 subcommands

/lottery

Server lottery pot

4
Examples /lottery admin setup/lottery admin draw +2 more
/lottery admin setup Enable + set ticket price, next draw, announce channel
No extra options.
/lottery admin draw Draw right now (admin)
No extra options.
/lottery status Current pot + tickets + next draw
No extra options.
/lottery buy Buy tickets
No extra options.
5 subcommands

/points

Community points — cross-platform currency

5
Examples /points balance/points top +3 more
/points balance Check your balance (or another member's)
No extra options.
/points top Show the points leaderboard
No extra options.
/points give Give some of your points to another member
No extra options.
/points award Award points to a member (staff)
No extra options.
/points set Set a member's balance (staff)
No extra options.
simple command

/poll

Create a quick reaction poll

0
Examples /poll
This command does not define subcommands.
simple command

/rank

Show your XP / level rank in this server

0
Examples /rank
This command does not define subcommands.
5 subcommands

/reactionrole

Self-serve roles via emoji reactions

5
Examples /reactionrole create/reactionrole add +3 more
/reactionrole create Post a new reaction-role panel
No extra options.
/reactionrole add Add an emoji → role pairing to an existing message
No extra options.
/reactionrole remove Remove one emoji → role mapping
No extra options.
/reactionrole clear Remove all reaction-role mappings from a message
No extra options.
/reactionrole list List reaction-role mappings in this server
No extra options.
3 subcommands

/remind

Personal reminders

3
Examples /remind me/remind list +1 more
/remind me Remind me about something after a delay
No extra options.
/remind list List your pending reminders
No extra options.
/remind cancel Cancel a reminder
No extra options.
simple command

/rps

Rock / paper / scissors vs the bot (optionally for points)

0
Examples /rps
This command does not define subcommands.
7 subcommands

/shop

Spend points on server-configured items

7
Examples /shop admin add/shop admin remove +5 more
/shop admin add Add an item
No extra options.
/shop admin remove Delete an item
No extra options.
/shop admin toggle Enable/disable an item without deleting it
No extra options.
/shop admin list List all items incl. disabled
No extra options.
/shop list Show available items
No extra options.
/shop buy Buy an item
No extra options.
/shop history Your purchase history in this server
No extra options.
simple command

/slots

Three-reel slots. Match for payout.

0
Examples /slots
This command does not define subcommands.
3 subcommands

/starboard

Configure the starboard

3
Examples /starboard setup/starboard disable +1 more
/starboard setup Enable + configure the starboard
No extra options.
/starboard disable Turn the starboard off
No extra options.
/starboard status Show current starboard config
No extra options.
7 subcommands

/tag

Quick reference responses saved by staff

7
Examples /tag get/tag create +5 more
/tag get Show a tag's content
No extra options.
/tag create Create a new tag (staff)
No extra options.
/tag search Search tags by name, content, or category
No extra options.
/tag category Set or clear a tag's category (staff)
No extra options.
/tag edit Edit an existing tag (staff)
No extra options.
/tag delete Delete a tag (staff)
No extra options.
/tag list List all tags
No extra options.
6 subcommands

/tournament

Single-elimination tournament runner

6
Examples /tournament create/tournament join +4 more
/tournament create Create a new tournament (opens signups) — mod+
No extra options.
/tournament join Sign up for an open tournament
No extra options.
/tournament start Close signups and generate round 1 (mod+)
No extra options.
/tournament report Report a match winner
No extra options.
/tournament bracket Show the current bracket
No extra options.
/tournament list List recent tournaments
No extra options.
4 subcommands

/trivia

Start a trivia round in this channel

4
Examples /trivia admin add/trivia admin remove +2 more
/trivia admin add Add a question to this server's bank
No extra options.
/trivia admin remove Remove one of your guild's questions
No extra options.
/trivia admin list List this guild's questions
No extra options.
/trivia start Start a trivia round
No extra options.
Creator & Twitch tools Twitch notifications, broadcaster helpers, clips, and creator-side runtime integrations. - 4 commands
2 subcommands

/embed

Embed template utilities

2
Examples /embed preview/embed list
/embed preview Preview how a saved embed template will look
No extra options.
/embed list List every embed template the bot knows about
No extra options.
4 subcommands

/sound

Soundboard clips

4
Examples /sound play/sound list +2 more
/sound play Play a clip in your current voice channel
No extra options.
/sound list List all clips
No extra options.
/sound add Add a clip (ManageChannels)
No extra options.
/sound remove Delete a clip (ManageChannels)
No extra options.
6 subcommands

/twitch

Manage Twitch live-stream announcements and chat bridges

6
Examples /twitch bridge add/twitch bridge remove +4 more
/twitch bridge add Link a Twitch channel's chat to a Discord channel
No extra options.
/twitch bridge remove Remove a Twitch chat bridge
No extra options.
/twitch bridge list List this server's Twitch chat bridges
No extra options.
/twitch add Start watching a Twitch channel for live announcements
No extra options.
/twitch remove Stop watching a Twitch channel
No extra options.
/twitch list List Twitch channels being watched in this server
No extra options.
11 subcommands

/twitchmod

Twitch chat moderation from Discord (mod-tier)

11
Examples /twitchmod timeout/twitchmod ban +9 more
/twitchmod timeout Timeout a Twitch user
No extra options.
/twitchmod ban Ban a Twitch user
No extra options.
/twitchmod unban Unban a Twitch user
No extra options.
/twitchmod clear Clear the entire Twitch chat
No extra options.
/twitchmod slow Toggle slow mode
No extra options.
/twitchmod followermode Toggle followers-only mode
No extra options.
/twitchmod subsonly Toggle subscribers-only mode
No extra options.
/twitchmod emoteonly Toggle emote-only mode
No extra options.
/twitchmod title Set the stream title (broadcaster only)
No extra options.
/twitchmod game Set the stream category (broadcaster only)
No extra options.
/twitchmod raid Start a raid (broadcaster only)
No extra options.
Utility & niche tools Smaller workflow-specific commands that do not belong in the main admin or community flows. - 2 commands
8 subcommands

/autorespond

Robust auto-reply rules: keyword triggers with reactions, embeds, scope, presets

8
Examples /autorespond add/autorespond edit +6 more
/autorespond add Add an auto-reply rule
No extra options.
/autorespond edit Edit a rule
No extra options.
/autorespond toggle Turn a rule on or off
No extra options.
/autorespond remove Delete a rule
No extra options.
/autorespond list List all auto-reply rules
No extra options.
/autorespond test See which rule(s) would fire for a given message
No extra options.
/autorespond presets List available preset templates
No extra options.
/autorespond install Install a preset template as a new rule
No extra options.
simple command

/emojistats

Top emoji usage in the last 30 days

0
Examples /emojistats
This command does not define subcommands.
Everything else Commands that are shipped but do not yet belong to a tighter handbook workflow grouping. - 11 commands
simple command

/8ball

Consult the magic 8-ball

0
Examples /8ball
This command does not define subcommands.
simple command

/about

About this server's bot identity

0
Examples /about
This command does not define subcommands.
6 subcommands

/autorole

Roles automatically granted when a member joins the server

6
Examples /autorole add/autorole remove +4 more
/autorole add Add a role to grant on join
No extra options.
/autorole remove Stop granting a role on join
No extra options.
/autorole list Show the current auto-join roles
No extra options.
/autorole clear Remove all auto-join roles
No extra options.
/autorole enable Turn auto-join roles ON
No extra options.
/autorole disable Turn auto-join roles OFF (keeps the list)
No extra options.
4 subcommands

/awards

Browse community recognitions on this server

4
Examples /awards me/awards view +2 more
/awards me Show your own awards
No extra options.
/awards view Show another member's awards
No extra options.
/awards top Top members by stars on this server
No extra options.
/awards recent Most recent community awards
No extra options.
2 subcommands

/data

Manage your data

2
Examples /data export/data info
/data export DM yourself a JSON file with everything we have on your user ID
No extra options.
/data info Show what data we hold for you (counts, no contents)
No extra options.
20 subcommands

/ffxiv

Final Fantasy XIV — Lodestone characters & game info

20
Examples /ffxiv help/ffxiv link +18 more
/ffxiv help List all FFXIV commands
No extra options.
/ffxiv link Link your FFXIV character to your Discord account
No extra options.
/ffxiv unlink Remove your linked FFXIV character
No extra options.
/ffxiv verify Prove the linked character is yours (Lodestone bio code)
No extra options.
/ffxiv profile Show a linked character profile
No extra options.
/ffxiv card Render a character card image
No extra options.
/ffxiv jobs Show a linked character's job/class levels
No extra options.
/ffxiv attributes Show a linked character's stats/attributes
No extra options.
/ffxiv times Eorzea clock + server reset timers
No extra options.
/ffxiv island Island Sanctuary info, reset timing & workshop optimizers
No extra options.
/ffxiv item Look up an item (weapon, gear, food, material…)
No extra options.
/ffxiv action Look up an action / spell / weaponskill
No extra options.
/ffxiv market Market-board prices for an item
No extra options.
/ffxiv lookup Look up a trait, mount, minion, emote, orchestrion, or Triple Triad card
No extra options.
/ffxiv weather Current weather + forecast for a zone
No extra options.
/ffxiv news Latest Lodestone news & notices
No extra options.
/ffxiv maintenance Upcoming / current maintenance
No extra options.
/ffxiv worldstatus World population + character-creation status
No extra options.
/ffxiv fashion Show this week's Fashion Report (Kaiyoko Star)
No extra options.
/ffxiv search Search the Lodestone for a character
No extra options.
6 subcommands

/lol

League of Legends rank + match tracking (gatekept)

6
Examples /lol track/lol untrack +4 more
/lol track Add a Riot account to this server's tracklist
No extra options.
/lol untrack Remove a Riot account from the tracklist
No extra options.
/lol list Show every Riot account this server is tracking
No extra options.
/lol profile Show current rank + win/loss for a tracked account
No extra options.
/lol matches Show the last N matches with KDA, champion, and outcome
No extra options.
/lol match Drill into a single match — both team comps, KDA, items, gold
No extra options.
5 subcommands

/overwatch

Overwatch 2 career-profile tracking

5
Examples /overwatch profile/overwatch track +3 more
/overwatch profile Show a tracked account's profile
No extra options.
/overwatch track Start tracking a BattleTag in this guild
No extra options.
/overwatch untrack Stop tracking a BattleTag
No extra options.
/overwatch list List tracked BattleTags in this guild
No extra options.
/overwatch refresh Force-refresh a tracked account from OverFast
No extra options.
3 subcommands

/role

Add, remove, or view a member's roles

3
Examples /role add/role remove +1 more
/role add Give a member a role they don't have
No extra options.
/role remove Take a role away from a member who has it
No extra options.
/role view View a member's roles (or list every role in the server)
No extra options.
3 subcommands

/streamschedule

Weekly Twitch stream schedule + reminders

3
Examples /streamschedule add/streamschedule remove +1 more
/streamschedule add Add a weekly stream slot (staff)
No extra options.
/streamschedule remove Delete a slot (staff)
No extra options.
/streamschedule show Show a streamer's schedule
No extra options.
5 subcommands

/valorant

Valorant rank + match tracking (gatekept)

5
Examples /valorant track/valorant untrack +3 more
/valorant track Add a Riot account to this server's Valorant tracklist
No extra options.
/valorant untrack Remove a Valorant account from the tracklist
No extra options.
/valorant list Show every Valorant account this server is tracking
No extra options.
/valorant profile Show current rank + per-queue W/L for a tracked Valorant account
No extra options.
/valorant matches Show the last N Valorant matches with KDA, agent, and outcome
No extra options.

Settings reference

7 grouped sections from the live guild config schema.

Open the groups you need. Setup and support are expanded by default because those are usually the first places admins need exact setting behavior.

Setup & Access 8 settings
audit_log_channel channel multi
Audit log channel(s)

Where the bot posts moderation events — message edits, deletes, member joins/leaves, automod actions. Pick multiple if you want the same events mirrored to several channels.

mod_log_channel channel multi
Mod log channel(s)

Dedicated channel(s) for moderation actions (warns, timeouts, kicks, bans). Falls back to the audit log channel if left empty. Pick multiple to mirror.

admin_role role multi
Admin role(s)

Members with any of these roles get admin-tier commands without needing the Administrator permission. Roles on your server that already have the Administrator permission are auto-suggested.

moderator_role role multi
Moderator role(s)

Members with any of these roles get moderator-tier commands (close tickets, warn, timeout, etc.). Admin roles are already covered.

staff_role role multi
Staff role(s)

Alternative label for moderator roles — same behavior. Pick any role you also want treated as staff/mod.

verified_role role
Verified role

Role granted when a new member clicks I Agree on the /verifypanel. Required for verification to work.

unverified_role role
Unverified role

Auto-assigned to new members on join. Removed when they verify. Leave blank to skip auto-assignment.

system_status_channel channel
System status channel

Watchman service posts a single auto-updating embed here. Updated only when a monitored service changes state (UP→DOWN, DOWN→UP) plus a heartbeat refresh every 15 min so a stale embed = watchman is dead.

Welcome, Onboarding & Member Experience 21 settings
suggestions_channel channel
Suggestions channel

Where new suggestions created with /suggest get posted with upvote/downvote buttons.

verify_channel channel
Verify panel channel

Where /verifypanel posts the rules + I Agree button. Informational only — not required for the feature to work.

welcome_channel channel
Welcome channel

Channel that receives the welcome embed when a new member joins.

welcome_message text default: Welcome, {user}! 👋 Read <#rules> and pick up roles in <#roles>.
Welcome message

Template for the welcome embed. Supports {user}, {server}, {memberCount}.

welcome_dm_enabled bool
DM welcome

When enabled, new members get a DM with welcome_dm_message (in addition to the channel post).

welcome_dm_message text depends on welcome_dm_enabled default: Hey {user}! Welcome to {server}. Take a minute to read the rules and grab the notification roles you want.
Welcome DM body

Template sent as a DM to new members. Supports {user}, {server}, {memberCount}.

leave_channel channel
Leave announce channel

Where 'left the server' messages post. Leave blank to disable.

leave_message text default: {user} left the server. We'll miss them.
Leave message

Template posted when a member leaves. Supports {user}, {server}, {memberCount}.

birthdays_enabled bool
Birthday announcements

Toggle daily birthday announcements. Members opt in via /birthday set; the bot posts in birthdays_channel each day at the configured UTC hour.

birthdays_channel channel depends on birthdays_enabled
Birthday announcements channel

Where birthday announcements get posted. Required for birthday announcements.

birthdays_role role depends on birthdays_enabled
Birthday role

Optional role to grant a member on their birthday and remove the next day.

birthdays_dm_enabled bool depends on birthdays_enabled
Birthday DM

When enabled, DM the birthday person directly in addition to the channel post.

birthdays_dm_message text depends on birthdays_dm_enabled default: 🎂 Happy birthday, {user}! Have a great day.
Birthday DM message

Template for the birthday DM. Supports {user}, {server}, {age}. Defaults to a generic greeting.

welcome_image_enabled bool
Welcome image card

When enabled, new-member welcomes include a generated image card (avatar, username, optional background).

welcome_image_background text
Welcome background image URL

Optional — PNG/JPEG URL used as the backdrop behind the avatar + username. Leave blank for a solid-color gradient.

welcome_image_accent text
Welcome card accent colour

Hex colour used for the username text and ring. Default: #a579ff.

welcome_image_template text
Welcome card template

Built-in background: gradient / nebula / sunset / forest / ocean / midnight / grid / confetti. Only used when welcome_image_background is blank.

welcome_image_font text
Welcome card font

Font style: sans / rounded / serif / mono / display / handwriting. Default 'sans'.

boost_announce_channel channel
Boost announce channel

Channel where boost-celebration messages get posted. Leave blank to disable.

boost_message text
Boost message

Template for the boost post. Supports {user}, {server}, {tier}. Defaults to '🚀 {user} just boosted {server}! Thanks for the support.'

boost_role role
Boost reward role

Role granted to every member who's currently boosting. Auto-revoked when they stop boosting.

Tickets & Support 17 settings
modmail_channel channel
Modmail channel

When members DM the bot, a private staff thread is created here. Replies in the thread DM the user; messages prefixed with ! stay internal. Use a private channel hidden from regular members.

tickets_category channel
Tickets category

Category under which private ticket channels are created. Leave blank to create tickets at the top level.

tickets_archive channel
Tickets archive category

Closed tickets get moved into this category and locked to read-only. Leave blank to leave them in place.

tickets_archive_retention_days int
Auto-delete after N days closed

Time-based pruner: delete the Discord channel for any ticket closed longer than this. DB row + transcript stay (channel_id is just nulled). Leave blank to never time-prune. Range 1-90 days on the standard tier — higher retention is reserved for enterprise.

tickets_archive_max_count int
Keep newest N closed tickets per guild

Count-based pruner: delete the Discord channel for closed tickets beyond the newest N (oldest first when over count). Leave blank to never count-prune. Range 1-250 on the standard tier — Discord caps a guild at 500 total channels (text + voice + forum + categories combined), so 250 leaves headroom for the rest of the server. Higher caps are reserved for enterprise.

tickets_enabled bool default: 1
Tickets system

Master toggle for the support / ticket system. When off, the /ticket command and the panel Create button do nothing; existing tickets stay open but no new ones can be created.

tickets_dm_on_close bool depends on tickets_enabled default: 1
DM the opener when their ticket is closed

Sends the ticket creator a polite "thanks, your ticket has been closed" DM when staff closes the ticket. Hidden when Tickets is off.

tickets_close_dm_message text depends on tickets_dm_on_close default: Thanks for opening a ticket in {server} — it's been closed by our staff. If your issue isn't fully resolved, you're welcome to open another one anytime.
Close-DM message

Body of the DM sent on close. {server} is replaced with the server name. Leave blank to use the built-in default.

tickets_rating_enabled bool depends on tickets_dm_on_close default: 0
Ask for a 1–5 rating after close

Adds five star buttons to the close-DM. Members can tap a number (1=poor, 5=excellent) and optionally leave a comment. Anonymous in DMs to staff; raw analytics live in the Tickets dashboard.

tickets_rating_prompt text depends on tickets_rating_enabled default: Quick favour — how was your support experience? Tap a number to rate (1=poor, 5=excellent). Your feedback helps us improve.
Rating prompt

Wording shown above the star buttons. Leave blank for the default. Members can skip the rating entirely by ignoring the message.

tickets_sla_warn_hours int depends on tickets_enabled default: 24
Stale-ticket warning (hours)

Tickets older than this without being closed show as STALE on the Tickets dashboard. Set to 0 to disable the highlight. Default 24h.

tickets_max_open_per_user int depends on tickets_enabled default: 3
Max open tickets per user

Cap how many tickets one user can have open at the same time. They get a polite refusal once they hit this number. Default 3. Range 1-25.

tickets_panel_channel channel depends on tickets_enabled
Ticket panel channel

Where the Create Ticket embed gets posted. Pick the channel members should run /ticket open from (typically #support). Saving the Ticket System form below auto-posts/refreshes the panel into this channel.

tickets_reopen_enabled bool depends on tickets_enabled default: 0
Allow reopening closed tickets

When on, the close confirmation gets a Reopen button so a mod can flip an archived ticket back to active without losing transcript history. Off by default — most teams prefer that closed means closed.

tickets_staff_thread_enabled bool depends on tickets_enabled default: 0
Staff-only ticket control thread

When on, every new ticket spawns a private thread visible only to staff (mods/admins). Inside the thread the bot posts a control panel with Claim + Close buttons. Customers cannot see the thread or its embed. Off by default — staff use the existing in-channel buttons instead.

tickets_staff_ephemeral_enabled bool depends on tickets_enabled default: 0
Ephemeral staff menu (HIGHLY EXPERIMENTAL)

Replaces the main-embed staff buttons with an 'Open staff menu' button. Click → ephemeral panel only the staff member sees. Customers see zero clutter. Trade-off: each mod's panel is independent (no shared in-channel audit), but every action is still written to the dashboard audit log so nothing is lost. Off by default.

tickets_staff_ephemeral_scope text depends on tickets_staff_ephemeral_enabled default: forums
Ephemeral menu scope

When ephemeral menu is on, choose where it activates. 'forums' = only on forum-channel tickets (where private threads aren't supported). 'all' = on every ticket regardless of channel type. Default 'forums' so the change is opt-in for the impossible-to-thread case only.

Points, Levels & Loyalty 38 settings
points_name text default: Points
Points currency name

What to call the points in this server (e.g. "coins", "gems", "stars"). Default: "points".

points_emoji text default: 🪙
Points emoji

Single emoji displayed next to point balances. Default: ⭐

points_history_retention_days int default: 180
Points history retention (days)

How long the points transaction ledger is kept. Running balances are never affected. 0 = keep forever. Default: 180.

points_enabled bool
Points system

Toggle the cross-platform points system for this server. When enabled, members earn points from Discord chat (and later, Twitch chat once the bridge is active).

points_per_message int depends on points_enabled default: 1
Points per chat message

How many points a member earns per qualifying chat message (short messages and cooldowns still apply). Default: 1.

points_cooldown_seconds int depends on points_enabled default: 60
Points earn cooldown (seconds)

Minimum seconds between point-earning messages per user — prevents farming. Default: 60.

xp_enabled bool
XP / Levels system

Toggle the per-server XP system. When enabled, members earn XP by chatting and gain levels (configurable rewards on the dashboard).

xp_per_message_min int depends on xp_enabled default: 15
XP per message — minimum

Lower bound of the random XP roll for each qualifying chat message. Default: 15.

xp_per_message_max int depends on xp_enabled default: 25
XP per message — maximum

Upper bound of the random XP roll. Random pick between min/max keeps farming harder. Default: 25.

xp_cooldown_seconds int depends on xp_enabled default: 60
XP earn cooldown (seconds)

Minimum seconds between XP-earning messages per user. Default: 60.

xp_announce_channel channel depends on xp_enabled
Level-up announce channel

Channel where level-up messages get posted. Leave blank to suppress in-channel announcements (DM-only if xp_announce_dm is on).

xp_announce_dm bool depends on xp_enabled
DM members on level-up

Send a DM to the leveled-up member in addition to (or instead of) the channel announcement.

xp_voice_enabled bool depends on xp_enabled
Voice-channel XP

Earn XP for time spent in voice channels (one tick per minute, only if unmuted and not alone).

xp_voice_per_tick_min int depends on xp_voice_enabled default: 5
Voice XP per tick (min)

Minimum XP awarded each minute in voice. Default 5.

xp_voice_per_tick_max int depends on xp_voice_enabled default: 10
Voice XP per tick (max)

Maximum XP awarded each minute in voice. Default 10.

xp_voice_cooldown_seconds int depends on xp_voice_enabled default: 60
Voice XP cooldown (s)

Seconds between voice XP earnings per member. Default 60.

loyalty_enabled bool
Loyalty quests

Master switch for daily-login streaks + chat milestones + referral bonuses.

loyalty_daily_enabled bool depends on loyalty_enabled
└─ Daily-login quest

Reward the first chat message each UTC day. Streaks multiply the base reward.

loyalty_daily_base int depends on loyalty_daily_enabled default: 50
Daily base reward

Default 50 points.

loyalty_daily_streak_bonus int depends on loyalty_daily_enabled default: 10
Per-day streak bonus

Extra points per consecutive day (capped). Default 10.

loyalty_daily_streak_cap int depends on loyalty_daily_enabled default: 30
Streak cap (days)

Maximum streak days counted for the bonus. Default 10.

loyalty_chat_enabled bool depends on loyalty_enabled
└─ Chat-milestone quest

Reward every N messages sent in this server.

loyalty_chat_milestone_every int depends on loyalty_chat_enabled default: 100
Milestone every N messages

Default 100.

loyalty_chat_milestone_reward int depends on loyalty_chat_enabled default: 25
Milestone reward

Default 25 points.

loyalty_referral_enabled bool depends on loyalty_enabled
└─ Referral bonus

Credit the inviter when a newly-joined member survives 7 days.

loyalty_referral_reward int depends on loyalty_referral_enabled default: 100
Referral reward

Default 200 points.

xp_no_xp_channels channel multi depends on xp_enabled
No-XP channels

Channels where chat messages do NOT earn XP (e.g. spam channels, bot test channels). Pick multiple.

xp_no_xp_roles role multi depends on xp_enabled
No-XP roles

Members with any of these roles do NOT earn XP (typically used to exclude bots / mods / muted users).

xp_decay_enabled bool depends on xp_enabled
XP decay

When enabled, inactive members slowly lose XP. Controlled by xp_decay_after_days + xp_decay_per_day_percent. Re-levels down if they fall below a level threshold.

xp_decay_after_days int depends on xp_decay_enabled default: 30
Decay grace period (days)

Members keep their XP for this many days after their last message before decay begins. Default 14.

xp_decay_per_day_percent int depends on xp_decay_enabled default: 1
XP decay per day (%)

Percentage of current XP shaved off per inactive day once the grace period passes (1-50). Default 1.

xp_decay_floor int depends on xp_decay_enabled default: 0
Decay floor (XP)

XP won't decay below this floor — keeps long-time members with a baseline. Default 0.

trivia_reward int
Trivia reward (points per correct answer)

Points awarded to the first member who answers a /trivia question correctly. Default 5. Requires points_enabled=1.

pin_reward_points int
Pin reward (points)

Points awarded to the original author when a staff member pins their message via /pin. 0 disables the reward. Default 0.

cosmetics_enabled bool
Cosmetic role colors

When enabled, members can set a personal role colour via /color set. Each member gets a dedicated auto-created role positioned just above the cosmetic anchor role.

cosmetics_anchor_role role
Cosmetic anchor role

Cosmetic member-roles are created just ABOVE this role. Place it near the bottom of the role list so cosmetic colours don't override meaningful roles.

cosmetics_min_role role
Cosmetic gate role

Optional. Only members with this role can use /color set. Leave blank to allow everyone.

gambling_max_bet int
Max gambling bet

Upper bound on wagers for /gamble, /slots, and bet options on /coin/rps. Default 10000.

Moderation & Safety 16 settings
message_logging_enabled bool
Message logging

When enabled, the bot keeps a local copy of every non-bot message for a retention window so mods can review a user's recent chat (including deleted messages) from a ticket. Off by default for privacy.

message_log_retention_days int depends on message_logging_enabled default: 30
Message log retention (days)

How long the local message log keeps rows before pruning them. 0 = keep forever. Default: 30.

antiraid_enabled bool
Anti-raid auto-lock

When enabled, the bot monitors new-member joins and auto-locks the server if it detects a raid burst (joins-per-minute above threshold).

antiraid_min_account_age_days int depends on antiraid_enabled default: 7
Minimum account age (days)

Kick new joiners whose Discord account is younger than this many days. 0 = disabled.

antiraid_mass_join_threshold int depends on antiraid_enabled default: 5
Mass-join threshold

Joins within 60s that triggers auto-lockdown. Default: 8.

antiraid_lock_action text depends on antiraid_enabled default: slowmode
Lockdown action

What to do with new joiners during a lockdown: 'kick', 'quarantine' (assign unverified_role), or 'log' (audit log only).

autoslow_enabled bool
Slow-mode auto-toggle

When enabled, the bot turns on slow mode in a channel after a message-velocity spike and clears it when things calm down.

autoslow_threshold int depends on autoslow_enabled default: 30
Slow-mode trigger (msgs / 10s)

Messages in 10s that trigger auto slow mode. Default: 15.

autoslow_slowmode_seconds int depends on autoslow_enabled default: 10
Slow-mode duration (seconds)

setRateLimitPerUser value applied when triggered. Default: 5.

autoslow_cooldown_minutes int depends on autoslow_enabled default: 10
Auto-clear after (minutes)

Auto-clear slow mode this many minutes after the last trigger. Default: 10.

autoslow_excluded_channels channel multi depends on autoslow_enabled
Slow-mode excluded channels

Channels the auto-toggle should ignore (spam, off-topic, etc.).

warning_decay_days int
Warning decay (days)

Auto-clear warnings older than this many days. 0 disables decay. Default 0.

image_moderation_enabled bool
Image moderation

Scan image attachments through SightEngine and act on flagged ones. Requires SIGHTENGINE_USER + SIGHTENGINE_SECRET in the bot's .env. No-op if those aren't set.

image_moderation_action text
Image moderation action

What to do with flagged images: 'delete' (remove + DM the user), 'warn' (reply with a public warning), or 'log' (just post to mod-log). Default: 'log'.

image_moderation_threshold text
Image moderation threshold

Confidence score above which an image is flagged. 0.0 = paranoid (lots of false positives), 1.0 = only obvious cases. Default: 0.65.

image_moderation_categories text
Image moderation categories

Comma-separated list of categories to flag. Available: nudity, gore, offensive, violence, weapon. Default: nudity,gore,offensive,violence.

Twitch & Creator Tools 57 settings
twitch_announce_channel channel
Twitch announce channel

Default destination for Twitch live-stream announcements. Each watched channel can override this.

antibot_enabled bool
Twitch anti-bot

Master switch for the Twitch anti-bot system (follow-bot guard, first-message scam filter, blocklist, suspicious-user automation). Everything below is also individually gated.

antibot_observe_only bool
Anti-bot: observe / record mode

ON by default — detect, log, and contribute to the global learned blocklist, but take NO enforcement actions (no bans/timeouts/Shield). Safe to run alongside another bot (e.g. Sery) that does the actual moderating. Turn OFF (or '!antibot observe off') to let GoofBot enforce. Manual !shield always works.

antibot_followguard_enabled bool
Anti-bot: follow-bot guard

On each new follow, check account age / profile picture / known-bot blocklist and act on suspicious accounts. Also powers the follow-spike (hate-raid) detector.

antibot_min_account_age_days int
Anti-bot: min follower account age (days)

Followers whose Twitch account is younger than this are flagged by the follow-bot guard. Default 3.

antibot_require_avatar bool
Anti-bot: flag followers with no avatar

Treat a default (no) profile picture as a suspicion signal for the follow-bot guard.

antibot_follow_action text
Anti-bot: follow action

What to do with a flagged follower: ban | timeout | log. Default log.

antibot_followspike_count int
Anti-bot: follow-spike count

Number of follows within the spike window that triggers hate-raid defense (Shield Mode). Default 15.

antibot_followspike_window_sec int
Anti-bot: follow-spike window (sec)

Time window for the follow-spike count. Default 60.

antibot_shield_auto bool
Anti-bot: auto Shield Mode on spike

When a follow spike is detected, automatically enable Twitch Shield Mode. Auto-clears after 5 min.

antibot_lockdown_followermode bool
Anti-bot: follower-only on spike

Also engage follower-only chat (30m) when a follow spike triggers Shield Mode.

antibot_firstmsg_enabled bool
Anti-bot: first-message scam filter

Scan each chatter's FIRST message for scam patterns (cheap viewers, buy followers, sketchy links). Matches are deleted + actioned.

antibot_firstmsg_action text
Anti-bot: first-message action

What to do on a scam first-message (the message is always deleted): delete | timeout | ban. Default delete.

antibot_name_heuristics bool
Anti-bot: bot-like username detection

Flag generic-word + random-digit usernames in the follow-bot guard. Only counts when paired with another signal (young account / no avatar), never a solo ban.

antibot_link_filter bool
Anti-bot: malicious link filter

Delete + action ANY message (not just first) containing scam shorteners or 'buy followers/viewers' link spam. Mods / VIPs exempt.

antibot_flood_enabled bool
Anti-bot: chat flood guard

Timeout users who flood (>6 messages in 8s) or repeat the same message 4+ times. Mods / VIPs exempt.

antibot_blocklist_enabled bool
Anti-bot: known-bot blocklist

Auto-act on usernames in the known-bot blocklist when they follow or chat. Which list(s) are consulted is set by the blocklist scope below.

antibot_blocklist_scope text
Anti-bot: blocklist scope

Which blocklist(s) this channel matches against: global (the shared list — public sync + GoofBot's self-learning), personal (only your own !antibot blockadd entries), or both. Default both.

antibot_suspicious_enabled bool
Anti-bot: Twitch suspicious users

Act on Twitch's own restricted/monitored (low-trust) flag via EventSub. Requires the broadcaster to grant moderator:read:suspicious_users.

antibot_suspicious_action text
Anti-bot: suspicious-user action

Action for a Twitch-flagged suspicious user: ban (restricted only) | timeout | delete | log. Default log.

antibot_allowlist text
Anti-bot: allowlist

Comma/space-separated Twitch logins that are always exempt from every anti-bot check.

antibot_log_channel channel
Anti-bot: log channel

Discord channel for anti-bot action logs. Falls back to the Twitch events channel, then the default log channel.

twitch_ping_role role
Twitch ping role

Mentioned by default when a watched Twitch channel goes live. Each watched channel can override this.

twitch_go_live_role role
Twitch go-live role

Automatically granted to linked Discord members whose Twitch account (from the watchlist) is currently streaming, and removed when they stop. Leave empty to disable.

twitch_chat_log_retention_days int default: 30
Twitch chat log retention (days)

How long Twitch chat lines from watched channels are kept. 0 = keep forever. Default: 30.

twitch_chat_log_enabled bool
Twitch chat logging

When enabled, the bot archives non-bot Twitch chat for this guild's watched streamers so mods can review recent chat (including via the ticket "Show User History" button's Twitch branch). Off by default for privacy.

twitch_chat_points_enabled bool
Twitch chat points earning

When enabled, linked Discord members earn points from Twitch chat messages (subject to a cooldown) — same balance as Discord-side earnings.

twitch_chat_points_per_message int depends on twitch_chat_points_enabled default: 1
Twitch points per chat message

Points awarded per qualifying Twitch chat message from a linked user. Default: 1.

twitch_chat_points_cooldown_seconds int depends on twitch_chat_points_enabled default: 60
Twitch points earn cooldown (seconds)

Minimum seconds between point-earning Twitch chat messages per user. Default: 60.

twitch_games_enabled bool default: 0
Twitch chat games

Enable !slots, !roulette, !flip, !dice in your Twitch chat. Players bet their loyalty points (linked Twitch ↔ Discord accounts only). Off by default — turn on after you've configured points + cooldown + max-bet to taste.

twitch_games_cooldown_seconds int depends on twitch_games_enabled default: 30
Chat games cooldown (seconds)

Per-user-per-game cooldown between plays. A chatter who just played !slots can still !dice without waiting; the timer is only enforced for the same game. Default: 30.

twitch_games_max_bet int depends on twitch_games_enabled default: 100
Chat games max bet

Largest single bet a chatter can place. Keeps a high-roller from emptying their balance in one !slots. Default: 100.

twitch_games_slots_enabled bool depends on twitch_games_enabled default: 1
Slots (!slots)

Enable the three-reel slot machine. Defaults to ON when chat games are enabled.

twitch_games_roulette_enabled bool depends on twitch_games_enabled default: 1
Russian roulette (!roulette)

Enable the six-chamber roulette. 1/6 fired (lose), 5/6 click (small win). Defaults to ON.

twitch_games_flip_enabled bool depends on twitch_games_enabled default: 1
Coin flip (!flip)

Enable the coin flip. ~48/52 with a small house edge. Defaults to ON.

twitch_games_dice_enabled bool depends on twitch_games_enabled default: 1
Dice roll (!dice)

Enable the dice roll. 1-3 lose, 4 push, 5 small win, 6 big win. Defaults to ON.

twitch_claims_enabled bool default: 0
Twitch claim items

Enable !claim <trigger> in your Twitch chat. Streamer registers triggers (e.g. "bum", "hug") on the dashboard; chatters running !claim bum get +1 added to their per-user inventory and the bot replies with their new total. Off by default — turn on after registering at least one trigger.

twitch_events_channel channel
Twitch events channel

Where real-time Twitch alerts post (follows, subs, raids). Falls back to twitch_announce_channel when not set.

twitch_events_follow bool
Announce follows

Post a message whenever someone follows a watched Twitch channel.

twitch_events_subscribe bool
Announce subscriptions

Post a message for new subs + resubs on a watched Twitch channel.

twitch_events_gift bool
Announce gift subs

Post a message when someone gifts subs in a watched Twitch channel.

twitch_events_raid bool
Announce raids

Post a message when a watched Twitch channel is raided.

twitch_events_cheer bool
Announce cheers (bits)

Post when someone cheers bits in a watched Twitch channel. Needs the broadcaster's bits:read OAuth scope.

twitch_events_channel_points bool
Announce channel-point redemptions

Post when a channel-point reward is redeemed. Needs channel:read:redemptions on the broadcaster's OAuth link.

twitch_events_prediction bool
Announce predictions

Post when the broadcaster starts or resolves a Twitch prediction. Needs channel:read:predictions on the broadcaster's OAuth link.

twitch_events_poll bool
Announce polls

Post when the broadcaster starts or resolves a Twitch poll. Needs channel:read:polls on the broadcaster's OAuth link.

twitch_raid_auto_shoutout bool
Auto-shoutout incoming raiders

When the broadcaster is raided, GoofBot posts a !so for the raider in Twitch chat with their last-played game.

twitch_costream_combined bool
Combine simultaneous live alerts

When 2+ watched streamers go live in the same poll cycle, post one combined embed listing all of them instead of N separate posts. Defaults ON; set to off to always post separately.

twitch_vod_channel channel
VOD timestamps channel

Discord channel where !mark timestamps post when a stream ends. Falls back to twitch_announce_channel if unset.

twitch_clips_channel channel
Clips auto-post channel

When set, every clip made via !clip auto-posts to this Discord channel. Clips also show on the dashboard Clips tab regardless.

twitch_schedule_channel channel
Twitch schedule channel

Where the 15-min countdowns + Monday weekly roundup post when a watched broadcaster's Twitch schedule is published. Falls back to twitch_announce_channel.

twitch_hype_autoclip_enabled bool
Auto-clip hype moments

When chat velocity spikes past the threshold, GoofBot auto-fires !clip. Cheers count 3x, so bit trains register fast.

twitch_hype_autoclip_threshold int
Hype threshold (msgs / 10s)

Minimum messages in a 10-second window to trigger an auto-clip. Default 20.

twitch_hype_autoclip_cooldown_sec int
Hype cooldown (s)

Minimum seconds between auto-clips per channel. Default 120.

donations_channel channel
Donation alerts channel

Discord channel where tip alerts post. Falls back to twitch_announce_channel.

donations_kofi_token text
Ko-fi verification token

Paste from Ko-fi → API settings → Webhooks. Set the webhook URL to https://goofbot.gyneric.net/webhooks/kofi

donations_points_per_unit text
Bonus points per currency unit

Reward tippers with N points per $1 (or whatever currency unit). Set to 0 to disable. Default 0.

Other Settings 66 settings
afk_enabled bool
AFK status

Toggle the /afk command. When a member is AFK, the bot replies with their reason whenever someone pings them, and clears their AFK on next message.

audit_log_retention_days int default: 90
Audit log retention (days)

How long dashboard audit-log entries (who changed which setting / who applied which action) are kept. 0 = keep forever. Default: 90.

autorole_enabled bool
Auto-assign roles on join

Master switch for the Auto-join roles above. When ON, configured roles are granted on join. Turn OFF to pause without clearing your role list.

autorole_roles role multi
Auto-join roles

Role(s) automatically granted to every member the moment they join — independent of the verify system. Pick one or more. Manage from Discord with /autorole.

color_hierarchy_startup_heal bool
Auto-fix color role hierarchy on bot startup

When enabled (default), the bot scans this server on every boot and re-orders any color reaction-role roles that have drifted below their correct slot (below admin / mod / staff and any XP level-reward roles). Turn off if you'd rather manage role positions yourself — the manual "Fix role hierarchy" button on the Reaction roles card still works either way.

community_awards_channel channel
Community awards channel

Where /mod congratulate posts the celebratory embed. Pick a public channel everyone can read so the recognition is visible. Leave empty to disable announcements (the award + points still happen — just no embed).

community_awards_default_points int default: 5
Default points per award

How many points /mod congratulate awards when the issuer doesn't specify a count. Default: 5.

community_awards_default_stars int default: 1
Default stars per award

How many stars /mod congratulate hands out when the issuer doesn't specify a count. Stars accumulate per-user on the leaderboard. Default: 1.

community_awards_max_points int default: 100
Max points per award

Cap on points one /mod congratulate call can hand out — prevents accidentally awarding 1,000,000 points. Default: 100.

community_awards_max_stars int default: 5
Max stars per award

Cap on stars one /mod congratulate call can hand out. Stars accumulate per-user on the leaderboard, so this caps how fast one mod can move someone up the board. Default: 5.

community_awards_retention_days int default: 0
Community awards retention (days)

How long /mod congratulate awards are kept. Stars and totals derive from this table — pruning lowers lifetime totals. 0 = keep forever (default).

i18n_enabled bool
🔒 Translate welcomes / panels (coming soon)

Locked. The bot's translation framework (DeepL / LibreTranslate / MyMemory + DB cache) is wired in but disabled globally while we validate quality. Flipping this setting currently has no runtime effect.

invite_joins_retention_days int default: 180
Invite-join records retention (days)

How long the per-member invite-credit history is kept. Affects invite leaderboards. 0 = keep forever. Default: 180.

log_channel_default channel multi
Default log channel

Catch-all channel for any log category that has no dedicated channel set. If empty, falls back to the legacy Audit log channel(s) for back-compat.

log_channel_joinleave channel multi
Join/leave log channel(s)

Dedicated channel for join + leave embeds, separate from other member events. Falls back to log_channel_member then to Default.

log_channel_member channel multi
Member log channel(s)

Where member events post (joins, leaves, role updates, bans, timeouts, etc.). Falls back to Default log channel.

log_channel_message channel multi
Message log channel(s)

Where message events post (deletes, edits, purges). Falls back to Default log channel.

log_channel_server channel multi
Server log channel(s)

Where server-structure events post (channel/role/emoji create/update/delete, server updates). Falls back to Default log channel.

log_channel_voice channel multi
Voice log channel(s)

Where voice events post (join/move/leave). Falls back to Default log channel.

log_event_channel_created bool default: 1
Log: Channel creation

When enabled, posts an embed to the server log channel(s) when this event fires. Default: ON.

log_event_channel_deleted bool default: 1
Log: Channel deletion

When enabled, posts an embed to the server log channel(s) when this event fires. Default: ON.

log_event_channel_updated bool
Log: Channel updates

When enabled, posts an embed to the server log channel(s) when this event fires. Default: OFF.

log_event_emoji_changed bool
Log: Emoji changes

When enabled, posts an embed to the server log channel(s) when this event fires. Default: OFF.

log_event_joinleave_joined bool default: 1
Log: Members joining

When enabled, posts an embed to the joinleave log channel(s) when this event fires. Default: ON.

log_event_joinleave_left bool default: 1
Log: Members leaving

When enabled, posts an embed to the joinleave log channel(s) when this event fires. Default: ON.

log_event_member_avatar_changed bool
Log: Avatar changes

When enabled, posts an embed to the member log channel(s) when this event fires. Default: OFF.

log_event_member_banned bool default: 1
Log: Member bans

When enabled, posts an embed to the member log channel(s) when this event fires. Default: ON.

log_event_member_nickname_changed bool
Log: Nickname changes

When enabled, posts an embed to the member log channel(s) when this event fires. Default: OFF.

log_event_member_role_updated bool default: 1
Log: Role updates

When enabled, posts an embed to the member log channel(s) when this event fires. Default: ON.

log_event_member_timeout_added bool default: 1
Log: Member timeout added

When enabled, posts an embed to the member log channel(s) when this event fires. Default: ON.

log_event_member_timeout_removed bool default: 1
Log: Member timeout removed

When enabled, posts an embed to the member log channel(s) when this event fires. Default: ON.

log_event_member_unbanned bool default: 1
Log: Member unbans

When enabled, posts an embed to the member log channel(s) when this event fires. Default: ON.

log_event_member_username_changed bool
Log: Username changes

When enabled, posts an embed to the member log channel(s) when this event fires. Default: OFF.

log_event_message_deleted bool default: 1
Log: Deleted messages

When enabled, posts an embed to the message log channel(s) when this event fires. Default: ON.

log_event_message_edited bool default: 1
Log: Edited messages

When enabled, posts an embed to the message log channel(s) when this event fires. Default: ON.

log_event_message_purged bool
Log: Purged messages (bulk delete)

When enabled, posts an embed to the message log channel(s) when this event fires. Default: OFF.

log_event_role_created bool default: 1
Log: Role creation

When enabled, posts an embed to the server log channel(s) when this event fires. Default: ON.

log_event_role_deleted bool default: 1
Log: Role deletion

When enabled, posts an embed to the server log channel(s) when this event fires. Default: ON.

log_event_role_updated bool
Log: Role updates

When enabled, posts an embed to the server log channel(s) when this event fires. Default: OFF.

log_event_server_updated bool
Log: Server updates

When enabled, posts an embed to the server log channel(s) when this event fires. Default: OFF.

log_event_voice_joined bool
Log: Join voice channel

When enabled, posts an embed to the voice log channel(s) when this event fires. Default: OFF.

log_event_voice_left bool
Log: Leave voice channel

When enabled, posts an embed to the voice log channel(s) when this event fires. Default: OFF.

log_event_voice_moved bool
Log: Move between voice channels

When enabled, posts an embed to the voice log channel(s) when this event fires. Default: OFF.

log_ignored_channels channel multi
Ignored channels

Events sourced from these channels are suppressed (no log posted). Useful for spam channels, bot-test channels, etc. that you don't want polluting the log.

lol_announce_channel channel
LoL announcements channel

Where the bot posts auto-announcements about tracked LoL accounts (rank-ups, hot streaks, big wins). Future Phase 2 — set this now to be ready when polling lands.

lol_announce_ping_user bool
Ping linked Discord user on LoL match embeds

OFF (default): the match-result embed emphasizes the player's Riot ID in bold and posts allowedMentions:{parse:[]} so nobody is notified. ON: the linked Discord user gets a real @-mention every match — best for small hype channels where the ping is wanted.

lol_announce_promotions_only bool
Only announce LoL promotions

When ON, only tier promotions get announced (e.g. Gold IV → Gold III). Demotions stay quiet — useful for community-respect servers. Implies Announce rank changes is on.

lol_announce_rank_changes bool
Announce LoL rank changes

When ON, the bot posts a message in the announcements channel whenever a tracked account's tier or division changes. Off by default — Phase 2 polling lights this up.

message_counters_retention_days int default: 365
Daily message counters retention (days)

How long the daily message-count buckets used by the analytics dashboard are kept. Analytics windows are 30-90d so this only affects long-tail history. 0 = keep forever. Default: 365.

mod_actions_retention_days int default: 365
Mod-actions retention (days, cleared only)

How long cleared / expired mod-actions (warnings, timeouts, etc.) stay in history before pruning. Active warnings and bans are always kept. 0 = keep forever. Default: 365.

monitor_private_threads bool depends on message_logging_enabled
Monitor private threads

Auto-join private threads as they are created so message logging + automod + audit logs cover them. Off by default. Members of private threads are typically not aware that a bot is in the room — enable only if your community is comfortable with that disclosure (consider posting a server-rules note). Requires Manage Threads. Effective only when Message logging is also on.

mute_role role
Mute role

Role assigned by /mod warn ... mutewithwarning:true that revokes Send Messages / Add Reactions / Speak / Send Voice Messages everywhere. The bot can auto-create + auto-lock this role for you from the dashboard. Read-only access otherwise — they can still see channels they had access to, just can't post or talk.

ow_announce_channel channel
Overwatch announcements channel

Where the bot posts rank-change embeds for tracked Overwatch accounts. Overwatch 2 does not expose per-match history (Blizzard killed that API), so only role-rank promotions / demotions get announced — closest analog to a win/loss embed.

ow_announce_match_inferences bool
Announce inferred Overwatch matches

When ON, the bot posts an embed for each match it can INFER from career-stat deltas (career profile aggregates only — no map / KDA / team). Hero attribution comes from time-played delta. Best with a 15min poll cycle. Off by default. Blizzard does not expose a per-match API.

ow_announce_ping_user bool
Ping linked Discord user on Overwatch rank embeds

OFF (default): the embed emphasizes the player's BattleTag in bold with no mention. ON: the linked Discord user gets a real @-mention every rank change.

ow_announce_promotions_only bool
Only announce Overwatch promotions

When ON, only tier promotions get announced. Demotions stay quiet — useful for community-respect servers. Implies Announce rank changes is on.

ow_announce_rank_changes bool
Announce Overwatch rank changes

When ON, the bot posts an embed in the announcements channel whenever a tracked account's role tier (Bronze→Silver, etc.) or division (Silver 3→Silver 2) changes. Off by default.

starboard_channel channel depends on starboard_enabled
Starboard channel

Where starred messages get reposted.

starboard_emoji text depends on starboard_enabled default: ⭐
Starboard emoji

Emoji to count as a star (default ⭐). Can be a custom server emoji like :star2:.

starboard_enabled bool
Starboard

When enabled, messages that get a configurable threshold of star reactions get reposted to the starboard channel.

starboard_threshold int depends on starboard_enabled default: 5
Starboard threshold

Number of ⭐ reactions required to repost. Default: 3.

system_status_message_id text
(internal) System status message ID

Auto-managed: the message ID of the system-status embed in system_status_channel. Cleared to force a new post.

val_announce_channel channel
Valorant announcements channel

Where the bot posts auto-announcements about tracked Valorant accounts (rank-ups, ace callouts, milestone wins). Future Phase 2 — set this now to be ready when polling lands.

val_announce_promotions_only bool
Only announce Valorant promotions

When ON, only tier promotions get announced (e.g. Silver 3 → Gold 1). Demotions stay quiet. Implies Announce rank changes is on.

val_announce_rank_changes bool
Announce Valorant rank changes

When ON, the bot posts a message in the announcements channel whenever a tracked account's competitive tier changes. Off by default — Phase 2 polling lights this up.

warnings_editable_by_mods bool
Allow mods to edit warning reasons

When ON, moderators can edit the reason on any active warning from the dashboard. Audit-logged. Owner / admin can always edit regardless of this setting.