1. Discord commands
All commands are Discord slash commands (autocompleted commands starting with /).
"Permission required" of "None" means anyone can run it.
Basic info
| Command | Description | Example |
|---|---|---|
/ping | Shows the bot's WebSocket/API latency. | /ping |
/botinfo | Shows Stellarix's version, server count, and other info. | /botinfo |
/invite | Shows a link to invite Stellarix to another server. | /invite |
/serverinfo | Shows info about the current server (member count, channel count, boost status, etc.). | /serverinfo |
/avatar | Shows a member's avatar full-size (yourself if none given). | /avatar member:@someone |
/userinfo | Shows a member's user ID, account creation date, server join date, and roles (yourself if none given). | /userinfo member:@someone |
/roles | Lists every role on the server (except @everyone) along with its member count. | /roles |
/help | Lists every implemented command (built by walking the command tree at runtime, so it's always current). | /help |
Permission required: None (anyone can run these)
Profile cards
| Command | Description | Example |
|---|---|---|
/profile view | Shows a member's profile card (avatar, join date, bio) — yourself if none given. | /profile view member:@someone |
/profile edit | Opens a modal to edit your own bio. You can't edit another member's profile. | /profile edit (opens a modal) |
Permission required: None (anyone can run these)
Your bio is saved separately per server (a bio you write on one server never shows up on another).
Utilities
| Command | Description | Example |
|---|---|---|
/dice | Rolls a die (choose the number of sides and how many rolls; defaults to one 6-sided roll). | /dice sides:20 count:2 |
/shorten | Shortens a URL and returns a stellarix.org/s/... link. | /shorten url:https://example.com/very/long/path |
/move-to | Moves you from your current voice channel to another one you choose. | /move-to channel:🔊general |
Permission required: None (anyone can run these)
/move-to requires that you're already connected to a voice channel.
Server feature settings
| Command | Description | Example |
|---|---|---|
/stellarix-settings show | Shows the current on/off status of the X/Steam embed features. | /stellarix-settings show |
/stellarix-settings set | Turns a feature on or off. | /stellarix-settings set feature:X/Twitter Embed enabled:True |
Permission required: Manage Server
X/Twitter post links are converted to fxtwitter.com form and reposted with video/image embeds.
Steam store links are reposted as a custom embed built from Steam's official API (price, rating, tags, etc.).
Both are off by default. They can also be toggled from the "Server Settings" page on the web dashboard (see below).
Embed builder
| Command | Description | Example |
|---|---|---|
/embed | Opens a modal (input form) for title, description, color, image URL, and footer, then posts the embed to the chosen channel. | /embed channel:#announcements |
Permission required: Manage Messages
The same thing can also be done from the "Embed Messages" page on the web dashboard (see below). The description supports Markdown (headings, bold, italic, strikethrough, links, code, quotes).
Verification panels
| Command | Description | Example |
|---|---|---|
/verify-panel create | Sets up a button- or reaction-based verification panel in a channel. Clicking/reacting automatically grants the chosen role. | /verify-panel create channel:#verify method:Button role:@Member |
/verify-panel list | Lists panels that have been set up. | /verify-panel list |
/verify-panel delete | Deactivates a panel (the original message is also updated to show it's closed). | /verify-panel delete panel_id:3 |
Permission required: Manage Server
If the role to grant sits above Stellarix's own role, granting it will fail. Move Stellarix's role above the target role in Server Settings.
Voice hubs (automatic voice channels)
| Command | Description | Example |
|---|---|---|
/voice-hub set | Registers a voice channel as a "trigger". Joining it automatically creates a private temporary channel for that member and moves them into it. | /voice-hub set channel:🔊Join Here name_template:{user}'s room |
/voice-hub list | Lists registered trigger channels. | /voice-hub list |
/voice-hub unset | Removes a trigger channel registration. | /voice-hub unset hub_id:2 |
Permission required (all 3 above): Manage Server
Temporary channels are deleted automatically once empty. If the owner leaves, ownership automatically transfers to another remaining member. The commands below are for the temporary channel's own owner.
| Command | Description | Example |
|---|---|---|
/voice rename | Renames your temporary channel. | /voice rename name:War Room |
/voice limit | Sets your temporary channel's member limit (0 for unlimited). | /voice limit count:4 |
/voice lock | Makes your channel private (blocks @everyone from joining). | /voice lock |
/voice unlock | Removes the private restriction. | /voice unlock |
/voice invite | Lets a specific user join even while locked. | /voice invite user:@friend |
/voice kick | Removes a user from your channel. | /voice kick user:@someone |
/voice transfer | Transfers ownership of your channel to another member currently in it. | /voice transfer user:@next-owner |
Permission required (all 7 above): None, but you must be the owner of the target channel.
Moderation
| Command | Description | Example |
|---|---|---|
/ban | Bans a user (with a confirmation step). | /ban user:@someone reason:Rule violation |
/unban | Removes a user's ban. | /unban user:@someone |
/kick | Kicks a user (with a confirmation step). | /kick user:@someone reason:Warning |
/lockdown | Locks a channel (removes @everyone's send-message permission). | /lockdown channel:#general |
/unlock | Unlocks a channel. | /unlock channel:#general |
Permission required: /ban / /unban = Ban Members, /kick = Kick Members, /lockdown / /unlock = Manage Channels
Temporary mutes (timeouts), bulk message deletion, nickname changes, and slowmode.
| Command | Description | Example |
|---|---|---|
/timeout | Times out a member for a set number of minutes (up to 28 days). | /timeout member:@someone duration_minutes:60 reason:Disruptive behavior |
/timeout-remove | Removes a member's timeout. | /timeout-remove member:@someone |
/purge | Deletes a channel's most recent messages, up to 100 at a time (with a confirmation step). | /purge amount:50 |
/nickname | Changes a member's nickname (leave blank to reset it). | /nickname member:@someone nickname:New Name |
/slowmode | Sets a channel's slowmode delay in seconds (0 turns it off; max 21600 seconds = 6 hours). | /slowmode seconds:10 |
Permission required: /timeout / /timeout-remove = Moderate Members, /purge = Manage Messages, /nickname = Manage Nicknames, /slowmode = Manage Channels
Granting/removing multiple roles at once, and changing a role's color. Running /role add or /role remove opens a menu where you can pick several roles at once.
| Command | Description | Example |
|---|---|---|
/role add | Grants a member multiple roles picked from a menu. | /role add member:@someone |
/role remove | Removes multiple roles from a member, picked from a menu. | /role remove member:@someone |
/role color | Changes a role's color using a hex code. | /role color role:@VIP hex_color:#FFD700 |
Permission required (all 3 above): Manage Roles
Actions on members currently in a voice channel: forced disconnect, mute, and move.
| Command | Description | Example |
|---|---|---|
/voice-disconnect | Forcibly disconnects a member from their voice channel. | /voice-disconnect member:@someone |
/voice-mute | Mutes a member in voice. | /voice-mute member:@someone |
/voice-unmute | Removes the mute. | /voice-unmute member:@someone |
/voice-move | Moves a connected member to a different voice channel. | /voice-move member:@someone channel:🔊General |
Permission required: /voice-disconnect / /voice-move = Move Members, /voice-mute / /voice-unmute = Mute Members
Issuing, reviewing, and removing warnings. Leave the member blank on /warn list to see every warning on the server.
| Command | Description | Example |
|---|---|---|
/warn add | Adds a warning to a member. | /warn add member:@someone reason:Abusive language |
/warn list | Lists warnings (just that member's if one is given). | /warn list member:@someone |
/warn remove | Removes a single warning by its ID. | /warn remove warning_id:5 |
/warn clear | Removes all of a member's warnings. | /warn clear member:@someone |
Permission required (all 4 above): Moderate Members
| Command | Description | Example |
|---|---|---|
/modlog set | Sets the channel where ban/kick/lockdown results are logged. | /modlog set channel:#modlog |
/modlog show | Shows the current log channel and template. | /modlog show |
/modlog unset | Turns off log output. | /modlog unset |
/modlog set-template | Customizes the log notification's description with a tagged template (see tags). | /modlog set-template (opens a modal) |
/modlog clear-template | Clears the template, reverting to the default layout. | /modlog clear-template |
Permission required (all 5 above): Manage Server. The same settings are also available from the "Logs" page on the web dashboard (see below).
Join/leave messages
| Command | Description | Example |
|---|---|---|
/welcome-message set | Sets the join message's destination channel and text via a modal (tags supported). | /welcome-message set channel:#welcome |
/welcome-message show | Shows the current join message settings. | /welcome-message show |
/welcome-message enable | Enables the join message. | /welcome-message enable |
/welcome-message disable | Disables the join message. | /welcome-message disable |
/leave-message set | Sets the leave message's destination channel and text via a modal. | /leave-message set channel:#goodbye |
/leave-message show | Shows the current leave message settings. | /leave-message show |
/leave-message enable | Enables the leave message. | /leave-message enable |
/leave-message disable | Disables the leave message. | /leave-message disable |
Permission required (all 8 above): Manage Server. Editing and previewing are also available from the web dashboard (see below).
Member counters
| Command | Description | Example |
|---|---|---|
/member-counter create | Creates a dedicated voice channel that shows the current member count in its name (total / humans only / bots only). | /member-counter create count_type:Total |
/member-counter list | Lists member counters that have been set up. | /member-counter list |
/member-counter remove | Removes a member counter (its channel is deleted too). | /member-counter remove counter_id:1 |
Permission required (all 3 above): Manage Server
Because of Discord's channel-rename rate limit, counters update every 10 minutes rather than on every join/leave.
Recruitment forms
| Command | Description | Example |
|---|---|---|
/recruit create | Creates a sign-up panel with a capacity and description. Has a join button, and the participant list updates automatically. | /recruit create title:Looking for a 5th player capacity:5 |
/recruit list | Lists open recruitment forms. | /recruit list |
/recruit close | Closes a recruitment form. | /recruit close recruit_id:4 |
Permission required: /recruit create / /recruit list = None (anyone can run these). /recruit close = the creator, or Manage Server.
2. Web dashboard
Once you log in with Discord, you can review and change settings from your browser for any server where you have the Manage Server permission. Creating verification panels, voice hubs, and member counters is done from the Discord commands above; the dashboard handles viewing, toggling, editing, and deactivating them (creating an embed message is the one exception that can post directly from the dashboard). The sidebar has these 10 sections.
Overview
A summary of every feature's current status: how many are on, how many panels are set up, whether a log channel is configured, and so on — plus charts of member count and joins/leaves over the last 30 days.
Server settings
Three tabs in one page: "X/Steam Embeds," "Voice Hubs," and "Member Counters." Toggle the X/Twitter and Steam
embed features on or off (this shares the same setting as /stellarix-settings). Voice hubs (trigger
channels) and member counters can be reviewed and deleted here (create new ones with /voice-hub set
and /member-counter create respectively).
Embed messages
Two tabs: "Create" and "Sent messages." On "Create," fill in a title, description, color, image URL, and footer,
watch a live preview that looks close to a real Discord embed card, and post it directly to a channel of your
choice — the one feature on the dashboard that can post to Discord on its own, matching what /embed
does on the Bot side (drafts aren't saved). On "Sent messages," review posted messages and deactivate any of
them. Role pair (reaction role) settings live on the separate "Reaction Roles" page described below.
Convenience features
Turn individual slash commands on or off for this server (all on by default). A disabled command stops responding when used on this server.
Welcome messages
Edit the destination channel and message text for both the join and leave message, and toggle each one on or off. As you type, a live preview that looks close to how Discord renders it (headings, bold, italic, links, and other Markdown formatting are actually applied) updates automatically. The list of available tags is always shown.
Auto replies
Register rules that auto-reply when a message contains a keyword (partial match, case-insensitive). Each rule
can be restricted to a specific role and/or channel, and you can choose whether the reply shows as a Discord
"reply" and whether it actually pings the user. Use the {random: A~B~C} tag in the reply text to
pick randomly from several candidates.
Auto roles
Set a role to automatically grant people who join the server, with separate roles for human accounts and bot accounts (leave both blank to disable).
Anti-raid
Turn each of the two triggers — a burst of joins and new accounts joining one after another — on or off
independently and set its thresholds (seconds and member count). Choose any combination of actions to run on
detection (notify, lockdown, auto-kick, auto-ban), plus the cooldown length, the notification channel, and the
quarantine role (pick an existing role or auto-create one). The "Anti-Raid History" tab shows past incidents and
the kick/ban records linked to each one. While a lockdown is active, a status banner and a manual "lift now"
button are shown (the dashboard queues the lift and the bot detects and applies it within a few dozen seconds).
The same settings are also available from the /antiraid command.
Reaction roles
Two tabs: "Embed panel roles" and "Verification panels." On "Embed panel roles," configure emoji → role pairs,
the acquisition method (buttons, a select menu, or reactions), the role change type (toggle, grant-only, or
revoke-only), and whether/how role changes are announced. On "Verification panels," review the list of panels
and deactivate any of them (set up new ones with /verify-panel create).
Logs
Two tabs: "Log settings" and "Moderation history." On "Log settings," set the channel where ban/kick/lockdown results are announced, and customize the notification's description with a tagged template (with a live preview). On "Moderation history," review a list of past actions — time, type, target, moderator, and reason.
3. Message tags
Join/leave message, moderation log, auto reply (keyword reply), and reaction role (embed panel) notification templates can include the following tags to make their content dynamic (the same expansion rules apply on the Bot side and in the web dashboard's preview).
| Tag | Description |
|---|---|
{mention} | Mention of the target user |
{server} | Server name |
{user(proper)} | The user's display name |
{server(members)} | Member count after the event |
{random: A~B~C} | Randomly pick one (~-separated) |
{ord: number} | Format a number as an ordinal (e.g. "5th") |
{reason} | The reason given (moderation log only) |
{moderator} | Mention of the moderator who took the action (moderation log only) |
{action} | The action name (e.g. BAN; moderation log only) |
{role} | Mention of the target role (reaction role notifications only) |
An unknown or malformed tag is left as literal text — a tag issue never causes the message itself to fail to send.