Volvox.Bot uses Discord’s native slash command system. Every command starts with / and is registered directly with Discord, so they appear in the command picker as you type.
How slash commands work
When you type / in any channel where Volvox.Bot is present, Discord shows a picker with all available commands. Select a command, fill in the options Discord surfaces, and press Enter to run it.
- Options marked Required must be provided before the command can be submitted.
- Options marked Optional can be left blank; the bot uses a sensible default.
- Responses that contain sensitive information (moderation results, config data) are sent as ephemeral messages — only you can see them.
Deploying commands
Slash commands must be registered with Discord before they appear in the picker. Run the deploy script whenever you add or modify a command definition:
This registers all commands globally. Global propagation can take up to an hour, but changes are usually visible within a few minutes. The /reload command lets a bot owner re-register commands at runtime without a restart.
Permission levels
Every command is gated behind one of three permission levels. The mapping is configurable via /config set or the dashboard, but the defaults from config.json are:
| Level | Who can use it | Default commands |
|---|
| Everyone | Any member in the server | /ping, /rank, /leaderboard, /profile, /afk, /remind, /tldr |
| Moderator | Members with a configured moderator role | /warn, /warnings, /editwarn, /removewarn, /clearwarnings, /modlog |
| Admin | Members with a configured admin role or the Administrator permission | /kick, /ban, /tempban, /softban, /unban, /timeout, /untimeout, /purge, /lock, /unlock, /slowmode, /case, /history, /config, /alias, /reload |
Permission role IDs are set in config.permissions.adminRoleIds and config.permissions.moderatorRoleIds. Bot owners (set in config.permissions.botOwners) bypass all checks.
Command aliases
The /alias command lets server admins create short names for existing commands. For example, you can create /w as an alias for /warn:
/alias add alias:w command:warn
Aliases are stored in the database and registered with Discord automatically — no restart required. You can list all active aliases with /alias list and remove one with /alias remove.
Alias names must be lowercase and contain only letters, numbers, hyphens, and underscores (1–32 characters). You cannot shadow a built-in command name.
Using /help
The /help command (when enabled via config.help.enabled) provides an in-Discord reference. To enable it:
/config set path:help.enabled value:true
All available commands
Moderation commands
| Command | Description | Permission |
|---|
| /warn | Issue a warning to a user | Moderator |
| /warnings | View all warnings for a user | Moderator |
| /editwarn | Edit the reason or severity of a warning | Moderator |
| /removewarn | Deactivate a specific warning by ID | Moderator |
| /clearwarnings | Deactivate all active warnings for a user | Moderator |
| /kick | Kick a user from the server | Admin |
| /ban | Permanently ban a user | Admin |
| /tempban | Temporarily ban a user with automatic unban | Admin |
| /softban | Ban and immediately unban to delete messages | Admin |
| /unban | Unban a user by their ID | Admin |
| /timeout | Mute a user for a specified duration | Admin |
| /untimeout | Remove a timeout from a user | Admin |
| /purge | Bulk delete messages with filtering options | Admin |
| /lock | Lock a channel to prevent messages from @everyone | Admin |
| /unlock | Unlock a channel to restore messaging | Admin |
| /slowmode | Set channel slowmode duration | Admin |
| /case | View, list, update, or delete moderation cases | Admin |
| /modlog | Configure moderation log channel routing | Admin |
| /history | View full moderation history for a user | Admin |
Community commands
| Command | Description | Permission |
|---|
| /rank | Show your (or another user’s) level and XP | Everyone |
| /leaderboard | Show the top 10 members by XP | Everyone |
| /profile | Show a user’s engagement statistics | Everyone |
| /afk | Set or clear your AFK status | Everyone |
| /remind | Set, list, or cancel personal reminders | Everyone |
| /tldr | AI-powered summary of recent channel messages | Everyone |
| /voice | Voice activity stats, leaderboard, and CSV export | Everyone (export: Manage Server) |
| /memory | View or manage bot memories about you | Everyone (admin: Manage Server) |
| /github | Manage GitHub activity feed (list: Everyone, rest: Admin) | Mixed |
| /ticket | Open and manage support tickets | Everyone (close/add/remove: Mod; panel: Admin) |
| /ping | Check bot latency and API responsiveness | Everyone |
Admin commands
| Command | Description | Permission |
|---|
| /config | View, set, or reset bot configuration | Admin |
| /alias | Create, list, or remove command aliases | Admin |
| /announce | Schedule or send server announcements | Moderator |
| /welcome | Configure and test the welcome message | Admin |
| /reactionrole | Create and manage reaction role menus | Admin |
| /rolemenu | Manage role menu templates | Admin |
| /temprole | Assign a temporary role to a member | Moderator |
| /snippet | Manage reusable text snippets | Admin |
| /reload | Reload config, commands, and services at runtime | Bot owner |
| /status | Display bot health metrics and uptime | Everyone (detailed: Admin) |