Environment variables

Every env var Proliferate reads.

Environment variables configure the Proliferate server. If you're using Proliferate Cloud, none of this applies to you: use the app settings covered elsewhere in this section instead.

Info:

The desktop app itself takes no environment variables for normal use. It reads one small config file, ~/.proliferate/config.json, to know which server to connect to. See Connect the desktop app.

Use this page when you're running a self-hosted Proliferate server and need to know which variables affect startup, sign-in, the model gateway, or cloud sandboxes. The full reference with every variable, its default, and whether it's required lives at Deployment: Env vars. This page is the map; that page is the dictionary.

Categories

CategoryExamplesCovered in
Core & telemetrySITE_ADDRESS, API_BASE_URL, PROLIFERATE_TELEMETRY_MODEEnv vars: Core
Sign-inPASSWORD_AUTH_ENABLED, GITHUB_OAUTH_CLIENT_ID, PROLIFERATE_SSO_ENABLEDEnv vars: Sign-in
Access controlADMIN_EMAILS, ALLOWED_EMAIL_DOMAINS, SINGLE_ORG_MODEEnv vars: Single-org mode
Secrets, generated on first bootJWT_SECRET, CLOUD_SECRET_KEY, POSTGRES_PASSWORDEnv vars: The required minimum
Cloud sandboxes add-onE2B_API_KEY, GITHUB_APP_ID, RUNTIME_BINARY_URLCloud sandboxes
Agent LLM gateway (LiteLLM)AGENT_GATEWAY_ENABLED, AGENT_GATEWAY_LITELLM_BASE_URL, AGENT_GATEWAY_LITELLM_MASTER_KEYModel gateway
Telemetry opt-outPROLIFERATE_ANONYMOUS_TELEMETRY_DISABLEDTelemetry & privacy

Everything else in the release template (transactional email, cloud MCP connectors, observability) ships at safe defaults and rarely needs to change; see the "Everything else" section of the full reference.

Where configuration actually lives

All of it is one file: .env.static in your deploy bundle. bootstrap.sh reads it, fills in any missing generated secrets, and derives the .env.runtime file the containers load. You always edit .env.static and rerun ./bootstrap.sh or ./update.sh, never .env.runtime directly.

Warning:

The server ignores env vars it doesn't recognize. A typo in .env.static is silently ignored rather than raised as an error, so check the reference page for the exact name before assuming a setting took effect.

On this page