Service URLs for internal and external communication.
Variable
Default
Description
FRONTEND_URL
http://localhost:3000
Public frontend URL
BACKEND_URL
http://aurora-server:5080
Internal backend URL (container-to-container)
NEXT_PUBLIC_BACKEND_URL
http://localhost:5080
Public backend URL (browser access)
NEXT_PUBLIC_WEBSOCKET_URL
ws://localhost:5006
Public WebSocket URL
CHATBOT_INTERNAL_URL
http://chatbot:5007
Internal chatbot URL
FRONTEND_URL=http://localhost:3000
BACKEND_URL=http://aurora-server:5080
NEXT_PUBLIC_BACKEND_URL=http://localhost:5080
NEXT_PUBLIC_WEBSOCKET_URL=ws://localhost:5006
CHATBOT_INTERNAL_URL=http://chatbot:5007
Remote / VM Deployment
When deploying on a remote server or VM, set the NEXT_PUBLIC_* and FRONTEND_URL variables to the machine's IP or hostname:
FRONTEND_URL=http://YOUR_IP:3000
NEXT_PUBLIC_BACKEND_URL=http://YOUR_IP:5080
NEXT_PUBLIC_WEBSOCKET_URL=ws://YOUR_IP:5006
These values are injected at container startup (not baked at build time), so you do not need to rebuild images after changing them. Just recreate the frontend container:
docker compose -f docker-compose.prod-local.yml up -d frontend
All requests go through OpenRouter. One key gives access to models from Anthropic, OpenAI, Google, and others.
OPENROUTER_API_KEY
direct
Requests go directly to each provider's API based on the model prefix (e.g. anthropic/... → Anthropic API). No OpenRouter account needed, but you need a separate API key for each provider you use.
Provider-specific key(s)
auto
Same behaviour as direct.
Provider-specific key(s)
provider name
Set to a provider such as bedrock, vertex, anthropic, openai, google, or ollama to route every model selection through that provider (clean model picks are translated to its native id). Models the provider can't serve fall back to their own native provider.
That provider's config
openrouter is recommended for most deployments — a single key, broadest model selection, and no need to manage multiple provider accounts.
One bedrock provider with two modes, auto-selected: set BEDROCK_BASE_URL for gateway mode (OpenAI-compatible endpoint in front of Bedrock), or leave it unset for native mode (AWS SDK). BEDROCK_* variables take precedence over the standard AWS_* ones.
For native mode, set LLM_PROVIDER_MODE=bedrock to route clean model picks (e.g. anthropic/claude-sonnet-4.6) through Bedrock automatically — translated to the matching inference-profile id, region-aware. For gateway mode (or to pin specific ids), use LLM_PROVIDER_MODE=direct and point MAIN_MODEL (etc.) at an explicit bedrock/<id> model.
Variable
Default
Description
BEDROCK_BASE_URL
-
Gateway mode: OpenAI-compatible base URL (e.g. .../v1). When set, Aurora uses gateway mode.
BEDROCK_API_KEY
not-needed
Gateway mode only. Optional — many VPC gateways need no key.
BEDROCK_REGION
-
Native mode AWS region. Falls back to AWS_REGION / AWS_DEFAULT_REGION.
BEDROCK_ACCESS_KEY_ID
(AWS_ACCESS_KEY_ID)
Native mode access key. Omit to use an IAM role / default credential chain.
BEDROCK_SECRET_ACCESS_KEY
(AWS_SECRET_ACCESS_KEY)
Native mode secret key.
BEDROCK_SESSION_TOKEN
(AWS_SESSION_TOKEN)
Native mode session token, used alongside BEDROCK_ACCESS_KEY_ID / BEDROCK_SECRET_ACCESS_KEY for temporary / STS credentials. Omit for long-lived keys, a profile, or an IAM role.
BEDROCK_PROFILE
-
Native mode named AWS profile (alternative to explicit keys).
# Gateway mode (OpenAI-compatible endpoint, e.g. a Bedrock Access Gateway in your VPC)
Model for background RCA (format: provider/model). Overrides RCA_OPTIMIZE_COSTS when set. Default RCA path when ORCHESTRATOR_ENABLED=false.
RCA_OPTIMIZE_COSTS
true
Only used when RCA_MODEL is not set. true = anthropic/claude-haiku-4.5, false = anthropic/claude-opus-4.6
ORCHESTRATOR_ENABLED
false
Multi-agent RCA orchestrator (opt-in). When true, a lead orchestrator triages each background RCA and may fan out parallel read-only sub-agents; RCA_MODEL is ignored. When false (default), RCA uses the single-agent path with RCA_MODEL.
RCA_ORCHESTRATOR_MODEL
-
Only when ORCHESTRATOR_ENABLED=true. Brain model for triage + synthesis. Format: provider/model.
RCA_SUBAGENT_MODEL
-
Only when ORCHESTRATOR_ENABLED=true. Sub-agent investigator model. Per-role overrides in orchestrator/roles/*.md frontmatter take precedence. Format: provider/model.
Internal Aurora API URL (shared with other services)
The MCP server authenticates clients via Bearer tokens stored in the mcp_tokens database table. No additional environment variable is needed for token configuration -- see the MCP integration guide for details.
All three files read GUNICORN_WORKERS, GUNICORN_THREADS, CELERY_CONCURRENCY, DB_POOL_MIN, and DB_POOL_MAX from the .env file. Set them there to tune concurrency across all environments.
Keep Docker Compose Files in Sync
When adding new environment variables, update all three Docker Compose files to ensure consistency.