-
Notifications
You must be signed in to change notification settings - Fork 0
FAQ
The bot doesn't respond to any commands.
- The bot must have Read Messages / Send Messages and
applications.commandspermission in the server, and you must re-invite it with the new scope if it was added without slash permissions. - It may still be starting: check
logs/bot.log. Slash commands register after the first successful connection. - Verify
DISCORD_TOKENin.envand that the app didn't fail on a missing/optional API key.
Slash commands are missing entirely.
Re-invite the bot with the applications.commands OAuth scope alongside bot (see Getting Started).
Commands from a disabled module still show.
Register happens at boot — restart the bot after flipping a feature flag (LAVA_ENABLED, GIFS_ENABLED, TWITCH_ENABLED, NEWS_ENABLED, IGDB_ENABLED).
Where are the logs? logs/ at the workspace root — bot.log, dashboard.log, lavalink.log, and combined.log.
“No available audio players” / nothing plays.
Lavalink isn't running or isn't reachable. Start it with java -jar Lavalink.jar, via the docker-compose lavalink container, or connect to your external self-hosted Lavalink server. Verify that LAVA_HOST, LAVA_PORT, LAVA_PASS, and LAVA_SECURE all match your setup. On an external instance also set LAVA_EXTERNAL=true.
Spotify links do nothing. Add SPOTIFY_CLIENT_ID + SPOTIFY_CLIENT_SECRET.
YouTube throttles or blocks playback. Complete /youtube-auth once so the bot streams through an authorized YouTube account (see Music & Lavalink).
Playback works but there's no visual progress / embed. The now-playing embed needs Embed Links permission in the channel.
Where do settings, playlists, and reminders live? In packages/db/prisma/db.sqlite — created automatically. Settings take effect after the bot hydrates at boot; save them and restart if something looks stale.
I want a clean slate. Stop the bot, delete packages/db/prisma/db.sqlite, run pnpm db:push, and restart. (The file is recreated on next boot.)
SQLite errors like “database is locked” appear. This usually means the bot/dashboard processes are pointing at different copies of the file, or a long-running transaction. Ensure both processes share the same directory/volume and aren't duplicated.
How do I back up? Copy db.sqlite (ideally via sqlite3 .backup). See Deployment.
Dashboard shows “Authorization failed”. Confirm DISCORD_CLIENT_ID / DISCORD_CLIENT_SECRET and that NEXTAUTH_URL matches the URL you're visiting (localhost vs. domain — and HTTP vs. HTTPS).
Dashboard shows no servers. The bot must be a member of the server and have completed at least one boot there; also check the invite wasn't restricted by server settings.
Users can't sign in. The Discord OAuth Redirect URI must be <NEXTAUTH_URL>/api/auth/callback/discord in the Developer Portal.
Where do dashboard settings go? The same SQLite DB the bot uses — both processes must share one db.sqlite.
pnpm install fails. You need Node >=20 and pnpm 8.x. If you're behind a proxy, adjust the pnpm registry.
“Cannot find module @master-bot/...” The workspace wasn't installed/built — run pnpm install then pnpm build from the repo root.
Port 3000 already in use. Change PORT and set NEXTAUTH_URL to the new port, or stop whatever is occupying it.
Open an issue at https://github.com/galnir/Master-Bot/issues with the relevant logs/ output and your .env values masked — never post secrets.
Master-Bot — a modern, production-grade Discord music, moderation & utility bot with a full-featured Next.js web dashboard.
- Getting Started — prerequisites, installation, and first launch
-
Configuration — full
.envreference, feature flags, and API keys
- Architecture — monorepo layout, session layer, and SQLite database
-
Commands Reference — every slash command, including
/setsubcommands
- Music & Lavalink — audio engine, filters, playlists, trivia, and YouTube OAuth
- Moderation — ban, kick, timeout, slowmode, purge, and audit logging
- Support Tickets — thread-based ticket system and transcripts
- Welcome & Temp Channels — join greetings and on-demand voice channels
- Reminders & Twitch Alerts — scheduled reminders and live stream notifications
- Web Dashboard — Next.js 15 dashboard, studios, and OAuth
- Deployment — production launch, Docker, and self-hosting
- Repository: https://github.com/galnir/Master-Bot
- Lavalink v4 Releases: https://github.com/lavalink-devs/Lavalink/releases