← ブログに戻る
Ai読了目安 12 分

NVIDIA の OpenShell はカーネルでエージェントのポリシーを強制する

公開日 2026年10月31日
NVIDIA の OpenShell はカーネルでエージェントのポリシーを強制する

NVIDIA の OpenShell は今月 GitHub で約8,000の star を集めた。インフラプロジェクトとしては奇妙な量の注目だ。自律エージェント向けのランタイムで、Rust で書かれ、Apache 2.0。説明は簡単で構築は難しいことをする。エージェントが触れられるものをカーネルレベルで強制し、ポリシー変更を適用前に形式的に検証する。

解決するのは、エージェントに本物の資格情報を初めて渡したときに現れる問題だ。エージェントはファイルを読み、パッケージを入れ、API を呼び、シークレットを使えるときにだけ役に立つ。その時点でそれは、あなたの鍵とあなたのネットワークを持つプログラムでもある。多くのチームはコンテナと祈りでこれを処理している。

強制が実際にどう見えるか

OpenShell は各エージェントを隔離されたサンドボックスで動かし、カーネルに計測を入れて、すべてのファイルアクセス、システムコール、ネットワーク接続でポリシーを実行時に検査する。接続はサンドボックスを出る前に検査される。資格情報はエージェントにまったく渡されない。OpenShell が承認済みエンドポイント向けのリクエストに注入するので、エージェントの環境を吐き出させるプロンプトインジェクションは有用なものを何も返さない。

より珍しい機能はポリシープルーバーだ。ポリシー変更が承認される前に、OpenShell は形式的検証を使って、その変更がどんな新しいアクセスを与えるかを特定する。資格情報で新しいホストに到達する、新しい API メソッドを呼ぶ、などだ。それらの変更は人間のレビューを待つ。

これは実際の設計判断で、通常のワークフローを反転させる。ほとんどのサンドボックスツールはポリシーを先に書かせ、忘れたことを痛みながら発見させる。OpenShell はエージェントが作業しながらアクセスを要求できるようにし、有効になる前に差分を見せる。それが良いかは、金曜18時の自分のレビュー工程をどれだけ信じるかによる。

一个半透明的封闭立方体悬浮在暗场中,内部有细密网格与光路,边界清晰

インストール

クイックスタートは1行と1コマンドだ。

curl -LsSf https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh | sh、続いて openshell sandbox create --name demo。インストーラは CLI とローカルゲートウェイを設定する。

最初の実際の障害は要件だ。Linux、Apple Silicon 上の macOS、または WSL 2 経由の Windows(プロジェクトは実験的と表示)。さらに Docker、Podman、またはホスト仮想化が利用可能である必要がある。チームが WSL なしの Windows で開発しているなら、5分で終わるインストールではない。サイドブランチに文書化された Microsoft MXC 経由のネイティブ Windows の経路もあり、独自の制限がある。Windows 展開を約束する前に読む価値がある。

既定のサンドボックスイメージはエージェントの入っていない最小の Ubuntu だ。実際に何かを動かすには、ドキュメントが無料の OpenRouter モデルに対して OpenCode を動かす手順を説明している。エージェントが壁に当たり、必要な新しいアクセスを承認する部分も含めて。そのウォークスルーはリポジトリで最も有用なページだ。承認ループを説明するのではなく見せるからだ。

コードから動かしたいなら SDK がある。Python は uv add openshell、TypeScript は GitHub Packages 経由のインストール、ほかに Go と Rust。エージェントスキルもあり、npx skills add NVIDIA/OpenShell でインストールでき、コーディングエージェントに CLI の操作とポリシーの書き方を教える。この細部は聞こえるより面白い。プロジェクトはエージェントが自分の檻の設定を手伝うことを想定している。効率的でもあり、ポリシープルーバーの手前にある承認ループが実際に使われるかによっては警告的でもある。

運用の請求書

カーネルに計測を入れるものはどれも pip install より複雑な配備の話を持ち、OpenShell はそれについて正直だ。ゲートウェイ、スーパーバイザー、サンドボックス本体がある。Kubernetes では Helm でゲートウェイを配備し、CNI が NetworkPolicy を実際に強制する必要がある。多くの午後を台無しにしてきた一文だ。クラスタのネットワークプラグインがその規則を無視するなら、サンドボックスの境界は制御ではなく文書であり、何かが壊れるまで気づかない。

バージョン番号が現在地を教える。0.1.x 系で安定したリリースケイデンス、新しい分離プリミティブ、新しい API が導入された。API 面はまだ動いている。今採用するチームはアップグレード作業を覚悟すべきだ。

テレメトリは既定で有効だ。NVIDIA によれば運用カテゴリと件数に限定され、サンドボックス名、ホスト名、ファイルパス、プロンプト、資格情報、プロバイダやモデル名、ユーザーコンテンツは含まない。ゲートウェイで OPENSHELL_TELEMETRY_ENABLED=false、Helm インストールなら server.telemetryEnabled=false で切れる。企業のレビューでは誰かが最初にそのスイッチを尋ねるので、会議の前に場所を把握しておくこと。

今これを必要とする人

自分のノート PC でコーディングエージェントを1つ動かすなら、OpenShell は要らない。影響範囲は自分のマシンで、エージェントを入れた時点でそのリスクは受け入れている。

本番データ、顧客記録、あるいは実際の請求の付いたクラウドアカウントに触れるエージェント群を動かすなら、計算はすぐ変わる。セキュリティチームを眠らせない失敗モードは、モデルが失礼なことを言うことではない。有効なトークンを持つエージェントが、指示されたとおりに、しかも「指示されたこと」が読んだウェブページに影響された環境で、正確に実行することだ。

OpenShell と素の Docker コンテナの違いは、信頼境界がどこにあるかだ。コンテナはエージェントが見えるものを制限する。OpenShell はできることを制限し、ネットワークを端で検査し、資格情報をエージェントの手の届かないところに置く。意味のあるほど強い立場で、代償は運用するゲートウェイ、保守するポリシーファイル、そして夜中に呼び出すものがもう1つ増えることだ。

注視すべきもの

形式的検証の角度が、私なら注視する部分だ。ポリシー変更が適用前に検査できるなら、面白い問いはその検査が実務で有用かになる。重要な変更を捕まえるか、重要でないものに静かにしているか。すべてに印を付けるプルーバーはクリックで流され、何も印を付けないプルーバーは飾りだ。

NVIDIA にはこれを保守し続ける信頼と誘因があり、エージェント安全性の市場は唯一の選択肢になるには大きすぎる。今のところ、エージェント製品の「何に触れてよいか」を決める部分を作るなら、これは読める最も具体的な実装だ。ポリシーモデルを読むのは、インストールしなくても1時間の価値がある。ほとんどのエージェントプロジェクトが飛ばす問いに答えさせられるからだ。このものは正確に何をしてよく、誰がそれを決めたのか。

関連記事