CLI commands
Phê duyệt
openclaw approvals
Quản lý phê duyệt thực thi cho máy cục bộ, máy Gateway hoặc máy Node. Khi không có cờ đích, các lệnh đọc/ghi tệp phê duyệt cục bộ trên đĩa. Dùng --gateway để nhắm đến Gateway hoặc --node <id|name|ip> để nhắm đến một Node cụ thể.
Bí danh: openclaw exec-approvals
Liên quan: Phê duyệt thực thi, Các Node
openclaw exec-policy
openclaw exec-policy là lệnh tiện ích chỉ dành cho máy cục bộ, giúp đồng bộ cấu hình tools.exec.* được yêu cầu và tệp phê duyệt của máy cục bộ chỉ trong một bước:
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 fullCác bộ thiết lập sẵn (yolo, cautious, deny-all) áp dụng đồng thời host, security, ask và askFallback. set chỉ áp dụng các cờ bạn truyền vào; mỗi giá trị được chấp nhận đều được xác thực (--host auto|sandbox|gateway|node, --security deny|allowlist|full, --ask off|on-miss|always, --ask-fallback deny|allowlist|full).
Phạm vi:
- Cập nhật đồng thời tệp cấu hình cục bộ và tệp phê duyệt cục bộ; không đẩy chính sách đến Gateway hoặc máy Node.
--host nodebị từ chối: phê duyệt thực thi của Node được lấy từ Node trong thời gian chạy, vì vậyexec-policycục bộ không thể đồng bộ chúng. Thay vào đó, hãy dùngopenclaw approvals set --node <id|name|ip>.exec-policy showđánh dấu các phạm vihost=nodelà do Node quản lý trong thời gian chạy, thay vì suy ra chính sách có hiệu lực từ tệp phê duyệt cục bộ.
Đối với phê duyệt trên máy từ xa, hãy dùng trực tiếp openclaw approvals set --gateway hoặc openclaw approvals set --node <id|name|ip>.
Các lệnh thường dùng
openclaw approvals getopenclaw approvals get --node <id|name|ip>openclaw approvals get --gatewayget hiển thị chính sách thực thi có hiệu lực cho đích: chính sách tools.exec được yêu cầu, chính sách trong tệp phê duyệt của máy và kết quả có hiệu lực sau khi hợp nhất. Các Node có chính sách gốc của máy, chẳng hạn như ứng dụng đồng hành trên Windows, sẽ hiển thị trực tiếp chính sách đó thay vì áp dụng phép tính chính sách từ tệp phê duyệt của OpenClaw.
Đối với các Node sử dụng tệp, chế độ xem hợp nhất yêu cầu một ảnh chụp chính sách đã được phân giải trên máy. Các Node cũ hơn hiển thị chính sách có hiệu lực là không khả dụng, thay vì giả định rằng chính sách được yêu cầu của Gateway cũng áp dụng trên máy.
Thứ tự ưu tiên:
- Tệp phê duyệt của máy là nguồn thông tin chuẩn có thể thực thi.
- Chính sách
tools.execđược yêu cầu có thể thu hẹp hoặc mở rộng ý định, nhưng kết quả có hiệu lực được suy ra từ các quy tắc của máy. --nodekết hợp tệp phê duyệt của máy Node với chính sáchtools.execcủa Gateway (cả hai đều áp dụng trong thời gian chạy).- Nếu không có cấu hình Gateway, CLI sẽ dùng ảnh chụp phê duyệt của Node làm phương án dự phòng và ghi chú rằng không thể tính toán chính sách cuối cùng trong thời gian chạy.
Thay thế phê duyệt từ một tệp
openclaw approvals set --file ./exec-approvals.jsonopenclaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" } }EOFopenclaw approvals set --node <id|name|ip> --file ./exec-approvals.jsonopenclaw approvals set --gateway --file ./exec-approvals.jsonset chấp nhận JSON5, không chỉ JSON nghiêm ngặt. Chỉ dùng một trong hai tùy chọn --file hoặc --stdin, không dùng đồng thời cả hai.
Các Node Windows dùng chính sách gốc của máy có cấu trúc chính sách riêng:
openclaw approvals set --node <id|name|ip> --stdin <<'EOF'{ defaultAction: "deny", rules: [{ pattern: "hostname", action: "allow" }]}EOFTrước tiên, CLI đọc giá trị băm hiện tại của Node rồi gửi kèm giá trị đó trong bản cập nhật, nhờ vậy các chỉnh sửa cục bộ đồng thời sẽ bị từ chối thay vì bị ghi đè. rules là bắt buộc vì thao tác này thay thế toàn bộ danh sách quy tắc của Node; defaultAction là tùy chọn. Không thể cấu hình từ xa một Node báo cáo rằng chính sách gốc của nó đã bị vô hiệu hóa; trước tiên, hãy bật hoặc cấu hình chính sách trên máy đó. Các chính sách gốc của máy không hỗ trợ các tiện ích allowlist add|remove.
Ví dụ "Không bao giờ nhắc" / YOLO
Đặt giá trị mặc định phê duyệt của máy thành full + off cho một máy không bao giờ được dừng lại để chờ phê duyệt thực thi:
openclaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" }}EOFĐối với các Node cung cấp tệp phê duyệt OpenClaw, hãy dùng cùng nội dung với openclaw approvals set --node <id|name|ip> --stdin. Các Node dùng chính sách gốc của máy yêu cầu cấu trúc riêng theo chủ sở hữu như minh họa ở trên.
Thao tác này chỉ thay đổi tệp phê duyệt của máy. Để giữ cho chính sách OpenClaw được yêu cầu đồng bộ, hãy đặt thêm:
openclaw config set tools.exec.host gatewayopenclaw config set tools.exec.security fullopenclaw config set tools.exec.ask offtools.exec.host=gateway được chỉ định rõ ở đây vì host=auto vẫn có nghĩa là "dùng sandbox khi khả dụng, nếu không thì dùng Gateway": YOLO liên quan đến phê duyệt, không phải định tuyến. Dùng gateway (hoặc /exec host=gateway) khi bạn muốn thực thi trên máy ngay cả khi đã cấu hình sandbox.
Nếu bỏ qua askFallback, giá trị mặc định là deny. Hãy đặt rõ askFallback: "full" khi nâng cấp một máy không có giao diện người dùng cần duy trì hành vi không bao giờ nhắc.
Lối tắt cục bộ cho cùng mục đích, chỉ trên máy cục bộ:
openclaw exec-policy preset yoloTiện ích danh sách cho phép
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"Các tùy chọn thường dùng
get, set và allowlist add|remove đều hỗ trợ:
--node <id|name|ip>(phân giải mã định danh, tên, địa chỉ IP hoặc tiền tố mã định danh; dùng cùng bộ phân giải nhưopenclaw nodes)--gateway- các tùy chọn RPC Node dùng chung:
--url,--token,--timeout,--json
Không có cờ đích nghĩa là sử dụng tệp phê duyệt cục bộ trên đĩa.
allowlist add|remove cũng hỗ trợ --agent <id> (mặc định là "*", áp dụng cho tất cả tác tử).
Ghi chú
- Máy Node phải công bố
system.execApprovals.get/set(ứng dụng macOS, máy Node không giao diện hoặc ứng dụng đồng hành trên Windows). - Các tệp phê duyệt được lưu riêng theo từng máy trong thư mục trạng thái OpenClaw:
$OPENCLAW_STATE_DIR/exec-approvals.json, hoặc~/.openclaw/exec-approvals.jsonkhi biến chưa được đặt.