Environment variables
Mayros कई स्रोतों से environment variables pull करता है। नियम मौजूदा मानों को कभी override न करें है।
Precedence (उच्चतम → निम्नतम)
- Process environment (जो Gateway process को पहले से parent shell/daemon से है)।
.envcurrent working directory में (dotenv डिफ़ॉल्ट; override नहीं करता)।- Global
.env~/.mayros/.envपर (उर्फ$MAYROS_STATE_DIR/.env; override नहीं करता)। - Config
envblock~/.mayros/mayros.jsonमें (केवल missing होने पर applied)। - वैकल्पिक login-shell import (
env.shellEnv.enabledयाMAYROS_LOAD_SHELL_ENV=1), केवल missing expected keys के लिए applied।
यदि कॉन्फ़िगरेशन file पूरी तरह से missing है, तो step 4 skip है; shell import अभी भी enabled होने पर चलता है।
Config env block
Inline env vars सेट करने के दो equivalent तरीके (दोनों non-overriding हैं):
json5{ env: { OPENROUTER_API_KEY: "sk-or-...", vars: { GROQ_API_KEY: "gsk-...", }, }, }
Shell env import
env.shellEnv आपका login shell चलाता है और केवल missing expected keys को import करता है:
json5{ env: { shellEnv: { enabled: true, timeoutMs: 15000, }, }, }
Env var equivalents:
MAYROS_LOAD_SHELL_ENV=1MAYROS_SHELL_ENV_TIMEOUT_MS=15000
Config में Env var substitution
आप ${VAR_NAME} syntax का उपयोग करके कॉन्फ़िगरेशन string values में सीधे env vars का संदर्भ दे सकते हैं:
json5{ models: { providers: { "vercel-gateway": { apiKey: "${VERCEL_GATEWAY_API_KEY}", }, }, }, }
पूर्ण विवरण के लिए Configuration: Env var substitution देखें।
Path-संबंधित env vars
| Variable | उद्देश्य |
|---|---|
MAYROS_HOME | सभी आंतरिक path resolution (~/.mayros/, agent dirs, sessions, credentials) के लिए उपयोग की गई home directory को override करें। Mayros को समर्पित service user के रूप में चलाते समय उपयोगी। |
MAYROS_STATE_DIR | State directory को override करें (डिफ़ॉल्ट ~/.mayros)। |
MAYROS_CONFIG_PATH | Config file path को override करें (डिफ़ॉल्ट ~/.mayros/mayros.json)। |
MAYROS_HOME
जब सेट हो, तो MAYROS_HOME सभी आंतरिक path resolution के लिए system home directory ($HOME / os.homedir()) को replace करता है। यह headless service accounts के लिए पूर्ण filesystem isolation को सक्षम करता है।
Precedence: MAYROS_HOME > $HOME > USERPROFILE > os.homedir()
उदाहरण (macOS LaunchDaemon):
xml<key>EnvironmentVariables</key> <dict> <key>MAYROS_HOME</key> <string>/Users/kira</string> </dict>
MAYROS_HOME को tilde path (जैसे ~/svc) पर भी सेट किया जा सकता है, जो उपयोग से पहले $HOME का उपयोग करके expanded होता है।