دليل تشغيل Gateway
استخدم هذه الصفحة لبدء التشغيل في اليوم الأول وعمليات التشغيل في اليوم الثاني لخدمة Gateway.استكشاف الأخطاء المتعمق
تشخيص يبدأ من الأعراض مع سلاسل أوامر دقيقة وتواقيع السجلات.
الإعدادات
دليل إعداد موجّه للمهام + مرجع إعدادات كامل.
إدارة الأسرار
عقد SecretRef وسلوك اللقطة في وقت التشغيل وعمليات الترحيل/إعادة التحميل.
عقد خطة الأسرار
قواعد
secrets apply الدقيقة للهدف/المسار وسلوك ملفات تعريف المصادقة المعتمدة على المراجع فقط.بدء تشغيل محلي خلال 5 دقائق
تراقب إعادة تحميل إعدادات Gateway مسار ملف الإعدادات النشط (المُحدَّد من افتراضيات الملف الشخصي/الحالة، أو
OPENCLAW_CONFIG_PATH عند ضبطه).
الوضع الافتراضي هو gateway.reload.mode="hybrid".
بعد أول تحميل ناجح، تقدّم العملية الجارية اللقطة النشطة من الإعدادات الموجودة في الذاكرة؛ وتؤدي إعادة التحميل الناجحة إلى تبديل تلك اللقطة بشكل ذري.نموذج وقت التشغيل
- عملية واحدة تعمل دائمًا للتوجيه ومستوى التحكم واتصالات القنوات.
- منفذ واحد متعدد الإرسال من أجل:
- WebSocket للتحكم/RPC
- واجهات HTTP API متوافقة مع OpenAI (
/v1/modelsو/v1/embeddingsو/v1/chat/completionsو/v1/responsesو/tools/invoke) - Control UI وhooks
- وضع الربط الافتراضي:
loopback. - المصادقة مطلوبة افتراضيًا. تستخدم إعدادات السر المشترك
gateway.auth.token/gateway.auth.password(أوOPENCLAW_GATEWAY_TOKEN/OPENCLAW_GATEWAY_PASSWORD)، ويمكن لإعدادات الوكيل العكسي غير المعتمدة على loopback استخدامgateway.auth.mode: "trusted-proxy".
نقاط النهاية المتوافقة مع OpenAI
أصبحت واجهة التوافق الأعلى أثرًا في OpenClaw الآن هي:GET /v1/modelsGET /v1/models/{id}POST /v1/embeddingsPOST /v1/chat/completionsPOST /v1/responses
- تتحقق معظم تكاملات Open WebUI وLobeChat وLibreChat من
/v1/modelsأولًا. - تتوقع العديد من مسارات RAG والذاكرة وجود
/v1/embeddings. - تفضّل العملاء الأصليون للوكلاء بشكل متزايد
/v1/responses.
/v1/modelsموجّه للوكلاء أولًا: فهو يعيدopenclawوopenclaw/defaultوopenclaw/<agentId>.openclaw/defaultهو الاسم المستعار الثابت الذي يطابق دائمًا الوكيل الافتراضي المكوّن.- استخدم
x-openclaw-modelعندما تريد تجاوز مزوّد/نموذج الخلفية؛ وإلا يظل إعداد النموذج والتضمين العادي للوكيل المحدد هو المتحكم.
أسبقية المنفذ والربط
| الإعداد | ترتيب التحديد |
|---|---|
| منفذ Gateway | --port → OPENCLAW_GATEWAY_PORT → gateway.port → 18789 |
| وضع الربط | CLI/override → gateway.bind → loopback |
أوضاع إعادة التحميل السريع
gateway.reload.mode | السلوك |
|---|---|
off | لا توجد إعادة تحميل للإعدادات |
hot | تطبيق التغييرات الآمنة للتحديث السريع فقط |
restart | إعادة التشغيل عند التغييرات التي تتطلب إعادة تحميل |
hybrid (الافتراضي) | تطبيق سريع عندما يكون آمنًا، وإعادة تشغيل عند الحاجة |
مجموعة أوامر المشغّل
gateway status --deep مخصص لاكتشاف الخدمات الإضافية (وحدات LaunchDaemons/systemd system
وschtasks)، وليس لفحص سلامة RPC أعمق.
عدة Gateways (على المضيف نفسه)
يجب أن تشغّل معظم عمليات التثبيت Gateway واحدًا لكل جهاز. يمكن لـ Gateway واحد استضافة عدة وكلاء وقنوات. تحتاج إلى عدة Gateways فقط عندما تريد العزل عمدًا أو روبوت إنقاذ. فحوصات مفيدة:- يمكن أن يبلّغ
gateway status --deepعنOther gateway-like services detected (best effort)ويعرض تلميحات تنظيف عندما تظل تثبيتات launchd/systemd/schtasks القديمة موجودة. - يمكن أن يحذّر
gateway probeمنmultiple reachable gatewaysعندما يستجيب أكثر من هدف واحد. - إذا كان ذلك مقصودًا، فاعزل المنافذ والإعدادات/الحالة وجذور مساحة العمل لكل Gateway.
الوصول عن بُعد
المفضل: Tailscale/VPN. البديل: نفق SSH.ws://127.0.0.1:18789.
راجع: Gateway البعيد والمصادقة وTailscale.
الإشراف ودورة حياة الخدمة
استخدم عمليات التشغيل الخاضعة للإشراف من أجل موثوقية شبيهة بالإنتاج.- macOS (launchd)
- Linux (systemd user)
- Windows (native)
- Linux (system service)
ai.openclaw.gateway (الافتراضي) أو ai.openclaw.<profile> (ملف شخصي مسمّى). يقوم openclaw doctor بتدقيق انجراف إعدادات الخدمة وإصلاحه.عدة Gateways على مضيف واحد
يجب أن تشغّل معظم الإعدادات Gateway واحدًا. استخدم عدة Gateways فقط للعزل/الاستمرارية الصارمة (على سبيل المثال ملف إنقاذ). قائمة التحقق لكل نسخة:gateway.portفريدOPENCLAW_CONFIG_PATHفريدOPENCLAW_STATE_DIRفريدagents.defaults.workspaceفريد
المسار السريع لملف التطوير
19001.
مرجع سريع للبروتوكول (منظور المشغّل)
- يجب أن يكون أول إطار من العميل هو
connect. - يعيد Gateway لقطة
hello-ok(presenceوhealthوstateVersionوuptimeMsوالحدود/السياسة). hello-ok.features.methods/eventsهما قائمة اكتشاف متحفظة، وليسا تفريغًا مولدًا لكل مسار مساعد قابل للاستدعاء.- الطلبات:
req(method, params)→res(ok/payload|error). - تشمل الأحداث الشائعة
connect.challengeوagentوchatوsession.messageوsession.toolوsessions.changedوpresenceوtickوhealthوheartbeatوأحداث دورة حياة الاقتران/الموافقة وshutdown.
- إقرار قبول فوري (
status:"accepted") - استجابة إكمال نهائية (
status:"ok"|"error")، مع أحداثagentمتدفقة بينهما.
الفحوصات التشغيلية
الحيوية
- افتح WS وأرسل
connect. - توقّع استجابة
hello-okمع لقطة.
الجاهزية
استعادة الفجوات
لا تُعاد الأحداث. عند وجود فجوات في التسلسل، حدّث الحالة (health وsystem-presence) قبل المتابعة.
تواقيع الأعطال الشائعة
| التوقيع | المشكلة المحتملة |
|---|---|
refusing to bind gateway ... without auth | ربط غير loopback من دون مسار مصادقة صالح لـ Gateway |
another gateway instance is already listening / EADDRINUSE | تعارض منفذ |
Gateway start blocked: set gateway.mode=local | الإعداد مضبوط على الوضع البعيد، أو ختم الوضع المحلي مفقود من إعداد تالف |
unauthorized during connect | عدم تطابق المصادقة بين العميل وGateway |
ضمانات السلامة
- تفشل عملاء بروتوكول Gateway بسرعة عندما لا يكون Gateway متاحًا (من دون رجوع احتياطي ضمني إلى القناة المباشرة).
- تُرفض الإطارات الأولى غير الصالحة/غير
connectويُغلق الاتصال. - يرسل الإغلاق السلس الحدث
shutdownقبل إغلاق المقبس.
ذو صلة: