最終更新:2026年3月
ポリシー実施エンジン
Claw-Stack のポリシー実施エンジンは宣言されたエージェントごとのポリシーによってすべてのエージェントアクションを統治します——許可されるツール、人間の承認が必要な操作、無条件にブロックされるものを指定します。
ポリシーファースト設計
生の OpenClaw インストールでは、エージェントは単一の暗黙のポリシーの下で動作します:アクセス権を与えられた任意のツールを呼び出せます。エージェントごとの粒度はなく、承認メカニズムもなく、システム全体から削除せずに特定のエージェントが特定のツールを使用することを制限する方法もありません。
Claw-Stack はこれを明示的なエージェントごとの YAML ポリシーファイルに置き換えます。各エージェントのポリシーは起動時にロードされ、高速ルックアップ構造にコンパイルされます。ポリシーゲートは各ツール呼び出しを OpenClaw に転送する前にこの構造に対して評価します。
実施モード
許可
ツール呼び出しが明示的な許可ルールにマッチし、拒否ルールや高リスクパターンにマッチしません。呼び出しは即座に OpenClaw に転送されます。
ブロック
ツール呼び出しが拒否ルールまたは無条件ブロックパターンにマッチします。呼び出しは拒否され、エージェントはポリシーの下でそのアクションが許可されていないことを説明するエラー応答を受け取ります。拒否はログに記録されます。
エスカレート
ツール呼び出しが require_human_approval の高リスクパターンにマッチします。呼び出しは中断され、人間のオペレーターに通知され、承認または拒否を受け取るまで実行が待機します。タイムアウトは設定可能です。
コンセンサス
ツール呼び出しが require_consensus の高リスクパターンにマッチします。呼び出しは進む前にマルチエージェント投票のためにコンセンサスハブにルーティングされます。マルチエージェントコンセンサスを参照してください。
監査証跡
すべてのポリシーゲートの決定は audit/actions.jsonl に保存された追記専用監査ログに追加されます。各エントリには:タイムスタンプ、エージェント ID、ツール名、引数ハッシュ(機密データのログ記録を避けるため完全な引数ではない)、適用された実施モード、結果、およびエスカレート/コンセンサス決定の解決レコードが含まれます。ファイルは切り詰められることなく、古いエントリは月次で圧縮アーカイブされます。
よくある質問
エージェントは自身のポリシーを変更できますか?
できません。ポリシーファイルは人間のオペレーターが所有し、エージェントによる書き込みはできません。エージェントはポリシー変更を要求(オペレーターへのメッセージ送信)できますが、自分では適用できません。ポリシーディレクトリへの書き込み試行は自動ブロックとアラートをトリガーします。
ポリシー評価のパフォーマンス影響は?
ポリシーファイルは起動時に決定論的な決定木にコンパイルされます。ほとんどのツール呼び出しのルックアップは O(1) です。唯一の可変コストケースは高リスクルールの正規表現パターンマッチングで、実際には最大 1〜2 ms の追加です。
ポリシー変更はどのようにデプロイされますか?
ポリシーファイルはエージェントを再起動せずにホットリロードされます。ランタイムは inotify/kqueue ウォッチャーでポリシーディレクトリを監視します。ファイルが変更されると、新しいポリシーは 100 ms 以内にコンパイルされ、古いものと置き換わります。
Authors: Qiushi Wu & Orange 🍊