Claude Code 2.1.275-276 : une passerelle cassée puis réparée, npm verrouillé
La 2.1.275 casse toutes les requêtes derrière certains proxys, corrigé par la 2.1.276 le lendemain. Au programme aussi : secrets exposés dans les journaux de plugins, scripts npm bloqués à l'installation, et une règle de permission qui ne s'appliquait jamais.
Les 2.1.275 et 2.1.276 de Claude Code, sorties les 17 et 18 septembre 2026, se tiennent en une seule histoire : la 2.1.275 corrige un bug de passerelle réseau, mais en introduit un nouveau qui casse toutes les requêtes pour une partie des utilisateurs derrière un proxy, et la 2.1.276 le répare vingt-quatre heures plus tard. Entre les deux, une bonne récolte côté sécurité : des identifiants qui fuyaient dans les journaux de plugins, l'exécution des scripts d'installation npm désormais bloquée, et une règle de permission que /update-config écrivait sans qu'elle serve jamais à rien. Voici ce qui compte.
Une passerelle réparée, une autre cassée, corrigée le lendemain
La 2.1.275 corrige un bug qui bloquait toute session Claude Code derrière une passerelle réseau réécrivant les réponses d'erreur de l'API : chaque tour se soldait par une erreur 400, quelle que soit la demande, dès qu'un en-tête de requête bêta était rejeté par la passerelle. Un vrai correctif pour qui travaille derrière ce genre d'infrastructure.
Sauf que la même version introduit une régression ailleurs. ANTHROPIC_BASE_URL est la variable qui pointe Claude Code vers la passerelle que ton organisation exploite, un produit tiers ou maison, et non la passerelle Claude apps d'Anthropic, qui passe par ses propres réglages. La 2.1.275 a cassé ce chemin précis : toute requête passant par un proxy ou une passerelle configurés via cette variable échouait avec une erreur 400 mentionnant un tag advisor_20260301 inconnu. La 2.1.276, sortie le lendemain, corrige uniquement ça.
Si tu es passé à la 2.1.275 le 17 septembre et que tu utilises une passerelle, tu as probablement vécu une journée cassée. La leçon pratique : vise directement la 2.1.276, pas la 2.1.275 seule.
Sécurité : identifiants exposés, scripts npm désormais bloqués
Deux changements de sécurité distincts dans la 2.1.275. Le premier concerne les plugins : quand une commande comme claude plugin marketplace list, ou un message d'erreur de plugin, devait afficher l'adresse d'un dépôt git, ssh ou d'une marketplace, un mot de passe ou un jeton intégré à cette adresse pouvait apparaître en clair. Si tu partages un journal de session ou une capture d'écran après avoir configuré une marketplace privée avec des identifiants dans l'URL, ce correctif te concerne directement.
Le second touche l'installation des plugins distribués par npm. Jusqu'ici, ajouter un plugin depuis un paquet npm revenait à exécuter le code que ce paquet fournissait dans ses scripts preinstall ou postinstall, comme n'importe quelle dépendance npm. La doc sur les sources de plugins décrit maintenant le nouveau comportement sans détour : « The package's install scripts, such as preinstall or postinstall, never run, and its dependencies aren't installed during the fetch ». Claude Code récupère désormais le paquet avec npm pack --ignore-scripts et vérifie son intégrité, ce qui ferme une porte d'entrée classique pour du code malveillant caché dans un plugin tiers. Si un serveur MCP embarqué dans un plugin npm a besoin d'autres paquets, il peut se lancer via npx, qui les installe à son premier démarrage.
Permissions : une règle que /update-config écrivait mais que Claude Code ne lisait jamais
La doc sur les permissions est catégorique sur un point facile à rater : « Claude Code checks file permissions against Edit(path) and Read(path) rules only. If you write a path rule for Write, NotebookEdit, Glob, or the legacy MultiEdit tool instead, Claude Code accepts the rule but never consults it, and warns at startup ». Une règle Write(docs/**) dans tes réglages ne fait donc littéralement rien : elle est acceptée, stockée, jamais vérifiée, et tout ce que tu récupères est un avertissement au démarrage.
Le bug corrigé dans la 2.1.275, c'est que /update-config générait justement ce genre de règle inutile : une demande du type « interdis l'écriture dans docs/ » se traduisait en Write(docs/**) au lieu de Edit(docs/**), la seule forme que le vérificateur de permissions consulte réellement. Si tu as utilisé /update-config pour verrouiller un chemin en écriture avant cette version, va vérifier la règle générée : elle a pu ne jamais te protéger.
Bash sous zsh : le sandbox annonçait un succès sur une commande qui avait échoué
Le sandbox Bash « lets Claude run most shell commands without stopping to ask permission » en confinant ce que chaque commande peut toucher au niveau du système d'exploitation, fichiers et réseau compris. Ce que corrige la 2.1.275 est différent : sur Linux, une commande sandboxée exécutée dans un shell zsh renvoyait un code de sortie 0, succès, même quand la commande avait réellement échoué. N'importe quel script ou hook qui teste $? après une commande Bash lancée par Claude Code pouvait donc croire à un succès qui n'a jamais eu lieu. Le bug ne touchait que zsh, pas bash, et seulement en mode sandbox sur Linux.
Skills et plugins de ton compte claude.ai, synchronisés dans le terminal
Nouveauté distincte, pas un correctif : les skills et plugins activés sur ton compte claude.ai se synchronisent désormais automatiquement dans tes sessions terminal connectées à ce compte. La référence des réglages décrit ce que syncClaudeAiSkills: false permet d'éviter : « Stop loading the skills enabled on your claude.ai account and stop downloading new ones ». Le même principe existe pour les plugins avec syncClaudeAiPlugins: false. Si tu gères plusieurs comptes, ou que tu ne veux pas qu'un terminal charge silencieusement ce que tu as activé ailleurs, ces deux réglages sont à connaître.
Le reste, en vrac
- La connexion à la passerelle Claude apps affiche désormais le compte que la passerelle annonce, à confirmer avant l'enregistrement de l'identifiant, et
/statusle rappelle./logoutmet en plus fin à la session sur les passerelles qui annoncent la révocation de jeton. - Un raccourci « envoyer maintenant » (
ctrl+entrée, ouctrl+x ctrl+s) interrompt le tour en cours et envoie d'un coup tous les messages mis en file d'attente. /plugin install <plugin> --marketplace <source>propose d'ajouter la marketplace avant d'installer le plugin, en une seule commande.claude plugin marketplace updatene supprime plus la copie locale d'une marketplace GitHub quand la récupération échoue et que la marketplace porte le nom de son dépôt.- Le mode plein écran ne se fige plus, et n'affiche plus un écran vide pendant plusieurs secondes, en remontant dans un gros diff de fichier.
- Plusieurs plantages et blocages à la reprise de session sont corrigés : transcript contenant une entrée malformée, recherches Grep/Glob bloquées au-delà du plafond de 20 Mo de sortie,
/rewindrestaurant un fichier tronqué dans une session forkée. - Les images collées ou jointes sont désormais enregistrées à un endroit où Claude peut les rouvrir comme fichiers sans demander de permission, y compris dans Desktop et VS Code.
- Claude dans Chrome, en mode auto, saute la vérification par site de l'extension pour les appels déjà approuvés par le classifieur, comme le fait déjà le mode bypass, ce qui corrige une erreur « Permission denied » de
browser_batchaprès une redirection. - VS Code, Claude Code sur le web, Claude Tag et Code Review se partagent une trentaine de correctifs supplémentaires, surtout des bugs d'affichage et des cas limites de session.
Ce qu'il faut retenir
Si tu ne dois retenir qu'une chose : ne t'arrête pas à la 2.1.275 si tu passes par une passerelle réseau, la 2.1.276 corrige une régression que cette version a elle-même introduite. Le reste dessine un motif familier depuis plusieurs versions : la sécurité des plugins progresse concrètement, avec des scripts d'installation npm désormais bloqués et des identifiants qui ne fuient plus dans les journaux, et les permissions gagnent encore un cas où la promesse ne tenait pas, cette fois sur une règle que /update-config générait sans qu'elle serve à rien. Le bug de code de sortie sous zsh mérite une vérification à part si tu t'appuies sur $? dans des hooks ou des scripts CI pilotés par Claude Code.
Pierre Rondeau
Développeur et indie builder. Je construis des produits et automatisations avec l'IA. Créateur de Claude Hub.
LinkedIn