Command Reference
Complete reference for every SolsticeIO command, organized by category. Each command lists its syntax, required permission level, and behavior.
Permission Hierarchy
SolsticeIO uses a role-based permission hierarchy. Higher levels inherit all abilities of lower levels:
| Level | Who | Scope |
|---|---|---|
| Owner | Single user defined in OWNER_ID | Global - Unrestricted access to all commands |
| Staff | Users managed via /addstaff | Global - Access to management and diagnostic commands across all chats |
| Group Admin | Telegram group administrators and creator | Per-chat - Group moderation and playback controls |
| DJ User | Users assigned via /dj add | Per-chat - Music playback and queue controls without moderation powers |
| Requester | User who requested the currently playing song | Per-chat - Basic controls (pause, resume, seek, skip) for their track |
| Everyone | Any member in the chat | Per-chat - Play commands (when playmode is everyone), utility, and fun commands |
General Commands
| Command | Permission | Description |
|---|---|---|
/start | Everyone | In private chat, opens the interactive welcome panel with category buttons and docs links. In groups, displays active status. Supports deep links like /start help |
/help | Everyone | Opens the interactive help menu. In groups, provides a button to open the full interactive guide in private messages |
Music & Playback
Queueing Music & Video
| Command | Permission | Description |
|---|---|---|
/play <query | URL> | Everyone* | Stream audio in voice chat. Accepts song names, YouTube URLs, Spotify track/album/playlist links, or replies to Telegram audio files |
/vplay <query | URL> | Everyone* | Stream video with audio directly into voice chat. Same inputs as /play |
/playforce <query | URL> | Admin / DJ | Force-play audio immediately, bypassing the existing queue |
/vplayforce <query | URL> | Admin / DJ | Force-play video immediately, bypassing the existing queue |
/lyrics [query] | Everyone | Fetch synchronized lyrics from LRCLIB for the current song or a search query |
/suggest [query] | Everyone | Fetch 8 song recommendations with 1-tap inline play buttons |
*When playmode is set to everyone (default). When set to admin, only admins and DJs can queue tracks.
Playback Control
| Command | Permission | Description |
|---|---|---|
/pause | Admin / DJ / Requester | Pause the active voice chat stream |
/resume | Admin / DJ / Requester | Resume the paused stream |
/stop | Admin / DJ | Stop playback, clear the upcoming queue, and release the voice stream |
/skip [N] | Admin / DJ / Requester | Skip N songs (default: 1). Non-requesters trigger a vote-skip counter |
/seek <seconds> | Admin / DJ / Requester | Jump forward by N seconds in the current stream |
/seekback <seconds> | Admin / DJ / Requester | Jump backward by N seconds in the current stream |
/loop <0-10> | Admin / DJ / Requester | Repeat the current track up to 10 times. Use /loop 0 to disable looping |
/shuffle | Admin / DJ | Randomly shuffle all upcoming songs in the queue |
/remove <position> | Admin / DJ / Requester | Remove a specific track from the queue by its index number |
/sleep <duration> | Admin / DJ | Set an auto-stop sleep timer (e.g. /sleep 30m, /sleep 1h). Use /sleep off to cancel |
/queue [page] | Everyone | View the upcoming playlist queue with interactive reorder and remove buttons. Supports standalone /q [page] |
/web / /room | Everyone | Open the embedded Web Room with live waveforms, synchronized lyrics, and real-time controls |
Playback Configuration
| Command | Permission | Description |
|---|---|---|
/autoplay | Admin | Toggle autoplay. When enabled, similar tracks are automatically fetched and played when the queue ends (auto-expires after 6 hours) |
/card [on | off] | Admin | Enable or disable Now Playing photo cards in chat |
/playmode | Admin | Toggle who can queue songs between everyone and admin |
Playlists
Manage custom playlists interactively in private messages or inside groups. Each user can save up to 10 playlists, holding up to 200 songs each (total capacity of 2,000 songs per user). Includes 1-click creation, 1-click saving of the playing track, and instant in-VC playback streaming.
| Command | Permission | Description |
|---|---|---|
/playlist | Everyone | Open the interactive playlist manager panel |
/playlist create <name> | Everyone | Create a custom playlist (limit: up to 10 playlists per user, 200 songs each) |
/playlist delete <name> | Everyone | Delete an existing playlist |
/playlist list | Everyone | List all your saved playlists |
/playlist show [name] | Everyone | View all tracks inside a playlist |
/playlist add [name] <query | URL> | Everyone | Add a song or link to your playlist (up to 200 songs) |
/playlist remove [name] <number> | Everyone | Remove a song by its position number |
/playlist clear [name] | Everyone | Remove all songs from the playlist |
/playlist rename <old> <new> | Everyone | Rename a playlist |
/playlist share [name] <public | private> | Everyone | Toggle playlist visibility |
/playlist play [name] | Everyone | Stream your playlist in group voice chat |
/playlist play <@username/id> <name> | Everyone | Stream another user's public playlist in group voice chat |
Group Moderation
Fast Inline Flags
Moderation commands support inline flags for clean, silent execution:
-d: Automatically deletes the user's offending message.-s: Silent execution (deletes the command message and suppresses chat confirmation).-sd/-ds: Combines both silent execution and message deletion.
Examples:
/ban @spammer -d: Bans user and deletes their spam message./tban @user 2h -d: Temporarily bans for 2 hours and deletes the message./purge -s: Silently deletes messages without leaving a bot confirmation card.
Moderation Actions
| Command | Permission | Description |
|---|---|---|
/ban [user] [reason] [-s] [-d] | Admin | Permanently ban a user from the group |
/tban [user] <duration> [-s] [-d] | Admin | Temporarily ban a user (10m, 2h, 3d) |
/unban [user] | Admin | Unban a user and allow them to rejoin |
/mute [user] [reason] [-s] [-d] | Admin | Permanently mute a user in the chat |
/tmute [user] <duration> [-s] [-d] | Admin | Temporarily mute a user (15m, 1h, 2d) |
/unmute [user] | Admin | Unmute a muted member |
/kick [user] [-s] [-d] | Admin | Remove a user from the group (they can rejoin via invite link) |
/kickme | Everyone | Voluntarily leave the group |
/del | Admin | Delete the replied-to message |
/purge [-s] | Admin | Purge all messages from the replied message up to the command |
/pin | Admin | Pin the replied message silently |
/unpin | Admin | Unpin the replied message |
/unpinall | Admin | Unpin all pinned messages in the chat (with confirmation dialog) |
Administrative Roles
| Command | Permission | Description |
|---|---|---|
/promote [user] [title] | Admin | Promote a user to admin with standard permissions and optional title |
/fullpromote [user] [title] | Admin | Promote a user with all administrative rights |
/demote [user] | Admin | Demote an administrator back to regular member |
Warnings System
| Command | Permission | Description |
|---|---|---|
/warn [user] [reason] | Admin | Issue a warning to a user. Triggers configured penalty when limit is reached |
/unwarn [user] | Admin | Remove the latest warning from a user |
/warns [user] | Everyone | Check warning history and count for a user |
/resetwarns [user] | Admin | Clear all warnings for a user |
/setwarnmode <ban | mute | kick> | Admin | Configure the automated punishment when the warning limit is reached |
Group Settings & Roles
| Command | Permission | Description |
|---|---|---|
/welcome <on | off> | Admin | Enable or disable new member welcome greetings |
/language | Admin | Change the group bot language (en, es, hi) |
/dj add [user] | Admin | Assign DJ role to a user (allows music control without group admin rights) |
/dj remove [user] | Admin | Revoke DJ role from a user |
/dj list | Admin | List all active DJs in the group (up to 25) |
Staff & Owner Commands
Restricted to the bot Owner and authorized Staff members.
| Command | Permission | Description |
|---|---|---|
/addstaff [user] | Owner | Add a user to the global staff list |
/delstaff [user] | Owner | Remove a user from the global staff list |
/staff (or /stafflist) | Staff | List all current staff members |
/block [user] | Staff | Block a user globally from using the bot across all chats |
/unblock [user] | Staff | Unblock a globally blocked user |
/blocked | Staff | List all globally blocked users |
/blacklistchat <chat_id> | Staff | Blacklist a chat from running the bot |
/whitelistchat <chat_id> | Staff | Whitelist a blacklisted chat |
/blchats | Staff | List all blacklisted chats |
/broadcast <text> | Staff | Broadcast an announcement to all served chats and users |
/maintenance [on | off] | Staff | Toggle global maintenance mode (locks bot to staff only) |
/restart | Staff | Gracefully restart the bot binary |
/checksession | Staff | Verify that the assistant account MTProto session is valid and connected |
/ac | Staff | View active streaming chats and live session statistics |
/setcookies | Owner | Upload new YouTube cookies (reply to a .txt file or paste raw Netscape cookies) |
/checkcookies | Staff | Validate existing YouTube cookies against live YouTube endpoints |
Utility Commands
| Command | Permission | Description |
|---|---|---|
/ping | Everyone | Check bot API and response latency |
/stats | Everyone | View system metrics. Regular members see platform stats; Staff see host CPU, RAM, disk, and runtime info |
/whois [user] | Everyone | Look up Telegram user profile, IDs, and bot relationship |
/id | Everyone | Display current chat ID, user ID, and replied message ID |
/afk [reason] | Everyone | Set yourself as AFK. The bot notifies anyone who mentions or replies to you, and clears upon your return |
/tr [lang_code] | Everyone | Translate replied message to a target language code (e.g. /tr es, /tr hi, default: en) |
/kang | Everyone | Steal replied sticker or image into your personal sticker pack (supports static, animated, and video stickers) |
/q | Everyone | Contextual action: creates a quote sticker when replying to a user; opens music queue when sent alone |
/quote (or /qr) | Everyone | Generate an aesthetic quote sticker from the replied message with profile picture |
/mmf <top;bottom> | Everyone | Generate a meme sticker/image with Impact text overlay on replied photo, sticker, GIF, or video |
/owner | Everyone | View bot author and project details |
Fun & Social Commands
Interactive Anime Reactions
Supports replying to another member or tagging them (e.g. /hug @user). Prompts the recipient with interactive Accept and Reject buttons:
| Command | Description |
|---|---|
/hug | Send a hug request with an anime GIF from Nekos.best |
/kiss | Send a kiss request with animated GIF |
/cuddle | Send a cuddle request with animated GIF |
/propose | Propose with a wedding ring (💍) and animated GIF |
Direct Reactions
| Command | Description |
|---|---|
/slap | Slap someone with an animated anime GIF |
/kill | Eliminate someone with an action GIF |
Social Games & Audio
| Command | Description |
|---|---|
/love [@user] | Calculate love compatibility percentage with customized gauge and sassy comment |
/couples (or /couple) | Select two random members as couple of the day with combined profile picture graphic |
/wish <text> | Make a wish and receive a randomized probability score |
/tts <text> | Convert text or replied message into realistic speech audio (.mp3) via Smallest.ai or Google Translate |
Secret Whispers (Inline Mode)
Send encrypted private messages that only the intended recipient can read directly inside any Telegram group:
@BotUsername <@user | user_id> <message>Provides two options via inline results:
- Normal Whisper: Can be opened multiple times by the sender and recipient.
- One-Time Whisper: Self-destructs and is permanently purged from the database after being opened once.
Any unauthorized user attempting to read the message is denied access and logged.