「AIエージェントキャッチアップ #74 - NemoClaw」を開催しました
Generative Agentsの大嶋氏による勉強会「AIエージェントキャッチアップ #74」で、NVIDIAの常時稼働アシスタント実行を安全化する「NemoClaw」について解説された。
キーポイント
勉強会開催報告とアーカイブ公開
Generative Agents主催の学習イベント「AIエージェントキャッチアップ #74」が実施され、YouTubeアーカイブ動画が公開された。
NVIDIA製「NemoClaw」の紹介
常時稼働するAIアシスタントをより安全に実行するためのNVIDIA関連ツール「NemoClaw」が主題として扱われた。
既存アシスタントとの比較・補完
OpenClawのような既存の常時稼働アシスタントを安全化する枠組みとして、NemoClawの位置づけが議論された。
技術詳細への誘導
記事本文は途中で切れているが、GitHubリポジトリおよびイベント詳細へのリンクが提供されている。
影響分析・編集コメントを表示
影響分析
本記事は特定のコミュニティ主催勉強会の開催報告であり、技術的な詳細や公式リリース情報には言及していない。ただし、「常時稼働型エージェントのセキュリティ」という実務上の課題に対し、NVIDIA関連のフレームワークやオープンソースプロジェクトが注目されている兆候を示している。今後の公式ドキュメント公開や実装事例の増加に注視する必要がある。
編集コメント
記事本文が途中で切れており技術仕様が不明だが、「常時稼働型エージェントのセキュリティ」という実務課題に対応するNVIDIA関連フレームワークの動向は注目すべきだ。公式ドキュメントや実装詳細が公開され次第、再評価する必要がある。
ジェネラティブエージェンツの大嶋です。
「AIエージェントキャッチアップ #74 - NemoClaw」という勉強会を開催しました。
https://generative-agents.connpass.com/event/390939/generative-agents.connpass.com
アーカイブ動画はこちらです。
www.youtube.com
今回は、OpenClawのような常時稼働アシスタントをより安全に実行するためのNVIDIAの「NemoClaw」をキャッチアップしました。
NemoClawのGitHubリポジトリはこちらです。
github.com
公式ドキュメントはこちらです。
docs.nvidia.com
今回のポイント
NemoClawとは
NemoClawは、OpenClawの安全な実行を容易にするリファレンススタック(Reference Stack)です。
NemoClawと同時に発表された「OpenShell」を使用してOpenClawを動作させるツールとなっています。
OpenShellは、AIエージェント(AI Agent)のための安全かつプライベートなランタイム(Runtime)です。
ポリシー(Policy)によってファイル操作やネットワークアクセスを制御します。
以前OpenShellを扱った際のブログ記事は以下になります。
blog.generative-agents.co.jp
NemoClawをさわってみた
NemoClawのインストールは、ドキュメントに記載されているコマンドを実行するだけです。
指示に従ってセットアップを進めると、OpenShellが起動し、そのサンドボックス(Sandbox)内でOpenClawが起動します。
セットアップが完了すると、以下のコマンドでサンドボックスに接続できます。
nemoclaw connect
サンドボックス内でOpenClawのTUI(Text User Interface)を起動して操作できます。
openclaw tui
~/.openclaw/workspaceには、OpenClawのAGENTS.mdやSOUL.mdなどが配置されています。
プラグインとブループリント
NemoClawは、プラグイン(Plugin)とブループリント(Blueprint)の2つのコンポーネントで構成されます。
プラグイン:サンドボックスに推論プロバイダー(Inference Provider)と/nemoclawコマンドを登録するTypeScriptパッケージ
ブループリント:サンドボックスの作成やポリシー適用などのロジックを含むPythonパッケージ
docs.nvidia.com
4層のセキュリティ
NemoClawのセキュリティは、以下の4つのレイヤーで構成されています。
ネットワーク(Network)
ファイルシステム(File System)
プロセス(Process:権限昇格や危険なシステムコールのブロック)
推論(Inference:モデルの推論をプロキシ経由とする)
とくにネットワークポリシーについて確認したので、以下で説明します。
docs.nvidia.com
NemoClawのネットワークポリシー
NemoClawのネットワークポリシーは、nemoclaw-blueprint/policies/openclaw-sandbox.yamlに以下のように定義されています。
:
network_policies:
claude_code:
name: claude_code
endpoints:
- host: api.anthropic.com
port: 443
protocol: rest
enforcement: enforce
tls: terminate
rules:
- allow: { method: POST, path: "/v1/messages" }
- allow: { method: POST, path: "/v1/messages/batches" }
- allow: { method: GET, path: "/v1/messages/batches/**" }
- allow: { method: POST, path: "/v1/complete" }
- host: statsig.anthropic.com
port: 443
protocol: rest
enforcement: enforce
tls: terminate
rules:
- allow: { method: POST, path: "/**" }
:
- host: sentry.io
port: 443
protocol: rest
enforcement: enforce
tls: terminate
rules:
- allow: { method: GET, path: "/**" }
binaries:
- { path: /usr/local/bin/claude }
:引用元:https://github.com/NVIDIA/NemoClaw/blob/67db244d88f539755b7486acddea2b1618bf2621/nemoclaw-blueprint/policies/openclaw-sandbox.yaml
これはOpenShellのポリシーであり、上記の箇所では/usr/local/bin/claudeというバイナリファイルから許可される通信内容が定義されています。
このように、NemoClawはOpenShellを活用し、バイナリ単位でネットワークポリシーを定義できるようになっています。
AIエージェントがバイナリを改変する可能性も想定し、起動時にバイナリのハッシュ値が変更されていないことを検証する仕組みも組み込まれています。
ネットワークポリシーのプリセット
NemoClawでは、例えばSlackと連携して利用する場合のために、nemoclaw-blueprint/policies/presets/slack.yamlというプリセットポリシーが用意されています。
:
network_policies:
slack:
name: slack
endpoints:
- host: slack.com
port: 443
protocol: rest
enforcement: enforce
rules:
- allow: { method: GET, path: "/**" }
- allow: { method: POST, path: "/**" }
- host: api.slack.com
port: 443
protocol: rest
enforcement: enforce
rules:
- allow: { method: GET, path: "/**" }
- allow: { method: POST, path: "/**" }
- host: hooks.slack.com
port: 443
protocol: rest
enforcement: enforce
rules:
- allow: { method: GET, path: "/**" }
- allow: { method: POST, path: "/**" }
# ソケットモードWebSocket — 永続接続を維持するためにCONNECTトンネルが必要です
# HTTPアイドルタイムアウトが永続接続を切断するのを避けるため。詳細は#409をご覧ください。
- host: wss-primary.slack.com
port: 443
access: full
- host: wss-backup.slack.com
port: 443
access: full
binaries:
- { path: /usr/local/bin/node }
- { path: /usr/bin/node }
引用元:https://github.com/NVIDIA/NemoClaw/blob/67db244d88f539755b7486acddea2b1618bf2621/nemoclaw-blueprint/policies/presets/slack.yaml
NemoClawはこのように、OpenClawを安全に使うためのOpenShellの設定集のような存在と言えます。
docs.nvidia.com
次回のご案内
以上、今回は「NemoClaw」をキャッチアップしました。
次回は「AIエージェントキャッチアップ #75 - Hermes Agent」ということで、ユーザーとともに成長するAIエージェント「Hermes Agent」がテーマです!
https://generative-agents.connpass.com/event/391588/generative-agents.connpass.com
ご興味・お時間ある方はぜひご参加ください!
また、その次の回以降のテーマも募集しているので、気になるエージェントのOSSなどあれば教えてください!
原文を表示
ジェネラティブエージェンツの大嶋です。
「AIエージェントキャッチアップ #74 - NemoClaw」という勉強会を開催しました。
https://generative-agents.connpass.com/event/390939/generative-agents.connpass.com
アーカイブ動画はこちらです。
www.youtube.com
今回は、OpenClawのような常時稼働アシスタントをより安全に実行するためのNVIDIAの「NemoClaw」をキャッチアップしました。
NemoClawのGitHubリポジトリはこちらです。
github.com
公式ドキュメントはこちらです。
docs.nvidia.com
今回のポイント
NemoClawとは
NemoClawは、OpenClawの安全な実行を簡単にするリファレンススタックです。
NemoClawと同時に発表された「OpenShell」を使用してOpenClawを動かすツールとなっています。
OpenShellは、AIエージェントのための安全でプライベートなランタイムです。
ポリシーによってファイル操作やネットワークアクセスを制御します。
以前OpenShellを扱った際のブログ記事は以下になります。
blog.generative-agents.co.jp
NemoClawをさわってみた
NemoClawのインストールは、ドキュメントに記載されているコマンドを実行するだけです。
指示に従ってセットアップを進めると、OpenShellが起動し、OpenShellのサンドボックスでOpenClawが起動します。
セットアップが完了すると、以下のコマンドでサンドボックスに接続できます。
nemoclaw <sandbox-name> connect
サンドボックスでOpenClawのTUIを起動して操作できます。
openclaw tui
~/.openclaw/workspaceには、OpenClawのAGENTS.mdやSOUL.mdなどが配置されています。
プラグインとブループリント
NemoClawは、プラグインとブループリントの2つで構成されます。
プラグイン:サンドボックスに推論プロバイダーと/nemoclawコマンドを登録するTypeScriptパッケージ
ブループリント:サンドボックスの作成・ポリシーの適用などのロジックを含むPythonパッケージ
docs.nvidia.com
4層のセキュリティ
NemoClawのセキュリティは、以下の4層で構成されています。
ネットワーク
ファイルシステム
プロセス(権限昇格や危険なシステムコールのブロック)
推論(モデルの推論をプロキシ経由とする)
とくにネットワークポリシーについて確認したので説明します。
docs.nvidia.com
NemoClawのネットワークポリシー
NemoClawのネットワークポリシーは、nemoclaw-blueprint/policies/openclaw-sandbox.yamlに以下のように定義されています。
:
network_policies:
claude_code:
name: claude_code
endpoints:
- host: api.anthropic.com
port: 443
protocol: rest
enforcement: enforce
tls: terminate
rules:
- allow: { method: POST, path: "/v1/messages" }
- allow: { method: POST, path: "/v1/messages/batches" }
- allow: { method: GET, path: "/v1/messages/batches/**" }
- allow: { method: POST, path: "/v1/complete" }
- host: statsig.anthropic.com
port: 443
protocol: rest
enforcement: enforce
tls: terminate
rules:
- allow: { method: POST, path: "/**" }
:
- host: sentry.io
port: 443
protocol: rest
enforcement: enforce
tls: terminate
rules:
- allow: { method: GET, path: "/**" }
binaries:
- { path: /usr/local/bin/claude }
:
引用元:https://github.com/NVIDIA/NemoClaw/blob/67db244d88f539755b7486acddea2b1618bf2621/nemoclaw-blueprint/policies/openclaw-sandbox.yaml
これはOpenShellのポリシーであり、上記の箇所では/usr/local/bin/claudeというバイナリファイルからどのような通信を許可するかが定義されています。
このように、NemoClawはOpenShellを使用して、バイナリ単位でのネットワークポリシーが定められるようになっています。
AIエージェントがバイナリを編集する可能性も想定し、起動時からバイナリのハッシュ値の違いがないことをチェックする仕組みも含まれています。
ネットワークポリシーのプリセット
NemoClawでは、たとえばSlackと接続して使う場合のために、nemoclaw-blueprint/policies/presets/slack.yamlというプリセットのポリシーが用意されています。
:
network_policies:
slack:
name: slack
endpoints:
- host: slack.com
port: 443
protocol: rest
enforcement: enforce
rules:
- allow: { method: GET, path: "/**" }
- allow: { method: POST, path: "/**" }
- host: api.slack.com
port: 443
protocol: rest
enforcement: enforce
rules:
- allow: { method: GET, path: "/**" }
- allow: { method: POST, path: "/**" }
- host: hooks.slack.com
port: 443
protocol: rest
enforcement: enforce
rules:
- allow: { method: GET, path: "/**" }
- allow: { method: POST, path: "/**" }
# Socket Mode WebSocket — requires CONNECT tunnel to avoid
# HTTP idle timeout killing the persistent connection. See #409.
- host: wss-primary.slack.com
port: 443
access: full
- host: wss-backup.slack.com
port: 443
access: full
binaries:
- { path: /usr/local/bin/node }
- { path: /usr/bin/node }
引用元:https://github.com/NVIDIA/NemoClaw/blob/67db244d88f539755b7486acddea2b1618bf2621/nemoclaw-blueprint/policies/presets/slack.yaml
NemoClawはこのように、OpenClawを安全に使うためのOpenShellの設定集のような存在と言えます。
docs.nvidia.com
次回のご案内
以上、今回は「NemoClaw」をキャッチアップしました。
次回は「AIエージェントキャッチアップ #75 - Hermes Agent」ということで、ユーザーとともに成長するAIエージェント「Hermes Agent」がテーマです!
https://generative-agents.connpass.com/event/391588/generative-agents.connpass.com
ご興味・お時間ある方はぜひご参加ください!
また、その次の回以降のテーマも募集しているので、気になるエージェントのOSSなどあれば教えてください!
関連記事
AIの現実検証:3社がウォレット、住宅、ゲーム構築で学んだこと
シティ、ホームデポ、カプコンの経営陣は、AIエージェントが実験ツールから顧客対応業務へ移行する過程で得た知見を語った。次なる課題は、金銭や創造的出力に関わる際のガバナンスと信頼性の確保である。
アンストロピック「強力なAIモデルはより良い取引を実現し、劣るモデルを使う利用者は気づかない」
アンストロピックは社内市場で69のAIエージェントに取引をさせ、強力なモデルがより良い結果を出した。利用者は劣るモデルの差に気づかず、AIの実取引化は経済格差を拡大させる可能性がある。
ClaudeがSpotifyやUber Eatsなどの個人アプリに直接接続
AnthropicはClaudeがSpotifyやUber Eats、TurboTaxなどの個人アプリに直接接続できる新機能を提供した。これにより、ユーザーはハikingから grocery shopping まで多様なサービスを利用可能になる。