如何使用 openclaw approvals 管理執行審批
每次要在遠端執行指令,最怕的就是權限控管變得很混亂。你可能遇過要在好幾台機器之間切換,手動修改設定檔,結果最後連哪台主機開了什麼權限都記不得。這種重複性的手動操作不僅浪費時間,還很容易出錯,讓開發流程變得卡卡的。
如果你正在尋找一種更直覺的方法來統一管理這些執行審批(Exec approvals),這篇指南會告訴你如何利用 openclaw approvals 輕鬆搞定 local host、gateway 或是各個 node 的權限設定。
需要準備的東西
Section titled “需要準備的東西”在開始之前,請確保你符合以下條件:
- Node host 必須支援
system.execApprovals.get/set(例如 macOS App 或 headless node host) - 了解你的 Node ID、名稱或 IP(如果你需要操作遠端 Node)
openclaw approvals 預設會操作你本地磁碟上的審批檔案。如果你想針對 Gateway 或特定的 Node,只需要加上 --gateway 或 --node 參數即可。
1. 查看目前的審批狀態
Section titled “1. 查看目前的審批狀態”你可以隨時抓取目前的審批列表,看看哪些指令是被允許的。
# 查看本地審批openclaw approvals get
# 查看特定 Node 的審批openclaw approvals get --node <id|name|ip>
# 查看 Gateway 的審批openclaw approvals get --gateway2. 從檔案批次更新審批
Section titled “2. 從檔案批次更新審批”如果你已經準備好一份 JSON 設定檔,可以直接覆蓋目標主機的設定。
# 更新本地審批openclaw approvals set --file ./exec-approvals.json
# 更新特定 Node 的審批openclaw approvals set --node <id|name|ip> --file ./exec-approvals.json3. 管理白名單 (Allowlist)
Section titled “3. 管理白名單 (Allowlist)”這是最常用的功能,你可以快速新增或移除允許執行的路徑。
# 新增一個路徑到白名單openclaw approvals allowlist add "~/Projects/**/bin/rg"
# 針對特定 Node 與 Agent 新增指令openclaw approvals allowlist add --agent main --node <id|name|ip> "/usr/bin/uptime"
# 移除白名單路徑openclaw approvals allowlist remove "~/Projects/**/bin/rg"小提示:
--node參數支援 ID、名稱、IP 或 ID 前綴。--agent預設為"*",代表套用到所有 agents。- 審批檔案預設儲存在各主機的
~/.openclaw/exec-approvals.json。
找不到 system.execApprovals.get/set 權限? 請檢查你的 Node host 是否為支援的 macOS App 或 headless 版本。如果 Node 沒有宣告這些功能,你將無法透過 CLI 遠端讀取或寫入審批設定。
無法識別 Node ID?
openclaw approvals 使用與 openclaw nodes 相同的解析邏輯。請確認你的 ID 或名稱是否正確,或者嘗試使用 IP 地址直接指定。
如果你在設定過程中有任何疑問,可以詢問 AI Setup Assistant 獲取即時協助。
OpenClaw Expert
還是卡住了?
如果這篇文件沒有解決你的情境,直接問 OpenClaw Expert,拿到可執行步驟。