المتغيرات البيئية 🔐
كيفية تكوين OpenClaw باستخدام متغيرات البيئة.
🔑 الأساسيات
- المتغيرات البيئية تُستخدم للأسرار والإعدادات
- يتم تحميلها من
.envfiles - لا تُرسل الأسرار أبداً إلى Git
- استخدم
.env.exampleللقوالب
ترتيب التحميل
يبحث OpenClaw عن متغيرات البيئة بالترتيب التالي:
- متغيرات البيئة للنظام (أعلى أولوية)
~/.openclaw/.env(إعدادات المستخدم العامة).env.local(تجاوزات محلية).env(إعدادات المشروع)openclaw.json(قيم افتراضية)
⚠️ ملحوظة مهمة
المتغيرات المُحددة في طبقة أعلى تُتجاوز الطبقات الأقل. استخدم .env.local للتطوير المحلي فقط.
المتغيرات الشائعة
مفاتيح API المُوفِّرين
# Anthropic (Claude)
ANTHROPIC_API_KEY=sk-ant-...
# OpenAI (GPT)
OPENAI_API_KEY=sk-...
# OpenRouter (موفر موحد)
OPENROUTER_API_KEY=sk-or-v1-...
# Brave Search (للأداة web_search)
BRAVE_SEARCH_API_KEY=BSA...بيانات اعتماد القنوات
# Telegram Bot
TELEGRAM_BOT_TOKEN=123456789:ABC...
# Discord Bot
DISCORD_BOT_TOKEN=MTk4...
# Slack App
SLACK_BOT_TOKEN=xoxb-...
SLACK_SIGNING_SECRET=...
SLACK_APP_TOKEN=xapp-...إعدادات Gateway
# منفذ Gateway
OPENCLAW_PORT=18789
# بيئة التشغيل
NODE_ENV=production # أو development
# مستوى السجل
LOG_LEVEL=info # debug, info, warn, error
# مسار التكوين المخصص
OPENCLAW_CONFIG=~/.openclaw/openclaw.json
# مسار Workspace
OPENCLAW_WORKSPACE=~/.openclaw/workspaceإنشاء ملف .env
1. قالب أساسي
# .env.example (ارتكب هذا إلى Git)
# انسخ إلى .env واملأ القيم
# === AI Model Provider ===
ANTHROPIC_API_KEY=
OPENAI_API_KEY=
# === Message Channels ===
TELEGRAM_BOT_TOKEN=
DISCORD_BOT_TOKEN=
# === Tools ===
BRAVE_SEARCH_API_KEY=
# === Gateway ===
OPENCLAW_PORT=18789
LOG_LEVEL=info2. إنشاء ملف البيئة الخاص بك
# انسخ القالب
cp .env.example .env
# حرّر بالقيم الحقيقية
nano .env
# تحقق من التحميل
openclaw status3. أضف إلى .gitignore
# .gitignore
.env
.env.local
.env.*.local
*.key
credentials/أمان المتغيرات
✅ افعل
- احفظ
.envفي.gitignore - استخدم
.env.exampleللتوثيق - قم بتدوير المفاتيح بانتظام
- استخدم أذونات ملفات محدودة:
chmod 600 .env
❌ لا تفعل
- لا ترتكب
.envإلى Git أبداً - لا تضع أسراراً في الكود المصدري
- لا تشارك ملفات
.envمباشرة - لا تسجل الأسرار في السجلات
مدراء الأسرار
للإنتاج
في بيئات الإنتاج، استخدم مدراء الأسرار:
- Docker Secrets لحاويات Docker
- Kubernetes Secrets لـ K8s
- AWS Secrets Manager
- HashiCorp Vault
- Azure Key Vault
مثال: Docker Secrets
# إنشاء secret
echo "sk-ant-..." | docker secret create anthropic_key -
# استخدم في docker-compose.yml
services:
openclaw:
secrets:
- anthropic_key
environment:
ANTHROPIC_API_KEY_FILE: /run/secrets/anthropic_key
secrets:
anthropic_key:
external: trueالتحقق من المتغيرات
عرض المتغيرات المُحملة
# عرض التكوين (الأسرار مخفية)
openclaw status --all
# التحقق من متغير معين
node -e "console.log(process.env.ANTHROPIC_API_KEY ? 'SET' : 'NOT SET')"اختبار الاتصال بـ API
# اختبار مفتاح Anthropic
openclaw models scan
# اختبار قناة
openclaw channels status telegramمشاكل شائعة
المتغير لا يُحمّل
# تحقق من موقع الملف
ls -la .env
# تحقق من الصلاحيات
ls -l .env # يجب أن يكون readable
# أعد تشغيل Gateway
openclaw gateway restartخطأ في التحليل
# ✅ صحيح
API_KEY=sk-ant-abc123
# ❌ خطأ - لا spaces حول =
API_KEY = sk-ant-abc123
# ✅ مع مسافات في القيمة، استخدم quotes
PROMPT="This is a prompt"
# ✅ متعدد الأسطر
MESSAGE="Line 1
Line 2
Line 3"أفضل الممارسات
- استخدم أسماء وصفية:
ANTHROPIC_API_KEYأفضل منAPI_KEY - قم بتجميع بواسطة الفئة: استخدم تعليقات في
.env - وثّق جميع المتغيرات: في
.env.example - استخدم القيم الافتراضية: في
openclaw.json - قم بتدوير الأسرار: غيّر المفاتيح بانتظام