---
title: "Claude Code 2.1.199 ajoute les invocations slash-skill empilées, corrige le rapport d'erreurs des sous-agents, la boucle de crash du daemon des agents en arrière-plan sur Linux, et le bug de perte de réponse en streaming"
description: "Anthropic a publié Claude Code [v2.1.199](https://github.com/anthropics/claude-code/releases/tag/v2.1.199) le 2026-07-02, un jour après la version de fonctionnalités v2.1.198 (Chrome GA, auto-PR des agents en arrière-plan, /dataviz, Gateway sur AWS) et deux jours après la v2.1.197 qui faisait de Sonnet 5 le modèle par défaut. La v2.1.199 est une version de correctifs avec 24 entrées: une nouvelle fonctionnalité (les invocations slash-skill empilées chargent jusqu'à 5 skills de tête dans un même prompt), et une longue liste de correctifs de fiabilité sur le rapport d'erreurs des sous-agents, le daemon des agents en arrière-plan sur Linux, la préservation des réponses en streaming sur erreur API en cours de flux, la gestion des erreurs SSL/TLS derrière les proxies d'entreprise, le traitement des appels d'outils en plan mode, et une politique de retry par environnement qui ne plafonne plus le nombre de retries configurable par l'utilisateur à 15. La majorité des items concerne la surface background-agent / sous-agents, ce qui reste cohérent avec la direction v2.1.197 + v2.1.198 qui fait de la délégation la surface produit pour Sonnet 5."
date: 2026-07-03
image: "/images/heroes/2026-07-03--claude-code-2-1-199-stacked-skills-subagent-errors.png"
author: lschvn
tags: ["ai", "tooling"]
tldr:
  - "[Claude Code v2.1.199](https://github.com/anthropics/claude-code/releases/tag/v2.1.199) (publiée le 2026-07-02, 23:35:18 UTC) livre 24 entrées au changelog: une nouvelle fonctionnalité (les invocations slash-skill empilées chargent jusqu'à 5 skills de tête dans un même prompt) et 23 correctifs. La liste des correctifs est dominée par la fiabilité des agents en arrière-plan et des sous-agents: les sous-agents coupés par une limite de débit ou une erreur serveur échouaient silencieusement et renvoient désormais leur travail partiel; les sous-agents qui touchaient une erreur API déclaraient un succès et déclarent désormais l'erreur; le daemon des agents en arrière-plan sur Linux se tuait lui-même et tuait tous les agents en cours toutes les ~50 secondes après qu'un arrêt brutal ait laissé un enregistrement de worker corrompu; et une régression de la v2.1.196 faisait échouer le cold-start des agents en arrière-plan sur SSH macOS avec `Could not switch to audit session`."
  - "Trois des correctifs ciblent des pertes de données silencieuses: les réponses en streaming que l'API coupait en milieu de flux (overloaded, erreur serveur) étaient jetées avec la sortie partielle, et sont désormais conservées avec une mention `incomplete-response`; les erreurs SSL/TLS derrière les proxies d'entreprise (proxies d'inspection TLS, `NODE_EXTRA_CA_CERTS` manquant, certificats expirés) brûlaient les retries avant d'afficher un diagnostic actionnable et échouent désormais immédiatement avec l'indice de correction; et la réinitialisation d'un fichier de configuration corrompu depuis la boîte de récupération au démarrage le détruisait irrémédiablement, et le sauvegarde désormais d'abord. La version corrige aussi un panneau `/diff` qui ne se rafraîchissait pas sur les commits hors session, le plan mode qui n'auto-allowait pas les appels `browser_batch` en lecture seule, et un bug de routage de `SendMessage` quand un agent ré-spawné réutilisait le nom d'un agent précédent."
  - "La version relève le nombre de retries par défaut pour les erreurs transitoires hors capacité à 300 et lève le plafond de 15 sur `CLAUDE_CODE_MAX_RETRIES`, donc les 429 transitoires non liés à la limite d'usage de l'utilisateur retentent désormais automatiquement avec backoff pour les abonnés au lieu d'échouer le tour. C'est la troisième version consécutive de Claude Code cette semaine (après [v2.1.197 Sonnet 5 par défaut](/articles/2026-07-01--claude-sonnet-5-default-model-claude-code-1m-context) et [v2.1.198 Chrome GA + auto-PR des agents en arrière-plan](/articles/2026-07-02--claude-code-2-1-198-chrome-ga-background-agents-auto-pr)); la cadence jour après jour suggère qu'Anthropic itère la ligne v2.1.19x à la même vitesse que le modèle lui-même."
