NemoClawの仕組み

NemoClawは軽量なCLIプラグインとバージョン管理されたブループリントを組み合わせ、OpenClawを制御されたサンドボックスに移行させます。 このページでは、NemoClawのコアコンセプトをハイレベルで解説します。

各コンポーネントの連携

nemoclaw CLIは、サンドボックス化されたOpenClawエージェントをセットアップ・管理するメインのエントリーポイントです。 重い処理はバージョン管理されたブループリント(Pythonアーティファクト)に委譲し、ブループリントがOpenShell CLIを通じてサンドボックスの作成、ポリシーの適用、推論プロバイダーの設定をオーケストレーションします。

flowchart TB
    subgraph Host
        CMD["nemoclaw onboard"]
        PLUGIN[nemoclaw plugin]
        BLUEPRINT[blueprint runner]
        CLI["openshell CLI sandbox · gateway · inference · policy"]

        CMD --> PLUGIN
        PLUGIN --> BLUEPRINT
        BLUEPRINT --> CLI
    end

    subgraph Sandbox["OpenShell Sandbox"]
        AGENT[OpenClaw agent]
        INF[NVIDIA inference, routed]
        NET[strict network policy]
        FS[filesystem isolation]

        AGENT --- INF
        AGENT --- NET
        AGENT --- FS
    end

    PLUGIN --> AGENT

    classDef nv fill:#76b900,stroke:#333,color:#fff
    classDef nvLight fill:#e6f2cc,stroke:#76b900,color:#1a1a1a
    classDef nvDark fill:#333,stroke:#76b900,color:#fff

    class CMD,PLUGIN,BLUEPRINT nvDark
    class CLI nv
    class AGENT nv
    class INF,NET,FS nvLight

    style Host fill:none,stroke:#76b900,stroke-width:2px,color:#1a1a1a
    style Sandbox fill:#f5faed,stroke:#76b900,stroke-width:2px,color:#1a1a1a

設計原則

NemoClawのアーキテクチャは以下の原則に従っています。

スリムなプラグイン、バージョン管理されたブループリント プラグインは小さく安定した状態を維持します。オーケストレーションロジックはブループリント側にあり、独自のリリースサイクルで進化します。

CLI境界の尊重 nemoclaw CLIがメインインターフェースです。プラグインコマンドはopenclaw nemoclaw配下で利用可能ですが、OpenClaw組み込みコマンドを上書きしません。

サプライチェーンの安全性 ブループリントアーティファクトはイミュータブルでバージョン管理されており、実行前にダイジェスト検証が行われます。

新規インストールはOpenShellネイティブで 既存のOpenClawインストールがないユーザーには、プラグイン駆動のブートストラップではなくopenshell sandbox createの直接利用を推奨します。

再現可能なセットアップ セットアップを再実行すると、同じブループリントとポリシー定義からサンドボックスが再作成されます。

プラグインとブループリント

NemoClawは2つのパーツに分かれています:

  • プラグインはTypeScriptパッケージで、nemoclaw CLIを駆動し、openclaw nemoclaw配下にコマンドを登録します。 ユーザーインタラクションを処理し、オーケストレーション作業をブループリントに委譲します。
  • ブループリントはバージョン管理されたPythonアーティファクトで、サンドボックスの作成、ポリシーの適用、推論の設定に関するすべてのロジックを含んでいます。 プラグインがブループリントの解決、検証、サブプロセスとしての実行を行います。

この分離により、プラグインを小さく安定した状態に保ちつつ、ブループリントは独自のペースで進化できます。

サンドボックスの作成

nemoclaw onboardを実行すると、NemoClawは隔離されたコンテナ内でOpenClawを動かすOpenShellサンドボックスを作成します。 ブループリントがOpenShell CLIを通じてこのプロセスをオーケストレーションします:

  1. プラグインがブループリントアーティファクトをダウンロードし、バージョン互換性を確認し、ダイジェストを検証。
  2. ブループリントが作成または更新すべきOpenShellリソース(gateway、推論プロバイダー、サンドボックス、ネットワークポリシー)を判断。
  3. ブループリントがOpenShell CLIコマンドを呼び出し、サンドボックスを作成して各リソースを設定。

サンドボックス起動後、エージェントはその中で稼働し、ネットワーク、ファイルシステム、推論のすべての制御が適用されます。

推論ルーティング

エージェントからの推論リクエストはサンドボックスから直接出ません。 OpenShellがすべての推論コールをインターセプトし、設定済みのプロバイダーにルーティングします。 NemoClawはデフォルトで推論をNVIDIAクラウドにルーティングします。具体的には、build.nvidia.com経由でNemotron 3 Super 120Bを使用します。サンドボックスを再起動せずにランタイムでモデルを切り替え可能です。

ネットワークとファイルシステムポリシー

サンドボックスはopenclaw-sandbox.yamlで定義された厳格なベースラインポリシーで起動します。 このポリシーは、エージェントがアクセスできるネットワークエンドポイントとファイルシステムパスを制御します。

  • ネットワーク:ポリシーに記載されたエンドポイントのみ許可されます。 エージェントが未記載のホストにアクセスしようとすると、OpenShellがリクエストをブロックし、TUIに表示してオペレーターの承認を待ちます。
  • ファイルシステム:エージェントは/sandbox/tmpに書き込み可能です。 その他のシステムパスはすべて読み取り専用です。

承認されたエンドポイントは現在のセッション中有効ですが、ベースラインポリシーファイルには保存されません。

次のステップ