SpyBara
Go Premium

Documentation 2026-09-28 22:59 UTC to 2026-09-29 06:57 UTC

116 files changed +3,084 −1,508. View all changes and history on the product overview
2026
Tue 29 09:02 Mon 28 22:59 Fri 25 23:58 Thu 24 22:57 Wed 23 23:57 Tue 22 23:59 Mon 21 22:59 Sun 20 23:59 Sat 19 23:57 Fri 18 23:58 Tue 15 23:58 Mon 14 22:58 Sun 13 21:00 Sat 12 03:02 Thu 10 23:00 Wed 9 22:58 Tue 8 20:00 Tue 1 21:02
Details

111 Répondre aux menus et aux invites111 Répondre aux menus et aux invites

112</h2>112</h2>

113 113 

114En mode lecteur d'écran, les menus que vous navigueriez normalement avec les touches fléchées, y compris les invites de permission, deviennent des listes numérotées. Claude Code annonce chaque option comme une ligne numérotée, puis une invite `Entrer la sélection` qui nomme la plage valide. Tapez le numéro de l'option que vous souhaitez et appuyez sur Entrée.114En mode lecteur d'écran, les menus que vous navigueriez normalement avec les touches fléchées, y compris les invites de permission, deviennent des listes numérotées. Claude Code annonce chaque option comme une ligne numérotée, puis une invite `Sélectionner avec les chiffres` qui nomme la plage valide. Tapez le numéro de l'option que vous souhaitez et appuyez sur Entrée.

115 115 

116* Appuyez sur Échap pour annuler un menu dont l'invite se termine par `ou Échap pour annuler`.116* Appuyez sur Échap pour annuler un menu dont l'invite se termine par `ou Échap pour annuler`.

117* Si vous tapez un numéro qui ne figure pas sur la liste, Claude Code annonce la plage valide et vous permet de réessayer.117* Si vous tapez un numéro qui ne figure pas sur la liste, Claude Code annonce la plage valide et vous permet de réessayer.

admin-setup.md +2 −2

Details

97| :- | :- | :- |97| :- | :- | :- |

98| [Règles de permission](/docs/fr/permissions) | Autoriser, demander ou refuser des outils et commandes spécifiques | `permissions.allow`, `permissions.deny` |98| [Règles de permission](/docs/fr/permissions) | Autoriser, demander ou refuser des outils et commandes spécifiques | `permissions.allow`, `permissions.deny` |

99| [Verrouillage des permissions](/docs/fr/permissions#managed-only-settings) | Rendre les paramètres gérés la [seule source de paramètres des règles de permission](/docs/fr/settings-reference#allowmanagedpermissionrulesonly). Désactiver `--dangerously-skip-permissions` | `allowManagedPermissionRulesOnly`, `permissions.disableBypassPermissionsMode` |99| [Verrouillage des permissions](/docs/fr/permissions#managed-only-settings) | Rendre les paramètres gérés la [seule source de paramètres des règles de permission](/docs/fr/settings-reference#allowmanagedpermissionrulesonly). Désactiver `--dangerously-skip-permissions` | `allowManagedPermissionRulesOnly`, `permissions.disableBypassPermissionsMode` |

100| [Mode de permission de démarrage](/docs/fr/permission-modes#which-mode-a-session-starts-in) | Choisir le mode de permission dans lequel les sessions de terminal de vos développeurs commencent au lieu du mode de permission de démarrage intégré, ou supprimer le mode auto. L'extension VS Code lit un `defaultMode` que vous définissez uniquement sur les plans Pro, Max et Team ; [Basculer les modes de permission](/docs/fr/permission-modes#switch-permission-modes) énumère ce que l'extension lit | `permissions.defaultMode`, `permissions.disableAutoMode` |100| [Mode de permission de démarrage](/docs/fr/permission-modes#which-mode-a-session-starts-in) | Choisir le mode de permission dans lequel les sessions de terminal de vos développeurs commencent au lieu du mode de permission de démarrage intégré, ou supprimer le mode auto. [Basculer les modes de permission](/docs/fr/permission-modes#switch-permission-modes) énumère quand l'extension VS Code lit un `defaultMode` que vous définissez | `permissions.defaultMode`, `permissions.disableAutoMode` |

101| [Sandboxing](/docs/fr/sandboxing) | Isolation du système de fichiers et du réseau au niveau du système d'exploitation avec listes blanches de domaines | `sandbox.enabled`, `sandbox.network.allowedDomains` |101| [Sandboxing](/docs/fr/sandboxing) | Isolation du système de fichiers et du réseau au niveau du système d'exploitation avec listes blanches de domaines | `sandbox.enabled`, `sandbox.network.allowedDomains` |

102| [Politique gérée CLAUDE.md](/docs/fr/memory#deploy-organization-wide-claude-md) | Instructions à l'échelle de l'organisation chargées dans chaque session, ne peuvent pas être exclues | Fichier au chemin de la politique gérée |102| [Politique gérée CLAUDE.md](/docs/fr/memory#deploy-organization-wide-claude-md) | Instructions à l'échelle de l'organisation chargées dans chaque session, ne peuvent pas être exclues | Fichier au chemin de la politique gérée |

103| [Contrôle du serveur MCP](/docs/fr/managed-mcp) | Restreindre les serveurs MCP que les utilisateurs peuvent ajouter ou connecter, déployer un ensemble fixe, ou fournir des serveurs distants à chaque utilisateur aux côtés des leurs | `allowedMcpServers`, `deniedMcpServers`, `allowManagedMcpServersOnly`, `managedMcpServers`, ou un fichier `managed-mcp.json` déployé |103| [Contrôle du serveur MCP](/docs/fr/managed-mcp) | Restreindre les serveurs MCP que les utilisateurs peuvent ajouter ou connecter, déployer un ensemble fixe, ou fournir des serveurs distants à chaque utilisateur aux côtés des leurs | `allowedMcpServers`, `deniedMcpServers`, `allowManagedMcpServersOnly`, `managedMcpServers`, ou un fichier `managed-mcp.json` déployé |


105| [Verrouillage de la personnalisation](/docs/fr/settings-reference#strictpluginonlycustomization) | Bloquer les skills, agents, hooks et serveurs MCP provenant de sources utilisateur et projet, afin qu'ils ne proviennent que de plugins ou de paramètres gérés. Le verrouillage des skills arrête également les [skills que vos développeurs activent sur claude.ai](/docs/fr/skills#where-synced-skills-load) de se synchroniser | `strictPluginOnlyCustomization` |105| [Verrouillage de la personnalisation](/docs/fr/settings-reference#strictpluginonlycustomization) | Bloquer les skills, agents, hooks et serveurs MCP provenant de sources utilisateur et projet, afin qu'ils ne proviennent que de plugins ou de paramètres gérés. Le verrouillage des skills arrête également les [skills que vos développeurs activent sur claude.ai](/docs/fr/skills#where-synced-skills-load) de se synchroniser | `strictPluginOnlyCustomization` |

106| [Désactiver la synchronisation claude.ai](/docs/fr/settings-reference#syncclaudeaiskills) | Arrêter Claude Code de charger les [skills](/docs/fr/skills#how-synced-skills-behave) et [plugins](/docs/fr/plugins/loading#synced-plugins) que vos développeurs activent sur claude.ai. Si vous désactivez les Skills pour votre organisation sur claude.ai, Claude Code arrête la synchronisation des deux, et sur v2.1.273 ou ultérieur, il supprime également ceux qu'il a déjà synchronisés. Pour arrêter l'un ou l'autre sans désactiver les Skills, définissez sa clé sur `false` dans les paramètres gérés | `syncClaudeAiSkills`, `syncClaudeAiPlugins` |106| [Désactiver la synchronisation claude.ai](/docs/fr/settings-reference#syncclaudeaiskills) | Arrêter Claude Code de charger les [skills](/docs/fr/skills#how-synced-skills-behave) et [plugins](/docs/fr/plugins/loading#synced-plugins) que vos développeurs activent sur claude.ai. Si vous désactivez les Skills pour votre organisation sur claude.ai, Claude Code arrête la synchronisation des deux, et sur v2.1.273 ou ultérieur, il supprime également ceux qu'il a déjà synchronisés. Pour arrêter l'un ou l'autre sans désactiver les Skills, définissez sa clé sur `false` dans les paramètres gérés | `syncClaudeAiSkills`, `syncClaudeAiPlugins` |

107| [Restrictions des hooks](/docs/fr/settings-reference#allowmanagedhooksonly) | Restreindre les hooks qui s'exécutent et restreindre les URL des hooks HTTP ; consultez [ce qui s'exécute sous `allowManagedHooksOnly`](/docs/fr/settings-reference#what-runs-under-allowmanagedhooksonly) pour la liste complète des effets | `allowManagedHooksOnly`, `allowedHttpHookUrls` |107| [Restrictions des hooks](/docs/fr/settings-reference#allowmanagedhooksonly) | Restreindre les hooks qui s'exécutent et restreindre les URL des hooks HTTP ; consultez [ce qui s'exécute sous `allowManagedHooksOnly`](/docs/fr/settings-reference#what-runs-under-allowmanagedhooksonly) pour la liste complète des effets | `allowManagedHooksOnly`, `allowedHttpHookUrls` |

108| [Application de la connexion](/docs/fr/settings-reference#forceloginmethod) | Restreindre la connexion à une méthode spécifique ou à une organisation Anthropic. La restriction de méthode s'applique sur l'extension VS Code, Agent SDK, `claude setup-token`, et `/install-github-app`, et l'écran de connexion interactif du terminal, accessible via `/login` ou l'intégration au premier lancement, présélectionne la méthode sans l'appliquer ; Claude Code vérifie l'organisation pour les connexions de compte claude.ai dans le terminal, l'extension VS Code et Agent SDK, et ne la vérifie pas pour les connexions Claude Console ou pour la connexion [gateway](/docs/fr/claude-apps-gateway). Avant v2.1.212, seules les connexions au terminal appliquaient l'une ou l'autre clé. Lorsqu'elle est définie, les sessions authentifiées par `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, ou `apiKeyHelper` sont bloquées au démarrage ; les sessions des fournisseurs cloud ne sont pas affectées | `forceLoginMethod`, `forceLoginOrgUUID` |108| [Application de la connexion](/docs/fr/settings-reference#forceloginmethod) | Restreindre la connexion à une méthode spécifique ou à une organisation Anthropic. La restriction de méthode s'applique sur l'extension VS Code, Agent SDK, `claude setup-token`, et `/install-github-app`, et l'écran de connexion interactif du terminal, accessible via `/login` ou l'intégration au premier lancement, présélectionne la méthode sans l'appliquer ; Claude Code vérifie l'organisation pour les connexions de compte claude.ai dans le terminal, l'extension VS Code et Agent SDK, et ne la vérifie pas pour les connexions Claude Console ou pour la connexion [gateway](/docs/fr/claude-apps-gateway). Avant v2.1.212, seules les connexions au terminal appliquaient l'une ou l'autre clé. Lorsqu'elle est définie, les sessions authentifiées par `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, ou `apiKeyHelper` sont bloquées au démarrage ; les sessions des fournisseurs cloud ne sont pas affectées sauf si l'une de ces informations d'identification, ou une clé API enregistrée par une connexion Claude Console antérieure, est également présente | `forceLoginMethod`, `forceLoginOrgUUID` |

109| [Désactiver la vue agent](/docs/fr/agent-view#how-background-sessions-are-hosted) | Désactiver `claude agents`, `--bg`, `/background`, et le superviseur à la demande | `disableAgentView` |109| [Désactiver la vue agent](/docs/fr/agent-view#how-background-sessions-are-hosted) | Désactiver `claude agents`, `--bg`, `/background`, et le superviseur à la demande | `disableAgentView` |

110| [Configurer le lanceur d'entreprise](/docs/fr/corporate-launcher) | Préfixer le [superviseur d'agent d'arrière-plan](/docs/fr/agent-view#how-background-sessions-are-hosted), ses workers, et les [autres processus d'arrière-plan couverts](/docs/fr/corporate-launcher#what-the-launcher-covers) avec un lanceur d'entreprise requis au lieu de désactiver la vue agent | `processWrapper` |110| [Configurer le lanceur d'entreprise](/docs/fr/corporate-launcher) | Préfixer le [superviseur d'agent d'arrière-plan](/docs/fr/agent-view#how-background-sessions-are-hosted), ses workers, et les [autres processus d'arrière-plan couverts](/docs/fr/corporate-launcher#what-the-launcher-covers) avec un lanceur d'entreprise requis au lieu de désactiver la vue agent | `processWrapper` |

111| [Restrictions de modèle](/docs/fr/model-config#restrict-model-selection) | `availableModels` filtre les modèles qui apparaissent dans le sélecteur. L'ajout de `enforceAvailableModels` contraint également le modèle par défaut sélectionné automatiquement. Consultez [couverture de surface](/docs/fr/model-config#surface-coverage) pour voir comment ce paramètre atteint l'interface CLI, web et IDE | `availableModels`, `enforceAvailableModels` |111| [Restrictions de modèle](/docs/fr/model-config#restrict-model-selection) | `availableModels` filtre les modèles qui apparaissent dans le sélecteur. L'ajout de `enforceAvailableModels` contraint également le modèle par défaut sélectionné automatiquement. Consultez [couverture de surface](/docs/fr/model-config#surface-coverage) pour voir comment ce paramètre atteint l'interface CLI, web et IDE | `availableModels`, `enforceAvailableModels` |

advisor.md +3 −2

Details

103| - | - | - |103| - | - | - |

104| Haiku 4.5 | Fable, Opus, Sonnet | Haiku peut appeler l'advisor mais ne peut pas en être un |104| Haiku 4.5 | Fable, Opus, Sonnet | Haiku peut appeler l'advisor mais ne peut pas en être un |

105| Sonnet 4.6 | Fable, Opus, Sonnet | |105| Sonnet 4.6 | Fable, Opus, Sonnet | |

106| Sonnet 5 | Fable, Opus 4.7 ou ultérieur, Sonnet 5 | Un advisor Sonnet 4.6 est rejeté, et l'API refuse un advisor Opus 4.6 |106| Sonnet 5.5 ou Sonnet 5 | Fable, Opus 4.7 ou ultérieur, Sonnet 5 ou ultérieur | Un advisor Sonnet 4.6 est rejeté, et l'API refuse un advisor Opus 4.6 |

107| Opus 4.6 | Fable, Opus, Sonnet 5 | Un advisor Sonnet 4.6 est rejeté |107| Opus 4.6 | Fable, Opus, Sonnet 5 ou ultérieur | Un advisor Sonnet 4.6 est rejeté |

108| Opus 4.7 ou Opus 4.8 | Fable, et Opus 4.7 ou ultérieur | Un advisor Opus 4.6 ou Sonnet est rejeté |108| Opus 4.7 ou Opus 4.8 | Fable, et Opus 4.7 ou ultérieur | Un advisor Opus 4.6 ou Sonnet est rejeté |

109| Opus 5.5 ou Opus 5 | Fable, et Opus 5 ou ultérieur | Un advisor Opus 4.6 ou Sonnet est rejeté, et l'API refuse un advisor Opus 4.7 ou Opus 4.8 |109| Opus 5.5 ou Opus 5 | Fable, et Opus 5 ou ultérieur | Un advisor Opus 4.6 ou Sonnet est rejeté, et l'API refuse un advisor Opus 4.7 ou Opus 4.8 |

110| Fable 5 | Fable 5.1 ou Fable 5 | Un advisor Opus ou Sonnet est rejeté |110| Fable 5 | Fable 5.1 ou Fable 5 | Un advisor Opus ou Sonnet est rejeté |


163 163 

164* **Reviewed** : la ligne confirme que l'advisor a examiné la conversation. Quand l'advisor a fourni des conseils lisibles, appuyez sur `Ctrl+O` pour les lire.164* **Reviewed** : la ligne confirme que l'advisor a examiné la conversation. Quand l'advisor a fourni des conseils lisibles, appuyez sur `Ctrl+O` pour les lire.

165* **Declined** : la ligne affiche `Advisor declined to advise on this request`. Si l'advisor a fourni une raison, appuyez sur `Ctrl+O` pour la lire.165* **Declined** : la ligne affiche `Advisor declined to advise on this request`. Si l'advisor a fourni une raison, appuyez sur `Ctrl+O` pour la lire.

166* **Unavailable** : l'appel à l'advisor a échoué, et la ligne affiche `Advisor unavailable (<error_code>)`, où `<error_code>` est le code que l'appel a renvoyé.

166 167 

167Claude suit généralement les conseils de l'advisor, mais s'adapte lorsque ses propres preuves contredisent une affirmation spécifique : si une étape recommandée échoue lorsqu'elle est essayée, ou si le contenu du fichier contredit le conseil, Claude met en évidence le conflit plutôt que de suivre le conseil inconditionnellement.168Claude suit généralement les conseils de l'advisor, mais s'adapte lorsque ses propres preuves contredisent une affirmation spécifique : si une étape recommandée échoue lorsqu'elle est essayée, ou si le contenu du fichier contredit le conseil, Claude met en évidence le conflit plutôt que de suivre le conseil inconditionnellement.

168 169 

Details

129Consultez la référence TypeScript [`tool()`](/docs/fr/agent-sdk/typescript#tool) ou la référence Python [`@tool`](/docs/fr/agent-sdk/python#tool) pour les détails complets des paramètres, y compris les formats de schéma d'entrée JSON et la structure de la valeur de retour.129Consultez la référence TypeScript [`tool()`](/docs/fr/agent-sdk/typescript#tool) ou la référence Python [`@tool`](/docs/fr/agent-sdk/python#tool) pour les détails complets des paramètres, y compris les formats de schéma d'entrée JSON et la structure de la valeur de retour.

130 130 

131<Tip>131<Tip>

132 Pour rendre un paramètre optionnel : en TypeScript, ajoutez `.default()` au champ Zod. En Python, le schéma dict traite chaque clé comme obligatoire, donc omettez le paramètre du schéma, mentionnez-le dans la chaîne de description, et lisez-le avec `args.get()` dans le gestionnaire. L'outil [`get_precipitation_chance` ci-dessous](#add-more-tools) montre les deux modèles.132 Pour rendre un paramètre optionnel : en TypeScript, ajoutez `.optional()` au champ Zod et appliquez la valeur par défaut dans le gestionnaire. En Python, le schéma dict traite chaque clé comme obligatoire, donc omettez le paramètre du schéma, mentionnez-le dans la chaîne de description, et lisez-le avec `args.get()` dans le gestionnaire. L'outil [`get_precipitation_chance` ci-dessous](#add-more-tools) montre les deux modèles.

133</Tip>133</Tip>

134 134 

135<h3 id="call-a-custom-tool">135<h3 id="call-a-custom-tool">


248 .int()248 .int()

249 .min(1)249 .min(1)

250 .max(24)250 .max(24)

251 .default(12) // .default() makes the parameter optional251 .optional() // .optional() lets Claude omit the parameter

252 .describe("How many hours of forecast to return")252 .describe("How many hours of forecast to return")

253 },253 },

254 async (args) => {254 async (args) => {

255 const hours = args.hours ?? 12; // Apply the default in the handler

255 const response = await fetch(256 const response = await fetch(

256 `https://api.open-meteo.com/v1/forecast?latitude=${args.latitude}&longitude=${args.longitude}&hourly=precipitation_probability&forecast_days=1`257 `https://api.open-meteo.com/v1/forecast?latitude=${args.latitude}&longitude=${args.longitude}&hourly=precipitation_probability&forecast_days=1`

257 );258 );

258 const data: any = await response.json();259 const data: any = await response.json();

259 const chances = data.hourly.precipitation_probability.slice(0, args.hours);260 const chances = data.hourly.precipitation_probability.slice(0, hours);

260 261 

261 return {262 return {

262 content: [{ type: "text", text: `Next ${args.hours} hours: ${chances.join("%, ")}%` }]263 content: [{ type: "text", text: `Next ${hours} hours: ${chances.join("%, ")}%` }]

263 };264 };

264 }265 }

265 );266 );


273 ```274 ```

274</CodeGroup>275</CodeGroup>

275 276 

276[La recherche d'outils](/docs/fr/agent-sdk/tool-search) est activée par défaut et diffère les outils MCP du SDK : Claude voit le nom de chaque outil dans une liste compacte et charge son schéma complet à la demande. Avec la recherche d'outils désactivée, chaque outil de ce tableau consomme de l'espace de fenêtre de contexte à chaque tour. En TypeScript, passez `alwaysLoad: true` dans l'argument `extras` de [`tool()`](/docs/fr/agent-sdk/typescript#tool) ou dans les options de [`createSdkMcpServer()`](/docs/fr/agent-sdk/typescript#createsdkmcpserver) pour conserver le schéma complet d'un outil dans l'invite initiale.277La [recherche d'outils](/docs/fr/agent-sdk/tool-search) est activée par défaut et diffère les outils MCP du SDK : Claude voit le nom de chaque outil dans une liste compacte et charge son schéma complet à la demande. Avec la recherche d'outils désactivée, chaque outil de ce tableau consomme de l'espace de fenêtre de contexte à chaque tour. En TypeScript, passez `alwaysLoad: true` dans l'argument `extras` de [`tool()`](/docs/fr/agent-sdk/typescript#tool) ou dans les options de [`createSdkMcpServer()`](/docs/fr/agent-sdk/typescript#createsdkmcpserver) pour conserver le schéma complet d'un outil dans l'invite initiale.

277 278 

278<h3 id="add-tool-annotations">279<h3 id="add-tool-annotations">

279 Ajouter des annotations d'outil280 Ajouter des annotations d'outil


469 Images470 Images

470</h3>471</h3>

471 472 

472Un bloc d'image porte les octets de l'image en ligne, codés en base64. Il n'y a pas de champ URL. Pour retourner une image qui se trouve à une URL, récupérez-la dans le gestionnaire, lisez les octets de la réponse et encodez-les en base64 avant de les retourner. Le résultat est traité comme une entrée visuelle.473Un bloc d'image porte les octets de l'image en ligne, codés en base64. Il n'y a pas de champ URL. Pour retourner une image qui se trouve à une URL, récupérez-la dans le gestionnaire, lisez les octets de la réponse et encodez-les en base64 avant de les retourner. Une image PNG, JPEG, GIF ou WebP atteint Claude comme entrée visuelle ; une image de tout autre type est enregistrée sur le disque et Claude reçoit son chemin de fichier sous forme de texte à la place.

473 474 

474| Champ | Type | Notes |475| Champ | Type | Notes |

475| :- | :- | :- |476| :- | :- | :- |


538 Ressources539 Ressources

539</h3>540</h3>

540 541 

541Un bloc de ressource intègre un élément de contenu identifié par un URI. L'URI est une étiquette pour que Claude la référence ; le contenu réel se trouve dans le champ `text` ou `blob` du bloc. Utilisez ceci lorsque votre outil produit quelque chose qui a du sens à adresser par nom plus tard, comme un fichier généré ou un enregistrement d'un système externe.542Un bloc de ressource intègre un élément de contenu identifié par un URI. Le contenu réel se trouve dans le champ `text` ou `blob` du bloc. Utilisez ceci lorsque votre outil produit un fichier généré ou un enregistrement d'un système externe.

542 543 

543| Champ | Type | Notes |544| Champ | Type | Notes |

544| :- | :- | :- |545| :- | :- | :- |


548| `resource.blob` | `string` | Le contenu encodé en base64, s'il est binaire. TypeScript uniquement : le SDK Python supprime les ressources binaires du résultat de l'outil et enregistre un avertissement |549| `resource.blob` | `string` | Le contenu encodé en base64, s'il est binaire. TypeScript uniquement : le SDK Python supprime les ressources binaires du résultat de l'outil et enregistre un avertissement |

549| `resource.mimeType` | `string` | Optionnel |550| `resource.mimeType` | `string` | Optionnel |

550 551 

551Cet exemple montre un bloc de ressource retourné de l'intérieur d'un gestionnaire d'outil. L'URI `file:///tmp/report.md` est une étiquette que Claude peut référencer plus tard ; le SDK ne lit pas à partir de ce chemin.552Cet exemple montre un bloc de ressource retourné de l'intérieur d'un gestionnaire d'outil. Le SDK ne lit pas à partir de l'URI de l'exemple, `file:///tmp/report.md`.

552 553 

553<CodeGroup>554<CodeGroup>

554 ```typescript TypeScript theme={null}555 ```typescript TypeScript theme={null}


572 {573 {

573 "type": "resource",574 "type": "resource",

574 "resource": {575 "resource": {

575 "uri": "file:///tmp/report.md", # Label for Claude to reference, not a path the SDK reads576 "uri": "file:///tmp/report.md", # Not a path the SDK reads

576 "mimeType": "text/markdown",577 "mimeType": "text/markdown",

577 "text": "# Report\n...", # The actual content, inline578 "text": "# Report\n...", # The actual content, inline

578 },579 },

Details

6 6 

7> Trouvez un projet Agent SDK complet et exécutable ou une recette guidée du Claude Cookbook qui correspond à ce que vous souhaitez construire.7> Trouvez un projet Agent SDK complet et exécutable ou une recette guidée du Claude Cookbook qui correspond à ce que vous souhaitez construire.

8 8 

9Cette page vous oriente vers des projets Agent SDK complets et exécutables ainsi que des recettes guidées du Claude Cookbook. Les applications TypeScript se trouvent dans le dépôt [`claude-agent-sdk-demos`](https://github.com/anthropics/claude-agent-sdk-demos), et les recettes Python se trouvent dans le [Claude Cookbook](https://platform.claude.com/cookbook).9Cette page vous oriente vers des projets Agent SDK complets et exécutables ainsi que des recettes guidées du Claude Cookbook. Les applications se trouvent dans le dépôt [`claude-agent-sdk-demos`](https://github.com/anthropics/claude-agent-sdk-demos), et les recettes Python se trouvent dans le [Claude Cookbook](https://platform.claude.com/cookbook).

10 10 

11<h2 id="run-a-minimal-agent-first">11<h2 id="run-a-minimal-agent-first">

12 Exécutez d'abord un agent minimal12 Exécutez d'abord un agent minimal


18 18 

19* [Hello World](https://github.com/anthropics/claude-agent-sdk-demos/tree/main/hello-world) : un projet TypeScript minimal à cloner quand vous souhaitez commencer à partir du code du dépôt19* [Hello World](https://github.com/anthropics/claude-agent-sdk-demos/tree/main/hello-world) : un projet TypeScript minimal à cloner quand vous souhaitez commencer à partir du code du dépôt

20 20 

21<h2 id="explore-a-typescript-application">21<h2 id="explore-a-demo-application">

22 Explorez une application TypeScript22 Explorez une application de démonstration

23</h2>23</h2>

24 24 

25Les applications TypeScript dans [`claude-agent-sdk-demos`](https://github.com/anthropics/claude-agent-sdk-demos) sont des démos pour le développement local, allant d'un client email à un système de recherche multi-agent. Clonez la démo dont la structure correspond à ce que vous construisez.25Les applications dans [`claude-agent-sdk-demos`](https://github.com/anthropics/claude-agent-sdk-demos) sont des démos pour le développement local, allant d'un client email à un système de recherche multi-agent. Clonez la démo dont la structure correspond à ce que vous construisez.

26 26 

27<h2 id="work-through-a-python-recipe">27<h2 id="work-through-a-python-recipe">

28 Travaillez avec une recette Python28 Travaillez avec une recette Python

Details

247 ```247 ```

248 </CodeGroup>248 </CodeGroup>

249 249 

250 Si vous capturez l'ID de session et l'UUID de point de contrôle, vous pouvez également rembobiner à partir de la CLI. Cette commande nécessite l'exécutable `claude`, qui provient de l'[installation de Claude Code](/docs/fr/setup) et n'est pas installé par le package SDK. Le SDK active le point de contrôle pour vous, mais lorsque vous exécutez `claude -p` directement, vous devez définir la variable d'environnement `CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING` :250 Si vous capturez l'ID de session et l'UUID de point de contrôle, vous pouvez également rembobiner à partir de la CLI. Cette commande nécessite l'exécutable `claude`, qui provient de l'[installation de Claude Code](/docs/fr/setup). Le SDK active le point de contrôle pour vous, mais lorsque vous exécutez `claude -p` directement, vous devez définir la variable d'environnement `CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING` :

251 251 

252 ```bash theme={null}252 ```bash theme={null}

253 CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true claude -p --resume <session-id> --rewind-files <checkpoint-uuid>253 CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true claude -p --resume <session-id> --rewind-files <checkpoint-uuid>

Details

127 127 

128Les charges de travail d'exemple incluent un agent de messagerie qui trie et répond aux messages entrants, un générateur de sites qui héberge un site modifiable par utilisateur via les ports du conteneur, et un chatbot qui gère le trafic continu d'une plateforme comme Slack.128Les charges de travail d'exemple incluent un agent de messagerie qui trie et répond aux messages entrants, un générateur de sites qui héberge un site modifiable par utilisateur via les ports du conteneur, et un chatbot qui gère le trafic continu d'une plateforme comme Slack.

129 129 

130Le conteneur expose un point de terminaison HTTP ou WebSocket et mappe chaque session active à une requête longue durée et au sous-processus derrière elle. En TypeScript, utilisez [`streamInput()`](/docs/fr/agent-sdk/typescript#query-object) pour ajouter des tours à une session active et [`startup()`](/docs/fr/agent-sdk/typescript#startup) pour préchauffer les sous-processus avant le trafic entrant. En Python, utilisez [`ClaudeSDKClient`](/docs/fr/agent-sdk/python#claudesdkclient) pour maintenir une session ouverte entre les tours. Dimensionnez le conteneur pour qu'il puisse contenir le nombre maximum de sessions simultanées en mémoire.130Le conteneur expose un point de terminaison HTTP ou WebSocket et mappe chaque session active à une requête longue durée et au sous-processus derrière elle. Les appels qui maintiennent les sessions ouvertes et actives diffèrent entre les SDK :

131 

132* **TypeScript** : utilisez [`streamInput()`](/docs/fr/agent-sdk/typescript#query-object) pour ajouter des tours à une session active. Appelez [`startup()`](/docs/fr/agent-sdk/typescript#startup) pour préchauffer les sous-processus avant le trafic entrant. Si vous ne connaissez pas le répertoire de travail d'une session jusqu'à l'arrivée de sa première requête, préchauffez plutôt avec [`prewarm()`](/docs/fr/agent-sdk/typescript#prewarm).

133* **Python** : utilisez [`ClaudeSDKClient`](/docs/fr/agent-sdk/python#claudesdkclient) pour maintenir une session ouverte entre les tours.

134 

135Dimensionnez le conteneur pour qu'il puisse contenir le nombre maximum de sessions simultanées en mémoire.

131 136 

132<h3 id="hybrid-sessions">137<h3 id="hybrid-sessions">

133 Sessions hybrides138 Sessions hybrides

Details

162| :- | :- | :- |162| :- | :- | :- |

163| Serveur stdio, ou serveur HTTP/SSE sans liste d'outils en cache | Oui, jusqu'à ce qu'il se connecte | [`MCP_TIMEOUT`](/docs/fr/env-vars), 30 secondes par défaut ; la connexion échoue à cette limite |163| Serveur stdio, ou serveur HTTP/SSE sans liste d'outils en cache | Oui, jusqu'à ce qu'il se connecte | [`MCP_TIMEOUT`](/docs/fr/env-vars), 30 secondes par défaut ; la connexion échoue à cette limite |

164| Serveur distant avec une liste d'outils en cache, enregistrée par Claude Code à partir d'une connexion précédente | Non ; les outils en cache sont disponibles dès le premier tour | Aucun ; se connecte lors de son premier appel d'outil, et cette connexion différée a son propre délai d'attente |164| Serveur distant avec une liste d'outils en cache, enregistrée par Claude Code à partir d'une connexion précédente | Non ; les outils en cache sont disponibles dès le premier tour | Aucun ; se connecte lors de son premier appel d'outil, et cette connexion différée a son propre délai d'attente |

165| Serveur [SDK](#sdk-mcp-servers) en processus | Oui, jusqu'à ce qu'il se connecte et énumère ses outils | Aucun ; les demandes de connexion et d'énumération d'outils ont chacune leur propre délai d'attente |165| Serveur [SDK](#sdk-mcp-servers) en processus | Oui, jusqu'à ce qu'il se connecte et énumère ses outils | [`MCP_TIMEOUT`](/docs/fr/env-vars), 30 secondes par défaut, par tentative de connexion ; la connexion échoue à cette limite |

166 166 

167Les serveurs chargés à partir de [fichiers de configuration](#from-a-config-file) tels que `.mcp.json` ou à partir de plugins affichent généralement `pending` dans le message init. Quand `options.mcpServers` contient un serveur stdio, HTTP ou SSE, le premier tour attend également ces serveurs en attente, jusqu'à `MCP_TIMEOUT`. Quand `options.mcpServers` est vide ou contient uniquement des serveurs SDK, le premier tour attend jusqu'à 2 secondes à la place :167Les serveurs chargés à partir de [fichiers de configuration](#from-a-config-file) tels que `.mcp.json` ou à partir de plugins affichent généralement `pending` dans le message init. Quand `options.mcpServers` contient un serveur stdio, HTTP ou SSE, le premier tour attend également ces serveurs en attente, jusqu'à `MCP_TIMEOUT`. Quand `options.mcpServers` est vide ou contient uniquement des serveurs SDK, le premier tour attend jusqu'à 2 secondes à la place :

168 168 

Details

14 14 

15Une invite système est l'ensemble initial d'instructions qui façonne le comportement de Claude tout au long d'une conversation. Le SDK Agent dispose de trois points de départ pour celle-ci :15Une invite système est l'ensemble initial d'instructions qui façonne le comportement de Claude tout au long d'une conversation. Le SDK Agent dispose de trois points de départ pour celle-ci :

16 16 

17* **Défaut minimal** : lorsque vous ne définissez pas `systemPrompt` en TypeScript ou `system_prompt` en Python, le SDK utilise une invite minimale qui couvre l'appel d'outils mais omet le reste du contenu du préréglage `claude_code`, y compris ses instructions de sécurité et de sûreté ainsi que son contexte concernant le répertoire de travail et l'environnement. Cela diffère de `claude -p`, qui utilise l'invite système Claude Code par défaut. Si vous migrez depuis la CLI et souhaitez un comportement correspondant, définissez le préréglage `claude_code`.17* **Défaut minimal** : lorsque vous ne définissez pas `systemPrompt` en TypeScript ou `system_prompt` en Python, le SDK utilise une invite minimale qui couvre l'appel d'outils mais omet le reste du contenu du préréglage `claude_code`, y compris ses instructions de sécurité et de sûreté. Cela diffère de `claude -p`, qui utilise l'invite système Claude Code par défaut. Si vous migrez depuis la CLI et souhaitez un comportement correspondant, définissez le préréglage `claude_code`.

18* **Préréglage `claude_code`** : l'invite système que la CLI Claude Code utilise, avec les instructions d'utilisation des outils, les instructions de sécurité et de sûreté, et le contexte concernant le répertoire de travail et l'environnement. Définissez `systemPrompt: { type: "preset", preset: "claude_code" }` en TypeScript ou `system_prompt={"type": "preset", "preset": "claude_code"}` en Python, éventuellement avec `append` pour ajouter vos propres instructions à la fin.18* **Préréglage `claude_code`** : l'invite système que la CLI Claude Code utilise, avec les instructions d'utilisation des outils et les instructions de sécurité et de sûreté. Définissez `systemPrompt: { type: "preset", preset: "claude_code" }` en TypeScript ou `system_prompt={"type": "preset", "preset": "claude_code"}` en Python, éventuellement avec `append` pour ajouter vos propres instructions à la fin.

19* **Chaîne personnalisée** : une invite que vous écrivez vous-même. Le SDK envoie uniquement ce que vous fournissez.19* **Chaîne personnalisée** : une invite que vous écrivez vous-même. Le SDK envoie uniquement ce que vous fournissez.

20 20 

21<h3 id="decide-on-a-starting-point">21<h3 id="decide-on-a-starting-point">


26 26 

27| Vous construisez | Utiliser | Ce que vous obtenez |27| Vous construisez | Utiliser | Ce que vous obtenez |

28| :- | :- | :- |28| :- | :- | :- |

29| Un outil de codage de type CLI ou IDE où un humain regarde et dirige, et les valeurs par défaut de Claude Code sont ce que vous voulez | Préréglage `claude_code` | L'invite Claude Code, y compris la guidance des outils, les règles de sécurité et le contexte de l'environnement |29| Un outil de codage de type CLI ou IDE où un humain regarde et dirige, et les valeurs par défaut de Claude Code sont ce que vous voulez | Préréglage `claude_code` | L'invite Claude Code, y compris la guidance des outils et les règles de sécurité |

30| Le même type d'outil, plus des règles spécifiques au produit comme les normes de codage, le format de sortie ou le contexte du domaine | Préréglage `claude_code` avec `append` | Tout ce qui précède, avec vos instructions ajoutées après le préréglage. Rien n'est supprimé, donc c'est la personnalisation à risque le plus faible |30| Le même type d'outil, plus des règles spécifiques au produit comme les normes de codage, le format de sortie ou le contexte du domaine | Préréglage `claude_code` avec `append` | Tout ce qui précède, avec vos instructions ajoutées après le préréglage. Rien n'est supprimé, donc c'est la personnalisation à risque le plus faible |

31| Un agent avec une surface, une identité ou un modèle de permission différent, ou un agent non-codage | Chaîne d'invite personnalisée | Uniquement ce que vous écrivez. Vous êtes responsable du remplacement de la guidance des outils et des instructions de sécurité dont votre agent a toujours besoin |31| Un agent avec une surface, une identité ou un modèle de permission différent, ou un agent non-codage | Chaîne d'invite personnalisée | Uniquement ce que vous écrivez. Vous êtes responsable du remplacement de la guidance des outils et des instructions de sécurité dont votre agent a toujours besoin |

32| Une boucle d'appel d'outils mince sans persona d'agent, où vous fournissez tout le comportement dans l'invite utilisateur | Pas d'option `systemPrompt` | Le défaut minimal : support d'appel d'outils et rien d'autre |32| Une boucle d'appel d'outils mince sans persona d'agent, où vous fournissez tout le comportement dans l'invite utilisateur | Pas d'option `systemPrompt` | Le défaut minimal : support d'appel d'outils et rien d'autre |


225 Améliorer la mise en cache des prompts entre les utilisateurs et les machines225 Améliorer la mise en cache des prompts entre les utilisateurs et les machines

226</h4>226</h4>

227 227 

228Par défaut, deux sessions qui utilisent le même préréglage `claude_code` et le même texte `append` ne peuvent toujours pas partager une entrée de cache de prompt si elles s'exécutent à partir de répertoires de travail différents. C'est parce que le préréglage intègre le contexte par session dans le prompt système avant votre texte `append` : le répertoire de travail, s'il s'agit d'un référentiel git, la plateforme, le shell actif, la version du système d'exploitation, et les chemins de mémoire automatique. Toute différence dans ce contexte produit un prompt système différent et un échec du cache. Le contenu de CLAUDE.md n'affecte pas le cache du prompt système parce que le SDK l'injecte dans la conversation, pas dans le prompt système.228Par défaut, deux sessions qui utilisent le même préréglage `claude_code` et le même texte `append` ne peuvent toujours pas partager une entrée de cache de prompt quand leurs emplacements de mémoire automatique diffèrent. Le préréglage intègre cet emplacement dans le prompt système avant votre texte `append`. L'emplacement par défaut est un chemin absolu sous `~/.claude/projects/` nommé d'après le chemin du référentiel sur le disque, donc il diffère entre les utilisateurs, les machines et les checkouts.

229 229 

230Pour rendre le prompt système identique dans les sessions, définissez `excludeDynamicSections: true` en TypeScript ou `"exclude_dynamic_sections": True` en Python. Le contexte par session se déplace dans le premier message utilisateur, laissant seulement le préréglage statique et votre texte `append` dans le prompt système afin que les configurations identiques partagent une entrée de cache dans les utilisateurs et les machines.230Le contenu de CLAUDE.md et les détails d'environnement tels que le répertoire de travail, la plateforme, le shell et la version du système d'exploitation n'affectent pas le cache du prompt système, car Claude Code les fournit dans la conversation, pas dans le prompt système.

231 

232Pour rendre le prompt système identique dans les sessions, définissez `excludeDynamicSections: true` en TypeScript ou `"exclude_dynamic_sections": True` en Python. Le contexte par utilisateur se déplace dans le premier message utilisateur, laissant seulement le préréglage statique et votre texte `append` dans le prompt système afin que les configurations identiques partagent une entrée de cache dans les utilisateurs et les machines.

231 233 

232<Note>234<Note>

233 `excludeDynamicSections` nécessite `@anthropic-ai/claude-agent-sdk` v0.2.98 ou ultérieur, ou `claude-agent-sdk` v0.1.58 ou ultérieur pour Python. Définissez-le sur la forme d'objet préréglé uniquement. Le SDK l'ignore quand vous passez un prompt personnalisé au lieu du préréglage ; pour garder les instructions d'un prompt personnalisé en cache dans le SDK TypeScript, consultez [Cache the static part of a custom prompt](#cache-the-static-part-of-a-custom-prompt).235 `excludeDynamicSections` nécessite `@anthropic-ai/claude-agent-sdk` v0.2.98 ou ultérieur, ou `claude-agent-sdk` v0.1.58 ou ultérieur pour Python. Définissez-le sur la forme d'objet préréglé uniquement. Le SDK l'ignore quand vous passez un prompt personnalisé au lieu du préréglage ; pour garder les instructions d'un prompt personnalisé en cache dans le SDK TypeScript, consultez [Cache the static part of a custom prompt](#cache-the-static-part-of-a-custom-prompt).

234</Note>236</Note>

235 237 

236L'exemple suivant associe un bloc `append` partagé avec `excludeDynamicSections` afin qu'une flotte d'agents s'exécutant à partir de répertoires différents puisse réutiliser le même prompt système en cache :238L'exemple suivant associe un bloc `append` partagé avec `excludeDynamicSections` afin qu'une flotte d'agents puisse réutiliser le même prompt système en cache :

237 239 

238<CodeGroup>240<CodeGroup>

239 ```typescript TypeScript theme={null}241 ```typescript TypeScript theme={null}


279 ```281 ```

280</CodeGroup>282</CodeGroup>

281 283 

282**Compromis :** le répertoire de travail, l'indicateur de référentiel git, la plateforme, le shell actif, la version du système d'exploitation, et les chemins de mémoire automatique atteignent toujours Claude, mais comme faisant partie du premier message utilisateur plutôt que du prompt système. Les instructions dans le message utilisateur ont un poids légèrement inférieur au même texte dans le prompt système, donc Claude peut s'y fier moins fortement quand il raisonne sur le répertoire courant ou les chemins de mémoire automatique. Activez cette option quand la réutilisation du cache entre sessions est plus importante que le contexte d'environnement maximalement autoritaire.284**Compromis :** le texte qui sort du prompt système atteint toujours Claude, mais dans un message utilisateur. Ce texte est au minimum l'emplacement du répertoire de mémoire automatique, et souvent la section de mémoire automatique entière. Les instructions dans un message utilisateur ont un poids légèrement inférieur au même texte dans le prompt système, donc Claude peut suivre ses conseils de mémoire automatique moins systématiquement. Activez cette option quand la réutilisation du cache entre sessions est plus importante que cela.

283 285 

284Pour l'indicateur équivalent en mode CLI non interactif, consultez [`--exclude-dynamic-system-prompt-sections`](/docs/fr/cli-reference).286Pour l'indicateur équivalent en mode CLI non interactif, consultez [`--exclude-dynamic-system-prompt-sections`](/docs/fr/cli-reference).

285 287 


418 420 

419L'enregistrement d'un `append` ou d'un prompt personnalisé par défaut nécessite Claude Code v2.1.265 ou ultérieur, que le SDK Agent TypeScript regroupe à partir de v0.3.265 et le SDK Agent Python à partir de v0.2.153. Avant Claude Code v2.1.268, les sessions qui ne [récupèrent pas les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), y compris les sessions sur Amazon Bedrock, Google Cloud's Agent Platform, et Microsoft Foundry, reconstruisaient le prompt à chaque demande et `snapshot` n'avait aucun effet.421L'enregistrement d'un `append` ou d'un prompt personnalisé par défaut nécessite Claude Code v2.1.265 ou ultérieur, que le SDK Agent TypeScript regroupe à partir de v0.3.265 et le SDK Agent Python à partir de v0.2.153. Avant Claude Code v2.1.268, les sessions qui ne [récupèrent pas les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), y compris les sessions sur Amazon Bedrock, Google Cloud's Agent Platform, et Microsoft Foundry, reconstruisaient le prompt à chaque demande et `snapshot` n'avait aucun effet.

420 422 

423<h2 id="context-claude-code-adds-outside-the-system-prompt">

424 Contexte que Claude Code ajoute en dehors de l'invite système

425</h2>

426 

427Les rappels système sont des messages que Claude Code ajoute à la conversation pendant une session pour donner du contexte à Claude, comme le contenu de vos fichiers CLAUDE.md ou une note indiquant qu'un fichier a changé sur le disque. Claude Code les envoie dans la conversation, pas dans l'invite système, donc ils atteignent Claude que vous utilisiez le préréglage `claude_code` ou que vous transmettiez votre propre chaîne en tant que `systemPrompt`.

428 

429Cette section couvre les [rappels les plus susceptibles de modifier le comportement de votre agent](#reminders-claude-code-adds-to-the-conversation), comment [désactiver ceux que votre agent remplace](#turn-off-the-context-your-agent-replaces), et comment [voir ce que Claude a reçu](#see-what-claude-received) dans une demande spécifique.

430 

431<h3 id="reminders-claude-code-adds-to-the-conversation">

432 Rappels que Claude Code ajoute à la conversation

433</h3>

434 

435Les rappels système sont du texte que Claude Code ajoute à la conversation aux côtés des invites que votre code envoie. Les rappels suivants sont ceux les plus susceptibles de modifier le comportement de votre agent :

436 

437* **Instructions du projet** : les fichiers CLAUDE.md que votre option [`settingSources`](#claude-md-files-for-project-level-instructions) charge

438* **Instructions de style de sortie** : les instructions du [style de sortie](#output-styles-for-persistent-configurations) actif, dans la conversation principale

439* **Attribution des commits et des demandes de tirage** : la remorque `Co-Authored-By` et le pied de page de la demande de tirage du paramètre [`attribution`](/docs/fr/settings-reference#attribution)

440* **Sortie des hooks** : le texte que vos [hooks](/docs/fr/agent-sdk/hooks#outputs) retournent en tant que `additionalContext`

441* **Compétences disponibles** : les noms et descriptions des [compétences](/docs/fr/agent-sdk/skills) que Claude peut appeler

442* **Sous-agents disponibles** : les noms et descriptions des [sous-agents](/docs/fr/agent-sdk/subagents) que Claude peut démarrer

443* **Nudges de liste de tâches** : dans une [session qui dispose des outils de suivi des tâches](/docs/fr/agent-sdk/todo-tracking#model-availability), une invite pour mettre à jour la liste des tâches quand Claude ne l'a pas modifiée depuis plusieurs tours

444* **Notes de fichier modifié** : une note indiquant qu'un fichier que Claude a lu précédemment a changé sur le disque

445 

446Claude Code introduit vos fichiers CLAUDE.md avec une ligne indiquant à Claude que les instructions remplacent le comportement par défaut.

447 

448Si vous transmettez votre propre chaîne en tant que `systemPrompt`, ajoutez-y une phrase qui explique ce qu'est un rappel système. Le préréglage `claude_code` en a un, et votre chaîne remplace tout le préréglage. Sans cela, rien dans votre invite ne dit à Claude que les rappels tels que le contenu CLAUDE.md et la sortie des hooks proviennent de l'application plutôt que de l'utilisateur. Par exemple :

449 

450```text theme={null}

451The application adds system reminders to this conversation. Treat them as context from the application, not as messages from the user.

452```

453 

454<h3 id="turn-off-the-context-your-agent-replaces">

455 Désactiver le contexte que votre agent remplace

456</h3>

457 

458Désactivez un élément du contexte intégré quand votre agent fournit sa propre version des mêmes conseils. Par exemple, si votre invite dit à Claude d'écrire les messages de commit comme `PROJ-142: fix login redirect` sans remorques, Claude Code dit toujours à Claude de terminer chaque message de commit par une remorque `Co-Authored-By`, donc Claude reçoit deux instructions conflictuelles pour le même commit.

459 

460Transmettez les clés de paramètres via l'option [`settings`](/docs/fr/agent-sdk/typescript#options) en TypeScript ou [`settings`](/docs/fr/agent-sdk/python#claudeagentoptions) en Python, et les variables d'environnement via l'option `env`. En TypeScript, [`env`](/docs/fr/agent-sdk/typescript#options) remplace l'environnement hérité, donc propagez `process.env` dedans.

461 

462| Contexte intégré | Comment le désactiver |

463| :- | :- |

464| Les instructions intégrées de commit et de demande de tirage et l'instantané du statut git | Définissez [`includeGitInstructions`](/docs/fr/settings-reference#includegitinstructions) sur `false`, ou `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS=1` |

465| La remorque `Co-Authored-By` et le pied de page de la demande de tirage | Définissez [`attribution.commit`](/docs/fr/settings-reference#attribution-commit) et [`attribution.pr`](/docs/fr/settings-reference#attribution-pr) sur votre propre texte, ou sur des chaînes vides pour les supprimer |

466| La source de paramètres utilisateur ou projet, y compris son CLAUDE.md | Laissez `'user'` ou `'project'` en dehors de [`settingSources`](/docs/fr/agent-sdk/claude-code-features#control-filesystem-settings-with-settingsources) |

467| Chaque fichier CLAUDE.md | Définissez `CLAUDE_CODE_DISABLE_CLAUDE_MDS=1` |

468| Nudges de liste de tâches, notes de fichier modifié et liste de compétences | Définissez `CLAUDE_CODE_DISABLE_ATTACHMENTS=1` |

469 

470Les instructions intégrées de commit et de demande de tirage de Claude Code ne sont pas un rappel. Elles font partie de la description de l'outil Bash, donc elles atteignent également Claude quand vous transmettez un `systemPrompt` personnalisé.

471 

472Si vous définissez `CLAUDE_CODE_DISABLE_ATTACHMENTS`, Claude Code envoie également les mentions de fichier `@` en tant que texte brut au lieu de les développer dans le contenu du fichier. La liste des sous-agents disponibles et les notifications de tâches en arrière-plan arrivent toujours.

473 

474L'exemple suivant concerne un agent qui porte ses propres règles de commit dans `append`. Il définit les deux clés `attribution` sur des chaînes vides pour supprimer la remorque et le pied de page, et désactive `includeGitInstructions` afin que les propres instructions de flux de travail de commit de Claude Code ne rivalisent pas avec les vôtres :

475 

476<CodeGroup>

477 ```typescript TypeScript theme={null}

478 import { query } from "@anthropic-ai/claude-agent-sdk";

479 

480 for await (const message of query({

481 prompt: "Commit the staged changes for ticket PROJ-142",

482 options: {

483 systemPrompt: {

484 type: "preset",

485 preset: "claude_code",

486 append: "Write commit messages as: <ticket id>: <summary>. Add no trailers."

487 },

488 settings: {

489 includeGitInstructions: false,

490 attribution: { commit: "", pr: "" }

491 },

492 allowedTools: ["Bash(git *)"]

493 }

494 })) {

495 if (message.type === "result") console.log(message.subtype);

496 }

497 ```

498 

499 ```python Python theme={null}

500 import asyncio

501 from claude_agent_sdk import query, ClaudeAgentOptions

502 

503 

504 async def main():

505 async for message in query(

506 prompt="Commit the staged changes for ticket PROJ-142",

507 options=ClaudeAgentOptions(

508 system_prompt={

509 "type": "preset",

510 "preset": "claude_code",

511 "append": "Write commit messages as: <ticket id>: <summary>. Add no trailers.",

512 },

513 settings='{"includeGitInstructions": false, "attribution": {"commit": "", "pr": ""}}',

514 allowed_tools=["Bash(git *)"],

515 ),

516 ):

517 print(message)

518 

519 

520 asyncio.run(main())

521 ```

522</CodeGroup>

523 

524Pour confirmer la modification, exécutez l'exemple dans un référentiel avec des modifications en attente et vérifiez le nouveau commit avec `git log -1`. Le message se termine sans une remorque `Co-Authored-By`.

525 

526<h3 id="see-what-claude-received">

527 Voir ce que Claude a reçu

528</h3>

529 

530Le flux de messages du SDK n'inclut pas les rappels système, donc la lecture des messages que votre code reçoit ne vous montrera pas ce que Claude a vu. Pour les voir, enregistrez les demandes que Claude Code envoie :

531 

532* **Enregistrement des demandes brutes** : définissez [`OTEL_LOG_RAW_API_BODIES`](/docs/fr/monitoring-usage#api-request-body-event) sur `file:<dir>`. Claude Code écrit chaque corps de demande dans ce répertoire.

533* **Une passerelle que vous contrôlez** : pointez [`ANTHROPIC_BASE_URL`](/docs/fr/llm-gateway) vers un proxy qui enregistre les corps de demande.

534 

535Dans une demande enregistrée, regardez dans le tableau `messages`. Un rappel apparaît à l'intérieur d'un message utilisateur enveloppé dans des balises `<system-reminder>` ou, sur certains modèles, en tant que message séparé avec le rôle `system`.

536 

421<h2 id="compare-the-four-approaches">537<h2 id="compare-the-four-approaches">

422 Comparaison des quatre approches538 Comparaison des quatre approches

423</h2>539</h2>


431| **Gestion** | Sur le système de fichiers | CLI + fichiers | Dans le code | Dans le code |547| **Gestion** | Sur le système de fichiers | CLI + fichiers | Dans le code | Dans le code |

432| **Outils par défaut** | Préservés | Préservés | Préservés | Perdus (sauf s'ils sont inclus) |548| **Outils par défaut** | Préservés | Préservés | Préservés | Perdus (sauf s'ils sont inclus) |

433| **Sécurité intégrée** | Maintenue | Maintenue | Maintenue | Doit être ajoutée |549| **Sécurité intégrée** | Maintenue | Maintenue | Maintenue | Doit être ajoutée |

434| **Contexte d'environnement** | Automatique | Automatique | Automatique | Doit être fourni |

435| **Niveau de personnalisation** | Ajouts uniquement | Remplacer la valeur par défaut ou l'étendre | Ajouts uniquement | Contrôle complet |550| **Niveau de personnalisation** | Ajouts uniquement | Remplacer la valeur par défaut ou l'étendre | Ajouts uniquement | Contrôle complet |

436| **Contrôle de version** | Avec le projet | Oui | Avec le code | Avec le code |551| **Contrôle de version** | Avec le projet | Oui | Avec le code | Avec le code |

437| **Portée** | Spécifique au projet | Utilisateur ou projet | Session de code | Session de code |552| **Portée** | Spécifique au projet | Utilisateur ou projet | Session de code | Session de code |

Details

253| Variable | Ajoute |253| Variable | Ajoute |

254| - | - |254| - | - |

255| `OTEL_LOG_USER_PROMPTS=1` | Texte d'invite sur les événements `claude_code.user_prompt` et sur le span `claude_code.interaction` |255| `OTEL_LOG_USER_PROMPTS=1` | Texte d'invite sur les événements `claude_code.user_prompt` et sur le span `claude_code.interaction` |

256| `OTEL_LOG_TOOL_DETAILS=1` | Arguments d'entrée d'outil (chemins de fichiers, commandes shell, modèles de recherche) sur les événements `claude_code.tool_result` |256| `OTEL_LOG_TOOL_DETAILS=1` | Arguments d'entrée d'outil tels que les chemins de fichiers, les commandes shell et les modèles de recherche sur les événements `claude_code.tool_result`, et les noms réels d'agent, skill, plugin et serveur MCP sur les [métriques de coût et de tokens](/docs/fr/monitoring-usage#cost-counter) |

257| `OTEL_LOG_TOOL_CONTENT=1` | Un événement de span [`tool.output`](/docs/fr/monitoring-usage#tool-output-span-event) sur `claude_code.tool` avec contenus de fichiers et sortie Bash, tronqué à 60 Ko par défaut, configurable via `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH`, qui nécessite Claude Code v2.1.214 ou version ultérieure. Nécessite que le [traçage](#read-agent-traces) soit activé. Les attributs de span portent le contenu d'outil sous [leurs propres portes](/docs/fr/monitoring-usage#new-context-gates) |257| `OTEL_LOG_TOOL_CONTENT=1` | Un événement de span [`tool.output`](/docs/fr/monitoring-usage#tool-output-span-event) sur `claude_code.tool` avec contenus de fichiers, sortie Bash, et ce que les outils MCP, WebFetch et WebSearch retournent, tronqué à 60 Ko par défaut, configurable via `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH`, qui nécessite Claude Code v2.1.214 ou version ultérieure. Les résultats des outils MCP, WebFetch et WebSearch nécessitent Claude Code v2.1.283 ou version ultérieure. Nécessite que le [traçage](#read-agent-traces) soit activé. Les attributs de span portent le contenu d'outil sous [leurs propres portes](/docs/fr/monitoring-usage#new-context-gates) |

258| `OTEL_LOG_RAW_API_BODIES` | Requête et réponse JSON complètes de l'API Anthropic Messages en tant qu'événements de journal `claude_code.api_request_body` et `claude_code.api_response_body`. Définissez sur `1` pour les corps en ligne tronqués à 60 Ko par défaut, ou `file:<dir>` pour les corps non tronqués sur disque avec un chemin `body_ref` dans l'événement. `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` configure la limite de troncature en ligne, et nécessite Claude Code v2.1.214 ou version ultérieure. Les corps incluent l'historique de conversation complet et le contenu de la réflexion étendue est masqué. L'activation de ceci implique le consentement à tout ce que les trois variables ci-dessus révèleraient |258| `OTEL_LOG_RAW_API_BODIES` | Requête et réponse JSON complètes de l'API Anthropic Messages en tant qu'événements de journal `claude_code.api_request_body` et `claude_code.api_response_body`. Définissez sur `1` pour les corps en ligne tronqués à 60 Ko par défaut, ou `file:<dir>` pour les corps non tronqués sur disque avec un chemin `body_ref` dans l'événement. `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` configure la limite de troncature en ligne, et nécessite Claude Code v2.1.214 ou version ultérieure. Les corps incluent l'historique de conversation complet et le contenu de la réflexion étendue est masqué. L'activation de ceci implique le consentement à tout ce que les trois variables ci-dessus révèleraient |

259 259 

260Laissez ces variables non définies à moins que votre pipeline d'observabilité ne soit approuvé pour stocker les données que votre agent traite. Consultez [Sécurité et confidentialité](/docs/fr/monitoring-usage#security-and-privacy) dans la référence Monitoring pour la liste complète des attributs et du comportement de masquage.260Laissez ces variables non définies à moins que votre pipeline d'observabilité ne soit approuvé pour stocker les données que votre agent traite. Consultez [Sécurité et confidentialité](/docs/fr/monitoring-usage#security-and-privacy) dans la référence Monitoring pour la liste complète des attributs et du comportement de masquage.

Details

41 </Step>41 </Step>

42 42 

43 <Step title="Règles d'autorisation">43 <Step title="Règles d'autorisation">

44 Vérifiez les règles `allow` (à partir de `allowed_tools` et settings.json). Si une règle correspond, l'outil est approuvé. Un appel que l'outil approuve de lui-même est résolu à cette étape aussi, sans règle nécessaire : par exemple une lecture de fichier dans vos répertoires de travail ou une [commande Bash en lecture seule](/docs/fr/permissions#read-only-commands). Les suppressions `rm` et `rmdir` ciblant un [chemin critique](/docs/fr/permission-modes#critical-paths) ne sont jamais approuvées par une règle allow : elles atteignent votre callback dans les modes qui demandent, vont au [classificateur](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) en mode `auto` sur Claude Code v2.1.218 ou ultérieur, et sont refusées en mode `dontAsk`.44 Vérifiez les règles `allow` (à partir de `allowed_tools` et settings.json). Si une règle correspond, l'outil est approuvé. Un appel que l'outil approuve de lui-même est résolu à cette étape aussi, sans règle nécessaire : par exemple une lecture de fichier dans vos répertoires de travail ou une [commande Bash en lecture seule](/docs/fr/permissions#read-only-commands).

45 

46 Les suppressions `rm` et `rmdir` ciblant un [chemin critique](/docs/fr/permission-modes#critical-paths) ne sont jamais approuvées par une règle allow. Qu'elles atteignent ensuite votre callback dépend du mode de permission : dans une session Agent SDK en mode `auto`, par exemple, Claude Code les refuse par défaut sans l'appeler. Le tableau du mode [Chemins critiques](/docs/fr/permission-modes#critical-paths) liste ce que chaque mode fait avec eux.

45 </Step>47 </Step>

46 48 

47 <Step title="Callback canUseTool">49 <Step title="Callback canUseTool">


89Utilisez `//path` pour un chemin du système de fichiers absolu : une règle de refus de `Edit(//secrets/**)` bloque les écritures n'importe où sous `/secrets` sur le disque. Avec une seule barre oblique, `Edit(/secrets/**)` s'ancre à la source de la règle à la place. Pour les règles transmises via `allowed_tools` ou `disallowed_tools`, cela signifie le répertoire de travail de la session, donc la règle ne bloque pas `/secrets` sur le disque. Voir [Règles Read et Edit](/docs/fr/permissions#read-and-edit) pour les quatre formes d'ancrage et comment les règles des fichiers de paramètres se résolvent.91Utilisez `//path` pour un chemin du système de fichiers absolu : une règle de refus de `Edit(//secrets/**)` bloque les écritures n'importe où sous `/secrets` sur le disque. Avec une seule barre oblique, `Edit(/secrets/**)` s'ancre à la source de la règle à la place. Pour les règles transmises via `allowed_tools` ou `disallowed_tools`, cela signifie le répertoire de travail de la session, donc la règle ne bloque pas `/secrets` sur le disque. Voir [Règles Read et Edit](/docs/fr/permissions#read-and-edit) pour les quatre formes d'ancrage et comment les règles des fichiers de paramètres se résolvent.

90 92 

91<Warning>93<Warning>

92 **Les outils approuvés automatiquement n'atteignent jamais `canUseTool`.** Un appel d'outil approuvé à n'importe quelle étape antérieure, par `acceptEdits` ou `bypassPermissions`, ou par une règle d'autorisation, ignore votre rappel `canUseTool`, donc les vérifications de permission que vous y mettez sont silencieusement contournées pour cet outil. `AskUserQuestion`, les outils MCP marqués [`_meta["anthropic/requiresUserInteraction"]`](/docs/fr/mcp#require-approval-for-a-specific-tool), les outils connecteur [que votre organisation a définis sur `ask`](/docs/fr/mcp#organization-controls-on-connector-tools), et les suppressions `rm` et `rmdir` ciblant un [chemin critique](/docs/fr/permission-modes#critical-paths) atteignent toujours le rappel, même lorsqu'une règle d'autorisation correspond. En mode `auto`, les suppressions de chemin critique vont au [classificateur](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) au lieu du rappel, tandis que les autres appels listés ici l'atteignent toujours ; le routage du classificateur nécessite Claude Code v2.1.218 ou ultérieur. En mode `dontAsk`, ces appels sont refusés à la place, sans invoquer le rappel.94 **Les outils approuvés automatiquement n'atteignent jamais `canUseTool`.** Un appel d'outil approuvé à n'importe quelle étape antérieure, par `acceptEdits` ou `bypassPermissions`, ou par une règle d'autorisation, ignore votre rappel `canUseTool`, donc les vérifications de permission que vous y mettez sont silencieusement contournées pour cet outil.

95 

96 Une règle d'autorisation n'approuve jamais automatiquement `AskUserQuestion`, les outils MCP marqués [`_meta["anthropic/requiresUserInteraction"]`](/docs/fr/mcp#require-approval-for-a-specific-tool), les outils connecteur [que votre organisation a définis sur `ask`](/docs/fr/mcp#organization-controls-on-connector-tools), ou les suppressions `rm` et `rmdir` ciblant un [chemin critique](/docs/fr/permission-modes#critical-paths). En mode `dontAsk`, Claude Code refuse ces appels sans invoquer le rappel. Dans les autres modes, les trois premiers atteignent le rappel. Selon le [mode de permission](/docs/fr/permission-modes#critical-paths), une suppression de chemin critique atteint le rappel aussi ou Claude Code la refuse sans l'appeler, comme il le fait par défaut pour une session Agent SDK en mode `auto`.

93 97 

94 La couverture dépend de la forme de l'entrée : un nom nu comme `Read` ou `mcp__github__get_issue` approuve automatiquement chaque appel à cet outil en dehors des exceptions ci-dessus, tandis qu'une règle délimitée comme `Bash(npm test *)` approuve automatiquement uniquement les appels correspondants, et les autres appels `Bash` qui nécessitent une approbation tombent toujours dans le rappel. Pour les vérifications qui doivent s'exécuter sur chaque appel d'outil, utilisez un [hook `PreToolUse`](/docs/fr/agent-sdk/hooks) : les hooks s'exécutent avant chaque autre étape, et un refus de hook s'applique même en mode `bypassPermissions`.98 La couverture dépend de la forme de l'entrée : un nom nu comme `Read` ou `mcp__github__get_issue` approuve automatiquement chaque appel à cet outil en dehors des exceptions ci-dessus, tandis qu'une règle délimitée comme `Bash(npm test *)` approuve automatiquement uniquement les appels correspondants, et les autres appels `Bash` qui nécessitent une approbation tombent toujours dans le rappel. Pour les vérifications qui doivent s'exécuter sur chaque appel d'outil, utilisez un [hook `PreToolUse`](/docs/fr/agent-sdk/hooks) : les hooks s'exécutent avant chaque autre étape, et un refus de hook s'applique même en mode `bypassPermissions`.

95</Warning>99</Warning>

Details

331 Plugin ne se charge pas331 Plugin ne se charge pas

332</h3>332</h3>

333 333 

334Si votre plugin n'apparaît pas dans le message d'initialisation :334Si votre plugin n'apparaît pas dans la liste `plugins` du message d'initialisation, vérifiez son champ [`plugin_errors`](/docs/fr/agent-sdk/typescript#sdksystemmessage) pour connaître la raison, puis travaillez à travers ces vérifications :

335 335 

3361. **Vérifiez le chemin** : assurez-vous que le chemin pointe vers le répertoire racine du plugin, le parent de `skills/`, `agents/`, `hooks/`, `commands/`, ou `.claude-plugin/`3361. **Vérifiez le chemin** : assurez-vous que le chemin pointe vers le répertoire racine du plugin, le parent de `skills/`, `agents/`, `hooks/`, `commands/`, ou `.claude-plugin/`

3372. **Validez plugin.json** : si votre plugin inclut un manifeste, assurez-vous qu'il a une syntaxe JSON valide3372. **Validez plugin.json** : si votre plugin inclut un manifeste, assurez-vous qu'il a une syntaxe JSON valide

agent-sdk/python.md +152 −150

Details

295| Propriété | Type | Description |295| Propriété | Type | Description |

296| :- | :- | :- |296| :- | :- | :- |

297| `session_id` | `str` | Identifiant de session unique |297| `session_id` | `str` | Identifiant de session unique |

298| `summary` | `str` | Titre d'affichage : titre personnalisé, résumé généré automatiquement, ou premier prompt |298| `summary` | `str` | Titre d'affichage : titre personnalisé, prompt le plus récent, résumé généré automatiquement, ou premier prompt |

299| `last_modified` | `int` | Heure de dernière modification en millisecondes depuis l'époque |299| `last_modified` | `int` | Heure de dernière modification en millisecondes depuis l'époque |

300| `file_size` | `int \| None` | Taille du fichier de session en octets (`None` pour les backends de stockage distant) |300| `file_size` | `int \| None` | Taille du fichier de session en octets (`None` pour les backends de stockage distant) |

301| `custom_title` | `str \| None` | Titre de session défini par l'utilisateur |301| `custom_title` | `str \| None` | Titre de session défini par l'utilisateur |


760</h2>760</h2>

761 761 

762<Note>762<Note>

763 **`@dataclass` vs `TypedDict` :** Ce SDK utilise deux types de types. Les classes décorées avec `@dataclass` (telles que `ResultMessage`, `AgentDefinition`, `TextBlock`) sont des instances d'objet à l'exécution et supportent l'accès par attribut : `msg.result`. Les classes définies avec `TypedDict` (telles que `ThinkingConfigEnabled`, `McpStdioServerConfig`, `SyncHookJSONOutput`) sont **des dicts simples à l'exécution** et nécessitent l'accès par clé : `config["budget_tokens"]`, pas `config.budget_tokens`. La syntaxe d'appel `ClassName(field=value)` fonctionne pour les deux, mais seules les dataclasses produisent des objets avec des attributs.763 **`@dataclass` vs `TypedDict` :** Ce SDK utilise deux types de classes. Les classes décorées avec `@dataclass` (telles que `ResultMessage`, `AgentDefinition`, `TextBlock`) sont des instances d'objets à l'exécution et supportent l'accès par attribut : `msg.result`. Les classes définies avec `TypedDict` (telles que `ThinkingConfigEnabled`, `McpStdioServerConfig`, `SyncHookJSONOutput`) sont **des dicts simples à l'exécution** et nécessitent l'accès par clé : `config["budget_tokens"]`, pas `config.budget_tokens`. La syntaxe d'appel `ClassName(field=value)` fonctionne pour les deux, mais seules les dataclasses produisent des objets avec des attributs.

764</Note>764</Note>

765 765 

766<h3 id="sdkmcptool">766<h3 id="sdkmcptool">

767 `SdkMcpTool`767 `SdkMcpTool`

768</h3>768</h3>

769 769 

770Définition pour un outil MCP SDK créé avec le décorateur `@tool`.770Définition d'un outil MCP SDK créé avec le décorateur `@tool`.

771 771 

772```python theme={null}772```python theme={null}

773@dataclass773@dataclass


779 annotations: ToolAnnotations | None = None779 annotations: ToolAnnotations | None = None

780```780```

781 781 

782| Propriété | Type | Description |782| Property | Type | Description |

783| :- | :- | :- |783| :- | :- | :- |

784| `name` | `str` | Identifiant unique pour l'outil |784| `name` | `str` | Identifiant unique pour l'outil |

785| `description` | `str` | Description lisible |785| `description` | `str` | Description lisible par l'homme |

786| `input_schema` | `type[T] \| dict[str, Any]` | Schéma pour la validation d'entrée |786| `input_schema` | `type[T] \| dict[str, Any]` | Schéma pour la validation des entrées |

787| `handler` | `Callable[[T], Awaitable[dict[str, Any]]]` | Fonction asynchrone qui gère l'exécution de l'outil |787| `handler` | `Callable[[T], Awaitable[dict[str, Any]]]` | Fonction asynchrone qui gère l'exécution de l'outil |

788| `annotations` | [`ToolAnnotations`](#toolannotations)` \| None` | Annotations d'outil optionnelles (par exemple `readOnlyHint`, `destructiveHint`, `openWorldHint`, `maxResultSizeChars`) |788| `annotations` | [`ToolAnnotations`](#toolannotations)` \| None` | Annotations d'outil optionnelles (par exemple `readOnlyHint`, `destructiveHint`, `openWorldHint`, `maxResultSizeChars`) |

789 789 


794Classe de base abstraite pour les implémentations de transport personnalisées. Utilisez ceci pour communiquer avec le processus Claude sur un canal personnalisé (par exemple, une connexion distante au lieu d'un sous-processus local).794Classe de base abstraite pour les implémentations de transport personnalisées. Utilisez ceci pour communiquer avec le processus Claude sur un canal personnalisé (par exemple, une connexion distante au lieu d'un sous-processus local).

795 795 

796<Warning>796<Warning>

797 C'est une API interne de bas niveau. L'interface peut changer dans les versions futures. Les implémentations personnalisées doivent être mises à jour pour correspondre à tout changement d'interface.797 Ceci est une API interne de bas niveau. L'interface peut changer dans les versions futures. Les implémentations personnalisées doivent être mises à jour pour correspondre à tout changement d'interface.

798</Warning>798</Warning>

799 799 

800```python theme={null}800```python theme={null}


823 async def end_input(self) -> None: ...823 async def end_input(self) -> None: ...

824```824```

825 825 

826| Méthode | Description |826| Method | Description |

827| :- | :- |827| :- | :- |

828| `connect()` | Connecte le transport et prépare la communication |828| `connect()` | Connecter le transport et préparer la communication |

829| `write(data)` | Écrit les données brutes (JSON + nouvelle ligne) dans le transport |829| `write(data)` | Écrire des données brutes (JSON + nouvelle ligne) vers le transport |

830| `read_messages()` | Itérateur asynchrone qui produit les messages JSON analysés |830| `read_messages()` | Itérateur asynchrone qui produit des messages JSON analysés |

831| `close()` | Ferme la connexion et nettoie les ressources |831| `close()` | Fermer la connexion et nettoyer les ressources |

832| `is_ready()` | Retourne `True` si le transport peut envoyer et recevoir |832| `is_ready()` | Retourne `True` si le transport peut envoyer et recevoir |

833| `end_input()` | Ferme le flux d'entrée (par exemple, fermer stdin pour les transports de sous-processus) |833| `end_input()` | Fermer le flux d'entrée (par exemple, fermer stdin pour les transports de sous-processus) |

834 834 

835Importation : `from claude_agent_sdk import Transport`835Import : `from claude_agent_sdk import Transport`

836 836 

837<h3 id="claudeagentoptions">837<h3 id="claudeagentoptions">

838 `ClaudeAgentOptions`838 `ClaudeAgentOptions`


875 include_partial_messages: bool = False875 include_partial_messages: bool = False

876 include_hook_events: bool = False876 include_hook_events: bool = False

877 forward_subagent_text: bool = False877 forward_subagent_text: bool = False

878 verbatim_prompts: bool = False

878 fork_session: bool = False879 fork_session: bool = False

879 resume_session_at: str | None = None880 resume_session_at: str | None = None

880 resume_drops_turn: str | None = None881 resume_drops_turn: str | None = None


893 task_budget: TaskBudget | None = None894 task_budget: TaskBudget | None = None

894```895```

895 896 

896| Propriété | Type | Par défaut | Description |897| Property | Type | Default | Description |

897| :- | :- | :- | :- |898| :- | :- | :- | :- |

898| `tools` | `list[str] \| ToolsPreset \| None` | `None` | Configuration des outils. Utilisez `{"type": "preset", "preset": "claude_code"}` pour les outils par défaut de Claude Code |899| `tools` | `list[str] \| ToolsPreset \| None` | `None` | Configuration des outils. Utilisez `{"type": "preset", "preset": "claude_code"}` pour les outils par défaut de Claude Code |

899| `allowed_tools` | `list[str]` | `[]` | Outils à approuver automatiquement sans demander. Ceci ne restreint pas Claude à seulement ces outils. Si vous nommez l'un des [outils de suivi des tâches](/docs/fr/agent-sdk/todo-tracking#model-availability) ici, Claude Code opte également la session. Les autres outils non listés passent par `permission_mode` et `can_use_tool`. Utilisez `disallowed_tools` pour bloquer les outils. Voir [Permissions](/docs/fr/agent-sdk/permissions#allow-and-deny-rules) |900| `allowed_tools` | `list[str]` | `[]` | Outils à approuver automatiquement sans demander. Cela ne restreint pas Claude à seulement ces outils. Si vous nommez l'un des [outils de suivi des tâches](/docs/fr/agent-sdk/todo-tracking#model-availability) ici, Claude Code opte également la session. Les autres outils non listés passent à `permission_mode` et `can_use_tool`. Utilisez `disallowed_tools` pour bloquer les outils. Voir [Permissions](/docs/fr/agent-sdk/permissions#allow-and-deny-rules) |

900| `system_prompt` | `str \| SystemPromptPreset \| SystemPromptCustom \| SystemPromptFile \| None` | `None` | Configuration du prompt système. Passez une chaîne pour un prompt personnalisé, `{"type": "preset", "preset": "claude_code"}` pour le prompt système de Claude Code avec `"append"` optionnel, `{"type": "custom", "prompt": "..."}` pour un prompt personnalisé qui peut également définir `"snapshot"`, ou `{"type": "file", "path": "..."}` pour charger un grand prompt depuis le disque. Voir [`SystemPromptPreset`](#systempromptpreset), [`SystemPromptCustom`](#systempromptcustom), et [`SystemPromptFile`](#systempromptfile) |901| `system_prompt` | `str \| SystemPromptPreset \| SystemPromptCustom \| SystemPromptFile \| None` | `None` | Configuration du prompt système. Passez une chaîne pour un prompt personnalisé, `{"type": "preset", "preset": "claude_code"}` pour le prompt système de Claude Code avec `"append"` optionnel, `{"type": "custom", "prompt": "..."}` pour un prompt personnalisé qui peut également définir `"snapshot"`, ou `{"type": "file", "path": "..."}` pour charger un grand prompt depuis le disque. Voir [`SystemPromptPreset`](#systempromptpreset), [`SystemPromptCustom`](#systempromptcustom), et [`SystemPromptFile`](#systempromptfile) |

901| `mcp_servers` | `dict[str, McpServerConfig] \| str \| Path` | `{}` | Configurations de serveur MCP ou chemin vers le fichier de configuration |902| `mcp_servers` | `dict[str, McpServerConfig] \| str \| Path` | `{}` | Configurations des serveurs MCP ou chemin vers un fichier de configuration |

902| `strict_mcp_config` | `bool` | `False` | Quand `True`, utilisez uniquement les serveurs passés dans `mcp_servers` et ignorez le projet `.mcp.json`, les paramètres utilisateur, les serveurs MCP fournis par les plugins, et les [connecteurs claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai). Correspond à l'indicateur CLI `--strict-mcp-config` |903| `strict_mcp_config` | `bool` | `False` | Quand `True`, utilisez uniquement les serveurs passés dans `mcp_servers` et ignorez le `.mcp.json` du projet, les paramètres utilisateur, les serveurs MCP fournis par les plugins, et les [connecteurs claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai). Correspond au drapeau CLI `--strict-mcp-config` |

903| `permission_mode` | `PermissionMode \| None` | `None` | Mode de permission pour l'utilisation des outils |904| `permission_mode` | `PermissionMode \| None` | `None` | Mode de permission pour l'utilisation des outils |

904| `continue_conversation` | `bool` | `False` | Continuer la conversation la plus récente |905| `continue_conversation` | `bool` | `False` | Continuer la conversation la plus récente |

905| `resume` | `str \| None` | `None` | ID de session à reprendre |906| `resume` | `str \| None` | `None` | ID de session à reprendre |

906| `session_id` | `str \| None` | `None` | Utilisez un ID de session spécifique au lieu d'un généré automatiquement. Doit être un UUID valide. Ne peut pas être combiné avec `continue_conversation` ou `resume` sauf si `fork_session` est également défini |907| `session_id` | `str \| None` | `None` | Utilisez un ID de session spécifique au lieu d'un généré automatiquement. Doit être un UUID valide. Ne peut pas être combiné avec `continue_conversation` ou `resume` sauf si `fork_session` est également défini |

907| `max_turns` | `int \| None` | `None` | Nombre maximum de tours agentiques (allers-retours d'utilisation d'outils) |908| `max_turns` | `int \| None` | `None` | Nombre maximum de tours d'agent (allers-retours d'utilisation d'outils) |

908| `max_budget_usd` | `float \| None` | `None` | Arrêtez la requête quand l'estimation du coût côté client atteint cette valeur USD. Compte uniquement la dépense de l'appel lui-même ; les totaux restaurés à partir d'une session reprise ne comptent pas. Pour les avertissements de précision et le comportement de réinitialisation, voir [Suivi du coût et de l'utilisation](/docs/fr/agent-sdk/cost-tracking) |909| `max_budget_usd` | `float \| None` | `None` | Arrêter la requête quand l'estimation du coût côté client atteint cette valeur en USD. Compte uniquement les dépenses de l'appel lui-même ; les totaux restaurés à partir d'une session reprise ne comptent pas. Pour les avertissements de précision et le comportement de réinitialisation, voir [Suivre le coût et l'utilisation](/docs/fr/agent-sdk/cost-tracking) |

909| `disallowed_tools` | `list[str]` | `[]` | Outils à refuser. Un nom simple tel que `"Bash"` supprime l'outil du contexte de Claude. Une règle délimitée telle que `"Bash(rm *)"` laisse l'outil disponible et refuse les appels correspondants dans chaque mode de permission, y compris `bypassPermissions`, pour la commande [telle qu'écrite](/docs/fr/permissions#bash-rule-limits). Voir [Permissions](/docs/fr/agent-sdk/permissions#allow-and-deny-rules) |910| `disallowed_tools` | `list[str]` | `[]` | Outils à refuser. Un nom simple tel que `"Bash"` supprime l'outil du contexte de Claude. Une règle délimitée telle que `"Bash(rm *)"` laisse l'outil disponible et refuse les appels correspondants dans chaque mode de permission, y compris `bypassPermissions`, pour la commande [telle qu'écrite](/docs/fr/permissions#bash-rule-limits). Voir [Permissions](/docs/fr/agent-sdk/permissions#allow-and-deny-rules) |

910| `enable_file_checkpointing` | `bool` | `False` | Activez le suivi des modifications de fichiers pour le rembobinage. Voir [Sauvegarde de points de contrôle de fichiers](/docs/fr/agent-sdk/file-checkpointing) |911| `enable_file_checkpointing` | `bool` | `False` | Activer le suivi des modifications de fichiers pour la rembobinage. Voir [Checkpointing de fichiers](/docs/fr/agent-sdk/file-checkpointing) |

911| `model` | `str \| None` | `None` | Alias de modèle Claude ou nom de modèle complet. Voir [valeurs acceptées et identifiants spécifiques au fournisseur](/docs/fr/model-config#available-models) |912| `model` | `str \| None` | `None` | Alias de modèle Claude ou nom de modèle complet. Voir [valeurs acceptées et IDs spécifiques au fournisseur](/docs/fr/model-config#available-models) |

912| `fallback_model` | `str \| None` | `None` | Modèle de secours à utiliser si le modèle principal échoue. Accepte une liste séparée par des virgules. Pour des conseils, voir [Choisir un modèle](/docs/fr/agent-sdk/configuration#choose-a-model) |913| `fallback_model` | `str \| None` | `None` | Modèle de secours à utiliser si le modèle principal échoue. Accepte une liste séparée par des virgules. Pour des conseils, voir [Choisir un modèle](/docs/fr/agent-sdk/configuration#choose-a-model) |

913| `betas` | `list[SdkBeta]` | `[]` | Fonctionnalités bêta à activer. Voir [`SdkBeta`](#sdkbeta) pour les options disponibles |914| `betas` | `list[SdkBeta]` | `[]` | Fonctionnalités bêta à activer. Voir [`SdkBeta`](#sdkbeta) pour les options disponibles |

914| `output_format` | `dict[str, Any] \| None` | `None` | Format de sortie pour les réponses structurées (par exemple, `{"type": "json_schema", "schema": {...}}`). Voir [Sorties structurées](/docs/fr/agent-sdk/structured-outputs) pour les détails |915| `output_format` | `dict[str, Any] \| None` | `None` | Format de sortie pour les réponses structurées (par exemple, `{"type": "json_schema", "schema": {...}}`). Voir [Sorties structurées](/docs/fr/agent-sdk/structured-outputs) pour les détails |

915| `permission_prompt_tool_name` | `str \| None` | `None` | Nom de l'outil MCP pour les prompts de permission |916| `permission_prompt_tool_name` | `str \| None` | `None` | Nom de l'outil MCP pour les invites de permission |

916| `cwd` | `str \| Path \| None` | `None` | Répertoire de travail actuel |917| `cwd` | `str \| Path \| None` | `None` | Répertoire de travail courant |

917| `cli_path` | `str \| Path \| None` | `None` | Chemin personnalisé vers l'exécutable CLI de Claude Code |918| `cli_path` | `str \| Path \| None` | `None` | Chemin personnalisé vers l'exécutable CLI de Claude Code |

918| `settings` | `str \| None` | `None` | Chemin vers un fichier de paramètres ou une chaîne JSON en ligne |919| `settings` | `str \| None` | `None` | Chemin vers un fichier de paramètres ou une chaîne JSON en ligne |

919| `add_dirs` | `list[str \| Path]` | `[]` | Répertoires supplémentaires auxquels Claude peut accéder. Le SDK passe chaque entrée à Claude Code comme `--add-dir`, donc avec la source de paramètre `project` Claude Code [charge également les compétences, commandes et sous-agents du répertoire](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) |920| `add_dirs` | `list[str \| Path]` | `[]` | Répertoires supplémentaires auxquels Claude peut accéder. Le SDK transmet chaque entrée à Claude Code en tant que `--add-dir`, donc avec la source de paramètre `project` Claude Code [charge également les compétences, commandes et sous-agents du répertoire](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) |

920| `env` | `dict[str, str]` | `{}` | Variables d'environnement fusionnées au-dessus de l'environnement de processus hérité. Voir [Variables d'environnement](/docs/fr/env-vars) pour les variables que le CLI sous-jacent lit, et [Gérer les réponses API lentes ou bloquées](#handle-slow-or-stalled-api-responses) pour les variables liées aux délais d'expiration. Définissez `CLAUDE_AGENT_SDK_CLIENT_APP` pour identifier votre application dans l'en-tête User-Agent |921| `env` | `dict[str, str]` | `{}` | Variables d'environnement fusionnées au-dessus de l'environnement de processus hérité. Voir [Variables d'environnement](/docs/fr/env-vars) pour les variables que le CLI sous-jacent lit, et [Gérer les réponses API lentes ou bloquées](#handle-slow-or-stalled-api-responses) pour les variables liées aux délais d'attente. Définissez `CLAUDE_AGENT_SDK_CLIENT_APP` pour identifier votre application dans l'en-tête User-Agent |

921| `extra_args` | `dict[str, str \| None]` | `{}` | Arguments CLI supplémentaires à passer directement au CLI |922| `extra_args` | `dict[str, str \| None]` | `{}` | Arguments CLI supplémentaires à transmettre directement au CLI |

922| `max_buffer_size` | `int \| None` | `None` | Octets maximum lors de la mise en buffer de la sortie standard du CLI |923| `max_buffer_size` | `int \| None` | `None` | Nombre maximum d'octets lors de la mise en mémoire tampon de la sortie standard du CLI |

923| `debug_stderr` | `Any` | `sys.stderr` | *Déprécié* - Le SDK ignore cette valeur. Utilisez le callback `stderr` pour la sortie stderr du CLI |924| `debug_stderr` | `Any` | `sys.stderr` | *Déprécié* - Le SDK ignore cette valeur. Utilisez le rappel `stderr` pour la sortie stderr du CLI |

924| `stderr` | `Callable[[str], None] \| None` | `None` | Fonction de callback pour la sortie stderr du CLI |925| `stderr` | `Callable[[str], None] \| None` | `None` | Fonction de rappel pour la sortie stderr du CLI |

925| `can_use_tool` | [`CanUseTool`](#canusetool) ` \| None` | `None` | Fonction de callback de permission d'outil, invoquée uniquement quand le [flux de permission](/docs/fr/agent-sdk/permissions#how-permissions-are-evaluated) aboutit à un prompt. Non invoquée pour les appels pré-approuvés par `allowed_tools`, les règles d'autorisation, ou `permission_mode`. Une règle d'autorisation ne pré-approuve pas les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves). Voir [`CanUseTool`](#canusetool) pour les détails |926| `can_use_tool` | [`CanUseTool`](#canusetool) ` \| None` | `None` | Rappel de permission d'outil, invoqué uniquement quand le [flux de permission](/docs/fr/agent-sdk/permissions#how-permissions-are-evaluated) aboutit à une invite. Non invoqué pour les appels pré-approuvés par `allowed_tools`, les règles d'autorisation, ou `permission_mode`. Une règle d'autorisation ne pré-approuve pas les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves). Voir [`CanUseTool`](#canusetool) pour les détails |

926| `hooks` | `dict[HookEvent, list[HookMatcher]] \| None` | `None` | Configurations de hook pour intercepter les événements |927| `hooks` | `dict[HookEvent, list[HookMatcher]] \| None` | `None` | Configurations de hook pour intercepter les événements |

927| `user` | `str \| None` | `None` | Sur les plateformes POSIX, le compte utilisateur du système d'exploitation sous lequel le sous-processus Claude Code s'exécute. Claude Code conserve l'environnement du processus parent, y compris `HOME`, et s'exécute dans `cwd` |928| `user` | `str \| None` | `None` | Sur les plates-formes POSIX, le compte utilisateur du système d'exploitation sous lequel le sous-processus Claude Code s'exécute. Claude Code conserve l'environnement du processus parent, y compris `HOME`, et s'exécute dans `cwd` |

928| `include_partial_messages` | `bool` | `False` | Inclure les événements de streaming de messages partiels. Quand activé, les messages [`StreamEvent`](#streamevent) sont produits |929| `include_partial_messages` | `bool` | `False` | Inclure les événements de diffusion de messages partiels. Quand activé, les messages [`StreamEvent`](#streamevent) sont produits |

929| `include_hook_events` | `bool` | `False` | Inclure les événements du cycle de vie des hooks dans le flux de messages en tant qu'objets `HookEventMessage` |930| `include_hook_events` | `bool` | `False` | Inclure les événements du cycle de vie des hooks dans le flux de messages en tant qu'objets `HookEventMessage` |

930| `forward_subagent_text` | `bool` | `False` | Transférez les blocs de texte et de réflexion des sous-agents dans le flux de messages. Sans cette option, Claude Code émet les blocs `tool_use` et `tool_result` des sous-agents mais pas le texte ou la réflexion. Nécessite Python Agent SDK 0.2.140 ou ultérieur |931| `forward_subagent_text` | `bool` | `False` | Transmettre les blocs de texte et de réflexion des sous-agents dans le flux de messages. Sans cette option, Claude Code émet les blocs `tool_use` et `tool_result` des sous-agents mais pas le texte ou la réflexion. Nécessite Python Agent SDK 0.2.140 ou ultérieur |

931| `fork_session` | `bool` | `False` | Quand reprendre avec `resume`, bifurquer vers un nouvel ID de session au lieu de continuer la session originale |932| `verbatim_prompts` | `bool` | `False` | Livrer chaque invite telle qu'écrite. Le SDK envoie chaque message utilisateur avec `client_composed` défini à `True`. Voir [`client_composed`](/docs/fr/agent-sdk/typescript#sdkusermessage) pour ce que Claude Code ignore sur ces messages. Utilisez cette option quand votre texte d'invite inclut du contenu que l'utilisateur final n'a pas tapé. Pour un contrôle par tour, laissez-le désactivé et définissez `"client_composed": True` sur les messages diffusés individuels à la place. Pendant que l'option est activée, le SDK écrase toute valeur `client_composed` que vous définissez. Nécessite Python Agent SDK 0.2.158 ou ultérieur et Claude Code v2.1.248 ou ultérieur ; le CLI fourni avec ces versions du SDK satisfait l'exigence de Claude Code |

932| `resume_session_at` | `str \| None` | `None` | Quand reprendre, charger la conversation uniquement jusqu'à et y compris le message avec cet UUID. Utilisez avec `resume`, et généralement `fork_session`, pour brancher à partir d'un point antérieur. Nécessite Python Agent SDK 0.2.137 ou ultérieur |933| `fork_session` | `bool` | `False` | Lors de la reprise avec `resume`, bifurquer vers un nouvel ID de session au lieu de continuer la session d'origine |

933| `resume_drops_turn` | `str \| None` | `None` | UUID du prompt utilisateur dont le tour une troncature `resume_session_at` rejette. Quand défini, le CLI refuse la reprise si la plage rejetée contient des entrées non attribuables à ce tour. Nécessite Python Agent SDK 0.2.137 ou ultérieur et Claude Code v2.1.223 ou ultérieur ; le CLI fourni avec ces versions du SDK satisfait l'exigence de Claude Code |934| `resume_session_at` | `str \| None` | `None` | Lors de la reprise, charger la conversation uniquement jusqu'à et y compris le message avec cet UUID. Utilisez avec `resume`, et généralement `fork_session`, pour brancher à partir d'un point antérieur. Nécessite Python Agent SDK 0.2.137 ou ultérieur |

934| `agents` | `dict[str, AgentDefinition] \| None` | `None` | Sous-agents définis programmatiquement |935| `resume_drops_turn` | `str \| None` | `None` | UUID de l'invite utilisateur dont le tour une troncature `resume_session_at` rejette. Quand défini, le CLI refuse la reprise si la plage rejetée contient des entrées non attribuables à ce tour. Nécessite Python Agent SDK 0.2.137 ou ultérieur et Claude Code v2.1.223 ou ultérieur ; le CLI fourni avec ces versions du SDK satisfait l'exigence de Claude Code |

935| `plugins` | `list[SdkPluginConfig]` | `[]` | Charger les plugins personnalisés à partir de chemins locaux. Voir [Plugins](/docs/fr/agent-sdk/plugins) pour les détails |936| `agents` | `dict[str, AgentDefinition] \| None` | `None` | Sous-agents définis par programmation |

936| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | Configurez le comportement du sandbox programmatiquement. Voir [Paramètres du sandbox](#sandboxsettings) pour les détails |937| `plugins` | `list[SdkPluginConfig]` | `[]` | Charger des plugins personnalisés à partir de chemins locaux. Voir [Plugins](/docs/fr/agent-sdk/plugins) pour les détails |

937| `setting_sources` | `list[SettingSource] \| None` | `None` (CLI defaults: all sources) | Contrôlez quels paramètres du système de fichiers charger. Passez `[]` pour désactiver les paramètres utilisateur, projet et locaux. Avec `skills` défini et ce champ non défini, seules les sources utilisateur et projet se chargent. Définissez `setting_sources` explicitement pour conserver les paramètres locaux. La politique gérée par le point de terminaison se charge indépendamment ; les paramètres gérés par le serveur sont récupérés quand la session s'authentifie avec une credential d'organisation sur une [configuration éligible](/docs/fr/server-managed-settings#platform-availability). Pour les entrées lues indépendamment de cette option, voir [Ce que settingSources ne contrôle pas](/docs/fr/agent-sdk/claude-code-features#what-settingsources-does-not-control) |938| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | Configurer le comportement du sandbox par programmation. Voir [Paramètres du sandbox](#sandboxsettings) pour les détails |

938| `skills` | `list[str] \| Literal["all"] \| None` | `None` | Compétences disponibles pour la session. Passez `"all"` pour activer chaque compétence découverte, ou une liste de noms de compétences. Passez uniquement les noms exacts. Le SDK rejette les noms mal formés et de forme wildcard avec une `ValueError` avant de démarrer le processus Claude Code ; cette vérification nécessite Python Agent SDK 0.2.129 ou ultérieur. Quand défini, le SDK ajoute l'outil Skill à `allowed_tools` automatiquement. Si vous passez aussi `tools`, incluez `"Skill"` dans cette liste. Voir [Compétences](/docs/fr/agent-sdk/skills) |939| `setting_sources` | `list[SettingSource] \| None` | `None` (CLI defaults: all sources) | Contrôler quels paramètres du système de fichiers charger. Passez `[]` pour désactiver les paramètres utilisateur, projet et locaux. Avec `skills` défini et ce champ non défini, seules les sources utilisateur et projet se chargent. Définissez `setting_sources` explicitement pour conserver les paramètres locaux. La politique gérée par le point de terminaison se charge indépendamment ; les paramètres gérés par le serveur sont récupérés quand la session s'authentifie avec une credential d'organisation sur une [configuration éligible](/docs/fr/server-managed-settings#platform-availability). Pour les entrées lues indépendamment de cette option, voir [Ce que settingSources ne contrôle pas](/docs/fr/agent-sdk/claude-code-features#what-settingsources-does-not-control) |

939| `max_thinking_tokens` | `int \| None` | `None` | *Déprécié* - Tokens maximum pour les blocs de réflexion. Utilisez `thinking` à la place |940| `skills` | `list[str] \| Literal["all"] \| None` | `None` | Compétences disponibles pour la session. Passez `"all"` pour activer chaque compétence découverte, ou une liste de noms de compétences. Passez uniquement les noms exacts. Le SDK rejette les noms mal formés et de forme générique avec une `ValueError` avant de démarrer le processus Claude Code ; cette vérification nécessite Python Agent SDK 0.2.129 ou ultérieur. Quand défini, le SDK ajoute l'outil Skill à `allowed_tools` automatiquement. Si vous passez également `tools`, incluez `"Skill"` dans cette liste. Voir [Compétences](/docs/fr/agent-sdk/skills) |

941| `max_thinking_tokens` | `int \| None` | `None` | *Déprécié* - Nombre maximum de tokens pour les blocs de réflexion. Utilisez `thinking` à la place |

940| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | Contrôle le comportement de la réflexion étendue. Prend la priorité sur `max_thinking_tokens` |942| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | Contrôle le comportement de la réflexion étendue. Prend la priorité sur `max_thinking_tokens` |

941| `effort` | [`EffortLevel`](#effortlevel) ` \| None` | `None` | Niveau d'effort pour la profondeur de réflexion. Voir [ajuster le niveau d'effort](/docs/fr/model-config#adjust-effort-level) |943| `effort` | [`EffortLevel`](#effortlevel) ` \| None` | `None` | Niveau d'effort pour la profondeur de réflexion. Voir [ajuster le niveau d'effort](/docs/fr/model-config#adjust-effort-level) |

942| `session_store` | [`SessionStore`](/docs/fr/agent-sdk/session-storage#the-sessionstore-interface) ` \| None` | `None` | Miroir les transcriptions de session vers un backend externe pour que n'importe quel hôte puisse les reprendre. Voir [Persister les sessions vers un stockage externe](/docs/fr/agent-sdk/session-storage) |944| `session_store` | [`SessionStore`](/docs/fr/agent-sdk/session-storage#the-sessionstore-interface) ` \| None` | `None` | Refléter les transcriptions de session vers un backend externe afin qu'un autre hôte puisse les reprendre. Voir [Persister les sessions vers un stockage externe](/docs/fr/agent-sdk/session-storage) |

943| `session_store_flush` | `Literal["batched", "eager"]` | `"batched"` | Quand vider les entrées de transcription en miroir vers `session_store`. `"batched"` vide une fois par tour ou quand le buffer se remplit ; `"eager"` déclenche un vidage en arrière-plan après chaque frame. Ignoré quand `session_store` est `None` |945| `session_store_flush` | `Literal["batched", "eager"]` | `"batched"` | Quand vider les entrées de transcription refléchies vers `session_store`. `"batched"` vide une fois par tour ou quand le tampon se remplit ; `"eager"` déclenche un vidage en arrière-plan après chaque frame. Ignoré quand `session_store` est `None` |

944| `load_timeout_ms` | `int` | `60000` | Délai d'expiration par appel pour `session_store.load()` et `list_subkeys()` lors de la matérialisation de la reprise, en millisecondes |946| `load_timeout_ms` | `int` | `60000` | Délai d'attente par appel pour `session_store.load()` et `list_subkeys()` lors de la matérialisation de la reprise, en millisecondes |

945| `task_budget` | `TaskBudget \| None` | `None` | Budget de tokens côté API. Envoyé comme `output_config.task_budget` avec l'en-tête bêta `task-budgets-2026-03-13`. Passez `{"total": <int>}`. |947| `task_budget` | `TaskBudget \| None` | `None` | Budget de tokens côté API. Envoyé en tant que `output_config.task_budget` avec l'en-tête bêta `task-budgets-2026-03-13`. Passez `{"total": <int>}`. |

946 948 

947<h4 id="handle-slow-or-stalled-api-responses">949<h4 id="handle-slow-or-stalled-api-responses">

948 Gérer les réponses API lentes ou bloquées950 Gérer les réponses API lentes ou bloquées

949</h4>951</h4>

950 952 

951Le sous-processus CLI lit plusieurs variables d'environnement qui contrôlent les délais d'expiration de l'API et la détection de blocage. Passez-les via `ClaudeAgentOptions.env` :953Le sous-processus CLI lit plusieurs variables d'environnement qui contrôlent les délais d'attente de l'API et la détection de blocage. Transmettez-les via `ClaudeAgentOptions.env` :

952 954 

953```python theme={null}955```python theme={null}

954from claude_agent_sdk import ClaudeAgentOptions956from claude_agent_sdk import ClaudeAgentOptions


962)964)

963```965```

964 966 

965* `API_TIMEOUT_MS` : délai d'expiration par requête sur le client Anthropic, en millisecondes. Par défaut `600000`. S'applique à la boucle principale et à tous les sous-agents.967* `API_TIMEOUT_MS` : délai d'attente par requête sur le client Anthropic, en millisecondes. Par défaut `600000`. S'applique à la boucle principale et à tous les sous-agents.

966* `CLAUDE_CODE_MAX_RETRIES` : nombre maximum de tentatives API. Par défaut `10`, limité à `15`. Chaque tentative obtient sa propre fenêtre `API_TIMEOUT_MS`, donc le pire temps mural est approximativement `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` plus le backoff. Pour les exécutions sans surveillance qui doivent attendre des pannes plus longues, définissez [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/fr/errors#tune-retry-behavior) : il réessaye les erreurs de capacité transitoires indéfiniment et, à partir de Claude Code v2.1.199, augmente la valeur par défaut pour les autres erreurs transitoires à `300` et supprime le plafond sur cette variable.968* `CLAUDE_CODE_MAX_RETRIES` : nombre maximum de tentatives d'API. Par défaut `10`, plafonné à `15`. Chaque tentative obtient sa propre fenêtre `API_TIMEOUT_MS`, donc le pire cas de temps mural est à peu près `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` plus le backoff. Pour les exécutions sans surveillance qui doivent attendre les pannes plus longues, définissez [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/fr/errors#tune-retry-behavior) : il réessaie les erreurs de capacité transitoires indéfiniment et, sur Claude Code v2.1.199 ou ultérieur, augmente la valeur par défaut pour les autres erreurs transitoires à `300` et supprime le plafond sur cette variable.

967* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` : chien de garde de blocage pour les sous-agents. Pendant que le chien de garde de flux est activé, la valeur par défaut est `CLAUDE_STREAM_IDLE_TIMEOUT_MS` plus 5 minutes, ce qui donne `600000` sauf si vous augmentez cette variable. Avec le chien de garde de flux désactivé, la valeur par défaut est `600000`. Avant v2.1.257, la valeur par défaut était toujours `600000`.969* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` : chien de garde de blocage pour les sous-agents. Pendant que le chien de garde de flux est activé, la valeur par défaut est `CLAUDE_STREAM_IDLE_TIMEOUT_MS` plus 5 minutes, ce qui donne `600000` sauf si vous augmentez cette variable. Avec le chien de garde de flux désactivé, la valeur par défaut est `600000`. Avant v2.1.257, la valeur par défaut était toujours `600000`.

968 970 

969 Le minuteur se réinitialise à chaque événement de flux. En cas de blocage, Claude Code abandonne le sous-agent et signale le blocage au parent. Pour un sous-agent en arrière-plan, il marque également la tâche comme échouée et attache tout résultat partiel.971 Le minuteur se réinitialise à chaque événement de flux. En cas de blocage, Claude Code abandonne le sous-agent et signale le blocage au parent. Pour un sous-agent en arrière-plan, il marque également la tâche comme échouée et joint tout résultat partiel.

970* `CLAUDE_ENABLE_STREAM_WATCHDOG` avec `CLAUDE_STREAM_IDLE_TIMEOUT_MS` : chien de garde de flux qui abandonne la requête quand les en-têtes sont arrivés mais le corps de la réponse cesse de faire du streaming. Le chien de garde est activé par défaut pour tous les fournisseurs ; définissez `CLAUDE_ENABLE_STREAM_WATCHDOG=0` pour le désactiver. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` par défaut à `300000` et est limité à ce minimum. Après l'abandon, [Les tentatives automatiques](/docs/fr/errors#automatic-retries) couvre ce que Claude Code fait, en fonction de la progression de la réponse.972* `CLAUDE_ENABLE_STREAM_WATCHDOG` avec `CLAUDE_STREAM_IDLE_TIMEOUT_MS` : chien de garde de flux qui abandonne la requête quand les en-têtes sont arrivés mais que le corps de la réponse cesse de diffuser. Le chien de garde est activé par défaut pour tous les fournisseurs ; définissez `CLAUDE_ENABLE_STREAM_WATCHDOG=0` pour le désactiver. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` par défaut à `300000` et est limité à ce minimum. Après l'abandon, [Tentatives automatiques](/docs/fr/errors#automatic-retries) couvre ce que Claude Code fait, en fonction de la progression de la réponse.

971 973 

972 Pendant que le chien de garde attend une réponse qu'une passerelle derrière `ANTHROPIC_BASE_URL` maintient ouverte avec des pings de maintien de connexion, un hôte qui définit `include_partial_messages` continue de recevoir des messages [`StreamEvent`](#streamevent) de `ping`. Lisez ces frames comme une vivacité plutôt que de chronométrer la session sur le silence. Avant v2.1.257, les frames s'arrêtaient 5 minutes après le dernier événement de flux réel.974 Pendant que le chien de garde attend une réponse qu'une passerelle derrière `ANTHROPIC_BASE_URL` maintient ouverte avec des pings de maintien de connexion, un hôte qui définit `include_partial_messages` continue de recevoir des messages [`StreamEvent`](#streamevent) de `ping`. Lisez ces frames comme une vivacité plutôt que de chronométrer la session sur le silence. Avant v2.1.257, les frames s'arrêtaient 5 minutes après le dernier événement de flux réel.

973 975 


975 `OutputFormat`977 `OutputFormat`

976</h3>978</h3>

977 979 

978Configuration pour la validation de sortie structurée. Passez ceci comme un `dict` au champ `output_format` sur `ClaudeAgentOptions` :980Configuration pour la validation de sortie structurée. Passez ceci en tant que `dict` au champ `output_format` sur `ClaudeAgentOptions` :

979 981 

980```python theme={null}982```python theme={null}

981# Expected dict shape for output_format983# Forme dict attendue pour output_format

982{984{

983 "type": "json_schema",985 "type": "json_schema",

984 "schema": {...}, # Your JSON Schema definition986 "schema": {...}, # Votre définition JSON Schema

985}987}

986```988```

987 989 

988| Champ | Requis | Description |990| Field | Required | Description |

989| :- | :- | :- |991| :- | :- | :- |

990| `type` | Oui | Doit être `"json_schema"` pour la validation JSON Schema |992| `type` | Yes | Doit être `"json_schema"` pour la validation JSON Schema |

991| `schema` | Oui | Définition JSON Schema pour la validation de sortie |993| `schema` | Yes | Définition JSON Schema pour la validation de sortie |

992 994 

993<h3 id="systempromptpreset">995<h3 id="systempromptpreset">

994 `SystemPromptPreset`996 `SystemPromptPreset`

995</h3>997</h3>

996 998 

997Configuration pour utiliser le preset de prompt système de Claude Code avec des ajouts optionnels.999Configuration pour utiliser le prompt système prédéfini de Claude Code avec des additions optionnelles.

998 1000 

999```python theme={null}1001```python theme={null}

1000class SystemPromptPreset(TypedDict):1002class SystemPromptPreset(TypedDict):


1005 snapshot: NotRequired[bool]1007 snapshot: NotRequired[bool]

1006```1008```

1007 1009 

1008| Champ | Requis | Description |1010| Field | Required | Description |

1009| :- | :- | :- |1011| :- | :- | :- |

1010| `type` | Oui | Doit être `"preset"` pour utiliser un preset de prompt système |1012| `type` | Yes | Doit être `"preset"` pour utiliser un prompt système prédéfini |

1011| `preset` | Oui | Doit être `"claude_code"` pour utiliser le prompt système de Claude Code |1013| `preset` | Yes | Doit être `"claude_code"` pour utiliser le prompt système de Claude Code |

1012| `append` | Non | Instructions supplémentaires à ajouter au preset de prompt système |1014| `append` | No | Instructions supplémentaires à ajouter au prompt système prédéfini |

1013| `exclude_dynamic_sections` | Non | Déplacez le contexte par session comme le répertoire de travail, le statut git et les chemins de mémoire du prompt système vers le premier message utilisateur. Améliore la réutilisation du cache de prompt entre les utilisateurs et les machines. Voir [Modifier les prompts système](/docs/fr/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |1015| `exclude_dynamic_sections` | No | Déplacer le contexte par session tel que le répertoire de travail, le drapeau du dépôt git, et les chemins de mémoire automatique du prompt système vers le premier message utilisateur. Améliore la réutilisation du cache de prompt entre les utilisateurs et les machines. Voir [Modifier les prompts système](/docs/fr/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |

1014| `snapshot` | Non | Définissez à `False` pour reconstruire le prompt système à chaque requête au lieu de [réutiliser le prompt que la session a enregistré à sa première requête](/docs/fr/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session). Nécessite `claude-agent-sdk` v0.2.153 ou ultérieur |1016| `snapshot` | No | Définissez à `False` pour reconstruire le prompt système à chaque requête au lieu de [réutiliser le prompt que la session a enregistré à sa première requête](/docs/fr/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session). Nécessite `claude-agent-sdk` v0.2.153 ou ultérieur |

1015 1017 

1016<h3 id="systempromptcustom">1018<h3 id="systempromptcustom">

1017 `SystemPromptCustom`1019 `SystemPromptCustom`

1018</h3>1020</h3>

1019 1021 

1020Un prompt système personnalisé sous forme d'objet, équivalent à passer une chaîne comme `system_prompt`, qui peut également définir `snapshot`. Nécessite `claude-agent-sdk` v0.2.153 ou ultérieur.1022Un prompt système personnalisé sous forme d'objet, équivalent à passer une chaîne en tant que `system_prompt`, qui peut également définir `snapshot`. Nécessite `claude-agent-sdk` v0.2.153 ou ultérieur.

1021 1023 

1022```python theme={null}1024```python theme={null}

1023class SystemPromptCustom(TypedDict):1025class SystemPromptCustom(TypedDict):


1026 snapshot: NotRequired[bool]1028 snapshot: NotRequired[bool]

1027```1029```

1028 1030 

1029| Champ | Requis | Description |1031| Field | Required | Description |

1030| :- | :- | :- |1032| :- | :- | :- |

1031| `type` | Oui | Doit être `"custom"` |1033| `type` | Yes | Doit être `"custom"` |

1032| `prompt` | Oui | Le texte du prompt système. Passé au CLI comme argument de ligne de commande, donc les [limites de longueur de ligne de commande](#systempromptfile) s'appliquent |1034| `prompt` | Yes | Le texte du prompt système. Transmis au CLI en tant qu'argument de ligne de commande, donc les [limites de longueur de ligne de commande](#systempromptfile) s'appliquent |

1033| `snapshot` | Non | Identique à [`SystemPromptPreset.snapshot`](#systempromptpreset), appliqué à `prompt` |1035| `snapshot` | No | Identique à [`SystemPromptPreset.snapshot`](#systempromptpreset), appliqué à `prompt` |

1034 1036 

1035<h3 id="systempromptfile">1037<h3 id="systempromptfile">

1036 `SystemPromptFile`1038 `SystemPromptFile`

1037</h3>1039</h3>

1038 1040 

1039Configuration pour charger un prompt système personnalisé à partir d'un fichier au lieu de le passer en tant que chaîne. Le SDK mappe ceci à l'indicateur CLI [`--system-prompt-file`](/docs/fr/cli-reference#system-prompt-flags). Utilisez la forme fichier quand le prompt est volumineux : le SDK passe un `system_prompt` chaîne sur l'argv du sous-processus CLI, qui est soumis aux limites de longueur de ligne de commande du système d'exploitation avant que le SDK n'envoie une requête API. Sur Linux, un seul argument plus long que environ 128 KB échoue au spawn du processus avec `Argument list too long`. Sur Windows, la ligne de commande entière est limitée à environ 32 KB, donc la forme chaîne échoue à un seuil inférieur.1041Configuration pour charger un prompt système personnalisé à partir d'un fichier au lieu de le passer en tant que chaîne. Le SDK mappe ceci au drapeau CLI [`--system-prompt-file`](/docs/fr/cli-reference#system-prompt-flags). Utilisez la forme fichier quand le prompt est volumineux : le SDK transmet un `system_prompt` chaîne sur l'argv du sous-processus CLI, qui est soumis aux limites de longueur de ligne de commande du système d'exploitation avant que le SDK n'envoie une requête API. Sur Linux, un seul argument plus long que environ 128 KB échoue au lancement du processus avec `Argument list too long`. Sur Windows, la ligne de commande entière est plafonnée à environ 32 KB, donc la forme chaîne échoue à un seuil inférieur.

1040 1042 

1041```python theme={null}1043```python theme={null}

1042class SystemPromptFile(TypedDict):1044class SystemPromptFile(TypedDict):


1044 path: str1046 path: str

1045```1047```

1046 1048 

1047| Champ | Requis | Description |1049| Field | Required | Description |

1048| :- | :- | :- |1050| :- | :- | :- |

1049| `type` | Oui | Doit être `"file"` pour charger le prompt depuis le disque |1051| `type` | Yes | Doit être `"file"` pour charger le prompt depuis le disque |

1050| `path` | Oui | Chemin vers un fichier contenant le prompt système |1052| `path` | Yes | Chemin vers un fichier contenant le prompt système |

1051 1053 

1052<h3 id="settingsource">1054<h3 id="settingsource">

1053 `SettingSource`1055 `SettingSource`

1054</h3>1056</h3>

1055 1057 

1056Contrôle quelles sources de configuration basées sur le système de fichiers le SDK charge les paramètres à partir de.1058Contrôle quelles sources de configuration basées sur le système de fichiers le SDK charge les paramètres.

1057 1059 

1058```python theme={null}1060```python theme={null}

1059SettingSource = Literal["user", "project", "local"]1061SettingSource = Literal["user", "project", "local"]

1060```1062```

1061 1063 

1062| Valeur | Description | Emplacement |1064| Value | Description | Location |

1063| :- | :- | :- |1065| :- | :- | :- |

1064| `"user"` | Paramètres utilisateur globaux | `~/.claude/settings.json` |1066| `"user"` | Paramètres utilisateur globaux | `~/.claude/settings.json` |

1065| `"project"` | Paramètres de projet partagés (contrôle de version) | `.claude/settings.json` |1067| `"project"` | Paramètres de projet partagés (contrôle de version) | `.claude/settings.json` |


1069 Comportement par défaut1071 Comportement par défaut

1070</h4>1072</h4>

1071 1073 

1072Quand `setting_sources` est omis ou `None` et `skills` n'est pas défini, `query()` charge les mêmes paramètres du système de fichiers que le CLI Claude Code : utilisateur, projet et local. Avec `skills` défini, la ligne [`setting_sources`](#claudeagentoptions) décrit la valeur par défaut actuelle. Seules les sources utilisateur et projet se chargent. Définissez `setting_sources` explicitement pour conserver les paramètres locaux. La politique gérée par le point de terminaison se charge indépendamment ; les paramètres gérés par le serveur sont récupérés quand la session s'authentifie avec une credential d'organisation sur une [configuration éligible](/docs/fr/server-managed-settings#platform-availability). Pour plus d'informations, voir [Ce que settingSources ne contrôle pas](/docs/fr/agent-sdk/claude-code-features#what-settingsources-does-not-control).1074Quand `setting_sources` est omis ou `None` et `skills` n'est pas défini, `query()` charge les mêmes paramètres du système de fichiers que le CLI Claude Code : utilisateur, projet et local. Avec `skills` défini, la ligne [`setting_sources`](#claudeagentoptions) décrit la valeur par défaut actuelle. La politique gérée par le point de terminaison est chargée dans tous les cas ; les paramètres gérés par le serveur sont récupérés quand la session s'authentifie avec une credential d'organisation sur une [configuration éligible](/docs/fr/server-managed-settings#platform-availability). Pour plus d'informations, voir [Ce que settingSources ne contrôle pas](/docs/fr/agent-sdk/claude-code-features#what-settingsources-does-not-control).

1073 1075 

1074<h4 id="why-use-setting_sources">1076<h4 id="why-use-setting_sources">

1075 Pourquoi utiliser setting\_sources1077 Pourquoi utiliser setting\_sources


1078**Désactiver les paramètres du système de fichiers :**1080**Désactiver les paramètres du système de fichiers :**

1079 1081 

1080```python theme={null}1082```python theme={null}

1081# Do not load user, project, or local settings from disk1083# Ne pas charger les paramètres utilisateur, projet ou locaux depuis le disque

1082import asyncio1084import asyncio

1083from claude_agent_sdk import query, ClaudeAgentOptions1085from claude_agent_sdk import query, ClaudeAgentOptions

1084 1086 


1097```1099```

1098 1100 

1099<Note>1101<Note>

1100 Dans le SDK Python 0.1.59 et antérieur, une liste vide était traitée de la même manière que l'omission de l'option, donc `setting_sources=[]` n'a pas désactivé les paramètres du système de fichiers. Mettez à niveau vers une version plus récente si vous avez besoin qu'une liste vide prenne effet. Le SDK TypeScript n'est pas affecté.1102 Dans Python SDK 0.1.59 et antérieur, une liste vide était traitée de la même manière que l'omission de l'option, donc `setting_sources=[]` ne désactivait pas les paramètres du système de fichiers. Mettez à niveau vers une version plus récente si vous avez besoin qu'une liste vide prenne effet. Le SDK TypeScript n'est pas affecté.

1101</Note>1103</Note>

1102 1104 

1103**Charger uniquement des sources de paramètres spécifiques :**1105**Charger uniquement des sources de paramètres spécifiques :**

1104 1106 

1105```python theme={null}1107```python theme={null}

1106# Load only project settings, ignore user and local1108# Charger uniquement les paramètres de projet, ignorer utilisateur et local

1107import asyncio1109import asyncio

1108from claude_agent_sdk import query, ClaudeAgentOptions1110from claude_agent_sdk import query, ClaudeAgentOptions

1109 1111 


1112 async for message in query(1114 async for message in query(

1113 prompt="Run CI checks",1115 prompt="Run CI checks",

1114 options=ClaudeAgentOptions(1116 options=ClaudeAgentOptions(

1115 setting_sources=["project"] # Only .claude/settings.json1117 setting_sources=["project"] # Uniquement .claude/settings.json

1116 ),1118 ),

1117 ):1119 ):

1118 print(message)1120 print(message)


1124**Applications SDK uniquement :**1126**Applications SDK uniquement :**

1125 1127 

1126```python theme={null}1128```python theme={null}

1127# Define everything programmatically.1129# Définir tout par programmation.

1128# Pass [] to opt out of filesystem setting sources.1130# Passez [] pour refuser les sources de paramètres du système de fichiers.

1129import asyncio1131import asyncio

1130from claude_agent_sdk import AgentDefinition, ClaudeAgentOptions, query1132from claude_agent_sdk import AgentDefinition, ClaudeAgentOptions, query

1131 1133 


1168 `AgentDefinition`1170 `AgentDefinition`

1169</h3>1171</h3>

1170 1172 

1171Configuration pour un sous-agent défini programmatiquement.1173Configuration pour un sous-agent défini par programmation.

1172 1174 

1173```python theme={null}1175```python theme={null}

1174@dataclass1176@dataclass


1188 permissionMode: PermissionMode | None = None1190 permissionMode: PermissionMode | None = None

1189```1191```

1190 1192 

1191| Champ | Requis | Description |1193| Field | Required | Description |

1192| :- | :- | :- |1194| :- | :- | :- |

1193| `description` | Oui | Description en langage naturel de quand utiliser cet agent |1195| `description` | Yes | Description en langage naturel de quand utiliser cet agent |

1194| `prompt` | Oui | Le prompt système de l'agent |1196| `prompt` | Yes | Le prompt système de l'agent |

1195| `tools` | Non | Tableau des noms d'outils autorisés. Si omis, hérite de tous les [outils disponibles pour les sous-agents](/docs/fr/sub-agents#available-tools) |1197| `tools` | No | Tableau de noms d'outils autorisés. S'il est omis, hérite de chaque [outil disponible pour les sous-agents](/docs/fr/sub-agents#available-tools) |

1196| `disallowedTools` | Non | Tableau des noms d'outils à supprimer de l'ensemble d'outils de l'agent. Les motifs au niveau du serveur MCP sont également acceptés : `mcp__server` ou `mcp__server__*` supprime chaque outil de ce serveur, et `mcp__*` supprime chaque outil MCP de n'importe quel serveur |1198| `disallowedTools` | No | Tableau de noms d'outils à supprimer de l'ensemble d'outils de l'agent. Les motifs au niveau du serveur MCP sont également acceptés : `mcp__server` ou `mcp__server__*` supprime chaque outil de ce serveur, et `mcp__*` supprime chaque outil MCP de n'importe quel serveur |

1197| `model` | Non | Remplacement de modèle pour cet agent. Accepte un alias tel que `"sonnet"`, `"opus"`, `"haiku"`, ou `"inherit"`, ou un ID de modèle complet. Quand vous l'omettez, Claude Code choisit le modèle dans l'[ordre de modèle des sous-agents](/docs/fr/sub-agents#choose-a-model) |1199| `model` | No | Remplacement de modèle pour cet agent. Accepte un alias tel que `"sonnet"`, `"opus"`, `"haiku"`, ou `"inherit"`, ou un ID de modèle complet. Quand vous l'omettez, Claude Code choisit le modèle dans l'[ordre de modèle des sous-agents](/docs/fr/sub-agents#choose-a-model) |

1198| `skills` | Non | Liste des noms de compétences à précharger dans le contexte de l'agent au démarrage. Les compétences non listées restent invocables via l'outil Skill |1200| `skills` | No | Liste de noms de compétences à précharger dans le contexte de l'agent au démarrage. Les compétences non listées restent invocables via l'outil Skill |

1199| `memory` | Non | Source de mémoire pour cet agent : `"user"`, `"project"`, ou `"local"` |1201| `memory` | No | Source de mémoire pour cet agent : `"user"`, `"project"`, ou `"local"` |

1200| `mcpServers` | Non | Serveurs MCP disponibles pour cet agent. Chaque entrée est un nom de serveur ou un dict `{name: config}` en ligne |1202| `mcpServers` | No | Serveurs MCP disponibles pour cet agent. Chaque entrée est un nom de serveur ou un dict `{name: config}` en ligne |

1201| `initialPrompt` | Non | Auto-soumis comme le premier tour utilisateur quand cet agent s'exécute comme l'agent du fil principal |1203| `initialPrompt` | No | Auto-soumis en tant que premier tour utilisateur quand cet agent s'exécute en tant qu'agent de thread principal |

1202| `maxTurns` | Non | Nombre maximum de tours agentiques avant que l'agent s'arrête |1204| `maxTurns` | No | Nombre maximum de tours d'agent avant que l'agent s'arrête |

1203| `background` | Non | Exécutez cet agent comme une tâche de fond non-bloquante quand invoqué |1205| `background` | No | Exécuter cet agent en tant que tâche en arrière-plan non bloquante quand invoqué |

1204| `effort` | Non | Niveau d'effort de raisonnement pour cet agent. Accepte un niveau nommé ou un entier. Voir [`EffortLevel`](#effortlevel) |1206| `effort` | No | Niveau d'effort de raisonnement pour cet agent. Accepte un niveau nommé ou un entier. Voir [`EffortLevel`](#effortlevel) |

1205| `permissionMode` | Non | Mode de permission pour l'exécution des outils dans cet agent. Les [règles d'héritage des sous-agents](/docs/fr/agent-sdk/permissions#available-modes) décident quand il s'applique. Voir [`PermissionMode`](#permissionmode) |1207| `permissionMode` | No | Mode de permission pour l'exécution des outils dans cet agent. Les [règles d'héritage des sous-agents](/docs/fr/agent-sdk/permissions#available-modes) décident quand il s'applique. Voir [`PermissionMode`](#permissionmode) |

1206 1208 

1207<Note>1209<Note>

1208 Les noms de champs `AgentDefinition` utilisent camelCase, tels que `disallowedTools`, `permissionMode`, et `maxTurns`. Ces noms correspondent directement au format de fil partagé avec le SDK TypeScript. Ceci diffère de `ClaudeAgentOptions`, qui utilise Python snake\_case pour les champs de niveau supérieur équivalents tels que `disallowed_tools` et `permission_mode`. Parce que `AgentDefinition` est une dataclass, passer un mot-clé snake\_case lève une `TypeError` au moment de la construction.1210 Les noms de champs `AgentDefinition` utilisent camelCase, tels que `disallowedTools`, `permissionMode`, et `maxTurns`. Ces noms correspondent directement au format de fil partagé avec le SDK TypeScript. Cela diffère de `ClaudeAgentOptions`, qui utilise Python snake\_case pour les champs de niveau supérieur équivalents tels que `disallowed_tools` et `permission_mode`. Parce que `AgentDefinition` est une dataclass, passer un mot-clé snake\_case lève une `TypeError` au moment de la construction.

1209</Note>1211</Note>

1210 1212 

1211<h3 id="permissionmode">1213<h3 id="permissionmode">


1216 1218 

1217```python theme={null}1219```python theme={null}

1218PermissionMode = Literal[1220PermissionMode = Literal[

1219 "default", # Standard permission behavior1221 "default", # Comportement de permission standard

1220 "acceptEdits", # Auto-accept file edits1222 "acceptEdits", # Auto-accepter les modifications de fichiers

1221 "plan", # Planning mode - explore without editing1223 "plan", # Mode planification - explorer sans éditer

1222 "dontAsk", # Deny anything not pre-approved instead of prompting1224 "dontAsk", # Refuser tout ce qui n'est pas pré-approuvé au lieu de demander

1223 "bypassPermissions", # Bypass permission checks; explicit ask rules still prompt (use with caution)1225 "bypassPermissions", # Contourner les vérifications de permission ; les règles d'ask explicites demandent toujours (utiliser avec prudence)

1224 "auto", # Model classifier approves or denies permission prompts1226 "auto", # Le classificateur de modèle approuve ou refuse les invites de permission

1225]1227]

1226```1228```

1227 1229 


1233 1235 

1234```python theme={null}1236```python theme={null}

1235EffortLevel = Literal[1237EffortLevel = Literal[

1236 "low", # Minimal thinking, fastest responses1238 "low", # Réflexion minimale, réponses les plus rapides

1237 "medium", # Moderate thinking1239 "medium", # Réflexion modérée

1238 "high", # Deep reasoning1240 "high", # Raisonnement profond

1239 "xhigh", # Extended reasoning; falls back to "high" on models that don't support it1241 "xhigh", # Raisonnement étendu ; revient à "high" sur les modèles qui ne le supportent pas

1240 "max", # Maximum effort1242 "max", # Effort maximum

1241]1243]

1242```1244```

1243 1245 


1245 `CanUseTool`1247 `CanUseTool`

1246</h3>1248</h3>

1247 1249 

1248Alias de type pour les fonctions de callback de permission d'outil.1250Alias de type pour les fonctions de rappel de permission d'outil.

1249 1251 

1250```python theme={null}1252```python theme={null}

1251CanUseTool = Callable[1253CanUseTool = Callable[


1253]1255]

1254```1256```

1255 1257 

1256Le callback reçoit :1258Le rappel reçoit :

1257 1259 

1258* `tool_name` : Nom de l'outil en cours d'appel1260* `tool_name` : Nom de l'outil appelé

1259* `input_data` : Les paramètres d'entrée de l'outil1261* `input_data` : Les paramètres d'entrée de l'outil

1260* `context` : Un `ToolPermissionContext` avec des informations supplémentaires1262* `context` : Un `ToolPermissionContext` avec des informations supplémentaires

1261 1263 

1262Retourne un `PermissionResult` (soit `PermissionResultAllow` soit `PermissionResultDeny`).1264Retourne un `PermissionResult` (soit `PermissionResultAllow` soit `PermissionResultDeny`).

1263 1265 

1264Le callback est le remplacement SDK pour le prompt de permission interactif : il est invoqué uniquement quand le [flux d'évaluation de permission](/docs/fr/agent-sdk/permissions#how-permissions-are-evaluated) aboutit à un prompt. Les appels d'outil déjà approuvés par une entrée `allowed_tools`, une règle d'autorisation des paramètres, ou le mode de permission, tel que `acceptEdits` ou `bypassPermissions`, ne l'invoquent jamais. Pour contrôler chaque appel d'outil, utilisez un [hook `PreToolUse`](/docs/fr/agent-sdk/hooks) à la place.1266Le rappel est le remplacement SDK pour l'invite de permission interactive : il est invoqué uniquement quand le [flux d'évaluation de permission](/docs/fr/agent-sdk/permissions#how-permissions-are-evaluated) aboutit à une invite. Les appels d'outil déjà approuvés par une entrée `allowed_tools`, une règle d'autorisation de paramètres, ou le mode de permission, tel que `acceptEdits` ou `bypassPermissions`, ne l'invoquent jamais. Pour contrôler chaque appel d'outil, utilisez un hook [`PreToolUse`](/docs/fr/agent-sdk/hooks) à la place.

1265 1267 

1266Une règle d'autorisation ne pré-approuve pas les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves) ; voir [Comment les permissions sont évaluées](/docs/fr/agent-sdk/permissions#how-permissions-are-evaluated) pour lesquelles les atteignent et ce qui se passe en mode `dontAsk` et `auto`.1268Une règle d'autorisation ne pré-approuve pas les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves) ; voir [Comment les permissions sont évaluées](/docs/fr/agent-sdk/permissions#how-permissions-are-evaluated) pour lesquelles d'entre elles atteignent le rappel et ce qui se passe en mode `dontAsk` et `auto`.

1267 1269 

1268<h3 id="toolpermissioncontext">1270<h3 id="toolpermissioncontext">

1269 `ToolPermissionContext`1271 `ToolPermissionContext`

1270</h3>1272</h3>

1271 1273 

1272Informations de contexte passées aux callbacks de permission d'outil.1274Informations de contexte transmises aux rappels de permission d'outil.

1273 1275 

1274```python theme={null}1276```python theme={null}

1275@dataclass1277@dataclass

1276class ToolPermissionContext:1278class ToolPermissionContext:

1277 signal: Any | None = None # Future: abort signal support1279 signal: Any | None = None # Futur : support du signal d'abandon

1278 suggestions: list[PermissionUpdate] = field(default_factory=list)1280 suggestions: list[PermissionUpdate] = field(default_factory=list)

1279 tool_use_id: str | None = None1281 tool_use_id: str | None = None

1280 agent_id: str | None = None1282 agent_id: str | None = None


1285 description: str | None = None1287 description: str | None = None

1286```1288```

1287 1289 

1288| Champ | Type | Description |1290| Field | Type | Description |

1289| :- | :- | :- |1291| :- | :- | :- |

1290| `signal` | `Any \| None` | Réservé pour le support futur du signal d'abandon |1292| `signal` | `Any \| None` | Réservé pour le support futur du signal d'abandon |

1291| `suggestions` | `list[PermissionUpdate]` | Suggestions de mise à jour de permission du CLI. Les prompts Bash incluent une suggestion avec la destination `localSettings`, donc la retourner dans `updated_permissions` écrit la règle dans `.claude/settings.local.json` et persiste entre les sessions. |1293| `suggestions` | `list[PermissionUpdate]` | Suggestions de mise à jour de permission du CLI. Les invites Bash incluent une suggestion avec la destination `localSettings`, donc retourner cela dans `updated_permissions` écrit la règle à `.claude/settings.local.json` et persiste entre les sessions. |

1292| `tool_use_id` | `str \| None` | Identifiant de l'appel d'outil spécifique pour lequel ce prompt est destiné. Toujours rempli quand livré à `can_use_tool` |1294| `tool_use_id` | `str \| None` | Identifiant de l'appel d'outil spécifique pour lequel cette invite est. Toujours rempli quand livré à `can_use_tool` |

1293| `agent_id` | `str \| None` | ID du sous-agent quand l'appel provient d'un sous-agent ; `None` pour l'agent principal |1295| `agent_id` | `str \| None` | ID du sous-agent quand l'appel provient d'un sous-agent ; `None` pour l'agent principal |

1294| `blocked_path` | `str \| None` | Chemin de fichier qui a déclenché la demande de permission, le cas échéant. Par exemple, quand une commande Bash essaie d'accéder à un chemin en dehors des répertoires autorisés |1296| `blocked_path` | `str \| None` | Chemin de fichier qui a déclenché la demande de permission, le cas échéant. Par exemple, quand une commande Bash essaie d'accéder à un chemin en dehors des répertoires autorisés |

1295| `decision_reason` | `str \| None` | Raison pour laquelle cette demande de permission a été déclenchée. Transférée depuis le `permissionDecisionReason` d'un hook PreToolUse quand le hook a retourné `"ask"` |1297| `decision_reason` | `str \| None` | Raison pour laquelle cette demande de permission a été déclenchée. Transmise d'un hook PreToolUse dont `permissionDecisionReason` quand le hook a retourné `"ask"` |

1296| `title` | `str \| None` | Phrase complète du prompt de permission, telle que `Claude wants to read foo.txt`. Utilisez comme texte du prompt principal quand présent |1298| `title` | `str \| None` | Phrase d'invite de permission complète, telle que `Claude wants to read foo.txt`. Utilisez comme texte d'invite principal quand présent |

1297| `display_name` | `str \| None` | Phrase nominale courte pour l'action de l'outil, telle que `Read file`, appropriée pour les étiquettes de bouton |1299| `display_name` | `str \| None` | Phrase nominale courte pour l'action d'outil, telle que `Read file`, appropriée pour les étiquettes de bouton |

1298| `description` | `str \| None` | Sous-titre lisible pour l'interface utilisateur de permission |1300| `description` | `str \| None` | Sous-titre lisible par l'homme pour l'interface utilisateur de permission |

1299 1301 

1300<h3 id="permissionresult">1302<h3 id="permissionresult">

1301 `PermissionResult`1303 `PermissionResult`

1302</h3>1304</h3>

1303 1305 

1304Type union pour les résultats de callback de permission.1306Type union pour les résultats de rappel de permission.

1305 1307 

1306```python theme={null}1308```python theme={null}

1307PermissionResult = PermissionResultAllow | PermissionResultDeny1309PermissionResult = PermissionResultAllow | PermissionResultDeny


1321 updated_permissions: list[PermissionUpdate] | None = None1323 updated_permissions: list[PermissionUpdate] | None = None

1322```1324```

1323 1325 

1324| Champ | Type | Par défaut | Description |1326| Field | Type | Default | Description |

1325| :- | :- | :- | :- |1327| :- | :- | :- | :- |

1326| `behavior` | `Literal["allow"]` | `"allow"` | Doit être « allow » |1328| `behavior` | `Literal["allow"]` | `"allow"` | Doit être « allow » |

1327| `updated_input` | `dict[str, Any] \| None` | `None` | Entrée modifiée à utiliser à la place de l'original |1329| `updated_input` | `dict[str, Any] \| None` | `None` | Entrée modifiée à utiliser à la place de l'original |


1341 interrupt: bool = False1343 interrupt: bool = False

1342```1344```

1343 1345 

1344| Champ | Type | Par défaut | Description |1346| Field | Type | Default | Description |

1345| :- | :- | :- | :- |1347| :- | :- | :- | :- |

1346| `behavior` | `Literal["deny"]` | `"deny"` | Doit être « deny » |1348| `behavior` | `Literal["deny"]` | `"deny"` | Doit être « deny » |

1347| `message` | `str` | `""` | Message expliquant pourquoi l'outil a été refusé |1349| `message` | `str` | `""` | Message expliquant pourquoi l'outil a été refusé |


1351 `PermissionUpdate`1353 `PermissionUpdate`

1352</h3>1354</h3>

1353 1355 

1354Configuration pour mettre à jour les permissions programmatiquement.1356Configuration pour mettre à jour les permissions par programmation.

1355 1357 

1356```python theme={null}1358```python theme={null}

1357@dataclass1359@dataclass


1373 ) = None1375 ) = None

1374```1376```

1375 1377 

1376| Champ | Type | Description |1378| Field | Type | Description |

1377| :- | :- | :- |1379| :- | :- | :- |

1378| `type` | `Literal[...]` | Le type d'opération de mise à jour de permission |1380| `type` | `Literal[...]` | Le type d'opération de mise à jour de permission |

1379| `rules` | `list[PermissionRuleValue] \| None` | Règles pour les opérations d'ajout/remplacement/suppression |1381| `rules` | `list[PermissionRuleValue] \| None` | Règles pour les opérations d'ajout/remplacement/suppression |


1399 `ToolsPreset`1401 `ToolsPreset`

1400</h3>1402</h3>

1401 1403 

1402Configuration des outils preset pour utiliser l'ensemble d'outils par défaut de Claude Code.1404Configuration des outils prédéfinis pour utiliser l'ensemble d'outils par défaut de Claude Code.

1403 1405 

1404```python theme={null}1406```python theme={null}

1405class ToolsPreset(TypedDict):1407class ToolsPreset(TypedDict):


1435ThinkingConfig = ThinkingConfigAdaptive | ThinkingConfigEnabled | ThinkingConfigDisabled1437ThinkingConfig = ThinkingConfigAdaptive | ThinkingConfigEnabled | ThinkingConfigDisabled

1436```1438```

1437 1439 

1438| Variante | Champs | Description |1440| Variant | Fields | Description |

1439| :- | :- | :- |1441| :- | :- | :- |

1440| `adaptive` | `type`, `display` | Claude décide de manière adaptative quand réfléchir |1442| `adaptive` | `type`, `display` | Claude décide de manière adaptative quand réfléchir |

1441| `enabled` | `type`, `budget_tokens`, `display` | Activez la réflexion avec un budget de tokens spécifique |1443| `enabled` | `type`, `budget_tokens`, `display` | Activer la réflexion avec un budget de tokens spécifique |

1442| `disabled` | `type` | Désactivez la réflexion |1444| `disabled` | `type` | Désactiver la réflexion |

1443 1445 

1444Le champ optionnel `display` contrôle si le texte de réflexion est retourné `"summarized"` ou `"omitted"`. Sur Claude Opus 4.7 et ultérieur, la valeur par défaut de l'API est `"omitted"`, donc définissez `"summarized"` pour recevoir le contenu de réflexion dans les sorties [`ThinkingBlock`](#thinkingblock). Claude Code n'envoie pas `display` à Amazon Bedrock ou à la plateforme Agent de Google Cloud, donc sur ces fournisseurs Opus 4.7 et ultérieur retournent des sorties `ThinkingBlock` vides même quand vous définissez `display` à `"summarized"`.1446Le champ `display` optionnel contrôle si le texte de réflexion est retourné `"summarized"` ou `"omitted"`. Sur Claude Opus 4.7 et ultérieur, la valeur par défaut de l'API est `"omitted"`, donc définissez `"summarized"` pour recevoir le contenu de réflexion dans les sorties [`ThinkingBlock`](#thinkingblock). Claude Code n'envoie pas `display` à Amazon Bedrock ou à la plateforme d'agent de Google Cloud, donc sur ces fournisseurs Opus 4.7 et ultérieur retournent des sorties `ThinkingBlock` vides même quand vous définissez `display` à `"summarized"`.

1445 1447 

1446Parce que ce sont des classes `TypedDict`, ce sont des dicts simples à l'exécution. Construisez-les soit comme des littéraux dict soit appelez la classe comme un constructeur ; les deux produisent un `dict`. Accédez aux champs avec `config["budget_tokens"]`, pas `config.budget_tokens` :1448Parce que ce sont des classes `TypedDict`, ce sont des dicts simples à l'exécution. Construisez-les soit comme des littéraux dict soit appelez la classe comme un constructeur ; les deux produisent un `dict`. Accédez aux champs avec `config["budget_tokens"]`, pas `config.budget_tokens` :

1447 1449 

1448```python theme={null}1450```python theme={null}

1449from claude_agent_sdk import ClaudeAgentOptions, ThinkingConfigEnabled1451from claude_agent_sdk import ClaudeAgentOptions, ThinkingConfigEnabled

1450 1452 

1451# Option 1: dict literal (recommended, no import needed)1453# Option 1 : littéral dict (recommandé, pas d'import nécessaire)

1452options = ClaudeAgentOptions(thinking={"type": "enabled", "budget_tokens": 20000})1454options = ClaudeAgentOptions(thinking={"type": "enabled", "budget_tokens": 20000})

1453 1455 

1454# Option 2: constructor-style (returns a plain dict)1456# Option 2 : style constructeur (retourne un dict simple)

1455config = ThinkingConfigEnabled(type="enabled", budget_tokens=20000)1457config = ThinkingConfigEnabled(type="enabled", budget_tokens=20000)

1456print(config["budget_tokens"]) # 200001458print(config["budget_tokens"]) # 20000

1457# config.budget_tokens would raise AttributeError1459# config.budget_tokens lèverait AttributeError

1458```1460```

1459 1461 

1460<h3 id="taskbudget">1462<h3 id="taskbudget">


1468 total: int1470 total: int

1469```1471```

1470 1472 

1471| Champ | Type | Description |1473| Field | Type | Description |

1472| :- | :- | :- |1474| :- | :- | :- |

1473| `total` | `int` | Budget de tokens total pour la tâche |1475| `total` | `int` | Budget de tokens total pour la tâche |

1474 1476 

1475Parce que c'est une `TypedDict`, passez-la comme un dict simple, tel que `ClaudeAgentOptions(task_budget={"total": 50000})`.1477Parce que c'est un `TypedDict`, passez-le comme un dict simple, tel que `ClaudeAgentOptions(task_budget={"total": 50000})`.

1476 1478 

1477<h3 id="sdkbeta">1479<h3 id="sdkbeta">

1478 `SdkBeta`1480 `SdkBeta`


1487Utilisez avec le champ `betas` dans `ClaudeAgentOptions` pour activer les fonctionnalités bêta.1489Utilisez avec le champ `betas` dans `ClaudeAgentOptions` pour activer les fonctionnalités bêta.

1488 1490 

1489<Warning>1491<Warning>

1490 La bêta `context-1m-2025-08-07` est retirée à partir du 30 avril 2026. Passer cet en-tête avec Claude Sonnet 4.5 ou Sonnet 4 n'a aucun effet, et les requêtes qui dépassent la fenêtre de contexte standard de 200 000 tokens retournent une erreur. Pour utiliser une fenêtre de contexte de 1 million de tokens, migrez vers [Claude Opus 5.5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.6, Claude Opus 4.7, ou Claude Opus 4.8](https://platform.claude.com/docs/en/about-claude/models/overview), qui incluent 1 million de contexte à prix standard sans en-tête bêta requis.1492 La bêta `context-1m-2025-08-07` est retirée à partir du 30 avril 2026. Passer cet en-tête avec Claude Sonnet 4.5 ou Sonnet 4 n'a aucun effet, et les requêtes qui dépassent la fenêtre de contexte standard de 200k tokens retournent une erreur. Pour utiliser une fenêtre de contexte de 1M tokens, migrez vers [Claude Opus 5.5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.6, Claude Opus 4.7, ou Claude Opus 4.8](https://platform.claude.com/docs/en/about-claude/models/overview), qui incluent 1M de contexte à tarification standard sans en-tête bêta requis.

1491</Warning>1493</Warning>

1492 1494 

1493<h3 id="mcpsdkserverconfig">1495<h3 id="mcpsdkserverconfig">


1553 `McpServerStatusConfig`1555 `McpServerStatusConfig`

1554</h3>1556</h3>

1555 1557 

1556La configuration d'un serveur MCP telle que rapportée par [`get_mcp_status()`](#methods). C'est l'union de toutes les variantes de transport [`McpServerConfig`](#mcpserverconfig) plus une variante de sortie uniquement `claudeai-proxy` pour les serveurs proxifiés via claude.ai.1558La configuration d'un serveur MCP telle que signalée par [`get_mcp_status()`](#methods). Ceci est l'union de toutes les variantes de transport [`McpServerConfig`](#mcpserverconfig) plus une variante de sortie uniquement `claudeai-proxy` pour les serveurs proxifiés via claude.ai.

1557 1559 

1558```python theme={null}1560```python theme={null}

1559McpServerStatusConfig = (1561McpServerStatusConfig = (


1565)1567)

1566```1568```

1567 1569 

1568`McpSdkServerConfigStatus` est la forme sérialisable de [`McpSdkServerConfig`](#mcpsdkserverconfig) avec seulement les champs `type` (`"sdk"`) et `name` (`str`) ; l'`instance` en processus est omise. `McpClaudeAIProxyServerConfig` a les champs `type` (`"claudeai-proxy"`), `url` (`str`), et `id` (`str`).1570`McpSdkServerConfigStatus` est la forme sérialisable de [`McpSdkServerConfig`](#mcpsdkserverconfig) avec uniquement les champs `type` (`"sdk"`) et `name` (`str`) ; l'`instance` en processus est omise. `McpClaudeAIProxyServerConfig` a les champs `type` (`"claudeai-proxy"`), `url` (`str`), et `id` (`str`).

1569 1571 

1570<h3 id="mcpstatusresponse">1572<h3 id="mcpstatusresponse">

1571 `McpStatusResponse`1573 `McpStatusResponse`


1595 tools: NotRequired[list[McpToolInfo]]1597 tools: NotRequired[list[McpToolInfo]]

1596```1598```

1597 1599 

1598| Champ | Type | Description |1600| Field | Type | Description |

1599| :- | :- | :- |1601| :- | :- | :- |

1600| `name` | `str` | Nom du serveur |1602| `name` | `str` | Nom du serveur |

1601| `status` | `str` | L'un de `"connected"`, `"failed"`, `"needs-auth"`, `"pending"`, ou `"disabled"` |1603| `status` | `str` | L'un de `"connected"`, `"failed"`, `"needs-auth"`, `"pending"`, ou `"disabled"` |

1602| `serverInfo` | `dict` (optionnel) | Nom et version du serveur (`{"name": str, "version": str}`) |1604| `serverInfo` | `dict` (optional) | Nom et version du serveur (`{"name": str, "version": str}`) |

1603| `error` | `str` (optionnel) | Message d'erreur si le serveur n'a pas pu se connecter |1605| `error` | `str` (optional) | Message d'erreur si le serveur n'a pas pu se connecter |

1604| `config` | [`McpServerStatusConfig`](#mcpserverstatusconfig) (optionnel) | Configuration du serveur. Même forme que [`McpServerConfig`](#mcpserverconfig) (stdio, SSE, HTTP, ou SDK), plus une variante `claudeai-proxy` pour les serveurs connectés via claude.ai |1606| `config` | [`McpServerStatusConfig`](#mcpserverstatusconfig) (optional) | Configuration du serveur. Même forme que [`McpServerConfig`](#mcpserverconfig) (stdio, SSE, HTTP, ou SDK), plus une variante `claudeai-proxy` pour les serveurs connectés via claude.ai |

1605| `scope` | `str` (optionnel) | Portée de la configuration |1607| `scope` | `str` (optional) | Portée de la configuration |

1606| `tools` | `list` (optionnel) | Outils fournis par ce serveur, chacun avec les champs `name`, `description`, et `annotations` |1608| `tools` | `list` (optional) | Outils fournis par ce serveur, chacun avec les champs `name`, `description`, et `annotations` |

1607 1609 

1608<h3 id="sdkpluginconfig">1610<h3 id="sdkpluginconfig">

1609 `SdkPluginConfig`1611 `SdkPluginConfig`


1617 path: str1619 path: str

1618```1620```

1619 1621 

1620| Champ | Type | Description |1622| Field | Type | Description |

1621| :- | :- | :- |1623| :- | :- | :- |

1622| `type` | `Literal["local"]` | Doit être `"local"` (seuls les plugins locaux sont actuellement supportés) |1624| `type` | `Literal["local"]` | Doit être `"local"` (seuls les plugins locaux sont actuellement supportés) |

1623| `path` | `str` | Chemin absolu ou relatif vers le répertoire du plugin |1625| `path` | `str` | Chemin absolu ou relatif vers le répertoire du plugin |


3791<Warning>3793<Warning>

3792 Les commandes s'exécutant avec `dangerouslyDisableSandbox: True` ont un accès complet au système. Assurez-vous que votre gestionnaire `can_use_tool` valide ces requêtes avec soin.3794 Les commandes s'exécutant avec `dangerouslyDisableSandbox: True` ont un accès complet au système. Assurez-vous que votre gestionnaire `can_use_tool` valide ces requêtes avec soin.

3793 3795 

3794 Si `permission_mode` est défini sur `bypassPermissions` et `allow_unsandboxed_commands` est activé, le modèle peut exécuter de manière autonome des commandes en dehors du sandbox sans aucun prompt d'approbation, à part les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves). Cette combinaison permet effectivement au modèle d'échapper à l'isolation du sandbox silencieusement.3796 Si `permission_mode` est défini sur `bypassPermissions` et `allowUnsandboxedCommands` est activé, le modèle peut exécuter de manière autonome des commandes en dehors du sandbox sans aucun prompt d'approbation, à part les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves). Cette combinaison permet effectivement au modèle d'échapper à l'isolation du sandbox silencieusement.

3795</Warning>3797</Warning>

3796 3798 

3797<h2 id="see-also">3799<h2 id="see-also">

Details

330 Limitations connues330 Limitations connues

331</h2>331</h2>

332 332 

333* **Sortie structurée** : le résultat JSON n'apparaît que dans le `ResultMessage.structured_output` final, pas comme des deltas de diffusion. Consultez [les sorties structurées](/docs/fr/agent-sdk/structured-outputs) pour plus de détails.333* **Sortie structurée** : avec les messages partiels activés, le JSON est diffusé en tant que chunks `input_json_delta` non validés d'un appel d'outil, et seul le résultat validé atteint le `ResultMessage.structured_output` final. Consultez [les sorties structurées](/docs/fr/agent-sdk/structured-outputs) pour plus de détails.

334 334 

335<h2 id="next-steps">335<h2 id="next-steps">

336 Étapes suivantes336 Étapes suivantes

Details

162 structured\_output est None mais le résultat dit succès162 structured\_output est None mais le résultat dit succès

163</h3>163</h3>

164 164 

165Un message de résultat peut se terminer par `subtype: "success"` tandis que `structured_output` est `None` en Python ou `undefined` en TypeScript. L'exécution se termine, mais aucune sortie validée n'existe. Une façon de rencontrer cela est un schéma qu'aucune sortie ne peut satisfaire, par exemple des contraintes de longueur conflictuelles. L'exécution se termine sans erreur de validation, et le seul signal est le `structured_output` manquant.165Un message de résultat peut se terminer par `subtype: "success"` tandis que `structured_output` est `None` en Python ou `undefined` en TypeScript. L'exécution se termine, mais aucune sortie validée n'existe. Une façon de rencontrer cela est un schéma qu'aucune sortie ne peut satisfaire, par exemple des contraintes de longueur conflictuelles.

166 166 

167Traitez ce résultat comme un échec dans le code d'application. Vérifiez à la fois que `subtype` est `success` et que `structured_output` est présent avant de l'utiliser. La section [Gestion des erreurs](/docs/fr/agent-sdk/structured-outputs#error-handling) montre ce modèle pour les deux SDK.167Traitez ce résultat comme un échec dans le code d'application. Vérifiez à la fois que `subtype` est `success` et que `structured_output` est présent avant de l'utiliser. La section [Gestion des erreurs](/docs/fr/agent-sdk/structured-outputs#error-handling) montre ce modèle pour les deux SDK.

168 168 

Details

54* Pour la compilation croisée, installez le package de plateforme non correspondant, par exemple `npm install @anthropic-ai/claude-agent-sdk-linux-x64 --force`.54* Pour la compilation croisée, installez le package de plateforme non correspondant, par exemple `npm install @anthropic-ai/claude-agent-sdk-linux-x64 --force`.

55* Sur Windows, le sous-chemin binaire est `claude.exe`, par exemple `@anthropic-ai/claude-agent-sdk-win32-x64/claude.exe`.55* Sur Windows, le sous-chemin binaire est `claude.exe`, par exemple `@anthropic-ai/claude-agent-sdk-win32-x64/claude.exe`.

56 56 

57<h3 id="import-the-/core-entry-when-you-bundle-the-agent-sdk">

58 Importer l'entrée `/core` lors du regroupement du SDK Agent

59</h3>

60 

61Si votre application regroupe le SDK Agent avec ses propres dépendances, importez depuis `@anthropic-ai/claude-agent-sdk/core` au lieu de la racine du package. L'entrée `/core` nécessite le SDK Agent TypeScript v0.3.282 ou ultérieur, et ses types nécessitent TypeScript 5.0 ou ultérieur.

62 

63L'entrée `/core` exporte les mêmes `query()`, `startup()`, `tool()`, `createSdkMcpServer()`, et `resolveSettings()` que l'entrée racine, ainsi que les fonctions qui renomment, balisent et suppriment les sessions, `AbortError`, les constantes d'exécution, et tous les types. Elle n'ajoute aucun nom qui lui soit propre. Pour garder le code que votre application charge petit, `/core` omet certaines exportations racine, y compris `prewarm()`, la classe `InMemorySessionStore`, et les assistants qui listent, lisent, bifurquent, importent et résument les sessions. Si vous en avez besoin, utilisez l'entrée racine à la place.

64 

65L'entrée racine intègre ses propres copies de `zod` et `@modelcontextprotocol/sdk`. L'entrée `/core` les importe depuis votre `node_modules` aux plages que les `peerDependencies` du SDK Agent déclarent, donc un regroupement qui les inclut déjà ne porte pas une deuxième copie. Importez depuis l'entrée racine ou `/core` dans un processus donné, pas les deux : ce sont des regroupements séparés, et charger les deux vous donne deux copies des classes et de l'état du SDK Agent.

66 

57<h2 id="functions">67<h2 id="functions">

58 Fonctions68 Fonctions

59</h2>69</h2>


93 `startup()`103 `startup()`

94</h3>104</h3>

95 105 

96Préconfigure le sous-processus CLI en le générant et en complétant la poignée de main d'initialisation avant qu'une invite soit disponible. Le handle [`WarmQuery`](#warmquery) retourné accepte une invite plus tard et l'écrit dans un processus déjà prêt, de sorte que le premier appel `query()` se résout sans payer le coût de génération et d'initialisation du sous-processus en ligne.106Préconfigure le sous-processus CLI en le générant et en complétant la poignée de main d'initialisation avant qu'une invite soit disponible. Le handle [`WarmQuery`](#warmquery) retourné accepte une invite plus tard et l'écrit dans un processus déjà prêt, de sorte que le premier appel `query()` se résout sans payer le coût de génération et d'initialisation du sous-processus en ligne. Si vous ne connaissez pas encore le répertoire de travail de la session, utilisez [`prewarm()`](#prewarm) à la place.

97 107 

98```typescript theme={null}108```typescript theme={null}

99function startup(params?: {109function startup(params?: {


135}145}

136```146```

137 147 

148<h3 id="prewarm">

149 `prewarm()`

150</h3>

151 

152*Alpha.* Démarre un processus Claude Code en tant que spare avant de savoir quelle session il servira, de sorte que vous puissiez le lier à une session plus tard avec [`claim()`](#spareprocess). Utilisez-le dans une application qui démarre avant que l'utilisateur ne choisisse un dossier. Nécessite TypeScript Agent SDK v0.3.282 ou ultérieur.

153 

154`prewarm()` complète la même poignée de main d'initialisation que [`startup()`](#startup), avec le processus en attente dans `options.cwd` quand vous le définissez et sinon dans un répertoire temporaire privé sous votre répertoire de configuration Claude Code. Le répertoire de travail de la session, ses hooks `SessionStart`, ses serveurs MCP stdio, et son contexte CLAUDE.md et git attendent la réclamation. Un spare occupe environ 230 à 260 Mo de mémoire en attente. Si votre [`spawnClaudeCodeProcess`](#options) exécute Claude Code sur une autre machine ou dans un conteneur, définissez `options.cwd` sur un répertoire qui existe là-bas pour que le spare attende.

155 

156```typescript theme={null}

157function prewarm(params?: {

158 options?: Options;

159 initializeTimeoutMs?: number;

160}): Promise<SpareProcess>;

161```

162 

163`options` et `initializeTimeoutMs` signifient la même chose que pour `startup()`, sauf que `options.cwd` définit uniquement le répertoire dans lequel le spare attend. La promesse se résout avec un [`SpareProcess`](#spareprocess) une fois que le processus a complété sa poignée de main d'initialisation. `prewarm()` lève une exception si `options` définit `resume`, `continue`, ou `forkSession`, car un spare n'a pas encore de session. Tout ce qu'une réclamation ne peut pas définir, comme `mcpServers`, `hooks`, `canUseTool`, `settingSources`, `systemPrompt`, et `plugins`, est fixé pour la durée de vie du spare, donc gardez un spare par ensemble distinct de ces options et préchauffez à nouveau quand ils changent.

164 

165<h4 id="example-2">

166 Exemple

167</h4>

168 

169Préchauffez au démarrage de l'application, puis réclamez le spare quand l'utilisateur démarre une session :

170 

171```typescript theme={null}

172import { prewarm } from "@anthropic-ai/claude-agent-sdk";

173 

174// Au démarrage de l'application, avant que le dossier de la session soit connu

175const spare = await prewarm({ options: { maxTurns: 3 } });

176 

177// Plus tard, quand l'utilisateur démarre une session dans un dossier

178const claimedQuery = spare.claim({

179 prompt: "What files are here?",

180 options: { cwd: "/path/to/project" },

181});

182 

183spare.claimed.catch((error: Error) => {

184 // À moins que le message commence par « option_not_applied », l'invite n'a pas été exécutée :

185 // démarrez cette session avec query() à la place

186 console.error("Claim failed:", error.message);

187});

188 

189for await (const message of claimedQuery) {

190 console.log(message);

191}

192```

193 

138<h3 id="tool">194<h3 id="tool">

139 `tool()`195 `tool()`

140</h3>196</h3>


259| `tag` | `string \| undefined` | Étiquette de session définie par l'utilisateur (voir [`tagSession()`](#tagsession)) |315| `tag` | `string \| undefined` | Étiquette de session définie par l'utilisateur (voir [`tagSession()`](#tagsession)) |

260| `createdAt` | `number \| undefined` | Heure de création en millisecondes depuis l'époque, à partir de l'horodatage de la première entrée |316| `createdAt` | `number \| undefined` | Heure de création en millisecondes depuis l'époque, à partir de l'horodatage de la première entrée |

261 317 

262<h4 id="example-2">318<h4 id="example-3">

263 Exemple319 Exemple

264</h4>320</h4>

265 321 


312| `parent_tool_use_id` | `string \| null` | Pour les messages de sous-agent, le `tool_use_id` de l'appel d'outil `Agent` ou `Skill` qui l'a généré. `null` pour les messages de session principale et les sessions plus anciennes |368| `parent_tool_use_id` | `string \| null` | Pour les messages de sous-agent, le `tool_use_id` de l'appel d'outil `Agent` ou `Skill` qui l'a généré. `null` pour les messages de session principale et les sessions plus anciennes |

313| `parent_agent_id` | `string \| null` | Pour les messages d'un [sous-agent imbriqué](/docs/fr/sub-agents#let-subagents-spawn-their-own-subagents), le `agentId` du sous-agent qui l'a généré. `null` pour les messages de session principale, les messages des sous-agents de niveau supérieur et les sessions plus anciennes. Nécessite Claude Code v2.1.202 ou ultérieur |369| `parent_agent_id` | `string \| null` | Pour les messages d'un [sous-agent imbriqué](/docs/fr/sub-agents#let-subagents-spawn-their-own-subagents), le `agentId` du sous-agent qui l'a généré. `null` pour les messages de session principale, les messages des sous-agents de niveau supérieur et les sessions plus anciennes. Nécessite Claude Code v2.1.202 ou ultérieur |

314 370 

315<h4 id="example-3">371<h4 id="example-4">

316 Exemple372 Exemple

317</h4>373</h4>

318 374 


452| `provenance` | `Partial<Record<keyof Settings, ProvenanceEntry>>` | Pour chaque clé de niveau supérieur dans `effective`, quelle source a fourni la valeur |508| `provenance` | `Partial<Record<keyof Settings, ProvenanceEntry>>` | Pour chaque clé de niveau supérieur dans `effective`, quelle source a fourni la valeur |

453| `sources` | `Array<{ source, settings, path?, policyOrigin? }>` | Paramètres bruts par source, ordonnés de la plus basse à la plus haute précédence |509| `sources` | `Array<{ source, settings, path?, policyOrigin? }>` | Paramètres bruts par source, ordonnés de la plus basse à la plus haute précédence |

454 510 

455<h4 id="example-4">511<h4 id="example-5">

456 Exemple512 Exemple

457</h4>513</h4>

458 514 


547| `toolAliases` | `Record<string, string>` | `undefined` | Mapper les noms d'outils intégrés aux noms d'outils MCP pour que Claude appelle votre implémentation MCP à la place de l'intégrée. Par exemple, `{ Bash: 'mcp__workspace__bash' }` |603| `toolAliases` | `Record<string, string>` | `undefined` | Mapper les noms d'outils intégrés aux noms d'outils MCP pour que Claude appelle votre implémentation MCP à la place de l'intégrée. Par exemple, `{ Bash: 'mcp__workspace__bash' }` |

548| `toolConfig` | [`ToolConfig`](#toolconfig) | `undefined` | Configuration pour le comportement des outils intégrés. Voir [`ToolConfig`](#toolconfig) pour les détails |604| `toolConfig` | [`ToolConfig`](#toolconfig) | `undefined` | Configuration pour le comportement des outils intégrés. Voir [`ToolConfig`](#toolconfig) pour les détails |

549| `tools` | `string[] \| { type: 'preset'; preset: 'claude_code' }` | `undefined` | Configuration des outils. Passez un tableau de noms d'outils ou utilisez le prédéfini pour obtenir les outils par défaut de Claude Code |605| `tools` | `string[] \| { type: 'preset'; preset: 'claude_code' }` | `undefined` | Configuration des outils. Passez un tableau de noms d'outils ou utilisez le prédéfini pour obtenir les outils par défaut de Claude Code |

606| `verbatimPrompts` | `boolean` | `false` | Livrer chaque invite telle qu'écrite. Le SDK envoie chaque message utilisateur avec `client_composed: true`. Voir [`client_composed`](#sdkusermessage) pour ce que Claude Code ignore sur ces messages. Utilisez cette option quand votre texte d'invite inclut du contenu que l'utilisateur final n'a pas tapé. Pour un contrôle par tour, laissez-le désactivé et définissez `client_composed` sur les messages diffusés individuels à la place. Nécessite TypeScript Agent SDK v0.3.280 ou ultérieur et Claude Code v2.1.248 ou ultérieur ; la version de Claude Code groupée avec ces versions SDK satisfait l'exigence de version Claude Code |

550 607 

551<h4 id="handle-slow-or-stalled-api-responses">608<h4 id="handle-slow-or-stalled-api-responses">

552 Gérer les réponses API lentes ou bloquées609 Gérer les réponses API lentes ou bloquées


617 path: string,674 path: string,

618 options?: { maxBytes?: number; encoding?: 'utf-8' | 'base64' }675 options?: { maxBytes?: number; encoding?: 'utf-8' | 'base64' }

619 ): Promise<SDKControlReadFileResponse | null>;676 ): Promise<SDKControlReadFileResponse | null>;

677 reloadPlugins(options?: {

678 holdOnCacheImpact?: boolean;

679 }): Promise<SDKControlReloadPluginsResponse>;

620 reloadSkills(): Promise<SDKControlReloadSkillsResponse>;680 reloadSkills(): Promise<SDKControlReloadSkillsResponse>;

681 reloadOutputStyles(): Promise<SDKControlReloadOutputStylesResponse>;

621 accountInfo(): Promise<AccountInfo>;682 accountInfo(): Promise<AccountInfo>;

622 reconnectMcpServer(serverName: string): Promise<void>;683 reconnectMcpServer(serverName: string): Promise<void>;

623 toggleMcpServer(serverName: string, enabled: boolean): Promise<void>;684 toggleMcpServer(serverName: string, enabled: boolean): Promise<void>;


650| `mcpServerStatus()` | Retourne l'état des serveurs MCP connectés en tant que [`McpServerStatus`](#mcpserverstatus)`[]` |711| `mcpServerStatus()` | Retourne l'état des serveurs MCP connectés en tant que [`McpServerStatus`](#mcpserverstatus)`[]` |

651| `getContextUsage(opts?)` | Retourne une [`SDKControlGetContextUsageResponse`](#sdkcontrolgetcontextusageresponse) ventilant l'utilisation de la fenêtre de contexte de la session par catégorie, compétence et outil. Avec la valeur par défaut `detail`, c'est les mêmes données que `/context` affiche dans une session interactive. L'[option `detail`](#sdkcontrolgetcontextusageresponse) nécessite Agent SDK v0.3.257 ou ultérieur |712| `getContextUsage(opts?)` | Retourne une [`SDKControlGetContextUsageResponse`](#sdkcontrolgetcontextusageresponse) ventilant l'utilisation de la fenêtre de contexte de la session par catégorie, compétence et outil. Avec la valeur par défaut `detail`, c'est les mêmes données que `/context` affiche dans une session interactive. L'[option `detail`](#sdkcontrolgetcontextusageresponse) nécessite Agent SDK v0.3.257 ou ultérieur |

652| `readFile(path, options?)` | Lit un fichier du système de fichiers de la session. Claude Code résout le chemin par rapport à `cwd` ; [Ce que `readFile()` peut lire](#what-readfile-can-read) liste les fichiers qu'il sert. Passez `{ maxBytes }` pour modifier le plafond de lecture (par défaut 1 Mo, plafond 10 Mo) et `{ encoding: 'base64' }` pour les fichiers binaires tels que les images. Se résout avec une [`SDKControlReadFileResponse`](#sdkcontrolreadfileresponse), ou `null` sur refus de permission, un fichier manquant, ou une erreur de transport. Nécessite TypeScript SDK v0.2.121 ou ultérieur |713| `readFile(path, options?)` | Lit un fichier du système de fichiers de la session. Claude Code résout le chemin par rapport à `cwd` ; [Ce que `readFile()` peut lire](#what-readfile-can-read) liste les fichiers qu'il sert. Passez `{ maxBytes }` pour modifier le plafond de lecture (par défaut 1 Mo, plafond 10 Mo) et `{ encoding: 'base64' }` pour les fichiers binaires tels que les images. Se résout avec une [`SDKControlReadFileResponse`](#sdkcontrolreadfileresponse), ou `null` sur refus de permission, un fichier manquant, ou une erreur de transport. Nécessite TypeScript SDK v0.2.121 ou ultérieur |

714| `reloadPlugins(options?)` | Recharge les plugins à partir du disque, donc les plugins que vous installez ou modifiez en milieu de session atteignent la session en cours d'exécution. Se résout avec une [`SDKControlReloadPluginsResponse`](#sdkcontrolreloadpluginsresponse) listant les commandes, sous-agents, plugins et état du serveur MCP de la session. Nécessite Agent SDK v0.2.85 ou ultérieur. L'[option `holdOnCacheImpact`](#sdkcontrolreloadpluginsresponse) nécessite Agent SDK v0.3.268 ou ultérieur |

653| `reloadSkills()` | Recharge les compétences à partir du disque, donc les compétences que vous ajoutez ou modifiez en milieu de session deviennent disponibles pour la session en cours d'exécution. Se résout avec une [`SDKControlReloadSkillsResponse`](#sdkcontrolreloadskillsresponse) listant les compétences disponibles après le rechargement. Nécessite Agent SDK v0.3.163 ou ultérieur |715| `reloadSkills()` | Recharge les compétences à partir du disque, donc les compétences que vous ajoutez ou modifiez en milieu de session deviennent disponibles pour la session en cours d'exécution. Se résout avec une [`SDKControlReloadSkillsResponse`](#sdkcontrolreloadskillsresponse) listant les compétences disponibles après le rechargement. Nécessite Agent SDK v0.3.163 ou ultérieur |

716| `reloadOutputStyles()` | Relit les [styles de sortie](/docs/fr/output-styles) à partir du disque, donc un fichier de style que vous ajoutez ou modifiez en milieu de session devient disponible pour la session en cours d'exécution. Se résout avec une [`SDKControlReloadOutputStylesResponse`](#sdkcontrolreloadoutputstylesresponse) listant les noms de style disponibles après le rechargement. Nécessite Agent SDK v0.3.261 ou ultérieur |

654| `accountInfo()` | Retourne les informations de compte |717| `accountInfo()` | Retourne les informations de compte |

655| `reconnectMcpServer(serverName)` | Reconnecter un serveur MCP par nom. Si le nom correspond également à une entrée dans un fichier de paramètres tel que `.mcp.json` ou `~/.claude.json`, Claude Code reconnecte le serveur que vous avez configuré via [`mcpServers`](#options) ou `setMcpServers()`, pas l'entrée du fichier de paramètres. Cet ordre de résolution nécessite Claude Code v2.1.257 ou ultérieur |718| `reconnectMcpServer(serverName)` | Reconnecter un serveur MCP par nom. Si le nom correspond également à une entrée dans un fichier de paramètres tel que `.mcp.json` ou `~/.claude.json`, Claude Code reconnecte le serveur que vous avez configuré via [`mcpServers`](#options) ou `setMcpServers()`, pas l'entrée du fichier de paramètres. Cet ordre de résolution nécessite Claude Code v2.1.257 ou ultérieur |

656| `toggleMcpServer(serverName, enabled)` | Activer ou désactiver un serveur MCP par nom, avec la même résolution de nom que `reconnectMcpServer()`. La désactivation déconnecte le serveur |719| `toggleMcpServer(serverName, enabled)` | Activer ou désactiver un serveur MCP par nom, avec la même résolution de nom que `reconnectMcpServer()`. La désactivation déconnecte le serveur |


672* **Appliquées pendant le tour actuel** : `model`. Si vous basculez `model` tandis que Claude travaille sur un tour, la réponse que Claude génère déjà se termine sur l'ancien modèle, et le reste du tour, commençant par le prochain appel que Claude Code fait au modèle, utilise le nouveau. Les sous-agents conservent leur propre modèle. Avant v2.1.212, un basculement en milieu de tour attendait le tour suivant.735* **Appliquées pendant le tour actuel** : `model`. Si vous basculez `model` tandis que Claude travaille sur un tour, la réponse que Claude génère déjà se termine sur l'ancien modèle, et le reste du tour, commençant par le prochain appel que Claude Code fait au modèle, utilise le nouveau. Les sous-agents conservent leur propre modèle. Avant v2.1.212, un basculement en milieu de tour attendait le tour suivant.

673* **Aucun effet en milieu de session** : les options d'invite système. Celles-ci sont résolues une fois au démarrage, donc la session en cours d'exécution conserve la valeur d'origine même si l'appel réussit. Pour les modifier, démarrez une nouvelle session.736* **Aucun effet en milieu de session** : les options d'invite système. Celles-ci sont résolues une fois au démarrage, donc la session en cours d'exécution conserve la valeur d'origine même si l'appel réussit. Pour les modifier, démarrez une nouvelle session.

674 737 

675`effortLevel` accepte un nom de [niveau d'effort](/docs/fr/model-config#adjust-effort-level). Il accepte également `"ultracode"`, qui exécute la session au niveau d'effort `xhigh` et active [ultracode](/docs/fr/workflows#let-claude-decide-with-ultracode). `applyFlagSettings()` déclare `effortLevel` sans cette valeur, donc passez l'équivalent `{ ultracode: true }` en TypeScript. La valeur `ultracode` nécessite Claude Code v2.1.203 ou ultérieur et n'est acceptée que par `applyFlagSettings()`, pas par la clé `effortLevel` dans un fichier de paramètres.738`effortLevel` accepte un nom de [niveau d'effort](/docs/fr/model-config#adjust-effort-level). Il accepte également `"ultracode"`, qui exécute la session au niveau d'effort `xhigh` et active [ultracode](/docs/fr/workflows#let-claude-decide-with-ultracode). `applyFlagSettings()` déclare `effortLevel` sans cette valeur, donc en TypeScript passez `{ ultracode: true, effortLevel: "xhigh" }` pour le même résultat, ou la clé [`ultracode`](/docs/fr/settings-reference#ultracode) seule pour activer ultracode au niveau d'effort actuel de la session. La valeur `ultracode` nécessite Claude Code v2.1.203 ou ultérieur et n'est acceptée que par `applyFlagSettings()`, pas par la clé `effortLevel` dans un fichier de paramètres. Avant v2.1.284, la clé `ultracode` seule définissait également le niveau à `xhigh`.

676 739 

677Les valeurs sont écrites dans la couche de paramètres d'indicateur, la même couche que l'option `settings` en ligne de `query()` remplit au démarrage. C'est le même niveau que la [section de précédence sur la page](#settings-precedence) appelle les options programmatiques.740Les valeurs sont écrites dans la couche de paramètres d'indicateur, la même couche que l'option `settings` en ligne de `query()` remplit au démarrage. C'est le même niveau que la [section de précédence sur la page](#settings-precedence) appelle les options programmatiques.

678 741 


741 804 

742`WarmQuery` implémente `AsyncDisposable`, il peut donc être utilisé avec `await using` pour le nettoyage automatique.805`WarmQuery` implémente `AsyncDisposable`, il peut donc être utilisé avec `await using` pour le nettoyage automatique.

743 806 

807<h3 id="spareprocess">

808 `SpareProcess`

809</h3>

810 

811*Alpha.* Handle retourné par [`prewarm()`](#prewarm) : un processus Claude Code démarré qui n'est pas encore lié à une session et peut être revendiqué une fois. Nécessite TypeScript Agent SDK v0.3.282 ou ultérieur.

812 

813```typescript theme={null}

814interface SpareProcess extends AsyncDisposable {

815 claim(params: {

816 prompt: string | AsyncIterable<SDKUserMessage>;

817 options: ClaimOptions;

818 }): Query;

819 readonly claimed: Promise<{ cwd: string; sessionId: string; parkedMs?: number; sdkMcpSettled: boolean }>;

820 readonly exited: Promise<void>;

821 close(): void;

822}

823```

824 

825<h4 id="members">

826 Membres

827</h4>

828 

829| Membre | Description |

830| :- | :- |

831| `claim({ prompt, options })` | Lier le spare à une session dans `options.cwd` et envoyer son premier message. Retourne une [`Query`](#query-object) de manière synchrone, comme `query()` le fait. Ne peut être appelé qu'une fois |

832| `claimed` | Se résout avec le répertoire de travail et l'ID de la session une fois que Claude Code accepte la revendication. Rejette quand Claude Code refuse la revendication, quand le processus s'est arrêté ou a été fermé en premier, et, avec un message qui commence par `option_not_applied`, quand la session s'exécute sans le `model` ou `maxThinkingTokens` que vous avez demandés |

833| `exited` | Se règle quand le processus s'arrête, revendiqué ou non. Remplacez un spare qui s'arrête avant que vous le revendiquez |

834| `close()` | Terminer le processus. Avant une revendication, cela abandonne le spare et rejette `claimed` |

835 

836`options.cwd` est requis. Une revendication peut également définir `additionalDirectories`, `model`, `permissionMode`, `maxThinkingTokens`, une superposition de paramètres d'indicateur dans `settings`, `appendSystemPrompt`, `title`, `agents`, et des tokens par session dans `env`.

837 

838Claude Code peut refuser une revendication, par exemple pour un dossier qui n'existe pas ou dont les paramètres du projet définissent `env`, `agent`, ou `model`. Quand `claimed` rejette avec un message qui commence par `option_not_applied`, la session s'exécute sans le `model` ou `maxThinkingTokens` que vous avez demandés. Après tout autre rejet, votre invite n'a pas s'exécuté, donc démarrez la session avec `query()` à la place.

839 

744<h3 id="sdkcontrolinitializeresponse">840<h3 id="sdkcontrolinitializeresponse">

745 `SDKControlInitializeResponse`841 `SDKControlInitializeResponse`

746</h3>842</h3>


824 tokens: number;920 tokens: number;

825 color: string;921 color: string;

826 isDeferred?: boolean;922 isDeferred?: boolean;

923 kind: "used" | "free" | "buffer" | "deferred";

827 }[];924 }[];

828 totalTokens: number;925 totalTokens: number;

829 maxTokens: number;926 maxTokens: number;


913 1010 

914Lisez l'attribution de tokens à partir des champs de collection :1011Lisez l'attribution de tokens à partir des champs de collection :

915 1012 

916* `categories` contient les totaux par catégorie.1013* `categories` contient les totaux par catégorie. Chaque entrée's `kind` classe la ligne avec les mêmes valeurs que [`SDKContextUsageCategory`](#sdkcontextusagecategory). Classez les lignes sur celui-ci plutôt que sur le `name` d'affichage. Le champ nécessite Agent SDK v0.3.268 ou ultérieur.

917* `mcpTools` et `agents` attribuent les tokens aux outils MCP individuels et aux sous-agents.1014* `mcpTools` et `agents` attribuent les tokens aux outils MCP individuels et aux sous-agents.

918* `memoryFiles` liste chaque fichier de mémoire chargé avec son coût.1015* `memoryFiles` liste chaque fichier de mémoire chargé avec son coût.

919* `skills.skillFrontmatter` attribue les tokens de la liste des compétences à chaque compétence incluse. Les comptes par compétence mesurent chaque entrée de liste de compétences comme Claude Code l'envoie réellement, ce qui peut être plus court que le frontmatter complet de la compétence. Comparez `skills.totalSkills` avec `skills.includedSkills` pour voir si chaque compétence découverte a fait son chemin dans la liste.1016* `skills.skillFrontmatter` attribue les tokens de la liste des compétences à chaque compétence incluse. Les comptes par compétence mesurent chaque entrée de liste de compétences comme Claude Code l'envoie réellement, ce qui peut être plus court que le frontmatter complet de la compétence. Comparez `skills.totalSkills` avec `skills.includedSkills` pour voir si chaque compétence découverte a fait son chemin dans la liste.


950 1047 

951Les règles de refus et de demande de Read bloquent toujours un chemin correspondant, et une règle d'autorisation Read large n'ouvre pas le reste du système de fichiers à `readFile()`. Pour tout le reste, l'appel se résout avec `null`.1048Les règles de refus et de demande de Read bloquent toujours un chemin correspondant, et une règle d'autorisation Read large n'ouvre pas le reste du système de fichiers à `readFile()`. Pour tout le reste, l'appel se résout avec `null`.

952 1049 

1050<h3 id="sdkcontrolreloadpluginsresponse">

1051 `SDKControlReloadPluginsResponse`

1052</h3>

1053 

1054Type de retour de [`reloadPlugins()`](#query-object).

1055 

1056```typescript theme={null}

1057type SDKControlReloadPluginsResponse = {

1058 commands: SlashCommand[];

1059 agents: AgentInfo[];

1060 plugins: {

1061 name: string;

1062 path: string;

1063 source?: string;

1064 version?: string;

1065 }[];

1066 mcpServers: McpServerStatus[];

1067 error_count: number;

1068 held?: boolean;

1069 cache_impact?: {

1070 mcp_servers_added: string[];

1071 mcp_servers_removed: string[];

1072 lsp_tool_change: ("adds" | "may-add" | "removes" | "may-remove") | null;

1073 };

1074};

1075```

1076 

1077Les champs de collection décrivent la session après l'appel :

1078 

1079* `commands`, `agents`, et `mcpServers` : les commandes, sous-agents et état du serveur MCP de la session, dans les mêmes formes que `supportedCommands()`, `supportedAgents()`, et `mcpServerStatus()` retournent. `supportedAgents()` continue de retourner la liste capturée à l'initialisation, donc lisez `agents` ici pour l'ensemble après un rechargement

1080* `plugins` : chaque plugin chargé avec son `name` et chemin d'installation `path`. `version` répète ce que le manifeste du plugin déclare et est contrôlé par l'auteur du plugin, donc validez-le avant de le faire confiance. Il est omis quand le manifeste ne déclare aucun

1081* `error_count` : le nombre d'erreurs du chargement des plugins

1082 

1083Passez `{ holdOnCacheImpact: true }` à `reloadPlugins()` pour retenir un rechargement qui invaliderait le cache d'invite de la conversation au lieu de l'appliquer. Claude Code exécute la vérification que la commande interactive `/reload-plugins` fait avant elle [avertit du coût du cache](/docs/fr/prompt-caching#enabling-or-disabling-a-plugin). L'option nécessite Agent SDK v0.3.268 ou ultérieur. Un exécutable Claude Code plus ancien que v2.1.268, comme celui que vous pointez `pathToClaudeCodeExecutable` vers, ignore l'option et applique le rechargement.

1084 

1085Quand vous passez l'option, lisez `held` pour apprendre ce qui s'est passé :

1086 

1087* `true` : le rechargement n'a pas été appliqué, et les champs de collection décrivent la session comme elle l'est toujours. `cache_impact` dit ce que l'application changerait. Pour appliquer de toute façon, appelez `reloadPlugins()` à nouveau sans l'option.

1088* `false` : la vérification n'a trouvé aucun impact sur le cache, et le rechargement a été appliqué.

1089* Absent : vous n'avez pas passé l'option, ou l'exécutable Claude Code est plus ancien que v2.1.268 et a appliqué le rechargement.

1090 

1091`cache_impact` est présent uniquement à côté de `held: true`. `mcp_servers_added` et `mcp_servers_removed` nomment les serveurs MCP du plugin que le rechargement enregistrerait ou supprimerait, comme des noms délimités `plugin:<plugin>:<server>`. Les noms sont créés par le plugin, donc validez-les avant de les afficher. `lsp_tool_change` dit si l'application ajouterait ou supprimerait l'outil LSP, ou `null` quand elle ne ferait ni l'un ni l'autre. Les formes `may-` signifient que la vérification ne pouvait pas voir complètement l'ensemble de plugins en attente.

1092 

953<h3 id="sdkcontrolreloadskillsresponse">1093<h3 id="sdkcontrolreloadskillsresponse">

954 `SDKControlReloadSkillsResponse`1094 `SDKControlReloadSkillsResponse`

955</h3>1095</h3>


964 1104 

965`skills` liste les compétences disponibles après le rechargement, dans la même forme [`SlashCommand`](#slashcommand) que `supportedCommands()` retourne.1105`skills` liste les compétences disponibles après le rechargement, dans la même forme [`SlashCommand`](#slashcommand) que `supportedCommands()` retourne.

966 1106 

1107<h3 id="sdkcontrolreloadoutputstylesresponse">

1108 `SDKControlReloadOutputStylesResponse`

1109</h3>

1110 

1111Type de retour de [`reloadOutputStyles()`](#query-object).

1112 

1113```typescript theme={null}

1114type SDKControlReloadOutputStylesResponse = {

1115 available_output_styles: string[];

1116};

1117```

1118 

1119`available_output_styles` liste les noms des styles de sortie intégrés et personnalisés disponibles après le rechargement.

1120 

967<h3 id="sdkcontrolmcpreadresourceresponse">1121<h3 id="sdkcontrolmcpreadresourceresponse">

968 `SDKControlMcpReadResourceResponse`1122 `SDKControlMcpReadResourceResponse`

969</h3>1123</h3>


984 1138 

985Passez à `readMcpResource()` le nom du serveur tel que `mcpServerStatus()` le signale et un URI `ui://`, comme le `ui.resourceUri` qu'un outil déclare dans son [`_meta`](#mcpserverstatus). L'appel rejette pour tout autre schéma d'URI, pour un [serveur MCP SDK](#createsdkmcpserver) que votre application héberge elle-même, et pour un serveur qui n'est pas connecté. C'est disponible quand le message init's [`capabilities`](#sdksystemmessage) incluent `mcp_read_resource_v1`.1139Passez à `readMcpResource()` le nom du serveur tel que `mcpServerStatus()` le signale et un URI `ui://`, comme le `ui.resourceUri` qu'un outil déclare dans son [`_meta`](#mcpserverstatus). L'appel rejette pour tout autre schéma d'URI, pour un [serveur MCP SDK](#createsdkmcpserver) que votre application héberge elle-même, et pour un serveur qui n'est pas connecté. C'est disponible quand le message init's [`capabilities`](#sdksystemmessage) incluent `mcp_read_resource_v1`.

986 1140 

987Chaque entrée `contents` est un élément de contenu tel que le serveur l'a envoyé. `blob` contient les données base64 pour un élément binaire, et `_meta` est le propre `_meta` de l'élément, où un serveur MCP Apps met le `ui.csp` et `ui.permissions` de la ressource. Le contenu est du HTML tiers non fiable, donc rendez-le dans un sandbox.1141Chaque entrée `contents` est un élément de contenu tel que le serveur l'a envoyé, moins toute clé `_meta` sous le préfixe `com.anthropic/`, qui est réservée à Claude Code. `blob` contient les données base64 pour un élément binaire, et `_meta` est le propre `_meta` de l'élément, où un serveur MCP Apps met le `ui.csp` et `ui.permissions` de la ressource.

1142 

1143Le contenu est du HTML tiers non fiable, donc rendez-le dans un sandbox.

988 1144 

989<h3 id="agentdefinition">1145<h3 id="agentdefinition">

990 `AgentDefinition`1146 `AgentDefinition`


1142 blockedPath?: string;1298 blockedPath?: string;

1143 mcpServer?: { name: string; source: string };1299 mcpServer?: { name: string; source: string };

1144 decisionReason?: string;1300 decisionReason?: string;

1301 defaultToNo?: boolean;

1302 suppressAlwaysAllowRule?: boolean;

1145 toolUseID: string;1303 toolUseID: string;

1146 agentID?: string;1304 agentID?: string;

1147 requestId: string;1305 requestId: string;


1156| `blockedPath` | `string` | Le chemin de fichier qui a déclenché la demande de permission, le cas échéant |1314| `blockedPath` | `string` | Le chemin de fichier qui a déclenché la demande de permission, le cas échéant |

1157| `mcpServer` | `{ name: string; source: string }` | Pour un outil `mcp__*`, le serveur MCP qui le sert et d'où la définition de ce serveur provient, avec les champs de [`McpServerProvenance`](#mcpserverprovenance). Absent pour les autres outils. Nécessite Agent SDK v0.3.274 ou ultérieur |1315| `mcpServer` | `{ name: string; source: string }` | Pour un outil `mcp__*`, le serveur MCP qui le sert et d'où la définition de ce serveur provient, avec les champs de [`McpServerProvenance`](#mcpserverprovenance). Absent pour les autres outils. Nécessite Agent SDK v0.3.274 ou ultérieur |

1158| `decisionReason` | `string` | Explique pourquoi cette demande de permission a été déclenchée |1316| `decisionReason` | `string` | Explique pourquoi cette demande de permission a été déclenchée |

1317| `defaultToNo` | `boolean` | Quand `true`, une seule frappe égarée ne doit pas approuver cette demande : ouvrez votre invite sur son option de refus, ne pré-sélectionnez pas approuver, et n'offrez aucun raccourci d'approbation à une clé. Nécessite Agent SDK v0.3.268 ou ultérieur |

1318| `suppressAlwaysAllowRule` | `boolean` | Quand `true`, n'offrez pas un choix persistant toujours-autoriser pour cette demande, car la règle qu'il écrirait accorde plus que l'action de la demande elle-même. Nécessite Agent SDK v0.3.268 ou ultérieur |

1159| `toolUseID` | `string` | Identifiant unique pour cet appel d'outil spécifique dans le message assistant |1319| `toolUseID` | `string` | Identifiant unique pour cet appel d'outil spécifique dans le message assistant |

1160| `agentID` | `string` | Si exécuté dans un sous-agent, l'ID du sous-agent |1320| `agentID` | `string` | Si exécuté dans un sous-agent, l'ID du sous-agent |

1161| `requestId` | `string` | L'`request_id` du wrapper d'enveloppe `control_request`. Une `control_response` que votre application envoie en dehors du SDK, comme un POST HTTP signé, doit répéter cette valeur pour que le processus Claude Code puisse faire correspondre la réponse à la demande |1321| `requestId` | `string` | L'`request_id` du wrapper d'enveloppe `control_request`. Une `control_response` que votre application envoie en dehors du SDK, comme un POST HTTP signé, doit répéter cette valeur pour que le processus Claude Code puisse faire correspondre la réponse à la demande |


1380 context_usage?: SDKContextUsage;1540 context_usage?: SDKContextUsage;

1381 user_message_uuid?: string;1541 user_message_uuid?: string;

1382 user_message_uuids?: string[];1542 user_message_uuids?: string[];

1543 resume_reason?: string;

1383};1544};

1384```1545```

1385 1546 


1394 1555 

1395`aborted` est `true` quand une interruption ou un abandon a tronqué le message de l'assistant avant la fin du flux : le message n'a pas de `stop_reason` et le contenu peut se terminer au milieu d'un mot. Le champ est absent sur les messages normalement complétés. Il nécessite Agent SDK v0.3.214 ou ultérieur.1556`aborted` est `true` quand une interruption ou un abandon a tronqué le message de l'assistant avant la fin du flux : le message n'a pas de `stop_reason` et le contenu peut se terminer au milieu d'un mot. Le champ est absent sur les messages normalement complétés. Il nécessite Agent SDK v0.3.214 ou ultérieur.

1396 1557 

1397Claude Code définit `user_message_uuid` et `user_message_uuids` sur le premier message de l'assistant du tour, selon les conditions dans [`user_message_uuid`](#user_message_uuid).1558Claude Code définit `user_message_uuid` et `user_message_uuids` sur le premier message de l'assistant du tour, selon les conditions dans [`user_message_uuid`](#user_message_uuid). Quand Claude Code réexécute un tour qu'un redémarrage a interrompu, les messages d'assistant de la réexécution qui portent ces champs portent aussi [`resume_reason`](#resume_reason).

1398 1559 

1399`timestamp` est l'heure ISO 8601 à laquelle le contenu du message a fini de générer sur le processus qui l'a produit. La valeur provient de l'horloge de cette machine, donc utilisez-la uniquement pour l'affichage et ne triez pas les messages par elle. Un tour API peut produire plusieurs messages d'assistant qui partagent un `message.id`, chacun avec son propre `timestamp`. Quand le champ est absent, revenez à l'heure à laquelle vous avez reçu le message.1560`timestamp` est l'heure ISO 8601 à laquelle le contenu du message a fini de générer sur le processus qui l'a produit. La valeur provient de l'horloge de cette machine, donc utilisez-la uniquement pour l'affichage et ne triez pas les messages par elle. Un tour API peut produire plusieurs messages d'assistant qui partagent un `message.id`, chacun avec son propre `timestamp`. Quand le champ est absent, revenez à l'heure à laquelle vous avez reçu le message.

1400 1561 


1416 parent_tool_use_id: string | null;1577 parent_tool_use_id: string | null;

1417 isSynthetic?: boolean;1578 isSynthetic?: boolean;

1418 shouldQuery?: boolean;1579 shouldQuery?: boolean;

1580 client_composed?: true;

1419 tool_use_result?: unknown;1581 tool_use_result?: unknown;

1420 origin?: SDKMessageOrigin;1582 origin?: SDKMessageOrigin;

1421 inline_pastes?: string[];1583 inline_pastes?: string[];


1424 1586 

1425Définissez `pasted_content` pour envoyer du contenu que l'utilisateur a collé dans votre interface d'invite plutôt que tapé, une entrée par collage, chacune étant une chaîne ou un tableau de blocs de contenu. Claude Code ajoute le texte de chaque entrée après le texte tapé, dans l'ordre, et peut envelopper chaque collage dans des balises `<pasted_content>`. Les blocs autres que le texte sont ignorés, donc envoyez les images et les documents dans `message.content`. Nécessite Agent SDK v0.3.277 ou ultérieur.1587Définissez `pasted_content` pour envoyer du contenu que l'utilisateur a collé dans votre interface d'invite plutôt que tapé, une entrée par collage, chacune étant une chaîne ou un tableau de blocs de contenu. Claude Code ajoute le texte de chaque entrée après le texte tapé, dans l'ordre, et peut envelopper chaque collage dans des balises `<pasted_content>`. Les blocs autres que le texte sont ignorés, donc envoyez les images et les documents dans `message.content`. Nécessite Agent SDK v0.3.277 ou ultérieur.

1426 1588 

1427Définissez `shouldQuery` à `false` pour ajouter le message à la transcription sans déclencher un tour d'assistant. Le message est conservé et fusionné dans le prochain message utilisateur qui déclenche un tour. Utilisez ceci pour injecter du contexte, comme la sortie d'une commande que vous avez exécutée hors bande, sans dépenser un appel de modèle pour cela.1589Définissez `shouldQuery` ou `client_composed` pour modifier la façon dont Claude Code gère un message que vous envoyez :

1590 

1591* `shouldQuery` : définissez-le à `false` pour ajouter le message à la transcription sans déclencher un tour d'assistant. Le message est conservé et fusionné dans le prochain message utilisateur qui déclenche un tour. Utilisez ceci pour injecter du contexte, comme la sortie d'une commande que vous avez exécutée hors bande, sans dépenser un appel de modèle pour cela.

1592* `client_composed` : définissez-le à `true` pour que Claude Code livre le texte du message tel qu'écrit. Claude Code n'étend alors pas les mentions `@path` ou [`@server:resource`](/docs/fr/mcp#use-mcp-resources), et n'exécute pas le texte qui commence par `/` comme une commande. Tandis que l'option [`verbatimPrompts`](#options) est activée, le SDK définit le champ sur chaque message. Nécessite TypeScript Agent SDK v0.3.280 ou ultérieur et Claude Code v2.1.248 ou ultérieur.

1428 1593 

1429Sur un message qui porte un bloc `tool_result`, `tool_use_result` est l'objet de sortie structuré de l'outil plutôt que le texte envoyé au modèle. Sa forme dépend de l'outil nommé par le bloc `tool_use` correspondant, donc le champ est typé `unknown` ; les formes intégrées sont listées sous [Types de sortie d'outil](#tool-output-types).1594Sur un message qui porte un bloc `tool_result`, `tool_use_result` est l'objet de sortie structuré de l'outil plutôt que le texte envoyé au modèle. Sa forme dépend de l'outil nommé par le bloc `tool_use` correspondant, donc le champ est typé `unknown` ; les formes intégrées sont listées sous [Types de sortie d'outil](#tool-output-types).

1430 1595 


1448 message: MessageParam;1613 message: MessageParam;

1449 parent_tool_use_id: string | null;1614 parent_tool_use_id: string | null;

1450 isSynthetic?: boolean;1615 isSynthetic?: boolean;

1616 client_composed?: true;

1451 tool_use_result?: unknown;1617 tool_use_result?: unknown;

1452 origin?: SDKMessageOrigin;1618 origin?: SDKMessageOrigin;

1453 isReplay: true;1619 isReplay: true;


1480 ttft_stream_ms?: number;1646 ttft_stream_ms?: number;

1481 user_message_uuid?: string;1647 user_message_uuid?: string;

1482 user_message_uuids?: string[];1648 user_message_uuids?: string[];

1649 resume_reason?: string;

1650 local_command?: string;

1483 request_sent_wall_ms?: number;1651 request_sent_wall_ms?: number;

1484 first_content_frame_ms?: number;1652 first_content_frame_ms?: number;

1485 first_stream_post_ms?: number;1653 first_stream_post_ms?: number;


1493 structured_output?: unknown;1661 structured_output?: unknown;

1494 deferred_tool_use?: { id: string; name: string; input: Record<string, unknown> };1662 deferred_tool_use?: { id: string; name: string; input: Record<string, unknown> };

1495 terminal_reason?: TerminalReason;1663 terminal_reason?: TerminalReason;

1664 result_index?: number;

1496 fast_mode_state?: FastModeState;1665 fast_mode_state?: FastModeState;

1497 fast_mode_disabled_reason?: FastModeDisabledReason;1666 fast_mode_disabled_reason?: FastModeDisabledReason;

1498 origin?: SDKMessageOrigin;1667 origin?: SDKMessageOrigin;


1520 startup_failure_reason?: SDKStartupFailureReason;1689 startup_failure_reason?: SDKStartupFailureReason;

1521 user_message_uuid?: string;1690 user_message_uuid?: string;

1522 user_message_uuids?: string[];1691 user_message_uuids?: string[];

1692 resume_reason?: string;

1523 terminal_reason?: TerminalReason;1693 terminal_reason?: TerminalReason;

1694 result_index?: number;

1524 fast_mode_state?: FastModeState;1695 fast_mode_state?: FastModeState;

1525 fast_mode_disabled_reason?: FastModeDisabledReason;1696 fast_mode_disabled_reason?: FastModeDisabledReason;

1526 origin?: SDKMessageOrigin;1697 origin?: SDKMessageOrigin;


1534* `ttft_stream_ms` : temps en millisecondes jusqu'au premier événement de flux `message_start`, quand le flux de réponse s'ouvre. Inférieur à `ttft_ms` ; l'écart entre les deux est le temps passé à diffuser le premier message. Présent sur le bras de succès uniquement.1705* `ttft_stream_ms` : temps en millisecondes jusqu'au premier événement de flux `message_start`, quand le flux de réponse s'ouvre. Inférieur à `ttft_ms` ; l'écart entre les deux est le temps passé à diffuser le premier message. Présent sur le bras de succès uniquement.

1535* `user_message_uuid` : l'`uuid` du message que vous avez envoyé que ce tour a répondu. Voir [`user_message_uuid`](#user_message_uuid) pour savoir quels résultats le portent.1706* `user_message_uuid` : l'`uuid` du message que vous avez envoyé que ce tour a répondu. Voir [`user_message_uuid`](#user_message_uuid) pour savoir quels résultats le portent.

1536* `user_message_uuids` : les `uuid`s de chaque message que vous avez envoyé que Claude Code a répondu dans ce tour. Voir [`user_message_uuids`](#user_message_uuids).1707* `user_message_uuids` : les `uuid`s de chaque message que vous avez envoyé que Claude Code a répondu dans ce tour. Voir [`user_message_uuids`](#user_message_uuids).

1708* `resume_reason` : pourquoi Claude Code a réexécuté ce tour après un redémarrage qui l'a interrompu. Présent sur les deux bras, et uniquement sur une telle réexécution. Voir [`resume_reason`](#resume_reason).

1709*

1710 

1711`local_command` : le nom de la commande que le tour a envoyée, sur le résultat de succès d'un tour qu'une commande a complété sans entrer dans la boucle d'agent, comme `/compact`. Le nom est plié en lettres minuscules et traits de soulignement, donc `/reload-plugins` rapporte `reload_plugins`. Une commande qu'un serveur MCP fournit, et le `/mcp` intégré, rapportent `mcp`. Une commande que vous avez définie vous-même rapporte `custom`. Les arguments ne sont jamais inclus. Absent sur chaque tour qui a entré la boucle d'agent et sur les envois qui n'ont exécuté aucune commande. Nécessite Agent SDK v0.3.268 ou ultérieur.

1712 

1537* `request_sent_wall_ms` : millisecondes d'époque auxquelles Claude Code a envoyé la requête API, pour les jointures contre les horodatages côté serveur. Présent uniquement avec [`user_message_uuid`](#user_message_uuid), sur un résultat de succès avec `is_error` false dont le tour a envoyé une requête API.1713* `request_sent_wall_ms` : millisecondes d'époque auxquelles Claude Code a envoyé la requête API, pour les jointures contre les horodatages côté serveur. Présent uniquement avec [`user_message_uuid`](#user_message_uuid), sur un résultat de succès avec `is_error` false dont le tour a envoyé une requête API.

1538* `first_content_frame_ms` : temps en millisecondes jusqu'au premier événement de flux `content_block_start` ou `content_block_delta`, en comptant les blocs de réflexion comme du contenu. Présent sur le bras de succès uniquement, quand `is_error` est false. Nécessite Agent SDK v0.3.260 ou ultérieur.1714*

1539* `first_stream_post_ms`, `first_stream_post_ack_ms`, `first_stream_post_wall_ms` : chronométrages pour télécharger le premier événement de flux du tour. Claude Code les enregistre uniquement dans les sessions qu'il diffuse à claude.ai, comme les [sessions cloud](/docs/fr/claude-code-on-the-web), et les résultats que `query()` produit ne les portent pas. Nécessite Agent SDK v0.3.260 ou ultérieur.1715 

1716`first_content_frame_ms` : temps en millisecondes jusqu'au premier événement de flux `content_block_start` ou `content_block_delta`, en comptant les blocs de réflexion comme du contenu. Présent sur le bras de succès uniquement, quand `is_error` est false. Nécessite Agent SDK v0.3.260 ou ultérieur.

1717 

1718*

1719 

1720`first_stream_post_ms`, `first_stream_post_ack_ms`, `first_stream_post_wall_ms` : chronométrages pour télécharger le premier événement de flux du tour. Claude Code les enregistre uniquement dans les sessions qu'il diffuse à claude.ai, comme les [sessions cloud](/docs/fr/claude-code-on-the-web), et les résultats que `query()` produit ne les portent pas. Nécessite Agent SDK v0.3.260 ou ultérieur.

1721 

1540* `usage` : boucle d'agent principal uniquement. Exclut les appels de sous-agent et de modèle auxiliaire, et est par tour dans les sessions d'entrée en flux. Préférez `modelUsage` pour la comptabilité des jetons/coûts.1722* `usage` : boucle d'agent principal uniquement. Exclut les appels de sous-agent et de modèle auxiliaire, et est par tour dans les sessions d'entrée en flux. Préférez `modelUsage` pour la comptabilité des jetons/coûts.

1541* `modelUsage` : totaux par modèle pour chaque appel de modèle effectué via le pipeline de requête pendant cet appel `query()`, y compris la boucle principale, les sous-agents et les appels internes tels que la compaction et les agents Workflow. Les appels d'assistance en dehors de ce pipeline, comme le classificateur de permissions et les demandes de comptage de jetons, sont exclus. Un appel qui reprend une session compte également les [totaux par modèle restaurés à partir des appels antérieurs de la session](/docs/fr/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). Dans les sessions d'entrée en flux, les totaux sont cumulatifs entre les tours, donc lisez le dernier résultat plutôt que de faire la somme entre les résultats. Voir [Suivre les coûts en mode d'entrée en flux](/docs/fr/agent-sdk/cost-tracking#track-costs-in-streaming-input-mode) pour les réinitialisations et [Récupérer les totaux après un crash de session](/docs/fr/agent-sdk/cost-tracking#recover-totals-after-a-session-crash) pour les résultats mis à zéro.1723* `modelUsage` : totaux par modèle pour chaque appel de modèle effectué via le pipeline de requête pendant cet appel `query()`, y compris la boucle principale, les sous-agents et les appels internes tels que la compaction et les agents Workflow. Les appels d'assistance en dehors de ce pipeline, comme le classificateur de permissions et les demandes de comptage de jetons, sont exclus. Un appel qui reprend une session compte également les [totaux par modèle restaurés à partir des appels antérieurs de la session](/docs/fr/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). Dans les sessions d'entrée en flux, les totaux sont cumulatifs entre les tours, donc lisez le dernier résultat plutôt que de faire la somme entre les résultats. Voir [Suivre les coûts en mode d'entrée en flux](/docs/fr/agent-sdk/cost-tracking#track-costs-in-streaming-input-mode) pour les réinitialisations et [Récupérer les totaux après un crash de session](/docs/fr/agent-sdk/cost-tracking#recover-totals-after-a-session-crash) pour les résultats mis à zéro.

1542* `total_cost_usd` : coût estimé cumulatif en USD, couvrant les mêmes appels que `modelUsage` et réinitialisé aux mêmes points. Un appel qui reprend une session compte également les [totaux restaurés à partir des appels antérieurs de la session](/docs/fr/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). C'est une estimation, pas un relevé de facturation. Voir [Suivre le coût et l'utilisation](/docs/fr/agent-sdk/cost-tracking) pour les avertissements de précision.1724* `total_cost_usd` : coût estimé cumulatif en USD, couvrant les mêmes appels que `modelUsage` et réinitialisé aux mêmes points. Un appel qui reprend une session compte également les [totaux restaurés à partir des appels antérieurs de la session](/docs/fr/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). C'est une estimation, pas un relevé de facturation. Voir [Suivre le coût et l'utilisation](/docs/fr/agent-sdk/cost-tracking) pour les avertissements de précision.

1543* `queued_turn_count` : le nombre de messages que vous avez envoyés avec `origin: { kind: "human" }` qui attendent toujours quand Claude Code a produit le résultat. Voir [`queued_turn_count`](#queued_turn_count) pour ce que `0` et un champ absent vous disent.1725* `queued_turn_count` : le nombre de messages que vous avez envoyés avec `origin: { kind: "human" }` qui attendent toujours quand Claude Code a produit le résultat. Voir [`queued_turn_count`](#queued_turn_count) pour ce que `0` et un champ absent vous disent.

1544* `startup_failure_reason` : pourquoi Claude Code a refusé de démarrer, sur le résultat `error_during_execution` qu'il écrit avant de quitter sur une défaillance de démarrage connue. Voir [`startup_failure_reason`](#startup_failure_reason) pour les valeurs et quelles défaillances la portent. Nécessite Agent SDK v0.3.274 ou ultérieur.1726*

1727 

1728`result_index` : où ce résultat se situe dans l'ordre de livraison de l'exécution, en comptant à partir de 0 sur chaque résultat que le processus écrit. Présent sur les deux bras. Un résultat dont l'écriture échoue consomme toujours son numéro, donc un écart dans la séquence signifie qu'un résultat a été perdu. Nécessite Agent SDK v0.3.268 ou ultérieur.

1729 

1730*

1731 

1732`startup_failure_reason` : pourquoi Claude Code a refusé de démarrer, sur le résultat `error_during_execution` qu'il écrit avant de quitter sur une défaillance de démarrage connue. Voir [`startup_failure_reason`](#startup_failure_reason) pour les valeurs et quelles défaillances la portent. Nécessite Agent SDK v0.3.274 ou ultérieur.

1733 

1545* `terminal_reason` : pourquoi la boucle s'est terminée. L'un de `"completed"`, `"max_turns"`, `"tool_deferred"`, `"aborted_streaming"`, `"aborted_tools"`, `"hook_stopped"`, `"stop_hook_prevented"`, `"background_requested"`, `"blocking_limit"`, `"rapid_refill_breaker"`, `"prompt_too_long"`, `"image_error"`, `"model_error"`, `"api_error"`, `"malformed_tool_use_exhausted"`, `"budget_exhausted"`, `"structured_output_retry_exhausted"`, `"tool_deferred_unavailable"`, ou `"turn_setup_failed"`.1734* `terminal_reason` : pourquoi la boucle s'est terminée. L'un de `"completed"`, `"max_turns"`, `"tool_deferred"`, `"aborted_streaming"`, `"aborted_tools"`, `"hook_stopped"`, `"stop_hook_prevented"`, `"background_requested"`, `"blocking_limit"`, `"rapid_refill_breaker"`, `"prompt_too_long"`, `"image_error"`, `"model_error"`, `"api_error"`, `"malformed_tool_use_exhausted"`, `"budget_exhausted"`, `"structured_output_retry_exhausted"`, `"tool_deferred_unavailable"`, ou `"turn_setup_failed"`.

1546* `fast_mode_state` : l'un de `"on"`, `"off"`, ou `"cooldown"`.1735* `fast_mode_state` : l'un de `"on"`, `"off"`, ou `"cooldown"`.

1547* `fast_mode_disabled_reason` : pourquoi le [mode rapide](/docs/fr/fast-mode) n'est pas disponible en ce moment. Absent quand rien ne bloque le mode rapide, bien qu'une requête puisse toujours s'exécuter à vitesse standard. Pendant le refroidissement après une limite de débit du mode rapide, Claude Code rapporte `fast_mode_state: "cooldown"` sans code de raison et réactive le mode rapide quand le refroidissement expire. Nécessite Claude Code v2.1.219 ou ultérieur.1736* `fast_mode_disabled_reason` : pourquoi le [mode rapide](/docs/fr/fast-mode) n'est pas disponible en ce moment. Absent quand rien ne bloque le mode rapide, bien qu'une requête puisse toujours s'exécuter à vitesse standard. Pendant le refroidissement après une limite de débit du mode rapide, Claude Code rapporte `fast_mode_state: "cooldown"` sans code de raison et réactive le mode rapide quand le refroidissement expire. Nécessite Claude Code v2.1.219 ou ultérieur.


1580Quel message de votre part un tour répond dépend de la façon dont le tour a commencé :1769Quel message de votre part un tour répond dépend de la façon dont le tour a commencé :

1581 1770 

1582* **Un message régulier que vous avez envoyé**, c'est-à-dire sans `isSynthetic: true` : le tour répond à ce message pour toute sa durée. Quand vous envoyez plusieurs messages rapprochés, Claude Code peut les fusionner en un seul tour, et le champ porte alors uniquement l'`uuid` du dernier message. Pour faire correspondre la réponse à l'un des messages fusionnés, utilisez [`user_message_uuids`](#user_message_uuids).1771* **Un message régulier que vous avez envoyé**, c'est-à-dire sans `isSynthetic: true` : le tour répond à ce message pour toute sa durée. Quand vous envoyez plusieurs messages rapprochés, Claude Code peut les fusionner en un seul tour, et le champ porte alors uniquement l'`uuid` du dernier message. Pour faire correspondre la réponse à l'un des messages fusionnés, utilisez [`user_message_uuids`](#user_message_uuids).

1583* **Un message que vous avez envoyé avec `isSynthetic: true`** : le tour répond d'abord à ce message. Si Claude Code reprend un message régulier de votre part entre les appels d'outil, le tour répond au message repris à partir de là. Répéter l'`uuid` d'un message synthétique nécessite Agent SDK v0.3.265 ou ultérieur ; les versions antérieures ne répètent rien sur les tours synthétiques.1772*

1584* **Une invite que Claude Code a générée lui-même**, comme le tour qui continue le travail interrompu après un redémarrage de session : le tour ne répond d'abord à aucun message de votre part et ses cadres ne portent aucun écho. Si Claude Code reprend un message régulier de votre part entre les appels d'outil, le tour répond à ce message à partir de là. L'écho de reprise nécessite Agent SDK v0.3.265 ou ultérieur ; les versions antérieures ne répètent rien sur ces tours.1773 

1774**Un message que vous avez envoyé avec `isSynthetic: true`** : le tour répond d'abord à ce message. Si Claude Code reprend un message régulier de votre part entre les appels d'outil, le tour répond au message repris à partir de là. Répéter l'`uuid` d'un message synthétique nécessite Agent SDK v0.3.265 ou ultérieur ; les versions antérieures ne répètent rien sur les tours synthétiques.

1775 

1776*

1777 

1778**L'invite que Claude Code génère pour réexécuter un tour interrompu sous [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/fr/env-vars)** : quand la dernière invite du tour interrompu est un message régulier que vous avez envoyé, qu'il ait ouvert le tour ou que Claude Code l'ait repris pendant le tour, la réexécution répond d'abord à ce message. [`resume_reason`](#resume_reason) indique les cadres de la réexécution à partir de la tentative interrompue. Quand la dernière invite n'est pas un message régulier de votre part, la réexécution ne répond d'abord à aucun message de votre part. Si Claude Code reprend un message régulier de votre part entre les appels d'outil, le tour répond au message repris à partir de là. Répéter l'invite du tour interrompu nécessite Agent SDK v0.3.268 ou ultérieur.

1779 

1780*

1781 

1782**Toute autre invite que Claude Code a générée lui-même** : le tour ne répond d'abord à aucun message de votre part et ses cadres ne portent aucun écho. Si Claude Code reprend un message régulier de votre part entre les appels d'outil, le tour répond à ce message à partir de là. L'écho de reprise nécessite Agent SDK v0.3.265 ou ultérieur ; les versions antérieures ne répètent rien sur ces tours.

1585 1783 

1586Claude Code répète l'`uuid` du message répondu sur trois types de cadre :1784Claude Code répète l'`uuid` du message répondu sur trois types de cadre :

1587 1785 

1588* **Le résultat** : chaque résultat d'un tour qui a répondu à un message que vous avez envoyé. Chaque tel résultat le porte sur Agent SDK v0.3.265 ou ultérieur. Avant v0.3.265, le résultat de succès d'un tour qu'un message régulier a démarré lui manquait quand le tour n'a envoyé aucune requête API ou s'est terminé avec un appel d'outil différé. Avant v0.3.246, les résultats d'erreur lui manquaient aussi, et avant v0.3.216 chaque résultat le faisait.1786* **Le résultat** : chaque résultat d'un tour qui a répondu à un message que vous avez envoyé. Chaque tel résultat le porte sur Agent SDK v0.3.265 ou ultérieur. Avant v0.3.265, le résultat de succès d'un tour qu'un message régulier a démarré lui manquait quand le tour n'a envoyé aucune requête API ou s'est terminé avec un appel d'outil différé. Avant v0.3.246, les résultats d'erreur lui manquaient aussi, et avant v0.3.216 chaque résultat le faisait.

1589* **La première réponse du tour** : le premier [message d'assistant](#sdkassistantmessage), ou avec `includePartialMessages` le premier [événement de flux](#sdkpartialassistantmessage) dont `event.type` n'est pas `ping`, pour que vous puissiez lier la réponse avant l'arrivée du résultat. Quand un tour ne diffuse rien, Claude Code le définit sur le premier message d'assistant à la place. L'écho de première réponse nécessite Agent SDK v0.3.246 ou ultérieur. Quand le message auquel le tour répond change en cours de tour, la première réponse après le changement porte le champ aussi, sur Agent SDK v0.3.265 ou ultérieur ; les versions antérieures le définissent sur un cadre de réponse par tour.1787*

1590* **Chaque cadre [`thinking_tokens`](#sdkthinkingtokensmessage) du tour** : pour que vous puissiez attribuer la progression de la réflexion au message que vous avez envoyé sans attendre la première réponse du tour. Nécessite Agent SDK v0.3.260 ou ultérieur.1788 

1789**La première réponse du tour** : le premier [message d'assistant](#sdkassistantmessage), ou avec `includePartialMessages` le premier [événement de flux](#sdkpartialassistantmessage) dont `event.type` n'est pas `ping`, pour que vous puissiez lier la réponse avant l'arrivée du résultat. Quand un tour ne diffuse rien, Claude Code le définit sur le premier message d'assistant à la place. L'écho de première réponse nécessite Agent SDK v0.3.246 ou ultérieur. Quand le message auquel le tour répond change en cours de tour, la première réponse après le changement porte le champ aussi, sur Agent SDK v0.3.265 ou ultérieur ; les versions antérieures le définissent sur un cadre de réponse par tour.

1790 

1791*

1792 

1793**Chaque cadre [`thinking_tokens`](#sdkthinkingtokensmessage) du tour** : pour que vous puissiez attribuer la progression de la réflexion au message que vous avez envoyé sans attendre la première réponse du tour. Nécessite Agent SDK v0.3.260 ou ultérieur.

1591 1794 

1592Claude Code omet le champ dans ces cas :1795Claude Code omet le champ dans ces cas :

1593 1796 

1594* Cadres de réponse autres que ces premières réponses1797* Cadres de réponse autres que ces premières réponses

1595* Cadres de sous-agent1798* Cadres de sous-agent

1596* Tours qui ne répondent à aucun message avec un `uuid` : le tour a répondu à un message que vous avez envoyé sans en avoir un, ou Claude Code a démarré le tour lui-même et n'a repris aucun message régulier qui en a un1799* Tours qui ne répondent à aucun message de votre part, ou répondent à un message que vous avez envoyé sans `uuid`

1597* Résultats qui ne répondent à aucun message que vous avez envoyé, comme le résultat mis à zéro après un crash de processus de travail1800* Résultats qui ne répondent à aucun message que vous avez envoyé, comme le résultat mis à zéro après un crash de processus de travail

1598 1801 

1599<h4 id="user_message_uuids">1802<h4 id="user_message_uuids">


1608 1811 

1609Quand une première réponse ou un résultat porte `user_message_uuid` sans la liste, il provient d'une version antérieure de Claude Code, donc revenez au champ unique.1812Quand une première réponse ou un résultat porte `user_message_uuid` sans la liste, il provient d'une version antérieure de Claude Code, donc revenez au champ unique.

1610 1813 

1814<h4 id="resume_reason">

1815 `resume_reason`

1816</h4>

1817 

1818Pourquoi Claude Code a réexécuté ce tour après un redémarrage. Claude Code définit ce champ sur un tour qu'il a réexécuté sous [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/fr/env-vars), pour que vous puissiez distinguer la réexécution de la tentative interrompue. Nécessite Agent SDK v0.3.268 ou ultérieur.

1819 

1820Claude Code définit le champ sur deux types de cadre :

1821 

1822* **Le résultat de la réexécution** : sur les bras de succès et d'erreur, que le résultat porte ou non `user_message_uuid`.

1823* **Les cadres de réponse de la réexécution** : ceux qui portent [`user_message_uuid`](#user_message_uuid).

1824 

1825La valeur est un jeton minuscule court nommant pourquoi le tour a été réexécuté, comme `interrupted_turn`. Le champ est absent sur chaque autre tour.

1826 

1611<h4 id="queued_turn_count">1827<h4 id="queued_turn_count">

1612 `queued_turn_count`1828 `queued_turn_count`

1613</h4>1829</h4>


1657| `org_pin_api_key_conflict` | Les paramètres gérés [nécessitent une connexion de première partie ou Cloud gateway](/docs/fr/authentication#restrict-login-to-your-organization), et une clé API Anthropic, un jeton d'authentification ou un `apiKeyHelper` est configuré à la place |1873| `org_pin_api_key_conflict` | Les paramètres gérés [nécessitent une connexion de première partie ou Cloud gateway](/docs/fr/authentication#restrict-login-to-your-organization), et une clé API Anthropic, un jeton d'authentification ou un `apiKeyHelper` est configuré à la place |

1658| `org_verify_failed` | L'organisation de la connexion n'a pas pu être vérifiée par rapport à la broche, par exemple en raison d'une défaillance réseau ou d'un jeton révoqué |1874| `org_verify_failed` | L'organisation de la connexion n'a pas pu être vérifiée par rapport à la broche, par exemple en raison d'une défaillance réseau ou d'un jeton révoqué |

1659| `org_pin_mismatch` | La connexion appartient à une organisation que la broche ne permet pas |1875| `org_pin_mismatch` | La connexion appartient à une organisation que la broche ne permet pas |

1660| `managed_settings_invalid` | Les paramètres de politique gérés n'ont pas pu être lus, ou la broche ne nomme aucune organisation |1876| `managed_settings_invalid` | Les paramètres de politique gérés n'ont pas pu être lus, la broche ne nomme aucune organisation, ou [les restrictions de modèle gérées](/docs/fr/errors#managed-settings-block-the-default-model) ne laissent aucun modèle autorisé pour l'option Par défaut |

1661| `remote_settings_required_unavailable` | Les paramètres gérés que l'organisation nécessite n'ont pas pu être chargés |1877| `remote_settings_required_unavailable` | Les paramètres gérés que l'organisation nécessite n'ont pas pu être chargés |

1662| `gateway_signin_required` | La [Cloud gateway](/docs/fr/claude-apps-gateway) a terminé cette connexion |1878| `gateway_signin_required` | La [Cloud gateway](/docs/fr/claude-apps-gateway) a terminé cette connexion |

1663| `gateway_access_denied` | La demande de paramètres gérés à la Cloud gateway est revenue avec un 403, que la [table de dépannage](/docs/fr/claude-apps-gateway-deploy#troubleshooting) de la gateway couvre |1879| `gateway_access_denied` | La demande de paramètres gérés à la Cloud gateway est revenue avec un 403, que la [table de dépannage](/docs/fr/claude-apps-gateway-deploy#troubleshooting) de la gateway couvre |


1701 output_style: string;1917 output_style: string;

1702 skills: string[];1918 skills: string[];

1703 plugins: { name: string; path: string }[];1919 plugins: { name: string; path: string }[];

1920 plugin_errors?: {

1921 plugin: string;

1922 type: string;

1923 message: string;

1924 path?: string;

1925 }[];

1704 fast_mode_state?: FastModeState;1926 fast_mode_state?: FastModeState;

1705 fast_mode_disabled_reason?: FastModeDisabledReason;1927 fast_mode_disabled_reason?: FastModeDisabledReason;

1706 effort?: "low" | "medium" | "high" | "xhigh" | "max" | null;1928 effort?: "low" | "medium" | "high" | "xhigh" | "max" | null;


1727| `interrupt_receipt_v1` | [`interrupt()`](#query-object) se résout avec un reçu [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse) listant les messages qui étaient en attente quand l'interruption est arrivée |1949| `interrupt_receipt_v1` | [`interrupt()`](#query-object) se résout avec un reçu [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse) listant les messages qui étaient en attente quand l'interruption est arrivée |

1728| `interrupt_cancel_queued_v1` | La demande de contrôle `interrupt` honore `cancel_queued: true`, annulant les messages que le reçu listerait autrement sous `still_queued` et les listant sous `cancelled` à la place. Voir [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse). Nécessite Claude Code v2.1.219 ou ultérieur |1950| `interrupt_cancel_queued_v1` | La demande de contrôle `interrupt` honore `cancel_queued: true`, annulant les messages que le reçu listerait autrement sous `still_queued` et les listant sous `cancelled` à la place. Voir [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse). Nécessite Claude Code v2.1.219 ou ultérieur |

1729 1951 

1952Le tableau `plugin_errors` liste les défaillances de chargement de plugin. Une entrée décrit soit un plugin qui n'a pas chargé et est absent de `plugins`, soit un plugin qui a chargé sans l'une de ses parties, comme son fichier de hooks. La clé est omise quand rien n'a échoué. `SDKSystemMessage` déclare `plugin_errors` dans Agent SDK v0.3.283 ou ultérieur.

1953 

1954Quand un répertoire ou une archive de votre option [`plugins`](#options) elle-même échoue à charger, le champ `plugin` de l'entrée contient une balise positionnelle comme `inline[0]` au lieu d'un nom de plugin. Cela se produit, par exemple, quand le chemin n'existe pas ou le manifeste est invalide. Faites correspondre une telle entrée à votre option par son champ `path`.

1955 

1956Le tableau ci-dessous liste les champs de chaque entrée `plugin_errors`.

1957 

1958| Champ | Type | Description |

1959| - | - | - |

1960| `plugin` | `string` | L'ID du plugin défaillant, ou une balise positionnelle comme `inline[0]` quand le répertoire ou l'archive du plugin lui-même a échoué à charger |

1961| `type` | `string` | Catégorie d'erreur d'un ensemble ouvert, comme `path-not-found` ou `manifest-validation-error`. Traitez une valeur que vous ne reconnaissez pas comme une défaillance générique |

1962| `message` | `string` | Texte d'affichage décrivant la défaillance |

1963| `path` | `string` | Présent uniquement quand le répertoire ou l'archive du plugin lui-même a échoué à charger. Son chemin absolu, avec un chemin relatif de votre option `plugins` résolu par rapport à l'option [`cwd`](#options) |

1964 

1730<h3 id="sdkpartialassistantmessage">1965<h3 id="sdkpartialassistantmessage">

1731 `SDKPartialAssistantMessage`1966 `SDKPartialAssistantMessage`

1732</h3>1967</h3>


1743 ttft_ms?: number; // Time to first token in ms, present only on message_start events1978 ttft_ms?: number; // Time to first token in ms, present only on message_start events

1744 user_message_uuid?: string;1979 user_message_uuid?: string;

1745 user_message_uuids?: string[];1980 user_message_uuids?: string[];

1981 resume_reason?: string;

1746};1982};

1747```1983```

1748 1984 

1749Claude Code définit `user_message_uuid` et `user_message_uuids` sur le premier événement de flux non-ping du tour, et à nouveau quand le message auquel le tour répond change, selon les conditions dans [`user_message_uuid`](#user_message_uuid).1985Claude Code définit `user_message_uuid` et `user_message_uuids` sur le premier événement de flux non-ping du tour, et à nouveau quand le message auquel le tour répond change, selon les conditions dans [`user_message_uuid`](#user_message_uuid). Quand Claude Code réexécute un tour qu'un redémarrage a interrompu, les événements de flux de la réexécution qui portent ces champs portent aussi [`resume_reason`](#resume_reason).

1750 1986 

1751<h3 id="sdkcompactboundarymessage">1987<h3 id="sdkcompactboundarymessage">

1752 `SDKCompactBoundaryMessage`1988 `SDKCompactBoundaryMessage`


1771 `SDKInformationalMessage`2007 `SDKInformationalMessage`

1772</h3>2008</h3>

1773 2009 

1774Bannière de texte générique émise par la boucle. Porte les lignes d'état non-erreur, les retours de hook comme la raison du blocage d'un hook `UserPromptSubmit`, et la sortie de commande. Sur Claude Code v2.1.227 ou ultérieur, le [`systemMessage`](/docs/fr/hooks#json-output) d'un hook peut arriver comme ce message, avec chaque ligne préfixée par le nom du hook, comme `PostToolUse:Bash says:`. Qu'un `systemMessage` d'un hook arrive comme ce message dépend de l'événement. Chaque [section d'événement](/docs/fr/hooks#hook-events) sur la page des hooks dit comment la sortie s'affiche. Rendez `content` comme texte brut au `level` donné.2010Bannière de texte générique émise par la boucle. Porte les avertissements, les avis et autres lignes d'état non-erreur que Claude Code lève, et les retours de hook comme la raison du blocage d'un hook `UserPromptSubmit`.

2011 

2012Sur Claude Code v2.1.227 ou ultérieur, le [`systemMessage`](/docs/fr/hooks#json-output) d'un hook peut arriver comme ce message, avec chaque ligne préfixée par le nom du hook, comme `PostToolUse:Bash says:`. Chaque [section d'événement](/docs/fr/hooks#hook-events) sur la page des hooks dit comment la sortie s'affiche.

2013 

2014Rendez `content` comme texte brut au `level` donné.

1775 2015 

1776```typescript theme={null}2016```typescript theme={null}

1777type SDKInformationalMessage = {2017type SDKInformationalMessage = {


2885 Types d'entrée d'outil3125 Types d'entrée d'outil

2886</h2>3126</h2>

2887 3127 

2888Documentation des schémas d'entrée pour tous les outils Claude Code intégrés. Ces types sont exportés depuis `@anthropic-ai/claude-agent-sdk` et peuvent être utilisés pour les interactions d'outils type-safe.3128Documentation des schémas d'entrée pour tous les outils Claude Code intégrés. Ces types sont exportés depuis `@anthropic-ai/claude-agent-sdk/sdk-tools` et peuvent être utilisés pour les interactions d'outils type-safe.

2889 3129 

2890<h3 id="toolinputschemas">3130<h3 id="toolinputschemas">

2891 `ToolInputSchemas`3131 `ToolInputSchemas`

2892</h3>3132</h3>

2893 3133 

2894Union de types d'entrée d'outil exportée depuis `@anthropic-ai/claude-agent-sdk` ; les membres incluent :3134Union de types d'entrée d'outil exportée depuis `@anthropic-ai/claude-agent-sdk/sdk-tools` ; les membres incluent :

2895 3135 

2896```typescript theme={null}3136```typescript theme={null}

2897type ToolInputSchemas =3137type ToolInputSchemas =


3693 Types de sortie d'outil3933 Types de sortie d'outil

3694</h2>3934</h2>

3695 3935 

3696Documentation des schémas de sortie pour tous les outils Claude Code intégrés. Ces types sont exportés depuis `@anthropic-ai/claude-agent-sdk` et représentent les données de réponse réelles retournées par chaque outil.3936Documentation des schémas de sortie pour tous les outils Claude Code intégrés. Ces types sont exportés depuis `@anthropic-ai/claude-agent-sdk/sdk-tools` et représentent les données de réponse réelles retournées par chaque outil.

3697 3937 

3698<h3 id="tooloutputschemas">3938<h3 id="tooloutputschemas">

3699 `ToolOutputSchemas`3939 `ToolOutputSchemas`

3700</h3>3940</h3>

3701 3941 

3702Union de types de sortie d'outil exportés depuis `@anthropic-ai/claude-agent-sdk` ; les membres incluent :3942Union de types de sortie d'outil exportés depuis `@anthropic-ai/claude-agent-sdk/sdk-tools` ; les membres incluent :

3703 3943 

3704```typescript theme={null}3944```typescript theme={null}

3705type ToolOutputSchemas =3945type ToolOutputSchemas =


5538 `SDKTaskProgressMessage`5778 `SDKTaskProgressMessage`

5539</h3>5779</h3>

5540 5780 

5541Émis périodiquement pendant qu'un sous-agent ou une tâche en arrière-plan s'exécute. Le champ `summary` est rempli uniquement lorsque [`agentProgressSummaries`](#options) est activé.5781Émis périodiquement pendant qu'un sous-agent ou une tâche en arrière-plan s'exécute.

5782 

5783Pour une tâche de sous-agent, le champ `summary` porte un résumé de progression généré par le modèle et n'est rempli que lorsque [`agentProgressSummaries`](#options) est activé. Pour un [appel d'outil MCP mis en arrière-plan](/docs/fr/mcp#automatic-backgrounding-of-long-tool-calls), `summary` porte le dernier progrès signalé par le serveur MCP et ne dépend pas de cette option.

5542 5784 

5543```typescript theme={null}5785```typescript theme={null}

5544type SDKTaskProgressMessage = {5786type SDKTaskProgressMessage = {


5701 5943 

5702Émis lorsque l'ensemble des commandes disponibles change en milieu de session, par exemple lorsque Claude Code découvre des compétences à mesure que l'agent entre dans un sous-répertoire. Le tableau `commands` est la liste complète mise à jour, donc remplacez tout cache de liste de commandes par cette charge utile. L'appel de [`supportedCommands()`](#query-object) après ce message renvoie la même liste mise à jour, car la méthode suit le dernier push ; cela nécessite Agent SDK v0.3.216 ou version ultérieure. Dans les versions antérieures du SDK, `supportedCommands()` renvoie l'instantané capturé à l'initialisation et ne reflète jamais les changements en milieu de session.5944Émis lorsque l'ensemble des commandes disponibles change en milieu de session, par exemple lorsque Claude Code découvre des compétences à mesure que l'agent entre dans un sous-répertoire. Le tableau `commands` est la liste complète mise à jour, donc remplacez tout cache de liste de commandes par cette charge utile. L'appel de [`supportedCommands()`](#query-object) après ce message renvoie la même liste mise à jour, car la méthode suit le dernier push ; cela nécessite Agent SDK v0.3.216 ou version ultérieure. Dans les versions antérieures du SDK, `supportedCommands()` renvoie l'instantané capturé à l'initialisation et ne reflète jamais les changements en milieu de session.

5703 5945 

5946Claude Code émet également ce message lorsque les [invites](/docs/fr/mcp#use-mcp-prompts-as-commands) d'un serveur MCP rejoignent ou quittent la liste, par exemple lorsqu'un serveur termine la connexion après le démarrage de la session. Cela nécessite Claude Code v2.1.281 ou version ultérieure.

5947 

5704```typescript theme={null}5948```typescript theme={null}

5705type SDKCommandsChangedMessage = {5949type SDKCommandsChangedMessage = {

5706 type: "system";5950 type: "system";


5738 new_conversation_id: UUID;5982 new_conversation_id: UUID;

5739 uuid: UUID;5983 uuid: UUID;

5740 session_id: string;5984 session_id: string;

5985 trigger?: "clear" | "plan_mode_exit" | "fresh_session" | "onboarding";

5986 user_message_uuid?: string;

5987 timestamp?: string;

5741};5988};

5742```5989```

5743 5990 

5991Les champs optionnels décrivent la réinitialisation :

5992 

5993* `trigger` : ce qui a supprimé la conversation. Réinitialisez votre transcription sur chaque message `conversation_reset`, y compris celui où ce champ est absent ou porte une valeur que vous ne reconnaissez pas.

5994* `user_message_uuid` : l'`uuid` du message utilisateur qui portait le `/clear`. Utilisez-le pour faire correspondre la réinitialisation à ce message.

5995* `timestamp` : quand la réinitialisation s'est produite, sous forme de chaîne ISO 8601 en UTC. Utilisez-le pour l'affichage, pas pour l'ordre des messages.

5996 

5997Les champs `trigger`, `user_message_uuid` et `timestamp` nécessitent Claude Code v2.1.281 ou version ultérieure.

5998 

5744Les typages publiés du SDK déclarent `SDKConversationResetMessage` dans Claude Code v2.1.203 et versions ultérieures. Avant v2.1.203, `SDKMessage` référençait le type sans le déclarer, donc le rétrécissement sur `type === "conversation_reset"` n'a pas pu être typé lorsque `skipLibCheck` était désactivé.5999Les typages publiés du SDK déclarent `SDKConversationResetMessage` dans Claude Code v2.1.203 et versions ultérieures. Avant v2.1.203, `SDKMessage` référençait le type sans le déclarer, donc le rétrécissement sur `type === "conversation_reset"` n'a pas pu être typé lorsque `skipLibCheck` était désactivé.

5745 6000 

5746<h3 id="aborterror">6001<h3 id="aborterror">


5857| `allowedDomains` | `string[]` | `[]` | Noms de domaine auxquels les processus sandboxés peuvent accéder |6112| `allowedDomains` | `string[]` | `[]` | Noms de domaine auxquels les processus sandboxés peuvent accéder |

5858| `deniedDomains` | `string[]` | `[]` | Noms de domaine auxquels les processus sandboxés ne peuvent pas accéder. Prend la priorité sur `allowedDomains` |6113| `deniedDomains` | `string[]` | `[]` | Noms de domaine auxquels les processus sandboxés ne peuvent pas accéder. Prend la priorité sur `allowedDomains` |

5859| `strictAllowlist` | `boolean` | `false` | Refuser aux commandes sandboxées l'accès aux hôtes en dehors de la [liste d'autorisation réseau](/docs/fr/sandboxing#network-isolation) au lieu de demander. Appliqué uniquement aux commandes sandboxées ; les outils en processus tels que WebFetch ne sont pas contrôlés par celui-ci. Honoré uniquement à partir des paramètres utilisateur, gérés ou CLI `--settings` ; les paramètres de projet sont ignorés. Nécessite Claude Code v2.1.219 ou ultérieur |6114| `strictAllowlist` | `boolean` | `false` | Refuser aux commandes sandboxées l'accès aux hôtes en dehors de la [liste d'autorisation réseau](/docs/fr/sandboxing#network-isolation) au lieu de demander. Appliqué uniquement aux commandes sandboxées ; les outils en processus tels que WebFetch ne sont pas contrôlés par celui-ci. Honoré uniquement à partir des paramètres utilisateur, gérés ou CLI `--settings` ; les paramètres de projet sont ignorés. Nécessite Claude Code v2.1.219 ou ultérieur |

5860| `allowManagedDomainsOnly` | `boolean` | `false` | Paramètres gérés uniquement. Lorsqu'il est défini dans les [paramètres gérés](/docs/fr/managed-settings), seules les entrées `allowedDomains` et les règles d'autorisation `WebFetch(domain:...)` des paramètres gérés sont honorées, et les entrées d'autorisation des paramètres utilisateur, projet ou locaux sont ignorées. N'a aucun effet lorsqu'il est défini via les options SDK |6115| `allowManagedDomainsOnly` | `boolean` | `false` | Paramètres gérés uniquement. Lorsqu'il est défini dans les [paramètres gérés](/docs/fr/managed-settings), seules les entrées `allowedDomains` et les règles d'autorisation `WebFetch(domain:...)` des paramètres gérés sont honorées, et les entrées d'autorisation des paramètres utilisateur, projet ou locaux sont ignorées. À partir du SDK, transmettez-le via l'option [`managedSettings`](#options) |

5861| `allowLocalBinding` | `boolean` | `false` | Permettre aux processus de se lier à des ports locaux (par exemple, pour les serveurs de développement) |6116| `allowLocalBinding` | `boolean` | `false` | Permettre aux processus de se lier à des ports locaux (par exemple, pour les serveurs de développement) |

5862| `allowUnixSockets` | `string[]` | `[]` | Chemins de socket Unix auxquels les processus peuvent accéder (par exemple, socket Docker) |6117| `allowUnixSockets` | `string[]` | `[]` | Chemins de socket Unix auxquels les processus peuvent accéder (par exemple, socket Docker) |

5863| `allowAllUnixSockets` | `boolean` | `false` | Permettre l'accès à tous les sockets Unix |6118| `allowAllUnixSockets` | `boolean` | `false` | Permettre l'accès à tous les sockets Unix |

Details

296 <Tab title="Approuver et mémoriser">296 <Tab title="Approuver et mémoriser">

297 L'utilisateur approuve et ne veut pas être invité à nouveau pour ce type d'appel. Le troisième argument du callback porte `suggestions`, un tableau d'entrées [`PermissionUpdate`](/docs/fr/agent-sdk/typescript#permissionupdate) prêtes à l'emploi. Renvoyez-en une dans `updatedPermissions` pour l'appliquer. Une suggestion avec la destination `localSettings` écrit la règle dans `.claude/settings.local.json` afin que les futures sessions ignorent l'invite pour les appels correspondants.297 L'utilisateur approuve et ne veut pas être invité à nouveau pour ce type d'appel. Le troisième argument du callback porte `suggestions`, un tableau d'entrées [`PermissionUpdate`](/docs/fr/agent-sdk/typescript#permissionupdate) prêtes à l'emploi. Renvoyez-en une dans `updatedPermissions` pour l'appliquer. Une suggestion avec la destination `localSettings` écrit la règle dans `.claude/settings.local.json` afin que les futures sessions ignorent l'invite pour les appels correspondants.

298 298 

299 En TypeScript, ignorez le choix always-allow pour une demande dont les options portent [`suppressAlwaysAllowRule: true`](/docs/fr/agent-sdk/typescript#canusetool). L'indice nécessite Agent SDK v0.3.268 ou ultérieur, et le `context` Python ne le porte pas.

300 

299 L'exemple Python nécessite `claude-agent-sdk` 0.1.80 ou ultérieur.301 L'exemple Python nécessite `claude-agent-sdk` 0.1.80 ou ultérieur.

300 302 

301 <CodeGroup>303 <CodeGroup>

agent-teams.md +3 −1

Details

333 Contexte et communication333 Contexte et communication

334</h3>334</h3>

335 335 

336Chaque coéquipier a sa propre fenêtre de contexte. Lorsqu'il est généré, un coéquipier charge le même contexte de projet qu'une session régulière : CLAUDE.md, serveurs MCP et skills. Il reçoit également le prompt de génération du chef. L'historique de conversation du chef ne se transporte pas.336Chaque coéquipier a sa propre fenêtre de contexte. Lorsqu'il est généré, un coéquipier charge le même contexte de projet qu'une session régulière : CLAUDE.md, serveurs MCP et skills. Si vous démarrez le chef avec [`--setting-sources`](/docs/fr/cli-reference#cli-flags), les coéquipiers chargent à partir de la même liste restreinte de sources. Avant la v2.1.281, les coéquipiers en [volet divisé](#choose-a-display-mode) chargeaient chaque source de paramètres.

337 

338Un coéquipier reçoit également le prompt de génération du chef. L'historique de conversation du chef ne se transporte pas.

337 339 

338**Comment les coéquipiers partagent les informations :**340**Comment les coéquipiers partagent les informations :**

339 341 

agent-view.md +12 −4

Details

260 260 

261Appuyer sur `←` crée la ligne de la session même lorsque la conversation n'a pas encore de messages, afin que `→` revienne toujours à elle.261Appuyer sur `←` crée la ligne de la session même lorsque la conversation n'a pas encore de messages, afin que `→` revienne toujours à elle.

262 262 

263Vous pouvez désactiver ce raccourci avec le paramètre `leftArrowOpensAgents` dans `/config`.263Vous pouvez désactiver ce raccourci avec le paramètre [`leftArrowOpensAgents`](/docs/fr/settings-reference#leftarrowopensagents) dans `/config`.

264 264 

265<h3 id="organize-the-list">265<h3 id="organize-the-list">

266 Organiser la liste266 Organiser la liste


454 454 

455* `--mcp-config` et `--strict-mcp-config`455* `--mcp-config` et `--strict-mcp-config`

456* `--settings`456* `--settings`

457* `--setting-sources`

457* `--add-dir`458* `--add-dir`

458* `--plugin-dir`459* `--plugin-dir`

459* `--fallback-model`460* `--fallback-model`


473 474 

474L'invite est l'argument positionnel, pas une valeur `-p`. Claude Code rejette `--bg` combiné avec `-p` ou `--print` avant que toute session soit créée, car `--print` ne démarre jamais la session interactive à laquelle `claude agents` s'attache.475L'invite est l'argument positionnel, pas une valeur `-p`. Claude Code rejette `--bg` combiné avec `-p` ou `--print` avant que toute session soit créée, car `--print` ne démarre jamais la session interactive à laquelle `claude agents` s'attache.

475 476 

477Si vous exécutez `claude --bg` à partir d'un terminal dans un répertoire que vous n'avez pas [approuvé](/docs/fr/permissions#project-allow-rules-and-workspace-trust), la boîte de dialogue de confiance de l'espace de travail apparaît d'abord et la session démarre une fois que vous acceptez. Si vous refusez, Claude Code se termine sans démarrer une session. Là où aucune boîte de dialogue ne peut apparaître, comme dans un script, la commande se termine avec une erreur [`Workspace not trusted`](/docs/fr/errors#workspace-not-trusted-when-dispatching-a-background-session) à la place.

478 

476Pour exécuter un [sous-agent](/docs/fr/sub-agents) spécifique que vous avez défini, comme un `code-reviewer`, comme l'agent principal de la session, combinez `--bg` avec `--agent` :479Pour exécuter un [sous-agent](/docs/fr/sub-agents) spécifique que vous avez défini, comme un `code-reviewer`, comme l'agent principal de la session, combinez `--bg` avec `--agent` :

477 480 

478```bash theme={null}481```bash theme={null}


639 Paramètres et fournisseur642 Paramètres et fournisseur

640</h4>643</h4>

641 644 

642Une session en arrière-plan lit ses [paramètres](/docs/fr/settings) à partir du répertoire dans lequel elle s'exécute, de la même manière que si vous aviez démarré `claude` là. Cela inclut les valeurs [`env`](/docs/fr/settings-reference#env) dans les paramètres du projet, donc une variable `ANTHROPIC_MODEL` ou de fournisseur définie là s'applique à chaque session en arrière-plan dans ce répertoire.645Une session en arrière-plan lit ses [paramètres](/docs/fr/settings) à partir du répertoire dans lequel elle s'exécute, de la même manière que si vous aviez démarré `claude` là avec les [drapeaux de configuration qu'elle porte](#what-carries-over-when-you-background). Cela inclut les valeurs [`env`](/docs/fr/settings-reference#env) dans les paramètres du projet, donc une variable `ANTHROPIC_MODEL` ou de fournisseur définie là s'applique à chaque session en arrière-plan dans ce répertoire.

643 646 

644Une session en arrière-plan s'exécute également avec le `PATH` du shell à partir duquel vous l'avez lancée, afin que les commandes qu'elle exécute trouvent les mêmes outils que votre terminal. Elle conserve également la sélection du fournisseur cloud de ce shell, comme `CLAUDE_CODE_USE_BEDROCK` ou `CLAUDE_CODE_USE_VERTEX`, ainsi que ses alias `ANTHROPIC_DEFAULT_*_MODEL` et tout remplacement [`CLAUDE_CODE_EXTRA_BODY`](/docs/fr/env-vars) que vous avez exporté là.647Une session en arrière-plan s'exécute également avec le `PATH` du shell à partir duquel vous l'avez lancée, afin que les commandes qu'elle exécute trouvent les mêmes outils que votre terminal. Elle conserve également la sélection du fournisseur cloud de ce shell, comme `CLAUDE_CODE_USE_BEDROCK` ou `CLAUDE_CODE_USE_VERTEX`, ainsi que ses alias `ANTHROPIC_DEFAULT_*_MODEL` et tout remplacement [`CLAUDE_CODE_EXTRA_BODY`](/docs/fr/env-vars) que vous avez exporté là.

645 648 


718 Paramètres, plugins et serveurs MCP721 Paramètres, plugins et serveurs MCP

719</h3>722</h3>

720 723 

721La vue agent accepte les mêmes drapeaux de configuration que `claude` pour charger les paramètres, les plugins, les serveurs MCP et les répertoires supplémentaires. La vue agent applique `--settings` et `--plugin-dir` à elle-même et transmet chaque drapeau de configuration aux sessions que vous lancez à partir de celle-ci, donc un plugin ou un serveur MCP que vous chargez de cette manière est disponible dans ces sessions.724La vue agent accepte les mêmes drapeaux de configuration que `claude` pour charger les paramètres, les plugins, les serveurs MCP et les répertoires supplémentaires. La vue agent applique `--settings`, `--setting-sources`, et `--plugin-dir` à elle-même et transmet chaque drapeau de configuration aux sessions que vous lancez à partir de celle-ci, donc un plugin ou un serveur MCP que vous chargez de cette manière est disponible dans ces sessions.

722 725 

723| Drapeau | Effet |726| Drapeau | Effet |

724| :- | :- |727| :- | :- |

725| [`--settings <file-or-json>`](/docs/fr/settings) | Remplacer les paramètres pour la vue agent et les sessions lancées |728| [`--settings <file-or-json>`](/docs/fr/settings) | Remplacer les paramètres pour la vue agent et les sessions lancées |

729| [`--setting-sources <sources>`](/docs/fr/cli-reference#cli-flags) | Charger uniquement les sources de paramètres nommées, dans la vue agent et les sessions lancées |

726| [`--add-dir <path>`](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) | Accorder l'accès aux fichiers à un répertoire supplémentaire |730| [`--add-dir <path>`](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) | Accorder l'accès aux fichiers à un répertoire supplémentaire |

727| [`--plugin-dir <path>`](/docs/fr/plugins/create#load-a-directory-or-archive-for-one-session) | Charger un plugin à partir d'un répertoire local |731| [`--plugin-dir <path>`](/docs/fr/plugins/create#load-a-directory-or-archive-for-one-session) | Charger un plugin à partir d'un répertoire local |

728| [`--mcp-config <file-or-json>`](/docs/fr/mcp) | Charger les serveurs MCP à partir d'un fichier de configuration ou d'une chaîne JSON |732| [`--mcp-config <file-or-json>`](/docs/fr/mcp) | Charger les serveurs MCP à partir d'un fichier de configuration ou d'une chaîne JSON |


730 734 

731Répétez `--add-dir`, `--plugin-dir`, ou `--mcp-config` une fois par valeur. `claude agents` ne supporte pas la forme séparée par des espaces, comme `--add-dir a b c`.735Répétez `--add-dir`, `--plugin-dir`, ou `--mcp-config` une fois par valeur. `claude agents` ne supporte pas la forme séparée par des espaces, comme `--add-dir a b c`.

732 736 

733Vous pouvez placer `--settings` et `--plugin-dir` avant ou après `agents`. Gardez `--add-dir` et `--mcp-config` après `agents` : si vous placez l'un ou l'autre avant `agents`, [`claude agents --json`](#manage-sessions-from-the-shell) échoue avec une erreur `unknown option`.737Vous pouvez placer `--settings`, `--setting-sources`, et `--plugin-dir` avant ou après `agents`. Gardez `--add-dir` et `--mcp-config` après `agents` : si vous placez l'un ou l'autre avant `agents`, [`claude agents --json`](#manage-sessions-from-the-shell) échoue avec une erreur `unknown option`.

734 738 

735L'exemple suivant ouvre la vue agent avec un remplacement de paramètres et un répertoire supplémentaire :739L'exemple suivant ouvre la vue agent avec un remplacement de paramètres et un répertoire supplémentaire :

736 740 


1048 1052 

1049| Version | Changement |1053| Version | Changement |

1050| - | - |1054| - | - |

1055| v2.1.281 | Une restriction [`--setting-sources`](/docs/fr/cli-reference#cli-flags) [se reporte](#what-carries-over-when-you-background) à une session que vous mettez en arrière-plan avec `←` ou `/bg` et aux sessions que vous dispatchez à partir de la vue agent. Avant cette version, la session générée chargeait chaque source de paramètres. |

1056| v2.1.281 | `claude --bg`, et les commandes qui redémarrent une session, vérifient d'abord la confiance de l'espace de travail pour le répertoire de la session. À partir d'un terminal dans ce répertoire, [le dialogue de confiance apparaît](#from-your-shell) si vous ne l'avez pas accepté ; où aucun dialogue ne peut apparaître, comme dans un script, la commande quitte avec une erreur [`Workspace not trusted`](/docs/fr/errors#workspace-not-trusted-when-dispatching-a-background-session). |

1057| v2.1.274 | Après une auto-mise à jour, une vue agent dont vous avez été absent pendant environ une heure peut se relancer sur la nouvelle version. Quand elle le fait, elle conserve les [paramètres par défaut de dispatch](#dispatch-defaults) avec lesquels vous l'avez ouverte : `--model`, `--effort`, `--permission-mode`, `--allow-dangerously-skip-permissions`, et `--agent`. Avant cette version, la vue relancée conservait seulement `--cwd` et les drapeaux de configuration comme `--settings` et `--mcp-config`, donc les sessions que vous avez dispatchées après n'avaient pas ces paramètres par défaut. |

1058| v2.1.274 | Quand une [suppression est refusée](#what-deleting-a-session-removes) parce que git ou votre hook `WorktreeRemove` n'a pas pu supprimer le worktree, un sous-module extrait que Claude Code vérifie n'avoir aucune modification non validée sur les fichiers suivis ne bloque pas l'offre de supprimer à nouveau et de supprimer le répertoire de toute façon. Le travail non validé à l'intérieur d'un sous-module extrait compte comme des modifications non validées, et le message nomme le sous-module. Avant cette version, tout checkout de sous-module dans le worktree bloquait l'offre, avec un message disant que le worktree contient un référentiel imbriqué. |

1051| v2.1.268 | Quand une [suppression est refusée](#what-deleting-a-session-removes) parce que git ou votre hook `WorktreeRemove` n'a pas pu supprimer le worktree, le message nomme la cause, y compris comment le hook s'est terminé et le début de son stderr. Pour un worktree lié sous le répertoire `.claude/worktrees/` du référentiel sans modifications non validées sur les fichiers suivis, sans référentiel imbriqué à l'intérieur, et sans enregistrement d'une autre session le nommant, supprimer la session à nouveau supprime le répertoire de toute façon, à partir de la vue agent ou avec `claude rm <id> --force-remove-worktree <worktree-id>`. Avant cette version, la ligne affichait seulement `worktree could not be removed (WorktreeRemove hook failed)` ou l'erreur de git, le stderr du hook n'allait que dans le journal de débogage, et supprimer à nouveau était refusé de la même manière. |1059| v2.1.268 | Quand une [suppression est refusée](#what-deleting-a-session-removes) parce que git ou votre hook `WorktreeRemove` n'a pas pu supprimer le worktree, le message nomme la cause, y compris comment le hook s'est terminé et le début de son stderr. Pour un worktree lié sous le répertoire `.claude/worktrees/` du référentiel sans modifications non validées sur les fichiers suivis, sans référentiel imbriqué à l'intérieur, et sans enregistrement d'une autre session le nommant, supprimer la session à nouveau supprime le répertoire de toute façon, à partir de la vue agent ou avec `claude rm <id> --force-remove-worktree <worktree-id>`. Avant cette version, la ligne affichait seulement `worktree could not be removed (WorktreeRemove hook failed)` ou l'erreur de git, le stderr du hook n'allait que dans le journal de débogage, et supprimer à nouveau était refusé de la même manière. |

1052| v2.1.268 | Après que le premier `←` affiche `Press ← again to open agents`, ou `Press ← again to go back to agents` dans une session attachée, [la première pression qui arrive au moins une seconde plus tard bascule](#switch-sessions-without-leaving-the-terminal), même quand les pressions plus rapides entre les deux ont été ignorées. Avant cette version, chaque pression ignorée redémarrait l'attente, donc appuyer sur `←` à nouveau à un rythme régulier ne basculait pas jusqu'à ce que vous fassiez une pause de plus d'une seconde. |1060| v2.1.268 | Après que le premier `←` affiche `Press ← again to open agents`, ou `Press ← again to go back to agents` dans une session attachée, [la première pression qui arrive au moins une seconde plus tard bascule](#switch-sessions-without-leaving-the-terminal), même quand les pressions plus rapides entre les deux ont été ignorées. Avant cette version, chaque pression ignorée redémarrait l'attente, donc appuyer sur `←` à nouveau à un rythme régulier ne basculait pas jusqu'à ce que vous fassiez une pause de plus d'une seconde. |

1053| v2.1.260 | Quand vous [mettez une session en arrière-plan](#from-inside-a-session), le [listing agent](/docs/fr/cross-session-messaging#see-which-sessions-claude-can-reach) de vos autres sessions affiche la conversation une fois, comme sa session en arrière-plan, et leurs messages vers elle n'atteignent plus le terminal d'où vous l'avez déplacée. Avant cette version, ce terminal pouvait rester listé comme une deuxième session interactive sous le nom de la conversation, et une session qui avait envoyé un message à la conversation avant le déplacement continuait à livrer à ce terminal. |1061| v2.1.260 | Quand vous [mettez une session en arrière-plan](#from-inside-a-session), le [listing agent](/docs/fr/cross-session-messaging#see-which-sessions-claude-can-reach) de vos autres sessions affiche la conversation une fois, comme sa session en arrière-plan, et leurs messages vers elle n'atteignent plus le terminal d'où vous l'avez déplacée. Avant cette version, ce terminal pouvait rester listé comme une deuxième session interactive sous le nom de la conversation, et une session qui avait envoyé un message à la conversation avant le déplacement continuait à livrer à ce terminal. |

agents.md +1 −1

Details

13| [Sous-agents](/docs/fr/sub-agents) | Des travailleurs délégués dans une session qui effectuent une tâche secondaire dans leur propre contexte et retournent un résumé | Une tâche secondaire inonderait votre conversation principale avec des résultats de recherche, des journaux ou des contenus de fichiers que vous ne référencerez plus |13| [Sous-agents](/docs/fr/sub-agents) | Des travailleurs délégués dans une session qui effectuent une tâche secondaire dans leur propre contexte et retournent un résumé | Une tâche secondaire inonderait votre conversation principale avec des résultats de recherche, des journaux ou des contenus de fichiers que vous ne référencerez plus |

14| [Vue agent](/docs/fr/agent-view) | Un écran pour dispatcher et surveiller les sessions s'exécutant en arrière-plan, ouvert avec `claude agents`. Aperçu de recherche | Vous avez plusieurs tâches indépendantes et voulez les déléguer, vérifier l'état en un coup d'œil et intervenir uniquement quand l'une d'elles a besoin de vous |14| [Vue agent](/docs/fr/agent-view) | Un écran pour dispatcher et surveiller les sessions s'exécutant en arrière-plan, ouvert avec `claude agents`. Aperçu de recherche | Vous avez plusieurs tâches indépendantes et voulez les déléguer, vérifier l'état en un coup d'œil et intervenir uniquement quand l'une d'elles a besoin de vous |

15| [Équipes d'agents](/docs/fr/agent-teams) | Plusieurs sessions coordonnées avec une liste de tâches partagée et une messagerie inter-agents, gérées par un responsable. Expérimental et désactivé par défaut | Vous voulez que Claude divise un projet en morceaux, les assigne et maintient les travailleurs synchronisés |15| [Équipes d'agents](/docs/fr/agent-teams) | Plusieurs sessions coordonnées avec une liste de tâches partagée et une messagerie inter-agents, gérées par un responsable. Expérimental et désactivé par défaut | Vous voulez que Claude divise un projet en morceaux, les assigne et maintient les travailleurs synchronisés |

16| [Projets](/docs/fr/claude-projects) | Une conversation continue sur claude.ai/code ou dans l'application de bureau. Claude démarre des sessions cloud parallèles appelées threads, donne à chacune les référentiels, les instructions et la mémoire du projet, et vous montre lesquels ont besoin de vous. Bêta publique sur Pro et Max | Le travail s'étend sur plusieurs tâches pendant des jours ou des semaines, devrait continuer à s'exécuter quand votre machine est éteinte, et vous préférez le décrire une fois plutôt que de dispatcher et suivre chaque session |16| [Projets](/docs/fr/claude-projects) | Une conversation continue sur claude.ai/code ou dans l'application de bureau. Claude démarre des sessions parallèles appelées threads, dans le cloud ou, quand vous le demandez, sur votre ordinateur via Remote Control, donne à chacune les instructions du projet et vous montre lesquelles ont besoin de vous. Bêta publique sur Pro et Max | Le travail s'étend sur plusieurs tâches pendant des jours ou des semaines, devrait continuer à s'exécuter quand votre machine est éteinte, et vous préférez le décrire une fois plutôt que de dispatcher et suivre chaque session |

17| [Workflows dynamiques](/docs/fr/workflows) | Un script qui exécute de nombreux sous-agents et vérifie leurs résultats, pour un travail trop important pour être coordonné en un seul tour ou qui nécessite plus d'une seule passe | Une tâche dépasse une poignée de sous-agents, ou vous voulez que les résultats soient vérifiés les uns par rapport aux autres : un audit à l'échelle de la base de code, une migration de 500 fichiers, une recherche vérifiée de manière croisée, ou un plan élaboré sous plusieurs angles |17| [Workflows dynamiques](/docs/fr/workflows) | Un script qui exécute de nombreux sous-agents et vérifie leurs résultats, pour un travail trop important pour être coordonné en un seul tour ou qui nécessite plus d'une seule passe | Une tâche dépasse une poignée de sous-agents, ou vous voulez que les résultats soient vérifiés les uns par rapport aux autres : un audit à l'échelle de la base de code, une migration de 500 fichiers, une recherche vérifiée de manière croisée, ou un plan élaboré sous plusieurs angles |

18 18 

19Dans chaque approche, les travailleurs sont des sessions Claude. Pour impliquer un outil différent, exposez-le à Claude en tant que [serveur MCP](/docs/fr/mcp).19Dans chaque approche, les travailleurs sont des sessions Claude. Pour impliquer un outil différent, exposez-le à Claude en tant que [serveur MCP](/docs/fr/mcp).

artifacts.md +36 −4

Details

305 305 

306Pour la typographie, Claude peut charger une police à partir de Google Fonts, la seule source de police externe qu'une page artifact peut charger. Claude intègre toute autre police en tant que `@font-face` data URI et donne à chaque police une pile de secours, de sorte que la page s'affiche toujours si une police ne se charge pas. Pour utiliser une police spécifique, nommez-la dans votre invite ou dans votre système de conception.306Pour la typographie, Claude peut charger une police à partir de Google Fonts, la seule source de police externe qu'une page artifact peut charger. Claude intègre toute autre police en tant que `@font-face` data URI et donne à chaque police une pile de secours, de sorte que la page s'affiche toujours si une police ne se charge pas. Pour utiliser une police spécifique, nommez-la dans votre invite ou dans votre système de conception.

307 307 

308<h2 id="draft-a-design-canvas">308<h2 id="start-from-a-slides-design-or-docs-template">

309 Créer un canevas de conception309 Commencer à partir d'un modèle Slides, Design ou Docs

310</h2>310</h2>

311 311 

312Pour créer une maquette d'une interface utilisateur, un flux d'écran, une page d'accueil ou une affiche plutôt que de construire une page, exécutez `/design` avec un résumé. Claude crée la conception sous forme d'artboards sur un canevas et publie le canevas en tant qu'artefact Design. Le résumé nomme ce que vous voulez dessiner :312Au lieu de construire une page à partir de zéro, Claude peut démarrer un artefact à partir de l'un des modèles de votre compte claude.ai : [Claude Slides](https://support.claude.com/fr/articles/17153992-what-are-artifacts-and-how-do-i-use-them#h_11d5a9a5fa) pour une présentation, [Claude Design](https://support.claude.com/fr/articles/14604416-get-started-with-claude-design) pour une conception visuelle, ou [Claude Docs](https://support.claude.com/fr/articles/16923645-get-started-with-claude-docs) pour un document que d'autres personnes liront et éditeront. Chacun s'ouvre dans son propre éditeur sur claude.ai, où vous et vos coéquipiers le modifiez directement ou demandez à Claude de le faire, et l'exportez dans des formats tels que PowerPoint, PDF ou Word.

313 

314Pour commencer à partir d'un modèle, décrivez ce que vous voulez, par exemple « transformer les notes de migration en présentation pour l'examen de jeudi » ou « rédiger ce plan en tant que document pour l'équipe ». Claude choisit le modèle correspondant, le remplit à partir de votre demande et de ce que la session contient déjà, et vous donne le lien. Pour une présentation ou une conception, vous pouvez également exécuter `/slides` ou `/design` avec un résumé.

315 

316<Note>

317 Les modèles sont en version bêta. Ils sont activés par défaut sur les plans Pro, Max et Team. Sur les plans Enterprise, un propriétaire [active chaque modèle](https://support.claude.com/fr/articles/16994751-artifacts-admin-guide-for-team-and-enterprise-plans) sous **Paramètres de l'organisation > Artefacts**. Si votre organisation a désactivé le modèle Slides, `/slides` n'apparaît pas ; si elle a désactivé le modèle Design, `/design` ne crée pas de conceptions. Les deux commandes nécessitent Claude Code v2.1.265 ou version ultérieure et une session où [les artefacts sont disponibles](#availability).

318</Note>

319 

320<h3 id="make-a-slide-deck">

321 Créer une présentation

322</h3>

323 

324Exécutez `/slides` avec un résumé qui indique ce que couvre la présentation et pour qui elle est destinée :

325 

326```text wrap theme={null}

327/slides a quarterly review of the platform team's reliability work, for the engineering all-hands

328```

329 

330Claude crée un artefact Claude Slides et vous donne le lien. Ouvrez-le dans un navigateur de bureau pour éditer ou présenter la présentation. Si vous exécutez `/slides` sans résumé, Claude vous demande de quoi devrait parler la présentation avant de créer quoi que ce soit.

331 

332<h3 id="draft-a-design-canvas">

333 Créer un canevas de conception

334</h3>

335 

336Pour créer une maquette d'une interface utilisateur, un flux d'écran, une page d'accueil ou une affiche plutôt que de construire une page, exécutez `/design` avec un résumé. Claude crée la conception sous forme d'artboards sur un canevas et publie le canevas en tant qu'artefact Claude Design. Le résumé nomme ce que vous voulez dessiner :

313 337 

314```text wrap theme={null}338```text wrap theme={null}

315/design a settings screen for a mobile banking app339/design a settings screen for a mobile banking app


317 341 

318Ouvrez l'artefact publié dans un navigateur de bureau pour examiner les artboards. Sélectionnez un élément sur un artboard et modifiez-le, et vos modifications s'enregistrent automatiquement. Vous pouvez exporter chaque artboard en PNG ou PDF.342Ouvrez l'artefact publié dans un navigateur de bureau pour examiner les artboards. Sélectionnez un élément sur un artboard et modifiez-le, et vos modifications s'enregistrent automatiquement. Vous pouvez exporter chaque artboard en PNG ou PDF.

319 343 

320`/design` nécessite une session où [les artefacts sont disponibles](#availability) et Claude Code v2.1.265 ou version ultérieure.344<h3 id="write-a-document-with-claude-docs">

345 Rédiger un document avec Claude Docs

346</h3>

347 

348Claude Docs se connecte à Claude Code en tant que [connecteur](/docs/fr/mcp#use-mcp-servers-from-claude-ai) claude.ai plutôt qu'en tant que commande. Lorsqu'il est connecté, `/mcp` le répertorie en tant que `claude.ai Claude Docs`. Une demande de document destiné à d'autres personnes est alors envoyée à Claude Docs au lieu d'une page d'artefact : une spécification, une proposition ou une rédaction du plan que vous avez élaboré au cours de la session. Claude vous donne le lien du document lorsqu'il est rédigé.

349 

350Un document qui appartient à la base de code, comme un README, reste un fichier. Pour obtenir un fichier pour quelque chose que Claude mettrait autrement dans Claude Docs, nommez le format, par exemple `.docx` ou un fichier Markdown dans le référentiel.

351 

352Pour désactiver le connecteur, ajoutez `claude.ai Claude Docs` à `deniedMcpServers` ou utilisez le bouton bascule `/mcp`, tous deux décrits dans [Désactiver les connecteurs claude.ai](/docs/fr/mcp#disable-claude-ai-connectors).

321 353 

322<h2 id="page-constraints">354<h2 id="page-constraints">

323 Contraintes de page355 Contraintes de page

Details

32 32 

33Pour vous déconnecter et vous réauthentifier, tapez `/logout` à l'invite Claude Code. La déconnexion réinitialise également votre état de configuration au premier lancement, de sorte que la prochaine fois que vous exécutez `claude`, il vous guide à nouveau à travers la connexion et la configuration.33Pour vous déconnecter et vous réauthentifier, tapez `/logout` à l'invite Claude Code. La déconnexion réinitialise également votre état de configuration au premier lancement, de sorte que la prochaine fois que vous exécutez `claude`, il vous guide à nouveau à travers la connexion et la configuration.

34 34 

35Pour rester connecté à plusieurs comptes à la fois, comme des comptes professionnels et personnels, attribuez à chaque compte son propre répertoire de configuration. Lorsque vous démarrez `claude`, définissez la variable d'environnement [`CLAUDE_CONFIG_DIR`](/docs/fr/env-vars#variables) sur le répertoire du compte que vous souhaitez utiliser. Chaque répertoire possède ses propres paramètres, historique de session et connexion claude.ai ou clé API. Par exemple, dans Bash ou Zsh, ajoutez cet alias à `~/.bashrc` ou `~/.zshrc` pour que `claude-work` utilise votre compte professionnel tandis que `claude` conserve votre compte personnel :

36 

37```bash theme={null}

38alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'

39```

40 

41Après avoir ouvert un nouveau terminal et exécuté `claude-work` pour la première fois, Claude Code vous guide à travers la connexion et la configuration du nouveau répertoire. Les répertoires séparés ne conservent pas deux connexions Claude Console [sans clé API](#sign-in-without-an-api-key) séparées, car Claude Code stocke ce type de connexion en dehors du répertoire de configuration.

42 

35Si vous avez des difficultés à vous connecter, consultez [dépannage de l'authentification](/docs/fr/troubleshoot-install#login-and-authentication).43Si vous avez des difficultés à vous connecter, consultez [dépannage de l'authentification](/docs/fr/troubleshoot-install#login-and-authentication).

36 44 

37<h2 id="set-up-team-authentication">45<h2 id="set-up-team-authentication">


160 168 

161Pour exiger que les connexions claude.ai des développeurs appartiennent à une organisation Anthropic spécifique, définissez [`forceLoginMethod`](/docs/fr/settings-reference#forceloginmethod) et [`forceLoginOrgUUID`](/docs/fr/settings-reference#forceloginorguuid) dans les [paramètres gérés](/docs/fr/managed-settings). Définissez `forceLoginOrgUUID` sur votre ID d'organisation, affiché dans les [paramètres d'administration claude.ai](https://claude.ai/admin-settings/organization) pour les organisations Claude for Teams ou Enterprise. Claude Code signale une erreur pour une connexion claude.ai à toute autre organisation et se ferme au démarrage si l'identifiant claude.ai en cours d'utilisation appartient à une organisation qui n'est pas répertoriée.169Pour exiger que les connexions claude.ai des développeurs appartiennent à une organisation Anthropic spécifique, définissez [`forceLoginMethod`](/docs/fr/settings-reference#forceloginmethod) et [`forceLoginOrgUUID`](/docs/fr/settings-reference#forceloginorguuid) dans les [paramètres gérés](/docs/fr/managed-settings). Définissez `forceLoginOrgUUID` sur votre ID d'organisation, affiché dans les [paramètres d'administration claude.ai](https://claude.ai/admin-settings/organization) pour les organisations Claude for Teams ou Enterprise. Claude Code signale une erreur pour une connexion claude.ai à toute autre organisation et se ferme au démarrage si l'identifiant claude.ai en cours d'utilisation appartient à une organisation qui n'est pas répertoriée.

162 170 

163Pour les connexions Claude Console, Claude Code utilise `forceLoginOrgUUID` pour présélectionner l'organisation sur la page de connexion Console lorsque vous la définissez sur un seul ID d'organisation Console, affiché sur [platform.claude.com/settings/organization](https://platform.claude.com/settings/organization). Il ne vérifie pas à quelle organisation appartient l'identifiant Console résultant, à la connexion ou au démarrage, et un développeur qui s'est connecté avec un compte Console avant que vous ayez déployé les clés reste connecté.171Pour les connexions Claude Console, Claude Code utilise `forceLoginOrgUUID` pour présélectionner l'organisation sur la page de connexion Console lorsque vous la définissez sur un seul ID d'organisation Console, affiché sur [platform.claude.com/settings/organization](https://platform.claude.com/settings/organization). Il ne vérifie pas à quelle organisation appartient l'identifiant Console résultant, à la connexion ou au démarrage. Un développeur qui s'est connecté avec un compte Console avant que vous ayez déployé les clés reste connecté, et cette clé enregistrée est bloquée sur une machine qui nécessite également la connexion [gateway](/docs/fr/claude-apps-gateway) ou dans une session qui sélectionne un fournisseur cloud.

164 172 

165Si vous définissez `forceLoginOrgUUID` dans un fichier de paramètres, Claude Code cesse d'offrir la [connexion Console sans clé](#sign-in-without-an-api-key) dans les sessions auxquelles ce fichier s'applique et crée une clé API à la place. Pour diriger les développeurs vers la connexion claude.ai à la place, définissez `forceLoginMethod` sur `"claudeai"`.173Si vous définissez `forceLoginOrgUUID` dans un fichier de paramètres, Claude Code cesse d'offrir la [connexion Console sans clé](#sign-in-without-an-api-key) dans les sessions auxquelles ce fichier s'applique et crée une clé API à la place. Pour diriger les développeurs vers la connexion claude.ai à la place, définissez `forceLoginMethod` sur `"claudeai"`.

166 174 


172 180 

173Déployez les clés via votre outil de gestion des appareils. Les [paramètres gérés par serveur](/docs/fr/server-managed-settings) ne s'appliquent qu'aux comptes déjà authentifiés dans votre organisation, ils ne peuvent donc pas rediriger la première connexion d'un développeur. Si votre organisation distribue également des paramètres gérés par serveur, définissez les clés aux deux endroits : les sources de [paramètres gérés ne fusionnent pas](/docs/fr/server-managed-settings#settings-precedence), et les paramètres gérés par serveur en cache remplacent le fichier géré par appareil, à l'exception de quelques [exceptions par clé](/docs/fr/server-managed-settings#per-key-exceptions-across-managed-sources). `forceLoginOrgUUID` et les valeurs `"claudeai"` et `"console"` de `forceLoginMethod` ne figurent pas parmi ces exceptions, donc gardez-les aux deux endroits.181Déployez les clés via votre outil de gestion des appareils. Les [paramètres gérés par serveur](/docs/fr/server-managed-settings) ne s'appliquent qu'aux comptes déjà authentifiés dans votre organisation, ils ne peuvent donc pas rediriger la première connexion d'un développeur. Si votre organisation distribue également des paramètres gérés par serveur, définissez les clés aux deux endroits : les sources de [paramètres gérés ne fusionnent pas](/docs/fr/server-managed-settings#settings-precedence), et les paramètres gérés par serveur en cache remplacent le fichier géré par appareil, à l'exception de quelques [exceptions par clé](/docs/fr/server-managed-settings#per-key-exceptions-across-managed-sources). `forceLoginOrgUUID` et les valeurs `"claudeai"` et `"console"` de `forceLoginMethod` ne figurent pas parmi ces exceptions, donc gardez-les aux deux endroits.

174 182 

183Dans un déploiement [gateway](/docs/fr/claude-apps-gateway), gardez également `forceLoginMethod` et `forceLoginOrgUUID` en dehors des [paramètres que la passerelle sert](/docs/fr/claude-apps-gateway-config#managed).

184 

175Les clés décident également si une session qui n'utilise pas d'identifiant de connexion peut démarrer. Voir [`forceLoginOrgUUID`](/docs/fr/settings-reference#forceloginorguuid) dans la référence des paramètres pour le comportement complet.185Les clés décident également si une session qui n'utilise pas d'identifiant de connexion peut démarrer. Voir [`forceLoginOrgUUID`](/docs/fr/settings-reference#forceloginorguuid) dans la référence des paramètres pour le comportement complet.

176 186 

177* **`ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` ou `apiKeyHelper`** : bloqués au démarrage, car l'appartenance à l'organisation ne peut pas être vérifiée pour un identifiant d'environnement187* **`ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` ou `apiKeyHelper`** : bloqués au démarrage. Sous `forceLoginOrgUUID`, l'appartenance à l'organisation ne peut pas être vérifiée pour un identifiant d'environnement, et sous `forceLoginMethod` l'identifiant se substituerait à la connexion requise. Lorsque les paramètres gérés nécessitent également la connexion [gateway](/docs/fr/claude-apps-gateway), Claude Code bloque une clé API enregistrée par une connexion Claude Console antérieure de la même manière. Voir [Administrator policy requires a Cloud gateway sign-in](/docs/fr/errors#administrator-policy-requires-a-cloud-gateway-sign-in)

178* **Sessions de fournisseur cloud telles que Amazon Bedrock** : non bloquées, car elles s'authentifient auprès de votre fournisseur cloud. Restreignez-les via vos politiques IAM cloud188* **Sessions de fournisseur cloud telles que Amazon Bedrock** : bloquées uniquement tant qu'une clé `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` ou `apiKeyHelper`, ou une clé API enregistrée par une connexion Claude Console antérieure, est toujours présente sur la machine. Supprimez-la et la session démarre. Ces sessions s'authentifient auprès de votre fournisseur cloud, dont les politiques d'accès les gouvernent

179* **[Profil Anthropic ou identifiants de fédération](#anthropic-profiles-and-federation-credentials)** : non bloqués, et les clés ne vérifient pas à quelle organisation le profil appartient189* **[Profil Anthropic ou identifiants de fédération](#anthropic-profiles-and-federation-credentials)** : non bloqués sauf si une clé `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` ou `apiKeyHelper`, ou une clé API enregistrée par une connexion Claude Console antérieure, est également présente sur la machine. Les clés ne vérifient pas à quelle organisation le profil appartient

180 190 

181<h2 id="credential-management">191<h2 id="credential-management">

182 Gestion des identifiants192 Gestion des identifiants


279 289 

280La commande ouvre le même flux d'autorisation du navigateur que `/login`, et le jeton s'affiche dans le terminal après que vous ayez approuvé l'accès dans le navigateur. Il ne sauvegarde le jeton nulle part ; copiez-le et définissez-le en tant que variable d'environnement `CLAUDE_CODE_OAUTH_TOKEN` partout où vous souhaitez vous authentifier :290La commande ouvre le même flux d'autorisation du navigateur que `/login`, et le jeton s'affiche dans le terminal après que vous ayez approuvé l'accès dans le navigateur. Il ne sauvegarde le jeton nulle part ; copiez-le et définissez-le en tant que variable d'environnement `CLAUDE_CODE_OAUTH_TOKEN` partout où vous souhaitez vous authentifier :

281 291 

282```bash theme={null}292<Tabs>

283export CLAUDE_CODE_OAUTH_TOKEN=your-token293 <Tab title="macOS, Linux, WSL">

284```294 ```bash theme={null}

295 export CLAUDE_CODE_OAUTH_TOKEN=your-token

296 ```

297 </Tab>

298 

299 <Tab title="Windows PowerShell">

300 ```powershell theme={null}

301 $env:CLAUDE_CODE_OAUTH_TOKEN = "your-token"

302 ```

303 </Tab>

304 

305 <Tab title="Windows CMD">

306 ```batch theme={null}

307 set CLAUDE_CODE_OAUTH_TOKEN=your-token

308 ```

309 </Tab>

310</Tabs>

285 311 

286Ce jeton s'authentifie avec votre abonnement Claude et nécessite un plan Pro, Max, Team ou Enterprise. Il ne peut faire que des requêtes de modèle, il ne peut donc pas établir de sessions [Remote Control](/docs/fr/remote-control) ou récupérer [les connecteurs claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai). Les serveurs MCP que vous configurez localement fonctionnent toujours.312Ce jeton s'authentifie avec votre abonnement Claude et nécessite un plan Pro, Max, Team ou Enterprise. Il ne peut faire que des requêtes de modèle, il ne peut donc pas établir de sessions [Remote Control](/docs/fr/remote-control) ou récupérer [les connecteurs claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai). Les serveurs MCP que vous configurez localement fonctionnent toujours.

287 313 

Details

9[Le mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) permet à Claude Code de s'exécuter sans invites de permission routinières en acheminant les appels d'outils via un classificateur qui bloque tout ce qui est irréversible, destructeur ou destiné en dehors de votre environnement. Les règles de refus et de demande explicite sont évaluées avant le classificateur et bloquent ou invitent toujours. Utilisez le bloc de paramètres `autoMode` pour indiquer à ce classificateur quels dépôts, buckets et domaines votre organisation approuve, afin qu'il cesse de bloquer les opérations internes routinières.9[Le mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) permet à Claude Code de s'exécuter sans invites de permission routinières en acheminant les appels d'outils via un classificateur qui bloque tout ce qui est irréversible, destructeur ou destiné en dehors de votre environnement. Les règles de refus et de demande explicite sont évaluées avant le classificateur et bloquent ou invitent toujours. Utilisez le bloc de paramètres `autoMode` pour indiquer à ce classificateur quels dépôts, buckets et domaines votre organisation approuve, afin qu'il cesse de bloquer les opérations internes routinières.

10 10 

11<Note>11<Note>

12 Le mode auto est disponible pour tous les utilisateurs sur chaque fournisseur, y compris l'API Anthropic, [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), Amazon Bedrock, la plateforme Agent de Google Cloud, Microsoft Foundry, et les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectées. Si Claude Code signale que le mode auto n'est pas disponible pour votre compte, consultez les [exigences complètes](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), qui couvrent également les modèles pris en charge et le contrôle au niveau de l'organisation sur les plans Team et Enterprise. Dans les versions v2.1.158 à v2.1.206, le mode auto sur Amazon Bedrock, la plateforme Agent de Google Cloud, Microsoft Foundry, et les sessions de passerelle d'applications Claude nécessitaient de définir `CLAUDE_CODE_ENABLE_AUTO_MODE=1` ; v2.1.207 a supprimé cette exigence.12 Cette page est la référence de configuration. L'activation et la désactivation du mode auto sont couvertes sur la page Modes de permission :

13 

14 * **Basculer vers le mode auto en cours de session, ou en sortir** : voir [Basculer les modes de permission](/docs/fr/permission-modes#switch-permission-modes)

15 * **Démarrer une session en mode auto** : voir [Démarrer dans un mode de permission différent](/docs/fr/permission-modes#start-in-a-different-mode)

13</Note>16</Note>

14 17 

15Par défaut, le classificateur approuve uniquement le répertoire de travail et les télécommandes configurées du dépôt actuel. Les actions comme pousser vers l'organisation de contrôle de source de votre entreprise ou écrire dans un bucket cloud d'équipe sont bloquées jusqu'à ce que vous les ajoutiez à `autoMode.environment`.18Le mode auto est disponible pour tous les utilisateurs sur chaque fournisseur, y compris l'API Anthropic, [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), Amazon Bedrock, la plateforme Agent de Google Cloud, Microsoft Foundry, et les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectées. Si Claude Code signale que le mode auto n'est pas disponible pour votre compte, consultez les [exigences complètes](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), qui couvrent également les modèles pris en charge et le contrôle au niveau de l'organisation sur les plans Team et Enterprise.

16 19 

17Pour savoir comment les sessions se retrouvent en mode auto et ce que le classificateur bloque par défaut, consultez [le mode auto sur la page Modes de permission](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode). Cette page est la référence de configuration.20Par défaut, le classificateur approuve uniquement le répertoire de travail et les télécommandes configurées du dépôt actuel. Les actions comme pousser vers l'organisation de contrôle de source de votre entreprise ou écrire dans un bucket cloud d'équipe sont bloquées jusqu'à ce que vous les ajoutiez à `autoMode.environment`.

18 21 

19Cette page couvre comment :22Cette page couvre comment :

20 23 

21* [Ajouter un point de contrôle humain](#add-a-human-checkpoint) pour les poussées et les demandes de tirage avec `permissions.ask`24* [Ajouter un point de contrôle humain](#add-a-human-checkpoint) pour les poussées et les demandes de tirage avec `permissions.ask`

22* [Choisir où définir les règles](#where-the-classifier-reads-configuration) dans CLAUDE.md, les paramètres utilisateur et les paramètres gérés

23* [Définir l'infrastructure approuvée](#define-trusted-infrastructure) avec `autoMode.environment`25* [Définir l'infrastructure approuvée](#define-trusted-infrastructure) avec `autoMode.environment`

24* [Générer des entrées d'environnement](#generate-environment-entries) avec `/auto-mode-setup`26* [Générer des entrées d'environnement](#generate-environment-entries) avec `/auto-mode-setup`

25* [Remplacer les règles de blocage et d'autorisation](#override-the-block-and-allow-rules) quand les valeurs par défaut ne correspondent pas à votre pipeline

26* [Modifier les règles depuis `/permissions`](#edit-rules-from-permissions) sans ouvrir un fichier de paramètres

27* [Acheminer toutes les commandes shell via le classificateur](#route-all-shell-commands-through-the-classifier) avec `autoMode.classifyAllShell`

28* [Inspectez votre configuration effective](#inspect-the-defaults-and-your-effective-config) avec les sous-commandes `claude auto-mode`

29* [Examinez les refus](#review-denials) pour savoir ce qu'il faut ajouter ensuite27* [Examinez les refus](#review-denials) pour savoir ce qu'il faut ajouter ensuite

30 28 

31<h2 id="common-boundaries">29<h2 id="common-boundaries">


34 32 

35Le mode auto permet les poussées vers n'importe quelle branche du référentiel sur lequel vous travaillez, y compris la branche par défaut, et la création de demandes de tirage par défaut. Une branche non-par défaut dont le nom la marque comme cible de déploiement ou de publication, comme `production`, `release`, ou `gh-pages`, n'est pas couverte par ce défaut : le classificateur juge une poussée là-bas selon ses propres termes, y compris comme un déploiement en production. Le contenu de la poussée est également toujours vérifié, donc une poussée forcée, un secret entrant dans le commit, ou une modification qui enverrait des secrets en dehors du référentiel lorsque CI ou un pipeline de déploiement l'exécute reste bloquée.33Le mode auto permet les poussées vers n'importe quelle branche du référentiel sur lequel vous travaillez, y compris la branche par défaut, et la création de demandes de tirage par défaut. Une branche non-par défaut dont le nom la marque comme cible de déploiement ou de publication, comme `production`, `release`, ou `gh-pages`, n'est pas couverte par ce défaut : le classificateur juge une poussée là-bas selon ses propres termes, y compris comme un déploiement en production. Le contenu de la poussée est également toujours vérifié, donc une poussée forcée, un secret entrant dans le commit, ou une modification qui enverrait des secrets en dehors du référentiel lorsque CI ou un pipeline de déploiement l'exécute reste bloquée.

36 34 

37<Info>Avant v2.1.211, le classificateur permettait les poussées uniquement vers votre branche de travail, les branches créées par Claude, et les poussées régulières vers la branche par défaut.</Info>

38 

39Si vous souhaitez un point de contrôle humain avant les commandes de poussée et de demande de tirage de Claude, ajoutez des règles de permission : les [recettes ci-dessous](#add-a-human-checkpoint) maintiennent le mode auto activé pour tout le reste.35Si vous souhaitez un point de contrôle humain avant les commandes de poussée et de demande de tirage de Claude, ajoutez des règles de permission : les [recettes ci-dessous](#add-a-human-checkpoint) maintiennent le mode auto activé pour tout le reste.

40 36 

41<h3 id="add-a-human-checkpoint">37<h3 id="add-a-human-checkpoint">


79| À l'échelle de l'organisation | [Paramètres gérés](/docs/fr/server-managed-settings) | Infrastructure de confiance distribuée à tous les développeurs |75| À l'échelle de l'organisation | [Paramètres gérés](/docs/fr/server-managed-settings) | Infrastructure de confiance distribuée à tous les développeurs |

80| Drapeau `--settings` ou Agent SDK | JSON en ligne | Remplacements par invocation pour l'automatisation |76| Drapeau `--settings` ou Agent SDK | JSON en ligne | Remplacements par invocation pour l'automatisation |

81 77 

82Le classificateur ne lit pas `autoMode` à partir des paramètres de projet dans `.claude/settings.json` ou `.claude/settings.local.json`. Les deux fichiers se trouvent dans le répertoire du dépôt, donc un dépôt archivé ou une étape de construction pourrait autrement injecter ses propres règles d'autorisation. Avant la v2.1.207, le classificateur lisait également `.claude/settings.local.json` ; déplacez tout bloc `autoMode` dans ce fichier vers `~/.claude/settings.json`. L'exclusion de `.claude/settings.local.json` ferme également le cas où un dépôt valide le fichier ou un outil local ou une étape de construction l'écrit.78Le classificateur ne lit pas `autoMode` à partir des paramètres de projet dans `.claude/settings.json` ou `.claude/settings.local.json`. Les deux fichiers se trouvent dans le répertoire du dépôt, donc un dépôt archivé ou une étape de construction pourrait autrement injecter ses propres règles d'autorisation. Déplacez tout bloc `autoMode` dans `.claude/settings.local.json` vers `~/.claude/settings.json`.

83 79 

84Les entrées de chaque portée sont combinées. Un développeur peut étendre `environment`, `allow`, `soft_deny` et `hard_deny` avec des entrées personnelles mais ne peut pas supprimer les entrées que les paramètres gérés fournissent. Parce que les règles d'autorisation agissent comme des exceptions aux règles de blocage logiciel à l'intérieur du classificateur, une entrée `allow` ajoutée par un développeur peut remplacer une entrée `soft_deny` d'organisation : la combinaison est additive, pas une limite de politique stricte.80Les entrées de chaque portée sont combinées. Un développeur peut étendre `environment`, `allow`, `soft_deny` et `hard_deny` avec des entrées personnelles mais ne peut pas supprimer les entrées que les paramètres gérés fournissent. Parce que les règles d'autorisation agissent comme des exceptions aux règles de blocage logiciel à l'intérieur du classificateur, une entrée `allow` ajoutée par un développeur peut remplacer une entrée `soft_deny` d'organisation : la combinaison est additive, pas une limite de politique stricte.

85 81 


93 89 

94Pour la plupart des organisations, `autoMode.environment` est le seul champ que vous devez définir. Il indique au classificateur quels dépôts, buckets et domaines sont de confiance : le classificateur l'utilise pour décider ce que signifie « externe », donc toute destination non listée est une cible d'exfiltration potentielle.90Pour la plupart des organisations, `autoMode.environment` est le seul champ que vous devez définir. Il indique au classificateur quels dépôts, buckets et domaines sont de confiance : le classificateur l'utilise pour décider ce que signifie « externe », donc toute destination non listée est une cible d'exfiltration potentielle.

95 91 

96À partir de Claude Code v2.1.198, `claude auto-mode defaults` affiche trois types d'entrées d'environnement. Les versions antérieures à v2.1.195 affichent uniquement les cinq premiers emplacements de confiance.92`claude auto-mode defaults` affiche trois types d'entrée d'environnement.

97 93 

98* **Emplacements de contexte** : décrivez votre organisation, votre pile technologique et votre posture de sécurité afin que le classificateur lise les autres règles dans votre contexte. Chacun par défaut à `None configured` ou à l'hypothèse conservatrice nommée à côté :94* **Emplacements de contexte** : décrivez votre organisation, votre pile technologique et votre posture de sécurité afin que le classificateur lise les autres règles dans votre contexte. Chacun par défaut à `None configured` ou à l'hypothèse conservatrice nommée à côté :

99 * **Organisation**95 * **Organisation**

100 * **Utilisation principale de Claude Code** : par défaut développement logiciel96 * **Utilisation principale de Claude Code** : par défaut développement logiciel

101 * **Fournisseur(s) cloud**97 * **Fournisseur(s) cloud**

102 * **Visibilité du dépôt** : un dépôt est supposé privé sauf si son hôte distant et son nom l'indiquent autrement, ou le classificateur lit une vérification de visibilité antérieure dans la conversation montrant qu'il est public.98 * **Visibilité du dépôt** : un dépôt est supposé privé sauf si son hôte distant et son nom indiquent le contraire, ou si le classificateur lit une vérification de visibilité plus tôt dans la conversation montrant qu'il est public.

103 99 

104 Dans les demandes du classificateur envoyées par Claude Code lui-même, le classificateur lit vos messages et les commandes que Claude exécute, pas leur sortie. La preuve doit être quelque chose que le classificateur peut lire, comme votre propre message nommant le dépôt comme public ; la sortie d'un `gh repo view` seul ne l'atteint pas. La vérification des preuves de transcription nécessite Claude Code v2.1.200 ou ultérieur100 Dans les demandes du classificateur envoyées par Claude Code lui-même, le classificateur lit vos messages et les commandes que Claude exécute, pas leur sortie. La preuve doit être quelque chose que le classificateur peut lire, comme votre propre message nommant le dépôt comme public ; la sortie d'un `gh repo view` seul ne l'atteint pas.

105 * **Partage interne / hébergement d'extraits** : les services publics de pâte et de gist sont traités comme en dehors de la limite de confiance jusqu'à ce que vous en nomiez un101 * **Partage interne / hébergement d'extraits** : les services publics de pâte et de gist sont traités comme en dehors de la limite de confiance jusqu'à ce que vous en nommez un

106 * **CLI spécifiques à l'organisation**102 * **CLIs spécifiques à l'organisation**

107 * **Gestion des secrets**103 * **Gestion des secrets**

108 * **Cibles de déploiement CI/CD**104 * **Cibles de déploiement CI/CD**

109 * **Posture réseau**105 * **Posture réseau**

110 * **Confinement d'hôte** : par défaut une machine de développeur ordinaire ou un exécuteur CI avec internet ouvert. Si Claude Code s'exécute dans un conteneur, une VM ou un pod avec une liste d'autorisation de sortie ou des voisins qu'il ne doit pas toucher, nommez les hôtes autorisés, si le point de terminaison des métadonnées cloud doit être accessible, et quel projet cloud, cluster ou registre la tâche utilise et sous quelle identité. Jusqu'à ce que cette entrée nomme cette identité, le classificateur [bloque](/docs/fr/permission-modes#what-the-classifier-blocks-by-default) les demandes pour les propres identifiants de l'hôte. Nécessite Claude Code v2.1.257 ou ultérieur106 * **Confinement d'hôte** : par défaut une machine de développeur ordinaire ou un exécuteur CI avec internet ouvert. Si Claude Code s'exécute dans un conteneur, une VM ou un pod avec une liste d'autorisation de sortie ou des voisins qu'il ne doit pas toucher, nommez les hôtes autorisés, si le point de terminaison des métadonnées cloud doit être accessible, et quel projet cloud, cluster ou registre la tâche utilise et sous quelle identité. Jusqu'à ce que cette entrée nomme cette identité, le classificateur [bloque](/docs/fr/permission-modes#what-the-classifier-blocks-by-default) les demandes pour les propres identifiants de l'hôte. Nécessite Claude Code v2.1.257 ou ultérieur

111 * **Espaces de déploiement protégés / environnements** : revient à l'heuristique des cibles distantes sensibles jusqu'à ce que vous les nomiez107 * **Espaces de déploiement protégés / environnements** : revient à l'heuristique des cibles distantes sensibles jusqu'à ce que vous les nommez

112 * **Rétention des données / déclassification**108 * **Rétention des données / déclassification**

113* **Emplacements de confiance** : nommez ce que le classificateur traite comme à l'intérieur de votre limite. Les emplacements sont Dépôt de confiance, Contrôle de source, Domaines internes de confiance, Buckets cloud de confiance, Services internes clés et Registre de paquets interne. Les entrées de dépôt et de contrôle de source par défaut au dépôt de travail et ses télécommandes configurées. Chaque autre emplacement de confiance par défaut à `None configured`, donc rien d'autre n'est de confiance jusqu'à ce que vous l'ajoutiez. La visibilité d'un dépôt ne s'applique qu'au matériel confidentiel : un dépôt privé est une destination acceptable pour le matériel confidentiel, mais rendre un dépôt privé ne vide jamais les secrets ou les données personnelles ou confiées en lui, et le classificateur traite le contenu porté, réorienté ou d'abord lu de l'extérieur du dépôt de travail comme n'étant pas le propre travail de ce dépôt. Cette portée nécessite Claude Code v2.1.203 ou ultérieur.109* **Emplacements de confiance** : nommez ce que le classificateur traite comme à l'intérieur de votre limite. Les emplacements sont Dépôt de confiance, Contrôle de source, Domaines internes de confiance, Buckets cloud de confiance, Services internes clés et Registre de paquets interne. Les entrées de dépôt et de contrôle de source par défaut au dépôt de travail et ses télécommandes configurées. Tous les autres emplacements de confiance par défaut à `None configured`, donc rien d'autre n'est de confiance jusqu'à ce que vous l'ajoutiez. La visibilité d'un dépôt ne limite que le matériel confidentiel : un dépôt privé est une destination acceptable pour le matériel confidentiel, mais rendre un dépôt privé n'autorise jamais les secrets ou les données personnelles ou confiées à y entrer, et le classificateur traite le contenu porté, réorienté ou d'abord lu de l'extérieur du dépôt de travail comme n'étant pas le propre travail de ce dépôt.

114* **Emplacements de sensibilité** : nommez ce que les règles de protection traitent comme à haut risque. Les emplacements sont Emplacements de données sensibles et audiences, Cibles distantes sensibles et Portées IaC protégées. Chacun par défaut à une large heuristique, comme traiter tout hôte ou espace de noms dont le nom porte `prod` ou `production` comme une cible distante sensible, donc les règles de protection sont actives avant que vous configuriez quoi que ce soit. Nommer des cibles concrètes dans un emplacement de sensibilité fait appliquer ces règles aux cibles nommées au lieu de l'heuristique.110* **Emplacements de sensibilité** : nommez ce que les règles de protection traitent comme à haut risque. Les emplacements sont Emplacements de données sensibles et audiences, Cibles distantes sensibles et Étendues IaC protégées. Chacun par défaut à une large heuristique, comme traiter tout hôte ou espace de noms dont le nom porte `prod` ou `production` comme une cible distante sensible, donc les règles de protection sont actives avant que vous configuriez quoi que ce soit. Nommer des cibles concrètes dans un emplacement de sensibilité fait appliquer ces règles aux cibles nommées au lieu de l'heuristique.

115 

116<Info>Avant v2.1.211, les emplacements de contexte incluaient également une entrée Branches par défaut / protégées qui traitait `main` et `master` comme protégées jusqu'à ce que vous en nomiez d'autres. v2.1.211 l'a supprimée : [les poussées vers n'importe quelle branche du dépôt sur lequel vous travaillez](#common-boundaries) sont autorisées par défaut, donc il n'y a pas de défaut de branche protégée à configurer.</Info>

117 111 

118Pour ajouter vos propres entrées aux côtés des valeurs par défaut, incluez la chaîne littérale `"$defaults"` dans le tableau. Les entrées par défaut sont épissées à cette position, donc vos entrées personnalisées peuvent aller avant ou après elles.112Pour ajouter vos propres entrées aux côtés des valeurs par défaut, incluez la chaîne littérale `"$defaults"` dans le tableau. Les entrées par défaut sont épissées à cette position, donc vos entrées personnalisées peuvent aller avant ou après elles.

119 113 


135 129 

136Après avoir enregistré vos paramètres, exécutez `claude auto-mode config` pour [confirmer que les règles effectives](#inspect-the-defaults-and-your-effective-config) incluent vos entrées.130Après avoir enregistré vos paramètres, exécutez `claude auto-mode config` pour [confirmer que les règles effectives](#inspect-the-defaults-and-your-effective-config) incluent vos entrées.

137 131 

138Les entrées sont de la prose, pas des regex ou des modèles d'outils. Le classificateur les lit comme des règles en langage naturel. Écrivez-les comme vous décririez votre infrastructure à un nouvel ingénieur. Une section d'environnement approfondie couvre :132Les entrées sont en prose, pas en regex ou en motifs d'outils. Le classificateur les lit comme des règles en langage naturel. Écrivez-les comme vous décririez votre infrastructure à un nouvel ingénieur. Une section d'environnement approfondie couvre :

139 133 

140* **Organisation** : le nom de votre entreprise et ce pour quoi Claude Code est principalement utilisé, comme le développement logiciel, l'automatisation de l'infrastructure ou l'ingénierie des données134* **Organisation** : le nom de votre entreprise et ce pour quoi Claude Code est principalement utilisé, comme le développement logiciel, l'automatisation de l'infrastructure ou l'ingénierie des données

141* **Contrôle de source** : chaque organisation GitHub, GitLab ou Bitbucket vers laquelle vos développeurs poussent135* **Contrôle de source** : chaque organisation GitHub, GitLab ou Bitbucket vers laquelle vos développeurs poussent

142* **Fournisseurs cloud et buckets de confiance** : noms ou préfixes de buckets que Claude devrait pouvoir lire et écrire136* **Fournisseurs cloud et buckets de confiance** : noms ou préfixes de buckets que Claude devrait pouvoir lire et écrire

143* **Domaines internes de confiance** : noms d'hôtes pour les API, tableaux de bord et services à l'intérieur de votre réseau, comme `*.internal.example.com`137* **Domaines internes de confiance** : noms d'hôtes pour les API, tableaux de bord et services à l'intérieur de votre réseau, comme `*.internal.example.com`

144* **Services internes clés** : CI, registres d'artefacts, index de paquets internes, outils d'incident138* **Services internes clés** : CI, registres d'artefacts, index de paquets internes, outils d'incident

145* **Registre de paquets interne** : le registre npm, PyPI ou autre privé par lequel les installations doivent être acheminées, donc les installations qui le contournent pour un registre public sont bloquées139* **Registre de paquets interne** : le registre npm, PyPI ou autre privé par lequel les installations doivent être acheminées, afin que les installations qui le contournent pour un registre public soient bloquées

146* **Emplacements de données sensibles et audiences** : les buckets, bases de données ou chemins qui contiennent des données personnelles, des données commerciales confidentielles, des identifiants, des données réglementées ou du matériel similaire sensible, et les audiences avec lesquelles les données de chaque emplacement peuvent être partagées, afin que le classificateur protège ces emplacements au lieu de deviner à partir du contenu. Claude Code v2.1.195 à v2.1.197 nomme cette entrée Emplacements PII / données réglementées et couvrent uniquement les emplacements qui contiennent des données personnelles ou réglementées, sans la dimension d'audience140* **Emplacements de données sensibles et audiences** : les buckets, bases de données ou chemins qui contiennent des données personnelles, des données commerciales confidentielles, des identifiants, des données réglementées ou du matériel similaire sensible, et les audiences avec lesquelles les données dans chaque emplacement peuvent être partagées, afin que le classificateur protège ces emplacements au lieu de deviner à partir du contenu.

147* **Cibles distantes sensibles** : les espaces de noms, hôtes ou conteneurs qui comptent comme production, donc les shells distants et les transferts de port vers eux ont besoin de votre approbation explicite141* **Cibles distantes sensibles** : les espaces de noms, hôtes ou conteneurs qui comptent comme production, afin que les shells distants et les transferts de port vers eux aient besoin de votre approbation explicite

148* **Portées IaC protégées** : les ressources d'infrastructure dont l'application ou la destruction doivent toujours vous obliger à nommer le changement142* **Étendues IaC protégées** : les ressources d'infrastructure dont l'application ou la destruction doivent toujours vous obliger à nommer le changement

149* **Contexte supplémentaire** : contraintes de secteur réglementé, infrastructure multi-locataire ou exigences de conformité qui affectent ce que le classificateur devrait traiter comme risqué143* **Contexte supplémentaire** : contraintes de secteur réglementé, infrastructure multi-locataire ou exigences de conformité qui affectent ce que le classificateur devrait traiter comme risqué

150 144 

151Le Registre de paquets interne, les Emplacements de données sensibles et audiences, les Cibles distantes sensibles et les entrées Portées IaC protégées nécessitent Claude Code v2.1.195 ou ultérieur. Les versions antérieures les lisent toujours comme du contexte simple mais n'ont pas les règles intégrées qui les ciblent.

152 

153Un modèle de démarrage utile : remplissez les champs entre crochets et supprimez les lignes qui ne s'appliquent pas.145Un modèle de démarrage utile : remplissez les champs entre crochets et supprimez les lignes qui ne s'appliquent pas.

154 146 

155```json theme={null}147```json theme={null}


169}161}

170```162```

171 163 

172Plus le contexte que vous donnez est spécifique, mieux le classificateur peut distinguer les opérations internes de routine des tentatives d'exfiltration.

173 

174Vous n'avez pas besoin de tout remplir à la fois. Un déploiement raisonnable : commencez par les valeurs par défaut et ajoutez votre organisation de contrôle de source et vos services internes clés, ce qui résout les faux positifs les plus courants comme pousser vers vos propres dépôts. Ajoutez ensuite les domaines de confiance et les buckets cloud. Remplissez le reste à mesure que les blocages surviennent.164Vous n'avez pas besoin de tout remplir à la fois. Un déploiement raisonnable : commencez par les valeurs par défaut et ajoutez votre organisation de contrôle de source et vos services internes clés, ce qui résout les faux positifs les plus courants comme pousser vers vos propres dépôts. Ajoutez ensuite les domaines de confiance et les buckets cloud. Remplissez le reste à mesure que les blocages surviennent.

175 165 

176<h2 id="generate-environment-entries">166<h2 id="generate-environment-entries">


307 Acheminer toutes les commandes shell via le classificateur297 Acheminer toutes les commandes shell via le classificateur

308</h2>298</h2>

309 299 

310Par défaut, les règles étroites Bash et PowerShell telles que `Bash(npm test)` restent en vigueur en mode auto, et Claude Code les résout avant que le classificateur ne s'exécute, sauf si la commande porte des [domaines autorisés par commande](/docs/fr/sandboxing#per-command-allowed-domains-in-auto-mode). Claude Code suspend uniquement les règles larges qui accordent l'exécution de code arbitraire, telles que `Bash(*)` ou les interpréteurs avec caractères génériques, ainsi que chaque règle qui nomme [`Monitor`](/docs/fr/tools-reference#monitor-tool), car les commandes Monitor s'exécutent via le shell. Cela signifie qu'une règle étroite peut toujours laisser passer un argument destructeur sans que le classificateur ne le voie, par exemple un chemin de script ou un drapeau que le préfixe de la règle n'avait pas anticipé.300Par défaut, les règles étroites Bash et PowerShell telles que `Bash(npm test)` restent en vigueur en mode auto. Claude Code les résout avant que le classificateur ne s'exécute, sauf si la commande porte des [domaines autorisés par commande](/docs/fr/sandboxing#per-command-allowed-domains-in-auto-mode). Claude Code suspend uniquement les règles larges qui accordent l'exécution de code arbitraire, telles que `Bash(*)` ou les interpréteurs avec caractères génériques, ainsi que chaque règle qui nomme [`Monitor`](/docs/fr/tools-reference#monitor-tool), car les commandes Monitor s'exécutent via le shell. Cela signifie qu'une règle étroite peut toujours laisser passer un argument destructeur sans que le classificateur ne le voie, par exemple un chemin de script ou un drapeau que le préfixe de la règle n'avait pas anticipé.

311 301 

312Définissez `autoMode.classifyAllShell` sur `true` pour suspendre chaque règle d'autorisation Bash et PowerShell pendant que le mode auto est actif, afin que le classificateur évalue chaque commande shell indépendamment de votre liste d'autorisation.302Définissez `autoMode.classifyAllShell` sur `true` pour suspendre chaque règle d'autorisation Bash et PowerShell pendant que le mode auto est actif, afin que le classificateur évalue chaque commande shell indépendamment de votre liste d'autorisation, sauf les [suppressions de chemins critiques](/docs/fr/permission-modes#critical-paths).

313 303 

314```json theme={null}304```json theme={null}

315{305{


323 313 

324Le paramètre s'applique uniquement pendant que le mode auto est actif, et vos règles d'autorisation se comportent normalement dans les autres modes de permission.314Le paramètre s'applique uniquement pendant que le mode auto est actif, et vos règles d'autorisation se comportent normalement dans les autres modes de permission.

325 315 

326<Note>

327 `autoMode.classifyAllShell` nécessite Claude Code v2.1.193 ou version ultérieure. Les versions antérieures ignorent la clé et continuent à appliquer les règles d'autorisation shell étroites en mode auto.

328</Note>

329 

330<h2 id="inspect-the-defaults-and-your-effective-config">316<h2 id="inspect-the-defaults-and-your-effective-config">

331 Inspectez les paramètres par défaut et votre configuration effective317 Inspectez les paramètres par défaut et votre configuration effective

332</h2>318</h2>


375claude auto-mode critique361claude auto-mode critique

376```362```

377 363 

378Exécutez `claude auto-mode config` après avoir enregistré vos paramètres pour confirmer que les règles effectives sont celles que vous attendez, avec `"$defaults"` développé en place. Si vous avez écrit des règles personnalisées, `claude auto-mode critique` les examine et signale les entrées ambiguës, redondantes ou susceptibles de causer des faux positifs.364Si vous avez écrit des règles personnalisées, `claude auto-mode critique` les examine et signale les entrées ambiguës, redondantes ou susceptibles de causer des faux positifs.

379 365 

380Pour abandonner vos personnalisations et revenir aux paramètres par défaut intégrés, exécutez la sous-commande reset. Elle nécessite Claude Code v2.1.212 ou version ultérieure et supprime la section `autoMode` de votre fichier de paramètres utilisateur :366Pour abandonner vos personnalisations et revenir aux paramètres par défaut intégrés, exécutez la sous-commande reset. Elle nécessite Claude Code v2.1.212 ou version ultérieure et supprime la section `autoMode` de votre fichier de paramètres utilisateur :

381 367 


397 Corriger un refus avec une règle d'autorisation, une entrée d'environnement ou un réessai383 Corriger un refus avec une règle d'autorisation, une entrée d'environnement ou un réessai

398</h3>384</h3>

399 385 

400Pour voir ce que le classificateur a bloqué, trouvez l'appel d'outil dans la conversation. Si l'appel apparaît raccourci ou plié dans une ligne de résumé telle que `Ran 3 shell commands`, appuyez sur `Ctrl+O` pour ouvrir le [visionneuse de transcription](/docs/fr/interactive-mode#transcript-viewer), qui l'étend.386Pour voir ce que le classificateur a bloqué, trouvez l'appel d'outil dans la conversation. Si l'appel apparaît raccourci ou plié dans une ligne de résumé telle que `Ran 3 shell commands`, appuyez sur `Ctrl+O` pour ouvrir la [visionneuse de transcription](/docs/fr/interactive-mode#transcript-viewer), qui l'étend.

401 387 

402Deux autres endroits à l'écran qui signalent les refus omettent la commande ou l'URL : l'avis près de la zone de saisie, tel que `bash denied by auto mode · [Data Exfiltration] · /permissions`, indique l'outil et la raison, et l'onglet **Recently denied** répertorie une commande shell par la description que Claude a écrite pour elle. Pour capturer l'entrée exacte de ces refus par programmation, ajoutez un [`PermissionDenied` hook](/docs/fr/hooks#permissiondenied), qui la reçoit en tant que `tool_input`.388Deux autres endroits à l'écran qui signalent les refus omettent la commande ou l'URL : l'avis près de la zone de saisie, tel que `bash denied by auto mode · [Data Exfiltration] · /permissions`, indique l'outil et la raison, et l'onglet **Recently denied** répertorie une commande shell par la description que Claude a écrite pour elle. Pour capturer l'entrée exacte de ces refus par programmation, ajoutez un [`PermissionDenied` hook](/docs/fr/hooks#permissiondenied), qui la reçoit en tant que `tool_input`.

403 389 


409 395 

410Vous pouvez ajouter l'entrée d'environnement ou la règle `allow` à partir de l'onglet [**Auto mode** de la boîte de dialogue `/permissions`](#edit-rules-from-permissions).396Vous pouvez ajouter l'entrée d'environnement ou la règle `allow` à partir de l'onglet [**Auto mode** de la boîte de dialogue `/permissions`](#edit-rules-from-permissions).

411 397 

412Dans la plupart des sessions, le nom de la raison nomme la règle que le classificateur a mise en correspondance, entre crochets, telle que `[Data Exfiltration]` ou `[Production Deploy]`, et certaines sessions exécutent un modèle de classificateur qui ajoute une brève explication. Claude Code sélectionne le modèle de classificateur, donc la forme que vous voyez n'est pas quelque chose que vous configurez.398Le texte entre crochets, tel que `[Data Exfiltration]`, est le nom de la règle que le classificateur a mise en correspondance. Pour lire le libellé complet de cette règle, consultez [Inspecter les valeurs par défaut et votre configuration effective](#inspect-the-defaults-and-your-effective-config).

413 399 

414<h3 id="fix-repeated-denials">400<h3 id="fix-repeated-denials">

415 Corriger les refus répétés401 Corriger les refus répétés


417 403 

418Les refus répétés pour la même destination signifient généralement que le classificateur manque de contexte. Ajoutez cette destination à `autoMode.environment`, ou [exécutez `/auto-mode-setup`](#generate-environment-entries) pour que Claude Code rédige les entrées, puis exécutez `claude auto-mode config` pour confirmer que la modification a pris effet.404Les refus répétés pour la même destination signifient généralement que le classificateur manque de contexte. Ajoutez cette destination à `autoMode.environment`, ou [exécutez `/auto-mode-setup`](#generate-environment-entries) pour que Claude Code rédige les entrées, puis exécutez `claude auto-mode config` pour confirmer que la modification a pris effet.

419 405 

420Pour réagir aux refus par programmation, utilisez le [`PermissionDenied` hook](/docs/fr/hooks#permissiondenied).

421 

422<h2 id="see-also">406<h2 id="see-also">

423 Voir aussi407 Voir aussi

424</h2>408</h2>

Details

46 46 

47* **En un seul message** : demandez à Claude d'exécuter la vérification et d'itérer dans le même message, comme dans le tableau ci-dessus.47* **En un seul message** : demandez à Claude d'exécuter la vérification et d'itérer dans le même message, comme dans le tableau ci-dessus.

48* **Sur une session** : définissez la vérification comme une [condition `/goal`](/docs/fr/goal). Un évaluateur séparé la revérifie après chaque tour et Claude continue de travailler jusqu'à ce que l'objectif soit résolu. Si Claude stagne, Claude Code finit par arrêter l'exécution avec l'objectif toujours défini — voir [comment l'évaluation de /goal fonctionne](/docs/fr/goal#how-evaluation-works).48* **Sur une session** : définissez la vérification comme une [condition `/goal`](/docs/fr/goal). Un évaluateur séparé la revérifie après chaque tour et Claude continue de travailler jusqu'à ce que l'objectif soit résolu. Si Claude stagne, Claude Code finit par arrêter l'exécution avec l'objectif toujours défini — voir [comment l'évaluation de /goal fonctionne](/docs/fr/goal#how-evaluation-works).

49* **Comme une porte déterministe** : un [hook Stop](/docs/fr/hooks#stop) exécute votre vérification en tant que script et bloque la fin du tour jusqu'à ce qu'elle réussisse. Claude Code remplace le hook et termine le tour après 8 blocages consécutifs.49* **Comme une porte déterministe** : un [hook Stop](/docs/fr/hooks#stop) exécute votre vérification en tant que script et bloque la fin du tour jusqu'à ce qu'elle réussisse. [Stop input](/docs/fr/hooks#stop-input) couvre le plafond sur les blocages consécutifs.

50* **Par un deuxième avis** : un [sous-agent de vérification](/docs/fr/sub-agents) ou un [flux de travail dynamique](/docs/fr/workflows) qui vérifie ses propres conclusions a un modèle frais qui essaie de réfuter le résultat, de sorte que l'agent qui fait le travail n'est pas celui qui le note.50* **Par un deuxième avis** : un [sous-agent de vérification](/docs/fr/sub-agents) ou un [flux de travail dynamique](/docs/fr/workflows) qui vérifie ses propres conclusions a un modèle frais qui essaie de réfuter le résultat, de sorte que l'agent qui fait le travail n'est pas celui qui le note.

51 51 

52Chaque étape échange la configuration pour l'attention. La version avec message fonctionne sur n'importe quelle tâche aujourd'hui. Les versions `/goal` et Stop hook sont ce qui permet à une exécution sans surveillance de se terminer correctement sans vous.52Chaque étape échange la configuration pour l'attention. La version avec message fonctionne sur n'importe quelle tâche aujourd'hui. Les versions `/goal` et Stop hook sont ce qui permet à une exécution sans surveillance de se terminer correctement sans vous.


209 Pour obtenir moins de prompts sans renoncer au contrôle, pré-approuvez les outils auxquels vous faites confiance avec `/permissions` et laissez les commandes en sandbox s'exécuter sans demander avec `/sandbox`. Basculez en mode Manuel lorsque vous souhaitez approuver les éditions et les commandes vous-même.209 Pour obtenir moins de prompts sans renoncer au contrôle, pré-approuvez les outils auxquels vous faites confiance avec `/permissions` et laissez les commandes en sandbox s'exécuter sans demander avec `/sandbox`. Basculez en mode Manuel lorsque vous souhaitez approuver les éditions et les commandes vous-même.

210</Tip>210</Tip>

211 211 

212Sur les plans Pro, Max et Team, le mode auto est le [mode de permission de démarrage intégré](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour les sessions de terminal interactif et VS Code : un modèle classificateur séparé examine la plupart des actions au lieu de vous et bloque uniquement ce qui semble risqué, comme l'escalade de portée, l'infrastructure inconnue ou les actions motivées par du contenu hostile.212Avec Claude Code v2.1.283 ou version ultérieure, le mode auto est le [mode de permission de démarrage intégré](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour les sessions de terminal interactif et VS Code : un modèle classificateur séparé examine la plupart des actions au lieu de vous et bloque uniquement ce qui semble risqué, comme l'escalade de portée, l'infrastructure inconnue ou les actions motivées par du contenu hostile. Sur les versions antérieures, le mode auto est le mode de permission de démarrage intégré uniquement sur les plans Pro, Max et Team.

213 213 

214En mode Manuel, le mode de permission de démarrage intégré sur les autres plans, Claude Code demande avant les actions qui pourraient modifier votre système : écritures de fichiers, commandes Bash, outils MCP. C'est sûr mais fastidieux. Après la dixième approbation, vous cliquez simplement plutôt que de réviser. Deux outils réduisent ces interruptions en mode Manuel et s'appliquent également en mode auto :214En mode Manuel, Claude Code demande avant les actions qui pourraient modifier votre système : écritures de fichiers, commandes Bash, outils MCP. C'est sûr mais fastidieux. Après la dixième approbation, vous cliquez simplement plutôt que de réviser. Deux outils réduisent ces interruptions en mode Manuel et s'appliquent également en mode auto :

215 215 

216* **Listes blanches de permissions** : permettre des outils spécifiques que vous savez être sûrs, comme `npm run lint` ou `git commit`216* **Listes blanches de permissions** : permettre des outils spécifiques que vous savez être sûrs, comme `npm run lint` ou `git commit`

217* **Sandboxing** : activer l'isolation au niveau du système d'exploitation qui restreint l'accès au système de fichiers et au réseau, permettant à Claude de travailler plus librement dans des limites définies217* **Sandboxing** : activer l'isolation au niveau du système d'exploitation qui restreint l'accès au système de fichiers et au réseau, permettant à Claude de travailler plus librement dans des limites définies

channels.md +1 −1

Details

359 359 

360Pendant l'aperçu, `--channels` n'accepte que les plugins d'une liste blanche maintenue par Anthropic, ou de la liste blanche de votre organisation si un administrateur a défini [`allowedChannelPlugins`](#restrict-which-channel-plugins-can-run). Les plugins de canal dans [claude-plugins-official](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins) sont l'ensemble approuvé par défaut. Si vous passez quelque chose qui ne figure pas sur la liste blanche effective, Claude Code démarre normalement mais le canal ne s'enregistre pas, et l'avis de démarrage vous indique pourquoi.360Pendant l'aperçu, `--channels` n'accepte que les plugins d'une liste blanche maintenue par Anthropic, ou de la liste blanche de votre organisation si un administrateur a défini [`allowedChannelPlugins`](#restrict-which-channel-plugins-can-run). Les plugins de canal dans [claude-plugins-official](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins) sont l'ensemble approuvé par défaut. Si vous passez quelque chose qui ne figure pas sur la liste blanche effective, Claude Code démarre normalement mais le canal ne s'enregistre pas, et l'avis de démarrage vous indique pourquoi.

361 361 

362Pour tester un canal que vous créez, utilisez `--dangerously-load-development-channels`. Consultez [Test during the research preview](/docs/fr/channels-reference#test-during-the-research-preview) pour des informations sur le test des canaux personnalisés que vous créez.362Pour tester un canal que vous créez, passez-le à `--dangerously-load-development-channels` sous la forme `plugin:<name>@<marketplace>` ou `server:<name>`. Consultez [Test during the research preview](/docs/fr/channels-reference#test-during-the-research-preview) pour des informations sur le test des canaux personnalisés que vous créez.

363 363 

364Signalez les problèmes ou les commentaires sur le [référentiel GitHub Claude Code](https://github.com/anthropics/claude-code/issues).364Signalez les problèmes ou les commentaires sur le [référentiel GitHub Claude Code](https://github.com/anthropics/claude-code/issues).

365 365 

Details

804 804 

805Pour rendre votre canal installable et partageable, enveloppez-le dans un [plugin](/docs/fr/plugins/overview) et publiez-le sur un [marketplace](/docs/fr/plugins/overview). Les utilisateurs l'installent avec `/plugin install`, puis l'activent par session avec `--channels plugin:<name>@<marketplace>`.805Pour rendre votre canal installable et partageable, enveloppez-le dans un [plugin](/docs/fr/plugins/overview) et publiez-le sur un [marketplace](/docs/fr/plugins/overview). Les utilisateurs l'installent avec `/plugin install`, puis l'activent par session avec `--channels plugin:<name>@<marketplace>`.

806 806 

807Un canal publié sur votre propre marketplace a toujours besoin de `--dangerously-load-development-channels` pour s'exécuter, car il n'est pas sur la [liste d'approbation](/docs/fr/channels#supported-channels). La liste d'approbation par défaut est les plugins de canal dans `claude-plugins-official`. Les [formulaires de soumission intégrés à l'application](/docs/fr/plugins/publish#submit-to-the-community-marketplace) ajoutent des plugins au marketplace communautaire, qui n'est pas sur la liste d'approbation des canaux.807Un canal publié sur votre propre marketplace a toujours besoin de `--dangerously-load-development-channels` pour s'exécuter, car il n'est pas sur la [liste d'approbation](/docs/fr/channels#supported-channels). La liste d'approbation par défaut est les plugins de canal dans `claude-plugins-official`. Le marketplace communautaire n'est pas sur la liste d'approbation des canaux.

808 808 

809Si vous travaillez avec un contact partenaire Anthropic, contactez-le pour coordonner une inscription au marketplace officiel. Sur les plans Team et Enterprise, un administrateur peut plutôt inclure votre plugin dans la liste [`allowedChannelPlugins`](/docs/fr/channels#restrict-which-channel-plugins-can-run) de l'organisation, qui remplace la liste d'approbation Anthropic par défaut.809Si vous travaillez avec un contact partenaire Anthropic, contactez-le pour coordonner une inscription au marketplace officiel. Sur les plans Team et Enterprise, un administrateur peut plutôt inclure votre plugin dans la liste [`allowedChannelPlugins`](/docs/fr/channels#restrict-which-channel-plugins-can-run) de l'organisation, qui remplace la liste d'approbation Anthropic par défaut.

810 810 

Details

114 Les messages envoyés en cours de tour ne sont pas checkpointés114 Les messages envoyés en cours de tour ne sont pas checkpointés

115</h3>115</h3>

116 116 

117Lorsqu'un message que vous [mettez en file d'attente pendant que Claude travaille](/docs/fr/interactive-mode#queue-messages-while-claude-works) atteint Claude au cours du tour en cours, il rejoint ce tour au lieu de commencer un nouveau. Le message apparaît dans la conversation, mais Claude Code ne crée pas de checkpoint pour lui, et le menu de rembobinage ne le répertorie pas. Un message en file d'attente que Claude Code envoie comme son propre tour reçoit un checkpoint comme d'habitude.117Lorsqu'un message que vous [mettez en file d'attente pendant que Claude travaille](/docs/fr/interactive-mode#queue-messages-while-claude-works) atteint Claude au cours du tour en cours, il rejoint ce tour au lieu de commencer un nouveau. Le message apparaît dans la conversation, mais Claude Code ne crée pas de checkpoint pour lui, et le menu de rembobinage ne le répertorie pas. Un message en file d'attente que Claude Code envoie comme son propre tour reçoit un checkpoint comme d'habitude, y compris lorsque plusieurs messages en file d'attente [partagent ce tour](/docs/fr/interactive-mode#when-claude-code-sends-what-you-queued).

118 118 

119Pour supprimer un tel message, ou annuler les modifications que Claude a apportées après son arrivée, rembobinez jusqu'à l'invite qui a démarré le tour. Cela rembobine le tour entier, y compris le travail que Claude a effectué avant l'arrivée de votre message.119Pour supprimer un tel message, ou annuler les modifications que Claude a apportées après son arrivée, rembobinez jusqu'à l'invite qui a démarré le tour. Cela rembobine le tour entier, y compris le travail que Claude a effectué avant l'arrivée de votre message.

120 120 

Details

77| Fournisseur d'identité OpenID Connect (OIDC) | Okta, Microsoft Entra ID, Google Workspace, Keycloak, ou Dex, ou tout autre IdP conforme à OIDC comme PingFederate. La passerelle exécute la découverte OIDC standard et le flux de code d'autorisation contre elle. SAML et LDAP ne sont pas supportés. |77| Fournisseur d'identité OpenID Connect (OIDC) | Okta, Microsoft Entra ID, Google Workspace, Keycloak, ou Dex, ou tout autre IdP conforme à OIDC comme PingFederate. La passerelle exécute la découverte OIDC standard et le flux de code d'autorisation contre elle. SAML et LDAP ne sont pas supportés. |

78| PostgreSQL 14 ou ultérieur | Soutient le flux de connexion d'appareil, où le rappel du navigateur écrit et l'interface de ligne de commande d'interrogation lit, plus les compteurs de limite de débit. Tout Postgres géré fonctionne, y compris le plus petit niveau. Sans limites de dépenses configurées, la passerelle stocke quelques Ko d'état d'authentification de courte durée ; avec les [limites de dépenses](/docs/fr/claude-apps-gateway-spend-limits), elle détient également des tables de dépenses durables, d'audit et d'identité qui doivent être sauvegardées. TLS via `?sslmode=require` est recommandé. |78| PostgreSQL 14 ou ultérieur | Soutient le flux de connexion d'appareil, où le rappel du navigateur écrit et l'interface de ligne de commande d'interrogation lit, plus les compteurs de limite de débit. Tout Postgres géré fonctionne, y compris le plus petit niveau. Sans limites de dépenses configurées, la passerelle stocke quelques Ko d'état d'authentification de courte durée ; avec les [limites de dépenses](/docs/fr/claude-apps-gateway-spend-limits), elle détient également des tables de dépenses durables, d'audit et d'identité qui doivent être sauvegardées. TLS via `?sslmode=require` est recommandé. |

79| Amont du modèle | Identifiants Amazon Bedrock, identifiants Claude Platform on AWS, identifiants Google Cloud, une ressource Microsoft Foundry, ou une clé API Anthropic. Plusieurs ammonts sont supportés avec basculement. |79| Amont du modèle | Identifiants Amazon Bedrock, identifiants Claude Platform on AWS, identifiants Google Cloud, une ressource Microsoft Foundry, ou une clé API Anthropic. Plusieurs ammonts sont supportés avec basculement. |

80| HTTPS | La passerelle doit être accessible via `https://` à partir des ordinateurs portables des développeurs et de tout navigateur utilisé pour la connexion ; la passerelle sert la page de vérification d'appareil sur le même écouteur. Fournissez un certificat TLS via `listen.tls` ou exécutez derrière un ingress qui termine TLS, et définissez `listen.public_url` à l'origine externe dans les deux cas. Une origine `http://` simple est acceptée uniquement quand l'hôte de la passerelle est une boucle locale : `localhost`, `127.0.0.1`, ou `::1`. |80| HTTPS | La passerelle doit être accessible via `https://` à partir des ordinateurs portables des développeurs et de tout navigateur utilisé pour la connexion ; la passerelle sert la page de vérification d'appareil sur le même écouteur. Fournissez un certificat TLS via `listen.tls` ou exécutez derrière un ingress qui termine TLS, et définissez `listen.public_url` à l'origine externe dans les deux cas. À `/login`, Claude Code accepte une origine `http://` simple uniquement quand l'hôte de la passerelle est une boucle locale : `localhost`, `127.0.0.1`, ou `::1`. |

81| Adresse de réseau privé | À `/login`, Claude Code exige que le nom d'hôte ou l'adresse IP de la passerelle ne se résolve qu'à des adresses privées : RFC 1918, link-local, CGNAT `100.64.0.0/10`, ULA IPv6 `fc00::/7`, ou boucle locale. Pour une passerelle que vous hébergez, toute adresse publique en dehors d'un bloc que vous déclarez est rejetée ; voir le [modèle de menace](/docs/fr/claude-apps-gateway-deploy#threat-model-summary) dans le guide de déploiement. Si les machines des développeurs acheminent HTTPS via un proxy d'entreprise, la connexion exige également que l'hôte proxy se résolve à des adresses privées ; s'il ne le fait pas, ajoutez l'hôte de la passerelle à `NO_PROXY` pour que l'interface de ligne de commande se connecte directement. Si votre réseau interne est numéroté à partir d'un espace IPv4 public que votre organisation possède, [déclarez ces blocs](#allow-a-gateway-on-public-address-space-you-own) pour que `/login` accepte une passerelle là-bas. |81| Adresse de réseau privé | À `/login`, Claude Code exige que le nom d'hôte ou l'adresse IP de la passerelle ne se résolve qu'à des adresses privées : RFC 1918, link-local, CGNAT `100.64.0.0/10`, ULA IPv6 `fc00::/7`, ou boucle locale. Pour une passerelle que vous hébergez, toute adresse publique en dehors d'un bloc que vous déclarez est rejetée ; voir le [modèle de menace](/docs/fr/claude-apps-gateway-deploy#threat-model-summary) dans le guide de déploiement. Si les machines des développeurs acheminent HTTPS via un proxy d'entreprise, la connexion exige également que l'hôte proxy se résolve à des adresses privées ; s'il ne le fait pas, ajoutez l'hôte de la passerelle à `NO_PROXY` pour que l'interface de ligne de commande se connecte directement. Si votre réseau interne est numéroté à partir d'un espace IPv4 public que votre organisation possède, [déclarez ces blocs](#allow-a-gateway-on-public-address-space-you-own) pour que `/login` accepte une passerelle là-bas. |

82| Runtime Linux | Le serveur de passerelle s'exécute uniquement sur le binaire Linux natif. macOS fonctionne pour le développement local. Windows n'est pas supporté comme plate-forme serveur. |82| Runtime Linux | Le serveur de passerelle s'exécute uniquement sur le binaire Linux natif. macOS fonctionne pour le développement local. Windows n'est pas supporté comme plate-forme serveur. |

83 83 


454 454 

455Six paramètres fournis par le parent passent le filtre même avec les cinq verrous définis. Sous le paramètre par défaut premier-gagnant, la valeur d'administrateur qui bloque celle du parent est celle dans la source d'administrateur de plus haute priorité, sauf pour `allowedMcpServers` tandis que le [verrou serveur MCP](#lock-behavior-across-sources) est activé. Sous l'opt-in de fusion `managedSourcesBehavior`, [comment Claude Code combine les sources gérées](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) dit quelle valeur de source s'applique à la place.455Six paramètres fournis par le parent passent le filtre même avec les cinq verrous définis. Sous le paramètre par défaut premier-gagnant, la valeur d'administrateur qui bloque celle du parent est celle dans la source d'administrateur de plus haute priorité, sauf pour `allowedMcpServers` tandis que le [verrou serveur MCP](#lock-behavior-across-sources) est activé. Sous l'opt-in de fusion `managedSourcesBehavior`, [comment Claude Code combine les sources gérées](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) dit quelle valeur de source s'applique à la place.

456 456 

457* **`forceLoginOrgUUID`** : Claude Code honore une valeur fournie par le parent quand la source d'administrateur de plus haute priorité ne définit pas un UUID d'organisation. La connexion à la passerelle ne vérifie pas cette clé, donc elle ne compte que pour les flottes qui utilisent également les connexions Anthropic de première partie. Un UUID d'organisation dans la source d'administrateur de plus haute priorité bloque la valeur du parent et est celui que Claude Code applique, donc définissez `forceLoginOrgUUID` là.457* **`forceLoginOrgUUID`** : Claude Code honore une valeur fournie par le parent quand la source d'administrateur de plus haute priorité ne définit pas un UUID d'organisation. La connexion à la passerelle ne vérifie pas cette clé. Un UUID d'organisation dans la source d'administrateur de plus haute priorité bloque la valeur du parent et est celui que Claude Code applique.

458* **`allowedMcpServers`** : Claude Code honore une liste d'autorisation fournie par le parent quand aucune liste d'administrateur n'est en vigueur. `allowManagedMcpServersOnly` ne la bloque pas, car le verrou applique quelle que soit la liste qui gagne comme valeur gérée, y compris une liste fournie par le parent quand aucune source d'administrateur n'en fournit une. Une liste dans la source d'administrateur de plus haute priorité bloque celle du parent et est la liste que Claude Code applique, donc définissez `allowedMcpServers` là, à côté du verrou. Avant v2.1.223, une valeur pour l'une ou l'autre clé dans toute source d'administrateur bloquait celle du parent.458* **`allowedMcpServers`** : Claude Code honore une liste d'autorisation fournie par le parent quand aucune liste d'administrateur n'est en vigueur. `allowManagedMcpServersOnly` ne la bloque pas, car le verrou applique quelle que soit la liste qui gagne comme valeur gérée, y compris une liste fournie par le parent quand aucune source d'administrateur n'en fournit une. Une liste dans la source d'administrateur de plus haute priorité bloque celle du parent et est la liste que Claude Code applique, donc définissez `allowedMcpServers` là, à côté du verrou. Avant v2.1.223, une valeur pour l'une ou l'autre clé dans toute source d'administrateur bloquait celle du parent.

459* **`availableModels`** : Claude Code honore une liste de modèles fournie par le parent quand la source gérée gagnante n'en définit pas. Si votre flotte restreint les modèles, définissez `availableModels` dans la source gagnante.459* **`availableModels`** : Claude Code honore une liste de modèles fournie par le parent quand la source gérée gagnante n'en définit pas. Si votre flotte restreint les modèles, définissez `availableModels` dans la source gagnante.

460* **`strictKnownMarketplaces`** : Claude Code honore une liste d'autorisation de marché de plugins fournie par le parent quand la source gérée gagnante n'en définit pas. Si votre flotte restreint les marchés, définissez `strictKnownMarketplaces` dans la source gagnante. Nécessite Claude Code v2.1.282 ou ultérieur.460* **`strictKnownMarketplaces`** : Claude Code honore une liste d'autorisation de marché de plugins fournie par le parent quand la source gérée gagnante n'en définit pas. Si votre flotte restreint les marchés, définissez `strictKnownMarketplaces` dans la source gagnante. Nécessite Claude Code v2.1.282 ou ultérieur.

Details

947* `OTEL_EXPORTER_OTLP_ENDPOINT=<public_url>`947* `OTEL_EXPORTER_OTLP_ENDPOINT=<public_url>`

948* `OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf`948* `OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf`

949 949 

950Lorsque vous [ajoutez vos propres étiquettes](#add-your-own-labels), la passerelle pousse également `OTEL_RESOURCE_ATTRIBUTES`.

951 

950Avant Claude Code v2.1.265 sur le serveur de passerelle, la passerelle poussait les trois sélecteurs d'exportateur en tant que `otlp`, y compris pour les signaux qu'aucune destination n'a activés.952Avant Claude Code v2.1.265 sur le serveur de passerelle, la passerelle poussait les trois sélecteurs d'exportateur en tant que `otlp`, y compris pour les signaux qu'aucune destination n'a activés.

951 953 

952Le point de terminaison poussé est construit à partir de l'URL publique, afin que les métriques et les journaux n'aient besoin d'aucune configuration OTEL de la part des développeurs ou des politiques.954Le point de terminaison poussé est construit à partir de l'URL publique, afin que les métriques et les journaux n'aient besoin d'aucune configuration OTEL de la part des développeurs ou des politiques.


964 966 

965Les encodages OTLP protobuf et JSON sont tous deux relayés, et tout backend compatible OpenTelemetry fonctionne comme destination.967Les encodages OTLP protobuf et JSON sont tous deux relayés, et tout backend compatible OpenTelemetry fonctionne comme destination.

966 968 

969<h4 id="add-your-own-labels">

970 Ajouter vos propres étiquettes

971</h4>

972 

973Pour mettre des étiquettes fixes comme `service.namespace` ou `deployment.environment.name` sur la télémétrie des sessions connectées via la passerelle, définissez `telemetry.resource_attributes`. Chaque étiquette est un attribut de ressource OpenTelemetry, et chaque destination reçoit les mêmes étiquettes.

974 

975Les sessions obtiennent les étiquettes uniquement lorsque vous définissez également `telemetry.forward_to` et `listen.public_url`. Cet exemple ajoute deux étiquettes :

976 

977```yaml theme={null}

978telemetry:

979 forward_to:

980 - url: https://otel-collector.internal.example.com

981 resource_attributes:

982 service.namespace: claude

983 deployment.environment.name: prod

984```

985 

986La passerelle refuse de démarrer lorsqu'une étiquette viole l'une de ces règles, et l'erreur de démarrage nomme l'étiquette :

987 

988* Les noms utilisent uniquement des lettres, des chiffres, `.`, `_` et `-`

989* Les noms ne sont pas réservés. Comparés dans n'importe quelle casse de lettre, les noms réservés sont tout ce qui commence par `user.`, `enduser.` ou `identity.`, plus `service.name`, `service.version`, `claude.deployment_mode`, `host.arch`, `os.type`, `os.version` et `wsl.version`

990* Les valeurs sont des ASCII imprimables non vides sans espace et aucun de `, ; = \ " %`

991* Les valeurs sont au maximum 255 caractères tels que la passerelle les compte après codage en pourcentage, donc `/`, `:` et `@` comptent chacun comme trois

992* Les valeurs sont du texte, donc citez un nombre, `true` ou `false`

993 

994Vous avez besoin de Claude Code v2.1.281 ou ultérieur sur le serveur de passerelle pour définir `telemetry.resource_attributes`. Une passerelle antérieure refuse de démarrer lorsqu'elle trouve la clé. Mettez à niveau chaque réplica avant d'ajouter la clé, et supprimez la clé avant de revenir en arrière vers une version antérieure.

995 

996Les sessions de terminal connectées via `/login` reçoivent les étiquettes en tant que `OTEL_RESOURCE_ATTRIBUTES`, poussées avec les autres [variables de télémétrie](#telemetry). Si vous définissez `OTEL_RESOURCE_ATTRIBUTES` dans le bloc `env` d'une politique, les sessions de terminal que cette politique correspond obtiennent cette valeur à la place des étiquettes. Claude Desktop reçoit les étiquettes de la passerelle aux côtés de `user.email` et des autres attributs d'identité.

997 

998Claude Code copie également chaque étiquette sur chaque point de données de métrique, afin que vous puissiez filtrer les métriques par elle dans un backend qui n'indexe pas les attributs de ressource. Pour désactiver cette copie, consultez [Contrôle de la cardinalité des métriques](/docs/fr/monitoring-usage#metrics-cardinality-control).

999 

967<h4 id="export-directly-to-your-collector">1000<h4 id="export-directly-to-your-collector">

968 Exporter directement vers votre collecteur1001 Exporter directement vers votre collecteur

969</h4>1002</h4>


1034 1067 

1035Le bloc `load_test_mode` vous permet de tester la charge d'une passerelle sans appeler un fournisseur de modèles. Tandis qu'il est activé, la passerelle construit et signe chaque demande de fournisseur comme d'habitude, la rejette au lieu de l'envoyer, et diffuse une réponse en conserve via son chemin de réponse normal. La réponse est un texte de remplissage qui commence par une phrase disant qu'elle est en conserve.1068Le bloc `load_test_mode` vous permet de tester la charge d'une passerelle sans appeler un fournisseur de modèles. Tandis qu'il est activé, la passerelle construit et signe chaque demande de fournisseur comme d'habitude, la rejette au lieu de l'envoyer, et diffuse une réponse en conserve via son chemin de réponse normal. La réponse est un texte de remplissage qui commence par une phrase disant qu'elle est en conserve.

1036 1069 

1037Nécessite v2.1.283 ou ultérieur. Les versions antérieures refusent de démarrer lorsque la clé est définie, afin de mettre à niveau chaque réplica avant d'ajouter le bloc et de le supprimer avant de revenir en arrière.1070Nécessite Claude Code v2.1.282 ou ultérieur sur le serveur de passerelle. Les versions antérieures refusent de démarrer lorsque la clé est trouvée. Mettez à niveau chaque réplica avant d'ajouter le bloc, et supprimez le bloc avant de revenir en arrière.

1038 1071 

1039L'exemple ci-dessous active le mode avec les valeurs par défaut, une réponse de 750 jetons de sortie diffusée sur environ 10 secondes :1072L'exemple ci-dessous active le mode avec les valeurs par défaut, une réponse d'environ 750 jetons de texte diffusée sur environ 10 secondes :

1040 1073 

1041```yaml theme={null}1074```yaml theme={null}

1042load_test_mode:1075load_test_mode:


1053 1086 

1054Un test de charge dans ce mode couvre la passerelle, votre Postgres et tout ce qui se trouve devant la passerelle. Il ne couvre pas les limites, la vitesse ou le chemin réseau du fournisseur.1087Un test de charge dans ce mode couvre la passerelle, votre Postgres et tout ce qui se trouve devant la passerelle. Il ne couvre pas les limites, la vitesse ou le chemin réseau du fournisseur.

1055 1088 

1056Tandis que le mode est activé, une demande peut porter un en-tête `x-load-test-user` contenant un nombre entier de jusqu'à sept chiffres, et la passerelle compte chaque nombre comme un développeur distinct avec l'e-mail et les groupes du développeur dont le jeton est venu avec la demande. Donnez au déploiement de test de charge sa propre base de données vide, car la passerelle refuse de démarrer avec le mode activé par rapport à une base de données dans laquelle un développeur a déjà dépensé quelque chose.1089Aucune demande de modèle n'est envoyée au fournisseur, afin que le CPU d'une réplica par demande soit une estimation et se lit plus bas qu'en production, qui chiffre également son trafic vers le fournisseur. Confirmez un nombre de réplicas avec un petit pilote contre le vrai fournisseur. Avant v2.1.283, l'estimation se lit beaucoup plus bas.

1090 

1091Tandis que le mode est activé, une demande peut porter un en-tête `x-load-test-user` contenant un nombre entier de jusqu'à sept chiffres. La passerelle compte chaque nombre comme un développeur distinct avec l'e-mail et les groupes du développeur dont le jeton est venu avec la demande.

1092 

1093Donnez au déploiement de test de charge sa propre base de données vide, car la passerelle refuse de démarrer avec le mode activé par rapport à une base de données dans laquelle un développeur a déjà dépensé quelque chose.

1057 1094 

1058<Warning>1095<Warning>

1059 Ne jamais activer ceci pour une passerelle que les développeurs utilisent. Chaque demande obtient la réponse en conserve et aucun modèle n'est appelé. La passerelle enregistre un avertissement `load_test_mode is on` au démarrage et marque chaque événement d'audit [`inference`](/docs/fr/claude-apps-gateway-deploy#logs) avec `load_test: true` tandis que le mode est activé.1096 Ne jamais activer ceci pour une passerelle que les développeurs utilisent. Chaque demande obtient la réponse en conserve et aucun modèle n'est appelé. La passerelle enregistre un avertissement `load_test_mode is on` au démarrage et marque chaque événement d'audit [`inference`](/docs/fr/claude-apps-gateway-deploy#logs) avec `load_test: true` tandis que le mode est activé.

Details

181 Santé181 Santé

182</h3>182</h3>

183 183 

184La passerelle sert `GET /healthz` comme sonde de vivacité et `GET /readyz` comme sonde de disponibilité ; `/readyz` vérifie que le magasin est accessible. Les deux sont exempts de `access_control.allow_cidrs`, donc les sondes continuent de fonctionner sur un écouteur verrouillé.184La passerelle sert `GET /healthz` comme sonde de vivacité et `GET /readyz` comme sonde de disponibilité. `/readyz` vérifie que le magasin est accessible. Si vous définissez [`store.readiness_grace_seconds`](/docs/fr/claude-apps-gateway-config#store), `/readyz` continue de signaler prêt pendant jusqu'à ce nombre de secondes après que le magasin cesse de répondre.

185 

186Les deux points de terminaison sont exempts de `access_control.allow_cidrs`, donc les sondes continuent de fonctionner sur un écouteur verrouillé.

185 187 

186Le document de découverte OAuth à `/.well-known/oauth-authorization-server` retourne également `200` uniquement après le chargement de la configuration, la découverte OIDC, la construction du client en amont et la migration Postgres réussissent, donc il double comme vérification de démarrage de bout en bout.188Le document de découverte OAuth à `/.well-known/oauth-authorization-server` retourne également `200` uniquement après le chargement de la configuration, la découverte OIDC, la construction du client en amont et la migration Postgres réussissent, donc il double comme vérification de démarrage de bout en bout.

187 189 


217* **Sessions existantes** : les jetons porteurs valident localement avec le secret JWT, les actualisations de session ne touchent pas le magasin, et le processus de passerelle peut toujours servir l'inférence219* **Sessions existantes** : les jetons porteurs valident localement avec le secret JWT, les actualisations de session ne touchent pas le magasin, et le processus de passerelle peut toujours servir l'inférence

218* **Nouvelles connexions** : échouent jusqu'à la récupération de Postgres, car le flux d'appareil et ses compteurs de limite de débit vivent dans Postgres220* **Nouvelles connexions** : échouent jusqu'à la récupération de Postgres, car le flux d'appareil et ses compteurs de limite de débit vivent dans Postgres

219* **[Application des limites de dépenses](/docs/fr/claude-apps-gateway-spend-limits#postgres-availability)** : échoue ouvert par défaut pendant la panne, donc l'inférence continue de circuler ; basculez-la pour échouer fermé si vous préférez bloquer plutôt que de fonctionner sans compteur221* **[Application des limites de dépenses](/docs/fr/claude-apps-gateway-spend-limits#postgres-availability)** : échoue ouvert par défaut pendant la panne, donc l'inférence continue de circuler ; basculez-la pour échouer fermé si vous préférez bloquer plutôt que de fonctionner sans compteur

220* **Disponibilité** : `/readyz` signale non-prêt pendant la panne, donc les orchestrateurs qui contrôlent le trafic sur la disponibilité retirent chaque réplique de la rotation à la fois. Dans cette topologie tout le trafic, y compris l'inférence que la passerelle pourrait toujours servir, échoue à l'équilibreur de charge jusqu'à la récupération de Postgres. La sonde de vivacité sur `/healthz` continue de passer, donc les répliques ne sont pas redémarrées. Pointez la sonde de disponibilité sur `/healthz` à la place si vous préférez que les développeurs connectés continuent de travailler pendant une panne du magasin ; le coût est que les nouvelles connexions échouent contre une réplique qui signale toujours prête.222* **Disponibilité** : par défaut `/readyz` signale non-prêt dès que Postgres est inaccessible, donc chaque réplique échoue sa vérification de disponibilité à la fois. Là où le trafic ne atteint que les répliques qui passent la vérification, tout le trafic, y compris l'inférence que la passerelle pourrait toujours servir, échoue jusqu'à la récupération de Postgres. La sonde de vivacité sur `/healthz` continue de passer tout au long.

223 

224Si votre IdP tombe en panne, les sessions existantes fonctionnent jusqu'à `ttl_hours` et les nouvelles connexions échouent. Une actualisation de session obtient une réponse de réessai et se termine une fois que l'IdP est de retour. Définissez un `ttl_hours` plus long si votre IdP a des fenêtres de maintenance fréquentes.

225 

226<h4 id="readiness-grace-period">

227 Période de grâce de disponibilité

228</h4>

229 

230Pour garder les développeurs connectés qui travaillent à travers une courte panne de Postgres telle qu'un basculement de base de données, définissez [`store.readiness_grace_seconds`](/docs/fr/claude-apps-gateway-config#store) à plus long que le basculement ne prend, par exemple `300`. Avec les limites de dépenses activées et le comportement par défaut fail-open, les demandes à travers une réplique qui reste prête sont sans compteur jusqu'à la récupération de Postgres, donc gardez la valeur aussi basse que couvre votre basculement. Si vous définissez [`enforcement.fail_closed_on_error: true`](/docs/fr/claude-apps-gateway-config#enforcement), la passerelle refuse l'inférence des développeurs connectés avec le message `429` `spend limit unavailable` jusqu'à la récupération de Postgres, même tandis que les répliques passent toujours leur vérification de disponibilité.

231 

232Le paramètre nécessite Claude Code v2.1.282 ou ultérieur sur le serveur de passerelle. Une passerelle antérieure refuse de démarrer quand elle trouve la clé, donc mettez à niveau chaque réplique avant de l'ajouter. [Mises à jour](#upgrades) couvre la restauration.

221 233 

222Si votre IdP tombe en panne, les sessions existantes fonctionnent jusqu'à `ttl_hours`, les nouvelles connexions échouent, et une actualisation de session obtient une réponse de réessai et se termine une fois que l'IdP est de retour. Définissez un `ttl_hours` plus long si votre IdP a des fenêtres de maintenance fréquentes.234Si vous pointez la sonde de disponibilité sur `/healthz` à la place, les répliques passent également à travers une panne, mais `/healthz` ne signale jamais non-prêt, donc une réplique dont la connexion Postgres ne se rétablit pas continue de passer aussi.

223 235 

224<h3 id="jwt-secret-rotation">236<h3 id="jwt-secret-rotation">

225 Rotation du secret JWT237 Rotation du secret JWT

226</h3>238</h3>

227 239 

228Faites tourner le secret de signature en trois étapes afin que les sessions existantes restent valides :240Faites tourner le secret de signature en étapes afin que les sessions existantes restent valides :

229 241 

2301. Générez un nouveau secret. Ajoutez-le au début du tableau `session.jwt_secret`.2421. Générez un nouveau secret. Ajoutez-le au début du tableau `session.jwt_secret`.

2312. Déployez le déploiement. Les nouveaux jetons signent avec le nouveau secret ; les anciens jetons valident toujours.2432. Déployez le déploiement. Les nouveaux jetons signent avec le nouveau secret ; les anciens jetons valident toujours.


357| Les demandes d'un développeur échouent avec `Not signed in to the Cloud gateway — run /login.` | Les paramètres gérés de la machine définissent `forceLoginMethod: "gateway"` ou `forceLoginGatewayUrl`, et la session n'a pas de connexion à la passerelle. Une connexion claude.ai restante ne satisfait pas à l'exigence. | Demandez au développeur d'exécuter `/login` et de terminer la connexion à la passerelle. Voir aussi [La politique de l'administrateur nécessite une connexion à la passerelle Cloud](/docs/fr/errors#administrator-policy-requires-a-cloud-gateway-sign-in). |369| Les demandes d'un développeur échouent avec `Not signed in to the Cloud gateway — run /login.` | Les paramètres gérés de la machine définissent `forceLoginMethod: "gateway"` ou `forceLoginGatewayUrl`, et la session n'a pas de connexion à la passerelle. Une connexion claude.ai restante ne satisfait pas à l'exigence. | Demandez au développeur d'exécuter `/login` et de terminer la connexion à la passerelle. Voir aussi [La politique de l'administrateur nécessite une connexion à la passerelle Cloud](/docs/fr/errors#administrator-policy-requires-a-cloud-gateway-sign-in). |

358| Claude Desktop signale que sa configuration d'amorçage n'a pas pu être récupérée | `/user/bootstrap` a renvoyé 404 : la politique correspondant à l'utilisateur ne porte pas de clé `desktop`, ou aucune politique n'a correspondu. Le journal d'audit de la passerelle enregistre chaque rejet sous la forme `desktop_bootstrap.denied` avec la raison. | Ajoutez un bloc `desktop` à la politique qui correspond à l'utilisateur, ou à la couche de base `match: {}` ; un `desktop: {}` vide suffit. Voir [Superposition Claude Desktop](/docs/fr/claude-apps-gateway-config#claude-desktop-overlay). |370| Claude Desktop signale que sa configuration d'amorçage n'a pas pu être récupérée | `/user/bootstrap` a renvoyé 404 : la politique correspondant à l'utilisateur ne porte pas de clé `desktop`, ou aucune politique n'a correspondu. Le journal d'audit de la passerelle enregistre chaque rejet sous la forme `desktop_bootstrap.denied` avec la raison. | Ajoutez un bloc `desktop` à la politique qui correspond à l'utilisateur, ou à la couche de base `match: {}` ; un `desktop: {}` vide suffit. Voir [Superposition Claude Desktop](/docs/fr/claude-apps-gateway-config#claude-desktop-overlay). |

359| Le démarrage affiche `Gateway login is configured in managed settings, but this Claude Code build does not include Cloud gateway support.` | La version de Claude Code installée est antérieure au support de la passerelle | Demandez au développeur de mettre à jour Claude Code vers une version qui inclut le support de la passerelle Cloud |371| Le démarrage affiche `Gateway login is configured in managed settings, but this Claude Code build does not include Cloud gateway support.` | La version de Claude Code installée est antérieure au support de la passerelle | Demandez au développeur de mettre à jour Claude Code vers une version qui inclut le support de la passerelle Cloud |

360| Le démarrage se termine avec `Administrator policy requires a Cloud gateway sign-in on this machine` | L'environnement du développeur définit `ANTHROPIC_API_KEY` ou `ANTHROPIC_AUTH_TOKEN`, ses paramètres configurent un [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper), ou une clé API d'une connexion Claude Console antérieure est toujours enregistrée | Demandez au développeur d'effacer chacun de ces éléments : désactiver la variable, supprimer l'entrée `apiKeyHelper`, ou exécuter `claude auth logout` pour supprimer la clé enregistrée. Ensuite, demandez-lui de démarrer `claude` et de se connecter avec `/login`. Voir aussi [La politique de l'administrateur nécessite une connexion à la passerelle Cloud](/docs/fr/errors#administrator-policy-requires-a-cloud-gateway-sign-in). |372| Le démarrage se termine avec `Administrator policy requires a Cloud gateway sign-in on this machine` | L'environnement du développeur définit `ANTHROPIC_API_KEY` ou `ANTHROPIC_AUTH_TOKEN`, ses paramètres configurent un [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper), ou une clé API d'une connexion Claude Console antérieure est toujours enregistrée | Demandez au développeur d'effacer chacun de ces éléments : désactiver la variable, supprimer l'entrée `apiKeyHelper`, ou exécuter `claude auth logout` pour supprimer la clé enregistrée. Une session qui sélectionne un fournisseur cloud avec `CLAUDE_CODE_USE_*` démarre ensuite sans connexion ; pour toute autre session, demandez-lui de démarrer `claude` et de se connecter avec `/login`. Voir aussi [La politique de l'administrateur nécessite une connexion à la passerelle Cloud](/docs/fr/errors#administrator-policy-requires-a-cloud-gateway-sign-in). |

361| Le démarrage ou `/login` signale `Claude Code may not be enabled for your organization` après un 403 lors du chargement des paramètres gérés | La passerelle, ou quelque chose devant elle, a répondu à la demande `/managed/settings` avec 403. La route de paramètres propre de la passerelle ne répond jamais 403. Le statut provient des vérifications IP [`access_control`](/docs/fr/claude-apps-gateway-config#http-tuning) ou d'un proxy ou WAF devant la passerelle. Le journal d'audit enregistre un refus de vérification IP sous la forme `access.denied` avec la raison. Le développeur reste connecté. | Vérifiez le journal d'audit pour `access.denied` au moment de l'échec et corrigez les listes `access_control` ou le front-end, puis demandez au développeur de démarrer `claude` à nouveau |373| Le démarrage ou `/login` signale `Claude Code may not be enabled for your organization` après un 403 lors du chargement des paramètres gérés | La passerelle, ou quelque chose devant elle, a répondu à la demande `/managed/settings` avec 403. La route de paramètres propre de la passerelle ne répond jamais 403. Le statut provient des vérifications IP [`access_control`](/docs/fr/claude-apps-gateway-config#http-tuning) ou d'un proxy ou WAF devant la passerelle. Le journal d'audit enregistre un refus de vérification IP sous la forme `access.denied` avec la raison. Le développeur reste connecté. | Vérifiez le journal d'audit pour `access.denied` au moment de l'échec et corrigez les listes `access_control` ou le front-end, puis demandez au développeur de démarrer `claude` à nouveau |

362| CLI `/login` : `The gateway is limiting sign-in attempts right now`, ou `Request failed with status code 429` sur les versions antérieures. La page `/device` peut afficher `Too many attempts` aux développeurs qui n'ont pas essayé auparavant | La limite de débit de connexion par IP a été atteinte. Soit `listen.trusted_proxies` ne couvre pas l'équilibreur de charge, donc chaque développeur partage son adresse, soit de nombreux développeurs partagent une adresse de sortie NAT ou VPN. Les événements d'audit avec `result: rate_limited` affichent la même une ou quelques valeurs `client_ip`. | Définissez d'abord `listen.trusted_proxies` sur les plages sources de l'équilibreur de charge, puis augmentez `rate_limits` si les développeurs partagent toujours des adresses. Voir [Déploiements à grande échelle](#large-rollouts). |374| CLI `/login` : `The gateway is limiting sign-in attempts right now`, ou `Request failed with status code 429` sur les versions antérieures. La page `/device` peut afficher `Too many attempts` aux développeurs qui n'ont pas essayé auparavant | La limite de débit de connexion par IP a été atteinte. Soit `listen.trusted_proxies` ne couvre pas l'équilibreur de charge, donc chaque développeur partage son adresse, soit de nombreux développeurs partagent une adresse de sortie NAT ou VPN. Les événements d'audit avec `result: rate_limited` affichent la même une ou quelques valeurs `client_ip`. | Définissez d'abord `listen.trusted_proxies` sur les plages sources de l'équilibreur de charge, puis augmentez `rate_limits` si les développeurs partagent toujours des adresses. Voir [Déploiements à grande échelle](#large-rollouts). |

363| CLI `/login` : `Gateway hosts must be on your organization's private network; <host> resolves to the public (or unrecognized) address <ip>` | Le nom d'hôte de la passerelle se résout en au moins une adresse IP publique. Claude Code vérifie chaque adresse résolue et exige que chacune soit privée. Une cause courante est un nom double pile où une famille se résout en une adresse publique, y compris les équilibreurs de charge double pile internes AWS, qui renvoient des adresses AAAA de plage publique. | Faites en sorte que le nom de la passerelle se résout uniquement en adresses privées sur les machines des développeurs. Pour un nom double pile, supprimez l'enregistrement de plage publique ou servez un nom DNS interne uniquement. Voir la [condition préalable du réseau privé](/docs/fr/claude-apps-gateway#prerequisites). Si l'adresse est un espace public que votre organisation possède et utilise en interne, [déclarez ce bloc](/docs/fr/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) à la place. |375| CLI `/login` : `Gateway hosts must be on your organization's private network; <host> resolves to the public (or unrecognized) address <ip>` | Le nom d'hôte de la passerelle se résout en au moins une adresse IP publique. Claude Code vérifie chaque adresse résolue et exige que chacune soit privée. Une cause courante est un nom double pile où une famille se résout en une adresse publique, y compris les équilibreurs de charge double pile internes AWS, qui renvoient des adresses AAAA de plage publique. | Faites en sorte que le nom de la passerelle se résout uniquement en adresses privées sur les machines des développeurs. Pour un nom double pile, supprimez l'enregistrement de plage publique ou servez un nom DNS interne uniquement. Voir la [condition préalable du réseau privé](/docs/fr/claude-apps-gateway#prerequisites). Si l'adresse est un espace public que votre organisation possède et utilise en interne, [déclarez ce bloc](/docs/fr/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) à la place. |


386| La connexion fonctionne localement mais échoue derrière un ALB | `public_url` nomme toujours l'origine `http://` locale ou interne, donc l'IdP obtient le mauvais `redirect_uri` | Définissez `listen.public_url` sur l'origine `https://` externe et enregistrez `<public_url>/oauth/callback` auprès de l'IdP |398| La connexion fonctionne localement mais échoue derrière un ALB | `public_url` nomme toujours l'origine `http://` locale ou interne, donc l'IdP obtient le mauvais `redirect_uri` | Définissez `listen.public_url` sur l'origine `https://` externe et enregistrez `<public_url>/oauth/callback` auprès de l'IdP |

387| Le développeur voit l'invite de confiance à plusieurs reprises | Le certificat TLS tourne par réplica ou par demande | Utilisez un certificat stable à l'entrée, ou terminez TLS une fois et exécutez les réplicas sur HTTP simple en interne |399| Le développeur voit l'invite de confiance à plusieurs reprises | Le certificat TLS tourne par réplica ou par demande | Utilisez un certificat stable à l'entrée, ou terminez TLS une fois et exécutez les réplicas sur HTTP simple en interne |

388| CLI `/login` : « Could not verify the gateway's TLS certificate » ou `SELF_SIGNED_CERT_IN_CHAIN` | La chaîne TLS de la passerelle est signée par une CA privée qui n'est pas dans le magasin de confiance de l'hôte CLI | Claude Code lit le magasin de confiance du système d'exploitation par défaut sur le binaire natif et sur Node 22.15 ou ultérieur ; [`CLAUDE_CODE_CERT_STORE`](/docs/fr/network-config#ca-certificate-store) contrôle ce comportement. Si la CA est installée dans le magasin de confiance du système d'exploitation, assurez-vous que les développeurs utilisent un runtime actuel. Sinon, définissez `NODE_EXTRA_CA_CERTS` sur le certificat CA PEM avant de lancer. L'invite d'empreinte digitale de première connexion s'applique toujours. |400| CLI `/login` : « Could not verify the gateway's TLS certificate » ou `SELF_SIGNED_CERT_IN_CHAIN` | La chaîne TLS de la passerelle est signée par une CA privée qui n'est pas dans le magasin de confiance de l'hôte CLI | Claude Code lit le magasin de confiance du système d'exploitation par défaut sur le binaire natif et sur Node 22.15 ou ultérieur ; [`CLAUDE_CODE_CERT_STORE`](/docs/fr/network-config#ca-certificate-store) contrôle ce comportement. Si la CA est installée dans le magasin de confiance du système d'exploitation, assurez-vous que les développeurs utilisent un runtime actuel. Sinon, définissez `NODE_EXTRA_CA_CERTS` sur le certificat CA PEM avant de lancer. L'invite d'empreinte digitale de première connexion s'applique toujours. |

389| CLI `/login` termine la connexion du navigateur, puis la session se termine avec `Cloud gateway sign-in was not completed` et une incompatibilité de certificat TLS | À la première demande après la connexion, la passerelle a présenté un certificat qui ne correspond pas à l'empreinte digitale que Claude Code a épinglée, donc Claude Code n'a conservé aucune identifiant de passerelle. Les causes habituelles sont les réplicas derrière une adresse qui servent des certificats différents, ou quelque chose sur le chemin réseau qui intercepte TLS. | Servez un certificat pour le nom d'hôte, par exemple en terminant TLS une fois à l'entrée, puis demandez au développeur d'exécuter `/login` à nouveau. Si ce certificat diffère de celui épinglé, Claude Code affiche l'[invite de confiance](/docs/fr/claude-apps-gateway#connect-developers) à nouveau avec un avertissement que le certificat a changé. |401| CLI `/login` termine la connexion du navigateur, puis la session se termine avec `Cloud gateway sign-in was not completed` et une incompatibilité de certificat TLS | À la première demande après la connexion, la passerelle a présenté un certificat qui ne correspond pas à l'empreinte digitale que Claude Code a épinglée, donc Claude Code n'a conservé aucun identifiant de passerelle. Les causes habituelles sont les réplicas derrière une adresse qui servent des certificats différents, ou quelque chose sur le chemin réseau qui intercepte TLS. | Servez un certificat pour le nom d'hôte, par exemple en terminant TLS une fois à l'entrée, puis demandez au développeur d'exécuter `/login` à nouveau. Si ce certificat diffère de celui épinglé, Claude Code affiche l'[invite de confiance](/docs/fr/claude-apps-gateway#connect-developers) à nouveau avec un avertissement que le certificat a changé. |

390| CLI `/login` s'arrête avec `The gateway's TLS certificate changed during sign-in: it no longer matches the one you trusted` | Une demande de connexion a atteint un serveur dont le certificat ne correspond pas à celui que le développeur a accepté au démarrage de `/login` : réplicas derrière une adresse servant des certificats différents, interception TLS sur le chemin, ou rotation de certificat pendant que la connexion était en cours. | Servez un certificat pour le nom d'hôte, puis demandez au développeur de recommencer la connexion et d'examiner le nouveau certificat à l'[invite de confiance](/docs/fr/claude-apps-gateway#connect-developers). |402| CLI `/login` s'arrête avec `The gateway's TLS certificate changed during sign-in: it no longer matches the one you trusted` | Une demande de connexion a atteint un serveur dont le certificat ne correspond pas à celui que le développeur a accepté au démarrage de `/login` : réplicas derrière une adresse servant des certificats différents, interception TLS sur le chemin, ou rotation de certificat pendant que la connexion était en cours. | Servez un certificat pour le nom d'hôte, puis demandez au développeur de recommencer la connexion et d'examiner le nouveau certificat à l'[invite de confiance](/docs/fr/claude-apps-gateway#connect-developers). |

391 403 

392Le message `Cloud gateway sign-in was not completed` nomme le nom d'hôte de la passerelle. Lorsque Claude Code a à la fois l'empreinte digitale épinglée et celle présentée, le message affiche également les 16 premiers caractères de chacune.404Le message `Cloud gateway sign-in was not completed` nomme le nom d'hôte de la passerelle. Lorsque Claude Code a à la fois l'empreinte digitale épinglée et celle présentée, le message affiche également les 16 premiers caractères de chacune.

Details

220 <Step title="Écrire gateway.yaml">220 <Step title="Écrire gateway.yaml">

221 Le bloc `upstreams` pointe vers Bedrock avec `auth: {}`, donc la passerelle s'authentifie via la chaîne de credentials par défaut d'AWS à partir du rôle de tâche sur ECS ou du rôle IRSA sur EKS. Consultez la [référence de configuration](/docs/fr/claude-apps-gateway-config) pour chaque champ.221 Le bloc `upstreams` pointe vers Bedrock avec `auth: {}`, donc la passerelle s'authentifie via la chaîne de credentials par défaut d'AWS à partir du rôle de tâche sur ECS ou du rôle IRSA sur EKS. Consultez la [référence de configuration](/docs/fr/claude-apps-gateway-config) pour chaque champ.

222 222 

223 Deux champs `listen` dépendent de ce qui est en face de la passerelle :223 Deux champs `listen` décrivent ce qui est en face de la passerelle :

224 224 

225 * `public_url` : l'origine `https://` externe, requise pour tout bind non-loopback ; consultez la [référence `listen`](/docs/fr/claude-apps-gateway-config#listen). La passerelle construit l'`redirect_uri` de l'IdP et son document de découverte uniquement à partir de cette valeur, jamais à partir des en-têtes `X-Forwarded-*`.225 * `public_url` : l'origine `https://` externe, requise pour tout bind non-loopback ; consultez la [référence `listen`](/docs/fr/claude-apps-gateway-config#listen). La passerelle construit l'`redirect_uri` de l'IdP et son document de découverte uniquement à partir de cette valeur, jamais à partir des en-têtes `X-Forwarded-*`.

226 * `trusted_proxies` : les plages source du frontal. La passerelle honore `X-Forwarded-For` uniquement lorsque le pair TCP est dans cette liste, puis parcourt la chaîne au-delà des sauts de confiance, donc les limites de taux de connexion par IP et les événements d'audit enregistrent les adresses IP des développeurs au lieu de celle de l'équilibreur de charge.226 * `trusted_proxies` : les plages source du frontal. La passerelle honore `X-Forwarded-For` uniquement lorsque le pair TCP est dans cette liste, puis parcourt la chaîne au-delà des sauts de confiance, donc les limites de taux de connexion par IP et les événements d'audit enregistrent les adresses IP des développeurs au lieu de celle de l'équilibreur de charge.


255 255 

256 store:256 store:

257 postgres_url: ${GATEWAY_POSTGRES_URL} # EKS: ${file:/secrets/postgres-url}257 postgres_url: ${GATEWAY_POSTGRES_URL} # EKS: ${file:/secrets/postgres-url}

258 # readiness_grace_seconds: 300 # continuer à passer la vérification de santé

259 # lors d'un basculement RDS

258 260 

259 upstreams:261 upstreams:

260 - provider: bedrock262 - provider: bedrock


423 --load-balancers "targetGroupArn=$TG_ARN,containerName=gateway,containerPort=8080"425 --load-balancers "targetGroupArn=$TG_ARN,containerName=gateway,containerPort=8080"

424 ```426 ```

425 427 

426 La période de grâce de 60 secondes donne à une tâche froide le temps de tirer l'image, de se connecter au store et de répondre à sa première vérification de santé avant qu'ECS ne commence à compter les défaillances par rapport au déploiement. La vérification de santé du groupe cible sur `GET /readyz` vérifie que le store est accessible, donc une tâche qui ne peut pas atteindre Postgres n'entre jamais en rotation ; consultez [Comportement en cas de panne](/docs/fr/claude-apps-gateway-deploy#outage-behavior) pour le compromis et l'alternative `/healthz`.428 La période de grâce de 60 secondes donne à une tâche froide le temps de tirer l'image, de se connecter au store et de répondre à sa première vérification de santé avant qu'ECS ne commence à compter les défaillances par rapport au déploiement. La vérification de santé du groupe cible sur `GET /readyz` vérifie que le store est accessible, donc une tâche qui ne peut pas atteindre Postgres n'entre jamais en rotation. Pour garder les tâches passant la vérification lors d'une courte panne de base de données telle qu'un basculement RDS, définissez `store.readiness_grace_seconds` comme décrit dans [Comportement en cas de panne](/docs/fr/claude-apps-gateway-deploy#outage-behavior), qui couvre également l'alternative `/healthz`.

427 429 

428 Les tâches s'exécutent dans des sous-réseaux privés sans IP publique, donc tout le trafic sortant (vers Bedrock, votre IdP, Secrets Manager, ECR et CloudWatch Logs) passe par la passerelle NAT. Pour garder le trafic Bedrock hors du chemin public, créez un point de terminaison VPC d'interface `bedrock-runtime` et pointez l'`base_url` upstream vers celui-ci, comme indiqué dans la [référence upstream Bedrock](/docs/fr/claude-apps-gateway-config#amazon-bedrock) ; l'IdP a toujours besoin d'une sortie Internet.430 Les tâches s'exécutent dans des sous-réseaux privés sans IP publique, donc tout le trafic sortant (vers Bedrock, votre IdP, Secrets Manager, ECR et CloudWatch Logs) passe par la passerelle NAT. Pour garder le trafic Bedrock hors du chemin public, créez un point de terminaison VPC d'interface `bedrock-runtime` et pointez l'`base_url` upstream vers celui-ci, comme indiqué dans la [référence upstream Bedrock](/docs/fr/claude-apps-gateway-config#amazon-bedrock) ; l'IdP a toujours besoin d'une sortie Internet.

429 431 

Details

86 86 

87La pré-vérification interroge Postgres avec un délai d'expiration de deux secondes. Si le magasin est inaccessible ou expire, l'application échoue ouvertement par défaut : la requête procède, la passerelle enregistre un avertissement, et la réponse ne porte pas d'en-têtes `anthropic-ratelimit-unified-*`. Définissez [`enforcement.fail_closed_on_error: true`](/docs/fr/claude-apps-gateway-config#enforcement) pour échouer fermé à la place, ce qui retourne le même `429 billing_error` mais avec le message `spend limit unavailable` et sans période, heure de réinitialisation, ou en-tête `retry-after`. L'échec ouvert empêche une panne de magasin de devenir une panne d'inférence ; l'échec fermé garantit aucune dépense non mesurée.87La pré-vérification interroge Postgres avec un délai d'expiration de deux secondes. Si le magasin est inaccessible ou expire, l'application échoue ouvertement par défaut : la requête procède, la passerelle enregistre un avertissement, et la réponse ne porte pas d'en-têtes `anthropic-ratelimit-unified-*`. Définissez [`enforcement.fail_closed_on_error: true`](/docs/fr/claude-apps-gateway-config#enforcement) pour échouer fermé à la place, ce qui retourne le même `429 billing_error` mais avec le message `spend limit unavailable` et sans période, heure de réinitialisation, ou en-tête `retry-after`. L'échec ouvert empêche une panne de magasin de devenir une panne d'inférence ; l'échec fermé garantit aucune dépense non mesurée.

88 88 

89L'échec ouvert n'aide que si votre équilibreur de charge ou orchestrateur achemine toujours le trafic vers la passerelle. Voir [Comportement en cas de panne](/docs/fr/claude-apps-gateway-deploy#outage-behavior) pour `store.readiness_grace_seconds`, qui maintient les répliques passant leur vérification de disponibilité à travers une courte panne.

90 

89<h3 id="usage-warnings-in-claude-code">91<h3 id="usage-warnings-in-claude-code">

90 Avertissements d'utilisation dans Claude Code92 Avertissements d'utilisation dans Claude Code

91</h3>93</h3>

Details

59 59 

60L'installation de l'application Claude GitHub sur un référentiel active également [Auto-fix](#auto-fix-pull-requests) pour les demandes de tirage qu'il contient.60L'installation de l'application Claude GitHub sur un référentiel active également [Auto-fix](#auto-fix-pull-requests) pour les demandes de tirage qu'il contient.

61 61 

62Les threads dans un [projet](/docs/fr/claude-projects) ont besoin que l'application soit installée sur chaque référentiel qu'ils clonent, quelle que soit la méthode de connexion utilisée. Consultez [Configurer l'accès GitHub](/docs/fr/claude-projects#set-up-github-access).62Les threads dans un [projet](/docs/fr/claude-projects) ont besoin que l'application Claude GitHub soit installée sur chaque référentiel qu'ils clonent, quelle que soit la méthode de connexion utilisée. Consultez [Configurer l'accès GitHub](/docs/fr/claude-projects#set-up-github-access).

63 

64Dans les environnements hébergés par Anthropic, vos identifiants GitHub restent chiffrés sur les serveurs d'Anthropic et n'entrent jamais dans la VM d'une session. Les opérations GitHub depuis la VM passent par le [proxy GitHub](/docs/fr/cloud-environments#github-proxy), qui attache l'identifiant côté serveur.

63 65 

64Pour savoir comment `/schedule` vérifie l'accès au référentiel avant de créer une routine, consultez [Référentiels et permissions de branche](/docs/fr/routines#repositories-and-branch-permissions). Consultez [Connecter depuis votre terminal](/docs/fr/web-quickstart#connect-from-your-terminal) pour la procédure pas à pas de `/web-setup`, y compris ce que `/web-setup` stocke et comment le supprimer.66Pour savoir comment `/schedule` vérifie l'accès au référentiel avant de créer une routine, consultez [Référentiels et permissions de branche](/docs/fr/routines#repositories-and-branch-permissions). Consultez [Connecter depuis votre terminal](/docs/fr/web-quickstart#connect-from-your-terminal) pour la procédure pas à pas de `/web-setup`, y compris ce que `/web-setup` stocke et comment le supprimer.

65 67 


135 137 

136Quand vous exécutez `claude --cloud` depuis un référentiel qui n'a pas de remote git, ou depuis un référentiel github.com sur lequel l'application Claude GitHub n'est pas installée, Claude Code regroupe votre référentiel local et le télécharge directement vers la session cloud. Cela s'applique même si vous avez connecté GitHub avec `/web-setup`. Le bundle inclut l'historique complet de votre référentiel sur toutes les branches, plus les modifications non validées des fichiers suivis.138Quand vous exécutez `claude --cloud` depuis un référentiel qui n'a pas de remote git, ou depuis un référentiel github.com sur lequel l'application Claude GitHub n'est pas installée, Claude Code regroupe votre référentiel local et le télécharge directement vers la session cloud. Cela s'applique même si vous avez connecté GitHub avec `/web-setup`. Le bundle inclut l'historique complet de votre référentiel sur toutes les branches, plus les modifications non validées des fichiers suivis.

137 139 

138Sur macOS, Linux et WSL, Claude Code exclut les modifications non validées des fichiers nommés comme des identifiants ou des clés de l'upload et nomme les fichiers qu'il a laissés de côté. Cela couvre les fichiers `.env`, les fichiers Terraform `*.tfvars` et les fichiers clés tels que `id_rsa` et `*.pem`. La session démarre avec la version validée de chacun, ou sans le fichier si aucun n'est validé. Dans une worktree liée, un submodule ou une disposition similaire, Claude Code télécharge ces modifications avec le reste et nomme les fichiers qu'il télécharge.140Sur macOS, Linux et WSL, Claude Code exclut les modifications non validées des fichiers nommés comme des identifiants ou des clés de l'upload et nomme les fichiers qu'il a laissés de côté. Cela couvre les fichiers `.env`, les fichiers Terraform `*.tfvars` et les fichiers clés tels que `id_rsa` et `*.pem`. La session démarre avec la version validée de chacun, ou sans le fichier si aucun n'est validé.

139 141 

140Pour télécharger un bundle même quand Claude Code clonerait autrement depuis le remote, définissez `CCR_FORCE_BUNDLE=1` :142Pour télécharger un bundle même quand Claude Code clonerait autrement depuis le remote, définissez `CCR_FORCE_BUNDLE=1` :

141 143 


429Avant de compter sur les sessions cloud pour un flux de travail, tenez compte de ces contraintes :431Avant de compter sur les sessions cloud pour un flux de travail, tenez compte de ces contraintes :

430 432 

431* **Limites de débit** : les sessions cloud partagent les limites de débit avec tous les autres usages de Claude et Claude Code au sein de votre compte. L'exécution de plusieurs tâches en parallèle consomme proportionnellement plus de limites de débit. Il n'y a pas de frais de calcul séparé pour la VM cloud.433* **Limites de débit** : les sessions cloud partagent les limites de débit avec tous les autres usages de Claude et Claude Code au sein de votre compte. L'exécution de plusieurs tâches en parallèle consomme proportionnellement plus de limites de débit. Il n'y a pas de frais de calcul séparé pour la VM cloud.

434* **Limites de temps** : les commandes que Claude exécute et les hooks SessionStart ont des délais d'expiration par défaut que vous pouvez modifier, et un script de configuration n'est mis en cache que lorsqu'il se termine en environ cinq minutes. Voir [Limites de temps](/docs/fr/cloud-environments#time-limits)

432* **Authentification du référentiel** : vous ne pouvez déplacer une session cloud vers votre terminal que lorsque vous êtes authentifié au même compte435* **Authentification du référentiel** : vous ne pouvez déplacer une session cloud vers votre terminal que lorsque vous êtes authentifié au même compte

433* **Restrictions de plateforme** : le clonage du référentiel et la création de demandes de tirage nécessitent GitHub. Les instances [GitHub Enterprise Server](/docs/fr/github-enterprise-server) auto-hébergées sont prises en charge pour les plans Team et Enterprise. Vous pouvez envoyer un référentiel GitLab, Bitbucket ou autre référentiel non-GitHub à une session cloud en tant que [paquet local](#send-local-repositories-without-github) en définissant `CCR_FORCE_BUNDLE=1`, mais la session ne peut pas pousser les résultats vers ce serveur distant436* **Restrictions de plateforme** : le clonage du référentiel et la création de demandes de tirage nécessitent GitHub. Les instances [GitHub Enterprise Server](/docs/fr/github-enterprise-server) auto-hébergées sont prises en charge pour les plans Team et Enterprise. Vous pouvez envoyer un référentiel GitLab, Bitbucket ou autre référentiel non-GitHub à une session cloud en tant que [paquet local](#send-local-repositories-without-github) en définissant `CCR_FORCE_BUNDLE=1`, mais la session ne peut pas pousser les résultats vers ce serveur distant

434* **Liste d'autorisation IP de l'organisation** : les sessions cloud appellent l'API Anthropic à partir de l'infrastructure gérée par Anthropic, pas de votre réseau, tandis que les sessions dans un [environnement auto-hébergé](/docs/fr/self-hosted-environments) l'appellent à partir de votre propre réseau. Si votre organisation a [l'autorisation IP](https://support.claude.com/en/articles/13200993-restrict-access-to-claude-with-ip-allowlisting) activée, chaque session cloud hébergée par Anthropic échoue avec une erreur d'authentification. Il en va de même pour [Code Review](/docs/fr/code-review) et pour les [routines](/docs/fr/routines) qui s'exécutent sur les environnements hébergés par Anthropic ; une routine acheminée vers un environnement auto-hébergé appelle l'API à partir de votre propre réseau. Contactez [le support Anthropic](https://support.claude.com/) pour exempter les services hébergés par Anthropic de la liste d'autorisation IP de votre organisation.437* **Liste d'autorisation IP de l'organisation** : les sessions cloud appellent l'API Anthropic à partir de l'infrastructure gérée par Anthropic, pas de votre réseau, tandis que les sessions dans un [environnement auto-hébergé](/docs/fr/self-hosted-environments) l'appellent à partir de votre propre réseau. Si votre organisation a [l'autorisation IP](https://support.claude.com/en/articles/13200993-restrict-access-to-claude-with-ip-allowlisting) activée, chaque session cloud hébergée par Anthropic échoue avec une erreur d'authentification. Il en va de même pour [Code Review](/docs/fr/code-review) et pour les [routines](/docs/fr/routines) qui s'exécutent sur les environnements hébergés par Anthropic ; une routine acheminée vers un environnement auto-hébergé appelle l'API à partir de votre propre réseau. Contactez [le support Anthropic](https://support.claude.com/) pour exempter les services hébergés par Anthropic de la liste d'autorisation IP de votre organisation.

Details

1554| `projects/<project>/<session>.jsonl` | Transcription complète de la conversation : chaque message, appel d'outil et résultat d'outil |1554| `projects/<project>/<session>.jsonl` | Transcription complète de la conversation : chaque message, appel d'outil et résultat d'outil |

1555| `projects/<project>/<session>.orphaned-<timestamp>-<suffix>.jsonl`, `projects/<project>/<session>.jsonl.superseded-<timestamp>` | Une transcription précédente de la session que Claude Code a mise de côté au lieu de la remplacer ou de la supprimer. Elle n'apparaît pas dans le sélecteur de session |1555| `projects/<project>/<session>.orphaned-<timestamp>-<suffix>.jsonl`, `projects/<project>/<session>.jsonl.superseded-<timestamp>` | Une transcription précédente de la session que Claude Code a mise de côté au lieu de la remplacer ou de la supprimer. Elle n'apparaît pas dans le sélecteur de session |

1556| `projects/<project>/<session>/subagents/` | Transcriptions de conversation [Subagent](/docs/fr/sub-agents), supprimées avec la transcription de session parent lorsqu'elle vieillit |1556| `projects/<project>/<session>/subagents/` | Transcriptions de conversation [Subagent](/docs/fr/sub-agents), supprimées avec la transcription de session parent lorsqu'elle vieillit |

1557| `projects/<project>/<session>/tool-results/` | Grandes sorties d'outil déversées dans des fichiers séparés |1557| `projects/<project>/<session>/tool-results/` | Grandes sorties d'outil déversées dans des fichiers séparés, et copies en taille réelle des [images que les outils MCP retournent](/docs/fr/mcp#images-in-tool-results) |

1558| `file-history/<session>/` | Snapshots pré-édition des fichiers que Claude a modifiés, utilisés pour [restauration de checkpoint](/docs/fr/checkpointing). Contient des snapshots pour les 100 checkpoints les plus récents ; les fichiers snapshot auxquels aucun checkpoint conservé ne fait référence sont supprimés, sauf le premier snapshot de chaque fichier |1558| `file-history/<session>/` | Snapshots pré-édition des fichiers que Claude a modifiés, utilisés pour [restauration de checkpoint](/docs/fr/checkpointing). Contient des snapshots pour les 100 checkpoints les plus récents ; les fichiers snapshot auxquels aucun checkpoint conservé ne fait référence sont supprimés, sauf le premier snapshot de chaque fichier |

1559| `plans/` | Fichiers de plan écrits pendant le [mode plan](/docs/fr/permission-modes#analyze-before-you-edit-with-plan-mode) |1559| `plans/` | Fichiers de plan écrits pendant le [mode plan](/docs/fr/permission-modes#analyze-before-you-edit-with-plan-mode) |

1560| `debug/` | Journaux de débogage par session, écrits lorsque la journalisation de débogage est activée, par exemple lorsque vous démarrez avec [`--debug`](/docs/fr/cli-reference#cli-flags) ou exécutez `/debug` |1560| `debug/` | Journaux de débogage par session, écrits lorsque la journalisation de débogage est activée, par exemple lorsque vous démarrez avec [`--debug`](/docs/fr/cli-reference#cli-flags) ou exécutez `/debug` |


1582* **Mode bare** : lorsque vous exécutez `claude -p` avec [`--bare`](/docs/fr/headless#start-faster-with-bare-mode), Claude Code n'exécute pas le balayage dans cette session.1582* **Mode bare** : lorsque vous exécutez `claude -p` avec [`--bare`](/docs/fr/headless#start-faster-with-bare-mode), Claude Code n'exécute pas le balayage dans cette session.

1583* **Balayage en pause** : si Claude Code ne peut pas déterminer en toute sécurité la période de rétention, il met en pause le balayage de nettoyage de rétention ; l'[événement `retention_sweep`](/docs/fr/monitoring-usage#retention-sweep-event) énumère chaque configuration qui le met en pause. Lorsque la cause est un fichier de paramètres qui ne peut pas être lu ou analysé, ou des erreurs de paramètres avec `cleanupPeriodDays` ou `desktopSessionCleanupPeriodDays` explicitement définis, Claude Code affiche également un avertissement dans `/status` jusqu'à ce que vous corrigiez les erreurs de paramètres. Lorsque les [paramètres gérés](/docs/fr/server-managed-settings) fournissent `cleanupPeriodDays`, Claude Code exécute le balayage à la valeur gérée dans les deux cas.1583* **Balayage en pause** : si Claude Code ne peut pas déterminer en toute sécurité la période de rétention, il met en pause le balayage de nettoyage de rétention ; l'[événement `retention_sweep`](/docs/fr/monitoring-usage#retention-sweep-event) énumère chaque configuration qui le met en pause. Lorsque la cause est un fichier de paramètres qui ne peut pas être lu ou analysé, ou des erreurs de paramètres avec `cleanupPeriodDays` ou `desktopSessionCleanupPeriodDays` explicitement définis, Claude Code affiche également un avertissement dans `/status` jusqu'à ce que vous corrigiez les erreurs de paramètres. Lorsque les [paramètres gérés](/docs/fr/server-managed-settings) fournissent `cleanupPeriodDays`, Claude Code exécute le balayage à la valeur gérée dans les deux cas.

1584 1584 

1585<h3 id="session-scratchpad-directory">

1586 Répertoire de bloc-notes de session

1587</h3>

1588 

1589Le bloc-notes est un répertoire par session que Claude Code fournit à Claude pour les fichiers temporaires : résultats intermédiaires, scripts d'aide et brouillons qui n'appartiennent pas à votre projet. Lorsque Claude dit qu'il a enregistré quelque chose « dans le bloc-notes », le fichier s'y trouve. Claude l'utilise à la place de `/tmp`, et peut créer, modifier et lire des fichiers dedans sans invite de permission.

1590 

1591Le bloc-notes se trouve sous le répertoire temporaire de Claude Code plutôt que sous `~/.claude`. Trouvez le chemin de la session actuelle pour votre plateforme :

1592 

1593* **macOS** : `/private/tmp/claude-<uid>/<project>/<session-id>/scratchpad/`

1594* **Linux** : `/tmp/claude-<uid>/<project>/<session-id>/scratchpad/`, ou la même forme sous `$TMPDIR` lorsque votre système en définit un

1595* **Windows** : `%TEMP%\claude\<project>\<session-id>\scratchpad\`

1596 

1597`<project>` est le chemin de votre répertoire de travail avec chaque caractère autre que les lettres et les chiffres remplacé par `-`, par exemple `-Users-you-my-project`. Si vous définissez [`CLAUDE_CODE_TMPDIR`](/docs/fr/env-vars), l'arborescence se déplace sous ce répertoire à la place. Les hooks reçoivent le chemin de la session actuelle en tant que [`scratchpad_dir`](/docs/fr/hooks#common-input-fields).

1598 

1599Les fichiers du bloc-notes durent aussi longtemps que la transcription de la session : le [balayage de rétention](#cleaned-up-automatically) supprime le répertoire lorsqu'il supprime la transcription, et [`claude project purge`](#clear-local-data) ne touche pas au répertoire temporaire. Parce que le répertoire se trouve sous l'emplacement temporaire du système, votre système d'exploitation peut également le supprimer, par exemple au redémarrage. Pour conserver quelque chose que Claude a écrit là, demandez à Claude de le déplacer dans votre projet.

1600 

1601Une session a un bloc-notes uniquement lorsque tous ces éléments sont vrais :

1602 

1603* Vous êtes connecté avec un compte claude.ai plutôt qu'une clé API

1604* La session utilise l'API Anthropic, pas Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry

1605* [`enableArtifact`](/docs/fr/settings-reference#enableartifact) n'est pas défini sur `false`

1606 

1585<h3 id="kept-until-you-delete-them">1607<h3 id="kept-until-you-delete-them">

1586 Conservés jusqu'à ce que vous les supprimiez1608 Conservés jusqu'à ce que vous les supprimiez

1587</h3>1609</h3>


1626* Lignes d'invite correspondantes dans `history.jsonl`1648* Lignes d'invite correspondantes dans `history.jsonl`

1627* L'entrée du projet dans `~/.claude.json`1649* L'entrée du projet dans `~/.claude.json`

1628 1650 

1629Les images que vous avez collées ou jointes dans les sessions du projet sont stockées sous le répertoire temporaire de Claude Code plutôt que sous `~/.claude`, donc le purge ne les supprime pas. Le [balayage de rétention](#cleaned-up-automatically) les supprime une fois qu'elles sont plus anciennes que `cleanupPeriodDays`.1651Les images que vous avez collées ou jointes dans les sessions du projet et le [bloc-notes](#session-scratchpad-directory) de chaque session sont stockés sous le répertoire temporaire de Claude Code plutôt que sous `~/.claude`, donc le purge ne les supprime pas. Le [balayage de rétention](#cleaned-up-automatically) supprime toujours les images une fois qu'elles sont plus anciennes que `cleanupPeriodDays` ; le bloc-notes d'une session purgée reste jusqu'à ce que vous le supprimiez ou que votre système d'exploitation efface le répertoire temporaire.

1630 1652 

1631La commande imprime le plan de suppression complet et demande une confirmation avant de supprimer quoi que ce soit.1653La commande imprime le plan de suppression complet et demande une confirmation avant de supprimer quoi que ce soit.

1632 1654 

Details

12 12 

13Un projet est une conversation en cours unique où Claude coordonne un flux de travaux connexes pour vous. Vous lui dites ce qui doit être fait et il démarre un thread pour chaque tâche.13Un projet est une conversation en cours unique où Claude coordonne un flux de travaux connexes pour vous. Vous lui dites ce qui doit être fait et il démarre un thread pour chaque tâche.

14 14 

15Chaque thread est généralement une [session cloud](/docs/fr/claude-code-on-the-web) : Claude Code s'exécutant dans le cloud plutôt que sur votre machine. Quand une tâche a besoin de quelque chose que seul votre ordinateur possède, vous pouvez demander à Claude d'exécuter ce thread sur votre ordinateur à la place via [Remote Control](/docs/fr/remote-control). Les threads s'exécutent en parallèle et vous pouvez les vérifier et les diriger depuis votre téléphone. Les threads cloud continuent après que vous ayez fermé l'ordinateur portable.15Chaque thread est généralement une [session cloud](/docs/fr/claude-code-on-the-web) : Claude Code s'exécutant dans le cloud plutôt que sur votre machine. Quand une tâche a besoin de quelque chose que seul votre ordinateur possède, vous pouvez demander à Claude d'[exécuter ce thread sur votre ordinateur](#run-a-thread-on-your-own-computer) à la place via [Remote Control](/docs/fr/remote-control). Les threads s'exécutent en parallèle et vous pouvez les vérifier et les diriger depuis votre téléphone. Les threads cloud continuent après que vous ayez fermé l'ordinateur portable, tandis qu'un thread sur votre ordinateur s'exécute uniquement tant que cet ordinateur est actif.

16 16 

17Sans projet, l'exécution de plusieurs sessions signifie faire la coordination vous-même : vous décidez sur quoi chacun travaille, répétez le même contexte au début de chacun, et vérifiez lequel a terminé ou a besoin d'une réponse. Avec un projet, vous pouvez plutôt :17Sans projet, l'exécution de plusieurs sessions signifie faire la coordination vous-même : vous décidez sur quoi chacun travaille, répétez le même contexte au début de chacun, et vérifiez lequel a terminé ou a besoin d'une réponse. Avec un projet, vous pouvez plutôt :

18 18 


39 Quand quelque chose d'autre convient mieux39 Quand quelque chose d'autre convient mieux

40</h3>40</h3>

41 41 

42Les threads cloud fonctionnent sur les référentiels GitHub et sur les fichiers, dossiers et dossiers Google Drive que vous téléchargez vers le projet, pas sur les fichiers ou outils qui n'existent que sur votre machine. Si une tâche nécessite votre machine, demandez à Claude d'exécuter son thread là-bas via [Remote Control](/docs/fr/remote-control). [Limitations](#limitations) énumère ce dont cela a besoin. Quelque chose d'autre convient mieux dans ces cas :42Un projet convient toujours quand seules certaines tâches nécessitent votre machine. Les threads cloud fonctionnent sur les référentiels GitHub et sur les fichiers, dossiers et dossiers Google Drive que vous téléchargez vers le projet, et pour la tâche occasionnelle qui nécessite une base de données locale ou un outil sur votre ordinateur, vous pouvez demander à Claude d'[exécuter le thread de cette tâche sur votre ordinateur](#run-a-thread-on-your-own-computer). Quelque chose d'autre qu'un projet convient mieux dans ces cas :

43 43 

44* **Une tâche qui tient dans une session** : « Corriger le test de connexion instable. » Démarrez une [session cloud](/docs/fr/claude-code-on-the-web) vous-même.44* **Une tâche qui tient dans une session** : « Corriger le test de connexion instable. » Démarrez une [session cloud](/docs/fr/claude-code-on-the-web) vous-même.

45* **Un travail où chaque tâche nécessite votre machine** : une base de données locale, un émulateur d'appareil, ou une API derrière votre VPN. Utilisez une session locale, ou [agent view](/docs/fr/agent-view) pour en exécuter plusieurs à la fois. Si le travail ne nécessite que des fichiers locaux, téléchargez-les vers le projet à la place.45* **Un travail où chaque tâche nécessite votre machine** : une base de données locale, un émulateur d'appareil, ou une API derrière votre VPN. Utilisez une session locale, ou [agent view](/docs/fr/agent-view) pour en exécuter plusieurs à la fois. Si le travail ne nécessite que des fichiers locaux, téléchargez-les vers le projet à la place.


277 277 

278Chaque approbation couvre cette invite, ou le reste de ce thread si vous choisissez l'option plus large. Pour laisser chaque thread exécuter certaines commandes sans demander, ou pour en bloquer certaines, ajoutez des [règles de permission](/docs/fr/permissions) au `.claude/settings.json` du référentiel. Les threads ne les appliquent que dans un projet avec un référentiel ; voir [Ce que les threads reprennent de vos référentiels](#what-threads-pick-up-from-your-repositories).278Chaque approbation couvre cette invite, ou le reste de ce thread si vous choisissez l'option plus large. Pour laisser chaque thread exécuter certaines commandes sans demander, ou pour en bloquer certaines, ajoutez des [règles de permission](/docs/fr/permissions) au `.claude/settings.json` du référentiel. Les threads ne les appliquent que dans un projet avec un référentiel ; voir [Ce que les threads reprennent de vos référentiels](#what-threads-pick-up-from-your-repositories).

279 279 

280<h3 id="run-a-thread-on-your-own-computer">

281 Exécuter un thread sur votre propre ordinateur

282</h3>

283 

284Quand une tâche a besoin de quelque chose que seul votre ordinateur possède, comme une base de données locale, un émulateur d'appareil ou une API derrière votre VPN, demandez à Claude d'exécuter le thread pour cette tâche sur votre ordinateur au lieu du cloud. Quand vous demandez dans la conversation du projet, le thread est une session Claude Code dans un dossier sur votre machine, connectée via [Remote Control](/docs/fr/remote-control). Les autres threads du projet continuent de s'exécuter dans le cloud. Comparé à un thread cloud, un thread sur votre ordinateur :

285 

286* Fonctionne avec les fichiers, les outils, les serveurs MCP et les paramètres Claude Code sur cette machine au lieu de l'environnement cloud du projet

287* Commence avec les instructions du projet, mais pas avec ses fichiers de mémoire chargés

288* S'exécute uniquement tant que cet ordinateur est éveillé avec Remote Control activé

289 

290<Steps>

291 <Step title="Connecter le dossier">

292 Sur l'ordinateur qui a le dossier dont la tâche a besoin, rendez-le disponible via Remote Control de l'une des deux façons. Les deux ont besoin de Claude Code v2.1.280 ou ultérieur sur cet ordinateur.

293 

294 * **Dans l'application de bureau Claude** : ouvrez **Settings > Claude Code**, activez **Use this computer from your phone and claude.ai**, et ajoutez le dossier à la liste sous ce commutateur. Les threads peuvent s'exécuter sur cet ordinateur pendant que l'application est ouverte.

295 * **Dans un terminal** : exécutez `claude remote-control` dans le dossier et laissez-le s'exécuter.

296 </Step>

297 

298 <Step title="Demander la tâche avec Work locally">

299 Dans la conversation du projet, choisissez **Work locally** dans le menu **+** à côté de la boîte de message, qui marque votre message **Local**, et écrivez ce que vous voulez faire. Dire dans le message que la tâche doit s'exécuter sur votre ordinateur fonctionne aussi.

300 </Step>

301 

302 <Step title="L'autoriser sur la carte">

303 Claude répond avec une carte **Allow Claude to work in a folder on your device**. Choisissez le dossier si vous en avez connecté plusieurs. Puis cliquez sur **Allow once**.

304 </Step>

305</Steps>

306 

307Le thread s'exécute en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), donc Claude exécute les commandes et édite les fichiers dans ce dossier sans vous demander à chaque fois. Si le mode auto n'est pas disponible ou désactivé dans Claude Code sur cet ordinateur, le thread s'exécute sans lui, et toute invite de permission qu'il lève attend votre réponse dans le thread, comme [Débloquer un thread en attente d'approbation](#unblock-a-thread-waiting-on-approval) le décrit.

308 

309Pendant que le thread s'exécute, une icône d'ordinateur portable dans son en-tête montre si votre ordinateur est connecté. Cliquez dessus pour voir quel dossier le thread utilise ou pour désactiver la connexion. Le thread s'interrompt pendant que cet ordinateur dort, et s'arrête si l'application de bureau ou `claude remote-control` quitte. [Perte de contact avec votre dossier](#lost-contact-with-your-folder) couvre comment le remettre en marche. Dans l'application de bureau, activez **Keep this computer awake for Remote Control** sous **Settings > Claude Code** pour empêcher l'ordinateur de s'endormir de lui-même.

310 

311Un projet ne peut pas exécuter un thread sur votre ordinateur pendant que [**Require trusted devices**](/docs/fr/remote-control#trusted-devices) est activé pour votre compte.

312 

280<h2 id="give-a-project-standing-context">313<h2 id="give-a-project-standing-context">

281 Donner un contexte permanent à un projet314 Donner un contexte permanent à un projet

282</h2>315</h2>


441* **Claude Tag** : [Claude Tag](https://claude.com/docs/claude-tag/overview) est Claude dans les canaux Slack de votre équipe, sur les plans Team et Enterprise. N'importe qui dans un canal peut lui donner du travail, tout le monde dans le canal le voit et le dirige, et il utilise les connexions qu'un administrateur a configurées pour ce canal. Un projet est le vôtre seul : vous êtes le seul à lui envoyer du travail ou à voir ses threads, il utilise votre propre accès GitHub et vos connecteurs, et il est sur Pro et Max. [Comment Claude Tag diffère de Cowork et Claude Code](https://claude.com/docs/claude-tag/concepts/how-it-works#how-claude-tag-differs-from-cowork-and-claude-code) a le côté à côté.474* **Claude Tag** : [Claude Tag](https://claude.com/docs/claude-tag/overview) est Claude dans les canaux Slack de votre équipe, sur les plans Team et Enterprise. N'importe qui dans un canal peut lui donner du travail, tout le monde dans le canal le voit et le dirige, et il utilise les connexions qu'un administrateur a configurées pour ce canal. Un projet est le vôtre seul : vous êtes le seul à lui envoyer du travail ou à voir ses threads, il utilise votre propre accès GitHub et vos connecteurs, et il est sur Pro et Max. [Comment Claude Tag diffère de Cowork et Claude Code](https://claude.com/docs/claude-tag/concepts/how-it-works#how-claude-tag-differs-from-cowork-and-claude-code) a le côté à côté.

442* **Sessions cloud** : chaque thread est une [session cloud](/docs/fr/claude-code-on-the-web) sauf si vous demandez à Claude de l'exécuter sur votre machine. De toute façon, Claude la démarre et la suit au lieu de vous. Une session cloud que vous avez démarrée vous-même peut devenir un projet ou en alimenter un via [**Continue as a project** ou **Move to project**](#start-from-an-existing-cloud-session).475* **Sessions cloud** : chaque thread est une [session cloud](/docs/fr/claude-code-on-the-web) sauf si vous demandez à Claude de l'exécuter sur votre machine. De toute façon, Claude la démarre et la suit au lieu de vous. Une session cloud que vous avez démarrée vous-même peut devenir un projet ou en alimenter un via [**Continue as a project** ou **Move to project**](#start-from-an-existing-cloud-session).

443* **Routines** : quand vous demandez du travail programmé dans un projet, Claude crée une [routine](/docs/fr/routines) qui s'exécute en tant que threads dans ce projet et apparaît sur son onglet **Routines**. Les routines que vous créez en dehors d'un projet continuent à fonctionner seules.476* **Routines** : quand vous demandez du travail programmé dans un projet, Claude crée une [routine](/docs/fr/routines) qui s'exécute en tant que threads dans ce projet et apparaît sur son onglet **Routines**. Les routines que vous créez en dehors d'un projet continuent à fonctionner seules.

444* **Sessions locales et agent view** : une session que vous démarrez vous-même dans votre terminal, IDE ou l'environnement local de l'application de bureau ne peut pas être ajoutée à un projet. Un projet atteint votre machine uniquement en exécutant un thread là-bas via [Remote Control](/docs/fr/remote-control). [Agent view](/docs/fr/agent-view) est un écran pour suivre plusieurs sessions locales que vous avez démarrées vous-même ; il n'a pas de coordinateur.477* **Remote Control** : [Remote Control](/docs/fr/remote-control) connecte claude.ai à une session Claude Code s'exécutant sur votre machine. Quand vous demandez à Claude dans un projet d'exécuter un thread sur votre ordinateur, le projet [utilise Remote Control pour le faire](#run-a-thread-on-your-own-computer).

478* **Sessions locales et agent view** : une session que vous démarrez vous-même dans votre terminal, IDE ou l'environnement local de l'application de bureau ne peut pas être ajoutée à un projet. [Agent view](/docs/fr/agent-view) est un écran pour suivre plusieurs sessions locales côte à côte, et vous démarrez toujours chacune et lui donnez sa tâche vous-même.

445* **Worktrees** : un [worktree](/docs/fr/worktrees) donne à chaque session locale sa propre copie de travail d'un référentiel pour que les sessions parallèles sur votre machine ne s'écrasent pas mutuellement. Les threads cloud n'en ont pas besoin : chacun clone ses référentiels dans son propre sandbox cloud et travaille sur sa propre branche.479* **Worktrees** : un [worktree](/docs/fr/worktrees) donne à chaque session locale sa propre copie de travail d'un référentiel pour que les sessions parallèles sur votre machine ne s'écrasent pas mutuellement. Les threads cloud n'en ont pas besoin : chacun clone ses référentiels dans son propre sandbox cloud et travaille sur sa propre branche.

446* **Équipes d'agents** : une [équipe d'agents](/docs/fr/agent-teams) est une session qui démarre des sessions de coéquipiers pour une seule tâche, sur votre machine ou à l'intérieur d'une session cloud, et se termine avec cette tâche.480* **Équipes d'agents** : une [équipe d'agents](/docs/fr/agent-teams) est une session qui démarre des sessions de coéquipiers pour une seule tâche, sur votre machine ou à l'intérieur d'une session cloud, et se termine avec cette tâche.

447* **Projects dans le chat claude.ai et Cowork** : l'[expérience Projects antérieure](https://support.claude.com/en/articles/9517075-what-are-projects), qui groupe les conversations et les fichiers de référence sans threads ni coordinateur. Ces projets continuent à fonctionner comme ils le font aujourd'hui jusqu'à ce que l'expérience repensée les atteigne.481* **Projects dans le chat claude.ai et Cowork** : l'[expérience Projects antérieure](https://support.claude.com/en/articles/9517075-what-are-projects), qui groupe les conversations et les fichiers de référence sans threads ni coordinateur. Ces projets continuent à fonctionner comme ils le font aujourd'hui jusqu'à ce que l'expérience repensée les atteigne.


454 488 

455* Les projets sont disponibles à claude.ai/code, dans l'application de bureau et dans l'application mobile Claude, pas dans le CLI du terminal ou via Amazon Bedrock, la plateforme d'agents de Google Cloud ou Microsoft Foundry. La commande [`claude project`](/docs/fr/cli-reference) du CLI, qui gère l'état local de Claude Code pour un répertoire, n'est pas liée.489* Les projets sont disponibles à claude.ai/code, dans l'application de bureau et dans l'application mobile Claude, pas dans le CLI du terminal ou via Amazon Bedrock, la plateforme d'agents de Google Cloud ou Microsoft Foundry. La commande [`claude project`](/docs/fr/cli-reference) du CLI, qui gère l'état local de Claude Code pour un répertoire, n'est pas liée.

456* Les threads du projet sont des [sessions cloud](/docs/fr/claude-code-on-the-web), ou des sessions sur votre propre machine via [Remote Control](/docs/fr/remote-control), avec Anthropic comme fournisseur de modèle dans les deux cas. [Sécurité](/docs/fr/security) et [Utilisation des données](/docs/fr/data-usage) couvrent comment les sessions cloud sont isolées et ce qui est conservé, et [Connexion et sécurité](/docs/fr/remote-control#connection-and-security) couvre comment un thread sur votre machine se connecte et ce qui est stocké.490* Les threads du projet sont des [sessions cloud](/docs/fr/claude-code-on-the-web), ou des sessions sur votre propre machine via [Remote Control](/docs/fr/remote-control), avec Anthropic comme fournisseur de modèle dans les deux cas. [Sécurité](/docs/fr/security) et [Utilisation des données](/docs/fr/data-usage) couvrent comment les sessions cloud sont isolées et ce qui est conservé, et [Connexion et sécurité](/docs/fr/remote-control#connection-and-security) couvre comment un thread sur votre machine se connecte et ce qui est stocké.

457* Vous ne pouvez pas ajouter une session que vous avez démarrée vous-même sur votre machine à un projet. Pour permettre à un projet d'exécuter un thread sur votre machine, connectez le dossier dans lequel il doit fonctionner via [Remote Control](/docs/fr/remote-control#requirements) : activez Remote Control sous **Paramètres > Claude Code** dans l'application de bureau Claude, ou exécutez `claude remote-control` dans le dossier et laissez-le s'exécuter. Cette machine doit avoir Claude Code v2.1.280 ou version ultérieure. Un projet ne peut pas non plus exécuter un thread sur votre machine tandis que **Require trusted devices** est activé dans vos paramètres claude.ai.491* Vous ne pouvez pas ajouter une session que vous avez démarrée vous-même sur votre machine à un projet. Un projet atteint votre machine uniquement en [exécutant un thread là-bas via Remote Control](#run-a-thread-on-your-own-computer), et cette section énumère ce dont il a besoin.

458* Le sandbox d'un thread cloud se met en pause entre les tours et reprend quand le thread continue. Si le sandbox ne peut pas être repris, le thread continue à partir d'un clone frais, donc les modifications non validées peuvent être perdues. Sur les tâches longues, demandez à Claude de valider et de pousser le travail en cours.492* Le sandbox d'un thread cloud se met en pause entre les tours et reprend quand le thread continue. Si le sandbox ne peut pas être repris, le thread continue à partir d'un clone frais, donc les modifications non validées peuvent être perdues. Sur les tâches longues, demandez à Claude de valider et de pousser le travail en cours.

459* Un projet appartient à un utilisateur. Vous ne pouvez pas partager un projet ou ses threads avec un autre utilisateur, et les transcriptions de threads n'ont pas l'option de partage que les autres sessions cloud ont. Il n'y a pas de contrôles au niveau de l'organisation pour les projets pendant la bêta.493* Un projet appartient à un utilisateur. Vous ne pouvez pas partager un projet ou ses threads avec un autre utilisateur, et les transcriptions de threads n'ont pas l'option de partage que les autres sessions cloud ont. Il n'y a pas de contrôles au niveau de l'organisation pour les projets pendant la bêta.

460* Un thread appartient au seul projet qui l'a démarré. Vous ne pouvez pas déplacer ou copier un thread vers un autre projet, ou le déplacer pour qu'il soit seul. [**Move to project**](#start-from-an-existing-cloud-session) va seulement dans l'autre sens : il apporte le travail d'une session cloud dans un projet.494* Un thread appartient au seul projet qui l'a démarré. Vous ne pouvez pas déplacer ou copier un thread vers un autre projet, ou le déplacer pour qu'il soit seul. [**Move to project**](#start-from-an-existing-cloud-session) va seulement dans l'autre sens : il apporte le travail d'une session cloud dans un projet.


513 547 

514Un thread ou la conversation du projet a fait une demande que votre plan ne couvre que avec des crédits d'utilisation, comme une à un modèle ou une taille de contexte que votre plan n'inclut pas, et les crédits d'utilisation ne sont pas activés pour votre compte. [Ajouter des crédits d'utilisation à votre abonnement](/docs/fr/costs#add-usage-credits-to-your-subscription) couvre qui peut les activer ou les acheter sur chaque plan. Une fois que les crédits sont disponibles, envoyez un autre message pour réessayer.548Un thread ou la conversation du projet a fait une demande que votre plan ne couvre que avec des crédits d'utilisation, comme une à un modèle ou une taille de contexte que votre plan n'inclut pas, et les crédits d'utilisation ne sont pas activés pour votre compte. [Ajouter des crédits d'utilisation à votre abonnement](/docs/fr/costs#add-usage-credits-to-your-subscription) couvre qui peut les activer ou les acheter sur chaque plan. Une fois que les crédits sont disponibles, envoyez un autre message pour réessayer.

515 549 

550<h3 id="lost-contact-with-your-folder">

551 Perte de contact avec votre dossier

552</h3>

553 

554Un thread s'exécutant sur votre ordinateur affiche ceci quand la session Claude Code là-bas a cessé de répondre, généralement parce que l'ordinateur s'est endormi ou l'application de bureau ou `claude remote-control` a quitté. Réveillez l'ordinateur, et si l'application de bureau ou `claude remote-control` ne fonctionne plus là-bas, redémarrez-la : rouvrez l'application et confirmez que **Use this computer from your phone and claude.ai** est toujours activé sous **Settings > Claude Code**, ou exécutez `claude remote-control` à nouveau dans le même dossier.

555 

516<h3 id="context-limit">556<h3 id="context-limit">

517 Autres messages557 Autres messages

518</h3>558</h3>


527| « The project's environment was removed » | Choisissez un environnement différent dans **Project settings > Environment** ; le changement s'applique aux nouveaux threads |567| « The project's environment was removed » | Choisissez un environnement différent dans **Project settings > Environment** ; le changement s'applique aux nouveaux threads |

528| « Setup script failed » | Cliquez sur **Edit setup script** sur l'erreur, corrigez le script dans l'environnement, puis envoyez un autre message. [Setup script failed](/docs/fr/web-quickstart#setup-script-failed) énumère les causes courantes |568| « Setup script failed » | Cliquez sur **Edit setup script** sur l'erreur, corrigez le script dans l'environnement, puis envoyez un autre message. [Setup script failed](/docs/fr/web-quickstart#setup-script-failed) énumère les causes courantes |

529| « Claude ran out of context on this turn » | Le thread a rempli sa fenêtre de contexte. Si le message dit que le thread continue dans une session frais, il continue de lui-même ; sinon demandez à Claude dans la conversation du projet de démarrer un nouveau thread pour le travail restant |569| « Claude ran out of context on this turn » | Le thread a rempli sa fenêtre de contexte. Si le message dit que le thread continue dans une session frais, il continue de lui-même ; sinon demandez à Claude dans la conversation du projet de démarrer un nouveau thread pour le travail restant |

570| « Couldn't start in » suivi du nom de votre dossier | Vous avez autorisé un thread à s'exécuter sur votre ordinateur, mais la session n'a pas pu démarrer là-bas. Quand une ligne sous le message donne la raison, corrigez cela, puis demandez à Claude d'exécuter la tâche à nouveau |

571| « Claude is out of date on your device » | L'ordinateur que vous avez choisi pour exécuter un thread a une version Claude Code plus ancienne que v2.1.280. Mettez à jour Claude Code là-bas, ou mettez à jour l'application de bureau si c'est ce qui connecte le dossier, puis demandez à Claude d'exécuter la tâche à nouveau |

530| « Reached the turn limit » | Le thread a atteint le plafond sur les étapes pour un message défini par [`CLAUDE_CODE_MAX_TURNS`](/docs/fr/env-vars). Envoyez un autre message pour continuer, ou augmentez ou supprimez cette variable où elle est définie |572| « Reached the turn limit » | Le thread a atteint le plafond sur les étapes pour un message défini par [`CLAUDE_CODE_MAX_TURNS`](/docs/fr/env-vars). Envoyez un autre message pour continuer, ou augmentez ou supprimez cette variable où elle est définie |

531 573 

532<h2 id="related-resources">574<h2 id="related-resources">

Details

26| `claude install [version]` | Installer ou réinstaller le binaire natif. Accepte une version comme `2.1.118`, ou `stable` ou `latest`. Voir [Installer une version spécifique](/docs/fr/setup#install-a-specific-version) | `claude install stable` |26| `claude install [version]` | Installer ou réinstaller le binaire natif. Accepte une version comme `2.1.118`, ou `stable` ou `latest`. Voir [Installer une version spécifique](/docs/fr/setup#install-a-specific-version) | `claude install stable` |

27| `claude auth login` | Se connecter à votre compte Anthropic. Utilisez `--email` pour pré-remplir votre adresse e-mail, `--sso` pour forcer l'authentification SSO, et `--console` pour vous connecter avec Anthropic Console pour la facturation de l'utilisation de l'API au lieu d'un abonnement Claude | `claude auth login --console` |27| `claude auth login` | Se connecter à votre compte Anthropic. Utilisez `--email` pour pré-remplir votre adresse e-mail, `--sso` pour forcer l'authentification SSO, et `--console` pour vous connecter avec Anthropic Console pour la facturation de l'utilisation de l'API au lieu d'un abonnement Claude | `claude auth login --console` |

28| `claude auth logout` | Se déconnecter de votre compte Anthropic | `claude auth logout` |28| `claude auth logout` | Se déconnecter de votre compte Anthropic | `claude auth logout` |

29| `claude auth status` | Afficher l'état d'authentification en JSON. Utilisez `--text` pour une sortie lisible par l'homme. Quitte avec le code 0 si connecté, 1 sinon | `claude auth status` |29| `claude auth status` | Afficher l'état d'authentification en JSON. Utilisez `--text` pour une sortie lisible par l'homme. Quitte avec le code 0 si connecté, 1 sinon. Le JSON inclut un champ `configDirectory` nommant le [répertoire de configuration](/docs/fr/claude-directory) que l'interface de ligne de commande utilise. Le champ nécessite Claude Code v2.1.268 ou ultérieur | `claude auth status` |

30| `claude agents` | Ouvrir la [vue agent](/docs/fr/agent-view) pour surveiller et dispatcher les sessions d'arrière-plan parallèles. Utilisez `--cwd <path>` pour afficher uniquement les sessions démarrées sous ce répertoire, ou `--json` pour imprimer les sessions actives en tant que tableau JSON pour les scripts (`--json --all` inclut également les sessions d'arrière-plan terminées). Passez `--permission-mode`, `--model`, `--effort`, ou `--agent` pour définir les [valeurs par défaut pour les sessions dispatched](/docs/fr/agent-view#permission-mode-model-and-effort). Accepte `--settings`, `--add-dir`, `--plugin-dir`, et `--mcp-config` comme la commande `claude` de niveau supérieur. L'ouverture de la vue agent nécessite un terminal interactif | `claude agents --json` |30| `claude agents` | Ouvrir la [vue agent](/docs/fr/agent-view) pour surveiller et dispatcher les sessions d'arrière-plan parallèles. Utilisez `--cwd <path>` pour afficher uniquement les sessions démarrées sous ce répertoire, ou `--json` pour imprimer les sessions actives en tant que tableau JSON pour les scripts (`--json --all` inclut également les sessions d'arrière-plan terminées). Passez `--permission-mode`, `--model`, `--effort`, ou `--agent` pour définir les [valeurs par défaut pour les sessions dispatched](/docs/fr/agent-view#permission-mode-model-and-effort). Accepte `--settings`, `--add-dir`, `--plugin-dir`, et `--mcp-config` comme la commande `claude` de niveau supérieur. L'ouverture de la vue agent nécessite un terminal interactif | `claude agents --json` |

31| `claude attach <id>` | Attacher à une [session d'arrière-plan](/docs/fr/agent-view#manage-sessions-from-the-shell) dans ce terminal | `claude attach 7c5dcf5d` |31| `claude attach <id>` | Attacher à une [session d'arrière-plan](/docs/fr/agent-view#manage-sessions-from-the-shell) dans ce terminal | `claude attach 7c5dcf5d` |

32| `claude auto-mode defaults` | Imprimer les règles du classificateur [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) intégrées en JSON. Utilisez `claude auto-mode config` pour voir votre configuration effective avec les paramètres appliqués. `--label <prefix>` imprime uniquement les règles dont l'étiquette commence par ce préfixe, correspondance insensible à la casse. Nécessite Claude Code v2.1.208 ou ultérieur | `claude auto-mode defaults --label 'Git Destructive'` |32| `claude auto-mode defaults` | Imprimer les règles du classificateur [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) intégrées en JSON. Utilisez `claude auto-mode config` pour voir votre configuration effective avec les paramètres appliqués. `--label <prefix>` imprime uniquement les règles dont l'étiquette commence par ce préfixe, correspondance insensible à la casse. Nécessite Claude Code v2.1.208 ou ultérieur | `claude auto-mode defaults --label 'Git Destructive'` |


64| `--add-dir` | Ajouter des répertoires de travail supplémentaires pour que Claude y accède et modifie les fichiers. Accorde l'accès aux fichiers ; Claude Code [ne découvre pas](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) la plupart de la configuration `.claude/` à partir de ces répertoires. Valide que chaque chemin existe en tant que répertoire. Vous ne pouvez pas ajouter la plupart des [chemins réseau](/docs/fr/errors#working-directory-is-a-network-path), tels que `\\server\share`. Pour conserver ces répertoires entre les sessions, définissez [`permissions.additionalDirectories`](/docs/fr/settings-reference#permissions-additionaldirectories) dans les paramètres | `claude --add-dir ../apps ../lib` |64| `--add-dir` | Ajouter des répertoires de travail supplémentaires pour que Claude y accède et modifie les fichiers. Accorde l'accès aux fichiers ; Claude Code [ne découvre pas](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) la plupart de la configuration `.claude/` à partir de ces répertoires. Valide que chaque chemin existe en tant que répertoire. Vous ne pouvez pas ajouter la plupart des [chemins réseau](/docs/fr/errors#working-directory-is-a-network-path), tels que `\\server\share`. Pour conserver ces répertoires entre les sessions, définissez [`permissions.additionalDirectories`](/docs/fr/settings-reference#permissions-additionaldirectories) dans les paramètres | `claude --add-dir ../apps ../lib` |

65| `--advisor <model>` | Activer l'[outil advisor](/docs/fr/advisor) côté serveur pour cette session avec un alias de modèle, `fable`, `opus`, ou `sonnet`, ou un ID de modèle complet. Prend la priorité sur le paramètre `advisorModel` pour la session. `fable` nécessite l'[accès à Fable](/docs/fr/advisor#choose-an-advisor-model) | `claude --advisor opus` |65| `--advisor <model>` | Activer l'[outil advisor](/docs/fr/advisor) côté serveur pour cette session avec un alias de modèle, `fable`, `opus`, ou `sonnet`, ou un ID de modèle complet. Prend la priorité sur le paramètre `advisorModel` pour la session. `fable` nécessite l'[accès à Fable](/docs/fr/advisor#choose-an-advisor-model) | `claude --advisor opus` |

66| `--agent` | Spécifier un agent pour la session actuelle (remplace le paramètre `agent`) | `claude --agent my-custom-agent` |66| `--agent` | Spécifier un agent pour la session actuelle (remplace le paramètre `agent`) | `claude --agent my-custom-agent` |

67| `--agents` | Définir des subagents personnalisés dynamiquement via JSON. Accepte les [champs répertoriés pour les subagents définis via CLI](/docs/fr/sub-agents#choose-the-subagent-scope). Claude Code valide le JSON au démarrage et quitte sur une valeur invalide ; voir [`Invalid --agents configuration`](/docs/fr/errors#invalid-agents-configuration) pour le message et pour les drapeaux et la variable d'environnement qui ignorent la validation. La validation nécessite Claude Code v2.1.242 ou ultérieur | `claude --agents '{"reviewer":{"description":"Reviews code","prompt":"You are a code reviewer"}}'` |67| `--agents` | Définir des subagents personnalisés dynamiquement via JSON. Accepte les [champs répertoriés pour les subagents définis via CLI](/docs/fr/sub-agents#choose-the-subagent-scope). Avec `--print`, la valeur peut être le chemin vers un fichier JSON contenant l'objet ; la forme fichier nécessite Claude Code v2.1.281 ou ultérieur. Claude Code valide la valeur au démarrage et quitte sur une valeur invalide ; voir [`Invalid --agents configuration`](/docs/fr/errors#invalid-agents-configuration) pour le message et pour les drapeaux et la variable d'environnement qui ignorent la validation. La validation nécessite Claude Code v2.1.242 ou ultérieur | `claude --agents '{"reviewer":{"description":"Reviews code","prompt":"You are a code reviewer"}}'` |

68| `--allow-dangerously-skip-permissions` | Ajouter `bypassPermissions` au cycle du mode `Shift+Tab` sans commencer dedans. Permet de commencer dans un mode différent comme `plan` et de basculer vers `bypassPermissions` plus tard. Voir [modes de permission](/docs/fr/permission-modes#skip-all-checks-with-bypasspermissions-mode) | `claude --permission-mode plan --allow-dangerously-skip-permissions` |68| `--allow-dangerously-skip-permissions` | Ajouter `bypassPermissions` au cycle du mode `Shift+Tab` sans commencer dedans. Permet de commencer dans un mode différent comme `plan` et de basculer vers `bypassPermissions` plus tard. Voir [modes de permission](/docs/fr/permission-modes#skip-all-checks-with-bypasspermissions-mode) | `claude --permission-mode plan --allow-dangerously-skip-permissions` |

69| `--allowedTools`, `--allowed-tools` | Outils qui s'exécutent sans demander la permission. Voir [syntaxe des règles de permission](/docs/fr/settings-reference#permission-rule-syntax) pour la correspondance de motifs. Pour restreindre les outils disponibles, utilisez `--tools` à la place. Si vous nommez l'un des [outils de suivi des tâches](/docs/fr/tools-reference#task-tool-availability) ici, Claude Code opte également la session | `"Bash(git log *)" "Bash(git diff *)" "Read"` |69| `--allowedTools`, `--allowed-tools` | Outils qui s'exécutent sans demander la permission. Voir [syntaxe des règles de permission](/docs/fr/settings-reference#permission-rule-syntax) pour la correspondance de motifs. Pour restreindre les outils disponibles, utilisez `--tools` à la place. Si vous nommez l'un des [outils de suivi des tâches](/docs/fr/tools-reference#task-tool-availability) ici, Claude Code opte également la session | `"Bash(git log *)" "Bash(git diff *)" "Read"` |

70| `--append-subagent-system-prompt` | Ajouter du texte personnalisé à la fin de l'invite système de chaque [subagent](/docs/fr/sub-agents), y compris les subagents imbriqués, à l'exception d'un [subagent forké](/docs/fr/sub-agents#fork-the-current-conversation), qui réutilise l'invite de la conversation. S'applique uniquement en mode non interactif avec `-p`. Nécessite Claude Code v2.1.205 ou ultérieur | `claude -p --append-subagent-system-prompt "Cite file paths in every answer" "query"` |70| `--append-subagent-system-prompt` | Ajouter du texte personnalisé à la fin de l'invite système de chaque [subagent](/docs/fr/sub-agents), y compris les subagents imbriqués, à l'exception d'un [subagent forké](/docs/fr/sub-agents#fork-the-current-conversation), qui réutilise l'invite de la conversation. S'applique uniquement en mode non interactif avec `-p`. Nécessite Claude Code v2.1.205 ou ultérieur | `claude -p --append-subagent-system-prompt "Cite file paths in every answer" "query"` |


75| `--ax-screen-reader` | Afficher une sortie accessible aux lecteurs d'écran : texte plat sans bordures décoratives ni animations. Force le rendu classique, donc le paramètre [`tui`](/docs/fr/settings-reference#tui) n'a aucun effet ; les [sessions en arrière-plan](/docs/fr/agent-view) attachées restent rendues en plein écran. Prend la priorité sur [`CLAUDE_AX_SCREEN_READER`](/docs/fr/env-vars) et le paramètre [`axScreenReader`](/docs/fr/settings-reference#axscreenreader). Nécessite Claude Code v2.1.181 ou ultérieur | `claude --ax-screen-reader` |75| `--ax-screen-reader` | Afficher une sortie accessible aux lecteurs d'écran : texte plat sans bordures décoratives ni animations. Force le rendu classique, donc le paramètre [`tui`](/docs/fr/settings-reference#tui) n'a aucun effet ; les [sessions en arrière-plan](/docs/fr/agent-view) attachées restent rendues en plein écran. Prend la priorité sur [`CLAUDE_AX_SCREEN_READER`](/docs/fr/env-vars) et le paramètre [`axScreenReader`](/docs/fr/settings-reference#axscreenreader). Nécessite Claude Code v2.1.181 ou ultérieur | `claude --ax-screen-reader` |

76| `--bare` | Mode minimal : ignorer la découverte automatique des hooks, skills, commandes personnalisées, subagents, plugins, serveurs MCP, mémoire automatique et CLAUDE.md afin que les appels scriptés démarrent plus rapidement. Les skills dans un répertoire que vous transmettez avec `--add-dir` se chargent toujours. Claude a accès aux outils Bash, lecture de fichier et édition de fichier. Définit [`CLAUDE_CODE_SIMPLE`](/docs/fr/env-vars). Voir [mode bare](/docs/fr/headless#start-faster-with-bare-mode) | `claude --bare -p "query"` |76| `--bare` | Mode minimal : ignorer la découverte automatique des hooks, skills, commandes personnalisées, subagents, plugins, serveurs MCP, mémoire automatique et CLAUDE.md afin que les appels scriptés démarrent plus rapidement. Les skills dans un répertoire que vous transmettez avec `--add-dir` se chargent toujours. Claude a accès aux outils Bash, lecture de fichier et édition de fichier. Définit [`CLAUDE_CODE_SIMPLE`](/docs/fr/env-vars). Voir [mode bare](/docs/fr/headless#start-faster-with-bare-mode) | `claude --bare -p "query"` |

77| `--betas` | En-têtes bêta à inclure dans les requêtes API (utilisateurs de clé API uniquement) | `claude --betas interleaved-thinking` |77| `--betas` | En-têtes bêta à inclure dans les requêtes API (utilisateurs de clé API uniquement) | `claude --betas interleaved-thinking` |

78| `--bg`, `--background` | Démarrer la session en tant qu'[agent en arrière-plan](/docs/fr/agent-view) et revenir immédiatement. Affiche l'ID de session et les commandes de gestion. Combinez avec `--exec` pour exécuter une commande shell en tant que travail en arrière-plan au lieu d'une session Claude, ou avec `--agent` pour exécuter un subagent spécifique. Ne peut pas être combiné avec `-p`/`--print` ; voir la [référence d'erreur](/docs/fr/errors#command-line-errors) | `claude --bg "investigate the flaky test"` |78| `--bg`, `--background` | Démarrer la session en tant qu'[agent en arrière-plan](/docs/fr/agent-view) et revenir immédiatement. Affiche l'ID de session et les commandes de gestion. Combinez avec `--exec` pour exécuter une commande shell en tant que travail en arrière-plan au lieu d'une session Claude, ou avec `--agent` pour exécuter un subagent spécifique. Vérifie la [confiance de l'espace de travail](/docs/fr/permissions#project-allow-rules-and-workspace-trust) pour le répertoire avant de démarrer. Ne peut pas être combiné avec `-p`/`--print` ; voir la [référence d'erreur](/docs/fr/errors#command-line-errors) | `claude --bg "investigate the flaky test"` |

79| `--channels` | (Aperçu de recherche) Serveurs MCP dont les notifications de [canal](/docs/fr/channels) Claude doit écouter dans cette session. Liste séparée par des espaces d'entrées `plugin:<name>@<marketplace>`. Nécessite l'authentification Anthropic via claude.ai ou une clé API Console | `claude --channels plugin:my-notifier@my-marketplace` |79| `--channels` | (Aperçu de recherche) Serveurs MCP dont les notifications de [canal](/docs/fr/channels) Claude doit écouter dans cette session. Liste séparée par des espaces d'entrées `plugin:<name>@<marketplace>`. Nécessite l'authentification Anthropic via claude.ai ou une clé API Console | `claude --channels plugin:my-notifier@my-marketplace` |

80| `--chrome` | Activer l'[intégration du navigateur Chrome](/docs/fr/chrome) pour l'automatisation web et les tests | `claude --chrome` |80| `--chrome` | Activer l'[intégration du navigateur Chrome](/docs/fr/chrome) pour l'automatisation web et les tests | `claude --chrome` |

81| `--cloud` | Avec une description de tâche, créer une nouvelle [session web](/docs/fr/claude-code-on-the-web). Avec un ID de session (`session_...` ou `cse_...`) ou une URL claude.ai/code, mettre en file d'attente un message dans cette session existante à la place, avec `-p`. Voir [envoyer un message de suivi](/docs/fr/claude-code-on-the-web#send-follow-ups-from-the-cli). | `claude --cloud "Fix the login bug"` |81| `--cloud` | Avec une description de tâche, créer une nouvelle [session web](/docs/fr/claude-code-on-the-web). Avec un ID de session (`session_...` ou `cse_...`) ou une URL claude.ai/code, mettre en file d'attente un message dans cette session existante à la place, avec `-p`. Voir [envoyer un message de suivi](/docs/fr/claude-code-on-the-web#send-follow-ups-from-the-cli). | `claude --cloud "Fix the login bug"` |


89| `--effort` | Définir le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) pour la session actuelle. Options : `low`, `medium`, `high`, `xhigh`, `max`, ou `ultracode`. Les niveaux disponibles dépendent du modèle. `ultracode` demande l'effort `xhigh` avec [ultracode](/docs/fr/workflows#let-claude-decide-with-ultracode) activé, et nécessite Claude Code v2.1.203 ou ultérieur. Remplace les paramètres [`modelSettings`](/docs/fr/settings-reference#modelsettings) et [`effortLevel`](/docs/fr/settings-reference#effortlevel) pour cette session et ne persiste pas | `claude --effort high` |89| `--effort` | Définir le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) pour la session actuelle. Options : `low`, `medium`, `high`, `xhigh`, `max`, ou `ultracode`. Les niveaux disponibles dépendent du modèle. `ultracode` demande l'effort `xhigh` avec [ultracode](/docs/fr/workflows#let-claude-decide-with-ultracode) activé, et nécessite Claude Code v2.1.203 ou ultérieur. Remplace les paramètres [`modelSettings`](/docs/fr/settings-reference#modelsettings) et [`effortLevel`](/docs/fr/settings-reference#effortlevel) pour cette session et ne persiste pas | `claude --effort high` |

90| `--enable-auto-mode` | Supprimé dans v2.1.111. Le mode auto est maintenant dans le cycle `Shift+Tab` par défaut ; utilisez `--permission-mode auto` pour commencer dedans | `claude --permission-mode auto` |90| `--enable-auto-mode` | Supprimé dans v2.1.111. Le mode auto est maintenant dans le cycle `Shift+Tab` par défaut ; utilisez `--permission-mode auto` pour commencer dedans | `claude --permission-mode auto` |

91| `--environment <environment-id>` | Créer une nouvelle session cloud qui s'exécute sur l'[environnement auto-hébergé](/docs/fr/self-hosted-environments) avec l'ID donné. Les ID d'environnement commencent par `ccpool_`. Voir [comportement de dispatch `--environment`](/docs/fr/self-hosted-environments-testing#environment-dispatch-behavior) pour le comportement de dispatch et les combinaisons de drapeaux qu'il rejette. Nécessite Claude Code v2.1.224 ou ultérieur | `claude -p "Fix the login bug" --environment ccpool_abc123` |91| `--environment <environment-id>` | Créer une nouvelle session cloud qui s'exécute sur l'[environnement auto-hébergé](/docs/fr/self-hosted-environments) avec l'ID donné. Les ID d'environnement commencent par `ccpool_`. Voir [comportement de dispatch `--environment`](/docs/fr/self-hosted-environments-testing#environment-dispatch-behavior) pour le comportement de dispatch et les combinaisons de drapeaux qu'il rejette. Nécessite Claude Code v2.1.224 ou ultérieur | `claude -p "Fix the login bug" --environment ccpool_abc123` |

92| `--exclude-dynamic-system-prompt-sections` | Déplacer les sections par machine de l'invite système (répertoire de travail, informations d'environnement, chemins de mémoire, drapeau git-repo) dans le premier message utilisateur. Améliore la réutilisation du cache d'invite sur différents utilisateurs et machines exécutant la même tâche. S'applique uniquement avec l'invite système par défaut ; ignoré lorsque `--system-prompt` ou `--system-prompt-file` est défini. À utiliser avec `-p` pour les charges de travail scriptées multi-utilisateurs | `claude -p --exclude-dynamic-system-prompt-sections "query"` |92| `--exclude-dynamic-system-prompt-sections` | Déplacer le contexte par utilisateur, tel que l'emplacement de la mémoire automatique, hors de l'invite système et dans le premier message utilisateur. Améliore la réutilisation du cache d'invite sur différents utilisateurs et machines exécutant la même tâche. S'applique uniquement avec l'invite système par défaut ; ignoré lorsque `--system-prompt` ou `--system-prompt-file` est défini. À utiliser avec `-p` pour les charges de travail scriptées multi-utilisateurs | `claude -p --exclude-dynamic-system-prompt-sections "query"` |

93| `--exec` | Exécuter une commande shell en tant que travail en arrière-plan soutenu par PTY au lieu de démarrer une session Claude. À utiliser avec `--bg` pour lancer depuis le shell | `claude --bg --exec 'pytest -x'` |93| `--exec` | Exécuter une commande shell en tant que travail en arrière-plan soutenu par PTY au lieu de démarrer une session Claude. À utiliser avec `--bg` pour lancer depuis le shell | `claude --bg --exec 'pytest -x'` |

94| `--fallback-model` | Activer le basculement automatique vers le ou les modèles spécifiés lorsque le modèle principal est surchargé ou non disponible, par exemple un modèle retiré. Accepte une liste séparée par des virgules essayée dans l'ordre. Voir [Chaînes de modèles de secours](/docs/fr/model-config#fallback-model-chains). Pour conserver une chaîne entre les sessions, utilisez le paramètre [`fallbackModel`](/docs/fr/settings-reference#fallbackmodel), que ce drapeau remplace | `claude --fallback-model sonnet,haiku` |94| `--fallback-model` | Activer le basculement automatique vers le ou les modèles spécifiés lorsque le modèle principal est surchargé ou non disponible, par exemple un modèle retiré. Accepte une liste séparée par des virgules essayée dans l'ordre. Voir [Chaînes de modèles de secours](/docs/fr/model-config#fallback-model-chains). Pour conserver une chaîne entre les sessions, utilisez le paramètre [`fallbackModel`](/docs/fr/settings-reference#fallbackmodel), que ce drapeau remplace | `claude --fallback-model sonnet,haiku` |

95| `--fork-session` | Lors de la reprise, créer un nouvel ID de session au lieu de réutiliser l'original (à utiliser avec `--resume` ou `--continue`) | `claude --resume abc123 --fork-session` |95| `--fork-session` | Lors de la reprise, créer un nouvel ID de session au lieu de réutiliser l'original (à utiliser avec `--resume` ou `--continue`) | `claude --resume abc123 --fork-session` |


127| `--resume`, `-r` | Reprendre une session spécifique par ID ou nom, ou afficher un sélecteur interactif pour choisir une session. À la place d'un ID, vous pouvez passer le chemin absolu vers le fichier de [transcription](/docs/fr/sessions#where-transcripts-are-stored) `.jsonl` d'une session. Le sélecteur et la recherche par nom incluent les sessions qui ont ajouté ce répertoire avec `/add-dir`. Lorsque vous transmettez un ID de session, Claude Code recherche le répertoire du projet actuel et ses git worktrees, puis tous les autres projets sur cette machine. Avant v2.1.223, la recherche d'ID couvrait uniquement le répertoire du projet actuel et ses git worktrees. Les [sessions en arrière-plan](/docs/fr/agent-view) apparaissent dans le sélecteur marquées avec `bg` | `claude --resume auth-refactor` |127| `--resume`, `-r` | Reprendre une session spécifique par ID ou nom, ou afficher un sélecteur interactif pour choisir une session. À la place d'un ID, vous pouvez passer le chemin absolu vers le fichier de [transcription](/docs/fr/sessions#where-transcripts-are-stored) `.jsonl` d'une session. Le sélecteur et la recherche par nom incluent les sessions qui ont ajouté ce répertoire avec `/add-dir`. Lorsque vous transmettez un ID de session, Claude Code recherche le répertoire du projet actuel et ses git worktrees, puis tous les autres projets sur cette machine. Avant v2.1.223, la recherche d'ID couvrait uniquement le répertoire du projet actuel et ses git worktrees. Les [sessions en arrière-plan](/docs/fr/agent-view) apparaissent dans le sélecteur marquées avec `bg` | `claude --resume auth-refactor` |

128| `--safe-mode` | Démarrer avec toutes les personnalisations désactivées pour dépanner une configuration cassée : CLAUDE.md, skills, plugins, hooks, serveurs MCP, commandes et agents personnalisés, styles de sortie, workflows, thèmes personnalisés, liaisons de touches personnalisées, commandes de ligne d'état et de suggestion de fichiers, serveurs LSP, et mémoire automatique ne se chargent pas. L'authentification, la sélection du modèle, les outils intégrés et les permissions fonctionnent normalement, ce qui diffère de [`--bare`](/docs/fr/headless#start-faster-with-bare-mode). La politique des paramètres gérés s'applique toujours, y compris les hooks configurés par la politique, la ligne d'état et les commandes de suggestion de fichiers ; les plugins gérés, les skills gérés, le CLAUDE.md géré et les serveurs MCP configurés par la politique ne se chargent pas. Utile pour vérifier si une personnalisation est ce qui déclenche le [basculement automatique du modèle](/docs/fr/model-config#automatic-model-fallback). Définit [`CLAUDE_CODE_SAFE_MODE`](/docs/fr/env-vars) | `claude --safe-mode` |128| `--safe-mode` | Démarrer avec toutes les personnalisations désactivées pour dépanner une configuration cassée : CLAUDE.md, skills, plugins, hooks, serveurs MCP, commandes et agents personnalisés, styles de sortie, workflows, thèmes personnalisés, liaisons de touches personnalisées, commandes de ligne d'état et de suggestion de fichiers, serveurs LSP, et mémoire automatique ne se chargent pas. L'authentification, la sélection du modèle, les outils intégrés et les permissions fonctionnent normalement, ce qui diffère de [`--bare`](/docs/fr/headless#start-faster-with-bare-mode). La politique des paramètres gérés s'applique toujours, y compris les hooks configurés par la politique, la ligne d'état et les commandes de suggestion de fichiers ; les plugins gérés, les skills gérés, le CLAUDE.md géré et les serveurs MCP configurés par la politique ne se chargent pas. Utile pour vérifier si une personnalisation est ce qui déclenche le [basculement automatique du modèle](/docs/fr/model-config#automatic-model-fallback). Définit [`CLAUDE_CODE_SAFE_MODE`](/docs/fr/env-vars) | `claude --safe-mode` |

129| `--session-id` | Utiliser un ID de session spécifique pour la conversation (doit être un UUID valide) | `claude --session-id "550e8400-e29b-41d4-a716-446655440000"` |129| `--session-id` | Utiliser un ID de session spécifique pour la conversation (doit être un UUID valide) | `claude --session-id "550e8400-e29b-41d4-a716-446655440000"` |

130| `--setting-sources` | Liste séparée par des virgules des sources de paramètres à charger (`user`, `project`, `local`) | `claude --setting-sources user,project` |130| `--setting-sources` | Liste séparée par des virgules des sources de paramètres à charger (`user`, `project`, `local`). Voir [agent view](/docs/fr/agent-view#what-carries-over-when-you-background) et [agent teams](/docs/fr/agent-teams#context-and-communication) pour les sessions que vous démarrez à partir de celle-ci qui héritent de la liste | `claude --setting-sources user,project` |

131| `--settings` | Chemin vers un fichier JSON de paramètres ou une chaîne JSON en ligne. Les valeurs que vous définissez ici remplacent les mêmes clés dans vos fichiers `settings.json` pour cette session. Les clés que vous omettez conservent leurs valeurs basées sur les fichiers. Le fichier doit être un fichier régulier d'une taille maximale de 2 Mio. Voir [précédence des paramètres](/docs/fr/settings#settings-precedence) | `claude --settings ./settings.json` |131| `--settings` | Chemin vers un fichier JSON de paramètres ou une chaîne JSON en ligne. Les valeurs que vous définissez ici remplacent les mêmes clés dans vos fichiers `settings.json` pour cette session. Les clés que vous omettez conservent leurs valeurs basées sur les fichiers. Le fichier doit être un fichier régulier d'une taille maximale de 2 Mio. Voir [précédence des paramètres](/docs/fr/settings#settings-precedence) | `claude --settings ./settings.json` |

132| `--strict-mcp-config` | Utiliser uniquement les serveurs MCP de `--mcp-config`, en ignorant toutes les autres configurations MCP. Voir [Contrôle exclusif avec managed-mcp.json](/docs/fr/managed-mcp#exclusive-control-with-managed-mcp-json) pour ce que le drapeau fait sous un fichier MCP géré | `claude --strict-mcp-config --mcp-config ./mcp.json` |132| `--strict-mcp-config` | Utiliser uniquement les serveurs MCP de `--mcp-config`, en ignorant toutes les autres configurations MCP. Voir [Contrôle exclusif avec managed-mcp.json](/docs/fr/managed-mcp#exclusive-control-with-managed-mcp-json) pour ce que le drapeau fait sous un fichier MCP géré | `claude --strict-mcp-config --mcp-config ./mcp.json` |

133| `--system-prompt` | Remplacer l'invite système entière par du texte personnalisé | `claude --system-prompt "You are a Python expert"` |133| `--system-prompt` | Remplacer l'invite système entière par du texte personnalisé | `claude --system-prompt "You are a Python expert"` |

Details

281 Ce qui est disponible dans les sessions cloud281 Ce qui est disponible dans les sessions cloud

282</h2>282</h2>

283 283 

284Dans les environnements hébergés par Anthropic, chaque session obtient une machine virtuelle (VM) fraîche exécutant Ubuntu 24.04 sur x86\_64, quel que soit votre propre système d'exploitation et architecture CPU, avec votre dépôt cloné et les chaînes d'outils courantes pré-installées. Quand une dépendance fournit des binaires précompilés, comme les gems Ruby avec des extensions natives ou les roues Python précompilées, utilisez sa compilation Linux x86\_64 pour correspondre à la VM. Cette section couvre les défauts hébergés par Anthropic, les outils GitHub intégrés, comment [exécuter des tests et des services](#run-tests-start-services-and-add-packages), et les [limites de ressources](#resource-limits) que chaque VM obtient.284Dans les environnements hébergés par Anthropic, chaque session obtient une machine virtuelle (VM) fraîche exécutant Ubuntu 24.04 sur x86\_64, quel que soit votre propre système d'exploitation et architecture CPU, avec votre dépôt cloné et les chaînes d'outils courantes pré-installées. Quand une dépendance fournit des binaires précompilés, comme les gems Ruby avec des extensions natives ou les roues Python précompilées, utilisez sa compilation Linux x86\_64 pour correspondre à la VM. Cette section couvre les défauts hébergés par Anthropic, les outils GitHub intégrés, comment [exécuter des tests et des services](#run-tests-start-services-and-add-packages), les [limites de ressources](#resource-limits) que chaque VM obtient, et les [limites de temps](#time-limits) sur les travaux de longue durée.

285 285 

286<Note>286<Note>

287 Les sessions que votre organisation route vers un [environnement auto-hébergé](/docs/fr/self-hosted-environments) s'exécutent sur vos propres exécuteurs à la place, avec les outils que votre image d'exécuteur fournit.287 Les sessions que votre organisation route vers un [environnement auto-hébergé](/docs/fr/self-hosted-environments) s'exécutent sur vos propres exécuteurs à la place, avec les outils que votre image d'exécuteur fournit.


421 421 

422La VM peut arrêter les tâches qui ont besoin de beaucoup plus de mémoire, comme les gros travaux de construction ou les tests gourmands en mémoire. Pour les charges de travail au-delà de ces limites, utilisez [Remote Control](/docs/fr/remote-control) pour exécuter Claude Code sur votre propre matériel, ou exécutez les sessions cloud dans un [environnement auto-hébergé](/docs/fr/self-hosted-environments) sur le calcul que votre organisation exploite.422La VM peut arrêter les tâches qui ont besoin de beaucoup plus de mémoire, comme les gros travaux de construction ou les tests gourmands en mémoire. Pour les charges de travail au-delà de ces limites, utilisez [Remote Control](/docs/fr/remote-control) pour exécuter Claude Code sur votre propre matériel, ou exécutez les sessions cloud dans un [environnement auto-hébergé](/docs/fr/self-hosted-environments) sur le calcul que votre organisation exploite.

423 423 

424<h3 id="time-limits">

425 Limites de temps

426</h3>

427 

428Dans les environnements hébergés par Anthropic, ces limites de temps s'appliquent aux travaux de longue durée dans une session cloud, comme une construction, une installation ou une exécution de test. Chaque entrée renvoie à la section qui définit la limite.

429 

430* **Commandes que Claude exécute** : un environnement cloud ne définit pas son propre délai d'expiration de commande, donc les défauts de l'outil Bash s'appliquent. Claude attend 2 minutes pour une commande par défaut et peut demander jusqu'à 10 minutes. Quand une commande atteint son [délai d'expiration](/docs/fr/tools-reference#timeout-and-output-limits), Claude Code [la déplace en arrière-plan](/docs/fr/tools-reference#background-commands) au lieu de l'arrêter, sauf si la commande commence par `sleep`.

431* **Crochets SessionStart** : Claude Code annule un crochet `command` après 600 secondes sauf si vous définissez [`timeout`](/docs/fr/hooks#common-fields), en secondes, sur l'entrée du crochet. Claude Code n'applique pas le délai d'expiration sur un crochet que vous exécutez avec [`async: true`](/docs/fr/hooks#run-hooks-in-the-background).

432* **Script de configuration** : un script qui prend plus que environ cinq minutes n'est pas mis en cache. [Exigences du script](#script-requirements) couvre comment rester en dessous de cela.

433* **Sessions inactives** : une session s'arrête après une période d'inactivité et sa VM est réclamée. [Environnement expiré](/docs/fr/claude-code-on-the-web#environment-expired) couvre ce qui compte comme inactif et comment rouvrir la session.

434 

435Pour augmenter les délais d'expiration de commande pour les sessions d'un environnement, ajoutez [`BASH_DEFAULT_TIMEOUT_MS` et `BASH_MAX_TIMEOUT_MS`](/docs/fr/env-vars#variables) à ses [variables d'environnement](#set-environment-variables). Les deux prennent des millisecondes. Par exemple, `BASH_DEFAULT_TIMEOUT_MS=600000` rend 10 minutes le défaut.

436 

424<h2 id="setup-scripts">437<h2 id="setup-scripts">

425 Scripts de configuration438 Scripts de configuration

426</h2>439</h2>


445Un script de configuration a trois contraintes à contourner :458Un script de configuration a trois contraintes à contourner :

446 459 

447* **Quitter zéro** : si le script quitte non-zéro, la session échoue à démarrer. Ajoutez `|| true` aux commandes non critiques afin qu'une défaillance d'installation intermittente ne bloque pas la session.460* **Quitter zéro** : si le script quitte non-zéro, la session échoue à démarrer. Ajoutez `|| true` aux commandes non critiques afin qu'une défaillance d'installation intermittente ne bloque pas la session.

448* **Terminer en cinq minutes** : gardez le temps d'exécution total du script sous environ cinq minutes afin que le [cache d'environnement](#environment-caching) puisse se construire. Exécutez les installations indépendantes en parallèle avec `&` et `wait`, et déplacez tout téléchargement unique qui ne rentre pas dans un crochet [SessionStart](#setup-scripts-vs-sessionstart-hooks) qui le lance en arrière-plan.461* **Terminer en cinq minutes** : gardez le temps d'exécution total du script sous environ cinq minutes afin que le [cache d'environnement](#environment-caching) puisse se construire. Quand la configuration prend plus de temps que cela, l'environnement n'est pas mis en cache. Exécutez les installations indépendantes en parallèle avec `&` et `wait`, et déplacez tout téléchargement unique qui ne rentre pas dans un crochet [SessionStart](#setup-scripts-vs-sessionstart-hooks) qui le lance en arrière-plan. Si les nouvelles sessions se figent ou échouent pendant la configuration, consultez [Les nouvelles sessions se figent ou expirent pendant la configuration](/docs/fr/web-quickstart#new-sessions-hang-or-time-out-during-setup).

449* **Accès réseau pour les installations** : les installations de paquets doivent atteindre les registres. Le niveau **Trusted** par défaut couvre les [registres de paquets courants](#default-allowed-domains) incluant npm, PyPI, RubyGems et crates.io ; avec un accès réseau **None**, les installations échouent.462* **Accès réseau pour les installations** : les installations de paquets doivent atteindre les registres. Le niveau **Trusted** par défaut couvre les [registres de paquets courants](#default-allowed-domains) incluant npm, PyPI, RubyGems et crates.io ; avec un accès réseau **None**, les installations échouent.

450 463 

451<h3 id="environment-caching">464<h3 id="environment-caching">

452 Mise en cache d'environnement465 Mise en cache d'environnement

453</h3>466</h3>

454 467 

455Le script de configuration s'exécute la première fois que vous démarrez une session dans un environnement. Après sa fin, Anthropic crée un instantané du système de fichiers et réutilise cet instantané comme point de départ pour les sessions ultérieures. Les nouvelles sessions commencent avec vos dépendances, outils et images Docker déjà sur le disque, et sautent l'étape du script de configuration. Cela garde le démarrage rapide même quand le script installe de grandes chaînes d'outils ou extrait des images de conteneur.468Le script de configuration s'exécute la première fois que vous démarrez une session dans un environnement. Quand la configuration se termine en [environ cinq minutes](#script-requirements), Anthropic crée un instantané du système de fichiers et réutilise cet instantané comme point de départ pour les sessions ultérieures. Les nouvelles sessions commencent avec vos dépendances, outils et images Docker déjà sur le disque, et sautent l'étape du script de configuration. Cela garde le démarrage rapide même quand le script installe de grandes chaînes d'outils ou extrait des images de conteneur. Si la configuration prend plus que environ cinq minutes, l'environnement n'est pas mis en cache.

456 469 

457Le cache est un instantané du système de fichiers, donc il conserve ce que le script de configuration écrit sur le disque et perd tout ce qui était seulement en cours d'exécution. Les paquets que vous installez, les images Docker que vous extrayez et les fichiers que vous écrivez se reportent tous. Une base de données que le script a démarrée, une pile `docker compose up`, ou tout autre processus en arrière-plan ne le fait pas ; démarrez-les par session en demandant à Claude ou avec un crochet [SessionStart](#setup-scripts-vs-sessionstart-hooks).470Le cache est un instantané du système de fichiers, donc il conserve ce que le script de configuration écrit sur le disque et perd tout ce qui était seulement en cours d'exécution. Les paquets que vous installez, les images Docker que vous extrayez et les fichiers que vous écrivez se reportent tous. Une base de données que le script a démarrée, une pile `docker compose up`, ou tout autre processus en arrière-plan ne le fait pas ; démarrez-les par session en demandant à Claude ou avec un crochet [SessionStart](#setup-scripts-vs-sessionstart-hooks).

458 471 

code-review.md +2 −2

Details

298 Dépannage298 Dépannage

299</h2>299</h2>

300 300 

301Les exécutions de révision sont au mieux. Une exécution échouée ne bloque jamais votre PR, mais elle ne se réessaye pas non plus d'elle-même. Cette section couvre comment récupérer d'une exécution échouée et où chercher quand l'exécution de vérification signale des problèmes que vous ne pouvez pas trouver.301Les exécutions de révision sont au mieux, et une exécution échouée ne bloque jamais votre PR. Code Review réessaye automatiquement certaines révisions interrompues. Cette section couvre comment exécuter une révision à nouveau vous-même et où chercher quand l'exécution de vérification signale des problèmes que vous ne pouvez pas trouver.

302 302 

303<h3 id="retrigger-a-failed-or-timed-out-review">303<h3 id="retrigger-a-failed-or-timed-out-review">

304 Redéclencher une révision échouée ou expirée304 Redéclencher une révision échouée ou expirée

305</h3>305</h3>

306 306 

307Quand l'infrastructure de révision rencontre une erreur interne ou dépasse sa limite de temps, l'exécution de vérification se termine avec un titre de **Code review encountered an error** ou **Code review timed out**. La conclusion est toujours neutre, de sorte que rien ne bloque votre fusion, mais aucun résultat n'est publié.307Quand une révision échoue ou dépasse sa limite de temps, l'exécution de vérification se termine avec un titre tel que **Code review failed** ou **Code review timed out**. La conclusion est toujours neutre, de sorte que rien ne bloque votre fusion. À moins que le résumé de l'exécution de vérification ne dise qu'une nouvelle révision du commit a été mise en file d'attente automatiquement, exécutez la révision à nouveau vous-même.

308 308 

309Pour exécuter la révision à nouveau, commentez `@claude review` sur la PR. Cela démarre une révision fraîche sans abonner la PR aux pushes futurs. Si la PR n'est pas [issue d'une fork](#review-pull-requests-from-forks), vous pouvez plutôt cliquer sur **Re-run** sur la vérification **Claude Code Review** dans l'onglet Checks de GitHub. Une réexécution démarre également une révision fraîche sans abonner la PR.309Pour exécuter la révision à nouveau, commentez `@claude review` sur la PR. Cela démarre une révision fraîche sans abonner la PR aux pushes futurs. Si la PR n'est pas [issue d'une fork](#review-pull-requests-from-forks), vous pouvez plutôt cliquer sur **Re-run** sur la vérification **Claude Code Review** dans l'onglet Checks de GitHub. Une réexécution démarre également une révision fraîche sans abonner la PR.

310 310 

commands.md +5 −4

Details

79| `/dataviz [request]` | **[Skill](/docs/fr/skills#bundled-skills).** Conseils de conception pour les graphiques, les graphiques et les tableaux de bord. Claude choisit la forme de graphique pour les données, attribue la couleur par rôle, valide la palette pour la sécurité daltonienne et le contraste avec un script groupé, et applique les règles de marque, d'interaction et d'accessibilité. Utilise une palette de marque neutre que vous remplacez par la vôtre. Nécessite Claude Code v2.1.198 ou ultérieur |79| `/dataviz [request]` | **[Skill](/docs/fr/skills#bundled-skills).** Conseils de conception pour les graphiques, les graphiques et les tableaux de bord. Claude choisit la forme de graphique pour les données, attribue la couleur par rôle, valide la palette pour la sécurité daltonienne et le contraste avec un script groupé, et applique les règles de marque, d'interaction et d'accessibilité. Utilise une palette de marque neutre que vous remplacez par la vôtre. Nécessite Claude Code v2.1.198 ou ultérieur |

80| `/debug [description]` | **[Skill](/docs/fr/skills#bundled-skills).** Activer la journalisation de débogage pour la session actuelle et dépanner les problèmes en lisant le journal de débogage de la session. La journalisation de débogage est désactivée par défaut sauf si vous avez démarré avec `claude --debug`, donc l'exécution de `/debug` en milieu de session commence à capturer les journaux à partir de ce moment. Décrivez éventuellement le problème pour concentrer l'analyse |80| `/debug [description]` | **[Skill](/docs/fr/skills#bundled-skills).** Activer la journalisation de débogage pour la session actuelle et dépanner les problèmes en lisant le journal de débogage de la session. La journalisation de débogage est désactivée par défaut sauf si vous avez démarré avec `claude --debug`, donc l'exécution de `/debug` en milieu de session commence à capturer les journaux à partir de ce moment. Décrivez éventuellement le problème pour concentrer l'analyse |

81| `/deep-research <question>` | **[Workflow](/docs/fr/workflows#bundled-workflows).** Distribuer les recherches web sur une question, récupérer et vérifier les sources, et synthétiser un rapport cité |81| `/deep-research <question>` | **[Workflow](/docs/fr/workflows#bundled-workflows).** Distribuer les recherches web sur une question, récupérer et vérifier les sources, et synthétiser un rapport cité |

82| `/design [brief]` | **[Skill](/docs/fr/skills#bundled-skills).** Rédiger des maquettes d'interface utilisateur, des flux d'écran, des pages de destination ou des affiches sous forme de plans de travail sur un seul canevas, publiés en tant qu'[artefact](/docs/fr/artifacts#draft-a-design-canvas) Design, par exemple `/design a settings screen for a mobile banking app`. Vous modifiez les plans de travail dans un navigateur de bureau, et vos modifications s'enregistrent automatiquement. Vous pouvez exporter chaque plan de travail en PNG ou PDF. Nécessite une session où les [artefacts sont disponibles](/docs/fr/artifacts#availability) et Claude Code v2.1.265 ou ultérieur. Disponible sur l'API Anthropic. Sur Amazon Bedrock, la plateforme d'agents de Google Cloud, Microsoft Foundry et Claude Platform sur AWS, les artefacts ne sont pas disponibles, donc la commande n'est pas disponible là-bas |82| `/design [brief]` | **[Skill](/docs/fr/skills#bundled-skills).** Rédiger des maquettes d'interface utilisateur, des flux d'écran, des pages de destination ou des affiches sous forme de plans de travail sur un seul canevas, publiés en tant qu'[artefact](/docs/fr/artifacts#draft-a-design-canvas) Design, par exemple `/design a settings screen for a mobile banking app`. Vous modifiez les plans de travail dans un navigateur de bureau, et vos modifications s'enregistrent automatiquement. Vous pouvez exporter chaque plan de travail en PNG ou PDF. Nécessite Claude Code v2.1.265 ou ultérieur, une session où les [artefacts sont disponibles](/docs/fr/artifacts#availability), et un compte où le [modèle Design est disponible](/docs/fr/artifacts#start-from-a-slides-design-or-docs-template) ; si votre organisation a désactivé ce modèle, `/design` ne rédige pas de conceptions. Disponible sur l'API Anthropic. Sur Amazon Bedrock, la plateforme d'agents de Google Cloud, Microsoft Foundry et Claude Platform sur AWS, les artefacts ne sont pas disponibles, donc la commande n'est pas disponible là-bas |

83| `/design-login` | Autoriser l'accès au système de conception pour `/design-sync` avec votre compte claude.ai |83| `/design-login` | Autoriser l'accès au système de conception pour `/design-sync` avec votre compte claude.ai |

84| `/design-sync [hint]` | **[Skill](/docs/fr/skills#bundled-skills).** Convertir le système de conception React de votre référentiel et le télécharger vers [Claude Design](https://claude.ai/design), afin que les conceptions qu'il produit utilisent vos vrais composants. Nommez éventuellement le système de conception, par exemple `/design-sync Acme DS`. Une première synchronisation vérifie chaque composant et peut prendre quelques heures sur un grand référentiel. Disponible sur l'API Anthropic. Il a besoin de claude.ai, que l'interface de ligne de commande ne contacte pas sur Amazon Bedrock, la plateforme d'agents de Google Cloud, Microsoft Foundry ou Claude Platform sur AWS, ou via une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway#availability-and-limitations), donc la commande n'est pas disponible là-bas |84| `/design-sync [hint]` | **[Skill](/docs/fr/skills#bundled-skills).** Convertir le système de conception React de votre référentiel et le télécharger vers [Claude Design](https://claude.ai/design), afin que les conceptions qu'il produit utilisent vos vrais composants. Nommez éventuellement le système de conception, par exemple `/design-sync Acme DS`. Une première synchronisation vérifie chaque composant et peut prendre quelques heures sur un grand référentiel. Disponible sur l'API Anthropic. Il a besoin de claude.ai, que l'interface de ligne de commande ne contacte pas sur Amazon Bedrock, la plateforme d'agents de Google Cloud, Microsoft Foundry ou Claude Platform sur AWS, ou via une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway#availability-and-limitations), donc la commande n'est pas disponible là-bas |

85| `/desktop` | Continuer la session actuelle dans l'application Claude Code Desktop. Nécessite macOS ou Windows x64 et un abonnement Claude. Alias : `/app` |85| `/desktop` | Continuer la session actuelle dans l'application Claude Code Desktop. Nécessite macOS ou Windows x64 et un abonnement Claude. Alias : `/app` |

86| `/diff` | Examiner les modifications dans votre arborescence de travail, y compris les modifications que Claude a apportées jusqu'à présent. Consultez [Examiner les modifications avec /diff](/docs/fr/interactive-mode#review-changes-with-%2Fdiff) |86| `/diff` | Examiner les modifications dans votre arborescence de travail, y compris les modifications que Claude a apportées jusqu'à présent. Consultez [Examiner les modifications avec /diff](/docs/fr/interactive-mode#review-changes-with-%2Fdiff) |

87| `/doctor` | **[Skill](/docs/fr/skills#bundled-skills).** Exécuter une vérification de configuration qui diagnostique les problèmes et peut les corriger. Vérifie la santé de l'installation, y compris les installations en double ou résiduelles, les problèmes de `PATH`, et les fichiers de paramètres non analysables. Trouve les compétences, serveurs MCP et plugins inutilisés par rapport à leur coût de contexte, signale les [hooks](/docs/fr/hooks) lents, et vérifie une version plus récente sur votre [canal de version](/docs/fr/setup#configure-release-channel). Déduplique les fichiers `CLAUDE.md` locaux par rapport aux fichiers archivés, réduit les fichiers [`CLAUDE.md`](/docs/fr/memory#my-claude-md-is-too-large) archivés en coupant le contenu que Claude pourrait dériver de la base de code, et migre les conseils toujours chargés qui restent dans les [compétences](/docs/fr/skills) et les fichiers `CLAUDE.md` imbriqués qui se chargent à la demande. Offre également de faire du [mode auto](/docs/fr/permissions#permission-modes) votre défaut et de [pré-approuver](/docs/fr/permissions) les commandes en lecture seule fréquemment refusées. Signale d'abord les résultats et demande une confirmation avant de modifier quoi que ce soit. À partir du terminal, `claude doctor` affiche les diagnostics d'installation en lecture seule sans démarrer une session. Alias : `/checkup`. La vérification de réduction `CLAUDE.md` nécessite Claude Code v2.1.206 ou ultérieur. Avant la v2.1.205, `/doctor` ouvrait un écran de diagnostics en lecture seule et appuyer sur `f` envoyait le rapport à Claude |87| `/doctor [prompt-audit [path]]` | **[Skill](/docs/fr/skills#bundled-skills).** Exécuter une vérification de configuration qui diagnostique les problèmes et peut les corriger. Vérifie la santé de l'installation, y compris les installations en double ou résiduelles, les problèmes de `PATH`, et les fichiers de paramètres non analysables. Trouve les compétences, serveurs MCP et plugins inutilisés par rapport à leur coût de contexte, signale les [hooks](/docs/fr/hooks) lents, et vérifie une version plus récente sur votre [canal de version](/docs/fr/setup#configure-release-channel). Déduplique les fichiers `CLAUDE.md` locaux par rapport aux fichiers archivés, réduit les fichiers [`CLAUDE.md`](/docs/fr/memory#my-claude-md-is-too-large) archivés en coupant le contenu que Claude pourrait dériver de la base de code, et migre les conseils toujours chargés qui restent dans les [compétences](/docs/fr/skills) et les fichiers `CLAUDE.md` imbriqués qui se chargent à la demande. Offre également de faire du [mode auto](/docs/fr/permissions#permission-modes) votre défaut et de [pré-approuver](/docs/fr/permissions) les commandes en lecture seule fréquemment refusées. Signale d'abord les résultats et demande une confirmation avant de modifier quoi que ce soit. À partir du terminal, `claude doctor` affiche les diagnostics d'installation en lecture seule sans démarrer une session. Alias : `/checkup`. Exécutez `/doctor prompt-audit` pour que Claude [audite vos fichiers `CLAUDE.md`, compétences et autres configurations](/docs/fr/memory#write-effective-instructions) pour les instructions obsolètes ou conflictuelles au lieu d'exécuter la vérification. La sous-commande `prompt-audit` nécessite Claude Code v2.1.283 ou ultérieur. La vérification de réduction `CLAUDE.md` nécessite Claude Code v2.1.206 ou ultérieur. Avant la v2.1.205, `/doctor` ouvrait un écran de diagnostics en lecture seule et appuyer sur `f` envoyait le rapport à Claude |

88| `/effort [level\|auto\|status]` | Définir le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) : `low` à `xhigh`, `max`, [`ultracode`](/docs/fr/workflows#let-claude-decide-with-ultracode), ou `auto` ; `status` l'affiche. `max` et `ultracode` sont réservés à la session ; la clé [`ultracode`](/docs/fr/settings-reference#ultracode) persiste. L'exécuter pendant que Claude répond et, une fois que vous confirmez l'[avertissement de cache](/docs/fr/prompt-caching#changing-effort-level), si Claude Code en affiche un, Claude Code applique le nouveau niveau à la demande suivante dans ce tour. Avant la v2.1.242, Claude Code a décidé à partir d'un drapeau de fonctionnalité qu'il a récupéré d'Anthropic s'il fallait exécuter la commande en milieu de tour ou la mettre en file d'attente jusqu'à la fin du tour, et l'a toujours mise en file d'attente dans une session qui ne [récupère pas les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), comme sur un [fournisseur tiers](/docs/fr/third-party-integrations). Fonctionne en `-p` |88| `/effort [level\|auto\|status\|ultracode [on\|off]]` | Définir le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) : `low` à `xhigh`, `max`, ou `auto` ; `status` l'affiche. `ultracode` ou `ultracode on` active [ultracode](/docs/fr/workflows#let-claude-decide-with-ultracode) pour la session au niveau actuel, et `ultracode off` le désactive ; la clé [`ultracode`](/docs/fr/settings-reference#ultracode) persiste. `max` est réservé à la session. Les arguments `on` et `off` et le maintien du niveau actuel nécessitent Claude Code v2.1.284 ou ultérieur. Avant la v2.1.284, `/effort ultracode` définissait la session à `xhigh`, et `/effort ultracode off` échouait avec `Invalid argument`. L'exécuter pendant que Claude répond et, une fois que vous confirmez l'[avertissement de cache](/docs/fr/prompt-caching#changing-effort-level), si Claude Code en affiche un, Claude Code applique le nouveau niveau à la demande suivante dans ce tour. Avant la v2.1.242, Claude Code a décidé à partir d'un drapeau de fonctionnalité qu'il a récupéré d'Anthropic s'il fallait exécuter la commande en milieu de tour ou la mettre en file d'attente jusqu'à la fin du tour, et l'a toujours mise en file d'attente dans une session qui ne [récupère pas les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), comme sur un [fournisseur tiers](/docs/fr/third-party-integrations). Fonctionne en `-p` |

89| `/exit` | Quitter l'interface de ligne de commande. Dans une [session en arrière-plan](/docs/fr/agent-view#attach-to-a-session) attachée, cela se détache et la session continue de s'exécuter. Alias : `/quit` |89| `/exit` | Quitter l'interface de ligne de commande. Dans une [session en arrière-plan](/docs/fr/agent-view#attach-to-a-session) attachée, cela se détache et la session continue de s'exécuter. Alias : `/quit` |

90| `/export [filename]` | Exporter la conversation actuelle en texte brut. Avec un nom de fichier, écrit directement dans ce fichier. Sans, ouvre une boîte de dialogue pour copier dans le presse-papiers ou enregistrer dans un fichier |90| `/export [filename]` | Exporter la conversation actuelle en texte brut. Avec un nom de fichier, écrit directement dans ce fichier. Sans, ouvre une boîte de dialogue pour copier dans le presse-papiers ou enregistrer dans un fichier |

91| `/fast [on\|off]` | Basculer le [mode rapide](/docs/fr/fast-mode) activé ou désactivé. L'exécuter pendant que Claude répond et Claude Code bascule le mode rapide sans attendre la fin du tour, bien que le tour en cours se termine à sa vitesse d'origine. Avant la v2.1.242, Claude Code a décidé à partir d'un drapeau de fonctionnalité qu'il a récupéré d'Anthropic s'il fallait exécuter la commande en milieu de tour ou la mettre en file d'attente jusqu'à la fin du tour, et l'a toujours mise en file d'attente dans une session qui ne [récupère pas les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching). La disponibilité en mode non interactif avec `-p` est limitée ; consultez [Basculer le mode rapide](/docs/fr/fast-mode#toggle-fast-mode). Nécessite Claude Code v2.1.205 ou ultérieur |91| `/fast [on\|off]` | Basculer le [mode rapide](/docs/fr/fast-mode) activé ou désactivé. L'exécuter pendant que Claude répond et Claude Code bascule le mode rapide sans attendre la fin du tour, bien que le tour en cours se termine à sa vitesse d'origine. Avant la v2.1.242, Claude Code a décidé à partir d'un drapeau de fonctionnalité qu'il a récupéré d'Anthropic s'il fallait exécuter la commande en milieu de tour ou la mettre en file d'attente jusqu'à la fin du tour, et l'a toujours mise en file d'attente dans une session qui ne [récupère pas les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching). La disponibilité en mode non interactif avec `-p` est limitée ; consultez [Basculer le mode rapide](/docs/fr/fast-mode#toggle-fast-mode). Nécessite Claude Code v2.1.205 ou ultérieur |


127| `/reload-plugins [--force]` | Recharger tous les [plugins](/docs/fr/plugins/overview) actifs pour appliquer les modifications en attente sans redémarrer. Signale les décomptes pour chaque composant rechargé et signale les erreurs de chargement. Lorsque le rechargement changerait les outils MCP chargés et invaliderait le cache d'invite, la commande avertit et ignore sauf si vous passez `--force`. Également disponible en mode non interactif (`-p`), le SDK Agent et l'application de bureau, où il s'exécute uniquement sur l'entrée tapée directement dans la session et n'applique pas les modifications du serveur MCP du plugin ; nécessite Claude Code v2.1.260 ou ultérieur. Consultez [Appliquer les modifications du plugin sans redémarrer](/docs/fr/plugins/cli-reference#reload-plugins) |127| `/reload-plugins [--force]` | Recharger tous les [plugins](/docs/fr/plugins/overview) actifs pour appliquer les modifications en attente sans redémarrer. Signale les décomptes pour chaque composant rechargé et signale les erreurs de chargement. Lorsque le rechargement changerait les outils MCP chargés et invaliderait le cache d'invite, la commande avertit et ignore sauf si vous passez `--force`. Également disponible en mode non interactif (`-p`), le SDK Agent et l'application de bureau, où il s'exécute uniquement sur l'entrée tapée directement dans la session et n'applique pas les modifications du serveur MCP du plugin ; nécessite Claude Code v2.1.260 ou ultérieur. Consultez [Appliquer les modifications du plugin sans redémarrer](/docs/fr/plugins/cli-reference#reload-plugins) |

128| `/reload-skills` | Rescanner les répertoires de [compétence](/docs/fr/skills) et de commande afin que les compétences ajoutées ou modifiées sur le disque pendant la session deviennent disponibles sans redémarrer. Signale le nombre de compétences disponibles et le nombre ajouté ou supprimé |128| `/reload-skills` | Rescanner les répertoires de [compétence](/docs/fr/skills) et de commande afin que les compétences ajoutées ou modifiées sur le disque pendant la session deviennent disponibles sans redémarrer. Signale le nombre de compétences disponibles et le nombre ajouté ou supprimé |

129| `/remote-control` | Rendre cette session disponible pour [Remote Control](/docs/fr/remote-control) à partir de claude.ai. L'exécuter sans connexion affiche que Remote Control nécessite un abonnement claude.ai et vous indique comment vous connecter ; avant la v2.1.206, il signalait `Unknown command: /remote-control`. Alias : `/rc` |129| `/remote-control` | Rendre cette session disponible pour [Remote Control](/docs/fr/remote-control) à partir de claude.ai. L'exécuter sans connexion affiche que Remote Control nécessite un abonnement claude.ai et vous indique comment vous connecter ; avant la v2.1.206, il signalait `Unknown command: /remote-control`. Alias : `/rc` |

130| `/remote-env` | Choisir l'environnement cloud par défaut pour les sessions cloud que vous démarrez à partir de l'interface de ligne de commande. Consultez [Sélectionner un environnement à partir de l'interface de ligne de commande](/docs/fr/cloud-environments#select-an-environment-from-the-cli) |130| `/remote-env` | Choisir l'[environnement cloud](/docs/fr/cloud-environments#select-an-environment-from-the-cli) par défaut pour les sessions cloud que vous démarrez à partir de l'interface de ligne de commande |

131| `/rename [name]` | Renommer la session actuelle et afficher le nom sur la barre d'invite. Sans nom, génère automatiquement un à partir de l'historique de conversation. Également disponible en mode non interactif (`-p`) ; nécessite Claude Code v2.1.205 ou ultérieur. À partir de chaque surface de renommage, y compris claude.ai et l'application de bureau, Claude Code remplace les caractères de contrôle et invisibles dans le nouveau nom par des espaces et limite le nom à 200 caractères. Si le nom est vide une fois les caractères invisibles supprimés, Claude Code le rejette et affiche `That name is empty once invisible characters are removed. Usage: /rename <name>`. Le remplacement de caractères et la limite de longueur nécessitent Claude Code v2.1.221 ou ultérieur. Si une autre session en direct sur cette machine utilise déjà un nom que vous passez, Claude Code applique [une variante de celui-ci](/docs/fr/sessions#name-your-sessions) à la place |131| `/rename [name]` | Renommer la session actuelle et afficher le nom sur la barre d'invite. Sans nom, génère automatiquement un à partir de l'historique de conversation. Également disponible en mode non interactif (`-p`) ; nécessite Claude Code v2.1.205 ou ultérieur. À partir de chaque surface de renommage, y compris claude.ai et l'application de bureau, Claude Code remplace les caractères de contrôle et invisibles dans le nouveau nom par des espaces et limite le nom à 200 caractères. Si le nom est vide une fois les caractères invisibles supprimés, Claude Code le rejette et affiche `That name is empty once invisible characters are removed. Usage: /rename <name>`. Le remplacement de caractères et la limite de longueur nécessitent Claude Code v2.1.221 ou ultérieur. Si une autre session en direct sur cette machine utilise déjà un nom que vous passez, Claude Code applique [une variante de celui-ci](/docs/fr/sessions#name-your-sessions) à la place |

132| `/resume [session]` | Reprendre une conversation par ID ou nom, ou ouvrir le sélecteur de session. Les [sessions en arrière-plan](/docs/fr/agent-view) apparaissent dans le sélecteur marquées avec `bg` ; une qui est encore en cours d'exécution ne peut pas être reprise ici, donc attachez-vous à partir de `claude agents` ou arrêtez-la d'abord. Alias : `/continue` |132| `/resume [session]` | Reprendre une conversation par ID ou nom, ou ouvrir le sélecteur de session. Les [sessions en arrière-plan](/docs/fr/agent-view) apparaissent dans le sélecteur marquées avec `bg` ; une qui est encore en cours d'exécution ne peut pas être reprise ici, donc attachez-vous à partir de `claude agents` ou arrêtez-la d'abord. Alias : `/continue` |

133| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | Alias de [`/code-review`](/docs/fr/code-review#review-a-diff-locally) : examine le diff actuel, ou un numéro de demande de fusion, une branche ou un chemin que vous passez, tel que `/review 1234`, et prend les mêmes niveaux d'effort et drapeaux. Sans niveau donné, l'examen réutilise le dernier niveau `low` à `max` que vous avez tapé ; consultez [Examiner un diff localement](/docs/fr/code-review#review-a-diff-locally) pour les règles exactes. Pour un examen cloud approfondi, utilisez [`/code-review ultra`](/docs/fr/ultrareview). Avant la v2.1.223, `/review` était une commande distincte qui exécutait un examen unique en lecture seule d'une demande de fusion GitHub par numéro, répertoriant les demandes de fusion ouvertes à choisir lorsqu'elle était exécutée sans argument ; de la v2.1.186 à la v2.1.201, elle exécutait le même moteur multi-agents que `/code-review medium` |133| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | Alias de [`/code-review`](/docs/fr/code-review#review-a-diff-locally) : examine le diff actuel, ou un numéro de demande de fusion, une branche ou un chemin que vous passez, tel que `/review 1234`, et prend les mêmes niveaux d'effort et drapeaux. Sans niveau donné, l'examen réutilise le dernier niveau `low` à `max` que vous avez tapé ; consultez [Examiner un diff localement](/docs/fr/code-review#review-a-diff-locally) pour les règles exactes. Pour un examen cloud approfondi, utilisez [`/code-review ultra`](/docs/fr/ultrareview). Avant la v2.1.223, `/review` était une commande distincte qui exécutait un examen unique en lecture seule d'une demande de fusion GitHub par numéro, répertoriant les demandes de fusion ouvertes à choisir lorsqu'elle était exécutée sans argument ; de la v2.1.186 à la v2.1.201, elle exécutait le même moteur multi-agents que `/code-review medium` |


143| `/simplify [target]` | **[Skill](/docs/fr/skills#bundled-skills).** Examiner le code modifié pour les opportunités de nettoyage et appliquer les corrections. Quatre [agents](/docs/fr/sub-agents) d'examen s'exécutent en parallèle, couvrant la réutilisation des assistants existants, la simplification, l'efficacité et si la modification est au bon niveau d'abstraction. L'examen ne recherche pas les bogues de correction. Utilisez `/code-review` pour trouver les bogues. Passez un chemin ou une référence de demande de fusion pour examiner une cible spécifique |143| `/simplify [target]` | **[Skill](/docs/fr/skills#bundled-skills).** Examiner le code modifié pour les opportunités de nettoyage et appliquer les corrections. Quatre [agents](/docs/fr/sub-agents) d'examen s'exécutent en parallèle, couvrant la réutilisation des assistants existants, la simplification, l'efficacité et si la modification est au bon niveau d'abstraction. L'examen ne recherche pas les bogues de correction. Utilisez `/code-review` pour trouver les bogues. Passez un chemin ou une référence de demande de fusion pour examiner une cible spécifique |

144| `/skill-doctor` | Afficher ce que chacune de vos [compétences](/docs/fr/skills) coûte en contexte et à quelle fréquence elle est utilisée, afin que vous puissiez [trouver les compétences à désactiver](/docs/fr/skills#find-unused-skills). Nécessite Claude Code v2.1.252 ou ultérieur et la [récupération des drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching) |144| `/skill-doctor` | Afficher ce que chacune de vos [compétences](/docs/fr/skills) coûte en contexte et à quelle fréquence elle est utilisée, afin que vous puissiez [trouver les compétences à désactiver](/docs/fr/skills#find-unused-skills). Nécessite Claude Code v2.1.252 ou ultérieur et la [récupération des drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching) |

145| `/skills` | Répertorier les [compétences](/docs/fr/skills) disponibles. Tapez pour filtrer la liste par nom, description ou source. Appuyez sur `t` pour trier par nombre de jetons, `Space` ou `Enter` pour [faire défiler la visibilité d'une compétence à Claude et au menu `/`](/docs/fr/skills#override-skill-visibility-from-settings), et `Esc` pour enregistrer et fermer. Vous ne pouvez pas faire défiler les compétences des plugins, les compétences dont le frontmatter définit `disable-model-invocation: true`, ou les compétences avec une entrée `skillOverrides` dans les paramètres gérés ou l'indicateur `--settings` |145| `/skills` | Répertorier les [compétences](/docs/fr/skills) disponibles. Tapez pour filtrer la liste par nom, description ou source. Appuyez sur `t` pour trier par nombre de jetons, `Space` ou `Enter` pour [faire défiler la visibilité d'une compétence à Claude et au menu `/`](/docs/fr/skills#override-skill-visibility-from-settings), et `Esc` pour enregistrer et fermer. Vous ne pouvez pas faire défiler les compétences des plugins, les compétences dont le frontmatter définit `disable-model-invocation: true`, ou les compétences avec une entrée `skillOverrides` dans les paramètres gérés ou l'indicateur `--settings` |

146| `/slides [brief]` | **[Skill](/docs/fr/skills#bundled-skills).** Créer une nouvelle présentation en tant qu'[artefact](/docs/fr/artifacts#make-a-slide-deck) Claude Slides rempli à partir de votre résumé, par exemple `/slides a quarterly review of the platform team`. Nécessite Claude Code v2.1.265 ou ultérieur, une session où les [artefacts sont disponibles](/docs/fr/artifacts#availability), et un compte où le [modèle Slides est disponible](/docs/fr/artifacts#start-from-a-slides-design-or-docs-template) ; sinon la commande n'apparaît pas. Disponible sur l'API Anthropic. Sur Amazon Bedrock, la plateforme d'agents de Google Cloud, Microsoft Foundry et Claude Platform sur AWS, les artefacts ne sont pas disponibles, donc la commande n'est pas disponible là-bas |

146| `/stats` | Alias pour `/usage`. S'ouvre sur l'onglet Stats |147| `/stats` | Alias pour `/usage`. S'ouvre sur l'onglet Stats |

147| `/status` | Ouvrir l'interface Paramètres sur l'onglet Statut, affichant la version, le modèle, le compte et la connectivité. Une ligne `Session kind` lit `background job · attached` ou `background job · unattended` dans une [session en arrière-plan](/docs/fr/agent-view), selon qu'un terminal est attaché, et `interactive` dans toute autre session. Avant la v2.1.221, `/status` n'affichait pas cette ligne. Fonctionne pendant que Claude répond |148| `/status` | Ouvrir l'interface Paramètres sur l'onglet Statut, affichant la version, le modèle, le compte et la connectivité. Une ligne `Session kind` lit `background job · attached` ou `background job · unattended` dans une [session en arrière-plan](/docs/fr/agent-view), selon qu'un terminal est attaché, et `interactive` dans toute autre session. Avant la v2.1.221, `/status` n'affichait pas cette ligne. Fonctionne pendant que Claude répond |

148| `/statusline` | Configurer la [ligne d'état](/docs/fr/statusline) de Claude Code. Décrivez ce que vous voulez, ou exécutez sans arguments pour auto-configurer à partir de votre invite de shell |149| `/statusline` | Configurer la [ligne d'état](/docs/fr/statusline) de Claude Code. Décrivez ce que vous voulez, ou exécutez sans arguments pour auto-configurer à partir de votre invite de shell |

Details

228le formatage et les modifications mécaniques où la vitesse gagne. *Fable* est le modèle le plus228le formatage et les modifications mécaniques où la vitesse gagne. *Fable* est le modèle le plus

229capable pour vos tâches les plus difficiles et les plus longues ; ce n'est pas le229capable pour vos tâches les plus difficiles et les plus longues ; ce n'est pas le

230défaut, donc sélectionnez-le avec `/model fable`, et notez que le contenu de cybersécurité et230défaut, donc sélectionnez-le avec `/model fable`, et notez que le contenu de cybersécurité et

231de biologie revient automatiquement à Opus. Opus 5.5 et Opus 5 exécutent leurs propres231de biologie revient automatiquement à Opus. Opus 5.5, Sonnet 5.5 et Opus 5 exécutent leurs propres

232vérifications aussi : le contenu signalé bascule vers un Opus antérieur, sauf232vérifications aussi : le contenu signalé bascule vers un modèle antérieur dans la même

233que le contenu de biologie signalé sur Opus 5 est refusé.233famille, sauf que le contenu de biologie signalé sur Opus 5 ou Sonnet

2345.5 est refusé.

234 235 

235*Essayez maintenant :* tapez `/model` et choisissez Sonnet si vous ne l'avez pas déjà fait. C'est236*Essayez maintenant :* tapez `/model` et choisissez Sonnet si vous ne l'avez pas déjà fait. C'est

236le bon défaut pour la plupart des tâches.237le bon défaut pour la plupart des tâches.


242| - | - |243| - | - |

243| Fable | Les tâches les plus difficiles et les plus longues. Opt-in uniquement : sélectionnez-le avec `/model fable`. Le contenu de cybersécurité ou de biologie déclenche [un basculement de modèle automatique vers Opus](/docs/fr/model-config#automatic-model-fallback) |244| Fable | Les tâches les plus difficiles et les plus longues. Opt-in uniquement : sélectionnez-le avec `/model fable`. Le contenu de cybersécurité ou de biologie déclenche [un basculement de modèle automatique vers Opus](/docs/fr/model-config#automatic-model-fallback) |

244| Opus | Refactorisations à grande échelle, débogage complexe, décisions architecturales, changements à enjeux élevés. Sur Opus 5.5 et Opus 5, le contenu de cybersécurité ou de biologie déclenche [un basculement de modèle automatique ou un refus](/docs/fr/model-config#automatic-model-fallback) |245| Opus | Refactorisations à grande échelle, débogage complexe, décisions architecturales, changements à enjeux élevés. Sur Opus 5.5 et Opus 5, le contenu de cybersécurité ou de biologie déclenche [un basculement de modèle automatique ou un refus](/docs/fr/model-config#automatic-model-fallback) |

245| Sonnet | Travail de fonctionnalité quotidienne, corrections de bugs, tests, documentation, révision de code. Défaut recommandé. |246| Sonnet | Travail de fonctionnalité quotidienne, corrections de bugs, tests, documentation, révision de code. Défaut recommandé. Sur Sonnet 5.5, le contenu de cybersécurité ou de biologie déclenche [un basculement de modèle automatique ou un refus](/docs/fr/model-config#automatic-model-fallback) |

246| Haiku | Questions rapides, formatage, modifications mécaniques, itération rapide |247| Haiku | Questions rapides, formatage, modifications mécaniques, itération rapide |

247 248 

248**Victoires rapides à essayer en premier**249**Victoires rapides à essayer en premier**

Details

1632* **Effacer entre les tâches** : exécutez `/clear` quand vous passez à un travail non lié. L'ancienne conversation encombre les fichiers dont vous avez besoin ensuite et coûte des jetons à chaque message.1632* **Effacer entre les tâches** : exécutez `/clear` quand vous passez à un travail non lié. L'ancienne conversation encombre les fichiers dont vous avez besoin ensuite et coûte des jetons à chaque message.

1633* **Déléguer les lectures volumineuses** : envoyez la recherche à un [sous-agent](/docs/fr/sub-agents) de sorte que le contenu du fichier reste dans sa fenêtre de contexte, pas dans la vôtre.1633* **Déléguer les lectures volumineuses** : envoyez la recherche à un [sous-agent](/docs/fr/sub-agents) de sorte que le contenu du fichier reste dans sa fenêtre de contexte, pas dans la vôtre.

1634 1634 

1635Si vous avez besoin d'une fenêtre plus grande plutôt qu'une conversation plus petite, les modèles Fable, Sonnet 5, Opus 4.6 et versions ultérieures, et Sonnet 4.6 supportent une fenêtre de contexte de 1 million de jetons. Consultez [Contexte étendu](/docs/fr/model-config#extended-context) pour la disponibilité par plan et comment sélectionner une variante de modèle `[1m]`. La compaction fonctionne de la même manière à la limite plus grande.1635Si vous avez besoin d'une fenêtre plus grande plutôt qu'une conversation plus petite, les modèles Fable, Sonnet 5 et versions ultérieures, Opus 4.6 et versions ultérieures, et Sonnet 4.6 supportent une fenêtre de contexte de 1 million de jetons. Consultez [Contexte étendu](/docs/fr/model-config#extended-context) pour la disponibilité par plan et comment sélectionner une variante de modèle `[1m]`. La compaction fonctionne de la même manière à la limite plus grande.

1636 1636 

1637Sonnet 5 s'exécute avec la fenêtre de contexte 1M et n'a pas de variante `[1m]` à sélectionner. Consultez [Fenêtre de contexte Sonnet 5](/docs/fr/model-config#sonnet-5-context-window) pour ses seuils de compaction automatique et l'exception de la passerelle LLM.1637Sonnet 5.5 et Sonnet 5 s'exécutent avec la fenêtre de contexte 1M et n'ont pas de variante `[1m]` à sélectionner. Consultez [Fenêtre de contexte Sonnet 5.5 et Sonnet 5](/docs/fr/model-config#sonnet-5-5-and-sonnet-5-context-window) pour leurs seuils de compaction automatique et l'exception de la passerelle LLM.

1638 1638 

1639Le point où la compaction automatique s'exécute dépend de votre modèle et de votre configuration. Consultez [Default auto-compact thresholds](/docs/fr/model-config#default-auto-compact-thresholds) pour les limites par modèle, et [Correct the window for a gateway or custom model ID](/docs/fr/model-config#correct-the-window-for-a-gateway-or-custom-model-id) si Claude Code suppose la mauvaise fenêtre pour votre ID de modèle, comme un alias de [passerelle LLM](/docs/fr/llm-gateway).1639Le point où la compaction automatique s'exécute dépend de votre modèle et de votre configuration. Consultez [Default auto-compact thresholds](/docs/fr/model-config#default-auto-compact-thresholds) pour les limites par modèle, et [Correct the window for a gateway or custom model ID](/docs/fr/model-config#correct-the-window-for-a-gateway-or-custom-model-id) si Claude Code suppose la mauvaise fenêtre pour votre ID de modèle, comme un alias de [passerelle LLM](/docs/fr/llm-gateway).

1640 1640 

costs.md +4 −1

Details

359 359 

360La réflexion étendue est activée par défaut car elle améliore considérablement les performances sur les tâches complexes de planification et de raisonnement. Les tokens de réflexion sont facturés comme des tokens de sortie, et le budget par défaut peut être des dizaines de milliers de tokens par requête selon le modèle.360La réflexion étendue est activée par défaut car elle améliore considérablement les performances sur les tâches complexes de planification et de raisonnement. Les tokens de réflexion sont facturés comme des tokens de sortie, et le budget par défaut peut être des dizaines de milliers de tokens par requête selon le modèle.

361 361 

362Pour les tâches plus simples où un raisonnement approfondi n'est pas nécessaire, vous pouvez réduire les coûts en abaissant le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) avec `/effort` ou dans `/model`, ou en désactivant la réflexion dans `/config`. Vous ne pouvez pas désactiver la réflexion sur les modèles Opus 5.5 ou les modèles Fable, qui utilisent toujours la réflexion étendue.362Pour les tâches plus simples où un raisonnement approfondi n'est pas nécessaire, vous pouvez réduire les coûts en abaissant le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) avec `/effort` ou dans `/model`, ou en désactivant la réflexion dans `/config`. Vous ne pouvez pas désactiver la réflexion sur les modèles Opus 5.5, Sonnet 5.5 ou les modèles Fable, qui utilisent toujours la réflexion étendue.

363 363 

364Sur les modèles avec un [budget de réflexion fixe](/docs/fr/model-config#adaptive-reasoning-and-fixed-thinking-budgets), vous pouvez également abaisser le budget en définissant la [variable d'environnement](/docs/fr/env-vars) `MAX_THINKING_TOKENS`, par exemple `MAX_THINKING_TOKENS=8000`. Les modèles de raisonnement adaptatif ignorent les budgets non nuls, donc utilisez plutôt les niveaux d'effort.364Sur les modèles avec un [budget de réflexion fixe](/docs/fr/model-config#adaptive-reasoning-and-fixed-thinking-budgets), vous pouvez également abaisser le budget en définissant la [variable d'environnement](/docs/fr/env-vars) `MAX_THINKING_TOKENS`, par exemple `MAX_THINKING_TOKENS=8000`. Les modèles de raisonnement adaptatif ignorent les budgets non nuls, donc utilisez plutôt les niveaux d'effort.

365 365 


369 369 

370L'exécution de tests, la récupération de documentation ou le traitement de fichiers journaux peuvent consommer un contexte important. Déléguez-les aux [subagents](/docs/fr/sub-agents#isolate-high-volume-operations) pour que la sortie détaillée reste dans le contexte du subagent tandis que seul un résumé revient à votre conversation principale.370L'exécution de tests, la récupération de documentation ou le traitement de fichiers journaux peuvent consommer un contexte important. Déléguez-les aux [subagents](/docs/fr/sub-agents#isolate-high-volume-operations) pour que la sortie détaillée reste dans le contexte du subagent tandis que seul un résumé revient à votre conversation principale.

371 371 

372Les propres requêtes du subagent tirent toujours sur votre utilisation. Pour dépenser moins sur eux, [choisissez un modèle plus petit pour un subagent](/docs/fr/sub-agents#choose-a-model) ou [exécutez chaque subagent sur un seul modèle](/docs/fr/sub-agents#run-every-subagent-on-one-model).

373 

372<h3 id="manage-agent-team-costs">374<h3 id="manage-agent-team-costs">

373 Gérer les coûts des équipes d'agents375 Gérer les coûts des équipes d'agents

374</h3>376</h3>


416* **Tâches planifiées** : une [tâche planifiée](/docs/fr/scheduled-tasks) s'exécute selon son intervalle même pendant que la session est inactive, envoyant votre contexte complet à chaque fois418* **Tâches planifiées** : une [tâche planifiée](/docs/fr/scheduled-tasks) s'exécute selon son intervalle même pendant que la session est inactive, envoyant votre contexte complet à chaque fois

417* **Messages entre sessions** : Claude Code livre un [message d'une autre de vos sessions](/docs/fr/cross-session-messaging) comme un nouveau tour lorsque cette session est inactive, envoyant votre contexte complet à chaque fois. Pour retenir les messages entrants au lieu de les livrer, définissez [`crossSessionInbound`](/docs/fr/settings-reference#crosssessioninbound) sur `hold`419* **Messages entre sessions** : Claude Code livre un [message d'une autre de vos sessions](/docs/fr/cross-session-messaging) comme un nouveau tour lorsque cette session est inactive, envoyant votre contexte complet à chaque fois. Pour retenir les messages entrants au lieu de les livrer, définissez [`crossSessionInbound`](/docs/fr/settings-reference#crosssessioninbound) sur `hold`

418* **Vérifications d'objectifs** : tandis que le travail en arrière-plan maintient un [objectif](/docs/fr/goal) actif en attente, Claude Code [demande à Claude de vérifier ce travail](/docs/fr/goal#background-work-defers-evaluation) même lorsque la session est inactive, en commençant un nouveau tour qui envoie votre contexte complet. Claude Code démarre au maximum trois vérifications inactives par objectif entre vos invites. Avant la v2.1.246, les vérifications inactives n'étaient pas limitées. Pour désactiver les vérifications, définissez [`CLAUDE_CODE_GOAL_CHECKIN_MINUTES`](/docs/fr/env-vars) sur `0`. Les vérifications inactives nécessitent Claude Code v2.1.236 ou version ultérieure420* **Vérifications d'objectifs** : tandis que le travail en arrière-plan maintient un [objectif](/docs/fr/goal) actif en attente, Claude Code [demande à Claude de vérifier ce travail](/docs/fr/goal#background-work-defers-evaluation) même lorsque la session est inactive, en commençant un nouveau tour qui envoie votre contexte complet. Claude Code démarre au maximum trois vérifications inactives par objectif entre vos invites. Avant la v2.1.246, les vérifications inactives n'étaient pas limitées. Pour désactiver les vérifications, définissez [`CLAUDE_CODE_GOAL_CHECKIN_MINUTES`](/docs/fr/env-vars) sur `0`. Les vérifications inactives nécessitent Claude Code v2.1.236 ou version ultérieure

421* **Sous-agents et flux de travail** : chaque sous-agent, et chaque agent qu'un [flux de travail dynamique](/docs/fr/workflows#cost) génère, envoie ses propres requêtes en plus de celles de la conversation principale. La [répartition d'attribution](#plan-usage-breakdown) affiche la part du sous-agent

419* **Coéquipiers agents** : chaque [coéquipier](#agent-team-token-costs) actif continue de consommer des jetons jusqu'à sa sortie422* **Coéquipiers agents** : chaque [coéquipier](#agent-team-token-costs) actif continue de consommer des jetons jusqu'à sa sortie

420* **Compaction** : `/compact` lit la conversation qu'il résume, donc [compacter un grand contexte](/docs/fr/prompt-caching#compacting-the-conversation) est en soi une grande requête. Lorsque vous voulez un nouveau départ au lieu de continuité, `/clear` ne coûte rien423* **Compaction** : `/compact` lit la conversation qu'il résume, donc [compacter un grand contexte](/docs/fr/prompt-caching#compacting-the-conversation) est en soi une grande requête. Lorsque vous voulez un nouveau départ au lieu de continuité, `/clear` ne coûte rien

421 424 

Details

14 14 

15Un message est un morceau de texte qu'un Claude écrit à un autre, jamais l'historique de conversation ou les fichiers de l'expéditeur. Pour déplacer une conversation entière ou son contexte, [reprenez la session](/docs/fr/sessions#resume-a-session) à la place.15Un message est un morceau de texte qu'un Claude écrit à un autre, jamais l'historique de conversation ou les fichiers de l'expéditeur. Pour déplacer une conversation entière ou son contexte, [reprenez la session](/docs/fr/sessions#resume-a-session) à la place.

16 16 

17Claude utilise deux outils pour cela : `ListAgents` pour découvrir quels agents il peut atteindre, et `SendMessage` pour livrer un message à l'un d'eux par nom. Avec le même outil `SendMessage`, Claude peut également envoyer des messages à des [sous-agents](/docs/fr/sub-agents#resume-subagents) et des coéquipiers [d'équipe d'agents](/docs/fr/agent-teams) au sein d'une seule session ou équipe. Cette page couvre les messages entre vos sessions indépendantes.

18 

19<h2 id="when-to-use-cross-session-messaging">17<h2 id="when-to-use-cross-session-messaging">

20 Quand utiliser la messagerie entre sessions18 Quand utiliser la messagerie entre sessions

21</h2>19</h2>


27* **Obtenir le statut du travail de longue durée** : faire rapporter une migration ou une exécution de test à la session que vous regardez, ou demandez-le vous-même de là. Si cette session est sur cette machine, Claude peut aussi [lui demander un avis quand elle devient inactive ou se termine](#get-a-notice-when-another-session-goes-idle).25* **Obtenir le statut du travail de longue durée** : faire rapporter une migration ou une exécution de test à la session que vous regardez, ou demandez-le vous-même de là. Si cette session est sur cette machine, Claude peut aussi [lui demander un avis quand elle devient inactive ou se termine](#get-a-notice-when-another-session-goes-idle).

28* **Envoyer des messages entre machines** : atteindre l'une de vos sessions sur une autre machine ou sur le web.26* **Envoyer des messages entre machines** : atteindre l'une de vos sessions sur une autre machine ou sur le web.

29 27 

30Utilisez la messagerie entre sessions indépendantes que vous démarrez et dirigez vous-même. Claude Code a une fonctionnalité dédiée pour chacune des autres façons d'exécuter ou d'atteindre plusieurs sessions, donc utilisez celle construite pour ce que vous faites à la place :

31 

32* Pour continuer une conversation dans un autre terminal, ou partager son contexte avec une nouvelle session, [reprenez la session](/docs/fr/sessions#resume-a-session)

33* Pour une équipe coordonnée de sessions que Claude crée et supervise, utilisez les [équipes d'agents](/docs/fr/agent-teams)

34* Pour regarder et diriger de nombreuses sessions d'un seul endroit, utilisez la [vue agent](/docs/fr/agent-view)

35* Pour diriger une session vous-même depuis votre téléphone ou un autre appareil, plutôt que d'avoir les sessions se envoyer des messages, utilisez la [Télécommande](/docs/fr/remote-control)

36* Pour pousser des événements externes, comme les résultats CI ou les messages de chat, dans une session, utilisez les [canaux](/docs/fr/channels)

37 

38<h2 id="message-another-session">28<h2 id="message-another-session">

39 Envoyer un message à une autre session29 Envoyer un message à une autre session

40</h2>30</h2>


74 64 

75Le Claude récepteur lit le message entre les appels d'outils lors d'un tour actif, donc un outil en cours d'exécution n'est jamais interrompu. Quand la session réceptrice est inactive, Claude Code démarre un nouveau tour avec le message.65Le Claude récepteur lit le message entre les appels d'outils lors d'un tour actif, donc un outil en cours d'exécution n'est jamais interrompu. Quand la session réceptrice est inactive, Claude Code démarre un nouveau tour avec le message.

76 66 

77Un message d'une autre session arrive sous forme de texte brut. S'il mentionne un fichier ou une [ressource MCP](/docs/fr/mcp#use-mcp-resources) avec `@`, Claude voit la mention telle qu'écrite et Claude Code n'attache rien, que le message démarre un nouveau tour ou arrive pendant un. Claude peut toujours ouvrir un chemin mentionné sur la machine réceptrice avec ses propres outils, sous réserve des permissions de cette session. Avant v2.1.251, une mention `@` dans un message qui a démarré un nouveau tour attachait le fichier ou la ressource MCP du côté récepteur.67Un message d'une autre session arrive sous forme de texte brut. S'il mentionne un fichier ou une [ressource MCP](/docs/fr/mcp#use-mcp-resources) avec `@`, Claude voit la mention telle qu'écrite et Claude Code n'attache rien, que le message démarre un nouveau tour ou arrive pendant un. Claude peut toujours ouvrir un chemin mentionné sur la machine réceptrice avec ses propres outils, sous réserve des permissions de cette session.

78 68 

79Claude Code refuse un message dans les cas suivants :69Claude Code refuse un message dans les cas suivants :

80 70 

81* Le message est [au-delà du plafond de taille](#limitations). Claude Code le refuse dans la session d'envoi, avant qu'il ne parte.71* Le message est [au-delà du plafond de taille](#limitations). Claude Code le refuse dans la session d'envoi, avant qu'il ne parte.

82* Une rafale rapide vers une session sur cette machine a atteint [ce que la boîte de réception de cette session accepte](#limitations). Claude Code refuse d'autres messages à cette session.72* Une rafale rapide vers une session sur cette machine a atteint [ce que la boîte de réception de cette session accepte](#limitations). Claude Code refuse d'autres messages à cette session.

83* La cible de réponse sur cette machine échoue une vérification de sécurité, comme une cible symlink ou un point de terminaison qui n'est pas le processus attendu. [Refuser d'envoyer un message entre sessions](/docs/fr/errors#refusing-to-send-a-cross-session-message) liste ces vérifications.73* La cible de réponse sur cette machine échoue une vérification de sécurité, comme une cible symlink ou un point de terminaison qui n'est pas le processus attendu. [Refuser d'envoyer un message entre sessions](/docs/fr/errors#refusing-to-send-a-cross-session-message) liste ces vérifications.

84* Claude adresse le message au nom de sa propre session, comme décrit sous [Voir quelles sessions Claude peut atteindre](#see-which-sessions-claude-can-reach).

85 74 

86La session réceptrice vérifie chaque message arrivant par rapport à ses propres [contrôles entrants](#control-inbound-messages), et la vérification aboutit à l'un de trois résultats :75La session réceptrice vérifie chaque message arrivant par rapport à ses propres [contrôles entrants](#control-inbound-messages), et la vérification aboutit à l'un de trois résultats :

87 76 


121 Limites110 Limites

122</h4>111</h4>

123 112 

124L'avis est unique : Claude Code l'envoie une fois de la session regardée, et aucune session n'interroge l'autre. Si aucun avis n'arrive dans les 12 heures, Claude Code supprime l'abonnement et le dit à Claude, donc il n'attend pas indéfiniment.113Si aucun avis n'arrive dans les 12 heures, Claude Code supprime l'abonnement et le dit à Claude, donc il n'attend pas indéfiniment.

125 114 

126Les [contrôles entrants](#control-inbound-messages) de chaque côté s'appliquent à un avis comme un message :115Les [contrôles entrants](#control-inbound-messages) de chaque côté s'appliquent à un avis comme un message :

127 116 

128* **`refuse` de chaque côté** : rien n'arrive. La session regardée supprime la demande sans l'enregistrer ou y répondre, donc l'abonnement expire sans réponse après 12 heures, et une session demandante avec `refuse` ne s'abonne jamais.117* **`refuse` de chaque côté** : rien n'arrive. La session regardée supprime la demande sans l'enregistrer ou y répondre, donc l'abonnement expire sans réponse après 12 heures, et une session demandante avec `refuse` ne s'abonne jamais.

129* **`hold` de chaque côté** : l'avis arrive avec moins. La session regardée laisse le statut d'une ligne de côté, et la session demandante affiche l'avis dans votre transcription sans le livrer à Claude.118* **`hold` de chaque côté** : l'avis arrive avec moins. La session regardée laisse le statut d'une ligne de côté, et la session demandante affiche l'avis dans votre transcription sans le livrer à Claude.

130 119 

131Seul le Claude dans votre conversation principale peut s'abonner, et seulement à vos sessions sur cette machine. Quand un sous-agent ou un coéquipier d'équipe d'agents définit `notify_when_idle`, Claude Code ne fait aucun abonnement et le lui dit. Quand Claude demande un avis à un autre agent, comme un coéquipier, un sous-agent ou une session au-delà de cette machine, Claude Code refuse l'appel entier, y compris tout message attaché, et rapporte le refus à Claude pour qu'il puisse renvoyer le message sans la demande.120Seul le Claude dans votre conversation principale peut s'abonner, et seulement à vos sessions sur cette machine. Quand Claude demande un avis à un autre cible, comme un coéquipier, un sous-agent ou une session au-delà de cette machine, Claude Code refuse l'appel entier, y compris tout message attaché, et rapporte le refus à Claude pour qu'il puisse renvoyer le message sans la demande.

132 121 

133<h3 id="see-which-sessions-claude-can-reach">122<h3 id="see-which-sessions-claude-can-reach">

134 Voir quelles sessions Claude peut atteindre123 Voir quelles sessions Claude peut atteindre


137Claude trouve la cible d'un message de lui-même, donc vous n'avez pas besoin d'exécuter quoi que ce soit avant de lui demander d'envoyer. Pour voir vous-même quelles sessions Claude peut atteindre, exécutez la commande `/list-agents`. La première ligne, quand présente, est le nom de cette session, celui que vos autres sessions utilisent pour lui envoyer des messages. Les lignes ci-dessous sont les sessions que Claude peut atteindre :126Claude trouve la cible d'un message de lui-même, donc vous n'avez pas besoin d'exécuter quoi que ce soit avant de lui demander d'envoyer. Pour voir vous-même quelles sessions Claude peut atteindre, exécutez la commande `/list-agents`. La première ligne, quand présente, est le nom de cette session, celui que vos autres sessions utilisent pour lui envoyer des messages. Les lignes ci-dessous sont les sessions que Claude peut atteindre :

138 127 

139* **Sous-agents** : agents exécutés à l'intérieur de la session actuelle.128* **Sous-agents** : agents exécutés à l'intérieur de la session actuelle.

140* **Coéquipiers** : les coéquipiers de la propre [équipe d'agents](/docs/fr/agent-teams) de cette session. Avant v2.1.239, les coéquipiers n'apparaissaient pas dans la liste, bien que Claude puisse déjà les envoyer des messages par nom.129* **Coéquipiers** : les coéquipiers de la propre [équipe d'agents](/docs/fr/agent-teams) de cette session.

141* **Vos autres sessions locales** : sessions Claude Code exécutées sur la même machine, y compris les [sessions en arrière-plan](/docs/fr/agent-view). Une session n'apparaît que quand elle lie une [socket de boîte de réception](#the-sessions-inbox-socket).130* **Vos autres sessions locales** : sessions Claude Code exécutées sur la même machine, y compris les [sessions en arrière-plan](/docs/fr/agent-view). Une session n'apparaît que quand elle lie une [socket de boîte de réception](#the-sessions-inbox-socket).

142* **Vos sessions cloud** : vos sessions [Claude Code sur le web](/docs/fr/claude-code-on-the-web), affichées pendant que cette session est connectée à la [Télécommande](/docs/fr/remote-control). Claude Code les étiquette `cloud` dans la liste.131* **Vos sessions cloud** : vos sessions [Claude Code sur le web](/docs/fr/claude-code-on-the-web), affichées pendant que cette session est connectée à la [Télécommande](/docs/fr/remote-control).

143* **Vos sessions Télécommande sur d'autres machines** : affichées pendant que cette session est connectée à la [Télécommande](/docs/fr/remote-control), et étiquetées `Remote Control`. Claude Code affiche `offline` comme le statut d'une session dont la connexion Télécommande a chuté.132* **Vos sessions Télécommande sur d'autres machines** : affichées pendant que cette session est connectée à la [Télécommande](/docs/fr/remote-control), et étiquetées `Remote Control`. Claude Code affiche `offline` comme le statut d'une session dont la connexion Télécommande a chuté.

144 133 

145Cette session n'est pas l'une des lignes. Si Claude adresse un message au nom de sa propre session, Claude Code le refuse et dit à Claude que la cible est la session actuelle. Avant v2.1.239, la liste n'affichait pas le nom de cette session, et Claude Code rapportait un message envoyé à lui comme un agent qu'il ne pouvait pas trouver.

146 

147Pendant que cette session est connectée à la [Télécommande](/docs/fr/remote-control), Claude Code retient certains détails de vos sessions locales de la sortie `/list-agents`, sans changer ce que Claude lui-même voit quand il cherche une session à envoyer des messages :134Pendant que cette session est connectée à la [Télécommande](/docs/fr/remote-control), Claude Code retient certains détails de vos sessions locales de la sortie `/list-agents`, sans changer ce que Claude lui-même voit quand il cherche une session à envoyer des messages :

148 135 

149* **Répertoires de travail** : il laisse de côté le répertoire de travail de chaque session locale.136* **Répertoires de travail** : il laisse de côté le répertoire de travail de chaque session locale.


152 139 

153Quand la sortie liste quelque chose, elle se termine par une note disant que les détails ont été retenus. Exécuter `/rename` suivi d'un nom inutilisé à un clavier de sa propre session donne à cette session un nom qui apparaît dans la sortie.140Quand la sortie liste quelque chose, elle se termine par une note disant que les détails ont été retenus. Exécuter `/rename` suivi d'un nom inutilisé à un clavier de sa propre session donne à cette session un nom qui apparaît dans la sortie.

154 141 

155Claude Code lit vos listes de sessions cloud et Télécommande les plus récentes en premier et s'arrête après un nombre limité de pages pour chacune. Si votre compte a plus de ces sessions que ce qui rentre, Claude Code ne liste pas les plus anciennes, et Claude ne peut pas les envoyer des messages par nom. Quand cela se produit, Claude Code le dit dans la liste, et Claude voit la même note quand il envoie un message.

156 

157Claude adresse une session au-delà de cette machine par nom, de la même manière qu'une session locale. Consultez [Envoyer des messages aux sessions sur d'autres machines](#message-sessions-on-other-machines) pour comment ces messages voyagent.

158 

159Une session répond au nom que vous définissez avec la commande [`/rename`](/docs/fr/commands) ou l'indicateur [`--name`](/docs/fr/cli-reference#cli-flags). Quand vous n'en définissez pas un, Claude Code nomme la session lui-même. Pour une session interactive, c'est le nom affiché dans les [listes de sessions exécutées](/docs/fr/sessions#name-your-sessions).142Une session répond au nom que vous définissez avec la commande [`/rename`](/docs/fr/commands) ou l'indicateur [`--name`](/docs/fr/cli-reference#cli-flags). Quand vous n'en définissez pas un, Claude Code nomme la session lui-même. Pour une session interactive, c'est le nom affiché dans les [listes de sessions exécutées](/docs/fr/sessions#name-your-sessions).

160 143 

161Quand vous renommez une session, Claude Code met aussi à jour l'enregistrement partagé que vos autres sessions utilisent pour chercher le nom de la session. S'il ne peut pas mettre à jour cet enregistrement, il vous avertit dans la sortie `/rename` que d'autres sessions peuvent toujours afficher l'ancien nom. Exécutez la session avec [`--debug`](/docs/fr/cli-reference#cli-flags), et Claude Code enregistre la cause de la mise à jour échouée.

162 

163Quand vous renommez une session, ou démarrez ou reprenez une interactive, avec un nom qu'une autre session active sur cette machine utilise déjà, Claude Code laisse le nom avec la session qui l'a déjà et [renomme le vôtre en une variante](/docs/fr/sessions#name-your-sessions). Les sessions peuvent toujours partager un nom, par exemple quand l'une d'elles exécute une version antérieure de Claude Code ou le nom partagé en est un que Claude Code a généré. À moins que cette session ne soit connectée à la Télécommande, Claude Code affiche le répertoire de travail de chaque session locale dans la sortie `/list-agents`, donc vous pouvez distinguer les sessions de même nom quand elles s'exécutent dans des répertoires différents. Claude adresse le message de l'une de deux façons, selon le nombre de sessions actives qui répondent au nom :144Quand vous renommez une session, ou démarrez ou reprenez une interactive, avec un nom qu'une autre session active sur cette machine utilise déjà, Claude Code laisse le nom avec la session qui l'a déjà et [renomme le vôtre en une variante](/docs/fr/sessions#name-your-sessions). Les sessions peuvent toujours partager un nom, par exemple quand l'une d'elles exécute une version antérieure de Claude Code ou le nom partagé en est un que Claude Code a généré. À moins que cette session ne soit connectée à la Télécommande, Claude Code affiche le répertoire de travail de chaque session locale dans la sortie `/list-agents`, donc vous pouvez distinguer les sessions de même nom quand elles s'exécutent dans des répertoires différents. Claude adresse le message de l'une de deux façons, selon le nombre de sessions actives qui répondent au nom :

164 145 

165* **Une session répond au nom** : Claude Code livre le message sur le nom seul.146* **Une session répond au nom** : Claude Code livre le message sur le nom seul.


177| Sur une autre de vos machines | Par les serveurs Anthropic, arrivant sur la connexion [Télécommande](/docs/fr/remote-control) de cette machine |158| Sur une autre de vos machines | Par les serveurs Anthropic, arrivant sur la connexion [Télécommande](/docs/fr/remote-control) de cette machine |

178| Sur [Claude Code sur le web](/docs/fr/claude-code-on-the-web) | Par les serveurs Anthropic, directement à la session cloud |159| Sur [Claude Code sur le web](/docs/fr/claude-code-on-the-web) | Par les serveurs Anthropic, directement à la session cloud |

179 160 

180Démarrer une conversation avec une session sur une autre de vos machines nécessite Claude Code v2.1.225 ou ultérieure et une cible qui [apparaît dans la liste](#see-which-sessions-claude-can-reach). Avant v2.1.225, Claude ne pouvait que répondre à un message qui arrivait d'une.161Démarrer une conversation avec une session sur une autre de vos machines nécessite Claude Code v2.1.225 ou ultérieure et une cible qui [apparaît dans la liste](#see-which-sessions-claude-can-reach).

181 

182Vous pouvez envoyer un message à une session affichée comme `offline` dans [la liste](#see-which-sessions-claude-can-reach), une dont la connexion Télécommande a chuté. L'envoi passe, mais le message n'arrive qu'après que la machine de cette session se reconnecte. Claude est informé de cela quand il envoie.

183 162 

184La livraison sur la même machine fonctionne partout où la fonctionnalité est activée. Chaque session s'enregistre dans des fichiers sur disque. Quand Claude liste ou envoie des messages à vos sessions locales, Claude Code lit ces fichiers pour trouver les sessions, donc deux sessions ne peuvent se atteindre que quand elles peuvent voir les mêmes fichiers.163Vous pouvez envoyer un message à une session affichée comme `offline` dans [la liste](#see-which-sessions-claude-can-reach), une dont la connexion Télécommande a chuté. L'envoi passe, mais le message n'arrive qu'après que la machine de cette session se reconnecte.

185 164 

186Un conteneur a son propre système de fichiers, donc une session à l'intérieur et une session sur l'hôte ne peuvent pas se atteindre. Deux sessions à l'intérieur du même conteneur peuvent toujours s'envoyer des messages, y compris sur un [exécuteur auto-hébergé](/docs/fr/self-hosted-environments). Une session à l'intérieur de WSL 2 et une session Windows native sur le même ordinateur ne peuvent pas non plus se atteindre, car elles s'enregistrent sous des répertoires personnels différents et écoutent sur des types de socket différents.165Une session à l'intérieur d'un conteneur et une session sur l'hôte ne peuvent pas se atteindre. Deux sessions à l'intérieur du même conteneur peuvent toujours s'envoyer des messages, y compris sur un [exécuteur auto-hébergé](/docs/fr/self-hosted-environments). Une session à l'intérieur de WSL 2 et une session Windows native sur le même ordinateur ne peuvent pas non plus se atteindre.

187 166 

188Pendant que cette session est connectée à la Télécommande, quand vous envoyez un message à une session sur une autre de vos machines, Claude Code affiche le message dans la conversation de cette session sous le nom Télécommande de cette session. Le Claude sur cette machine peut répondre à ce nom. Par exemple, quand cette session est connectée à la Télécommande comme `laptop-graceful-unicorn` et que vous envoyez un message à votre bureau, vous voyez le message dans la session du bureau sous `laptop-graceful-unicorn`.167Si cette session n'est pas connectée à la Télécommande quand Claude envoie à une session au-delà de cette machine, le message passe toujours, mais sans une [adresse de réponse](#what-a-message-looks-like), donc le Claude récepteur ne peut pas y répondre.

189 

190Si cette session n'est pas connectée à la Télécommande quand Claude envoie à une session au-delà de cette machine, le message passe toujours, mais sans une [adresse de réponse](#what-a-message-looks-like), donc le Claude récepteur ne peut pas y répondre. Claude est informé de cela quand il envoie.

191 168 

192Pour exiger votre approbation avant que tout message ne dépasse cette machine, définissez [`isolatePeerMachines`](#require-approval-for-cross-machine-messages).169Pour exiger votre approbation avant que tout message ne dépasse cette machine, définissez [`isolatePeerMachines`](#require-approval-for-cross-machine-messages).

193 170 


206 À quoi ressemble un message183 À quoi ressemble un message

207</h3>184</h3>

208 185 

209Quand un message arrive, Claude Code l'affiche dans la conversation comme un aperçu d'une ligne atténué, et la ligne d'aperçu reste dans la conversation après. L'aperçu porte le nom de l'expéditeur et la première ligne du message, coupée avec `…` quand elle est longue, comme `› Message from @api-worker: Schema migration finished (ctrl+o to expand)`. Avant v2.1.247, Claude Code affichait le message arrivant en entier au lieu d'un aperçu.186Quand un message arrive, Claude Code l'affiche dans la conversation comme un aperçu d'une ligne atténué, et la ligne d'aperçu reste dans la conversation après. L'aperçu porte le nom de l'expéditeur et la première ligne du message, coupée avec `…` quand elle est longue, comme `› Message from @api-worker: Schema migration finished (ctrl+o to expand)`.

210 187 

211L'un de ceux-ci affiche le texte complet :188L'un de ceux-ci affiche le texte complet :

212 189 


215 192 

216L'aperçu raccourcit seulement ce que vous voyez. Que vous l'agrandissiez ou non, Claude lit le message complet.193L'aperçu raccourcit seulement ce que vous voyez. Que vous l'agrandissiez ou non, Claude lit le message complet.

217 194 

218Claude reçoit le message avec le nom de l'expéditeur et une adresse de réponse, sauf pour un [message unidirectionnel entre machines](#message-sessions-on-other-machines), qui ne porte pas d'adresse de réponse. Au-delà du nom et de l'adresse de réponse, le Claude récepteur obtient le texte du message, jamais l'historique de conversation ou les fichiers de l'expéditeur. [Livraison des messages](#message-delivery) couvre les mentions `@` dans le texte.195Claude reçoit le message avec le nom de l'expéditeur et une adresse de réponse, sauf pour un [message unidirectionnel entre machines](#message-sessions-on-other-machines), qui ne porte pas d'adresse de réponse.

219 

220Un message qu'un [sous-agent](/docs/fr/sub-agents) a écrit arrive sous le nom de la session d'envoi, avec le sous-agent identifié dans le texte du message. Une réponse à celui-ci atteint la conversation principale de cette session, pas le sous-agent.

221 196 

222Cet exemple est un message qu'un Claude a écrit à un autre, tel qu'il se lit en entier quand vous l'agrandissez :197Cet exemple est un message qu'un Claude a écrit à un autre, tel qu'il se lit en entier quand vous l'agrandissez :

223 198 


254* Quand la boîte de dialogue reste sans réponse au-delà de la date limite [`dialogExpiry`](/docs/fr/settings-reference#dialogexpiry), Claude Code la ferme et supprime le message. La date limite par défaut est de cinq minutes.229* Quand la boîte de dialogue reste sans réponse au-delà de la date limite [`dialogExpiry`](/docs/fr/settings-reference#dialogexpiry), Claude Code la ferme et supprime le message. La date limite par défaut est de cinq minutes.

255* Pendant qu'aucun terminal n'est attaché à une [session en arrière-plan](/docs/fr/agent-view), Claude Code laisse la boîte de dialogue ouverte au-delà de la date limite. Après que vous attachiez, si la boîte de dialogue reste sans réponse pendant une période de date limite complète, Claude Code la ferme et supprime le message.230* Pendant qu'aucun terminal n'est attaché à une [session en arrière-plan](/docs/fr/agent-view), Claude Code laisse la boîte de dialogue ouverte au-delà de la date limite. Après que vous attachiez, si la boîte de dialogue reste sans réponse pendant une période de date limite complète, Claude Code la ferme et supprime le message.

256* Si la classe de mode de permission de cette session change pendant que les messages sont retenus, Claude Code réapplique les règles entrantes, livre les messages qu'elles acceptent maintenant, et affiche un avis.231* Si la classe de mode de permission de cette session change pendant que les messages sont retenus, Claude Code réapplique les règles entrantes, livre les messages qu'elles acceptent maintenant, et affiche un avis.

257* Si un changement de paramètres rend `refuse` applicable pendant que les messages sont retenus, Claude Code supprime chaque message retenu et rapporte un refus à chaque expéditeur qu'il peut atteindre.

258 

259Quand l'expéditeur est une session sur la même machine, Claude Code envoie un avis vers elle quand le récepteur retient le message, et un suivi quand le récepteur livre, refuse ou l'expire plus tard. L'avis atteint le Claude d'envoi, donc il sait de ne pas continuer à attendre un message que l'autre session n'a pas lu.

260 

261Dans une session d'envoi interactive, l'avis apparaît dans la transcription. Un expéditeur [`claude -p`](/docs/fr/headless) le reçoit dans la [sortie en flux](/docs/fr/headless#stream-responses) comme un [message `system` informatif](/docs/fr/agent-sdk/typescript#sdkinformationalmessage). Les avis aux expéditeurs `claude -p` nécessitent Claude Code v2.1.271 ou ultérieur.

262 232 

263Si le récepteur refuse le message, l'avis de l'expéditeur dit que le récepteur n'accepte pas les messages entre sessions et dit au Claude de l'expéditeur de ne pas attendre ou renvoyer.233Claude Code retient au maximum 100 messages, et au-delà de cela supprime les plus anciens.

264 

265Claude Code retient au maximum 100 messages, séparément de la file d'attente de livraison, et au-delà de cela supprime les plus anciens.

266 234 

267<h3 id="non-interactive-sessions">235<h3 id="non-interactive-sessions">

268 Sessions non-interactives236 Sessions non-interactives


277 245 

278Définissez `dialogExpiry` à `"never"` pour garder les messages retenus par défaut jusqu'à ce que la session se termine. Un message retenu par un paramètre `hold` explicite n'expire pas ; Claude Code le livre seulement quand un `accept` s'applique plus tard.246Définissez `dialogExpiry` à `"never"` pour garder les messages retenus par défaut jusqu'à ce que la session se termine. Un message retenu par un paramètre `hold` explicite n'expire pas ; Claude Code le livre seulement quand un `accept` s'applique plus tard.

279 247 

280Quand la session se termine avec des messages toujours retenus, Claude Code les rapporte comme expirés à chaque expéditeur qu'il peut atteindre. Avant v2.1.225, aucune date limite ne s'appliquait dans une session `-p` : un message retenu restait retenu à moins qu'un changement de mode de permission pendant l'exécution le livre, et une session qui se terminait avec des messages retenus ne rapportait rien à leurs expéditeurs.

281 

282Pour laisser un worker `-p` prendre des messages sans surveillance, démarrez-le avec `crossSessionInbound` défini à `accept` dans sa valeur `--settings`. Un `accept` dans vos paramètres utilisateur fonctionne aussi mais s'applique à chaque session que vous exécutez.248Pour laisser un worker `-p` prendre des messages sans surveillance, démarrez-le avec `crossSessionInbound` défini à `accept` dans sa valeur `--settings`. Un `accept` dans vos paramètres utilisateur fonctionne aussi mais s'applique à chaque session que vous exécutez.

283 249 

284<h3 id="the-sessions-inbox-socket">250<h3 id="the-sessions-inbox-socket">


294* `/status` l'affiche dans la ligne `Peer address`. Le chemin est préfixé avec `uds:`.260* `/status` l'affiche dans la ligne `Peer address`. Le chemin est préfixé avec `uds:`.

295* Claude Code l'exporte vers les [hooks](/docs/fr/hooks) et les commandes Bash comme la variable d'environnement [`CLAUDE_CODE_MESSAGING_SOCKET`](/docs/fr/env-vars#variables) :261* Claude Code l'exporte vers les [hooks](/docs/fr/hooks) et les commandes Bash comme la variable d'environnement [`CLAUDE_CODE_MESSAGING_SOCKET`](/docs/fr/env-vars#variables) :

296 * Dans une session qui démarre avec la messagerie activée, Claude Code exporte la variable avant que tout hook ne s'exécute, y compris `SessionStart`.262 * Dans une session qui démarre avec la messagerie activée, Claude Code exporte la variable avant que tout hook ne s'exécute, y compris `SessionStart`.

297 * Chaque session exporte sa propre socket, jamais une héritée d'une session parent.

298 263 

299Sur macOS et Linux, Claude Code restreint la socket à votre utilisateur du système d'exploitation. Sur Windows natif, elle nécessite plutôt que chaque connexion s'authentifie d'abord avec une clé que seul votre utilisateur du système d'exploitation peut lire. De toute façon, sur une machine partagée les sessions d'un autre utilisateur ne peuvent pas la livrer.264Sur macOS et Linux, Claude Code restreint la socket à votre utilisateur du système d'exploitation. Sur Windows natif, elle nécessite plutôt que chaque connexion s'authentifie d'abord avec une clé que seul votre utilisateur du système d'exploitation peut lire. De toute façon, sur une machine partagée les sessions d'un autre utilisateur ne peuvent pas la livrer.

300 265 


307 272 

308Ouvrez la connexion seulement quand le message que vous postez est prêt. Claude Code ferme une connexion qui n'a pas envoyé une ligne complète dans les 30 secondes, donc capturez d'abord la sortie d'une commande lente puis ouvrez la connexion pour l'envoyer.273Ouvrez la connexion seulement quand le message que vous postez est prêt. Claude Code ferme une connexion qui n'a pas envoyé une ligne complète dans les 30 secondes, donc capturez d'abord la sortie d'une commande lente puis ouvrez la connexion pour l'envoyer.

309 274 

310Les [règles propres-enfant](#own-child-messages) ci-dessous disent quand Claude Code consulte le jeton et comment il traite un message qu'il ne peut pas vérifier.

311 

312<span id="own-child-messages" />Claude Code exécute les messages arrivant sur la socket par les mêmes [contrôles entrants](#control-inbound-messages) que tout autre message pair, avec une exception et une condition préalable :275<span id="own-child-messages" />Claude Code exécute les messages arrivant sur la socket par les mêmes [contrôles entrants](#control-inbound-messages) que tout autre message pair, avec une exception et une condition préalable :

313 276 

314* **Messages propres-enfant** : quand aucune valeur `crossSessionInbound` ne s'applique, Claude Code livre un message qu'il vérifie provenir des processus enfants de la session, comme un hook ou une commande Bash postant vers la socket de sa propre session.277* **Messages propres-enfant** : quand aucune valeur `crossSessionInbound` ne s'applique, Claude Code livre un message qu'il vérifie provenir des processus enfants de la session, comme un hook ou une commande Bash postant vers la socket de sa propre session.


363 Disponibilité326 Disponibilité

364</h2>327</h2>

365 328 

366La messagerie entre sessions nécessite Claude Code v2.1.224 ou ultérieure sur macOS, Linux et WSL 2, et v2.1.234 ou ultérieure sur Windows natif. La disponibilité, et quelles sessions Claude peut envoyer des messages, dépendent aussi de votre système d'exploitation, fournisseur et configuration :329La messagerie inter-sessions nécessite Claude Code v2.1.224 ou ultérieure sur macOS, Linux et WSL 2, et v2.1.234 ou ultérieure sur Windows natif. La disponibilité et les sessions que Claude peut contacter dépendent également de votre système d'exploitation, de votre fournisseur et de votre configuration :

367 330 

368* **Système d'exploitation** : disponible sur macOS, Windows et Linux, y compris Linux à l'intérieur de WSL 2.331* **Système d'exploitation** : disponible sur macOS, Windows et Linux, y compris Linux dans WSL 2.

369 332 

370* **Sessions sur cette machine** : disponible sur chaque fournisseur, y compris Amazon Bedrock, Claude Platform sur AWS, Agent Platform de Google Cloud et Microsoft Foundry, et dans les sessions qui s'exécutent avec la [récupération de drapeau de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching) désactivée. Sur ces fournisseurs, et avec la récupération de drapeau désactivée, la messagerie sur la même machine nécessite Claude Code v2.1.248 ou ultérieure. Claude Code livre ces messages sur une [socket par session sur votre machine](#the-sessions-inbox-socket), jamais par les serveurs Anthropic.333* **Sessions sur cette machine** : disponible sur tous les fournisseurs, y compris Amazon Bedrock, Claude Platform sur AWS, Agent Platform de Google Cloud et Microsoft Foundry, et dans les sessions qui s'exécutent avec [récupération de drapeaux de fonctionnalités](/docs/fr/env-vars#features-that-need-feature-flag-fetching) désactivée. Sur ces fournisseurs et avec la récupération de drapeaux désactivée, la messagerie sur la même machine nécessite Claude Code v2.1.248 ou ultérieure. Claude Code livre ces messages via une [socket par session sur votre machine](#the-sessions-inbox-socket), jamais via les serveurs d'Anthropic.

371 334 

372 Pour arrêter une session de les recevoir, définissez [`crossSessionInbound`](#turn-off-cross-session-messaging) à `refuse`.335 Pour empêcher une session de les recevoir, définissez [`crossSessionInbound`](#turn-off-cross-session-messaging) sur `refuse`.

373 336 

374* **Sessions au-delà de cette machine** : Claude trouve vos [sessions Claude Code sur le web](/docs/fr/claude-code-on-the-web) et vos sessions sur d'autres machines à partir d'une session connectée à la Télécommande, qui nécessite une connexion claude.ai comme authentification active de cette session et les autres [exigences de Télécommande](/docs/fr/remote-control#requirements). Claude ne peut pas trouver ces sessions avec une clé API ou sur Amazon Bedrock, Claude Platform sur AWS, Agent Platform de Google Cloud et Microsoft Foundry.337* **Sessions au-delà de cette machine** : Claude trouve vos [sessions cloud](/docs/fr/claude-code-on-the-web) et vos sessions sur d'autres machines à partir d'une session connectée à Remote Control, qui nécessite une connexion claude.ai comme authentification active de cette session et les autres [exigences de Remote Control](/docs/fr/remote-control#requirements). Claude ne peut pas trouver ces sessions avec une clé API ou sur Amazon Bedrock, Claude Platform sur AWS, Agent Platform de Google Cloud et Microsoft Foundry.

375 338 

376Pour vérifier une session, tapez `/list-agents`, aussi disponible comme `/peers`. Le résultat sépare une session qui n'a pas la fonctionnalité d'une session où quelque chose de plus étroit a bloqué un message, comme un outil `SendMessage` manquant ou un envoi refusé :339Pour vérifier une session, tapez `/list-agents`, également disponible sous `/peers`. Le résultat sépare une session qui n'a pas la fonctionnalité d'une session où quelque chose de plus spécifique a bloqué un message, comme un outil `SendMessage` manquant ou un envoi refusé :

377 340 

378* **`/list-agents` n'est pas reconnu** : la session n'a pas la messagerie entre sessions. Travaillez à travers les exigences ci-dessus, en commençant par `claude --version` pour l'exigence de version.341* **`/list-agents` n'est pas reconnu** : la session n'a pas la messagerie inter-sessions. Travaillez à travers les exigences ci-dessus, en commençant par `claude --version` pour l'exigence de version.

379* **`/list-agents` fonctionne mais un envoi n'est pas arrivé** : la messagerie est activée, et quelque chose de plus étroit s'applique :342* **`/list-agents` fonctionne mais un envoi n'est pas arrivé** : la messagerie est activée et quelque chose de plus spécifique s'applique :

380 * **Règles de refus** : une [règle de permission de refus](#turn-off-cross-session-messaging) supprime les outils `SendMessage` et `ListAgents`.343 * **Règles de refus** : une [règle de refus de permission](#turn-off-cross-session-messaging) supprime les outils `SendMessage` et `ListAgents`.

381 * **Contrôles entrants** : les [contrôles entrants de la session réceptrice](#control-inbound-messages) peuvent retenir ou supprimer ce que vous lui envoyez.344 * **Contrôles entrants** : les [contrôles entrants de la session réceptrice](#control-inbound-messages) peuvent retenir ou supprimer ce que vous lui envoyez.

382 * **Session cloud manquante** : une session cloud n'apparaît que pendant que cette session est connectée à la [Télécommande](/docs/fr/remote-control).345 * **Session cloud manquante** : une session cloud n'apparaît que lorsque cette session est connectée à [Remote Control](/docs/fr/remote-control).

383 * **Session sur une autre machine manquante** : une session sur une autre de vos machines n'apparaît que quand elle s'exécute avec la [Télécommande](/docs/fr/remote-control) et que cette session est aussi connectée.346 * **Session sur une autre machine manquante** : une session sur une autre de vos machines n'apparaît que lorsqu'elle s'exécute avec [Remote Control](/docs/fr/remote-control) et que cette session est également connectée.

384 * **Session sur une autre machine `offline`** : un message à une session listée comme `offline` passe, mais [n'arrive que après que la machine de cette session se reconnecte](#message-sessions-on-other-machines).347 * **Session sur une autre machine `offline`** : un message à une session listée comme `offline` passe, mais [n'arrive que lorsque la machine de cette session se reconnecte](#message-sessions-on-other-machines).

385 * **Session cloud ou sur une autre machine plus ancienne manquante** : Claude Code [lit ces listes de sessions les plus récentes en premier et s'arrête après un nombre limité de pages](#see-which-sessions-claude-can-reach), donc Claude ne peut pas envoyer un message à une session qui a dépassé par nom.348 * **Session cloud ou sur une autre machine plus ancienne manquante** : Claude Code lit ces listes de sessions du plus récent au plus ancien et s'arrête après un nombre limité de pages, donc Claude ne peut pas contacter une session qui a glissé au-delà d'elles par nom.

386 * **Démarrer une conversation** : [Envoyer des messages aux sessions sur d'autres machines](#message-sessions-on-other-machines) couvre le démarrage d'une conversation avec une session au-delà de cette machine.

387 349 

388Dans une session avec messagerie, `/status` affiche aussi une ligne `Peer address` avec l'adresse de boîte de réception propre de la session, ou `unavailable` et la raison quand Claude Code [ne pouvait pas configurer une boîte de réception](#the-sessions-inbox-socket).350Dans une session avec messagerie, `/status` affiche également une ligne `Peer address` avec l'adresse de la boîte de réception de la session, ou `unavailable` et la raison lorsque Claude Code [n'a pas pu configurer une boîte de réception](#the-sessions-inbox-socket).

389 351 

390<h2 id="limitations">352<h2 id="limitations">

391 Limitations353 Limitations


395 357 

396* **Texte brut seulement** : Claude envoie seulement du texte brut entre les sessions. Les messages de protocole structuré d'[équipe d'agents](/docs/fr/agent-teams) restent au sein d'une équipe.358* **Texte brut seulement** : Claude envoie seulement du texte brut entre les sessions. Les messages de protocole structuré d'[équipe d'agents](/docs/fr/agent-teams) restent au sein d'une équipe.

397* **La taille du message sur la même machine est plafonnée** : Claude Code refuse un message à une session sur cette machine une fois que sa forme sérialisée dépasse environ un million de caractères. Le refus [nomme les tailles exactes](/docs/fr/errors#message-too-large-for-cross-session-delivery). Rien n'atteint la session réceptrice.359* **La taille du message sur la même machine est plafonnée** : Claude Code refuse un message à une session sur cette machine une fois que sa forme sérialisée dépasse environ un million de caractères. Le refus [nomme les tailles exactes](/docs/fr/errors#message-too-large-for-cross-session-delivery). Rien n'atteint la session réceptrice.

398* **Les rafales rapides vers une session sont refusées à l'expéditeur** : une fois qu'une rafale rapide de messages vers une session sur cette machine atteint ce que la boîte de réception de cette session accepte, Claude Code refuse d'autres envois dans la session d'envoi. Le [refus nomme la rafale](/docs/fr/errors#too-many-messages-to-this-session-just-now) et dit à Claude de regrouper le reste en un message ou d'attendre. Avant v2.1.236, Claude Code rapportait ces envois comme envoyés pendant que la session réceptrice les supprimait.360* **Les rafales rapides vers une session sont refusées à l'expéditeur** : une fois qu'une rafale rapide de messages vers une session sur cette machine atteint ce que la boîte de réception de cette session accepte, Claude Code refuse d'autres envois dans la session d'envoi. Le [refus nomme la rafale](/docs/fr/errors#too-many-messages-to-this-session-just-now) et dit à Claude de regrouper le reste en un message ou d'attendre.

399* **Les boucles de message sont limitées** : dans la session réceptrice, Claude Code limite le débit des messages répétés par expéditeur, supprime les répétitions identiques arrivant dans une courte fenêtre, et met en file d'attente au maximum 50 messages acceptés pour que Claude les lise. Une boucle de message entre deux sessions s'arrête donc d'elle-même. Quand la limite de débit, la vérification de répétition ou le plafond de file d'attente supprime un message d'une session interactive sur cette machine, Claude Code dit à cette session lequel l'a supprimé et dit à son Claude de ne pas renvoyer immédiatement.361* **Les boucles de message sont limitées** : dans la session réceptrice, Claude Code limite le débit des messages répétés par expéditeur, supprime les répétitions identiques arrivant dans une courte fenêtre, et met en file d'attente au maximum 50 messages acceptés pour que Claude les lise. Une boucle de message entre deux sessions s'arrête donc d'elle-même.

400 362 

401<h2 id="related-resources">363<h2 id="related-resources">

402 Ressources connexes364 Ressources connexes


405* [Sous-agents](/docs/fr/sub-agents#resume-subagents) et [équipes d'agents](/docs/fr/agent-teams#messages-between-agents) : messagerie au sein d'une seule session ou équipe367* [Sous-agents](/docs/fr/sub-agents#resume-subagents) et [équipes d'agents](/docs/fr/agent-teams#messages-between-agents) : messagerie au sein d'une seule session ou équipe

406* [Agents en arrière-plan](/docs/fr/agent-view) : dispatcher et surveiller les sessions parallèles que vous pourriez envoyer des messages368* [Agents en arrière-plan](/docs/fr/agent-view) : dispatcher et surveiller les sessions parallèles que vous pourriez envoyer des messages

407* [Télécommande](/docs/fr/remote-control) : connectez cette session pour atteindre vos sessions sur d'autres machines369* [Télécommande](/docs/fr/remote-control) : connectez cette session pour atteindre vos sessions sur d'autres machines

370* [Canaux](/docs/fr/channels) : poussez des événements externes, tels que les résultats CI ou les messages de chat, dans une session

408* [Paramètres](/docs/fr/settings-reference#all-settings) : `crossSessionInbound`, `isolatePeerMachines` et `dialogExpiry`371* [Paramètres](/docs/fr/settings-reference#all-settings) : `crossSessionInbound`, `isolatePeerMachines` et `dialogExpiry`

409* [Modes de permission](/docs/fr/permission-modes) : les modes derrière les deux classes du défaut entrant372* [Modes de permission](/docs/fr/permission-modes) : les modes derrière les deux classes du défaut entrant

410* [Référence des outils](/docs/fr/tools-reference) : les lignes `ListAgents` et `SendMessage` dans le tableau des outils373* [Référence des outils](/docs/fr/tools-reference) : les lignes `ListAgents` et `SendMessage` dans le tableau des outils

data-usage.md +7 −7

Details

110 110 

111Les sessions [Claude Code sur le web](/docs/fr/claude-code-on-the-web) s'exécutent par défaut dans des machines virtuelles gérées par Anthropic au lieu de s'exécuter localement. Les sessions que votre organisation achemine vers un [environnement auto-hébergé](/docs/fr/self-hosted-environments) s'exécutent sur l'infrastructure que vous contrôlez ; pour savoir ce qui reste sur vos machines et ce qui va toujours à Anthropic, consultez [Ce qui reste sur votre infrastructure](/docs/fr/self-hosted-environments#what-stays-on-your-infrastructure). Dans les sessions cloud hébergées par Anthropic :111Les sessions [Claude Code sur le web](/docs/fr/claude-code-on-the-web) s'exécutent par défaut dans des machines virtuelles gérées par Anthropic au lieu de s'exécuter localement. Les sessions que votre organisation achemine vers un [environnement auto-hébergé](/docs/fr/self-hosted-environments) s'exécutent sur l'infrastructure que vous contrôlez ; pour savoir ce qui reste sur vos machines et ce qui va toujours à Anthropic, consultez [Ce qui reste sur votre infrastructure](/docs/fr/self-hosted-environments#what-stays-on-your-infrastructure). Dans les sessions cloud hébergées par Anthropic :

112 112 

113* **Stockage du code et des données :** Votre référentiel est cloné sur une VM isolée. Le code et les données de session sont soumis aux politiques de conservation et d'utilisation pour votre type de compte (voir la section Conservation des données ci-dessus)113* **Stockage du code et des données :** Votre référentiel est cloné dans la VM isolée de la session. Anthropic stocke la transcription de la session pour que vous puissiez revenir à la session ultérieurement. Le code et les données de session sont soumis aux [politiques de conservation et d'utilisation](#data-retention) pour votre type de compte

114* **Identifiants :** L'authentification GitHub est gérée via un proxy sécurisé ; vos identifiants GitHub n'entrent jamais dans le bac à sable114* **Identifiants :** Les identifiants GitHub sont stockés chiffrés sur les serveurs d'Anthropic et n'entrent jamais dans la VM. Le trafic GitHub depuis la VM passe par un proxy Anthropic qui les attache côté serveur

115* **Trafic réseau :** Tout le trafic sortant passe par un proxy de sécurité pour la journalisation d'audit et la prévention des abus115* **Trafic réseau :** Tout le trafic sortant passe par un proxy de sécurité pour la journalisation d'audit et la prévention des abus

116* **Données de session :** Les invites, les modifications de code et les sorties suivent les mêmes politiques de données que l'utilisation locale de Claude Code116* **Données de session :** Les invites, les modifications de code et les sorties suivent les mêmes politiques de données que l'utilisation locale de Claude Code

117 117 


121 Services de télémétrie121 Services de télémétrie

122</h2>122</h2>

123 123 

124Claude Code envoie deux types de télémétrie opérationnelle : les métriques d'utilisation et les rapports d'erreurs. Vous pouvez désactiver chacun individuellement avec les variables d'environnement ci-dessous, ou désactiver tout le trafic non essentiel à la fois en définissant `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`. La définition de `DISABLE_TELEMETRY` ou `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` désactive également l'évaluation des drapeaux de fonctionnalités sur laquelle [Remote Control](/docs/fr/remote-control#requirements) dépend ; `DISABLE_ERROR_REPORTING` ne le fait pas.124Claude Code envoie deux types de télémétrie opérationnelle : les métriques d'utilisation et les rapports d'erreur. Vous pouvez désactiver chacun individuellement avec les variables d'environnement ci-dessous, ou désactiver tout le trafic non essentiel à la fois en définissant `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`. La définition de `DISABLE_TELEMETRY` ou `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` désactive également l'évaluation des drapeaux de fonctionnalité, ce qui peut rendre [Remote Control](/docs/fr/remote-control#requirements) indisponible ; `DISABLE_ERROR_REPORTING` ne le fait pas.

125 125 

126**Métriques** : latence, fiabilité et modèles d'utilisation, envoyés à Anthropic et à l'infrastructure de journalisation tierce via TLS. Les métriques n'incluent jamais votre code, vos invites ou vos chemins de fichiers. Définissez `DISABLE_TELEMETRY=1` pour refuser.126**Métriques** : latence, fiabilité et modèles d'utilisation, envoyés à Anthropic et à l'infrastructure de journalisation tierce via TLS. Les métriques n'incluent jamais votre code, vos invites ou vos chemins de fichiers. Définissez `DISABLE_TELEMETRY=1` pour refuser.

127 127 

128**Rapports d'erreurs** : messages d'erreur et traces de pile provenant des éléments internes de Claude Code, envoyés à un service de suivi des erreurs tiers via TLS. Claude Code masque les modèles connus de secrets, chemins de fichiers, adresses e-mail et autres informations personnelles avant que quoi que ce soit ne quitte votre machine. Définissez `DISABLE_ERROR_REPORTING=1` pour refuser.128**Rapports d'erreur** : messages d'erreur et traces de pile provenant des éléments internes de Claude Code, envoyés à un service de suivi des erreurs tiers via TLS. Claude Code supprime les modèles connus de secrets, chemins de fichiers, adresses e-mail et autres informations personnelles avant que quoi que ce soit ne quitte votre machine. Définissez `DISABLE_ERROR_REPORTING=1` pour refuser.

129 129 

130La journalisation des erreurs n'est activée que lorsque tous ces éléments s'appliquent :130La génération de rapports d'erreur est activée uniquement lorsque tous ces éléments s'appliquent :

131 131 

132* vous vous connectez avec un abonnement Claude Pro ou Max132* vous vous connectez avec un abonnement Claude Pro ou Max

133* vous exécutez Claude Code v2.1.198 ou version ultérieure133* vous exécutez Claude Code v2.1.198 ou version ultérieure

134* vous vous connectez directement à l'API Claude134* vous vous connectez directement à l'API Claude

135* votre organisation n'a pas d'accord de rétention zéro ou HIPAA135* votre organisation n'a pas d'accord de rétention zéro ou HIPAA

136 136 

137Lorsque vous exécutez la commande `/feedback`, une copie de votre historique de conversation complet, y compris le code, est envoyée à Anthropic. Les commandes `/bug` et `/share` sont soumises par le même chemin. Avant de soumettre un rapport à partir de la boîte de dialogue de commentaires, vous choisissez la quantité d'historique à inclure : la session actuelle uniquement, qui est la valeur par défaut, ou également d'autres sessions du même projet au cours des 24 dernières heures ou 7 derniers jours. Claude Code soumet les [commentaires rédigés par Claude](/docs/fr/tools-reference#sendfeedback-tool-behavior) par le même chemin, y compris la transcription lorsque vous avez choisi de l'inclure sur l'écran d'examen du brouillon. Les données sont chiffrées en transit via TLS et stockées dans Google Cloud Storage, qui chiffre les données stockées au repos par défaut. Optionnellement, un problème GitHub est créé dans le référentiel public. Pour refuser, définissez la variable d'environnement `DISABLE_FEEDBACK_COMMAND` sur `1`.137Lorsque vous exécutez la commande `/feedback`, une copie de votre historique de conversation incluant le code est envoyée à Anthropic. Les commandes `/bug` et `/share` sont soumises par le même chemin. Avant de soumettre un rapport à partir de la boîte de dialogue de rétroaction, vous choisissez la quantité d'historique à inclure : la session actuelle uniquement, ce qui est la valeur par défaut, ou également d'autres sessions du même projet au cours des 24 dernières heures ou 7 jours. Claude Code soumet [les rétroactions rédigées par Claude](/docs/fr/tools-reference#sendfeedback-tool-behavior) par le même chemin, incluant la transcription lorsque vous avez choisi de l'inclure sur l'écran d'examen du brouillon. Les données sont chiffrées en transit via TLS et stockées dans Google Cloud Storage, qui chiffre les données stockées au repos par défaut. Optionnellement, un problème GitHub est créé dans le référentiel public. Pour refuser, définissez la variable d'environnement `DISABLE_FEEDBACK_COMMAND` sur `1`.

138 138 

139Lorsque vous utilisez un fournisseur tiers tel qu'Amazon Bedrock ou Google Cloud's Agent Platform, ou que vous n'avez pas d'identifiants Anthropic configurés, `/feedback` écrit le rapport dans une archive locale sous `~/.claude/feedback-bundles/` au lieu de l'envoyer à Anthropic. Les modèles de clé API et de jeton connus sont masqués avant que l'archive ne soit écrite. Rien ne quitte votre machine jusqu'à ce que vous envoyiez ce fichier à votre représentant du compte Anthropic ou que vous le joigniez à une demande d'assistance.139Lorsque vous utilisez un fournisseur tiers tel qu'Amazon Bedrock ou la plateforme Agent de Google Cloud, ou que vous n'avez pas d'identifiants Anthropic configurés, `/feedback` écrit le rapport dans une archive locale sous `~/.claude/feedback-bundles/` au lieu de l'envoyer à Anthropic. Les modèles de clé API et de jeton connus sont supprimés avant que l'archive ne soit écrite. Rien ne quitte votre machine jusqu'à ce que vous envoyiez ce fichier à votre représentant de compte Anthropic ou que vous le joigniez à une demande d'assistance.

140 140 

141<h2 id="default-behaviors-by-api-provider">141<h2 id="default-behaviors-by-api-provider">

142 Comportements par défaut par fournisseur d'API142 Comportements par défaut par fournisseur d'API

Details

110| Le hook ne se déclenche jamais | `matcher` utilise `,` comme séparateur sur une version antérieure à v2.1.191 | Claude Code v2.1.191 ou version ultérieure traite `,` comme un séparateur de liste comme `\|`. Les versions antérieures évaluent une virgule comme un caractère littéral, donc `"Edit,Write"` ne correspond à rien. Utilisez `\|` à la place, ou mettez à jour Claude Code. |110| Le hook ne se déclenche jamais | `matcher` utilise `,` comme séparateur sur une version antérieure à v2.1.191 | Claude Code v2.1.191 ou version ultérieure traite `,` comme un séparateur de liste comme `\|`. Les versions antérieures évaluent une virgule comme un caractère littéral, donc `"Edit,Write"` ne correspond à rien. Utilisez `\|` à la place, ou mettez à jour Claude Code. |

111| Le hook ne se déclenche jamais | La valeur `matcher` est en minuscules, par exemple `"bash"` | La correspondance est sensible à la casse. Les noms d'outils sont en majuscules : `Bash`, `Edit`, `Write`, `Read`. |111| Le hook ne se déclenche jamais | La valeur `matcher` est en minuscules, par exemple `"bash"` | La correspondance est sensible à la casse. Les noms d'outils sont en majuscules : `Bash`, `Edit`, `Write`, `Read`. |

112| Le hook ne se déclenche jamais | Les hooks sont définis dans un fichier autonome au lieu de `settings.json` | Il n'y a pas de fichier hooks autonome pour la configuration du projet ou de l'utilisateur. Définissez les hooks sous la clé `"hooks"` dans `settings.json`. Seuls les [plugins](/docs/fr/plugins/components#hooks) chargent un fichier `hooks/hooks.json` séparé. Consultez [hook configuration](/docs/fr/hooks). |112| Le hook ne se déclenche jamais | Les hooks sont définis dans un fichier autonome au lieu de `settings.json` | Il n'y a pas de fichier hooks autonome pour la configuration du projet ou de l'utilisateur. Définissez les hooks sous la clé `"hooks"` dans `settings.json`. Seuls les [plugins](/docs/fr/plugins/components#hooks) chargent un fichier `hooks/hooks.json` séparé. Consultez [hook configuration](/docs/fr/hooks). |

113| Les permissions, hooks ou env définis globalement sont ignorés | La configuration a été ajoutée à `~/.claude.json` | `~/.claude.json` contient l'état de l'application et les bascules d'interface utilisateur. `permissions`, `hooks` et `env` appartiennent à `~/.claude/settings.json`. Ce sont deux fichiers différents. |113| Les permissions ou hooks définis globalement sont ignorés | La configuration a été ajoutée à `~/.claude.json` | `~/.claude.json` contient l'état de l'application et les bascules d'interface utilisateur. `permissions`, `hooks` et `env` appartiennent à `~/.claude/settings.json`. Ce sont deux fichiers différents. |

114| Une valeur `settings.json` semble ignorée | La même clé est définie dans `settings.local.json` | `settings.local.json` remplace `settings.json`, et les deux remplacent `~/.claude/settings.json`. Consultez [settings precedence](/docs/fr/settings#settings-precedence). |114| Une valeur `settings.json` semble ignorée | La même clé est définie dans `settings.local.json` | `settings.local.json` remplace `settings.json`, et les deux remplacent `~/.claude/settings.json`. Consultez [settings precedence](/docs/fr/settings#settings-precedence). |

115| Le skill n'apparaît pas dans `/skills` | Le fichier skill est à `.claude/skills/name.md` au lieu d'être dans un dossier | Utilisez un dossier avec `SKILL.md` à l'intérieur : `.claude/skills/name/SKILL.md`. |115| Le skill n'apparaît pas dans `/skills` | Le fichier skill est à `.claude/skills/name.md` au lieu d'être dans un dossier | Utilisez un dossier avec `SKILL.md` à l'intérieur : `.claude/skills/name/SKILL.md`. |

116| Le skill apparaît dans `/skills` mais Claude ne l'invoque jamais | Le skill a `disable-model-invocation: true` dans son frontmatter, ou sa description ne correspond pas à la façon dont vous formulez la demande | Vérifiez le badge dans `/skills` : un label « user-only » signifie que Claude ne le déclenchera pas de lui-même. Consultez [skill invocation](/docs/fr/skills). |116| Le skill apparaît dans `/skills` mais Claude ne l'invoque jamais | Le skill a `disable-model-invocation: true` dans son frontmatter, ou sa description ne correspond pas à la façon dont vous formulez la demande | Vérifiez le badge dans `/skills` : un label « user-only » signifie que Claude ne le déclenchera pas de lui-même. Consultez [skill invocation](/docs/fr/skills). |

desktop.md +2 −2

Details

735 735 

736Pour définir les variables d'environnement pour les sessions locales et les serveurs de développement sur n'importe quelle plateforme, ouvrez la liste déroulante d'environnement dans la zone de prompt, survolez **Local** et cliquez sur l'icône d'engrenage pour ouvrir l'éditeur d'environnement local. Les variables que vous enregistrez ici sont stockées chiffrées sur votre machine et s'appliquent à chaque session locale et serveur d'aperçu que vous démarrez. Vous pouvez également ajouter des variables à la clé `env` dans votre fichier `~/.claude/settings.json`, bien que celles-ci n'atteignent que les sessions Claude et non les serveurs de développement. Voir [variables d'environnement](/docs/fr/env-vars) pour la liste complète des variables supportées.736Pour définir les variables d'environnement pour les sessions locales et les serveurs de développement sur n'importe quelle plateforme, ouvrez la liste déroulante d'environnement dans la zone de prompt, survolez **Local** et cliquez sur l'icône d'engrenage pour ouvrir l'éditeur d'environnement local. Les variables que vous enregistrez ici sont stockées chiffrées sur votre machine et s'appliquent à chaque session locale et serveur d'aperçu que vous démarrez. Vous pouvez également ajouter des variables à la clé `env` dans votre fichier `~/.claude/settings.json`, bien que celles-ci n'atteignent que les sessions Claude et non les serveurs de développement. Voir [variables d'environnement](/docs/fr/env-vars) pour la liste complète des variables supportées.

737 737 

738[La réflexion étendue](/docs/fr/model-config#extended-thinking) est activée par défaut, ce qui améliore les performances sur les tâches de raisonnement complexe mais utilise des tokens supplémentaires. Sur l'API Anthropic, définissez `MAX_THINKING_TOKENS` à `0` dans l'éditeur d'environnement local pour désactiver la réflexion ; cela n'a aucun effet sur Opus 5.5 ou les modèles Fable, qui utilisent toujours la réflexion étendue. Avec la réflexion désactivée sur l'API Anthropic, Claude Code envoie l'effort `high` au lieu d'un niveau supérieur aux modèles qu'il sait [ne pas accepter cette combinaison](/docs/fr/errors#effort-isnt-available-with-thinking-turned-off), comme Opus 5.738[La réflexion étendue](/docs/fr/model-config#extended-thinking) est activée par défaut, ce qui améliore les performances sur les tâches de raisonnement complexe mais utilise des tokens supplémentaires. Sur l'API Anthropic, définissez `MAX_THINKING_TOKENS` à `0` dans l'éditeur d'environnement local pour désactiver la réflexion ; cela n'a aucun effet sur Opus 5.5, Sonnet 5.5 ou les modèles Fable, qui utilisent toujours la réflexion étendue. Avec la réflexion désactivée sur l'API Anthropic, Claude Code envoie l'effort `high` au lieu d'un niveau supérieur aux modèles qu'il sait [ne pas accepter cette combinaison](/docs/fr/errors#effort-isnt-available-with-thinking-turned-off), comme Opus 5.

739 739 

740Sur les modèles avec [raisonnement adaptatif](/docs/fr/model-config#adjust-effort-level), les valeurs `MAX_THINKING_TOKENS` autres que `0` sont ignorées car le raisonnement adaptatif contrôle la profondeur de la réflexion à la place. Sur Opus 4.6 et Sonnet 4.6, définissez `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` à `1` pour utiliser un budget de réflexion fixe ; les modèles Fable, Sonnet 5, et Opus 4.7 et versions ultérieures utilisent toujours le raisonnement adaptatif et n'ont pas de mode de budget fixe.740Sur les modèles avec [raisonnement adaptatif](/docs/fr/model-config#adjust-effort-level), les valeurs `MAX_THINKING_TOKENS` autres que `0` sont ignorées car le raisonnement adaptatif contrôle la profondeur de la réflexion à la place. Sur Opus 4.6 et Sonnet 4.6, définissez `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` à `1` pour utiliser un budget de réflexion fixe ; les modèles Fable, Sonnet 5 et versions ultérieures, et Opus 4.7 et versions ultérieures utilisent toujours le raisonnement adaptatif et n'ont pas de mode de budget fixe.

741 741 

742<h4 id="local-sessions-on-managed-devices">742<h4 id="local-sessions-on-managed-devices">

743 Sessions locales sur les appareils gérés743 Sessions locales sur les appareils gérés

Details

4 4 

5# Démarrer avec l'application de bureau5# Démarrer avec l'application de bureau

6 6 

7> Installez Claude Code sur le bureau et commencez votre première session de codage7> Installez l'application de bureau Claude, ouvrez l'onglet Code et commencez votre première session Claude Code sur un dossier de projet sur votre ordinateur.

8 8 

9L'application de bureau vous donne accès à Claude Code avec une interface graphique conçue pour exécuter plusieurs sessions côte à côte : une barre latérale pour gérer les travaux parallèles, une disposition glisser-déposer avec un terminal intégré et un éditeur de fichiers, un examen des différences visuelles, un aperçu en direct de l'application, la surveillance des PR GitHub avec fusion automatique, et les tâches planifiées. Aucun terminal requis.9L'application de bureau vous donne accès à Claude Code avec une interface graphique, afin que vous puissiez demander à Claude de travailler sur le code dans un dossier sur votre ordinateur et examiner ses modifications sans utiliser un terminal. Cette page vous guide dans l'installation de l'application et le démarrage de votre première session dans l'onglet **Code**. Claude Code nécessite un [abonnement Pro, Max, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=desktop_quickstart_pricing).

10 10 

11<CardGroup cols={3}>11<CardGroup cols={3}>

12 <Card title="Télécharger pour macOS" icon="apple" href="https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code&utm_medium=docs">12 <Card title="Télécharger pour macOS" icon="apple" href="https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code&utm_medium=docs">


25Pour Windows ARM64, téléchargez l'[installateur ARM64](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs). Sur Linux, installez avec apt ; voir [Claude Desktop sur Linux](/docs/fr/desktop-linux).25Pour Windows ARM64, téléchargez l'[installateur ARM64](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs). Sur Linux, installez avec apt ; voir [Claude Desktop sur Linux](/docs/fr/desktop-linux).

26 26 

27<Note>27<Note>

28 Claude Code nécessite un [abonnement Pro, Max, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=desktop_quickstart_pricing).28 Ces cas sont couverts sur d'autres pages :

29</Note>

30 29 

31Cette page vous guide dans l'installation de l'application et le démarrage de votre première session. Si vous êtes déjà configuré, consultez [Utiliser Claude Code Desktop](/docs/fr/desktop) pour la référence complète.30 * **Déjà configuré** : consultez [Utiliser Claude Code Desktop](/docs/fr/desktop) pour tout ce que l'onglet Code peut faire

31 * **Vous voulez `claude` dans votre terminal** : [installez le CLI](/docs/fr/quickstart) séparément

32</Note>

32 33 

33L'application de bureau a trois onglets :34L'application de bureau a trois onglets :

34 35 

35* **Chat** : Conversation générale sans accès aux fichiers, similaire à claude.ai.36* **Chat** : Conversation générale sans accès aux fichiers, similaire à claude.ai.

36* **Cowork** : Un agent autonome en arrière-plan qui travaille sur des tâches dans une machine virtuelle en sandbox avec son propre environnement, fonctionnant indépendamment pendant que vous faites autre chose. Les sessions Cowork sur l'appareil exécutent la VM sur votre ordinateur ; les sessions Cowork distantes s'exécutent sur une VM gérée par Anthropic à la place.37* **Cowork** : Un agent autonome en arrière-plan qui travaille sur des tâches indépendamment pendant que vous faites autre chose.

37* **Code** : Un assistant de codage interactif avec accès direct à vos fichiers locaux. Selon le mode de permission, vous approuvez chaque modification au fur et à mesure que Claude la propose ou vous examinez les modifications après que Claude les ait apportées.38* **Code** : Un assistant de codage interactif avec accès direct à vos fichiers locaux. Selon le mode de permission, vous approuvez chaque modification au fur et à mesure que Claude la propose ou vous examinez les modifications après que Claude les ait apportées.

38 39 

39Chat et Cowork sont couverts dans le [Centre d'aide Claude](https://support.claude.com/) ; l'installation et le déploiement de l'application de bureau sont couverts dans les [articles d'assistance Claude Desktop](https://support.claude.com/en/collections/16163169-claude-desktop). Cette page se concentre sur l'onglet **Code**.40Chat et Cowork sont couverts dans le [Centre d'aide Claude](https://support.claude.com/) ; l'installation et le déploiement de l'application de bureau sont couverts dans les [articles d'assistance Claude Desktop](https://support.claude.com/en/collections/16163169-claude-desktop). Cette page se concentre sur l'onglet **Code**.


52 </Step>53 </Step>

53</Steps>54</Steps>

54 55 

55L'application de bureau inclut Claude Code. Vous n'avez pas besoin d'installer Node.js ou la CLI séparément. Pour utiliser `claude` depuis le terminal, installez la CLI séparément. Consultez [Démarrer avec la CLI](/docs/fr/quickstart).56L'application de bureau inclut Claude Code, vous n'avez donc pas besoin d'installer Node.js ou la CLI pour utiliser l'onglet Code.

56 57 

57<h2 id="start-your-first-session">58<h2 id="start-your-first-session">

58 Démarrez votre première session59 Démarrez votre première session

Details

61 61 

62* **Manual** : pas de planification, s'exécute uniquement lorsque vous cliquez sur **Run now**. Utile pour enregistrer un prompt que vous déclenchez à la demande62* **Manual** : pas de planification, s'exécute uniquement lorsque vous cliquez sur **Run now**. Utile pour enregistrer un prompt que vous déclenchez à la demande

63* **Hourly** : s'exécute toutes les heures63* **Hourly** : s'exécute toutes les heures

64* **Daily** : affiche un sélecteur d'heure, par défaut 9h00 heure locale64* **Daily** : s'exécute chaque jour à l'heure locale que vous choisissez

65* **Weekdays** : identique à Daily mais ignore samedi et dimanche65* **Weekdays** : identique à Daily mais ignore samedi et dimanche

66* **Weekly** : affiche un sélecteur d'heure et un sélecteur de jour66* **Weekly** : affiche un sélecteur d'heure et un sélecteur de jour

67 67 

env-vars.md +185 −181

Details

114 114 

115Dans un fichier de paramètres, vous pouvez définir une variable mais vous ne pouvez pas en supprimer une. Pour remplacer une variable que vous ne pouvez pas désactiver, comme une `CLAUDE_CODE_USE_VERTEX` obsolète exportée par un profil de shell que vous ne contrôlez pas, définissez-la sur une chaîne vide dans le bloc `env` : `"CLAUDE_CODE_USE_VERTEX": ""`. Claude Code traite la valeur vide comme non définie pour la sélection du fournisseur. Les sous-processus héritent toujours de la valeur vide.115Dans un fichier de paramètres, vous pouvez définir une variable mais vous ne pouvez pas en supprimer une. Pour remplacer une variable que vous ne pouvez pas désactiver, comme une `CLAUDE_CODE_USE_VERTEX` obsolète exportée par un profil de shell que vous ne contrôlez pas, définissez-la sur une chaîne vide dans le bloc `env` : `"CLAUDE_CODE_USE_VERTEX": ""`. Claude Code traite la valeur vide comme non définie pour la sélection du fournisseur. Les sous-processus héritent toujours de la valeur vide.

116 116 

117Entre les fichiers de paramètres, les valeurs `env` suivent la [précédence des paramètres](/docs/fr/settings#settings-precedence), de sorte qu'une entrée de paramètres gérée remplace la même variable dans les paramètres utilisateur ou projet.117Entre les fichiers de paramètres, les valeurs `env` suivent la [précédence des paramètres](/docs/fr/settings#settings-precedence), de sorte qu'une entrée de paramètres gérée remplace la même variable dans les paramètres utilisateur ou projet. Les paramètres de projet et locaux ne peuvent pas définir certaines variables, comme `CLAUDE_CONFIG_DIR` et les variables d'exportateur OpenTelemetry. [Les variables que Claude Code ignore dans `env`](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) les énumère, ainsi que les valeurs d'arrêt OpenTelemetry qui s'appliquent toujours.

118 118 

119La façon dont une variable d'environnement interagit avec les drapeaux CLI et les commandes en session varie selon la fonctionnalité : `--model` et `/model` remplacent `ANTHROPIC_MODEL`, tandis que `CLAUDE_CODE_EFFORT_LEVEL` remplace `--effort` et `/effort`. Lorsqu'une variable interagit avec une autre source de configuration, sa ligne dans la liste [Variables](#variables) indique la précédence ou établit un lien vers la page qui la documente.119La façon dont une variable d'environnement interagit avec les drapeaux CLI et les commandes en session varie selon la fonctionnalité : `--model` et `/model` remplacent `ANTHROPIC_MODEL`, tandis que `CLAUDE_CODE_EFFORT_LEVEL` remplace `--effort` et `/effort`. Lorsqu'une variable interagit avec une autre source de configuration, sa ligne dans la liste [Variables](#variables) indique la précédence ou établit un lien vers la page qui la documente.

120 120 


127Les variables numériques telles que les délais d'expiration, les budgets de jetons et les nombres de tentatives acceptent la notation scientifique et les orthographes avec séparateurs de chiffres en plus des chiffres simples, sauf si la ligne d'une variable indique qu'elle n'accepte que des chiffres simples. Par exemple, Claude Code lit `2e3` comme 2000 et `64_000` comme 64000. Avant la v2.1.211, ces orthographes pouvaient définir silencieusement une valeur beaucoup plus petite, comme `1e6` définissant un délai d'expiration à 1.127Les variables numériques telles que les délais d'expiration, les budgets de jetons et les nombres de tentatives acceptent la notation scientifique et les orthographes avec séparateurs de chiffres en plus des chiffres simples, sauf si la ligne d'une variable indique qu'elle n'accepte que des chiffres simples. Par exemple, Claude Code lit `2e3` comme 2000 et `64_000` comme 64000. Avant la v2.1.211, ces orthographes pouvaient définir silencieusement une valeur beaucoup plus petite, comme `1e6` définissant un délai d'expiration à 1.

128 128 

129<Note>129<Note>

130 Pour les variables qui activent ou désactivent un comportement, définissez `1` ou `true` pour l'activer et `0` ou `false` pour le désactiver, dans n'importe quelle casse.130 Pour les variables qui activent ou désactivent un comportement, définissez `1` ou `true` pour l'activer et `0` ou `false` pour le désactiver, en n'importe quelle casse.

131 131 

132 Certaines variables ne lisent que si vous les avez définies, donc toute valeur non vide, y compris `0`, active le comportement, et vous désactivez le comportement en désactivant la variable ou en la définissant sur une valeur vide. Ces variables fonctionnent de cette façon :132 Certaines variables ne lisent que si vous les avez définies, donc toute valeur non vide, y compris `0`, active le comportement, et vous désactivez le comportement en supprimant la variable ou en la définissant sur une valeur vide. Ces variables fonctionnent de cette façon :

133 133 

134 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`134 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`

135 * `DISABLE_TELEMETRY`135 * `DISABLE_TELEMETRY`


145| :- | :- |145| :- | :- |

146| `ANTHROPIC_API_KEY` | Clé API envoyée en tant qu'en-tête `X-Api-Key`. Lorsqu'elle est définie, cette clé est utilisée à la place de votre abonnement Claude Pro, Max, Team ou Enterprise, même si vous êtes connecté. En mode non interactif (`-p`), la clé est toujours utilisée lorsqu'elle est présente. En mode interactif, vous êtes invité à approuver la clé une fois avant qu'elle ne remplace votre abonnement. Pour utiliser votre abonnement à la place, exécutez `unset ANTHROPIC_API_KEY` |146| `ANTHROPIC_API_KEY` | Clé API envoyée en tant qu'en-tête `X-Api-Key`. Lorsqu'elle est définie, cette clé est utilisée à la place de votre abonnement Claude Pro, Max, Team ou Enterprise, même si vous êtes connecté. En mode non interactif (`-p`), la clé est toujours utilisée lorsqu'elle est présente. En mode interactif, vous êtes invité à approuver la clé une fois avant qu'elle ne remplace votre abonnement. Pour utiliser votre abonnement à la place, exécutez `unset ANTHROPIC_API_KEY` |

147| `ANTHROPIC_AUTH_TOKEN` | Valeur personnalisée pour l'en-tête `Authorization` (la valeur que vous définissez ici sera préfixée par `Bearer `) |147| `ANTHROPIC_AUTH_TOKEN` | Valeur personnalisée pour l'en-tête `Authorization` (la valeur que vous définissez ici sera préfixée par `Bearer `) |

148| `ANTHROPIC_AWS_API_KEY` | Clé API de l'espace de travail pour [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), générée dans la console AWS. Envoyée en tant que `x-api-key` et prend la priorité sur AWS SigV4 |148| `ANTHROPIC_AWS_API_KEY` | Clé API de l'espace de travail pour [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), générée dans la console AWS. Envoyée en tant que `x-api-key` et a la priorité sur AWS SigV4 |

149| `ANTHROPIC_AWS_BASE_URL` | Remplacez l'URL du point de terminaison [Claude Platform on AWS](/docs/fr/claude-platform-on-aws). Utilisez pour les régions personnalisées ou lors du routage via une [passerelle LLM](/docs/fr/llm-gateway). Par défaut `https://aws-external-anthropic.{region}.api.aws`. Claude Code résout la région avec [la même priorité que sur Amazon Bedrock](/docs/fr/amazon-bedrock#3-configure-claude-code) |149| `ANTHROPIC_AWS_BASE_URL` | Remplacez l'URL du point de terminaison [Claude Platform on AWS](/docs/fr/claude-platform-on-aws). Utilisez pour les régions personnalisées ou lors du routage via une [passerelle LLM](/docs/fr/llm-gateway). Par défaut `https://aws-external-anthropic.{region}.api.aws`. Claude Code résout la région avec [la même priorité que sur Amazon Bedrock](/docs/fr/amazon-bedrock#3-configure-claude-code) |

150| `ANTHROPIC_AWS_WORKSPACE_ID` | Requis pour [Claude Platform on AWS](/docs/fr/claude-platform-on-aws). Envoyé à chaque requête en tant qu'en-tête `anthropic-workspace-id` |150| `ANTHROPIC_AWS_WORKSPACE_ID` | Requis pour [Claude Platform on AWS](/docs/fr/claude-platform-on-aws). Envoyé à chaque requête en tant qu'en-tête `anthropic-workspace-id` |

151| `ANTHROPIC_BASE_URL` | Remplacez le point de terminaison API pour router les requêtes via un proxy ou une passerelle. Lorsqu'il est défini sur un hôte non-first-party, [la recherche d'outils MCP](/docs/fr/mcp#scale-with-mcp-tool-search) est désactivée par défaut. Définissez `ENABLE_TOOL_SEARCH=true` si votre proxy transfère les blocs `tool_reference`. À partir de la v2.1.196, [Remote Control](/docs/fr/remote-control#requirements) est désactivé lorsque cela pointe vers un hôte autre que `api.anthropic.com`, correspondant à son comportement sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry |151| `ANTHROPIC_BASE_URL` | Remplacez le point de terminaison API pour router les requêtes via un proxy ou une passerelle. Lorsqu'il est défini sur un hôte non-propriétaire, [la recherche d'outils MCP](/docs/fr/mcp#scale-with-mcp-tool-search) est désactivée par défaut. Définissez `ENABLE_TOOL_SEARCH=true` si votre proxy transfère les blocs `tool_reference`. À partir de la v2.1.196, [Remote Control](/docs/fr/remote-control#requirements) est désactivé lorsque cela pointe vers un hôte autre que `api.anthropic.com`, correspondant à son comportement sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry |

152| `ANTHROPIC_BEDROCK_BASE_URL` | Remplacez l'URL du point de terminaison Amazon Bedrock. Utilisez pour les points de terminaison Amazon Bedrock personnalisés ou lors du routage via une [passerelle LLM](/docs/fr/llm-gateway). Voir [Amazon Bedrock](/docs/fr/amazon-bedrock) |152| `ANTHROPIC_BEDROCK_BASE_URL` | Remplacez l'URL du point de terminaison Amazon Bedrock. Utilisez pour les points de terminaison Amazon Bedrock personnalisés ou lors du routage via une [passerelle LLM](/docs/fr/llm-gateway). Voir [Amazon Bedrock](/docs/fr/amazon-bedrock) |

153| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Remplacez l'URL du point de terminaison Amazon Bedrock Mantle. Voir [Point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint) |153| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Remplacez l'URL du point de terminaison Amazon Bedrock Mantle. Voir [Point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint) |

154| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Préfixe du profil d'inférence inter-régions (`us`, `eu`, `apac`, `jp`, `au` ou `global`) que Claude Code essaie d'abord à la place de celui dérivé de la région AWS. Ignoré dans les régions AWS GovCloud. Nécessite Claude Code v2.1.224 ou ultérieur. Voir [Amazon Bedrock](/docs/fr/amazon-bedrock#cross-region-inference-profile-prefixes) |154| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Préfixe du profil d'inférence inter-régions (`us`, `eu`, `apac`, `jp`, `au` ou `global`) que Claude Code essaie d'abord à la place de celui dérivé de la région AWS. Ignoré dans les régions AWS GovCloud. Nécessite Claude Code v2.1.224 ou ultérieur. Voir [Amazon Bedrock](/docs/fr/amazon-bedrock#cross-region-inference-profile-prefixes) |

155| `ANTHROPIC_BEDROCK_SERVICE_TIER` | [Niveau de service](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) Amazon Bedrock (`default`, `flex` ou `priority`). Envoyé en tant qu'en-tête `X-Amzn-Bedrock-Service-Tier`. Voir [Amazon Bedrock](/docs/fr/amazon-bedrock#service-tiers) |155| `ANTHROPIC_BEDROCK_SERVICE_TIER` | [Niveau de service](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) Amazon Bedrock (`default`, `flex` ou `priority`). Envoyé en tant qu'en-tête `X-Amzn-Bedrock-Service-Tier`. Voir [Amazon Bedrock](/docs/fr/amazon-bedrock#service-tiers) |

156| `ANTHROPIC_BETAS` | Liste séparée par des virgules de valeurs d'en-tête `anthropic-beta` supplémentaires à inclure dans les requêtes API. Claude Code envoie déjà les en-têtes bêta dont il a besoin ; utilisez ceci pour vous inscrire à une [bêta API Anthropic](https://platform.claude.com/docs/en/api/beta-headers) avant que Claude Code n'ajoute le support natif. Contrairement au [drapeau `--betas`](/docs/fr/cli-reference#cli-flags), qui nécessite une authentification par clé API, cette variable fonctionne avec toutes les méthodes d'authentification, y compris l'abonnement claude.ai |156| `ANTHROPIC_BETAS` | Liste séparée par des virgules de valeurs d'en-tête `anthropic-beta` supplémentaires à inclure dans les requêtes API. Claude Code envoie déjà les en-têtes bêta dont il a besoin ; utilisez ceci pour vous inscrire à une [bêta API Anthropic](https://platform.claude.com/docs/en/api/beta-headers) avant que Claude Code n'ajoute le support natif. Contrairement au [drapeau `--betas`](/docs/fr/cli-reference#cli-flags), qui nécessite l'authentification par clé API, cette variable fonctionne avec toutes les méthodes d'authentification, y compris l'abonnement Claude.ai |

157| `ANTHROPIC_CUSTOM_HEADERS` | En-têtes personnalisés à ajouter aux requêtes (format `Name: Value`, séparés par des sauts de ligne pour plusieurs en-têtes). Si un nom ou une valeur contient un caractère qu'un en-tête HTTP ne peut pas transporter, comme un guillemet courbe ou un espace de largeur zéro, la requête échoue avec une erreur qui identifie la paire par position. Nécessite Claude Code v2.1.227 ou ultérieur. [Valeur d'en-tête de requête invalide](/docs/fr/errors#invalid-request-header-value) énumère l'ensemble exact des caractères et où la vérification s'exécute. Une valeur qui définit un en-tête d'authentification, d'organisation ou de locataire, de routage ou de comportement API, comme `Authorization` ou `Host`, compte comme un [paramètre nécessitant une approbation](/docs/fr/server-managed-settings#environment-variables-and-the-approval-dialog) lorsque les paramètres gérés par le serveur le livrent. À partir des paramètres de projet ou locaux, une telle valeur suit les [règles pour quand les valeurs `env` s'appliquent](/docs/fr/settings-reference#when-claude-code-applies-env-values) |157| `ANTHROPIC_CUSTOM_HEADERS` | En-têtes personnalisés à ajouter aux requêtes (format `Name: Value`, séparés par des sauts de ligne pour plusieurs en-têtes). Si un nom ou une valeur contient un caractère qu'un en-tête HTTP ne peut pas transporter, comme un guillemet courbe ou un espace de largeur zéro, la requête échoue avec une erreur qui identifie la paire par position. Nécessite Claude Code v2.1.227 ou ultérieur. [Valeur d'en-tête de requête invalide](/docs/fr/errors#invalid-request-header-value) énumère l'ensemble exact des caractères et où la vérification s'exécute. Une valeur qui définit un en-tête d'authentification, d'organisation, de locataire, de routage ou de comportement API, comme `Authorization` ou `Host`, compte comme un [paramètre qui nécessite une approbation](/docs/fr/server-managed-settings#environment-variables-and-the-approval-dialog) lorsque les paramètres gérés par le serveur le livrent. À partir des paramètres de projet ou locaux, une telle valeur suit les [règles pour quand les valeurs `env` s'appliquent](/docs/fr/settings-reference#when-claude-code-applies-env-values) |

158| `ANTHROPIC_CUSTOM_MODEL_OPTION` | ID de modèle à ajouter en tant qu'entrée personnalisée dans le sélecteur `/model`. Utilisez ceci pour rendre un modèle non standard ou spécifique à la passerelle sélectionnable sans remplacer les alias intégrés. Voir [Configuration du modèle](/docs/fr/model-config#add-a-custom-model-option) |158| `ANTHROPIC_CUSTOM_MODEL_OPTION` | ID de modèle à ajouter en tant qu'entrée personnalisée dans le sélecteur `/model`. Utilisez ceci pour rendre un modèle non standard ou spécifique à la passerelle sélectionnable sans remplacer les alias intégrés. Voir [Configuration du modèle](/docs/fr/model-config#add-a-custom-model-option) |

159| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | Description d'affichage pour l'entrée de modèle personnalisée dans le sélecteur `/model`. Par défaut `Custom model (<model-id>)` lorsqu'il n'est pas défini |159| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | Description d'affichage pour l'entrée de modèle personnalisée dans le sélecteur `/model`. Par défaut `Custom model (<model-id>)` lorsqu'il n'est pas défini |

160| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Nom d'affichage pour l'entrée de modèle personnalisée dans le sélecteur `/model`. Lorsqu'il n'est pas défini, l'entrée affiche le nom du modèle si Claude Code [reconnaît l'ID](/docs/fr/model-config#customize-pinned-model-display-and-capabilities), et l'ID du modèle sinon |160| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Nom d'affichage pour l'entrée de modèle personnalisée dans le sélecteur `/model`. Lorsqu'il n'est pas défini, l'entrée affiche le nom du modèle si Claude Code [reconnaît l'ID](/docs/fr/model-config#customize-pinned-model-display-and-capabilities), et l'ID du modèle sinon |


168| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | Nom d'affichage pour le modèle Haiku épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche le nom du modèle si Claude Code reconnaît l'ID épinglé, et l'ID épinglé sinon. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |168| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | Nom d'affichage pour le modèle Haiku épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche le nom du modèle si Claude Code reconnaît l'ID épinglé, et l'ID épinglé sinon. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |

169| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | Liste séparée par des virgules des [capacités](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) que le modèle Haiku épinglé supporte, par exemple `effort,thinking`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |169| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | Liste séparée par des virgules des [capacités](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) que le modèle Haiku épinglé supporte, par exemple `effort,thinking`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |

170| `ANTHROPIC_DEFAULT_MODEL` | Modèle sur lequel les nouvelles sessions commencent par défaut. Nécessite Claude Code v2.1.236 ou ultérieur. Voir [Définir un modèle par défaut pour les nouvelles sessions](/docs/fr/model-config#set-a-default-model-for-new-sessions) |170| `ANTHROPIC_DEFAULT_MODEL` | Modèle sur lequel les nouvelles sessions commencent par défaut. Nécessite Claude Code v2.1.236 ou ultérieur. Voir [Définir un modèle par défaut pour les nouvelles sessions](/docs/fr/model-config#set-a-default-model-for-new-sessions) |

171| `ANTHROPIC_DEFAULT_OPUS_MODEL` | ID de modèle auquel l'alias `opus` se résout, et que `opusplan` utilise tandis que le mode Plan est actif. Voir [Configuration du modèle](/docs/fr/model-config#environment-variables) |171| `ANTHROPIC_DEFAULT_OPUS_MODEL` | ID de modèle auquel l'alias `opus` se résout, et que `opusplan` utilise tandis que Plan Mode est actif. Voir [Configuration du modèle](/docs/fr/model-config#environment-variables) |

172| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | Description d'affichage pour le modèle Opus épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche une description par défaut qui commence par `Custom Opus model`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |172| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | Description d'affichage pour le modèle Opus épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche une description par défaut qui commence par `Custom Opus model`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |

173| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | Nom d'affichage pour le modèle Opus épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche le nom du modèle si Claude Code reconnaît l'ID épinglé, et l'ID épinglé sinon. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |173| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | Nom d'affichage pour le modèle Opus épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche le nom du modèle si Claude Code reconnaît l'ID épinglé, et l'ID épinglé sinon. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |

174| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | Liste séparée par des virgules des [capacités](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) que le modèle Opus épinglé supporte, par exemple `effort,thinking`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |174| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | Liste séparée par des virgules des [capacités](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) que le modèle Opus épinglé supporte, par exemple `effort,thinking`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |

175| `ANTHROPIC_DEFAULT_SONNET_MODEL` | ID de modèle auquel l'alias `sonnet` se résout, et que `opusplan` utilise lorsque le mode Plan n'est pas actif. Voir [Configuration du modèle](/docs/fr/model-config#environment-variables) |175| `ANTHROPIC_DEFAULT_SONNET_MODEL` | ID de modèle auquel l'alias `sonnet` se résout, et que `opusplan` utilise lorsque Plan Mode n'est pas actif. Voir [Configuration du modèle](/docs/fr/model-config#environment-variables) |

176| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Description d'affichage pour le modèle Sonnet épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche une description par défaut qui commence par `Custom Sonnet model`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |176| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Description d'affichage pour le modèle Sonnet épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche une description par défaut qui commence par `Custom Sonnet model`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |

177| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Nom d'affichage pour le modèle Sonnet épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche le nom du modèle si Claude Code reconnaît l'ID épinglé, et l'ID épinglé sinon. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |177| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Nom d'affichage pour le modèle Sonnet épinglé dans le sélecteur `/model`. Lorsqu'il n'est pas défini, la ligne affiche le nom du modèle si Claude Code reconnaît l'ID épinglé, et l'ID épinglé sinon. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |

178| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Liste séparée par des virgules des [capacités](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) que le modèle Sonnet épinglé supporte, par exemple `effort,thinking`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |178| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Liste séparée par des virgules des [capacités](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) que le modèle Sonnet épinglé supporte, par exemple `effort,thinking`. Voir [Configuration du modèle](/docs/fr/model-config#customize-pinned-model-display-and-capabilities) |

179| `ANTHROPIC_FEDERATION_RULE_ID` | ID de règle de fédération pour [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Lorsque vous le définissez avec `ANTHROPIC_ORGANIZATION_ID`, Claude Code sélectionne les identifiants de fédération, qui sont classés au-dessus de votre identifiant `/login`. Voir [priorité d'authentification](/docs/fr/authentication#authentication-precedence) |179| `ANTHROPIC_FEDERATION_RULE_ID` | ID de règle de fédération pour [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Lorsque vous le définissez avec `ANTHROPIC_ORGANIZATION_ID`, Claude Code sélectionne les identifiants de fédération, qui sont classés au-dessus de votre identifiant `/login`. Voir [priorité d'authentification](/docs/fr/authentication#authentication-precedence) |

180| `ANTHROPIC_FOUNDRY_API_KEY` | Clé API pour l'authentification Microsoft Foundry (voir [Microsoft Foundry](/docs/fr/microsoft-foundry)) |180| `ANTHROPIC_FOUNDRY_API_KEY` | Clé API pour l'authentification Microsoft Foundry (voir [Microsoft Foundry](/docs/fr/microsoft-foundry)) |

181| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Jeton porteur pour l'authentification Microsoft Foundry, comme un jeton d'accès Microsoft Entra. Claude Code l'envoie en tant qu'en-tête `Authorization: Bearer`. Prend la priorité sur `ANTHROPIC_FOUNDRY_API_KEY` et sur la chaîne d'authentification par défaut Azure. Voir [Microsoft Foundry](/docs/fr/microsoft-foundry). Nécessite Claude Code v2.1.203 ou ultérieur |181| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Jeton porteur pour l'authentification Microsoft Foundry, comme un jeton d'accès Microsoft Entra. Claude Code l'envoie en tant qu'en-tête `Authorization: Bearer`. A la priorité sur `ANTHROPIC_FOUNDRY_API_KEY` et sur la chaîne d'authentification par défaut Azure. Voir [Microsoft Foundry](/docs/fr/microsoft-foundry). Nécessite Claude Code v2.1.203 ou ultérieur |

182| `ANTHROPIC_FOUNDRY_BASE_URL` | URL de base complète pour la ressource Microsoft Foundry (par exemple, `https://my-resource.services.ai.azure.com/anthropic`). Alternative à `ANTHROPIC_FOUNDRY_RESOURCE` (voir [Microsoft Foundry](/docs/fr/microsoft-foundry)) |182| `ANTHROPIC_FOUNDRY_BASE_URL` | URL de base complète pour la ressource Microsoft Foundry (par exemple, `https://my-resource.services.ai.azure.com/anthropic`). Alternative à `ANTHROPIC_FOUNDRY_RESOURCE` (voir [Microsoft Foundry](/docs/fr/microsoft-foundry)) |

183| `ANTHROPIC_FOUNDRY_RESOURCE` | Nom de ressource Microsoft Foundry (par exemple, `my-resource`). Requis si `ANTHROPIC_FOUNDRY_BASE_URL` n'est pas défini (voir [Microsoft Foundry](/docs/fr/microsoft-foundry)) |183| `ANTHROPIC_FOUNDRY_RESOURCE` | Nom de ressource Microsoft Foundry (par exemple, `my-resource`). Requis si `ANTHROPIC_FOUNDRY_BASE_URL` n'est pas défini (voir [Microsoft Foundry](/docs/fr/microsoft-foundry)) |

184| `ANTHROPIC_MODEL` | Nom du paramètre de modèle à utiliser (voir [Configuration du modèle](/docs/fr/model-config#environment-variables)) |184| `ANTHROPIC_MODEL` | Nom du paramètre de modèle à utiliser (voir [Configuration du modèle](/docs/fr/model-config#environment-variables)) |


186| `ANTHROPIC_PROFILE` | Nom du profil Anthropic avec lequel s'authentifier, comme celui créé par [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) ou par [connexion à un compte Console sans clé API](/docs/fr/authentication#sign-in-without-an-api-key). Voir [priorité d'authentification](/docs/fr/authentication#authentication-precedence) |186| `ANTHROPIC_PROFILE` | Nom du profil Anthropic avec lequel s'authentifier, comme celui créé par [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) ou par [connexion à un compte Console sans clé API](/docs/fr/authentication#sign-in-without-an-api-key). Voir [priorité d'authentification](/docs/fr/authentication#authentication-precedence) |

187| `ANTHROPIC_SMALL_FAST_MODEL` | \[DÉPRÉCIÉ] Nom du [modèle de classe Haiku pour les tâches d'arrière-plan](/docs/fr/costs) |187| `ANTHROPIC_SMALL_FAST_MODEL` | \[DÉPRÉCIÉ] Nom du [modèle de classe Haiku pour les tâches d'arrière-plan](/docs/fr/costs) |

188| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Remplacez la région AWS pour le modèle de classe Haiku lors de l'utilisation d'Amazon Bedrock ou d'Amazon Bedrock Mantle. Sur Amazon Bedrock, cela ne prend effet que lorsque `ANTHROPIC_DEFAULT_HAIKU_MODEL` ou le `ANTHROPIC_SMALL_FAST_MODEL` déprécié est également défini, car Amazon Bedrock exécute autrement les tâches d'arrière-plan sur le [modèle Sonnet par défaut ou le modèle principal](/docs/fr/amazon-bedrock#4-pin-model-versions) dans la région de la session |188| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Remplacez la région AWS pour le modèle de classe Haiku lors de l'utilisation d'Amazon Bedrock ou d'Amazon Bedrock Mantle. Sur Amazon Bedrock, cela ne prend effet que lorsque `ANTHROPIC_DEFAULT_HAIKU_MODEL` ou le `ANTHROPIC_SMALL_FAST_MODEL` déprécié est également défini, car Amazon Bedrock exécute autrement les tâches d'arrière-plan sur le [modèle Sonnet par défaut ou le modèle principal](/docs/fr/amazon-bedrock#4-pin-model-versions) dans la région de la session |

189| `ANTHROPIC_VERTEX_BASE_URL` | Remplacez l'URL du point de terminaison de Google Cloud's Agent Platform. Utilisez pour les points de terminaison Google Cloud's Agent Platform personnalisés ou lors du routage via une [passerelle LLM](/docs/fr/llm-gateway). Voir [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai) |189| `ANTHROPIC_VERTEX_BASE_URL` | Remplacez l'URL du point de terminaison Google Cloud's Agent Platform. Utilisez pour les points de terminaison Google Cloud's Agent Platform personnalisés ou lors du routage via une [passerelle LLM](/docs/fr/llm-gateway). Voir [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai) |

190| `ANTHROPIC_VERTEX_PROJECT_ID` | ID de projet GCP auquel les requêtes de Google Cloud's Agent Platform sont adressées. Voir [Configurer les identifiants GCP](/docs/fr/google-vertex-ai#3-configure-gcp-credentials) |190| `ANTHROPIC_VERTEX_PROJECT_ID` | ID de projet GCP auquel les requêtes Google Cloud's Agent Platform sont adressées. Voir [Configurer les identifiants GCP](/docs/fr/google-vertex-ai#3-configure-gcp-credentials) |

191| `ANTHROPIC_WORKSPACE_ID` | ID d'espace de travail pour [la fédération d'identité de charge de travail](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Définissez ceci lorsque votre règle de fédération est limitée à plus d'un espace de travail afin que l'échange de jetons sache quel espace de travail cibler |191| `ANTHROPIC_WORKSPACE_ID` | ID d'espace de travail pour [la fédération d'identité de charge de travail](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Définissez ceci lorsque votre règle de fédération est limitée à plus d'un espace de travail afin que l'échange de jetons sache quel espace de travail cibler |

192| `API_FORCE_IDLE_TIMEOUT` | Remplacez le délai d'expiration d'inactivité du corps de 5 minutes qui interrompt une réponse de modèle en continu lorsqu'aucun octet n'arrive. Définissez sur `0` pour désactiver le délai d'expiration, par exemple lorsqu'une [passerelle](/docs/fr/llm-gateway) lente ou un modèle local fait une pause plus longue que 5 minutes entre les chunks, ou `1` pour le maintenir activé pour chaque fournisseur. Lorsqu'il n'est pas défini, le délai d'expiration est actif sur les fournisseurs autres que l'API Anthropic directe et [Claude Platform on AWS](/docs/fr/claude-platform-on-aws). Les [chiens de garde de flux](/docs/fr/network-config#streaming-idle-watchdogs) s'exécutent indépendamment et interrompent une longue pause silencieuse même lorsque vous définissez `0` ici |192| `API_FORCE_IDLE_TIMEOUT` | Remplacez le délai d'inactivité du corps de 5 minutes qui interrompt une réponse de modèle en continu lorsqu'aucun octet n'arrive. Définissez sur `0` pour désactiver le délai d'expiration, par exemple lorsqu'une [passerelle](/docs/fr/llm-gateway) lente ou un modèle local fait une pause plus longue que 5 minutes entre les chunks, ou `1` pour le maintenir activé pour chaque fournisseur. Lorsqu'il n'est pas défini, le délai d'expiration est actif sur les fournisseurs autres que l'API Anthropic directe et [Claude Platform on AWS](/docs/fr/claude-platform-on-aws). Les [chiens de garde de flux](/docs/fr/network-config#streaming-idle-watchdogs) s'exécutent indépendamment et interrompent une longue pause silencieuse même lorsque vous définissez `0` ici |

193| `API_TIMEOUT_MS` | Délai d'expiration pour les requêtes API en millisecondes (par défaut : 600000, ou 10 minutes ; maximum : 2147483647). Augmentez ceci lorsque les requêtes expirent sur les réseaux lents ou lors du routage via un proxy. Les valeurs au-dessus du maximum débordent du minuteur sous-jacent et causent l'échec immédiat des requêtes |193| `API_TIMEOUT_MS` | Délai d'expiration pour les requêtes API en millisecondes (par défaut : 600000, ou 10 minutes ; maximum : 2147483647). Augmentez ceci lorsque les requêtes expirent sur les réseaux lents ou lors du routage via un proxy. Les valeurs au-dessus du maximum débordent du minuteur sous-jacent et causent l'échec immédiat des requêtes |

194| `AWS_BEARER_TOKEN_BEDROCK` | Clé API Amazon Bedrock pour l'authentification (voir [Clés API Amazon Bedrock](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |194| `AWS_BEARER_TOKEN_BEDROCK` | Clé API Amazon Bedrock pour l'authentification (voir [Clés API Amazon Bedrock](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |

195| `BASH_DEFAULT_TIMEOUT_MS` | Délai d'expiration par défaut pour les commandes bash longues (par défaut : 120000, ou 2 minutes) |195| `BASH_DEFAULT_TIMEOUT_MS` | Délai d'expiration par défaut pour les commandes bash longues (par défaut : 120000, ou 2 minutes) |

196| `BASH_MAX_OUTPUT_LENGTH` | Nombre maximum de caractères de sortie bash que Claude Code relit dans le résultat d'une commande (par défaut : 30000 ; maximum : 150000). Si vous définissez le paramètre [`bashOutputMaxChars`](/docs/fr/settings-reference#bashoutputmaxchars), Claude Code ignore cette variable. Voir [Limites de sortie](/docs/fr/tools-reference#output-limits) |196| `BASH_MAX_OUTPUT_LENGTH` | Nombre maximum de caractères de sortie bash que Claude Code relit dans le résultat d'une commande (par défaut : 30000 ; maximum : 150000). Si vous définissez le paramètre [`bashOutputMaxChars`](/docs/fr/settings-reference#bashoutputmaxchars), Claude Code ignore cette variable. Voir [Limites de sortie](/docs/fr/tools-reference#output-limits) |

197| `BASH_MAX_TIMEOUT_MS` | Délai d'expiration maximum que le modèle peut définir pour les commandes bash longues (par défaut : 600000, ou 10 minutes). Le plafond effectif est le plus grand de ceci et de `BASH_DEFAULT_TIMEOUT_MS` |197| `BASH_MAX_TIMEOUT_MS` | Délai d'expiration maximum que le modèle peut définir pour les commandes bash longues (par défaut : 600000, ou 10 minutes). Le plafond effectif est le plus grand de ceci et de `BASH_DEFAULT_TIMEOUT_MS` |

198| `BETA_TRACING_ENDPOINT` | Point de terminaison OTLP pour [le traçage bêta détaillé](/docs/fr/monitoring-usage#traces-beta) : avec `ENABLE_BETA_TRACING_DETAILED=1`, les journaux et les traces vont là-bas au lieu des exportateurs configurés. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) |198| `BETA_TRACING_ENDPOINT` | Point de terminaison OTLP pour [le traçage bêta détaillé](/docs/fr/monitoring-usage#traces-beta) : avec `ENABLE_BETA_TRACING_DETAILED=1`, les journaux et les traces vont là au lieu des exportateurs configurés. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) |

199| `CCR_FORCE_BUNDLE` | Définissez sur `1` pour forcer [`claude --cloud`](/docs/fr/claude-code-on-the-web#send-local-repositories-without-github) à regrouper et télécharger votre référentiel local au lieu de le cloner à partir de son distant |199| `CCR_FORCE_BUNDLE` | Définissez sur `1` pour forcer [`claude --cloud`](/docs/fr/claude-code-on-the-web#send-local-repositories-without-github) à regrouper et télécharger votre référentiel local au lieu de le cloner à partir de son distant |

200| `CLAUDECODE` | Définissez sur `1` dans les sous-processus que Claude Code génère (outils Bash et PowerShell, sessions tmux, commandes [hook](/docs/fr/hooks), commandes [ligne d'état](/docs/fr/statusline), sous-processus du serveur [MCP](/docs/fr/mcp) stdio). Les extensions IDE définissent également ceci dans leurs terminaux intégrés. Utilisez pour détecter quand un script s'exécute à l'intérieur d'un sous-processus généré par Claude Code. Pour vérifier si le processus actuel a été généré directement par un appel d'outil ou un hook, plutôt qu'à l'intérieur d'un serveur MCP stdio que Claude Code a démarré, utilisez `CLAUDE_CODE_CHILD_SESSION` à la place |200| `CLAUDECODE` | Définissez sur `1` dans les sous-processus que Claude Code génère (outils Bash et PowerShell, sessions tmux, commandes [hook](/docs/fr/hooks), commandes [ligne d'état](/docs/fr/statusline), sous-processus [serveur MCP](/docs/fr/mcp) stdio). Les extensions IDE définissent également ceci dans leurs terminaux intégrés. Utilisez pour détecter quand un script s'exécute à l'intérieur d'un sous-processus généré par Claude Code. Pour vérifier si le processus actuel a été généré directement par un appel d'outil ou un hook, plutôt qu'à l'intérieur d'un serveur MCP stdio que Claude Code a démarré, utilisez `CLAUDE_CODE_CHILD_SESSION` à la place |

201| `CLAUDE_AFK_COUNTDOWN_MS` | Combien de millisecondes avant la continuation automatique le compte à rebours à l'écran apparaît sur un dialogue [`AskUserQuestion`](/docs/fr/tools-reference) sans réponse. Par défaut `20000` (20 secondes), limité au délai d'expiration de la continuation automatique. N'a aucun effet à moins que la continuation automatique soit activée ; voir le paramètre [`askUserQuestionTimeout`](/docs/fr/settings-reference#askuserquestiontimeout) et `CLAUDE_AFK_TIMEOUT_MS`. Nécessite Claude Code v2.1.198 ou ultérieur |201| `CLAUDE_AFK_COUNTDOWN_MS` | Combien de millisecondes avant la continuation automatique le compte à rebours à l'écran apparaît sur un dialogue [`AskUserQuestion`](/docs/fr/tools-reference) sans réponse. Par défaut `20000` (20 secondes), limité au délai d'expiration de la continuation automatique. N'a aucun effet sauf si la continuation automatique est activée ; voir le paramètre [`askUserQuestionTimeout`](/docs/fr/settings-reference#askuserquestiontimeout) et `CLAUDE_AFK_TIMEOUT_MS`. Nécessite Claude Code v2.1.198 ou ultérieur |

202| `CLAUDE_AFK_TIMEOUT_MS` | Combien de millisecondes de temps d'inactivité avant qu'un dialogue [`AskUserQuestion`](/docs/fr/tools-reference) sans réponse se poursuive automatiquement sans vous. La continuation automatique est désactivée par défaut ; activez-la avec le paramètre [`askUserQuestionTimeout`](/docs/fr/settings-reference#askuserquestiontimeout). Cette variable est un remplacement pour les démos et les tests automatisés : lorsqu'elle est définie, elle prend la priorité sur ce paramètre et active la continuation automatique même lorsque le paramètre n'est pas défini ou `never`. Définir `0` ne désactive pas le délai d'expiration ; cela ferme le dialogue immédiatement. Dans v2.1.198 et v2.1.199, la continuation automatique était activée par défaut avec un délai d'expiration de `60000` (60 secondes). Nécessite Claude Code v2.1.198 ou ultérieur |202| `CLAUDE_AFK_TIMEOUT_MS` | Combien de millisecondes de temps d'inactivité avant qu'un dialogue [`AskUserQuestion`](/docs/fr/tools-reference) sans réponse ne continue automatiquement sans vous. La continuation automatique est désactivée par défaut ; activez-la avec le paramètre [`askUserQuestionTimeout`](/docs/fr/settings-reference#askuserquestiontimeout). Cette variable est une substitution pour les démos et les tests automatisés : lorsqu'elle est définie, elle a la priorité sur ce paramètre et active la continuation automatique même lorsque le paramètre n'est pas défini ou est `never`. Définir `0` ne désactive pas le délai d'expiration ; cela ferme le dialogue immédiatement. Dans v2.1.198 et v2.1.199, la continuation automatique était activée par défaut avec un délai d'expiration de `60000` (60 secondes). Nécessite Claude Code v2.1.198 ou ultérieur |

203| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Définissez sur `1` pour désactiver tous les types de [sous-agent](/docs/fr/sub-agents) intégrés tels que Explore et Plan. S'applique uniquement en mode non interactif (le drapeau `-p`). Utile pour les utilisateurs du SDK qui veulent une ardoise vierge. Cela supprime également `general-purpose`, le sous-agent que Claude Code exécute lorsqu'un appel d'outil Agent omet `subagent_type`. Un tel appel échoue alors avec [`subagent_type is required`](/docs/fr/errors#subagent-type-is-required) |203| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Définissez sur `1` pour désactiver tous les types de [sous-agents](/docs/fr/sub-agents) intégrés tels que Explore et Plan. S'applique uniquement en mode non interactif (le drapeau `-p`). Utile pour les utilisateurs du SDK qui veulent une ardoise vierge. Cela supprime également `general-purpose`, le sous-agent que Claude Code exécute lorsqu'un appel d'outil Agent omet `subagent_type`. Un tel appel échoue alors avec [`subagent_type is required`](/docs/fr/errors#subagent-type-is-required) |

204| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Définissez sur `1` pour ignorer le préfixe `mcp__<server>__` sur les noms d'outils des serveurs MCP créés par le SDK. Les outils utilisent leurs noms d'origine. Utilisation du SDK uniquement |204| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Définissez sur `1` pour ignorer le préfixe `mcp__<server>__` sur les noms d'outils des serveurs MCP créés par le SDK. Les outils utilisent leurs noms d'origine. Utilisation du SDK uniquement |

205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Délai d'expiration de stagnation en millisecondes pour les sous-agents. Par défaut `600000` (10 minutes) ; si vous augmentez `CLAUDE_STREAM_IDLE_TIMEOUT_MS` tandis que le chien de garde de flux est activé, la valeur par défaut augmente avec lui, comme [Gérer les réponses API lentes ou bloquées](/docs/fr/agent-sdk/typescript#handle-slow-or-stalled-api-responses) le décrit. Le minuteur se réinitialise à chaque événement de progression en continu ; si aucune progression n'arrive dans la fenêtre, Claude Code interrompt le sous-agent et signale la stagnation au parent |205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Délai d'expiration de stagnation en millisecondes pour les sous-agents. Par défaut `600000` (10 minutes) ; si vous augmentez `CLAUDE_STREAM_IDLE_TIMEOUT_MS` tandis que le chien de garde de flux est activé, la valeur par défaut augmente avec lui, comme [Gérer les réponses API lentes ou bloquées](/docs/fr/agent-sdk/typescript#handle-slow-or-stalled-api-responses) le décrit. Le minuteur se réinitialise à chaque événement de progression en continu ; si aucune progression n'arrive dans la fenêtre, Claude Code interrompt le sous-agent et signale la stagnation au parent |

206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Définissez le pourcentage (1-100) de la fenêtre de compaction automatique auquel la compaction automatique se déclenche. Utilisez des valeurs plus basses comme `50` pour compacter plus tôt ; la variable ne peut pas augmenter le seuil, donc les valeurs au-dessus du pourcentage par défaut sont ignorées. Elle s'applique uniquement aux sessions qui [compactent avant la limite de contexte du modèle](/docs/fr/model-config#context-window-and-auto-compaction). S'applique aux conversations principales et aux sous-agents |206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Définissez le pourcentage (1-100) de la fenêtre de compaction automatique auquel la compaction automatique se déclenche. Utilisez des valeurs plus basses comme `50` pour compacter plus tôt ; la variable ne peut pas augmenter le seuil, donc les valeurs au-dessus du pourcentage par défaut sont ignorées. Elle s'applique uniquement aux sessions qui [compactent avant la limite de contexte du modèle](/docs/fr/model-config#context-window-and-auto-compaction). S'applique aux conversations principales et aux sous-agents |

207| `CLAUDE_AUTO_BACKGROUND_TASKS` | Définissez sur `1` pour forcer l'activation de la mise en arrière-plan automatique des tâches d'agent longues. Lorsqu'elle est activée, les sous-agents sont déplacés en arrière-plan après environ deux minutes d'exécution. Active également [la mise en arrière-plan automatique des appels d'outils MCP longs](/docs/fr/mcp#automatic-backgrounding-of-long-tool-calls) en mode non interactif sur Claude Code v2.1.212 ou ultérieur |207| `CLAUDE_AUTO_BACKGROUND_TASKS` | Définissez sur `1` pour forcer l'activation de la mise en arrière-plan automatique des tâches d'agent longues. Lorsqu'elle est activée, les sous-agents sont déplacés en arrière-plan après environ deux minutes d'exécution. Active également [la mise en arrière-plan automatique des appels d'outils MCP longs](/docs/fr/mcp#automatic-backgrounding-of-long-tool-calls) en mode non interactif sur Claude Code v2.1.212 ou ultérieur |

208| `CLAUDE_AX_PREPARK_MS` | En [mode lecteur d'écran](/docs/fr/accessibility#what-your-screen-reader-hears), combien de millisecondes Claude Code attend, avec le curseur au début de la ligne, avant d'écrire une ligne nouvelle ou modifiée. Par défaut `50`. Définissez `0` pour écrire immédiatement. Claude Code limite l'attente à `5000`. Nécessite Claude Code v2.1.233 ou ultérieur |208| `CLAUDE_AX_PREPARK_MS` | En [mode lecteur d'écran](/docs/fr/accessibility#what-your-screen-reader-hears), combien de millisecondes Claude Code attend, avec le curseur au début de la ligne, avant d'écrire une ligne nouvelle ou modifiée. Par défaut `50`. Définissez `0` pour écrire immédiatement. Claude Code limite l'attente à `5000`. Nécessite Claude Code v2.1.233 ou ultérieur |

209| `CLAUDE_AX_SCREEN_READER` | Définissez sur `1` pour rendre la sortie conviviale pour les lecteurs d'écran : texte plat sans bordures décoratives ni animations. Définissez sur `0` pour forcer le mode lecteur d'écran désactivé même lorsque [`axScreenReader`](/docs/fr/settings-reference#axscreenreader) est `true`. Le [drapeau `--ax-screen-reader`](/docs/fr/cli-reference#cli-flags) a la priorité. Nécessite Claude Code v2.1.181 ou ultérieur |209| `CLAUDE_AX_SCREEN_READER` | Définissez sur `1` pour afficher une sortie conviviale pour les lecteurs d'écran : texte plat sans bordures décoratives ni animations. Définissez sur `0` pour forcer le mode lecteur d'écran désactivé même lorsque [`axScreenReader`](/docs/fr/settings-reference#axscreenreader) est `true`. Le [drapeau `--ax-screen-reader`](/docs/fr/cli-reference#cli-flags) a la priorité. Nécessite Claude Code v2.1.181 ou ultérieur |

210| `CLAUDE_AX_STARTUP_QUIET_MS` | En [mode lecteur d'écran](/docs/fr/accessibility), combien de millisecondes Claude Code maintient le premier rendu d'interface après la ligne de confirmation de démarrage, afin que votre lecteur d'écran puisse prononcer la ligne en entier avant que la nouvelle sortie ne l'interrompe. Par défaut `3000`. Définissez `0` pour rendre immédiatement. Claude Code limite la tenue à `600000` (10 minutes). Votre première frappe termine la tenue plus tôt. Nécessite Claude Code v2.1.217 ou ultérieur |210| `CLAUDE_AX_STARTUP_QUIET_MS` | En [mode lecteur d'écran](/docs/fr/accessibility), combien de millisecondes Claude Code maintient le premier rendu d'interface après la ligne de confirmation de démarrage, afin que votre lecteur d'écran puisse prononcer la ligne en entier avant que la nouvelle sortie ne l'interrompe. Par défaut `3000`. Définissez `0` pour afficher immédiatement. Claude Code limite la tenue à `600000` (10 minutes). Votre première frappe termine la tenue plus tôt. Nécessite Claude Code v2.1.217 ou ultérieur |

211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Retournez au répertoire de travail d'origine après chaque commande Bash ou PowerShell dans la session principale |211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Retournez au répertoire de travail d'origine après chaque commande Bash ou PowerShell dans la session principale |

212| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | Délai d'expiration en millisecondes pour le chien de garde d'inactivité de flux au niveau des octets ; lorsqu'il est défini, il prend la priorité sur `CLAUDE_STREAM_IDLE_TIMEOUT_MS` pour ce chien de garde et laisse le chien de garde au niveau des événements inchangé. Claude Code limite cette variable entre 10 secondes et 30 minutes. Nécessite Claude Code v2.1.210 ou ultérieur |212| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | Délai d'expiration en millisecondes pour le chien de garde d'inactivité de flux au niveau des octets ; lorsqu'il est défini, il a la priorité sur `CLAUDE_STREAM_IDLE_TIMEOUT_MS` pour ce chien de garde et laisse le chien de garde au niveau des événements inchangé. Claude Code limite cette variable entre 10 secondes et 30 minutes. Nécessite Claude Code v2.1.210 ou ultérieur |

213| `CLAUDE_CLIENT_PRESENCE_FILE` | Chemin d'accès à un fichier qu'un outil externe, comme un écouteur de verrouillage d'écran, crée lorsque vous déverrouillez votre écran et supprime lorsque vous le verrouillez. Tant que le fichier existe, Claude Code ignore [les notifications push mobiles Remote Control](/docs/fr/remote-control#mobile-push-notifications), afin que vous cessiez de recevoir des notifications lorsque vous utilisez activement l'ordinateur. Lorsque le fichier est absent ou illisible, les notifications sont envoyées normalement. Claude Code vérifie le fichier une fois par événement déclencheur de notification plutôt que de l'interroger. Nécessite Claude Code v2.1.181 ou ultérieur |213| `CLAUDE_CLIENT_PRESENCE_FILE` | Chemin d'accès à un fichier qu'un outil externe, comme un écouteur de verrouillage d'écran, crée lorsque vous déverrouillez votre écran et supprime lorsque vous le verrouillez. Tant que le fichier existe, Claude Code ignore [les notifications push mobiles Remote Control](/docs/fr/remote-control#mobile-push-notifications), afin que vous cessiez de recevoir des notifications push pendant que vous utilisez activement l'ordinateur. Lorsque le fichier est absent ou illisible, les notifications sont envoyées normalement. Claude Code vérifie le fichier une fois par événement déclencheur de notification plutôt que de l'interroger. Nécessite Claude Code v2.1.181 ou ultérieur |

214| `CLAUDE_CODE_ACCESSIBILITY` | Définissez sur `1` pour garder le curseur du terminal natif visible et désactiver l'indicateur de curseur en texte inversé. Permet aux agrandisseurs d'écran comme macOS Zoom de suivre la position du curseur |214| `CLAUDE_CODE_ACCESSIBILITY` | Définissez sur `1` pour garder le curseur du terminal natif visible et désactiver l'indicateur de curseur en texte inversé. Permet aux loupes d'écran comme macOS Zoom de suivre la position du curseur |

215| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Définissez sur `1` pour charger les fichiers mémoire à partir des répertoires spécifiés avec `--add-dir`. Charge `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md` et `CLAUDE.local.md`. Par défaut, les répertoires supplémentaires ne chargent pas les fichiers mémoire |215| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Définissez sur `1` pour charger les fichiers mémoire à partir des répertoires spécifiés avec `--add-dir`. Charge `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md` et `CLAUDE.local.md`. Par défaut, les répertoires supplémentaires ne chargent pas les fichiers mémoire |

216| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Définissez sur `1` pour repeindre l'écran entier à chaque image en [rendu plein écran](/docs/fr/fullscreen) au lieu d'envoyer des mises à jour incrémentielles. Utilisez ceci si le mode plein écran affiche des fragments de texte obsolètes ou mal placés. Claude Code active ceci automatiquement pour les sessions d'arrière-plan et [la vue agent](/docs/fr/agent-view) sur Windows |216| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Définissez sur `1` pour repeindre l'écran entier à chaque image en [rendu plein écran](/docs/fr/fullscreen) au lieu d'envoyer des mises à jour incrémentielles. Utilisez ceci si le mode plein écran affiche des fragments de texte obsolètes ou mal placés. Claude Code active ceci automatiquement pour les sessions d'arrière-plan et [la vue agent](/docs/fr/agent-view) sur Windows |

217| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Définissez sur `1` pour envoyer le paramètre [effort](/docs/fr/model-config#adjust-effort-level) avec chaque requête, même lorsque Claude Code ne reconnaît pas l'ID du modèle comme capable d'effort. Utilisez ceci lors du routage via une [passerelle LLM](/docs/fr/llm-gateway) ou un fournisseur tiers qui sert les modèles sous des identifiants personnalisés. Les modèles qui rejettent le paramètre d'effort à l'API, y compris les modèles Claude 3, Sonnet 4.0 et 4.5, Opus 4.0 et 4.1, et Haiku 4.5, sont toujours exclus afin que les requêtes ne échouent pas |217| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Définissez sur `1` pour envoyer le paramètre [effort](/docs/fr/model-config#adjust-effort-level) avec chaque requête, même lorsque Claude Code ne reconnaît pas l'ID du modèle comme capable d'effort. Utilisez ceci lors du routage via une [passerelle LLM](/docs/fr/llm-gateway) ou un fournisseur tiers qui sert les modèles sous des identifiants personnalisés. Les modèles qui rejettent le paramètre d'effort à l'API, y compris les modèles Claude 3, Sonnet 4.0 et 4.5, Opus 4.0 et 4.1, et Haiku 4.5, sont toujours exclus afin que les requêtes ne échouent pas |

218| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Intervalle en millisecondes auquel les identifiants doivent être actualisés (lors de l'utilisation de [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper)) |218| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Intervalle en millisecondes auquel les identifiants doivent être actualisés (lors de l'utilisation de [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper)) |

219| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Définissez sur `0` pour empêcher Claude Code d'ouvrir automatiquement le navigateur lorsqu'un nouvel [artefact](/docs/fr/artifacts#create-an-artifact) est publié |219| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Définissez sur `0` pour empêcher Claude Code d'ouvrir automatiquement le navigateur lorsqu'un nouvel [artefact](/docs/fr/artifacts#create-an-artifact) est publié |

220| `CLAUDE_CODE_ARTIFACT_COMMENTS` | Définissez sur `0` pour arrêter la lecture et la réponse de Claude aux [commentaires sur un artefact](/docs/fr/artifacts#collect-comments-on-an-artifact). N'a aucun effet lorsque `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` a [désactivé les artefacts](/docs/fr/artifacts#availability). Nécessite Claude Code v2.1.221 ou ultérieur |220| `CLAUDE_CODE_ARTIFACT_COMMENTS` | Définissez sur `0` pour arrêter la lecture et la réponse de Claude aux [commentaires sur un artefact](/docs/fr/artifacts#collect-comments-on-an-artifact). N'a aucun effet lorsque `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` a [désactivé les artefacts](/docs/fr/artifacts#availability). Nécessite Claude Code v2.1.221 ou ultérieur |

221| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Définissez sur `0` pour arrêter Claude de [répondre d'elle-même aux commentaires qui lui sont envoyés](/docs/fr/artifacts#let-claude-reply-to-comments-on-its-own). Nécessite Claude Code v2.1.228 ou ultérieur |221| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Définissez sur `0` pour arrêter Claude de [répondre de lui-même aux commentaires qui lui sont envoyés](/docs/fr/artifacts#let-claude-reply-to-comments-on-its-own). Nécessite Claude Code v2.1.228 ou ultérieur |

222| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Définissez sur `0` pour omettre le [bloc d'attribution](/docs/fr/llm-gateway-protocol#system-prompt-attribution-block), qui porte la version du client et une empreinte digitale du prompt, du début du prompt système. La mise en cache sur une connexion directe à l'API Anthropic n'est affectée de toute façon. Dans certaines configurations de connexion directe, Claude Code garde le bloc en mode [auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour les requêtes du classificateur même lorsque vous définissez `0`. Dans [Bloc d'attribution du prompt système](/docs/fr/llm-gateway-protocol#system-prompt-attribution-block), vérifiez quelles connexions et identifiants cela couvre. Avant v2.1.181, le bloc incluait un jeton par requête sur les URL de base personnalisées et les connexions Microsoft Foundry, donc sur ces versions, définissez-le sur `0` lorsque votre passerelle LLM met en cache sur le corps de la requête ou transfère les requêtes à un fournisseur tiers, ou lorsque vous vous connectez directement à Microsoft Foundry |222| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Définissez sur `0` pour omettre le [bloc d'attribution](/docs/fr/llm-gateway-protocol#system-prompt-attribution-block), qui porte la version du client et une empreinte digitale d'invite, du début de l'invite système. La mise en cache sur une connexion directe à l'API Anthropic n'est affectée de toute façon. Dans certaines configurations de connexion directe, Claude Code maintient le bloc en mode [auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour les requêtes du classificateur même lorsque vous définissez `0`. Dans [Bloc d'attribution d'invite système](/docs/fr/llm-gateway-protocol#system-prompt-attribution-block), vérifiez quelles connexions et identifiants cela couvre. Avant v2.1.181, le bloc incluait un jeton par requête sur les URL de base personnalisées et les connexions Microsoft Foundry, donc sur ces versions, définissez-le sur `0` lorsque votre passerelle LLM met en cache sur le corps de la requête ou transfère les requêtes à un fournisseur tiers, ou lorsque vous vous connectez directement à Microsoft Foundry |

223| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | Lorsque `CLAUDE_AUTO_BACKGROUND_TASKS` est activé, secondes entre les rappels à Claude de vérifier les [sous-agents d'arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background) qui sont toujours en cours d'exécution. Accepte un entier simple de `1` à `86400` uniquement ; toute autre valeur ou orthographe se lit comme non définie. Lorsqu'il n'est pas défini, il n'y a pas de rappels de vérification. Nécessite Claude Code v2.1.248 ou ultérieur |223| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | Lorsque `CLAUDE_AUTO_BACKGROUND_TASKS` est activé, secondes entre les rappels à Claude de vérifier les [sous-agents d'arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background) qui sont toujours en cours d'exécution. Accepte un entier simple de `1` à `86400` uniquement ; toute autre valeur ou orthographe est lue comme non définie. Lorsqu'il n'est pas défini, il n'y a pas de rappels de vérification. Nécessite Claude Code v2.1.248 ou ultérieur |

224| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Définissez la [fenêtre de compaction automatique](/docs/fr/model-config#set-the-auto-compact-window) en jetons, de `100000` à `1000000`. Accepte un entier simple comme `500000` uniquement : une valeur comme `500k` se lit comme `500` et se limite au minimum de 100K. La fenêtre effective est également limitée à la fenêtre de contexte du modèle. Prend la priorité sur la commande `/autocompact`, le drapeau `--autocompact` et le paramètre `autoCompactWindow`. Le `used_percentage` de la ligne d'état mesure toujours par rapport à la fenêtre de contexte complète du modèle, donc une fois cette variable définie, ce pourcentage n'indique plus quand la compaction s'exécutera |224| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Définissez la [fenêtre de compaction automatique](/docs/fr/model-config#set-the-auto-compact-window) en jetons, de `100000` à `1000000`. Accepte un entier simple comme `500000` uniquement : une valeur comme `500k` est lue comme `500` et limitée au minimum de 100K. La fenêtre effective est également limitée à la fenêtre de contexte du modèle. A la priorité sur la commande `/autocompact`, le drapeau `--autocompact` et le paramètre `autoCompactWindow`. Le `used_percentage` de la ligne d'état mesure toujours par rapport à la fenêtre de contexte complète du modèle, donc une fois cette variable définie, ce pourcentage n'indique plus quand la compaction s'exécutera |

225| `CLAUDE_CODE_AUTO_CONNECT_IDE` | Remplacez la [connexion IDE](/docs/fr/vs-code) automatique. Par défaut, Claude Code se connecte automatiquement lorsqu'il est lancé dans le terminal intégré d'un IDE pris en charge. Définissez sur `false` pour empêcher cela. Définissez sur `true` pour forcer une tentative de connexion lorsque la détection automatique échoue, par exemple lorsque tmux obscurcit le terminal parent. Prend la priorité sur le paramètre de configuration global [`autoConnectIde`](/docs/fr/settings-reference#autoconnectide) |225| `CLAUDE_CODE_AUTO_CONNECT_IDE` | Remplacez la [connexion IDE](/docs/fr/vs-code) automatique. Par défaut, Claude Code se connecte automatiquement lorsqu'il est lancé dans le terminal intégré d'un IDE pris en charge. Définissez sur `false` pour empêcher cela. Définissez sur `true` pour forcer une tentative de connexion lorsque la détection automatique échoue, par exemple lorsque tmux obscurcit le terminal parent. A la priorité sur le paramètre de configuration global [`autoConnectIde`](/docs/fr/settings-reference#autoconnectide) |

226| `CLAUDE_CODE_AUTO_MODE_SERVER` | Contrôle si Claude Code demande au serveur d'[examiner les actions du mode auto](/docs/fr/permission-modes#server-side-classifier-review). Définissez sur `0` pour utiliser les requêtes du classificateur propre de Claude Code à la place. Sur une connexion directe à l'API Anthropic, nécessite v2.1.281 ou ultérieur. La section liée énumère les sessions qui demandent au serveur lorsque la variable n'est pas définie, et à partir de quelle version. Nécessite Claude Code v2.1.271 ou ultérieur |226| `CLAUDE_CODE_AUTO_MODE_SERVER` | Contrôle si Claude Code demande au serveur de [vérifier les actions du mode auto](/docs/fr/permission-modes#server-side-classifier-review). Définissez sur `0` pour utiliser les requêtes du classificateur propre de Claude Code à la place. Sur une connexion directe à l'API Anthropic, nécessite v2.1.281 ou ultérieur. La section liée énumère les sessions qui demandent au serveur lorsque la variable n'est pas définie, et à partir de quelle version. Nécessite Claude Code v2.1.271 ou ultérieur |

227| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Temps en millisecondes que Claude Code attend que le fournisseur d'identifiants par défaut AWS produise des identifiants avant que la requête échoue avec [`AWS default-chain credential resolve timed out`](/docs/fr/errors#aws-default-chain-credential-resolve-timed-out) (par défaut : `60000`). Augmentez-le lorsqu'une étape de votre chaîne a légitimement besoin de plus de temps, comme une connexion SSO basée sur un navigateur avec MFA via un wrapper comme `aws-vault`. S'applique partout où Claude Code signe avec la chaîne par défaut : [Amazon Bedrock](/docs/fr/amazon-bedrock#credential-caching-and-resolution-timeout), [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) et le [point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint). Nécessite Claude Code v2.1.207 ou ultérieur |227| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Temps en millisecondes que Claude Code attend que la chaîne de fournisseur d'identifiants par défaut AWS produise des identifiants avant que la requête échoue avec [`AWS default-chain credential resolve timed out`](/docs/fr/errors#aws-default-chain-credential-resolve-timed-out) (par défaut : `60000`). Augmentez-le lorsqu'une étape de votre chaîne a légitimement besoin de plus de temps, comme une connexion SSO basée sur un navigateur avec MFA via un wrapper comme `aws-vault`. S'applique partout où Claude Code signe avec la chaîne par défaut : [Amazon Bedrock](/docs/fr/amazon-bedrock#credential-caching-and-resolution-timeout), [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) et le [point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint). Nécessite Claude Code v2.1.207 ou ultérieur |

228| `CLAUDE_CODE_BASH_EDIT_DIFF` | Définissez sur `0` pour désactiver le [diff des fichiers qu'une commande Bash a modifiés](/docs/fr/hooks#bash), ou `1` pour l'enregistrer dans chaque mode de permission. Prend la priorité sur le paramètre [`bashEditDiffEnabled`](/docs/fr/settings-reference#basheditdiffenabled). Nécessite Claude Code v2.1.269 ou ultérieur |228| `CLAUDE_CODE_BASH_EDIT_DIFF` | Définissez sur `0` pour désactiver la [différence des fichiers qui ont changé pendant l'exécution d'une commande Bash](/docs/fr/hooks#bash), ou `1` pour l'enregistrer dans chaque mode de permission. A la priorité sur le paramètre [`bashEditDiffEnabled`](/docs/fr/settings-reference#basheditdiffenabled). Nécessite Claude Code v2.1.269 ou ultérieur |

229| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | Définissez sur `0` pour faire en sorte qu'une session non interactive signale un statut inactif à son hôte à chaque fin de tour, même si le travail d'arrière-plan est toujours en cours. Par défaut, la session continue de signaler un statut en cours au-delà de la fin du tour tandis que le travail d'arrière-plan, comme un agent d'arrière-plan ou une exécution de [flux de travail](/docs/fr/workflows), est toujours actif. Cela empêche un hôte qui surveille le statut, comme une liste de sessions distantes, d'annoncer que Claude attend votre entrée au milieu du travail. Les commandes shell d'arrière-plan, comme un serveur de développement, ne maintiennent pas le statut en cours. La valeur par défaut en cours et l'opt-out `0` nécessitent Claude Code v2.1.269 ou ultérieur ; sur les versions antérieures, définissez `1` pour maintenir le statut en cours |229| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | Définissez sur `0` pour faire en sorte qu'une session non interactive signale un statut inactif à son hôte à chaque fin de tour, même si le travail d'arrière-plan est toujours en cours. Par défaut, la session continue de signaler un statut en cours au-delà de la fin du tour tandis que le travail d'arrière-plan, comme un agent d'arrière-plan ou une [exécution de flux de travail](/docs/fr/workflows), est toujours actif. Cela empêche un hôte qui surveille le statut, comme une liste de sessions distantes, d'annoncer que Claude attend votre entrée au milieu du travail. Les commandes shell d'arrière-plan, comme un serveur de développement, ne maintiennent pas le statut en cours. La valeur par défaut du statut en cours et l'opt-out `0` nécessitent Claude Code v2.1.269 ou ultérieur ; sur les versions antérieures, définissez `1` pour maintenir le statut en cours |

230| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Défini automatiquement dans les sous-processus de l'outil Bash et de la [commande hook](/docs/fr/hooks) tandis que la session a une connexion [Remote Control](/docs/fr/remote-control) active, et supprimé lorsque la connexion se termine. La valeur est l'ID de la session sous la forme `session_`, le même identifiant qui apparaît dans l'URL `claude.ai/code` de la session, afin qu'un script puisse se lier à la session qui l'a exécuté. Nécessite Claude Code v2.1.199 ou ultérieur. Dans [les sessions cloud](/docs/fr/claude-code-on-the-web), lisez `CLAUDE_CODE_REMOTE_SESSION_ID` à la place |230| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Défini automatiquement dans les sous-processus de l'outil Bash et [commande hook](/docs/fr/hooks) tandis que la session a une connexion [Remote Control](/docs/fr/remote-control) active, et supprimé lorsque la connexion se termine. La valeur est l'ID de la session sous la forme `session_`, le même identifiant qui apparaît dans l'URL `claude.ai/code` de la session, afin qu'un script puisse se lier à la session qui l'a exécuté. Nécessite Claude Code v2.1.199 ou ultérieur. Dans [les sessions cloud](/docs/fr/claude-code-on-the-web), lisez `CLAUDE_CODE_REMOTE_SESSION_ID` à la place |

231| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Définissez sur `0` pour faire en sorte que Claude Code lise l'octet `0x08`, également écrit `^H`, comme Backspace simple, ou `1` pour le lire comme Ctrl+Backspace. L'une ou l'autre valeur remplace la valeur par défaut de la plateforme. Par défaut, Claude Code le lit comme Ctrl+Backspace sur Windows, sauf lorsque `TERM_PROGRAM` est `mintty` ou `TERM` est `cygwin`, et comme Backspace simple sur macOS et Linux. Définissez `0` dans un terminal Windows où [Backspace supprime un mot entier](/docs/fr/terminal-config#fix-backspace-deleting-a-whole-word-on-windows) |231| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Définissez sur `0` pour faire en sorte que Claude Code lise l'octet `0x08`, également écrit `^H`, comme Backspace simple, ou `1` pour le lire comme Ctrl+Backspace. Chaque valeur remplace la valeur par défaut de la plateforme. Par défaut, Claude Code le lit comme Ctrl+Backspace sur Windows, sauf lorsque `TERM_PROGRAM` est `mintty` ou `TERM` est `cygwin`, et comme Backspace simple sur macOS et Linux. Définissez `0` dans un terminal Windows où [Backspace supprime un mot entier](/docs/fr/terminal-config#fix-backspace-deleting-a-whole-word-on-windows) |

232| `CLAUDE_CODE_CERT_STORE` | Liste séparée par des virgules des sources de certificats CA pour les connexions TLS. `bundled` est l'ensemble Mozilla CA fourni avec Claude Code. `system` est le magasin de confiance du système d'exploitation, lu uniquement sur les runtimes avec `tls.getCACertificates` : le binaire natif, ou Node 22.15 ou ultérieur pour les installations npm. Voir [Magasin de certificats CA](/docs/fr/network-config#ca-certificate-store). La valeur par défaut est `bundled,system` |232| `CLAUDE_CODE_CERT_STORE` | Liste séparée par des virgules des sources de certificats CA pour les connexions TLS. `bundled` est l'ensemble Mozilla CA fourni avec Claude Code. `system` est le magasin de confiance du système d'exploitation, lu uniquement sur les runtimes avec `tls.getCACertificates` : le binaire natif, ou Node 22.15 ou ultérieur pour les installations npm. Voir [Magasin de certificats CA](/docs/fr/network-config#ca-certificate-store). La valeur par défaut est `bundled,system` |

233| `CLAUDE_CODE_CHILD_SESSION` | Défini sur `1` dans les sous-processus que Claude Code génère via les outils Bash, PowerShell et Monitor, les [commandes hook](/docs/fr/hooks) et les [commandes de ligne d'état](/docs/fr/statusline). Non défini pour les sous-processus du serveur [MCP](/docs/fr/mcp) stdio, qui sont de longue durée et survivent à la session qui les a générés. Contrairement à `CLAUDECODE`, ceci n'est défini que par Claude Code lui-même lorsqu'il lance un sous-processus et non par les extensions IDE, donc il distingue de manière fiable une session imbriquée d'un `claude` de niveau supérieur lancé dans un terminal intégré IDE. Un `claude` TUI interactif imbriqué démarré de cette façon est automatiquement exclu de `--resume`, `--continue`, l'historique de la flèche vers le haut et la liste `claude agents`. Les sessions `claude -p` non interactives persistent toujours. Définissez `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` pour remplacer cette exclusion. Nécessite Claude Code v2.1.172 ou ultérieur |233| `CLAUDE_CODE_CHILD_SESSION` | Défini sur `1` dans les sous-processus que Claude Code génère via les outils Bash, PowerShell et Monitor, les commandes [hook](/docs/fr/hooks) et les commandes [ligne d'état](/docs/fr/statusline). Non défini pour les sous-processus [serveur MCP](/docs/fr/mcp) stdio, qui sont de longue durée et survivent à la session qui les a générés. Contrairement à `CLAUDECODE`, ceci n'est défini que par Claude Code lui-même lorsqu'il lance un sous-processus et non par les extensions IDE, donc il distingue de manière fiable une session imbriquée d'un `claude` lancé au niveau supérieur dans un terminal intégré IDE. Un `claude` TUI interactif imbriqué démarré de cette façon est automatiquement exclu de `--resume`, `--continue`, l'historique de la flèche vers le haut et la liste `claude agents`. Les sessions non interactives `claude -p` persistent toujours. Définissez `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` pour remplacer cette exclusion. Nécessite Claude Code v2.1.172 ou ultérieur |

234| `CLAUDE_CODE_CLIENT_CERT` | Chemin d'accès au fichier de certificat client pour l'authentification mTLS |234| `CLAUDE_CODE_CLIENT_CERT` | Chemin d'accès au fichier de certificat client pour l'authentification mTLS |

235| `CLAUDE_CODE_CLIENT_KEY` | Chemin d'accès au fichier de clé privée client pour l'authentification mTLS |235| `CLAUDE_CODE_CLIENT_KEY` | Chemin d'accès au fichier de clé privée client pour l'authentification mTLS |

236| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Phrase de passe pour `CLAUDE_CODE_CLIENT_KEY` chiffré (optionnel) |236| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Phrase de passe pour CLAUDE\_CODE\_CLIENT\_KEY chiffré (optionnel) |

237| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Supprimé dans v2.1.186 et maintenant un no-op. Auparavant, définissait un délai d'expiration séparé pour la phase de connexion, TLS et d'en-tête de réponse d'une requête API en continu. Utilisez `API_TIMEOUT_MS` pour le délai d'expiration par requête. Pour la phase d'en-tête de réponse d'une requête en continu, voir `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |237| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Supprimé dans v2.1.186 et maintenant un no-op. Auparavant, définissait un délai d'expiration séparé pour la phase de connexion, TLS et d'en-tête de réponse d'une requête API en continu. Utilisez `API_TIMEOUT_MS` pour le délai d'expiration par requête. Pour la phase d'en-tête de réponse d'une requête en continu, voir `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |

238| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Remplacez le chemin d'accès au fichier journal de débogage. Malgré le nom, c'est un chemin d'accès au fichier, pas un répertoire. Nécessite que le mode débogage soit activé séparément via `--debug`, `/debug` ou la variable d'environnement `DEBUG` : définir cette variable seule n'active pas la journalisation. Le [drapeau `--debug-file`](/docs/fr/cli-reference#cli-flags) fait les deux à la fois. Par défaut `~/.claude/debug/<session-id>.txt` |238| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Remplacez le chemin d'accès au fichier journal de débogage. Malgré le nom, c'est un chemin d'accès au fichier, pas un répertoire. Nécessite que le mode débogage soit activé séparément via `--debug`, `/debug` ou la variable d'environnement `DEBUG` : définir cette variable seule n'active pas la journalisation. Le [drapeau `--debug-file`](/docs/fr/cli-reference#cli-flags) fait les deux à la fois. Par défaut `~/.claude/debug/<session-id>.txt` |

239| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Niveau de journal minimum écrit dans le fichier journal de débogage. Valeurs : `verbose`, `debug` (par défaut), `info`, `warn`, `error`. Définissez sur `verbose` pour inclure les diagnostics à haut volume comme la sortie complète de la commande de ligne d'état, ou augmentez à `error` pour réduire le bruit |239| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Niveau de journal minimum écrit dans le fichier journal de débogage. Valeurs : `verbose`, `debug` (par défaut), `info`, `warn`, `error`. Définissez sur `verbose` pour inclure les diagnostics à haut volume comme la sortie complète de la commande de ligne d'état, ou augmentez à `error` pour réduire le bruit |

240| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Définissez sur `1` pour désactiver le support de la [fenêtre de contexte 1M](/docs/fr/model-config#extended-context). Lorsqu'elle est définie, les variantes de modèle 1M ne sont pas disponibles dans le sélecteur de modèle, et Claude Code maintient les sessions sur les modèles avec une fenêtre 1M native, comme [Sonnet 5](/docs/fr/model-config#sonnet-5-context-window) et les modèles Fable, à une fenêtre 200K ; voir [Contexte étendu](/docs/fr/model-config#extended-context) pour savoir comment la tenue est appliquée. Utile pour les environnements d'entreprise avec des exigences de conformité. Pour son rôle dans la correction de la fenêtre pour un ID de modèle non reconnu `[1m]`, voir [Corriger la fenêtre pour un ID de modèle de passerelle ou personnalisé](/docs/fr/model-config#correct-the-window-for-a-gateway-or-custom-model-id) |240| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Définissez sur `1` pour désactiver le support de [fenêtre de contexte 1M](/docs/fr/model-config#extended-context). Lorsqu'il est défini, les variantes de modèle 1M ne sont pas disponibles dans le sélecteur de modèle, et Claude Code maintient les sessions sur les modèles avec une fenêtre 1M native, comme [Sonnet 5.5](/docs/fr/model-config#sonnet-5-5-and-sonnet-5-context-window) et les modèles Fable, à une fenêtre 200K ; voir [Contexte étendu](/docs/fr/model-config#extended-context) pour savoir comment la tenue est appliquée. Utile pour les environnements d'entreprise avec des exigences de conformité. Pour son rôle dans la correction de la fenêtre pour un ID de modèle non reconnu `[1m]`, voir [Corriger la fenêtre pour un ID de modèle de passerelle ou personnalisé](/docs/fr/model-config#correct-the-window-for-a-gateway-or-custom-model-id) |

241| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Définissez sur `1` pour désactiver le [raisonnement adaptatif](/docs/fr/model-config#adjust-effort-level) sur Opus 4.6 et Sonnet 4.6 et revenir au budget de réflexion fixe contrôlé par `MAX_THINKING_TOKENS`. N'a aucun effet sur les [modèles Fable](/docs/fr/model-config#extended-thinking), Sonnet 5 ou Opus 4.7 et ultérieur, qui utilisent toujours le raisonnement adaptatif |241| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Définissez sur `1` pour désactiver le [raisonnement adaptatif](/docs/fr/model-config#adjust-effort-level) sur Opus 4.6 et Sonnet 4.6 et revenir au budget de réflexion fixe contrôlé par `MAX_THINKING_TOKENS`. N'a aucun effet sur les [modèles Fable](/docs/fr/model-config#extended-thinking), Sonnet 5 ou Opus 4.7 et ultérieur, qui utilisent toujours le raisonnement adaptatif |

242| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | Définissez sur `1` pour empêcher Claude Code de fusionner les blocs `env` des [paramètres gérés](/docs/fr/managed-settings#precedence-within-the-managed-tier) par clé sur les sources d'administration, afin que seul le bloc `env` de la source la plus prioritaire s'applique, comme avant v2.1.223. Définissez-le dans l'environnement qui lance Claude Code, car Claude Code ignore une copie livrée via un bloc `env` des paramètres. Nécessite Claude Code v2.1.223 ou ultérieur |242| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | Définissez sur `1` pour empêcher Claude Code de fusionner les blocs `env` des [paramètres gérés](/docs/fr/managed-settings#precedence-within-the-managed-tier) par clé entre les sources d'administration, afin que seul le bloc `env` de la source la plus prioritaire s'applique, comme avant v2.1.223. Définissez-le dans l'environnement qui lance Claude Code, car Claude Code ignore une copie livrée via un bloc `env` de paramètres. Nécessite Claude Code v2.1.223 ou ultérieur |

243| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Définissez sur `1` pour désactiver l'[outil conseiller](/docs/fr/advisor). La commande `/advisor` devient indisponible, tout `advisorModel` configuré est ignoré, et le drapeau `--advisor` est accepté mais n'a aucun effet, afin que les scripts existants qui le transmettent continuent à fonctionner sans erreurs |243| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Définissez sur `1` pour désactiver l'[outil conseiller](/docs/fr/advisor). La commande `/advisor` devient indisponible, tout `advisorModel` configuré est ignoré, et le drapeau `--advisor` est accepté mais n'a aucun effet, afin que les scripts existants qui le transmettent continuent à fonctionner sans erreurs |

244| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | Définissez sur `1` pour désactiver [les agents d'arrière-plan et la vue agent](/docs/fr/agent-view) : `claude agents`, `--bg`, `/background` et le superviseur à la demande. Équivalent au paramètre [`disableAgentView`](/docs/fr/settings-reference#disableagentview) |244| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | Définissez sur `1` pour désactiver [les agents d'arrière-plan et la vue agent](/docs/fr/agent-view) : `claude agents`, `--bg`, `/background` et le superviseur à la demande. Équivalent au paramètre [`disableAgentView`](/docs/fr/settings-reference#disableagentview) |

245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Définissez sur `1` pour désactiver le [rendu plein écran](/docs/fr/fullscreen) et utiliser le rendu d'écran principal classique. La conversation reste dans le défilement natif de votre terminal afin que `Cmd+f` et le mode copie tmux fonctionnent comme d'habitude. Prend la priorité sur `CLAUDE_CODE_NO_FLICKER` et le paramètre [`tui`](/docs/fr/settings-reference#tui). Vous pouvez également basculer avec `/tui default`. Ne s'applique pas aux sessions d'arrière-plan ouvertes à partir de la [vue agent](/docs/fr/agent-view), qui utilisent toujours le rendu plein écran |245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Définissez sur `1` pour désactiver le [rendu plein écran](/docs/fr/fullscreen) et utiliser le rendu d'écran principal classique. La conversation reste dans le défilement natif de votre terminal afin que `Cmd+f` et le mode copie tmux fonctionnent comme d'habitude. A la priorité sur `CLAUDE_CODE_NO_FLICKER` et le paramètre [`tui`](/docs/fr/settings-reference#tui). Vous pouvez également basculer avec `/tui default`. Ne s'applique pas aux sessions d'arrière-plan ouvertes à partir de [la vue agent](/docs/fr/agent-view), qui utilisent toujours le rendu plein écran |

246| `CLAUDE_CODE_DISABLE_ARTIFACT` | Définissez sur `1` pour désactiver l'outil [Artifact](/docs/fr/artifacts), qui publie la sortie de session en tant que page web privée sur claude.ai. Une fois que vous l'avez défini, aucun fichier de paramètres ne réactive l'outil. Pour désactiver l'outil à partir d'un fichier de paramètres à la place, définissez [`enableArtifact`](/docs/fr/settings-reference#enableartifact) sur `false` ; la clé [`disableArtifact`](/docs/fr/settings-reference#disableartifact) dépréciée le désactive également |246| `CLAUDE_CODE_DISABLE_ARTIFACT` | Définissez sur `1` pour désactiver l'outil [Artifact](/docs/fr/artifacts), qui publie la sortie de session en tant que page web privée sur claude.ai. Une fois que vous le définissez, aucun fichier de paramètres n'active l'outil. Pour désactiver l'outil à partir d'un fichier de paramètres à la place, définissez [`enableArtifact`](/docs/fr/settings-reference#enableartifact) sur `false` ; la clé [`disableArtifact`](/docs/fr/settings-reference#disableartifact) dépréciée le désactive également |

247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Définissez sur `1` pour désactiver le traitement des pièces jointes. Les mentions de fichiers avec la syntaxe `@` sont envoyées en tant que texte simple au lieu d'être développées dans le contenu du fichier |247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Définissez sur `1` pour désactiver le traitement des pièces jointes. Les mentions de fichiers avec la syntaxe `@` sont envoyées en tant que texte simple au lieu d'être développées dans le contenu du fichier |

248| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Définissez sur `1` pour désactiver la [mémoire automatique](/docs/fr/memory#auto-memory). Définissez sur `0` pour forcer la mémoire automatique activée même lorsque le mode `--bare` ou [`autoMemoryEnabled: false`](/docs/fr/settings-reference#automemoryenabled) la désactiverait autrement. Lorsqu'elle est désactivée, Claude ne crée ni ne charge les fichiers de mémoire automatique |248| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Définissez sur `1` pour désactiver la [mémoire automatique](/docs/fr/memory#auto-memory). Définissez sur `0` pour forcer la mémoire automatique activée même lorsque le mode `--bare` ou [`autoMemoryEnabled: false`](/docs/fr/settings-reference#automemoryenabled) la désactiverait autrement. Lorsqu'elle est désactivée, Claude ne crée ni ne charge les fichiers de mémoire automatique |

249| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Définissez sur `1` pour désactiver toute la fonctionnalité de tâche d'arrière-plan, y compris le paramètre `run_in_background` sur les outils Bash et sous-agent, la mise en arrière-plan automatique et le raccourci Ctrl+B |249| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Définissez sur `1` pour désactiver toute la fonctionnalité de tâche d'arrière-plan, y compris le paramètre `run_in_background` sur les outils Bash et sous-agent, la mise en arrière-plan automatique et le raccourci Ctrl+B |

250| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Définissez sur `1` pour empêcher Claude Code de traiter une réponse en continu [Amazon Bedrock](/docs/fr/amazon-bedrock) avec un en-tête `Content-Type` manquant ou vide comme le flux d'événements binaires d'Amazon Bedrock. Par défaut, Claude Code suppose qu'une passerelle a supprimé l'en-tête d'une réponse par ailleurs inmodifiée, afin que le décodage du corps et le flux continu continuent de fonctionner. Définissez ceci uniquement pour une passerelle qui réemet également le flux en tant qu'événements envoyés par le serveur ; Claude Code lit alors le corps sans en-tête en tant qu'événements envoyés par le serveur à la place. Nécessite Claude Code v2.1.239 ou ultérieur |250| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Définissez sur `1` pour empêcher Claude Code de traiter une réponse en continu [Amazon Bedrock](/docs/fr/amazon-bedrock) avec un en-tête `Content-Type` manquant ou vide comme le flux d'événements binaires d'Amazon Bedrock. Par défaut, Claude Code suppose qu'une passerelle a supprimé l'en-tête d'une réponse autrement inmodifiée, afin que le décodage du corps et le flux continu fonctionnent. Définissez ceci uniquement pour une passerelle qui réemet également le flux en tant qu'événements envoyés par le serveur ; Claude Code lit alors le corps sans en-tête en tant qu'événements envoyés par le serveur à la place. Nécessite Claude Code v2.1.239 ou ultérieur |

251| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Définissez sur `1` pour ignorer la vérification qu'une réponse en continu [Amazon Bedrock](/docs/fr/amazon-bedrock) porte le type de contenu `application/vnd.amazon.eventstream`. Sans cette variable, lorsqu'une réponse porte un type de contenu différent, Claude Code échoue la requête avec une erreur nommant ce type, ce qui signifie qu'une [passerelle ou un proxy transforme la réponse](/docs/fr/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Configurez la passerelle pour transférer l'en-tête `Content-Type` et le corps sans modification plutôt que de définir cette variable. Nécessite Claude Code v2.1.208 ou ultérieur |251| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Définissez sur `1` pour ignorer la vérification qu'une réponse en continu [Amazon Bedrock](/docs/fr/amazon-bedrock) porte le type de contenu `application/vnd.amazon.eventstream`. Sans cette variable, lorsqu'une réponse porte un type de contenu différent, Claude Code échoue la requête avec une erreur nommant ce type, ce qui signifie qu'une [passerelle ou un proxy transforme la réponse](/docs/fr/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Configurez la passerelle pour transférer l'en-tête `Content-Type` et le corps inmodifiés plutôt que de définir cette variable. Nécessite Claude Code v2.1.208 ou ultérieur |

252| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Définissez sur `1` pour arrêter les commandes shell d'arrière-plan en cours d'exécution d'une [session d'arrière-plan](/docs/fr/agent-view), les flux de travail dynamiques, et, à partir de v2.1.198, les sous-agents d'arrière-plan lorsque le [superviseur](/docs/fr/agent-view#the-supervisor-process) arrête, redémarre ou met à jour le processus de cette session, au lieu de les remettre au processus suivant de la session. Affecte uniquement cette remise : la mise en arrière-plan d'une session avec `←` ou [`/background`](/docs/fr/agent-view#from-inside-a-session) porte toujours le travail en vol, et `CLAUDE_DISABLE_ADOPT` désactive les deux. Nécessite Claude Code v2.1.196 ou ultérieur |252| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Définissez sur `1` pour arrêter les commandes shell d'arrière-plan en cours d'exécution d'une [session d'arrière-plan](/docs/fr/agent-view), les flux de travail dynamiques, et, à partir de v2.1.198, les sous-agents d'arrière-plan lorsque le [superviseur](/docs/fr/agent-view#the-supervisor-process) arrête, redémarre ou met à jour le processus de cette session, au lieu de les remettre au processus suivant de la session. Affecte uniquement cette remise : la mise en arrière-plan d'une session avec `←` ou [`/background`](/docs/fr/agent-view#from-inside-a-session) porte toujours le travail en vol, et `CLAUDE_DISABLE_ADOPT` désactive les deux. Nécessite Claude Code v2.1.196 ou ultérieur |

253| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Définissez sur `1` pour empêcher Claude Code de terminer les [commandes shell d'arrière-plan](/docs/fr/interactive-mode#background-bash-commands) lorsque le système d'exploitation signale une pression mémoire. Par défaut, sur macOS et Linux, Claude Code termine un shell d'arrière-plan démarré dans la session principale sur un signal de pression mémoire une fois que la session a été inactive pendant 30 minutes et qu'aucun tour ou sous-agent n'est en cours d'exécution. Windows n'a pas de signal de pression mémoire, donc cette variable n'a aucun effet là-bas. Nécessite Claude Code v2.1.193 ou ultérieur |253| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Définissez sur `1` pour empêcher Claude Code de terminer les [commandes shell d'arrière-plan](/docs/fr/interactive-mode#background-bash-commands) sous la pression de la mémoire. Par défaut, sur macOS et Linux, Claude Code termine les shells d'arrière-plan lorsque le système d'exploitation signale une pression mémoire critique et que la session a été inactive pendant 30 minutes sans tour ni sous-agent en cours d'exécution. Windows n'a pas de signal de pression mémoire, donc cette variable n'a aucun effet là. Nécessite Claude Code v2.1.193 ou ultérieur |

254| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Définissez sur `1` pour désactiver les [compétences](/docs/fr/skills) et les flux de travail inclus avec Claude Code : les compétences et flux de travail groupés sont supprimés entièrement, tandis que les commandes intégrées comme `/init` restent tapables mais sont masquées au modèle. `/doctor` reste tapable comme les commandes intégrées ; masquez-le avec `DISABLE_DOCTOR_COMMAND` à la place. Les compétences des plugins, `.claude/skills/` et `.claude/commands/` ne sont pas affectées. Équivalent au paramètre [`disableBundledSkills`](/docs/fr/settings-reference#disablebundledskills) |254| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Définissez sur `1` pour désactiver les [compétences](/docs/fr/skills) et les flux de travail inclus avec Claude Code : les compétences et flux de travail groupés sont supprimés entièrement, tandis que les commandes intégrées comme `/init` restent tapables mais sont masquées au modèle. `/doctor` reste tapable comme les commandes intégrées ; masquez-le avec `DISABLE_DOCTOR_COMMAND` à la place. Les compétences des plugins, `.claude/skills/` et `.claude/commands/` ne sont pas affectées. Équivalent au paramètre [`disableBundledSkills`](/docs/fr/settings-reference#disablebundledskills) |

255| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Définissez sur `1` pour garder les [outils du navigateur Claude in Chrome](/docs/fr/chrome) disponibles tout en omettant la section Chrome du prompt système et la [compétence groupée](/docs/fr/skills#bundled-skills) `/claude-in-chrome`. Pour les hôtes qui intègrent Claude Code et fournissent leurs propres conseils de navigateur. Nécessite Claude Code v2.1.257 ou ultérieur |255| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Définissez sur `1` pour garder les [outils du navigateur Claude in Chrome](/docs/fr/chrome) disponibles tout en omettant la section Chrome de l'invite système et la [compétence groupée](/docs/fr/skills#bundled-skills) `/claude-in-chrome`. Pour les hôtes qui intègrent Claude Code et fournissent leurs propres conseils de navigateur. Nécessite Claude Code v2.1.257 ou ultérieur |

256| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Définissez sur `1` pour empêcher le chargement de tous les fichiers mémoire CLAUDE.md dans le contexte, y compris les fichiers mémoire utilisateur, projet et automatique |256| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Définissez sur `1` pour empêcher le chargement de tous les fichiers mémoire CLAUDE.md dans le contexte, y compris les fichiers mémoire utilisateur, projet et automatique |

257| `CLAUDE_CODE_DISABLE_CRON` | Définissez sur `1` pour désactiver les [tâches programmées](/docs/fr/scheduled-tasks). La compétence `/loop` et les outils cron deviennent indisponibles et toutes les tâches déjà programmées cessent de se déclencher, y compris les tâches qui s'exécutent déjà au milieu d'une session |257| `CLAUDE_CODE_DISABLE_CRON` | Définissez sur `1` pour désactiver les [tâches planifiées](/docs/fr/scheduled-tasks). La compétence `/loop` et les outils cron deviennent indisponibles et toutes les tâches déjà planifiées cessent de se déclencher, y compris les tâches qui s'exécutent déjà au milieu de la session |

258| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | Définissez sur `1` pour désactiver la limite de temps sur les invites de [suppression de chemin critique](/docs/fr/permission-modes#critical-paths). En mode `auto`, Claude Code envoie alors ces suppressions au classificateur à la place, et en mode `bypassPermissions`, l'invite attend votre réponse. Définissez-le dans l'environnement qui lance Claude Code, car Claude Code ignore une copie livrée via un bloc `env` de paramètres. Nécessite Claude Code v2.1.281 ou ultérieur |

258| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Définissez sur `1` pour supprimer les en-têtes de requête `anthropic-beta` spécifiques à Anthropic et les champs de schéma d'outil bêta (comme `defer_loading` et `eager_input_streaming`) des requêtes API. Utilisez ceci lorsqu'une passerelle proxy rejette les requêtes avec des erreurs comme « Unexpected value(s) for the `anthropic-beta` header » ou « Extra inputs are not permitted ». Les champs standard (`name`, `description`, `input_schema`, `cache_control`) sont conservés. [La recherche d'outils MCP](/docs/fr/mcp#scale-with-mcp-tool-search) est désactivée et tous les outils MCP se chargent en amont, même lorsque vous définissez `ENABLE_TOOL_SEARCH`. Sur Claude Code v2.1.227 ou ultérieur, [les paramètres gérés](/docs/fr/managed-settings) peuvent garder la recherche d'outils activée. [Désactiver les capacités de pré-version](/docs/fr/llm-gateway-protocol#disable-pre-release-capabilities) couvre où le remplacement s'applique |259| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Définissez sur `1` pour supprimer les en-têtes de requête `anthropic-beta` spécifiques à Anthropic et les champs de schéma d'outil bêta (comme `defer_loading` et `eager_input_streaming`) des requêtes API. Utilisez ceci lorsqu'une passerelle proxy rejette les requêtes avec des erreurs comme « Unexpected value(s) for the `anthropic-beta` header » ou « Extra inputs are not permitted ». Les champs standard (`name`, `description`, `input_schema`, `cache_control`) sont conservés. [La recherche d'outils MCP](/docs/fr/mcp#scale-with-mcp-tool-search) est désactivée et tous les outils MCP se chargent en amont, même lorsque vous définissez `ENABLE_TOOL_SEARCH`. Sur Claude Code v2.1.227 ou ultérieur, [les paramètres gérés](/docs/fr/managed-settings) peuvent garder la recherche d'outils activée. [Désactiver les capacités de pré-version](/docs/fr/llm-gateway-protocol#disable-pre-release-capabilities) couvre où le remplacement s'applique |

259| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Définissez sur `1` pour désactiver les [sous-agents Explore et Plan intégrés](/docs/fr/sub-agents#built-in-subagents). Claude explore avec ses outils de recherche ou le sous-agent à usage général à la place, et le [mode plan](/docs/fr/permission-modes#analyze-before-you-edit-with-plan-mode) lit les fichiers directement plutôt que de lancer les agents Explore et Plan. Les sous-agents personnalisés nommés `Explore` ou `Plan` ne sont pas affectés. Pour supprimer tous les types de sous-agent intégrés dans le SDK Agent ou le mode non interactif, utilisez `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` à la place. Nécessite Claude Code v2.1.198 ou ultérieur |260| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Définissez sur `1` pour désactiver les [sous-agents Explore et Plan intégrés](/docs/fr/sub-agents#built-in-subagents). Claude explore avec ses outils de recherche ou le sous-agent à usage général à la place, et [le mode plan](/docs/fr/permission-modes#analyze-before-you-edit-with-plan-mode) lit les fichiers directement plutôt que de lancer les agents Explore et Plan. Les sous-agents personnalisés nommés `Explore` ou `Plan` ne sont pas affectés. Pour supprimer tous les types de sous-agents intégrés dans le SDK Agent ou le mode non interactif, utilisez `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` à la place. Nécessite Claude Code v2.1.198 ou ultérieur |

260| `CLAUDE_CODE_DISABLE_FAST_MODE` | Définissez sur `1` pour désactiver le [mode rapide](/docs/fr/fast-mode) |261| `CLAUDE_CODE_DISABLE_FAST_MODE` | Définissez sur `1` pour désactiver le [mode rapide](/docs/fr/fast-mode) |

261| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Définissez sur `1` pour désactiver les sondages de qualité de session « How is Claude doing? ». Les sondages sont également désactivés lorsque `DISABLE_TELEMETRY`, `DO_NOT_TRACK` ou `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` est défini, sauf si `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` se réinscrit. Pour définir un taux d'échantillonnage au lieu de désactiver complètement, utilisez le paramètre [`feedbackSurveyRate`](/docs/fr/settings-reference#feedbacksurveyrate). Voir [Sondages de qualité de session](/docs/fr/data-usage#session-quality-surveys) |262| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Définissez sur `1` pour désactiver les sondages de qualité de session « How is Claude doing? ». Les sondages sont également désactivés lorsque `DISABLE_TELEMETRY`, `DO_NOT_TRACK` ou `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` est défini, sauf si `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` se réinscrit. Pour définir un taux d'échantillonnage au lieu de désactiver complètement, utilisez le paramètre [`feedbackSurveyRate`](/docs/fr/settings-reference#feedbacksurveyrate). Voir [Sondages de qualité de session](/docs/fr/data-usage#session-quality-surveys) |

262| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Définissez sur `1` pour désactiver le [point de contrôle](/docs/fr/checkpointing) de fichier. La commande `/rewind` ne pourra pas restaurer les modifications de code. Remplace le paramètre [`fileCheckpointingEnabled`](/docs/fr/settings-reference#filecheckpointingenabled) |263| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Définissez sur `1` pour désactiver le [point de contrôle](/docs/fr/checkpointing) de fichier. La commande `/rewind` ne pourra pas restaurer les modifications de code. Remplace le paramètre [`fileCheckpointingEnabled`](/docs/fr/settings-reference#filecheckpointingenabled) |

263| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Définissez sur `1` pour supprimer les instructions de flux de travail de commit et PR intégrées et l'instantané d'état git du prompt système de Claude. Utile lors de l'utilisation de vos propres compétences de flux de travail git. Prend la priorité sur le paramètre [`includeGitInstructions`](/docs/fr/settings-reference#includegitinstructions) lorsqu'il est défini |264| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Définissez sur `1` pour supprimer les instructions de flux de travail de commit et PR intégrées et l'instantané d'état git du contexte de Claude. Utile lors de l'utilisation de vos propres compétences de flux de travail git. A la priorité sur le paramètre [`includeGitInstructions`](/docs/fr/settings-reference#includegitinstructions) lorsqu'il est défini |

264| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Définissez sur `1` pour empêcher le remappage automatique d'Opus 4.0 et 4.1 à la version Opus actuelle sur l'API Anthropic. Utilisez lorsque vous souhaitez intentionnellement épingler un modèle plus ancien. Le remappage ne s'exécute pas sur Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry |265| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Définissez sur `1` pour empêcher le remappage automatique d'Opus 4.0 et 4.1 à la version Opus actuelle sur l'API Anthropic. Utilisez lorsque vous souhaitez intentionnellement épingler un modèle plus ancien. Le remappage ne s'exécute pas sur Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry |

265| `CLAUDE_CODE_DISABLE_MOUSE` | Définissez sur `1` pour désactiver le suivi de la souris en [rendu plein écran](/docs/fr/fullscreen). Le défilement au clavier avec `PgUp` et `PgDn` fonctionne toujours. Utilisez ceci pour garder le comportement de copie à la sélection natif de votre terminal |266| `CLAUDE_CODE_DISABLE_MOUSE` | Définissez sur `1` pour désactiver le suivi de la souris en [rendu plein écran](/docs/fr/fullscreen). Le défilement au clavier avec `PgUp` et `PgDn` fonctionne toujours. Utilisez ceci pour garder le comportement de copie à la sélection natif de votre terminal |

266| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Définissez sur `1` pour désactiver la gestion des clics, des glissements et des survols en [rendu plein écran](/docs/fr/fullscreen) tout en gardant le défilement à la molette de la souris. Utilisez ceci lorsque vous souhaitez que le défilement à la molette fonctionne à l'intérieur de Claude Code mais que vous ne souhaitez pas que les clics positionnent le curseur, développent la sortie de l'outil ou ouvrent les liens. `CLAUDE_CODE_DISABLE_MOUSE` prend la priorité lorsque les deux sont définis. Nécessite Claude Code v2.1.195 ou ultérieur |267| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Définissez sur `1` pour désactiver le clic, le glissement et la gestion du survol en [rendu plein écran](/docs/fr/fullscreen) tout en gardant le défilement à la molette de la souris. Utilisez ceci lorsque vous souhaitez que le défilement à la molette fonctionne à l'intérieur de Claude Code mais que vous ne souhaitez pas que les clics positionnent le curseur, développent la sortie de l'outil ou ouvrent les liens. `CLAUDE_CODE_DISABLE_MOUSE` a la priorité lorsque les deux sont définis. Nécessite Claude Code v2.1.195 ou ultérieur |

267| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | Définissez sur `1` pour empêcher Claude Code de relire le [certificat client mTLS et la clé](/docs/fr/network-config#mtls-authentication) lorsqu'une requête API échoue avec une erreur au niveau de la connexion, comme une réinitialisation de connexion ou une erreur de poignée de main TLS. Avec le rechargement désactivé, Claude Code charge les fichiers pivotés uniquement lorsqu'il applique ensuite les paramètres ou au prochain démarrage. Nécessite Claude Code v2.1.232 ou ultérieur |268| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | Définissez sur `1` pour empêcher Claude Code de relire le [certificat client mTLS et la clé](/docs/fr/network-config#mtls-authentication) lorsqu'une requête API échoue avec une erreur au niveau de la connexion, comme une réinitialisation de connexion ou une erreur de poignée de main TLS. Avec le rechargement désactivé, Claude Code charge les fichiers pivotés uniquement lorsqu'il applique ensuite les paramètres ou au prochain démarrage. Nécessite Claude Code v2.1.232 ou ultérieur |

268| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour désactiver le trafic réseau non essentiel : les mises à jour automatiques, la télémétrie, la signalisation des erreurs, la commande `/feedback`, [les commentaires rédigés par Claude](/docs/fr/tools-reference#sendfeedback-tool-behavior), les notes de version, les vérifications du [badge d'état PR et MR](/docs/fr/interactive-mode#pr-review-status) et les vérifications de disponibilité telles que la vérification du [mode rapide](/docs/fr/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways). Il arrête également les [exécutions d'arrière-plan des sources de commande du plugin](/docs/fr/plugin-marketplaces#when-claude-code-re-runs-the-command), qui sont des commandes locales plutôt que du trafic réseau, car elles peuvent déclencher des installations de dépendances. **Définir sur `0` ou `false` désactive toujours ce trafic**, contrairement à la plupart des variables activées/désactivées ; désactivez la variable pour l'autoriser à nouveau. Désactive également la récupération des drapeaux de fonctionnalité, ce qui rend [Remote Control](/docs/fr/remote-control#requirements) et les autres [fonctionnalités qui nécessitent la récupération des drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching) indisponibles. L'installation automatique de la place de marché officielle des plugins n'est pas couverte ; désactivez-la avec `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL`. N'affecte pas la [découverte de modèles de passerelle](/docs/fr/llm-gateway-connect#add-gateway-models-to-the-model-picker), qui a son propre opt-in |269| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour désactiver le trafic réseau non essentiel : les mises à jour automatiques, la télémétrie, la signalisation des erreurs, la commande `/feedback`, [les commentaires rédigés par Claude](/docs/fr/tools-reference#sendfeedback-tool-behavior), les notes de version, les [vérifications du badge d'état PR et MR](/docs/fr/interactive-mode#pr-review-status) et les vérifications de disponibilité telles que la vérification du [mode rapide](/docs/fr/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways). Il arrête également les [exécutions d'arrière-plan des sources de commande du plugin](/docs/fr/plugins/loading#when-a-command-source-re-runs), qui sont des commandes locales plutôt que du trafic réseau, car elles peuvent déclencher des installations de dépendances. **Définir sur `0` ou `false` désactive toujours ce trafic**, contrairement à la plupart des variables activées/désactivées ; supprimez la variable pour l'autoriser à nouveau. Désactive également la récupération des drapeaux de fonctionnalité, ce qui rend [Remote Control](/docs/fr/remote-control#requirements) et les autres [fonctionnalités qui nécessitent la récupération des drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching) indisponibles. L'installation automatique de la place de marché officielle des plugins n'est pas couverte ; désactivez-la avec `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL`. N'affecte pas la [découverte du modèle de passerelle](/docs/fr/llm-gateway-connect#add-gateway-models-to-the-model-picker), qui a son propre opt-in |

269| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Définissez sur `1` pour désactiver le secours non-continu lorsqu'une requête en continu échoue au milieu du flux. Les erreurs de flux continu se propagent à la couche de nouvelle tentative à la place. Utile lorsqu'une passerelle ou une passerelle proxy cause le secours pour produire une exécution d'outil dupliquée |270| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Définissez sur `1` pour désactiver le secours non-continu lorsqu'une requête en continu échoue au milieu du flux. Les erreurs de flux continu se propagent à la couche de nouvelle tentative à la place. Utile lorsqu'une passerelle ou une proxy cause le secours pour produire une exécution d'outil dupliquée |

270| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Définissez sur `1` pour envoyer la notification de bureau de l'outil `PushNotification` même tandis que vous tapez dans ou êtes concentré sur le terminal. Par défaut, l'outil ignore à la fois la notification de bureau et le [push mobile](/docs/fr/remote-control#mobile-push-notifications) lorsqu'il détecte une activité clavier récente ou une concentration du terminal. Cette variable désactive uniquement cette vérification locale, afin que le serveur puisse toujours supprimer le push mobile lorsqu'il détecte que vous êtes actif. Nécessite Claude Code v2.1.193 ou ultérieur |271| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Définissez sur `1` pour envoyer la notification de bureau de l'outil `PushNotification` même pendant que vous tapez dans ou êtes concentré sur le terminal. Par défaut, l'outil ignore à la fois la notification de bureau et le [push mobile](/docs/fr/remote-control#mobile-push-notifications) lorsqu'il détecte une activité clavier récente ou une concentration du terminal. Cette variable désactive uniquement cette vérification locale, afin que le serveur puisse toujours supprimer le push mobile lorsqu'il détecte que vous êtes actif. Nécessite Claude Code v2.1.193 ou ultérieur |

271| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Définissez sur `1` pour désactiver l'enregistrement automatique de la place de marché officielle des plugins. Claude Code lit la variable lorsqu'il est sur le point d'enregistrer la place de marché, généralement lors du premier lancement interactif d'une machine. Si la variable est définie à ce moment, Claude Code ignore l'enregistrement de manière permanente. Désactiver la variable plus tard n'annule pas l'omission. Exécutez `claude plugin marketplace add anthropics/claude-plugins-official` pour enregistrer la place de marché à tout moment |272| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Définissez sur `1` pour désactiver l'enregistrement automatique de la place de marché officielle des plugins. Claude Code lit la variable lorsqu'il est sur le point d'enregistrer la place de marché, généralement lors du premier lancement interactif d'une machine. Si la variable est définie à ce moment, Claude Code ignore l'enregistrement de manière permanente. Supprimer la variable plus tard n'annule pas l'ignorance. Exécutez `claude plugin marketplace add anthropics/claude-plugins-official` pour enregistrer la place de marché à tout moment |

272| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Définissez sur `1` pour empêcher Claude Code d'exécuter vos [crochets de notification pour les requêtes de permission sans réponse](/docs/fr/hooks#notification) dans les sessions où Claude Code les envoie au rappel `canUseTool` du SDK Agent, ce qui est la façon dont Claude Desktop et l'extension VS Code hébergent Claude Code. N'a aucun effet dans les sessions de terminal. Nécessite Claude Code v2.1.233 ou ultérieur |273| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Définissez sur `1` pour empêcher Claude Code d'exécuter vos [crochets de notification pour les demandes de permission sans réponse](/docs/fr/hooks#notification) dans les sessions où Claude Code les envoie au rappel `canUseTool` du SDK Agent, ce qui est la façon dont Claude Desktop et l'extension VS Code hébergent Claude Code. N'a aucun effet dans les sessions de terminal. Nécessite Claude Code v2.1.233 ou ultérieur |

273| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Définissez sur `1` pour ignorer le chargement des compétences à partir du répertoire de compétences gérées à l'échelle du système. Utile pour les sessions de conteneur ou CI qui ne doivent pas charger les compétences provisionnées par l'opérateur |274| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Définissez sur `1` pour ignorer le chargement des compétences à partir du répertoire des compétences gérées à l'échelle du système. Utile pour les sessions de conteneur ou CI qui ne doivent pas charger les compétences provisionnées par l'opérateur |

275| `CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY` | Définissez sur `1` pour désactiver la vérification de l'[outil PowerShell](/docs/fr/tools-reference#powershell-tool) qui refuse les commandes intégrées `cmd` `rd`, `rmdir`, `del` et `erase` sur un [chemin système](/docs/fr/permission-modes#remove-item-in-powershell), comme une racine de lecteur ou votre répertoire personnel. Claude Code ignore cette variable dans un bloc `env` du fichier de paramètres. Nécessite Claude Code v2.1.283 ou ultérieur |

276| `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` | Définissez sur `1` pour désactiver la vérification du [chemin critique](/docs/fr/permission-modes#critical-paths) pour un `rm` récursif dont la cible est entièrement la sortie d'une substitution de commande, comme `rm -rf "$(pwd)"`. Les autres vérifications du chemin critique continuent à s'exécuter. Définissez-le dans l'environnement qui lance Claude Code, car Claude Code ignore une copie livrée via un bloc `env` de paramètres. Nécessite Claude Code v2.1.281 ou ultérieur |

274| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Définissez sur `1` pour désactiver les mises à jour automatiques du titre du terminal en fonction du contexte de la conversation. Cela ignore également la requête de modèle petit/rapide d'arrière-plan qui [génère un titre de session](/docs/fr/sessions#name-your-sessions) |277| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Définissez sur `1` pour désactiver les mises à jour automatiques du titre du terminal en fonction du contexte de la conversation. Cela ignore également la requête de modèle petit/rapide d'arrière-plan qui [génère un titre de session](/docs/fr/sessions#name-your-sessions) |

275| `CLAUDE_CODE_DISABLE_THINKING` | Définissez sur `1` pour omettre complètement le paramètre `thinking` des requêtes API. C'est une option de compatibilité pour les proxies et les passerelles qui rejettent le paramètre. Sur les modèles qui pensent par défaut, omettre le paramètre signifie que le modèle peut toujours penser. Pour désactiver explicitement la [réflexion étendue](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) sur l'API Anthropic, utilisez `MAX_THINKING_TOKENS=0` à la place. Aucune variable ne désactive la réflexion sur Opus 5.5 ni sur les modèles Fable, qui ne peuvent pas avoir la réflexion désactivée. Sur les [fournisseurs tiers](/docs/fr/third-party-integrations), `MAX_THINKING_TOKENS=0` omet également le paramètre, afin que les deux variables se comportent de la même manière là-bas |278| `CLAUDE_CODE_DISABLE_THINKING` | Définissez sur `1` pour omettre complètement le paramètre `thinking` des requêtes API. C'est une option de compatibilité pour les proxies et les passerelles qui rejettent le paramètre. Sur les modèles qui pensent par défaut, omettre le paramètre signifie que le modèle peut toujours penser. Pour désactiver explicitement la [réflexion étendue](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) sur l'API Anthropic, utilisez `MAX_THINKING_TOKENS=0` à la place. Aucune variable ne désactive la réflexion sur Opus 5.5, Sonnet 5.5 ou les modèles Fable, qui ne peuvent pas avoir la réflexion désactivée. Sur [les fournisseurs tiers](/docs/fr/third-party-integrations), `MAX_THINKING_TOKENS=0` omet également le paramètre, afin que les deux variables se comportent de la même manière là |

276| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Définissez sur `1` pour ignorer la [compaction automatique](/docs/fr/costs#reduce-token-usage) proactive lorsque Claude Code ne reconnaît pas l'ID du modèle, comme un alias de [passerelle LLM](/docs/fr/llm-gateway). Sans cette variable, Claude Code compacte à la fenêtre de contexte qu'il suppose pour l'ID. `CLAUDE_CODE_MAX_CONTEXT_TOKENS` peut corriger la fenêtre supposée à la place ; voir [Corriger la fenêtre pour un ID de modèle de passerelle ou personnalisé](/docs/fr/model-config#correct-the-window-for-a-gateway-or-custom-model-id) pour savoir quand chaque variable s'applique. Nécessite Claude Code v2.1.223 ou ultérieur |279| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Définissez sur `1` pour ignorer la [compaction automatique](/docs/fr/costs#reduce-token-usage) proactive lorsque Claude Code ne reconnaît pas l'ID du modèle, comme un alias de [passerelle LLM](/docs/fr/llm-gateway). Sans cette variable, Claude Code compacte à la fenêtre de contexte qu'il suppose pour l'ID. `CLAUDE_CODE_MAX_CONTEXT_TOKENS` peut corriger la fenêtre supposée à la place ; voir [Corriger la fenêtre pour un ID de modèle de passerelle ou personnalisé](/docs/fr/model-config#correct-the-window-for-a-gateway-or-custom-model-id) pour savoir quand chaque variable s'applique. Nécessite Claude Code v2.1.223 ou ultérieur |

277| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Définissez sur `1` pour désactiver le défilement virtuel en [rendu plein écran](/docs/fr/fullscreen) et rendre chaque message dans la transcription. Utilisez ceci si le défilement en mode plein écran affiche des régions vierges où les messages doivent apparaître |280| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Définissez sur `1` pour désactiver le défilement virtuel en [rendu plein écran](/docs/fr/fullscreen) et afficher chaque message dans la transcription. Utilisez ceci si le défilement en mode plein écran affiche des régions vierges où les messages doivent apparaître |

278| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Définissez sur `1` pour démarrer les commandes de l'[outil PowerShell](/docs/fr/tools-reference#powershell-tool) sur Windows directement au lieu de via le lanceur `cmd.exe`. Par défaut, le lanceur permet à une commande PowerShell [s'exécutant en arrière-plan](/docs/fr/tools-reference#background-commands) de [se reporter au processus suivant de la session](/docs/fr/agent-view#the-supervisor-process), par exemple lorsque vous [mettez la session en arrière-plan](/docs/fr/agent-view#from-inside-a-session). Si vous définissez la variable, une commande PowerShell mise en arrière-plan s'arrête lorsque le processus de la session se termine. Les commandes Bash ne sont pas affectées. Nécessite Claude Code v2.1.269 ou ultérieur |281| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Définissez sur `1` pour démarrer les commandes de l'[outil PowerShell](/docs/fr/tools-reference#powershell-tool) sur Windows directement au lieu de via le lanceur `cmd.exe`. Par défaut, le lanceur permet à une commande PowerShell [s'exécutant en arrière-plan](/docs/fr/tools-reference#background-commands) de [se reporter au processus suivant de la session](/docs/fr/agent-view#the-supervisor-process), par exemple lorsque vous [mettez la session en arrière-plan](/docs/fr/agent-view#from-inside-a-session). Si vous définissez la variable, une commande PowerShell mise en arrière-plan s'arrête lorsque le processus de la session se termine. Les commandes Bash ne sont pas affectées. Nécessite Claude Code v2.1.269 ou ultérieur |

279| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Définissez sur `1` pour désactiver les [flux de travail](/docs/fr/workflows#turn-workflows-off). Équivalent au paramètre [`disableWorkflows`](/docs/fr/settings-reference#disableworkflows) |282| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Définissez sur `1` pour désactiver les [flux de travail](/docs/fr/workflows#turn-workflows-off). Équivalent au paramètre [`disableWorkflows`](/docs/fr/settings-reference#disableworkflows) |

280| `CLAUDE_CODE_EFFORT_LEVEL` | Définissez le niveau d'effort pour les modèles pris en charge. Valeurs : `low`, `medium`, `high`, `xhigh`, `max` ou `auto` pour utiliser la valeur par défaut du modèle. Les niveaux disponibles dépendent du modèle. Prend la priorité sur `--effort`, `/effort` et les paramètres `modelSettings` et `effortLevel`. Un plafond [`maxEffortLevel`](/docs/fr/settings-reference#maxeffortlevel) s'applique toujours. Voir [Ajuster le niveau d'effort](/docs/fr/model-config#adjust-effort-level) |283| `CLAUDE_CODE_EFFORT_LEVEL` | Définissez le niveau d'effort pour les modèles pris en charge. Valeurs : `low`, `medium`, `high`, `xhigh`, `max` ou `auto` pour utiliser la valeur par défaut du modèle. Les niveaux disponibles dépendent du modèle. A la priorité sur `--effort`, `/effort` et les paramètres `modelSettings` et `effortLevel`. Un plafond [`maxEffortLevel`](/docs/fr/settings-reference#maxeffortlevel) s'applique toujours. Voir [Ajuster le niveau d'effort](/docs/fr/model-config#adjust-effort-level) |

281| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Accepté pour la compatibilité avec les versions antérieures et n'a aucun effet. Le mode auto est disponible par défaut sur chaque fournisseur, y compris Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry et les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) signées. Dans v2.1.158 à v2.1.206, définir ceci sur `1` était nécessaire pour rendre le [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) disponible sur ces fournisseurs |284| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Accepté pour la compatibilité avec les versions antérieures et n'a aucun effet. Le mode auto est disponible par défaut sur chaque fournisseur, y compris Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry et les sessions de passerelle [Claude apps](/docs/fr/claude-apps-gateway) signées. Dans v2.1.158 à v2.1.206, définir ceci sur `1` était nécessaire pour rendre le [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) disponible sur ces fournisseurs |

282| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Remplacez la disponibilité du [récapitulatif de session](/docs/fr/interactive-mode#session-recap). Définissez sur `0` pour forcer les récapitulatifs désactivés quel que soit le basculement `/config`. Définissez sur `1` pour forcer les récapitulatifs activés lorsque [`awaySummaryEnabled`](/docs/fr/settings-reference#awaysummaryenabled) est `false`. Prend la priorité sur le paramètre et le basculement `/config` |285| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Remplacez la disponibilité du [récapitulatif de session](/docs/fr/interactive-mode#session-recap). Définissez sur `0` pour forcer les récapitulatifs désactivés quel que soit le basculement `/config`. Définissez sur `1` pour forcer les récapitulatifs activés lorsque [`awaySummaryEnabled`](/docs/fr/settings-reference#awaysummaryenabled) est `false`. A la priorité sur le paramètre et le basculement `/config` |

283| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Définissez sur `1` pour actualiser l'état du plugin aux limites de tour en [mode non interactif](/docs/fr/headless) après la fin d'une installation d'arrière-plan. Désactivé par défaut car l'actualisation modifie le prompt système au milieu de la session, ce qui invalide la [mise en cache du prompt](/docs/fr/prompt-caching) pour ce tour |286| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Définissez sur `1` pour actualiser l'état du plugin aux limites de tour en [mode non interactif](/docs/fr/headless) après la fin d'une installation d'arrière-plan. Désactivé par défaut car l'actualisation change l'invite système au milieu de la session, ce qui invalide la [mise en cache des invites](/docs/fr/prompt-caching) pour ce tour |

284| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Définissez sur `1` pour router le sondage de qualité de session « How is Claude doing? » vers votre propre [collecteur OpenTelemetry](/docs/fr/monitoring-usage) lorsque le trafic non essentiel lié à Anthropic est bloqué. Les évaluations du sondage sont émises uniquement en tant qu'événements OTEL vers votre collecteur configuré. Aucune donnée de sondage n'est envoyée à Anthropic dans ce mode. S'applique lorsque `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, `DISABLE_TELEMETRY` ou `DO_NOT_TRACK` est défini, et n'a aucun effet sinon. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` et la politique de commentaires des produits de l'organisation prennent la priorité |287| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Définissez sur `1` pour router le sondage de qualité de session « How is Claude doing? » vers votre propre [collecteur OpenTelemetry](/docs/fr/monitoring-usage) lorsque le trafic non essentiel lié à Anthropic est bloqué. Les évaluations du sondage sont émises uniquement en tant qu'événements OTEL vers votre collecteur configuré. Aucune donnée de sondage n'est envoyée à Anthropic dans ce mode. S'applique lorsque `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, `DISABLE_TELEMETRY` ou `DO_NOT_TRACK` est défini, et n'a aucun effet sinon. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` et la politique de commentaires du produit de l'organisation ont la priorité |

285| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | Contrôle si les entrées d'appel d'outil se transmettent depuis l'API au fur et à mesure que Claude les génère. Avec ceci désactivé, une grande entrée d'outil comme une longue écriture de fichier n'arrive que après que Claude ait fini de la générer, ce qui peut sembler qu'elle se bloque. Activé par défaut sur l'API Anthropic. Sur Amazon Bedrock et Google Cloud's Agent Platform, activé par modèle où le conteneur déployé le supporte. Définissez sur `0` pour refuser. Définissez sur `1` pour forcer l'activation lors du routage via un proxy via `ANTHROPIC_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL` ou `ANTHROPIC_BEDROCK_BASE_URL`. Désactivé par défaut sur Microsoft Foundry et les connexions de [passerelle](/docs/fr/llm-gateway) |288| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | Contrôle si les entrées d'appel d'outil se transmettent depuis l'API au fur et à mesure que Claude les génère. Avec ceci désactivé, une grande entrée d'outil comme une longue écriture de fichier n'arrive qu'après que Claude ait fini de la générer, ce qui peut sembler qu'elle se bloque. Activé par défaut sur l'API Anthropic. Sur Amazon Bedrock et Google Cloud's Agent Platform, activé par modèle où le conteneur déployé le supporte. Définissez sur `0` pour refuser. Définissez sur `1` pour forcer l'activation lors du routage via un proxy via `ANTHROPIC_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL` ou `ANTHROPIC_BEDROCK_BASE_URL`. Désactivé par défaut sur Microsoft Foundry et les connexions [passerelle](/docs/fr/llm-gateway) |

286| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Définissez sur `1` pour remplir le sélecteur `/model` à partir du point de terminaison `/v1/models` de votre passerelle lorsque `ANTHROPIC_BASE_URL` pointe vers une passerelle compatible Anthropic comme LiteLLM, Kong ou un proxy interne. Désactivé par défaut car les passerelles soutenues par une clé API partagée afficheraient autrement à chaque utilisateur chaque modèle auquel la clé peut accéder. Les modèles découverts sont toujours filtrés par une liste d'autorisation [`availableModels`](/docs/fr/settings-reference#availablemodels) que la session reçoit ; livrez la liste via [MDM ou un fichier de paramètres gérés](/docs/fr/managed-settings#delivery-mechanisms), car [la livraison gérée par le serveur n'est pas disponible sur les configurations de passerelle](/docs/fr/server-managed-settings#platform-availability) |289| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Définissez sur `1` pour remplir le sélecteur `/model` à partir du point de terminaison `/v1/models` de votre passerelle lorsque `ANTHROPIC_BASE_URL` pointe vers une passerelle compatible Anthropic comme LiteLLM, Kong ou un proxy interne. Désactivé par défaut car les passerelles soutenues par une clé API partagée afficheraient autrement à chaque utilisateur chaque modèle auquel la clé peut accéder. Les modèles découverts sont toujours filtrés par une liste d'autorisation [`availableModels`](/docs/fr/settings-reference#availablemodels) que la session reçoit ; livrez la liste via [MDM ou un fichier de paramètres gérés](/docs/fr/managed-settings#delivery-mechanisms), car [la livraison gérée par le serveur n'est pas disponible sur les configurations de passerelle](/docs/fr/server-managed-settings#platform-availability) |

287| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Supprimé dans v2.1.142, lorsque la valeur par défaut du [mode rapide](/docs/fr/fast-mode) a changé d'Opus 4.6 à Opus 4.7 |290| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Supprimé dans v2.1.142, lorsque la valeur par défaut du [mode rapide](/docs/fr/fast-mode) a été déplacée d'Opus 4.6 à Opus 4.7 |

288| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Définissez sur `false` pour désactiver les suggestions de prompt, les prédictions grisées qui apparaissent dans votre entrée de prompt. Prend la priorité sur le paramètre [`promptSuggestionEnabled`](/docs/fr/settings-reference#promptsuggestionenabled), qui est ce que le basculement **Prompt suggestions** dans `/config` écrit. Claude Code [met également en pause les suggestions tandis que votre compte est proche ou à sa limite d'utilisation](/docs/fr/interactive-mode#when-claude-code-skips-suggestions). Définissez sur `true` pour les garder activées jusqu'à ce que vous atteigniez la limite. Nécessite Claude Code v2.1.238 ou ultérieur. Voir [Suggestions de prompt](/docs/fr/interactive-mode#prompt-suggestions) |291| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Définissez sur `false` pour désactiver les suggestions d'invite, les prédictions grisées qui apparaissent dans votre entrée d'invite. A la priorité sur le paramètre [`promptSuggestionEnabled`](/docs/fr/settings-reference#promptsuggestionenabled), qui est ce que le basculement **Prompt suggestions** dans `/config` écrit. Claude Code [met également en pause les suggestions tandis que votre compte est proche ou à sa limite d'utilisation](/docs/fr/interactive-mode#when-claude-code-skips-suggestions). Définissez sur `true` pour les garder activées jusqu'à ce que vous atteigniez la limite. Nécessite Claude Code v2.1.238 ou ultérieur. Voir [Suggestions d'invite](/docs/fr/interactive-mode#prompt-suggestions) |

289| `CLAUDE_CODE_ENABLE_TASKS` | Sélectionne les outils de suivi des tâches que Claude Code fournit dans [les sessions qui les ont](/docs/fr/tools-reference#task-tool-availability). Par défaut, Claude Code fournit les outils Task `TaskCreate`, `TaskUpdate`, `TaskGet` et `TaskList`. Définissez sur `0` pour obtenir l'outil `TodoWrite` hérité à la place. Voir [Liste des tâches](/docs/fr/interactive-mode#task-list) |292| `CLAUDE_CODE_ENABLE_TASKS` | Sélectionne les outils de suivi des tâches que Claude Code fournit dans [les sessions qui les ont](/docs/fr/tools-reference#task-tool-availability). Par défaut, Claude Code fournit les outils Task `TaskCreate`, `TaskUpdate`, `TaskGet` et `TaskList`. Définissez sur `0` pour obtenir l'outil `TodoWrite` hérité à la place. Voir [Liste des tâches](/docs/fr/interactive-mode#task-list) |

290| `CLAUDE_CODE_ENABLE_TELEMETRY` | Définissez sur `1` pour activer la collecte de données OpenTelemetry pour les métriques et la journalisation. Requis avant de configurer les exportateurs OTel. Voir [Surveillance](/docs/fr/monitoring-usage) |293| `CLAUDE_CODE_ENABLE_TELEMETRY` | Définissez sur `1` pour activer la collecte de données OpenTelemetry pour les métriques et la journalisation. Requis avant de configurer les exportateurs OTel. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env). Voir [Surveillance](/docs/fr/monitoring-usage) |

291| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | Définissez sur `1` pour obtenir les outils de suivi des tâches sur chaque modèle. Sans cela, Claude Code les fournit par défaut uniquement sur les modèles énumérés sous [Disponibilité de l'outil Task](/docs/fr/tools-reference#task-tool-availability). `CLAUDE_CODE_ENABLE_TASKS` sélectionne toujours les outils Task ou `TodoWrite`. Nécessite Claude Code v2.1.233 ou ultérieur |294| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | Définissez sur `1` pour obtenir les outils de suivi des tâches sur chaque modèle. Sans cela, Claude Code les fournit par défaut uniquement sur les modèles énumérés sous [Disponibilité de l'outil Task](/docs/fr/tools-reference#task-tool-availability). `CLAUDE_CODE_ENABLE_TASKS` sélectionne toujours les outils Task ou `TodoWrite`. Nécessite Claude Code v2.1.233 ou ultérieur |

292| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Temps en millisecondes à attendre après que la boucle de requête devienne inactive avant de quitter automatiquement. Utile pour les flux de travail automatisés et les scripts utilisant le mode SDK |295| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Temps en millisecondes à attendre après que la boucle de requête devienne inactive avant de quitter automatiquement. Utile pour les flux de travail automatisés et les scripts utilisant le mode SDK |

293| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Définissez sur `1` pour activer les [équipes d'agents](/docs/fr/agent-teams). Les équipes d'agents sont expérimentales et désactivées par défaut |296| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Définissez sur `1` pour activer les [équipes d'agents](/docs/fr/agent-teams). Les équipes d'agents sont expérimentales et désactivées par défaut |

294| `CLAUDE_CODE_EXTRA_BODY` | Objet JSON à fusionner au niveau supérieur de chaque corps de requête API. Utile pour transmettre les paramètres spécifiques au fournisseur que Claude Code n'expose pas directement. Une valeur exportée dans votre shell s'applique également aux [sessions d'arrière-plan](/docs/fr/agent-view) que vous distribuez avec `claude agents` ou `--bg`. Avant v2.1.206, les sessions d'arrière-plan ignoraient une valeur exportée par le shell et utilisaient la copie que le processus superviseur d'arrière-plan héritait |297| `CLAUDE_CODE_EXTRA_BODY` | Objet JSON à fusionner au niveau supérieur de chaque corps de requête API. Utile pour transmettre des paramètres spécifiques au fournisseur que Claude Code n'expose pas directement. Une valeur exportée dans votre shell s'applique également aux [sessions d'arrière-plan](/docs/fr/agent-view) que vous distribuez avec `claude agents` ou `--bg`. Avant v2.1.206, les sessions d'arrière-plan ignoraient une valeur exportée par le shell et utilisaient la copie que le processus superviseur d'arrière-plan héritait |

295| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Remplacez la limite de jetons par défaut pour les lectures de fichiers. Utile lorsque vous devez lire des fichiers plus volumineux en entier |298| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Remplacez la limite de jetons par défaut pour les lectures de fichiers. Utile lorsque vous devez lire des fichiers plus volumineux en entier |

296| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Définissez sur `1` pour forcer la persistance de la transcription, l'historique des prompts et l'enregistrement `claude agents` même lorsque ce `claude` a été lancé de l'intérieur d'une autre session Claude Code. Utilisez lorsqu'une valeur `CLAUDE_CODE_CHILD_SESSION` héritée, par exemple d'une session `screen` ou d'un lanceur d'arrière-plan d'abord démarré par l'outil Bash de Claude Code, cause une session de niveau supérieur authentique à être mal classée comme imbriquée. À partir de v2.1.178, Claude Code détecte automatiquement le cas tmux et ignore le marqueur hérité, afin que tmux n'ait plus besoin de cette variable. Également honoré sur v2.1.169 et antérieur ; n'a aucun effet sur v2.1.170 et v2.1.171, où la détection de session imbriquée qu'il remplace a été supprimée |299| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Définissez sur `1` pour forcer la persistance de la transcription, l'historique des invites et l'enregistrement `claude agents` même lorsque ce `claude` a été lancé de l'intérieur d'une autre session Claude Code. Utilisez lorsqu'une valeur `CLAUDE_CODE_CHILD_SESSION` héritée, par exemple d'une session `screen` ou d'un lanceur d'arrière-plan d'abord démarré par l'outil Bash de Claude Code, cause une session de niveau supérieur authentique à être mal classée comme imbriquée. À partir de v2.1.178, Claude Code détecte automatiquement le cas tmux et ignore le marqueur hérité, afin que tmux n'ait plus besoin de cette variable. Également honoré sur v2.1.169 et antérieur ; n'a aucun effet sur v2.1.170 et v2.1.171, où la détection de session imbriquée qu'il remplace a été supprimée |

297| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Définissez sur `1` pour forcer le rendu du barré pour `~~text~~` dans les réponses de Claude lorsque votre terminal le supporte mais n'est pas détecté automatiquement, par exemple sur SSH sans `TERM_PROGRAM` transféré. Sans cela, les terminaux non détectés affichent les marqueurs littéraux `~~` au lieu de rendre le texte comme barré. Nécessite Claude Code v2.1.186 ou ultérieur |300| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Définissez sur `1` pour forcer le rendu du barré pour `~~text~~` dans les réponses de Claude lorsque votre terminal le supporte mais n'est pas détecté automatiquement, par exemple sur SSH sans `TERM_PROGRAM` transféré. Sans cela, les terminaux non détectés affichent les marqueurs littéraux `~~` au lieu de rendre le texte comme barré. Nécessite Claude Code v2.1.186 ou ultérieur |

298| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Définissez sur `1` pour forcer l'activation du mode privé DEC 2026 [sortie synchronisée](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) lorsque votre terminal le supporte mais n'est pas détecté automatiquement. Utile pour les émulateurs comme `eat` d'Emacs qui implémentent BSU/ESU mais ne répondent pas à la sonde de capacité. N'a aucun effet sous tmux. Contrairement à `CLAUDE_CODE_NO_FLICKER`, qui bascule vers le [rendu plein écran](/docs/fr/fullscreen), cela ne change pas le rendu |301| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Définissez sur `1` pour forcer l'activation du mode privé DEC 2026 [sortie synchronisée](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) lorsque votre terminal le supporte mais n'est pas détecté automatiquement. Utile pour les émulateurs comme Emacs `eat` qui implémentent BSU/ESU mais ne répondent pas à la sonde de capacité. N'a aucun effet sous tmux. Contrairement à `CLAUDE_CODE_NO_FLICKER`, qui bascule vers le [rendu plein écran](/docs/fr/fullscreen), cela ne change pas le rendu |

299| `CLAUDE_CODE_FORK_SUBAGENT` | Contrôle le [mode fork](/docs/fr/sub-agents#turn-fork-mode-on-or-off), qui permet à Claude de générer des [sous-agents forked](/docs/fr/sub-agents#fork-the-current-conversation) elle-même et est activé par défaut uniquement dans les sessions interactives. Définissez sur `1` pour l'activer dans `claude -p` et le SDK Agent également, ou `0` pour le désactiver dans tous les types de session. Vous pouvez exécuter `/subtask` que le mode fork soit activé ou non. La valeur par défaut interactive nécessite Claude Code v2.1.232 ou ultérieur ; sur les versions antérieures, définissez la variable sur `1` pour activer le mode fork |302| `CLAUDE_CODE_FORK_SUBAGENT` | Contrôle le [mode fork](/docs/fr/sub-agents#turn-fork-mode-on-or-off), qui permet à Claude de générer des [sous-agents forqués](/docs/fr/sub-agents#fork-the-current-conversation) lui-même et est activé par défaut uniquement dans les sessions interactives. Définissez sur `1` pour l'activer dans `claude -p` et le SDK Agent également, ou `0` pour le désactiver dans tous les types de session. Vous pouvez exécuter `/subtask` que le mode fork soit activé ou non. La valeur par défaut interactive nécessite Claude Code v2.1.232 ou ultérieur ; sur les versions antérieures, définissez la variable sur `1` pour activer le mode fork |

300| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | Définissez sur `1` pour émettre les blocs de texte et de réflexion du [sous-agent](/docs/fr/sub-agents) dans la sortie `claude -p --output-format stream-json`, le même comportement que le [drapeau `--forward-subagent-text`](/docs/fr/cli-reference#cli-flags). Utilisez la variable lorsqu'un harnais invoque `claude` et ne peut pas transmettre le drapeau lui-même. Contrairement au drapeau, qui quitte avec une erreur en dehors du mode non interactif avec la sortie stream-json, la variable est ignorée là-bas afin que les invocations imbriquées continuent de fonctionner lorsqu'elle est définie au niveau du processus. Nécessite Claude Code v2.1.211 ou ultérieur |303| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | Définissez sur `1` pour émettre les blocs de texte et de réflexion du [sous-agent](/docs/fr/sub-agents) dans la sortie `claude -p --output-format stream-json`, le même comportement que le [drapeau `--forward-subagent-text`](/docs/fr/cli-reference#cli-flags). Utilisez la variable lorsqu'un harnais invoque `claude` et ne peut pas transmettre le drapeau lui-même. Contrairement au drapeau, qui quitte avec une erreur en dehors du mode non interactif avec la sortie stream-json, la variable est ignorée là afin que les invocations imbriquées continuent à fonctionner lorsqu'elle est définie au niveau du processus. Nécessite Claude Code v2.1.211 ou ultérieur |

301| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | Définissez sur `1` pour envoyer les [en-têtes d'indice de passerelle](/docs/fr/llm-gateway-protocol#gateway-hint-headers), comme `x-claude-code-request-class` et `x-claude-code-compaction`, sur un proxy personnalisé ou un fournisseur tiers comme Amazon Bedrock ou Claude Platform on AWS. Définissez sur `0` pour arrêter de les envoyer sur chaque connexion, y compris une connexion directe à l'API Anthropic, où Claude Code les envoie par défaut. Nécessite Claude Code v2.1.273 ou ultérieur |304| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | Définissez sur `1` pour envoyer les [en-têtes d'indice de passerelle](/docs/fr/llm-gateway-protocol#gateway-hint-headers), comme `x-claude-code-request-class` et `x-claude-code-compaction`, sur un proxy personnalisé ou un fournisseur tiers comme Amazon Bedrock ou Claude Platform on AWS. Définissez sur `0` pour arrêter de les envoyer sur chaque connexion, y compris une connexion directe à l'API Anthropic, où Claude Code les envoie par défaut. Nécessite Claude Code v2.1.273 ou ultérieur |

302| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | Délai d'expiration en millisecondes pour la requête de [découverte de modèles de passerelle](/docs/fr/llm-gateway-protocol#model-discovery) que `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` active (par défaut : `3000`). Augmentez-le lorsque votre passerelle a besoin de plus de trois secondes pour répondre à `/v1/models` au démarrage. Accepte uniquement des chiffres simples ; `0`, les valeurs négatives et les autres orthographes conservent la valeur par défaut. Nécessite Claude Code v2.1.269 ou ultérieur |305| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | Délai d'expiration en millisecondes pour la requête de [découverte du modèle de passerelle](/docs/fr/llm-gateway-protocol#model-discovery) que `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` active (par défaut : `3000`). Augmentez-le lorsque votre passerelle a besoin de plus de trois secondes pour répondre à `/v1/models` au démarrage. Accepte uniquement les chiffres simples ; `0`, les valeurs négatives et les autres orthographes conservent la valeur par défaut. Nécessite Claude Code v2.1.269 ou ultérieur |

303| `CLAUDE_CODE_GIT_BASH_PATH` | Windows uniquement : chemin d'accès à l'exécutable Git Bash (`bash.exe`). Utilisez lorsque Git Bash est installé mais pas dans votre PATH. Si le chemin n'existe pas ou que le fichier n'est pas nommé `bash.exe`, `sh.exe`, `bash` ou `sh`, Claude Code ignore la variable et détecte automatiquement Git Bash comme s'il était non défini, en enregistrant un avertissement visible avec `--debug`. Avant v2.1.219, Claude Code quittait au démarrage lorsque le chemin n'existait pas et utilisait n'importe quel fichier existant comme shell sans vérifier qu'il s'agissait de bash ou sh. Voir [Configuration Windows](/docs/fr/setup#set-up-on-windows) |306| `CLAUDE_CODE_GIT_BASH_PATH` | Windows uniquement : chemin d'accès à l'exécutable Git Bash (`bash.exe`). Utilisez lorsque Git Bash est installé mais pas dans votre PATH. Si le chemin n'existe pas ou que le fichier n'est pas nommé `bash.exe`, `sh.exe`, `bash` ou `sh`, Claude Code ignore la variable et détecte automatiquement Git Bash comme s'il était non défini, en enregistrant un avertissement visible avec `--debug`. Avant v2.1.219, Claude Code quittait au démarrage lorsque le chemin n'existait pas et utilisait n'importe quel fichier existant comme shell sans vérifier qu'il s'agissait de bash ou sh. Voir [Configuration Windows](/docs/fr/setup#set-up-on-windows) |

304| `CLAUDE_CODE_GLOB_HIDDEN` | Définissez sur `false` pour exclure les fichiers pointillés des résultats lorsque Claude invoque l'[outil Glob](/docs/fr/tools-reference#glob-tool-behavior). Inclus par défaut. N'affecte pas l'autocomplétion de fichier `@`, `ls`, Grep ou Read |307| `CLAUDE_CODE_GLOB_HIDDEN` | Définissez sur `false` pour exclure les fichiers pointillés des résultats lorsque Claude invoque l'[outil Glob](/docs/fr/tools-reference#glob-tool-behavior). Inclus par défaut. N'affecte pas l'autocomplétion de fichier `@`, `ls`, Grep ou Read |

305| `CLAUDE_CODE_GLOB_NO_IGNORE` | Définissez sur `false` pour faire en sorte que l'[outil Glob](/docs/fr/tools-reference#glob-tool-behavior) respecte les modèles `.gitignore`. Par défaut, Glob retourne tous les fichiers correspondants, y compris les fichiers gitignorés. N'affecte pas l'autocomplétion de fichier `@`, qui a son propre paramètre [`respectGitignore`](/docs/fr/settings-reference#respectgitignore) |308| `CLAUDE_CODE_GLOB_NO_IGNORE` | Définissez sur `false` pour faire en sorte que l'[outil Glob](/docs/fr/tools-reference#glob-tool-behavior) respecte les modèles `.gitignore`. Par défaut, Glob retourne tous les fichiers correspondants, y compris les fichiers gitignorés. N'affecte pas l'autocomplétion de fichier `@`, qui a son propre paramètre [`respectGitignore`](/docs/fr/settings-reference#respectgitignore) |


309| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Remplacez l'adresse d'hôte utilisée pour se connecter à l'extension IDE. Par défaut, Claude Code détecte automatiquement l'adresse correcte, y compris le routage WSL vers Windows |312| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Remplacez l'adresse d'hôte utilisée pour se connecter à l'extension IDE. Par défaut, Claude Code détecte automatiquement l'adresse correcte, y compris le routage WSL vers Windows |

310| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Définissez sur `1` pour ignorer l'installation automatique des extensions IDE. Équivalent à la définition de [`autoInstallIdeExtension`](/docs/fr/settings-reference#autoinstallideextension) sur `false` |313| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Définissez sur `1` pour ignorer l'installation automatique des extensions IDE. Équivalent à la définition de [`autoInstallIdeExtension`](/docs/fr/settings-reference#autoinstallideextension) sur `false` |

311| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Définissez sur `1` pour ignorer la validation des entrées du fichier de verrouillage IDE lors de la connexion. Utilisez lorsque la connexion automatique ne trouve pas votre IDE malgré son exécution |314| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Définissez sur `1` pour ignorer la validation des entrées du fichier de verrouillage IDE lors de la connexion. Utilisez lorsque la connexion automatique ne trouve pas votre IDE malgré son exécution |

312| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Combien de [sous-agents](/docs/fr/sub-agents#concurrent-subagent-limit) peuvent s'exécuter dans une session avant que l'outil Agent refuse d'en générer un autre (par défaut : 20). Accepte un nombre entier positif en chiffres simples ; tout le reste est ignoré, afin que la variable puisse ajuster le plafond mais ne peut pas le désactiver. Nécessite Claude Code v2.1.217 ou ultérieur |315| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Combien de [sous-agents](/docs/fr/sub-agents#concurrent-subagent-limit) peuvent s'exécuter dans une session avant que l'outil Agent refuse d'en générer un autre (par défaut : 20). Accepte un nombre entier positif en chiffres simples uniquement ; tout le reste est ignoré, afin que la variable puisse ajuster le plafond mais ne peut pas le désactiver. Nécessite Claude Code v2.1.217 ou ultérieur |

313| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Remplacez la taille de la fenêtre de contexte que Claude Code suppose pour le modèle actif. À partir de v2.1.193, la façon dont elle s'applique dépend de la façon dont Claude Code résout l'ID du modèle ; voir [Corriger la fenêtre pour un ID de modèle de passerelle ou personnalisé](/docs/fr/model-config#correct-the-window-for-a-gateway-or-custom-model-id). Utilisez ceci lors du routage vers un modèle via `ANTHROPIC_BASE_URL` dont la fenêtre de contexte ne correspond pas à la taille intégrée pour son nom |316| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Remplacez la taille de la fenêtre de contexte que Claude Code suppose pour le modèle actif. À partir de v2.1.193, la façon dont elle s'applique dépend de la façon dont Claude Code résout l'ID du modèle ; voir [Corriger la fenêtre pour un ID de modèle de passerelle ou personnalisé](/docs/fr/model-config#correct-the-window-for-a-gateway-or-custom-model-id). Utilisez ceci lors du routage vers un modèle via `ANTHROPIC_BASE_URL` dont la fenêtre de contexte ne correspond pas à la taille intégrée pour son nom |

314| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Longueur maximale en caractères de chaque description d'outil MCP et des instructions de chaque serveur MCP que Claude Code envoie au modèle (par défaut : 2048). Claude Code [tronque le texte plus long](/docs/fr/mcp#for-mcp-server-authors). Accepte un nombre entier positif en chiffres simples. Tout le reste est ignoré et la valeur par défaut s'applique. Nécessite Claude Code v2.1.280 ou ultérieur |317| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Longueur maximale en caractères de chaque description d'outil MCP et des instructions de chaque serveur MCP que Claude Code envoie au modèle (par défaut : 2048). Claude Code [tronque le texte plus long](/docs/fr/mcp#for-mcp-server-authors). Accepte un nombre entier positif en chiffres simples. Tout le reste est ignoré et la valeur par défaut s'applique. Nécessite Claude Code v2.1.280 ou ultérieur |

315| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Définissez le nombre maximum de jetons de sortie pour la plupart des requêtes. Les valeurs par défaut et les plafonds varient selon le modèle ; voir [jetons de sortie max](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison). Claude Code utilise par défaut 32000 pour les ID de modèle qu'il ne reconnaît pas, comme les noms spécifiques à la passerelle, et abaisse les valeurs au-dessus du plafond d'un modèle au plafond. Augmenter cette valeur réduit la fenêtre de contexte effective disponible avant que la [compaction automatique](/docs/fr/costs#reduce-token-usage) ne se déclenche |318| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Définissez le nombre maximum de jetons de sortie pour la plupart des requêtes. Les valeurs par défaut et les plafonds varient selon le modèle ; voir [jetons de sortie max](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison). Claude Code utilise par défaut 32000 pour les ID de modèle qu'il ne reconnaît pas, comme les noms spécifiques à la passerelle, et abaisse les valeurs au-dessus du plafond d'un modèle au plafond. L'augmentation de cette valeur réduit la fenêtre de contexte effective disponible avant le déclenchement de la [compaction automatique](/docs/fr/costs#reduce-token-usage) |

316| `CLAUDE_CODE_MAX_RETRIES` | Remplacez le nombre de fois pour réessayer les requêtes API échouées (par défaut : 10). Limité à 15 à partir de v2.1.186 ; à partir de v2.1.199, `CLAUDE_CODE_RETRY_WATCHDOG` augmente la valeur par défaut et supprime le plafond. Pour les sessions sans surveillance qui doivent attendre les pannes plus longues, définissez `CLAUDE_CODE_RETRY_WATCHDOG` à la place |319| `CLAUDE_CODE_MAX_RETRIES` | Remplacez le nombre de fois pour réessayer les requêtes API échouées (par défaut : 10). Limité à 15 à partir de v2.1.186 ; à partir de v2.1.199, `CLAUDE_CODE_RETRY_WATCHDOG` augmente la valeur par défaut et supprime le plafond. Pour les sessions sans surveillance qui doivent attendre les pannes plus longues, définissez `CLAUDE_CODE_RETRY_WATCHDOG` à la place |

317| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | Supprimé dans v2.1.224 et maintenant un no-op. Auparavant, limitait le nombre total de [sous-agents](/docs/fr/sub-agents) que Claude pouvait générer avec l'outil Agent dans une session (par défaut : 200) ; générer au-delà du plafond échouait avec `Subagent spawn limit reached`. La [limite de sous-agent concurrent](/docs/fr/sub-agents#concurrent-subagent-limit) et la [limite de profondeur](/docs/fr/sub-agents#let-subagents-spawn-their-own-subagents) s'appliquent toujours |320| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | Supprimé dans v2.1.224 et maintenant un no-op. Auparavant, limitait le nombre total de [sous-agents](/docs/fr/sub-agents) que Claude pouvait générer avec l'outil Agent dans une session (par défaut : 200) ; la génération au-delà du plafond échouait avec `Subagent spawn limit reached`. La [limite de sous-agent concurrent](/docs/fr/sub-agents#concurrent-subagent-limit) et la [limite de profondeur](/docs/fr/sub-agents#let-subagents-spawn-their-own-subagents) s'appliquent toujours |

318| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | Nombre de [couches de sous-agent](/docs/fr/sub-agents#let-subagents-spawn-their-own-subagents) autorisées sous la conversation principale (par défaut : 3). À la valeur par défaut, les sous-agents peuvent générer leurs propres sous-agents, et un sous-agent à la troisième couche ne peut pas générer d'autres ; définissez `1` pour désactiver l'imbrication. Dans v2.1.217 à v2.1.218, la valeur par défaut était 1, afin qu'un sous-agent ne puisse pas générer le sien à moins que vous augmentiez la limite ; v2.1.219 a augmenté la valeur par défaut à 3. Accepte un nombre entier positif en chiffres simples ; tout le reste est ignoré, afin que la limite puisse être ajustée mais pas supprimée. Nécessite Claude Code v2.1.217 ou ultérieur |321| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | Nombre de [couches de sous-agents](/docs/fr/sub-agents#let-subagents-spawn-their-own-subagents) autorisées sous la conversation principale (par défaut : 3). À la valeur par défaut, les sous-agents peuvent générer leurs propres sous-agents, et un sous-agent à la troisième couche ne peut pas générer plus loin ; définissez `1` pour désactiver l'imbrication. Dans v2.1.217 à v2.1.218, la valeur par défaut était 1, afin qu'un sous-agent ne puisse pas générer le sien à moins que vous augmentiez la limite ; v2.1.219 a augmenté la valeur par défaut à 3. Accepte un nombre entier positif en chiffres simples uniquement ; tout le reste est ignoré, afin que la limite puisse être ajustée mais pas supprimée. Nécessite Claude Code v2.1.217 ou ultérieur |

319| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | Nombre maximum d'outils en lecture seule et de sous-agents qui peuvent s'exécuter en parallèle (par défaut : 10). Les valeurs plus élevées augmentent le parallélisme mais consomment plus de ressources |322| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | Nombre maximum d'outils en lecture seule et de sous-agents qui peuvent s'exécuter en parallèle (par défaut : 10). Les valeurs plus élevées augmentent le parallélisme mais consomment plus de ressources |

320| `CLAUDE_CODE_MAX_TURNS` | Limitez le nombre de tours d'agent lorsqu'aucune limite explicite n'est transmise. Équivalent à transmettre [`--max-turns`](/docs/fr/cli-reference#cli-flags), qui prend la priorité lorsque les deux sont définis. Une valeur qui n'est pas un entier positif est rejetée au démarrage avec une erreur plutôt que traitée comme aucun plafond |323| `CLAUDE_CODE_MAX_TURNS` | Limitez le nombre de tours d'agent lorsqu'aucune limite explicite n'est transmise. Équivalent à transmettre [`--max-turns`](/docs/fr/cli-reference#cli-flags), qui a la priorité lorsque les deux sont définis. Une valeur qui n'est pas un entier positif est rejetée au démarrage avec une erreur plutôt que traitée comme aucun plafond |

321| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | Plafond sur le nombre total d'appels [WebSearch](/docs/fr/tools-reference#websearch-tool-behavior) qu'une session peut faire (par défaut : 200). Lorsque Claude atteint le plafond, les appels WebSearch supplémentaires retournent un avis lui disant de continuer avec les informations qu'il a déjà rassemblées. Accepte un nombre entier positif sans limite supérieure. Tout le reste est ignoré et la valeur par défaut s'applique, afin que le plafond puisse être augmenté mais pas désactivé. Nécessite Claude Code v2.1.212 ou ultérieur |324| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | Plafond sur le nombre total d'appels [WebSearch](/docs/fr/tools-reference#websearch-tool-behavior) qu'une session peut faire (par défaut : 200). Lorsque Claude atteint le plafond, les appels WebSearch supplémentaires retournent un avis lui disant de continuer avec les informations qu'il a déjà rassemblées. Accepte un nombre entier positif sans limite supérieure. Tout le reste est ignoré et la valeur par défaut s'applique, afin que le plafond puisse être augmenté mais pas désactivé. Nécessite Claude Code v2.1.212 ou ultérieur |

322| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | Définissez sur `1` pour générer les serveurs MCP stdio avec uniquement un environnement de base sûr plus le `env` configuré du serveur, au lieu d'hériter de votre environnement shell |325| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | Définissez sur `1` pour générer les serveurs MCP stdio avec uniquement un environnement de base sûr plus l'`env` configuré du serveur, au lieu d'hériter de votre environnement shell |

323| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | Temps écoulé en millisecondes avant qu'un appel d'outil MCP toujours en cours d'exécution [se déplace vers une tâche d'arrière-plan](/docs/fr/mcp#automatic-backgrounding-of-long-tool-calls) (par défaut : 120000, ou 2 minutes). Définissez sur `0` pour désactiver la mise en arrière-plan automatique. Nécessite Claude Code v2.1.212 ou ultérieur |326| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | Temps écoulé en millisecondes avant qu'un appel d'outil MCP toujours en cours d'exécution ne [se déplace vers une tâche d'arrière-plan](/docs/fr/mcp#automatic-backgrounding-of-long-tool-calls) (par défaut : 120000, ou 2 minutes). Définissez sur `0` pour désactiver la mise en arrière-plan automatique. Nécessite Claude Code v2.1.212 ou ultérieur |

324| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | Combien de temps en millisecondes le premier tour d'une session [non-interactive](/docs/fr/headless) attend les serveurs MCP qui se connectent toujours, à la place de l'[attente du premier tour](/docs/fr/agent-sdk/mcp#connection-timing) par défaut. Lorsqu'elle est définie, l'attente couvre chaque serveur en attente. Définissez sur `0` pour ignorer l'attente. Un serveur [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) garde sa propre attente `MCP_TIMEOUT` quel que soit la valeur. Nécessite Claude Code v2.1.274 ou ultérieur |327| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | Combien de temps en millisecondes le premier tour d'une session [non-interactive](/docs/fr/headless) attend les serveurs MCP qui se connectent toujours, à la place de l'[attente du premier tour](/docs/fr/agent-sdk/mcp#connection-timing) par défaut. Lorsqu'il est défini, l'attente couvre chaque serveur en attente. Définissez sur `0` pour ignorer l'attente. Un serveur [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) conserve sa propre attente `MCP_TIMEOUT` quel que soit la valeur. Nécessite Claude Code v2.1.274 ou ultérieur |

325| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | Délai d'expiration d'inactivité en millisecondes pour les appels d'outils MCP. Lorsqu'un serveur MCP stdio, HTTP, SSE, WebSocket ou [connecteur claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai) n'envoie aucune réponse et aucune notification de progression pendant ce temps, l'appel d'outil interrompt avec une erreur au lieu d'attendre le `MCP_TOOL_TIMEOUT` global. Remplace les valeurs par défaut par transport de 300000 (5 minutes) pour les serveurs réseau et 1800000 (30 minutes) pour les serveurs stdio. Définissez sur `0` pour désactiver la vérification d'inactivité. Les valeurs inférieures à 1000 sont augmentées à une seconde, et la valeur est limitée au `MCP_TOOL_TIMEOUT` effectif. Un `timeout` par serveur dans `.mcp.json` d'au moins 1000 augmente la fenêtre d'inactivité de ce serveur à au moins la valeur `timeout`. Ne s'applique pas aux serveurs IDE ou aux serveurs en processus du SDK. Nécessite Claude Code v2.1.187 ou ultérieur. Avant v2.1.203, les serveurs stdio étaient exempts du délai d'expiration d'inactivité |328| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | Délai d'inactivité en millisecondes pour les appels d'outils MCP. Lorsqu'un serveur MCP stdio, HTTP, SSE, WebSocket ou [connecteur claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai) n'envoie aucune réponse et aucune notification de progression pendant ce temps, l'appel d'outil interrompt avec une erreur au lieu d'attendre le `MCP_TOOL_TIMEOUT` global. Remplace les valeurs par défaut par transport de 300000 (5 minutes) pour les serveurs réseau et 1800000 (30 minutes) pour les serveurs stdio. Définissez sur `0` pour désactiver la vérification d'inactivité. Les valeurs inférieures à 1000 sont augmentées à une seconde, et la valeur est limitée au `MCP_TOOL_TIMEOUT` effectif. Un `timeout` par serveur dans `.mcp.json` d'au moins 1000 augmente la fenêtre d'inactivité de ce serveur à au moins la valeur `timeout`. Ne s'applique pas aux serveurs IDE ou aux serveurs en processus du SDK. Nécessite Claude Code v2.1.187 ou ultérieur. Avant v2.1.203, les serveurs stdio étaient exempts du délai d'inactivité |

326| `CLAUDE_CODE_MESSAGING_SOCKET` | Défini par Claude Code, pas par vous : dans les sessions qui lient une [socket de boîte de réception](/docs/fr/cross-session-messaging#the-sessions-inbox-socket), Claude Code exporte le chemin de cette socket aux crochets et aux commandes Bash lorsqu'il lie la socket. Dans une session qui démarre avec la messagerie activée, Claude Code lie la socket avant l'exécution de tout crochet. Les autres sessions sur la machine livrent les messages à ce chemin. Chaque session exporte sa propre socket plutôt qu'une héritée d'un parent, et les messages arrivant sur elle passent par les [contrôles entrants](/docs/fr/cross-session-messaging#control-inbound-messages) de la session. Les blocs `env` des paramètres ne peuvent pas le définir. Nécessite Claude Code v2.1.224 ou ultérieur |329| `CLAUDE_CODE_MESSAGING_SOCKET` | Défini par Claude Code, pas par vous : dans les sessions qui lient une [prise de réception](/docs/fr/cross-session-messaging#the-sessions-inbox-socket), Claude Code exporte le chemin de cette prise à des crochets et des commandes Bash lorsqu'il lie la prise. Dans une session qui démarre avec la messagerie activée, Claude Code lie la prise avant l'exécution de tout crochet. Les autres sessions sur la machine livrent les messages à ce chemin. Chaque session exporte sa propre prise plutôt qu'une héritée d'un parent, et les messages arrivant sur elle passent par les [contrôles entrants](/docs/fr/cross-session-messaging#control-inbound-messages) de la session. Les blocs `env` des paramètres ne peuvent pas le définir. Nécessite Claude Code v2.1.224 ou ultérieur |

327| `CLAUDE_CODE_MESSAGING_TOKEN` | Défini par Claude Code, pas par vous : dans les sessions qui lient une [socket de boîte de réception](/docs/fr/cross-session-messaging#the-sessions-inbox-socket), Claude Code exporte ce jeton par session aux crochets et aux commandes Bash aux côtés de `CLAUDE_CODE_MESSAGING_SOCKET`. Un script affichant sur la socket peut envoyer `{"type":"auth","token":"<token>"}` comme sa première ligne pour prouver qu'il appartient à la session. Sur Windows natif, Claude Code exige cette ligne et ferme toute connexion qui ne s'ouvre pas avec une ligne valide. Les [règles propres-enfant](/docs/fr/cross-session-messaging#the-sessions-inbox-socket) disent quand Claude Code consulte le jeton. Chaque session exporte son propre jeton, jamais un hérité d'une session parent. Les blocs `env` des paramètres ne peuvent pas le définir. Nécessite Claude Code v2.1.228 ou ultérieur |330| `CLAUDE_CODE_MESSAGING_TOKEN` | Défini par Claude Code, pas par vous : dans les sessions qui lient une [prise de réception](/docs/fr/cross-session-messaging#the-sessions-inbox-socket), Claude Code exporte ce jeton par session à des crochets et des commandes Bash aux côtés de `CLAUDE_CODE_MESSAGING_SOCKET`. Un script affichant sur la prise peut envoyer `{"type":"auth","token":"<token>"}` comme première ligne pour prouver qu'il appartient à la session. Sur Windows natif, Claude Code nécessite cette ligne et ferme toute connexion qui ne s'ouvre pas avec une valeur valide. Les [règles propres-enfants](/docs/fr/cross-session-messaging#the-sessions-inbox-socket) disent quand Claude Code consulte le jeton. Chaque session exporte son propre jeton, jamais un hérité d'une session parent. Les blocs `env` des paramètres ne peuvent pas le définir. Nécessite Claude Code v2.1.228 ou ultérieur |

328| `CLAUDE_CODE_NATIVE_CURSOR` | Définissez sur `1` pour afficher le curseur propre du terminal à la position du curseur d'insertion au lieu d'un bloc dessiné. Le curseur respecte les paramètres de clignotement, de forme et de focus du terminal |331| `CLAUDE_CODE_NATIVE_CURSOR` | Définissez sur `1` pour afficher le curseur propre du terminal à la position du curseur d'insertion au lieu d'un bloc dessiné. Le curseur respecte les paramètres de clignotement, de forme et de focus du terminal |

329| `CLAUDE_CODE_NEW_INIT` | Définissez sur `1` pour faire en sorte que `/init` exécute un flux de configuration interactif. Le flux demande quels fichiers générer, y compris CLAUDE.md, les compétences et les crochets, avant d'explorer la base de code et de les écrire. Sans cette variable, `/init` génère un CLAUDE.md automatiquement sans demander |332| `CLAUDE_CODE_NEW_INIT` | Définissez sur `1` pour faire en sorte que `/init` exécute un flux de configuration interactif. Le flux demande quels fichiers générer, y compris CLAUDE.md, les compétences et les crochets, avant d'explorer la base de code et de les écrire. Sans cette variable, `/init` génère un CLAUDE.md automatiquement sans demander |

330| `CLAUDE_CODE_NONBLOCKING_STDOUT` | Définissez sur `1` pour écrire la sortie du terminal via un deuxième descripteur de fichier non bloquant, afin qu'un terminal qui arrête la lecture, comme un volet en mode contrôle tmux en pause ou une connexion SSH bloquée, ne puisse pas geler Claude Code au milieu d'une session. S'applique sur macOS, Linux et WSL lorsque stdout est un terminal. Nécessite Claude Code v2.1.261 ou ultérieur |333| `CLAUDE_CODE_NONBLOCKING_STDOUT` | Définissez sur `1` pour écrire la sortie du terminal via un deuxième descripteur de fichier non bloquant, afin qu'un terminal qui arrête la lecture, comme un volet de mode contrôle tmux en pause ou une connexion SSH bloquée, ne puisse pas geler Claude Code au milieu de la session. S'applique sur macOS, Linux et WSL lorsque stdout est un terminal. Nécessite Claude Code v2.1.261 ou ultérieur |

331| `CLAUDE_CODE_NO_FLICKER` | Définissez sur `1` pour activer le [rendu plein écran](/docs/fr/fullscreen), un aperçu de recherche qui réduit le scintillement et maintient la mémoire plate dans les longues conversations. Remplace le paramètre [`tui`](/docs/fr/settings-reference#tui) ; vous pouvez également basculer avec `/tui fullscreen` |334| `CLAUDE_CODE_NO_FLICKER` | Définissez sur `1` pour activer le [rendu plein écran](/docs/fr/fullscreen), un aperçu de recherche qui réduit le scintillement et maintient la mémoire plate dans les longues conversations. Remplace le paramètre [`tui`](/docs/fr/settings-reference#tui) ; vous pouvez également basculer avec `/tui fullscreen` |

332| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Jeton d'actualisation OAuth pour l'authentification Claude.ai. Lorsqu'il est défini, `claude auth login` échange ce jeton directement au lieu d'ouvrir un navigateur. Nécessite `CLAUDE_CODE_OAUTH_SCOPES`. Utile pour provisionner l'authentification dans les environnements automatisés |335| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Jeton d'actualisation OAuth pour l'authentification Claude.ai. Lorsqu'il est défini, `claude auth login` échange ce jeton directement au lieu d'ouvrir un navigateur. Nécessite `CLAUDE_CODE_OAUTH_SCOPES`. Utile pour l'authentification de provisionnement dans les environnements automatisés |

333| `CLAUDE_CODE_OAUTH_SCOPES` | Portées OAuth séparées par des espaces avec lesquelles le jeton d'actualisation a été émis, comme `"user:profile user:inference user:sessions:claude_code"`. Requis lorsque `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` est défini |336| `CLAUDE_CODE_OAUTH_SCOPES` | Portées OAuth séparées par des espaces avec lesquelles le jeton d'actualisation a été émis, comme `"user:profile user:inference user:sessions:claude_code"`. Requis lorsque `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` est défini |

334| `CLAUDE_CODE_OAUTH_TOKEN` | Jeton d'accès OAuth pour l'authentification claude.ai. Alternative à `/login` pour le SDK et les environnements automatisés. Prend la priorité sur les identifiants stockés dans le trousseau. Générez-en un avec [`claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token). À moins que vous n'exécutiez [`/login`](/docs/fr/authentication#authentication-precedence), Claude Code utilise le jeton que vous définissez pour la session entière. Pour remplacer un jeton expiré, générez-en un nouveau et redémarrez |337| `CLAUDE_CODE_OAUTH_TOKEN` | Jeton d'accès OAuth pour l'authentification claude.ai. Alternative à `/login` pour le SDK et les environnements automatisés. A la priorité sur les identifiants stockés dans le trousseau. Générez-en un avec [`claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token). Sauf si vous exécutez [`/login`](/docs/fr/authentication#authentication-precedence), Claude Code utilise le jeton que vous définissez pour la session entière. Pour remplacer un jeton expiré, générez-en un nouveau et redémarrez |

335| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Supprimé dans v2.1.160 et maintenant un no-op. Auparavant, épinglait le [mode rapide](/docs/fr/fast-mode) à Claude Opus 4.6 au lieu de la valeur par défaut actuelle. Opus 4.6 ne supporte plus le mode rapide |338| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Supprimé dans v2.1.160 et maintenant un no-op. Auparavant, épinglait le [mode rapide](/docs/fr/fast-mode) à Claude Opus 4.6 au lieu de la valeur par défaut actuelle. Opus 4.6 ne supporte plus le mode rapide |

336| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | Longueur maximale des attributs OpenTelemetry porteurs de contenu (réponses du modèle, contenu de l'outil, prompts système, corps API bruts), marqueur de troncature inclus, en unités de code UTF-16 (par défaut : 61440, c'est-à-dire 60 Ko). Augmentez-le uniquement si votre backend de télémétrie accepte les valeurs d'attribut supérieures à 64 Ko, ou abaissez-le pour réduire le volume de télémétrie. Nécessite Claude Code v2.1.214 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage) |339| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | Longueur maximale des attributs OpenTelemetry porteurs de contenu (réponses du modèle, contenu de l'outil, invites système, corps API bruts), marqueur de troncature inclus, en unités de code UTF-16 (par défaut : 61440, c.-à-d. 60 Ko). Augmentez-le uniquement si votre backend de télémétrie accepte les valeurs d'attribut supérieures à 64 Ko, ou abaissez-le pour réduire le volume de télémétrie. Nécessite Claude Code v2.1.214 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage) |

337| `CLAUDE_CODE_OTEL_DIAG_STDERR` | Définissez sur `1` pour écrire les erreurs de diagnostic de l'exportateur OpenTelemetry sur stderr. Par défaut, ces erreurs n'apparaissent que avec `--debug`, afin qu'un exportateur mal configuré comme une collision de port Prometheus échoue silencieusement sinon. Nécessite Claude Code v2.1.179 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage) |340| `CLAUDE_CODE_OTEL_DIAG_STDERR` | Définissez sur `1` pour écrire les erreurs de diagnostic de l'exportateur OpenTelemetry sur stderr. Par défaut, ces erreurs n'apparaissent que avec `--debug`, afin qu'un exportateur mal configuré comme une collision de port Prometheus échoue silencieusement sinon. Nécessite Claude Code v2.1.179 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage) |

338| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Délai d'expiration en millisecondes pour vider les spans OpenTelemetry en attente (par défaut : 5000). Voir [Surveillance](/docs/fr/monitoring-usage) |341| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Délai d'expiration en millisecondes pour vider les spans OpenTelemetry en attente (par défaut : 5000). Voir [Surveillance](/docs/fr/monitoring-usage) |

339| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Intervalle pour actualiser les en-têtes OpenTelemetry dynamiques en millisecondes (par défaut : 1740000 / 29 minutes). Voir [En-têtes dynamiques](/docs/fr/monitoring-usage#dynamic-headers) |342| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Intervalle pour actualiser les en-têtes OpenTelemetry dynamiques en millisecondes (par défaut : 1740000 / 29 minutes). Voir [En-têtes dynamiques](/docs/fr/monitoring-usage#dynamic-headers) |

340| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Délai d'expiration en millisecondes pour que l'exportateur OpenTelemetry se termine à l'arrêt (par défaut : 2000). Augmentez si les métriques sont supprimées à la sortie. Voir [Surveillance](/docs/fr/monitoring-usage) |343| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Délai d'expiration en millisecondes pour que l'exportateur OpenTelemetry se termine à l'arrêt (par défaut : 2000). Augmentez si les métriques sont supprimées à la sortie. Voir [Surveillance](/docs/fr/monitoring-usage) |

341| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Définissez sur `1` pour permettre à Claude Code d'exécuter la commande de mise à niveau de votre gestionnaire de paquets en arrière-plan lorsqu'une nouvelle version est disponible. S'applique aux installations Homebrew et WinGet. Les autres gestionnaires de paquets continuent d'afficher la commande de mise à niveau sans l'exécuter. Voir [Mises à jour automatiques](/docs/fr/setup#auto-updates) |344| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Définissez sur `1` pour permettre à Claude Code d'exécuter la commande de mise à niveau de votre gestionnaire de paquets en arrière-plan lorsqu'une nouvelle version est disponible. S'applique aux installations Homebrew et WinGet. Les autres gestionnaires de paquets continuent à afficher la commande de mise à niveau sans l'exécuter. Voir [Mises à jour automatiques](/docs/fr/setup#auto-updates) |

342| `CLAUDE_CODE_PERFORCE_MODE` | Définissez sur `1` pour activer la protection en écriture consciente de Perforce. Lorsqu'elle est définie, Edit, Write et NotebookEdit échouent avec un indice `p4 edit <file>` si le fichier cible manque le bit d'écriture du propriétaire, que Perforce efface sur les fichiers synchronisés jusqu'à ce que `p4 edit` les ouvre. Cela empêche Claude Code de contourner le suivi des modifications de Perforce |345| `CLAUDE_CODE_PERFORCE_MODE` | Définissez sur `1` pour activer la protection en écriture consciente de Perforce. Lorsqu'il est défini, Edit, Write et NotebookEdit échouent avec un indice `p4 edit <file>` si le fichier cible manque le bit d'écriture du propriétaire, que Perforce efface sur les fichiers synchronisés jusqu'à ce que `p4 edit` les ouvre. Cela empêche Claude Code de contourner le suivi des modifications de Perforce |

343| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Remplacez le répertoire racine des plugins. Malgré le nom, cela définit le répertoire parent, pas le cache lui-même : les places de marché et le cache des plugins vivent dans les sous-répertoires sous ce chemin. Par défaut `~/.claude/plugins` |346| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Remplacez le répertoire racine des plugins. Malgré le nom, cela définit le répertoire parent, pas le cache lui-même : les places de marché et le cache des plugins vivent dans des sous-répertoires sous ce chemin. Par défaut `~/.claude/plugins` |

344| `CLAUDE_CODE_PLUGIN_DIRS` | Répertoires de plugins à charger pour la session, chacun chargé de la façon qu'un [drapeau `--plugin-dir`](/docs/fr/plugins#test-your-plugins-locally) le charge. Séparez plusieurs chemins avec `:` sur Unix ou `;` sur Windows. Donnez chaque chemin en tant que chemin absolu ou commencez-le par `~`, car Claude Code ignore les chemins relatifs. Nécessite Claude Code v2.1.280 ou ultérieur |347| `CLAUDE_CODE_PLUGIN_DIRS` | Répertoires de plugins à charger pour la session, chacun chargé de la façon qu'un [drapeau `--plugin-dir`](/docs/fr/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) le charge. Séparez plusieurs chemins avec `:` sur Unix ou `;` sur Windows. Donnez chaque chemin comme un chemin absolu ou commencez-le par `~`, car Claude Code ignore les chemins relatifs. Nécessite Claude Code v2.1.280 ou ultérieur. Voir [Charger un plugin pour une session](/docs/fr/plugins/create#load-a-directory-or-archive-for-one-session) |

345| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Délai d'expiration en millisecondes pour les opérations git lors de l'installation ou de la mise à jour des plugins (par défaut : 120000). Augmentez cette valeur pour les grands référentiels ou les connexions réseau lentes. Voir [Les opérations Git expirent](/docs/fr/plugin-marketplaces#git-operations-time-out) |348| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Délai d'expiration en millisecondes pour cloner ou actualiser une place de marché de plugins (par défaut : 120000). Augmentez cette valeur pour les grands référentiels ou les connexions réseau lentes. Voir [Git clone timed out](/docs/fr/plugins/troubleshooting#git-clone-timed-out-after-120s) |

346| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Définissez sur `1` pour ignorer la tentative de re-clonage et continuer à utiliser le checkout de place de marché existant lorsqu'une actualisation de place de marché ne peut pas atteindre ou s'authentifier auprès du distant. Utile dans les environnements hors ligne ou isolés où le re-clonage échouerait de la même manière. Voir [Les mises à jour de la place de marché échouent dans les environnements hors ligne](/docs/fr/plugin-marketplaces#marketplace-updates-fail-in-offline-environments) |349| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Définissez sur `1` pour ignorer la tentative de re-clonage et continuer à utiliser le checkout de place de marché existant lorsqu'une actualisation de place de marché ne peut pas atteindre ou s'authentifier auprès du distant. Utile dans les environnements hors ligne ou isolés où le re-clonage échouerait de la même manière. Voir [Les mises à jour de la place de marché continuent d'échouer hors ligne](/docs/fr/plugins/troubleshooting#marketplace-updates-keep-failing-offline) |

347| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Définissez sur `1` pour cloner les sources de raccourci GitHub `owner/repo` sur HTTPS au lieu de SSH. S'applique à l'installation et à la mise à jour des plugins, et à `/plugin marketplace add` et `update`. Utile dans les exécuteurs CI, les conteneurs ou tout environnement sans clé SSH configurée pour `github.com` |350| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Définissez sur `1` pour cloner les sources de raccourci GitHub `owner/repo` sur HTTPS au lieu de SSH. S'applique à l'installation et à la mise à jour des plugins, et à `/plugin marketplace add` et `update`. Utile dans les exécuteurs CI, les conteneurs ou tout environnement sans clé SSH configurée pour `github.com` |

348| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Chemin d'accès à un ou plusieurs répertoires de graines de plugins en lecture seule, séparés par `:` sur Unix ou `;` sur Windows. Utilisez ceci pour regrouper un répertoire de plugins pré-rempli dans une image de conteneur. Claude Code enregistre les places de marché à partir de ces répertoires au démarrage et utilise les plugins pré-cachés sans re-clonage. Voir [Pré-remplir les plugins pour les conteneurs](/docs/fr/plugin-marketplaces#pre-populate-plugins-for-containers) |351| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Chemin d'accès à un ou plusieurs répertoires de graines de plugins en lecture seule, séparés par `:` sur Unix ou `;` sur Windows. Utilisez ceci pour regrouper un répertoire de plugins pré-rempli dans une image de conteneur. Claude Code enregistre les places de marché à partir de ces répertoires au démarrage et utilise les plugins pré-cachés sans re-clonage. Voir [Pré-remplir les plugins pour les conteneurs](/docs/fr/plugins/org#seed-containers-and-ci) |

349| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Définissez sur `1` pour empêcher Claude Code de transmettre `-ExecutionPolicy Bypass` lors du lancement de PowerShell pour les appels d'outils, les crochets et les commandes de ligne d'état, et respecter la politique d'exécution effective de la machine à la place. Par défaut, Claude Code contourne la politique d'exécution à la portée du processus afin que les scripts `.ps1` et les importations de modules fonctionnent sur les installations Windows par défaut-Restricted. Le contournement à la portée du processus ne remplace jamais la `MachinePolicy` ou `UserPolicy` de la stratégie de groupe quel que soit ce paramètre |352| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Définissez sur `1` pour empêcher Claude Code de transmettre `-ExecutionPolicy Bypass` lors du lancement de PowerShell pour les appels d'outils, les crochets et les commandes de ligne d'état, et respectez plutôt la politique d'exécution effective de la machine. Par défaut, Claude Code contourne la politique d'exécution à la portée du processus afin que les scripts `.ps1` et les importations de modules fonctionnent sur les installations Windows par défaut-Restricted. Le contournement à la portée du processus ne remplace jamais la politique de groupe `MachinePolicy` ou `UserPolicy` quel que soit ce paramètre |

350| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | Plafond en millisecondes sur l'attente inactive pour les sous-agents d'arrière-plan et les flux de travail après le tour final en [mode non interactif](/docs/fr/headless#background-tasks-at-exit) avec le drapeau `-p`. L'attente inactive recommence chaque fois que Claude prend un tour pour gérer un résultat d'arrière-plan. Par défaut : `600000`, ou 10 minutes. Lorsque l'attente inactive atteint le plafond, Claude Code arrête d'attendre les tâches d'arrière-plan restantes et quitte. Définissez sur `0` pour attendre indéfiniment. Ce plafond est séparé de la période de grâce de cinq secondes qui s'applique aux shells d'arrière-plan simples. Nécessite Claude Code v2.1.182 ou ultérieur |353| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | Plafond en millisecondes sur l'attente inactive pour les sous-agents et flux de travail d'arrière-plan après le tour final en [mode non interactif](/docs/fr/headless#background-tasks-at-exit) avec le drapeau `-p`. L'attente inactive recommence chaque fois que Claude prend un tour pour gérer un résultat d'arrière-plan. Par défaut : `600000`, ou 10 minutes. Lorsque l'attente inactive atteint le plafond, Claude Code arrête d'attendre les tâches d'arrière-plan restantes et quitte. Définissez sur `0` pour attendre indéfiniment. Ce plafond est séparé de la période de grâce de cinq secondes qui s'applique aux shells d'arrière-plan simples. Nécessite Claude Code v2.1.182 ou ultérieur |

351| `CLAUDE_CODE_PROCESS_WRAPPER` | Lancez les processus que Claude Code démarre à partir de son propre binaire, comme le service d'arrière-plan qui héberge les sessions de [vue agent](/docs/fr/agent-view), via un lanceur d'entreprise donné en tant que préfixe argv comme `/opt/corp/launcher`. Définissez-le dans le bloc `env` des paramètres utilisateur ou [gérés](/docs/fr/managed-settings), pas en tant qu'export shell, afin que le service d'arrière-plan détaché l'hérite ; les paramètres de projet et locaux ne peuvent pas le définir. Équivalent au paramètre [`processWrapper`](/docs/fr/settings-reference#processwrapper), qui nécessite Claude Code v2.1.210 ou ultérieur ; cette variable prend la priorité lorsque les deux sont définis. L'extension VS Code configure son propre lanceur séparément via son paramètre `claudeProcessWrapper`. Ignoré sur Windows. Voir [Exécuter Claude Code derrière un lanceur d'entreprise](/docs/fr/corporate-launcher) pour le format de valeur, ce que le lanceur couvre et le contrat que le lanceur doit satisfaire. Nécessite Claude Code v2.1.208 ou ultérieur |354| `CLAUDE_CODE_PROCESS_WRAPPER` | Lancez les processus que Claude Code démarre à partir de son propre binaire, comme le service d'arrière-plan qui héberge les sessions de [vue agent](/docs/fr/agent-view), via un lanceur d'entreprise donné en tant que préfixe argv comme `/opt/corp/launcher`. Définissez-le dans le bloc `env` des paramètres utilisateur ou [gérés](/docs/fr/managed-settings), pas en tant qu'export shell, afin que le service d'arrière-plan détaché l'hérite ; les paramètres de projet et locaux ne peuvent pas le définir. Équivalent au paramètre [`processWrapper`](/docs/fr/settings-reference#processwrapper), qui nécessite Claude Code v2.1.210 ou ultérieur ; cette variable a la priorité lorsque les deux sont définis. L'extension VS Code configure son propre lanceur séparément via son paramètre `claudeProcessWrapper`. Ignoré sur Windows. Voir [Exécuter Claude Code derrière un lanceur d'entreprise](/docs/fr/corporate-launcher) pour le format de valeur, ce que le lanceur couvre et le contrat que le lanceur doit satisfaire. Nécessite Claude Code v2.1.208 ou ultérieur |

352| `CLAUDE_CODE_PROJECT_DIR_NAME` | Définissez avec `CLAUDE_CONFIG_DIR` pour choisir le nom du répertoire `projects/` sous lequel Claude Code stocke les transcriptions et la mémoire automatique de cette session, à la place d'un dérivé du chemin du répertoire de travail. Par exemple, démarrer Claude Code avec `CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` les stocke sous `/srv/tenant-a/projects/work/`. Claude Code ignore cette variable lorsque `CLAUDE_CONFIG_DIR` n'est pas défini, et la lit uniquement à partir de l'environnement à partir duquel vous démarrez `claude`, jamais à partir d'un bloc `env` des paramètres. Voir [Nommer le répertoire du projet vous-même](/docs/fr/sessions#name-the-project-directory-yourself). Nécessite Claude Code v2.1.234 ou ultérieur |355| `CLAUDE_CODE_PROJECT_DIR_NAME` | Défini avec `CLAUDE_CONFIG_DIR` pour choisir le nom du répertoire `projects/` où Claude Code stocke les transcriptions et la mémoire automatique de cette session, à la place d'un dérivé du chemin du répertoire de travail. Par exemple, démarrer Claude Code avec `CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` les stocke sous `/srv/tenant-a/projects/work/`. Claude Code ignore cette variable lorsque `CLAUDE_CONFIG_DIR` n'est pas défini, et la lit uniquement à partir de l'environnement à partir duquel vous démarrez `claude`, jamais à partir d'un bloc `env` du fichier de paramètres. Voir [Nommer le répertoire du projet vous-même](/docs/fr/sessions#name-the-project-directory-yourself). Nécessite Claude Code v2.1.234 ou ultérieur |

353| `CLAUDE_CODE_PROMPT_CACHE_TTL` | Définissez `5m` ou `1h`, les seules valeurs que Claude Code accepte, pour choisir la [durée de vie du cache du prompt](/docs/fr/prompt-caching#cache-lifetime) pour la conversation principale : vos tours interactifs, `-p` et SDK, plus les assistants qui s'exécutent en ligne avec eux. Prend la priorité sur le paramètre `promptCacheTtl` et sur `ENABLE_PROMPT_CACHING_1H`, et `FORCE_PROMPT_CACHING_5M` le remplace. L'API facture les écritures de cache d'une heure à un taux plus élevé. Nécessite Claude Code v2.1.242 ou ultérieur |356| `CLAUDE_CODE_PROMPT_CACHE_TTL` | Définissez `5m` ou `1h`, les seules valeurs que Claude Code accepte, pour choisir la [TTL du cache d'invite](/docs/fr/prompt-caching#cache-lifetime) pour la conversation principale : vos tours interactifs, `-p` et SDK, plus les assistants qui s'exécutent en ligne avec eux. A la priorité sur le paramètre `promptCacheTtl` et sur `ENABLE_PROMPT_CACHING_1H`, et `FORCE_PROMPT_CACHING_5M` le remplace. L'API facture les écritures de cache d'une heure à un taux plus élevé. Nécessite Claude Code v2.1.242 ou ultérieur |

354| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Définissez sur `1` pour propager le contexte de trace W3C lorsque `ANTHROPIC_BASE_URL` pointe vers un proxy personnalisé. La propagation couvre l'en-tête `traceparent` sur les requêtes de modèle et MCP HTTP et la variable d'environnement `TRACEPARENT` pour les sous-processus Bash, PowerShell et hook. Par défaut, la propagation est activée uniquement lorsqu'elle est connectée directement à l'API Anthropic. Ajouté dans v2.1.152. Voir [Traces (bêta)](/docs/fr/monitoring-usage#traces-beta) |357| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Définissez sur `1` pour propager le contexte de trace W3C lorsque `ANTHROPIC_BASE_URL` pointe vers un proxy personnalisé. La propagation couvre l'en-tête `traceparent` sur les requêtes de modèle et MCP HTTP et la variable d'environnement `TRACEPARENT` pour les sous-processus Bash, PowerShell et hook. Par défaut, la propagation est activée uniquement lorsqu'elle est connectée directement à l'API Anthropic. Ajouté dans v2.1.152. Voir [Traces (bêta)](/docs/fr/monitoring-usage#traces-beta) |

355| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Défini par les plates-formes hôtes qui intègrent Claude Code et gèrent le routage du f fournisseur de modèles en son nom. Lorsqu'elle est définie, Claude Code ignore les variables de sélection du fournisseur, de point de terminaison et d'authentification telles que `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL` et `ANTHROPIC_API_KEY` dans les fichiers de paramètres, afin que les paramètres utilisateur ne puissent pas remplacer le routage de l'hôte. Claude Code ignore également les clés de sélection de modèle telles que `model`, `fallbackModel` et `modelOverrides` dans les [paramètres gérés](/docs/fr/managed-settings), quelle que soit la source gérée qui les livre, afin que la configuration du modèle de l'hôte prenne la priorité sur un épinglage de modèle obsolète. Claude Code ignore également les variables de sélection de modèle telles que `ANTHROPIC_MODEL` et la famille `ANTHROPIC_DEFAULT_*_MODEL` dans un bloc `env` géré ; une liste d'autorisation [`availableModels`](/docs/fr/model-config#restrict-model-selection) dans les paramètres gérés s'applique toujours sauf si l'hôte fournit la sienne. Claude Code ignore également l'opt-out de télémétrie automatique qu'il applique autrement sur les fournisseurs tiers tels que Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform et Microsoft Foundry, afin que la télémétrie suive l'opt-out standard `DISABLE_TELEMETRY`. Voir [Comportements par défaut par fournisseur API](/docs/fr/data-usage#default-behaviors-by-api-provider) |358| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Défini par les plates-formes hôtes qui intègrent Claude Code et gèrent le routage du fournisseur de modèles en son nom. Lorsqu'il est défini, Claude Code ignore les variables de sélection du fournisseur, de point de terminaison et d'authentification telles que `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL` et `ANTHROPIC_API_KEY` dans les fichiers de paramètres, afin que les paramètres utilisateur ne puissent pas remplacer le routage de l'hôte. Claude Code ignore également les clés de sélection de modèle telles que `model`, `fallbackModel` et `modelOverrides` dans les [paramètres gérés](/docs/fr/managed-settings), quelle que soit la source gérée qui les livre, afin que la configuration du modèle de l'hôte ait la priorité sur une épingle de modèle obsolète. Claude Code ignore également les variables de sélection de modèle telles que `ANTHROPIC_MODEL` et la famille `ANTHROPIC_DEFAULT_*_MODEL` dans un bloc `env` géré ; une liste d'autorisation [`availableModels`](/docs/fr/model-config#restrict-model-selection) dans les paramètres gérés s'applique toujours sauf si l'hôte fournit la sienne. Claude Code ignore également l'opt-out de télémétrie automatique qu'il applique autrement sur les fournisseurs tiers tels que Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform et Microsoft Foundry, afin que la télémétrie suive l'opt-out standard `DISABLE_TELEMETRY`. Voir [Comportements par défaut par fournisseur API](/docs/fr/data-usage#default-behaviors-by-api-provider) |

356| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Définissez sur `1` pour permettre au proxy d'effectuer la résolution DNS au lieu de l'appelant. Opt-in pour les environnements où le proxy doit gérer la résolution du nom d'hôte |359| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Définissez sur `1` pour permettre au proxy d'effectuer la résolution DNS au lieu de l'appelant. Opt-in pour les environnements où le proxy doit gérer la résolution du nom d'hôte |

357| `CLAUDE_CODE_REMOTE` | Défini automatiquement sur `true` lorsque Claude Code s'exécute en tant que [session cloud](/docs/fr/claude-code-on-the-web). Lisez ceci à partir d'un crochet ou d'un script de configuration pour détecter si vous êtes dans une session cloud |360| `CLAUDE_CODE_REMOTE` | Défini automatiquement sur `true` lorsque Claude Code s'exécute en tant que [session cloud](/docs/fr/claude-code-on-the-web). Lisez ceci à partir d'un crochet ou d'un script de configuration pour détecter si vous êtes dans une session cloud |

358| `CLAUDE_CODE_REMOTE_SESSION_ID` | Défini automatiquement dans les [sessions cloud](/docs/fr/claude-code-on-the-web) à l'ID de la session actuelle. Lisez ceci pour construire un lien vers la transcription de la session. Voir [Lier la sortie à la session](/docs/fr/cloud-environments#link-output-back-to-the-session) |361| `CLAUDE_CODE_REMOTE_SESSION_ID` | Défini automatiquement dans les [sessions cloud](/docs/fr/claude-code-on-the-web) à l'ID de la session actuelle. Lisez ceci pour construire un lien vers la transcription de la session. Voir [Lier la sortie à la session](/docs/fr/cloud-environments#link-output-back-to-the-session) |

359| `CLAUDE_CODE_RESTRICTED` | Définissez sur `1` pour démarrer la session en mode restreint, identique à la transmission de [`--restricted`](/docs/fr/cli-reference#cli-flags). Claude Code ignore cette variable dans le bloc `env` d'un fichier de paramètres. Nécessite Claude Code v2.1.248 ou ultérieur |362| `CLAUDE_CODE_RESTRICTED` | Définissez sur `1` pour démarrer la session en mode restreint, identique à la transmission de [`--restricted`](/docs/fr/cli-reference#cli-flags). Claude Code ignore cette variable dans un bloc `env` du fichier de paramètres. Nécessite Claude Code v2.1.248 ou ultérieur |

360| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | Définissez sur `1` pour reprendre automatiquement si la session précédente s'est terminée au milieu d'un tour. Utilisé en mode SDK afin que le modèle continue sans exiger que le SDK renvoie le prompt. Pour désactiver ceci, désactivez la variable ou définissez-la sur `0`. Avant v2.1.221, Claude Code ignorait `0` et les autres valeurs fausses, afin que la définition de `0` déclenchait toujours la reprise en mode non interactif et la désactivation de la variable était le seul moyen de la désactiver |363| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | Définissez sur `1` pour reprendre automatiquement si la session précédente s'est terminée au milieu d'un tour. Utilisé en mode SDK afin que le modèle continue sans que le SDK ait besoin de renvoyer l'invite. Pour désactiver ceci, supprimez la variable ou définissez-la sur `0`. Avant v2.1.221, Claude Code ignorait `0` et les autres valeurs fausses, afin que la définition de `0` déclenchait toujours la reprise en mode non interactif et la suppression de la variable était le seul moyen de la désactiver |

361| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Âge maximum en millisecondes du dernier message de transcription pour qu'une session qui s'est terminée au milieu d'un tour continue automatiquement à la reprise. Lorsque le dernier message est plus ancien que cette limite, Claude Code ignore à la fois la reprise automatique `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` et le message de continuation injecté `CLAUDE_CODE_RESUME_PROMPT`, et la session démarre inactive afin que vous continuiez explicitement. Non défini ou `0` signifie aucune limite, sauf qu'un tour dont la dernière requête a échoué avec une erreur API reprend uniquement tandis que cette erreur a moins de six heures. Une valeur positive limite chaque tour, y compris ceux-ci ; une valeur négative ou non numérique applique une limite d'une heure. Les scripts de génération pour les agents de longue durée peuvent définir ceci afin qu'un redémarrage contre une transcription ancienne ne réexécute pas un prompt obsolète. Claude Code définit lui-même une limite d'une heure lorsqu'il redémarre une session de [vue agent](/docs/fr/agent-view) qui a échoué et qui a hérité sa conversation d'une session interactive. Nécessite Claude Code v2.1.211 ou ultérieur |364| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Âge maximum en millisecondes du dernier message de transcription pour qu'une session qui s'est terminée au milieu d'un tour continue automatiquement à la reprise. Lorsque le dernier message est plus ancien que cette limite, Claude Code ignore la reprise automatique `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` et son message de continuation `CLAUDE_CODE_RESUME_PROMPT`, et la session démarre inactive afin que vous continuiez explicitement. Non défini ou `0` signifie aucune limite, sauf qu'un tour dont la dernière requête a échoué avec une erreur API reprend uniquement tandis que cette erreur a moins de six heures. Une valeur positive limite chaque tour, y compris ceux ; une valeur négative ou non numérique applique une limite d'une heure. Les scripts de génération pour les agents de longue durée peuvent définir ceci afin qu'une redémarrage par rapport à une transcription ancienne ne réexécute pas une invite obsolète. Claude Code définit lui-même une limite d'une heure lorsqu'il redémarre une session de [vue agent](/docs/fr/agent-view) qui a hérité de sa conversation d'une session interactive. Nécessite Claude Code v2.1.211 ou ultérieur |

362| `CLAUDE_CODE_RESUME_PROMPT` | Remplacez le message de continuation injecté lors de la reprise d'une session qui s'est terminée au milieu d'un tour. Par défaut `Continue from where you left off.`. Les scripts de génération pour les agents de longue durée peuvent définir ceci sur un message de démarrage plus directif. Une chaîne vide utilise la valeur par défaut |365| `CLAUDE_CODE_RESUME_PROMPT` | Remplacez le message de continuation que Claude Code envoie à Claude lorsque `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` continue un tour interrompu au lieu de renvoyer son invite, ou lorsque vous reprenez un [appel d'outil différé](/docs/fr/hooks#defer-a-tool-call-for-later) avec `-p`. Par défaut `Continue from where you left off.`. Une chaîne vide utilise la valeur par défaut |

363| `CLAUDE_CODE_RETRY_WATCHDOG` | Définissez sur `1` pour les sessions sans surveillance telles que les harnais d'évaluation, les travaux CI ou les travailleurs distants. Réessaye les erreurs de capacité `429` et `529` indéfiniment au lieu d'échouer après `CLAUDE_CODE_MAX_RETRIES` tentatives. Claude Code échoue immédiatement lorsqu'une requête à vitesse standard reçoit un `429` qui signale une limite de dépenses ou des crédits d'utilisation épuisés, même un de la [limite de dépenses de la passerelle](/docs/fr/errors#spend-limit-reached) qui se réinitialise selon un calendrier. Avant v2.1.239, le chien de garde réessayait ceux-ci indéfiniment. Pour les requêtes en mode rapide, voir [Gérer les limites de débit](/docs/fr/fast-mode#handle-rate-limits). Le chien de garde recule jusqu'à 5 minutes entre les tentatives, ou jusqu'à ce que la limite se réinitialise lorsque la réponse porte un temps de réinitialisation de limite de débit, afin qu'une session qui atteint une limite d'utilisation attende la fenêtre restante. Sur v2.1.199 ou ultérieur, il augmente également le nombre de tentatives par défaut pour les autres erreurs transitoires, telles que les erreurs de serveur, les délais d'expiration et les connexions abandonnées, à 300, environ trois heures de recul, et supprime le plafond de 15 sur `CLAUDE_CODE_MAX_RETRIES` si vous définissez cette variable explicitement. Nécessite Claude Code v2.1.186 ou ultérieur |366| `CLAUDE_CODE_RETRY_WATCHDOG` | Définissez sur `1` pour les sessions sans surveillance telles que les harnais d'évaluation, les travaux CI ou les travailleurs distants. Réessaye les erreurs de capacité `429` et `529` indéfiniment au lieu d'échouer après `CLAUDE_CODE_MAX_RETRIES` tentatives. Claude Code échoue immédiatement lorsqu'une requête à vitesse standard reçoit un `429` qui signale une limite de dépenses ou des crédits d'utilisation épuisés, même un de la [limite de dépenses de passerelle](/docs/fr/errors#spend-limit-reached) qui se réinitialise selon un calendrier. Avant v2.1.239, le chien de garde réessayait ceux-ci indéfiniment. Pour les requêtes en mode rapide, voir [Gérer les limites de débit](/docs/fr/fast-mode#handle-rate-limits). Le chien de garde recule jusqu'à 5 minutes entre les tentatives, ou jusqu'à ce que la limite se réinitialise lorsque la réponse porte un temps de réinitialisation de limite de débit, afin qu'une session qui atteint une limite d'utilisation attende la fenêtre restante. Sur v2.1.199 ou ultérieur, il augmente également le nombre de tentatives par défaut pour les autres erreurs transitoires, telles que les erreurs de serveur, les délais d'expiration et les connexions abandonnées, à 300, environ trois heures de recul, et supprime le plafond de 15 sur `CLAUDE_CODE_MAX_RETRIES` si vous définissez explicitement cette variable. Nécessite Claude Code v2.1.186 ou ultérieur |

364| `CLAUDE_CODE_SAFE_MODE` | Définissez sur `1` pour démarrer en mode sûr : CLAUDE.md, les compétences, les plugins, les crochets, les serveurs MCP, les commandes et agents personnalisés, les styles de sortie, les flux de travail, les thèmes personnalisés, les liaisons de clés personnalisées, les commandes de ligne d'état et de suggestion de fichier, les serveurs LSP et la mémoire automatique ne se chargent pas, pour dépanner une configuration cassée. La politique des paramètres gérés s'applique toujours, y compris les crochets configurés par la politique, la ligne d'état et les commandes de suggestion de fichier ; les plugins gérés, les compétences gérées, le CLAUDE.md géré et les serveurs MCP configurés par la politique ne le font pas. Équivalent à la transmission de [`--safe-mode`](/docs/fr/cli-reference#cli-flags). Les processus enfants directement générés héritent de la variable |367| `CLAUDE_CODE_SAFE_MODE` | Définissez sur `1` pour démarrer en mode sûr : CLAUDE.md, les compétences, les plugins, les crochets, les serveurs MCP, les commandes personnalisées et les agents, les styles de sortie, les flux de travail, les thèmes personnalisés, les liaisons de clés personnalisées, les commandes de ligne d'état et de suggestion de fichier, les serveurs LSP et la mémoire automatique ne se chargent pas, pour dépanner une configuration cassée. La politique des paramètres gérés s'applique toujours, y compris les crochets configurés par la politique, la ligne d'état et les commandes de suggestion de fichier ; les plugins gérés, les compétences gérées, le CLAUDE.md géré et les serveurs MCP configurés par la politique ne le font pas. Équivalent à la transmission de [`--safe-mode`](/docs/fr/cli-reference#cli-flags). Les processus enfants directement générés héritent de la variable |

365| `CLAUDE_CODE_SCRIPT_CAPS` | Objet JSON limitant le nombre de fois que des scripts spécifiques peuvent être invoqués par session lorsque `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` est défini. Les clés sont des sous-chaînes mises en correspondance avec le texte de la commande ; les valeurs sont des limites d'appel entières. Par exemple, `{"deploy.sh": 2}` permet à `deploy.sh` d'être appelé au maximum deux fois. La correspondance est basée sur des sous-chaînes afin que les astuces d'expansion shell comme `./scripts/deploy.sh $(evil)` comptent toujours contre le plafond. Le fan-out d'exécution via `xargs` ou `find -exec` n'est pas détecté ; c'est un contrôle de défense en profondeur |368| `CLAUDE_CODE_SCRIPT_CAPS` | Objet JSON limitant le nombre de fois que des scripts spécifiques peuvent être invoqués par session lorsque `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` est défini. Les clés sont des sous-chaînes correspondant au texte de la commande ; les valeurs sont des limites d'appel entières. Par exemple, `{"deploy.sh": 2}` permet à `deploy.sh` d'être appelé au maximum deux fois. La correspondance est basée sur des sous-chaînes afin que les astuces d'expansion shell comme `./scripts/deploy.sh $(evil)` comptent toujours par rapport au plafond. L'expansion de fan-out au moment de l'exécution via `xargs` ou `find -exec` n'est pas détectée ; c'est un contrôle de défense en profondeur |

366| `CLAUDE_CODE_SCROLL_SPEED` | Définissez le multiplicateur de défilement à la molette de la souris en [rendu plein écran](/docs/fr/fullscreen#mouse-wheel-scrolling). Accepte n'importe quelle valeur positive jusqu'à 20, y compris les valeurs fractionnaires inférieures à 1 comme `0.5` pour ralentir le défilement accéléré du pavé tactile et de la molette dans les terminaux qui amplifient déjà les événements de molette. Définissez sur `3` pour correspondre à `vim` si votre terminal envoie un événement de molette par cran sans amplification. Ignoré dans le terminal IDE JetBrains, où Claude Code utilise sa propre gestion du défilement |369| `CLAUDE_CODE_SCROLL_SPEED` | Définissez le multiplicateur de vitesse de défilement de la molette de la souris en [rendu plein écran](/docs/fr/fullscreen#mouse-wheel-scrolling). Accepte n'importe quelle valeur positive jusqu'à 20, y compris les valeurs fractionnaires inférieures à 1 comme `0.5` pour ralentir le défilement accéléré du pavé tactile et de la molette dans les terminaux qui amplifient déjà les événements de molette. Définissez sur `3` pour correspondre à `vim` si votre terminal envoie un événement de molette par cran sans amplification. Ignoré dans le terminal IDE JetBrains, où Claude Code utilise sa propre gestion du défilement |

367| `CLAUDE_CODE_SEND_FEEDBACK` | Définissez sur `0` pour désactiver les [commentaires rédigés par Claude](/docs/fr/tools-reference#sendfeedback-tool-behavior) pour une session. Définissez sur `1` pour l'activer où votre compte a déjà accès ; la variable ne peut pas accorder l'accès elle-même, et les autres commutateurs qui désactivent les commentaires, comme `DISABLE_FEEDBACK_COMMAND` et la valeur `off` du paramètre [`feedbackDrafts`](/docs/fr/settings-reference#feedbackdrafts), s'appliquent toujours |370| `CLAUDE_CODE_SEND_FEEDBACK` | Définissez sur `0` pour désactiver les [commentaires rédigés par Claude](/docs/fr/tools-reference#sendfeedback-tool-behavior) pour une session. Définissez sur `1` pour l'activer où votre compte a déjà accès ; la variable ne peut pas accorder l'accès elle-même, et les autres commutateurs qui désactivent les commentaires, comme `DISABLE_FEEDBACK_COMMAND` et la valeur `off` du paramètre [`feedbackDrafts`](/docs/fr/settings-reference#feedbackdrafts), s'appliquent toujours |

368| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Remplacez le budget de temps en millisecondes pour les crochets [SessionEnd](/docs/fr/hooks#sessionend). La valeur est également le délai d'expiration pour chaque crochet qui ne définit pas son propre `timeout`. S'applique à la sortie de session, `/clear` et au changement de session via `/resume` interactif. Par défaut, le budget est de 1,5 secondes, augmenté automatiquement au plus haut `timeout` par crochet configuré dans les fichiers de paramètres, jusqu'à 60 secondes. Les délais d'expiration sur les crochets fournis par les plugins ne relèvent pas du budget |371| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Remplacez le budget de temps en millisecondes pour les crochets [SessionEnd](/docs/fr/hooks#sessionend). La valeur est également le délai d'expiration pour chaque crochet qui ne définit pas son propre `timeout`. S'applique à la sortie de session, `/clear` et au changement de session via `/resume` interactif. Par défaut, le budget est de 1,5 secondes, automatiquement augmenté au plus haut `timeout` par crochet configuré dans les fichiers de paramètres, jusqu'à 60 secondes. Les délais d'expiration sur les crochets fournis par les plugins ne lèvent pas le budget |

369| `CLAUDE_CODE_SESSION_ID` | Défini automatiquement à l'ID de session actuelle dans les sous-processus de l'outil Bash et PowerShell, les sous-processus de la [commande hook](/docs/fr/hooks) et les sous-processus du serveur [MCP](/docs/fr/mcp) stdio. Pour Bash, PowerShell et les crochets, cela correspond au champ `session_id` dans l'entrée JSON du crochet et est mis à jour sur `/clear`. Un sous-processus du serveur MCP conserve l'ID avec lequel il a été généré. Sur `--resume <session-id>`, il reçoit l'ID repris, correspondant aux crochets et à Bash. Sur `--continue` ou `--resume` sans ID explicite, il peut recevoir l'ID de démarrage initial à la place. Utilisez pour corréler les scripts et les outils externes avec la session Claude Code qui les a lancés |372| `CLAUDE_CODE_SESSION_ID` | Défini automatiquement à l'ID de session actuelle dans les sous-processus de l'outil Bash et PowerShell, les sous-processus [commande hook](/docs/fr/hooks) et les sous-processus [serveur MCP](/docs/fr/mcp) stdio. Pour Bash, PowerShell et les crochets, cela correspond au champ `session_id` dans l'entrée JSON du crochet et est mis à jour sur `/clear`. Un sous-processus serveur MCP conserve l'ID avec lequel il a été généré. Sur `--resume <session-id>`, il reçoit l'ID repris, correspondant aux crochets et Bash. Sur `--continue` ou `--resume` sans ID explicite, il peut recevoir l'ID de démarrage initial à la place. Utilisez pour corréler les scripts et les outils externes avec la session Claude Code qui les a lancés |

370| `CLAUDE_CODE_SHELL` | Définissez le shell que Claude Code utilise pour exécuter les commandes de l'outil Bash. Accepte un chemin d'accès à un binaire `bash` ou `zsh`, par exemple `/opt/homebrew/bin/bash`. Les autres shells comme `fish` ne sont pas pris en charge. Si la valeur n'est pas un chemin `bash` ou `zsh` fonctionnant, Claude Code l'ignore et revient à la détection automatique. La détection automatique utilise votre `$SHELL` lorsqu'il pointe vers `bash` ou `zsh`, sinon il choisit le premier `zsh` fonctionnant puis `bash` trouvé sur votre `PATH` et les emplacements d'installation standard |373| `CLAUDE_CODE_SHELL` | Définissez le shell que Claude Code utilise pour exécuter les commandes de l'outil Bash. Accepte un chemin vers un binaire `bash` ou `zsh`, par exemple `/opt/homebrew/bin/bash`. Les autres shells comme `fish` ne sont pas pris en charge. Si la valeur n'est pas un chemin `bash` ou `zsh` fonctionnant, Claude Code l'ignore et revient à la détection automatique. La détection automatique utilise votre `$SHELL` lorsqu'il pointe vers `bash` ou `zsh`, sinon il choisit le premier `zsh` fonctionnant puis `bash` trouvé sur votre `PATH` et les emplacements d'installation standard |

371| `CLAUDE_CODE_SHELL_PREFIX` | Préfixe de commande qui enveloppe les commandes shell que Claude Code génère : les appels de l'outil Bash, les [commandes hook](/docs/fr/hooks), les [commandes de ligne d'état](/docs/fr/statusline) et les [commandes de démarrage du serveur MCP](/docs/fr/mcp) stdio. Les crochets PowerShell et les crochets de forme exec s'exécutent sans le préfixe. Utile pour la journalisation ou l'audit. Définir un chemin d'exécutable nu comme `/path/to/logger.sh` exécute chaque commande comme `/path/to/logger.sh '<command>'`. Le wrapper reçoit la ligne de commande en tant qu'argument shell unique entre guillemets dans `$1`, afin que le wrapper doit réévaluer `$1` avec un shell, par exemple `exec bash -c "$1"`. Traiter `$1` comme un chemin d'exécutable nu casse les serveurs MCP stdio qui transmettent des arguments comme `npx -y <package>`. Pour les appels de l'outil Bash, `$1` contient l'invocation shell complète que Claude Code assemble, y compris la configuration de l'environnement, pas seulement la commande que Claude a exécutée |374| `CLAUDE_CODE_SHELL_PREFIX` | Préfixe de commande qui enveloppe les commandes shell que Claude Code génère : les appels de l'outil Bash, les commandes [hook](/docs/fr/hooks), les commandes [ligne d'état](/docs/fr/statusline) et les commandes de démarrage du [serveur MCP](/docs/fr/mcp) stdio. Les crochets PowerShell et les crochets de forme exec s'exécutent sans le préfixe. Utile pour la journalisation ou l'audit. Définir un chemin d'exécutable nu comme `/path/to/logger.sh` exécute chaque commande comme `/path/to/logger.sh '<command>'`. Le wrapper reçoit la ligne de commande en tant qu'argument shell-quoted unique dans `$1`, afin que le wrapper doit réévaluer `$1` avec un shell, par exemple `exec bash -c "$1"`. Traiter `$1` comme un chemin d'exécutable nu casse les serveurs MCP stdio qui transmettent des arguments comme `npx -y <package>`. Pour les appels de l'outil Bash, `$1` contient l'invocation shell complète que Claude Code assemble, y compris la configuration de l'environnement, pas seulement la commande que Claude a exécutée |

372| `CLAUDE_CODE_SIMPLE` | Définissez sur `1` pour exécuter avec un prompt système minimal et uniquement les outils Bash, lecture de fichier et édition de fichier. Les outils MCP de `--mcp-config` sont toujours disponibles. Désactive la découverte automatique des crochets, des compétences, des commandes personnalisées, des sous-agents, des plugins, des serveurs MCP, de la mémoire automatique et de CLAUDE.md. Les compétences dans un répertoire que vous transmettez avec `--add-dir` se chargent toujours. Les jetons OAuth et les identifiants du trousseau ne sont pas lus, afin que l'authentification Anthropic doit provenir de `ANTHROPIC_API_KEY` ou d'un `apiKeyHelper` dans `--settings`. Équivalent à la transmission de [`--bare`](/docs/fr/headless#start-faster-with-bare-mode) |375| `CLAUDE_CODE_SIMPLE` | Définissez sur `1` pour exécuter avec une invite système minimale et uniquement les outils Bash, lecture de fichier et édition de fichier. Les outils MCP de `--mcp-config` sont toujours disponibles. Désactive la découverte automatique des crochets, des compétences, des commandes personnalisées, des sous-agents, des plugins installés, des serveurs MCP, de la mémoire automatique et de CLAUDE.md. Les compétences dans un répertoire que vous transmettez avec `--add-dir` se chargent toujours. Les jetons OAuth et les identifiants du trousseau ne sont pas lus, afin que l'authentification Anthropic doit provenir de `ANTHROPIC_API_KEY` ou d'un `apiKeyHelper` dans `--settings`. Équivalent à la transmission de [`--bare`](/docs/fr/headless#start-faster-with-bare-mode) |

373| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Définissez sur `1` pour utiliser un prompt système plus court et des descriptions d'outils abrégées sur n'importe quel modèle. Définissez sur `0`, `false`, `no` ou `off` pour refuser même sur les modèles où l'expérience ou la configuration du serveur l'activerait autrement. L'ensemble complet d'outils, la découverte des crochets, des serveurs MCP et de CLAUDE.md restent activés |376| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Définissez sur `1` pour utiliser une invite système plus courte et des descriptions d'outils abrégées sur n'importe quel modèle. Définissez sur `0`, `false`, `no` ou `off` pour refuser même sur les modèles où l'expérience ou la configuration du serveur l'activerait autrement. L'ensemble complet d'outils, la découverte des crochets, des serveurs MCP et de CLAUDE.md restent activés |

374| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Ignorer l'authentification côté client pour [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), pour les passerelles qui signent les requêtes elles-mêmes |377| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Ignorez l'authentification côté client pour [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), pour les passerelles qui signent elles-mêmes les requêtes |

375| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | Définissez sur `1` pour désactiver le cache en processus des identifiants résolus à partir de la chaîne du fournisseur d'identifiants par défaut AWS, afin que Claude Code résout la chaîne à chaque requête API. Avec le cache désactivé, un profil soutenu par SSO demande des identifiants à IAM Identity Center à chaque requête. Voir [mise en cache des identifiants et délai d'expiration de la résolution](/docs/fr/amazon-bedrock#credential-caching-and-resolution-timeout). Nécessite Claude Code v2.1.207 ou ultérieur |378| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | Définissez sur `1` pour désactiver le cache en processus des identifiants résolus à partir de la chaîne de fournisseur d'identifiants par défaut AWS, afin que Claude Code résout la chaîne à chaque requête API. Avec le cache désactivé, un profil soutenu par SSO demande des identifiants à IAM Identity Center à chaque requête. Voir [mise en cache des identifiants et délai d'expiration de la résolution](/docs/fr/amazon-bedrock#credential-caching-and-resolution-timeout). Nécessite Claude Code v2.1.207 ou ultérieur |

376| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Ignorer l'authentification AWS pour Amazon Bedrock (par exemple, lors de l'utilisation d'une passerelle LLM) |379| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Ignorez l'authentification AWS pour Amazon Bedrock (par exemple, lors de l'utilisation d'une passerelle LLM) |

377| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | Définissez sur `1` pour traiter une vérification de disponibilité du [mode rapide](/docs/fr/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) échouée comme disponible, pour les réseaux qui bloquent la requête directe de la vérification à `api.anthropic.com`. Claude Code honore toujours une réponse « disabled by your organization » |380| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | Définissez sur `1` pour traiter une vérification de disponibilité du [mode rapide](/docs/fr/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) échouée comme disponible, pour les réseaux qui bloquent la requête directe de la vérification vers `api.anthropic.com`. Claude Code honore toujours une réponse « disabled by your organization » |

378| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Définissez sur `1` pour ignorer la vérification de disponibilité du [mode rapide](/docs/fr/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) côté client, pour les proxies qui interceptent la requête de la vérification plutôt que de la refuser. L'API rejette toujours les requêtes en mode rapide lorsque votre organisation a le mode rapide désactivé |381| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Définissez sur `1` pour ignorer la vérification de disponibilité du [mode rapide](/docs/fr/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) côté client, pour les proxies qui interceptent la requête de la vérification plutôt que de la refuser. L'API rejette toujours les requêtes en mode rapide lorsque votre organisation a le mode rapide désactivé |

379| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Ignorer l'authentification Azure pour Microsoft Foundry, pour un proxy ou une passerelle qui injecte son propre en-tête `Authorization`. Claude Code envoie les requêtes sans identifiant Azure et préserve l'en-tête `Authorization` que vous fournissez, par exemple via `ANTHROPIC_CUSTOM_HEADERS`. Ignoré lorsque `ANTHROPIC_FOUNDRY_API_KEY` ou `ANTHROPIC_FOUNDRY_AUTH_TOKEN` est défini. Avant v2.1.203, cette variable laissait le client Microsoft Foundry incapable d'envoyer des requêtes sauf si une clé API était également définie |382| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Ignorez l'authentification Azure pour Microsoft Foundry, pour un proxy ou une passerelle qui injecte son propre en-tête `Authorization`. Claude Code envoie les requêtes sans identifiant Azure et préserve l'en-tête `Authorization` que vous fournissez, par exemple via `ANTHROPIC_CUSTOM_HEADERS`. Ignoré lorsque `ANTHROPIC_FOUNDRY_API_KEY` ou `ANTHROPIC_FOUNDRY_AUTH_TOKEN` est défini. Avant v2.1.203, cette variable laissait le client Microsoft Foundry incapable d'envoyer des requêtes sauf si une clé API était également définie |

380| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Ignorer l'authentification AWS pour Amazon Bedrock Mantle (par exemple, lors de l'utilisation d'une passerelle LLM) |383| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Ignorez l'authentification AWS pour Amazon Bedrock Mantle (par exemple, lors de l'utilisation d'une passerelle LLM) |

381| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | Définissez sur `1` pour ignorer l'écriture de l'historique des prompts et des transcriptions de session sur le disque. Les sessions démarrées avec cette variable définie n'apparaissent pas dans `--resume`, `--continue` ou l'historique de la flèche vers le haut. Utile pour les sessions de script éphémères |384| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | Définissez sur `1` pour ignorer l'écriture de l'historique des invites et des transcriptions de session sur le disque. Les sessions démarrées avec cette variable définie n'apparaissent pas dans `--resume`, `--continue` ou l'historique de la flèche vers le haut. Utile pour les sessions de script éphémères |

382| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Ignorer l'authentification Google pour Google Cloud's Agent Platform (par exemple, lors de l'utilisation d'une passerelle LLM) |385| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Ignorez l'authentification Google pour Google Cloud's Agent Platform (par exemple, lors de l'utilisation d'une passerelle LLM) |

383| `CLAUDE_CODE_STARTUP_FAILURE_RESULTS` | Définissez sur `1` pour qu'une session démarrée avec `--output-format stream-json` écrive un [message de résultat nommant pourquoi Claude Code a refusé de démarrer](/docs/fr/agent-sdk/typescript#startup_failure_reason) pour les défaillances de démarrage qui se terminent autrement par stderr seul. Nécessite Claude Code v2.1.274 ou ultérieur |386| `CLAUDE_CODE_STARTUP_FAILURE_RESULTS` | Définissez sur `1` pour qu'une session démarrée avec `--output-format stream-json` écrive un [message de résultat nommant pourquoi Claude Code a refusé de démarrer](/docs/fr/agent-sdk/typescript#startup_failure_reason) pour les défaillances de démarrage qui se terminent autrement avec stderr seul. Nécessite Claude Code v2.1.274 ou ultérieur |

384| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Nombre maximum de fois consécutives qu'un crochet [Stop](/docs/fr/hooks#stop) ou [SubagentStop](/docs/fr/hooks#subagentstop) peut bloquer la fin du tour avant que Claude Code le remplace et termine le tour de toute façon (par défaut : 8). Définissez sur `0` pour désactiver le plafond. Augmentez ceci si votre crochet a légitimement besoin de plus d'itérations pour se résoudre |387| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Nombre maximum de fois consécutives qu'un crochet [Stop](/docs/fr/hooks#stop) ou [SubagentStop](/docs/fr/hooks#subagentstop) peut bloquer la fin du tour avant que Claude Code le remplace et termine le tour de toute façon (par défaut : 8). Définissez sur `0` pour désactiver le plafond. Augmentez ceci si votre crochet a légitimement besoin de plus d'itérations pour se résoudre |

385| `CLAUDE_CODE_SUBAGENT_MODEL` | Le modèle par défaut pour les [sous-agents](/docs/fr/sub-agents#choose-a-model), les coéquipiers de l'[équipe d'agents](/docs/fr/agent-teams#specify-teammates-and-models) et les [agents de flux de travail](/docs/fr/workflows) qui ne sont pas assignés à un modèle d'une autre manière. Accepte un alias comme `haiku` ou un nom de modèle complet. Deux sources prennent la priorité sur lui : un modèle que Claude transmet lorsqu'il génère l'agent, et un champ `model` dans la définition de l'agent, y compris `inherit`. Pour changer cela, définissez [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/fr/sub-agents#run-every-subagent-on-one-model). Voir [Choisir un modèle](/docs/fr/sub-agents#choose-a-model) pour l'ordre complet. Le définir sur `inherit` est identique à le laisser non défini. Avant v2.1.251, cette variable remplaçait à la fois le modèle par invocation et le champ `model` de la définition |388| `CLAUDE_CODE_SUBAGENT_MODEL` | Le modèle par défaut pour les [sous-agents](/docs/fr/sub-agents#choose-a-model), les coéquipiers de l'[équipe d'agents](/docs/fr/agent-teams#specify-teammates-and-models) et les agents de [flux de travail](/docs/fr/workflows) qui ne sont pas assignés à un modèle d'une autre manière. Accepte un alias comme `haiku` ou un nom de modèle complet. Deux sources ont la priorité sur lui : un modèle que Claude transmet lorsqu'il génère l'agent, et un champ `model` dans la définition de l'agent, y compris `inherit`. Pour changer cela, définissez [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/fr/sub-agents#run-every-subagent-on-one-model). Voir [Choisir un modèle](/docs/fr/sub-agents#choose-a-model) pour l'ordre complet. Le définir sur `inherit` est identique à le laisser non défini. Avant v2.1.251, cette variable remplaçait à la fois le modèle par invocation et le champ `model` de la définition |

386| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | Définissez sur `1` pour forcer un modèle sur les sous-agents, les coéquipiers et les agents de flux de travail. [Exécuter chaque sous-agent sur un modèle](/docs/fr/sub-agents#run-every-subagent-on-one-model) dit quel modèle c'est. Nécessite Claude Code v2.1.257 ou ultérieur |389| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | Définissez sur `1` pour forcer un modèle sur les sous-agents, les coéquipiers et les agents de flux de travail. [Exécuter chaque sous-agent sur un modèle](/docs/fr/sub-agents#run-every-subagent-on-one-model) dit quel modèle c'est. Nécessite Claude Code v2.1.257 ou ultérieur |

387| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | Définissez `5m` ou `1h`, les seules valeurs que Claude Code accepte, pour choisir la [durée de vie du cache du prompt](/docs/fr/prompt-caching#cache-lifetime) pour les requêtes en dehors de la conversation principale, telles que les [sous-agents](/docs/fr/sub-agents), les flux de travail et le travail d'arrière-plan. Prend la priorité sur le paramètre `subagentPromptCacheTtl` et sur `ENABLE_PROMPT_CACHING_1H`, et `FORCE_PROMPT_CACHING_5M` le remplace. L'API facture les écritures de cache d'une heure à un taux plus élevé. Nécessite Claude Code v2.1.242 ou ultérieur |390| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | Définissez `5m` ou `1h`, les seules valeurs que Claude Code accepte, pour choisir la [TTL du cache d'invite](/docs/fr/prompt-caching#cache-lifetime) pour les requêtes en dehors de la conversation principale, telles que les [sous-agents](/docs/fr/sub-agents), les flux de travail et le travail d'arrière-plan. A la priorité sur le paramètre `subagentPromptCacheTtl` et sur `ENABLE_PROMPT_CACHING_1H`, et `FORCE_PROMPT_CACHING_5M` le remplace. L'API facture les écritures de cache d'une heure à un taux plus élevé. Nécessite Claude Code v2.1.242 ou ultérieur |

388| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Définissez sur `1` pour supprimer les identifiants des environnements de sous-processus (outil Bash, crochets, serveurs MCP stdio) : les identifiants Anthropic et du fournisseur cloud, toute autre variable que Claude Code reconnaît comme un identifiant, et les identifiants intégrés dans les URL du registre de paquets. Le processus Claude parent garde ces identifiants pour les appels API, mais les processus enfants ne peuvent pas les lire, réduisant l'exposition aux attaques par injection de prompt qui tentent d'exfiltrer les secrets via l'expansion shell. Sur v2.1.251 ou ultérieur, le nettoyage supprime également les variables de pointeur de magasin de configuration propres à Claude Code (comme `CLAUDE_CONFIG_DIR`), afin qu'un processus enfant ne puisse pas localiser un répertoire de configuration réinstallé. Laissez le nettoyage non défini si un sous-processus a besoin de ces variables. Sur Linux, cela exécute également les sous-processus Bash dans un espace de noms PID isolé afin qu'ils ne puissent pas lire les environnements de processus hôte via `/proc` ; en tant qu'effet secondaire, `ps`, `pgrep` et `kill` ne peuvent pas voir ou signaler les processus hôte. `claude-code-action` définit ceci automatiquement lorsque `allowed_non_write_users` est configuré |391| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Définissez sur `1` pour supprimer les identifiants des environnements de sous-processus (outil Bash, crochets, serveurs MCP stdio) : les identifiants Anthropic et du fournisseur cloud, toute autre variable que Claude Code reconnaît comme un identifiant, et les identifiants intégrés dans les URL du registre de paquets. Le processus Claude parent conserve ces identifiants pour les appels API, mais les processus enfants ne peuvent pas les lire, réduisant l'exposition aux attaques par injection d'invite qui tentent d'exfiltrer les secrets via l'expansion shell. Sur v2.1.251 ou ultérieur, le nettoyage supprime également les variables de pointeur de magasin de configuration propres à Claude Code (comme `CLAUDE_CONFIG_DIR`), afin qu'un processus enfant ne puisse pas localiser un répertoire de configuration réinstallé. Laissez le nettoyage non défini si un sous-processus a besoin de ces variables. Sur Linux, cela exécute également les sous-processus Bash dans un espace de noms PID isolé afin qu'ils ne puissent pas lire les environnements de processus hôte via `/proc` ; en conséquence, `ps`, `pgrep` et `kill` ne peuvent pas voir ou signaler les processus hôte. `claude-code-action` définit ceci automatiquement lorsque `allowed_non_write_users` est configuré |

389| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | Définissez sur `1` en mode non interactif (le drapeau `-p`) pour attendre la fin de l'installation du plugin avant la première requête. Sans cela, les plugins s'installent en arrière-plan et peuvent ne pas être disponibles au premier tour. Combinez avec `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` pour limiter l'attente |392| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | Définissez sur `1` en mode non interactif (le drapeau `-p`) pour attendre la fin de l'installation du plugin avant la première requête. Sans cela, les plugins s'installent en arrière-plan et peuvent ne pas être disponibles au premier tour. Combinez avec `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` pour limiter l'attente |

390| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Délai d'expiration en millisecondes pour l'installation synchrone du plugin. Lorsqu'il est dépassé, Claude Code procède sans plugins et enregistre une erreur. Pas de valeur par défaut : sans cette variable, l'installation synchrone attend jusqu'à la fin |393| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Délai d'expiration en millisecondes pour l'installation synchrone du plugin. Lorsqu'il est dépassé, Claude Code procède sans plugins et enregistre une erreur. Pas de valeur par défaut : sans cette variable, l'installation synchrone attend jusqu'à la fin |

391| `CLAUDE_CODE_SYNC_SKILLS` | Définissez sur `1` en mode non interactif avec le drapeau `-p` pour faire en sorte que Claude Code télécharge les compétences activées pour votre compte claude.ai dans cette exécution et attende la liste d'entre elles, jusqu'à `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`, avant d'exécuter la première requête. Les téléchargements eux-mêmes se terminent en arrière-plan, et Claude attend le téléchargement d'une compétence lorsqu'il l'invoque. Nécessite l'authentification claude.ai. Les sessions de terminal où vous vous connectez avec votre compte claude.ai [téléchargent ces compétences](/docs/fr/skills#where-synced-skills-load) dans `~/.claude/skills/synced/` et se resynchronisent environ toutes les 10 minutes sans cette variable, afin de la définir uniquement lorsqu'une exécution `-p` a besoin de vos compétences actuelles à sa première requête. Avant v2.1.273, les sessions de terminal les téléchargeaient uniquement dans une exécution `-p` avec cette variable définie. Le nom du dossier `synced` est [réservé pour ce téléchargement](/docs/fr/skills#where-skills-live). Avant v2.1.227, les compétences téléchargeaient dans `~/.claude/skills/` directement. Claude Code applique [des règles supplémentaires aux compétences téléchargées](/docs/fr/skills#how-synced-skills-behave), comme ne pas exécuter leurs commandes `!` sur votre machine |394| `CLAUDE_CODE_SYNC_SKILLS` | Définissez sur `1` en mode non interactif avec le drapeau `-p` pour faire en sorte que Claude Code télécharge les compétences activées pour votre compte claude.ai dans cette exécution et attende la liste d'entre elles, jusqu'à `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`, avant d'exécuter la première requête. Les téléchargements eux-mêmes se terminent en arrière-plan, et Claude attend le téléchargement d'une compétence lorsqu'il l'invoque. Nécessite l'authentification claude.ai. Les sessions de terminal où vous vous connectez avec votre compte claude.ai [téléchargent ces compétences](/docs/fr/skills#where-synced-skills-load) dans `~/.claude/skills/synced/` et se resynchronisent environ toutes les 10 minutes sans cette variable, afin de la définir uniquement lorsqu'une exécution `-p` a besoin de vos compétences actuelles à sa première requête. Avant v2.1.273, les sessions de terminal les téléchargeaient uniquement dans une exécution `-p` avec cette variable définie. Le nom du dossier `synced` est [réservé pour ce téléchargement](/docs/fr/skills#where-skills-live). Avant v2.1.227, les compétences téléchargeaient dans `~/.claude/skills/` directement. Claude Code applique [des règles supplémentaires aux compétences téléchargées](/docs/fr/skills#how-synced-skills-behave), comme ne pas exécuter leurs commandes `!` sur votre machine |

392| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Délai d'expiration en millisecondes pour la resynchronisation des compétences qui s'exécute au milieu de la session lorsqu'une application construite sur le [SDK Agent](/docs/fr/agent-sdk/typescript#query-object) recharge les compétences (par défaut : 30000). Lorsqu'il est dépassé, le rechargement continue avec les compétences qui sont arrivées, et les téléchargements restants se terminent en arrière-plan |395| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Délai d'expiration en millisecondes pour la resynchronisation des compétences qui s'exécute au milieu de la session lorsqu'une application construite sur le [SDK Agent](/docs/fr/agent-sdk/typescript#query-object) recharge les compétences (par défaut : 30000). Lorsqu'il est dépassé, le rechargement continue avec les compétences qui sont arrivées, et les téléchargements restants se terminent en arrière-plan |

393| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Délai d'expiration en millisecondes pour que la première requête attende la liste de compétences initiale lorsque `CLAUDE_CODE_SYNC_SKILLS` est défini (par défaut : 5000). Lorsqu'il est dépassé, la première requête s'exécute avec les compétences qui sont arrivées. Les téléchargements se terminent en arrière-plan de toute façon, et Claude attend le téléchargement d'une compétence lorsqu'il l'invoque |396| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Délai d'expiration en millisecondes pour que la première requête attende la liste de compétences initiale lorsque `CLAUDE_CODE_SYNC_SKILLS` est défini (par défaut : 5000). Lorsqu'il est dépassé, la première requête s'exécute avec les compétences qui sont arrivées. Les téléchargements se terminent en arrière-plan de toute façon, et Claude attend le téléchargement d'une compétence lorsqu'il l'invoque |

394| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Définissez sur `false` pour désactiver la coloration syntaxique dans la sortie diff. Utile lorsque les couleurs interfèrent avec votre configuration de terminal. Pour désactiver également la coloration dans les blocs de code et les aperçus de fichiers, utilisez le paramètre [`syntaxHighlightingDisabled`](/docs/fr/settings-reference#syntaxhighlightingdisabled) |397| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Définissez sur `false` pour désactiver la coloration syntaxique dans la sortie diff. Utile lorsque les couleurs interfèrent avec votre configuration de terminal. Pour désactiver également la coloration dans les blocs de code et les aperçus de fichiers, utilisez le paramètre [`syntaxHighlightingDisabled`](/docs/fr/settings-reference#syntaxhighlightingdisabled) |

395| `CLAUDE_CODE_TASK_LIST_ID` | Partagez une liste de tâches entre les sessions. Définissez le même ID dans plusieurs instances Claude Code pour coordonner une liste de tâches partagée, dans les [sessions qui ont les outils Task](/docs/fr/tools-reference#task-tool-availability). Voir [Liste des tâches](/docs/fr/interactive-mode#task-list) |398| `CLAUDE_CODE_TASK_LIST_ID` | Partagez une liste de tâches entre les sessions. Définissez le même ID dans plusieurs instances Claude Code pour coordonner une liste de tâches partagée, dans [les sessions qui ont les outils Task](/docs/fr/tools-reference#task-tool-availability). Voir [Liste des tâches](/docs/fr/interactive-mode#task-list) |

396| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | Remplacez, en millisecondes, combien de temps une session non interactive attend à la sortie pour que son [équipe d'agents](/docs/fr/agent-teams) se démantèle. Accepte 1000 à 60000 ; une valeur hors plage est ignorée et la valeur par défaut de 10000 s'applique. Nécessite Claude Code v2.1.206 ou ultérieur |399| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | Remplacez, en millisecondes, combien de temps une session non interactive attend à la sortie pour que son [équipe d'agents](/docs/fr/agent-teams) se démantèle. Accepte 1000 à 60000 ; une valeur hors plage est ignorée et la valeur par défaut de 10000 s'applique. Nécessite Claude Code v2.1.206 ou ultérieur |

397| `CLAUDE_CODE_TMPDIR` | Remplacez le répertoire temporaire utilisé pour les fichiers temporaires internes. Claude Code ajoute `/claude-{uid}/` sur Unix ou `/claude/` sur Windows à ce chemin. Par défaut : `/tmp` sur macOS, `os.tmpdir()` sur Linux et Windows. Sur macOS et Linux, les sous-processus Bash [sandboxés](/docs/fr/sandboxing) reçoivent un `$TMPDIR` de secours court sous la valeur par défaut du système lorsque votre remplacement est un chemin long, car certains outils échouent lorsque les chemins temporaires deviennent trop longs. Les commandes Bash non sandboxées héritent de votre `$TMPDIR` shell inchangé. Les fichiers temporaires propres à Claude Code utilisent toujours votre remplacement. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) |400| `CLAUDE_CODE_TMPDIR` | Remplacez le répertoire temporaire utilisé pour les fichiers temporaires internes. Claude Code ajoute `/claude-{uid}/` sur Unix ou `/claude/` sur Windows à ce chemin. Par défaut : `/tmp` sur macOS, `os.tmpdir()` sur Linux et Windows. Sur macOS et Linux, les sous-processus Bash [sandboxés](/docs/fr/sandboxing) reçoivent un `$TMPDIR` de secours court sous la valeur par défaut du système lorsque votre substitution est un chemin long, car certains outils échouent lorsque les chemins temporaires deviennent trop longs. Les commandes Bash non sandboxées héritent du `$TMPDIR` de votre shell lorsqu'il est défini. Les fichiers temporaires propres à Claude Code utilisent toujours votre substitution. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) |

398| `CLAUDE_CODE_TMUX_TRUECOLOR` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour permettre la sortie truecolor 24 bits à l'intérieur de tmux. **Définir sur `0` ou `false` permet toujours truecolor**, contrairement à la plupart des variables activées/désactivées ; désactivez la variable pour restaurer le serrage 256 couleurs. Par défaut, Claude Code serre à 256 couleurs lorsque `$TMUX` est défini car tmux ne transmet pas les séquences d'échappement truecolor sauf s'il est configuré pour le faire. Définissez ceci après avoir ajouté `set -ga terminal-overrides ',*:Tc'` à votre `~/.tmux.conf`. Voir [Configuration du terminal](/docs/fr/terminal-config) pour les autres paramètres tmux |401| `CLAUDE_CODE_TMUX_TRUECOLOR` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour permettre la sortie truecolor 24 bits à l'intérieur de tmux. **Définir sur `0` ou `false` permet toujours truecolor**, contrairement à la plupart des variables activées/désactivées ; supprimez la variable pour restaurer le serrage 256 couleurs. Par défaut, Claude Code serre à 256 couleurs lorsque `$TMUX` est défini car tmux ne transmet pas les séquences d'échappement truecolor sauf s'il est configuré. Définissez ceci après avoir ajouté `set -ga terminal-overrides ',*:Tc'` à votre `~/.tmux.conf`. Voir [Configuration du terminal](/docs/fr/terminal-config) pour les autres paramètres tmux |

399| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | Sur Linux et WSL, définissez sur une liste séparée par des virgules des types de processus que Claude Code [exclut du plafond de mémoire de l'outil](/docs/fr/tools-reference#memory-limit-on-linux-and-wsl), comme `mcp` ou `lsp`. Définissez `none` pour limiter chaque type, ou `all-new` pour limiter uniquement les commandes des outils Bash, PowerShell et Monitor. Claude Code maintient les commandes des outils Bash, PowerShell et Monitor sous le plafond quel que soit ce que vous énumérez. Nécessite Claude Code v2.1.246 ou ultérieur |402| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | Sur Linux et WSL, définissez sur une liste séparée par des virgules des types de processus que Claude Code [exclut du plafond de mémoire de l'outil](/docs/fr/tools-reference#memory-limit-on-linux-and-wsl), comme `mcp` ou `lsp`. Définissez `none` pour limiter chaque type, ou `all-new` pour limiter uniquement les commandes des outils Bash, PowerShell et Monitor. Claude Code maintient les commandes des outils Bash, PowerShell et Monitor sous le plafond quel que soit ce que vous énumérez. Nécessite Claude Code v2.1.246 ou ultérieur |

400| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | Sur Linux et WSL, définissez sur une taille comme `4G` pour [limiter la mémoire que les commandes des outils Bash et PowerShell peuvent utiliser](/docs/fr/tools-reference#memory-limit-on-linux-and-wsl), et les commandes de l'outil Monitor sur v2.1.246 ou ultérieur. Écrivez la taille en chiffres simples, seuls pour un nombre d'octets ou avec un suffixe `K`, `M`, `G` ou `T`. Définissez `0` ou `off` pour désactiver le plafond. Une fois que le premier processus que Claude Code démarre a activé ou désactivé le plafond, une valeur modifiée prend effet la prochaine fois que vous lancez `claude`. Nécessite Claude Code v2.1.233 ou ultérieur |403| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | Sur Linux et WSL, définissez sur une taille comme `4G` pour [limiter la mémoire que les commandes des outils Bash et PowerShell peuvent utiliser](/docs/fr/tools-reference#memory-limit-on-linux-and-wsl), et les commandes de l'outil Monitor sur v2.1.246 ou ultérieur. Écrivez la taille en chiffres simples, seuls pour un nombre d'octets ou avec un suffixe `K`, `M`, `G` ou `T`. Définissez `0` ou `off` pour désactiver le plafond. Une fois que le premier processus que Claude Code démarre a activé ou désactivé le plafond, une valeur modifiée prend effet la prochaine fois que vous lancez `claude`. Nécessite Claude Code v2.1.233 ou ultérieur |

401| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Délai avant que Claude Code annule un dialogue qu'il transfère à un client distant comme un [Remote Control](/docs/fr/remote-control) ou un hôte SDK, ou le dialogue d'approbation pour un [message inter-session retenu](/docs/fr/cross-session-messaging#control-inbound-messages) ; les invites de permission et les questions `AskUserQuestion` utilisent leurs propres flux et ne sont pas régis par celui-ci. Sur Claude Code v2.1.236 ou ultérieur, il limite également le [dialogue de consentement des crédits d'utilisation Fable](/docs/fr/model-config#fable-and-usage-credits) au milieu de la session dans une session qui peut s'exécuter sans surveillance. [Contrôler les messages entrants](/docs/fr/cross-session-messaging#control-inbound-messages) et [les sessions non interactives](/docs/fr/cross-session-messaging#non-interactive-sessions) couvrent les règles d'expiration complètes des messages retenus, y compris les cas où le délai ne s'applique pas. Remplace le paramètre [`dialogExpiry`](/docs/fr/settings-reference#dialogexpiry). `0` ou une valeur négative désactive le délai |404| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Délai avant que Claude Code annule un dialogue qu'il transfère à un client distant comme un [Remote Control](/docs/fr/remote-control) ou un hôte SDK, ou le dialogue d'approbation pour un [message inter-session retenu](/docs/fr/cross-session-messaging#control-inbound-messages) ; les invites de permission et les questions `AskUserQuestion` utilisent leurs propres flux et ne sont pas régis par cela. Sur Claude Code v2.1.236 ou ultérieur, il limite également l'invite de consentement des crédits d'utilisation [Fable](/docs/fr/model-config#fable-and-usage-credits) au milieu de la session dans une session qui peut s'exécuter sans surveillance. [Contrôler les messages entrants](/docs/fr/cross-session-messaging#control-inbound-messages) et [les sessions non interactives](/docs/fr/cross-session-messaging#non-interactive-sessions) couvrent les règles d'expiration complètes des messages retenus, y compris les cas où le délai ne s'applique pas. Remplace le paramètre [`dialogExpiry`](/docs/fr/settings-reference#dialogexpiry). `0` ou une valeur négative désactive le délai |

402| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Utilisez [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) |405| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Utilisez [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) |

403| `CLAUDE_CODE_USE_BEDROCK` | Utilisez [Amazon Bedrock](/docs/fr/amazon-bedrock) |406| `CLAUDE_CODE_USE_BEDROCK` | Utilisez [Amazon Bedrock](/docs/fr/amazon-bedrock) |

404| `CLAUDE_CODE_USE_FOUNDRY` | Utilisez [Microsoft Foundry](/docs/fr/microsoft-foundry) |407| `CLAUDE_CODE_USE_FOUNDRY` | Utilisez [Microsoft Foundry](/docs/fr/microsoft-foundry) |

405| `CLAUDE_CODE_USE_MANTLE` | Utilisez le [point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint) d'Amazon Bedrock |408| `CLAUDE_CODE_USE_MANTLE` | Utilisez le [point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint) d'Amazon Bedrock |

406| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | Définissez sur `1` pour découvrir les commandes personnalisées, les sous-agents et les styles de sortie en utilisant les API de fichiers Node.js au lieu de ripgrep. Définissez ceci si le binaire ripgrep groupé est indisponible ou bloqué dans votre environnement. N'affecte pas les outils Grep ou de recherche de fichiers |409| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | Définissez sur `1` pour découvrir les commandes personnalisées, les sous-agents et les styles de sortie en utilisant les API de fichiers Node.js au lieu de ripgrep. Définissez ceci si le binaire ripgrep fourni est indisponible ou bloqué dans votre environnement. N'affecte pas les outils Grep ou de recherche de fichiers |

407| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | Contrôle l'outil PowerShell. Sur Windows sans Git Bash, l'outil est activé automatiquement ; définissez sur `0` pour le désactiver. Sur Windows avec Git Bash installé, l'outil est activé par défaut pour les comptes claude.ai et Console ; définissez sur `1` pour l'activer dans les sessions Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry, ou `0` pour le désactiver. Sur Linux, macOS et WSL, définissez sur `1` pour l'activer, ce qui nécessite `pwsh` sur votre `PATH`. Lorsqu'il est activé sur Windows, Claude peut exécuter les commandes PowerShell en mode natif au lieu de les router via Git Bash. Voir [Outil PowerShell](/docs/fr/tools-reference#powershell-tool) |410| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | Contrôle l'outil PowerShell. Sur Windows sans Git Bash, l'outil est activé automatiquement ; définissez sur `0` pour le désactiver. Sur Windows avec Git Bash installé, l'outil est activé par défaut pour les comptes claude.ai et Console ; définissez sur `1` pour l'activer dans les sessions Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry, ou `0` pour le désactiver. Sur Linux, macOS et WSL, définissez sur `1` pour l'activer, ce qui nécessite `pwsh` sur votre `PATH`. Lorsqu'il est activé sur Windows, Claude peut exécuter les commandes PowerShell en mode natif au lieu de les router via Git Bash. Voir [Outil PowerShell](/docs/fr/tools-reference#powershell-tool) |

408| `CLAUDE_CODE_USE_VERTEX` | Utilisez [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai) |411| `CLAUDE_CODE_USE_VERTEX` | Utilisez [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai) |

409| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | Définissez sur le nombre de millisecondes que [WebFetch](/docs/fr/tools-reference#webfetch-tool-behavior) garde la réponse de chaque URL récupérée en cache. La valeur par défaut est `900000`, ce qui est 15 minutes. Accepte uniquement des chiffres simples ; `0`, une décimale ou toute autre orthographe conserve la valeur par défaut. Claude Code lit la valeur une fois par lancement, afin qu'une modification dans un bloc `env` des paramètres s'applique lorsque vous lancez ensuite `claude`. Nécessite Claude Code v2.1.233 ou ultérieur |412| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | Définissez sur le nombre de millisecondes que [WebFetch](/docs/fr/tools-reference#webfetch-tool-behavior) maintient la réponse de chaque URL récupérée en cache. La valeur par défaut est `900000`, ce qui est 15 minutes. Accepte uniquement les chiffres simples ; `0`, une décimale ou toute autre orthographe conserve la valeur par défaut. Claude Code lit la valeur une fois par lancement, afin qu'une modification dans un bloc `env` des paramètres s'applique lorsque vous lancez ensuite `claude`. Nécessite Claude Code v2.1.233 ou ultérieur |

410| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | Limite supérieure en millisecondes sur combien de temps [WebFetch](/docs/fr/tools-reference#webfetch-tool-behavior) attend qu'une page se télécharge, y compris les redirections qu'elle suit. Un téléchargement qui n'est pas terminé à ce moment échoue avec une erreur de délai. La valeur par défaut est `300000`, ce qui est cinq minutes. Définissez sur `0` pour supprimer la limite. Accepte uniquement des chiffres simples ; une décimale ou toute autre orthographe conserve la valeur par défaut. Nécessite Claude Code v2.1.268 ou ultérieur |413| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | Limite supérieure en millisecondes sur combien de temps [WebFetch](/docs/fr/tools-reference#webfetch-tool-behavior) attend qu'une page se télécharge, y compris les redirections qu'elle suit. Un téléchargement qui n'est pas terminé à ce moment échoue avec une erreur de délai. La valeur par défaut est `300000`, ce qui est cinq minutes. Définissez sur `0` pour supprimer la limite. Accepte uniquement les chiffres simples ; une décimale ou toute autre orthographe conserve la valeur par défaut. Nécessite Claude Code v2.1.268 ou ultérieur |

411| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | Combien d'agents une seule exécution de [flux de travail](/docs/fr/workflows) exécute à la fois, de `1` à `256`. Par défaut, une exécution exécute jusqu'à 16 agents à la fois, moins lorsque Claude Code a moins de CPU disponibles ; les appels `agent()` en attente attendent un créneau libre. La transcription de chaque agent en cours d'exécution reste en mémoire de Claude Code, afin que les valeurs plus élevées augmentent l'utilisation de la mémoire. Accepte uniquement des chiffres simples ; les valeurs hors plage et les autres orthographes conservent la valeur par défaut. Nécessite Claude Code v2.1.269 ou ultérieur |414| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | Combien d'agents une seule exécution de [flux de travail](/docs/fr/workflows) exécute à la fois, de `1` à `256`. Par défaut, une exécution exécute jusqu'à 16 agents à la fois, moins lorsque Claude Code a moins de CPU disponibles ; les appels `agent()` en attente attendent un créneau libre. Chaque agent en cours d'exécution conserve sa transcription en mémoire de Claude Code, afin que les valeurs plus élevées augmentent l'utilisation de la mémoire. Accepte uniquement les chiffres simples ; les valeurs hors plage et les autres orthographes conservent la valeur par défaut. Nécessite Claude Code v2.1.269 ou ultérieur |

412| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Limite supérieure en millisecondes sur combien de temps un agent de [flux de travail](/docs/fr/workflows) attend la première réponse d'un frère de même préfixe avant d'envoyer sa propre première requête. Lorsqu'un fan-out démarre plusieurs agents qui partagent un [préfixe de cache du prompt](/docs/fr/workflows#prompt-caching-in-a-fan-out), Claude Code retient tous sauf le premier agent pendant jusqu'à ce temps afin que le reste lise le préfixe en cache au lieu de chacun le traiter sans cache. Par défaut `5000`. Définissez sur `0` pour désactiver l'attente. Lorsque `DISABLE_PROMPT_CACHING` est défini, les agents n'attendent jamais. Nécessite Claude Code v2.1.229 ou ultérieur |415| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Limite supérieure en millisecondes sur combien de temps un agent de [flux de travail](/docs/fr/workflows) attend la première réponse d'un frère de même préfixe avant d'envoyer sa propre première requête. Lorsqu'un fan-out démarre plusieurs agents qui partagent un [préfixe de cache d'invite](/docs/fr/workflows#prompt-caching-in-a-fan-out), Claude Code maintient tous sauf le premier agent pendant jusqu'à ce temps afin que le reste lise le préfixe en cache au lieu de chacun le traiter sans cache. Par défaut `5000`. Définissez sur `0` pour désactiver l'attente. Lorsque `DISABLE_PROMPT_CACHING` est défini, les agents n'attendent jamais. Nécessite Claude Code v2.1.229 ou ultérieur |

413| `CLAUDE_CONFIG_DIR` | Remplacez le répertoire de configuration (par défaut : `~/.claude`). Tous les paramètres, l'historique des sessions et les plugins sont stockés sous ce chemin. Pour les identifiants, voir [où Claude Code stocke les identifiants](/docs/fr/authentication#credential-management). Utile pour exécuter plusieurs comptes côte à côte : par exemple, `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) |416| `CLAUDE_CONFIG_DIR` | Remplacez le répertoire de configuration (par défaut : `~/.claude`). Tous les paramètres, l'historique des sessions et les plugins sont stockés sous ce chemin. Pour les identifiants, voir [où Claude Code stocke les identifiants](/docs/fr/authentication#credential-management). Utile pour exécuter plusieurs comptes côte à côte : par exemple, `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) |

414| `CLAUDE_DISABLE_ADOPT` | Définissez sur `1` pour arrêter le travail d'arrière-plan en vol au lieu de le reporter lorsque vous mettez une session en arrière-plan en appuyant sur `←` ou avec [`/background`](/docs/fr/agent-view#from-inside-a-session). Claude Code vous demande de confirmer avant de mettre en arrière-plan, puis arrête les tâches qui seraient autrement reportées. Nécessite Claude Code v2.1.195 ou ultérieur |417| `CLAUDE_DISABLE_ADOPT` | Définissez sur `1` pour arrêter le travail d'arrière-plan en vol au lieu de le reporter lorsque vous mettez une session en arrière-plan en appuyant sur `←` ou avec [`/background`](/docs/fr/agent-view#from-inside-a-session). Claude Code vous demande de confirmer avant de mettre en arrière-plan, puis arrête les tâches qui seraient autrement reportées. Nécessite Claude Code v2.1.195 ou ultérieur |

415| `CLAUDE_EFFORT` | Défini automatiquement dans les sous-processus de l'outil Bash et les commandes hook au [niveau d'effort](/docs/fr/model-config#adjust-effort-level) en vigueur lorsque le sous-processus démarre : `low`, `medium`, `high`, `xhigh` ou `max`. Ultracode n'est pas un niveau distinct et signale comme `xhigh`. Correspond au champ `effort.level` transmis aux [crochets](/docs/fr/hooks). Défini uniquement lorsque le modèle actuel supporte le paramètre d'effort |418| `CLAUDE_EFFORT` | Défini automatiquement dans les sous-processus de l'outil Bash et les commandes hook au [niveau d'effort](/docs/fr/model-config#adjust-effort-level) en vigueur lorsque le sous-processus démarre : `low`, `medium`, `high`, `xhigh` ou `max`. Correspond au champ `effort.level` transmis aux [crochets](/docs/fr/hooks). Défini uniquement lorsque le modèle actuel supporte le paramètre d'effort |

416| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Définissez sur `1` pour forcer l'activation du chien de garde d'inactivité de flux au niveau des octets, ou définissez sur `0` pour le forcer à désactiver. `0` désactive également le [délai du premier octet](/docs/fr/network-config#streaming-idle-watchdogs) sur les connexions où ce délai s'exécute. Lorsqu'il n'est pas défini, le chien de garde est activé par défaut pour les connexions API Anthropic directes et [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), et pour les réponses en continu sur les connexions de [passerelle](/docs/fr/gateways) atteintes via `ANTHROPIC_BASE_URL` ou `ANTHROPIC_AWS_BASE_URL` ; avant v2.1.222, il ne s'exécutait pas sur ces connexions de passerelle, afin que le chien de garde au niveau des événements puisse signaler une stagnation là-bas même tandis que les pings de maintien de la connexion arrivaient. Pour les délais d'expiration et la façon dont les minuteurs interagissent, voir [Chiens de garde d'inactivité de flux](/docs/fr/network-config#streaming-idle-watchdogs) |419| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Définissez sur `1` pour forcer l'activation du chien de garde d'inactivité de flux au niveau des octets, ou définissez sur `0` pour le forcer à désactiver. `0` désactive également le [délai du premier octet](/docs/fr/network-config#streaming-idle-watchdogs) sur les connexions où ce délai s'exécute. Lorsqu'il n'est pas défini, le chien de garde est activé par défaut pour les connexions API Anthropic directes et [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), et pour les réponses en continu sur les connexions [passerelle](/docs/fr/gateways) atteintes via `ANTHROPIC_BASE_URL` ou `ANTHROPIC_AWS_BASE_URL` ; avant v2.1.222, il ne s'exécutait pas sur ces connexions de passerelle, afin que le chien de garde au niveau des événements puisse signaler une stagnation là même tandis que les pings de maintien de la connexion arrivaient. Pour les délais d'expiration et la façon dont les minuteurs interagissent, voir [Chiens de garde d'inactivité de flux](/docs/fr/network-config#streaming-idle-watchdogs) |

417| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Définissez sur `1` pour activer le chien de garde d'inactivité de flux au niveau des octets sur les réponses Amazon Bedrock `vnd.amazon.eventstream`, ce qui active également le [délai du premier octet](/docs/fr/network-config#streaming-idle-watchdogs) sur les requêtes en continu Bedrock. Désactivé par défaut. Configurez le délai d'expiration avec `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |420| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Définissez sur `1` pour activer le chien de garde d'inactivité de flux au niveau des octets sur les réponses Amazon Bedrock `vnd.amazon.eventstream`, ce qui active également le [délai du premier octet](/docs/fr/network-config#streaming-idle-watchdogs) sur les requêtes en continu Bedrock. Désactivé par défaut. Configurez le délai d'expiration avec `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |

418| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Définissez sur `0` pour forcer la désactivation du chien de garde d'inactivité de flux au niveau des événements, ou définissez sur `1` pour le forcer à activer. Lorsqu'il n'est pas défini, le chien de garde est activé par défaut pour tous les fournisseurs. Avant v2.1.196, la valeur par défaut non définie était contrôlée par le serveur sur l'API Anthropic directe et désactivée sur les autres fournisseurs. Configurez le délai d'expiration avec `CLAUDE_STREAM_IDLE_TIMEOUT_MS` ; pour les autres minuteurs de stagnation qui s'exécutent aux côtés de celui-ci, voir [Chiens de garde d'inactivité de flux](/docs/fr/network-config#streaming-idle-watchdogs) |421| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Définissez sur `0` pour forcer la désactivation du chien de garde d'inactivité de flux au niveau des événements, ou définissez sur `1` pour le forcer à activer. Lorsqu'il n'est pas défini, le chien de garde est activé par défaut pour tous les fournisseurs. Avant v2.1.196, la valeur par défaut non définie était contrôlée par le serveur sur l'API Anthropic directe et désactivée sur les autres fournisseurs. Configurez le délai d'expiration avec `CLAUDE_STREAM_IDLE_TIMEOUT_MS` ; pour les autres minuteurs de stagnation qui s'exécutent aux côtés de celui-ci, voir [Chiens de garde d'inactivité de flux](/docs/fr/network-config#streaming-idle-watchdogs) |

419| `CLAUDE_ENV_FILE` | Chemin d'accès à un script shell dont le contenu Claude Code exécute avant chaque commande Bash dans le même processus shell, afin que les exports du fichier soient visibles à la commande. Utilisez pour persister l'activation virtualenv ou conda entre les commandes. Également rempli dynamiquement par les crochets [SessionStart](/docs/fr/hooks#persist-environment-variables), [Setup](/docs/fr/hooks#setup), [CwdChanged](/docs/fr/hooks#cwdchanged) et [FileChanged](/docs/fr/hooks#filechanged) |422| `CLAUDE_ENV_FILE` | Chemin d'accès à un script shell dont le contenu Claude Code exécute avant chaque commande Bash dans le même processus shell, afin que les exports du fichier soient visibles à la commande. Utilisez pour persister l'activation virtualenv ou conda entre les commandes. Également rempli dynamiquement par les crochets [SessionStart](/docs/fr/hooks#persist-environment-variables), [Setup](/docs/fr/hooks#setup), [CwdChanged](/docs/fr/hooks#cwdchanged) et [FileChanged](/docs/fr/hooks#filechanged) |

420| `CLAUDE_JOB_DIR` | Défini par Claude Code dans chaque [session d'arrière-plan](/docs/fr/agent-view) à ce répertoire `~/.claude/jobs/<id>` de la session. Les commandes shell que la session exécute l'héritent. Écrivez les fichiers de travail temporaire à [`$CLAUDE_JOB_DIR/tmp`](/docs/fr/agent-view#where-state-is-stored). Les appels `Write` et `Edit` de Claude là-bas ne demandent pas la permission, et le répertoire est supprimé lorsque la session est supprimée |423| `CLAUDE_JOB_DIR` | Défini par Claude Code dans chaque [session d'arrière-plan](/docs/fr/agent-view) au répertoire `~/.claude/jobs/<id>` de cette session. Les commandes shell que la session exécute l'héritent. Écrivez les fichiers de travail temporaire à [`$CLAUDE_JOB_DIR/tmp`](/docs/fr/agent-view#where-state-is-stored). Les appels `Write` et `Edit` de Claude là ne demandent pas la permission, et le répertoire est supprimé lorsque la session est supprimée |

421| `CLAUDE_PID` | Claude Code définit ceci à son propre ID de processus dans les sous-processus qu'il génère : les commandes de l'outil Bash et PowerShell et les commandes hook. Sur Linux, l'intégration shell de l'outil Bash l'utilise pour refuser un modèle `pkill` qui correspondrait au processus Claude Code lui-même ; voir [la référence d'erreur](/docs/fr/errors#pkill-pattern-matches-the-claude-code-process). Lisez-le à partir de vos propres scripts pour identifier ou signaler délibérément le processus Claude Code parent. Nécessite Claude Code v2.1.214 ou ultérieur |424| `CLAUDE_PID` | Claude Code définit ceci à son propre ID de processus dans les sous-processus qu'il génère : les commandes de l'outil Bash et PowerShell et les commandes hook. Sur Linux, l'intégration shell de l'outil Bash l'utilise pour refuser un modèle `pkill` qui correspondrait au processus Claude Code lui-même ; voir [la référence d'erreur](/docs/fr/errors#pkill-pattern-matches-the-claude-code-process). Lisez-le à partir de vos propres scripts pour identifier ou signaler délibérément le processus Claude Code parent. Nécessite Claude Code v2.1.214 ou ultérieur |

422| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Préfixe pour les noms de session [Remote Control](/docs/fr/remote-control) générés automatiquement lorsqu'aucun nom explicite n'est fourni. Par défaut, le nom d'hôte de votre machine, produisant des noms comme `myhost-graceful-unicorn`. Le [drapeau CLI `--remote-control-session-name-prefix`](/docs/fr/cli-reference#cli-flags) définit la même valeur pour une seule invocation |425| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Préfixe pour les noms de session [Remote Control](/docs/fr/remote-control) générés automatiquement lorsqu'aucun nom explicite n'est fourni. Par défaut, le nom d'hôte de votre machine, produisant des noms comme `myhost-graceful-unicorn`. Le [drapeau CLI `--remote-control-session-name-prefix`](/docs/fr/cli-reference#cli-flags) définit la même valeur pour une seule invocation |

423| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | Délai en millisecondes pour le premier octet de réponse d'une requête en continu, sur les connexions où le [délai du premier octet](/docs/fr/network-config#streaming-idle-watchdogs) s'exécute. Pour la façon dont Claude Code le serre, le temps supplémentaire qu'il ajoute pour les grands corps de requête et la façon dont il choisit le délai lorsque vous le laissez non défini, voir [Pas de réponse de l'API](/docs/fr/errors#no-response-from-api). Nécessite Claude Code v2.1.242 ou ultérieur |426| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | Délai en millisecondes pour le premier octet de réponse d'une requête en continu, sur les connexions où le [délai du premier octet](/docs/fr/network-config#streaming-idle-watchdogs) s'exécute. Pour la façon dont Claude Code le serre, le temps supplémentaire qu'il ajoute pour les grands corps de requête et la façon dont il choisit le délai lorsque vous le laissez non défini, voir [Pas de réponse de l'API](/docs/fr/errors#no-response-from-api). Nécessite Claude Code v2.1.242 ou ultérieur |

424| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Délai d'expiration en millisecondes avant que les chiens de garde d'inactivité de flux au niveau des événements et des octets ferment une connexion bloquée. Lorsque vous définissez cette variable explicitement, le minimum est `300000` (5 minutes) ; les valeurs inférieures sont silencieusement serrées pour absorber les pauses de réflexion étendue et la mise en mémoire tampon du proxy, et le chien de garde au niveau des octets limite la valeur à 30 minutes. `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` prend la priorité sur cette variable pour le chien de garde au niveau des octets. Pour les valeurs par défaut non définies par chien de garde, voir [Chiens de garde d'inactivité de flux](/docs/fr/network-config#streaming-idle-watchdogs) |427| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Délai d'expiration en millisecondes avant que les chiens de garde d'inactivité de flux au niveau des événements et des octets ferment une connexion bloquée. Lorsque vous définissez cette variable explicitement, le minimum est `300000` (5 minutes) ; les valeurs inférieures sont silencieusement serrées pour absorber les pauses de réflexion étendue et la mise en mémoire tampon du proxy, et le chien de garde au niveau des octets limite la valeur à 30 minutes. `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` a la priorité sur cette variable pour le chien de garde au niveau des octets. Pour les valeurs par défaut non définies par chien de garde, voir [Chiens de garde d'inactivité de flux](/docs/fr/network-config#streaming-idle-watchdogs) |

425| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | Supprimé dans v2.1.260 et maintenant un no-op. Auparavant, limitait combien de temps une [commande shell d'arrière-plan](/docs/fr/interactive-mode#background-bash-commands) qu'un [sous-agent](/docs/fr/sub-agents) a démarrée pouvait s'exécuter, en millisecondes, avec une valeur par défaut de 60 minutes. Voir [les règles de durée de vie de la commande d'arrière-plan](/docs/fr/tools-reference#background-commands) |428| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | Supprimé dans v2.1.260 et maintenant un no-op. Auparavant, limitait combien de temps une [commande shell d'arrière-plan](/docs/fr/interactive-mode#background-bash-commands) qu'un [sous-agent](/docs/fr/sub-agents) a démarrée pouvait s'exécuter, en millisecondes, avec une valeur par défaut de 60 minutes. Voir [les règles de durée de vie de la commande d'arrière-plan](/docs/fr/tools-reference#background-commands) |

426| `DEBUG` | Définissez sur `1` pour activer le mode débogage, équivalent au lancement avec [`--debug`](/docs/fr/cli-reference#cli-flags). Les journaux de débogage sont écrits dans `~/.claude/debug/<session-id>.txt`, ou dans le chemin défini par `CLAUDE_CODE_DEBUG_LOGS_DIR`. Seules les valeurs vraies `1`, `true`, `yes` et `on` activent le mode débogage, afin que les modèles d'espace de noms comme `DEBUG=express:*` définis pour d'autres outils ne le déclenchent pas |429| `DEBUG` | Définissez sur `1` pour activer le mode débogage, équivalent au lancement avec [`--debug`](/docs/fr/cli-reference#cli-flags). Les journaux de débogage sont écrits dans `~/.claude/debug/<session-id>.txt`, ou dans le chemin défini par `CLAUDE_CODE_DEBUG_LOGS_DIR`. Seules les valeurs véridiques `1`, `true`, `yes` et `on` activent le mode débogage, afin que les modèles d'espace de noms comme `DEBUG=express:*` définis pour d'autres outils ne le déclenchent pas |

427| `DISABLE_AUTOUPDATER` | Définissez sur `1` pour désactiver les mises à jour automatiques d'arrière-plan. La commande manuelle `claude update` fonctionne toujours. Utilisez `DISABLE_UPDATES` pour bloquer les deux |430| `DISABLE_AUTOUPDATER` | Définissez sur `1` pour désactiver les mises à jour automatiques d'arrière-plan. La commande manuelle `claude update` fonctionne toujours. Utilisez `DISABLE_UPDATES` pour bloquer les deux |

428| `DISABLE_AUTO_COMPACT` | Définissez sur `1` pour désactiver la compaction automatique lorsque vous approchez de la limite de contexte. La commande manuelle `/compact` reste disponible. Utilisez lorsque vous souhaitez un contrôle explicite sur le moment où la compaction se produit. Remplace le paramètre [`autoCompactEnabled`](/docs/fr/settings-reference#autocompactenabled) |431| `DISABLE_AUTO_COMPACT` | Définissez sur `1` pour désactiver la compaction automatique lorsque vous approchez de la limite de contexte. La commande manuelle `/compact` reste disponible. Utilisez lorsque vous souhaitez un contrôle explicite sur quand la compaction se produit. Remplace le paramètre [`autoCompactEnabled`](/docs/fr/settings-reference#autocompactenabled) |

429| `DISABLE_COMPACT` | Définissez sur `1` pour désactiver toute la compaction : à la fois la compaction automatique et la commande manuelle `/compact` |432| `DISABLE_COMPACT` | Définissez sur `1` pour désactiver toute la compaction : à la fois la compaction automatique et la commande manuelle `/compact` |

430| `DISABLE_COST_WARNINGS` | Définissez sur `1` pour désactiver les messages d'avertissement de coût |433| `DISABLE_COST_WARNINGS` | Définissez sur `1` pour désactiver les messages d'avertissement de coût |

431| `DISABLE_DOCTOR_COMMAND` | Définissez sur `1` pour masquer la compétence de vérification [`/doctor`](/docs/fr/commands#all-commands) et son alias `/checkup`. Utile pour les déploiements gérés où les utilisateurs ne doivent pas exécuter les diagnostics de configuration à partir d'une session. N'affecte pas la commande de terminal `claude doctor`. Avant v2.1.205, cette variable masquait l'écran de diagnostics `/doctor` |434| `DISABLE_DOCTOR_COMMAND` | Définissez sur `1` pour masquer la compétence de vérification de configuration [`/doctor`](/docs/fr/commands#all-commands) et son alias `/checkup`. Utile pour les déploiements gérés où les utilisateurs ne doivent pas exécuter les diagnostics de configuration à partir d'une session. N'affecte pas la commande de terminal `claude doctor`. Avant v2.1.205, cette variable masquait l'écran de diagnostics `/doctor` |

432| `DISABLE_ERROR_REPORTING` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour refuser la signalisation des erreurs. **Définir sur `0` ou `false` refuse toujours**, contrairement à la plupart des variables activées/désactivées ; désactivez la variable pour réactiver la signalisation des erreurs |435| `DISABLE_ERROR_REPORTING` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour refuser la signalisation des erreurs. **Définir sur `0` ou `false` refuse toujours**, contrairement à la plupart des variables activées/désactivées ; supprimez la variable pour réactiver la signalisation des erreurs |

433| `DISABLE_EXTRA_USAGE_COMMAND` | Définissez sur `1` pour masquer la commande `/usage-credits` qui permet aux utilisateurs d'acheter une utilisation supplémentaire au-delà des limites de débit |436| `DISABLE_EXTRA_USAGE_COMMAND` | Définissez sur `1` pour masquer la commande `/usage-credits` qui permet aux utilisateurs d'acheter une utilisation supplémentaire au-delà des limites de débit |

434| `DISABLE_FEEDBACK_COMMAND` | Définissez sur `1` pour désactiver la commande `/feedback` et les [commentaires rédigés par Claude](/docs/fr/tools-reference#sendfeedback-tool-behavior). Désactive également `/bug` et `/share`, qui signalent via le même chemin ; avant v2.1.212, c'étaient des alias de `/feedback`, afin que la commande soit désactivée sous chaque nom. Le nom plus ancien `DISABLE_BUG_COMMAND` est également accepté |437| `DISABLE_FEEDBACK_COMMAND` | Définissez sur `1` pour désactiver la commande `/feedback` et les [commentaires rédigés par Claude](/docs/fr/tools-reference#sendfeedback-tool-behavior). Désactive également `/bug` et `/share`, qui signalent via le même chemin ; avant v2.1.212, c'étaient des alias de `/feedback`, afin que la commande soit désactivée sous chaque nom. Le nom plus ancien `DISABLE_BUG_COMMAND` est également accepté |

435| `DISABLE_GROWTHBOOK` | Définissez sur `1` ou `true` pour désactiver la récupération des drapeaux de fonctionnalité GrowthBook et utiliser les valeurs par défaut du code pour chaque drapeau. Cela rend [Remote Control](/docs/fr/remote-control#requirements) et les autres [fonctionnalités qui nécessitent la récupération des drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching) indisponibles. Définir sur `0` ou `false` laisse la récupération activée. La journalisation des événements de télémétrie reste activée sauf si `DISABLE_TELEMETRY` est également défini |438| `DISABLE_GROWTHBOOK` | Définissez sur `1` ou `true` pour désactiver la récupération des drapeaux de fonctionnalité GrowthBook et utiliser les valeurs par défaut du code pour chaque drapeau. Cela rend [Remote Control](/docs/fr/remote-control#requirements) et les autres [fonctionnalités qui nécessitent la récupération des drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching) indisponibles. Définir sur `0` ou `false` laisse la récupération activée. La journalisation des événements de télémétrie reste activée sauf si `DISABLE_TELEMETRY` est également défini |

436| `DISABLE_INSTALLATION_CHECKS` | Définissez sur `1` pour désactiver les avertissements d'installation. Utilisez uniquement lorsque vous gérez manuellement l'emplacement d'installation, car cela peut masquer les problèmes avec les installations standard |439| `DISABLE_INSTALLATION_CHECKS` | Définissez sur `1` pour désactiver les avertissements d'installation. Utilisez uniquement lorsque vous gérez manuellement l'emplacement d'installation, car cela peut masquer les problèmes avec les installations standard |

437| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | Définissez sur `1` pour masquer la commande `/install-github-app`. Déjà masquée lors de l'utilisation de fournisseurs tiers (Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry) |440| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | Définissez sur `1` pour masquer la commande `/install-github-app`. Déjà masquée lors de l'utilisation de fournisseurs tiers (Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry) |

438| `DISABLE_INTERLEAVED_THINKING` | Définissez sur `1` pour empêcher l'envoi de l'en-tête bêta de réflexion entrelacée. Utile lorsque votre passerelle LLM ou fournisseur ne supporte pas la [réflexion entrelacée](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) |441| `DISABLE_INTERLEAVED_THINKING` | Définissez sur `1` pour empêcher l'envoi de l'en-tête bêta de réflexion entrelacée. Utile lorsque votre passerelle LLM ou votre fournisseur ne supporte pas la [réflexion entrelacée](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) |

439| `DISABLE_LOGIN_COMMAND` | Définissez sur `1` pour masquer la commande `/login`. Utile lorsque l'authentification est gérée en externe via des clés API ou `apiKeyHelper` |442| `DISABLE_LOGIN_COMMAND` | Définissez sur `1` pour masquer la commande `/login`. Utile lorsque l'authentification est gérée en externe via des clés API ou `apiKeyHelper` |

440| `DISABLE_LOGOUT_COMMAND` | Définissez sur `1` pour masquer la commande `/logout` |443| `DISABLE_LOGOUT_COMMAND` | Définissez sur `1` pour masquer la commande `/logout` |

441| `DISABLE_PROMPT_CACHING` | Définissez sur `1` pour désactiver la [mise en cache du prompt](/docs/fr/prompt-caching#disable-prompt-caching) pour tous les modèles (prend la priorité sur les paramètres par modèle) |444| `DISABLE_PROMPT_CACHING` | Définissez sur `1` pour désactiver la [mise en cache des invites](/docs/fr/prompt-caching#disable-prompt-caching) pour tous les modèles (a la priorité sur les paramètres par modèle) |

442| `DISABLE_PROMPT_CACHING_FABLE` | Définissez sur `1` pour désactiver la mise en cache du prompt pour les modèles Fable |445| `DISABLE_PROMPT_CACHING_FABLE` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Fable |

443| `DISABLE_PROMPT_CACHING_HAIKU` | Définissez sur `1` pour désactiver la mise en cache du prompt pour les modèles Haiku |446| `DISABLE_PROMPT_CACHING_HAIKU` | Définissez sur `1` pour désactiver la mise en cache des invites pour le [modèle Haiku par défaut](/docs/fr/prompt-caching#disable-prompt-caching), où qu'il s'exécute |

444| `DISABLE_PROMPT_CACHING_OPUS` | Définissez sur `1` pour désactiver la mise en cache du prompt pour les modèles Opus |447| `DISABLE_PROMPT_CACHING_OPUS` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Opus |

445| `DISABLE_PROMPT_CACHING_SONNET` | Définissez sur `1` pour désactiver la mise en cache du prompt pour les modèles Sonnet |448| `DISABLE_PROMPT_CACHING_SONNET` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Sonnet |

446| `DISABLE_TELEMETRY` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour refuser la télémétrie. **Définir sur `0` ou `false` refuse toujours**, contrairement à la plupart des variables activées/désactivées ; désactivez la variable pour réactiver la télémétrie. Les événements de télémétrie n'incluent pas les données utilisateur comme le code, les chemins de fichiers ou les commandes bash. Désactive également la récupération des drapeaux de fonctionnalité avec le même effet que `DISABLE_GROWTHBOOK`, ce qui rend [Remote Control](/docs/fr/remote-control#requirements) et les autres [fonctionnalités qui nécessitent la récupération des drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching) indisponibles. Voir [Désactiver la télémétrie pour votre organisation](/docs/fr/managed-settings#turn-telemetry-off-for-your-organization) |449| `DISABLE_TELEMETRY` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour refuser la télémétrie. **Définir sur `0` ou `false` refuse toujours**, contrairement à la plupart des variables activées/désactivées ; supprimez la variable pour réactiver la télémétrie. Les événements de télémétrie n'incluent pas les données utilisateur comme le code, les chemins de fichiers ou les commandes Bash. Désactive également la [récupération des drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching). Voir [Désactiver la télémétrie pour votre organisation](/docs/fr/managed-settings#turn-telemetry-off-for-your-organization) |

447| `DISABLE_UPDATES` | Définissez sur `1` pour bloquer toutes les mises à jour, y compris la commande manuelle `claude update` et `claude install`. Plus strict que `DISABLE_AUTOUPDATER`. Utilisez lorsque vous distribuez Claude Code via vos propres canaux et que les utilisateurs ne doivent pas se mettre à jour eux-mêmes |450| `DISABLE_UPDATES` | Définissez sur `1` pour bloquer toutes les mises à jour, y compris la commande manuelle `claude update` et `claude install`. Plus strict que `DISABLE_AUTOUPDATER`. Utilisez lorsque vous distribuez Claude Code via vos propres canaux et que les utilisateurs ne doivent pas se mettre à jour eux-mêmes |

448| `DISABLE_UPGRADE_COMMAND` | Définissez sur `1` pour masquer la commande `/upgrade` |451| `DISABLE_UPGRADE_COMMAND` | Définissez sur `1` pour masquer la commande `/upgrade` |

449| `DO_NOT_TRACK` | Définissez sur `1` pour refuser la télémétrie, avec le même effet que `DISABLE_TELEMETRY`, y compris rendre [Remote Control](/docs/fr/remote-control#requirements) et les autres [fonctionnalités qui nécessitent la récupération des drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching) indisponibles. Claude Code lit cette variable en tant que booléen standard, afin que `0` laisse la télémétrie activée, et l'honore en tant que convention inter-outils reconnue par de nombreux CLI de développeur |452| `DO_NOT_TRACK` | Définissez sur `1` pour refuser la télémétrie, avec le même effet que `DISABLE_TELEMETRY`, y compris sur la [récupération des drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching). Claude Code lit cette variable en tant que booléen standard, afin que `0` laisse la télémétrie activée, et l'honore en tant que convention inter-outils reconnue par de nombreux CLI de développeur |

450| `ENABLE_BETA_TRACING_DETAILED` | Définissez sur `1`, avec `BETA_TRACING_ENDPOINT`, pour activer le [traçage bêta détaillé](/docs/fr/monitoring-usage#traces-beta), qui ajoute des attributs porteurs de contenu et l'intervalle `claude_code.hook`. Les sessions CLI interactives nécessitent également que votre organisation soit sur liste blanche pour la bêta. Les deux variables sont ignorées dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) |453| `ENABLE_BETA_TRACING_DETAILED` | Définissez sur `1`, avec `BETA_TRACING_ENDPOINT`, pour activer le [traçage bêta détaillé](/docs/fr/monitoring-usage#traces-beta), qui ajoute des attributs de span porteurs de contenu et le span `claude_code.hook`. Les sessions CLI interactives nécessitent également que votre organisation soit sur la liste blanche pour la bêta. Les deux variables sont ignorées dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env) |

451| `ENABLE_CLAUDEAI_MCP_SERVERS` | Définissez sur `false` pour empêcher Claude Code de récupérer les [serveurs MCP claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai). Activé par défaut pour les utilisateurs connectés. Pour désactiver par projet ou par organisation, définissez [`disableClaudeAiConnectors`](/docs/fr/settings-reference#disableclaudeaiconnectors) dans les paramètres à la place |454| `ENABLE_CLAUDEAI_MCP_SERVERS` | Définissez sur `false` pour empêcher Claude Code de récupérer les [serveurs MCP claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai). Activé par défaut pour les utilisateurs connectés. Pour désactiver par projet ou par organisation, définissez [`disableClaudeAiConnectors`](/docs/fr/settings-reference#disableclaudeaiconnectors) dans les paramètres à la place |

452| `ENABLE_PROMPT_CACHING_1H` | Définissez sur `1` pour demander une [durée de vie du cache du prompt](/docs/fr/prompt-caching#cache-lifetime) d'une heure au lieu des 5 minutes par défaut. Destiné aux utilisateurs de clé API, [Amazon Bedrock](/docs/fr/amazon-bedrock), [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai), [Microsoft Foundry](/docs/fr/microsoft-foundry) et [Claude Platform on AWS](/docs/fr/claude-platform-on-aws). Les utilisateurs d'abonnement dans l'utilisation incluse reçoivent la durée de vie d'une heure automatiquement sur la [conversation principale](/docs/fr/prompt-caching#which-ttl-each-request-gets). Les utilisateurs d'abonnement tirant sur les [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) peuvent le définir pour garder la durée de vie d'une heure. Les écritures de cache d'une heure sont facturées à un taux plus élevé. Pour choisir la durée de vie par compartiment de requête à la place, utilisez `CLAUDE_CODE_PROMPT_CACHE_TTL` et `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, qui prennent la priorité sur cette variable |455| `ENABLE_PROMPT_CACHING_1H` | Définissez sur `1` pour demander une [TTL du cache d'invite](/docs/fr/prompt-caching#cache-lifetime) d'une heure au lieu des 5 minutes par défaut. Destiné aux utilisateurs de clé API, [Amazon Bedrock](/docs/fr/amazon-bedrock), [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai), [Microsoft Foundry](/docs/fr/microsoft-foundry) et [Claude Platform on AWS](/docs/fr/claude-platform-on-aws). Les utilisateurs d'abonnement dans l'utilisation incluse reçoivent la TTL d'une heure automatiquement sur la [conversation principale](/docs/fr/prompt-caching#which-ttl-each-request-gets). Les utilisateurs d'abonnement tirant sur les [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) peuvent le définir pour conserver la TTL d'une heure. Les écritures de cache d'une heure sont facturées à un taux plus élevé. Pour choisir la TTL par compartiment de requête à la place, utilisez `CLAUDE_CODE_PROMPT_CACHE_TTL` et `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, qui ont la priorité sur cette variable |

453| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Déprécié. Utilisez `ENABLE_PROMPT_CACHING_1H` à la place |456| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Déprécié. Utilisez `ENABLE_PROMPT_CACHING_1H` à la place |

454| `ENABLE_TOOL_SEARCH` | Contrôle la [recherche d'outils MCP](/docs/fr/mcp#scale-with-mcp-tool-search). Non défini, Claude Code diffère tous les outils MCP par défaut. Il les charge toujours en amont sur les modèles Google Cloud's Agent Platform antérieurs à la génération Claude 4.5, sur un déploiement Microsoft Foundry hébergé sur Azure et lorsque `ANTHROPIC_BASE_URL` pointe vers un hôte non-first-party. `true` diffère toujours et envoie l'en-tête bêta, sauf sur ces mêmes modèles Agent Platform et déploiements Microsoft Foundry ; les requêtes échouent sur les proxies qui ne supportent pas `tool_reference`. `auto` charge en amont lorsque les définitions d'outils tiennent dans 10 % du contexte. `auto:N` définit un seuil personnalisé, comme `auto:5` pour 5 %. `false` charge tous les outils en amont. Une valeur que vous définissez vous-même est ignorée lorsque `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` est défini. Avant v2.1.221, Claude Code désactivait la recherche d'outils pour tous les modèles sur Google Cloud's Agent Platform sauf si vous définissiez cette variable sur `true` |457| `ENABLE_TOOL_SEARCH` | Contrôle la [recherche d'outils MCP](/docs/fr/mcp#scale-with-mcp-tool-search). Non défini, Claude Code diffère tous les outils MCP par défaut. Il les charge toujours en amont sur les modèles Google Cloud's Agent Platform antérieurs à la génération Claude 4.5, sur un déploiement Microsoft Foundry hébergé sur Azure et lorsque `ANTHROPIC_BASE_URL` pointe vers un hôte non-propriétaire. `true` diffère toujours et envoie l'en-tête bêta, sauf sur ces mêmes modèles Agent Platform et déploiements Microsoft Foundry ; les requêtes échouent sur les proxies qui ne supportent pas `tool_reference`. `auto` charge en amont lorsque les définitions d'outils tiennent dans 10 % du contexte. `auto:N` définit un seuil personnalisé, comme `auto:5` pour 5 %. `false` charge tous les outils en amont. Une valeur que vous définissez vous-même est ignorée lorsque `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` est défini. Avant v2.1.221, Claude Code désactivait la recherche d'outils pour tous les modèles sur Google Cloud's Agent Platform sauf si vous définissiez cette variable sur `true` |

455| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour faire en sorte que Claude Code arrête de réessayer sur les erreurs de surcharge répétées pour chaque modèle lorsqu'aucun modèle de secours n'est configuré. **Définir sur `0` ou `false` active toujours ceci**, contrairement à la plupart des variables activées/désactivées ; désactivez la variable pour restaurer le comportement de nouvelle tentative par défaut. Sans cela, Claude Code arrête de réessayer de cette façon sur les modèles qu'il reconnaît comme Opus, Fable ou Mythos lorsque vous vous authentifiez avec une clé API ou un [fournisseur tiers](/docs/fr/third-party-integrations) plutôt qu'un abonnement Claude. Sur Claude Code v2.1.160 ou ultérieur, Claude Code bascule vers votre [chaîne de modèle de secours](/docs/fr/model-config#fallback-model-chains) configurée sur les erreurs de surcharge répétées pour n'importe quel modèle principal, afin que cette variable n'affecte pas le basculement vers un modèle de secours |458| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour faire en sorte que Claude Code arrête de réessayer sur les erreurs de surcharge répétées pour chaque modèle lorsqu'aucun modèle de secours n'est configuré. **Définir sur `0` ou `false` active toujours ceci**, contrairement à la plupart des variables activées/désactivées ; supprimez la variable pour restaurer le comportement de nouvelle tentative par défaut. Sans cela, Claude Code arrête de réessayer de cette façon sur les modèles qu'il reconnaît comme des modèles Opus, Fable ou Mythos lorsque vous vous authentifiez avec une clé API ou un [fournisseur tiers](/docs/fr/third-party-integrations) plutôt qu'un abonnement Claude. Sur Claude Code v2.1.160 ou ultérieur, Claude Code bascule vers votre [chaîne de modèle de secours](/docs/fr/model-config#fallback-model-chains) configurée sur les erreurs de surcharge répétées pour n'importe quel modèle principal, afin que cette variable n'affecte pas le basculement vers un modèle de secours |

456| `FORCE_AUTOUPDATE_PLUGINS` | Définissez sur `1` pour forcer les mises à jour automatiques des plugins même lorsque le mise à jour automatique principale est désactivée via `DISABLE_AUTOUPDATER` |459| `FORCE_AUTOUPDATE_PLUGINS` | Définissez sur `1` pour forcer les mises à jour automatiques des plugins même lorsque le mise à jour automatique principale est désactivée via `DISABLE_AUTOUPDATER` |

457| `FORCE_HYPERLINK` | Définissez sur `1` pour activer les hyperliens OSC 8 cliquables lorsque votre terminal les supporte mais n'est pas détecté automatiquement, ou `0` pour les désactiver. Lorsqu'il n'est pas défini, Claude Code active les hyperliens uniquement lorsqu'il détecte le support du terminal. Claude Code analyse cette valeur en tant que nombre, pas un booléen, afin qu'une valeur comme `false`, `no` ou `off` active les hyperliens plutôt que de les désactiver. Le [badge d'état PR ou de demande de fusion](/docs/fr/interactive-mode#pr-review-status) du pied de page se rend en tant qu'hyperlien même lorsque Claude Code ne peut pas détecter le support du terminal, par exemple sur SSH. Définissez `0` pour rendre le badge en tant que texte plain |460| `FORCE_HYPERLINK` | Définissez sur `1` pour activer les hyperliens OSC 8 cliquables lorsque votre terminal les supporte mais n'est pas détecté automatiquement, ou `0` pour les désactiver. Lorsqu'il n'est pas défini, Claude Code active les hyperliens uniquement lorsqu'il détecte le support du terminal. Claude Code analyse cette valeur en tant que nombre, pas booléen, afin qu'une valeur comme `false`, `no` ou `off` active les hyperliens plutôt que de les désactiver. Le [badge PR ou merge request](/docs/fr/interactive-mode#pr-review-status) de pied de page se rend en tant qu'hyperlien même lorsque Claude Code ne peut pas détecter le support du terminal, par exemple sur SSH. Définissez `0` pour afficher le badge en tant que texte simple |

458| `FORCE_PROMPT_CACHING_5M` | Définissez sur `1` pour forcer la durée de vie du cache du prompt de 5 minutes même lorsque la durée de vie d'une heure s'appliquerait autrement. Remplace `CLAUDE_CODE_PROMPT_CACHE_TTL`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, `ENABLE_PROMPT_CACHING_1H` et les paramètres `promptCacheTtl` et `subagentPromptCacheTtl` |461| `FORCE_PROMPT_CACHING_5M` | Définissez sur `1` pour forcer la TTL du cache d'invite de 5 minutes même lorsque la TTL d'une heure s'appliquerait autrement. Remplace `CLAUDE_CODE_PROMPT_CACHE_TTL`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, `ENABLE_PROMPT_CACHING_1H` et les paramètres `promptCacheTtl` et `subagentPromptCacheTtl` |

459| `HTTP_PROXY` | Spécifiez le serveur proxy HTTP pour les connexions réseau |462| `HTTP_PROXY` | Spécifiez le serveur proxy HTTP pour les connexions réseau |

460| `HTTPS_PROXY` | Spécifiez le serveur proxy HTTPS pour les connexions réseau |463| `HTTPS_PROXY` | Spécifiez le serveur proxy HTTPS pour les connexions réseau |

461| `IS_DEMO` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour activer le mode démo : masque votre e-mail et le nom de votre organisation à partir de l'en-tête et de la sortie `/status`, et ignore l'intégration. **Définir sur `0` ou `false` active toujours le mode démo**, contrairement à la plupart des variables activées/désactivées ; désactivez la variable pour le désactiver. Utile lors de la diffusion en continu ou de l'enregistrement d'une session |464| `IS_DEMO` | Définissez sur n'importe quelle valeur non vide, comme `1`, pour activer le mode démo : masque votre email et le nom de votre organisation à partir de l'en-tête et de la sortie `/status`, et ignore l'intégration. **Définir sur `0` ou `false` active toujours le mode démo**, contrairement à la plupart des variables activées/désactivées ; supprimez la variable pour le désactiver. Utile lors du streaming ou de l'enregistrement d'une session |

462| `MAX_MCP_OUTPUT_TOKENS` | Nombre maximum de jetons autorisés dans les réponses des outils MCP. Claude Code affiche un avertissement lorsque la sortie dépasse 10 000 jetons. Les outils qui déclarent [`anthropic/maxResultSizeChars`](/docs/fr/mcp#raise-the-limit-for-a-specific-tool) utilisent cette limite de caractères pour le contenu textuel à la place, mais le contenu d'image de ces outils est toujours soumis à cette variable (par défaut : 25000) |465| `MAX_MCP_OUTPUT_TOKENS` | Nombre maximum de jetons autorisés dans les réponses des outils MCP. Claude Code affiche un avertissement lorsque la sortie dépasse 10 000 jetons. Les outils qui déclarent [`anthropic/maxResultSizeChars`](/docs/fr/mcp#raise-the-limit-for-a-specific-tool) utilisent cette limite de caractères pour le contenu textuel à la place, mais le contenu d'image de ces outils est toujours soumis à cette variable (par défaut : 25000) |

463| `MAX_STRUCTURED_OUTPUT_RETRIES` | Nombre de tentatives que Claude Code autorise lorsque la réponse du modèle échoue la validation par rapport au [`--json-schema`](/docs/fr/cli-reference#cli-flags) en mode non interactif avec le drapeau `-p` ; après ce nombre de tentatives échouées sans sortie valide, l'exécution échoue. Le même plafond s'applique lorsque la sortie structurée d'un [sous-agent de flux de travail](/docs/fr/workflows) échoue la validation. Par défaut 5, une première tentative plus quatre tentatives |466| `MAX_STRUCTURED_OUTPUT_RETRIES` | Nombre de tentatives que Claude Code autorise lorsque la réponse du modèle échoue la validation par rapport au [`--json-schema`](/docs/fr/cli-reference#cli-flags) en mode non interactif avec le drapeau `-p` ; après ce nombre de tentatives échouées sans sortie valide, l'exécution échoue. Le même plafond s'applique lorsque la sortie structurée d'un sous-agent de [flux de travail](/docs/fr/workflows) échoue la validation. Par défaut 5, une première tentative plus quatre tentatives |

464| `MAX_THINKING_TOKENS` | Budget de jetons fixe pour la [réflexion étendue](https://platform.claude.com/docs/en/build-with-claude/extended-thinking). Claude Code le limite à un jeton en dessous des jetons de sortie max de la requête et jamais en dessous de 1 024. Voir `CLAUDE_CODE_MAX_OUTPUT_TOKENS` pour la façon dont cette limite est définie. Lorsqu'il n'est pas défini et que la réflexion est activée, les modèles avec [raisonnement adaptatif](/docs/fr/model-config#adjust-effort-level) choisissent leur propre profondeur de réflexion, et les autres modèles utilisent le plafond. Définissez sur `0` pour désactiver la réflexion sur l'API Anthropic, sauf sur Opus 5.5 et les modèles Fable, qui ne peuvent pas avoir la réflexion désactivée. Sur les [fournisseurs tiers](/docs/fr/third-party-integrations), `0` omet le paramètre `thinking` à la place. Avec la réflexion désactivée sur l'API Anthropic, Claude Code envoie l'effort `high` au lieu d'un niveau plus élevé aux modèles qu'il sait [ne pas accepter cette combinaison](/docs/fr/errors#effort-isnt-available-with-thinking-turned-off), comme Opus 5. Claude Code ignore les valeurs non nulles sur les modèles de raisonnement adaptatif, sauf sur les modèles où `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` désactive le raisonnement adaptatif |467| `MAX_THINKING_TOKENS` | Budget de jetons fixe pour la [réflexion étendue](https://platform.claude.com/docs/en/build-with-claude/extended-thinking). Claude Code le limite à un jeton en dessous des jetons de sortie max de la requête et jamais en dessous de 1 024. Voir `CLAUDE_CODE_MAX_OUTPUT_TOKENS` pour la façon dont cette limite est définie. Lorsqu'il n'est pas défini et que la réflexion est activée, les modèles avec [raisonnement adaptatif](/docs/fr/model-config#adjust-effort-level) choisissent leur propre profondeur de réflexion, et les autres modèles utilisent le plafond. Définissez sur `0` pour désactiver la réflexion sur l'API Anthropic, sauf sur Opus 5.5, Sonnet 5.5 et les modèles Fable, qui ne peuvent pas avoir la réflexion désactivée. Sur [les fournisseurs tiers](/docs/fr/third-party-integrations), `0` omet le paramètre `thinking` à la place. Avec la réflexion désactivée sur l'API Anthropic, Claude Code envoie l'effort `high` au lieu d'un niveau plus élevé aux modèles qu'il sait [n'acceptent pas cette combinaison](/docs/fr/errors#effort-isnt-available-with-thinking-turned-off), comme Opus 5. Claude Code ignore les valeurs non nulles sur les modèles de raisonnement adaptatif, sauf sur les modèles où `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` désactive le raisonnement adaptatif |

465| `MCP_CLIENT_SECRET` | Secret client OAuth pour les serveurs MCP qui nécessitent des [identifiants pré-configurés](/docs/fr/mcp#use-pre-configured-oauth-credentials). Évite l'invite interactive lors de l'ajout d'un serveur avec `--client-secret` |468| `MCP_CLIENT_SECRET` | Secret client OAuth pour les serveurs MCP qui nécessitent des [identifiants pré-configurés](/docs/fr/mcp#use-pre-configured-oauth-credentials). Évite l'invite interactive lors de l'ajout d'un serveur avec `--client-secret` |

466| `MCP_CONNECTION_NONBLOCKING` | Contrôle si le démarrage attend que les serveurs MCP se connectent avant la première requête. Le démarrage MCP est non bloquant par défaut : les serveurs se connectent en arrière-plan et leurs outils deviennent disponibles au fur et à mesure qu'ils se terminent. Définissez sur `0` pour faire en sorte que Claude Code attende que les serveurs se connectent avant la première requête. Les serveurs configurés avec [`alwaysLoad: true`](/docs/fr/mcp#exempt-a-server-from-deferral) font toujours attendre le démarrage quel que soit le cas, sauf lorsqu'ils sont servis à partir du [cache de découverte](/docs/fr/mcp#server-status-detail), car leurs outils doivent être présents lorsque le premier prompt est construit. En mode non interactif (`-p`) sans `--input-format stream-json`, Claude Code attend également les serveurs toujours en attente avant le premier tour quel que soit cette variable. Lorsque vous transmettez [`--mcp-config`](/docs/fr/cli-reference#cli-flags) explicitement, l'attente a un délai plus long ; voir l'entrée de ce drapeau pour l'exception du serveur en cache |469| `MCP_CONNECTION_NONBLOCKING` | Contrôle si le démarrage attend que les serveurs MCP se connectent avant la première requête. Le démarrage MCP est non bloquant par défaut : les serveurs se connectent en arrière-plan et leurs outils deviennent disponibles au fur et à mesure qu'ils se terminent. Définissez sur `0` pour faire en sorte que Claude Code attende que les serveurs se connectent avant la première requête. Les serveurs configurés avec [`alwaysLoad: true`](/docs/fr/mcp#exempt-a-server-from-deferral) font toujours attendre le démarrage quel que soit le cas, sauf lorsqu'ils sont servis à partir du [cache de découverte](/docs/fr/mcp#server-status-detail), car leurs outils doivent être présents lorsque la première invite est construite. En mode non interactif (`-p`) sans `--input-format stream-json`, Claude Code attend également les serveurs toujours en attente avant le premier tour quel que soit le cas. Lorsque vous transmettez [`--mcp-config`](/docs/fr/cli-reference#cli-flags) explicitement, l'attente a un délai plus long ; voir l'entrée de ce drapeau pour l'exception du serveur en cache |

467| `MCP_CONNECT_TIMEOUT_MS` | Combien de temps le démarrage MCP bloquant attend, en millisecondes, le lot de connexion avant de prendre un instantané de la liste des outils (par défaut : 5000). S'applique lorsque `MCP_CONNECTION_NONBLOCKING=0` ou pour les serveurs marqués [`alwaysLoad: true`](/docs/fr/mcp#exempt-a-server-from-deferral). Les serveurs toujours en attente au délai continuent de se connecter en arrière-plan. Distinct de `MCP_TIMEOUT`, qui limite la tentative de connexion d'un serveur individuel |470| `MCP_CONNECT_TIMEOUT_MS` | Combien de temps l'attente MCP de démarrage bloquant attend, en millisecondes, le lot de connexion avant de prendre un instantané de la liste d'outils (par défaut : 5000). S'applique lorsque `MCP_CONNECTION_NONBLOCKING=0` ou pour les serveurs marqués [`alwaysLoad: true`](/docs/fr/mcp#exempt-a-server-from-deferral). Les serveurs toujours en attente au délai continuent de se connecter en arrière-plan. Distinct de `MCP_TIMEOUT`, qui limite la tentative de connexion d'un serveur individuel |

468| `MCP_DISCOVERY_CACHE` | Active ou désactive le [cache de découverte MCP](/docs/fr/mcp#server-status-detail). Avec le cache activé, un serveur HTTP ou SSE distant que vous avez utilisé auparavant peut afficher le [statut `cached`](/docs/fr/mcp#server-status-detail), et Claude Code le connecte au premier appel d'outil au lieu du démarrage. Le cache est désactivé par défaut sauf si un déploiement progressif l'a activé pour votre compte. Définissez sur `1` pour l'activer, ou `0` pour le garder désactivé même lorsque le déploiement l'a activé. Avant v2.1.238, le cache était activé par défaut. Le statut `cached` nécessite Claude Code v2.1.221 ou ultérieur |471| `MCP_DISCOVERY_CACHE` | Active ou désactive le [cache de découverte MCP](/docs/fr/mcp#server-status-detail). Avec le cache activé, un serveur HTTP ou SSE distant que vous avez utilisé auparavant peut afficher le [statut `cached`](/docs/fr/mcp#server-status-detail), et Claude Code le connecte à son premier appel d'outil au lieu du démarrage. Le cache est désactivé par défaut sauf si un déploiement progressif l'a activé pour votre compte. Définissez sur `1` pour l'activer, ou `0` pour le garder désactivé même lorsque le déploiement l'a activé. Avant v2.1.238, le cache était activé par défaut. Le statut `cached` nécessite Claude Code v2.1.221 ou ultérieur |

469| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | Âge maximum, en secondes, d'une entrée du [cache de découverte](/docs/fr/mcp#server-status-detail) (par défaut : 14400, ou 4 heures). À un démarrage où l'entrée est plus ancienne que cela, Claude Code la rejette et connecte le serveur au démarrage, comme il le fait avec le cache désactivé. Claude Code limite la valeur à 7 jours. Avant v2.1.238, la valeur par défaut était 86400, ou 24 heures, et Claude Code ne limitait pas la valeur |472| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | Âge maximum, en secondes, d'une entrée du [cache de découverte](/docs/fr/mcp#server-status-detail) (par défaut : 14400, ou 4 heures). À un démarrage où l'entrée est plus ancienne que cela, Claude Code la rejette et connecte le serveur au démarrage, comme il le fait avec le cache désactivé. Claude Code limite la valeur à 7 jours. Avant v2.1.238, la valeur par défaut était 86400, ou 24 heures, et Claude Code ne limitait pas la valeur |

470| `MCP_DISCOVERY_CACHE_STRIKES` | À un démarrage où une entrée du [cache de découverte](/docs/fr/mcp#server-status-detail) est plus ancienne que `MCP_DISCOVERY_CACHE_TTL_S`, Claude Code l'actualise en arrière-plan. Cette variable définit combien d'actualisations consécutives peuvent échouer avant que Claude Code rejette l'entrée et connecte le serveur au prochain démarrage à la place (par défaut : 1). Augmentez-la si votre connexion réseau s'interrompt occasionnellement, afin qu'une actualisation échouée ne rejette pas l'entrée. Nécessite Claude Code v2.1.238 ou ultérieur |473| `MCP_DISCOVERY_CACHE_STRIKES` | À un démarrage où une entrée du [cache de découverte](/docs/fr/mcp#server-status-detail) est plus ancienne que `MCP_DISCOVERY_CACHE_TTL_S`, Claude Code l'actualise en arrière-plan. Cette variable définit combien d'actualisations d'affilée peuvent échouer avant que Claude Code rejette l'entrée et connecte le serveur au prochain démarrage à la place (par défaut : 1). Augmentez-la si votre connexion réseau s'interrompt occasionnellement, afin qu'une actualisation échouée ne rejette pas l'entrée. Nécessite Claude Code v2.1.238 ou ultérieur |

471| `MCP_DISCOVERY_CACHE_TTL_S` | Secondes pendant lesquelles Claude Code utilise une entrée du [cache de découverte](/docs/fr/mcp#server-status-detail) sans l'actualiser (par défaut : 900). À un démarrage où l'entrée est plus ancienne que cela, Claude Code l'utilise toujours mais l'actualise en arrière-plan. Une fois que l'entrée est plus ancienne que `MCP_DISCOVERY_CACHE_MAX_STALE_S`, Claude Code la rejette à la place. Claude Code limite la valeur à `MCP_DISCOVERY_CACHE_MAX_STALE_S`, qui est 4 heures par défaut. Avant v2.1.238, Claude Code ne limitait pas la valeur |474| `MCP_DISCOVERY_CACHE_TTL_S` | Secondes pendant lesquelles Claude Code utilise une entrée du [cache de découverte](/docs/fr/mcp#server-status-detail) sans l'actualiser (par défaut : 900). À un démarrage où l'entrée est plus ancienne que cela, Claude Code l'utilise toujours mais l'actualise en arrière-plan. Une fois que l'entrée est plus ancienne que `MCP_DISCOVERY_CACHE_MAX_STALE_S`, Claude Code la rejette à la place. Claude Code limite la valeur à `MCP_DISCOVERY_CACHE_MAX_STALE_S`, qui est 4 heures par défaut. Avant v2.1.238, Claude Code ne limitait pas la valeur |

472| `MCP_OAUTH_CALLBACK_PORT` | Port fixe pour le rappel de redirection OAuth, comme alternative à `--callback-port` lors de l'ajout d'un serveur MCP avec des [identifiants pré-configurés](/docs/fr/mcp#use-pre-configured-oauth-credentials) |475| `MCP_OAUTH_CALLBACK_PORT` | Port fixe pour le rappel de redirection OAuth, comme alternative à `--callback-port` lors de l'ajout d'un serveur MCP avec des [identifiants pré-configurés](/docs/fr/mcp#use-pre-configured-oauth-credentials) |

473| `MCP_PROTOCOL_NEGOTIATION` | Sur le [runtime client MCP v2](/docs/fr/mcp#mcp-client-runtimes) uniquement, si Claude Code sonde les serveurs pour la révision du protocole MCP 2026-07-28. Définissez `auto` pour sonder les serveurs HTTP, connecteur claude.ai et stdio ; un serveur qui ne répond pas à la sonde se connecte sur le protocole antérieur à la place, comme les serveurs SSE et WebSocket le font toujours. Définissez `legacy` pour ignorer la sonde pour chaque serveur. Sans la variable, Claude Code sonde les serveurs HTTP, et sonde également les serveurs connecteur claude.ai dans les sessions où il [récupère les drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching). Toute autre valeur est ignorée avec un avertissement dans le journal de débogage. Nécessite Claude Code v2.1.221 ou ultérieur |476| `MCP_PROTOCOL_NEGOTIATION` | Sur le [runtime client MCP v2](/docs/fr/mcp#mcp-client-runtimes) uniquement, si Claude Code sonde les serveurs pour la révision du protocole MCP 2026-07-28. Définissez `auto` pour sonder les serveurs HTTP, connecteur claude.ai et stdio ; un serveur qui ne répond pas à la sonde se connecte sur le protocole antérieur à la place, comme les serveurs SSE et WebSocket le font toujours. Définissez `legacy` pour ignorer la sonde pour chaque serveur. Sans la variable, Claude Code sonde les serveurs HTTP, et sonde également les serveurs connecteur claude.ai dans les sessions où il [récupère les drapeaux de fonctionnalité](#features-that-need-feature-flag-fetching). Toute autre valeur est ignorée avec un avertissement dans le journal de débogage. Nécessite Claude Code v2.1.221 ou ultérieur |

474| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Nombre maximum de serveurs MCP distants (HTTP/SSE) à connecter en parallèle au démarrage (par défaut : 20) |477| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Nombre maximum de serveurs MCP distants (HTTP/SSE) à connecter en parallèle lors du démarrage (par défaut : 20) |

475| `MCP_SDK_GENERATION` | Épinglez quel [runtime client MCP](/docs/fr/mcp#mcp-client-runtimes) ce processus se connecte aux serveurs MCP avec : `v1`, construit sur MCP TypeScript SDK 1.x, ou `v2`, construit sur [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Sans la variable, Claude Code utilise v2, à partir des versions énumérées dans cette section. Sur Claude Code v2.1.221 ou ultérieur, le runtime v2 vérifie l'émetteur qu'un serveur OAuth MCP retourne dans sa réponse d'autorisation et échoue la connexion avec une erreur qui commence par `Issuer mismatch in authorization response` lorsqu'il ne correspond pas. Le runtime v1 n'exécute pas cette vérification. Si vous définissez une valeur non reconnue, Claude Code l'ignore et écrit un avertissement dans le journal de débogage. Claude Code lit la valeur une fois par processus. Nécessite Claude Code v2.1.218 ou ultérieur |478| `MCP_SDK_GENERATION` | Épinglez quel [runtime client MCP](/docs/fr/mcp#mcp-client-runtimes) ce processus se connecte aux serveurs MCP avec : `v1`, construit sur MCP TypeScript SDK 1.x, ou `v2`, construit sur [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Sans la variable, Claude Code utilise v2, à partir des versions énumérées dans cette section. Sur Claude Code v2.1.221 ou ultérieur, le runtime v2 vérifie l'émetteur qu'un serveur MCP OAuth retourne dans sa réponse d'autorisation et échoue la connexion avec une erreur qui commence `Issuer mismatch in authorization response` lorsqu'il ne correspond pas. Le runtime v1 n'exécute pas cette vérification. Si vous définissez une valeur non reconnue, Claude Code l'ignore et écrit un avertissement dans le journal de débogage. Claude Code lit la valeur une fois par processus. Nécessite Claude Code v2.1.218 ou ultérieur |

476| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Nombre maximum de serveurs MCP locaux (stdio) à connecter en parallèle au démarrage (par défaut : 3) |479| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Nombre maximum de serveurs MCP locaux (stdio) à connecter en parallèle lors du démarrage (par défaut : 3) |

477| `MCP_TIMEOUT` | Délai d'expiration en millisecondes pour le démarrage du serveur MCP (par défaut : 30000, ou 30 secondes) |480| `MCP_TIMEOUT` | Délai d'expiration en millisecondes pour le démarrage du serveur MCP (par défaut : 30000, ou 30 secondes) |

478| `MCP_TOOL_TIMEOUT` | Délai d'expiration en millisecondes pour l'exécution de l'outil MCP (par défaut : 100000000, environ 28 heures). Pour un serveur HTTP, SSE ou connecteur claude.ai, chaque requête expire également après 60 secondes par défaut ; définissez cette variable, ou le `timeout` par serveur, au-dessus de 60000 pour augmenter cette limite par requête. Une valeur inférieure raccourcit toujours le délai d'expiration global de l'exécution de l'outil mais laisse la limite par requête à 60 secondes. Les serveurs stdio et WebSocket n'ont pas de minuteur par requête. Un champ `timeout` par serveur dans `.mcp.json` remplace ceci pour ce serveur. Un `timeout` par serveur d'au moins 1000 définit également la fenêtre d'inactivité minimale pour les appels d'outils de ce serveur, afin que `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` ne les interrompe jamais plus tôt ; ce plancher nécessite Claude Code v2.1.203 ou ultérieur. Pour la variable env, les valeurs inférieures à 1000 sont limitées à une seconde ; pour le champ par serveur, les valeurs inférieures à 1000 sont ignorées |481| `MCP_TOOL_TIMEOUT` | Délai d'expiration en millisecondes pour l'exécution de l'outil MCP (par défaut : 100000000, environ 28 heures). Pour un serveur HTTP, SSE ou connecteur claude.ai, chaque requête expire également après 60 secondes par défaut ; définissez cette variable, ou le `timeout` par serveur, au-dessus de 60000 pour augmenter cette limite par requête. Une valeur inférieure raccourcit toujours le délai d'expiration global de l'exécution de l'outil mais laisse la limite par requête à 60 secondes. Les serveurs Stdio et WebSocket n'ont pas de minuteur par requête. Un champ `timeout` par serveur dans `.mcp.json` remplace ceci pour ce serveur. Un `timeout` par serveur d'au moins 1000 définit également la fenêtre d'inactivité minimale pour les appels d'outils de ce serveur, afin que `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` ne les interrompe jamais plus tôt ; ce plancher nécessite Claude Code v2.1.203 ou ultérieur. Pour la variable env, les valeurs inférieures à 1000 sont limitées à une seconde ; pour le champ par serveur, les valeurs inférieures à 1000 sont ignorées |

479| `NO_PROXY` | Liste des domaines et adresses IP auxquels les requêtes seront directement émises, en contournant le proxy |482| `NO_PROXY` | Liste des domaines et adresses IP auxquels les requêtes seront émises directement, en contournant le proxy |

480| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | Limite standard du SDK OpenTelemetry sur la longueur de la valeur d'attribut. Claude Code limite les attributs de télémétrie porteurs de contenu au plus petit de ceci et de `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH`, afin que le marqueur de troncature reste dans la limite du SDK. Claude Code lit les variantes `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT` et `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` de la même manière, et la plus petite valeur définie s'applique à tous les signaux. Nécessite Claude Code v2.1.214 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage#common-configuration-variables) |483| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | Limite standard du SDK OpenTelemetry sur la longueur de la valeur d'attribut. Claude Code limite les attributs de télémétrie porteurs de contenu au plus petit de ceci et de `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH`, afin que le marqueur de troncature reste dans la limite du SDK. Claude Code lit les variantes `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT` et `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` de la même manière, et la plus petite valeur définie s'applique à tous les signaux. Nécessite Claude Code v2.1.214 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage#common-configuration-variables) |

481| `OTEL_LOG_ASSISTANT_RESPONSES` | Définissez sur `1` pour inclure le texte de réponse du modèle sur les événements de journal OpenTelemetry `assistant_response`. Lorsqu'il n'est pas défini, la valeur de `OTEL_LOG_USER_PROMPTS` est utilisée à la place. Définissez sur `0` pour garder les réponses rédactées même lorsque `OTEL_LOG_USER_PROMPTS` est défini. Nécessite Claude Code v2.1.193 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage#assistant-response-event) |484| `OTEL_LOG_ASSISTANT_RESPONSES` | Définissez sur `1` pour inclure le texte de réponse du modèle sur les événements de journal OpenTelemetry `assistant_response`. Lorsqu'il n'est pas défini, Claude Code utilise la valeur de `OTEL_LOG_USER_PROMPTS` à la place. Définissez sur `0` pour garder les réponses rédactées même lorsque `OTEL_LOG_USER_PROMPTS` est défini. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env). Nécessite Claude Code v2.1.193 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage#assistant-response-event) |

482| `OTEL_LOG_MANAGED_SETTINGS` | Définissez sur `1` pour ajouter les paramètres gérés rédactés, et un digest SHA-256 des paramètres avant rédaction, aux événements de journal OpenTelemetry `managed_settings_resolved`. Désactivé par défaut. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés ; une valeur dans les paramètres de projet ou locaux ne l'active pas. Nécessite Claude Code v2.1.274 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage#managed-settings-resolved-event) |485| `OTEL_LOG_MANAGED_SETTINGS` | Définissez sur `1` pour ajouter les paramètres gérés rédactés, et un digest SHA-256 des paramètres avant la rédaction, aux événements de journal OpenTelemetry `managed_settings_resolved`. Désactivé par défaut. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés ; une valeur dans les paramètres de projet ou locaux ne l'active pas. Nécessite Claude Code v2.1.274 ou ultérieur. Voir [Surveillance](/docs/fr/monitoring-usage#managed-settings-resolved-event) |

483| `OTEL_LOG_RAW_API_BODIES` | Émettez les corps JSON de requête et de réponse de l'API Anthropic Messages en tant qu'événements de journal `api_request_body` / `api_response_body`. Définissez sur `1` pour les corps en ligne tronqués à la limite de contenu, ou `file:<dir>` pour écrire les corps non tronqués sur le disque et émettre un chemin `body_ref` à la place. `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` configure la limite de contenu, 60 Ko par défaut. Désactivé par défaut ; les corps incluent l'historique complet de la conversation. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env). Voir [Surveillance](/docs/fr/monitoring-usage#api-request-body-event) |486| `OTEL_LOG_RAW_API_BODIES` | Émettez les requêtes et réponses JSON de l'API Anthropic Messages en tant qu'événements de journal `api_request_body` / `api_response_body`. Définissez sur `1` pour les corps en ligne tronqués à la limite de contenu, ou `file:<dir>` pour écrire les corps non tronqués sur le disque et émettre un chemin `body_ref` à la place. `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` configure la limite de contenu, 60 Ko par défaut. Désactivé par défaut ; les corps incluent l'historique de conversation entier. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env). Voir [Surveillance](/docs/fr/monitoring-usage#api-request-body-event) |

484| `OTEL_LOG_TOOL_CONTENT` | Définissez sur `1` pour inclure le contenu de l'outil dans l'événement d'intervalle OpenTelemetry `tool.output`. Les attributs d'intervalle portent le contenu de l'outil sous [leurs propres portes](/docs/fr/monitoring-usage#new-context-gates). Nécessite le [traçage](/docs/fr/monitoring-usage#traces-beta). Désactivé par défaut pour protéger les données sensibles. Voir [Surveillance](/docs/fr/monitoring-usage#tool-output-span-event) |487| `OTEL_LOG_TOOL_CONTENT` | Définissez sur `1` pour inclure le contenu de l'outil dans l'événement de span OpenTelemetry `tool.output`. Les attributs de span portent le contenu de l'outil sous [leurs propres portes](/docs/fr/monitoring-usage#new-context-gates). Nécessite le [traçage](/docs/fr/monitoring-usage#traces-beta). Désactivé par défaut pour protéger les données sensibles. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env), à part les valeurs désactivées que cette section décrit. Voir [Surveillance](/docs/fr/monitoring-usage#tool-output-span-event) |

485| `OTEL_LOG_TOOL_DETAILS` | Définissez sur `1` pour inclure les arguments d'entrée de l'outil, les noms des serveurs MCP, les noms de flux de travail rédigés par l'utilisateur, les chaînes d'erreur brutes sur les défaillances d'outils, la `category` de refus sur les événements `api_refusal` et d'autres détails d'outils dans les traces et journaux OpenTelemetry. Désactivé par défaut pour protéger les informations d'identification personnelle. Voir [Surveillance](/docs/fr/monitoring-usage) |488| `OTEL_LOG_TOOL_DETAILS` | Définissez sur `1` pour inclure les arguments d'entrée de l'outil, les noms des serveurs MCP, les noms de flux de travail rédigés par l'utilisateur, les chaînes d'erreur brutes sur les défaillances d'outils, la `category` de refus sur les événements `api_refusal`, les noms d'agent, de compétence, de plugin et de serveur MCP réels sur [les métriques de coût et de jetons](/docs/fr/monitoring-usage#cost-counter) et d'autres détails d'outils dans les métriques, traces et journaux OpenTelemetry. Désactivé par défaut pour protéger les informations personnelles identifiables. Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env), à part les valeurs désactivées que cette section décrit. Voir [Surveillance](/docs/fr/monitoring-usage) |

486| `OTEL_LOG_USER_PROMPTS` | Définissez sur `1` pour inclure le texte du prompt utilisateur dans les traces et journaux OpenTelemetry. Désactivé par défaut (les prompts sont rédactés). Voir [Surveillance](/docs/fr/monitoring-usage) |489| `OTEL_LOG_USER_PROMPTS` | Définissez sur `1` pour inclure le texte de l'invite utilisateur dans les traces et journaux OpenTelemetry. Désactivé par défaut (les invites sont rédactées). Définissez-le dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env), à part les valeurs désactivées que cette section décrit. Voir [Surveillance](/docs/fr/monitoring-usage) |

487| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Définissez sur `false` pour exclure l'UUID du compte des attributs de métriques (par défaut : inclus). Voir [Surveillance](/docs/fr/monitoring-usage) |490| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Définissez sur `false` pour exclure l'UUID du compte des attributs de métriques (par défaut : inclus). Voir [Surveillance](/docs/fr/monitoring-usage) |

488| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Définissez sur `true` pour inclure le point d'entrée de la session dans les attributs de métriques (par défaut : exclu). Ajouté dans v2.1.152. Voir [Surveillance](/docs/fr/monitoring-usage) |491| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Définissez sur `true` pour inclure le point d'entrée de la session dans les attributs de métriques (par défaut : exclu). Ajouté dans v2.1.152. Voir [Surveillance](/docs/fr/monitoring-usage) |

489| `OTEL_METRICS_INCLUDE_REPOSITORY` | Définissez sur `true` pour étiqueter les métriques et événements OpenTelemetry avec les attributs `vcs.*` identifiant le référentiel de la session (par défaut : exclu). Nécessite Claude Code v2.1.269 ou ultérieur. Voir [Attributs du référentiel](/docs/fr/monitoring-usage#repository-attributes) |492| `OTEL_METRICS_INCLUDE_REPOSITORY` | Définissez sur `true` pour étiqueter les métriques et événements OpenTelemetry avec les attributs `vcs.*` identifiant le référentiel de la session (par défaut : exclu). Nécessite Claude Code v2.1.269 ou ultérieur. Voir [Attributs du référentiel](/docs/fr/monitoring-usage#repository-attributes) |


491| `OTEL_METRICS_INCLUDE_SESSION_ID` | Définissez sur `false` pour exclure l'ID de session des attributs de métriques (par défaut : inclus). Voir [Surveillance](/docs/fr/monitoring-usage) |494| `OTEL_METRICS_INCLUDE_SESSION_ID` | Définissez sur `false` pour exclure l'ID de session des attributs de métriques (par défaut : inclus). Voir [Surveillance](/docs/fr/monitoring-usage) |

492| `OTEL_METRICS_INCLUDE_VERSION` | Définissez sur `true` pour inclure la version de Claude Code dans les attributs de métriques (par défaut : exclu). Voir [Surveillance](/docs/fr/monitoring-usage) |495| `OTEL_METRICS_INCLUDE_VERSION` | Définissez sur `true` pour inclure la version de Claude Code dans les attributs de métriques (par défaut : exclu). Voir [Surveillance](/docs/fr/monitoring-usage) |

493| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Remplacez le budget de caractères pour les métadonnées de compétence affichées à l'[outil Skill](/docs/fr/skills#control-who-invokes-a-skill). Le budget s'adapte dynamiquement à 1 % de la fenêtre de contexte, avec un secours de 8 000 caractères. Nom hérité conservé pour la compatibilité rétroactive |496| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Remplacez le budget de caractères pour les métadonnées de compétence affichées à l'[outil Skill](/docs/fr/skills#control-who-invokes-a-skill). Le budget s'adapte dynamiquement à 1 % de la fenêtre de contexte, avec un secours de 8 000 caractères. Nom hérité conservé pour la compatibilité rétroactive |

494| `TASK_MAX_OUTPUT_LENGTH` | Supprimé dans v2.1.277 et maintenant un no-op, avec l'outil `TaskOutput` qu'il dimensionnait. Auparavant, définissait le nombre maximum de caractères de la sortie d'une [tâche d'arrière-plan](/docs/fr/tools-reference#background-commands) que l'outil `TaskOutput` conservait. Claude lit la sortie d'une tâche d'arrière-plan avec `Read` à la place |497| `TASK_MAX_OUTPUT_LENGTH` | Supprimé dans v2.1.277 et maintenant un no-op, avec l'outil `TaskOutput` qu'il dimensionnait. Auparavant, définissait le nombre maximum de caractères de la sortie d'une [tâche d'arrière-plan](/docs/fr/tools-reference#background-commands) que l'outil `TaskOutput` conservait. Claude lit le fichier de sortie d'une tâche d'arrière-plan avec `Read` à la place |

495| `USE_BUILTIN_RIPGREP` | Définissez sur `0` pour utiliser le `rg` installé sur le système au lieu du `rg` inclus avec Claude Code |498| `USE_BUILTIN_RIPGREP` | Définissez sur `0` pour utiliser le `rg` installé sur le système au lieu du `rg` inclus avec Claude Code |

496| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Remplacez la région pour Claude 3.5 Haiku lors de l'utilisation de Google Cloud's Agent Platform |499| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Remplacez la région pour Claude 3.5 Haiku lors de l'utilisation de Google Cloud's Agent Platform |

497| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Remplacez la région pour Claude 3.5 Sonnet lors de l'utilisation de Google Cloud's Agent Platform |500| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Remplacez la région pour Claude 3.5 Sonnet lors de l'utilisation de Google Cloud's Agent Platform |


506| `VERTEX_REGION_CLAUDE_4_7_OPUS` | Remplacez la région pour Claude Opus 4.7 lors de l'utilisation de Google Cloud's Agent Platform |509| `VERTEX_REGION_CLAUDE_4_7_OPUS` | Remplacez la région pour Claude Opus 4.7 lors de l'utilisation de Google Cloud's Agent Platform |

507| `VERTEX_REGION_CLAUDE_4_8_OPUS` | Remplacez la région pour Claude Opus 4.8 lors de l'utilisation de Google Cloud's Agent Platform |510| `VERTEX_REGION_CLAUDE_4_8_OPUS` | Remplacez la région pour Claude Opus 4.8 lors de l'utilisation de Google Cloud's Agent Platform |

508| `VERTEX_REGION_CLAUDE_5_5_OPUS` | Remplacez la région pour Claude Opus 5.5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.280 |511| `VERTEX_REGION_CLAUDE_5_5_OPUS` | Remplacez la région pour Claude Opus 5.5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.280 |

512| `VERTEX_REGION_CLAUDE_5_5_SONNET` | Remplacez la région pour Claude Sonnet 5.5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.284 |

509| `VERTEX_REGION_CLAUDE_5_OPUS` | Remplacez la région pour Claude Opus 5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.219 |513| `VERTEX_REGION_CLAUDE_5_OPUS` | Remplacez la région pour Claude Opus 5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.219 |

510| `VERTEX_REGION_CLAUDE_5_SONNET` | Remplacez la région pour Claude Sonnet 5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.197 |514| `VERTEX_REGION_CLAUDE_5_SONNET` | Remplacez la région pour Claude Sonnet 5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.197 |

511| `VERTEX_REGION_CLAUDE_FABLE_5` | Remplacez la région pour Claude Fable 5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.170 |515| `VERTEX_REGION_CLAUDE_FABLE_5` | Remplacez la région pour Claude Fable 5 lors de l'utilisation de Google Cloud's Agent Platform. Ajouté dans v2.1.170 |


514 518 

515Les variables d'exportateur OpenTelemetry standard (`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES` et les variantes spécifiques au signal) sont également prises en charge. Voir [Surveillance](/docs/fr/monitoring-usage) pour les détails de configuration.519Les variables d'exportateur OpenTelemetry standard (`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES` et les variantes spécifiques au signal) sont également prises en charge. Voir [Surveillance](/docs/fr/monitoring-usage) pour les détails de configuration.

516 520 

521Définissez `CLAUDE_CODE_ENABLE_TELEMETRY` et les variables OpenTelemetry qui activent l'export, choisissent sa destination ou capturent le contenu dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Claude Code [les ignore dans les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env), à part les valeurs désactivées que cette section décrit. `OTEL_RESOURCE_ATTRIBUTES` et l'intervalle d'export, le délai d'expiration et les variables de compression, comme `OTEL_METRIC_EXPORT_INTERVAL`, s'appliquent toujours à partir des paramètres de projet et locaux.

522 

517<h2 id="features-that-need-feature-flag-fetching">523<h2 id="features-that-need-feature-flag-fetching">

518 Fonctionnalités nécessitant la récupération de feature flags524 Fonctionnalités nécessitant la récupération de feature flags

519</h2>525</h2>


526 532 

527Avec la récupération désactivée, vous ne pouvez pas :533Avec la récupération désactivée, vous ne pouvez pas :

528 534 

529* [Démarrer les sessions en mode auto par défaut](/docs/fr/permission-modes#which-mode-a-session-starts-in) sur les plans Pro, Max et Team

530* Faire en sorte que l'extension VS Code [lise les fichiers de paramètres pour le mode de permission de démarrage](/docs/fr/permission-modes#switch-permission-modes)

531* Exécuter [`/auto-mode-setup`](/docs/fr/auto-mode-config#generate-environment-entries) pour rédiger les entrées `autoMode.environment`535* Exécuter [`/auto-mode-setup`](/docs/fr/auto-mode-config#generate-environment-entries) pour rédiger les entrées `autoMode.environment`

532* Utiliser [Remote Control](/docs/fr/remote-control#requirements)536* Utiliser [Remote Control](/docs/fr/remote-control) avec `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` ou `DISABLE_GROWTHBOOK` défini. Pour `DISABLE_TELEMETRY` et `DO_NOT_TRACK`, consultez les [exigences de Remote Control](/docs/fr/remote-control#requirements)

533* [Envoyer des messages aux sessions au-delà de cette machine](/docs/fr/cross-session-messaging#message-sessions-on-other-machines) ; la messagerie entre les sessions sur cette machine fonctionne avec la récupération désactivée537* [Envoyer des messages aux sessions au-delà de cette machine](/docs/fr/cross-session-messaging#message-sessions-on-other-machines) quand [Remote Control](/docs/fr/remote-control#requirements) n'est pas disponible. La messagerie entre les sessions sur cette machine fonctionne avec la récupération désactivée

534* Exécuter [`claude import` ou la commande `/import`](/docs/fr/cli-reference#cli-commands)538* Exécuter [`claude import` ou la commande `/import`](/docs/fr/cli-reference#cli-commands)

535* Exécuter [`/skill-doctor`](/docs/fr/skills#find-unused-skills) ou ouvrir son rapport dans l'onglet **Stats** de `/plugin`539* Exécuter [`/skill-doctor`](/docs/fr/skills#find-unused-skills) ou ouvrir son rapport dans l'onglet **Stats** de `/plugin`

536* Synchroniser les [compétences](/docs/fr/skills#where-synced-skills-load) et les [plugins](/docs/fr/plugins-reference#synced-plugins) activés pour votre compte claude.ai dans vos sessions de terminal540* Synchroniser les [compétences](/docs/fr/skills#where-synced-skills-load) et les [plugins](/docs/fr/plugins/loading#synced-plugins) activés pour votre compte claude.ai dans vos sessions de terminal

537* Utiliser [l'outil advisor](/docs/fr/advisor#requirements)541* Utiliser [l'outil advisor](/docs/fr/advisor#requirements)

538* Lire ou répondre aux [commentaires sur un artifact](/docs/fr/artifacts#collect-comments-on-an-artifact)542* Lire ou répondre aux [commentaires sur un artifact](/docs/fr/artifacts#collect-comments-on-an-artifact)

539* Faire en sorte que Claude Code sonde les serveurs connecteurs claude.ai pour [la révision du protocole MCP 2026-07-28](/docs/fr/mcp#mcp-client-runtimes) sauf si vous définissez `MCP_PROTOCOL_NEGOTIATION=auto`543* Faire en sorte que Claude Code sonde les serveurs connecteurs claude.ai pour [la révision du protocole MCP 2026-07-28](/docs/fr/mcp#mcp-client-runtimes) sauf si vous définissez `MCP_PROTOCOL_NEGOTIATION=auto`


546 Première session après une installation ou une mise à jour550 Première session après une installation ou une mise à jour

547</h3>551</h3>

548 552 

549Lors de votre première session après l'installation de Claude Code, ou la mise à jour vers une version qui ajoute une fonctionnalité, une [fonctionnalité contrôlée par flag](#features-that-need-feature-flag-fetching) peut être manquante, et la session peut démarrer en mode Manuel sur un plan qui démarre autrement en mode auto. Claude Code récupère les flags lors de cette session, donc les deux sont présents dans votre session suivante.553Lors de votre première session après l'installation de Claude Code, ou la mise à jour vers une version qui ajoute une fonctionnalité, une [fonctionnalité contrôlée par flag](#features-that-need-feature-flag-fetching) peut être manquante. Cette session peut également démarrer dans un [mode de permission](/docs/fr/permission-modes#which-mode-a-session-starts-in) différent de celui de vos sessions ultérieures. Claude Code récupère les flags lors de cette session, donc votre session suivante dispose de la fonctionnalité et du mode de permission de démarrage habituel.

550 554 

551Après une installation propre, dans une session non-interactive telle que `claude -p`, le SDK Agent, ou l'extension VS Code, Claude Code peut toujours récupérer les flags avant de [choisir le mode de permission de démarrage](/docs/fr/permission-modes#which-mode-a-session-starts-in).555Après une installation propre, dans une session non-interactive telle que `claude -p`, le SDK Agent, ou l'extension VS Code, Claude Code peut toujours récupérer les flags avant de [choisir le mode de permission de démarrage](/docs/fr/permission-modes#which-mode-a-session-starts-in).

552 556 

errors.md +413 −42

Details

24| :- | :- |24| :- | :- |

25| `API Error: 500 Internal server error` | [Erreurs serveur](#api-error-500-internal-server-error) |25| `API Error: 500 Internal server error` | [Erreurs serveur](#api-error-500-internal-server-error) |

26| `API Error: Repeated 529 Overloaded errors` | [Erreurs serveur](#api-error-repeated-529-overloaded-errors) |26| `API Error: Repeated 529 Overloaded errors` | [Erreurs serveur](#api-error-repeated-529-overloaded-errors) |

27| `Opus is experiencing high load` / `Fable is experiencing high load` | [Erreurs serveur](#api-error-repeated-529-overloaded-errors) |

27| `Request timed out` | [Erreurs serveur](#request-timed-out), ou [Réseau](#unable-to-connect-to-api) si le message mentionne votre connexion Internet |28| `Request timed out` | [Erreurs serveur](#request-timed-out), ou [Réseau](#unable-to-connect-to-api) si le message mentionne votre connexion Internet |

28| `API Error: No response from API` | [Erreurs serveur](#no-response-from-api) |29| `API Error: No response from API` | [Erreurs serveur](#no-response-from-api) |

29| `Server error mid-response. The response above may be incomplete.` | [Erreurs serveur](#the-response-above-may-be-incomplete) |30| `Server error mid-response. The response above may be incomplete.` | [Erreurs serveur](#the-response-above-may-be-incomplete) |

30| `Connection lost mid-response` / `Your computer went to sleep mid-response` / `The response stopped arriving` | [Erreurs serveur](#the-response-above-may-be-incomplete) |31| `Connection lost mid-response` / `Your computer went to sleep mid-response` / `The response stopped arriving` | [Erreurs serveur](#the-response-above-may-be-incomplete) |

31| `Connection closed mid-response` / `Response stalled mid-stream` | [Erreurs serveur](#the-response-above-may-be-incomplete) |32| `Connection closed mid-response` / `Response stalled mid-stream` | [Erreurs serveur](#the-response-above-may-be-incomplete) |

33| `Part of the response never arrived` / `The response stream was malformed` | [Erreurs serveur](#the-response-above-may-be-incomplete) |

34| `API Error: Content block not found` / `API Error: Content block already closed` / `API Error: Stream event unreadable` | [Erreurs serveur](#the-response-above-may-be-incomplete) |

32| `Connection lost before a response was produced` / `Your computer went to sleep before a response was produced` / `The response stalled before a response was produced` | [Tentatives automatiques](#automatic-retries) |35| `Connection lost before a response was produced` / `Your computer went to sleep before a response was produced` / `The response stalled before a response was produced` | [Tentatives automatiques](#automatic-retries) |

33| `Connection closed while thinking` / `Response stalled while thinking` | [Tentatives automatiques](#automatic-retries) |36| `Connection closed while thinking` / `Response stalled while thinking` | [Tentatives automatiques](#automatic-retries) |

34| `Connection lost while your computer was asleep` | [Tentatives automatiques](#automatic-retries) |37| `Connection lost while your computer was asleep` | [Tentatives automatiques](#automatic-retries) |


49| `Could not update your spend limit` | [Limites d'utilisation](#could-not-update-your-spend-limit) |52| `Could not update your spend limit` | [Limites d'utilisation](#could-not-update-your-spend-limit) |

50| `spend limit reached` / `spend limit unavailable` | [Limites d'utilisation](#spend-limit-reached) |53| `spend limit reached` / `spend limit unavailable` | [Limites d'utilisation](#spend-limit-reached) |

51| `Not logged in · Please run /login` | [Authentification](#not-logged-in) |54| `Not logged in · Please run /login` | [Authentification](#not-logged-in) |

55| `Couldn't save your login` | [Authentification](#couldnt-save-your-login) |

56| `Authentication required · Sign in again to continue` | [Authentification](#not-logged-in) |

52| `Could not resolve authentication method` | [Authentification](#could-not-resolve-authentication-method) |57| `Could not resolve authentication method` | [Authentification](#could-not-resolve-authentication-method) |

53| `Invalid API key` | [Authentification](#invalid-api-key) |58| `Invalid API key` | [Authentification](#invalid-api-key) |

54| `Your apiKeyHelper script is failing` | [Authentification](#your-apikeyhelper-script-is-failing) |59| `Your apiKeyHelper script is failing` | [Authentification](#your-apikeyhelper-script-is-failing) |


69| `signed-in claude.ai account or organization changed on this machine` | [Authentification](#remote-control-stopped-because-the-signed-in-account-changed) |74| `signed-in claude.ai account or organization changed on this machine` | [Authentification](#remote-control-stopped-because-the-signed-in-account-changed) |

70| `Remote Control stopped — the app running this session is now signed in to a different Claude account` | [Authentification](#remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts) |75| `Remote Control stopped — the app running this session is now signed in to a different Claude account` | [Authentification](#remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts) |

71| `Remote Control stopped — the app running this session is signed out of Claude` | [Authentification](#remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts) |76| `Remote Control stopped — the app running this session is signed out of Claude` | [Authentification](#remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts) |

77| `Couldn't verify your organization's policy for remote control` | [Dépannage de Remote Control](/docs/fr/remote-control#couldnt-verify-your-organizations-policy-for-remote-control) |

72| `OAuth token revoked` / `OAuth token has expired` | [Authentification](#oauth-token-revoked-or-expired) |78| `OAuth token revoked` / `OAuth token has expired` | [Authentification](#oauth-token-revoked-or-expired) |

73| `API Error: 401 Invalid authentication credentials` | [Authentification](#api-error-401-invalid-authentication-credentials) |79| `API Error: 401 Invalid authentication credentials` | [Authentification](#api-error-401-invalid-authentication-credentials) |

74| `Login expired · Please run /login` | [Authentification](#login-expired) |80| `Login expired · Please run /login` | [Authentification](#login-expired) |


77| `Not signed in to the Cloud gateway — run /login.` | [Authentification](#administrator-policy-requires-a-cloud-gateway-sign-in) |83| `Not signed in to the Cloud gateway — run /login.` | [Authentification](#administrator-policy-requires-a-cloud-gateway-sign-in) |

78| `Administrator policy requires a Cloud gateway sign-in on this machine` | [Authentification](#administrator-policy-requires-a-cloud-gateway-sign-in) |84| `Administrator policy requires a Cloud gateway sign-in on this machine` | [Authentification](#administrator-policy-requires-a-cloud-gateway-sign-in) |

79| `Failed to authenticate: OAuth session expired and could not be refreshed` | [Authentification](#login-expired) |85| `Failed to authenticate: OAuth session expired and could not be refreshed` | [Authentification](#login-expired) |

86| `Could not refresh your login because another Claude Code process is refreshing it` | [Authentification](#could-not-refresh-your-login) |

87| `Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh` | [Authentification](#could-not-refresh-your-login) |

80| `Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted` | [Authentification](#your-account-is-on-hold) |88| `Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted` | [Authentification](#your-account-is-on-hold) |

81| `Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted` | [Authentification](#your-account-is-on-hold) |89| `Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted` | [Authentification](#your-account-is-on-hold) |

82| `Anthropic profile login expired · Re-authenticate your Anthropic profile` | [Authentification](#anthropic-profile-login-expired) |90| `Anthropic profile login expired · Re-authenticate your Anthropic profile` | [Authentification](#anthropic-profile-login-expired) |


120| `Couldn't reconnect to your Remote Control session` | [Réseau](#couldnt-reconnect-to-your-remote-control-session) |128| `Couldn't reconnect to your Remote Control session` | [Réseau](#couldnt-reconnect-to-your-remote-control-session) |

121| `N sessions ended while this machine was offline — the environment was cleaned up on the server and can't be resumed.` | [Réseau](#sessions-ended-while-this-machine-was-offline) |129| `N sessions ended while this machine was offline — the environment was cleaned up on the server and can't be resumed.` | [Réseau](#sessions-ended-while-this-machine-was-offline) |

122| `Couldn't share the transcript.` | [Réseau](#couldnt-share-the-transcript) |130| `Couldn't share the transcript.` | [Réseau](#couldnt-share-the-transcript) |

131| `Couldn't send feedback` | [Réseau](#couldnt-send-feedback) |

123| `Prompt is too long` / `Input is too long for requested model` | [Erreurs de requête](#prompt-is-too-long) |132| `Prompt is too long` / `Input is too long for requested model` | [Erreurs de requête](#prompt-is-too-long) |

124| `Prompt is too long · automatic compaction failed:` | [Erreurs de requête](#prompt-is-too-long) |133| `Prompt is too long · automatic compaction failed:` | [Erreurs de requête](#prompt-is-too-long) |

125| `Prompt is too long · this conversation is a single exchange` / `A single-exchange conversation cannot be compacted` | [Erreurs de requête](#prompt-is-too-long) |134| `Prompt is too long · this conversation is a single exchange` / `A single-exchange conversation cannot be compacted` | [Erreurs de requête](#prompt-is-too-long) |


139| `PDF too large` / `PDF is password protected` | [Erreurs de requête](#pdf-errors) |148| `PDF too large` / `PDF is password protected` | [Erreurs de requête](#pdf-errors) |

140| `Extra inputs are not permitted` | [Erreurs de requête](#extra-inputs-are-not-permitted) |149| `Extra inputs are not permitted` | [Erreurs de requête](#extra-inputs-are-not-permitted) |

141| `API Error: 400 ... tools.N.custom.input_schema: JSON schema is invalid` / `Property keys should match pattern` | [Erreurs de requête](#tool-input-schema-is-invalid) |150| `API Error: 400 ... tools.N.custom.input_schema: JSON schema is invalid` / `Property keys should match pattern` | [Erreurs de requête](#tool-input-schema-is-invalid) |

151| `tool_use.name: String should have at most 200 characters` | [Erreurs de requête](#tool-use-name-over-200-characters) |

142| `There's an issue with the selected model` | [Erreurs de requête](#theres-an-issue-with-the-selected-model) |152| `There's an issue with the selected model` | [Erreurs de requête](#theres-an-issue-with-the-selected-model) |

143| `Model ... is not a recognized model id` | [Erreurs de requête](#model-is-not-a-recognized-model-id) |153| `Model ... is not a recognized model id` | [Erreurs de requête](#model-is-not-a-recognized-model-id) |

144| `Model ... not found` | [Erreurs de requête](#model-not-found) |154| `Model ... not found` | [Erreurs de requête](#model-not-found) |

155| `API error: ... · model not changed` | [Erreurs de requête](#api-error-model-not-changed) |

145| `Claude Opus is not available with the Claude Pro plan` | [Erreurs de requête](#claude-opus-is-not-available-with-the-claude-pro-plan) |156| `Claude Opus is not available with the Claude Pro plan` | [Erreurs de requête](#claude-opus-is-not-available-with-the-claude-pro-plan) |

146| `Claude Code ... does not support this model; version ... or newer is required` | [Erreurs de requête](#claude-code-does-not-support-this-model) |157| `Claude Code ... does not support this model; version ... or newer is required` | [Erreurs de requête](#claude-code-does-not-support-this-model) |

147| `Claude Code ... is older than the minimum version required by your organization's policy` | [Erreurs de requête](#claude-code-does-not-support-this-model) |158| `Claude Code ... is older than the minimum version required by your organization's policy` | [Erreurs de requête](#claude-code-does-not-support-this-model) |

148| `Model ... is restricted by your organization's settings` | [Erreurs de requête](#model-is-restricted-by-your-organizations-settings) |159| `Model ... is restricted by your organization's settings` | [Erreurs de requête](#model-is-restricted-by-your-organizations-settings) |

160| `Model ... is not available. Your organization restricts model selection.` | [Erreurs de requête](#model-is-restricted-by-your-organizations-settings) |

149| `Model switch ... blocked by a PreModelSwitch hook` | [Erreurs de requête](#model-switch-was-blocked-by-a-premodelswitch-hook) |161| `Model switch ... blocked by a PreModelSwitch hook` | [Erreurs de requête](#model-switch-was-blocked-by-a-premodelswitch-hook) |

150| `couldn't save it as your default` / `couldn't confirm it was saved as your default` | [Erreurs de requête](#couldnt-save-it-as-your-default) |162| `couldn't save it as your default` / `couldn't confirm it was saved as your default` | [Erreurs de requête](#couldnt-save-it-as-your-default) |

151| `thinking.type.enabled is not supported for this model` | [Erreurs de requête](#thinking-type-enabled-is-not-supported-for-this-model) |163| `thinking.type.enabled is not supported for this model` | [Erreurs de requête](#thinking-type-enabled-is-not-supported-for-this-model) |


155| `API Error: 400 due to tool use concurrency issues` | [Erreurs de requête](#tool-use-or-thinking-block-mismatch) |167| `API Error: 400 due to tool use concurrency issues` | [Erreurs de requête](#tool-use-or-thinking-block-mismatch) |

156| `API Error: 400 orphaned tool_result in conversation history` | [Erreurs de requête](#tool-use-or-thinking-block-mismatch) |168| `API Error: 400 orphaned tool_result in conversation history` | [Erreurs de requête](#tool-use-or-thinking-block-mismatch) |

157| `API Error: 400 duplicate tool_use ID in conversation history` | [Erreurs de requête](#tool-use-or-thinking-block-mismatch) |169| `API Error: 400 duplicate tool_use ID in conversation history` | [Erreurs de requête](#tool-use-or-thinking-block-mismatch) |

170| `Invalid data in redacted_thinking block` | [Erreurs de requête](#invalid-data-in-redacted-thinking-block) |

158| `[Unsupported tool content removed]` | [Erreurs de requête](#unsupported-tool-content-removed) |171| `[Unsupported tool content removed]` | [Erreurs de requête](#unsupported-tool-content-removed) |

159| `role 'system' must precede an 'assistant' message` | [Erreurs de requête](#role-system-must-precede-an-assistant-message) |172| `role 'system' must precede an 'assistant' message` | [Erreurs de requête](#role-system-must-precede-an-assistant-message) |

160| `Invalid encrypted_content in search_result block` / `Invalid encrypted_index in text block` / `Failed to decrypt web search result content` | [Erreurs de requête](#invalid-encrypted-content-in-search-result-block) |173| `Invalid encrypted_content in search_result block` / `Invalid encrypted_index in text block` / `Failed to decrypt web search result content` | [Erreurs de requête](#invalid-encrypted-content-in-search-result-block) |

174| `Invalid encrypted_stdout in encrypted_code_execution_result block` | [Erreurs de requête](#invalid-encrypted-content-in-search-result-block) |

161| `server_tool_use.name: Input should be` on every turn of a resumed session | [Erreurs de requête](#unsupported-tool-content-removed) |175| `server_tool_use.name: Input should be` on every turn of a resumed session | [Erreurs de requête](#unsupported-tool-content-removed) |

162| `<model> can't help with this. Start a new session to continue` | [Erreurs de requête](#usage-policy-refusal) |176| `<model> can't help with this. Start a new session to continue` | [Erreurs de requête](#usage-policy-refusal) |

163| `Claude Code is unable to respond to this request, which appears to violate our Usage Policy` | [Erreurs de requête](#usage-policy-refusal) |177| `Claude Code is unable to respond to this request, which appears to violate our Usage Policy` | [Erreurs de requête](#usage-policy-refusal) |

164| `<model>'s safeguards flagged this message` | [Erreurs de requête](#safety-measures-flagged-a-cybersecurity-topic) |178| `<model>'s safeguards flagged this message` | [Erreurs de requête](#safety-measures-flagged-a-cybersecurity-topic) |

165| `Opus 5.5's safeguards flagged this session` | [Erreurs de requête](#safety-measures-flagged-a-cybersecurity-topic) |179| `<model>'s safeguards flagged this session` | [Erreurs de requête](#safety-measures-flagged-a-cybersecurity-topic) |

166| `<model> has safety measures that flagged this message for a cybersecurity topic` | [Erreurs de requête](#safety-measures-flagged-a-cybersecurity-topic) |180| `<model> has safety measures that flagged this message for a cybersecurity topic` | [Erreurs de requête](#safety-measures-flagged-a-cybersecurity-topic) |

167| `Installation was killed before it could finish (exit code 137)` | [Erreurs d'installation](#installation-was-killed-before-it-could-finish) |181| `Installation was killed before it could finish (exit code 137)` | [Erreurs d'installation](#installation-was-killed-before-it-could-finish) |

168| `The connection dropped while downloading the update` | [Erreurs d'installation](#the-connection-dropped-while-downloading-the-update) |182| `The connection dropped while downloading the update` | [Erreurs d'installation](#the-connection-dropped-while-downloading-the-update) |


173| `Couldn't verify your organization's policy for cloud sessions` | [Erreurs de ligne de commande](#cloud-sessions-are-disabled-by-your-organizations-policy) |187| `Couldn't verify your organization's policy for cloud sessions` | [Erreurs de ligne de commande](#cloud-sessions-are-disabled-by-your-organizations-policy) |

174| `Error: --json-schema is not a valid JSON Schema` | [Erreurs de ligne de commande](#command-line-errors) |188| `Error: --json-schema is not a valid JSON Schema` | [Erreurs de ligne de commande](#command-line-errors) |

175| `Error: Invalid --agents configuration:` | [Erreurs de ligne de commande](#invalid-agents-configuration) |189| `Error: Invalid --agents configuration:` | [Erreurs de ligne de commande](#invalid-agents-configuration) |

190| `Error: --agents takes a JSON object, or a file path only with --print (-p)` | [Erreurs de ligne de commande](#invalid-agents-configuration) |

191| `Error: --agents file not found` | [Erreurs de ligne de commande](#invalid-agents-configuration) |

176| `Error: Settings file exceeds the 2MiB limit` | [Erreurs de ligne de commande](#settings-file-exceeds-the-2mib-limit) |192| `Error: Settings file exceeds the 2MiB limit` | [Erreurs de ligne de commande](#settings-file-exceeds-the-2mib-limit) |

177| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [Erreurs de ligne de commande](#the-current-directory-no-longer-exists) |193| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [Erreurs de ligne de commande](#the-current-directory-no-longer-exists) |

178| `Temp directory <dir> ... Refusing to use it` / `ENOSPC: no space left on device, mkdir '<dir>'` | [Erreurs de ligne de commande](#temp-directory-refused-or-cannot-be-created) |194| `Temp directory <dir> ... Refusing to use it` / `ENOSPC: no space left on device, mkdir '<dir>'` | [Erreurs de ligne de commande](#temp-directory-refused-or-cannot-be-created) |


207| `Single sign-on authorization needed` | [Erreurs de ligne de commande](#single-sign-on-authorization-needed) |223| `Single sign-on authorization needed` | [Erreurs de ligne de commande](#single-sign-on-authorization-needed) |

208| `Failed to resume the conversation` | [Erreurs de ligne de commande](#failed-to-resume-the-conversation) |224| `Failed to resume the conversation` | [Erreurs de ligne de commande](#failed-to-resume-the-conversation) |

209| `No conversation found with session ID: <session-id>` | [Erreurs de ligne de commande](#no-conversation-found-with-the-session-id) |225| `No conversation found with session ID: <session-id>` | [Erreurs de ligne de commande](#no-conversation-found-with-the-session-id) |

226| `Windows reported an error (EBADF) when Claude Code read this session's transcript file` | [Erreurs de ligne de commande](#windows-reported-an-error-ebadf) |

210| `Cannot switch renderers in this session` | [Erreurs de ligne de commande](#cannot-switch-renderers-in-this-session) |227| `Cannot switch renderers in this session` | [Erreurs de ligne de commande](#cannot-switch-renderers-in-this-session) |

211| `Cannot switch renderers while work is running in the background` | [Erreurs de ligne de commande](#cannot-switch-renderers-in-this-session) |228| `Cannot switch renderers while work is running in the background` | [Erreurs de ligne de commande](#cannot-switch-renderers-in-this-session) |

212| `Couldn't open Claude Desktop` | [Erreurs de ligne de commande](#couldnt-open-claude-desktop) |229| `Couldn't open Claude Desktop` | [Erreurs de ligne de commande](#couldnt-open-claude-desktop) |


218| `Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load` | [Erreurs de ligne de commande](#output-styles-are-saved-to-local-settings-which-this-session-doesnt-load) |235| `Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load` | [Erreurs de ligne de commande](#output-styles-are-saved-to-local-settings-which-this-session-doesnt-load) |

219| `` `plugin eval` is currently in early access `` / `` `plugin eval` is currently unavailable `` | [Erreurs de plugin](#plugin-eval-is-currently-in-early-access) |236| `` `plugin eval` is currently in early access `` / `` `plugin eval` is currently unavailable `` | [Erreurs de plugin](#plugin-eval-is-currently-in-early-access) |

220| `Marketplace "<name>" is registered from an untrusted source` | [Erreurs de plugin](#marketplace-is-registered-from-an-untrusted-source) |237| `Marketplace "<name>" is registered from an untrusted source` | [Erreurs de plugin](#marketplace-is-registered-from-an-untrusted-source) |

238| `Claude Code refuses the marketplace name "<name>"` | [Erreurs de plugin](#claude-code-refuses-the-marketplace-name) |

239| `Marketplace name impersonates an official Anthropic/Claude marketplace` | [Erreurs de plugin](#claude-code-refuses-the-marketplace-name) |

221| `Marketplace "<name>" is already added from a different source` | [Erreurs de plugin](#marketplace-is-already-added-from-a-different-source) |240| `Marketplace "<name>" is already added from a different source` | [Erreurs de plugin](#marketplace-is-already-added-from-a-different-source) |

222| `"<name>" is another spelling of "<reserved>", a reserved marketplace name` | [Erreurs de plugin](#marketplace-name-is-another-spelling-of-a-reserved-name) |241| `"<name>" is another spelling of "<reserved>", a reserved marketplace name` | [Erreurs de plugin](#marketplace-name-is-another-spelling-of-a-reserved-name) |

223| `references ${user_config.*} in a shell-form command` | [Erreurs de plugin](#plugin-command-references-user-config) |242| `references ${user_config.*} in a shell-form command` | [Erreurs de plugin](#plugin-command-references-user-config) |


231| `Failed to load marketplace configuration` | [Erreurs de plugin](#failed-to-load-marketplace-configuration) |250| `Failed to load marketplace configuration` | [Erreurs de plugin](#failed-to-load-marketplace-configuration) |

232| `Marketplace configuration file is corrupted` | [Erreurs de plugin](#failed-to-load-marketplace-configuration) |251| `Marketplace configuration file is corrupted` | [Erreurs de plugin](#failed-to-load-marketplace-configuration) |

233| `Plugin "<name>@synced" is required by your organization and can't be disabled here` | [Erreurs de plugin](#plugin-is-required-by-your-organization) |252| `Plugin "<name>@synced" is required by your organization and can't be disabled here` | [Erreurs de plugin](#plugin-is-required-by-your-organization) |

253| `"<plugin>" was not uninstalled: it is still switched on in <file>` | [Erreurs de plugin](#plugin-was-not-uninstalled) |

254| `"<plugin>" was not uninstalled: <file> is there and could not be read` | [Erreurs de plugin](#plugin-was-not-uninstalled) |

234| `would be spawned with zero tools — refusing` | [Erreurs d'outil](#agent-would-be-spawned-with-zero-tools) |255| `would be spawned with zero tools — refusing` | [Erreurs d'outil](#agent-would-be-spawned-with-zero-tools) |

235| `File is covered by a Read deny rule in your permission settings` | [Erreurs d'outil](#file-is-covered-by-a-read-deny-rule) |256| `File is covered by a Read deny rule in your permission settings` | [Erreurs d'outil](#file-is-covered-by-a-read-deny-rule) |

257| `cannot contain null bytes (\0)` | [Erreurs d'outil](#path-cannot-contain-null-bytes) |

258| `Path contains null bytes` | [Erreurs d'outil](#path-cannot-contain-null-bytes) |

236| `subagent_type is required: the general-purpose agent is not available in this session` | [Erreurs d'outil](#subagent-type-is-required) |259| `subagent_type is required: the general-purpose agent is not available in this session` | [Erreurs d'outil](#subagent-type-is-required) |

237| `Error: this write left the memory index at MEMORY.md at ..., over its ... read limit` | [Erreurs d'outil](#memory-index-is-over-its-read-limit) |260| `Error: this write left the memory index at MEMORY.md at ..., over its ... read limit` | [Erreurs d'outil](#memory-index-is-over-its-read-limit) |

238| `pkill: refusing to run` | [Erreurs d'outil](#pkill-pattern-matches-the-claude-code-process) |261| `pkill: refusing to run` | [Erreurs d'outil](#pkill-pattern-matches-the-claude-code-process) |


248| `Refusing to read <path>: its symlink resolution changed after permission was checked (<reason>)` / `Refusing to search <path>: its symlink resolution changed after permission was checked` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |271| `Refusing to read <path>: its symlink resolution changed after permission was checked (<reason>)` / `Refusing to search <path>: its symlink resolution changed after permission was checked` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |

249| `Refusing to write <path>: its parent-directory symlink resolution changed after permission was checked` / `Refusing to write <path>: it is a symbolic link. Write to the link's target path instead` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |272| `Refusing to write <path>: its parent-directory symlink resolution changed after permission was checked` / `Refusing to write <path>: it is a symbolic link. Write to the link's target path instead` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |

250| `Refusing to write through symlink: <path>` / `Refusing to write into symlinked directory: <path>` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |273| `Refusing to write through symlink: <path>` / `Refusing to write into symlinked directory: <path>` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |

274| `Refusing to write <path>: where it leads on disk could not be determined` / `Refusing to read <path>: where it leads on disk could not be determined` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |

251| `Refusing to search <path>: a path one of its Read deny rules is written through changed while the search was being prepared` / `Refusing to search <path>: it could not be opened` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |275| `Refusing to search <path>: a path one of its Read deny rules is written through changed while the search was being prepared` / `Refusing to search <path>: it could not be opened` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |

252| `its permission check expired before it ran (too many concurrent file operations)` / `ripgrep was found only by name on PATH` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |276| `its permission check expired before it ran (too many concurrent file operations)` / `ripgrep was found only by name on PATH` | [Erreurs d'outil](#refusing-after-a-symlink-changed) |

253| `task output swap refused (tasks dir moved or linked)` | [Erreurs d'outil](#task-output-swap-refused) |277| `task output swap refused (tasks dir moved or linked)` | [Erreurs d'outil](#task-output-swap-refused) |

254| `Command killed: its output file was replaced or could no longer be verified` | [Erreurs d'outil](#task-output-swap-refused) |278| `Command killed: its output file was replaced or could no longer be verified` | [Erreurs d'outil](#task-output-swap-refused) |

279| `Your disk quota is full on the filesystem with Claude Code's temp directory <dir> (EDQUOT)` | [Erreurs d'outil](#disk-quota-or-temp-filesystem-is-full) |

280| `The filesystem with Claude Code's temp directory <dir>, or your disk quota on it, is full (ENOSPC)` | [Erreurs d'outil](#disk-quota-or-temp-filesystem-is-full) |

281| `Command output was lost: the temp filesystem at <dir> is full` / `is out of inodes` | [Erreurs d'outil](#disk-quota-or-temp-filesystem-is-full) |

255| `the source file is not valid UTF-8 text` / `the source file is not valid UTF-16 text` | [Erreurs d'outil](#the-source-file-is-not-valid-utf-8-text) |282| `the source file is not valid UTF-8 text` / `the source file is not valid UTF-16 text` | [Erreurs d'outil](#the-source-file-is-not-valid-utf-8-text) |

256| `the source file has the replacement character U+FFFD` | [Erreurs d'outil](#the-source-file-is-not-valid-utf-8-text) |283| `the source file has the replacement character U+FFFD` | [Erreurs d'outil](#the-source-file-is-not-valid-utf-8-text) |

257| `Reading a local file from outside this session's connected folders, or through a link, needs the approval card` | [Erreurs d'outil](#reading-a-local-file-from-outside-the-connected-folders) |284| `Reading a local file from outside this session's connected folders, or through a link, needs the approval card` | [Erreurs d'outil](#reading-a-local-file-from-outside-the-connected-folders) |


279| `EACCES: permission denied, posix_spawn` | [Erreurs de session en arrière-plan](#eacces-when-starting-a-background-session) |306| `EACCES: permission denied, posix_spawn` | [Erreurs de session en arrière-plan](#eacces-when-starting-a-background-session) |

280| `exited before it became reachable` | [Erreurs de session en arrière-plan](#background-service-exited-before-it-became-reachable) |307| `exited before it became reachable` | [Erreurs de session en arrière-plan](#background-service-exited-before-it-became-reachable) |

281| `Couldn't start a background session (working directory no longer exists or is not accessible: ...)` | [Erreurs de session en arrière-plan](#working-directory-no-longer-exists-when-starting-a-background-session) |308| `Couldn't start a background session (working directory no longer exists or is not accessible: ...)` | [Erreurs de session en arrière-plan](#working-directory-no-longer-exists-when-starting-a-background-session) |

309| `Workspace not trusted.` when starting or restarting a background session | [Erreurs de session en arrière-plan](#workspace-not-trusted-when-dispatching-a-background-session) |

282| `Claude Code is being updated by npm on this machine (still not runnable after 2 min, ...)` | [Erreurs de session en arrière-plan](#eacces-when-starting-a-background-session) |310| `Claude Code is being updated by npm on this machine (still not runnable after 2 min, ...)` | [Erreurs de session en arrière-plan](#eacces-when-starting-a-background-session) |

283| `Claude Code process exited with code N` | [Erreurs de wrapper et d'IDE](#claude-code-process-exited-with-code-n) |311| `Claude Code process exited with code N` | [Erreurs de wrapper et d'IDE](#claude-code-process-exited-with-code-n) |

284| `The connection to Claude Code ended before this message completed` | [Erreurs de wrapper et d'IDE](#the-connection-to-claude-code-ended-before-this-message-completed) |312| `The connection to Claude Code ended before this message completed` | [Erreurs de wrapper et d'IDE](#the-connection-to-claude-code-ended-before-this-message-completed) |


291| `Claude Code's fullscreen renderer didn't finish starting last time on this machine` / `Claude Code's fullscreen renderer has repeatedly failed to start on this machine` | [Avertissements de configuration](#fullscreen-failed-start-notice) |319| `Claude Code's fullscreen renderer didn't finish starting last time on this machine` / `Claude Code's fullscreen renderer has repeatedly failed to start on this machine` | [Avertissements de configuration](#fullscreen-failed-start-notice) |

292| `Claude Code exited after an unrecoverable interface error (...)` | [Avertissements de configuration](#exited-after-an-unrecoverable-interface-error) |320| `Claude Code exited after an unrecoverable interface error (...)` | [Avertissements de configuration](#exited-after-an-unrecoverable-interface-error) |

293| `Agent descriptions are over the 15.0k-token limit` | [Avertissements de configuration](#agent-descriptions-are-over-the-15000-token-limit) |321| `Agent descriptions are over the 15.0k-token limit` | [Avertissements de configuration](#agent-descriptions-are-over-the-15000-token-limit) |

322| `Not loaded: rename <path>, then restart — its name uses "<name>", a name reserved for the skills synced from your claude.ai account` | [Avertissements de configuration](#a-skill-command-or-workflow-wasnt-loaded-because-its-name-is-reserved) |

294| `Ignoring N permissions.allow entries from ... this workspace has not been trusted` | [Avertissements de configuration](#workspace-has-not-been-trusted) |323| `Ignoring N permissions.allow entries from ... this workspace has not been trusted` | [Avertissements de configuration](#workspace-has-not-been-trusted) |

295| `is a network path, which cannot be added as a working directory` | [Avertissements de configuration](#working-directory-is-a-network-path) |324| `is a network path, which cannot be added as a working directory` | [Avertissements de configuration](#working-directory-is-a-network-path) |

296| `Remote managed settings failed to load (<cause>)` | [Avertissements de configuration](#remote-managed-settings-failed-to-load) |325| `Remote managed settings failed to load (<cause>)` | [Avertissements de configuration](#remote-managed-settings-failed-to-load) |

297| `Managed settings were not approved; exiting without applying them.` | [Avertissements de configuration](#managed-settings-were-not-approved) |326| `Managed settings were not approved; exiting without applying them.` | [Avertissements de configuration](#managed-settings-were-not-approved) |

327| `Claude Code can't start: your organization's managed settings block the default model` / `Claude Code can't start: your organization allows only the models listed in "availableModels"` | [Avertissements de configuration](#managed-settings-block-the-default-model) |

298| `MCP server <name> is blocked by enterprise managed policy` | [Avertissements de configuration](#mcp-server-is-blocked-by-enterprise-managed-policy) |328| `MCP server <name> is blocked by enterprise managed policy` | [Avertissements de configuration](#mcp-server-is-blocked-by-enterprise-managed-policy) |

299| `Managed settings document could not be parsed as a JSON object; none of its settings are in effect. Fix or remove it.` | [Avertissements de configuration](#managed-settings-document-could-not-be-parsed) |329| `Managed settings document could not be parsed as a JSON object; none of its settings are in effect. Fix or remove it.` | [Avertissements de configuration](#managed-settings-document-could-not-be-parsed) |

300| `Managed settings drop-in directory could not be read` | [Avertissements de configuration](#managed-settings-document-could-not-be-parsed) |330| `Managed settings drop-in directory could not be read` | [Avertissements de configuration](#managed-settings-document-could-not-be-parsed) |


390 420 

391La phrase finale indique où vérifier l'état du service et varie selon le fournisseur. Les configurations Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry nomment l'état du service de ce fournisseur. Une `ANTHROPIC_BASE_URL` personnalisée nomme l'hôte de la passerelle.421La phrase finale indique où vérifier l'état du service et varie selon le fournisseur. Les configurations Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry nomment l'état du service de ce fournisseur. Une `ANTHROPIC_BASE_URL` personnalisée nomme l'hôte de la passerelle.

392 422 

393Cela indique une défaillance inattendue à l'intérieur de l'API. Elle n'est pas causée par votre prompt, vos paramètres ou votre compte.423Une 5xx de l'API elle-même indique une défaillance inattendue à l'intérieur de l'API. Elle n'est pas causée par votre prompt, vos paramètres ou votre compte.

424 

425Quand un proxy, un équilibreur de charge ou une passerelle répond avec une page d'erreur HTML, le message affiche le code d'état et le titre de la page, comme `API Error: 502 Bad Gateway`. Pour une page sans titre, le message affiche le code d'état et son nom standard à la place. Avant v2.1.281, le code d'état était supprimé quand la page avait un titre, et le balisage brut de la page était imprimé quand elle n'en avait pas.

394 426 

395**Que faire :**427**Que faire :**

396 428 


416 448 

417* Vérifiez [status.claude.com](https://status.claude.com), ou la page d'état du fournisseur nommée dans le message, pour les avis de capacité449* Vérifiez [status.claude.com](https://status.claude.com), ou la page d'état du fournisseur nommée dans le message, pour les avis de capacité

418* Réessayez dans quelques minutes450* Réessayez dans quelques minutes

419* Exécutez `/model` et basculez vers un modèle différent pour continuer à travailler, car la capacité est suivie par modèle. Claude Code vous invite à le faire quand un modèle est sous une charge particulièrement élevée, par exemple `Opus is experiencing high load, please use /model to switch to Sonnet`.451* Exécutez `/model` et basculez vers un modèle différent pour continuer à travailler, car la capacité est suivie par modèle. Claude Code vous invite à le faire quand un modèle est sous une charge particulièrement élevée, par exemple `Opus is experiencing high load, please use /model to switch to Sonnet`. Sur les modèles Fable, le message nomme Fable.

452 

453 Dans une session que l'application Claude Desktop exécute, comme l'onglet Code ou Cowork, le message se lit `Opus is experiencing high load. Switch to Sonnet.` et vous basculez les modèles avec le sélecteur de modèle de l'application.

420 454 

421<h3 id="request-timed-out">455<h3 id="request-timed-out">

422 Délai d'attente de la demande dépassé456 Délai d'attente de la demande dépassé


474API Error: Connection lost mid-response. The response above may be incomplete.508API Error: Connection lost mid-response. The response above may be incomplete.

475API Error: Your computer went to sleep mid-response. The response above may be incomplete.509API Error: Your computer went to sleep mid-response. The response above may be incomplete.

476API Error: The response stopped arriving. The response above may be incomplete.510API Error: The response stopped arriving. The response above may be incomplete.

511API Error: Part of the response never arrived. The response above may be incomplete.

512API Error: The response stream was malformed. The response above may be incomplete.

477```513```

478 514 

479* `Server error mid-response` : une erreur serveur surchargée ou 5xx en milieu de flux. Cette variante nécessite Claude Code v2.1.199 ou ultérieur ; avant cela, ce cas rejetait la sortie partielle et signalait le tour entier comme une erreur.515* `Server error mid-response` : une erreur serveur surchargée ou 5xx en milieu de flux. Cette variante nécessite Claude Code v2.1.199 ou ultérieur ; avant cela, ce cas rejetait la sortie partielle et signalait le tour entier comme une erreur.

480* `Connection lost mid-response` : la connexion a été interrompue.516* `Connection lost mid-response` : la connexion a été interrompue. Vous voyez également cette variante quand un proxy ou une passerelle termine le corps de la réponse proprement avant que la réponse soit terminée.

481* `Your computer went to sleep mid-response` : Claude Code a détecté que votre ordinateur s'est endormi pendant que la réponse était en streaming. Une fois que votre ordinateur se réveille, Claude Code traite la connexion comme cassée et arrête de la lire.517* `Your computer went to sleep mid-response` : Claude Code a détecté que votre ordinateur s'est endormi pendant que la réponse était en streaming. Une fois que votre ordinateur se réveille, Claude Code traite la connexion comme cassée et arrête de la lire.

518* `Part of the response never arrived` : un événement de flux a été supprimé entre l'API et Claude Code, donc un événement ultérieur référençait du contenu qui n'est jamais arrivé. Avant v2.1.281, ce cas terminait le tour avec `API Error: Content block not found`.

519* `The response stream was malformed` : un événement est arrivé pour un bloc de contenu qui avait déjà terminé, ou un événement est arrivé endommagé. Un événement endommagé est un événement dont les données ne sont pas du JSON valide, dont le contenu est manquant, ou dont le contenu ne correspond pas au type d'événement. Avant v2.1.284, l'erreur brute du parseur, comme une commençant par `API Error: JSON Parse error`, apparaissait à la place quand un événement avec du JSON invalide arrivait après que Claude ait terminé sa réflexion, un bloc de texte ou un appel d'outil.

482* `The response stopped arriving` : la connexion est restée ouverte mais a arrêté de livrer des données, donc le watchdog d'inactivité de streaming l'a annulée. Avant v2.1.222, Claude Code pouvait également signaler cet échec sur les connexions de [passerelle](/docs/fr/gateways) atteintes via `ANTHROPIC_BASE_URL` ou `ANTHROPIC_AWS_BASE_URL` tandis que les pings de maintien de connexion du serveur arrivaient toujours, car il ne comptait que les événements de réponse analysés là ; la mise à niveau arrête ces faux positifs sur ces routes. Les passerelles atteintes via une URL de base de fournisseur telle que `ANTHROPIC_BEDROCK_BASE_URL` ne sont pas enveloppées par le watchdog d'octet ; voir [Watchdogs d'inactivité de streaming](/docs/fr/network-config#streaming-idle-watchdogs).520* `The response stopped arriving` : la connexion est restée ouverte mais a arrêté de livrer des données, donc le watchdog d'inactivité de streaming l'a annulée. Avant v2.1.222, Claude Code pouvait également signaler cet échec sur les connexions de [passerelle](/docs/fr/gateways) atteintes via `ANTHROPIC_BASE_URL` ou `ANTHROPIC_AWS_BASE_URL` tandis que les pings de maintien de connexion du serveur arrivaient toujours, car il ne comptait que les événements de réponse analysés là ; la mise à niveau arrête ces faux positifs sur ces routes. Les passerelles atteintes via une URL de base de fournisseur telle que `ANTHROPIC_BEDROCK_BASE_URL` ne sont pas enveloppées par le watchdog d'octet ; voir [Watchdogs d'inactivité de streaming](/docs/fr/network-config#streaming-idle-watchdogs).

483 521 

484Avant v2.1.227, `Connection lost mid-response` lisait `Connection closed mid-response` et `The response stopped arriving` lisait `Response stalled mid-stream`.522Avant v2.1.227, `Connection lost mid-response` lisait `Connection closed mid-response` et `The response stopped arriving` lisait `Response stalled mid-stream`.

485 523 

524Quand un événement de flux supprimé, dupliqué ou endommagé arrive avant que Claude ait commencé du texte ou un appel d'outil, vous ne voyez pas cet avis :

525 

526* Si Claude avait terminé seulement sa réflexion, Claude Code réédite la demande. Quand les flux réédités se cassent de la même manière, le tour se termine avec `Part of the response never arrived and no response was produced. Try again.` ou `The response stream was malformed and no response was produced. Try again.`

527* Si rien n'avait terminé, Claude Code renvoie la demande sans streaming à la place. Si vous avez désactivé ce repli avec [`CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK`](/docs/fr/env-vars), le tour se termine avec `API Error: Content block not found` pour un événement supprimé ou `API Error: Content block already closed` pour un événement dupliqué. Pour un événement endommagé avec le repli désactivé, le tour se termine avec `API Error: Stream event unreadable` ou l'erreur brute du parseur.

528 

486Dans quatre cas, Claude Code gère l'échec sans afficher cet avis immédiatement :529Dans quatre cas, Claude Code gère l'échec sans afficher cet avis immédiatement :

487 530 

488* Plus tôt dans la réponse, Claude Code réessaie l'échec ou termine le tour avec une erreur différente. Voir [Tentatives automatiques](#automatic-retries).531* Plus tôt dans la réponse, Claude Code réessaie l'échec ou termine le tour avec une erreur différente. Voir [Tentatives automatiques](#automatic-retries).


668API Error: Usage credits required for 1M context · run /usage-credits to turn them on (they take effect after you restart Claude Code), or /model to switch to standard context711API Error: Usage credits required for 1M context · run /usage-credits to turn them on (they take effect after you restart Claude Code), or /model to switch to standard context

669```712```

670 713 

714Dans une session que l'application Claude Desktop exécute, l'indice ne nomme aucune commande : il pointe vers la page des paramètres d'utilisation de claude.ai, ou sur les plans Team et Enterprise indique d'activer les crédits d'utilisation à claude.ai/admin-settings/usage ou de demander à votre administrateur.

715 

671C'est une vérification de droit, pas un épuisement de quota. Elle se déclenche même quand vos allocations de session et hebdomadaires ont de la capacité restante. Consultez [Extended context](/docs/fr/model-config#extended-context) pour voir quels plans incluent le contexte 1M directement et lesquels nécessitent des crédits d'utilisation. Claude Code exécute cette vérification quand vous choisissez le modèle avec `/model`, et uniquement sur une connexion directe à l'API Anthropic ; si vous pointez `ANTHROPIC_BASE_URL` vers une [passerelle LLM](/docs/fr/llm-gateway), `/model` permet la sélection `[1m]` et la passerelle décide si la demande réussit.716C'est une vérification de droit, pas un épuisement de quota. Elle se déclenche même quand vos allocations de session et hebdomadaires ont de la capacité restante. Consultez [Extended context](/docs/fr/model-config#extended-context) pour voir quels plans incluent le contexte 1M directement et lesquels nécessitent des crédits d'utilisation. Claude Code exécute cette vérification quand vous choisissez le modèle avec `/model`, et uniquement sur une connexion directe à l'API Anthropic ; si vous pointez `ANTHROPIC_BASE_URL` vers une [passerelle LLM](/docs/fr/llm-gateway), `/model` permet la sélection `[1m]` et la passerelle décide si la demande réussit.

672 717 

673Quand cette erreur apparaît au milieu d'une conversation parce que le contexte a dépassé 200K tokens, Claude Code compacte automatiquement la conversation en dessous de la limite de contexte standard et maintient la session à cette limite par la suite, donc aucune action n'est nécessaire. Sur les versions antérieures à v2.1.172, l'erreur s'est répétée à chaque demande suivante, y compris `/compact` ; exécutez `/clear` sur ces versions pour récupérer. Les étapes ci-dessous s'appliquent quand vous avez explicitement sélectionné un modèle `[1m]`.718Quand cette erreur apparaît au milieu d'une conversation parce que le contexte a dépassé 200K tokens, Claude Code compacte automatiquement la conversation en dessous de la limite de contexte standard et maintient la session à cette limite par la suite, donc aucune action n'est nécessaire. Sur les versions antérieures à v2.1.172, l'erreur s'est répétée à chaque demande suivante, y compris `/compact` ; exécutez `/clear` sur ces versions pour récupérer. Les étapes ci-dessous s'appliquent quand vous avez explicitement sélectionné un modèle `[1m]`.


733 778 

734La phrase finale nomme où vérifier la santé du service et varie selon le fournisseur. Les configurations Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry nomment le statut du service de ce fournisseur au lieu de la page de statut Anthropic. Un `ANTHROPIC_BASE_URL` personnalisé nomme l'hôte de la passerelle.779La phrase finale nomme où vérifier la santé du service et varie selon le fournisseur. Les configurations Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry nomment le statut du service de ce fournisseur au lieu de la page de statut Anthropic. Un `ANTHROPIC_BASE_URL` personnalisé nomme l'hôte de la passerelle.

735 780 

781Quand un proxy, un équilibreur de charge ou une passerelle entre Claude Code et l'API répond avec sa propre page HTML 429, le texte après le `·` est le titre de cette page quand elle en a un, comme `Too Many Requests`. Avant v2.1.281, l'ensemble du balisage de la page était imprimé après le `·`.

782 

736**Ce qu'il faut faire :**783**Ce qu'il faut faire :**

737 784 

738* Exécutez `/status` et confirmez que les identifiants actifs sont ceux que vous attendez. Un `ANTHROPIC_API_KEY` égaré dans votre environnement peut acheminer les demandes via une clé de niveau inférieur au lieu de votre abonnement.785* Exécutez `/status` et confirmez que les identifiants actifs sont ceux que vous attendez. Un `ANTHROPIC_API_KEY` égaré dans votre environnement peut acheminer les demandes via une clé de niveau inférieur au lieu de votre abonnement.


839Not logged in · Please run /login886Not logged in · Please run /login

840```887```

841 888 

889Dans une session que l'application Claude Desktop exécute, comme l'onglet Code ou Cowork, le message se lit `Authentication required · Sign in again to continue`, et vous vous reconnectez à partir de l'application.

890 

842**À faire :**891**À faire :**

843 892 

844* Exécutez `/login` pour vous authentifier avec votre abonnement Claude ou votre compte Console893* Exécutez `/login` pour vous authentifier avec votre abonnement Claude ou votre compte Console


985Your organization has disabled API key authentication · Unset ANTHROPIC_API_KEY to use your claude.ai account instead1034Your organization has disabled API key authentication · Unset ANTHROPIC_API_KEY to use your claude.ai account instead

986Your organization has disabled API key authentication · Unset ANTHROPIC_API_KEY and run /login to sign in with your claude.ai account1035Your organization has disabled API key authentication · Unset ANTHROPIC_API_KEY and run /login to sign in with your claude.ai account

987Your organization has disabled API key authentication · Unset the apiKeyHelper setting and run /login to sign in with your claude.ai account1036Your organization has disabled API key authentication · Unset the apiKeyHelper setting and run /login to sign in with your claude.ai account

1037Your organization has disabled API key authentication · Sign in again with your claude.ai account

988```1038```

989 1039 

1040La dernière forme apparaît dans une session que l'application Claude Desktop exécute, comme l'onglet Code ou Cowork, où vous vous reconnectez à partir de l'application.

1041 

990Les variables d'environnement et `apiKeyHelper` prennent la priorité sur `/login`, donc exécuter `/login` seul n'aide pas tant que l'un ou l'autre fournit toujours une clé. Consultez [Précédence d'authentification](/docs/fr/authentication#authentication-precedence).1042Les variables d'environnement et `apiKeyHelper` prennent la priorité sur `/login`, donc exécuter `/login` seul n'aide pas tant que l'un ou l'autre fournit toujours une clé. Consultez [Précédence d'authentification](/docs/fr/authentication#authentication-precedence).

991 1043 

992**À faire :**1044**À faire :**


1203* En mode non-interactif, exécutez `claude` dans le même environnement, complétez `/login`, puis réexécutez votre commande. Pour l'automatisation qui ne peut pas se connecter de manière interactive, authentifiez-vous avec `ANTHROPIC_API_KEY` ou [générez un jeton de longue durée avec `claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token).1255* En mode non-interactif, exécutez `claude` dans le même environnement, complétez `/login`, puis réexécutez votre commande. Pour l'automatisation qui ne peut pas se connecter de manière interactive, authentifiez-vous avec `ANTHROPIC_API_KEY` ou [générez un jeton de longue durée avec `claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token).

1204* Si la connexion continue d'échouer, consultez [Connexion et authentification](/docs/fr/troubleshoot-install#login-and-authentication)1256* Si la connexion continue d'échouer, consultez [Connexion et authentification](/docs/fr/troubleshoot-install#login-and-authentication)

1205 1257 

1258<h3 id="could-not-refresh-your-login">

1259 Impossible de rafraîchir votre connexion car un autre processus Claude Code la rafraîchit

1260</h3>

1261 

1262Ce message ne signifie pas que votre connexion a été rejetée. Votre connexion claude.ai enregistrée avait expiré et devait être renouvelée. Un autre processus Claude Code sur la même machine tenait le verrou de rafraîchissement partagé, ou s'est terminé et l'a laissé derrière, et le rafraîchissement n'a fait aucun progrès pendant que cette session attendait. Claude Code arrête la requête avant de l'envoyer :

1263 

1264```text theme={null}

1265Could not refresh your login because another Claude Code process is refreshing it (or exited mid-refresh) · Try again in a minute; if it keeps happening, close other Claude Code windows or sign in again with /login

1266```

1267 

1268En [mode non-interactif](/docs/fr/headless) (`-p`) et l'[Agent SDK](/docs/fr/agent-sdk/overview), le message se lit comme suit, et le code d'erreur structuré est `server_error` :

1269 

1270```text theme={null}

1271Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh. This is usually transient; retry in a minute, and if it persists close other Claude Code processes or sign in again

1272```

1273 

1274Les sessions authentifiées avec une clé API, [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/fr/env-vars) ou un fournisseur tiers n'utilisent pas la connexion enregistrée et ne voient jamais ce message.

1275 

1276**À faire :**

1277 

1278* Réessayez dans une minute. Si un autre processus complète le rafraîchissement en premier, cette session utilise la connexion renouvelée.

1279* Si le message continue de revenir, fermez les autres fenêtres et processus Claude Code, puis réessayez.

1280* S'il revient sans aucun autre processus Claude Code en cours d'exécution, exécutez `/login`. Se connecter à nouveau n'attend pas le verrou de rafraîchissement.

1281 

1282<h3 id="couldnt-save-your-login">

1283 Impossible d'enregistrer votre connexion

1284</h3>

1285 

1286Vous vous êtes connecté avec claude.ai, mais Claude Code n'a pas pu enregistrer la connexion dans son magasin de credentials, donc la connexion n'a pas été complétée. Sur macOS, cela peut se produire quand le trousseau de connexion se verrouille, par exemple au sommeil ou à l'inactivité, après que Claude Code ait déjà lu ou enregistré des credentials dedans pendant la même session.

1287 

1288```text theme={null}

1289Couldn't save your login. If your Mac's keychain is locked, unlock it and log in again.

1290Couldn't save your login. Try logging in again.

1291```

1292 

1293La première forme apparaît sur macOS et la deuxième partout ailleurs. Une défaillance transitoire du magasin de credentials, comme un délai d'expiration ou un magasin illisible, produit le même message.

1294 

1295**À faire :**

1296 

1297* Sur macOS, déverrouillez le trousseau de connexion, puis exécutez `/login` à nouveau

1298* Sur d'autres plates-formes, exécutez `/login` à nouveau

1299* Si la connexion ne s'enregistre toujours pas, consultez [Non connecté ou token expiré](/docs/fr/troubleshoot-install#not-logged-in-or-token-expired) pour la commande de déverrouillage du trousseau et d'autres étapes de récupération du stockage des credentials

1300 

1206<h3 id="claude-login-not-accepted">1301<h3 id="claude-login-not-accepted">

1207 Connexion Claude non acceptée1302 Connexion Claude non acceptée

1208</h3>1303</h3>


1608* Pour un lancement non-interactif, démarrez `claude` dans le même environnement, exécutez `/login`, puis réexécutez votre commande1703* Pour un lancement non-interactif, démarrez `claude` dans le même environnement, exécutez `/login`, puis réexécutez votre commande

1609 1704 

1610<h3 id="sign-in-timed-out-while-waiting-for-you-to-continue">1705<h3 id="sign-in-timed-out-while-waiting-for-you-to-continue">

1611 La passerelle a refusé la requête1706 La connexion a expiré en attendant que vous continuiez

1612</h3>1707</h3>

1613 1708 

1614Vous êtes connecté via une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), et une requête a retourné un 403 : la passerelle, ou l'amont derrière, l'a refusée. Se reconnecter ne change pas un refus, donc le message pointe vers votre administrateur de passerelle :1709Pendant une [connexion à la passerelle d'applications Claude](/docs/fr/claude-apps-gateway), la passerelle a nommé le compte qui s'est connecté, et Claude Code vous a demandé de le confirmer avant d'enregistrer la credential. Vous avez laissé la confirmation ouverte au-delà de l'expiration de la connexion elle-même, et la passerelle n'a émis aucun jeton d'actualisation qui pourrait la renouveler, donc Claude Code n'a rien enregistré quand vous avez continué :

1615 1710 

1616```text theme={null}1711```text theme={null}

1617Gateway refused the request · signing in again won't change this — check with your gateway administrator · API Error: 403 ...1712Sign-in timed out while waiting for you to continue. Try again.

1618```1713```

1619 1714 

1620**À faire :**1715**À faire :**

1621 1716 

1622* Demandez à votre administrateur de passerelle de rechercher la requête. La queue `API Error:` porte le refus que la passerelle a retourné1717* Exécutez `/login` à nouveau et confirmez le compte avant que la connexion n'expire

1623* Pour les administrateurs : une [règle de contrôle d'accès](/docs/fr/claude-apps-gateway-config#http-tuning) sur la passerelle retourne un 403 que le [journal d'audit](/docs/fr/claude-apps-gateway-deploy#logs) enregistre avec sa raison, et un refus d'autorisation en amont passe par [Messages d'erreur en amont](/docs/fr/claude-apps-gateway-config#upstream-error-messages)

1624 

1625Avant v2.1.273, un 403 sur une session de passerelle affichait le message générique `Please run /login` ou `Failed to authenticate` à la place, et se reconnecter ne changeait pas le refus.

1626 1718 

1627<h3 id="gateway-refused-the-request">1719<h3 id="gateway-refused-the-request">

1628 Connexion non acceptée à la passerelle Cloud1720 La passerelle a refusé la requête

1629</h3>1721</h3>

1630 1722 

1631Vous avez essayé de démarrer une [session cloud](/docs/fr/claude-code-on-the-web), et le serveur a refusé de la créer avec un 401 : il n'a pas accepté la connexion Claude que cette machine a envoyée, généralement parce que la connexion a expiré ou a été révoquée.1723Vous êtes connecté via une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), et une requête a retourné un 403 : la passerelle, ou l'amont derrière, l'a refusée. Se reconnecter ne change pas un refus, donc le message pointe vers votre administrateur de passerelle :

1632 

1633La première partie de la ligne est la propre raison du serveur quand il en donne une. Sinon, la ligne se lit :

1634 1724 

1635```text theme={null}1725```text theme={null}

1636Claude login not accepted · Run /login, then try again1726Gateway refused the request · signing in again won't change this — check with your gateway administrator · API Error: 403 ...

1637```1727```

1638 1728 

1639**À faire :**1729**À faire :**

1640 1730 

1641* Exécutez `/login`, complétez la connexion, puis démarrez la session à nouveau1731* Demandez à votre administrateur de passerelle de rechercher la requête. La queue `API Error:` porte le refus que la passerelle a retourné

1732* Pour les administrateurs : une [règle de contrôle d'accès](/docs/fr/claude-apps-gateway-config#http-tuning) sur la passerelle retourne un 403 que le [journal d'audit](/docs/fr/claude-apps-gateway-deploy#logs) enregistre avec sa raison, et un refus d'autorisation en amont passe par [Messages d'erreur en amont](/docs/fr/claude-apps-gateway-config#upstream-error-messages)

1733 

1734Avant v2.1.273, un 403 sur une session de passerelle affichait le message générique `Please run /login` ou `Failed to authenticate` à la place, et se reconnecter ne changeait pas le refus.

1642 1735 

1643<h2 id="network-and-connection-errors">1736<h2 id="network-and-connection-errors">

1644 Erreurs de réseau et de connexion1737 Erreurs de réseau et de connexion


1679 1772 

1680Si `curl` réussit mais que Claude Code échoue toujours, la cause est généralement quelque chose entre le runtime et le réseau plutôt que le réseau lui-même :1773Si `curl` réussit mais que Claude Code échoue toujours, la cause est généralement quelque chose entre le runtime et le réseau plutôt que le réseau lui-même :

1681 1774 

1775* Vérifiez si `ANTHROPIC_BASE_URL` est défini en exécutant `echo $ANTHROPIC_BASE_URL`, ou `echo $env:ANTHROPIC_BASE_URL` dans PowerShell, et cherchez-le dans le bloc `env` de vos [fichiers de paramètres](/docs/fr/settings). Lorsqu'il est défini, Claude Code envoie les requêtes de modèle à cette adresse au lieu de `api.anthropic.com`, donc une valeur résiduelle pointant vers un proxy local ou une passerelle qui ne fonctionne plus produit `Connection refused` même si `curl` atteint l'API. Supprimez-le de votre profil shell ou de vos paramètres et démarrez Claude Code à partir d'un nouveau terminal.

1682* Sur Linux et WSL, vérifiez `/etc/resolv.conf` pour un serveur de noms inaccessible. WSL en particulier peut hériter d'un résolveur cassé de l'hôte.1776* Sur Linux et WSL, vérifiez `/etc/resolv.conf` pour un serveur de noms inaccessible. WSL en particulier peut hériter d'un résolveur cassé de l'hôte.

1683* Sur macOS, un client VPN qui a été déconnecté ou désinstallé peut laisser une interface de tunnel ou une règle de routage. Vérifiez `ifconfig` pour les interfaces `utun` obsolètes et supprimez l'extension réseau du VPN dans les Paramètres système.1777* Sur macOS, un client VPN qui a été déconnecté ou désinstallé peut laisser une interface de tunnel ou une règle de routage. Vérifiez `ifconfig` pour les interfaces `utun` obsolètes et supprimez l'extension réseau du VPN dans les Paramètres système.

1684* Docker Desktop et les runtimes de conteneurs similaires peuvent intercepter le trafic sortant. Quittez-les et réessayez pour exclure cette possibilité.1778* Docker Desktop et les runtimes de conteneurs similaires peuvent intercepter le trafic sortant. Quittez-les et réessayez pour exclure cette possibilité.


1899* Démarrez une nouvelle session avec `claude --remote-control` pour créer une nouvelle session Remote Control1993* Démarrez une nouvelle session avec `claude --remote-control` pour créer une nouvelle session Remote Control

1900* Pour les autres messages de démarrage Remote Control, consultez [Troubleshoot Remote Control](/docs/fr/remote-control#troubleshooting)1994* Pour les autres messages de démarrage Remote Control, consultez [Troubleshoot Remote Control](/docs/fr/remote-control#troubleshooting)

1901 1995 

1902Si le serveur rapporte à la place que la session précédente est partie, vous ne voyez pas ce message. Claude Code démarre une nouvelle session à sa place ou affiche [`Previous session is unavailable — run /remote-control to start a new one`](/docs/fr/remote-control#previous-session-is-unavailable), selon [l'enregistrement de reconnexion de la conversation](/docs/fr/remote-control#resume-outcomes). De la v2.1.227 à la v2.1.231, Claude Code affichait un message qui commence par `Remote Control could not resume the previous session under the current login` à la place, et [les versions antérieures se comportaient différemment à nouveau](/docs/fr/remote-control#reconnect-history).1996Si le serveur rapporte à la place que la session précédente est partie, vous ne voyez pas ce message. Claude Code démarre une nouvelle session à sa place ou affiche [`Previous session is unavailable — run /remote-control to start a new one`](/docs/fr/remote-control#previous-session-is-unavailable).

1903 1997 

1904<h3 id="sessions-ended-while-this-machine-was-offline">1998<h3 id="sessions-ended-while-this-machine-was-offline">

1905 Les sessions se sont terminées alors que cette machine était hors ligne1999 Les sessions se sont terminées alors que cette machine était hors ligne


1920 Impossible de partager la transcription2014 Impossible de partager la transcription

1921</h3>2015</h3>

1922 2016 

1923Après que vous ayez accepté de partager votre transcription de session à partir d'une invite d'enquête, comme l'[enquête de qualité de session](/docs/fr/data-usage#session-quality-surveys), Claude Code la télécharge vers Anthropic, ou enregistre une archive locale à la place sur les fournisseurs tiers, sur les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), et lorsqu'aucune identifiant Anthropic n'est disponible. Ce message signifie que le partage ne s'est pas complété.2017Après que vous ayez accepté de partager votre transcription de session à partir d'une invite d'enquête, comme l'[enquête de qualité de session](/docs/fr/data-usage#session-quality-surveys), Claude Code la télécharge vers Anthropic, ou enregistre une archive locale à la place sur les fournisseurs tiers, sur les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), et lorsqu'aucun identifiant Anthropic n'est disponible. Ce message signifie que le partage ne s'est pas complété.

1924 2018 

1925```text theme={null}2019```text theme={null}

1926Couldn't share the transcript.2020Couldn't share the transcript.


1933* Exécutez `/feedback` pour envoyer la transcription avec une description de ce qui s'est passé. Consultez [Report an error](#report-an-error) si `/feedback` n'est pas disponible dans votre environnement2027* Exécutez `/feedback` pour envoyer la transcription avec une description de ce qui s'est passé. Consultez [Report an error](#report-an-error) si `/feedback` n'est pas disponible dans votre environnement

1934* Si d'autres requêtes échouent aussi, vérifiez votre connexion réseau et consultez [Impossible de se connecter à l'API](#unable-to-connect-to-api)2028* Si d'autres requêtes échouent aussi, vérifiez votre connexion réseau et consultez [Impossible de se connecter à l'API](#unable-to-connect-to-api)

1935 2029 

2030<h3 id="couldnt-send-feedback">

2031 Impossible d'envoyer des commentaires

2032</h3>

2033 

2034Vous avez envoyé un rapport à partir de la boîte de dialogue [`/feedback`, `/bug`, ou `/share`](/docs/fr/commands#all-commands) et le téléchargement vers Anthropic a échoué. La boîte de dialogue conserve votre texte pour que vous puissiez réessayer.

2035 

2036```text theme={null}

2037Couldn't send feedback (couldn't reach the service). If it keeps failing, you can file at https://github.com/anthropics/claude-code/issues instead.

2038```

2039 

2040Le texte après le préfixe nomme ce qui a échoué :

2041 

2042* **`: not signed in. Run /login, then retry.`**: la boîte de dialogue télécharge uniquement lorsque Claude Code a trouvé des identifiants Anthropic à son ouverture, et aucun n'était utilisable au moment où vous avez envoyé. Par exemple, vous vous êtes déconnecté sur cette machine entre-temps, ou votre connexion n'a plus pu être actualisée.

2043* **Une parenthèse**: `(server returned <status>)` est le code de réponse du service ; `(request timed out)` et `(couldn't reach the service)` sont des défaillances réseau. Lorsque Claude Code ne peut pas nommer une raison, la parenthèse est absente.

2044 

2045Dans la [file d'attente des brouillons de commentaires](/docs/fr/tools-reference#sendfeedback-tool-behavior), la même défaillance se termine par `The draft is still queued. Try again later.` à la place, et le brouillon reste dans la file d'attente pour une autre tentative.

2046 

2047**À faire :**

2048 

2049* Pour le libellé non-connecté, exécutez `/login` et envoyez à nouveau

2050* Sinon, envoyez à nouveau ; si d'autres requêtes échouent aussi, vérifiez votre connexion réseau et consultez [Impossible de se connecter à l'API](#unable-to-connect-to-api)

2051* Si cela continue d'échouer, déposez le rapport à [github.com/anthropics/claude-code/issues](https://github.com/anthropics/claude-code/issues), comme le message le dit

2052 

2053Avant la v2.1.281, chaque envoi échouait avec ce message une fois qu'un **Stop** Remote Control ou un message urgent entre sessions avait arrivé alors que la boîte de dialogue était ouverte. Sur ces versions, fermez la boîte de dialogue, rouvrez-la, et envoyez à nouveau.

2054 

1936<h2 id="request-errors">2055<h2 id="request-errors">

1937 Erreurs de requête2056 Erreurs de requête

1938</h2>2057</h2>


2187* Supprimez ou [désactivez](/docs/fr/mcp#disable-a-server-without-removing-it) le serveur MCP qui déclare le schéma invalide. L'erreur nomme l'outil uniquement par position. Sur v2.1.216 ou ultérieur, vérifiez le journal de chaque serveur pour une ligne nommant un outil dont le schéma d'entrée serait rejeté. Si aucun journal n'en nomme un, désactivez les serveurs un par un.2306* Supprimez ou [désactivez](/docs/fr/mcp#disable-a-server-without-removing-it) le serveur MCP qui déclare le schéma invalide. L'erreur nomme l'outil uniquement par position. Sur v2.1.216 ou ultérieur, vérifiez le journal de chaque serveur pour une ligne nommant un outil dont le schéma d'entrée serait rejeté. Si aucun journal n'en nomme un, désactivez les serveurs un par un.

2188* Si vous maintenez le serveur, corrigez le `input_schema` de l'outil. Le schéma doit être un JSON Schema valide, et les noms de propriété de niveau supérieur doivent faire 1 à 64 caractères et utiliser uniquement des lettres ASCII et des chiffres, `_`, `.` et `-`. Voir [Outils avec schémas d'entrée invalides](/docs/fr/mcp#tools-with-invalid-input-schemas).2307* Si vous maintenez le serveur, corrigez le `input_schema` de l'outil. Le schéma doit être un JSON Schema valide, et les noms de propriété de niveau supérieur doivent faire 1 à 64 caractères et utiliser uniquement des lettres ASCII et des chiffres, `_`, `.` et `-`. Voir [Outils avec schémas d'entrée invalides](/docs/fr/mcp#tools-with-invalid-input-schemas).

2189 2308 

2309<h3 id="tool-use-name-over-200-characters">

2310 tool\_use.name dépasse 200 caractères

2311</h3>

2312 

2313Un appel d'outil dans l'historique de conversation porte un nom plus long que les 200 caractères que l'API accepte dans une requête :

2314 

2315```text theme={null}

2316API Error: 400 ... tool_use.name: String should have at most 200 characters

2317```

2318 

2319Claude Code coupe un tel nom à 200 caractères quand la réponse arrive et quand il charge une conversation enregistrée, donc l'appel échoue avec une erreur d'outil ordinaire `No such tool available` et la conversation continue sans cette erreur API.

2320 

2321**Que faire :**

2322 

2323* Exécutez `claude update`, puis reprenez la conversation. La version mise à jour répare le nom trop long quand elle charge la transcription, donc une conversation qui était bloquée fonctionne à nouveau.

2324 

2325Avant v2.1.281, le nom trop long restait dans l'historique et l'API rejetait chaque requête qui renvoyait la conversation, y compris `/compact` et `--resume`, donc cette erreur se répétait et la conversation était bloquée.

2326 

2190<h3 id="theres-an-issue-with-the-selected-model">2327<h3 id="theres-an-issue-with-the-selected-model">

2191 Il y a un problème avec le modèle sélectionné2328 Il y a un problème avec le modèle sélectionné

2192</h3>2329</h3>


2218Model "claud-sonnet-5" is not a recognized model id. Did you mean 'claude-sonnet-5'?2355Model "claud-sonnet-5" is not a recognized model id. Did you mean 'claude-sonnet-5'?

2219```2356```

2220 2357 

2221L'indice de fin nomme l'alias ou l'ID de modèle le plus proche. Quand rien n'est assez proche, il se lit `Run /model to see available models.` à la place.2358L'indice de fin nomme l'alias ou l'ID de modèle le plus proche. Quand rien n'est assez proche, il se lit `Run /model to see available models.` à la place. Dans une session que l'[application de bureau](/docs/fr/desktop) démarre pour vous, l'indice sans correspondance se lit `Switch to a different model.`

2222 2359 

2223Claude Code produit cette erreur localement au moment où le changement est demandé, avant toute requête API. Elle s'applique quand un modèle est défini via la méthode [Agent SDK](/docs/fr/agent-sdk/typescript) `setModel()`, par une application comme l'[application de bureau](/docs/fr/desktop) qui exécute le CLI Claude Code pour vous, ou quand vous choisissez un modèle à partir d'un appareil connecté via [Contrôle à distance](/docs/fr/remote-control). Avant v2.1.260, la vérification ne couvrait pas les choix de contrôle à distance, donc Claude Code appliquait le choix et la requête suivante échouait avec [Il y a un problème avec le modèle sélectionné](#theres-an-issue-with-the-selected-model).2360Claude Code produit cette erreur localement au moment où le changement est demandé, avant toute requête API. Elle s'applique quand un modèle est défini via la méthode [Agent SDK](/docs/fr/agent-sdk/typescript) `setModel()`, par une application comme l'[application de bureau](/docs/fr/desktop) qui exécute le CLI Claude Code pour vous, ou quand vous choisissez un modèle à partir d'un appareil connecté via [Contrôle à distance](/docs/fr/remote-control). Avant v2.1.260, la vérification ne couvrait pas les choix de contrôle à distance, donc Claude Code appliquait le choix et la requête suivante échouait avec [Il y a un problème avec le modèle sélectionné](#theres-an-issue-with-the-selected-model).

2224 2361 


2247* Si vous avez tapé un ID complet, vérifiez-le par rapport au catalogue de modèles de votre fournisseur. Un modèle nouvellement lancé peut être disponible sur l'API Anthropic avant que votre fournisseur ou région ne l'offre.2384* Si vous avez tapé un ID complet, vérifiez-le par rapport au catalogue de modèles de votre fournisseur. Un modèle nouvellement lancé peut être disponible sur l'API Anthropic avant que votre fournisseur ou région ne l'offre.

2248* Avant v2.1.265, `/model` rejetait aussi l'orthographe d'alias `opusplan[1m]` avec cette erreur. Sur ces versions, mettez à jour Claude Code, ou définissez le modèle dans [paramètres](/docs/fr/model-config#setting-your-model) ou avec `--model` à la place.2385* Avant v2.1.265, `/model` rejetait aussi l'orthographe d'alias `opusplan[1m]` avec cette erreur. Sur ces versions, mettez à jour Claude Code, ou définissez le modèle dans [paramètres](/docs/fr/model-config#setting-your-model) ou avec `--model` à la place.

2249 2386 

2387<h3 id="api-error-model-not-changed">

2388 Erreur API lors de la vérification du modèle choisi

2389</h3>

2390 

2391Vous avez choisi un modèle avec `/model <name>`, ou une application connectée à la session a demandé le changement. L'API a refusé la requête minimale que Claude Code envoie pour vérifier le modèle, pour une raison qui n'a pas d'entrée propre, comme une limite de débit ou une erreur serveur. La session garde son modèle actuel, et le message se termine en disant ainsi :

2392 

2393```text theme={null}

2394API error: 429 <the server's explanation> · model not changed

2395```

2396 

2397Le milieu du message est le statut HTTP et l'explication propre du serveur.

2398 

2399**Que faire :**

2400 

2401* Agissez sur l'explication du serveur ; pour une limite de débit ou un statut 5xx, attendez et choisissez le modèle à nouveau

2402* Les refus avec leur propre libellé sont couverts par les entrées environnantes, comme [Modèle non trouvé](#model-not-found) et [Le modèle est restreint par les paramètres de votre organisation](#model-is-restricted-by-your-organizations-settings)

2403 

2250<h3 id="claude-opus-is-not-available-with-the-claude-pro-plan">2404<h3 id="claude-opus-is-not-available-with-the-claude-pro-plan">

2251 Claude Opus n'est pas disponible avec le plan Claude Pro2405 Claude Opus n'est pas disponible avec le plan Claude Pro

2252</h3>2406</h3>


2257Claude Opus is not available with the Claude Pro plan. If you have updated your subscription plan recently, run /logout and /login for the plan to take effect.2411Claude Opus is not available with the Claude Pro plan. If you have updated your subscription plan recently, run /logout and /login for the plan to take effect.

2258```2412```

2259 2413 

2414Dans une session que l'application Claude Desktop exécute, le message dit de `sign out and sign in again` au lieu de nommer les commandes.

2415 

2260**Que faire :**2416**Que faire :**

2261 2417 

2262* Exécutez `/model` et sélectionnez un modèle que votre plan inclut2418* Exécutez `/model` et sélectionnez un modèle que votre plan inclut


2289 Le modèle est restreint par les paramètres de votre organisation2445 Le modèle est restreint par les paramètres de votre organisation

2290</h3>2446</h3>

2291 2447 

2292Votre administrateur d'organisation a désactivé ce modèle dans la console d'administration claude.ai, ou il est exclu par une liste d'autorisation [`availableModels`](/docs/fr/model-config#restrict-model-selection) dans les paramètres gérés. Quand le modèle restreint a été défini avec `--model`, `ANTHROPIC_MODEL` ou le paramètre `model`, Claude Code substitue un modèle autorisé et continue. Taper `/model <name>` pour un modèle restreint est rejeté avec `Run /model to choose a different model.` et la session garde son modèle actuel. L'avis de substitution peut aussi apparaître en milieu de session après qu'un administrateur désactive le modèle sur lequel une session s'exécute dans la console d'administration claude.ai.2448Votre administrateur d'organisation a désactivé ce modèle dans la console d'administration claude.ai, ou les paramètres gérés l'excluent via une liste d'autorisation [`availableModels`](/docs/fr/model-config#restrict-model-selection) ou une liste [`deniedModels`](/docs/fr/model-config#block-specific-models-or-versions). L'avis apparaît au démarrage quand `--model`, `ANTHROPIC_MODEL` ou le paramètre `model` a nommé le modèle restreint, et il nomme le modèle que la session utilise à la place. Si les paramètres gérés ne laissent aucun modèle autorisé pour la session à utiliser, voir [Les paramètres gérés bloquent le modèle par défaut](#managed-settings-block-the-default-model). L'avis de substitution peut aussi apparaître en milieu de session après qu'un administrateur désactive le modèle sur lequel une session s'exécute dans la console d'administration claude.ai.

2293 2449 

2294```text theme={null}2450```text theme={null}

2295Model "claude-opus-4-8" is restricted by your organization's settings. Using claude-sonnet-4-6 instead.2451Model "claude-opus-4-8" is restricted by your organization's settings. Using claude-sonnet-4-6 instead.

2296```2452```

2297 2453 

2454Taper `/model <name>` pour un modèle restreint est rejeté et la session garde son modèle actuel. Pour un modèle désactivé dans la console d'administration, le rejet se lit `Model '<name>' is restricted by your organization's settings. Run /model to choose a different model.` Pour un modèle que les paramètres gérés excluent, il se lit `Model '<name>' is not available. Your organization restricts model selection.`

2455 

2298Un avis préfixé avec un nom d'agent, de compétence ou de commande signifie que la restriction s'appliquait au [modèle demandé du sous-agent](/docs/fr/sub-agents#choose-a-model) : le sous-agent s'exécute sur le modèle substitué et le modèle de votre session est inchangé. Avant v2.1.223, Claude Code affichait l'avis uniquement pour les sous-agents lancés avec l'outil Agent.2456Un avis préfixé avec un nom d'agent, de compétence ou de commande signifie que la restriction s'appliquait au [modèle demandé du sous-agent](/docs/fr/sub-agents#choose-a-model) : le sous-agent s'exécute sur le modèle substitué et le modèle de votre session est inchangé. Avant v2.1.223, Claude Code affichait l'avis uniquement pour les sous-agents lancés avec l'outil Agent.

2299 2457 

2300Claude Code traite un alias de famille de modèles, l'un de `opus`, `sonnet`, `haiku` ou `fable`, comme une demande pour cette famille plutôt que pour sa version la plus récente. Sur l'API Anthropic et sur [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), un alias de famille restreint se résout à la version la plus récente de la famille que votre organisation et la liste d'autorisation `availableModels` permettent, et l'avis de substitution nomme cette version. Claude Code rejette `/model <alias>` uniquement quand chaque version de la famille est restreinte. Avant v2.1.205, un alias de famille était substitué ou rejeté en fonction de sa version la plus récente seule, même quand une version plus ancienne de la même famille était autorisée.2458Claude Code traite un alias de famille de modèles, l'un de `opus`, `sonnet`, `haiku` ou `fable`, comme une demande pour cette famille plutôt que pour sa version la plus récente. Sur l'API Anthropic et sur [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), un alias de famille restreint se résout à la version la plus récente de la famille que les paramètres de votre organisation permettent, et l'avis de substitution nomme cette version. Claude Code rejette `/model <alias>` uniquement quand chaque version de la famille est restreinte. Avant v2.1.205, un alias de famille était substitué ou rejeté en fonction de sa version la plus récente seule, même quand une version plus ancienne de la même famille était autorisée.

2301 2459 

2302**Que faire :**2460**Que faire :**

2303 2461 


2356 2514 

2357**Que faire :**2515**Que faire :**

2358 2516 

2359* Exécutez `claude update` et redémarrez Claude Code. Opus 4.7 nécessite v2.1.111 ou ultérieur. Opus 4.8 nécessite v2.1.154 ou ultérieur. Sonnet 5 nécessite v2.1.197 ou ultérieur. Opus 5 nécessite v2.1.219 ou ultérieur. Opus 5.5 nécessite v2.1.280 ou ultérieur2517* Exécutez `claude update` et redémarrez Claude Code. Opus 4.7 nécessite v2.1.111 ou ultérieur. Opus 4.8 nécessite v2.1.154 ou ultérieur. Sonnet 5 nécessite v2.1.197 ou ultérieur. Opus 5 nécessite v2.1.219 ou ultérieur. Opus 5.5 nécessite v2.1.280 ou ultérieur. Sonnet 5.5 nécessite v2.1.284 ou ultérieur

2360* Si vous ne pouvez pas mettre à jour, exécutez `/model` et sélectionnez Opus 4.6 ou Sonnet 4.6 à la place2518* Si vous ne pouvez pas mettre à jour, exécutez `/model` et sélectionnez Opus 4.6 ou Sonnet 4.6 à la place

2361* Si vous rencontrez cela dans l'[Agent SDK](/docs/fr/agent-sdk/overview), mettez à jour le package SDK à la place. Opus 4.8 nécessite TypeScript SDK v0.3.154 ou ultérieur et Python SDK v0.2.88 ou ultérieur. Sonnet 5 nécessite TypeScript SDK v0.3.197 ou ultérieur. Opus 5 nécessite TypeScript SDK v0.3.219 ou ultérieur. Opus 5.5 nécessite TypeScript SDK v0.3.280 ou ultérieur2519* Si vous rencontrez cela dans l'[Agent SDK](/docs/fr/agent-sdk/overview), mettez à jour le package SDK à la place. Opus 4.8 nécessite TypeScript SDK v0.3.154 ou ultérieur et Python SDK v0.2.88 ou ultérieur. Sonnet 5 nécessite TypeScript SDK v0.3.197 ou ultérieur. Opus 5 nécessite TypeScript SDK v0.3.219 ou ultérieur. Opus 5.5 nécessite TypeScript SDK v0.3.280 ou ultérieur. Sonnet 5.5 nécessite TypeScript SDK v0.3.284 ou ultérieur

2362 2520 

2363<h3 id="effort-isnt-available-with-thinking-turned-off">2521<h3 id="effort-isnt-available-with-thinking-turned-off">

2364 L'effort n'est pas disponible avec la réflexion désactivée2522 L'effort n'est pas disponible avec la réflexion désactivée


2370API Error: Effort 'xhigh' isn't available with thinking turned off on this model · run /effort high to continue, or turn thinking back on (unset MAX_THINKING_TOKENS=0)2528API Error: Effort 'xhigh' isn't available with thinking turned off on this model · run /effort high to continue, or turn thinking back on (unset MAX_THINKING_TOKENS=0)

2371```2529```

2372 2530 

2531L'indice après le `·` varie selon la session : dans une session non-interactive, il se lit `use --effort high (or the effortLevel setting)`, et dans une session que l'application Claude Desktop exécute, il se lit `you can lower effort to High`.

2532 

2373**Que faire :**2533**Que faire :**

2374 2534 

2375* [Abaissez le niveau d'effort](/docs/fr/model-config#set-the-effort-level) à `high` ou en dessous.2535* [Abaissez le niveau d'effort](/docs/fr/model-config#set-the-effort-level) à `high` ou en dessous.


2415* Si vous utilisez Opus 4.7 ou Opus 4.8, exécutez d'abord `claude update`. Les versions antérieures à v2.1.156 peuvent déclencher cette erreur lors de l'utilisation normale d'outils, et `/rewind` ne la supprime pas.2575* Si vous utilisez Opus 4.7 ou Opus 4.8, exécutez d'abord `claude update`. Les versions antérieures à v2.1.156 peuvent déclencher cette erreur lors de l'utilisation normale d'outils, et `/rewind` ne la supprime pas.

2416* Exécutez `/rewind`, ou appuyez deux fois sur Échap, pour revenir à un point de contrôle avant le tour corrompu et continuer à partir de là. Voir [Points de contrôle](/docs/fr/checkpointing) pour la façon dont les points de contrôle sont créés et restaurés.2576* Exécutez `/rewind`, ou appuyez deux fois sur Échap, pour revenir à un point de contrôle avant le tour corrompu et continuer à partir de là. Voir [Points de contrôle](/docs/fr/checkpointing) pour la façon dont les points de contrôle sont créés et restaurés.

2417 2577 

2578<h3 id="invalid-data-in-redacted-thinking-block">

2579 Données invalides dans le bloc redacted\_thinking

2580</h3>

2581 

2582L'API a refusé la requête avec un 400 parce qu'elle ne pouvait pas accepter un bloc `redacted_thinking` qu'un tour antérieur dans l'historique de conversation porte.

2583 

2584```text theme={null}

2585API Error: 400 ... Invalid `data` in `redacted_thinking` block

2586```

2587 

2588Claude Code laisse la réflexion antérieure de la conversation en dehors de la requête et réessaie une fois, donc la session continue sans afficher l'erreur. Avant v2.1.282, Claude Code gardait le bloc refusé, et chaque tour ultérieur échouait avec la même erreur.

2589 

2590**Que faire :**

2591 

2592* Si vous êtes sur v2.1.281 ou antérieur et chaque tour échoue avec cette erreur, exécutez `claude update` et reprenez la session

2593* Si l'erreur persiste, exécutez `/clear` pour démarrer une conversation qui ne porte pas le bloc

2594 

2418<h3 id="unsupported-tool-content-removed">2595<h3 id="unsupported-tool-content-removed">

2419 Contenu d'outil non supporté supprimé2596 Contenu d'outil non supporté supprimé

2420</h3>2597</h3>


2444 2621 

2445Claude Code envoie une partie de son texte de rappel et de pièce jointe comme des messages système à l'intérieur de la conversation. Quand l'API refuse la position d'un, Claude Code réessaie la requête une fois avec ce texte envoyé comme des messages utilisateur ordinaires à la place. Les libellés de placement frère de l'API, comme `use the top-level 'system' parameter for the initial system prompt`, obtiennent la même récupération.2622Claude Code envoie une partie de son texte de rappel et de pièce jointe comme des messages système à l'intérieur de la conversation. Quand l'API refuse la position d'un, Claude Code réessaie la requête une fois avec ce texte envoyé comme des messages utilisateur ordinaires à la place. Les libellés de placement frère de l'API, comme `use the top-level 'system' parameter for the initial system prompt`, obtiennent la même récupération.

2446 2623 

2447Quand l'erreur apparaît, le message système refusé n'est pas un que Claude Code peut supprimer. Cela signifie généralement qu'un proxy ou une [passerelle LLM](/docs/fr/llm-gateway-protocol) entre Claude Code et l'API a ajouté un message système de son propre ou réordonné la conversation.2624Quand l'erreur apparaît, le message système refusé n'est pas un que Claude Code peut supprimer. Cela signifie généralement qu'un proxy ou une [passerelle LLM](/docs/fr/llm-gateway) entre Claude Code et l'API a ajouté un message système de son propre ou réordonné la conversation.

2448 2625 

2449**Que faire :**2626**Que faire :**

2450 2627 


2460L'API a refusé la requête avec un 400 parce que l'historique de conversation contient du contenu de recherche web hébergé qu'elle ne peut pas déchiffrer. Le libellé nomme le champ qu'elle ne peut pas lire :2637L'API a refusé la requête avec un 400 parce que l'historique de conversation contient du contenu de recherche web hébergé qu'elle ne peut pas déchiffrer. Le libellé nomme le champ qu'elle ne peut pas lire :

2461 2638 

2462```text theme={null}2639```text theme={null}

2463API Error: 400 messages.21.content.0: Invalid `encrypted_content` in `search_result` block2640API Error: 400 ... Invalid `encrypted_content` in `search_result` block

2464API Error: 400 messages.21.content.3.citations.0: Invalid `encrypted_index` in `text` block2641API Error: 400 ... Invalid `encrypted_index` in `text` block

2465API Error: 400 Failed to decrypt web search result content2642API Error: 400 ... Failed to decrypt web search result content

2643API Error: 400 ... Invalid `encrypted_stdout` in `encrypted_code_execution_result` block

2466```2644```

2467 2645 

2468Les résultats de l'[outil de recherche web hébergé](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-search-tool) de l'API portent des champs chiffrés que seule l'API peut lire. L'API refuse une requête qui rejoue du contenu qu'elle ne peut pas déchiffrer, comme du contenu produit pour une organisation différente.2646Les résultats de l'[outil de recherche web hébergé](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-search-tool) de l'API portent des champs chiffrés que seule l'API peut lire. L'`encrypted_stdout` nomme la sortie d'un programme d'exécution de code hébergé qui a lu de tels résultats, que l'API chiffre aussi. L'API refuse une requête qui rejoue du contenu qu'elle ne peut pas déchiffrer, comme du contenu produit pour une organisation différente.

2469 2647 

2470L'[outil WebSearch](/docs/fr/tools-reference#websearch-tool-behavior) propre de Claude Code enregistre les résultats de recherche en texte brut, donc ces blocs atteignent généralement une conversation via un proxy ou une [passerelle LLM](/docs/fr/llm-gateway-protocol) qui a exécuté la recherche web hébergée elle-même.2648L'[outil WebSearch](/docs/fr/tools-reference#websearch-tool-behavior) propre de Claude Code enregistre les résultats de recherche en texte brut, donc ces blocs atteignent généralement une conversation via un proxy ou une [passerelle LLM](/docs/fr/llm-gateway) qui a exécuté la recherche web hébergée elle-même.

2471 2649 

2472Les blocs refusés restent dans l'historique de conversation, donc chaque tour ultérieur et `/compact` échouent de la même manière.2650Pour les trois libellés de recherche web, Claude Code laisse les appels de recherche, les résultats et les citations en dehors de ce qu'il envoie et réessaie la requête une fois, donc la session continue sans afficher l'erreur. Le libellé `encrypted_stdout` n'a pas une telle récupération, donc ce message vous atteint toujours. Avant v2.1.282, Claude Code gardait aussi les blocs de recherche web refusés, et chaque tour ultérieur et `/compact` échouaient de la même manière.

2473 2651 

2474**Que faire :**2652**Que faire :**

2475 2653 

2476* Exécutez `/clear` ou démarrez une nouvelle session ; la nouvelle conversation ne porte pas les blocs refusés2654* Si vous êtes sur v2.1.281 ou antérieur et chaque tour échoue avec l'un des libellés de recherche web, exécutez `claude update` et reprenez la session

2655* Si l'erreur persiste, ou le message nomme `encrypted_stdout`, exécutez `/rewind` pour revenir à un point de contrôle avant le tour qui a ajouté le contenu, ou exécutez `/clear` pour démarrer une conversation qui ne le porte pas

2477* Si vous exécutez Claude Code derrière un proxy ou une passerelle, signalez l'erreur à celui qui l'exploite2656* Si vous exécutez Claude Code derrière un proxy ou une passerelle, signalez l'erreur à celui qui l'exploite

2478 2657 

2479<h3 id="usage-policy-refusal">2658<h3 id="usage-policy-refusal">

2480 Refus de la politique d'utilisation2659 Refus de la politique d'utilisation

2481</h3>2660</h3>

2482 2661 

2483L'API a refusé de répondre parce que le contenu de la conversation a déclenché une vérification de la [Politique d'utilisation](https://www.anthropic.com/legal/aup). Le message inclut un ID de requête que vous pouvez citer au support si vous pensez que le refus est incorrect.2662L'API a refusé de répondre parce que le contenu de la conversation a déclenché une vérification de la [Politique d'utilisation](https://www.anthropic.com/legal/aup).

2663 

2664Le message inclut un ID de requête et un ID de message que vous pouvez citer au support si vous pensez que le refus est incorrect.

2484 2665 

2485```text theme={null}2666```text theme={null}

2486API Error: Opus 4.6 can't help with this. Start a new session to continue.2667API Error: Opus 4.6 can't help with this. Start a new session to continue.


2510API Error: Opus 4.8's safeguards flagged this message. Our intentionally broad safeguards allow us to deliver more capabilities faster, but can sometimes flag legitimate cybersecurity work. Apply to the Cyber Verification Program to reduce these interruptions. Send feedback with /feedback or learn more: https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude2691API Error: Opus 4.8's safeguards flagged this message. Our intentionally broad safeguards allow us to deliver more capabilities faster, but can sometimes flag legitimate cybersecurity work. Apply to the Cyber Verification Program to reduce these interruptions. Send feedback with /feedback or learn more: https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude

2511```2692```

2512 2693 

2513Le message se lie au [Programme de vérification de cybersécurité](https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude), qui accorde l'accès pour le travail de cybersécurité légitime. Sur Opus 5.5, qui nécessite v2.1.280 ou ultérieur, le message s'ouvre avec `Opus 5.5's safeguards flagged this session` à la place. Quand la catégorie signalée a un modèle de secours disponible, Claude Code [bascule les modèles](/docs/fr/model-config#automatic-model-fallback) plutôt que d'afficher cette erreur.2694Le message se lie au [Programme de vérification de cybersécurité](https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude), qui accorde l'accès pour le travail de cybersécurité légitime. Sur Opus 5.5 et Sonnet 5.5, le message s'ouvre avec `<model>'s safeguards flagged this session` à la place. Quand la catégorie signalée a un modèle de secours disponible, Claude Code [bascule les modèles](/docs/fr/model-config#automatic-model-fallback) plutôt que d'afficher cette erreur.

2514 2695 

2515Sur [Amazon Bedrock](/docs/fr/amazon-bedrock), [la plateforme d'agent de Google Cloud](/docs/fr/google-vertex-ai) et [Microsoft Foundry](/docs/fr/microsoft-foundry), un drapeau de cybersécurité produit le message de [refus de la politique d'utilisation](#usage-policy-refusal) à la place.2696Sur [Amazon Bedrock](/docs/fr/amazon-bedrock), [la plateforme d'agent de Google Cloud](/docs/fr/google-vertex-ai) et [Microsoft Foundry](/docs/fr/microsoft-foundry), un drapeau de cybersécurité produit le message de [refus de la politique d'utilisation](#usage-policy-refusal) à la place.

2516 2697 


2596 Configuration --agents invalide2777 Configuration --agents invalide

2597</h3>2778</h3>

2598 2779 

2599La valeur que vous avez transmise à `--agents` est invalide, donc `claude` se termine avec le code 1 au lieu de démarrer la session. Lorsque vous transmettez `--safe-mode`, `--resume`, ou `--continue`, ou définissez [`CLAUDE_CODE_SAFE_MODE`](/docs/fr/env-vars#variables), Claude Code ne vérifie pas la valeur et démarre la session. Avant la v2.1.242, Claude Code démarrait la session de toute façon et omettait les définitions qu'il ne pouvait pas charger.2780La valeur que vous avez transmise à `--agents` est invalide, donc `claude` se termine avec le code 1 au lieu de démarrer la session. Lorsque vous transmettez `--safe-mode` ou définissez [`CLAUDE_CODE_SAFE_MODE`](/docs/fr/env-vars#variables), Claude Code ignore `--agents` entièrement. Avec `--resume` ou `--continue`, une valeur JSON en ligne n'est pas vérifiée et la session démarre ; une valeur lue à partir d'un fichier est vérifiée à chaque lancement. Avant la v2.1.242, Claude Code démarrait la session de toute façon et omettait les définitions qu'il ne pouvait pas charger.

2600 2781 

2601```text theme={null}2782```text theme={null}

2602Error: Invalid --agents configuration:2783Error: Invalid --agents configuration:


2605 2786 

2606Ce qui suit la première ligne dépend de la façon dont la valeur a échoué. Claude Code exécute ces vérifications dans l'ordre et s'arrête à la première qui échoue. Si votre valeur a deux types de problème, vous ne voyez le second qu'après avoir corrigé le premier :2787Ce qui suit la première ligne dépend de la façon dont la valeur a échoué. Claude Code exécute ces vérifications dans l'ordre et s'arrête à la première qui échoue. Si votre valeur a deux types de problème, vous ne voyez le second qu'après avoir corrigé le premier :

2607 2788 

26081. Lorsque la valeur ne s'analyse pas en JSON, Claude Code imprime une ligne `invalid JSON:` portant le message du parseur JSON lui-même27891. Lorsque la valeur commence par `{` mais ne s'analyse pas en JSON, ou le contenu d'un fichier `--agents` ne s'analyse pas, Claude Code imprime une ligne `invalid JSON:` portant le message du parseur JSON lui-même

26092. Lorsqu'elle s'analyse mais qu'une définition d'agent ne correspond pas au schéma pour les [sous-agents définis par CLI](/docs/fr/sub-agents#choose-the-subagent-scope), Claude Code imprime une ligne par problème27902. Lorsqu'elle s'analyse mais qu'une définition d'agent ne correspond pas au schéma pour les [sous-agents définis par CLI](/docs/fr/sub-agents#choose-the-subagent-scope), Claude Code imprime une ligne par problème

26103. Lorsqu'un nom d'agent commence par `-`, Claude Code imprime `<name>: agent names must not start with '-'`27913. Lorsqu'un nom d'agent commence par `-`, Claude Code imprime `<name>: agent names must not start with '-'`

2611 2792 

2612Lorsqu'il y a plus de 20 lignes de problème, Claude Code imprime les 20 premières et remplace le reste par `…and N more`.2793Lorsqu'il y a plus de 20 lignes de problème, Claude Code imprime les 20 premières et remplace le reste par `…and N more`.

2613 2794 

2795Avec `--print`, `--agents` accepte également [le chemin vers un fichier JSON](/docs/fr/sub-agents#choose-the-subagent-scope) à la place de l'objet en ligne. Avant la v2.1.281, `--agents` acceptait uniquement du JSON en ligne et traitait un chemin de fichier comme du JSON invalide. La forme de fichier a ses propres refus, imprimés à la place de ce message, y compris ceux-ci :

2796 

2797* **`Error: --agents takes a JSON object, or a file path only with --print (-p)`** : Claude Code a lu la valeur comme un chemin de fichier dans une session interactive. Transmettez les définitions en tant que JSON en ligne, ou ajoutez `-p` pour les lire à partir d'un fichier.

2798* **`Error: --agents file not found: <path>`** : aucun fichier n'existe à ce chemin. Une valeur qui ne commence pas par `{` et n'est pas du JSON valide est lue comme un chemin, donc du JSON en ligne que votre shell a endommagé peut échouer de cette manière aussi. Vérifiez le chemin ou les guillemets et exécutez la commande à nouveau.

2799 

2614**Que faire :**2800**Que faire :**

2615 2801 

2616* Corrigez chaque problème que le message énumère, puis exécutez la commande à nouveau. Voir [les champs qu'un sous-agent défini par CLI prend](/docs/fr/sub-agents#choose-the-subagent-scope).2802* Corrigez chaque problème que le message énumère, puis exécutez la commande à nouveau. Voir [les champs qu'un sous-agent défini par CLI prend](/docs/fr/sub-agents#choose-the-subagent-scope).


2758 Espace de travail non approuvé au démarrage du contrôle à distance2944 Espace de travail non approuvé au démarrage du contrôle à distance

2759</h3>2945</h3>

2760 2946 

2761Vous avez démarré le mode serveur [Contrôle à distance](/docs/fr/remote-control) avec `claude remote-control` ou son alias `claude rc` dans un répertoire que vous n'avez pas approuvé. La commande n'affiche pas elle-même la boîte de dialogue d'approbation de l'espace de travail, elle se termine donc avec le code 1 et nomme la correction :2947Vous avez démarré le mode serveur [Contrôle à distance](/docs/fr/remote-control) avec `claude remote-control` ou son alias `claude rc` dans un répertoire que vous n'avez pas approuvé, et la commande n'a pas pu vous demander si vous faites confiance à celui-ci. Ce message apparaît lorsque l'entrée standard ou la sortie standard de la commande n'est pas un terminal, par exemple parce que l'une d'elles est redirigée ou canalisée. La commande se termine avec le code 1 :

2762 2948 

2763```text theme={null}2949```text theme={null}

2764Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.2950Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.

2765```2951```

2766 2952 

2953Deux variantes qui commencent également par `Error: Workspace not trusted.` apparaissent également dans un terminal trop petit pour afficher ce que faire confiance au répertoire active, ou un qui n'a pas signalé sa taille. Agrandissez la fenêtre ou passez à une fenêtre de terminal normale, puis exécutez `claude rc` à nouveau.

2954 

2767Dans votre répertoire personnel, le message est différent, car la boîte de dialogue d'approbation de l'espace de travail ne sauvegarde jamais l'approbation pour le répertoire personnel, donc l'accepter là-bas ne peut pas satisfaire cette vérification. Avant la v2.1.214, le répertoire personnel affichait le message ci-dessus, dont les conseils ne peuvent pas réussir là-bas.2955Dans votre répertoire personnel, le message est différent, car la boîte de dialogue d'approbation de l'espace de travail ne sauvegarde jamais l'approbation pour le répertoire personnel, donc l'accepter là-bas ne peut pas satisfaire cette vérification. Avant la v2.1.214, le répertoire personnel affichait le message ci-dessus, dont les conseils ne peuvent pas réussir là-bas.

2768 2956 

2769```text theme={null}2957```text theme={null}

2770Error: Workspace not trusted. /Users/you is your home directory, and for security home-directory trust is never saved, so running `claude` here first won't help. Run `claude rc` from a project directory instead (run `claude` there once to accept the trust dialog).2958Error: Workspace not trusted. /Users/you is your home directory, and for security home-directory trust is never saved, so running `claude` here first won't help. Run `claude rc` from a project directory instead (run `claude` there once to accept the trust dialog).

2771```2959```

2772 2960 

2961Si vous répondez `n` ou appuyez sur Entrée à la question [`Trust <directory>?`](/docs/fr/remote-control#requirements), la commande imprime un message `Remote Control did not start` qui nomme le répertoire et se termine avec le code 1. Exécutez `claude rc` à nouveau pour répondre `y`.

2962 

2773**Que faire :**2963**Que faire :**

2774 2964 

2775* Exécutez `claude` dans le répertoire, acceptez la [boîte de dialogue d'approbation de l'espace de travail](/docs/fr/permissions#project-allow-rules-and-workspace-trust), puis exécutez `claude remote-control` à nouveau2965* Approuvez le répertoire à partir d'un terminal d'abord : exécutez `claude rc` là-bas et répondez `y`, ou exécutez `claude` là-bas et acceptez la [boîte de dialogue d'approbation de l'espace de travail](/docs/fr/permissions#project-allow-rules-and-workspace-trust), puis exécutez votre commande d'origine à nouveau

2776* Dans votre répertoire personnel, changez vers un répertoire de projet et démarrez le contrôle à distance là-bas2966* Dans votre répertoire personnel, changez vers un répertoire de projet et démarrez le contrôle à distance là-bas

2777 2967 

2968Avant la v2.1.284, la commande ne demandait jamais, même dans un terminal.

2969 

2778<h3 id="not-carried-over-to-the-sessions-remote-control-starts">2970<h3 id="not-carried-over-to-the-sessions-remote-control-starts">

2779 Non reporté aux sessions que le contrôle à distance démarre2971 Non reporté aux sessions que le contrôle à distance démarre

2780</h3>2972</h3>


3271* Pour une session interactive, ouvrez le [sélecteur de session](/docs/fr/sessions#use-the-session-picker) avec `claude --resume` et appuyez sur `Ctrl+A` pour l'élargir à chaque projet sur cette machine, puis sélectionnez la session3463* Pour une session interactive, ouvrez le [sélecteur de session](/docs/fr/sessions#use-the-session-picker) avec `claude --resume` et appuyez sur `Ctrl+A` pour l'élargir à chaque projet sur cette machine, puis sélectionnez la session

3272* Les sessions créées avec `claude -p` ou le [Agent SDK](/docs/fr/agent-sdk/overview) n'apparaissent pas dans le sélecteur, donc revérifiez l'ID par rapport au `session_id` que votre exécution d'origine a imprimé3464* Les sessions créées avec `claude -p` ou le [Agent SDK](/docs/fr/agent-sdk/overview) n'apparaissent pas dans le sélecteur, donc revérifiez l'ID par rapport au `session_id` que votre exécution d'origine a imprimé

3273 3465 

3466<h3 id="windows-reported-an-error-ebadf">

3467 Windows a signalé une erreur (EBADF) lorsque Claude Code a lu le fichier de transcription de cette session

3468</h3>

3469 

3470Vous avez repris une session sur Windows, son fichier de [transcription](/docs/fr/sessions#where-transcripts-are-stored) enregistré s'est ouvert normalement, et la lecture a échoué avec l'erreur système EBADF. L'erreur système ne dit pas pourquoi la lecture a échoué, donc le message suggère les causes probables et ce qu'il faut essayer :

3471 

3472```text theme={null}

3473Windows reported an error (EBADF) when Claude Code read this session's transcript file, although the file had opened normally. This can happen when other software intercepts file reads — security, encryption or endpoint-management tools, for example. If it keeps happening for this conversation, try excluding the folder that holds Claude Code's session transcripts from such software (the .claude folder in your user profile, unless the app or CLAUDE_CONFIG_DIR points Claude Code elsewhere), or adding Claude Code to its allowed applications, then resume again.

3474```

3475 

3476Le message suit la ligne d'échec propre de la commande, telle que `Failed to resume session <session-id>`. Une commande `claude --resume` ou [`claude -p`](/docs/fr/headless) se termine avec le code 1 après l'affichage. Après `/resume` à l'intérieur d'une session, votre session actuelle continue de s'exécuter.

3477 

3478**Que faire :**

3479 

3480* Excluez le dossier qui contient vos transcriptions de session des logiciels qui analysent ou interceptent les lectures de fichiers, tels que les outils de sécurité, de chiffrement ou de gestion des points de terminaison. Les transcriptions vivent sous `%USERPROFILE%\.claude\projects` par défaut, ou sous le répertoire que [`CLAUDE_CONFIG_DIR`](/docs/fr/env-vars) nomme

3481* Si vous ne pouvez pas ajouter une exclusion, ajoutez Claude Code aux applications autorisées de ce logiciel à la place

3482* Reprenez la session à nouveau

3483 

3484Avant la v2.1.282, l'échec n'avait aucune explication : `claude --resume <session-id>` s'est terminé à `Failed to resume session <session-id>`, et une exécution `-p` a imprimé uniquement le texte d'erreur système, tel que `Failed to resume session: EBADF: bad file descriptor, read`.

3485 

3274<h3 id="cannot-switch-renderers-in-this-session">3486<h3 id="cannot-switch-renderers-in-this-session">

3275 Impossible de changer de renderers dans cette session3487 Impossible de changer de renderers dans cette session

3276</h3>3488</h3>


3454* Renommez la marketplace en un nom qui n'orthographie pas un nom réservé et ajoutez-la à nouveau3666* Renommez la marketplace en un nom qui n'orthographie pas un nom réservé et ajoutez-la à nouveau

3455* Pour l'avertissement d'entrée ignorée, exécutez la commande `claude plugin marketplace remove` qu'il donne, ou supprimez l'entrée de `~/.claude/plugins/known_marketplaces.json`3667* Pour l'avertissement d'entrée ignorée, exécutez la commande `claude plugin marketplace remove` qu'il donne, ou supprimez l'entrée de `~/.claude/plugins/known_marketplaces.json`

3456 3668 

3669<h3 id="claude-code-refuses-the-marketplace-name">

3670 Claude Code refuses the marketplace name

3671</h3>

3672 

3673Le nom d'une marketplace enregistrée [usurpe l'identité d'une marketplace officielle d'Anthropic](/docs/fr/plugins/marketplace-reference#reserved-names) selon les règles que cette section énumère.

3674 

3675Si une marketplace a été enregistrée sous un tel nom avant que la vérification ne la bloque, la marketplace et les plugins installés à partir de celle-ci cessent de se charger, car Claude Code vérifie le nom chaque fois qu'il lit le catalogue de la marketplace. Quand le nom imite un nom officiel, `claude plugin list` et l'onglet **Errors** de `/plugin` rapportent chaque plugin affecté avec un message qui commence :

3676 

3677```text theme={null}

3678Claude Code refuses the marketplace name "anthropic-plugins-v2"

3679```

3680 

3681Pour un nom qui imite, l'erreur de la marketplace elle-même se lit `Claude Code refuses this marketplace's name: it looks like one of Anthropic's own` à la place. `claude plugin marketplace add` refuse tout nom qui usurpe l'identité avec `Marketplace name impersonates an official Anthropic/Claude marketplace`.

3682 

3683Avant v2.1.282, `claude plugin list` et `/plugin` rapportaient les plugins d'un nom qui imite comme échoués à charger aussi, sans nommer le nom de la marketplace comme la cause.

3684 

3685**Que faire :**

3686 

3687* Exécutez `claude plugin marketplace remove <name>`. Cela désinstalle aussi les plugins installés à partir de la marketplace et supprime leurs données sauvegardées

3688* Pour conserver la marketplace à la place, attendez que son responsable la renomme, puis exécutez `claude plugin marketplace update <name>`

3689* Si vous publiez la marketplace, renommez-la dans votre `marketplace.json` ; les utilisateurs mettent alors à jour la marketplace au lieu de la supprimer

3690 

3457<h3 id="marketplace-is-already-added-from-a-different-source">3691<h3 id="marketplace-is-already-added-from-a-different-source">

3458 Marketplace is already added from a different source3692 Marketplace is already added from a different source

3459</h3>3693</h3>


3656 3890 

3657* Demandez à un administrateur de votre organisation claude.ai de modifier le statut requis du plugin sur claude.ai3891* Demandez à un administrateur de votre organisation claude.ai de modifier le statut requis du plugin sur claude.ai

3658 3892 

3893<h3 id="plugin-was-not-uninstalled">

3894 Plugin was not uninstalled

3895</h3>

3896 

3897Vous avez exécuté [`claude plugin uninstall`](/docs/fr/plugins/cli-reference#plugin-uninstall), ou choisi **Uninstall** dans l'onglet **Installed** de `/plugin`, et la désinstallation s'est arrêtée avec un message commençant par `"<plugin>" was not uninstalled:`.

3898 

3899Quand Claude Code a supprimé l'entrée du plugin de `enabledPlugins` et a relancé les fichiers de paramètres de cette portée, soit le plugin était toujours activé là, soit un fichier qui pourrait l'activer ne pouvait pas être lu ou vérifié. Supprimer les options sauvegardées du plugin, les secrets et les données tandis qu'une entrée de paramètres pourrait le réactiver les perdrait, donc la désinstallation s'arrête à la place : le plugin reste installé et rien qu'il a sauvegardé n'est supprimé.

3900 

3901```text theme={null}

3902✘ Failed to uninstall plugin "formatter": "formatter" was not uninstalled: it is still switched on in /home/user/project/.claude/settings.local.json, although the settings change reported no error. It is still installed. Take it out of "enabledPlugins" in that file yourself, then uninstall it again.

3903```

3904 

3905Le milieu du message nomme le fichier et la cause :

3906 

3907* `it is still switched on in <file>, although the settings change reported no error` : l'écriture des paramètres a rapporté le succès mais l'entrée est toujours là quand le fichier est relancé

3908* `it is still switched on in <file>, and the settings change failed (<error>)` : le fichier ne pouvait pas être sauvegardé, pour la raison entre parenthèses

3909* `<file> is there and could not be read` : le fichier existe mais ne pouvait pas être lu comme paramètres, par exemple parce qu'il n'est pas un JSON valide, donc il peut toujours activer le plugin

3910* `<file> (not read: it is on a network path or is a link to one, or could not be checked)` : Claude Code n'a pas lu le fichier de paramètres du projet ou local parce que le fichier, ou le dossier `.claude` qui le contient, est un lien qui mène à un emplacement réseau, ou parce qu'il ne pouvait pas examiner ce chemin

3911 

3912`claude plugin uninstall` quitte avec le code 1, et avec `--json` le résultat porte `failureCode: "settings_still_on"`. `/plugin` affiche le même message.

3913 

3914**Que faire :**

3915 

3916* Suivez la dernière phrase du message : réparez ou remplacez le fichier de paramètres qu'il nomme, ou supprimez l'entrée du plugin de `enabledPlugins` dans ce fichier vous-même, puis exécutez la désinstallation à nouveau

3917 

3659<h2 id="tool-errors">3918<h2 id="tool-errors">

3660 Erreurs d'outils3919 Erreurs d'outils

3661</h2>3920</h2>


3705* Si Claude doit pouvoir modifier le fichier, supprimez ou réduisez la règle de refus `Read` dans `/permissions` ou dans [les paramètres](/docs/fr/settings-reference#permission-settings)3964* Si Claude doit pouvoir modifier le fichier, supprimez ou réduisez la règle de refus `Read` dans `/permissions` ou dans [les paramètres](/docs/fr/settings-reference#permission-settings)

3706* Si le fichier doit rester inchangé, conservez la règle et ajoutez une règle de refus `Edit` pour le même chemin pour bloquer également l'outil NotebookEdit3965* Si le fichier doit rester inchangé, conservez la règle et ajoutez une règle de refus `Edit` pour le même chemin pour bloquer également l'outil NotebookEdit

3707 3966 

3967<h3 id="path-cannot-contain-null-bytes">

3968 Path cannot contain null bytes

3969</h3>

3970 

3971Un appel d'outil de fichier avait un argument de chemin ou de motif contenant un octet nul, que les systèmes de fichiers et les outils de recherche ne peuvent pas accepter. Read, Write, Edit, NotebookEdit, Glob, et Grep vérifient cela, et le message nomme l'outil et l'argument :

3972 

3973```text theme={null}

3974Read file_path cannot contain null bytes (\0). Remove the null byte and try again.

3975```

3976 

3977L'appel d'outil échoue, Claude voit l'erreur, et le tour continue.

3978 

3979**Que faire :**

3980 

3981* Rien de votre côté : l'erreur est retournée à Claude comme le résultat de l'outil, et le message lui-même indique à Claude de supprimer l'octet nul et de réessayer

3982 

3983Avant la v2.1.281, un octet nul dans un chemin Read, Write, Edit, ou NotebookEdit terminait tout le tour avec une erreur nommant `Path contains null bytes`, et l'outil ne s'exécutait jamais.

3984 

3708<h3 id="subagent-type-is-required">3985<h3 id="subagent-type-is-required">

3709 subagent\_type is required3986 subagent\_type is required

3710</h3>3987</h3>


3885 4162 

3886* `its symlink resolution changed after permission was checked` : un lien symbolique le long du chemin, ou à une racine de recherche Grep ou Glob, a été remplacé entre la vérification de permission et l'opération. Dans un refus de lecture, la phrase entre parenthèses nomme quelle comparaison a échoué.4163* `its symlink resolution changed after permission was checked` : un lien symbolique le long du chemin, ou à une racine de recherche Grep ou Glob, a été remplacé entre la vérification de permission et l'opération. Dans un refus de lecture, la phrase entre parenthèses nomme quelle comparaison a échoué.

3887* `its parent-directory symlink resolution changed after permission was checked` : un répertoire par lequel le chemin d'écriture passe ne se résout plus à l'emplacement approuvé4164* `its parent-directory symlink resolution changed after permission was checked` : un répertoire par lequel le chemin d'écriture passe ne se résout plus à l'emplacement approuvé

4165* `where it leads on disk could not be determined (a link on the way could not be examined, or the links do not resolve)` : Claude Code n'a pas pu suivre le chemin à un emplacement final sur le disque, par exemple parce que les liens symboliques sur celui-ci forment une boucle

3888* `it is a symbolic link. Write to the link's target path instead` : un lien symbolique se trouve à l'emplacement d'écriture approuvé lui-même, par exemple un `CLAUDE.md` qui est un lien symbolique vers `AGENTS.md` ; le message dirige Claude vers la cible du lien4166* `it is a symbolic link. Write to the link's target path instead` : un lien symbolique se trouve à l'emplacement d'écriture approuvé lui-même, par exemple un `CLAUDE.md` qui est un lien symbolique vers `AGENTS.md` ; le message dirige Claude vers la cible du lien

3889* `Refusing to write through symlink: <path>. Resolve the symlink and pass the real target path explicitly.` : la même condition attrapée quand un autre écrivain ouvre le fichier, comme une écriture vers un `.mcp.json` symlinké4167* `Refusing to write through symlink: <path>. Resolve the symlink and pass the real target path explicitly.` : la même condition attrapée quand un autre écrivain ouvre le fichier, comme une écriture vers un `.mcp.json` symlinké

3890* `Refusing to write into symlinked directory: <path>` : le répertoire qui contient le fichier est lui-même un lien symbolique, par exemple le répertoire `.claude/` d'un projet lié à un autre emplacement4168* `Refusing to write into symlinked directory: <path>` : le répertoire qui contient le fichier est lui-même un lien symbolique, par exemple le répertoire `.claude/` d'un projet lié à un autre emplacement


3903 4181 

3904Avant la v2.1.251, Claude Code ne revérifiait la résolution d'un chemin que pour les écritures de fichiers, donc un lien remplacé après la vérification de permission pouvait rediriger une lecture ou une recherche vers un emplacement différent sans message. Parmi ceux-ci, seuls les refus d'écriture du répertoire parent, à travers le lien symbolique, et du répertoire symlinké apparaissent sur les versions antérieures.4182Avant la v2.1.251, Claude Code ne revérifiait la résolution d'un chemin que pour les écritures de fichiers, donc un lien remplacé après la vérification de permission pouvait rediriger une lecture ou une recherche vers un emplacement différent sans message. Parmi ceux-ci, seuls les refus d'écriture du répertoire parent, à travers le lien symbolique, et du répertoire symlinké apparaissent sur les versions antérieures.

3905 4183 

4184Avant la v2.1.280, le refus `where it leads on disk could not be determined` n'apparaissait pas.

4185 

3906<h3 id="task-output-swap-refused">4186<h3 id="task-output-swap-refused">

3907 Task output swap refused4187 Task output swap refused

3908</h3>4188</h3>


3928* Ou vérifiez le répertoire de votre projet sous le répertoire temporaire de Claude Code, `/private/tmp/claude-501/-Users-you-my-project` dans le message d'exemple. Si ce chemin est un lien symbolique, ou un répertoire qui ne devrait pas être là, supprimez le lien ou le répertoire lui-même plutôt que la cible du lien, et redémarrez Claude Code4208* Ou vérifiez le répertoire de votre projet sous le répertoire temporaire de Claude Code, `/private/tmp/claude-501/-Users-you-my-project` dans le message d'exemple. Si ce chemin est un lien symbolique, ou un répertoire qui ne devrait pas être là, supprimez le lien ou le répertoire lui-même plutôt que la cible du lien, et redémarrez Claude Code

3929* Si le refus se répète, un processus remplace, lie, ou supprime des entrées sous le répertoire temporaire de Claude Code pendant que la session s'exécute. Définissez [`CLAUDE_CODE_TMPDIR`](/docs/fr/env-vars) sur un répertoire que rien d'autre ne gère et redémarrez4209* Si le refus se répète, un processus remplace, lie, ou supprime des entrées sous le répertoire temporaire de Claude Code pendant que la session s'exécute. Définissez [`CLAUDE_CODE_TMPDIR`](/docs/fr/env-vars) sur un répertoire que rien d'autre ne gère et redémarrez

3930 4210 

4211<h3 id="disk-quota-or-temp-filesystem-is-full">

4212 Disk quota or temp filesystem is full

4213</h3>

4214 

4215Claude Code enregistre la sortie de chaque commande Bash et PowerShell dans un fichier sous son répertoire temporaire. Quand une commande se termine avec un code non nul et aucune sortie du tout, Claude Code vérifie si le système de fichiers contenant ce fichier est à court d'espace ou d'inodes, ou si votre quota disque sur celui-ci est utilisé. Si c'est le cas, un diagnostic apparaît dans le résultat de la commande à la place de la sortie vide :

4216 

4217```text wrap theme={null}

4218Your disk quota is full on the filesystem with Claude Code's temp directory /private/tmp/claude-501/-Users-you-my-project/1f0e62dc-4b0a-4f5e-9c2d-8a7b6c5d4e3f/tasks (EDQUOT), so any output this command printed was lost, and it may have failed because it could not write. Delete files you no longer need there, or restart Claude Code with CLAUDE_CODE_TMPDIR set to a directory on another filesystem.

4219```

4220 

4221Le message nomme ce qui a manqué :

4222 

4223* `Your disk quota is full ... (EDQUOT)` : votre propre quota sur ce système de fichiers est utilisé. Un quota peut être plein alors que le système de fichiers affiche toujours de l'espace libre

4224* `The filesystem with Claude Code's temp directory ..., or your disk quota on it, is full (ENOSPC)` : le système de fichiers, ou votre quota sur celui-ci, n'a pas d'espace libre

4225* `Command output was lost: the temp filesystem at ... is full` ou `... is out of inodes` : le système de fichiers a presque pas d'espace libre, ou manque d'inodes

4226 

4227**Que faire :**

4228 

4229* Supprimez les fichiers que vous n'avez plus besoin sur le système de fichiers qui contient le répertoire temporaire de Claude Code. Pour `EDQUOT`, supprimez les fichiers qui comptent pour votre propre quota. Pour `out of inodes`, supprimez de nombreux fichiers plutôt que quelques gros, puisque chaque fichier prend un inode quelle que soit sa taille

4230* Ou redémarrez Claude Code avec [`CLAUDE_CODE_TMPDIR`](/docs/fr/env-vars) défini sur un répertoire sur un système de fichiers avec de la place

4231* Puis demandez à Claude d'exécuter la commande à nouveau. La sortie qu'elle a imprimée a été perdue, pas tronquée

4232 

3931<h3 id="the-source-file-is-not-valid-utf-8-text">4233<h3 id="the-source-file-is-not-valid-utf-8-text">

3932 The source file is not valid UTF-8 text4234 The source file is not valid UTF-8 text

3933</h3>4235</h3>


4294 EACCES au démarrage d'une session en arrière-plan4596 EACCES au démarrage d'une session en arrière-plan

4295</h3>4597</h3>

4296 4598 

4297Claude Code n'a pas pu exécuter son propre binaire pour démarrer le [service en arrière-plan](/docs/fr/agent-view#the-supervisor-process) qui héberge les sessions en arrière-plan. Sur une installation npm, cela signifie généralement que `npm install -g @anthropic-ai/claude-code` remplaçait le binaire à ce moment-là, que vous l'ayez exécuté ou que le [mise à jour automatique](/docs/fr/setup#auto-updates) l'ait fait. L'erreur apparaît lorsque vous ouvrez une session à partir de la [vue agent](/docs/fr/agent-view) :4599Claude Code n'a pas pu exécuter son propre binaire pour démarrer le [service en arrière-plan](/docs/fr/agent-view#the-supervisor-process) qui héberge les sessions en arrière-plan. Sur une installation npm, cela signifie généralement que `npm install -g @anthropic-ai/claude-code` remplaçait le binaire à ce moment-là, que vous l'ayez exécuté ou que la [mise à jour automatique](/docs/fr/setup#auto-updates) l'ait fait. L'erreur apparaît lorsque vous ouvrez une session à partir de la [vue agent](/docs/fr/agent-view) :

4298 4600 

4299```text theme={null}4601```text theme={null}

4300Couldn't start the background service — spawn background service: EACCES: permission denied, posix_spawn '/usr/local/lib/node_modules/@anthropic-ai/claude-code/bin/claude'4602Couldn't start the background service — spawn background service: EACCES: permission denied, posix_spawn '/usr/local/lib/node_modules/@anthropic-ai/claude-code/bin/claude'


4343 Le répertoire de travail n'existe plus au démarrage d'une session en arrière-plan4645 Le répertoire de travail n'existe plus au démarrage d'une session en arrière-plan

4344</h3>4646</h3>

4345 4647 

4346Vous avez essayé de démarrer une [session en arrière-plan](/docs/fr/agent-view) dans un répertoire qui n'existe plus. Cela se produit lorsque vous envoyez à partir de la vue agent ou exécutez `/background` après que le répertoire dans lequel vous travailliez ait été supprimé ou déplacé. Cela se produit également lorsque vous vous attachez à ou redémarrez une session dont le processus a quitté et dont le répertoire est parti, car le nouveau processus démarrerait dans ce même répertoire. Claude Code ne démarre pas la session, et le message nomme le répertoire manquant :4648Vous avez essayé de démarrer une [session en arrière-plan](/docs/fr/agent-view) dans un répertoire qui n'existe plus. Claude Code ne démarre pas la session, et le message nomme le répertoire manquant :

4347 4649 

4348```text theme={null}4650```text theme={null}

4349Couldn't start a background session (working directory no longer exists or is not accessible: /tmp/demo)4651Couldn't start a background session (working directory no longer exists or is not accessible: /tmp/demo)


4355 4657 

4356* Recréez le répertoire que le message nomme, ou envoyez à partir d'un répertoire qui existe, puis réessayez4658* Recréez le répertoire que le message nomme, ou envoyez à partir d'un répertoire qui existe, puis réessayez

4357 4659 

4660<h3 id="workspace-not-trusted-when-dispatching-a-background-session">

4661 La confiance de l'espace de travail n'est pas accordée lors de l'envoi d'une session en arrière-plan

4662</h3>

4663 

4664Vous avez démarré ou redémarré une [session en arrière-plan](/docs/fr/agent-view) dans un répertoire que vous n'avez pas [approuvé](/docs/fr/permissions#project-allow-rules-and-workspace-trust), et le dialogue de confiance de l'espace de travail n'a pas pu apparaître pour vous le demander. Claude Code ne démarre pas la session :

4665 

4666```text theme={null}

4667Workspace not trusted. Run `claude` in /path/to/project once and accept the trust prompt, then retry.

4668```

4669 

4670À partir d'un terminal dans le répertoire de la session lui-même, la même commande affiche le dialogue de confiance à la place et démarre la session une fois que vous acceptez. Ce message apparaît où aucun dialogue ne peut, tel que dans un script, ou lorsque vous redémarrez une session à partir d'un répertoire autre que le sien.

4671 

4672Deux variantes nomment une cause différente :

4673 

4674* **`The home directory is trusted one session at a time`** : le répertoire de la session est votre répertoire personnel. Claude Code ne sauvegarde jamais la confiance pour le répertoire personnel, de sorte que l'acceptation du dialogue là-bas dans une session antérieure ne compte pas.

4675* **`<path> could not be resolved on disk`** : Claude Code n'a pas pu trouver le répertoire de la session sur le disque.

4676 

4677**Ce qu'il faut faire :**

4678 

4679* Exécutez `claude` dans le répertoire que le message nomme et acceptez le dialogue de confiance, puis exécutez la commande à nouveau

4680* Pour le message du répertoire personnel, exécutez la commande à partir d'un terminal dans votre répertoire personnel de sorte que le dialogue puisse apparaître, ou démarrez la session à partir d'un répertoire de projet à la place

4681* Pour le message `could not be resolved on disk`, recréez le répertoire, ou démarrez une nouvelle session à partir d'un répertoire qui existe

4682 

4358<h2 id="wrapper-and-ide-errors">4683<h2 id="wrapper-and-ide-errors">

4359 Erreurs du wrapper et de l'IDE4684 Erreurs du wrapper et de l'IDE

4360</h2>4685</h2>


4587* Raccourcissez le frontmatter `description` de vos fichiers d'agent, ou demandez à Claude de les raccourcir pour vous.4912* Raccourcissez le frontmatter `description` de vos fichiers d'agent, ou demandez à Claude de les raccourcir pour vous.

4588* Supprimez les fichiers d'agent que vous n'utilisez plus.4913* Supprimez les fichiers d'agent que vous n'utilisez plus.

4589 4914 

4915<h3 id="a-skill-command-or-workflow-wasnt-loaded-because-its-name-is-reserved">

4916 Une compétence, une commande ou un flux de travail n'a pas été chargé parce que son nom est réservé

4917</h3>

4918 

4919Un dossier de compétence, un frontmatter `name`, un fichier ou un sous-dossier dans `.claude/commands/`, ou un [flux de travail enregistré](/docs/fr/workflows#save-the-workflow-for-reuse) utilise le nom `anthropic-skills` ou un nom qui commence par `anthropic-skills:`. Claude Code [réserve ce nom pour les compétences synchronisées depuis claude.ai](/docs/fr/skills#names-reserved-for-synced-skills) et ne charge pas cet élément.

4920 

4921Claude Code affiche cet avertissement comme un avis de démarrage dans la vue de conversation plutôt que sur stderr :

4922 

4923```text theme={null}

4924Not loaded: rename .claude/skills/anthropic-skills, then restart — its name uses "anthropic-skills", a name reserved for the skills synced from your claude.ai account

4925```

4926 

4927L'avis nomme ce qu'il faut changer pour le premier élément qu'il a refusé : un dossier ou un fichier à renommer, une ligne `name:` à modifier, ou un flux de travail à renommer. Quand plus d'un élément a été refusé, l'avis se termine par un nombre tel que `· 2 more`, et le [journal de débogage](/docs/fr/debug-your-config) nomme chacun.

4928 

4929**À faire :**

4930 

4931* Renommez l'élément que l'avis nomme, ou modifiez la ligne `name:` vers laquelle il pointe, puis redémarrez la session.

4932 

4933Avant la v2.1.282, Claude Code chargeait les compétences et les commandes avec ces noms.

4934 

4590<h3 id="workspace-has-not-been-trusted">4935<h3 id="workspace-has-not-been-trusted">

4591 L'espace de travail n'a pas été approuvé4936 L'espace de travail n'a pas été approuvé

4592</h3>4937</h3>


4633 Les paramètres gérés à distance n'ont pas pu être chargés4978 Les paramètres gérés à distance n'ont pas pu être chargés

4634</h3>4979</h3>

4635 4980 

4636Votre session est éligible pour les [paramètres gérés par le serveur](/docs/fr/server-managed-settings), mais Claude Code n'a pas pu les récupérer, donc il affiche cet avertissement dans les sessions interactives. La cause entre parenthèses nomme ce qui a échoué, par exemple `network error`, `request timed out`, ou `authentication rejected (401)`, et le reste de la ligne indique la politique sur laquelle la session s'exécute :4981Votre session est éligible pour les [paramètres gérés par le serveur](/docs/fr/server-managed-settings), mais Claude Code n'a pas pu les récupérer ou n'a pas pu appliquer ce que le serveur a renvoyé, donc il affiche cet avertissement dans les sessions interactives.

4982 

4983La cause entre parenthèses nomme ce qui a échoué, par exemple `network error`, `request timed out`, ou `authentication rejected (401)`. La cause `no setting in the server response could be applied as written` signifie que le serveur a répondu mais aucun des paramètres qu'il a renvoyés n'a réussi la [validation](/docs/fr/server-managed-settings#invalid-entries-in-delivered-settings). Avant la v2.1.282, cette cause lisait `server returned invalid settings`.

4984 

4985Le reste de la ligne indique la politique sur laquelle la session s'exécute :

4637 4986 

4638* **Paramètres mis en cache à partir d'une récupération antérieure réussie** : Claude Code exécute la session sur cette politique mise en cache, sauf les [variables d'environnement retenues](/docs/fr/server-managed-settings#fetch-and-caching-behavior), et la ligne lit `using cached policy`.4987* **Paramètres mis en cache à partir d'une récupération antérieure réussie** : Claude Code exécute la session sur cette politique mise en cache, sauf les [variables d'environnement retenues](/docs/fr/server-managed-settings#fetch-and-caching-behavior), et la ligne lit `using cached policy`.

4639* **Pas de cache** : Claude Code exécute la session sans paramètres gérés par le serveur, et la ligne lit `no remote policy applied`.4988* **Pas de cache** : Claude Code exécute la session sans paramètres gérés par le serveur, et la ligne lit `no remote policy applied`.


4641**À faire :**4990**À faire :**

4642 4991 

4643* Agissez sur la cause que le message nomme : pour une cause réseau, vérifiez que cette machine peut atteindre `api.anthropic.com` ; pour une cause d'authentification, vérifiez votre connexion avec `/status`4992* Agissez sur la cause que le message nomme : pour une cause réseau, vérifiez que cette machine peut atteindre `api.anthropic.com` ; pour une cause d'authentification, vérifiez votre connexion avec `/status`

4993* Pour `no setting in the server response could be applied as written`, demandez à votre administrateur de corriger les paramètres sur le serveur

4644* Exécutez `/status` ou `claude doctor` pour le diagnostic complet4994* Exécutez `/status` ou `claude doctor` pour le diagnostic complet

4645 4995 

4646Avant la v2.1.248, Claude Code ne signalait une récupération de paramètres échouée que dans le journal de débogage.4996Avant la v2.1.248, Claude Code ne signalait une récupération de paramètres échouée que dans le journal de débogage.


4660* Redémarrez Claude Code et approuvez la boîte de dialogue pour continuer selon les paramètres de votre organisation. Une boîte de dialogue refusée n'est pas mémorisée, donc elle réapparaît au prochain démarrage.5010* Redémarrez Claude Code et approuvez la boîte de dialogue pour continuer selon les paramètres de votre organisation. Une boîte de dialogue refusée n'est pas mémorisée, donc elle réapparaît au prochain démarrage.

4661* Si vous n'êtes pas sûr d'un paramètre que la boîte de dialogue répertorie, demandez à celui qui maintient les paramètres gérés de votre organisation avant d'approuver5011* Si vous n'êtes pas sûr d'un paramètre que la boîte de dialogue répertorie, demandez à celui qui maintient les paramètres gérés de votre organisation avant d'approuver

4662 5012 

5013<h3 id="managed-settings-block-the-default-model">

5014 Les paramètres gérés bloquent le modèle par défaut

5015</h3>

5016 

5017Les [paramètres gérés](/docs/fr/managed-settings) de votre organisation bloquent le modèle auquel l'option Par défaut se résout et chaque modèle auquel il pourrait rétrograder. Une session qui démarrerait sur l'option Par défaut se ferme au démarrage au lieu d'exécuter un modèle bloqué. Le message que vous voyez dépend du paramètre qui le bloque. Quand une liste [`deniedModels`](/docs/fr/model-config#block-specific-models-or-versions) le bloque, le message lit :

5018 

5019```text theme={null}

5020Claude Code can't start: your organization's managed settings block the default model (claude-opus-5-5) in "deniedModels", and none of the models they allow can be used as the default instead. Ask your administrator to update "deniedModels" or "availableModels".

5021```

5022 

5023Quand une liste `availableModels` avec [`availableModelsMatch`](/docs/fr/settings-reference#availablemodelsmatch) défini à `"exact"` l'omet, le message lit :

5024 

5025```text theme={null}

5026Claude Code can't start: your organization allows only the models listed in "availableModels", and none of them can be used as the default model (claude-opus-5-5 isn't listed). Ask your administrator to update "availableModels".

5027```

5028 

5029**À faire :**

5030 

5031* Si vous administrez les paramètres, ajoutez un modèle que vos utilisateurs peuvent exécuter à `availableModels`, ou réduisez les entrées `deniedModels` qui bloquent chaque secours. [Bloquer des modèles ou des versions spécifiques](/docs/fr/model-config#block-specific-models-or-versions) décrit comment l'option Par défaut rétrograde

5032* Si vous ne les administrez pas, envoyez le message à votre administrateur. Vos propres fichiers de paramètres ne peuvent pas élargir une liste `availableModels` ou `deniedModels` gérée

5033 

4663<h3 id="mcp-server-is-blocked-by-enterprise-managed-policy">5034<h3 id="mcp-server-is-blocked-by-enterprise-managed-policy">

4664 Le serveur MCP est bloqué par la politique gérée par l'entreprise5035 Le serveur MCP est bloqué par la politique gérée par l'entreprise

4665</h3>5036</h3>


4929 5300 

4930* Un [`--fallback-model`](/docs/fr/cli-reference#cli-flags) configuré prend le relais après une erreur de disponibilité, pour ce tour uniquement, avec un avis dans la transcription5301* Un [`--fallback-model`](/docs/fr/cli-reference#cli-flags) configuré prend le relais après une erreur de disponibilité, pour ce tour uniquement, avec un avis dans la transcription

4931* Une vérification de démarrage d'Amazon Bedrock ou de la plateforme Agent de Google Cloud détecte que votre modèle par défaut n'est pas disponible5302* Une vérification de démarrage d'Amazon Bedrock ou de la plateforme Agent de Google Cloud détecte que votre modèle par défaut n'est pas disponible

4932* Le [basculement automatique du modèle](/docs/fr/model-config#automatic-model-fallback) sur Fable 5.1, Fable 5, Opus 5.5 et Opus 5 déplace la session vers le modèle de secours de la catégorie signalée, lorsque cette catégorie en possède un, et affiche un avis dans la transcription5303* Le [basculement automatique du modèle](/docs/fr/model-config#automatic-model-fallback) sur Fable 5.1, Fable 5, Opus 5.5, Sonnet 5.5 et Opus 5 déplace la session vers le modèle de secours de la catégorie signalée, lorsque cette catégorie en possède un, et affiche un avis dans la transcription

4933 5304 

4934La vérification de sélection du modèle ci-dessous détecte les deuxième et troisième cas ; le premier apparaît comme un avis de transcription plutôt qu'un changement de `/model`. La [configuration du modèle](/docs/fr/model-config) explique quand chaque basculement s'applique.5305La vérification de sélection du modèle ci-dessous détecte les deuxième et troisième cas ; le premier apparaît comme un avis de transcription plutôt qu'un changement de `/model`. La [configuration du modèle](/docs/fr/model-config) explique quand chaque basculement s'applique.

4935 5306 

Details

219</table>219</table>

220 220 

221<span id="fn1" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>1</sup> Sur Google Cloud's Agent Platform, la recherche web est disponible pour les modèles Claude 4 et versions ultérieures.<br />221<span id="fn1" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>1</sup> Sur Google Cloud's Agent Platform, la recherche web est disponible pour les modèles Claude 4 et versions ultérieures.<br />

222<span id="fn2" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>2</sup> Sur ces fournisseurs, le mode auto prend en charge uniquement Claude Sonnet 5, Opus 4.7 ou versions ultérieures, et les modèles Fable. Consultez [Configuration du mode Auto](/docs/fr/auto-mode-config). Le mode de permission de démarrage intégré sur ces fournisseurs est Manuel. Consultez [quel mode une session démarre](/docs/fr/permission-modes#which-mode-a-session-starts-in). Dans les versions v2.1.158 à v2.1.206, le mode auto sur ces fournisseurs nécessitait également de définir `CLAUDE_CODE_ENABLE_AUTO_MODE=1` ; v2.1.207 a supprimé cette exigence.<br />222<span id="fn2" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>2</sup> Sur ces fournisseurs, le mode auto prend en charge uniquement Claude Sonnet 5, Opus 4.7 ou versions ultérieures, et les modèles Fable. Consultez [Configuration du mode Auto](/docs/fr/auto-mode-config). Pour le mode de permission qu'une session sur ces fournisseurs démarre, consultez [Quel mode une session démarre](/docs/fr/permission-modes#which-mode-a-session-starts-in). Dans les versions v2.1.158 à v2.1.206, le mode auto sur ces fournisseurs nécessitait également de définir `CLAUDE_CODE_ENABLE_AUTO_MODE=1` ; v2.1.207 a supprimé cette exigence.<br />

223<span id="fn3" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>3</sup> Soumis à votre accord avec le fournisseur de cloud.<br />223<span id="fn3" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>3</sup> Soumis à votre accord avec le fournisseur de cloud.<br />

224<span id="fn4" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>4</sup> Tableau de bord et API uniquement. Les [métriques de contribution](/docs/fr/analytics#enable-contribution-metrics) nécessitent une organisation Claude.ai Team ou Enterprise.<br />224<span id="fn4" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>4</sup> Tableau de bord et API uniquement. Les [métriques de contribution](/docs/fr/analytics#enable-contribution-metrics) nécessitent une organisation Claude.ai Team ou Enterprise.<br />

225<span id="fn5" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>5</sup> Nécessite Claude Code v2.1.224 ou version ultérieure sur macOS et Linux, y compris Linux dans WSL 2. Sur Windows natif, nécessite Claude Code v2.1.234 ou version ultérieure. Avec l'authentification par clé API, la messagerie est limitée à la même machine uniquement. Sur Amazon Bedrock, Claude Platform sur AWS, Google Cloud's Agent Platform et Microsoft Foundry, la messagerie est limitée à la même machine uniquement et nécessite Claude Code v2.1.248 ou version ultérieure. Claude peut trouver vos sessions [Claude Code sur le web](/docs/fr/claude-code-on-the-web) et vos sessions sur d'autres machines uniquement à partir d'une session connectée à [Remote Control](/docs/fr/remote-control). Pour vous connecter, vous avez besoin d'une connexion claude.ai et des autres [exigences de Remote Control](/docs/fr/remote-control#requirements). Consultez [Messagerie des sessions sur d'autres machines](/docs/fr/cross-session-messaging#message-sessions-on-other-machines).225<span id="fn5" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>5</sup> Nécessite Claude Code v2.1.224 ou version ultérieure sur macOS et Linux, y compris Linux dans WSL 2. Sur Windows natif, nécessite Claude Code v2.1.234 ou version ultérieure. Avec l'authentification par clé API, la messagerie est limitée à la même machine uniquement. Sur Amazon Bedrock, Claude Platform sur AWS, Google Cloud's Agent Platform et Microsoft Foundry, la messagerie est limitée à la même machine uniquement et nécessite Claude Code v2.1.248 ou version ultérieure. Claude peut trouver vos [sessions Claude Code sur le web](/docs/fr/claude-code-on-the-web) et vos sessions sur d'autres machines uniquement à partir d'une session connectée à [Remote Control](/docs/fr/remote-control). Pour vous connecter, vous avez besoin d'une connexion claude.ai et des autres [exigences de Remote Control](/docs/fr/remote-control#requirements). Consultez [Messagerie des sessions sur d'autres machines](/docs/fr/cross-session-messaging#message-sessions-on-other-machines).

226 226 

227<Note>227<Note>

228 Si vous vous authentifiez via une [passerelle LLM](/docs/fr/llm-gateway), la disponibilité des fonctionnalités correspond au fournisseur sous-jacent vers lequel la passerelle transfère, sauf pour les fonctionnalités que Claude Code désactive lui-même. Chaque fois que `ANTHROPIC_BASE_URL` pointe vers un hôte autre que `api.anthropic.com`, Claude Code désactive des fonctionnalités telles que [Remote Control](/docs/fr/remote-control#requirements) et [paramètres gérés par le serveur](/docs/fr/server-managed-settings#platform-availability), quelle que soit la passerelle transfère. Certaines fonctionnalités exclusives à Anthropic telles que l'[Advisor](/docs/fr/advisor) ne fonctionnent que si la passerelle transfère les demandes intactes à l'API Anthropic.228 Si vous vous authentifiez via une [passerelle LLM](/docs/fr/llm-gateway), la disponibilité des fonctionnalités correspond au fournisseur sous-jacent vers lequel la passerelle transfère, sauf pour les fonctionnalités que Claude Code désactive lui-même. Chaque fois que `ANTHROPIC_BASE_URL` pointe vers un hôte autre que `api.anthropic.com`, Claude Code désactive des fonctionnalités telles que [Remote Control](/docs/fr/remote-control#requirements) et [paramètres gérés par le serveur](/docs/fr/server-managed-settings#platform-availability), quelle que soit la passerelle transfère. Certaines fonctionnalités exclusives à Anthropic telles que l'[Advisor](/docs/fr/advisor) ne fonctionnent que si la passerelle transfère les demandes intactes à l'API Anthropic.

fullscreen.md +9 −7

Details

104* **Cliquez sur une option dans un menu de sélection multiple** pour la basculer, et cliquez sur le bouton de soumission pour confirmer vos choix. Cliquer sur une ligne de texte libre, comme la ligne `Other` dans une question à choix multiples, met le focus sur son champ de saisie pour que vous puissiez taper une réponse. Nécessite Claude Code v2.1.208 ou version ultérieure.104* **Cliquez sur une option dans un menu de sélection multiple** pour la basculer, et cliquez sur le bouton de soumission pour confirmer vos choix. Cliquer sur une ligne de texte libre, comme la ligne `Other` dans une question à choix multiples, met le focus sur son champ de saisie pour que vous puissiez taper une réponse. Nécessite Claude Code v2.1.208 ou version ultérieure.

105* **Cliquez sur une valeur de paramètre dans le panneau `/config`** pour la modifier, et faites défiler la liste des paramètres avec la molette de la souris. Nécessite Claude Code v2.1.271 ou version ultérieure.105* **Cliquez sur une valeur de paramètre dans le panneau `/config`** pour la modifier, et faites défiler la liste des paramètres avec la molette de la souris. Nécessite Claude Code v2.1.271 ou version ultérieure.

106* **Faites défiler un menu de sélection ou de sélection multiple avec la molette de la souris** lorsqu'il a plus d'options qu'il n'en affiche à la fois, comme la liste `/model` dans une fenêtre de terminal courte. La molette fait défiler la liste tandis que le pointeur se trouve sur ses options. Nécessite Claude Code v2.1.280 ou version ultérieure.106* **Faites défiler un menu de sélection ou de sélection multiple avec la molette de la souris** lorsqu'il a plus d'options qu'il n'en affiche à la fois, comme la liste `/model` dans une fenêtre de terminal courte. La molette fait défiler la liste tandis que le pointeur se trouve sur ses options. Nécessite Claude Code v2.1.280 ou version ultérieure.

107* **Faites défiler une liste qui déborde avec sa barre de défilement.** Dans les panneaux de liste tels que `/skills`, `/mcp` et la liste Installed de `/plugin`, une barre de défilement apparaît à côté d'une liste avec plus de lignes que ce qui tient tandis que le pointeur se trouve sur elle. Cliquez sur la piste pour sauter à ce point, ou faites glisser le curseur. Nécessite Claude Code v2.1.281 ou version ultérieure.

107* **Cliquez sur un résultat d'outil réduit** pour le développer et voir la sortie complète. Cliquez à nouveau pour le réduire. L'appel d'outil et son résultat se développent ensemble. Seuls les messages qui ont plus à afficher sont cliquables.108* **Cliquez sur un résultat d'outil réduit** pour le développer et voir la sortie complète. Cliquez à nouveau pour le réduire. L'appel d'outil et son résultat se développent ensemble. Seuls les messages qui ont plus à afficher sont cliquables.

108 * Cliquer développe également la sortie d'une commande shell `!`, qu'il s'agisse d'un résultat tronqué plus ancien ou de la ligne de progression en direct pendant l'exécution de la commande. Nécessite Claude Code v2.1.257 ou version ultérieure.109 * Cliquer développe également la sortie d'une commande shell `!`, qu'il s'agisse d'un résultat tronqué plus ancien ou de la ligne de progression en direct pendant l'exécution de la commande. Nécessite Claude Code v2.1.257 ou version ultérieure.

110 * Cliquer développe également une ligne `Message from @<sender>` atténuée lorsque l'expéditeur est un [coéquipier](/docs/fr/agent-teams) ou un autre agent s'exécutant dans votre session. La ligne d'un message provenant de [l'une de vos autres sessions](/docs/fr/cross-session-messaging#what-a-message-looks-like) affiche également la première ligne du message et n'est pas cliquable, donc appuyez sur `Ctrl+o` pour lire celle-ci.

109* **Maintenez `Cmd` sur macOS, ou `Ctrl` sur Linux et Windows, et cliquez sur une URL ou un chemin de fichier** pour l'ouvrir. Les URLs simples `http://` et `https://` s'ouvrent dans votre navigateur, et les chemins de fichiers dans la sortie d'outil, comme ceux imprimés après une opération Edit ou Write, s'ouvrent dans votre application par défaut. Un simple clic sans le modificateur n'ouvre pas les liens, ce qui correspond au comportement du terminal natif.111* **Maintenez `Cmd` sur macOS, ou `Ctrl` sur Linux et Windows, et cliquez sur une URL ou un chemin de fichier** pour l'ouvrir. Les URLs simples `http://` et `https://` s'ouvrent dans votre navigateur, et les chemins de fichiers dans la sortie d'outil, comme ceux imprimés après une opération Edit ou Write, s'ouvrent dans votre application par défaut. Un simple clic sans le modificateur n'ouvre pas les liens, ce qui correspond au comportement du terminal natif.

110 * Claude Code affiche un chemin réseau (UNC), tel que `\\server\share\file.ts`, en tant que texte brut sans lien, car l'ouverture d'un chemin réseau peut envoyer vos identifiants Windows à l'hôte qu'il désigne.112 * Claude Code affiche un chemin réseau (UNC), tel que `\\server\share\file.ts`, en tant que texte brut sans lien, car l'ouverture d'un chemin réseau peut envoyer vos identifiants Windows à l'hôte qu'il désigne.

111 * Certains terminaux macOS transmettent `Cmd`+clic à l'application en cours d'exécution au lieu d'ouvrir le lien eux-mêmes, et le protocole de souris du terminal n'a aucun moyen d'encoder la clé `Cmd`, donc Claude Code reçoit un simple clic. Dans Ghostty, et dans Warp sur macOS, Claude Code détecte cela et permet à un simple clic sur un lien de l'ouvrir, et maintenir `Cmd` fonctionne toujours.113 * Certains terminaux macOS transmettent `Cmd`+clic à l'application en cours d'exécution au lieu d'ouvrir le lien eux-mêmes, et le protocole de souris du terminal n'a aucun moyen d'encoder la clé `Cmd`, donc Claude Code reçoit un simple clic. Dans Ghostty, et dans Warp sur macOS, Claude Code détecte cela et permet à un simple clic sur un lien de l'ouvrir, et maintenir `Cmd` fonctionne toujours.


261 Conserver la sélection de texte native263 Conserver la sélection de texte native

262</h2>264</h2>

263 265 

264La capture de souris est le point de friction le plus courant, en particulier sur SSH ou à l'intérieur de tmux. Lorsque Claude Code capture les événements de souris, la copie native au survol de votre terminal cesse de fonctionner. La sélection que vous effectuez avec un clic et un glissement existe à l'intérieur de Claude Code, pas dans le tampon de sélection de votre terminal, donc le mode copie de tmux, les indices de Kitty et les outils similaires ne la voient pas.266La capture de souris est le point de friction le plus courant, en particulier sur SSH ou à l'intérieur de tmux. Quand Claude Code capture les événements de souris, la copie native au survol de votre terminal cesse de fonctionner. La sélection que vous effectuez avec un clic-glisser existe à l'intérieur de Claude Code, pas dans le tampon de sélection de votre terminal, donc le mode copie de tmux, les indices de Kitty et les outils similaires ne la voient pas.

265 267 

266Claude Code écrit la sélection dans le presse-papiers de votre système, et le chemin qu'il utilise dépend de votre configuration. Sur une session locale, il exécute un outil de presse-papiers natif :268Claude Code écrit la sélection dans le presse-papiers de votre système, et le chemin qu'il utilise dépend de votre configuration. Sur une session locale, il exécute un outil de presse-papiers natif :

267 269 

268* **macOS** : `pbcopy`270* **macOS** : `pbcopy`

269* **Linux** : `wl-copy` sur Wayland, ou `xclip` ou `xsel` sur X11, selon celui qui est installé. Claude Code écrit à la fois le presse-papiers et la sélection PRIMARY, donc le collage au clic du milieu fonctionne.271* **Linux** : `wl-copy` sur Wayland, ou `xclip` ou `xsel` sur X11, selon ce qui est installé. Claude Code écrit à la fois le presse-papiers et la sélection PRIMARY, donc le collage au clic du milieu fonctionne.

270* **Windows et WSL** : PowerShell `Set-Clipboard`272* **Windows et WSL** : PowerShell `Set-Clipboard`

271 273 

272À l'intérieur de tmux, il écrit également dans le tampon de collage de tmux. Sur SSH, il revient aux séquences d'échappement OSC 52. À l'intérieur de GNU screen, Claude Code copie également les longues sélections dans le presse-papiers. Avant la v2.1.219, si vous copiiez une sélection plus longue qu'environ 570 caractères, GNU screen imprimait du texte en base64 dans la fenêtre à la place. Claude Code affiche un toast après chaque copie vous indiquant quel chemin il a utilisé.274À l'intérieur de tmux, il écrit également dans le tampon de collage de tmux. Sur SSH, il revient aux séquences d'échappement OSC 52. À l'intérieur de GNU screen, Claude Code copie également les longues sélections dans le presse-papiers. Avant la v2.1.219, si vous copiiez une sélection plus longue qu'environ 570 caractères, GNU screen imprimait du texte en base64 dans la fenêtre à la place. Claude Code affiche un toast après chaque copie vous indiquant quel chemin il a utilisé.


282 284 

283Maintenez cette touche enfoncée pendant que vous cliquez et glissez. Votre terminal gère la sélection lui-même au lieu de la transmettre à Claude Code, donc les raccourcis de copie comme `Cmd+C` fonctionnent sur ce que vous sélectionnez. Claude Code affiche également la touche correcte dans son indice à l'écran.285Maintenez cette touche enfoncée pendant que vous cliquez et glissez. Votre terminal gère la sélection lui-même au lieu de la transmettre à Claude Code, donc les raccourcis de copie comme `Cmd+C` fonctionnent sur ce que vous sélectionnez. Claude Code affiche également la touche correcte dans son indice à l'écran.

284 286 

285Sur SSH ou à l'intérieur de tmux, Claude Code ne peut pas toujours détecter le terminal auquel vous vous connectez, donc l'indice répertorie les touches candidates à la place.287Sur SSH ou à l'intérieur de tmux, Claude Code ne peut pas toujours détecter le terminal auquel vous vous connectez, donc l'indice énumère les touches candidates à la place.

286 288 

287Si vous comptez sur la sélection native tout le temps, définissez `CLAUDE_CODE_DISABLE_MOUSE=1` pour refuser la capture de souris tout en conservant le rendu sans scintillement et la mémoire plate :289Si vous comptez sur la sélection native tout le temps, définissez `CLAUDE_CODE_DISABLE_MOUSE=1` pour désactiver la capture de souris tout en conservant le rendu sans scintillement et la mémoire plate :

288 290 

289```bash theme={null}291```bash theme={null}

290CLAUDE_CODE_NO_FLICKER=1 CLAUDE_CODE_DISABLE_MOUSE=1 claude292CLAUDE_CODE_NO_FLICKER=1 CLAUDE_CODE_DISABLE_MOUSE=1 claude

291```293```

292 294 

293Avec la capture de souris désactivée, le défilement au clavier avec `PgUp`, `PgDn`, `Ctrl+Home` et `Ctrl+End` fonctionne toujours, et votre terminal gère la sélection nativement. Vous perdez le clic pour positionner le curseur, le clic pour développer la sortie de l'outil, le clic sur les URL et le défilement à la roulette à l'intérieur de Claude Code.295Avec la capture de souris désactivée, le défilement au clavier avec `PgUp`, `PgDn`, `Ctrl+Home` et `Ctrl+End` fonctionne toujours, et votre terminal gère la sélection nativement. Vous perdez le clic pour positionner le curseur, le clic pour développer, le clic sur URL et le défilement à la roulette à l'intérieur de Claude Code.

294 296 

295Pour conserver le défilement à la roulette mais désactiver la gestion des clics, des glissements et des survols, définissez plutôt `CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1`. Nécessite Claude Code v2.1.195 ou version ultérieure. `CLAUDE_CODE_DISABLE_MOUSE` a la priorité lorsque les deux variables sont définies.297Pour conserver le défilement à la roulette mais désactiver le clic, le glisser et la gestion du survol, définissez plutôt `CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1`. Nécessite Claude Code v2.1.195 ou ultérieur. `CLAUDE_CODE_DISABLE_MOUSE` a la priorité quand les deux variables sont définies.

296 298 

297Avec les clics désactivés, Claude Code capture toujours la souris, donc la roulette et le pavé tactile font défiler la conversation mais les clics gauches ne font rien à l'intérieur de Claude Code. Vous devez toujours maintenir la touche de votre terminal enfoncée pour la sélection native au clic et au glissement. Le clic droit et le collage au clic du milieu continuent de fonctionner sur les terminaux qui les supportent.299Avec les clics désactivés, Claude Code capture toujours la souris, donc la roulette et le pavé tactile font défiler la conversation mais les clics gauches ne font rien à l'intérieur de Claude Code. Vous devez toujours maintenir la touche de votre terminal pour la sélection native au clic-glisser. Le clic droit et le collage au clic du milieu continuent de fonctionner sur les terminaux qui les supportent.

298 300 

299<h2 id="troubleshooting">301<h2 id="troubleshooting">

300 Dépannage302 Dépannage

Details

252 Le démarrage de la session échoue avec `Unable to get organization UUID`252 Le démarrage de la session échoue avec `Unable to get organization UUID`

253</h3>253</h3>

254 254 

255Les sessions web nécessitent une organisation Team ou Enterprise. Connectez-vous avec `/login` en utilisant votre compte d'organisation. Si vous vous authentifiez avec une clé API à la place, les sessions web échouent plus tôt avec un message vous demandant d'exécuter `/login`.255Connectez-vous avec `/login` en utilisant votre compte d'organisation. Si vous vous authentifiez avec une clé API à la place, les sessions web échouent plus tôt avec un message vous demandant d'exécuter `/login`.

256 256 

257<h2 id="related-resources">257<h2 id="related-resources">

258 Ressources connexes258 Ressources connexes

glossary.md +28 −1

Details

72 Auto mode72 Auto mode

73</h3>73</h3>

74 74 

75Un [permission mode](#permission-mode) où un modèle de classificateur séparé examine les actions au lieu de vous, de sorte que Claude Code exécute la plupart d'entre elles sans vous demander. Claude Code vous demande toujours avant les actions qui correspondent à vos règles d'ask explicites. Sur les plans Pro, Max et Team, auto mode est le [permission mode de démarrage intégré](/docs/fr/permission-modes#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code. Le classificateur bloque l'escalade de portée, l'infrastructure non fiable et [prompt injection](#prompt-injection). Les résultats des outils sont supprimés de ce qu'il voit, de sorte que le contenu hostile dans un fichier ou une page web ne peut pas le manipuler directement.75Un [permission mode](#permission-mode) où un modèle de classificateur séparé examine les actions au lieu de vous, de sorte que Claude Code exécute la plupart d'entre elles sans vous demander. Claude Code vous demande toujours avant les actions qui correspondent à vos règles d'ask explicites. Avec Claude Code v2.1.283 ou ultérieur, auto mode est le [permission mode de démarrage intégré](/docs/fr/permission-modes#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code, et sur les versions antérieures uniquement sur les plans Pro, Max et Team. Le classificateur bloque l'escalade de portée, l'infrastructure non fiable et [prompt injection](#prompt-injection). Les résultats des outils sont supprimés de ce qu'il voit, de sorte que le contenu hostile dans un fichier ou une page web ne peut pas le manipuler directement.

76 76 

77En savoir plus : [Eliminate prompts with auto mode](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode)77En savoir plus : [Eliminate prompts with auto mode](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode)

78 78 


428 428 

429En savoir plus : [Platforms and integrations](/docs/fr/platforms)429En savoir plus : [Platforms and integrations](/docs/fr/platforms)

430 430 

431<h3 id="system-prompt">

432 System prompt

433</h3>

434 

435Les instructions que Claude Code envoie avant votre conversation à chaque demande, couvrant la façon dont Claude utilise les outils, se comporte en toute sécurité et formate ses réponses. Vous pouvez ajouter au system prompt avec `--append-system-prompt` ou le remplacer avec `--system-prompt`. Le system prompt est la première couche du [prompt cache](/docs/fr/prompt-caching#how-the-cache-is-organized).

436 

437Vos fichiers [CLAUDE.md](#claude-md) et les instructions de votre [output style](#output-style) ne font pas partie du system prompt. Claude Code les fournit dans la conversation en tant que [system reminder](#system-reminder).

438 

439En savoir plus : [System prompt flags](/docs/fr/cli-reference#system-prompt-flags)

440 

441<h3 id="system-reminder">

442 System reminder

443</h3>

444 

445Un message que Claude Code, en tant que [harness](#agentic-harness), ajoute à la conversation pour donner du contexte à Claude. Vous n'envoyez pas vous-même de system reminders. Claude Code les insère au fur et à mesure qu'une session s'exécute, par exemple au démarrage de la session, lorsqu'un hook retourne du texte, ou lorsqu'un fichier change sur le disque. Claude les lit aux côtés de vos messages. Les éléments suivants atteignent tous Claude en tant que system reminders :

446 

447* Vos fichiers [CLAUDE.md](#claude-md)

448* Les instructions de votre [output style](#output-style)

449* Texte qu'un [hook](#hook) retourne en tant que `additionalContext`

450* La liste des [skills](#skill) disponibles

451* Une note indiquant qu'un fichier que Claude a lu précédemment a changé sur le disque

452* Les lignes d'attribution de commit et de pull request

453 

454Dans une demande API enregistrée, un system reminder apparaît enveloppé dans des balises `<system-reminder>` à l'intérieur d'un message utilisateur, ou sur certains modèles en tant que message séparé avec le rôle `system`.

455 

456En savoir plus : [Context Claude Code adds outside the system prompt](/docs/fr/agent-sdk/modifying-system-prompts#context-claude-code-adds-outside-the-system-prompt)

457 

431<h2 id="t">458<h2 id="t">

432 T459 T

433</h2>460</h2>

goal.md +1 −1

Details

155 155 

156Si un tour échoue sur une erreur qui ne s'effacera que lorsque vous la corrigerez, Claude Code efface l'objectif et imprime un avertissement nommant la cause. L'avertissement commence par `Goal cleared after an unrecoverable error` et se termine par `Run /goal again to continue`. Corrigez la cause, puis [définissez l'objectif à nouveau](#set-a-goal) avec `/goal <condition>`. Quatre types d'échec effacent l'objectif :156Si un tour échoue sur une erreur qui ne s'effacera que lorsque vous la corrigerez, Claude Code efface l'objectif et imprime un avertissement nommant la cause. L'avertissement commence par `Goal cleared after an unrecoverable error` et se termine par `Run /goal again to continue`. Corrigez la cause, puis [définissez l'objectif à nouveau](#set-a-goal) avec `/goal <condition>`. Quatre types d'échec effacent l'objectif :

157 157 

158* Une défaillance d'authentification, lorsque Claude Code gère ses propres identifiants. Lorsqu'un hôte les gère pour vous, comme l'application de bureau, l'extension VS Code ou une [session cloud](/docs/fr/claude-code-on-the-web), Claude Code laisse l'objectif actif car l'hôte restaure l'accès de lui-même.158* Une défaillance d'authentification, lorsque Claude Code gère ses propres identifiants. Lorsqu'un hôte les gère pour vous, comme l'application de bureau ou une [session cloud](/docs/fr/claude-code-on-the-web), Claude Code laisse l'objectif actif car l'hôte restaure l'accès de lui-même.

159* Un solde de crédit épuisé159* Un solde de crédit épuisé

160* Un débordement de contexte que [l'auto-compaction](/docs/fr/model-config#set-the-auto-compact-window) n'a pas pu effacer160* Un débordement de contexte que [l'auto-compaction](/docs/fr/model-config#set-the-auto-compact-window) n'a pas pu effacer

161* Un modèle qui n'est pas disponible161* Un modèle qui n'est pas disponible

headless.md +10 −2

Details

89* **Exécution d'une commande** : Claude Code enregistre la commande comme tuée dans la session.89* **Exécution d'une commande** : Claude Code enregistre la commande comme tuée dans la session.

90* **En attente d'une réponse à une invite de permission** : si vous envoyez SIGTERM au processus, Claude Code laisse l'invite sans réponse. Si votre programme ferme la session via le SDK Agent, le SDK termine l'entrée de Claude Code avant d'envoyer un signal, et Claude Code annule l'invite dès que l'entrée se termine.90* **En attente d'une réponse à une invite de permission** : si vous envoyez SIGTERM au processus, Claude Code laisse l'invite sans réponse. Si votre programme ferme la session via le SDK Agent, le SDK termine l'entrée de Claude Code avant d'envoyer un signal, et Claude Code annule l'invite dès que l'entrée se termine.

91 91 

92Quand vous [reprenez la session](#continue-conversations), Claude Code continue le tour que SIGTERM a laissé inachevé.92Quand vous [reprenez la session](#continue-conversations), Claude Code laisse le tour interrompu tel qu'il est, et votre prochaine invite conduit la conversation. Pour que Claude Code continue le tour interrompu à la reprise à la place, définissez [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN=1`](/docs/fr/env-vars).

93 

94<h3 id="if-the-working-directory-is-deleted">

95 Si le répertoire de travail est supprimé

96</h3>

97 

98Si le répertoire de travail d'une session `claude -p` ou Agent SDK est supprimé en cours de session, la session continue de s'exécuter. Quand un tour commence alors que le répertoire est manquant, Claude Code émet un [message d'avertissement](/docs/fr/agent-sdk/typescript#sdkinformationalmessage) dans la sortie `stream-json`, et les commandes shell échouent jusqu'à ce que le répertoire existe à nouveau.

93 99 

94<h2 id="examples">100<h2 id="examples">

95 Exemples101 Exemples


255| Champ | Type | Description |261| Champ | Type | Description |

256| - | - | - |262| - | - | - |

257| `plugins` | tableau | plugins qui se sont chargés avec succès, chacun avec `name` et `path` |263| `plugins` | tableau | plugins qui se sont chargés avec succès, chacun avec `name` et `path` |

258| `plugin_errors` | tableau | erreurs de chargement de plugin, chacune avec `plugin`, `type` et `message`. Inclut les versions de dépendance non satisfaites et les échecs de chargement `--plugin-dir` tels qu'un chemin manquant ou une archive invalide. Les plugins affectés sont rétrogradés et absents de `plugins`. La clé est omise lorsqu'il n'y a pas d'erreurs |264| `plugin_errors` | tableau | erreurs de chargement de plugin, chacune avec `plugin`, `type` et `message`. Inclut les versions de dépendance non satisfaites et les échecs de chargement `--plugin-dir` tels qu'un chemin manquant ou une archive invalide. Un plugin qui ne s'est pas chargé est absent de `plugins`. La clé est omise lorsqu'il n'y a pas d'erreurs |

265 

266Lorsqu'un répertoire ou une archive `--plugin-dir` lui-même échoue à se charger, son entrée `plugin_errors` inclut le chemin absolu résolu en tant que `path`. Utilisez-le pour déterminer lequel de plusieurs valeurs `--plugin-dir` a échoué. Le champ `path` nécessite Claude Code v2.1.283 ou ultérieur.

259 267 

260Utilisez les champs du serveur MCP de la même manière. Lorsque vous passez [`--mcp-config`](/docs/fr/cli-reference#cli-flags) avec `-p`, Claude Code attend les serveurs toujours en attente avant d'exécuter le premier tour, jusqu'au délai d'expiration de démarrage [`MCP_TIMEOUT`](/docs/fr/env-vars), 30 secondes par défaut. Un serveur distant avec une [liste d'outils mise en cache](/docs/fr/agent-sdk/mcp#connection-timing) ignore l'attente, affiche `pending` dans `system/init` et se connecte lors de son premier appel d'outil. L'attente nécessite Claude Code v2.1.221 ou ultérieur.268Utilisez les champs du serveur MCP de la même manière. Lorsque vous passez [`--mcp-config`](/docs/fr/cli-reference#cli-flags) avec `-p`, Claude Code attend les serveurs toujours en attente avant d'exécuter le premier tour, jusqu'au délai d'expiration de démarrage [`MCP_TIMEOUT`](/docs/fr/env-vars), 30 secondes par défaut. Un serveur distant avec une [liste d'outils mise en cache](/docs/fr/agent-sdk/mcp#connection-timing) ignore l'attente, affiche `pending` dans `system/init` et se connecte lors de son premier appel d'outil. L'attente nécessite Claude Code v2.1.221 ou ultérieur.

261 269 

hooks.md +161 −171

Details

421 421 

422* **[Hooks de commande](#command-hook-fields)** (`type: "command"`) : exécutent une commande shell. Votre script reçoit l'[entrée JSON](#hook-input-and-output) de l'événement sur stdin et communique les résultats via les codes de sortie et stdout.422* **[Hooks de commande](#command-hook-fields)** (`type: "command"`) : exécutent une commande shell. Votre script reçoit l'[entrée JSON](#hook-input-and-output) de l'événement sur stdin et communique les résultats via les codes de sortie et stdout.

423* **[Hooks HTTP](#http-hook-fields)** (`type: "http"`) : envoient l'entrée JSON de l'événement en tant que requête HTTP POST à une URL. Le point de terminaison communique les résultats via le corps de la réponse en utilisant le même [format de sortie JSON](#json-output) que les hooks de commande.423* **[Hooks HTTP](#http-hook-fields)** (`type: "http"`) : envoient l'entrée JSON de l'événement en tant que requête HTTP POST à une URL. Le point de terminaison communique les résultats via le corps de la réponse en utilisant le même [format de sortie JSON](#json-output) que les hooks de commande.

424* **[Hooks de l'outil MCP](#mcp-tool-hook-fields)** (`type: "mcp_tool"`) : appellent un outil sur un serveur [MCP](/docs/fr/mcp) déjà connecté. La sortie textuelle de l'outil est traitée comme stdout d'un hook de commande.424* **[Hooks de l'outil MCP](#mcp-tool-hook-fields)** (`type: "mcp_tool"`) : appellent un outil sur un serveur [MCP](/docs/fr/mcp) configuré. La sortie textuelle de l'outil est traitée comme stdout d'un hook de commande.

425* **[Hooks de prompt](#prompt-and-agent-hook-fields)** (`type: "prompt"`) : envoient un prompt à un modèle Claude pour une évaluation en un seul tour. Le modèle retourne sa décision en JSON. Consultez [Hooks basés sur des prompts](#prompt-based-hooks).425* **[Hooks de prompt](#prompt-and-agent-hook-fields)** (`type: "prompt"`) : envoient un prompt à un modèle Claude pour une évaluation en un seul tour. Le modèle retourne sa décision en JSON. Consultez [Hooks basés sur des prompts](#prompt-based-hooks).

426* **[Hooks d'agent](#prompt-and-agent-hook-fields)** (`type: "agent"`) : lancent un subagent qui peut utiliser des outils comme Read, Grep et Glob pour vérifier les conditions avant de retourner une décision. Les hooks d'agent sont expérimentaux et peuvent changer. Consultez [Hooks basés sur des agents](#agent-based-hooks).426* **[Hooks d'agent](#prompt-and-agent-hook-fields)** (`type: "agent"`) : lancent un subagent qui peut utiliser des outils comme Read, Grep et Glob pour vérifier les conditions avant de retourner une décision. Les hooks d'agent sont expérimentaux et peuvent changer. Consultez [Hooks basés sur des agents](#agent-based-hooks).

427 427 


474| `command` | oui | Commande shell à exécuter. Avec `args`, l'exécutable à lancer directement. Consultez [Forme exec et forme shell](#exec-form-and-shell-form) |474| `command` | oui | Commande shell à exécuter. Avec `args`, l'exécutable à lancer directement. Consultez [Forme exec et forme shell](#exec-form-and-shell-form) |

475| `args` | non | Liste d'arguments. Lorsqu'elle est présente, `command` est résolu comme un exécutable et lancé directement avec `args` comme vecteur d'arguments, sans shell. Consultez [Forme exec et forme shell](#exec-form-and-shell-form) |475| `args` | non | Liste d'arguments. Lorsqu'elle est présente, `command` est résolu comme un exécutable et lancé directement avec `args` comme vecteur d'arguments, sans shell. Consultez [Forme exec et forme shell](#exec-form-and-shell-form) |

476| `async` | non | Si `true`, s'exécute en arrière-plan sans bloquer. Consultez [Exécuter les hooks en arrière-plan](#run-hooks-in-the-background) |476| `async` | non | Si `true`, s'exécute en arrière-plan sans bloquer. Consultez [Exécuter les hooks en arrière-plan](#run-hooks-in-the-background) |

477| `asyncRewake` | non | Si `true`, s'exécute en arrière-plan et réveille Claude au code de sortie 2. Le stderr du hook, ou stdout s'il est vide, est affiché à Claude comme un rappel système afin qu'il puisse réagir à un échec en arrière-plan de longue durée |477| `asyncRewake` | non | Si `true`, s'exécute en arrière-plan et réveille Claude au code de sortie 2. Le stderr du hook, ou stdout s'il est vide, est affiché à Claude comme un [rappel système](/docs/fr/glossary#system-reminder) afin qu'il puisse réagir à un échec en arrière-plan de longue durée |

478| `shell` | non | Shell à utiliser pour ce hook. Accepte `"bash"` ou `"powershell"`. Par défaut `"bash"`, ou `"powershell"` sur Windows lorsque Git Bash n'est pas installé. Définir `"powershell"` exécute la commande via PowerShell sur Windows. Ne nécessite pas `CLAUDE_CODE_USE_POWERSHELL_TOOL` puisque les hooks lancent PowerShell directement. Ignoré lorsque `args` est défini |478| `shell` | non | Shell à utiliser pour ce hook. Accepte `"bash"` ou `"powershell"`. Par défaut `"bash"`, ou `"powershell"` sur Windows lorsque Git Bash n'est pas installé. Définir `"powershell"` exécute la commande via PowerShell sur Windows. Ne nécessite pas `CLAUDE_CODE_USE_POWERSHELL_TOOL` puisque les hooks lancent PowerShell directement. Ignoré lorsque `args` est défini |

479 479 

480<a id="exec-form-and-shell-form" />480<a id="exec-form-and-shell-form" />


571 571 

572| Champ | Requis | Description |572| Champ | Requis | Description |

573| :- | :- | :- |573| :- | :- | :- |

574| `server` | oui | Nom d'un serveur MCP configuré. Pour un [serveur fourni par un plugin](/docs/fr/mcp#plugin-provided-mcp-servers), c'est le nom limité `plugin:<plugin-name>:<server-name>`, comme `plugin:my-plugin:db`, pas la clé de serveur nue. Le serveur doit déjà être connecté ; le hook ne déclenche jamais un flux OAuth ou de connexion |574| `server` | oui | Nom d'un serveur MCP configuré. Pour un [serveur fourni par un plugin](/docs/fr/mcp#plugin-provided-mcp-servers), c'est le nom limité `plugin:<plugin-name>:<server-name>`, comme `plugin:my-plugin:db`, pas la clé de serveur nue |

575| `tool` | oui | Nom de l'outil à appeler sur ce serveur |575| `tool` | oui | Nom de l'outil à appeler sur ce serveur |

576| `input` | non | Arguments passés à l'outil. Les valeurs de chaîne supportent la substitution `${path}` de l'[entrée JSON](#hook-input-and-output) du hook, comme `"${tool_input.file_path}"` |576| `input` | non | Arguments passés à l'outil. Les valeurs de chaîne supportent la substitution `${path}` de l'[entrée JSON](#hook-input-and-output) du hook, comme `"${tool_input.file_path}"` |

577 577 

578Claude Code lit le contenu textuel de l'outil de la même manière qu'il lit stdout d'un hook de commande, en suivant la [règle d'analyse sous le code de sortie 0](#exit-code-0). Si le serveur nommé n'est pas connecté, ou si l'outil retourne `isError: true`, le hook produit une erreur non-bloquante et l'exécution continue.

579 

580Cet exemple appelle l'outil `security_scan` sur le serveur MCP `my_server` après chaque `Write` ou `Edit`, en passant le chemin du fichier édité :578Cet exemple appelle l'outil `security_scan` sur le serveur MCP `my_server` après chaque `Write` ou `Edit`, en passant le chemin du fichier édité :

581 579 

582```json theme={null}580```json theme={null}


599}597}

600```598```

601 599 

602Un hook `mcp_tool` peut s'exécuter uniquement une fois que Claude Code a rendu les serveurs MCP de la session disponibles aux hooks. `SessionStart` et `Setup` peuvent se déclencher avant ce point :600<h5 id="how-the-tool’s-result-is-read">

601 Comment le résultat de l'outil est lu

602</h5>

603 603 

604* **Au lancement** : `SessionStart` se déclenche avant que les serveurs ne soient disponibles, y compris lorsque vous lancez avec `--continue` ou `--resume`. Claude Code ignore les hooks `mcp_tool` de l'événement sans appeler leurs outils, et le [journal de débogage](#debug-hooks) enregistre `mcp_tool hooks are not available for the 'SessionStart' hook event (no MCP client context)`.604Claude Code lit le contenu textuel de l'outil de la même manière qu'il lit stdout d'un hook de commande, en suivant la [règle d'analyse sous le code de sortie 0](#exit-code-0). Si l'outil retourne `isError: true`, le hook produit une erreur non-bloquante et l'exécution continue.

605* **Plus tard dans une session en cours** : après `/clear` ou une compaction, `SessionStart` se déclenche à nouveau avec les serveurs déjà disponibles, et ses hooks `mcp_tool` s'exécutent.

606* **Sur `Setup`** : `Setup` se déclenche toujours avant que les serveurs ne soient disponibles, donc Claude Code ignore ses hooks `mcp_tool` à chaque fois et enregistre le même message nommant `Setup`.

607 605 

608Par exemple, cette configuration appelle l'outil `load_context` sur le serveur MCP `my_server` à partir d'un hook `SessionStart` sans matcher, donc elle s'applique à chaque source `SessionStart` :606<h5 id="when-the-server-is-still-connecting">

607 Quand le serveur est encore en cours de connexion

608</h5>

609 609 

610```json theme={null}610Sur les événements où un hook peut bloquer ou changer le résultat, tels que `PreToolUse` ou `Stop`, Claude Code attend qu'un serveur se connecte avant d'appeler l'outil, pendant au maximum [`MCP_TIMEOUT`](/docs/fr/env-vars) et dans le [`timeout`](#common-fields) du hook lui-même. Sur les événements observationnels, tels que `Notification` ou `SessionEnd`, il n'attend pas.

611{611 

612 "hooks": {612Un serveur affichant le statut [`cached`](/docs/fr/mcp#server-status-detail) se connecte lorsque le hook appelle son outil. Si le serveur n'est pas connecté à ce moment, le hook produit une erreur non-bloquante et l'exécution continue. Le hook ne démarre jamais un flux OAuth, donc [authentifiez le serveur à partir de `/mcp`](/docs/fr/mcp#authenticate-with-remote-mcp-servers) d'abord.

613 "SessionStart": [613 

614 {614<h5 id="events-that-fire-before-mcp-servers-are-available">

615 "hooks": [615 Événements qui se déclenchent avant que les serveurs MCP ne soient disponibles

616 {616</h5>

617 "type": "mcp_tool",

618 "server": "my_server",

619 "tool": "load_context"

620 }

621 ]

622 }

623 ]

624 }

625}

626```

627 617 

628Lorsque vous exécutez `claude`, Claude Code ignore ce hook, n'appelle jamais `load_context` et écrit le message `no MCP client context` dans le journal de débogage. Exécutez `/clear` dans cette même session et le hook s'exécute et appelle `load_context`. Un hook `type: "command"` sur `SessionStart` s'exécute au lancement, donc utilisez-en un pour tout ce dont la session a besoin dès son premier tour.618`SessionStart` au lancement, y compris avec `--continue` ou `--resume`, et chaque événement `Setup` se déclenchent avant que les serveurs MCP de la session ne soient disponibles pour les hooks. Claude Code ignore leurs hooks `mcp_tool` sans appeler l'outil, et le [journal de débogage](#debug-hooks) enregistre `mcp_tool hooks are not available for the 'SessionStart' hook event (no MCP client context)`, ou le même message nommant `Setup`. Lorsque `SessionStart` se déclenche à nouveau plus tard dans la session, après `/clear` ou une compaction, ses hooks `mcp_tool` s'exécutent. Pour tout ce dont la session a besoin au lancement, utilisez un hook `type: "command"` sur `SessionStart` à la place.

629 619 

630<h4 id="prompt-and-agent-hook-fields">620<h4 id="prompt-and-agent-hook-fields">

631 Champs des hooks de prompt et d'agent621 Champs des hooks de prompt et d'agent


636| Champ | Requis | Description |626| Champ | Requis | Description |

637| :- | :- | :- |627| :- | :- | :- |

638| `prompt` | oui | Texte du prompt à envoyer au modèle. Utilisez `$ARGUMENTS` comme placeholder pour l'entrée JSON du hook. Échappez avec une barre oblique inverse pour inclure du texte littéral : `\$1.00` s'affiche comme `$1.00` |628| `prompt` | oui | Texte du prompt à envoyer au modèle. Utilisez `$ARGUMENTS` comme placeholder pour l'entrée JSON du hook. Échappez avec une barre oblique inverse pour inclure du texte littéral : `\$1.00` s'affiche comme `$1.00` |

639| `model` | non | Modèle à utiliser pour l'évaluation. Par défaut un modèle rapide |629| `model` | non | Modèle à utiliser pour l'évaluation. Par défaut le modèle que Claude Code utilise pour la [fonctionnalité en arrière-plan](/docs/fr/costs#background-token-usage) |

640 630 

641<h3 id="reference-scripts-by-path">631<h3 id="reference-scripts-by-path">

642 Référencer les scripts par chemin632 Référencer les scripts par chemin


791| `prompt_id` | UUID identifiant le prompt utilisateur actuellement traité. Correspond à l'[attribut `prompt.id` sur les événements OpenTelemetry](/docs/fr/monitoring-usage#event-correlation-attributes), afin que vous puissiez corréler la sortie du hook avec la télémétrie pour un seul prompt. Absent jusqu'à la première entrée utilisateur. Nécessite Claude Code v2.1.196 ou ultérieur |781| `prompt_id` | UUID identifiant le prompt utilisateur actuellement traité. Correspond à l'[attribut `prompt.id` sur les événements OpenTelemetry](/docs/fr/monitoring-usage#event-correlation-attributes), afin que vous puissiez corréler la sortie du hook avec la télémétrie pour un seul prompt. Absent jusqu'à la première entrée utilisateur. Nécessite Claude Code v2.1.196 ou ultérieur |

792| `transcript_path` | Chemin vers le JSON de conversation. Le fichier de transcription est écrit de manière asynchrone et peut être en retard par rapport à la conversation en mémoire, il se peut donc qu'il n'inclue pas encore les messages les plus récents du tour actuel lorsqu'un hook se déclenche. Les hooks qui ont besoin du texte final de l'assistant du tour actuel doivent utiliser `last_assistant_message` sur [Stop](#stop) et [SubagentStop](#subagentstop) au lieu de lire la transcription |782| `transcript_path` | Chemin vers le JSON de conversation. Le fichier de transcription est écrit de manière asynchrone et peut être en retard par rapport à la conversation en mémoire, il se peut donc qu'il n'inclue pas encore les messages les plus récents du tour actuel lorsqu'un hook se déclenche. Les hooks qui ont besoin du texte final de l'assistant du tour actuel doivent utiliser `last_assistant_message` sur [Stop](#stop) et [SubagentStop](#subagentstop) au lieu de lire la transcription |

793| `cwd` | Répertoire de travail courant lorsque le hook est invoqué |783| `cwd` | Répertoire de travail courant lorsque le hook est invoqué |

794| `scratchpad_dir` | Chemin vers le répertoire scratchpad de la session, où Claude conserve les fichiers de travail temporaires. Absent lorsque la session n'a pas de scratchpad ou que le répertoire temporaire n'est pas disponible. Nécessite Claude Code v2.1.257 ou ultérieur |784| `scratchpad_dir` | Chemin vers le [répertoire scratchpad](/docs/fr/claude-directory#session-scratchpad-directory) de la session, où Claude conserve les fichiers de travail temporaires. Absent lorsque la session n'a pas de scratchpad ou que le répertoire temporaire n'est pas disponible. Nécessite Claude Code v2.1.257 ou ultérieur |

795| `permission_mode` | [Mode de permission](/docs/fr/permissions#permission-modes) actuel : `"default"`, `"plan"`, `"acceptEdits"`, `"auto"`, `"dontAsk"` ou `"bypassPermissions"`. Le mode étiqueté **Manuel** arrive comme `"default"`, jamais comme `"manual"`, afin que les scripts qui correspondent à `"default"` continuent de fonctionner. Tous les événements ne reçoivent pas ce champ. Consultez l'exemple JSON de chaque [événement de hook](#hook-events) |785| `permission_mode` | [Mode de permission](/docs/fr/permissions#permission-modes) actuel : `"default"`, `"plan"`, `"acceptEdits"`, `"auto"`, `"dontAsk"` ou `"bypassPermissions"`. Le mode étiqueté **Manuel** arrive comme `"default"`, jamais comme `"manual"`, afin que les scripts qui correspondent à `"default"` continuent de fonctionner. Tous les événements ne reçoivent pas ce champ. Consultez l'exemple JSON de chaque [événement de hook](#hook-events) |

796| `effort` | Objet avec un champ `level` contenant le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) en vigueur lorsque le hook s'exécute : `"low"`, `"medium"`, `"high"`, `"xhigh"` ou `"max"`. Si vous définissez un niveau que le modèle actif ne supporte pas, `level` rapporte le niveau que Claude Code a exécuté à la place ; [Ajuster le niveau d'effort](/docs/fr/model-config#adjust-effort-level) explique comment il choisit ce niveau. Ultracode n'est pas un niveau distinct et est signalé comme `"xhigh"`. L'objet correspond au champ `effort` de la [ligne de statut](/docs/fr/statusline#available-data). Présent pour les événements qui se déclenchent dans un contexte d'utilisation d'outil, tels que `PreToolUse`, `PostToolUse`, `Stop` et `SubagentStop`, lorsque le modèle actuel supporte le paramètre d'effort. Le niveau est également disponible pour les commandes de hook et l'outil Bash en tant que variable d'environnement `$CLAUDE_EFFORT`. |786| `effort` | Objet avec un champ `level` contenant le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) en vigueur lorsque le hook s'exécute : `"low"`, `"medium"`, `"high"`, `"xhigh"` ou `"max"`. Si vous définissez un niveau que le modèle actif ne supporte pas, `level` rapporte le niveau que Claude Code a exécuté à la place ; [Ajuster le niveau d'effort](/docs/fr/model-config#adjust-effort-level) explique comment il choisit ce niveau. L'objet correspond au champ `effort` de la [ligne de statut](/docs/fr/statusline#available-data). Présent pour les événements qui se déclenchent dans un contexte d'utilisation d'outil, tels que `PreToolUse`, `PostToolUse`, `Stop` et `SubagentStop`, lorsque le modèle actuel supporte le paramètre d'effort. Le niveau est également disponible pour les commandes de hook et l'outil Bash en tant que variable d'environnement `$CLAUDE_EFFORT`. |

797| `hook_event_name` | Nom de l'événement qui s'est déclenché |787| `hook_event_name` | Nom de l'événement qui s'est déclenché |

798 788 

799Lors de l'exécution avec `--agent` ou à l'intérieur d'un subagent, deux champs supplémentaires sont inclus :789Lors de l'exécution avec `--agent` ou à l'intérieur d'un subagent, deux champs supplémentaires sont inclus :


1057 Ajouter du contexte pour Claude1047 Ajouter du contexte pour Claude

1058</h4>1048</h4>

1059 1049 

1060Le champ `additionalContext` transmet une chaîne de votre hook dans la fenêtre de contexte de Claude. Claude Code enveloppe la chaîne dans un rappel système et l'insère dans la conversation au point où le hook s'est déclenché. Claude lit le rappel lors de la prochaine demande du modèle, mais il n'apparaît pas comme un message de chat dans l'interface.1050Le champ `additionalContext` transmet une chaîne de votre hook dans la fenêtre de contexte de Claude. Claude Code enveloppe la chaîne dans un [rappel système](/docs/fr/glossary#system-reminder) et l'insère dans la conversation au point où le hook s'est déclenché. Claude lit le rappel lors de la prochaine demande du modèle, mais il n'apparaît pas comme un message de chat dans l'interface.

1061 1051 

1062Retournez `additionalContext` à l'intérieur de `hookSpecificOutput` aux côtés du nom de l'événement :1052Retournez `additionalContext` à l'intérieur de `hookSpecificOutput` aux côtés du nom de l'événement :

1063 1053 


1179 Événements de hook1169 Événements de hook

1180</h2>1170</h2>

1181 1171 

1182Chaque événement correspond à un point du cycle de vie de Claude Code où les hooks peuvent s'exécuter. Les sections ci-dessous sont ordonnées pour correspondre au cycle de vie : de la configuration de la session à la boucle agentive jusqu'à la fin de la session. Chaque section décrit quand l'événement se déclenche, quels matchers il supporte, l'entrée JSON qu'il reçoit, et comment contrôler le comportement via la sortie.1172Chaque événement correspond à un point du cycle de vie de Claude Code où les hooks peuvent s'exécuter. Les sections ci-dessous sont ordonnées pour correspondre au cycle de vie : de la configuration de session à travers la boucle agentive jusqu'à la fin de session. Chaque section décrit quand l'événement se déclenche, quels matchers il supporte, l'entrée JSON qu'il reçoit, et comment contrôler le comportement via la sortie.

1183 1173 

1184<h3 id="sessionstart">1174<h3 id="sessionstart">

1185 SessionStart1175 SessionStart


1201 1191 

1202Avant v2.1.214, les sessions créées par fork signalaient la source `"resume"`.1192Avant v2.1.214, les sessions créées par fork signalaient la source `"resume"`.

1203 1193 

1204Quand vous démarrez une session interactive, reprenez une conversation au lancement avec `--continue` ou `--resume`, ou exécutez `/clear`, les hooks SessionStart s'exécutent en arrière-plan. Vous pouvez taper immédiatement, et une conversation que vous avez reprise apparaît sans attendre les hooks. La première réponse de Claude attend toujours que les hooks se terminent, donc leur contexte atteint Claude.1194Quand vous démarrez une session interactive, reprenez une conversation au lancement avec `--continue` ou `--resume`, ou exécutez `/clear`, les hooks SessionStart s'exécutent en arrière-plan. Vous pouvez taper immédiatement, et une conversation que vous avez reprise s'affiche sans attendre les hooks. La première réponse de Claude attend toujours que les hooks se terminent, donc leur contexte atteint Claude.

1205 1195 

1206Quand vous changez de conversation avec `/resume` à l'intérieur d'une session, le changement attend que les hooks se terminent. Si vous exécutez `/clear` ou changez vers une autre conversation pendant que les hooks en arrière-plan s'exécutent toujours, rien de ce qu'ils retournent ne s'applique à la session.1196Quand vous changez de conversation avec `/resume` dans une session, le changement attend que les hooks se terminent. Si vous exécutez `/clear` ou changez vers une autre conversation pendant que les hooks en arrière-plan s'exécutent toujours, rien de ce qu'ils retournent ne s'applique à la session.

1207 1197 

1208La même attente s'applique au lancement, y compris une session reprise : une invite que vous envoyez pendant que les hooks SessionStart s'exécutent toujours n'atteint Claude que quand ils se terminent.1198La même attente s'applique au lancement, y compris une session reprise : une invite que vous envoyez pendant que les hooks SessionStart s'exécutent toujours n'atteint Claude que lorsqu'ils se terminent.

1209 1199 

1210Pendant l'une ou l'autre attente, appuyez sur `Esc` pour reprendre l'invite dans l'entrée sans l'envoyer. Les hooks continuent de s'exécuter.1200Pendant l'une ou l'autre attente, appuyez sur `Esc` pour reprendre l'invite dans l'entrée sans l'envoyer. Les hooks continuent de s'exécuter.

1211 1201 


1220| `source` | Comment la session a démarré : `"startup"` pour les nouvelles sessions, `"resume"` pour les sessions reprises, `"clear"` après `/clear`, `"compact"` après compaction, ou `"fork"` pour une nouvelle session créée à partir d'une session existante |1210| `source` | Comment la session a démarré : `"startup"` pour les nouvelles sessions, `"resume"` pour les sessions reprises, `"clear"` après `/clear`, `"compact"` après compaction, ou `"fork"` pour une nouvelle session créée à partir d'une session existante |

1221| `model` | L'identifiant du modèle actif. Il peut être omis, par exemple après `/clear` ou quand une session est restaurée via la récupération de conversation, donc vérifiez le champ avant de le lire |1211| `model` | L'identifiant du modèle actif. Il peut être omis, par exemple après `/clear` ou quand une session est restaurée via la récupération de conversation, donc vérifiez le champ avant de le lire |

1222| `agent_type` | Le nom de l'agent, présent quand vous démarrez Claude Code avec `claude --agent <name>` |1212| `agent_type` | Le nom de l'agent, présent quand vous démarrez Claude Code avec `claude --agent <name>` |

1223| `session_title` | Le titre de la session actuelle s'il est déjà défini, par exemple via `--name` ou `/rename`. Un hook qui émet `sessionTitle` peut vérifier `session_title` d'abord pour éviter de remplacer un titre que l'utilisateur a défini explicitement |1213| `session_title` | Le titre de session actuel s'il est déjà défini, par exemple via `--name` ou `/rename`. Un hook qui émet `sessionTitle` peut vérifier `session_title` d'abord pour éviter de remplacer un titre que l'utilisateur a défini explicitement |

1224 1214 

1225Quand `source` est `"resume"` ou `"fork"` et que la transcription contient au moins une réponse de Claude, les hooks SessionStart reçoivent également les quatre champs ci-dessous. Votre hook peut les utiliser pour signaler le coût de reprendre une conversation obsolète avant la première requête, par exemple dans un [`systemMessage`](#json-output). Ces champs nécessitent Claude Code v2.1.251 ou ultérieur.1215Quand `source` est `"resume"` ou `"fork"` et que la transcription contient au moins une réponse de Claude, les hooks SessionStart reçoivent également les quatre champs ci-dessous. Votre hook peut les utiliser pour signaler le coût de reprendre une conversation obsolète avant la première requête, par exemple dans un [`systemMessage`](#json-output). Ces champs nécessitent Claude Code v2.1.251 ou ultérieur.

1226 1216 


1258| :- | :- |1248| :- | :- |

1259| `additionalContext` | Chaîne ajoutée au contexte de Claude au début de la conversation, avant la première invite. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) pour savoir comment le texte est livré et ce qu'il faut y mettre |1249| `additionalContext` | Chaîne ajoutée au contexte de Claude au début de la conversation, avant la première invite. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) pour savoir comment le texte est livré et ce qu'il faut y mettre |

1260| `initialUserMessage` | Chaîne utilisée comme premier message utilisateur de la session. S'applique en [mode non-interactif](/docs/fr/headless) avec le drapeau `-p`, où elle devient le premier tour même si aucune invite n'est fournie. Si une invite est fournie, elle suit comme le tour suivant. Contrairement à `additionalContext`, qui s'attache à un tour existant, ceci crée le tour |1250| `initialUserMessage` | Chaîne utilisée comme premier message utilisateur de la session. S'applique en [mode non-interactif](/docs/fr/headless) avec le drapeau `-p`, où elle devient le premier tour même si aucune invite n'est fournie. Si une invite est fournie, elle suit comme le tour suivant. Contrairement à `additionalContext`, qui s'attache à un tour existant, ceci crée le tour |

1261| `sessionTitle` | Définit le titre de la session, avec le même effet que `/rename`. Utilisez pour nommer les sessions automatiquement à partir du dossier de lancement, de la branche git, ou du nom du worktree. S'applique quand `source` est `"startup"`, `"resume"`, ou `"fork"` ; ignoré sur `"clear"` et `"compact"` |1251| `sessionTitle` | Définit le titre de session, avec le même effet que `/rename`. Utilisez pour nommer les sessions automatiquement à partir du dossier de lancement, du nom de branche git, ou du nom de worktree. S'applique quand `source` est `"startup"`, `"resume"`, ou `"fork"` ; ignoré sur `"clear"` et `"compact"` |

1262| `watchPaths` | Tableau de chemins absolus à surveiller pour les événements [FileChanged](#filechanged) pendant cette session |1252| `watchPaths` | Tableau de chemins absolus à surveiller pour les événements [FileChanged](#filechanged) pendant cette session |

1263| `reloadSkills` | Booléen. Quand `true`, Claude Code réanalyse les répertoires [skill](/docs/fr/skills) et command après que les hooks SessionStart se terminent, donc les skills que le hook a installés sont disponibles dans la même session, à partir de la première invite |1253| `reloadSkills` | Booléen. Quand `true`, Claude Code rescanne les répertoires [skill](/docs/fr/skills) et command après que les hooks SessionStart se terminent, donc les skills que le hook a installés sont disponibles dans la même session, à partir de la première invite |

1264 1254 

1265```json theme={null}1255```json theme={null}

1266{1256{


1272}1262}

1273```1263```

1274 1264 

1275Puisque la sortie standard brute atteint déjà Claude pour cet événement, un hook qui charge uniquement du contexte peut imprimer sur la sortie standard directement sans construire JSON. Utilisez la forme JSON quand vous devez combiner du contexte avec d'autres champs comme `sessionTitle`.1265Puisque la sortie standard brute atteint déjà Claude pour cet événement, un hook qui charge uniquement du contexte peut imprimer sur la sortie standard directement sans construire JSON. Utilisez la forme JSON quand vous devez combiner le contexte avec d'autres champs comme `sessionTitle`.

1276 1266 

1277Utilisez `reloadSkills` quand un hook SessionStart installe ou met à jour des skills. La découverte de skills s'exécute normalement avant que les hooks SessionStart se terminent, donc les fichiers que le hook écrit dans `~/.claude/skills/` ou `.claude/skills/` n'apparaîtraient autrement que dans la session suivante. Cet exemple synchronise un référentiel de skills partagé et demande la réanalyse :1267Utilisez `reloadSkills` quand un hook SessionStart installe ou met à jour des skills. La découverte de skills s'exécute normalement avant que les hooks SessionStart se terminent, donc les fichiers que le hook écrit dans `~/.claude/skills/` ou `.claude/skills/` n'apparaîtraient autrement que dans la session suivante. Cet exemple synchronise un référentiel de skills partagé et demande la rescanne :

1278 1268 

1279```bash theme={null}1269```bash theme={null}

1280#!/bin/bash1270#!/bin/bash


1285echo '{"hookSpecificOutput": {"hookEventName": "SessionStart", "reloadSkills": true}}'1275echo '{"hookSpecificOutput": {"hookEventName": "SessionStart", "reloadSkills": true}}'

1286```1276```

1287 1277 

1288L'URL du référentiel est un espace réservé ; remplacez-la par votre propre référentiel de skills. Avec l'espace réservé, le clone échoue et imprime un message `fatal:` sur stderr. Stderr d'un hook SessionStart qui quitte 0 est informatif uniquement, donc la demande `reloadSkills` s'applique toujours.1278L'URL du référentiel est un espace réservé ; remplacez-la par votre propre référentiel de skills. Avec l'espace réservé, le clone échoue et imprime un message `fatal:` sur stderr. Stderr d'un hook SessionStart qui sort 0 est informatif uniquement, donc la demande `reloadSkills` s'applique toujours.

1289 1279 

1290<h4 id="persist-environment-variables">1280<h4 id="persist-environment-variables">

1291 Persister les variables d'environnement1281 Persister les variables d'environnement


1334 Setup1324 Setup

1335</h3>1325</h3>

1336 1326 

1337S'exécute uniquement quand vous lancez Claude Code avec `--init-only`, ou avec `--init` ou `--maintenance` en [mode non-interactif](/docs/fr/headless) avec le drapeau `-p`. Il ne s'exécute pas au démarrage normal. Utilisez-le pour l'installation de dépendances ponctuelles ou le nettoyage programmé que vous déclenchez explicitement à partir de CI ou de scripts, séparé du démarrage normal de la session. Pour l'initialisation par session, utilisez plutôt [SessionStart](#sessionstart).1327S'exécute uniquement quand vous lancez Claude Code avec `--init-only`, ou avec `--init` ou `--maintenance` en [mode non-interactif](/docs/fr/headless) avec le drapeau `-p`. Il ne s'exécute pas au démarrage normal. Utilisez-le pour l'installation de dépendances ponctuelles ou le nettoyage programmé que vous déclenchez explicitement à partir de CI ou de scripts, séparé du démarrage normal de session. Pour l'initialisation par session, utilisez plutôt [SessionStart](#sessionstart).

1338 1328 

1339La valeur du matcher correspond au drapeau CLI qui a déclenché le hook :1329La valeur du matcher correspond au drapeau CLI qui a déclenché le hook :

1340 1330 


1371 Contrôle de décision Setup1361 Contrôle de décision Setup

1372</h4>1362</h4>

1373 1363 

1374Les hooks Setup ne peuvent pas bloquer ; l'exécution continue sur n'importe quel code de sortie. Sur chaque code de sortie, Claude Code rejette les [champs de sortie JSON](#json-output) d'un hook Setup, comme `systemMessage`, `continue`, et `hookSpecificOutput.additionalContext`. Avec `-p`, la sortie standard, la sortie d'erreur, et le code de sortie d'un hook Setup n'apparaissent dans la sortie de la session que comme des événements [`hook_response`](/docs/fr/headless#read-session-metadata) quand vous lancez avec `--output-format stream-json --verbose`.1364Les hooks Setup ne peuvent pas bloquer ; l'exécution continue sur n'importe quel code de sortie. Sur chaque code de sortie, Claude Code rejette les [champs de sortie JSON](#json-output) d'un hook Setup, comme `systemMessage`, `continue`, et `hookSpecificOutput.additionalContext`. Avec `-p`, la sortie standard, stderr, et le code de sortie d'un hook Setup n'apparaissent dans la sortie de la session que comme des événements [`hook_response`](/docs/fr/headless#read-session-metadata) quand vous lancez avec `--output-format stream-json --verbose`.

1375 1365 

1376Les hooks Setup ont accès à `CLAUDE_ENV_FILE`. Les variables écrites dans ce fichier persistent dans les commandes Bash suivantes pour la session, tout comme dans les [hooks SessionStart](#persist-environment-variables). Seuls les hooks `type: "command"` s'exécutent sur `Setup`. Un hook `type: "mcp_tool"` sur `Setup` est toujours ignoré, comme décrit sous [Champs de hook MCP tool](#mcp-tool-hook-fields).1366Les hooks Setup ont accès à `CLAUDE_ENV_FILE`. Les variables écrites dans ce fichier persistent dans les commandes Bash suivantes pour la session, tout comme dans les [hooks SessionStart](#persist-environment-variables). Seuls les hooks `type: "command"` s'exécutent sur `Setup`. Un hook `type: "mcp_tool"` sur `Setup` est toujours ignoré, comme décrit sous [Champs de hook MCP tool](#mcp-tool-hook-fields).

1377 1367 


1379 InstructionsLoaded1369 InstructionsLoaded

1380</h3>1370</h3>

1381 1371 

1382S'exécute quand un fichier `CLAUDE.md` ou `.claude/rules/*.md` est chargé dans le contexte. Cet événement se déclenche au démarrage de la session pour les fichiers chargés avec impatience et à nouveau plus tard quand les fichiers sont chargés avec paresse, par exemple quand Claude accède à un sous-répertoire qui contient un `CLAUDE.md` imbriqué ou quand les règles conditionnelles avec le frontmatter `paths:` correspondent. Le hook ne supporte pas le blocage ou le contrôle de décision. Il s'exécute de manière asynchrone à des fins d'observabilité.1372S'exécute quand un fichier `CLAUDE.md` ou `.claude/rules/*.md` est chargé dans le contexte. Cet événement se déclenche au démarrage de session pour les fichiers chargés avec impatience et à nouveau plus tard quand les fichiers sont chargés avec paresse, par exemple quand Claude accède à un sous-répertoire qui contient un `CLAUDE.md` imbriqué ou quand les règles conditionnelles avec le frontmatter `paths:` correspondent. Le hook ne supporte pas le blocage ou le contrôle de décision. Il s'exécute de manière asynchrone à des fins d'observabilité.

1383 1373 

1384Cet événement ne se déclenche pas quand Claude [lit `AGENTS.md` directement](/docs/fr/memory#agents-md) via le paramètre **Project instructions**. Il se déclenche quand un `CLAUDE.md` importe votre `AGENTS.md`, avec `load_reason` défini à `include` comme pour tout autre fichier importé, et quand `CLAUDE.md` est un lien symbolique vers lui, comme un chargement normal de `CLAUDE.md`.1374Cet événement ne se déclenche pas quand Claude [lit `AGENTS.md` directement](/docs/fr/memory#agents-md) via le paramètre **Project instructions**. Il se déclenche quand un `CLAUDE.md` importe votre `AGENTS.md`, avec `load_reason` défini à `include` comme pour tout autre fichier importé, et quand `CLAUDE.md` est un lien symbolique vers lui, comme un chargement normal de `CLAUDE.md`.

1385 1375 

1386Le matcher s'exécute contre `load_reason`. Par exemple, utilisez `"matcher": "session_start"` pour se déclencher uniquement pour les fichiers chargés au démarrage de la session, ou `"matcher": "path_glob_match|nested_traversal"` pour se déclencher uniquement pour les chargements avec paresse.1376Le matcher s'exécute contre `load_reason`. Par exemple, utilisez `"matcher": "session_start"` pour se déclencher uniquement pour les fichiers chargés au démarrage de session, ou `"matcher": "path_glob_match|nested_traversal"` pour se déclencher uniquement pour les chargements avec paresse.

1387 1377 

1388<h4 id="instructionsloaded-input">1378<h4 id="instructionsloaded-input">

1389 Entrée InstructionsLoaded1379 Entrée InstructionsLoaded


1416 Contrôle de décision InstructionsLoaded1406 Contrôle de décision InstructionsLoaded

1417</h4>1407</h4>

1418 1408 

1419Les hooks InstructionsLoaded n'ont pas de contrôle de décision. Ils ne peuvent pas bloquer ou modifier le chargement des instructions. Claude Code rejette leurs [champs de sortie JSON](#json-output), comme `systemMessage` et `continue`. Utilisez cet événement pour l'audit logging, le suivi de conformité, ou l'observabilité.1409Les hooks InstructionsLoaded n'ont pas de contrôle de décision. Ils ne peuvent pas bloquer ou modifier le chargement d'instructions. Claude Code rejette leurs [champs de sortie JSON](#json-output), comme `systemMessage` et `continue`. Utilisez cet événement pour l'audit logging, le suivi de conformité, ou l'observabilité.

1420 1410 

1421<h3 id="userpromptsubmit">1411<h3 id="userpromptsubmit">

1422 UserPromptSubmit1412 UserPromptSubmit


1428 1418 

1429À part un hook de commande que vous exécutez avec [`async: true`](#run-hooks-in-the-background), un hook de commande, HTTP, ou MCP tool `UserPromptSubmit` qui atteint son délai d'expiration est annulé et sa sortie, y compris tout `additionalContext`, est rejetée. L'invite atteint toujours Claude sans ce contexte. La transcription affiche un avis nommant le hook, le délai d'expiration qui a déclenché, et que la sortie a été rejetée.1419À part un hook de commande que vous exécutez avec [`async: true`](#run-hooks-in-the-background), un hook de commande, HTTP, ou MCP tool `UserPromptSubmit` qui atteint son délai d'expiration est annulé et sa sortie, y compris tout `additionalContext`, est rejetée. L'invite atteint toujours Claude sans ce contexte. La transcription affiche un avis nommant le hook, le délai d'expiration qui a déclenché, et que la sortie a été rejetée.

1430 1420 

1431Un [hook de rappel Agent SDK](/docs/fr/agent-sdk/hooks) sur `UserPromptSubmit` qui atteint son délai d'expiration bloque l'invite avec un message nommant le hook et le délai d'expiration, parce qu'un rappel là peut agir comme une porte de politique qui ne doit pas échouer ouvertement. La session continue. Avant v2.1.208, un délai d'expiration de rappel sur cet événement terminait le tour avec une erreur d'exécution.1421Un hook de rappel [Agent SDK](/docs/fr/agent-sdk/hooks) sur `UserPromptSubmit` qui atteint son délai d'expiration bloque l'invite avec un message nommant le hook et le délai d'expiration, parce qu'un rappel là peut agir comme une porte de politique qui ne doit pas échouer ouvertement. La session continue. Avant v2.1.208, un délai d'expiration de rappel sur cet événement terminait le tour avec une erreur d'exécution.

1432 1422 

1433<h4 id="userpromptsubmit-input">1423<h4 id="userpromptsubmit-input">

1434 Entrée UserPromptSubmit1424 Entrée UserPromptSubmit

1435</h4>1425</h4>

1436 1426 

1437En plus des [champs d'entrée communs](#common-input-fields), les hooks UserPromptSubmit reçoivent le champ `prompt` contenant le texte que l'utilisateur a soumis. Le contenu collé qui s'est effondré à un espace réservé `[Pasted text #N]` arrive développé en place. Dans les sessions où Claude Code [marque le texte collé pour Claude](/docs/fr/terminal-config#how-claude-treats-pasted-text), ce contenu développé se situe entre une ligne `<pasted_content id="…">` et une ligne `</pasted_content id="…">`, donc tenez compte de ces lignes si votre hook analyse l'invite.1427En plus des [champs d'entrée communs](#common-input-fields), les hooks UserPromptSubmit reçoivent le champ `prompt` contenant le texte que l'utilisateur a soumis. Le contenu collé qui s'est effondré en un espace réservé `[Pasted text #N]` arrive développé en place. Dans les sessions où Claude Code [marque le texte collé pour Claude](/docs/fr/terminal-config#how-claude-treats-pasted-text), ce contenu développé se situe entre une ligne `<pasted_content id="…">` et une ligne `</pasted_content id="…">`, donc tenez compte de ces lignes si votre hook analyse l'invite.

1438 1428 

1439```json theme={null}1429```json theme={null}

1440{1430{


1453 1443 

1454Les hooks `UserPromptSubmit` peuvent contrôler si une invite utilisateur est traitée et ajouter du contexte. Tous les [champs de sortie JSON](#json-output) sont disponibles.1444Les hooks `UserPromptSubmit` peuvent contrôler si une invite utilisateur est traitée et ajouter du contexte. Tous les [champs de sortie JSON](#json-output) sont disponibles.

1455 1445 

1456Il y a deux façons d'ajouter du contexte à la conversation sur le code de sortie 0 :1446Il y a deux façons d'ajouter du contexte à la conversation en cas de code de sortie 0 :

1457 1447 

1458* **Sortie standard en texte brut** : Claude Code ajoute la sortie standard qu'il [traite comme du texte brut](#exit-code-0) au contexte de Claude1448* **Sortie standard en texte brut** : Claude Code ajoute la sortie standard qu'il [traite comme du texte brut](#exit-code-0) au contexte de Claude

1459* **JSON avec `additionalContext`** : utilisez le format JSON ci-dessous pour plus de contrôle. Le champ `additionalContext` est ajouté comme contexte1449* **JSON avec `additionalContext`** : utilisez le format JSON ci-dessous pour plus de contrôle. Le champ `additionalContext` est ajouté comme contexte


1467| `decision` | `"block"` empêche l'invite d'être traitée et l'efface du contexte. Omettez pour permettre à l'invite de procéder |1457| `decision` | `"block"` empêche l'invite d'être traitée et l'efface du contexte. Omettez pour permettre à l'invite de procéder |

1468| `reason` | Montré à l'utilisateur quand `decision` est `"block"`. Non ajouté au contexte |1458| `reason` | Montré à l'utilisateur quand `decision` est `"block"`. Non ajouté au contexte |

1469| `additionalContext` | Chaîne ajoutée au contexte de Claude aux côtés de l'invite soumise. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) |1459| `additionalContext` | Chaîne ajoutée au contexte de Claude aux côtés de l'invite soumise. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) |

1470| `sessionTitle` | Définit le titre de la session. Utilisez pour nommer les sessions automatiquement en fonction du contenu de l'invite |1460| `sessionTitle` | Définit le titre de session. Utilisez pour nommer les sessions automatiquement en fonction du contenu de l'invite |

1471| `suppressOriginalPrompt` | Si `true` quand `decision` est `"block"`, omet le texte d'invite original du message de blocage montré à l'utilisateur |1461| `suppressOriginalPrompt` | Si `true` quand `decision` est `"block"`, omet le texte d'invite original du message de blocage montré à l'utilisateur |

1472 1462 

1473Un hook qui bloque en quittant 2 s'achemine de la même façon que `reason` : le message de blocage montre le texte stderr à l'utilisateur, et il n'est pas ajouté au contexte.1463Un hook qui bloque en sortant 2 s'achemine de la même façon que `reason` : le message de blocage montre le texte stderr à l'utilisateur, et il n'est pas ajouté au contexte.

1474 1464 

1475```json theme={null}1465```json theme={null}

1476{1466{


1498 Entrée UserPromptExpansion1488 Entrée UserPromptExpansion

1499</h4>1489</h4>

1500 1490 

1501En plus des [champs d'entrée communs](#common-input-fields), les hooks UserPromptExpansion reçoivent `expansion_type`, `command_name`, `command_args`, `command_source`, et la chaîne `prompt` originale. Le champ `expansion_type` est `slash_command` pour les skills et commandes personnalisées, ou `mcp_prompt` pour les invites du serveur MCP.1491En plus des [champs d'entrée communs](#common-input-fields), les hooks UserPromptExpansion reçoivent `expansion_type`, `command_name`, `command_args`, `command_source`, et la chaîne `prompt` originale. Le champ `expansion_type` est `slash_command` pour les skills et commandes personnalisées, ou `mcp_prompt` pour les prompts du serveur MCP.

1502 1492 

1503```json theme={null}1493```json theme={null}

1504{1494{


1527| `reason` | Montré à l'utilisateur quand `decision` est `"block"` |1517| `reason` | Montré à l'utilisateur quand `decision` est `"block"` |

1528| `additionalContext` | Chaîne ajoutée au contexte de Claude aux côtés de l'invite développée. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) |1518| `additionalContext` | Chaîne ajoutée au contexte de Claude aux côtés de l'invite développée. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) |

1529 1519 

1530Un hook qui bloque en quittant 2 s'achemine de la même façon que `reason` : le message de blocage montre le texte stderr à l'utilisateur.1520Un hook qui bloque en sortant 2 s'achemine de la même façon que `reason` : le message de blocage montre le texte stderr à l'utilisateur.

1531 1521 

1532```json theme={null}1522```json theme={null}

1533{1523{


1552* transformer le texte qu'une application Agent SDK montre à ses utilisateurs1542* transformer le texte qu'une application Agent SDK montre à ses utilisateurs

1553* masquer les clés API ou les noms d'hôtes internes des réponses de Claude1543* masquer les clés API ou les noms d'hôtes internes des réponses de Claude

1554 1544 

1555Claude Code attend chaque lot jusqu'à ce que votre hook retourne, donc gardez le hook rapide. Si le hook échoue ou expire, Claude Code affiche le texte original. Le délai d'expiration par défaut pour cet événement est 10 secondes ; si votre hook a besoin de plus de temps, définissez le champ `timeout` dans l'entrée du hook.1545Claude Code retient chaque lot jusqu'à ce que votre hook retourne, donc gardez le hook rapide. Si le hook échoue ou expire, Claude Code affiche le texte original. Le délai d'expiration par défaut pour cet événement est 10 secondes ; si votre hook a besoin de plus de temps, définissez le champ `timeout` dans l'entrée du hook.

1556 1546 

1557MessageDisplay est affichage uniquement : le texte de remplacement change uniquement ce qui est rendu à l'écran. La transcription et ce que Claude voit conservent le texte original, donc Claude ne voit jamais le remplacement, et le mode verbeux affiche l'original. Le hook reçoit uniquement le texte du message d'assistant, donc les résultats d'outils et le texte que vous tapez s'affichent inchangés.1547MessageDisplay est affichage uniquement : le texte de remplacement change uniquement ce qui est rendu à l'écran. La transcription et ce que Claude voit conservent le texte original, donc Claude ne voit jamais le remplacement, et le mode verbeux montre l'original. Le hook reçoit uniquement le texte du message d'assistant, donc les résultats d'outil et le texte que vous tapez s'affichent inchangés.

1558 1548 

1559MessageDisplay ne supporte pas les matchers et se déclenche pour chaque message d'assistant qui affiche du texte ; les messages sans texte, comme les réponses d'appel d'outil uniquement, ne le déclenchent pas.1549MessageDisplay ne supporte pas les matchers et se déclenche pour chaque message d'assistant qui affiche du texte ; les messages sans texte, comme les réponses d'appel d'outil uniquement, ne le déclenchent pas.

1560 1550 


1569| Champ | Description |1559| Champ | Description |

1570| :- | :- |1560| :- | :- |

1571| `turn_id` | UUID du tour actuel |1561| `turn_id` | UUID du tour actuel |

1572| `message_id` | UUID du message d'assistant en cours d'affichage. Stable à travers chaque lot du même message. Ce n'est pas l'API `msg_…` id, donc il ne peut pas être corrélé avec les ids de message de transcription |1562| `message_id` | UUID du message d'assistant en cours d'affichage. Stable sur chaque lot du même message. Ce n'est pas l'ID API `msg_…`, donc il ne peut pas être corrélé avec les IDs de message de transcription |

1573| `index` | Index de base zéro de ce lot dans le message |1563| `index` | Index de base zéro de ce lot dans le message |

1574| `final` | `true` sur le dernier lot du message. Chaque message a exactement un lot final |1564| `final` | `true` sur le dernier lot du message. Chaque message a exactement un dernier lot |

1575| `delta` | Les lignes nouvellement complétées depuis le lot précédent, y compris les sauts de ligne de fin. Toujours des lignes entières, sauf le lot final qui peut se terminer au milieu d'une ligne. Dans les exécutions interactives, le delta du lot final est vide quand le message se termine sur un saut de ligne, donc traitez `final`, pas un delta non-vide, comme le signal de fin de message. Dans les exécutions Agent SDK et `claude -p`, l'appel unique porte le message entier |1565| `delta` | Les lignes nouvellement complétées depuis le lot précédent, y compris les sauts de ligne de fin. Toujours des lignes entières, sauf le dernier lot qui peut se terminer au milieu d'une ligne. Dans les exécutions interactives, le delta du dernier lot est vide quand le message se termine sur un saut de ligne, donc traitez `final`, pas un delta non-vide, comme le signal de fin de message. Dans les exécutions Agent SDK et `claude -p`, l'appel unique porte le message entier |

1576 1566 

1577```json theme={null}1567```json theme={null}

1578{1568{


1684 1674 

1685S'exécute après que Claude crée les paramètres d'outil et avant de traiter l'appel d'outil. Correspond à n'importe quel nom d'outil sauf `EndConversation` : les outils intégrés comme `Bash`, `PowerShell`, `Edit`, `Write`, `Read`, `Glob`, `Grep`, `Agent`, `Workflow`, `WebFetch`, `WebSearch`, `AskUserQuestion`, et `ExitPlanMode`, et n'importe quels [noms d'outils MCP](#match-mcp-tools).1675S'exécute après que Claude crée les paramètres d'outil et avant de traiter l'appel d'outil. Correspond à n'importe quel nom d'outil sauf `EndConversation` : les outils intégrés comme `Bash`, `PowerShell`, `Edit`, `Write`, `Read`, `Glob`, `Grep`, `Agent`, `Workflow`, `WebFetch`, `WebSearch`, `AskUserQuestion`, et `ExitPlanMode`, et n'importe quels [noms d'outils MCP](#match-mcp-tools).

1686 1676 

1687Pour exécuter un hook quand un fichier spécifique change sur le disque, peu importe ce qui l'a écrit, utilisez [FileChanged](#filechanged) au lieu de correspondre aux outils d'édition de fichiers par nom. Contrairement à PreToolUse, Claude Code exécute les hooks FileChanged après le changement, et ils n'ont pas de contrôle de décision, donc ils ne peuvent pas bloquer l'écriture.1677Pour exécuter un hook quand un fichier spécifique change sur le disque, peu importe ce qui l'a écrit, utilisez [FileChanged](#filechanged) au lieu de correspondre aux outils d'édition de fichier par nom. Contrairement à PreToolUse, Claude Code exécute les hooks FileChanged après le changement, et ils n'ont pas de contrôle de décision, donc ils ne peuvent pas bloquer l'écriture.

1688 1678 

1689<Warning>1679<Warning>

1690 PreToolUse s'exécute uniquement quand Claude appelle un outil. Les fichiers que vous [référencez avec `@` dans votre invite](/docs/fr/common-workflows#reference-files-and-directories) sont ajoutés sans aucun appel d'outil : Claude Code insère leur contenu lors de la construction de l'invite, donc aucun hook PreToolUse ne se déclenche pour eux, y compris les hooks correspondant à `Read`. Pour bloquer des chemins spécifiques des références `@`, utilisez plutôt une [règle de refus `Read`](/docs/fr/permissions#read-and-edit).1680 PreToolUse s'exécute uniquement quand Claude appelle un outil. Les fichiers que vous [référencez avec `@` dans votre invite](/docs/fr/common-workflows#reference-files-and-directories) sont ajoutés sans aucun appel d'outil : Claude Code insère leur contenu lors de la construction de l'invite, donc aucun hook PreToolUse ne se déclenche pour eux, y compris les hooks correspondant à `Read`. Pour bloquer des chemins spécifiques des références `@`, utilisez plutôt une [règle de refus `Read`](/docs/fr/permissions#read-and-edit).


1694 1684 

1695Utilisez [Contrôle de décision PreToolUse](#pretooluse-decision-control) pour permettre, refuser, demander, ou différer l'appel d'outil.1685Utilisez [Contrôle de décision PreToolUse](#pretooluse-decision-control) pour permettre, refuser, demander, ou différer l'appel d'outil.

1696 1686 

1697Un [hook de rappel Agent SDK](/docs/fr/agent-sdk/hooks) sur `PreToolUse` qui dépasse son délai d'expiration bloque l'appel d'outil, et Claude reçoit un résultat d'erreur nommant le délai d'expiration. Un refus explicite retourné par un autre hook prend toujours la priorité.1687Un hook de rappel [Agent SDK](/docs/fr/agent-sdk/hooks) sur `PreToolUse` qui dépasse son délai d'expiration bloque l'appel d'outil, et Claude reçoit un résultat d'erreur nommant le délai d'expiration. Un refus explicite retourné par un autre hook prend toujours la précédence.

1698 1688 

1699<h4 id="pretooluse-input">1689<h4 id="pretooluse-input">

1700 Entrée PreToolUse1690 Entrée PreToolUse


1702 1692 

1703En plus des [champs d'entrée communs](#common-input-fields), les hooks PreToolUse reçoivent `tool_name`, `tool_input`, et `tool_use_id`.1693En plus des [champs d'entrée communs](#common-input-fields), les hooks PreToolUse reçoivent `tool_name`, `tool_input`, et `tool_use_id`.

1704 1694 

1705Pour un [outil MCP](#match-mcp-tools), l'entrée porte également `mcp_server`, un objet avec le `name` du serveur et une `source` qui dit d'où vient la définition du serveur. Les valeurs `source` incluent `plugin`, `sdk`, et les portées de configuration comme `user` et `project`. [`McpServerProvenance`](/docs/fr/agent-sdk/typescript#mcpserverprovenance) dans la référence Agent SDK les énumère tous et dit comment traiter celui que vous ne reconnaissez pas. Basez les décisions de confiance sur `source` plutôt que sur `name` ou le préfixe de nom d'outil `mcp__<server>__`. Le champ `mcp_server` nécessite Claude Code v2.1.274 ou ultérieur.1695Pour un [outil MCP](#match-mcp-tools), l'entrée porte également `mcp_server`, un objet avec le `name` du serveur et une `source` qui dit d'où vient la définition du serveur. Les valeurs `source` incluent `plugin`, `sdk`, et les portées de configuration comme `user` et `project`. [`McpServerProvenance`](/docs/fr/agent-sdk/typescript#mcpserverprovenance) dans la référence Agent SDK les énumère toutes et dit comment traiter une que vous ne reconnaissez pas. Basez les décisions de confiance sur `source` plutôt que sur `name` ou le préfixe de nom d'outil `mcp__<server>__`. Le champ `mcp_server` nécessite Claude Code v2.1.274 ou ultérieur.

1706 1696 

1707Pour les outils de fichier `Write`, `Edit`, et `Read`, `tool_input.file_path` est toujours absolu :1697Pour les outils de fichier `Write`, `Edit`, et `Read`, `tool_input.file_path` est toujours absolu :

1708 1698 


1742| `timeout` | number | `120000` | Délai d'expiration optionnel en millisecondes. Les valeurs au-dessus du [maximum](/docs/fr/tools-reference#bash-tool-behavior) sont réduites au maximum plutôt que rejetées |1732| `timeout` | number | `120000` | Délai d'expiration optionnel en millisecondes. Les valeurs au-dessus du [maximum](/docs/fr/tools-reference#bash-tool-behavior) sont réduites au maximum plutôt que rejetées |

1743| `run_in_background` | boolean | `false` | Si la commande doit s'exécuter en arrière-plan |1733| `run_in_background` | boolean | `false` | Si la commande doit s'exécuter en arrière-plan |

1744 1734 

1745Quand une commande Bash change des fichiers dans un référentiel Git, Claude Code peut enregistrer ce qui a changé. Il enregistre les changements dans chaque mode de permission quand le paramètre [`bashEditDiffEnabled`](/docs/fr/settings-reference#basheditdiffenabled) active l'enregistrement ; l'entrée de ce paramètre dit quels fichiers peuvent le définir. Sinon, il les enregistre uniquement en mode auto et en mode `bypassPermissions`, et uniquement quand Claude Code dirige Claude à éditer des fichiers via Bash. Définissez `bashEditDiffEnabled` à `false` pour désactiver l'enregistrement. Les commandes en arrière-plan et les commandes en lecture seule ne portent pas de diff.1735Quand une commande Bash change des fichiers dans un référentiel Git, Claude Code peut enregistrer ce qui a changé. Il enregistre les changements dans chaque mode de permission quand le paramètre [`bashEditDiffEnabled`](/docs/fr/settings-reference#basheditdiffenabled) active l'enregistrement ; l'entrée de ce paramètre dit quels fichiers peuvent le définir. Sinon, il les enregistre uniquement en mode auto et mode `bypassPermissions`, et uniquement quand Claude Code dirige Claude à éditer des fichiers via Bash. Définissez `bashEditDiffEnabled` à `false` pour désactiver l'enregistrement. Les commandes en arrière-plan et les commandes en lecture seule ne portent pas de diff.

1746 1736 

1747Votre [hook PostToolUse](#posttooluse) reçoit alors les fichiers modifiés dans `tool_response.bashEditDiff`. La liste couvre ce qui a changé sous le référentiel pendant que la commande s'exécutait. Les fichiers que Git ignore et les fichiers dans les sous-modules ne sont pas listés. Nécessite Claude Code v2.1.269 ou ultérieur.1737Votre hook [PostToolUse](#posttooluse) reçoit alors les fichiers modifiés dans `tool_response.bashEditDiff`. La liste couvre ce qui a changé sous le référentiel pendant que la commande s'exécutait. Les fichiers que Git ignore et les fichiers dans les sous-modules ne sont pas listés. Nécessite Claude Code v2.1.269 ou ultérieur.

1748 1738 

1749<Note>1739<Note>

1750 La liste est au mieux un effort et en bêta publique. Claude Code peut manquer un changement, inclure un fichier qu'un autre processus a changé au même moment, ou s'arrêter à ses limites de taille. La forme du champ peut changer. Utilisez la liste pour trouver ce à examiner, pas pour appliquer une politique.1740 La liste est au mieux un effort et en bêta publique. Claude Code peut manquer un changement, inclure un fichier qu'un autre processus a changé au même moment, ou s'arrêter à ses limites de taille. La forme du champ peut changer. Utilisez la liste pour trouver ce à examiner, pas pour appliquer une politique.


1806| `file_path` | string | `"/path/to/file.txt"` | Chemin absolu du fichier à éditer |1796| `file_path` | string | `"/path/to/file.txt"` | Chemin absolu du fichier à éditer |

1807| `old_string` | string | `"original text"` | Texte à trouver et remplacer |1797| `old_string` | string | `"original text"` | Texte à trouver et remplacer |

1808| `new_string` | string | `"replacement text"` | Texte de remplacement |1798| `new_string` | string | `"replacement text"` | Texte de remplacement |

1809| `replace_all` | boolean | `false` | Si tous les occurrences doivent être remplacées |1799| `replace_all` | boolean | `false` | Si toutes les occurrences doivent être remplacées |

1810 1800 

1811<h5 id="read">1801<h5 id="read">

1812 Read1802 Read


1882| `subagent_type` | string | `"Explore"` | Type d'agent spécialisé à utiliser |1872| `subagent_type` | string | `"Explore"` | Type d'agent spécialisé à utiliser |

1883| `model` | string | `"sonnet"` | Alias de modèle optionnel pour remplacer le défaut |1873| `model` | string | `"sonnet"` | Alias de modèle optionnel pour remplacer le défaut |

1884 1874 

1885Quand un appel Agent au premier plan se termine, votre [hook PostToolUse](#posttooluse) reçoit le résultat du sous-agent et la télémétrie d'exécution dans `tool_response`. Lisez ces champs pour inspecter l'exécution ; pour les totalisations de tokens et de coûts entre les sous-agents, utilisez les [compteurs de tokens et de coûts](/docs/fr/monitoring-usage#token-counter) filtrés à `query_source` `"subagent"`, puisque `totalTokens` et `usage` couvrent uniquement la requête finale :1875Quand un appel Agent au premier plan se termine, votre hook [PostToolUse](#posttooluse) reçoit le résultat du sous-agent et la télémétrie d'exécution dans `tool_response`. Lisez ces champs pour inspecter l'exécution ; pour les cumuls de token et de coût entre les sous-agents, utilisez les [compteurs de token et de coût](/docs/fr/monitoring-usage#token-counter) filtrés à `query_source` `"subagent"`, puisque `totalTokens` et `usage` couvrent uniquement la requête finale :

1886 1876 

1887| Champ | Type | Exemple | Description |1877| Champ | Type | Exemple | Description |

1888| :- | :- | :- | :- |1878| :- | :- | :- | :- |

1889| `status` | string | `"completed"` | `"completed"` pour les sous-agents au premier plan, `"async_launched"` pour les sous-agents en arrière-plan. À partir de v2.1.198, les sous-agents s'exécutent en arrière-plan par défaut, donc un `run_in_background` omis produit également `"async_launched"` |1879| `status` | string | `"completed"` | `"completed"` pour les sous-agents au premier plan, `"async_launched"` pour les sous-agents en arrière-plan. À partir de v2.1.198, les sous-agents s'exécutent en arrière-plan par défaut, donc un `run_in_background` omis produit également `"async_launched"` |

1890| `agentId` | string | `"a4d2c8f1e0b3a297"` | Identifiant pour l'exécution du sous-agent |1880| `agentId` | string | `"a4d2c8f1e0b3a297"` | Identifiant pour l'exécution du sous-agent |

1891| `content` | array | `[{"type": "text", "text": "Found 12 endpoints..."}]` | Les blocs de texte final du sous-agent, ou, pour un sous-agent dont le rapport passe par `SubagentHandback`, une brève note à ce sujet à leur place |1881| `content` | array | `[{"type": "text", "text": "Found 12 endpoints..."}]` | Les blocs de texte finaux du sous-agent, ou, pour un sous-agent dont le rapport passe par `SubagentHandback`, une brève note à ce sujet à leur place |

1892| `resolvedModel` | string | `"claude-sonnet-4-5"` | Modèle sur lequel le sous-agent a démarré, qui peut différer du modèle demandé |1882| `resolvedModel` | string | `"claude-sonnet-4-5"` | Modèle sur lequel le sous-agent a démarré, qui peut différer du modèle demandé |

1893| `modelsUsed` | array | `["claude-sonnet-4-5", "claude-haiku-4-5"]` | Modèles utilisés dans l'ordre, avec les répétitions consécutives effondrées ; défini uniquement quand le modèle a été échangé en cours d'exécution. Nécessite Claude Code v2.1.212 ou ultérieur |1883| `modelsUsed` | array | `["claude-sonnet-4-5", "claude-haiku-4-5"]` | Modèles utilisés dans l'ordre, avec les répétitions consécutives effondrées ; défini uniquement quand le modèle a été échangé en cours d'exécution. Nécessite Claude Code v2.1.212 ou ultérieur |

1894| `totalTokens` | number | `12450` | Nombre de tokens de la requête API finale du sous-agent : tokens d'entrée, de sortie, et de cache combinés. Ce n'est pas un total sur toute l'exécution |1884| `totalTokens` | number | `12450` | Nombre de tokens de la requête API finale du sous-agent : tokens d'entrée, de sortie, et de cache combinés. Ce n'est pas un total sur toute l'exécution |

1895| `totalDurationMs` | number | `48211` | Durée d'horloge murale de l'exécution du sous-agent |1885| `totalDurationMs` | number | `48211` | Durée d'horloge murale de l'exécution du sous-agent |

1896| `totalToolUseCount` | number | `7` | Nombre d'appels d'outil que le sous-agent a effectués |1886| `totalToolUseCount` | number | `7` | Nombre d'appels d'outil que le sous-agent a effectués |

1897| `usage` | object | `{"input_tokens": 8320, ...}` | Ventilation des tokens par type de la requête API finale : `input_tokens`, `output_tokens`, `cache_creation_input_tokens`, `cache_read_input_tokens` |1887| `usage` | object | `{"input_tokens": 8320, ...}` | Ventilation de token par type de la requête API finale : `input_tokens`, `output_tokens`, `cache_creation_input_tokens`, `cache_read_input_tokens` |

1898 1888 

1899Sur Claude Code v2.1.271 ou ultérieur, un sous-agent qui s'exécute avec l'outil [`SubagentHandback`](/docs/fr/tools-reference), que Claude Code fournit en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), livre son rapport via cet outil plutôt que de le retourner comme texte. Le champ `content` de son résultat `completed` porte alors une brève note à ce sujet plutôt que le rapport lui-même. Pour lire le rapport, correspondez à un hook `PreToolUse` ou `PostToolUse` sur `SubagentHandback` et lisez `tool_input.message`.1889Sur Claude Code v2.1.271 ou ultérieur, un sous-agent qui s'exécute avec l'outil [`SubagentHandback`](/docs/fr/tools-reference), que Claude Code fournit en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), livre son rapport via cet outil plutôt que de le retourner comme texte. Le champ `content` de son résultat `completed` porte alors une brève note à ce sujet plutôt que le rapport lui-même. Pour lire le rapport, correspondez à un hook `PreToolUse` ou `PostToolUse` sur `SubagentHandback` et lisez `tool_input.message`.

1900 1890 

1901Pour les sous-agents en arrière-plan, l'outil retourne quand la tâche passe en arrière-plan, donc `tool_response` ne porte pas de champs d'utilisation : un lancement en arrière-plan retourne immédiatement, et une tâche au premier plan que Claude Code met en arrière-plan en cours d'exécution retourne à cette transition. Il a `status: "async_launched"`, `agentId`, `description`, `prompt`, `outputFile`, et `resolvedModel`.1891Pour les sous-agents en arrière-plan, l'outil retourne quand la tâche passe en arrière-plan, donc `tool_response` ne porte pas de champs d'utilisation : un lancement en arrière-plan retourne immédiatement, et une tâche au premier plan que Claude Code met en arrière-plan en cours d'exécution retourne à cette transition. Il a `status: "async_launched"`, `agentId`, `description`, `prompt`, `outputFile`, et `resolvedModel`.

1902 1892 

1903Sur une réponse `completed`, `resolvedModel` nomme le modèle sur lequel le sous-agent a démarré, qui peut différer de la valeur `model` dans `tool_input`, comme quand `availableModels` ou un autre remplacement s'applique. Sur une réponse `async_launched`, `resolvedModel` nomme le modèle en utilisation quand l'agent est passé en arrière-plan, donc un échange qui s'est produit avant la mise en arrière-plan est reflété là. Le comportement `modelsUsed` et `resolvedModel` au moment de la mise en arrière-plan nécessitent Claude Code v2.1.212 ou ultérieur.1893Sur une réponse `completed`, `resolvedModel` nomme le modèle sur lequel le sous-agent a démarré, qui peut différer de la valeur `model` dans `tool_input`, comme quand `availableModels` ou un autre remplacement s'applique. Sur une réponse `async_launched`, `resolvedModel` nomme le modèle en utilisation quand l'agent a passé en arrière-plan, donc un échange qui s'est produit avant la mise en arrière-plan est reflété là. Le comportement `modelsUsed` et `resolvedModel` au moment de la mise en arrière-plan nécessitent Claude Code v2.1.212 ou ultérieur.

1904 1894 

1905<a id="askuserquestion" />1895<a id="askuserquestion" />

1906 1896 


1913| Champ | Type | Exemple | Description |1903| Champ | Type | Exemple | Description |

1914| :- | :- | :- | :- |1904| :- | :- | :- | :- |

1915| `questions` | array | `[{"question": "Which framework?", "header": "Framework", "options": [{"label": "React"}], "multiSelect": false}]` | Questions à présenter, chacune avec une chaîne `question`, un court `header`, un tableau `options`, et un drapeau `multiSelect` optionnel |1905| `questions` | array | `[{"question": "Which framework?", "header": "Framework", "options": [{"label": "React"}], "multiSelect": false}]` | Questions à présenter, chacune avec une chaîne `question`, un court `header`, un tableau `options`, et un drapeau `multiSelect` optionnel |

1916| `answers` | object | `{"Which framework?": "React"}` | Optionnel. Mappe le texte de la question à l'étiquette de l'option sélectionnée. Les réponses multi-sélection joignent les étiquettes avec des virgules. Claude ne définit pas ce champ ; fournissez-le via `updatedInput` pour répondre par programmation |1906| `answers` | object | `{"Which framework?": "React"}` | Optionnel. Mappe le texte de la question à l'étiquette d'option sélectionnée. Les réponses multi-sélection joignent les étiquettes avec des virgules. Claude ne définit pas ce champ ; fournissez-le via `updatedInput` pour répondre par programmation |

1917 1907 

1918<h5 id="exitplanmode">1908<h5 id="exitplanmode">

1919 ExitPlanMode1909 ExitPlanMode

1920</h5>1910</h5>

1921 1911 

1922Présente un plan et demande à l'utilisateur de l'approuver avant que Claude quitte le [mode plan](/docs/fr/permission-modes#analyze-before-you-edit-with-plan-mode). Claude écrit le plan dans un fichier sur le disque avant d'appeler l'outil, donc le `tool_input` littéral du modèle est généralement vide. Claude Code injecte le contenu du plan et le chemin du fichier avant de passer l'entrée aux hooks.1912Présente un plan et demande à l'utilisateur de l'approuver avant que Claude quitte le [mode plan](/docs/fr/permission-modes#analyze-before-you-edit-with-plan-mode). Claude écrit le plan dans un fichier sur le disque avant d'appeler l'outil, donc l'`tool_input` littéral du modèle est généralement vide. Claude Code injecte le contenu du plan et le chemin du fichier avant de passer l'entrée aux hooks.

1923 1913 

1924| Champ | Type | Exemple | Description |1914| Champ | Type | Exemple | Description |

1925| :- | :- | :- | :- |1915| :- | :- | :- | :- |


1937 1927 

1938| Champ | Description |1928| Champ | Description |

1939| :- | :- |1929| :- | :- |

1940| `permissionDecision` | `"allow"` ignore l'invite de permission, sauf pour les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves) et pour `AskUserQuestion` et `ExitPlanMode`, qui ont besoin de [`updatedInput` associé](#allow-with-updatedinput). `"deny"` empêche l'appel d'outil. `"ask"` invite l'utilisateur à confirmer. `"defer"` quitte proprement pour que l'outil puisse être repris plus tard. Les [règles de refus et de demande](/docs/fr/permissions#manage-permissions) sont toujours évaluées indépendamment de ce que le hook retourne |1930| `permissionDecision` | `"allow"` ignore l'invite de permission, sauf pour les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves) et pour `AskUserQuestion` et `ExitPlanMode`, qui ont besoin de [`updatedInput` associé à lui](#allow-with-updatedinput). `"deny"` empêche l'appel d'outil. `"ask"` invite l'utilisateur à confirmer. `"defer"` quitte proprement pour que l'outil puisse être repris plus tard. Les [règles de refus et de demande](/docs/fr/permissions#manage-permissions) sont toujours évaluées indépendamment de ce que le hook retourne |

1941| `permissionDecisionReason` | Pour `"allow"` et `"ask"`, montré à l'utilisateur mais pas à Claude. Pour `"deny"`, montré à Claude. Pour `"defer"`, ignoré |1931| `permissionDecisionReason` | Pour `"ask"`, montré à l'utilisateur mais pas Claude. Pour `"deny"`, montré à Claude. Pour `"allow"` et `"defer"`, écrit au [journal de débogage](#debug-hooks) uniquement |

1942| `updatedInput` | Modifie les paramètres d'entrée de l'outil avant l'exécution. Remplace l'objet d'entrée entier, donc incluez les champs inchangés aux côtés des champs modifiés. Claude Code évalue les règles de permission et l'éligibilité de [mise en arrière-plan automatique](/docs/fr/tools-reference#background-commands) d'une commande Bash contre l'entrée que votre hook retourne, pas l'entrée que Claude a envoyée. Combinez avec `"allow"` pour approuver automatiquement, ou `"ask"` pour montrer l'entrée modifiée à l'utilisateur. Pour `"defer"`, ignoré |1932| `updatedInput` | Modifie les paramètres d'entrée de l'outil avant l'exécution. Remplace l'objet d'entrée entier, donc incluez les champs inchangés aux côtés des champs modifiés. Claude Code évalue les règles de permission et l'[éligibilité de mise en arrière-plan automatique](/docs/fr/tools-reference#background-commands) d'une commande Bash contre l'entrée que votre hook retourne, pas l'entrée que Claude a envoyée. Combinez avec `"allow"` pour approuver automatiquement, ou `"ask"` pour montrer l'entrée modifiée à l'utilisateur. Pour `"defer"`, ignoré |

1943| `additionalContext` | Chaîne ajoutée au contexte de Claude aux côtés du résultat d'outil. Ignoré quand `permissionDecision` est `"defer"`. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) |1933| `additionalContext` | Chaîne ajoutée au contexte de Claude aux côtés du résultat d'outil. Ignoré quand `permissionDecision` est `"defer"`. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) |

1944 1934 

1945Quand plusieurs hooks PreToolUse retournent des décisions différentes, la priorité est `deny` > `defer` > `ask` > `allow`.1935Quand plusieurs hooks PreToolUse retournent des décisions différentes, la précédence est `deny` > `defer` > `ask` > `allow`.

1946 1936 

1947Un hook qui bloque en quittant 2 s'achemine de la même façon que `"deny"` : Claude voit le message stderr comme la raison du refus.1937Un hook qui bloque en sortant 2 s'achemine de la même façon que `"deny"` : Claude voit le message stderr comme la raison du refus.

1948 1938 

1949Quand un hook retourne `"ask"`, l'invite de permission affichée à l'utilisateur inclut une étiquette identifiant d'où vient le hook : `[settings]` pour un hook de n'importe quel fichier de paramètres ou du frontmatter d'agent, `[plugin:<name>]` pour le hook d'un plugin, ou `[skill]` pour un hook du frontmatter de skill. Cela aide les utilisateurs à comprendre quelle source de configuration demande une confirmation.1939Quand un hook retourne `"ask"`, l'invite de permission affichée à l'utilisateur inclut une étiquette identifiant d'où vient le hook : `[settings]` pour un hook de n'importe quel fichier de paramètres ou du frontmatter d'agent, `[plugin:<name>]` pour le hook d'un plugin, ou `[skill]` pour un hook du frontmatter de skill. Cela aide les utilisateurs à comprendre quelle source de configuration demande la confirmation.

1950 1940 

1951Un `"ask"` d'un hook force également une invite de permission en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) : le classificateur peut toujours refuser l'appel d'outil, mais il ne peut pas approuver l'appel silencieusement. Avant v2.1.211, le classificateur pouvait approuver une commande Bash s'exécutant en dehors du [sandbox](/docs/fr/sandboxing) sans montrer l'invite que le hook a demandée ; le classificateur appliquait toujours ses propres règles de sécurité à cette commande, et un refus de hook était toujours honoré.1941Un `"ask"` d'un hook force également une invite de permission en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) : le classificateur peut toujours refuser l'appel d'outil, mais il ne peut pas approuver l'appel silencieusement. Avant v2.1.211, le classificateur pouvait approuver une commande Bash s'exécutant en dehors du [sandbox](/docs/fr/sandboxing) sans montrer l'invite que le hook a demandée ; le classificateur appliquait toujours ses propres règles de sécurité à cette commande, et un refus de hook `"deny"` était toujours honoré.

1952 1942 

1953```json theme={null}1943```json theme={null}

1954{1944{


1968 1958 

1969En [mode non-interactif](/docs/fr/headless) avec le drapeau `-p`, Claude Code offre `AskUserQuestion` et `ExitPlanMode` uniquement quand l'exécution a un [hôte de permission](/docs/fr/headless#turn-off-permission-prompts-in-unattended-runs) pour recevoir l'invite, comme un rappel `canUseTool` d'Agent SDK. Ces outils nécessitent l'interaction de l'utilisateur. Retourner `permissionDecision: "allow"` avec `updatedInput` satisfait cette exigence : le hook lit l'entrée de l'outil depuis stdin, collecte la réponse via votre propre interface utilisateur, et la retourne dans `updatedInput` pour que l'outil s'exécute sans inviter. Retourner `"allow"` seul n'est pas suffisant pour ces outils. Pour `AskUserQuestion`, renvoyez le tableau `questions` original et ajoutez un objet [`answers`](#askuserquestion) mappant le texte de chaque question à la réponse choisie.1959En [mode non-interactif](/docs/fr/headless) avec le drapeau `-p`, Claude Code offre `AskUserQuestion` et `ExitPlanMode` uniquement quand l'exécution a un [hôte de permission](/docs/fr/headless#turn-off-permission-prompts-in-unattended-runs) pour recevoir l'invite, comme un rappel `canUseTool` d'Agent SDK. Ces outils nécessitent l'interaction de l'utilisateur. Retourner `permissionDecision: "allow"` avec `updatedInput` satisfait cette exigence : le hook lit l'entrée de l'outil depuis stdin, collecte la réponse via votre propre interface utilisateur, et la retourne dans `updatedInput` pour que l'outil s'exécute sans inviter. Retourner `"allow"` seul n'est pas suffisant pour ces outils. Pour `AskUserQuestion`, renvoyez le tableau `questions` original et ajoutez un objet [`answers`](#askuserquestion) mappant le texte de chaque question à la réponse choisie.

1970 1960 

1971À partir de v2.1.199, un outil MCP dont le serveur le marque avec [`_meta["anthropic/requiresUserInteraction"]`](/docs/fr/mcp#require-approval-for-a-specific-tool) est plus strict : un hook ne peut pas ignorer son invite d'approbation avec `"allow"`, avec ou sans `updatedInput`, parce que Claude Code ne peut pas confirmer que le hook a collecté l'interaction que l'outil a besoin.1961À partir de v2.1.199, un outil MCP dont le serveur le marque avec [`_meta["anthropic/requiresUserInteraction"]`](/docs/fr/mcp#require-approval-for-a-specific-tool) est plus strict : un hook ne peut pas ignorer son invite d'approbation avec `"allow"`, avec ou sans `updatedInput`, parce que Claude Code ne peut pas confirmer que le hook a collecté l'interaction que l'outil nécessite.

1972 1962 

1973<Note>1963<Note>

1974 PreToolUse utilisait auparavant les champs `decision` et `reason` de haut niveau, mais ceux-ci sont dépréciés pour cet événement. Utilisez plutôt `hookSpecificOutput.permissionDecision` et `hookSpecificOutput.permissionDecisionReason`. Les valeurs dépréciées `"approve"` et `"block"` correspondent à `"allow"` et `"deny"` respectivement. D'autres événements comme PostToolUse et Stop continuent d'utiliser `decision` et `reason` de haut niveau comme leur format actuel.1964 PreToolUse utilisait auparavant les champs `decision` et `reason` de haut niveau, mais ceux-ci sont dépréciés pour cet événement. Utilisez plutôt `hookSpecificOutput.permissionDecision` et `hookSpecificOutput.permissionDecisionReason`. Les valeurs dépréciées `"approve"` et `"block"` correspondent à `"allow"` et `"deny"` respectivement. D'autres événements comme PostToolUse et Stop continuent d'utiliser `decision` et `reason` de haut niveau comme leur format actuel.


1980 1970 

1981`"defer"` est pour les intégrations qui exécutent `claude -p` comme un sous-processus et lisent sa sortie JSON, comme une application Agent SDK ou une interface utilisateur personnalisée construite au-dessus de Claude Code. Cela permet à ce processus appelant de mettre en pause Claude à un appel d'outil, de collecter l'entrée via sa propre interface, et de reprendre où il s'était arrêté. Claude Code honore cette valeur uniquement en [mode non-interactif](/docs/fr/headless) avec le drapeau `-p`. Dans les sessions interactives, il enregistre un avertissement et ignore le résultat du hook.1971`"defer"` est pour les intégrations qui exécutent `claude -p` comme un sous-processus et lisent sa sortie JSON, comme une application Agent SDK ou une interface utilisateur personnalisée construite au-dessus de Claude Code. Cela permet à ce processus appelant de mettre en pause Claude à un appel d'outil, de collecter l'entrée via sa propre interface, et de reprendre où il s'était arrêté. Claude Code honore cette valeur uniquement en [mode non-interactif](/docs/fr/headless) avec le drapeau `-p`. Dans les sessions interactives, il enregistre un avertissement et ignore le résultat du hook.

1982 1972 

1983L'outil `AskUserQuestion` est le cas typique : Claude veut poser une question à l'utilisateur, mais il n'y a pas de terminal pour répondre. Une exécution `-p` offre `AskUserQuestion` uniquement quand elle a un [hôte de permission](/docs/fr/headless#turn-off-permission-prompts-in-unattended-runs), comme un outil MCP que vous passez avec `--permission-prompt-tool`, donc commencez l'exécution avec un. Le aller-retour fonctionne comme ceci :1973L'outil `AskUserQuestion` est le cas typique : Claude veut poser une question à l'utilisateur, mais il n'y a pas de terminal pour répondre. Une exécution `-p` offre `AskUserQuestion` uniquement quand elle a un [hôte de permission](/docs/fr/headless#turn-off-permission-prompts-in-unattended-runs), comme un outil MCP que vous passez avec `--permission-prompt-tool`, donc commencez l'exécution avec un. L'aller-retour fonctionne comme ceci :

1984 1974 

19851. Claude appelle `AskUserQuestion`. Le hook `PreToolUse` se déclenche.19751. Claude appelle `AskUserQuestion`. Le hook `PreToolUse` se déclenche.

19862. Le hook retourne `permissionDecision: "defer"`. L'outil ne s'exécute pas. Le processus quitte avec `stop_reason: "tool_deferred"` et l'appel d'outil en attente préservé dans la transcription.19762. Le hook retourne `permissionDecision: "defer"`. L'outil ne s'exécute pas. Le processus quitte avec `stop_reason: "tool_deferred"` et l'appel d'outil en attente préservé dans la transcription.


19884. Le processus appelant exécute `claude -p --resume <session-id>` avec le même hôte de permission. Le même appel d'outil déclenche `PreToolUse` à nouveau.19784. Le processus appelant exécute `claude -p --resume <session-id>` avec le même hôte de permission. Le même appel d'outil déclenche `PreToolUse` à nouveau.

19895. Le hook retourne `permissionDecision: "allow"` avec la réponse dans `updatedInput`. L'outil s'exécute et Claude continue.19795. Le hook retourne `permissionDecision: "allow"` avec la réponse dans `updatedInput`. L'outil s'exécute et Claude continue.

1990 1980 

1991Le champ `deferred_tool_use` porte l'`id`, le `name`, et l'`input` de l'outil. L'`input` est les paramètres que Claude a générés pour l'appel d'outil, capturés avant l'exécution :1981Le champ `deferred_tool_use` porte l'`id` de l'outil, le `name`, et l'`input`. L'`input` est les paramètres que Claude a générés pour l'appel d'outil, capturés avant l'exécution :

1992 1982 

1993```json theme={null}1983```json theme={null}

1994{1984{


2004}1994}

2005```1995```

2006 1996 

2007Il n'y a pas de délai d'expiration ou de limite de tentatives. La session reste sur le disque jusqu'à ce que vous la repreniez, soumise au [balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically) `cleanupPeriodDays`, qui supprime les fichiers de session après 30 jours par défaut, en suivant les [règles du balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically). Si la réponse n'est pas prête quand vous reprenez, le hook peut retourner `"defer"` à nouveau et le processus quitte de la même façon. Le processus appelant contrôle quand casser la boucle en retournant finalement `"allow"` ou `"deny"` du hook.1997Il n'y a pas de délai d'expiration ou de limite de tentatives. La session reste sur le disque jusqu'à ce que vous la repreniez, soumise à la [balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically) de [`cleanupPeriodDays`](/docs/fr/settings-reference#cleanupperioddays), qui supprime les fichiers de session après 30 jours par défaut, en suivant les [règles de balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically). Si la réponse n'est pas prête quand vous reprenez, le hook peut retourner `"defer"` à nouveau et le processus quitte de la même façon. Le processus appelant contrôle quand casser la boucle en retournant finalement `"allow"` ou `"deny"` du hook.

2008 1998 

2009`"defer"` fonctionne uniquement quand Claude effectue un seul appel d'outil dans le tour. Si Claude effectue plusieurs appels d'outil à la fois, `"defer"` est ignoré avec un avertissement et l'outil procède via le flux de permission normal. La contrainte existe parce que la reprise ne peut réexécuter qu'un seul outil : il n'y a aucun moyen de différer un appel d'un lot sans laisser les autres non résolus.1999`"defer"` fonctionne uniquement quand Claude effectue un seul appel d'outil dans le tour. Si Claude effectue plusieurs appels d'outil à la fois, `"defer"` est ignoré avec un avertissement et l'outil procède à travers le flux de permission normal. La contrainte existe parce que la reprise ne peut relancer qu'un seul outil : il n'y a aucun moyen de différer un appel d'un lot sans laisser les autres non résolus.

2010 2000 

2011Si l'outil différé n'est plus disponible quand vous reprenez, le processus quitte avec `stop_reason: "tool_deferred_unavailable"` et `is_error: true` avant que le hook se déclenche. Cela se produit quand un serveur MCP qui a fourni l'outil n'est pas connecté pour la session reprise. La charge utile `deferred_tool_use` est toujours incluse pour que vous puissiez identifier quel outil a disparu.2001Si l'outil différé n'est plus disponible quand vous reprenez, le processus quitte avec `stop_reason: "tool_deferred_unavailable"` et `is_error: true` avant que le hook se déclenche. Cela se produit quand un serveur MCP qui a fourni l'outil n'est pas connecté pour la session reprise. La charge utile `deferred_tool_use` est toujours incluse pour que vous puissiez identifier quel outil a disparu.

2012 2002 

2013<Note>2003<Note>

2014 Pour reprendre une session différée en mode plan, passez [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) avec `--resume` pour que Claude Code puisse présenter le plan pour approbation. Sans cela, Claude Code ne restaure pas le mode plan. Nécessite Claude Code v2.1.246 ou ultérieur.2004 Pour reprendre une session différée en mode plan, passez [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) avec `--resume` pour que Claude Code puisse présenter le plan pour approbation. Si vous passez certains autres drapeaux de lancement, l'exécution reprise ne retourne pas au mode plan ; voir [Reprendre en mode plan avec `-p`](/docs/fr/sessions#resume-in-plan-mode-with-p). Nécessite Claude Code v2.1.246 ou ultérieur.

2015 2005 

2016 Quand vous reprenez avec `-p`, Claude Code ne restaure aucun autre mode de permission stocké. Il démarre l'exécution dans le mode de permission qu'une nouvelle exécution `claude -p` démarrerait, donc passez `--permission-mode` ou `--dangerously-skip-permissions` à nouveau si la session différée en utilisait un. Quand vous reprenez avec `claude --resume <session-id>` sans `-p`, Claude Code restaure le mode de permission stocké, avec les exceptions listées dans [mode de permission à la reprise](/docs/fr/sessions#permission-mode-on-resume).2006 Quand vous reprenez avec `-p`, Claude Code ne restaure aucun autre mode de permission stocké. Il démarre l'exécution dans le mode de permission qu'une nouvelle exécution `claude -p` démarrerait, donc passez `--permission-mode` ou `--dangerously-skip-permissions` à nouveau si la session différée en utilisait un. Quand vous reprenez avec `claude --resume <session-id>` sans `-p`, Claude Code restaure le mode de permission stocké, avec les exceptions listées dans [mode de permission à la reprise](/docs/fr/sessions#permission-mode-on-resume).

2017</Note>2007</Note>


2035 2025 

2036Les hooks PermissionRequest reçoivent les champs `tool_name` et `tool_input` comme les hooks PreToolUse, mais sans `tool_use_id`. Pour un outil MCP, ils reçoivent également l'objet [`mcp_server`](#pretooluse-input). Un tableau optionnel `permission_suggestions` contient les [mises à jour de permission](#permission-update-entries) que Claude Code suggère pour cette requête, comme ajouter une règle d'autorisation ou changer le mode de permission.2026Les hooks PermissionRequest reçoivent les champs `tool_name` et `tool_input` comme les hooks PreToolUse, mais sans `tool_use_id`. Pour un outil MCP, ils reçoivent également l'objet [`mcp_server`](#pretooluse-input). Un tableau optionnel `permission_suggestions` contient les [mises à jour de permission](#permission-update-entries) que Claude Code suggère pour cette requête, comme ajouter une règle d'autorisation ou changer le mode de permission.

2037 2027 

2038Le tableau `permission_suggestions` n'est pas une liste exacte des options que vous voyez, parce que chaque dialogue de permission construit ses propres options. Certains dialogues, comme celui pour les éditions de fichiers, ne lisent pas du tout le tableau et dérivent leurs options de la requête elle-même. Un dialogue qui le lit peut toujours retenir une option dont la suggestion reste dans le tableau, par exemple quand [`allowManagedPermissionRulesOnly`](/docs/fr/settings-reference#allowmanagedpermissionrulesonly) cache les options de sauvegarde de règles. Il peut également offrir des options qui n'ont pas d'entrée de suggestion, comme [**Oui, et passer en mode auto**](/docs/fr/permission-modes#switch-permission-modes), qui change le mode de permission directement plutôt que via une mise à jour de permission.2028Le tableau `permission_suggestions` n'est pas une liste exacte des options que vous voyez, parce que chaque dialogue de permission construit ses propres options. Certains dialogues, comme celui pour les éditions de fichier, ne lisent pas du tout le tableau et dérivent leurs options de la requête elle-même. Un dialogue qui le lit peut toujours retenir une option dont la suggestion reste dans le tableau, par exemple quand [`allowManagedPermissionRulesOnly`](/docs/fr/settings-reference#allowmanagedpermissionrulesonly) cache les options de sauvegarde de règle. Il peut également offrir des options qui n'ont pas d'entrée de suggestion, comme [**Oui, et passer au mode auto**](/docs/fr/permission-modes#switch-permission-modes), qui change le mode de permission directement plutôt que via une mise à jour de permission.

2039 2029 

2040Les hooks PreToolUse s'exécutent avant chaque appel d'outil, qu'il ait besoin de permission ou non. Les hooks PermissionRequest s'exécutent uniquement quand Claude Code est sur le point de vous demander la permission, ou quand il refuserait autrement un appel qui ne peut pas inviter. Aucun événement ne se déclenche pour [`EndConversation`](/docs/fr/tools-reference#endconversation-tool-behavior).2030Les hooks PreToolUse s'exécutent avant chaque appel d'outil, qu'il ait besoin de permission ou non. Les hooks PermissionRequest s'exécutent uniquement quand Claude Code est sur le point de vous demander la permission, ou quand il refuserait autrement un appel qui ne peut pas inviter. Aucun événement ne se déclenche pour [`EndConversation`](/docs/fr/tools-reference#endconversation-tool-behavior).

2041 2031 


2072| :- | :- |2062| :- | :- |

2073| `behavior` | `"allow"` accorde la permission, `"deny"` la refuse. Les [règles de refus et de demande](/docs/fr/permissions#manage-permissions) sont toujours évaluées, donc un hook retournant `"allow"` ne remplace pas une règle de refus correspondante |2063| `behavior` | `"allow"` accorde la permission, `"deny"` la refuse. Les [règles de refus et de demande](/docs/fr/permissions#manage-permissions) sont toujours évaluées, donc un hook retournant `"allow"` ne remplace pas une règle de refus correspondante |

2074| `updatedInput` | Pour `"allow"` uniquement : modifie les paramètres d'entrée de l'outil avant l'exécution. Remplace l'objet d'entrée entier, donc incluez les champs inchangés aux côtés des champs modifiés. L'entrée modifiée est réévaluée contre les règles de refus et de demande |2064| `updatedInput` | Pour `"allow"` uniquement : modifie les paramètres d'entrée de l'outil avant l'exécution. Remplace l'objet d'entrée entier, donc incluez les champs inchangés aux côtés des champs modifiés. L'entrée modifiée est réévaluée contre les règles de refus et de demande |

2075| `updatedPermissions` | Pour `"allow"` uniquement : tableau des [entrées de mise à jour de permission](#permission-update-entries) à appliquer, comme ajouter une règle d'autorisation ou changer le mode de permission de la session |2065| `updatedPermissions` | Pour `"allow"` uniquement : tableau des [entrées de mise à jour de permission](#permission-update-entries) à appliquer, comme ajouter une règle d'autorisation ou changer le mode de permission de session |

2076| `message` | Pour `"deny"` uniquement : dit à Claude pourquoi la permission a été refusée |2066| `message` | Pour `"deny"` uniquement : dit à Claude pourquoi la permission a été refusée |

2077| `interrupt` | Pour `"deny"` uniquement : si `true`, arrête Claude |2067| `interrupt` | Pour `"deny"` uniquement : si `true`, arrête Claude |

2078 2068 

2079Un hook qui quitte 2 sans un objet `decision` laisse le flux de permission inchangé, et son stderr est rejeté. Seul l'objet `decision` peut accorder ou refuser la requête.2069Un hook qui sort 2 sans un objet `decision` laisse le flux de permission inchangé, et son stderr est rejeté. Seul l'objet `decision` peut accorder ou refuser la requête.

2080 2070 

2081```json theme={null}2071```json theme={null}

2082{2072{


2108| `removeDirectories` | `directories`, `destination` | Supprime les répertoires de travail |2098| `removeDirectories` | `directories`, `destination` | Supprime les répertoires de travail |

2109 2099 

2110<Note>2100<Note>

2111 `setMode` avec `bypassPermissions` ne prend effet que si vous avez lancé la session avec le mode de contournement déjà disponible : `--dangerously-skip-permissions`, `--permission-mode bypassPermissions`, `--allow-dangerously-skip-permissions`, ou `permissions.defaultMode: "bypassPermissions"` dans les [paramètres utilisateur, `--settings`, ou gérés](/docs/fr/settings-reference#permissions-defaultmode). Sinon, la mise à jour est un non-op. La mise à jour est également un non-op quand [`permissions.disableBypassPermissionsMode`](/docs/fr/permissions#managed-settings) désactive le mode, ou quand la session démarre en [mode restreint](/docs/fr/cli-reference#cli-flags).2101 `setMode` avec `bypassPermissions` ne prend effet que si vous avez lancé la session avec le mode bypass déjà disponible : `--dangerously-skip-permissions`, `--permission-mode bypassPermissions`, `--allow-dangerously-skip-permissions`, ou `permissions.defaultMode: "bypassPermissions"` dans les [paramètres utilisateur, `--settings`, ou gérés](/docs/fr/settings-reference#permissions-defaultmode). Sinon, la mise à jour est un non-op. La mise à jour est également un non-op quand [`permissions.disableBypassPermissionsMode`](/docs/fr/permissions#managed-settings) désactive le mode, ou quand la session démarre en [mode restreint](/docs/fr/cli-reference#cli-flags).

2112 2102 

2113 `bypassPermissions` n'est jamais persisté comme `defaultMode` indépendamment de `destination`.2103 `bypassPermissions` n'est jamais persisté comme `defaultMode` indépendamment de `destination`.

2114</Note>2104</Note>


2201```2191```

2202 2192 

2203<Warning>2193<Warning>

2204 `updatedToolOutput` change uniquement ce que Claude voit. L'outil s'est déjà exécuté au moment où le hook se déclenche, donc tous les fichiers écrits, commandes exécutées, ou requêtes réseau envoyées ont déjà pris effet. La télémétrie comme les spans d'outil OpenTelemetry et les événements d'analyse capturent également la sortie originale avant que le hook s'exécute. Pour empêcher ou modifier un appel d'outil avant qu'il s'exécute, utilisez plutôt un hook [PreToolUse](#pretooluse).2194 `updatedToolOutput` change uniquement ce que Claude voit. L'outil s'est déjà exécuté au moment où le hook se déclenche, donc tous les fichiers écrits, commandes exécutées, ou requêtes réseau envoyées ont déjà pris effet. La télémétrie comme les spans d'outils OpenTelemetry et les événements d'analyse capturent également la sortie originale avant que le hook s'exécute. Pour empêcher ou modifier un appel d'outil avant qu'il s'exécute, utilisez plutôt un hook [PreToolUse](#pretooluse).

2205 2195 

2206 La valeur de remplacement doit correspondre à la forme de sortie de l'outil. Les outils intégrés retournent des objets structurés plutôt que des chaînes brutes. Par exemple, `Bash` retourne un objet avec les champs `stdout`, `stderr`, `interrupted`, et `isImage`. Pour les outils intégrés, une valeur qui ne correspond pas au schéma de sortie de l'outil est ignorée et la sortie originale est utilisée. La sortie d'outil MCP est transmise sans validation de schéma. Supprimer les détails d'erreur dont Claude a besoin peut le faire procéder sur une fausse hypothèse.2196 La valeur de remplacement doit correspondre à la forme de sortie de l'outil. Les outils intégrés retournent des objets structurés plutôt que des chaînes brutes. Par exemple, `Bash` retourne un objet avec les champs `stdout`, `stderr`, `interrupted`, et `isImage`. Pour les outils intégrés, une valeur qui ne correspond pas au schéma de sortie de l'outil est ignorée et la sortie originale est utilisée. La sortie de l'outil MCP est transmise sans validation de schéma. Supprimer les détails d'erreur dont Claude a besoin peut le faire procéder sur une fausse hypothèse.

2207</Warning>2197</Warning>

2208 2198 

2209<h4 id="annotate-a-result-for-the-auto-mode-classifier">2199<h4 id="annotate-a-result-for-the-auto-mode-classifier">

2210 Annoter un résultat pour le classificateur du mode auto2200 Annoter un résultat pour le classificateur du mode auto

2211</h4>2201</h4>

2212 2202 

2213Retournez `classifierContext` pour envoyer une brève note sur le résultat de l'appel d'outil au classificateur du [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) plutôt qu'à Claude. Le classificateur [ne reçoit jamais les résultats d'outil eux-mêmes](/docs/fr/permission-modes#how-the-classifier-evaluates-actions), donc ce champ est la façon supportée de lui dire quelque chose sur ce qu'un appel a retourné avant qu'il examine les actions ultérieures. Le champ nécessite Claude Code v2.1.236 ou ultérieur.2203Retournez `classifierContext` pour envoyer une brève note sur le résultat de l'appel d'outil au classificateur du [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) plutôt qu'à Claude. Le classificateur [ne reçoit jamais les résultats des outils eux-mêmes](/docs/fr/permission-modes#how-the-classifier-evaluates-actions), donc ce champ est la façon supportée de lui dire quelque chose sur ce qu'un appel a retourné avant qu'il examine les actions ultérieures. Le champ nécessite Claude Code v2.1.236 ou ultérieur.

2214 2204 

2215L'exemple ci-dessous dit au classificateur d'où provient la sortie d'une requête :2205L'exemple ci-dessous dit au classificateur d'où provient la sortie d'une requête :

2216 2206 


2226Le poids que le classificateur donne à la note dépend de l'endroit où vous avez configuré le hook :2216Le poids que le classificateur donne à la note dépend de l'endroit où vous avez configuré le hook :

2227 2217 

2228* **Hooks configurés dans Claude Code** : pour les hooks des fichiers de paramètres, des plugins, des skills, et du frontmatter d'agent, le classificateur traite la note comme du contexte non vérifié fourni par l'application. La note n'établit jamais l'intention de l'utilisateur, et si elle prétend que vous avez approuvé ou demandé quelque chose, le classificateur vérifie cette affirmation contre vos propres messages dans la conversation2218* **Hooks configurés dans Claude Code** : pour les hooks des fichiers de paramètres, des plugins, des skills, et du frontmatter d'agent, le classificateur traite la note comme du contexte non vérifié fourni par l'application. La note n'établit jamais l'intention de l'utilisateur, et si elle prétend que vous avez approuvé ou demandé quelque chose, le classificateur vérifie cette affirmation contre vos propres messages dans la conversation

2229* **Rappels Agent SDK en processus** : quand une application intégrant Claude Code enregistre le hook comme un [rappel SDK TypeScript](/docs/fr/agent-sdk/hooks) et retourne la note pendant la session en direct, le classificateur peut peser une déclaration d'utilisateur relayée dans la note comme intention de l'utilisateur. Une telle déclaration peut satisfaire une exigence de consentement que le classificateur accepterait d'un message que vous envoyez, mais elle ne lève jamais un blocage que votre propre message ne pourrait pas lever non plus. Après qu'une session reprenne, Claude Code traite les notes restaurées comme du contexte non vérifié. Quand les hooks des deux groupes annotent le même appel, le classificateur traite la note combinée comme non vérifiée2219* **Rappels Agent SDK en processus** : quand une application intégrant Claude Code enregistre le hook comme un [rappel SDK TypeScript](/docs/fr/agent-sdk/hooks) et retourne la note pendant la session en direct, le classificateur peut peser une déclaration d'utilisateur relayée dans la note comme intention de l'utilisateur. Une telle déclaration peut satisfaire une exigence de consentement que le classificateur accepterait d'un message que vous envoyez, mais elle ne lève jamais un blocage qu'un message de votre part ne pourrait pas lever non plus. Après qu'une session reprenne, Claude Code traite les notes restaurées comme du contexte non vérifié. Quand les hooks des deux groupes annotent le même appel, le classificateur traite la note combinée comme non vérifiée

2230 2220 

2231Claude Code applique ces limites lors de la livraison de la note :2221Claude Code applique ces limites lors de la livraison de la note :

2232 2222 

2233* **Longueur** : Claude Code plafonne les notes pour un appel d'outil à 2 000 caractères et tronque le reste. Le plafond est partagé entre chaque hook qui répond à cet appel2223* **Longueur** : Claude Code plafonne les notes pour un appel d'outil à 2 000 caractères et tronque le reste. Le plafond est partagé entre chaque hook qui répond à cet appel

2234* **Réponses synchrones uniquement** : Claude Code ignore le champ dans la réponse d'un hook qui [s'exécute en arrière-plan](#run-hooks-in-the-background), parce que cette réponse arrive après que Claude Code enregistre le résultat de l'outil2224* **Réponses synchrones uniquement** : Claude Code ignore le champ dans la réponse d'un hook qui [s'exécute en arrière-plan](#run-hooks-in-the-background), parce que cette réponse arrive après que Claude Code enregistre le résultat de l'outil

2235* **Appels que le classificateur n'enregistre pas** : la transcription du classificateur omet les recherches en lecture seule comme les lectures de fichiers et les recherches. Claude Code rejette une note attachée à l'un de ces appels2225* **Appels que le classificateur n'enregistre pas** : la transcription du classificateur omet les recherches en lecture seule comme les lectures de fichier et les recherches. Claude Code rejette une note attachée à l'un de ces appels

2236* **Interaction avec les réécritures** : quand la note décrit la sortie que vous remplacez avec `updatedToolOutput`, retournez les deux champs dans la même réponse de hook. Claude Code rejette la note si cette réécriture est rejetée ou qu'une réécriture d'un autre hook la remplace. Claude Code livre une note que vous retournez sans réécriture même quand un autre hook réécrit la sortie2226* **Interaction avec les réécritures** : quand la note décrit la sortie que vous remplacez avec `updatedToolOutput`, retournez les deux champs dans la même réponse de hook. Claude Code rejette la note si cette réécriture est rejetée ou qu'une réécriture d'un autre hook la remplace. Claude Code livre une note que vous retournez sans réécriture même quand un autre hook réécrit la sortie

2237 2227 

2238<Warning>2228<Warning>


2286 2276 

2287* Pour Bash et PowerShell, une commande qui s'est exécutée et a quitté produit une première ligne `Exit code N`, puis toute sortie que la commande a produite comme un bloc avec stdout et stderr entrelacés2277* Pour Bash et PowerShell, une commande qui s'est exécutée et a quitté produit une première ligne `Exit code N`, puis toute sortie que la commande a produite comme un bloc avec stdout et stderr entrelacés

2288* Une charge utile peut également porter un message d'échec nu sans ligne de code de sortie, quand Claude Code n'a pas pu démarrer le processus shell lui-même2278* Une charge utile peut également porter un message d'échec nu sans ligne de code de sortie, quand Claude Code n'a pas pu démarrer le processus shell lui-même

2289* Claude Code tronque au milieu les longues chaînes autour d'un marqueur `... [N characters truncated] ...`, et peut insérer des lignes de son propre, comme `Command timed out after 2m 0s`2279* Claude Code tronque au milieu les longues chaînes autour d'un marqueur `... [N characters truncated] ...`, et peut insérer des lignes de son propre chef, comme `Command timed out after 2m 0s`

2290 2280 

2291<h4 id="posttoolusefailure-decision-control">2281<h4 id="posttoolusefailure-decision-control">

2292 Contrôle de décision PostToolUseFailure2282 Contrôle de décision PostToolUseFailure


2331 "tool_name": "Read",2321 "tool_name": "Read",

2332 "tool_input": {"file_path": "/.../ledger/accounts.py"},2322 "tool_input": {"file_path": "/.../ledger/accounts.py"},

2333 "tool_use_id": "toolu_01...",2323 "tool_use_id": "toolu_01...",

2334 "tool_response": " 1\tfrom __future__ import annotations\n 2\t..."2324 "tool_response": "1\tfrom __future__ import annotations\n2\t..."

2335 },2325 },

2336 {2326 {

2337 "tool_name": "Read",2327 "tool_name": "Read",

2338 "tool_input": {"file_path": "/.../ledger/transactions.py"},2328 "tool_input": {"file_path": "/.../ledger/transactions.py"},

2339 "tool_use_id": "toolu_02...",2329 "tool_use_id": "toolu_02...",

2340 "tool_response": " 1\tfrom __future__ import annotations\n 2\t..."2330 "tool_response": "1\tfrom __future__ import annotations\n2\t..."

2341 }2331 }

2342 ]2332 ]

2343}2333}

2344```2334```

2345 2335 

2346`tool_response` contient le même contenu que le modèle reçoit dans le bloc `tool_result` correspondant. La valeur est une chaîne sérialisée ou un tableau de bloc de contenu, exactement comme l'outil l'a émis. Pour `Read`, cela signifie du texte préfixé par le numéro de ligne plutôt que le contenu brut du fichier. Les réponses peuvent être grandes, donc analysez uniquement les champs dont vous avez besoin.2336`tool_response` contient le même contenu que le modèle reçoit dans le bloc `tool_result` correspondant. La valeur est une chaîne sérialisée ou un tableau de bloc de contenu, exactement comme l'outil l'a émis. Les réponses peuvent être grandes, donc analysez uniquement les champs dont vous avez besoin.

2347 2337 

2348<Note>2338<Note>

2349 La forme `tool_response` diffère de celle de `PostToolUse`. `PostToolUse` passe l'objet `Output` structuré de l'outil, comme `{filePath: "...", type: "create"}` pour `Write` ; `PostToolBatch` passe le contenu `tool_result` sérialisé que le modèle voit.2339 La forme `tool_response` diffère de celle de `PostToolUse`. `PostToolUse` passe l'objet `Output` structuré de l'outil, comme `{filePath: "...", type: "create"}` pour `Write` ; `PostToolBatch` passe le contenu `tool_result` sérialisé que le modèle voit.


2368}2358}

2369```2359```

2370 2360 

2371Retourner `decision: "block"` ou `continue: false` arrête la boucle agentive avant l'appel du modèle suivant. Le message de blocage provient du JSON `reason` ou `stopReason`, ou de stderr sur la sortie 2. Vous le voyez comme un avertissement dans la transcription, et il reste dans la conversation, donc Claude le voit quand la conversation continue.2361Retourner `decision: "block"` ou `continue: false` arrête la boucle agentive avant l'appel du modèle suivant. Le message de blocage provient du JSON `reason` ou `stopReason`, ou de stderr en sortie 2. Vous le voyez comme un avertissement dans la transcription, et il reste dans la conversation, donc Claude le voit quand la conversation continue.

2372 2362 

2373<h3 id="permissiondenied">2363<h3 id="permissiondenied">

2374 PermissionDenied2364 PermissionDenied

2375</h3>2365</h3>

2376 2366 

2377S'exécute quand le [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) refuse un appel d'outil, y compris quand il refuse sans verdict du classificateur parce qu'une [vérification de sécurité séparée du mode auto a refusé la propre requête du classificateur](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action) ou sa réponse n'a pas analysé. Ce hook ne se déclenche que en mode auto : il ne s'exécute pas quand vous refusez manuellement un dialogue de permission, quand un hook `PreToolUse` bloque un appel, ou quand une règle `deny` correspond. Utilisez-le pour enregistrer les refus, ajuster la configuration, ou dire au modèle qu'il peut réessayer l'appel d'outil.2367S'exécute quand le [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) refuse un appel d'outil, y compris quand il refuse sans verdict de classificateur parce qu'une [vérification de sécurité séparée du mode auto a refusé la propre requête du classificateur](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action) ou sa réponse n'a pas analysé. Ce hook ne se déclenche que en mode auto : il ne s'exécute pas quand vous refusez manuellement un dialogue de permission, quand un hook `PreToolUse` bloque un appel, ou quand une règle `deny` correspond. Utilisez-le pour enregistrer les refus, ajuster la configuration, ou dire au modèle qu'il peut réessayer l'appel d'outil.

2378 2368 

2379Correspond au nom de l'outil, mêmes valeurs que PreToolUse.2369Correspond au nom de l'outil, mêmes valeurs que PreToolUse.

2380 2370 


2403 2393 

2404| Champ | Description |2394| Champ | Description |

2405| :- | :- |2395| :- | :- |

2406| `reason` | La raison du refus. Pour un verdict du classificateur, dans la plupart des sessions, il nomme la règle correspondante entre crochets, comme `[Data Exfiltration]` ; voir [Examiner les refus](/docs/fr/auto-mode-config#review-denials) pour les autres formes. Pour un [refus sans verdict](#permissiondenied-decision-control), il commence par `Auto mode could not evaluate this action and is blocking it for safety`. Pour un refus parce que le modèle du classificateur n'était pas disponible, c'est le texte fixe `Classifier unavailable` |2396| `reason` | La raison du refus. Pour un verdict de classificateur, dans la plupart des sessions, il nomme la règle correspondante entre crochets, comme `[Data Exfiltration]` ; voir [Examiner les refus](/docs/fr/auto-mode-config#review-denials) pour les autres formes. Pour un [refus sans verdict](#permissiondenied-decision-control), il commence par `Auto mode could not evaluate this action and is blocking it for safety`. Pour un refus parce que le modèle de classificateur n'était pas disponible, c'est le texte fixe `Classifier unavailable` |

2407 2397 

2408<h4 id="permissiondenied-decision-control">2398<h4 id="permissiondenied-decision-control">

2409 Contrôle de décision PermissionDenied2399 Contrôle de décision PermissionDenied


2437| `permission_prompt` | Claude a besoin de votre permission pour utiliser un outil ou la [requête réseau](/docs/fr/sandboxing#network-isolation) d'une commande en sandbox, et l'invite a attendu environ six secondes |2427| `permission_prompt` | Claude a besoin de votre permission pour utiliser un outil ou la [requête réseau](/docs/fr/sandboxing#network-isolation) d'une commande en sandbox, et l'invite a attendu environ six secondes |

2438| `idle_prompt` | Claude a fini de répondre il y a environ 60 secondes et vous n'avez pas tapé depuis |2428| `idle_prompt` | Claude a fini de répondre il y a environ 60 secondes et vous n'avez pas tapé depuis |

2439| `auth_success` | L'authentification se termine |2429| `auth_success` | L'authentification se termine |

2440| `elicitation_dialog` | Un serveur MCP ouvre un formulaire d'élicitation et vous n'avez pas tapé pendant environ six secondes |2430| `elicitation_dialog` | Un serveur MCP ouvre un formulaire d'élicitation et vous n'avez pas tapé depuis environ six secondes |

2441| `elicitation_url_dialog` | Un serveur MCP vous demande d'ouvrir une URL de navigateur et vous n'avez pas tapé pendant environ six secondes |2431| `elicitation_url_dialog` | Un serveur MCP vous demande d'ouvrir une URL de navigateur et vous n'avez pas tapé depuis environ six secondes |

2442| `elicitation_complete` | Un serveur MCP signale qu'une [élicitation en mode URL](#elicitation-input) est complète |2432| `elicitation_complete` | Un serveur MCP signale qu'une [élicitation en mode URL](#elicitation-input) est complète |

2443| `elicitation_response` | Une réponse d'élicitation MCP est renvoyée au serveur |2433| `elicitation_response` | Une réponse d'élicitation MCP est renvoyée au serveur |

2444| `agent_needs_input` | Une session en arrière-plan commence à attendre votre entrée pendant que la [vue agent](/docs/fr/agent-view) est ouverte dans un terminal, ou la session actuelle vous pose une [question de configuration de terminal d'un coéquipier d'équipe agent](/docs/fr/agent-teams#choose-a-display-mode) et vous n'avez pas tapé pendant environ six secondes |2434| `agent_needs_input` | Une session en arrière-plan commence à attendre votre entrée pendant que la [vue agent](/docs/fr/agent-view) est ouverte dans un terminal, ou la session actuelle pose une [question de configuration de terminal d'un coéquipier d'équipe agent](/docs/fr/agent-teams#choose-a-display-mode) et vous n'avez pas tapé depuis environ six secondes |

2445| `agent_completed` | Une session en arrière-plan se termine ou échoue. Se déclenche uniquement pendant que la [vue agent](/docs/fr/agent-view) est ouverte dans un terminal |2435| `agent_completed` | Une session en arrière-plan se termine ou échoue. Se déclenche uniquement pendant que la [vue agent](/docs/fr/agent-view) est ouverte dans un terminal |

2446| `quota_auto_resume_fired` | Claude Code continue votre tâche après qu'une limite d'utilisation claude.ai l'ait mise en pause : à la réinitialisation, ou plus tôt quand quelque chose que vous faites dans Claude Code pendant l'attente, comme ajouter des crédits d'utilisation, mettre à niveau votre plan, ou changer de modèles, rend l'utilisation disponible à nouveau, avec l'[exception de paramètre de modèle](/docs/fr/interactive-mode#wait-for-a-usage-limit-to-reset) |2436| `quota_auto_resume_fired` | Claude Code continue votre tâche après qu'une limite d'utilisation claude.ai l'ait mise en pause : à la réinitialisation, ou plus tôt quand quelque chose que vous faites dans Claude Code pendant l'attente, comme ajouter des crédits d'utilisation, mettre à niveau votre plan, ou changer de modèles, rend l'utilisation disponible à nouveau, avec l'[exception de paramètre de modèle](/docs/fr/interactive-mode#wait-for-a-usage-limit-to-reset) |

2447| `quota_auto_resume_stale` | Une limite d'utilisation claude.ai s'est réinitialisée pendant que votre ordinateur dormait pendant plus d'environ 30 minutes. Claude Code attend que vous appuyiez sur `Entrée` au lieu de continuer. Après un sommeil plus court, il continue et déclenche `quota_auto_resume_fired` à la place |2437| `quota_auto_resume_stale` | Une limite d'utilisation claude.ai s'est réinitialisée pendant que votre ordinateur dormait pendant plus d'environ 30 minutes. Claude Code attend que vous appuyiez sur `Entrée` au lieu de continuer. Après un sommeil plus court, il continue et déclenche `quota_auto_resume_fired` à la place |

2448| `quota_auto_resume_disabled` | Claude Code termine son attente pour une limite d'utilisation claude.ai sans continuer votre tâche : [`autoContinueAtUsageLimit`](/docs/fr/settings-reference#autocontinueatusagelimit) s'est désactivé ou la réinitialisation s'est déplacée de plus de 24 heures pendant une attente que Claude Code a démarrée seul, la tâche continuée a continué à frapper la limite, ou la continuation a été bloquée avant d'atteindre le modèle. Ne se déclenche pas quand vous appuyez sur `Esc` ou `Ctrl+C`, ou choisissez **Ne pas continuer automatiquement** |2438| `quota_auto_resume_disabled` | Claude Code termine son attente pour une limite d'utilisation claude.ai sans continuer votre tâche : [`autoContinueAtUsageLimit`](/docs/fr/settings-reference#autocontinueatusagelimit) s'est désactivé ou la réinitialisation s'est déplacée de plus de 24 heures pendant une attente que Claude Code a commencée seul, la tâche continuée a continué à frapper la limite, ou la continuation a été bloquée avant d'atteindre le modèle. Ne se déclenche pas quand vous appuyez sur `Esc` ou `Ctrl+C`, ou choisissez **Ne pas continuer automatiquement** |

2449 2439 

2450Les types `agent_needs_input` et `agent_completed` nécessitent Claude Code v2.1.198 ou ultérieur.2440Les types `agent_needs_input` et `agent_completed` nécessitent Claude Code v2.1.198 ou ultérieur.

2451 2441 


2459 Les types `permission_prompt`, `idle_prompt`, `elicitation_dialog`, et `elicitation_url_dialog` partagent leur timing avec les notifications de bureau, donc dans les sessions de terminal vous ne les voyez que quand vous semblez être loin du terminal :2449 Les types `permission_prompt`, `idle_prompt`, `elicitation_dialog`, et `elicitation_url_dialog` partagent leur timing avec les notifications de bureau, donc dans les sessions de terminal vous ne les voyez que quand vous semblez être loin du terminal :

2460 2450 

2461 * Attendez `permission_prompt` une fois que vous n'avez pas tapé pendant environ six secondes. Le minuteur démarre quand l'invite de permission apparaît, et chaque frappe le reporte. Pour exécuter un hook immédiatement quand Claude demande la permission d'utiliser un outil, utilisez [PermissionRequest](#permissionrequest) à la place.2451 * Attendez `permission_prompt` une fois que vous n'avez pas tapé pendant environ six secondes. Le minuteur démarre quand l'invite de permission apparaît, et chaque frappe le reporte. Pour exécuter un hook immédiatement quand Claude demande la permission d'utiliser un outil, utilisez [PermissionRequest](#permissionrequest) à la place.

2462 * Attendez `idle_prompt` environ 60 secondes après que Claude finisse de répondre, et uniquement si vous n'avez pas tapé depuis. Claude Code n'envoie pas `idle_prompt` pendant qu'il attend qu'une limite d'utilisation claude.ai se réinitialise. Quand l'attente se termine d'elle-même, l'un des types `quota_auto_resume_*` se déclenche à la place.2452 * Attendez `idle_prompt` environ 60 secondes après que Claude finisse de répondre, et uniquement si vous n'avez pas tapé depuis. Claude Code n'envoie pas `idle_prompt` pendant qu'il attend qu'une limite d'utilisation claude.ai se réinitialise. Quand l'attente se termine seule, l'un des types `quota_auto_resume_*` se déclenche à la place.

2463 * Attendez `elicitation_dialog` pour un formulaire d'élicitation, ou `elicitation_url_dialog` pour une requête d'URL de navigateur, une fois que vous n'avez pas tapé pendant environ six secondes. Les deux partagent la même porte de six secondes que `permission_prompt` : le minuteur démarre quand le dialogue apparaît, et chaque frappe le reporte.2453 * Attendez `elicitation_dialog` pour un formulaire d'élicitation, ou `elicitation_url_dialog` pour une requête d'URL de navigateur, une fois que vous n'avez pas tapé pendant environ six secondes. Les deux partagent la même porte de six secondes que `permission_prompt` : le minuteur démarre quand le dialogue apparaît, et chaque frappe le reporte.

2464 2454 

2465 Une requête de permission ou d'élicitation qui arrive pendant qu'un autre dialogue est à l'écran garde la même porte de six secondes, chronométrée à partir de quand la requête arrive. Sa notification peut vous atteindre pendant que la requête attend toujours derrière le dialogue ouvert.2455 Une requête de permission ou d'élicitation qui arrive pendant qu'un autre dialogue est à l'écran garde la même porte de six secondes, minutée à partir de quand la requête arrive. Sa notification peut vous atteindre pendant que la requête attend toujours derrière le dialogue ouvert.

2466</Note>2456</Note>

2467 2457 

2468Claude Code chronomètre `permission_prompt` différemment dans les sessions où il envoie les requêtes de permission au rappel [`canUseTool`](/docs/fr/agent-sdk/user-input) d'Agent SDK, ce qui est comment Claude Desktop et l'extension VS Code hébergent Claude Code :2458Claude Code chronomètre `permission_prompt` différemment dans les sessions où il envoie les requêtes de permission au rappel [`canUseTool`](/docs/fr/agent-sdk/user-input) d'Agent SDK, ce qui est comment Claude Desktop et l'extension VS Code hébergent Claude Code :


2473 2463 

2474Avant v2.1.233, `permission_prompt` ne se déclenchait pas dans ces sessions.2464Avant v2.1.233, `permission_prompt` ne se déclenchait pas dans ces sessions.

2475 2465 

2476Utilisez des matchers séparés pour exécuter différents gestionnaires selon le type de notification. Cette configuration déclenche un script d'alerte spécifique à la permission quand Claude a besoin d'approbation de permission et une notification différente quand Claude a été inactif :2466Utilisez des matchers séparés pour exécuter différents gestionnaires selon le type de notification. Cette configuration déclenche un script d'alerte spécifique à la permission quand Claude a besoin d'une approbation de permission et une notification différente quand Claude a été inactif :

2477 2467 

2478```json theme={null}2468```json theme={null}

2479{2469{


2528 2518 

2529S'exécute quand Claude crée un sous-agent avec l'outil Agent, quand Claude [reprend un sous-agent](/docs/fr/sub-agents#resume-subagents), et chaque fois qu'un coéquipier d'[équipe agent](/docs/fr/agent-teams) en processus gère un nouveau message. Supporte les matchers pour filtrer par nom de type d'agent. Pour les agents intégrés, c'est le nom de l'agent comme `general-purpose`, `Explore`, ou `Plan`. Pour les [sous-agents personnalisés](/docs/fr/sub-agents), c'est le champ `name` du frontmatter de l'agent, pas le nom de fichier.2519S'exécute quand Claude crée un sous-agent avec l'outil Agent, quand Claude [reprend un sous-agent](/docs/fr/sub-agents#resume-subagents), et chaque fois qu'un coéquipier d'[équipe agent](/docs/fr/agent-teams) en processus gère un nouveau message. Supporte les matchers pour filtrer par nom de type d'agent. Pour les agents intégrés, c'est le nom de l'agent comme `general-purpose`, `Explore`, ou `Plan`. Pour les [sous-agents personnalisés](/docs/fr/sub-agents), c'est le champ `name` du frontmatter de l'agent, pas le nom de fichier.

2530 2520 

2531Pour les sous-agents fournis par un [plugin](/docs/fr/plugins), le type d'agent est l'identifiant scoped du plugin comme `my-plugin:reviewer`, pas le nom du frontmatter nu. Le deux-points place un nom scoped du plugin sur le chemin d'expression régulière, donc ancrez le matcher avec `^` et `$` pour une correspondance exacte : `^my-plugin:reviewer$`.2521Pour les sous-agents fournis par un [plugin](/docs/fr/plugins/overview), le type d'agent est l'identifiant scoped du plugin comme `my-plugin:reviewer`, pas le nom du frontmatter nu. Le deux-points place un nom scoped du plugin sur le chemin d'expression régulière, donc ancrez le matcher avec `^` et `$` pour une correspondance exacte : `^my-plugin:reviewer$`.

2532 2522 

2533<h4 id="subagentstart-input">2523<h4 id="subagentstart-input">

2534 Entrée SubagentStart2524 Entrée SubagentStart

2535</h4>2525</h4>

2536 2526 

2537En plus des [champs d'entrée communs](#common-input-fields), les hooks SubagentStart reçoivent `agent_id` avec l'identifiant unique du sous-agent et `agent_type` avec le nom de l'agent sur lequel le matcher filtre.2527En plus des [champs d'entrée communs](#common-input-fields), les hooks SubagentStart reçoivent `agent_id` avec l'identifiant unique du sous-agent et `agent_type` avec le nom de l'agent que le matcher filtre.

2538 2528 

2539```json theme={null}2529```json theme={null}

2540{2530{


2576 2566 

2577En plus des [champs d'entrée communs](#common-input-fields), les hooks SubagentStop reçoivent `stop_hook_active`, `agent_id`, `agent_type`, `agent_transcript_path`, et `last_assistant_message`. Le champ `agent_type` est la valeur utilisée pour le filtrage du matcher. Le `transcript_path` est la transcription de la session principale, tandis que `agent_transcript_path` est la propre transcription du sous-agent stockée dans un dossier `subagents/` imbriqué. Le champ `last_assistant_message` contient le contenu textuel de la réponse finale du sous-agent, donc les hooks peuvent y accéder sans analyser le fichier de transcription.2567En plus des [champs d'entrée communs](#common-input-fields), les hooks SubagentStop reçoivent `stop_hook_active`, `agent_id`, `agent_type`, `agent_transcript_path`, et `last_assistant_message`. Le champ `agent_type` est la valeur utilisée pour le filtrage du matcher. Le `transcript_path` est la transcription de la session principale, tandis que `agent_transcript_path` est la propre transcription du sous-agent stockée dans un dossier `subagents/` imbriqué. Le champ `last_assistant_message` contient le contenu textuel de la réponse finale du sous-agent, donc les hooks peuvent y accéder sans analyser le fichier de transcription.

2578 2568 

2579Pas chaque événement SubagentStop provient d'un sous-agent que Claude a créé. Claude Code exécute également des agents internes pour certaines de ses propres fonctionnalités, comme les [suggestions d'invite](/docs/fr/interactive-mode#prompt-suggestions) et les [questions latérales `/btw`](/docs/fr/interactive-mode#side-questions-with-%2Fbtw), et SubagentStop se déclenche quand l'un de ceux-ci se termine aussi. Pour ces événements, `agent_type` est le nom de l'agent que la session elle-même exécute, comme celui défini avec [`--agent`](/docs/fr/cli-reference#cli-flags) ou le [paramètre `agent`](/docs/fr/settings-reference#agent), et une chaîne vide quand la session s'exécute sans un.2569Pas chaque événement SubagentStop provient d'un sous-agent que Claude a créé. Claude Code exécute également des agents internes pour certaines de ses propres fonctionnalités, comme les [suggestions d'invite](/docs/fr/interactive-mode#prompt-suggestions) et les [questions latérales `/btw`](/docs/fr/interactive-mode#side-questions-with-%2Fbtw), et SubagentStop se déclenche quand l'un de ceux-ci se termine aussi. Pour ces événements, `agent_type` est le nom de l'agent que la session elle-même exécute, comme celui défini avec [`--agent`](/docs/fr/cli-reference#cli-flags) ou le paramètre [`agent`](/docs/fr/settings-reference#agent), et une chaîne vide quand la session s'exécute sans un.

2580 2570 

2581Un `matcher` qui nomme les types d'agent ne correspond pas à un `agent_type` vide. Un hook dont le matcher est omis, `""`, ou `"*"`, ou est une expression régulière qui correspond à une chaîne vide, s'exécute pour les événements avec un `agent_type` vide aussi.2571Un `matcher` qui nomme les types d'agent ne correspond pas à un `agent_type` vide. Un hook dont le matcher est omis, `""`, ou `"*"`, ou est une expression régulière qui correspond à une chaîne vide, s'exécute pour les événements avec un `agent_type` vide aussi.

2582 2572 


2601}2591}

2602```2592```

2603 2593 

2604Les hooks SubagentStop utilisent le même format de contrôle de décision que les [hooks Stop](#stop-decision-control), y compris `hookSpecificOutput.additionalContext` avec `hookEventName` défini à `"SubagentStop"`, pour les commentaires sans erreur qui gardent le sous-agent en cours d'exécution. Retourner `decision: "block"` avec une `reason` garde le sous-agent en cours d'exécution et livre `reason` au sous-agent comme sa prochaine instruction. Un hook qui bloque en quittant 2 livre son message stderr de la même façon. Pour injecter du contexte dans la session parent après qu'un sous-agent retourne, utilisez plutôt un hook [`PostToolUse`](#posttooluse) sur l'outil `Agent`.2594Les hooks SubagentStop utilisent le même format de contrôle de décision que les [hooks Stop](#stop-decision-control), y compris `hookSpecificOutput.additionalContext` avec `hookEventName` défini à `"SubagentStop"`, pour les commentaires sans erreur qui gardent le sous-agent en cours d'exécution. Retourner `decision: "block"` avec une `reason` garde le sous-agent en cours d'exécution et livre `reason` au sous-agent comme sa prochaine instruction. Un hook qui bloque en sortant 2 livre son message stderr de la même façon. Pour injecter du contexte dans la session parent après qu'un sous-agent retourne, utilisez plutôt un hook [`PostToolUse`](#posttooluse) sur l'outil `Agent`.

2605 2595 

2606<h3 id="taskcreated">2596<h3 id="taskcreated">

2607 TaskCreated2597 TaskCreated


2637| `task_subject` | Titre de la tâche |2627| `task_subject` | Titre de la tâche |

2638| `task_description` | Description détaillée de la tâche. Peut être absent |2628| `task_description` | Description détaillée de la tâche. Peut être absent |

2639| `teammate_name` | Nom du coéquipier créant la tâche. Peut être absent |2629| `teammate_name` | Nom du coéquipier créant la tâche. Peut être absent |

2640| `team_name` | Déprécié. Nom d'équipe dérivé de la session ; sera supprimé dans une version future |2630| `team_name` | Déprécié. Nom d'équipe dérivé de session ; sera supprimé dans une version future |

2641 2631 

2642<h4 id="taskcreated-decision-control">2632<h4 id="taskcreated-decision-control">

2643 Contrôle de décision TaskCreated2633 Contrôle de décision TaskCreated


2667 TaskCompleted2657 TaskCompleted

2668</h3>2658</h3>

2669 2659 

2670S'exécute quand une tâche est en cours de marquage comme complétée. Cela se déclenche dans deux situations : qu'un agent marque explicitement une tâche comme complétée via l'outil TaskUpdate, ou quand un coéquipier d'[équipe agent](/docs/fr/agent-teams) termine son tour avec des tâches en cours. Utilisez ceci pour appliquer les critères de complétion comme passer les tests ou les vérifications lint avant qu'une tâche puisse se fermer.2660S'exécute quand une tâche est en cours de marquage comme complétée. Cela se déclenche dans deux situations : quand n'importe quel agent marque explicitement une tâche comme complétée via l'outil TaskUpdate, ou quand un coéquipier d'[équipe agent](/docs/fr/agent-teams) termine son tour avec des tâches en cours. Utilisez ceci pour appliquer les critères de complétion comme passer les tests ou les vérifications lint avant qu'une tâche puisse se fermer.

2671 2661 

2672Les hooks TaskCompleted ne supportent pas les matchers et se déclenchent à chaque occurrence.2662Les hooks TaskCompleted ne supportent pas les matchers et se déclenchent à chaque occurrence.

2673 2663 


2698| `task_subject` | Titre de la tâche |2688| `task_subject` | Titre de la tâche |

2699| `task_description` | Description détaillée de la tâche. Peut être absent |2689| `task_description` | Description détaillée de la tâche. Peut être absent |

2700| `teammate_name` | Nom du coéquipier complétant la tâche. Peut être absent |2690| `teammate_name` | Nom du coéquipier complétant la tâche. Peut être absent |

2701| `team_name` | Déprécié. Nom d'équipe dérivé de la session ; sera supprimé dans une version future |2691| `team_name` | Déprécié. Nom d'équipe dérivé de session ; sera supprimé dans une version future |

2702 2692 

2703<h4 id="taskcompleted-decision-control">2693<h4 id="taskcompleted-decision-control">

2704 Contrôle de décision TaskCompleted2694 Contrôle de décision TaskCompleted


2729 Stop2719 Stop

2730</h3>2720</h3>

2731 2721 

2732S'exécute quand l'agent Claude Code principal a fini de répondre. Ne s'exécute pas si l'arrêt s'est produit en raison d'une interruption utilisateur. Les erreurs API déclenchent plutôt [StopFailure](#stopfailure).2722S'exécute quand l'agent Claude Code principal a fini de répondre. Ne s'exécute pas si l'arrêt s'est produit en raison d'une interruption utilisateur. Les erreurs API déclenchent [StopFailure](#stopfailure) à la place.

2733 2723 

2734<Tip>2724<Tip>

2735 La commande [`/goal`](/docs/fr/goal) est un raccourci intégré pour un hook Stop scoped à la session basé sur les invites. Utilisez-le quand vous voulez que Claude continue à travailler vers une condition sans écrire la configuration du hook.2725 La commande [`/goal`](/docs/fr/goal) est un raccourci intégré pour un hook Stop basé sur les invites scoped à la session. Utilisez-le quand vous voulez que Claude continue à travailler vers une condition sans écrire la configuration du hook.

2736</Tip>2726</Tip>

2737 2727 

2738<h4 id="stop-input">2728<h4 id="stop-input">

2739 Entrée Stop2729 Entrée Stop

2740</h4>2730</h4>

2741 2731 

2742En plus des [champs d'entrée communs](#common-input-fields), les hooks Stop reçoivent `stop_hook_active`, `last_assistant_message`, `background_tasks`, et `session_crons`. Le champ `stop_hook_active` est `true` quand Claude Code continue déjà en raison d'un hook stop. Vérifiez cette valeur ou traitez la transcription pour éviter de bloquer sur une condition qui ne se résoudra jamais. Claude Code remplace le hook et termine le tour après 8 blocages consécutifs.2732En plus des [champs d'entrée communs](#common-input-fields), les hooks Stop reçoivent `stop_hook_active`, `last_assistant_message`, `background_tasks`, et `session_crons`. Le champ `stop_hook_active` est `true` quand Claude Code continue déjà en raison d'un hook stop. Vérifiez cette valeur ou traitez la transcription pour éviter de bloquer sur une condition qui ne se résoudra jamais. Claude Code applique un plafond de 8 continuations consécutives : après que les hooks stop aient continué le tour huit fois de suite, Claude Code remplace le bloc suivant et termine le tour. Pour augmenter le plafond, définissez [`CLAUDE_CODE_STOP_HOOK_BLOCK_CAP`](/docs/fr/env-vars).

2743 2733 

2744Le champ `last_assistant_message` contient le contenu textuel de la réponse finale de Claude, donc les hooks peuvent y accéder sans analyser le fichier de transcription. Pour les hooks qui agissent sur le tour qui vient de se terminer, comme les hooks de lecture à haute voix ou de notification, utilisez ce champ plutôt que de lire `transcript_path` : le fichier de transcription n'est pas garanti d'inclure le message final au moment de Stop sur toutes les versions.2734Le champ `last_assistant_message` contient le contenu textuel de la réponse finale de Claude, donc les hooks peuvent y accéder sans analyser le fichier de transcription. Pour les hooks qui agissent sur le tour qui vient de se terminer, comme les hooks de lecture à haute voix ou de notification, utilisez ce champ plutôt que de lire `transcript_path` : le fichier de transcription n'est pas garanti d'inclure le message final au moment de Stop sur toutes les versions.

2745 2735 


2751| :- | :- |2741| :- | :- |

2752| `id` | Identifiant de tâche |2742| `id` | Identifiant de tâche |

2753| `type` | Étiquette de type de tâche conviviale comme `shell`, `subagent`, `monitor`, `workflow`, `teammate`, `cloud session`, ou `MCP task`. Chaque étiquette identifie quelle fonctionnalité Claude Code a créé la tâche. Revient au discriminant brut pour les types non reconnus |2743| `type` | Étiquette de type de tâche conviviale comme `shell`, `subagent`, `monitor`, `workflow`, `teammate`, `cloud session`, ou `MCP task`. Chaque étiquette identifie quelle fonctionnalité Claude Code a créé la tâche. Revient au discriminant brut pour les types non reconnus |

2754| `status` | État actuel de la tâche |2744| `status` | Statut de tâche actuel |

2755| `description` | Description en texte libre, plafonnée à 1 000 caractères avec un marqueur `… [+N chars]` en chaîne quand coupée |2745| `description` | Description en texte libre, plafonnée à 1 000 caractères avec un marqueur `… [+N chars]` en chaîne quand clippée |

2756| `command` | Ligne de commande shell, plafonnée à 1 000 caractères. Présent uniquement pour les tâches `shell` |2746| `command` | Ligne de commande shell, plafonnée à 1 000 caractères. Présent uniquement pour les tâches `shell` |

2757| `agent_type` | Nom du type de sous-agent. Présent uniquement pour les tâches `subagent` |2747| `agent_type` | Nom de type de sous-agent. Présent uniquement pour les tâches `subagent` |

2758| `server` | Nom du serveur MCP. Présent uniquement pour les tâches `monitor` et `MCP task` |2748| `server` | Nom du serveur MCP. Présent uniquement pour les tâches `monitor` et `MCP task` |

2759| `tool` | Nom de l'outil MCP. Présent uniquement pour les tâches `monitor` et `MCP task` |2749| `tool` | Nom de l'outil MCP. Présent uniquement pour les tâches `monitor` et `MCP task` |

2760| `name` | Nom du workflow. Présent uniquement pour les tâches `workflow` |2750| `name` | Nom du workflow. Présent uniquement pour les tâches `workflow` |


2809| :- | :- |2799| :- | :- |

2810| `decision` | `"block"` empêche Claude de s'arrêter. Omettez pour permettre à Claude de s'arrêter |2800| `decision` | `"block"` empêche Claude de s'arrêter. Omettez pour permettre à Claude de s'arrêter |

2811| `reason` | Requis quand `decision` est `"block"`. Dit à Claude pourquoi il devrait continuer |2801| `reason` | Requis quand `decision` est `"block"`. Dit à Claude pourquoi il devrait continuer |

2812| `hookSpecificOutput.additionalContext` | Commentaires sans erreur pour Claude. La conversation continue pour que Claude puisse agir dessus, mais contrairement à `decision: "block"`, elle est montrée dans la transcription comme commentaire de hook plutôt qu'une erreur de hook |2802| `hookSpecificOutput.additionalContext` | Commentaires sans erreur pour Claude. La conversation continue pour que Claude puisse agir dessus, mais contrairement à `decision: "block"`, elle est montrée dans la transcription comme un commentaire de hook plutôt qu'une erreur de hook |

2813 2803 

2814Un hook qui bloque en quittant 2 s'achemine de la même façon que `reason` : Claude reçoit le message stderr comme l'explication de pourquoi il devrait continuer.2804Un hook qui bloque en sortant 2 s'achemine de la même façon que `reason` : Claude reçoit le message stderr comme l'explication de pourquoi il devrait continuer.

2815 2805 

2816```json theme={null}2806```json theme={null}

2817{2807{


2820}2810}

2821```2811```

2822 2812 

2823Utilisez `additionalContext` quand le hook fonctionne comme prévu et donne des conseils à Claude, comme « exécutez la suite de tests avant de terminer ». Cela garde la conversation en cours via les mêmes protections de boucle que `decision: "block"`, à savoir l'entrée `stop_hook_active` et le plafond de 8 continuations consécutives, mais la transcription l'étiquette `Stop hook feedback` et aucune notification d'erreur de hook n'est montrée :2813Utilisez `additionalContext` quand le hook fonctionne comme prévu et donne des conseils à Claude, comme « exécutez la suite de tests avant de terminer ». Cela garde la conversation en cours à travers les mêmes protections de boucle que `decision: "block"`, à savoir l'entrée `stop_hook_active` et le plafond de 8 continuations consécutives, mais la transcription l'étiquette `Stop hook feedback` et aucune notification d'erreur de hook n'est montrée :

2824 2814 

2825```json theme={null}2815```json theme={null}

2826{2816{


2861}2851}

2862```2852```

2863 2853 

2864Les hooks StopFailure n'ont pas de contrôle de décision. Ils s'exécutent à des fins de notification et de logging uniquement.2854Les hooks StopFailure n'ont pas de contrôle de décision. Ils s'exécutent à des fins de notification et d'enregistrement uniquement.

2865 2855 

2866<h3 id="teammateidle">2856<h3 id="teammateidle">

2867 TeammateIdle2857 TeammateIdle

2868</h3>2858</h3>

2869 2859 

2870S'exécute quand un coéquipier d'[équipe agent](/docs/fr/agent-teams) est sur le point de devenir inactif après avoir terminé son tour. Utilisez ceci pour appliquer les portes de qualité avant qu'un coéquipier arrête de travailler, comme exiger les vérifications lint de passage ou vérifier que les fichiers de sortie existent.2860S'exécute quand un coéquipier d'[équipe agent](/docs/fr/agent-teams) est sur le point de devenir inactif après avoir terminé son tour. Utilisez ceci pour appliquer les portes de qualité avant qu'un coéquipier arrête de travailler, comme exiger que les vérifications lint passent ou vérifier que les fichiers de sortie existent.

2871 2861 

2872Les hooks TeammateIdle ne supportent pas les matchers et se déclenchent à chaque occurrence.2862Les hooks TeammateIdle ne supportent pas les matchers et se déclenchent à chaque occurrence.

2873 2863 


2892| Champ | Description |2882| Champ | Description |

2893| :- | :- |2883| :- | :- |

2894| `teammate_name` | Nom du coéquipier qui est sur le point de devenir inactif |2884| `teammate_name` | Nom du coéquipier qui est sur le point de devenir inactif |

2895| `team_name` | Déprécié. Nom d'équipe dérivé de la session ; sera supprimé dans une version future |2885| `team_name` | Déprécié. Nom d'équipe dérivé de session ; sera supprimé dans une version future |

2896 2886 

2897<h4 id="teammateidle-decision-control">2887<h4 id="teammateidle-decision-control">

2898 Contrôle de décision TeammateIdle2888 Contrôle de décision TeammateIdle


2922 2912 

2923S'exécute quand un fichier de configuration change pendant une session. Utilisez ceci pour auditer les changements de paramètres, appliquer les politiques de sécurité, ou bloquer les modifications non autorisées aux fichiers de configuration.2913S'exécute quand un fichier de configuration change pendant une session. Utilisez ceci pour auditer les changements de paramètres, appliquer les politiques de sécurité, ou bloquer les modifications non autorisées aux fichiers de configuration.

2924 2914 

2925Claude Code exécute les hooks ConfigChange quand un fichier de paramètres, un fichier de politique gérée, ou un fichier de skill change. Pour la politique gérée, il les exécute uniquement quand `managed-settings.json` ou un fichier dans `managed-settings.d/` change. Il applique les [paramètres gérés par le serveur](/docs/fr/server-managed-settings) et les changements aux préférences gérées macOS ou à la politique du registre Windows sans les exécuter. Sur WSL avec [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings), il applique également un fichier de paramètres gérés Windows modifié du côté Windows sur son sondage de politique sans les exécuter.2915Claude Code exécute les hooks ConfigChange quand un fichier de paramètres, un fichier de politique gérée, ou un fichier de skill change. Pour la politique gérée, il les exécute uniquement quand `managed-settings.json` ou un fichier dans `managed-settings.d/` change. Il applique les [paramètres gérés par serveur](/docs/fr/server-managed-settings) et les changements aux préférences gérées macOS ou à la politique de registre Windows sans les exécuter. Sur WSL avec [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings), il applique également un fichier de paramètres gérés Windows modifié côté sur son sondage de politique sans les exécuter.

2926 2916 

2927Le matcher filtre sur la source de configuration :2917Le matcher filtre sur la source de configuration :

2928 2918 


2989}2979}

2990```2980```

2991 2981 

2992Les changements `policy_settings` ne peuvent pas être bloqués. Les hooks se déclenchent toujours pour les sources `policy_settings` quand un fichier de paramètres gérés sur la machine change, pour que vous puissiez enregistrer ces édits, mais toute décision de blocage est ignorée. Cela garantit que les paramètres gérés par l'entreprise prennent toujours effet. Claude Code n'exécute pas les hooks `ConfigChange` quand les [paramètres gérés par le serveur](/docs/fr/server-managed-settings) arrivent ou se rafraîchissent.2982Les changements `policy_settings` ne peuvent pas être bloqués. Les hooks se déclenchent toujours pour les sources `policy_settings` quand un fichier de paramètres gérés sur la machine change, pour que vous puissiez enregistrer ces édits, mais toute décision de blocage est ignorée. Cela garantit que les paramètres gérés par l'entreprise prennent toujours effet. Claude Code n'exécute pas les hooks `ConfigChange` quand les [paramètres gérés par serveur](/docs/fr/server-managed-settings) arrivent ou se rafraîchissent.

2993 2983 

2994Claude Code agit sur la décision de blocage de la sortie JSON d'un hook ConfigChange et rejette `systemMessage` et `continue`. Un changement bloqué ne surface aucun message pour vous ou pour Claude, que vous bloquez avec `reason` ou avec stderr sur la sortie 2. Claude Code écrit uniquement une ligne dans le journal de débogage.2984Claude Code agit sur la décision de blocage de la sortie JSON d'un hook ConfigChange et rejette `systemMessage` et `continue`. Un changement bloqué ne surface aucun message pour vous ou Claude, que vous bloquez avec `reason` ou avec stderr en sortie 2. Claude Code écrit uniquement une ligne au journal de débogage.

2995 2985 

2996<h3 id="cwdchanged">2986<h3 id="cwdchanged">

2997 CwdChanged2987 CwdChanged


3081 3071 

3082Les hooks DirectoryAdded n'ont pas de contrôle de décision. Ils ne peuvent pas bloquer l'ajout, qui s'est déjà terminé quand le hook s'exécute. Claude Code rejette le champ `continue` de leur sortie JSON et affiche le reste différemment par source :3072Les hooks DirectoryAdded n'ont pas de contrôle de décision. Ils ne peuvent pas bloquer l'ajout, qui s'est déjà terminé quand le hook s'exécute. Claude Code rejette le champ `continue` de leur sortie JSON et affiche le reste différemment par source :

3083 3073 

3084* `slash_command` : Claude Code livre le `systemMessage` du hook à Claude comme contexte sur le tour de conversation suivant, plutôt que de vous le montrer. Un nombre de hooks échoués apparaît dans la transcription. La sortie d'échec complète va dans le journal de débogage3074* `slash_command` : Claude Code livre le `systemMessage` du hook à Claude comme contexte sur le tour de conversation suivant, plutôt que de vous le montrer. Un nombre de hooks échoués apparaît dans la transcription. La sortie d'échec complète va au journal de débogage

3085* `register_repo_root` : Claude Code écrit la sortie `systemMessage` et la sortie d'échec uniquement dans le journal de débogage3075* `register_repo_root` : Claude Code écrit la sortie `systemMessage` et la sortie d'échec au journal de débogage uniquement

3086 3076 

3087<h3 id="filechanged">3077<h3 id="filechanged">

3088 FileChanged3078 FileChanged


3115}3105}

3116```3106```

3117 3107 

3118Le hook lit le chemin absolu du fichier modifié du champ `file_path` de l'[entrée JSON](#filechanged-input) sur stdin. Sa garde `grep` teste la même chose que `perl` supprime, un CR à la fin d'une ligne, donc l'exécution après une normalisation quitte sans toucher le fichier. Une garde plus lâche boucle pour toujours, parce que `perl -i` réécrit le fichier même quand il ne substitue rien et Claude Code exécute le hook à nouveau après chaque réécriture. Enregistrez ce script à `/path/to/normalize-line-endings.sh` et rendez-le exécutable :3108Le hook lit le chemin absolu du fichier modifié du champ `file_path` de l'[entrée JSON](#filechanged-input) sur stdin. Sa garde `grep` teste la même chose que `perl` supprime, un CR à la fin d'une ligne, donc l'exécution après une normalisation quitte sans toucher le fichier. Une garde plus lâche boucle pour toujours, parce que `perl -i` réécrit le fichier même quand il ne substitue rien et Claude Code exécute le hook à nouveau après chaque réécriture. Enregistrez ce script dans `/path/to/normalize-line-endings.sh` et rendez-le exécutable :

3119 3109 

3120```bash theme={null}3110```bash theme={null}

3121#!/bin/bash3111#!/bin/bash


3198}3188}

3199```3189```

3200 3190 

3201Le hook lit le `name` du worktree de l'entrée JSON sur stdin, extrait une copie fraîche dans un nouveau répertoire, et imprime le chemin du répertoire. Le `echo` sur la dernière ligne est ce que Claude Code lit comme le chemin du worktree. Redirigez toute autre sortie vers stderr pour qu'elle n'interfère pas avec le chemin.3191Le hook lit le `name` du worktree de l'entrée JSON sur stdin, extrait une copie fraîche dans un nouveau répertoire, et imprime le chemin du répertoire. L'`echo` sur la dernière ligne est ce que Claude Code lit comme le chemin du worktree. Redirigez toute autre sortie vers stderr pour qu'elle n'interfère pas avec le chemin.

3202 3192 

3203<h4 id="worktreecreate-input">3193<h4 id="worktreecreate-input">

3204 Entrée WorktreeCreate3194 Entrée WorktreeCreate


3222 3212 

3223Les hooks WorktreeCreate n'utilisent pas le modèle de décision permettre/bloquer standard. Au lieu de cela, le succès ou l'échec du hook détermine le résultat. Le hook doit retourner le chemin du répertoire worktree créé :3213Les hooks WorktreeCreate n'utilisent pas le modèle de décision permettre/bloquer standard. Au lieu de cela, le succès ou l'échec du hook détermine le résultat. Le hook doit retourner le chemin du répertoire worktree créé :

3224 3214 

3225* **Hooks de commande** (`type: "command"`): imprimez le chemin comme la dernière ligne non-vide de stdout. Claude Code supprime les codes d'échappement ANSI avant de lire cette ligne, donc les bannières de démarrage du shell imprimées avant votre `echo` sont ignorées. Redirigez toute autre sortie du hook vers stderr.3215* **Hooks de commande** (`type: "command"`) : imprimez le chemin comme la dernière ligne non-vide de stdout. Claude Code supprime les codes d'échappement ANSI avant de lire cette ligne, donc les bannières de démarrage du shell imprimées avant votre `echo` sont ignorées. Redirigez toute autre sortie du hook vers stderr.

3226* **Hooks HTTP** (`type: "http"`): retournez `{ "hookSpecificOutput": { "hookEventName": "WorktreeCreate", "worktreePath": "/absolute/path" } }` dans le corps de la réponse.3216* **Hooks HTTP** (`type: "http"`) : retournez `{ "hookSpecificOutput": { "hookEventName": "WorktreeCreate", "worktreePath": "/absolute/path" } }` dans le corps de la réponse.

3227 3217 

3228Si le hook échoue ou ne produit pas de chemin, la création du worktree échoue avec une erreur.3218Si le hook échoue ou ne produit pas de chemin, la création du worktree échoue avec une erreur.

3229 3219 

3230Claude Code résout un chemin relatif contre le répertoire dans lequel le hook s'est exécuté, en effondrant tout segment `.` ou `..` dedans. Si le chemin résultant n'est pas un répertoire que Claude Code peut entrer, la session imprime une erreur nommant le chemin et quitte avec le code 1.3220Claude Code résout un chemin relatif contre le répertoire où le hook s'est exécuté, en effondrant tout segment `.` ou `..` dedans. Si le chemin résultant n'est pas un répertoire que Claude Code peut entrer, la session imprime une erreur nommant le chemin et quitte avec le code 1.

3231 3221 

3232Claude Code refuse un chemin absolu qui contient des segments `.` ou `..`, et n'importe quel chemin qui passe par un lien symbolique en dessous de la racine du référentiel, parce qu'un lien symbolique commis au référentiel pourrait rediriger le worktree en dehors de lui. L'erreur nomme le composant rejeté. Retournez un chemin normalisé qui ne passe pas par un lien symbolique à l'intérieur du référentiel. Avant v2.1.216, la création du worktree suivait le chemin du hook sans ce dépistage.3222Claude Code refuse un chemin absolu qui contient des segments `.` ou `..`, et n'importe quel chemin qui passe par un lien symbolique en dessous de la racine du référentiel, parce qu'un lien symbolique commis au référentiel pourrait rediriger le worktree en dehors de lui. L'erreur nomme le composant rejeté. Retournez un chemin normalisé qui ne passe pas par un lien symbolique à l'intérieur du référentiel. Avant v2.1.216, la création du worktree suivait le chemin du hook sans ce dépistage.

3233 3223 


3245 3235 

3246Claude Code rejette les [champs de sortie JSON](#json-output) d'un hook WorktreeRemove, comme `systemMessage` et `continue`.3236Claude Code rejette les [champs de sortie JSON](#json-output) d'un hook WorktreeRemove, comme `systemMessage` et `continue`.

3247 3237 

3248Pour une suppression de session en arrière-plan, Claude Code vérifie le chemin du worktree stocké avant d'exécuter le hook et refuse un chemin qui est un lien symbolique ou passe par un en dessous de la racine du référentiel. Le hook s'exécute pour un worktree qui contient toujours des fichiers uniquement quand vous confirmez la suppression dans la [vue agent](/docs/fr/agent-view#what-deleting-a-session-removes) ; pour un tel worktree, [`claude rm`](/docs/fr/agent-view#manage-sessions-from-the-shell) garde la session et le worktree à la place. Avant v2.1.216, le hook s'exécutait sur le chemin stocké sans ces vérifications.3238Pour une suppression de session en arrière-plan, Claude Code vérifie le chemin du worktree stocké avant d'exécuter le hook et refuse un chemin qui est un lien symbolique ou passe par un. Le hook s'exécute pour un worktree qui contient toujours des fichiers uniquement quand vous confirmez la suppression dans la [vue agent](/docs/fr/agent-view#what-deleting-a-session-removes) ; pour un tel worktree, [`claude rm`](/docs/fr/agent-view#manage-sessions-from-the-shell) garde la session et le worktree à la place. Avant v2.1.216, le hook s'exécutait sur le chemin stocké sans ces vérifications.

3249 3239 

3250Claude Code passe le chemin retourné par WorktreeCreate comme `worktree_path` dans l'entrée du hook. Cet exemple lit ce chemin et supprime le répertoire :3240Claude Code passe le chemin retourné par WorktreeCreate comme `worktree_path` dans l'entrée du hook. Cet exemple lit ce chemin et supprime le répertoire :

3251 3241 


3282}3272}

3283```3273```

3284 3274 

3285Le code de sortie d'un hook WorktreeRemove décide du résultat. Quand un hook quitte non-zéro et le répertoire à `worktree_path` existe toujours après, la suppression échoue :3275Le code de sortie d'un hook WorktreeRemove décide du résultat. Quand un hook sort non-zéro et le répertoire à `worktree_path` existe toujours après, la suppression échoue :

3286 3276 

3287* Le worktree reste sur le disque, et la commande du hook et stderr vont dans le [journal de débogage](#debug-hooks).3277* Le worktree reste sur le disque, et la commande du hook et stderr vont au [journal de débogage](#debug-hooks).

3288* Si vous supprimiez une session en arrière-plan, la session reste aussi. Le message de refus dans la [vue agent](/docs/fr/agent-view#what-deleting-a-session-removes) rapporte comment le hook s'est terminé, comme `exited 1`, cite le début de son stderr, et dit si la suppression de la session à nouveau supprime le répertoire de toute façon.3278* Si vous supprimiez une session en arrière-plan, la session reste aussi. Le message de refus dans la [vue agent](/docs/fr/agent-view#what-deleting-a-session-removes) signale comment le hook s'est terminé, comme `exited 1`, cite le début de son stderr, et dit si la suppression de la session à nouveau supprime le répertoire de toute façon.

3289 3279 

3290<h3 id="precompact">3280<h3 id="precompact">

3291 PreCompact3281 PreCompact


3300| `manual` | `/compact` |3290| `manual` | `/compact` |

3301| `auto` | Compaction automatique quand la conversation atteint la [fenêtre de compaction automatique](/docs/fr/model-config#set-the-auto-compact-window) |3291| `auto` | Compaction automatique quand la conversation atteint la [fenêtre de compaction automatique](/docs/fr/model-config#set-the-auto-compact-window) |

3302 3292 

3303Quittez avec le code 2 pour bloquer la compaction. Pour un `/compact` manuel, le message stderr est montré à l'utilisateur. Vous pouvez également bloquer en retournant JSON avec `"decision": "block"`.3293Sortez avec le code 2 pour bloquer la compaction. Pour un `/compact` manuel, le message stderr est montré à l'utilisateur. Vous pouvez également bloquer en retournant JSON avec `"decision": "block"`.

3304 3294 

3305Bloquer la compaction automatique a des effets différents selon quand elle se déclenche. Si la compaction a été déclenchée de manière proactive avant la limite de contexte, Claude Code la saute et la conversation continue sans compaction. Si la compaction a été déclenchée pour récupérer d'une erreur de limite de contexte déjà retourné par l'API, l'erreur sous-jacente surface et la requête actuelle échoue.3295Bloquer la compaction automatique a des effets différents selon quand elle se déclenche. Si la compaction a été déclenchée de manière proactive avant la limite de contexte, Claude Code la saute et la conversation continue non-compactée. Si la compaction a été déclenchée pour récupérer d'une erreur de limite de contexte déjà retourné par l'API, l'erreur sous-jacente surface et la requête actuelle échoue.

3306 3296 

3307Claude Code rejette les champs `systemMessage` et `continue` d'un hook PreCompact.3297Claude Code rejette les champs `systemMessage` et `continue` d'un hook PreCompact.

3308 3298 


3340 Entrée PostCompact3330 Entrée PostCompact

3341</h4>3331</h4>

3342 3332 

3343En plus des [champs d'entrée communs](#common-input-fields), les hooks PostCompact reçoivent `trigger` et `compact_summary`. Le champ `compact_summary` contient le résumé de conversation généré par l'opération de compaction.3333En plus des [champs d'entrée communs](#common-input-fields), les hooks PostCompact reçoivent `trigger` et `compact_summary`. Le champ `compact_summary` contient le résumé de la conversation généré par l'opération de compaction.

3344 3334 

3345```json theme={null}3335```json theme={null}

3346{3336{


3369* Activer le [mode rapide](/docs/fr/fast-mode) quand cela change le modèle de la session3359* Activer le [mode rapide](/docs/fr/fast-mode) quand cela change le modèle de la session

3370* Une requête `set_model`, ou un changement de modèle dans une requête `apply_flag_settings`, d'un hôte [Agent SDK](/docs/fr/agent-sdk/typescript#query-object) ou [Remote Control](/docs/fr/remote-control)3360* Une requête `set_model`, ou un changement de modèle dans une requête `apply_flag_settings`, d'un hôte [Agent SDK](/docs/fr/agent-sdk/typescript#query-object) ou [Remote Control](/docs/fr/remote-control)

3371 3361 

3372Claude Code n'exécute pas les hooks PreModelSwitch pour les changements qu'il fait de son propre chef, comme un [repli de modèle automatique](/docs/fr/model-config#automatic-model-fallback) ou la restauration du modèle quand vous reprenez une session. Ces changements atteignent [PostModelSwitch](#postmodelswitch) uniquement.3362Claude Code n'exécute pas les hooks PreModelSwitch pour les changements qu'il effectue seul, comme un [repli de modèle automatique](/docs/fr/model-config#automatic-model-fallback) ou la restauration du modèle quand vous reprenez une session. Ces changements atteignent [PostModelSwitch](#postmodelswitch) uniquement.

3373 3363 

3374Claude Code compare le matcher contre le nom canonique du modèle vers lequel la session change, en ignorant tout suffixe `[1m]`. Un alias comme `opus`, un ID de modèle daté, et un ID spécifique au fournisseur comme un ID de modèle Amazon Bedrock correspondent tous au seul nom canonique auquel ils se résolvent, donc `claude-opus-5` couvre chaque orthographe d'Opus 5.3364Claude Code compare le matcher contre le nom canonique du modèle vers lequel la session change, en ignorant tout suffixe `[1m]`. Un alias comme `opus`, un ID de modèle daté, et un ID spécifique au fournisseur comme un ID de modèle Amazon Bedrock correspondent tous au seul nom canonique auquel ils se résolvent, donc `claude-opus-5` couvre chaque orthographe d'Opus 5.

3375 3365 

3376Quand Claude Code ne peut pas déterminer un nom canonique pour la cible, par exemple un ID de modèle personnalisé que seule votre [passerelle LLM](/docs/fr/llm-gateway) connaît, il exécute chaque hook PreModelSwitch indépendamment du matcher. Un hook qui bloque devrait donc vérifier `to_model` de son entrée plutôt que de compter sur le matcher seul.3366Quand Claude Code ne peut pas déterminer un nom canonique pour la cible, par exemple un ID de modèle personnalisé que seule votre [passerelle LLM](/docs/fr/llm-gateway) connaît, il exécute chaque hook PreModelSwitch indépendamment du matcher. Un hook qui bloque devrait donc vérifier `to_model` de son entrée plutôt que de compter uniquement sur le matcher.

3377 3367 

3378Écrivez le matcher comme un nom exact, une liste séparée par `|` comme `claude-opus-4-6|claude-opus-5`, ou une expression régulière comme `.*opus.*`. Cet exemple utilise un matcher de nom exact et vérifie également `to_model` de l'entrée du hook, donc il refuse un changement vers Opus 4.6 en quittant avec le code 2 et laisse n'importe quelle autre cible passer :3368Écrivez le matcher comme un nom exact, une liste séparée par `|` comme `claude-opus-4-6|claude-opus-5`, ou une expression régulière comme `.*opus.*`. Cet exemple utilise un matcher de nom exact et vérifie également `to_model` de l'entrée du hook, donc il refuse un changement vers Opus 4.6 en sortant avec le code 2 et laisse n'importe quelle autre cible passer :

3379 3369 

3380<Tabs>3370<Tabs>

3381 <Tab title="macOS/Linux">3371 <Tab title="macOS/Linux">


3441 </Tab>3431 </Tab>

3442</Tabs>3432</Tabs>

3443 3433 

3444Pour confirmer que le hook fonctionne, exécutez `/model claude-opus-4-6` à partir d'une session exécutant un modèle différent. Claude Code garde le modèle actuel et rapporte qu'un hook PreModelSwitch a bloqué le changement, avec votre message comme raison.3434Pour confirmer que le hook fonctionne, exécutez `/model claude-opus-4-6` à partir d'une session exécutant un modèle différent. Claude Code garde le modèle actuel et signale qu'un hook PreModelSwitch a bloqué le changement, avec votre message comme raison.

3445 3435 

3446<h4 id="premodelswitch-input">3436<h4 id="premodelswitch-input">

3447 Entrée PreModelSwitch3437 Entrée PreModelSwitch

3448</h4>3438</h4>

3449 3439 

3450En plus des [champs d'entrée communs](#common-input-fields), les hooks PreModelSwitch reçoivent les champs de ce tableau. Les cinq derniers décrivent ce que renvoyer la conversation au nouveau modèle coûte, pour qu'un hook puisse montrer ce chiffre avant que le changement se produise.3440En plus des [champs d'entrée communs](#common-input-fields), les hooks PreModelSwitch reçoivent les champs du tableau ci-dessous. Les cinq derniers décrivent ce que le renvoi de la conversation au nouveau modèle coûte, pour qu'un hook puisse montrer ce chiffre avant que le changement se produise.

3451 3441 

3452| Champ | Type | Description |3442| Champ | Type | Description |

3453| :- | :- | :- |3443| :- | :- | :- |

3454| `from_model` | string | ID du modèle que le changement change |3444| `from_model` | string | ID de modèle que le changement change de |

3455| `to_model` | string | ID du modèle que le changement change vers. Le matcher compare contre le nom canonique de ce modèle |3445| `to_model` | string | ID de modèle que le changement change vers. Le matcher compare contre le nom canonique de ce modèle |

3456| `requested_model` | string ou `null` | Le modèle que la requête a nommé : un alias comme `opus`, un ID de modèle complet, ou `null` quand la requête était pour le modèle par défaut |3446| `requested_model` | string ou `null` | Le modèle que la requête a nommé : un alias comme `opus`, un ID de modèle complet, ou `null` quand la requête était pour le modèle par défaut |

3457| `source` | string | D'où provient la requête : `"command"` pour `/model <name>`, le paramètre Model dans `/config`, ou l'activation du mode rapide ; `"picker"` pour un sélecteur de modèle ; `"sdk"` pour une requête `set_model`, ou un changement de modèle dans une requête `apply_flag_settings`, d'un hôte Agent SDK ou Remote Control |3447| `source` | string | D'où provient la requête : `"command"` pour `/model <name>`, le paramètre Model dans `/config`, ou l'activation du mode rapide ; `"picker"` pour un sélecteur de modèle ; `"sdk"` pour une requête `set_model`, ou un changement de modèle dans une requête `apply_flag_settings`, d'un hôte Agent SDK ou Remote Control |

3458| `context_tokens` | number | Tokens que la requête suivante renvoie comme son invite : les tokens d'entrée, de lecture de cache, de création de cache, et de sortie de la dernière réponse dans la conversation principale, combinés. `0` avant la première réponse |3448| `context_tokens` | number | Tokens que la requête suivante renvoie comme son invite : les tokens d'entrée, de lecture de cache, de création de cache, et de sortie de la dernière réponse dans la conversation principale, combinés. `0` avant la première réponse |

3459| `prompt_cache_warm` | boolean | Si le cache d'invite du modèle actuel est probablement toujours chaud, ce qui signifie que le changement le perd |3449| `prompt_cache_warm` | boolean | Si le cache d'invite du modèle actuel est probablement toujours chaud, ce qui signifie que le changement le perd |

3460| `cache_ttl` | string | [Durée de vie du cache d'invite](/docs/fr/prompt-caching#cache-lifetime) que Claude Code demande pour cette session : `"5m"` ou `"1h"` |3450| `cache_ttl` | string | [Durée de vie du cache d'invite](/docs/fr/prompt-caching#cache-lifetime) que Claude Code demande pour cette session : `"5m"` ou `"1h"` |

3461| `estimated_cache_write_usd` | number | Coût estimé en dollars US de l'écriture de `context_tokens` dans le cache d'invite sur `to_model` au taux `cache_ttl`, excluant la réponse suivante. Le serveur peut ne pas avoir besoin de recacher le contexte entier, donc traitez-le comme une estimation |3451| `estimated_cache_write_usd` | number | Coût estimé en dollars US de l'écriture de `context_tokens` dans le cache d'invite sur `to_model` au taux `cache_ttl`, excluant la réponse suivante. Le serveur peut ne pas avoir besoin de recacher le contexte entier, donc traitez-le comme une estimation |

3462| `pricing` | string | Comment Claude Code a tarifé `estimated_cache_write_usd` : `"configured"` à vos propres taux d'organisation quand elle les a configurés, `"catalog"` au prix catalogue, ou `"default"` quand `to_model` n'a pas de prix connu et Claude Code a supposé un taux par défaut |3452| `pricing` | string | Comment Claude Code a tarifé `estimated_cache_write_usd` : `"configured"` à vos propres tarifs d'organisation quand elle les a configurés, `"catalog"` au prix catalogue, ou `"default"` quand `to_model` n'a pas de prix connu et Claude Code a supposé un taux par défaut |

3463 3453 

3464Cet exemple montre l'entrée pour `/model opus` dans une session exécutant Sonnet 5 :3454Cet exemple montre l'entrée pour `/model opus` dans une session exécutant Sonnet 5 :

3465 3455 


3508}3498}

3509```3499```

3510 3500 

3511Quand plusieurs hooks PreModelSwitch retournent des décisions différentes, la priorité est `deny` > `ask` > `allow`.3501Quand plusieurs hooks PreModelSwitch retournent des décisions différentes, la précédence est `deny` > `ask` > `allow`.

3512 3502 

3513Claude Code montre à l'utilisateur tout `systemMessage` que votre hook retourne indépendamment de la décision, pour qu'un hook de rapport de coûts puisse retourner `{"systemMessage": "..."}` et quitter 0.3503Claude Code montre à l'utilisateur tout `systemMessage` que votre hook retourne indépendamment de la décision, pour qu'un hook de rapport de coût puisse retourner `{"systemMessage": "..."}` et sortir 0.

3514 3504 

3515Un hook PreModelSwitch qui ne répond pas avant son délai d'expiration bloque le changement. Sur [PreToolUse](#timeouts), par contraste, un hook de commande qui expire laisse l'appel d'outil continuer. Le délai d'expiration par défaut pour cet événement est 30 secondes. `PreModelSwitch` exécute uniquement les hooks `command`, `http`, et `mcp_tool`, donc les défauts `prompt` et `agent` ne s'appliquent pas.3505Un hook PreModelSwitch qui ne répond pas avant son délai d'expiration bloque le changement. Sur [PreToolUse](#timeouts), par contraste, un hook de commande qui expire laisse l'appel d'outil continuer. Le délai d'expiration par défaut pour cet événement est 30 secondes. `PreModelSwitch` exécute uniquement les hooks `command`, `http`, et `mcp_tool`, donc les défauts `prompt` et `agent` ne s'appliquent pas.

3516 3506 

3517Un hook qui quitte avec un code autre que 0 ou 2 et n'imprime pas de décision JSON ne bloque pas : Claude Code montre son stderr et applique le changement, comme décrit sous [Autres codes de sortie](#other-exit-codes).3507Un hook qui sort avec un code autre que 0 ou 2 et n'imprime pas de décision JSON ne bloque pas : Claude Code montre son stderr et applique le changement, comme décrit sous [Autres codes de sortie](#other-exit-codes).

3518 3508 

3519<h3 id="postmodelswitch">3509<h3 id="postmodelswitch">

3520 PostModelSwitch3510 PostModelSwitch


3527* Un changement que vous ou un client avez demandé3517* Un changement que vous ou un client avez demandé

3528* Un [repli de modèle automatique](/docs/fr/model-config#automatic-model-fallback), qui change le modèle de la session3518* Un [repli de modèle automatique](/docs/fr/model-config#automatic-model-fallback), qui change le modèle de la session

3529* Un paramètre comme [`opusplan`](/docs/fr/model-config#opusplan-model-setting) entrant ou quittant le mode plan3519* Un paramètre comme [`opusplan`](/docs/fr/model-config#opusplan-model-setting) entrant ou quittant le mode plan

3530* Claude Code restaure le modèle quand vous reprenez une session3520* Claude Code restaurant le modèle quand vous reprenez une session

3531 3521 

3532Claude Code n'exécute pas les hooks PostModelSwitch quand un modèle d'une [chaîne de modèle de repli](/docs/fr/model-config#fallback-model-chains) sert un tour, parce que cette substitution dure un tour et laisse le modèle de la session inchangé.3522Claude Code n'exécute pas les hooks PostModelSwitch quand un modèle d'une [chaîne de modèles de repli](/docs/fr/model-config#fallback-model-chains) sert un tour, parce que cette substitution dure un tour et laisse le modèle de la session inchangé.

3533 3523 

3534Le matcher suit les mêmes règles que [PreModelSwitch](#premodelswitch) : Claude Code le compare contre le nom canonique du modèle vers lequel la session a changé.3524Le matcher suit les mêmes règles que [PreModelSwitch](#premodelswitch) : Claude Code compare le matcher contre le nom canonique du modèle vers lequel la session a changé.

3535 3525 

3536Cet exemple ajoute des conseils chaque fois que le modèle de la session change vers n'importe quel modèle Opus :3526Cet exemple ajoute des conseils chaque fois que le modèle de la session change vers n'importe quel modèle Opus :

3537 3527 


3559 Entrée PostModelSwitch3549 Entrée PostModelSwitch

3560</h4>3550</h4>

3561 3551 

3562Les hooks PostModelSwitch reçoivent les mêmes champs que [PreModelSwitch](#premodelswitch-input), avec `hook_event_name` défini à `"PostModelSwitch"` et deux valeurs `source` supplémentaires : `"auto"` pour un repli automatique ou un autre changement que Claude Code a fait de son propre chef, et `"resume"` pour le modèle restauré quand vous reprenez une session.3552Les hooks PostModelSwitch reçoivent les mêmes champs que [PreModelSwitch](#premodelswitch-input), avec `hook_event_name` défini à `"PostModelSwitch"` et deux valeurs `source` supplémentaires : `"auto"` pour un repli automatique ou un autre changement que Claude Code a effectué seul, et `"resume"` pour le modèle restauré quand vous reprenez une session.

3563 3553 

3564`requested_model` est `null` quand `source` est `"auto"`. Quand `source` est `"resume"`, c'est le paramètre de modèle sauvegardé que Claude Code a restauré.3554`requested_model` est `null` quand `source` est `"auto"`. Quand `source` est `"resume"`, c'est le paramètre de modèle sauvegardé que Claude Code a restauré.

3565 3555 


3567 Contrôle de décision PostModelSwitch3557 Contrôle de décision PostModelSwitch

3568</h4>3558</h4>

3569 3559 

3570Claude Code prend votre sortie standard [texte brut](#exit-code-0) du hook sur la sortie 0, ou `additionalContext` de la sortie JSON, et la livre à Claude avec la requête suivante après le changement. En plus des [champs de sortie JSON](#json-output) disponibles pour tous les hooks, vous pouvez retourner :3560Claude Code prend votre sortie standard en texte brut du hook sur la sortie 0, ou `additionalContext` de la sortie JSON, et la livre à Claude avec la requête suivante après le changement. En plus des [champs de sortie JSON](#json-output) disponibles pour tous les hooks, vous pouvez retourner :

3571 3561 

3572| Champ | Description |3562| Champ | Description |

3573| :- | :- |3563| :- | :- |

3574| `additionalContext` | Chaîne ajoutée au contexte de Claude avec la requête suivante. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) |3564| `additionalContext` | Chaîne ajoutée au contexte de Claude avec la requête suivante. Voir [Ajouter du contexte pour Claude](#add-context-for-claude) |

3575 3565 

3576Si le hook n'a pas fini dans les cinq secondes après que vous envoyiez la requête suivante, Claude Code envoie cette requête sans la sortie et l'attache à la requête suivante à la place. Si le modèle change plusieurs fois avant la requête suivante, Claude Code livre uniquement la sortie pour le modèle cible du dernier changement.3566Si le hook n'a pas terminé dans les cinq secondes après que vous envoyiez la requête suivante, Claude Code envoie cette requête sans la sortie et l'attache à la requête suivante à la place. Si le modèle change plusieurs fois avant la requête suivante, Claude Code livre uniquement la sortie pour le changement de cible du dernier modèle.

3577 3567 

3578<h3 id="sessionend">3568<h3 id="sessionend">

3579 SessionEnd3569 SessionEnd

3580</h3>3570</h3>

3581 3571 

3582S'exécute quand une session Claude Code se termine. Utile pour les tâches de nettoyage, l'enregistrement des statistiques de session, ou la sauvegarde de l'état de la session. Supporte les matchers pour filtrer par raison de sortie.3572S'exécute quand une session Claude Code se termine. Utile pour les tâches de nettoyage, l'enregistrement des statistiques de session, ou la sauvegarde de l'état de session. Supporte les matchers pour filtrer par raison de sortie.

3583 3573 

3584Le champ `reason` dans l'entrée du hook indique pourquoi la session s'est terminée :3574Le champ `reason` dans l'entrée du hook indique pourquoi la session s'est terminée :

3585 3575 


3608}3598}

3609```3599```

3610 3600 

3611Les hooks SessionEnd n'ont pas de contrôle de décision. Ils ne peuvent pas bloquer la terminaison de la session mais peuvent effectuer les tâches de nettoyage. Claude Code rejette leurs [champs de sortie JSON](#json-output), comme `systemMessage`.3601Les hooks SessionEnd n'ont pas de contrôle de décision. Ils ne peuvent pas bloquer la terminaison de session mais peuvent effectuer les tâches de nettoyage. Claude Code rejette leurs [champs de sortie JSON](#json-output), comme `systemMessage`.

3612 3602 

3613Les hooks SessionEnd ont un délai d'expiration par défaut de 1,5 secondes. Il s'applique quand vous quittez, exécutez `/clear`, ou changez de sessions avec `/resume` interactif. Vous pouvez donner à un hook plus de temps de deux façons :3603Les hooks SessionEnd ont un délai d'expiration par défaut de 1,5 secondes. Il s'applique quand vous quittez, exécutez `/clear`, ou changez de session avec `/resume` interactif. Vous pouvez donner à un hook plus de temps de deux façons :

3614 3604 

3615* **`timeout` par hook** : définissez `timeout` dans la configuration de ce hook. Le budget global augmente automatiquement pour correspondre au `timeout` par hook le plus élevé dans vos fichiers de paramètres, jusqu'à 60 secondes. Si vous augmentez le budget de cette façon, un hook sans son propre `timeout` garde toujours le défaut. Les délais d'expiration définis sur les hooks fournis par les plugins ne lèvent pas le budget.3605* **`timeout` par hook** : définissez `timeout` dans la configuration de ce hook. Le budget global augmente automatiquement pour correspondre au `timeout` par hook le plus élevé dans vos fichiers de paramètres, jusqu'à 60 secondes. Si vous augmentez le budget de cette façon, un hook sans son propre `timeout` garde toujours le défaut. Les délais d'expiration définis sur les hooks fournis par plugin ne lèvent pas le budget.

3616* **`CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS`** : définissez cette variable d'environnement en millisecondes pour remplacer le budget explicitement. La valeur que vous définissez devient également le délai d'expiration pour chaque hook sans son propre `timeout`.3606* **`CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS`** : définissez cette variable d'environnement en millisecondes pour remplacer le budget explicitement. La valeur que vous définissez devient également le délai d'expiration pour chaque hook sans son propre `timeout`.

3617 3607 

3618Cet exemple définit le budget à 5 secondes :3608Cet exemple définit le budget à 5 secondes :


3627 Elicitation3617 Elicitation

3628</h3>3618</h3>

3629 3619 

3630S'exécute quand un serveur MCP demande l'entrée utilisateur en cours de tâche. Par défaut, Claude Code montre un dialogue interactif pour que l'utilisateur réponde. Les hooks peuvent intercepter cette requête et répondre par programmation, ignorant entièrement le dialogue.3620S'exécute quand un serveur MCP demande l'entrée de l'utilisateur en cours de tâche. Par défaut, Claude Code montre un dialogue interactif pour que l'utilisateur réponde. Les hooks peuvent intercepter cette requête et répondre par programmation, ignorant entièrement le dialogue.

3631 3621 

3632Le champ matcher correspond au nom du serveur MCP.3622Le champ matcher correspond au nom du serveur MCP.

3633 3623 


3693| Champ | Valeurs | Description |3683| Champ | Valeurs | Description |

3694| :- | :- | :- |3684| :- | :- | :- |

3695| `action` | `accept`, `decline`, `cancel` | Si vous acceptez, refusez, ou annulez la requête |3685| `action` | `accept`, `decline`, `cancel` | Si vous acceptez, refusez, ou annulez la requête |

3696| `content` | object | Valeurs des champs de formulaire à soumettre. Utilisé uniquement quand `action` est `accept` |3686| `content` | object | Valeurs de champ de formulaire à soumettre. Utilisé uniquement quand `action` est `accept` |

3697 3687 

3698Le code de sortie 2 refuse l'élicitation. Claude Code n'affiche votre message stderr nulle part.3688Le code de sortie 2 refuse l'élicitation. Claude Code ne montre votre message stderr nulle part.

3699 3689 

3700Claude Code agit sur `hookSpecificOutput` de la sortie JSON d'un hook Elicitation et rejette `systemMessage` et `continue`.3690Claude Code agit sur `hookSpecificOutput` de la sortie JSON d'un hook Elicitation et rejette `systemMessage` et `continue`.

3701 3691 


3746| Champ | Valeurs | Description |3736| Champ | Valeurs | Description |

3747| :- | :- | :- |3737| :- | :- | :- |

3748| `action` | `accept`, `decline`, `cancel` | Remplace l'action de l'utilisateur |3738| `action` | `accept`, `decline`, `cancel` | Remplace l'action de l'utilisateur |

3749| `content` | object | Remplace les valeurs des champs de formulaire. Significatif uniquement quand `action` est `accept` |3739| `content` | object | Remplace les valeurs de champ de formulaire. Significatif uniquement quand `action` est `accept` |

3750 3740 

3751Le code de sortie 2 bloque la réponse, changeant l'action effective à `decline`. Claude Code n'affiche votre message stderr nulle part.3741Le code de sortie 2 bloque la réponse, changeant l'action effective à `decline`. Claude Code ne montre votre message stderr nulle part.

3752 3742 

3753Claude Code agit sur `hookSpecificOutput` de la sortie JSON d'un hook ElicitationResult et rejette `systemMessage` et `continue`.3743Claude Code agit sur `hookSpecificOutput` de la sortie JSON d'un hook ElicitationResult et rejette `systemMessage` et `continue`.

3754 3744 


3804 3794 

3805Au lieu d'exécuter une commande Bash, les hooks basés sur des prompts :3795Au lieu d'exécuter une commande Bash, les hooks basés sur des prompts :

3806 3796 

38071. Envoient l'entrée du hook et votre prompt à un modèle Claude, Haiku par défaut37971. Envoient l'entrée du hook et votre prompt à un modèle Claude, par défaut celui que Claude Code utilise pour la [fonctionnalité en arrière-plan](/docs/fr/costs#background-token-usage)

38082. Le LLM répond avec JSON structuré contenant une décision37982. Le LLM répond avec JSON structuré contenant une décision

38093. Claude Code traite automatiquement la décision37993. Claude Code traite automatiquement la décision

3810 3800 


3837| :- | :- | :- |3827| :- | :- | :- |

3838| `type` | oui | Doit être `"prompt"` |3828| `type` | oui | Doit être `"prompt"` |

3839| `prompt` | oui | Le texte du prompt à envoyer au LLM. Utilisez `$ARGUMENTS` comme placeholder pour l'entrée JSON du hook. Si `$ARGUMENTS` n'est pas présent, l'entrée JSON est ajoutée au prompt |3829| `prompt` | oui | Le texte du prompt à envoyer au LLM. Utilisez `$ARGUMENTS` comme placeholder pour l'entrée JSON du hook. Si `$ARGUMENTS` n'est pas présent, l'entrée JSON est ajoutée au prompt |

3840| `model` | non | Modèle à utiliser pour l'évaluation. Par défaut un modèle rapide |3830| `model` | non | Modèle à utiliser pour l'évaluation. Par défaut le modèle que Claude Code utilise pour la [fonctionnalité en arrière-plan](/docs/fr/costs#background-token-usage) |

3841| `timeout` | non | Délai d'expiration en secondes. Par défaut : 30 |3831| `timeout` | non | Délai d'expiration en secondes. Par défaut : 30 |

3842| `continueOnBlock` | non | Sur les événements auxquels elle s'applique, `true` renvoie une raison `ok: false` à Claude et continue au lieu de terminer le tour. Par défaut : `false`. Voir [Schéma de réponse](#response-schema) pour le comportement par événement |3832| `continueOnBlock` | non | Sur les événements auxquels elle s'applique, `true` renvoie une raison `ok: false` à Claude et continue au lieu de terminer le tour. Par défaut : `false`. Voir [Schéma de réponse](#response-schema) pour le comportement par événement |

3843 3833 

hooks-guide.md +3 −3

Details

538Chaque hook a un `type` qui détermine comment il s'exécute. La plupart des hooks utilisent `"type": "command"`, qui exécute une commande shell. Quatre autres types sont disponibles :538Chaque hook a un `type` qui détermine comment il s'exécute. La plupart des hooks utilisent `"type": "command"`, qui exécute une commande shell. Quatre autres types sont disponibles :

539 539 

540* `"type": "http"` : POST les données d'événement vers une URL. Consultez [Hooks HTTP](#http-hooks).540* `"type": "http"` : POST les données d'événement vers une URL. Consultez [Hooks HTTP](#http-hooks).

541* `"type": "mcp_tool"` : appeler un outil sur un serveur MCP déjà connecté. Consultez [Champs de hooks d'outil MCP](/docs/fr/hooks#mcp-tool-hook-fields).541* `"type": "mcp_tool"` : appeler un outil sur un serveur MCP configuré. Consultez [Champs de hooks d'outil MCP](/docs/fr/hooks#mcp-tool-hook-fields).

542* `"type": "prompt"` : évaluation LLM à un seul tour. Consultez [Hooks basés sur des invites](#prompt-based-hooks).542* `"type": "prompt"` : évaluation LLM à un seul tour. Consultez [Hooks basés sur des invites](#prompt-based-hooks).

543* `"type": "agent"` : vérification multi-tour avec accès aux outils. Les hooks d'agent sont expérimentaux et peuvent changer. Consultez [Hooks basés sur des agents](#agent-based-hooks).543* `"type": "agent"` : vérification multi-tour avec accès aux outils. Les hooks d'agent sont expérimentaux et peuvent changer. Consultez [Hooks basés sur des agents](#agent-based-hooks).

544 544 


880 Hooks basés sur des invites880 Hooks basés sur des invites

881</h2>881</h2>

882 882 

883Pour les décisions qui nécessitent un jugement plutôt que des règles déterministes, utilisez les hooks `type: "prompt"`. Au lieu d'exécuter une commande shell, Claude Code envoie votre invite et les données d'entrée du hook à un modèle Claude (Haiku par défaut) pour prendre la décision. Vous pouvez spécifier un modèle différent avec le champ `model` si vous avez besoin de plus de capacité.883Pour les décisions qui nécessitent un jugement plutôt que des règles déterministes, utilisez les hooks `type: "prompt"`. Au lieu d'exécuter une commande shell, Claude Code envoie votre invite et les données d'entrée du hook à un modèle Claude pour prendre la décision. Vous pouvez spécifier un modèle différent avec le champ `model` si vous avez besoin de plus de capacité.

884 884 

885Le seul travail du modèle est de retourner sa décision en JSON :885Le seul travail du modèle est de retourner sa décision en JSON :

886 886 


995 995 

996Gardez ces contraintes à l'esprit lors de la conception des hooks :996Gardez ces contraintes à l'esprit lors de la conception des hooks :

997 997 

998* Les hooks de commande communiquent uniquement via stdout, stderr et les codes de sortie. Ils ne peuvent pas déclencher des commandes `/` ou des appels d'outils. Le texte retourné via `additionalContext` est injecté comme un rappel système que Claude lit en tant que texte brut. Les hooks HTTP communiquent via le corps de la réponse à la place.998* Les hooks de commande communiquent uniquement via stdout, stderr et les codes de sortie. Ils ne peuvent pas déclencher des commandes `/` ou des appels d'outils. Le texte retourné via `additionalContext` est injecté comme un [rappel système](/docs/fr/glossary#system-reminder) que Claude lit en tant que texte brut. Les hooks HTTP communiquent via le corps de la réponse à la place.

999* Les délais d'expiration du hook varient selon le type. Remplacez par hook avec le champ `timeout` en secondes.999* Les délais d'expiration du hook varient selon le type. Remplacez par hook avec le champ `timeout` en secondes.

1000 * `command`, `http`, `mcp_tool` : 10 minutes. Claude Code réduit cette valeur par défaut à 30 secondes pour les hooks `UserPromptSubmit`, `PreModelSwitch` et `PostModelSwitch`, et à 10 secondes pour `MessageDisplay`.1000 * `command`, `http`, `mcp_tool` : 10 minutes. Claude Code réduit cette valeur par défaut à 30 secondes pour les hooks `UserPromptSubmit`, `PreModelSwitch` et `PostModelSwitch`, et à 10 secondes pour `MessageDisplay`.

1001 * `prompt` : 30 secondes.1001 * `prompt` : 30 secondes.

Details

144 144 

145Pour une procédure interactive d'exploration de ce qui se charge et quand, consultez [Explorer la fenêtre de contexte](/docs/fr/context-window).145Pour une procédure interactive d'exploration de ce qui se charge et quand, consultez [Explorer la fenêtre de contexte](/docs/fr/context-window).

146 146 

147<h4 id="context-claude-code-adds-on-its-own">

148 Contexte que Claude Code ajoute de lui-même

149</h4>

150 

151Si Claude suit une règle que vous n'avez pas écrite, comme l'ajout d'une ligne `Co-Authored-By` à un commit, la règle peut provenir d'un [rappel système](/docs/fr/glossary#system-reminder). Au fur et à mesure que vous travaillez, Claude Code ajoute son propre contexte à la conversation aux côtés de vos messages :

152 

153* Vos fichiers CLAUDE.md

154* Les instructions de votre [style de sortie](/docs/fr/output-styles)

155* Une note lorsqu'un fichier que Claude a lu précédemment change sur le disque

156* Les lignes d'attribution de commit et de pull request

157 

158Pour modifier ou supprimer les lignes d'attribution, définissez [`attribution`](/docs/fr/settings-reference#attribution). Pour supprimer les instructions intégrées de Claude Code pour les commits et les pull requests, définissez [`includeGitInstructions`](/docs/fr/settings-reference#includegitinstructions) sur `false`. Pour les autres commutateurs, consultez [Désactiver le contexte que votre agent remplace](/docs/fr/agent-sdk/modifying-system-prompts#turn-off-the-context-your-agent-replaces).

159 

147<h4 id="when-context-fills-up">160<h4 id="when-context-fills-up">

148 Lorsque le contexte se remplit161 Lorsque le contexte se remplit

149</h4>162</h4>


188 201 

189Choisissez un mode de permission pour définir ce que Claude peut faire sans vous demander. Appuyez sur `Shift+Tab` pour parcourir les modes de permission :202Choisissez un mode de permission pour définir ce que Claude peut faire sans vous demander. Appuyez sur `Shift+Tab` pour parcourir les modes de permission :

190 203 

191* **Auto** : un classificateur examine la plupart des actions en arrière-plan et bloque les actions risquées au lieu de vous demander. Sur les plans Pro, Max et Team, c'est le [mode de permission de démarrage intégré](/docs/fr/permission-modes#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code204* **Auto** : un classificateur examine la plupart des actions en arrière-plan et bloque les actions risquées au lieu de vous demander. Avec Claude Code v2.1.283 ou version ultérieure, c'est le [mode de permission de démarrage intégré](/docs/fr/permission-modes#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code, et sur les versions antérieures uniquement sur les plans Pro, Max et Team

192* **Manual** : Claude demande avant les éditions de fichiers et les commandes shell205* **Manual** : Claude demande avant les éditions de fichiers et les commandes shell

193* **Accept edits** : Claude édite les fichiers et exécute les commandes courantes du système de fichiers comme `mkdir` et `mv` sans demander, demande toujours pour les autres commandes206* **Accept edits** : Claude édite les fichiers et exécute les commandes courantes du système de fichiers comme `mkdir` et `mv` sans demander, demande toujours pour les autres commandes

194* **Plan** : Claude explore et propose un plan sans éditer vos fichiers source207* **Plan** : Claude explore et propose un plan sans éditer vos fichiers source


241Vous pouvez rediriger Claude à tout moment sans recommencer. Faites l'une de ces deux choses :254Vous pouvez rediriger Claude à tout moment sans recommencer. Faites l'une de ces deux choses :

242 255 

243* **Appuyez sur `Esc`** pour arrêter Claude immédiatement. L'appel d'outil en cours est annulé et Claude attend votre prochaine instruction. Si vous avez des messages en attente, Claude Code [les envoie ensuite](/docs/fr/interactive-mode#queue-messages-while-claude-works).256* **Appuyez sur `Esc`** pour arrêter Claude immédiatement. L'appel d'outil en cours est annulé et Claude attend votre prochaine instruction. Si vous avez des messages en attente, Claude Code [les envoie ensuite](/docs/fr/interactive-mode#queue-messages-while-claude-works).

244* **Tapez une correction et appuyez sur `Entrée`** sans arrêter Claude. Le message s'affiche en attente au-dessus de la zone de saisie. Si Claude exécute des appels d'outil, il lit le message dès que ces appels se terminent, dans le même tour, et s'ajuste avant son étape suivante. [Mettre en file d'attente des messages pendant que Claude travaille](/docs/fr/interactive-mode#queue-messages-while-claude-works) couvre le moment où les autres entrées en attente sont envoyées.257* **Tapez une correction et appuyez sur `Entrée`** sans arrêter Claude. Le message s'affiche en attente dans la conversation. Si Claude exécute des appels d'outil, il lit le message dès que ces appels se terminent, dans le même tour, et s'ajuste avant son étape suivante. [Mettre en file d'attente des messages pendant que Claude travaille](/docs/fr/interactive-mode#queue-messages-while-claude-works) couvre le moment où les autres entrées en attente sont envoyées.

245 258 

246<h3 id="delegate-don’t-dictate">259<h3 id="delegate-don’t-dictate">

247 Déléguer, ne pas dicter260 Déléguer, ne pas dicter

Details

34| `Ctrl+T` | Basculer la liste de contrôle des tâches de Claude | Afficher ou masquer la [liste de contrôle à faire de Claude](#task-list) dans la zone d'état. Ce n'est pas la vue des tâches en arrière-plan ; utilisez [`/tasks`](/docs/fr/commands) pour voir les shells et sous-agents en cours d'exécution |34| `Ctrl+T` | Basculer la liste de contrôle des tâches de Claude | Afficher ou masquer la [liste de contrôle à faire de Claude](#task-list) dans la zone d'état. Ce n'est pas la vue des tâches en arrière-plan ; utilisez [`/tasks`](/docs/fr/commands) pour voir les shells et sous-agents en cours d'exécution |

35| `Ctrl+S` | Ranger ou restaurer le prompt | Avec du texte dans l'entrée, le range et efface le prompt. Appuyé à nouveau sur un prompt vide, restaure le texte rangé, la position du curseur, le contenu collé et le mode d'entrée, donc une commande shell rangée `!` [shell](#shell-mode-with-prefix) revient en mode shell |35| `Ctrl+S` | Ranger ou restaurer le prompt | Avec du texte dans l'entrée, le range et efface le prompt. Appuyé à nouveau sur un prompt vide, restaure le texte rangé, la position du curseur, le contenu collé et le mode d'entrée, donc une commande shell rangée `!` [shell](#shell-mode-with-prefix) revient en mode shell |

36| `Ctrl+Z` | Suspendre Claude Code | Unix uniquement. Suspend le processus vers votre shell ; exécutez `fg` pour reprendre |36| `Ctrl+Z` | Suspendre Claude Code | Unix uniquement. Suspend le processus vers votre shell ; exécutez `fg` pour reprendre |

37| `Flèches Gauche/Droite` | Parcourir les onglets de dialogue | Naviguez entre les onglets dans les dialogues de permission et les menus |37| `Flèches Gauche/Droite` | Parcourir les onglets de dialogue | Naviguez entre les onglets dans les dialogues de permission et les menus. Dans un dialogue avec onglets, les touches basculent les onglets tandis que la ligne d'onglets a le focus. Consultez [Actions des onglets](/docs/fr/keybindings#tabs-actions) pour voir comment le focus se déplace |

38| `Tab` | Accepter une suggestion d'autocomplétion ou ajouter un commentaire à une réponse de permission | Pendant que les suggestions d'autocomplétion s'affichent dans l'entrée du prompt, accepte la suggestion sélectionnée. Sur la plupart des prompts de permission, avec **Oui** ou **Non** en focus, ouvre un champ de commentaire sur cette option, et l'appuyer à nouveau ferme le champ. Consultez [ajouter un commentaire lorsque vous répondez à un prompt de permission](/docs/fr/permissions#add-a-comment-when-you-answer-a-permission-prompt) |38| `Tab` | Accepter une suggestion d'autocomplétion ou ajouter un commentaire à une réponse de permission | Pendant que les suggestions d'autocomplétion s'affichent dans l'entrée du prompt, accepte la suggestion sélectionnée. Sur la plupart des prompts de permission, avec **Oui** ou **Non** en focus, ouvre un champ de commentaire sur cette option, et l'appuyer à nouveau ferme le champ. Consultez [ajouter un commentaire lorsque vous répondez à un prompt de permission](/docs/fr/permissions#add-a-comment-when-you-answer-a-permission-prompt) |

39| `Flèches Haut/Bas` ou `Ctrl+P`/`Ctrl+N` | Déplacer le curseur ou naviguer dans l'historique des commandes | Lorsque l'entrée s'étend sur plus d'une ligne visuelle, qu'elle soit enveloppée ou multiligne, déplace d'abord le curseur dans le prompt. Une fois que le curseur est sur la première ou la dernière ligne visuelle, appuyer à nouveau navigue dans l'historique des commandes. Pendant que vous avez des messages en attente, `Haut` à partir de la première ligne [les reprend à la place](#take-back-what-you-queued) |39| `Flèches Haut/Bas` ou `Ctrl+P`/`Ctrl+N` | Déplacer le curseur ou naviguer dans l'historique des commandes | Lorsque l'entrée s'étend sur plus d'une ligne visuelle, qu'elle soit enveloppée ou multiligne, déplace d'abord le curseur dans le prompt. Une fois que le curseur est sur la première ou la dernière ligne visuelle, appuyer à nouveau navigue dans l'historique des commandes. Pendant que vous avez des messages en attente, `Haut` à partir de la première ligne [les reprend à la place](#take-back-what-you-queued) |

40| `Esc` | Interrompre Claude ou fermer un dialogue | Arrêtez la réponse actuelle ou l'appel d'outil au milieu du tour pour que vous puissiez rediriger. Claude conserve le travail effectué jusqu'à présent. Si vous avez des [messages en attente](#queue-messages-while-claude-works), Claude Code les envoie ensuite. Lorsqu'un dialogue est ouvert, `Esc` ferme le dialogue. Sur un prompt de permission, `Esc` refuse l'action, comme [**Non** sans commentaire](/docs/fr/permissions#add-a-comment-when-you-answer-a-permission-prompt) |40| `Esc` | Interrompre Claude ou fermer un dialogue | Arrêtez la réponse actuelle ou l'appel d'outil au milieu du tour pour que vous puissiez rediriger. Claude conserve le travail effectué jusqu'à présent. Si vous avez des [messages en attente](#queue-messages-while-claude-works), Claude Code les envoie ensuite. Lorsqu'un dialogue est ouvert, `Esc` ferme le dialogue. Pendant qu'un élément de pied de page est sélectionné, comme une ligne dans le [panneau des sous-agents](/docs/fr/sub-agents#run-subagents-in-foreground-or-background) sous le prompt, `Esc` [le désélectionne](/docs/fr/keybindings#footer-actions) au lieu d'interrompre. Sur un prompt de permission, `Esc` refuse l'action, comme [**Non** sans commentaire](/docs/fr/permissions#add-a-comment-when-you-answer-a-permission-prompt) |

41| `Esc` + `Esc` | Effacer le brouillon d'entrée ou rembobiner | Lorsque l'entrée du prompt contient du texte, double `Esc` l'efface et enregistre le brouillon dans l'historique pour que `Haut` le rappelle. Lorsque l'entrée est vide, double `Esc` ouvre le [menu de rembobinage](/docs/fr/checkpointing) pour restaurer ou résumer le code et la conversation à partir d'un point antérieur |41| `Esc` + `Esc` | Effacer le brouillon d'entrée ou rembobiner | Lorsque l'entrée du prompt contient du texte, double `Esc` l'efface et enregistre le brouillon dans l'historique pour que `Haut` le rappelle. Lorsque l'entrée est vide, double `Esc` ouvre le [menu de rembobinage](/docs/fr/checkpointing) pour restaurer ou résumer le code et la conversation à partir d'un point antérieur |

42| `Ctrl+Entrée` ou `Ctrl+X Ctrl+S` | Envoyer les messages en attente maintenant | Envoie vos [messages en attente](#queue-messages-while-claude-works) et votre brouillon avec eux, immédiatement. [Quand Claude Code envoie ce que vous avez mis en attente](#when-claude-code-sends-what-you-queued) couvre ce qui se passe au tour sur lequel Claude travaille. En [mode shell](#shell-mode-with-prefix), la touche met en attente votre commande uniquement. Dans les terminaux qui ne signalent pas les touches étendues, `Ctrl+Entrée` arrive sous la forme d'une simple `Entrée` ; `Ctrl+X Ctrl+S` fonctionne dans n'importe quel terminal. Nécessite Claude Code v2.1.275 ou version ultérieure |42| `Ctrl+Entrée` ou `Ctrl+X Ctrl+S` | Envoyer les messages en attente maintenant | Envoie vos [messages en attente](#queue-messages-while-claude-works) et votre brouillon avec eux, immédiatement. [Quand Claude Code envoie ce que vous avez mis en attente](#when-claude-code-sends-what-you-queued) couvre ce qui se passe au tour sur lequel Claude travaille. En [mode shell](#shell-mode-with-prefix), la touche met en attente votre commande uniquement. Dans les terminaux qui ne signalent pas les touches étendues, `Ctrl+Entrée` arrive sous la forme d'une simple `Entrée` ; `Ctrl+X Ctrl+S` fonctionne dans n'importe quel terminal. Nécessite Claude Code v2.1.275 ou version ultérieure |

43| `Shift+Tab`, ou `Alt+M` sur Windows lorsque le runtime Node ou Bun n'active pas le mode d'entrée VT | Parcourir les modes de permission | Parcourez `default` (étiqueté Manuel dans l'indicateur de mode), `acceptEdits`, `plan`, et, le cas échéant, `bypassPermissions` puis `auto`. À partir de `auto`, la première pression bascule vers `default`. Consultez [modes de permission](/docs/fr/permission-modes). Sur un prompt de permission de fichier, la même touche ferme un [champ de commentaire](/docs/fr/permissions#add-a-comment-when-you-answer-a-permission-prompt) ouvert. Sans champ ouvert, il sélectionne l'option qui autorise l'action pour le reste de la session, lorsque le prompt offre cette option |43| `Shift+Tab`, ou `Alt+M` sur Windows lorsque le runtime Node ou Bun n'active pas le mode d'entrée VT | Parcourir les modes de permission | Parcourez `default` (étiqueté Manuel dans l'indicateur de mode), `acceptEdits`, `plan`, et, le cas échéant, `bypassPermissions` puis `auto`. À partir de `auto`, la première pression bascule vers `default`. Consultez [modes de permission](/docs/fr/permission-modes). Sur un prompt de permission de fichier, la même touche ferme un [champ de commentaire](/docs/fr/permissions#add-a-comment-when-you-answer-a-permission-prompt) ouvert. Sans champ ouvert, il sélectionne l'option qui autorise l'action pour le reste de la session, lorsque le prompt offre cette option |

44| `Option+P` (macOS) ou `Alt+P` (Windows/Linux) | Changer de modèle | Changez de modèles sans effacer votre prompt |44| `Option+P` (macOS) ou `Alt+P` (Windows/Linux) | Changer de modèle | Changez de modèles sans effacer votre prompt |

45| `Option+T` (macOS) ou `Alt+T` (Windows/Linux) | Basculer la réflexion étendue | Activez ou désactivez le mode de réflexion étendue. N'a aucun effet sur Opus 5.5 ou les modèles Fable, qui utilisent toujours la réflexion étendue. Fonctionne sur macOS sans configurer Option en tant que Meta |45| `Option+T` (macOS) ou `Alt+T` (Windows/Linux) | Basculer la réflexion étendue | Activez ou désactivez le mode de réflexion étendue. N'a aucun effet sur Opus 5.5, Sonnet 5.5 ou les modèles Fable, qui utilisent toujours la réflexion étendue. Fonctionne sur macOS sans configurer Option en tant que Meta |

46| `Option+O` (macOS) ou `Alt+O` (Windows/Linux) | Basculer le mode rapide | Activez ou désactivez le [mode rapide](/docs/fr/fast-mode) |46| `Option+O` (macOS) ou `Alt+O` (Windows/Linux) | Basculer le mode rapide | Activez ou désactivez le [mode rapide](/docs/fr/fast-mode) |

47 47 

48<h3 id="text-editing">48<h3 id="text-editing">


235| Commande | Action |235| Commande | Action |

236| :- | :- |236| :- | :- |

237| `x` | Supprimer le caractère |237| `x` | Supprimer le caractère |

238| `r{char}` | Remplacer le caractère sous le curseur par `{char}` |

238| `dd` | Supprimer la ligne |239| `dd` | Supprimer la ligne |

239| `D` | Supprimer jusqu'à la fin de la ligne |240| `D` | Supprimer jusqu'à la fin de la ligne |

240| `dw`/`de`/`db` | Supprimer le mot/jusqu'à la fin/en arrière |241| `dw`/`de`/`db` | Supprimer le mot/jusqu'à la fin/en arrière |

241| `df{char}`/`dt{char}` | Supprimer jusqu'à et y compris, ou jusqu'à, la prochaine occurrence d'un caractère |242| `df{char}`/`dt{char}` | Supprimer jusqu'à et y compris, ou jusqu'à, la prochaine occurrence d'un caractère |

243| `dj`/`dk` | Supprimer la ligne actuelle et la ligne en dessous ou au-dessus |

244| `dgg`/`dG` | Supprimer de la ligne actuelle à la première ou dernière ligne |

245| `d0`/`c0`/`y0` | Supprimer, changer ou copier du curseur jusqu'au début de la ligne. Nécessite Claude Code v2.1.281 ou ultérieur |

242| `cc` | Changer la ligne |246| `cc` | Changer la ligne |

243| `C` | Changer jusqu'à la fin de la ligne |247| `C` | Changer jusqu'à la fin de la ligne |

244| `cw`/`ce`/`cb` | Changer le mot/jusqu'à la fin/en arrière |248| `cw`/`ce`/`cb` | Changer le mot/jusqu'à la fin/en arrière |


342* Inviter Claude Code à exécuter une commande en arrière-plan346* Inviter Claude Code à exécuter une commande en arrière-plan

343* Appuyer sur `Ctrl+B` pour déplacer une invocation d'outil Bash régulière vers l'arrière-plan. Les utilisateurs de Tmux doivent appuyer sur `Ctrl+B` deux fois en raison de la touche de préfixe de tmux.347* Appuyer sur `Ctrl+B` pour déplacer une invocation d'outil Bash régulière vers l'arrière-plan. Les utilisateurs de Tmux doivent appuyer sur `Ctrl+B` deux fois en raison de la touche de préfixe de tmux.

344 348 

349Lorsqu'une commande atteint son délai d'expiration avant de se terminer, Claude Code la [déplace automatiquement vers l'arrière-plan](/docs/fr/tools-reference#background-commands) au lieu de l'arrêter, sauf si la commande commence par `sleep`. Pour modifier la durée pendant laquelle les commandes s'exécutent avant que cela ne se produise, définissez les [variables d'environnement de délai d'expiration Bash](/docs/fr/tools-reference#timeout-and-output-limits).

350 

345**Fonctionnalités clés :**351**Fonctionnalités clés :**

346 352 

347* La sortie est écrite dans un fichier et Claude peut la récupérer à l'aide de l'outil Read353* La sortie est écrite dans un fichier et Claude peut la récupérer à l'aide de l'outil Read


395 Mettre en file d'attente les messages pendant que Claude travaille401 Mettre en file d'attente les messages pendant que Claude travaille

396</h2>402</h2>

397 403 

398Tapez un message et appuyez sur `Entrée` pendant que Claude travaille. Claude Code met le message en file d'attente au lieu d'interrompre le tour, et affiche les entrées en attente au-dessus de la zone de saisie jusqu'à ce qu'il les envoie. Vous pouvez mettre en file d'attente les commandes `!` [shell](#shell-mode-with-prefix) et la plupart des [commandes](/docs/fr/commands) de la même manière, à l'exception des commandes, telles que `/status`, que Claude Code exécute dès que vous les envoyez.404Tapez un message et appuyez sur `Entrée` pendant que Claude travaille. Claude Code met le message en file d'attente au lieu d'interrompre le tour, et affiche les entrées en attente dans la conversation jusqu'à ce qu'il les envoie. Vous pouvez mettre en file d'attente les commandes `!` [shell](#shell-mode-with-prefix) et la plupart des [commandes](/docs/fr/commands) de la même manière, à l'exception des commandes, telles que `/status`, que Claude Code exécute dès que vous les envoyez.

399 405 

400Les messages envoyés et mis en file d'attente s'affichent en gris jusqu'à ce que Claude commence à y répondre, vous pouvez donc voir quels messages Claude n'a pas encore commencé à traiter.406Les messages envoyés et mis en file d'attente s'affichent en gris jusqu'à ce que Claude commence à y répondre, vous pouvez donc voir quels messages Claude n'a pas encore commencé à traiter.

401 407 

408Si vous mettez en file d'attente un message avec une sélection attachée à partir d'un [IDE connecté](/docs/fr/vs-code#the-built-in-ide-mcp-server) ou du [panneau de diff](#diff-panel), il conserve la sélection que vous aviez quand vous avez appuyé sur `Entrée`, quelle que soit votre sélection ultérieure.

409 

402<h3 id="when-claude-code-sends-what-you-queued">410<h3 id="when-claude-code-sends-what-you-queued">

403 Quand Claude Code envoie ce que vous avez mis en file d'attente411 Quand Claude Code envoie ce que vous avez mis en file d'attente

404</h3>412</h3>

jetbrains.md +5 −1

Details

249 249 

250Le serveur s'appelle `ide` et est masqué de `/mcp` car il n'y a rien à configurer. Si votre organisation utilise un [hook `PreToolUse`](/docs/fr/hooks#pretooluse) pour créer une liste d'autorisation des outils MCP, cependant, vous devrez savoir qu'il existe.250Le serveur s'appelle `ide` et est masqué de `/mcp` car il n'y a rien à configurer. Si votre organisation utilise un [hook `PreToolUse`](/docs/fr/hooks#pretooluse) pour créer une liste d'autorisation des outils MCP, cependant, vous devrez savoir qu'il existe.

251 251 

252**Contexte de sélection et de fichier ouvert.** Lors de la connexion, le CLI inclut votre sélection d'éditeur actuelle et le chemin du fichier actif comme contexte sur chaque invite que vous envoyez. La transcription affiche une ligne `⧉ Selected N lines from <file>` lorsque cela se produit. Pour exclure un fichier sensible tel que `.env`, ajoutez une [règle de refus `Read`](/docs/fr/permissions#read-and-edit) pour son chemin. Une règle de refus correspondante empêche à la fois le texte sélectionné et l'avis de fichier ouvert pour ce fichier d'atteindre Claude.252**Contexte de sélection et de fichier ouvert.** Lors de la connexion, le CLI inclut votre sélection d'éditeur actuelle et le chemin du fichier actif comme contexte sur chaque invite que vous envoyez. La transcription affiche une ligne `⧉ Selected N lines from <file>` lorsque cela se produit.

253 

254Si vous [mettez en file d'attente un message pendant que Claude travaille](/docs/fr/interactive-mode#queue-messages-while-claude-works), il conserve la sélection que vous aviez lorsque vous avez appuyé sur `Entrée`, peu importe ce que vous sélectionnez après.

255 

256Pour exclure un fichier sensible tel que `.env`, ajoutez une [règle de refus `Read`](/docs/fr/permissions#read-and-edit) pour son chemin. Une règle de refus correspondante empêche à la fois le texte sélectionné et l'avis de fichier ouvert pour ce fichier d'atteindre Claude.

253 257 

254**Transport et authentification.** Le serveur écoute sur un port éphémère attribué par le système d'exploitation, et le port n'est pas configurable. Le transport est un `ws://` non chiffré ; sur la boucle locale, tout processus qui pourrait capturer le trafic peut également lire le token du fichier de verrouillage, donc TLS n'ajouterait pas de protection contre un attaquant local. Chaque démarrage d'IDE génère un token d'authentification aléatoire frais, l'écrit dans un fichier de verrouillage à `~/.claude/ide/<port>.lock`, et le CLI doit le présenter comme l'en-tête `X-Claude-Code-Ide-Authorization` pour se connecter. Si `CLAUDE_CONFIG_DIR` est défini, le fichier de verrouillage est écrit à `$CLAUDE_CONFIG_DIR/ide/` à la place.258**Transport et authentification.** Le serveur écoute sur un port éphémère attribué par le système d'exploitation, et le port n'est pas configurable. Le transport est un `ws://` non chiffré ; sur la boucle locale, tout processus qui pourrait capturer le trafic peut également lire le token du fichier de verrouillage, donc TLS n'ajouterait pas de protection contre un attaquant local. Chaque démarrage d'IDE génère un token d'authentification aléatoire frais, l'écrit dans un fichier de verrouillage à `~/.claude/ide/<port>.lock`, et le CLI doit le présenter comme l'en-tête `X-Claude-Code-Ide-Authorization` pour se connecter. Si `CLAUDE_CONFIG_DIR` est défini, le fichier de verrouillage est écrit à `$CLAUDE_CONFIG_DIR/ide/` à la place.

255 259 

keybindings.md +33 −12

Details

168 168 

169Les dialogues utilisent `confirm:yes` et `confirm:no` pour accepter et annuler même lorsqu'ils ne posent pas une question oui ou non. Si vous liez une simple lettre telle que `y` ou `n` dans ce contexte, la lettre agit également sur les dialogues qui ne la montrent jamais comme clé. Un dialogue qui affiche `y` et `n` comme ses clés les lit lui-même et n'a besoin d'aucune liaison.169Les dialogues utilisent `confirm:yes` et `confirm:no` pour accepter et annuler même lorsqu'ils ne posent pas une question oui ou non. Si vous liez une simple lettre telle que `y` ou `n` dans ce contexte, la lettre agit également sur les dialogues qui ne la montrent jamais comme clé. Un dialogue qui affiche `y` et `n` comme ses clés les lit lui-même et n'a besoin d'aucune liaison.

170 170 

171En général, appuyer sur `Ctrl+C` ou `Ctrl+D` deux fois ferme le dialogue au lieu de quitter Claude Code. L'indice après la première pression indique si la deuxième pression ferme le dialogue ou quitte. Les deux touches sont [réservées](#reserved-shortcuts) et ne peuvent pas être reliées.

172 

171Cet exemple lie `y` à `confirm:yes` et `n` à `confirm:no` :173Cet exemple lie `y` à `confirm:yes` et `n` à `confirm:no` :

172 174 

173```json theme={null}175```json theme={null}


268| `tabs:next` | Tab, Droite | Onglet suivant |270| `tabs:next` | Tab, Droite | Onglet suivant |

269| `tabs:previous` | Maj+Tab, Gauche | Onglet précédent |271| `tabs:previous` | Maj+Tab, Gauche | Onglet précédent |

270 272 

273Dans un dialogue avec onglets, `tabs:next` et `tabs:previous` basculent les onglets pendant que la ligne d'onglets a le focus. Dans certains dialogues, tels que `/help` et `/sandbox`, les touches de basculement d'onglets fonctionnent également à partir du contenu de l'onglet.

274 

275`Haut` et `Bas` déplacent le focus entre la ligne d'onglets et le contenu de l'onglet, et une liste dans le contenu répond aux touches uniquement pendant qu'elle a le focus.

276 

271<h3 id="attachments-actions">277<h3 id="attachments-actions">

272 Actions de pièces jointes278 Actions de pièces jointes

273</h3>279</h3>


295| `footer:down` | Bas | Naviguer vers le bas dans le pied de page |301| `footer:down` | Bas | Naviguer vers le bas dans le pied de page |

296| `footer:openSelected` | Entrée | Ouvrir l'élément de pied de page sélectionné |302| `footer:openSelected` | Entrée | Ouvrir l'élément de pied de page sélectionné |

297| `footer:clearSelection` | Échappement | Effacer la sélection du pied de page |303| `footer:clearSelection` | Échappement | Effacer la sélection du pied de page |

298| `footer:dismiss` | Retour arrière, Supprimer | Rejeter le lien [artefact](/docs/fr/artifacts) sélectionné du pied de page ; l'artefact publié lui-même n'est pas affecté. Sur d'autres lignes du pied de page, ces touches n'ont aucun effet. Nécessite v2.1.217 ou ultérieure |304| `footer:dismiss` | (non lié) | Supprimé dans v2.1.281. Un `keybindings.json` qui nomme toujours l'action reste valide, et la liaison ne fait rien. Avant v2.1.281, Retour arrière et Supprimer rejetaient le lien d'artefact sélectionné du pied de page |

299 305 

300Pendant qu'un élément de pied de page est sélectionné, tel qu'une ligne dans le panneau agent sous l'invite, `Entrée` l'ouvre même lorsque vous reliez `Entrée` dans le contexte `Chat` à `chat:queueSubmit` ou `chat:newline`.306Pendant qu'un élément de pied de page est sélectionné, tel qu'une ligne dans le panneau agent sous l'invite, `Entrée` l'ouvre même lorsque vous reliez `Entrée` dans le contexte `Chat` à `chat:queueSubmit` ou `chat:newline`.

301 307 


305 Actions du sélecteur de message311 Actions du sélecteur de message

306</h3>312</h3>

307 313 

308Actions disponibles dans le contexte `MessageSelector` :314Dans la liste des messages du [menu de rembobinage](/docs/fr/checkpointing), vous vous déplacez dans les messages et en choisissez un avec les [actions de sélection](#select-actions) et leurs touches par défaut. Vos liaisons `Select` pour ces actions s'appliquent également là. Le contexte `MessageSelector` n'a pas d'actions ou de liaisons par défaut qui lui sont propres. Utilisez-le pour modifier une touche pour cette liste uniquement, en liant une action Select telle que `select:accept` dans un bloc `MessageSelector`.

309 315 

310| Action | Par défaut | Description |316Cet exemple lie `o` pour choisir le message en surbrillance dans le menu de rembobinage, sans modifier aucune autre liste :

311| :- | :- | :- |317 

312| `messageSelector:up` | Haut, K, Ctrl+P | Déplacer vers le haut dans la liste |318```json theme={null}

313| `messageSelector:down` | Bas, J, Ctrl+N | Déplacer vers le bas dans la liste |319{

314| `messageSelector:top` | Ctrl+Haut, Maj+Haut, Meta+Haut, Maj+K | Sauter au début |320 "bindings": [

315| `messageSelector:bottom` | Ctrl+Bas, Maj+Bas, Meta+Bas, Maj+J | Sauter à la fin |321 {

316| `messageSelector:select` | Entrée | Sélectionner le message |322 "context": "MessageSelector",

323 "bindings": {

324 "o": "select:accept"

325 }

326 }

327 ]

328}

329```

330 

331Avant v2.1.283, cette liste ignorait les liaisons `Select` et avait ses propres actions : `messageSelector:up`, `messageSelector:down`, `messageSelector:top`, `messageSelector:bottom` et `messageSelector:select`. Si votre `keybindings.json` lie l'un de ces noms, la liaison continue de fonctionner dans cette liste en tant que l'action Select qui fait la même chose. `Home` et `End` sautent à l'une ou l'autre extrémité de la liste ; avant v2.1.283, des touches telles que `Maj+K` et `Maj+J` le faisaient par défaut.

317 332 

318<h3 id="diff-actions">333<h3 id="diff-actions">

319 Actions de diff334 Actions de diff


328| `diff:nextSource` | Droite | Source de diff suivante |343| `diff:nextSource` | Droite | Source de diff suivante |

329| `diff:previousFile` | Haut, K | Fichier précédent dans la liste des fichiers ; faire défiler vers le haut d'une ligne dans la vue détaillée |344| `diff:previousFile` | Haut, K | Fichier précédent dans la liste des fichiers ; faire défiler vers le haut d'une ligne dans la vue détaillée |

330| `diff:nextFile` | Bas, J | Fichier suivant dans la liste des fichiers ; faire défiler vers le bas d'une ligne dans la vue détaillée |345| `diff:nextFile` | Bas, J | Fichier suivant dans la liste des fichiers ; faire défiler vers le bas d'une ligne dans la vue détaillée |

331| `diff:viewDetails` | Entrée | Afficher les détails du diff |

332| `diff:back` | (non lié) | Revenir en arrière dans la visionneuse de diff. Échappement effectue l'action de retour via `diff:dismiss`. La valeur par défaut précédente de Gauche dans la vue détaillée a été supprimée dans la v2.1.203 |346| `diff:back` | (non lié) | Revenir en arrière dans la visionneuse de diff. Échappement effectue l'action de retour via `diff:dismiss`. La valeur par défaut précédente de Gauche dans la vue détaillée a été supprimée dans la v2.1.203 |

333 347 

348La liste des fichiers répond également aux [actions de sélection](#select-actions), via leurs touches par défaut et vos liaisons `Select`. `select:previous` et `select:next` se déplacent vers le fichier précédent et suivant, et `Entrée` ouvre le diff du fichier sélectionné via `select:accept`. Pour modifier l'une de ces touches pour la liste des fichiers uniquement, liez l'action Select dans un bloc `DiffDialog`.

349 

350Avant v2.1.283, la liste des fichiers ignorait les liaisons `Select`, et `Entrée` ouvrait le diff du fichier sélectionné via une action `diff:viewDetails` distincte. Si votre `keybindings.json` lie `diff:viewDetails`, la liaison continue de fonctionner dans la liste des fichiers en tant que `select:accept`.

351 

334La vue détaillée du diff lie également les touches de style paginateur aux [actions de défilement](#scroll-actions) standard. Ces liaisons font partie du contexte `DiffDialog` et s'appliquent uniquement dans la vue détaillée ; les valeurs par défaut du contexte `Scroll` listées sous [Actions de défilement](#scroll-actions) sont inchangées.352La vue détaillée du diff lie également les touches de style paginateur aux [actions de défilement](#scroll-actions) standard. Ces liaisons font partie du contexte `DiffDialog` et s'appliquent uniquement dans la vue détaillée ; les valeurs par défaut du contexte `Scroll` listées sous [Actions de défilement](#scroll-actions) sont inchangées.

335 353 

336| Action | Par défaut | Description |354| Action | Par défaut | Description |


373 Actions du curseur d'effort391 Actions du curseur d'effort

374</h3>392</h3>

375 393 

376Actions disponibles dans le contexte `EffortSlider`, le curseur qui s'ouvre lorsque vous exécutez `/effort` sans arguments. Les touches Gauche, Droite, Entrée et Échappement du curseur ne peuvent pas être reliées.394Actions disponibles dans le contexte `EffortSlider`, le curseur qui s'ouvre lorsque vous exécutez `/effort` sans arguments. Les touches Entrée et Échappement du curseur ne peuvent pas être reliées.

377 395 

378| Action | Par défaut | Description |396| Action | Par défaut | Description |

379| :- | :- | :- |397| :- | :- | :- |

398| `effortSlider:decreaseEffort` | Gauche | Déplacer le curseur vers le niveau d'effort inférieur suivant. Nécessite v2.1.284 ou ultérieure |

399| `effortSlider:increaseEffort` | Droite | Déplacer le curseur vers le niveau d'effort supérieur suivant. Nécessite v2.1.284 ou ultérieure |

400| `effortSlider:toggleUltracode` | Tab | Activer ou désactiver [ultracode](/docs/fr/workflows#let-claude-decide-with-ultracode) pour cette session, lorsque le curseur [l'offre](/docs/fr/model-config#when-ultracode-is-available). Nécessite v2.1.284 ou ultérieure |

380| `effortSlider:thisSessionOnly` | s | Appliquer le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) ciblé à cette session uniquement. Nécessite v2.1.257 ou ultérieure |401| `effortSlider:thisSessionOnly` | s | Appliquer le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) ciblé à cette session uniquement. Nécessite v2.1.257 ou ultérieure |

381 402 

382<h3 id="select-actions">403<h3 id="select-actions">


396| `select:accept` | Entrée | Accepter la sélection |417| `select:accept` | Entrée | Accepter la sélection |

397| `select:cancel` | Échappement | Annuler la sélection |418| `select:cancel` | Échappement | Annuler la sélection |

398 419 

399Claude Code applique vos liaisons `select:pageUp`, `select:pageDown`, `select:first` et `select:last` dans le menu `/skills`. Dans la plupart des autres listes, telles que le sélecteur `/model`, vos liaisons `select:first` et `select:last` s'appliquent. PageUp et PageDown parcourent les options dans ces listes indépendamment de vos liaisons.420Dans les panneaux de liste tels que `/skills` et `/mcp`, Claude Code applique vos liaisons `select:pageUp`, `select:pageDown`, `select:first` et `select:last`. Dans la plupart des autres listes, telles que le sélecteur `/model`, vos liaisons `select:first` et `select:last` s'appliquent. PageUp et PageDown parcourent les options dans ces listes indépendamment de vos liaisons.

400 421 

401Avant v2.1.280, ces autres listes ignoraient Home, End, et vos liaisons `select:first` et `select:last`.422Avant v2.1.280, ces autres listes ignoraient Home, End, et vos liaisons `select:first` et `select:last`.

402 423 

llm-gateway.md +1 −1

Details

49 Abonnements et passerelles49 Abonnements et passerelles

50</h2>50</h2>

51 51 

52Tandis qu'une [variable de credential de passerelle](/docs/fr/llm-gateway-connect#set-the-credential-variable) ou `apiKeyHelper` est active, l'abonnement claude.ai d'un développeur n'est pas utilisé : la credential remplace la connexion à l'abonnement pour cette session, et les limites d'utilisation de l'abonnement ne s'appliquent pas. Ce trafic est facturé par token à celui qui possède la credential que la passerelle transfère, tel que le compte Anthropic Console de votre organisation, ou votre compte Amazon Bedrock, Google Cloud's Agent Platform, ou Microsoft Foundry quand la passerelle achemine là.52Tandis qu'une [variable de credential de passerelle](/docs/fr/llm-gateway-connect#set-the-credential-variable) ou `apiKeyHelper` est active, les requêtes portent cette credential à la place de la connexion d'abonnement claude.ai d'un développeur, et les limites d'utilisation de l'abonnement ne s'appliquent pas à celles-ci. Claude Code conserve une connexion claude.ai sauvegardée sur la machine mais ne l'envoie pas avec ces requêtes. Ce trafic est facturé par token à celui qui possède la credential que la passerelle transfère, tel que le compte Anthropic Console de votre organisation, ou votre compte Amazon Bedrock, Google Cloud's Agent Platform, ou Microsoft Foundry quand la passerelle achemine là.

53 53 

54[`ANTHROPIC_BASE_URL`](/docs/fr/llm-gateway-connect#set-the-base-url-and-credential) est la variable qui pointe Claude Code vers la passerelle. Définir uniquement cette variable, sans credential de passerelle, ne remplace pas l'abonnement. Les requêtes acheminent toujours via la passerelle, mais une connexion claude.ai sauvegardée reste la credential active, donc ses limites d'utilisation et sa facturation s'appliquent. Les passerelles qui transmettent ce trafic à Anthropic doivent transférer la capacité OAuth dans `anthropic-beta` ; consultez la [référence des en-têtes de requête](/docs/fr/llm-gateway-protocol#request-headers).54[`ANTHROPIC_BASE_URL`](/docs/fr/llm-gateway-connect#set-the-base-url-and-credential) est la variable qui pointe Claude Code vers la passerelle. Définir uniquement cette variable, sans credential de passerelle, ne remplace pas l'abonnement. Les requêtes acheminent toujours via la passerelle, mais une connexion claude.ai sauvegardée reste la credential active, donc ses limites d'utilisation et sa facturation s'appliquent. Les passerelles qui transmettent ce trafic à Anthropic doivent transférer la capacité OAuth dans `anthropic-beta` ; consultez la [référence des en-têtes de requête](/docs/fr/llm-gateway-protocol#request-headers).

55 55 

Details

140<Tabs>140<Tabs>

141 <Tab title="Bash ou Zsh">141 <Tab title="Bash ou Zsh">

142 ```bash theme={null}142 ```bash theme={null}

143 curl -X POST "$ANTHROPIC_BASE_URL/v1/messages" \143 curl -sS -w '\n%{http_code}\n' -X POST "$ANTHROPIC_BASE_URL/v1/messages" \

144 -H "Authorization: Bearer $ANTHROPIC_AUTH_TOKEN" \144 -H "Authorization: Bearer $ANTHROPIC_AUTH_TOKEN" \

145 -H "anthropic-version: 2023-06-01" \145 -H "anthropic-version: 2023-06-01" \

146 -H "content-type: application/json" \146 -H "content-type: application/json" \


594| `/fast` signale `Fast mode has been disabled by your organization` dans une session authentifiée avec `ANTHROPIC_AUTH_TOKEN`, même si l'organisation a le mode rapide activé | La vérification de disponibilité nécessite une connexion claude.ai ou une clé API Anthropic ; avec seulement un jeton porteur, Claude Code traite le mode rapide comme désactivé sans envoyer la vérification | Définissez `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK=1` ; voir [utiliser le mode rapide derrière les proxies et les passerelles LLM](/docs/fr/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) |594| `/fast` signale `Fast mode has been disabled by your organization` dans une session authentifiée avec `ANTHROPIC_AUTH_TOKEN`, même si l'organisation a le mode rapide activé | La vérification de disponibilité nécessite une connexion claude.ai ou une clé API Anthropic ; avec seulement un jeton porteur, Claude Code traite le mode rapide comme désactivé sans envoyer la vérification | Définissez `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK=1` ; voir [utiliser le mode rapide derrière les proxies et les passerelles LLM](/docs/fr/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) |

595| Claude Code vous demande de vous connecter même si le [test curl](#verify-the-connection) réussit | La CLI n'a pas d'identifiant propre : une URL de base accessible n'en est pas une, et dans une session interactive un bloc `env` dans le `.claude/settings.json` ou `.claude/settings.local.json` d'un projet s'applique uniquement après l'assistant de première exécution et l'[invite de confiance](/docs/fr/permissions#what-runs-before-you-trust-a-folder) | Définissez `ANTHROPIC_AUTH_TOKEN` quelque part que Claude Code lit avant la configuration de première exécution : un export shell, le bloc `env` dans `~/.claude/settings.json`, ou les paramètres gérés |595| Claude Code vous demande de vous connecter même si le [test curl](#verify-the-connection) réussit | La CLI n'a pas d'identifiant propre : une URL de base accessible n'en est pas une, et dans une session interactive un bloc `env` dans le `.claude/settings.json` ou `.claude/settings.local.json` d'un projet s'applique uniquement après l'assistant de première exécution et l'[invite de confiance](/docs/fr/permissions#what-runs-before-you-trust-a-folder) | Définissez `ANTHROPIC_AUTH_TOKEN` quelque part que Claude Code lit avant la configuration de première exécution : un export shell, le bloc `env` dans `~/.claude/settings.json`, ou les paramètres gérés |

596| `ANTHROPIC_API_KEY` est défini mais ignoré, sans invite | La clé a besoin d'une approbation unique dans les sessions interactives, et une clé précédemment refusée est ignorée sans demander à nouveau | Activez-la sous `/config` avec l'option `Use custom API key` |596| `ANTHROPIC_API_KEY` est défini mais ignoré, sans invite | La clé a besoin d'une approbation unique dans les sessions interactives, et une clé précédemment refusée est ignorée sans demander à nouveau | Activez-la sous `/config` avec l'option `Use custom API key` |

597| `This machine's managed settings require a first-party login` | Les paramètres gérés incluent `forceLoginMethod` ou `forceLoginOrgUUID`, qui ne peuvent pas coexister avec `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, ou `apiKeyHelper` | Votre administrateur doit supprimer `forceLoginMethod` et `forceLoginOrgUUID` des paramètres gérés pour utiliser les identifiants de passerelle, ou supprimer l'identifiant de passerelle pour utiliser la connexion de première partie. Les deux ne peuvent pas être combinés |597| `This machine's managed settings require a first-party login`, ou [`Administrator policy requires a Cloud gateway sign-in`](/docs/fr/errors#administrator-policy-requires-a-cloud-gateway-sign-in) quand les paramètres gérés définissent `forceLoginMethod` à `"gateway"` ou définissent aussi `forceLoginGatewayUrl` | Les paramètres gérés incluent `forceLoginMethod` ou `forceLoginOrgUUID`, qui ne peuvent pas coexister avec `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, ou `apiKeyHelper` | Votre administrateur doit supprimer `forceLoginMethod`, `forceLoginOrgUUID`, et `forceLoginGatewayUrl` des paramètres gérés pour utiliser les identifiants de passerelle, ou supprimer l'identifiant de passerelle et utiliser la connexion que les paramètres gérés exigent. Les deux ne peuvent pas être combinés |

598| `403` avec un corps HTML comme `403 Forbidden`, quand les propres journaux de la passerelle ne montrent aucune demande reçue | Un pare-feu d'application web ou un proxy inverse devant la passerelle a bloqué le corps de la demande avant qu'il n'atteigne la passerelle. Les messages Claude Code incluent des balises de style XML et du code source qui correspondent aux règles de corps de cross-site-scripting, de sorte qu'un test curl court réussit tandis qu'une session réelle ne le fait pas | Exemptez le chemin `/v1/messages` de la passerelle de l'inspection du corps de la demande. Sur AWS WAF, c'est la règle gérée `CrossSiteScripting_Body` ; sur nginx avec ModSecurity, ce sont les règles de corps OWASP CRS équivalentes |598| `403` avec un corps HTML comme `403 Forbidden`, quand les propres journaux de la passerelle ne montrent aucune demande reçue | Un pare-feu d'application web ou un proxy inverse devant la passerelle a bloqué le corps de la demande avant qu'il n'atteigne la passerelle. Les messages Claude Code incluent des balises de style XML et du code source qui correspondent aux règles de corps de cross-site-scripting, de sorte qu'un test curl court réussit tandis qu'une session réelle ne le fait pas | Exemptez le chemin `/v1/messages` de la passerelle de l'inspection du corps de la demande. Sur AWS WAF, c'est la règle gérée `CrossSiteScripting_Body` ; sur nginx avec ModSecurity, ce sont les règles de corps OWASP CRS équivalentes |

599| Erreurs de certificat ou TLS comme `SSL certificate verification failed` ou `Self-signed certificate detected`, quand le [test curl](#verify-the-connection) réussit | L'exécution de Claude Code ne fait pas confiance à la même autorité de certification que `curl` utilise. Courant derrière les proxies d'inspection TLS d'entreprise | Définissez `NODE_EXTRA_CA_CERTS` au chemin du bundle CA ; voir [CA certificate store](/docs/fr/network-config#ca-certificate-store) |599| Erreurs de certificat ou TLS comme `SSL certificate verification failed` ou `Self-signed certificate detected`, quand le [test curl](#verify-the-connection) réussit | L'exécution de Claude Code ne fait pas confiance à la même autorité de certification que `curl` utilise. Courant derrière les proxies d'inspection TLS d'entreprise | Définissez `NODE_EXTRA_CA_CERTS` au chemin du bundle CA ; voir [CA certificate store](/docs/fr/network-config#ca-certificate-store) |

600 600 

Details

73 73 

74Diffusez les réponses d'inférence en continu. Claude Code lit le flux au fur et à mesure de son arrivée, donc si votre passerelle met en mémoire tampon les réponses complètes avant de les relayer, Claude Code s'arrête.74Diffusez les réponses d'inférence en continu. Claude Code lit le flux au fur et à mesure de son arrivée, donc si votre passerelle met en mémoire tampon les réponses complètes avant de les relayer, Claude Code s'arrête.

75 75 

76Livrez la séquence d'événements complète de chaque réponse sans supprimer, dupliquer ou réordonner les événements. Quand un événement référence un bloc de contenu dont le `content_block_start` n'est jamais arrivé, ou un bloc dont le `content_block_stop` est déjà arrivé, Claude Code arrête de lire le flux à cet événement au lieu de l'appliquer, donc un `content_block_stop` dupliqué ne peut pas exécuter le même appel d'outil deux fois. [La réponse ci-dessus peut être incomplète](/docs/fr/errors#the-response-above-may-be-incomplete) décrit ce que l'utilisateur voit, selon les variantes `Part of the response never arrived` et `The response stream was malformed`.

77 

78Relayez chaque réponse via ses événements finaux `message_delta` et `message_stop` avant de terminer le corps. Un corps qui se termine après un `message_delta` portant un `stop_reason`, sans bloc de contenu encore ouvert et sans événement de bloc de contenu après cette trame, compte comme complet même quand `message_stop` est manquant. Un corps que votre passerelle termine proprement plus tôt, une fois qu'un bloc de contenu a commencé, est traité de la même manière qu'une connexion interrompue : [Tentatives automatiques](/docs/fr/errors#automatic-retries) indique quand Claude Code réédite la requête, et [La réponse ci-dessus peut être incomplète](/docs/fr/errors#the-response-above-may-be-incomplete) couvre ce qu'il conserve une fois que le contenu visible est arrivé. Claude Code conserve le `stop_reason` qu'un `message_delta` livre, donc un `message_delta` ultérieur contenant uniquement l'utilisation dont le `delta` a `stop_reason: null` ou aucune clé `stop_reason` ne l'efface pas.

79 

76Quand le client parle le format Amazon Bedrock, relayez le corps de réponse `InvokeModelWithResponseStream` et son en-tête `Content-Type: application/vnd.amazon.eventstream` sans modification, et ne convertissez pas le flux en événements envoyés par le serveur. Voir [Erreurs de streaming derrière une passerelle ou un proxy](/docs/fr/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy).80Quand le client parle le format Amazon Bedrock, relayez le corps de réponse `InvokeModelWithResponseStream` et son en-tête `Content-Type: application/vnd.amazon.eventstream` sans modification, et ne convertissez pas le flux en événements envoyés par le serveur. Voir [Erreurs de streaming derrière une passerelle ou un proxy](/docs/fr/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy).

77 81 

78Transférez également les pings de maintien de connexion. Sur les connexions via `ANTHROPIC_BASE_URL` ou `ANTHROPIC_AWS_BASE_URL`, Claude Code compte chaque octet que votre passerelle relaye, y compris les événements SSE `ping` et les lignes de commentaire, et abandonne un flux qui reste silencieux pendant 300 secondes par défaut. Les pings en amont sont le seul trafic pendant les pauses de réflexion prolongées, donc si votre passerelle les supprime ou les met en mémoire tampon, Claude Code abandonne le flux pendant ces pauses ; [Tentatives automatiques](/docs/fr/errors#automatic-retries) couvre ce qu'un flux abandonné signale en fonction de la progression de la réponse. Un amont qui n'envoie aucun ping du tout, comme le flux d'événements binaires d'Amazon Bedrock, laisse ces pauses sans rien à relayer. Lors de la traduction à partir d'un tel amont, émettez vos propres événements `ping` pendant les silences. Les passerelles atteintes via `ANTHROPIC_BEDROCK_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, ou `ANTHROPIC_FOUNDRY_BASE_URL` ne sont pas enveloppées par ce chien de garde au niveau des octets, même quand elles relaient le format Anthropic Messages ; là, un [délai d'inactivité de 5 minutes](/docs/fr/env-vars) abandonne un flux silencieux à la place, et sur les connexions `ANTHROPIC_BEDROCK_BASE_URL` vous pouvez ajouter le chien de garde au niveau des octets avec [`CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK`](/docs/fr/env-vars).82Transférez également les pings de maintien de connexion. Sur les connexions via `ANTHROPIC_BASE_URL` ou `ANTHROPIC_AWS_BASE_URL`, Claude Code compte chaque octet que votre passerelle relaye, y compris les événements SSE `ping` et les lignes de commentaire, et abandonne un flux qui reste silencieux pendant 300 secondes par défaut. Les pings en amont sont le seul trafic pendant les pauses de réflexion prolongées, donc si votre passerelle les supprime ou les met en mémoire tampon, Claude Code abandonne le flux pendant ces pauses ; [Tentatives automatiques](/docs/fr/errors#automatic-retries) couvre ce qu'un flux abandonné signale en fonction de la progression de la réponse. Un amont qui n'envoie aucun ping du tout, comme le flux d'événements binaires d'Amazon Bedrock, laisse ces pauses sans rien à relayer. Lors de la traduction à partir d'un tel amont, émettez vos propres événements `ping` pendant les silences. Les passerelles atteintes via `ANTHROPIC_BEDROCK_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, ou `ANTHROPIC_FOUNDRY_BASE_URL` ne sont pas enveloppées par ce chien de garde au niveau des octets, même quand elles relaient le format Anthropic Messages ; là, un [délai d'inactivité de 5 minutes](/docs/fr/env-vars) abandonne un flux silencieux à la place, et sur les connexions `ANTHROPIC_BEDROCK_BASE_URL` vous pouvez ajouter le chien de garde au niveau des octets avec [`CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK`](/docs/fr/env-vars).


158 162 

159Définir `CLAUDE_CODE_GATEWAY_HINT_HEADERS` à `0` arrête les en-têtes sur chaque connexion.163Définir `CLAUDE_CODE_GATEWAY_HINT_HEADERS` à `0` arrête les en-têtes sur chaque connexion.

160 164 

161Les en-têtes ne portent que ce que les lignes ci-dessous énumèrent : vocabulaires fixes, noms d'outils et durées, jamais de texte d'invite ou de contenu de fichier. Chaque valeur est ASCII imprimable.165Les en-têtes ne portent que ce que les lignes ci-dessous énumèrent : vocabulaires fixes, noms d'outils, durées et un identifiant d'invite aléatoire, jamais de texte d'invite ou de contenu de fichier. Chaque valeur est ASCII imprimable.

162 166 

163| En-tête | Description |167| En-tête | Description |

164| :- | :- |168| :- | :- |


167| `x-claude-code-compaction` | Présent sur la requête qui résume la conversation lors d'une [compaction](/docs/fr/prompt-caching#compacting-the-conversation). La valeur indique ce qui l'a déclenchée : `auto` lorsque la fenêtre de contexte approchait de la capacité, `manual` pour `/compact`, ou `reactive` lorsque l'API a rejeté une requête comme trop longue. Absent sur chaque autre requête |171| `x-claude-code-compaction` | Présent sur la requête qui résume la conversation lors d'une [compaction](/docs/fr/prompt-caching#compacting-the-conversation). La valeur indique ce qui l'a déclenchée : `auto` lorsque la fenêtre de contexte approchait de la capacité, `manual` pour `/compact`, ou `reactive` lorsque l'API a rejeté une requête comme trop longue. Absent sur chaque autre requête |

168| `x-claude-code-context-compacted` | Présent une fois, sur la première requête de conversation principale après une compaction, avec les mêmes valeurs que `x-claude-code-compaction`. Le préfixe de conversation avant cette requête n'est plus utilisé, donc un cache basé sur celui-ci peut être supprimé |172| `x-claude-code-context-compacted` | Présent une fois, sur la première requête de conversation principale après une compaction, avec les mêmes valeurs que `x-claude-code-compaction`. Le préfixe de conversation avant cette requête n'est plus utilisé, donc un cache basé sur celui-ci peut être supprimé |

169| `x-claude-code-prev-tool-durations` | Temps d'exécution mesuré des appels d'outils dont cette requête porte les résultats, comme `<name>=<ms>;<name>=<ms>`, par exemple `Bash=742;Read=9`. Envoyé sur la requête suivante de la même conversation après un lot d'appels d'outils, depuis la session principale ou un sous-agent |173| `x-claude-code-prev-tool-durations` | Temps d'exécution mesuré des appels d'outils dont cette requête porte les résultats, comme `<name>=<ms>;<name>=<ms>`, par exemple `Bash=742;Read=9`. Envoyé sur la requête suivante de la même conversation après un lot d'appels d'outils, depuis la session principale ou un sous-agent |

174| `x-claude-code-prompt-id` | UUID aléatoire qui identifie l'invite utilisateur qu'une requête sert. Les requêtes servant une invite partagent la valeur, y compris les tours des sous-agents que l'invite a démarrés. Les requêtes non attribuées à une invite l'omettent. Utilisez-le pour regrouper les requêtes d'une session par invite. Nécessite Claude Code v2.1.283 ou ultérieur |

170 175 

171Avant d'analyser `x-claude-code-prev-tool-durations`, vérifiez comment Claude Code construit la valeur et ce qu'il omet :176Avant d'analyser `x-claude-code-prev-tool-durations`, vérifiez comment Claude Code construit la valeur et ce qu'il omet :

172 177 


265 Désactiver les capacités de pré-version270 Désactiver les capacités de pré-version

266</h3>271</h3>

267 272 

268`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` empêche Claude Code d'envoyer les capacités de pré-version et leurs champs de corps sur chaque fournisseur, y compris la gestion du contexte et les champs d'outil bêta. La variable n'affecte pas le raisonnement adaptatif, qui est sélectionné par modèle plutôt que par bêta. Elle ne supprime jamais la capacité OAuth que l'authentification par abonnement exige.273`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` empêche Claude Code d'envoyer les capacités de pré-version et leurs champs de corps, y compris la gestion du contexte et les champs d'outil bêta. La variable n'affecte pas le raisonnement adaptatif, qui est sélectionné par modèle plutôt que par bêta. Elle ne supprime jamais la capacité OAuth que l'authentification par abonnement exige.

274 

275Lorsqu'une plateforme hôte qui intègre Claude Code définit [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/fr/env-vars), `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` n'empêche pas les sessions en mode auto sur Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry, ou une [passerelle des applications Claude](/docs/fr/claude-apps-gateway) de demander au serveur un [examen du classificateur](/docs/fr/permission-modes#server-side-classifier-review). Cet examen ajoute une valeur `anthropic-beta` et un champ de requête `safeguards`. Définissez `CLAUDE_CODE_AUTO_MODE_SERVER=0` pour l'arrêter là.

269 276 

270Sur Claude Code v2.1.227 ou ultérieur, votre organisation peut maintenir la [recherche d'outils MCP](/docs/fr/mcp#scale-with-mcp-tool-search) activée sous cette variable via les [paramètres gérés](/docs/fr/managed-settings). Ce que Claude Code envoie avec ce remplacement en place dépend de la façon dont vous vous connectez :277Sur Claude Code v2.1.227 ou ultérieur, votre organisation peut maintenir la [recherche d'outils MCP](/docs/fr/mcp#scale-with-mcp-tool-search) activée sous cette variable via les [paramètres gérés](/docs/fr/managed-settings). Ce que Claude Code envoie avec ce remplacement en place dépend de la façon dont vous vous connectez :

271 278 


340Un ID découvert n'obtient pas sa propre ligne lorsqu'il correspond à une ligne déjà dans le sélecteur :347Un ID découvert n'obtient pas sa propre ligne lorsqu'il correspond à une ligne déjà dans le sélecteur :

341 348 

342* Même ID : l'ID découvert correspond exactement à l'ID d'une ligne existante, ou les deux ID sont des orthographes de la même version [Fable](/docs/fr/model-config#work-with-fable).349* Même ID : l'ID découvert correspond exactement à l'ID d'une ligne existante, ou les deux ID sont des orthographes de la même version [Fable](/docs/fr/model-config#work-with-fable).

343* Même modèle qu'un alias intégré : lorsqu'un ID explicite découvert nomme le modèle auquel un alias intégré se résout actuellement, le sélecteur affiche uniquement la ligne d'alias. Par exemple, tandis que `sonnet` se résout en `claude-sonnet-5`, un `claude-sonnet-5` découvert s'effondre dans la ligne `sonnet`, et un `claude-sonnet-4-6` découvert obtient toujours sa propre ligne. Avant v2.1.197, Claude Code ne fusionnait pas ces ID dans les lignes intégrées, donc `claude-sonnet-5` obtenait également sa propre ligne « Depuis la passerelle ».350* Même modèle qu'un alias intégré : lorsqu'un ID explicite découvert nomme le modèle auquel un alias intégré se résout actuellement, le sélecteur affiche uniquement la ligne d'alias. Par exemple, tandis que `sonnet` se résout en `claude-sonnet-5-5`, un `claude-sonnet-5-5` découvert s'effondre dans la ligne `sonnet`, et un `claude-sonnet-5` découvert obtient toujours sa propre ligne. Avant v2.1.197, Claude Code ne fusionnait pas ces ID dans les lignes intégrées, donc l'ID auquel un alias se résolvait obtenait également sa propre ligne « Depuis la passerelle ».

344 351 

345Les résultats sont mis en cache dans `~/.claude/cache/gateway-models.json`, ou `%USERPROFILE%\.claude\cache\gateway-models.json` sur Windows, et actualisés à chaque démarrage. Si vous définissez [`CLAUDE_CONFIG_DIR`](/docs/fr/env-vars), le cache se trouve sous ce répertoire à la place. Si la requête échoue ou la passerelle n'implémente pas `/v1/models`, le sélecteur revient à la liste mise en cache du démarrage précédent ou à la liste de modèles intégrée. Si votre passerelle sert les modèles Claude sous des alias qui ne correspondent pas au filtre de découverte, les développeurs peuvent ajouter ces alias manuellement avec les [variables de configuration du modèle](/docs/fr/model-config).352Les résultats sont mis en cache dans `~/.claude/cache/gateway-models.json`, ou `%USERPROFILE%\.claude\cache\gateway-models.json` sur Windows, et actualisés à chaque démarrage. Si vous définissez [`CLAUDE_CONFIG_DIR`](/docs/fr/env-vars), le cache se trouve sous ce répertoire à la place. Si la requête échoue ou la passerelle n'implémente pas `/v1/models`, le sélecteur revient à la liste mise en cache du démarrage précédent ou à la liste de modèles intégrée. Si votre passerelle sert les modèles Claude sous des alias qui ne correspondent pas au filtre de découverte, les développeurs peuvent ajouter ces alias manuellement avec les [variables de configuration du modèle](/docs/fr/model-config).

346 353 

Details

208 208 

209Ajoutez les variables conditionnelles du tableau au même bloc `env`. Un `ANTHROPIC_BASE_URL` géré est appliqué et ne peut pas être remplacé par une exportation de shell d'un développeur, car Claude Code l'applique sur l'environnement de processus et les paramètres de priorité inférieure.209Ajoutez les variables conditionnelles du tableau au même bloc `env`. Un `ANTHROPIC_BASE_URL` géré est appliqué et ne peut pas être remplacé par une exportation de shell d'un développeur, car Claude Code l'applique sur l'environnement de processus et les paramètres de priorité inférieure.

210 210 

211N'incluez pas `forceLoginMethod` ou `forceLoginOrgUUID` dans les paramètres gérés aux côtés d'une credential de passerelle. L'une ou l'autre clé, avec n'importe quelle valeur, bloque `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, et `apiKeyHelper` au démarrage, et les développeurs ne peuvent pas continuer. Ils voient `This machine's managed settings require a first-party login`, ou [`Administrator policy requires a Cloud gateway sign-in`](/docs/fr/errors#administrator-policy-requires-a-cloud-gateway-sign-in) sous une valeur `"gateway"`.211N'incluez pas `forceLoginMethod`, `forceLoginOrgUUID`, ou `forceLoginGatewayUrl` dans les paramètres gérés aux côtés d'une credential de passerelle. `forceLoginMethod` ou `forceLoginOrgUUID`, avec n'importe quelle valeur, bloque `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, et `apiKeyHelper` au démarrage, et les développeurs ne peuvent pas continuer. Ils voient `This machine's managed settings require a first-party login`, ou [`Administrator policy requires a Cloud gateway sign-in`](/docs/fr/errors#administrator-policy-requires-a-cloud-gateway-sign-in) quand le fichier définit `forceLoginMethod` à `"gateway"` ou définit `forceLoginGatewayUrl`.

212 212 

213La livraison des [paramètres gérés par le serveur](/docs/fr/server-managed-settings#platform-availability) nécessite une connexion directe à `api.anthropic.com`, donc elle n'atteint pas les sessions acheminées par la passerelle. Les déploiements de passerelle utilisent ce chemin de paramètres gérés basé sur fichier, qui applique les mêmes clés.213La livraison des [paramètres gérés par le serveur](/docs/fr/server-managed-settings#platform-availability) nécessite une connexion directe à `api.anthropic.com`, donc elle n'atteint pas les sessions acheminées par la passerelle. Les déploiements de passerelle utilisent ce chemin de paramètres gérés basé sur fichier, qui applique les mêmes clés.

214 214 

managed-mcp.md +1 −1

Details

526 Surveiller l'utilisation de MCP526 Surveiller l'utilisation de MCP

527</h2>527</h2>

528 528 

529Quand [l'export OpenTelemetry](/docs/fr/monitoring-usage) est configuré, Claude Code peut enregistrer les serveurs MCP et les outils que les utilisateurs invoquent. Définissez `OTEL_LOG_TOOL_DETAILS=1` pour inclure les noms de serveur MCP et d'outils dans les événements d'outils, puis agrégez-les dans votre collecteur pour voir les serveurs auxquels vos utilisateurs se connectent réellement. Voir [Surveillance](/docs/fr/monitoring-usage) pour configurer l'exportateur et pour le schéma d'événement complet.529Quand vous configurez [l'export OpenTelemetry](/docs/fr/monitoring-usage), Claude Code peut enregistrer les serveurs MCP et les outils que les utilisateurs invoquent. Définissez `OTEL_LOG_TOOL_DETAILS=1` pour inclure les noms de serveur MCP et d'outils dans les événements d'outils et sur les [compteurs de coût et de jetons](/docs/fr/monitoring-usage#cost-counter), puis agrégez-les dans votre collecteur pour voir les serveurs auxquels vos utilisateurs se connectent réellement. Voir [Surveillance](/docs/fr/monitoring-usage) pour configurer l'exportateur et pour le schéma d'événement complet.

530 530 

531<h2 id="configuration-summary">531<h2 id="configuration-summary">

532 Résumé de la configuration532 Résumé de la configuration

Details

75| [Paramètres gérés par le serveur](/docs/fr/server-managed-settings) | Dans la console d'administration claude.ai, ou sur une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) auto-hébergée | Récupérés au démarrage et interrogés toutes les heures ; consultez [les modifications qui nécessitent une approbation](#where-and-when-a-policy-applies) | Vous voulez un seul endroit pour changer la politique pour une organisation claude.ai sans toucher à chaque machine |75| [Paramètres gérés par le serveur](/docs/fr/server-managed-settings) | Dans la console d'administration claude.ai, ou sur une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) auto-hébergée | Récupérés au démarrage et interrogés toutes les heures ; consultez [les modifications qui nécessitent une approbation](#where-and-when-a-policy-applies) | Vous voulez un seul endroit pour changer la politique pour une organisation claude.ai sans toucher à chaque machine |

76| Politique MDM ou au niveau du système d'exploitation | Comme un profil de configuration macOS ou une valeur de registre Windows `HKLM`, via Jamf, Intune, Group Policy, ou un outil similaire ; consultez [où chaque mécanisme stocke la politique](#where-each-mechanism-stores-the-policy) | Lus au démarrage et vérifiés pour les modifications toutes les 30 minutes | Vous gérez déjà les appareils avec MDM ou Group Policy |76| Politique MDM ou au niveau du système d'exploitation | Comme un profil de configuration macOS ou une valeur de registre Windows `HKLM`, via Jamf, Intune, Group Policy, ou un outil similaire ; consultez [où chaque mécanisme stocke la politique](#where-each-mechanism-stores-the-policy) | Lus au démarrage et vérifiés pour les modifications toutes les 30 minutes | Vous gérez déjà les appareils avec MDM ou Group Policy |

77| Basé sur fichier | Comme `managed-settings.json` dans un répertoire système sur chaque machine ; consultez [où chaque mécanisme stocke la politique](#where-each-mechanism-stores-the-policy) | Lus au démarrage et rechargés quand un fichier change | Machines sans MDM, hôtes Linux, ou images que vous construisez vous-même |77| Basé sur fichier | Comme `managed-settings.json` dans un répertoire système sur chaque machine ; consultez [où chaque mécanisme stocke la politique](#where-each-mechanism-stores-the-policy) | Lus au démarrage et rechargés quand un fichier change | Machines sans MDM, hôtes Linux, ou images que vous construisez vous-même |

78| Registre HKCU, Windows et WSL | Comme une valeur de registre Windows `HKCU` ; consultez [où chaque mécanisme stocke la politique](#where-each-mechanism-stores-the-policy) | Lus au démarrage et vérifiés pour les modifications toutes les 30 minutes ; Claude Code ne l'utilise que quand aucune autre source gérée ne livre une clé de politique et aucun [paramètre parent fourni par l'hôte](#let-an-embedding-host-add-policy) ne fournit une clé restrictive | Vous ne pouvez pas écrire la clé au niveau de la machine `HKLM` |78| Registre HKCU, Windows et WSL | Comme une valeur de registre Windows `HKCU` ; consultez [où chaque mécanisme stocke la politique](#where-each-mechanism-stores-the-policy) | Lus au démarrage et vérifiés pour les modifications toutes les 30 minutes ; Claude Code ne l'utilise que quand [aucun document d'administration n'est présent au-dessus](#present-admin-documents) et aucun [paramètre parent fourni par l'hôte](#let-an-embedding-host-add-policy) ne fournit une clé restrictive | Vous ne pouvez pas écrire la clé au niveau de la machine `HKLM` |

79 79 

80Les modèles de démarrage pour Jamf, Iru, Intune et Group Policy se trouvent dans le [référentiel d'exemples MDM](https://github.com/anthropics/claude-code/tree/main/examples/mdm).80Les modèles de démarrage pour Jamf, Iru, Intune et Group Policy se trouvent dans le [référentiel d'exemples MDM](https://github.com/anthropics/claude-code/tree/main/examples/mdm).

81 81 


146* **`"first-wins"`, la valeur par défaut** : Claude Code utilise la source la mieux classée qui livre au moins une clé de politique et ignore le reste plutôt que de les fusionner, à l'exception des clés dans [Clés lues de chaque source d'administration](#keys-read-from-every-admin-source). Claude Code n'affiche aucun avertissement pour les sources qu'il ignore ; `/status` [nomme la source qu'il a utilisée et celles qu'il a ignorées](#read-the-source-in-/status).146* **`"first-wins"`, la valeur par défaut** : Claude Code utilise la source la mieux classée qui livre au moins une clé de politique et ignore le reste plutôt que de les fusionner, à l'exception des clés dans [Clés lues de chaque source d'administration](#keys-read-from-every-admin-source). Claude Code n'affiche aucun avertissement pour les sources qu'il ignore ; `/status` [nomme la source qu'il a utilisée et celles qu'il a ignorées](#read-the-source-in-/status).

147* **`"merge"`** : Claude Code applique chaque source d'administration qui livre une clé de politique et les combine par type de clé : sur la plupart des clés, la valeur de la source la mieux classée s'applique, les listes s'unissent, et les verrous prennent la valeur la plus stricte. [Composer chaque source gérée](#compose-every-managed-source) dit où définir la clé et comment chaque type de clé se combine. Nécessite Claude Code v2.1.242 ou ultérieur.147* **`"merge"`** : Claude Code applique chaque source d'administration qui livre une clé de politique et les combine par type de clé : sur la plupart des clés, la valeur de la source la mieux classée s'applique, les listes s'unissent, et les verrous prennent la valeur la plus stricte. [Composer chaque source gérée](#compose-every-managed-source) dit où définir la clé et comment chaque type de clé se combine. Nécessite Claude Code v2.1.242 ou ultérieur.

148 148 

149Les deux paramètres classent les sources de la même manière. Deux termes reviennent dans cette section :149Les deux paramètres classent les sources de la même manière. Ces termes reviennent dans cette section :

150 150 

151* **Clé de politique** : toute clé de paramètres autre que les deux clés de contrôle, [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings) et [`managedSourcesBehavior`](/docs/fr/settings-reference#managedsourcesbehavior). Un fichier de paramètres gérés ou une politique MDM qui contient uniquement ceux-ci ne compte pas, et Claude Code passe à la source suivante.151* **Clé de politique** : toute clé de paramètres autre que les deux clés de contrôle, [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings) et [`managedSourcesBehavior`](/docs/fr/settings-reference#managedsourcesbehavior). Un fichier de paramètres gérés ou une politique MDM qui contient uniquement ceux-ci ne compte pas, et Claude Code passe à la source suivante.

152* **Source d'administration** : l'une des trois premières sources ci-dessous. Le registre HKCU modifiable par l'utilisateur n'en est pas une.152* **Source d'administration** : l'une des trois premières sources ci-dessous. Le registre HKCU modifiable par l'utilisateur n'en est pas une.


1561. Paramètres distants, livrés de claude.ai comme [paramètres gérés par le serveur](/docs/fr/server-managed-settings) ou par une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway). Claude Code récupère cette source uniquement quand la session s'authentifie à l'API d'Anthropic directement avec une [connexion ou clé éligible](/docs/fr/server-managed-settings#platform-availability), ou se connecte à une passerelle avec `/login`. Sur d'autres fournisseurs, ou quand `ANTHROPIC_BASE_URL` pointe ailleurs que l'API d'Anthropic, il commence à la source suivante1561. Paramètres distants, livrés de claude.ai comme [paramètres gérés par le serveur](/docs/fr/server-managed-settings) ou par une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway). Claude Code récupère cette source uniquement quand la session s'authentifie à l'API d'Anthropic directement avec une [connexion ou clé éligible](/docs/fr/server-managed-settings#platform-availability), ou se connecte à une passerelle avec `/login`. Sur d'autres fournisseurs, ou quand `ANTHROPIC_BASE_URL` pointe ailleurs que l'API d'Anthropic, il commence à la source suivante

1572. Politiques MDM ou au niveau du système d'exploitation : le plist macOS ou la clé de registre HKLM1572. Politiques MDM ou au niveau du système d'exploitation : le plist macOS ou la clé de registre HKLM

1583. Fichiers de paramètres gérés, `managed-settings.d/*.json` et `managed-settings.json` fusionnés ensemble1583. Fichiers de paramètres gérés, `managed-settings.d/*.json` et `managed-settings.json` fusionnés ensemble

1594. Le registre HKCU, sur Windows, et sur WSL une fois que le registre HKLM ou le fichier de paramètres gérés Windows active [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings) et la valeur HKCU le définit également. Claude Code ne le lit que quand aucune source au-dessus ne livre une clé de politique et aucun [paramètre parent fourni par l'hôte](#let-an-embedding-host-add-policy) ne fournit une clé restrictive1594. Le registre HKCU, sur Windows, et sur WSL une fois que le registre HKLM ou le fichier de paramètres gérés Windows active [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings) et la valeur HKCU le définit également. Claude Code ne le lit que quand aucune source d'administration n'est présente au-dessus et aucun [paramètre parent fourni par l'hôte](#let-an-embedding-host-add-policy) ne fournit une clé restrictive

160 

161<span id="present-admin-documents" />

162 

163Claude Code n'applique jamais le registre HKCU modifiable par l'utilisateur sous un document d'administration qui est présent. Un document est présent quand il définit une clé de politique à une valeur autre que `null`, même une valeur que Claude Code ne peut pas lire. Une valeur HKLM, un fichier de paramètres gérés, ou un répertoire `managed-settings.d` qui existe mais ne peut pas être lu est présent aussi. Sur WSL, `/etc/claude-code` est également modifiable par l'utilisateur, et l'entrée [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings) dit quand les documents Windows se situent au-dessus.

160 164 

161Ce diagramme montre le classement, avec des exemples des clés inter-sources que Claude Code lit des trois premières sources sous l'un ou l'autre paramètre :165Ce diagramme montre le classement, avec des exemples des clés inter-sources que Claude Code lit des trois premières sources sous l'un ou l'autre paramètre :

162 166 


208 212 

209| Type de clé | Comment Claude Code la combine | Exemples |213| Type de clé | Comment Claude Code la combine | Exemples |

210| :- | :- | :- |214| :- | :- | :- |

211| Listes | Combine les entrées de chaque source | `permissions.allow`, `hooks`, `sandbox.network.allowedDomains`, `deniedMcpServers` |215| Listes | Combine les entrées de chaque source | `permissions.allow`, `hooks`, `sandbox.network.allowedDomains`, `deniedMcpServers`, `deniedModels` |

212| Verrous | Applique la valeur la plus stricte que n'importe quelle source définit ; une valeur plus souple s'applique uniquement de la source la mieux classée | `allowManagedHooksOnly`, `permissions.disableBypassPermissionsMode`, `crossSessionInbound` |216| Verrous | Applique la valeur la plus stricte que n'importe quelle source définit ; une valeur plus souple s'applique uniquement de la source la mieux classée | `allowManagedHooksOnly`, `permissions.disableBypassPermissionsMode`, `crossSessionInbound`, `availableModelsMatch` |

213| Listes d'autorisation de restriction | Prend la liste entière de la source la mieux classée qui la définit, sans ajouter d'entrées de sources inférieures | `availableModels`, `allowedMcpServers`, `strictKnownMarketplaces`, `allowedChannelPlugins`, et la chaîne `fallbackModel` |217| Listes d'autorisation de restriction | Prend la liste entière de la source la mieux classée qui la définit, sans ajouter d'entrées de sources inférieures | `availableModels`, `allowedMcpServers`, `strictKnownMarketplaces`, `allowedChannelPlugins`, et la chaîne `fallbackModel` |

214| Valeurs prises entièrement | Prend la valeur entière de la source la mieux classée qui la définit, sans combiner d'entrées ou de champs de sources inférieures | `sandbox.credentials.awsPairs`, `sandbox.ripgrep` |218| Valeurs prises entièrement | Prend la valeur entière de la source la mieux classée qui la définit, sans combiner d'entrées ou de champs de sources inférieures | `sandbox.credentials.awsPairs`, `sandbox.ripgrep` |

215| Serveurs MCP fournis | Combine les noms de serveur de chaque source ; quand deux sources définissent le même nom, applique l'entrée entière de la source la mieux classée | `managedMcpServers` |219| Serveurs MCP fournis | Combine les noms de serveur de chaque source ; quand deux sources définissent le même nom, applique l'entrée entière de la source la mieux classée | `managedMcpServers` |


332 Trouver les entrées que Claude Code a supprimées336 Trouver les entrées que Claude Code a supprimées

333</h3>337</h3>

334 338 

335Quand un fichier de paramètres gérés, un profil MDM, une valeur de registre, ou une charge utile gérée par le serveur échoue la validation du schéma, Claude Code ignore d'abord les entrées individuelles qu'il peut réparer, comme une règle de permission invalide, avec un avertissement pour chacune, puis supprime toute clé de niveau supérieur dont la valeur échoue toujours et continue à appliquer chaque clé valide restante.339Si votre fichier de paramètres gérés, profil MDM, valeur de registre, ou charge utile gérée par le serveur échoue la validation du schéma, Claude Code ignore d'abord chaque entrée individuelle qu'il peut réparer, comme une règle de permission invalide, et avertit à propos de chacune. Claude Code supprime ensuite toute valeur qui échoue toujours, sauf si la valeur appartient à l'une des clés qui [échouent fermées](#keys-that-fail-closed) à la place.

336 340 

337Claude Code est plus strict avec le `managedSettings` qu'un [`policyHelper`](/docs/fr/settings-reference#policyhelper) émet : il fait les mêmes réparations d'entrée, mais toute violation de schéma qui survit échoue l'exécution entière de l'aide, et au démarrage Claude Code refuse de démarrer, de la même manière que pour une aide qui se termine avec un code non nul.341Claude Code est plus strict avec le `managedSettings` qu'un [`policyHelper`](/docs/fr/settings-reference#policyhelper) émet : il fait les mêmes réparations d'entrée, mais toute violation de schéma qui survit échoue l'exécution entière de l'aide, et au démarrage Claude Code refuse de démarrer, de la même manière que pour une aide qui se termine avec un code non nul.

338 342 


360 Clés qui échouent fermées364 Clés qui échouent fermées

361</h4>365</h4>

362 366 

363Quelques clés d'application ne sont pas supprimées quand elles sont invalides. Claude Code applique un fallback plus strict jusqu'à ce que la valeur soit corrigée ; le tableau montre ce qu'il applique pour chaque clé :367Quand une source gérée définit une clé de niveau supérieur qui a une seule valeur restrictive, comme `allowManagedPermissionRulesOnly`, `disableAutoMode`, ou `skipDangerousModePermissionPrompt`, à quelque chose que Claude Code ne peut pas lire, la clé se lit comme cette valeur jusqu'à ce que vous la corrigiez. Le rapport dit que la clé `was present but invalid` et nomme la valeur que Claude Code la traite comme. Pour une clé à l'intérieur de `sandbox`, consultez [Valeurs invalides à l'intérieur de `sandbox`](#invalid-values-inside-sandbox).

368 

369Ces cas ne échouent pas fermés :

370 

371* Un `null` supprime la clé.

372* Un `disableAllHooks` invalide, même un booléen entre guillemets, est supprimé avec un avertissement, car appliquer `true` déchargerait également les hooks que vos propres paramètres gérés déploient.

373* Pour chaque autre clé booléenne que la règle couvre, la chaîne `"true"` ou `"false"` se lit comme ce booléen, avec un avis dans `/status` vous demandant de supprimer les guillemets.

374 

375Claude Code répare les blocs `permissions`, `autoMode`, `worktree`, et `attribution` par champ au lieu de les supprimer entièrement :

376 

377* Un verrou à l'intérieur d'un, comme `permissions.disableBypassPermissionsMode`, se lit comme sa valeur restrictive.

378* Un `permissions.defaultMode` invalide se lit comme `default`.

379* Tandis qu'une liste `deny` ou `ask` dans `permissions` ne peut pas être lue du tout, Claude Code retient `allow` et `additionalDirectories`, donc les subventions ne s'appliquent jamais sans les restrictions écrites à côté. Le rapport nomme chaque subvention retenue et la liste qui ne pouvait pas être lue.

380* Dans `autoMode`, une liste `soft_deny` ou `hard_deny` qui ne peut pas être lue, ou qui a perdu une entrée invalide, retient `allow` et `environment` de la même manière.

381 

382La règle d'échec fermé pour les clés avec une seule valeur restrictive et les réparations par champ nécessitent Claude Code v2.1.282 ou ultérieur.

383 

384Ces clés ont leur propre fallback :

364 385 

365| Champ | Comportement quand présent mais invalide |386| Champ | Comportement quand présent mais invalide |

366| :- | :- |387| :- | :- |


369| `httpHookAllowedEnvVars` | Claude Code applique une [liste d'autorisation](/docs/fr/settings-reference#httphookallowedenvvars) gérée vide jusqu'à ce que vous corrigiez la valeur, donc une variable d'en-tête est interpolée uniquement si un autre fichier de paramètres la nomme. Si seule une entrée individuelle est invalide, Claude Code supprime cette entrée et applique le reste. |390| `httpHookAllowedEnvVars` | Claude Code applique une [liste d'autorisation](/docs/fr/settings-reference#httphookallowedenvvars) gérée vide jusqu'à ce que vous corrigiez la valeur, donc une variable d'en-tête est interpolée uniquement si un autre fichier de paramètres la nomme. Si seule une entrée individuelle est invalide, Claude Code supprime cette entrée et applique le reste. |

370| `allowedChannelPlugins` | Claude Code applique une liste d'autorisation vide jusqu'à ce que vous corrigiez la valeur, donc aucun plugin de canal passé à `--channels` n'est admis. Si seule une entrée individuelle est invalide, il supprime cette entrée et applique le reste. |391| `allowedChannelPlugins` | Claude Code applique une liste d'autorisation vide jusqu'à ce que vous corrigiez la valeur, donc aucun plugin de canal passé à `--channels` n'est admis. Si seule une entrée individuelle est invalide, il supprime cette entrée et applique le reste. |

371| `strictKnownMarketplaces` | Appliquée comme une liste d'autorisation vide jusqu'à ce que la valeur soit corrigée, donc aucune [source de marketplace](/docs/fr/plugins/org#restrict-what-users-can-install) n'est admise. Une entrée individuelle qui est invalide ou ne peut pas être appliquée, comme une regex `hostPattern` qui ne compile pas, est supprimée et le sous-ensemble valide est appliqué. |392| `strictKnownMarketplaces` | Appliquée comme une liste d'autorisation vide jusqu'à ce que la valeur soit corrigée, donc aucune [source de marketplace](/docs/fr/plugins/org#restrict-what-users-can-install) n'est admise. Une entrée individuelle qui est invalide ou ne peut pas être appliquée, comme une regex `hostPattern` qui ne compile pas, est supprimée et le sous-ensemble valide est appliqué. |

372| `allowManagedHooksOnly` | Traitée comme `true` jusqu'à correction : les [restrictions de hook](/docs/fr/settings-reference#allowmanagedhooksonly) s'appliquent et, à moins que `disableCommandPluginSources` ne soit explicitement `false`, les plugins sourced par commande sont désactivés. |

373| `allowManagedMcpServersOnly` | Traitée comme `true`. |

374| `disableCommandPluginSources` | Traitée comme `true`, donc les plugins sourced par commande restent désactivés jusqu'à ce que la valeur soit corrigée. |

375| `disableSideloadFlags` | Traitée comme `true` jusqu'à ce que la valeur soit corrigée, avec les effets énumérés pour [`disableSideloadFlags`](/docs/fr/settings-reference#disablesideloadflags). |

376| `availableModels` | Appliquée comme une liste d'autorisation vide jusqu'à correction, donc seul le modèle par défaut est disponible ; une entrée non-chaîne est supprimée et le sous-ensemble valide est appliqué. |393| `availableModels` | Appliquée comme une liste d'autorisation vide jusqu'à correction, donc seul le modèle par défaut est disponible ; une entrée non-chaîne est supprimée et le sous-ensemble valide est appliqué. |

377| `enforceAvailableModels` | Traitée comme `true`. |394| [`availableModelsMatch`](/docs/fr/settings-reference#availablemodelsmatch) | Traitée comme `exact` jusqu'à ce que la valeur soit corrigée. |

378| `syncClaudeAiPlugins` | Traitée comme `false`, donc la synchronisation des [plugins claude.ai](/docs/fr/settings-reference#syncclaudeaiplugins) est désactivée jusqu'à ce que la valeur soit corrigée. |

379| `forceLoginOrgUUID` | Aucune organisation n'est autorisée à se connecter jusqu'à ce que la valeur soit corrigée. |395| `forceLoginOrgUUID` | Aucune organisation n'est autorisée à se connecter jusqu'à ce que la valeur soit corrigée. |

380| `gatewayInternalNetworks` | Quand la valeur invalide provient de la source gérée la plus élevée sur la machine, `/login` refuse chaque nouvelle connexion [passerelle cloud](/docs/fr/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) sur cette machine jusqu'à ce que la valeur soit corrigée. |396| `gatewayInternalNetworks` | Quand la valeur invalide provient de la source gérée la plus élevée sur la machine, `/login` refuse chaque nouvelle connexion [passerelle cloud](/docs/fr/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) sur cette machine jusqu'à ce que la valeur soit corrigée. |

381| `crossSessionInbound` | Traitée comme `refuse`, la valeur la plus restrictive, donc les [messages inter-sessions](/docs/fr/cross-session-messaging#control-inbound-messages) entrants sont refusés jusqu'à ce que la valeur soit corrigée. Le développeur voit [un avertissement](/docs/fr/errors#crosssessioninbound-must-be-one-of-accept-hold-refuse). |397| `crossSessionInbound` | Traitée comme `refuse`, la valeur la plus restrictive, donc les [messages inter-sessions](/docs/fr/cross-session-messaging#control-inbound-messages) entrants sont refusés jusqu'à ce que la valeur soit corrigée. Le développeur voit [un avertissement](/docs/fr/errors#crosssessioninbound-must-be-one-of-accept-hold-refuse). |

382| `deniedMcpServers` | Une entrée invalide individuelle est supprimée et le sous-ensemble valide est appliqué. Une valeur entièrement invalide est supprimée avec un avertissement, car refuser chaque serveur bloquerait les serveurs que la politique n'a jamais nommés. |398| `deniedMcpServers` | Une entrée invalide individuelle est supprimée et le sous-ensemble valide est appliqué. Une valeur entièrement invalide est supprimée avec un avertissement, car refuser chaque serveur bloquerait les serveurs que la politique n'a jamais nommés. |

399| [`deniedModels`](/docs/fr/settings-reference#deniedmodels) | Une entrée non-chaîne est supprimée et le reste de la liste est appliqué. Une valeur entièrement invalide est supprimée avec un avertissement et ne bloque aucun modèle jusqu'à ce qu'elle soit corrigée. |

383| `blockedMarketplaces` | Une entrée invalide individuelle est supprimée et le sous-ensemble valide est appliqué. Une entrée qui analyse mais ne peut jamais correspondre, comme une regex `hostPattern` qui ne compile pas, est conservée avec un avertissement. Elle ne bloque rien jusqu'à correction, mais les [restrictions de marketplace](/docs/fr/plugins/org#restrict-what-users-can-install) restent actives. Une valeur entièrement invalide est supprimée avec un avertissement, car bloquer chaque marketplace bloquerait les sources que la politique n'a jamais nommées. |400| `blockedMarketplaces` | Une entrée invalide individuelle est supprimée et le sous-ensemble valide est appliqué. Une entrée qui analyse mais ne peut jamais correspondre, comme une regex `hostPattern` qui ne compile pas, est conservée avec un avertissement. Elle ne bloque rien jusqu'à correction, mais les [restrictions de marketplace](/docs/fr/plugins/org#restrict-what-users-can-install) restent actives. Une valeur entièrement invalide est supprimée avec un avertissement, car bloquer chaque marketplace bloquerait les sources que la politique n'a jamais nommées. |

384| `sandbox.credentials` | Une entrée invalide récupérable est dégradée à `mode: "deny"` avec un avertissement ; une irrécupérable est supprimée ; les entrées valides restent appliquées. Consultez [entrées de credential invalides](/docs/fr/settings-reference#invalid-credential-entries-in-managed-settings) |401| `sandbox` | Quand une valeur à l'intérieur du bloc est invalide, Claude Code ne supprime pas le bloc entier. Pour ce qui arrive à chaque type de champ invalide, consultez [Valeurs invalides à l'intérieur de `sandbox`](#invalid-values-inside-sandbox). |

402| `sandbox.credentials` | Une entrée invalide récupérable est dégradée à `mode: "deny"` avec un avertissement ; une irrécupérable est supprimée ; les entrées valides restent appliquées. Consultez [entrées de credential invalides](/docs/fr/settings-reference#invalid-credential-entries-in-managed-settings). |

403| `strictPluginOnlyCustomization` | Traitée comme `true`, verrouillant les quatre surfaces, quand la valeur n'est ni un booléen ni un tableau. Une entrée de tableau que cette version ne reconnaît pas comme une surface ne verrouille rien ; une note de statut compte ces entrées pour que vous puissiez les vérifier pour les fautes de frappe. |

404| `enabledPlugins` | Une entrée invalide est supprimée avec un avertissement et les autres entrées restent appliquées. Une valeur qui n'est pas une carte d'ID de plugin, ou dont chaque entrée est invalide, est supprimée entièrement avec un avertissement. |

385 405 

386`allowedHttpHookUrls` et `httpHookAllowedEnvVars` fusionnent entre les fichiers de paramètres, donc les entrées dans vos paramètres utilisateur, projet ou local s'appliquent toujours tandis que la liste gérée est vide.406`allowedHttpHookUrls` et `httpHookAllowedEnvVars` fusionnent entre les fichiers de paramètres, donc les entrées dans vos paramètres utilisateur, projet ou local s'appliquent toujours tandis que la liste gérée est vide.

387 407 

388Les fallbacks pour ces deux clés et pour `allowedChannelPlugins` nécessitent Claude Code v2.1.267 ou ultérieur ; les versions antérieures suppriment la clé entière quand sa valeur ou une entrée est invalide. Les fallbacks pour `strictKnownMarketplaces`, `blockedMarketplaces`, et `disableSideloadFlags` nécessitent Claude Code v2.1.277 ou ultérieur ; les versions antérieures suppriment la clé entière quand sa valeur ou une entrée est invalide.408Les fallbacks pour ces deux clés et pour `allowedChannelPlugins` nécessitent Claude Code v2.1.267 ou ultérieur ; les versions antérieures suppriment la clé entière quand sa valeur ou une entrée est invalide. Les fallbacks pour `strictKnownMarketplaces` et `blockedMarketplaces` nécessitent Claude Code v2.1.277 ou ultérieur ; les versions antérieures suppriment la clé entière quand sa valeur ou une entrée est invalide. Les fallbacks pour `strictPluginOnlyCustomization` et `enabledPlugins` nécessitent Claude Code v2.1.282 ou ultérieur.

389 409 

390`requiredMinimumVersion` et `requiredMaximumVersion` échouent ouvertes par conception : une valeur invalide est supprimée plutôt qu'appliquée.410`requiredMinimumVersion` et `requiredMaximumVersion` échouent ouvertes par conception : une valeur invalide est supprimée plutôt qu'appliquée.

391 411 

392Cette tolérance s'applique uniquement aux paramètres gérés. Les fichiers de paramètres utilisateur, projet et local restent stricts : un fichier dont le JSON ou la forme de niveau supérieur échoue la validation est rejeté entièrement et signalé, et une entrée individuelle qui échoue, comme une règle de permission malformée, est ignorée avec un avertissement tandis que le reste du fichier s'applique.412Cette tolérance s'applique uniquement aux paramètres gérés. Les fichiers de paramètres utilisateur, projet et local restent stricts : un fichier dont le JSON ou la forme de niveau supérieur échoue la validation est rejeté entièrement et signalé, et une entrée individuelle qui échoue, comme une règle de permission malformée, est ignorée avec un avertissement tandis que le reste du fichier s'applique.

393 413 

414<h4 id="invalid-values-inside-sandbox">

415 Valeurs invalides à l'intérieur de `sandbox`

416</h4>

417 

418Quand une valeur dans votre bloc `sandbox` géré est invalide, Claude Code ne supprime pas le bloc entier, car il valide chaque champ indépendamment. Cette gestion par champ nécessite Claude Code v2.1.283 ou ultérieur. Sur les versions antérieures à v2.1.283, Claude Code supprime chaque champ `sandbox` sauf [`credentials`](/docs/fr/settings-reference#invalid-credential-entries-in-managed-settings) quand une valeur en dehors de `credentials` est invalide.

419 

420L'avertissement que vous recevez pour un champ invalide nomme le champ et vous dit ce qui lui arrive. Ce qui arrive dépend de ce que le champ contrôle :

421 

422* Si vous définissez une clé booléenne sur une `"true"` ou `"false"` entre guillemets, la valeur compte comme ce booléen. Au lieu d'un avertissement, `/status` affiche un avis vous demandant de supprimer les guillemets.

423* Si `failIfUnavailable` est invalide, Claude Code supprime la valeur plutôt que de la traiter comme `true`, donc une valeur illisible ne bloque jamais les sessions de démarrage sur votre flotte.

424* Claude Code traite chaque autre booléen invalide comme la valeur qui garde le sandbox le plus strict jusqu'à ce que vous la corrigiez. Une clé qui active le sandbox ou l'une de ses restrictions, comme `enabled` ou `network.allowManagedDomainsOnly`, compte comme `true`. Une clé qui l'assouplit, comme `allowUnsandboxedCommands`, compte comme `false`.

425* Dans une liste en dehors de `credentials`, comme `excludedCommands` ou `network.allowedDomains`, Claude Code supprime une entrée invalide et garde le reste de la liste. Une liste qui n'est pas un tableau, ou qui n'a aucune entrée valide, ne s'applique pas du tout.

426* Tandis que `network.deniedDomains` ou une entrée quelconque en elle est invalide, Claude Code retient également `network.allowedDomains`, donc la liste d'autorisation gérée n'accorde rien jusqu'à ce que vous corrigiez la liste de refus.

427* Tandis que `filesystem.denyRead`, `filesystem.denyWrite`, ou une entrée quelconque dans l'une ou l'autre est invalide, Claude Code retient également `filesystem.allowRead` et `filesystem.allowWrite` jusqu'à ce que vous corrigiez la liste de refus.

428 

394<span id="managed-only-settings" />429<span id="managed-only-settings" />

395 430 

396<h2 id="keys-only-a-managed-source-can-set">431<h2 id="keys-only-a-managed-source-can-set">


401 436 

402La plupart d'entre elles sont des verrous : la valeur qu'un verrou gouverne, comme les règles de permission ou `sandbox.network.allowedDomains`, est une clé ordinaire que n'importe quel niveau peut définir, et le verrou dit à Claude Code d'honorer uniquement la valeur gérée.437La plupart d'entre elles sont des verrous : la valeur qu'un verrou gouverne, comme les règles de permission ou `sandbox.network.allowedDomains`, est une clé ordinaire que n'importe quel niveau peut définir, et le verrou dit à Claude Code d'honorer uniquement la valeur gérée.

403 438 

404Le tableau couvre les contrôles de permission, plugin et livraison. Pour toute clé non énumérée ici, la colonne Scope de l'[index de référence des paramètres](/docs/fr/settings-reference#all-settings) dit si elle est gérée uniquement ; les clés gérées uniquement restantes là incluent l'URL de connexion à la passerelle, la version, le navigateur, le simulateur mobile, l'hôte SSH, la session locale Desktop, le chemin binaire sandbox, la tarification du modèle, et les contrôles CLAUDE.md.439Le tableau couvre les contrôles de permission, plugin et livraison. Pour toute clé non énumérée ici, la colonne Scope de l'[index de référence des paramètres](/docs/fr/settings-reference#all-settings) dit si elle est gérée uniquement ; les clés gérées uniquement restantes là incluent l'URL de connexion à la passerelle, la version, le navigateur, le simulateur mobile, l'hôte SSH, la session locale Desktop, le chemin binaire sandbox, la tarification du modèle, la restriction du modèle, et les contrôles CLAUDE.md.

405 440 

406| Paramètre | Description |441| Paramètre | Description |

407| :- | :- |442| :- | :- |


425| [`sandbox.network.allowManagedDomainsOnly`](/docs/fr/settings-reference#sandbox-network-allowmanageddomainsonly) | Honorer uniquement les `allowedDomains` gérés et les règles d'autorisation `WebFetch(domain:...)` ; bloquer les autres domaines sans demander |460| [`sandbox.network.allowManagedDomainsOnly`](/docs/fr/settings-reference#sandbox-network-allowmanageddomainsonly) | Honorer uniquement les `allowedDomains` gérés et les règles d'autorisation `WebFetch(domain:...)` ; bloquer les autres domaines sans demander |

426| [`strictKnownMarketplaces`](/docs/fr/settings-reference#strictknownmarketplaces) | Contrôle quelles sources de place de marché de plugin les utilisateurs peuvent ajouter et installer des plugins. Consultez [restrictions de place de marché gérée](/docs/fr/plugins/org#restrict-what-users-can-install) |461| [`strictKnownMarketplaces`](/docs/fr/settings-reference#strictknownmarketplaces) | Contrôle quelles sources de place de marché de plugin les utilisateurs peuvent ajouter et installer des plugins. Consultez [restrictions de place de marché gérée](/docs/fr/plugins/org#restrict-what-users-can-install) |

427| [`strictPluginOnlyCustomization`](/docs/fr/settings-reference#strictpluginonlycustomization) | Bloquer les skills, agents, hooks, et serveurs MCP des sources utilisateur et projet ; `true` verrouille les quatre, un tableau nomme lesquels |462| [`strictPluginOnlyCustomization`](/docs/fr/settings-reference#strictpluginonlycustomization) | Bloquer les skills, agents, hooks, et serveurs MCP des sources utilisateur et projet ; `true` verrouille les quatre, un tableau nomme lesquels |

428| [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings) | Quand défini dans le registre HKLM ou un fichier sous `C:\Program Files\ClaudeCode`, faire que WSL lise la chaîne de politique Windows, et lire `/etc/claude-code` uniquement quand aucun fichier de paramètres gérés ou drop-in sous ce répertoire ne livre une [clé de politique](#how-claude-code-combines-managed-sources) ; l'entrée donne l'ordre |463| [`wslInheritsWindowsSettings`](/docs/fr/settings-reference#wslinheritswindowssettings) | Quand défini dans le registre HKLM ou un fichier sous `C:\Program Files\ClaudeCode`, faire que WSL lise la chaîne de politique Windows, et lire `/etc/claude-code` uniquement quand [aucun document d'administrateur Windows n'est présent](#present-admin-documents) ; l'entrée donne l'ordre |

429 464 

430<Note>465<Note>

431 Sur les plans Team et Enterprise, un Owner active ou désactive [Remote Control](/docs/fr/remote-control) et [sessions web](/docs/fr/claude-code-on-the-web) à l'échelle de l'organisation dans [les paramètres d'administration Claude Code](https://claude.ai/admin-settings/claude-code). Remote Control peut en outre être désactivé par appareil avec le paramètre [`disableRemoteControl`](/docs/fr/settings-reference#disableremotecontrol). Les sessions web n'ont pas de clé de paramètres gérés par appareil.466 Sur les plans Team et Enterprise, un Owner active ou désactive [Remote Control](/docs/fr/remote-control) et [sessions web](/docs/fr/claude-code-on-the-web) à l'échelle de l'organisation dans [les paramètres d'administration Claude Code](https://claude.ai/admin-settings/claude-code). Remote Control peut en outre être désactivé par appareil avec le paramètre [`disableRemoteControl`](/docs/fr/settings-reference#disableremotecontrol). Les sessions web n'ont pas de clé de paramètres gérés par appareil.


449 484 

450Claude Code applique une valeur de `1` sans afficher à l'utilisateur la [boîte de dialogue d'approbation](/docs/fr/server-managed-settings#environment-variables-and-the-approval-dialog).485Claude Code applique une valeur de `1` sans afficher à l'utilisateur la [boîte de dialogue d'approbation](/docs/fr/server-managed-settings#environment-variables-and-the-approval-dialog).

451 486 

452Si vous désactivez la télémétrie, Claude Code arrête d'envoyer les données d'utilisation qui alimentent le [tableau de bord d'analyse](/docs/fr/analytics) de votre organisation pour les développeurs que la politique atteint. La variable désactive également la récupération des drapeaux de fonctionnalité, ce qui rend Remote Control, le mode auto par défaut, et les autres [fonctionnalités qui nécessitent la récupération des drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching) indisponibles pour ces développeurs.487Si vous désactivez la télémétrie, Claude Code arrête d'envoyer les données d'utilisation qui alimentent le [tableau de bord d'analyse](/docs/fr/analytics) de votre organisation pour les développeurs que la politique atteint. La variable désactive également la [récupération des drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching) pour ces développeurs. Pour Remote Control, consultez les [exigences de Remote Control](/docs/fr/remote-control#requirements).

453 488 

454[Où et quand une politique s'applique](#where-and-when-a-policy-applies) dit quel mécanisme de livraison atteint chaque surface, et [Disponibilité de la plateforme](/docs/fr/server-managed-settings#platform-availability) dit quelles sessions ignorent la récupération des paramètres gérés par le serveur.489[Où et quand une politique s'applique](#where-and-when-a-policy-applies) dit quel mécanisme de livraison atteint chaque surface, et [Disponibilité de la plateforme](/docs/fr/server-managed-settings#platform-availability) dit quelles sessions ignorent la récupération des paramètres gérés par le serveur.

455 490 

mcp.md +28 −11

Details

92 92 

93Une entrée JSON qui a une `url` mais pas de `type` est une erreur de configuration, car Claude Code lit une entrée sans `type` comme un serveur stdio. Claude Code ignore ce serveur et signale `MCP server "<name>" has a "url" but no "type"; add "type": "http" (or "sse" / "ws") to this entry`. Avant la v2.1.202, Claude Code signalait cette mauvaise configuration comme `command: expected string, received undefined`.93Une entrée JSON qui a une `url` mais pas de `type` est une erreur de configuration, car Claude Code lit une entrée sans `type` comme un serveur stdio. Claude Code ignore ce serveur et signale `MCP server "<name>" has a "url" but no "type"; add "type": "http" (or "sse" / "ws") to this entry`. Avant la v2.1.202, Claude Code signalait cette mauvaise configuration comme `command: expected string, received undefined`.

94 94 

95Seule une application hôte du SDK, telle qu'une application [Agent SDK](/docs/fr/agent-sdk/mcp) ou l'[application de bureau](/docs/fr/desktop), peut enregistrer un serveur `"type": "sdk"` en processus. Claude Code ignore une entrée `"type": "sdk"` dans `.mcp.json`, `~/.claude.json`, ou les paramètres et signale `Skipped — MCP server "<name>" declares type "sdk", which only an SDK host application can register`.

96 

95Dans les exécutions `--output-format stream-json`, Claude Code signale également une entrée `--mcp-config` ignorée dans le champ [`mcp_server_errors`](/docs/fr/headless#stream-responses) de l'événement `system/init`, afin que les scripts puissent détecter que le serveur n'a jamais été chargé. Cela nécessite Claude Code v2.1.219 ou ultérieur.97Dans les exécutions `--output-format stream-json`, Claude Code signale également une entrée `--mcp-config` ignorée dans le champ [`mcp_server_errors`](/docs/fr/headless#stream-responses) de l'événement `system/init`, afin que les scripts puissent détecter que le serveur n'a jamais été chargé. Cela nécessite Claude Code v2.1.219 ou ultérieur.

96 98 

97<h3 id="option-2-add-a-remote-sse-server">99<h3 id="option-2-add-a-remote-sse-server">


179* **Une commande de lancement** telle que `npx -y @example/mcp-server` : le serveur s'exécute sur votre machine.181* **Une commande de lancement** telle que `npx -y @example/mcp-server` : le serveur s'exécute sur votre machine.

180* **Un bloc JSON `mcpServers`** : configuration écrite pour le fichier de paramètres d'un autre client.182* **Un bloc JSON `mcpServers`** : configuration écrite pour le fichier de paramètres d'un autre client.

181 183 

182Chacun est l'une des entrées que les quatre options dans [Installation des serveurs MCP](#installing-mcp-servers) prennent. Trouvez la forme que vous avez ci-dessous pour la transformer en commande que Claude Code accepte. Chaque commande écrit dans la [portée locale](#local-scope) sauf si vous ajoutez `--scope project` ou `--scope user`.184Chacun est l'une des entrées que les quatre options dans [Installation des serveurs MCP](#installing-mcp-servers) prennent. Trouvez la forme que vous avez ci-dessous pour la transformer en commande que Claude Code accepte. Chaque commande écrit dans la [portée locale](#mcp-installation-scopes) sauf si vous ajoutez `--scope project` ou `--scope user`.

183 185 

184<h4 id="from-a-url">186<h4 id="from-a-url">

185 À partir d'une URL187 À partir d'une URL


297 299 

298Le cache de découverte est désactivé par défaut sauf si un déploiement progressif l'a activé pour votre compte. Définissez [`MCP_DISCOVERY_CACHE=1`](/docs/fr/env-vars) pour l'activer, ou `0` pour le garder désactivé même lorsque le déploiement l'a activé. Avant la v2.1.238, le cache était activé par défaut.300Le cache de découverte est désactivé par défaut sauf si un déploiement progressif l'a activé pour votre compte. Définissez [`MCP_DISCOVERY_CACHE=1`](/docs/fr/env-vars) pour l'activer, ou `0` pour le garder désactivé même lorsque le déploiement l'a activé. Avant la v2.1.238, le cache était activé par défaut.

299 301 

300Deux actions dans le menu d'un serveur dans `/mcp` affectent également l'entrée du cache de ce serveur :302Lorsque vous sélectionnez **Disable** ou **Clear authentication** dans le menu d'un serveur dans `/mcp`, Claude Code supprime également l'entrée du cache de ce serveur. **Reconnect** la supprime également sur un serveur connecté ou défaillant ; sur un serveur `cached`, **Reconnect** connecte le serveur maintenant et conserve l'entrée. La prochaine fois que Claude Code se connecte au serveur après suppression de l'entrée, il récupère la liste d'outils du serveur au lieu du cache.

301 

302* **Reconnect** : sur un serveur `cached`, Claude Code le connecte maintenant plutôt que lors de son premier appel d'outil et conserve l'entrée. Sur un serveur connecté ou défaillant, Claude Code le reconnecte et supprime également l'entrée.

303* **Clear authentication** : Claude Code révoque l'authentification du serveur et supprime également l'entrée.

304 

305Après suppression de l'entrée, Claude Code récupère la liste d'outils du serveur à partir du serveur au lieu du cache.

306 303 

307Lorsque le statut d'un serveur est `✘ Failed to connect`, `claude mcp list` ajoute le détail de l'échec à cette ligne de statut, et `claude mcp get <name>` l'affiche sur une ligne `Issue:` : le code de statut HTTP ou le code d'erreur, plus tout texte d'erreur que le serveur a retourné. La vue détaillée du serveur dans `/mcp` inclut le même texte signalé par le serveur dans sa ligne `Issue:`. Claude Code rédige le texte ressemblant à des identifiants de ce détail et n'inclut jamais l'URL du serveur développée, qui peut contenir des secrets. Claude Code n'ajoute aucun détail à un statut `✘ Connection error`, car le texte d'exception qu'il imprimerait là peut intégrer cette URL. Avant la v2.1.219, les deux commandes affichaient uniquement le statut d'échec nu, sans le code de statut ou le texte d'erreur du serveur.304Lorsque le statut d'un serveur est `✘ Failed to connect`, `claude mcp list` ajoute le détail de l'échec à cette ligne de statut, et `claude mcp get <name>` l'affiche sur une ligne `Issue:` : le code de statut HTTP ou le code d'erreur, plus tout texte d'erreur que le serveur a retourné. La vue détaillée du serveur dans `/mcp` inclut le même texte signalé par le serveur dans sa ligne `Issue:`. Claude Code rédige le texte ressemblant à des identifiants de ce détail et n'inclut jamais l'URL du serveur développée, qui peut contenir des secrets. Claude Code n'ajoute aucun détail à un statut `✘ Connection error`, car le texte d'exception qu'il imprimerait là peut intégrer cette URL. Avant la v2.1.219, les deux commandes affichaient uniquement le statut d'échec nu, sans le code de statut ou le texte d'erreur du serveur.

308 305 


671 668 

672Les trois portées correspondent aux doublons par nom. Les plugins et les connecteurs correspondent par point de terminaison, donc celui qui pointe vers la même URL ou commande qu'un serveur ci-dessus est traité comme un doublon.669Les trois portées correspondent aux doublons par nom. Les plugins et les connecteurs correspondent par point de terminaison, donc celui qui pointe vers la même URL ou commande qu'un serveur ci-dessus est traité comme un doublon.

673 670 

671Deux orthographes d'URL comptent comme le même point de terminaison lorsqu'elles diffèrent uniquement par la casse des lettres du schéma ou de l'hôte, le port par défaut du schéma, tel que `:443` sur `https`, ou une barre oblique finale. Un chemin différent, une chaîne de requête, des informations utilisateur ou un port non-défaut font deux serveurs.

672 

674Un serveur que votre organisation fournit via le paramètre géré [`managedMcpServers`](/docs/fr/managed-mcp#provide-servers-through-managed-settings) se classe au-dessus de tous ceux-ci, donc lorsque l'un d'eux le duplique, Claude Code se connecte à la définition de l'organisation. Nécessite Claude Code v2.1.259 ou ultérieur.673Un serveur que votre organisation fournit via le paramètre géré [`managedMcpServers`](/docs/fr/managed-mcp#provide-servers-through-managed-settings) se classe au-dessus de tous ceux-ci, donc lorsque l'un d'eux le duplique, Claude Code se connecte à la définition de l'organisation. Nécessite Claude Code v2.1.259 ou ultérieur.

675 674 

676Si vous ouvrez une session locale dans l'[onglet Code de l'application de bureau](/docs/fr/desktop#mcp-servers-from-the-claude-desktop-chat-app) avec le même nom de serveur stdio au niveau supérieur de `~/.claude.json` (portée utilisateur) et dans `.mcp.json`, l'onglet Code utilise la définition `~/.claude.json`.675Si vous ouvrez une session locale dans l'[onglet Code de l'application de bureau](/docs/fr/desktop#mcp-servers-from-the-claude-desktop-chat-app) avec le même nom de serveur stdio au niveau supérieur de `~/.claude.json` (portée utilisateur) et dans `.mcp.json`, l'onglet Code utilise la définition `~/.claude.json`.


915 <Step title="Enregistrer une application OAuth auprès du serveur">914 <Step title="Enregistrer une application OAuth auprès du serveur">

916 Créez une application via le portail des développeurs du serveur et notez votre ID client et votre secret client.915 Créez une application via le portail des développeurs du serveur et notez votre ID client et votre secret client.

917 916 

918 De nombreux serveurs nécessitent également un URI de redirection. Si c'est le cas, choisissez un port et enregistrez un URI de redirection au format `http://localhost:PORT/callback`. Utilisez ce même port avec `--callback-port` à l'étape suivante.917 Si le formulaire d'enregistrement demande un URI de redirection, choisissez un port disponible et entrez `http://localhost:PORT/callback` avec ce port. Vous utiliserez le même port à l'étape suivante.

919 918 

920 Dans la v2.1.229, Claude Code envoyait `http://127.0.0.1:PORT/callback` à la place, et les serveurs qui correspondent exactement à l'URI de redirection enregistré rejetaient la connexion avec une erreur de non-concordance d'URI de redirection. Claude Code v2.1.231 a restauré la forme `localhost`. Pour récupérer sur la v2.1.229, mettez à niveau Claude Code, ou ajoutez temporairement la forme `http://127.0.0.1:PORT/callback` aux URI de redirection enregistrés du serveur.919 Dans la v2.1.229, Claude Code envoyait `http://127.0.0.1:PORT/callback` à la place, et les serveurs qui correspondent exactement à l'URI de redirection enregistré rejetaient la connexion avec une erreur de non-concordance d'URI de redirection. Claude Code v2.1.231 a restauré la forme `localhost`. Pour récupérer sur la v2.1.229, mettez à niveau Claude Code, ou ajoutez temporairement la forme `http://127.0.0.1:PORT/callback` aux URI de redirection enregistrés du serveur.

921 </Step>920 </Step>

922 921 

923 <Step title="Ajouter le serveur avec vos identifiants">922 <Step title="Ajouter le serveur avec vos identifiants">

924 Choisissez l'une des méthodes suivantes. Le port utilisé pour `--callback-port` peut être n'importe quel port disponible. Il doit correspondre à l'URI de redirection que vous avez enregistré à l'étape précédente.923 Les onglets couvrent les deux commandes : `claude mcp add` prend votre ID client et votre port de rappel comme drapeaux, et `claude mcp add-json` les prend dans un objet `oauth`. Si vous avez enregistré un URI de redirection, définissez le port de rappel sur le port dans cet URI.

925 924 

926 <Tabs>925 <Tabs>

927 <Tab title="claude mcp add">926 <Tab title="claude mcp add">


945 </Tab>944 </Tab>

946 945 

947 <Tab title="claude mcp add-json (port de rappel uniquement)">946 <Tab title="claude mcp add-json (port de rappel uniquement)">

948 Utilisez `--callback-port` sans ID client pour fixer le port tout en utilisant l'enregistrement dynamique du client :947 Pour fixer uniquement le port de rappel et laisser Claude Code enregistrer le client automatiquement, définissez `callbackPort` seul :

949 948 

950 ```bash theme={null}949 ```bash theme={null}

951 claude mcp add-json my-server \950 claude mcp add-json my-server \


1235 </Step>1234 </Step>

1236</Steps>1235</Steps>

1237 1236 

1237Anthropic fournit également certains connecteurs lui-même, sans que vous ou un administrateur les ajoute. Sur les comptes où [Claude Docs](/docs/fr/artifacts#write-a-document-with-claude-docs) est disponible, `/mcp` liste `claude.ai Claude Docs` sans configuration, et Claude l'utilise lorsque vous demandez un document destiné à d'autres personnes. Pour le désactiver, ajoutez une entrée `serverName` de `"claude.ai Claude Docs"` à `deniedMcpServers` ou utilisez le bouton bascule `/mcp`, tous deux décrits dans [Désactiver les connecteurs claude.ai](#disable-claude-ai-connectors).

1238 

1238Claude Code marque un connecteur comme `managed` dans `/mcp` et dans le gestionnaire [`/plugin`](/docs/fr/plugins/install) lorsque votre organisation gère son authentification dans claude.ai. Le statut managed ne change pas la façon dont Claude Code se connecte au connecteur ou applique les [contrôles d'outils](#organization-controls-on-connector-tools) de votre organisation.1239Claude Code marque un connecteur comme `managed` dans `/mcp` et dans le gestionnaire [`/plugin`](/docs/fr/plugins/install) lorsque votre organisation gère son authentification dans claude.ai. Le statut managed ne change pas la façon dont Claude Code se connecte au connecteur ou applique les [contrôles d'outils](#organization-controls-on-connector-tools) de votre organisation.

1239 1240 

1240Les connecteurs auxquels vous ne vous êtes jamais connecté sont réduits derrière une ligne `Show unused connectors` à la fin de la section claude.ai, de sorte qu'une liste fournie par l'organisation ne remplit pas le panneau. Sélectionnez la ligne pour les développer. Un connecteur auquel vous vous êtes connecté avant reste visible même s'il a actuellement besoin d'une nouvelle authentification.1241Les connecteurs auxquels vous ne vous êtes jamais connecté sont réduits derrière une ligne `Show unused connectors` à la fin de la section claude.ai, de sorte qu'une liste fournie par l'organisation ne remplit pas le panneau. Sélectionnez la ligne pour les développer. Un connecteur auquel vous vous êtes connecté avant reste visible même s'il a actuellement besoin d'une nouvelle authentification.


1416 Si vous rencontrez fréquemment des avertissements de sortie avec des serveurs MCP spécifiques que vous ne contrôlez pas, envisagez d'augmenter la limite `MAX_MCP_OUTPUT_TOKENS`. Vous pouvez également demander à l'auteur du serveur d'ajouter l'annotation `anthropic/maxResultSizeChars` ou de paginer ses réponses. L'annotation n'a aucun effet sur les outils qui retournent du contenu d'image ; pour ceux-ci, augmenter `MAX_MCP_OUTPUT_TOKENS` est la seule option.1417 Si vous rencontrez fréquemment des avertissements de sortie avec des serveurs MCP spécifiques que vous ne contrôlez pas, envisagez d'augmenter la limite `MAX_MCP_OUTPUT_TOKENS`. Vous pouvez également demander à l'auteur du serveur d'ajouter l'annotation `anthropic/maxResultSizeChars` ou de paginer ses réponses. L'annotation n'a aucun effet sur les outils qui retournent du contenu d'image ; pour ceux-ci, augmenter `MAX_MCP_OUTPUT_TOKENS` est la seule option.

1417</Warning>1418</Warning>

1418 1419 

1420<h3 id="images-in-tool-results">

1421 Images dans les résultats des outils

1422</h3>

1423 

1424Lorsqu'un outil MCP retourne une image PNG, JPEG, GIF ou WebP, Claude voit l'image en ligne dans la conversation. La copie en ligne peut être réduite ou compressée pour s'adapter aux limites de taille d'image du modèle. Claude Code enregistre également les octets originaux dans un fichier du répertoire `tool-results` de la session sous [`~/.claude/projects/`](/docs/fr/claude-directory#cleaned-up-automatically) et donne le chemin à Claude. Claude peut ensuite recadrer, convertir ou réutiliser le fichier en pleine résolution avec des outils tels que Bash.

1425 

1426Si vous désactivez la persistance de session avec [`--no-session-persistence`](/docs/fr/cli-reference#cli-flags) ou [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/docs/fr/env-vars), Claude Code n'écrit aucun fichier image et Claude reçoit uniquement la copie en ligne.

1427 

1428L'enregistrement des résultats d'image MCP dans un fichier nécessite Claude Code v2.1.283 ou version ultérieure.

1429 

1419<h2 id="tool-input-schemas-with-a-root-level-combinator">1430<h2 id="tool-input-schemas-with-a-root-level-combinator">

1420 Schémas d'entrée d'outil avec un combinateur au niveau racine1431 Schémas d'entrée d'outil avec un combinateur au niveau racine

1421</h2>1432</h2>


1487Les serveurs peuvent demander une entrée de deux façons :1498Les serveurs peuvent demander une entrée de deux façons :

1488 1499 

1489* **Mode formulaire** : Claude Code affiche un dialogue avec des champs de formulaire définis par le serveur (par exemple, une invite de nom d'utilisateur et de mot de passe). Remplissez les champs et soumettez.1500* **Mode formulaire** : Claude Code affiche un dialogue avec des champs de formulaire définis par le serveur (par exemple, une invite de nom d'utilisateur et de mot de passe). Remplissez les champs et soumettez.

1490* **Mode URL** : Claude Code ouvre une URL de navigateur pour l'authentification ou l'approbation. Complétez le flux dans le navigateur, puis confirmez dans l'interface de ligne de commande.1501* **Mode URL** : Claude Code vous demande si vous souhaitez ouvrir un lien dans votre navigateur et l'ouvre lorsque vous acceptez. Les serveurs utilisent ce mode pour un flux qui se termine en dehors du terminal, comme la connexion.

1491 1502 

1492En mode URL, Claude Code transmet l'URL en tant qu'argument de ligne de commande au gestionnaire d'URL de votre système, et limite la longueur de cet argument. Lorsque l'URL, une fois échappée pour la ligne de commande, dépasse cette limite, vous ne pouvez que refuser la demande. Chaque caractère qui doit être échappé, tel que `%` ou `&`, compte quatre fois vers la limite : son propre caractère plus trois caractères d'échappement. Une URL sans aucun d'entre eux atteint la limite à environ 8 000 caractères. Une URL construite largement à partir d'échappements de pourcentage, où chaque tiers caractère est un `%`, l'atteint à environ 4 000.1503En mode URL, Claude Code transmet l'URL en tant qu'argument de ligne de commande au gestionnaire d'URL de votre système, et limite la longueur de cet argument. Lorsque l'URL, une fois échappée pour la ligne de commande, dépasse cette limite, vous ne pouvez que refuser la demande. Chaque caractère qui doit être échappé, tel que `%` ou `&`, compte quatre fois vers la limite : son propre caractère plus trois caractères d'échappement. Une URL sans aucun d'entre eux atteint la limite à environ 8 000 caractères. Une URL construite largement à partir d'échappements de pourcentage, où chaque tiers caractère est un `%`, l'atteint à environ 4 000.

1493 1504 


1495 1506 

1496Si vous créez un serveur MCP qui utilise l'élicitation, consultez la [spécification d'élicitation MCP](https://modelcontextprotocol.io/docs/learn/client-concepts#elicitation) pour les détails du protocole et les exemples de schéma.1507Si vous créez un serveur MCP qui utilise l'élicitation, consultez la [spécification d'élicitation MCP](https://modelcontextprotocol.io/docs/learn/client-concepts#elicitation) pour les détails du protocole et les exemples de schéma.

1497 1508 

1509Sur les connexions qui utilisent la [révision de protocole 2026-07-28](#mcp-client-runtimes), Claude Code déclare `elicitation: {form: {}, url: {}}` dans ses capacités client, de sorte qu'un serveur là-bas peut demander l'un ou l'autre mode via la demande d'élicitation standard du protocole.

1510 

1498<h2 id="use-mcp-resources">1511<h2 id="use-mcp-resources">

1499 Utiliser les ressources MCP1512 Utiliser les ressources MCP

1500</h2>1513</h2>


1540 * Les ressources peuvent contenir n'importe quel type de contenu fourni par le serveur MCP (texte, JSON, données structurées, etc.)1553 * Les ressources peuvent contenir n'importe quel type de contenu fourni par le serveur MCP (texte, JSON, données structurées, etc.)

1541</Tip>1554</Tip>

1542 1555 

1556Les ressources de l'interface utilisateur des applications MCP sont des entrées avec un URI `ui://` ou le type de média `text/html;profile=mcp-app` : des pages destinées à être rendues par une application hôte plutôt que du contenu à lire par Claude. Elles n'apparaissent pas dans les suggestions `@` ou dans les résultats de l'outil de liste des ressources, et un serveur qui n'offre que des ressources d'interface utilisateur affiche une liste de ressources vide. La lecture d'une ressource d'interface utilisateur par son URI fonctionne toujours.

1557 

1543<h2 id="scale-with-mcp-tool-search">1558<h2 id="scale-with-mcp-tool-search">

1544 Mettre à l'échelle avec la recherche d'outils MCP1559 Mettre à l'échelle avec la recherche d'outils MCP

1545</h2>1560</h2>


1643 1658 

1644Les serveurs MCP peuvent exposer des invites qui deviennent disponibles en tant que commandes dans Claude Code.1659Les serveurs MCP peuvent exposer des invites qui deviennent disponibles en tant que commandes dans Claude Code.

1645 1660 

1661Les invites d'un serveur nommé `anthropic-skills` n'apparaissent pas, car Claude Code [réserve ce nom](/docs/fr/skills#names-reserved-for-synced-skills) pour les skills synchronisées depuis claude.ai. Les outils du serveur fonctionnent toujours. Renommez le serveur dans votre configuration MCP pour lister ses invites.

1662 

1646<h3 id="execute-mcp-prompts">1663<h3 id="execute-mcp-prompts">

1647 Exécuter les invites MCP1664 Exécuter les invites MCP

1648</h3>1665</h3>

memory.md +9 −0

Details

103 103 

104**Cohérence** : si deux règles se contredisent, Claude peut en choisir une arbitrairement. Examinez régulièrement vos fichiers CLAUDE.md, les fichiers CLAUDE.md imbriqués dans les sous-répertoires et [`.claude/rules/`](#organize-rules-with-claude/rules/) pour supprimer les instructions obsolètes ou conflictuelles. Dans les monorepos, utilisez [`claudeMdExcludes`](#exclude-specific-claude-md-files) pour ignorer les fichiers CLAUDE.md d'autres équipes qui ne sont pas pertinents pour votre travail.104**Cohérence** : si deux règles se contredisent, Claude peut en choisir une arbitrairement. Examinez régulièrement vos fichiers CLAUDE.md, les fichiers CLAUDE.md imbriqués dans les sous-répertoires et [`.claude/rules/`](#organize-rules-with-claude/rules/) pour supprimer les instructions obsolètes ou conflictuelles. Dans les monorepos, utilisez [`claudeMdExcludes`](#exclude-specific-claude-md-files) pour ignorer les fichiers CLAUDE.md d'autres équipes qui ne sont pas pertinents pour votre travail.

105 105 

106Pour que Claude vérifie ces fichiers pour les instructions obsolètes ou conflictuelles, exécutez `/doctor prompt-audit` dans une session. Claude lit vos fichiers CLAUDE.md, CLAUDE.local.md et AGENTS.md, plus les règles, compétences, commandes, sous-agents et styles de sortie sous `.claude/` et `~/.claude/`. Il recherche des problèmes tels que les instructions écrites pour les anciens modèles, les références à des fichiers ou des commandes qui n'existent pas, et les fichiers qui se contredisent. Vous obtenez un rapport des résultats et un ensemble de modifications proposées, et rien dans vos fichiers ne change jusqu'à ce que vous demandiez à Claude de les appliquer.

107 

108Pour auditer un fichier ou un répertoire à la place, passez son chemin, par exemple `/doctor prompt-audit .claude/skills/deploy`. L'audit s'exécute via la compétence `/claude-api` groupée, de sorte qu'elle n'est pas disponible quand cette compétence est désactivée dans [`skillOverrides`](/docs/fr/skills#override-skill-visibility-from-settings) ou avec [`disableBundledSkills`](/docs/fr/settings-reference#disablebundledskills). `/doctor prompt-audit` nécessite Claude Code v2.1.283 ou ultérieur.

109 

106<h3 id="import-additional-files">110<h3 id="import-additional-files">

107 Importer des fichiers supplémentaires111 Importer des fichiers supplémentaires

108</h3>112</h3>


273ln -s ~/company-standards/security.md .claude/rules/security.md277ln -s ~/company-standards/security.md .claude/rules/security.md

274```278```

275 279 

280Si vous pointez un symlink `.claude/rules/` ou `CLAUDE.md` vers un chemin réseau tel que le partage UNC `\\server\share` ou un chemin sous `/net` ou `/Network`, les instructions liées ne se chargent pas. Claude Code ne suit pas le lien, car la recherche d'un tel chemin peut contacter l'hôte qu'il nomme. Les chemins `\\wsl$` ne comptent pas comme des chemins réseau.

281 

276<h4 id="user-level-rules">282<h4 id="user-level-rules">

277 Règles au niveau utilisateur283 Règles au niveau utilisateur

278</h4>284</h4>


620* Vérifiez que le CLAUDE.md pertinent se trouve dans un emplacement qui se charge pour votre session (consultez [Choisir où placer les fichiers CLAUDE.md](#choose-where-to-put-claude-md-files)).626* Vérifiez que le CLAUDE.md pertinent se trouve dans un emplacement qui se charge pour votre session (consultez [Choisir où placer les fichiers CLAUDE.md](#choose-where-to-put-claude-md-files)).

621* Rendez les instructions plus spécifiques. « Utiliser l'indentation à 2 espaces » fonctionne mieux que « formater le code correctement ».627* Rendez les instructions plus spécifiques. « Utiliser l'indentation à 2 espaces » fonctionne mieux que « formater le code correctement ».

622* Recherchez les instructions conflictuelles dans les fichiers CLAUDE.md. Si deux fichiers donnent des conseils différents pour le même comportement, Claude peut en choisir un arbitrairement.628* Recherchez les instructions conflictuelles dans les fichiers CLAUDE.md. Si deux fichiers donnent des conseils différents pour le même comportement, Claude peut en choisir un arbitrairement.

629* Vérifiez si votre instruction entre en concurrence avec les conseils que Claude Code ajoute de son côté. Si votre CLAUDE.md définit des règles de commit ou de demande de tirage, désactivez les règles intégrées avec [`includeGitInstructions`](/docs/fr/settings-reference#includegitinstructions) et définissez le texte d'attribution avec [`attribution`](/docs/fr/settings-reference#attribution).

623 630 

624Si l'instruction est quelque chose qui doit s'exécuter à un moment spécifique, comme avant chaque commit ou après chaque modification de fichier, écrivez-la plutôt comme un [hook](/docs/fr/hooks-guide). Les hooks s'exécutent en tant que commandes shell à des événements de cycle de vie fixes et s'appliquent indépendamment de ce que Claude décide de faire.631Si l'instruction est quelque chose qui doit s'exécuter à un moment spécifique, comme avant chaque commit ou après chaque modification de fichier, écrivez-la plutôt comme un [hook](/docs/fr/hooks-guide). Les hooks s'exécutent en tant que commandes shell à des événements de cycle de vie fixes et s'appliquent indépendamment de ce que Claude décide de faire.

625 632 


657 664 

658Les fichiers de plus de 200 lignes consomment plus de contexte et peuvent réduire l'adhérence. Claude Code ignore un fichier de plus de 4 Mio. Utilisez les [règles spécifiques au chemin](#path-specific-rules) pour charger les instructions uniquement lorsque Claude travaille avec des fichiers correspondants, ou réduisez le contenu qui n'est pas nécessaire dans chaque session. La division en [imports `@path`](#import-additional-files) aide à l'organisation mais ne réduit pas le contexte, puisque les fichiers importés se chargent au lancement.665Les fichiers de plus de 200 lignes consomment plus de contexte et peuvent réduire l'adhérence. Claude Code ignore un fichier de plus de 4 Mio. Utilisez les [règles spécifiques au chemin](#path-specific-rules) pour charger les instructions uniquement lorsque Claude travaille avec des fichiers correspondants, ou réduisez le contenu qui n'est pas nécessaire dans chaque session. La division en [imports `@path`](#import-additional-files) aide à l'organisation mais ne réduit pas le contexte, puisque les fichiers importés se chargent au lancement.

659 666 

667Si l'un de vos fichiers d'instructions dépasse la longueur recommandée, vous voyez un avertissement au démarrage et lorsque vous exécutez `/status`. Vous voyez également un avertissement lorsque les fichiers qui sont chacun dans cette longueur s'ajoutent au-delà d'une limite combinée au démarrage de la session. Chaque CLAUDE.md, fichier de règles et import `@path` compte comme un fichier séparé.

668 

660La vérification [`/doctor`](/docs/fr/commands#all-commands) propose des réductions pour un CLAUDE.md enregistré : elle supprime le contenu que Claude peut dériver de la base de code, comme les dispositions de répertoires, les listes de dépendances et les aperçus d'architecture, et conserve les pièges, la justification et les conventions qui diffèrent des paramètres par défaut des outils. La vérification de réduction nécessite Claude Code v2.1.206 ou version ultérieure.669La vérification [`/doctor`](/docs/fr/commands#all-commands) propose des réductions pour un CLAUDE.md enregistré : elle supprime le contenu que Claude peut dériver de la base de code, comme les dispositions de répertoires, les listes de dépendances et les aperçus d'architecture, et conserve les pièges, la justification et les conventions qui diffèrent des paramètres par défaut des outils. La vérification de réduction nécessite Claude Code v2.1.206 ou version ultérieure.

661 670 

662<h3 id="instructions-seem-lost-after-/compact">671<h3 id="instructions-seem-lost-after-/compact">

mobile.md +1 −1

Details

43| Fonctionnalité | Ce à quoi vous vous connectez | Quand l'utiliser |43| Fonctionnalité | Ce à quoi vous vous connectez | Quand l'utiliser |

44| :- | :- | :- |44| :- | :- | :- |

45| [Cloud sessions](/docs/fr/claude-code-on-the-web) | Une session sur l'infrastructure cloud, gérée par Anthropic par défaut | Votre référentiel est sur GitHub et la tâche doit continuer à s'exécuter après avoir rangé votre téléphone. Consultez le [guide de démarrage rapide cloud](/docs/fr/web-quickstart) pour configurer. |45| [Cloud sessions](/docs/fr/claude-code-on-the-web) | Une session sur l'infrastructure cloud, gérée par Anthropic par défaut | Votre référentiel est sur GitHub et la tâche doit continuer à s'exécuter après avoir rangé votre téléphone. Consultez le [guide de démarrage rapide cloud](/docs/fr/web-quickstart) pour configurer. |

46| [Projects](/docs/fr/claude-projects) | Une conversation où Claude coordonne des sessions cloud parallèles en tant que threads | Vous avez un flux de travail connexe plutôt qu'une seule tâche et vous voulez voir quels threads se sont terminés ou ont besoin de vous. |46| [Projects](/docs/fr/claude-projects) | Une conversation où Claude coordonne des threads de travail parallèles et rend compte | Vous avez un flux de travail connexe plutôt qu'une seule tâche et vous voulez voir quels threads se sont terminés ou ont besoin de vous. |

47| [Remote Control](/docs/fr/remote-control) | Une session Claude Code s'exécutant sur votre ordinateur | Le travail a besoin de votre système de fichiers local, d'outils ou de serveurs MCP. |47| [Remote Control](/docs/fr/remote-control) | Une session Claude Code s'exécutant sur votre ordinateur | Le travail a besoin de votre système de fichiers local, d'outils ou de serveurs MCP. |

48| [Dispatch](/docs/fr/desktop#sessions-from-dispatch) | L'application Desktop sur votre ordinateur | Vous voulez envoyer une tâche et laisser Dispatch décider comment l'exécuter. Nécessite un plan Pro ou Max. |48| [Dispatch](/docs/fr/desktop#sessions-from-dispatch) | L'application Desktop sur votre ordinateur | Vous voulez envoyer une tâche et laisser Dispatch décider comment l'exécuter. Nécessite un plan Pro ou Max. |

49 49 

model-config.md +151 −80

Details

19 * Microsoft Foundry : un nom de déploiement19 * Microsoft Foundry : un nom de déploiement

20 * Agent Platform de Google Cloud : un nom de version20 * Agent Platform de Google Cloud : un nom de version

21 21 

22Pour obtenir des conseils sur le modèle et le niveau d'effort qui conviennent à différents types de travail, consultez [Choosing a Claude model and effort level in Claude Code](https://claude.com/blog/claude-model-and-effort-level-in-claude-code) sur le blog.22Pour obtenir des conseils sur le modèle et le niveau d'effort qui conviennent à différents types de travail, consultez [Choisir un modèle Claude et un niveau d'effort dans Claude Code](https://claude.com/blog/claude-model-and-effort-level-in-claude-code) sur le blog.

23 23 

24<Note>24<Note>

25 `ANTHROPIC_BASE_URL` change l'endroit où les demandes sont envoyées, non le modèle qui y répond. Pour acheminer Claude via une passerelle LLM, consultez [LLM gateways](/docs/fr/llm-gateway).25 `ANTHROPIC_BASE_URL` change l'endroit où les demandes sont envoyées, non le modèle qui y répond. Pour acheminer Claude via une passerelle LLM, consultez [Passerelles LLM](/docs/fr/llm-gateway).

26</Note>26</Note>

27 27 

28<h3 id="model-aliases">28<h3 id="model-aliases">


39| **`sonnet`** | Utilise le dernier modèle Sonnet pour les tâches de codage quotidiennes |39| **`sonnet`** | Utilise le dernier modèle Sonnet pour les tâches de codage quotidiennes |

40| **`opus`** | Utilise le dernier modèle Opus pour les tâches de raisonnement complexe |40| **`opus`** | Utilise le dernier modèle Opus pour les tâches de raisonnement complexe |

41| **`haiku`** | Utilise le modèle Haiku rapide et efficace pour les tâches simples |41| **`haiku`** | Utilise le modèle Haiku rapide et efficace pour les tâches simples |

42| **`sonnet[1m]`** | Utilise Sonnet avec une [fenêtre de contexte de 1 million de jetons](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) pour les longues sessions. Aucun effet lorsque `sonnet` se résout déjà en Sonnet 5 avec sa fenêtre native de 1 M ; derrière une [passerelle LLM](/docs/fr/llm-gateway), sélectionne la fenêtre de 1 M pour Sonnet 5 |42| **`sonnet[1m]`** | Utilise Sonnet avec une [fenêtre de contexte de 1 million de jetons](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) pour les longues sessions. Aucun effet lorsque `sonnet` se résout déjà à Sonnet 5.5 ou Sonnet 5 avec leur fenêtre native de 1M ; derrière une [passerelle LLM](/docs/fr/llm-gateway), sélectionne la fenêtre de 1M pour ce modèle |

43| **`opus[1m]`** | Utilise Opus avec une [fenêtre de contexte de 1 million de jetons](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) pour les longues sessions |43| **`opus[1m]`** | Utilise Opus avec une [fenêtre de contexte de 1 million de jetons](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) pour les longues sessions |

44| **`opusplan`** | Mode spécial qui utilise `opus` pendant le mode plan, puis bascule vers `sonnet` pour l'exécution |44| **`opusplan`** | Mode spécial qui utilise `opus` pendant le mode plan, puis bascule vers `sonnet` pour l'exécution |

45 45 

46La version vers laquelle les alias `opus` et `sonnet` se résolvent dépend du fournisseur :46La version à laquelle les alias `opus` et `sonnet` se résolvent dépend du fournisseur :

47 47 

48| Fournisseur | `opus` | `sonnet` |48| Fournisseur | `opus` | `sonnet` |

49| :- | :- | :- |49| :- | :- | :- |

50| API Anthropic | Opus 5.5 | Sonnet 5 |50| API Anthropic | Opus 5.5 | Sonnet 5.5 |

51| [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) | Opus 5.5 | Sonnet 4.6 |51| [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) | Opus 5.5 | Sonnet 4.6 |

52| Amazon Bedrock, Agent Platform de Google Cloud | Opus 5.5 | Sonnet 4.5 |52| Amazon Bedrock, Agent Platform de Google Cloud | Opus 5.5 | Sonnet 4.5 |

53| Microsoft Foundry | Opus 4.6 | Sonnet 4.5 |53| Microsoft Foundry | Opus 4.6 | Sonnet 4.5 |

54 54 

55<span id="fable-alias-resolution" />55<span id="fable-alias-resolution" />

56 56 

57Sauf si vous définissez `ANTHROPIC_DEFAULT_FABLE_MODEL`, l'alias `fable` se résout en Fable 5.1, sauf dans les sessions de [passerelle des applications Claude](/docs/fr/claude-apps-gateway), où `fable` et `best` se résolvent en Fable 5. Avant v2.1.257, `fable` se résolvait en Fable 5 sur chaque fournisseur.57Sauf si vous définissez `ANTHROPIC_DEFAULT_FABLE_MODEL`, l'alias `fable` se résout à Fable 5.1, sauf dans les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), où `fable` et `best` se résolvent à Fable 5.

58 58 

59Une passerelle qui n'est pas configurée pour servir `claude-fable-5-1` rejette les demandes pour ce modèle. Pour utiliser Fable 5.1 via une passerelle qui le sert, sélectionnez-le avec `/model claude-fable-5-1`.59Une passerelle qui n'est pas configurée pour servir `claude-fable-5-1` rejette les demandes pour ce modèle. Pour utiliser Fable 5.1 via une passerelle qui le sert, sélectionnez-le avec `/model claude-fable-5-1`.

60 60 

61Lorsqu'un alias se résout en un modèle plus ancien, les modèles plus récents sont disponibles en sélectionnant explicitement le nom de modèle complet ou en définissant `ANTHROPIC_DEFAULT_OPUS_MODEL` ou `ANTHROPIC_DEFAULT_SONNET_MODEL`.61Lorsqu'un alias se résout à un modèle plus ancien, les modèles plus récents sont disponibles en sélectionnant explicitement le nom de modèle complet ou en définissant `ANTHROPIC_DEFAULT_OPUS_MODEL` ou `ANTHROPIC_DEFAULT_SONNET_MODEL`.

62 62 

63Avant v2.1.280, `opus` se résolvait en Opus 5 sur l'API Anthropic, Claude Platform on AWS, Amazon Bedrock et Agent Platform de Google Cloud à partir de v2.1.219. Avant v2.1.219, `opus` se résolvait en Opus 4.8 sur l'API Anthropic à partir de v2.1.154, et sur Claude Platform on AWS, Amazon Bedrock et Agent Platform de Google Cloud à partir de v2.1.207. Avant v2.1.207, `opus` se résolvait en Opus 4.7 sur Claude Platform on AWS et en Opus 4.6 sur Amazon Bedrock et Agent Platform de Google Cloud.63Les versions antérieures résolvent ces alias à des modèles plus anciens. Pour la version à laquelle chaque alias a changé, consultez [Historique des versions](#version-history).

64 64 

65Les alias pointent vers la version recommandée pour votre fournisseur et se mettent à jour au fil du temps. Pour épingler une version spécifique, utilisez le nom de modèle complet, par exemple `claude-opus-5-5`, ou définissez la variable d'environnement correspondante comme `ANTHROPIC_DEFAULT_OPUS_MODEL`.65Les alias pointent vers la version recommandée pour votre fournisseur et se mettent à jour au fil du temps. Pour épingler une version spécifique, utilisez le nom de modèle complet, par exemple `claude-opus-5-5`, ou définissez la variable d'environnement correspondante comme `ANTHROPIC_DEFAULT_OPUS_MODEL`.

66 66 

67<Note>67<Note>

68 Opus 5.5 nécessite Claude Code v2.1.280 ou version ultérieure. Opus 5 nécessite v2.1.219 ou version ultérieure. Sonnet 5 nécessite v2.1.197 ou version ultérieure. Exécutez `claude update` pour mettre à jour.68 Sonnet 5.5 nécessite Claude Code v2.1.284 ou ultérieur, et Opus 5.5 nécessite v2.1.280 ou ultérieur. Exécutez `claude update` pour mettre à jour.

69</Note>69</Note>

70 70 

71<h3 id="work-with-fable">71<h3 id="work-with-fable">


74 74 

75[Claude Fable 5.1](https://platform.claude.com/docs/en/about-claude/models/overview) et Claude Fable 5 sont les modèles les plus puissants de Claude Code, adaptés aux tâches plus importantes qu'une seule séance. Ils maintiennent de longues sessions autonomes, enquêtent avant d'agir et vérifient leur travail plus souvent que les modèles plus petits. Fable 5.1 est la version plus récente.75[Claude Fable 5.1](https://platform.claude.com/docs/en/about-claude/models/overview) et Claude Fable 5 sont les modèles les plus puissants de Claude Code, adaptés aux tâches plus importantes qu'une seule séance. Ils maintiennent de longues sessions autonomes, enquêtent avant d'agir et vérifient leur travail plus souvent que les modèles plus petits. Fable 5.1 est la version plus récente.

76 76 

77Aucun des deux modèles Fable n'est la valeur par défaut du type de compte sur aucun plan ou fournisseur. Sélectionnez-en un explicitement :77Aucun modèle Fable n'est la valeur par défaut du type de compte sur aucun plan ou fournisseur. Sélectionnez-en un explicitement :

78 78 

79* **Fable 5.1** : exécutez `/model fable`, ou lancez avec `claude --model fable`. Dans les sessions de [passerelle des applications Claude](/docs/fr/claude-apps-gateway), où l'alias se résout en Fable 5, exécutez `/model claude-fable-5-1` à la place.79* **Fable 5.1** : exécutez `/model fable`, ou lancez avec `claude --model fable`. Dans les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), où l'alias se résout à Fable 5, exécutez `/model claude-fable-5-1` à la place.

80* **Fable 5** : sélectionnez-le par ID de modèle. Sur l'API Anthropic, exécutez `/model claude-fable-5` ou lancez avec `claude --model claude-fable-5`. Sur d'autres fournisseurs, utilisez l'ID de modèle Fable 5 de votre fournisseur ou [épinglez-le](#pin-models-for-third-party-deployments) avec `ANTHROPIC_DEFAULT_FABLE_MODEL`.80* **Fable 5** : sélectionnez-le par ID de modèle. Sur l'API Anthropic, exécutez `/model claude-fable-5` ou lancez avec `claude --model claude-fable-5`. Sur d'autres fournisseurs, utilisez l'ID de modèle Fable 5 de votre fournisseur ou [épinglez-le](#pin-models-for-third-party-deployments) avec `ANTHROPIC_DEFAULT_FABLE_MODEL`.

81 81 

82Si vous vous connectez directement à l'API Anthropic et que vos paramètres utilisateur contiennent `claude-fable-5` ou `claude-fable-5[1m]` comme modèle, par exemple parce que vous avez sélectionné Fable dans le sélecteur `/model` avant v2.1.257, Claude Code change cette valeur enregistrée en alias `fable` ou `fable[1m]` la première fois que vous exécutez v2.1.257 ou version ultérieure. La ligne du modèle de démarrage affiche `(auto-updated)` une fois. Une valeur `claude-fable-5` dans les paramètres du projet, locaux ou gérés reste telle quelle.82Si vous vous connectez directement à l'API Anthropic et que vos paramètres utilisateur contiennent `claude-fable-5` ou `claude-fable-5[1m]` comme modèle, par exemple parce que vous avez sélectionné Fable dans le sélecteur `/model` avant v2.1.257, Claude Code change cette valeur enregistrée en alias `fable` ou `fable[1m]` la première fois que vous exécutez v2.1.257 ou ultérieur. La ligne de modèle de démarrage affiche `(auto-updated)` une fois. Une valeur `claude-fable-5` dans les paramètres de projet, locaux ou gérés reste telle quelle.

83 83 

84Les demandes qu'un modèle Fable signale par ses classificateurs de sécurité, le plus souvent dans les domaines de la cybersécurité et de la biologie, déclenchent un [basculement automatique du modèle](#automatic-model-fallback).84Les demandes qu'un modèle Fable signale par ses classificateurs de sécurité, le plus souvent dans les domaines de la cybersécurité et de la biologie, déclenchent un [basculement automatique du modèle](#automatic-model-fallback).

85 85 

86Pour tirer le meilleur parti de Fable :86Pour tirer le meilleur parti de Fable :

87 87 

88* **Décrivez le résultat, pas les étapes** : donnez-lui le résultat que vous voulez et laissez-le planifier le chemin. Pour le maintenir en travaillant vers ce résultat, [définissez un objectif](/docs/fr/goal).88* **Décrivez le résultat, pas les étapes** : donnez-lui le résultat que vous voulez et laissez-le planifier le chemin. Pour le maintenir orienté vers ce résultat, [définissez un objectif](/docs/fr/goal).

89* **Donnez-lui des problèmes ambigus** : les enquêtes sur les causes profondes, le débogage des pannes et les décisions architecturales sont les endroits où l'enquête et la vérification supplémentaires sont payantes.89* **Donnez-lui des problèmes ambigus** : les enquêtes sur les causes profondes, le débogage des pannes et les décisions architecturales sont les endroits où l'enquête et la vérification supplémentaires sont payantes.

90* **Ignorez les rappels de vérification** : il vérifie son propre travail avec moins d'invites, donc les rappels de tester ou de vérifier sont généralement inutiles.90* **Ignorez les rappels de vérification** : il vérifie son propre travail avec moins d'invites, donc les rappels de tester ou de vérifier sont généralement inutiles.

91* **Dimensionnez les tâches plus importantes** : donnez-lui du travail que vous diviseriez normalement en morceaux. Il maintient de longues sessions sans perdre le fil.91* **Dimensionnez les tâches plus importantes** : donnez-lui du travail que vous diviseriez normalement en morceaux. Il maintient de longues sessions sans perdre le fil.

92 92 

93<Note>93<Note>

94 Fable 5.1 nécessite Claude Code v2.1.257 ou version ultérieure. Si une demande pour celui-ci à partir d'une version plus ancienne échoue, consultez [Claude Code does not support this model](/docs/fr/errors#claude-code-does-not-support-this-model). Exécutez `claude update` pour mettre à jour. Pour la disponibilité en vertu de la rétention zéro des données, consultez [Model availability under ZDR](/docs/fr/zero-data-retention#model-availability-under-zdr).94 Fable 5.1 nécessite Claude Code v2.1.257 ou ultérieur. Si une demande pour celui-ci à partir d'une version plus ancienne échoue, consultez [Claude Code ne supporte pas ce modèle](/docs/fr/errors#claude-code-does-not-support-this-model). Exécutez `claude update` pour mettre à jour. Pour la disponibilité en vertu de la rétention zéro de données, consultez [Disponibilité des modèles en vertu de ZDR](/docs/fr/zero-data-retention#model-availability-under-zdr).

95</Note>95</Note>

96 96 

97Sur l'API Anthropic, un modèle Fable apparaît dans le sélecteur `/model` sauf si [`availableModels`](#restrict-model-selection) ou [restrictions de modèle de l'organisation](#organization-model-restrictions) l'excluent. Lorsque votre organisation ne peut pas utiliser Fable du tout, par exemple en vertu de la [rétention zéro des données](/docs/fr/zero-data-retention#model-availability-under-zdr), la ligne reste dans le sélecteur grisée, avec une note sur la raison.97Sur l'API Anthropic, un modèle Fable apparaît dans le sélecteur `/model` sauf si [`availableModels`](#restrict-model-selection) ou [les restrictions de modèle de l'organisation](#organization-model-restrictions) l'excluent. Lorsque votre organisation ne peut pas utiliser Fable du tout, par exemple en vertu de la [rétention zéro de données](/docs/fr/zero-data-retention#model-availability-under-zdr), la ligne reste dans le sélecteur grisée, avec une note sur la raison.

98 98 

99<h4 id="fable-and-usage-credits">99<h4 id="fable-and-usage-credits">

100 Fable et crédits d'utilisation100 Fable et crédits d'utilisation

101</h4>101</h4>

102 102 

103Selon votre plan et votre niveau de siège, l'utilisation de Fable peut être facturée aux [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) au lieu de puiser dans les limites incluses de votre plan. Lorsque c'est le cas, le sélecteur `/model` affiche « Requires usage credits » sur la ligne Fable. Pour gérer les crédits d'utilisation, consultez [Add usage credits to your subscription](/docs/fr/costs#add-usage-credits-to-your-subscription).103Selon votre plan et votre niveau de siège, l'utilisation de Fable peut être facturée aux [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) au lieu de puiser dans les limites incluses de votre plan. Lorsque c'est le cas, le sélecteur `/model` affiche « Requires usage credits » sur la ligne Fable. Pour gérer les crédits d'utilisation, consultez [Ajouter des crédits d'utilisation à votre abonnement](/docs/fr/costs#add-usage-credits-to-your-subscription).

104 104 

105Dans les sessions interactives, Claude Code affiche une invite de consentement avant qu'une demande Fable ne facture les crédits d'utilisation. Les membres des plans Enterprise avec facturation organisationnelle ne voient pas l'invite. Vous pouvez continuer sur Fable en utilisant les crédits d'utilisation ou basculer vers votre modèle par défaut. Vous pouvez également ignorer l'invite :105Dans les sessions interactives, Claude Code affiche une invite de consentement avant qu'une demande Fable ne facture les crédits d'utilisation. Les membres des plans Enterprise avec facturation organisationnelle ne voient pas l'invite. Vous pouvez continuer sur Fable en utilisant les crédits d'utilisation ou basculer vers votre modèle par défaut. Vous pouvez également ignorer l'invite :

106 106 


109 109 

110Après avoir choisi de continuer sur Fable en utilisant les crédits d'utilisation, Claude Code n'affiche plus l'invite.110Après avoir choisi de continuer sur Fable en utilisant les crédits d'utilisation, Claude Code n'affiche plus l'invite.

111 111 

112Dans une session avec [Remote Control](/docs/fr/remote-control) connecté, une [session en arrière-plan](/docs/fr/agent-view), ou une session d'un coéquipier d'une [équipe d'agents](/docs/fr/agent-teams), personne ne peut être au terminal, donc Claude Code maintient l'invite de consentement en cours de session jusqu'à la date limite [`dialogExpiry`](/docs/fr/settings-reference#dialogexpiry), cinq minutes par défaut. Si personne n'a répondu avant la date limite, Claude Code termine le tour sans envoyer la demande et ajoute un avis à la transcription, que le client Remote Control affiche également. Votre sélection de modèle est inchangée, et Claude Code demande à nouveau le consentement à votre prochain message.112Dans une session avec [Contrôle à distance](/docs/fr/remote-control) connecté, une [session en arrière-plan](/docs/fr/agent-view), ou une session d'un coéquipier d'une [équipe d'agents](/docs/fr/agent-teams), personne ne peut être au terminal, donc Claude Code maintient l'invite de consentement en cours de session jusqu'à la date limite [`dialogExpiry`](/docs/fr/settings-reference#dialogexpiry), cinq minutes par défaut. Si personne n'a répondu avant la date limite, Claude Code termine le tour sans envoyer la demande et ajoute un avis à la transcription, que le client Contrôle à distance affiche également. Votre sélection de modèle est inchangée, et Claude Code demande à nouveau le consentement à votre prochain message.

113 113 

114Ce que vous pouvez faire pendant que l'invite attend dépend de la session :114Ce que vous pouvez faire pendant que l'invite attend dépend de la session :

115 115 

116* Avec Remote Control connecté ou dans une session d'un coéquipier, appuyez sur n'importe quelle touche au terminal pour annuler la date limite, et Claude Code attend votre réponse.116* Avec Contrôle à distance connecté ou dans une session d'un coéquipier, appuyez sur n'importe quelle touche au terminal pour annuler la date limite, et Claude Code attend votre réponse.

117* Dans une session en arrière-plan, répondez avant la date limite.117* Dans une session en arrière-plan, répondez avant la date limite.

118* Si vous envoyez un nouveau message à partir du client distant avant que quelqu'un n'ait tapé au terminal, Claude Code termine le tour de la même manière, et votre nouveau message commence le tour suivant. Après que quelqu'un ait tapé au terminal, Claude Code continue d'attendre la réponse et met en file d'attente votre nouveau message derrière.118* Si vous envoyez un nouveau message à partir du client distant avant que quelqu'un n'ait tapé au terminal, Claude Code termine le tour de la même manière, et votre nouveau message commence le tour suivant. Après que quelqu'un ait tapé au terminal, Claude Code continue d'attendre la réponse et met en file d'attente votre nouveau message derrière.

119 119 


125 125 

126Vous pouvez configurer votre modèle de plusieurs façons, énumérées par ordre de priorité :126Vous pouvez configurer votre modèle de plusieurs façons, énumérées par ordre de priorité :

127 127 

1281. **Pendant la session** : utilisez `/model <alias|name>` pour basculer immédiatement, ou exécutez `/model` sans argument pour ouvrir le sélecteur. Consultez [when Claude Code asks you to confirm the switch](/docs/fr/prompt-caching#switching-models)1281. **Pendant la session** : utilisez `/model <alias|name>` pour basculer immédiatement, ou exécutez `/model` sans argument pour ouvrir le sélecteur. Consultez [quand Claude Code vous demande de confirmer le basculement](/docs/fr/prompt-caching#switching-models)

1292. **Au démarrage** : lancez avec `claude --model <alias|name>`1292. **Au démarrage** : lancez avec `claude --model <alias|name>`

1303. **Variable d'environnement** : définissez `ANTHROPIC_MODEL=<alias|name>`1303. **Variable d'environnement** : définissez `ANTHROPIC_MODEL=<alias|name>`

1314. **Paramètres** : configurez de manière permanente dans votre fichier de paramètres en utilisant le champ `model`1314. **Paramètres** : configurez de manière permanente dans votre fichier de paramètres en utilisant le champ `model`

1325. **[Par défaut pour les nouvelles sessions](#set-a-default-model-for-new-sessions)** : définissez `ANTHROPIC_DEFAULT_MODEL=<alias|name>`1325. **[Valeur par défaut pour les nouvelles sessions](#set-a-default-model-for-new-sessions)** : définissez `ANTHROPIC_DEFAULT_MODEL=<alias|name>`

133 133 

134`/model` enregistre votre choix comme valeur par défaut pour les nouvelles sessions en écrivant le champ `model` dans vos paramètres utilisateur. Dans le sélecteur :134`/model` enregistre votre choix comme valeur par défaut pour les nouvelles sessions en écrivant le champ `model` dans vos paramètres utilisateur. Dans le sélecteur :

135 135 


138 138 

139Taper `/model <name>` directement se comporte comme `Enter`. Pour basculer pour cette session uniquement, ouvrez le sélecteur avec `/model` et appuyez sur `s` sur la ligne du modèle.139Taper `/model <name>` directement se comporte comme `Enter`. Pour basculer pour cette session uniquement, ouvrez le sélecteur avec `/model` et appuyez sur `s` sur la ligne du modèle.

140 140 

141Si vous changez de modèle avec `/model`, le changement atteint également les [sous-agents qui héritent du modèle de la conversation principale](/docs/fr/sub-agents#choose-a-model), car Claude Code résout leur modèle à partir de celui que votre session utilise lorsque Claude les démarre. Basculez vers Opus avant que Claude ne délègue la recherche ou les exécutions de test à l'un d'eux, et ce travail s'exécute également sur Opus. Pour garder un sous-agent personnalisé sur un modèle plus petit, définissez `model` dans sa définition.141Sur un plan Enterprise, lorsque vous êtes connecté avec votre compte claude.ai et que vous enregistrez une valeur par défaut avec `/model`, Claude Code enregistre également le choix sur ce compte. Cela nécessite Claude Code v2.1.280 ou ultérieur.

142 142 

143Si vous définissez un modèle avec `/model` en [mode non interactif](/docs/fr/headless), avec l'indicateur `-p`, votre choix s'applique à la session actuelle uniquement et n'est pas enregistré comme valeur par défaut ; `/model` dans ce mode nécessite Claude Code v2.1.205 ou version ultérieure. Les paramètres du projet et gérés conservent toujours la priorité et se réappliquent au prochain lancement. Un [modèle par défaut de l'organisation](#organization-default-model) que votre administrateur a configuré pour remplacer la sélection de l'utilisateur se réapplique également au prochain lancement.143* Lorsque votre administrateur n'a pas défini un [modèle par défaut de l'organisation](#organization-default-model), l'[option Par défaut](#default-model-setting) peut se résoudre au modèle enregistré, et lorsqu'elle le fait, la ligne Par défaut du sélecteur affiche le nom de ce modèle.

144* Si [les restrictions de modèle](#restrict-model-selection) excluent le modèle enregistré ou qu'il n'est pas disponible pour votre compte, et que votre administrateur n'a pas défini un modèle par défaut de l'organisation, l'option Par défaut se résout comme si rien n'avait été enregistré.

145* Si vous choisissez Par défaut ou `opusplan` dans `/model`, le choix enregistré ne change pas.

146 

147Si vous basculez les modèles avec `/model`, le basculement atteint également les [sous-agents qui héritent du modèle de la conversation principale](/docs/fr/sub-agents#choose-a-model), car Claude Code résout leur modèle à partir de celui que votre session utilise lorsque Claude les démarre. Basculez vers Opus avant que Claude ne délègue la recherche ou les exécutions de test à l'un d'eux, et ce travail s'exécute également sur Opus. Pour garder un sous-agent personnalisé sur un modèle plus petit, définissez `model` dans sa définition.

148 

149Si vous définissez un modèle avec `/model` en [mode non interactif](/docs/fr/headless), avec l'indicateur `-p`, votre choix s'applique à la session actuelle uniquement et n'est pas enregistré comme valeur par défaut ; `/model` dans ce mode nécessite Claude Code v2.1.205 ou ultérieur. Les paramètres de projet et gérés conservent toujours la priorité et se réappliquent au prochain lancement. Un [modèle par défaut de l'organisation](#organization-default-model) que votre administrateur a configuré pour remplacer la sélection de l'utilisateur se réapplique également au prochain lancement.

144 150 

145Dans v2.1.144 à v2.1.152, `/model` s'appliquait à la session actuelle uniquement et `d` dans le sélecteur enregistrait une valeur par défaut.151Dans v2.1.144 à v2.1.152, `/model` s'appliquait à la session actuelle uniquement et `d` dans le sélecteur enregistrait une valeur par défaut.

146 152 

147L'indicateur `--model` et la variable d'environnement `ANTHROPIC_MODEL` s'appliquent uniquement à la session que vous lancez avec eux. Pour exécuter différents modèles dans différents terminaux en même temps, lancez chacun avec son propre indicateur `--model` plutôt que de basculer avec `/model`.153L'indicateur `--model` et la variable d'environnement `ANTHROPIC_MODEL` s'appliquent uniquement à la session que vous lancez avec eux. Pour exécuter différents modèles dans différents terminaux en même temps, lancez chacun avec son propre indicateur `--model` plutôt que de basculer avec `/model`.

148 154 

149Les prix dans le sélecteur `/model` apparaissent lorsque Claude Code communique avec l'API Anthropic, directement ou via une [passerelle LLM](/docs/fr/llm-gateway) qui la proxifie, et le prix sur une ligne est le prix du modèle que cette ligne sélectionne. Sur les [fournisseurs tiers](/docs/fr/third-party-integrations) tels qu'Amazon Bedrock et sur la [passerelle des applications Claude](/docs/fr/claude-apps-gateway), votre fournisseur ou passerelle détermine ce que vous payez, donc les lignes du sélecteur n'affichent aucun prix. Le prix est une étiquette d'affichage uniquement ; il n'affecte pas le modèle qu'une ligne sélectionne ou ce que votre fournisseur facture. Avant v2.1.206, [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) et les sessions de passerelle affichaient les prix de liste d'Anthropic, et une ligne pouvait afficher le prix d'un modèle différent de celui qu'elle sélectionnait.155Les prix dans le sélecteur `/model` apparaissent lorsque Claude Code communique avec l'API Anthropic, directement ou via une [passerelle LLM](/docs/fr/llm-gateway) qui la proxifie, et le prix sur une ligne est le prix du modèle que cette ligne sélectionne. Sur les [fournisseurs tiers](/docs/fr/third-party-integrations) tels qu'Amazon Bedrock et sur la [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), votre fournisseur ou passerelle détermine ce que vous payez, donc les lignes du sélecteur n'affichent aucun prix. Le prix est une étiquette d'affichage uniquement ; il n'affecte pas le modèle qu'une ligne sélectionne ou ce que votre fournisseur facture. Avant v2.1.206, [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) et les sessions de passerelle affichaient les prix de liste d'Anthropic, et une ligne pouvait afficher le prix d'un modèle différent de celui qu'elle sélectionnait.

150 156 

151Les sessions reprises commencées avec `claude --resume`, `--continue`, ou le sélecteur `/resume` conservent le modèle qu'elles utilisaient lorsque la transcription a été enregistrée, indépendamment du paramètre `model` actuel. Si le modèle restauré a été retiré ou est exclu par [`availableModels`](#restrict-model-selection), la session revient à l'ordre de priorité normal. Cela empêche le choix `/model` d'une autre session de modifier le modèle à la reprise. Sur les fournisseurs qui utilisent des ID de déploiement spécifiques au fournisseur plutôt que des ID de modèle Anthropic, tels qu'Amazon Bedrock, Agent Platform de Google Cloud et Microsoft Foundry, le modèle de transcription n'est pas restauré du tout et la session résout son modèle via l'ordre de priorité normal.157Les sessions reprises démarrées avec `claude --resume`, `--continue`, ou le sélecteur `/resume` conservent le modèle qu'elles utilisaient lorsque la transcription a été enregistrée, indépendamment du paramètre `model` actuel. Si le modèle restauré a été retiré ou est exclu par [`availableModels`](#restrict-model-selection), la session revient à l'ordre de priorité normal. Cela empêche le choix `/model` d'une autre session de modifier le modèle à la reprise. Sur les fournisseurs qui utilisent des ID de déploiement spécifiques au fournisseur plutôt que des ID de modèle Anthropic, tels qu'Amazon Bedrock, Agent Platform de Google Cloud et Microsoft Foundry, le modèle de transcription n'est pas restauré du tout et la session résout son modèle via l'ordre de priorité normal.

152 158 

153Un modèle que vous choisissez pour le nouveau lancement avec `--model` ou `ANTHROPIC_MODEL` conserve toujours la priorité sur le modèle restauré. À partir de v2.1.195, une variable de la famille [`ANTHROPIC_DEFAULT_OPUS_MODEL`](#environment-variables) aussi. [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions) peut aussi, selon les conditions énumérées dans sa section.159Un modèle que vous choisissez pour le nouveau lancement avec `--model` ou `ANTHROPIC_MODEL` conserve toujours la priorité sur le modèle restauré. À partir de v2.1.195, une variable de la famille [`ANTHROPIC_DEFAULT_OPUS_MODEL`](#environment-variables) aussi. [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions) peut aussi, selon les conditions énumérées dans sa section.

154 160 

155Lorsque le modèle actif au démarrage provient des paramètres du projet ou gérés plutôt que de votre propre sélection, l'en-tête de démarrage indique quel fichier de paramètres l'a défini. Exécutez `/model` pour remplacer ; le paramètre du projet ou géré se réapplique au prochain lancement. Sur les plates-formes qui intègrent Claude Code et définissent [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/fr/env-vars), la configuration du modèle de l'hôte a priorité sur les paramètres du modèle géré, tandis qu'une liste d'autorisation `availableModels` gérée reste en vigueur sauf si l'hôte en fournit une ; [Exceptions to managed settings precedence](/docs/fr/settings#exceptions-to-managed-settings-precedence) indique quelles clés et variables l'hôte remplace.161Lorsque le modèle actif au démarrage provient des paramètres de projet ou gérés plutôt que de votre propre sélection, l'en-tête de démarrage indique quel fichier de paramètres l'a défini. Exécutez `/model` pour remplacer ; le paramètre de projet ou géré se réapplique au prochain lancement. Sur les plates-formes qui intègrent Claude Code et définissent [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/fr/env-vars), la configuration du modèle de l'hôte a priorité sur les paramètres de modèle gérés, tandis qu'une liste d'autorisation `availableModels` gérée reste en vigueur sauf si l'hôte en fournit une ; [Exceptions à la priorité des paramètres gérés](/docs/fr/settings#exceptions-to-managed-settings-precedence) indique quelles clés et variables l'hôte remplace.

156 162 

157Si vous ou votre organisation configurez des crochets [PreModelSwitch](/docs/fr/hooks#premodelswitch), ils s'exécutent avant qu'un changement demandé s'applique et peuvent le bloquer ou vous demander de confirmer.163Si vous ou votre organisation configurez des [hooks PreModelSwitch](/docs/fr/hooks#premodelswitch), ils s'exécutent avant qu'un basculement demandé s'applique et peuvent le bloquer ou vous demander de confirmer.

158 164 

159Lorsque Claude Code ne peut pas déterminer quels crochets PreModelSwitch vos [plugins gérés](/docs/fr/settings-reference#enabledplugins) de l'organisation fournissent, par exemple parce qu'un plugin géré n'a pas pu se charger, il refuse le changement plutôt que de l'appliquer sans vérification, et il vérifie à nouveau à chaque nouvelle tentative. Consultez [Model switch was blocked by a PreModelSwitch hook](/docs/fr/errors#model-switch-was-blocked-by-a-premodelswitch-hook) pour le message et la récupération.165Lorsque Claude Code ne peut pas dire quels hooks PreModelSwitch vos [plugins gérés](/docs/fr/settings-reference#enabledplugins) de l'organisation fournissent, par exemple parce qu'un plugin géré n'a pas pu se charger, il refuse le basculement plutôt que de l'appliquer sans vérification, et il vérifie à nouveau à chaque nouvelle tentative. Consultez [Le basculement de modèle a été bloqué par un hook PreModelSwitch](/docs/fr/errors#model-switch-was-blocked-by-a-premodelswitch-hook) pour le message et la récupération.

160 166 

161Lorsque vous changez de modèle via la méthode [`setModel()`](/docs/fr/agent-sdk/overview) du SDK Agent ou à partir d'un appareil connecté via [Remote Control](/docs/fr/remote-control), ou une application telle que l'[application de bureau](/docs/fr/desktop) qui exécute l'interface de ligne de commande Claude Code pour vous, Claude Code vérifie que la chaîne est une qu'il reconnaît avant de l'enregistrer. Cette vérification nécessite Claude Code v2.1.200 ou version ultérieure. Vérifier un choix Remote Control nécessite Claude Code v2.1.260 ou version ultérieure sur votre machine. Sur l'API Anthropic, Claude Code reconnaît :167Lorsque vous basculez les modèles via la méthode [`setModel()`](/docs/fr/agent-sdk/overview) du SDK Agent ou à partir d'un appareil connecté via [Contrôle à distance](/docs/fr/remote-control), ou une application telle que l'[application de bureau](/docs/fr/desktop) qui exécute le CLI Claude Code bascule pour vous, Claude Code vérifie que la chaîne est une qu'il reconnaît avant de l'enregistrer. Cette vérification nécessite Claude Code v2.1.200 ou ultérieur. La vérification d'un choix Contrôle à distance nécessite Claude Code v2.1.260 ou ultérieur sur votre machine. Sur l'API Anthropic, Claude Code reconnaît :

162 168 

163* un alias de modèle169* un alias de modèle

164* une entrée du sélecteur `/model`170* une entrée du sélecteur `/model`


167 173 

168Claude Code rejette une chaîne non reconnue avec `Model "<name>" is not a recognized model id.` et la session conserve son modèle actuel, au lieu d'enregistrer la chaîne et d'échouer à la prochaine demande. Consultez [la référence d'erreur](/docs/fr/errors#model-is-not-a-recognized-model-id) pour les étapes de récupération.174Claude Code rejette une chaîne non reconnue avec `Model "<name>" is not a recognized model id.` et la session conserve son modèle actuel, au lieu d'enregistrer la chaîne et d'échouer à la prochaine demande. Consultez [la référence d'erreur](/docs/fr/errors#model-is-not-a-recognized-model-id) pour les étapes de récupération.

169 175 

170La vérification s'exécute uniquement sur l'API Anthropic. Sur Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry, [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), et derrière une [passerelle LLM](/docs/fr/llm-gateway) ou une `ANTHROPIC_BASE_URL` personnalisée, votre fournisseur ou passerelle définit les noms de modèles, donc Claude Code transmet n'importe quelle chaîne sans la vérifier. La vérification ne couvre pas non plus l'indicateur `--model`, la variable d'environnement `ANTHROPIC_MODEL`, ou le paramètre `model` ; une valeur mal tapée là-bas produit [There's an issue with the selected model](/docs/fr/errors#theres-an-issue-with-the-selected-model) à la première demande à la place. Claude Code peut toujours écrire la [ligne de diagnostic unrecognized-model](/docs/fr/errors#unrecognized-model-id-on-a-request) au moment de la demande, sur chaque fournisseur.176La vérification s'exécute uniquement sur l'API Anthropic. Sur Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry, [Claude Platform on AWS](/docs/fr/claude-platform-on-aws), et derrière une [passerelle LLM](/docs/fr/llm-gateway) ou une `ANTHROPIC_BASE_URL` personnalisée, votre fournisseur ou passerelle définit les noms de modèle, donc Claude Code transmet n'importe quelle chaîne sans la vérifier. La vérification ne couvre pas non plus l'indicateur `--model`, la variable d'environnement `ANTHROPIC_MODEL`, ou le paramètre `model` ; une valeur mal orthographiée là-bas produit [Il y a un problème avec le modèle sélectionné](/docs/fr/errors#theres-an-issue-with-the-selected-model) à la première demande à la place. Claude Code peut toujours écrire la [ligne de diagnostic de modèle non reconnu](/docs/fr/errors#unrecognized-model-id-on-a-request) au moment de la demande, sur chaque fournisseur.

171 177 

172Lorsque le modèle demandé a une date de retraite programmée ou est automatiquement remappé à une version plus récente, Claude Code affiche un avertissement qui nomme le modèle demandé. Les sessions interactives l'affichent comme un avis de démarrage. À partir de v2.1.182, le même avertissement est écrit sur stderr en [mode non interactif](/docs/fr/headless) lors de l'utilisation du format de sortie texte par défaut. La vérification couvre également un `model` défini dans [frontmatter de sous-agent](/docs/fr/sub-agents). L'avertissement stderr est supprimé pour `--output-format json` et `stream-json` ; lisez le modèle réel à partir du champ `modelUsage` du [message de résultat](/docs/fr/headless#get-structured-output) à la place.178Lorsque le modèle demandé a une date de retrait programmée ou est automatiquement remappé à une version plus récente, Claude Code affiche un avertissement qui nomme le modèle demandé. Les sessions interactives l'affichent comme un avis de démarrage. À partir de v2.1.182, le même avertissement est écrit sur stderr en [mode non interactif](/docs/fr/headless) lors de l'utilisation du format de sortie texte par défaut. La vérification couvre également un `model` défini dans [frontmatter de sous-agent](/docs/fr/sub-agents). L'avertissement stderr est supprimé pour `--output-format json` et `stream-json` ; lisez le modèle réel à partir du champ `modelUsage` du [message de résultat](/docs/fr/headless#get-structured-output) à la place.

173 179 

174Par exemple, démarrez une session sur Opus :180Par exemple, démarrez une session sur Opus :

175 181 


177claude --model opus183claude --model opus

178```184```

179 185 

180Puis basculez les modèles au sein de la session :186Puis basculez les modèles depuis la session :

181 187 

182```text theme={null}188```text theme={null}

183/model sonnet189/model sonnet


198 Définir un modèle par défaut pour les nouvelles sessions204 Définir un modèle par défaut pour les nouvelles sessions

199</h4>205</h4>

200 206 

201Définissez `ANTHROPIC_DEFAULT_MODEL=<alias|name>` pour choisir le modèle sur lequel vos sessions démarrent par défaut. Nécessite Claude Code v2.1.236 ou version ultérieure.207Définissez `ANTHROPIC_DEFAULT_MODEL=<alias|name>` pour choisir le modèle sur lequel vos sessions démarrent par défaut. Nécessite Claude Code v2.1.236 ou ultérieur.

202 208 

203Claude Code démarre une nouvelle session sur le modèle de la variable uniquement lorsqu'aucun de ceux-ci ne sélectionne un modèle :209Claude Code démarre une nouvelle session sur le modèle de la variable uniquement lorsqu'aucun de ces éléments ne sélectionne un modèle :

204 210 

205* L'indicateur `--model`211* L'indicateur `--model`

206* `ANTHROPIC_MODEL`212* `ANTHROPIC_MODEL`


209 215 

210Un choix que vous enregistrez avec `/model` a priorité sur la variable aux lancements ultérieurs aussi. Avec `ANTHROPIC_MODEL` défini à la place, Claude Code revient au modèle de cette variable au prochain lancement, quel que soit ce que vous avez enregistré avec `/model`.216Un choix que vous enregistrez avec `/model` a priorité sur la variable aux lancements ultérieurs aussi. Avec `ANTHROPIC_MODEL` défini à la place, Claude Code revient au modèle de cette variable au prochain lancement, quel que soit ce que vous avez enregistré avec `/model`.

211 217 

212Claude Code résout également l'option Par défaut au modèle de la variable, sauf si un modèle par défaut de l'organisation s'applique. Lorsque l'option Par défaut se résout au modèle de la variable, la ligne Par défaut dans le sélecteur `/model` affiche l'étiquette Set by ANTHROPIC\_DEFAULT\_MODEL.218Claude Code résout également l'option Par défaut au modèle de la variable, sauf si un modèle par défaut de l'organisation s'applique. Lorsque l'option Par défaut se résout au modèle de la variable, la ligne Par défaut dans le sélecteur `/model` affiche l'étiquette Défini par ANTHROPIC\_DEFAULT\_MODEL.

213 219 

214Claude Code ignore la variable dans ces cas, et l'option Par défaut se résout comme si vous ne l'aviez pas définie :220Claude Code ignore la variable dans ces cas, et l'option Par défaut se résout comme si vous ne l'aviez pas définie :

215 221 

216* Vous l'avez définie sur `default`, `inherit`, `opusplan`, ou `haiku`222* Vous l'avez définie à `default`, `inherit`, `opusplan`, ou `haiku`

217* [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) est activé223* [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) est activé

218* [`availableModels`](#restrict-model-selection) ou [restrictions de modèle de l'organisation](#organization-model-restrictions) excluent le modèle224* Les [restrictions de modèle](#restrict-model-selection) de votre organisation excluent le modèle

219* Le modèle n'est pas disponible pour votre compte225* Le modèle n'est pas disponible pour votre compte

220 226 

221Lorsqu'une nouvelle session démarrerait sur le modèle de la variable, une session que vous reprenez avec `claude --resume`, `--continue`, ou le sélecteur `/resume` démarre également sur celui-ci. Claude Code ne restaure pas le modèle enregistré dans la transcription de cette session. Sinon, Claude Code n'utilise pas la variable lorsque vous [reprenez une session](#setting-your-model).227Lorsqu'une nouvelle session démarrerait sur le modèle de la variable, une session que vous reprenez avec `claude --resume`, `--continue`, ou le sélecteur `/resume` démarre également sur celui-ci. Claude Code ne restaure pas le modèle enregistré dans la transcription de cette session. Sinon, Claude Code n'utilise pas la variable lorsque vous [reprenez une session](#setting-your-model).


227Lorsque vous choisissez un modèle avec `/model` et que votre prochaine session démarre sur quelque chose d'autre, ce sont les causes habituelles :233Lorsque vous choisissez un modèle avec `/model` et que votre prochaine session démarre sur quelque chose d'autre, ce sont les causes habituelles :

228 234 

229* **Vous l'avez choisi pour une session.** Appuyer sur `s` dans le sélecteur, lancer avec `--model`, et exécuter `/model` en mode non interactif s'appliquent tous à la session actuelle et laissent votre valeur par défaut enregistrée seule.235* **Vous l'avez choisi pour une session.** Appuyer sur `s` dans le sélecteur, lancer avec `--model`, et exécuter `/model` en mode non interactif s'appliquent tous à la session actuelle et laissent votre valeur par défaut enregistrée seule.

230* **Quelque chose avec une priorité plus élevée définit le modèle.** Une valeur `model` dans les paramètres du projet ou gérés, `ANTHROPIC_MODEL` dans votre shell, ou un [modèle par défaut de l'organisation](#organization-default-model) que votre administrateur a défini pour remplacer les choix de l'utilisateur s'applique à nouveau à chaque lancement. Votre choix `/model` est toujours enregistré ; il est surclassé. Lorsque les paramètres du projet ou gérés définissent le modèle, l'en-tête de démarrage nomme le fichier.236* **Quelque chose avec une priorité plus élevée définit le modèle.** Une valeur `model` dans les paramètres de projet ou gérés, `ANTHROPIC_MODEL` dans votre shell, ou un [modèle par défaut de l'organisation](#organization-default-model) que votre administrateur a défini pour remplacer les choix de l'utilisateur s'applique à nouveau à chaque lancement. Votre choix `/model` est toujours enregistré ; il est surclassé. Lorsque les paramètres de projet ou gérés définissent le modèle, l'en-tête de démarrage nomme le fichier.

231* **Claude Code n'a pas pu enregistrer votre choix.** `/model` écrit `model` dans `~/.claude/settings.json`. Si vous ne pouvez pas écrire dans ce fichier, par exemple parce qu'un autre outil le génère ou le lie à une copie en lecture seule, le modèle que vous avez choisi dure pour la session et le prochain lancement lit l'ancienne valeur. Définissez `model` dans l'outil qui génère le fichier, ou rendez le fichier accessible en écriture. Consultez [A change you made in Claude Code is lost in new sessions](/docs/fr/settings#a-change-you-made-in-claude-code-is-lost-in-new-sessions).237* **Claude Code n'a pas pu enregistrer votre choix.** `/model` écrit `model` dans `~/.claude/settings.json`. Si vous ne pouvez pas écrire dans ce fichier, par exemple parce qu'un autre outil le génère ou le lie à une copie en lecture seule, le modèle que vous avez choisi dure pour la session et le prochain lancement lit l'ancienne valeur. Définissez `model` dans l'outil qui génère le fichier, ou rendez le fichier inscriptible. Consultez [Un changement que vous avez apporté dans Claude Code est perdu dans les nouvelles sessions](/docs/fr/settings#a-change-you-made-in-claude-code-is-lost-in-new-sessions).

232* **Vous avez repris une session.** Une session que vous reprenez avec `claude --resume` ou `--continue` [conserve généralement le modèle qu'elle utilisait](#setting-your-model) plutôt que votre valeur par défaut actuelle.238* **Vous avez repris une session.** Une session que vous reprenez avec `claude --resume` ou `--continue` [conserve généralement le modèle qu'elle utilisait](#setting-your-model) plutôt que votre valeur par défaut actuelle.

233 239 

234<h2 id="restrict-model-selection">240<h2 id="restrict-model-selection">

235 Restreindre la sélection de modèle241 Restreindre la sélection de modèle

236</h2>242</h2>

237 243 

238Les administrateurs d'entreprise peuvent utiliser `availableModels` dans les [paramètres gérés ou de politique](/docs/fr/managed-settings) pour restreindre les modèles que les utilisateurs peuvent sélectionner. Les entrées correspondent à une famille de modèles telle que `sonnet`, un préfixe de version tel que `claude-sonnet-4-5`, ou un ID de modèle complet tel que `claude-sonnet-4-5-20250929`. Un préfixe de version correspond également aux ID de modèles ultérieurs qui l'étendent avec un autre segment, donc `claude-fable-5` permet à la fois Fable 5 et Fable 5.1, tandis que `claude-fable-5-1` permet uniquement Fable 5.1.244Les administrateurs d'entreprise peuvent utiliser `availableModels` dans les [paramètres gérés ou de politique](/docs/fr/managed-settings) pour restreindre les modèles que les utilisateurs peuvent sélectionner. Les entrées correspondent à une famille de modèles telle que `sonnet`, un préfixe de version tel que `claude-sonnet-4-5`, ou un ID de modèle complet tel que `claude-sonnet-4-5-20250929`. Un préfixe de version correspond également aux ID de modèles ultérieurs qui l'étendent avec un autre segment, donc `claude-fable-5` permet à la fois Fable 5 et Fable 5.1, tandis que `claude-fable-5-1` permet uniquement Fable 5.1. Pour bloquer un modèle que la liste permet, ou pour faire en sorte que chaque entrée d'ID de modèle ne permette que la version qu'elle nomme, voir [Bloquer des modèles ou des versions spécifiques](#block-specific-models-or-versions).

239 245 

240Sur les plateformes qui intègrent Claude Code et définissent [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/fr/env-vars), la configuration de modèle de l'hôte a priorité sur les paramètres de modèle gérés, tandis qu'une liste d'autorisation `availableModels` gérée reste en vigueur sauf si l'hôte fournit la sienne ; [Exceptions à la priorité des paramètres gérés](/docs/fr/settings#exceptions-to-managed-settings-precedence) indique quelles clés et variables l'hôte remplace.246Sur les plateformes qui intègrent Claude Code et définissent [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/fr/env-vars), la configuration de modèle de l'hôte a priorité sur les paramètres de modèle gérés, tandis qu'une liste d'autorisation `availableModels` gérée reste en vigueur sauf si l'hôte fournit la sienne ; [Exceptions à la priorité des paramètres gérés](/docs/fr/settings#exceptions-to-managed-settings-precedence) indique quelles clés et variables l'hôte remplace.

241 247 


305 Comportement du modèle par défaut311 Comportement du modèle par défaut

306</h3>312</h3>

307 313 

308En soi, `availableModels` laisse l'option Par défaut sur la [valeur par défaut d'exécution](#default-model-setting) du système pour le compte jusqu'à ce que vous définissiez également [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model). Si ce défaut est un modèle que vous avez l'intention de restreindre, définissez également `enforceAvailableModels`.314Avec la correspondance de préfixe par défaut, `availableModels` en soi laisse l'option Par défaut sur la [valeur par défaut d'exécution](#default-model-setting) du système pour le compte jusqu'à ce que vous définissiez également [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model). Si ce défaut est un modèle que vous avez l'intention de restreindre, définissez également `enforceAvailableModels`, ou [bloquez ce modèle](#block-specific-models-or-versions).

309 315 

310Un tableau `availableModels` vide n'engage jamais l'application de l'option Modèle par défaut : avec `availableModels: []`, les sélections de modèles nommés sont bloquées mais le modèle par défaut pour le type de compte reste utilisable quel que soit `enforceAvailableModels`.316Avec `availableModels: []`, les sélections de modèles nommés sont bloquées et `enforceAvailableModels` n'a aucun effet.

311 317 

312<h3 id="enforce-the-allowlist-for-the-default-model">318<h3 id="enforce-the-allowlist-for-the-default-model">

313 Appliquer la liste d'autorisation au modèle par défaut319 Appliquer la liste d'autorisation au modèle par défaut


322}328}

323```329```

324 330 

325L'option Par défaut se résout au défaut du type de compte, ou au [modèle par défaut d'organisation](#organization-default-model) lorsqu'un administrateur en a défini un. Lorsque ce modèle n'est pas dans la liste d'autorisation, l'option Par défaut se résout à la place à la première entrée `availableModels` qui nomme un modèle autorisé et disponible, et la ligne Par défaut du sélecteur `/model` affiche ce modèle. Cela s'applique partout où le défaut est atteint : démarrage de session, sélection de Par défaut dans `/model`, le mot-clé `"default"` dans les [chaînes de modèle de secours](#fallback-model-chains), et le secours utilisé lorsqu'une sélection exclue est supprimée.331Pour un membre sans modèle [enregistré sur son compte](#setting-your-model), l'option Par défaut se résout au défaut du type de compte, ou au [modèle par défaut d'organisation](#organization-default-model) lorsqu'un administrateur en a défini un. Lorsque ce modèle n'est pas dans la liste d'autorisation, l'option Par défaut se résout à la place à la première entrée `availableModels` qui nomme un modèle autorisé et disponible, et la ligne Par défaut du sélecteur `/model` affiche ce modèle. Cela s'applique partout où le défaut est atteint : démarrage de session, sélection de Par défaut dans `/model`, le mot-clé `"default"` dans les [chaînes de modèle de secours](#fallback-model-chains), et le secours utilisé lorsqu'une sélection exclue est supprimée. Un modèle enregistré sur le compte d'un membre est également vérifié par rapport à `availableModels` ; [Définir votre modèle](#setting-your-model) décrit comment l'option Par défaut le traite.

326 332 

327`enforceAvailableModels` remapte l'option Par défaut uniquement lorsque `availableModels` est non vide. Avec `availableModels: []`, le modèle par défaut pour le type de compte reste utilisable, donc le paramètre ne peut pas verrouiller les utilisateurs hors de chaque modèle. Lorsque `availableModels` est non vide mais qu'aucune entrée ne se résout à un modèle autorisé et disponible, l'application est ignorée et Par défaut se résout au défaut du type de compte, avec un avertissement visible uniquement sous `--debug`. Gardez au moins une entrée garantie disponible dans la liste pour éviter cela.333`enforceAvailableModels` remapte l'option Par défaut uniquement lorsque `availableModels` est non vide. Lorsque `availableModels` est non vide mais qu'aucune entrée ne se résout à un modèle autorisé et disponible, l'application est ignorée avec un avertissement visible uniquement sous `--debug`. Gardez au moins une entrée garantie disponible dans la liste pour éviter cela.

328 334 

329Déployez les deux clés ensemble dans la source gérée la mieux classée que vous livrez. Par défaut, Claude Code ne lit que cette source, donc une paire placée dans un fichier de paramètres gérés est ignorée lorsque la console d'administration livre des paramètres ; sous la fusion opt-in dans [comment Claude Code combine les sources gérées](/docs/fr/managed-settings#how-claude-code-combines-managed-sources), Claude Code ignore toujours une carte `modelOverrides` d'une source classée en dessous de celle qui définit `availableModels`.335Déployez les deux clés ensemble dans la source gérée la mieux classée que vous livrez. Par défaut, Claude Code ne lit que cette source, donc une paire placée dans un fichier de paramètres gérés est ignorée lorsque la console d'administration livre des paramètres ; sous la fusion opt-in dans [comment Claude Code combine les sources gérées](/docs/fr/managed-settings#how-claude-code-combines-managed-sources), Claude Code ignore toujours une carte `modelOverrides` d'une source classée en dessous de celle qui définit `availableModels`.

330 336 


332 Contrôler le modèle sur lequel les utilisateurs s'exécutent338 Contrôler le modèle sur lequel les utilisateurs s'exécutent

333</h3>339</h3>

334 340 

335Le paramètre `model` est une sélection initiale, pas une application. Il définit quel modèle est actif au démarrage d'une session, mais les utilisateurs peuvent toujours ouvrir `/model` et choisir Par défaut, qui se résout à la [valeur par défaut d'exécution](#default-model-setting) du système quel que soit ce qui est défini pour `model`, sauf si [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) le redirige.341Le paramètre `model` est une sélection initiale, pas une application. Il définit quel modèle est actif au démarrage d'une session, mais les utilisateurs peuvent toujours ouvrir `/model` et choisir Par défaut, qui se résout à la [valeur par défaut d'exécution](#default-model-setting) du système quel que soit ce qui est défini pour `model`, sauf si [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) ou les [clés qui bloquent des versions spécifiques](#block-specific-models-or-versions) s'appliquent à cela.

336 342 

337Pour contrôler complètement l'expérience du modèle, combinez ces paramètres :343Pour contrôler complètement l'expérience du modèle, combinez ces paramètres :

338 344 

339* **`availableModels`** : restreint les modèles nommés vers lesquels les utilisateurs peuvent basculer345* **`availableModels`** : restreint les modèles nommés vers lesquels les utilisateurs peuvent basculer

340* **`enforceAvailableModels`** : étend la liste d'autorisation `availableModels` à l'option Par défaut, donc Par défaut ne peut pas se résoudre à un modèle en dehors de la liste346* **`enforceAvailableModels`** : étend la liste d'autorisation `availableModels` à l'option Par défaut, donc Par défaut ne peut pas se résoudre à un modèle en dehors de la liste

347* **`deniedModels`** et **`availableModelsMatch`** : [bloquez des versions spécifiques](#block-specific-models-or-versions) qu'une entrée `availableModels` permettrait autrement

341* **`model`** : définit la sélection de modèle initiale au démarrage d'une session348* **`model`** : définit la sélection de modèle initiale au démarrage d'une session

342* **`ANTHROPIC_DEFAULT_SONNET_MODEL`** / **`ANTHROPIC_DEFAULT_OPUS_MODEL`** / **`ANTHROPIC_DEFAULT_HAIKU_MODEL`** / **`ANTHROPIC_DEFAULT_FABLE_MODEL`** : contrôlez à quoi les alias `sonnet`, `opus`, `haiku`, et `fable` se résolvent, et quelle version la [valeur par défaut du type de compte](#default-model-setting) utilise349* **`ANTHROPIC_DEFAULT_SONNET_MODEL`** / **`ANTHROPIC_DEFAULT_OPUS_MODEL`** / **`ANTHROPIC_DEFAULT_HAIKU_MODEL`** / **`ANTHROPIC_DEFAULT_FABLE_MODEL`** : contrôlez à quoi les alias `sonnet`, `opus`, `haiku`, et `fable` se résolvent, et quelle version la [valeur par défaut du type de compte](#default-model-setting) utilise

343 350 


370 377 

371Lorsque le [point de terminaison Amazon Bedrock Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint) est activé, les entrées dans `availableModels` qui commencent par `anthropic.` sont ajoutées au sélecteur `/model` comme options personnalisées et acheminées vers le point de terminaison Mantle. Ceci est une exception à la correspondance d'alias décrite dans [Épingler les modèles pour les déploiements tiers](#pin-models-for-third-party-deployments). Le paramètre restreint toujours le sélecteur aux entrées listées, et un ID Mantle intègre un nom de famille, donc il compte comme une entrée spécifique et désactive le caractère générique de cette famille : aux côtés de tous les ID Mantle, listez les préfixes de version ou les ID complets que vous souhaitez garder sélectionnables. Voir [Comportement de fusion](#merge-behavior).378Lorsque le [point de terminaison Amazon Bedrock Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint) est activé, les entrées dans `availableModels` qui commencent par `anthropic.` sont ajoutées au sélecteur `/model` comme options personnalisées et acheminées vers le point de terminaison Mantle. Ceci est une exception à la correspondance d'alias décrite dans [Épingler les modèles pour les déploiements tiers](#pin-models-for-third-party-deployments). Le paramètre restreint toujours le sélecteur aux entrées listées, et un ID Mantle intègre un nom de famille, donc il compte comme une entrée spécifique et désactive le caractère générique de cette famille : aux côtés de tous les ID Mantle, listez les préfixes de version ou les ID complets que vous souhaitez garder sélectionnables. Voir [Comportement de fusion](#merge-behavior).

372 379 

380<h3 id="block-specific-models-or-versions">

381 Bloquer des modèles ou des versions spécifiques

382</h3>

383 

384Une entrée `availableModels` telle que `claude-opus-5` permet également les versions ultérieures qui l'étendent, telles qu'Opus 5.5, dès que Claude Code les supporte. Deux paramètres gérés vous permettent de retenir une version, et les deux nécessitent Claude Code v2.1.283 ou ultérieur :

385 

386* [`deniedModels`](/docs/fr/settings-reference#deniedmodels) : listez les modèles à bloquer. Un modèle listé est bloqué même lorsque `availableModels` le permet, et la clé fonctionne également sans liste d'autorisation du tout. Une version qu'aucune entrée ne bloque reste autorisée

387* [`availableModelsMatch`](/docs/fr/settings-reference#availablemodelsmatch) : définissez-le sur `"exact"` pour que chaque ID de modèle dans `availableModels` ne permette que la version qu'il nomme. Une version plus récente d'un ID de modèle listé reste alors bloquée jusqu'à ce que vous l'ajoutiez à la liste

388 

389Les versions antérieures ignorent les deux clés, donc définissez également [`requiredMinimumVersion`](/docs/fr/settings-reference#requiredminimumversion) pour empêcher ces versions de démarrer.

390 

391Cet exemple permet les modèles Opus et Sonnet et bloque Opus 5.5 dans chaque orthographe, y compris les ID datés et spécifiques au fournisseur :

392 

393```json theme={null}

394{

395 "availableModels": ["opus", "sonnet"],

396 "deniedModels": ["claude-opus-5-5"]

397}

398```

399 

400Un modèle bloqué, qu'il soit nommé par `deniedModels` ou omis par une liste `"exact"`, est traité comme une sélection bloquée partout [où la liste d'autorisation s'applique](#restrict-model-selection). Il est masqué du sélecteur `/model`, et `/model <name>` le rejette. Si vous nommez un ID de modèle bloqué avec `--model`, `ANTHROPIC_MODEL`, ou le paramètre `model`, Claude Code le supprime au démarrage et résout l'option Par défaut à la place. Si un [hook](/docs/fr/hooks) ou une demande en arrière-plan nomme un modèle que `deniedModels` bloque, tel qu'un champ `model` de hook d'agent, cette demande s'exécute sur le modèle de la session à la place.

401 

402L'option Par défaut suit les deux clés également, que vous définissiez ou non [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model). Si vous le définissez avec un `availableModels` non vide, un défaut bloqué compte comme un modèle en dehors de la liste d'autorisation. Sinon, une option Par défaut qui se résoudrait à un modèle bloqué descend dans cet ordre :

403 

4041. La version la plus récente autorisée de la même famille

4052. Le modèle autorisé le plus récent de chaque famille de coût inférieur à tour de rôle : Sonnet, puis Haiku

4063. La première entrée `availableModels` qui nomme un modèle autorisé

407 

408Si aucun de ceux-ci n'est autorisé, une session démarrée sur l'option Par défaut [refuse de démarrer](/docs/fr/errors#managed-settings-block-the-default-model) avec une erreur qui nomme la clé à corriger. Une liste `"exact"` affecte l'option Par défaut uniquement lorsque la liste `availableModels` gérée nomme au moins un modèle ou une famille.

409 

410Claude Code lit les deux clés à partir des paramètres gérés uniquement. Si vous définissez l'une ou l'autre dans les paramètres utilisateur, projet ou local ou avec `--settings`, Claude Code l'ignore avec un avertissement.

411 

373<h3 id="organization-model-restrictions">412<h3 id="organization-model-restrictions">

374 Restrictions de modèle d'organisation413 Restrictions de modèle d'organisation

375</h3>414</h3>


417 456 

418Le modèle par défaut de l'organisation passe par ces vérifications de restriction avant d'être adopté :457Le modèle par défaut de l'organisation passe par ces vérifications de restriction avant d'être adopté :

419 458 

420* [`availableModels`](#restrict-model-selection) seul ne s'applique pas au modèle par défaut de l'organisation, de sorte qu'un modèle par défaut de l'organisation en dehors de la liste d'autorisation s'applique toujours. Lorsque [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) est également défini, un modèle par défaut de l'organisation en dehors de la liste d'autorisation est remappé à la première entrée de la liste d'autorisation, comme tout autre modèle Par défaut459* Avec la correspondance du préfixe par défaut, [`availableModels`](#restrict-model-selection) seul ne s'applique pas au modèle par défaut de l'organisation, de sorte qu'un modèle par défaut de l'organisation en dehors de la liste d'autorisation s'applique toujours. Lorsque [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) est également défini, un modèle par défaut de l'organisation en dehors de la liste d'autorisation est remappé à la première entrée de la liste d'autorisation, comme tout autre modèle Par défaut

421* un modèle par défaut de l'organisation que les [restrictions de modèle de l'organisation](#organization-model-restrictions) refusent pour votre compte est remplacé par le modèle le plus récent autorisé dans sa famille, ou une famille moins coûteuse lorsque chaque version de celle-ci est restreinte460* un modèle par défaut de l'organisation que les [restrictions de modèle de l'organisation](#organization-model-restrictions) refusent pour votre compte est remplacé par le modèle le plus récent autorisé dans sa famille, ou une famille moins coûteuse lorsque chaque version de celle-ci est restreinte

461* pour un modèle par défaut de l'organisation que `deniedModels` ou une liste `"exact"` bloque, voir [Bloquer des modèles ou des versions spécifiques](#block-specific-models-or-versions)

422* un modèle par défaut de l'organisation qui n'est pas disponible pour votre compte du tout est ignoré, et l'option Par défaut se résout comme elle le ferait [sans modèle par défaut de l'organisation](#default-model-setting)462* un modèle par défaut de l'organisation qui n'est pas disponible pour votre compte du tout est ignoré, et l'option Par défaut se résout comme elle le ferait [sans modèle par défaut de l'organisation](#default-model-setting)

423 463 

424À partir de la v2.1.199, lorsque le modèle par défaut de l'organisation est une famille de modèles différente du modèle par défaut habituel du type de votre compte, le sélecteur `/model` conserve une ligne séparée pour cette famille habituelle, de sorte que vous pouvez toujours basculer vers celle-ci pour une session. Dans les versions v2.1.196 à v2.1.198, cette ligne est absente du sélecteur.464À partir de la v2.1.199, lorsque le modèle par défaut de l'organisation est une famille de modèles différente du modèle par défaut habituel du type de votre compte, le sélecteur `/model` conserve une ligne séparée pour cette famille habituelle, de sorte que vous pouvez toujours basculer vers celle-ci pour une session. Dans les versions v2.1.196 à v2.1.198, cette ligne est absente du sélecteur.


451 491 

452Avant la v2.1.280, `default` se résolvait en Sonnet 5 sur Pro et Team Standard, et en Opus 5 sur Max, Team Premium, Enterprise, l'API Anthropic, Claude Platform sur AWS, Amazon Bedrock et Agent Platform de Google Cloud à partir de la v2.1.219. Avant la v2.1.219, `default` se résolvait en Opus 4.8 sur l'API Anthropic, Max, Team Premium et Enterprise avec paiement à l'usage à partir de la v2.1.154, et sur Claude Platform sur AWS, Amazon Bedrock et Agent Platform de Google Cloud à partir de la v2.1.207. Avant la v2.1.207, `default` se résolvait en Opus 4.7 sur Claude Platform sur AWS et en Sonnet 4.5 sur Amazon Bedrock et Agent Platform de Google Cloud.492Avant la v2.1.280, `default` se résolvait en Sonnet 5 sur Pro et Team Standard, et en Opus 5 sur Max, Team Premium, Enterprise, l'API Anthropic, Claude Platform sur AWS, Amazon Bedrock et Agent Platform de Google Cloud à partir de la v2.1.219. Avant la v2.1.219, `default` se résolvait en Opus 4.8 sur l'API Anthropic, Max, Team Premium et Enterprise avec paiement à l'usage à partir de la v2.1.154, et sur Claude Platform sur AWS, Amazon Bedrock et Agent Platform de Google Cloud à partir de la v2.1.207. Avant la v2.1.207, `default` se résolvait en Opus 4.7 sur Claude Platform sur AWS et en Sonnet 4.5 sur Amazon Bedrock et Agent Platform de Google Cloud.

453 493 

454Quand un administrateur a défini un [modèle par défaut de l'organisation](#organization-default-model), `default` se résout en ce modèle au lieu du modèle par défaut du type de compte ci-dessus. Nécessite Claude Code v2.1.196 ou ultérieure. `default` peut également se résoudre en le modèle que vous avez défini avec [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions), selon les conditions énumérées dans sa section.494Quand un administrateur a défini un [modèle par défaut de l'organisation](#organization-default-model), `default` se résout en ce modèle au lieu du modèle par défaut du type de compte ci-dessus. Nécessite Claude Code v2.1.196 ou ultérieure. `default` peut également se résoudre en le modèle que vous avez défini avec [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions), selon les conditions énumérées dans sa section, ou en le modèle [enregistré sur votre compte](#setting-your-model).

455 495 

456Quand les paramètres gérés [appliquent la liste d'autorisation pour le modèle par défaut](#enforce-the-allowlist-for-the-default-model) et que le modèle par défaut du type de compte ne figure pas dans `availableModels`, `default` se résout en Default appliqué au lieu du modèle par défaut du type de compte ci-dessus. Quand les deux s'appliquent, le modèle par défaut de l'organisation remplace d'abord le modèle par défaut du type de compte, puis l'application s'y applique : un modèle par défaut de l'organisation autorisé est conservé, tandis qu'un modèle en dehors de la liste se résout en Default appliqué.496Quand rien n'est enregistré sur votre compte, les paramètres gérés [appliquent la liste d'autorisation pour le modèle par défaut](#enforce-the-allowlist-for-the-default-model), et le modèle par défaut du type de compte ne figure pas dans `availableModels`, `default` se résout en Default appliqué au lieu du modèle par défaut du type de compte ci-dessus. Quand un modèle par défaut de l'organisation et une application s'appliquent tous les deux, le modèle par défaut de l'organisation remplace d'abord le modèle par défaut du type de compte, puis l'application s'y applique : un modèle par défaut de l'organisation autorisé est conservé, tandis qu'un modèle en dehors de la liste se résout en Default appliqué.

457 497 

458Les modèles Fable ne sont le modèle par défaut du type de compte sur aucun plan ou fournisseur. En choisir un avec `/model` l'enregistre comme modèle sélectionné dans vos paramètres utilisateur, de sorte que les sessions ultérieures commencent dessus. Pour le changement unique que Claude Code apporte à une sélection Fable 5 enregistrée dans la v2.1.257, voir [Travailler avec Fable](#work-with-fable).498Les modèles Fable ne sont le modèle par défaut du type de compte sur aucun plan ou fournisseur. En choisir un avec `/model` l'enregistre comme modèle sélectionné dans vos paramètres utilisateur, de sorte que les sessions ultérieures commencent dessus. Pour le changement unique que Claude Code apporte à une sélection Fable 5 enregistrée dans la v2.1.257, voir [Travailler avec Fable](#work-with-fable).

459 499 


513 Secours automatique du modèle553 Secours automatique du modèle

514</h3>554</h3>

515 555 

516Cette section couvre le secours basé sur le contenu des modèles Fable, Opus 5.5 et Opus 5. Pour le secours basé sur la disponibilité quand un modèle est surchargé ou indisponible, voir [Chaînes de modèles de secours](#fallback-model-chains).556Cette section couvre le secours basé sur le contenu des modèles Fable, Opus 5.5, Sonnet 5.5 et Opus 5. Pour le secours basé sur la disponibilité quand un modèle est surchargé ou indisponible, voir [Chaînes de modèles de secours](#fallback-model-chains).

517 557 

518Les modèles Fable, Opus 5.5 et Opus 5 s'exécutent avec des classificateurs de sécurité, qui signalent le plus souvent le contenu de cybersécurité et de biologie. Quand un classificateur signale une demande et que la catégorie signalée a un modèle de secours, Claude Code réexécute la demande sur ce modèle et affiche un avis dans la transcription. Pour ces deux catégories, le modèle de secours dépend du modèle qui a refusé :558Les modèles Fable, Opus 5.5, Sonnet 5.5 et Opus 5 s'exécutent avec des classificateurs de sécurité, qui signalent le plus souvent le contenu de cybersécurité et de biologie. Quand un classificateur signale une demande et que la catégorie signalée a un modèle de secours, Claude Code réexécute la demande sur ce modèle et affiche un avis dans la transcription. Pour ces deux catégories, le modèle de secours dépend du modèle qui a refusé :

519 559 

520* **Fable 5.1, Fable 5 et Opus 5.5** : les demandes signalées pour biologie se réexécutent sur Opus 5, et les demandes signalées pour cybersécurité se réexécutent sur Opus 4.8.560* **Fable 5.1, Fable 5 et Opus 5.5** : les demandes signalées pour biologie se réexécutent sur Opus 5, et les demandes signalées pour cybersécurité se réexécutent sur Opus 4.8.

561* **Sonnet 5.5** : les demandes signalées pour cybersécurité se réexécutent sur Sonnet 5. Les demandes signalées pour biologie se terminent par un refus à la place, car Sonnet 5.5 n'a pas de modèle de secours pour la biologie.

521* **Opus 5** : les demandes signalées pour cybersécurité se réexécutent sur Opus 4.8. Les demandes signalées pour biologie se terminent par un refus à la place, car Opus 5 exécute ses propres classificateurs de biologie sans modèle de secours.562* **Opus 5** : les demandes signalées pour cybersécurité se réexécutent sur Opus 4.8. Les demandes signalées pour biologie se terminent par un refus à la place, car Opus 5 exécute ses propres classificateurs de biologie sans modèle de secours.

522 563 

523Sur Amazon Bedrock, Agent Platform de Google Cloud et Microsoft Foundry, Claude Code résout ces cibles via votre déploiement à la place, et si vous définissez `ANTHROPIC_DEFAULT_OPUS_MODEL`, les catégories qui ont un secours se réexécutent sur le modèle épinglé ; voir [Activer le secours sur Bedrock, Agent Platform et Foundry](#enable-fallback-on-bedrock-agent-platform-and-foundry).564Sur Amazon Bedrock, Agent Platform de Google Cloud et Microsoft Foundry, Claude Code résout ces cibles via les ID de modèle de votre déploiement à la place. Voir [Activer le secours sur Bedrock, Agent Platform et Foundry](#enable-fallback-on-bedrock-agent-platform-and-foundry).

524 565 

525Après un secours, la session continue sur le modèle de secours. Pour revenir à votre modèle d'origine, exécutez [`/model`](#setting-your-model).566Après un secours, la session continue sur le modèle de secours. Pour revenir à votre modèle d'origine, exécutez [`/model`](#setting-your-model).

526 567 


544 585 

545Certains cas se comportent différemment :586Certains cas se comportent différemment :

546 587 

547* Quand la catégorie signalée n'a pas de modèle de secours, comme un signal de biologie sur Opus 5, Claude Code n'affiche pas l'invite et la demande se termine par le refus.588* Quand la catégorie signalée n'a pas de modèle de secours, comme un signal de biologie sur Opus 5 ou Sonnet 5.5, Claude Code n'affiche pas l'invite et la demande se termine par le refus.

548* Si les deux modèles signalent la même demande, vous pouvez modifier l'invite et réessayer, ou démarrer une nouvelle session.589* Si les deux modèles signalent la même demande, vous pouvez modifier l'invite et réessayer, ou démarrer une nouvelle session.

549* Sur les sessions mobiles [Claude Code sur le web](/docs/fr/claude-code-on-the-web), la modification et la nouvelle tentative ne sont pas prises en charge. Basculez les modèles, ou continuez la session à partir d'un navigateur de bureau ou de l'application de bureau.590* Sur les sessions mobiles [Claude Code sur le web](/docs/fr/claude-code-on-the-web), la modification et la nouvelle tentative ne sont pas prises en charge. Basculez les modèles, ou continuez la session à partir d'un navigateur de bureau ou de l'application de bureau.

550* En [mode non interactif](/docs/fr/cli-reference#cli-flags) et les intégrations SDK qui ne peuvent pas afficher l'invite, une demande signalée termine le tour par un refus à la place.591* En [mode non interactif](/docs/fr/cli-reference#cli-flags) et les intégrations SDK qui ne peuvent pas afficher l'invite, une demande signalée termine le tour par un refus à la place.


556 597 

557Sur [Amazon Bedrock](/docs/fr/amazon-bedrock), [Agent Platform de Google Cloud](/docs/fr/google-vertex-ai) et [Microsoft Foundry](/docs/fr/microsoft-foundry), les ID de modèle sont spécifiques au fournisseur, de sorte que le secours automatique ne fonctionne que quand Claude Code peut identifier les deux modèles impliqués :598Sur [Amazon Bedrock](/docs/fr/amazon-bedrock), [Agent Platform de Google Cloud](/docs/fr/google-vertex-ai) et [Microsoft Foundry](/docs/fr/microsoft-foundry), les ID de modèle sont spécifiques au fournisseur, de sorte que le secours automatique ne fonctionne que quand Claude Code peut identifier les deux modèles impliqués :

558 599 

559* Claude Code doit reconnaître le modèle actuel comme une source de secours. Fable 5.1 et Fable 5 sont reconnus quand l'ID de modèle contient `claude-fable-5`, correspond à la valeur de `ANTHROPIC_DEFAULT_FABLE_MODEL`, ou est mappé avec [`modelOverrides`](#override-model-ids-per-version). Opus 5.5 et Opus 5 sont reconnus par leur ID de modèle du fournisseur ou un mappage [`modelOverrides`](#override-model-ids-per-version).600* Claude Code doit reconnaître le modèle actuel comme une source de secours. Fable 5.1 et Fable 5 sont reconnus quand l'ID de modèle contient `claude-fable-5`, correspond à la valeur de `ANTHROPIC_DEFAULT_FABLE_MODEL`, ou est mappé avec [`modelOverrides`](#override-model-ids-per-version). Opus 5.5, Sonnet 5.5 et Opus 5 sont reconnus par leur ID de modèle du fournisseur ou un mappage [`modelOverrides`](#override-model-ids-per-version).

560* Le modèle de secours doit se résoudre dans votre déploiement. Si vous définissez `ANTHROPIC_DEFAULT_OPUS_MODEL`, les demandes signalées se réexécutent sur ce modèle pour chaque catégorie qui a un secours ; un signal de biologie sur Opus 5 se termine toujours par un refus. Si vous ne le définissez pas, les demandes signalées pour cybersécurité se réexécutent sur une entrée Opus 4.8 dans la liste des modèles du fournisseur, et les demandes signalées pour biologie d'un modèle Fable ou Opus 5.5 sur une entrée Opus 5.601* Une cible Opus doit se résoudre dans votre déploiement, quel que soit le modèle qui a refusé : définissez `ANTHROPIC_DEFAULT_OPUS_MODEL`, ou conservez une entrée Opus 4.8 dans la liste des modèles du fournisseur. Sans une, le secours reste désactivé pour chaque modèle source, y compris Sonnet 5.5, et les demandes signalées se terminent par un refus.

602* Le modèle de secours de la catégorie signalée doit se résoudre dans votre déploiement. À partir d'un modèle Fable, Opus 5.5 ou Opus 5, si vous définissez `ANTHROPIC_DEFAULT_OPUS_MODEL`, les demandes signalées se réexécutent sur ce modèle pour chaque catégorie qui a un secours ; un signal de biologie sur Opus 5 se termine toujours par un refus. Si vous ne le définissez pas, les demandes signalées pour cybersécurité se réexécutent sur l'entrée Opus 4.8, et les demandes signalées pour biologie d'un modèle Fable ou Opus 5.5 sur une entrée Opus 5. À partir de Sonnet 5.5, les demandes signalées pour cybersécurité se réexécutent sur le modèle que vous avez défini dans `ANTHROPIC_DEFAULT_SONNET_MODEL`, ou sur une entrée Sonnet 5 dans la liste des modèles du fournisseur si vous ne le définissez pas.

603 

604Si l'un ou l'autre modèle ne peut pas être identifié, Claude Code ne bascule pas. La demande signalée se termine par un message de refus, et vous pouvez basculer les modèles avec [`/model`](#setting-your-model) et réessayer. Pour rendre les deux modèles identifiables, définissez les épingles pour votre modèle source :

561 605 

562Si l'un ou l'autre modèle ne peut pas être identifié, Claude Code ne bascule pas automatiquement. La demande signalée se termine par un message de refus, et vous pouvez basculer les modèles avec [`/model`](#setting-your-model) et réessayer. Définir `ANTHROPIC_DEFAULT_FABLE_MODEL` sur votre ID de modèle Fable active la reconnaissance Fable. Définir `ANTHROPIC_DEFAULT_OPUS_MODEL` sur un ID de modèle Opus donne aux catégories signalées une cible de secours, sauf si l'épingle nomme un modèle en dehors de la famille Opus ou le modèle qui a refusé ; alors Claude Code ne bascule pas et le refus tient.606* **Modèles Fable** : définissez `ANTHROPIC_DEFAULT_FABLE_MODEL` sur votre ID de modèle Fable pour que Claude Code le reconnaisse comme une source de secours.

607* **Chaque modèle source** : définissez `ANTHROPIC_DEFAULT_OPUS_MODEL` sur un ID de modèle Opus pour activer le secours et donner aux catégories signalées une cible. Une épingle qui nomme un modèle en dehors de la famille Opus, ou le modèle qui a refusé, laisse le refus tenir.

608* **Sonnet 5.5** : en plus de l'épingle Opus, définissez `ANTHROPIC_DEFAULT_SONNET_MODEL` ou conservez une entrée Sonnet 5 dans la liste des modèles du fournisseur pour fournir le modèle sur lequel la demande se réexécute. Une épingle Sonnet qui nomme un modèle en dehors de la famille Sonnet, ou Sonnet 5.5 lui-même, laisse le refus tenir.

563 609 

564<h4 id="security-research-and-biology-workloads">610<h4 id="security-research-and-biology-workloads">

565 Recherche en sécurité et charges de travail en biologie611 Recherche en sécurité et charges de travail en biologie

566</h4>612</h4>

567 613 

568Les charges de travail en sécurité offensive ou en biologie, y compris les tests de pénétration, les exercices Capture the Flag (CTF) et les bases de code adjacentes à la biologie, déclenchent fréquemment le secours, souvent à la première demande. Pour un travail substantiel en biologie sur Fable 5.1, Fable 5 ou Opus 5.5, Claude Code déplace la session vers Opus 5 à la première demande signalée, et les demandes signalées pour biologie ultérieures se terminent par des refus là, car Opus 5 n'a pas de secours pour la biologie. Sur Opus 5, vous obtenez ces refus à partir de la première demande signalée.614Les charges de travail en sécurité offensive ou en biologie, y compris les tests de pénétration, les exercices Capture the Flag (CTF) et les bases de code adjacentes à la biologie, déclenchent fréquemment le secours, souvent à la première demande. Pour un travail substantiel en biologie sur Fable 5.1, Fable 5 ou Opus 5.5, Claude Code déplace la session vers Opus 5 à la première demande signalée, et les demandes signalées pour biologie ultérieures se terminent par des refus là, car Opus 5 n'a pas de secours pour la biologie. Sur Opus 5 et Sonnet 5.5, vous obtenez ces refus à partir de la première demande signalée.

569 615 

570C'est un routage attendu pour ces domaines, pas un signal de compte. Si votre organisation a besoin de la capacité de classe Fable pour ce travail, demandez à votre équipe de compte Anthropic les programmes d'accès de confiance.616C'est un routage attendu pour ces domaines, pas un signal de compte. Si votre organisation a besoin de la capacité de classe Fable pour ce travail, demandez à votre équipe de compte Anthropic les programmes d'accès de confiance.

571 617 


580| Modèle | Niveaux |626| Modèle | Niveaux |

581| :- | :- |627| :- | :- |

582| Fable 5.1 et Fable 5 | `low`, `medium`, `high`, `xhigh`, `max` |628| Fable 5.1 et Fable 5 | `low`, `medium`, `high`, `xhigh`, `max` |

583| Opus 5.5, Opus 5, Sonnet 5, Opus 4.8 et Opus 4.7 | `low`, `medium`, `high`, `xhigh`, `max` |629| Opus 5.5, Sonnet 5.5, Opus 5, Sonnet 5, Opus 4.8 et Opus 4.7 | `low`, `medium`, `high`, `xhigh`, `max` |

584| Opus 4.6 et Sonnet 4.6 | `low`, `medium`, `high`, `max` |630| Opus 4.6 et Sonnet 4.6 | `low`, `medium`, `high`, `max` |

585 631 

586Si vous définissez un niveau que le modèle actif ne supporte pas, Claude Code revient au niveau le plus élevé supporté au niveau ou en dessous de celui que vous avez défini. Par exemple, `xhigh` s'exécute comme `high` sur Opus 4.6. Votre organisation ou vos propres paramètres peuvent également limiter les niveaux qu'un modèle offre ; voir [Limites d'effort de l'organisation](#organization-effort-limits).632Si vous définissez un niveau que le modèle actif ne supporte pas, Claude Code revient au niveau le plus élevé supporté au niveau ou en dessous de celui que vous avez défini. Par exemple, `xhigh` s'exécute comme `high` sur Opus 4.6. Votre organisation ou vos propres paramètres peuvent également limiter les niveaux qu'un modèle offre ; voir [Limites d'effort de l'organisation](#organization-effort-limits).

587 633 

588Avec le paramètre [`ultracode`](/docs/fr/settings-reference#ultracode) désactivé, Claude Code résout le niveau d'effort de la session dans cet ordre, en prenant le premier qui s'applique :634Claude Code résout le niveau d'effort de la session dans cet ordre, en prenant le premier qui s'applique :

589 635 

5901. Un choix explicite : la variable d'environnement [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/fr/env-vars#variables), le lancement avec `--effort`, ou `/effort` dans la session ([un `/effort` non interactif a un effet plus étroit](#non-interactive-effort))6361. Un choix explicite : la variable d'environnement [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/fr/env-vars#variables), le lancement avec `--effort`, ou `/effort` dans la session ([un `/effort` non interactif a un effet plus étroit](#non-interactive-effort))

5912. Vos paramètres : le niveau que vous avez enregistré pour le modèle ou une clé [`effortLevel`](/docs/fr/settings-reference#effortlevel), avec la priorité entre eux et entre les fichiers de paramètres énoncée à [`modelSettings`](/docs/fr/settings-reference#modelsettings)6372. Vos paramètres : le niveau que vous avez enregistré pour le modèle ou une clé [`effortLevel`](/docs/fr/settings-reference#effortlevel), avec la priorité entre eux et entre les fichiers de paramètres énoncée à [`modelSettings`](/docs/fr/settings-reference#modelsettings)

5923. L'effort par défaut du modèle : `high` sur chaque modèle qui supporte l'effort, sauf qu'Opus 5.5 par défaut à `medium`, Opus 4.7 par défaut à `xhigh`, et, quand votre organisation définit un niveau d'effort par défaut pour son [modèle par défaut de l'organisation](#organization-default-model), ce niveau est le défaut quand vous exécutez ce modèle6383. L'effort par défaut du modèle : `high` sur chaque modèle qui supporte l'effort, sauf qu'Opus 5.5 et Sonnet 5.5 par défaut à `medium`, Opus 4.7 par défaut à `xhigh`, et, quand votre organisation définit un niveau d'effort par défaut pour son [modèle par défaut de l'organisation](#organization-default-model), ce niveau est le défaut quand vous exécutez ce modèle

593 639 

594Opus 5.5 démarre à `medium` sauf si l'une des sources ci-dessus définit un niveau pour lui, et un `effortLevel` de niveau supérieur dans votre fichier de paramètres utilisateur ne compte pas pour Opus 5.5. Cette clé est la forme plus ancienne que `/effort` écrivait avant que Claude Code enregistre les niveaux par modèle : elle continue à s'appliquer où elle s'appliquait avant, sur Opus 5, Fable 5.1 et les modèles antérieurs, tandis qu'Opus 5.5 et les modèles publiés après lui démarrent à leur propre défaut jusqu'à ce que vous choisissiez un niveau pour eux avec `/effort` ou le sélecteur `/model`. Un `effortLevel` de niveau supérieur dans les paramètres de projet, locaux ou gérés, ou un passé avec `--settings`, s'applique à chaque modèle.640Opus 5.5 démarre à `medium` sauf si l'une des sources ci-dessus définit un niveau pour lui, et un `effortLevel` de niveau supérieur dans votre fichier de paramètres utilisateur ne compte pas pour Opus 5.5. Cette clé est la forme plus ancienne que `/effort` écrivait avant que Claude Code enregistre les niveaux par modèle : elle continue à s'appliquer où elle s'appliquait avant, sur Opus 5, Fable 5.1 et les modèles antérieurs, tandis qu'Opus 5.5 et les modèles publiés après lui démarrent à leur propre défaut jusqu'à ce que vous choisissiez un niveau pour eux avec `/effort` ou le sélecteur `/model`. Un `effortLevel` de niveau supérieur dans les paramètres de projet, locaux ou gérés, ou un passé avec `--settings`, s'applique à chaque modèle.

595 641 


610 656 

611Quand vous définissez un niveau avec `/effort` dans une exécution [`-p`](/docs/fr/headless), Claude Code l'applique à cette session uniquement et ne l'enregistre pas comme votre défaut.657Quand vous définissez un niveau avec `/effort` dans une exécution [`-p`](/docs/fr/headless), Claude Code l'applique à cette session uniquement et ne l'enregistre pas comme votre défaut.

612 658 

613Le menu `/effort` offre également `ultracode`. Ultracode est un paramètre Claude Code plutôt qu'un niveau d'effort du modèle : il envoie `xhigh` au modèle et a en outre Claude orchestrer les [flux de travail dynamiques](/docs/fr/workflows) pour les tâches substantielles. Pour où il peut être défini de manière persistante, voir le paramètre [`ultracode`](/docs/fr/settings-reference#ultracode).659Le curseur `/effort` a également un basculement **Ultracode**. Ultracode est un paramètre Claude Code plutôt qu'un niveau d'effort du modèle : avec lui activé, Claude orchestre les [flux de travail dynamiques](/docs/fr/workflows) pour les tâches substantielles, à quel que soit le niveau d'effort auquel la session s'exécute. Pour où il peut être défini de manière persistante, voir le paramètre [`ultracode`](/docs/fr/settings-reference#ultracode).

660 

661Activer ou désactiver ultracode avec `/effort` ou le paramètre `ultracode` laisse le niveau d'effort inchangé. L'indicateur `--effort ultracode` et la valeur Agent SDK `effortLevel: "ultracode"` l'activent et définissent également le niveau sur `xhigh`. Choisir un niveau dans le curseur `/effort` ou le sélecteur `/model` laisse ultracode comme il était.

614 662 

615Vous pouvez activer ultracode via l'une des options suivantes :663Vous pouvez activer ultracode via l'une des options suivantes :

616 664 

617* **`/effort`** : exécutez `/effort ultracode`, ou sélectionnez-le dans le menu665* **`/effort`** : exécutez `/effort ultracode` pour l'activer pour la session actuelle ou `/effort ultracode off` pour le désactiver. Dans le curseur `/effort`, appuyez sur `Tab` pour basculer le basculement **Ultracode**, puis `Entrée` pour l'appliquer

618* **Indicateur `--effort`** : lancez avec `claude --effort ultracode`, qui démarre la session à l'effort `xhigh` avec ultracode activé666* **Indicateur `--effort`** : lancez avec `claude --effort ultracode`, qui démarre la session à l'effort `xhigh` avec ultracode activé

619* **Paramètre `ultracode`** : définissez [`"ultracode": true`](/docs/fr/settings-reference#ultracode) dans un fichier de paramètres, avec `--settings`, ou dans une demande de contrôle Agent SDK. Une demande [`applyFlagSettings()`](/docs/fr/agent-sdk/typescript#applyflagsettings) accepte également `effortLevel: "ultracode"`667* **Paramètre `ultracode`** : définissez [`"ultracode": true`](/docs/fr/settings-reference#ultracode) dans un fichier de paramètres, avec `--settings`, ou dans une demande de contrôle Agent SDK. Une demande [`applyFlagSettings()`](/docs/fr/agent-sdk/typescript#applyflagsettings) accepte également `effortLevel: "ultracode"`, qui l'active et définit le niveau d'effort sur `xhigh`

620* **Sélecteur `/model`** : déplacez le curseur d'effort vers `ultracode` avec les touches fléchées pendant que vous choisissez un modèle. Claude Code l'active pour la session actuelle, même quand vous enregistrez ce modèle comme votre défaut668 

669La forme `/effort ultracode off`, le basculement du curseur et le maintien d'ultracode activé aux niveaux d'effort autres que `xhigh` nécessitent Claude Code v2.1.284 ou ultérieure. Avant la v2.1.284, l'activation d'ultracode définissait la session sur l'effort `xhigh`, choisir un autre niveau le désactivait, et un plafond d'effort en dessous de `xhigh` le rendait indisponible.

621 670 

622Passer `ultracode` à l'indicateur `--effort` ou à la valeur Agent SDK `effortLevel` nécessite Claude Code v2.1.203 ou ultérieure. Avant la v2.1.203, `--effort ultracode` imprimait `Unknown --effort value 'ultracode'` et la session démarrait à l'effort par défaut.671Passer `ultracode` à l'indicateur `--effort` ou à la valeur Agent SDK `effortLevel` nécessite Claude Code v2.1.203 ou ultérieure. Avant la v2.1.203, `--effort ultracode` imprimait `Unknown --effort value 'ultracode'` et la session démarrait à l'effort par défaut.

623 672 

624Le paramètre `effortLevel` persisté et la variable d'environnement `CLAUDE_CODE_EFFORT_LEVEL` n'acceptent pas `ultracode`. Quand `CLAUDE_CODE_EFFORT_LEVEL` est défini sur un niveau autre que `xhigh`, les demandes s'exécutent à ce niveau et l'orchestration de flux de travail d'ultracode reste inactive. Sélectionner ultracode affiche alors un avertissement que la variable d'environnement remplace l'effort pour la session.673Le paramètre `effortLevel` persisté et la variable d'environnement `CLAUDE_CODE_EFFORT_LEVEL` n'acceptent pas `ultracode`. Si `CLAUDE_CODE_EFFORT_LEVEL` ou un [plafond d'effort](#organization-effort-limits) définit le niveau de la session, ultracode reste activé à ce niveau.

625 674 

626<span id="when-ultracode-is-available" />675<span id="when-ultracode-is-available" />

627 676 


629 678 

630* [Les flux de travail sont désactivés](/docs/fr/workflows#turn-workflows-off)679* [Les flux de travail sont désactivés](/docs/fr/workflows#turn-workflows-off)

631* Le modèle ne supporte pas l'effort `xhigh`680* Le modèle ne supporte pas l'effort `xhigh`

632* Un [plafond d'effort](#organization-effort-limits) en dessous de `xhigh` s'applique au modèle

633 681 

634Dans ces cas, `--effort ultracode` démarre la session avec ultracode désactivé, au niveau d'effort le plus élevé que le modèle et tout plafond permettent, jusqu'à `xhigh`.682Dans ces cas, `--effort ultracode` démarre la session avec ultracode désactivé, au niveau d'effort le plus élevé que le modèle et tout plafond permettent, jusqu'à `xhigh`.

635 683 


641 689 

642| Niveau | Quand l'utiliser |690| Niveau | Quand l'utiliser |

643| :- | :- |691| :- | :- |

644| `low` | Réservez pour les tâches courtes, délimitées, sensibles à la latence qui ne sont pas sensibles à l'intelligence |692| `low` | Échanges rapides où vous examinez chaque résultat, comme le brainstorming, un premier brouillon, ou une petite modification comme un renommage |

645| `medium` | Réduit l'utilisation de jetons pour le travail sensible aux coûts qui peut faire des compromis sur une certaine intelligence. Le défaut sur Opus 5.5 |693| `medium` | Le défaut sur Opus 5.5 et Sonnet 5.5, où il convient au travail d'ingénierie quotidien avec une portée claire, comme l'implémentation d'une nouvelle fonctionnalité. Sur d'autres modèles, réduit l'utilisation de jetons pour le travail sensible aux coûts qui peut faire des compromis sur une certaine intelligence |

646| `high` | Équilibre l'utilisation de jetons et l'intelligence. Le défaut sur chaque modèle sauf Opus 5.5 et Opus 4.7 |694| `high` | Travail où la vérification compte ou les cas limites sont probables, comme corriger un bug dans une base de code existante. Le défaut sur chaque modèle sauf Opus 5.5, Sonnet 5.5 et Opus 4.7 |

647| `xhigh` | Raisonnement plus profond à une dépense de jetons plus élevée. Le défaut sur Opus 4.7 |695| `xhigh` | Raisonnement plus profond à une dépense de jetons plus élevée. Le défaut sur Opus 4.7 |

648| `max` | Peut améliorer les performances sur les tâches exigeantes mais peut montrer des rendements décroissants et est sujet à la surréflexion. Testez avant d'adopter largement |696| `max` | Problèmes difficiles que vous voulez que Claude travaille sans vous, comme trouver des vulnérabilités de sécurité. `max` peut montrer des rendements décroissants et est sujet à la surréflexion, donc testez avant d'adopter largement |

649| `ultracode` | Un paramètre Claude Code qui planifie un [flux de travail dynamique](/docs/fr/workflows) pour chaque tâche substantielle avec un raisonnement `xhigh` par message |697| `ultracode` | Un paramètre Claude Code plutôt qu'un niveau : planifie un [flux de travail dynamique](/docs/fr/workflows) pour chaque tâche substantielle à quel que soit le niveau d'effort |

698 

699Dans les tests sur Opus 5.5 et Fable 5.1, Claude à un niveau supérieur a testé plus de cas limites et vérifié plus de son travail avant de répondre. Il a également fait plus de choix de son propre chef. À un niveau inférieur, Claude a retourné un point de départ plus tôt, ce qui convient au travail où vous examinez chaque résultat et dirigez l'étape suivante. Pour voir les mêmes tâches s'exécuter à chaque niveau, lisez [Utiliser Claude Code : Dépenser votre effort](https://claude.dev/blog/spending-your-effort/) sur le blog.

650 700 

651L'échelle d'effort est calibrée par modèle, de sorte que le même nom de niveau ne représente pas la même valeur sous-jacente entre les modèles.701L'échelle d'effort est calibrée par modèle, de sorte que le même nom de niveau ne représente pas la même valeur sous-jacente entre les modèles.

652 702 

703Opus 5.5 [par défaut à `medium`](#adjust-effort-level), un niveau en dessous du défaut d'Opus 5 de `high`. Dans les tests d'Anthropic, Opus 5.5 à `medium` correspond ou dépasse Opus 5 à `high` sur les évaluations de codage et de travail de connaissance. À un niveau donné, Opus 5.5 tend à penser plus par tour qu'Opus 5. Quand vous passez d'Opus 5 à Opus 5.5, commencez à `medium` plutôt que de reporter le niveau que vous avez utilisé sur Opus 5. Pour tester les niveaux par rapport à votre propre travail, voir [Calibrer l'effort](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/prompting-claude-opus-5-5#calibrate-effort) dans le guide d'invite Opus 5.5.

704 

653<h4 id="use-ultrathink-for-one-off-deep-reasoning">705<h4 id="use-ultrathink-for-one-off-deep-reasoning">

654 Utiliser ultrathink pour un raisonnement profond ponctuel706 Utiliser ultrathink pour un raisonnement profond ponctuel

655</h4>707</h4>


682 734 

683Le raisonnement adaptatif rend la réflexion optionnelle à chaque étape, de sorte que Claude peut répondre plus rapidement aux invites de routine et réserver une réflexion plus profonde pour les étapes qui en bénéficient. Si vous voulez que Claude pense plus ou moins souvent que le niveau actuel ne produit, vous pouvez le dire directement dans votre invite ou dans `CLAUDE.md` ; le modèle répond à cette orientation dans son paramètre d'effort.735Le raisonnement adaptatif rend la réflexion optionnelle à chaque étape, de sorte que Claude peut répondre plus rapidement aux invites de routine et réserver une réflexion plus profonde pour les étapes qui en bénéficient. Si vous voulez que Claude pense plus ou moins souvent que le niveau actuel ne produit, vous pouvez le dire directement dans votre invite ou dans `CLAUDE.md` ; le modèle répond à cette orientation dans son paramètre d'effort.

684 736 

685Les modèles Fable, Sonnet 5 et Opus 4.7 et ultérieur utilisent toujours le raisonnement adaptatif. Le mode de budget de réflexion fixe et `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` ne s'y appliquent pas.737Les modèles Fable, Sonnet 5 et ultérieur, et Opus 4.7 et ultérieur utilisent toujours le raisonnement adaptatif. Le mode de budget de réflexion fixe et `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` ne s'y appliquent pas.

686 738 

687Sur Opus 4.6 et Sonnet 4.6, vous pouvez définir `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` pour revenir au budget de réflexion fixe précédent contrôlé par `MAX_THINKING_TOKENS`. Voir [variables d'environnement](/docs/fr/env-vars).739Sur Opus 4.6 et Sonnet 4.6, vous pouvez définir `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` pour revenir au budget de réflexion fixe précédent contrôlé par `MAX_THINKING_TOKENS`. Voir [variables d'environnement](/docs/fr/env-vars).

688 740 


696| :- | :- |748| :- | :- |

697| Basculer pour la session actuelle | Appuyez sur `Option+T` sur macOS ou `Alt+T` sur Windows et Linux |749| Basculer pour la session actuelle | Appuyez sur `Option+T` sur macOS ou `Alt+T` sur Windows et Linux |

698| Définir le défaut global | Exécutez `/config` et basculez le mode de réflexion. Enregistré comme `alwaysThinkingEnabled` dans `~/.claude/settings.json` |750| Définir le défaut global | Exécutez `/config` et basculez le mode de réflexion. Enregistré comme `alwaysThinkingEnabled` dans `~/.claude/settings.json` |

699| Désactiver via une variable d'environnement | Définissez [`MAX_THINKING_TOKENS=0`](/docs/fr/env-vars), qui désactive la réflexion sur l'API Anthropic sauf sur Opus 5.5 et les modèles Fable. Sur les [fournisseurs tiers](/docs/fr/third-party-integrations), Claude Code omet le paramètre `thinking` à la place, et les modèles de raisonnement adaptatif peuvent toujours penser. D'autres valeurs s'appliquent uniquement avec un [budget de réflexion fixe](#adaptive-reasoning-and-fixed-thinking-budgets) |751| Désactiver via une variable d'environnement | Définissez [`MAX_THINKING_TOKENS=0`](/docs/fr/env-vars), qui désactive la réflexion sur l'API Anthropic sauf sur Opus 5.5, Sonnet 5.5 et les modèles Fable. Sur les [fournisseurs tiers](/docs/fr/third-party-integrations), Claude Code omet le paramètre `thinking` à la place, et les modèles de raisonnement adaptatif peuvent toujours penser. D'autres valeurs s'appliquent uniquement avec un [budget de réflexion fixe](#adaptive-reasoning-and-fixed-thinking-budgets) |

700 752 

701Vous ne pouvez pas désactiver la réflexion sur Opus 5.5 ou les modèles Fable. Le basculement de session, `alwaysThinkingEnabled` et `MAX_THINKING_TOKENS=0` n'ont aucun effet là, et le modèle décide à chaque étape combien penser en fonction du niveau d'effort.753Vous ne pouvez pas désactiver la réflexion sur Opus 5.5, Sonnet 5.5 ou les modèles Fable. Le basculement de session, `alwaysThinkingEnabled` et `MAX_THINKING_TOKENS=0` n'ont aucun effet là, et le modèle décide à chaque étape combien penser en fonction du niveau d'effort.

702 754 

703Claude Code réduit la sortie de réflexion par défaut. Appuyez sur `Ctrl+O` pour basculer le mode verbeux et voir le raisonnement en tant que texte gris en italique. Les sessions interactives sur l'API Anthropic reçoivent des blocs de réflexion édités par défaut, donc définissez `showThinkingSummaries: true` dans les [paramètres](/docs/fr/settings) si vous voulez les résumés complets disponibles quand vous développez. Vous êtes facturé pour tous les jetons de réflexion générés, même quand réduits ou édités.755Claude Code réduit la sortie de réflexion par défaut. Appuyez sur `Ctrl+O` pour basculer le mode verbeux et voir le raisonnement en tant que texte gris en italique. Les sessions interactives sur l'API Anthropic reçoivent des blocs de réflexion édités par défaut, donc définissez `showThinkingSummaries: true` dans les [paramètres](/docs/fr/settings) si vous voulez les résumés complets disponibles quand vous développez. Vous êtes facturé pour tous les jetons de réflexion générés, même quand réduits ou édités.

704 756 


706 Contexte étendu758 Contexte étendu

707</h3>759</h3>

708 760 

709Fable 5.1, Fable 5, Sonnet 5, Opus 4.6 et ultérieur, et Sonnet 4.6 supportent une [fenêtre de contexte de 1 million de jetons](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) pour les sessions longues avec de grandes bases de code.761Fable 5.1, Fable 5, Sonnet 5 et ultérieur, Opus 4.6 et ultérieur, et Sonnet 4.6 supportent une [fenêtre de contexte de 1 million de jetons](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) pour les sessions longues avec de grandes bases de code.

710 762 

711Sur l'API Anthropic, Fable 5.1, Fable 5, Sonnet 5 et Opus 4.7 et ultérieur s'exécutent avec la fenêtre de 1M par défaut. Vous ne sélectionnez pas une variante `[1m]` ou n'activez pas les crédits d'utilisation pour la fenêtre de 1M sur ces modèles. L'utilisation de Fable elle-même peut être facturée aux crédits d'utilisation sur certains plans ; voir [Fable et crédits d'utilisation](#fable-and-usage-credits).763Sur l'API Anthropic, Fable 5.1, Fable 5, Sonnet 5 et ultérieur, et Opus 4.7 et ultérieur s'exécutent avec la fenêtre de 1M par défaut sur chaque plan, y compris Pro. Vous ne sélectionnez pas une variante `[1m]` ou n'activez pas les crédits d'utilisation pour la fenêtre de 1M sur ces modèles. L'utilisation de Fable elle-même peut être facturée aux crédits d'utilisation sur certains plans ; voir [Fable et crédits d'utilisation](#fable-and-usage-credits).

712 764 

713Opus 4.6 et Sonnet 4.6 n'atteignent 1M que via leur variante `[1m]`, et l'accès à cette variante dépend de votre plan. Sur les plans Max, Team et Enterprise, y compris les sièges Team Standard et Team Premium, Opus 4.6 avec un contexte de 1M est inclus avec votre abonnement. Sonnet 4.6 avec un contexte de 1M nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) sur chaque plan d'abonnement, y compris Max.765Opus 4.6 et Sonnet 4.6 n'atteignent 1M que via leur variante `[1m]`, et l'accès à cette variante dépend de votre plan. Sur les plans Max, Team et Enterprise, y compris les sièges Team Standard et Team Premium, Opus 4.6 avec un contexte de 1M est inclus avec votre abonnement. Sonnet 4.6 avec un contexte de 1M nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) sur chaque plan d'abonnement, y compris Max.

714 766 


742/model claude-opus-4-8[1m]794/model claude-opus-4-8[1m]

743```795```

744 796 

745<h4 id="sonnet-5-context-window">797<h4 id="sonnet-5-5-and-sonnet-5-context-window">

746 Fenêtre de contexte Sonnet 5798 Fenêtre de contexte Sonnet 5.5 et Sonnet 5

747</h4>799</h4>

748 800 

749Sur l'API Anthropic, Sonnet 5 s'exécute toujours avec la fenêtre de contexte de 1M. Il n'y a pas de variante de 200K, pas de suffixe `[1m]` à sélectionner, et aucun crédit d'utilisation requis sur aucun plan. Les sessions se compactent automatiquement avant que la fenêtre ne se remplisse, à environ 967K jetons par défaut ; définissez [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/fr/env-vars) pour choisir un seuil différent.801Sur l'API Anthropic, Sonnet 5.5 et Sonnet 5 s'exécutent toujours avec la fenêtre de contexte de 1M. Il n'y a pas de variante de 200K, pas de suffixe `[1m]` à sélectionner, et aucun crédit d'utilisation requis sur aucun plan. Les sessions se compactent automatiquement avant que la fenêtre ne se remplisse, à environ 967K jetons par défaut ; définissez [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/fr/env-vars) pour choisir un seuil différent.

750 802 

751Deux configurations budgètent la fenêtre à 200K à la place :803Deux configurations budgètent la fenêtre à 200K à la place :

752 804 

753* **Passerelle LLM** : quand `ANTHROPIC_BASE_URL` pointe vers une [passerelle](/docs/fr/llm-gateway), Claude Code ne peut pas vérifier le support de 1M. Pour utiliser la fenêtre complète, sélectionnez Sonnet 5 (1M context) dans le sélecteur de modèle, qui mappe à `sonnet[1m]`.805* **Passerelle LLM** : quand `ANTHROPIC_BASE_URL` pointe vers une [passerelle](/docs/fr/llm-gateway), Claude Code ne peut pas vérifier le support de 1M. Pour utiliser la fenêtre complète, sélectionnez Sonnet 5.5 (1M context) dans le sélecteur de modèle, qui mappe à `sonnet[1m]`, ou exécutez `/model claude-sonnet-5[1m]` pour Sonnet 5.

754* **`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`** : tient les sessions sur chaque modèle avec une fenêtre de 1M native à une fenêtre de 200K ; voir [Contexte étendu](#extended-context) pour comment la retenue est appliquée. Utile pour les déploiements qui ont besoin de limiter le contexte.806* **`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`** : tient les sessions sur chaque modèle avec une fenêtre de 1M native à une fenêtre de 200K ; voir [Contexte étendu](#extended-context) pour comment la retenue est appliquée. Utile pour les déploiements qui ont besoin de limiter le contexte.

755 807 

756<h2 id="context-window-and-auto-compaction">808<h2 id="context-window-and-auto-compaction">


786* Les [sessions cloud](/docs/fr/claude-code-on-the-web) se compactent à mesure que la conversation approche de la limite du modèle838* Les [sessions cloud](/docs/fr/claude-code-on-the-web) se compactent à mesure que la conversation approche de la limite du modèle

787* Sonnet 4.6 et Opus 4.6 sans [contexte étendu](#extended-context) se compactent à la limite de 200 K, tout comme Opus 4.8 et versions ultérieures lorsqu'ils s'exécutent avec une fenêtre de contexte de 200 K, comme sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry839* Sonnet 4.6 et Opus 4.6 sans [contexte étendu](#extended-context) se compactent à la limite de 200 K, tout comme Opus 4.8 et versions ultérieures lorsqu'ils s'exécutent avec une fenêtre de contexte de 200 K, comme sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry

788* Lorsque vous définissez [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](/docs/fr/env-vars), les modèles avec une fenêtre native de 1 M, comme Sonnet 5 et les modèles Fable, se compactent à la limite de 200 K840* Lorsque vous définissez [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](/docs/fr/env-vars), les modèles avec une fenêtre native de 1 M, comme Sonnet 5 et les modèles Fable, se compactent à la limite de 200 K

789* Les modèles s'exécutant avec une fenêtre native de 1 M, comme Sonnet 5, les modèles Fable, et Opus 4.7 et versions ultérieures sur l'API Anthropic, se compactent avant que la fenêtre ne se remplisse, à environ 967 K jetons par défaut. Sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry, [Épingler les modèles pour les déploiements tiers](#pin-models-for-third-party-deployments) indique quels modèles s'exécutent avec cette fenêtre ; pour les configurations qui budgétisent Sonnet 5 à 200 K à la place, consultez [Fenêtre de contexte Sonnet 5](#sonnet-5-context-window)841* Les modèles s'exécutant avec une fenêtre native de 1 M, comme Sonnet 5, les modèles Fable, et Opus 4.7 et versions ultérieures sur l'API Anthropic, se compactent avant que la fenêtre ne se remplisse, à environ 967 K jetons par défaut. Sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry, [Épingler les modèles pour les déploiements tiers](#pin-models-for-third-party-deployments) indique quels modèles s'exécutent avec cette fenêtre ; pour les configurations qui budgétisent Sonnet 5.5 et Sonnet 5 à 200 K à la place, consultez [Fenêtre de contexte Sonnet 5.5 et Sonnet 5](#sonnet-5-5-and-sonnet-5-context-window)

790* Les sessions sur un ID de modèle que Claude Code ne reconnaît pas, comme un alias de [passerelle LLM](/docs/fr/llm-gateway), se compactent à la fenêtre de contexte que Claude Code suppose pour l'ID ; consultez [Corriger la fenêtre pour une passerelle ou un ID de modèle personnalisé](#correct-the-window-for-a-gateway-or-custom-model-id)842* Les sessions sur un ID de modèle que Claude Code ne reconnaît pas, comme un alias de [passerelle LLM](/docs/fr/llm-gateway), se compactent à la fenêtre de contexte que Claude Code suppose pour l'ID ; consultez [Corriger la fenêtre pour une passerelle ou un ID de modèle personnalisé](#correct-the-window-for-a-gateway-or-custom-model-id)

791 843 

792<h3 id="correct-the-window-for-a-gateway-or-custom-model-id">844<h3 id="correct-the-window-for-a-gateway-or-custom-model-id">


861| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | Le modèle à utiliser pour `haiku`, ou [fonctionnalité d'arrière-plan](/docs/fr/costs#background-token-usage) |913| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | Le modèle à utiliser pour `haiku`, ou [fonctionnalité d'arrière-plan](/docs/fr/costs#background-token-usage) |

862| `CLAUDE_CODE_SUBAGENT_MODEL` | Le modèle par défaut pour les [subagents](/docs/fr/sub-agents#choose-a-model), les coéquipiers de l'[équipe d'agents](/docs/fr/agent-teams#specify-teammates-and-models) et les agents de [workflow](/docs/fr/workflows) qui ne sont pas assignés à un modèle d'une autre manière. Accepte un alias tel que `haiku` ou un nom de modèle complet. Un modèle par invocation ou le champ `model` d'une définition, y compris `inherit`, prend la priorité. Pour modifier cela, définissez [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/fr/sub-agents#run-every-subagent-on-one-model) |914| `CLAUDE_CODE_SUBAGENT_MODEL` | Le modèle par défaut pour les [subagents](/docs/fr/sub-agents#choose-a-model), les coéquipiers de l'[équipe d'agents](/docs/fr/agent-teams#specify-teammates-and-models) et les agents de [workflow](/docs/fr/workflows) qui ne sont pas assignés à un modèle d'une autre manière. Accepte un alias tel que `haiku` ou un nom de modèle complet. Un modèle par invocation ou le champ `model` d'une définition, y compris `inherit`, prend la priorité. Pour modifier cela, définissez [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/fr/sub-agents#run-every-subagent-on-one-model) |

863 915 

916Sur les fournisseurs tiers, [Personnaliser l'affichage et les capacités du modèle épinglé](#customize-pinned-model-display-and-capabilities) décrit ce qu'une ligne de modèle épinglé dans le sélecteur `/model` affiche.

917 

864Remarque : `ANTHROPIC_SMALL_FAST_MODEL` est déprécié au profit de `ANTHROPIC_DEFAULT_HAIKU_MODEL`.918Remarque : `ANTHROPIC_SMALL_FAST_MODEL` est déprécié au profit de `ANTHROPIC_DEFAULT_HAIKU_MODEL`.

865 919 

866<h3 id="pin-models-for-third-party-deployments">920<h3 id="pin-models-for-third-party-deployments">


995| Variable d'environnement | Description |1049| Variable d'environnement | Description |

996| - | - |1050| - | - |

997| `DISABLE_PROMPT_CACHING` | Définissez sur `1` pour désactiver la mise en cache des invites pour tous les modèles. Prend la priorité sur les paramètres par modèle |1051| `DISABLE_PROMPT_CACHING` | Définissez sur `1` pour désactiver la mise en cache des invites pour tous les modèles. Prend la priorité sur les paramètres par modèle |

998| `DISABLE_PROMPT_CACHING_HAIKU` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Haiku uniquement |1052| `DISABLE_PROMPT_CACHING_HAIKU` | Définissez sur `1` pour désactiver la mise en cache des invites pour le [modèle Haiku par défaut](/docs/fr/prompt-caching#disable-prompt-caching) |

999| `DISABLE_PROMPT_CACHING_SONNET` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Sonnet uniquement |1053| `DISABLE_PROMPT_CACHING_SONNET` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Sonnet uniquement |

1000| `DISABLE_PROMPT_CACHING_OPUS` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Opus uniquement |1054| `DISABLE_PROMPT_CACHING_OPUS` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Opus uniquement |

1001| `DISABLE_PROMPT_CACHING_FABLE` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Fable uniquement |1055| `DISABLE_PROMPT_CACHING_FABLE` | Définissez sur `1` pour désactiver la mise en cache des invites pour les modèles Fable uniquement |

1002 1056 

1003Pour choisir vous-même le TTL du cache pour la conversation principale et pour les subagents séparément, voir [choisir vous-même le TTL](/docs/fr/prompt-caching#choose-the-ttl-yourself). Pour ce qui déclenche un échec du cache, voir [Comment Claude Code utilise la mise en cache des invites](/docs/fr/prompt-caching).1057Pour choisir vous-même le TTL du cache pour la conversation principale et pour les subagents séparément, voir [choisir vous-même le TTL](/docs/fr/prompt-caching#choose-the-ttl-yourself). Pour ce qui déclenche un échec du cache, voir [Comment Claude Code utilise la mise en cache des invites](/docs/fr/prompt-caching).

1058 

1059<h2 id="version-history">

1060 Historique des versions

1061</h2>

1062 

1063Ce tableau répertorie la version de Claude Code à laquelle chaque alias de modèle a changé le modèle qu'il résout, du plus récent au plus ancien.

1064 

1065| Version | Modification |

1066| :- | :- |

1067| v2.1.284 | `sonnet` résout vers Sonnet 5.5 sur l'API Anthropic |

1068| v2.1.280 | `opus` résout vers Opus 5.5 sur l'API Anthropic, Claude Platform sur AWS, Amazon Bedrock et Agent Platform de Google Cloud |

1069| v2.1.257 | `fable` résout vers Fable 5.1, sauf dans les sessions de passerelle des applications Claude |

1070| v2.1.219 | `opus` résout vers Opus 5 sur l'API Anthropic, Claude Platform sur AWS, Amazon Bedrock et Agent Platform |

1071| v2.1.207 | `opus` résout vers Opus 4.8 sur Claude Platform sur AWS, Amazon Bedrock et Agent Platform |

1072| v2.1.197 | `sonnet` résout vers Sonnet 5 sur l'API Anthropic |

1073| v2.1.154 | `opus` résout vers Opus 4.8 sur l'API Anthropic |

1074| Antérieur | `opus` résout vers Opus 4.7 sur Claude Platform sur AWS et vers Opus 4.6 sur Amazon Bedrock et Agent Platform. `fable` résout vers Fable 5 sur chaque fournisseur |

Details

39 39 

40Pour vérifier une configuration qui exporte des métriques, vérifiez votre backend pour la métrique `claude_code.session.count`, que Claude Code émet au démarrage d'une session. Pour vérifier une configuration réservée aux journaux, soumettez une invite et vérifiez l'événement `claude_code.user_prompt`.40Pour vérifier une configuration qui exporte des métriques, vérifiez votre backend pour la métrique `claude_code.session.count`, que Claude Code émet au démarrage d'une session. Pour vérifier une configuration réservée aux journaux, soumettez une invite et vérifiez l'événement `claude_code.user_prompt`.

41 41 

42Si rien n'arrive, exécutez `claude --debug` et vérifiez le journal de débogage. Claude Code signale les défaillances des exportateurs que vous configurez en tant qu'erreurs `[3P telemetry]`, où 3P signifie tiers. Les lignes préfixées par `[Anthropic telemetry]` décrivent la [télémétrie opérationnelle distincte d'Anthropic](/docs/fr/data-usage#telemetry-services) et n'indiquent pas un problème avec votre configuration.42Si rien n'arrive, démarrez Claude Code avec `claude --debug-file <path>` et vérifiez le journal qu'il écrit dans ce chemin. Claude Code signale les défaillances des exportateurs que vous configurez en tant qu'erreurs `[3P telemetry]`, où 3P signifie tiers. Les lignes préfixées par `[Anthropic telemetry]` décrivent la [télémétrie opérationnelle distincte d'Anthropic](/docs/fr/data-usage#telemetry-services) et n'indiquent pas un problème avec votre configuration.

43 43 

44Pour les options de configuration complètes, consultez la [spécification OpenTelemetry](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options).44Pour les options de configuration complètes, consultez la [spécification OpenTelemetry](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options).

45 45 


72 Comment les paramètres gérés verrouillent la destination OTLP72 Comment les paramètres gérés verrouillent la destination OTLP

73</h3>73</h3>

74 74 

75Lorsque vous définissez une variable `OTEL_EXPORTER_OTLP_*` dans les paramètres gérés, Claude Code supprime les variables conflictuelles définies par les développeurs au démarrage et enregistre un avertissement que vous pouvez voir avec `claude --debug`. Ce qu'il supprime dépend de la variable que vous définissez :75Lorsque vous définissez une variable `OTEL_EXPORTER_OTLP_*` dans les paramètres gérés, Claude Code supprime les variables conflictuelles définies par les développeurs au démarrage et enregistre un avertissement dans le journal de débogage. Ce qu'il supprime dépend de la variable que vous définissez :

76 76 

77* **Points de terminaison** : lorsque vous définissez `OTEL_EXPORTER_OTLP_ENDPOINT`, Claude Code supprime tous les points de terminaison par signal définis par les développeurs. Les développeurs ne peuvent pas pointer un signal vers un collecteur différent, donc vous n'avez pas besoin de définir également les variables de point de terminaison par signal dans les paramètres gérés.77* **Points de terminaison** : lorsque vous définissez `OTEL_EXPORTER_OTLP_ENDPOINT`, Claude Code supprime tous les points de terminaison par signal définis par les développeurs. Les développeurs ne peuvent pas pointer un signal vers un collecteur différent, donc vous n'avez pas besoin de définir également les variables de point de terminaison par signal dans les paramètres gérés.

78* **Protocoles** : lorsque vous définissez `OTEL_EXPORTER_OTLP_PROTOCOL`, Claude Code supprime tous les protocoles par signal définis par les développeurs.78* **Protocoles** : lorsque vous définissez `OTEL_EXPORTER_OTLP_PROTOCOL`, Claude Code supprime tous les protocoles par signal définis par les développeurs.


127| `OTEL_LOGS_EXPORT_INTERVAL` | Intervalle d'export des journaux en millisecondes (par défaut : 5000) | `1000`, `10000` |127| `OTEL_LOGS_EXPORT_INTERVAL` | Intervalle d'export des journaux en millisecondes (par défaut : 5000) | `1000`, `10000` |

128| `OTEL_LOG_USER_PROMPTS` | Activer la journalisation du contenu des invites utilisateur (par défaut : désactivé) | `1` pour activer |128| `OTEL_LOG_USER_PROMPTS` | Activer la journalisation du contenu des invites utilisateur (par défaut : désactivé) | `1` pour activer |

129| `OTEL_LOG_ASSISTANT_RESPONSES` | Activer la journalisation du texte de réponse de l'assistant sur les événements `assistant_response` (par défaut : désactivé). Lorsque non défini, revient à la valeur de `OTEL_LOG_USER_PROMPTS`. Nécessite Claude Code v2.1.193 ou version ultérieure | `1` pour activer, `0` pour garder masqué |129| `OTEL_LOG_ASSISTANT_RESPONSES` | Activer la journalisation du texte de réponse de l'assistant sur les événements `assistant_response` (par défaut : désactivé). Lorsque non défini, revient à la valeur de `OTEL_LOG_USER_PROMPTS`. Nécessite Claude Code v2.1.193 ou version ultérieure | `1` pour activer, `0` pour garder masqué |

130| `OTEL_LOG_TOOL_DETAILS` | Activer la journalisation des paramètres d'outil et des arguments d'entrée dans les événements d'outil et les attributs d'intervalle de trace : commandes Bash, noms de serveur MCP et d'outil, noms de compétences, noms de workflow créés par l'utilisateur et entrée d'outil. Active également les noms de commandes personnalisées, de plugin et MCP sur les événements `user_prompt` (par défaut : désactivé). Pour les serveurs intégrés de Claude Desktop, dans les sessions que Claude Desktop possède, `mcp_server_name`/`mcp_tool_name` sont émis sur `tool_decision`/`tool_result` même avec l'indicateur désactivé. L'exception nécessite Claude Code v2.1.214 ou version ultérieure | `1` pour activer |130| `OTEL_LOG_TOOL_DETAILS` | Activer la journalisation des paramètres d'outil et des arguments d'entrée dans les événements d'outil et les attributs d'intervalle de trace : commandes Bash, noms de serveur MCP et d'outil, noms de compétences, noms de workflow créés par l'utilisateur et entrée d'outil. Active également les noms de commandes personnalisées, de plugin et MCP sur les événements `user_prompt`, et les noms réels d'agent, de compétence, de plugin et de serveur et d'outil MCP sur les [compteurs de coûts et de jetons](#cost-counter) (par défaut : désactivé). Pour les serveurs intégrés de Claude Desktop, dans les sessions que Claude Desktop possède, `mcp_server_name`/`mcp_tool_name` sont émis sur `tool_decision`/`tool_result` même avec l'indicateur désactivé. L'exception nécessite Claude Code v2.1.214 ou version ultérieure | `1` pour activer |

131| `OTEL_LOG_TOOL_CONTENT` | Activer la journalisation du contenu d'outil dans l'[événement d'intervalle `tool.output`](#tool-output-span-event) (par défaut : désactivé). Les attributs d'intervalle portent le contenu d'outil sous [leurs propres portes](#new-context-gates). Nécessite [traçage](#traces-beta). Le contenu est tronqué à la limite de contenu (60 Ko par défaut) | `1` pour activer |131| `OTEL_LOG_TOOL_CONTENT` | Activer la journalisation du contenu d'outil dans l'[événement d'intervalle `tool.output`](#tool-output-span-event) (par défaut : désactivé). Les attributs d'intervalle portent le contenu d'outil sous [leurs propres portes](#new-context-gates). Nécessite [traçage](#traces-beta). Le contenu est tronqué à la limite de contenu (60 Ko par défaut) | `1` pour activer |

132| `OTEL_LOG_MANAGED_SETTINGS` | Ajouter les paramètres gérés masqués et un résumé SHA-256 des paramètres avant masquage aux événements [managed settings resolved](#managed-settings-resolved-event) (par défaut : désactivé). Une valeur dans les paramètres de projet ou locaux ne l'active pas. Nécessite Claude Code v2.1.274 ou version ultérieure | `1` pour activer |132| `OTEL_LOG_MANAGED_SETTINGS` | Ajouter les paramètres gérés masqués et un résumé SHA-256 des paramètres avant masquage aux événements [managed settings resolved](#managed-settings-resolved-event) (par défaut : désactivé). Une valeur dans les paramètres de projet ou locaux ne l'active pas. Nécessite Claude Code v2.1.274 ou version ultérieure | `1` pour activer |

133| `OTEL_LOG_RAW_API_BODIES` | Émettre les corps JSON complets de la demande et de la réponse de l'API Messages d'Anthropic sous forme d'événements de journaux `api_request_body` / `api_response_body` (par défaut : désactivé). Les corps incluent l'historique complet de la conversation. L'activation de cette option implique le consentement à tout ce que `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_TOOL_DETAILS` et `OTEL_LOG_TOOL_CONTENT` révèleraient | `1` pour les corps en ligne tronqués à la limite de contenu (60 Ko par défaut), ou `file:<dir>` pour les corps non tronqués sur disque avec un pointeur `body_ref` dans l'événement |133| `OTEL_LOG_RAW_API_BODIES` | Émettre les corps JSON complets de la demande et de la réponse de l'API Messages d'Anthropic sous forme d'événements de journaux `api_request_body` / `api_response_body` (par défaut : désactivé). Les corps incluent l'historique complet de la conversation. L'activation de cette option implique le consentement à tout ce que `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_TOOL_DETAILS` et `OTEL_LOG_TOOL_CONTENT` révèleraient | `1` pour les corps en ligne tronqués à la limite de contenu (60 Ko par défaut), ou `file:<dir>` pour les corps non tronqués sur disque avec un pointeur `body_ref` dans l'événement |


257| `output_tokens` | Nombre de jetons de sortie | |257| `output_tokens` | Nombre de jetons de sortie | |

258| `cache_read_tokens` | Jetons lus à partir du cache de prompt | |258| `cache_read_tokens` | Jetons lus à partir du cache de prompt | |

259| `cache_creation_tokens` | Jetons écrits dans le cache de prompt | |259| `cache_creation_tokens` | Jetons écrits dans le cache de prompt | |

260| `request_id` | ID de demande d'API Anthropic de l'en-tête de réponse `request-id` | |260| `request_id` | ID de demande d'API. Même valeur que l'[attribut de corrélation d'événement](#event-correlation-attributes) `request_id` | |

261| `gen_ai.response.id` | Même valeur que `request_id`. Convention sémantique GenAI OpenTelemetry | |261| `gen_ai.response.id` | Même valeur que `request_id`. Convention sémantique GenAI OpenTelemetry | |

262| `client_request_id` | `x-client-request-id` généré par le client de la tentative finale | |262| `client_request_id` | `x-client-request-id` généré par le client de la tentative finale | |

263| `attempt` | Nombre total de tentatives effectuées pour cette demande | |263| `attempt` | Nombre total de tentatives effectuées pour cette demande | |


296 296 

297Si vous définissez `OTEL_LOG_TOOL_CONTENT=1`, les appels Read et Bash peuvent enregistrer un événement d'intervalle `tool.output` sur l'intervalle `claude_code.tool`. Les appels Edit et Write enregistrent un événement uniquement lorsque vous définissez également `OTEL_LOG_TOOL_DETAILS=1`. Cette variable n'est pas limitée à ces deux outils, donc vérifiez sa [ligne dans le tableau de configuration](#common-configuration-variables) pour les arguments qu'elle ajoute ailleurs.297Si vous définissez `OTEL_LOG_TOOL_CONTENT=1`, les appels Read et Bash peuvent enregistrer un événement d'intervalle `tool.output` sur l'intervalle `claude_code.tool`. Les appels Edit et Write enregistrent un événement uniquement lorsque vous définissez également `OTEL_LOG_TOOL_DETAILS=1`. Cette variable n'est pas limitée à ces deux outils, donc vérifiez sa [ligne dans le tableau de configuration](#common-configuration-variables) pour les arguments qu'elle ajoute ailleurs.

298 298 

299Les outils MCP, WebFetch et WebSearch enregistrent également cet événement, sur Claude Code v2.1.283 ou version ultérieure.

300 

299Claude Code écrit cet événement à partir du retour réussi d'un appel d'outil, donc un appel qui lève une erreur n'enregistre rien, quel que soit l'outil. Parmi les appels qui retournent, il n'enregistre pas d'événement `tool.output` pour :301Claude Code écrit cet événement à partir du retour réussi d'un appel d'outil, donc un appel qui lève une erreur n'enregistre rien, quel que soit l'outil. Parmi les appels qui retournent, il n'enregistre pas d'événement `tool.output` pour :

300 302 

301* Un appel à tout outil autre que Read, Edit, Write et Bash, y compris les outils MCP et WebFetch303* Un appel à tout outil autre que Read, Edit, Write, Bash, WebFetch, WebSearch et outils MCP

302* Un Read qui retourne autre chose que du texte de fichier, tel qu'une image, un PDF ou une relecture d'un fichier dont le contenu n'a pas changé304* Un Read qui retourne autre chose que du texte de fichier, tel qu'une image, un PDF ou une relecture d'un fichier dont le contenu n'a pas changé

303* Un appel Edit ou Write, sauf si vous définissez également `OTEL_LOG_TOOL_DETAILS=1`305* Un appel Edit ou Write, sauf si vous définissez également `OTEL_LOG_TOOL_DETAILS=1`

306* Un appel WebFetch ou WebSearch que Claude Code a déplacé en arrière-plan parce que vous avez interrompu le tour pour [envoyer vos messages en attente immédiatement](/docs/fr/interactive-mode#when-claude-code-sends-what-you-queued) pendant que l'appel s'exécutait. Claude reçoit ce résultat plus tard, après la fin de l'intervalle d'outil

304 307 

305L'événement porte ces attributs, chacun tronqué à la limite de contenu (60 Ko par défaut). `Contrôlé par` nomme la variable qu'un attribut nécessite en plus de `OTEL_LOG_TOOL_CONTENT=1`, et pour Edit et Write cette variable contrôle l'événement lui-même plutôt que l'attribut.308L'événement porte ces attributs, chacun tronqué à la limite de contenu (60 Ko par défaut). `Contrôlé par` nomme la variable qu'un attribut nécessite en plus de `OTEL_LOG_TOOL_CONTENT=1`, et pour Edit et Write cette variable contrôle l'événement lui-même plutôt que l'attribut.

306 309 

307| Attribut | Description | Contrôlé par |310| Attribut | Description | Contrôlé par |

308| - | - | - |311| - | - | - |

309| `content` | Texte que l'outil Read a retourné, ou le texte qu'un appel Write a été demandé d'écrire | `OTEL_LOG_TOOL_DETAILS` pour l'outil Write |312| `content` | Texte que l'outil Read a retourné, ou le texte qu'un appel Write a été demandé d'écrire | `OTEL_LOG_TOOL_DETAILS` pour l'outil Write |

310| `output` | Sortie combinée d'une commande Bash, avec stderr entrelacé dans stdout | |313| `output` | Pour l'outil Bash, la sortie combinée de la commande, avec stderr entrelacé dans stdout. Pour un outil MCP, WebFetch ou WebSearch, le résultat que l'outil a retourné : blocs de texte joints par des sauts de ligne, avec une image ou un document remplacé par un espace réservé tel que `[image]` | |

311| `diff` | Correctif structuré que l'outil Edit a appliqué | `OTEL_LOG_TOOL_DETAILS` |314| `diff` | Correctif structuré que l'outil Edit a appliqué | `OTEL_LOG_TOOL_DETAILS` |

312| `file_path` | Chemin de fichier cible pour les outils Read, Edit et Write, répétant l'attribut d'intervalle du même nom | `OTEL_LOG_TOOL_DETAILS` |315| `file_path` | Chemin de fichier cible pour les outils Read, Edit et Write, répétant l'attribut d'intervalle du même nom | `OTEL_LOG_TOOL_DETAILS` |

313| `bash_command` | Chaîne de commande pour l'outil Bash | `OTEL_LOG_TOOL_DETAILS` |316| `bash_command` | Chaîne de commande pour l'outil Bash | `OTEL_LOG_TOOL_DETAILS` |


561 564 

562Définissez `OTEL_METRICS_INCLUDE_REPOSITORY=true` pour balisez les métriques et les événements avec l'identité du référentiel de la session, afin qu'un collecteur partagé puisse attribuer l'utilisation par référentiel. Nécessite Claude Code v2.1.269 ou ultérieur.565Définissez `OTEL_METRICS_INCLUDE_REPOSITORY=true` pour balisez les métriques et les événements avec l'identité du référentiel de la session, afin qu'un collecteur partagé puisse attribuer l'utilisation par référentiel. Nécessite Claude Code v2.1.269 ou ultérieur.

563 566 

564Claude Code dérive ces attributs une fois par session à partir de la télécommande `origin` du référentiel. Les télécommandes HTTPS et SSH d'un référentiel produisent des valeurs identiques :567Claude Code dérive ces attributs une fois par session à partir de la télécommande `origin` du référentiel. Quand les télécommandes HTTPS et SSH d'un référentiel nomment le même hôte et le même chemin, comme ils le font sur GitHub, GitLab et Bitbucket Cloud, les deux produisent des valeurs identiques :

565 568 

566| Attribut | Valeur |569| Attribut | Valeur |

567| - | - |570| - | - |


572 575 

573Les valeurs sont en minuscules, et les identifiants, chaînes de requête et fragments de l'URL de la télécommande n'apparaissent jamais en eux. Les attributs sont omis quand la session n'a pas de télécommande `origin`, quand la télécommande n'a pas la forme d'une URL, ou quand le seul référentiel englobant est votre répertoire personnel.576Les valeurs sont en minuscules, et les identifiants, chaînes de requête et fragments de l'URL de la télécommande n'apparaissent jamais en eux. Les attributs sont omis quand la session n'a pas de télécommande `origin`, quand la télécommande n'a pas la forme d'une URL, ou quand le seul référentiel englobant est votre répertoire personnel.

574 577 

578Pour obtenir ces attributs à partir d'une [session cloud](/docs/fr/claude-code-on-the-web), définissez les variables de télémétrie, y compris `OTEL_METRICS_INCLUDE_REPOSITORY`, sur son [environnement cloud](/docs/fr/cloud-environments#set-environment-variables). Autorisez également le domaine de votre collecteur dans l'[accès réseau](/docs/fr/cloud-environments#network-access) de l'environnement.

579 

575Une clé `vcs.*` que vous déclarez dans [`OTEL_RESOURCE_ATTRIBUTES`](#multi-team-organization-support) remplace la valeur dérivée pour cette clé. Si vous déclarez `vcs.repository.url.full`, Claude Code ne lit jamais la télécommande et signale uniquement les clés que vous déclarez.580Une clé `vcs.*` que vous déclarez dans [`OTEL_RESOURCE_ATTRIBUTES`](#multi-team-organization-support) remplace la valeur dérivée pour cette clé. Si vous déclarez `vcs.repository.url.full`, Claude Code ne lit jamais la télécommande et signale uniquement les clés que vous déclarez.

576 581 

582Si les clones HTTPS et SSH d'un référentiel signalent des valeurs différentes, par exemple sur une installation auto-hébergée dont l'URL de clone HTTPS porte un préfixe de chemin que l'URL SSH n'a pas, déclarez `vcs.repository.url.full` dans `OTEL_RESOURCE_ATTRIBUTES` avec chaque autre clé `vcs.*` que vous voulez signaler. Chaque clone signale alors l'identité que vous déclarez.

583 

577Les attributs ne circulent que vers vos propres exportateurs ; la télémétrie d'Anthropic supprime chaque clé `vcs.*`.584Les attributs ne circulent que vers vos propres exportateurs ; la télémétrie d'Anthropic supprime chaque clé `vcs.*`.

578 585 

579<h3 id="metrics">586<h3 id="metrics">


650 657 

651Incrémenté après chaque demande API.658Incrémenté après chaque demande API.

652 659 

660Les attributs `agent.name`, `skill.name`, `plugin.name`, `mcp_server.name`, et `mcp_tool.name` rédactent chacun certains noms à un espace réservé `"custom"` ou `"third-party"` par défaut. Si vous définissez `OTEL_LOG_TOOL_DETAILS=1`, ils portent les noms réels à la place. Avant v2.1.273, les compteurs de coût et de jetons et les événements `api_request`, `api_error`, et `api_refusal` portaient les valeurs rédactées même avec `OTEL_LOG_TOOL_DETAILS=1` défini.

661 

653**Attributs** :662**Attributs** :

654 663 

655* Tous les [attributs standard](#standard-attributes)664* Tous les [attributs standard](#standard-attributes)


657* `query_source` : Catégorie du sous-système qui a émis la demande. L'une de `"main"`, `"subagent"`, ou `"auxiliary"`666* `query_source` : Catégorie du sous-système qui a émis la demande. L'une de `"main"`, `"subagent"`, ou `"auxiliary"`

658* `speed` : `"fast"` quand la demande a utilisé le mode rapide. Absent sinon667* `speed` : `"fast"` quand la demande a utilisé le mode rapide. Absent sinon

659* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande : `"low"`, `"medium"`, `"high"`, `"xhigh"`, ou `"max"`. Absent quand Claude Code n'envoie aucun niveau d'effort, par exemple sur un modèle qui ne supporte pas l'effort.668* `effort` : [Niveau d'effort](/docs/fr/model-config#adjust-effort-level) appliqué à la demande : `"low"`, `"medium"`, `"high"`, `"xhigh"`, ou `"max"`. Absent quand Claude Code n'envoie aucun niveau d'effort, par exemple sur un modèle qui ne supporte pas l'effort.

660* `agent.name` : Type de sous-agent qui a émis la demande. Les noms d'agents intégrés et les agents des plugins de la place de marché officielle apparaissent textuellement. Les autres noms d'agents définis par l'utilisateur sont remplacés par `"custom"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Absent quand la demande n'a pas été émise par un type de sous-agent nommé.669* `agent.name` : Type de sous-agent qui a émis la demande. Les noms d'agents intégrés et les agents des plugins de la place de marché officielle apparaissent textuellement. Les autres noms d'agents définis par l'utilisateur sont remplacés par `"custom"`. Absent quand la demande n'a pas été émise par un type de sous-agent nommé.

661* `skill.name` : Compétence active pour la demande, définie par l'outil Skill, une commande `/`, ou héritée par un sous-agent généré. Les noms de compétences intégrés, groupés, définis par l'utilisateur et de la place de marché officielle des plugins apparaissent textuellement. Les noms de compétences des plugins tiers sont remplacés par `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Absent quand aucune compétence n'est active.670* `skill.name` : Compétence active pour la demande, définie par l'outil Skill ou une commande `/`, ou héritée par un sous-agent généré. Les noms de compétences intégrés, groupés, définis par l'utilisateur et de la place de marché officielle des plugins apparaissent textuellement. Les noms de compétences des plugins tiers sont remplacés par `"third-party"`. Absent quand aucune compétence n'est active.

662* `plugin.name` : Plugin propriétaire quand la compétence active ou le sous-agent est fourni par un plugin. Les noms de plugins de la place de marché officielle apparaissent textuellement. Les noms de plugins tiers sont remplacés par `"third-party"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Absent quand ni la compétence ni le sous-agent n'a de plugin propriétaire.671* `plugin.name` : Plugin propriétaire quand la compétence active ou le sous-agent est fourni par un plugin. Les noms de plugins de la place de marché officielle apparaissent textuellement. Les noms de plugins tiers sont remplacés par `"third-party"`. Absent quand ni la compétence ni le sous-agent n'a de plugin propriétaire.

663* `marketplace.name` : Place de marché à partir de laquelle le plugin propriétaire a été installé. Émis uniquement pour les plugins de la place de marché officielle. Absent sinon.672* `marketplace.name` : Place de marché à partir de laquelle le plugin propriétaire a été installé. Émis uniquement pour les plugins de la place de marché officielle, même avec `OTEL_LOG_TOOL_DETAILS=1` défini. Absent sinon.

664* `mcp_server.name` : Serveur MCP dont le résultat de l'outil cette demande a consommé. Les noms de serveurs intégrés, proxifiés par claude.ai, et de registre officiel apparaissent textuellement. Les noms de serveurs configurés par l'utilisateur sont remplacés par `"custom"` sauf si `OTEL_LOG_TOOL_DETAILS=1` est défini. Absent quand la demande n'a consommé aucun résultat d'outil MCP. Avant v2.1.222, Claude Code définissait cet attribut sur chaque demande après un appel d'outil MCP, pas seulement sur les demandes qui ont consommé un résultat d'outil, donc les tableaux de bord qui l'agrègent montrent une baisse après la mise à niveau.673* `mcp_server.name` : Serveur MCP dont le résultat de l'outil cette demande a consommé. Les noms de serveurs intégrés, proxifiés par claude.ai, et de registre officiel apparaissent textuellement. Les noms de serveurs configurés par l'utilisateur sont remplacés par `"custom"`. Absent quand la demande n'a consommé aucun résultat d'outil MCP. Avant v2.1.222, Claude Code définissait cet attribut sur chaque demande après un appel d'outil MCP, pas seulement sur les demandes qui ont consommé un résultat d'outil, donc les tableaux de bord qui l'agrègent montrent une baisse après la mise à niveau.

665* `mcp_tool.name` : Outil MCP dont le résultat cette demande a consommé, avec le même comportement de rédaction et de version que `mcp_server.name`. Absent quand la demande n'a consommé aucun résultat d'outil MCP.674* `mcp_tool.name` : Outil MCP dont le résultat cette demande a consommé, avec le même comportement de rédaction et de version que `mcp_server.name`. Absent quand la demande n'a consommé aucun résultat d'outil MCP.

666 675 

667<h4 id="token-counter">676<h4 id="token-counter">


722| `prompt.id` | Identifiant UUID v4 liant tous les événements produits lors du traitement d'une invite utilisateur unique |731| `prompt.id` | Identifiant UUID v4 liant tous les événements produits lors du traitement d'une invite utilisateur unique |

723| `event.sequence` | Compteur basé sur 0 pour ordonner les événements, compté par processus Claude Code plutôt que par session |732| `event.sequence` | Compteur basé sur 0 pour ordonner les événements, compté par processus Claude Code plutôt que par session |

724| `message.uuid` | UUID du message tel que persisté dans la transcription de session, les fichiers `~/.claude/projects/*/*.jsonl`. Présent sur `assistant_response`, sur `api_response_body`, et sur `user_prompt` sauf pour les dispatches de commande, qui peuvent produire zéro ou plusieurs messages. Sur `assistant_response` et `api_response_body`, c'est l'entrée de transcription finale de la réponse, à partir de laquelle le `parentUuid` du tour suivant s'enchaîne. Nécessite Claude Code v2.1.214 ou ultérieur, ou v2.1.274 ou ultérieur sur `api_response_body` |733| `message.uuid` | UUID du message tel que persisté dans la transcription de session, les fichiers `~/.claude/projects/*/*.jsonl`. Présent sur `assistant_response`, sur `api_response_body`, et sur `user_prompt` sauf pour les dispatches de commande, qui peuvent produire zéro ou plusieurs messages. Sur `assistant_response` et `api_response_body`, c'est l'entrée de transcription finale de la réponse, à partir de laquelle le `parentUuid` du tour suivant s'enchaîne. Nécessite Claude Code v2.1.214 ou ultérieur, ou v2.1.274 ou ultérieur sur `api_response_body` |

734| `request_id` | ID assigné par le serveur de la demande API, lu à partir de l'en-tête de réponse `request-id`, par exemple `req_011...`. Sur une réponse sans en-tête `request-id`, comme sur [Amazon Bedrock](/docs/fr/amazon-bedrock), la valeur provient de l'en-tête `x-amzn-requestid` à la place. Présent sur `api_request`, `api_error`, `api_refusal`, `assistant_response`, et `api_response_body` quand la réponse porte l'un ou l'autre en-tête. Correspond au même attribut sur la plage de trace `llm_request`. La source `x-amzn-requestid` nécessite Claude Code v2.1.282 ou ultérieur |

725| `client_request_id` | UUID généré par le client envoyé comme en-tête de demande `x-client-request-id`. Présent sur `api_request` et `api_error` sur les connexions API de première partie ; absent sur les backends de fournisseurs tiers et quand la demande a été retentée via le secours non-streaming. Associe une demande à sa réponse et reste disponible pour les défaillances telles que les délais d'expiration qui n'ont jamais produit un `request_id` serveur. Correspond au même attribut sur la plage de trace `llm_request`. Nécessite Claude Code v2.1.214 ou ultérieur |735| `client_request_id` | UUID généré par le client envoyé comme en-tête de demande `x-client-request-id`. Présent sur `api_request` et `api_error` sur les connexions API de première partie ; absent sur les backends de fournisseurs tiers et quand la demande a été retentée via le secours non-streaming. Associe une demande à sa réponse et reste disponible pour les défaillances telles que les délais d'expiration qui n'ont jamais produit un `request_id` serveur. Correspond au même attribut sur la plage de trace `llm_request`. Nécessite Claude Code v2.1.214 ou ultérieur |

726 736 

727Pour tracer toute l'activité déclenchée par une invite unique, filtrez vos événements par une valeur `prompt.id` spécifique. Cela retourne l'événement user\_prompt, tous les événements api\_request, et tous les événements tool\_result qui se sont produits lors du traitement de cette invite.737Pour tracer toute l'activité déclenchée par une invite unique, filtrez vos événements par une valeur `prompt.id` spécifique. Cela retourne l'événement user\_prompt, tous les événements api\_request, et tous les événements tool\_result qui se sont produits lors du traitement de cette invite.


771* `response_length` : Longueur du texte de réponse en caractères781* `response_length` : Longueur du texte de réponse en caractères

772* `response` : Texte de réponse, tronqué à la limite de contenu (60 Ko par défaut). Rédacté à `<REDACTED>` par défaut. Définissez `OTEL_LOG_ASSISTANT_RESPONSES=1` pour l'inclure. Quand `OTEL_LOG_ASSISTANT_RESPONSES` n'est pas défini, `OTEL_LOG_USER_PROMPTS` le contrôle à la place, donc définissez `OTEL_LOG_ASSISTANT_RESPONSES=0` pour garder les réponses rédactées tandis que la journalisation des invites est activée782* `response` : Texte de réponse, tronqué à la limite de contenu (60 Ko par défaut). Rédacté à `<REDACTED>` par défaut. Définissez `OTEL_LOG_ASSISTANT_RESPONSES=1` pour l'inclure. Quand `OTEL_LOG_ASSISTANT_RESPONSES` n'est pas défini, `OTEL_LOG_USER_PROMPTS` le contrôle à la place, donc définissez `OTEL_LOG_ASSISTANT_RESPONSES=0` pour garder les réponses rédactées tandis que la journalisation des invites est activée

773* `model` : Identifiant du modèle (par exemple, « claude-sonnet-5 »)783* `model` : Identifiant du modèle (par exemple, « claude-sonnet-5 »)

774* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse. Présent uniquement quand l'API en retourne un784* `request_id` : ID de demande API, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)

775* `message.uuid` : UUID de l'entrée de transcription finale de la réponse. Une réponse API est persistée comme une entrée de transcription par bloc de contenu ; c'est la dernière, à partir de laquelle le `parentUuid` du tour suivant s'enchaîne. Nécessite Claude Code v2.1.214 ou ultérieur785* `message.uuid` : UUID de l'entrée de transcription finale de la réponse. Une réponse API est persistée comme une entrée de transcription par bloc de contenu ; c'est la dernière, à partir de laquelle le `parentUuid` du tour suivant s'enchaîne. Nécessite Claude Code v2.1.214 ou ultérieur

776* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent786* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent

777 787 


831* `output_tokens` : Nombre de jetons de sortie841* `output_tokens` : Nombre de jetons de sortie

832* `cache_read_tokens` : Nombre de jetons lus du cache842* `cache_read_tokens` : Nombre de jetons lus du cache

833* `cache_creation_tokens` : Nombre de jetons utilisés pour la création du cache843* `cache_creation_tokens` : Nombre de jetons utilisés pour la création du cache

834* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse, par exemple `"req_011..."`. Présent uniquement quand l'API en retourne un.844* `request_id` : ID de demande API, par exemple `"req_011..."`, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes).

835* `client_request_id` : UUID généré par le client envoyé comme en-tête de demande `x-client-request-id` ; voir le tableau [attributs de corrélation d'événements](#event-correlation-attributes) pour quand il est présent. Nécessite Claude Code v2.1.214 ou ultérieur845* `client_request_id` : UUID généré par le client envoyé comme en-tête de demande `x-client-request-id` ; voir le tableau [attributs de corrélation d'événements](#event-correlation-attributes) pour quand il est présent. Nécessite Claude Code v2.1.214 ou ultérieur

836* `speed` : `"fast"` ou `"normal"`, indiquant si le mode rapide était actif846* `speed` : `"fast"` ou `"normal"`, indiquant si le mode rapide était actif

837* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent847* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent


857* `status_code` : Code de statut HTTP en tant que nombre. Absent pour les erreurs non-HTTP telles que les défaillances de connexion.867* `status_code` : Code de statut HTTP en tant que nombre. Absent pour les erreurs non-HTTP telles que les défaillances de connexion.

858* `duration_ms` : Durée de la demande en millisecondes868* `duration_ms` : Durée de la demande en millisecondes

859* `attempt` : Nombre total de tentatives effectuées, y compris la demande initiale (`1` signifie qu'aucune nouvelle tentative ne s'est produite)869* `attempt` : Nombre total de tentatives effectuées, y compris la demande initiale (`1` signifie qu'aucune nouvelle tentative ne s'est produite)

860* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse, par exemple `"req_011..."`. Présent uniquement quand l'API en retourne un.870* `request_id` : ID de demande API, par exemple `"req_011..."`, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes).

861* `client_request_id` : UUID généré par le client envoyé comme en-tête de demande `x-client-request-id`. Disponible même quand une défaillance telle qu'un délai d'expiration ou une erreur de connexion n'a jamais produit un `request_id` serveur ; voir le tableau [attributs de corrélation d'événements](#event-correlation-attributes) pour quand il est présent. Nécessite Claude Code v2.1.214 ou ultérieur871* `client_request_id` : UUID généré par le client envoyé comme en-tête de demande `x-client-request-id`. Disponible même quand une défaillance telle qu'un délai d'expiration ou une erreur de connexion n'a jamais produit un `request_id` serveur ; voir le tableau [attributs de corrélation d'événements](#event-correlation-attributes) pour quand il est présent. Nécessite Claude Code v2.1.214 ou ultérieur

862* `speed` : `"fast"` ou `"normal"`, indiquant si le mode rapide était actif872* `speed` : `"fast"` ou `"normal"`, indiquant si le mode rapide était actif

863* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent873* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent


879* `event.timestamp` : Timestamp ISO 8601889* `event.timestamp` : Timestamp ISO 8601

880* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)890* `event.sequence` : compteur par processus pour ordonner les événements, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes)

881* `model` : Identifiant du modèle de la demande891* `model` : Identifiant du modèle de la demande

882* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse, par exemple `"req_011..."`. Présent uniquement quand l'API en retourne un.892* `request_id` : ID de demande API, par exemple `"req_011..."`, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes).

883* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent. Voir [`api_request`](#api-request-event) pour les définitions.893* `query_source` : Sous-système qui a émis la demande, par exemple `"repl_main_thread"`, `"compact"`, ou un nom de sous-agent. Voir [`api_request`](#api-request-event) pour les définitions.

884* `speed` : Soit `"fast"` quand le [Mode rapide](/docs/fr/fast-mode) est actif, soit `"normal"`894* `speed` : Soit `"fast"` quand le [Mode rapide](/docs/fr/fast-mode) est actif, soit `"normal"`

885* `attempt` : Numéro de tentative de nouvelle tentative. La première tentative est `1`.895* `attempt` : Numéro de tentative de nouvelle tentative. La première tentative est `1`.


934* `body_truncated` : `"true"` quand la troncature en ligne s'est produite. Absent en mode fichier et quand aucune troncature ne s'est produite.944* `body_truncated` : `"true"` quand la troncature en ligne s'est produite. Absent en mode fichier et quand aucune troncature ne s'est produite.

935* `model` : Identifiant du modèle945* `model` : Identifiant du modèle

936* `query_source` : Sous-système qui a émis la demande946* `query_source` : Sous-système qui a émis la demande

937* `request_id` : ID de demande API Anthropic de l'en-tête `request-id` de la réponse, par exemple `"req_011..."`. Présent uniquement quand l'API en retourne un.947* `request_id` : ID de demande API, par exemple `"req_011..."`, décrit sous [Attributs de corrélation d'événements](#event-correlation-attributes).

938* `request_body_id` : Le `request_body_id` de l'[événement `api_request_body`](#api-request-body-event) auquel cette réponse répond. Nécessite Claude Code v2.1.274 ou ultérieur948* `request_body_id` : Le `request_body_id` de l'[événement `api_request_body`](#api-request-body-event) auquel cette réponse répond. Nécessite Claude Code v2.1.274 ou ultérieur

939* `message.id` : ID de message que l'API a assigné à la réponse, le champ `id` du corps de réponse. Nécessite Claude Code v2.1.274 ou ultérieur949* `message.id` : ID de message que l'API a assigné à la réponse, le champ `id` du corps de réponse. Nécessite Claude Code v2.1.274 ou ultérieur

940* `message.uuid` : UUID de l'entrée de transcription finale de la réponse. Avec `request_body_id`, il lie un message de transcription aux corps de demande et de réponse derrière lui. Nécessite Claude Code v2.1.274 ou ultérieur950* `message.uuid` : UUID de l'entrée de transcription finale de la réponse. Avec `request_body_id`, il lie un message de transcription aux corps de demande et de réponse derrière lui. Nécessite Claude Code v2.1.274 ou ultérieur


1563}1573}

1564```1574```

1565 1575 

1566Pour confirmer que les événements arrivent, soumettez une invite dans une session exécutée sous cette configuration et vérifiez votre SIEM pour l'événement `claude_code.user_prompt`. Si rien n'arrive, exécutez `claude --debug` et vérifiez le journal de débogage pour les erreurs d'exportation `[3P telemetry]`.1576Pour confirmer que les événements arrivent, soumettez une invite dans une session exécutée sous cette configuration et vérifiez votre SIEM pour l'événement `claude_code.user_prompt`. Si rien n'arrive, démarrez Claude Code avec `claude --debug-file <path>` et vérifiez ce journal pour les erreurs d'exportation `[3P telemetry]`.

1567 1577 

1568<h2 id="backend-considerations">1578<h2 id="backend-considerations">

1569 Considérations relatives aux backends1579 Considérations relatives aux backends


1633 * Les événements `tool_result` et `tool_decision` incluent un attribut `tool_parameters` avec les commandes Bash, les noms de serveur MCP et d'outil, et les noms de compétences. Les champs tels que `full_command` sont émis sans troncature1643 * Les événements `tool_result` et `tool_decision` incluent un attribut `tool_parameters` avec les commandes Bash, les noms de serveur MCP et d'outil, et les noms de compétences. Les champs tels que `full_command` sont émis sans troncature

1634 * Les événements `tool_result` incluent également un attribut `tool_input` avec les chemins de fichiers, les URL, les modèles de recherche et d'autres arguments. Les valeurs individuelles dépassant 512 caractères sont tronquées et le total est limité à environ 4 K caractères1644 * Les événements `tool_result` incluent également un attribut `tool_input` avec les chemins de fichiers, les URL, les modèles de recherche et d'autres arguments. Les valeurs individuelles dépassant 512 caractères sont tronquées et le total est limité à environ 4 K caractères

1635 * Les événements `user_prompt` incluent le `command_name` verbatim pour les commandes personnalisées, de plugin et MCP1645 * Les événements `user_prompt` incluent le `command_name` verbatim pour les commandes personnalisées, de plugin et MCP

1646 * Les [compteurs de coût et de jeton](#cost-counter) et les événements `api_request`, `api_error` et `api_refusal` portent les noms réels d'agent, de compétence, de plugin et de serveur MCP et d'outil dans leurs attributs d'attribution

1636 * Les intervalles de trace incluent le même attribut `tool_input` et les attributs dérivés de l'entrée tels que `file_path`, avec la même troncature que `tool_input`1647 * Les intervalles de trace incluent le même attribut `tool_input` et les attributs dérivés de l'entrée tels que `file_path`, avec la même troncature que `tool_input`

1637* Le contenu d'outil n'est pas enregistré dans les intervalles de trace par défaut. Pour l'inclure, définissez `OTEL_LOG_TOOL_CONTENT=1`. L'intervalle `claude_code.tool` porte alors un [événement d'intervalle `tool.output`](#tool-output-span-event) avec les contenus de fichiers bruts et la sortie de commande Bash, tronqués à la limite de contenu (60 Ko par défaut) par attribut. Le contenu d'outil atteint également les intervalles via [`new_context`, dont la porte diffère par intervalle](#new-context-gates). Configurez votre backend de télémétrie pour filtrer ou masquer ces attributs selon les besoins1648* Le contenu d'outil n'est pas enregistré dans les intervalles de trace par défaut. Pour l'inclure, définissez `OTEL_LOG_TOOL_CONTENT=1`. L'intervalle `claude_code.tool` porte alors un [événement d'intervalle `tool.output`](#tool-output-span-event) avec les contenus de fichiers bruts, la sortie de commande Bash, et ce que les outils MCP, WebFetch et WebSearch retournent, tronqués à la limite de contenu (60 Ko par défaut) par attribut. Les résultats des outils MCP, WebFetch et WebSearch nécessitent Claude Code v2.1.283 ou version ultérieure. Le contenu d'outil atteint également les intervalles via [`new_context`, dont la porte diffère par intervalle](#new-context-gates). Configurez votre backend de télémétrie pour filtrer ou masquer ces attributs selon les besoins

1638* Les corps bruts de la demande et de la réponse de l'API Messages d'Anthropic ne sont pas enregistrés par défaut. Pour les inclure, définissez `OTEL_LOG_RAW_API_BODIES` dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Il est ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env). Les corps contiennent l'historique complet de la conversation, y compris l'invite système, chaque tour d'utilisateur et d'assistant antérieur, et les résultats d'outils, donc l'activation de cette option implique le consentement à tout ce que les autres drapeaux de contenu `OTEL_LOG_*` révèleraient. Claude Code masque toujours le contenu de réflexion étendue de Claude de ces corps, indépendamment des autres paramètres. La valeur que vous définissez détermine comment Claude Code livre les corps :1649* Les corps bruts de la demande et de la réponse de l'API Messages d'Anthropic ne sont pas enregistrés par défaut. Pour les inclure, définissez `OTEL_LOG_RAW_API_BODIES` dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Il est ignoré dans [les paramètres de projet et locaux](/docs/fr/settings-reference#variables-claude-code-ignores-in-env). Les corps contiennent l'historique complet de la conversation, y compris l'invite système, chaque tour d'utilisateur et d'assistant antérieur, et les résultats d'outils, donc l'activation de cette option implique le consentement à tout ce que les autres drapeaux de contenu `OTEL_LOG_*` révèleraient. Claude Code masque toujours le contenu de réflexion étendue de Claude de ces corps, indépendamment des autres paramètres. La valeur que vous définissez détermine comment Claude Code livre les corps :

1639 * Avec `=1`, Claude Code émet des événements de journaux `api_request_body` et `api_response_body` pour chaque appel d'API. L'attribut `body` des événements porte la charge utile sérialisée en JSON, tronquée à la limite de contenu (60 Ko par défaut)1650 * Avec `=1`, Claude Code émet des événements de journaux `api_request_body` et `api_response_body` pour chaque appel d'API. L'attribut `body` des événements porte la charge utile sérialisée en JSON, tronquée à la limite de contenu (60 Ko par défaut)

1640 * Avec `=file:<dir>`, Claude Code écrit les corps non tronqués dans les fichiers `.request.json` et `.response.json` sous ce répertoire, et les événements portent un chemin `body_ref` à la place du corps en ligne. Livrez le répertoire avec un collecteur de journaux ou un sidecar plutôt que via le flux de télémétrie.1651 * Avec `=file:<dir>`, Claude Code écrit les corps non tronqués dans les fichiers `.request.json` et `.response.json` sous ce répertoire, et les événements portent un chemin `body_ref` à la place du corps en ligne. Livrez le répertoire avec un collecteur de journaux ou un sidecar plutôt que via le flux de télémétrie.

overview.md +3 −1

Details

18 <Tab title="Terminal">18 <Tab title="Terminal">

19 Le CLI complet pour travailler avec Claude Code directement dans votre terminal. Modifiez les fichiers, exécutez des commandes et gérez l'ensemble de votre projet à partir de la ligne de commande.19 Le CLI complet pour travailler avec Claude Code directement dans votre terminal. Modifiez les fichiers, exécutez des commandes et gérez l'ensemble de votre projet à partir de la ligne de commande.

20 20 

21 Pour installer Claude Code, utilisez l'une des méthodes suivantes :21 Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.

22 22 

23 <Tabs>23 <Tabs>

24 <Tab title="Installation native (recommandée)">24 <Tab title="Installation native (recommandée)">


40 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd40 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

41 ```41 ```

42 42 

43 Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](/docs/fr/troubleshoot-install#command-not-found-claude-after-installation).

44 

43 Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell. Votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.45 Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell. Votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.

44 46 

45 Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou une autre erreur curl, consultez [Dépannage de l'installation](/docs/fr/troubleshoot-install#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.47 Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou une autre erreur curl, consultez [Dépannage de l'installation](/docs/fr/troubleshoot-install#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.

permission-modes.md +167 −129

Details

8 8 

9Un mode de permission définit les actions que Claude Code peut effectuer dans une session sans vous demander d'abord. En mode Manuel, Claude Code s'arrête et vous demande avant la plupart des actions qui modifient des fichiers, exécutent des commandes shell ou accèdent au réseau. En [mode auto](#eliminate-prompts-with-auto-mode), un second modèle, le classificateur, examine les actions à votre place ; [comment le classificateur évalue les actions](#how-the-classifier-evaluates-actions) énumère les actions qu'il examine et celles qu'il ignore.9Un mode de permission définit les actions que Claude Code peut effectuer dans une session sans vous demander d'abord. En mode Manuel, Claude Code s'arrête et vous demande avant la plupart des actions qui modifient des fichiers, exécutent des commandes shell ou accèdent au réseau. En [mode auto](#eliminate-prompts-with-auto-mode), un second modèle, le classificateur, examine les actions à votre place ; [comment le classificateur évalue les actions](#how-the-classifier-evaluates-actions) énumère les actions qu'il examine et celles qu'il ignore.

10 10 

11Sur les plans Pro, Max et Team, le mode de permission de démarrage intégré est le mode auto. [Quel mode une session démarre](#which-mode-a-session-starts-in) couvre les surfaces et les paramètres qui changent le mode de permission de démarrage. Vous pouvez également modifier le mode de permission d'une session en cours à tout moment.11Avec Claude Code v2.1.283 ou version ultérieure, le mode auto est le mode de permission de démarrage intégré pour les sessions de terminal interactif et VS Code. Sur les versions antérieures, c'est le mode de permission de démarrage intégré uniquement sur les plans Pro, Max et Team. [Quel mode une session démarre](#which-mode-a-session-starts-in) couvre les surfaces et les paramètres qui changent le mode de permission de démarrage. Vous pouvez également modifier le mode de permission d'une session en cours à tout moment.

12 12 

13<h2 id="available-modes">13<h2 id="available-modes">

14 Modes disponibles14 Modes disponibles


57| Examiner chaque action vous-même | Mode manuel : `claude --permission-mode default` | Aucune | Travail sensible, code non familier |57| Examiner chaque action vous-même | Mode manuel : `claude --permission-mode default` | Aucune | Travail sensible, code non familier |

58| Itérer localement avec moins d'invites, sans classificateur | Mode manuel plus le sandbox Bash en [mode auto-allow](/docs/fr/sandboxing#sandbox-modes) : `claude --permission-mode default`, puis exécutez `/sandbox` et sélectionnez auto-allow | Le sandbox Bash intégré, sur macOS, Linux et WSL2 | Les règles de refus s'appliquent toujours, et les règles d'ask qui nomment une commande, comme `Bash(git push *)`, invitent toujours. Pour activer le sandbox à partir d'un fichier de paramètres à la place, définissez [`sandbox.enabled`](/docs/fr/settings-reference#sandbox-enabled) sur `true` |58| Itérer localement avec moins d'invites, sans classificateur | Mode manuel plus le sandbox Bash en [mode auto-allow](/docs/fr/sandboxing#sandbox-modes) : `claude --permission-mode default`, puis exécutez `/sandbox` et sélectionnez auto-allow | Le sandbox Bash intégré, sur macOS, Linux et WSL2 | Les règles de refus s'appliquent toujours, et les règles d'ask qui nomment une commande, comme `Bash(git push *)`, invitent toujours. Pour activer le sandbox à partir d'un fichier de paramètres à la place, définissez [`sandbox.enabled`](/docs/fr/settings-reference#sandbox-enabled) sur `true` |

59| Explorer avant de modifier quoi que ce soit | `claude --permission-mode plan` | Aucune | Claude Code bloque les modifications jusqu'à ce que vous [approuviez un plan](#review-and-approve-a-plan) |59| Explorer avant de modifier quoi que ce soit | `claude --permission-mode plan` | Aucune | Claude Code bloque les modifications jusqu'à ce que vous [approuviez un plan](#review-and-approve-a-plan) |

60| Travailler en mode automatique sans intervention | `claude --permission-mode auto`, le [mode de permission de démarrage intégré](#which-mode-a-session-starts-in) sur Pro, Max et Team | Aucune ; un sandbox ou un conteneur ajoute une défense en profondeur | Nécessite un [modèle pris en charge](#eliminate-prompts-with-auto-mode), et votre organisation peut [désactiver le mode auto](#eliminate-prompts-with-auto-mode) |60| Travailler en mode automatique sans intervention | `claude --permission-mode auto`, le [mode de permission de démarrage intégré](#which-mode-a-session-starts-in) avec v2.1.283 ou ultérieur | Aucune ; un sandbox ou un conteneur ajoute une défense en profondeur | Nécessite un [modèle pris en charge](#eliminate-prompts-with-auto-mode), et votre organisation peut [désactiver le mode auto](#eliminate-prompts-with-auto-mode) |

61| Exécuter en CI avec une liste d'autorisation exacte | `claude -p "run the test suite" --permission-mode dontAsk --allowedTools "Bash(npm test)" "Read"` | Aucune au-delà de ce que votre exécuteur CI fournit | Les [sessions cloud](/docs/fr/claude-code-on-the-web) ignorent `dontAsk` des fichiers de paramètres |61| Exécuter en CI avec une liste d'autorisation exacte | `claude -p "run the test suite" --permission-mode dontAsk --allowedTools "Bash(npm test)" "Read"` | Aucune au-delà de ce que votre exécuteur CI fournit | Les [sessions cloud](/docs/fr/claude-code-on-the-web) ignorent `dontAsk` des fichiers de paramètres |

62| Exécuter complètement sans surveillance à l'intérieur d'un conteneur | `claude -p "<prompt>" --dangerously-skip-permissions` | Obligatoire : un conteneur, une VM ou le [runtime sandbox](/docs/fr/sandbox-environments#sandbox-runtime) ; sur Linux et macOS, exécutez-le en tant qu'[utilisateur non-root](#skip-all-checks-with-bypasspermissions-mode) | Les sessions cloud ignorent ce mode des fichiers de paramètres. Dans cette exécution `-p`, les [quelques appels qui inviteraient toujours](#skip-all-checks-with-bypasspermissions-mode) sont refusés à la place |62| Exécuter complètement sans surveillance à l'intérieur d'un conteneur | `claude -p "<prompt>" --dangerously-skip-permissions` | Obligatoire : un conteneur, une VM ou le [runtime sandbox](/docs/fr/sandbox-environments#sandbox-runtime) ; sur Linux et macOS, exécutez-le en tant qu'[utilisateur non-root](#skip-all-checks-with-bypasspermissions-mode) | Les sessions cloud ignorent ce mode des fichiers de paramètres. Dans cette exécution `-p`, les [quelques appels qui inviteraient toujours](#skip-all-checks-with-bypasspermissions-mode) sont refusés à la place |

63 63 


81 81 

82La valeur par défaut `auto` intégrée nécessite Claude Code v2.1.228 ou version ultérieure sur macOS, Linux et WSL, et v2.1.233 ou version ultérieure sur Windows natif. Sur les versions antérieures, la valeur par défaut intégrée est Manuel.82La valeur par défaut `auto` intégrée nécessite Claude Code v2.1.228 ou version ultérieure sur macOS, Linux et WSL, et v2.1.233 ou version ultérieure sur Windows natif. Sur les versions antérieures, la valeur par défaut intégrée est Manuel.

83 83 

84La valeur par défaut intégrée dépend de la façon dont vous exécutez Claude Code, de votre plan et de la possibilité pour Claude Code de récupérer ses drapeaux de fonctionnalité. La première ligne qui correspond à votre session s'applique. Le tableau couvre les sessions que vous démarrez dans un terminal ou via l'extension VS Code ; pour l'application de bureau et claude.ai, voir les onglets Desktop et Web dans [Basculer les modes de permission](#switch-permission-modes).84La valeur par défaut intégrée dépend de la façon dont vous exécutez Claude Code. La première ligne qui correspond à votre session s'applique. Le tableau couvre les sessions que vous démarrez dans un terminal ou via l'extension VS Code ; pour l'application de bureau et claude.ai, voir les onglets Desktop et Web dans [Basculer les modes de permission](#switch-permission-modes).

85 85 

86| Comment vous exécutez Claude Code | Mode de permission de démarrage intégré |86| Comment vous exécutez Claude Code | Mode de permission de démarrage intégré |

87| :- | :- |87| :- | :- |

88| Un fichier de paramètres définit `disableAutoMode` sur `"disable"` | `default` |88| Un fichier de paramètres définit `disableAutoMode` sur `"disable"` | `default` |

89| La [récupération des drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching) est désactivée | `default` |

90| Votre [première session après l'installation de Claude Code ou la mise à niveau](/docs/fr/env-vars#first-session-after-an-install-or-upgrade) vers une version qui ajoute cette valeur par défaut, sauf après une installation propre, Claude Code récupère les drapeaux à temps | `default` |

91| `claude -p` ou le [SDK Agent](/docs/fr/agent-sdk/permissions) | `default` |89| `claude -p` ou le [SDK Agent](/docs/fr/agent-sdk/permissions) | `default` |

92| Amazon Bedrock, la plateforme Agent de Google Cloud, Microsoft Foundry, [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws), ou une session [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectée | `default` |90| Dans un terminal ou via l'[extension VS Code](/docs/fr/vs-code) | `auto` avec Claude Code v2.1.283 ou version ultérieure ; sur les versions antérieures, `auto` sur les plans Pro, Max ou Team dans les sessions qui [récupèrent les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), et `default` sinon |

93| Un plan Pro, Max ou Team, dans un terminal ou via l'[extension VS Code](/docs/fr/vs-code) | `auto` |

94| Un plan Enterprise ou une clé API Claude Console | `default` |

95 91 

96Quand la récupération des drapeaux de fonctionnalité est désactivée, ou dans une [première session après une installation ou une mise à niveau](/docs/fr/env-vars#first-session-after-an-install-or-upgrade) où les drapeaux ne sont pas encore arrivés, l'extension VS Code ignore tous les fichiers de paramètres lors du choix du mode de permission de démarrage.92Dans votre [première session après une installation ou une mise à niveau](/docs/fr/env-vars#first-session-after-an-install-or-upgrade), Claude Code peut choisir le mode de permission de démarrage avant l'arrivée de ses drapeaux de fonctionnalité. Cette session peut démarrer dans un mode de permission différent de celui que le tableau indique, et votre session suivante correspond au tableau.

97 93 

98Quand le drapeau, un fichier de paramètres ou la valeur par défaut intégrée sélectionne `auto` mais que le mode auto n'est pas disponible pour la session, Claude Code démarre la session en mode Manuel à la place. Le mode auto est indisponible quand la session ne répond pas aux [exigences de disponibilité](#eliminate-prompts-with-auto-mode), comme un fichier de paramètres le désactivant ou un modèle qui ne le supporte pas, ou quand Anthropic l'a temporairement désactivé côté serveur.94Quand le drapeau, un fichier de paramètres ou la valeur par défaut intégrée sélectionne `auto` mais que le mode auto n'est pas disponible pour la session, Claude Code démarre la session en mode Manuel à la place. Le mode auto est indisponible quand la session ne répond pas aux [exigences de disponibilité](#eliminate-prompts-with-auto-mode), comme un fichier de paramètres le désactivant ou un modèle qui ne le supporte pas, ou quand Anthropic l'a temporairement désactivé côté serveur.

99 95 


177 173 

178 1. `claudeCode.initialPermissionMode`174 1. `claudeCode.initialPermissionMode`

179 2. Le mode que vous avez choisi en dernier à partir de l'indicateur de mode, s'il s'agissait de Manuel, Éditer automatiquement, ou Auto. Choisir Plan ou Bypass permissions s'applique à cette conversation uniquement175 2. Le mode que vous avez choisi en dernier à partir de l'indicateur de mode, s'il s'agissait de Manuel, Éditer automatiquement, ou Auto. Choisir Plan ou Bypass permissions s'applique à cette conversation uniquement

180 3. `permissions.defaultMode` à partir des [paramètres gérés](/docs/fr/managed-settings) ou `~/.claude/settings.json`, sur les plans Pro, Max et Team avec la [récupération des drapeaux de fonctionnalité](#which-mode-a-session-starts-in) disponible176 3. `permissions.defaultMode` à partir des [paramètres gérés](/docs/fr/managed-settings) ou `~/.claude/settings.json`

181 4. La [valeur par défaut intégrée](#which-mode-a-session-starts-in) pour votre plan, fournisseur et paramètres d'organisation177 4. La [valeur par défaut intégrée](#which-mode-a-session-starts-in) pour votre plan, fournisseur et paramètres d'organisation

182 178 

183 L'extension ne lit jamais le `.claude/settings.json` ou `.claude/settings.local.json` d'un projet pour le mode de permission de démarrage, et dans les conversations qui ne répondent pas aux conditions de l'élément 3, elle ne lit aucun fichier de paramètres du tout. Quand `claudeCode.claudeProcessWrapper` est défini, les éléments 3 et 4 ne s'appliquent pas non plus : ces conversations démarrent en Manuel sauf si l'élément 1 ou l'élément 2 définit un mode de permission.179 L'extension ne lit jamais le `.claude/settings.json` ou `.claude/settings.local.json` d'un projet pour le mode de permission de démarrage. Quand `claudeCode.claudeProcessWrapper` est défini, les éléments 3 et 4 ne s'appliquent pas : ces conversations démarrent en Manuel sauf si l'élément 1 ou l'élément 2 définit un mode de permission.

180 

181 Avant v2.1.283, l'élément 3 s'appliquait uniquement sur les plans Pro, Max et Team dans les sessions qui [récupèrent les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching).

184 182 

185 Auto apparaît dans l'indicateur de mode quand le [mode auto est disponible](#eliminate-prompts-with-auto-mode).183 Auto apparaît dans l'indicateur de mode quand le [mode auto est disponible](#eliminate-prompts-with-auto-mode).

186 184 


214 Utilisez la liste déroulante de mode à côté de la zone de saisie sur [claude.ai/code](https://claude.ai/code) ou dans l'application mobile. Les invites de permission apparaissent dans claude.ai pour approbation. Les modes qui apparaissent dépendent de l'endroit où la session s'exécute :212 Utilisez la liste déroulante de mode à côté de la zone de saisie sur [claude.ai/code](https://claude.ai/code) ou dans l'application mobile. Les invites de permission apparaissent dans claude.ai pour approbation. Les modes qui apparaissent dépendent de l'endroit où la session s'exécute :

215 213 

216 * **[Sessions cloud](/docs/fr/claude-code-on-the-web)** : Accept edits, Plan et Auto. Accept edits correspond au mode `default` : les sessions cloud pré-approuvent les modifications de fichiers quel que soit le mode, donc la liste déroulante affiche Accept edits au lieu de Manual. Les sessions cloud honorent toujours `defaultMode: "acceptEdits"` à partir des paramètres. Le mode Auto n'apparaît que quand votre organisation le permet et que le modèle sélectionné le supporte. Bypass permissions n'est pas disponible.214 * **[Sessions cloud](/docs/fr/claude-code-on-the-web)** : Accept edits, Plan et Auto. Accept edits correspond au mode `default` : les sessions cloud pré-approuvent les modifications de fichiers quel que soit le mode, donc la liste déroulante affiche Accept edits au lieu de Manual. Les sessions cloud honorent toujours `defaultMode: "acceptEdits"` à partir des paramètres. Le mode Auto n'apparaît que quand votre organisation le permet et que le modèle sélectionné le supporte. Bypass permissions n'est pas disponible.

217 * **[Sessions Remote Control](/docs/fr/remote-control)** sur votre machine locale : Manual, Accept edits et Plan. Vous ne pouvez pas sélectionner Auto ou Bypass permissions à partir de l'application.215 * **[Sessions Remote Control](/docs/fr/remote-control)** sur votre machine locale : Manual, Accept edits et Plan pour une session que vous avez démarrée vous-même, et vous ne pouvez pas sélectionner Auto ou Bypass permissions à partir de l'application. Pour un fil de projet s'exécutant sur votre ordinateur, voir [Exécuter un fil sur votre propre ordinateur](/docs/fr/claude-projects#run-a-thread-on-your-own-computer).

218 * Sauf pour Bypass permissions, la liste déroulante affiche le mode de permission dans lequel se trouve la session locale, y compris un mode défini à partir du terminal. Elle se met à jour quand le mode de permission change dans l'application ou dans le terminal. La session ne signale jamais Bypass permissions à claude.ai, donc basculer vers celui-ci à partir du terminal ne change pas ce que la liste déroulante affiche.216 * Sauf pour Bypass permissions, la liste déroulante affiche le mode de permission dans lequel se trouve la session locale, y compris un mode défini à partir du terminal. Elle se met à jour quand le mode de permission change dans l'application ou dans le terminal. La session ne signale jamais Bypass permissions à claude.ai, donc basculer vers celui-ci à partir du terminal ne change pas ce que la liste déroulante affiche.

219 * Les sessions hébergées par l'[application de bureau](/docs/fr/desktop) ou l'[extension VS Code](/docs/fr/vs-code) signalent les changements de mode de permission à claude.ai au fur et à mesure qu'ils se produisent, de la même manière que les sessions hébergées dans un terminal.217 * Les sessions hébergées par l'[application de bureau](/docs/fr/desktop) ou l'[extension VS Code](/docs/fr/vs-code) signalent les changements de mode de permission à claude.ai au fur et à mesure qu'ils se produisent, de la même manière que les sessions hébergées dans un terminal.

220 * Avant v2.1.202, les sessions connectées avec `/remote-control` ou `claude --remote-control` ne signalaient pas du tout leur mode de permission, donc claude.ai et l'application mobile pouvaient afficher un mode de permission dans lequel la session n'était pas. L'inadéquation affectait uniquement l'étiquette. Claude Code générait des invites de permission à partir du mode de permission réel de la session, et elles apparaissaient toujours dans l'application pour approbation.218 * Avant v2.1.202, les sessions connectées avec `/remote-control` ou `claude --remote-control` ne signalaient pas du tout leur mode de permission, donc claude.ai et l'application mobile pouvaient afficher un mode de permission dans lequel la session n'était pas. L'inadéquation affectait uniquement l'étiquette. Claude Code générait des invites de permission à partir du mode de permission réel de la session, et elles apparaissaient toujours dans l'application pour approbation.


233 231 

234Le mode `acceptEdits` permet à Claude de créer et modifier des fichiers dans votre répertoire de travail sans inviter. La barre d'état affiche `⏵⏵ accept edits on` tandis que ce mode est actif.232Le mode `acceptEdits` permet à Claude de créer et modifier des fichiers dans votre répertoire de travail sans inviter. La barre d'état affiche `⏵⏵ accept edits on` tandis que ce mode est actif.

235 233 

236En plus des modifications de fichiers, le mode `acceptEdits` auto-approuve les commandes Bash courantes du système de fichiers : `mkdir`, `touch`, `rm`, `rmdir`, `mv`, `cp`, et `sed`. Ces commandes sont également auto-approuvées quand elles sont préfixées par des variables d'environnement sûres telles que `LANG=C` ou `NO_COLOR=1`, ou des wrappers de processus tels que `timeout`, `nice`, ou `nohup`. Comme pour les modifications de fichiers, l'auto-approbation s'applique uniquement aux chemins à l'intérieur de votre répertoire de travail ou `additionalDirectories`. Les chemins en dehors de cette portée, les écritures vers les [chemins protégés](#protected-paths), les suppressions `rm` et `rmdir` ciblant un [chemin critique](#critical-paths), et toutes les autres commandes Bash sauf l'[ensemble intégré en lecture seule](/docs/fr/permissions#read-only-commands) invitent toujours.234En plus des modifications de fichiers, le mode `acceptEdits` auto-approuve les commandes Bash courantes du système de fichiers : `mkdir`, `touch`, `rm`, `rmdir`, `mv`, `cp`, et `sed`. Ces commandes sont également auto-approuvées quand elles sont préfixées par des variables d'environnement sûres telles que `LANG=C` ou `NO_COLOR=1`, ou des wrappers de processus tels que `timeout`, `nice`, ou `nohup`. Comme pour les modifications de fichiers, l'auto-approbation s'applique uniquement aux chemins à l'intérieur de votre répertoire de travail ou `additionalDirectories`.

235 

236Chaque chemin passe également par la [vérification des liens symboliques](/docs/fr/permissions#symlinks), donc une écriture qui se résout en dehors de cette portée n'est pas auto-approuvée non plus. Les chemins en dehors de cette portée, les écritures vers les [chemins protégés](#protected-paths), les suppressions `rm` et `rmdir` ciblant un [chemin critique](#critical-paths), et toutes les autres commandes Bash sauf l'[ensemble intégré en lecture seule](/docs/fr/permissions#read-only-commands) invitent toujours.

237 237 

238Quand l'[outil PowerShell](/docs/fr/tools-reference#powershell-tool) est activé, le mode `acceptEdits` auto-approuve également `Set-Content`, `Add-Content`, `Clear-Content`, et `Remove-Item` sur les chemins dans la portée, ainsi que leurs alias courants. Les mêmes règles de portée et de chemin protégé s'appliquent, et `Remove-Item` obtient [sa propre vérification](#remove-item-in-powershell). Un argument positionnel qui contient un caractère de guillemet, comme l'apostrophe dans `Set-Content .\notes.txt "It's done"`, invite toujours même sur les chemins dans la portée, car Claude Code ne peut pas valider statiquement un argument dont les lectures entre guillemets et sans guillemets diffèrent. Passez le contenu via un paramètre nommé tel que `-Value` pour éviter l'invite.238Quand l'[outil PowerShell](/docs/fr/tools-reference#powershell-tool) est activé, le mode `acceptEdits` auto-approuve également `Set-Content`, `Add-Content`, `Clear-Content`, et `Remove-Item` sur les chemins dans la portée, ainsi que leurs alias courants. Les mêmes règles de portée et de chemin protégé s'appliquent, et `Remove-Item` obtient [sa propre vérification](#remove-item-in-powershell). Un argument positionnel qui contient un caractère de guillemet, comme l'apostrophe dans `Set-Content .\notes.txt "It's done"`, invite toujours même sur les chemins dans la portée, car Claude Code ne peut pas valider statiquement un argument dont les lectures entre guillemets et sans guillemets diffèrent. Passez le contenu via un paramètre nommé tel que `-Value` pour éviter l'invite.

239 239 


251 251 

252Le mode plan indique à Claude de rechercher et de proposer des modifications sans les effectuer. Claude lit les fichiers, exécute des commandes shell pour explorer et rédige un plan, mais ne modifie pas votre source. Sauf dans les sessions avec les [permissions de contournement disponibles](#skip-all-checks-with-bypasspermissions-mode), les modifications restent bloquées jusqu'à ce que vous approuviez le plan.252Le mode plan indique à Claude de rechercher et de proposer des modifications sans les effectuer. Claude lit les fichiers, exécute des commandes shell pour explorer et rédige un plan, mais ne modifie pas votre source. Sauf dans les sessions avec les [permissions de contournement disponibles](#skip-all-checks-with-bypasspermissions-mode), les modifications restent bloquées jusqu'à ce que vous approuviez le plan.

253 253 

254Quand le [mode auto](/docs/fr/auto-mode-config) est disponible et que le paramètre `useAutoModeDuringPlan` est activé, ce qui est le cas par défaut, le classificateur examine les commandes shell pendant la planification au lieu de vous inviter. Les commandes approuvées s'exécutent, et les commandes rejetées sont bloquées. Sinon, les commandes en dehors de l'[ensemble intégré en lecture seule](/docs/fr/permissions#read-only-commands) invitent une approbation, y compris quand le [mode auto-allow](/docs/fr/sandboxing#sandbox-modes) du sandbox est activé. Dans les sessions avec les permissions de contournement disponibles, ni le classificateur ni une invite ne s'appliquent aux commandes de planification ; [Ignorer tous les contrôles avec le mode bypassPermissions](#skip-all-checks-with-bypasspermissions-mode) couvre les quelques choses qui invitent toujours là. Dans v2.1.212 à v2.1.217, les sessions sans permissions de contournement invitaient pour chaque commande en dehors de l'ensemble en lecture seule, que le mode auto soit disponible ou non.254Ce qui se passe à une commande shell pendant la planification dépend de la session, et le premier de ces cas qui correspond s'applique :

255 

256* **Sessions de terminal interactives avec permissions de contournement disponibles** : ni le classificateur ni une invite ne s'appliquent aux commandes de planification. [Ignorer tous les contrôles avec le mode bypassPermissions](#skip-all-checks-with-bypasspermissions-mode) couvre les quelques choses qui invitent toujours là.

257* **[Mode auto](/docs/fr/auto-mode-config) disponible et le paramètre `useAutoModeDuringPlan` activé**, ce qui est le cas par défaut : le classificateur examine les commandes shell autres que les [suppressions de chemin critique](#critical-paths) au lieu de vous inviter. Les commandes approuvées s'exécutent, et les commandes rejetées sont bloquées.

258* **Mode auto non disponible, ou `useAutoModeDuringPlan` désactivé** : les commandes en dehors de l'[ensemble intégré en lecture seule](/docs/fr/permissions#read-only-commands) invitent une approbation, y compris quand le [mode auto-allow](/docs/fr/sandboxing#sandbox-modes) du sandbox est activé.

255 259 

256Entrez en mode plan en appuyant sur `Shift+Tab` ou en préfixant une seule invite avec `/plan`. Vous pouvez également démarrer en mode plan à partir de la CLI :260Entrez en mode plan en appuyant sur `Shift+Tab` ou en préfixant une seule invite avec `/plan`. Vous pouvez également démarrer en mode plan à partir de la CLI :

257 261 


287 Éliminer les invites de permission avec le mode auto291 Éliminer les invites de permission avec le mode auto

288</h2>292</h2>

289 293 

290Le mode auto permet à Claude d'exécuter sans invites de permission routinières. Un modèle classificateur distinct examine les actions avant leur exécution, bloquant tout ce qui dépasse votre demande, cible une infrastructure non reconnue, ou semble provenir d'un contenu hostile que Claude a lu. Les [règles ask](/docs/fr/permissions#manage-permissions) explicites forcent toujours une invite.294Le mode auto permet à Claude d'exécuter sans invites de permission routinières. Un modèle classificateur distinct examine les actions avant leur exécution, bloquant tout ce qui dépasse votre demande, cible une infrastructure non reconnue, ou semble provenir de contenu hostile que Claude a lu. Les [règles ask](/docs/fr/permissions#manage-permissions) explicites forcent toujours une invite.

291 295 

292Sur les plans Pro, Max et Team, le mode auto est le [mode de permission de démarrage intégré](#which-mode-a-session-starts-in).296Avec Claude Code v2.1.283 ou ultérieur, le mode auto est le [mode de permission intégré de démarrage](#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code sur tous les plans et fournisseurs. Sur les versions antérieures, c'est le mode de permission intégré de démarrage uniquement sur les plans Pro, Max et Team.

293 297 

294Le classificateur examine également chaque message que Claude envoie à un autre agent avec [`SendMessage`](/docs/fr/tools-reference), qu'il s'agisse de texte brut ou d'un message [d'équipe d'agents](/docs/fr/agent-teams) structuré, avant que Claude Code le livre, à la fois en mode auto et en [mode plan tandis que le classificateur examine les commandes](#analyze-before-you-edit-with-plan-mode) ; l'examen d'envoi nécessite Claude Code v2.1.222 ou ultérieur.298Le classificateur examine également chaque message que Claude envoie à un autre agent avec [`SendMessage`](/docs/fr/tools-reference), qu'il s'agisse de texte brut ou d'un message structuré [d'équipe d'agents](/docs/fr/agent-teams), avant que Claude Code le livre, à la fois en mode auto et en [mode plan tandis que le classificateur examine les commandes](#analyze-before-you-edit-with-plan-mode) ; l'examen d'envoi nécessite Claude Code v2.1.222 ou ultérieur.

295 299 

296Le classificateur examine également et approuve ou bloque les suppressions `rm` et `rmdir` ciblant un [chemin critique](#critical-paths), comme `rm -rf /` et `rm -rf ~`, y compris lorsque la suppression se trouve à l'intérieur d'une substitution de commande ou de processus.300Par défaut, le classificateur n'examine pas les suppressions `rm` et `rmdir` ciblant un chemin critique, comme `rm -rf /` ou `rm -rf ~`. [Chemins critiques](#critical-paths) couvre ce qui leur arrive dans chaque mode de permission.

297 301 

298Le mode auto encourage également Claude à continuer à travailler sans s'arrêter pour des questions de clarification, bien que Claude demande toujours quand votre invite ou une compétence s'y appuie explicitement. Pour un comportement plus autonome dans un mode qui vous invite toujours, définissez plutôt le [style de sortie proactif](/docs/fr/output-styles).302Le mode auto encourage également Claude à continuer à travailler sans s'arrêter pour des questions de clarification, bien que Claude demande toujours quand votre invite ou une compétence s'y fient explicitement. Pour un comportement plus autonome dans un mode qui vous invite toujours, définissez plutôt le [style de sortie proactif](/docs/fr/output-styles).

299 303 

300<Warning>304<Warning>

301 Le mode auto réduit les invites de permission mais ne garantit pas la sécurité. Utilisez-le pour les tâches où vous faites confiance à la direction générale, pas comme remplacement pour l'examen des opérations sensibles.305 Le mode auto réduit les invites de permission mais ne garantit pas la sécurité. Utilisez-le pour les tâches où vous faites confiance à la direction générale, pas comme remplacement de l'examen sur les opérations sensibles.

302</Warning>306</Warning>

303 307 

304Le mode auto est disponible uniquement lorsque votre compte répond à tous ces critères :308Le mode auto est disponible uniquement quand votre compte répond à tous ces critères :

305 309 

306* **Plan** : Tous les plans.310* **Plan** : Tous les plans.

307* **Organisation** : sur Team et Enterprise, le mode auto est disponible par défaut. Les administrateurs peuvent le désactiver pour l'organisation en définissant `permissions.disableAutoMode` sur `"disable"` dans les [paramètres gérés](/docs/fr/managed-settings).311* **Organisation** : sur Team et Enterprise, le mode auto est disponible par défaut. Les administrateurs peuvent le désactiver pour l'organisation en définissant `permissions.disableAutoMode` sur `"disable"` dans les [paramètres gérés](/docs/fr/managed-settings).

308* **Modèle** : sur l'API Anthropic et [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws), Claude Opus 4.6 ou ultérieur, Sonnet 4.6 ou ultérieur, ou un [modèle Fable](/docs/fr/model-config#work-with-fable). Sur Amazon Bedrock, la plateforme Agent de Google Cloud, Microsoft Foundry et les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectées, uniquement Claude Sonnet 5, Opus 4.7 ou ultérieur, et les modèles Fable. Les modèles plus anciens, y compris Sonnet 4.5, Opus 4.5, Haiku et les modèles claude-3, ne sont pas pris en charge sur aucun fournisseur.312* **Modèle** : sur l'API Anthropic et [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws), Claude Opus 4.6 ou ultérieur, Sonnet 4.6 ou ultérieur, ou un [modèle Fable](/docs/fr/model-config#work-with-fable). Sur Amazon Bedrock, la plateforme d'agents de Google Cloud, Microsoft Foundry et les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectées, uniquement Claude Sonnet 5 ou ultérieur, Opus 4.7 ou ultérieur, et les modèles Fable. Les modèles plus anciens, y compris Sonnet 4.5, Opus 4.5, Haiku et les modèles claude-3, ne sont pas pris en charge sur aucun fournisseur.

309* **Fournisseur** : disponible par défaut sur l'API Anthropic, Claude Platform sur AWS, Amazon Bedrock, la plateforme Agent de Google Cloud, Microsoft Foundry et les sessions de passerelle d'applications Claude connectées.313* **Fournisseur** : disponible par défaut sur l'API Anthropic, Claude Platform sur AWS, Amazon Bedrock, la plateforme d'agents de Google Cloud, Microsoft Foundry et les sessions de passerelle d'applications Claude connectées.

310 314 

311Si Claude Code signale que le mode auto n'est pas disponible, vérifiez d'abord ces critères et si un fichier de paramètres définit [`disableAutoMode`](/docs/fr/settings-reference#disableautomode). Anthropic peut également avoir désactivé le mode auto côté serveur, ou le serveur peut avoir rejeté le mode auto pour votre compte. Une session qui a reçu l'une ou l'autre réponse garde le mode auto désactivé jusqu'à la fin de la session, donc démarrez une nouvelle session plus tard.315Si Claude Code signale que le mode auto n'est pas disponible, vérifiez d'abord ces critères et si un fichier de paramètres définit [`disableAutoMode`](/docs/fr/settings-reference#disableautomode). Anthropic peut également avoir désactivé le mode auto côté serveur, ou le serveur peut avoir rejeté le mode auto pour votre compte. Une session qui a reçu l'une ou l'autre réponse garde le mode auto désactivé jusqu'à la fin de la session, donc démarrez une nouvelle session plus tard.

312 316 

313Un message distinct qui nomme un modèle et dit que le mode auto « ne peut pas déterminer la sécurité » d'une action signifie qu'une demande de classificateur a échoué. Cet échec est généralement transitoire, mais sur Amazon Bedrock, il peut se répéter jusqu'à ce que votre compte puisse invoquer le modèle nommé. Consultez la [référence des erreurs](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action) pour les causes et ce qu'il faut faire.317Un message distinct qui nomme un modèle et dit que le mode auto « ne peut pas déterminer la sécurité » d'une action signifie qu'une demande de classificateur a échoué. Cet échec est généralement transitoire, mais sur Amazon Bedrock, il peut se répéter jusqu'à ce que votre compte puisse invoquer le modèle nommé. Consultez la [référence d'erreur](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action) pour les causes et ce qu'il faut faire.

314 318 

315Si vous définissez `defaultMode: "auto"` dans les [paramètres](/docs/fr/settings-reference#all-settings) et qu'une session de terminal démarre en mode Manuel sans erreur, le paramètre se trouve probablement dans `.claude/settings.json` ou `.claude/settings.local.json`. `auto` ne prend pas effet à partir de ces fichiers. Déplacez-le vers `~/.claude/settings.json`. Pour une conversation que l'extension VS Code a démarrée, vérifiez plutôt la liste propre de l'extension dans [Basculer les modes de permission](#switch-permission-modes).319Si vous définissez `defaultMode: "auto"` dans les [paramètres](/docs/fr/settings-reference#all-settings) et qu'une session de terminal démarre en mode Manual sans erreur, le paramètre est probablement dans `.claude/settings.json` ou `.claude/settings.local.json`. `auto` ne prend pas effet à partir de ces fichiers. Déplacez-le vers `~/.claude/settings.json`. Pour une conversation que l'extension VS Code a démarrée, vérifiez plutôt la liste propre de l'extension dans [Changer les modes de permission](#switch-permission-modes).

316 320 

317<h3 id="enable-auto-mode-on-bedrock-agent-platform-or-foundry">321<h3 id="enable-auto-mode-on-bedrock-agent-platform-or-foundry">

318 Mode auto sur Bedrock, Agent Platform ou Foundry322 Mode auto sur Bedrock, Agent Platform ou Foundry

319</h3>323</h3>

320 324 

321Sur [Amazon Bedrock](/docs/fr/amazon-bedrock), [la plateforme Agent de Google Cloud](/docs/fr/google-vertex-ai), [Microsoft Foundry](/docs/fr/microsoft-foundry) et les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectées, le mode auto apparaît dans le cycle `Shift+Tab` par défaut. L'apparition dans le cycle ne change pas le mode de permission dans lequel une session démarre : sur ces fournisseurs, les sessions de terminal démarrent dans votre [`defaultMode`](/docs/fr/settings-reference#permissions-defaultmode), qui est Manuel sauf si vous le changez, et les conversations dans l'[extension VS Code](/docs/fr/vs-code) démarrent en Manuel sauf si `claudeCode.initialPermissionMode` ou un mode que vous avez choisi dans l'extension en définit un. Seuls Claude Sonnet 5, Opus 4.7 ou ultérieur, et les modèles Fable sont pris en charge sur ces fournisseurs.325Sur [Amazon Bedrock](/docs/fr/amazon-bedrock), [la plateforme d'agents de Google Cloud](/docs/fr/google-vertex-ai), [Microsoft Foundry](/docs/fr/microsoft-foundry) et les sessions de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectées, le mode auto est disponible par défaut. Avec Claude Code v2.1.283 ou ultérieur, c'est aussi le [mode de permission intégré de démarrage](#which-mode-a-session-starts-in) pour les sessions de terminal interactif et [VS Code](/docs/fr/vs-code). Pour choisir vous-même le mode de permission de démarrage, définissez `permissions.defaultMode` comme le décrit [Démarrer dans un mode de permission différent](#start-in-a-different-mode), ou choisissez un mode de permission dans l'indicateur de mode de l'extension VS Code.

322 326 

323Pour faire du mode auto le mode de permission de démarrage par défaut, définissez `"permissions": {"defaultMode": "auto"}` dans les paramètres utilisateur ou gérés. Dans les sessions que l'extension VS Code démarre, sélectionnez plutôt **Auto** dans l'indicateur de mode. [Basculer les modes de permission](#switch-permission-modes) couvre ce qui prime sur ce choix.327Seuls Claude Sonnet 5 ou ultérieur, Opus 4.7 ou ultérieur, et les modèles Fable sont pris en charge sur ces fournisseurs. Sur tout autre modèle, la session démarre en Manual à la place.

324 328 

325Le contrôle [`/doctor`](/docs/fr/commands#all-commands) propose cette valeur par défaut des paramètres utilisateur sur ces fournisseurs de la même manière qu'il le fait sur l'API Anthropic.329Pour empêcher les développeurs d'utiliser le mode auto, définissez `disableAutoMode` sur `"disable"` dans les [paramètres gérés](/docs/fr/managed-settings). Cela supprime `auto` du cycle `Shift+Tab`, et une session démarrée avec `--permission-mode auto` démarre en Manual à la place. Une session déjà en cours d'exécution en mode auto le quitte quand le paramètre l'atteint à partir d'une [source déployée par l'administrateur](/docs/fr/managed-settings#which-managed-source-claude-code-uses), et affiche `auto mode disabled by settings`. Avant v2.1.251, une session en cours d'exécution gardait le mode auto jusqu'à sa fin.

326 330 

327Pour empêcher les développeurs d'utiliser le mode auto, définissez `disableAutoMode` sur `"disable"` dans les [paramètres gérés](/docs/fr/managed-settings). Cela supprime `auto` du cycle `Shift+Tab`, et une session démarrée avec `--permission-mode auto` démarre en Manuel à la place. Une session déjà en cours d'exécution en mode auto le quitte lorsque le paramètre l'atteint à partir d'une [source déployée par l'administrateur](/docs/fr/managed-settings#which-managed-source-claude-code-uses), et affiche `auto mode disabled by settings`. Avant v2.1.251, une session en cours d'exécution gardait le mode auto jusqu'à la fin.331Dans v2.1.158 à v2.1.206, le mode auto était désactivé sur ces fournisseurs jusqu'à ce que vous définissiez `CLAUDE_CODE_ENABLE_AUTO_MODE=1`, et Claude Code ignorait `defaultMode: "auto"` sur ces fournisseurs à moins que la variable ne soit également définie. La variable est toujours acceptée pour la compatibilité et n'a aucun effet à partir de v2.1.207.

328 

329Dans v2.1.158 à v2.1.206, le mode auto était désactivé sur ces fournisseurs jusqu'à ce que vous définissiez `CLAUDE_CODE_ENABLE_AUTO_MODE=1`, et Claude Code ignorait `defaultMode: "auto"` sur ces fournisseurs sauf si la variable était également définie. La variable est toujours acceptée pour la compatibilité et n'a aucun effet à partir de v2.1.207.

330 332 

331<h3 id="server-side-classifier-review">333<h3 id="server-side-classifier-review">

332 Examen du classificateur côté serveur334 Examen du classificateur côté serveur


334 336 

335En mode auto, Claude Code peut demander au serveur de vérifier les actions que [l'ordre de décision](#how-the-classifier-evaluates-actions) envoie pour examen, dans le cadre des demandes de modèle de la session, à la place d'envoyer ses propres demandes de classificateur. Ces sessions demandent :337En mode auto, Claude Code peut demander au serveur de vérifier les actions que [l'ordre de décision](#how-the-classifier-evaluates-actions) envoie pour examen, dans le cadre des demandes de modèle de la session, à la place d'envoyer ses propres demandes de classificateur. Ces sessions demandent :

336 338 

337* **Une connexion directe à l'API Anthropic** : dans une session de terminal interactive, sur tous les plans claude.ai et sur les comptes qui utilisent l'API Claude, à mesure qu'Anthropic le déploie. Nécessite Claude Code v2.1.271 ou ultérieur sur les plans Pro, Max et Team, et v2.1.278 ou ultérieur sur les plans Enterprise et les comptes API Claude. À partir de v2.1.282, une session qui [ne récupère pas les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), par exemple parce que vous avez désactivé la télémétrie, demande au serveur par défaut dans n'importe quel type de session.339* **Une connexion directe à l'API Anthropic** : dans une session de terminal interactif, sur tous les plans claude.ai et sur les comptes qui utilisent l'API Claude, au fur et à mesure qu'Anthropic le déploie. Nécessite Claude Code v2.1.271 ou ultérieur sur les plans Pro, Max et Team, et v2.1.278 ou ultérieur sur les plans Enterprise et les comptes Claude API. À partir de v2.1.282, une session qui [ne récupère pas les drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), par exemple parce que vous avez désactivé la télémétrie, demande au serveur par défaut dans n'importe quel type de session.

338* **Un fournisseur cloud, ou une passerelle LLM ou un proxy** : sur [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws), Amazon Bedrock, la plateforme Agent de Google Cloud et Microsoft Foundry, et chaque fois que vous pointez `ANTHROPIC_BASE_URL` vers une [passerelle LLM ou un proxy](/docs/fr/llm-gateway), quel que soit votre plan. Demander au serveur par défaut nécessite Claude Code v2.1.278 ou ultérieur.340* **Un fournisseur cloud, ou une passerelle LLM ou un proxy** : sur [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws), Amazon Bedrock, la plateforme d'agents de Google Cloud et Microsoft Foundry, et chaque fois que vous pointez `ANTHROPIC_BASE_URL` vers une [passerelle LLM ou un proxy](/docs/fr/llm-gateway), quel que soit votre plan. Demander par défaut nécessite Claude Code v2.1.278 ou ultérieur.

339* **Une session de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectée** : nécessite Claude Code v2.1.280 ou ultérieur341* **Une session de [passerelle d'applications Claude](/docs/fr/claude-apps-gateway) connectée** : nécessite Claude Code v2.1.280 ou ultérieur

340 342 

341Là où le serveur examine les actions, ses verdicts les décident. Deux autres résultats sont possibles :343Où le serveur examine les actions, ses verdicts les décident. Deux autres résultats sont possibles :

342 344 

343* **Le serveur n'examine pas la session** : une réponse se termine sans résultats d'examen, ou le serveur répond qu'il n'examine pas cette session. Les causes les plus courantes sont une passerelle LLM ou un proxy qui supprime la demande d'examen ou les résultats, et une plateforme, une région ou des credentials qui n'ont pas encore de vérifications côté serveur. Claude Code revient à ses propres demandes de classificateur. Une fois que ce retour se maintient pour le reste de la session, il affiche un [avis sur les frais de demande de classificateur](/docs/fr/auto-mode-classifier-billing) sur les comptes où ces demandes sont facturées.345* **Le serveur n'examine pas la session** : une réponse se termine sans résultats d'examen, ou le serveur répond qu'il n'examine pas cette session. Les causes les plus courantes sont une passerelle LLM ou un proxy qui supprime la demande d'examen ou les résultats, et une plateforme, une région ou des identifiants qui n'ont pas encore de vérifications côté serveur. Claude Code revient à ses propres demandes de classificateur. Une fois que ce retour en arrière tient pour le reste de la session, il affiche un [avis sur les frais de demande de classificateur](/docs/fr/auto-mode-classifier-billing) sur les comptes où ces demandes sont facturées.

344* **Le serveur ne donne pas de verdict pour une action** : Claude Code refuse l'action plutôt que de l'exécuter sans examen. Sur n'importe quelle connexion, cela se produit lorsque la réponse se termine avant l'arrivée des résultats d'examen ou que les résultats arrivent sous une forme que Claude Code ne peut pas lire. Une passerelle LLM ou un proxy qui raccourcit les réponses ou réécrit les résultats peut causer l'un ou l'autre. Sur une connexion directe à l'API Anthropic, cela se produit également lorsque la vérification du serveur échoue pour l'action, par exemple en dépassant le délai d'attente. [Le serveur n'a retourné aucun verdict de sécurité](/docs/fr/errors#the-server-returned-no-safety-verdict) couvre le message de refus, ce qui se passe lorsque les refus se répètent, et ce qu'il faut faire.346* **Le serveur ne donne pas de verdict pour une action** : Claude Code refuse l'action plutôt que de l'exécuter sans examen. Sur n'importe quelle connexion, cela se produit quand la réponse se termine avant l'arrivée des résultats d'examen ou que les résultats arrivent sous une forme que Claude Code ne peut pas lire. Une passerelle LLM ou un proxy qui raccourcit les réponses ou réécrit les résultats peut causer l'un ou l'autre. Sur une connexion directe à l'API Anthropic, cela se produit également quand la vérification du serveur échoue pour l'action, par exemple en dépassant le délai d'attente. [Le serveur n'a pas retourné de verdict de sécurité](/docs/fr/errors#the-server-returned-no-safety-verdict) couvre le message de refus, ce qui se passe quand les refus se répètent, et ce qu'il faut faire.

345 347 

346Pour ignorer la demande au serveur et toujours utiliser les propres demandes de classificateur de Claude Code, définissez [`CLAUDE_CODE_AUTO_MODE_SERVER=0`](/docs/fr/env-vars). Sur une connexion directe à l'API Anthropic, la variable nécessite Claude Code v2.1.281 ou ultérieur. La définir sur `1` là-bas active l'examen du serveur dans une session qui ne l'a pas encore, comme une session `-p` ou Agent SDK, sauf si vous avez également défini `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`. Si vous définissez `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` et laissez `CLAUDE_CODE_AUTO_MODE_SERVER` non défini, Claude Code cesse également de demander au serveur.348Pour ignorer la demande au serveur et toujours utiliser les propres demandes de classificateur de Claude Code, définissez [`CLAUDE_CODE_AUTO_MODE_SERVER=0`](/docs/fr/env-vars). Sur une connexion directe à l'API Anthropic, la variable nécessite Claude Code v2.1.281 ou ultérieur. La définir sur `1` active l'examen du serveur dans une session qui ne l'a pas encore, comme une session `-p` ou Agent SDK, à moins que vous n'ayez également défini `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`. Si vous définissez `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` et laissez `CLAUDE_CODE_AUTO_MODE_SERVER` non défini, Claude Code cesse également de demander au serveur, sauf comme le décrit [Désactiver les capacités de pré-version](/docs/fr/llm-gateway-protocol#disable-pre-release-capabilities).

347 349 

348<h3 id="what-the-classifier-blocks-by-default">350<h3 id="what-the-classifier-blocks-by-default">

349 Ce que le classificateur bloque par défaut351 Ce que le classificateur bloque par défaut

350</h3>352</h3>

351 353 

352Le classificateur fait confiance à votre répertoire de travail et aux télécommandes qui ont été configurées pour celui-ci au démarrage de la session. Une télécommande ajoutée ou réorientée pendant la session avec `git remote add` ou `git remote set-url` n'est pas approuvée, et tout le reste est traité comme externe jusqu'à ce que vous [configuriez l'infrastructure approuvée](/docs/fr/auto-mode-config). Avant v2.1.200, les télécommandes ajoutées en milieu de session étaient également approuvées.354Le classificateur fait confiance à votre répertoire de travail et aux télécommandes qui ont été configurées pour lui quand la session a démarré. Une télécommande ajoutée ou réorientée pendant la session avec `git remote add` ou `git remote set-url` n'est pas approuvée, et tout le reste est traité comme externe jusqu'à ce que vous [configuriez l'infrastructure approuvée](/docs/fr/auto-mode-config). Avant v2.1.200, les télécommandes ajoutées en milieu de session étaient également approuvées.

353 355 

354**Bloqué par défaut** :356**Bloqué par défaut** :

355 357 


358* Déploiements et migrations de production360* Déploiements et migrations de production

359* Suppression en masse sur le stockage cloud361* Suppression en masse sur le stockage cloud

360* Octroi de permissions IAM ou de dépôt362* Octroi de permissions IAM ou de dépôt

361* Modification d'une infrastructure partagée363* Modification d'infrastructure partagée

362* Destruction irréversible de fichiers qui existaient avant la session364* Destruction irréversible de fichiers qui existaient avant la session

363* Forcer la poussée365* Forcer la poussée

364* Valider ou pousser une modification qui enverrait des secrets ou des données sensibles en dehors du dépôt lors de son exécution, ou élargir ce qu'un déploiement expose. Cela couvre un flux de travail CI ou une configuration de déploiement qui transmet un secret à une destination qui ne le reçoit pas déjà, un script ou une étape de configuration qui lit un magasin de secrets et envoie les données, et une modification de configuration qui élargit ce qu'un déploiement publie, comme un registre, une visibilité, un artefact ou un paramètre de sourcemap. La vérification s'applique sur n'importe quelle branche, s'applique même lorsque le dépôt est public, et se déclenche lorsque la modification est validée ou poussée, que ce commit ou cette poussée déclenche ou non le pipeline ; la clarifier nécessite de nommer l'effet d'exécution, pas seulement le commit ou la poussée. Avant v2.1.211, cette vérification était limitée à la branche par défaut à la place : une poussée là-bas était bloquée lorsqu'elle contenait du contenu sensible, des modifications dissimulées ou mal décrites par rapport à ce que vous avez demandé, du contenu porté de l'extérieur du dépôt, ou contourné autour d'une révision que vous avez demandée366* Valider ou pousser une modification qui enverrait des secrets ou des données sensibles en dehors du dépôt quand elle s'exécute, ou élargir ce qu'un déploiement expose. Cela couvre un flux de travail CI ou une configuration de déploiement qui transmet un secret à une destination qui ne le reçoit pas déjà, un script ou une étape de configuration qui lit un magasin de secrets et envoie les données, et une modification de configuration qui élargit ce qu'un déploiement publie, comme un registre, une visibilité, un artefact ou un paramètre de sourcemap. La vérification s'applique sur n'importe quelle branche, s'applique même quand le dépôt est public, et se déclenche quand la modification est validée ou poussée, que ce commit ou cette poussée déclenche le pipeline ou non ; la clarifier nécessite de nommer l'effet d'exécution, pas seulement le commit ou la poussée. Avant v2.1.211, cette vérification était limitée à la branche par défaut à la place : une poussée là était bloquée quand elle portait du contenu sensible, des modifications dissimulées ou mal décrites par rapport à ce que vous avez demandé, du contenu porté de l'extérieur du dépôt, ou contourné une révision que vous avez demandée

365* `git reset --hard`, `git checkout -- .`, `git restore .`, `git clean -fd`, `git stash drop` ou `git stash clear`, que le classificateur présume éliminerait les modifications non validées367* `git reset --hard`, `git checkout -- .`, `git restore .`, `git clean -fd`, `git stash drop` ou `git stash clear`, que le classificateur présume éliminerait les modifications non validées

366* `git commit --amend` lorsque le commit à HEAD n'a pas été créé dans cette session368* `git commit --amend` quand le commit à HEAD n'a pas été créé dans cette session

367* À partir de v2.1.198, `git commit --amend` lorsque le commit à HEAD a déjà été poussé. Une reformulation de message uniquement n'est pas bloquée : `--amend -m` sans rien de nouvellement préparé, sur un commit que Claude a créé pendant cette session369* À partir de v2.1.198, `git commit --amend` quand le commit à HEAD a déjà été poussé. Une réécriture de message uniquement n'est pas bloquée : `--amend -m` sans rien de nouvellement préparé, sur un commit que Claude a créé pendant cette session

368* `terraform destroy`, `pulumi destroy`, `cdk destroy` ou `terragrunt destroy`, et l'application d'un plan qui détruit des ressources370* `terraform destroy`, `pulumi destroy`, `cdk destroy` ou `terragrunt destroy`, et appliquer un plan qui détruit des ressources

369 371 

370Claude Code v2.1.195 et ultérieur bloquent plus de catégories par défaut. Plusieurs dépendent d'entrées [d'environnement](/docs/fr/auto-mode-config#define-trusted-infrastructure), comme les cibles de télécommande sensibles et les portées IaC protégées, que vous pouvez affiner à des noms concrets.372Claude Code v2.1.195 et ultérieur bloquent plus de catégories par défaut. Plusieurs dépendent d'entrées [d'environnement](/docs/fr/auto-mode-config#define-trusted-infrastructure), comme les cibles de télécommande sensibles et les portées IaC protégées, que vous pouvez affiner à des noms concrets.

371 373 

372* Écriture dans un gestionnaire de secrets, ou modification des enregistrements DNS ou des certificats TLS374* Écriture dans un gestionnaire de secrets, ou modification des enregistrements DNS ou des certificats TLS

373* Fusion d'une demande de tirage qu'aucun humain n'a approuvée, approbation de la propre demande de tirage de Claude, ou désactivation des vérifications CI375* Fusion d'une demande de tirage qu'aucun humain n'a approuvée, approbation de la propre demande de tirage de Claude, ou désactivation des vérifications CI

374* Publication d'un commentaire qui est lui-même une commande pour l'automatisation, comme `atlantis apply` ou un `/deploy` ou `/merge` de bot376* Publication d'un commentaire qui est lui-même une commande à l'automatisation, comme `atlantis apply` ou le `/deploy` ou `/merge` d'un bot

375* Basculement, augmentation ou suppression d'un drapeau de fonctionnalité de production377* Basculement, augmentation ou suppression d'un drapeau de fonctionnalité de production

376* Application de modifications d'infrastructure à une portée IaC protégée, ou vidage et suppression de nœuds de cluster378* Application de modifications d'infrastructure à une portée IaC protégée, ou drainage et suppression de nœuds de cluster

377* Écritures dans un cluster de calcul partagé qui vont au-delà de la ressource que vous avez nommée, comme un sélecteur d'étiquette ou `--all` qui capture les travaux d'autres utilisateurs379* Écritures dans un cluster de calcul partagé qui vont au-delà de la ressource que vous avez nommée, comme un sélecteur d'étiquette ou `--all` qui capture les tâches d'autres utilisateurs

378* Création de ressources Kubernetes qui s'exécutent sur chaque nœud ou interceptent le trafic du cluster, comme les DaemonSets et les webhooks d'admission380* Création de ressources Kubernetes qui s'exécutent sur chaque nœud ou interceptent le trafic du cluster, comme les DaemonSets et les webhooks d'admission

379* Shells interactifs ou port-forwards vers une cible de télécommande sensible381* Shells interactifs ou transferts de port vers une cible de télécommande sensible

380* Ouverture d'un tunnel ou d'un shell inverse qui rend un service local accessible depuis l'Internet public382* Ouverture d'un tunnel ou d'un shell inverse qui rend un service local accessible depuis l'internet public

381* Impression d'une credential ou d'un token en direct dans la transcription ou un fichier383* Impression d'une identifiant ou d'un jeton en direct dans la transcription ou un fichier

382* Accès à un emplacement répertorié comme emplacement de données sensibles dans votre [environnement](/docs/fr/auto-mode-config#define-trusted-infrastructure), ou copie de données en dehors d'un. À partir de v2.1.198, cela bloque également l'envoi de données d'un à un public que l'entrée exclut384* Accès à un emplacement répertorié comme emplacement de données sensibles dans votre [environnement](/docs/fr/auto-mode-config#define-trusted-infrastructure), ou copie de données hors de celui-ci. À partir de v2.1.198, cela bloque également l'envoi de données d'un vers un public que l'entrée exclut

383* Routage d'une installation de package autour de votre registre de package interne vers un registre public. À partir de v2.1.198, cela s'applique également lorsque vous avez dit à Claude qu'un registre interne ou un miroir existe dans la conversation, pas seulement lorsqu'un est répertorié dans votre environnement385* Routage d'une installation de paquet autour de votre registre de paquet interne vers un registre public. À partir de v2.1.198, cela s'applique également quand vous avez dit à Claude qu'un registre interne ou un miroir existe dans la conversation, pas seulement quand un est répertorié dans votre environnement

384* Exécution d'une commande avec un drapeau qui désarme une garde de sécurité, comme `--insecure`386* Exécution d'une commande avec un drapeau qui désarme une garde de sécurité, comme `--insecure`

385* Lancement d'une boucle d'agent autonome qui s'exécute sans approbation humaine ou sandbox, comme une lancée avec `--dangerously-skip-permissions` ou `--no-sandbox`. À partir de v2.1.198, cela couvre également l'exécution d'un agent tiers ou d'un harnais d'évaluation avec isolation et approbation par action désactivées, comme un lanceur démarré avec `--yes-always`387* Lancement d'une boucle d'agent autonome qui s'exécute sans approbation humaine ou bac à sable, comme une lancée avec `--dangerously-skip-permissions` ou `--no-sandbox`. À partir de v2.1.198, cela couvre également l'exécution d'un agent tiers ou d'un harnais d'évaluation avec isolation et approbation par action désactivées, comme un coureur lancé avec `--yes-always`

386* Actions du navigateur [Claude dans Chrome](/docs/fr/chrome) qui pourraient envoyer le contenu de la page, les cookies ou les credentials hors origine388* Actions du navigateur [Claude dans Chrome](/docs/fr/chrome) qui pourraient envoyer le contenu de la page, les cookies ou les identifiants hors origine

387 389 

388Claude Code v2.1.198 et ultérieur bloquent également ces par défaut :390Claude Code v2.1.198 et ultérieur bloquent également ceux-ci par défaut :

389 391 

390* Suppression de fichiers dans `/tmp`, `$TMPDIR` ou un autre répertoire de travail partagé ou de cache par caractère générique, glob ou filtre d'âge plutôt que par un chemin nommé spécifique392* Suppression de fichiers dans `/tmp`, `$TMPDIR` ou un autre répertoire de travail partagé ou de cache par caractère générique, glob ou filtre d'âge plutôt que par un chemin nommé spécifique

391* Inclusion de détails sensibles dans le contenu envoyé, téléchargé, publié ou écrit à d'autres personnes ou systèmes partagés, lorsque votre propre message n'a pas autorisé ces détails pour ce destinataire. Les corps de PR et de problème, les messages de commit et les commentaires comptent comme ce type de contenu sortant lorsque le dépôt est en dehors de la limite de confiance ou public, y compris les dépôts publics de votre propre organisation ; les chemins de fichiers internes, les noms de code, les données de réponse API en direct comme les e-mails ou les identifiants de compte, et les identifiants d'infrastructure comptent comme des détails sensibles. La portée PR, problème et message de commit nécessite Claude Code v2.1.200 ou ultérieur. Les données personnelles en direct d'une réponse API dans un corps de PR ou de problème, comme une adresse e-mail, un identifiant de compte ou d'organisation, ou une métrique d'utilisation, vous obligent à nommer ces détails et le destinataire indépendamment de la visibilité ou de la limite de confiance du dépôt. Cette vérification nécessite Claude Code v2.1.203 ou ultérieur393* Inclusion de détails sensibles dans le contenu envoyé, téléchargé, publié ou écrit à d'autres personnes ou systèmes partagés, quand votre propre message n'a pas autorisé ces détails pour ce destinataire. Les corps de PR et de problème, les messages de commit et les commentaires comptent comme ce type de contenu sortant quand le dépôt est en dehors de la limite de confiance ou public, y compris les dépôts publics de votre propre organisation ; les chemins de fichiers internes, les noms de code, les données de réponse API en direct comme les e-mails ou les identifiants de compte, et les identifiants d'infrastructure comptent comme des détails sensibles. La portée de PR, de problème et de message de commit nécessite Claude Code v2.1.200 ou ultérieur. Les données personnelles en direct d'une réponse API dans un corps de PR ou de problème, comme une adresse e-mail, un identifiant de compte ou d'organisation, ou une métrique d'utilisation, vous obligent à nommer ces détails et le destinataire indépendamment de la visibilité du dépôt ou de la limite de confiance. Cette vérification nécessite Claude Code v2.1.203 ou ultérieur

392* Envoi de frappes à la propre pane tmux de Claude Code pour piloter sa propre interface, que le classificateur traite comme Claude changeant ses propres permissions ou surveillance394* Envoi de frappes au clavier au propre volet tmux de Claude Code pour piloter sa propre interface, que le classificateur traite comme Claude changeant ses propres permissions ou surveillance

393 395 

394Claude Code v2.1.200 et ultérieur bloquent également ces par défaut :396Claude Code v2.1.200 et ultérieur bloquent également ceux-ci par défaut :

395 397 

396* Commentaire, suppression ou passage en force d'un test ou d'une assertion qui protège le comportement de sécurité, comme l'authentification, le contrôle d'accès, la validation des entrées ou le sandboxing398* Commentaire, suppression ou passage en force d'un test ou d'une assertion qui protège le comportement de sécurité, comme l'authentification, le contrôle d'accès, la validation d'entrée ou le bac à sable

397* Suppression ou démantèlement d'une ressource avec état que Claude n'a pas créée dans la session, lorsqu'aucune règle de suppression plus spécifique ne s'applique et que vous n'avez pas nommé cette ressource399* Suppression ou démantèlement d'une ressource avec état que Claude n'a pas créée dans la session, quand aucune règle de suppression plus spécifique ne s'applique et que vous n'avez pas nommé cette ressource

398* Réorientation d'une URL de base API, d'un point de terminaison proxy, d'un récepteur webhook ou d'un miroir de registre vers un hôte tiers qui ne correspond pas à la tâche, y compris dans les fichiers d'exemple comme `.env.example`400* Réorientation d'une URL de base API, d'un point de terminaison proxy, d'un récepteur webhook ou d'un miroir de registre vers un hôte tiers qui ne correspond pas à la tâche, y compris dans les fichiers d'exemple comme `.env.example`

399* Modification de la destination des poussées avec `git remote set-url` ou `git remote add`, sauf si vous avez nommé la nouvelle télécommande401* Modification de la destination des poussées avec `git remote set-url` ou `git remote add`, à moins que vous n'ayez nommé la nouvelle télécommande

400* Poussée de secrets ou de données personnelles ou confiées vers un dépôt connu pour être public, ou poussée de matériel confidentiel là-bas qui ne fait pas partie du travail propre de ce dépôt. Le sujet propre d'un dépôt de dotfiles est la seule exception pour les données personnelles ou confiées, et le contenu d'un dépôt privé atteignant n'importe quelle surface publique est bloqué de la même manière ; les deux raffinements nécessitent Claude Code v2.1.203 ou ultérieur. Avant v2.1.203, les données personnelles étaient regroupées avec le matériel confidentiel et bloquées uniquement lorsqu'elles ne faisaient pas partie du travail propre de ce dépôt. Lorsque la visibilité d'un dépôt n'est pas établie, le classificateur ne bloque pas sur cela seul ; il juge le contenu par rapport aux autres règles à la place402* Poussée de secrets ou de données personnelles ou confiées vers un dépôt connu pour être public, ou poussée de matériel confidentiel là qui ne fait pas partie du travail propre de ce dépôt. Le sujet propre d'un dépôt de dotfiles est la seule exception pour les données personnelles ou confiées, et le contenu d'un dépôt privé atteignant n'importe quelle surface publique est bloqué de la même manière ; les deux raffinements nécessitent Claude Code v2.1.203 ou ultérieur. Avant v2.1.203, les données personnelles étaient groupées avec le matériel confidentiel et bloquées uniquement quand elles ne faisaient pas partie du travail propre de ce dépôt. Quand la visibilité d'un dépôt n'est pas établie, le classificateur ne bloque pas sur cela seul ; il juge le contenu par rapport aux autres règles à la place

401* Ouverture d'une demande de tirage contre un dépôt ou une organisation différente, bifurcation avec `gh repo fork` ou poussée vers un dépôt tiers, sauf si vous avez nommé cette cible externe403* Ouverture d'une demande de tirage contre un dépôt ou une organisation différente, bifurcation avec `gh repo fork`, ou poussée vers un dépôt tiers, à moins que vous n'ayez nommé cette cible externe

402 404 

403Claude Code v2.1.203 et ultérieur bloquent également ces par défaut :405Claude Code v2.1.203 et ultérieur bloquent également ceux-ci par défaut :

404 406 

405* Contenu d'un magasin local sensible, ou d'un fichier dont le nom, le chemin ou le type le marque comme sensible, entrant dans un commit, une poussée, un texte de PR ou de problème, une gist ou un collage, ou une publication de package, sauf si vous avez nommé à la fois la source et la destination. Les transcriptions de session et les journaux de conversation, les dossiers de configuration et de credential pointant comme les clés SSH, les credentials cloud, les profils de navigateur et l'historique du shell, et les exports de données utilisateur comptent tous, et le dépôt étant privé ne le clarifie pas407* Contenu d'un magasin local sensible, ou d'un fichier dont le nom, le chemin ou le type le marque comme sensible, entrant dans un commit, une poussée, un texte de PR ou de problème, une giste ou un collage, ou une publication de paquet, à moins que vous n'ayez nommé à la fois la source et la destination. Les transcriptions de session et les journaux de conversation, les dossiers de points de configuration d'identifiant et de configuration comme les clés SSH, les identifiants cloud, les profils de navigateur et l'historique du shell, et les exportations de données utilisateur comptent tous, et le dépôt étant privé ne le clarifie pas

406 408 

407Claude Code v2.1.205 et ultérieur bloquent également ces par défaut :409Claude Code v2.1.205 et ultérieur bloquent également ceux-ci par défaut :

408 410 

409* Écriture dans les transcriptions de session Claude Code, les fichiers d'historique `.jsonl` sous `~/.claude/projects/` ou votre répertoire de configuration configuré, directement ou via une commande shell. La règle couvre également les lignes de métadonnées que Claude Code ajoute à chaque entrée de transcription pour ses propres vérifications. La lecture d'une transcription n'est pas bloquée411* Écriture dans les transcriptions de session Claude Code, les fichiers d'historique `.jsonl` sous `~/.claude/projects/` ou votre répertoire de configuration configuré, directement ou via une commande shell. La règle couvre également les lignes de métadonnées que Claude Code ajoute à chaque entrée de transcription pour ses propres vérifications. La lecture d'une transcription n'est pas bloquée

410* Une suppression forcée récursive comme `rm -rf "$VAR"` ou `Remove-Item -Recurse -Force $dir` dont la cible est une variable shell, ou un glob enraciné à une, qui n'est assignée nulle part dans la conversation que le classificateur voit. La valeur provenait uniquement de la sortie de commande antérieure, que le classificateur ne reçoit jamais, donc le classificateur ne peut pas vérifier la cible de suppression par rapport aux autres règles de suppression. Le bloc s'efface lorsque vous nommez le chemin exact en cours de suppression, ou lorsque Claude réexécute la suppression avec le chemin littéral résolu écrit dans la commande. Les suppressions dont la cible le classificateur peut résoudre ne sont pas affectées. Les cibles `Remove-Item` qui sont un `*` nu ou se terminent par `/*` ou `\*` n'atteignent jamais le classificateur : Claude Code les [refuse directement](#remove-item-in-powershell)412* Une suppression forcée récursive comme `rm -rf "$VAR"` ou `Remove-Item -Recurse -Force $dir` dont la cible est une variable shell qui n'est assignée nulle part dans la conversation que le classificateur voit, ou un glob enraciné à une telle variable. La valeur provenait uniquement de la sortie de commande antérieure, que le classificateur ne reçoit jamais, donc le classificateur ne peut pas vérifier la cible de suppression par rapport aux autres règles de suppression. Le bloc se clarifie quand vous nommez le chemin exact en cours de suppression, ou quand Claude réexécute la suppression avec le chemin littéral résolu écrit dans la commande. Les suppressions dont la cible le classificateur peut résoudre ne sont pas affectées.

413 

414 Un glob directement sous la variable, comme dans `rm -rf "$VAR"/*`, est un [chemin critique](#critical-paths) à la place. Les cibles `Remove-Item` qui sont un `*` nu ou se terminent par `/*` ou `\*` n'atteignent jamais le classificateur : Claude Code les [refuse directement](#remove-item-in-powershell).

411 415 

412Claude Code v2.1.257 et ultérieur bloquent également ces par défaut :416Claude Code v2.1.257 et ultérieur bloquent également ceux-ci par défaut :

413 417 

414* Demande de credentials à partir du point de terminaison de métadonnées d'instance cloud, comme `169.254.169.254`, ou authentification explicite d'un appel cloud, cluster ou registre avec l'identité de compte de service ou de nœud de la machine418* Demande d'identifiants à partir du point de terminaison de métadonnées d'instance cloud, comme `169.254.169.254`, ou authentification explicite d'un appel cloud, cluster ou registre avec l'identité de compte de service ou de nœud de la machine

415* Atteinte d'un hôte public par une route autre qu'une demande directe, comme un tunnel, un shell inverse, ou une configuration de résolveur ou de proxy réécrite pour pointer vers l'extérieur419* Atteinte d'un hôte public par une route autre qu'une demande directe, comme un tunnel, un shell inverse ou une configuration de résolveur ou de proxy réécrite pour pointer vers l'extérieur

416* Lecture de credentials qui appartiennent à l'hôte plutôt qu'à votre tâche, comme les certificats de nœud ou l'authentification du registre de conteneurs du nœud420* Lecture d'identifiants qui appartiennent à l'hôte plutôt qu'à votre tâche, comme les certificats de nœud ou l'authentification du registre de conteneurs du nœud

417* Connexion à ou analyse de conteneurs, pods ou VMs frères que Claude n'a pas démarrés, ou le nœud sous le conteneur421* Connexion à ou analyse de conteneurs, pods ou VMs frères que Claude n'a pas démarrés, ou le nœud sous le conteneur

418 422 

419Si Claude Code s'exécute quelque part qui est censé permettre l'un de ceux-ci, décrivez cette configuration dans une [entrée Host containment](/docs/fr/auto-mode-config#define-trusted-infrastructure) dans `autoMode.environment`.423Si Claude Code s'exécute quelque part qui est censé permettre l'un de ceux-ci, décrivez cette configuration dans une entrée [Host containment](/docs/fr/auto-mode-config#define-trusted-infrastructure) dans `autoMode.environment`.

420 424 

421Claude Code v2.1.261 et ultérieur bloquent également ces par défaut :425Claude Code v2.1.261 et ultérieur bloquent également ceux-ci par défaut :

422 426 

423* Publication ou écriture d'un lien vers un service public de collage, de diagramme ou de partage de données dans un message, un texte de PR ou de problème, un document, ou n'importe où ailleurs où le lien sera ouvert ou récupéré, lorsque l'URL elle-même porte le contenu partagé, sauf si vous avez nommé ce service427* Publication ou écriture d'un lien vers un service public de collage, de diagramme ou de partage de données dans un message, un texte de PR ou de problème, un document ou n'importe où ailleurs le lien sera ouvert ou récupéré, quand l'URL elle-même porte le contenu partagé, à moins que vous n'ayez nommé ce service

424 428 

425**Autorisé par défaut** :429**Autorisé par défaut** :

426 430 

427* Opérations de fichiers locaux dans votre répertoire de travail431* Opérations de fichier local dans votre répertoire de travail

428* Installation de dépendances déclarées dans vos fichiers de verrouillage ou manifestes432* Installation de dépendances déclarées dans vos fichiers de verrouillage ou manifestes

429* Lecture de `.env` et envoi de credentials à leur API correspondante433* Lecture de `.env` et envoi d'identifiants à leur API correspondante

430* Demandes HTTP en lecture seule434* Demandes HTTP en lecture seule

431* Poussée vers n'importe quelle branche du dépôt sur lequel vous travaillez, y compris la branche par défaut. Une branche non par défaut dont le nom la marque comme cible de déploiement ou de publication, comme `production` ou `gh-pages`, n'est pas couverte : le classificateur juge une poussée là-bas selon ses propres termes. Le contenu de la poussée est toujours vérifié par rapport aux autres règles, les règles [`permissions.deny`](/docs/fr/permissions#manage-permissions) peuvent toujours bloquer les commandes de poussée [telles qu'écrites](/docs/fr/permissions#bash-rule-limits) dans chaque mode, et la protection de branche propre de la télécommande s'applique toujours. Avant v2.1.211, seules les poussées vers la branche sur laquelle vous avez commencé, les branches que Claude a créées, et les poussées routinières vers la branche par défaut étaient autorisées par défaut, et avant v2.1.203 toute poussée directe vers la branche par défaut était bloquée435* Poussée vers n'importe quelle branche du dépôt sur lequel vous travaillez, y compris la branche par défaut. Une branche non par défaut dont le nom la marque comme cible de déploiement ou de publication, comme `production` ou `gh-pages`, n'est pas couverte : le classificateur juge une poussée là sur ses propres termes. Le contenu de la poussée est toujours vérifié par rapport aux autres règles, les règles [`permissions.deny`](/docs/fr/permissions#manage-permissions) peuvent toujours bloquer les commandes de poussée [telles qu'écrites](/docs/fr/permissions#bash-rule-limits) dans chaque mode, et la protection de branche propre de la télécommande s'applique toujours. Avant v2.1.211, seules les poussées vers la branche sur laquelle vous avez démarré, les branches que Claude a créées, et les poussées routinières vers la branche par défaut étaient autorisées par défaut, et avant v2.1.203 toute poussée directe vers la branche par défaut était bloquée

432 436 

433Claude Code v2.1.195 et ultérieur autorisent également ces par défaut :437Claude Code v2.1.195 et ultérieur autorisent également ceux-ci par défaut :

434 438 

435* Suppression des travaux exacts que Claude a créés plus tôt dans la même session439* Suppression des tâches exactes que Claude a créées plus tôt dans la même session

436* Lecture, examen ou écriture de code, configs et modèles de menace liés à la sécurité dans le cadre de votre tâche440* Lecture, révision ou écriture de code, de configurations et de modèles de menace liés à la sécurité dans le cadre de votre tâche

437* Messages entre agents travaillant ensemble dans la même session multi-agent441* Messages entre agents travaillant ensemble dans la même session multi-agents

438* Envoi de données aux domaines approuvés, buckets et services que vous répertoriez dans [`environment`](/docs/fr/auto-mode-config#define-trusted-infrastructure). Cela couvre le flux de données uniquement, pas les opérations destructrices ou de credential sur la même infrastructure442* Envoi de données vers les domaines approuvés, les buckets et les services que vous répertoriez dans [`environment`](/docs/fr/auto-mode-config#define-trusted-infrastructure). Cela couvre le flux de données uniquement, pas les opérations destructrices ou d'identifiant sur la même infrastructure

439* [Claude dans Chrome](/docs/fr/chrome) navigation vers un domaine interne approuvé, localhost, ou une URL que vous avez nommée443* [Claude dans Chrome](/docs/fr/chrome) navigation vers un domaine interne approuvé, localhost ou une URL que vous avez nommée

440 444 

441Les commandes en sandbox n'obtiennent pas d'accès réseau par défaut. Claude nomme les hôtes qu'une commande nécessite sur la commande elle-même, le classificateur les examine avec la commande, et une liste approuvée ouvre ces hôtes pour cette seule commande. [Domaines autorisés par commande](/docs/fr/sandboxing#per-command-allowed-domains-in-auto-mode) couvre ce qu'une liste peut et ne peut pas ouvrir et ce qui se passe lorsqu'une commande atteint un hôte non répertorié.445Les commandes en bac à sable n'obtiennent pas d'accès réseau par défaut. Claude nomme les hôtes qu'une commande a besoin sur la commande elle-même, le classificateur les examine avec la commande, et une liste approuvée ouvre ces hôtes pour cette seule commande. [Domaines autorisés par commande](/docs/fr/sandboxing#per-command-allowed-domains-in-auto-mode) couvre ce qu'une liste peut et ne peut pas ouvrir et ce qui se passe quand une commande atteint un hôte non répertorié.

442 446 

443Exécutez `claude auto-mode defaults` pour imprimer les listes de règles complètes en JSON. Si les actions routinières sont bloquées, un administrateur peut ajouter des dépôts, buckets et services approuvés via le paramètre `autoMode.environment` : voir [Configurer le mode auto](/docs/fr/auto-mode-config).447Exécutez `claude auto-mode defaults` pour imprimer les listes de règles complètes en JSON. Si les actions routinières sont bloquées, un administrateur peut ajouter des dépôts, des buckets et des services approuvés via le paramètre `autoMode.environment` : voir [Configurer le mode auto](/docs/fr/auto-mode-config).

444 448 

445Pousser vers n'importe quelle branche du dépôt sur lequel vous travaillez et créer une demande de tirage qui correspond à votre demande s'exécutent sans invite, sauf si la poussée ou la demande de tirage tombe sous la [liste bloquée](#what-the-classifier-blocks-by-default), comme des secrets ou des données sensibles quittant le dépôt, ou une demande de tirage qui cible un dépôt ou une organisation différente. Pour exiger un point de contrôle humain avant ces commandes tout en restant en mode auto, ajoutez des règles `permissions.ask`, qui correspondent à la commande [telle qu'écrite](/docs/fr/permissions#bash-rule-limits) : voir [Limites communes](/docs/fr/auto-mode-config#common-boundaries).449Pousser vers n'importe quelle branche du dépôt sur lequel vous travaillez et créer une demande de tirage qui correspond à votre demande s'exécutent sans invite, à moins que la poussée ou la demande de tirage ne tombe sous la [liste bloquée](#what-the-classifier-blocks-by-default), comme des secrets ou des données sensibles quittant le dépôt, ou une demande de tirage qui cible un dépôt ou une organisation différente. Pour exiger un point de contrôle humain avant ces commandes tout en restant en mode auto, ajoutez des règles `permissions.ask`, qui correspondent à la commande [telle qu'écrite](/docs/fr/permissions#bash-rule-limits) : voir [Limites courantes](/docs/fr/auto-mode-config#common-boundaries).

446 450 

447<h3 id="first-read-outside-the-working-directories">451<h3 id="first-read-outside-the-working-directories">

448 La première lecture en dehors des répertoires de travail452 La première lecture en dehors des répertoires de travail

449</h3>453</h3>

450 454 

451Tandis que [`permissions.blockReadsOutsideWorkingDirectories`](/docs/fr/settings-reference#permissions-blockreadsoutsideworkingdirectories) est désactivé, les lectures de fichiers s'exécutent sans invite en mode auto, y compris les lectures en dehors des [répertoires de travail](/docs/fr/permissions#working-directories). La première fois que Claude utilise l'outil Read, Grep ou Glob sur un chemin en dehors d'eux, Claude Code vous demande si vous souhaitez continuer à autoriser ces lectures.455Tandis que [`permissions.blockReadsOutsideWorkingDirectories`](/docs/fr/settings-reference#permissions-blockreadsoutsideworkingdirectories) est désactivé, les lectures de fichier s'exécutent sans invite en mode auto, y compris les lectures en dehors des [répertoires de travail](/docs/fr/permissions#working-directories). La première fois que Claude utilise l'outil Read, Grep ou Glob sur un chemin en dehors d'eux, Claude Code demande s'il faut autoriser cette lecture.

452 456 

453L'invite n'apparaît pas dans les exécutions `-p` non interactives ou les sessions en arrière-plan ; les lectures là-bas s'exécutent comme avant.457L'invite n'apparaît pas dans les exécutions `-p` non interactives ou les sessions en arrière-plan ; les lectures là s'exécutent comme avant.

454 458 

455Quelle que soit votre réponse, Claude continue à travailler :459Quelle que soit votre réponse, Claude continue à travailler :

456 460 

457* **Continuer à autoriser** : la lecture s'exécute, les lectures ultérieures en dehors des répertoires de travail s'exécutent comme avant, et Claude Code enregistre votre réponse pour que l'invite n'apparaisse plus461* **Oui, et continuez à autoriser toute lecture en dehors des répertoires de travail** : la lecture s'exécute, les lectures ultérieures en dehors des répertoires de travail s'exécutent comme avant, et Claude Code enregistre votre réponse pour que l'invite n'apparaisse plus

458* **Bloquer à partir de maintenant** : la lecture est refusée, et Claude Code définit [`permissions.blockReadsOutsideWorkingDirectories`](/docs/fr/settings-reference#permissions-blockreadsoutsideworkingdirectories) sur `true` dans vos paramètres utilisateur, ce qui fait que les outils de fichier refusent ces lectures dans chaque session ultérieure et chaque mode de permission. Pour laisser Claude lire ce chemin plus tard, ajoutez son répertoire avec `/add-dir` ou supprimez le paramètre.462* **Non, et bloquez les lectures en dehors des répertoires de travail à partir de maintenant** : la lecture est refusée, et Claude Code définit [`permissions.blockReadsOutsideWorkingDirectories`](/docs/fr/settings-reference#permissions-blockreadsoutsideworkingdirectories) sur `true` dans vos paramètres utilisateur, ce qui fait que les outils de fichier refusent ces lectures dans chaque session ultérieure et chaque mode de permission. Pour laisser Claude lire un tel chemin plus tard, ajoutez son répertoire avec `/add-dir` ou supprimez le paramètre.

459* **Demander à nouveau la prochaine fois** : la lecture est refusée, et la prochaine lecture en dehors des répertoires de travail invite à nouveau463* **Non, et demandez à nouveau la prochaine fois** : la lecture est refusée, et la prochaine lecture en dehors des répertoires de travail invite à nouveau

464* **Oui, mais demandez à nouveau la prochaine fois** : la lecture s'exécute, rien n'est enregistré, et la prochaine lecture en dehors des répertoires de travail invite à nouveau

460 465 

461<h3 id="boundaries-you-state-in-conversation">466<h3 id="boundaries-you-state-in-conversation">

462 Limites que vous énoncez dans la conversation467 Limites que vous énoncez dans la conversation

463</h3>468</h3>

464 469 

465Le classificateur traite les limites que vous énoncez dans la conversation comme un signal de blocage. Si vous dites à Claude « ne pousse pas » ou « attends que j'examine avant de déployer », le classificateur bloque les actions correspondantes même lorsque les règles par défaut les autoriseraient. Une limite reste en vigueur jusqu'à ce que vous la leviez dans un message ultérieur. Le propre jugement de Claude qu'une condition a été remplie ne la lève pas.470Le classificateur traite les limites que vous énoncez dans la conversation comme un signal de bloc. Si vous dites à Claude « ne poussez pas » ou « attendez que j'examine avant de déployer », le classificateur bloque les actions correspondantes même quand les règles par défaut les autoriseraient. Une limite reste en vigueur jusqu'à ce que vous la leviez dans un message ultérieur. Le propre jugement de Claude qu'une condition a été remplie ne la lève pas.

466 471 

467Les limites ne sont pas stockées en tant que règles. Le classificateur les relit à partir de la transcription à chaque vérification, donc une limite peut être perdue si la [compaction de contexte](/docs/fr/costs#reduce-token-usage) supprime le message qui l'a énoncée. Pour une garantie ferme, ajoutez plutôt une [règle deny](/docs/fr/permissions#permission-rule-syntax).472Les limites ne sont pas stockées en tant que règles. Le classificateur les relit à partir de la transcription à chaque vérification, donc une limite peut être perdue si la [compaction de contexte](/docs/fr/costs#reduce-token-usage) supprime le message qui l'a énoncée. Pour une garantie ferme, ajoutez une [règle deny](/docs/fr/permissions#permission-rule-syntax) à la place.

468 473 

469<h3 id="approvals-you-state-in-conversation">474<h3 id="approvals-you-state-in-conversation">

470 Approbations que vous énoncez dans la conversation475 Approbations que vous énoncez dans la conversation

471</h3>476</h3>

472 477 

473Si vous dites à Claude qu'une action bloquée est autorisée, le classificateur lit cela comme votre approbation et peut lever le bloc. La façon dont vous l'avez formulé décide si l'action s'exécute et jusqu'où l'approbation s'étend :478Si vous dites à Claude qu'une action bloquée est autorisée, le classificateur lit cela comme votre approbation et peut clarifier le bloc. La façon dont vous l'avez formulé décide si l'action s'exécute et jusqu'où l'approbation s'étend :

474 479 

475* **Nommez l'action et ses spécificités** : votre message doit nommer l'action et la chose spécifique qui la rend dangereuse, comme la branche d'une poussée forcée. Nommer le verbe seul ne clarifie rien, donc « vous pouvez forcer la poussée » laisse le bloc en place.480* **Nommez l'action et ses spécificités** : votre message doit nommer l'action et la chose spécifique qui la rend dangereuse, comme la branche d'une poussée forcée. Nommer le verbe seul ne clarifie rien, donc « vous pouvez forcer la poussée » laisse le bloc en place.

476* **Attendez-vous à ce qu'il couvre une action** : une approbation couvre l'action destructrice que vous avez nommée, donc une action ultérieure est bloquée à nouveau sauf si vous avez accordé l'approbation comme permanente. Pour arrêter d'approuver un modèle routinier une action à la fois, ajoutez-le à [`autoMode.allow`](/docs/fr/auto-mode-config#override-the-block-and-allow-rules).481* **Attendez-vous à ce qu'elle couvre une action** : une approbation couvre l'action destructrice que vous avez nommée, donc une action ultérieure est bloquée à nouveau à moins que vous n'ayez accordé l'approbation en tant que permanente. Pour arrêter d'approuver un modèle routinier une action à la fois, ajoutez-le à [`autoMode.allow`](/docs/fr/auto-mode-config#override-the-block-and-allow-rules).

477* **Certains blocs restent en place** : [l'ordre de précédence du classificateur](/docs/fr/auto-mode-config#override-the-block-and-allow-rules) énonce quels blocs votre approbation peut atteindre. Pour exécuter une étape qu'il ne clarifiera pas, [quittez le mode auto](#switch-permission-modes) et répondez à l'invite de permission.482* **Certains blocs restent en place** : [l'ordre de précédence du classificateur](/docs/fr/auto-mode-config#override-the-block-and-allow-rules) énonce les blocs que votre approbation peut atteindre. Pour exécuter une étape qu'elle ne clarifiera pas, [quittez le mode auto](#switch-permission-modes) et répondez à l'invite de permission.

478 483 

479<h3 id="when-auto-mode-falls-back">484<h3 id="when-auto-mode-falls-back">

480 Quand le mode auto revient en arrière485 Quand le mode auto revient en arrière

481</h3>486</h3>

482 487 

483Lorsque le mode auto ne peut pas approuver les actions de votre session, ce qui se passe dépend du cas :488Quand le mode auto ne peut pas approuver les actions de votre session, ce qui se passe dépend du cas :

484 489 

485* **Une action bloquée** : Claude Code affiche une notification et répertorie l'action dans `/permissions` sous l'onglet **Recently denied**, où vous pouvez appuyer sur `r` pour la réessayer avec une approbation manuelle. Lorsque le classificateur produit [aucun verdict sur l'action](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action), parce qu'une vérification de sécurité distincte du mode auto a refusé la propre demande du classificateur ou sa réponse n'a pas été analysée, Claude Code refuse l'action sans la notification ou l'entrée **Recently denied**.490* **Une action bloquée** : Claude Code affiche une notification et répertorie l'action dans `/permissions` sous l'onglet **Recently denied**, où vous pouvez appuyer sur `r` pour la réessayer avec une approbation manuelle. Quand le classificateur produit [aucun verdict sur l'action](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action), parce qu'une vérification de sécurité distincte du mode auto a refusé la propre demande du classificateur ou sa réponse n'a pas été analysée, Claude Code refuse l'action sans la notification ou l'entrée **Recently denied**.

486* **Blocages répétés** : si le classificateur bloque une action 3 fois de suite ou 20 fois au total, le mode auto s'interrompt et Claude Code reprend l'invite. L'approbation de l'action invitée reprend le mode auto. Ces seuils ne sont pas configurables. Toute action autorisée réinitialise le compteur consécutif, tandis que le compteur total persiste pour la session et se réinitialise uniquement lorsque sa propre limite déclenche un retour. Claude Code ne compte pas un refus vers l'un ou l'autre seuil lorsqu'[une vérification de sécurité distincte du mode auto refuse la propre demande du classificateur](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action) ; l'entrée liée couvre comment Claude Code gère ces refus.491* **Blocs répétés** : si le classificateur bloque une action 3 fois de suite ou 20 fois au total, le mode auto s'interrompt et Claude Code reprend l'invite. Approuver l'action invitée reprend le mode auto. Ces seuils ne sont pas configurables. Toute action autorisée réinitialise le compteur consécutif, tandis que le compteur total persiste pour la session et se réinitialise uniquement quand sa propre limite déclenche un retour en arrière. Claude Code ne compte pas un refus vers l'un ou l'autre seuil quand [une vérification de sécurité distincte du mode auto refuse la demande du classificateur](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action) ; l'entrée liée couvre comment Claude Code gère ces refus.

487* **Sessions qui ne peuvent pas inviter** : une exécution `-p` [non interactive](/docs/fr/headless) sans [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) n'a pas d'invite pour revenir. Lorsque les blocages répétés atteignent un seuil, l'action ne s'exécute pas et Claude continue à travailler. La même chose s'applique lorsqu'[une vérification de sécurité distincte du mode auto refuse la demande du classificateur](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action). Claude Code n'arrête pas l'exécution dans l'un ou l'autre cas.492* **Sessions qui ne peuvent pas inviter** : une exécution `-p` [non interactive](/docs/fr/headless) sans [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) n'a pas d'invite pour revenir en arrière. Quand les blocs répétés atteignent un seuil, l'action ne s'exécute pas et Claude continue à travailler. La même chose s'applique quand [une vérification de sécurité distincte du mode auto refuse la demande du classificateur](/docs/fr/errors#auto-mode-cannot-determine-the-safety-of-an-action). Claude Code n'arrête pas l'exécution dans l'un ou l'autre cas.

488* **Aucun verdict du serveur** : sous [examen du classificateur côté serveur](#server-side-classifier-review), Claude Code refuse une action pour laquelle le serveur ne donne pas de verdict, et arrête le tour après dix réponses de suite sans verdict. Voir [Le serveur n'a retourné aucun verdict de sécurité](/docs/fr/errors#the-server-returned-no-safety-verdict).493* **Aucun verdict du serveur** : sous [examen du classificateur côté serveur](#server-side-classifier-review), Claude Code refuse une action pour laquelle le serveur ne donne pas de verdict, et arrête le tour après dix réponses de suite sans verdict. Voir [Le serveur n'a pas retourné de verdict de sécurité](/docs/fr/errors#the-server-returned-no-safety-verdict).

489* **Un changement de mode pendant une vérification** : si vous changez les modes de permission tandis qu'une vérification de classificateur est en attente, Claude Code rejette un verdict que le nouveau mode n'aurait pas demandé plutôt que de l'appliquer : vous êtes invité à l'approbation à la place, ou l'action est auto-refusée en [mode `dontAsk`](#allow-only-pre-approved-tools-with-dontask-mode).494* **Un changement de mode pendant une vérification** : si vous changez les modes de permission tandis qu'une vérification de classificateur est en attente, Claude Code rejette un verdict que le nouveau mode n'aurait pas demandé plutôt que de l'appliquer : vous êtes invité pour approbation à la place, ou l'action est auto-refusée en [mode `dontAsk`](#allow-only-pre-approved-tools-with-dontask-mode).

490 495 

491Les blocages répétés signifient généralement que le classificateur manque de contexte sur votre infrastructure. Utilisez `/feedback` pour signaler les faux positifs, ou demandez à un administrateur de [configurer l'infrastructure approuvée](/docs/fr/auto-mode-config).496Les blocs répétés signifient généralement que le classificateur manque de contexte sur votre infrastructure. Utilisez `/feedback` pour signaler les faux positifs, ou faites en sorte qu'un administrateur [configure l'infrastructure approuvée](/docs/fr/auto-mode-config).

492 497 

493<span id="how-the-classifier-evaluates-actions" />498<span id="how-the-classifier-evaluates-actions" />

494 499 


497 Chaque action passe par un ordre de décision fixe. La première étape correspondante gagne :502 Chaque action passe par un ordre de décision fixe. La première étape correspondante gagne :

498 503 

499 1. Les actions correspondant à vos [règles allow, ask ou deny](/docs/fr/permissions#manage-permissions) se résolvent immédiatement, avec ces exceptions :504 1. Les actions correspondant à vos [règles allow, ask ou deny](/docs/fr/permissions#manage-permissions) se résolvent immédiatement, avec ces exceptions :

500 * Les écritures vers [chemins protégés](#protected-paths) sont acheminées vers le classificateur même lorsqu'une règle allow correspond, et il en va de même pour les suppressions `rm` et `rmdir` ciblant un [chemin critique](#critical-paths) dans Claude Code v2.1.218 et ultérieur505 * Les écritures vers [chemins protégés](#protected-paths) sont acheminées vers le classificateur même quand une règle allow correspond

501 * Les outils MCP marqués [`requiresUserInteraction`](/docs/fr/mcp#require-approval-for-a-specific-tool) vous invitent directement même lorsqu'une règle allow correspond, et il en va de même pour les outils connecteur [que votre organisation a définis sur `ask`](/docs/fr/mcp#organization-controls-on-connector-tools) dans les sessions où ce paramètre atteint Claude Code506 * Aucune règle allow n'approuve les suppressions `rm` et `rmdir` ciblant un [chemin critique](#critical-paths)

502 * Une commande shell qui porte [domaines autorisés par commande](/docs/fr/sandboxing#per-command-allowed-domains-in-auto-mode) est également acheminée vers le classificateur même lorsqu'une règle allow correspond, parce qu'une règle approuve la commande, pas ses hôtes507 * Les outils MCP marqués [`requiresUserInteraction`](/docs/fr/mcp#require-approval-for-a-specific-tool) vous invitent directement même quand une règle allow correspond, et il en va de même pour les outils de connecteur [que votre organisation a définis sur `ask`](/docs/fr/mcp#organization-controls-on-connector-tools) dans les sessions où ce paramètre atteint Claude Code

508 * Une commande shell qui porte [domaines autorisés par commande](/docs/fr/sandboxing#per-command-allowed-domains-in-auto-mode) est également acheminée vers le classificateur même quand une règle allow correspond, parce qu'une règle approuve la commande, pas ses hôtes

503 * Les règles ask qui correspondent sur le contenu d'une commande, comme `Bash(git push *)`, reviennent à une invite de permission509 * Les règles ask qui correspondent sur le contenu d'une commande, comme `Bash(git push *)`, reviennent à une invite de permission

504 2. Les actions en lecture seule et les éditions de fichiers dans votre répertoire de travail sont auto-approuvées, sauf les écritures vers [chemins protégés](#protected-paths) et [la première lecture en dehors des répertoires de travail](#first-read-outside-the-working-directories), qui vous invitent510 * Une écriture que la [vérification de lien symbolique](/docs/fr/permissions#symlinks) résout à un chemin protégé vous invite quand le chemin que Claude a demandé n'est pas lui-même protégé

505 * Dans une session avec [examen du classificateur côté serveur](#server-side-classifier-review), les actions en lecture seule et les commandes shell [en sandbox](/docs/fr/sandboxing#sandbox-modes) attendent cet examen et sont bloquées si elle les signale511 2. Les actions en lecture seule et les éditions de fichier dans votre répertoire de travail sont auto-approuvées, sauf les écritures vers [chemins protégés](#protected-paths) et [la première lecture en dehors des répertoires de travail](#first-read-outside-the-working-directories), qui vous invite

506 3. Tout le reste va au classificateur. Les outils connecteur et les outils MCP `requiresUserInteraction` qui vous invitent directement à l'étape 1 n'atteignent jamais le classificateur, donc ni une approbation requise par l'organisation ni une étape de consentement n'est auto-approuvée512 * Dans une session avec [examen du classificateur côté serveur](#server-side-classifier-review), les actions en lecture seule et les commandes shell [en bac à sable](/docs/fr/sandboxing#sandbox-modes) attendent cet examen et sont bloquées s'il les signale

507 4. Si le classificateur bloque, Claude reçoit la raison et essaie une alternative. Dans la plupart des sessions, la raison nomme la règle que le classificateur a correspondante, comme `[Data Exfiltration]`, plutôt que de donner une explication écrite ; voir [Examiner les refus](/docs/fr/auto-mode-config#review-denials)513 * Une écriture dans votre répertoire de travail que la [vérification de lien symbolique](/docs/fr/permissions#symlinks) résout à un emplacement en dehors de celui-ci vous invite

514 3. Tout le reste va au classificateur, à part les [suppressions de chemin critique](#critical-paths) sous leur gestion par défaut. Les outils de connecteur et les outils MCP `requiresUserInteraction` qui vous invitent directement à l'étape 1 n'atteignent jamais le classificateur non plus, donc ni une approbation requise par l'organisation ni une étape de consentement n'est auto-approuvée

515 4. Si le classificateur bloque, Claude reçoit la raison et essaie une alternative. Dans la plupart des sessions, la raison nomme la règle que le classificateur a correspondue, comme `[Data Exfiltration]`, plutôt que de donner une explication écrite ; voir [Examiner les refus](/docs/fr/auto-mode-config#review-denials)

508 516 

509 En entrant en mode auto, les règles allow larges qui accordent l'exécution de code arbitraire sont supprimées :517 En entrant en mode auto, les larges règles allow qui accordent l'exécution de code arbitraire sont supprimées :

510 518 

511 * Blanket `Bash(*)` ou `PowerShell(*)`519 * Blanket `Bash(*)` ou `PowerShell(*)`

512 * Interpréteurs avec caractères génériques comme `Bash(python*)`520 * Interpréteurs avec caractères génériques comme `Bash(python*)`

513 * Commandes d'exécution du gestionnaire de packages521 * Commandes d'exécution du gestionnaire de paquet

514 * Règles `Agent` allow522 * Règles `Agent` allow

515 * Règles [`Monitor`](/docs/fr/tools-reference#monitor-tool) allow, parce que Claude Code exécute les commandes Monitor via le shell523 * Règles [`Monitor`](/docs/fr/tools-reference#monitor-tool) allow, parce que Claude Code exécute les commandes Monitor via le shell

516 524 

517 Les règles étroites comme `Bash(npm test)` restent en vigueur. Claude Code restaure les règles supprimées lorsque vous quittez le mode auto. Avant v2.1.236, Claude Code laissait les règles `Monitor` allow en vigueur en mode auto, donc une règle qui correspondait à l'outil entier approuvait les commandes Monitor sans examen du classificateur.525 Les règles étroites comme `Bash(npm test)` restent en vigueur. Claude Code restaure les règles supprimées quand vous quittez le mode auto. Avant v2.1.236, Claude Code laissait les règles `Monitor` allow en vigueur en mode auto, donc une règle qui correspondait à l'outil entier approuvait les commandes Monitor sans examen du classificateur.

518 526 

519 Claude Code exécute également `git status` lui-même avant une commande qui éliminerait le travail non validé, comme `git reset --hard` ou `rm -rf`, et montre au classificateur si du travail préparé, modifié ou non suivi est présent. Claude Code signale les fichiers non suivis dans cette vérification même lorsque la configuration git du dépôt définit `status.showUntrackedFiles=no`.527 Claude Code exécute également `git status` lui-même avant une commande qui éliminerait le travail non validé, comme `git reset --hard` ou `rm -rf`, et montre au classificateur si du travail préparé, modifié ou non suivi est présent. Claude Code signale les fichiers non suivis dans cette vérification même quand la configuration git du dépôt définit `status.showUntrackedFiles=no`.

520 528 

521 Dans les demandes de classificateur envoyées par Claude Code lui-même, le classificateur voit les messages utilisateur, les appels d'outils autres que les recherches en lecture seule comme les lectures de fichiers et les recherches, et votre contenu CLAUDE.md. Les résultats d'outils sont supprimés de ces demandes, donc le contenu hostile dans un fichier ou une page web ne peut pas manipuler le classificateur directement.529 Dans les demandes de classificateur envoyées par Claude Code lui-même, le classificateur voit les messages utilisateur, les appels d'outil autres que les recherches en lecture seule comme les lectures de fichier et les recherches, et votre contenu CLAUDE.md. Les résultats d'outil sont supprimés de ces demandes, donc le contenu hostile dans un fichier ou une page web ne peut pas manipuler le classificateur directement.

522 530 

523 Vous pouvez annoter le résultat d'un appel avec le champ `classifierContext` d'un [hook PostToolUse](/docs/fr/hooks#annotate-a-result-for-the-auto-mode-classifier), que le classificateur lit comme contexte fourni par l'application. Le champ nécessite Claude Code v2.1.236 ou ultérieur.531 Vous pouvez annoter le résultat d'un appel avec le champ `classifierContext` d'un [hook PostToolUse](/docs/fr/hooks#annotate-a-result-for-the-auto-mode-classifier), que le classificateur lit comme contexte fourni par l'application. Le champ nécessite Claude Code v2.1.236 ou ultérieur.

524 532 

525 Une sonde côté serveur distincte analyse les résultats d'outils entrants et signale le contenu suspect avant que Claude ne le lise. Pour plus d'informations sur la façon dont ces couches fonctionnent ensemble, consultez l'[annonce du mode auto](https://claude.com/blog/auto-mode) et la [plongée technique](https://www.anthropic.com/engineering/claude-code-auto-mode).533 Une sonde côté serveur distincte analyse les résultats d'outil entrants et signale le contenu suspect avant que Claude ne le lise. Pour plus d'informations sur la façon dont ces couches fonctionnent ensemble, consultez l'[annonce du mode auto](https://claude.com/blog/auto-mode) et l'[approfondissement technique](https://www.anthropic.com/engineering/claude-code-auto-mode).

526 </Accordion>534 </Accordion>

527 535 

528 <Accordion title="Comment le mode auto gère les sous-agents">536 <Accordion title="Comment le mode auto gère les sous-agents">

529 Le classificateur vérifie le travail des [sous-agents](/docs/fr/sub-agents) à trois points :537 Le classificateur vérifie le travail des [sous-agents](/docs/fr/sub-agents) à trois points :

530 538 

531 1. Avant qu'un sous-agent ne démarre, la description de la tâche déléguée est évaluée, donc une tâche qui semble dangereuse est bloquée au moment du lancement.539 1. Avant qu'un sous-agent ne démarre, la description de la tâche déléguée est évaluée, donc une tâche qui semble dangereuse est bloquée au moment du lancement.

532 2. Pendant que le sous-agent s'exécute, chacune de ses actions passe par le classificateur avec les mêmes règles que la session parent, et tout `permissionMode` dans le frontmatter du sous-agent est ignoré.540 2. Tandis que le sous-agent s'exécute, chacune de ses actions passe par le classificateur avec les mêmes règles que la session parent, et tout `permissionMode` dans le frontmatter du sous-agent est ignoré.

533 3. Lorsque le sous-agent se termine, le classificateur examine son travail et son rapport final avant que le parent ne lise le rapport. Lorsque le classificateur signale le travail ou le rapport du sous-agent, ou qu'une vérification de sécurité API distincte refuse l'examen, le rapport est toujours livré, précédé d'un avertissement de sécurité. Lorsque le classificateur n'est pas disponible pour l'examen, le rapport arrive avec une note pour vérifier le travail du sous-agent avant d'agir en fonction de celui-ci.541 3. Quand le sous-agent se termine, le classificateur examine son travail et son rapport final avant que le parent ne lise le rapport. Quand le classificateur signale le travail ou le rapport du sous-agent, ou qu'une vérification de sécurité API distincte refuse l'examen, le rapport est toujours livré, précédé d'un avertissement de sécurité. Quand le classificateur n'est pas disponible pour l'examen, le rapport arrive avec une note pour vérifier le travail du sous-agent avant d'agir en fonction de celui-ci.

534 </Accordion>542 </Accordion>

535 543 

536 <Accordion title="Coût et latence">544 <Accordion title="Coût et latence">

537 Le classificateur s'exécute sur Claude Sonnet 5 par défaut plutôt que sur votre sélection `/model`. Un modèle de classificateur que Anthropic configure côté serveur prime sur ce défaut. Lorsque le modèle de votre session est Claude Sonnet 4.6, ou lorsque [`availableModels`](/docs/fr/model-config#restrict-model-selection) exclut Sonnet 5, le classificateur s'exécute sur le modèle de la session à la place, ou sur un modèle Opus lorsque la session s'exécute sur un [modèle Fable](/docs/fr/model-config#work-with-fable) ; sur les fournisseurs autres que l'API Anthropic, ce retour Opus est le modèle Opus par défaut du fournisseur.545 Le classificateur s'exécute sur Claude Sonnet 5 par défaut plutôt que sur votre sélection `/model`. Un modèle de classificateur qu'Anthropic configure côté serveur prend précédence sur ce défaut. Quand le modèle de votre session est Claude Sonnet 4.6, ou quand [`availableModels`](/docs/fr/model-config#restrict-model-selection) exclut Sonnet 5, le classificateur s'exécute sur le modèle de votre session à la place, ou sur un modèle Opus quand la session s'exécute sur un [modèle Fable](/docs/fr/model-config#work-with-fable) ; sur les fournisseurs autres que l'API Anthropic, ce retour en arrière Opus est le modèle Opus par défaut du fournisseur.

538 546 

539 La première demande en mode auto de la session valide le défaut Sonnet 5 : si la demande réussit, Sonnet 5 reste le modèle de classificateur de la session, et si elle échoue parce que le modèle n'est pas disponible, la session utilise le retour à la place. Après que cette validation se règle, le modèle du classificateur ne change pas pour la session.547 La première demande en mode auto de la session valide le défaut Sonnet 5 : si la demande réussit, Sonnet 5 reste le modèle de classificateur de la session, et si elle échoue parce que le modèle n'est pas disponible, la session utilise le retour en arrière à la place. Après que cette validation se règle, le modèle du classificateur ne change pas pour la session.

540 548 

541 Sur les plans Enterprise et sur les comptes qui utilisent l'API Claude, [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws), Amazon Bedrock, la plateforme Agent de Google Cloud ou Microsoft Foundry, les appels de classificateur comptent vers votre utilisation de tokens. Chaque vérification envoie une partie de la transcription plus l'action en attente, ajoutant un aller-retour avant l'exécution. Les lectures et les éditions de répertoire de travail en dehors des chemins protégés ignorent le classificateur, donc la surcharge provient principalement des commandes shell et des opérations réseau. Là où le serveur examine les actions dans le cadre des demandes de modèle de la session, il n'y a pas d'appels de classificateur distincts à compter ; voir [Examen du classificateur côté serveur](#server-side-classifier-review).549 Sur les plans Enterprise et sur les comptes qui utilisent l'API Claude, [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws), Amazon Bedrock, la plateforme d'agents de Google Cloud ou Microsoft Foundry, les appels de classificateur comptent vers votre utilisation de jetons. Chaque vérification envoie une partie de la transcription plus l'action en attente, ajoutant un aller-retour avant l'exécution. Les lectures et les éditions de répertoire de travail en dehors des chemins protégés ignorent le classificateur, donc la surcharge provient principalement des commandes shell et des opérations réseau. Où le serveur examine les actions dans le cadre des demandes de modèle de la session, il n'y a pas d'appels de classificateur distincts à compter ; voir [Examen du classificateur côté serveur](#server-side-classifier-review).

542 550 

543 L'accès réseau en sandbox n'ajoute pas de demandes de classificateur par connexion. Le classificateur juge [les hôtes qu'une commande nomme](/docs/fr/sandboxing#per-command-allowed-domains-in-auto-mode) ensemble avec la commande dans un examen, et Claude Code vérifie chaque connexion par rapport à la liste approuvée sans appeler le classificateur à nouveau.551 L'accès réseau en bac à sable n'ajoute pas de demandes de classificateur par connexion. Le classificateur juge [les hôtes qu'une commande nomme](/docs/fr/sandboxing#per-command-allowed-domains-in-auto-mode) ensemble avec la commande dans un examen, et Claude Code vérifie chaque connexion par rapport à la liste approuvée sans appeler le classificateur à nouveau.

544 </Accordion>552 </Accordion>

545</AccordionGroup>553</AccordionGroup>

546 554 


568 576 

569Le mode `bypassPermissions` désactive les invites de permission et les contrôles de sécurité afin que les appels d'outils s'exécutent immédiatement, y compris les écritures vers les [chemins protégés](#protected-paths).577Le mode `bypassPermissions` désactive les invites de permission et les contrôles de sécurité afin que les appels d'outils s'exécutent immédiatement, y compris les écritures vers les [chemins protégés](#protected-paths).

570 578 

571Les [actions qu'aucun mode n'auto-approuve](#actions-no-mode-auto-approves) invitent toujours dans ce mode.579Les [actions qu'aucun mode n'auto-approuve](#actions-no-mode-auto-approves) invitent toujours dans ce mode. Les [Remove-Item dans PowerShell](#remove-item-in-powershell) refusent également s'appliquent dans ce mode.

572 580 

573Deux [protections de messagerie inter-sessions](/docs/fr/cross-session-messaging) s'appliquent toujours dans ce mode, et dans les sessions en mode plan interactif où les permissions de contournement sont disponibles :581Deux [protections de messagerie inter-sessions](/docs/fr/cross-session-messaging) s'appliquent toujours dans ce mode, et dans les sessions en mode plan interactif où les permissions de contournement sont disponibles :

574 582 


625 633 

626Dans une session démarrée avec [`--restricted`](/docs/fr/cli-reference#cli-flags), qui nécessite Claude Code v2.1.248 ou version ultérieure, le classificateur ne peut pas approuver les écritures de chemins protégés.634Dans une session démarrée avec [`--restricted`](/docs/fr/cli-reference#cli-flags), qui nécessite Claude Code v2.1.248 ou version ultérieure, le classificateur ne peut pas approuver les écritures de chemins protégés.

627 635 

628Les règles [`permissions.allow`](/docs/fr/permissions#manage-permissions) dans les fichiers de paramètres ne pré-approuvent pas les écritures de chemins protégés. La vérification de sécurité s'exécute avant que Claude Code n'évalue les règles d'autorisation des paramètres, donc une entrée telle que `Edit(.claude/**)` dans `~/.claude/settings.json` ou `.claude/settings.json` ne change pas le résultat par mode dans le tableau ci-dessus. Dans les modes qui demandent, l'invite pour une écriture `.claude/` offre **Oui, et autoriser Claude à modifier ses propres paramètres pour cette session**, ce qui approuve les écritures `.claude/` ultérieures dans cette session sans demander à nouveau.636Dans les modes qui acheminent les écritures de chemins protégés vers le classificateur, une écriture que la [vérification des liens symboliques](/docs/fr/permissions#symlinks) résout vers un chemin protégé vous demande une confirmation à la place quand le chemin que Claude a demandé n'est pas lui-même protégé.

637 

638Les règles [`permissions.allow`](/docs/fr/permissions#manage-permissions) dans les fichiers de paramètres ne pré-approuvent pas les écritures de chemins protégés. La vérification de sécurité s'exécute avant que Claude Code n'évalue les règles d'autorisation des paramètres, donc une entrée telle que `Edit(.claude/**)` dans `~/.claude/settings.json` ou `.claude/settings.json` ne change pas le résultat par mode dans le tableau ci-dessus. Dans les modes qui demandent, l'invite pour une écriture vers le dossier `.claude/` du projet ou vers `~/.claude/` peut offrir l'une de ces options limitées à la session :

639 

640* Pour le dossier `.claude/` du projet : **Oui, et autoriser Claude à modifier les fichiers du dossier .claude de ce projet pour cette session**

641* Pour `~/.claude/` : **Oui, et autoriser Claude à modifier les fichiers de son dossier \~/.claude pour cette session**

629 642 

630Répertoires protégés :643Répertoires protégés :

631 644 


663| Mode | Ce que Claude Code fait avec une suppression de chemin critique |676| Mode | Ce que Claude Code fait avec une suppression de chemin critique |

664| :- | :- |677| :- | :- |

665| `default`, `acceptEdits` | Vous demande de l'approuver |678| `default`, `acceptEdits` | Vous demande de l'approuver |

666| `plan` | Vous demande de l'approuver. Avec le [mode auto disponible pendant la planification](#analyze-before-you-edit-with-plan-mode) et aucune permission de contournement disponible, l'envoie au classificateur à la place |679| `plan` | Vous demande de l'approuver. Quand [le classificateur examine les commandes pendant la planification](#analyze-before-you-edit-with-plan-mode) et qu'aucune permission de contournement n'est disponible, la traite comme en mode `auto` |

667| `auto` | L'envoie au [classificateur](#eliminate-prompts-with-auto-mode) |680| `auto` | Vous demande de l'approuver dans le terminal, avec une limite de temps. Ailleurs, la refuse |

668| `dontAsk` | La refuse |681| `dontAsk` | La refuse |

669| `bypassPermissions` | Vous demande de l'approuver |682| `bypassPermissions` | Vous demande de l'approuver, avec une limite de temps dans le terminal |

683 

684Si une [règle ask](/docs/fr/permissions#manage-permissions) explicite correspond à la commande, Claude Code vous demande à la place, même en mode `auto` et sans limite de temps. Dans les modes qui demandent, un [hook `PermissionRequest`](/docs/fr/hooks#permissionrequest) peut répondre à l'invite.

685 

686La gestion `auto` et `bypassPermissions` nécessite Claude Code v2.1.281 ou ultérieur. Pour la désactiver, définissez [`CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT=1`](/docs/fr/env-vars#variables) dans l'environnement qui lance Claude Code. En mode `auto`, les suppressions de chemins critiques vont alors au classificateur à la place, et en mode `bypassPermissions` l'invite n'a pas de limite de temps.

670 687 

671Si une [règle ask](/docs/fr/permissions#manage-permissions) explicite correspond à la commande, Claude Code vous demande même en mode `auto`. Dans les modes qui demandent, un [hook `PermissionRequest`](/docs/fr/hooks#permissionrequest) peut répondre à l'invite de la même manière qu'il répond à n'importe quelle autre.688En modes `auto` et `bypassPermissions`, l'invite du terminal affiche un compte à rebours de deux minutes :

689 

690* Si le compte à rebours s'épuise avant que vous répondiez, Claude Code refuse la commande et dit à Claude quoi faire à la place, pour qu'une session sans surveillance continue de fonctionner.

691* Appuyez sur n'importe quelle touche pendant que l'invite est ouverte pour arrêter le compte à rebours et garder l'invite en attente de votre réponse.

692* Après trois de ces invites qui s'épuisent sans réponse dans une session, Claude Code arrête de les afficher et refuse immédiatement les suppressions de chemins critiques supplémentaires. L'envoi d'un nouveau message recommence le compte.

693 

694En mode `auto`, partout où Claude Code ne peut pas vous afficher une invite de terminal, il refuse la commande immédiatement, par exemple dans les [exécutions non interactives](/docs/fr/headless) avec `-p`, dans les sessions [Agent SDK](/docs/fr/agent-sdk/permissions), et dans le panneau de chat de l'extension VS Code et l'application Desktop. Le refus dit à Claude de signaler ce qu'il voulait supprimer et de laisser la suppression à vous.

672 695 

673Claude Code traite une cible `rm` ou `rmdir` comme un chemin critique quand il s'agit de l'un des éléments suivants :696Claude Code traite une cible `rm` ou `rmdir` comme un chemin critique quand il s'agit de l'un des éléments suivants :

674 697 


686* Pour une variable comme `$DIR`, protégez chaque expansion pour que le shell s'arrête avec une erreur quand la variable n'est pas définie ou vide, comme dans `rm -rf "${DIR:?}"/*`, ou utilisez un chemin littéral709* Pour une variable comme `$DIR`, protégez chaque expansion pour que le shell s'arrête avec une erreur quand la variable n'est pas définie ou vide, comme dans `rm -rf "${DIR:?}"/*`, ou utilisez un chemin littéral

687* Pour une variable qui est normalement définie, comme `$HOME`, utilisez un chemin littéral710* Pour une variable qui est normalement définie, comme `$HOME`, utilisez un chemin littéral

688 711 

689Une suppression dont les expansions sont toutes protégées de cette manière n'est pas une suppression de chemin critique, donc en mode `bypassPermissions` elle s'exécute sans invite.712Une suppression dont les expansions sont toutes protégées de cette manière passe cette vérification, donc en mode `bypassPermissions` elle s'exécute sans invite à moins qu'une autre vérification dans cette section ne la signale.

713 

714Claude Code traite également ces cibles comme des chemins critiques :

715 

716* **Une variable shell suivie d'un nom de répertoire de niveau supérieur**, comme `rm -rf "$TMPDIR/mnt"` : quand la variable se développe vide, la commande supprime `/mnt`. Cela couvre les noms de niveau supérieur courants comme `mnt`, `tmp`, `usr`, et `Users`.

717* **Une variable que la même commande assigne à partir d'une substitution d'impression de répertoire**, comme `D=$(pwd); rm -rf "$D"` ou une assignation à partir de `$(git rev-parse --show-toplevel)` : la valeur peut nommer votre répertoire de travail ou la racine du référentiel. Une protection `"${D:?}"` ne clarifie pas cette vérification, car la variable n'est pas vide ; utilisez un chemin littéral à la place.

718* **Une cible avec barre oblique inverse uniquement**, comme `rm -rf "\\"` : Git Bash sur Windows lit une barre oblique inverse seule comme la racine du lecteur actuel, donc la vérification s'applique sur chaque plateforme.

719* **Uniquement la sortie d'une substitution de commande**, comme `rm -rf "$(pwd)"`, quand le `rm` est récursif : Claude Code ne peut pas vérifier la cible avant que la commande s'exécute, donc l'invite dit à Claude d'exécuter la substitution seule d'abord puis de supprimer les chemins littéraux qu'elle affiche. Pour désactiver cette vérification, définissez [`CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT=1`](/docs/fr/env-vars#variables) dans l'environnement qui lance Claude Code.

720 

721Quand une substitution de commande finale peut se développer vide, comme dans `rm -rf ~/$(cmd)`, Claude Code vérifie le chemin qui resterait, votre répertoire personnel dans cet exemple.

690 722 

691Masquer la suppression à l'intérieur d'une sous-coquille avec `(...)`, un groupe d'accolades avec `{ ...; }`, une substitution de commande avec `$(...)` ou des backticks, ou une substitution de processus avec `<(...)`, ne saute pas la vérification. Claude Code trouve une suppression de chemin critique qu'elle se trouve à l'intérieur de la forme imbriquée, comme dans `(rm -rf ~)` ou `echo "$(rm -rf ~)"`, ou ailleurs dans la même commande.723Masquer la suppression à l'intérieur d'une sous-coquille avec `(...)`, un groupe d'accolades avec `{ ...; }`, une substitution de commande avec `$(...)` ou des backticks, ou une substitution de processus avec `<(...)`, ne saute pas la vérification. Claude Code trouve une suppression de chemin critique qu'elle se trouve à l'intérieur de la forme imbriquée, comme dans `(rm -rf ~)` ou `echo "$(rm -rf ~)"`, ou ailleurs dans la même commande.

692 724 


694 Remove-Item dans PowerShell726 Remove-Item dans PowerShell

695</h3>727</h3>

696 728 

697Quand vous activez l'[outil PowerShell](/docs/fr/tools-reference#powershell-tool), Claude Code donne à `Remove-Item` sa propre vérification, distincte de la liste des chemins critiques `rm`. Le résultat dépend de la cible, et le premier cas correspondant s'applique :729Quand vous activez l'[outil PowerShell](/docs/fr/tools-reference#powershell-tool), Claude Code donne à `Remove-Item` et aux commandes intégrées `cmd` `rd`, `rmdir`, `del`, et `erase` leurs propres vérifications, distinctes de la liste des chemins critiques `rm`. Pour `Remove-Item`, le résultat dépend de la cible, et le premier cas correspondant s'applique :

698 730 

699* **Chemins système** : la racine du système de fichiers et ses répertoires de niveau supérieur, les racines des lecteurs et leurs répertoires de niveau supérieur, et votre répertoire personnel. Claude Code refuse la commande dans tous les modes, sans vous demander.731* **Chemins système** : la racine du système de fichiers et ses répertoires de niveau supérieur, les racines des lecteurs et leurs répertoires de niveau supérieur, et votre répertoire personnel. Claude Code refuse la commande dans tous les modes, sans vous demander.

700* **Wildcards** : un `*` nu, ou n'importe quelle cible se terminant par `/*` ou `\*`, y compris un glob sous une variable shell comme `$dir/*`. Claude Code refuse la commande dans tous les modes, sans vous demander, avant que le [classificateur](#eliminate-prompts-with-auto-mode) ne la voie.732* **Wildcards** : un `*` nu, ou n'importe quelle cible se terminant par `/*` ou `\*`, y compris un glob sous une variable shell comme `$dir/*`. Claude Code refuse la commande dans tous les modes, sans vous demander, avant que le [classificateur](#eliminate-prompts-with-auto-mode) ne la voie.

701* **Votre répertoire de travail ou l'un de ses parents, avec `-Recurse`** : Claude Code traite la commande comme n'importe quelle autre qui nécessite une approbation dans votre mode de permission, donc elle vous demande dans les modes qui demandent, l'envoie au classificateur en mode `auto`, et la refuse en mode `dontAsk`. Le mode `bypassPermissions` saute cette vérification.733* **Votre répertoire de travail ou l'un de ses parents, avec `-Recurse`** : Claude Code traite la commande comme n'importe quelle autre qui nécessite une approbation dans votre mode de permission, donc elle vous demande dans les modes qui demandent, l'envoie au classificateur en mode `auto`, et la refuse en mode `dontAsk`. Le mode `bypassPermissions` saute cette vérification.

702 734 

735Le cas des chemins système s'applique également à `rd`, `rmdir`, `del`, et `erase` quand Claude les exécute via `cmd`, comme dans `cmd /c rd /s /q C:\Users`. Par défaut, Claude Code refuse une telle commande dans tous les modes, sans vous demander. Cette vérification `cmd` nécessite Claude Code v2.1.283 ou ultérieur.

736 

737Lors de l'évaluation d'une cible `cmd`, Claude Code traite une variable PowerShell qui suit du texte littéral comme vide. Cela rend `cmd /c rd /s /q "C:\$name"` une suppression de `C:\`, donc elle est également refusée. Un wildcard final compte comme le dossier qu'il vide, donc `cmd /c del /q C:\*` est refusé et `cmd /c del /q dist\*` dans votre projet ne l'est pas.

738 

739Pour désactiver la vérification `cmd`, définissez [`CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY=1`](/docs/fr/env-vars#variables) dans l'environnement qui lance Claude Code. Claude Code ignore cette variable dans le bloc `env` d'un fichier de paramètres. `Remove-Item` sur un chemin système reste refusé de toute façon.

740 

703<h2 id="see-also">741<h2 id="see-also">

704 Voir aussi742 Voir aussi

705</h2>743</h2>

permissions.md +34 −5

Details

457* Claude Code lit un modèle `!` relatif au répertoire courant même lorsque `/`, `~/` ou `//` suit le `!`, donc le modèle ne peut pas atteindre une règle ancrée avec l'un de ces préfixes. `Read(!~/notes/public/**)` ne découpe rien hors de `Read(~/notes/**)`.457* Claude Code lit un modèle `!` relatif au répertoire courant même lorsque `/`, `~/` ou `//` suit le `!`, donc le modèle ne peut pas atteindre une règle ancrée avec l'un de ces préfixes. `Read(!~/notes/public/**)` ne découpe rien hors de `Read(~/notes/**)`.

458* Une découpe ne peut pas rouvrir un fichier à l'intérieur d'un répertoire qu'une règle bloque dans son ensemble. Avec `Read(secrets/**)` et `Read(!secrets/public/**)`, Claude Code bloque toujours `secrets/public` avec le reste de `secrets`.458* Une découpe ne peut pas rouvrir un fichier à l'intérieur d'un répertoire qu'une règle bloque dans son ensemble. Avec `Read(secrets/**)` et `Read(!secrets/public/**)`, Claude Code bloque toujours `secrets/public` avec le reste de `secrets`.

459 459 

460Lorsque Claude accède à un lien symbolique, les règles d'autorisation vérifient deux chemins : le lien symbolique lui-même et le fichier vers lequel il se résout. Les règles d'autorisation et de refus traitent cette paire différemment : les règles d'autorisation reviennent à vous inviter, tandis que les règles de refus bloquent carrément.460<h4 id="symlinks">

461 Liens symboliques

462</h4>

461 463 

462* **Règles d'autorisation** : s'appliquent uniquement lorsque le chemin du lien symbolique et sa cible correspondent tous les deux. Un lien symbolique à l'intérieur d'un répertoire autorisé qui pointe vers l'extérieur vous invite toujours.464Lorsqu'un chemin de fichier que Claude demande passe par un lien symbolique, la vérification d'autorisation couvre deux chemins : celui que Claude a demandé et le fichier vers lequel il se résout. Cela s'applique aux liens symboliques sur macOS, Linux et Windows, et aux jonctions de répertoires sur Windows.

463* **Règles de refus** : s'appliquent lorsque le chemin du lien symbolique ou sa cible correspond. Un lien symbolique qui pointe vers un fichier refusé est lui-même refusé. Par exemple, avec `Read(./project/**)` autorisé et `Read(~/.ssh/**)` refusé, un lien symbolique à `./project/key` pointant vers `~/.ssh/id_rsa` est bloqué : la cible échoue à la règle d'autorisation et correspond à la règle de refus.

464 465 

465Sur macOS et Linux, une règle de refus ou de demande écrite via un répertoire lié symboliquement avec un modèle `//`, `~/` ou `/` s'applique également à l'emplacement réel du répertoire. Par exemple, sur macOS, où `/etc` se résout à `/private/etc`, `Read(//etc/**)` bloque également `/private/etc/hosts`. Avant la v2.1.268, une règle de refus ou de demande écrite via un répertoire lié symboliquement ne s'appliquait pas à un chemin donné par son emplacement réel.466<h5 id="how-rules-match-a-symlinked-path">

467 Comment les règles correspondent à un chemin lié symboliquement

468</h5>

466 469 

467Lorsqu'un outil ouvre un fichier approuvé, Claude Code [confirme que le chemin se résout toujours à l'emplacement que la vérification d'autorisation a approuvé](/docs/fr/errors#refusing-after-a-symlink-changed).470Les règles d'autorisation et de refus traitent le chemin demandé et le fichier vers lequel il se résout différemment :

471 

472* **Règles d'autorisation** : s'appliquent uniquement lorsque le chemin demandé et le fichier vers lequel il se résout correspondent tous les deux. Une lecture via un lien symbolique à l'intérieur d'un répertoire autorisé qui pointe vers l'extérieur ne correspond pas à la règle.

473* **Règles de refus** : s'appliquent lorsque le chemin demandé ou le fichier vers lequel il se résout correspond. Un lien symbolique qui pointe vers un fichier refusé est lui-même refusé. Par exemple, avec `Read(./project/**)` autorisé et `Read(~/.ssh/**)` refusé, un lien symbolique à `./project/key` pointant vers `~/.ssh/id_rsa` est bloqué : la cible échoue à la règle d'autorisation et correspond à la règle de refus.

474 

475Sur macOS et Linux, une règle de refus ou de demande écrite via un répertoire lié symboliquement avec un modèle `//`, `~/` ou `/` s'applique également à l'emplacement réel du répertoire. Par exemple, sur macOS, où `/etc` se résout à `/private/etc`, `Read(//etc/**)` bloque également `/private/etc/hosts`. Avant la v2.1.268, une règle de refus ou de demande écrite via un répertoire lié symboliquement ne s'appliquait pas à un chemin donné par son emplacement réel.

468 476 

469Grep et Glob recherchent le répertoire auquel l'argument `path` se résout. Claude Code applique les règles de refus `Read` à ce répertoire.477Grep et Glob recherchent le répertoire auquel l'argument `path` se résout. Claude Code applique les règles de refus `Read` à ce répertoire.

470 478 

479<h5 id="writes-through-a-symlink">

480 Écritures via un lien symbolique

481</h5>

482 

483Si le chemin que Claude demande d'éditer ou d'écrire est lui-même un lien symbolique, les outils Edit et Write [refusent l'écriture et dirigent Claude vers la cible du lien](/docs/fr/errors#refusing-after-a-symlink-changed).

484 

485Une écriture peut toujours passer par un lien symbolique lorsqu'un répertoire sur le chemin du fichier est un lien symbolique, ou lorsqu'une commande Bash ou PowerShell fait l'écriture. Pour ces écritures, ce qui se passe dépend de l'endroit où le fichier vers lequel l'écriture se résout se situe par rapport à vos [répertoires de travail](#working-directories) et aux [chemins protégés](/docs/fr/permission-modes#protected-paths) :

486 

487* **Se résout en dehors des répertoires de travail** : lorsque le chemin demandé est à l'intérieur de vos répertoires de travail et que le fichier vers lequel il se résout ne l'est pas, l'écriture n'est pas approuvée automatiquement en [mode `acceptEdits`](/docs/fr/permission-modes#auto-approve-file-edits-with-acceptedits-mode). En [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), sauf si une règle d'autorisation approuve l'écriture, vous êtes invité à la place du classificateur qui décide. L'invite nomme le chemin vers lequel l'écriture se résout.

488* **Se résout à un chemin protégé que le chemin demandé ne nomme pas** : le [tableau des chemins protégés](/docs/fr/permission-modes#protected-paths) donne le résultat pour chaque mode d'autorisation, sauf que là où le tableau route l'écriture vers le classificateur, cette écriture vous invite à la place.

489 

490<h5 id="paths-that-can’t-be-resolved-or-that-change">

491 Chemins qui ne peuvent pas être résolus ou qui changent

492</h5>

493 

494Lorsque Claude Code ne peut pas déterminer où un chemin mène sur le disque, par exemple parce que les liens symboliques sur celui-ci forment une boucle, les outils Read, Edit et Write [refusent l'opération](/docs/fr/errors#refusing-after-a-symlink-changed).

495 

496Lorsqu'un outil ouvre ensuite le fichier approuvé, il [confirme que le chemin se résout toujours à l'emplacement que la vérification d'autorisation a approuvé](/docs/fr/errors#refusing-after-a-symlink-changed).

497 

471<h3 id="webfetch">498<h3 id="webfetch">

472 WebFetch499 WebFetch

473</h3>500</h3>


705 732 

706Claude Code affiche la boîte de dialogue de confiance dans les sessions interactives uniquement. Une exécution `claude -p` ou une session SDK ne l'affiche jamais, et faire confiance à un dossier parent ne compte pas pour ces règles, donc [Ce qui s'exécute avant que vous fassiez confiance à un dossier](#what-runs-before-you-trust-a-folder) indique quel contenu du référentiel Claude Code utilise toujours dans chacune de ces deux situations.733Claude Code affiche la boîte de dialogue de confiance dans les sessions interactives uniquement. Une exécution `claude -p` ou une session SDK ne l'affiche jamais, et faire confiance à un dossier parent ne compte pas pour ces règles, donc [Ce qui s'exécute avant que vous fassiez confiance à un dossier](#what-runs-before-you-trust-a-folder) indique quel contenu du référentiel Claude Code utilise toujours dans chacune de ces deux situations.

707 734 

735Avant de démarrer ou de redémarrer une [session en arrière-plan](/docs/fr/agent-view), Claude Code vérifie également la confiance de l'espace de travail pour le répertoire dans lequel la session s'exécute. Si vous exécutez `claude --bg` à partir d'un terminal dans un répertoire auquel vous n'avez pas fait confiance, la boîte de dialogue de confiance apparaît en premier et la session démarre une fois que vous l'acceptez. Là où aucune boîte de dialogue ne peut apparaître, comme dans un script, la commande se termine à la place avec une erreur [`Workspace not trusted`](/docs/fr/errors#workspace-not-trusted-when-dispatching-a-background-session).

736 

708<h3 id="when-your-local-settings-file-needs-trust">737<h3 id="when-your-local-settings-file-needs-trust">

709 Quand votre fichier de paramètres locaux a besoin de confiance738 Quand votre fichier de paramètres locaux a besoin de confiance

710</h3>739</h3>

platforms.md +1 −1

Details

53| | Déclencheur | Claude s'exécute sur | Configuration | Idéal pour |53| | Déclencheur | Claude s'exécute sur | Configuration | Idéal pour |

54| :- | :- | :- | :- | :- |54| :- | :- | :- | :- | :- |

55| [Dispatch](/docs/fr/desktop#sessions-from-dispatch) | Envoyer une tâche depuis l'application mobile Claude | Votre machine (Desktop) | [Associer l'application mobile à Desktop](https://support.claude.com/en/articles/13947068) | Déléguer du travail quand vous êtes absent, configuration minimale |55| [Dispatch](/docs/fr/desktop#sessions-from-dispatch) | Envoyer une tâche depuis l'application mobile Claude | Votre machine (Desktop) | [Associer l'application mobile à Desktop](https://support.claude.com/en/articles/13947068) | Déléguer du travail quand vous êtes absent, configuration minimale |

56| [Remote Control](/docs/fr/remote-control) | Piloter une session en cours depuis [claude.ai/code](https://claude.ai/code) ou l'application mobile Claude | Votre machine (CLI ou VS Code) | Exécuter `claude remote-control` | Diriger le travail en cours depuis un autre appareil |56| [Remote Control](/docs/fr/remote-control) | Piloter une session en cours depuis [claude.ai/code](https://claude.ai/code) ou l'application mobile Claude | Votre machine (CLI, Desktop ou VS Code) | Exécuter [`claude remote-control` ou `/remote-control`](/docs/fr/remote-control#start-a-remote-control-session) | Diriger le travail en cours depuis un autre appareil |

57| [Channels](/docs/fr/channels) | Envoyer des événements depuis une application de chat comme Telegram ou Discord, ou votre propre serveur | Votre machine (CLI) | [Installer un plugin de canal](/docs/fr/channels#quickstart) ou [créer le vôtre](/docs/fr/channels-reference) | Réagir à des événements externes comme les échecs CI ou les messages de chat |57| [Channels](/docs/fr/channels) | Envoyer des événements depuis une application de chat comme Telegram ou Discord, ou votre propre serveur | Votre machine (CLI) | [Installer un plugin de canal](/docs/fr/channels#quickstart) ou [créer le vôtre](/docs/fr/channels-reference) | Réagir à des événements externes comme les échecs CI ou les messages de chat |

58| [Slack](/docs/fr/slack) | Mentionner `@Claude` dans un canal d'équipe | Cloud Anthropic | [Installer l'application Slack](/docs/fr/slack#setting-up-claude-code-in-slack) avec [Claude Code sur le web](/docs/fr/claude-code-on-the-web) activé | PRs et révisions depuis le chat d'équipe |58| [Slack](/docs/fr/slack) | Mentionner `@Claude` dans un canal d'équipe | Cloud Anthropic | [Installer l'application Slack](/docs/fr/slack#setting-up-claude-code-in-slack) avec [Claude Code sur le web](/docs/fr/claude-code-on-the-web) activé | PRs et révisions depuis le chat d'équipe |

59| [Environnements auto-hébergés](/docs/fr/self-hosted-environments) | Démarrer une [session cloud](/docs/fr/claude-code-on-the-web) et choisir l'environnement de votre organisation | Infrastructure de votre organisation | [Déployer des runners](/docs/fr/self-hosted-environments-quickstart), sur les plans Team et Enterprise | Sessions cloud qui doivent s'exécuter dans votre réseau |59| [Environnements auto-hébergés](/docs/fr/self-hosted-environments) | Démarrer une [session cloud](/docs/fr/claude-code-on-the-web) et choisir l'environnement de votre organisation | Infrastructure de votre organisation | [Déployer des runners](/docs/fr/self-hosted-environments-quickstart), sur les plans Team et Enterprise | Sessions cloud qui doivent s'exécuter dans votre réseau |

plugin-evals.md +17 −2

Details

16* Détecter les régressions lorsque vous modifiez le plugin ou qu'un nouveau modèle est lancé16* Détecter les régressions lorsque vous modifiez le plugin ou qu'un nouveau modèle est lancé

17* Voir ce que le plugin contribue par rapport à aucun plugin17* Voir ce que le plugin contribue par rapport à aucun plugin

18 18 

19Cette page est destinée aux auteurs de plugins et de skills qui ont un plugin fonctionnel et qui veulent tester son comportement, et aux équipes qui contrôlent les modifications de plugins dans CI. Son format de cas est séparé du fichier `evals/evals.json` que le [plugin skill-creator](/docs/fr/skills#run-evals-with-skill-creator) utilise. Pour créer un plugin, voir [Créer un plugin](/docs/fr/plugins/create) ; pour vérifier les fichiers d'un plugin pour les erreurs de syntaxe et de schéma plutôt que son comportement, utilisez [`claude plugin validate`](/docs/fr/plugins/cli-reference#plugin-validate).19Cette page est destinée aux auteurs de plugins et de skills qui ont un plugin fonctionnel et qui veulent tester son comportement, et aux équipes qui contrôlent les modifications de plugins dans CI. Pour itérer sur une seule skill dans une conversation Claude Code, le [plugin skill-creator](/docs/fr/skills#run-evals-with-skill-creator) exécute une comparaison similaire avec son propre format `evals/evals.json`, et aucun des deux outils ne lit les fichiers de cas de l'autre. Pour créer un plugin, voir [Créer un plugin](/docs/fr/plugins/create) ; pour vérifier les fichiers d'un plugin pour les erreurs de syntaxe et de schéma plutôt que son comportement, utilisez [`claude plugin validate`](/docs/fr/plugins/cli-reference#plugin-validate).

20 20 

21<Note>21<Note>

22 Chaque exécution d'eval et chaque évaluateur de juge est un vrai appel de modèle sur votre compte, compté par rapport à l'utilisation de votre plan ou votre facture API, alors vérifiez d'abord les [exigences](#requirements). Ensuite [créez votre première suite d'eval](#create-your-first-eval-suite), ou allez à [Exécuter les evals dans CI](#run-evals-in-ci) si vous en avez déjà une.22 Chaque exécution d'eval et chaque évaluateur de juge est un vrai appel de modèle sur votre compte, compté par rapport à l'utilisation de votre plan ou votre facture API, alors vérifiez d'abord les [exigences](#requirements). Ensuite [créez votre première suite d'eval](#create-your-first-eval-suite), ou allez à [Exécuter les evals dans CI](#run-evals-in-ci) si vous en avez déjà une.


29Pour exécuter les evals de plugin, vous avez besoin de :29Pour exécuter les evals de plugin, vous avez besoin de :

30 30 

31* Claude Code v2.1.269 ou ultérieur. Exécutez `claude --version` pour vérifier et `claude update` pour mettre à jour.31* Claude Code v2.1.269 ou ultérieur. Exécutez `claude --version` pour vérifier et `claude update` pour mettre à jour.

32* Git 2.31 ou ultérieur, si git est installé. Exécutez `git --version` pour vérifier. Avec une version plus ancienne de git, `claude plugin eval` [s'arrête avant d'exécuter un cas quelconque](#git-is-too-old-for-claude-plugin-eval). Sans git, il s'exécute normalement.

32* Un répertoire de plugin avec un manifeste `plugin.json` ou `.claude-plugin/plugin.json`, ou un [plugin de répertoire de skills](/docs/fr/plugins/loading#plugins-shared-through-a-repository).33* Un répertoire de plugin avec un manifeste `plugin.json` ou `.claude-plugin/plugin.json`, ou un [plugin de répertoire de skills](/docs/fr/plugins/loading#plugins-shared-through-a-repository).

33* La même authentification et le même fournisseur de modèle que vos sessions Claude Code normales. Les exécutions d'eval, les évaluateurs notés par le juge, et `claude plugin eval init` appellent le modèle avec vos identifiants, donc ils comptent par rapport à vos limites d'utilisation du plan ou votre facture API. Lorsque la commande rapporte un coût, le chiffre est une [estimation du prix catalogue](/docs/fr/costs) de ces appels.34* La même authentification et le même fournisseur de modèle que vos sessions Claude Code normales. Les exécutions d'eval, les évaluateurs notés par le juge, et `claude plugin eval init` appellent le modèle avec vos identifiants, donc ils comptent par rapport à vos limites d'utilisation du plan ou votre facture API. Lorsque la commande rapporte un coût, le chiffre est une [estimation du prix catalogue](/docs/fr/costs) de ces appels.

34 35 


442| 130 | Interrompu. Les résultats partiels sont écrits |443| 130 | Interrompu. Les résultats partiels sont écrits |

443| 143 | Terminé, comme par un délai d'expiration CI |444| 143 | Terminé, comme par un délai d'expiration CI |

444 445 

445Les problèmes d'écriture ou de publication du rapport HTML ne changent jamais le code de sortie.446Le delta with-minus-without est signalé mais ne change jamais le code de sortie, et les problèmes d'écriture ou de publication du rapport HTML ne le font pas non plus.

446 447 

447Pour voir pourquoi un cas a marqué bas, exécutez-le localement sans `--json` pour que les lignes de progression par exécution et d'évaluateur s'impriment.448Pour voir pourquoi un cas a marqué bas, exécutez-le localement sans `--json` pour que les lignes de progression par exécution et d'évaluateur s'impriment.

448 449 


688 689 

689C'est la première exécution contre un répertoire que Claude Code ne fait pas confiance encore, et il ne peut pas demander parce que stdin ou stdout n'est pas un terminal, vous avez passé `--json`, ou la variable d'environnement `CI` est définie sur une valeur vraie comme `true`. Exécutez `claude plugin eval <dir>` une fois dans un terminal et répondez à l'invite, ou passez `--trust-plugin` si vous faites confiance au code et à la suite du plugin. Voir [Ce qu'une exécution peut accéder](#security).690C'est la première exécution contre un répertoire que Claude Code ne fait pas confiance encore, et il ne peut pas demander parce que stdin ou stdout n'est pas un terminal, vous avez passé `--json`, ou la variable d'environnement `CI` est définie sur une valeur vraie comme `true`. Exécutez `claude plugin eval <dir>` une fois dans un terminal et répondez à l'invite, ou passez `--trust-plugin` si vous faites confiance au code et à la suite du plugin. Voir [Ce qu'une exécution peut accéder](#security).

690 691 

692<h3 id="git-is-too-old-for-claude-plugin-eval">

693 « is too old for claude plugin eval »

694</h3>

695 

696Le `git` sur votre `PATH` est plus ancien que 2.31, donc `claude plugin eval` s'est arrêté avant d'exécuter un cas et a quitté 1 avec un message nommant votre version :

697 

698```text theme={null}

699git 2.30 is too old for claude plugin eval: it ignores the environment configuration (GIT_CONFIG_COUNT, added in git 2.31) that switches off the repository's git hooks and helper programs for the run. Install git 2.31 or newer.

700```

701 

702Pour chaque exécution, Claude Code désactive les hooks git, les assistants d'identification, et d'autres programmes qu'une configuration git d'un référentiel peut démarrer. Il le fait par le biais d'une configuration d'environnement que git ne lit que depuis la version 2.31. Un git plus ancien ignore cette configuration, donc la suite s'arrête plutôt que de noter les exécutions où ces programmes pourraient s'exécuter. Installez git 2.31 ou plus récent et exécutez la suite à nouveau.

703 

704Avant v2.1.283, `claude plugin eval` ne vérifiait pas la version de git, et sur un git plus ancien la suite s'exécutait avec ces programmes laissés activés.

705 

691<h3 id="no-eval-cases-found">706<h3 id="no-eval-cases-found">

692 « No eval cases found »707 « No eval cases found »

693</h3>708</h3>

Details

132 Étapes suivantes132 Étapes suivantes

133</h2>133</h2>

134 134 

135* [Publier et distribuer un plugin](/docs/fr/plugins/publish) : les routes dans chaque marketplace, y compris la marketplace officielle, que l'indice nécessite135* [Publier et distribuer un plugin](/docs/fr/plugins/publish) : les routes pour distribuer un plugin, y compris la marketplace officielle, que l'indice nécessite

136* [Référence des commandes de plugin](/docs/fr/plugins/cli-reference#plugin-install) : la commande shell qui installe le même plugin en dehors d'une session136* [Référence des commandes de plugin](/docs/fr/plugins/cli-reference#plugin-install) : la commande shell qui installe le même plugin en dehors d'une session

Details

165 165 

166Claude Code affiche `Successfully uninstalled plugin: formatter (scope: project)`. Quand le plugin n'est pas installé à cette portée, la commande affiche une ligne qui commence par `Failed to uninstall plugin "formatter@my-marketplace":` et quitte `1`.166Claude Code affiche `Successfully uninstalled plugin: formatter (scope: project)`. Quand le plugin n'est pas installé à cette portée, la commande affiche une ligne qui commence par `Failed to uninstall plugin "formatter@my-marketplace":` et quitte `1`.

167 167 

168Si la ligne d'échec continue avec `"formatter" was not uninstalled:`, Claude Code n'a pas pu confirmer que les paramètres de la portée n'activent plus le plugin, donc le plugin reste installé avec tout ce qu'il a sauvegardé. Avec `--json`, le résultat porte `failureCode: "settings_still_on"`. Cette vérification des paramètres nécessite Claude Code v2.1.282 ou ultérieur.

169 

170<h4 id="what-an-uninstall-deletes-and-keeps">

171 Ce qu'une désinstallation supprime et conserve

172</h4>

173 

174Quand vous désinstallez un plugin de la dernière portée où il est installé, Claude Code supprime aussi les [options et secrets](/docs/fr/plugins/manifest-reference#user-configuration) stockés du plugin et son répertoire de données, `~/.claude/plugins/data/<id>/`. Il y a trois exceptions :

175 

176* Avec `--keep-data`, le répertoire de données reste

177* Quand un autre plugin installé utilise le même dossier, comme un dont l'ID diffère de celui-ci seulement par la casse des lettres, le répertoire de données reste

178* Quand Claude Code ne peut pas relire la liste des plugins installés après l'avoir supprimé de cette portée, les options, secrets et répertoire de données restent tous, car le plugin peut toujours être installé à une autre portée. La désinstallation réussit quand même. Le message liste ce qui est resté et comment le supprimer, et avec `--json` le résultat porte `savedKept: "install_records_unreadable"`

179 

180Avec `--json`, `keptData` rapporte si le répertoire est resté, et `/plugin` affiche `· data preserved` quand il l'a fait. Pour un répertoire qui reste sans `--keep-data`, ce rapport nécessite Claude Code v2.1.281 ou ultérieur. Le champ `savedKept` nécessite Claude Code v2.1.282 ou ultérieur.

181 

168<h3 id="plugin-enable">182<h3 id="plugin-enable">

169 plugin enable183 plugin enable

170</h3>184</h3>


248 262 

249| Drapeau | Description |263| Drapeau | Description |

250| :- | :- |264| :- | :- |

251| `-s, --scope <scope>` | Portée à mettre à jour : `user`, `project`, `local`, ou `managed`. Par défaut la portée où le plugin est installé |265| `-s, --scope <scope>` | Portée à mettre à jour : `user`, `project`, `local`, ou `managed`. Auto-détecté quand omis |

252| `-y, --yes` | Acceptez une commande d'installation modifiée d'un plugin [source de commande](/docs/fr/plugins/host-marketplace), sans l'invite. Requis quand stdin ou stdout n'est pas un TTY, sauf si vous passez `--accept-command`. Nécessite Claude Code v2.1.229 ou ultérieur |266| `-y, --yes` | Acceptez une commande d'installation modifiée d'un plugin [source de commande](/docs/fr/plugins/host-marketplace), sans l'invite. Requis quand stdin ou stdout n'est pas un TTY, sauf si vous passez `--accept-command`. Nécessite Claude Code v2.1.229 ou ultérieur |

253| `--accept-command <sha256>` | Acceptez la commande déclarée par la marketplace dont le `sha256` une exécution [`--json` précédente](#plugin-json-result) a rapporté dans `shownCommand`, à la place de `-y`. Ne peut pas être combiné avec `-y`. Nécessite Claude Code v2.1.271 ou ultérieur |267| `--accept-command <sha256>` | Acceptez la commande déclarée par la marketplace dont le `sha256` une exécution [`--json` précédente](#plugin-json-result) a rapporté dans `shownCommand`, à la place de `-y`. Ne peut pas être combiné avec `-y`. Nécessite Claude Code v2.1.271 ou ultérieur |

254| `--json` | Affiche le résultat en tant qu'un objet JSON sur la dernière ligne de stdout, dans le [même format que `plugin install --json`](#plugin-json-result). Nécessite Claude Code v2.1.268 ou ultérieur |268| `--json` | Affiche le résultat en tant qu'un objet JSON sur la dernière ligne de stdout, dans le [même format que `plugin install --json`](#plugin-json-result). Nécessite Claude Code v2.1.268 ou ultérieur |

255 269 

270Si vous omettez `--scope`, la commande met à jour le plugin à la portée la plus spécifique où il est installé pour votre projet actuel, en vérifiant local, projet, utilisateur, puis managed.

271 

272Avant v2.1.281, la commande utilisait `user` quand vous omettiez `--scope`, donc mettre à jour un plugin installé seulement à la portée du projet ou local échouait avec `Plugin "<name>" is not installed at scope user`. Sur ces versions, passez `--scope`.

273 

256`managed` est la seule portée que vous pouvez mettre à jour mais pas installer. Pour les plugins installés par l'administrateur, voir [Gérer les plugins pour votre organisation](/docs/fr/plugins/org).274`managed` est la seule portée que vous pouvez mettre à jour mais pas installer. Pour les plugins installés par l'administrateur, voir [Gérer les plugins pour votre organisation](/docs/fr/plugins/org).

257 275 

258Mettez à jour un plugin :276Mettez à jour un plugin :

Details

413 413 

414 * **Construire votre premier plugin** : commencez par [Créer un plugin](/docs/fr/plugins/create)414 * **Construire votre premier plugin** : commencez par [Créer un plugin](/docs/fr/plugins/create)

415 * **Installer le plugin de quelqu'un d'autre** : consultez [Installer des plugins](/docs/fr/plugins/install)415 * **Installer le plugin de quelqu'un d'autre** : consultez [Installer des plugins](/docs/fr/plugins/install)

416 * **Les utilisateurs de votre plugin sont sur claude.ai ou dans Cowork** : un ensemble différent de composants se charge là. Consultez [Plugins sur claude.ai et dans Cowork](https://claude.com/docs/plugins/overview)416 * **Les utilisateurs de votre plugin sont sur claude.ai ou dans Cowork** : un ensemble différent de composants se charge là. Consultez [Structure des plugins et tests](https://claude.com/docs/plugins/build) et le [tableau de support des composants](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app)

417</Note>417</Note>

418 418 

419<h2 id="explore-the-plugin-directory">419<h2 id="explore-the-plugin-directory">


436 436 

437<PluginExplorer>437<PluginExplorer>

438 <Piece id="manifest">438 <Piece id="manifest">

439 Le [manifeste](/docs/fr/plugins/manifest-reference) est le fichier `plugin.json` dans le répertoire `.claude-plugin/` d'un plugin. Il contient les métadonnées du plugin et les valeurs `userConfig` que Claude Code demande à l'utilisateur. Seul `name` est requis. Dans celui-ci, `description` est le texte que les utilisateurs voient pour le plugin dans `/plugin`, et `version` garde les utilisateurs sur cette version jusqu'à ce que vous la changiez :439 Le [manifeste](/docs/fr/plugins/manifest-reference) est le fichier `plugin.json` dans le répertoire `.claude-plugin/` d'un plugin. Il contient les métadonnées du plugin et les valeurs `userConfig` que Claude Code demande à l'utilisateur. Claude Code charge un plugin sans celui-ci, mais [le répertoire d'Anthropic](/docs/fr/plugins/publish#submit-to-anthropics-directory) l'exige. À l'intérieur du fichier, seul `name` est requis. Dans celui-ci, `description` est le texte que les utilisateurs voient pour le plugin dans `/plugin`, et `version` garde les utilisateurs sur cette version jusqu'à ce que vous la changiez :

440 440 

441 ```json theme={null}441 ```json theme={null}

442 {442 {


838 Atteindre les utilisateurs sur claude.ai et Cowork838 Atteindre les utilisateurs sur claude.ai et Cowork

839</h4>839</h4>

840 840 

841Un serveur stdio local, comme le serveur `db` sous [Serveurs MCP](#mcp-servers), s'exécute dans Claude Code et dans une session Cowork qui s'exécute sur votre machine dans l'application Claude Desktop, mais pas sur claude.ai. Pour atteindre les utilisateurs là aussi, référencez un serveur distant par son URL `https://`, que claude.ai et Cowork offrent à l'utilisateur comme connecteur.841Un serveur stdio local, comme le serveur `db` sous [Serveurs MCP](#mcp-servers), s'exécute dans Claude Code et dans une session Cowork qui s'exécute sur votre machine dans l'application Claude Desktop, mais pas sur claude.ai. Pour atteindre les utilisateurs là aussi, référencez un serveur distant par son URL `https://`, que claude.ai et Cowork offrent à l'utilisateur comme connecteur, comme [Regrouper un connecteur MCP avec sa skill](https://claude.com/docs/plugins/build#bundle-an-mcp-connector-with-its-skill) le montre.

842 842 

843<h4 id="server-names-tool-names-and-reloads">843<h4 id="server-names-tool-names-and-reloads">

844 Noms de serveur, noms d'outils et rechargements844 Noms de serveur, noms d'outils et rechargements


918 918 

919Les répertoires `bin/` du plugin viennent après les entrées `PATH` de l'utilisateur, donc un plugin ne peut pas masquer `git`, `ls`, ou une autre commande système.919Les répertoires `bin/` du plugin viennent après les entrées `PATH` de l'utilisateur, donc un plugin ne peut pas masquer `git`, `ls`, ou une autre commande système.

920 920 

921claude.ai et Cowork n'installent pas un plugin qui a un répertoire `bin/` de niveau supérieur, y compris un que vous [distribuez via les paramètres d'organisation claude.ai](/docs/fr/plugins/host-marketplace#distribute-through-organization-settings).921claude.ai et Cowork n'installent pas un plugin qui a un répertoire `bin/` de niveau supérieur, y compris un que vous [distribuez via les paramètres d'organisation claude.ai](https://claude.com/docs/plugins/org-sync#keep-executables-out-of-the-top-level-bin-directory).

922 922 

923<h3 id="default-settings">923<h3 id="default-settings">

924 Paramètres par défaut924 Paramètres par défaut

Details

15 15 

16 * **Installer le plugin de quelqu'un d'autre** : voir [Installer des plugins](/docs/fr/plugins/install)16 * **Installer le plugin de quelqu'un d'autre** : voir [Installer des plugins](/docs/fr/plugins/install)

17 * **Vous ne savez pas si vous avez besoin d'un plugin** : voir [Décider si vous avez besoin d'un plugin](/docs/fr/plugins/overview#decide-whether-you-need-a-plugin) dans l'aperçu17 * **Vous ne savez pas si vous avez besoin d'un plugin** : voir [Décider si vous avez besoin d'un plugin](/docs/fr/plugins/overview#decide-whether-you-need-a-plugin) dans l'aperçu

18 * **Les utilisateurs de votre plugin sont sur claude.ai ou dans Cowork** : le même dossier s'installe là avec un sous-ensemble différent de composants. Voir [Plugins sur claude.ai et dans Cowork](https://claude.com/docs/plugins/overview)18 * **Les utilisateurs de votre plugin sont sur claude.ai ou dans Cowork** : le même dossier s'installe là avec un sous-ensemble différent de composants. Voir [Structure des plugins et test](https://claude.com/docs/plugins/build) et le [tableau de support des composants](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app)

19</Note>19</Note>

20 20 

21Commencez par la section qui correspond à ce que vous avez déjà :21Commencez par la section qui correspond à ce que vous avez déjà :


132 132 

133Le plugin ne se charge que dans les sessions que vous démarrez avec `--plugin-dir`. Pour continuer à travailler dessus sans le drapeau, ou pour tester une version `.zip`, voir [Développer sans marketplace](#develop-without-a-marketplace).133Le plugin ne se charge que dans les sessions que vous démarrez avec `--plugin-dir`. Pour continuer à travailler dessus sans le drapeau, ou pour tester une version `.zip`, voir [Développer sans marketplace](#develop-without-a-marketplace).

134 134 

135Pour que Claude crée un échafaudage et vérifie un plugin plus volumineux avec vous, [installez](/docs/fr/plugins/install#install-a-plugin) le plugin `plugin-dev` d'Anthropic à partir de la marketplace `claude-plugins-official`, qui ajoute des skills et des agents pour écrire des composants tels que des skills, des hooks et des serveurs MCP et pour valider le plugin terminé. Une fois qu'il est installé, exécutez `/plugin-dev:create-plugin` suivi d'une description du plugin que vous voulez, et Claude vous guide à travers la conception, la création et la validation.

136 

135<h3 id="share-the-plugin">137<h3 id="share-the-plugin">

136 Partager votre plugin138 Partager votre plugin

137</h3>139</h3>


140 142 

141* **L'envoyer à quelques personnes directement** : donnez-leur le répertoire du plugin ou un `.zip` de celui-ci, et rien n'a besoin d'être publié. Voir [Partager un plugin sans marketplace](/docs/fr/plugins/publish#share-a-plugin-without-a-marketplace).143* **L'envoyer à quelques personnes directement** : donnez-leur le répertoire du plugin ou un `.zip` de celui-ci, et rien n'a besoin d'être publié. Voir [Partager un plugin sans marketplace](/docs/fr/plugins/publish#share-a-plugin-without-a-marketplace).

142* **Le lister dans votre propre marketplace** : les coéquipiers ajoutent votre marketplace une fois et installent le plugin par nom, et ils reçoivent vos mises à jour. Voir [Publier via votre propre marketplace](/docs/fr/plugins/publish#publish-through-your-own-marketplace).144* **Le lister dans votre propre marketplace** : les coéquipiers ajoutent votre marketplace une fois et installent le plugin par nom, et ils reçoivent vos mises à jour. Voir [Publier via votre propre marketplace](/docs/fr/plugins/publish#publish-through-your-own-marketplace).

143* **Le soumettre à la marketplace communautaire d'Anthropic** : une fois qu'il est listé, quiconque ajoute cette marketplace peut l'installer. Voir [Soumettre à la marketplace communautaire](/docs/fr/plugins/publish#submit-to-the-community-marketplace).145* **Le soumettre au répertoire d'Anthropic** : après qu'il passe l'examen, les gens peuvent l'ajouter sur claude.ai et dans Cowork, et il atteint Claude Code via leur compte. Voir [Soumettre au répertoire d'Anthropic](/docs/fr/plugins/publish#submit-to-anthropics-directory).

144 146 

145<h3 id="plugin-layout">147<h3 id="plugin-layout">

146 Disposition du plugin148 Disposition du plugin


201 203 

202Si le dossier n'a pas de répertoire `.claude-plugin/` et pas de composants de plugin au niveau supérieur, Claude Code le traite comme un dossier de plugins. Chaque sous-dossier immédiat qui a un manifeste `.claude-plugin/plugin.json` se charge alors comme un plugin séparé. Tout le reste dans le dossier est ignoré sans erreur, y compris un sous-dossier qui n'a pas de manifeste. Si un plugin dans le dossier ne se charge pas, vérifiez que son sous-dossier a un `.claude-plugin/plugin.json`.204Si le dossier n'a pas de répertoire `.claude-plugin/` et pas de composants de plugin au niveau supérieur, Claude Code le traite comme un dossier de plugins. Chaque sous-dossier immédiat qui a un manifeste `.claude-plugin/plugin.json` se charge alors comme un plugin séparé. Tout le reste dans le dossier est ignoré sans erreur, y compris un sous-dossier qui n'a pas de manifeste. Si un plugin dans le dossier ne se charge pas, vérifiez que son sous-dossier a un `.claude-plugin/plugin.json`.

203 205 

206Vous pouvez également passer un dossier qui conserve un `.claude-plugin/marketplace.json` à côté de ses dossiers de plugins. Tant que ce répertoire `.claude-plugin/` ne contient pas de `plugin.json`, les dossiers de plugins se chargent toujours. Rien n'est installé ou activé à partir du fichier marketplace, car Claude Code ne le lit pas. Charger des plugins à partir d'un tel dossier nécessite Claude Code v2.1.281 ou ultérieur.

207 

204Dans une session interactive, vous pouvez également ajouter et supprimer des plugins dans le dossier après le démarrage :208Dans une session interactive, vous pouvez également ajouter et supprimer des plugins dans le dossier après le démarrage :

205 209 

206* Un sous-dossier que vous ajoutez se charge comme un nouveau plugin une fois que son manifeste existe.210* Un sous-dossier que vous ajoutez se charge comme un nouveau plugin une fois que son manifeste existe.


418* [Composants de plugin](/docs/fr/plugins/components) : ajoutez des agents, des hooks, des serveurs MCP, des serveurs LSP et une configuration utilisateur à votre plugin422* [Composants de plugin](/docs/fr/plugins/components) : ajoutez des agents, des hooks, des serveurs MCP, des serveurs LSP et une configuration utilisateur à votre plugin

419* [Tester les plugins avec des evals](/docs/fr/plugin-evals) : écrivez des cas d'eval et exécutez-les avec `claude plugin eval` pour vérifier la fiabilité avec laquelle le plugin guide le comportement de Claude423* [Tester les plugins avec des evals](/docs/fr/plugin-evals) : écrivez des cas d'eval et exécutez-les avec `claude plugin eval` pour vérifier la fiabilité avec laquelle le plugin guide le comportement de Claude

420* [Publier un plugin](/docs/fr/plugins/publish) : versionnez-le, mettez-le dans une marketplace et soumettez-le à la marketplace communautaire424* [Publier un plugin](/docs/fr/plugins/publish) : versionnez-le, mettez-le dans une marketplace et soumettez-le à la marketplace communautaire

421* [Plugins sur claude.ai et dans Cowork](https://claude.com/docs/plugins/overview) : le même dossier de plugin s'installe sur claude.ai et dans Cowork. Certains composants sont uniquement Claude Code425* [Structure du plugin et tests](https://claude.com/docs/plugins/build) : le même dossier de plugin s'installe sur claude.ai et dans Cowork. Certains composants sont uniquement Claude Code, et le [tableau de support des composants](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app) liste ceux qui se chargent sur chaque surface

422* [Référence du manifeste de plugin](/docs/fr/plugins/manifest-reference) : chaque champ `plugin.json`, règle de chemin et répertoire426* [Référence du manifeste de plugin](/docs/fr/plugins/manifest-reference) : chaque champ `plugin.json`, règle de chemin et répertoire

423* [Skills](/docs/fr/skills) : écrivez les skills que votre plugin fournit427* [Skills](/docs/fr/skills) : écrivez les skills que votre plugin fournit

424* [Plugins d'Anthropic dans le référentiel claude-code](https://github.com/anthropics/claude-code/tree/main/plugins) : des exemples complets de la disposition sur cette page, tels que `feature-dev` et `code-review`428* [Plugins d'Anthropic dans le référentiel claude-code](https://github.com/anthropics/claude-code/tree/main/plugins) : des exemples complets de la disposition sur cette page, tels que `feature-dev` et `code-review`

Details

89La synchronisation de l'organisation est plus stricte sur le référentiel que `/plugin marketplace add` ne l'est :89La synchronisation de l'organisation est plus stricte sur le référentiel que `/plugin marketplace add` ne l'est :

90 90 

91* **Référentiel de marketplace** : sur github.com et gitlab.com, il doit être privé ou interne91* **Référentiel de marketplace** : sur github.com et gitlab.com, il doit être privé ou interne

92* **Sources de plugin** : chaque source de plugin doit être de type `github`, `url`, ou `git-subdir`, ou un [chemin relatif](/docs/fr/plugins/marketplace-reference#relative-path-plugin-source) qui commence par `./`92* **Sources de plugin** : la synchronisation de l'organisation accepte uniquement certains [types de sources](/docs/fr/plugins/marketplace-reference#plugin-sources)

93* **Répertoire `bin/` de niveau supérieur** : claude.ai rejette un plugin qui en a un et synchronise le reste de la marketplace. Le message d'erreur commence par `Plugin contains a top-level bin/ directory`. Gardez les exécutables dans un autre répertoire, comme `scripts/`, et référencez-les comme `${CLAUDE_PLUGIN_ROOT}/scripts/<name>` depuis vos hooks ou configurations de serveur MCP93* **Répertoire `bin/` de niveau supérieur** : claude.ai rejette un plugin qui en a un et synchronise le reste de la marketplace. Le message d'erreur commence par `Plugin contains a top-level bin/ directory`. Gardez les exécutables dans un autre répertoire, comme `scripts/`, et référencez-les comme `${CLAUDE_PLUGIN_ROOT}/scripts/<name>` depuis vos hooks ou configurations de serveur MCP

94 94 

95Voir [Gérer les plugins pour votre organisation](https://support.claude.com/en/articles/13837433) pour le flux de travail administrateur.95[Synchroniser les plugins de votre organisation à partir d'un référentiel](https://claude.com/docs/plugins/org-sync) sur claude.com répertorie les sources acceptées, la configuration GitLab et l'erreur `bin/`, et [Gérer les plugins pour votre organisation](https://claude.com/docs/plugins/admin) couvre le flux de travail administrateur.

96 96 

97<h2 id="grant-access-to-a-private-marketplace">97<h2 id="grant-access-to-a-private-marketplace">

98 Accorder l'accès à une marketplace privée98 Accorder l'accès à une marketplace privée


113 113 

114Pour un hôte GitHub Enterprise Server, les utilisateurs ont besoin d'accès git à cet hôte depuis leur machine. Voir [Plugin marketplaces on GHES](/docs/fr/github-enterprise-server#plugin-marketplaces-on-ghes) pour ce que chaque surface Claude Code a besoin d'atteindre une marketplace hébergée sur GHES.114Pour un hôte GitHub Enterprise Server, les utilisateurs ont besoin d'accès git à cet hôte depuis leur machine. Voir [Plugin marketplaces on GHES](/docs/fr/github-enterprise-server#plugin-marketplaces-on-ghes) pour ce que chaque surface Claude Code a besoin d'atteindre une marketplace hébergée sur GHES.

115 115 

116Si vous distribuez via **Paramètres de l'organisation > Plugins & skills** sur claude.ai à la place, les identifiants git de vos utilisateurs ne sont pas impliqués. Voir [Distribuer via les paramètres de l'organisation](#distribute-through-organization-settings) pour quelles sources de plugin peuvent être privées là.116Si vous distribuez via **Paramètres de l'organisation > Plugins & skills** sur claude.ai à la place, les identifiants git de vos utilisateurs ne sont pas impliqués. Voir [Distribuer via les paramètres de l'organisation](#distribute-through-organization-settings).

117 117 

118<h3 id="serve-users-who-have-no-git-host-account">118<h3 id="serve-users-who-have-no-git-host-account">

119 Servir les utilisateurs qui n'ont pas de compte sur l'hôte git119 Servir les utilisateurs qui n'ont pas de compte sur l'hôte git

Details

143La portée d'installation d'un plugin détermine qui obtient le plugin et quel fichier de paramètres l'enregistre comme activé :143La portée d'installation d'un plugin détermine qui obtient le plugin et quel fichier de paramètres l'enregistre comme activé :

144 144 

145* **User scope** : le plugin est activé pour vous dans chaque projet sur cette machine. L'entrée va dans `enabledPlugins` dans `~/.claude/settings.json`.145* **User scope** : le plugin est activé pour vous dans chaque projet sur cette machine. L'entrée va dans `enabledPlugins` dans `~/.claude/settings.json`.

146* **Project scope** : le plugin est activé pour tous ceux qui travaillent dans ce référentiel. L'entrée va dans `.claude/settings.json`, que vous validez.146* **Project scope** : le plugin est activé pour tous ceux qui travaillent dans ce référentiel. L'entrée va dans `.claude/settings.json`, que vous validez. La validation de cette entrée active le plugin pour vos collaborateurs mais ne le télécharge pas sur leurs machines, donc chaque collaborateur exécute également `claude plugin install <name>@<marketplace> --scope project` une fois ; consultez [Enabled in project settings but not installed](/docs/fr/plugins/loading#enabled-in-project-settings-but-not-installed).

147* **Local scope** : le plugin est activé pour vous dans ce référentiel uniquement. L'entrée va dans `.claude/settings.local.json`.147* **Local scope** : le plugin est activé pour vous dans ce référentiel uniquement. L'entrée va dans `.claude/settings.local.json`.

148 148 

149Certains plugins sont définis par leur auteur pour démarrer désactivés, via le champ [`defaultEnabled`](/docs/fr/plugins/manifest-reference#defaultenabled). Un tel plugin est installé mais reste désactivé jusqu'à ce que vous l'activiez avec `claude plugin enable <name>` dans votre shell, ou à partir de l'onglet **Installed** de `/plugin` dans une session.149Certains plugins sont définis par leur auteur pour démarrer désactivés, via le champ [`defaultEnabled`](/docs/fr/plugins/manifest-reference#defaultenabled). Un tel plugin est installé mais reste désactivé jusqu'à ce que vous l'activiez avec `claude plugin enable <name>` dans votre shell, ou à partir de l'onglet **Installed** de `/plugin` dans une session.

Details

100 100 

101Dans les sessions de terminal, les compétences, agents, hooks, serveurs MCP et serveurs LSP d'un plugin synchronisé se chargent tous, avec la même confiance qu'un plugin de marché que vous avez installé.101Dans les sessions de terminal, les compétences, agents, hooks, serveurs MCP et serveurs LSP d'un plugin synchronisé se chargent tous, avec la même confiance qu'un plugin de marché que vous avez installé.

102 102 

103Pour les composants que Cowork charge, voir [Plugins sur claude.ai et dans Cowork](https://claude.com/docs/plugins/overview) sur claude.com.103Pour les composants que Cowork charge, voir le [tableau de comparaison du support des composants](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app) sur claude.com.

104 104 

105Les plugins synchronisés se chargent dans les sessions Cowork et dans les sessions de terminal où vous vous connectez avec votre compte claude.ai :105Les plugins synchronisés se chargent dans les sessions Cowork et dans les sessions de terminal où vous vous connectez avec votre compte claude.ai :

106 106 


184| Chemin | Ce qu'il contient |184| Chemin | Ce qu'il contient |

185| :- | :- |185| :- | :- |

186| `cache/<marketplace>/<plugin>/<version>/` | Un répertoire par version installée d'un plugin de marché. `<plugin>` est le nom d'entrée du marché et `<version>` est la [version résolue](#versions-and-updates). `${CLAUDE_PLUGIN_ROOT}` pointe vers ce répertoire |186| `cache/<marketplace>/<plugin>/<version>/` | Un répertoire par version installée d'un plugin de marché. `<plugin>` est le nom d'entrée du marché et `<version>` est la [version résolue](#versions-and-updates). `${CLAUDE_PLUGIN_ROOT}` pointe vers ce répertoire |

187| `data/<plugin-id>/` | Le répertoire persistant du plugin, exposé comme `${CLAUDE_PLUGIN_DATA}`. Pour savoir comment `<plugin-id>` est formé, voir [Variables de chemin et données persistantes](/docs/fr/plugins/components#path-variables-and-persistent-data). Claude Code le crée quand un composant de plugin l'utilise d'abord et le garde à travers les mises à jour. Claude Code le supprime quand vous désinstallez le plugin de sa dernière portée, sauf si vous passez `--keep-data` |187| `data/<plugin-id>/` | Le répertoire persistant du plugin, exposé comme `${CLAUDE_PLUGIN_DATA}`. Pour savoir comment `<plugin-id>` est formé, voir [Variables de chemin et données persistantes](/docs/fr/plugins/components#path-variables-and-persistent-data). Claude Code le crée quand un composant de plugin l'utilise d'abord et le garde à travers les mises à jour. Par défaut, Claude Code le supprime quand vous désinstallez le plugin de sa dernière portée. Pour `--keep-data` et les autres cas où il reste, voir [plugin uninstall](/docs/fr/plugins/cli-reference#plugin-uninstall) |

188| `marketplaces/<name>/` | Le clone ou le téléchargement d'un marché ajouté à partir de GitHub, d'un autre hôte Git, ou d'une URL. Un marché ajouté à partir d'une source `file` ou `directory` locale n'a pas de copie ici, et son `installLocation` dans `known_marketplaces.json` est le chemin que vous avez donné |188| `marketplaces/<name>/` | Le clone ou le téléchargement d'un marché ajouté à partir de GitHub, d'un autre hôte Git, ou d'une URL. Un marché ajouté à partir d'une source `file` ou `directory` locale n'a pas de copie ici, et son `installLocation` dans `known_marketplaces.json` est le chemin que vous avez donné |

189| `synced/` | Les plugins que Claude Code a [synchronisés à partir de votre compte claude.ai](#synced-plugins) |189| `synced/` | Les plugins que Claude Code a [synchronisés à partir de votre compte claude.ai](#synced-plugins) |

190| `.trash/` | Les plugins que la synchronisation claude.ai a supprimés, comme après que vous en ayez désactivé un sur claude.ai ou arrêté la synchronisation |190| `.trash/` | Les plugins que la synchronisation claude.ai a supprimés, comme après que vous en ayez désactivé un sur claude.ai ou arrêté la synchronisation |

Details

116* **`Validation passed with warnings`** : le manifeste se charge, mais le validateur a trouvé quelque chose à corriger, comme un champ de niveau supérieur inconnu que Claude Code supprime, un `name` qui n'est pas en kebab-case, ou un `version`, `description`, ou `author` manquant. Passez `--strict` pour transformer les avertissements en échecs dans CI116* **`Validation passed with warnings`** : le manifeste se charge, mais le validateur a trouvé quelque chose à corriger, comme un champ de niveau supérieur inconnu que Claude Code supprime, un `name` qui n'est pas en kebab-case, ou un `version`, `description`, ou `author` manquant. Passez `--strict` pour transformer les avertissements en échecs dans CI

117* **`Validation failed`** : le manifeste a une incompatibilité de type, un chemin qui est manquant ou s'échappe de la racine du plugin, ou une clé inconnue à l'intérieur d'une option `userConfig`, d'une entrée `channels`, d'une config `lspServers`, ou d'une entrée `monitors`. Claude Code signale le même problème lorsqu'il charge le plugin117* **`Validation failed`** : le manifeste a une incompatibilité de type, un chemin qui est manquant ou s'échappe de la racine du plugin, ou une clé inconnue à l'intérieur d'une option `userConfig`, d'une entrée `channels`, d'une config `lspServers`, ou d'une entrée `monitors`. Claude Code signale le même problème lorsqu'il charge le plugin

118 118 

119La commande vérifie également chaque entrée de serveur MCP que le plugin déclare dans `.mcp.json`, dans un fichier `.json` que [`mcpServers`](#mcpservers) nomme, ou en ligne dans `plugin.json`. Ces vérifications MCP nécessitent Claude Code v2.1.281 ou ultérieur et incluent :

120 

121* **Erreurs** : une entrée que Claude Code supprimerait lors du chargement du plugin, une référence `${user_config.KEY}` à une option que le manifeste ne déclare pas, et une `url` distante qui n'est pas une URL absolue valide

122* **Avertissements** : une URL `http://` ou `ws://` vers un hôte non-loopback, et une valeur d'en-tête qui ressemble à une identifiant littérale

123 

119<h2 id="fields">124<h2 id="fields">

120 Champs125 Champs

121</h2>126</h2>


387 Confinement et existence392 Confinement et existence

388</h3>393</h3>

389 394 

390Chaque chemin de composant doit se résoudre à l'intérieur de la racine du plugin et doit exister. `claude plugin validate` ne vérifie pas les chemins `outputStyles`, `lspServers`, `monitors`, ou `themes`, donc un mauvais chemin dans ces champs échoue uniquement lorsque le plugin se charge :395Chaque chemin de composant doit se résoudre à l'intérieur de la racine du plugin et doit exister. `claude plugin validate` vérifie les chemins sous chaque clé de composant :

391 396 

392* **Confinement** : un chemin qui se résout en dehors de la racine du plugin ne se charge pas, et l'onglet **Errors** `/plugin` affiche `<component> path escapes plugin directory: <path>`. Un chemin contenant `..` est le cas habituel, et `claude plugin validate` le signale comme `Path contains ".." which could be a path traversal attempt`397* **Confinement** : un chemin qui se résout en dehors de la racine du plugin ne se charge pas, et l'onglet **Errors** `/plugin` affiche `<component> path escapes plugin directory: <path>`. Un chemin contenant `..` est le cas habituel, et `claude plugin validate` signale l'erreur `Path contains ".." which could be a path traversal attempt`

393* **Existence** : un chemin qui n'existe pas ne se charge pas, et l'onglet **Errors** `/plugin` affiche `<component> path not found: <path>`. `claude plugin validate` le signale comme `Path not found`398* **Existence** : un chemin qui n'existe pas ne se charge pas, et l'onglet **Errors** `/plugin` affiche `<component> path not found: <path>`. `claude plugin validate` signale l'erreur `Path not found`

399 

400Pour les chemins `outputStyles`, `lspServers`, `monitors`, et `themes`, la vérification `claude plugin validate` nécessite Claude Code v2.1.283 ou ultérieur.

394 401 

395<h3 id="how-each-key-combines-with-its-default-location">402<h3 id="how-each-key-combines-with-its-default-location">

396 Comment chaque clé se combine avec son emplacement par défaut403 Comment chaque clé se combine avec son emplacement par défaut


561 568 

562`${CLAUDE_PLUGIN_ROOT}` change lorsque le plugin se met à jour, donc n'écrivez pas d'état là. Pour où la racine se déplace et quand l'ancien répertoire est nettoyé, voir la [page de chargement](/docs/fr/plugins/loading).569`${CLAUDE_PLUGIN_ROOT}` change lorsque le plugin se met à jour, donc n'écrivez pas d'état là. Pour où la racine se déplace et quand l'ancien répertoire est nettoyé, voir la [page de chargement](/docs/fr/plugins/loading).

563 570 

564Lorsque vous désinstallez le plugin du dernier endroit où il est installé, le répertoire `${CLAUDE_PLUGIN_DATA}` est supprimé sauf si vous passez [`--keep-data`](/docs/fr/plugins/cli-reference).571Par défaut, Claude Code supprime le répertoire `${CLAUDE_PLUGIN_DATA}` lorsque vous désinstallez le plugin du dernier endroit où il est installé. Pour `--keep-data` et les autres cas où il reste, voir [plugin uninstall](/docs/fr/plugins/cli-reference#plugin-uninstall).

565 572 

566<h3 id="where-each-variable-resolves">573<h3 id="where-each-variable-resolves">

567 Où chaque variable se résout574 Où chaque variable se résout


589* **Commandes hook** : utilisez [exec form](/docs/fr/hooks#exec-form-and-shell-form) avec `args` afin que chaque chemin soit un argument sans guillemets596* **Commandes hook** : utilisez [exec form](/docs/fr/hooks#exec-form-and-shell-form) avec `args` afin que chaque chemin soit un argument sans guillemets

590* **Hooks de forme shell et commandes monitor** : enveloppez la variable entre guillemets doubles afin qu'un chemin avec des espaces reste un mot597* **Hooks de forme shell et commandes monitor** : enveloppez la variable entre guillemets doubles afin qu'un chemin avec des espaces reste un mot

591 598 

599Si vous laissez l'une de ces variables en dehors des guillemets dans une commande de forme shell dans un fichier hooks, `claude plugin validate` vous avertit à ce sujet sauf si le hook définit [`shell`](/docs/fr/hooks#command-hook-fields) sur `"powershell"`.

600 

592Ce hook de forme shell exécute un script regroupé avec le plugin :601Ce hook de forme shell exécute un script regroupé avec le plugin :

593 602 

594```json theme={null}603```json theme={null}


629| Workflows | `workflows/` | Fichiers Workflow `.js` |638| Workflows | `workflows/` | Fichiers Workflow `.js` |

630| Thèmes | `themes/` | Fichiers de thème JSON |639| Thèmes | `themes/` | Fichiers de thème JSON |

631| Monitors | `monitors/monitors.json` | Le tableau monitors |640| Monitors | `monitors/monitors.json` | Le tableau monitors |

632| Exécutables | `bin/` | Les fichiers ici sont sur le `PATH` de l'outil Bash tandis que le plugin est activé, donc Claude les exécute comme des commandes nues. claude.ai et Cowork n'installent pas un plugin qui a ce répertoire, y compris un que vous [distribuez via les paramètres d'organisation claude.ai](/docs/fr/plugins/host-marketplace#distribute-through-organization-settings) |641| Exécutables | `bin/` | Les fichiers ici sont sur le `PATH` de l'outil Bash tandis que le plugin est activé, donc Claude les exécute comme des commandes nues. claude.ai et Cowork n'installent pas un plugin qui a ce répertoire, y compris un que vous [distribuez via les paramètres d'organisation claude.ai](https://claude.com/docs/plugins/org-sync#keep-executables-out-of-the-top-level-bin-directory) |

633| Paramètres | `settings.json` | Valeurs par défaut `agent` et `subagentStatusLine` appliquées tandis que le plugin est activé |642| Paramètres | `settings.json` | Valeurs par défaut `agent` et `subagentStatusLine` appliquées tandis que le plugin est activé |

634 643 

635Un plugin qui utilise chaque emplacement par défaut, plus un dossier `scripts/` que ses hooks appellent, est disposé comme ceci :644Un plugin qui utilise chaque emplacement par défaut, plus un dossier `scripts/` que ses hooks appellent, est disposé comme ceci :

Details

47* **Noms de marketplace officiels** : `claude-code-marketplace`, `claude-code-plugins`, `claude-plugins-official`, `anthropic-marketplace`, `anthropic-plugins`, `agent-skills`, `anthropic-agent-skills`, `life-sciences`, `knowledge-work-plugins`, `claude-for-legal`, `claude-for-financial-services`, `financial-services-plugins`, `first-party-plugins` et `claude-tag-plugins`. Réservés sauf si la marketplace provient d'une [source marketplace](#marketplace-sources) `github` ou `git` sous `github.com/anthropics/`.47* **Noms de marketplace officiels** : `claude-code-marketplace`, `claude-code-plugins`, `claude-plugins-official`, `anthropic-marketplace`, `anthropic-plugins`, `agent-skills`, `anthropic-agent-skills`, `life-sciences`, `knowledge-work-plugins`, `claude-for-legal`, `claude-for-financial-services`, `financial-services-plugins`, `first-party-plugins` et `claude-tag-plugins`. Réservés sauf si la marketplace provient d'une [source marketplace](#marketplace-sources) `github` ou `git` sous `github.com/anthropics/`.

48* **Noms de marketplace communautaire** : `claude-community`, `claude-plugins-community` et `healthcare`. Réservés selon la même règle que les noms officiels.48* **Noms de marketplace communautaire** : `claude-community`, `claude-plugins-community` et `healthcare`. Réservés selon la même règle que les noms officiels.

49* **Noms de répertoire de plugin** : `anthropic-plugin-directory` et `claude-plugin-directory`. Réservés selon la même règle que les noms officiels.49* **Noms de répertoire de plugin** : `anthropic-plugin-directory` et `claude-plugin-directory`. Réservés selon la même règle que les noms officiels.

50* **Noms qui usurpent l'identité d'une marketplace officielle** : des noms tels que `official-claude-plugins` ou `claude-plugins-v2`, et tout nom contenant un caractère non-ASCII. L'erreur est `Marketplace name impersonates an official Anthropic/Claude marketplace`. Un caractère de contrôle ou de formatage bidirectionnel dans un nom signale également `Marketplace name cannot contain control or bidirectional-formatting characters`.50* **Noms qui usurpent l'identité d'une marketplace officielle** : des noms tels que `official-claude-plugins` ou `claude-plugins-v2`, et tout nom contenant un caractère non-ASCII. L'erreur est `Marketplace name impersonates an official Anthropic/Claude marketplace`. Un caractère de contrôle ou de formatage bidirectionnel dans un nom signale également `Marketplace name cannot contain control or bidirectional-formatting characters`. Une marketplace déjà enregistrée sous un tel nom cesse de se charger, ainsi que ses plugins.

51* <span id="reserved-name-spellings" />**Une autre orthographe d'un nom réservé** : un nom qui diffère d'un nom réservé uniquement par un point final, ou par un symbole autre qu'un trait d'union à la place d'un trait d'union, donc `claude.code.plugins` compte comme `claude-code-plugins`. `claude plugin validate` accepte un tel nom ; l'ajout de la marketplace échoue avec [`is another spelling of "<reserved>", a reserved marketplace name`](/docs/fr/errors#marketplace-name-is-another-spelling-of-a-reserved-name), et une marketplace déjà enregistrée sous l'une d'elles cesse de se charger. Cette vérification nécessite Claude Code v2.1.280 ou ultérieure.51* <span id="reserved-name-spellings" />**Une autre orthographe d'un nom réservé** : un nom qui diffère d'un nom réservé uniquement par un point final, ou par un symbole autre qu'un trait d'union à la place d'un trait d'union, donc `claude.code.plugins` compte comme `claude-code-plugins`. `claude plugin validate` accepte un tel nom ; l'ajout de la marketplace échoue avec [`is another spelling of "<reserved>", a reserved marketplace name`](/docs/fr/errors#marketplace-name-is-another-spelling-of-a-reserved-name), et une marketplace déjà enregistrée sous l'une d'elles cesse de se charger. Cette vérification nécessite Claude Code v2.1.280 ou ultérieure.

52* **Noms que Claude Code utilise pour les plugins qui ne proviennent pas d'une marketplace** : `inline` pour les plugins chargés avec [`--plugin-dir`](/docs/fr/cli-reference), `builtin` pour les plugins intégrés, `skills-dir` pour les plugins chargés automatiquement à partir de [`.claude/skills/`](/docs/fr/skills) et `synced` pour les plugins synchronisés à partir de votre compte claude.ai. `claude-plugin-test` est également réservé. `skills-dir` apparaît également comme `{"source": "skills-dir"}` dans `strictKnownMarketplaces` et `blockedMarketplaces`, décrits sous [Valeurs source valides uniquement dans les listes de politique](#source-values-valid-only-in-policy-lists).52* **Noms que Claude Code utilise pour les plugins qui ne proviennent pas d'une marketplace** : `inline` pour les plugins chargés avec [`--plugin-dir`](/docs/fr/cli-reference), `builtin` pour les plugins intégrés, `skills-dir` pour les plugins chargés automatiquement à partir de [`.claude/skills/`](/docs/fr/skills) et `synced` pour les plugins synchronisés à partir de votre compte claude.ai. `claude-plugin-test` est également réservé. `skills-dir` apparaît également comme `{"source": "skills-dir"}` dans `strictKnownMarketplaces` et `blockedMarketplaces`, décrits sous [Valeurs source valides uniquement dans les listes de politique](#source-values-valid-only-in-policy-lists).

53* **`npm`, `pip`, `uv`, `cargo`, `github` et `gh`** : réservés dans n'importe quelle casse. Cette vérification nécessite Claude Code v2.1.275 ou ultérieure.53* **`npm`, `pip`, `uv`, `cargo`, `github` et `gh`** : réservés dans n'importe quelle casse. Cette vérification nécessite Claude Code v2.1.275 ou ultérieure.

54* **Noms commençant par `claudeai-`** : réservés pour les marketplaces hébergées sur claude.ai. `claude plugin marketplace add` refuse toute autre marketplace qui en utilise un avec `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai`.54* **Noms commençant par `claudeai-`** : réservés pour les marketplaces hébergées sur claude.ai. `claude plugin marketplace add` refuse toute autre marketplace qui en utilise un avec `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai`.

55 55 

56Quand une marketplace enregistrée cesse de se charger parce que son nom imite celui d'une marketplace officielle, `claude plugin list` et `/plugin` signalent `Claude Code refuses the marketplace name "<name>"`. Le message vous indique de supprimer la marketplace. La supprimer désinstalle également ses plugins et supprime leurs données enregistrées. Ce message de refus nommé nécessite Claude Code v2.1.282 ou ultérieure.

57 

56<h2 id="top-level-fields">58<h2 id="top-level-fields">

57 Champs de niveau supérieur59 Champs de niveau supérieur

58</h2>60</h2>

Details

96* **Ce sont des coéquipiers que vous pouvez demander** : le propre Claude Code de chaque utilisateur leur montre s'il utilise toujours le plugin, en quatre endroits : le [panneau `/plugin`](#not-used-recently-in-/plugin), [`/skill-doctor`](#find-skills-that-never-run), [`/doctor`](#unused-plugins-in-/doctor), et [`/usage`](#usage-share-in-/usage). Les quatre sont des commandes que l'utilisateur exécute à l'invite Claude Code dans une session sur sa propre machine.96* **Ce sont des coéquipiers que vous pouvez demander** : le propre Claude Code de chaque utilisateur leur montre s'il utilise toujours le plugin, en quatre endroits : le [panneau `/plugin`](#not-used-recently-in-/plugin), [`/skill-doctor`](#find-skills-that-never-run), [`/doctor`](#unused-plugins-in-/doctor), et [`/usage`](#usage-share-in-/usage). Les quatre sont des commandes que l'utilisateur exécute à l'invite Claude Code dans une session sur sa propre machine.

97* **Aucun des deux** : vous n'avez aucun signal d'utilisation de Claude Code pour ce plugin.97* **Aucun des deux** : vous n'avez aucun signal d'utilisation de Claude Code pour ce plugin.

98 98 

99Pour l'utilisation d'un plugin répertorié dans le répertoire d'Anthropic, voir [Suivre l'utilisation des plugins publiés](https://claude.com/docs/connectors/building/after-publishing#track-published-plugin-usage) sur claude.com.

100 

99<h3 id="not-used-recently-in-/plugin">101<h3 id="not-used-recently-in-/plugin">

100 Non utilisé récemment dans `/plugin`102 Non utilisé récemment dans `/plugin`

101</h3>103</h3>

plugins/org.md +2 −1

Details

14 Ces cas sont couverts sur d'autres pages :14 Ces cas sont couverts sur d'autres pages :

15 15 

16 * **Installation de plugins pour vous-même** : commencez par [Installer des plugins](/docs/fr/plugins/install)16 * **Installation de plugins pour vous-même** : commencez par [Installer des plugins](/docs/fr/plugins/install)

17 * **Contrôler les plugins que les membres peuvent utiliser dans claude.ai et Cowork** : voir [Gérer les plugins pour votre organisation](https://support.claude.com/en/articles/13837433) dans le centre d'aide17 * **Contrôler les plugins que les membres peuvent utiliser dans claude.ai et Cowork** : voir [Gérer les plugins pour votre organisation](https://claude.com/docs/plugins/admin) sur claude.com

18 * **Déployer un plugin sur claude.ai, Cowork et Claude Code ensemble** : voir [Choisir un itinéraire de déploiement](https://claude.com/docs/plugins/org-rollout#choose-a-rollout-route) sur claude.com

18 * **La page des plugins dans les paramètres d'administration de claude.ai** : [**Paramètres de l'organisation > Plugins et compétences**](https://claude.ai/admin-settings/skills?tab=inventory) active les plugins pour les comptes claude.ai des membres, et ceux-ci atteignent Claude Code sous forme de [plugins synchronisés](/docs/fr/plugins/loading#synced-plugins). Il ne définit aucune des clés de cette page19 * **La page des plugins dans les paramètres d'administration de claude.ai** : [**Paramètres de l'organisation > Plugins et compétences**](https://claude.ai/admin-settings/skills?tab=inventory) active les plugins pour les comptes claude.ai des membres, et ceux-ci atteignent Claude Code sous forme de [plugins synchronisés](/docs/fr/plugins/loading#synced-plugins). Il ne définit aucune des clés de cette page

19</Note>20</Note>

20 21 

Details

9Un plugin Claude Code est un répertoire de skills, d'agents, de hooks, de serveurs MCP ou d'autres composants que Claude Code installe et charge comme une seule unité. La plupart des plugins proviennent d'une marketplace, qui est un catalogue listant les plugins et indiquant où récupérer chacun. Vous pouvez également charger un plugin à partir d'un dossier que quelqu'un vous donne, ou [créer le vôtre](/docs/fr/plugins/create).9Un plugin Claude Code est un répertoire de skills, d'agents, de hooks, de serveurs MCP ou d'autres composants que Claude Code installe et charge comme une seule unité. La plupart des plugins proviennent d'une marketplace, qui est un catalogue listant les plugins et indiquant où récupérer chacun. Vous pouvez également charger un plugin à partir d'un dossier que quelqu'un vous donne, ou [créer le vôtre](/docs/fr/plugins/create).

10 10 

11<Note>11<Note>

12 Si vous utilisez le chat claude.ai ou Cowork et non Claude Code, consultez [Plugins sur claude.ai et dans Cowork](https://claude.com/docs/plugins/overview).12 Commencez plutôt sur claude.com si l'une de ces descriptions vous correspond :

13 

14 * **Vous utilisez le chat claude.ai ou Cowork et non Claude Code** : consultez [Plugins sur claude.ai et dans Cowork](https://claude.com/docs/plugins/overview)

15 * **Vous avez créé un serveur MCP et vous voulez le mettre dans le répertoire d'Anthropic** : consultez [Publier dans le répertoire](https://claude.com/docs/directory/publish)

13</Note>16</Note>

14 17 

15Pour essayer un plugin maintenant, exécutez `/plugin` dans une session de terminal Claude Code et installez-en un à partir de l'onglet **Discover**, qui liste les plugins de la marketplace officielle d'Anthropic et de toute marketplace que vous avez ajoutée. À partir de là :18Pour essayer un plugin maintenant, exécutez `/plugin` dans une session de terminal Claude Code et installez-en un à partir de l'onglet **Discover**, qui liste les plugins de la marketplace officielle d'Anthropic et de toute marketplace que vous avez ajoutée. À partir de là :


122Une session cloud, y compris une dans le navigateur à claude.ai/code, ne charge pas les plugins dans vos paramètres locaux. Pour les étapes d'installation dans le terminal, VS Code et l'application de bureau, et pour ce qu'une session cloud charge, consultez [Installer un plugin](/docs/fr/plugins/install#install-a-plugin).125Une session cloud, y compris une dans le navigateur à claude.ai/code, ne charge pas les plugins dans vos paramètres locaux. Pour les étapes d'installation dans le terminal, VS Code et l'application de bureau, et pour ce qu'une session cloud charge, consultez [Installer un plugin](/docs/fr/plugins/install#install-a-plugin).

123 126 

124<Note>127<Note>

125 Le même format de plugin s'installe également sur claude.ai et dans Cowork, où un ensemble différent de composants se charge. Pour ces surfaces, consultez [Plugins sur claude.ai et dans Cowork](https://claude.com/docs/plugins/overview) sur claude.com.128 Le même format de plugin s'installe également sur claude.ai et dans Cowork, où un ensemble différent de composants se charge. Pour ces surfaces, consultez [Plugins sur claude.ai et dans Cowork](https://claude.com/docs/plugins/overview) sur claude.com et son [tableau de support des composants](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app).

126</Note>129</Note>

127 130 

128<h2 id="next-steps">131<h2 id="next-steps">


135 138 

136Une fois que vous avez installé ou créé un plugin, ces pages couvrent ce qui vient ensuite :139Une fois que vous avez installé ou créé un plugin, ces pages couvrent ce qui vient ensuite :

137 140 

138* **Partager ce que vous avez créé** : [Publier et distribuer un plugin](/docs/fr/plugins/publish)141* **Partager ce que vous avez créé** : [Publier et distribuer un plugin](/docs/fr/plugins/publish), via votre propre marketplace ou [le répertoire d'Anthropic](/docs/fr/plugins/publish#submit-to-anthropics-directory)

139* **Vérifier si cela fonctionne et est utilisé** : [Tester les plugins avec des evals](/docs/fr/plugin-evals) et [Mesurer le coût et l'utilisation des plugins](/docs/fr/plugins/measure)142* **Vérifier si cela fonctionne et est utilisé** : [Tester les plugins avec des evals](/docs/fr/plugin-evals) et [Mesurer le coût et l'utilisation des plugins](/docs/fr/plugins/measure)

140* **Exécuter une marketplace pour votre équipe** : [Créer une marketplace](/docs/fr/plugins/create-marketplace), puis [Héberger et maintenir une marketplace](/docs/fr/plugins/host-marketplace)143* **Exécuter une marketplace pour votre équipe** : [Créer une marketplace](/docs/fr/plugins/create-marketplace), puis [Héberger et maintenir une marketplace](/docs/fr/plugins/host-marketplace)

141* **Définir la politique des plugins pour une organisation** : [Gérer les plugins pour votre organisation](/docs/fr/plugins/org)144* **Définir la politique des plugins pour une organisation** : [Gérer les plugins pour votre organisation](/docs/fr/plugins/org)

plugins/publish.md +21 −18

Details

4 4 

5# Publier et distribuer un plugin5# Publier et distribuer un plugin

6 6 

7> Publiez un plugin Claude Code via votre propre marketplace ou la marketplace communautaire d'Anthropic, avec une checklist de pré-lancement et comment les utilisateurs reçoivent les mises à jour.7> Publiez un plugin Claude Code via votre propre marketplace ou le répertoire d'Anthropic, avec une checklist de pré-lancement et comment les utilisateurs reçoivent les mises à jour.

8 8 

9Publier un plugin Claude Code signifie le lister dans une marketplace, un catalogue JSON qui répertorie les plugins et où récupérer chacun d'eux, afin que d'autres personnes puissent l'installer par nom et recevoir vos mises à jour. Vous pouvez gérer votre propre marketplace ou soumettre votre plugin à la marketplace communautaire d'Anthropic. Pour partager un plugin sans le publier, envoyez aux gens le répertoire du plugin ou un `.zip` de celui-ci à charger eux-mêmes.9Publier un plugin Claude Code signifie le lister dans une marketplace, un catalogue JSON qui répertorie les plugins et où récupérer chacun d'eux, afin que d'autres personnes puissent l'installer par nom et recevoir vos mises à jour. Vous pouvez gérer votre propre marketplace ou soumettre votre plugin au répertoire d'Anthropic. Pour partager un plugin sans le publier, envoyez aux gens le répertoire du plugin ou un `.zip` de celui-ci à charger eux-mêmes.

10 10 

11Cette page s'adresse à l'auteur d'un plugin fonctionnel qui est prêt à le partager.11Cette page s'adresse à l'auteur d'un plugin fonctionnel qui est prêt à le partager.

12 12 


29| :- | :- | :- | :- |29| :- | :- | :- | :- |

30| [Pas de marketplace](#share-a-plugin-without-a-marketplace) | Les personnes à qui vous envoyez le dossier du plugin ou un `.zip` de celui-ci | Le dossier du plugin | Aucune. Ils chargent la copie que vous avez envoyée |30| [Pas de marketplace](#share-a-plugin-without-a-marketplace) | Les personnes à qui vous envoyez le dossier du plugin ou un `.zip` de celui-ci | Le dossier du plugin | Aucune. Ils chargent la copie que vous avez envoyée |

31| [Votre propre marketplace](#publish-through-your-own-marketplace) | Quiconque peut accéder au référentiel, qui peut être un référentiel privé que votre équipe peut cloner | Un référentiel git ou un autre hôte avec un `.claude-plugin/marketplace.json` qui répertorie votre plugin | Désactivé |31| [Votre propre marketplace](#publish-through-your-own-marketplace) | Quiconque peut accéder au référentiel, qui peut être un référentiel privé que votre équipe peut cloner | Un référentiel git ou un autre hôte avec un `.claude-plugin/marketplace.json` qui répertorie votre plugin | Désactivé |

32| [Marketplace communautaire d'Anthropic](#submit-to-the-community-marketplace) | Quiconque ajoute `anthropics/claude-plugins-community` | Une soumission via le formulaire de soumission du répertoire de plugins | Désactivé |32| [Répertoire d'Anthropic](#submit-to-anthropics-directory) | Les personnes qui l'ajoutent sur claude.ai ou dans Cowork. Il se charge également dans leurs sessions Claude Code via la [synchronisation de compte](/docs/fr/plugins/loading#synced-plugins) | Un référentiel GitHub contenant le plugin et un plan claude.ai payant pour soumettre | Oui, après la version que vous poussez est publiée |

33 33 

34La mise à jour automatique est un paramètre par marketplace du côté de l'utilisateur qui récupère les nouvelles versions en arrière-plan.34La mise à jour automatique est un paramètre par marketplace du côté de l'utilisateur qui récupère les nouvelles versions en arrière-plan.

35 35 


141 141 

142[Installer les plugins](/docs/fr/plugins/install) couvre les commandes du côté utilisateur, et [quand la mise à jour automatique s'exécute](/docs/fr/plugins/loading#when-auto-update-runs) couvre le timing.142[Installer les plugins](/docs/fr/plugins/install) couvre les commandes du côté utilisateur, et [quand la mise à jour automatique s'exécute](/docs/fr/plugins/loading#when-auto-update-runs) couvre le timing.

143 143 

144<h2 id="submit-to-the-community-marketplace">144<h2 id="submit-to-anthropics-directory">

145 Soumettre à la marketplace communautaire145 Soumettre au répertoire d'Anthropic

146</h2>146</h2>

147 147 

148La marketplace communautaire d'Anthropic, `claude-community`, est la marketplace publique qui répertorie les plugins soumis via le formulaire de soumission du répertoire de plugins.148Le répertoire d'Anthropic est le catalogue que les utilisateurs parcourent sur claude.ai et dans Cowork pour ajouter des plugins et des connecteurs. Un listing là-bas atteint les utilisateurs sur claude.ai, dans Cowork et dans Claude Code. Vous soumettez à partir du portail des développeurs sur [claude.ai/directory/manage](https://claude.ai/directory/manage) ; [Préparer pour l'examen](https://claude.com/docs/directory/publish#prepare-for-review) sur claude.com décrit ce qui se passe pour chaque version avant sa publication.

149 149 

150Les utilisateurs ajoutent la marketplace communautaire dans une session Claude Code avec `/plugin marketplace add anthropics/claude-plugins-community` et installent à partir de celle-ci comme `@claude-community`.150La soumission nécessite un plan claude.ai payant. Sur Pro et Max, vous soumettez à partir de votre propre compte. Sur Team et Enterprise, un propriétaire peut soumettre, et sur Enterprise, un propriétaire peut également accorder la permission **Directory** à d'autres membres via un rôle personnalisé sous **Organization settings > Roles**. Voir [Confirmer que vous pouvez soumettre au répertoire](https://claude.com/docs/directory/publish#confirm-you-can-submit-to-the-directory).

151 151 

152Pour savoir comment la marketplace communautaire diffère de la marketplace officielle, voir [Marketplaces d'Anthropic](/docs/fr/plugins/anthropic-marketplaces).152Les étapes de soumission, les vérifications que chaque version doit réussir et ce qui se passe après la publication sont documentées sur claude.com, car elles sont les mêmes quelle que soit la surface sur laquelle se trouvent vos utilisateurs :

153 153 

154Pour soumettre votre plugin à la marketplace communautaire, utilisez l'un des formulaires intégrés à l'application :154* [Publier dans le répertoire](https://claude.com/docs/directory/publish#before-you-submit-to-the-directory) : ce que vous pouvez soumettre et qui peut le soumettre

155* [Soumettre un plugin](https://claude.com/docs/plugins/submit#submit-a-plugin) : les étapes du portail et [mettre à jour un plugin publié](https://claude.com/docs/plugins/submit#update-a-published-plugin)

156* [Liste de contrôle de pré-soumission du plugin](https://claude.com/docs/plugins/pre-submission-checklist#run-the-checks-before-you-submit) : les vérifications à exécuter et corriger avant de soumettre

157* [Déplacer une soumission antérieure vers le portail des développeurs](https://claude.com/docs/directory/publish#move-an-earlier-submission-to-the-developer-portal) : ce qu'il faut faire si vous avez soumis un plugin via l'un des formulaires de soumission antérieurs, avant que le portail n'existe

155 158 

156* **claude.ai** : [claude.ai/admin-settings/directory/submissions/plugins/new](https://claude.ai/admin-settings/directory/submissions/plugins/new)159Avant d'ouvrir le portail, validez localement et vérifiez lesquels de vos composants se chargent en dehors de Claude Code :

157* **Console** : [platform.claude.com/plugins/submit](https://platform.claude.com/plugins/submit)

158 160 

159Le formulaire claude.ai nécessite une organisation Team ou Enterprise et la permission Directory, que les propriétaires détiennent par défaut. Les auteurs individuels qui ne font pas partie d'une organisation Team ou Enterprise peuvent utiliser le formulaire Console à la place.161* **Exécutez `claude plugin validate ./your-plugin --strict` dans votre shell** : remplacez `./your-plugin` par le chemin vers votre répertoire de plugins. La commande détecte les erreurs de manifeste localement ; [plugin validate](/docs/fr/plugins/cli-reference#plugin-validate) répertorie les fichiers que chaque exécution lit. Le portail applique des règles de répertoire supplémentaires que l'interface de ligne de commande ne vérifie pas, donc une exécution locale propre ne garantit pas une validation de portail propre.

162* **Vérifiez ce qui se charge où** : certains composants de plugin sont exclusifs à Claude Code et ne se chargent pas sur claude.ai ou dans Cowork. Le [tableau de support des composants](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app) répertorie chaque composant par application, afin que vous sachiez ce que les utilisateurs en dehors de Claude Code obtiendront.

160 163 

161Dans votre shell, exécutez `claude plugin validate ./your-plugin` localement avant de soumettre, en remplaçant `./your-plugin` par le chemin vers votre répertoire de plugins. Lorsque la validation réussit, Claude Code affiche `✔ Validation passed`, ou `✔ Validation passed with warnings` s'il y a des avertissements. Les avertissements ne font pas échouer la validation ; ajoutez `--strict` pour les traiter comme des erreurs.164La marketplace officielle d'Anthropic, `claude-plugins-official`, n'accepte pas les soumissions via le portail du répertoire. Si vous travaillez avec un contact partenaire d'Anthropic, demandez-lui un listing de marketplace officielle.

162 165 

163Les plugins listés apparaissent dans le catalogue [`anthropics/claude-plugins-community`](https://github.com/anthropics/claude-plugins-community), dans presque tous les cas épinglés à un SHA de commit spécifique.166<h3 id="how-a-listed-plugin-reaches-claude-code-users">

164 167 Comment un plugin listé atteint les utilisateurs de Claude Code

165Il peut y avoir un délai entre la soumission et l'apparition de votre plugin dans `marketplace.json`. Pour vérifier si votre plugin est installable, recherchez son nom dans le [catalogue communautaire](https://github.com/anthropics/claude-plugins-community/blob/main/.claude-plugin/marketplace.json).168</h3>

166 169 

167La marketplace officielle, `claude-plugins-official`, n'accepte pas les soumissions via ces formulaires. Si vous travaillez avec un contact partenaire d'Anthropic, demandez-lui un listing de marketplace officielle.170Une personne qui installe votre plugin à partir du répertoire sur claude.ai l'a sur son compte, et Claude Code le charge en tant que `<name>@synced`. [Plugins synchronisés à partir de claude.ai](/docs/fr/plugins/loading#synced-plugins) couvre ce qu'ils voient et comment ils le désactivent.

168 171 

169<h2 id="ship-updates-renames-and-removals">172<h2 id="ship-updates-renames-and-removals">

170 Livrer les mises à jour, les renommages et les suppressions173 Livrer les mises à jour, les renommages et les suppressions


174 Sortir une nouvelle version177 Sortir une nouvelle version

175</h3>178</h3>

176 179 

177Si vous publiez via votre propre marketplace et que votre `plugin.json` définit `version`, incrémentez-la et poussez. Les utilisateurs qui exécutent `claude plugin update` ou qui ont la mise à jour automatique activée reçoivent alors la nouvelle version, comme décrit sous [Livrer les mises à jour aux utilisateurs](#ship-updates-to-users).180Si vous publiez via votre propre marketplace et que votre `plugin.json` définit `version`, incrémentez-la et poussez. Les utilisateurs qui exécutent `claude plugin update` ou qui ont la mise à jour automatique activée reçoivent alors la nouvelle version, comme décrit sous [Livrer les mises à jour aux utilisateurs](#ship-updates-to-users). Pour un listing de répertoire, voir [Mettre à jour un plugin publié](https://claude.com/docs/plugins/submit#update-a-published-plugin).

178 181 

179<h3 id="tag-a-release">182<h3 id="tag-a-release">

180 Étiqueter une sortie183 Étiqueter une sortie

Details

118 118 

119Dans votre shell, exécutez [`claude plugin uninstall <plugin>`](/docs/fr/plugins/cli-reference#plugin-uninstall) avec le `--scope` auquel vous l'avez installé. Ensuite, vérifiez ce que la désinstallation a supprimé et ce qu'elle a laissé :119Dans votre shell, exécutez [`claude plugin uninstall <plugin>`](/docs/fr/plugins/cli-reference#plugin-uninstall) avec le `--scope` auquel vous l'avez installé. Ensuite, vérifiez ce que la désinstallation a supprimé et ce qu'elle a laissé :

120 120 

121* **Données persistantes** : quand c'était le dernier scope auquel le plugin était installé, la désinstallation supprime également le répertoire de données persistantes du plugin, sauf si vous passez `--keep-data`.121* **Données persistantes** : par défaut, quand c'était le dernier scope auquel le plugin était installé, la désinstallation supprime également le répertoire de données persistantes du plugin. Pour `--keep-data` et les autres cas où il reste, voir [plugin uninstall](/docs/fr/plugins/cli-reference#plugin-uninstall).

122* **Fichiers en cache** : les fichiers du plugin restent sur le disque sous `~/.claude/plugins/cache/` pendant 14 jours avant qu'un [balayage en arrière-plan les supprime](/docs/fr/plugins/loading#cleanup-of-previous-versions). Après avoir désinstallé votre dernier plugin, les répertoires orphelins restent jusqu'à ce que vous en installiez un autre. Pour supprimer les fichiers maintenant, supprimez vous-même le répertoire du plugin sous `~/.claude/plugins/cache/<marketplace>/<plugin>/`.122* **Fichiers en cache** : les fichiers du plugin restent sur le disque sous `~/.claude/plugins/cache/` pendant 14 jours avant qu'un [balayage en arrière-plan les supprime](/docs/fr/plugins/loading#cleanup-of-previous-versions). Après avoir désinstallé votre dernier plugin, les répertoires orphelins restent jusqu'à ce que vous en installiez un autre. Pour supprimer les fichiers maintenant, supprimez vous-même le répertoire du plugin sous `~/.claude/plugins/cache/<marketplace>/<plugin>/`.

123* **La marketplace** : si vous ne faites pas confiance au propriétaire de la marketplace non plus, [supprimez la marketplace](/docs/fr/plugins/install#manage-marketplaces) aussi, ce qui désinstalle chaque plugin que vous avez installé à partir de celle-ci.123* **La marketplace** : si vous ne faites pas confiance au propriétaire de la marketplace non plus, [supprimez la marketplace](/docs/fr/plugins/install#manage-marketplaces) aussi, ce qui désinstalle chaque plugin que vous avez installé à partir de celle-ci.

124 124 

Details

676 `Failed to load hooks from <path>` et hooks qui ne se déclenchent pas676 `Failed to load hooks from <path>` et hooks qui ne se déclenchent pas

677</h3>677</h3>

678 678 

679Les hooks d'un plugin ne s'exécutent pas. Soit l'onglet **Erreurs** affiche un échec de chargement pour eux, les hooks chargent et vous voyez des avis `<Event> hook error` dans la transcription, soit un hook charge sans erreur et ne se déclenche jamais.679Les hooks d'un plugin ne s'exécutent pas, ou l'un bloque une action. Soit l'onglet **Errors** affiche un échec de chargement pour eux, les hooks chargent et vous voyez des avis `<Event> hook error` ou une erreur de blocage dans la transcription, soit un hook charge sans erreur et ne se déclenche jamais.

680 680 

681<h4 id="hooks-fail-to-load">681<h4 id="hooks-fail-to-load">

682 Les hooks échouent à charger682 Les hooks échouent à charger


693 693 

694Un avis de la forme `... hook error: Failed with non-blocking status code: <stderr>` signifie que le hook s'est exécuté et sa commande a échoué. Par exemple, `Stop hook error: Failed with non-blocking status code: /bin/sh: node: command not found` signifie que le shell que Claude Code a généré n'a pas pu trouver `node`. Installez-le, ou assurez-vous qu'il est sur le `PATH` du terminal à partir duquel vous démarrez `claude`.694Un avis de la forme `... hook error: Failed with non-blocking status code: <stderr>` signifie que le hook s'est exécuté et sa commande a échoué. Par exemple, `Stop hook error: Failed with non-blocking status code: /bin/sh: node: command not found` signifie que le shell que Claude Code a généré n'a pas pu trouver `node`. Installez-le, ou assurez-vous qu'il est sur le `PATH` du terminal à partir duquel vous démarrez `claude`.

695 695 

696Si le stderr affiche le chemin du plugin coupé à un espace, la commande du hook sous forme shell utilise `${CLAUDE_PLUGIN_ROOT}` en dehors des guillemets et le chemin d'installation contient un espace. Enveloppez la variable entre guillemets doubles ou utilisez [la forme exec](/docs/fr/hooks#exec-form-and-shell-form). Pour trouver la variable non citée, exécutez `claude plugin validate` sur le répertoire du plugin et recherchez son [avertissement de citation](/docs/fr/plugins/manifest-reference#quoting-and-path-separators).

697 

696Pour toute autre erreur, exécutez la commande du hook vous-même à partir du répertoire du plugin pour voir la sortie complète, ou capturez le stderr complet avec [journalisation de débogage](/docs/fr/hooks#debug-hooks).698Pour toute autre erreur, exécutez la commande du hook vous-même à partir du répertoire du plugin pour voir la sortie complète, ou capturez le stderr complet avec [journalisation de débogage](/docs/fr/hooks#debug-hooks).

697 699 

700<h4 id="a-plugin-hook-blocks-a-tool-call-or-prompt">

701 Un hook de plugin bloque un appel d'outil ou une invite

702</h4>

703 

704Un hook qui se termine avec le code 2 [bloque l'action pour laquelle il s'est exécuté](/docs/fr/hooks#exit-code-2). Lorsque le hook d'un plugin bloque de cette façon et son stderr est le message de blocage, l'erreur se termine par `This hook comes from the <plugin> plugin.` afin que vous sachiez quel plugin désactiver ou corriger. Avant v2.1.281, l'erreur ne nommait pas le plugin.

705 

706Si ce message affiche le chemin du plugin coupé à un espace, appliquez la [correction `${CLAUDE_PLUGIN_ROOT}` non citée](#hook-error-notices-in-the-transcript).

707 

698<h4 id="hook-loads-but-never-fires">708<h4 id="hook-loads-but-never-fires">

699 Le hook charge mais ne se déclenche jamais709 Le hook charge mais ne se déclenche jamais

700</h4>710</h4>

prompt-caching.md +30 −18

Details

37Deux paramètres n'apparaissent pas dans le tableau des couches mais affectent toujours ce qui reste en cache :37Deux paramètres n'apparaissent pas dans le tableau des couches mais affectent toujours ce qui reste en cache :

38 38 

39* **Modèle** : chaque modèle a son propre cache. Changer de modèle recalcule la requête entière même lorsque le contenu est identique. Consultez [Changer de modèle](#switching-models) ci-dessous.39* **Modèle** : chaque modèle a son propre cache. Changer de modèle recalcule la requête entière même lorsque le contenu est identique. Consultez [Changer de modèle](#switching-models) ci-dessous.

40* **Niveau d'effort** : sur la plupart des modèles, chaque niveau d'effort a son propre cache, donc changer d'effort en cours de session recalcule la requête entière. Sur Opus 5.5 et Fable 5.1 avec une clé API ou un abonnement Claude, le cache reste intact par défaut. Consultez [Changer le niveau d'effort](#changing-effort-level) ci-dessous.40* **Niveau d'effort** : sur la plupart des modèles, chaque niveau d'effort a son propre cache, donc changer d'effort en cours de session recalcule la requête entière. Sur Opus 5.5, Sonnet 5.5, et Fable 5.1 avec une clé API ou un abonnement Claude, le cache reste intact par défaut. Consultez [Changer le niveau d'effort](#changing-effort-level) ci-dessous.

41 41 

42<Tip>42<Tip>

43 Choisissez votre modèle et votre niveau d'effort au début d'une session, puis réservez `/compact` pour les pauses naturelles entre les tâches. Moins vous apportez de modifications en cours de tâche, plus votre taux de succès du cache est élevé.43 Choisissez votre modèle et votre niveau d'effort au début d'une session, puis réservez `/compact` pour les pauses naturelles entre les tâches. Moins vous apportez de modifications en cours de tâche, plus votre taux de succès du cache est élevé.


75* [Changement de modèles](#switching-models)75* [Changement de modèles](#switching-models)

76* [Modification du niveau d'effort](#changing-effort-level)76* [Modification du niveau d'effort](#changing-effort-level)

77* [Activation du mode rapide](#turning-on-fast-mode)77* [Activation du mode rapide](#turning-on-fast-mode)

78* [Connexion ou déconnexion d'un serveur MCP](#connecting-or-disconnecting-an-mcp-server)78* [Connexion ou suppression d'un serveur MCP](#connecting-or-removing-an-mcp-server)

79* [Activation ou désactivation d'un plugin](#enabling-or-disabling-a-plugin)79* [Activation ou désactivation d'un plugin](#enabling-or-disabling-a-plugin)

80* [Refus d'un outil entier](#denying-an-entire-tool)80* [Refus d'un outil entier](#denying-an-entire-tool)

81* [Compactage de la conversation](#compacting-the-conversation)81* [Compactage de la conversation](#compacting-the-conversation)


96 96 

97Le [paramètre de modèle `opusplan`](/docs/fr/model-config#opusplan-model-setting) se résout en Opus pendant le mode plan et en Sonnet pendant l'exécution, donc chaque basculement du mode plan est un changement de modèle et démarre un nouveau cache.97Le [paramètre de modèle `opusplan`](/docs/fr/model-config#opusplan-model-setting) se résout en Opus pendant le mode plan et en Sonnet pendant l'exécution, donc chaque basculement du mode plan est un changement de modèle et démarre un nouveau cache.

98 98 

99[Le basculement automatique du modèle](/docs/fr/model-config#automatic-model-fallback) sur les modèles Fable, Opus 5.5 et Opus 5 est également un changement de modèle. Lorsqu'un classificateur de sécurité signale une requête dans une catégorie qui a un modèle de secours, Claude Code réexécute la requête sur ce modèle et la session continue là.99[Le basculement automatique du modèle](/docs/fr/model-config#automatic-model-fallback) sur les modèles Fable, Opus 5.5, Sonnet 5.5 et Opus 5 est également un changement de modèle. Lorsqu'un classificateur de sécurité signale une requête dans une catégorie qui a un modèle de secours, Claude Code réexécute la requête sur ce modèle et la session continue là.

100 100 

101Lorsque le frontmatter d'une skill ou d'une commande nomme un [`model`](/docs/fr/skills#frontmatter-reference) autre que le modèle actuel de la session, ce tour est également un changement de modèle : la prochaine requête lit l'intégralité de l'historique de conversation sans aucun cache hit. Le modèle de session reprend à votre prochaine invite. Une skill `context: fork` définit le [modèle du sous-agent forké](/docs/fr/skills#run-skills-in-a-subagent) à la place.101Lorsque le frontmatter d'une skill ou d'une commande nomme un [`model`](/docs/fr/skills#frontmatter-reference) autre que le modèle actuel de la session, ce tour est également un changement de modèle : la prochaine requête lit l'intégralité de l'historique de conversation sans aucun cache hit. Le modèle de session reprend à votre prochaine invite. Une skill `context: fork` définit le [modèle du sous-agent forké](/docs/fr/skills#run-skills-in-a-subagent) à la place.

102 102 


106 106 

107Sur la plupart des modèles, modifier le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) en cours de session signifie que la prochaine requête lit l'intégralité de l'historique de conversation sans aucun cache hit. Tant que le cache est encore chaud, Claude Code vous demande de confirmer le changement d'abord.107Sur la plupart des modèles, modifier le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) en cours de session signifie que la prochaine requête lit l'intégralité de l'historique de conversation sans aucun cache hit. Tant que le cache est encore chaud, Claude Code vous demande de confirmer le changement d'abord.

108 108 

109Sur Opus 5.5 et Fable 5.1 avec une clé API ou un abonnement Claude, modifier l'effort conserve le cache, et Claude Code applique le nouveau niveau sans demander. Cela ne s'applique pas sur Amazon Bedrock, sur la plateforme Agent de Google Cloud, ou sur une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), ou lorsque vous définissez [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/fr/llm-gateway-protocol#disable-pre-release-capabilities) ou que votre organisation a une configuration HIPAA.109Sur Opus 5.5, Sonnet 5.5 et Fable 5.1 avec une clé API ou un abonnement Claude, modifier l'effort conserve le cache, et Claude Code applique le nouveau niveau sans demander. Cela ne s'applique pas sur Amazon Bedrock, sur la plateforme Agent de Google Cloud, ou sur une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), ou lorsque vous définissez [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/fr/llm-gateway-protocol#disable-pre-release-capabilities) ou que votre organisation a une configuration HIPAA.

110 110 

111Avant la v2.1.260, modifier l'effort sur Fable 5.1 avec une clé API ou un abonnement Claude invalidait également le cache.111Avant la v2.1.260, modifier l'effort sur Fable 5.1 avec une clé API ou un abonnement Claude invalidait également le cache.

112 112 


118 118 

119Le coût s'applique une fois par conversation. Après le premier tour en mode rapide, Claude Code continue d'envoyer l'en-tête et varie uniquement le paramètre de vitesse de la requête, qui ne fait pas partie de la clé de cache. Désactiver le mode rapide, le [basculement automatique vers la vitesse standard](/docs/fr/fast-mode#handle-rate-limits) après une limite de débit, et le réactiver plus tard conservent tous le cache. Si vous [manquez de crédits d'utilisation](/docs/fr/fast-mode#handle-rate-limits) en cours de session, Claude Code réessaie chaque requête en mode rapide rejetée à la vitesse standard de la même manière, donc ce basculement conserve également le cache. `/clear` et `/compact` réinitialisent cela, puisqu'ils reconstruisent le cache à ces points de toute façon.119Le coût s'applique une fois par conversation. Après le premier tour en mode rapide, Claude Code continue d'envoyer l'en-tête et varie uniquement le paramètre de vitesse de la requête, qui ne fait pas partie de la clé de cache. Désactiver le mode rapide, le [basculement automatique vers la vitesse standard](/docs/fr/fast-mode#handle-rate-limits) après une limite de débit, et le réactiver plus tard conservent tous le cache. Si vous [manquez de crédits d'utilisation](/docs/fr/fast-mode#handle-rate-limits) en cours de session, Claude Code réessaie chaque requête en mode rapide rejetée à la vitesse standard de la même manière, donc ce basculement conserve également le cache. `/clear` et `/compact` réinitialisent cela, puisqu'ils reconstruisent le cache à ces points de toute façon.

120 120 

121<h3 id="connecting-or-disconnecting-an-mcp-server">121<h3 id="connecting-or-removing-an-mcp-server">

122 Connexion ou déconnexion d'un serveur MCP122 Connexion ou suppression d'un serveur MCP

123</h3>123</h3>

124 124 

125Les définitions d'outils se trouvent dans la couche d'invite système, donc le cache s'invalide lorsque l'ensemble des définitions d'outils dans la requête change entre les tours. Basculer l'[outil conseiller](/docs/fr/advisor) est une exception : sa définition se trouve après le point de rupture du cache, donc l'activation ou la désactivation de `/advisor` conserve le préfixe mis en cache intact. Qu'un changement de [serveur MCP](/docs/fr/mcp) fasse cela dépend de si ses outils sont différés par la [recherche d'outils](/docs/fr/mcp#scale-with-mcp-tool-search) ou chargés dans le préfixe :125Les définitions d'outils se trouvent dans la couche d'invite système, donc le cache s'invalide lorsque l'ensemble des définitions d'outils dans la requête change entre les tours. Basculer l'[outil conseiller](/docs/fr/advisor) est une exception : sa définition se trouve après le point de rupture du cache, donc l'activation ou la désactivation de `/advisor` conserve le préfixe mis en cache intact. Qu'un changement de [serveur MCP](/docs/fr/mcp) fasse cela dépend de si la [recherche d'outils](/docs/fr/mcp#scale-with-mcp-tool-search) diffère les outils MCP de la session, la valeur par défaut sur les modèles supportés :

126 126 

127* **Outils différés**, la valeur par défaut sur les modèles supportés : un serveur se connectant, se déconnectant, ou changeant sa liste d'outils n'ajoute que du nouveau contenu et ne perturbe rien de déjà mis en cache.127* **Outils différés** : Claude Code conserve la liste d'outils de la première requête de la conversation pour toute la conversation, donc un serveur se connectant ou se déconnectant en cours de session ne perturbe rien de déjà mis en cache. Un serveur qui finit de se connecter après la première requête fournit ses outils comme des définitions différées que Claude charge à la demande.

128* **Outils chargés dans le préfixe** : tout changement les invalide. Cela se produit lorsque la [recherche d'outils n'est pas disponible ou est désactivée](/docs/fr/mcp#configure-tool-search), par exemple sur les modèles de la plateforme Agent de Google Cloud antérieurs à la génération Claude 4.5, avec une passerelle `ANTHROPIC_BASE_URL` personnalisée, ou sur un [déploiement Microsoft Foundry hébergé sur Azure](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options) une fois que Claude Code détecte que le déploiement rejette la recherche d'outils. Cela se produit également pour un serveur ou un outil marqué [`alwaysLoad`](/docs/fr/mcp#exempt-a-server-from-deferral), et pour les définitions conservées en avant par le [chargement basé sur le seuil](/docs/fr/mcp#configure-tool-search).128* **Outils chargés en amont** : l'ajout d'une définition invalide le cache, et il en va de même pour la suppression intentionnelle d'une. Cela s'applique lorsque la recherche d'outils est [en dessous de son seuil `auto`, désactivée ou indisponible](/docs/fr/mcp#configure-tool-search), par exemple sur les modèles de la plateforme Agent de Google Cloud antérieurs à la génération Claude 4.5, avec une passerelle `ANTHROPIC_BASE_URL` personnalisée, ou sur un [déploiement Microsoft Foundry hébergé sur Azure](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options) une fois que Claude Code détecte que le déploiement rejette la recherche d'outils.

129 129 

130Lorsque les outils se chargent dans le préfixe, la cause la plus courante d'une invalidation est un serveur se connectant ou se déconnectant en cours de session, ce qui peut se produire sans aucune action de votre part : le processus d'un serveur stdio se termine, une session HTTP expire, ou un serveur [se reconnecte automatiquement après une défaillance transitoire](/docs/fr/mcp#automatic-reconnection). Un serveur connecté peut également envoyer une [mise à jour d'outil dynamique](/docs/fr/mcp#dynamic-tool-updates) qui change sa liste d'outils.130Sans recherche d'outils, qu'un changement de serveur en cours de session invalide le cache dépend de ce qui a changé. Pour chaque changement, ce tableau indique si le cache est conservé et ce qui se passe avec les définitions d'outils dans la prochaine requête.

131 

132| Changement en cours de session | Cache | Définitions d'outils dans la prochaine requête |

133| - | - | - |

134| Un serveur se connecte, ou une [mise à jour d'outil dynamique](/docs/fr/mcp#dynamic-tool-updates) ajoute des outils | Invalidé | Les nouvelles définitions sont ajoutées |

135| Un serveur se déconnecte sans aucune action de votre part, par exemple le processus d'un serveur stdio se termine | Conservé | Les définitions du serveur restent inchangées. Un appel à l'un de ses outils retourne une erreur au lieu de s'exécuter |

136| Un serveur distant [se reconnecte automatiquement](/docs/fr/mcp#automatic-reconnection) après une défaillance de connexion | Conservé, sauf si une requête envoyée pendant la reconnexion du serveur ajoute l'outil `WaitForMcpServers`, ce qui invalide le cache une fois | Les définitions du serveur restent inchangées. Une requête envoyée pendant la reconnexion du serveur peut ajouter `WaitForMcpServers` lorsque la conversation ne l'a pas encore listé, et l'outil reste alors listé pour le reste de la conversation |

137| Vous supprimez un outil intentionnellement, par exemple avec une [règle de refus](#denying-an-entire-tool) ou en désactivant son serveur dans `/mcp` | Invalidé | La définition est supprimée |

138 

139Lorsque vous reprenez une conversation dont les outils se chargent dans le préfixe, l'un de ses serveurs MCP peut toujours être en cours de connexion au moment où la première requête sort. Si la transcription a enregistré les définitions d'outils de ce serveur, cette requête les inclut comme enregistrées, donc elle ne change pas lorsque le serveur finit de se connecter avec les mêmes outils.

131 140 

132Éditer votre configuration MCP ne change pas le cache en soi. La nouvelle configuration ne prend effet qu'après un redémarrage, c'est à ce moment que le serveur se connecte ou se déconnecte.141Éditer votre configuration MCP ne change pas le cache en soi. La nouvelle configuration ne prend effet qu'après un redémarrage, c'est à ce moment que le serveur se connecte ou se déconnecte.

133 142 


147 Plugins qui fournissent des serveurs MCP156 Plugins qui fournissent des serveurs MCP

148</h4>157</h4>

149 158 

150Lorsque vous activez ou désactivez un plugin qui fournit des [serveurs MCP](/docs/fr/plugins/components#mcp-servers), Claude Code suit les mêmes règles que lorsque vous [connectez ou déconnectez un serveur MCP](#connecting-or-disconnecting-an-mcp-server) :159Lorsque vous activez ou désactivez un plugin qui fournit des [serveurs MCP](/docs/fr/plugins/components#mcp-servers), Claude Code suit les mêmes règles que lorsque vous [connectez ou supprimez un serveur MCP](#connecting-or-removing-an-mcp-server).

151 

152* Si Claude Code diffère les outils du serveur, il conserve le cache.

153* Si Claude Code les charge dans le préfixe, la prochaine requête relit l'intégralité de la conversation.

154 160 

155<h4 id="code-intelligence-plugins">161<h4 id="code-intelligence-plugins">

156 Plugins d'intelligence de code162 Plugins d'intelligence de code


244 Édition de fichiers dans votre référentiel250 Édition de fichiers dans votre référentiel

245</h3>251</h3>

246 252 

247Le contenu des fichiers entre en contexte uniquement lorsque Claude les lit, et les lectures s'ajoutent à la conversation. L'édition d'un fichier que Claude a précédemment lu ne change pas rétroactivement la lecture antérieure dans l'historique. Au lieu de cela, Claude Code ajoute un `<system-reminder>` notant que le fichier a changé, et Claude le relit si nécessaire.253Le contenu des fichiers entre en contexte uniquement lorsque Claude les lit, et les lectures s'ajoutent à la conversation. L'édition d'un fichier que Claude a précédemment lu ne change pas rétroactivement la lecture antérieure dans l'historique. Au lieu de cela, Claude Code ajoute un [`<system-reminder>`](/docs/fr/glossary#system-reminder) notant que le fichier a changé, et Claude le relit si nécessaire.

248 254 

249<h3 id="editing-claude-md-mid-session">255<h3 id="editing-claude-md-mid-session">

250 Édition de CLAUDE.md en cours de session256 Édition de CLAUDE.md en cours de session


354 Portée du cache360 Portée du cache

355</h2>361</h2>

356 362 

357Dans Claude Code, le cache est effectivement limité à une machine et un répertoire. Chaque conversation porte le répertoire de travail, la plateforme, le shell, et la version du système d'exploitation, et le prompt système nomme vos chemins de mémoire automatique, donc deux sessions dans des répertoires différents construisent des préfixes différents et manquent le cache de l'autre. Cela inclut les worktrees du même référentiel, puisque chaque worktree a son propre répertoire de travail.363Dans Claude Code, le cache est effectivement limité à une machine et un répertoire. Le prompt système intègre vos chemins de mémoire automatique, et la conversation s'ouvre avec une annonce du répertoire de travail, de la plateforme, du shell et de la version du système d'exploitation. Deux sessions dans des répertoires différents construisent donc des préfixes différents et manquent le cache de l'autre.

358 364 

359Les sessions que vous exécutez en parallèle dans le même répertoire construisent des préfixes correspondants et lisent le cache de l'autre. Les sessions séquentielles partagent le préfixe uniquement quand l'instantané du statut git au démarrage correspond, puisque chaque conversation porte également la branche et les commits récents de cet instantané.365Les sessions que vous exécutez en parallèle dans le même répertoire construisent des préfixes correspondants et lisent le cache de l'autre. Les sessions séquentielles partagent le préfixe uniquement quand l'instantané du statut git au démarrage correspond, puisque chaque conversation porte également la branche et les commits récents de cet instantané.

360 366 

361Le cache API sous-jacent est plus large. Les caches sont isolés entre les organisations, et sur certains fournisseurs, [entre les espaces de travail au sein d'une organisation](https://platform.claude.com/docs/fr/build-with-claude/prompt-caching#cache-storage-and-sharing). Dans ces limites, deux requêtes quelconques avec le même modèle et préfixe lisent le même cache. Pour les appelants du SDK Agent exécutant des flottes de processus automatisés, voir [améliorer le prompt caching entre les utilisateurs et les machines](/docs/fr/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) pour supprimer les sections par machine du prompt système et partager le cache entre les machines.367Le cache API sous-jacent est plus large. Les caches sont isolés entre les organisations, et sur certains fournisseurs, [entre les espaces de travail au sein d'une organisation](https://platform.claude.com/docs/fr/build-with-claude/prompt-caching#cache-storage-and-sharing). Dans ces limites, deux requêtes quelconques avec le même modèle et préfixe lisent le même cache. Pour les appelants du SDK Agent exécutant des flottes de processus automatisés, voir [améliorer le prompt caching entre les utilisateurs et les machines](/docs/fr/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) pour déplacer l'emplacement de la mémoire automatique hors du prompt système et partager l'entrée du cache du prompt système entre les utilisateurs et les machines.

362 368 

363<h2 id="check-cache-performance">369<h2 id="check-cache-performance">

364 Vérifier les performances du cache370 Vérifier les performances du cache


405| Variable | Effet |411| Variable | Effet |

406| - | - |412| - | - |

407| `DISABLE_PROMPT_CACHING` | Désactiver pour tous les modèles |413| `DISABLE_PROMPT_CACHING` | Désactiver pour tous les modèles |

408| `DISABLE_PROMPT_CACHING_HAIKU` | Désactiver pour Haiku uniquement |414| `DISABLE_PROMPT_CACHING_HAIKU` | Désactiver pour le modèle Haiku par défaut |

409| `DISABLE_PROMPT_CACHING_SONNET` | Désactiver pour Sonnet uniquement |415| `DISABLE_PROMPT_CACHING_SONNET` | Désactiver pour Sonnet uniquement |

410| `DISABLE_PROMPT_CACHING_OPUS` | Désactiver pour Opus uniquement |416| `DISABLE_PROMPT_CACHING_OPUS` | Désactiver pour Opus uniquement |

411| `DISABLE_PROMPT_CACHING_FABLE` | Désactiver pour Fable uniquement |417| `DISABLE_PROMPT_CACHING_FABLE` | Désactiver pour Fable uniquement |

412 418 

419`DISABLE_PROMPT_CACHING_HAIKU` s'applique au modèle Haiku par défaut, le modèle auquel l'alias `haiku` se résout. Il désactive le caching partout où ce modèle s'exécute, y compris la conversation principale quand il est votre modèle principal. Couvrir la conversation principale nécessite Claude Code v2.1.283 ou une version ultérieure.

420 

421La variable couvre également un modèle d'arrière-plan que vous définissez avec la variable dépréciée `ANTHROPIC_SMALL_FAST_MODEL`, quand ce modèle diffère de votre modèle principal.

422 

423Une version différente de Haiku que vous épinglez comme votre modèle principal conserve le caching ; définissez `DISABLE_PROMPT_CACHING` pour désactiver le caching pour celui-ci.

424 

413Pour définir la politique de caching dans une organisation, mettez l'une de ces variables ou les [variables TTL](#cache-lifetime) dans le bloc `env` des [paramètres gérés](/docs/fr/managed-settings). Pour un usage normal, laissez le caching activé.425Pour définir la politique de caching dans une organisation, mettez l'une de ces variables ou les [variables TTL](#cache-lifetime) dans le bloc `env` des [paramètres gérés](/docs/fr/managed-settings). Pour un usage normal, laissez le caching activé.

414 426 

415<h2 id="related-resources">427<h2 id="related-resources">

quickstart.md +4 −2

Details

27 Étape 1 : Installer Claude Code27 Étape 1 : Installer Claude Code

28</h2>28</h2>

29 29 

30Pour installer Claude Code, utilisez l'une des méthodes suivantes :30Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.

31 31 

32<Tabs>32<Tabs>

33 <Tab title="Installation native (recommandée)">33 <Tab title="Installation native (recommandée)">


49 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd49 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

50 ```50 ```

51 51 

52 Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](/docs/fr/troubleshoot-install#command-not-found-claude-after-installation).

53 

52 Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell. Votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.54 Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell. Votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.

53 55 

54 Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou une autre erreur curl, consultez [Dépannage de l'installation](/docs/fr/troubleshoot-install#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.56 Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou une autre erreur curl, consultez [Dépannage de l'installation](/docs/fr/troubleshoot-install#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.


187 189 

188Claude Code trouve le fichier approprié et vous montre la modification. S'il vous demande avant d'effectuer la modification, sélectionnez **Oui** pour approuver.190Claude Code trouve le fichier approprié et vous montre la modification. S'il vous demande avant d'effectuer la modification, sélectionnez **Oui** pour approuver.

189 191 

190Le mode Auto est le [mode de permission de démarrage intégré](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour les sessions de terminal interactives sur les plans Pro, Max et Team : un classificateur examine les actions au lieu de vous, et Claude modifie la plupart des fichiers et exécute la plupart des commandes sans vous demander. Sur les autres plans, le mode Manuel est le mode de permission de démarrage intégré. Pour la session que vous démarrez juste après l'installation, consultez [Première session après une installation ou une mise à jour](/docs/fr/env-vars#first-session-after-an-install-or-upgrade).192Avec Claude Code v2.1.283 ou version ultérieure, le mode auto est le [mode de permission de démarrage intégré](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour les sessions de terminal interactives : un classificateur examine les actions au lieu de vous, et Claude modifie la plupart des fichiers et exécute la plupart des commandes sans vous demander. Sur les versions antérieures, le mode auto est le mode de permission de démarrage intégré uniquement sur les plans Pro, Max et Team. Pour la session que vous démarrez juste après l'installation, consultez [Première session après une installation ou une mise à jour](/docs/fr/env-vars#first-session-after-an-install-or-upgrade).

191 193 

192<Note>194<Note>

193 Vos paramètres ou votre organisation peuvent définir un mode de permission de démarrage différent. [Quel mode de permission une session démarre](/docs/fr/permission-modes#which-mode-a-session-starts-in) énumère ce qui le fait. Appuyez sur `Shift+Tab` à tout moment pour basculer le mode de permission de la session dans laquelle vous vous trouvez.195 Vos paramètres ou votre organisation peuvent définir un mode de permission de démarrage différent. [Quel mode de permission une session démarre](/docs/fr/permission-modes#which-mode-a-session-starts-in) énumère ce qui le fait. Appuyez sur `Shift+Tab` à tout moment pour basculer le mode de permission de la session dans laquelle vous vous trouvez.

remote-control.md +108 −116

Details

6 6 

7> Continuez une session Claude Code locale depuis votre téléphone, tablette ou n'importe quel navigateur en utilisant Remote Control. Fonctionne avec claude.ai/code et l'application Claude mobile.7> Continuez une session Claude Code locale depuis votre téléphone, tablette ou n'importe quel navigateur en utilisant Remote Control. Fonctionne avec claude.ai/code et l'application Claude mobile.

8 8 

9<Note>

10 Remote Control est disponible sur tous les plans. Sur Team et Enterprise, il est désactivé par défaut jusqu'à ce qu'un propriétaire active le bouton Remote Control dans les [paramètres d'administration Claude Code](https://claude.ai/admin-settings/claude-code).

11</Note>

12 

13Remote Control connecte [claude.ai/code](https://claude.ai/code) ou l'application Claude pour [iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) et [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude) à une session Claude Code s'exécutant sur votre machine. Commencez une tâche à votre bureau, puis reprenez-la depuis votre téléphone sur le canapé ou un navigateur sur un autre ordinateur.9Remote Control connecte [claude.ai/code](https://claude.ai/code) ou l'application Claude pour [iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) et [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude) à une session Claude Code s'exécutant sur votre machine. Commencez une tâche à votre bureau, puis reprenez-la depuis votre téléphone sur le canapé ou un navigateur sur un autre ordinateur.

14 10 

15Lorsque vous démarrez une session Remote Control sur votre machine, Claude continue à s'exécuter localement à tout moment, donc votre exécution de code et votre accès au système de fichiers restent sur votre machine. Avec Remote Control, vous pouvez :11Lorsque vous démarrez une session Remote Control sur votre machine, Claude continue à s'exécuter localement à tout moment, donc votre exécution de code et votre accès au système de fichiers restent sur votre machine. Avec Remote Control, vous pouvez :


17* **Utiliser votre environnement local complet à distance** : votre système de fichiers, [serveurs MCP](/docs/fr/mcp), outils et configuration de projet restent tous disponibles, et taper `@` complète automatiquement les chemins de fichiers de votre projet local.13* **Utiliser votre environnement local complet à distance** : votre système de fichiers, [serveurs MCP](/docs/fr/mcp), outils et configuration de projet restent tous disponibles, et taper `@` complète automatiquement les chemins de fichiers de votre projet local.

18* **Travailler depuis les deux surfaces à la fois** : la conversation et la progression des [sous-agents](/docs/fr/sub-agents) et des [flux de travail dynamiques](/docs/fr/workflows) restent synchronisés sur tous les appareils connectés, vous pouvez donc envoyer des messages depuis votre terminal, navigateur et téléphone de manière interchangeable.14* **Travailler depuis les deux surfaces à la fois** : la conversation et la progression des [sous-agents](/docs/fr/sub-agents) et des [flux de travail dynamiques](/docs/fr/workflows) restent synchronisés sur tous les appareils connectés, vous pouvez donc envoyer des messages depuis votre terminal, navigateur et téléphone de manière interchangeable.

19* **Envoyer des images et des fichiers depuis votre téléphone ou navigateur** : joignez une photo ou un fichier dans l'application Claude ou sur claude.ai/code, avec ou sans légende. Claude voit les photos jointes directement comme faisant partie de votre message. Claude Code télécharge les autres fichiers sur votre machine et les transmet à Claude en tant que références de fichier `@`.15* **Envoyer des images et des fichiers depuis votre téléphone ou navigateur** : joignez une photo ou un fichier dans l'application Claude ou sur claude.ai/code, avec ou sans légende. Claude voit les photos jointes directement comme faisant partie de votre message. Claude Code télécharge les autres fichiers sur votre machine et les transmet à Claude en tant que références de fichier `@`.

20* **Survivre aux interruptions** : si votre ordinateur portable s'endort ou votre réseau tombe en panne, Claude Code se reconnecte automatiquement lorsque votre machine revient en ligne. Pendant que la connexion se rétablit, Claude Code met en file d'attente les messages, les invites de permission et les mises à jour de statut des sous-agents et des flux de travail, et les livre une fois que la connexion se rétablit.16* **Survivre aux interruptions** : si votre ordinateur portable s'endort ou votre réseau tombe en panne, Claude Code se reconnecte automatiquement lorsque votre machine revient en ligne.

21 

22Contrairement à [Claude Code sur le web](/docs/fr/claude-code-on-the-web), qui s'exécute sur l'infrastructure cloud, les sessions Remote Control s'exécutent directement sur votre machine et interagissent avec votre système de fichiers local. Les interfaces web et mobile ne sont qu'une fenêtre dans cette session locale.

23 17 

24Cette page couvre la configuration, comment démarrer et se connecter aux sessions, et comment Remote Control se compare à Claude Code sur le web.18Contrairement à [sessions cloud](/docs/fr/claude-code-on-the-web), qui s'exécutent sur l'infrastructure cloud, les sessions Remote Control s'exécutent directement sur votre machine et interagissent avec votre système de fichiers local. Les interfaces web et mobile ne sont qu'une fenêtre dans cette session locale, donc votre ordinateur doit rester allumé et le processus `claude` doit continuer à s'exécuter.

25 19 

26<h2 id="requirements">20<h2 id="requirements">

27 Conditions requises21 Conditions requises


33* **Authentification** : exécutez `claude` et utilisez `/login` pour vous connecter via claude.ai si vous ne l'avez pas déjà fait. Sans une connexion éligible, `claude remote-control` se termine avec une erreur, tandis que `claude --remote-control` démarre toujours une session interactive et affiche une notification d'échec de Remote Control peu de temps après le lancement.27* **Authentification** : exécutez `claude` et utilisez `/login` pour vous connecter via claude.ai si vous ne l'avez pas déjà fait. Sans une connexion éligible, `claude remote-control` se termine avec une erreur, tandis que `claude --remote-control` démarre toujours une session interactive et affiche une notification d'échec de Remote Control peu de temps après le lancement.

34* **Point de terminaison API** : non disponible dans l'une de ces configurations :28* **Point de terminaison API** : non disponible dans l'une de ces configurations :

35 * Vous utilisez Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry.29 * Vous utilisez Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry.

36 * Vous pointez [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) vers un hôte autre que `api.anthropic.com`, tel qu'une [passerelle LLM](/docs/fr/llm-gateway) ou un proxy. Déconfigurez la variable pour utiliser Remote Control. Avant la v2.1.196, Claude Code autorisait Remote Control avec une `ANTHROPIC_BASE_URL` personnalisée.30 * Vous pointez [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) vers un hôte autre que `api.anthropic.com`, tel qu'une [passerelle LLM](/docs/fr/llm-gateway) ou un proxy. Déconfigurez la variable pour utiliser Remote Control.

37 * Vous vous connectez via une passerelle [Claude apps gateway](/docs/fr/claude-apps-gateway) d'entreprise.31 * Vous vous connectez via une passerelle [Claude apps gateway](/docs/fr/claude-apps-gateway) d'entreprise.

38* **Évaluation des drapeaux de fonctionnalité** : [`DISABLE_TELEMETRY`, `DO_NOT_TRACK`, `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` et `DISABLE_GROWTHBOOK`](/docs/fr/env-vars) désactivent chacun l'évaluation des drapeaux de fonctionnalité dont dépend la disponibilité de Remote Control. Déconfigurez la variable partout où elle est définie, dans votre environnement shell ou dans le bloc `env` d'un [fichier `settings.json`](/docs/fr/settings-reference#all-settings), pour utiliser Remote Control.32* **Évaluation des drapeaux de fonctionnalité** : si vous définissez une [variable d'environnement qui désactive l'évaluation des drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), la disponibilité de Remote Control dépend de celle-ci :

39* **Confiance de l'espace de travail** : exécutez `claude` dans votre répertoire de projet au moins une fois pour accepter la boîte de dialogue de confiance de l'espace de travail. La boîte de dialogue de confiance au démarrage ne sauvegarde jamais la confiance pour votre répertoire personnel, donc démarrez Remote Control à partir d'un répertoire de projet.33 * Si vous définissez `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` ou `DISABLE_GROWTHBOOK`, Remote Control n'est pas disponible. Déconfigurez la variable partout où elle est définie, dans votre environnement shell ou dans le bloc `env` d'un [fichier `settings.json`](/docs/fr/settings-reference#all-settings), pour utiliser Remote Control.

34 * Si vous définissez uniquement `DISABLE_TELEMETRY` ou `DO_NOT_TRACK`, Remote Control reste disponible sauf si votre organisation exige des [appareils de confiance](#trusted-devices). Si c'est le cas, déconfigurez la variable pour utiliser Remote Control. L'utilisation de Remote Control avec l'une ou l'autre de ces variables définies nécessite Claude Code v2.1.283 ou version ultérieure.

35* **Confiance de l'espace de travail** : dans un répertoire que vous n'avez pas encore approuvé, `claude remote-control` affiche ce que l'approbation active et demande `Trust <directory>? [y/N]` avant de démarrer. Répondre `y` enregistre le choix, sauf dans votre répertoire personnel, où la confiance n'est jamais enregistrée et la question revient à chaque exécution. Lorsque son entrée ou sa sortie standard n'est pas un terminal, la commande ne peut pas demander et se termine avec une erreur [`Workspace not trusted`](/docs/fr/errors#workspace-not-trusted-when-starting-remote-control).

40 36 

41<h2 id="start-a-remote-control-session">37<h2 id="start-a-remote-control-session">

42 Démarrer une session Remote Control38 Démarrer une session Remote Control

43</h2>39</h2>

44 40 

45Vous pouvez démarrer une session Remote Control à partir de la CLI ou de l'extension VS Code. La CLI offre trois modes d'invocation ; VS Code utilise la commande `/remote-control`.41Vous pouvez démarrer une session Remote Control à partir de la CLI, de l'[application Claude Desktop](/docs/fr/desktop), ou de l'extension VS Code. La CLI offre trois modes d'invocation ; l'application Desktop et VS Code utilisent la commande `/remote-control`.

46 42 

47<Tabs>43<Tabs>

48 <Tab title="Mode serveur">44 <Tab title="Mode serveur">


62 | - | - |58 | - | - |

63 | `--name "My Project"` | Définissez un titre de session personnalisé visible dans la liste des sessions sur claude.ai/code. |59 | `--name "My Project"` | Définissez un titre de session personnalisé visible dans la liste des sessions sur claude.ai/code. |

64 | `--remote-control-session-name-prefix <prefix>` | Préfixe pour les noms de session générés automatiquement lorsqu'aucun nom explicite n'est défini. Par défaut, le nom d'hôte de votre machine, produisant des noms comme `myhost-graceful-unicorn`. Définissez `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` pour le même effet. |60 | `--remote-control-session-name-prefix <prefix>` | Préfixe pour les noms de session générés automatiquement lorsqu'aucun nom explicite n'est défini. Par défaut, le nom d'hôte de votre machine, produisant des noms comme `myhost-graceful-unicorn`. Définissez `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` pour le même effet. |

65 | `-c`, `--continue` | Reprendre la session que le dernier serveur dans ce répertoire a démarrée, au lieu d'en créer une nouvelle. Voir [Reprendre les sessions après l'arrêt du serveur](#resume-sessions-after-stopping-the-server). Ne peut pas être combiné avec `--session-id`, `--spawn`, `--capacity`, ou `--create-session-in-dir`. Nécessite Claude Code v2.1.200 ou version ultérieure ; les versions antérieures rejettent le drapeau comme argument inconnu. |61 | `-c`, `--continue` | Reprendre la session que le dernier serveur dans ce répertoire a démarrée, au lieu d'en créer une nouvelle. Voir [Reprendre les sessions après l'arrêt du serveur](#resume-sessions-after-stopping-the-server). Ne peut pas être combiné avec `--session-id`, `--spawn`, `--capacity`, ou `--create-session-in-dir`. Nécessite Claude Code v2.1.200 ou version ultérieure. |

66 | `--session-id <id>` | Reprendre une session par son ID. Voir [Reprendre les sessions après l'arrêt du serveur](#resume-sessions-after-stopping-the-server). Ne peut pas être combiné avec `--continue`, `--spawn`, `--capacity`, ou `--create-session-in-dir`. Nécessite Claude Code v2.1.200 ou version ultérieure ; les versions antérieures rejettent le drapeau comme argument inconnu. |62 | `--session-id <id>` | Reprendre une session par son ID. Voir [Reprendre les sessions après l'arrêt du serveur](#resume-sessions-after-stopping-the-server). Ne peut pas être combiné avec `--continue`, `--spawn`, `--capacity`, ou `--create-session-in-dir`. Nécessite Claude Code v2.1.200 ou version ultérieure. |

67 | `--spawn <mode>` | Comment le serveur crée les sessions.<br />• `same-dir` (par défaut) : toutes les sessions partagent le répertoire de travail actuel, elles peuvent donc entrer en conflit si elles modifient les mêmes fichiers.<br />• `worktree` : chaque session à la demande obtient sa propre [git worktree](/docs/fr/worktrees). Nécessite un référentiel git.<br />• `session` : mode session unique. Sert exactement une session et rejette les connexions supplémentaires. Défini au démarrage uniquement.<br />Appuyez sur `w` à l'exécution pour basculer entre `same-dir` et `worktree`. |63 | `--spawn <mode>` | Comment le serveur crée les sessions.<br />• `same-dir` (par défaut) : toutes les sessions partagent le répertoire de travail actuel, elles peuvent donc entrer en conflit si elles modifient les mêmes fichiers.<br />• `worktree` : chaque session à la demande obtient sa propre [git worktree](/docs/fr/worktrees). Nécessite un référentiel git.<br />• `session` : mode session unique. Sert exactement une session et rejette les connexions supplémentaires. Défini au démarrage uniquement.<br />Appuyez sur `w` à l'exécution pour basculer entre `same-dir` et `worktree`. |

68 | `--capacity <N>` | Nombre maximum de sessions concurrentes. La valeur par défaut est 32. Ne peut pas être utilisé avec `--spawn=session`. |64 | `--capacity <N>` | Nombre maximum de sessions concurrentes. La valeur par défaut est 32. Ne peut pas être utilisé avec `--spawn=session`. |

69 | `--[no-]create-session-in-dir` | Pré-créer une session dans le répertoire actuel au démarrage du serveur, afin que vous ayez un endroit où taper immédiatement. En mode `worktree`, cette session reste dans le répertoire actuel tandis que les sessions à la demande obtiennent des worktrees isolés. Activé par défaut. Si vous passez `--no-create-session-in-dir` pour démarrer sans aucune, Claude Code archive les sessions du serveur lorsque vous l'arrêtez, il n'y a donc rien à [reprendre](#resume-sessions-after-stopping-the-server). |65 | `--[no-]create-session-in-dir` | Pré-créer une session dans le répertoire actuel au démarrage du serveur, afin que vous ayez un endroit où taper immédiatement. En mode `worktree`, cette session reste dans le répertoire actuel tandis que les sessions à la demande obtiennent des worktrees isolés. Activé par défaut. Si vous passez `--no-create-session-in-dir` pour démarrer sans aucune, Claude Code archive les sessions du serveur lorsque vous l'arrêtez, il n'y a donc rien à [reprendre](#resume-sessions-after-stopping-the-server). |

70 | `--permission-mode <mode>` | Définissez le [mode de permission](/docs/fr/permission-modes) de démarrage pour les sessions du serveur, tel que `acceptEdits`. Accepte `manual` comme alias pour `default` ; un mode non reconnu arrête le serveur au démarrage et liste les modes valides. |66 | `--permission-mode <mode>` | Définissez le [mode de permission](/docs/fr/permission-modes) de démarrage pour les sessions du serveur, tel que `acceptEdits`. Accepte `manual` comme alias pour `default` ; un mode non reconnu arrête le serveur au démarrage et liste les modes valides. |

67 | `-d`, `--debug[=<filter>]` | Activez la journalisation de débogage pour le serveur, éventuellement filtrée par catégorie. Passez un filtre uniquement sous la forme `=`, comme `--debug=api,hooks`. Nécessite Claude Code v2.1.282 ou version ultérieure ; les versions antérieures rejettent le drapeau comme argument inconnu. |

71 | `--debug-file <path>` | Écrire les journaux de débogage dans le fichier donné. |68 | `--debug-file <path>` | Écrire les journaux de débogage dans le fichier donné. |

72 | `--verbose` | Afficher les journaux de connexion et de session détaillés. |69 | `--verbose` | Afficher les journaux de connexion et de session détaillés. |

73 | `--sandbox` / `--no-sandbox` | Activer ou désactiver le [sandboxing](/docs/fr/sandboxing) pour l'isolation du système de fichiers et du réseau. Désactivé par défaut. |70 | `--sandbox` / `--no-sandbox` | Activer ou désactiver le [sandboxing](/docs/fr/sandboxing) pour l'isolation du système de fichiers et du réseau. Désactivé par défaut. |

74 71 

75 Donnez ces drapeaux après `remote-control`.72 Donnez ces drapeaux après `remote-control`.

76 73 

77 Si vous passez un drapeau global `claude` avant `remote-control`, ou si un script wrapper en ajoute un, Claude Code ne porte pas le drapeau aux sessions que le serveur crée. Claude Code laisse passer le drapeau uniquement lorsque le supprimer ne change pas ce que ces sessions peuvent faire, comme `--verbose` ou `--model`. Pour tout autre drapeau, comme `--settings`, Claude Code [refuse de démarrer](/docs/fr/errors#not-carried-over-to-the-sessions-remote-control-starts) et nomme le drapeau à supprimer. Avant v2.1.248, toute option avant `remote-control` faisait que Claude Code rejette les drapeaux après avec une erreur `unknown option`.74 Si vous passez un drapeau global `claude` avant `remote-control`, ou si un script wrapper en ajoute un, Claude Code ne porte pas le drapeau aux sessions que le serveur crée. Claude Code laisse passer le drapeau uniquement lorsque le supprimer ne change pas ce que ces sessions peuvent faire, comme `--verbose` ou `--model`. Pour tout autre drapeau, comme `--settings`, Claude Code [refuse de démarrer](/docs/fr/errors#not-carried-over-to-the-sessions-remote-control-starts) et nomme le drapeau à supprimer.

78 75 

79 Claude Code vérifie l'admissibilité de Remote Control avant d'imprimer l'aide, donc `claude remote-control --help` retourne une erreur au lieu de cette liste de drapeaux lorsque vous n'êtes pas connecté avec un compte admissible.76 Claude Code vérifie l'admissibilité de Remote Control avant d'imprimer l'aide, donc `claude remote-control --help` retourne une erreur au lieu de cette liste de drapeaux lorsque vous n'êtes pas connecté avec un compte admissible.

80 </Tab>77 </Tab>


126 123 

127 Contrairement à la CLI, la commande VS Code n'accepte pas d'argument de nom et n'affiche pas de code QR. Le titre de la session est dérivé de votre historique de conversation ou de votre premier message.124 Contrairement à la CLI, la commande VS Code n'accepte pas d'argument de nom et n'affiche pas de code QR. Le titre de la session est dérivé de votre historique de conversation ou de votre premier message.

128 </Tab>125 </Tab>

126 

127 <Tab title="Application Desktop">

128 Dans une session locale dans l'[onglet Code de l'application Claude Desktop](/docs/fr/desktop), tapez `/remote-control` ou `/rc` dans la zone de saisie.

129 

130 ```text theme={null}

131 /remote-control

132 ```

133 

134 Une fois la session connectée, trouvez-la dans la liste des sessions sur [claude.ai/code](https://claude.ai/code). Pour vous déconnecter, exécutez `/remote-control` à nouveau.

135 

136 Pour activer Remote Control pour chaque session par défaut à la place, voir [Activer Remote Control pour toutes les sessions](#enable-remote-control-for-all-sessions).

137 </Tab>

129</Tabs>138</Tabs>

130 139 

131<h3 id="check-connection-status">140<h3 id="check-connection-status">


140* **Cette session a été terminée ou archivée depuis un autre appareil ou une autre application** : exécutez `/remote-control` uniquement si vous la souhaitez. Claude Code rouvre une session archivée.149* **Cette session a été terminée ou archivée depuis un autre appareil ou une autre application** : exécutez `/remote-control` uniquement si vous la souhaitez. Claude Code rouvre une session archivée.

141* **Le serveur ne signale plus cette session** : elle peut avoir été supprimée depuis un autre appareil ou une autre application.150* **Le serveur ne signale plus cette session** : elle peut avoir été supprimée depuis un autre appareil ou une autre application.

142 151 

143<h3 id="session-url-reminders">

144 Rappels d'URL de session

145</h3>

146 

147Pendant que Remote Control est connecté, Claude Code vous rappelle l'URL de la session lorsque passer à votre téléphone ou navigateur aide le plus, afin que vous n'ayez pas à trouver le lien dans `/remote-control`. Un rappel apparaît au-dessus de la zone de saisie à l'un de ces moments :

148 

149* **Tour long** : lorsqu'un tour s'exécute plus longtemps qu'un seuil réglé par le serveur, Claude Code affiche une notification **Still working** avec un lien **Check in from your phone**, afin que vous puissiez suivre le tour depuis votre téléphone ou navigateur au lieu d'attendre au terminal. Claude Code la supprime lorsque le tour se termine.

150* **Invites de permission répétées** : après avoir répondu à plusieurs [invites de permission](/docs/fr/permissions) dans une session, une notification **Approve tool calls from your phone** affiche l'URL de la session. Claude Code la supprime lorsque votre prochain tour commence.

151 

152Les rappels peuvent apparaître dans n'importe quelle session connectée, y compris celles où Remote Control [se connecte automatiquement](#enable-remote-control-for-all-sessions). Ils n'apparaissent pas à chaque fois que ces conditions se produisent, et chacun n'apparaît que quelques fois au total dans les sessions. Vous ne pouvez pas les configurer ou les désactiver ; chacun s'efface de lui-même.

153 

154<h3 id="connect-from-another-device">152<h3 id="connect-from-another-device">

155 Se connecter depuis un autre appareil153 Se connecter depuis un autre appareil

156</h3>154</h3>


1703. Le dernier message significatif dans l'historique de conversation existant1683. Le dernier message significatif dans l'historique de conversation existant

1714. Un nom généré automatiquement comme `myhost-graceful-unicorn`, où `myhost` est le nom d'hôte de votre machine ou le préfixe que vous avez défini avec `--remote-control-session-name-prefix`1694. Un nom généré automatiquement comme `myhost-graceful-unicorn`, où `myhost` est le nom d'hôte de votre machine ou le préfixe que vous avez défini avec `--remote-control-session-name-prefix`

172 170 

173Si vous n'avez pas défini de nom explicite, Claude Code met à jour le titre pour refléter votre message une fois que vous en envoyez un. Claude Code fait correspondre les titres générés automatiquement à la langue de votre conversation, ou au paramètre [`language`](/docs/fr/settings-reference#language) s'il est configuré.171Si vous n'avez pas défini de nom explicite, Claude Code met à jour le titre pour refléter votre message une fois que vous en envoyez un. Lorsque vous renommez une session depuis claude.ai ou l'application Claude, Claude Code met également à jour le titre local affiché dans `claude --resume`.

174 

175Lorsque vous renommez une session depuis claude.ai ou l'application Claude, Claude Code met également à jour le titre local affiché dans `claude --resume`. Claude Code applique le même renommage au nom de session affiché sur la barre de saisie, et dans la liste `claude agents` lorsque la session [s'exécute en arrière-plan](/docs/fr/agent-view). Avant v2.1.221, renommer depuis la liste des sessions sur claude.ai ou dans l'application Claude mettait à jour uniquement le titre, et la CLI conservait son nom de session précédent ; `/rename`, qui s'exécute dans la CLI elle-même, définissait le nom sur n'importe quelle version.

176 172 

177Si vous n'avez pas encore l'application Claude, exécutez `/mobile` dans Claude Code pour afficher un code QR pour [claude.ai/mobile](https://claude.ai/mobile), qui ouvre le bon app store pour votre téléphone.173Si vous n'avez pas encore l'application Claude, exécutez `/mobile` dans Claude Code pour afficher un code QR pour [claude.ai/mobile](https://claude.ai/mobile), qui ouvre le bon app store pour votre téléphone.

178 174 


184 180 

185* **Compaction et `/clear`** : tandis que Claude Code [compacte la conversation](/docs/fr/context-window#what-survives-compaction), les appareils connectés affichent la progression et ensuite où la conversation a été compactée. Lorsque vous exécutez `/clear`, la conversation se réinitialise également sur les appareils connectés.181* **Compaction et `/clear`** : tandis que Claude Code [compacte la conversation](/docs/fr/context-window#what-survives-compaction), les appareils connectés affichent la progression et ensuite où la conversation a été compactée. Lorsque vous exécutez `/clear`, la conversation se réinitialise également sur les appareils connectés.

186* **Basculer les conversations avec `/resume`** : l'appareil connecté ne reçoit pas le titre de la conversation basculée ou l'historique antérieur, mais les nouveaux messages dans les deux sens vont vers et depuis la conversation ouverte dans votre terminal. Pour travailler à nouveau sur la conversation d'origine depuis l'appareil, exécutez `/resume` dans votre terminal et revenez à celle-ci.182* **Basculer les conversations avec `/resume`** : l'appareil connecté ne reçoit pas le titre de la conversation basculée ou l'historique antérieur, mais les nouveaux messages dans les deux sens vont vers et depuis la conversation ouverte dans votre terminal. Pour travailler à nouveau sur la conversation d'origine depuis l'appareil, exécutez `/resume` dans votre terminal et revenez à celle-ci.

187* **Tirer une session avec `/teleport`** : lorsque vous tirez une [session Claude Code sur le web](/docs/fr/claude-code-on-the-web) dans votre terminal avec `/teleport`, l'appareil connecté ne reçoit pas l'historique antérieur de la conversation tirée. Les nouveaux messages dans les deux sens vont vers et depuis la conversation tirée, qui est maintenant celle ouverte dans votre terminal.183* **Tirer une session avec `/teleport`** : lorsque vous tirez une [session cloud](/docs/fr/claude-code-on-the-web#from-cloud-to-terminal) dans votre terminal avec `/teleport`, l'appareil connecté ne reçoit pas l'historique antérieur de la conversation tirée. Les nouveaux messages dans les deux sens vont vers et depuis la conversation tirée, qui est maintenant celle ouverte dans votre terminal.

188* **Messages de vos autres sessions** : avec la [messagerie entre sessions](/docs/fr/cross-session-messaging), la même connexion porte les messages entre vos propres sessions sur différentes machines et depuis vos sessions [Claude Code sur le web](/docs/fr/claude-code-on-the-web), via les serveurs Anthropic comme le reste du trafic Remote Control. [Envoyer des messages aux sessions sur d'autres machines](/docs/fr/cross-session-messaging#message-sessions-on-other-machines) couvre les règles de livraison et [Contrôler les messages entrants](/docs/fr/cross-session-messaging#control-inbound-messages) couvre les contrôles entrants. Nécessite Claude Code v2.1.224 ou version ultérieure.184* **Messages de vos autres sessions** : avec la [messagerie entre sessions](/docs/fr/cross-session-messaging), la même connexion porte les messages entre vos propres sessions sur différentes machines et depuis vos [sessions cloud](/docs/fr/claude-code-on-the-web).

189* **Messages que vous envoyez en milieu de tour** : lorsque vous envoyez un message depuis un appareil connecté avant la fin du tour actuel, Claude Code le met en file d'attente et le conserve dans la transcription de l'appareil après la fin de ce tour.185* **Diff de vos modifications** : lorsque le répertoire de la session se trouve dans un référentiel git, le volet diff d'un appareil connecté affiche vos modifications. Sur une branche qui a des commits en avance sur la branche par défaut du référentiel, le volet affiche les modifications depuis que la branche s'en est séparée, y compris vos modifications non validées. Sur la branche par défaut elle-même, ou sur une branche qui n'est pas en avance sur elle, le volet affiche uniquement vos modifications non validées.

190* **Diff de vos modifications** : lorsque le répertoire de la session se trouve dans un référentiel git, le volet diff d'un appareil connecté affiche vos modifications. L'appareil demande le diff sur la connexion, et Claude Code le calcule sur votre machine. Sur une branche qui a des commits en avance sur la branche par défaut du référentiel, le volet affiche les modifications depuis que la branche s'en est séparée, y compris vos modifications non validées. Sur la branche par défaut elle-même, ou sur une branche qui n'est pas en avance sur elle, le volet affiche uniquement vos modifications non validées. Avant v2.1.247, Claude Code signalait le diff aux appareils connectés uniquement dans les sessions servies par `claude remote-control`.186* **Modèle** : lorsque vous choisissez un [modèle](/docs/fr/model-config) depuis un appareil connecté, Claude Code exécute la session sur ce modèle. Nécessite Claude Code v2.1.238 ou version ultérieure. Un modèle que vous choisissez depuis le contrôle de modèle de l'appareil s'applique uniquement à la session actuelle. Lorsque vous envoyez `/model <name>` depuis l'appareil à une session interactive, Claude Code définit également votre défaut pour les nouvelles sessions.

191* **Modèle** : lorsque vous choisissez un [modèle](/docs/fr/model-config) depuis un appareil connecté, Claude Code exécute la session sur ce modèle. Le sélecteur `/model` du terminal, `/status` et `/config` affichent ce modèle. Nécessite Claude Code v2.1.238 ou version ultérieure.187* **Niveau d'effort** : lorsque vous définissez le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) depuis un appareil connecté, avec `/effort` ou le contrôle d'effort de l'appareil, Claude Code l'applique à la session sur votre machine. Si vous avez épinglé un niveau avec `CLAUDE_CODE_EFFORT_LEVEL`, la session conserve ce niveau, et Claude Code refuse un choix différent du contrôle d'effort. Choisir un niveau depuis le contrôle d'effort nécessite Claude Code v2.1.234 ou version ultérieure sur votre machine.

192 * Un modèle que vous choisissez depuis le contrôle de modèle de l'appareil s'applique uniquement à la session actuelle. Lorsque vous envoyez `/model <name>` depuis l'appareil à une session interactive, Claude Code définit également votre défaut pour les nouvelles sessions.

193 * Si vous envoyez un nom que Claude Code ne reconnaît pas, comme un nom d'affichage où un ID de modèle est attendu, Claude Code [refuse le choix](/docs/fr/errors#model-is-not-a-recognized-model-id) et la session conserve son modèle actuel. Avant v2.1.260, Claude Code enregistrait un choix non reconnu depuis le contrôle de modèle de l'appareil, et votre prochain message échouait.

194* **Niveau d'effort** : lorsque vous définissez le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) depuis un appareil connecté, avec `/effort` ou le contrôle d'effort de l'appareil, Claude Code l'applique à la session sur votre machine, et claude.ai/code affiche le niveau que la session utilise. Si vous avez épinglé un niveau avec `CLAUDE_CODE_EFFORT_LEVEL`, la session conserve ce niveau, et Claude Code refuse un choix différent du contrôle d'effort. Choisir un niveau depuis le contrôle d'effort nécessite Claude Code v2.1.234 ou version ultérieure sur votre machine.

195* **Reconnexion après une défaillance de connexion** : exécutez `/remote-control` pour vous reconnecter. Si la compaction a réécrit la conversation ou que vous avez basculé les conversations avec `/resume` entre-temps, Claude Code archive la session serveur qu'il utilisait au lieu de la laisser dans la liste des sessions. Vous pouvez toujours la trouver en [filtrant les sessions archivées](/docs/fr/claude-code-on-the-web#archive-sessions). Basculer les conversations tandis qu'un appareil est toujours connecté n'archive pas la session.188* **Reconnexion après une défaillance de connexion** : exécutez `/remote-control` pour vous reconnecter. Si la compaction a réécrit la conversation ou que vous avez basculé les conversations avec `/resume` entre-temps, Claude Code archive la session serveur qu'il utilisait au lieu de la laisser dans la liste des sessions. Vous pouvez toujours la trouver en [filtrant les sessions archivées](/docs/fr/claude-code-on-the-web#archive-sessions). Basculer les conversations tandis qu'un appareil est toujours connecté n'archive pas la session.

196 189 

197<h3 id="enable-remote-control-for-all-sessions">190<h3 id="enable-remote-control-for-all-sessions">


207Le même bouton bascule apparaît en dehors de la CLI :200Le même bouton bascule apparaît en dehors de la CLI :

208 201 

209* **Application Desktop** : **Settings > Claude Code > Enable remote control by default**.202* **Application Desktop** : **Settings > Claude Code > Enable remote control by default**.

210* **Extension VS Code** : **Enable Remote Control for all sessions** dans la section Paramètres du [menu de commande](/docs/fr/vs-code#use-the-prompt-box). Nécessite Claude Code v2.1.203 ou version ultérieure.203* **Extension VS Code** : **Enable Remote Control for all sessions** dans la section Paramètres du [menu de commande](/docs/fr/vs-code#use-the-prompt-box).

211 204 

212Pour activer l'auto-connexion à partir d'un fichier de paramètres à la place, définissez [`remoteControlAtStartup`](/docs/fr/settings-reference#remotecontrolatstartup) sur `true` dans votre fichier utilisateur `~/.claude/settings.json` ou dans les [paramètres gérés](/docs/fr/managed-settings). Dans les paramètres de projet ou locaux (`.claude/settings.json`, `.claude/settings.local.json`), Claude Code honore un `false` et désactive l'auto-connexion pour ce référentiel, mais ignore un `true`, afin qu'un fichier archivé ne puisse pas activer Remote Control pour tous ceux qui ouvrent le référentiel.205Pour activer l'auto-connexion à partir d'un fichier de paramètres à la place, définissez [`remoteControlAtStartup`](/docs/fr/settings-reference#remotecontrolatstartup) sur `true` dans votre fichier utilisateur `~/.claude/settings.json` ou dans les [paramètres gérés](/docs/fr/managed-settings). Dans les paramètres de projet ou locaux (`.claude/settings.json`, `.claude/settings.local.json`), Claude Code honore un `false` et désactive l'auto-connexion pour ce référentiel, mais ignore un `true`, afin qu'un fichier archivé ne puisse pas activer Remote Control pour tous ceux qui ouvrent le référentiel.

213 206 


227 220 

228Ces commandes fonctionnent pendant environ quatre heures après l'arrêt du serveur. Après cela, exécutez `claude remote-control` pour démarrer une nouvelle session. Si vous avez archivé une session entre-temps, `--continue` et `--session-id` la désarchive sur Claude Code v2.1.228 ou version ultérieure.221Ces commandes fonctionnent pendant environ quatre heures après l'arrêt du serveur. Après cela, exécutez `claude remote-control` pour démarrer une nouvelle session. Si vous avez archivé une session entre-temps, `--continue` et `--session-id` la désarchive sur Claude Code v2.1.228 ou version ultérieure.

229 222 

230Pour ramener une session que vous avez démarrée avec `claude --remote-control` ou `/remote-control`, reprenez la conversation avec `claude --continue` ou `claude --resume`. Que Claude Code se reconnecte, et à quelle session, dépend de l'[enregistrement de reconnexion](#resume-outcomes) de la conversation.223Pour ramener une session que vous avez démarrée avec `claude --remote-control` ou `/remote-control`, reprenez la conversation avec `claude --continue` ou `claude --resume`. Si Remote Control ne se reconnecte pas, voir [Couldn't reconnect to your Remote Control session](#couldnt-reconnect-to-your-remote-control-session).

231 224 

232Si vous reprenez la conversation dans un deuxième terminal tandis que le premier a toujours Remote Control activé, Claude Code affiche un avis dans le deuxième terminal et laisse Remote Control désactivé à la place de prendre la session au premier. Tandis que Remote Control reste désactivé là, Claude dans ce terminal ne voit pas [vos sessions sur d'autres machines](/docs/fr/cross-session-messaging#see-which-sessions-claude-can-reach), et elles ne peuvent pas le joindre. Exécutez `/remote-control` dans le deuxième terminal pour déplacer Remote Control vers celui-ci.225Si vous reprenez la conversation dans un deuxième terminal tandis que le premier a toujours Remote Control activé, Claude Code affiche un avis `Remote Control not started here` dans le deuxième terminal et laisse Remote Control désactivé à la place de prendre la session au premier. Exécutez `/remote-control` dans le deuxième terminal pour déplacer Remote Control vers celui-ci.

233 226 

234Lorsque vous reprenez une conversation dans Claude Desktop ou une extension IDE qui avait Remote Control activé, Claude Code la réattache à la session claude.ai existante au lieu d'en ajouter une nouvelle à la liste des sessions.227Lorsque vous reprenez une conversation dans Claude Desktop ou une extension IDE qui avait Remote Control activé, Claude Code la réattache à la session claude.ai existante au lieu d'en ajouter une nouvelle à la liste des sessions.

235 228 


239 232 

240Votre session Claude Code locale effectue uniquement des requêtes HTTPS sortantes et n'ouvre jamais de ports entrants sur votre machine. Lorsque vous démarrez Remote Control, il s'enregistre auprès de l'API Anthropic et interroge le travail. Lorsque vous vous connectez depuis un autre appareil, le serveur achemine les messages entre le client web ou mobile et votre session locale sur une connexion en continu.233Votre session Claude Code locale effectue uniquement des requêtes HTTPS sortantes et n'ouvre jamais de ports entrants sur votre machine. Lorsque vous démarrez Remote Control, il s'enregistre auprès de l'API Anthropic et interroge le travail. Lorsque vous vous connectez depuis un autre appareil, le serveur achemine les messages entre le client web ou mobile et votre session locale sur une connexion en continu.

241 234 

242Tout le trafic passe par l'API Anthropic sur TLS, le même transport de sécurité que n'importe quelle session Claude Code. La connexion utilise plusieurs identifiants de courte durée, chacun limité à un seul objectif et expirant indépendamment. Lorsque la credential d'enregistrement d'un serveur `claude remote-control` expire, le serveur s'enregistre à nouveau auprès de l'API Anthropic et continue de servir ses sessions.235Tout le trafic passe par l'API Anthropic sur TLS, le même transport de sécurité que n'importe quelle session Claude Code. La connexion utilise plusieurs identifiants de courte durée, chacun limité à un seul objectif et expirant indépendamment.

243 236 

244Pendant que Remote Control est connecté, la transcription de session, y compris vos messages, les réponses de Claude et l'activité des outils, est stockée sur les serveurs Anthropic. La transcription stockée maintient la conversation synchronisée sur vos appareils et permet à la session de se reconnecter après une interruption réseau. L'exécution et l'accès au système de fichiers restent sur votre machine, et les transcriptions stockées sont conservées selon la politique de [Utilisation des données](/docs/fr/data-usage).237Pendant que Remote Control est connecté, la transcription de session, y compris vos messages, les réponses de Claude et l'activité des outils, est stockée sur les serveurs Anthropic. La transcription stockée maintient la conversation synchronisée sur vos appareils et permet à la session de se reconnecter après une interruption réseau. L'exécution et l'accès au système de fichiers restent sur votre machine, et les transcriptions stockées sont conservées selon la politique de [Utilisation des données](/docs/fr/data-usage).

245 238 


309Pour un appareil perdu ou volé, le membre le supprime de cette page. Si le membre ne peut pas se connecter, un administrateur peut utiliser **Sign out everywhere** dans la console d'administration pour révoquer chaque session et appareil inscrit pour ce membre, après quoi le membre réinscrit les appareils qu'il possède toujours.302Pour un appareil perdu ou volé, le membre le supprime de cette page. Si le membre ne peut pas se connecter, un administrateur peut utiliser **Sign out everywhere** dans la console d'administration pour révoquer chaque session et appareil inscrit pour ce membre, après quoi le membre réinscrit les appareils qu'il possède toujours.

310 303 

311<h2 id="remote-control-vs-cloud-sessions">304<h2 id="remote-control-vs-cloud-sessions">

312 Remote Control vs cloud sessions305 Contrôle à distance vs sessions cloud

313</h2>306</h2>

314 307 

315Remote Control et [cloud sessions](/docs/fr/claude-code-on-the-web) utilisent tous deux l'interface claude.ai/code. La différence clé est l'endroit où la session s'exécute : Remote Control s'exécute sur votre machine, donc vos serveurs MCP locaux, outils et configuration de projet restent disponibles. Une cloud session s'exécute sur l'infrastructure cloud, gérée par défaut par Anthropic.308Le Contrôle à distance et les [sessions cloud](/docs/fr/claude-code-on-the-web) utilisent tous deux l'interface claude.ai/code. La différence clé est l'endroit où la session s'exécute : le Contrôle à distance s'exécute sur votre machine, de sorte que vos serveurs MCP locaux, outils et configuration de projet restent disponibles. Une session cloud s'exécute sur l'infrastructure cloud, gérée par Anthropic par défaut.

309 

310Utilisez le Contrôle à distance lorsque vous êtes au milieu d'un travail local et que vous souhaitez continuer à partir d'un autre appareil. Utilisez une session cloud lorsque vous souhaitez démarrer une tâche sans aucune configuration locale, travailler sur un dépôt que vous n'avez pas cloné, ou exécuter plusieurs tâches en parallèle. Un [projet](/docs/fr/claude-projects) combine les deux : ses threads s'exécutent dans le cloud, et il utilise le Contrôle à distance pour [exécuter un thread sur votre ordinateur](/docs/fr/claude-projects#run-a-thread-on-your-own-computer) lorsque vous en demandez un là.

311 

312Claude Code offre plusieurs façons de travailler quand vous n'êtes pas à votre terminal. Elles diffèrent par ce qui déclenche le travail, où Claude s'exécute et la quantité de configuration dont vous avez besoin.

316 313 

317Utilisez Remote Control lorsque vous êtes au milieu d'un travail local et que vous souhaitez continuer depuis un autre appareil. Utilisez une cloud session lorsque vous souhaitez lancer une tâche sans aucune configuration locale, travailler sur un référentiel que vous n'avez pas cloné, ou exécuter plusieurs tâches en parallèle.314| | Déclencheur | Claude s'exécute sur | Configuration | Idéal pour |

315| :- | :- | :- | :- | :- |

316| [Dispatch](/docs/fr/desktop#sessions-from-dispatch) | Envoyer une tâche depuis l'application mobile Claude | Votre machine (Desktop) | [Associer l'application mobile à Desktop](https://support.claude.com/en/articles/13947068) | Déléguer du travail quand vous êtes absent, configuration minimale |

317| [Remote Control](/docs/fr/remote-control) | Piloter une session en cours depuis [claude.ai/code](https://claude.ai/code) ou l'application mobile Claude | Votre machine (CLI, Desktop ou VS Code) | Exécuter [`claude remote-control` ou `/remote-control`](/docs/fr/remote-control#start-a-remote-control-session) | Diriger le travail en cours depuis un autre appareil |

318| [Channels](/docs/fr/channels) | Envoyer des événements depuis une application de chat comme Telegram ou Discord, ou votre propre serveur | Votre machine (CLI) | [Installer un plugin de canal](/docs/fr/channels#quickstart) ou [créer le vôtre](/docs/fr/channels-reference) | Réagir à des événements externes comme les échecs CI ou les messages de chat |

319| [Slack](/docs/fr/slack) | Mentionner `@Claude` dans un canal d'équipe | Cloud Anthropic | [Installer l'application Slack](/docs/fr/slack#setting-up-claude-code-in-slack) avec [Claude Code sur le web](/docs/fr/claude-code-on-the-web) activé | PRs et révisions depuis le chat d'équipe |

320| [Environnements auto-hébergés](/docs/fr/self-hosted-environments) | Démarrer une [session cloud](/docs/fr/claude-code-on-the-web) et choisir l'environnement de votre organisation | Infrastructure de votre organisation | [Déployer des runners](/docs/fr/self-hosted-environments-quickstart), sur les plans Team et Enterprise | Sessions cloud qui doivent s'exécuter dans votre réseau |

321| [Tâches planifiées](/docs/fr/scheduled-tasks) | Définir un calendrier | [CLI](/docs/fr/scheduled-tasks), [Desktop](/docs/fr/desktop-scheduled-tasks), ou [cloud](/docs/fr/routines) | Choisir une fréquence | Automatisation récurrente comme les révisions quotidiennes |

318 322 

319<h2 id="mobile-push-notifications">323<h2 id="mobile-push-notifications">

320 Notifications push mobiles324 Notifications push mobiles


322 326 

323Lorsque Remote Control est actif, Claude peut envoyer des notifications push à votre téléphone.327Lorsque Remote Control est actif, Claude peut envoyer des notifications push à votre téléphone.

324 328 

325Claude décide quand envoyer une notification. Il en envoie généralement une lorsqu'une tâche longue se termine ou lorsqu'il a besoin d'une décision de votre part pour continuer. Vous pouvez également demander une notification dans votre message, par exemple `notify me when the tests finish`. Au-delà des deux boutons marche/arrêt ci-dessous, il n'y a pas de configuration par événement.329Claude décide quand envoyer une notification. Il en envoie généralement une lorsqu'une tâche longue se termine ou lorsqu'il a besoin d'une décision de votre part pour continuer. Vous pouvez également demander une notification dans votre invite, par exemple `notify me when the tests finish`. Au-delà des deux bascules marche/arrêt ci-dessous, il n'y a pas de configuration par événement.

326 330 

327Pour configurer les notifications push mobiles :331Pour configurer les notifications push mobiles :

328 332 

329<Steps>333<Steps>

330 <Step title="Installer l'application Claude mobile">334 <Step title="Installer l'application mobile Claude">

331 Téléchargez l'application Claude pour [iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) ou [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude).335 Téléchargez l'application Claude pour [iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) ou [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude).

332 </Step>336 </Step>

333 337 

334 <Step title="Connectez-vous avec votre compte Claude Code">338 <Step title="Se connecter avec votre compte Claude Code">

335 Utilisez le même compte et la même organisation que vous utilisez pour Claude Code dans le terminal.339 Utilisez le même compte et la même organisation que vous utilisez pour Claude Code dans le terminal.

336 </Step>340 </Step>

337 341 


339 Acceptez l'invite de permission de notification du système d'exploitation.343 Acceptez l'invite de permission de notification du système d'exploitation.

340 </Step>344 </Step>

341 345 

342 <Step title="Activer les notifications dans Claude Code">346 <Step title="Activer push dans Claude Code">

343 Dans votre terminal, exécutez `/config` et activez **Push when Claude decides** pour les notifications proactives, **Push when actions required** pour les invites de permission et les questions, ou les deux.347 Dans votre terminal, exécutez `/config` et activez **Push when Claude decides** pour les notifications proactives, **Push when actions required** pour les invites de permission et les questions, ou les deux.

344 </Step>348 </Step>

345</Steps>349</Steps>


347Si les notifications n'arrivent pas :351Si les notifications n'arrivent pas :

348 352 

349* Si `/config` affiche **No mobile registered**, ouvrez l'application Claude sur votre téléphone pour qu'elle puisse actualiser son jeton push. L'avertissement disparaît la prochaine fois que Remote Control se connecte.353* Si `/config` affiche **No mobile registered**, ouvrez l'application Claude sur votre téléphone pour qu'elle puisse actualiser son jeton push. L'avertissement disparaît la prochaine fois que Remote Control se connecte.

350* Sur iOS, les modes Focus et les résumés de notifications peuvent supprimer ou retarder les notifications. Vérifiez Paramètres → Notifications → Claude.354* Sur iOS, les modes Focus et les résumés de notifications peuvent supprimer ou retarder les notifications push. Vérifiez Paramètres → Notifications → Claude.

351* Sur Android, l'optimisation agressive de la batterie peut retarder la livraison. Exemptez l'application Claude de l'optimisation de la batterie dans les paramètres système.355* Sur Android, l'optimisation agressive de la batterie peut retarder la livraison. Exemptez l'application Claude de l'optimisation de la batterie dans les paramètres système.

352 356 

353Claude Code ignore les notifications push mobiles pendant que vous tapez ou que vous êtes concentré sur le terminal connecté. À partir de la v2.1.181, vous pouvez définir [`CLAUDE_CLIENT_PRESENCE_FILE`](/docs/fr/env-vars) sur un chemin de fichier marqueur pour étendre cela à tout moment où vous êtes à la machine, même dans une autre fenêtre : les notifications sont ignorées tant que le fichier existe. Configurez un écouteur de verrouillage d'écran ou un outil similaire pour créer le fichier lorsque votre écran se déverrouille et le supprimer lorsque votre écran se verrouille.357Claude Code ignore les notifications push mobiles pendant que vous tapez ou que vous êtes concentré sur le terminal connecté. Pour étendre cela à tout moment où vous êtes à la machine, même dans une autre fenêtre, définissez [`CLAUDE_CLIENT_PRESENCE_FILE`](/docs/fr/env-vars) sur un chemin de fichier marqueur : les notifications sont ignorées tant que le fichier existe. Configurez un écouteur de verrouillage d'écran ou un outil similaire pour créer le fichier lorsque votre écran se déverrouille et le supprimer lorsque votre écran se verrouille.

354 358 

355<h2 id="limitations">359<h2 id="limitations">

356 Limitations360 Limitations

357</h2>361</h2>

358 362 

359* **Une session distante par processus interactif** : en dehors du mode serveur, chaque instance Claude Code prend en charge une session distante à la fois. Utilisez le [mode serveur](#start-a-remote-control-session) pour exécuter plusieurs sessions concurrentes à partir d'un seul processus.363* **Une session distante par processus interactif** : en dehors du mode serveur, chaque instance Claude Code prend en charge une session distante à la fois. Utilisez le [mode serveur](#start-a-remote-control-session) pour exécuter plusieurs sessions simultanées à partir d'un seul processus.

360* **Le processus local doit continuer à s'exécuter** : Remote Control s'exécute en tant que processus local. Si vous fermez le terminal, quittez VS Code, ou arrêtez autrement le processus `claude`, la session se met hors ligne jusqu'à ce que vous la [rétablissiez](#resume-sessions-after-stopping-the-server). Sauf si Claude est en train d'effectuer une tâche, claude.ai et l'application Claude affichent la session comme hors ligne quelques secondes après la fermeture du processus. Pour maintenir une session en cours d'exécution sur une machine distante après vous être déconnecté de SSH, démarrez-la dans `tmux` ou `screen`.364* **Le processus local doit rester actif** : Remote Control s'exécute en tant que processus local. Si vous fermez le terminal, quittez l'application de bureau ou VS Code, ou arrêtez autrement le processus `claude`, la session se met hors ligne jusqu'à ce que vous la [rétablissiez](#resume-sessions-after-stopping-the-server). Pour maintenir une session en cours d'exécution sur une machine distante après vous être déconnecté de SSH, démarrez-la dans `tmux` ou `screen`.

361* **Sessions plantées en mode serveur** : si une session servie par `claude remote-control` plante, envoyez-lui un message à partir d'un appareil connecté. Claude Code la sert à nouveau. Vous n'avez pas besoin de redémarrer le serveur. Nécessite Claude Code v2.1.238 ou ultérieur.365* **Sessions plantées en mode serveur** : si une session servie par `claude remote-control` plante, envoyez-lui un message depuis un appareil connecté. Claude Code la sert à nouveau. Vous n'avez pas besoin de redémarrer le serveur. Nécessite Claude Code v2.1.238 ou version ultérieure.

362* **Refus HTTP 403 sur une session connectée** : une fois qu'une session interactive est connectée, Claude Code continue à réessayer pendant trois minutes au maximum lorsque quelque chose entre votre machine et les serveurs d'Anthropic répond avec HTTP 403, ce qui peut se produire après un changement de VPN ou de réseau. Si les refus durent plus longtemps, Claude Code se déconnecte, et la raison indique ce qui a refusé : un edge réseau, ou un proxy, VPN, ou pare-feu sur votre propre réseau.366* **Refus HTTP 403 sur une session connectée** : une fois qu'une session interactive est connectée, Claude Code continue à réessayer pendant trois minutes au maximum lorsque quelque chose entre votre machine et les serveurs d'Anthropic répond avec HTTP 403, ce qui peut se produire après un changement de VPN ou de réseau. Si les refus persistent plus longtemps, Claude Code se déconnecte, et la raison indique ce qui a refusé : une périphérie réseau, ou un proxy, un VPN ou un pare-feu sur votre propre réseau.

363* **Panne réseau prolongée** : si votre machine est allumée mais incapable d'atteindre le réseau, ce que vous faites ensuite dépend du mode :367* **Panne réseau prolongée** : si votre machine est allumée mais ne peut pas accéder au réseau, ce que vous faites ensuite dépend du mode :

364 * **Mode serveur** : Claude Code abandonne après environ 10 minutes et le processus `claude remote-control` se termine. Exécutez `claude remote-control` à nouveau pour démarrer une nouvelle session.368 * **Mode serveur** : Claude Code abandonne après environ 10 minutes et le processus `claude remote-control` se termine. Exécutez `claude remote-control` à nouveau pour démarrer une nouvelle session.

365 * **Session interactive** : continuez à travailler localement. Claude Code réessaye aussi longtemps que la panne dure et se reconnecte automatiquement lorsque le réseau revient.369 * **Session interactive** : continuez à travailler localement. Claude Code réessaie aussi longtemps que la panne dure et se reconnecte automatiquement lorsque le réseau revient.

366* **Battements de cœur de présence échouant** : si une session interactive se déconnecte avec `could not reach the Remote Control server for about 30 minutes`, exécutez `/remote-control` pour vous reconnecter. Claude Code affiche ce message uniquement lorsque les battements de cœur de présence de la session ont échoué tandis que le reste de la connexion est resté actif ; il réenregistre la session pendant environ 30 minutes avant de se déconnecter.370* **Échec des pulsations de présence** : si une session interactive se déconnecte avec « could not reach the Remote Control server for about 30 minutes », exécutez `/remote-control` pour vous reconnecter.

367* **Les dialogues transférés expirent** : Claude Code maintient les invites de permission et les questions `AskUserQuestion` ouvertes jusqu'à ce que vous y répondiez. Lorsque Claude Code transfère un autre type de dialogue à la session distante, comme l'invite de sélection de modèle affichée après un refus de sécurité, il attend cinq minutes par défaut, puis ferme le dialogue et continue avec la valeur par défaut sans action du dialogue. Définissez [`dialogExpiry`](/docs/fr/settings-reference#dialogexpiry) pour ajuster ou désactiver la limite. Nécessite Claude Code v2.1.224 ou ultérieur.371* **Les dialogues transférés expirent** : Claude Code garde les invites de permission et les questions `AskUserQuestion` ouvertes jusqu'à ce que vous y répondiez. Lorsque Claude Code transfère un autre type de dialogue à la session distante, comme l'invite de choix de modèle affichée après un refus de sécurité, il attend cinq minutes par défaut, puis ferme le dialogue et continue avec la valeur par défaut sans action du dialogue. Définissez [`dialogExpiry`](/docs/fr/settings-reference#dialogexpiry) pour ajuster ou désactiver la limite. Nécessite Claude Code v2.1.224 ou version ultérieure.

368* **L'invite de consentement Fable usage-credits n'est pas transférée** : Claude Code affiche l'invite de consentement [Fable usage-credits](/docs/fr/model-config#fable-and-usage-credits) en milieu de session uniquement où la session s'exécute, pas sur votre appareil. Lorsque la session s'exécute dans un terminal et que personne là-bas ne répond avant que Claude Code ne ferme l'invite, le tour se termine sans envoyer la demande ; voir [L'invite de confirmation n'a pas reçu de réponse](/docs/fr/errors#the-prompt-to-confirm-went-unanswered).372* **L'invite de consentement des crédits d'utilisation Fable n'est pas transférée** : Claude Code affiche l'invite de consentement des crédits d'utilisation [Fable](/docs/fr/model-config#fable-and-usage-credits) en milieu de session uniquement où la session s'exécute, pas sur votre appareil. Lorsque la session s'exécute dans un terminal et que personne là-bas ne répond avant que Claude Code ne ferme l'invite, le tour se termine sans envoyer la demande ; voir [The prompt to confirm went unanswered](/docs/fr/errors#the-prompt-to-confirm-went-unanswered).

369* **Certaines commandes sont locales uniquement** : les commandes qui s'exécutent uniquement dans l'interface du terminal, telles que `/plugin` ou `/resume`, fonctionnent uniquement à partir de la CLI locale, que vous transmettiez un argument ou non. Les commandes suivantes fonctionnent à partir du mobile et du web :373* **Certaines commandes sont locales uniquement** : les commandes qui s'exécutent uniquement dans l'interface du terminal, telles que `/plugin` ou `/resume`, fonctionnent uniquement à partir de la CLI locale, que vous transmettiez un argument ou non. Les éléments suivants fonctionnent à partir d'appareils mobiles et du web :

370 * Commandes de sortie textuelle : `/compact`, `/clear`, `/context`, `/usage`, `/exit`, `/usage-credits`, `/recap`, et `/reload-plugins`. `/usage-credits` affiche l'URL de facturation au lieu d'ouvrir un navigateur. `/reload-plugins` fonctionne uniquement lorsque la session s'exécute dans un terminal interactif ; une session sans celui-ci le refuse.374 * Commandes de sortie textuelle : `/compact`, `/clear`, `/context`, `/usage`, `/exit`, `/usage-credits`, `/recap`, et `/reload-plugins`. `/usage-credits` imprime l'URL de facturation au lieu d'ouvrir un navigateur. `/reload-plugins` fonctionne uniquement lorsque la session s'exécute dans un terminal interactif ; une session sans celui-ci le refuse.

371 * `/model`, `/effort`, `/fast`, `/color`, et `/rename` : transmettez la valeur en tant qu'argument, par exemple `/model sonnet` ou `/effort high`. À partir du mobile et du web, `/model` et `/effort` prennent l'argument à la place du sélecteur du terminal ou du curseur.375 * `/model`, `/effort`, `/fast`, `/color`, et `/rename` : transmettez la valeur en tant qu'argument, par exemple `/model sonnet` ou `/effort high`. À partir d'appareils mobiles et du web, `/model` et `/effort` prennent l'argument à la place du sélecteur de terminal ou du curseur.

372 * `/mcp` : à partir de l'application mobile, retourne un résumé textuel de l'état du serveur au lieu d'ouvrir le sélecteur. Sur le web, `/mcp` seul ouvre un répertoire des [connecteurs claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai) au lieu de retourner le résumé. Les sous-commandes `reconnect`, `enable`, et `disable` [](/docs/fr/commands#all-commands) fonctionnent à partir des deux. Contrairement à la CLI locale, `/mcp reconnect` sans nom de serveur reconnecte tous les serveurs qui ont échoué ou nécessitent une authentification.376 * `/mcp` : à partir de l'application mobile, retourne un résumé textuel de l'état du serveur au lieu d'ouvrir le sélecteur. Sur le web, `/mcp` seul ouvre un répertoire des [connecteurs claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai) au lieu de retourner le résumé. Les [sous-commandes](/docs/fr/commands#all-commands) `reconnect`, `enable`, et `disable` fonctionnent à partir des deux. Contrairement à la CLI locale, `/mcp reconnect` sans nom de serveur reconnecte tous les serveurs qui ont échoué ou nécessitent une authentification.

373 * `/config` : à partir de l'application mobile, transmettez `key=value` pour définir un paramètre, ou exécutez-le sans argument pour lister les clés que vous pouvez définir. Sur le web, `/config` ouvre la section Claude Code de vos paramètres à la place, et ignore le texte après la commande.377 * `/config` : à partir de l'application mobile, transmettez `key=value` pour définir un paramètre, ou exécutez-le sans argument pour lister les clés que vous pouvez définir. Sur le web, `/config` ouvre plutôt la section Claude Code de vos paramètres et ignore le texte après la commande.

374 * Sur Team et Enterprise, `/usage-credits` à partir du mobile ou du web n'envoie pas une [demande usage-credits à votre administrateur](/docs/fr/costs#add-usage-credits-to-your-subscription). L'envoi nécessite une confirmation qui n'apparaît que dans la CLI interactive, donc la commande vous dit de l'exécuter là à la place. Avant la v2.1.211, le formulaire textuel envoyait la demande sans confirmation.378 * Sur Team et Enterprise, `/usage-credits` à partir d'appareils mobiles ou du web n'envoie pas une [demande de crédits d'utilisation à votre administrateur](/docs/fr/costs#add-usage-credits-to-your-subscription). L'envoi nécessite une confirmation qui n'apparaît que dans la CLI interactive, donc la commande vous dit de l'exécuter là à la place.

375 * `/autocompact`, à partir de la v2.1.221 : transmettez la taille de la fenêtre en tant qu'argument, par exemple `/autocompact 500k`. Sans argument, il affiche la taille de fenêtre actuelle sous forme de texte au lieu d'ouvrir le dialogue que la commande affiche dans une session de terminal.379 * `/autocompact`, à partir de v2.1.221 : transmettez la taille de la fenêtre en tant qu'argument, par exemple `/autocompact 500k`. Sans argument, il imprime la taille actuelle de la fenêtre sous forme de texte au lieu d'ouvrir le dialogue que la commande affiche dans une session de terminal.

376 * `/advisor`, à partir de la v2.1.260 : transmettez le modèle en tant qu'argument, par exemple `/advisor opus`, ou transmettez `off` pour désactiver le conseiller. Les deux formes s'appliquent à la session actuelle uniquement et laissent votre valeur par défaut enregistrée inchangée. Sans argument, il affiche le conseiller actuel sous forme de texte au lieu d'ouvrir le sélecteur.380 * `/advisor`, à partir de v2.1.260 : transmettez le modèle en tant qu'argument, par exemple `/advisor opus`, ou transmettez `off` pour désactiver le conseiller. Les deux formes s'appliquent à la session actuelle uniquement et laissent votre valeur par défaut enregistrée inchangée. Sans argument, il imprime le conseiller actuel sous forme de texte au lieu d'ouvrir le sélecteur.

377 * `/output-style`, à partir de la v2.1.269 : transmettez le nom du style en tant qu'argument, par exemple `/output-style concise`, ou exécutez-le sans argument pour lister les styles. À partir du mobile et du web, vous pouvez lister et sélectionner uniquement les [styles intégrés](/docs/fr/output-styles#built-in-output-styles). Pour utiliser un [style personnalisé](/docs/fr/output-styles#create-a-custom-output-style), sélectionnez-le dans la session elle-même.381 * `/output-style`, à partir de v2.1.269 : transmettez le nom du style en tant qu'argument, par exemple `/output-style concise`, ou exécutez-le sans argument pour lister les styles. À partir d'appareils mobiles et du web, vous pouvez lister et sélectionner uniquement les [styles intégrés](/docs/fr/output-styles#built-in-output-styles). Pour utiliser un [style personnalisé](/docs/fr/output-styles#create-a-custom-output-style), sélectionnez-le dans la session elle-même.

382 * `/focus`, à partir de v2.1.281 : transmettez `on` ou `off` en tant qu'argument, par exemple `/focus on`, ou exécutez-le sans argument pour basculer la [vue de focus](/docs/fr/commands#all-commands). Les deux formes s'appliquent à la session actuelle uniquement et laissent votre sélection enregistrée inchangée.

378 383 

379<h2 id="troubleshooting">384<h2 id="troubleshooting">

380 Dépannage385 Dépannage


392 397 

393Exécutez `claude auth login` et choisissez l'option claude.ai. Si le message nomme `ANTHROPIC_API_KEY` ou `ANTHROPIC_AUTH_TOKEN`, supprimez-le partout où il est défini : votre environnement shell ou le bloc `env` d'un [fichier de paramètres](/docs/fr/settings-reference#env). S'il nomme `apiKeyHelper`, supprimez ce paramètre.398Exécutez `claude auth login` et choisissez l'option claude.ai. Si le message nomme `ANTHROPIC_API_KEY` ou `ANTHROPIC_AUTH_TOKEN`, supprimez-le partout où il est défini : votre environnement shell ou le bloc `env` d'un [fichier de paramètres](/docs/fr/settings-reference#env). S'il nomme `apiKeyHelper`, supprimez ce paramètre.

394 399 

395Avant la v2.1.206, l'exécution de `/remote-control` alors que vous étiez déconnecté signalait « Unknown command: /remote-control » au lieu de ce message.

396 

397<h3 id="remote-control-requires-a-full-scope-login-token">400<h3 id="remote-control-requires-a-full-scope-login-token">

398 « Remote Control requires a full-scope login token »401 « Remote Control requires a full-scope login token »

399</h3>402</h3>


410 « Remote Control isn't enabled for this account »413 « Remote Control isn't enabled for this account »

411</h3>414</h3>

412 415 

413Claude Code a vérifié la disponibilité de Remote Control pour le compte auquel vous êtes connecté et la vérification a indiqué que c'était désactivé. La cause habituelle est des droits en cache qui sont obsolètes après un changement de plan. Exécutez `claude auth logout` puis `claude auth login` pour les actualiser, et mettez à jour Claude Code si vous utilisez une ancienne version.416Claude Code a vérifié la disponibilité de Remote Control pour le compte auquel vous êtes connecté et la vérification a échoué. La cause habituelle est des droits en cache qui sont obsolètes après un changement de plan. Exécutez `claude auth logout` puis `claude auth login` pour les actualiser, et mettez à jour Claude Code si vous utilisez une ancienne version.

414 417 

415Exécutez `claude doctor` pour voir quelle vérification d'éligibilité individuelle a échoué. Les conflits de variables d'environnement, les vérifications inaccessibles et le paramètre Remote Control de votre organisation produisent chacun leur propre message, donc cette erreur signifie que la vérification au niveau du compte elle-même.418Exécutez `claude doctor` pour voir quelle vérification d'éligibilité individuelle a échoué. Les conflits de variables d'environnement, les vérifications inaccessibles et le paramètre Remote Control de votre organisation produisent chacun leur propre message, donc cette erreur signifie que la vérification au niveau du compte elle-même.

416 419 

417Avant la v2.1.239, ce message disait « Remote Control is not yet enabled for your account ». Avant la v2.1.154, une variable qui désactive l'évaluation des feature flags, comme `DISABLE_TELEMETRY` ou `DO_NOT_TRACK`, produisait également ce message ; l'entrée « Remote Control requires feature-flag evaluation » ci-dessous couvre cette configuration.420Avant la v2.1.239, ce message disait « Remote Control is not yet enabled for your account ».

418 421 

419<h3 id="couldn’t-verify-remote-control-eligibility">422<h3 id="couldn’t-verify-remote-control-eligibility">

420 « Couldn't verify Remote Control eligibility »423 « Couldn't verify Remote Control eligibility »

421</h3>424</h3>

422 425 

423Claude Code n'a pas pu atteindre le service de feature flags pour vérifier si Remote Control est activé pour votre compte, généralement parce que vous êtes hors ligne ou qu'un proxy bloque la demande. Réessayez une fois que vous avez accès au réseau, ou exécutez `claude doctor` pour plus de détails. Le message connexe « Couldn't verify your organization's Remote Control policy » signifie que Claude Code n'a pas pu lire cette politique, et a la même solution. Les deux messages ont été ajoutés dans la v2.1.178.426Claude Code n'a pas pu atteindre le service de feature-flag pour vérifier si Remote Control est activé pour votre compte, généralement parce que vous êtes hors ligne ou qu'un proxy bloque la demande. Réessayez une fois que vous avez accès au réseau, ou exécutez `claude doctor` pour plus de détails. Le message associé « Couldn't verify your organization's Remote Control policy » signifie que Claude Code a rencontré une erreur lors de la lecture de cette politique, et a le même correctif.

424 427 

425<h3 id="remote-control-requires-feature-flag-evaluation">428<h3 id="remote-control-requires-feature-flag-evaluation">

426 « Remote Control requires feature-flag evaluation »429 « Remote Control requires feature-flag evaluation »

427</h3>430</h3>

428 431 

429L'une de ces variables est définie : [`DISABLE_TELEMETRY`, `DO_NOT_TRACK`, `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, ou `DISABLE_GROWTHBOOK`](/docs/fr/env-vars). Chacune d'elles désactive l'évaluation des feature flags dont dépend la disponibilité de Remote Control, et le message complet nomme la variable que Claude Code a trouvée. Annulez la définition de cette variable partout où elle est définie, dans votre environnement shell ou dans le bloc `env` d'un [fichier `settings.json`](/docs/fr/settings-reference#all-settings). Sur les versions antérieures à 2.1.154, la même configuration produit « Remote Control is not yet enabled for your account » à la place.432Une [variable d'environnement](/docs/fr/env-vars#features-that-need-feature-flag-fetching) qui désactive l'évaluation des feature-flags est définie, et le message complet nomme la variable que Claude Code a trouvée. Sur les versions antérieures à 2.1.154, la même configuration produit « Remote Control is not yet enabled for your account » à la place. Ce qu'il faut faire dépend de la variable que le message nomme :

433 

434* **`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` ou `DISABLE_GROWTHBOOK`** : déactivez la variable partout où elle est définie, dans votre environnement shell ou dans le bloc `env` d'un [fichier `settings.json`](/docs/fr/settings-reference#all-settings).

435* **`DISABLE_TELEMETRY` ou `DO_NOT_TRACK`** : sur un plan Pro, Max, Team ou Enterprise avec `DISABLE_GROWTHBOOK` désactivé, ces variables laissent Remote Control disponible sauf si votre organisation exige [Trusted Devices](#trusted-devices). Si c'est le cas, déactivez la variable partout où elle est définie pour utiliser Remote Control. De la v2.1.154 à la v2.1.282, l'une ou l'autre variable produisait ce message, donc mettez à jour Claude Code vers la v2.1.283 ou ultérieure.

430 436 

431<h3 id="remote-control-is-only-available-when-using-claude-via-api-anthropic-com">437<h3 id="remote-control-is-only-available-when-using-claude-via-api-anthropic-com">

432 « Remote Control is only available when using Claude via api.anthropic.com »438 « Remote Control is only available when using Claude via api.anthropic.com »

433</h3>439</h3>

434 440 

435La session ne communique pas directement avec l'API Anthropic, il n'y a donc pas de backend claude.ai pour l'associer. Cela se produit sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry. Cela se produit également lorsque [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) pointe vers un hôte autre que `api.anthropic.com`, comme une [passerelle LLM](/docs/fr/llm-gateway) ou un proxy, même si vous vous connectez avec claude.ai. Avant la v2.1.196, Claude Code n'affichait pas ce message pour un `ANTHROPIC_BASE_URL` personnalisé. Consultez la [référence des erreurs](/docs/fr/errors#remote-control-requires-the-anthropic-api) pour la liste complète des causes.441La session ne communique pas directement avec l'API Anthropic, il n'y a donc pas de backend claude.ai pour l'associer. Cela se produit sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry. Cela se produit également lorsque [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) pointe vers un hôte autre que `api.anthropic.com`, comme une [passerelle LLM](/docs/fr/llm-gateway) ou un proxy, même si vous vous connectez avec claude.ai. Consultez la [référence des erreurs](/docs/fr/errors#remote-control-requires-the-anthropic-api) pour la liste complète des causes.

436 442 

437Le message nomme ce qui a routé la session loin de l'API Anthropic, comme `CLAUDE_CODE_USE_BEDROCK` ou un `ANTHROPIC_BASE_URL` personnalisé. Si vous avez une connexion claude.ai éligible, annulez la définition de la variable nommée, supprimez-la de la clé `env` dans [les paramètres](/docs/fr/settings) si vous l'avez définie là, et redémarrez la session. Avant la v2.1.219, le message était seulement la phrase dans l'en-tête de cette section, donc sur les versions plus anciennes, vérifiez vous-même votre environnement pour les variables de fournisseur comme `CLAUDE_CODE_USE_BEDROCK` et `CLAUDE_CODE_USE_VERTEX`, et pour `ANTHROPIC_BASE_URL`.443Le message nomme ce qui a routé la session loin de l'API Anthropic, comme `CLAUDE_CODE_USE_BEDROCK` ou une `ANTHROPIC_BASE_URL` personnalisée. Si vous avez une connexion claude.ai éligible, déactivez la variable nommée, supprimez-la de la clé `env` dans [paramètres](/docs/fr/settings) si vous l'avez définie là, et redémarrez la session.

438 444 

439<h3 id="remote-control-is-disabled-by-your-organization’s-policy">445<h3 id="remote-control-is-disabled-by-your-organization’s-policy">

440 « Remote Control is disabled by your organization's policy »446 « Remote Control is disabled by your organization's policy »

441</h3>447</h3>

442 448 

443Une politique bloque Remote Control, ou Claude Code n'a pas pu charger la politique de votre organisation sur cette machine et garde Remote Control désactivé en attendant. Vérifiez ces causes dans l'ordre :449Une politique bloque Remote Control. Vérifiez ces causes dans l'ordre :

450 

451* **L'erreur mentionne `disableRemoteControl`** : votre administrateur informatique a désactivé Remote Control sur cet appareil via [paramètres gérés](/docs/fr/managed-settings), indépendamment du bouton bascule à l'échelle de l'organisation et de la façon dont vous êtes connecté.

452* **Votre plan claude.ai est Pro ou Max** : Claude Code est toujours connecté sous une organisation Team ou Enterprise depuis une connexion antérieure, il vérifie donc la politique Remote Control de cette organisation. Exécutez `/status` pour voir quel plan et quelle organisation votre connexion utilise. Exécutez `claude auth logout` puis `claude auth login` pour vous reconnecter sous votre plan actuel.

453* **Le message ne dit pas de contacter votre administrateur d'organisation** : votre organisation a une configuration HIPAA qui est incompatible avec Remote Control, et `/status` liste `HIPAA` dans sa ligne `Compliance`. Dans cet état, le bouton bascule Remote Control du panneau d'administration est grisé, donc un propriétaire ne peut pas le modifier là. Contactez le support Anthropic pour discuter des options. Avant la v2.1.267, ce cas affichait « Remote Control isn't available for your organization due to its compliance policy » à la place.

454* **Sinon, un propriétaire ne l'a pas activé pour votre organisation** : Remote Control est désactivé par défaut sur les plans Team et Enterprise. Un propriétaire peut l'activer sur [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) en activant le bouton bascule **Remote Control**. Ce bouton bascule est un paramètre d'organisation côté serveur.

455 

456Avant la v2.1.281, ce message apparaissait également lorsque Claude Code n'avait pas chargé la politique de votre organisation sur cette machine, par exemple après un démarrage hors ligne. Les versions ultérieures signalent cet état comme [`Couldn't verify your organization's policy for remote control`](#couldnt-verify-your-organizations-policy-for-remote-control) à la place.

457 

458<h3 id="couldnt-verify-your-organizations-policy-for-remote-control">

459 « Couldn't verify your organization's policy for remote control »

460</h3>

461 

462Claude Code n'a pas pu récupérer la politique de votre organisation et n'a pas de copie enregistrée sur cette machine à utiliser à la place, il garde donc Remote Control désactivé jusqu'à ce qu'il puisse confirmer que votre organisation l'autorise. Cela se produit généralement lorsque vous démarrez Claude Code hors ligne ou avant qu'un VPN se connecte, ou lorsqu'un proxy interfère avec la demande. Sur une connexion lente, cela peut également apparaître pendant que la première demande est encore en cours.

444 463 

445* **L'erreur mentionne `disableRemoteControl`** : votre administrateur informatique a désactivé Remote Control sur cet appareil via les [paramètres gérés](/docs/fr/managed-settings), indépendamment du bouton bascule à l'échelle de l'organisation et de la façon dont vous êtes connecté.464Le message prend l'une de ces formes :

446* **Votre plan claude.ai est Pro ou Max** : Claude Code est toujours connecté sous une organisation Team ou Enterprise d'une connexion antérieure, il vérifie donc la politique Remote Control de cette organisation. Exécutez `/status` pour voir quel plan et quelle organisation votre connexion utilise. Exécutez `claude auth logout` puis `claude auth login` pour vous reconnecter sous votre plan actuel.465 

447* **La politique de l'organisation n'a pas été chargée sur cette machine** : exécutez `claude doctor` et lisez la ligne `Organization policy`. Si la ligne montre que la politique n'est pas chargée, c'est ce qui garde Remote Control désactivé. Avant la v2.1.261, `claude doctor` n'imprimait pas cette ligne.466* Depuis `/remote-control`, `claude remote-control` ou `claude --remote-control` : « Couldn't verify your organization's policy for remote control. Check your network connection and try again. »

448* **Le message ne dit pas de contacter votre administrateur d'organisation** : votre organisation a une configuration HIPAA qui est incompatible avec Remote Control, et `/status` liste `HIPAA` dans sa ligne `Compliance`. Dans cet état, le bouton bascule Remote Control du panneau d'administration est grisé, donc un Owner ne peut pas le modifier là. Contactez le support Anthropic pour discuter des options. Avant la v2.1.267, ce cas affichait « Remote Control isn't available for your organization due to its compliance policy » à la place.467* Depuis [auto-connect](#enable-remote-control-for-all-sessions) lorsqu'une session démarre : « couldn't verify your organization's policy — check your network connection and try again », préfixé par « Remote Control failed » dans la notification et « Remote Control disconnected » dans la conversation. La session laisse alors Remote Control désactivé.

449* **Sinon, un Owner ne l'a pas activé pour votre organisation** : Remote Control est désactivé par défaut sur les plans Team et Enterprise. Un Owner peut l'activer sur [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) en activant le bouton bascule **Remote Control**. Ce bouton bascule est un paramètre d'organisation côté serveur.468 

469Restaurez votre connexion réseau, puis exécutez `/remote-control` ou exécutez à nouveau la commande. Chaque tentative vérifie à nouveau la politique, vous n'avez donc pas besoin de redémarrer Claude Code. Si le message continue à apparaître, exécutez `claude doctor` et lisez sa ligne `Organization policy`, qui indique pourquoi la politique n'a pas été chargée.

470 

471Avant la v2.1.281, cet état affichait « Remote Control is disabled by your organization's policy » à la place.

450 472 

451<h3 id="remote-credentials-fetch-failed">473<h3 id="remote-credentials-fetch-failed">

452 « Remote credentials fetch failed »474 « Remote credentials fetch failed »


464* Problème de réseau ou de proxy : un pare-feu ou un proxy peut bloquer la demande HTTPS sortante. Remote Control nécessite l'accès à l'API Anthropic sur le port 443.486* Problème de réseau ou de proxy : un pare-feu ou un proxy peut bloquer la demande HTTPS sortante. Remote Control nécessite l'accès à l'API Anthropic sur le port 443.

465* Échec de la création de session : si vous voyez également « Session creation failed — see debug log », l'échec s'est produit plus tôt dans la configuration. Vérifiez que votre abonnement est actif.487* Échec de la création de session : si vous voyez également « Session creation failed — see debug log », l'échec s'est produit plus tôt dans la configuration. Vérifiez que votre abonnement est actif.

466 488 

467Un token de connexion obsolète ne cause pas cette erreur. Lorsque l'API Anthropic rejette le token enregistré, par exemple parce qu'un autre processus Claude Code l'a déjà actualisé, Claude Code actualise le token et réessaie de lui-même. Avant la v2.1.224, un token obsolète échouait au démarrage de Remote Control avec ce message, donc les sessions définies pour [se connecter automatiquement](#enable-remote-control-for-all-sessions) pouvaient échouer par intermittence au lancement.489<h3 id="couldnt-reconnect-to-your-remote-control-session">

468 

469<h3 id="couldn’t-reconnect-to-your-remote-control-session">

470 « Couldn't reconnect to your Remote Control session »490 « Couldn't reconnect to your Remote Control session »

471</h3>491</h3>

472 492 


474 494 

475Exécutez `/remote-control` pour réessayer la connexion, ou démarrez une nouvelle session avec `claude --remote-control` pour créer une nouvelle session Remote Control. Votre session locale continue de s'exécuter sans Remote Control en attendant.495Exécutez `/remote-control` pour réessayer la connexion, ou démarrez une nouvelle session avec `claude --remote-control` pour créer une nouvelle session Remote Control. Votre session locale continue de s'exécuter sans Remote Control en attendant.

476 496 

477<span id="resume-outcomes" />Lorsque vous reprenez, vous pouvez également obtenir l'un de ces résultats au lieu de ce message :

478 

479* **Le serveur signale que la session enregistrée a disparu, ou l'enregistrement de reconnexion nomme un compte différent** : Claude Code se fie à ce que l'enregistrement de reconnexion de la conversation dit :

480 * **L'enregistrement nomme votre compte connecté** : Claude Code démarre une session de remplacement avec un nom généré automatiquement et laisse les messages antérieurs de la conversation en dehors. Vous obtenez cela après avoir supprimé la session de claude.ai ou de l'application Claude, par exemple.

481 * **L'enregistrement nomme un compte différent** : Claude Code démarre une nouvelle session sans les messages antérieurs de la conversation et sans afficher de message, que la session enregistrée existe toujours ou non.

482 * **L'enregistrement ne dit pas quel compte possédait la session, ou Claude Code ne peut pas lire votre connexion enregistrée** : Claude Code affiche [`Previous session is unavailable — run /remote-control to start a new one`](#previous-session-is-unavailable) au lieu de ce message, ne démarre rien, et supprime l'enregistrement de la conversation.

483* **Vous avez désactivé Remote Control avant de reprendre** : sauf si l'application hébergeant Claude Code lui avait dit que l'application possédait la session claude.ai, Claude Code a supprimé l'enregistrement de reconnexion lorsque vous avez désactivé Remote Control depuis le [panneau de statut](#check-connection-status) de la CLI, l'extension VS Code, ou un hôte construit sur le [SDK Agent](/docs/fr/agent-sdk/overview), donc il ne se reconnecte pas. Lorsqu'une application propriétaire l'a désactivé, Claude Code a conservé l'enregistrement et se reconnecte.

484* **Un autre Claude Code sur cette machine possède toujours la session** : vous voyez un avis qui commence par « Remote Control not started here », et Claude Code [laisse Remote Control désactivé dans la session reprise](#resume-sessions-after-stopping-the-server). Exécutez `/remote-control` là pour le déplacer.

485 

486<span id="reconnect-history" />Avant la v2.1.232, Claude Code répondait différemment lorsque le serveur signalait que la session enregistrée avait disparu. De la v2.1.227 à la v2.1.231, Claude Code refusait de démarrer un remplacement même lorsque l'enregistrement correspondait à votre compte. Jusqu'à la v2.1.226, Claude Code démarrait un remplacement que l'enregistrement corresponde ou non à votre compte, et dans la v2.1.224 à la v2.1.226 le créait sous le compte connecté sur cette machine, jamais un autre compte, sans télécharger les messages antérieurs de la conversation vers celui-ci. Avant la v2.1.200, Claude Code créait une nouvelle session après tout échec de reconnexion.

487 

488<h3 id="previous-session-is-unavailable">497<h3 id="previous-session-is-unavailable">

489 « Previous session is unavailable — run /remote-control to start a new one »498 « Previous session is unavailable — run /remote-control to start a new one »

490</h3>499</h3>

491 500 

492Claude Code n'a pas pu ramener la session Remote Control précédente et s'est arrêté au lieu de démarrer une nouvelle de lui-même. Vous pouvez voir ce message après avoir repris une conversation avec `claude --resume` ou `claude --continue`, ou après que Claude Code [se reconnecte de lui-même suite à une déconnexion](/docs/fr/errors#remote-control-couldnt-refresh-your-login).501Claude Code n'a pas pu ramener la session Remote Control précédente et s'est arrêté au lieu de démarrer une nouvelle de lui-même. Vous pouvez voir ce message après avoir repris une conversation avec `claude --resume` ou `claude --continue`, ou après que Claude Code [se reconnecte de lui-même suite à une déconnexion](/docs/fr/errors#remote-control-couldnt-refresh-your-login).

493 502 

494Exécutez `/remote-control` pour démarrer une nouvelle session Remote Control sous la connexion actuelle ; votre session locale continue de s'exécuter sans Remote Control en attendant. Le message connexe « Remote Control could not verify the signed-in account — run /remote-control to reconnect » a la même solution ; Claude Code l'affiche lorsque le compte connecté a changé ou n'a pas pu être lu entre sa validation et la reconnexion. Si vous exécutez `/remote-control` après « Previous session is unavailable » sans redémarrer Claude Code d'abord, Claude Code laisse les messages antérieurs de la conversation en dehors de la nouvelle session.503Exécutez `/remote-control` pour démarrer une nouvelle session Remote Control sous la connexion actuelle ; votre session locale continue de s'exécuter sans Remote Control en attendant. Le message associé « Remote Control could not verify the signed-in account — run /remote-control to reconnect » a le même correctif. Si vous exécutez `/remote-control` après « Previous session is unavailable » sans redémarrer Claude Code d'abord, Claude Code laisse les messages antérieurs de la conversation en dehors de la nouvelle session.

495 

496À la reprise, Claude Code [démarre une nouvelle session à sa place](#resume-outcomes) seulement si l'enregistrement de reconnexion de la conversation nomme le compte qui possédait la session, parce que le serveur signale une session que vous avez supprimée et une session possédée par un autre compte de la même manière. Claude Code avant la v2.1.227 n'a pas enregistré ce compte, et Claude Code ne peut pas vérifier l'enregistrement lorsqu'il ne peut pas lire votre connexion enregistrée. Claude Code avant la v2.1.232 affichait « Remote Control could not resume the previous session under the current login — run /remote-control to start fresh » à la place, dans [un ensemble différent de cas](#reconnect-history).

497 504 

498<h3 id="remote-control-got-an-unexpected-server-response">505<h3 id="remote-control-got-an-unexpected-server-response">

499 « Remote Control got an unexpected server response »506 « Remote Control got an unexpected server response »

500</h3>507</h3>

501 508 

502Le serveur Remote Control a accepté une demande mais a répondu d'une forme que cette version de Claude Code ne pouvait pas lire, lors de la création de la session distante ou de la récupération de ses credentials. Réessayer sur la même version échoue de la même manière. Exécutez `claude update`, puis exécutez `/remote-control` pour vous reconnecter. Ce message a été ajouté dans la v2.1.225.509Le serveur Remote Control a accepté une demande mais a répondu d'une manière que cette version de Claude Code ne pouvait pas lire, lors de la création de la session distante ou de la récupération de ses credentials. Réessayer sur la même version échoue de la même manière. Exécutez `claude update`, puis exécutez `/remote-control` pour vous reconnecter.

503 510 

504<h3 id="your-organization-requires-trusted-devices-for-remote-control-but-this-device-is-not-enrolled">511<h3 id="your-organization-requires-trusted-devices-for-remote-control-but-this-device-is-not-enrolled">

505 « Your organization requires Trusted Devices for Remote Control, but this device is not enrolled »512 « Your organization requires Trusted Devices for Remote Control, but this device is not enrolled »


511 « session expired for trusted-device check »518 « session expired for trusted-device check »

512</h3>519</h3>

513 520 

514Votre connexion a plus de 18 heures. Exécutez `/login` dans Claude Code, ou confirmez avec Face ID, Touch ID, Windows Hello, ou une passkey lorsque claude.ai ou l'application mobile vous le demande. Consultez [Trusted Devices](#trusted-devices).521Votre connexion a plus de 18 heures. Exécutez `/login` dans Claude Code, ou confirmez avec Face ID, Touch ID, Windows Hello ou une passkey lorsque claude.ai ou l'application mobile vous le demande. Consultez [Trusted Devices](#trusted-devices).

515 

516<h2 id="choose-the-right-approach">

517 Choisir la bonne approche

518</h2>

519 

520Claude Code offre plusieurs façons de travailler quand vous n'êtes pas à votre terminal. Elles diffèrent par ce qui déclenche le travail, où Claude s'exécute et la quantité de configuration dont vous avez besoin.

521 

522| | Déclencheur | Claude s'exécute sur | Configuration | Idéal pour |

523| :- | :- | :- | :- | :- |

524| [Dispatch](/docs/fr/desktop#sessions-from-dispatch) | Envoyer une tâche depuis l'application mobile Claude | Votre machine (Desktop) | [Associer l'application mobile à Desktop](https://support.claude.com/en/articles/13947068) | Déléguer du travail quand vous êtes absent, configuration minimale |

525| [Remote Control](/docs/fr/remote-control) | Piloter une session en cours depuis [claude.ai/code](https://claude.ai/code) ou l'application mobile Claude | Votre machine (CLI ou VS Code) | Exécuter `claude remote-control` | Diriger le travail en cours depuis un autre appareil |

526| [Channels](/docs/fr/channels) | Envoyer des événements depuis une application de chat comme Telegram ou Discord, ou votre propre serveur | Votre machine (CLI) | [Installer un plugin de canal](/docs/fr/channels#quickstart) ou [créer le vôtre](/docs/fr/channels-reference) | Réagir à des événements externes comme les échecs CI ou les messages de chat |

527| [Slack](/docs/fr/slack) | Mentionner `@Claude` dans un canal d'équipe | Cloud Anthropic | [Installer l'application Slack](/docs/fr/slack#setting-up-claude-code-in-slack) avec [Claude Code sur le web](/docs/fr/claude-code-on-the-web) activé | PRs et révisions depuis le chat d'équipe |

528| [Environnements auto-hébergés](/docs/fr/self-hosted-environments) | Démarrer une [session cloud](/docs/fr/claude-code-on-the-web) et choisir l'environnement de votre organisation | Infrastructure de votre organisation | [Déployer des runners](/docs/fr/self-hosted-environments-quickstart), sur les plans Team et Enterprise | Sessions cloud qui doivent s'exécuter dans votre réseau |

529| [Tâches planifiées](/docs/fr/scheduled-tasks) | Définir un calendrier | [CLI](/docs/fr/scheduled-tasks), [Desktop](/docs/fr/desktop-scheduled-tasks), ou [cloud](/docs/fr/routines) | Choisir une fréquence | Automatisation récurrente comme les révisions quotidiennes |

530 522 

531<h2 id="related-resources">523<h2 id="related-resources">

532 Ressources connexes524 Ressources connexes

routines.md +3 −2

Details

59Quand l'horaire de la routine ou **Run now** démarre une exécution, Claude republish un artifact existant sans demander seulement quand tous ces éléments sont vrais :59Quand l'horaire de la routine ou **Run now** démarre une exécution, Claude republish un artifact existant sans demander seulement quand tous ces éléments sont vrais :

60 60 

61* Vous pouvez modifier l'artifact et il appartient à votre propre organisation61* Vous pouvez modifier l'artifact et il appartient à votre propre organisation

62* L'artifact n'est pas partagé publiquement, et n'est pas partagé avec des personnes spécifiques ou votre organisation avec la dernière version choisie comme version que les spectateurs voient62* L'artifact n'est pas partagé publiquement

63* Si l'artifact est partagé avec des personnes spécifiques ou votre organisation, ses spectateurs ne voient pas automatiquement chaque nouvelle version

63* La publication porte uniquement sur la page, sans fichiers de support ou autre chose ajoutée, et ne force pas une version plus récente64* La publication porte uniquement sur la page, sans fichiers de support ou autre chose ajoutée, et ne force pas une version plus récente

64* La page ne contient aucune autorisation qui s'étend au-delà de la page, comme les [appels de connecteur](/docs/fr/artifacts#pull-live-data-with-mcp-connectors)65* La page ne contient aucune autorisation qui s'étend au-delà de la page, comme les [appels de connecteur](/docs/fr/artifacts#pull-live-data-with-mcp-connectors)

65 66 


151 152 

152Un déclencheur de calendrier exécute la routine selon une cadence récurrente, ou une seule fois à un moment futur spécifique. Choisissez une fréquence prédéfinie dans la section **Select a trigger** : toutes les heures, quotidienne, les jours de semaine ou hebdomadaire. Les heures sont entrées dans votre fuseau horaire local et converties automatiquement, de sorte que la routine s'exécute à cette heure murale indépendamment de l'endroit où se trouve l'infrastructure cloud.153Un déclencheur de calendrier exécute la routine selon une cadence récurrente, ou une seule fois à un moment futur spécifique. Choisissez une fréquence prédéfinie dans la section **Select a trigger** : toutes les heures, quotidienne, les jours de semaine ou hebdomadaire. Les heures sont entrées dans votre fuseau horaire local et converties automatiquement, de sorte que la routine s'exécute à cette heure murale indépendamment de l'endroit où se trouve l'infrastructure cloud.

153 154 

154Les exécutions peuvent démarrer quelques minutes après l'heure planifiée en raison de l'échelonnement. Le décalage est cohérent pour chaque routine.155Si vous planifiez une exécution exactement à l'heure, par exemple 9:00, elle peut démarrer plusieurs minutes en retard. Pour démarrer près de l'heure planifiée, choisissez quelques minutes après l'heure, par exemple 9:07.

155 156 

156Pour un intervalle personnalisé tel que toutes les deux heures ou le premier de chaque mois, choisissez la prédéfinie la plus proche dans le formulaire, puis exécutez `/schedule update` dans la CLI pour définir une expression cron spécifique. L'intervalle minimum est d'une heure ; les expressions qui s'exécutent plus fréquemment sont rejetées.157Pour un intervalle personnalisé tel que toutes les deux heures ou le premier de chaque mois, choisissez la prédéfinie la plus proche dans le formulaire, puis exécutez `/schedule update` dans la CLI pour définir une expression cron spécifique. L'intervalle minimum est d'une heure ; les expressions qui s'exécutent plus fréquemment sont rejetées.

157 158 

Details

117Sur Linux et WSL2, le runtime applique les autorisations d'écriture uniquement aux chemins qui existent déjà. Dans un environnement vierge, créez les chemins de configuration de Claude Code avant le premier lancement :117Sur Linux et WSL2, le runtime applique les autorisations d'écriture uniquement aux chemins qui existent déjà. Dans un environnement vierge, créez les chemins de configuration de Claude Code avant le premier lancement :

118 118 

119```bash theme={null}119```bash theme={null}

120mkdir -p ~/.claude && echo '{}' > ~/.claude.json120mkdir -p ~/.claude && { [ -f ~/.claude.json ] || echo '{}' > ~/.claude.json; }

121```121```

122 122 

123Une fois le fichier de paramètres en place, lancez Claude Code avec `npx` et passez `claude` comme commande à envelopper :123Une fois le fichier de paramètres en place, lancez Claude Code avec `npx` et passez `claude` comme commande à envelopper :

sandboxing.md +1 −1

Details

42 </Step>42 </Step>

43 43 

44 <Step title="Exécuter une commande Bash">44 <Step title="Exécuter une commande Bash">

45 Demandez à Claude d'exécuter une commande, comme une compilation ou une suite de tests. Par défaut, les commandes à l'intérieur du sandbox peuvent écrire dans le répertoire de travail, le répertoire temporaire de la session et tout [répertoire que vous avez ajouté](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) avec `--add-dir`, `/add-dir` ou `permissions.additionalDirectories`.45 Demandez à Claude d'exécuter une commande, comme une compilation ou une suite de tests. Par défaut, les commandes à l'intérieur du sandbox peuvent écrire dans le répertoire de travail, un [répertoire temporaire par utilisateur](/docs/fr/env-vars), et tout [répertoire que vous avez ajouté](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) avec `--add-dir`, `/add-dir` ou `permissions.additionalDirectories`.

46 46 

47 La première fois qu'une commande a besoin d'un nouveau domaine réseau, Claude Code demande une approbation ; en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), Claude nomme plutôt les hôtes dont une commande a besoin [sur la commande elle-même](#per-command-allowed-domains-in-auto-mode) pour que le classificateur les examine avec elle.47 La première fois qu'une commande a besoin d'un nouveau domaine réseau, Claude Code demande une approbation ; en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), Claude nomme plutôt les hôtes dont une commande a besoin [sur la commande elle-même](#per-command-allowed-domains-in-auto-mode) pour que le classificateur les examine avec elle.

48 48 

security.md +2 −1

Details

128 128 

129* **Machines virtuelles isolées** : Chaque session cloud s'exécute dans une VM isolée gérée par Anthropic129* **Machines virtuelles isolées** : Chaque session cloud s'exécute dans une VM isolée gérée par Anthropic

130* **Contrôles d'accès réseau** : L'accès réseau est limité par défaut et peut être configuré pour être désactivé ou autoriser uniquement des domaines spécifiques130* **Contrôles d'accès réseau** : L'accès réseau est limité par défaut et peut être configuré pour être désactivé ou autoriser uniquement des domaines spécifiques

131* **Protection des identifiants** : L'authentification est gérée via un proxy sécurisé qui utilise un identifiant limité à l'intérieur du sandbox, qui est ensuite traduit en votre jeton d'authentification GitHub réel131* **Protection des identifiants** : Les identifiants GitHub sont stockés chiffrés sur les serveurs d'Anthropic et n'entrent jamais dans la VM de session. La VM détient un identifiant de courte durée limité à cette session, et le trafic GitHub transite par un [proxy Anthropic](/docs/fr/cloud-environments#github-proxy) qui attache l'identifiant GitHub côté serveur. Consultez [Options d'authentification GitHub](/docs/fr/claude-code-on-the-web#github-authentication-options) pour savoir comment vous accordez l'accès

132* **Restrictions de branche** : Les opérations de push Git sont limitées à la branche de travail actuelle132* **Restrictions de branche** : Les opérations de push Git sont limitées à la branche de travail actuelle

133* **Journalisation d'audit** : Toutes les opérations dans les sessions cloud sont enregistrées à des fins de conformité et d'audit133* **Journalisation d'audit** : Toutes les opérations dans les sessions cloud sont enregistrées à des fins de conformité et d'audit

134* **Nettoyage automatique** : Les VMs de session sont récupérées après une période d'inactivité134* **Nettoyage automatique** : Les VMs de session sont récupérées après une période d'inactivité

135* **Suppression** : Vous pouvez [supprimer une session](/docs/fr/claude-code-on-the-web#delete-sessions) à tout moment. Consultez [Flux de données d'exécution cloud](/docs/fr/data-usage#cloud-execution-data-flow-and-dependencies) pour savoir ce qu'Anthropic stocke pour une session cloud

135 136 

136Pour plus de détails sur l'exécution cloud, consultez [Utiliser Claude Code dans le cloud](/docs/fr/claude-code-on-the-web) ; pour configurer l'accès réseau pour les sessions cloud, consultez [Configurer les environnements cloud](/docs/fr/cloud-environments#network-access).137Pour plus de détails sur l'exécution cloud, consultez [Utiliser Claude Code dans le cloud](/docs/fr/claude-code-on-the-web) ; pour configurer l'accès réseau pour les sessions cloud, consultez [Configurer les environnements cloud](/docs/fr/cloud-environments#network-access).

137 138 

Details

220ENTRYPOINT ["claude"]220ENTRYPOINT ["claude"]

221```221```

222 222 

223Échangez `linux-x64` pour `linux-arm64` si vos nœuds sont ARM, ou pour `linux-x64-musl` ou `linux-arm64-musl` sur une image basée sur musl comme Alpine ; consultez [Configuration Alpine Linux](/docs/fr/setup#alpine-linux-and-musl-based-distributions) pour les paquets supplémentaires dont les images musl ont besoin. L'URL est l'emplacement de version standard de Claude Code, donc vous pouvez vérifier le binaire téléchargé par rapport au manifeste signé de la version comme décrit dans [Intégrité binaire et signature de code](/docs/fr/setup#binary-integrity-and-code-signing). Construisez l'image avec Claude Code version 2.1.224 ou plus récent, puis poussez-la vers votre registre et référencez-la dans les recettes ci-dessous :223Échangez `linux-x64` pour `linux-arm64` si vos nœuds sont ARM, ou pour `linux-x64-musl` ou `linux-arm64-musl` sur une image basée sur musl comme Alpine ; consultez [Configuration Alpine Linux](/docs/fr/setup#alpine-linux-and-musl-based-distributions) pour les paquets supplémentaires dont les images musl ont besoin. L'URL est l'emplacement de version standard de Claude Code, donc vous pouvez vérifier le binaire téléchargé par rapport au manifeste signé de la version comme décrit dans [Intégrité binaire et signature de code](/docs/fr/setup#binary-integrity-and-code-signing). Le runner nécessite Claude Code version 2.1.224 ou ultérieure. Construisez l'image, puis poussez-la vers votre registre et référencez-la dans les recettes ci-dessous :

224 224 

225```bash theme={null}225```bash theme={null}

226docker build --build-arg CLAUDE_CODE_VERSION=2.1.267 -t <your-registry>/claude-runner:latest .226docker build \

227 --build-arg CLAUDE_CODE_VERSION="$(curl -fsSL https://downloads.claude.ai/claude-code-releases/stable)" \

228 -t <your-registry>/claude-runner:latest .

227```229```

228 230 

231La substitution de commande recherche le numéro de version `stable` actuel et le transmet comme argument de construction, donc l'exécution de la même commande après une nouvelle version stable reconstruit la couche de téléchargement avec le binaire plus récent. Pour épingler une version spécifique pour des constructions reproductibles, transmettez le numéro de version directement comme `CLAUDE_CODE_VERSION`. Remplacez `stable` par `latest` dans l'URL de recherche lorsque vous avez besoin d'une version plus récente que le canal stable, comme celle qu'un [modèle nouvellement lancé nécessite](/docs/fr/model-config).

232 

229<h2 id="size-cpu-and-memory-for-sessions">233<h2 id="size-cpu-and-memory-for-sessions">

230 Dimensionner le CPU et la mémoire pour les sessions234 Dimensionner le CPU et la mémoire pour les sessions

231</h2>235</h2>

Details

220 220 

221La livraison gérée par le serveur ajoute ces comportements :221La livraison gérée par le serveur ajoute ces comportements :

222 222 

223* Le cache à `~/.claude/remote-settings.json` stocke la charge utile sauvegardée avec les entrées invalides supprimées, à l'exception des valeurs invalides `cleanupPeriodDays` et `desktopSessionCleanupPeriodDays`, qui restent dans la copie en cache et ne sont jamais appliquées.223* Un démarrage qui s'exécute sur le cache à `~/.claude/remote-settings.json` traite les entrées invalides de la même manière que la récupération qui a écrit le cache :

224* Lorsqu'aucun champ de la charge utile ne peut être sauvegardé et que la charge utile n'est pas uniquement ces clés de rétention, Claude Code rejette la charge utile, conserve les derniers paramètres en cache acceptés, et écrit `Remote settings: Settings validation failed - no fields could be salvaged` dans le journal de débogage. Avec `forceRemoteSettingsRefresh` défini, l'interface de ligne de commande se ferme à la place.224 * Les entrées qui ont échoué la validation restent supprimées.

225 * [Les clés qui échouent fermées](/docs/fr/managed-settings#keys-that-fail-closed) conservent leurs valeurs plus strictes.

226 * Une valeur invalide `cleanupPeriodDays` ou `desktopSessionCleanupPeriodDays` reste dans la copie en cache et n'est jamais appliquée.

227* Claude Code n'applique rien d'une charge utile et laisse le cache inchangé lorsque tous les trois éléments suivants sont vrais :

228 

229 * Chaque paramètre de la charge utile échoue la validation.

230 * Aucun d'eux ne revient à une valeur plus stricte.

231 * La charge utile contient une clé autre que ces deux clés de rétention.

232 

233 L'avis de démarrage, `/status`, et `claude doctor` signalent alors le [chargement échoué](/docs/fr/errors#remote-managed-settings-failed-to-load) avec la cause `no setting in the server response could be applied as written`, et cette entrée indique quelle stratégie la session exécute. Les clients qui [appliquent un démarrage fermé par défaut](#enforce-fail-closed-startup) se ferment au démarrage à la place.

225* La [boîte de dialogue d'approbation de sécurité](#security-approval-dialogs) évalue la charge utile sauvegardée, de sorte qu'une entrée invalide supprimée n'est jamais présentée pour approbation et n'exécute jamais.234* La [boîte de dialogue d'approbation de sécurité](#security-approval-dialogs) évalue la charge utile sauvegardée, de sorte qu'une entrée invalide supprimée n'est jamais présentée pour approbation et n'exécute jamais.

226 235 

227Pour déboguer les problèmes de livraison, exécutez `claude --debug-file <path>` et recherchez `Remote settings` dans le journal. Validez un changement de charge utile avec `claude doctor` sur une machine de test avant de le déployer dans l'organisation.236Pour déboguer les problèmes de livraison, exécutez `claude --debug-file <path>` et recherchez `Remote settings` dans le journal. Validez un changement de charge utile avec `claude doctor` sur une machine de test avant de le déployer dans l'organisation.

sessions.md +3 −2

Details

43* Mode de permission : si vous reprenez depuis un terminal avec `claude --continue`, `claude --resume <session-id>` ou `claude --resume <name>` lorsque le nom correspond à une session, sans `-p`, Claude Code restaure le mode de permission dans lequel se trouvait la session, sauf dans les cas de [mode de permission à la reprise](#permission-mode-on-resume), qui couvre également le sélecteur de sessions, `/resume` et la reprise avec `claude -p`. Passez `--permission-mode` ou `--dangerously-skip-permissions` pour remplacer le mode restauré.43* Mode de permission : si vous reprenez depuis un terminal avec `claude --continue`, `claude --resume <session-id>` ou `claude --resume <name>` lorsque le nom correspond à une session, sans `-p`, Claude Code restaure le mode de permission dans lequel se trouvait la session, sauf dans les cas de [mode de permission à la reprise](#permission-mode-on-resume), qui couvre également le sélecteur de sessions, `/resume` et la reprise avec `claude -p`. Passez `--permission-mode` ou `--dangerously-skip-permissions` pour remplacer le mode restauré.

44* Objectif actif : un [objectif](/docs/fr/goal#resume-with-an-active-goal) qui était toujours actif lorsque la session s'est terminée se poursuit ; son nombre de tours, son minuteur et sa ligne de base de dépense de jetons se réinitialisent.44* Objectif actif : un [objectif](/docs/fr/goal#resume-with-an-active-goal) qui était toujours actif lorsque la session s'est terminée se poursuit ; son nombre de tours, son minuteur et sa ligne de base de dépense de jetons se réinitialisent.

45* Tâches planifiées : les [tâches qui n'ont pas expiré](/docs/fr/scheduled-tasks#limitations) sont restaurées. Les tâches Bash en arrière-plan et les tâches de surveillance ne le sont pas.45* Tâches planifiées : les [tâches qui n'ont pas expiré](/docs/fr/scheduled-tasks#limitations) sont restaurées. Les tâches Bash en arrière-plan et les tâches de surveillance ne le sont pas.

46* Travail en arrière-plan : un [sous-agent en arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background), une commande Bash en arrière-plan, ou un [flux de travail](/docs/fr/workflows) qui s'est terminé avec le processus précédent s'affiche dans la transcription reprise comme une note indiquant qu'il ne s'est pas terminé. Claude Code ne démarre pas un tour à partir de ces notes ; Claude les lit avec votre prochaine invite.

46 47 

47Tous les drapeaux de configuration du lancement d'origine ne sont pas restaurés. Si la session dépendait de `--mcp-config`, `--settings`, `--plugin-dir`, `--fallback-model` ou de répertoires ajoutés avec `--add-dir`, passez-les à nouveau lorsque vous reprenez ; les répertoires ajoutés en milieu de session avec `/add-dir` ne sont pas restaurés non plus, bien que le sélecteur de sessions les utilise toujours pour localiser la session. Les fichiers de paramètres standard, tels que `settings.json` et `settings.local.json`, sont relus au lancement, donc la configuration qui s'y trouve n'a pas besoin d'être passée à nouveau. Pour `--system-prompt` et `--append-system-prompt`, voir [Drapeaux d'invite système dans les conversations reprises](/docs/fr/cli-reference#system-prompt-flags-in-resumed-conversations).48Tous les drapeaux de configuration du lancement d'origine ne sont pas restaurés. Si la session dépendait de `--mcp-config`, `--settings`, `--plugin-dir`, `--fallback-model` ou de répertoires ajoutés avec `--add-dir`, passez-les à nouveau lorsque vous reprenez ; les répertoires ajoutés en milieu de session avec `/add-dir` ne sont pas restaurés non plus, bien que le sélecteur de sessions les utilise toujours pour localiser la session. Les fichiers de paramètres standard, tels que `settings.json` et `settings.local.json`, sont relus au lancement, donc la configuration qui s'y trouve n'a pas besoin d'être passée à nouveau. Pour `--system-prompt` et `--append-system-prompt`, voir [Drapeaux d'invite système dans les conversations reprises](/docs/fr/cli-reference#system-prompt-flags-in-resumed-conversations).

48 49 


74 Reprendre en mode plan avec `-p`75 Reprendre en mode plan avec `-p`

75</h5>76</h5>

76 77 

77Une exécution `claude -p --resume` ou `claude -p --continue` reprend en mode plan uniquement lorsque les quatre conditions sont remplies :78Une exécution `claude -p --resume` ou `claude -p --continue` reprend en mode plan uniquement lorsque toutes ces conditions sont remplies :

78 79 

79* Vous passez [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags), afin que Claude Code puisse présenter le plan pour approbation80* Vous passez [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) et ne passez pas [`--permission-prompts none`](/docs/fr/headless#turn-off-permission-prompts-in-unattended-runs), afin que Claude Code puisse présenter le plan pour approbation

80* Vous ne passez pas `--permission-mode` ou `--dangerously-skip-permissions`81* Vous ne passez pas `--permission-mode` ou `--dangerously-skip-permissions`

81* Vous ne passez pas `--fork-session`82* Vous ne passez pas `--fork-session`

82* L'exécution n'est pas démarrée via les [canaux](/docs/fr/channels)83* L'exécution n'est pas démarrée via les [canaux](/docs/fr/channels)

Details

620| [`autoScrollEnabled`](#autoscrollenabled) | [Suivez la nouvelle sortie](/docs/fr/fullscreen#auto-follow) jusqu'au bas du rendu en plein écran | Interface and terminal | Any file |620| [`autoScrollEnabled`](#autoscrollenabled) | [Suivez la nouvelle sortie](/docs/fr/fullscreen#auto-follow) jusqu'au bas du rendu en plein écran | Interface and terminal | Any file |

621| [`autoUpdatesChannel`](#autoupdateschannel) | Suivez le [canal de version](/docs/fr/setup#configure-release-channel) stable au lieu du dernier | Updates and versioning | Any file |621| [`autoUpdatesChannel`](#autoupdateschannel) | Suivez le [canal de version](/docs/fr/setup#configure-release-channel) stable au lieu du dernier | Updates and versioning | Any file |

622| [`availableModels`](#availablemodels) | [Limitez les modèles](/docs/fr/model-config#restrict-model-selection) que les gens peuvent choisir | Model and responses | Any file |622| [`availableModels`](#availablemodels) | [Limitez les modèles](/docs/fr/model-config#restrict-model-selection) que les gens peuvent choisir | Model and responses | Any file |

623| [`availableModelsMatch`](#availablemodelsmatch) | Faites en sorte que chaque entrée d'ID de modèle `availableModels` [ne permette que la version qu'elle nomme](/docs/fr/model-config#block-specific-models-or-versions) | Model and responses | Managed |

623| [`awaySummaryEnabled`](#awaysummaryenabled) | Désactivez le [récapitulatif de session](/docs/fr/interactive-mode#session-recap) affiché quand vous revenez au terminal | Remote, desktop, and notifications | Any file |624| [`awaySummaryEnabled`](#awaysummaryenabled) | Désactivez le [récapitulatif de session](/docs/fr/interactive-mode#session-recap) affiché quand vous revenez au terminal | Remote, desktop, and notifications | Any file |

624| [`awsAuthRefresh`](#awsauthrefresh) | Actualisez les [identifiants Bedrock](/docs/fr/amazon-bedrock#advanced-credential-configuration) expirés dans `.aws` avec votre propre commande | Authentication and providers | Any file |625| [`awsAuthRefresh`](#awsauthrefresh) | Actualisez les [identifiants Bedrock](/docs/fr/amazon-bedrock#advanced-credential-configuration) expirés dans `.aws` avec votre propre commande | Authentication and providers | Any file |

625| [`awsCredentialExport`](#awscredentialexport) | Fournissez les [identifiants Bedrock](/docs/fr/amazon-bedrock#advanced-credential-configuration) en JSON à partir de votre propre commande | Authentication and providers | Any file |626| [`awsCredentialExport`](#awscredentialexport) | Fournissez les [identifiants Bedrock](/docs/fr/amazon-bedrock#advanced-credential-configuration) en JSON à partir de votre propre commande | Authentication and providers | Any file |


629| [`blockedMarketplaces`](#blockedmarketplaces) | Bloquez les sources du [marché de plugins](/docs/fr/plugins/overview) pour votre organisation | Plugins and skills | Managed |630| [`blockedMarketplaces`](#blockedmarketplaces) | Bloquez les sources du [marché de plugins](/docs/fr/plugins/overview) pour votre organisation | Plugins and skills | Managed |

630| [`browserExternalPageTools`](#browserexternalpagetools) | Gardez les outils de Claude hors des pages externes dans le volet [Bureau](/docs/fr/desktop) Browser | Tools | Managed |631| [`browserExternalPageTools`](#browserexternalpagetools) | Gardez les outils de Claude hors des pages externes dans le volet [Bureau](/docs/fr/desktop) Browser | Tools | Managed |

631| [`channelsEnabled`](#channelsenabled) | Autorisez les [canaux](/docs/fr/channels#enable-channels-for-your-organization) pour votre organisation | Plugins and skills | Managed |632| [`channelsEnabled`](#channelsenabled) | Autorisez les [canaux](/docs/fr/channels#enable-channels-for-your-organization) pour votre organisation | Plugins and skills | Managed |

633| [`claudeInChromeDefaultEnabled`](#claudeinchromedefaultenabled) | Activez l'[intégration Chrome](/docs/fr/chrome) dans chaque session CLI interactive sans passer `--chrome` | Global config settings | Global config |

632| [`claudeMd`](#claudemd) | Injectez les instructions [CLAUDE.md](/docs/fr/memory#deploy-organization-wide-claude-md) à l'échelle de l'organisation à partir des paramètres gérés | Memory and context | Managed |634| [`claudeMd`](#claudemd) | Injectez les instructions [CLAUDE.md](/docs/fr/memory#deploy-organization-wide-claude-md) à l'échelle de l'organisation à partir des paramètres gérés | Memory and context | Managed |

633| [`claudeMdExcludes`](#claudemdexcludes) | Ignorez les fichiers [CLAUDE.md](/docs/fr/memory#exclude-specific-claude-md-files) spécifiques lors du chargement de la mémoire | Memory and context | Any file |635| [`claudeMdExcludes`](#claudemdexcludes) | Ignorez les fichiers [CLAUDE.md](/docs/fr/memory#exclude-specific-claude-md-files) spécifiques lors du chargement de la mémoire | Memory and context | Any file |

634| [`cleanupPeriodDays`](#cleanupperioddays) | Choisissez le nombre de jours que Claude Code conserve les [transcriptions](/docs/fr/data-usage#data-retention) avant de les supprimer | Privacy and telemetry | Any file |636| [`cleanupPeriodDays`](#cleanupperioddays) | Choisissez le nombre de jours que Claude Code conserve les [transcriptions](/docs/fr/data-usage#data-retention) avant de les supprimer | Privacy and telemetry | Any file |

635| [`companyAnnouncements`](#companyannouncements) | Affichez les annonces de votre organisation au démarrage | Interface and terminal | Any file |637| [`companyAnnouncements`](#companyannouncements) | Affichez les annonces de votre organisation au démarrage | Interface and terminal | Any file |

638| [`copyFullResponse`](#copyfullresponse) | Faites en sorte que [`/copy`](/docs/fr/commands) copie la réponse complète sans afficher le sélecteur de bloc de code | Global config settings | Global config |

636| [`copyOnSelect`](#copyonselect) | Désactivez la copie automatique du texte que vous sélectionnez avec la souris dans le [rendu en plein écran](/docs/fr/fullscreen#use-the-mouse) et la vue agent | Global config settings | Global config |639| [`copyOnSelect`](#copyonselect) | Désactivez la copie automatique du texte que vous sélectionnez avec la souris dans le [rendu en plein écran](/docs/fr/fullscreen#use-the-mouse) et la vue agent | Global config settings | Global config |

637| [`crossSessionInbound`](#crosssessioninbound) | Choisissez si Claude Code livre les [messages de vos autres sessions](/docs/fr/cross-session-messaging#control-inbound-messages), affiche un avis sans les livrer, ou les refuse | Agents, sessions, and worktrees | Any file |640| [`crossSessionInbound`](#crosssessioninbound) | Choisissez si Claude Code livre les [messages de vos autres sessions](/docs/fr/cross-session-messaging#control-inbound-messages), affiche un avis sans les livrer, ou les refuse | Agents, sessions, and worktrees | Any file |

638| [`defaultShell`](#defaultshell) | Choisissez si Bash ou PowerShell exécute les commandes shell que vous tapez avec le préfixe [`!`](/docs/fr/interactive-mode#shell-mode-with-prefix) | Interface and terminal | Any file |641| [`defaultShell`](#defaultshell) | Choisissez si Bash ou PowerShell exécute les commandes shell que vous tapez avec le préfixe [`!`](/docs/fr/interactive-mode#shell-mode-with-prefix) | Interface and terminal | Any file |

642| [`defaultToAgentsView`](#defaulttoagentsview) | Ouvrez la [vue agent](/docs/fr/agent-view) au lieu d'une nouvelle conversation quand vous exécutez `claude` sans arguments | Global config settings | Global config |

639| [`deniedMcpServers`](#deniedmcpservers) | Bloquez les [serveurs MCP](/docs/fr/mcp) spécifiques par URL, commande ou nom | MCP | Any file |643| [`deniedMcpServers`](#deniedmcpservers) | Bloquez les [serveurs MCP](/docs/fr/mcp) spécifiques par URL, commande ou nom | MCP | Any file |

644| [`deniedModels`](#deniedmodels) | [Bloquez les modèles spécifiques](/docs/fr/model-config#block-specific-models-or-versions), même ceux que `availableModels` permet | Model and responses | Managed |

640| [`desktopSessionCleanupPeriodDays`](#desktopsessioncleanupperioddays) | Définissez une limite d'âge en jours pour les [transcriptions Claude Desktop et Cowork](/docs/fr/claude-directory#cleaned-up-automatically) | Privacy and telemetry | User or managed |645| [`desktopSessionCleanupPeriodDays`](#desktopsessioncleanupperioddays) | Définissez une limite d'âge en jours pour les [transcriptions Claude Desktop et Cowork](/docs/fr/claude-directory#cleaned-up-automatically) | Privacy and telemetry | User or managed |

641| [`dialogExpiry`](#dialogexpiry) | Définissez le temps que Claude Code attend pour que [Remote Control](/docs/fr/remote-control) ou un hôte SDK réponde à une boîte de dialogue transférée avant de l'annuler | Interface and terminal | User or managed |646| [`dialogExpiry`](#dialogexpiry) | Définissez le temps que Claude Code attend pour que [Remote Control](/docs/fr/remote-control) ou un hôte SDK réponde à une boîte de dialogue transférée avant de l'annuler | Interface and terminal | User or managed |

642| [`diffTool`](#difftool) | Choisissez si les modifications de fichiers proposées par Claude s'ouvrent dans le visualiseur de diff [VS Code](/docs/fr/vs-code) ou [JetBrains](/docs/fr/jetbrains#features) ou restent dans le terminal | Global config settings | Global config |647| [`diffTool`](#difftool) | Choisissez si les modifications de fichiers proposées par Claude s'ouvrent dans le visualiseur de diff [VS Code](/docs/fr/vs-code) ou [JetBrains](/docs/fr/jetbrains#features) ou restent dans le terminal | Global config settings | Global config |


690| [`isolatePeerMachines`](#isolatepeermachines) | Demandez-vous avant que Claude [envoie un message à l'une de vos sessions sur une autre machine](/docs/fr/cross-session-messaging#require-approval-for-cross-machine-messages) | Agents, sessions, and worktrees | Any file |695| [`isolatePeerMachines`](#isolatepeermachines) | Demandez-vous avant que Claude [envoie un message à l'une de vos sessions sur une autre machine](/docs/fr/cross-session-messaging#require-approval-for-cross-machine-messages) | Agents, sessions, and worktrees | Any file |

691| [`keybindingFlavor`](#keybindingflavor) | Obsolète et sans effet ; les raccourcis d'édition de mots suivent toujours les [conventions readline](/docs/fr/interactive-mode#make-ctrl-w-delete-back-to-whitespace) | Interface and terminal | Any file |696| [`keybindingFlavor`](#keybindingflavor) | Obsolète et sans effet ; les raccourcis d'édition de mots suivent toujours les [conventions readline](/docs/fr/interactive-mode#make-ctrl-w-delete-back-to-whitespace) | Interface and terminal | Any file |

692| [`language`](#language) | Faites répondre Claude dans une langue autre que l'anglais | Model and responses | Any file |697| [`language`](#language) | Faites répondre Claude dans une langue autre que l'anglais | Model and responses | Any file |

698| [`leftArrowOpensAgents`](#leftarrowopensagents) | Désactivez le raccourci `←` qui [met la session en arrière-plan et ouvre la vue agent](/docs/fr/agent-view#switch-sessions-without-leaving-the-terminal) | Global config settings | Global config |

693| [`managedMcpServers`](#managedmcpservers) | Fournissez les [serveurs MCP](/docs/fr/managed-mcp#provide-servers-through-managed-settings) distants à chaque utilisateur aux côtés de ceux qu'ils ajoutent | MCP | Managed |699| [`managedMcpServers`](#managedmcpservers) | Fournissez les [serveurs MCP](/docs/fr/managed-mcp#provide-servers-through-managed-settings) distants à chaque utilisateur aux côtés de ceux qu'ils ajoutent | MCP | Managed |

694| [`managedSourcesBehavior`](#managedsourcesbehavior) | Composez chaque [source gérée](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) que vous déployez au lieu d'utiliser la plus prioritaire seule | Enterprise and managed settings | Managed |700| [`managedSourcesBehavior`](#managedsourcesbehavior) | Composez chaque [source gérée](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) que vous déployez au lieu d'utiliser la plus prioritaire seule | Enterprise and managed settings | Managed |

695| [`maxEffortLevel`](#maxeffortlevel) | Limitez le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) pour chaque modèle ou par modèle, sur chaque fournisseur | Model and responses | Any file |701| [`maxEffortLevel`](#maxeffortlevel) | Limitez le [niveau d'effort](/docs/fr/model-config#adjust-effort-level) pour chaque modèle ou par modèle, sur chaque fournisseur | Model and responses | Any file |

702| [`maxProseWidth`](#maxprosewidth) | Limitez la largeur de la prose dans les réponses de Claude dans un terminal large | Interface and terminal | Any file |

696| [`minimumVersion`](#minimumversion) | Empêchez les [mises à jour automatiques](/docs/fr/setup#pin-a-minimum-version) d'installer quoi que ce soit en dessous d'une version | Updates and versioning | Any file |703| [`minimumVersion`](#minimumversion) | Empêchez les [mises à jour automatiques](/docs/fr/setup#pin-a-minimum-version) d'installer quoi que ce soit en dessous d'une version | Updates and versioning | Any file |

697| [`model`](#model) | Modifiez le [modèle](/docs/fr/model-config#set-a-default-model-for-new-sessions) avec lequel Claude Code démarre | Model and responses | Any file |704| [`model`](#model) | Modifiez le [modèle](/docs/fr/model-config#set-a-default-model-for-new-sessions) avec lequel Claude Code démarre | Model and responses | Any file |

698| [`modelOverrides`](#modeloverrides) | [Mappez les ID de modèle](/docs/fr/model-config#override-model-ids-per-version) aux ID de votre fournisseur, comme les ARN Bedrock | Model and responses | Any file |705| [`modelOverrides`](#modeloverrides) | [Mappez les ID de modèle](/docs/fr/model-config#override-model-ids-per-version) aux ID de votre fournisseur, comme les ARN Bedrock | Model and responses | Any file |


724| [`processWrapper`](#processwrapper) | Exécutez les processus d'arrière-plan de Claude Code via un [lanceur d'entreprise](/docs/fr/corporate-launcher) sur macOS et Linux | Agents, sessions, and worktrees | User or managed |731| [`processWrapper`](#processwrapper) | Exécutez les processus d'arrière-plan de Claude Code via un [lanceur d'entreprise](/docs/fr/corporate-launcher) sur macOS et Linux | Agents, sessions, and worktrees | User or managed |

725| [`promptCacheTtl`](#promptcachettl) | Choisissez la [durée de vie du cache d'invite](/docs/fr/prompt-caching#cache-lifetime) pour la conversation principale | Model and responses | Any file |732| [`promptCacheTtl`](#promptcachettl) | Choisissez la [durée de vie du cache d'invite](/docs/fr/prompt-caching#cache-lifetime) pour la conversation principale | Model and responses | Any file |

726| [`promptSuggestionEnabled`](#promptsuggestionenabled) | Masquez les [suggestions d'invite](/docs/fr/interactive-mode#prompt-suggestions) grisées dans la zone d'entrée | Interface and terminal | Any file |733| [`promptSuggestionEnabled`](#promptsuggestionenabled) | Masquez les [suggestions d'invite](/docs/fr/interactive-mode#prompt-suggestions) grisées dans la zone d'entrée | Interface and terminal | Any file |

734| [`prStatusFooterEnabled`](#prstatusfooterenabled) | Désactivez le badge [statut d'examen PR](/docs/fr/interactive-mode#pr-review-status) du pied de page d'invite et la vérification de demande de tirage derrière lui | Global config settings | Global config |

727| [`prUrlTemplate`](#prurltemplate) | Pointez les liens PR vers un outil d'examen de code interne au lieu de github.com | Git and attribution | Any file |735| [`prUrlTemplate`](#prurltemplate) | Pointez les liens PR vers un outil d'examen de code interne au lieu de github.com | Git and attribution | Any file |

728| [`remote.defaultEnvironmentId`](#remote-defaultenvironmentid) | Choisissez l'[environnement cloud](/docs/fr/cloud-environments) par défaut pour `claude --cloud` ; un ID `ccpool_` auto-hébergé est en lecture seule à partir des paramètres utilisateur et gérés et `--settings` | Remote, desktop, and notifications | Any file |736| [`remote.defaultEnvironmentId`](#remote-defaultenvironmentid) | Choisissez l'[environnement cloud](/docs/fr/cloud-environments) par défaut pour `claude --cloud` ; un ID `ccpool_` auto-hébergé est en lecture seule à partir des paramètres utilisateur et gérés et `--settings` | Remote, desktop, and notifications | Any file |

729| [`remoteControlAtStartup`](#remotecontrolatstartup) | Connectez [Remote Control](/docs/fr/remote-control#enable-remote-control-for-all-sessions) automatiquement quand une session démarre | Remote, desktop, and notifications | Any file |737| [`remoteControlAtStartup`](#remotecontrolatstartup) | Connectez [Remote Control](/docs/fr/remote-control#enable-remote-control-for-all-sessions) automatiquement quand une session démarre | Remote, desktop, and notifications | Any file |


858 866 

859Désactivez la [réflexion étendue](/docs/fr/model-config#extended-thinking) pour chaque session en définissant ceci à `false`. La réflexion est activée par défaut, donc `true` ne change rien. La plupart des gens définissent ceci via `/config` plutôt qu'en éditant le fichier.867Désactivez la [réflexion étendue](/docs/fr/model-config#extended-thinking) pour chaque session en définissant ceci à `false`. La réflexion est activée par défaut, donc `true` ne change rien. La plupart des gens définissent ceci via `/config` plutôt qu'en éditant le fichier.

860 868 

861Sur les modèles qui réfléchissent toujours, comme Opus 5.5 et les modèles Fable, `false` n'a aucun effet. Sur les [fournisseurs tiers](/docs/fr/third-party-integrations), Claude Code omet le paramètre `thinking` au lieu de désactiver la réflexion, donc les modèles de raisonnement adaptatif peuvent toujours réfléchir. Avec la réflexion désactivée sur l'API Anthropic, Claude Code envoie l'effort `high` au lieu d'un niveau supérieur aux modèles qu'il sait [ne pas accepter cette combinaison](/docs/fr/errors#effort-isnt-available-with-thinking-turned-off), comme Opus 5.869Sur les modèles qui réfléchissent toujours, comme Opus 5.5, Sonnet 5.5, et les modèles Fable, `false` n'a aucun effet. Sur les [fournisseurs tiers](/docs/fr/third-party-integrations), Claude Code omet le paramètre `thinking` au lieu de désactiver la réflexion, donc les modèles de raisonnement adaptatif peuvent toujours réfléchir. Avec la réflexion désactivée sur l'API Anthropic, Claude Code envoie l'effort `high` au lieu d'un niveau supérieur aux modèles qu'il sait [ne pas accepter cette combinaison](/docs/fr/errors#effort-isnt-available-with-thinking-turned-off), comme Opus 5.

862 870 

863* **Portée** : [`Tout fichier`](#scopes)871* **Portée** : [`Tout fichier`](#scopes)

864* **Type** : Booléen872* **Type** : Booléen


877 `availableModels`885 `availableModels`

878</h3>886</h3>

879 887 

880Limitez les modèles que les gens peuvent sélectionner pour la session principale, les [sous-agents](/docs/fr/sub-agents), les [compétences](/docs/fr/skills), et l'[advisor](/docs/fr/advisor). Une liste gérée contraint `/model`, `--model`, et la clé `model` dans les fichiers propres d'un développeur ; un modèle en dehors ne peut pas être sélectionné. En soi, cela ne touche pas l'option Par défaut ; associez-le à [`enforceAvailableModels`](#enforceavailablemodels) pour cela.888Limitez les modèles que les gens peuvent sélectionner pour la session principale, les [sous-agents](/docs/fr/sub-agents), les [compétences](/docs/fr/skills), et l'[advisor](/docs/fr/advisor). Une liste gérée contraint `/model`, `--model`, et la clé `model` dans les fichiers propres d'un développeur ; un modèle en dehors ne peut pas être sélectionné. Avec la correspondance de préfixe par défaut, cela ne touche pas l'option Par défaut en soi ; associez-le à [`enforceAvailableModels`](#enforceavailablemodels) pour cela.

881 889 

882* **Portée** : [`Tout fichier`](#scopes). Déployez-le dans les paramètres gérés pour l'appliquer à une organisation.890* **Portée** : [`Tout fichier`](#scopes). Déployez-le dans les paramètres gérés pour l'appliquer à une organisation.

883* **Type** : tableau d'alias de modèles ou d'ID891* **Type** : tableau d'alias de modèles ou d'ID


891}899}

892```900```

893 901 

894Consultez [Restreindre la sélection du modèle](/docs/fr/model-config#restrict-model-selection).902Une entrée d'ID de modèle telle que `"claude-opus-5"` permet également les versions ultérieures qui l'étendent, comme Opus 5.5. Pour bloquer l'une de ces versions, utilisez [`deniedModels`](#deniedmodels). Pour que chaque entrée d'ID de modèle permette uniquement la version qu'elle nomme, utilisez [`availableModelsMatch`](#availablemodelsmatch). Consultez [Restreindre la sélection du modèle](/docs/fr/model-config#restrict-model-selection).

903 

904<h3 id="availablemodelsmatch">

905 `availableModelsMatch`

906</h3>

907 

908Choisissez comment les entrées [`availableModels`](#availablemodels) correspondent aux ID de modèles. Par défaut, une entrée d'ID de modèle permet également les versions ultérieures qui l'étendent, donc `"claude-opus-5"` permet Opus 5.5. Avec `"exact"`, chaque entrée d'ID de modèle permet uniquement la version qu'elle nomme, donc une version plus récente de ce modèle reste bloquée jusqu'à ce que vous la listiez. Nécessite Claude Code v2.1.283 ou ultérieur.

909 

910* **Portée** : [`Géré`](#scopes). Claude Code ignore la clé dans les paramètres utilisateur, de projet et locaux et dans `--settings`, avec un avertissement

911* **Type** : chaîne, l'une de :

912 * `"prefix"` : une entrée d'ID de modèle permet sa version et tout ID de modèle qui l'étend avec un autre segment

913 * `"exact"` : une entrée d'ID de modèle permet uniquement la version qu'elle nomme, y compris les ID datés de cette version, donc `"claude-opus-5"` permet Opus 5 mais pas `claude-opus-5-5`. Un alias de famille comme `"opus"` permet toujours la famille entière, et les entrées `best`, `opusplan`, et `default` sont ignorées

914* **Par défaut** : `"prefix"`

915 

916Cet exemple permet Opus 5 et Sonnet 5 et aucune version ultérieure de l'un ou l'autre :

917 

918```json managed-settings.json theme={null}

919{

920 "availableModels": ["claude-opus-5", "claude-sonnet-5"],

921 "availableModelsMatch": "exact"

922}

923```

924 

925Avec `"exact"`, l'option Par défaut est également limitée aux modèles énumérés chaque fois que la liste nomme au moins un modèle ou une famille. Consultez [Bloquer des modèles ou des versions spécifiques](/docs/fr/model-config#block-specific-models-or-versions).

926 

927<h3 id="deniedmodels">

928 `deniedModels`

929</h3>

930 

931Bloquez des modèles spécifiques, avec ou sans une liste d'autorisation [`availableModels`](#availablemodels) et même quand cette liste les permet. Claude Code masque un modèle bloqué du sélecteur `/model`, et le modèle ne peut pas être sélectionné nulle part où `availableModels` est appliqué. Une session sur l'option Par défaut n'exécute pas non plus un modèle bloqué, comme [Bloquer des modèles ou des versions spécifiques](/docs/fr/model-config#block-specific-models-or-versions) le décrit. Nécessite Claude Code v2.1.283 ou ultérieur.

932 

933* **Portée** : [`Géré`](#scopes). Claude Code ignore la clé dans les paramètres utilisateur, de projet et locaux et dans `--settings`, avec un avertissement

934* **Type** : tableau d'alias de modèles ou d'ID

935 * Un alias de famille comme `"opus"` bloque chaque modèle de cette famille

936 * Un ID de modèle comme `"claude-opus-5-5"` bloque cette version dans chaque orthographe, y compris les ID datés et spécifiques au fournisseur

937 * Un ID de modèle sans version mineure, comme `"claude-opus-5"`, bloque également les versions mineures ultérieures comme Opus 5.5. Écrivez `"claude-opus-5-0"` pour bloquer Opus 5 seul

938 * Les entrées `best`, `opusplan`, et `default` sont ignorées

939* **Par défaut** : non défini, donc aucun modèle n'est bloqué

940 

941Cet exemple permet les modèles Opus et Sonnet et bloque Opus 5.5 :

942 

943```json managed-settings.json theme={null}

944{

945 "availableModels": ["opus", "sonnet"],

946 "deniedModels": ["claude-opus-5-5"]

947}

948```

949 

950Consultez [Bloquer des modèles ou des versions spécifiques](/docs/fr/model-config#block-specific-models-or-versions).

895 951 

896<h3 id="effortlevel">952<h3 id="effortlevel">

897 `effortLevel`953 `effortLevel`


926 `enforceAvailableModels`982 `enforceAvailableModels`

927</h3>983</h3>

928 984 

929Le sélecteur `/model` a une option **Par défaut** qui se résout à votre [modèle par défaut de l'organisation](/docs/fr/model-config#organization-default-model) quand l'une s'applique, et sinon au défaut de votre type de compte. Une liste d'autorisation [`availableModels`](#availablemodels) limite les modèles que vous pouvez nommer, mais en soi elle laisse **Par défaut** seul, donc **Par défaut** peut toujours se résoudre à un modèle en dehors de la liste. Cette clé comble cette lacune. Nécessite Claude Code v2.1.175 ou ultérieur.985Le sélecteur `/model` a une option **Par défaut**, et [paramètre de modèle par défaut](/docs/fr/model-config#default-model-setting) décrit le modèle auquel il se résout. Une liste d'autorisation [`availableModels`](#availablemodels) limite les modèles que vous pouvez nommer, mais avec la [correspondance de préfixe](#availablemodelsmatch) par défaut elle ne remapppe pas le défaut de votre type de compte, donc **Par défaut** peut toujours se résoudre à un modèle en dehors de la liste. Cette clé comble cette lacune. Nécessite Claude Code v2.1.175 ou ultérieur.

930 986 

931Quand votre organisation déploie des paramètres gérés, Claude Code lit cette clé à partir de la source gérée uniquement et l'ignore dans vos autres fichiers.987Quand votre organisation déploie des paramètres gérés, Claude Code lit cette clé à partir de la source gérée uniquement et l'ignore dans vos autres fichiers.

932 988 

933* **Portée** : [`Tout fichier`](#scopes)989* **Portée** : [`Tout fichier`](#scopes)

934* **Type** : Booléen990* **Type** : Booléen

935 * `true` : quand **Par défaut** se résoudrait à un modèle en dehors de `availableModels`, Claude Code le résout au premier modèle disponible de la liste991 * `true` : quand **Par défaut** se résoudrait à un modèle en dehors de `availableModels`, Claude Code le résout au premier modèle disponible de la liste

936 * `false` : **Par défaut** se résout comme d'habitude, même à un modèle en dehors de `availableModels`992 * `false` : cette clé ne change pas comment **Par défaut** se résout

937* **Par défaut** : `false`993* **Par défaut** : `false`

938 994 

939Cet exemple restreint les sélections nommées aux modèles Sonnet et Haiku et fait que **Par défaut** se résout au premier d'entre eux qui est disponible :995Cet exemple restreint les sélections nommées aux modèles Sonnet et Haiku et fait que **Par défaut** se résout au premier d'entre eux qui est disponible :


1036* **Portée** : [`Tout fichier`](#scopes). Déployez-le dans les paramètres gérés pour l'appliquer à une organisation. Quand plusieurs portées définissent une limite, la plus basse s'applique, donc une limite définie dans une portée ne peut pas être augmentée à partir d'une autre1092* **Portée** : [`Tout fichier`](#scopes). Déployez-le dans les paramètres gérés pour l'appliquer à une organisation. Quand plusieurs portées définissent une limite, la plus basse s'applique, donc une limite définie dans une portée ne peut pas être augmentée à partir d'une autre

1037* **Type** : chaîne, l'une de `"low"`, `"medium"`, `"high"`, `"xhigh"`, ou `"max"`. Une valeur `"max"` ne définit aucune limite1093* **Type** : chaîne, l'une de `"low"`, `"medium"`, `"high"`, `"xhigh"`, ou `"max"`. Une valeur `"max"` ne définit aucune limite

1038* **Par défaut** : non défini, donc aucune limite ne s'applique1094* **Par défaut** : non défini, donc aucune limite ne s'applique

1039* **Effet sur ultracode** : une limite inférieure à `xhigh` rend [ultracode](#ultracode) indisponible sur les modèles auxquels la limite s'applique

1040* **Limites par modèle** : ajoutez `maxEffortLevel` à l'entrée [`modelSettings`](#modelsettings) d'un modèle. Cette entrée remplace cette clé pour le modèle uniquement dans la source de paramètres qui définit les deux, comme vos paramètres utilisateur ou une [source gérée](/docs/fr/managed-settings#how-claude-code-combines-managed-sources). Définissez `"max"` là pour exempter le modèle de la limite de cette source ; Claude Code applique toujours les limites d'autres sources1095* **Limites par modèle** : ajoutez `maxEffortLevel` à l'entrée [`modelSettings`](#modelsettings) d'un modèle. Cette entrée remplace cette clé pour le modèle uniquement dans la source de paramètres qui définit les deux, comme vos paramètres utilisateur ou une [source gérée](/docs/fr/managed-settings#how-claude-code-combines-managed-sources). Définissez `"max"` là pour exempter le modèle de la limite de cette source ; Claude Code applique toujours les limites d'autres sources

1041 1096 

1042Cet exemple limite chaque modèle à `medium` et exempte Sonnet 4.6 :1097Cet exemple limite chaque modèle à `medium` et exempte Sonnet 4.6 :


1134 1189 

1135| Champ | Type | Ce qu'il fait |1190| Champ | Type | Ce qu'il fait |

1136| :- | :- | :- |1191| :- | :- | :- |

1137| `options` | tableau de lignes, chacune avec un `model` requis et un `label` et une `description` optionnels | Les lignes que le sélecteur affiche, dans cet ordre, sauf qu'une ligne grisée se déplace vers le bas. Sans un `label`, Claude Code titre la ligne avec le nom intégré pour un modèle qu'il connaît, ou l'ID du modèle sinon, et sans une `description` il écrit une deuxième ligne générique |1192| `options` | tableau de lignes, chacune avec un `model` requis et un `label`, une `description`, et un `behavesAs` optionnels | Les lignes que le sélecteur affiche, dans cet ordre, sauf qu'une ligne grisée se déplace vers le bas. Sans un `label`, Claude Code titre la ligne avec le nom intégré pour un modèle qu'il connaît, ou l'ID du modèle sinon, et sans une `description` il écrit une deuxième ligne générique |

1138| `replaceBuiltInOptions` | Booléen, par défaut `false` | Définissez-le à `true` pour afficher uniquement ces lignes, **Par défaut**, et une ligne pour le modèle que la session utilise déjà. Laissez-le non défini pour ajouter ces lignes après la gamme intégrée |1193| `replaceBuiltInOptions` | Booléen, par défaut `false` | Définissez-le à `true` pour afficher uniquement ces lignes, **Par défaut**, et une ligne pour le modèle que la session utilise déjà. Laissez-le non défini pour ajouter ces lignes après la gamme intégrée |

1139 1194 

1195Une entrée dans `options` peut également porter une chaîne `behavesAs` optionnelle à côté de son `model`, qui nécessite v2.1.257 ou ultérieur. Définissez-la à l'ID d'un modèle que votre version de Claude Code connaît déjà, comme `claude-opus-4-8`, sur une entrée dont le `model` est plus récent que votre version. Claude Code applique alors les capacités et les défauts d'effort de ce modèle connu à l'entrée au lieu de traiter son modèle comme inconnu. L'étiquette de l'entrée et l'ID du modèle que Claude Code envoie dans les demandes ne changent pas.

1196 

1140Avec `replaceBuiltInOptions` activé, Claude Code masque chaque autre ligne : la gamme intégrée, les lignes qu'il ajoute pour les entrées [`availableModels`](#availablemodels), les modèles que la [découverte de passerelle](/docs/fr/llm-gateway-protocol#model-discovery) a trouvés, et [`ANTHROPIC_CUSTOM_MODEL_OPTION`](/docs/fr/model-config#add-a-custom-model-option). Avec lui désactivé, Claude Code saute un modèle énuméré que la gamme intégrée couvre déjà. Un label change ce que le sélecteur affiche, pas quel modèle Claude Code exécute.1197Avec `replaceBuiltInOptions` activé, Claude Code masque chaque autre ligne : la gamme intégrée, les lignes qu'il ajoute pour les entrées [`availableModels`](#availablemodels), les modèles que la [découverte de passerelle](/docs/fr/llm-gateway-protocol#model-discovery) a trouvés, et [`ANTHROPIC_CUSTOM_MODEL_OPTION`](/docs/fr/model-config#add-a-custom-model-option). Avec lui désactivé, Claude Code saute un modèle énuméré que la gamme intégrée couvre déjà. Un label change ce que le sélecteur affiche, pas quel modèle Claude Code exécute.

1141 1198 

1142Une liste d'autorisation [`availableModels`](#availablemodels) s'applique toujours à ces lignes. Avant d'ajouter un modèle énuméré à la liste d'autorisation, lisez [Comportement de fusion](/docs/fr/model-config#merge-behavior) : un ID de modèle spécifique restreint l'entrée générique de sa famille. Claude Code vérifie également chaque ligne par rapport à la session avant d'afficher le sélecteur :1199Une liste d'autorisation [`availableModels`](#availablemodels) s'applique toujours à ces lignes. Avant d'ajouter un modèle énuméré à la liste d'autorisation, lisez [Comportement de fusion](/docs/fr/model-config#merge-behavior) : un ID de modèle spécifique restreint l'entrée générique de sa famille. Claude Code vérifie également chaque ligne par rapport à la session avant d'afficher le sélecteur :


1351 `ultracode`1408 `ultracode`

1352</h3>1409</h3>

1353 1410 

1354Démarrez les sessions avec [ultracode](/docs/fr/workflows#let-claude-decide-with-ultracode) activé. Avec lui activé, Claude planifie un workflow pour chaque tâche substantielle au lieu d'attendre que vous le demandiez. Claude planifie les workflows uniquement quand les [workflows dynamiques](/docs/fr/workflows) sont activés pour vous, votre modèle supporte l'effort `xhigh`, et aucune [limite d'effort](/docs/fr/model-config#organization-effort-limits) inférieure à `xhigh` ne s'applique. De toute façon, `ultracode: true` exécute la session à l'effort `xhigh`, ou à la limite quand une limite d'effort est inférieure. Claude Code lit cette clé mais ne l'écrit jamais : `/effort ultracode` active ultracode pour la session actuelle uniquement.1411Démarrez les sessions avec [ultracode](/docs/fr/workflows#let-claude-decide-with-ultracode) activé. Avec lui activé, Claude planifie un workflow pour chaque tâche substantielle au lieu d'attendre que vous le demandiez. Claude planifie les workflows uniquement quand les [workflows dynamiques](/docs/fr/workflows) sont activés pour vous et votre modèle supporte l'effort `xhigh`. La clé ne change pas le niveau d'effort de la session : ultracode s'exécute au niveau que la session utilise. Claude Code lit cette clé mais ne l'écrit jamais : `/effort ultracode` active ultracode pour la session actuelle uniquement.

1355 1412 

1356* **Portée** : [`Tout fichier`](#scopes)1413* **Portée** : [`Tout fichier`](#scopes)

1357* **Type** : Booléen1414* **Type** : Booléen

1358 * `true` : les sessions commencent à l'effort `xhigh`, avec ultracode activé quand les workflows dynamiques sont activés pour vous, votre modèle supporte `xhigh`, et aucune limite d'effort n'est inférieure à `xhigh`1415 * `true` : les sessions commencent avec ultracode activé quand les workflows dynamiques sont activés pour vous et votre modèle supporte `xhigh`

1359 * `false` : les sessions commencent avec ultracode désactivé1416 * `false` : les sessions commencent avec ultracode désactivé

1360* **Par défaut** : non défini, donc ultracode est désactivé1417* **Par défaut** : non défini, donc ultracode est désactivé

1361* **Remplacements par session** : `/effort ultracode` active ultracode pour une session sans cette clé. L'indicateur `--effort ultracode` l'active également pour une session et nécessite Claude Code v2.1.203 ou ultérieur1418* **Remplacements par session** : `/effort ultracode` active ultracode pour une session sans cette clé, et `/effort ultracode off` le désactive pour une session quand cette clé est `true`. L'indicateur `--effort ultracode` l'active également pour une session, à l'effort `xhigh`, et nécessite Claude Code v2.1.203 ou ultérieur

1362 1419 

1363```json settings.json theme={null}1420```json settings.json theme={null}

1364{1421{


1366}1423}

1367```1424```

1368 1425 

1369Ultracode exécute la session à l'effort `xhigh` et a la priorité sur `effortLevel` et les entrées [`modelSettings`](#modelsettings). Si une [limite d'effort](/docs/fr/model-config#organization-effort-limits) inférieure à `xhigh` s'applique au modèle, comme un paramètre [`maxEffortLevel`](#maxeffortlevel), la session s'exécute à la limite à la place et ultracode reste désactivé. Claude ne planifie alors pas les workflows de son propre chef, et `/effort` n'offre pas `ultracode`. Une demande de contrôle `apply_flag_settings` de l'Agent SDK accepte également la clé.1426Le niveau d'effort de la session provient de [`effortLevel`](#effortlevel), [`modelSettings`](#modelsettings), et des autres [sources d'effort](/docs/fr/model-config#adjust-effort-level), et une [limite d'effort](/docs/fr/model-config#organization-effort-limits) comme [`maxEffortLevel`](#maxeffortlevel) abaisse ce niveau sans désactiver ultracode. Ceci et la forme `/effort ultracode off` nécessitent Claude Code v2.1.284 ou ultérieur. Avant la v2.1.284, `ultracode: true` exécutait la session à l'effort `xhigh`, et une limite d'effort inférieure à `xhigh` gardait ultracode désactivé. Une demande de contrôle `apply_flag_settings` de l'Agent SDK accepte également la clé.

1370 1427 

1371<h2 id="permission-settings">1428<h2 id="permission-settings">

1372 Paramètres de permission1429 Paramètres de permission


1489 `useAutoModeDuringPlan`1546 `useAutoModeDuringPlan`

1490</h3>1547</h3>

1491 1548 

1492Choisissez si Claude Code utilise le classificateur du mode auto pour examiner les commandes shell en mode plan. Avec la valeur par défaut `true`, le classificateur examine chaque commande pendant la planification quand le mode auto est disponible et que vous ne voyez aucune invite. Définissez `false` pour obtenir une invite de permission pour chaque commande en dehors de l'ensemble intégré en lecture seule. Apparaît dans `/config` comme **Use auto mode during plan**.1549Choisissez si Claude Code utilise le classificateur du mode auto pour examiner les commandes shell en mode plan. Avec la valeur par défaut `true`, le classificateur examine chaque commande pendant la planification quand le mode auto est disponible et que vous ne voyez aucune invite, sauf pour [les suppressions de chemins critiques](/docs/fr/permission-modes#critical-paths). Définissez `false` pour obtenir une invite de permission pour chaque commande en dehors de l'ensemble intégré en lecture seule. Apparaît dans `/config` comme **Use auto mode during plan**.

1493 1550 

1494* **Portée** : [`User, local, or managed`](#scopes). Un dépôt ne peut pas l'éteindre pour vous.1551* **Portée** : [`User, local, or managed`](#scopes). Un dépôt ne peut pas l'éteindre pour vous.

1495* **Type** : Booléen1552* **Type** : Booléen

1496 * `true` : identique à non défini ; quand le mode auto est disponible, le classificateur examine chaque commande shell pendant la planification au lieu de vous la demander. Un `false` dans l'un de ces fichiers l'éteint toujours1553 * `true` : identique à non défini ; quand le mode auto est disponible, le classificateur examine chaque commande shell pendant la planification au lieu de vous la demander, sauf [les suppressions de chemins critiques](/docs/fr/permission-modes#critical-paths). Un `false` dans l'un de ces fichiers l'éteint toujours

1497 * `false` : vous obtenez une invite de permission pour chaque commande en dehors de l'ensemble intégré en lecture seule1554 * `false` : vous obtenez une invite de permission pour chaque commande en dehors de l'ensemble intégré en lecture seule

1498* **Défaut** : `true`1555* **Défaut** : `true`

1499 1556 


1649 `permissions.defaultMode`1706 `permissions.defaultMode`

1650</h3>1707</h3>

1651 1708 

1652Définissez le [mode de permission](/docs/fr/permission-modes) que les nouvelles sessions démarrent. Quand vous le laissez non défini, les sessions démarrent dans la [valeur par défaut intégrée](/docs/fr/permission-modes#which-mode-a-session-starts-in) pour votre plan et votre surface.1709Définissez le [mode de permission](/docs/fr/permission-modes) que les nouvelles sessions démarrent. Quand vous le laissez non défini, les sessions démarrent dans la [valeur par défaut intégrée](/docs/fr/permission-modes#which-mode-a-session-starts-in) pour votre surface.

1653 1710 

1654* **Portée** : [`Any file`](#scopes). `auto` et `bypassPermissions` ne prennent pas effet à partir des paramètres du projet ou local, donc définissez-les plutôt dans `~/.claude/settings.json`. Avant la v2.1.257, `bypassPermissions` prenait effet à partir de n'importe quel fichier. Pour les conversations que l'extension VS Code démarre, Claude Code lit uniquement les valeurs utilisateur, gérées et `--settings`.1711* **Portée** : [`Any file`](#scopes). `auto` et `bypassPermissions` ne prennent pas effet à partir des paramètres du projet ou local, donc définissez-les plutôt dans `~/.claude/settings.json`. Avant la v2.1.257, `bypassPermissions` prenait effet à partir de n'importe quel fichier. Pour les conversations que l'extension VS Code démarre, Claude Code lit uniquement les valeurs utilisateur, gérées et `--settings`.

1655* **Type** : chaîne, l'une des :1712* **Type** : chaîne, l'une des :


3017* [`CLAUDE_CODE_MESSAGING_SOCKET` et `CLAUDE_CODE_MESSAGING_TOKEN`](/docs/fr/env-vars#variables), que Claude Code exporte lui-même, sont ignorées de chaque fichier. Ignorer la variable de socket nécessite Claude Code v2.1.224 ou ultérieur, et ignorer le jeton nécessite v2.1.228 ou ultérieur.3074* [`CLAUDE_CODE_MESSAGING_SOCKET` et `CLAUDE_CODE_MESSAGING_TOKEN`](/docs/fr/env-vars#variables), que Claude Code exporte lui-même, sont ignorées de chaque fichier. Ignorer la variable de socket nécessite Claude Code v2.1.224 ou ultérieur, et ignorer le jeton nécessite v2.1.228 ou ultérieur.

3018* [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/fr/sessions#name-the-project-directory-yourself), que Claude Code lit uniquement à partir de l'environnement de lancement, est ignorée de chaque fichier ; nécessite v2.1.234 ou ultérieur.3075* [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/fr/sessions#name-the-project-directory-yourself), que Claude Code lit uniquement à partir de l'environnement de lancement, est ignorée de chaque fichier ; nécessite v2.1.234 ou ultérieur.

3019* [`CLAUDE_CODE_RESTRICTED`](/docs/fr/env-vars#variables), que Claude Code lit uniquement à partir de l'environnement de lancement, est ignorée de chaque fichier.3076* [`CLAUDE_CODE_RESTRICTED`](/docs/fr/env-vars#variables), que Claude Code lit uniquement à partir de l'environnement de lancement, est ignorée de chaque fichier.

3077* [`CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY`](/docs/fr/env-vars#variables), que Claude Code lit uniquement à partir de l'environnement de lancement, est ignorée de chaque fichier. La variable nécessite Claude Code v2.1.283 ou ultérieur.

3078* [`CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` et `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT`](/docs/fr/env-vars#variables), que Claude Code lit uniquement à partir de l'environnement de lancement, sont ignorées de chaque fichier.

3020 3079 

3021<h3 id="filecheckpointingenabled">3080<h3 id="filecheckpointingenabled">

3022 `fileCheckpointingEnabled`3081 `fileCheckpointingEnabled`


3416* **Type** : chaîne de caractères, `"classic"` ou `"readline"`3475* **Type** : chaîne de caractères, `"classic"` ou `"readline"`

3417* **Défaut** : non défini3476* **Défaut** : non défini

3418 3477 

3478<h3 id="maxprosewidth">

3479 `maxProseWidth`

3480</h3>

3481 

3482Limitez la largeur de la prose dans les réponses de Claude afin que les lignes restent lisibles dans un terminal large. Les paragraphes, les titres, les listes, et les citations en bloc s'enroulent dans ce nombre de colonnes, tandis que les tableaux et les blocs de code conservent la largeur complète du terminal. Nécessite Claude Code v2.1.282 ou ultérieur.

3483 

3484* **Portée** : [`N'importe quel fichier`](#scopes)

3485* **Type** : nombre de colonnes de terminal, un nombre entier, minimum `40`. Claude Code ignore toute autre valeur

3486* **Défaut** : non défini, donc la prose s'enroule au bord du terminal

3487 

3488```json settings.json theme={null}

3489{

3490 "maxProseWidth": 80

3491}

3492```

3493 

3419<h3 id="prefersreducedmotion">3494<h3 id="prefersreducedmotion">

3420 `prefersReducedMotion`3495 `prefersReducedMotion`

3421</h3>3496</h3>


4090 4165 

4091* **Portée** : [`Any file`](#scopes)4166* **Portée** : [`Any file`](#scopes)

4092* **Type** : chaîne4167* **Type** : chaîne

4093* **Défaut** : non défini, donc Claude Code ajoute `Co-Authored-By: <name> <noreply@anthropic.com>`. Le nom est le modèle actif de la session, tel que `Claude Sonnet 5`.4168* **Défaut** : non défini, donc Claude Code ajoute `Co-Authored-By: <name> <noreply@anthropic.com>`. Le nom est le modèle en utilisation lorsque le commit est effectué, tel que `Claude Sonnet 5`. Lorsqu'un [subagent](/docs/fr/sub-agents) effectue le commit, la trailer nomme le modèle du subagent.

4094 * Lorsque Claude Code reconnaît le modèle comme un modèle Claude mais ne peut pas confirmer sa version exacte, il écrit `Claude` seul.4169 * Lorsque Claude Code reconnaît le modèle comme un modèle Claude mais ne peut pas confirmer sa version exacte, il écrit `Claude` seul.

4095 * Lorsqu'il ne peut pas faire correspondre l'ID du modèle à un modèle Claude, tel qu'un modèle tiers servi via une [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) personnalisée, il écrit `Claude Code`.4170 * Lorsqu'il ne peut pas faire correspondre l'ID du modèle à un modèle Claude, tel qu'un modèle tiers servi via une [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) personnalisée, il écrit `Claude Code`.

4096 4171 


5689* **Type** : Booléen5764* **Type** : Booléen

5690 * `true` : Claude Code connecte le Contrôle à distance automatiquement quand chaque session interactive démarre5765 * `true` : Claude Code connecte le Contrôle à distance automatiquement quand chaque session interactive démarre

5691 * `false` : Claude Code attend `/remote-control`5766 * `false` : Claude Code attend `/remote-control`

5692* **Défaut** : non défini, donc la connexion automatique suit la valeur par défaut d'administrateur de votre organisation quand une est définie, et sinon la valeur par défaut actuelle de Claude Code5767* **Défaut** : non défini, donc la [connexion automatique par défaut](/docs/fr/remote-control#enable-remote-control-for-all-sessions) s'applique

5693* **Remplacements par session** : `--remote-control` active le Contrôle à distance pour une session même quand cette clé est `false`, et aucun indicateur ne le désactive pour une session5768* **Remplacements par session** : `--remote-control` active le Contrôle à distance pour une session même quand cette clé est `false`, et aucun indicateur ne le désactive pour une session

5694 5769 

5695```json settings.json theme={null}5770```json settings.json theme={null}


6094 `cleanupPeriodDays`6169 `cleanupPeriodDays`

6095</h3>6170</h3>

6096 6171 

6097Définissez le nombre de jours pendant lesquels Claude Code conserve les [transcriptions de session et autres données d'application](/docs/fr/claude-directory#cleaned-up-automatically) avant de les supprimer. Claude Code exécute la suppression en tant que balayage en arrière-plan après le démarrage d'une session, tant qu'il peut déterminer en toute sécurité la période de rétention.6172Définissez le nombre de jours pendant lesquels Claude Code conserve les [transcriptions de session et autres données d'application](/docs/fr/claude-directory#cleaned-up-automatically) avant de les supprimer. Claude Code exécute la suppression en tant que balayage en arrière-plan après le démarrage d'une session, tant qu'il peut déterminer en toute sécurité la période de rétention. Le balayage supprime les transcriptions sans afficher de message, donc une session que vous n'avez pas utilisée plus longtemps que la période de rétention n'apparaît plus dans le sélecteur [`/resume`](/docs/fr/sessions#resume-a-session).

6098 6173 

6099* **Portée** : [`Any file`](#scopes)6174* **Portée** : [`Any file`](#scopes)

6100* **Type** : nombre de jours, un nombre entier, minimum `1`6175* **Type** : nombre de jours, un nombre entier, minimum `1`


6197 `disableSideloadFlags`6272 `disableSideloadFlags`

6198</h3>6273</h3>

6199 6274 

6200Rejeter les drapeaux CLI `--plugin-dir`, `--plugin-url`, `--agents` et `--mcp-config` au démarrage, que les utilisateurs pourraient autrement transmettre pour contourner [`strictKnownMarketplaces`](#strictknownmarketplaces) pour une seule exécution. Claude Code se termine avec une erreur nommant les drapeaux rejetés et applique la même vérification aux surfaces qui démarrent le CLI avec ces drapeaux en interne, actuellement les sessions locales [Cowork](/docs/fr/desktop) dans l'application de bureau. Dans les [sessions cloud](/docs/fr/claude-code-on-the-web), Claude Code supprime les serveurs MCP que le serveur a livrés via `--mcp-config`, à l'exception des entrées `type: "sdk"` en processus, et démarre la session. Nécessite Claude Code v2.1.193 ou ultérieur.6275Rejeter les drapeaux CLI `--plugin-dir`, `--plugin-url`, `--agents` et `--mcp-config` au démarrage, que les utilisateurs pourraient autrement transmettre pour contourner [`strictKnownMarketplaces`](#strictknownmarketplaces) pour une seule exécution. Claude Code se ferme avec une erreur nommant les drapeaux rejetés et applique la même vérification aux surfaces qui démarrent le CLI avec ces drapeaux en interne, actuellement les sessions locales [Cowork](/docs/fr/desktop) dans l'application de bureau. Dans les [sessions cloud](/docs/fr/claude-code-on-the-web), Claude Code supprime les serveurs MCP que le serveur a livrés via `--mcp-config`, sauf les entrées `type: "sdk"` en processus, et démarre la session. Nécessite Claude Code v2.1.193 ou ultérieur.

6201 6276 

6202* **Portée** : [`Managed`](#scopes)6277* **Portée** : [`Managed`](#scopes)

6203* **Type** : Booléen6278* **Type** : Booléen

6204 * `true` : Claude Code rejette `--plugin-dir`, `--plugin-url`, `--agents` et `--mcp-config` au démarrage et se termine avec une erreur les nommant, sauf que dans les sessions cloud il supprime les serveurs MCP que le serveur a livrés via `--mcp-config`, à l'exception des entrées `type: "sdk"` en processus, et démarre la session6279 * `true` : Claude Code rejette `--plugin-dir`, `--plugin-url`, `--agents` et `--mcp-config` au démarrage et se ferme avec une erreur les nommant, sauf que dans les sessions cloud il supprime les serveurs MCP que le serveur a livrés via `--mcp-config`, sauf les entrées `type: "sdk"` en processus, et démarre la session

6205 * `false` : Claude Code accepte ces drapeaux6280 * `false` : Claude Code accepte ces drapeaux

6206* **Défaut** : `false`6281* **Défaut** : `false`

6207 6282 


6213 6288 

6214Claude Code accepte toujours un `--mcp-config` dont les serveurs sont tous des entrées `type: "sdk"` en processus, de sorte que le SDK Agent et l'extension VS Code continuent de fonctionner. Les utilisateurs peuvent toujours ajouter des serveurs avec `claude mcp add` ou un fichier `.mcp.json` ; pour un contrôle par serveur, définissez également [`allowedMcpServers`](/docs/fr/managed-mcp). Nécessite Claude Code v2.1.193 ou ultérieur.6289Claude Code accepte toujours un `--mcp-config` dont les serveurs sont tous des entrées `type: "sdk"` en processus, de sorte que le SDK Agent et l'extension VS Code continuent de fonctionner. Les utilisateurs peuvent toujours ajouter des serveurs avec `claude mcp add` ou un fichier `.mcp.json` ; pour un contrôle par serveur, définissez également [`allowedMcpServers`](/docs/fr/managed-mcp). Nécessite Claude Code v2.1.193 ou ultérieur.

6215 6290 

6216La même vérification couvre les dossiers de plugins nommés dans la variable d'environnement [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/fr/env-vars#variables), ce qui nécessite Claude Code v2.1.280 ou ultérieur. Lorsque la variable nomme un dossier, Claude Code se termine avec la même erreur, et l'erreur dit de désactiver la variable.6291La même vérification couvre les dossiers de plugins nommés dans la variable d'environnement [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/fr/env-vars#variables), ce qui nécessite Claude Code v2.1.280 ou ultérieur. Lorsque la variable nomme un dossier, Claude Code se ferme avec la même erreur, et l'erreur dit de désactiver la variable.

6217 6292 

6218Dans les sessions cloud, Claude Code ignore également les mises à jour MCP livrées par le serveur en milieu de session, le chemin derrière la configuration de session cloud et les appels SDK `setMcpServers()` qui atteignent ces sessions. Les entrées `type: "sdk"` en processus restent exemptes là aussi. Avant v2.1.239, un `--mcp-config` livré par le serveur bloquait le démarrage d'une session cloud.6293Dans les sessions cloud, Claude Code ignore également les mises à jour MCP livrées en milieu de session, le chemin derrière la configuration de session cloud et les appels SDK `setMcpServers()` qui atteignent ces sessions. Les entrées `type: "sdk"` en processus restent exemptes là aussi. Avant v2.1.239, un `--mcp-config` livré par le serveur bloquait le démarrage d'une session cloud.

6219 6294 

6220<h3 id="forceremotesettingsrefresh">6295<h3 id="forceremotesettingsrefresh">

6221 `forceRemoteSettingsRefresh`6296 `forceRemoteSettingsRefresh`

6222</h3>6297</h3>

6223 6298 

6224Bloquer le démarrage du CLI jusqu'à ce que Claude Code ait récemment récupéré les [paramètres gérés par le serveur](/docs/fr/server-managed-settings). Si la récupération échoue, Claude Code se termine au lieu de continuer avec les paramètres en cache ou aucun paramètre. Définissez-le lorsque votre environnement ne peut pas accepter même une brève fenêtre au cours de laquelle une session s'exécute sans sa politique gérée.6299Bloquer le démarrage du CLI jusqu'à ce que Claude Code ait récemment récupéré les [paramètres gérés par le serveur](/docs/fr/server-managed-settings). Si la récupération échoue, Claude Code se ferme au lieu de continuer avec les paramètres en cache ou aucun paramètre. Définissez-le lorsque votre environnement ne peut pas accepter même une brève fenêtre dans laquelle une session s'exécute sans sa politique gérée.

6225 6300 

6226Lorsque la clé n'est pas définie, Claude Code ne bloque pas le démarrage sur la récupération, bien que lorsque le développeur se connecte au démarrage, il attend jusqu'à cinq secondes pour la récupération. Une session de passerelle Cloud attend toujours et se termine si la passerelle ne peut pas être atteinte.6301Lorsque la clé n'est pas définie, Claude Code ne bloque pas le démarrage sur la récupération, bien que lorsque le développeur se connecte au démarrage, il attend jusqu'à cinq secondes pour la récupération. Une session de passerelle Cloud attend toujours et se ferme si la passerelle ne peut pas être atteinte.

6227 6302 

6228* **Portée** : [`Managed`](#scopes). Claude Code honore un `true` de n'importe quelle source gérée contrôlée par l'administrateur, même celle qui n'est pas la source de plus haute priorité.6303* **Portée** : [`Managed`](#scopes). Claude Code honore un `true` de n'importe quelle source gérée contrôlée par l'administrateur, même une qui n'est pas la source de plus haute priorité.

6229* **Type** : Booléen6304* **Type** : Booléen

6230 * `true` : Claude Code bloque le démarrage jusqu'à ce qu'il ait récemment récupéré les paramètres gérés par le serveur, et se termine si la récupération échoue6305 * `true` : Claude Code bloque le démarrage jusqu'à ce qu'il ait récemment récupéré les paramètres gérés par le serveur, et se ferme si la récupération échoue

6231 * `false` : Claude Code ne bloque pas le démarrage sur la récupération, bien qu'au démarrage d'une connexion il attende jusqu'à cinq secondes pour la récupération6306 * `false` : Claude Code ne bloque pas le démarrage sur la récupération, bien qu'au démarrage d'une connexion il attende jusqu'à cinq secondes pour la récupération

6232* **Défaut** : `false`6307* **Défaut** : `false`

6233 6308 


6237}6312}

6238```6313```

6239 6314 

6240Définissez-le dans un profil MDM ou le fichier de paramètres gérés pour appliquer un démarrage fermé avant l'arrivée du premier payload du serveur. Claude Code applique la vérification uniquement dans les sessions qui récupèrent les paramètres gérés par le serveur, de sorte qu'une session qui [ne les récupère pas](/docs/fr/server-managed-settings#platform-availability) démarre sans attendre. Les sous-commandes `claude auth` sont exemptes, de sorte que les utilisateurs peuvent se réauthentifier lorsque les identifiants expirés sont la raison de l'échec de la récupération. Voir [Appliquer un démarrage fermé](/docs/fr/server-managed-settings#enforce-fail-closed-startup).6315Définissez-le dans un profil MDM ou le fichier de paramètres gérés pour appliquer un démarrage fermé en cas d'échec avant l'arrivée du premier payload du serveur. Claude Code applique la vérification uniquement dans les sessions qui récupèrent les paramètres gérés par le serveur, de sorte qu'une session qui [ne les récupère pas](/docs/fr/server-managed-settings#platform-availability) démarre sans attendre. Les sous-commandes `claude auth` sont exemptes, de sorte que les utilisateurs peuvent se réauthentifier lorsque les identifiants expirés sont la raison de l'échec de la récupération. Voir [Appliquer un démarrage fermé en cas d'échec](/docs/fr/server-managed-settings#enforce-fail-closed-startup).

6241 6316 

6242<h3 id="managedsourcesbehavior">6317<h3 id="managedsourcesbehavior">

6243 `managedSourcesBehavior`6318 `managedSourcesBehavior`

6244</h3>6319</h3>

6245 6320 

6246Choisissez si Claude Code applique uniquement la [source gérée](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) de plus haute priorité que votre organisation livre, ou combine chaque source d'administrateur qu'elle livre. Par défaut, Claude Code prend la source de plus haute priorité qui porte une [clé de politique](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) et ignore le reste. Une clé de politique est n'importe quelle clé de paramètres autre que celle-ci et `wslInheritsWindowsSettings`. Donc une fois que les paramètres gérés par le serveur ou une politique MDM livrent une clé de politique, un fichier `managed-settings.json` ne contribue que les [clés que Claude Code lit de chaque source d'administrateur](/docs/fr/managed-settings#keys-read-from-every-admin-source). Avec `"merge"`, chaque source d'administrateur que vous livrez contribue ses clés à une politique combinée. Nécessite Claude Code v2.1.242 ou ultérieur.6321Choisissez si Claude Code applique uniquement la [source gérée](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) de plus haute priorité que votre organisation livre, ou combine chaque source d'administrateur qu'elle livre. Par défaut, Claude Code prend la source de plus haute priorité qui porte une [clé de politique](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) et ignore le reste. Une clé de politique est n'importe quelle clé de paramètres autre que celle-ci et `wslInheritsWindowsSettings`. Sous ce défaut, une fois que les paramètres gérés par le serveur ou une politique MDM livrent une clé de politique, un fichier `managed-settings.json` ne contribue que les [clés que Claude Code lit de chaque source d'administrateur](/docs/fr/managed-settings#keys-read-from-every-admin-source). Avec `"merge"`, chaque source d'administrateur que vous livrez contribue ses clés à une politique combinée. Nécessite Claude Code v2.1.242 ou ultérieur.

6247 6322 

6248Définissez `"merge"` uniquement où chaque source [classée](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) en dessous de votre plus haute est sous le contrôle d'un administrateur, car Claude Code ajoute alors des entrées d'une source inférieure, telle que les règles `permissions.allow`, à la politique.6323Définissez `"merge"` uniquement lorsque chaque source [classée](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) en dessous de votre plus haute est sous le contrôle d'un administrateur, car Claude Code ajoute alors des entrées d'une source inférieure, telle que les règles `permissions.allow`, à la politique.

6249 6324 

6250* **Portée** : [`Managed`](#scopes). Claude Code lit cette clé de la source de plus haute priorité qui porte soit cette clé soit une clé de politique, et ignore cette clé dans chaque source classée plus bas, de sorte qu'une source inférieure ne peut pas se choisir pour se combiner avec la source au-dessus. Ni le registre HKCU Windows ni les [paramètres parents d'un hôte d'intégration](/docs/fr/managed-settings#let-an-embedding-host-add-policy) ne participent à la fusion.6325* **Portée** : [`Managed`](#scopes). Claude Code lit cette clé de la source de plus haute priorité qui porte soit cette clé soit une clé de politique, et ignore cette clé dans chaque source classée plus bas, de sorte qu'une source inférieure ne peut pas se choisir pour combiner avec la source au-dessus. Ni le registre HKCU Windows ni les [paramètres parents d'un hôte d'intégration](/docs/fr/managed-settings#let-an-embedding-host-add-policy) ne participent à la fusion.

6251* **Type** : chaîne, l'une des :6326* **Type** : chaîne, l'une de :

6252 * `"first-wins"` : la source de plus haute priorité qui porte une clé de politique fournit la politique, et les sources inférieures ne contribuent que les [clés que Claude Code lit de chaque source d'administrateur](/docs/fr/managed-settings#keys-read-from-every-admin-source)6327 * `"first-wins"` : la source de plus haute priorité qui porte une clé de politique fournit la politique, et les sources inférieures ne contribuent que les [clés que Claude Code lit de chaque source d'administrateur](/docs/fr/managed-settings#keys-read-from-every-admin-source)

6253 * `"merge"` : chaque source d'administrateur que vous livrez contribue ses clés, combinées par les règles ci-dessous6328 * `"merge"` : chaque source d'administrateur que vous livrez contribue ses clés, combinées par les règles ci-dessous

6254* **Défaut** : `"first-wins"`6329* **Défaut** : `"first-wins"`

6255 6330 

6256Livrez la clé dans la source de plus haute priorité que vous déployez. Une machine qui ne reçoit jamais les paramètres gérés par le serveur a besoin de la clé dans son profil MDM aussi, car Claude Code lit la clé de la source de plus haute priorité qui la porte ou une clé de politique. Un fichier `managed-settings.json` est la source d'administrateur la plus basse classée, donc `"merge"` défini là n'a pas de source en dessous pour se combiner avec. Dans les paramètres gérés par le serveur, la clé ressemble à ceci :6331Livrez la clé dans la source de plus haute priorité que vous déployez. Une machine qui ne reçoit jamais les paramètres gérés par le serveur a besoin de la clé dans son profil MDM aussi, car Claude Code lit la clé de la source de plus haute priorité qui la porte ou une clé de politique. Un fichier `managed-settings.json` est la source d'administrateur la plus basse classée, de sorte que `"merge"` défini là n'a pas de source en dessous pour combiner. Dans les paramètres gérés par le serveur, la clé ressemble à ceci :

6257 6332 

6258```json theme={null}6333```json theme={null}

6259{6334{


6261}6336}

6262```6337```

6263 6338 

6264Sous `"merge"`, Claude Code combine chaque clé par son type. Ce tableau donne la règle pour chaque type. Les lignes de liste d'autorisation de restriction, valeurs prises en entier et plus haute source uniquement nomment chaque clé qu'elles couvrent, et les autres lignes donnent des exemples :6339Sous `"merge"`, Claude Code combine chaque clé par son type. Ce tableau donne la règle pour chaque type. Les lignes de liste de restriction, valeurs prises en entier et plus haute source uniquement nomment chaque clé qu'elles couvrent, et les autres lignes donnent des exemples :

6265 6340 

6266| Type de clé | Comment Claude Code la combine | Clés |6341| Type de clé | Comment Claude Code la combine | Clés |

6267| :- | :- | :- |6342| :- | :- | :- |

6268| Listes | Combine les entrées de chaque source | [`permissions.allow`](#permissions-allow), [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) et autres clés de liste |6343| Listes | Combine les entrées de chaque source | [`permissions.allow`](#permissions-allow), [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) et autres clés de liste |

6269| Verrous | Applique la valeur la plus stricte que n'importe quelle source définit. Lorsqu'aucune source ne définit une valeur stricte, applique une valeur plus souple uniquement de la source la plus haute | [`allowManagedPermissionRulesOnly`](#allowmanagedpermissionrulesonly), [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) et autres verrous booléens ou énumérés |6344| Verrous | Applique la valeur la plus stricte que n'importe quelle source définit. Lorsqu'aucune source ne définit une valeur stricte, applique une valeur plus souple uniquement de la source la plus haute | [`allowManagedPermissionRulesOnly`](#allowmanagedpermissionrulesonly), [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) et autres verrous booléens ou énumérés |

6270| Listes d'autorisation de restriction | Prend la liste en entier de la source la plus haute qui la définit, sans ajouter d'entrées de sources inférieures. Lorsque la source la plus haute ne la définit pas, la prend en entier de la source suivante en bas | [`availableModels`](#availablemodels), [`allowedMcpServers`](#allowedmcpservers), [`strictKnownMarketplaces`](#strictknownmarketplaces), [`allowedChannelPlugins`](#allowedchannelplugins) et la chaîne [`fallbackModel`](#fallbackmodel) |6345| Listes de restriction | Prend la liste en entier de la source la plus haute qui la définit, sans ajouter d'entrées de sources inférieures. Lorsque la source la plus haute n'en définit pas une, la prend en entier de la source suivante en bas | [`availableModels`](#availablemodels), [`allowedMcpServers`](#allowedmcpservers), [`strictKnownMarketplaces`](#strictknownmarketplaces), [`allowedChannelPlugins`](#allowedchannelplugins) et la chaîne [`fallbackModel`](#fallbackmodel) |

6271| Valeurs prises en entier | Prend la valeur en entier de la source la plus haute qui la définit, sans combiner les entrées ou champs de sources inférieures. Lorsque la source la plus haute ne la définit pas, la prend en entier de la source suivante en bas | [`sandbox.credentials.awsPairs`](#sandbox-credentials-awspairs), [`sandbox.ripgrep`](#sandbox-ripgrep) |6346| Valeurs prises en entier | Prend la valeur en entier de la source la plus haute qui la définit, sans combiner les entrées ou champs de sources inférieures. Lorsque la source la plus haute ne la définit pas, la prend en entier de la source suivante en bas | [`sandbox.credentials.awsPairs`](#sandbox-credentials-awspairs), [`sandbox.ripgrep`](#sandbox-ripgrep) |

6272| Serveurs MCP fournis | Combine les noms de serveur de chaque source. Lorsque deux sources définissent le même nom, applique l'entrée entière de la source la plus haute | [`managedMcpServers`](#managedmcpservers) |6347| Serveurs MCP fournis | Combine les noms de serveur de chaque source. Lorsque deux sources définissent le même nom, applique l'entrée entière de la source supérieure | [`managedMcpServers`](#managedmcpservers) |

6273| Lire uniquement de la source de plus haute priorité | Lit la clé uniquement de la source de plus haute priorité qui porte une clé de politique, de sorte que la valeur d'une source inférieure est ignorée même lorsque la source la plus haute n'en définit aucune | [`apiKeyHelper`](#apikeyhelper), [`awsAuthRefresh`](#awsauthrefresh), [`awsCredentialExport`](#awscredentialexport), [`gcpAuthRefresh`](#gcpauthrefresh), [`otelHeadersHelper`](#otelheadershelper), `proxyAuthHelper`, [`forceLoginOrgUUID`](#forceloginorguuid), les valeurs `"claudeai"` et `"console"` de [`forceLoginMethod`](#forceloginmethod), [`parentSettingsBehavior`](#parentsettingsbehavior), [`modelPicker`](#modelpicker), [`policyHelper`](#policyhelper), [`permissions.defaultMode`](#permissions-defaultmode) |6348| Lire uniquement de la source de plus haute priorité | Lit la clé uniquement de la source de plus haute priorité qui porte une clé de politique, de sorte que la valeur d'une source inférieure est ignorée même lorsque la source la plus haute n'en définit aucune | [`apiKeyHelper`](#apikeyhelper), [`awsAuthRefresh`](#awsauthrefresh), [`awsCredentialExport`](#awscredentialexport), [`gcpAuthRefresh`](#gcpauthrefresh), [`otelHeadersHelper`](#otelheadershelper), `proxyAuthHelper`, [`forceLoginOrgUUID`](#forceloginorguuid), les valeurs `"claudeai"` et `"console"` de [`forceLoginMethod`](#forceloginmethod), [`parentSettingsBehavior`](#parentsettingsbehavior), [`modelPicker`](#modelpicker), [`policyHelper`](#policyhelper), [`permissions.defaultMode`](#permissions-defaultmode) |

6274| `env` | [Fusionne par variable sur les sources d'administrateur](/docs/fr/managed-settings#keys-read-from-every-admin-source), sous `"first-wins"` et `"merge"` | [`env`](#env) |6349| `env` | [Fusionne par variable sur les sources d'administrateur](/docs/fr/managed-settings#keys-read-from-every-admin-source), sous `"first-wins"` et `"merge"` | [`env`](#env) |

6275| Chaque autre clé | Prend la valeur de la source la plus haute qui la définit | [`cleanupPeriodDays`](#cleanupperioddays), [`model`](#model) |6350| Chaque autre clé | Prend la valeur de la source la plus haute qui la définit | [`cleanupPeriodDays`](#cleanupperioddays), [`model`](#model) |


6278 6353 

6279Quelques clés ajoutent une condition que le tableau ne montre pas :6354Quelques clés ajoutent une condition que le tableau ne montre pas :

6280 6355 

6281* **[`policyHelper`](#policyhelper)** : Claude Code ne l'honore que lorsque la source la plus haute qui porte une clé de politique est une politique MDM ou un fichier de paramètres gérés, donc sous les paramètres gérés par le serveur elle ne s'applique pas.6356* **[`policyHelper`](#policyhelper)** : Claude Code l'honore uniquement lorsque la source la plus haute qui porte une clé de politique est une politique MDM ou un fichier de paramètres gérés, de sorte que sous les paramètres gérés par le serveur elle ne s'applique pas.

6282* **[`modelOverrides`](#modeloverrides)** : s'associe avec `availableModels`. Claude Code prend `modelOverrides` de la source la plus haute qui la définit, à moins qu'une source plus haute ne définisse `availableModels` sans `modelOverrides`. Dans ce cas, il ignore `modelOverrides` de chaque source.6357* **[`modelOverrides`](#modeloverrides)** : s'apparie avec `availableModels`. Claude Code prend `modelOverrides` de la source la plus haute qui la définit, sauf si une source supérieure définit `availableModels` sans `modelOverrides`. Dans ce cas, il ignore `modelOverrides` de chaque source.

6283* **[`forceLoginGatewayUrl`](#forcelogingatewayurl), [`gatewayInternalNetworks`](#gatewayinternalnetworks) et la valeur `"gateway"` de [`forceLoginMethod`](#forceloginmethod)** : Claude Code ne les lit jamais à partir des paramètres gérés par le serveur, de sorte qu'une valeur là-bas ne s'applique ni ne cache celle définie dans une politique MDM ou un fichier de paramètres gérés. Parmi les sources d'administrateur sur la machine, seule la source la plus haute classée qui porte une clé de politique les fournit, que les paramètres gérés par le serveur soient également présents ou non.6358* **[`forceLoginGatewayUrl`](#forcelogingatewayurl), [`gatewayInternalNetworks`](#gatewayinternalnetworks) et la valeur `"gateway"` de [`forceLoginMethod`](#forceloginmethod)** : Claude Code ne les lit jamais de paramètres gérés par le serveur, de sorte qu'une valeur là ne s'applique ni ne cache une définie dans une politique MDM ou un fichier de paramètres gérés. Parmi les sources d'administrateur sur la machine, seule la plus haute classée qui porte une clé de politique les fournit, que les paramètres gérés par le serveur soient présents ou non.

6284 6359 

6285Pour confirmer quelles sources se sont combinées sur une machine, exécutez `/status` et [lisez la ligne `Setting sources`](/docs/fr/managed-settings#read-the-source-in-/status).6360Pour confirmer quelles sources se sont combinées sur une machine, exécutez `/status` et [lisez la ligne `Setting sources`](/docs/fr/managed-settings#read-the-source-in-/status).

6286 6361 


6291Choisissez si Claude Code applique les paramètres gérés fournis par un processus hôte d'intégration, tel que le SDK Agent ou une extension IDE, lorsqu'une couche gérée déployée par l'administrateur est également présente. Avec `"first-wins"`, Claude Code supprime les paramètres fournis par l'hôte ; avec `"merge"`, il les applique sous la couche d'administrateur via un filtre restrictif uniquement. Définissez `"merge"` lorsqu'un hôte doit transmettre ses propres restrictions aux sessions qu'il lance, par exemple Claude Desktop livrant la liste d'autorisation de sortie d'une passerelle.6366Choisissez si Claude Code applique les paramètres gérés fournis par un processus hôte d'intégration, tel que le SDK Agent ou une extension IDE, lorsqu'une couche gérée déployée par l'administrateur est également présente. Avec `"first-wins"`, Claude Code supprime les paramètres fournis par l'hôte ; avec `"merge"`, il les applique sous la couche d'administrateur via un filtre restrictif uniquement. Définissez `"merge"` lorsqu'un hôte doit transmettre ses propres restrictions aux sessions qu'il lance, par exemple Claude Desktop livrant la liste d'autorisation de sortie d'une passerelle.

6292 6367 

6293* **Portée** : [`Managed`](#scopes). Claude Code le lit de la source gérée contrôlée par l'administrateur de plus haute priorité.6368* **Portée** : [`Managed`](#scopes). Claude Code le lit de la source gérée contrôlée par l'administrateur de plus haute priorité.

6294* **Type** : chaîne, l'une des :6369* **Type** : chaîne, l'une de :

6295 * `"first-wins"` : Claude Code supprime les paramètres fournis par l'hôte lorsqu'une couche gérée déployée par l'administrateur est présente6370 * `"first-wins"` : Claude Code supprime les paramètres fournis par l'hôte lorsqu'une couche gérée déployée par l'administrateur est présente

6296 * `"merge"` : Claude Code applique les paramètres fournis par l'hôte sous la couche d'administrateur via un filtre restrictif uniquement6371 * `"merge"` : Claude Code applique les paramètres fournis par l'hôte sous la couche d'administrateur via un filtre restrictif uniquement

6297* **Défaut** : `"first-wins"`6372* **Défaut** : `"first-wins"`


6336 Écrire la sortie de l'assistant6411 Écrire la sortie de l'assistant

6337</h4>6412</h4>

6338 6413 

6339Claude Code exécute l'assistant sans arguments, définit `CLAUDE_CODE_VERSION` dans son environnement et lit une enveloppe JSON à partir de stdout, limitée à 1 MiB.6414Claude Code exécute l'assistant sans arguments, définit `CLAUDE_CODE_VERSION` dans son environnement et lit une enveloppe JSON à partir de stdout, plafonnée à 1 MiB.

6340 6415 

6341Mettez les paramètres sous une clé `managedSettings`. Un objet de paramètres nu sans clé `managedSettings` analyse avec `managedSettings` non défini et n'applique rien, et Claude Code ne signale aucune erreur :6416Mettez les paramètres sous une clé `managedSettings`. Un objet de paramètres nu sans clé `managedSettings` analyse avec `managedSettings` indéfini et n'applique rien, et Claude Code ne signale aucune erreur :

6342 6417 

6343```json theme={null}6418```json theme={null}

6344{6419{


6350 6425 

6351Lorsque l'assistant émet `managedSettings`, cet objet devient la seule source de paramètres gérés pour l'exécution : Claude Code ignore les sources MDM, fichier et HKCU, lit les [clés inter-sources](/docs/fr/managed-settings#keys-read-from-every-admin-source) uniquement à partir de la sortie de l'assistant, et ne fusionne jamais les [paramètres parents](/docs/fr/managed-settings#parent-settings-from-embedding-hosts).6426Lorsque l'assistant émet `managedSettings`, cet objet devient la seule source de paramètres gérés pour l'exécution : Claude Code ignore les sources MDM, fichier et HKCU, lit les [clés inter-sources](/docs/fr/managed-settings#keys-read-from-every-admin-source) uniquement à partir de la sortie de l'assistant, et ne fusionne jamais les [paramètres parents](/docs/fr/managed-settings#parent-settings-from-embedding-hosts).

6352 6427 

6353La vérification `forceRemoteSettingsRefresh` au démarrage s'exécute avant l'assistant et lit n'importe quelle source d'administrateur. Un assistant qui se termine avec `0` avec une enveloppe qui omet `managedSettings` ne contribue aucun paramètre gérés, et les autres sources s'appliquent comme d'habitude.6428La vérification `forceRemoteSettingsRefresh` au démarrage s'exécute avant l'assistant et lit n'importe quelle source d'administrateur. Un assistant qui quitte `0` avec une enveloppe qui omet `managedSettings` ne contribue aucun paramètre gérés, et les autres sources s'appliquent comme d'habitude.

6354 6429 

6355<h4 id="helper-failures">6430<h4 id="helper-failures">

6356 Défaillances de l'assistant6431 Défaillances de l'assistant

6357</h4>6432</h4>

6358 6433 

6359Une exécution d'assistant échoue lorsque :6434Une exécution de l'assistant échoue lorsque :

6360 6435 

6361* `path` viole les règles dans [`policyHelper.path`](#policyhelper-path).6436* `path` viole les règles dans [`policyHelper.path`](#policyhelper-path).

6362* Aucun fichier régulier n'existe à `path`. Claude Code vérifie le fichier avant de démarrer l'assistant, dans le même budget `timeoutMs`, de sorte qu'un montage réseau qui ne répond pas peut causer l'échec de l'exécution.6437* Aucun fichier régulier n'existe à `path`. Claude Code vérifie le fichier avant de démarrer l'assistant, dans le même budget `timeoutMs`, de sorte qu'un montage réseau qui ne répond pas peut causer l'échec de l'exécution.

6363* L'assistant se termine non-zéro, s'exécute toujours lorsque `timeoutMs` s'écoule, ou ne démarre pas du tout, par exemple parce qu'il n'est pas exécutable.6438* L'assistant quitte non-zéro, s'exécute toujours lorsque `timeoutMs` s'écoule, ou ne démarre pas du tout, par exemple parce qu'il n'est pas exécutable.

6364* L'assistant écrit plus de 1 MiB sur stdout ou stderr.6439* L'assistant écrit plus de 1 MiB à stdout ou à stderr.

6365* stdout n'est pas un seul objet JSON, ou son `managedSettings` a une [violation de schéma que Claude Code ne peut pas réparer](/docs/fr/managed-settings#find-entries-claude-code-dropped).6440* stdout n'est pas un seul objet JSON, ou son `managedSettings` a une [violation de schéma que Claude Code ne peut pas réparer](/docs/fr/managed-settings#find-entries-claude-code-dropped).

6366 6441 

6367Lorsque l'exécution au démarrage échoue, Claude Code imprime la raison et refuse de démarrer. Après une sortie non-zéro, la raison inclut stderr de l'assistant, ou sa sortie stdout lorsque stderr est vide. Après un délai d'expiration, la raison nomme la limite `timeoutMs` et n'inclut aucune sortie de l'assistant. Le refus couvre les sessions interactives, `claude -p`, les sessions du SDK Agent, les [sessions en arrière-plan](/docs/fr/agent-view) et la plupart des sous-commandes.6442Lorsque l'exécution au démarrage échoue, Claude Code imprime la raison et refuse de démarrer. Après une sortie non-zéro, la raison inclut stderr de l'assistant, ou sa stdout lorsque stderr est vide. Après un délai d'expiration, la raison nomme la limite `timeoutMs` et n'inclut aucune sortie de l'assistant. Le refus couvre les sessions interactives, `claude -p`, les sessions du SDK Agent, les [sessions en arrière-plan](/docs/fr/agent-view) et la plupart des sous-commandes.

6368 6443 

6369Le refus est délibéré, de sorte qu'un assistant qui a besoin de résilience aux pannes doit servir à partir de son propre cache et se terminer avec `0`.6444Le refus est délibéré, de sorte qu'un assistant qui a besoin de résilience en cas de panne doit servir à partir de son propre cache et quitter `0`.

6370 6445 

6371Lorsqu'une actualisation en arrière-plan échoue, Claude Code maintient la dernière politique réussie en vigueur, et `/status` affiche l'actualisation échouée avec sa raison jusqu'à ce qu'une actualisation réussisse. Chaque actualisation s'exécute sous les mêmes `timeoutMs` et règles d'échec que l'exécution au démarrage.6446Lorsqu'une actualisation en arrière-plan échoue, Claude Code maintient la dernière politique réussie en vigueur, et `/status` affiche l'actualisation échouée avec sa raison jusqu'à ce qu'une actualisation réussisse. Chaque actualisation s'exécute sous les mêmes `timeoutMs` et règles d'échec que l'exécution au démarrage.

6372 6447 


6380 `policyHelper.path`6455 `policyHelper.path`

6381</h3>6456</h3>

6382 6457 

6383Nommez l'exécutable d'assistant que Claude Code exécute. Pour ce qui se passe lorsque le chemin viole les règles ci-dessous, voir [Défaillances de l'assistant](#helper-failures).6458Nommez l'exécutable de l'assistant que Claude Code exécute. Pour ce qui se passe lorsque le chemin viole les règles ci-dessous, voir [Défaillances de l'assistant](#helper-failures).

6384 6459 

6385* **Portée** : [`Managed`](#scopes). Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, où [`policyHelper`](#policyhelper) est lu.6460* **Portée** : [`Managed`](#scopes). Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, partout où [`policyHelper`](#policyhelper) est lu.

6386* **Type** : chaîne, un chemin absolu sous forme normalisée, sans segments `.` ou `..` ; sur Windows, un chemin de lettre de lecteur ou UNC qui se termine par `.exe`6461* **Type** : chaîne, un chemin absolu sous forme normalisée, sans segments `.` ou `..` ; sur Windows, un chemin de lettre de lecteur ou UNC qui se termine par `.exe`

6387* **Défaut** : aucun ; requis lorsque `policyHelper` est défini6462* **Défaut** : aucun ; requis lorsque `policyHelper` est défini

6388 6463 


6400 6475 

6401Définissez combien de temps Claude Code attend l'assistant avant de traiter l'exécution comme échouée. Une exécution expirée échoue de la même manière qu'une sortie non-zéro, de sorte qu'au démarrage Claude Code refuse de démarrer.6476Définissez combien de temps Claude Code attend l'assistant avant de traiter l'exécution comme échouée. Une exécution expirée échoue de la même manière qu'une sortie non-zéro, de sorte qu'au démarrage Claude Code refuse de démarrer.

6402 6477 

6403* **Portée** : [`Managed`](#scopes). Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, où [`policyHelper`](#policyhelper) est lu.6478* **Portée** : [`Managed`](#scopes). Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, partout où [`policyHelper`](#policyhelper) est lu.

6404* **Type** : entier, millisecondes, minimum `1000`6479* **Type** : entier, millisecondes, minimum `1000`

6405* **Défaut** : `10000`6480* **Défaut** : `10000`

6406 6481 


6419 6494 

6420Faites en sorte que Claude Code réexécute l'assistant en arrière-plan à un intervalle de sorte que les modifications de politique atteignent une session en cours d'exécution. Lorsqu'une actualisation réussit, sa sortie remplace les paramètres gérés précédents sans redémarrage ; lorsqu'une actualisation échoue, Claude Code maintient la politique qu'il a déjà.6495Faites en sorte que Claude Code réexécute l'assistant en arrière-plan à un intervalle de sorte que les modifications de politique atteignent une session en cours d'exécution. Lorsqu'une actualisation réussit, sa sortie remplace les paramètres gérés précédents sans redémarrage ; lorsqu'une actualisation échoue, Claude Code maintient la politique qu'il a déjà.

6421 6496 

6422* **Portée** : [`Managed`](#scopes). Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, où [`policyHelper`](#policyhelper) est lu.6497* **Portée** : [`Managed`](#scopes). Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, partout où [`policyHelper`](#policyhelper) est lu.

6423* **Type** : entier, millisecondes : `0` pour désactiver l'actualisation, sinon au moins `60000`6498* **Type** : entier, millisecondes : `0` pour désactiver l'actualisation, sinon au moins `60000`

6424* **Défaut** : non défini, de sorte que Claude Code exécute l'assistant une fois au démarrage6499* **Défaut** : non défini, de sorte que Claude Code exécute l'assistant une fois au démarrage

6425 6500 


6438 `wslInheritsWindowsSettings`6513 `wslInheritsWindowsSettings`

6439</h3>6514</h3>

6440 6515 

6441Faites en sorte que Claude Code sur WSL lise les paramètres gérés de la chaîne de politique Windows, avec HKLM et le fichier de paramètres gérés Windows prenant la priorité sur `/etc/claude-code` et HKCU en dessous. Pendant que la chaîne est activée, Claude Code lit `/etc/claude-code` uniquement lorsqu'aucun fichier de paramètres gérés ou drop-in sous `C:\Program Files\ClaudeCode\` ne livre une [clé de politique](/docs/fr/managed-settings#how-claude-code-combines-managed-sources). Définissez-le pour étendre la politique que vous déployez déjà sur Windows aux sessions WSL sur la même machine, de sorte qu'elles suivent les mêmes règles que les sessions hôte. Claude Code ne l'honore que lorsqu'il est défini dans la clé de registre HKLM ou dans un fichier de paramètres gérés ou drop-in sous `C:\Program Files\ClaudeCode\`, tous deux nécessitant l'administrateur Windows pour écrire.6516Faites en sorte que Claude Code sur WSL lise les paramètres gérés de la chaîne de politique Windows, avec HKLM et le fichier de paramètres gérés Windows prenant la priorité sur `/etc/claude-code` et HKCU en dessous. Pendant que la chaîne est activée, Claude Code lit `/etc/claude-code` uniquement lorsqu'[aucun document d'administrateur Windows n'est présent](/docs/fr/managed-settings#present-admin-documents) dans la valeur du registre HKLM ou le dossier `C:\Program Files\ClaudeCode\`. Définissez-le pour étendre la politique que vous déployez déjà sur Windows aux sessions WSL sur la même machine, de sorte qu'elles suivent les mêmes règles que les sessions hôte. Claude Code l'honore uniquement lorsqu'il est défini dans la clé du registre HKLM ou dans un fichier de paramètres gérés ou un drop-in sous `C:\Program Files\ClaudeCode\`, qui nécessitent tous deux l'administrateur Windows pour écrire.

6442 6517 

6443* **Portée** : [`Managed`](#scopes). Dans une source Windows contrôlée par l'administrateur.6518* **Portée** : [`Managed`](#scopes). Dans une source Windows contrôlée par l'administrateur.

6444* **Type** : Booléen6519* **Type** : Booléen

6445 * `true` : Claude Code sur WSL lit les paramètres gérés de la chaîne de politique Windows, et lit `/etc/claude-code` uniquement lorsqu'aucun fichier de paramètres gérés ou drop-in sous `C:\Program Files\ClaudeCode\` ne livre une [clé de politique](/docs/fr/managed-settings#how-claude-code-combines-managed-sources)6520 * `true` : Claude Code sur WSL lit les paramètres gérés de la chaîne de politique Windows, et lit `/etc/claude-code` uniquement lorsqu'aucun document d'administrateur Windows n'est présent

6446 * `false` : WSL lit uniquement `/etc/claude-code`6521 * `false` : WSL lit uniquement `/etc/claude-code`

6447* **Défaut** : `false`, de sorte que WSL lit uniquement `/etc/claude-code`6522* **Défaut** : `false`, de sorte que WSL lit uniquement `/etc/claude-code`

6448 6523 


6452}6527}

6453```6528```

6454 6529 

6455Une fois qu'une source d'administrateur active la chaîne, la politique HKCU la rejoint sur WSL uniquement lorsque HKCU définit également la clé à `true`. Cette copie n'active pas la chaîne par elle-même. Une source Windows qui contient uniquement cette clé ne compte pas comme une source de politique, de sorte qu'une source de priorité inférieure fournit toujours la politique. Cette clé n'a aucun effet sur Windows natif.6530Une fois qu'une source d'administrateur active la chaîne, la politique HKCU la rejoint sur WSL uniquement lorsque HKCU définit également la clé à `true`. Cette copie n'active pas la chaîne par elle-même. Une source Windows qui contient uniquement cette clé, définie à `true` ou `false`, ne compte pas comme une source de politique, de sorte qu'une source de priorité inférieure fournit toujours la politique. Cette clé n'a aucun effet sur Windows natif.

6531 

6532Claude Code lit `true` et `false` avec ou sans guillemets et lit `null` comme supprimant la clé. Une source Windows contrôlée par l'administrateur qui contient n'importe quelle autre valeur compte comme un [document d'administrateur présent](/docs/fr/managed-settings#present-admin-documents) avec la chaîne activée : ni `/etc/claude-code` ni HKCU ne s'appliquent, et un avertissement de démarrage nomme la clé. Une valeur HKLM ou un fichier de dossier Windows qui existe mais ne peut pas être lu empêche également `/etc/claude-code` de s'appliquer que la chaîne soit activée ou non. Nécessite Claude Code v2.1.282 ou ultérieur.

6456 6533 

6457<h2 id="global-config-settings">6534<h2 id="global-config-settings">

6458 Paramètres de configuration globale6535 Paramètres de configuration globale


6502 6579 

6503Claude Code ignore cette clé dans `settings.json`.6580Claude Code ignore cette clé dans `settings.json`.

6504 6581 

6582<h3 id="claudeinchromedefaultenabled">

6583 `claudeInChromeDefaultEnabled`

6584</h3>

6585 

6586Démarrez chaque session CLI interactive avec l'[intégration Chrome](/docs/fr/chrome) activée, sans passer `--chrome` à chaque fois. Si vous exécutez [`claude remote-control`](/docs/fr/remote-control), une session qu'il démarre pour l'un de vos threads de [projet](/docs/fr/claude-projects) suit également cette clé, sauf en mode `bypassPermissions`. Exécuter `/chrome` et sélectionner **Enabled by default** définit cette clé pour vous, comme décrit dans [Enable Chrome by default](/docs/fr/chrome#enable-chrome-by-default). Apparaît dans `/config` sous **Claude in Chrome enabled by default**.

6587 

6588* **Scope** : [`Global config`](#scopes)

6589* **Type** : Boolean

6590 * `true` : Claude Code active l'intégration Chrome lorsqu'une session CLI interactive démarre, comme il le fait lorsque vous passez `--chrome`

6591 * `false` : les sessions CLI interactives démarrent avec l'intégration Chrome désactivée, et Claude Code arrête [d'offrir de la configurer](/docs/fr/chrome#install-the-extension-when-claude-asks). Passez `--chrome` pour l'activer pour une session interactive

6592* **Default** : unset, donc l'intégration Chrome est désactivée et Claude Code peut toujours offrir de la configurer

6593* **Per-session overrides** : `--chrome` et [`--no-chrome`](/docs/fr/cli-reference) prennent la priorité sur cette clé pour une session interactive

6594 

6595```json ~/.claude.json theme={null}

6596{

6597 "claudeInChromeDefaultEnabled": true

6598}

6599```

6600 

6601Claude Code ignore cette clé dans `settings.json`.

6602 

6603<h3 id="copyfullresponse">

6604 `copyFullResponse`

6605</h3>

6606 

6607Faites en sorte que [`/copy`](/docs/fr/commands) copie la réponse complète à chaque fois, sans le sélecteur qu'il affiche autrement lorsque la réponse contient des blocs de code. Sélectionner **Always copy full response** dans ce sélecteur définit cette clé à `true`. Apparaît dans `/config` sous **Skip the /copy picker**.

6608 

6609* **Scope** : [`Global config`](#scopes)

6610* **Type** : Boolean

6611 * `true` : `/copy` copie la réponse complète sans afficher le sélecteur

6612 * `false` : lorsque la réponse contient des blocs de code, `/copy` affiche un sélecteur où vous choisissez un bloc de code ou la réponse complète

6613* **Default** : `false`

6614 

6615```json ~/.claude.json theme={null}

6616{

6617 "copyFullResponse": true

6618}

6619```

6620 

6621Claude Code ignore cette clé dans `settings.json`.

6622 

6505<h3 id="copyonselect">6623<h3 id="copyonselect">

6506 `copyOnSelect`6624 `copyOnSelect`

6507</h3>6625</h3>


6522 6640 

6523Claude Code ignore cette clé dans `settings.json`.6641Claude Code ignore cette clé dans `settings.json`.

6524 6642 

6643<h3 id="defaulttoagentsview">

6644 `defaultToAgentsView`

6645</h3>

6646 

6647Ouvrez [agent view](/docs/fr/agent-view) au lieu d'une nouvelle conversation lorsque vous exécutez `claude` sans arguments. Apparaît dans `/config` sous **Open agents view by default** sauf si agent view est [désactivée](#disableagentview).

6648 

6649* **Scope** : [`Global config`](#scopes)

6650* **Type** : Boolean

6651 * `true` : `claude` sans arguments ouvre agent view, sauf si agent view est [désactivée](#disableagentview)

6652 * `false` : `claude` sans arguments démarre une nouvelle conversation

6653* **Default** : `false`

6654 

6655```json ~/.claude.json theme={null}

6656{

6657 "defaultToAgentsView": true

6658}

6659```

6660 

6661Claude Code ignore cette clé dans `settings.json`.

6662 

6525<h3 id="difftool">6663<h3 id="difftool">

6526 `diffTool`6664 `diffTool`

6527</h3>6665</h3>


6576 6714 

6577Claude Code ignore cette clé dans `settings.json`.6715Claude Code ignore cette clé dans `settings.json`.

6578 6716 

6717<h3 id="leftarrowopensagents">

6718 `leftArrowOpensAgents`

6719</h3>

6720 

6721Appuyez sur `←` sur une invite vide pour [mettre la session en arrière-plan et ouvrir agent view](/docs/fr/agent-view#switch-sessions-without-leaving-the-terminal). Définissez cette clé à `false` pour désactiver le raccourci. Apparaît dans `/config` sous **← opens agents** lorsque agent view est disponible.

6722 

6723* **Scope** : [`Global config`](#scopes)

6724* **Type** : Boolean

6725 * `true` : appuyer sur `←` sur une invite vide dans une session que vous avez démarrée dans le terminal la met en arrière-plan et ouvre agent view

6726 * `false` : Claude Code désactive le raccourci ; dans une session que vous [avez attachée à partir d'agent view](/docs/fr/agent-view#attach-to-a-session), `←` sur une invite vide se détache toujours

6727* **Default** : `true`

6728 

6729```json ~/.claude.json theme={null}

6730{

6731 "leftArrowOpensAgents": false

6732}

6733```

6734 

6735Claude Code ignore cette clé dans `settings.json`.

6736 

6579<h3 id="permissionexplainerenabled">6737<h3 id="permissionexplainerenabled">

6580 `permissionExplainerEnabled`6738 `permissionExplainerEnabled`

6581</h3>6739</h3>


6590* **Type** : Boolean6748* **Type** : Boolean

6591* **Default** : `true`6749* **Default** : `true`

6592 6750 

6751<h3 id="prstatusfooterenabled">

6752 `prStatusFooterEnabled`

6753</h3>

6754 

6755Affiche un badge dans le pied de page de l'invite pour la demande de tirage ou la demande de fusion ouverte de la branche actuelle, avec un trait de soulignement coloré qui affiche son [statut](/docs/fr/interactive-mode#pr-review-status). Apparaît dans `/config` sous **Show PR status footer**.

6756 

6757* **Scope** : [`Global config`](#scopes)

6758* **Type** : Boolean

6759 * `true` : le pied de page affiche le badge selon les conditions dans [PR review status](/docs/fr/interactive-mode#pr-review-status)

6760 * `false` : Claude Code ignore la vérification de la demande de tirage et de la demande de fusion du pied de page et n'affiche pas ce badge. Une session que vous [avez attachée à partir d'agent view](/docs/fr/agent-view#attach-to-a-session) peut toujours afficher un lien simple vers une demande de tirage [liée à celle-ci](/docs/fr/agent-view#pull-request-status)

6761* **Default** : `true`

6762 

6763```json ~/.claude.json theme={null}

6764{

6765 "prStatusFooterEnabled": false

6766}

6767```

6768 

6769Claude Code ignore cette clé dans `settings.json`.

6770 

6593<h3 id="teammatedefaultmodel">6771<h3 id="teammatedefaultmodel">

6594 `teammateDefaultModel`6772 `teammateDefaultModel`

6595</h3>6773</h3>

setup.md +3 −3

Details

37 37 

38<Tip>38<Tip>

39 Préférez une interface graphique ? L'[application de bureau](/docs/fr/desktop-quickstart) vous permet d'utiliser Claude Code sans le terminal. Téléchargez-la pour [macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs), [Windows](https://claude.com/download?utm_source=claude_code\&utm_medium=docs) ou [Linux](/docs/fr/desktop-linux).39 Préférez une interface graphique ? L'[application de bureau](/docs/fr/desktop-quickstart) vous permet d'utiliser Claude Code sans le terminal. Téléchargez-la pour [macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs), [Windows](https://claude.com/download?utm_source=claude_code\&utm_medium=docs) ou [Linux](/docs/fr/desktop-linux).

40 

41 Nouveau sur le terminal ? Consultez le [guide du terminal](/docs/fr/terminal-guide) pour des instructions étape par étape.

42</Tip>40</Tip>

43 41 

44Pour installer Claude Code, utilisez l'une des méthodes suivantes :42Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.

45 43 

46<Tabs>44<Tabs>

47 <Tab title="Installation native (recommandée)">45 <Tab title="Installation native (recommandée)">


63 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd61 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

64 ```62 ```

65 63 

64 Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](/docs/fr/troubleshoot-install#command-not-found-claude-after-installation).

65 

66 Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell. Votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.66 Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell. Votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.

67 67 

68 Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou une autre erreur curl, consultez [Dépannage de l'installation](/docs/fr/troubleshoot-install#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.68 Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou une autre erreur curl, consultez [Dépannage de l'installation](/docs/fr/troubleshoot-install#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.

skills.md +59 −40

Details

76 </Step>76 </Step>

77 77 

78 <Step title="Écrire SKILL.md">78 <Step title="Écrire SKILL.md">

79 Chaque compétence a besoin d'un fichier `SKILL.md` avec deux parties : un frontmatter YAML entre les marqueurs `---` qui indique à Claude quand utiliser la compétence, et du contenu markdown avec les instructions que Claude suit lorsque la compétence s'exécute. Le nom du répertoire devient la commande que vous tapez, et la `description` aide Claude à décider quand charger la compétence automatiquement.79 Chaque compétence a besoin d'un fichier `SKILL.md` avec deux parties : un frontmatter YAML entre les marqueurs `---` qui indique à Claude quand utiliser la compétence, et du contenu markdown avec les instructions que Claude suit lorsque la compétence s'exécute. Le nom du répertoire, ou le frontmatter `name` lorsque vous en définissez un, devient la commande que vous tapez, et la `description` aide Claude à décider quand charger la compétence automatiquement.

80 80 

81 Enregistrez ceci dans `~/.claude/skills/summarize-changes/SKILL.md` :81 Enregistrez ceci dans `~/.claude/skills/summarize-changes/SKILL.md` :

82 82 


127| Entreprise | `.claude/skills/<skill-name>/SKILL.md` dans le [répertoire des paramètres gérés](/docs/fr/managed-settings#delivery-mechanisms) | Tous les utilisateurs sur les machines où votre organisation la déploie |127| Entreprise | `.claude/skills/<skill-name>/SKILL.md` dans le [répertoire des paramètres gérés](/docs/fr/managed-settings#delivery-mechanisms) | Tous les utilisateurs sur les machines où votre organisation la déploie |

128| Personnel | `~/.claude/skills/<skill-name>/SKILL.md` | Tous vos projets sur cette machine, mais pas les [sessions Cowork ou cloud](#skills-in-cowork-and-cloud-sessions) |128| Personnel | `~/.claude/skills/<skill-name>/SKILL.md` | Tous vos projets sur cette machine, mais pas les [sessions Cowork ou cloud](#skills-in-cowork-and-cloud-sessions) |

129| Projet | `.claude/skills/<skill-name>/SKILL.md` | Sessions dans ce référentiel. Validez-la pour que votre équipe l'obtienne aussi |129| Projet | `.claude/skills/<skill-name>/SKILL.md` | Sessions dans ce référentiel. Validez-la pour que votre équipe l'obtienne aussi |

130| Imbriquée | `<subdir>/.claude/skills/<skill-name>/SKILL.md` | Sessions démarrées dans ou sous `<subdir>`. Une session démarrée au-dessus la charge une fois que Claude travaille sur des fichiers là-bas. Voir [monorepos et sous-répertoires](#discovery-from-parent-and-nested-directories) |130| Imbriquée | `<subdir>/.claude/skills/<skill-name>/SKILL.md` | Sessions démarrées dans ou sous `<subdir>`. Une session démarrée au-dessus la charge une fois que Claude travaille sur les fichiers qui s'y trouvent. Voir [monorepos et sous-répertoires](#discovery-from-parent-and-nested-directories) |

131| Répertoire supplémentaire | `.claude/skills/<skill-name>/SKILL.md` dans un répertoire que vous transmettez avec `--add-dir` | Cette session. Voir [répertoires en dehors du projet](#skills-from-additional-directories) |131| Répertoire supplémentaire | `.claude/skills/<skill-name>/SKILL.md` dans un répertoire que vous transmettez avec `--add-dir` | Cette session. Voir [répertoires en dehors du projet](#skills-from-additional-directories) |

132| Plugin | `<plugin>/skills/<skill-name>/SKILL.md` | Partout où le [plugin](/docs/fr/plugins/overview) est activé, en tant que `/plugin-name:skill-name` |132| Plugin | `<plugin>/skills/<skill-name>/SKILL.md` | Partout où le [plugin](/docs/fr/plugins/overview) est activé, en tant que `/plugin-name:skill-name` |

133| Compte claude.ai | Skills activées pour votre compte claude.ai | Sessions Cowork, sessions cloud et sessions de terminal où vous vous connectez avec ce compte. Voir [Skills synchronisées depuis claude.ai](#how-synced-skills-behave) |133| Compte claude.ai | Skills activées pour votre compte claude.ai | Sessions Cowork, sessions cloud et sessions de terminal où vous vous connectez avec ce compte. Voir [Skills synchronisées depuis claude.ai](#how-synced-skills-behave) |

134 134 

135Les dossiers de skills suivent également ces règles :135Les dossiers de skills suivent également ces règles :

136 136 

137* **Dossiers avec lien symbolique** : une entrée `<skill-name>` à l'emplacement entreprise, personnel ou projet peut être un lien symbolique vers un répertoire ailleurs sur le disque. Claude Code lit `SKILL.md` depuis la cible et charge la skill une seule fois même si plusieurs emplacements pointent vers la même cible. Les skills de plugin [gèrent les liens symboliques différemment](/docs/fr/plugins/host-marketplace#share-files-within-a-marketplace-with-symlinks).137* **Dossiers liés par symlink** : une entrée `<skill-name>` à l'emplacement entreprise, personnel ou projet peut être un symlink vers un répertoire ailleurs sur le disque. Claude Code lit `SKILL.md` depuis la cible et charge la skill une seule fois même si plusieurs emplacements pointent vers la même cible. Les skills de plugin [gèrent les symlinks différemment](/docs/fr/plugins/host-marketplace#share-files-within-a-marketplace-with-symlinks).

138* **Nom réservé** : ne nommez pas un dossier de skill `synced`, quelle que soit la casse. Claude Code utilise `~/.claude/skills/synced/` pour les [skills téléchargées depuis claude.ai](#where-synced-skills-load) et ignore une skill que vous créez à ce nom aux emplacements entreprise, personnel et projet.138* **Nom réservé `synced`** : ne nommez pas un dossier de skill `synced`, quelle que soit la casse. Claude Code utilise `~/.claude/skills/synced/` pour les [skills téléchargées depuis claude.ai](#where-synced-skills-load) et ignore une skill que vous créez à ce nom aux emplacements entreprise, personnel et projet.

139* **Fichiers de commande** : un fichier Markdown dans `.claude/commands/` est le format plus ancien et fonctionne toujours. Il supporte le même [frontmatter](#frontmatter-reference) sauf `name` et `paths`. Pour trouver le nom que vous tapez pour l'invoquer, voir [Comment une skill obtient son nom de commande](#how-a-skill-gets-its-command-name). Préférez une skill pour les nouveaux travaux, puisque les skills supportent aussi les [fichiers de support](#add-supporting-files).139* **Nom réservé `anthropic-skills`** : en dehors d'un plugin, un dossier de skill ou un fichier de commande dont le nom est `anthropic-skills` ou commence par `anthropic-skills:` ne se charge pas. Voir [Noms réservés pour les skills synchronisées](#names-reserved-for-synced-skills).

140* **Fichiers de commande** : un fichier Markdown dans `.claude/commands/` est le format plus ancien et fonctionne toujours. Il supporte le même [frontmatter](#frontmatter-reference) sauf `name` et `paths`. Pour trouver le nom que vous tapez pour l'invoquer, voir [Comment une skill obtient son nom de commande](#how-a-skill-gets-its-command-name). Préférez une skill pour les nouveaux travaux, car les skills supportent aussi les [fichiers de support](#add-supporting-files).

140* **Dossier de skill en tant que plugin** : ajoutez un `.claude-plugin/plugin.json` à un dossier de skill et il se charge en tant que [plugin](/docs/fr/plugins/loading#plugins-shared-through-a-repository) nommé `<name>@skills-dir`, pour qu'il puisse regrouper des agents, des hooks et des serveurs MCP. Dans un `.claude/skills/` de projet, cela nécessite d'accepter d'abord la boîte de dialogue de confiance de l'espace de travail.141* **Dossier de skill en tant que plugin** : ajoutez un `.claude-plugin/plugin.json` à un dossier de skill et il se charge en tant que [plugin](/docs/fr/plugins/loading#plugins-shared-through-a-repository) nommé `<name>@skills-dir`, pour qu'il puisse regrouper des agents, des hooks et des serveurs MCP. Dans un `.claude/skills/` de projet, cela nécessite d'accepter d'abord la boîte de dialogue de confiance de l'espace de travail.

141 142 

142<h3 id="discovery-from-parent-and-nested-directories">143<h3 id="discovery-from-parent-and-nested-directories">

143 Charger les skills dans les monorepos et les sous-répertoires144 Charger les skills dans les monorepos et sous-répertoires

144</h3>145</h3>

145 146 

146Claude Code charge les skills de projet depuis `.claude/skills/` dans le répertoire où vous le démarrez et dans chaque répertoire parent jusqu'à la racine du référentiel, donc démarrer dans `packages/frontend/` récupère toujours les skills définies à la racine. Quand vous [déplacez la session avec `/cd`](/docs/fr/permissions#move-the-session-to-another-directory) sur v2.1.246 ou ultérieur, Claude Code ajoute les skills de projet du nouveau répertoire.147Claude Code charge les skills de projet depuis `.claude/skills/` dans le répertoire où vous le démarrez et dans chaque répertoire parent jusqu'à la racine du référentiel, donc démarrer dans `packages/frontend/` récupère toujours les skills définies à la racine. Quand vous [déplacez la session avec `/cd`](/docs/fr/permissions#move-the-session-to-another-directory) sur v2.1.246 ou ultérieur, Claude Code ajoute les skills de projet du nouveau répertoire.

147 148 

148Dans une session s'exécutant dans un [git worktree](/docs/fr/worktrees) lié, Claude Code recherche les répertoires parents uniquement jusqu'à la racine du worktree. Sur Claude Code v2.1.277 ou ultérieur, quand le checkout du worktree n'a pas de répertoire `.claude/skills` à sa racine, Claude Code charge à la place les skills de projet du checkout principal. Voir [Ce que les worktrees partagent avec le checkout principal](/docs/fr/worktrees#what-worktrees-share-with-the-main-checkout).149Dans une session exécutée dans un [git worktree](/docs/fr/worktrees) lié, Claude Code recherche les répertoires parents uniquement jusqu'à la racine du worktree. Sur Claude Code v2.1.277 ou ultérieur, quand le checkout du worktree n'a pas de répertoire `.claude/skills` à sa racine, Claude Code charge les skills de projet du checkout principal à la place. Voir [Ce que les worktrees partagent avec le checkout principal](/docs/fr/worktrees#what-worktrees-share-with-the-main-checkout).

149 150 

150Les skills dans un répertoire `.claude/skills/` en dessous de celui où vous avez démarré ne se chargent pas au démarrage. Elles se chargent la première fois que Claude lit ou édite un fichier dans ce sous-répertoire et restent disponibles pour le reste de la session. Jusqu'à ce moment, elles n'apparaissent pas dans le menu `/` et vous ne pouvez pas les invoquer par nom. Pour les charger plus tôt, exécutez `/add-dir` avec le chemin du sous-répertoire, ce qui nécessite Claude Code v2.1.257 ou ultérieur.151Les skills dans un répertoire `.claude/skills/` en dessous de l'endroit où vous avez démarré ne se chargent pas au démarrage. Elles se chargent la première fois que Claude lit ou édite un fichier dans ce sous-répertoire et restent disponibles pour le reste de la session. Jusqu'à ce moment, elles n'apparaissent pas dans le menu `/` et vous ne pouvez pas les invoquer par nom. Pour les charger plus tôt, exécutez `/add-dir` avec le chemin du sous-répertoire, ce qui nécessite Claude Code v2.1.257 ou ultérieur.

151 152 

152Quand une skill imbriquée partage un nom avec une autre skill, les deux restent disponibles. Avec une skill `deploy` à la racine du référentiel et une autre dans `apps/web/.claude/skills/` :153Quand le nom du répertoire d'une skill imbriquée correspond au nom d'une autre skill, les deux restent disponibles. Avec une skill `deploy` à la racine du référentiel et une autre dans `apps/web/.claude/skills/` :

153 154 

154* `/deploy` exécute la skill racine. Claude Code liste aussi les variantes qualifiées par répertoire pour Claude, avec une instruction pour invoquer celle dont le répertoire contient les fichiers sur lesquels il travaille, donc la skill imbriquée s'applique toujours au travail dans `apps/web/`.155* `/deploy` exécute la skill racine. Claude Code liste aussi les variantes qualifiées par répertoire pour Claude, avec une instruction pour invoquer celle dont le répertoire contient les fichiers sur lesquels il travaille, donc la skill imbriquée s'applique toujours au travail dans `apps/web/`.

155* `/apps/web:deploy` exécute la skill imbriquée seule. Sa description nomme le répertoire auquel elle s'applique.156* `/apps/web:deploy` exécute la skill imbriquée seule. Sa description nomme le répertoire auquel elle s'applique.


158 Charger les skills depuis un répertoire en dehors du projet159 Charger les skills depuis un répertoire en dehors du projet

159</h3>160</h3>

160 161 

161Quand vous ajoutez un répertoire avec `--add-dir` ou `/add-dir`, Claude Code charge les skills dans le `.claude/skills/` de ce répertoire, ainsi que son `.claude/commands/` et `.claude/agents/`. Les répertoires que le SDK Agent ajoute via [`additionalDirectories`](/docs/fr/agent-sdk/typescript#options) en TypeScript ou [`add_dirs`](/docs/fr/agent-sdk/python#claudeagentoptions) en Python se chargent de la même façon, car le SDK les transmet en tant que `--add-dir`. Le paramètre `permissions.additionalDirectories` dans `settings.json` accorde uniquement l'accès aux fichiers et ne charge aucun de ceux-ci.162Quand vous ajoutez un répertoire avec `--add-dir` ou `/add-dir`, Claude Code charge les skills dans le `.claude/skills/` de ce répertoire, ainsi que son `.claude/commands/` et `.claude/agents/`. Les répertoires que le SDK Agent ajoute via [`additionalDirectories`](/docs/fr/agent-sdk/typescript#options) en TypeScript ou [`add_dirs`](/docs/fr/agent-sdk/python#claudeagentoptions) en Python se chargent de la même manière, car le SDK les transmet en tant que `--add-dir`. Le paramètre `permissions.additionalDirectories` dans `settings.json` accorde uniquement l'accès aux fichiers et ne charge aucun de ceux-ci.

162 163 

163Claude Code surveille `.claude/skills/` dans un répertoire que vous transmettez avec `--add-dir` au lancement, comme le décrit [Éditer une skill pendant une session](#live-change-detection). Il ne surveille pas le `.claude/commands/` ou `.claude/agents/` du répertoire ajouté, donc redémarrez la session après avoir modifié un fichier là-bas.164Claude Code surveille `.claude/skills/` dans un répertoire que vous transmettez avec `--add-dir` au lancement, comme le décrit [Éditer une skill pendant une session](#live-change-detection). Il ne surveille pas le `.claude/commands/` ou `.claude/agents/` du répertoire ajouté, donc redémarrez la session après avoir modifié un fichier là-bas.

164 165 

165Ces chargements dépendent de la source de paramètre `project` [setting source](/docs/fr/agent-sdk/claude-code-features#control-filesystem-settings-with-settingsources), qui est activée par défaut. Une politique [`strictPluginOnlyCustomization`](/docs/fr/settings-reference#strictpluginonlycustomization), le [mode bare](/docs/fr/headless#start-faster-with-bare-mode) et [`--safe-mode`](/docs/fr/cli-reference#cli-flags) les restreignent davantage, comme ces pages le décrivent. Voir [Les répertoires supplémentaires accordent l'accès aux fichiers, pas la configuration](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) pour le tableau complet de ce qu'un répertoire ajouté charge, y compris `CLAUDE.md` et les paramètres de plugin.166Ces chargements dépendent de la [source de paramètre](/docs/fr/agent-sdk/claude-code-features#control-filesystem-settings-with-settingsources) `project`, qui est activée par défaut. Une politique [`strictPluginOnlyCustomization`](/docs/fr/settings-reference#strictpluginonlycustomization), le [mode bare](/docs/fr/headless#start-faster-with-bare-mode) et [`--safe-mode`](/docs/fr/cli-reference#cli-flags) les restreignent davantage, comme ces pages le décrivent. Voir [Les répertoires supplémentaires accordent l'accès aux fichiers, pas la configuration](/docs/fr/permissions#additional-directories-grant-file-access-not-configuration) pour le tableau complet de ce qu'un répertoire ajouté charge, y compris `CLAUDE.md` et les paramètres de plugin.

166 167 

167<h3 id="resolve-skills-that-share-a-name">168<h3 id="resolve-skills-that-share-a-name">

168 Résoudre les skills qui partagent un nom169 Résoudre les skills qui partagent un nom

169</h3>170</h3>

170 171 

171Quand deux skills partagent un nom, l'endroit d'où chacune provient décide laquelle `/name` exécute. Le tableau couvre les emplacements entreprise, personnel, projet, imbriqué, plugin et claude.ai, les skills regroupées et les fichiers de commande :172Quand deux skills partagent un nom de répertoire ou de fichier, l'endroit d'où chacune provient décide laquelle `/name` exécute. Pour un nom défini par le champ frontmatter `name`, voir [Comment une skill obtient son nom de commande](#how-a-skill-gets-its-command-name). Le tableau couvre les emplacements entreprise, personnel, projet, imbriqué, plugin et claude.ai, les skills regroupées et les fichiers de commande :

172 173 

173| Même nom dans | Laquelle s'exécute |174| Même nom dans | Laquelle s'exécute |

174| :- | :- |175| :- | :- |

175| Deux parmi entreprise, personnel et projet | Entreprise sur personnel, et personnel sur projet. Avec `deploy` dans `~/.claude/skills/` et dans le `.claude/skills/` du projet, `/deploy` exécute la personnelle |176| Deux parmi entreprise, personnel et projet | Entreprise sur personnel, et personnel sur projet. Avec `deploy` dans `~/.claude/skills/` et le `.claude/skills/` du projet, `/deploy` exécute celle personnelle |

176| N'importe lequel de ces emplacements et une [skill regroupée](#bundled-skills) | Votre skill remplace la commande regroupée, mais pas ses alias. Une skill `code-review` de projet remplace `/code-review`, et l'alias regroupé `/review` n'exécute jamais votre skill |177| N'importe lequel de ces emplacements et une [skill regroupée](#bundled-skills) | Votre skill remplace la commande regroupée, mais pas ses alias. Une skill `code-review` de projet remplace `/code-review`, et l'alias regroupé `/review` n'exécute jamais votre skill |

177| Une skill et un fichier dans `.claude/commands/` | La skill |178| Une skill et un fichier dans `.claude/commands/` | La skill |

178| Une skill racine de projet et une skill imbriquée | Les deux se chargent. Voir [monorepos et sous-répertoires](#discovery-from-parent-and-nested-directories) |179| Une skill racine de projet et une skill imbriquée | Les deux se chargent. Voir [monorepos et sous-répertoires](#discovery-from-parent-and-nested-directories) |

179| Une skill de plugin et une skill à n'importe lequel des emplacements ci-dessus | Les deux se chargent, car les skills de plugin sont espacées de noms en tant que `/plugin-name:skill-name` |180| Une skill de plugin et une skill à n'importe lequel des emplacements ci-dessus | Les deux se chargent, car les skills de plugin sont espacées de noms en tant que `/plugin-name:skill-name` |

180| N'importe lequel de ce qui précède et une skill [synchronisée depuis votre compte claude.ai](#how-synced-skills-behave) | L'autre skill ou commande. La skill synchronisée s'exécute toujours en tant que `/anthropic-skills:<name>`. Voir [Quand un nom de skill synchronisée correspond à une autre commande](#when-a-synced-skill-name-matches-another-command) |181| N'importe lequel de ce qui précède et le nom court d'une skill [synchronisée depuis votre compte claude.ai](#how-synced-skills-behave) | L'autre skill ou commande. La skill synchronisée est alors listée et s'exécute uniquement sous son nom complet. Voir [Quand un nom de skill synchronisée correspond à une autre commande](#when-a-synced-skill-name-matches-another-command) |

181 182 

182<h3 id="skills-in-cowork-and-cloud-sessions">183<h3 id="skills-in-cowork-and-cloud-sessions">

183 Utiliser les skills dans les sessions Cowork et cloud184 Utiliser les skills dans les sessions Cowork et cloud


196 Skills synchronisées depuis claude.ai197 Skills synchronisées depuis claude.ai

197</h3>198</h3>

198 199 

199Cette section s'applique à vous si vous utilisez les sessions Cowork ou cloud, ou si vous vous connectez à Claude Code dans votre terminal avec un compte claude.ai. Dans ces sessions, Claude Code charge les skills activées pour votre compte claude.ai, sans configuration de votre part, comme le décrit [Où les skills synchronisées se chargent](#where-synced-skills-load). Ces skills incluent celles que vous créez ou activez dans vos paramètres claude.ai, les skills que votre organisation fournit là-bas, et les skills intégrées d'Anthropic telles que `pdf` et `xlsx`.200Cette section s'applique à vous si vous utilisez les sessions Cowork ou cloud, ou si vous vous connectez à Claude Code dans votre terminal avec un compte claude.ai. Dans ces sessions, Claude Code charge les skills activées pour votre compte claude.ai, sans aucune configuration de votre part, comme le décrit [Où les skills synchronisées se chargent](#where-synced-skills-load). Ces skills incluent celles que vous créez ou activez dans vos paramètres claude.ai, les skills que votre organisation fournit là-bas, et les skills intégrées d'Anthropic telles que `pdf` et `xlsx`.

200 201 

201Claude Code télécharge une skill synchronisée depuis votre compte plutôt que de lire un fichier que vous avez écrit sur la machine où la session s'exécute, donc il applique des règles aux skills synchronisées qui ne s'appliquent pas aux skills que vous stockez dans les [emplacements de skills](#where-skills-live).202Claude Code télécharge une skill synchronisée depuis votre compte plutôt que de lire un fichier que vous avez écrit sur la machine où la session s'exécute, donc il applique des règles aux skills synchronisées qui ne s'appliquent pas aux skills que vous stockez dans les [emplacements de skills](#where-skills-live).

202 203 


206 207 

207Dans une session Cowork ou cloud, Claude Code charge les skills activées pour votre compte claude.ai, et [Skills dans les sessions Cowork et cloud](#skills-in-cowork-and-cloud-sessions) dit comment choisir quelles skills ces sessions obtiennent.208Dans une session Cowork ou cloud, Claude Code charge les skills activées pour votre compte claude.ai, et [Skills dans les sessions Cowork et cloud](#skills-in-cowork-and-cloud-sessions) dit comment choisir quelles skills ces sessions obtiennent.

208 209 

209Dans votre terminal, Claude Code synchronise ces skills dans les sessions où vous vous connectez avec votre compte claude.ai. Quand la session démarre, Claude Code télécharge les skills de votre compte dans `~/.claude/skills/synced/` en arrière-plan, puis vérifie claude.ai pour les modifications environ toutes les 10 minutes pendant que la session s'exécute. Quand une vérification découvre qu'une skill a été ajoutée, éditée ou désactivée sur claude.ai, Claude Code l'ajoute, la met à jour ou la supprime dans la session en cours sans redémarrage. La synchronisation dans les sessions de terminal nécessite Claude Code v2.1.273 ou ultérieur.210Dans votre terminal, Claude Code synchronise ces skills dans les sessions où vous vous connectez avec votre compte claude.ai. Quand la session démarre, Claude Code télécharge les skills de votre compte dans `~/.claude/skills/synced/` en arrière-plan, puis vérifie claude.ai pour les modifications environ toutes les 10 minutes pendant que la session s'exécute. Quand une vérification trouve qu'une skill a été ajoutée, éditée ou désactivée sur claude.ai, Claude Code l'ajoute, la met à jour ou la supprime dans la session en cours sans redémarrage. La synchronisation dans les sessions de terminal nécessite Claude Code v2.1.273 ou ultérieur.

210 211 

211La synchronisation ne retarde jamais le démarrage, car Claude attend le téléchargement d'une skill uniquement quand il invoque cette skill. Une exécution courte [non-interactive](/docs/fr/headless) peut donc se terminer avant qu'une skill nouvellement ajoutée ne se télécharge, auquel cas une session ultérieure la télécharge. Pour faire en sorte qu'une exécution non-interactive télécharge vos skills et attende la liste avant de répondre à l'invite, définissez [`CLAUDE_CODE_SYNC_SKILLS`](/docs/fr/env-vars#variables) sur `1`.212La synchronisation ne retarde jamais le démarrage, car Claude attend le téléchargement d'une skill uniquement quand il l'invoque. Une exécution courte [non-interactive](/docs/fr/headless) peut donc se terminer avant qu'une skill nouvellement ajoutée ne soit téléchargée, auquel cas une session ultérieure la télécharge. Pour faire en sorte qu'une exécution non-interactive télécharge vos skills et attende la liste avant de répondre à l'invite, définissez [`CLAUDE_CODE_SYNC_SKILLS`](/docs/fr/env-vars#variables) sur `1`.

212 213 

213Claude Code ne synchronise que dans une session qui se connecte avec votre compte claude.ai et [récupère les drapeaux de fonctionnalités depuis Anthropic](/docs/fr/env-vars#features-that-need-feature-flag-fetching). Il ne synchronise pas dans ces sessions :214Claude Code ne synchronise que dans une session qui se connecte avec votre compte claude.ai et [récupère les drapeaux de fonctionnalités depuis Anthropic](/docs/fr/env-vars#features-that-need-feature-flag-fetching). Il ne synchronise pas dans ces sessions :

214 215 

215* Une session qui n'utilise pas une connexion stockée par `/login`, comme une qui s'authentifie avec une clé API, ou une où `ANTHROPIC_AUTH_TOKEN`, `CLAUDE_CODE_OAUTH_TOKEN` ou un script `apiKeyHelper` fournit les identifiants216* Une session qui n'utilise pas une connexion stockée par `/login`, comme une qui s'authentifie avec une clé API, ou une où `ANTHROPIC_AUTH_TOKEN`, `CLAUDE_CODE_OAUTH_TOKEN` ou un script `apiKeyHelper` fournit les identifiants

216* Une session qui ne récupère pas les drapeaux de fonctionnalités, comme une sur Amazon Bedrock ou une où vous définissez `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`217* Une session qui ne récupère pas les drapeaux de fonctionnalités, comme une sur Amazon Bedrock ou une où vous définissez `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`

217* Une session en [mode bare](/docs/fr/headless#start-faster-with-bare-mode) ou une que vous démarrez avec `--safe-mode`218* Une session en [mode bare](/docs/fr/headless#start-faster-with-bare-mode) ou une que vous démarrez avec `--safe-mode`

218* Une session où les paramètres gérés de votre organisation [verrouillent les skills aux sources de plugin](/docs/fr/settings-reference#strictpluginonlycustomization-skills), ou une que vous démarrez avec une liste [`--setting-sources`](/docs/fr/cli-reference#cli-flags) qui omet `user`219* Une session où les paramètres gérés de votre organisation [verrouillent les skills sur les sources de plugin](/docs/fr/settings-reference#strictpluginonlycustomization-skills), ou une que vous démarrez avec une liste [`--setting-sources`](/docs/fr/cli-reference#cli-flags) qui omet `user`

219 220 

220Si vous vous connectez avec `/login` pendant une session, redémarrez Claude Code pour commencer la synchronisation.221Si vous vous connectez avec `/login` pendant une session, redémarrez Claude Code pour commencer la synchronisation.

221 222 

222Les skills qu'une session antérieure a synchronisées restent sur le disque. Claude Code les charge dans les sessions ultérieures connectées au même compte, même quand il ne peut pas atteindre claude.ai.223Les skills qu'une session antérieure a synchronisées restent sur le disque. Claude Code les charge dans les sessions ultérieures connectées au même compte, même quand il ne peut pas atteindre claude.ai.

223 224 

224Claude Code télécharge les skills synchronisées et ne les télécharge jamais. Si vous ou Claude éditez un fichier sous `~/.claude/skills/synced/`, la modification n'est pas enregistrée sur votre compte claude.ai, et une synchronisation ultérieure peut la remplacer ou la supprimer. Pour modifier une skill synchronisée, mettez-la à jour sur claude.ai ; la prochaine synchronisation télécharge la nouvelle version.225Claude Code télécharge les skills synchronisées et ne les télécharge jamais. Si vous ou Claude éditez un fichier sous `~/.claude/skills/synced/`, la modification n'est pas enregistrée sur votre compte claude.ai, et une synchronisation ultérieure peut la remplacer ou la supprimer. Pour modifier une skill synchronisée, mettez-la à jour sur claude.ai ; la synchronisation suivante télécharge la nouvelle version.

225 226 

226Pour voir quelles skills se sont synchronisées, exécutez `/skills`. Le menu les liste sous `claude.ai sync`.227Pour voir quelles skills ont été synchronisées, exécutez `/skills`. Le menu les liste sous `claude.ai sync`.

227 228 

228Certaines skills d'Anthropic, comme `pdf` et `xlsx`, se synchronisent toujours. Pour les autres, activez ou désactivez une skill dans vos paramètres de skills sur claude.ai pour changer si elle se synchronise.229Certaines skills d'Anthropic, comme `pdf` et `xlsx`, se synchronisent toujours. Pour les autres, activez ou désactivez une skill dans vos paramètres de skills sur claude.ai pour modifier si elle se synchronise.

229 230 

230Pour arrêter la synchronisation sur une machine, définissez [`syncClaudeAiSkills`](/docs/fr/settings-reference#syncclaudeaiskills) sur `false` dans vos paramètres utilisateur. Claude Code arrête le téléchargement, et la prochaine fois qu'il démarre, il déplace les skills qu'il a déjà synchronisées vers `~/.claude/skills/.trash/` et ne les charge plus. Votre organisation peut désactiver la synchronisation pour tout le monde en désactivant Skills sur claude.ai. Pour arrêter la synchronisation tout en laissant Skills activé, elle peut définir la même clé dans les [paramètres gérés](/docs/fr/managed-settings).231Pour arrêter la synchronisation sur une machine, définissez [`syncClaudeAiSkills`](/docs/fr/settings-reference#syncclaudeaiskills) sur `false` dans vos paramètres utilisateur. Claude Code arrête le téléchargement, et la prochaine fois qu'il démarre, il déplace les skills qu'il a déjà synchronisées vers `~/.claude/skills/.trash/` et ne les charge plus. Votre organisation peut désactiver la synchronisation pour tout le monde en désactivant Skills sur claude.ai. Pour arrêter la synchronisation tout en laissant Skills activé, elle peut définir la même clé dans les [paramètres gérés](/docs/fr/managed-settings).

231 232 

232Si votre organisation désactive Skills sur claude.ai, Claude Code supprime les skills téléchargées et elles cessent de se charger. Les skills supprimées se déplacent vers `~/.claude/skills/.trash/`, où vous pouvez récupérer les fichiers jusqu'à ce que le [balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically) les supprime. Une fois que votre organisation réactive Skills, Claude Code télécharge les skills que vous avez activées à la prochaine synchronisation.233Si votre organisation désactive Skills sur claude.ai, Claude Code supprime les skills téléchargées et elles cessent de se charger. Les skills supprimées se déplacent vers `~/.claude/skills/.trash/`, où vous pouvez récupérer les fichiers jusqu'à ce que le [balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically) les supprime. Une fois que votre organisation réactive Skills, Claude Code télécharge les skills que vous avez activées à la synchronisation suivante.

233 234 

234<h4 id="when-a-synced-skill-name-matches-another-command">235<h4 id="when-a-synced-skill-name-matches-another-command">

235 Quand un nom de skill synchronisée correspond à une autre commande236 Quand un nom de skill synchronisée correspond à une autre commande

236</h4>237</h4>

237 238 

238Vous pouvez invoquer une skill synchronisée par son nom complet, `/anthropic-skills:<name>`, ou par son nom court, `/<name>`. Quand une autre commande utilise ce nom court, `/<name>` exécute l'autre commande, et la skill synchronisée s'exécute uniquement en tant que `/anthropic-skills:<name>`. Avec une skill `deploy` locale et une `deploy` synchronisée, `/deploy` exécute la skill locale et `/anthropic-skills:deploy` exécute la synchronisée. Avant v2.1.269, une skill synchronisée n'avait que son nom court.239Vous pouvez invoquer une skill synchronisée par son nom court, `/<name>`, ou par son nom complet, `/anthropic-skills:<name>`. Quand une autre commande utilise le nom court, `/<name>` exécute l'autre commande, et la skill synchronisée s'exécute uniquement en tant que `/anthropic-skills:<name>`. Avec une skill locale `deploy` et une `deploy` synchronisée, `/deploy` exécute la skill locale et `/anthropic-skills:deploy` exécute celle synchronisée. Avant v2.1.269, une skill synchronisée n'avait que son nom court.

239 240 

240L'autre commande peut être n'importe laquelle de celles-ci :241Dans le menu `/`, `/skills` et `/context`, une skill synchronisée apparaît sous son nom court, ou sous son nom complet tandis qu'une autre commande utilise le nom court. Exécutez `/skills` dans votre session. Une note sous la liste explique chaque skill synchronisée qui a perdu son nom court. Si l'un de vos skills personnels ou fichiers de commande dans `~/.claude/` utilise le nom, la note dit aussi ce qu'il faut renommer ou supprimer pour le libérer.

242 

243De v2.1.269 à v2.1.280, ces listes affichaient chaque skill synchronisée sous son nom complet, et `/skills` n'avait pas de telle note ; les deux ont changé dans v2.1.281.

244 

245La commande qui utilise le nom court peut être l'une de celles-ci :

241 246 

242* Une commande intégrée ou une [skill regroupée](#bundled-skills), y compris une qui n'est pas disponible dans votre session, par exemple après avoir désactivé les skills regroupées247* Une commande intégrée ou une [skill regroupée](#bundled-skills), y compris une qui n'est pas disponible dans votre session, par exemple après avoir désactivé les skills regroupées

243* Une skill à n'importe quel [niveau local](#where-skills-live) ou un fichier dans `.claude/commands/`248* Une skill à n'importe quel [niveau local](#where-skills-live) ou un fichier dans `.claude/commands/`

244* Une skill de plugin249* Une skill de plugin

245* Une [invite MCP](/docs/fr/mcp#use-mcp-prompts-as-commands)250* Une [invite MCP](/docs/fr/mcp#use-mcp-prompts-as-commands)

246 251 

247Claude Code étiquette les skills synchronisées pour que vous puissiez dire d'où elles proviennent. Le menu `/skills` et `/context` groupent les skills synchronisées sous `claude.ai sync`, et le menu de commande `/` les marque comme provenant de claude.ai.252Claude Code étiquette les skills synchronisées pour que vous puissiez dire d'où elles proviennent. Le menu `/skills` et `/context` regroupent les skills synchronisées sous `claude.ai sync`, et la commande `/` les marque comme provenant de claude.ai.

248 253 

249Quand il compare les noms, Claude Code ignore la casse, l'espacement et les caractères invisibles, et traite les formes de compatibilité telles que les lettres pleine largeur et les variantes de tiret comme leurs équivalents simples. Par exemple, une skill synchronisée nommée `Commit` et une skill locale nommée `commit` comptent comme le même nom, donc `/commit` continue d'exécuter votre skill locale.254Quand il compare les noms, Claude Code ignore la casse, l'espacement et les caractères invisibles, et traite les formes de compatibilité telles que les lettres pleine largeur et les variantes de tiret comme leurs équivalents simples. Par exemple, une skill synchronisée nommée `Commit` et une skill locale nommée `commit` comptent comme le même nom, donc `/commit` continue d'exécuter votre skill locale.

250 255 

251Un nom qui diffère uniquement par une lettre ressemblante d'un autre alphabet compte comme un nom différent, et l'étiquette `claude.ai sync` est comment vous distinguez les deux. Ces vérifications et étiquettes nécessitent Claude Code v2.1.228 ou ultérieur.256Un nom qui diffère uniquement par une lettre ressemblante d'un autre alphabet compte comme un nom différent, et l'étiquette `claude.ai sync` est comment vous distinguez les deux. Ces vérifications et étiquettes nécessitent Claude Code v2.1.228 ou ultérieur.

252 257 

258<h4 id="names-reserved-for-synced-skills">

259 Noms réservés pour les skills synchronisées

260</h4>

261 

262Claude Code réserve le nom `anthropic-skills`, et chaque nom à l'intérieur de cet espace de noms tel que `anthropic-skills:pdf`, pour les skills synchronisées depuis claude.ai, donc le nom complet d'une skill synchronisée n'exécute jamais rien d'autre. Le nom est réservé dans chaque session, que vous vous connectiez ou non avec un compte claude.ai.

263 

264* **Un dossier de skill, un frontmatter `name`, un fichier ou sous-dossier dans `.claude/commands/`, ou un [flux de travail enregistré](/docs/fr/workflows#save-the-workflow-for-reuse)** : il ne se charge pas. Un [avis de démarrage](/docs/fr/errors#a-skill-command-or-workflow-wasnt-loaded-because-its-name-is-reserved) nomme le premier élément à renommer ou éditer.

265* **Un plugin nommé `anthropic-skills`** : il se charge. Quand l'une de ses skills et une skill synchronisée sont toutes deux nommées `<name>`, `/anthropic-skills:<name>` exécute la skill synchronisée.

266* **Un serveur MCP nommé `anthropic-skills`** : il se connecte et ses outils fonctionnent, mais [ses invites n'apparaissent pas comme des commandes](/docs/fr/mcp#use-mcp-prompts-as-commands). Renommez le serveur dans votre configuration MCP pour les lister.

267 

253<h4 id="how-claude-code-handles-the-frontmatter-of-a-synced-skill">268<h4 id="how-claude-code-handles-the-frontmatter-of-a-synced-skill">

254 Comment Claude Code gère le frontmatter d'une skill synchronisée269 Comment Claude Code gère le frontmatter d'une skill synchronisée

255</h4>270</h4>


257Claude Code applique deux règles au frontmatter d'une skill synchronisée :272Claude Code applique deux règles au frontmatter d'une skill synchronisée :

258 273 

259* Claude Code honore le frontmatter dans chaque type de session, donc une concession `allowed-tools` passe par le [flux de permission](/docs/fr/permissions) normal.274* Claude Code honore le frontmatter dans chaque type de session, donc une concession `allowed-tools` passe par le [flux de permission](/docs/fr/permissions) normal.

260* Claude Code assainit le texte d'affichage que la skill fournit, comme sa description. Il supprime les caractères de contrôle, et dans le texte qui atteint Claude, comme la description, il échappe aussi les crochets pointus pour que le texte ne puisse pas imiter le formatage interne de Claude Code. Cet assainissement nécessite Claude Code v2.1.228 ou ultérieur.275* Claude Code assainit le texte d'affichage que la skill fournit, comme sa description. Il supprime les caractères de contrôle, et dans le texte qui atteint Claude, comme la description, il échappe aussi les crochets d'angle pour que le texte ne puisse pas imiter le formatage interne de Claude Code. Cet assainissement nécessite Claude Code v2.1.228 ou ultérieur.

261 276 

262<h4 id="how-claude-code-handles-the-body-of-a-synced-skill">277<h4 id="how-claude-code-handles-the-body-of-a-synced-skill">

263 Comment Claude Code gère le corps d'une skill synchronisée278 Comment Claude Code gère le corps d'une skill synchronisée


266Ce que Claude Code fait avec le corps d'une skill synchronisée dépend de l'endroit où la session s'exécute :281Ce que Claude Code fait avec le corps d'une skill synchronisée dépend de l'endroit où la session s'exécute :

267 282 

268* Dans une session cloud, le corps conserve le comportement qu'une skill locale a, car la session s'exécute dans un conteneur isolé.283* Dans une session cloud, le corps conserve le comportement qu'une skill locale a, car la session s'exécute dans un conteneur isolé.

269* Dans une session Cowork sur votre bureau, le corps conserve le comportement qu'une skill locale a, sauf que Claude Code remplace chaque ligne de commande `!` par l'espace réservé [`disableSkillShellExecution`](#inject-dynamic-context), comme il le fait pour chaque skill que vous fournissez là-bas.284* Dans une session Cowork sur votre bureau, le corps conserve le comportement qu'une skill locale a, sauf que Claude Code remplace chaque ligne de commande `!` par l'[espace réservé `disableSkillShellExecution`](#inject-dynamic-context), comme il le fait pour chaque skill que vous fournissez là-bas.

270* Dans toute autre session sur votre machine, Claude Code n'exécute pas les commandes [`!`](#inject-dynamic-context), n'attache pas les fichiers que les références `@` nomment de la façon qu'il le fait pour une skill locale, et ne substitue pas les espaces réservés `${CLAUDE_PROJECT_DIR}` et `${CLAUDE_SESSION_ID}`, donc les références `@` et les deux espaces réservés atteignent Claude en tant que texte littéral. Une ligne de commande `!` atteint aussi Claude en tant que texte littéral, ou en tant que cet espace réservé quand `disableSkillShellExecution` est activé. Cette gestion nécessite Claude Code v2.1.228 ou ultérieur.285* Dans toute autre session sur votre machine, Claude Code n'exécute pas les [commandes `!`](#inject-dynamic-context), n'attache pas les fichiers que les références `@` nomment de la manière qu'il le fait pour une skill locale, et ne substitue pas les espaces réservés `${CLAUDE_PROJECT_DIR}` et `${CLAUDE_SESSION_ID}`, donc les références `@` et les deux espaces réservés atteignent Claude en tant que texte littéral. Une ligne de commande `!` atteint Claude en tant que texte littéral aussi, ou en tant que cet espace réservé quand `disableSkillShellExecution` est activé. Cette gestion nécessite Claude Code v2.1.228 ou ultérieur.

271 286 

272<h3 id="live-change-detection">287<h3 id="live-change-detection">

273 Éditer une skill pendant une session288 Éditer une skill pendant une session

274</h3>289</h3>

275 290 

276Claude Code surveille les répertoires de skills pour les modifications de fichiers, sauf en [mode bare](/docs/fr/headless#start-faster-with-bare-mode). Quand vous ajoutez, éditez ou supprimez une skill sous `~/.claude/skills/`, le `.claude/skills/` du projet, ou un `.claude/skills/` à l'intérieur d'un répertoire `--add-dir`, Claude Code récupère la modification dans la session actuelle, sans redémarrage. Si vous créez un répertoire de skills de niveau supérieur qui n'existait pas quand la session a démarré, redémarrez Claude Code pour qu'il puisse surveiller le nouveau répertoire.291Claude Code surveille les répertoires de skills pour les modifications de fichiers, sauf en [mode bare](/docs/fr/headless#start-faster-with-bare-mode). Quand vous ajoutez, éditez ou supprimez une skill sous `~/.claude/skills/`, le `.claude/skills/` du projet, ou un `.claude/skills/` à l'intérieur d'un répertoire `--add-dir`, Claude Code détecte la modification dans la session actuelle, sans redémarrage.

277 292 

278La détection de changement en direct couvre uniquement le texte `SKILL.md`. Pour un dossier de skill qui est aussi un [plugin](/docs/fr/plugins/loading#plugins-shared-through-a-repository), les modifications apportées à `hooks/`, `.mcp.json`, `agents/` et `output-styles/` nécessitent `/reload-plugins` pour prendre effet.293Si vous créez un répertoire de skills de niveau supérieur qui n'existait pas quand la session a démarré, exécutez [`/reload-skills`](/docs/fr/commands#all-commands) pour récupérer les skills que vous y avez mises. Claude Code ne surveille pas encore ce répertoire, donc exécutez `/reload-skills` à nouveau après chaque modification ultérieure là-bas.

294 

295La détection de modification en direct couvre uniquement le texte `SKILL.md`. Pour un dossier de skill qui est aussi un [plugin](/docs/fr/plugins/loading#plugins-shared-through-a-repository), les modifications apportées à `hooks/`, `.mcp.json`, `agents/` et `output-styles/` nécessitent `/reload-plugins` pour prendre effet.

279 296 

280<h3 id="remove-a-skill">297<h3 id="remove-a-skill">

281 Supprimer une skill298 Supprimer une skill

282</h3>299</h3>

283 300 

284La façon dont vous supprimez une skill dépend de l'endroit d'où elle provient :301La façon dont vous supprimez une skill dépend de sa provenance :

285 302 

286* **Skill personnelle ou de projet** : supprimez le répertoire de la skill, `~/.claude/skills/<skill-name>/` ou `.claude/skills/<skill-name>/`. Claude Code la [supprime de `/skills` dans la session actuelle](#live-change-detection) ; le contenu que Claude Code a déjà chargé depuis elle suit le [cycle de vie du contenu de skill](#skill-content-lifecycle).303* **Skill personnelle ou de projet** : supprimez le répertoire de la skill, `~/.claude/skills/<skill-name>/` ou `.claude/skills/<skill-name>/`. Claude Code la [supprime de `/skills` dans la session actuelle](#live-change-detection) ; le contenu que Claude Code a déjà chargé depuis elle suit le [cycle de vie du contenu de la skill](#skill-content-lifecycle).

287* **Skill d'entreprise** : un administrateur supprime le répertoire de la skill depuis `.claude/skills/` à l'intérieur du [répertoire des paramètres gérés](/docs/fr/managed-settings#delivery-mechanisms), par exemple `/etc/claude-code/.claude/skills/<skill-name>/` sur Linux.304* **Skill d'entreprise** : un administrateur supprime le répertoire de la skill depuis `.claude/skills/` à l'intérieur du [répertoire des paramètres gérés](/docs/fr/managed-settings#delivery-mechanisms), par exemple `/etc/claude-code/.claude/skills/<skill-name>/` sur Linux.

288* **Skill de plugin** : désactivez ou désinstallez le plugin qui la fournit, depuis le menu `/plugin` ou avec `/plugin uninstall <plugin-name>@<marketplace-name>`. Claude Code décharge les skills du plugin quand [le changement s'applique](/docs/fr/plugins/cli-reference#reload-plugins) ou quand vous redémarrez.305* **Skill de plugin** : désactivez ou désinstallez le plugin qui la fournit, depuis le menu `/plugin` ou avec `/plugin uninstall <plugin-name>@<marketplace-name>`. Claude Code décharge les skills du plugin quand [la modification s'applique](/docs/fr/plugins/cli-reference#reload-plugins) ou quand vous redémarrez.

289* **Skill synchronisée depuis claude.ai** : désactivez la skill pour votre compte claude.ai, au même endroit où vous l'[avez activée](#skills-in-cowork-and-cloud-sessions). Claude Code la supprime de `~/.claude/skills/synced/` la prochaine fois qu'elle [synchronise vos skills](#where-synced-skills-load). Si vous supprimez le répertoire à la main à la place, la prochaine synchronisation le télécharge à nouveau pendant que la skill reste activée sur claude.ai.306* **Skill synchronisée depuis claude.ai** : désactivez la skill pour votre compte claude.ai, au même endroit où vous l'avez [activée](#skills-in-cowork-and-cloud-sessions). Claude Code la supprime de `~/.claude/skills/synced/` la prochaine fois qu'elle [synchronise vos skills](#where-synced-skills-load). Si vous supprimez le répertoire à la main à la place, la synchronisation suivante le télécharge à nouveau tandis que la skill reste activée sur claude.ai.

290* **Skill regroupée** : définissez [`disableBundledSkills`](#bundled-skills) sur `true` pour désactiver les skills regroupées, ou définissez une skill sur `"off"` dans [`skillOverrides`](#override-skill-visibility-from-settings) pour la masquer.307* **Skill regroupée** : définissez [`disableBundledSkills`](#bundled-skills) sur `true` pour désactiver les skills regroupées, ou définissez une skill sur `"off"` dans [`skillOverrides`](#override-skill-visibility-from-settings) pour la masquer.

291 308 

292Pour conserver une skill personnelle ou de projet mais empêcher Claude de l'invoquer de lui-même, définissez [`disable-model-invocation: true`](#control-who-invokes-a-skill) dans son frontmatter, ou `"user-invocable-only"` dans [`skillOverrides`](#override-skill-visibility-from-settings) quand vous ne voulez pas éditer le fichier.309Pour conserver une skill personnelle ou de projet mais empêcher Claude de l'invoquer de lui-même, définissez [`disable-model-invocation: true`](#control-who-invokes-a-skill) dans son frontmatter, ou `"user-invocable-only"` dans [`skillOverrides`](#override-skill-visibility-from-settings) quand vous ne voulez pas éditer le fichier.


360 377 

361| Champ | Requis | Description |378| Champ | Requis | Description |

362| :- | :- | :- |379| :- | :- | :- |

363| `name` | Non | Nom d'affichage montré dans les listes de compétences. Par défaut, le nom du répertoire. Voir [Comment une compétence obtient son nom de commande](#how-a-skill-gets-its-command-name) pour savoir comment le champ interagit avec le nom que vous tapez pour invoquer la compétence. |380| `name` | Non | Nom de commande affiché dans le menu `/`. Par défaut, le nom du répertoire. Voir [Comment une compétence obtient son nom de commande](#how-a-skill-gets-its-command-name) pour savoir comment le champ interagit avec le nom que vous tapez pour invoquer la compétence. |

364| `description` | Recommandé | Ce que fait la compétence et quand l'utiliser. Claude utilise ceci pour décider quand appliquer la compétence. S'il est omis, utilise la première ligne non vide du contenu markdown. Mettez le cas d'usage clé en premier : le texte combiné `description` et `when_to_use` est tronqué à 1 536 caractères dans la liste des compétences pour réduire l'utilisation du contexte. |381| `description` | Recommandé | Ce que fait la compétence et quand l'utiliser. Claude utilise ceci pour décider quand appliquer la compétence. S'il est omis, utilise la première ligne non vide du contenu markdown. Mettez le cas d'usage clé en premier : le texte combiné `description` et `when_to_use` est tronqué à 1 536 caractères dans la liste des compétences pour réduire l'utilisation du contexte. |

365| `when_to_use` | Non | Contexte supplémentaire pour savoir quand Claude devrait invoquer la compétence, comme les phrases déclencheurs ou les demandes d'exemple. Ajouté à `description` dans la liste des compétences et compte vers le plafond de 1 536 caractères. |382| `when_to_use` | Non | Contexte supplémentaire pour savoir quand Claude devrait invoquer la compétence, comme les phrases déclencheurs ou les demandes d'exemple. Ajouté à `description` dans la liste des compétences et compte vers le plafond de 1 536 caractères. |

366| `argument-hint` | Non | Indice affiché lors de l'autocomplétion pour indiquer les arguments attendus. Exemple : `[issue-number]` ou `[filename] [format]`. |383| `argument-hint` | Non | Indice affiché lors de l'autocomplétion pour indiquer les arguments attendus. Exemple : `[issue-number]` ou `[filename] [format]`. |


406 Comment une compétence obtient son nom de commande423 Comment une compétence obtient son nom de commande

407</h4>424</h4>

408 425 

409La commande que vous tapez pour invoquer une compétence provient de l'endroit où le fichier de compétence se trouve et, pour les compétences de plugin, également du champ frontmatter `name`. Dans une compétence personnelle ou de projet, `name` définit uniquement l'étiquette d'affichage affichée dans les listes de compétences, et la commande provient toujours du nom du répertoire. Dans une compétence de plugin, `name` définit le dernier segment de la commande et le préfixe du plugin reste en place.426La commande que vous tapez pour invoquer une compétence provient de l'endroit où le fichier de compétence se trouve et, pour les répertoires de compétences et les compétences de plugin, du champ frontmatter `name`. Dans une compétence personnelle ou de projet, `name` définit la commande que le menu `/` affiche et que vous tapez, à moins qu'une autre commande n'utilise déjà ce nom. Le nom du répertoire invoque également la compétence. Dans une compétence de plugin, `name` définit le dernier segment de la commande et le préfixe du plugin reste en place.

410 427 

411Le tableau ci-dessous montre d'où provient le nom de la commande pour chaque disposition :428Le tableau ci-dessous montre d'où provient le nom de la commande pour chaque disposition :

412 429 

413| Emplacement de la compétence | Source du nom de la commande | Exemple |430| Emplacement de la compétence | Source du nom de la commande | Exemple |

414| :- | :- | :- |431| :- | :- | :- |

415| Répertoire de compétence sous `~/.claude/skills/` ou `.claude/skills/` | Nom du répertoire | `.claude/skills/deploy-staging/SKILL.md` → `/deploy-staging` |432| Répertoire de compétence sous `~/.claude/skills/` ou `.claude/skills/` | Frontmatter `name` ou le nom du répertoire | `.claude/skills/deploy-staging/SKILL.md` → `/deploy-staging`, ou `/deploy` avec `name: deploy` |

416| Répertoire `.claude/skills/` [imbriqué](#where-skills-live), lorsque le nom entre en conflit avec une autre compétence | Chemin du sous-répertoire relatif au répertoire de travail, puis le nom du répertoire de compétence | `apps/web/.claude/skills/deploy/SKILL.md` → `/apps/web:deploy` |433| Répertoire `.claude/skills/` [imbriqué](#where-skills-live), lorsque le nom du répertoire entre en conflit avec une autre compétence | Chemin du sous-répertoire relatif au répertoire de travail, puis le nom du répertoire de compétence | `apps/web/.claude/skills/deploy/SKILL.md` → `/apps/web:deploy` |

417| Fichier sous `.claude/commands/` | Nom du fichier sans extension | `.claude/commands/deploy.md` → `/deploy` |434| Fichier sous `.claude/commands/` | Nom du fichier sans extension | `.claude/commands/deploy.md` → `/deploy` |

418| Fichier dans un sous-répertoire de `.claude/commands/` | Chemin du sous-répertoire relatif à `commands/` avec chaque `/` remplacé par `:`, puis le nom du fichier sans extension | `.claude/commands/frontend/component.md` → `/frontend:component` |435| Fichier dans un sous-répertoire de `.claude/commands/` | Chemin du sous-répertoire relatif à `commands/` avec chaque `/` remplacé par `:`, puis le nom du fichier sans extension | `.claude/commands/frontend/component.md` → `/frontend:component` |

419| Sous-répertoire `skills/` du plugin | Frontmatter `name` ou le nom du répertoire, préfixé par le plugin | `my-plugin/skills/review/SKILL.md` → `/my-plugin:review`, ou `/my-plugin:fancy` avec `name: fancy` |436| Sous-répertoire `skills/` du plugin | Frontmatter `name` ou le nom du répertoire, préfixé par le plugin | `my-plugin/skills/review/SKILL.md` → `/my-plugin:review`, ou `/my-plugin:fancy` avec `name: fancy` |


439| `$N` | Raccourci pour `$ARGUMENTS[N]`, comme `$0` pour le premier argument ou `$1` pour le second. |456| `$N` | Raccourci pour `$ARGUMENTS[N]`, comme `$0` pour le premier argument ou `$1` pour le second. |

440| `$name` | Argument nommé déclaré dans la liste frontmatter [`arguments`](#frontmatter-reference). Les noms correspondent aux positions dans l'ordre, donc avec `arguments: [issue, branch]` l'espace réservé `$issue` se développe au premier argument et `$branch` au second. |457| `$name` | Argument nommé déclaré dans la liste frontmatter [`arguments`](#frontmatter-reference). Les noms correspondent aux positions dans l'ordre, donc avec `arguments: [issue, branch]` l'espace réservé `$issue` se développe au premier argument et `$branch` au second. |

441| `${CLAUDE_SESSION_ID}` | L'ID de session actuel. Utile pour la journalisation, la création de fichiers spécifiques à la session ou la corrélation de la sortie de compétence avec les sessions. |458| `${CLAUDE_SESSION_ID}` | L'ID de session actuel. Utile pour la journalisation, la création de fichiers spécifiques à la session ou la corrélation de la sortie de compétence avec les sessions. |

442| `${CLAUDE_EFFORT}` | Le niveau d'effort actuel : `low`, `medium`, `high`, `xhigh` ou `max`. Ultracode n'est pas un niveau distinct et est signalé comme `xhigh`. Utilisez ceci pour adapter les instructions de compétence au paramètre d'effort actif. |459| `${CLAUDE_EFFORT}` | Le niveau d'effort actuel : `low`, `medium`, `high`, `xhigh` ou `max`. Utilisez ceci pour adapter les instructions de compétence au paramètre d'effort actif. |

443| `${CLAUDE_SKILL_DIR}` | Le répertoire contenant le fichier `SKILL.md` de la compétence. Pour les compétences de plugin, c'est le sous-répertoire de la compétence dans le plugin, pas la racine du plugin. Utilisez ceci dans les commandes d'injection bash pour référencer les scripts ou fichiers fournis avec la compétence, quel que soit le répertoire de travail actuel. |460| `${CLAUDE_SKILL_DIR}` | Le répertoire contenant le fichier `SKILL.md` de la compétence. Pour les compétences de plugin, c'est le sous-répertoire de la compétence dans le plugin, pas la racine du plugin. Utilisez ceci dans les commandes d'injection bash pour référencer les scripts ou fichiers fournis avec la compétence, quel que soit le répertoire de travail actuel. |

444| `${CLAUDE_PROJECT_DIR}` | Le répertoire racine du projet. C'est le même chemin que [hooks](/docs/fr/hooks#reference-scripts-by-path) et les serveurs MCP reçoivent comme `CLAUDE_PROJECT_DIR`. Utilisez ceci pour référencer les scripts ou fichiers locaux du projet, comme `${CLAUDE_PROJECT_DIR}/.claude/hooks/helper.sh`, indépendamment de l'endroit où la compétence est installée. |461| `${CLAUDE_PROJECT_DIR}` | Le répertoire racine du projet. C'est le même chemin que [hooks](/docs/fr/hooks#reference-scripts-by-path) et les serveurs MCP reçoivent comme `CLAUDE_PROJECT_DIR`. Utilisez ceci pour référencer les scripts ou fichiers locaux du projet, comme `${CLAUDE_PROJECT_DIR}/.claude/hooks/helper.sh`, indépendamment de l'endroit où la compétence est installée. |

445| `${CLAUDE_PLUGIN_ROOT}` | Le répertoire d'installation du plugin. Substitué uniquement dans les compétences de plugin. Utilisez ceci pour référencer les scripts ou fichiers fournis n'importe où dans le plugin, y compris les ressources partagées entre les compétences du plugin. Voir [les variables d'environnement du plugin](/docs/fr/plugins/manifest-reference#environment-variables). |462| `${CLAUDE_PLUGIN_ROOT}` | Le répertoire d'installation du plugin. Substitué uniquement dans les compétences de plugin. Utilisez ceci pour référencer les scripts ou fichiers fournis n'importe où dans le plugin, y compris les ressources partagées entre les compétences du plugin. Voir [les variables d'environnement du plugin](/docs/fr/plugins/manifest-reference#environment-variables). |


826Skill(deploy *)843Skill(deploy *)

827```844```

828 845 

829Syntaxe de permission : `Skill(name)` pour correspondance exacte, `Skill(name *)` pour correspondance de préfixe avec n'importe quels arguments.846Syntaxe de permission : `Skill(name)` pour correspondance exacte, `Skill(name *)` pour correspondance de préfixe avec n'importe quels arguments. Dans une règle `allow`, un préfixe en dehors de l'[espace de noms réservé pour les compétences synchronisées](#names-reserved-for-synced-skills) ne correspond pas aux noms à l'intérieur : `Skill(anthropic *)` ne couvre pas `anthropic-skills:pdf`.

830 847 

831Si votre règle `deny` nomme un alias ou un nom non qualifié plutôt que le nom propre de la compétence, Claude Code bloque toujours la compétence : avec `Skill(review)` il bloque la compétence groupée `/code-review` via son alias `/review`, et avec `Skill(deploy)` il bloque une [compétence imbriquée](#where-skills-live) listée comme `apps/web:deploy` via son nom non qualifié. Avant v2.1.260, Claude Code ne bloquait pas une compétence imbriquée listée sous son nom qualifié lorsque la règle deny nommait uniquement le nom non qualifié.848Si votre règle `deny` nomme un alias ou un nom non qualifié plutôt que le nom propre de la compétence, Claude Code bloque toujours la compétence : avec `Skill(review)` il bloque la compétence groupée `/code-review` via son alias `/review`, et avec `Skill(deploy)` il bloque une [compétence imbriquée](#where-skills-live) listée comme `apps/web:deploy` via son nom non qualifié. Avant v2.1.260, Claude Code ne bloquait pas une compétence imbriquée listée sous son nom qualifié lorsque la règle deny nommait uniquement le nom non qualifié.

832 849 

833Claude Code correspond à une règle `allow` uniquement contre le nom propre de la compétence et le nom dans l'invocation de Claude.850Claude Code correspond à une règle `allow` uniquement contre le nom propre de la compétence et le nom dans l'invocation de Claude.

834 851 

852Pour approuver une [compétence synchronisée](#how-synced-skills-behave) sans invite, nommez-la à l'intérieur de son [espace de noms réservé](#names-reserved-for-synced-skills) : `Skill(anthropic-skills:pdf)` approuve la compétence synchronisée `pdf`, et `Skill(anthropic-skills *)` approuve chaque compétence synchronisée.

853 

835**Masquer les compétences individuelles** en ajoutant `disable-model-invocation: true` à leur frontmatter. Cela supprime la compétence du contexte de Claude entièrement.854**Masquer les compétences individuelles** en ajoutant `disable-model-invocation: true` à leur frontmatter. Cela supprime la compétence du contexte de Claude entièrement.

836 855 

837<Note>856<Note>

statusline.md +3 −3

Details

175 175 

176Claude Code capture la sortie de votre script au lieu de la connecter directement au terminal, donc `tput cols` et la détection de largeur au niveau du langage ne peuvent pas lire la taille du terminal depuis l'intérieur du script. Lisez plutôt les variables d'environnement `COLUMNS` et `LINES`. Claude Code définit ces variables aux dimensions actuelles du terminal avant d'exécuter votre script.176Claude Code capture la sortie de votre script au lieu de la connecter directement au terminal, donc `tput cols` et la détection de largeur au niveau du langage ne peuvent pas lire la taille du terminal depuis l'intérieur du script. Lisez plutôt les variables d'environnement `COLUMNS` et `LINES`. Claude Code définit ces variables aux dimensions actuelles du terminal avant d'exécuter votre script.

177 177 

178<Note>La barre de statut s'exécute localement et ne consomme pas de jetons API. Elle se cache temporairement pendant certaines interactions UI, y compris les suggestions d'autocomplétion, le menu d'aide et les invites de permission.</Note>178<Note>La barre de statut s'exécute localement et ne consomme pas de jetons API. Elle se cache temporairement pendant certaines interactions UI, y compris le menu d'aide et les invites de permission.</Note>

179 179 

180<h2 id="available-data">180<h2 id="available-data">

181 Données disponibles181 Données disponibles


202| `context_window.current_usage` | Comptages de jetons du dernier appel API, décrits dans [champs de fenêtre de contexte](#context-window-fields) |202| `context_window.current_usage` | Comptages de jetons du dernier appel API, décrits dans [champs de fenêtre de contexte](#context-window-fields) |

203| `exceeds_200k_tokens` | Si le comptage total de jetons (jetons d'entrée, de cache et de sortie combinés) de la réponse API la plus récente dépasse 200 k. C'est un seuil fixe indépendamment de la taille réelle de la fenêtre de contexte. |203| `exceeds_200k_tokens` | Si le comptage total de jetons (jetons d'entrée, de cache et de sortie combinés) de la réponse API la plus récente dépasse 200 k. C'est un seuil fixe indépendamment de la taille réelle de la fenêtre de contexte. |

204| `fast_mode` | Si le [mode rapide](/docs/fr/fast-mode) est activé pour la session |204| `fast_mode` | Si le [mode rapide](/docs/fr/fast-mode) est activé pour la session |

205| `effort.level` | Effort de raisonnement actuel (`low`, `medium`, `high`, `xhigh`, ou `max`). Reflète la valeur de session en direct, y compris les changements `/effort` en cours de session. Ultracode n'est pas un niveau distinct et rapporte `xhigh`. Absent quand le modèle actuel ne supporte pas le paramètre d'effort |205| `effort.level` | Effort de raisonnement actuel (`low`, `medium`, `high`, `xhigh`, ou `max`). Reflète la valeur de session en direct, y compris les changements `/effort` en cours de session. Absent quand le modèle actuel ne supporte pas le paramètre d'effort |

206| `thinking.enabled` | Si la réflexion étendue est activée pour la session |206| `thinking.enabled` | Si la réflexion étendue est activée pour la session |

207| `rate_limits.five_hour.used_percentage`, `rate_limits.seven_day.used_percentage` | Pourcentage de la limite de débit de 5 heures ou 7 jours consommée, de 0 à 100 |207| `rate_limits.five_hour.used_percentage`, `rate_limits.seven_day.used_percentage` | Pourcentage de la limite de débit de 5 heures ou 7 jours consommée, de 0 à 100 |

208| `rate_limits.five_hour.resets_at`, `rate_limits.seven_day.resets_at` | Secondes d'époque Unix quand la fenêtre de limite de débit de 5 heures ou 7 jours se réinitialise |208| `rate_limits.five_hour.resets_at`, `rate_limits.seven_day.resets_at` | Secondes d'époque Unix quand la fenêtre de limite de débit de 5 heures ou 7 jours se réinitialise |


1166* Sur Windows avec Git Bash installé, les barres obliques inverses dans le chemin `command` sont probablement consommées comme caractères d'échappement avant l'exécution du script. Utilisez des barres obliques avant dans le chemin. Voir [Configuration Windows](#windows-configuration).1166* Sur Windows avec Git Bash installé, les barres obliques inverses dans le chemin `command` sont probablement consommées comme caractères d'échappement avant l'exécution du script. Utilisez des barres obliques avant dans le chemin. Voir [Configuration Windows](#windows-configuration).

1167* Si `disableAllHooks` est défini sur `true` en dehors des paramètres gérés après l'application de la [précédence des paramètres](/docs/fr/hooks#disable-or-remove-hooks), Claude Code exécute uniquement un `statusLine` à partir des paramètres gérés, et sans `statusLine` géré, la barre de statut est désactivée. Supprimez le paramètre ou définissez-le sur `false` dans le fichier qui le définit pour le réactiver. Voir [`disableAllHooks`](/docs/fr/settings-reference#disableallhooks).1167* Si `disableAllHooks` est défini sur `true` en dehors des paramètres gérés après l'application de la [précédence des paramètres](/docs/fr/hooks#disable-or-remove-hooks), Claude Code exécute uniquement un `statusLine` à partir des paramètres gérés, et sans `statusLine` géré, la barre de statut est désactivée. Supprimez le paramètre ou définissez-le sur `false` dans le fichier qui le définit pour le réactiver. Voir [`disableAllHooks`](/docs/fr/settings-reference#disableallhooks).

1168* Si votre organisation définit `allowManagedHooksOnly` dans les paramètres gérés, votre barre de statut personnalisée disparaît sans avertissement : vous ne pouvez obtenir une barre de statut que d'une valeur `statusLine` dans ces paramètres gérés. Voir [ce qui s'exécute sous `allowManagedHooksOnly`](/docs/fr/settings-reference#what-runs-under-allowmanagedhooksonly) pour le comportement complet, et demandez à votre administrateur si ce paramètre s'applique à vous.1168* Si votre organisation définit `allowManagedHooksOnly` dans les paramètres gérés, votre barre de statut personnalisée disparaît sans avertissement : vous ne pouvez obtenir une barre de statut que d'une valeur `statusLine` dans ces paramètres gérés. Voir [ce qui s'exécute sous `allowManagedHooksOnly`](/docs/fr/settings-reference#what-runs-under-allowmanagedhooksonly) pour le comportement complet, et demandez à votre administrateur si ce paramètre s'applique à vous.

1169* Exécutez `claude --debug` pour enregistrer le code de sortie et stderr de la première invocation de barre de statut dans une session1169* Exécutez `claude --debug` pour enregistrer le stderr de votre script à chaque invocation de barre de statut, et son code de sortie à la première invocation dans une session

1170* Demandez à Claude de lire votre fichier de paramètres et d'exécuter la commande `statusLine` directement pour afficher les erreurs1170* Demandez à Claude de lire votre fichier de paramètres et d'exécuter la commande `statusLine` directement pour afficher les erreurs

1171 1171 

1172**La barre de statut affiche `--` ou des valeurs vides**1172**La barre de statut affiche `--` ou des valeurs vides**

sub-agents.md +93 −89

Details

8 8 

9Les sous-agents sont des assistants IA spécialisés qui gèrent des types de tâches spécifiques. Utilisez-en un lorsqu'une tâche secondaire inonderait votre conversation principale avec des résultats de recherche, des journaux ou des contenus de fichiers que vous ne référencerez plus : le sous-agent effectue ce travail dans son propre contexte et retourne uniquement le résumé. Définissez un sous-agent personnalisé lorsque vous générez constamment le même type de travailleur avec les mêmes instructions.9Les sous-agents sont des assistants IA spécialisés qui gèrent des types de tâches spécifiques. Utilisez-en un lorsqu'une tâche secondaire inonderait votre conversation principale avec des résultats de recherche, des journaux ou des contenus de fichiers que vous ne référencerez plus : le sous-agent effectue ce travail dans son propre contexte et retourne uniquement le résumé. Définissez un sous-agent personnalisé lorsque vous générez constamment le même type de travailleur avec les mêmes instructions.

10 10 

11Chaque sous-agent s'exécute dans sa propre fenêtre de contexte avec une invite système personnalisée, un accès à des outils spécifiques et des permissions indépendantes. Lorsque Claude rencontre une tâche qui correspond à la description d'un sous-agent, il délègue à ce sous-agent, qui fonctionne indépendamment et retourne les résultats. Pour voir les économies de contexte en pratique, la [visualisation de la fenêtre de contexte](/docs/fr/context-window) vous guide à travers une session où un sous-agent gère la recherche dans sa propre fenêtre séparée.11Chaque sous-agent s'exécute dans sa propre fenêtre de contexte avec une invite système personnalisée, un accès à des outils spécifiques et des permissions indépendantes. Il envoie également ses propres requêtes, qui comptent dans les mêmes [limites d'utilisation](/docs/fr/costs#plan-usage-breakdown) que votre conversation principale. Lorsque Claude rencontre une tâche qui correspond à la description d'un sous-agent, il délègue à ce sous-agent, qui fonctionne indépendamment et retourne les résultats. Pour voir les économies de contexte en pratique, la [visualisation de la fenêtre de contexte](/docs/fr/context-window) vous guide à travers une session où un sous-agent gère la recherche dans sa propre fenêtre séparée.

12 12 

13<Note>13<Note>

14 Les sous-agents fonctionnent au sein d'une seule session. Pour exécuter de nombreuses sessions indépendantes en parallèle et les surveiller depuis un seul endroit, consultez [les agents en arrière-plan](/docs/fr/agent-view). Pour les sessions distinctes qui se transmettent des messages, consultez [la messagerie entre sessions](/docs/fr/cross-session-messaging). Pour une équipe coordonnée de sessions que Claude crée et supervise, consultez [les équipes d'agents](/docs/fr/agent-teams).14 Les sous-agents fonctionnent au sein d'une seule session. Pour exécuter de nombreuses sessions indépendantes en parallèle et les surveiller depuis un seul endroit, consultez [les agents en arrière-plan](/docs/fr/agent-view). Pour les sessions distinctes qui se transmettent des messages, consultez [la messagerie entre sessions](/docs/fr/cross-session-messaging). Pour une équipe coordonnée de sessions que Claude crée et supervise, consultez [les équipes d'agents](/docs/fr/agent-teams).


230 </Tab>230 </Tab>

231</Tabs>231</Tabs>

232 232 

233Le drapeau `--agents` accepte JSON avec un champ `prompt` plus ces champs de [frontmatter](#supported-frontmatter-fields) : `description`, `tools`, `disallowedTools`, `model`, `permissionMode`, `mcpServers`, `hooks`, `maxTurns`, `skills`, `initialPrompt`, `memory`, `effort`, `background`, `omitClaudeMd` et `isolation`. Utilisez `prompt` pour l'invite système, équivalent au corps markdown dans les sous-agents basés sur fichier. `color` et `experimental` ne sont pas acceptés ici et sont ignorés plutôt que rejetés.233En [mode non interactif](/docs/fr/headless), `--agents` accepte également le chemin d'un fichier JSON contenant le même objet, pour les définitions trop grandes pour être passées sur la ligne de commande. Par exemple, `claude -p --agents ./agents.json "Review my changes"` lit les définitions de ce fichier. Dans une session interactive, Claude Code refuse un chemin de fichier. La forme de fichier nécessite Claude Code v2.1.281 ou ultérieur.

234 234 

235Chaque clé de niveau supérieur dans le JSON est le nom de l'agent. Ne commencez pas un nom par `-`.235Chaque clé de niveau supérieur dans le JSON est le nom d'un agent, et sa valeur est la définition de cet agent. Ne commencez pas un nom par `-`. Une définition prend ces champs :

236 

237* **`prompt`** : l'invite système de l'agent, équivalente au corps markdown dans les sous-agents basés sur fichier. `prompt` peut être vide. Si vous sélectionnez un agent avec un `prompt` vide et aucun champ `memory` comme agent de la session avec `--agent`, l'invite système de la session reste inchangée. Un `prompt` vide nécessite Claude Code v2.1.281 ou ultérieur.

238* **[Champs de frontmatter](#supported-frontmatter-fields)** : `description`, `tools`, `disallowedTools`, `model`, `permissionMode`, `mcpServers`, `hooks`, `maxTurns`, `skills`, `initialPrompt`, `memory`, `effort`, `background`, `omitClaudeMd` et `isolation`.

239* **Champs ignorés** : `color` et `experimental` ne sont pas acceptés ici et sont ignorés plutôt que rejetés.

236 240 

237Pour savoir ce que Claude Code fait avec une valeur qu'il ne peut pas charger, et les drapeaux et variables d'environnement qui ignorent cette vérification, consultez [`Invalid --agents configuration`](/docs/fr/errors#invalid-agents-configuration).241Pour savoir ce que Claude Code fait avec une valeur qu'il ne peut pas charger, et les drapeaux et variables d'environnement qui ignorent cette vérification, consultez [`Invalid --agents configuration`](/docs/fr/errors#invalid-agents-configuration).

238 242 


587 Modes de permission591 Modes de permission

588</h4>592</h4>

589 593 

590Définissez `permissionMode` pour choisir le mode de permission dans lequel un sous-agent s'exécute. Utilisez les valeurs de configuration des modes, donc le mode Manuel est `default`. Si vous le laissez non défini, le sous-agent hérite du mode de la conversation principale, qui commence en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) sur les plans Pro, Max et Team sauf si vos paramètres ou votre organisation le changent.594Définissez `permissionMode` pour choisir le mode de permission dans lequel un sous-agent s'exécute. Utilisez les valeurs de configuration des modes, donc le mode Manuel est `default`. Si vous le laissez non défini, le sous-agent hérite du [mode de permission](/docs/fr/permission-modes) de la conversation principale.

591 595 

592Le mode de permission de la conversation principale décide si Claude Code utilise la valeur que vous définissez :596Le mode de permission de la conversation principale décide si Claude Code utilise la valeur que vous définissez :

593 597 


849Consultez [Hooks](/docs/fr/hooks) pour le format de configuration complet des hooks.853Consultez [Hooks](/docs/fr/hooks) pour le format de configuration complet des hooks.

850 854 

851<h2 id="work-with-subagents">855<h2 id="work-with-subagents">

852 Travailler avec les sous-agents856 Travailler avec des sous-agents

853</h2>857</h2>

854 858 

855<h3 id="understand-automatic-delegation">859<h3 id="understand-automatic-delegation">

856 Comprendre la délégation automatique860 Comprendre la délégation automatique

857</h3>861</h3>

858 862 

859Claude délègue automatiquement les tâches en fonction de la description de la tâche dans votre demande, du champ `description` dans les configurations de sous-agent et du contexte actuel. Pour encourager la délégation proactive, incluez des phrases comme « use proactively » dans le champ description de votre sous-agent.863Claude délègue automatiquement les tâches en fonction de la description de la tâche dans votre demande, du champ `description` dans les configurations des sous-agents, et du contexte actuel. Pour encourager une délégation proactive, incluez des phrases comme « use proactively » dans le champ description de votre sous-agent.

860 864 

861Gardez les descriptions brèves : Claude Code affiche un avertissement au démarrage lorsque les descriptions combinées de vos sous-agents dépassent [la limite de 15 000 tokens](/docs/fr/errors#agent-descriptions-are-over-the-15000-token-limit), et charge toujours chaque sous-agent.865Gardez les descriptions brèves : Claude Code affiche un avertissement au démarrage lorsque les descriptions combinées de vos sous-agents dépassent [la limite de 15 000 jetons](/docs/fr/errors#agent-descriptions-are-over-the-15000-token-limit), et charge quand même tous les sous-agents.

862 866 

863Si le sous-agent est fourni dans un [plugin](/docs/fr/plugins/overview), vous pouvez mesurer la fiabilité avec laquelle Claude le délègue sur des invites réalistes au lieu de vérifier une par une : [`claude plugin eval`](/docs/fr/plugin-evals) exécute chaque invite avec et sans le plugin et évalue les résultats.867Si le sous-agent est fourni dans un [plugin](/docs/fr/plugins/overview), vous pouvez mesurer la fiabilité avec laquelle Claude le délègue sur des invites réalistes au lieu de vérifier une par une : [`claude plugin eval`](/docs/fr/plugin-evals) exécute chaque invite avec et sans le plugin et évalue les résultats.

864 868 


866 Invoquer les sous-agents explicitement870 Invoquer les sous-agents explicitement

867</h3>871</h3>

868 872 

869Lorsque la délégation automatique ne suffit pas, vous pouvez demander un sous-agent vous-même. Trois modèles escaladent d'une suggestion ponctuelle à une valeur par défaut au niveau de la session :873Lorsque la délégation automatique ne suffit pas, vous pouvez demander un sous-agent vous-même. Trois modèles escaladent d'une suggestion ponctuelle à une valeur par défaut pour toute la session :

870 874 

871* **Langage naturel** : nommez le sous-agent dans votre invite ; Claude décide s'il faut déléguer875* **Langage naturel** : nommez le sous-agent dans votre invite ; Claude décide s'il faut déléguer

872* **@-mention** : garantit que le sous-agent s'exécute pour une tâche876* **@-mention** : garantit que le sous-agent s'exécute pour une tâche

873* **Au niveau de la session** : la session entière utilise l'invite système, les restrictions d'outils et le modèle de ce sous-agent via le drapeau `--agent` ou le paramètre `agent`877* **À l'échelle de la session** : toute la session utilise le système prompt, les restrictions d'outils et le modèle de ce sous-agent via l'indicateur `--agent` ou le paramètre `agent`

874 878 

875Pour le langage naturel, il n'y a pas de syntaxe spéciale. Nommez le sous-agent et Claude délègue généralement :879Pour le langage naturel, il n'y a pas de syntaxe spéciale. Nommez le sous-agent et Claude délègue généralement :

876 880 


885@"code-reviewer (agent)" look at the auth changes889@"code-reviewer (agent)" look at the auth changes

886```890```

887 891 

888Votre message complet va toujours à Claude, qui écrit l'invite de tâche du sous-agent en fonction de ce que vous avez demandé. La @-mention contrôle quel sous-agent Claude invoque, pas quelle invite il reçoit.892Votre message complet va toujours à Claude, qui rédige l'invite de tâche du sous-agent en fonction de ce que vous avez demandé. La @-mention contrôle quel sous-agent Claude invoque, pas quelle invite il reçoit.

889 893 

890Les sous-agents fournis par un [plugin](/docs/fr/plugins/overview) activé apparaissent dans la saisie semi-automatique sous leur nom délimité, comme `my-plugin:code-reviewer` ou `my-plugin:review:security` lorsque le plugin [organise les agents dans des sous-dossiers](#choose-the-subagent-scope). Les sous-agents d'arrière-plan nommés actuellement en cours d'exécution dans la session apparaissent également dans la saisie semi-automatique, affichant leur statut à côté du nom.894Les sous-agents fournis par un [plugin](/docs/fr/plugins/overview) activé apparaissent dans la saisie semi-automatique sous leur nom délimité, comme `my-plugin:code-reviewer` ou `my-plugin:review:security` lorsque le plugin [organise les agents dans des sous-dossiers](#choose-the-subagent-scope). Les sous-agents d'arrière-plan nommés actuellement en cours d'exécution dans la session apparaissent également dans la saisie semi-automatique, affichant leur statut à côté du nom.

891 895 

892Vous pouvez également taper la mention manuellement sans utiliser le sélecteur : `@agent-<name>` pour les sous-agents locaux, ou `@agent-` suivi du nom délimité pour les sous-agents de plugin, par exemple `@agent-my-plugin:code-reviewer`. Pendant que vous tapez cette forme, la saisie semi-automatique affiche les correspondances de fichiers plutôt que les agents. La mention d'agent se résout toujours lorsque vous soumettez.896Vous pouvez également taper la mention manuellement sans utiliser le sélecteur : `@agent-<name>` pour les sous-agents locaux, ou `@agent-` suivi du nom délimité pour les sous-agents de plugin, par exemple `@agent-my-plugin:code-reviewer`. Pendant que vous tapez ce formulaire, la saisie semi-automatique affiche les correspondances de fichiers plutôt que les agents. La mention d'agent se résout toujours lorsque vous soumettez.

893 897 

894**Exécutez la session entière en tant que sous-agent.** Passez [`--agent <name>`](/docs/fr/cli-reference) pour démarrer une session où le thread principal lui-même prend l'invite système, les restrictions d'outils et le modèle de ce sous-agent :898**Exécutez toute la session en tant que sous-agent.** Passez [`--agent <name>`](/docs/fr/cli-reference) pour démarrer une session où le thread principal lui-même prend le système prompt, les restrictions d'outils et le modèle de ce sous-agent :

895 899 

896```bash theme={null}900```bash theme={null}

897claude --agent code-reviewer901claude --agent code-reviewer

898```902```

899 903 

900L'invite système du sous-agent remplace complètement l'invite système par défaut de Claude Code, de la même manière que [`--system-prompt`](/docs/fr/cli-reference) le fait. Les fichiers `CLAUDE.md` et la mémoire du projet se chargent toujours via le flux de messages normal, même lorsque la définition de l'agent définit [`omitClaudeMd`](#supported-frontmatter-fields).904À moins que le [prompt de l'agent soit vide](#choose-the-subagent-scope), le système prompt du sous-agent remplace entièrement le système prompt par défaut de Claude Code, de la même manière que [`--system-prompt`](/docs/fr/cli-reference) le fait. Les fichiers `CLAUDE.md` et la mémoire du projet se chargent toujours via le flux de messages normal, même lorsque la définition de l'agent définit [`omitClaudeMd`](#supported-frontmatter-fields).

901 905 

902Le nom de l'agent apparaît comme `@<name>` dans l'en-tête de démarrage pour que vous puissiez confirmer qu'il est actif.906Le nom de l'agent apparaît comme `@<name>` dans l'en-tête de démarrage pour que vous puissiez confirmer qu'il est actif.

903 907 

904Cela fonctionne avec les sous-agents intégrés et personnalisés, et le choix persiste lorsque vous reprenez la session : Claude Code restaure les restrictions d'outils et le modèle de l'agent ainsi que la conversation. Si l'agent n'existe plus lorsque vous reprenez, la session continue avec les outils par défaut et affiche un [avertissement nommant l'agent](/docs/fr/errors#session-agent-no-longer-available). Pour l'invite système dans l'un ou l'autre cas, voir [Drapeaux d'invite système dans les conversations reprises](/docs/fr/cli-reference#system-prompt-flags-in-resumed-conversations).908Cela fonctionne avec les sous-agents intégrés et personnalisés, et le choix persiste lorsque vous reprenez la session : Claude Code restaure les restrictions d'outils et le modèle de l'agent ainsi que la conversation. Si l'agent n'existe plus lorsque vous reprenez, la session continue avec les outils par défaut et affiche un [avertissement nommant l'agent](/docs/fr/errors#session-agent-no-longer-available). Pour le système prompt dans l'un ou l'autre cas, voir [Indicateurs de système prompt dans les conversations reprises](/docs/fr/cli-reference#system-prompt-flags-in-resumed-conversations).

905 909 

906Pour un sous-agent fourni par un plugin, vous pouvez passer simplement le nom de l'agent et Claude Code le trouvera :910Pour un sous-agent fourni par un plugin, vous pouvez passer uniquement le nom de l'agent et Claude Code le trouve :

907 911 

908```bash theme={null}912```bash theme={null}

909claude --agent security-reviewer913claude --agent security-reviewer


925}929}

926```930```

927 931 

928Le drapeau CLI remplace le paramètre si les deux sont présents.932L'indicateur CLI remplace le paramètre si les deux sont présents.

929 933 

930<h3 id="run-subagents-in-foreground-or-background">934<h3 id="run-subagents-in-foreground-or-background">

931 Exécuter les sous-agents au premier plan ou en arrière-plan935 Exécuter les sous-agents au premier plan ou en arrière-plan


933 937 

934Les sous-agents peuvent s'exécuter au premier plan ou en arrière-plan :938Les sous-agents peuvent s'exécuter au premier plan ou en arrière-plan :

935 939 

936* **Les sous-agents au premier plan** bloquent la conversation principale jusqu'à la fin. Les invites de permission vous sont transmises au fur et à mesure qu'elles se produisent.940* **Sous-agents au premier plan** bloquent la conversation principale jusqu'à la fin. Les invites de permission sont transmises à vous au fur et à mesure.

937* **Les sous-agents en arrière-plan** s'exécutent simultanément pendant que vous continuez à travailler. Lorsqu'un sous-agent en arrière-plan atteint un appel d'outil qui nécessite une permission, Claude Code affiche l'invite dans votre session principale et nomme le sous-agent qui demande. Approuvez pour laisser le sous-agent continuer, ou appuyez sur Échap pour refuser cet appel d'outil sans arrêter le sous-agent.941* **Sous-agents en arrière-plan** s'exécutent simultanément pendant que vous continuez à travailler. Lorsqu'un sous-agent en arrière-plan atteint un appel d'outil qui nécessite une permission, Claude Code affiche l'invite dans votre session principale et nomme le sous-agent qui demande. Approuvez pour laisser le sous-agent continuer, ou appuyez sur Échap pour refuser cet appel d'outil sans arrêter le sous-agent.

938 942 

939Pour chaque sous-agent que Claude génère avec l'outil Agent, Claude Code choisit le premier plan ou l'arrière-plan parmi les premiers cas qui s'appliquent :943Pour chaque sous-agent que Claude génère avec l'outil Agent, Claude Code choisit le premier plan ou l'arrière-plan à partir du premier de ces cas qui s'applique :

940 944 

941* Si un coéquipier d'une [équipe d'agents](/docs/fr/agent-teams#limitations) en cours de traitement a généré le sous-agent, Claude Code l'exécute au premier plan. Claude Code refuse avec une erreur de générer un sous-agent d'un coéquipier dont la définition définit [`background: true`](#supported-frontmatter-fields). Lorsque le [mode fork](#turn-fork-mode-on-or-off) est désactivé et que vous n'avez pas [désactivé les tâches en arrière-plan](/docs/fr/env-vars), Claude Code refuse également avec une erreur lorsqu'un coéquipier définit `run_in_background: true`.945* Si un [coéquipier d'équipe d'agents](/docs/fr/agent-teams#limitations) en cours de traitement a généré le sous-agent, Claude Code l'exécute au premier plan. Claude Code refuse avec une erreur de générer un sous-agent d'un coéquipier dont la définition définit [`background: true`](#supported-frontmatter-fields). Lorsque [le mode fork](#turn-fork-mode-on-or-off) est désactivé et que vous n'avez pas [désactivé les tâches en arrière-plan](/docs/fr/env-vars), Claude Code refuse également avec une erreur lorsqu'un coéquipier définit `run_in_background: true`.

942* Si vous définissez [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](/docs/fr/env-vars) sur `1`, Claude Code exécute le sous-agent au premier plan, dans tous les types de session et que le mode fork soit activé ou non.946* Si vous définissez [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](/docs/fr/env-vars) sur `1`, Claude Code exécute le sous-agent au premier plan, dans tous les types de session et que le mode fork soit activé ou non.

943* Lorsque le [mode fork](#turn-fork-mode-on-or-off) est activé, comme c'est le cas par défaut dans une session interactive, Claude Code exécute le sous-agent en arrière-plan, les sous-agents fork et non-fork, et Claude ne peut pas demander le premier plan.947* Lorsque [le mode fork](#turn-fork-mode-on-or-off) est activé, comme c'est le cas par défaut dans une session interactive, Claude Code exécute le sous-agent en arrière-plan, les sous-agents fork et non-fork, et Claude ne peut pas demander le premier plan.

944* Lorsque le mode fork est désactivé, Claude exécute le sous-agent en arrière-plan par défaut et au premier plan lorsqu'il a besoin du résultat avant de continuer. Le mode fork est désactivé en [mode non-interactif](/docs/fr/headless) avec `-p` et dans le SDK Agent sauf si vous l'activez. Pour garder un sous-agent particulier en arrière-plan même lorsque Claude veut le résultat, définissez son champ frontmatter [`background`](#supported-frontmatter-fields) sur `true`.948* Lorsque le mode fork est désactivé, Claude exécute le sous-agent en arrière-plan par défaut et au premier plan lorsqu'il a besoin du résultat avant de continuer. Le mode fork est désactivé en [mode non-interactif](/docs/fr/headless) avec `-p` et dans le SDK Agent sauf si vous l'activez. Pour garder un sous-agent particulier en arrière-plan même lorsque Claude veut le résultat, définissez son champ frontmatter [`background`](#supported-frontmatter-fields) sur `true`.

945 949 

946Pour une skill avec `context: fork`, Claude Code suit les règles dans [Exécuter les skills dans un sous-agent](/docs/fr/skills#run-skills-in-a-subagent) à la place, que le mode fork soit activé ou non.950Pour une compétence avec `context: fork`, Claude Code suit les règles dans [Exécuter les compétences dans un sous-agent](/docs/fr/skills#run-skills-in-a-subagent) à la place, que le mode fork soit activé ou non.

947 951 

948Les sous-agents en arrière-plan s'exécutent avec un [ensemble d'outils intégrés plus petit](#available-tools) que les sous-agents au premier plan, sauf pour les forks de conversation et les [sous-agents au premier plan repris](#resume-subagents).952Les sous-agents en arrière-plan s'exécutent avec un [ensemble d'outils intégrés plus petit](#available-tools) que les sous-agents au premier plan, sauf pour les forks de conversation et les sous-agents au premier plan [repris](#resume-subagents).

949 953 

950Les sous-agents en arrière-plan affichent chaque invite de permission dans votre session principale. Lorsque vous répondez à l'une de ces invites avec un choix qui dure au-delà de cet appel d'outil, comme une autorisation qui dure pour le reste de la session, Claude Code applique votre réponse à la session entière, y compris votre conversation principale.954Les sous-agents en arrière-plan affichent chaque invite de permission dans votre session principale. Lorsque vous répondez à l'une de ces invites avec un choix qui dure au-delà de cet appel d'outil, comme une autorisation qui dure pour le reste de la session, Claude Code applique votre réponse à toute la session, y compris votre conversation principale.

951 955 

952Un sous-agent en arrière-plan peut laisser une [commande Bash ou PowerShell](/docs/fr/tools-reference#background-commands) en arrière-plan [s'exécuter au-delà de la fin de son tour](/docs/fr/interactive-mode#how-backgrounding-works). Lorsque cette commande se termine, Claude Code envoie au sous-agent une notification.956Un sous-agent en arrière-plan peut laisser une [commande Bash ou PowerShell](/docs/fr/tools-reference#background-commands) en arrière-plan [s'exécuter au-delà de la fin de son tour](/docs/fr/interactive-mode#how-backgrounding-works). Lorsque cette commande se termine, Claude Code envoie une notification au sous-agent.

953 957 

954Les résultats d'un sous-agent en arrière-plan atteignent Claude sous la forme d'une notification d'achèvement dans un tour ultérieur. Claude attend cette notification avant de signaler les résultats du sous-agent, et si vous demandez d'abord des informations sur la progression, il signale que le sous-agent s'exécute toujours. Avant la v2.1.211, Claude signalait parfois les résultats d'un sous-agent en arrière-plan qui n'avait pas terminé.958Les résultats d'un sous-agent en arrière-plan atteignent Claude sous la forme d'une notification d'achèvement dans un tour ultérieur. Claude attend cette notification avant de signaler les résultats du sous-agent, et si vous demandez d'abord des mises à jour, il signale que le sous-agent est toujours en cours d'exécution. Avant la v2.1.211, Claude signalait parfois les résultats d'un sous-agent en arrière-plan qui n'avait pas terminé.

955 959 

956Vous pouvez également diriger cela vous-même :960Vous pouvez également diriger cela vous-même :

957 961 

958* Lorsque le mode fork est désactivé, demandez à Claude d'exécuter une tâche en arrière-plan ou au premier plan962* Lorsque le mode fork est désactivé, demandez à Claude d'exécuter une tâche en arrière-plan ou au premier plan

959* Appuyez sur **Ctrl+B** pour mettre une tâche en arrière-plan963* Appuyez sur **Ctrl+B** pour mettre une tâche en cours d'exécution en arrière-plan

960 964 

961Claude Code efface la ligne d'un sous-agent en arrière-plan du panneau de sous-agent sous l'entrée d'invite de deux façons, selon la façon dont le sous-agent s'est terminé :965Claude Code efface la ligne d'un sous-agent en arrière-plan du panneau des sous-agents sous l'entrée d'invite de deux façons, selon la façon dont le sous-agent s'est terminé :

962 966 

963* Lorsqu'un sous-agent se termine avec succès, Claude Code supprime sa ligne immédiatement et, sauf en [mode lecteur d'écran](/docs/fr/accessibility), affiche `/tasks to see subagents` dans le pied de page pendant 30 secondes. Pendant ces 30 secondes, exécutez [`/tasks`](/docs/fr/commands) et appuyez sur `Entrée` sur le sous-agent pour ouvrir sa transcription. Avant la v2.1.232, Claude Code gardait la ligne pendant 30 secondes après la fin du sous-agent, comme un échoué, et n'affichait aucun indice de pied de page.967* Lorsqu'un sous-agent se termine avec succès, Claude Code supprime sa ligne immédiatement et, sauf en [mode lecteur d'écran](/docs/fr/accessibility), affiche `/tasks to see subagents` dans le pied de page pendant 30 secondes. Pendant ces 30 secondes, exécutez [`/tasks`](/docs/fr/commands) et appuyez sur `Entrée` sur le sous-agent pour ouvrir sa transcription. Avant la v2.1.232, Claude Code gardait la ligne pendant 30 secondes après la fin du sous-agent, comme un échec, et n'affichait aucun indice de pied de page.

964* Lorsqu'un sous-agent échoue ou que vous l'arrêtez, Claude Code garde sa ligne pendant 30 secondes. Pour effacer la ligne plus tôt, sélectionnez-la et appuyez sur `x`.968* Lorsqu'un sous-agent échoue ou que vous l'arrêtez, Claude Code garde sa ligne pendant 30 secondes. Pour effacer la ligne plus tôt, sélectionnez-la et appuyez sur `x`.

965 969 

966Un sous-agent en arrière-plan qui se termine reste listé dans [`/tasks`](/docs/fr/commands), marqué comme terminé et trié sous le travail en cours, pour la même fenêtre que l'indice de pied de page ci-dessus. Sa vue détaillée reste ouverte lorsque le sous-agent se termine. Les sous-agents qui échouent ou que vous arrêtez quittent la liste. Avant la v2.1.208, un sous-agent terminé quittait la liste dès qu'il se terminait et sa vue détaillée se fermait.970Un sous-agent en arrière-plan qui se termine reste listé dans [`/tasks`](/docs/fr/commands), marqué comme terminé et trié sous le travail en cours, pendant les mêmes 30 secondes que l'indice du pied de page. Sa vue détaillée reste ouverte lorsque le sous-agent se termine. Les sous-agents qui échouent ou que vous arrêtez quittent la liste. Avant la v2.1.208, un sous-agent terminé quittait la liste au moment où il se terminait et sa vue détaillée se fermait.

967 971 

968<h3 id="subagent-names">972<h3 id="subagent-names">

969 Noms des sous-agents973 Noms des sous-agents


979 983 

980Lorsque quelque chose [coupe la réponse d'un sous-agent en cours de flux](/docs/fr/errors#the-response-above-may-be-incomplete), et que la réponse partielle contient du texte mais pas d'appels d'outils, Claude Code invite le sous-agent à continuer plutôt que de terminer l'exécution. Cela se produit également dans les sessions interactives. L'exécution se termine sur l'erreur uniquement une fois que ces continuations sont épuisées.984Lorsque quelque chose [coupe la réponse d'un sous-agent en cours de flux](/docs/fr/errors#the-response-above-may-be-incomplete), et que la réponse partielle contient du texte mais pas d'appels d'outils, Claude Code invite le sous-agent à continuer plutôt que de terminer l'exécution. Cela se produit également dans les sessions interactives. L'exécution se termine sur l'erreur uniquement une fois que ces continuations sont épuisées.

981 985 

982À partir de la v2.1.199, un sous-agent dont l'exécution se termine sur une erreur API, comme une limite d'utilisation ou une erreur serveur répétée, signale cet échec à Claude au lieu de retourner le texte d'erreur comme s'il s'agissait des résultats du sous-agent. Ce que Claude reçoit dépend de l'endroit où le sous-agent s'est exécuté :986À partir de la v2.1.199, un sous-agent dont l'exécution se termine sur une erreur API, comme une limite d'utilisation ou une erreur serveur répétée, signale cet échec à Claude au lieu de retourner le texte d'erreur comme s'il s'agissait des conclusions du sous-agent. Ce que Claude reçoit dépend de l'endroit où le sous-agent s'est exécuté :

983 987 

984* **Premier plan** : si une limite de débit, une surcharge ou une erreur serveur coupe un sous-agent qui a déjà produit une sortie, l'outil Agent retourne cette sortie partielle avec une note indiquant que le sous-agent a été coupé et n'a pas terminé sa tâche. Un sous-agent qui n'a rien produit, ou dont la seule sortie était des appels d'outils, échoue avec [`Agent terminated early due to an API error`](/docs/fr/errors#agent-terminated-early-due-to-an-api-error), suivi du détail de l'erreur. Dans la v2.1.199, une limite de débit, une surcharge ou une erreur serveur qui a coupé la forme appels-d'outils-uniquement a retourné un résultat partiel vide contenant uniquement la note de coupure à la place.988* **Premier plan** : si une limite de débit, une surcharge ou une erreur serveur coupe un sous-agent qui a déjà produit une sortie texte, l'outil Agent retourne cette sortie partielle avec une note indiquant que le sous-agent a été coupé et n'a pas terminé sa tâche. Un sous-agent qui n'a rien produit, ou dont la seule sortie était des appels d'outils, échoue avec [`Agent terminated early due to an API error`](/docs/fr/errors#agent-terminated-early-due-to-an-api-error), suivi du détail de l'erreur. Dans la v2.1.199, une limite de débit, une surcharge ou une erreur serveur qui a coupé la forme contenant uniquement des appels d'outils a retourné un résultat partiel vide contenant uniquement la note de coupure à la place.

985* **Arrière-plan** : le sous-agent est marqué comme échoué, et le message que Claude reçoit lorsqu'il se termine nomme l'erreur API et inclut la dernière sortie du sous-agent, de sorte que le travail partiel n'est pas perdu.989* **Arrière-plan** : le sous-agent est marqué comme échoué, et le message que Claude reçoit lorsqu'il se termine nomme l'erreur API et inclut la dernière sortie du sous-agent, de sorte que le travail partiel n'est pas perdu.

986 990 

987Lorsque vous configurez une [chaîne de modèles de secours](/docs/fr/model-config#fallback-model-chains) et qu'un sous-agent rencontre une défaillance que la chaîne couvre, comme l'indisponibilité de son modèle, Claude Code bascule le sous-agent vers le premier modèle de la chaîne qui accepte la demande. Le sous-agent continue à travailler au lieu de se terminer sur l'erreur.991Lorsque vous configurez une [chaîne de modèles de secours](/docs/fr/model-config#fallback-model-chains) et qu'un sous-agent rencontre une défaillance que la chaîne couvre, comme l'indisponibilité de son modèle, Claude Code bascule le sous-agent vers le premier modèle de la chaîne qui accepte la demande. Le sous-agent continue à travailler au lieu de se terminer sur l'erreur.


989Une fois que l'erreur API sous-jacente est résolue, demandez à Claude de réessayer la tâche ou de [reprendre le sous-agent](#resume-subagents).993Une fois que l'erreur API sous-jacente est résolue, demandez à Claude de réessayer la tâche ou de [reprendre le sous-agent](#resume-subagents).

990 994 

991<h3 id="subagent-output-scanning">995<h3 id="subagent-output-scanning">

992 Analyse de la sortie du sous-agent996 Analyse de la sortie des sous-agents

993</h3>997</h3>

994 998 

995Claude Code analyse le rapport final de chaque sous-agent avant que Claude ne le lise. Un sous-agent peut avoir lu des fichiers, des pages web ou une sortie de commande que vous n'avez jamais examinés, et le texte de ces sources peut contenir des instructions destinées à la conversation principale. L'analyse ne supprime ni ne reformule rien ; elle apporte deux types de changements que vous pouvez remarquer dans un rapport :999Claude Code analyse le rapport final de chaque sous-agent avant que Claude ne le lise. Un sous-agent peut avoir lu des fichiers, des pages Web ou une sortie de commande que vous n'avez jamais examinés, et le texte de ces sources peut contenir des instructions destinées à la conversation principale. L'analyse ne supprime ni ne reformule rien ; elle apporte deux types de changements que vous pouvez remarquer dans un rapport :

996 1000 

997* **Insertion de barre oblique inverse** : l'analyse insère une barre oblique inverse dans le texte qui imite la sortie propre de Claude Code, comme une balise `<system-reminder>` ou une ligne commençant par `Human:` ou `Assistant:`, de sorte que l'imitation se lit comme du texte ordinaire au lieu d'être prise pour une partie de la conversation.1001* **Insertion de barre oblique inverse** : l'analyse insère une barre oblique inverse dans le texte qui imite la sortie propre de Claude Code, comme une balise `<system-reminder>` ou une ligne commençant par `Human:` ou `Assistant:`, de sorte que l'imitation se lit comme du texte ordinaire au lieu d'être prise pour une partie de la conversation.

998* **Ligne de marqueur** : l'analyse ajoute une ligne commençant par `[harness: subagent output matched instruction-shaped pattern(s):` lorsque le rapport imite une balise comme `<system-reminder>` ou mentionne des paramètres de permission comme `bypassPermissions` ou `--dangerously-skip-permissions`. Les mentions de paramètres de permission obtiennent la ligne de marqueur, mais le texte lui-même reste tel qu'écrit.1002* **Ligne de marqueur** : l'analyse ajoute une ligne commençant par `[harness: subagent output matched instruction-shaped pattern(s):` lorsque le rapport imite une balise comme `<system-reminder>` ou mentionne des paramètres de permission comme `bypassPermissions` ou `--dangerously-skip-permissions`. Les mentions de paramètres de permission reçoivent la ligne de marqueur, mais le texte lui-même reste tel qu'écrit.

999 1003 

1000L'analyse ne juge pas si le contenu est malveillant, et elle ne change pas ce qu'une instruction dans un rapport peut faire : un appel d'outil que le rapport amène Claude à faire passe toujours par les [vérifications de permission](/docs/fr/permissions) et le [sandboxing](/docs/fr/sandboxing) de la session. Ce n'est pas un substitut à [restreindre ce qu'un sous-agent peut atteindre](#control-subagent-capabilities).1004L'analyse ne juge pas si le contenu est malveillant, et elle ne change pas ce qu'une instruction dans un rapport peut faire : un appel d'outil que le rapport amène Claude à faire passe toujours par les [vérifications de permission](/docs/fr/permissions) et le [sandboxing](/docs/fr/sandboxing) de la session. Ce n'est pas un substitut à [restreindre ce qu'un sous-agent peut atteindre](#control-subagent-capabilities).

1001 1005 


1004Un [rapport de sous-agent en arrière-plan](#run-subagents-in-foreground-or-background) arrive à l'intérieur d'une notification d'achèvement, qui est marquée comme un événement automatisé plutôt qu'un message de votre part.1008Un [rapport de sous-agent en arrière-plan](#run-subagents-in-foreground-or-background) arrive à l'intérieur d'une notification d'achèvement, qui est marquée comme un événement automatisé plutôt qu'un message de votre part.

1005 1009 

1006<Note>1010<Note>

1007 L'analyse de la sortie du sous-agent nécessite Claude Code v2.1.210 ou ultérieur.1011 L'analyse de la sortie des sous-agents nécessite Claude Code v2.1.210 ou ultérieure.

1008</Note>1012</Note>

1009 1013 

1010<h3 id="common-patterns">1014<h3 id="common-patterns">


1015 Isoler les opérations à haut volume1019 Isoler les opérations à haut volume

1016</h4>1020</h4>

1017 1021 

1018L'une des utilisations les plus efficaces des sous-agents est l'isolation des opérations qui produisent de grandes quantités de résultats. L'exécution de tests, la récupération de documentation ou le traitement de fichiers journaux peuvent consommer un contexte important. En déléguant ces tâches à un sous-agent, la sortie détaillée reste dans le contexte du sous-agent tandis que seul le résumé pertinent revient à votre conversation principale.1022L'une des utilisations les plus efficaces des sous-agents est l'isolation des opérations qui produisent de grandes quantités de sortie. L'exécution de tests, la récupération de documentation ou le traitement de fichiers journaux peuvent consommer un contexte important. En déléguant ces tâches à un sous-agent, la sortie détaillée reste dans le contexte du sous-agent tandis que seul le résumé pertinent revient à votre conversation principale.

1019 1023 

1020```text wrap theme={null}1024```text wrap theme={null}

1021Use a subagent to run the test suite and report only the failing tests with their error messages1025Use a subagent to run the test suite and report only the failing tests with their error messages

1022```1026```

1023 1027 

1024<h4 id="run-parallel-research">1028<h4 id="run-parallel-research">

1025 Exécuter la recherche en parallèle1029 Exécuter des recherches en parallèle

1026</h4>1030</h4>

1027 1031 

1028Pour les investigations indépendantes, générez plusieurs sous-agents pour travailler simultanément :1032Pour les investigations indépendantes, générez plusieurs sous-agents pour travailler simultanément :


1031Research the authentication, database, and API modules in parallel using separate subagents1035Research the authentication, database, and API modules in parallel using separate subagents

1032```1036```

1033 1037 

1034Chaque sous-agent explore son domaine indépendamment, puis Claude synthétise les résultats. Cela fonctionne mieux lorsque les chemins de recherche ne dépendent pas les uns des autres.1038Chaque sous-agent explore son domaine indépendamment, puis Claude synthétise les conclusions. Cela fonctionne mieux lorsque les chemins de recherche ne dépendent pas les uns des autres.

1035 1039 

1036<Warning>1040<Warning>

1037 Lorsque les sous-agents se terminent, leurs résultats reviennent à votre conversation principale. L'exécution de nombreux sous-agents qui retournent chacun des résultats détaillés peut consommer un contexte important.1041 Lorsque les sous-agents se terminent, leurs résultats reviennent à votre conversation principale. L'exécution de nombreux sous-agents qui retournent chacun des résultats détaillés peut consommer un contexte important, et chaque sous-agent dépense ses propres jetons pendant qu'il s'exécute.

1038</Warning>1042</Warning>

1039 1043 

1040Pour les tâches qui nécessitent un parallélisme soutenu ou qui dépassent une fenêtre de contexte, exécutez-les dans [des sessions séparées](/docs/fr/agents) et laissez Claude [transmettre les résultats entre elles](/docs/fr/cross-session-messaging).1044Pour le travail qui doit continuer à s'exécuter en parallèle ou qui ne tiendra pas dans une fenêtre de contexte, exécutez-le dans [des sessions séparées](/docs/fr/agents) et laissez Claude [transmettre les conclusions entre elles](/docs/fr/cross-session-messaging).

1041 1045 

1042<h4 id="chain-subagents">1046<h4 id="chain-subagents">

1043 Chaîner les sous-agents1047 Chaîner les sous-agents

1044</h4>1048</h4>

1045 1049 

1046Pour les workflows multi-étapes, demandez à Claude d'utiliser les sous-agents en séquence. Chaque sous-agent termine sa tâche et retourne les résultats à Claude, qui transmet ensuite le contexte pertinent au sous-agent suivant.1050Pour les flux de travail multi-étapes, demandez à Claude d'utiliser les sous-agents en séquence. Chaque sous-agent termine sa tâche et retourne les résultats à Claude, qui transmet ensuite le contexte pertinent au sous-agent suivant.

1047 1051 

1048```text wrap theme={null}1052```text wrap theme={null}

1049Use the code-reviewer subagent to find performance issues, then use the optimizer subagent to fix them1053Use the code-reviewer subagent to find performance issues, then use the optimizer subagent to fix them


1053 Choisir entre les sous-agents et la conversation principale1057 Choisir entre les sous-agents et la conversation principale

1054</h3>1058</h3>

1055 1059 

1056Utilisez la **conversation principale** quand :1060Utilisez la **conversation principale** lorsque :

1057 1061 

1058* La tâche nécessite des allers-retours fréquents ou un raffinement itératif1062* La tâche nécessite des allers-retours fréquents ou un raffinement itératif

1059* Plusieurs phases partagent un contexte important, comme la planification, l'implémentation et les tests1063* Plusieurs phases partagent un contexte important, comme la planification, l'implémentation et les tests

1060* Vous apportez une modification rapide et ciblée1064* Vous apportez une modification rapide et ciblée

1061* La latence est importante. Un sous-agent qui n'est pas un [fork](#fork-the-current-conversation) commence à zéro et peut avoir besoin de temps pour rassembler le contexte1065* La latence est importante. Un sous-agent qui n'est pas un [fork](#fork-the-current-conversation) commence à zéro et peut avoir besoin de temps pour rassembler le contexte

1062 1066 

1063Utilisez les **sous-agents** quand :1067Utilisez les **sous-agents** lorsque :

1064 1068 

1065* La tâche produit une sortie détaillée dont vous n'avez pas besoin dans votre contexte principal1069* La tâche produit une sortie détaillée dont vous n'avez pas besoin dans votre contexte principal

1066* Vous souhaitez appliquer des restrictions d'outils ou des permissions spécifiques1070* Vous voulez appliquer des restrictions d'outils ou des permissions spécifiques

1067* Le travail est autonome et peut retourner un résumé1071* Le travail est autonome et peut retourner un résumé

1068 1072 

1069Envisagez plutôt les [Skills](/docs/fr/skills) lorsque vous souhaitez des invites ou des workflows réutilisables qui s'exécutent dans le contexte de la conversation principale plutôt que dans un contexte de sous-agent isolé.1073Envisagez plutôt les [Compétences](/docs/fr/skills) lorsque vous voulez des invites ou des flux de travail réutilisables qui s'exécutent dans le contexte de la conversation principale plutôt que dans un contexte de sous-agent isolé.

1070 1074 

1071Pour une question rapide sur quelque chose déjà dans votre conversation, utilisez [`/btw`](/docs/fr/interactive-mode#side-questions-with-%2Fbtw) au lieu d'un sous-agent. Il voit votre contexte complet mais n'a pas d'accès aux outils, et la réponse n'est pas ajoutée à l'historique.1075Pour une question sur quelque chose déjà dans votre conversation, utilisez [`/btw`](/docs/fr/interactive-mode#side-questions-with-%2Fbtw) au lieu d'un sous-agent. Il voit votre contexte complet mais n'a pas d'accès aux outils, et la réponse n'est pas ajoutée à l'historique.

1072 1076 

1073<h3 id="let-subagents-spawn-their-own-subagents">1077<h3 id="let-subagents-spawn-their-own-subagents">

1074 Laisser les sous-agents générer leurs propres sous-agents1078 Laisser les sous-agents générer leurs propres sous-agents

1075</h3>1079</h3>

1076 1080 

1077Par défaut, un sous-agent peut générer ses propres sous-agents, jusqu'à trois niveaux en dessous de la conversation principale. À la limite de profondeur, Claude Code retient l'outil `Agent` de chaque sous-agent sauf un [fork](#fork-the-current-conversation), de sorte qu'un sous-agent à la limite fait son travail délégué lui-même et retourne un résumé. Un fork à la limite garde `Agent` dans sa liste d'outils héritée, mais l'outil retourne une erreur au lieu de générer.1081Par défaut, un sous-agent peut générer ses propres sous-agents, jusqu'à trois couches en dessous de la conversation principale. À la limite de profondeur, Claude Code retient l'outil `Agent` de tous les sous-agents sauf un [fork](#fork-the-current-conversation), de sorte qu'un sous-agent à la limite fait son travail délégué lui-même et retourne un résumé. Un fork à la limite garde `Agent` dans sa liste d'outils héritée, mais l'outil retourne une erreur au lieu de générer.

1078 1082 

1079Les sous-agents imbriqués conviennent à une tâche déléguée qui se divise elle-même en sous-tâches parallèles, comme un sous-agent examinateur qui envoie un vérificateur par résultat. Dans une session interactive, seul le résumé du sous-agent de niveau supérieur vous revient et la sortie intermédiaire reste en dehors de votre conversation principale : un sous-agent qui lance des sous-agents en arrière-plan attend leurs résultats avant de se terminer. En [mode non-interactif](/docs/fr/headless) et dans le SDK Agent, le sous-agent de lancement n'attend pas, de sorte qu'un sous-agent en arrière-plan imbriqué qui se termine après la fin de son lanceur signale à votre conversation principale à la place.1083Les sous-agents imbriqués conviennent à une tâche déléguée qui elle-même se divise en sous-tâches parallèles, comme un sous-agent examinateur qui envoie un vérificateur par conclusion. Dans une session interactive, seul le résumé du sous-agent de niveau supérieur vous revient et la sortie intermédiaire reste en dehors de votre conversation principale : un sous-agent qui lance des sous-agents en arrière-plan attend leurs résultats avant de se terminer. En [mode non-interactif](/docs/fr/headless) et dans le SDK Agent, le sous-agent de lancement n'attend pas, de sorte qu'un sous-agent en arrière-plan imbriqué qui se termine après la fin de son lanceur signale à votre conversation principale à la place.

1080 1084 

1081Pour modifier la limite, définissez [`CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH`](/docs/fr/env-vars) au nombre de niveaux de sous-agent que vous souhaitez en dessous de votre conversation principale. Par exemple, cette entrée dans [`settings.json`](/docs/fr/settings) limite l'imbrication à deux niveaux :1085Pour modifier la limite, définissez [`CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH`](/docs/fr/env-vars) sur le nombre de couches de sous-agents que vous voulez en dessous de votre conversation principale. Par exemple, cette entrée dans [`settings.json`](/docs/fr/settings) limite l'imbrication à deux couches :

1082 1086 

1083```json theme={null}1087```json theme={null}

1084{1088{


1090 1094 

1091Avec cette valeur, vos sous-agents peuvent déléguer à une deuxième couche de leurs propres, et cette deuxième couche ne peut pas déléguer davantage. Définissez `1` pour désactiver l'imbrication.1095Avec cette valeur, vos sous-agents peuvent déléguer à une deuxième couche de leurs propres, et cette deuxième couche ne peut pas déléguer davantage. Définissez `1` pour désactiver l'imbrication.

1092 1096 

1093Un sous-agent imbriqué est configuré de la même manière qu'un sous-agent de niveau supérieur et se résout à partir des mêmes [portées](#choose-the-subagent-scope). Pour empêcher un sous-agent de générer tandis que l'imbrication est activée, comme un examinateur qui doit rester en lecture seule, omettez `Agent` de sa liste [`tools`](#available-tools) ou ajoutez-le à `disallowedTools`.1097Un sous-agent imbriqué est configuré de la même manière qu'un sous-agent de niveau supérieur et se résout à partir des mêmes [portées](#choose-the-subagent-scope). Pour empêcher un sous-agent de générer pendant que l'imbrication est activée, comme un examinateur qui doit rester en lecture seule, omettez `Agent` de sa liste [`tools`](#available-tools) ou ajoutez-le à `disallowedTools`.

1094 1098 

1095Claude Code affiche les sous-agents imbriqués sous forme d'arborescence dans le panneau de sous-agent sous l'entrée d'invite et marque chaque ligne qui a encore des descendants dans le panneau avec un nombre `(+N)` d'entre eux. Ouvrez une ligne pour voir les frères et sœurs de ce sous-agent et les enfants directs avec un chemin de retour à `main`.1099Dans le terminal, Claude Code affiche les sous-agents imbriqués sous forme d'arborescence dans le panneau des sous-agents sous l'entrée d'invite et marque chaque ligne qui a encore des descendants dans le panneau avec un nombre `(+N)` d'entre eux. Ouvrez une ligne pour voir les frères et sœurs de ce sous-agent et les enfants directs avec un chemin de retour à `main`.

1096 1100 

1097<Note>1101<Note>

1098 Les versions antérieures utilisaient des valeurs par défaut différentes :1102 Les versions antérieures utilisaient des valeurs par défaut différentes :

1099 1103 

1100 * **v2.1.172 à v2.1.216** : les sous-agents pouvaient s'imbriquer par défaut, jusqu'à cinq niveaux de profondeur, et la limite ne pouvait pas être modifiée.1104 * **v2.1.172 à v2.1.216** : les sous-agents pouvaient s'imbriquer par défaut, jusqu'à cinq couches de profondeur, et la limite ne pouvait pas être modifiée.

1101 * **v2.1.217 à v2.1.218** : la limite était par défaut un, donc un sous-agent ne pouvait pas générer le sien à moins que vous ne l'augmentiez ; v2.1.219 a augmenté la valeur par défaut à trois.1105 * **v2.1.217 à v2.1.218** : la limite était définie par défaut à un, de sorte qu'un sous-agent ne pouvait pas générer le sien à moins que vous ne l'augmentiez ; v2.1.219 a augmenté la valeur par défaut à trois.

1102</Note>1106</Note>

1103 1107 

1104<h3 id="concurrent-subagent-limit">1108<h3 id="concurrent-subagent-limit">

1105 Limite de sous-agent concurrent1109 Limite de sous-agents concurrents

1106</h3>1110</h3>

1107 1111 

1108Deux limites contrôlent l'utilisation des sous-agents, chacune avec sa propre variable : celle-ci empêche Claude de générer plus de sous-agents pendant que trop d'entre eux s'exécutent, et la [limite de profondeur](#let-subagents-spawn-their-own-subagents) limite la profondeur d'imbrication des sous-agents. Il n'y a pas de limite sur le nombre total de sous-agents que Claude peut générer au cours d'une session.1112Deux limites contrôlent l'utilisation des sous-agents, chacune avec sa propre variable : celle-ci empêche Claude de générer plus de sous-agents pendant que trop d'entre eux s'exécutent, et la [limite de profondeur](#let-subagents-spawn-their-own-subagents) limite la profondeur d'imbrication des sous-agents. Il n'y a pas de limite sur le nombre total de sous-agents que Claude peut générer au cours d'une session.

1109 1113 

1110Par défaut, lorsque 20 sous-agents s'exécutent dans une session, la génération d'un autre avec l'outil Agent échoue avec `Concurrent subagent limit reached`, et l'erreur indique à Claude de ne pas réessayer. La génération réussit à nouveau lorsque le nombre en cours d'exécution tombe en dessous de la limite. Pour modifier la limite, définissez [`CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS`](/docs/fr/env-vars) sur n'importe quel nombre entier positif. Les sessions avec [ultracode](/docs/fr/model-config#adjust-effort-level) actif sont exemptées : la limite n'est pas appliquée là. Nécessite Claude Code v2.1.217 ou ultérieur.1114Par défaut, lorsque 20 sous-agents s'exécutent dans une session, la génération d'un autre avec l'outil Agent échoue avec `Concurrent subagent limit reached`, et l'erreur indique à Claude de ne pas réessayer. La génération réussit à nouveau lorsque le nombre en cours d'exécution tombe en dessous de la limite. Pour modifier la limite, définissez [`CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS`](/docs/fr/env-vars) sur n'importe quel nombre entier positif. Les sessions avec [ultracode](/docs/fr/model-config#adjust-effort-level) actif sont exemptées : la limite n'est pas appliquée là. Nécessite Claude Code v2.1.217 ou ultérieure.

1111 1115 

1112La limite bloque uniquement les sous-agents que Claude génère avec l'outil Agent, mais d'autres exécutions occupent les mêmes emplacements :1116La limite bloque uniquement les sous-agents que Claude génère avec l'outil Agent, mais d'autres exécutions occupent les mêmes emplacements :

1113 1117 

1114* Un fork en session que vous démarrez avec [`/subtask`](#fork-the-current-conversation) prend un emplacement pendant qu'il s'exécute et n'est jamais bloqué par la limite.1118* Un fork en session que vous démarrez avec [`/subtask`](#fork-the-current-conversation) prend un emplacement pendant qu'il s'exécute et n'est jamais bloqué par la limite.

1115* [Reprendre un sous-agent](#resume-subagents) qui a déjà terminé prend un nouvel emplacement sans vérifier la limite, de sorte que les reprises peuvent pousser le nombre en cours d'exécution au-delà.1119* [Reprendre un sous-agent](#resume-subagents) qui a déjà terminé prend un nouvel emplacement sans vérifier la limite, de sorte que les reprises peuvent pousser le nombre en cours d'exécution au-delà.

1116 1120 

1117Les agents que d'autres fonctionnalités exécutent, comme les agents [workflow](/docs/fr/workflows) et les coéquipiers d'une [équipe d'agents](/docs/fr/agent-teams), suivent leurs propres limites à la place.1121Les agents que d'autres fonctionnalités exécutent, comme les agents [workflow](/docs/fr/workflows) et les coéquipiers [équipe d'agents](/docs/fr/agent-teams), suivent leurs propres limites à la place.

1118 1122 

1119<h3 id="manage-subagent-context">1123<h3 id="manage-subagent-context">

1120 Gérer le contexte du sous-agent1124 Gérer le contexte des sous-agents

1121</h3>1125</h3>

1122 1126 

1123<h4 id="what-loads-at-startup">1127<h4 id="what-loads-at-startup">

1124 Ce qui se charge au démarrage1128 Ce qui se charge au démarrage

1125</h4>1129</h4>

1126 1130 

1127Chaque sous-agent démarre avec une fenêtre de contexte fraîche et isolée. Il ne voit pas votre historique de conversation, les skills que vous avez déjà invoqués, ou les fichiers que Claude a déjà lus. Claude compose un message de délégation qui résume la tâche, et le sous-agent travaille à partir de là. L'exception est un [fork](#fork-the-current-conversation), qui hérite de la conversation parent au lieu de commencer à zéro.1131Chaque sous-agent démarre avec une fenêtre de contexte fraîche et isolée. Il ne voit pas votre historique de conversation, les compétences que vous avez déjà invoquées, ou les fichiers que Claude a déjà lus. Claude compose un message de délégation qui résume la tâche, et le sous-agent travaille à partir de là. L'exception est un [fork](#fork-the-current-conversation), qui hérite de la conversation parent au lieu de commencer à zéro.

1128 1132 

1129Le contexte initial d'un sous-agent non-fork contient :1133Le contexte initial d'un sous-agent non-fork contient :

1130 1134 

1131* **Invite système** : l'invite propre de l'agent plus les détails d'environnement que Claude Code ajoute, pas l'invite système de Claude Code. Les sous-agents personnalisés définissent la leur dans le [corps markdown](#write-subagent-files) ou le champ `prompt`. Les agents intégrés ont des invites prédéfinies.1135* **Système prompt** : le propre prompt de l'agent plus les détails d'environnement que Claude Code ajoute, pas le système prompt de Claude Code. Les sous-agents personnalisés définissent le leur dans le [corps markdown](#write-subagent-files) ou le champ `prompt`. Les agents intégrés ont des prompts prédéfinis.

1132* **Message de tâche** : l'invite de délégation que Claude écrit lorsqu'il confie le travail.1136* **Message de tâche** : l'invite de délégation que Claude rédige lorsqu'il confie le travail.

1133* **Fichiers CLAUDE.md** : chaque niveau de la [hiérarchie CLAUDE.md](/docs/fr/memory#how-claude-md-files-load) que la conversation principale charge, y compris `~/.claude/CLAUDE.md`, les règles du projet, `CLAUDE.local.md`, les fichiers de politique gérés et tous les [fichiers `AGENTS.md`](/docs/fr/memory#agents-md) chargés en tant qu'instructions du projet. Les agents Explore et Plan intégrés ignorent cela. Un sous-agent dont la définition définit [`omitClaudeMd`](#supported-frontmatter-fields) charge uniquement les fichiers de politique gérés, ou aucun du tout lorsque la définition provient des [paramètres gérés](#choose-the-subagent-scope).1137* **Fichiers CLAUDE.md** : chaque niveau de la [hiérarchie CLAUDE.md](/docs/fr/memory#how-claude-md-files-load) que la conversation principale charge, y compris `~/.claude/CLAUDE.md`, les règles du projet, `CLAUDE.local.md`, les fichiers de politique gérés, et tous les fichiers [`AGENTS.md`](/docs/fr/memory#agents-md) chargés en tant qu'instructions du projet. Les agents Explore et Plan intégrés ignorent cela. Un sous-agent dont la définition définit [`omitClaudeMd`](#supported-frontmatter-fields) charge uniquement les fichiers de politique gérés, ou aucun lorsque la définition provient des [paramètres gérés](#choose-the-subagent-scope).

1134* **Statut Git** : un instantané que Claude Code lit à partir de votre référentiel lorsque le sous-agent démarre. Absent en dehors d'un référentiel Git ou chaque fois que l'instantané est désactivé ; voir [`includeGitInstructions`](/docs/fr/settings-reference#includegitinstructions). Explore et Plan l'ignorent de toute façon.1138* **Statut Git** : un instantané que Claude Code lit de votre référentiel lorsque le sous-agent démarre. Absent en dehors d'un référentiel Git ou chaque fois que l'instantané est désactivé ; voir [`includeGitInstructions`](/docs/fr/settings-reference#includegitinstructions). Explore et Plan l'ignorent indépendamment.

1135* **Skills préchargés** : contenu complet de tout skill nommé dans le champ [`skills`](#preload-skills-into-subagents) de l'agent. Les agents intégrés ne préchargent pas les skills.1139* **Compétences préchargées** : contenu complet de toute compétence nommée dans le champ [`skills`](#preload-skills-into-subagents) de l'agent. Les agents intégrés ne préchargent pas les compétences.

1136* **Roster des frères et sœurs** : un rappel système listant `main` et tous les autres agents nommés dans la session, chacun étant une valeur `to` valide pour [`SendMessage`](#resume-subagents). Nécessite Claude Code v2.1.206 ou ultérieur. Le roster n'apparaît que lorsque les outils du sous-agent incluent `SendMessage` et qu'au moins un autre agent a un nom, que Claude l'ait nommé lors de sa génération ou qu'il s'exécute en tant que coéquipier d'une [équipe d'agents](/docs/fr/agent-teams). C'est un instantané pris lorsque le sous-agent démarre, donc les agents nommés ultérieurement n'apparaissent pas.1140* **Roster des frères et sœurs** : un [rappel système](/docs/fr/glossary#system-reminder) listant `main` et tous les autres agents nommés dans la session, chacun une valeur `to` valide pour [`SendMessage`](#resume-subagents). Nécessite Claude Code v2.1.206 ou ultérieure. Le roster n'apparaît que lorsque les outils du sous-agent incluent `SendMessage` et qu'au moins un autre agent a un nom, que Claude l'ait nommé lors de sa génération ou qu'il s'exécute en tant que coéquipier [équipe d'agents](/docs/fr/agent-teams). C'est un instantané pris lorsque le sous-agent démarre, de sorte que les agents nommés plus tard n'apparaissent pas.

1137 1141 

1138Pour lancer l'un de vos propres sous-agents sans les fichiers CLAUDE.md de l'utilisateur, du projet et locaux, définissez [`omitClaudeMd: true`](#supported-frontmatter-fields) dans son frontmatter ou `--agents` JSON.1142Pour lancer l'un de vos propres sous-agents sans les fichiers CLAUDE.md utilisateur, projet et local, définissez [`omitClaudeMd: true`](#supported-frontmatter-fields) dans son frontmatter ou `--agents` JSON.

1139 1143 

1140La conversation principale a toujours votre CLAUDE.md complet lorsqu'elle lit les résultats de ces sous-agents, de sorte que la plupart des règles n'ont pas besoin d'atteindre le sous-agent lui-même. Si une règle doit le faire, comme « ignorer le répertoire `vendor/` », reformulez-la dans l'invite que vous donnez à Claude lors de la délégation.1144La conversation principale a toujours votre CLAUDE.md complet lorsqu'elle lit les résultats de ces sous-agents, de sorte que la plupart des règles n'ont pas besoin d'atteindre le sous-agent lui-même. Si une règle doit, comme « ignorer le répertoire `vendor/` », reformulez-la dans l'invite que vous donnez à Claude lors de la délégation.

1141 1145 

1142Vous ne pouvez pas modifier les sous-agents qui reçoivent le statut git. Seuls Explore et Plan l'ignorent.1146Vous ne pouvez pas modifier les sous-agents qui reçoivent le statut git. Seuls Explore et Plan l'ignorent.

1143 1147 

1144Certains états de la conversation principale n'atteignent jamais un sous-agent non-fork :1148Certains états de la conversation principale n'atteignent jamais un sous-agent non-fork :

1145 1149 

1146* **Style de sortie** : un sous-agent exécute sa propre invite système, de sorte que votre [style de sortie](/docs/fr/output-styles) ne façonne pas ses réponses, sauf dans un [fork](#fork-the-current-conversation).1150* **Style de sortie** : un sous-agent exécute son propre système prompt, de sorte que votre [style de sortie](/docs/fr/output-styles) ne façonne pas ses réponses, sauf dans un [fork](#fork-the-current-conversation).

1147* **Mémoire automatique** : la [mémoire automatique](/docs/fr/memory#auto-memory) de la conversation principale n'est pas chargée. Pour donner à un sous-agent une mémoire persistante de son propre, utilisez le champ [`memory`](#enable-persistent-memory).1151* **Mémoire automatique** : la [mémoire automatique](/docs/fr/memory#auto-memory) de la conversation principale n'est pas chargée. Pour donner à un sous-agent une mémoire persistante qui lui est propre, utilisez le champ [`memory`](#enable-persistent-memory).

1148* **Taille de la fenêtre de contexte** : la fenêtre de contexte d'un sous-agent est dimensionnée par son propre modèle, pas celui du parent. Déléguer à un modèle avec une fenêtre plus petite donne à ce sous-agent la fenêtre plus petite.1152* **Taille de la fenêtre de contexte** : la fenêtre de contexte d'un sous-agent est dimensionnée par son propre modèle, pas celle du parent. Déléguer à un modèle avec une fenêtre plus petite donne à ce sous-agent la fenêtre plus petite.

1149 1153 

1150<h4 id="resume-subagents">1154<h4 id="resume-subagents">

1151 Reprendre les sous-agents1155 Reprendre les sous-agents


1153 1157 

1154Chaque invocation de sous-agent crée une nouvelle instance plutôt que de continuer une instance antérieure. Pour continuer le travail d'un sous-agent existant au lieu de recommencer, demandez à Claude de le reprendre.1158Chaque invocation de sous-agent crée une nouvelle instance plutôt que de continuer une instance antérieure. Pour continuer le travail d'un sous-agent existant au lieu de recommencer, demandez à Claude de le reprendre.

1155 1159 

1156Les sous-agents repris conservent leur historique de conversation complet, y compris tous les appels d'outils précédents, les résultats et le raisonnement. Si le sous-agent a généré [des sous-agents en arrière-plan de son propre](#let-subagents-spawn-their-own-subagents), cet historique inclut les résultats qu'ils ont livrés pendant qu'il s'exécutait. Le sous-agent reprend exactement où il s'était arrêté plutôt que de recommencer à zéro.1160Les sous-agents repris conservent leur historique de conversation complet, y compris tous les appels d'outils précédents, les résultats et le raisonnement. Si le sous-agent a généré [ses propres sous-agents en arrière-plan](#let-subagents-spawn-their-own-subagents), cet historique inclut les résultats qu'ils ont livrés pendant qu'il s'exécutait. Le sous-agent reprend exactement où il s'est arrêté plutôt que de recommencer à zéro.

1157 1161 

1158* Lorsqu'un sous-agent se termine, Claude reçoit son ID d'agent.1162* Lorsqu'un sous-agent se termine, Claude reçoit son ID d'agent.

1159* Les agents Explore et Plan intégrés sont ponctuels et ne retournent pas d'ID d'agent, donc Claude ne peut pas les reprendre. Utilisez `general-purpose` ou un sous-agent personnalisé lorsque vous avez besoin de continuer le travail.1163* Les agents Explore et Plan intégrés sont ponctuels et ne retournent pas d'ID d'agent, de sorte que Claude ne peut pas les reprendre. Utilisez `general-purpose` ou un sous-agent personnalisé lorsque vous avez besoin de continuer le travail.

1160* Lorsqu'un sous-agent s'arrête à sa limite [`maxTurns`](#supported-frontmatter-fields), Claude Code marque la sortie retournée comme partielle. Pour les sous-agents qui retournent un ID d'agent, Claude Code note également dans le résultat que Claude peut envoyer un message au sous-agent pour continuer à partir de là où il s'est arrêté.1164* Lorsqu'un sous-agent s'arrête à sa limite [`maxTurns`](#supported-frontmatter-fields), Claude Code marque la sortie retournée comme partielle. Pour les sous-agents qui retournent un ID d'agent, Claude Code note également dans le résultat que Claude peut envoyer un message au sous-agent pour continuer à partir de là où il s'est arrêté.

1161 1165 

1162Claude utilise l'outil `SendMessage` avec l'ID de l'agent ou le nom comme champ `to` pour le reprendre. `SendMessage` ne nécessite pas que les [équipes d'agents](/docs/fr/agent-teams) soient activées ; seuls les messages de protocole d'équipe structurés tels que `shutdown_request` et `plan_approval_response` le font. Au-delà des sous-agents et des coéquipiers, dans les sessions où la messagerie inter-sessions est activée, Claude peut utiliser le même outil pour envoyer un message à [vos autres sessions Claude Code](/docs/fr/cross-session-messaging), sur cette machine ou [au-delà](/docs/fr/cross-session-messaging#message-sessions-on-other-machines).1166Claude utilise l'outil `SendMessage` avec l'ID ou le nom de l'agent comme champ `to` pour le reprendre. `SendMessage` ne nécessite pas que les [équipes d'agents](/docs/fr/agent-teams) soient activées ; seuls les messages de protocole d'équipe structurés comme `shutdown_request` et `plan_approval_response` le font. Au-delà des sous-agents et des coéquipiers, dans les sessions où la messagerie inter-sessions est activée, Claude peut utiliser le même outil pour envoyer un message à [vos autres sessions Claude Code](/docs/fr/cross-session-messaging), sur cette machine ou [au-delà](/docs/fr/cross-session-messaging#message-sessions-on-other-machines).

1163 1167 

1164Pour reprendre un sous-agent, demandez à Claude de continuer le travail précédent :1168Pour reprendre un sous-agent, demandez à Claude de continuer le travail précédent :

1165 1169 


1171[Claude resumes the subagent with full context from previous conversation]1175[Claude resumes the subagent with full context from previous conversation]

1172```1176```

1173 1177 

1174Lorsqu'un sous-agent terminé reçoit un message avec l'outil `SendMessage`, le sous-agent se reprend automatiquement en arrière-plan sans une nouvelle invocation `Agent`. Le même principe s'applique à un sous-agent que Claude a arrêté avec l'outil `TaskStop`, une fois que sa exécution arrêtée a quitté. L'exécution reprise conserve l'[ensemble d'outils d'où le sous-agent s'est d'abord exécuté](#run-subagents-in-foreground-or-background) et peut continuer à lire le [cache d'invite que l'exécution originale a préchauffé](/docs/fr/prompt-caching#subagents-and-the-cache).1178Lorsque Claude envoie un message à un sous-agent terminé avec l'outil `SendMessage`, le sous-agent reprend en arrière-plan sans une nouvelle invocation `Agent`. Il en va de même pour un sous-agent que Claude a arrêté avec l'outil `TaskStop`, une fois que son exécution arrêtée a quitté. L'exécution reprise conserve l'[ensemble d'outils d'où le sous-agent s'est d'abord exécuté](#run-subagents-in-foreground-or-background) et peut continuer à lire le [cache d'invite que l'exécution originale a préchauffé](/docs/fr/prompt-caching#subagents-and-the-cache).

1175 1179 

1176Un sous-agent qui a l'outil `SendMessage` peut aussi envoyer ce message. Dans une session interactive, l'agent repris signale alors au sous-agent qui l'a repris, pas à votre conversation principale. Ce sous-agent attend le résultat avant de terminer son propre travail. Lorsqu'un sous-agent envoie un message à un agent auquel il signale, comme son propre lanceur, Claude Code reprend cet agent sans rediriger ses résultats.1180Un sous-agent qui a l'outil `SendMessage` peut envoyer ce message aussi. Dans une session interactive, l'agent repris signale alors au sous-agent qui l'a repris, pas à votre conversation principale. Ce sous-agent attend le résultat avant de terminer son propre travail. Lorsqu'un sous-agent envoie un message à un agent auquel il signale, comme son propre lanceur, Claude Code reprend cet agent sans rediriger ses résultats.

1177 1181 

1178Un sous-agent que vous avez arrêté vous-même, avec `x` dans `/tasks` ou une demande SDK `stop_task`, ne se reprend pas automatiquement. Si Claude lui envoie un message, le message est refusé et Claude est informé que l'agent a été annulé.1182Un sous-agent que vous avez arrêté vous-même, avec `x` dans `/tasks` ou une demande SDK `stop_task`, ne reprend pas automatiquement. Si Claude lui envoie un message, le message est refusé et Claude est informé que l'agent a été annulé.

1179 1183 

1180Pendant que [la ligne de ce sous-agent est toujours dans le panneau de sous-agent](#run-subagents-in-foreground-or-background), tapez dans sa transcription pour le reprendre vous-même. Après cela, un message de Claude peut le reprendre automatiquement à nouveau.1184Pendant que [la ligne de ce sous-agent est toujours dans le panneau des sous-agents](#run-subagents-in-foreground-or-background), tapez dans sa transcription pour le reprendre vous-même. Après cela, un message de Claude peut le reprendre automatiquement à nouveau.

1181 1185 

1182Reprendre démarre une nouvelle exécution de l'agent sous le même ID, de sorte qu'un sous-agent qui avait déjà échoué ou s'était terminé s'affiche à nouveau comme en cours d'exécution dans la liste des tâches et dans les événements de tâche du SDK Agent. Avant la v2.1.205, il continuait à afficher son statut antérieur échoué ou terminé pendant que l'exécution reprise fonctionnait.1186La reprise démarre une nouvelle exécution de l'agent sous le même ID, de sorte qu'un sous-agent qui avait déjà échoué ou se terminé s'affiche à nouveau comme en cours d'exécution dans la liste des tâches et dans les événements de tâche du SDK Agent. Avant la v2.1.205, il gardait son statut antérieur échoué ou terminé pendant que l'exécution reprise travaillait.

1183 1187 

1184À partir de la v2.1.199, `SendMessage` vérifie qu'un nom fait toujours référence au même agent qu'il a atteint plus tôt dans la conversation. Si un agent plus récent a pris le nom, comme un sous-agent en arrière-plan réengendré qui l'a réutilisé, Claude Code refuse l'envoi plutôt que de le livrer au mauvais agent, et l'erreur signale quel agent le nom atteint maintenant pour que Claude puisse le rediriger. Pour atteindre l'agent antérieur pendant qu'il s'exécute toujours, Claude l'adresse par l'ID d'agent qu'il a reçu lorsqu'il a généré cet agent. La vérification est limitée à la conversation actuelle et se réinitialise sur `/clear`.1188À partir de la v2.1.199, `SendMessage` vérifie qu'un nom fait toujours référence au même agent qu'il a atteint plus tôt dans la conversation. Si un agent plus récent a pris le nom, comme un agent en arrière-plan re-généré qui l'a réutilisé, Claude Code refuse l'envoi plutôt que de le livrer au mauvais agent, et l'erreur signale quel agent le nom atteint maintenant pour que Claude puisse le rediriger. Pour atteindre l'agent antérieur pendant qu'il s'exécute toujours, Claude l'adresse par l'ID d'agent qu'il a reçu lorsqu'il a généré cet agent. La vérification est limitée à la conversation actuelle et se réinitialise sur `/clear`.

1185 1189 

1186À partir de la v2.1.198, un sous-agent traite les messages de l'agent qui l'a lancé comme une direction de tâche normale, y compris les corrections de cours en cours de tâche, et agit en fonction de ceux-ci dans ses propres paramètres de permission. Deux limites tiennent toujours indépendamment de qui a envoyé le message : aucun message d'aucun agent ne compte comme votre approbation pour une invite de permission en attente, et aucun message d'agent ne peut modifier les paramètres de permission d'un sous-agent, `CLAUDE.md`, ou la configuration. Seul le système de permission ou vos propres messages peuvent accorder l'approbation.1190À partir de la v2.1.198, un sous-agent traite les messages de l'agent qui l'a lancé comme une direction de tâche normale, y compris les corrections de cours en cours de tâche, et agit en fonction de ses propres paramètres de permission. Deux limites tiennent toujours indépendamment de qui a envoyé le message : aucun message d'aucun agent ne compte comme votre approbation pour une invite de permission en attente, et aucun message d'agent ne peut modifier les paramètres de permission, `CLAUDE.md` ou la configuration d'un sous-agent. Seul le système de permission ou vos propres messages peuvent accorder l'approbation.

1187 1191 

1188Vous pouvez également demander à Claude l'ID d'agent si vous souhaitez le référencer explicitement, ou trouver les ID dans les fichiers de transcription à `~/.claude/projects/{project}/{sessionId}/subagents/`. Chaque transcription est stockée sous la forme `agent-{agentId}.jsonl`.1192Vous pouvez également demander à Claude l'ID d'agent si vous voulez le référencer explicitement, ou trouver les ID dans les fichiers de transcription à `~/.claude/projects/{project}/{sessionId}/subagents/`. Chaque transcription est stockée sous `agent-{agentId}.jsonl`.

1189 1193 

1190Les transcriptions de sous-agent persistent indépendamment de la conversation principale :1194Les transcriptions des sous-agents persistent indépendamment de la conversation principale :

1191 1195 

1192* **Compaction de la conversation principale** : Lorsque la conversation principale se compacte, les transcriptions de sous-agent ne sont pas affectées. Elles sont stockées dans des fichiers séparés.1196* **Compaction de la conversation principale** : lorsque la conversation principale se compacte, les transcriptions des sous-agents ne sont pas affectées. Elles sont stockées dans des fichiers séparés.

1193* **Persistance de session** : Les transcriptions de sous-agent persistent au sein de leur session. Vous pouvez [reprendre un sous-agent](#resume-subagents) après le redémarrage de Claude Code en reprenant la même session.1197* **Persistance de la session** : les transcriptions des sous-agents persistent dans leur session. Vous pouvez [reprendre un sous-agent](#resume-subagents) après avoir redémarré Claude Code en reprenant la même session.

1194* **Nettoyage automatique** : Claude Code supprime les transcriptions de sous-agent après la période de rétention `cleanupPeriodDays`, 30 jours par défaut, en suivant les [règles de balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically).1198* **Nettoyage automatique** : Claude Code supprime les transcriptions des sous-agents après la période de rétention `cleanupPeriodDays`, 30 jours par défaut, en suivant les [règles de balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically).

1195 1199 

1196<h4 id="auto-compaction">1200<h4 id="auto-compaction">

1197 Auto-compaction1201 Compaction automatique

1198</h4>1202</h4>

1199 1203 

1200Les sous-agents prennent en charge la compaction automatique en utilisant la même logique que la conversation principale. La compaction se déclenche dans les mêmes conditions, et `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` s'applique également aux sous-agents. Consultez [variables d'environnement](/docs/fr/env-vars) pour savoir quand le remplacement prend effet.1204Les sous-agents prennent en charge la compaction automatique en utilisant la même logique que la conversation principale. La compaction se déclenche dans les mêmes conditions, et `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` s'applique également aux sous-agents. Voir [variables d'environnement](/docs/fr/env-vars) pour savoir quand le remplacement prend effet.

1201 1205 

1202Les événements de compaction sont enregistrés dans les fichiers de transcription de sous-agent :1206Les événements de compaction sont enregistrés dans les fichiers de transcription des sous-agents :

1203 1207 

1204```json theme={null}1208```json theme={null}

1205{1209{


1212}1216}

1213```1217```

1214 1218 

1215La valeur `preTokens` indique le nombre de tokens utilisés avant la compaction.1219La valeur `preTokens` indique le nombre de jetons utilisés avant la compaction.

1216 1220 

1217<h2 id="fork-the-current-conversation">1221<h2 id="fork-the-current-conversation">

1218 Dupliquer la conversation actuelle1222 Dupliquer la conversation actuelle

Details

339 ```339 ```

340</CodeGroup>340</CodeGroup>

341 341 

342<h2 id="cap-response-width-in-wide-terminals">

343 Limiter la largeur des réponses dans les terminaux larges

344</h2>

345 

346Dans un terminal large, chaque ligne de prose dans les réponses de Claude s'étend sur toute la largeur de la fenêtre. Pour envelopper la prose à un nombre de colonnes défini, définissez [`maxProseWidth`](/docs/fr/settings-reference#maxprosewidth) dans vos paramètres.

347 

342<h2 id="paste-large-content">348<h2 id="paste-large-content">

343 Coller du contenu volumineux349 Coller du contenu volumineux

344</h2>350</h2>

Details

13Pour ajouter des outils personnalisés, connectez un [serveur MCP](/docs/fr/mcp). Pour étendre Claude avec des flux de travail réutilisables basés sur des invites, écrivez une [skill](/docs/fr/skills), qui s'exécute via l'outil `Skill` existant plutôt que d'ajouter une nouvelle entrée d'outil.13Pour ajouter des outils personnalisés, connectez un [serveur MCP](/docs/fr/mcp). Pour étendre Claude avec des flux de travail réutilisables basés sur des invites, écrivez une [skill](/docs/fr/skills), qui s'exécute via l'outil `Skill` existant plutôt que d'ajouter une nouvelle entrée d'outil.

14 14 

15<Info>15<Info>

16 Sur les plans Pro, Max et Team, Claude Code démarre les sessions en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), où un classificateur décide la plupart de ces invites à votre place. La colonne `Permission required` indique si l'outil demande en [mode Manuel](/docs/fr/permission-modes) pour les chemins à l'intérieur du répertoire de travail. Les outils d'accès aux fichiers marqués Non, y compris `Read`, `Grep` et `Glob`, demandent toujours pour les chemins en dehors du [répertoire de travail et des répertoires supplémentaires](/docs/fr/permissions#working-directories). `Bash` est marqué Oui mais exécute un ensemble intégré de [commandes en lecture seule](/docs/fr/permissions#read-only-commands) sans demander.16 En [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), un classificateur décide la plupart des invites de permission à votre place. La colonne `Permission required` indique si l'outil demande en [mode Manuel](/docs/fr/permission-modes) pour les chemins à l'intérieur du répertoire de travail. Les outils d'accès aux fichiers marqués Non, y compris `Read`, `Grep` et `Glob`, demandent toujours pour les chemins en dehors du [répertoire de travail et des répertoires supplémentaires](/docs/fr/permissions#working-directories). `Bash` est marqué Oui mais exécute un ensemble intégré de [commandes en lecture seule](/docs/fr/permissions#read-only-commands) sans demander.

17</Info>17</Info>

18 18 

19| Outil | Description | Permission requise |19| Outil | Description | Permission requise |


34| `Glob` | Trouve des fichiers basés sur la correspondance de motifs. Absent par défaut sur macOS, Linux et WSL. Consultez [Comportement de l'outil Glob](#glob-tool-behavior) | Non |34| `Glob` | Trouve des fichiers basés sur la correspondance de motifs. Absent par défaut sur macOS, Linux et WSL. Consultez [Comportement de l'outil Glob](#glob-tool-behavior) | Non |

35| `Grep` | Recherche des motifs dans le contenu des fichiers. Absent par défaut sur macOS, Linux et WSL. Consultez [Comportement de l'outil Grep](#grep-tool-behavior) | Non |35| `Grep` | Recherche des motifs dans le contenu des fichiers. Absent par défaut sur macOS, Linux et WSL. Consultez [Comportement de l'outil Grep](#grep-tool-behavior) | Non |

36| `ListAgents` | Liste les agents que Claude peut contacter avec `SendMessage` : les sous-agents de la session, les [coéquipiers d'équipe d'agents](/docs/fr/agent-teams), vos autres sessions Claude Code locales, et, tandis que cette session est connectée à [Remote Control](/docs/fr/remote-control), vos sessions [Claude Code sur le web](/docs/fr/claude-code-on-the-web) et vos sessions Remote Control sur d'autres machines. Soutient la commande `/list-agents`. Consultez [messagerie inter-sessions](/docs/fr/cross-session-messaging). Nécessite Claude Code v2.1.224 ou ultérieur, et n'apparaît que dans les sessions où la [messagerie inter-sessions est activée](/docs/fr/cross-session-messaging#availability). Les lignes de coéquipiers et la première ligne affichant le nom de cette session nécessitent v2.1.239 ou ultérieur | Non |36| `ListAgents` | Liste les agents que Claude peut contacter avec `SendMessage` : les sous-agents de la session, les [coéquipiers d'équipe d'agents](/docs/fr/agent-teams), vos autres sessions Claude Code locales, et, tandis que cette session est connectée à [Remote Control](/docs/fr/remote-control), vos sessions [Claude Code sur le web](/docs/fr/claude-code-on-the-web) et vos sessions Remote Control sur d'autres machines. Soutient la commande `/list-agents`. Consultez [messagerie inter-sessions](/docs/fr/cross-session-messaging). Nécessite Claude Code v2.1.224 ou ultérieur, et n'apparaît que dans les sessions où la [messagerie inter-sessions est activée](/docs/fr/cross-session-messaging#availability). Les lignes de coéquipiers et la première ligne affichant le nom de cette session nécessitent v2.1.239 ou ultérieur | Non |

37| `ListMcpResourcesTool` | Liste les ressources exposées par les [serveurs MCP](/docs/fr/mcp) connectés | Non |37| `ListMcpResourcesTool` | Liste les ressources exposées par les [serveurs MCP](/docs/fr/mcp) connectés, en laissant de côté les [ressources de l'interface utilisateur des applications MCP](/docs/fr/mcp#reference-mcp-resources), qui sont des pages pour une application hôte à rendre | Non |

38| `LSP` | Intelligence du code via les serveurs de langage : accéder aux définitions, trouver les références, signaler les erreurs de type et les avertissements. Consultez [Comportement de l'outil LSP](#lsp-tool-behavior) | Non |38| `LSP` | Intelligence du code via les serveurs de langage : accéder aux définitions, trouver les références, signaler les erreurs de type et les avertissements. Consultez [Comportement de l'outil LSP](#lsp-tool-behavior) | Non |

39| `Monitor` | Exécute une commande en arrière-plan et renvoie chaque ligne de sortie à Claude, afin qu'il puisse réagir aux entrées de journal, aux modifications de fichiers ou à l'état interrogé en milieu de conversation. Peut également ouvrir une WebSocket et traiter chaque message entrant comme un événement. Consultez [Outil Monitor](#monitor-tool) | Oui |39| `Monitor` | Exécute une commande en arrière-plan et renvoie chaque ligne de sortie à Claude, afin qu'il puisse réagir aux entrées de journal, aux modifications de fichiers ou à l'état interrogé en milieu de conversation. Peut également ouvrir une WebSocket et traiter chaque message entrant comme un événement. Consultez [Outil Monitor](#monitor-tool) | Oui |

40| `NotebookEdit` | Modifie les cellules du notebook Jupyter. Consultez [Comportement de l'outil NotebookEdit](#notebookedit-tool-behavior) | Oui |40| `NotebookEdit` | Modifie les cellules du notebook Jupyter. Consultez [Comportement de l'outil NotebookEdit](#notebookedit-tool-behavior) | Oui |

Details

41| `running scripts is disabled on this system` ou `PSSecurityException` | [Autorisez les shims npm à s'exécuter](#running-scripts-is-disabled-on-this-system) |41| `running scripts is disabled on this system` ou `PSSecurityException` | [Autorisez les shims npm à s'exécuter](#running-scripts-is-disabled-on-this-system) |

42| `Error: claude native binary not installed` | [Complétez l'installation npm](#native-binary-not-found-after-npm-install) |42| `Error: claude native binary not installed` | [Complétez l'installation npm](#native-binary-not-found-after-npm-install) |

43| `npm error code ENOTEMPTY` pendant la mise à jour ou la réinstallation | [Supprimez le répertoire de package restant](#npm-enotempty-during-update-or-reinstall) |43| `npm error code ENOTEMPTY` pendant la mise à jour ou la réinstallation | [Supprimez le répertoire de package restant](#npm-enotempty-during-update-or-reinstall) |

44| `'claude' is not recognized` juste après une mise à jour sur Windows | [Restaurez `claude.exe` à partir de sa sauvegarde](#claude-exe-missing-after-an-update-on-windows) |

44| Sur Windows, la commande d'installation imprime le texte du script et rien ne s'installe | [Exécutez la commande d'installation complète](#wrong-install-command-on-windows) |45| Sur Windows, la commande d'installation imprime le texte du script et rien ne s'installe | [Exécutez la commande d'installation complète](#wrong-install-command-on-windows) |

45| `App unavailable in region` | Claude Code n'est pas disponible dans votre pays. Consultez [les pays pris en charge](https://www.anthropic.com/supported-countries). |46| `App unavailable in region` | Claude Code n'est pas disponible dans votre pays. Consultez [les pays pris en charge](https://www.anthropic.com/supported-countries). |

46| `unable to get local issuer certificate` | [Configurez les certificats CA d'entreprise](#tls-or-ssl-connection-errors) |47| `unable to get local issuer certificate` | [Configurez les certificats CA d'entreprise](#tls-or-ssl-connection-errors) |

47| `OAuth error` ou `403 Forbidden` | [Corrigez l'authentification](#login-and-authentication) |48| `OAuth error` ou `403 Forbidden` | [Corrigez l'authentification](#login-and-authentication) |

49| `Claude Code access has not been granted for this account` | [Obtenez un rôle qui inclut Claude Code](#claude-code-access-has-not-been-granted-for-this-account) |

48| `Unable to connect to Anthropic services` pendant la configuration | Consultez [Unable to connect to Anthropic services](/docs/fr/errors#unable-to-connect-to-anthropic-services) dans la Référence des erreurs |50| `Unable to connect to Anthropic services` pendant la configuration | Consultez [Unable to connect to Anthropic services](/docs/fr/errors#unable-to-connect-to-anthropic-services) dans la Référence des erreurs |

49| `Could not load the default credentials` ou `Could not load credentials from any providers` | [Identifiants Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry](#bedrock-agent-platform-or-foundry-credentials-not-loading) |51| `Could not load the default credentials` ou `Could not load credentials from any providers` | [Identifiants Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry](#bedrock-agent-platform-or-foundry-credentials-not-loading) |

50| `ChainedTokenCredential authentication failed` ou `CredentialUnavailableError` | [Identifiants Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry](#bedrock-agent-platform-or-foundry-credentials-not-loading) |52| `ChainedTokenCredential authentication failed` ou `CredentialUnavailableError` | [Identifiants Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry](#bedrock-agent-platform-or-foundry-credentials-not-loading) |


142 source ~/.zshrc144 source ~/.zshrc

143 ```145 ```

144 146 

145 Pour Bash, la valeur par défaut sur la plupart des distributions Linux :147 Pour Bash sur Linux, où c'est la valeur par défaut sur la plupart des distributions :

146 148 

147 ```bash theme={null}149 ```bash theme={null}

148 echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc150 echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc

149 source ~/.bashrc151 source ~/.bashrc

150 ```152 ```

151 153 

154 Pour Bash sur macOS, ajoutez la ligne à `~/.bash_profile` à la place. Terminal sur macOS démarre Bash en tant que shell de connexion, qui ignore `~/.bashrc` et lit uniquement le premier de `~/.bash_profile`, `~/.bash_login`, ou `~/.profile` qui existe. Si vous avez déjà un `~/.bash_login` ou `~/.profile` et aucun `~/.bash_profile`, mettez la ligne dans ce fichier plutôt que de créer `~/.bash_profile` :

155 

156 ```bash theme={null}

157 echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile

158 source ~/.bash_profile

159 ```

160 

152 Alternativement, fermez et rouvrez votre terminal.161 Alternativement, fermez et rouvrez votre terminal.

153 162 

154 Pour les autres shells tels que fish ou Nushell, ajoutez `~/.local/bin` à votre PATH en utilisant la syntaxe de configuration propre à votre shell, puis redémarrez votre terminal.163 Pour les autres shells tels que fish ou Nushell, ajoutez `~/.local/bin` à votre PATH en utilisant la syntaxe de configuration propre à votre shell, puis redémarrez votre terminal.


593irm https://claude.ai/install.ps1 | iex602irm https://claude.ai/install.ps1 | iex

594```603```

595 604 

605<h3 id="claude-exe-missing-after-an-update-on-windows">

606 `claude.exe` manquant après une mise à jour sur Windows

607</h3>

608 

609Si votre terminal signale `'claude' is not recognized` juste après la mise à jour de Claude Code sur Windows, vérifiez si `%USERPROFILE%\.local\bin` contient toujours `claude.exe`. Si ce répertoire ne se trouve pas du tout sur votre PATH, consultez [Corriger votre PATH](#command-not-found-claude-after-installation) à la place. Pour mettre à jour sur Windows, Claude Code renomme le `claude.exe` existant en sauvegarde et déplace la nouvelle version à sa place. Si le déplacement de la nouvelle version échoue et que Claude Code ne peut pas renommer la sauvegarde en arrière non plus, le répertoire conserve la sauvegarde mais n'a pas de `claude.exe`.

610 

611La sauvegarde est un fichier dans le même répertoire dont le nom commence par `claude.exe.old.` suivi d'un horodatage numérique. Exécutez ce qui suit dans PowerShell pour renommer la sauvegarde la plus récente en `claude.exe` :

612 

613```powershell theme={null}

614Get-ChildItem "$env:USERPROFILE\.local\bin\claude.exe.old.*" | Sort-Object Name | Select-Object -Last 1 | Rename-Item -NewName claude.exe

615```

616 

617Ensuite, exécutez `claude --version` pour confirmer la correction. Un `claude.exe` restauré affiche un numéro de version.

618 

619S'il n'y a pas de fichier `claude.exe.old.*`, ou si `claude` échoue toujours après le renommage, réinstallez à la place :

620 

621```powershell theme={null}

622irm https://claude.ai/install.ps1 | iex

623```

624 

625Avant v2.1.281, Claude Code pouvait supprimer la sauvegarde tandis que `claude.exe` était toujours manquant.

626 

596<h3 id="install-killed-on-low-memory-linux-servers">627<h3 id="install-killed-on-low-memory-linux-servers">

597 Installation arrêtée sur les serveurs Linux à faible mémoire628 Installation arrêtée sur les serveurs Linux à faible mémoire

598</h3>629</h3>


992* **Utilisateurs Anthropic Console** : confirmez que votre compte a le rôle « Claude Code » ou « Developer ». Les administrateurs l'attribuent dans la console Anthropic sous Paramètres → Membres.1023* **Utilisateurs Anthropic Console** : confirmez que votre compte a le rôle « Claude Code » ou « Developer ». Les administrateurs l'attribuent dans la console Anthropic sous Paramètres → Membres.

993* **Derrière un proxy** : les proxies d'entreprise peuvent interférer avec les demandes API. Consultez [configuration réseau](/docs/fr/network-config) pour la configuration du proxy.1024* **Derrière un proxy** : les proxies d'entreprise peuvent interférer avec les demandes API. Consultez [configuration réseau](/docs/fr/network-config) pour la configuration du proxy.

994 1025 

1026<h3 id="claude-code-access-has-not-been-granted-for-this-account">

1027 L'accès à Claude Code n'a pas été accordé pour ce compte

1028</h3>

1029 

1030Si la page de connexion affiche `Authorization failed` avec le message `Claude Code access has not been granted for this account. Contact your administrator.` après vous être connecté depuis Claude Code, votre organisation Claude Enterprise a défini votre rôle sur Custom et aucun des [rôles personnalisés](https://support.claude.com/en/articles/13930452) assignés à vos groupes n'accorde l'accès à Claude Code. Sur le rôle Custom, vous n'obtenez l'accès que de ces rôles personnalisés, donc rien de ce que vous changez dans Claude Code ne résout cette erreur.

1031 

1032Pour obtenir l'accès :

1033 

10341. Demandez à un propriétaire de votre organisation Claude d'assigner un rôle personnalisé qui accorde l'accès à Claude Code à l'un de vos groupes, ou de changer votre rôle de Custom à un rôle standard tel que User. Les propriétaires gèrent les rôles dans les [paramètres de rôle](https://claude.ai/admin-settings/roles) de l'organisation.

10352. Après que le propriétaire ait effectué le changement, exécutez `claude` et connectez-vous à nouveau.

1036 

995<h3 id="this-organization-has-been-disabled-with-an-active-subscription">1037<h3 id="this-organization-has-been-disabled-with-an-active-subscription">

996 Cette organisation a été désactivée avec un abonnement actif1038 Cette organisation a été désactivée avec un abonnement actif

997</h3>1039</h3>

Details

17| Session démarrée en mode auto, ou Claude modifie les fichiers et exécute les commandes sans demander | [Mode de démarrage d'une session](/docs/fr/permission-modes#which-mode-a-session-starts-in) |17| Session démarrée en mode auto, ou Claude modifie les fichiers et exécute les commandes sans demander | [Mode de démarrage d'une session](/docs/fr/permission-modes#which-mode-a-session-starts-in) |

18| `API Error: 5xx`, `529 Overloaded`, `429`, erreurs de validation de requête | [Référence des erreurs](/docs/fr/errors) |18| `API Error: 5xx`, `529 Overloaded`, `429`, erreurs de validation de requête | [Référence des erreurs](/docs/fr/errors) |

19| `model not found` ou `you may not have access to it` | [Référence des erreurs](/docs/fr/errors#theres-an-issue-with-the-selected-model) |19| `model not found` ou `you may not have access to it` | [Référence des erreurs](/docs/fr/errors#theres-an-issue-with-the-selected-model) |

20| Une commande que Claude exécute échoue avec `Your disk quota is full`, `is full (ENOSPC)`, ou `Command output was lost` | [Référence des erreurs](/docs/fr/errors#disk-quota-or-temp-filesystem-is-full) |

20| L'extension VS Code ne se connecte pas ou ne détecte pas Claude | [Intégration VS Code](/docs/fr/vs-code#fix-common-issues) |21| L'extension VS Code ne se connecte pas ou ne détecte pas Claude | [Intégration VS Code](/docs/fr/vs-code#fix-common-issues) |

21| `Claude Code process exited with code 1` dans VS Code ou une application SDK | [Référence des erreurs](/docs/fr/errors#claude-code-process-exited-with-code-n) |22| `Claude Code process exited with code 1` dans VS Code ou une application SDK | [Référence des erreurs](/docs/fr/errors#claude-code-process-exited-with-code-n) |

22| Le plugin JetBrains ou l'IDE n'est pas détecté | [Intégration JetBrains](/docs/fr/jetbrains#troubleshooting) |23| Le plugin JetBrains ou l'IDE n'est pas détecté | [Intégration JetBrains](/docs/fr/jetbrains#troubleshooting) |

Details

30 Activer la dictée vocale30 Activer la dictée vocale

31</h2>31</h2>

32 32 

33Exécutez `/voice` pour activer la dictée. La première fois que vous l'activez, Claude Code exécute une vérification du microphone. Sur macOS, cela déclenche l'invite de permission du microphone système pour votre terminal s'il n'a jamais été accordé.33Exécutez `/voice` pour activer la dictée. Lorsque vous l'activez, Claude Code exécute une vérification du microphone. Sur macOS, cela déclenche l'invite de permission du microphone système pour votre terminal s'il n'a jamais été accordé.

34 34 

35```35```

36/voice36/voice


190* **`Voice mode requires SoX for audio recording` sur Linux** : le module audio natif n'a pas pu se charger et aucun retour n'est installé. Installez SoX avec la commande affichée dans le message d'erreur, par exemple `sudo apt-get install sox`.190* **`Voice mode requires SoX for audio recording` sur Linux** : le module audio natif n'a pas pu se charger et aucun retour n'est installé. Installez SoX avec la commande affichée dans le message d'erreur, par exemple `sudo apt-get install sox`.

191* **`Voice mode requires a microphone, but SoX could not open an audio capture device`** : SoX est installé, mais l'hôte n'a pas de périphérique de capture audio, par exemple un serveur sans interface graphique ou un conteneur. Exécutez Claude Code sur une machine avec un microphone. À partir de la v2.1.195, Claude Code sur Linux signale ce message dans cette situation ; les versions antérieures vous demandaient d'installer SoX même s'il était déjà installé.191* **`Voice mode requires a microphone, but SoX could not open an audio capture device`** : SoX est installé, mais l'hôte n'a pas de périphérique de capture audio, par exemple un serveur sans interface graphique ou un conteneur. Exécutez Claude Code sur une machine avec un microphone. À partir de la v2.1.195, Claude Code sur Linux signale ce message dans cette situation ; les versions antérieures vous demandaient d'installer SoX même s'il était déjà installé.

192* **`Voice mode could not find a working audio recorder in WSL`** : WSLg achemine l'audio via PulseAudio plutôt qu'un périphérique ALSA, donc SoX a besoin que son backend PulseAudio soit installé explicitement. Exécutez `sudo apt install sox libsox-fmt-pulse`. L'installation de `sox` seul installe le backend ALSA, qui ne peut pas enregistrer sur WSL car il n'y a pas de périphérique `/dev/snd`.192* **`Voice mode could not find a working audio recorder in WSL`** : WSLg achemine l'audio via PulseAudio plutôt qu'un périphérique ALSA, donc SoX a besoin que son backend PulseAudio soit installé explicitement. Exécutez `sudo apt install sox libsox-fmt-pulse`. L'installation de `sox` seul installe le backend ALSA, qui ne peut pas enregistrer sur WSL car il n'y a pas de périphérique `/dev/snd`.

193* **`Voice input is failing repeatedly and has been paused`** : la dictée vocale a rencontré trois échecs de capture en 10 secondes. Claude Code met en pause la dictée jusqu'à ce que 10 secondes se soient écoulées depuis le premier de ces échecs. Un échec compte que le microphone ne démarre pas ou que l'enregistreur démarre puis s'arrête sans produire d'audio. Cela signifie généralement que le microphone ou la pile audio sur cet hôte ne peut pas capturer l'audio, par exemple un serveur sans interface graphique, un shell distant sans passage audio, ou une permission de microphone refusée. Confirmez un périphérique d'entrée fonctionnant, corrigez la cause sous-jacente à partir des entrées ci-dessus, puis déclenchez à nouveau la voix. Avant la v2.1.202, seuls les échecs de démarrage comptaient vers la pause.193* **`Voice input is failing repeatedly and has been paused`** : la dictée vocale a rencontré trois échecs en 10 secondes. Claude Code met en pause la dictée jusqu'à ce que 10 secondes se soient écoulées depuis le premier de ces échecs. Cela signifie généralement que le microphone ou la pile audio sur cet hôte ne peut pas capturer l'audio, par exemple un serveur sans interface graphique, un shell distant sans passage audio, ou une permission de microphone refusée. Confirmez un périphérique d'entrée fonctionnant, corrigez la cause sous-jacente à partir des entrées ci-dessus, puis déclenchez à nouveau la voix. Avant la v2.1.202, seuls les échecs de démarrage comptaient vers la pause.

194* **Rien ne se passe en maintenant `Space` en mode maintien** : regardez l'entrée d'invite pendant que vous maintenez. Si les espaces continuent à s'accumuler, la dictée vocale est probablement désactivée ; exécutez `/voice hold` pour l'activer. Si un ou deux espaces seulement apparaissent puis rien, la dictée vocale est activée mais la détection de maintien ne se déclenche pas. La détection de maintien nécessite que votre terminal envoie des événements de répétition des touches, elle ne peut donc pas détecter une touche maintenue si la répétition des touches est désactivée au niveau du système d'exploitation. Basculez vers le mode appui avec `/voice tap` pour éviter l'exigence de répétition des touches.194* **Rien ne se passe en maintenant `Space` en mode maintien** : regardez l'entrée d'invite pendant que vous maintenez. Si les espaces continuent à s'accumuler, la dictée vocale est probablement désactivée ; exécutez `/voice hold` pour l'activer. Si un ou deux espaces seulement apparaissent puis rien, la dictée vocale est activée mais la détection de maintien ne se déclenche pas. La détection de maintien nécessite que votre terminal envoie des événements de répétition des touches, elle ne peut donc pas détecter une touche maintenue si la répétition des touches est désactivée au niveau du système d'exploitation. Basculez vers le mode appui avec `/voice tap` pour éviter l'exigence de répétition des touches.

195* **Appuyer sur `Space` tape un espace au lieu d'enregistrer en mode appui** : le premier appui ne commence l'enregistrement que lorsque l'entrée d'invite est vide. Effacez d'abord l'entrée, ou vérifiez que vous êtes en mode appui en exécutant `/voice tap`.195* **Appuyer sur `Space` tape un espace au lieu d'enregistrer en mode appui** : le premier appui ne commence l'enregistrement que lorsque l'entrée d'invite est vide. Effacez d'abord l'entrée, ou vérifiez que vous êtes en mode appui en exécutant `/voice tap`.

196* **`No audio detected from microphone`** : l'enregistrement a commencé mais a capturé le silence. Confirmez que le périphérique d'entrée correct est défini comme valeur par défaut du système et que son niveau d'entrée n'est pas coupé ou proche de zéro. Sur Windows, ouvrez Paramètres → Système → Son → Entrée et sélectionnez votre microphone. Sur macOS, ouvrez Paramètres système → Son → Entrée.196* **`No audio detected from microphone`** : l'enregistrement a commencé mais a capturé le silence. Confirmez que le périphérique d'entrée correct est défini comme valeur par défaut du système et que son niveau d'entrée n'est pas coupé ou proche de zéro. Sur Windows, ouvrez Paramètres → Système → Son → Entrée et sélectionnez votre microphone. Sur macOS, ouvrez Paramètres système → Son → Entrée.

vs-code.md +30 −7

Details

109 109 

110La boîte de saisie prend en charge plusieurs fonctionnalités :110La boîte de saisie prend en charge plusieurs fonctionnalités :

111 111 

112* **Modes de permission** : cliquez sur l'indicateur de mode en bas de la boîte de saisie pour basculer entre les modes de permission. Sur les plans Pro, Max et Team, Auto est le mode de permission intégré au démarrage. Consultez [comment l'extension choisit le mode de permission au démarrage](/docs/fr/permission-modes#switch-permission-modes) pour savoir ce qui change cela, et tous les modes de permission que l'indicateur propose.112* **Modes de permission** : cliquez sur l'indicateur de mode en bas de la boîte de saisie pour basculer entre les modes de permission. Avec Claude Code v2.1.283 ou version ultérieure, Auto est le mode de permission intégré au démarrage, et sur les versions antérieures uniquement sur les plans Pro, Max et Team. Consultez [comment l'extension choisit le mode de permission au démarrage](/docs/fr/permission-modes#switch-permission-modes) pour savoir ce qui change cela, et tous les modes de permission que l'indicateur propose.

113 * **Auto** : un classificateur examine la plupart des actions au lieu de vous demander. Consultez [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour savoir ce qu'il examine et bloque.113 * **Auto** : un classificateur examine la plupart des actions au lieu de vous demander. Consultez [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour savoir ce qu'il examine et bloque.

114 * **Manual** : Claude demande la permission avant les modifications de fichiers et la plupart des commandes shell.114 * **Manual** : Claude demande la permission avant les modifications de fichiers et la plupart des commandes shell.

115 * **Plan** : Claude décrit ce qu'il fera et attend l'approbation avant d'apporter des modifications. VS Code ouvre automatiquement le plan en tant que document Markdown complet où vous pouvez ajouter des commentaires en ligne pour donner votre avis avant que Claude ne commence.115 * **Plan** : Claude décrit ce qu'il fera et attend l'approbation avant d'apporter des modifications. VS Code ouvre automatiquement le plan en tant que document Markdown complet où vous pouvez ajouter des commentaires en ligne pour donner votre avis avant que Claude ne commence.


123* **Model** : sélectionnez **Switch model…** dans le menu de commande pour changer de modèle en cours de session. Vous pouvez également cliquer sur le nom du modèle en bas de la boîte de saisie pour ouvrir le même sélecteur.123* **Model** : sélectionnez **Switch model…** dans le menu de commande pour changer de modèle en cours de session. Vous pouvez également cliquer sur le nom du modèle en bas de la boîte de saisie pour ouvrir le même sélecteur.

124 124 

125 Lorsque le modèle actuel prend en charge les [niveaux d'effort](/docs/fr/model-config#adjust-effort-level), le sélecteur affiche également une ligne **Effort** et le bouton du nom du modèle affiche le niveau sélectionné. Lorsque vous choisissez un niveau autre que `max`, Claude Code l'enregistre pour le modèle actuel comme valeur par défaut, sous [`modelSettings`](/docs/fr/settings-reference#modelsettings) dans vos paramètres utilisateur ; `max` s'applique uniquement à la session actuelle. Le bouton du nom du modèle et la ligne **Effort** nécessitent Claude Code v2.1.257 ou version ultérieure.125 Lorsque le modèle actuel prend en charge les [niveaux d'effort](/docs/fr/model-config#adjust-effort-level), le sélecteur affiche également une ligne **Effort** et le bouton du nom du modèle affiche le niveau sélectionné. Lorsque vous choisissez un niveau autre que `max`, Claude Code l'enregistre pour le modèle actuel comme valeur par défaut, sous [`modelSettings`](/docs/fr/settings-reference#modelsettings) dans vos paramètres utilisateur ; `max` s'applique uniquement à la session actuelle. Le bouton du nom du modèle et la ligne **Effort** nécessitent Claude Code v2.1.257 ou version ultérieure.

126 

127 Lorsque les [workflows dynamiques](/docs/fr/workflows) sont activés et que le modèle actuel les prend en charge, un commutateur **Ultracode** apparaît sous la ligne **Effort**. Activez-le pour que Claude planifie un [workflow](/docs/fr/workflows#let-claude-decide-with-ultracode) pour chaque tâche substantielle de cette session, au niveau d'effort sélectionné. Pendant qu'il est activé, le bouton du nom du modèle affiche `· Ultracode` après le niveau. Le commutateur nécessite Claude Code v2.1.284 ou version ultérieure.

126* **Command menu** : cliquez sur `/` ou tapez `/` pour ouvrir le menu de commande. Les options incluent l'attachement de fichiers, le changement de modèle et l'activation de la réflexion étendue.128* **Command menu** : cliquez sur `/` ou tapez `/` pour ouvrir le menu de commande. Les options incluent l'attachement de fichiers, le changement de modèle et l'activation de la réflexion étendue.

127 129 

128 La section Personnaliser fournit l'accès aux serveurs MCP, aux commandes, aux styles de sortie, aux hooks, à la mémoire, aux instructions, aux permissions et aux plugins. Les éléments avec une icône de terminal s'ouvrent dans le terminal intégré.130 La section Personnaliser fournit l'accès aux serveurs MCP, aux commandes, aux styles de sortie, aux hooks, à la mémoire, aux instructions, aux permissions et aux plugins. Les éléments avec une icône de terminal s'ouvrent dans le terminal intégré.


150 152 

151 La dernière liste de tâches de Claude reste visible, tout comme le texte d'une question en attente que Claude pose ; cela nécessite Claude Code v2.1.225 ou version ultérieure. Pendant que Claude exécute les [sous-agents](/docs/fr/sub-agents), les lignes de progression en direct avec leur dernière activité apparaissent sous le groupe d'appels d'outils qui les a démarrés. Cela nécessite Claude Code v2.1.269 ou version ultérieure.153 La dernière liste de tâches de Claude reste visible, tout comme le texte d'une question en attente que Claude pose ; cela nécessite Claude Code v2.1.225 ou version ultérieure. Pendant que Claude exécute les [sous-agents](/docs/fr/sub-agents), les lignes de progression en direct avec leur dernière activité apparaissent sous le groupe d'appels d'outils qui les a démarrés. Cela nécessite Claude Code v2.1.269 ou version ultérieure.

152 * Pour vous déconnecter de votre compte Anthropic, sélectionnez **Sign out** dans la section Paramètres, ou tapez `/logout`. Sur un [fournisseur tiers](#use-third-party-providers), le menu n'offre ni l'un ni l'autre. Nécessite Claude Code v2.1.277 ou version ultérieure.154 * Pour vous déconnecter de votre compte Anthropic, sélectionnez **Sign out** dans la section Paramètres, ou tapez `/logout`. Sur un [fournisseur tiers](#use-third-party-providers), le menu n'offre ni l'un ni l'autre. Nécessite Claude Code v2.1.277 ou version ultérieure.

153 * Pour signaler un bogue, cliquez sur **Report a problem** en bas du menu, ou tapez `/bug` ou `/feedback` avec une description facultative qui préremplira le rapport. Lorsque vous soumettez le rapport et que vous êtes connecté à Anthropic sur une connexion propriétaire, Claude Code l'envoie à Anthropic. Sur un fournisseur tiers, ou sans identifiants Anthropic, la boîte de dialogue s'ouvre toujours, mais la soumission affiche une erreur et n'envoie rien : contrairement au `/bug` de la CLI, l'extension n'écrit pas d'archive locale. Nécessite Claude Code v2.1.229 ou version ultérieure.155 * Pour signaler un bogue, cliquez sur **Report a problem** en bas du menu, ou tapez `/bug` ou `/feedback` avec une description facultative qui préremplira le rapport. Lorsque vous soumettez le rapport et que vous êtes connecté à Anthropic sur une connexion propriétaire, Claude Code l'envoie à Anthropic. Nécessite Claude Code v2.1.229 ou version ultérieure.

156 

157 Sur un fournisseur tiers, ou sans identifiants Anthropic, rien n'est envoyé. La boîte de dialogue le dit avant que vous n'écriviez. La soumission enregistre le rapport sous forme d'[archive locale sous `~/.claude/feedback-bundles/`](/docs/fr/data-usage#telemetry-services) avec les modèles de clé API et de jeton connus supprimés. Envoyez ce fichier à votre représentant de compte Anthropic ou joignez-le à une demande d'assistance. La confirmation nomme le fichier et inclut un bouton **Show folder**. L'enregistrement du rapport sur votre ordinateur nécessite Claude Code v2.1.284 ou version ultérieure.

154 158 

155 Si la politique de votre organisation désactive les commentaires sur les produits, **Report a problem** n'apparaît pas dans le menu, et `/bug` et `/feedback` affichent un avis `Feedback is turned off by your organization's policy or this environment's settings.` au lieu d'ouvrir le rapport.159 Si la politique de votre organisation désactive les commentaires sur les produits, **Report a problem** n'apparaît pas dans le menu, et `/bug` et `/feedback` affichent un avis `Feedback is turned off by your organization's policy or this environment's settings.` au lieu d'ouvrir le rapport. Avec Claude Code v2.1.284 ou version ultérieure, si vous définissez la variable d'environnement `DISABLE_FEEDBACK_COMMAND` ou `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, les commentaires sont également désactivés et l'ouverture du rapport affiche cet avis à la place.

156* **Side questions** : tapez `/btw` suivi d'une question pour poser une question sur votre session [sans l'ajouter à la conversation](/docs/fr/interactive-mode#side-questions-with-%2Fbtw). La réponse s'ouvre dans un panneau à côté du chat, où vous pouvez poser des questions de suivi. Le fil survit aux rechargements de fenêtre. Claude Code conserve les 20 derniers échanges et expire les fils stockés selon le calendrier [`cleanupPeriodDays`](/docs/fr/settings-reference#cleanupperioddays), tant que Claude Code peut [déterminer en toute sécurité la période de rétention](/docs/fr/claude-directory#cleaned-up-automatically). Pour effacer un fil, cliquez sur l'icône de corbeille dans le panneau. Nécessite Claude Code v2.1.227 ou version ultérieure.160* **Side questions** : tapez `/btw` suivi d'une question pour poser une question sur votre session [sans l'ajouter à la conversation](/docs/fr/interactive-mode#side-questions-with-%2Fbtw). La réponse s'ouvre dans un panneau à côté du chat, où vous pouvez poser des questions de suivi. Le fil survit aux rechargements de fenêtre. Claude Code conserve les 20 derniers échanges et expire les fils stockés selon le calendrier [`cleanupPeriodDays`](/docs/fr/settings-reference#cleanupperioddays), tant que Claude Code peut [déterminer en toute sécurité la période de rétention](/docs/fr/claude-directory#cleaned-up-automatically). Pour effacer un fil, cliquez sur l'icône de corbeille dans le panneau. Nécessite Claude Code v2.1.227 ou version ultérieure.

157* **Copy a response** : survolez une réponse et cliquez sur **Copy response** pour la copier dans votre presse-papiers, ou tapez `/copy` pour copier la dernière réponse. `/copy 2` copie l'avant-dernière. Nécessite Claude Code v2.1.277 ou version ultérieure.161* **Copy a response** : survolez une réponse et cliquez sur **Copy response** pour la copier dans votre presse-papiers, ou tapez `/copy` pour copier la dernière réponse. `/copy 2` copie l'avant-dernière. Nécessite Claude Code v2.1.277 ou version ultérieure.

158* **Context indicator** : la boîte de saisie affiche la quantité de fenêtre de contexte de Claude que vous utilisez. Claude se compacte automatiquement si nécessaire, ou vous pouvez exécuter `/compact` manuellement.162* **Context indicator** : la boîte de saisie affiche la quantité de fenêtre de contexte de Claude que vous utilisez. Claude se compacte automatiquement si nécessaire, ou vous pouvez exécuter `/compact` manuellement.


242 </Step>246 </Step>

243 247 

244 <Step title="Select a session to resume">248 <Step title="Select a session to resume">

245 Parcourez ou recherchez vos sessions cloud. Cliquez sur n'importe quelle session pour la télécharger et continuer la conversation localement.249 Parcourez ou recherchez vos sessions. Cliquez sur une session pour la reprendre avec l'historique complet des messages.

246 </Step>250 </Step>

247</Steps>251</Steps>

248 252 

249<Note>253<Note>

250 Seules les sessions cloud démarrées avec un référentiel GitHub apparaissent dans l'onglet Web. La reprise charge l'historique de la conversation localement ; les modifications ne sont pas resynchronisées vers claude.ai.254 Lorsque le dossier que vous avez ouvert est un référentiel GitHub, l'onglet Web affiche uniquement les sessions de ce référentiel.

255 

256 Lorsque vous reprenez une session cloud, l'extension télécharge une copie de l'historique de la conversation ; les modifications ne se resynchronisent pas vers claude.ai.

251</Note>257</Note>

252 258 

259L'onglet Web répertorie également vos sessions [Remote Control](/docs/fr/remote-control). Si vous cliquez sur une session qui s'est exécutée dans le dossier que vous avez ouvert, l'extension ouvre cette conversation locale au lieu de télécharger une copie, et met l'accent sur l'onglet qui l'affiche déjà s'il y en a un. Si l'extension ne peut pas exclure qu'un autre processus Claude a la conversation ouverte, vous obtenez une copie téléchargée à la place.

260 

261Si une partie d'une conversation ne peut pas être téléchargée, une erreur apparaît et aucune copie n'est enregistrée. Sélectionnez la session à nouveau pour réessayer. Si vous sélectionnez une session qui n'a pas encore de conversation à télécharger, une erreur vous indique où la continuer à la place.

262 

253<h3 id="check-account-and-usage">263<h3 id="check-account-and-usage">

254 Vérifier le compte et l'utilisation264 Vérifier le compte et l'utilisation

255</h3>265</h3>


269 Personnalisez votre flux de travail279 Personnalisez votre flux de travail

270</h2>280</h2>

271 281 

272Vous pouvez repositionner le panneau Claude, exécuter plusieurs conversations, organiser la liste des sessions en groupes ou basculer en mode terminal.282Vous pouvez repositionner le panneau Claude, exécuter plusieurs conversations, organiser la liste des sessions en groupes ou filtrer la liste des sessions, ou basculer en mode terminal.

273 283 

274<h3 id="choose-where-claude-lives">284<h3 id="choose-where-claude-lives">

275 Choisissez où Claude se trouve285 Choisissez où Claude se trouve


319 329 

320L'extension enregistre les groupes par dossier d'espace de travail, ils survivent donc aux rechargements de fenêtre et apparaissent dans chaque fenêtre où vous ouvrez le même dossier. Lorsque vous recherchez dans la liste, l'extension affiche les correspondances dans une liste plate unique sur tous les groupes.330L'extension enregistre les groupes par dossier d'espace de travail, ils survivent donc aux rechargements de fenêtre et apparaissent dans chaque fenêtre où vous ouvrez le même dossier. Lorsque vous recherchez dans la liste, l'extension affiche les correspondances dans une liste plate unique sur tous les groupes.

321 331 

332<h3 id="filter-the-sessions-list">

333 Filtrez la liste des sessions

334</h3>

335 

336Pour réduire une longue liste de sessions dans la barre d'activité, utilisez les deux contrôles de filtre en haut de la liste. Nécessite Claude Code v2.1.271 ou version ultérieure. Les sessions archivées n'apparaissent pas lorsque l'un ou l'autre filtre est activé.

337 

338* **Actif** : activez ce bouton bascule pour afficher uniquement les sessions qui nécessitent votre entrée, qui travaillent ou qui ne sont pas lues, plus la session dans l'onglet Claude sur lequel vous vous êtes concentré en dernier.

339* **Filtrer par statut** : cliquez sur l'icône d'entonnoir, puis cochez **Nécessite une entrée**, **En cours de travail** ou **Terminé** pour afficher les sessions dans l'un de ces états. Cochez **Ouvert** ou **Fermé** pour affiner selon que la session est ouverte. Une session est considérée comme ouverte lorsqu'elle a un onglet dans cette fenêtre ou s'exécute dans un autre processus Claude Code sur cette machine, par exemple dans un terminal.

340 

341Lorsque **Actif** est activé et que vous cochez un statut, **Ouvert** ou **Fermé**, la liste affiche également chaque session qui correspond à vos sélections. Les filtres que vous définissez persistent lors des rechargements de fenêtre.

342 

322<h3 id="switch-to-terminal-mode">343<h3 id="switch-to-terminal-mode">

323 Basculez en mode terminal344 Basculez en mode terminal

324</h3>345</h3>


506L'extension a deux types de paramètres :527L'extension a deux types de paramètres :

507 528 

508* **Paramètres de l'extension** dans VS Code : contrôlent le comportement de l'extension dans VS Code. Ouvrez avec `Cmd+,` (Mac) ou `Ctrl+,` (Windows/Linux), puis allez à Extensions → Claude Code. Vous pouvez également taper `/` et sélectionner **General config…** pour ouvrir les paramètres.529* **Paramètres de l'extension** dans VS Code : contrôlent le comportement de l'extension dans VS Code. Ouvrez avec `Cmd+,` (Mac) ou `Ctrl+,` (Windows/Linux), puis allez à Extensions → Claude Code. Vous pouvez également taper `/` et sélectionner **General config…** pour ouvrir les paramètres.

509* **Paramètres Claude Code** dans `~/.claude/settings.json` : partagés entre l'extension et CLI. Utilisez-le pour les commandes autorisées, les variables d'environnement, les hooks et les serveurs MCP. Sur les plans Pro, Max et Team, c'est aussi l'une des entrées du mode de permission avec lequel les conversations commencent. [Switch permission modes](/docs/fr/permission-modes#switch-permission-modes) énumère l'ordre. Voir [Settings](/docs/fr/settings) pour plus de détails.530* **Paramètres Claude Code** dans `~/.claude/settings.json` : partagés entre l'extension et CLI. Utilisez-le pour les commandes autorisées, les variables d'environnement, les hooks et les serveurs MCP. Avec Claude Code v2.1.283 ou ultérieur, c'est aussi l'une des entrées du mode de permission avec lequel les conversations commencent, et sur les versions antérieures uniquement sur les plans Pro, Max et Team. [Switch permission modes](/docs/fr/permission-modes#switch-permission-modes) énumère l'ordre. Voir [Settings](/docs/fr/settings) pour plus de détails.

510 531 

511<Tip>532<Tip>

512 Ajoutez `"$schema": "https://json.schemastore.org/claude-code-settings.json"` à votre `settings.json` pour obtenir l'autocomplétion et la validation en ligne pour tous les paramètres disponibles directement dans VS Code.533 Ajoutez `"$schema": "https://json.schemastore.org/claude-code-settings.json"` à votre `settings.json` pour obtenir l'autocomplétion et la validation en ligne pour tous les paramètres disponibles directement dans VS Code.


722 743 

723**Contexte de sélection et de fichier ouvert.** Lors de la connexion, le CLI inclut votre sélection d'éditeur actuelle et le chemin du fichier actif comme contexte sur chaque invite que vous envoyez. La transcription affiche une ligne `⧉ Selected N lines from <file>` lorsque cela se produit.744**Contexte de sélection et de fichier ouvert.** Lors de la connexion, le CLI inclut votre sélection d'éditeur actuelle et le chemin du fichier actif comme contexte sur chaque invite que vous envoyez. La transcription affiche une ligne `⧉ Selected N lines from <file>` lorsque cela se produit.

724 745 

746Si vous [mettez en file d'attente un message pendant que Claude travaille](/docs/fr/interactive-mode#queue-messages-while-claude-works), il conserve la sélection que vous aviez lorsque vous avez appuyé sur `Entrée`, quelle que soit votre sélection ultérieure.

747 

725Pour exclure un fichier sensible tel que `.env`, ajoutez une [règle de refus `Read`](/docs/fr/permissions#read-and-edit) pour son chemin. Une règle de refus correspondante empêche à la fois le texte sélectionné et l'avis de fichier ouvert pour ce fichier d'atteindre Claude.748Pour exclure un fichier sensible tel que `.env`, ajoutez une [règle de refus `Read`](/docs/fr/permissions#read-and-edit) pour son chemin. Une règle de refus correspondante empêche à la fois le texte sélectionné et l'avis de fichier ouvert pour ce fichier d'atteindre Claude.

726 749 

727Si vous désactivez le [paramètre Attacher le fichier ouvert](#extension-settings), le CLI reçoit le chemin du fichier actif uniquement lorsque vous avez du texte sélectionné dedans.750Si vous désactivez le [paramètre Attacher le fichier ouvert](#extension-settings), le CLI reçoit le chemin du fichier actif uniquement lorsque vous avez du texte sélectionné dedans.

workflows.md +14 −6

Details

161 Laisser Claude décider avec ultracode161 Laisser Claude décider avec ultracode

162</h3>162</h3>

163 163 

164Ultracode est un paramètre Claude Code qui combine l'[effort de raisonnement](/docs/fr/model-config#adjust-effort-level) `xhigh` avec l'orchestration automatique des workflows. Avec lui activé, Claude planifie un workflow pour chaque tâche substantielle au lieu d'attendre que vous le demandiez.164Ultracode est un paramètre Claude Code qui active l'orchestration automatique des workflows pour la session, au [niveau d'effort](/docs/fr/model-config#adjust-effort-level) auquel la session s'exécute. Avec lui activé, Claude planifie un workflow pour chaque tâche substantielle au lieu d'attendre que vous le demandiez. Activez-le à l'invite Claude Code :

165 165 

166```text wrap theme={null}166```text wrap theme={null}

167/effort ultracode167/effort ultracode

168```168```

169 169 

170Pour démarrer une session avec ultracode déjà activé, lancez avec `claude --effort ultracode`. Nécessite Claude Code v2.1.203 ou ultérieur.170Pour démarrer une session avec ultracode déjà activé, lancez avec `claude --effort ultracode`, ce qui définit également le niveau d'effort sur `xhigh`. Nécessite Claude Code v2.1.203 ou ultérieur.

171 171 

172Pour l'activer pendant que vous choisissez un modèle, déplacez le curseur d'effort du sélecteur `/model` vers `ultracode` avec les touches fléchées. [Ajuster le niveau d'effort](/docs/fr/model-config#adjust-effort-level) énumère les itinéraires qui activent ultracode.172Pour l'activer à partir du curseur `/effort`, appuyez sur `Tab` pour basculer le bouton **Ultracode**, puis `Entrée` pour l'appliquer. [Ajuster le niveau d'effort](/docs/fr/model-config#adjust-effort-level) énumère les itinéraires qui activent ultracode.

173 173 

174Avec ultracode activé, Claude décide quand une tâche justifie un workflow. Une seule demande peut se transformer en plusieurs workflows d'affilée : un pour comprendre le code, un pour faire le changement, et un pour le vérifier. Cela s'applique à chaque tâche de la session, donc chaque demande utilise plus de tokens et prend plus de temps qu'aux niveaux d'effort inférieurs.174Avec ultracode activé, Claude décide quand une tâche justifie un workflow. Une seule demande peut se transformer en plusieurs workflows d'affilée : un pour comprendre le code, un pour faire le changement, et un pour le vérifier. Cela s'applique à chaque tâche de la session, donc chaque demande utilise plus de tokens et prend plus de temps que la même demande sans workflow. Sur un plan d'abonnement, ces tokens sont prélevés sur vos limites d'utilisation, donc une session avec ultracode activé atteint une limite de session ou hebdomadaire plus tôt que le même travail avec lui désactivé.

175 175 

176`/effort ultracode` dure pour la session actuelle ; pour que chaque session commence avec lui, définissez le paramètre [`ultracode`](/docs/fr/settings-reference#ultracode). Revenez avec `/effort high` quand vous retournez au travail de routine. Le menu `/effort` l'offre uniquement [quand ultracode est disponible](/docs/fr/model-config#when-ultracode-is-available).176L'activation d'ultracode vous inscrit déjà aux exécutions volumineuses, donc ces vérifications ne s'appliquent pas pendant qu'il est activé :

177 

178* L'avertissement [`Large workflow`](#cost) n'apparaît pas lors d'une exécution de workflow

179* La [limite de sous-agents concurrents](/docs/fr/sub-agents#concurrent-subagent-limit) de la session n'est pas appliquée pour les sous-agents que Claude génère avec l'outil Agent

180* En mode de permission automatique, vous n'êtes pas invité à [approuver le premier lancement du workflow](#approve-the-plan-before-it-runs)

181 

182`/effort ultracode` dure pour la session actuelle ; pour que chaque session commence avec lui, définissez le paramètre [`ultracode`](/docs/fr/settings-reference#ultracode). Désactivez-le avec `/effort ultracode off` quand vous retournez au travail de routine. Le curseur `/effort` l'offre uniquement [quand ultracode est disponible](/docs/fr/model-config#when-ultracode-is-available).

177 183 

178<h3 id="approve-the-plan-before-it-runs">184<h3 id="approve-the-plan-before-it-runs">

179 Approuver le plan avant qu'il s'exécute185 Approuver le plan avant qu'il s'exécute


516 522 

517Pour désactiver les workflows pour toute votre organisation, définissez `"disableWorkflows": true` dans les [paramètres gérés](/docs/fr/server-managed-settings), ou utilisez le bouton bascule sur la page des [paramètres d'administration Claude Code](https://claude.ai/admin-settings/claude-code).523Pour désactiver les workflows pour toute votre organisation, définissez `"disableWorkflows": true` dans les [paramètres gérés](/docs/fr/server-managed-settings), ou utilisez le bouton bascule sur la page des [paramètres d'administration Claude Code](https://claude.ai/admin-settings/claude-code).

518 524 

519Quand les workflows sont désactivés, les commandes de workflow groupées et la compétence `/workflow-authoring` ne sont pas disponibles, le mot-clé `ultracode` ne déclenche plus une exécution, et `ultracode` est supprimé du menu `/effort`.525Quand les workflows sont désactivés, les commandes de workflow groupées et la compétence `/workflow-authoring` ne sont pas disponibles, le mot-clé `ultracode` ne déclenche plus une exécution, et le bouton bascule **Ultracode** est supprimé de `/effort`. Une exécution qui était déjà en cours continue.

526 

527Désactiver les workflows rend également [ultracode](#let-claude-decide-with-ultracode) indisponible. Aucun paramètre géré n'exclut ultracode seul : partout où il est [disponible](/docs/fr/model-config#when-ultracode-is-available), les utilisateurs peuvent l'activer avec `/effort ultracode`. Une [limite d'effort](/docs/fr/model-config#organization-effort-limits) abaisse le niveau d'effort qu'une session avec ultracode activé exécute, mais ne désactive pas ultracode.

520 528 

521<h2 id="related-resources">529<h2 id="related-resources">

522 Ressources connexes530 Ressources connexes

worktrees.md +3 −3

Details

62Quand vous quittez une session worktree interactive, Claude vérifie le worktree pour le travail que la suppression supprimerait : fichiers modifiés ou non suivis, travail non validé à l'intérieur des sous-modules extraits, et nouveaux commits.62Quand vous quittez une session worktree interactive, Claude vérifie le worktree pour le travail que la suppression supprimerait : fichiers modifiés ou non suivis, travail non validé à l'intérieur des sous-modules extraits, et nouveaux commits.

63 63 

64* **Le worktree est propre** : pour une session sans nom, Claude supprime le worktree et sa branche automatiquement. Une session [nommée](/docs/fr/sessions#name-your-sessions) vous demande d'abord pour que vous puissiez conserver le worktree pour plus tard64* **Le worktree est propre** : pour une session sans nom, Claude supprime le worktree et sa branche automatiquement. Une session [nommée](/docs/fr/sessions#name-your-sessions) vous demande d'abord pour que vous puissiez conserver le worktree pour plus tard

65* **Le worktree contient du travail** : Claude vous demande de conserver ou de supprimer le worktree. Conserver préserve le répertoire et la branche pour que vous puissiez revenir plus tard. Supprimer supprime le répertoire worktree et sa branche, ainsi que tout le travail qu'ils contiennent65* **Le worktree contient du travail** : Claude vous demande de conserver ou de supprimer le worktree. Conserver préserve le répertoire et la branche. Pour revenir plus tard, exécutez la commande `claude --worktree <name> --resume` que Claude Code affiche à la sortie. Supprimer supprime le répertoire worktree et sa branche, ainsi que tout le travail qu'ils contiennent

66* **L'état du worktree ne peut pas être vérifié** : quand Claude Code ne peut pas compter les modifications du worktree ou ne peut pas inspecter les extraits de ses sous-modules, il vous demande plutôt que de supprimer le worktree automatiquement. L'invite nomme ce qu'il n'a pas pu vérifier66* **L'état du worktree ne peut pas être vérifié** : quand Claude Code ne peut pas compter les modifications du worktree ou ne peut pas inspecter les extraits de ses sous-modules, il vous demande plutôt que de supprimer le worktree automatiquement. L'invite nomme ce qu'il n'a pas pu vérifier

67 67 

68Les exécutions non interactives avec `-p` n'ont pas d'invite de sortie, donc Claude ne nettoie pas leurs worktrees, et Claude Code laisse le verrou qu'il a pris sur chacun à la création en place jusqu'à ce qu'une [balayage de verrous obsolètes](#clean-up-subagent-and-background-session-worktrees) ultérieure le libère. Pour en supprimer un, exécutez `git worktree remove` ; si git refuse parce que le worktree est verrouillé, exécutez d'abord `git worktree unlock` dessus.68Les exécutions non interactives avec `-p` n'ont pas d'invite de sortie, donc Claude ne nettoie pas leurs worktrees, et Claude Code laisse le verrou qu'il a pris sur chacun à la création en place jusqu'à ce qu'une [balayage de verrous obsolètes](#clean-up-subagent-and-background-session-worktrees) ultérieure le libère. Pour en supprimer un, exécutez `git worktree remove` ; si git refuse parce que le worktree est verrouillé, exécutez d'abord `git worktree unlock` dessus.


73 Reprendre une session worktree73 Reprendre une session worktree

74</h2>74</h2>

75 75 

76Quand vous reprenez une session qui était à l'intérieur d'un worktree, Claude Code retourne la session à ce worktree. Cela s'applique aux reprises interactives, à `--continue` et `--resume` en [mode non interactif](/docs/fr/headless) avec `-p`, et au SDK Agent. De retour à l'intérieur du worktree, Claude peut toujours le quitter avec l'outil [`ExitWorktree`](/docs/fr/tools-reference).76Quand vous reprenez une session qui s'est terminée à l'intérieur d'un worktree sans [la quitter](#clean-up-worktrees), Claude Code retourne la session à ce worktree. Cela s'applique aux reprises interactives, à `--continue` et `--resume` en [mode non interactif](/docs/fr/headless) avec `-p`, et au SDK Agent. `--continue` sélectionne la session la plus récente enregistrée dans le répertoire à partir duquel vous lancez. De retour à l'intérieur du worktree, Claude peut toujours le quitter avec l'outil [`ExitWorktree`](/docs/fr/tools-reference).

77 77 

78Avant de retourner la session à son worktree, Claude Code vérifie que le worktree est toujours une extraction séparée de la principale, et refuse de réentrer dans un worktree qui échoue la vérification. Pour un git worktree, la vérification lit ses métadonnées git. Un worktree sans métadonnées git, comme celui qu'un hook [`WorktreeCreate`](#non-git-version-control) a créé, peut réussir la vérification ; les cas que Claude Code refuse toujours sont listés avec leurs récupérations sous [Claude Code refuse d'utiliser un worktree](#claude-code-refuses-to-use-a-worktree). Pour les messages et comment récupérer de chacun, voir [La session reprend en dehors de son worktree](#the-session-resumes-outside-its-worktree).78Avant de retourner la session à son worktree, Claude Code vérifie que le worktree est toujours une extraction séparée de la principale, et refuse de réentrer dans un worktree qui échoue la vérification. Pour un git worktree, la vérification lit ses métadonnées git. Un worktree sans métadonnées git, comme celui qu'un hook [`WorktreeCreate`](#non-git-version-control) a créé, peut réussir la vérification ; les cas que Claude Code refuse toujours sont listés avec leurs récupérations sous [Claude Code refuse d'utiliser un worktree](#claude-code-refuses-to-use-a-worktree). Pour les messages et comment récupérer de chacun, voir [La session reprend en dehors de son worktree](#the-session-resumes-outside-its-worktree).

79 79 

80Où vous lancez et comment vous reprenez changent ce que Claude Code réentre :80Où vous lancez et comment vous reprenez changent ce que Claude Code réentre :

81 81 

82* **Répertoire de lancement** : reprenez à partir de l'extraction principale ou d'un autre répertoire du dépôt. Claude Code réentre dans un worktree qu'il a créé avec git sous `.claude/worktrees/` même quand vous lancez depuis l'intérieur. Quand vous lancez depuis l'intérieur de tout autre worktree, Claude Code ne le réentre que s'il peut le justifier de là : un worktree qui est son propre dépôt, un sans métadonnées git, ou un lancement depuis un sous-répertoire d'un worktree que vous avez créé avec `git worktree add` refuse, donc lancez ceux-ci depuis l'extraction principale.82* **Répertoire de lancement** : reprenez avec `--resume` à partir de l'extraction principale ou d'un autre répertoire du dépôt. Claude Code réentre dans un worktree qu'il a créé avec git sous `.claude/worktrees/` même quand vous lancez depuis l'intérieur. Quand vous lancez depuis l'intérieur de tout autre worktree, Claude Code ne le réentre que s'il peut le justifier de là : un worktree qui est son propre dépôt, un sans métadonnées git, ou un lancement depuis un sous-répertoire d'un worktree que vous avez créé avec `git worktree add` refuse, donc lancez ceux-ci depuis l'extraction principale.

83* **`--fork-session`** : la session dupliquée commence dans le répertoire à partir duquel vous avez lancé Claude, et Claude Code laisse le worktree de la session d'origine intact.83* **`--fork-session`** : la session dupliquée commence dans le répertoire à partir duquel vous avez lancé Claude, et Claude Code laisse le worktree de la session d'origine intact.

84* **Worktree supprimé** : si le répertoire worktree n'existe plus, Claude Code reprend la session dans le répertoire à partir duquel vous avez lancé Claude. Il vous dit que le worktree est parti et efface la liaison du worktree de la session.84* **Worktree supprimé** : si le répertoire worktree n'existe plus, Claude Code reprend la session dans le répertoire à partir duquel vous avez lancé Claude. Il vous dit que le worktree est parti et efface la liaison du worktree de la session.

85 85