Gateway
समस्या निवारण
यह विस्तृत रनबुक है। पहले त्वरित ट्रायेज प्रवाह के लिए /सहायता/समस्या निवारण से शुरू करें।
कमांड क्रम
इस क्रम में चलाएँ:
openclaw statusopenclaw gateway statusopenclaw logs --followopenclaw doctoropenclaw channels status --probeसही स्थिति के संकेत:
openclaw gateway statusमेंRuntime: running,Connectivity probe: ok, और एकCapability: ...पंक्ति दिखाई देती है।openclaw doctorकिसी अवरोधक कॉन्फ़िगरेशन/सेवा समस्या की रिपोर्ट नहीं करता।openclaw channels status --probeप्रत्येक अकाउंट की सक्रिय ट्रांसपोर्ट स्थिति और जहाँ समर्थित हो,worksयाaudit okदिखाता है।
अपडेट के बाद
जब अपडेट पूरा हो जाए, लेकिन Gateway बंद हो, चैनल खाली हों, या मॉडल कॉल 401 त्रुटियों के साथ विफल हों, तब इसका उपयोग करें।
openclaw status --allopenclaw update status --jsonopenclaw gateway status --deepopenclaw doctor --fixopenclaw gateway restartइनकी जाँच करें:
openclaw status/openclaw status --allमेंUpdate restart। लंबित या विफल हैंडऑफ़ में चलाने वाला अगला कमांड शामिल होता है।- चैनल के अंतर्गत
plugin load failed: dependency tree corrupted; run openclaw doctor --fix: चैनल कॉन्फ़िगरेशन अभी भी मौजूद है, लेकिन चैनल लोड होने से पहले Plugin पंजीकरण विफल हो गया। - दोबारा प्रमाणीकरण के बाद प्रदाता की 401 त्रुटियाँ:
openclaw doctor --fixपुराने प्रति-एजेंट OAuth प्रमाणीकरण शैडो की जाँच करता है और पुरानी प्रतियाँ हटा देता है, ताकि सभी एजेंट वर्तमान साझा प्रोफ़ाइल का समाधान करें।
विभाजित इंस्टॉलेशन और नए कॉन्फ़िगरेशन की सुरक्षा
जब अपडेट के बाद कोई Gateway सेवा अप्रत्याशित रूप से बंद हो जाए, या लॉग दिखाएँ कि एक openclaw बाइनरी उस संस्करण से पुरानी है जिसने अंतिम बार openclaw.json लिखा था, तब इसका उपयोग करें।
OpenClaw कॉन्फ़िगरेशन लेखन पर meta.lastTouchedVersion की मुहर लगाता है। केवल-पढ़ने वाले कमांड नए OpenClaw द्वारा लिखे गए कॉन्फ़िगरेशन का निरीक्षण कर सकते हैं, लेकिन पुरानी बाइनरी से प्रक्रिया और सेवा में बदलाव करने से मना कर दिया जाता है। अवरुद्ध कार्रवाइयाँ: Gateway सेवा शुरू/बंद/पुनः आरंभ/अनइंस्टॉल करना, सेवा को बलपूर्वक पुनः इंस्टॉल करना, सेवा-मोड में Gateway शुरू करना, और gateway --force पोर्ट की सफ़ाई।
which openclawopenclaw --versionopenclaw gateway status --deepopenclaw config get meta.lastTouchedVersionPATH ठीक करें
PATH को ठीक करें ताकि openclaw नए इंस्टॉलेशन का समाधान करे, फिर कार्रवाई दोबारा चलाएँ।
Gateway सेवा पुनः इंस्टॉल करें
नए इंस्टॉलेशन से इच्छित Gateway सेवा पुनः इंस्टॉल करें:
openclaw gateway install --forceopenclaw gateway restartपुराने रैपर हटाएँ
पुराने सिस्टम पैकेज या रैपर प्रविष्टियाँ हटाएँ जो अभी भी किसी पुराने openclaw बाइनरी की ओर संकेत करती हैं।
रोलबैक के बाद प्रोटोकॉल बेमेल
जब डाउनग्रेड या रोलबैक के बाद लॉग में लगातार protocol mismatch दिखाई दे, तब इसका उपयोग करें। एक पुराना Gateway चल रहा है, लेकिन एक नई स्थानीय क्लाइंट प्रक्रिया अभी भी ऐसी प्रोटोकॉल सीमा के साथ दोबारा कनेक्ट हो रही है जिसे पुराना Gateway समझ नहीं सकता।
openclaw --versionwhich -a openclawopenclaw gateway status --deepopenclaw doctor --deepopenclaw logs --followइनकी जाँच करें:
- Gateway लॉग में
protocol mismatch ... client=... v<version> min=<n> max=<n> expected=<n>। openclaw gateway status --deepमेंEstablished clients:याopenclaw doctor --deepमेंGateway clients: Gateway पोर्ट से जुड़े सक्रिय TCP क्लाइंट, और ऑपरेटिंग सिस्टम की अनुमति होने पर PID तथा कमांड पंक्तियाँ।- ऐसी क्लाइंट प्रक्रिया जिसकी कमांड पंक्ति उस नए OpenClaw इंस्टॉलेशन या रैपर की ओर संकेत करती है जिससे आपने रोलबैक किया था।
समाधान:
gateway status --deepद्वारा दिखाई गई पुरानी OpenClaw क्लाइंट प्रक्रिया को बंद या पुनः आरंभ करें।- OpenClaw को एम्बेड करने वाले ऐप या रैपर पुनः आरंभ करें: स्थानीय डैशबोर्ड, एडिटर, ऐप-सर्वर सहायक, या लंबे समय से चल रहे
openclaw logs --followशेल। openclaw gateway status --deepयाopenclaw doctor --deepदोबारा चलाएँ और पुष्टि करें कि पुराना क्लाइंट PID हट गया है।
किसी पुराने Gateway को नया असंगत प्रोटोकॉल स्वीकार करने योग्य न बनाएँ। प्रोटोकॉल वृद्धि वायर अनुबंध की सुरक्षा करती है; रोलबैक पुनर्प्राप्ति प्रक्रिया/संस्करण की सफ़ाई की समस्या है।
पथ से बाहर निकलने के कारण Skill सिमलिंक छोड़ा गया
जब लॉग में यह शामिल हो, तब इसका उपयोग करें:
कॉन्फ़िगर किए गए रूट से बाहर निकला Skill पथ छोड़ा जा रहा है: ... reason=symlink-escapeप्रत्येक Skill रूट एक परिरोधन सीमा है। ~/.agents/skills, <workspace>/.agents/skills, <workspace>/skills, या ~/.openclaw/skills के अंतर्गत कोई सिमलिंक तब छोड़ दिया जाता है जब उसका वास्तविक लक्ष्य उस रूट से बाहर समाधान होता है, जब तक कि लक्ष्य स्पष्ट रूप से विश्वसनीय न हो।
लिंक का निरीक्षण करें:
ls -l ~/.agents/skills/<name>realpath ~/.agents/skills/<name>openclaw config get skills.loadयदि लक्ष्य जानबूझकर निर्धारित किया गया है, तो प्रत्यक्ष Skill रूट और अनुमत सिमलिंक लक्ष्य दोनों कॉन्फ़िगर करें:
{ skills: { load: { extraDirs: ["~/Projects/manager/skills"], allowSymlinkTargets: ["~/Projects/manager/skills"], }, },}फिर नया सत्र शुरू करें या Skills वॉचर के रीफ़्रेश होने की प्रतीक्षा करें। यदि चल रही प्रक्रिया कॉन्फ़िगरेशन परिवर्तन से पहले की है, तो Gateway पुनः आरंभ करें।
~, /, या पूरा सिंक किया हुआ प्रोजेक्ट फ़ोल्डर जैसे व्यापक लक्ष्यों का उपयोग न करें। allowSymlinkTargets को उस वास्तविक Skill रूट तक सीमित रखें जिसमें विश्वसनीय SKILL.md डायरेक्टरियाँ हैं।
यदि Skill Workshop का लागू करना भी उन विश्वसनीय सिमलिंक वाली वर्कस्पेस Skill पथों के माध्यम से लिखना चाहिए, तो skills.workshop.allowSymlinkTargetWrites सक्षम करें। केवल-पढ़ने वाले साझा Skill रूट के लिए इसे अक्षम रखें।
संबंधित:
लंबे कॉन्टेक्स्ट के लिए Anthropic 429 अतिरिक्त उपयोग आवश्यक
जब लॉग/त्रुटियों में यह शामिल हो, तब इसका उपयोग करें: HTTP 429: rate_limit_error: Extra usage is required for long context requests।
openclaw logs --followopenclaw models statusopenclaw config get agents.defaults.modelsइनकी जाँच करें:
- चयनित Anthropic मॉडल GA-सक्षम 1M Claude 4.x मॉडल (Opus 4.6/4.7/4.8, Sonnet 4.6) है, या मॉडल कॉन्फ़िगरेशन में अभी भी पुराना
params.context1m: trueमौजूद है। - वर्तमान Anthropic क्रेडेंशियल लंबे कॉन्टेक्स्ट के उपयोग के लिए पात्र नहीं है।
- अनुरोध केवल लंबे सत्रों/मॉडल रन पर विफल होते हैं जिन्हें 1M कॉन्टेक्स्ट पथ की आवश्यकता होती है।
समाधान विकल्प:
मानक कॉन्टेक्स्ट विंडो का उपयोग करें
किसी मानक-विंडो मॉडल पर जाएँ, या पुराने मॉडल कॉन्फ़िगरेशन से पुराना
context1m हटाएँ जो 1M कॉन्टेक्स्ट के लिए GA-सक्षम नहीं है।
पात्र क्रेडेंशियल का उपयोग करें
ऐसा Anthropic क्रेडेंशियल उपयोग करें जो लंबे कॉन्टेक्स्ट अनुरोधों के लिए पात्र हो, या किसी Anthropic API कुंजी पर जाएँ।
फ़ॉलबैक मॉडल कॉन्फ़िगर करें
फ़ॉलबैक मॉडल कॉन्फ़िगर करें ताकि Anthropic के लंबे कॉन्टेक्स्ट अनुरोध अस्वीकार होने पर भी रन जारी रहें।
संबंधित:
अपस्ट्रीम 403 अवरुद्ध प्रतिक्रियाएँ
जब कोई अपस्ट्रीम LLM प्रदाता Your request was blocked जैसी सामान्य 403 लौटाए, तब इसका उपयोग करें।
यह न मानें कि यह हमेशा OpenClaw कॉन्फ़िगरेशन की समस्या है। प्रतिक्रिया किसी अपस्ट्रीम सुरक्षा परत से आ सकती है, जैसे CDN, WAF, बॉट-प्रबंधन नियम, या OpenAI-संगत एंडपॉइंट के सामने स्थित रिवर्स प्रॉक्सी।
openclaw statusopenclaw gateway statusopenclaw logs --followइनकी जाँच करें:
- एक ही प्रदाता के अंतर्गत कई मॉडल एक ही प्रकार से विफल हो रहे हैं।
- सामान्य प्रदाता API त्रुटि के बजाय HTML या सामान्य सुरक्षा पाठ।
- उसी अनुरोध समय के लिए प्रदाता-पक्ष की सुरक्षा घटनाएँ।
- एक छोटा प्रत्यक्ष
curlप्रोब सफल होता है, जबकि सामान्य SDK-आकार के अनुरोध विफल होते हैं।
जब साक्ष्य WAF/CDN अवरोध की ओर संकेत करें, तो पहले प्रदाता-पक्ष की फ़िल्टरिंग ठीक करें। OpenClaw द्वारा उपयोग किए जाने वाले API पथ के लिए सीमित दायरे वाला अनुमति या स्किप नियम पसंद करें, और पूरी साइट के लिए सुरक्षा अक्षम करने से बचें।
संबंधित:
स्थानीय OpenAI-संगत बैकएंड प्रत्यक्ष प्रोब पास करता है, लेकिन एजेंट रन विफल होते हैं
इस स्थिति में उपयोग करें:
curl ... /v1/modelsकाम करता है।- छोटे प्रत्यक्ष
/v1/chat/completionsकॉल काम करते हैं। - OpenClaw मॉडल रन केवल सामान्य एजेंट टर्न पर विफल होते हैं।
curl http://127.0.0.1:1234/v1/modelscurl http://127.0.0.1:1234/v1/chat/completions \ -H 'content-type: application/json' \ -d '{"model":"<id>","messages":[{"role":"user","content":"नमस्ते"}],"stream":false}'openclaw infer model run --model <provider/model> --prompt "नमस्ते" --jsonopenclaw logs --followइनकी जाँच करें:
- प्रत्यक्ष छोटे कॉल सफल होते हैं, लेकिन OpenClaw रन केवल बड़े प्रॉम्प्ट पर विफल होते हैं।
model_not_foundया 404 त्रुटियाँ, भले ही प्रत्यक्ष/v1/chat/completionsउसी मूल मॉडल आईडी के साथ काम करता हो।messages[].contentद्वारा स्ट्रिंग अपेक्षित होने से संबंधित बैकएंड त्रुटियाँ।- OpenAI-संगत स्थानीय बैकएंड के साथ रुक-रुक कर आने वाली
incomplete turn detected ... stopReason=stop payloads=0चेतावनियाँ। - बैकएंड क्रैश जो केवल अधिक प्रॉम्प्ट-टोकन संख्या या पूरे एजेंट रनटाइम प्रॉम्प्ट के साथ दिखाई देते हैं।
सामान्य संकेत
- स्थानीय MLX/vLLM-शैली के सर्वर के साथ
model_not_found: सत्यापित करें किbaseUrlमें/v1शामिल है,/v1/chat/completionsबैकएंड के लिएapi,"openai-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सेट करें।validation.keysया["role","content"]जैसी अनुमत संदेश कुंजियाँ: बैकएंड Chat Completions संदेशों पर OpenAI-शैली के रीप्ले मेटाडेटा को अस्वीकार करता है। समाधान:models.providers.<provider>.models[].compat.strictMessageKeys: trueसेट करें।incomplete turn detected ... stopReason=stop payloads=0: बैकएंड ने Chat Completions अनुरोध पूरा किया, लेकिन उस टर्न के लिए उपयोगकर्ता को दिखाई देने वाला कोई सहायक पाठ नहीं लौटाया। OpenClaw रीप्ले-सुरक्षित खाली OpenAI-संगत टर्न को एक बार दोबारा आज़माता है; लगातार विफलताएँ सामान्यतः दर्शाती हैं कि बैकएंड खाली/गैर-पाठ सामग्री भेज रहा है या अंतिम-उत्तर पाठ को दबा रहा है।- प्रत्यक्ष छोटे अनुरोध सफल होते हैं, लेकिन OpenClaw एजेंट रन बैकएंड/मॉडल क्रैश के साथ विफल होते हैं (उदाहरण के लिए कुछ
inferrsबिल्ड पर Gemma): OpenClaw ट्रांसपोर्ट संभवतः पहले से सही है; बैकएंड बड़े एजेंट-रनटाइम प्रॉम्प्ट आकार पर विफल हो रहा है। - टूल अक्षम करने के बाद विफलताएँ कम होती हैं, लेकिन समाप्त नहीं होतीं: टूल स्कीमा दबाव का हिस्सा थे, लेकिन शेष समस्या अभी भी अपस्ट्रीम मॉडल/सर्वर क्षमता या बैकएंड बग है।
समाधान विकल्प
- केवल-स्ट्रिंग Chat Completions बैकएंड के लिए
compat.requiresStringContent: trueसेट करें। - ऐसे सख्त Chat Completions बैकएंड के लिए
compat.strictMessageKeys: trueसेट करें जो प्रत्येक संदेश पर केवलroleऔरcontentस्वीकार करते हैं। - उन मॉडल/बैकएंड के लिए
compat.supportsTools: falseसेट करें जो OpenClaw की टूल स्कीमा सतह को विश्वसनीय रूप से संभाल नहीं सकते। - जहाँ संभव हो, प्रॉम्प्ट का दबाव कम करें: छोटा वर्कस्पेस बूटस्ट्रैप, संक्षिप्त सत्र इतिहास, हल्का स्थानीय मॉडल, या अधिक सुदृढ़ लंबे-कॉन्टेक्स्ट समर्थन वाला बैकएंड।
- यदि छोटे प्रत्यक्ष अनुरोध लगातार सफल होते रहें, लेकिन OpenClaw एजेंट टर्न अभी भी बैकएंड के भीतर क्रैश हों, तो इसे अपस्ट्रीम सर्वर/मॉडल की सीमा मानें और स्वीकृत पेलोड आकार के साथ वहाँ पुनरुत्पादन रिपोर्ट दर्ज करें।
संबंधित:
कोई उत्तर नहीं
यदि चैनल चालू हैं, लेकिन कोई उत्तर नहीं मिल रहा है, तो कुछ भी दोबारा कनेक्ट करने से पहले रूटिंग और नीति जाँचें।
openclaw statusopenclaw channels status --probeopenclaw pairing list --channel <channel> [--account <id>]openclaw config get channelsopenclaw logs --followइनकी जाँच करें:
- DM प्रेषकों के लिए पेयरिंग लंबित है।
- समूह में उल्लेख की शर्त (
requireMention,mentionPatterns)। - चैनल/समूह अनुमति-सूची में असंगतियाँ।
सामान्य संकेत:
drop guild message (mention required→ उल्लेख किए जाने तक समूह संदेश की उपेक्षा की गई।pairing request→ प्रेषक को अनुमोदन चाहिए।blocked/allowlist→ प्रेषक/चैनल को नीति द्वारा फ़िल्टर किया गया।
संबंधित:
डैशबोर्ड नियंत्रण UI कनेक्टिविटी
जब डैशबोर्ड/नियंत्रण UI कनेक्ट न हो, तो URL, प्रमाणीकरण मोड और सुरक्षित संदर्भ से जुड़ी मान्यताओं को सत्यापित करें।
openclaw gateway statusopenclaw statusopenclaw logs --followopenclaw doctoropenclaw gateway status --jsonइनकी जाँच करें:
- सही जाँच URL और डैशबोर्ड URL।
- क्लाइंट और Gateway के बीच प्रमाणीकरण मोड/टोकन में असंगति।
- जहाँ डिवाइस पहचान आवश्यक है, वहाँ HTTP का उपयोग।
यदि किसी अपडेट के बाद स्थानीय ब्राउज़र 127.0.0.1:18789 से कनेक्ट नहीं हो पा रहा है, तो पहले स्थानीय Gateway सेवा को पुनः चालू करें और पुष्टि करें कि वह डैशबोर्ड उपलब्ध करा रही है:
openclaw gateway restartlsof -i :18789curl http://127.0.0.1:18789यदि curl OpenClaw HTML लौटाता है, तो Gateway काम कर रहा है और शेष समस्या संभवतः ब्राउज़र कैश, किसी पुराने डीप लिंक या पुराने टैब की स्थिति से जुड़ी है। http://127.0.0.1:18789 को सीधे खोलें और डैशबोर्ड से आगे जाएँ। यदि पुनः आरंभ करने के बाद सेवा चालू नहीं रहती, तो openclaw gateway start चलाएँ और openclaw gateway status दोबारा जाँचें।
कनेक्शन / प्रमाणीकरण संकेत
device identity required→ असुरक्षित संदर्भ या डिवाइस प्रमाणीकरण अनुपस्थित है।origin not allowed→ ब्राउज़रOrigin,gateway.controlUi.allowedOriginsमें नहीं है (या आप स्पष्ट अनुमति-सूची के बिना किसी गैर-लूपबैक ब्राउज़र मूल से कनेक्ट कर रहे हैं)।device nonce required/device nonce mismatch→ क्लाइंट चुनौती-आधारित डिवाइस प्रमाणीकरण प्रवाह (connect.challenge+device.nonce) पूरा नहीं कर रहा है।device signature invalid/device signature expired→ क्लाइंट ने वर्तमान हैंडशेक के लिए गलत पेलोड (या पुराना टाइमस्टैम्प) हस्ताक्षरित किया।AUTH_TOKEN_MISMATCHके साथcanRetryWithDeviceToken=true→ क्लाइंट कैश किए गए डिवाइस टोकन के साथ एक विश्वसनीय पुनः प्रयास कर सकता है।- कैश किए गए टोकन वाला वह पुनः प्रयास, पेयर किए गए डिवाइस टोकन के साथ संग्रहीत कैश किए गए स्कोप सेट का पुनः उपयोग करता है। इसके बजाय स्पष्ट
deviceToken/ स्पष्टscopesकॉलर अपना अनुरोधित स्कोप सेट बनाए रखते हैं। AUTH_SCOPE_MISMATCH→ डिवाइस टोकन पहचाना गया, लेकिन उसके अनुमोदित स्कोप इस कनेक्शन अनुरोध को कवर नहीं करते; साझा Gateway टोकन बदलने के बजाय दोबारा पेयर करें या अनुरोधित स्कोप अनुबंध को अनुमोदित करें।- उस पुनः प्रयास पथ के बाहर, कनेक्शन प्रमाणीकरण की प्राथमिकता पहले स्पष्ट साझा टोकन/पासवर्ड, फिर स्पष्ट
deviceToken, फिर संग्रहीत डिवाइस टोकन और अंत में बूटस्ट्रैप टोकन है। - असिंक्रोनस Tailscale Serve नियंत्रण UI पथ पर, उसी
{scope, ip}के असफल प्रयासों को लिमिटर द्वारा विफलता दर्ज करने से पहले क्रमबद्ध किया जाता है। इसलिए एक ही क्लाइंट से एक साथ किए गए दो गलत पुनः प्रयास, दो सामान्य असंगतियों के बजाय दूसरे प्रयास परretry laterदिखा सकते हैं। - ब्राउज़र-मूल वाले लूपबैक क्लाइंट से
too many failed authentication attempts (retry later)→ उसी सामान्यीकृतOriginसे बार-बार होने वाली विफलताओं को अस्थायी रूप से अवरुद्ध कर दिया जाता है; कोई अन्य localhost मूल अलग बकेट का उपयोग करता है। - उस पुनः प्रयास के बाद बार-बार
unauthorized→ साझा टोकन/डिवाइस टोकन में विचलन; टोकन कॉन्फ़िगरेशन रीफ़्रेश करें और आवश्यकता होने पर डिवाइस टोकन को पुनः अनुमोदित/बदलें। gateway connect failed:→ गलत होस्ट/पोर्ट/URL लक्ष्य।
प्रमाणीकरण विवरण कोड का त्वरित मानचित्र
अगली कार्रवाई चुनने के लिए विफल connect प्रतिक्रिया से error.details.code का उपयोग करें:
| विवरण कोड | अर्थ | अनुशंसित कार्रवाई |
|---|---|---|
AUTH_TOKEN_MISSING |
क्लाइंट ने आवश्यक साझा टोकन नहीं भेजा। | क्लाइंट में टोकन चिपकाएँ/सेट करें और पुनः प्रयास करें। डैशबोर्ड पथों के लिए: openclaw config get gateway.auth.token, फिर नियंत्रण UI सेटिंग्स में चिपकाएँ। |
AUTH_TOKEN_MISMATCH |
साझा टोकन Gateway प्रमाणीकरण टोकन से मेल नहीं खाता। | यदि canRetryWithDeviceToken=true है, तो एक विश्वसनीय पुनः प्रयास की अनुमति दें। कैश किए गए टोकन वाले पुनः प्रयास संग्रहीत अनुमोदित स्कोप का पुनः उपयोग करते हैं; स्पष्ट deviceToken / scopes कॉलर अनुरोधित स्कोप बनाए रखते हैं। यदि फिर भी विफल हो, तो टोकन विचलन पुनर्प्राप्ति जाँच-सूची का पालन करें। |
AUTH_DEVICE_TOKEN_MISMATCH |
प्रति-डिवाइस कैश किया गया टोकन पुराना है या निरस्त कर दिया गया है। | डिवाइस CLI का उपयोग करके डिवाइस टोकन बदलें/पुनः अनुमोदित करें, फिर दोबारा कनेक्ट करें। |
AUTH_SCOPE_MISMATCH |
डिवाइस टोकन मान्य है, लेकिन उसकी अनुमोदित भूमिका/स्कोप इस कनेक्शन अनुरोध को कवर नहीं करते। | डिवाइस को दोबारा पेयर करें या अनुरोधित स्कोप अनुबंध को अनुमोदित करें; इसे साझा टोकन का विचलन न मानें। |
PAIRING_REQUIRED |
डिवाइस पहचान को अनुमोदन चाहिए। not-paired, scope-upgrade, role-upgrade या metadata-upgrade के लिए error.details.reason जाँचें और उपलब्ध होने पर requestId / remediationHint का उपयोग करें। |
लंबित अनुरोध अनुमोदित करें: openclaw devices list, फिर openclaw devices approve <requestId>। अनुरोधित पहुँच की समीक्षा करने के बाद स्कोप/भूमिका अपग्रेड के लिए भी यही प्रवाह उपयोग करें। |
डिवाइस प्रमाणीकरण v2 माइग्रेशन जाँच:
openclaw --versionopenclaw doctoropenclaw gateway statusयदि लॉग नॉन्स/हस्ताक्षर त्रुटियाँ दिखाते हैं, तो कनेक्ट होने वाले क्लाइंट को अपडेट करें और उसे सत्यापित करें:
connect.challenge की प्रतीक्षा करें
क्लाइंट Gateway द्वारा जारी connect.challenge की प्रतीक्षा करता है।
पेलोड पर हस्ताक्षर करें
क्लाइंट चुनौती से बँधे पेलोड पर हस्ताक्षर करता है।
डिवाइस नॉन्स भेजें
क्लाइंट समान चुनौती नॉन्स के साथ connect.params.device.nonce भेजता है।
यदि openclaw devices rotate / revoke / remove को अप्रत्याशित रूप से अस्वीकार किया जाता है:
- पेयर किए गए डिवाइस की टोकन-सत्र केवल अपने स्वयं के डिवाइस को प्रबंधित कर सकते हैं, जब तक कॉलर के पास
operator.adminभी न हो। openclaw devices rotate --scope ...केवल उन्हीं ऑपरेटर स्कोप का अनुरोध कर सकता है जो कॉलर सत्र के पास पहले से हैं।
संबंधित:
- कॉन्फ़िगरेशन (Gateway प्रमाणीकरण मोड)
- नियंत्रण UI
- डिवाइस
- दूरस्थ पहुँच
- विश्वसनीय प्रॉक्सी प्रमाणीकरण
Gateway सेवा चालू नहीं है
जब सेवा इंस्टॉल हो, लेकिन प्रक्रिया चालू न रहे, तब इसका उपयोग करें।
openclaw gateway statusopenclaw statusopenclaw logs --followopenclaw doctoropenclaw gateway status --deep # सिस्टम-स्तरीय सेवाओं को भी स्कैन करेंइनकी जाँच करें:
Runtime: stoppedके साथ निकास संकेत।- सेवा कॉन्फ़िगरेशन में असंगति (
Config (cli)बनामConfig (service))। - पोर्ट/लिसनर टकराव।
--deepका उपयोग होने पर अतिरिक्त launchd/systemd/schtasks इंस्टॉलेशन।Other gateway-like services detected (best effort)के सफ़ाई संकेत।
सामान्य संकेत
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फिर से चलाएँ। यदि आप Podman के माध्यम से OpenClaw चला रहे हैं, तो डिफ़ॉल्ट कॉन्फ़िगरेशन पथ~/.openclaw/openclaw.jsonहै।refusing to bind gateway ... without auth→ मान्य Gateway प्रमाणीकरण पथ (टोकन/पासवर्ड, या कॉन्फ़िगर किए जाने पर विश्वसनीय प्रॉक्सी) के बिना गैर-लूपबैक बाइंड।another gateway instance is already listening/EADDRINUSE→ पोर्ट टकराव।Other gateway-like services detected (best effort)→ पुराने या समानांतर launchd/systemd/schtasks यूनिट मौजूद हैं। अधिकांश सेटअप को प्रति मशीन एक Gateway रखना चाहिए; यदि आपको एक से अधिक की आवश्यकता है, तो पोर्ट + कॉन्फ़िगरेशन/स्थिति/वर्कस्पेस अलग रखें। /gateway#multiple-gateways-same-host देखें।- doctor से
System-level OpenClaw gateway service detected→ उपयोगकर्ता-स्तरीय सेवा अनुपस्थित होने के बावजूद 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 सेवा पुनः आरंभ करें।
संबंधित:
macOS Gateway चुपचाप प्रत्युत्तर देना बंद कर देता है, फिर डैशबोर्ड को छूने पर दोबारा शुरू हो जाता है
जब macOS होस्ट पर चैनल (Telegram, WhatsApp आदि) एक बार में कई मिनटों से लेकर कई घंटों तक निष्क्रिय हो जाएँ और आपके Control UI खोलते ही, SSH से कनेक्ट करते ही या होस्ट से किसी अन्य तरीके से इंटरैक्ट करते ही Gateway फिर से चालू होता दिखाई दे, तब इसका उपयोग करें। आम तौर पर openclaw status में कोई स्पष्ट लक्षण नहीं दिखता, क्योंकि जब तक आप जाँचते हैं, Gateway फिर से सक्रिय हो चुका होता है।
ls ~/.openclaw/logs/stability/ | tail -5openclaw gateway stability --bundle latestpmset -g log | grep -iE "sleep|wake|maintenance" | tail -50launchctl print gui/$UID/ai.openclaw.gateway | grep -E "state|last exit|runs"इनकी जाँच करें:
~/.openclaw/logs/stability/में एक या अधिक*-uncaught_exception.jsonबंडल, जिनमेंerror.codeकोENETDOWN,ENETUNREACH,EHOSTUNREACHयाECONNREFUSEDजैसे अस्थायी नेटवर्क कोड पर सेट किया गया हो।- क्रैश टाइमस्टैम्प से मेल खाती
Entering Sleep state due to 'Maintenance Sleep'याen0 driver is slow (msg: WillChangeState to 0)जैसीpmset -g logपंक्तियाँ। Power Nap / Maintenance Sleep कुछ समय के लिए Wi-Fi ड्राइवर को स्थिति 0 में डाल देता है; उस अवधि में होने वाला कोई भी आउटबाउंडconnect(), सामान्यतः पूर्ण नेटवर्क कनेक्टिविटी वाले होस्ट पर भीENETDOWNके साथ विफल हो सकता है। launchctl printआउटपुट, जिसमें हाल के कईrunsऔर एक एग्ज़िट कोड के साथstate = not runningदिखाई दे, विशेष रूप से जब क्रैश और अगले लॉन्च के बीच का अंतर सेकंड के बजाय लगभग एक घंटे का हो। macOS launchd क्रैश की शृंखला के बाद एक गैर-दस्तावेज़ीकृत री-स्पॉन सुरक्षा गेट लागू करता है, जिसके कारण इंटरैक्टिव लॉगिन, डैशबोर्ड कनेक्शन याlaunchctl kickstartजैसे किसी बाहरी ट्रिगर द्वारा उसे फिर से सक्रिय किए जाने तक वहKeepAlive=trueका पालन करना बंद कर सकता है।
सामान्य संकेत:
- ऐसा स्थिरता बंडल जिसका
error.code,ENETDOWNया कोई संबंधित कोड हो और कॉल स्टैक NodenetlookupAndConnect/Socket.connectकी ओर इंगित करे। OpenClaw2026.5.26और उसके बाद के संस्करण इन्हें हानिरहित अस्थायी नेटवर्क त्रुटियों के रूप में वर्गीकृत करते हैं, इसलिए अब ये शीर्ष-स्तरीय अनकॉट हैंडलर तक नहीं पहुँचतीं; यदि आप कोई पुराना रिलीज़ उपयोग कर रहे हैं, तो पहले अपग्रेड करें। - लंबी निष्क्रिय अवधियाँ, जो आपके Control UI से कनेक्ट करते ही या होस्ट में SSH करते ही समाप्त हो जाती हैं: उपयोगकर्ता को दिखाई देने वाली गतिविधि ही launchd के री-स्पॉन गेट को फिर से सक्रिय करती है, न कि डैशबोर्ड द्वारा Gateway पर की गई कोई कार्रवाई।
- पूरे दिन
runsकी संख्या बढ़ती रहे, लेकिन~/Library/Logs/openclaw/gateway.logमें उससे संबंधित कोईreceived SIG*; shutting downपंक्ति न हो: स्वच्छ शटडाउन में सिग्नल लॉग होता है; अस्थायी क्रैश में नहीं।
क्या करें:
-
यदि आप
2026.5.26से पहले का रिलीज़ चला रहे हैं, तो Gateway अपग्रेड करें। अपग्रेड करने के बाद, भविष्य कीENETDOWNत्रुटियाँ प्रक्रिया समाप्त करने के बजाय चेतावनियों के रूप में लॉग की जाएँगी। -
हमेशा चालू सर्वर के रूप में चलने वाले Mac mini / डेस्कटॉप होस्ट पर मेंटेनेंस स्लीप गतिविधि कम करें:
bash sudo pmset -a sleep 0 disksleep 0 standby 0 powernap 0इससे अंतर्निहित ड्राइवर अस्थिरता काफ़ी कम होती है, लेकिन पूरी तरह समाप्त नहीं होती। इन फ़्लैग के बावजूद सिस्टम TCP कीपअलाइव और mDNS रखरखाव के लिए कुछ मेंटेनेंस स्लीप अभी भी कर सकता है।
-
सक्रियता वॉचडॉग जोड़ें, ताकि भविष्य में क्रैश की शृंखला के बाद launchd द्वारा रोकी गई प्रक्रिया का तुरंत पता लगाया जा सके:
bash # launchd की जानकारी रखने वाली सक्रियता जाँच का उदाहरण, 5-मिनट के cron या LaunchAgent के लिए उपयुक्तstate=$(launchctl print gui/$UID/ai.openclaw.gateway 2>/dev/null | awk -F'= ' '/state =/ {print $2; exit}')if [ "$state" != "running" ]; then launchctl kickstart -k gui/$UID/ai.openclaw.gatewayfiउद्देश्य री-स्पॉन गेट को बाहरी रूप से फिर से सक्रिय करना है; क्रैश की शृंखला के बाद macOS पर केवल
KeepAlive=trueपर्याप्त नहीं है।
संबंधित:
डुप्लिकेट Gateway/Node LaunchAgents के साथ macOS launchd सुपरवाइज़र लूप
इसका उपयोग तब करें, जब कोई macOS इंस्टॉलेशन हर कुछ सेकंड में पुनः आरंभ होता रहे, openclaw
स्वास्थ्य जाँच स्वस्थ और अनुपलब्ध स्थितियों के बीच बदलती रहे और चैनल डिस्पैच रुक जाए,
भले ही सेवा चलती हुई दिखाई दे।
यह ऐसे पुराने इंस्टॉलेशन पर देखा गया था, जहाँ ai.openclaw.gateway और
ai.openclaw.node दोनों LaunchAgents सक्रिय थे और प्रत्येक
OPENCLAW_LAUNCHD_LABEL इंजेक्ट करता था। इस स्थिति में OpenClaw launchd
पर्यवेक्षण का पता लगा सकता है, पुनः आरंभ का नियंत्रण launchd को लौटाने का प्रयास कर सकता है और एक स्थिर Gateway प्रक्रिया के बजाय तेज़
EADDRINUSE/री-स्पॉन लूप में फँस सकता है।
for i in 1 2 3 4; do ps aux | grep 'openclaw.*index.js' | grep -v grep | awk '{print $2}' sleep 10done openclaw gateway status --deepopenclaw node statuslaunchctl print gui/$UID/ai.openclaw.gateway | grep -E 'state|last exit|runs'tail -n 80 ~/Library/Logs/openclaw/gateway.logइनकी जाँच करें:
- 30-सेकंड के नमूने में एक स्थिर प्रक्रिया के बजाय एक से अधिक Gateway PID।
gateway.logमेंEADDRINUSE,another gateway instance is already listeningया बार-बार दिखाई देने वाली पुनः आरंभ/हैंडऑफ़ पंक्तियाँ।- ऐसे होस्ट पर
~/Library/LaunchAgents/ai.openclaw.gateway.plistऔर~/Library/LaunchAgents/ai.openclaw.node.plistदोनों एक साथ लोड हों, जहाँ केवल एक प्रबंधित Gateway सेवा चलनी चाहिए।
क्या करें:
-
यदि इस होस्ट पर केवल Gateway सेवा चलनी चाहिए, तो OpenClaw के माध्यम से प्रबंधित Node सेवा हटाएँ। यदि आप रिमोट Node सुविधाओं के लिए Node सेवा पर सक्रिय रूप से निर्भर हैं, तो यह चरण छोड़ दें; इसे अनइंस्टॉल करने से इस होस्ट पर वे सुविधाएँ बंद हो जाती हैं:
bash openclaw node uninstall -
एक स्थायी Gateway रैपर इंस्टॉल करें, जो OpenClaw शुरू करने से पहले इनहेरिट किए गए launchd मार्कर साफ़ करे। समर्थित
--wrapperविकल्प का उपयोग करें;~/.openclaw/service-env/के अंतर्गत जनरेट की गई फ़ाइल संपादित न करें, क्योंकि सेवा पुनः इंस्टॉल, अपडेट और Doctor मरम्मत उस फ़ाइल को दोबारा जनरेट करते हैं:bash mkdir -p ~/.local/bincat >~/.local/bin/openclaw-launchd-workaround <<'EOF'#!/bin/shset -euunset OPENCLAW_LAUNCHD_LABEL LAUNCH_JOB_LABEL LAUNCH_JOB_NAME XPC_SERVICE_NAME || trueexec openclaw "$@"EOFchmod 700 ~/.local/bin/openclaw-launchd-workaround openclaw gateway install \ --wrapper ~/.local/bin/openclaw-launchd-workaround \ --forcegateway installबाध्य पुनः इंस्टॉल, अपडेट और doctor मरम्मत के दौरान रैपर पथ को बनाए रखता है। -
सत्यापित करें कि Gateway स्थिर है और RPC प्रदान कर रहा है, न कि केवल सुन रहा है:
bash openclaw gateway status --deep --require-rpc for i in 1 2 3 4; do ps aux | grep 'openclaw.*index.js' | grep -v grep | awk '{print $2}' sleep 10donePID नमूने में बदलते रहने वाले PID के समूह के बजाय एक स्थिर प्रक्रिया दिखनी चाहिए, और इनबाउंड चैनल डिस्पैच फिर से शुरू हो जाना चाहिए।
-
उस रिलीज़ में अपग्रेड करने के बाद, जिसमें अंतर्निहित दोहरा-LaunchAgent लूप ठीक हो चुका है, इस समाधान को हटाएँ और सामान्य प्रबंधित सेवा को फिर से इंस्टॉल करें:
bash OPENCLAW_WRAPPER= openclaw gateway install --forcerm ~/.local/bin/openclaw-launchd-workaround
संबंधित:
अधिक मेमोरी उपयोग के दौरान Gateway बंद हो जाता है
इसका उपयोग तब करें जब लोड के दौरान Gateway गायब हो जाए, पर्यवेक्षक OOM-जैसे पुनः आरंभ की रिपोर्ट करे, या लॉग में critical memory pressure bundle written का उल्लेख हो।
openclaw gateway status --deepopenclaw logs --followopenclaw gateway stability --bundle latestopenclaw gateway diagnostics exportइनकी तलाश करें:
- नवीनतम स्थिरता बंडल में
Reason: diagnostic.memory.pressure.critical। critical/rss_threshold,critical/heap_threshold, याcritical/rss_growthके साथMemory pressure:।- हीप सीमा के पास
V8 heap:मान। agents/<agent>/sessions/<session>.jsonlयाsessions/<session>.jsonlजैसीLargest session files:प्रविष्टियाँ।- जब Gateway किसी कंटेनर या मेमोरी-सीमित सेवा के अंदर चलता है, तब Linux cgroup मेमोरी काउंटर।
सामान्य संकेत:
critical memory pressure bundle writtenपुनः आरंभ से कुछ समय पहले दिखाई देता है → OpenClaw ने OOM से पहले का स्थिरता बंडल कैप्चर किया।openclaw gateway stability --bundle latestसे उसका निरीक्षण करें।memory pressure: level=criticalGateway लॉग में दिखाई देता है → OpenClaw ने गंभीर मेमोरी दबाव का पता लगाया और प्रक्रिया के भीतर उपलब्ध मेमोरी तथ्यों को रिकॉर्ड किया।Largest session files:एक बहुत बड़े संशोधित ट्रांसक्रिप्ट पथ की ओर संकेत करता है → बनाए रखे गए सत्र इतिहास को कम करें, सत्र वृद्धि का निरीक्षण करें, या पुनः आरंभ करने से पहले पुराने ट्रांसक्रिप्ट को सक्रिय स्टोर से बाहर ले जाएँ।V8 heap:प्रयुक्त बाइट्स हीप सीमा के करीब हैं → पहले प्रॉम्प्ट/सत्र दबाव कम करें या समवर्ती कार्य घटाएँ। प्रबंधित सेवा के लिए,openclaw gateway statusमेंGateway heap:का निरीक्षण करें; यदि उसमेंnot setलिखा है, तोopenclaw gateway install --forceसे पुराना सेवा मेटाडेटा फिर से जनरेट करें। परिवेशी शेलNODE_OPTIONSको जानबूझकर अनदेखा किया जाता है। निरंतर कार्यभार की पुष्टि करने और पर्याप्त नेटिव-मेमोरी गुंजाइश छोड़ने के बाद ही स्पष्ट पर्यवेक्षक-स्तरीय हीप ओवरराइड का उपयोग करें।Memory pressure: critical/rss_growth→ एक सैंपलिंग विंडो के भीतर मेमोरी तेज़ी से बढ़ी। किसी बड़े आयात, अनियंत्रित टूल आउटपुट, बार-बार पुनः प्रयास, या कतारबद्ध एजेंट कार्यों के बैच के लिए नवीनतम लॉग जाँचें।- लॉग में गंभीर मेमोरी दबाव दिखाई देता है, लेकिन कोई बंडल मौजूद नहीं है → उपलब्ध परिचालन साक्ष्य के लिए घटना के बाद
openclaw gateway diagnostics exportकैप्चर करें।
स्थिरता बंडल पेलोड-रहित है। इसमें परिचालन मेमोरी साक्ष्य और संशोधित सापेक्ष फ़ाइल पथ होते हैं, संदेश टेक्स्ट, Webhook बॉडी, क्रेडेंशियल, टोकन, कुकी या अपरिष्कृत सत्र आईडी नहीं। अपरिष्कृत लॉग कॉपी करने के बजाय बग रिपोर्ट में डायग्नोस्टिक्स एक्सपोर्ट संलग्न करें।
संबंधित:
Gateway ने अमान्य कॉन्फ़िगरेशन अस्वीकार किया
इसका उपयोग तब करें जब Gateway स्टार्टअप Invalid config के साथ विफल हो या हॉट रीलोड लॉग बताएँ कि उसने अमान्य संपादन छोड़ दिया।
openclaw logs --followopenclaw config fileopenclaw config validateopenclaw doctorइनकी तलाश करें:
Invalid config at ...config reload skipped (invalid config): ...Config write rejected: ...- सक्रिय कॉन्फ़िगरेशन के पास टाइमस्टैम्प वाली
openclaw.json.rejected.*फ़ाइल। - यदि
doctor --fixने टूटे हुए प्रत्यक्ष संपादन की मरम्मत की है, तो टाइमस्टैम्प वालीopenclaw.json.clobbered.*फ़ाइल। - OpenClaw प्रत्येक कॉन्फ़िगरेशन पथ के लिए नवीनतम 32
.clobbered.*फ़ाइलें रखता है और पुरानी फ़ाइलों को रोटेट करता है।
क्या हुआ
- स्टार्टअप, हॉट रीलोड या OpenClaw के स्वामित्व वाले लेखन के दौरान कॉन्फ़िगरेशन सत्यापन में विफल रहा।
openclaw.jsonको फिर से लिखने के बजाय Gateway स्टार्टअप सुरक्षित रूप से विफल हो जाता है।- हॉट रीलोड अमान्य बाहरी संपादनों को छोड़ देता है और वर्तमान रनटाइम कॉन्फ़िगरेशन को सक्रिय रखता है।
- OpenClaw के स्वामित्व वाले लेखन कमिट से पहले अमान्य/विनाशकारी पेलोड अस्वीकार करते हैं और
.rejected.*सहेजते हैं। openclaw doctor --fixमरम्मत का स्वामी है। यह गैर-JSON उपसर्ग हटा सकता है या अस्वीकृत पेलोड को.clobbered.*के रूप में सुरक्षित रखते हुए अंतिम ज्ञात सही प्रतिलिपि पुनर्स्थापित कर सकता है।- जब एक कॉन्फ़िगरेशन पथ के लिए कई मरम्मत होती हैं, तो OpenClaw पुरानी
.clobbered.*फ़ाइलों को रोटेट करता है, ताकि नवीनतम मरम्मत किया गया पेलोड उपलब्ध रहे।
निरीक्षण और सुधार
CONFIG="$(openclaw config file)"ls -lt "$CONFIG".clobbered.* "$CONFIG".rejected.* 2>/dev/null | headdiff -u "$CONFIG" "$(ls -t "$CONFIG".clobbered.* 2>/dev/null | head -n 1)"openclaw config validateopenclaw doctorसामान्य संकेत
.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→ उम्मीदवार में***जैसे संपादित सीक्रेट प्लेसहोल्डर थे।
सुधार के विकल्प
- doctor को प्रीफ़िक्सयुक्त/क्लॉबर किए गए कॉन्फ़िग की मरम्मत करने या अंतिम ज्ञात-सही स्थिति पुनर्स्थापित करने देने के लिए
openclaw doctor --fixचलाएँ। .clobbered.*या.rejected.*से केवल इच्छित कुंजियाँ कॉपी करें, फिर उन्हेंopenclaw config setयाconfig.patchसे लागू करें।- पुनः आरंभ करने से पहले
openclaw config validateचलाएँ। - यदि आप हाथ से संपादन करते हैं, तो पूरा JSON5 कॉन्फ़िग रखें, केवल वह आंशिक ऑब्जेक्ट नहीं जिसे आप बदलना चाहते थे।
संबंधित:
Gateway प्रोब चेतावनियाँ
इसका उपयोग तब करें जब openclaw gateway probe किसी चीज़ तक पहुँचता हो, लेकिन फिर भी चेतावनी ब्लॉक प्रिंट करता हो।
openclaw gateway probeopenclaw gateway probe --jsonopenclaw gateway probe --ssh user@gateway-hostइनकी तलाश करें:
- JSON आउटपुट में
warnings[].codeऔरprimaryTargetId। - क्या चेतावनी SSH फ़ॉलबैक, एकाधिक Gateway, अनुपलब्ध स्कोप या अनसुलझे प्रमाणीकरण संदर्भों के बारे में है।
सामान्य संकेत:
SSH tunnel failed to start; falling back to direct probes.→ SSH सेटअप विफल हुआ, लेकिन कमांड ने फिर भी सीधे कॉन्फ़िगर किए गए/लूपबैक लक्ष्यों को आज़माया।multiple reachable gateway identities detected→ अलग-अलग Gateway ने उत्तर दिया, या OpenClaw यह प्रमाणित नहीं कर सका कि पहुँच योग्य लक्ष्य एक ही Gateway हैं। एक ही Gateway के लिए SSH टनल, प्रॉक्सी URL या कॉन्फ़िगर किए गए रिमोट URL को अनेक ट्रांसपोर्ट वाला एक Gateway माना जाता है, भले ही ट्रांसपोर्ट पोर्ट अलग हों।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 मानें;--jsonआउटपुट मेंconnect.okऔरconnect.rpcOkकी तुलना करें।Capability: pairing-pendingयाgateway closed (1008): pairing required→ Gateway ने उत्तर दिया, लेकिन सामान्य ऑपरेटर पहुँच से पहले इस क्लाइंट को अभी भी पेयरिंग/स्वीकृति चाहिए।- अनसुलझे
gateway.auth.*/gateway.remote.*SecretRef चेतावनी टेक्स्ट → विफल लक्ष्य के लिए इस कमांड पथ में प्रमाणीकरण सामग्री उपलब्ध नहीं थी।
संबंधित:
चैनल कनेक्ट है, संदेश प्रवाहित नहीं हो रहे
यदि चैनल की स्थिति कनेक्टेड है लेकिन संदेश प्रवाह बंद है, तो नीति, अनुमतियों और चैनल-विशिष्ट डिलीवरी नियमों पर ध्यान दें।
openclaw channels status --probeopenclaw pairing list --channel <channel> [--account <id>]openclaw status --deepopenclaw logs --followopenclaw config get channelsइनकी तलाश करें:
- DM नीति (
pairing,allowlist,open,disabled)। - समूह अनुमतिसूची और उल्लेख आवश्यकताएँ।
- अनुपलब्ध चैनल API अनुमतियाँ/स्कोप।
सामान्य संकेत:
mention required→ समूह उल्लेख नीति ने संदेश को अनदेखा किया।pairing/ लंबित स्वीकृति ट्रेस → प्रेषक स्वीकृत नहीं है।missing_scope,not_in_channel,Forbidden,401/403→ चैनल प्रमाणीकरण/अनुमतियों की समस्या।
संबंधित:
Cron और Heartbeat डिलीवरी
यदि Cron या Heartbeat नहीं चला अथवा डिलीवर नहीं हुआ, तो पहले शेड्यूलर की स्थिति और फिर डिलीवरी लक्ष्य सत्यापित करें।
openclaw cron statusopenclaw cron listopenclaw cron runs --id <jobId> --limit 20openclaw system heartbeat lastopenclaw 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मौजूद है, लेकिन उसमें केवल खाली सामग्री, टिप्पणी, हेडर, फ़ेंस या खाली-चेकलिस्ट स्कैफ़ोल्डिंग है, इसलिए OpenClaw मॉडल कॉल छोड़ देता है।heartbeat skippedके साथreason=no-tasks-due→HEARTBEAT.mdमेंtasks:ब्लॉक है, लेकिन इस टिक पर कोई भी कार्य नियत नहीं है।heartbeat: unknown accountId→ Heartbeat डिलीवरी लक्ष्य के लिए अमान्य खाता आईडी।heartbeat skippedके साथreason=dm-blocked→ Heartbeat लक्ष्य DM-शैली के गंतव्य में रिज़ॉल्व हुआ, जबकिagents.defaults.heartbeat.directPolicy(या प्रति-एजेंट ओवरराइड) कोblockपर सेट किया गया है।
संबंधित:
Node पेयर है, टूल विफल होता है
यदि कोई Node पेयर है लेकिन टूल विफल होते हैं, तो फ़ोरग्राउंड, अनुमति और स्वीकृति की स्थिति को अलग-अलग जाँचें।
openclaw nodes statusopenclaw nodes describe --node <idOrNameOrIp>openclaw approvals get --node <idOrNameOrIp>openclaw logs --followopenclaw statusइनकी तलाश करें:
- अपेक्षित क्षमताओं के साथ Node ऑनलाइन हो।
- कैमरा/माइक/स्थान/स्क्रीन के लिए OS अनुमति अनुदान।
- Exec स्वीकृतियाँ और अनुमतिसूची की स्थिति।
सामान्य संकेत:
NODE_BACKGROUND_UNAVAILABLE→ Node ऐप फ़ोरग्राउंड में होना चाहिए।*_PERMISSION_REQUIRED/LOCATION_PERMISSION_REQUIRED→ OS अनुमति अनुपलब्ध है।SYSTEM_RUN_DENIED: approval required→ Exec स्वीकृति लंबित है।SYSTEM_RUN_DENIED: allowlist miss→ कमांड को अनुमतिसूची ने अवरुद्ध किया।
संबंधित:
ब्राउज़र टूल विफल होता है
इसका उपयोग तब करें जब Gateway स्वयं स्वस्थ होने के बावजूद ब्राउज़र टूल की कार्रवाइयाँ विफल हों।
openclaw browser statusopenclaw browser start --browser-profile openclawopenclaw browser profilesopenclaw logs --followopenclaw doctorइनकी तलाश करें:
- क्या
plugins.allowसेट है और उसमेंbrowserशामिल है। - मान्य ब्राउज़र निष्पादन योग्य पथ।
- CDP प्रोफ़ाइल की पहुँच-योग्यता।
existing-session/userप्रोफ़ाइलों के लिए स्थानीय Chrome की उपलब्धता।
Plugin / निष्पादन योग्य संकेत
unknown command "browser"याunknown command 'browser'→ बंडल किया गया ब्राउज़र Pluginplugins.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 URLfile:या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 browser 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का उपयोग होना चाहिए, CSS--elementका नहीं।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.→profile="user"/ Chrome MCP मौजूदा-सत्र प्रोफ़ाइलों परact:typeके लिएtimeoutMsछोड़ दें, या कस्टम टाइमआउट आवश्यक होने पर प्रबंधित/CDP ब्राउज़र प्रोफ़ाइल का उपयोग करें।response body is not supported for existing-session profiles yet.→responsebodyके लिए अभी भी प्रबंधित ब्राउज़र या रॉ CDP प्रोफ़ाइल आवश्यक है।- केवल-अटैच या रिमोट CDP प्रोफ़ाइलों पर पुराने व्यूपोर्ट / डार्क-मोड / लोकेल / ऑफ़लाइन ओवरराइड → पूरे Gateway को पुनः आरंभ किए बिना सक्रिय नियंत्रण सत्र बंद करने और Playwright/CDP एम्यूलेशन स्थिति मुक्त करने के लिए
openclaw browser stop --browser-profile <name>चलाएँ।
संबंधित:
यदि आपने अपग्रेड किया और अचानक कुछ खराब हो गया
अपग्रेड के बाद होने वाली अधिकांश खराबी कॉन्फ़िग विचलन या अब लागू किए जा रहे अधिक सख्त डिफ़ॉल्ट के कारण होती है।
1. प्रमाणीकरण और URL ओवरराइड का व्यवहार बदल गया है
openclaw gateway statusopenclaw config get gateway.modeopenclaw config get gateway.remote.urlopenclaw config get gateway.auth.modeक्या जाँचें:
- यदि
gateway.mode=remote, तो हो सकता है कि CLI कॉल रिमोट को लक्षित कर रही हों, जबकि आपकी स्थानीय सेवा ठीक हो। - स्पष्ट
--urlकॉल संग्रहीत क्रेडेंशियल पर फ़ॉलबैक नहीं करतीं।
सामान्य संकेत:
gateway connect failed:→ गलत URL लक्ष्य।unauthorized→ एंडपॉइंट पहुँच योग्य है, लेकिन प्रमाणीकरण गलत है।
2. बाइंड और प्रमाणीकरण की सुरक्षा सीमाएँ अधिक सख्त हैं
openclaw config get gateway.bindopenclaw config get gateway.auth.modeopenclaw config get gateway.auth.tokenopenclaw gateway statusopenclaw logs --followक्या जाँचें:
- नॉन-लूपबैक बाइंड (
lan,tailnet,custom) के लिए एक मान्य Gateway प्रमाणीकरण पथ आवश्यक है: साझा टोकन/पासवर्ड प्रमाणीकरण या सही ढंग से कॉन्फ़िगर किया गया नॉन-लूपबैकtrusted-proxyडिप्लॉयमेंट। gateway.tokenजैसी पुरानी कुंजियाँgateway.auth.tokenकी जगह नहीं लेतीं।
सामान्य संकेत:
refusing to bind gateway ... without auth→ मान्य Gateway प्रमाणीकरण पथ के बिना नॉन-लूपबैक बाइंड।- रनटाइम चलते समय
Connectivity probe: failed→ Gateway सक्रिय है, लेकिन वर्तमान प्रमाणीकरण/URL से उस तक पहुँचा नहीं जा सकता।
3. पेयरिंग और डिवाइस पहचान की स्थिति बदल गई है
openclaw devices listopenclaw pairing list --channel <channel> [--account <id>]openclaw logs --followopenclaw doctorक्या जाँचें:
- डैशबोर्ड/नोड्स के लिए लंबित डिवाइस अनुमोदन।
- नीति या पहचान में बदलाव के बाद लंबित DM पेयरिंग अनुमोदन।
सामान्य संकेत:
device identity required→ डिवाइस प्रमाणीकरण की शर्त पूरी नहीं हुई।pairing required→ प्रेषक/डिवाइस को अनुमोदित करना आवश्यक है।
यदि जाँच के बाद भी सेवा कॉन्फ़िगरेशन और रनटाइम में अंतर हो, तो उसी प्रोफ़ाइल/स्थिति डायरेक्टरी से सेवा मेटाडेटा फिर से इंस्टॉल करें:
openclaw gateway install --forceopenclaw gateway restartसंबंधित: