Miljövariabler
OpenClaw drar miljövariabler från flera källor. Regeln är aldrig åsidosätta befintliga värden.Prioritet (högst → lägst)
- Processmiljö (det som Gateway-processen (nätverksgateway) redan har från överordnat skal/daemon).
.envi aktuell arbetskatalog (dotenv-standard; skriver inte över).- Global
.envpå~/.openclaw/.env(även kallad$OPENCLAW_STATE_DIR/.env; skriver inte över). - Konfig
env-block i~/.openclaw/openclaw.json(tillämpas endast om saknas). - Valfri import från inloggningsskal (
env.shellEnv.enabledellerOPENCLAW_LOAD_SHELL_ENV=1), tillämpas endast för saknade förväntade nycklar.
Konfig env-block
Två likvärdiga sätt att sätta inbäddade miljövariabler (båda skriver inte över):
Skalimport av miljövariabler
env.shellEnv kör ditt inloggningsskal och importerar endast saknade förväntade nycklar:
OPENCLAW_LOAD_SHELL_ENV=1OPENCLAW_SHELL_ENV_TIMEOUT_MS=15000
Ersättning av miljövariabler i konfig
Du kan referera till miljövariabler direkt i konfigens strängvärden med syntaxen${VAR_NAME}:
Miljövariabler relaterade till sökvägar
| Variabel | Syfte |
|---|---|
OPENCLAW_HOME | Override the home directory used for all internal path resolution (~/.openclaw/, agent dirs, sessions, credentials). Useful when running OpenClaw as a dedicated service user. |
OPENCLAW_STATE_DIR | Åsidosätt tillståndskatalogen (standard ~/.openclaw). |
OPENCLAW_CONFIG_PATH | Åsidosätt sökvägen till konfigurationsfilen (standard ~/.openclaw/openclaw.json). |
OPENCLAW_HOME
When set, OPENCLAW_HOME replaces the system home directory ($HOME / os.homedir()) for all internal path resolution. This enables full filesystem isolation for headless service accounts.
Prioritet: OPENCLAW_HOME > $HOME > USERPROFILE > os.homedir()
Exempel (macOS LaunchDaemon):
OPENCLAW_HOME can also be set to a tilde path (e.g. ~/svc), which gets expanded using $HOME before use.