Documentation menu

Docs/Plugins/Custom Commands

Custom Commands

Your own commands and auto-responders, written in a small scripting DSL.

Execution requires the CUSTOM_COMMANDS feature. Managing scripts (creating, editing, deleting) always works, so you can clean up even after a revoke.

Custom commands let your server define its own commands and auto-responders. Build them in chat with the custcmd commands or - much more comfortably - in the dashboard's Custom Commands workbench. The plugin runs as soon as the feature is granted; no config block is needed. To switch execution off yourself, set:

plugins:
  custcommands:
    enabled: false

Two kinds

  • CMD - a named command members invoke (!mytrigger).
  • LISTEN - an auto-responder bound to an event, most commonly MessageCreate: react to a keyword, reply to a phrase, greet on join, and so on.

The DSL

Scripts are written in a compact verb language. The two most common verbs:

reply 'good morning' Good morning! ☀️
react hiekki a:687166915805970434
  • reply when a message contains a phrase, or add a reaction (unicode or custom emoji) when a keyword appears. The dashboard workbench validates scripts as you type with the exact same parser the bot runs, and the visual builder composes the common patterns without writing DSL at all.

Where to manage them

The Custom Commands dashboard page lists every script with usage counts, offers the workbench (raw DSL with validation) and the builder (guided), and shows exactly why a script is not running - execution switched off or the execution feature not granted - rather than leaving you guessing.

Commands

Command What it does
/custcmd create Create a custom command (text reply, or an action script like allowargs | warn | tempmute 1d). Admin.
/custcmd create-listen Create a LISTEN custom command (e.g. MessageCreate react/reply). Admin.
/custcmd edit Edit a custom command's content. Admin.
/custcmd remove Delete a custom command. Admin.
/custcmd list List this guild's custom commands.