المتطلبات الأساسية قبل البدء
قبل أي شيء، تأكد من توفر المتطلبات التالية على جهازك:
• نظام التشغيل: Linux (Ubuntu 22.04+) أو macOS 13+
• ذاكرة GPU: 16GB VRAM كحد أدنى مُوصى به (8GB تعمل مع نماذج 9B)
• ذاكرة RAM: 16GB+
• Node.js: الإصدار 22 أو أحدث
• مساحة القرص: 30GB+ لتخزين النماذج
للتحقق من إصدار Node.js:
node --version # يجب أن يكون v22.0.0 أو أحدث
npm --version
# إذا كان إصدارك قديماً، ثبّت nvm أولاً:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash
source ~/.bashrc
nvm install 22
nvm use 22
الخطوة 1: تثبيت Ollama وتشغيله
Ollama يوفر واجهة API متوافقة مع OpenAI على المنفذ 11434. التثبيت في سطر واحد:
# تثبيت Ollama على Linux/macOS
curl -fsSL https://ollama.com/install.sh | sh
# التحقق من نجاح التثبيت
ollama --version
# تشغيل خادم Ollama في الخلفية
ollama serve &
# تحميل نموذج Qwen3.5 27B (الأفضل للبرمجة، يحتاج ~20GB VRAM)
ollama pull qwen3.5:27b
# بديل خفيف (8GB VRAM)
ollama pull qwen3.5:9b
# نموذج MoE سريع (16GB VRAM، 112 t/s على RTX 3090)
ollama pull qwen3.5:35b-a3b
للتحقق من أن Ollama يعمل ويرد على طلبات API:
# اختبار API مباشرة
curl http://localhost:11434/api/generate -d '{
"model": "qwen3.5:27b",
"prompt": "اكتب دالة Python تحسب مضروب عدد",
"stream": false
}'
# أو عبر واجهة OpenAI المتوافقة
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ollama-local" \
-d '{
"model": "qwen3.5:27b",
"messages": [{"role": "user", "content": "مرحبا"}]
}'
الخطوة 2: تثبيت OpenClaw
OpenClaw يوفر مثبّتاً تلقائياً يتحقق من Node.js ويُعدّ البوابة والواجهة:
# الطريقة الأسهل: التثبيت عبر Ollama مباشرة
ollama launch openclaw
# أو التثبيت اليدوي عبر npm
npm install -g @openclaw/cli
# تحقق من التثبيت
openclaw --version
# بدء معالج الإعداد التفاعلي
openclaw setup
الخطوة 3: ملف الإعداد الكامل openclaw.json
هذا هو الملف الجوهري. يقع في
~/.openclaw/config/openclaw.json
. إليك إعداد كامل مُحسَّن لـ Qwen3.5:
{
"models": {
"providers": {
"ollama": {
"baseUrl": "http://localhost:11434/v1",
"apiKey": "ollama-local",
"api": "openai-completions",
"models": [
{
"id": "qwen3.5:27b",
"name": "Qwen3.5 27B (Local)",
"reasoning": false,
"contextWindow": 131072,
"maxTokens": 8192,
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": false
}
},
{
"id": "qwen3.5:9b",
"name": "Qwen3.5 9B (Fast Local)",
"reasoning": false,
"contextWindow": 65536,
"maxTokens": 4096,
"cost": { "input": 0, "output": 0 }
}
]
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "ollama/qwen3.5:27b",
"background": "ollama/qwen3.5:9b"
},
"workspace": "~/.openclaw/workspace",
"maxConcurrent": 4,
"subagents": {
"maxConcurrent": 8
}
}
},
"tools": {
"web": {
"search": { "enabled": false },
"fetch": { "enabled": true }
},
"shell": {
"enabled": true,
"allowedCommands": ["ls", "cat", "grep", "find", "df", "git"]
}
}
}
⚠️ تحذير مهم: نافذة السياق الافتراضية في OpenClaw صغيرة جداً (حوالي 8K رمز). ملفات تعليمات
.md
الخاصة بـ OpenClaw وحدها تستهلك أكثر من ذلك. يجب ضبط contextWindow على 64K كحد أدنى، ويُفضَّل 131072 (128K) إذا كانت ذاكرة GPU تسمح.
الخطوة 4: ربط Telegram بخطوتين
أولاً أنشئ Bot عبر @BotFather على تيليغرام واحصل على الـ Token، ثم:
# إضافة تكامل Telegram
openclaw integrations add telegram
# أدخل Bot Token عند الطلب
# BOT_TOKEN=7123456789:AAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# بدء البوابة مع Telegram
openclaw gateway start --integration telegram
# اختبار: أرسل رسالة من هاتفك
# "مرحبا، ما هو إصدار Python المثبت؟"
# → سيُنفذ الوكيل: python3 --version على جهازك ويرد عليك
الخطوة 5: تشغيل OpenClaw كـ systemd Service (Linux)
لتشغيل البوابة تلقائياً عند إقلاع النظام:
# إنشاء ملف الخدمة
cат > ~/.config/systemd/user/openclaw-gateway.service << EOF
[Unit]
Description=OpenClaw AI Gateway
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/openclaw gateway start
Restart=on-failure
RestartSec=5
Environment=HOME=%h
[Install]
WantedBy=default.target
EOF
# تفعيل وتشغيل الخدمة
systemctl --user daemon-reload
systemctl --user enable openclaw-gateway
systemctl --user start openclaw-gateway
# التحقق من الحالة
systemctl --user status openclaw-gateway
حل المشاكل الشائعة
🔴 المشكلة: tool calls تفشل باستمرار
الحل: عطّل وضع التفكير (reasoning) في إعدادات النموذج واستخدم نماذج Qwen3.5 فقط لأنها الأكثر توافقاً مع تنسيق أدوات OpenClaw:
// في ملف openclaw.json، تأكد من:
{
"id": "qwen3.5:27b",
"reasoning": false, // ← هذا السطر ضروري
"contextWindow": 131072
}
🔴 المشكلة: Gateway Request Timeout في الطلب الأول
السبب: تسلسل المسارات (Lane serialization) — طلبات متعددة على نفس المسار. الحل:
# إعادة تشغيل البوابة لمسح المسارات المتراكمة
openclaw gateway restart
# أو زيادة timeout في الإعدادات
openclaw configure --gateway-timeout 60000
🔴 المشكلة: نتائج ذاكرة غير ذات صلة (memory_search)
السبب: بيانات قديمة في SQLite index. الحل:
# حذف ملفات الذاكرة القديمة
rm ~/.openclaw/workspace-*/memory/2025-*.md
rm ~/.openclaw/memory/*.sqlite
# SQLite index يُعاد بناؤه تلقائياً من ملفات .md الموجودة
# تحقق من إعادة البناء:
openclaw memory status
مثال عملي: وكيل يراقب مساحة القرص ويُرسل تنبيهاً
بعد إعداد التكامل مع Telegram، أرسل هذا الأمر من هاتفك:
# رسالة تُرسلها عبر Telegram:
# "افحص مساحة القرص، وإذا كانت أي partition أقل من 10% متاح أرسل لي تحذيراً بالتفاصيل"
# ما سينفذه OpenClaw تلقائياً على جهازك:
df -h | awk 'NR>1 {gsub("%","",$5); if(100-$5 < 10) print "⚠️ تحذير: " $6 " متبقي " 100-$5 "%"}'
# والرد الذي ستتلقاه:
# ⚠️ تحذير: /dev/sda1 متبقي 7%
# ⚠️ تحذير: /mnt/data متبقي 4%
تحسين الأداء: llama.cpp مقابل Ollama
Ollama يوفر سهولة الاستخدام، لكن llama.cpp يمنحك تحكماً أدق. إذا وصلت إلى حد أداء Ollama:
# تثبيت llama.cpp
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp && make -j$(nproc) LLAMA_CUDA=1
# تشغيل نموذج Qwen3.5 مع server mode
./llama-server \
--model ~/.ollama/models/qwen3.5-27b-q4_K_M.gguf \
--ctx-size 131072 \
--n-gpu-layers 99 \
--port 8080 \
--host 0.0.0.0
# ثم وجّه OpenClaw إلى llama.cpp بدلاً من Ollama:
# في openclaw.json:
# "baseUrl": "http://localhost:8080/v1"
الفارق العملي: Ollama أسهل للبدء، llama.cpp أسرع بنسبة 15-25% على نفس الأجهزة عند الضبط الجيد.
الخلاصة
بهذا الإعداد لديك وكيل AI كامل يعمل محلياً: يستقبل أوامرك من تيليغرام، ينفذها على جهازك، ويرد عليك — كل ذلك دون أي بيانات تغادر شبكتك المحلية. الخطوات التالية الموصى بها:
1. اضبط allowedCommands في ملف الإعداد لتحديد الأوامر المسموح بها أمنياً
2. أضف مهارات (Skills) إضافية عبر openclaw skills install
3. جرّب نموذج GLM 4.7 Flash إذا كنت تحتاج استدلالاً أقوى مع VRAM محدود