Snax Bot

Commands

Full reference for every SNAX command, organized by permission group. Default prefix is $.

Add to Server

Below is the comprehensive list of every command available, categorized by permission group. The default prefix is $ — this can be changed per-server by an Admin using $setprefix. You can also trigger commands by @mentioning the bot.

Music & Default Utilities

Permission required: Default group (open to @everyone by default)

$play <song name or URL> (alias: p)
Search for and play a song in your current voice channel. Accepts song names, YouTube URLs, playlist URLs, and YouTube Shorts (auto-converted). Adds to queue if a track is already playing.
$nowplaying (alias: np)
Display an embed showing the currently playing track — title, author, duration, and progress.
$queue (alias: q)
Show the current song queue as an interactive paginated embed (up to 10 songs per page).
$volume <0-100> (alias: vol)
With no argument: display current volume. With a number: set playback volume.
$pause
Pause the current track.
$resume
Resume a paused track.
$skip (aliases: s, next)
Skip the currently playing track and move to the next one in queue.
$prev (aliases: previous, back)
Go back and replay the previously played track.
$remove <song name or number>
Remove a specific song from the queue by its number (e.g. $remove 2) or name (case-insensitive, partial match supported).
$clear
Clear all songs from the upcoming queue. Does not stop the current track.
$shuffle
Randomly shuffle all songs currently in the queue.
$loop (alias: repeat)
Toggles loop mode for the current track.
$loopQ (aliases: loopqueue, lq)
Toggles loop mode for the entire queue.
$autoplay (alias: ap)
Toggle autoplay mode. When enabled, the bot automatically queues related songs when the queue runs out.
$stop
Stop playback completely, clear the queue, and leave the voice channel.
$join
Make the bot join your current voice channel without playing anything.
$leave (aliases: disconnect, dc)
Make the bot leave the voice channel and clear the queue.

Voice Management

Permission required: VoiceExe

$mute @user
Server-mute a user in a voice channel, suppressing their microphone for everyone in the server.
$unmute @user
Remove a server-mute from a user.
$deafen @user
Server-deafen a user so they can no longer hear anyone in voice channels.
$undeafen @user
Remove a server-deafen from a user.
$dragreq @user
Send an interactive drag request to a user. They see Confirm / Deny buttons — on confirm, they are moved to your current voice channel.
$addme @user
Send a request to a user asking them to let you join their voice channel. On confirm, you are moved to their VC.

Nickname Management

Permission required: setNickExe

$setnick <name>
Change the bot's own nickname in the server.
$setnick @user <name>
Change the nickname of the mentioned user. setNickExe holders can only change nicknames of users below their highest role. Admins can change any user's nickname.
$remnick
Remove the bot's own custom nickname, resetting it to default.
$remnick @user
Remove the nickname of the mentioned user.

Chat Management

Permission required: ChatExe

$purge <1-100>
Bulk-delete the specified number of messages from the current channel. Discord API limit: max 100 messages, must be less than 14 days old.
$timeout @user <minutes>
Apply a Discord timeout to the mentioned user for the given minutes. Hierarchy rules apply (cannot timeout someone with equal or higher role).

Manager Commands

Permission required: ManagerExe

$ban @user
Permanently ban the mentioned user from the server. Shows a confirmation embed with [Confirm Ban] and [Cancel] buttons. Confirmation expires after 30 seconds. Managers cannot ban users with an equal or higher role.
$kick @user
Kick the mentioned user from the server. Shows a similar confirmation prompt. Cannot target equal or higher roles.
$unban <user_id>
Unban a previously banned user using their Discord User ID (not a mention, since banned users are no longer in the server).

Admin / Permission Commands

Permission required: AdminExe (assign_default / default_remove also available to ManagerExe)

All assignment commands accept either a @role mention or a @user mention.

$AdminExe / $remAdminExe @role/@user
Grant or revoke AdminExe power. Granting applies a mandatory 10-minute cooldown before the target gains full privileges. Revoking is immediate.
$ManagerExe / $remManagerExe @role/@user
Grant or revoke ManagerExe power.
$ChatExe / $remChatExe @role/@user
Grant or revoke ChatExe (chat moderation) power.
$VoiceExe / $remVoiceExe @role/@user
Grant or revoke VoiceExe (voice management) power.
$setNickExe / $remNickExe @role/@user
Grant or revoke Nickname management power.
$assign_default / $default_remove @role/@everyone
Grant or revoke Default (music) group access. Controls who can use music commands.
$BypassExe / $remBypassExe @role/@user
Grant or revoke extended anti-spam limits (15 warns / 20 timeout threshold instead of the default 4/7).
$SupBypass / $remSupBypass @role/@user
Grant or revoke total immunity from the anti-spam filter. No warnings or timeouts will ever be applied.
$fetch @role/@user
Check direct/inherited permissions of a role or user. If the target is the owner specified in the .env file, it returns ! Dev !.
$setprefix <new_prefix>
Change the bot's command prefix for this server. Example: $setprefix !
$remprefix
Reset the prefix back to the global default ($).

Announcement Commands

Permission required: AdminExe

$announce (alias: announcement)
Launch an interactive announcement wizard. Step 1: choose the target text channel from a dropdown. Step 2: a modal pops up with Subject/Title (up to 100 chars) and Announcement Details fields. On submit, a rich embed is sent to the selected channel with a jump link returned to you. Times out after 45s on channel selection or 3 minutes on modal.
$announceOwn <message>
Bot Owner only. Sends a plain announcement message to all servers the bot is currently in. Used for global broadcasts.

Utility Commands

$help
Opens an interactive help menu with a dropdown selector. Selecting a category shows all commands in that group. Only categories the user has permission for can be viewed. Menu expires after 2 minutes of inactivity.
$ping
Replies with the bot's current WebSocket latency in milliseconds.
$hello
A simple greeting command. The bot replies with a friendly message.