CLI commands
تأییدها
openclaw approvals
تأییدهای اجرا را برای میزبان محلی، میزبان Gateway، یا یک میزبان Node مدیریت کنید.
بهطور پیشفرض، فرمانها فایل تأییدهای محلی روی دیسک را هدف میگیرند. برای هدفگیری Gateway از --gateway استفاده کنید، یا برای هدفگیری یک Node مشخص از --node استفاده کنید.
نام مستعار: openclaw exec-approvals
مرتبط:
- تأییدهای اجرا: تأییدهای اجرا
- Nodeها: Nodeها
openclaw exec-policy
openclaw exec-policy فرمان کمکی محلی برای همگام نگه داشتن پیکربندی درخواستی
tools.exec.* و فایل تأییدهای میزبان محلی در یک مرحله است.
از آن زمانی استفاده کنید که میخواهید:
- سیاست درخواستی محلی، فایل تأییدهای میزبان، و ادغام مؤثر را بررسی کنید
- یک پیشتنظیم محلی مانند YOLO یا deny-all اعمال کنید
tools.exec.*محلی و~/.openclaw/exec-approvals.jsonمحلی را همگامسازی کنید
نمونهها:
openclaw exec-policy showopenclaw exec-policy show --json openclaw exec-policy preset yoloopenclaw exec-policy preset cautious --json openclaw exec-policy set --host gateway --security full --ask off --ask-fallback fullحالتهای خروجی:
- بدون
--json: نمای جدول خوانا برای انسان را چاپ میکند --json: خروجی ساختاریافته خوانا برای ماشین را چاپ میکند
دامنه فعلی:
exec-policyفقط محلی است- فایل پیکربندی محلی و فایل تأییدهای محلی را با هم بهروزرسانی میکند
- سیاست را به میزبان Gateway یا میزبان Node ارسال نمیکند
--host nodeدر این فرمان رد میشود، چون تأییدهای اجرای Node در زمان اجرا از Node دریافت میشوند و باید بهجای آن از طریق فرمانهای تأییدهای هدفگیریشده برای Node مدیریت شوندopenclaw exec-policy showدامنههایhost=nodeرا در زمان اجرا بهعنوان مدیریتشده توسط Node علامتگذاری میکند، نه اینکه یک سیاست مؤثر را از فایل تأییدهای محلی استخراج کند
اگر لازم است تأییدهای میزبان راهدور را مستقیم ویرایش کنید، همچنان از openclaw approvals set --gateway
یا openclaw approvals set --node <id|name|ip> استفاده کنید.
فرمانهای رایج
openclaw approvals getopenclaw approvals get --node <id|name|ip>openclaw approvals get --gatewayopenclaw approvals get اکنون سیاست اجرای مؤثر را برای هدفهای محلی، Gateway، و Node نشان میدهد:
- سیاست درخواستی
tools.exec - سیاست فایل تأییدهای میزبان
- نتیجه مؤثر پس از اعمال قواعد تقدم
تقدم عمدی است:
- فایل تأییدهای میزبان منبع حقیقت قابل اجرا است
- سیاست درخواستی
tools.execمیتواند نیت را محدودتر یا گستردهتر کند، اما نتیجه مؤثر همچنان از قواعد میزبان استخراج میشود --nodeفایل تأییدهای میزبان Node را با سیاستtools.execGateway ترکیب میکند، چون هر دو همچنان در زمان اجرا اعمال میشوند- اگر پیکربندی Gateway در دسترس نباشد، CLI به تصویر لحظهای تأییدهای Node بازمیگردد و یادداشت میکند که سیاست نهایی زمان اجرا قابل محاسبه نبود
جایگزینی تأییدها از یک فایل
openclaw approvals set --file ./exec-approvals.jsonopenclaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off" } }EOFopenclaw approvals set --node <id|name|ip> --file ./exec-approvals.jsonopenclaw approvals set --gateway --file ./exec-approvals.jsonset، JSON5 را میپذیرد، نه فقط JSON سختگیرانه. یا از --file استفاده کنید یا از --stdin، نه هر دو.
نمونه «هرگز درخواست نکن» / YOLO
برای میزبانی که هرگز نباید روی تأییدهای اجرا متوقف شود، پیشفرضهای تأییدهای میزبان را روی full + off تنظیم کنید:
openclaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" }}EOFگونه Node:
openclaw approvals set --node <id|name|ip> --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" }}EOFاین فقط فایل تأییدهای میزبان را تغییر میدهد. برای همراستا نگه داشتن سیاست درخواستی OpenClaw، این موارد را نیز تنظیم کنید:
openclaw config set tools.exec.host gatewayopenclaw config set tools.exec.security fullopenclaw config set tools.exec.ask offدلیل tools.exec.host=gateway در این نمونه:
host=autoهمچنان یعنی «در صورت وجود، sandbox؛ در غیر این صورت Gateway».- YOLO درباره تأییدها است، نه مسیریابی.
- اگر حتی وقتی sandbox پیکربندی شده است اجرای میزبان را میخواهید، انتخاب میزبان را با
gatewayیا/exec host=gatewayصریح کنید.
این با رفتار فعلی YOLO پیشفرض میزبان مطابقت دارد. اگر تأییدها را میخواهید، آن را سختگیرانهتر کنید.
میانبر محلی:
openclaw exec-policy preset yoloآن میانبر محلی هم پیکربندی درخواستی محلی tools.exec.* و هم
پیشفرضهای تأییدهای محلی را با هم بهروزرسانی میکند. از نظر نیت معادل راهاندازی
دومرحلهای دستی بالا است، اما فقط برای ماشین محلی.
کمککنندههای فهرست مجاز
openclaw approvals allowlist add "~/Projects/**/bin/rg"openclaw approvals allowlist add --agent main --node <id|name|ip> "/usr/bin/uptime"openclaw approvals allowlist add --agent "*" "/usr/bin/uname" openclaw approvals allowlist remove "~/Projects/**/bin/rg"گزینههای رایج
get، set، و allowlist add|remove همگی پشتیبانی میکنند از:
--node <id|name|ip>--gateway- گزینههای RPC مشترک Node:
--url،--token،--timeout،--json
یادداشتهای هدفگیری:
- نبود پرچم هدف یعنی فایل تأییدهای محلی روی دیسک
--gatewayفایل تأییدهای میزبان Gateway را هدف میگیرد--nodeپس از حل کردن شناسه، نام، IP، یا پیشوند شناسه، یک میزبان Node را هدف میگیرد
allowlist add|remove همچنین پشتیبانی میکند از:
--agent <id>(پیشفرض*است)
یادداشتها
--nodeاز همان حلکنندهopenclaw nodesاستفاده میکند (شناسه، نام، ip، یا پیشوند شناسه).--agentبهطور پیشفرض"*"است، که روی همه agentها اعمال میشود.- میزبان Node باید
system.execApprovals.get/setرا اعلام کند (برنامه macOS یا میزبان Node بدون واسط گرافیکی). - فایلهای تأییدها برای هر میزبان در
~/.openclaw/exec-approvals.jsonذخیره میشوند.