Skip to main content

Environment variables

The complete environment surface, grouped by concern, as declared in .env.example. Treat this as a reference; the authoritative defaults live in src/config.py and the Helm values files. Never commit populated secrets.

API & frontend

VariablePurpose
API_PORT, API_BIND_HOST, API_HOSTAPI listen port and host
API_DEBUGDebug mode toggle
UI_PORTFrontend port

Datastores

VariablePurpose
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORDPostgreSQL connection
REDIS_HOST, REDIS_PORT, REDIS_PASSWORDRedis connection
ATLAS_MINIO_ACCESS_KEY, ATLAS_MINIO_SECRET_KEY, ATLAS_MINIO_ENDPOINT, ATLAS_MINIO_EXTERNAL_URLMinIO object storage

LLM & tools

VariablePurpose
OPENROUTER_BASE_URLLLM gateway base URL
OPENROUTER_MODEL_PRIMARY, OPENROUTER_MODEL_FAST, OPENROUTER_MODEL_REASONINGModel routing tiers
LLM_TEMPERATURE, LLM_TIMEOUT, LLM_MAX_RETRIESLLM call behaviour
MCP_BEARER_TOKENAuth for MCP tool servers
DIGITAL_FOOTPRINT_ENDPOINTDFWO module endpoint
Per-tenant keys

LLM and provider credentials are resolved per tenant from encrypted storage, not from these variables. See Security & multi-tenancy.

Authentication

VariablePurpose
KEYCLOAK_URL, KEYCLOAK_PUBLIC_URL, KEYCLOAK_HOSTNAME, KEYCLOAK_PORTKeycloak endpoints
KEYCLOAK_REALM, KEYCLOAK_CLIENT_IDTenant realm + client
KEYCLOAK_ADMIN_USERNAME, KEYCLOAK_ADMIN_PASSWORD, KEYCLOAK_ADMIN_REALM, KEYCLOAK_DB_PASSWORDAdmin bootstrap
KEYCLOAK_ADMIN_ROLE, KEYCLOAK_EDITOR_ROLE, KEYCLOAK_VIEWER_ROLERole names
AUTH_ENABLEDMaster auth toggle (keep true in shared envs)
AUTH_VIEWER_GROUPS, AUTH_EDITOR_GROUPS, AUTH_ADMIN_GROUPSGroup → role mapping
AUTH_ADMIN_PATH_PREFIXES, AUTH_EXEMPT_PATHSAdmin-only and exempt paths

Agents & investigations

VariablePurpose
AGENT_MAX_ITERATIONSMax agentic loop iterations per crew
AGENT_RETRY_ON_FAIL, AGENT_MAX_RETRIES, AGENT_RETRY_WAIT_MSCrew retry behaviour
MAX_CONCURRENT_INVESTIGATIONSInvestigation parallelism cap
INVESTIGATION_TIMEOUTPer-investigation timeout

Rate limiting & cache

VariablePurpose
RATE_LIMIT_REQUESTS_PER_MINUTEGlobal default
RATE_LIMIT_DEFAULT, RATE_LIMIT_WRITE, RATE_LIMIT_EXPENSIVE, RATE_LIMIT_STATUSPer-class limits
CACHE_TTL_SECONDSCache TTL

Observability & notifications

VariablePurpose
LANGFUSE_ENABLED, LANGFUSE_HOST, LANGFUSE_PORT, LANGFUSE_PUBLIC_KEY, LANGFUSE_SECRET_KEYLLM tracing
LANGFUSE_NEXTAUTH_SECRET, LANGFUSE_SALT, LANGFUSE_ENCRYPTION_KEYLangfuse internals
LANGFUSE_CLICKHOUSE_PASSWORD, LANGFUSE_MINIO_ACCESS_KEY, LANGFUSE_MINIO_SECRET_KEYLangfuse backing stores
SENTRY_DSNError reporting
LOG_LEVEL, LOG_FORMATLogging
SLACK_WEBHOOK_URL, SMTP_HOST/PORT/USER/PASSWORD, NOTIFICATION_EMAILAlerting

Misc

VariablePurpose
CORS_ALLOWED_ORIGINSAllowed browser origins (no wildcard)
REPORT_RETENTION_DAYSReport retention window
TRUSTRELAY_REPORTS_TABLE_IDReports table identifier

See Configuration for how these group together and which settings are instead managed per tenant.