Skip to main content

पर्यावरण चर

OpenClaw pulls environment variables from multiple sources. The rule is never override existing values.

प्राथमिकता (उच्चतम → न्यूनतम)

  1. प्रोसेस पर्यावरण (जो Gateway प्रक्रिया को उसके पैरेंट शेल/डेमन से पहले से मिला है)।
  2. वर्तमान कार्यशील निर्देशिका में .env (dotenv डिफ़ॉल्ट; ओवरराइड नहीं करता)।
  3. ~/.openclaw/.env पर वैश्विक .env (उर्फ़ $OPENCLAW_STATE_DIR/.env; ओवरराइड नहीं करता)।
  4. ~/.openclaw/openclaw.json में Config env ब्लॉक (केवल तब लागू होता है जब मान अनुपस्थित हों)।
  5. वैकल्पिक लॉगिन-शेल इम्पोर्ट (env.shellEnv.enabled या OPENCLAW_LOAD_SHELL_ENV=1), केवल अपेक्षित कुंजियों के गायब होने पर लागू।
यदि config फ़ाइल पूरी तरह से अनुपस्थित है, तो चरण 4 छोड़ा जाता है; सक्षम होने पर शेल इम्पोर्ट फिर भी चलता है।

Config env ब्लॉक

इनलाइन env vars सेट करने के दो समकक्ष तरीके (दोनों नॉन-ओवरराइडिंग हैं):

शेल env इम्पोर्ट

env.shellEnv आपका लॉगिन शेल चलाता है और केवल गायब अपेक्षित कुंजियों को इम्पोर्ट करता है:
Env var समतुल्य:
  • OPENCLAW_LOAD_SHELL_ENV=1
  • OPENCLAW_SHELL_ENV_TIMEOUT_MS=15000

Config में env var प्रतिस्थापन

आप ${VAR_NAME} सिंटैक्स का उपयोग करके config स्ट्रिंग मानों में सीधे env vars को संदर्भित कर सकते हैं:
पूर्ण विवरण के लिए Configuration: Env var substitution देखें।

Path-संबंधित env vars

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. Precedence: OPENCLAW_HOME > $HOME > USERPROFILE > os.homedir() उदाहरण (macOS LaunchDaemon):
OPENCLAW_HOME को tilde path (उदाहरण: ~/svc) पर भी सेट किया जा सकता है, जिसे उपयोग से पहले $HOME का उपयोग करके expand किया जाता है।

संबंधित