Skip to main content

Required Environment Variables

The Docker stack works only when the required values in docker/.stack.env are set. This page is aligned with the current docker/.stack.env.example in this repo.

How to read this page

  • Each section links to a deeper page for the variable family.
  • docker/.stack.env is separate from the host-native .env used by make dev-all.
  • Keep this file out of Git.

Frontend build /docs/required-environment-variables/frontend-env

VariableStatusNotes
FRONTEND_BUILD_MODERequiredUsually production for the stack build.
VITE_API_URLRequiredBrowser-visible backend URL.
VITE_GOOGLE_CLIENT_IDOptionalBrowser OAuth surface.
VITE_STRIPE_PUBLISHABLE_KEYOptionalNeeded only when billing UI is enabled.
VITE_SENTRY_DSNOptionalBrowser telemetry.
VITE_DISABLE_CHAT_MODEOptionalUI feature flag.

Networking and tunnels /docs/required-environment-variables/networking-tunnels

VariableStatusNotes
NGROK_AUTHTOKENOptional in practiceOnly required if you manually run the ngrok service.
NGROK_REGIONRequired with ngrokRegion code for the tunnel agent.
NGROK_AGENT_EXTRA_ARGSOptionalExtra flags when you need reserved domains or special headers.

Host paths /docs/required-environment-variables/host-paths

VariableStatusNotes
GOOGLE_APPLICATION_CREDENTIALSRequired for GCP-backed stack usageAbsolute path to the mounted service-account JSON.

Models and auth /docs/required-environment-variables/llm-auth

VariableStatusNotes
MODEL_CONFIGSRequiredJSON array describing the models available in the stack.
RESEARCHER_AGENT_CONFIGRequired placeholderSpecialized research roles; can stay minimal until you enable them.
JWT_SECRET_KEYRequiredBackend JWT signing secret.
SESSION_SECRET_KEYRequiredSession middleware secret.
AUTH_SECRET_KEYRequiredShared auth secret for the tool-facing stack surfaces.
ACCESS_TOKEN_EXPIRE_MINUTESRequiredAccess-token TTL.
GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, GOOGLE_REDIRECT_URIOptionalOAuth configuration.

Storage /docs/required-environment-variables/storage

VariableStatusNotes
STORAGE_PROVIDERRequiredgcs in the current stack example.
STORAGE_PROJECT_IDRequired with GCSGCP project that owns the bucket.
STORAGE_BUCKET_NAMERequired with GCSBucket for persisted assets.
STORAGE_CUSTOM_DOMAINOptionalExternal asset domain when applicable.
GOOGLE_CLOUD_PROJECT, GOOGLE_CLOUD_LOCATIONOptional but commonly pairedUseful when storage and model usage share GCP context.

Sandbox provider /docs/required-environment-variables/backend-sandbox

VariableStatusNotes
SANDBOX_PROVIDERRequiredCurrent example uses e2b.
SANDBOX_E2B_API_KEYRequired for E2BProvider auth key.
SANDBOX_E2B_TEMPLATE_IDRequired for E2BTemplate or base image identifier.
SANDBOX_TIME_TIL_CLEAN_UPRequiredIdle timeout in seconds.

Tool server baseline /docs/required-environment-variables/tool-server-baseline

VariableStatusNotes
STORAGE_CONFIG__GCS_BUCKET_NAME, STORAGE_CONFIG__GCS_PROJECT_IDRequired when the standalone tool server writes to GCSii_agent_tools reads these without the TOOL__ prefix.

Core infrastructure /docs/required-environment-variables/core-infra

VariableStatusNotes
POSTGRES_USER, POSTGRES_PASSWORD, POSTGRES_DB, POSTGRES_PORTRequiredLocal Postgres credentials and host mapping.
DATABASE_URLRequiredAsync backend DB URL.
SANDBOX_DB_NAME, SANDBOX_DATABASE_URLRequired in the current stack exampleSeparate DB for sandbox-related services.
REDIS_PORTRequiredHost port for Redis.
TOOL_SERVER_URLRequiredInternal service URL the backend uses inside the stack.
BACKEND_PORT, FRONTEND_PORT, SANDBOX_SERVER_PORT, TOOL_SERVER_PORT, NGROK_METRICS_PORT, MCP_PORTRequiredHost-facing service ports.

Validation checklist

  1. Copy docker/.stack.env.example to docker/.stack.env.
  2. Fill the required values above.
  3. Run make stack-build.
  4. Verify http://localhost:8000/health, http://localhost:1236/health, and http://localhost:8100/health.