تطبيق Clawdbot لنظام macOS
يوفر تطبيق Clawdbot المرافق لـ macOS تكاملاً مع شريط القوائم وإدارة الأذونات وإمكانيات macOS الأصلية لمساعد الذكاء الاصطناعي الخاص بك.
نظرة عامة على مرافق Clawdbot لـ macOS
تطبيق Clawdbot لـ macOS هو المرافق في شريط القوائم لـ Clawdbot. يمتلك الأذونات، ويدير/يتصل بالبوابة محلياً (launchd أو يدوياً)، ويكشف إمكانيات macOS للوكيل كعقدة.
ما يقوم به
- يعرض الإشعارات الأصلية والحالة في شريط القوائم
- يمتلك طلبات TCC (الإشعارات، إمكانية الوصول، تسجيل الشاشة، الميكروفون، التعرف على الكلام، الأتمتة/AppleScript)
- يشغّل أو يتصل بالبوابة (محلياً أو عن بُعد)
- يكشف أدوات macOS الحصرية (Canvas، الكاميرا، تسجيل الشاشة، system.run)
- يدير خدمة مضيف العقدة المحلية
- يثبّت CLI العام (
clawdbot) عبر npm/pnpm عند الطلب
الوضع المحلي مقابل البعيد
| الوضع | الوصف |
|---|---|
| محلي (افتراضي) | التطبيق يتصل بالبوابة المحلية العاملة؛ يُفعّل خدمة launchd إذا لزم الأمر |
| بعيد | التطبيق يتصل بالبوابة عبر SSH/Tailscale؛ يبدأ خدمة مضيف العقدة المحلية |
التطبيق لا يُنشئ البوابة كعملية فرعية.
التحكم في Launchd
يدير التطبيق LaunchAgent لكل مستخدم بعلامة bot.molt.gateway (أو bot.molt.<profile> عند استخدام --profile).
# إعادة تشغيل البوابة
launchctl kickstart -k gui/$UID/bot.molt.gateway
# إيقاف البوابة
launchctl bootout gui/$UID/bot.molt.gatewayإذا لم يكن LaunchAgent مثبتاً، فعّله من التطبيق أو نفّذ:
clawdbot gateway installإمكانيات العقدة (macOS)
يقدم تطبيق macOS نفسه كعقدة بهذه الإمكانيات:
| الفئة | الأوامر |
|---|---|
| Canvas | canvas.present، canvas.navigate، canvas.eval، canvas.snapshot |
| الكاميرا | camera.snap، camera.clip |
| الشاشة | screen.record |
| النظام | system.run، system.notify |
تُبلغ العقدة عن خريطة الأذونات حتى يتمكن الوكلاء من تحديد ما هو مسموح به.
موافقات التنفيذ (system.run)
يتم التحكم في system.run بواسطة موافقات التنفيذ في تطبيق macOS (الإعدادات ← موافقات التنفيذ).
التكوين مخزن في:
~/.clawdbot/exec-approvals.jsonمثال على التكوين:
{
"version": 1,
"defaults": {
"security": "deny",
"ask": "on-miss"
},
"agents": {
"main": {
"security": "allowlist",
"ask": "on-miss",
"allowlist": [{"pattern": "/opt/homebrew/bin/rg"}]
}
}
}ملاحظات:
- إدخالات قائمة السماح هي أنماط glob لمسارات الملفات التنفيذية المحللة
- اختيار "السماح دائماً" في الطلب يضيف هذا الأمر إلى قائمة السماح
الروابط العميقة
يسجل التطبيق مخطط URL clawdbot:// للإجراءات المحلية.
clawdbot://agent
يُطلق طلب وكيل البوابة:
open 'clawdbot://agent?message=Hello%20from%20deep%20link'معلمات الاستعلام:
| المعلمة | الوصف |
|---|---|
message | مطلوب - الرسالة المراد إرسالها |
sessionKey | اختياري - معرف الجلسة |
thinking | اختياري - تفعيل وضع التفكير |
deliver / to / channel | اختياري - هدف التسليم |
timeoutSeconds | اختياري - مهلة الطلب |
key | اختياري - مفتاح الوضع غير المراقب |
الأمان: بدون key، يطلب التطبيق التأكيد.
تدفق الإعداد الأولي
- ثبّت وشغّل Clawdbot.app
- أكمل قائمة التحقق من الأذونات (طلبات TCC)
- تأكد من أن الوضع المحلي نشط والبوابة تعمل
- ثبّت CLI إذا كنت تريد الوصول من الطرفية
سير عمل البناء والتطوير
cd apps/macos && swift build
swift run Clawdbot # أو استخدم Xcode
# حزم التطبيق
scripts/package-mac-app.shتصحيح اتصال البوابة
استخدم CLI التصحيح لاختبار مصافحة WebSocket للبوابة:
cd apps/macos
swift run clawdbot-mac connect --json
swift run clawdbot-mac discover --timeout 3000 --jsonخيارات الاتصال:
| الخيار | الوصف |
|---|---|
--url <ws://host:port> | تجاوز التكوين |
--mode <local|remote> | الحل من التكوين |
--probe | فرض فحص صحة جديد |
--timeout <ms> | مهلة الطلب (الافتراضي: 15000) |
--json | إخراج منظم |
الاتصال عن بُعد (أنفاق SSH)
للوصول عن بُعد للبوابة:
# نفق التحكم (منفذ WebSocket للبوابة)
ssh -N -L 18789:127.0.0.1:18789 user@hostالخطوات التالية
- Clawdbot Linux - إعداد Linux
- Clawdbot Windows - إعداد Windows WSL2
- Clawdbot Gateway - تكوين البوابة
إعداد Clawdbot على Linux
قم بتشغيل مساعد الذكاء الاصطناعي Clawdbot على خوادم Linux مع دعم كامل للبوابة وإدارة خدمة systemd والنشر على VPS.
إعداد Clawdbot على Windows (WSL2)
قم بتشغيل مساعد الذكاء الاصطناعي Clawdbot على Windows باستخدام WSL2. تجربة Linux كاملة مع Ubuntu لبيئة تشغيل متسقة وتوافق الأدوات.