manuelschipper/nah
a guard that blocks catastrophic agent actions
何を解決するか
nah は、AI コーディングエージェントがファイルシステムの削除やシークレットの盗難など、深刻な操作を実行することを防ぎます。これは、実行前にツール呼び出しをインターセプトすることで実現されます。nah は、証明可能な危険なコマンドをブロックする安全ガードとして機能し、危険でない呼び出しはエージェントの既存のランタイム権限に任せる形で処理します。
動作方法
nah は静的 Rust バイナリとして実装されており、判断に LLM を使用せずに決定論的に動作します。ツール呼び出しを「型付き効果」(例:ファイル読み取り、ネットワークリクエスト、プロセスの挙動)に解析し、ガードのカタログと照合します。
ガードが明確な違反を検出した場合、ブロックの評価を返し、エージェントにその操作が拒否された理由を通知します。ガードがトリガーされない場合は、デリゲートの評価を返し、エージェントのサンドボックスや承認フローがリクエストを処理できるようにします。ユーザーは任意の言語でカスタム拡張を構築し、プロジェクト固有の安全ルールを追加できます。
対象ユーザー
Claude Code、Cursor、Devin などの AI コーディングエージェントを使用し、誤ってまたは悪意ある破壊的コマンドを実行するのを自動的に防ぎたい開発者。
特徴
- 決定論的セキュリティ: LLM 判定ではなく Rust バイナリを使用するため、マイクロ秒単位の応答時間と一貫した結果を保証。
- 豊富なガードカタログ: 実行ハッキング、シークレット盗難、ファイルシステム破壊、インフラ構成の破壊をカバーする 46 の組み込みガードを備える。
- 広範な統合: Claude Code、Cursor、Copilot など、多数のエージェントランタイムに対応。
- fontenc-自己保護: エージェントが nah を無効化しようとする、または設定を変更しようとする行為をブロック。
- カスタマイズ可能: TUI や CLI で特定のガードを切り替え可能。カスタムガードプログラムも作成可能。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト