CLI commands
承認
openclaw approvals
ローカルホスト、Gateway ホスト、または node ホストの exec 承認を管理します。
デフォルトでは、コマンドはディスク上のローカル承認ファイルを対象にします。Gateway を対象にするには --gateway を、特定の node を対象にするには --node を使用します。
エイリアス: openclaw exec-approvals
関連:
openclaw exec-policy
openclaw exec-policy は、要求された
tools.exec.* config とローカルホストの承認ファイルを 1 ステップで整合させるためのローカル簡易コマンドです。
次のことをしたい場合に使用します。
- ローカルの要求ポリシー、ホスト承認ファイル、有効なマージ結果を確認する
- YOLO や deny-all などのローカルプリセットを適用する
- ローカルの
tools.exec.*とローカルホストの承認ファイルを同期する
例:
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はローカル専用です- ローカル config ファイルとローカル承認ファイルを一緒に更新します
- ポリシーを Gateway ホストや node ホストへプッシュしません
- node の exec 承認は実行時に node から取得され、代わりに node 対象の承認コマンドで管理する必要があるため、このコマンドでは
--host 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 対象の有効な exec ポリシーを表示するようになりました。
- 要求された
tools.execポリシー - ホスト承認ファイルのポリシー
- 優先順位ルール適用後の有効な結果
優先順位は意図的です。
- ホスト承認ファイルが、強制可能な信頼できる唯一の情報源です
- 要求された
tools.execポリシーは意図を狭めたり広げたりできますが、有効な結果は引き続きホストルールから導出されます --nodeは node ホスト承認ファイルと Gateway のtools.execポリシーを組み合わせます。どちらも実行時に適用されるためです- Gateway config を利用できない場合、CLI は node 承認スナップショットにフォールバックし、最終的な実行時ポリシーを計算できなかったことを記録します
ファイルから承認を置き換える
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 は厳密な JSON だけでなく JSON5 も受け付けます。--file と --stdin のどちらか一方を使用し、両方は使用しないでください。
「確認を出さない」/ YOLO の例
exec 承認で停止してはならないホストでは、ホスト承認のデフォルトを full + off に設定します。
openclaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" }}EOFNode 版:
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 が設定されている場合でもホスト exec を使いたい場合は、
gatewayまたは/exec host=gatewayでホスト選択を明示してください。
省略された askFallback のデフォルトは deny です。確認を出さない動作を維持すべき UI なしホストをアップグレードする場合は、askFallback: "full" を
明示的に設定してください。
ローカルショートカット:
openclaw exec-policy preset yoloこのローカルショートカットは、要求されたローカル tools.exec.* config と
ローカル承認のデフォルトの両方を一緒に更新します。意図としては上記の手動 2 ステップ
設定と同等ですが、ローカルマシンに対してのみ有効です。
allowlist ヘルパー
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- 共有 node RPC オプション:
--url、--token、--timeout、--json
対象指定の注意:
- 対象フラグなしは、ディスク上のローカル承認ファイルを意味します
--gatewayは Gateway ホスト承認ファイルを対象にします--nodeは id、名前、IP、または id プレフィックスを解決した後、1 つの node ホストを対象にします
allowlist add|remove は次もサポートします。
--agent <id>(デフォルトは*)
注記
--nodeはopenclaw nodesと同じリゾルバー (id、名前、ip、または id プレフィックス) を使用します。--agentのデフォルトは"*"で、すべての agent に適用されます。- node ホストは
system.execApprovals.get/set(macOS アプリまたはヘッドレス node ホスト) を advertise している必要があります。 - 承認ファイルは、OpenClaw state dir 内にホストごとに保存されます
(
$OPENCLAW_STATE_DIR/exec-approvals.json、または 変数が未設定の場合は~/.openclaw/exec-approvals.json)。