Web interfaces
لوحة المعلومات
لوحة معلومات Gateway هي واجهة التحكم في المتصفح التي تُقدَّم على / افتراضيًا
(يمكن تجاوزها باستخدام gateway.controlUi.basePath).
فتح سريع (Gateway محلي):
- http://127.0.0.1:18789/ (أو http://localhost:18789/)
- مع
gateway.tls.enabled: true، استخدمhttps://127.0.0.1:18789/وwss://127.0.0.1:18789لنقطة نهاية WebSocket.
مراجع أساسية:
- واجهة التحكم للاستخدام وإمكانات واجهة المستخدم.
- Tailscale لأتمتة Serve/Funnel.
- أسطح الويب لأوضاع الربط وملاحظات الأمان.
يُفرض التوثيق عند مصافحة WebSocket عبر مسار توثيق Gateway المكوَّن:
connect.params.auth.tokenconnect.params.auth.password- ترويسات هوية Tailscale Serve عندما يكون
gateway.auth.allowTailscale: true - ترويسات هوية الوكيل الموثوق عندما يكون
gateway.auth.mode: "trusted-proxy"
راجع gateway.auth في إعدادات Gateway.
ملاحظة أمان: واجهة التحكم هي سطح إداري (الدردشة، الإعدادات، موافقات التنفيذ). لا تعرضها للعامة. تحتفظ واجهة المستخدم برموز URL الخاصة بلوحة المعلومات في sessionStorage لجلسة تبويب المتصفح الحالية وURL المحدد لـ Gateway، وتزيلها من URL بعد التحميل. فضّل localhost أو Tailscale Serve أو نفق SSH.
المسار السريع (موصى به)
- بعد الإعداد الأولي، يفتح CLI لوحة المعلومات تلقائيًا ويطبع رابطًا نظيفًا (من دون رمز).
- أعد الفتح في أي وقت:
openclaw dashboard(ينسخ الرابط، ويفتح المتصفح إن أمكن، ويعرض تلميح SSH إذا كانت البيئة بلا واجهة). - إذا فشل التسليم عبر الحافظة والمتصفح، يظل
openclaw dashboardيطبع URL النظيف ويخبرك باستخدام الرمز منOPENCLAW_GATEWAY_TOKENأوgateway.auth.tokenكمفتاح جزء URL باسمtoken؛ ولا يطبع قيم الرموز في السجلات. - إذا طلبت واجهة المستخدم توثيق السر المشترك، الصق الرمز أو كلمة المرور المكوَّنة في إعدادات واجهة التحكم.
أساسيات التوثيق (محليًا مقابل عن بُعد)
- Localhost: افتح
http://127.0.0.1:18789/. - TLS لـ Gateway: عندما يكون
gateway.tls.enabled: true، تستخدم روابط لوحة المعلومات/الحالةhttps://وتستخدم روابط WebSocket في واجهة التحكمwss://. - مصدر رمز السر المشترك:
gateway.auth.token(أوOPENCLAW_GATEWAY_TOKEN)؛ يمكن لـopenclaw dashboardتمريره عبر جزء URL للتهيئة الأولية لمرة واحدة، وتحتفظ به واجهة التحكم في sessionStorage لجلسة تبويب المتصفح الحالية وURL المحدد لـ Gateway بدلًا من localStorage. - إذا كان
gateway.auth.tokenمُدارًا بواسطة SecretRef، فإنopenclaw dashboardيطبع/ينسخ/يفتح URL غير مرمَّز حسب التصميم. يتجنب هذا كشف الرموز المُدارة خارجيًا في سجلات shell أو سجل الحافظة أو وسيطات تشغيل المتصفح. - إذا كان
gateway.auth.tokenمكوَّنًا كـ SecretRef ولم يُحل في shell الحالي لديك، يظلopenclaw dashboardيطبع URL غير مرمَّزًا مع إرشادات قابلة للتنفيذ لإعداد التوثيق. - كلمة مرور السر المشترك: استخدم
gateway.auth.passwordالمكوَّنة (أوOPENCLAW_GATEWAY_PASSWORD). لا تحتفظ لوحة المعلومات بكلمات المرور عبر عمليات إعادة التحميل. - الأوضاع الحاملة للهوية: يمكن لـ Tailscale Serve تلبية توثيق واجهة التحكم/WebSocket
عبر ترويسات الهوية عندما يكون
gateway.auth.allowTailscale: true، ويمكن لوكيل عكسي مدرك للهوية وغير loopback تلبيةgateway.auth.mode: "trusted-proxy". في تلك الأوضاع لا تحتاج لوحة المعلومات إلى لصق سر مشترك لـ WebSocket. - ليس localhost: استخدم Tailscale Serve، أو ربطًا غير loopback بسر مشترك، أو
وكيلًا عكسيًا مدركًا للهوية وغير loopback مع
gateway.auth.mode: "trusted-proxy"، أو نفق SSH. تظل واجهات HTTP API تستخدم توثيق السر المشترك ما لم تشغّل عمدًاgateway.auth.mode: "none"للدخول الخاص أو توثيق HTTP عبر الوكيل الموثوق. راجع أسطح الويب.
إذا رأيت "unauthorized" / 1008
- تأكد من إمكانية الوصول إلى Gateway (محليًا:
openclaw status؛ عن بُعد: نفق SSHssh -N -L 18789:127.0.0.1:18789 user@hostثم افتحhttp://127.0.0.1:18789/). - بالنسبة إلى
AUTH_TOKEN_MISMATCH، يمكن للعملاء إجراء إعادة محاولة موثوقة واحدة باستخدام رمز جهاز مخزّن مؤقتًا عندما يعيد Gateway تلميحات إعادة المحاولة. تعيد إعادة المحاولة بالرمز المخزّن مؤقتًا استخدام نطاقات الرمز المعتمدة المخزّنة مؤقتًا؛ أما المستدعون الذين يحددونdeviceTokenصراحةً /scopesصراحةً فيحتفظون بمجموعة النطاقات المطلوبة لديهم. إذا ظل التوثيق يفشل بعد تلك الإعادة، فأصلح انجراف الرمز يدويًا. - خارج مسار إعادة المحاولة ذلك، تكون أولوية توثيق الاتصال هي الرمز/كلمة المرور المشتركة الصريحة أولًا، ثم
deviceTokenالصريح، ثم رمز الجهاز المخزّن، ثم رمز التهيئة الأولية. - في مسار واجهة تحكم Tailscale Serve غير المتزامن، تُسلسل المحاولات الفاشلة لنفس
{scope, ip}قبل أن يسجلها محدِّد محاولات التوثيق الفاشلة، لذلك يمكن أن تعرض إعادة المحاولة السيئة المتزامنة الثانيةretry laterبالفعل. - لخطوات إصلاح انجراف الرمز، اتبع قائمة التحقق من استرداد انجراف الرمز.
- استرجع السر المشترك أو زوّده من مضيف Gateway:
- الرمز:
openclaw config get gateway.auth.token - كلمة المرور: حلّ
gateway.auth.passwordالمكوَّنة أوOPENCLAW_GATEWAY_PASSWORD - رمز مُدار بواسطة SecretRef: حلّ مزود السر الخارجي أو صدّر
OPENCLAW_GATEWAY_TOKENفي هذا shell، ثم أعد تشغيلopenclaw dashboard - لا يوجد سر مشترك مكوَّن:
openclaw doctor --generate-gateway-token
- الرمز:
- في إعدادات لوحة المعلومات، الصق الرمز أو كلمة المرور في حقل التوثيق، ثم اتصل.
- منتقي لغة واجهة المستخدم موجود في نظرة عامة -> وصول Gateway -> اللغة. إنه جزء من بطاقة الوصول، وليس قسم المظهر.