Skip to content

Module Overview ​

The bot is composed of multiple modules, all enabled on demand via the enabled switch in config.yaml (disabled by default). Modules fall into three categories:

  • Command modules: register slash / prefix commands for users to invoke (using the discord.py Cog architecture).
  • Event modules: no commands; listen to Discord events (such as on_message) and run automatically.
  • Service modules: no commands; provide shared capabilities to other modules (such as audit logging).

Module List ​

ModuleConfig KeyTypeCommandsDocs
Tools / AdmintoolsCommandrandom uuid to-file delete clear-message move-channelView
EmojiemojiCommand/e /emoji info /emoji updateView
Channel LocklockCommand/lock now /lock unlock /lock plan /lock unplanView
Voice ChannelvoicechannelCommand/vc join /vc leaveView
Admin Commands—Command/sync /reloadView
Dynamic PermissionspermCommand/perm add /perm rm /perm showView
Announcement PushannounceCommand/subscribeView
Chat EnhancechatenhanceCommand / Event/enhance enable /enhance disable /enhance listView
Multilingual— (always enabled)Command/langView
Auto Managementrmmsg / rmtodoEventNoneView
Anti-spamantispamEventNoneView
Audit LogauditServiceNoneView

Command Quick Reference ​

CommandModulePermissionRate LimitDescription
/randomtoolsEveryone✅Generate a random number within a range
/uuidtoolsEveryone✅Generate a UUID (ephemeral message)
/to-filetoolsEveryone✅Send text as a file
/deletetoolsMod—Delete a single message
/clear-messagetoolsMod—Batch clear messages by conditions
/move-channeltoolsMod—Move channel position / category
/eemojiEveryone—Send an emoji from the library
/emoji infoemojiEveryone—View emoji library info
/emoji updateemojiAdmin—Update emoji library data
/lock nowlockMod—Lock a channel
/lock unlocklockMod—Unlock a channel
/lock planlockMod—Schedule lock / unlock
/lock unplanlockMod—Cancel a schedule
/vc joinvoiceWhitelist / Mod—Bot joins a voice channel
/vc leavevoiceWhitelist / Mod—Bot leaves a voice channel
/syncadminConfig admin—Sync the slash command list
/reloadadminAdmin15s CDHot reload modules
/perm addpermAdmin—Add a permission rule
/perm rmpermAdmin—Remove a permission rule
/perm showpermAdmin—View permission rules
/subscribeannounceMod—Follow an announcement channel
/enhance enablechatenhanceAdmin—Enable a chat enhance function
/enhance disablechatenhanceAdmin—Disable a chat enhance function
/enhance listchatenhanceAdmin—View chat enhance function status
/langlangEveryone (server scope requires admin permission)✅Switch / view language preference

For the permission system, see Permission System; for rate limiting, see Rate Limit.

Dual Command Mode ​

All command modules can control the registration of slash and prefix commands separately via the slash / prefix switches. The prefix for prefix commands is determined by the top-level command_prefix (the example config uses //).

  • Slash command example: /random 1 100
  • Prefix command example: //random 1 100

Complex commands (clear-message, lock plan) use --key=value flags to pass arguments in their prefix form, for example:

text
//lock plan --channel=#announcements --lock-time=22-00 --unlock-time=08-00 --cycle=daily

Released under the MIT License