WebChat (تطبيق macOS)
يقوم تطبيق شريط القوائم في macOS بتضمين واجهة WebChat كعرض SwiftUI أصلي. وهو يتصل بالبوابة ويستخدم افتراضيًا الجلسة الرئيسية للوكيل المحدد (مع مبدّل جلسات للجلسات الأخرى).- الوضع المحلي: يتصل مباشرة بـ Gateway WebSocket المحلي.
- الوضع البعيد: يعيد توجيه منفذ التحكم في البوابة عبر SSH ويستخدم ذلك النفق كمستوى بيانات.
التشغيل والتصحيح
- يدويًا: قائمة Lobster ← “Open Chat”.
-
الفتح التلقائي للاختبار:
-
السجلات:
./scripts/clawlog.sh(subsystem ai.openclaw، والفئةWebChatSwiftUI).
كيفية التوصيل
- مستوى البيانات: أساليب Gateway WS وهي
chat.historyوchat.sendوchat.abortوchat.injectوالأحداثchatوagentوpresenceوtickوhealth. - يعيد
chat.historyصفوف نصوص مطبّعة للعرض: تتم إزالة علامات التوجيه المضمّنة من النص المرئي، كما تتم إزالة حمولات XML النصية العادية الخاصة باستدعاءات الأدوات (بما في ذلك<tool_call>...</tool_call>، و<function_call>...</function_call>، و<tool_calls>...</tool_calls>، و<function_calls>...</function_calls>، وكتل استدعاء الأدوات المقتطعة)، كما تتم إزالة رموز التحكم الخاصة بالنموذج المسربة بصيغة ASCII/العرض الكامل، ويتم حذف صفوف المساعد التي تحتوي فقط على رموز صامتة مثل المطابقة الدقيقة لـNO_REPLY/no_reply، ويمكن استبدال الصفوف كبيرة الحجم بعناصر نائبة. - الجلسة: تستخدم افتراضيًا الجلسة الأساسية (
main، أوglobalعندما يكون النطاق عامًا). ويمكن لواجهة المستخدم التبديل بين الجلسات. - يستخدم الإعداد الأولي جلسة مخصصة لإبقاء إعداد التشغيل الأول منفصلًا.
سطح الأمان
- يعيد الوضع البعيد توجيه منفذ التحكم WebSocket الخاص بالبوابة فقط عبر SSH.
القيود المعروفة
- تم تحسين واجهة المستخدم لجلسات الدردشة (وليست صندوق حماية متصفح كاملًا).