faq:
  - question: "Qu'est-ce qui change dans Claude Code 2.1.199 ?"
    answer: "Claude Code 2.1.199 (publiée le 2026-07-02, 23:35:18 UTC) est une version de correctifs avec 24 entrées au changelog. La seule nouvelle fonctionnalité est les invocations slash-skill empilées: un prompt du type `/skill-a /skill-b do XYZ` charge désormais les 5 premières skills de tête au lieu de ne charger que la première. Le reste sont des correctifs, dominés par la fiabilité des agents en arrière-plan et des sous-agents: les sous-agents coupés par une limite de débit ou une erreur serveur renvoient désormais leur travail partiel au lieu d'échouer silencieusement, les sous-agents qui touchent une erreur API déclarent désormais l'erreur à l'agent parent, la boucle de crash du daemon des agents en arrière-plan sur Linux après un enregistrement de worker corrompu est corrigée, la régression v2.1.196 sur le cold-start SSH des agents en arrière-plan sur macOS est corrigée, et `claude stop` n'est plus en course avec un respawn d'agent en arrière-plan. La version corrige aussi le bug de perte de réponse en streaming, la gestion des erreurs SSL/TLS derrière les proxies d'entreprise, l'auto-allow des outils navigateur en lecture seule en plan mode, et le bug de routage de `SendMessage`. Un changement de politique de retry relève le nombre de retries par défaut pour les erreurs transitoires hors capacité à 300 et lève le plafond de 15 sur `CLAUDE_CODE_MAX_RETRIES`."
  - question: "Que sont les invocations slash-skill empilées dans Claude Code 2.1.199 ?"
    answer: "Dans Claude Code v2.1.199, un prompt qui commence par plusieurs tokens slash-skill les charge désormais tous, au lieu de ne charger que le premier. Une commande comme `/skill-a /skill-b do XYZ` charge à la fois `skill-a` et `skill-b` avant d'exécuter le prompt. La version plafonne le nombre de skills de tête à 5; un sixième et au-delà sont ignorés. La fonctionnalité est additive: les invocations single-skill existantes sont inchangées, et un utilisateur qui ne veut qu'une seule skill en contexte peut toujours écrire `/skill-a do XYZ` et obtenir le même comportement qu'avant. Le changement est la seule nouvelle fonctionnalité dans une version par ailleurs de correctifs."
  - question: "Qu'était la boucle de crash du daemon des agents en arrière-plan sur Linux ?"
    answer: "Avant la v2.1.199, un arrêt brutal du daemon des agents en arrière-plan sur Linux pouvait laisser un enregistrement de worker corrompu sur disque. Le code de récupération du daemon tentait alors de lire l'enregistrement, échouait et sortait; le superviseur respawnait le daemon, qui échouait à nouveau sur le même enregistrement. Le résultat était un cycle kill-and-respawn d'environ toutes les 50 secondes qui entraînait la chute de tous les agents en arrière-plan en cours d'exécution. La v2.1.199 corrige le code de récupération pour que l'enregistrement corrompu soit détecté et remplacé par un enregistrement frais au lieu de crasher le daemon. La boucle de crash est le type de bug qui se manifeste sur des agents CI de longue durée et des agents en worktree sous tableau de bord, plutôt que sur de l'usage interactif en session unique, ce qui explique pourquoi le correctif arrive deux versions après que la v2.1.198 a fait du flux d'auto-PR le défaut pour les agents en arrière-plan."
  - question: "Qu'était le bug de perte de réponse en streaming ?"
    answer: "Quand l'API Anthropic émettait une erreur overloaded ou serveur en milieu de flux après que le modèle avait déjà produit une sortie partielle, Claude Code 2.1.198 et antérieur jetait la réponse partielle avec l'erreur, laissant l'utilisateur sans rien. La v2.1.199 conserve la sortie partielle et lui ajoute une mention `incomplete-response`. Le changement compte surtout pour les générations longues: une exécution Sonnet 5 en contexte 1M, un refactor multi-fichiers avec des milliers d'appels d'outils, un graphique `/dataviz` avec une longue explication, peuvent tous perdre plusieurs secondes de travail sur un seul 529 tardif dans le flux sous v2.1.198. Le correctif est associé à la nouvelle politique de retry qui relève le nombre de retries par défaut pour les transitoires hors capacité à 300: la partielle est conservée quand les retries sont épuisés, et un tour partiel n'est plus gaspillé sur la première erreur transitoire."
  - question: "Pourquoi les sous-agents échouaient-ils silencieusement dans les versions précédentes ?"
    answer: "Trois modes d'échec indépendants dans la v2.1.198 et antérieur rendaient les échecs de sous-agents invisibles à l'agent parent. (1) Un sous-agent coupé par une limite de débit ou une erreur serveur ne renvoyait rien au parent, donc le parent traitait la tâche comme abandonnée. (2) Un sous-agent qui touchait une erreur API en milieu de tâche déclarait un résultat réussi au parent, donc le parent utilisait des déchets partiels comme réponse. (3) `SendMessage` routait silencieusement à côté quand un agent ré-spawné réutilisait le nom d'un agent précédent. La v2.1.199 corrige les trois: le travail partiel est renvoyé avec l'erreur, l'erreur API est déclarée comme erreur, et l'outil `SendMessage` détecte le mismatch de nom et demande à l'appelant de recibler. Ensemble, les correctifs transforment un mode d'échec partiel silencieux en un mode visible et récupérable."
  - question: "Qu'est-ce qui change dans la politique de retry de Claude Code en 2.1.199 ?"
    answer: "La v2.1.199 relève le nombre de retries par défaut pour les erreurs transitoires hors capacité (429 non liés à la limite d'usage de l'utilisateur, erreurs serveur 500-class, 529 overloaded) d'une petite valeur fixe à 300, avec backoff. La version lève aussi l'ancien plafond de 15 sur la variable d'environnement `CLAUDE_CODE_MAX_RETRIES`, donc les utilisateurs et les scripts CI peuvent fixer un plafond plus élevé sans qu'il soit silencieusement clampé. Le changement est ciblé: les erreurs de type capacité (la propre limite de débit de l'utilisateur, le plafond d'usage Pro/Max) ne sont pas affectées, et les abonnés obtiennent un retry automatique tandis qu'une session sur un plafond d'usage continue à le signaler comme avant. La variable `CLAUDE_CODE_RETRY_WATCHDOG`, qui borne le temps total passé à retenter sur un tour, est inchangée."
  - question: "Est-il sûr de passer à Claude Code 2.1.199 aujourd'hui ?"
    answer: "Oui. La v2.1.199 est une version de correctifs sur la même ligne v2.1.19x que la v2.1.197 (Sonnet 5 par défaut) et la v2.1.198 (Chrome GA, auto-PR des agents en arrière-plan), et les changements sont additifs. Le seul changement de comportement à signaler est la nouvelle fonctionnalité slash-skill empilée, qui charge jusqu'à 5 skills de tête dans un prompt et est un sur-ensemble strict du comportement single-skill précédent. Le changement de politique de retry est une valeur par défaut qui peut être annulée avec la variable d'environnement `CLAUDE_CODE_MAX_RETRIES` existante. La transition recommandée est `claude update` (ou l'invite de mise à jour dans l'application), une vérification rapide que tout flux d'agent en arrière-plan / CI qui voyait auparavant des échecs partiels silencieux voit maintenant la partielle renvoyée, et une vérification que tout proxy d'entreprise d'inspection TLS est configuré avec `NODE_EXTRA_CA_CERTS` (le nouveau chemin d'erreur SSL est plus bruyant sur la config manquante)."
