Gateway
استكشاف الأخطاء وإصلاحها
هذه الصفحة هي دليل التشغيل التفصيلي. ابدأ من /help/troubleshooting إذا أردت مسار الفرز السريع أولا.
سلم الأوامر
شغل هذه أولا، بهذا الترتيب:
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
إشارات الحالة السليمة المتوقعة:
- يعرض
openclaw gateway statusالسطرRuntime: running، وConnectivity probe: ok، وسطرCapability: .... - يبلغ
openclaw doctorعن عدم وجود مشكلات حظر في الإعدادات/الخدمة. - يعرض
openclaw channels status --probeحالة النقل الحية لكل حساب، وحيثما يكون ذلك مدعوما، نتائج الفحص/التدقيق مثلworksأوaudit ok.
تثبيتات متباينة وحارس الإعدادات الأحدث
استخدم هذا عندما تتوقف خدمة Gateway على نحو غير متوقع بعد تحديث، أو تعرض السجلات أن ملفا تنفيذيا واحدا من openclaw أقدم من الإصدار الذي كتب openclaw.json آخر مرة.
يختم OpenClaw عمليات كتابة الإعدادات بـ meta.lastTouchedVersion. لا يزال بإمكان أوامر القراءة فقط فحص إعدادات كتبها إصدار أحدث من OpenClaw، لكن طفرات العمليات والخدمات ترفض المتابعة من ملف تنفيذي أقدم. تشمل الإجراءات المحظورة بدء خدمة Gateway، وإيقافها، وإعادة تشغيلها، وإلغاء تثبيتها، وإعادة تثبيت الخدمة قسرا، وبدء تشغيل Gateway في وضع الخدمة، وتنظيف المنفذ عبر gateway --force.
which openclaw
openclaw --version
openclaw gateway status --deep
openclaw config get meta.lastTouchedVersion
Fix PATH
أصلح PATH بحيث يشير openclaw إلى التثبيت الأحدث، ثم أعد تشغيل الإجراء.
Reinstall the gateway service
أعد تثبيت خدمة Gateway المقصودة من التثبيت الأحدث:
openclaw gateway install --force
openclaw gateway restart
Remove stale wrappers
أزل حزمة النظام القديمة أو إدخالات الغلاف القديمة التي ما زالت تشير إلى ملف تنفيذي قديم من openclaw.
يتطلب Anthropic 429 استخداما إضافيا للسياق الطويل
استخدم هذا عندما تتضمن السجلات/الأخطاء: HTTP 429: rate_limit_error: Extra usage is required for long context requests.
openclaw logs --follow
openclaw models status
openclaw config get agents.defaults.models
ابحث عن:
- يحتوي نموذج Anthropic Opus/Sonnet المحدد على
params.context1m: true. - بيانات اعتماد Anthropic الحالية غير مؤهلة لاستخدام السياق الطويل.
- تفشل الطلبات فقط في الجلسات الطويلة/تشغيلات النماذج التي تحتاج إلى مسار 1M التجريبي.
خيارات الإصلاح:
Disable context1m
عطّل context1m لذلك النموذج للرجوع إلى نافذة السياق العادية.
Use an eligible credential
استخدم بيانات اعتماد Anthropic مؤهلة لطلبات السياق الطويل، أو بدّل إلى مفتاح Anthropic API.
Configure fallback models
اضبط نماذج احتياطية بحيث تستمر التشغيلات عندما تُرفض طلبات السياق الطويل من Anthropic.
ذات صلة:
ينجح الخلفي المحلي المتوافق مع OpenAI في الفحوص المباشرة لكن تشغيلات الوكيل تفشل
استخدم هذا عندما:
- يعمل
curl ... /v1/models - تعمل استدعاءات
/v1/chat/completionsالمباشرة الصغيرة - تفشل تشغيلات نموذج OpenClaw فقط في أدوار الوكيل العادية
curl http://127.0.0.1:1234/v1/models
curl http://127.0.0.1:1234/v1/chat/completions \
-H 'content-type: application/json' \
-d '{"model":"<id>","messages":[{"role":"user","content":"hi"}],"stream":false}'
openclaw infer model run --model <provider/model> --prompt "hi" --json
openclaw logs --follow
ابحث عن:
- تنجح الاستدعاءات المباشرة الصغيرة، لكن تشغيلات OpenClaw تفشل فقط مع المطالبات الأكبر
- أخطاء
model_not_foundأو 404 رغم أن/v1/chat/completionsالمباشر يعمل مع معرّف النموذج المجرد نفسه - أخطاء خلفية حول توقع
messages[].contentلسلسلة - تحذيرات
incomplete turn detected ... stopReason=stop payloads=0متقطعة مع خلفية محلية متوافقة مع OpenAI - انهيارات خلفية لا تظهر إلا مع أعداد رموز مطالبة أكبر أو مطالبات وقت تشغيل الوكيل الكاملة
Common signatures
model_not_foundمع خادم محلي على نمط MLX/vLLM → تحقق من أنbaseUrlيتضمن/v1، وأنapiهو"openai-completions"لخلفيات/v1/chat/completions، وأنmodels.providers.<provider>.models[].idهو المعرّف المحلي المجرد لدى المزود. حدده ببادئة المزود مرة واحدة، مثلاmlx/mlx-community/Qwen3-30B-A3B-6bit؛ وأبق إدخال الفهرس كـmlx-community/Qwen3-30B-A3B-6bit.messages[...].content: invalid type: sequence, expected a string→ ترفض الخلفية أجزاء محتوى Chat Completions البنيوية. الإصلاح: عيّنmodels.providers.<provider>.models[].compat.requiresStringContent: true.incomplete turn detected ... stopReason=stop payloads=0→ أكملت الخلفية طلب Chat Completions لكنها لم ترجع نص مساعد مرئيا للمستخدم لذلك الدور. يعيد OpenClaw محاولة أدوار OpenAI المتوافقة الفارغة الآمنة لإعادة التشغيل مرة واحدة؛ غالبا تعني حالات الفشل المستمرة أن الخلفية تصدر محتوى فارغا/غير نصي أو تكبت نص الإجابة النهائية.- تنجح الطلبات المباشرة الصغيرة، لكن تشغيلات وكيل OpenClaw تفشل بانهيارات في الخلفية/النموذج (مثل Gemma على بعض إصدارات
inferrs) → من المرجح أن نقل OpenClaw صحيح بالفعل؛ الخلفية تفشل على شكل مطالبة وقت تشغيل الوكيل الأكبر. - تتقلص حالات الفشل بعد تعطيل الأدوات لكنها لا تختفي → كانت مخططات الأدوات جزءا من الضغط، لكن المشكلة المتبقية ما زالت في سعة النموذج/الخادم في المنبع أو خطأ في الخلفية.
Fix options
- عيّن
compat.requiresStringContent: trueلخلفيات Chat Completions التي تقبل السلاسل فقط. - عيّن
compat.supportsTools: falseللنماذج/الخلفيات التي لا تستطيع التعامل مع سطح مخطط أدوات OpenClaw بشكل موثوق. - خفّض ضغط المطالبة حيثما أمكن: تمهيد مساحة عمل أصغر، سجل جلسة أقصر، نموذج محلي أخف، أو خلفية بدعم أقوى للسياق الطويل.
- إذا استمرت الطلبات المباشرة الصغيرة في النجاح بينما لا تزال أدوار وكيل OpenClaw تنهار داخل الخلفية، فتعامل معها كقيد في الخادم/النموذج في المنبع وقدّم إعادة إنتاج هناك مع شكل الحمولة المقبول.
ذات صلة:
لا توجد ردود
إذا كانت القنوات عاملة لكن لا شيء يجيب، فتحقق من التوجيه والسياسة قبل إعادة توصيل أي شيء.
openclaw status
openclaw channels status --probe
openclaw pairing list --channel <channel> [--account <id>]
openclaw config get channels
openclaw logs --follow
ابحث عن:
- اقتران معلق لمرسلي الرسائل الخاصة.
- بوابة ذكر المجموعة (
requireMention،mentionPatterns). - عدم تطابق قائمة السماح للقناة/المجموعة.
تواقيع شائعة:
drop guild message (mention required→ تُتجاهل رسالة المجموعة حتى وجود ذكر.pairing request→ يحتاج المرسل إلى موافقة.blocked/allowlist→ تمت تصفية المرسل/القناة بواسطة السياسة.
ذات صلة:
اتصال واجهة تحكم لوحة المعلومات
عندما لا تتصل واجهة تحكم لوحة المعلومات، تحقق من عنوان URL، ووضع المصادقة، وافتراضات السياق الآمن.
openclaw gateway status
openclaw status
openclaw logs --follow
openclaw doctor
openclaw gateway status --json
ابحث عن:
- عنوان URL الصحيح للفحص وعنوان URL للوحة المعلومات.
- عدم تطابق وضع المصادقة/الرمز المميز بين العميل وGateway.
- استخدام HTTP حيث تكون هوية الجهاز مطلوبة.
Connect / auth signatures
device identity required→ سياق غير آمن أو مصادقة جهاز مفقودة.origin not allowed→ قيمةOriginفي المتصفح ليست ضمنgateway.controlUi.allowedOrigins(أو أنك تتصل من أصل متصفح غير local loopback دون قائمة سماح صريحة).device nonce required/device nonce mismatch→ لا يكمل العميل تدفق مصادقة الجهاز القائم على التحدي (connect.challenge+device.nonce).device signature invalid/device signature expired→ وقّع العميل الحمولة الخاطئة (أو طابعا زمنيا قديما) للمصافحة الحالية.AUTH_TOKEN_MISMATCHمعcanRetryWithDeviceToken=true→ يمكن للعميل إجراء إعادة محاولة موثوقة واحدة باستخدام رمز جهاز مخزن مؤقتا.- تعيد محاولة الرمز المخزن مؤقتا تلك استخدام مجموعة النطاقات المخزنة مؤقتا مع رمز الجهاز المقترن. يحافظ مستدعو
deviceTokenالصريح /scopesالصريحة على مجموعة النطاقات المطلوبة لديهم بدلا من ذلك. - خارج مسار إعادة المحاولة هذا، تكون أسبقية مصادقة الاتصال هي الرمز المشترك/كلمة المرور الصريحة أولا، ثم
deviceTokenالصريح، ثم رمز الجهاز المخزن، ثم رمز التمهيد. - في مسار واجهة تحكم Tailscale Serve غير المتزامن، تُسلسل المحاولات الفاشلة لنفس
{scope, ip}قبل أن يسجل المحدد الفشل. لذلك يمكن لمحاولتي إعادة محاولة متزامنتين سيئتين من العميل نفسه أن تُظهراretry laterفي المحاولة الثانية بدلا من عدم تطابقين عاديين. too many failed authentication attempts (retry later)من عميل local loopback ذي أصل متصفح → تؤدي الإخفاقات المتكررة منOriginالمعياري نفسه إلى حظر مؤقت؛ يستخدم أصل localhost آخر حاوية منفصلة.- تكرار
unauthorizedبعد إعادة المحاولة تلك → انحراف الرمز المشترك/رمز الجهاز؛ حدّث إعدادات الرمز وأعد الموافقة على رمز الجهاز/دوّره إذا لزم الأمر. gateway connect failed:→ هدف مضيف/منفذ/عنوان URL خاطئ.
خريطة سريعة لرموز تفاصيل المصادقة
استخدم error.details.code من استجابة connect الفاشلة لاختيار الإجراء التالي:
| رمز التفاصيل | المعنى | الإجراء الموصى به |
|---|---|---|
AUTH_TOKEN_MISSING |
لم يرسل العميل الرمز المشترك المطلوب. | الصق/عيّن الرمز في العميل ثم أعد المحاولة. لمسارات لوحة التحكم: openclaw config get gateway.auth.token ثم الصقه في إعدادات واجهة التحكم. |
AUTH_TOKEN_MISMATCH |
لم يطابق الرمز المشترك رمز مصادقة Gateway. | إذا كان canRetryWithDeviceToken=true، فاسمح بمحاولة موثوقة واحدة. تعيد محاولات الرموز المخزنة مؤقتا استخدام النطاقات المعتمدة المخزنة؛ ويحتفظ مستدعو deviceToken / scopes الصريحون بالنطاقات المطلوبة. إذا استمر الفشل، فشغّل قائمة التحقق لاسترداد انحراف الرمز. |
AUTH_DEVICE_TOKEN_MISMATCH |
الرمز المخزن مؤقتا لكل جهاز قديم أو ملغى. | دوّر/أعد اعتماد رمز الجهاز باستخدام CLI الأجهزة، ثم أعد الاتصال. |
PAIRING_REQUIRED |
تحتاج هوية الجهاز إلى موافقة. تحقق من error.details.reason بحثا عن not-paired أو scope-upgrade أو role-upgrade أو metadata-upgrade، واستخدم requestId / remediationHint عند وجودهما. |
اعتمد الطلب المعلّق: openclaw devices list ثم openclaw devices approve <requestId>. تستخدم ترقيات النطاق/الدور التدفق نفسه بعد مراجعة الوصول المطلوب. |
فحص ترحيل مصادقة الجهاز v2:
openclaw --version
openclaw doctor
openclaw gateway status
إذا أظهرت السجلات أخطاء nonce/التوقيع، فحدّث العميل المتصل وتحقق منه:
Wait for connect.challenge
ينتظر العميل connect.challenge الصادر من Gateway.
Sign the payload
يوقّع العميل الحمولة المرتبطة بالتحدي.
Send the device nonce
يرسل العميل connect.params.device.nonce بقيمة nonce الخاصة بالتحدي نفسها.
إذا رُفض openclaw devices rotate / revoke / remove بشكل غير متوقع:
- يمكن لجلسات رمز الجهاز المقترن إدارة جهازها الخاص بها فقط، ما لم يكن لدى المستدعي أيضا
operator.admin - لا يمكن لـ
openclaw devices rotate --scope ...طلب نطاقات المشغّل إلا إذا كانت جلسة المستدعي تملكها مسبقا
ذات صلة:
- الإعدادات (أوضاع مصادقة Gateway)
- واجهة التحكم
- الأجهزة
- الوصول عن بعد
- مصادقة الوكيل الموثوق
خدمة Gateway لا تعمل
استخدم هذا عندما تكون الخدمة مثبتة لكن العملية لا تبقى قيد التشغيل.
openclaw gateway status
openclaw status
openclaw logs --follow
openclaw doctor
openclaw gateway status --deep # also scan system-level services
ابحث عن:
Runtime: stoppedمع تلميحات الخروج.- عدم تطابق إعدادات الخدمة (
Config (cli)مقابلConfig (service)). - تعارضات المنفذ/المستمع.
- تثبيتات launchd/systemd/schtasks إضافية عند استخدام
--deep. - تلميحات تنظيف
Other gateway-like services detected (best effort).
Common signatures
Gateway start blocked: set gateway.mode=localأوexisting config is missing gateway.mode→ لم يتم تمكين وضع Gateway المحلي، أو تعرض ملف الإعدادات للاستبدال وفقدgateway.mode. الإصلاح: اضبطgateway.mode="local"في إعداداتك، أو أعد تشغيلopenclaw onboard --mode local/openclaw setupلإعادة ختم إعدادات الوضع المحلي المتوقعة. إذا كنت تشغّل OpenClaw عبر Podman، فإن مسار الإعدادات الافتراضي هو~/.openclaw/openclaw.json.refusing to bind gateway ... without auth→ ربط بغير loopback دون مسار مصادقة Gateway صالح (رمز/كلمة مرور، أو وكيل موثوق عند تهيئته).another gateway instance is already listening/EADDRINUSE→ تعارض منفذ.Other gateway-like services detected (best effort)→ توجد وحدات launchd/systemd/schtasks قديمة أو متوازية. ينبغي لمعظم الإعدادات الاحتفاظ بـ Gateway واحد لكل جهاز؛ وإذا كنت تحتاج فعلا إلى أكثر من واحد، فاعزل المنافذ + الإعدادات/الحالة/مساحة العمل. راجع /gateway#multiple-gateways-same-host.System-level OpenClaw gateway service detectedمن doctor → توجد وحدة systemd على مستوى النظام بينما خدمة مستوى المستخدم مفقودة. أزل النسخة المكررة أو عطّلها قبل السماح لـ doctor بتثبيت خدمة مستخدم، أو اضبطOPENCLAW_SERVICE_REPAIR_POLICY=externalإذا كانت وحدة النظام هي المشرف المقصود.Gateway service port does not match current gateway config→ ما زال المشرف المثبت يثبت--portالقديم. شغّلopenclaw doctor --fixأوopenclaw gateway install --force، ثم أعد تشغيل خدمة Gateway.
ذات صلة:
رفض Gateway إعدادات غير صالحة
استخدم هذا عندما يفشل بدء تشغيل Gateway مع Invalid config أو تقول سجلات إعادة التحميل الساخنة
إنه تخطى تعديلا غير صالح.
openclaw logs --follow
openclaw config file
openclaw config validate
openclaw doctor
ابحث عن:
Invalid config at ...config reload skipped (invalid config): ...Config write rejected: ...- ملف
openclaw.json.rejected.*بطابع زمني بجوار الإعدادات النشطة - ملف
openclaw.json.clobbered.*بطابع زمني إذا أصلحdoctor --fixتعديلا مباشرا معطلا
What happened
- لم تجتز الإعدادات التحقق أثناء بدء التشغيل أو إعادة التحميل الساخنة أو كتابة يملكها OpenClaw.
- يفشل بدء تشغيل Gateway بشكل مغلق بدلا من إعادة كتابة
openclaw.json. - تتخطى إعادة التحميل الساخنة التعديلات الخارجية غير الصالحة وتُبقي إعدادات وقت التشغيل الحالية نشطة.
- ترفض الكتابات التي يملكها OpenClaw الحمولات غير الصالحة/المتلفة قبل الالتزام وتحفظ
.rejected.*. - يملك
openclaw doctor --fixالإصلاح. يمكنه إزالة بادئات غير JSON أو استعادة آخر نسخة معروفة سليمة مع الحفاظ على الحمولة المرفوضة بصيغة.clobbered.*.
Inspect and repair
CONFIG="$(openclaw config file)"
ls -lt "$CONFIG".clobbered.* "$CONFIG".rejected.* 2>/dev/null | head
diff -u "$CONFIG" "$(ls -t "$CONFIG".clobbered.* 2>/dev/null | head -n 1)"
openclaw config validate
openclaw doctor
Common signatures
- وجود
.clobbered.*→ احتفظ doctor بتعديل خارجي معطل أثناء إصلاح الإعدادات النشطة. - وجود
.rejected.*→ فشلت كتابة إعدادات يملكها OpenClaw في فحوصات المخطط أو منع الاستبدال قبل الالتزام. Config write rejected:→ حاولت الكتابة إسقاط البنية المطلوبة، أو تقليص الملف بشدة، أو حفظ إعدادات غير صالحة.config reload skipped (invalid config):→ فشل تعديل مباشر في التحقق وتم تجاهله بواسطة Gateway قيد التشغيل.Invalid config at ...→ فشل بدء التشغيل قبل إقلاع خدمات Gateway.missing-meta-vs-last-goodأوgateway-mode-missing-vs-last-goodأوsize-drop-vs-last-good:*→ رُفضت كتابة يملكها OpenClaw لأنها فقدت حقولا أو حجما مقارنة بآخر نسخة احتياطية معروفة سليمة.Config last-known-good promotion skipped→ احتوى المرشح على عناصر نائبة لأسرار منقحة مثل***.
Fix options
- شغّل
openclaw doctor --fixللسماح لـ doctor بإصلاح الإعدادات ذات البادئة/المستبدلة أو استعادة آخر نسخة معروفة سليمة. - انسخ المفاتيح المقصودة فقط من
.clobbered.*أو.rejected.*، ثم طبّقها باستخدامopenclaw config setأوconfig.patch. - شغّل
openclaw config validateقبل إعادة التشغيل. - إذا عدّلت يدويا، فاحتفظ بإعدادات JSON5 الكاملة، وليس الكائن الجزئي فقط الذي أردت تغييره.
ذات صلة:
تحذيرات فحص Gateway
استخدم هذا عندما يصل openclaw gateway probe إلى شيء ما، لكنه ما زال يطبع كتلة تحذير.
openclaw gateway probe
openclaw gateway probe --json
openclaw gateway probe --ssh user@gateway-host
ابحث عن:
warnings[].codeوprimaryTargetIdفي مخرجات JSON.- ما إذا كان التحذير يتعلق بالرجوع إلى SSH، أو عدة Gateways، أو نطاقات مفقودة، أو مراجع مصادقة غير محلولة.
تواقيع شائعة:
SSH tunnel failed to start; falling back to direct probes.→ فشل إعداد SSH، لكن الأمر ظل يحاول الأهداف المباشرة المهيأة/loopback.multiple reachable gateways detected→ استجاب أكثر من هدف واحد. يعني هذا عادة إعدادا متعمدا لعدة Gateways أو مستمعين قدامى/مكررين.Read-probe diagnostics are limited by gateway scopes (missing operator.read)→ نجح الاتصال، لكن RPC التفصيلي مقيّد بالنطاق؛ اقرن هوية الجهاز أو استخدم بيانات اعتماد تحتوي علىoperator.read.Gateway accepted the WebSocket connection, but follow-up read diagnostics failed→ نجح الاتصال، لكن مجموعة RPC التشخيصية الكاملة انتهت مهلتها أو فشلت. تعامل مع هذا على أنه Gateway قابل للوصول مع تشخيصات متدهورة؛ قارنconnect.okوconnect.rpcOkفي مخرجات--json.Capability: pairing-pendingأوgateway closed (1008): pairing required→ استجاب Gateway، لكن هذا العميل ما زال يحتاج إلى إقران/اعتماد قبل الوصول العادي للمشغّل.- نص تحذير SecretRef غير محلول لـ
gateway.auth.*/gateway.remote.*→ لم تكن مادة المصادقة متاحة في مسار الأمر هذا للهدف الفاشل.
ذات صلة:
القناة متصلة، لكن الرسائل لا تتدفق
إذا كانت حالة القناة متصلة لكن تدفق الرسائل متوقف، فركّز على السياسة والأذونات وقواعد التسليم الخاصة بالقناة.
openclaw channels status --probe
openclaw pairing list --channel <channel> [--account <id>]
openclaw status --deep
openclaw logs --follow
openclaw config get channels
ابحث عن:
- سياسة الرسائل المباشرة (
pairing،allowlist،open،disabled). - قائمة السماح للمجموعات ومتطلبات الإشارة.
- أذونات/نطاقات API القناة المفقودة.
التواقيع الشائعة:
mention required→ تم تجاهل الرسالة بسبب سياسة الإشارة في المجموعة.pairing/ آثار انتظار الموافقة → المرسل غير معتمد.missing_scope،not_in_channel،Forbidden،401/403→ مشكلة في مصادقة/أذونات القناة.
ذات صلة:
تسليم Cron و Heartbeat
إذا لم يعمل Cron أو Heartbeat، أو لم يتم التسليم، فتحقق أولًا من حالة المجدول، ثم هدف التسليم.
openclaw cron status
openclaw cron list
openclaw cron runs --id <jobId> --limit 20
openclaw system heartbeat last
openclaw logs --follow
ابحث عن:
- تفعيل Cron ووجود وقت التنبيه التالي.
- حالة سجل تشغيل المهمة (
ok،skipped،error). - أسباب تخطي Heartbeat (
quiet-hours،requests-in-flight،cron-in-progress،lanes-busy،alerts-disabled،empty-heartbeat-file،no-tasks-due).
التواقيع الشائعة
cron: scheduler disabled; jobs will not run automatically→ Cron معطل.cron: timer tick failed→ فشلت نبضة المجدول؛ تحقق من أخطاء الملفات/السجلات/وقت التشغيل.heartbeat skippedمعreason=quiet-hours→ خارج نافذة الساعات النشطة.heartbeat skippedمعreason=empty-heartbeat-file→ يوجدHEARTBEAT.mdلكنه يحتوي فقط على أسطر فارغة / ترويسات Markdown، لذلك يتخطى OpenClaw استدعاء النموذج.heartbeat skippedمعreason=no-tasks-due→ يحتويHEARTBEAT.mdعلى كتلةtasks:، لكن لا توجد أي مهام مستحقة في هذه النبضة.heartbeat: unknown accountId→ معرّف حساب غير صالح لهدف تسليم Heartbeat.heartbeat skippedمعreason=dm-blocked→ تم حل هدف Heartbeat إلى وجهة بنمط رسالة مباشرة بينما تم تعيينagents.defaults.heartbeat.directPolicy(أو تجاوز لكل وكيل) إلىblock.
ذات صلة:
Node مقترن، والأداة تفشل
إذا كان Node مقترنًا لكن الأدوات تفشل، فاعزل حالة الواجهة الأمامية والأذونات والموافقة.
openclaw nodes status
openclaw nodes describe --node <idOrNameOrIp>
openclaw approvals get --node <idOrNameOrIp>
openclaw logs --follow
openclaw status
ابحث عن:
- Node متصل بالإنترنت مع الإمكانات المتوقعة.
- منح أذونات نظام التشغيل للكاميرا/الميكروفون/الموقع/الشاشة.
- موافقات التنفيذ وحالة قائمة السماح.
التواقيع الشائعة:
NODE_BACKGROUND_UNAVAILABLE→ يجب أن يكون تطبيق Node في الواجهة الأمامية.*_PERMISSION_REQUIRED/LOCATION_PERMISSION_REQUIRED→ إذن نظام تشغيل مفقود.SYSTEM_RUN_DENIED: approval required→ موافقة التنفيذ معلقة.SYSTEM_RUN_DENIED: allowlist miss→ حُظر الأمر بواسطة قائمة السماح.
ذات صلة:
فشل أداة المتصفح
استخدم هذا عندما تفشل إجراءات أداة المتصفح رغم أن Gateway نفسه سليم.
openclaw browser status
openclaw browser start --browser-profile openclaw
openclaw browser profiles
openclaw logs --follow
openclaw doctor
ابحث عن:
- ما إذا كان
plugins.allowمضبوطًا ويتضمنbrowser. - مسار تنفيذي صالح للمتصفح.
- إمكانية الوصول إلى ملف تعريف CDP.
- توفر Chrome المحلي لملفات تعريف
existing-session/user.
تواقيع Plugin / الملف التنفيذي
unknown command "browser"أوunknown command 'browser'→ تم استبعاد Plugin المتصفح المضمن بواسطةplugins.allow.- أداة المتصفح مفقودة / غير متاحة بينما
browser.enabled=true→ يستبعدplugins.allowقيمةbrowser، لذلك لم يتم تحميل Plugin مطلقًا. Failed to start Chrome CDP on port→ فشل تشغيل عملية المتصفح.browser.executablePath not found→ المسار المكوّن غير صالح.browser.cdpUrl must be http(s) or ws(s)→ يستخدم عنوان CDP URL المكوّن مخططًا غير مدعوم مثلfile:أوftp:.browser.cdpUrl has invalid port→ يحتوي عنوان CDP URL المكوّن على منفذ غير صالح أو خارج النطاق.Playwright is not available in this gateway build; '<feature>' is unsupported.→ يفتقر تثبيت Gateway الحالي إلى تبعية وقت تشغيل المتصفح الأساسية؛ أعد تثبيت OpenClaw أو حدّثه، ثم أعد تشغيل Gateway. لا تزال لقطات ARIA ولقطات الصفحة الأساسية تعمل، لكن التنقل ولقطات AI ولقطات عناصر محدد CSS وتصدير PDF تبقى غير متاحة.
تواقيع Chrome MCP / الجلسة الحالية
Could not find DevToolsActivePort for chrome→ تعذر على جلسة Chrome MCP الحالية الاتصال بدليل بيانات المتصفح المحدد بعد. افتح صفحة فحص المتصفح، وفعّل تصحيح الأخطاء عن بُعد، وأبقِ المتصفح مفتوحًا، ووافق على مطالبة الاتصال الأولى، ثم أعد المحاولة. إذا لم تكن حالة تسجيل الدخول مطلوبة، ففضّل ملف التعريف المُدارopenclaw.No Chrome tabs found for profile="user"→ لا يحتوي ملف تعريف اتصال Chrome MCP على أي تبويبات Chrome محلية مفتوحة.Remote CDP for profile "<name>" is not reachable→ لا يمكن الوصول إلى نقطة نهاية CDP البعيدة المكوّنة من مضيف Gateway.Browser attachOnly is enabled ... not reachableأوBrowser attachOnly is enabled and CDP websocket ... is not reachable→ لا يحتوي ملف التعريف المخصص للاتصال فقط على هدف يمكن الوصول إليه، أو استجابت نقطة نهاية HTTP لكن تعذر فتح CDP WebSocket.
تواقيع العنصر / لقطة الشاشة / الرفع
fullPage is not supported for element screenshots→ خلط طلب لقطة الشاشة--full-pageمع--refأو--element.element screenshots are not supported for existing-session profiles; use ref from snapshot.→ يجب أن تستخدم استدعاءات لقطة شاشة Chrome MCP /existing-sessionالتقاط الصفحة أو--refمن لقطة، وليس--elementمن CSS.existing-session file uploads do not support element selectors; use ref/inputRef.→ تحتاج خطافات رفع Chrome MCP إلى مراجع لقطات، وليس محددات CSS.existing-session file uploads currently support one file at a time.→ أرسل عملية رفع واحدة لكل استدعاء على ملفات تعريف Chrome MCP.existing-session dialog handling does not support timeoutMs.→ لا تدعم خطافات الحوار في ملفات تعريف Chrome MCP تجاوزات المهلة.existing-session type does not support timeoutMs overrides.→ احذفtimeoutMsلـact:typeعلى ملفات تعريفprofile="user"/ Chrome MCP الحالية، أو استخدم ملف تعريف متصفح مُدار/CDP عند الحاجة إلى مهلة مخصصة.existing-session evaluate does not support timeoutMs overrides.→ احذفtimeoutMsلـact:evaluateعلى ملفات تعريفprofile="user"/ Chrome MCP الحالية، أو استخدم ملف تعريف متصفح مُدار/CDP عند الحاجة إلى مهلة مخصصة.response body is not supported for existing-session profiles yet.→ لا يزالresponsebodyيتطلب متصفحًا مُدارًا أو ملف تعريف CDP خامًا.- تجاوزات منفذ العرض / الوضع الداكن / اللغة / عدم الاتصال القديمة على ملفات تعريف الاتصال فقط أو CDP البعيدة → شغّل
openclaw browser stop --browser-profile <name>لإغلاق جلسة التحكم النشطة وتحرير حالة محاكاة Playwright/CDP دون إعادة تشغيل Gateway بالكامل.
ذات صلة:
إذا أجريت ترقية وتعطل شيء فجأة
معظم الأعطال بعد الترقية تكون بسبب انحراف الإعدادات أو تطبيق قيم افتراضية أكثر صرامة الآن.
1. تغير سلوك تجاوز المصادقة وعنوان URL
openclaw gateway status
openclaw config get gateway.mode
openclaw config get gateway.remote.url
openclaw config get gateway.auth.mode
ما يجب التحقق منه:
- إذا كان
gateway.mode=remote، فقد تستهدف استدعاءات CLI الخدمة البعيدة بينما خدمتك المحلية سليمة. - استدعاءات
--urlالصريحة لا تعود إلى بيانات الاعتماد المخزنة.
التواقيع الشائعة:
gateway connect failed:→ هدف URL خاطئ.unauthorized→ يمكن الوصول إلى نقطة النهاية لكن المصادقة خاطئة.
2. ضوابط الربط والمصادقة أصبحت أكثر صرامة
openclaw config get gateway.bind
openclaw config get gateway.auth.mode
openclaw config get gateway.auth.token
openclaw gateway status
openclaw logs --follow
ما يجب التحقق منه:
- تحتاج عمليات الربط خارج loopback (
lan،tailnet،custom) إلى مسار مصادقة Gateway صالح: مصادقة رمز/كلمة مرور مشتركة، أو نشرtrusted-proxyخارج loopback مكوّن بشكل صحيح. - المفاتيح القديمة مثل
gateway.tokenلا تحل محلgateway.auth.token.
التواقيع الشائعة:
refusing to bind gateway ... without auth→ ربط خارج loopback دون مسار مصادقة Gateway صالح.Connectivity probe: failedبينما وقت التشغيل يعمل → Gateway يعمل لكنه غير قابل للوصول بالمصادقة/عنوان URL الحاليين.
3. تغيرت حالة الاقتران وهوية الجهاز
openclaw devices list
openclaw pairing list --channel <channel> [--account <id>]
openclaw logs --follow
openclaw doctor
ما يجب التحقق منه:
- موافقات الأجهزة المعلقة للوحة التحكم/nodes.
- موافقات اقتران الرسائل المباشرة المعلقة بعد تغييرات السياسة أو الهوية.
التواقيع الشائعة:
device identity required→ لم يتم استيفاء مصادقة الجهاز.pairing required→ يجب اعتماد المرسل/الجهاز.
إذا ظلت إعدادات الخدمة ووقت التشغيل غير متفقين بعد الفحوصات، فأعد تثبيت بيانات تعريف الخدمة من دليل ملف التعريف/الحالة نفسه:
openclaw gateway install --force
openclaw gateway restart
ذات صلة: