الانتقال إلى المحتوى الرئيسي

متغيرات البيئة

يقوم OpenClaw بسحب متغيرات البيئة من مصادر متعددة. القاعدة هي عدم تجاوز القيم الموجودة مطلقًا.

الأسبقية (من الأعلى → الأدنى)

  1. بيئة العملية (ما يملكه بالفعل مُعالج Gateway من الغلاف/الخدمة الأصلية).
  2. .env في دليل العمل الحالي (إعداد dotenv الافتراضي؛ لا يتجاوز).
  3. .env عالمي في ~/.openclaw/.env (المعروف أيضًا باسم $OPENCLAW_STATE_DIR/.env؛ لا يتجاوز).
  4. كتلة env في التهيئة ضمن ~/.openclaw/openclaw.json (تُطبَّق فقط إذا كانت القيم مفقودة).
  5. استيراد اختياري من غلاف تسجيل الدخول (env.shellEnv.enabled أو OPENCLAW_LOAD_SHELL_ENV=1)، ويُطبَّق فقط للمفاتيح المتوقعة المفقودة.
إذا كان ملف التهيئة مفقودًا بالكامل، يتم تخطي الخطوة 4؛ ولا يزال استيراد الغلاف يعمل إذا كان مُمكّنًا.

كتلة التهيئة env

طريقتان معادلتان لتعيين vars env داخل الخط (كلاهما غير متجاوزتين):
{
  env: {
    OPENROUTER_API_KEY: "sk-or-...",
    vars: {
      GROQ_API_KEY: "gsk-...",
    },
  },
}

استيراد قذيفة

يشغّل env.shellEnv غلاف تسجيل الدخول لديك ويستورد فقط المفاتيح المتوقعة المفقودة:
{
  env: {
    shellEnv: {
      enabled: true,
      timeoutMs: 15000,
    },
  },
}
مكافئات Env :
  • OPENCLAW_LOAD_SHELL_ENV=1
  • OPENCLAW_SHELL_ENV_TIMEOUT_MS=15000

استبدال Env var في التهيئة

يمكنك الإشارة إلى متغيرات البيئة مباشرةً داخل قيم السلاسل النصية في التهيئة باستخدام صيغة ${VAR_NAME}:
{
  models: {
    providers: {
      "vercel-gateway": {
        apiKey: "${VERCEL_GATEWAY_API_KEY}",
      },
    },
  },
}
راجع التهيئة: استبدال متغيرات البيئة للحصول على التفاصيل الكاملة.

OPENCLAW_HOME

المتغيرالغرض
OPENCLAW_HOMEتجاوز الدليل الرئيسي المستخدم لجميع عمليات حل المسارات الداخلية (~/.openclaw/، أدلة الوكلاء، الجلسات، بيانات الاعتماد). مفيد عند تشغيل OpenClaw كمستخدم خدمة مخصص.
OPENCLAW_STATE_DIRتجاوز دليل الحالة (الافتراضي ~/.openclaw).
OPENCLAW_CONFIG_PATHتجاوز مسار ملف الإعدادات (الافتراضي ~/.openclaw/openclaw.json).

OPENCLAW_HOME

عند تعيينه، يستبدل OPENCLAW_HOME دليل المنزل الخاص بالنظام ($HOME / os.homedir()) لجميع عمليات حل المسارات الداخلية. يتيح ذلك عزلاً كاملاً لنظام الملفات لحسابات الخدمات بدون واجهة (headless). الأولوية: OPENCLAW_HOME > $HOME > USERPROFILE > os.homedir() مثال (macOS LaunchDaemon):
7. <key>EnvironmentVariables</key>
<dict>
  <key>OPENCLAW_HOME</key>
  <string>/Users/kira</string>
</dict>
يمكن أيضاً تعيين OPENCLAW_HOME إلى مسار يبدأ بالـ tilde (مثل ~/svc)، حيث يتم توسيعه باستخدام $HOME قبل الاستخدام.

ذات صلة