Claude Code 2.1.285-286 : claude -p perd son mode Manuel garanti, logs assainis

Les 2.1.285 et 2.1.286 font sortir claude -p du mode Manuel garanti chez certains fournisseurs, ajoutent le reglage allowedProviders et referment six fuites d'identifiants dans les logs.

claude-code changelog permissions digest-dossier

La 2.1.285 et la 2.1.286 de Claude Code, sorties les 29 et 30 septembre 2026, reprennent le fil des versions précédentes de ce digest : permissions et sécurité. Plus de deux cents entrées à elles deux, dominées par des correctifs de fiabilité et d'interface, mais trois choses méritent une lecture attentive. D'abord, un repère que ce digest répétait version après version perd de sa validité : claude -p ne démarre plus toujours en mode Manuel. Ensuite, une rafale de six correctifs referme des fuites d'identifiants dans les logs et les messages d'erreur. Enfin, un bug qui pouvait faire perdre toute une session après un crash est corrigé. Le reste est résumé en vrac plus bas.

claude -p ne garantit plus le mode Manuel partout

Les deux digests précédents de cette série l'écrivaient comme un repère fixe : les exécutions claude -p et l'Agent SDK ne sont pas concernées par la généralisation du mode auto, elles démarrent toujours en mode Manuel. La 2.1.285 ouvre une brèche dans ce repère, mais sur un périmètre précis. Le changelog est direct : « Changed claude -p and Python Agent SDK sessions on third-party providers or with telemetry off to start in auto mode when no permission mode is configured, like interactive sessions; --permission-mode still overrides it ». Concrètement, une session claude -p qui tourne derrière un fournisseur tiers, par exemple Bedrock ou Vertex AI, ou qui a coupé la télémétrie, et qui n'a jamais défini de mode de permission, démarre désormais en mode auto plutôt qu'en mode Manuel, exactement comme une session interactive dans les mêmes conditions.

La doc sur les modes de permission confirme la distinction qui compte : une session claude -p qui récupère normalement les feature flags continue de démarrer en mode default, seules celles qui ne les récupèrent pas basculent. Si un script d'automatisation lance claude -p sur un de ces périmètres sans jamais avoir fixé --permission-mode explicitement, son comportement vient de changer sans que tu aies touché à quoi que ce soit. La parade ne change pas : fixer --permission-mode ou defaultMode explicitement plutôt que de compter sur le point de départ implicite.

Deux autres réglages de sécurité bougent la même semaine. Le premier, allowedProviders, est un nouveau réglage managed qui limite, côté administrateur uniquement, quels fournisseurs d'API une machine a le droit d'utiliser : API Anthropic, point de terminaison personnalisé, Bedrock, Mantle, Vertex AI, Foundry, Claude Platform on AWS ou une gateway cloud. Il ne se configure ni en réglages utilisateur ni en réglages projet, ce qui empêche un développeur de contourner la restriction depuis son propre poste. Le second resserre les réglages sandbox côté projet : un .claude/settings.json de projet ne peut plus élargir ou désactiver un sandbox que l'administrateur a rendu obligatoire, remplacer le proxy derrière une liste de refus managed, étendre une liste d'autorisation stricte, ni réouvrir des refus de lecture managed.

Six fuites d'identifiants refermées dans les logs

Les deux versions partagent un même fil : des identifiants qui fuitaient dans un canal censé justement les masquer. La 2.1.285 corrige deux cas. /ultrareview pouvait envoyer pour revue les modifications non commitées d'un fichier d'identifiants dont le nom contient un deux-points avant l'extension, comme server:8443.key. Et les logs et transcripts masqués affichaient encore une partie d'un mot de passe placé dans une URL quand il contenait un @, ou sa totalité quand ce @ était écrit %40.

