Skip to main content

Documentation Index

Fetch the complete documentation index at: https://septemberai.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

bap-engine’s settings are loaded from environment variables prefixed ORCH_* (Pydantic BaseSettings). LLM provider keys (LLM_API_KEY, OPENAI_API_KEY, etc.) aren’t ORCH_-prefixed because they’re forwarded to engine containers; the orchestrator just passes them through.

Required

NameTypePurpose
ORCH_DATABASE_URLstrPostgreSQL connection string. Format: postgresql://user:password@host:port/database.
ORCH_MASTER_KEYstrFernet key (base64 32 bytes) used to encrypt engine API keys at rest. Lose this and every engine key is unrecoverable.
ORCH_ADMIN_KEYstrAdmin key for /products/register and /products/{id}/policy. Use a strong random string.

Engine provider keys (passed through)

The orchestrator forwards these to engine containers — it doesn’t read them itself. Engines need them to talk to LLM providers.
NameRequiredPurpose
LLM_API_KEYyesPrimary LLM provider key. Must match llm_provider in the engine’s engine.yaml.
OPENAI_API_KEYyesOpenAI key. Always required — the engine uses it for embeddings regardless of chat provider.
ANTHROPIC_API_KEYnoAnthropic key. Optional unless LLM_API_KEY is Anthropic.
GEMINI_API_KEYnoGoogle Gemini key. Optional unless Gemini is the LLM provider.
These are forwarded only if listed in ORCH_ENGINE_ENV_PASSTHROUGH.

Orchestrator configuration

NameDefaultPurpose
ORCH_ENGINE_IMAGEseptember-engine:latestDocker image tag for engine containers. Pin a specific version in production.
ORCH_ENGINE_BACKENDdockerdocker (production) or subprocess (dev).
ORCH_ENGINE_ENV_PASSTHROUGH(empty)Comma-separated env var names to forward. Typical: LLM_API_KEY,OPENAI_API_KEY,ANTHROPIC_API_KEY,GEMINI_API_KEY.
ORCH_ENGINE_NETWORKengine_netDocker network the orchestrator and engine containers share.
ORCH_PORT_MIN9001Lower bound of the engine port range.
ORCH_PORT_MAX9999Upper bound.
ORCH_CATALOG_MOUNT_PATH./catalogHost path mounted into engines as /catalog (read-only).
ORCH_DATA_ROOT_PATH./engine-dataHost path under which engine brain volumes live.
ORCH_HOST127.0.0.1Listen address. Use 0.0.0.0 in production behind a reverse proxy.
ORCH_PORT8000Listen port.

Health and recovery

NameDefaultPurpose
ORCH_HEALTH_CHECK_INTERVAL_S30Seconds between health-check sweeps over the running fleet.
ORCH_HEALTH_CHECK_TIMEOUT_S10Per-probe HTTP timeout. Should be < interval.
ORCH_HEALTH_MAX_FAILURES3Consecutive failed probes before marking an engine failed.
ORCH_RESTART_BACKOFF_BASE_S5First retry delay. Doubles each attempt.
ORCH_RESTART_BACKOFF_MAX_S300Cap on backoff (5 minutes).
ORCH_RESTART_MAX_ATTEMPTS8Give up auto-restart after this many failures.
ORCH_BOOT_TIMEOUT_S60Maximum seconds to wait for a new engine’s /health after provisioning.
ORCH_IDLE_SLEEP_THRESHOLD_S3600Seconds since last_health_at before marking an engine sleeping (1 hour).
See Health and auto-restart for tuning by use case.

Build-time only

NamePurpose
GITHUB_TOKENGitHub PAT with read access to septemberai/engine. Required at image build time only — to pip install the engine package from the private repo. Don’t bake into the image; pass as a build-time secret.

Conventions

  • Booleans are not used in orchestrator settings — most knobs are ints or strings. The engine’s "true" / "false" convention applies to engine vars, which the orchestrator forwards as-is.
  • Paths are absolute when crossing the orchestrator-to-Docker boundary; relative paths get resolved against the orchestrator’s working directory.
  • Secrets never go in code or images. Inject from your secret manager at runtime.

Local-dev shortcut

For the local quickstart, this minimal .env works:
ORCH_DATABASE_URL=postgresql://orch_user:orch_local_dev@postgres:5432/orchestrator
ORCH_MASTER_KEY=<fernet key>
ORCH_ADMIN_KEY=dev-admin-key
ORCH_ENGINE_IMAGE=september-engine:2.3.0
ORCH_ENGINE_BACKEND=docker
ORCH_ENGINE_ENV_PASSTHROUGH=LLM_API_KEY,OPENAI_API_KEY,ANTHROPIC_API_KEY,GEMINI_API_KEY
LLM_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GITHUB_TOKEN=ghp_...
See Quickstart for the full walk-through.

See also

  • Architecture — what each var affects.
  • Deploy — production setup.
  • HealthORCH_HEALTH_* and ORCH_RESTART_* tuning.
  • SecurityORCH_MASTER_KEY rotation.