---

[Claude Code v2.1.199](https://github.com/anthropics/claude-code/releases/tag/v2.1.199) est sortie le 2026-07-02 à 23:35:18 UTC, un jour après [v2.1.198](https://github.com/anthropics/claude-code/releases/tag/v2.1.198) (la version Chrome GA + auto-PR des agents en arrière-plan + /dataviz + Gateway sur AWS) et deux jours après [v2.1.197](https://github.com/anthropics/claude-code/releases/tag/v2.1.197) qui faisait de [Sonnet 5 le modèle par défaut](/articles/2026-07-01--claude-sonnet-5-default-model-claude-code-1m-context). Les notes de version sont inhabituellement longues pour un cycle d'un jour: 24 entrées au changelog, une nouvelle fonctionnalité et 23 correctifs, avec la liste des correctifs concentrée sur la même surface que ce que la v2.1.198 a étendu (agents en arrière-plan, sous-agents, le flux d'auto-PR, plan mode) plus une longue traîne de petits correctifs UX. Le motif correspond aux deux versions précédentes: Anthropic itère la ligne v2.1.19x au même rythme que le modèle sous-jacent, et la surface produit pour Sonnet 5 est durcie version après version.

## La seule nouvelle fonctionnalité : les invocations slash-skill empilées

La seule nouvelle fonctionnalité de la v2.1.199 est une petite extension utile de la surface slash-skill. Dans la v2.1.198 et antérieur, un prompt du type `/skill-a /skill-b do XYZ` ne chargeait que la première skill, `skill-a`; le second `/skill-b` était traité comme une partie du texte du prompt, pas comme une autre invocation de skill. La v2.1.199 change la règle: le parseur parcourt les tokens de tête du prompt et charge jusqu'à 5 slash-skills avant de retomber sur le reste du message. Une commande comme `/plan /review /dataviz do XYZ` charge désormais `plan`, `review`, et `dataviz` comme l'ensemble de skills actives, au lieu de ne charger que `plan` et de laisser silencieusement tomber le reste.

Le plafond de 5 skills est un garde-fou, pas un plafond de fonctionnalité: les skills portent leur propre contexte et leur propre surface d'outils, et une 6e skill serait le type de forme de prompt qui justifie déjà un sous-agent personnalisé au lieu d'une chaîne de skills inline. Le plafond est généreux pour les cas courants (2 à 3 skills pour combiner une étape de planification, une étape de revue de code et une étape de visualisation) et conservateur pour les cas limites (un agent trop zélé qui sinon se laisserait dériver dans une demi-douzaine de contextes de skills qui se chevauchent). Le changement est additif: les invocations single-skill existantes sont inchangées, et un utilisateur qui ne veut qu'une seule skill en contexte peut toujours écrire `/skill-a do XYZ` et obtenir le même comportement qu'avant.

## Rapport d'erreurs des sous-agents et récupération du travail partiel

Le cluster le plus profond de correctifs de la v2.1.199 se trouve sur la surface sous-agents / agents en arrière-plan, et trois d'entre eux concernent la visibilité des échecs pour l'agent parent. Dans la v2.1.198 et antérieur, trois modes d'échec indépendants cachaient le travail partiel à l'orchestrateur :

1. **Les sous-agents coupés par une limite de débit ou une erreur serveur échouaient silencieusement.** Un sous-agent qui tombait à court de contexte, touchait un 429, ou recevait un 5xx de l'API ne renvoyait rien au parent. Le parent n'avait aucun moyen de distinguer une tâche inachevée d'une tâche qui n'avait jamais commencé, et le travail partiel que le sous-agent avait déjà fait était perdu.
2. **Les sous-agents déclaraient les erreurs API comme des résultats réussis.** Un sous-agent qui touchait une erreur API en milieu de tâche (erreur de limite d'usage, 529 overloaded, erreur modèle) renvoyait une enveloppe de résultat au parent, avec l'erreur exposée comme du texte à l'intérieur du résultat. Le parent traitait l'enveloppe comme un succès et utilisait le texte d'erreur comme réponse.
3. **`SendMessage` routait silencieusement à côté quand un agent ré-spawné réutilisait le nom d'un agent précédent.** Quand un agent mourait et qu'un nouvel agent reprenait son nom dans le panneau d'agents, un `SendMessage` de suivi touchait parfois l'enregistrement de l'agent mort et routait vers une conversation périmée. Le parent n'avait pas d'erreur, juste une réponse manquante.

La v2.1.199 corrige les trois. Les sous-agents coupés par une limite de débit ou une erreur serveur renvoient désormais leur travail partiel au parent, avec l'erreur attachée. Les sous-agents qui touchent une erreur API déclarent désormais l'erreur au parent, avec le travail partiel conservé dans un champ séparé sur l'enveloppe de résultat. `SendMessage` détecte le mismatch de nom et demande à l'appelant de recibler, en exposant le problème de routage comme une erreur d'outil plutôt qu'un miss silencieux. Le motif est le même que le correctif v2.1.198 sur les équipes d'agents (un coéquipier qui meurt sur une erreur API déclare désormais `failed` au lead), et les deux versions transforment ensemble le mode d'échec « les sous-agents ont l'air d'avoir réussi mais en réalité non » de l'ère v2.1.196 en un mode visible et récupérable.

## Boucle de crash du daemon des agents en arrière-plan sur Linux

Le correctif le plus douloureux opérationnellement dans la version est la boucle de crash du daemon des agents en arrière-plan sur Linux. Avant la v2.1.199, un arrêt brutal du daemon (un kill -9, un OOM de l'hôte, une coupure de courant, un crash dans un processus enfant) pouvait laisser un enregistrement de worker corrompu sur disque dans le répertoire d'état du daemon. Le code de récupération du daemon au démarrage suivant tentait de lire l'enregistrement, échouait sur la corruption, loggait une erreur et sortait; le superviseur respawnait le daemon, qui échouait sur le même enregistrement; et le cycle se répétait toutes les ~50 secondes. Tous les agents en arrière-plan en cours dans l'espace de travail de l'utilisateur mouraient avec le daemon.

La boucle de crash est le type de bug qui se manifeste sur des agents CI de longue durée et des agents en worktree sous tableau de bord, plutôt que sur de l'usage interactif en session unique, ce qui explique pourquoi elle arrive deux versions après que la v2.1.198 a fait du flux d'auto-PR le défaut pour les agents en arrière-plan. La v2.1.199 corrige le code de récupération pour que l'enregistrement corrompu soit détecté et remplacé par un enregistrement frais au lieu de crasher le daemon; le respawn du superviseur est désormais une action de récupération, pas un échec qui se répète. La version corrige aussi une régression liée de la v2.1.196: les agents en arrière-plan qui tentaient de faire un cold-start sur SSH macOS échouaient avec `Could not switch to audit session`, ce qui rendait le chemin de lancement SSH-sur-macOS inutilisable pour les équipes qui font tourner Claude Code sur un Mac distant. Le correctif est un changement d'une ligne dans le wrapper de lancement SSH qui commute explicitement la session d'audit avant que l'agent tente de s'y lier.

## Préservation des réponses en streaming sur erreurs API en cours de flux

Deux correctifs liés ciblent le moment où un appel modèle est en vol et l'API le coupe. Le premier est le bug de perte de réponse en streaming: quand l'API Anthropic émettait une erreur overloaded (529) ou serveur (5xx) en milieu de flux après que le modèle avait déjà produit une sortie partielle, Claude Code 2.1.198 et antérieur jetait la réponse partielle avec l'erreur, laissant l'utilisateur sans rien. La v2.1.199 conserve la sortie partielle et lui ajoute une mention `incomplete-response`. Le changement compte surtout pour les générations longues: une exécution Sonnet 5 en contexte 1M, un refactor multi-fichiers avec des milliers d'appels d'outils, un graphique `/dataviz` avec une longue explication, peuvent tous perdre plusieurs secondes de travail sur un seul 529 tardif dans le flux sous v2.1.198. Le correctif est associé à la nouvelle politique de retry (voir plus bas): un tour partiel n'est plus gaspillé sur la première erreur transitoire, et la partielle est conservée quand les retries sont épuisés.

Le second est la gestion des erreurs SSL/TLS derrière les proxies d'entreprise. Dans la v2.1.198 et antérieur, un échec de handshake SSL causé par un proxy d'inspection TLS, un `NODE_EXTRA_CA_CERTS` manquant, ou un certificat expiré, brûlait le budget complet de retries avant d'afficher le moindre diagnostic. La v2.1.199 change le chemin: les erreurs SSL échouent immédiatement avec un indice de correction qui nomme la cause la plus probable (`NODE_EXTRA_CA_CERTS` pour un bundle CA manquant, vérification de certificat pour un certificat expiré, trust store du proxy pour un MITM d'entreprise). Le changement est une amélioration de la qualité d'erreur, pas un changement de comportement: la même erreur est désormais diagnostiquée en un tour au lieu de cinq, et le budget de retry est préservé pour les erreurs transitoires qui méritent vraiment des retries.

## Plan mode, stderr des hooks, et la vue `claude agents`

Les correctifs du plan mode dans la v2.1.199 sont plus petits mais couvrent deux irritants distincts. Premièrement, le plan mode ne demandait pas l'autorisation pour les appels d'outils navigateur à changement d'état; une session en plan mode qui tentait d'appeler une action navigateur à changement d'état auto-allowait silencieusement l'appel au lieu de demander à l'utilisateur. La v2.1.199 conserve l'auto-allow existant pour les appels `browser_batch` en lecture seule (le chemin sûr, lecture seule, à travers l'extension Chrome) et ajoute l'invite manquante pour les appels d'outils navigateur à changement d'état. La découpe correspond au correctif v2.1.198 qui auto-allowait les appels d'outils en lecture seule quand une session démarre en plan mode, et elle ferme le traitement asymétrique des outils navigateur en lecture seule et à changement d'état.

Deuxièmement, les hooks `SessionStart`, `Setup`, et `SubagentStart` cachaient silencieusement le stderr quand ils sortaient avec le code 2. Un hook qui échouait avec une dépendance manquante, une erreur de parse, ou une exception runtime, loggait sur stderr, sortait en 2, et laissait l'utilisateur avec un résultat de hook qui avait l'air réussi. La v2.1.199 affiche le stderr dans le transcript quand un hook sort non-zéro, donc un hook qui se comporte mal est visible pour l'utilisateur au lieu d'être un échec silencieux. Le changement compte pour la même raison que le correctif de confiance `MCP` de la v2.1.197 comptait: un hook est un script contrôlé par l'utilisateur, et un échec silencieux d'un script contrôlé par l'utilisateur est un gouffre de temps de debug.

La version corrige aussi un bug de la vue `claude agents`: les sous-agents idle disparaissaient du panneau d'agents pendant que d'autres sous-agents étaient encore en train de travailler, laissant l'utilisateur avec une vue partielle de ses agents en cours. La v2.1.199 replie les sous-agents idle en surplus dans une ligne de résumé dépliable, donc l'utilisateur voit toujours les agents actifs et peut déplier la ligne pour voir les idle. La même vue reçoit un correctif où taper `/model` ou `/fast` en regardant un sous-agent ouvrait silencieusement le sélecteur de modèle du lead; la v2.1.199 affiche une notice expliquant que la commande s'applique au lead, et le même correctif empêche le sélecteur de modèle d'être ouvert dans le mauvais contexte. Les lignes de session de `claude agents` reçoivent aussi un correctif cosmétique: les liens de pull request s'affichent désormais comme un simple `#N` sans le label « PR » redondant.

## Politique de retry, watchdog, et 429 transitoires

Le changement de comportement le plus visible pour l'utilisateur dans la v2.1.199 est la politique de retry. La version relève le nombre de retries par défaut pour les erreurs transitoires hors capacité (429 non liés à la limite d'usage de l'utilisateur, erreurs serveur 500-class, 529 overloaded) d'une petite valeur fixe à 300, avec backoff. La version lève aussi l'ancien plafond de 15 sur la variable d'environnement `CLAUDE_CODE_MAX_RETRIES`, donc les utilisateurs et les scripts CI peuvent fixer un plafond plus élevé sans qu'il soit silencieusement clampé. Le changement est ciblé: les erreurs de type capacité (la propre limite de débit de l'utilisateur, le plafond d'usage Pro/Max) ne sont pas affectées, et les abonnés obtiennent un retry automatique tandis qu'une session sur un plafond d'usage continue à signaler le plafond comme avant. La variable `CLAUDE_CODE_RETRY_WATCHDOG`, qui borne le temps total passé à retenter sur un tour, est inchangée, donc une boucle de retry qui dérape reste attrapée par le watchdog.

Le correctif s'accompagne du retry sur coupure réseau de la v2.1.198 (les erreurs transitoires comme `ECONNRESET` retentent désormais avec backoff au lieu d'annuler le tour), et les deux transforment ensemble le mode d'échec « une coupure réseau transitoire annule une génération longue » en « la coupure transitoire est retentée, la partielle est conservée si les retries sont épuisés, le plafond est toujours respecté ». Pour les flux CI qui font tourner Claude Code contre une flotte de dépôts, le changement est une amélioration stricte: une génération longue qui touche un 529 à la minute 8 d'une exécution de 10 minutes n'a plus besoin d'être relancée depuis zéro.

## Petits correctifs à signaler

Les notes de version de la v2.1.199 ferment une longue traîne de petits correctifs. Les indicateurs de progression des jobs en arrière-plan ne bloquent plus pendant des minutes pendant que le job exécute de longues commandes. Les sessions en arrière-plan sur des machines à mémoire faible indiquent désormais une mémoire faible et suggèrent de libérer des ressources, au lieu d'afficher une erreur générique. Les sessions distantes ne flapent plus entre `Working` et `Idle` dans la vue d'agent quand un agent en arrière-plan se termine. `claude stop` n'est plus silencieusement annulé par un respawn d'agent en arrière-plan en course; le respawn honore désormais l'arrêt. L'ouverture ou la reprise d'une session sans nouveau message ne grossit plus le fichier de transcript. Le passage en arrière-plan d'une session avec `←` ou `/background` ne perd plus son `/color` de la ligne de la vue d'agents. La réinitialisation d'un fichier de configuration corrompu depuis la boîte de récupération au démarrage ne détruit plus le fichier irrémédiablement; elle le sauvegarde d'abord. `claude --dangerously-skip-permissions daemon <subcommand>` n'est plus traité comme un prompt de chat; la sous-commande est désormais exécutée. Claude in Chrome n'ouvre plus en boucle la page de reconnexion quand les sessions tournent depuis des builds ou répertoires de configuration différents.

## Pourquoi c'est important pour les utilisateurs de Claude Code

La v2.1.199 est la troisième version consécutive de Claude Code cette semaine, et la troisième version consécutive à durcir la même surface: le flux agents en arrière-plan et sous-agents que [la v2.1.198 a fait devenir le défaut pour le travail de code dans un worktree](/articles/2026-07-02--claude-code-2-1-198-chrome-ga-background-agents-auto-pr), par-dessus le défaut Sonnet 5 que [la v2.1.197 a introduit deux jours plus tôt](/articles/2026-07-01--claude-sonnet-5-default-model-claude-code-1m-context). Le motif est cohérent: le modèle est stabilisé, le flux d'auto-PR est stabilisé, et le travail se porte sur les modes d'échec que le flux d'auto-PR fait remonter en production. La boucle de crash du daemon des agents en arrière-plan sur Linux, le bug de perte de réponse en streaming, les échecs silencieux des sous-agents, la gestion des erreurs SSL derrière les proxies d'entreprise, et l'asymétrie du plan mode sont exactement le type de problèmes qui n'apparaissent que quand le flux tourne sans surveillance dans une pipeline CI ou dans un worktree sous tableau de bord de longue durée, pas dans l'usage interactif en session unique qui a dominé la première année de Claude Code.

Pour les utilisateurs de Claude Code, le takeaway pratique est une fenêtre `claude update` plus calme un vendredi matin. La version est additive; les flux en session unique existants sont inchangés. La seule nouvelle fonctionnalité (les invocations slash-skill empilées) est un sur-ensemble strict du comportement précédent. La politique de retry est une valeur par défaut qui peut être annulée avec la variable d'environnement `CLAUDE_CODE_MAX_RETRIES` existante. Et les correctifs de modes d'échec (erreurs de sous-agents, préservation des réponses en streaming, asymétrie du plan mode) sont le type de changement qu'un utilisateur actif de Claude Code ne remarque que quand ils ne se déclenchent pas, ce qui est le but.
