Music Commands
High-quality audio via Lavalink. Supports YouTube, Spotify links, SoundCloud and direct URLs, with filters, lyrics and saved playlists.
Self-hosted, not a shared public node
Lunaris runs its own dedicated Lavalink audio node rather than pointing at a free public one shared across who-knows-how-many other bots. That matters in practice: a shared public node has no uptime guarantee and no obligation to your server specifically; a dedicated one does.
If a track can’t play, it tries another source before giving up
YouTube occasionally blocks or breaks a specific track. When that happens, Lunaris automatically retries the same title and artist via SoundCloud once before giving up, and either way, you get a message. It never just goes quiet on a failed track.
Trying SoundCloud instead…
Now playing via SoundCloud
Spotify links work by finding the matching audio
Spotify doesn’t provide raw playable audio to third parties, so pasting a Spotify link resolves the real track metadata (title, artist, album) from Spotify, then plays the matching audio through the same source chain as a normal search. The queue shows correct Spotify metadata either way.
A restart doesn’t reset your queue
Deploys and restarts on Lunaris’s side don’t mean starting your playlist over: the current queue, track position, volume and repeat mode are preserved and reattached automatically, without visibly leaving and rejoining the voice channel in most cases.
Commands
l?play <song or URL> [--src yt/sp/sc/am]aka pJoins your voice channel and plays a track or playlist. Queues it if something is already playing.
l?play never gonna give you upl?pausePauses the current track.
l?pausel?resumeResumes a paused track.
l?resumel?stopStops playback and clears the entire queue.
l?stopl?skip [amount]aka sSkips the current track, or several tracks at once.
l?skipl?previousaka prevPlays the track before the current one again.
l?previousl?replayRestarts the current track from the beginning.
l?replayl?seek <time>Jumps to a specific position in the current track.
l?seek 1:30l?vol [1-200]aka volumeSets or checks the playback volume.
l?vol 80l?npaka nowplayingShows the currently playing track with a live progress bar.
l?npl?queueaka qShows the current queue with positions and durations.
l?queuel?clearClears every track from the queue without stopping the current one.
l?clearl?remove <position>Removes a single track from the queue by its position.
l?remove 2l?bump <position>Moves a queued track to the top so it plays next.
l?bump 3l?shuffleRandomizes the order of the current queue.
l?shufflel?loop [off|track|queue]Repeats the current track, the whole queue, or turns looping off.
l?loop trackl?filter [name|list|clear]aka filters, fxApply audio filters: bassboost, nightcore, vaporwave, 8D, karaoke and more.
l?filter bassboostl?lyrics [song name]aka ly, lyricGets lyrics for the currently playing track, or a searched song.
l?lyricsl?autoplayaka apToggles autoplay: keeps playing similar tracks once the queue runs out instead of leaving.
l?autoplayl?recommendaka recommendations, relatedSuggests three tracks based on what is currently playing.
l?recommendl?mhistoryShows your personal music listening history across servers.
l?mhistoryl?savequeue <name>aka sq, saveplaysSaves the current queue as a personal playlist you can reload later.
l?savequeue chillvibesl?createpl <name>aka pl-createCreates a new empty personal playlist.
l?createpl roadtripl?loadpl <name>aka pl-loadLoads a saved playlist into the current queue.
l?loadpl chillvibesl?songrequest [channel|clear]Manage Serveraka sr, requestchannelSets a channel where members can request songs without using the play command directly.
l?songrequest #song-requestsl?djrole [role|clear]Manage ServerRestricts music controls (skip, stop, volume) to a DJ role instead of anyone in the voice channel.
l?djrole @DJl?247Manage ServerKeeps the bot in the voice channel 24/7 even when nothing is playing.
l?247This is the full music command set. Looking for something else? Search all modules from the docs hub.