Comment fonctionne NemoClaw

NemoClaw combine un plugin CLI léger avec un blueprint versionné pour déplacer OpenClaw dans un sandbox contrôlé. Cette page explique les concepts clés de NemoClaw à un niveau général.

Comment les éléments s’articulent

Le CLI nemoclaw est le point d’entrée principal pour configurer et gérer les agents OpenClaw isolés. Il délègue les opérations lourdes à un blueprint versionné, un artefact Python qui orchestre la création du sandbox, l’application des politiques et la configuration du fournisseur d’inférence via le CLI OpenShell.

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

Principes de conception

L’architecture de NemoClaw suit les principes suivants.

Plugin léger, blueprint versionné Le plugin reste petit et stable. La logique d’orchestration réside dans le blueprint et évolue selon son propre calendrier de publication.

Respecter les limites du CLI Le CLI nemoclaw est l’interface principale. Les commandes du plugin sont disponibles sous openclaw nemoclaw mais ne remplacent pas les commandes intégrées d’OpenClaw.

Sécurité de la chaîne d’approvisionnement Les artefacts de blueprint sont immuables, versionnés et vérifiés par empreinte avant exécution.

Natif OpenShell pour les nouvelles installations Pour les utilisateurs sans installation OpenClaw existante, NemoClaw recommande d’utiliser directement openshell sandbox create plutôt que de forcer un bootstrap piloté par le plugin.

Configuration reproductible Relancer la configuration recrée le sandbox à partir du même blueprint et des mêmes définitions de politique.

Plugin et blueprint

NemoClaw est divisé en deux parties :

  • Le plugin est un package TypeScript qui alimente le CLI nemoclaw et enregistre également des commandes sous openclaw nemoclaw. Il gère l’interaction avec l’utilisateur et délègue le travail d’orchestration au blueprint.
  • Le blueprint est un artefact Python versionné qui contient toute la logique de création de sandboxes, d’application de politiques et de configuration de l’inférence. Le plugin résout, vérifie et exécute le blueprint en tant que sous-processus.

Cette séparation maintient le plugin petit et stable tout en permettant au blueprint d’évoluer selon son propre calendrier de publication.

Création du sandbox

Lorsque vous exécutez nemoclaw onboard, NemoClaw crée un sandbox OpenShell qui exécute OpenClaw dans un conteneur isolé. Le blueprint orchestre ce processus via le CLI OpenShell :

  1. Le plugin télécharge l’artefact du blueprint, vérifie la compatibilité de version et vérifie l’empreinte.
  2. Le blueprint détermine quelles ressources OpenShell créer ou mettre à jour, telles que le gateway, les fournisseurs d’inférence, le sandbox et la politique réseau.
  3. Le blueprint appelle les commandes du CLI OpenShell pour créer le sandbox et configurer chaque ressource.

Après le démarrage du sandbox, l’agent fonctionne à l’intérieur avec tous les contrôles réseau, de système de fichiers et d’inférence en place.

Routage d’inférence

Les requêtes d’inférence de l’agent ne quittent jamais directement le sandbox. OpenShell intercepte chaque appel d’inférence et le route vers le fournisseur configuré. NemoClaw route l’inférence vers le cloud NVIDIA, spécifiquement Nemotron 3 Super 120B via build.nvidia.com. Vous pouvez changer de modèle à l’exécution sans redémarrer le sandbox.

Politique réseau et système de fichiers

Le sandbox démarre avec une politique de base stricte définie dans openclaw-sandbox.yaml. Cette politique contrôle quels endpoints réseau l’agent peut atteindre et quels chemins du système de fichiers il peut accéder.

  • Pour le réseau, seuls les endpoints listés dans la politique sont autorisés. Lorsque l’agent tente d’atteindre un hôte non listé, OpenShell bloque la requête et la signale dans le TUI pour approbation par l’opérateur.
  • Pour le système de fichiers, l’agent peut écrire dans /sandbox et /tmp. Tous les autres chemins système sont en lecture seule.

Les endpoints approuvés persistent pour la session en cours mais ne sont pas sauvegardés dans le fichier de politique de base.

Étapes suivantes

  • Suivez le Démarrage rapide pour lancer votre premier sandbox.
  • Consultez l’Architecture pour la structure technique complète, y compris les dispositions de fichiers et le cycle de vie du blueprint.
  • Consultez les Profils d’inférence pour la configuration détaillée des fournisseurs.