إعداد Clawdbot على Windows (WSL2)

قم بتشغيل مساعد الذكاء الاصطناعي Clawdbot على Windows باستخدام WSL2. تجربة Linux كاملة مع Ubuntu لبيئة تشغيل متسقة وتوافق الأدوات.

نظرة عامة على Clawdbot في Windows

يُنصح باستخدام Clawdbot على Windows عبر WSL2 (يُنصح بـ Ubuntu). يعمل CLI + البوابة داخل Linux، مما يحافظ على اتساق بيئة التشغيل ويجعل الأدوات أكثر توافقاً.

قد يكون Windows الأصلي أكثر صعوبة. WSL2 يمنحك تجربة Linux الكاملة — أمر واحد للتثبيت: wsl --install.

التطبيقات المرافقة الأصلية لـ Windows مخطط لها.

التثبيت (WSL2)

الخطوة 1: تثبيت WSL2 + Ubuntu

افتح PowerShell (كمسؤول):

wsl --install
# أو اختر توزيعة صراحة:
wsl --list --online
wsl --install -d Ubuntu-24.04

أعد التشغيل إذا طلب Windows ذلك.

الخطوة 2: تفعيل systemd (مطلوب)

في طرفية WSL الخاصة بك:

sudo tee /etc/wsl.conf > /dev/null << 'EOF'
[boot]
systemd=true
EOF

ثم من PowerShell:

wsl --shutdown

أعد فتح Ubuntu، ثم تحقق:

systemctl --user status

الخطوة 3: تثبيت Clawdbot (داخل WSL)

اتبع تدفق البدء في Linux داخل WSL:

# الخيار 1: التثبيت السريع
curl -fsSL https://clawd.bot/install.sh | bash

# الخيار 2: من المصدر
git clone https://github.com/clawdbot/clawdbot.git
cd clawdbot
pnpm install
pnpm ui:build
pnpm build
clawdbot onboard --install-daemon

تثبيت خدمة البوابة (CLI)

داخل WSL2:

# الخيار 1
clawdbot onboard --install-daemon

# الخيار 2
clawdbot gateway install

# الخيار 3
clawdbot configure
# اختر "Gateway service" عند المطالبة

الإصلاح/الترحيل:

clawdbot doctor

كشف خدمات WSL عبر الشبكة المحلية (متقدم)

لدى WSL شبكته الافتراضية الخاصة. إذا احتاج جهاز آخر للوصول إلى خدمة تعمل داخل WSL، يجب عليك إعادة توجيه منفذ Windows إلى عنوان IP الحالي لـ WSL.

ملاحظة: يتغير عنوان IP لـ WSL بعد إعادة التشغيل، لذا قد تحتاج إلى تحديث قاعدة إعادة التوجيه.

مثال (PowerShell كمسؤول)

$Distro = "Ubuntu-24.04"
$ListenPort = 2222
$TargetPort = 22
$WslIp = (wsl -d $Distro -- hostname -I).Trim().Split(" ")[0]

if (-not $WslIp) { throw "WSL IP not found." }

netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=$ListenPort `
    connectaddress=$WslIp connectport=$TargetPort

السماح عبر جدار الحماية (مرة واحدة)

New-NetFirewallRule -DisplayName "WSL SSH $ListenPort" -Direction Inbound `
    -Protocol TCP -LocalPort $ListenPort -Action Allow

التحديث بعد إعادة تشغيل WSL

netsh interface portproxy delete v4tov4 listenport=$ListenPort listenaddress=0.0.0.0 | Out-Null
netsh interface portproxy add v4tov4 listenport=$ListenPort listenaddress=0.0.0.0 `
    connectaddress=$WslIp connectport=$TargetPort | Out-Null

ملاحظات:

  • SSH من جهاز آخر يستهدف عنوان IP لمضيف Windows (مثال: ssh user@windows-host -p 2222)
  • استخدم listenaddress=0.0.0.0 للوصول عبر الشبكة المحلية؛ 127.0.0.1 يبقيه محلياً فقط
  • للتحديث التلقائي، سجّل مهمة مجدولة للتشغيل عند تسجيل الدخول

تكوين البوابة

راجع الأدلة الرئيسية:

فحوصات الصحة

clawdbot status
clawdbot health
clawdbot doctor

تطبيق Windows المرافق

ليس لدينا تطبيق مرافق لـ Windows حتى الآن. المساهمات مرحب بها.

الخطوات التالية