Anthropic expose accidentellement 512 000 lignes du code source de Claude Code :
la feuille de route secrète d'une IA à 380 milliards de dollars est désormais publique
En quelques heures, une erreur de configuration dans un pipeline de build a rendu publiques plus de 512 000 lignes de TypeScript constituant le cœur de Claude Code, l'outil de programmation assistée par IA d'Anthropic. Le chercheur en sécurité qui a découvert la fuite n'a eu qu'à suivre un lien dans un fichier de débogage pour accéder à l'intégralité du projet. Depuis, le dépôt GitHub de sauvegarde a été forké plus de 41 500 fois. La communauté des développeurs a désormais accès à la feuille de route d'une entreprise valorisée à 380 milliards de dollars.
Tout a commencé dans la nuit du 31 mars 2026. Un ingénieur d'Anthropic pousse une mise à jour de routine du paquet npm de Claude Code. Dans l'archive publiée se glisse un fichier source map ; un artefact de débogage de 59,8 mégaoctets dont la vocation première est de relier le code minifié et obfusqué à son code source original, pour faciliter l'identification des bogues en développement. En production, ce type de fichier n'a rien à faire dans un paquet distribué publiquement.
Ce fichier map contenait une référence au code source TypeScript non obfusqué, qui pointait vers une archive ZIP hébergée sur un bucket Cloudflare R2 appartenant à Anthropic, un bucket accessible sans authentification. Il suffisait de suivre le lien.
Moins de trois heures après la publication, le chercheur en sécurité Chaofan Shou repère l'anomalie et la signale sur X. Six heures plus tard, quelqu'un a sauvegardé l'intégralité des 512 000 lignes de TypeScript sur GitHub. L'entreprise retire rapidement le paquet fautif, mais internet n'a pas attendu.
Le dépôt public de sauvegarde dépasse rapidement 1 100 étoiles et 1 900 forks. L'auteur original du dépôt, conscient des risques juridiques liés à l'hébergement de propriété intellectuelle d'Anthropic, finit par remplacer le contenu par un portage Python de Claude Code. Cela n'empêche pas les copies de proliférer.
Anthropic a confirmé l'incident dans un communiqué lapidaire transmis à The Register : il s'agissait d'un problème d'empaquetage provoqué par une erreur humaine, non d'une faille de sécurité. Aucune donnée client ni aucun identifiant n'ont été exposés. L'entreprise précise qu'elle déploie des mesures pour éviter toute récurrence.
L'architecture interne d'un outil de production sérieux
La fuite révèle d'abord l'ampleur réelle du projet. Environ 1 900 fichiers TypeScript, plus de 512 000 lignes de code, une quarantaine d'outils intégrés, une cinquantaine de commandes slash. Ce n'est pas une couche de vernis posée sur une API de chat : Claude Code est une plateforme de développement à part entière.
L'outil tourne sur le runtime Bun plutôt que Node.js, et utilise React via la bibliothèque Ink pour le rendu de l'interface dans le terminal, une interface en composants avec gestion d'état, exactement comme une application web. Le moteur de requêtes, qui gère l'ensemble des appels à l'API LLM, du streaming, du cache et de l'orchestration, représente à lui seul 46 000 lignes de code.
L'architecture repose sur un système de plugins : chaque fonctionnalité (lecture de fichiers, exécution de commandes bash, récupération de pages web, intégration LSP) est un outil discret soumis à un système de permissions. Une couche de communication bidirectionnelle connecte les extensions EDI (VS Code, JetBrains) à l'interface ligne de commande via des canaux authentifiés par JWT.
L'ingénieur allemand Gabriel Anhaia, qui a publié une analyse détaillée du code exposé, résume la leçon à en tirer pour tout développeur : un seul fichier .npmignore mal configuré, ou un champ files oublié dans le package.json, suffit à tout exposer. Il recommande d'utiliser npm pack --dry-run avant chaque publication pour vérifier le contenu exact de l'archive distribuée.
La feuille de route involontairement rendue publique
La partie la plus stratégiquement sensible de la fuite n'est pas ce qu'Anthropic a livré à ses utilisateurs : c'est ce que l'entreprise avait déjà construit sans encore le rendre disponible.
Le code source contient 44 drapeaux de fonctionnalités. Dans la version publique, certains de ces interrupteurs sont désactivés. Dans la version interne, ils sont actifs. Le code correspondant n'est pas expérimental : il est compilé et fonctionnel.
Parmi les fonctionnalités déjà construites et identifiées dans le code, plusieurs retiennent l'attention. Un système baptisé Kairos permettrait à Claude d'opérer de façon autonome en arrière-plan, surveillant des dépôts GitHub, suivant les pull requests et envoyant des notifications push. Un mode Coordinator permettrait à une instance de Claude d'orchestrer une équipe d'agents Claude secondaires, chacun disposant d'un jeu d'outils restreint et d'un espace de travail propre. Un module Agent Triggers donnerait à l'outil la capacité d'exécuter des tâches planifiées via des cron jobs et des webhooks externes.
La liste continue : une interface vocale complète utilisant le modèle de reconnaissance Deepgram Nova 3, une intégration Playwright permettant le contrôle d'un vrai navigateur (non pas du scraping, mais une interaction pilotée comme le ferait un humain), et un système de mémoire persistante qui survivrait aux redémarrages sans stockage externe.
La conclusion s'impose : Anthropic ne construit pas lentement ces fonctionnalités. Elles sont déjà prêtes. La cadence de publication (une nouveauté toutes les deux semaines environ) est un choix délibéré de rythme, non une contrainte technique. Cette stratégie de dévoilement progressif, désormais publiquement documentée, sera difficile à maintenir : les concurrents connaissent à présent l'agenda précis d'Anthropic.
Un animal de compagnie virtuel caché derrière du code hexadécimal
La fuite réserve aussi une curiosité inattendue. Enfouie dans le code de production se trouve une implémentation complète d'un animal de compagnie virtuel en ASCII. La commande /buddy ferait apparaître une mascotte générée à partir de l'identifiant de l'utilisateur, choisie parmi 18 espèces : canard, capybara, dragon, fantôme, axolotl, et une créature baptisée « chonk ». Le système embarque une mécanique de rareté gacha (avec 1 % de chances d'obtenir une espèce légendaire), des variantes irisées et des accessoires : couronne, chapeau de sorcier, hélice et « tinyduck ». La mascotte dispose de trois attributs statistiques : DEBUGGING, CHAOS et SNARK.
L'une des 18 espèces partage son nom avec un nom de code interne de modèle Anthropic. Pour éviter que le scanner de sécurité interne ne détecte la liste d'espèces et ne déclenche une alerte, les développeurs ont encodé les 18 noms en hexadécimal. Ce qui donne, dans le code source réel : export const duck = String.fromCharCode(0x64,0x75,0x63,0x6b), soit, lettre par lettre, le mot « duck ». Anthropic a encodé le mot « canard » en hexadécimal pour le dissimuler à ses propres outils de sécurité.
Le miroir du code réel
Au-delà de la feuille de route stratégique et du canard hexadécimal, la fuite est aussi un document ethnographique sur ce que ressemble le code de production dans une des entreprises technologiques les plus scrutées du moment.
Un fichier dépasse 803 924 octets, près d'un mégaoctet de TypeScript en fichier unique, 4 683 lignes. L'utilitaire d'impression fait 5 594 lignes. Le gestionnaire de messages, 5 512 lignes. On compte 460 directives eslint-disable dans l'ensemble de la base de code, et plus de 50 fonctions portant _DEPRECATED dans leur nom qui continuent pourtant d'être appelées en production. La fonction responsable de l'enregistrement des identifiants de connexion sur le disque s'appelle writeFileSyncAndFlush_DEPRECATED().
Les commentaires des développeurs dans le code valent leur pesant d'or. On y trouve : « TODO: figure out why. » placé dans le gestionnaire d'erreurs. Ou encore : « Not sure how this became a string. » suivi de « TODO: Fix upstream. », l'amont en question étant leur propre code. Neuf blocs catch vides dans le fichier de configuration responsable de l'authentification : quand quelque chose tourne mal lors de la connexion, il y a neuf endroits où l'erreur est attrapée et silencieusement ignorée.
Rien de tout cela n'est inhabituel. Chaque grande base de code ressemble à ça de près. Ce qui frappe, c'est qu'on ne voit jamais habituellement l'intérieur. La fuite a tiré le rideau sur une entreprise à 380 milliards de dollars et révélé exactement ce que les développeurs soupçonnaient : le même chaos qu'ils connaissent eux-mêmes, simplement à plus grande échelle.
La deuxième fois en cinq jours
Ce n'est pas un incident isolé. Il s'agit de la deuxième fois en cinq jours qu'Anthropic publie accidentellement quelque chose qu'elle n'avait pas l'intention de rendre public. La semaine précédente, des documents internes révélaient des détails sur leur modèle le plus puissant non encore annoncé.
Les détails concernant le nouveau modèle auraient été stockés dans un brouillon de blog accessible dans un entrepôt de données non sécurisé et consultable par le public. Anthropic estime que son prochain modèle présente des risques de cybersécurité sans précédent. Anthropic aurait laissé près de 3 000 ressources liées à l'article de blog qui n'avaient pas été publiées auparavant sur les sites d'actualités ou de recherche de l'entreprise.
La start-up spécialisée dans l'IA aurait laissé le brouillon de l'article de blog annonçant Mythos dans un lac de données public et non sécurisé, qui a été découvert par Roy Paz, chercheur senior en sécurité de l'IA. Après avoir été informée de la faille, Anthropic a immédiatement empêché le public de rechercher et de récupérer des documents dans le référentiel de données. Anthropic a imputé la fuite à une « erreur humaine » dans la configuration de son système de gestion de contenu (CMS), qui a rendu le brouillon de l'article de blog accessible au public. L'entreprise a également qualifié les documents non publiés présents dans le lac de données de « premières ébauches de contenu envisagées pour publication ».
La question n'est donc plus seulement technique. Elle porte sur la maturité des processus de publication d'une entreprise qui se positionne en gardienne responsable du développement de l'IA. L'ironie est difficile à ignorer : l'outil conçu pour aider les développeurs à écrire du code plus sûr a exposé son propre code source faute d'une vérification élémentaire de son pipeline de build.
Pour les équipes qui distribuent des paquets npm, la leçon est claire et immédiatement applicable : auditer le contenu de chaque publication, ne jamais inclure de fichiers source map en production, et traiter le pipeline de build avec le même niveau d'attention que le code qu'il distribue. Pour le reste de l'industrie, la fuite d'Anthropic illustre une vérité plus large : les secrets d'une feuille de route sont aussi fragiles que la configuration d'un fichier package.json.
Conclusion : Quand le code qui fuit rencontre le code qui détruit
La fuite du code source de Claude Code n'est pas seulement une bourde de configuration : elle constitue un instantané révélateur de l'état réel d'un outil désormais utilisé par une part significative de l'industrie du développement logiciel. Et cet instantané arrive dans un contexte déjà tendu.
Trois semaines avant que le fichier source map ne s'échappe d'un bucket Cloudflare, un développeur du nom d'Alexey Grigorev vivait une nuit qui lui a coûté 2,5 ans de données en production. Vers 22 heures un jeudi soir de fin février, il avait confié à Claude Code la gestion d'une migration d'infrastructure Terraform sur AWS. En quelques minutes, l'agent avait détruit l'intégralité de son environnement de production (base de données, snapshots compris) faisant disparaître des années d'historique de cours pour sa plateforme DataTalks.Club.
Ce qui relie les deux événements est plus profond qu'une simple coïncidence de calendrier. La fuite du code source a révélé qu'Anthropic avait déjà construit des agents autonomes capables d'opérer en arrière-plan, d'orchestrer des équipes d'agents secondaires, d'exécuter des tâches planifiées et de contrôler un vrai navigateur... le tout désactivé en production par des drapeaux de fonctionnalités. Les mises à jour hebdomadaires de Claude Code tout au long de mars 2026 ont ajouté des fonctionnalités autonomes plus vite que les mécanismes de sécurité correspondants. Plus de puissance, mêmes exigences d'isolation, sans application contraignante.
La leçon double que les deux incidents imposent est finalement la même formulée à deux niveaux différents d'abstraction. Au niveau du pipeline de build : un outil de débogage oublié dans un paquet npm suffit à exposer une feuille de route stratégique. Au niveau de l'architecture d'un agent autonome : un fichier d'état mal positionné suffit à raser une infrastructure de production. Dans les deux cas, c'est la confiance accordée à l'automatisation sans vérification humaine intermédiaire qui transforme l'erreur bénigne en désastre.
Sources : vidéos dans le texte, GitHub
Et vous ?
La stratégie de dévoilement progressif d'Anthropic (publier les fonctionnalités une à une alors qu'elles sont déjà prêtes) est-elle une pratique légitime de gestion de produit, ou une forme de manipulation de la perception du marché ?
Après la fuite du code source d'un outil de développement, dans quelle mesure les concurrents peuvent-ils légitimement s'en inspirer, juridiquement et éthiquement ?
La présence de neuf blocs catch vides dans le gestionnaire d'authentification d'un outil utilisé en production par des milliers de développeurs devrait-elle inquiéter ? Ou est-ce simplement la réalité du développement logiciel à grande vitesse ?
L'encodage hexadécimal des noms d'espèces du système de mascotte (pour tromper les scanners de sécurité internes) révèle-t-il un problème dans la culture de sécurité d'Anthropic, ou est-ce un détournement créatif tout à fait anodin ?







La stratégie de dévoilement progressif d'Anthropic (publier les fonctionnalités une à une alors qu'elles sont déjà prêtes) est-elle une pratique légitime de gestion de produit, ou une forme de manipulation de la perception du marché ?
Répondre avec citation



à toutes et tous,



















Partager