Files
2026-06-09 18:40:21 +02:00

6.3 KiB


title: NanoClaw created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, artificial-intelligence, assistant, agent, go, whatsapp, telegram, auto-hebergement] confidence: medium contested: false sources: [https://selfh.st/apps/?tag=Artificial+Intelligence, https://github.com/nanocoai/nanoclaw]

🦀 NanoClaw

Assistant IA personnel léger et sécurisé — alternative minimaliste aux assistants IA généralistes, conçu pour être lisible, customisable et isolé dans des containers pour la sécurité. Cœur en Go, ~500 lignes de code, déployable en quelques minutes.

Métadonnée Valeur
Site web nanoclaw.dev
GitHub nanocoai/nanoclaw
License MIT
Langage Go, TypeScript
Étoiles 12 920
Dernière MAJ 2026-05-18
Catégorie cat-artificial-intelligence

Description

NanoClaw est né d'un constat : les assistants IA personnels modernes (type app-openclaw) sont devenus monstrueusement complexes — des centaines de milliers de lignes de code, des dizaines de dépendances, et une surface d'attaque importante. Pour un usage personnel (un seul utilisateur, sa machine, ses données), c'est disproportionné.

Le parti-pris de NanoClaw est radical : un seul binaire Go, ~500 lignes de code, focalisé sur l'essentiel — exécuter des agents IA (Claude, modèles locaux Ollama) dans des containers Linux isolés pour que le LLM puisse utiliser bash, read, write sans risquer de compromettre la machine hôte. C'est l'isolation au niveau OS plutôt qu'au niveau application (allowlists, pairing codes).

L'expérience utilisateur est originale : on converse avec l'agent via les canaux de messagerie qu'on utilise déjà — WhatsApp, Telegram, Discord, Slack, Signal, iMessage, Gmail, etc. — via un simple mot déclencheur (par défaut @Andy). L'agent peut aussi planifier des tâches récurrentes (ex : "envoie-moi chaque matin à 9h un résumé de mes emails"), gérer une mémoire long-terme, et faire du RAG sur des dossiers montés.

Philosophie du projet : "small enough to understand" — vous êtes encouragé à forker le repo et à modifier le code pour l'adapter à vos besoins, plutôt qu'à configurer des centaines d'options. C'est l'anti-thèse du framework surdimensionné.

Installation

Option 1 : Docker Compose (recommandé)

# docker-compose.yml
version: '3.8'

services:
  nanoclaw:
    build: .
    container_name: nanoclaw
    restart: unless-stopped
    env_file:
      - .env
    volumes:
      - ./data:/data
      - /var/run/docker.sock:/var/run/docker.sock  # nécessaire pour spawner les containers d'agent
    networks:
      - nanoclaw-net

  # Backend d'inférence local optionnel
  ollama:
    image: ollama/ollama:latest
    container_name: nanoclaw-ollama
    restart: unless-stopped
    volumes:
      - ollama_data:/root/.ollama
    networks:
      - nanoclaw-net

networks:
  nanoclaw-net:
    driver: bridge

volumes:
  ollama_data:

Option 2 : Installation manuelle (script officiel)

# Le script officiel fait tout : install Node, pnpm, Docker, build de l'agent container
git clone https://github.com/nanocoai/nanoclaw.git
cd nanoclaw
bash nanoclaw.sh  # setup guidé pas-à-pas

Configuration

La configuration se fait principalement par fichiers Markdown dans le dossier groups/ :

  • groups/<nom>/CLAUDE.md : prompt système et personnalité de l'agent
  • groups/<nom>/memory.md : mémoire long-terme persistante
  • .env : credentials API (Anthropic, OpenAI, tokens WhatsApp/Telegram)

Variables d'environnement clés :

  • ANTHROPIC_API_KEY : clé API pour Claude (provider par défaut)
  • OLLAMA_HOST : URL d'Ollama pour les modèles locaux (http://ollama:11434)
  • TELEGRAM_BOT_TOKEN : token du bot Telegram
  • WHATSAPP_ENABLED=true : active l'adaptateur WhatsApp via Baileys
  • TRIGGER_WORD : mot déclencheur (par défaut @Andy)

Chaque agent (groupe) a son propre container avec ses propres montages — par exemple un agent peut avoir accès à ~/Documents mais pas à ~/.ssh.

Alternatives

Open Source

  • app-openclaw — alternative plus complète (multi-canaux, voix, canvas) mais beaucoup plus complexe
  • app-open-webui — interface web, pas un agent autonome conversationnel
  • Open Interpreter — agent local en Python, sans interface messagerie
  • Aider — agent IA focalisé développement, en terminal
  • Letta (ex MemGPT) — agents avec mémoire long-terme, plus "framework"

Propriétaires (ce que cette app remplace)

  • OpenAI Operator — agent IA personnel dans le cloud
  • Claude Computer Use (Anthropic) — équivalent, mais cloud
  • Replit Agent — agent dev, cloud
  • GitHub Copilot Workspace — environnement agentique cloud

Sécurité

C'est le point fort principal de NanoClaw :

  • Isolation OS : les agents tournent dans des containers Docker, pas de permission "logique" (allowlists) — c'est une vraie isolation noyau
  • Surface minimale : ~500 lignes de Go = auditable par un humain en une heure
  • Pas de clés en clair : les credentials sortent du container via un vault d'agents (ex : OneCLI), injectés à la demande
  • Montages explicites : chaque agent ne voit QUE les dossiers explicitement montés (zéro accès par défaut à ~/.ssh, /etc, etc.)
  • bash est safe : les commandes s'exécutent dans le container, pas sur l'hôte

⚠️ Attention : le montage du socket Docker (/var/run/docker.sock) donne un accès root effectif à l'agent sur l'hôte. À utiliser avec discernement, ou préférer Docker Sandboxes / Apple Container pour une isolation plus forte.

Ressources

Pages Liées