Test de NanoClaw : l'alternative à OpenClaw centrée sur les conteneurs
Un test de NanoClaw pour l'auto-hébergement : script d'installation, conteneurs Docker par agent, coffre d'identifiants, diagnostics et personnalisation via Claude Code.
NanoClaw est né en réponse à une critique précise d’OpenClaw : trop de code, et un agent qui exécute des commandes sur votre hôte par défaut. Sa réponse est un petit projet TypeScript où un seul processus hôte achemine les messages et où chaque agent vit dans son propre conteneur Linux, ne voyant que les dossiers que vous montez. Il a été lancé le 31 janvier 2026, est sous licence MIT, et comptait 31 096 étoiles GitHub lors de notre vérification du 8 novembre. La contrepartie : il s’appuie sur Claude et Claude Code pour presque tout.

Pour qui
NanoClaw convient aux développeurs qui veulent un agent de type OpenClaw dans WhatsApp, Telegram, Slack, Discord ou iMessage, qui tiennent davantage à l’isolation qu’à la taille de l’écosystème, et qui acceptent volontiers que Claude Code modifie leur fork. Si vous préférez configurer les choses en éditant un fichier de réglages, ou si vous n’utilisez pas Claude Code, il vous paraîtra contre-intuitif.
Installation : prévoyez une heure
Le quickstart est honnête sur l’effort : « prévoyez 30 à 60 minutes ». Il vous faut une machine Mac ou Linux avec au moins 4 Go de mémoire (Windows via WSL2) et Git. Ensuite :
git clone https://github.com/nanocoai/nanoclaw.git
cd nanoclaw
bash nanoclaw.sh
Le script installe ce qui manque (Node, pnpm et Docker), puis déroule une séquence fixe :
- Image de sandbox. Construisez-la en local (par défaut, sans aucun appel externe) ou récupérez une image durcie préconstruite auprès de son partenaire Echo, ce qui nécessite un compte NanoClaw gratuit.
- Identifiants. Il installe OneCLI, un coffre pour la connexion à votre modèle, et vous connectez Claude, Codex ou une clé d’API. Le guide suppose un abonnement Claude Pro ou Max.
- Accès aux dossiers. Vous choisissez quels dossiers supplémentaires un agent peut voir. Sur une installation neuve, cette liste est vide.
- Service d’arrière-plan et message de test.
- Optionnellement, un canal de messagerie. Telegram passe par @BotFather et un code d’appairage, Slack peut créer l’application pour vous, et WhatsApp se lie comme appareil par QR code ou code d’appairage.
Cela fait plus d’étapes que l’installateur d’OpenClaw, mais chacune d’elles est une décision de sécurité prise d’emblée au lieu d’être repoussée à plus tard.
Isolation : conteneurs et coffre d’identifiants par défaut
L’accès au shell ne touche jamais votre hôte : chaque agent tourne dans son propre conteneur et ne voit que ce que vous montez. Le point moins évident concerne les identifiants. Les agents ne détiennent pas de clés d’API brutes ; les appels sortants passent par une passerelle d’identifiants avec des politiques et des limites de débit par agent. Un agent victime d’une injection de prompt peut abuser des accès dont il dispose, mais il ne peut pas lire et divulguer une clé qu’il ne voit jamais. NemoClaw adopte une approche similaire, en gardant les identifiants hors de son sandbox.
Docker est la frontière, donc Docker est indispensable, et la machine doit rester allumée et connectée pour que l’agent réponde.
Télémétrie
NanoClaw n’a pas de comptes utilisateurs propres (le compte optionnel ne sert qu’à l’image durcie) et n’entraîne aucun modèle. Il envoie toutefois par défaut des diagnostics d’installation anonymes ; définissez NANOCLAW_NO_DIAGNOSTICS=1 pour les arrêter. Si vous récupérez l’image durcie, ce compte enregistre votre e-mail et la date de récupération.
Personnalisation : pas de fichiers de configuration, par choix
C’est la décision qui définit NanoClaw. Il n’y a rien à configurer ; pour changer son comportement, vous demandez à Claude Code de modifier le code de votre propre fork, et les nouveaux canaux (Teams, Matrix, Google Chat, Signal, WeChat, e-mail et autres) arrivent sous forme de compétences /add-<channel> que Claude Code applique. Les autres fournisseurs de modèles fonctionnent de la même façon : OpenCode, Codex et Ollama s’ajoutent par agent via des compétences.
L’avantage : une base de code assez petite pour être lue, et une installation qui correspond exactement à ce que vous avez demandé. Les inconvénients sont réels pour qui auto-héberge :
- Plus votre fork diverge, plus récupérer les mises à jour de l’upstream devient une fusion plutôt qu’une simple mise à niveau.
- Le débogage et les modifications passent par Claude Code, qui nécessite lui-même un abonnement ou une clé de modèle.
- Deux installations de NanoClaw peuvent se comporter très différemment, si bien que les réponses de la communauté s’appliquent moins directement.
Modèles et coût
Claude est le modèle par défaut, via le Claude Agent SDK d’Anthropic : le coût réaliste de fonctionnement est donc un abonnement Claude ou l’usage de l’API. Des modèles locaux à poids ouverts via Ollama sont possibles grâce à la compétence correspondante, ce qui ramène la facture de modèle à zéro au prix de capacités moindres. Les tâches planifiées aident ici : elles peuvent d’abord exécuter un script de contrôle et éviter de réveiller l’agent quand il n’y a rien à faire, ce qui économise des tokens sur les vérifications fréquentes.
Comment il se compare
- OpenClaw : 29 canaux de messagerie, 142 plugins officiels et un fichier de configuration classique, mais les outils s’exécutent sur l’hôte tant que vous n’activez pas son sandbox. Voir NanoClaw vs OpenClaw.
- ZeroClaw : également sandboxé par défaut, sous forme de binaire Rust unique sans Docker et sans télémétrie par défaut.
- NemoClaw : enveloppe OpenClaw ou Hermes dans un sandbox avec approbations réseau, mais il est en alpha et plus lourd.
- Rakazo : un conteneur par ordinateur de bot lui aussi, pensé pour plusieurs bots toujours actifs avec une application web et mobile.
D’autres options figurent dans les alternatives à OpenClaw.
Verdict
NanoClaw offre l’une des meilleures isolations parmi les agents légers : des conteneurs par agent, une liste de dossiers autorisés vide au départ, et des clés que l’agent ne détient jamais. Le prix à payer : la dépendance à Claude Code comme outil de configuration et un fork à maintenir. Si vous vivez déjà dans Claude Code, ce prix est faible ; sinon, choisissez un agent que vous pouvez configurer sans lui.
Tarifs
| Open source | Gratuit |
|
|---|
Fonctionnalités
| Recherche web | Oui |
|---|---|
| Génération d'images | Inconnu |
| Mode vocal | Inconnu |
| Envoi de fichiers | Oui |
| Mémoire | Oui |
| Agit à votre place | Oui |
| Intégrations d'apps | Oui |
| Travaille en autonomie | Oui |
| Vous écrit en premier | Oui |
| Plusieurs bots | Oui |
Points forts
- Every agent runs in its own Docker container and sees only the folders you mount, so shell access stays off your host
- Small codebase (one host process and a handful of files) that you customize by having Claude Code edit your fork
- Agents never hold raw API keys: outbound calls go through a credential gateway with per-agent policies and rate limits
- Many chat channels, including WhatsApp, Telegram, Slack, Discord, iMessage, Teams, Matrix and email, with one or several agents per channel
- Scheduled tasks with optional script gates that skip waking the agent when there's nothing to do
Points faibles
- Built around Claude and Claude Code: customizing, debugging and adding channels all go through Claude Code
- Sends anonymous setup diagnostics unless you set NANOCLAW_NO_DIAGNOSTICS=1
- No config files by design, so every change means editing code in your own fork
- Needs Docker, and Windows only works through WSL2
Idéal pour
- People who want OpenClaw-style chat-app agents with real container isolation
- Developers comfortable letting Claude Code customize their own fork
- Running several separate agents, each with its own memory and access
