Commands

Visual commands — slash, prefix, scoping, options, and subcommands.

Commands are the primary way users interact with your bot. Build them visually using the graph editor.

Create and test a command

  1. Open the bot dashboard and create a command. Set its name and description.
  2. Choose its command type and scope. Add any inputs under options.
  3. Connect the trigger to nodes in the visual editor.
  4. Set the required member permissions for commands that manage roles, channels, or moderation.
  5. Save, deploy, and test it in Discord using a member with the intended permissions.

For a personalized greeting, add a required user option named member, then use Hello {option:member}! in a Send Message reply.

Command types

  • Slash command — members enter / and choose the command and its options.
  • User context menu — members select a command from a user's context menu. The selected user ID is available as {store:target.id}.
  • Message context menu — members select a command from a message's context menu. The selected message ID and content are available as {store:target.id} and {store:target.content}.

Where prefix invocation is enabled for the bot, members use its configured prefix and command name. For structured user, channel, and role pickers, use the slash version.

Visual commands

Build commands using the graph editor. No code required — define a trigger, add actions (reply, embed, add role, conditions, etc.), and connect them together.

  • Drag-and-drop action nodes
  • Actions: reply, embed, send to channel, DM, add/remove role, react, conditions, data storage, math, AI
  • Template variables for dynamic content
  • Ephemeral responses (only visible to the command user)
  • Subcommands and subcommand groups

See the visual editor actions reference for the full list of available actions.

Command options

Commands support typed options that Discord renders as structured inputs:

TypeDescription
stringFree text input
integerWhole number
numberDecimal number
booleanTrue/false
userDiscord user picker
channelDiscord channel picker
roleDiscord role picker
attachmentFile attachment input

Options can be marked as required and can have predefined choices.

Use {option:name} with the exact option name in downstream nodes. A user option named member supplies the target for role, DM, or image-card actions. Group related operations into subcommands or subcommand groups when one command needs several workflows.

Command scope

Commands can be registered in two scopes:

  • Global — available across the bot's servers. Discord may take time to show registration changes.
  • Guild — registered for the selected server, useful for testing or server-specific commands.

Guild scope is the default.

Registration scope controls where a command appears. Saved data and server settings use the runtime server context. Server-only actions such as Manage Role need a server and cannot run in a DM.

If a command is missing, check that the bot is deployed, registered in the intended scope, and permitted to use application commands in that channel. Avoid naming a custom command the same as an installed module command unless you are deliberately using a supported module command override.