BOT_TOKEN=your_discord_bot_token_here CLIENT_ID=your_discord_client_id_here # Set to false on Railway after first deploy to skip slow global slash sync on every restart # AUTO_DEPLOY_COMMANDS=false # Gateway connection logging (verbose; also auto-enabled on Railway) # DISCORD_DEBUG=true # Railway: use 1 replica, raw BOT_TOKEN (no quotes), enable Message Content intent in Discord Developer Portal. STATUS_WEBHOOK_URL=https://discord.com/api/webhooks/your_webhook_id/your_webhook_token # top.gg (optional — vote prompts + already-voted checks) # TOP_GG_TOKEN=your_top_gg_api_token # TOP_GG_BOT_ID=1502977716196999309 # TOP_GG_WEBHOOK_SECRET=your_webhook_auth_or_whs_secret # TOP_GG_WEBHOOK_PATH=/webhooks/topgg/vote # TOP_GG_WEBHOOK_PORT=3921 # SoundCloud playlists (optional — single tracks work without this via oEmbed search fallback) # SOUNDCLOUD_CLIENT_ID=your_soundcloud_client_id # Spotify playlist expansion beyond Lavalink's ~50-track page (optional but recommended) # SPOTIFY_CLIENT_ID=your_spotify_client_id # SPOTIFY_CLIENT_SECRET=your_spotify_client_secret # Lavalink (required) LAVALINK_HOST=your.lavalink.host LAVALINK_PASSWORD=your_lavalink_password LAVALINK_PORT=443 LAVALINK_SECURE=true LAVALINK_NAME=Main # Optional backup Lavalink node # LAVALINK_BACKUP_HOST= # LAVALINK_BACKUP_PASSWORD= # LAVALINK_BACKUP_PORT=443 # LAVALINK_BACKUP_SECURE=true # LAVALINK_BACKUP_NAME=Backup # Database backups (optional — defaults: weekly, keep 4 snapshots) # BACKUP_ENABLED=true # BACKUP_INTERVAL_MS=604800000 # BACKUP_RETAIN_COUNT=4