La fuite du code source de Claude révèle des fonctions anti-distillation, un mode infiltré et une détection de frustration

Anthropic a accidentellement inclus un fichier .map dans son package npm Claude Code contenant le code source complet et lisible de l'outil CLI. Le package a depuis été retiré, mais le code a été largement copié et analysé sur Hacker News. Cela fait suite à une autre fuite récente des spécifications du modèle d'Anthropic.
Anti-distillation : injection de faux outils pour empoisonner les imitateurs
Dans claude.ts (lignes 301-313), il y a un indicateur appelé ANTI_DISTILLATION_CC. Lorsqu'il est activé, Claude Code envoie anti_distillation: ['fake_tools'] dans ses requêtes API, indiquant au serveur d'injecter silencieusement des définitions d'outils leurres dans l'invite système. Cela est conçu pour polluer les données d'entraînement si quelqu'un enregistre le trafic API pour entraîner des modèles concurrents.
L'activation nécessite quatre conditions : l'indicateur de compilation ANTI_DISTILLATION_CC, le point d'entrée CLI, un fournisseur API interne, et l'indicateur GrowthBook tengu_anti_distill_fake_tool_injection renvoyant vrai. Un proxy MITM qui supprimerait le champ anti_distillation des corps de requête le contournerait entièrement. Définir la variable d'environnement CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS sur une valeur vraie désactive tout le mécanisme.
Un second mécanisme anti-distillation dans betas.ts (lignes 279-298) implémente une synthèse côté serveur du texte du connecteur. Lorsqu'il est activé, l'API met en mémoire tampon le texte de l'assistant entre les appels d'outils, le résume et renvoie le résumé avec une signature cryptographique. Cela signifie que les enregistrements du trafic API ne captureraient que des résumés, et non les chaînes de raisonnement complètes.
Mode discret : une IA qui cache son identité d'IA
Le fichier undercover.ts implémente un mode qui supprime toutes les traces des éléments internes d'Anthropic lorsque Claude Code est utilisé dans des dépôts non internes. Il demande au modèle de ne jamais mentionner les noms de code internes comme "Capybara" ou "Tengu", les canaux Slack internes, les noms de dépôts, ou l'expression "Claude Code" elle-même. La ligne 15 indique : "Il n'y a AUCUN désactivation forcée. Cela protège contre les fuites des noms de code du modèle."
Vous pouvez le forcer à ON avec CLAUDE_CODE_UNDERCOVER=1, mais il n'y a aucun moyen de le forcer à OFF. Dans les versions externes, la fonction entière est éliminée comme code mort pour retourner des valeurs triviales. Cela signifie que les commits et PRs rédigés par l'IA provenant d'employés d'Anthropic dans des projets open source n'auront aucune indication qu'une IA les a écrits.
Détection de frustration via regex
userPromptKeywords.ts contient un motif regex qui détecte la frustration de l'utilisateur : /\b(wtf|wth|ffs|omfg|shit(ty|tiest)?|dumbass|horribl (incomplet dans la source). Cela suggère que le système tente d'identifier les utilisateurs frustrés via une correspondance de mots-clés.
Autres découvertes
- Attestation native du client en dessous de l'environnement d'exécution JS
- 250 000 appels API gaspillés par jour
- KAIROS : un mode agent autonome non publié
La fuite s'est produite seulement dix jours après qu'Anthropic ait envoyé des menaces légales à OpenCode, les forçant à supprimer l'authentification Claude intégrée car des outils tiers utilisaient les API internes de Claude Code pour accéder à Opus aux tarifs d'abonnement au lieu des tarifs au token.
📖 Lire la source complète : HN AI Agents
👀 See Also

OpenClaw v2026.3.12 : la refonte du tableau de bord regroupe les éléments de l'interface
OpenClaw v2026.3.12 propose une refonte complète du tableau de bord qui regroupe les vues modulaires pour le chat, la configuration, les agents et les sessions, ainsi que la palette de commandes, les onglets inférieurs mobiles, les commandes slash, la recherche, l'exportation et les messages épinglés en une seule interface.

Kimi k2.5 : Repousser les limites de l'automatisation par IA
Kimi k2.5 a établi une nouvelle norme pour l'automatisation de l'IA, avec des capacités avancées qui attirent l'attention de la communauté technologique. Découvrez comment il redéfinit le paysage.

Claude Code v2.1.132 : Arrêt gracieux SIGINT, correctifs MCP et refonte de la gestion du terminal
Claude Code v2.1.132 corrige l'arrêt gracieux sur SIGINT externe, ajoute les variables d'environnement CLAUDE_CODE_SESSION_ID et CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN, corrige les fuites mémoire MCP et les tentatives de liste d'outils, et résout des dizaines de cas limites de terminaux dans les terminaux IDE.

Claude Code Post-mortem : Trois bugs ont causé une dégradation de la qualité, désormais corrigés
Anthropic a retracé les récentes plaintes concernant la qualité de Claude Code à trois modifications distinctes : l'effort de raisonnement par défaut a été réduit, un bug de cache a supprimé la mémoire de session, et une invite de verbosité a nui à la qualité du codage. Tout est corrigé depuis le 20 avril (v2.1.116).