mcpField
A
audit-permissions

audit-permissions

github.com/camachoエージェントワークフロー42 回インストール
リポジトリ

audit-permissions について

audit-permissionsは、権限監査ログを分析し、許可リストの変更を提案するスキルです。変更案を確認用に示し、監査ログの保存とリセットも行えます。

主な機能

  1. 01権限ログ分析ツールの実行
  2. 02許可ルールの追加提案
  3. 03変更前の差分表示
  4. 04permissions.allowのみを編集
  5. 05ログの保存と監査データのリセット

活用シーン

  1. 01記録された権限プロンプトの確認
  2. 02承認済みの安全なパターンを設定に追加
  3. 03ログを消去して新しい監査データを収集

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/camacho/ai-skills --skill audit-permissions

インストール後、Claude Code で/audit-permissionsを入力して読み込まれたか確認します。

詳細

権限の監査

権限監査ログを分析し、許可リストの変更を提案します。ai-env の TypeScript アナライザーをラップします。

引数の振り分け

  • 引数なし/空:レポートを実行します(デフォルト)
  • 引数に「reset」または「clear」が含まれる:ログをアーカイブして、新しく開始します

レポートモード(デフォルト)

1. レポートを生成
node --import tsx /Users/patrickcamacho/projects/camacho/ai-env/src/tools/permission-analyzer.ts

Markdown の出力全体をユーザーに提示します。

2. 推奨する許可ルール

このセクションに項目がある場合:

  1. ~/.claude/settings.json を読み込み、permissions.allow を抽出します(デフォルトは [])
  2. まだ存在しない新しいパターンを算出します(大文字と小文字を区別した完全一致)
  3. permissions.allow のみを対象に、変更前/変更後の差分を表示します
  4. 「これらの安全なルールを N 件、settings.json に適用しますか?」と尋ねます(プレーンテキストで y/n — すべての環境で動作します)
  5. 承認された場合:マージして重複を削除し、アルファベット順に並べ替え、インデント 2 文字で書き戻します
  6. permissions.allow 以外のキーには絶対に触れないでください。permissions.deny にも絶対に触れないでください
  7. 追加された内容を確認します
3. セキュリティ警告

存在する場合:各パターンをフラグとサンプルコマンドとともに表示します。「フラグが付いている項目のうち、追加するものはありますか?(番号を列挙するか、「none」と入力してください)」と尋ねます

4. 抑制された推奨事項

注意喚起として一覧表示します。追加は提案しないでください — これらには危険度フラグが付いています。

完了

追加した内容と、権限確認プロンプトがいくつ減る見込みかを要約します。

リセットモード

/Users/patrickcamacho/projects/camacho/ai-env/.claude/hooks/audit-permissions-reset.sh

次回のツール呼び出し時に、新しいログが自動的に開始されます。

前提条件

要件確認方法
ai-env リポジトリ/Users/patrickcamacho/projects/camacho/ai-env が存在すること(ai-env 固有です。他のプロジェクトではファイルが見つからないエラーが発生します)
依存関係ai-env で pnpm install が完了していること
監査フックpermission-audit-log.sh が ~/.claude/settings.json の PreToolUse に設定されていること

トラブルシューティング

症状対処方法
「監査データが見つかりません」フックがインストールされていないか、未許可のプロンプトがまだ記録されていません
アナライザーがクラッシュするai-env リポジトリで pnpm install を実行します
推奨事項が古い/audit-permissions reset を実行し、新しいデータを蓄積してから再実行します
settings.json の解析エラーjq . ~/.claude/settings.json で検証します

コメント