The Custom commands module

The module lets you create your own commands without writing code: you decide the name, who may use it, what the bot replies and what it does next.

Updated 12 September 2026

Native slash commands

A custom command can be declared as a native slash command. It then appears in the list Discord offers when a member types “/”, with its description.

The difference in practice is large: a command nobody can discover is used only by those who were told about it. A native one finds itself.

Discord sets the naming rules: lowercase, no spaces or accents, 32 characters maximum. That is not a Kuratos limit.

Who may use the command

Three access conditions stack, and they cover nearly every need.

  • Minimum level: the command only works from a given level of the Levels module. An excellent filter — a disposable account never reaches it.
  • Minimum account age on the server: a delay since joining. Complements the level, and works against accounts created for the occasion.
  • Roles: the command is restricted to certain roles, or denied to others.

Level and seniority are sturdier than a role: a role can be handed out by mistake, whereas a level is earned and seniority is waited for.

Cooldown and its scope

A cooldown stops the command being repeated too often. Its scope is the setting people forget, and it is the one that decides everything.

Per user: everyone has their own delay. The normal case for a fun command.

Per channel or per server: the delay is shared. Use it for a noisy command — an image, a mention, a long message — you do not want ten times in a row even from ten different people.

What the command does

  • Random reply: several possible answers, drawn at random. That is what keeps a fun command alive past week two.
  • Reply in DM: for a long or personal answer that has no business taking up the channel.
  • Delete the invocation: the member’s message disappears, only the reply remains. Essential in a channel you want to keep readable.
  • Auto-delete the reply: the reply disappears after a delay. For anything ephemeral that need not stay in history.
  • Automatic reactions: the bot adds reactions to the reply — handy for a quick poll.
  • Dropdown menus: the reply offers a choice, turning a command into a small journey rather than a fixed message.

The recurring mistakes

  • Creating forty commands. Nobody remembers them. Ten well-chosen ones, announced somewhere, work better.
  • Forgetting the cooldown on an image command. One member loops it and the channel becomes unreadable.
  • Restricting a useful command to a rare role. If the command gives information, it must reach those who need it.

Key points

  • A native slash command discovers itself; the others only serve those already in the know.
  • Level and seniority filter better than a role, which can be granted by mistake.
  • Cooldown scope — user, channel, server — decides everything on a noisy command.
  • Random replies are what make a fun command last.
  • Ten well-chosen commands beat forty nobody remembers.

Frequently asked questions

Why does my command not appear in Discord’s list?

Either it is not declared as a native slash command, or its name breaks Discord’s rules: lowercase, no spaces or accents, 32 characters maximum.

How many commands can you create?

The number depends on your plan; the Plans and pricing page is the authority. Discord also caps the total number of commands an application can register.

Can a command be restricted to a given level?

Yes, it is one of the module’s access conditions, and it is a far better filter than a role: a level is earned through activity, it is not granted by mistake.

Put this guide into practice

Kuratos sets up in minutes what this guide describes, and is configured from a web interface rather than through commands.

Read next

Custom commands module: build your own — Kuratos