# Server PORT=3000 COMMAND_PREFIX=! # Feature toggles PLATFORM_DISCORD_ENABLED=true PLATFORM_TWITCH_ENABLED=true PLATFORM_YOUTUBE_ENABLED=false PLATFORM_KICK_ENABLED=false # Discord DISCORD_CLIENT_ID= DISCORD_CLIENT_SECRET= DISCORD_BOT_TOKEN= DISCORD_GUILD_ID= DISCORD_ADMIN_ROLE_ID= DISCORD_MOD_ROLE_ID= DISCORD_REDIRECT_URI=http://localhost:3000/auth/discord/callback # Twitch TWITCH_CLIENT_ID= TWITCH_CLIENT_SECRET= TWITCH_REDIRECT_URI=http://localhost:3000/auth/twitch/callback TWITCH_BOT_USERNAME= TWITCH_BOT_OAUTH= TWITCH_CHANNELS= # YouTube YOUTUBE_CLIENT_ID= YOUTUBE_CLIENT_SECRET= YOUTUBE_REDIRECT_URI=http://localhost:3000/auth/youtube/callback YOUTUBE_BOT_REFRESH_TOKEN= YOUTUBE_BOT_CHANNEL_ID= # Updates AUTO_UPDATE_ENABLED=false AUTO_UPDATE_INTERVAL_MINUTES=60 GIT_REMOTE=origin GIT_BRANCH=main # Lumi host operator identity shown in generated Companion pairing packages. # Set these when distributing Companion from a self-hosted Lumi installation. LUMI_OPERATOR_NAME= LUMI_OPERATOR_CONTACT= LUMI_OPERATOR_PRIVACY_URL= # Runtime mode and bind host # Lumi auto-detects development mode from NODE_ENV, a loopback bind host, or a # source checkout. Explicit overrides always win. # LUMI_DEV_MODE=true # LUMI_HOST=127.0.0.1 # Private OBS stream testing (optional; see docs/stream-testing.md) # LUMI_STREAM_TEST_INGEST_HOST=stream-test.example.com # LUMI_STREAM_TEST_INGEST_PORT=19350 # LUMI_STREAM_TEST_PUBLIC_PORT=443 # LUMI_STREAM_TEST_RTMPS=true # LUMI_FFMPEG_PATH=/absolute/path/to/ffmpeg