Getting Started

Introduction

Welcome to the SX2 Nexus documentation. SX2 Nexus is a multi-purpose Discord bot built for communities that want powerful moderation, a smart welcome system, verification, role menus, giveaways, polls, and real-time notifications — all in one place.

All data is stored per-server in a PostgreSQL database. Your settings never affect other servers.

💡 The default command prefix is !. You can change it per server with !setprefix. Slash commands are also supported where available.
Getting Started

Invite the Bot

Click below to add SX2 Nexus to your server. Grant all requested permissions so every feature works correctly.

Add SX2 Nexus to Discord ↗
⚠️ After inviting, move the SX2 Nexus role above all other roles it needs to manage in Server Settings → Roles. Otherwise ban, kick, and role commands may fail silently.
Getting Started

First Setup

The fastest way to get everything running is with the interactive setup wizard. It auto-detects your channels and roles so you don't have to type them manually.

#CommandWhat it does
1 !serversetup Interactive wizard — auto-detects roles & channels, one-click save
2 !welcomesetup Fine-tune welcome messages, DMs, and member count display
3 !verify setup Configure the member verification system step-by-step
4 !postrules Post the full rules embed with the agree button
5 !roles setup Create a self-assign role menu with dropdown
6 !config Verify everything is saved correctly
!serversetup auto-detects your channels and roles by name — it will find your #welcome, #rules, #mod-log and admin/mod roles automatically. Just confirm and save.
Getting Started

Permission Levels

SX2 Nexus uses four permission levels to control who can run each command.

Everyone All server members — no role required
Mod Members with the configured mod role or higher
Admin Members with the configured admin role or Administrator permission
Premium Premium-flagged features/commands require an active subscription
💎 Commands marked Premium require an active SX2 Nexus Premium subscription. Learn more →
Commands

🔧 Setup

Core setup/config commands for onboarding and server configuration.

!serversetup / !configAdmin
Run the setup wizard and review your current saved configuration.
!serversetup  |  !config
!setadminrole / !setmodrole / !resetconfigAdmin
Configure admin/mod access roles and reset all server configuration if needed.
!setadminrole @role  |  !setmodrole @role  |  !resetconfig
!postrules / !setuprulesAdmin
Post and manage server rules onboarding messages.
!postrules  |  !setuprules
!welcomesetup ...Admin
Manage welcome channel/message, DM settings, tests, and reset for joins.
!welcomesetup, !welcomesetup channel, message, dm, dmmessage, membercount, test, reset, help
!verify setup / !verify send / !verifyAdmin
Configure and deploy your verification flow, then view current verification status.
!verify setup  |  !verify send  |  !verify
!roles setup / !roles delete / !rolesAdmin
Create, delete, and list self-assign role menus.
!roles setup  |  !roles delete [menu_id]  |  !roles
Commands

⚜️ Admin

Server administration and role management commands. Requires the configured Admin role or Discord's Administrator permission.

