# Copy to `.env` and fill in values. `.env` is gitignored. # Dev defaults live in docker-compose.yml (APP_ENV=dev, FORGEJO_USERNAME=jonas). # Prod overrides via this .env file (e.g. APP_ENV=prod). # Paths resolve from the repo root in code. FORGEJO_TOKEN= # --- langflow (authoring UI) + lfx (flow runtime): pinned in lockstep --- # LFX contract: major.minor of Langflow and LFX must match (patches are # independent). Bump deliberately on both sides together (compose image pin # below + Dockerfile.lfx ARG + backend dev dep `lfx~=`), then re-check # backend/flows/*.json with `lfx upgrade --upgrade-flow=safe`. LANGFLOW_VERSION=1.12.0 LANGFLOW_URL=http://langflow:7860 LANGFLOW_SUPERUSER=langflow LANGFLOW_SUPERUSER_PASSWORD= LANGFLOW_SECRET_KEY= # Single static key; validated against env (LANGFLOW_API_KEY_SOURCE=env), superuser scope. LANGFLOW_API_KEY=sk- # Langflow stores flows in its own SQLite file when unset. # --- lfx (flow runtime) --- LFX_URL=http://lfx:6004 LFX_API_KEY=lfx- # --- API self-reference for flow callbacks (must be reachable FROM lfx) --- CALLBACK_BASE_URL=http://api:8000 # Shared secret for flow callbacks (POST /api/approvals carries it as # X-Callback-Token). Long random value; empty disables callbacks. CALLBACK_TOKEN= # --- frontend mode: dev server with HMR (prod .env must set `preview`) --- FRONTEND_MODE=dev # --- access management (request + approval, invite via email) --- # Public frontend URL (magic links point here). FRONTEND_URL=http://localhost:3000 # Comma-separated emails that become admins (role assignment + bootstrap). ADMIN_EMAILS= # Reply-To on outgoing mail; also receives new access-request notifications. CONTACT_TO= MAIL_FROM= SMTP_HOST= SMTP_PORT=587 SMTP_USERNAME= SMTP_PASSWORD= # --- LLM (optional; tests mock the provider without it) --- # LLM_API_KEY=