dangerous-action-guard について
dangerous-action-guardは、取り消せない操作や影響の大きい操作の前に、ユーザーの明示的な確認を求めるスキルです。承認、拒否、期限切れの記録を監査ログに残します。
主な機能
- 01対象となる危険な操作の前に停止
- 02影響範囲と取り消し可能性を説明
- 03明示的な確認のみ受け付け
- 04承認は5分で失効
- 05結果を監査ログに記録
活用シーン
- 01未確認のファイル削除を防止
- 02外部メッセージ送信前に承認を確認
- 03本番環境や金融操作の判断を記録
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ archieindian/ openclaw-superpowers --skill dangerous-action-guardインストール後、Claude Code で/dangerous-action-guardを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
audit.pyexample-state.yamlSTATE_SCHEMA.yaml詳細
dangerous-action-guard
不可逆または影響の大きい操作を実行する前に、いったん停止してユーザーの明示的な確認を得てください。確認された操作と拒否された操作はすべて、監査証跡に記録してください。
危険な操作のカテゴリ
| カテゴリ | 例 |
|---|---|
| ファイルの破壊 | rm -rf、unlink、ファイルの削除、ゴミ箱を空にする、ディレクトリの消去 |
| Git の破壊的操作 | git push --force、git reset --hard、git clean -f、git branch -D |
| 外部へのメッセージ送信 | メールの送信、Slack/Teams/Discord への投稿、ソーシャルメディアへの投稿、全員への返信 |
| 金銭関連 | 購入の確定、支払いの送信、取引の実行、サブスクリプションの解約 |
| 認証情報 | API キーのローテーション/削除、OAuth アプリの変更、パスワードの変更 |
| インフラストラクチャ | 本番環境へのデプロイ、データベースの削除、サーバーインスタンスの終了 |
| 権限の変更 | ドキュメントの共有、アクセス制御の変更、リソースの公開 |
確認プロトコル
危険な操作を実行しようとする場合:
ステップ 1 — 操作の前に停止する
まだ操作を実行しないでください。状態の pending_action に、有効期限を 5 分として操作を記録してください。
ステップ 2 — ユーザーに説明する ユーザーに次の内容を伝えてください。
- 実行しようとしている操作(正確なコマンドまたは操作)
- 影響を受ける対象(ファイル、ユーザー、システム)
- 元に戻せるかどうか、可能な場合はその方法
ステップ 3 — 明示的な確認を待つ 曖昧さのない肯定表現のみを受け付けてください:「yes」、「go ahead」、「confirmed」、「do it」、「proceed」。 「maybe」、「I think so」、「sure I guess」など、ためらいを含む返答やその他の返答では、処理を進めないでください。
ステップ 4 — 有効期限内に実行する 確認された場合は、5 分以内に実行してください。セッションが終了した場合、またはユーザーがアクティブでなくなった場合は、再確認してください。
ステップ 5 — 監査証跡に記録する 状態に次の内容を記録してください:操作、タイムスタンプ、ユーザーの確認文、結果(実行済み/拒否/期限切れ)。
承認の有効期限
承認は 5 分で期限切れになります。確認を受けてから 5 分を超えて危険な操作を実行する場合は、ユーザーに再確認してください。以前のセッションでの承認は、引き継がれません。
一括操作
一括操作(例:「すべての一時ファイルを削除」)では、確認を求める前に対象項目と件数を具体的に提示してください。対象範囲を示さずに一括操作の確認を求めてはいけません。対象が 10 件を超える場合は、最初の 5 件と合計件数を提示してください。
監査証跡
確認された操作も拒否された操作も、すべて状態に記録してください。python3 audit.py --history を使って、監査証跡全体を確認できます。監査証跡は、異議のある操作からユーザーを守るためのものです。