Muhit o‘zgaruvchilari¶
OpenClaw muhit o‘zgaruvchilarini bir nechta manbalardan oladi. Qoidasi: mavjud qiymatlarni hech qachon almashtirmaslik.
Ustuvorlik (eng yuqori → eng past)¶
- Jarayon muhiti (Gateway jarayoni ota shell/daemon’dan allaqachon olganlari).
- Joriy ishchi katalogdagi
.env(dotenv standarti; ustiga yozmaydi). - Global
.env~/.openclaw/.envda (ya’ni$OPENCLAW_STATE_DIR/.env; ustiga yozmaydi). - Config
envbloki~/.openclaw/openclaw.jsonichida (faqat yetishmasa qo‘llanadi). - Ixtiyoriy login-shell importi (
env.shellEnv.enabledyokiOPENCLAW_LOAD_SHELL_ENV=1), faqat kutilgan kalitlar yetishmaganda qo‘llanadi.
Agar config fayli umuman mavjud bo‘lmasa, 4-qadam o‘tkazib yuboriladi; shell importi yoqilgan bo‘lsa baribir ishlaydi.
Config env bloki¶
Inline env o‘zgaruvchilarni o‘rnatishning ikki ekvivalent usuli (ikkalasi ham ustiga yozmaydi):
{
env: {
OPENROUTER_API_KEY: "sk-or-...",
vars: {
GROQ_API_KEY: "gsk-...",
},
},
}
Shell env importi¶
env.shellEnv login shell’ingizni ishga tushiradi va faqat yetishmayotgan kutilgan kalitlarni import qiladi:
{
env: {
shellEnv: {
enabled: true,
timeoutMs: 15000,
},
},
}
Env var ekvivalentlari:
OPENCLAW_LOAD_SHELL_ENV=1OPENCLAW_SHELL_ENV_TIMEOUT_MS=15000
Config ichida env varlarni almashtirish¶
Config string qiymatlarida env varlarni ${VAR_NAME} sintaksisi orqali to‘g‘ridan-to‘g‘ri murojaat qilishingiz mumkin:
{
models: {
providers: {
"vercel-gateway": {
apiKey: "${VERCEL_GATEWAY_API_KEY}",
},
},
},
}
Batafsil ma’lumotlar uchun Configuration: Env var substitution ga qarang.
Yo‘lga oid muhit o‘zgaruvchilari¶
| O‘zgaruvchi | Maqsad |
|---|---|
OPENCLAW_HOME |
Barcha ichki yo‘l aniqlashlari uchun ishlatiladigan uy katalogini almashtiradi (~/.openclaw/, agent kataloglari, sessiyalar, hisob ma’lumotlari). OpenClaw’ni maxsus xizmat foydalanuvchisi sifatida ishga tushirganda foydali. |
OPENCLAW_STATE_DIR |
Holat katalogini almashtiradi (standart ~/.openclaw). |
OPENCLAW_CONFIG_PATH |
Konfiguratsiya fayli yo‘lini almashtiradi (standart ~/.openclaw/openclaw.json). |
OPENCLAW_HOME¶
O‘rnatilganda, OPENCLAW_HOME barcha ichki yo‘l aniqlashlari uchun tizim uy katalogini ($HOME / os.homedir()) almashtiradi. Bu headless xizmat akkauntlari uchun to‘liq fayl tizimi izolyatsiyasini ta’minlaydi.
Ustuvorlik: OPENCLAW_HOME > $HOME > USERPROFILE > os.homedir()
Misol (macOS LaunchDaemon):
<key>EnvironmentVariables</key>
<dict>
<key>OPENCLAW_HOME</key>
<string>/Users/kira</string>
</dict>
OPENCLAW_HOME ni tilda yo‘li sifatida ham o‘rnatish mumkin (masalan ~/svc), u ishlatishdan oldin $HOME yordamida kengaytiriladi.