La 2.1.286, le lendemain, en corrige quatre de plus, tous dans les messages d'erreur ou les logs. Un message d'erreur MCP affichait la valeur d'un identifiant quand le mot « Bearer » ou « Basic » précédait le nom de la clé plutôt que sa valeur, un cas que le masquage ne reconnaissait pas. Un jeton Bearer encodé en pourcentage n'était masqué qu'à moitié dans ces mêmes messages. Les logs et transcripts masqués pouvaient encore montrer un secret dont le nom de clé contient un caractère invisible, comme une espace de largeur nulle. Et une partie d'un mot de passe d'URL contenant de la ponctuation comme ), des guillemets, ], & ou un second @ réapparaissait dans les logs malgré le filtre. Aucun de ces six correctifs n'est spectaculaire pris seul, mais la série dessine un vrai chantier de durcissement du masquage, pas un hasard de version : si tu partages des transcripts, des logs de debug avec quelqu'un d'autre, ou si tu lances /ultrareview sur un dépôt qui contient des clés, cette mise à jour réduit un risque que tu n'avais probablement pas identifié toi-même.

Resume et continue pouvaient perdre toute une session après un crash

Le changelog de la 2.1.286 décrit précisément le déclencheur : « Fixed claude --resume and --continue sometimes losing every turn after a batch of parallel tool calls when the earlier session crashed or was killed ». Ce n'est pas un bug généralisé sur toute reprise de session, il fallait réunir deux conditions : la session précédente tournait un lot d'appels d'outils en parallèle, et elle s'est arrêtée brutalement, par un crash ou un kill, plutôt que de se terminer normalement. Dans ce scénario précis, reprendre avec --resume ou --continue pouvait faire disparaître l'intégralité des tours de conversation, pas seulement le dernier. Si tu lances beaucoup d'appels parallèles dans des sessions longues et que l'une d'elles a planté récemment, vérifie que l'historique récupéré correspond bien à ce que tu attendais avant de t'y fier pour la suite.

Le reste, en vrac

  • claude --desktop ouvre l'application Claude Desktop sur le répertoire courant sans démarrer de session dans le terminal ; disponible sur macOS et Windows x64 avec un abonnement Claude.
  • claude plugin configure ajoute une commande dédiée pour configurer un plugin déjà installé, en plus de l'option déjà présente sur claude plugin install.
  • Connexion bloquée indéfiniment : la connexion pouvait attendre sans fin alors que le navigateur affichait déjà la réussite. Corrigé.
  • Bref gel (jusqu'à une seconde) en cours de session longue hors mode plein écran corrigé, de même qu'un Edit approuvé jamais appliqué quand sa cible était un périphérique, comme un fichier lié à /dev/null.
  • Commandes Bash et PowerShell en arrière-plan : elles s'arrêtent désormais après un délai (30 minutes par défaut, 2 heures au maximum) et Claude est prévenu.
  • Outil PowerShell : sa vérification de permission sautait les règles deny et ask quand son analyseur de commandes ne démarrait pas, par exemple faute de mémoire. Corrigé.
  • Hooks synchrones qui pouvaient bloquer Claude Code indéfiniment : corrigé.
  • Navigateurs de connexion en cascade : plusieurs processus Claude Code et extensions IDE ouvraient chacun leur propre navigateur de connexion quand les identifiants gcpAuthRefresh ou awsAuthRefresh expiraient.
  • macOS : une session affichait encore « Not logged in » après un /login réussi dans une autre fenêtre Claude Code, quand un ancien ~/.claude/.credentials.json traînait.
  • Sessions cloud à très longue histoire qui ne se réveillaient plus jamais : corrigé.
  • Compteur de prompts de permission empilés : le prompt affiche désormais un compteur du type « 2 of 5 » quand plusieurs demandes s'accumulent.
  • Erreurs API 400 après qu'un outil ou un hook a renvoyé un objet, un nombre ou un booléen au lieu d'un texte : corrigé, utile pour qui développe ses propres outils ou hooks.

Ce qu'il faut retenir

Si tu scriptes claude -p sur un fournisseur tiers ou avec la télémétrie coupée sans avoir jamais fixé --permission-mode, relis la première section : ton point de départ vient de changer de Manuel à auto. Si tu es administrateur d'une organisation, allowedProviders et le resserrement des réglages sandbox valent la lecture directe du changelog. Pour tout le monde, la rafale de six correctifs sur les fuites d'identifiants dans les logs est la vraie nouvelle de la semaine, même discrète : elle réduit un risque que personne ne surveille au quotidien, jusqu'au jour où un transcript ou un log partagé en révèle un.

Pierre Rondeau

Pierre Rondeau

Développeur et indie builder. Je construis des produits et automatisations avec l'IA. Créateur de Claude Hub.

LinkedIn