"""Runtime configuration, sourced from the environment (.env supported).""" import os from dotenv import load_dotenv load_dotenv() # LiveKit dev server defaults (livekit-server --dev): key=devkey secret=secret. LIVEKIT_URL = os.environ.get("LIVEKIT_URL", "ws://localhost:7880") LIVEKIT_API_KEY = os.environ.get("LIVEKIT_API_KEY", "devkey") LIVEKIT_API_SECRET = os.environ.get("LIVEKIT_API_SECRET", "secret") # The single room the podcast happens in (one per session is plenty for now). ROOM_NAME = os.environ.get("REACHY_ROOM", "reachy-podcast") # Where pre-rendered / sample audio clips live (the TTS stage will drop files here). import pathlib SAMPLES_DIR = pathlib.Path( os.environ.get("REACHY_SAMPLES_DIR", pathlib.Path(__file__).parent.parent / "samples") ).resolve() # Token for the /admin control panel (stop shows on demand). Unset = admin off. ADMIN_TOKEN = os.environ.get("ADMIN_TOKEN", "") # Modal-hosted brain + voice for generated shows (llama.cpp Nemotron + Qwen3-TTS). MODAL_LLM_URL = os.environ.get("MODAL_LLM_URL", "").rstrip("/") MODAL_LLM_KEY = os.environ.get("MODAL_LLM_KEY", "") MODAL_TTS_URL = os.environ.get("MODAL_TTS_URL", "").rstrip("/") MODAL_TTS_KEY = os.environ.get("MODAL_TTS_KEY", "")