ClaudeClaw transforme votre abonnement Claude Code en assistant permanent : taches planifiees, Telegram, Discord, voix, dashboard. Zero cout supplementaire.
Vous ouvrez un terminal, vous posez votre question, Claude repond, et le process s'arrete. Pas de planification, pas de notifications, pas de memoire entre les sessions. ClaudeClaw resout ca en ajoutant un daemon persistant par-dessus Claude Code.
Un fichier Markdown avec un schedule cron + un prompt. Le daemon execute a l'heure dite, timezone-aware. Hot-reload toutes les 30 secondes.
Texte, photos, documents, notes vocales. Le bot repond depuis votre machine, dans votre repertoire projet, avec acces a vos fichiers et outils.
Toutes les X minutes, l'agent verifie s'il y a quelque chose qui merite votre attention. S'il detecte un truc, il vous contacte. Sinon, silence.
Identite, preferences, contexte metier : tout dans un fichier Markdown injecte en system prompt a chaque appel. L'agent ne repart jamais de zero.
ClaudeClaw n'est pas un bot generique. Au premier lancement, un wizard conversationnel vous pose des questions pour definir l'identite de l'agent : son nom, son ton, son emoji, ses limites. Un fichier SOUL.md definit sa philosophie : "Tu n'es pas un chatbot. Tu deviens quelqu'un."
Envoyez une note vocale, whisper.cpp la transcrit localement (pas de cloud), et Claude repond. Fonctionne offline une fois le modele telecharge.
Interface sur le port 4632. Gestion des jobs, logs en temps reel, etat du daemon. Pas besoin de terminal pour piloter l'agent.
J'ai lu le code source de moazbuilds/claudeclaw ligne par ligne. Voici ce qu'il fait reellement, sans marketing.
claude comme subprocess. Tout ce que Claude Code sait faire en terminal, ClaudeClaw sait le faire en automatique ou via Telegram.
Texte, photo, document ou note vocale. Verification de l'ID utilisateur autorise.
Si voix → whisper.cpp local transcrit en texte. Si image/doc → sauvegarde en fichier temporaire.
Le message entre dans une queue. Un seul appel claude -p a la fois (heartbeat, cron et messages partagent la meme queue).
claude -p "prompt" --resume SESSION_ID --append-system-prompt CLAUDE.MD avec --dangerously-skip-permissions pour le mode headless.
Claude a acces a tous les outils (Bash, fichiers, web, MCP). Le resultat est renvoye sur Telegram. Session ID sauvegarde pour le prochain message.
Pas de base de donnees, pas de Docker, pas de serveur externe. Tout est fichiers plats dans .claude/claudeclaw/.
| Fichier | Role |
|---|---|
CLAUDE.md | Memoire permanente. Identite, preferences, contexte metier. Injecte en system prompt a chaque appel. |
.claude/claudeclaw/settings.json | Config : modele, Telegram token, Discord token, heartbeat, timezone, securite, web port. |
.claude/claudeclaw/session.json | Session ID active. Permet a Claude de reprendre la conversation la ou il s'est arrete. |
.claude/claudeclaw/jobs/*.md | Un fichier par tache planifiee. Schedule cron en frontmatter YAML, prompt en corps. Hot-reload 30s. |
.claude/claudeclaw/prompts/HEARTBEAT.md | Prompt de veille personnalise. Recharge a chaque tick du heartbeat. |
prompts/SOUL.md | Philosophie de l'agent : ton, limites, style de communication, regles d'emoji. Injecte a chaque session. |
prompts/IDENTITY.md | Nom, creature, vibe, emoji signature. Rempli au premier lancement via le wizard conversationnel. |
prompts/USER.md | Profil de l'humain : nom, timezone, contexte. Enrichi au fil du temps par l'agent lui-meme. |
prompts/BOOTSTRAP.md | Script du premier contact. L'agent pose des questions une par une pour se configurer ("Hey, je viens de me reveiller. Qui es-tu ?"). |
.claude/claudeclaw/logs/ | Logs de chaque execution (heartbeat, cron, messages). |
| Niveau | Outils disponibles | Scope |
|---|---|---|
locked | Read, Grep, Glob uniquement | Repertoire projet |
strict | Tout sauf Bash, WebSearch, WebFetch | Repertoire projet |
moderate | Tous les outils | Repertoire projet |
unrestricted | Tous les outils | Systeme entier |
--dangerously-skip-permissions (mode headless, pas de prompt de confirmation). Le scope "repertoire projet" est enforce via le system prompt, pas via une sandbox systeme. C'est une limitation a connaitre.
Memes fonctionnalites, appliquees a differents contextes. Le principe : tout ce que vous faites manuellement et repetivement avec Claude Code peut etre automatise.
Heartbeat toutes les 30 min qui verifie vos emails, vos tickets, vos commits. Notification Telegram uniquement si quelque chose merite votre attention.
Cron job du lundi 9h : "Resume l'activite de la semaine, les heures facturees, les taches en retard." Le rapport arrive sur Telegram sans rien faire.
Depuis Telegram : "Trouve les 10 derniers appels d'offre BTP dans le 49 sur marches-publics.gouv.fr." L'agent scrape, filtre, et envoie le resultat.
Depuis le telephone : "Genere la facture pour le client Dupont, prestation du 12 mars, 3 jours a 600." Fichier PDF cree et envoye.
Depuis le chantier : "Renomme tous les plans du dossier Leclerc en ajoutant la date du jour." Execute sur votre Mac, confirme par Telegram.
Les skills Claude Code (~/.claude/skills/) sont charges automatiquement. Gmail, Google Calendar, browser automation : tout fonctionne via Telegram.
Telegram et Discord ne sont que deux entrees parmi d'autres. L'agent peut aussi recevoir des commandes par webhook HTTP -- ce qui ouvre la porte a toutes vos apps et a vos workflows n8n.
L'agent tourne sur votre Mac avec un serveur web local (dashboard). Ce serveur expose des routes webhook : n'importe quelle application qui sait faire un POST HTTP peut envoyer un prompt a l'agent. Le probleme, c'est que votre Mac est derriere votre box internet, pas accessible depuis l'exterieur.
La solution : un tunnel Cloudflare. Un outil gratuit (cloudflared) cree un tunnel securise entre votre Mac et une URL publique. Pas besoin d'ouvrir de port sur la box, pas besoin de VPS. Votre Mac reste invisible, mais le tunnel rend le webhook accessible depuis n'importe ou.
Un workflow n8n detecte un nouveau lead dans votre CRM → POST vers /api/webhook/n8n → l'agent genere un email personnalise et l'envoie via Telegram. Toute la logique IA est deleguee a l'agent, pas a un noeud API payant.
Votre app recupere l'URL du tunnel (stockee en variable d'env Vercel) et fait un POST. L'agent genere le document, le stocke, et confirme sur Telegram. Pas besoin d'API OpenAI dans votre code.
Mon cas reel : un webhook /api/webhook/leadgen recoit un ID de prospect depuis Supabase. L'agent genere un site demo personnalise pour ce prospect, le deploie sur Cloudflare Pages, et m'envoie le lien sur Telegram. Tout automatique.
Deux commandes dans Claude Code. Bun est installe automatiquement si absent.
Dans le dossier de votre projet : /claudeclaw:start. Le wizard configure le modele, Telegram, timezone, securite.
Creer un bot via @BotFather, recuperer le token, et votre user ID via @userinfobot. Le wizard vous guide.
Un fichier .md dans .claude/claudeclaw/jobs/. Schedule cron + prompt. Pris en charge en 30 secondes.
Dashboard sur http://127.0.0.1:4632. L'agent tourne. Envoyez un message Telegram pour tester.
claude -p qui consomme du quota. Si le quota est atteint, fallback automatique vers GLM (si configure).
C'est le point que je trouve le plus malin dans cette approche. Explications.
Pour automatiser quoi que ce soit avec une IA (envoyer des emails, scraper du web, generer des documents, interroger des APIs), il faut payer des tokens API. Avec GPT-4, Claude API, ou n'importe quel provider, c'est du pay-per-use. Ca chiffre vite : quelques centaines de requetes par jour et la facture grimpe.
Avec un abonnement Claude Code Max (forfait mensuel fixe), vous avez un quota d'utilisation inclus. ClaudeClaw se greffe la-dessus : chaque automatisation (cron job, heartbeat, message Telegram) utilise ce quota au lieu de payer des tokens API a l'unite. Resultat : vous pouvez lancer des dizaines d'automatisations par jour -- scraping, generation de documents, veille, relances -- pour le meme prix fixe que votre abonnement.
Pas besoin de VPS, de serveur cloud, ni de Docker. Votre Mac (ou n'importe quelle machine qui tourne en permanence) fait office de serveur. Voici comment ca marche concretement :
claude -p tourne localement. Il a acces a vos fichiers, vos outils, vos MCP servers. La reponse repart vers Telegram. Tout reste local, rien ne transite par un serveur tiers (sauf l'API Anthropic pour l'inference IA elle-meme).http://127.0.0.1:4632) n'est accessible que depuis votre machine. Personne d'autre ne peut y acceder.
ClaudeClaw utilise un seul agent pour tout. Dans Jarvis, j'ai decoupe le travail en agents specialises. Voici comment ca s'articule.
| Agent | Role | Permissions | Quand Jarvis le declenche |
|---|---|---|---|
memory-manager |
Consolide la memoire, supprime les doublons, exporte vers brain/ | Lecture + ecriture | "consolide la memoire", "nettoie les doublons" |
task-executor |
Execute les taches cron, maintenance, backups | Lecture + ecriture | Taches planifiees, maintenance automatique |
security-guard |
Audit de securite, verification des hooks, integrite | Lecture seule | "fais un audit securite", "verifie les hooks" |
n8n-workflow |
Cree et configure des workflows n8n | Lecture + ecriture | "cree un workflow n8n", "automatise X" |
project-tracker |
Suivi des projets et clients, points de situation | Lecture + ecriture | "point projets", "ou en est le client X" |
Un agent n'est qu'un fichier Markdown dans .claude/agents/. Vous decrivez son role, ses permissions, ses skills, et Jarvis (ou ClaudeClaw) sait le deleguer. Pas de code a ecrire.
Vous pouvez creer autant d'agents que vous voulez : un pour les emails, un pour la compta, un pour le support client, un pour la veille concurrentielle. Chacun avec ses propres instructions et son perimetre. L'orchestrateur delegue automatiquement en fonction de la demande.
Un seul agent fait tout. Simple, rapide a mettre en place. Limite : pas de separation des privileges, contexte partage entre toutes les taches.
Un agent principal qui delegue a des sous-agents selon la tache. Plus complexe, mais chaque agent a ses propres permissions et son propre scope.
Au-dela de l'orchestration, voici les autres differences techniques entre ClaudeClaw vanilla et ce que j'ai construit.
Au lieu d'un fichier CLAUDE.md injecte en entier, j'utilise une base SQLite avec FTS5, des secteurs (semantic, episodic, relationship, mood) et un score de saillance qui decroit naturellement. Les souvenirs importants persistent, les details s'effacent.
Des hooks PreToolUse interceptent chaque appel d'outil. Les fichiers sensibles (hooks, settings) sont proteges en ecriture. Tout est logge. Plus robuste que le simple scope via system prompt.
Chaque jour, la memoire est exportee en Markdown structure dans brain/ : projets, contacts, decisions, apprentissages, resumes quotidiens. Consultable sans ouvrir l'agent.
Les secrets (tokens, API keys) sont stockes dans le Keychain macOS natif, pas en plaintext dans un fichier .env ou settings.json.
ClaudeClaw a deja un systeme de personnalite (SOUL.md). J'ai remplace le ton "ami brillant" par celui de JARVIS (Marvel) : calme, humour britannique, anticipation des besoins, flegme total en situation de crise. Meme mecanique, identite differente.
Des skills specifiques a mon activite : generation de sites clients, prospection LeBonCoin, suivi du Centre Social de Champagne, workflows n8n preconfigures. L'agent connait mes clients et mes process.
ClaudeClaw vit a l'interieur de Claude Code. Si Anthropic modifie son systeme de plugins ou son CLI, le projet peut casser du jour au lendemain.
Heartbeat, cron et messages partagent la meme queue serialisee. Si un job cron prend 3 minutes, les messages Telegram attendent.
Chaque action = un claude -p complet. Un heartbeat toutes les 5 minutes + 10 cron jobs + messages = ca consomme. Surveillez votre usage.
Le scope repertoire est enforce via une instruction dans le prompt, pas via une sandbox. Un prompt injection bien cible pourrait theoriquement le contourner.
CLAUDE.md est injecte en entier dans le contexte. Sur plusieurs mois, le fichier grossit et consomme la fenetre de contexte. A nettoyer regulierement.
Le projet n'a aucun test unitaire ou d'integration. C'est un outil personnel qui marche, pas un produit battle-tested. Attendez-vous a des bugs.
| Critere | ๐ฆ ClaudeClaw | ๐ฆ OpenClaw | ๐ค Jarvis (Erwan) |
|---|---|---|---|
| Nature | Plugin Claude Code | Gateway autonome | Bot custom Claude Code |
| Installation | 2 commandes, 5 min | Script + config longue | Projet custom |
| Cout | Zero (abo Claude Code) | Paie les API | Zero (abo Claude Code) |
| Modeles | Claude + fallback GLM | Multi-provider | Claude uniquement |
| Memoire | CLAUDE.md brut | Retrieval selective | SQLite FTS5 + decay |
| Securite | 4 niveaux (system prompt) | Configurable opt-in | Hooks + logs + Keychain |
| Multi-agents | Non | Gateway + Nodes | 5 agents specialises |
| Personnalite | SOUL.md + IDENTITY.md + wizard | Configurable | JARVIS (Marvel) custom |
| Voix | Whisper.cpp local | Integre | Whisper + TTS cascade |
| Dashboard | Web local | Web | Web + chat integre |
| Dependance | 100% Anthropic | Agnostique | 100% Anthropic |
| Demarrage | 5 min, wizard | 30 min+ | Projet sur mesure |
--dangerously-skip-permissions : il peut executer du code, modifier des fichiers et acceder au web sans vous demander confirmation. Testez-le d'abord en mode locked (lecture seule) et dans un dossier dedie, pas votre home. Si vous accrochez, construisez votre propre version avec les briques qui vous manquent.