Nodes and media
عیبیابی Node
از این صفحه زمانی استفاده کنید که یک Node در وضعیت دیده میشود، اما ابزارهای Node شکست میخورند.
نردبان فرمان
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
سپس بررسیهای مخصوص Node را اجرا کنید:
openclaw nodes status
openclaw nodes describe --node <idOrNameOrIp>
openclaw approvals get --node <idOrNameOrIp>
نشانههای سالم:
- Node متصل و برای نقش
nodeجفت شده است. nodes describeقابلیتی را که فراخوانی میکنید در بر دارد.- تأییدهای Exec حالت/فهرست مجاز مورد انتظار را نشان میدهند.
الزامات پیشزمینه
canvas.*، camera.*، و screen.* روی Nodeهای iOS/Android فقط در پیشزمینه هستند.
بررسی و رفع سریع:
openclaw nodes describe --node <idOrNameOrIp>
openclaw nodes canvas snapshot --node <idOrNameOrIp>
openclaw logs --follow
اگر NODE_BACKGROUND_UNAVAILABLE را میبینید، برنامه Node را به پیشزمینه بیاورید و دوباره تلاش کنید.
ماتریس مجوزها
| قابلیت | iOS | Android | برنامه Node در macOS | کد خطای معمول |
|---|---|---|---|---|
camera.snap, camera.clip |
دوربین (+ میکروفون برای صدای کلیپ) | دوربین (+ میکروفون برای صدای کلیپ) | دوربین (+ میکروفون برای صدای کلیپ) | *_PERMISSION_REQUIRED |
screen.record |
ضبط صفحه (+ میکروفون اختیاری) | اعلان ضبط صفحه (+ میکروفون اختیاری) | ضبط صفحه | *_PERMISSION_REQUIRED |
location.get |
هنگام استفاده یا همیشه (بسته به حالت) | مکان پیشزمینه/پسزمینه بر اساس حالت | مجوز مکان | LOCATION_PERMISSION_REQUIRED |
system.run |
ناموجود (مسیر میزبان Node) | ناموجود (مسیر میزبان Node) | تأییدهای Exec لازم است | SYSTEM_RUN_DENIED |
جفتسازی در برابر تأییدها
اینها دروازههای متفاوتی هستند:
- جفتسازی دستگاه: آیا این Node میتواند به Gateway وصل شود؟
- سیاست فرمان Node در Gateway: آیا شناسه فرمان RPC با
gateway.nodes.allowCommands/denyCommandsو پیشفرضهای پلتفرم مجاز است؟ - تأییدهای Exec: آیا این Node میتواند یک فرمان shell مشخص را بهصورت محلی اجرا کند؟
بررسیهای سریع:
openclaw devices list
openclaw nodes status
openclaw approvals get --node <idOrNameOrIp>
openclaw approvals allowlist add --node <idOrNameOrIp> "/usr/bin/uname"
اگر جفتسازی وجود ندارد، ابتدا دستگاه Node را تأیید کنید.
اگر nodes describe فرمانی را ندارد، سیاست فرمان Node در Gateway را بررسی کنید و ببینید آیا Node واقعاً هنگام اتصال آن فرمان را اعلام کرده است یا نه.
اگر جفتسازی درست است اما system.run شکست میخورد، تأییدهای Exec/فهرست مجاز را روی آن Node اصلاح کنید.
جفتسازی Node یک دروازه هویت/اعتماد است، نه سطح تأیید برای هر فرمان. برای system.run، سیاست هر Node در فایل تأییدهای Exec همان Node قرار دارد (openclaw approvals get --node ...)، نه در رکورد جفتسازی Gateway.
برای اجراهای host=node که با تأیید پشتیبانی میشوند، Gateway همچنین اجرا را به
systemRunPlan متعارف آمادهشده متصل میکند. اگر فراخوانندهای بعدی فرمان/cwd یا
فراداده نشست را پیش از ارسال اجرای تأییدشده تغییر دهد، Gateway بهجای اعتماد به payload ویرایششده،
اجرا را بهعنوان عدم تطابق تأیید رد میکند.
کدهای خطای رایج Node
NODE_BACKGROUND_UNAVAILABLE→ برنامه در پسزمینه است؛ آن را به پیشزمینه بیاورید.CAMERA_DISABLED→ کلید دوربین در تنظیمات Node غیرفعال است.*_PERMISSION_REQUIRED→ مجوز سیستمعامل وجود ندارد/رد شده است.LOCATION_DISABLED→ حالت مکان خاموش است.LOCATION_PERMISSION_REQUIRED→ حالت مکان درخواستی اعطا نشده است.LOCATION_BACKGROUND_UNAVAILABLE→ برنامه در پسزمینه است اما فقط مجوز هنگام استفاده وجود دارد.SYSTEM_RUN_DENIED: approval required→ درخواست Exec به تأیید صریح نیاز دارد.SYSTEM_RUN_DENIED: allowlist miss→ فرمان توسط حالت فهرست مجاز مسدود شده است. روی میزبانهای Node ویندوز، شکلهای shell-wrapper مانندcmd.exe /c ...در حالت فهرست مجاز بهعنوان موارد خارج از فهرست مجاز در نظر گرفته میشوند، مگر اینکه از طریق جریان پرسش تأیید شده باشند.
حلقه بازیابی سریع
openclaw nodes status
openclaw nodes describe --node <idOrNameOrIp>
openclaw approvals get --node <idOrNameOrIp>
openclaw logs --follow
اگر همچنان گیر کردهاید:
- جفتسازی دستگاه را دوباره تأیید کنید.
- برنامه Node را دوباره باز کنید (پیشزمینه).
- مجوزهای سیستمعامل را دوباره اعطا کنید.
- سیاست تأیید Exec را دوباره بسازید/تنظیم کنید.
مرتبط: