CLI commands
الموافقات
OmeniaClaw approvals
إدارة موافقات exec الخاصة بـ المضيف المحلي أو مضيف Gateway أو مضيف Node.
افتراضيًا، تستهدف الأوامر ملف الموافقات المحلي على القرص. استخدم --gateway للاستهداف على Gateway، أو --node لاستهداف Node معيّن.
الاسم البديل: OmeniaClaw exec-approvals
ذو صلة:
- موافقات exec: موافقات exec
- Nodes: Nodes
OmeniaClaw exec-policy
OmeniaClaw exec-policy هو أمر الراحة المحلي للحفاظ على توافق
تهيئة tools.exec.* المطلوبة وملف الموافقات الخاص بالمضيف المحلي في خطوة واحدة.
استخدمه عندما تريد:
- فحص السياسة المحلية المطلوبة، وملف موافقات المضيف، والدمج الفعّال
- تطبيق إعداد محلي مسبق مثل YOLO أو deny-all
- مزامنة
tools.exec.*المحلي و~/.OmeniaClaw/exec-approvals.jsonالمحلي
أمثلة:
OmeniaClaw exec-policy showOmeniaClaw exec-policy show --json OmeniaClaw exec-policy preset yoloOmeniaClaw exec-policy preset cautious --json OmeniaClaw exec-policy set --host gateway --security full --ask off --ask-fallback fullأوضاع الإخراج:
- بدون
--json: يطبع عرض الجدول المقروء للبشر - مع
--json: يطبع إخراجًا منظمًا قابلًا للقراءة الآلية
النطاق الحالي:
exec-policyمحلي فقط- يحدّث ملف التهيئة المحلي وملف الموافقات المحلي معًا
- لا يدفع السياسة إلى مضيف Gateway أو مضيف Node
- يتم رفض
--host nodeفي هذا الأمر لأن موافقات exec الخاصة بـ Node تُجلَب من Node وقت التشغيل ويجب إدارتها عبر أوامر الموافقات الموجهة إلى Node بدلًا من ذلك - يعلّم
OmeniaClaw exec-policy showنطاقاتhost=nodeعلى أنها مُدارة من Node وقت التشغيل بدلًا من اشتقاق سياسة فعّالة من ملف الموافقات المحلي
إذا كنت بحاجة إلى تعديل موافقات مضيفات بعيدة مباشرةً، فاستمر في استخدام OmeniaClaw approvals set --gateway
أو OmeniaClaw approvals set --node <id|name|ip>.
أوامر شائعة
OmeniaClaw approvals getOmeniaClaw approvals get --node <id|name|ip>OmeniaClaw approvals get --gatewayيعرض OmeniaClaw approvals get الآن سياسة exec الفعّالة للأهداف المحلية وأهداف Gateway وNode:
- سياسة
tools.execالمطلوبة - سياسة ملف موافقات المضيف
- النتيجة الفعّالة بعد تطبيق قواعد الأسبقية
الأسبقية مقصودة:
- ملف موافقات المضيف هو مصدر الحقيقة القابل للإنفاذ
- يمكن لسياسة
tools.execالمطلوبة أن تضيق النية أو توسعها، لكن النتيجة الفعّالة تظل مشتقة من قواعد المضيف - يجمع
--nodeبين ملف موافقات مضيف Node وسياسةtools.execالخاصة بـ Gateway، لأن كلاهما لا يزال يُطبَّق وقت التشغيل - إذا لم تكن تهيئة Gateway متاحة، يعود CLI إلى لقطة موافقات Node ويشير إلى أنه لم يمكن حساب سياسة وقت التشغيل النهائية
استبدال الموافقات من ملف
OmeniaClaw approvals set --file ./exec-approvals.jsonOmeniaClaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off" } }EOFOmeniaClaw approvals set --node <id|name|ip> --file ./exec-approvals.jsonOmeniaClaw approvals set --gateway --file ./exec-approvals.jsonيقبل set تنسيق JSON5، وليس JSON الصارم فقط. استخدم إما --file أو --stdin، وليس كليهما.
مثال "عدم السؤال مطلقًا" / YOLO
بالنسبة إلى مضيف يجب ألا يتوقف أبدًا عند موافقات exec، اضبط القيم الافتراضية لموافقات المضيف إلى full + off:
OmeniaClaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" }}EOFصيغة Node:
OmeniaClaw approvals set --node <id|name|ip> --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" }}EOFيغيّر هذا ملف موافقات المضيف فقط. ولإبقاء سياسة OmeniaClaw المطلوبة متوافقة، اضبط أيضًا:
OmeniaClaw config set tools.exec.host gatewayOmeniaClaw config set tools.exec.security fullOmeniaClaw config set tools.exec.ask offلماذا tools.exec.host=gateway في هذا المثال:
- ما زال
host=autoيعني "sandbox عند توفره، وإلا فـ Gateway". - يتعلق YOLO بالموافقات، وليس بالتوجيه.
- إذا كنت تريد exec على المضيف حتى عند تهيئة sandbox، فاجعل اختيار المضيف صريحًا باستخدام
gatewayأو/exec host=gateway.
وهذا يطابق سلوك YOLO الحالي الافتراضي للمضيف. شدّده إذا كنت تريد موافقات.
اختصار محلي:
OmeniaClaw exec-policy preset yoloيحدّث هذا الاختصار المحلي كلًا من تهيئة tools.exec.* المحلية المطلوبة
والقيم الافتراضية للموافقات المحلية معًا. وهو مكافئ من حيث النية للإعداد اليدوي
ذي الخطوتين أعلاه، لكنه مخصص للجهاز المحلي فقط.
مساعدات قائمة السماح
OmeniaClaw approvals allowlist add "~/Projects/**/bin/rg"OmeniaClaw approvals allowlist add --agent main --node <id|name|ip> "/usr/bin/uptime"OmeniaClaw approvals allowlist add --agent "*" "/usr/bin/uname" OmeniaClaw 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مضيف Node واحدًا بعد resolve المعرّف أو الاسم أو IP أو بادئة المعرّف
كما يدعم allowlist add|remove أيضًا:
--agent <id>(الافتراضي*)
ملاحظات
- يستخدم
--nodeنفس المحلِّل الذي يستخدمهOmeniaClaw nodes(المعرّف أو الاسم أو ip أو بادئة المعرّف). - القيمة الافتراضية لـ
--agentهي"*", وهذا ينطبق على جميع الوكلاء. - يجب أن يعلن مضيف Node عن
system.execApprovals.get/set(تطبيق macOS أو مضيف Node دون واجهة). - تُخزَّن ملفات الموافقات لكل مضيف في
~/.OmeniaClaw/exec-approvals.json.