Claude Code 2.1.299 : compaction automatique des sessions et permissions MCP resserrées
La 2.1.299 compacte toute seule une conversation inactive avant l'expiration du cache, resserre les règles de permission MCP et corrige plusieurs failles de sandbox et de plan mode.
La 2.1.299 de Claude Code, sortie le 14 octobre 2026, est une version dense : une bonne quarantaine de nouveautés et de changements, et plus de cent correctifs, la majorité touchant les mods, les plugins, la passerelle Claude apps ou Claude Tag dans Slack. Trois choses méritent ton attention directe : une conversation inactive se compacte désormais toute seule, les règles de permission MCP arrêtent de déborder sur des serveurs qu'elles ne devraient pas toucher, et une série de correctifs referment des trous de sécurité réels, du mode plan au bac à sable.
Les conversations inactives se compactent toutes seules
Le cache de prompt tient une heure sur un abonnement, cinq minutes sur une clé API ou dès que tu pioches dans les crédits d'usage. Passé ce délai, ton premier message après une pause rate le cache et retraite tout le contexte depuis le début, ce qui coûte cher sur une conversation de plusieurs centaines de milliers de tokens.
La 2.1.299 ajoute la compaction automatique des sessions inactives dans le terminal : une conversation qui dépasse 200 000 tokens et reste sans activité environ 54 minutes se fait compacter avant que ce cache d'une heure n'expire, donc avant le pire des deux coûts. Deux réglages permettent d'ajuster ce comportement, tous les deux à partir de la 2.1.290 : la variable CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS change le seuil de 200 000 tokens, et "idleCompaction": false dans les réglages désactive la fonction entièrement. Rien à faire pour en profiter, c'est le nouveau comportement par défaut : si tu reprends une longue session après une pause et qu'elle a déjà résumé une partie de l'historique à ta place, c'est ce mécanisme qui vient de jouer.
Les règles de permission MCP ne débordent plus sur le serveur d'à côté
La syntaxe des règles MCP tient sur trois lignes : mcp__puppeteer vise n'importe quel outil du serveur puppeteer, mcp__puppeteer__* fait pareil avec un joker explicite, et mcp__puppeteer__puppeteer_navigate vise un outil précis. La 2.1.299 corrige un bug qui cassait cette promesse : une règle d'autorisation mcp__a pouvait aussi autoriser un serveur nommé a__b ou a_. Une règle censée n'autoriser qu'un seul serveur ouvrait donc, sans que personne ne s'en rende compte, l'accès à un autre dont le nom commençait pareil. Le correctif impose la correspondance exacte : pour viser un serveur dont le nom contient déjà __, il faut désormais écrire mcp__<nom complet du serveur>__*. Même correctif côté tools: des sous-agents, qui ne prennent plus que les outils du serveur réellement nommé. Le bug inverse existait aussi côté refus : une règle deny ou ask en mcp__<serveur> ne s'appliquait pas quand le nom normalisé du serveur contenait un double tiret bas, et c'est corrigé. Si tes réglages comptent sur des règles MCP pour isoler un serveur sensible, vérifie-les après la mise à jour.
Deuxième resserrement, cette fois sur le réseau. Dans une session cloud, un proxy réécrit l'URL de chaque connecteur et s'authentifie auprès de lui avec l'autorisation que tu as accordée dans claude.ai. La 2.1.299 arrête de suivre les redirections HTTP à deux endroits : sur les requêtes envoyées au proxy des connecteurs claude.ai et aux serveurs MCP hébergés par Anthropic, et, dans les sessions cloud et celles des runners auto-hébergés, sur les requêtes MCP redirigées par le proxy MCP de la session. Les redirections émises par le serveur propre d'un connecteur ne sont pas concernées. Le changelog ne détaille pas le scénario visé, mais une redirection qui n'est plus suivie ne peut plus emmener une requête vers un hôte que personne n'a configuré.
Trois correctifs de sécurité à ne pas manquer
Le mode plan promet que les modifications restent bloquées jusqu'à ton approbation, sauf dans un terminal interactif où le mode bypass permissions est disponible : Claude lit, explore, écrit un plan, mais n'édite rien. La 2.1.299 corrige un cas où cette promesse ne tenait pas : si un hook PreToolUse ou le tool.check d'un mod approuvait explicitement une écriture, celle-ci s'exécutait quand même pendant la planification, sans attendre ton feu vert. Si tu utilises des hooks de ce genre en mode plan, c'est corrigé.
Côté bac à sable, la doc rappelle que le sandbox protège déjà certains chemins d'écriture sans possibilité de les exempter, y compris via un lien symbolique pointant vers un fichier de réglages protégé. La 2.1.299 comble deux failles voisines : une commande dans le bac à sable pouvait écrire dans un dossier --plugin-dir, dont le code est ensuite rechargé et exécuté hors du bac à sable, ce qui revenait à sortir de l'isolation par la bande ; et sur macOS, un chemin refusé en lecture ou en écriture restait accessible par son emplacement réel quand le chemin interdit passait par un lien symbolique. Les deux sont colmatées.
Enfin, le chargement des skills et des commandes personnalisées refuse maintenant un nom de fichier ou de dossier contenant des caractères cachés, des caractères qui inversent le sens d'écriture, des caractères d'apparence vide, ou encore < et > : tant que le fichier n'est pas renommé, le skill n'est pas proposé, et un champ name: qui contient ces caractères est ignoré. Ce genre de caractère sert typiquement à faire passer un nom de skill pour un autre à l'œil nu, donc c'est une fermeture nette d'un vecteur d'usurpation.
Le reste, en vrac
- Reprise de session plus sûre : la commande affichée en fin de session pour reprendre identifie maintenant la session par son identifiant, et non plus par son nom, pour qu'un nom de session malveillant ne puisse rien exécuter si la ligne est copiée-collée telle quelle.
/effortet/fastdans la vue agents : ces deux commandes règlent maintenant le point de départ des nouvelles sessions directement depuis cette vue, et taper/model,/effortou/fastsans argument y ouvre un sélecteur./usageplus bavard : il signale maintenant un effort de raisonnement maximal, l'usage de workflows, un contexte toujours actif ou de gros résultats d'outils, des postes qui font grimper la facture sans qu'on les voie venir./ultrareview: les messages d'erreur ne suggèrent plusgit add .quand l'envoi du dépôt échoue, cette commande pouvant indexer des fichiers non suivis comme un.env.- Le reste de la version concerne surtout le développement de mods et de plugins, la passerelle Claude apps, Windows, les sessions cloud et Claude Tag dans Slack.
Ce qu'il faut retenir
Le vrai changement de comportement par défaut, c'est la compaction automatique : elle ne demande rien, mais une longue session laissée de côté puis reprise peut déjà avoir perdu du détail d'historique au profit d'un résumé, et les deux réglages existent si ce compromis ne te convient pas. Pour le reste, cette version referme plusieurs trous de sécurité concrets plutôt que d'ajouter des fonctionnalités visibles : des règles de permission MCP qui débordaient sur le mauvais serveur, des redirections HTTP que les proxys MCP d'Anthropic suivaient encore, un mode plan qui pouvait être contourné par un hook, et deux façons de sortir du bac à sable. Rien de tout ça ne change ta façon de travailler, mais si l'une de ces briques fait partie de ta configuration, la mise à jour vaut le coup.
Pierre Rondeau
Développeur et indie builder. Je construis des produits et automatisations avec l'IA. Créateur de Claude Hub.
LinkedIn