Start here
عیبیابی عمومی
اگر فقط ۲ دقیقه وقت دارید، از این صفحه بهعنوان ورودی تریاژ استفاده کنید.
۶۰ ثانیهٔ اول
این نردبان دقیق را بهترتیب اجرا کنید:
openclaw status
openclaw status --all
openclaw gateway probe
openclaw gateway status
openclaw doctor
openclaw channels status --probe
openclaw logs --follow
خروجی خوب در یک خط:
openclaw status→ کانالهای پیکربندیشده را نشان میدهد و خطای احراز هویت آشکاری ندارد.openclaw status --all→ گزارش کامل موجود و قابل اشتراکگذاری است.openclaw gateway probe→ هدف gateway مورد انتظار قابل دسترسی است (Reachable: yes).Capability: ...نشان میدهد probe چه سطح احراز هویتی را توانسته اثبات کند، وRead probe: limited - missing scope: operator.readتشخیص تنزلیافته است، نه شکست اتصال.openclaw gateway status→Runtime: running،Connectivity probe: ok، و یک خط قابل قبولCapability: .... اگر به اثبات RPC با دامنهٔ read هم نیاز دارید از--require-rpcاستفاده کنید.openclaw doctor→ خطای مسدودکنندهٔ config/service ندارد.openclaw channels status --probe→ Gateway قابل دسترسی، وضعیت زندهٔ transport را برای هر حساب همراه با نتایج probe/audit مانندworksیاaudit okبرمیگرداند؛ اگر Gateway در دسترس نباشد، دستور به خلاصههای فقط config برمیگردد.openclaw logs --follow→ فعالیت پایدار، بدون خطاهای fatal تکرارشونده.
Anthropic long context 429
اگر این را دیدید:
HTTP 429: rate_limit_error: Extra usage is required for long context requests،
به /gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context بروید.
backend محلی سازگار با OpenAI مستقیم کار میکند اما در OpenClaw شکست میخورد
اگر backend محلی یا خودمیزبان شما برای /v1 به probeهای مستقیم کوچک
/v1/chat/completions پاسخ میدهد اما در openclaw infer model run یا نوبتهای معمول
agent شکست میخورد:
- اگر خطا اشاره میکند که
messages[].contentانتظار string دارد،models.providers.<provider>.models[].compat.requiresStringContent: trueرا تنظیم کنید. - اگر backend هنوز فقط در نوبتهای agent OpenClaw شکست میخورد،
models.providers.<provider>.models[].compat.supportsTools: falseرا تنظیم کنید و دوباره تلاش کنید. - اگر فراخوانیهای مستقیم بسیار کوچک هنوز کار میکنند اما promptهای بزرگتر OpenClaw باعث crash شدن backend میشوند، مشکل باقیمانده را بهعنوان محدودیت model/server بالادستی در نظر بگیرید و در runbook عمیق ادامه دهید: /gateway/troubleshooting#local-openai-compatible-backend-passes-direct-probes-but-agent-runs-fail
نصب Plugin با خطای نبود openclaw extensions شکست میخورد
اگر نصب با package.json missing openclaw.extensions شکست بخورد، بستهٔ Plugin
از ساختار قدیمیای استفاده میکند که OpenClaw دیگر نمیپذیرد.
در بستهٔ Plugin اصلاح کنید:
openclaw.extensionsرا بهpackage.jsonاضافه کنید.- ورودیها را به فایلهای runtime ساختهشده اشاره دهید (معمولاً
./dist/index.js). - Plugin را دوباره منتشر کنید و دوباره
openclaw plugins install <package>را اجرا کنید.
مثال:
{
"name": "@openclaw/my-plugin",
"version": "1.2.3",
"openclaw": {
"extensions": ["./dist/index.js"]
}
}
مرجع: معماری Plugin
Plugin حاضر است اما بهدلیل مالکیت مشکوک مسدود شده است
اگر openclaw doctor، راهاندازی، یا هشدارهای startup نشان دهند:
blocked plugin candidate: suspicious ownership (... uid=1000, expected uid=0 or root)
plugin present but blocked
فایلهای Plugin متعلق به کاربر Unix متفاوتی نسبت به پردازشی هستند که آنها را load میکند. config مربوط به Plugin را حذف نکنید. مالکیت فایل را اصلاح کنید یا OpenClaw را با همان کاربری اجرا کنید که مالک دایرکتوری state است.
نصبهای Docker معمولاً با کاربر node (uid 1000) اجرا میشوند. برای setup پیشفرض Docker،
bind mountهای میزبان را تعمیر کنید:
sudo chown -R 1000:1000 /path/to/openclaw-config /path/to/openclaw-workspace
openclaw doctor --fix
اگر عمداً OpenClaw را بهصورت root اجرا میکنید، ریشهٔ Plugin مدیریتشده را در عوض به مالکیت root تعمیر کنید:
sudo chown -R root:root /path/to/openclaw-config/npm
openclaw doctor --fix
مستندات عمیقتر:
درخت تصمیم
flowchart TD
A[OpenClaw is not working] --> B{What breaks first}
B --> C[No replies]
B --> D[Dashboard or Control UI will not connect]
B --> E[Gateway will not start or service not running]
B --> F[Channel connects but messages do not flow]
B --> G[Cron or heartbeat did not fire or did not deliver]
B --> H[Node is paired but camera canvas screen exec fails]
B --> I[Browser tool fails]
C --> C1[/No replies section/]
D --> D1[/Control UI section/]
E --> E1[/Gateway section/]
F --> F1[/Channel flow section/]
G --> G1[/Automation section/]
H --> H1[/Node tools section/]
I --> I1[/Browser section/]
بدون پاسخ
openclaw status
openclaw gateway status
openclaw channels status --probe
openclaw pairing list --channel <channel> [--account <id>]
openclaw logs --follow
خروجی خوب شبیه این است:
Runtime: runningConnectivity probe: okCapability: read-only،write-capable، یاadmin-capable- کانال شما transport را متصل نشان میدهد و، در جاهایی که پشتیبانی میشود،
worksیاaudit okرا درchannels status --probeنشان میدهد - فرستنده approved به نظر میرسد (یا سیاست DM باز/allowlist است)
امضاهای رایج log:
drop guild message (mention required→ mention gating پیام را در Discord مسدود کرده است.pairing request→ فرستنده تایید نشده و منتظر تایید pairing در DM است.blocked/allowlistدر logهای کانال → فرستنده، room، یا group فیلتر شده است.
صفحههای عمیق:
Dashboard یا Control UI وصل نمیشود
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
خروجی خوب شبیه این است:
Dashboard: http://...درopenclaw gateway statusنمایش داده میشودConnectivity probe: okCapability: read-only،write-capable، یاadmin-capable- حلقهٔ auth در logها وجود ندارد
امضاهای رایج log:
device identity required→ کانتکست HTTP/غیرامن نمیتواند device auth را کامل کند.origin not allowed→Originمرورگر برای هدف Gateway مربوط به Control UI مجاز نیست.AUTH_TOKEN_MISMATCHبا راهنماییهای retry (canRetryWithDeviceToken=true) → ممکن است یک retry قابل اعتماد با device-token بهصورت خودکار رخ دهد.- آن retry با cached-token همان مجموعهٔ scope ذخیرهشده با device token جفتشده را دوباره استفاده میکند. فراخوانهای دارای
deviceTokenصریح /scopesصریح مجموعهٔ scope درخواستی خود را نگه میدارند. - در مسیر async Tailscale Serve Control UI، تلاشهای ناموفق برای همان
{scope, ip}پیش از ثبت failure توسط limiter سریالی میشوند، بنابراین retry بد همزمان دوم میتواند از قبلretry laterنشان دهد. too many failed authentication attempts (retry later)از یک origin مرورگر localhost → شکستهای تکراری از همانOriginبهطور موقت lock out میشوند؛ یک origin localhost دیگر از bucket جداگانه استفاده میکند.unauthorizedتکراری پس از آن retry → token/password اشتباه، ناهماهنگی auth mode، یا device token جفتشدهٔ stale.gateway connect failed:→ UI به URL/port اشتباه اشاره میکند یا Gateway در دسترس نیست.
صفحههای عمیق:
Gateway شروع نمیشود یا service نصب شده اما اجرا نمیشود
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
خروجی خوب شبیه این است:
Service: ... (loaded)Runtime: runningConnectivity probe: okCapability: read-only،write-capable، یاadmin-capable
امضاهای رایج log:
Gateway start blocked: set gateway.mode=localیاexisting config is missing gateway.mode→ حالت Gateway برابر remote است، یا فایل config مهر local-mode را ندارد و باید تعمیر شود.refusing to bind gateway ... without auth→ bind غیر local loopback بدون مسیر معتبر auth برای Gateway (token/password، یا trusted-proxy در جایی که پیکربندی شده باشد).another gateway instance is already listeningیاEADDRINUSE→ port از قبل اشغال است.
صفحههای عمیق:
کانال وصل میشود اما پیامها جریان پیدا نمیکنند
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
خروجی خوب شبیه این است:
- transport کانال متصل است.
- بررسیهای pairing/allowlist عبور میکنند.
- mentionها در جاهایی که لازم است تشخیص داده میشوند.
امضاهای رایج log:
mention required→ group mention gating پردازش را مسدود کرده است.pairing/pending→ فرستندهٔ DM هنوز تایید نشده است.not_in_channel،missing_scope،Forbidden،401/403→ مشکل permission token کانال.
صفحههای عمیق:
Cron یا Heartbeat اجرا نشد یا تحویل نداد
openclaw status
openclaw gateway status
openclaw cron status
openclaw cron list
openclaw cron runs --id <jobId> --limit 20
openclaw logs --follow
خروجی خوب شبیه این است:
cron.statusفعال بودن را همراه با wake بعدی نشان میدهد.cron runsورودیهای اخیرokرا نشان میدهد.- Heartbeat فعال است و خارج از active hours نیست.
امضاهای رایج log:
cron: scheduler disabled; jobs will not run automatically→ Cron غیرفعال است.heartbeat skippedباreason=quiet-hours→ خارج از active hours پیکربندیشده.heartbeat skippedباreason=empty-heartbeat-file→HEARTBEAT.mdوجود دارد اما فقط شامل scaffolding خالی/فقط header است.heartbeat skippedباreason=no-tasks-due→ حالت task درHEARTBEAT.mdفعال است اما هنوز موعد هیچیک از intervalهای task نرسیده است.heartbeat skippedباreason=alerts-disabled→ همهٔ visibility مربوط به Heartbeat غیرفعال است (showOk،showAlerts، وuseIndicatorهمگی خاموش هستند).requests-in-flight→ lane اصلی مشغول است؛ wake مربوط به Heartbeat به تعویق افتاده است.unknown accountId→ حساب هدف تحویل Heartbeat وجود ندارد.
صفحههای عمیق:
Node جفت شده اما tool برای camera canvas screen exec شکست میخورد
openclaw status
openclaw gateway status
openclaw nodes status
openclaw nodes describe --node <idOrNameOrIp>
openclaw logs --follow
خروجی خوب شبیه این است:
- Node بهعنوان متصل و جفتشده برای role
nodeفهرست شده است. - Capability برای دستوری که فراخوانی میکنید وجود دارد.
- وضعیت permission برای tool اعطا شده است.
امضاهای رایج log:
NODE_BACKGROUND_UNAVAILABLE→ برنامه Node را به پیشزمینه بیاورید.*_PERMISSION_REQUIRED→ مجوز سیستمعامل رد شده یا موجود نیست.SYSTEM_RUN_DENIED: approval required→ تأیید exec در انتظار است.SYSTEM_RUN_DENIED: allowlist miss→ دستور در فهرست مجاز exec نیست.
صفحههای عمیق:
Exec ناگهان تأیید میخواهد
openclaw config get tools.exec.host
openclaw config get tools.exec.security
openclaw config get tools.exec.ask
openclaw gateway restart
چه چیزی تغییر کرده است:
- اگر
tools.exec.hostتنظیم نشده باشد، مقدار پیشفرضautoاست. - وقتی runtime سندباکس فعال باشد،
host=autoبهsandboxتبدیل میشود؛ در غیر این صورت بهgateway. host=autoفقط مسیریابی است؛ رفتار بدون درخواست «YOLO» ازsecurity=fullبههمراهask=offروی gateway/node میآید.- روی
gatewayوnode، مقدار تنظیمنشدهtools.exec.securityبهصورت پیشفرضfullاست. - مقدار تنظیمنشده
tools.exec.askبهصورت پیشفرضoffاست. - نتیجه: اگر تأییدها را میبینید، یک سیاست محلی میزبان یا مخصوص نشست، exec را از پیشفرضهای فعلی سختگیرانهتر کرده است.
بازیابی رفتار پیشفرض فعلی بدون تأیید:
openclaw config set tools.exec.host gateway
openclaw config set tools.exec.security full
openclaw config set tools.exec.ask off
openclaw gateway restart
جایگزینهای امنتر:
- اگر فقط مسیریابی پایدار میزبان میخواهید، فقط
tools.exec.host=gatewayرا تنظیم کنید. - اگر exec میزبان میخواهید اما همچنان میخواهید نبودن در فهرست مجاز بازبینی شود، از
security=allowlistباask=on-missاستفاده کنید. - اگر میخواهید
host=autoدوباره بهsandboxتبدیل شود، حالت سندباکس را فعال کنید.
امضاهای رایج گزارش:
Approval required.→ دستور منتظر/approve ...است.SYSTEM_RUN_DENIED: approval required→ تأیید exec میزبان Node در انتظار است.exec host=sandbox requires a sandbox runtime for this session→ انتخاب ضمنی/صریح سندباکس انجام شده، اما حالت سندباکس خاموش است.
صفحههای عمیق:
ابزار مرورگر ناموفق میشود
openclaw status
openclaw gateway status
openclaw browser status
openclaw logs --follow
openclaw doctor
خروجی خوب شبیه این است:
- وضعیت مرورگر
running: trueو یک مرورگر/نمایه انتخابشده را نشان میدهد. openclawشروع میشود، یاuserمیتواند زبانههای محلی Chrome را ببیند.
امضاهای رایج گزارش:
unknown command "browser"یاunknown command 'browser'→plugins.allowتنظیم شده و شاملbrowserنیست.Failed to start Chrome CDP on port→ راهاندازی مرورگر محلی ناموفق بود.browser.executablePath not found→ مسیر باینری پیکربندیشده اشتباه است.browser.cdpUrl must be http(s) or ws(s)→ نشانی CDP پیکربندیشده از scheme پشتیبانینشده استفاده میکند.browser.cdpUrl has invalid port→ نشانی CDP پیکربندیشده پورت نامعتبر یا خارج از محدوده دارد.No Chrome tabs found for profile="user"→ نمایه اتصال Chrome MCP هیچ زبانه باز محلی Chrome ندارد.Remote CDP for profile "<name>" is not reachable→ نقطه پایانی CDP راهدور پیکربندیشده از این میزبان در دسترس نیست.Browser attachOnly is enabled ... not reachableیاBrowser attachOnly is enabled and CDP websocket ... is not reachable→ نمایه فقط-اتصال هیچ هدف CDP زندهای ندارد.- overrideهای کهنه viewport / حالت تاریک / locale / آفلاین روی نمایههای فقط-اتصال یا CDP راهدور → برای بستن نشست کنترل فعال و آزاد کردن وضعیت شبیهسازی بدون راهاندازی دوباره gateway،
openclaw browser stop --browser-profile <name>را اجرا کنید.
صفحههای عمیق:
مرتبط
- پرسشهای متداول — پرسشهای پرتکرار
- عیبیابی Gateway — مشکلات مخصوص Gateway
- Doctor — بررسیها و تعمیرهای خودکار سلامت
- عیبیابی کانال — مشکلات اتصال کانال
- عیبیابی خودکارسازی — مشکلات Cron و Heartbeat