-
Notifications
You must be signed in to change notification settings - Fork 0
Bot Setup
This page explains first-time Discord bot setup after the server is installed.
In the Discord Developer Portal:
- Create an application.
- Create a bot user.
- Copy the bot token into the server env file as
DISCORD_TOKEN. - Copy the application/client ID into
DISCORD_CLIENT_ID. - Keep the client secret private for OAuth setup.
Never paste token or secret values into the wiki.
Enable the Discord features the bot needs, such as slash commands/application commands and any privileged intents required by the current bot behavior.
Use the least privileged permissions that still allow:
- Posting submission reposts.
- Reading configured channels.
- Sending embeds/files where submissions/games are used.
- Managing messages only where moderation features require it.
- Using slash commands.
Generate an invite URL from the Developer Portal or the dashboard setup helper. The invite should include the scopes and permissions SDAC needs.
Common scopes:
botapplications.commands
After inviting, confirm the bot appears in the server member list.
After the bot starts, slash commands should sync. In Discord, test:
/commands
/admincommands
/setupstatus
If commands do not appear, check bot logs and Discord command sync output.
Start with:
/setup
Then run:
/setupstatus
/setupchecklist
/setuptest
/diagnose
These commands help catch missing permissions, missing channels, public URL problems, and command sync issues.
At minimum, configure where submissions go:
/setsubmit
Optional channels/settings:
/setweeklychannel
/setweeklytime
/setweeklyday
/setgamesummarychannel
/seterrorchannel
/setnotification
Create categories with:
/setcategory
Review and edit with:
/categories
/editcategory
/deletecategory
No categories should be hard-coded by default. Each server should configure its own.
Grant Discord roles that can manage SDAC:
/setadminrole
/removeadminrole
Dashboard role rules are separate and documented in Roles and Permissions.
Use:
/setfeature
Feature toggles can include submissions, approval queues, guessing games, weekly posts, public gallery visibility, cross-server visibility/rankings, and other server-specific behavior depending on the current version.
Use:
/setapproval
/setmoderation
/setlimit
These control approval-before-repost, blocked words, allowed media types, new-user approval, spoiler approval, file size, monthly submissions, active games, and storage limits.
Common setup:
/setgamesettings
/setguesstimeout
/setgamesummarychannel
Test with:
/startgame
/guess
/hint
/correct
Website-managed game library setup is handled from the dashboard.
Test Discord poll flow:
/createpoll
/polls
/votepoll
/closepoll
Polls can also be managed in the dashboard.
Optional Discord backup setup:
/backupguide
/backupsetup
/setserverbackup
/backupnow
/backupstatus
/serverbackupstatus
Provider credentials should be configured on the server and never published in the wiki.
Server branding can be set with:
/setbranding
Dashboard theme/layout settings are configured in the dashboard.
Confirm:
-
/commandsworks. -
/admincommandsworks for staff. -
/submitcan create a test submission. - The bot can post in configured channels.
-
/setuptestpasses or shows only expected warnings. -
/diagnosedoes not show critical failures. - Admin alert channels receive testable notices where configured.