
Fuite du code source Claude Code : 510 000 lignes exposées, feature flags et architecture décryptés
Le 31 mars 2026, un fichier source map oublié dans le package npm de Claude Code a exposé l’intégralité du code source de l’outil de codage phare d’Anthropic. 512 000 lignes de TypeScript, 1 900 fichiers, 44 feature flags cachés — le tout accessible à quiconque savait où regarder. En quelques heures, le dépôt a été forké plus de 41 500 fois sur GitHub, devenant l’un des repos à la croissance la plus rapide de l’histoire de la plateforme. Cette fuite survient cinq jours seulement après l’exposition accidentelle du modèle Claude Mythos via le CMS d’Anthropic, posant des questions sérieuses sur l’hygiène de release du champion autoproclamé de la safety IA. Décryptage complet de ce que contient le code, de ce que cela signifie pour la concurrence, et des mesures à prendre si vous utilisez Claude Code en production.
Chronologie de la fuite — du fichier source map au fork viral
La fuite du code source de Claude Code est un cas d’école en matière de supply chain logicielle. En quelques heures, une erreur de configuration de build a transformé un fichier de débogage interne en l’une des expositions de propriété intellectuelle les plus massives de l’histoire de l’IA.
La découverte par Chaofan Shou et la diffusion éclair
Le 31 mars 2026 à 4h23 ET, Chaofan Shou, chercheur en sécurité chez Solayer Labs, repère une anomalie dans la version 2.1.88 du package @anthropic-ai/claude-code sur le registre npm. Un fichier source map JavaScript de 59,8 Mo — un artefact de débogage qui fait le lien entre le code minifié de production et le code source original en TypeScript — a été inclus par erreur. Ce fichier pointe directement vers une archive zip stockée sur le bucket Cloudflare R2 d’Anthropic, accessible publiquement sans authentification. Shou publie sa découverte sur X avec un lien de téléchargement direct. En quelques heures, le code est mirroré sur GitHub, analysé par des milliers de développeurs, et réécrit en Python et en Rust par la communauté open source. Un clean-room rewrite atteint 50 000 étoiles GitHub en deux heures.
La réaction d’Anthropic et les takedowns DMCA
Anthropic confirme l’incident dans un communiqué envoyé à plusieurs médias tech. La cause est identifiée : Claude Code est construit sur Bun, le runtime JavaScript qu’Anthropic a acquis fin 2025. Bun génère des source maps par défaut, et personne dans l’équipe de release n’a ajouté *.map au fichier .npmignore ni configuré le champ files dans package.json pour exclure les artefacts de débogage. Anthropic lance des takedowns DMCA sur les miroirs GitHub, mais un miroir décentralisé sur Gitlawb reste en ligne avec un message affirmant qu’il ne sera jamais retiré. Le dépôt original est reconverti en un port Python de Claude Code pour éviter les poursuites. C’est un paradoxe savoureux : un outil conçu pour aider les développeurs à écrire du meilleur code a été trahi par une configuration de build — probablement générée par Claude lui-même.
Ce que contient le code — 44 feature flags, fonctionnalités cachées et roadmap exposée
Au-delà du code source lui-même, ce sont les feature flags qui constituent la véritable fuite stratégique. Ils révèlent non seulement ce qu’Anthropic construit actuellement, mais aussi la direction exacte que prend le produit dans les mois à venir.
KAIROS, ULTRAPLAN et le mode persistent assistant
Mentionné plus de 150 fois dans le code source, KAIROS (du grec ancien signifiant « le moment opportun ») est un mode daemon autonome non encore publié. Claude y fonctionne comme un agent de fond permanent, toujours actif. Il reçoit des prompts <tick> périodiques pour décider s’il doit agir de manière proactive ou rester silencieux. Le système maintient des fichiers de log journaliers en append-only, s’abonne aux webhooks GitHub, et dispose d’un budget de blocage de 15 secondes — toute action proactive qui bloquerait le workflow utilisateur au-delà de ce seuil est reportée. KAIROS intègre également autoDream, un processus de consolidation mémoire nocturne qui fusionne les observations, supprime les contradictions et convertit les insights vagues en faits vérifiés. ULTRAPLAN délègue les tâches de planification complexes à une session distante Cloud Container Runtime exécutant Opus 4.6, avec jusqu’à 30 minutes de temps de réflexion dédié. Le résultat est approuvable depuis un téléphone ou un navigateur via un sentinel spécial __ULTRAPLAN_TELEPORT_LOCAL__.
Le mécanisme anti-distillation et la protection contre les clients tiers
Dans le fichier claude.ts (lignes 301-313), un flag appelé ANTI_DISTILLATION_CC envoie des requêtes API contenant anti_distillation: ['fake_tools']. Ce mécanisme ordonne au serveur d’injecter silencieusement des définitions d’outils factices dans le prompt système. L’objectif : si un concurrent enregistre le trafic API de Claude Code pour entraîner un modèle concurrent, les faux outils polluent ces données d’entraînement. Un second mécanisme dans betas.ts (lignes 279-298) résume les raisonnements de l’assistant entre les appels d’outils avec des signatures cryptographiques — les observateurs ne capturent que les résumés, pas les chaînes de raisonnement complètes. Les experts en sécurité notent toutefois que ces mécanismes sont contournables relativement facilement : un proxy MITM qui supprime le champ anti_distillation des requêtes suffirait. La vraie protection reste juridique, pas technique. Pour comprendre comment ces mécanismes s’intègrent dans l’écosystème plus large des Skills, plugins et connecteurs de Claude, notre guide dédié détaille l’architecture complète.
L’architecture technique révélée — comment Claude Code orchestre un agent de production
Le code source expose une architecture logicielle d’une sophistication remarquable. Loin d’un simple wrapper autour d’une API, Claude Code est un système d’orchestration multi-agents complet avec des mécanismes de mémoire, de permissions et de guardrails finement calibrés.
La mémoire à trois couches « Self-Healing Memory »
Le système de mémoire de Claude Code fonctionne en trois couches distinctes. Au cœur, MEMORY.md sert d’index léger de pointeurs (environ 150 caractères par ligne) chargé en permanence dans le contexte. Cet index ne stocke pas de données — il stocke des emplacements. La connaissance projet réelle est distribuée dans des « fichiers topiques » chargés à la demande. Les transcriptions brutes ne sont jamais relues intégralement dans le contexte, mais interrogées par grep pour des identifiants spécifiques. Une discipline d’écriture stricte impose de mettre à jour l’index uniquement après une écriture fichier réussie, empêchant le modèle de polluer son contexte avec des tentatives échouées. Le processus autoDream consolide, déduplique et supprime les contradictions de la mémoire dans un sous-agent forké avec un accès bash en lecture seule, ce qui l’empêche de corrompre le contexte principal. La mémoire est traitée comme un indice, jamais comme une vérité absolue — le modèle doit vérifier les faits contre le code réel avant de procéder.
Le harness logiciel : 40 outils, guardrails et permissions
L’architecture repose sur un système d’outils en plugins comprenant environ 40 outils distincts. Chaque capacité — lecture de fichiers, exécution bash, fetch web, intégration LSP — est un outil discret avec des portes de permissions. La définition de base des outils représente à elle seule 29 000 lignes de TypeScript. Le Query Engine (46 000 lignes) gère tous les appels API au LLM, le streaming, la mise en cache et l’orchestration — c’est le module le plus volumineux du codebase. Le système d’orchestration multi-agents permet à Claude de se forker lui-même : l’enfant hérite du contexte conversationnel complet du parent et du prompt système rendu (byte-exact pour la parité de cache). Un mode Coordinator transforme Claude en orchestrateur qui lance des workers parallèles communiquant via des notifications XML <task-notification>. Cette architecture est précisément le type de pipeline que nous construisons chez HDVMA avec nos solutions SEO et GEO automatisées, en utilisant des agents IA orchestrés pour le référencement.
| Module | Lignes de code | Fonction |
|---|---|---|
| Query Engine | 46 000 | Appels API LLM, streaming, cache, orchestration |
| Tool System | 29 000 | ~40 outils avec permissions granulaires |
| Multi-Agent Orchestration | ~15 000 | Fork, coordination, workers parallèles |
| IDE Bridge | ~10 000 | Intégration VS Code, JetBrains, Cursor |
| Persistent Memory | ~8 000 | MEMORY.md, fichiers topiques, autoDream |
| main.tsx (entry point) | 785 KB | Point d’entrée, renderer React terminal custom |
Impact concurrentiel — ce que les rivaux peuvent et ne peuvent pas exploiter
La fuite du code source de Claude Code représente à la fois un blueprint et une limite. Elle révèle comment construire un agent IA commercial de qualité production, mais ne donne pas accès au véritable avantage concurrentiel d’Anthropic.
Cursor, OpenCode et les clones : le blueprint d’un agent IA commercial
Pour les concurrents d’Anthropic — Cursor en tête — la fuite fournit un plan architectural littéral pour construire un agent de codage IA fiable et commercialement viable. Les patterns d’orchestration, les systèmes de permissions, la gestion mémoire multi-couches, les bridges IDE : tout est documenté dans le code. Des projets open source comme OpenCode se sont déjà heurtés à des frictions juridiques et techniques avec Anthropic ; ils disposent désormais d’un référentiel complet de bonnes pratiques. Les noms des feature flags à eux seuls sont plus révélateurs que le code : KAIROS, les flags anti-distillation, les codenames de modèles (Capybara pour Opus, Fennec, Numbat en test) — ce sont des décisions de stratégie produit que les concurrents peuvent désormais anticiper. Le code peut être refactoré en une semaine ; une roadmap ne peut pas être « dé-fuitée ».
Ce qui reste protégé : poids du modèle et infrastructure d’inférence
La fuite concerne exclusivement le « harness » logiciel — l’enveloppe d’orchestration autour du modèle. Les poids du modèle Claude lui-même, l’infrastructure d’inférence, les données d’entraînement et les processus RLHF restent entièrement protégés. C’est la distinction cruciale : le code fuité montre comment Claude Code utilise le modèle, pas comment le modèle fonctionne. Comme l’a résumé un commentateur sur Hacker News, c’est comme obtenir le plan d’un cockpit d’avion sans le moteur. L’avantage compétitif réel d’Anthropic repose sur les capacités du modèle et l’expérience utilisateur — deux dimensions que la fuite ne compromet pas directement. Cette distinction est fondamentale pour les entreprises qui évaluent la fiabilité de leurs fournisseurs IA, sujet que nous abordons dans notre guide de déploiement d’agents IA en entreprise.
La double fuite d’une semaine — CMS Mythos + npm Claude Code
Deux expositions accidentelles en cinq jours chez le champion de la safety IA soulèvent des interrogations légitimes. Elles dessinent un pattern qui va au-delà de l’incident isolé et questionne l’hygiène opérationnelle d’Anthropic à un moment stratégique.
Un problème systémique d’hygiène de release ?
Le 26 mars 2026, une erreur de configuration du CMS d’Anthropic expose près de 3 000 fichiers internes, dont un brouillon de billet de blog détaillant le modèle Claude Mythos (Capybara) et ses risques cybersécurité « sans précédent ». Cinq jours plus tard, le 31 mars, le code source complet de Claude Code fuit via npm. Les deux incidents sont attribués à une erreur humaine. Mais c’est aussi la deuxième fuite identique de source map npm — une exposition quasi similaire avait eu lieu en février 2025, soit 13 mois plus tôt. Trois fuites majeures en treize mois, pour une entreprise dont le chiffre d’affaires annualisé dépasse 19 milliards de dollars et qui prépare une introduction en bourse, pose un problème de crédibilité. Les clients enterprise — qui représentent 80 % de ce chiffre d’affaires — paient en partie pour la conviction que la technologie de leur fournisseur est propriétaire et protégée. Deux fuites en une semaine fragilise la marque safety-first qui constitue le différenciateur fondamental d’Anthropic.
L’attaque supply-chain axios simultanée : coïncidence ou ciblage ?
Un événement parallèle aggrave considérablement la situation. Dans les heures précédant la fuite, une attaque supply-chain distincte cible le package npm axios (versions 1.14.1 et 0.30.4), y injectant un Remote Access Trojan (RAT). Les développeurs qui ont installé ou mis à jour Claude Code via npm le 31 mars entre 00h21 et 03h29 UTC ont potentiellement importé ces versions malveillantes. VentureBeat recommande de rechercher ces versions dans les lockfiles (package-lock.json, yarn.lock) et, si trouvées, de traiter la machine hôte comme totalement compromise — rotation de tous les secrets et réinstallation OS propre. Anthropic recommande désormais son installeur natif (curl -fsSL https://claude.ai/install.sh | bash) plutôt que npm, car le binaire standalone ne dépend pas de la chaîne de dépendances npm volatile. La coïncidence temporelle entre la fuite et l’attaque axios reste inexpliquée, mais illustre la fragilité de l’écosystème npm en tant que vecteur d’installation pour des outils critiques. La sécurité des pipelines IA est un sujet que nous analysons en profondeur dans notre article sur les failles OWASP Top 10 des LLM en entreprise.
| Date | Événement | Cause | Impact |
|---|---|---|---|
| Février 2025 | Première fuite source map npm | Source map incluse dans le package | Code exposé, peu de diffusion |
| 26 mars 2026 | Fuite CMS Mythos/Capybara | ~3 000 fichiers dans un data store public | Roadmap modèle, risques cyber exposés |
| 31 mars 2026 | Fuite source map Claude Code v2.1.88 | *.map non exclu du package npm | 512 000 lignes, 41 500+ forks |
| 31 mars 2026 | Attaque supply-chain axios | RAT injecté dans axios 1.14.1 / 0.30.4 | Machines potentiellement compromises |
Leçons pour les entreprises utilisant Claude Code en production
La fuite ne représente pas un risque pour les données clients — Anthropic l’a confirmé. Mais elle modifie le paysage de sécurité pour toute organisation utilisant Claude Code et offre des enseignements précieux pour la gestion des outils IA en production.
Mesures immédiates à prendre
Si vous utilisez Claude Code via npm, vérifiez immédiatement votre version installée. La version compromise est la 2.1.88 — passez à une version vérifiée comme la 2.1.86 ou supérieure à 2.1.89. Mieux encore, migrez vers l’installeur natif d’Anthropic, qui utilise un binaire standalone indépendant de la chaîne npm. Rotez vos clés API Anthropic via la console développeur et surveillez votre utilisation pour détecter toute anomalie. Auditez vos lockfiles pour les versions malveillantes d’axios (1.14.1, 0.30.4) ou la dépendance plain-crypto-js. Si trouvées, considérez la machine comme compromise. Adoptez une posture zero trust quand vous utilisez Claude Code dans des environnements non familiers — n’exécutez pas l’agent dans des dépôts fraîchement clonés ou non vérifiés sans avoir inspecté manuellement le .claude/config.json et les hooks personnalisés.
Enseignements stratégiques pour la supply chain IA
Pour les DSI et responsables techniques, cet incident cristallise plusieurs leçons. Premièrement, auditez vos publications npm avec npm pack --dry-run avant chaque release — les source maps sont du code source. Deuxièmement, la dépendance à un registre tiers (npm) pour distribuer un outil critique crée un vecteur d’attaque que l’installeur natif élimine. Troisièmement, les mécanismes anti-distillation et les feature flags révèlent que même les fournisseurs les plus avancés luttent pour protéger leur propriété intellectuelle dans un écosystème ouvert. Quatrièmement, la fuite confirme que l’avantage concurrentiel durable ne réside pas dans le code d’orchestration (reproductible) mais dans les capacités du modèle et la qualité de l’expérience utilisateur. Pour les entreprises qui veulent évaluer la robustesse de leur infrastructure IA, notre Diagnostic IA identifie les vulnérabilités et les points d’amélioration en 5 minutes.
| Feature flag | Description | Statut |
|---|---|---|
| KAIROS | Agent autonome de fond permanent | Non publié, gate compilé |
| ULTRAPLAN | Planification distante 30 min Opus | Non publié |
| ANTI_DISTILLATION_CC | Injection de faux outils anti-copie | Actif (first-party CLI) |
| COORDINATOR_MODE | Orchestration multi-agents parallèles | Non publié |
| BUDDY | Compagnon Tamagotchi (18 espèces, gacha) | Prévu pour avril/mai 2026 |
| FORK_SUBAGENT | Clone l’agent avec contexte complet | Non publié |
| KAIROS_DREAM | Consolidation mémoire nocturne | Non publié |
| NATIVE_CLIENT_ATTESTATION | Attestation via runtime Bun custom + Zig | Actif |
La fuite du code source de Claude Code est un événement paradoxal. Elle expose l’ingénierie remarquable d’Anthropic tout en révélant des failles opérationnelles embarrassantes. Pour les entreprises utilisatrices, le message est clair : l’outil reste fiable et performant, mais la vigilance sur la supply chain logicielle doit être permanente. Pour les concurrents, elle accélère un mouvement déjà en cours : quand l’architecture d’orchestration n’est plus secrète, la différenciation se déplace entièrement vers les capacités du modèle. Les professionnels qui comprennent ces dynamiques — comme ceux qui suivent l’évolution des agents IA autonomes en marketing — sont mieux armés pour naviguer cette nouvelle réalité.
Diag IA gratuit
Nous contacter
Parler à Eric
Questions fréquentes sur la fuite du code source Claude Code
Qu’est-ce qui a fuité dans le code source de Claude Code ?
La fuite expose 512 000 lignes de TypeScript réparties dans environ 1 900 fichiers. Cela inclut le système d’outils (40 outils avec permissions), le moteur de requêtes, l’orchestration multi-agents, les bridges IDE, le système de mémoire persistante, 44 feature flags cachés et les prompts système internes. Les poids du modèle Claude et les données clients ne sont pas concernés.
Est-ce que mes données clients ont été exposées dans la fuite Claude Code ?
Non. Anthropic a confirmé qu’aucune donnée client ni aucun identifiant de connexion n’ont été exposés. La fuite concerne exclusivement le code source de l’outil de codage, pas l’infrastructure cloud ou les données utilisateurs. Cependant, les développeurs qui ont installé via npm pendant la fenêtre de l’attaque axios doivent auditer leurs dépendances.
Comment la fuite du code source Claude Code s’est-elle produite ?
Un fichier source map JavaScript de 59,8 Mo a été inclus par erreur dans la version 2.1.88 du package npm de Claude Code. Ce fichier de débogage fait le lien entre le code minifié et le code TypeScript original. Bun, le runtime utilisé par Claude Code, génère ces fichiers par défaut, et l’équipe de release n’a pas configuré leur exclusion avant publication.
Quels feature flags cachés ont été découverts dans Claude Code ?
Parmi les 44 feature flags identifiés : KAIROS (agent autonome permanent), ULTRAPLAN (planification distante sur Opus), COORDINATOR_MODE (orchestration multi-agents), BUDDY (compagnon Tamagotchi), FORK_SUBAGENT (clonage d’agent), KAIROS_DREAM (consolidation mémoire nocturne), ANTI_DISTILLATION_CC (injection de faux outils) et NATIVE_CLIENT_ATTESTATION (vérification via runtime Bun custom).
Qu’est-ce que le mécanisme anti-distillation de Claude Code ?
Le flag ANTI_DISTILLATION_CC injecte des définitions d’outils factices dans les requêtes API pour polluer les données d’entraînement des concurrents qui enregistreraient le trafic. Un second mécanisme résume les raisonnements entre les appels d’outils avec des signatures cryptographiques. Ces protections sont toutefois contournables via un proxy ou en utilisant un fournisseur API tiers.
La fuite de Claude Code est-elle un piratage ou une erreur humaine ?
C’est une erreur humaine, confirmée par Anthropic. Personne n’a piraté quoi que ce soit — le fichier source map était simplement inclus dans le package npm public. La cause racine est une configuration de build manquante : un fichier .npmignore non mis à jour ou un champ files mal configuré dans package.json. Un bug connu de Bun qui sert les source maps même en mode production a pu contribuer.
Combien de fois le code source de Claude Code a-t-il fuité ?
C’est la deuxième fuite identique via source map npm. La première s’est produite en février 2025 avec une version antérieure de Claude Code. En comptant la fuite CMS du 26 mars 2026 qui a exposé 3 000 fichiers sur le modèle Mythos, c’est la troisième exposition majeure de propriété intellectuelle en 13 mois pour Anthropic.
Quel est l’impact de la fuite sur les concurrents d’Anthropic ?
Les concurrents disposent désormais d’un blueprint architectural complet pour construire un agent de codage IA de production. Les patterns de permissions, d’orchestration multi-agents, de gestion mémoire et de bridges IDE sont documentés. Cependant, les poids du modèle et l’infrastructure d’inférence restent protégés — l’avantage concurrentiel réel d’Anthropic n’est pas directement compromis.
L’attaque supply-chain axios de mars 2026 est-elle liée à la fuite ?
Aucun lien de causalité n’a été établi, mais la coïncidence temporelle est frappante. L’attaque axios (versions 1.14.1 et 0.30.4 contenant un RAT) s’est produite dans les heures précédant la découverte de la fuite. Les développeurs qui ont installé Claude Code via npm pendant cette fenêtre doivent auditer leurs dépendances, traiter la machine comme compromise si les versions malveillantes sont trouvées, et migrer vers l’installeur natif.
Comment sécuriser mon installation Claude Code après la fuite ?
Migrez vers l’installeur natif d’Anthropic plutôt que npm. Vérifiez que vous n’utilisez pas la version 2.1.88. Rotez vos clés API Anthropic. Auditez vos lockfiles pour les versions malveillantes d’axios. Adoptez une posture zero trust dans les dépôts non familiers. Inspectez manuellement .claude/config.json et les hooks personnalisés avant d’exécuter Claude Code dans un nouveau projet.



