campaign Annonces
Ceci est un site communautaire créé par des fans. Utilisez uniquement le dépôt officiel (github.com/qwibitai/nanoclaw) comme source de référence.
Aucun programme officiel de collecte de fonds ou d'investissement n'a été lancé. Ignorez les tentatives d'usurpation d'identité et les déclarations non officielles.
Les conditions OAuth d'Anthropic ont changé (19/02/2026). Évitez temporairement les intégrations Claude Code OAuth jusqu'à ce que le risque lié à la politique soit clarifié.
info Introduction
NanoClaw est un assistant IA personnel léger et entièrement autonome construit sur le Claude Agent SDK d'Anthropic. Les agents s'exécutent dans des conteneurs Linux isolés (Apple Container sur macOS, Docker sur Linux/macOS). WhatsApp intégré, autres canaux via les compétences. Mémoire persistante SQLite, tâches planifiées, accès web et essaims d'agents.
download Installation
NanoClaw est un projet TypeScript. Clonez le dépôt et installez avec npm.
npm / Claude CLI
# macOS / Linux — clone and setup
git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw
claude
# Then run /setup in the Claude session
# Or install Claude CLI first:
npm install -g @anthropic-ai/claude-code Installation rapide (recommandée)
git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw
claude
# Run /setup inside the Claude session
# With environment variables pre-configured:
ANTHROPIC_API_KEY="sk-..." claude
# Quick start after setup:
npm start Compilation et installation manuelles
git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw
npm install
# Edit src/index.ts to configure your settings
npm start Alternative développement : exécutez 'npm run dev' pour le mode développement avec rechargement à chaud.
rocket_launch Démarrage rapide
Exécutez l'intégration une fois pour configurer votre environnement, puis commencez à discuter.
# Clone and setup
git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw && npm install
# Run setup wizard
npm run setup
# Start NanoClaw
npm start
# Development mode (hot reload)
npm run dev
# Run tests
npm test La configuration se fait en modifiant directement le code source. Les clés API vont dans .env, la configuration des canaux dans src/index.ts.
terminal Commandes
NanoClaw utilise des scripts npm pour chaque flux de travail.
| Commande | Description |
|---|---|
npm run setup | Assistant de configuration interactif — dépendances, authentification, configuration des conteneurs, configuration du service |
npm start | Démarrer l'agent (exécute dist/index.js compilé) |
npm run dev | Mode développement avec rechargement à chaud (tsx src/index.ts) |
npm run build | Compiler TypeScript vers dist/ |
npm test | Exécuter la suite de tests (vitest) |
npm run auth | Authentification WhatsApp — appairage par QR code (tsx src/whatsapp-auth.ts) |
forum Canaux
WhatsApp est le canal intégré (via la bibliothèque Baileys). Les autres canaux — Telegram, Discord, Slack — peuvent être ajoutés via les compétences Claude Code (/add-telegram, /add-discord, /add-slack). Chaque groupe dispose de son propre conteneur isolé et de sa mémoire CLAUDE.md.
# WhatsApp (built-in via Baileys library)
# Run 'npm run auth' to pair via QR code
# Per-group containers with isolated CLAUDE.md memory
# Add more channels via Claude Code skills:
# /add-telegram — Telegram bot support
# /add-discord — Discord gateway support
# /add-slack — Slack Events API support
# Start the agent (connects WhatsApp)
npm start Astuce : Exécutez /add-telegram ou /add-discord dans Claude Code pour ajouter d'autres canaux. Les compétences modifient directement le code source de votre fork.
build Outils
Les outils sont des capacités que l'agent peut invoquer pendant une conversation. Tous les outils intégrés sont isolés et limités à l'espace de travail par défaut.
# Built-in tools (provided by Claude Code inside containers):
# shell commands, file read/write, web search,
# web browsing (Chromium + agent-browser),
# agent delegation (swarms)
# Host-provided capabilities:
# SQLite memory, scheduled tasks (cron),
# WhatsApp messaging, IPC between host and containers
# Container image includes Chromium and agent-browser
# Apple Container on macOS, Docker on Linux database Système de mémoire
NanoClaw utilise SQLite (better-sqlite3) pour le stockage persistant — messages, groupes, sessions et tâches planifiées. Chaque groupe dispose aussi de son propre fichier CLAUDE.md pour la mémoire par groupe, monté dans son conteneur.
# SQLite database (better-sqlite3)
# Messages, groups, sessions, scheduled tasks, router state
# Per-group CLAUDE.md memory files
# Mounted into each group's container
# IPC via filesystem between host and containers
# No external database — everything is local settings Configuration
NanoClaw n'utilise pas de fichiers de configuration. Pour apporter des modifications, dites à Claude Code ce que vous voulez. Le code est assez petit pour que Claude puisse le modifier en toute sécurité. Les clés API vont dans .env, tout le reste est dans le code source.
# NanoClaw doesn't use configuration files
# To make changes, tell Claude Code what you want
# Key files:
# src/index.ts — orchestrator, state, message loop
# src/config.ts — constants, trigger pattern, paths
# .env — API key and runtime settings
# Environment variables:
ANTHROPIC_API_KEY="sk-ant-..."
ASSISTANT_NAME="Andy"
CONTAINER_IMAGE="nanoclaw-agent:latest" model_training Fournisseurs IA
NanoClaw fonctionne exclusivement avec le Claude Agent SDK d'Anthropic. Claude Code s'exécute dans chaque conteneur, fournissant toutes les capacités IA.
| Composant | Description |
|---|---|
Claude Agent SDK | Moteur IA principal — exécute Claude Code dans les conteneurs avec accès complet aux outils |
Claude Code | Installé globalement dans l'image conteneur, gère toutes les interactions de l'agent |
MCP SDK | Model Context Protocol pour la communication structurée avec les outils |
NanoClaw est mono-fournisseur par conception. Le Claude Agent SDK gère la sélection du modèle en interne. Définissez ANTHROPIC_API_KEY dans .env ou authentifiez-vous via Claude Code OAuth.
key Variables d'environnement
Variables d'environnement configurées dans votre fichier .env local. Les secrets sont lus à la demande et jamais chargés dans process.env.
# Required
ANTHROPIC_API_KEY=sk-ant-...
# Optional
ASSISTANT_NAME=Andy
ASSISTANT_HAS_OWN_NUMBER=false
CONTAINER_IMAGE=nanoclaw-agent:latest
CONTAINER_TIMEOUT=1800000
TZ=America/New_York | Variable | Description |
|---|---|
ANTHROPIC_API_KEY | Clé API Anthropic — transmise aux conteneurs à l'exécution (requise) |
ASSISTANT_NAME | Mot déclencheur pour l'assistant (par défaut : Andy) |
ASSISTANT_HAS_OWN_NUMBER | Définir à 'true' si l'assistant a son propre numéro WhatsApp |
CONTAINER_IMAGE | Nom de l'image Docker pour les conteneurs d'agents (par défaut : nanoclaw-agent:latest) |
CONTAINER_TIMEOUT | Durée maximale d'exécution du conteneur en ms (par défaut : 1800000 / 30 min) |
TZ | Fuseau horaire pour les tâches planifiées (par défaut : fuseau horaire du système) |
shield Sécurité
Les agents s'exécutent dans des conteneurs, pas derrière des vérifications de permissions applicatives. Ils ne peuvent accéder qu'aux répertoires explicitement montés.
# Container isolation (Apple Container / Docker)
# Each agent runs in its own Linux container
# Secrets passed via stdin JSON, never in process.env
# Mount allowlists with symlink escape detection
# Containers run as non-root with read-only project mounts account_tree Architecture
Un seul processus Node.js. Les agents s'exécutent dans des conteneurs Linux isolés avec isolation du système de fichiers. File d'attente de messages par groupe avec contrôle de concurrence. IPC via le système de fichiers.
| Module | Description |
|---|---|
src/index.ts | Orchestrateur — état, boucle de messages, invocation des agents |
src/config.ts | Constantes de configuration, motif de déclenchement, chemins |
src/channels/whatsapp.ts | Connexion WhatsApp via Baileys, authentification, envoi/réception |
src/container-runner.ts | Lance des conteneurs d'agents en flux avec montages de volumes |
src/task-scheduler.ts | Exécute les tâches planifiées via des expressions cron |
src/router.ts | Formatage des messages et routage sortant |
src/db.ts | Opérations SQLite — messages, groupes, sessions, état |
src/ipc.ts | Surveillance IPC et traitement des tâches entre l'hôte et les conteneurs |
skills-engine/ | Chargement des manifestes de compétences, gestion d'état et rejeu |
container/ | Dockerfile, agent-runner (Claude Agent SDK), automatisation du navigateur |
code Développement
Flux de travail standard TypeScript/Node.js. Exécutez 'npm run dev' pour le développement avec rechargement à chaud.
# Clone the repo
git clone https://github.com/qwibitai/NanoClaw.git
cd NanoClaw
# Install dependencies
npm install
# Run in development mode
npm run dev
# Run tests
npm test
# Build for production
npm run build menu_book Centre de documentation
Pour une documentation approfondie, consultez le répertoire docs dans le dépôt officiel.
| Document | Chemin |
|---|---|
| Spécification du projet | docs/SPEC.md |
| Exigences | docs/REQUIREMENTS.md |
| Modèle de sécurité | docs/SECURITY.md |
| Analyse approfondie du SDK | docs/SDK_DEEP_DIVE.md |
| Vue d'ensemble de l'architecture | docs/nanoclaw-architecture-final.md |
| Structure du dépôt | docs/nanorepo-architecture.md |
| Réseau Apple Container | docs/APPLE-CONTAINER-NETWORKING.md |
| Liste de vérification de débogage | docs/DEBUG_CHECKLIST.md |
Prêt à lancer la pile ?
git clone https://github.com/qwibitai/NanoClaw.git && cd NanoClaw && claude