CLI commands
Gateway
Gateway هو خادم WebSocket الخاص بـ OpenClaw (القنوات، العقد، الجلسات، الخطافات). تعيش الأوامر الفرعية في هذه الصفحة تحت openclaw gateway ….
إعداد mDNS محلي + DNS-SD واسع النطاق.
كيف يعلن OpenClaw عن البوابات ويعثر عليها.
مفاتيح تكوين Gateway على المستوى الأعلى.
تشغيل Gateway
شغّل عملية Gateway محلية:
openclaw gatewayالاسم المستعار للتشغيل في المقدمة:
openclaw gateway runسلوك بدء التشغيل
- افتراضيًا، ترفض Gateway البدء ما لم يتم تعيين
gateway.mode=localفي~/.openclaw/openclaw.json. استخدم--allow-unconfiguredللتشغيلات المؤقتة/التطويرية. - من المتوقع أن يكتب
openclaw onboard --mode localوopenclaw setupالقيمةgateway.mode=local. إذا كان الملف موجودًا لكنgateway.modeمفقود، فتعامل مع ذلك كتكوين معطوب أو مستبدل وأصلحه بدلًا من افتراض الوضع المحلي ضمنيًا. - إذا كان الملف موجودًا و
gateway.modeمفقودًا، تتعامل Gateway مع ذلك كضرر مشبوه في التكوين وترفض "تخمين المحلي" نيابةً عنك. - يُحظر الربط خارج loopback دون مصادقة (حاجز أمان).
- يطلق
SIGUSR1إعادة تشغيل داخل العملية عندما يكون ذلك مصرحًا به (commands.restartمفعّل افتراضيًا؛ عيّنcommands.restart: falseلحظر إعادة التشغيل اليدوية، مع بقاء تطبيق/تحديث أداة Gateway/التكوين مسموحًا). - توقف معالجات
SIGINT/SIGTERMعملية gateway، لكنها لا تستعيد أي حالة طرفية مخصصة. إذا لففت CLI باستخدام TUI أو إدخال raw-mode، فاستعد الطرفية قبل الخروج.
الخيارات
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA
" type="number">
منفذ WebSocket (تأتي القيمة الافتراضية من التكوين/البيئة؛ عادةً 18789).
"--bind"--authOPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdG9rZW4gPHRva2Vu
" type="string">
تجاوز الرمز المميز (يضبط أيضًا OPENCLAW_GATEWAY_TOKEN للعملية).
"--password"--tailscale--tailscale-reset-on-exitbooleanإعادة ضبط تكوين serve/funnel في Tailscale عند إيقاف التشغيل.
--allow-unconfiguredbooleanالسماح ببدء gateway دون gateway.mode=local في التكوين. يتجاوز حاجز بدء التشغيل للتمهيد المؤقت/التطويري فقط؛ ولا يكتب ملف التكوين أو يصلحه.
--devbooleanإنشاء تكوين تطوير + مساحة عمل إذا كانت مفقودة (يتخطى BOOTSTRAP.md).
--resetbooleanإعادة ضبط تكوين التطوير + بيانات الاعتماد + الجلسات + مساحة العمل (يتطلب --dev).
--forcebooleanإنهاء أي مستمع موجود على المنفذ المحدد قبل البدء.
--verbosebooleanسجلات تفصيلية.
--cli-backend-logsbooleanعرض سجلات خلفية CLI فقط في وحدة التحكم (وتفعيل stdout/stderr).
"--ws-log--compactbooleanاسم مستعار لـ --ws-log compact.
--raw-streambooleanتسجيل أحداث دفق النموذج الخام إلى jsonl.
إعادة تشغيل Gateway
openclaw gateway restartopenclaw gateway restart --safeopenclaw gateway restart --safe --skip-deferralopenclaw gateway restart --forceيطلب openclaw gateway restart --safe من Gateway العاملة إجراء فحص تمهيدي لأعمال OpenClaw النشطة قبل إعادة التشغيل. إذا كانت هناك عمليات في الطابور، أو تسليم ردود، أو تشغيلات مضمّنة، أو تشغيلات مهام نشطة، فتبلغ Gateway عن العوائق، وتدمج طلبات إعادة التشغيل الآمنة المكررة، وتعيد التشغيل عندما ينضب العمل النشط. يحافظ restart العادي على سلوك مدير الخدمة الحالي للتوافق. استخدم --force فقط عندما تريد صراحةً مسار التجاوز الفوري.
ينفذ openclaw gateway restart --safe --skip-deferral إعادة التشغيل المنسقة نفسها والواعية بـ OpenClaw مثل --safe، لكنه يتجاوز بوابة تأجيل العمل النشط بحيث تصدر Gateway إعادة التشغيل فورًا حتى عند الإبلاغ عن عوائق. استخدمه كمخرج طوارئ للمشغّل عندما يكون التأجيل مثبتًا بسبب تشغيل مهمة عالق وكان --safe وحده سينتظر إلى أجل غير مسمى. يتطلب --skip-deferral الخيار --safe.
توصيف بدء التشغيل
- اضبط
OPENCLAW_GATEWAY_STARTUP_TRACE=1لتسجيل توقيتات المراحل أثناء بدء Gateway، بما في ذلك تأخيرeventLoopMaxلكل مرحلة وتوقيتات جداول بحث Plugin للفهرس المثبت، وسجل manifest، وتخطيط بدء التشغيل، وعمل خريطة المالكين. - اضبط
OPENCLAW_DIAGNOSTICS=timelineمعOPENCLAW_DIAGNOSTICS_TIMELINE_PATH=<path>لكتابة مخطط زمني لتشخيصات بدء التشغيل بصيغة JSONL وبأفضل جهد لحزم QA الخارجية. يمكنك أيضًا تفعيل العلم باستخدامdiagnostics.flags: ["timeline"]في التكوين؛ يظل المسار مقدمًا من البيئة. أضفOPENCLAW_DIAGNOSTICS_EVENT_LOOP=1لتضمين عينات حلقة الأحداث. - شغّل
pnpm test:startup:gateway -- --runs 5 --warmup 1لقياس أداء بدء Gateway. يسجل المعيار أول خرج للعملية، و/healthz، و/readyz، وتوقيتات تتبع بدء التشغيل، وتأخير حلقة الأحداث، وتفاصيل توقيت جدول بحث Plugin.
الاستعلام عن Gateway عاملة
تستخدم جميع أوامر الاستعلام WebSocket RPC.
أوضاع الإخراج
- الافتراضي: قابل للقراءة البشرية (ملون في TTY).
--json: JSON قابل للقراءة آليًا (دون تنسيق/مؤشر تحميل).--no-color(أوNO_COLOR=1): تعطيل ANSI مع الحفاظ على التخطيط البشري.
الخيارات المشتركة
--url <url>: عنوان URL لـ WebSocket الخاص بـ Gateway.--token <token>: رمز Gateway المميز.--password <password>: كلمة مرور Gateway.--timeout <ms>: المهلة/الميزانية (تختلف حسب الأمر).--expect-final: انتظار استجابة "final" (استدعاءات الوكيل).
gateway health
openclaw gateway health --url ws://127.0.0.1:18789نقطة نهاية HTTP /healthz هي فحص حيوية: تعود بمجرد أن يتمكن الخادم من الرد عبر HTTP. نقطة نهاية HTTP /readyz أكثر صرامة وتبقى حمراء بينما لا تزال ملحقات Plugin الجانبية عند بدء التشغيل أو القنوات أو الخطافات المكوّنة تستقر. تتضمن استجابات الجاهزية التفصيلية المحلية أو المصادق عليها كتلة تشخيص eventLoop مع تأخير حلقة الأحداث، واستخدام حلقة الأحداث، ونسبة أنوية CPU، وعلم degraded.
gateway usage-cost
جلب ملخصات تكلفة الاستخدام من سجلات الجلسات.
openclaw gateway usage-costopenclaw gateway usage-cost --days 7openclaw gateway usage-cost --json"--daysgateway stability
جلب مسجل الاستقرار التشخيصي الحديث من Gateway عاملة.
openclaw gateway stabilityopenclaw gateway stability --type payload.largeopenclaw gateway stability --bundle latestopenclaw gateway stability --bundle latest --exportopenclaw gateway stability --jsonOPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tbGltaXQgPGxpbWl0
" type="number" default="25">
الحد الأقصى لعدد الأحداث الحديثة المراد تضمينها (الحد الأقصى 1000).
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdHlwZSA8dHlwZQ
" type="string">
التصفية حسب نوع حدث التشخيص، مثل payload.large أو diagnostic.memory.pressure.
"--since-seq--bundle [path]stringقراءة حزمة استقرار مستمرة بدلًا من استدعاء Gateway العاملة. استخدم --bundle latest (أو فقط --bundle) لأحدث حزمة ضمن دليل الحالة، أو مرّر مسار JSON لحزمة مباشرةً.
--exportbooleanكتابة ملف zip لتشخيصات دعم قابل للمشاركة بدلًا من طباعة تفاصيل الاستقرار.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tb3V0cHV0IDxwYXRo
" type="string">
مسار الإخراج لـ --export.
الخصوصية وسلوك الحزم
- تحتفظ السجلات بالبيانات الوصفية التشغيلية: أسماء الأحداث، والعدادات، وأحجام البايت، وقراءات الذاكرة، وحالة الطابور/الجلسة، وأسماء القنوات/Plugin، وملخصات الجلسات المنقحة. ولا تحتفظ بنص الدردشة، أو أجسام Webhook، أو مخرجات الأدوات، أو أجسام الطلبات أو الاستجابات الخام، أو الرموز المميزة، أو ملفات تعريف الارتباط، أو القيم السرية، أو أسماء المضيفين، أو معرّفات الجلسات الخام. عيّن
diagnostics.enabled: falseلتعطيل المسجل بالكامل. - عند مخارج Gateway الفادحة، ومهل إيقاف التشغيل، وفشل بدء التشغيل بعد إعادة التشغيل، يكتب OpenClaw اللقطة التشخيصية نفسها إلى
~/.openclaw/logs/stability/openclaw-stability-*.jsonعندما يحتوي المسجل على أحداث. افحص أحدث حزمة باستخدامopenclaw gateway stability --bundle latest؛ وتنطبق أيضًا--limitو--typeو--since-seqعلى إخراج الحزمة.
gateway diagnostics export
اكتب ملف zip محليًا للتشخيصات مصممًا لإرفاقه بتقارير الأخطاء. لنموذج الخصوصية ومحتويات الحزمة، راجع تصدير التشخيصات.
openclaw gateway diagnostics exportopenclaw gateway diagnostics export --output openclaw-diagnostics.zipopenclaw gateway diagnostics export --json"--log-lines"--log-bytes"--url"--token"--password"--timeout--no-stability-bundlebooleanتخطي البحث عن حزمة الاستقرار المستمرة.
--jsonbooleanطباعة المسار المكتوب، والحجم، والبيان بصيغة JSON.
يحتوي التصدير على بيان، وملخص Markdown، وشكل التكوين، وتفاصيل تكوين منقحة، وملخصات سجلات منقحة، ولقطات حالة/صحة Gateway منقحة، وأحدث حزمة استقرار عند وجودها.
وهو مخصص للمشاركة. يحتفظ بتفاصيل تشغيلية تساعد في تصحيح الأخطاء، مثل حقول سجل OpenClaw الآمنة، وأسماء الأنظمة الفرعية، ورموز الحالة، والمدد، والأوضاع المكوّنة، والمنافذ، ومعرّفات Plugin، ومعرّفات المزوّدين، وإعدادات الميزات غير السرية، ورسائل السجل التشغيلية المنقحة. ويحذف أو ينقح نص الدردشة، وأجسام Webhook، ومخرجات الأدوات، وبيانات الاعتماد، وملفات تعريف الارتباط، ومعرّفات الحساب/الرسالة، ونص المطالبة/التعليمات، وأسماء المضيفين، والقيم السرية. عندما تبدو رسالة بنمط LogTape مثل نص حمولة مستخدم/دردشة/أداة، يحتفظ التصدير فقط بأن رسالة حُذفت بالإضافة إلى عدد بايتاتها.
gateway status
يعرض gateway status خدمة Gateway (launchd/systemd/schtasks) بالإضافة إلى فحص اختياري لإمكانية الاتصال/المصادقة.
openclaw gateway statusopenclaw gateway status --jsonopenclaw gateway status --require-rpc"--url"--token"--password"--timeout--no-probebooleanتخطَّ فحص الاتصال (عرض الخدمة فقط).
--deepbooleanافحص الخدمات على مستوى النظام أيضا.
--require-rpcbooleanرقِّ فحص الاتصال الافتراضي إلى فحص قراءة واخرج برمز غير صفري عند فشل فحص القراءة هذا. لا يمكن دمجه مع --no-probe.
دلالات الحالة
- يظل
gateway statusمتاحا للتشخيص حتى عندما يكون إعداد CLI المحلي مفقودا أو غير صالح. - يثبت
gateway statusالافتراضي حالة الخدمة، واتصال WebSocket، وإمكانية المصادقة المرئية وقت المصافحة. ولا يثبت عمليات القراءة/الكتابة/الإدارة. - فحوصات التشخيص لا تغيّر حالة مصادقة الجهاز لأول مرة: فهي تعيد استخدام رمز جهاز مخزّن مؤقتا موجودا عندما يتوفر، لكنها لا تنشئ هوية جهاز CLI جديدة أو سجل إقران جهاز للقراءة فقط لمجرد التحقق من الحالة.
- يحل
gateway statusمراجع SecretRefs للمصادقة المكوّنة لمصادقة الفحص عندما يكون ذلك ممكنا. - إذا لم يتم حل SecretRef مطلوب للمصادقة في مسار الأمر هذا، فإن
gateway status --jsonيبلّغ عنrpc.authWarningعندما يفشل اتصال/مصادقة الفحص؛ مرّر--token/--passwordصراحة أو حل مصدر السر أولا. - إذا نجح الفحص، تُكبت تحذيرات مراجع المصادقة غير المحلولة لتجنب النتائج الإيجابية الكاذبة.
- استخدم
--require-rpcفي السكربتات والأتمتة عندما لا تكفي خدمة تستمع وتحتاج أيضا إلى أن تكون استدعاءات RPC ذات نطاق القراءة سليمة. - يضيف
--deepفحصا بأفضل جهد لتثبيتات launchd/systemd/schtasks الإضافية. عند اكتشاف عدة خدمات شبيهة بالـ Gateway، تطبع المخرجات البشرية تلميحات تنظيف وتحذر من أن معظم الإعدادات ينبغي أن تشغّل Gateway واحدا لكل جهاز. - يبلّغ
--deepأيضا عن تسليم إعادة تشغيل حديث لمشرف Gateway عندما تخرج عملية الخدمة بنظافة لإعادة تشغيل من مشرف خارجي. - يشغّل
--deepالتحقق من الإعداد في وضع واعٍ بالـ Plugin (pluginValidation: "full") ويعرض تحذيرات بيان الـ Plugin المكوّنة (على سبيل المثال بيانات تعريف إعداد قناة مفقودة) كي تلتقطها فحوصات سلامة التثبيت والتحديث. يحافظgateway statusالافتراضي على مسار القراءة فقط السريع الذي يتخطى التحقق من الـ Plugin. - تتضمن المخرجات البشرية مسار سجل الملف المحلول إضافة إلى لقطة لمسارات/صلاحية إعداد CLI مقابل الخدمة للمساعدة في تشخيص انجراف الملف الشخصي أو دليل الحالة.
فحوصات انحراف مصادقة systemd على Linux
- في تثبيتات systemd على Linux، تقرأ فحوصات انحراف مصادقة الخدمة قيم
Environment=وEnvironmentFile=من الوحدة (بما في ذلك%h، والمسارات المقتبسة، والملفات المتعددة، وملفات-الاختيارية). - تحل فحوصات الانحراف SecretRefs الخاصة بـ
gateway.auth.tokenباستخدام بيئة التشغيل المدمجة (بيئة أمر الخدمة أولا، ثم بيئة العملية كبديل). - إذا لم تكن مصادقة الرمز فعالة فعليا (وجود
gateway.auth.modeصريح بقيمةpassword/none/trusted-proxy، أو عدم ضبط الوضع حيث يمكن أن تفوز كلمة المرور ولا يمكن لأي مرشح رمز أن يفوز)، تتخطى فحوصات انحراف الرمز حل رمز الإعداد.
gateway probe
gateway probe هو أمر "تصحيح كل شيء". يفحص دائما:
- Gateway البعيد المكوّن لديك (إذا كان مضبوطا)، و
- localhost (loopback) حتى لو كان البعيد مكوّنا.
إذا مررت --url، يُضاف ذلك الهدف الصريح قبل كليهما. تسمي المخرجات البشرية الأهداف كالتالي:
URL (explicit)Remote (configured)أوRemote (configured, inactive)Local loopback
openclaw gateway probeopenclaw gateway probe --jsonالتفسير
- تعني
Reachable: yesأن هدفا واحدا على الأقل قبل اتصال WebSocket. - يبلّغ
Capability: read-only|write-capable|admin-capable|pairing-pending|connect-onlyعما استطاع الفحص إثباته بشأن المصادقة. وهو منفصل عن قابلية الوصول. - تعني
Read probe: okأن استدعاءات RPC التفصيلية ذات نطاق القراءة (health/status/system-presence/config.get) نجحت أيضا. - تعني
Read probe: limited - missing scope: operator.readأن الاتصال نجح لكن RPC ذات نطاق القراءة محدودة. يُبلّغ عن هذا كقابلية وصول متدهورة، وليس فشلا كاملا. - تعني
Read probe: failedبعدConnect: okأن Gateway قبل اتصال WebSocket، لكن تشخيصات القراءة اللاحقة انتهت مهلتها أو فشلت. وهذا أيضا قابلية وصول متدهورة، وليس Gateway غير قابل للوصول. - مثل
gateway status، يعيد الفحص استخدام مصادقة الجهاز المخزنة مؤقتا الموجودة، لكنه لا ينشئ هوية جهاز لأول مرة أو حالة إقران. - يكون رمز الخروج غير صفري فقط عندما لا يكون أي هدف مفحوص قابلا للوصول.
مخرجات JSON
المستوى الأعلى:
ok: هدف واحد على الأقل قابل للوصول.degraded: هدف واحد على الأقل قبل اتصالا لكنه لم يكمل تشخيصات RPC التفصيلية الكاملة.capability: أفضل إمكانية شوهدت عبر الأهداف القابلة للوصول (read_only، أوwrite_capable، أوadmin_capable، أوpairing_pending، أوconnected_no_operator_scope، أوunknown).primaryTargetId: أفضل هدف للتعامل معه كفائز نشط بهذا الترتيب: عنوان URL صريح، نفق SSH، البعيد المكوّن، ثم local loopback.warnings[]: سجلات تحذير بأفضل جهد تحتوي علىcodeوmessageوtargetIdsاختيارية.network: تلميحات عناوين URL لـ local loopback/tailnet مشتقة من الإعداد الحالي وشبكة المضيف.discovery.timeoutMsوdiscovery.count: ميزانية/عدد نتائج الاكتشاف الفعلية المستخدمة لجولة الفحص هذه.
لكل هدف (targets[].connect):
ok: قابلية الوصول بعد الاتصال + تصنيف التدهور.rpcOk: نجاح RPC التفصيلي الكامل.scopeLimited: فشل RPC التفصيلي بسبب نطاق عامل مفقود.
لكل هدف (targets[].auth):
role: دور المصادقة المبلّغ عنه فيhello-okعند توفره.scopes: النطاقات الممنوحة المبلّغ عنها فيhello-okعند توفرها.capability: تصنيف إمكانية المصادقة المعروض لذلك الهدف.
رموز التحذير الشائعة
ssh_tunnel_failed: فشل إعداد نفق SSH؛ عاد الأمر إلى الفحوصات المباشرة.multiple_gateways: كان أكثر من هدف واحد قابلا للوصول؛ هذا غير معتاد إلا إذا كنت تشغّل ملفات شخصية معزولة عمدا، مثل بوت إنقاذ.auth_secretref_unresolved: تعذر حل SecretRef مصادقة مكوّن لهدف فاشل.probe_scope_limited: نجح اتصال WebSocket، لكن فحص القراءة كان محدودا بسبب فقدانoperator.read.
البعيد عبر SSH (تكافؤ تطبيق Mac)
يستخدم وضع "البعيد عبر SSH" في تطبيق macOS إعادة توجيه منفذ محلي بحيث يصبح Gateway البعيد (الذي قد يكون مربوطا بـ loopback فقط) قابلا للوصول عند ws://127.0.0.1:<port>.
المكافئ في CLI:
openclaw gateway probe --ssh user@gateway-hostOPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tc3NoIDx0YXJnZXQ
" type="string">
user@host أو user@host:port (يكون المنفذ افتراضيا 22).
--ssh-autobooleanاختر أول مضيف Gateway مكتشف كهدف SSH من نقطة نهاية الاكتشاف المحلولة (local. إضافة إلى نطاق واسع المدى المكوّن، إن وجد). تُتجاهل تلميحات TXT فقط.
الإعداد (اختياري، يُستخدم كقيم افتراضية):
gateway.remote.sshTargetgateway.remote.sshIdentity
gateway call <method>
مساعد RPC منخفض المستوى.
openclaw gateway call statusopenclaw gateway call logs.tail --params '{"sinceMs": 60000}'"--params"--url"--token"--password"--timeout--expect-finalbooleanبشكل أساسي لاستدعاءات RPC بنمط الوكيل التي تبث أحداثا وسيطة قبل حمولة نهائية.
--jsonbooleanمخرجات JSON قابلة للقراءة آليا.
إدارة خدمة Gateway
openclaw gateway installopenclaw gateway startopenclaw gateway stopopenclaw gateway restartopenclaw gateway uninstallالتثبيت باستخدام غلاف
استخدم --wrapper عندما يجب أن تبدأ الخدمة المُدارة عبر ملف تنفيذي آخر، على سبيل المثال طبقة مدير أسرار أو مساعد تشغيل باسم مستخدم آخر. يتلقى الغلاف وسائط Gateway العادية ويكون مسؤولا في النهاية عن تنفيذ openclaw أو Node بهذه الوسائط.
cat > ~/.local/bin/openclaw-doppler <<'EOF'#!/usr/bin/env bashset -euo pipefailexec doppler run --project my-project --config production -- openclaw "$@"EOFchmod +x ~/.local/bin/openclaw-doppler openclaw gateway install --wrapper ~/.local/bin/openclaw-doppler --forceopenclaw gateway restartيمكنك أيضا ضبط الغلاف عبر البيئة. يتحقق gateway install من أن المسار ملف تنفيذي، ويكتب الغلاف في ProgramArguments الخاصة بالخدمة، ويثبّت OPENCLAW_WRAPPER في بيئة الخدمة لإعادة التثبيت القسرية والتحديثات وإصلاحات الطبيب لاحقا.
OPENCLAW_WRAPPER="$HOME/.local/bin/openclaw-doppler" openclaw gateway install --forceopenclaw doctorلإزالة غلاف مثبت، امسح OPENCLAW_WRAPPER أثناء إعادة التثبيت:
OPENCLAW_WRAPPER= openclaw gateway install --forceopenclaw gateway restartخيارات الأمر
gateway status:--url,--token,--password,--timeout,--no-probe,--require-rpc,--deep,--jsongateway install:--port,--runtime <node|bun>,--token,--wrapper <path>,--force,--jsongateway restart:--safe,--skip-deferral,--force,--wait <duration>,--jsongateway uninstall|start:--jsongateway stop:--disable,--json
سلوك دورة الحياة
- استخدم
gateway restartلإعادة تشغيل خدمة مُدارة. لا تسلسلgateway stopوgateway startكبديل لإعادة التشغيل. - على macOS، يستخدم
gateway stopالأمرlaunchctl bootoutافتراضيًا، ما يزيل LaunchAgent من جلسة الإقلاع الحالية من دون الإبقاء على تعطيل مستمر — يظل الاسترداد التلقائي عبر KeepAlive نشطًا للأعطال المستقبلية، ويعيدgateway startالتمكين بشكل نظيف من دونlaunchctl enableيدوي. مرّر--disableلتعطيل KeepAlive وRunAtLoad بشكل مستمر كي لا يعاود Gateway الظهور حتى تنفيذgateway startالصريح التالي؛ استخدم هذا عندما يجب أن يصمد الإيقاف اليدوي بعد إعادة الإقلاع أو إعادة تشغيل النظام. - يطلب
gateway restart --safeمن Gateway الجاري تشغيله إجراء فحص مسبق لأعمال OpenClaw النشطة وتأجيل إعادة التشغيل حتى يكتمل تسليم الردود وعمليات التشغيل المضمّنة وتشغيلات المهام. لا يمكن دمج--safeمع--forceأو--wait. - يتجاوز
gateway restart --wait 30sميزانية تصريف إعادة التشغيل المكوّنة لإعادة التشغيل هذه. الأرقام المجرّدة تعني المللي ثانية؛ وتُقبل الوحدات مثلsوmوh. ينتظر--wait 0إلى أجل غير مسمى. - يشغّل
gateway restart --safe --skip-deferralإعادة التشغيل الآمنة الواعية بـ OpenClaw لكنه يتجاوز بوابة التأجيل لكي يصدر Gateway إعادة التشغيل فورًا حتى عند الإبلاغ عن موانع. هذا مخرج طوارئ للمشغّل لتأجيلات تشغيلات المهام العالقة؛ ويتطلب--safe. - يتخطى
gateway restart --forceتصريف العمل النشط ويعيد التشغيل فورًا. استخدمه عندما يكون المشغّل قد فحص بالفعل موانع المهام المدرجة ويريد عودة Gateway الآن. - تقبل أوامر دورة الحياة
--jsonللاستخدام في السكربتات.
المصادقة وSecretRefs وقت التثبيت
- عندما تتطلب مصادقة الرمز رمزًا ويكون
gateway.auth.tokenمُدارًا عبر SecretRef، يتحققgateway installمن إمكانية حل SecretRef لكنه لا يحفظ الرمز المحلول في بيانات تعريف بيئة الخدمة. - إذا كانت مصادقة الرمز تتطلب رمزًا وكان SecretRef للرمز المكوّن غير محلول، يفشل التثبيت بأمان بدلًا من حفظ نص عادي احتياطي.
- لمصادقة كلمة المرور في
gateway run، فضّلOPENCLAW_GATEWAY_PASSWORDأو--password-fileأوgateway.auth.passwordالمدعوم بـ SecretRef على--passwordالمضمّنة. - في وضع المصادقة المستنتج، لا يخفف
OPENCLAW_GATEWAY_PASSWORDالمتاح للصدفة فقط متطلبات رمز التثبيت؛ استخدم إعدادًا دائمًا (gateway.auth.passwordأوenvفي الإعدادات) عند تثبيت خدمة مُدارة. - إذا كان كل من
gateway.auth.tokenوgateway.auth.passwordمكوّنين وكانgateway.auth.modeغير معيّن، يُحظر التثبيت حتى يُعيّن الوضع صراحةً.
اكتشاف الـ gateways (Bonjour)
يفحص gateway discover إشارات Gateway (_openclaw-gw._tcp).
- Multicast DNS-SD:
local. - Unicast DNS-SD (Wide-Area Bonjour): اختر نطاقًا (مثال:
openclaw.internal.) واضبط split DNS + خادم DNS؛ راجع Bonjour.
لا تعلن الإشارة إلا الـ gateways التي تم تمكين اكتشاف Bonjour لها (افتراضيًا).
يمكن أن تتضمن سجلات الاكتشاف واسع النطاق تلميحات TXT هذه:
role(تلميح دور gateway)transport(تلميح النقل، مثلgateway)gatewayPort(منفذ WebSocket، عادةً18789)sshPort(وضع الاكتشاف الكامل فقط؛ يضبط العملاء أهداف SSH الافتراضية على22عند غيابه)tailnetDns(اسم مضيف MagicDNS، عند توفره)gatewayTls/gatewayTlsSha256(TLS مفعّل + بصمة الشهادة)cliPath(وضع الاكتشاف الكامل فقط)
gateway discover
openclaw gateway discover"--timeout--jsonbooleanمخرجات قابلة للقراءة آليًا (وتعطل أيضًا التنسيق/مؤشر التحميل).
أمثلة:
openclaw gateway discover --timeout 4000openclaw gateway discover --json | jq '.beacons[].wsUrl'