Gateway
بوابات Gateway متعددة
تحتاج معظم عمليات الإعداد إلى Gateway واحدة؛ إذ تتولى Gateway واحدة معالجة عدة اتصالات مراسلة ووكلاء. شغّل Gateways منفصلة بملفات تعريف/منافذ معزولة فقط عندما تحتاج إلى عزل أقوى أو تكرار احتياطي (مثل روبوت إنقاذ).
البدء السريع لروبوت الإنقاذ
أبسط إعداد لروبوت الإنقاذ:
- أبقِ الروبوت الرئيسي على ملف التعريف الافتراضي.
- شغّل روبوت الإنقاذ باستخدام
--profile rescue، مع رمز بوت Telegram خاص به. - ضع روبوت الإنقاذ على منفذ أساسي مختلف، مثل
19789.
يُبقي هذا روبوت الإنقاذ قادرًا على تصحيح الأخطاء أو تطبيق تغييرات الإعدادات إذا كان الروبوت الأساسي متوقفًا. اترك 20 منفذًا على الأقل بين المنافذ الأساسية حتى لا تتعارض منافذ المتصفح/CDP المشتقة مطلقًا.
# روبوت الإنقاذ (بوت Telegram منفصل، ملف تعريف منفصل، المنفذ 19789)openclaw --profile rescue onboardopenclaw --profile rescue gateway install --port 19789إذا كان روبوتك الرئيسي قيد التشغيل بالفعل، فهذا عادةً كل ما تحتاج إليه. إذا كانت عملية الإعداد الأولي قد ثبّتت خدمة الإنقاذ بالفعل، فتخطَّ أمر gateway install الأخير.
أثناء تشغيل openclaw --profile rescue onboard:
- استخدم رمز بوت Telegram منفصلًا ومخصصًا لحساب الإنقاذ (يسهل إبقاؤه مقتصرًا على المشغّل، ومستقلًا عن تثبيت قناة/تطبيق الروبوت الرئيسي، كما يوفر مسار استرداد بسيطًا قائمًا على الرسائل الخاصة).
- احتفظ باسم ملف التعريف
rescue. - استخدم منفذًا أساسيًا أعلى من منفذ الروبوت الرئيسي بما لا يقل عن 20.
- اقبل مساحة عمل الإنقاذ الافتراضية ما لم تكن تدير واحدة بنفسك بالفعل.
ما الذي يغيّره --profile rescue onboard
يشغّل --profile rescue onboard مسار الإعداد الأولي المعتاد، لكنه يكتب كل شيء في ملف تعريف منفصل، وبذلك يحصل روبوت الإنقاذ على ما يخصه من:
- ملف التعريف/الإعدادات
- دليل الحالة
- مساحة العمل (الافتراضي:
~/.openclaw/workspace-rescue) - اسم الخدمة المُدارة
- المنفذ الأساسي (بالإضافة إلى المنافذ المشتقة)
- رمز بوت Telegram
فيما عدا ذلك، تكون المطالبات مطابقة لمطالبات الإعداد الأولي المعتاد.
الإعداد العام لعدة Gateways
يعمل نمط العزل نفسه مع أي زوج أو مجموعة من Gateways على مضيف واحد؛ امنح كل Gateway إضافية ملف تعريف مسمى ومنفذًا أساسيًا خاصين بها:
# الرئيسية (ملف التعريف الافتراضي)openclaw setupopenclaw gateway --port 18789 # Gateway إضافيةopenclaw --profile ops setupopenclaw --profile ops gateway --port 19789يعمل استخدام ملفات تعريف مسماة على الجانبين أيضًا:
openclaw --profile main setupopenclaw --profile main gateway --port 18789 openclaw --profile ops setupopenclaw --profile ops gateway --port 19789تتبع الخدمات النمط نفسه:
openclaw gateway installopenclaw --profile ops gateway install --port 19789استخدم البدء السريع لروبوت الإنقاذ لإنشاء مسار احتياطي للمشغّل؛ واستخدم نمط ملفات التعريف العام لتشغيل عدة Gateways طويلة العمر عبر قنوات أو مستأجرين أو مساحات عمل أو أدوار تشغيلية مختلفة.
قائمة تحقق العزل
اجعل هذه الإعدادات فريدة لكل مثيل Gateway:
| الإعداد | الغرض |
|---|---|
OPENCLAW_CONFIG_PATH |
ملف إعدادات خاص بكل مثيل |
OPENCLAW_STATE_DIR |
جلسات وبيانات اعتماد وذاكرات مؤقتة لكل مثيل |
agents.defaults.workspace |
جذر مساحة عمل خاص بكل مثيل |
gateway.port (أو --port) |
فريد لكل مثيل |
| منافذ المتصفح/CDP المشتقة | انظر أدناه |
تؤدي مشاركة أي من هذه الإعدادات إلى حالات تسابق في الإعدادات وتعارضات في المنافذ.
تعيين المنافذ (المشتقة)
المنفذ الأساسي = gateway.port (أو OPENCLAW_GATEWAY_PORT / --port).
- منفذ خدمة التحكم في المتصفح = المنفذ الأساسي + 2 (local loopback فقط).
- يُقدَّم مضيف Canvas على خادم HTTP الخاص بـ Gateway نفسه (المنفذ نفسه المستخدم في
gateway.port). - تُخصَّص منافذ CDP لملفات تعريف المتصفح تلقائيًا بدءًا من
browser control port + 9وحتى+ 108.
إذا تجاوزت أيًا من هذه القيم في الإعدادات أو متغيرات البيئة، فيجب إبقاؤها فريدة لكل مثيل.
ملاحظات المتصفح/CDP (مأزق شائع)
- لا تثبّت
browser.cdpUrlعلى القيمة نفسها في عدة مثيلات. - يحتاج كل مثيل إلى منفذ تحكم في المتصفح ونطاق CDP خاصين به (مشتقين من منفذ Gateway الخاص به).
- لتحديد منافذ CDP صراحةً، اضبط
browser.profiles.<name>.cdpPortلكل مثيل. - لاستخدام Chrome بعيد، استخدم
browser.profiles.<name>.cdpUrl(لكل ملف تعريف ولكل مثيل).
مثال يدوي باستخدام متغيرات البيئة
OPENCLAW_CONFIG_PATH=~/.openclaw/main.json \OPENCLAW_STATE_DIR=~/.openclaw \openclaw gateway --port 18789 OPENCLAW_CONFIG_PATH=~/.openclaw/rescue.json \OPENCLAW_STATE_DIR=~/.openclaw-rescue \openclaw gateway --port 19789عمليات تحقق سريعة
openclaw gateway status --deepopenclaw --profile rescue gateway status --deepopenclaw --profile rescue gateway probeopenclaw statusopenclaw --profile rescue statusopenclaw --profile rescue browser status- يكتشف
gateway status --deepخدمات launchd/systemd/schtasks القديمة المتبقية من عمليات تثبيت سابقة. - لا يكون نص تحذير
gateway probe، مثلmultiple reachable gateway identities detected، متوقعًا إلا عندما تشغّل عمدًا أكثر من Gateway معزولة، أو عندما يتعذر على OpenClaw إثبات أن أهداف الفحص التي يمكن الوصول إليها هي Gateway نفسها. يُعد نفق SSH أو عنوان URL لوكيل أو عنوان URL بعيد مُعدّ للوصول إلى Gateway نفسها Gateway واحدة ذات وسائل نقل متعددة، حتى عندما تختلف منافذ النقل.