nah: Claude Code向けの文脈を考慮した権限ガード

nahの機能
nahはPythonベースのパーミッションガードで、Claude Codeとツール実行の間に位置します。コンテキストを考慮した意思決定を追加することで、Claudeの許可・拒否の二択パーミッションシステムの限界に対処します。このツールは、実行前にすべてのツール呼び出しを傍受し、実際の動作に基づいて分類します。
動作原理
すべてのツール呼び出しは、まず決定論的構造分類器(LLM不要)に送られ、ミリ秒単位で実行されます。分類器はコマンドを以下のようなアクションタイプにマッピングします:
- filesystem_read
- filesystem_delete
- package_run
- db_write
- git_history_rewrite
- lang_exec
各アクションタイプに対して、nahは4つのポリシーのいずれかを適用します:許可、コンテキスト(ターゲット依存)、確認、ブロック。同じコマンドでもコンテキストによって異なる決定が下されます:
rm dist/bundle.js(プロジェクト内)→ 許可rm ~/.bashrc(プロジェクト外)→ 確認git push --force→ 確認(履歴書き換え)base64 -d | bash→ ブロック(デコード+実行パイプ)
保護対象
nahはツールに応じて異なる側面をチェックします:
- Bash:構造的コマンド分類 — アクションタイプ、パイプ構成、シェルアンラッピング
- Read:機密パス検出(~/.ssh、~/.aws、.envなど)
- Write:パスチェック+プロジェクト境界+コンテンツ検査(シークレット、外部流出、破壊的ペイロード)
- Edit:パスチェック+プロジェクト境界+置換文字列のコンテンツ検査
- Glob:機密場所のディレクトリスキャンガード
- Grep:プロジェクト外での認証情報検索パターンの捕捉
- MCPツール:サードパーティツールサーバー(mcp__*)の汎用分類
インストールと使用方法
インストール:pip install nah && nah install
アンインストール:nah uninstall && pip uninstall nah
このツールは設定不要で、すぐに使用可能な適切なデフォルトで動作します。Claude Code内でセキュリティデモを実行できます:/nah-demo — リモートコード実行、データ流出、難読化コマンドなど8つの脅威カテゴリーにわたる25の実際のケースを網羅します。
設定オプション
動作をカスタマイズする場合、以下の方法で設定できます:
~/.config/nah/config.yaml(グローバル).nah.yaml(プロジェクトごと、権限を厳格化のみ可能)
設定例:
actions:
filesystem_delete: ask # 削除は常に確認
git_history_rewrite: block # 強制プッシュは絶対に許可しない
lang_exec: allow # インラインスクリプトを信頼
sensitive_paths:
~/.kube: ask
~/Documents/taxes: block
オプションのLLMレイヤー
決定論的分類器で解決できないコマンドに対して、nahはオプションでLLMに問い合わせることができます。フローは:ツール呼び出し → nah(決定論的) → LLM(オプション) → Claude Codeパーミッション → 実行。決定論的レイヤーは常に最初に実行され、LLMは残った「確認」決定のみを解決します。LLMが設定されていないか利用できない場合、決定は「確認」のままとなり、ユーザーにプロンプトが表示されます。サポートプロバイダーにはOllama、OpenRouter、OpenAI、Anthropic、Snowflake Cortexが含まれます。
重要な注意点
開発者は特に、Claude Codeの--dangerously-skip-permissionsフラグの使用を警告しています。バイパスモードでは、フックは非同期で発火するため、nahがブロックする前にコマンドが実行されてしまいます。代わりに、Bash、Read、Glob、Grepなどのツールを許可し、nahに保護させることを推奨しています。
📖 Read the full source: HN AI Agents
👀 See Also

ローカルAIエージェント、オープンソースサーバーでサブ秒のSTT・TTS遅延を実現
ある開発者が、ハイブリッドスレッド管理GPUアーキテクチャを採用したWhisper large-v3-turboで約0.2秒のSTTレイテンシを実現し、低レイテンシ合成に最適化されたCoqui-TTSで約250msのTTSレイテンシを達成しました。両実装は完全にセルフホスト型でオープンソース化されています。

Cowork AIエージェントがWindowsラップトップでキーボード入力の問題を引き起こす
ユーザーから報告されたところによると、Cowork AIエージェントがDell Latitude 9430で持続的なキーボード入力の問題を引き起こし、最初の数回のキーストロークしか認識されない状態になったとのことです。解決策には、Latitudeモデル向けの特定の組み込みコントローラーのリセット手順が含まれていました。

ピクセルエージェント:コード、サイト、履歴書のレビューに特化した24種類の専門クロードエージェント
Pixel Agentsは、Claude Sonnet 4.6 API上に構築された24種類のタスク特化型AIエージェントのコレクションです。各エージェントは調整された個性と構造化されたJSON出力を持ち、コードレビュー、サイト分析、履歴書批評、スタートアップ評価などのエージェントが直接的なフィードバックを提供します。

CipherClaw: セキュリティペルソナを用いたClaudeによるコード監査
ある開発者が、CLAUSE.mdのペルソナであるTALONというCipherClawを使用して、Claude Codeにセキュリティアーキテクトのように考えさせました。Next.jsアプリで実行した結果、認証不要のエンドポイントが管理者データを返す、ハードコードされた認証トークンなど、17件のセキュリティ上の問題点が発見されました。