Settings — central config management
/settings is the central command for toggling addons and setting channel IDs without editing config.yml by hand. Changes are written atomically to configs/config.yml (write to a temp file + rename, so there's no risk of a corrupted config if the process crashes mid-write).
This module has no dedicated
configs/modules/settings.yml—/settingsis a pure command that patchesconfig.ymldirectly. There is no Zod schema file to document.
Activation
/settings is a core command and always available — no addons.* entry needed.
Permission: Administrator by default (via setDefaultMemberPermissions). Server admins can override this per role/channel in Discord's Integrations settings.
Important: addon vs. channel — different behavior
| Subcommand | Effect | Restart required? |
|---|---|---|
/settings addon |
Writes addons.<key> to config.yml |
Yes — modules are only loaded/unloaded at bot startup; toggling at runtime does not hot-load the module |
/settings channel |
Writes channels.<key> to config.yml |
No — takes effect immediately, since modules read channel IDs live from the in-memory config |
/settings addon explicitly includes a warning in its reply that a restart is required.
Commands
/settings addon <module> <enabled>
Enables/disables a module in config.yml under addons.<module>.
module: string with autocomplete, must be one of the valid addon keys (see list below)enabled:true/false
/settings addon module:leveling enabled:true
/settings addon module:polls enabled:false
Invalid keys are rejected (protects against a typo writing an arbitrary new addons.* key into config.yml).
Valid addon keys:
welcome, mod, tickets, news, voice, help, customcmd, music,
reactionroles, leveling, suggestions, polls, starboard,
reminders, birthdays, rss, giveaways, serverstats,
announcements, events, triggers
⚠️ A bot restart is required for the change to take effect. The bot confirms the toggle immediately but only updates the in-memory value (relevant for an immediate
/settings showin the same process) — actual module registration only happens at boot.
/settings channel <key> <channel>
Sets a channel ID used by the bot under channels.<key> in config.yml.
key: choice from a fixed list (see below)channel: text, announcement, or voice channel — the runtime checks whether the type matches thekey
/settings channel key:mod-log channel:#mod-log
/settings channel key:voice-lobby channel:🔊-Lobby
Valid channel keys:
welcome, verify, mod-log, alert, staff, support, ticket-log,
news, voice-lobby, help, radio, suggestions, starboard, levelup
Of these, voice-lobby and radio are voice-only — a text/announcement channel is rejected here. All other keys expect text or announcement — a voice channel is rejected here.
Takes effect immediately, no restart needed.
/settings show
Shows the current enabled status of all addon keys as a list (🟢 active / 🔴 inactive), ephemeral.
/settings show
Reference: reply texts
| Situation | Reply |
|---|---|
| Addon toggle succeeded | ✅ Module <module> is now enabled/disabled. ⚠️ Restart note |
| Unknown module | ❌ Unknown module: <module> |
| Channel set succeeded | ✅ <key> set to <channel> — effective immediately |
| Wrong channel type (needs voice) | ❌ <key> must be a voice channel |
| Wrong channel type (needs text) | ❌ <key> must be a text or announcement channel |
| Write error | ❌ Could not write config.yml: <error> |
Notes
- All replies are ephemeral (only visible to the executing admin).
/settings addonand/settings channelwrite directly to the liveconfig.ymlunderCONFIG_DIR(default:configs/) — viaparseDocument/setInfrom theyamllibrary, so existing comments and formatting in the file are preserved.- If the write fails (e.g. file unreadable, invalid YAML), the error is reported ephemerally and nothing is changed.
- The list of valid addon keys is kept manually in sync with
AddonsSchemain#lib/config.js— when a new module is added,ADDON_KEYSin the command code must be extended, otherwise the new module can't be toggled via/settings addon.
GrumpyCore Wiki
⚙️ Setup
🔧 Core-Module
🆕 Neue Module
🔔 Benachrichtigungen & Utility
💬 Commands
👥 Staff
GrumpyCore Wiki (English)
⚙️ Setup
🔧 Core Modules
🆕 New Modules
🔔 Notifications & Utility
💬 Commands
👥 Staff