WebChat (واجهة WebSocket الخاصة بـ Gateway)
الحالة: تتواصل واجهة الدردشة SwiftUI على macOS/iOS مباشرةً مع WebSocket الخاص بـ Gateway.ما هو
- واجهة دردشة أصلية للبوابة (من دون متصفح مضمّن ومن دون خادم ثابت محلي).
- تستخدم الجلسات نفسها وقواعد التوجيه نفسها مثل القنوات الأخرى.
- توجيه حتمي: تعود الردود دائمًا إلى WebChat.
البدء السريع
- شغّل Gateway.
- افتح واجهة WebChat (تطبيق macOS/iOS) أو علامة تبويب الدردشة في واجهة التحكم.
- تأكّد من تهيئة مصادقة Gateway (مطلوبة افتراضيًا، حتى على loopback).
كيفية العمل (السلوك)
- تتصل الواجهة بـ WebSocket الخاص بـ Gateway وتستخدم
chat.historyوchat.sendوchat.inject. - يقوم
chat.injectبإلحاق ملاحظة من المساعد مباشرةً بسجل المحادثة وبثّها إلى الواجهة (من دون تشغيل وكيل). - يتم دائمًا جلب السجل من Gateway (لا توجد مراقبة لملفات محلية).
- إذا تعذّر الوصول إلى Gateway، يكون WebChat للقراءة فقط.
الاستخدام عن بُعد
- يقوم الوضع البعيد بنفقنة WebSocket الخاص بـ Gateway عبر SSH/Tailscale.
- لا تحتاج إلى تشغيل خادم WebChat منفصل.
مرجع التهيئة (WebChat)
التهيئة الكاملة: Configuration خيارات القناة:- لا توجد كتلة
webchat.*مخصّصة. يستخدم WebChat نقطة نهاية Gateway + إعدادات المصادقة أدناه.
gateway.portوgateway.bind: مضيف/منفذ WebSocket.gateway.auth.modeوgateway.auth.tokenوgateway.auth.password: مصادقة WebSocket.gateway.auth.mode: "trusted-proxy": مصادقة الوكيل العكسي لعملاء المتصفح (انظر Trusted Proxy Auth).gateway.remote.urlوgateway.remote.tokenوgateway.remote.password: هدف Gateway البعيد.session.*: تخزين الجلسات والإعدادات الافتراضية للمفتاح الرئيسي.