# Required TOKEN= # Optional - Bot Configuration STATUS_CHANNEL_ID= SENATOR_DB_PATH=data/senator.db # Optional - Copyparty File Server (for music /search commands) # No trailing slash; a trailing slash produces double slashes in built URLs. COPYPARTY_URL=http://localhost:8080 COPYPARTY_URL_UPLOAD=http://localhost:8080/uploads COPYPARTY_PASSWORD= # Optional - AI functionality ASSISTANT_KEYWORD=jarvis # Full chat-completions URL. For a local server running on the Docker host, # use the host's LAN IP (localhost inside the container is the container). LLM_API_URL=https://openrouter.ai/api/v1/chat/completions LLM_API_KEY= LLM_MODEL= # Legacy OpenRouter fallbacks (LLM_* takes priority) OPENROUTER_API_KEY= OPENROUTER_MODEL= # Optional - Voice recording (opt-in; no audio is kept when false) RECORDING_ENABLED=false # Rolling buffer length in seconds (1-3600). RECORDING_WINDOW_SECONDS=900 # Optional - Local TTS # Directory containing .onnx, or a full path to the .onnx file. # There is no external TTS fallback; leave unset to disable TTS. TTS_MODEL_PATH=/path/to/piper TTS_VOICE=pl_PL-bass-high # Parent directory of espeak-ng-data. Docker overrides this to /usr/share. PIPER_ESPEAKNG_DATA_DIRECTORY=/path/to/piper