!adminroles / !modroles Admin
List all roles currently configured as Admin or Moderator, including member counts.
!adminroles  |  !modroles
!addrole / !removerole Admin
Assign or remove a role from a specific member.
!addrole @user @role  |  !removerole @user @role
!createrole / !deleterole / !listroles Admin
Create a new role with optional hex colour, delete an existing role, or list all server roles with member counts.
!createrole [name] [#hexcolor]  |  !deleterole @role  |  !listroles
!announce Admin
Send a formatted announcement embed to any channel.
!announce #channel Your announcement text here
!resetroles / !resetconfig Admin
Reset admin and mod role settings, or wipe all server configuration for this guild.
!resetroles  |  !resetconfig
Commands

🛡️ Moderation

All mod actions are logged to your configured mod log channel and saved to the database per server.

!ban / !unbanMod
Permanently ban or unban a member. Unban requires the user's Discord ID.
!ban @user [reason]  |  !unban [user_id] [reason]
!tempbanMod
Temporarily ban a member. They are automatically unbanned after the duration expires.
!tempban @user 7d Spamming
!kickMod
Kick a member from the server. They can rejoin with an invite.
!kick @user [reason]
!timeout / !untimeoutMod
Timeout a member — they cannot send messages for the duration. Use !untimeout to remove early.
!timeout @user 30m Breaking rules  |  !untimeout @user
!warn / !warnings / !delwarn / !clearwarningsMod
Issue a warning, view all warnings, delete a specific warning by ID, or clear all warnings for a member.
!warn @user [reason]  |  !warnings @user  |  !delwarn [id]  |  !clearwarnings @user
!clearMod
Bulk delete messages from the current channel. Optionally target a specific user's messages.
!clear [amount 1–100] (@user)
!lock / !unlock / !slowmodeMod
Lock or unlock a channel so members cannot send messages. Set slowmode delay in seconds (0 to disable).
!lock [#channel]  |  !unlock [#channel]  |  !slowmode [seconds]
!nukechannel / !channel_clear / !clearchannelAdmin
Delete ALL messages in the current channel by cloning it. Use with caution — this is irreversible.
!nukechannel  |  !channel_clear  |  !clearchannel
Commands

👋 Welcome System

Automatically greet new members with a rich embed in your welcome channel, with optional DMs and member count.

!welcomesetupAdmin
Show the current welcome configuration. Use subcommands below to change individual settings.
!welcomesetup
!welcomesetup channelAdmin
Set the channel where welcome messages are posted when new members join.
!welcomesetup channel #welcome
!welcomesetup messageAdmin
Set the welcome message text. Supports variables: {user} {server} {member_count} {username}
!welcomesetup message Welcome {user} to {server}! 🎉
!welcomesetup dm / dmmessageAdmin
Toggle DM on join on or off. Set a custom DM message with the same variables as the channel message.
!welcomesetup dm on  |  !welcomesetup dmmessage Welcome {user}!
!welcomesetup test / reset / helpAdmin
Send a test welcome message, reset all settings to default, or view placeholder help.
!welcomesetup test  |  !welcomesetup reset  |  !welcomesetup help
💎 Premium: Custom welcome embed with your server's banner image. Upgrade →
Commands

✅ Verification

Button-based verification with account age check and a rules agreement modal. The button works permanently — even after bot restarts.

!verify setupAdmin
Run the 6-step interactive setup wizard. Configures verified role, unverified role, verify channel, log channel, minimum account age, and the agreement word.
!verify setup
!verify sendAdmin
Post the verification embed with the Verify Me button to the configured verify channel.
!verify send
!verifyAdmin
Show current verification configuration — roles, channels, account age requirement, and total verified/rejected counts.
!verify
Commands

🎭 Role Menus

Beautiful self-assign role menus with dropdowns, member counts, and confirmation messages. Each server manages its own menus independently.

!roles setupAdmin
Interactive wizard to create a role menu. You'll be asked for a title, description, colour, channel, and the roles to include (with emojis and descriptions).
!roles setup
!roles deleteAdmin
Delete an existing role menu by its ID. Use !roles to see all active menu IDs.
!roles delete [menu_id]
!rolesAdmin
List all active role menus in this server with their IDs and channels.
!roles
Commands

🎉 Giveaways

!giveaway startMod
Start a timed giveaway with automatic winner selection. Duration format: 1d 2h 30m. Winners format: 1w 2w etc.
!giveaway start 1d 1w Discord Nitro
!giveaway end / reroll / listMod
End a giveaway early and pick winners, reroll a new winner, or list all active giveaways.
!giveaway end [id]  |  !giveaway reroll [id]  |  !giveaway list
Commands

📊 Polls

!pollEveryone
Create a yes/no or multi-choice poll. Use | to separate options. No options = yes/no poll automatically.
!poll Best game? | Valorant | CS2 | Apex
!endpollMod
End a poll and display final results with a percentage bar for each option.
!endpoll [message_id]
Commands

🔔 Notifications

💎 Twitch and YouTube notifications are Premium only. Get Premium →
!twitchsetPremium
Set up live Twitch notifications. The bot checks every 3 minutes and posts a rich embed when the channel goes live.
!twitchset #channel twitchusername
!youtubesetPremium
Set up YouTube notifications. Alerts on new videos and live streams. Requires the YouTube Channel ID (not the name).
!youtubeset #channel YouTubeChannelID
!twitchstatus / !twitchremoveMod
View current Twitch notification setup or remove it for this server.
!twitchstatus  |  !twitchremove
!youtubestatus / !youtuberemoveMod
View current YouTube notification setup or remove it for this server.
!youtubestatus  |  !youtuberemove
Commands

⌨️ Custom Commands

💎 Free servers get up to 10 custom commands. Premium = unlimited. Upgrade →
!addcmdMod
Create a custom bot response. When a member types the trigger, the bot replies. Use | to separate trigger from response. Supports {user} {server} {username} variables.
!addcmd discord | Join our server at discord.gg/sx2
!editcmd / !delcmd / !listcmdsMod
Edit an existing custom command's response, delete one, or list all custom commands for this server.
!editcmd trigger | New response  |  !delcmd trigger  |  !listcmds
Commands

🛠️ Utilities

!userinfoEveryone
View detailed info about a member — account age, join date, roles, status, and activity.
!userinfo [@user]
!serverinfoEveryone
View detailed server info — member count, channels, roles, boost level, and verification level.
!serverinfo
!avatarEveryone
Get a full-size version of any member's avatar with PNG/JPG/WEBP download links.
!avatar [@user]
!botinfoEveryone
View SX2 Nexus stats — uptime, server count, latency, Python version, and system info.
!botinfo
!inviteEveryone
Get the bot invite link to add SX2 Nexus to another server, plus support server link.
!invite
Commands

⚙️ Settings

!setprefixAdmin
Change the command prefix for this server. Max 5 characters, no spaces. Takes effect immediately.
!setprefix .
!setgoodbyechannelAdmin
Set the channel where goodbye messages are posted when members leave the server.
!setgoodbyechannel #goodbye
Commands

👑 Owner

Bot owner–only commands for maintenance, cog management, and premium administration. These commands reject everyone except the bot owner.

!maintenance / !maintOwner
Show an overview of all maintenance commands available to the bot owner.
!maintenance
!shutdown / !restartOwner
Shut down or restart the bot process. Restart requires the host (Render) to auto-restart the process.
!shutdown  |  !restart
!statusOwner
Show live bot stats — server count, total members, latency, and discord.py version.
!status
!load / !unload / !reloadOwner
Load, unload, or reload a cog by its module path without restarting the bot.
!load cogs.moderation.ban  |  !unload cogs.moderation.ban  |  !reload cogs.moderation.ban
!sync guild / !sync globalOwner
Sync slash commands. Guild sync is instant (use during development). Global sync propagates to all servers within up to 1 hour.
!sync guild  |  !sync global
!evalOwner
Evaluate arbitrary Python code in the bot's context. Has access to bot, ctx, and discord. Use with caution.
!eval len(bot.guilds)
!setstatus / !liststatus / !clearstatus / !setbotstatusOwner
Manage the bot's rotating status messages. Add custom entries, list them, clear all, or set the online/idle/dnd presence state.
!setstatus Playing Valorant  |  !liststatus  |  !clearstatus  |  !setbotstatus dnd
!statsnow / !forceupdateOwner
Show current cached stats for this server, or force an immediate stats update cycle.
!statsnow  |  !forceupdate
!premium check / activate / deactivate / listOwner
Manage premium status across servers. Check status, manually activate or deactivate premium on a guild, or list all active premium servers.
!premium check [guild_id]  |  !premium activate [guild_id]  |  !premium deactivate [guild_id]  |  !premium list
Commands

✴️ Slash Commands

SX2 Nexus supports Discord's native slash commands for the most common actions. Type / in any channel to see available commands with autocomplete and inline descriptions.

💡 Slash commands need to be synced before they appear. If you don't see them, ask the server owner to run !sync guild (instant) or wait up to an hour after !sync global.
/banMod
Permanently ban a member from the server. Discord shows a confirmation UI before the bot acts. Sends a DM to the banned member if possible and logs to the mod log channel.
/ban user:@member reason:Spamming
/kickMod
Kick a member from the server. They can rejoin with a valid invite. Sends a DM notice and logs to the mod log channel.
/kick user:@member reason:Rule violation
/warnMod
Issue a warning to a member. Warning is stored in the database and the member receives a DM. Use !warnings @member to view all warnings and !delwarn ID to remove one.
/warn member:@user reason:Inappropriate language
/serverinfoEveryone
Display detailed server information — member count, bots, channels, roles, boost level, verification level, and creation date.
/serverinfo
/help [category]Everyone
Browse all bot commands organised by category. Run /help to see the category overview, or pass a category name directly to jump straight to its commands.
/help  |  /help category:Moderation