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) |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) |
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) |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) |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) |
78| `Remote Control is disabled by your organization's policy` | [Dépannage de Remote Control](/docs/fr/remote-control#remote-control-is-disabled-by-your-organizations-policy) |
79| `Remote Control was turned off by your organization's policy` | [Dépannage de Remote Control](/docs/fr/remote-control#remote-control-was-turned-off-by-your-organizations-policy) |
78| `OAuth token revoked` / `OAuth token has expired` | [Authentification](#oauth-token-revoked-or-expired) |80| `OAuth token revoked` / `OAuth token has expired` | [Authentification](#oauth-token-revoked-or-expired) |
81| `Failed to authenticate: OAuth token revoked` | [Authentification](#oauth-token-revoked-or-expired) |
82| `Your account does not have access to Claude. Please login again or contact your administrator.` | [Authentification](#oauth-token-revoked-or-expired) |
79| `API Error: 401 Invalid authentication credentials` | [Authentification](#api-error-401-invalid-authentication-credentials) |83| `API Error: 401 Invalid authentication credentials` | [Authentification](#api-error-401-invalid-authentication-credentials) |
80| `Login expired · Please run /login` | [Authentification](#login-expired) |84| `Login expired · Please run /login` | [Authentification](#login-expired) |
81| `Failed to start OAuth callback server` | [Authentification](#failed-to-start-oauth-callback-server) |85| `Failed to start OAuth callback server` | [Authentification](#failed-to-start-oauth-callback-server) |
186| `The connection dropped while downloading the update` | [Erreurs d'installation](#the-connection-dropped-while-downloading-the-update) |190| `The connection dropped while downloading the update` | [Erreurs d'installation](#the-connection-dropped-while-downloading-the-update) |
187| `Download timed out: exceeded the total deadline` | [Erreurs d'installation](#the-connection-dropped-while-downloading-the-update) |191| `Download timed out: exceeded the total deadline` | [Erreurs d'installation](#the-connection-dropped-while-downloading-the-update) |
188| `--bg and --print conflict` | [Erreurs de ligne de commande](#conflict-between-bg-and-print) |192| `--bg and --print conflict` | [Erreurs de ligne de commande](#conflict-between-bg-and-print) |
193| `Error: Cannot use both --append-subagent-system-prompt and --append-subagent-system-prompt-file. Please use only one.` | [Erreurs de ligne de commande](#conflict-between-a-system-prompt-flag-and-its-file-form) |
189| `Cloud sessions cannot be created from a --restricted session` | [Erreurs de ligne de commande](#cloud-sessions-cannot-be-created-from-a-restricted-session) |194| `Cloud sessions cannot be created from a --restricted session` | [Erreurs de ligne de commande](#cloud-sessions-cannot-be-created-from-a-restricted-session) |
190| `Cloud sessions are disabled by your organization's policy` | [Erreurs de ligne de commande](#cloud-sessions-are-disabled-by-your-organizations-policy) |195| `Cloud sessions are disabled by your organization's policy` | [Erreurs de ligne de commande](#cloud-sessions-are-disabled-by-your-organizations-policy) |
191| `Couldn't verify your organization's policy for cloud sessions` | [Erreurs de ligne de commande](#cloud-sessions-are-disabled-by-your-organizations-policy) |196| `Couldn't verify your organization's policy for cloud sessions` | [Erreurs de ligne de commande](#cloud-sessions-are-disabled-by-your-organizations-policy) |
203| `Could not read Claude Code config` | [Erreurs de ligne de commande](#could-not-read-claude-code-config) |208| `Could not read Claude Code config` | [Erreurs de ligne de commande](#could-not-read-claude-code-config) |
204| `Could not import <server>: <reason>` | [Erreurs de ligne de commande](#could-not-import-a-server-from-claude-desktop) |209| `Could not import <server>: <reason>` | [Erreurs de ligne de commande](#could-not-import-a-server-from-claude-desktop) |
205| `Cannot add MCP server to scope: managed` | [Erreurs de ligne de commande](#cannot-add-mcp-server-to-the-managed-scope) |210| `Cannot add MCP server to scope: managed` | [Erreurs de ligne de commande](#cannot-add-mcp-server-to-the-managed-scope) |
211| `Cannot add MCP server: your organization's managed settings allow only MCP servers that plugins provide` | [Erreurs de ligne de commande](#cannot-add-mcp-server-when-managed-settings-allow-only-plugin-servers) |
206| `is Anthropic-hosted and doesn't support local OAuth` | [Erreurs de ligne de commande](#anthropic-hosted-and-doesnt-support-local-oauth) |212| `is Anthropic-hosted and doesn't support local OAuth` | [Erreurs de ligne de commande](#anthropic-hosted-and-doesnt-support-local-oauth) |
207| `Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes` | [Erreurs de ligne de commande](#cant-read-mcp-json) |213| `Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes` | [Erreurs de ligne de commande](#cant-read-mcp-json) |
208| `MCP server "<name>" was not saved to` / `was not removed from` | [Erreurs de ligne de commande](#mcp-server-was-not-saved-or-removed) |214| `MCP server "<name>" was not saved to` / `was not removed from` | [Erreurs de ligne de commande](#mcp-server-was-not-saved-or-removed) |
246| `Marketplace name impersonates an official Anthropic/Claude marketplace` | [Erreurs de plugin](#claude-code-refuses-the-marketplace-name) |252| `Marketplace name impersonates an official Anthropic/Claude marketplace` | [Erreurs de plugin](#claude-code-refuses-the-marketplace-name) |
247| `Marketplace "<name>" is already added from a different source` | [Erreurs de plugin](#marketplace-is-already-added-from-a-different-source) |253| `Marketplace "<name>" is already added from a different source` | [Erreurs de plugin](#marketplace-is-already-added-from-a-different-source) |
248| `"<name>" is another spelling of "<reserved>", a reserved marketplace name` | [Erreurs de plugin](#marketplace-name-is-another-spelling-of-a-reserved-name) |254| `"<name>" is another spelling of "<reserved>", a reserved marketplace name` | [Erreurs de plugin](#marketplace-name-is-another-spelling-of-a-reserved-name) |
255| `Marketplace "<name>" is added but ignored` | [Dépannage des plugins](/docs/fr/plugins/troubleshooting#marketplace-is-added-but-ignored) |
256| `Marketplace "<name>" is registered but was refused (see the debug log)` | [Dépannage des plugins](/docs/fr/plugins/troubleshooting#marketplace-is-added-but-ignored) |
249| `references ${user_config.*} in a shell-form command` | [Erreurs de plugin](#plugin-command-references-user-config) |257| `references ${user_config.*} in a shell-form command` | [Erreurs de plugin](#plugin-command-references-user-config) |
250| `Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command` | [Erreurs de plugin](#plugin-command-references-user-config) |258| `Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command` | [Erreurs de plugin](#plugin-command-references-user-config) |
251| `headersHelper for MCP server '<name>' references ${user_config.*}` | [Erreurs de plugin](#plugin-command-references-user-config) |259| `headersHelper for MCP server '<name>' references ${user_config.*}` | [Erreurs de plugin](#plugin-command-references-user-config) |
252| `Plugin archive integrity check failed` | [Erreurs de plugin](#plugin-archive-integrity-check-failed) |260| `Plugin archive integrity check failed` | [Erreurs de plugin](#plugin-archive-integrity-check-failed) |
261| `An npm plugin source must name a registry package` | [Dépannage des plugins](/docs/fr/plugins/troubleshooting#an-npm-plugin-source-must-name-a-registry-package) |
253| `path escapes plugin directory` | [Erreurs de plugin](#path-escapes-plugin-directory) |262| `path escapes plugin directory` | [Erreurs de plugin](#path-escapes-plugin-directory) |
254| `path could not be checked` | [Erreurs de plugin](#path-could-not-be-checked) |263| `path could not be checked` | [Erreurs de plugin](#path-could-not-be-checked) |
255| `its marketplace entry path does not stay inside the marketplace directory` | [Erreurs de plugin](#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory) |264| `its marketplace entry path does not stay inside the marketplace directory` | [Erreurs de plugin](#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory) |
359 368
360Claude Code réessaie ces défaillances :369Claude Code réessaie ces défaillances :
361 370
362* Les erreurs serveur, les réponses surchargées et les délais d'attente de requête qui arrivent avant que l'une des réponses de Claude ne soit diffusée.371* Les erreurs serveur, les réponses surchargées et les délais d'attente de requête qui arrivent avant que la moindre partie de la réponse de Claude n'ait été envoyée en streaming.
363* Les connexions interrompues. Lorsqu'une connexion s'interrompt au milieu d'une requête avant que Claude n'ait complété une partie de sa réponse, y compris sa réflexion, Claude Code rémet la requête avec le même backoff et le tour continue, même si du texte avait déjà commencé à être diffusé. Lorsqu'elle s'interrompt après que Claude a terminé sa réflexion mais avant qu'il n'ait commencé un texte ou un appel d'outil, Claude Code rémet plutôt la requête jusqu'à deux fois en succession rapide, et termine le tour avec `Connection lost before a response was produced` si la connexion continue à s'interrompre à ce stade.372* Une erreur serveur ou une réponse surchargée qui arrive après que Claude a terminé sa réflexion mais avant qu'il n'ait commencé un texte ou un appel d'outil. Claude Code réessaie une erreur serveur à ce stade jusqu'à deux fois. Avant v2.1.284, Claude Code terminait le tour avec l'erreur à ce stade.
373* Les connexions interrompues. Lorsqu'une connexion s'interrompt au milieu d'une requête avant que Claude n'ait complété une partie de sa réponse, y compris sa réflexion, Claude Code renvoie la requête avec le même backoff et le tour continue, même si du texte avait déjà commencé à être envoyé en streaming. Lorsqu'elle s'interrompt après que Claude a terminé sa réflexion mais avant qu'il n'ait commencé un texte ou un appel d'outil, Claude Code renvoie plutôt la requête jusqu'à deux fois en succession rapide, et termine le tour avec `Connection lost before a response was produced` si la connexion continue à s'interrompre à ce stade.
364* Une connexion que Claude Code détecte comme ayant été interrompue par votre ordinateur qui s'endort au milieu d'une requête. Claude Code la compte comme une connexion interrompue selon les règles ci-dessus ; une fois que l'étiquette de tentative nomme la raison spécifique, elle lit `Connection lost while your computer was asleep`, et si le tour se termine après que Claude a terminé sa réflexion mais avant un texte ou un appel d'outil, le message lit `Your computer went to sleep before a response was produced`.374* Une connexion que Claude Code détecte comme ayant été interrompue par votre ordinateur qui s'endort au milieu d'une requête. Claude Code la compte comme une connexion interrompue selon les règles ci-dessus ; une fois que l'étiquette de tentative nomme la raison spécifique, elle lit `Connection lost while your computer was asleep`, et si le tour se termine après que Claude a terminé sa réflexion mais avant un texte ou un appel d'outil, le message lit `Your computer went to sleep before a response was produced`.
365* Un flux de réponse bloqué, lorsque les en-têtes de réponse sont arrivés mais aucune de la réponse de Claude n'est arrivée, ou lorsque Claude a terminé sa réflexion mais n'a pas commencé un texte ou un appel d'outil : Claude Code abandonne la connexion bloquée et rémet la requête au maximum une fois, en dehors du budget de 10 tentatives ci-dessus. Si la réponse se bloque une deuxième fois après que Claude a terminé sa réflexion mais avant un texte ou un appel d'outil, Claude Code termine le tour avec `The response stalled before a response was produced`.375* Un flux de réponse bloqué, lorsque les en-têtes de réponse sont arrivés mais aucune partie de la réponse de Claude n'est arrivée, ou lorsque Claude a terminé sa réflexion mais n'a pas commencé un texte ou un appel d'outil : Claude Code abandonne la connexion bloquée et renvoie la requête au maximum une fois, en dehors du budget de 10 tentatives ci-dessus. Si la réponse se bloque une deuxième fois après que Claude a terminé sa réflexion mais avant un texte ou un appel d'outil, Claude Code termine le tour avec `The response stalled before a response was produced`.
366* Une requête de diffusion à laquelle l'API ne répond jamais avec des en-têtes de réponse, sur une connexion où le [délai de premier octet s'exécute](/docs/fr/network-config#streaming-idle-watchdogs) : Claude Code l'abandonne à la date limite et le renvoie au maximum une fois par requête de modèle, dans le budget de tentatives, puis termine le tour avec [No response from API](#no-response-from-api) si cette tentative reste sans réponse aussi. Sur d'autres connexions, la requête attend `API_TIMEOUT_MS`. Lorsque vous définissez `CLAUDE_CODE_RETRY_WATCHDOG`, le plafond d'une tentative ne s'applique pas.376* Une requête en streaming à laquelle l'API ne répond jamais avec des en-têtes de réponse, sur une connexion où le [délai de premier octet s'exécute](/docs/fr/network-config#streaming-idle-watchdogs) : Claude Code l'abandonne à la date limite et la renvoie au maximum une fois par requête de modèle, dans le budget de tentatives, puis termine le tour avec [No response from API](#no-response-from-api) si cette tentative reste sans réponse aussi. Sur d'autres connexions, la requête attend `API_TIMEOUT_MS`. Lorsque vous définissez `CLAUDE_CODE_RETRY_WATCHDOG`, le plafond d'une tentative ne s'applique pas.
367* Les throttles 429 temporaires, mais pas le `429` de limite de dépenses d'une passerelle, qui n'est pas un throttle ; voir [Spend limit reached](#spend-limit-reached).377* Les throttles 429 temporaires, mais pas le `429` de limite de dépenses d'une passerelle, qui n'est pas un throttle ; voir [Spend limit reached](#spend-limit-reached).
368 * Lorsque vous êtes connecté avec un abonnement claude.ai, cela inclut les throttles 429 qui ne portent pas les en-têtes de quota de votre plan. Avant v2.1.199, Claude Code ne réessayait ces throttles que pour les connexions par clé API et Enterprise.378 * Lorsque vous êtes connecté avec un abonnement claude.ai, cela inclut les throttles 429 qui ne portent pas les en-têtes de quota de votre plan. Avant v2.1.199, Claude Code ne réessayait ces throttles que pour les connexions par clé API et Enterprise.
369* Une requête rejetée parce que l'entrée plus `max_tokens` dépasse la limite de contexte. La renvoyer inchangée échouerait de la même manière, donc Claude Code réessaie avec un `max_tokens` réduit, et arrête de réessayer et compacte à la place dans deux cas :379* Une requête rejetée parce que l'entrée plus `max_tokens` dépasse la limite de contexte. La renvoyer inchangée échouerait de la même manière, donc Claude Code réessaie avec un `max_tokens` réduit, et arrête de réessayer et compacte à la place dans deux cas :
370 * Lorsqu'aucune réduction ne peut tenir, par exemple lorsque la conversation elle-même remplit presque la fenêtre de contexte.380 * Lorsqu'aucune réduction ne peut tenir, par exemple lorsque la conversation elle-même remplit presque la fenêtre de contexte.
371 * Lorsqu'une tentative ne peut pas réduire davantage `max_tokens`. Avant v2.1.218, Claude Code pouvait renvoyer une requête réduite qui ne tenait toujours pas, par exemple lorsque le budget de réflexion étendue dépassait le contexte restant, jusqu'à ce que le budget de tentatives s'épuise.381 * Lorsqu'une tentative ne peut pas réduire davantage `max_tokens`. Avant v2.1.218, Claude Code pouvait renvoyer une requête réduite qui ne tenait toujours pas, par exemple lorsque le budget de réflexion étendue dépassait le contexte restant, jusqu'à ce que le budget de tentatives s'épuise.
372* Une credential Google Cloud expirée ou manquante sur [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai), ou des credentials AWS qui ne se chargent pas sur votre machine. Claude Code rejette ses credentials en cache et réessaie jusqu'à deux fois, puis signale l'erreur pour que vous puissiez vous réauthentifier immédiatement, comme décrit sous [Could not load AWS or Google Cloud credentials](#could-not-load-aws-or-google-cloud-credentials). Avant v2.1.228, Claude Code réessayait une credential Google Cloud défaillante à travers le budget de tentatives complet avant d'afficher l'erreur.382* Des identifiants Google Cloud expirés ou manquants sur [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai), ou des identifiants AWS qui ne se chargent pas sur votre machine. Claude Code rejette ses identifiants en cache et réessaie jusqu'à deux fois, puis signale l'erreur pour que vous puissiez vous réauthentifier immédiatement, comme décrit sous [Could not load AWS or Google Cloud credentials](#could-not-load-aws-or-google-cloud-credentials). Avant v2.1.228, Claude Code réessayait des identifiants Google Cloud défaillants à travers le budget de tentatives complet avant d'afficher l'erreur.
373* Un `401` ou `403` de l'API Anthropic, directement ou via une [passerelle LLM](/docs/fr/llm-gateway), tandis qu'un script [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) fournit la credential. Claude Code réexécute le script et réessaie avec sa sortie fraîche, dans le budget de tentatives complet. Lorsque le script lui-même échoue à la réexécution, Claude Code affiche [Your apiKeyHelper script is failing](#your-apikeyhelper-script-is-failing) à la place.383* Un `401` ou `403` de l'API Anthropic, directement ou via une [passerelle LLM](/docs/fr/llm-gateway), tandis qu'un script [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) fournit les identifiants. Claude Code réexécute le script et réessaie avec sa sortie fraîche, dans le budget de tentatives complet. Lorsque le script lui-même échoue à la réexécution, Claude Code affiche [Your apiKeyHelper script is failing](#your-apikeyhelper-script-is-failing) à la place.
374 384
375Avant v2.1.227, `Connection lost before a response was produced` lisait `Connection closed while thinking, before producing a response` et `The response stalled before a response was produced` lisait `Response stalled while thinking, before producing a response`.385Avant v2.1.227, `Connection lost before a response was produced` lisait `Connection closed while thinking, before producing a response` et `The response stalled before a response was produced` lisait `Response stalled while thinking, before producing a response`.
376 386
377Claude Code ne réessaie pas ces défaillances :387Claude Code ne réessaie pas ces défaillances :
378 388
379* Une défaillance de validation de certificat TLS, telle qu'un proxy inspectant TLS, un bundle `NODE_EXTRA_CA_CERTS` manquant, ou un certificat expiré. Claude Code signale l'erreur à la première tentative, pour que vous puissiez corriger la configuration du certificat immédiatement ; voir [SSL certificate errors](#ssl-certificate-errors). Claude Code réessaie toujours les conditions TLS transitoires telles qu'un délai d'attente de poignée de main. Avant v2.1.199, Claude Code réessayait les défaillances de certificat à travers le budget de tentatives complet avant d'afficher l'erreur.389* Une défaillance de validation de certificat TLS, telle qu'un proxy inspectant TLS, un bundle `NODE_EXTRA_CA_CERTS` manquant, ou un certificat expiré. Claude Code signale l'erreur à la première tentative, pour que vous puissiez corriger la configuration du certificat immédiatement ; voir [SSL certificate errors](#ssl-certificate-errors). Claude Code réessaie toujours les conditions TLS transitoires telles qu'un délai d'attente de poignée de main. Avant v2.1.199, Claude Code réessayait les défaillances de certificat à travers le budget de tentatives complet avant d'afficher l'erreur.
380* Une erreur serveur, une connexion interrompue, ou un flux bloqué qui arrive après que Claude a complété un bloc de texte ou un appel d'outil, ou en a commencé un après avoir terminé sa réflexion, mais avant de terminer la réponse. Claude Code ne rémet pas la requête, car cela pourrait exécuter les mêmes appels d'outil deux fois. Il conserve ce que Claude a complété, exécute tous les appels d'outil que Claude a terminés, et continue le tour à partir de leurs résultats. Pour ce que vous voyez dans une session interactive et dans une session non-interactive, lisez [The response above may be incomplete](#the-response-above-may-be-incomplete). Avant v2.1.199, Claude Code rejetait la sortie partielle et signalait le tour entier comme une erreur lorsqu'une erreur serveur arrivait au milieu du flux.390* Une erreur serveur, une connexion interrompue, ou un flux bloqué qui arrive après que Claude a complété un bloc de texte ou un appel d'outil, ou en a commencé un après avoir terminé sa réflexion, mais avant de terminer la réponse. Claude Code ne renvoie pas la requête, car cela pourrait exécuter les mêmes appels d'outils deux fois. Il conserve ce que Claude a complété, exécute tous les appels d'outils que Claude a terminés, et continue le tour à partir de leurs résultats. Pour ce que vous voyez dans une session interactive et dans une session non-interactive, lisez [The response above may be incomplete](#the-response-above-may-be-incomplete). Avant v2.1.199, Claude Code rejetait la sortie partielle et signalait le tour entier comme une erreur lorsqu'une erreur serveur arrivait au milieu du flux.
381* Une défaillance qui arrive après que Claude a terminé la réponse : rien n'a besoin de réessai, donc Claude Code conserve la réponse complète et termine le tour normalement.391* Une défaillance qui arrive après que Claude a terminé la réponse : rien n'a besoin d'être réessayé, donc Claude Code conserve la réponse complète et termine le tour normalement.
382* Une [réponse de diffusion Amazon Bedrock avec un type de contenu inattendu](#bedrock-streaming-response-has-an-unexpected-content-type), parce que la passerelle ou le proxy réécrivant la réponse réécrirait le réessai de la même manière. Nécessite Claude Code v2.1.208 ou ultérieur.392* Une [réponse en streaming Amazon Bedrock avec un type de contenu inattendu](#bedrock-streaming-response-has-an-unexpected-content-type), parce que la passerelle ou le proxy réécrivant la réponse réécrirait la nouvelle tentative de la même manière. Nécessite Claude Code v2.1.208 ou ultérieur.
383* Un réessai non-diffusé d'une requête de diffusion défaillante qui obtient un statut de succès mais [aucun message API Claude dans le corps](#api-returned-an-empty-or-malformed-response). Claude Code termine le tour avec cette erreur.393* Une nouvelle tentative sans streaming d'une requête en streaming défaillante qui obtient un statut de succès mais [aucun message API Claude dans le corps](#api-returned-an-empty-or-malformed-response). Claude Code termine le tour avec cette erreur.
384* Une requête que la vérification de politique de votre organisation a refusée, qui apparaît comme une ligne `API Error:` portant le message de refus. Les administrateurs de votre organisation configurent la vérification avec [Inference hooks](https://platform.claude.com/docs/en/manage-claude/inference-hooks), une fonctionnalité Claude Enterprise, et le message se termine par les instructions qu'ils ont configurées, ou par défaut vous dit de les contacter. Claude Code ne renvoie pas la requête refusée au même modèle ou à un [modèle de secours](/docs/fr/model-config#fallback-model-chains), parce que le refus concerne le contenu de la requête plutôt que le modèle. Avant v2.1.239, Claude Code pouvait renvoyer une requête refusée, sans diffusion ou sur un modèle de secours configuré, avant de vous afficher le refus.394* Une requête que la vérification de politique de votre organisation a refusée, qui apparaît comme une ligne `API Error:` portant le message de refus. Les administrateurs de votre organisation configurent la vérification avec [Inference hooks](https://platform.claude.com/docs/en/manage-claude/inference-hooks), une fonctionnalité Claude Enterprise, et le message se termine par les instructions qu'ils ont configurées, ou par défaut vous dit de les contacter. Claude Code ne renvoie pas la requête refusée au même modèle ou à un [modèle de secours](/docs/fr/model-config#fallback-model-chains), parce que le refus concerne le contenu de la requête plutôt que le modèle. Avant v2.1.239, Claude Code pouvait renvoyer une requête refusée, sans streaming ou sur un modèle de secours configuré, avant de vous afficher le refus.
385 395
386<h3 id="what-you-see-while-claude-code-retries-or-waits">396<h3 id="what-you-see-while-claude-code-retries-or-waits">
387 Ce que vous voyez pendant que Claude Code réessaie ou attend397 Ce que vous voyez pendant que Claude Code réessaie ou attend
388</h3>398</h3>
389 399
390Pendant le réessai, le spinner affiche un compte à rebours `Retrying in Ns · attempt x/y` après une étiquette d'erreur. L'étiquette nomme la raison spécifique de la première tentative pour les défaillances sur lesquelles vous pouvez agir immédiatement : le réseau est en panne, une poignée de main TLS a échoué, ou vous avez atteint une limite de débit. Pour les autres erreurs, elle lit `API error` au début. À partir de v2.1.198, elle bascule vers la raison spécifique de la troisième tentative, ou à la tentative finale lorsque `CLAUDE_CODE_MAX_RETRIES` permet moins de trois ; les versions antérieures ne basculent qu'à la tentative finale.400Pendant les nouvelles tentatives, le spinner affiche un compte à rebours `Retrying in Ns · attempt x/y` après une étiquette d'erreur. L'étiquette nomme la raison spécifique dès la première tentative pour les défaillances sur lesquelles vous pouvez agir immédiatement : le réseau est en panne, une poignée de main TLS a échoué, ou vous avez atteint une limite de débit. Pour les autres erreurs, elle lit `API error` au début. À partir de v2.1.198, elle bascule vers la raison spécifique à partir de la troisième tentative, ou à la tentative finale lorsque `CLAUDE_CODE_MAX_RETRIES` permet moins de trois ; les versions antérieures ne basculent qu'à la tentative finale.
391 401
392À partir de v2.1.198, le conseil du spinner habituel est supprimé pendant les réessais. Une fois que la raison de l'erreur est révélée, si la défaillance est une surcharge 529, la ligne en dessous du compte à rebours nomme également où vérifier l'état du service : `status.claude.com` sur l'API Anthropic, ou l'hôte du fournisseur ou de la passerelle nommé dans le message sur d'autres configurations.402À partir de v2.1.198, le conseil du spinner habituel est supprimé pendant les nouvelles tentatives. Une fois que la raison de l'erreur est révélée, si la défaillance est une surcharge 529, la ligne en dessous du compte à rebours nomme également où vérifier l'état du service : `status.claude.com` sur l'API Anthropic, ou l'hôte du fournisseur ou de la passerelle nommé dans le message sur d'autres configurations.
393 403
394Si aucune donnée n'arrive sur le flux de réponse pendant 20 secondes tandis qu'une requête est toujours en attente, le spinner affiche `Waiting for API response · will retry in … · check your network` avant que tout réessai n'ait commencé. La requête n'a pas encore échoué : le compte à rebours s'exécute jusqu'au point où Claude Code abandonne la connexion bloquée. Après l'abandon, ce que vous voyez dépend de la distance parcourue par la réponse :404Si aucune donnée n'arrive sur le flux de réponse pendant 20 secondes tandis qu'une requête est toujours en attente, le spinner affiche `Waiting for API response · will retry in … · check your network` avant que toute nouvelle tentative n'ait commencé. La requête n'a pas encore échoué : le compte à rebours s'exécute jusqu'au point où Claude Code abandonne la connexion bloquée. Après l'abandon, ce que vous voyez dépend de la distance parcourue par la réponse :
395 405
396* Avant que Claude n'ait complété un bloc de texte ou un appel d'outil, ou en ait commencé un après avoir terminé sa réflexion, Claude Code réessaie la requête ou termine le tour avec une erreur. [Automatic retries](#automatic-retries) dit quels blocages il réessaie et combien de fois.406* Avant que Claude n'ait complété un bloc de texte ou un appel d'outil, ou en ait commencé un après avoir terminé sa réflexion, Claude Code réessaie la requête ou termine le tour avec une erreur. [Automatic retries](#automatic-retries) dit quels blocages il réessaie et combien de fois.
397* Après que Claude a complété un bloc de texte ou un appel d'outil, ou en a commencé un après avoir terminé sa réflexion, mais avant que Claude n'ait terminé la réponse, Claude Code conserve ce que Claude a complété, continue le tour à partir de tous les appels d'outil que Claude a terminés, et affiche [The response above may be incomplete](#the-response-above-may-be-incomplete). Dans une session non-interactive, et pour la réponse d'un sous-agent dans toute session, Claude Code peut d'abord inviter Claude à continuer la réponse ; cette entrée dit quand il le fait et quand vous voyez toujours l'avis là.407* Après que Claude a complété un bloc de texte ou un appel d'outil, ou en a commencé un après avoir terminé sa réflexion, mais avant que Claude n'ait terminé la réponse, Claude Code conserve ce que Claude a complété, continue le tour à partir de tous les appels d'outils que Claude a terminés, et affiche [The response above may be incomplete](#the-response-above-may-be-incomplete). Dans une session non-interactive, et pour la réponse d'un sous-agent dans toute session, Claude Code peut d'abord demander à Claude de continuer la réponse ; cette entrée dit quand il le fait et quand vous voyez toujours l'avis là.
398* Après que Claude a terminé la réponse, Claude Code termine le tour normalement.408* Après que Claude a terminé la réponse, Claude Code termine le tour normalement.
399 409
400La bannière s'efface d'elle-même une fois que les données reprennent ou qu'un réessai réussit. Si elle réapparaît à chaque tentative, traitez-la comme un [problème réseau](#unable-to-connect-to-api). Avant v2.1.185, la bannière apparaissait après 10 secondes avec un libellé différent.410La bannière s'efface d'elle-même une fois que les données reprennent ou qu'une nouvelle tentative réussit. Si elle réapparaît à chaque tentative, traitez-la comme un [problème réseau](#unable-to-connect-to-api). Avant v2.1.185, la bannière apparaissait après 10 secondes avec un libellé différent.
401 411
402Pendant que Claude consulte le [conseiller](/docs/fr/advisor), la bannière apparaît après 90 secondes sans données au lieu de 20, parce qu'un long examen du conseiller peut ne rien envoyer pendant bien plus de 20 secondes. Avant v2.1.214, le seuil de 20 secondes s'appliquait également pendant les appels du conseiller, donc la bannière apparaissait pendant les examens du conseiller même lorsque rien n'allait mal.412Pendant que Claude consulte le [conseiller](/docs/fr/advisor), la bannière apparaît après 90 secondes sans données au lieu de 20, parce qu'un long examen du conseiller peut ne rien envoyer pendant bien plus de 20 secondes. Avant v2.1.214, le seuil de 20 secondes s'appliquait également pendant les appels du conseiller, donc la bannière apparaissait pendant les examens du conseiller même lorsque rien n'allait mal.
403 413
404<h3 id="tune-retry-behavior">414<h3 id="tune-retry-behavior">
405 Ajuster le comportement de réessai415 Ajuster le comportement des nouvelles tentatives
406</h3>416</h3>
407 417
408Vous pouvez ajuster le comportement de réessai avec ces variables d'environnement :418Vous pouvez ajuster le comportement des nouvelles tentatives avec ces variables d'environnement :
409 419
410| Variable | Par défaut | Effet |420| Variable | Par défaut | Effet |
411| :- | :- | :- |421| :- | :- | :- |
412| [`CLAUDE_CODE_MAX_RETRIES`](/docs/fr/env-vars) | 10 | Nombre de tentatives de réessai. Plafonné à 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. Réduisez-le pour afficher les défaillances plus rapidement dans les scripts. |422| [`CLAUDE_CODE_MAX_RETRIES`](/docs/fr/env-vars) | 10 | Nombre de nouvelles tentatives. Plafonné à 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. Réduisez-le pour afficher les défaillances plus rapidement dans les scripts. |
413| [`CLAUDE_CODE_RETRY_WATCHDOG`](/docs/fr/env-vars) | non défini | Définissez sur `1` dans les sessions sans surveillance telles que les travaux CI pour réessayer 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 obtient un `429` qui signale une limite de dépenses ou des crédits d'utilisation épuisés, même un provenant d'un [plafond de dépenses de passerelle](#spend-limit-reached) qui se réinitialise selon un calendrier. Avant v2.1.239, le watchdog réessayait ces indéfiniment. Pour les requêtes en mode rapide, voir [Handle rate limits](/docs/fr/fast-mode#handle-rate-limits). 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 serveur, les délais d'attente et les connexions interrompues, à 300, environ trois heures de backoff, et supprime le plafond de 15 sur `CLAUDE_CODE_MAX_RETRIES` si vous définissez explicitement cette variable. |423| [`CLAUDE_CODE_RETRY_WATCHDOG`](/docs/fr/env-vars) | non défini | Définissez sur `1` dans les sessions sans surveillance telles que les travaux CI pour réessayer 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 obtient un `429` qui signale une limite de dépenses ou des crédits d'utilisation épuisés, même un provenant d'un [plafond de dépenses de passerelle](#spend-limit-reached) qui se réinitialise selon un calendrier. Avant v2.1.239, le watchdog réessayait ceux-ci indéfiniment. Pour les requêtes en mode rapide, voir [Handle rate limits](/docs/fr/fast-mode#handle-rate-limits). 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 serveur, les délais d'attente et les connexions interrompues, à 300, environ trois heures de backoff, et supprime le plafond de 15 sur `CLAUDE_CODE_MAX_RETRIES` si vous définissez explicitement cette variable. |
414| [`API_TIMEOUT_MS`](/docs/fr/env-vars) | 600000 | Délai d'attente par requête en millisecondes. Augmentez-le pour les réseaux lents ou les proxies. Il plafonne également la durée pendant laquelle Claude Code attend les en-têtes de réponse, décrite dans [No response from API](#no-response-from-api). |424| [`API_TIMEOUT_MS`](/docs/fr/env-vars) | 600000 | Délai d'attente par requête en millisecondes. Augmentez-le pour les réseaux lents ou les proxys. Il plafonne également la durée pendant laquelle Claude Code attend les en-têtes de réponse, décrite dans [No response from API](#no-response-from-api). |
415| [`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`](/docs/fr/env-vars) | non défini | Délai en millisecondes pour le premier octet de réponse d'une requête de diffusion. Nécessite Claude Code v2.1.242 ou ultérieur. Pour savoir comment Claude Code choisit le délai lorsque ceci n'est pas défini, voir [No response from API](#no-response-from-api). |425| [`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`](/docs/fr/env-vars) | non défini | Délai en millisecondes pour le premier octet de réponse d'une requête en streaming. Nécessite Claude Code v2.1.242 ou ultérieur. Pour savoir comment Claude Code choisit le délai lorsque ceci n'est pas défini, voir [No response from API](#no-response-from-api). |
416 426
417<h2 id="server-errors">427<h2 id="server-errors">
418 Erreurs serveur428 Erreurs serveur
419</h2>429</h2>
420 430
421La plupart de ces erreurs proviennent du fournisseur d'inférence : le service Anthropic sur l'API Anthropic, et le service derrière le point de terminaison de ce fournisseur sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, ou une passerelle personnalisée. [Le mode auto ne peut pas déterminer la sécurité d'une action](#auto-mode-cannot-determine-the-safety-of-an-action) et [L'agent s'est arrêté prématurément en raison d'une erreur API](#agent-terminated-early-due-to-an-api-error) couvrent également les causes de votre côté, comme un compte Amazon Bedrock qui ne peut pas invoquer le modèle de classification ou un sous-agent qui a atteint une limite d'utilisation.431La plupart de ces erreurs proviennent du fournisseur d'inférence : le service Anthropic sur l'API Anthropic, et le service derrière l'endpoint de ce fournisseur sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, ou une passerelle personnalisée. [Le mode auto ne peut pas déterminer la sécurité d'une action](#auto-mode-cannot-determine-the-safety-of-an-action) et [L'agent s'est arrêté prématurément en raison d'une erreur API](#agent-terminated-early-due-to-an-api-error) couvrent également les causes de votre côté, comme un compte Amazon Bedrock qui ne peut pas invoquer le modèle du classifieur ou un sous-agent qui a atteint une limite d'utilisation.
422 432
423<h3 id="api-error-500-internal-server-error">433<h3 id="api-error-500-internal-server-error">
424 Erreur API : 500 Erreur serveur interne434 Erreur API : 500 Erreur serveur interne
495Claude Code définit le délai d'attente des en-têtes de réponse de la première tentative et le délai d'attente de la tentative de réessai séparément :505Claude Code définit le délai d'attente des en-têtes de réponse de la première tentative et le délai d'attente de la tentative de réessai séparément :
496 506
497* **Première tentative** : [`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`](/docs/fr/env-vars) quand vous le définissez à 1 ou plus, limité entre 10 secondes et 30 minutes. Sinon, Claude Code utilise le délai d'attente du watchdog au niveau des octets listé dans [Watchdogs d'inactivité de streaming](/docs/fr/network-config#streaming-idle-watchdogs), donc les variables qui changent ce délai d'attente changent aussi cette attente. De toute façon, Claude Code ajoute une seconde pour chaque 32 Ko de corps de demande.507* **Première tentative** : [`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`](/docs/fr/env-vars) quand vous le définissez à 1 ou plus, limité entre 10 secondes et 30 minutes. Sinon, Claude Code utilise le délai d'attente du watchdog au niveau des octets listé dans [Watchdogs d'inactivité de streaming](/docs/fr/network-config#streaming-idle-watchdogs), donc les variables qui changent ce délai d'attente changent aussi cette attente. De toute façon, Claude Code ajoute une seconde pour chaque 32 Ko de corps de demande.
498* **Tentative de réessai** : une seconde de moins que `API_TIMEOUT_MS`, juste sous 10 minutes par défaut, afin que la tentative de réessai puisse dépasser une passerelle qui retient la réponse jusqu'à ce que la génération soit terminée. Sur Amazon Bedrock, la tentative de réessai utilise la même date limite que la première tentative, et le message affiche une durée au lieu de deux.508* **Tentative de réessai** : une seconde de moins que `API_TIMEOUT_MS`, juste sous 10 minutes par défaut, afin que la tentative de réessai puisse dépasser un proxy ou une passerelle qui retient la réponse jusqu'à ce que la génération soit terminée. Sur Amazon Bedrock, la tentative de réessai utilise la même date limite que la première tentative, et le message affiche une durée au lieu de deux.
499 509
500Aucune attente ne dépasse une seconde de moins qu'un `API_TIMEOUT_MS` positif, et un `API_TIMEOUT_MS` positif inférieur à 11 secondes désactive la date limite. Le watchdog au niveau des octets ne démarre qu'une fois les en-têtes de réponse arrivés, donc une réponse qui arrête d'envoyer des octets après cela suit les [règles de flux interrompu](#automatic-retries) au lieu de cette date limite.510Aucune attente ne dépasse une seconde de moins qu'un `API_TIMEOUT_MS` positif, et un `API_TIMEOUT_MS` positif inférieur à 11 secondes désactive la date limite. Le watchdog au niveau des octets ne démarre qu'une fois les en-têtes de réponse arrivés, donc une réponse qui arrête d'envoyer des octets après cela suit les [règles de flux interrompu](#automatic-retries) au lieu de cette date limite.
501 511
541 551
542* 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).552* 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).
543* Quand l'un de ces échecs arrive après que Claude ait terminé la réponse, Claude Code conserve la réponse complète et termine le tour normalement, sans cet avis. Avant v2.1.222, Claude Code affichait cet avis quand la connexion était interrompue ou bloquée après la fin de la réponse, et signalait le tour comme une erreur même si la réponse était complète.553* Quand l'un de ces échecs arrive après que Claude ait terminé la réponse, Claude Code conserve la réponse complète et termine le tour normalement, sans cet avis. Avant v2.1.222, Claude Code affichait cet avis quand la connexion était interrompue ou bloquée après la fin de la réponse, et signalait le tour comme une erreur même si la réponse était complète.
544* Dans une [session non-interactive](/docs/fr/headless), comme une exécution `-p`, une exécution [Agent SDK](/docs/fr/agent-sdk/overview), ou une [session cloud](/docs/fr/claude-code-on-the-web), vous n'avez pas à envoyer `continue` vous-même quand la réponse coupée est dans la conversation principale et contient du texte mais pas d'appels d'outil : Claude Code conserve la sortie partielle et invite Claude à continuer à partir d'où il s'est arrêté, jusqu'à trois fois de suite. Vous voyez cet avis pour une telle réponse seulement une fois que Claude Code a épuisé ces continuations. Avant v2.1.246, Claude Code terminait un tour non-interactif avec cet avis à la première coupure.554* Dans une [session non interactive](/docs/fr/headless), comme une exécution `-p`, une exécution [Agent SDK](/docs/fr/agent-sdk/overview), ou une [session cloud](/docs/fr/claude-code-on-the-web), vous n'avez pas à envoyer `continue` vous-même quand la réponse coupée est dans la conversation principale et contient du texte mais pas d'appels d'outil : Claude Code conserve la sortie partielle et invite Claude à continuer à partir d'où il s'est arrêté, jusqu'à trois fois de suite. Vous voyez cet avis pour une telle réponse seulement une fois que Claude Code a épuisé ces continuations. Avant v2.1.246, Claude Code terminait un tour non interactif avec cet avis à la première coupure.
545* Dans un [sous-agent](/docs/fr/sub-agents#api-errors-in-subagents), que la session soit interactive ou non : quand sa réponse coupée contient du texte mais pas d'appels d'outil, Claude Code invite le sous-agent à continuer. L'avis devient le dernier message du sous-agent seulement une fois que ces continuations sont épuisées. Avant v2.1.257, un sous-agent affichait cet avis à la première coupure.555* Dans un [sous-agent](/docs/fr/sub-agents#api-errors-in-subagents), que la session soit interactive ou non : quand sa réponse coupée contient du texte mais pas d'appels d'outil, Claude Code invite le sous-agent à continuer. L'avis devient le dernier message du sous-agent seulement une fois que ces continuations sont épuisées. Avant v2.1.257, un sous-agent affichait cet avis à la première coupure.
546 556
547**Que faire :**557**Que faire :**
548 558
549* Dans une session interactive, lisez la réponse qui reste à l'écran : Claude Code conserve chaque bloc que Claude a terminé avant l'erreur, mais rejette un bloc final interrompu quand le tour se termine, donc les dernières phrases ou appels d'outil peuvent manquer. Répondez avec `continue` pour que Claude reprenne à partir de son dernier bloc terminé.559* Dans une session interactive, lisez la réponse qui reste à l'écran : Claude Code conserve chaque bloc que Claude a terminé avant l'erreur, mais rejette un bloc final interrompu quand le tour se termine, donc les dernières phrases ou appels d'outil peuvent manquer. Répondez avec `continue` pour que Claude reprenne à partir de son dernier bloc terminé.
550* En [mode non-interactif](/docs/fr/headless) (`-p`) :560* En [mode non interactif](/docs/fr/headless) (`-p`) :
551 * Avec la sortie texte par défaut, Claude Code imprime le dernier bloc de texte terminé qu'il détient toujours du début du tour, suivi de ce message. Quand il n'en détient aucun, Claude Code imprime ce message seul, par exemple parce que Claude Code a compacté la conversation en milieu de tour et a effacé ce texte. Avant v2.1.219, Claude Code n'imprimait que ce message dans la sortie texte `-p` et rejetait la réponse qu'il avait déjà produite.561 * Avec la sortie texte par défaut, Claude Code imprime le dernier bloc de texte terminé qu'il détient toujours du début du tour, suivi de ce message. Quand il n'en détient aucun, Claude Code imprime ce message seul, par exemple parce que Claude Code a compacté la conversation en milieu de tour et a effacé ce texte. Avant v2.1.219, Claude Code n'imprimait que ce message dans la sortie texte `-p` et rejetait la réponse qu'il avait déjà produite.
552 * Avec `--output-format json` ou `stream-json`, Claude Code signale ce message dans le champ `result`.562 * Avec `--output-format json` ou `stream-json`, Claude Code signale ce message dans le champ `result`.
553 * Pour continuer le tour une fois la connexion stable, reprenez la session et envoyez `continue` comme décrit dans [Continuer les conversations](/docs/fr/headless#continue-conversations).563 * Pour continuer le tour une fois la connexion stable, reprenez la session et envoyez `continue` comme décrit dans [Continuer les conversations](/docs/fr/headless#continue-conversations).
560 570
561Les lectures, recherches et modifications à l'intérieur de votre répertoire de travail ignorent le classificateur, donc elles continuent à fonctionner dans tous ces cas.571Les lectures, recherches et modifications à l'intérieur de votre répertoire de travail ignorent le classificateur, donc elles continuent à fonctionner dans tous ces cas.
562 572
563Quand le modèle de classification est indisponible :573Quand le modèle du classificateur est indisponible :
564 574
565```text theme={null}575```text theme={null}
566<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait a moment and then try this action again.576<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait a moment and then try this action again.
568 578
569Quand Claude Code peut déterminer la catégorie d'échec, il nomme la catégorie entre parenthèses après `temporarily unavailable`, par exemple `<model> is temporarily unavailable (rate-limited), so auto mode cannot determine the safety of <tool> right now`. Les catégories sont `(rate-limited)`, `(overloaded)`, `(server error)`, `(timed out)`, et `(connection failed)`. Si `(timed out)` ou `(connection failed)` se répète, vérifiez votre connexion ; voir [Impossible de se connecter à l'API](#unable-to-connect-to-api). Avant v2.1.229, le message ne nommait jamais une catégorie et lisait `Wait briefly and then try this action again`.579Quand Claude Code peut déterminer la catégorie d'échec, il nomme la catégorie entre parenthèses après `temporarily unavailable`, par exemple `<model> is temporarily unavailable (rate-limited), so auto mode cannot determine the safety of <tool> right now`. Les catégories sont `(rate-limited)`, `(overloaded)`, `(server error)`, `(timed out)`, et `(connection failed)`. Si `(timed out)` ou `(connection failed)` se répète, vérifiez votre connexion ; voir [Impossible de se connecter à l'API](#unable-to-connect-to-api). Avant v2.1.229, le message ne nommait jamais une catégorie et lisait `Wait briefly and then try this action again`.
570 580
571Quand aucune catégorie ne convient, le message apparaît sans catégorie entre parenthèses ; plus d'un échec produit cette forme. Sur [Amazon Bedrock](/docs/fr/amazon-bedrock), y compris le [point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint), il apparaît également quand votre compte AWS ne peut pas invoquer le modèle nommé dans le message, et cet échec se répète à chaque tentative jusqu'à ce que votre compte soit autorisé à accéder au modèle.581Quand aucune catégorie ne convient, le message apparaît sans catégorie entre parenthèses ; plus d'un échec produit cette forme. Sur [Amazon Bedrock](/docs/fr/amazon-bedrock), y compris l'[endpoint Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint), il apparaît également quand votre compte AWS ne peut pas invoquer le modèle nommé dans le message, et cet échec se répète à chaque tentative jusqu'à ce que votre compte soit autorisé à accéder au modèle.
572 582
573**Que faire :**583**Que faire :**
574 584
576* Si les tentatives continuent à échouer, continuez avec les tâches en lecture seule et revenez à l'action bloquée plus tard586* Si les tentatives continuent à échouer, continuez avec les tâches en lecture seule et revenez à l'action bloquée plus tard
577* Sur Amazon Bedrock, si le message revient à chaque tentative, vérifiez que votre compte peut invoquer le modèle qu'il nomme : pour les modèles Amazon Bedrock standard, confirmez que votre [politique IAM](/docs/fr/amazon-bedrock#iam-configuration) permet de l'invoquer ; pour les ID de modèle Mantle, [contactez votre équipe de compte AWS](/docs/fr/amazon-bedrock#mantle-endpoint-errors)587* Sur Amazon Bedrock, si le message revient à chaque tentative, vérifiez que votre compte peut invoquer le modèle qu'il nomme : pour les modèles Amazon Bedrock standard, confirmez que votre [politique IAM](/docs/fr/amazon-bedrock#iam-configuration) permet de l'invoquer ; pour les ID de modèle Mantle, [contactez votre équipe de compte AWS](/docs/fr/amazon-bedrock#mantle-endpoint-errors)
578 588
579Quand une demande de classificateur échoue parce que votre jeton OAuth a expiré ou a été pivoté par une autre session, Claude Code actualise le jeton et réessaie la demande une fois, donc une expiration de jeton de routine ne fait pas surface comme ce message. Avant v2.1.216, un jeton expiré ou pivoté échouait à chaque demande de classificateur, et le mode auto refusait chaque action vérifiée avec ce message jusqu'à ce que le jeton soit actualisé.589Quand une demande de classificateur échoue parce que votre jeton OAuth a expiré ou a été pivoté par une autre session, Claude Code actualise le jeton et réessaie la demande une fois, donc une expiration de jeton courante ne fait pas surface comme ce message. Avant v2.1.216, un jeton expiré ou pivoté échouait à chaque demande de classificateur, et le mode auto refusait chaque action vérifiée avec ce message jusqu'à ce que le jeton soit actualisé.
580 590
581Quand le classificateur a retourné une réponse non analysable :591Quand le classificateur a retourné une réponse non analysable :
582 592
595Auto mode could not evaluate this action and is blocking it for safety — a safety check separate from auto mode blocked this request because of earlier conversation content — it isn't about the action itself — run with --debug for details605Auto mode could not evaluate this action and is blocking it for safety — a safety check separate from auto mode blocked this request because of earlier conversation content — it isn't about the action itself — run with --debug for details
596```606```
597 607
598Claude Code refuse l'action mais dit à Claude que ce n'est pas un jugement que l'action est dangereuse, et de continuer avec d'autres tâches plutôt que de réessayer. Ces refus ne comptent pas vers les [seuils de pause du mode auto](/docs/fr/permission-modes#when-auto-mode-falls-back). Dans une exécution `-p` [non-interactive](/docs/fr/headless), Claude Code n'arrête pas l'exécution. Ce que Claude reçoit dépend de l'endroit où il a demandé l'action :608Claude Code refuse l'action mais dit à Claude que ce n'est pas un jugement que l'action est dangereuse, et de continuer avec d'autres tâches plutôt que de réessayer. Ces refus ne comptent pas vers les [seuils de pause du mode auto](/docs/fr/permission-modes#when-auto-mode-falls-back). Dans une exécution `-p` [non interactive](/docs/fr/headless), Claude Code n'arrête pas l'exécution. Ce que Claude reçoit dépend de l'endroit où il a demandé l'action :
599 609
600* À un [sous-agent en arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background) dans une exécution `-p` sans `--input-format stream-json`, Claude Code retourne un résultat d'erreur contenant `Agent aborted: auto mode classifier request refused by the safety safeguard in headless mode`610* À un [sous-agent en arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background) dans une exécution `-p` sans `--input-format stream-json`, Claude Code retourne un résultat d'erreur contenant `Agent aborted: auto mode classifier request refused by the safety safeguard in headless mode`
601* Partout ailleurs, y compris les sessions interactives et la conversation principale d'une exécution `-p`, Claude Code retourne ce refus à Claude611* Partout ailleurs, y compris les sessions interactives et la conversation principale d'une exécution `-p`, Claude Code retourne ce refus à Claude
617 627
618Ce qui se passe à l'action dépend de l'endroit où Claude l'a demandée :628Ce qui se passe à l'action dépend de l'endroit où Claude l'a demandée :
619 629
620* Dans une session interactive, le mode auto revient à une invite de permission normale pour cette action afin que vous puissiez l'approuver ou la refuser manuellement630* Dans une session interactive, le mode auto bascule sur une demande de permission normale pour cette action afin que vous puissiez l'approuver ou la refuser manuellement
621* À un [sous-agent en arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background) dans une exécution `-p` [non-interactive](/docs/fr/headless) sans `--input-format stream-json`, Claude Code retourne un résultat d'erreur contenant `Agent aborted: auto mode classifier transcript exceeded context window in headless mode`, et l'exécution continue631* À un [sous-agent en arrière-plan](/docs/fr/sub-agents#run-subagents-in-foreground-or-background) dans une exécution `-p` [non interactive](/docs/fr/headless) sans `--input-format stream-json`, Claude Code retourne un résultat d'erreur contenant `Agent aborted: auto mode classifier transcript exceeded context window in headless mode`, et l'exécution continue
622* Ailleurs dans une exécution `-p` sans [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags), il n'y a pas d'invite pour revenir, donc l'action ne s'exécute pas et l'exécution continue632* Ailleurs dans une exécution `-p` sans [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags), il n'y a pas de demande de permission sur laquelle se rabattre, donc l'action ne s'exécute pas et l'exécution continue
623 633
624**Que faire :**634**Que faire :**
625 635
626* Dans une session interactive, approuvez ou refusez l'action dans l'invite qui apparaît636* Dans une session interactive, approuvez ou refusez l'action dans la demande qui apparaît
627* Dans une session interactive, exécutez `/compact` pour réduire la taille de la conversation afin que les actions suivantes s'adaptent à nouveau à la fenêtre du classificateur637* Dans une session interactive, exécutez `/compact` pour réduire la taille de la conversation afin que les actions suivantes s'adaptent à nouveau à la fenêtre du classificateur
628 638
629<h3 id="the-server-returned-no-safety-verdict">639<h3 id="the-server-returned-no-safety-verdict">
647Le message d'arrêt apparaît à un endroit différent dans chaque type de session :657Le message d'arrêt apparaît à un endroit différent dans chaque type de session :
648 658
649* Dans une session interactive, le message apparaît comme un avertissement dans la transcription et le tour se termine659* Dans une session interactive, le message apparaît comme un avertissement dans la transcription et le tour se termine
650* Dans une exécution `-p` [non-interactive](/docs/fr/headless), l'exécution se termine et signale une erreur d'exécution. Avec la sortie texte par défaut, le message s'imprime sur stderr.660* Dans une exécution `-p` [non interactive](/docs/fr/headless), l'exécution se termine et signale une erreur d'exécution. Avec la sortie texte par défaut, le message s'imprime sur stderr.
651* Quand un [sous-agent](/docs/fr/sub-agents) a atteint la limite, le sous-agent s'arrête avant de terminer, et Claude reçoit ce qu'il a produit avec une note que le mode auto l'a arrêté661* Quand un [sous-agent](/docs/fr/sub-agents) a atteint la limite, le sous-agent s'arrête avant de terminer, et Claude reçoit ce qu'il a produit avec une note que le mode auto l'a arrêté
652 662
653**Que faire :**663**Que faire :**
697 707
698Claude Code bloque les demandes supplémentaires jusqu'à l'heure de réinitialisation indiquée dans le message. Les limites de session et hebdomadaires sont partagées entre tous les modèles, donc changer de modèle ne restaure pas l'accès. Les limites Opus et Sonnet s'appliquent chacune uniquement aux demandes adressées à cette famille de modèles, donc passer à un modèle en dehors de la famille avec `/model` vous permet de continuer à travailler.708Claude Code bloque les demandes supplémentaires jusqu'à l'heure de réinitialisation indiquée dans le message. Les limites de session et hebdomadaires sont partagées entre tous les modèles, donc changer de modèle ne restaure pas l'accès. Les limites Opus et Sonnet s'appliquent chacune uniquement aux demandes adressées à cette famille de modèles, donc passer à un modèle en dehors de la famille avec `/model` vous permet de continuer à travailler.
699 709
700Dans une session interactive connectée avec un abonnement claude.ai, Claude Code peut également attendre dans la session ouverte et continuer la tâche interrompue peu après la réinitialisation. Pendant qu'il attend, une ligne au bas de la session indique `Usage limit reached · continuing automatically at 3:45pm · esc to cancel`. Appuyez sur `Esc` à une invite vide pour annuler l'attente. Consultez [Wait for a usage limit to reset](/docs/fr/interactive-mode#wait-for-a-usage-limit-to-reset) pour voir ce que vous voyez, comment démarrer ou annuler une attente, et comment désactiver la continuation automatique. Avant la v2.1.234, Claude Code n'offrait pas cette attente.710Dans une session interactive connectée avec un abonnement claude.ai, Claude Code peut également attendre dans la session ouverte et continuer la tâche interrompue peu après la réinitialisation. Consultez [Wait for a usage limit to reset](/docs/fr/interactive-mode#wait-for-a-usage-limit-to-reset) pour voir ce que vous voyez, comment démarrer ou annuler une attente, et comment désactiver la continuation automatique. Avant la v2.1.234, Claude Code n'offrait pas cette attente.
701 711
702L'utilisation compte à la fois pour les allocations de session et hebdomadaires. Une seule rafale d'activité intensive, comme un grand fanout de flux de travail, peut épuiser l'allocation hebdomadaire avant que la fenêtre de session ne se réinitialise.712L'utilisation compte à la fois pour les allocations de session et hebdomadaires. Une seule rafale d'activité intensive, comme un grand fanout de flux de travail, peut épuiser l'allocation hebdomadaire avant que la fenêtre de session ne se réinitialise.
703 713
885 Erreurs d'authentification895 Erreurs d'authentification
886</h2>896</h2>
887 897
888Ces erreurs signifient que Claude Code ne peut pas prouver votre identité à l'API. Exécutez `/status` à tout moment pour voir quelle credential est actuellement active.898Ces erreurs signifient que Claude Code ne parvient pas à prouver votre identité auprès de l'API. Exécutez `/status` à tout moment pour voir quels identifiants sont actuellement actifs.
889 899
890<h3 id="not-logged-in">900<h3 id="not-logged-in">
891 Non connecté901 Non connecté
892</h3>902</h3>
893 903
894Aucune credential valide n'est disponible pour cette session.904Cette session ne dispose d'aucuns identifiants valides.
895 905
896```text theme={null}906```text theme={null}
897Not logged in · Please run /login907Not logged in · Please run /login
898```908```
899 909
900Dans 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.910Dans une session exécutée par l'application Claude Desktop, comme l'onglet Code ou Cowork, le message indique `Authentication required · Sign in again to continue`, et vous vous reconnectez depuis l'application.
901 911
902**À faire :**912Si vous vous connectez avec votre compte claude.ai dans une autre fenêtre Claude Code qui utilise le même [répertoire de configuration](/docs/fr/claude-directory), une session interactive affichant ce message commence à utiliser cette connexion d'elle-même. Vous n'avez pas besoin de la redémarrer.
913
914Avant la v2.1.286 sur macOS, la session pouvait continuer à afficher le message après votre connexion depuis une autre fenêtre. Sur ces versions, redémarrez la session qui affiche le message.
915
916**Que faire :**
903 917
904* Exécutez `/login` pour vous authentifier avec votre abonnement Claude ou votre compte Console918* Exécutez `/login` pour vous authentifier avec votre abonnement Claude ou votre compte Console
905* Si vous vous attendiez à ce qu'une variable d'environnement vous authentifie, confirmez que `ANTHROPIC_API_KEY` est définie et exportée dans le shell où vous avez lancé `claude`919* Si vous vous attendiez à ce qu'une variable d'environnement vous authentifie, vérifiez que `ANTHROPIC_API_KEY` est définie et exportée dans le shell où vous avez lancé `claude`
906* Pour l'intégration continue ou l'automatisation où la connexion interactive n'est pas possible, configurez un script [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) qui récupère une clé au démarrage920* Pour la CI ou l'automatisation où la connexion interactive n'est pas possible, configurez un script [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) qui récupère une clé au démarrage
907* Consultez [Précédence d'authentification](/docs/fr/authentication#authentication-precedence) pour comprendre quelle credential Claude Code utilise quand plusieurs sont présentes921* Consultez [Priorité d'authentification](/docs/fr/authentication#authentication-precedence) pour comprendre quels identifiants Claude Code utilise lorsque plusieurs sont présents
908 922
909Si vous êtes invité à vous connecter à plusieurs reprises, consultez [Non connecté ou token expiré](/docs/fr/troubleshoot-install#not-logged-in-or-token-expired) pour les vérifications de l'horloge système et les étapes de récupération du stockage des credentials macOS.923Si vous êtes invité à vous connecter à plusieurs reprises, consultez [Non connecté ou jeton expiré](/docs/fr/troubleshoot-install#not-logged-in-or-token-expired) pour les vérifications de l'horloge système et les étapes de récupération du stockage des identifiants sur macOS.
910 924
911<h3 id="could-not-resolve-authentication-method">925<h3 id="could-not-resolve-authentication-method">
912 Impossible de résoudre la méthode d'authentification926 Impossible de déterminer la méthode d'authentification
913</h3>927</h3>
914 928
915La session a atteint le client API sans aucune credential. Les [sessions en arrière-plan](/docs/fr/agent-view) et les sessions cloud affichent ce message quand le worker démarre sans credential. Les exécutions interactives, `-p` et Agent SDK signalent la même condition que [Non connecté](#not-logged-in) et écrivent cette chaîne uniquement dans leur journal de débogage, donc si vous l'avez trouvée là, suivez cette entrée à la place.929La session a atteint le client API sans aucuns identifiants. Les [sessions en arrière-plan](/docs/fr/agent-view) et les sessions cloud affichent ce message lorsque le worker démarre sans identifiants. Les exécutions interactives, `-p` et Agent SDK signalent la même condition sous la forme [Non connecté](#not-logged-in) et n'écrivent cette chaîne que dans leur log de débogage ; si vous l'y avez trouvée, suivez donc plutôt cette entrée.
916 930
917```text theme={null}931```text theme={null}
918Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted932Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted
919```933```
920 934
921Sur les versions actuelles, l'erreur signifie qu'aucune credential n'était disponible pour le processus worker. Avant v2.1.174, une session en arrière-plan assignée à un worker pré-initialisé inactif pouvait échouer de cette façon même quand des credentials valides étaient configurées. Avant v2.1.176, une session cloud qui restait inactive avant d'être réclamée pouvait aussi. Mettez à jour pour récupérer.935Sur les versions actuelles, l'erreur signifie qu'aucuns identifiants n'étaient disponibles pour le processus worker. Avant la v2.1.174, une session en arrière-plan attribuée à un worker pré-initialisé inactif pouvait échouer de cette manière même lorsque des identifiants valides étaient configurés. Avant la v2.1.176, une session cloud restée inactive avant d'être prise en charge le pouvait aussi. Mettez à jour pour corriger le problème.
922 936
923**À faire :**937**Que faire :**
924 938
925* Mettez à jour vers v2.1.176 ou ultérieur si cela apparaît dans une session en arrière-plan ou cloud et que vos credentials sont déjà configurées939* Passez à la v2.1.176 ou ultérieure si ce message apparaît dans une session en arrière-plan ou cloud et que vos identifiants sont déjà configurés
926* Confirmez que `ANTHROPIC_API_KEY`, `CLAUDE_CODE_OAUTH_TOKEN` ou vos credentials du fournisseur cloud sont définis dans l'environnement qui lance le worker, pas seulement dans votre shell interactif940* Vérifiez que `ANTHROPIC_API_KEY`, `CLAUDE_CODE_OAUTH_TOKEN` ou les identifiants de votre fournisseur cloud sont définis dans l'environnement qui lance le worker, et pas seulement dans votre shell interactif
927* Pour l'Agent SDK, consultez [configuration de l'authentification dans le guide de démarrage](/docs/fr/agent-sdk/quickstart#setup)941* Pour l'Agent SDK, consultez [la configuration de l'authentification dans le démarrage rapide](/docs/fr/agent-sdk/quickstart#setup)
928* Exécutez `/status` dans une session interactive dans le même environnement pour confirmer quelle source de credential se résout942* Exécutez `/status` dans une session interactive du même environnement pour confirmer quelle source d'identifiants est résolue
929 943
930<h3 id="invalid-api-key">944<h3 id="invalid-api-key">
931 Clé API invalide945 Clé API non valide
932</h3>946</h3>
933 947
934La variable d'environnement `ANTHROPIC_API_KEY` ou le script `apiKeyHelper` a renvoyé une clé que l'API a rejetée, ou Claude Code a bloqué une clé de `ANTHROPIC_API_KEY` avant de l'envoyer.948La variable d'environnement `ANTHROPIC_API_KEY` ou le script `apiKeyHelper` a renvoyé une clé que l'API a rejetée, ou Claude Code a bloqué une clé provenant de `ANTHROPIC_API_KEY` avant de l'envoyer.
935 949
936```text theme={null}950```text theme={null}
937Invalid API key · Fix external API key951Invalid API key · Fix external API key
938```952```
939 953
940Quand le message continue après `Fix external API key` avec une description telle que `Invalid X-Api-Key header value from ANTHROPIC_API_KEY: it contains a line break at character 41 (120 characters on 2 lines).`, l'API n'a jamais vu la clé. Claude Code a trouvé un caractère que les en-têtes HTTP ne peuvent pas transporter et a arrêté la requête avant de l'envoyer. Consultez [Valeur d'en-tête de requête invalide](#invalid-request-header-value) pour savoir comment lire la description et corriger la valeur.954Lorsque le message se poursuit après `Fix external API key` avec une description telle que `Invalid X-Api-Key header value from ANTHROPIC_API_KEY: it contains a line break at character 41 (120 characters on 2 lines).`, l'API n'a jamais vu la clé. Claude Code a trouvé un caractère que les en-têtes HTTP ne peuvent pas transporter et a arrêté la requête avant de l'envoyer. Consultez [Valeur d'en-tête de requête non valide](#invalid-request-header-value) pour savoir comment lire la description et corriger la valeur.
941 955
942**À faire :**956**Que faire :**
943 957
944* Vérifiez les fautes de frappe et confirmez que la clé n'a pas été révoquée dans la [Console](https://platform.claude.com/settings/keys)958* Vérifiez l'absence de fautes de frappe et confirmez que la clé n'a pas été révoquée dans la [Console](https://platform.claude.com/settings/keys)
945* Dans le même shell, exécutez `env | grep ANTHROPIC`, ou dans PowerShell `Get-ChildItem Env:ANTHROPIC*`. Des outils comme direnv, les plugins dotenv shell et les terminaux IDE peuvent charger une clé obsolète à partir d'un fichier `.env` dans votre projet sans que vous la définissiez explicitement.959* Dans le même shell, exécutez `env | grep ANTHROPIC`, ou dans PowerShell `Get-ChildItem Env:ANTHROPIC*`. Des outils comme direnv, les plugins shell dotenv et les terminaux d'IDE peuvent charger une clé obsolète depuis un fichier `.env` de votre projet sans que vous l'ayez définie explicitement.
946* Déconfigurez `ANTHROPIC_API_KEY` et exécutez `/login` pour utiliser l'authentification par abonnement à la place960* Supprimez `ANTHROPIC_API_KEY` et exécutez `/login` pour utiliser plutôt l'authentification par abonnement
947* Si la clé provient d'un script [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper), exécutez le script directement pour confirmer qu'il imprime une clé valide sur stdout961* Si la clé provient d'un script [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper), exécutez le script directement pour confirmer qu'il affiche une clé valide sur stdout
948* Exécutez `/status` pour confirmer quelle source de credential Claude Code utilise réellement962* Exécutez `/status` pour confirmer quelle source d'identifiants Claude Code utilise réellement
949 963
950<h3 id="your-apikeyhelper-script-is-failing">964<h3 id="your-apikeyhelper-script-is-failing">
951 Votre script apiKeyHelper échoue965 Votre script apiKeyHelper échoue
952</h3>966</h3>
953 967
954Claude Code a exécuté la commande dans votre paramètre [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) et n'a pas obtenu de clé en retour. Sans une, la requête atteint l'API avec une credential d'espace réservé, et l'API la rejette avec `401`. Le panneau `Authentication` dans le terminal affiche lequel de ces événements s'est produit :968Claude Code a exécuté la commande de votre paramètre [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) et n'a pas récupéré de clé. Sans clé, la requête atteint l'API avec des identifiants factices, et l'API la rejette avec une `401`. Le panneau `Authentication` du terminal indique lequel de ces cas s'est produit :
955 969
956* La commande s'est terminée avec une erreur ou a expiré970* La commande s'est terminée avec une erreur ou a expiré
957* La commande n'a rien imprimé sur stdout971* La commande n'a rien affiché sur stdout
958* La commande a imprimé quelque chose d'autre que la clé, comme une bannière de connexion ou une ligne de journal. Le panneau affiche `returned output that cannot be used as an API key` et indique ce qui ne va pas, sans répéter la sortie. Avant v2.1.227, Claude Code envoyait tout ce que la commande imprimait, après suppression des espaces blancs environnants.972* La commande a affiché autre chose que la clé, comme une bannière de connexion ou une ligne de log. Le panneau affiche `returned output that cannot be used as an API key` et indique ce qui ne va pas, sans répéter la sortie. Avant la v2.1.227, Claude Code envoyait tout ce que la commande affichait, après suppression des espaces environnants.
959 973
960```text theme={null}974```text theme={null}
961Your apiKeyHelper script is failing · This usually means you need to re-authenticate with your provider · Run /status to see the script's error output975Your apiKeyHelper script is failing · This usually means you need to re-authenticate with your provider · Run /status to see the script's error output
962```976```
963 977
964En [mode non-interactif](/docs/fr/headless), stderr porte également la raison spécifique, préfixée par `apiKeyHelper failed:`.978En [mode non interactif](/docs/fr/headless), stderr contient également la raison précise, préfixée par `apiKeyHelper failed:`.
965 979
966Claude Code réexécute le script et réessaie la requête jusqu'à deux fois de plus avant d'afficher ce message, donc l'échec apparaît dans les trois tentatives. Avant v2.1.208, Claude Code dépensait le [budget de retry](#automatic-retries) complet en renvoyant la requête avec la credential d'espace réservé, puis signalait une erreur d'authentification générique `401` au lieu de l'échec du script.980Claude Code réexécute le script et relance la requête jusqu'à deux fois supplémentaires avant d'afficher ce message, de sorte que l'échec apparaît en trois tentatives au maximum. Avant la v2.1.208, Claude Code épuisait tout le [budget de nouvelles tentatives](#automatic-retries) en renvoyant la requête avec les identifiants factices, puis signalait une erreur d'authentification `401` générique au lieu de l'échec du script.
967 981
968L'exécution de `/login` n'aide pas ici : la sortie du helper [prend la priorité](/docs/fr/authentication#authentication-precedence) sur une connexion enregistrée tant que le paramètre est présent.982Exécuter `/login` n'aide pas ici : la sortie du helper [a priorité](/docs/fr/authentication#authentication-precedence) sur une connexion enregistrée tant que le paramètre est présent.
969 983
970**À faire :**984**Que faire :**
971 985
972* Exécutez la commande configurée dans `apiKeyHelper` directement dans votre shell pour reproduire l'échec986* Exécutez directement dans votre shell la commande configurée dans `apiKeyHelper` pour reproduire l'échec
973* Si la commande signale une session expirée, réauthentifiez-vous auprès de votre fournisseur de credentials, par exemple en vous reconnectant à votre SSO ou à votre coffre-fort de secrets987* Si la commande signale une session expirée, authentifiez-vous à nouveau auprès de votre fournisseur d'identifiants, par exemple en vous reconnectant à votre SSO ou à votre coffre de secrets
974* Corrigez la commande pour qu'elle imprime uniquement la clé sur stdout, en tant que jeton unique d'ASCII imprimable jusqu'à 16 384 caractères, et se termine avec le code 0. Consultez [rotation des credentials avec apiKeyHelper](/docs/fr/llm-gateway-connect#rotate-credentials-with-apikeyhelper) pour une configuration fonctionnelle.988* Corrigez la commande pour qu'elle n'affiche que la clé sur stdout, sous la forme d'un seul token d'ASCII imprimable de 16 384 caractères maximum, et qu'elle se termine avec le code 0. Consultez [renouveler les identifiants avec apiKeyHelper](/docs/fr/llm-gateway-connect#rotate-credentials-with-apikeyhelper) pour une configuration fonctionnelle.
975* Exécutez `/status` pour voir l'échec et confirmez que `apiKeyHelper` est la source de credential active. La ligne `apiKeyHelper` affiche `Failing` avec le détail du dernier échec, comme le code de sortie et la sortie d'erreur de la commande, et disparaît après la prochaine exécution réussie. Avant v2.1.274, `/status` affichait uniquement la source de credential, pas l'échec.989* Exécutez `/status` pour voir l'échec et confirmer que `apiKeyHelper` est la source d'identifiants active. La ligne `apiKeyHelper` affiche `Failing` avec le détail du dernier échec, comme le code de sortie et la sortie d'erreur de la commande, et disparaît après la prochaine exécution réussie. Avant la v2.1.274, `/status` n'affichait que la source d'identifiants, pas l'échec.
976* Chaque fois que la commande échoue, son code de sortie et sa sortie d'erreur apparaissent également dans un panneau `Authentication` dans le terminal. Avant v2.1.212, le panneau était intitulé `Cloud authentication`.990* Chaque fois que la commande échoue, son code de sortie et sa sortie d'erreur apparaissent également dans un panneau `Authentication` du terminal. Avant la v2.1.212, le panneau s'intitulait `Cloud authentication`.
977 991
978<h3 id="invalid-request-header-value">992<h3 id="invalid-request-header-value">
979 Valeur d'en-tête de requête invalide993 Valeur d'en-tête de requête non valide
980</h3>994</h3>
981 995
982Une valeur que Claude Code s'apprêtait à envoyer en tant qu'en-tête de requête contient un caractère que les en-têtes HTTP ne peuvent pas transporter : un saut de ligne, un octet NUL ou un caractère au-dessus de `U+00FF`, comme un guillemet courbe ou un espace de largeur zéro. Claude Code arrête la requête avant que quoi que ce soit ne soit envoyé et nomme la variable ou le paramètre à corriger. La cause habituelle est une credential collée à partir d'un document ou d'une conversation qui portait un caractère invisible ou un saut de ligne égaré.996Une valeur que Claude Code s'apprêtait à envoyer comme en-tête de requête contient un caractère que les en-têtes HTTP ne peuvent pas transporter : un saut de ligne, un octet NUL ou un caractère au-delà de `U+00FF`, comme un guillemet typographique ou une espace de largeur nulle. Claude Code arrête la requête avant tout envoi et nomme la variable ou le paramètre à corriger. La cause habituelle est un identifiant collé depuis un document ou un chat qui contenait un caractère invisible ou un saut de ligne parasite.
983 997
984Claude Code exécute cette vérification quand il envoie des requêtes à l'API Claude directement ou via une [passerelle LLM](/docs/fr/llm-gateway). Sur un fournisseur cloud tiers comme [Amazon Bedrock](/docs/fr/amazon-bedrock), Claude Code ne l'exécute pas avant d'envoyer.998Claude Code effectue cette vérification lorsqu'il envoie des requêtes à l'API Claude directement ou via une [passerelle LLM](/docs/fr/llm-gateway). Sur un fournisseur cloud tiers comme [Amazon Bedrock](/docs/fr/amazon-bedrock), Claude Code ne l'effectue pas avant l'envoi.
985 999
986```text theme={null}1000```text theme={null}
987Invalid auth token · Fix external auth token1001Invalid auth token · Fix external auth token
989Invalid request header from the environment · Fix the environment variable1003Invalid request header from the environment · Fix the environment variable
990```1004```
991 1005
992La première partie du message dépend de la provenance de la mauvaise valeur :1006La première partie du message dépend de la provenance de la valeur incorrecte :
993 1007
994* `Invalid auth token` : un jeton bearer de [`ANTHROPIC_AUTH_TOKEN`](/docs/fr/env-vars) ou [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/fr/env-vars)1008* `Invalid auth token` : un jeton bearer provenant de [`ANTHROPIC_AUTH_TOKEN`](/docs/fr/env-vars) ou de [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/fr/env-vars)
995* `Invalid ANTHROPIC_CUSTOM_HEADERS` : un nom ou une valeur d'en-tête que vous avez défini dans [`ANTHROPIC_CUSTOM_HEADERS`](/docs/fr/env-vars). La description compte quelle paire `Name: Value` est en faute, comme `distinct header 2 of 3 parsed from ANTHROPIC_CUSTOM_HEADERS`, sans répéter le nom ou la valeur, puisque vous avez choisi les deux.1009* `Invalid ANTHROPIC_CUSTOM_HEADERS` : un nom ou une valeur d'en-tête que vous avez défini dans [`ANTHROPIC_CUSTOM_HEADERS`](/docs/fr/env-vars). La description indique le rang de la paire `Name: Value` fautive, par exemple `distinct header 2 of 3 parsed from ANTHROPIC_CUSTOM_HEADERS`, sans répéter le nom ni la valeur, puisque vous avez choisi les deux.
996* `Invalid request header from the environment` : une valeur que Claude Code copie dans un en-tête de requête à partir d'une autre variable d'environnement, comme `CLAUDE_AGENT_SDK_CLIENT_APP`. La description nomme la variable à corriger.1010* `Invalid request header from the environment` : une valeur que Claude Code copie dans un en-tête de requête depuis une autre variable d'environnement, comme `CLAUDE_AGENT_SDK_CLIENT_APP`. La description nomme la variable à corriger.
997 1011
998Claude Code signale une mauvaise `ANTHROPIC_API_KEY` capturée par cette vérification comme [Clé API invalide](#invalid-api-key), avec la même description de fin. Il signale une mauvaise credential `/login` enregistrée comme [Non connecté](#not-logged-in) à la place ; exécutez `/login` pour en enregistrer une nouvelle. La sortie d'un script [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) n'atteint jamais cette vérification : Claude Code la valide quand le script s'exécute, et la sortie qu'un en-tête HTTP ne peut pas transporter échoue avec [Votre script apiKeyHelper échoue](#your-apikeyhelper-script-is-failing).1012Claude Code signale une `ANTHROPIC_API_KEY` incorrecte détectée par cette vérification sous la forme [Clé API non valide](#invalid-api-key), avec la même description finale. Il signale des identifiants `/login` enregistrés incorrects sous la forme [Non connecté](#not-logged-in) ; exécutez `/login` pour en enregistrer de nouveaux. La sortie d'un script [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) n'atteint jamais cette vérification : Claude Code la valide lors de l'exécution du script, et une sortie qu'un en-tête HTTP ne peut pas transporter échoue avec [Votre script apiKeyHelper échoue](#your-apikeyhelper-script-is-failing).
999 1013
1000Après le deuxième `·`, le message décrit le problème, comme dans cet exemple complet :1014Après le second `·`, le message décrit le problème, comme dans cet exemple complet :
1001 1015
1002```text theme={null}1016```text theme={null}
1003Invalid auth token · Fix external auth token · Invalid Authorization header value from ANTHROPIC_AUTH_TOKEN: it contains a line break at character 41 (120 characters on 2 lines).1017Invalid auth token · Fix external auth token · Invalid Authorization header value from ANTHROPIC_AUTH_TOKEN: it contains a line break at character 41 (120 characters on 2 lines).
1004```1018```
1005 1019
1006Les positions comptent les caractères en commençant par un. La description est construite à partir de phrases fixes et de comptages de caractères, donc elle n'inclut jamais la valeur elle-même. Elle nomme le caractère offensant uniquement quand il s'agit d'un caractère invisible ou typographique bien connu, comme une marque d'ordre des octets, un espace de largeur zéro ou un guillemet courbe, et signale tout le reste comme `a non-ASCII character`.1020Les positions comptent les caractères à partir de un. La description est construite à partir de phrases fixes et de nombres de caractères, elle n'inclut donc jamais la valeur elle-même. Elle nomme le caractère fautif uniquement lorsqu'il s'agit d'un caractère invisible ou typographique bien connu, comme une marque d'ordre des octets, une espace de largeur nulle ou un guillemet typographique, et signale tout autre caractère comme `a non-ASCII character`.
1007 1021
1008**À faire :**1022**Que faire :**
1009 1023
1010* Redéfinissez la variable ou le paramètre que le message nomme, en retapant les caractères autour de la position signalée plutôt que de coller à partir de la même source1024* Redéfinissez la variable ou le paramètre que nomme le message, en retapant les caractères autour de la position signalée plutôt qu'en collant à nouveau depuis la même source
1011* Pour `ANTHROPIC_CUSTOM_HEADERS`, conservez une paire `Name: Value` par ligne et réécrivez la paire que le message compte1025* Pour `ANTHROPIC_CUSTOM_HEADERS`, conservez une paire `Name: Value` par ligne et réécrivez la paire indiquée par le message
1012* Exécutez `/status` pour confirmer quelle source de credential est active1026* Exécutez `/status` pour confirmer quelle source d'identifiants est active
1013 1027
1014<h3 id="this-organization-has-been-disabled">1028<h3 id="this-organization-has-been-disabled">
1015 Cette organisation a été désactivée1029 Cette organisation a été désactivée
1016</h3>1030</h3>
1017 1031
1018Claude Code utilise une `ANTHROPIC_API_KEY` obsolète d'une organisation Console désactivée. Quand vous avez une connexion d'abonnement enregistrée, la clé la remplace.1032Claude Code utilise une `ANTHROPIC_API_KEY` obsolète provenant d'une organisation Console désactivée. Lorsque vous disposez d'une connexion par abonnement enregistrée, la clé la remplace.
1019 1033
1020```text theme={null}1034```text theme={null}
1021Your ANTHROPIC_API_KEY belongs to a disabled organization · Unset the environment variable to use your subscription instead1035Your ANTHROPIC_API_KEY belongs to a disabled organization · Unset the environment variable to use your subscription instead
1023API Error: 400 ... This organization has been disabled.1037API Error: 400 ... This organization has been disabled.
1024```1038```
1025 1039
1026L'indice après le `·` dépend de vos credentials enregistrées : la première forme apparaît quand une `/login` enregistrée peut prendre le relais après que vous ayez déconfiguré la clé, et la deuxième quand la clé est votre seule credential.1040L'indication après le `·` dépend de vos identifiants enregistrés : la première forme apparaît lorsqu'une connexion `/login` enregistrée peut prendre le relais une fois la clé supprimée, et la seconde lorsque la clé est votre seul identifiant.
1027 1041
1028Les variables d'environnement prennent la priorité sur `/login`, donc une clé exportée dans votre profil shell ou chargée à partir d'un fichier `.env` est utilisée même quand vous avez un abonnement Pro ou Max fonctionnant. En mode non-interactif (`-p`), la clé est toujours utilisée quand elle est présente.1042Les variables d'environnement ont priorité sur `/login` : une clé exportée dans votre profil de shell ou chargée depuis un fichier `.env` est donc utilisée même si vous disposez d'un abonnement Pro ou Max fonctionnel. En mode non interactif (`-p`), la clé est toujours utilisée lorsqu'elle est présente.
1029 1043
1030**À faire :**1044**Que faire :**
1031 1045
1032* Déconfigurez `ANTHROPIC_API_KEY` dans le shell actuel et supprimez-la de votre profil shell, puis relancez `claude`1046* Supprimez `ANTHROPIC_API_KEY` dans le shell actuel et retirez-la de votre profil de shell, puis relancez `claude`
1033* Si le message dit `Update or unset`, vous n'avez pas de connexion enregistrée sur laquelle vous rabattre. Déconfigurez la clé et exécutez `/login`, ou remplacez la clé par une d'une organisation Console active.1047* Si le message indique `Update or unset`, vous n'avez aucune connexion enregistrée sur laquelle vous rabattre. Supprimez la clé et exécutez `/login`, ou remplacez la clé par une clé provenant d'une organisation Console active.
1034* Exécutez `/status` après pour confirmer que la credential active est votre abonnement1048* Exécutez ensuite `/status` pour confirmer que les identifiants actifs sont ceux de votre abonnement
1035* Si aucune variable d'environnement n'est définie et l'erreur persiste, contactez le support ou connectez-vous avec un compte différent.1049* Si aucune variable d'environnement n'est définie et que l'erreur persiste, contactez le support ou connectez-vous avec un autre compte.
1036 1050
1037<h3 id="your-organization-has-disabled-api-key-authentication">1051<h3 id="your-organization-has-disabled-api-key-authentication">
1038 Votre organisation a désactivé l'authentification par clé API1052 Votre organisation a désactivé l'authentification par clé API
1039</h3>1053</h3>
1040 1054
1041Ce message nécessite Claude Code v2.1.169 ou ultérieur. L'administrateur de votre organisation Console a désactivé l'authentification par clé API, donc l'API rejette la clé que Claude Code envoie. L'indice de récupération après le `·` varie selon la provenance de la clé :1055Ce message nécessite Claude Code v2.1.169 ou ultérieure. L'administrateur de votre organisation Console a désactivé l'authentification par clé API, l'API rejette donc la clé que Claude Code envoie. L'indication de récupération après le `·` varie selon la provenance de la clé :
1042 1056
1043```text theme={null}1057```text theme={null}
1044Your organization has disabled API key authentication · Run /login to sign in with your claude.ai account1058Your organization has disabled API key authentication · Run /login to sign in with your claude.ai account
1048Your organization has disabled API key authentication · Sign in again with your claude.ai account1062Your organization has disabled API key authentication · Sign in again with your claude.ai account
1049```1063```
1050 1064
1051La 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.1065La dernière forme apparaît dans une session exécutée par l'application Claude Desktop, comme l'onglet Code ou Cowork, où vous vous reconnectez depuis l'application.
1052 1066
1053Les 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).1067Les variables d'environnement et `apiKeyHelper` ont priorité sur `/login` : exécuter `/login` seul n'aide donc pas tant que l'un d'eux fournit encore une clé. Consultez [Priorité d'authentification](/docs/fr/authentication#authentication-precedence).
1054 1068
1055**À faire :**1069**Que faire :**
1056 1070
1057* Si le message nomme `ANTHROPIC_API_KEY`, déconfigurez-la dans le shell actuel et supprimez-la de votre profil shell ou fichier `.env`, puis relancez `claude`1071* Si le message nomme `ANTHROPIC_API_KEY`, supprimez-la dans le shell actuel et retirez-la de votre profil de shell ou de votre fichier `.env`, puis relancez `claude`
1058* Si le message nomme `apiKeyHelper`, supprimez le paramètre [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) de votre `settings.json`1072* Si le message nomme `apiKeyHelper`, retirez le paramètre [`apiKeyHelper`](/docs/fr/settings-reference#apikeyhelper) de votre `settings.json`
1059* Exécutez `/login` pour vous connecter avec votre compte claude.ai1073* Exécutez `/login` pour vous connecter avec votre compte claude.ai
1060* Exécutez `/status` après pour confirmer que la credential active est votre abonnement plutôt qu'une clé API1074* Exécutez ensuite `/status` pour confirmer que les identifiants actifs sont ceux de votre abonnement et non une clé API
1061* Si vous avez besoin de l'authentification par clé API pour l'automatisation, demandez à l'administrateur de votre organisation de la réactiver dans la Console1075* Si vous avez besoin de l'authentification par clé API pour l'automatisation, demandez à l'administrateur de votre organisation de la réactiver dans la Console
1062 1076
1063<h3 id="your-organization-has-disabled-claude-subscription-access">1077<h3 id="your-organization-has-disabled-claude-subscription-access">
1064 Votre organisation a désactivé l'accès à l'abonnement Claude1078 Votre organisation a désactivé l'accès par abonnement Claude
1065</h3>1079</h3>
1066 1080
1067Votre organisation Claude ne permet pas de se connecter à Claude Code avec une connexion d'abonnement. L'exécution de `/login` à nouveau avec le même compte retourne la même erreur.1081Votre organisation Claude n'autorise pas la connexion à Claude Code avec une connexion par abonnement. Exécuter à nouveau `/login` avec le même compte renvoie la même erreur.
1068 1082
1069```text theme={null}1083```text theme={null}
1070Your organization has disabled Claude subscription access for Claude Code · Use an Anthropic API key instead, or ask your admin to enable access1084Your organization has disabled Claude subscription access for Claude Code · Use an Anthropic API key instead, or ask your admin to enable access
1071```1085```
1072 1086
1073C'est un paramètre d'organisation côté serveur, donc il ne peut pas être remplacé à partir des paramètres locaux, des variables d'environnement ou des drapeaux CLI.1087Il s'agit d'un paramètre d'organisation côté serveur, qui ne peut donc pas être remplacé par des paramètres locaux, des variables d'environnement ou des flags CLI.
1074 1088
1075L'Agent SDK et le mode non-interactif `-p` présentent cela comme le code d'erreur `oauth_org_not_allowed`.1089L'Agent SDK et le mode non interactif `-p` le signalent avec le code d'erreur `oauth_org_not_allowed`.
1076 1090
1077**À faire :**1091**Que faire :**
1078 1092
1079* Demandez à votre administrateur d'activer l'accès à Claude Code pour votre organisation1093* Demandez à votre administrateur d'activer l'accès à Claude Code pour votre organisation
1080* Authentifiez-vous avec une clé API Console au lieu de votre abonnement. Consultez [Authentification Claude Console](/docs/fr/authentication#claude-console-authentication) pour la configuration.1094* Authentifiez-vous avec une clé API Console plutôt qu'avec votre abonnement. Consultez [Authentification Claude Console](/docs/fr/authentication#claude-console-authentication) pour la configuration.
1081* Si vous êtes l'administrateur et ne voyez pas d'option pour activer l'accès, contactez le [support Anthropic](https://support.claude.com)1095* Si vous êtes l'administrateur et ne voyez pas d'option pour activer l'accès, contactez le [support Anthropic](https://support.claude.com)
1082 1096
1083<h3 id="routines-are-disabled-by-your-organizations-policy">1097<h3 id="routines-are-disabled-by-your-organizations-policy">
1084 Les routines sont désactivées par la politique de votre organisation1098 Les routines sont désactivées par la politique de votre organisation
1085</h3>1099</h3>
1086 1100
1087Un propriétaire de votre organisation Team ou Enterprise a désactivé les routines au niveau de l'organisation. L'erreur apparaît quand vous essayez de créer ou d'exécuter une routine, par exemple à partir de l'interface utilisateur [Routines](/docs/fr/routines) sur claude.ai/code. Sur Claude Code v2.1.227 ou ultérieur, le même paramètre [masque également `/schedule`](/docs/fr/routines#troubleshooting) dans le CLI.1101Un Owner de votre organisation Team ou Enterprise a désactivé les routines au niveau de l'organisation. L'erreur apparaît lorsque vous essayez de créer ou d'exécuter une routine, par exemple depuis l'interface [Routines](/docs/fr/routines) sur claude.ai/code. Sur Claude Code v2.1.227 ou ultérieure, le même paramètre [masque également `/schedule`](/docs/fr/routines#troubleshooting) dans la CLI.
1088 1102
1089```text theme={null}1103```text theme={null}
1090Routines are disabled by your organization's policy.1104Routines are disabled by your organization's policy.
1091```1105```
1092 1106
1093C'est un paramètre côté serveur, donc il ne peut pas être remplacé à partir des paramètres locaux, des variables d'environnement ou des drapeaux CLI.1107Il s'agit d'un paramètre côté serveur, qui ne peut donc pas être remplacé par des paramètres locaux, des variables d'environnement ou des flags CLI.
1094 1108
1095**À faire :**1109**Que faire :**
1096 1110
1097* Demandez à un propriétaire de votre organisation d'activer le bouton bascule **Routines** sur [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code)1111* Demandez à un Owner de votre organisation d'activer le bouton **Routines** sur [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code)
1098* Pour un travail ponctuel programmé qui ne nécessite pas de routines au niveau de l'organisation, consultez [tâches programmées](/docs/fr/scheduled-tasks)1112* Pour une tâche planifiée ponctuelle qui ne nécessite pas de routines au niveau de l'organisation, consultez [tâches planifiées](/docs/fr/scheduled-tasks)
1099 1113
1100<h3 id="remote-control-requires-the-anthropic-api">1114<h3 id="remote-control-requires-the-anthropic-api">
1101 Remote Control nécessite l'API Anthropic1115 Remote Control nécessite l'API Anthropic
1102</h3>1116</h3>
1103 1117
1104La session ne parle pas directement à l'API Anthropic, ce que [Remote Control](/docs/fr/remote-control) nécessite.1118La session ne communique pas directement avec l'API Anthropic, ce que [Remote Control](/docs/fr/remote-control) exige.
1105 1119
1106```text theme={null}1120```text theme={null}
1107Remote Control is only available when using Claude via api.anthropic.com. CLAUDE_CODE_USE_BEDROCK is set, so this session is using Amazon Bedrock — unset it (or run in a shell without it) to use Remote Control.1121Remote Control is only available when using Claude via api.anthropic.com. CLAUDE_CODE_USE_BEDROCK is set, so this session is using Amazon Bedrock — unset it (or run in a shell without it) to use Remote Control.
1108```1122```
1109 1123
1110Une deuxième phrase explique ce qui a acheminé la session loin de l'API Anthropic ; avant v2.1.219, le message était la première phrase seule. Selon la cause, le message nomme :1124Une seconde phrase explique ce qui a détourné la session de l'API Anthropic ; avant la v2.1.219, le message se limitait à la première phrase. Selon la cause, le message nomme :
1111 1125
1112* Une variable de fournisseur `CLAUDE_CODE_USE_*`, comme `CLAUDE_CODE_USE_BEDROCK` pour [Amazon Bedrock](/docs/fr/amazon-bedrock) ou `CLAUDE_CODE_USE_VERTEX` pour [Agent Platform de Google Cloud](/docs/fr/google-vertex-ai)1126* Une variable de fournisseur `CLAUDE_CODE_USE_*`, comme `CLAUDE_CODE_USE_BEDROCK` pour [Amazon Bedrock](/docs/fr/amazon-bedrock) ou `CLAUDE_CODE_USE_VERTEX` pour [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai)
1113* [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) pointant vers un hôte autre que `api.anthropic.com`, comme une [passerelle LLM](/docs/fr/llm-gateway) ou un proxy, même quand vous vous connectez avec claude.ai ; avant v2.1.196, une URL de base personnalisée ne bloquait pas Remote Control1127* [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) pointant vers un hôte autre que `api.anthropic.com`, comme une [passerelle LLM](/docs/fr/llm-gateway) ou un proxy, même lorsque vous vous connectez avec claude.ai ; avant la v2.1.196, une URL de base personnalisée ne bloquait pas Remote Control
1114* `ANTHROPIC_UNIX_SOCKET` défini, donc la session envoie ses requêtes via un socket local plutôt qu'à `api.anthropic.com`1128* `ANTHROPIC_UNIX_SOCKET` définie, de sorte que la session envoie ses requêtes via un socket local plutôt qu'à `api.anthropic.com`
1115* Une connexion [passerelle cloud](/docs/fr/claude-apps-gateway) d'entreprise effectuée via `/login`, qui ne supporte pas Remote Control et n'a pas de variable à déconfigurez1129* Une connexion à une [passerelle cloud](/docs/fr/claude-apps-gateway) d'entreprise effectuée via `/login`, qui ne prend pas en charge Remote Control et n'a aucune variable à supprimer
1116 1130
1117**À faire :**1131**Que faire :**
1118 1132
1119* Déconfigurez la variable que le message nomme, comme `CLAUDE_CODE_USE_BEDROCK` ou `ANTHROPIC_BASE_URL`, et redémarrez la session, ou démarrez Remote Control à partir d'une session qui parle directement à l'API Anthropic1133* Supprimez la variable que nomme le message, comme `CLAUDE_CODE_USE_BEDROCK` ou `ANTHROPIC_BASE_URL`, et redémarrez la session, ou lancez Remote Control depuis une session qui communique directement avec l'API Anthropic
1120* Si la variable n'est pas définie dans votre shell, vérifiez la clé `env` dans vos [fichiers de paramètres](/docs/fr/settings#where-settings-live), qui applique les variables d'environnement à chaque session1134* Si la variable n'est pas définie dans votre shell, vérifiez la clé `env` dans vos [fichiers de paramètres](/docs/fr/settings#where-settings-live), qui applique des variables d'environnement à chaque session
1121* Pour ce message et les autres messages de démarrage de Remote Control, consultez [Dépannage de Remote Control](/docs/fr/remote-control#troubleshooting)1135* Pour ce message et les autres messages de démarrage de Remote Control, consultez [Dépannage de Remote Control](/docs/fr/remote-control#troubleshooting)
1122 1136
1123<h3 id="remote-control-couldnt-refresh-your-login">1137<h3 id="remote-control-couldnt-refresh-your-login">
1124 Remote Control n'a pas pu rafraîchir votre connexion1138 Remote Control n'a pas pu actualiser votre connexion
1125</h3>1139</h3>
1126 1140
1127Claude Code exécute une connexion [Remote Control](/docs/fr/remote-control) en direct sur des credentials de courte durée qu'il obtient et renouvelle en utilisant votre connexion claude.ai enregistrée. Quand claude.ai arrête d'accepter cette connexion, ou que Claude Code n'a plus de connexion enregistrée, Claude Code arrête Remote Control et vous demande de vous reconnecter. L'une ou l'autre défaillance peut se produire pendant que Claude Code se connecte toujours ou plus tard, quand il renouvelle les credentials.1141Claude Code fait fonctionner une connexion [Remote Control](/docs/fr/remote-control) active avec des identifiants de courte durée qu'il obtient et renouvelle à l'aide de votre connexion claude.ai enregistrée. Lorsque claude.ai cesse d'accepter cette connexion, ou que Claude Code n'a plus de connexion enregistrée, Claude Code arrête Remote Control et vous demande de vous reconnecter. L'un ou l'autre échec peut survenir pendant que Claude Code est encore en train de se connecter ou plus tard, lors du renouvellement des identifiants.
1128 1142
1129Quand Claude Code demande au service de connexion de rafraîchir votre connexion enregistrée et n'obtient pas de réponse, il garde Remote Control en cours d'exécution et réessaie le rafraîchissement pendant que la credential actuelle de la connexion est toujours valide. Un rafraîchissement n'obtient pas de réponse quand Claude Code ne peut pas atteindre le service de connexion, la requête expire, ou le service échoue sans rejeter votre connexion. Si le service de connexion ne répond toujours pas quand cette credential expire, Claude Code arrête Remote Control et signale `OAuth token refresh failed`.1143Lorsque Claude Code demande au service de connexion d'actualiser votre connexion enregistrée et n'obtient aucune réponse, il maintient Remote Control en fonctionnement et retente l'actualisation tant que les identifiants actuels de la connexion sont encore valides. Une actualisation reste sans réponse lorsque Claude Code ne peut pas joindre le service de connexion, que la requête expire ou que le service échoue sans rejeter votre connexion. Si le service de connexion ne répond toujours pas à l'expiration de ces identifiants, Claude Code arrête Remote Control et signale `OAuth token refresh failed`.
1130 1144
1131Quand Claude Code arrête Remote Control, il affiche la raison dans un avertissement et dans une ligne de transcription qui commence par `Remote Control disconnected`. Votre session locale continue de s'exécuter sans Remote Control. Cette section couvre ces lignes :1145Lorsque Claude Code arrête Remote Control, il affiche la raison dans un avertissement et dans une ligne de transcription commençant par `Remote Control disconnected`. Votre session locale continue de fonctionner sans Remote Control. Cette section couvre les lignes suivantes :
1132 1146
1133```text theme={null}1147```text theme={null}
1134Remote Control disconnected — Claude.ai login expired — run /login to restore Remote Control1148Remote Control disconnected — Claude.ai login expired — run /login to restore Remote Control
1142 1156
1143Claude Code nomme la cause au milieu du message :1157Claude Code nomme la cause au milieu du message :
1144 1158
1145* ` Claude.ai login expired` et `Claude.ai login was rejected` : claude.ai n'accepte plus votre jeton de connexion enregistré, car il a expiré ou a été révoqué1159* `Claude.ai login expired` et `Claude.ai login was rejected` : claude.ai n'accepte plus votre jeton de connexion enregistré, parce qu'il a expiré ou a été révoqué
1146* ` OAuth token unavailable` : Claude Code n'avait pas de jeton de connexion enregistré quand la credential de la connexion était due pour le renouvellement1160* `OAuth token unavailable` : Claude Code n'avait aucun jeton de connexion enregistré au moment où les identifiants de la connexion devaient être renouvelés
1147* `OAuth token refresh failed` : claude.ai a rejeté votre jeton de connexion enregistré pendant que Claude Code se reconnectait, et le rafraîchissement du jeton n'en a produit aucun nouveau1161* `OAuth token refresh failed` : claude.ai a rejeté votre jeton de connexion enregistré pendant que Claude Code se reconnectait, et l'actualisation du jeton n'en a pas produit de nouveau
1148* `JWT refresh failed: no OAuth token` : Claude Code n'a trouvé aucun jeton de connexion enregistré pour renouveler avec1162* `JWT refresh failed: no OAuth token` : Claude Code n'a trouvé aucun jeton de connexion enregistré avec lequel renouveler
1149* ` Signed out of Claude` : vous vous êtes déconnecté sur cette machine, par exemple en exécutant `/logout` dans un autre terminal, donc Claude Code n'a pas de connexion enregistrée pour renouveler la connexion avec1163* `Signed out of Claude` : vous vous êtes déconnecté sur cette machine, par exemple en exécutant `/logout` dans un autre terminal, Claude Code n'a donc plus de connexion enregistrée avec laquelle renouveler la connexion
1150 1164
1151**À faire :**1165**Que faire :**
1152 1166
1153* Exécutez `/login` pour vous reconnecter1167* Exécutez `/login` pour vous reconnecter
1154* Exécutez `/remote-control` pour reconnecter la session. Les messages se terminant par `run /login to restore Remote Control` n'ont pas besoin de cette étape : Claude Code se reconnecte automatiquement une fois que vous vous êtes connecté.1168* Exécutez `/remote-control` pour reconnecter la session. Les messages se terminant par `run /login to restore Remote Control` ne nécessitent pas cette étape : Claude Code se reconnecte de lui-même une fois que vous êtes connecté.
1155 1169
1156Avant v2.1.224, `OAuth token refresh failed — run /login to re-authenticate` lisait `OAuth token refresh failed — re-authenticate, then re-enable Remote Control`, et `JWT refresh failed: no OAuth token — run /login` lisait `no OAuth token available for recovery (code <N>)`. Les messages `Claude.ai login expired`, `Claude.ai login was rejected` et `OAuth token unavailable` ont été ajoutés dans v2.1.225.1170Avant la v2.1.224, `OAuth token refresh failed — run /login to re-authenticate` s'affichait sous la forme `OAuth token refresh failed — re-authenticate, then re-enable Remote Control`, et `JWT refresh failed: no OAuth token — run /login` sous la forme `no OAuth token available for recovery (code <N>)`. Les messages `Claude.ai login expired`, `Claude.ai login was rejected` et `OAuth token unavailable` ont été ajoutés dans la v2.1.225.
1157 1171
1158Avant v2.1.238, Claude Code signalait les cas qui disent maintenant `Signed out of Claude` comme `JWT refresh failed: no OAuth token — run /login`, et arrêtait Remote Control avec `Claude.ai login expired — run /login to restore Remote Control` dès qu'un rafraîchissement de connexion n'obtenait pas de réponse.1172Avant la v2.1.238, Claude Code signalait les cas qui affichent désormais `Signed out of Claude` sous la forme `JWT refresh failed: no OAuth token — run /login`, et arrêtait Remote Control avec `Claude.ai login expired — run /login to restore Remote Control` dès qu'une actualisation de connexion restait sans réponse.
1159 1173
1160<h3 id="remote-control-stopped-because-the-signed-in-account-changed">1174<h3 id="remote-control-stopped-because-the-signed-in-account-changed">
1161 Remote Control s'est arrêté car le compte connecté a changé1175 Remote Control s'est arrêté parce que le compte connecté a changé
1162</h3>1176</h3>
1163 1177
1164Claude Code affiche cette ligne pendant une session [Remote Control](/docs/fr/remote-control) quand vous vous connectez à un compte ou une organisation claude.ai différent sur cette machine. Vous avez effectué le changement en dehors de la session Claude Code, par exemple en exécutant `/login` dans un autre terminal.1178Claude Code affiche cette ligne pendant une session [Remote Control](/docs/fr/remote-control) lorsque vous vous connectez à un autre compte ou à une autre organisation claude.ai sur cette machine. Vous avez effectué ce changement en dehors de la session Claude Code, par exemple en exécutant `/login` dans un autre terminal.
1165 1179
1166Une session Remote Control que vous avez démarrée alors que vous étiez connecté via `/login` appartient au compte et à l'organisation claude.ai qui étaient connectés à ce moment-là.1180Une session Remote Control que vous avez démarrée en étant connecté via `/login` appartient au compte et à l'organisation claude.ai connectés à ce moment-là.
1167 1181
1168```text theme={null}1182```text theme={null}
1169Remote Control disconnected — signed-in claude.ai account or organization changed on this machine — run /remote-control to start a session for the current account, or /login to switch back, then /remote-control1183Remote Control disconnected — signed-in claude.ai account or organization changed on this machine — run /remote-control to start a session for the current account, or /login to switch back, then /remote-control
1170```1184```
1171 1185
1172Claude Code arrête la session Remote Control dès que claude.ai confirme que le compte ou l'organisation a changé. Votre session locale continue de s'exécuter sans Remote Control.1186Claude Code arrête la session Remote Control dès que claude.ai confirme que le compte ou l'organisation a changé. Votre session locale continue de fonctionner sans Remote Control.
1173 1187
1174**À faire :**1188**Que faire :**
1175 1189
1176* Exécutez `/remote-control` pour démarrer une nouvelle session Remote Control sous le compte ou l'organisation actuel1190* Exécutez `/remote-control` pour démarrer une nouvelle session Remote Control sous le compte ou l'organisation actuel
1177* Pour revenir en arrière, exécutez `/login` et reconnectez-vous au compte ou à l'organisation précédent. Puis exécutez `/remote-control`.1191* Pour revenir en arrière, exécutez `/login` et reconnectez-vous au compte ou à l'organisation précédent. Exécutez ensuite `/remote-control`.
1178 1192
1179Avant v2.1.234, Claude Code ne remarquait pas quand vous basculiez vers un compte ou une organisation différent en dehors de la session Claude Code. Claude Code gardait la session Remote Control connectée jusqu'à ce qu'une requête ultérieure au serveur Remote Control échoue avec `Remote Control server rejected the request (HTTP 404)`. Cet échec pouvait survenir des heures après le changement.1193Avant la v2.1.234, Claude Code ne détectait pas le passage à un autre compte ou à une autre organisation en dehors de la session Claude Code. Claude Code maintenait la session Remote Control connectée jusqu'à ce qu'une requête ultérieure au serveur Remote Control échoue avec `Remote Control server rejected the request (HTTP 404)`. Cet échec pouvait survenir des heures après le changement.
1180 1194
1181<h3 id="remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts">1195<h3 id="remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts">
1182 Remote Control s'est arrêté car l'application exécutant la session s'est déconnectée ou a changé de compte1196 Remote Control s'est arrêté parce que l'application exécutant la session s'est déconnectée ou a changé de compte
1183</h3>1197</h3>
1184 1198
1185Quand l'application de bureau Claude ou un IDE héberge votre session, Claude Code obtient son jeton de connexion de cette application plutôt que de `/login`. Quand claude.ai rejette ce jeton, Claude Code demande à l'application un nouveau. Si l'application répond qu'elle est déconnectée, ou qu'elle est maintenant connectée à un compte Claude différent, Claude Code termine la session [Remote Control](/docs/fr/remote-control) et envoie à l'application l'une de ces lignes :1199Lorsque l'application de bureau Claude ou un IDE héberge votre session, Claude Code obtient son jeton de connexion auprès de cette application plutôt que via `/login`. Lorsque claude.ai rejette ce jeton, Claude Code en demande un nouveau à l'application. Si l'application répond qu'elle est déconnectée, ou qu'elle est désormais connectée à un autre compte Claude, Claude Code met fin à la session [Remote Control](/docs/fr/remote-control) et envoie à l'application l'une de ces lignes :
1186 1200
1187```text theme={null}1201```text theme={null}
1188Remote Control stopped — the app running this session is now signed in to a different Claude account1202Remote Control stopped — the app running this session is now signed in to a different Claude account
1189Remote Control stopped — the app running this session is signed out of Claude. Sign in there, then turn Remote Control back on1203Remote Control stopped — the app running this session is signed out of Claude. Sign in there, then turn Remote Control back on
1190```1204```
1191 1205
1192Votre session locale continue de s'exécuter sans Remote Control.1206Votre session locale continue de fonctionner sans Remote Control.
1193 1207
1194**À faire :**1208**Que faire :**
1195 1209
1196* Si l'application est déconnectée, reconnectez-vous à celle-ci, puis réactivez Remote Control dans l'application1210* Si l'application est déconnectée, reconnectez-vous-y, puis réactivez Remote Control dans l'application
1197* Si l'application a changé de compte, Claude Code ne peut pas continuer la session terminée sous le nouveau compte. Démarrez une nouvelle session Remote Control sous ce compte.1211* Si l'application a changé de compte, Claude Code ne peut pas poursuivre la session terminée sous le nouveau compte. Démarrez une nouvelle session Remote Control sous ce compte.
1198 1212
1199Avant v2.1.238, Claude Code envoyait à l'application les messages `/login` listés sous [Remote Control n'a pas pu rafraîchir votre connexion](#remote-control-couldnt-refresh-your-login) dans les deux cas.1213Avant la v2.1.238, Claude Code envoyait à l'application, dans les deux cas, les messages `run /login` listés sous [Remote Control n'a pas pu actualiser votre connexion](#remote-control-couldnt-refresh-your-login).
1200 1214
1201<h3 id="oauth-token-revoked-or-expired">1215<h3 id="oauth-token-revoked-or-expired">
1202 Jeton OAuth révoqué ou expiré1216 Jeton OAuth révoqué ou expiré
1203</h3>1217</h3>
1204 1218
1205Votre connexion enregistrée n'est plus valide. Un jeton révoqué signifie que vous vous êtes déconnecté partout ou qu'un administrateur a supprimé l'accès ; un jeton expiré signifie que le rafraîchissement automatique a échoué en cours de session.1219Votre connexion enregistrée n'est plus valide. Un jeton révoqué signifie que vous vous êtes déconnecté partout ou qu'un administrateur a retiré l'accès ; un jeton expiré signifie que l'actualisation automatique a échoué en cours de session.
1206 1220
1207Les deux messages signalent un rejet que l'API a retourné pour une requête que Claude Code a envoyée. Quand la connexion enregistrée a déjà été effacée après un rafraîchissement échoué, vous voyez [Connexion expirée](#login-expired) à la place. Si vous vous authentifiez avec un jeton de longue durée dans [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/fr/env-vars), vous voyez les mêmes messages quand ce jeton expire ou est révoqué.1221Les deux messages signalent un rejet renvoyé par l'API pour une requête envoyée par Claude Code. Lorsque la connexion enregistrée a déjà été effacée après un échec d'actualisation, vous voyez plutôt [Connexion expirée](#login-expired). Si vous vous authentifiez avec un jeton de longue durée dans [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/fr/env-vars), vous voyez les mêmes messages lorsque ce jeton expire ou est révoqué.
1208 1222
1209```text theme={null}1223```text theme={null}
1210OAuth token revoked · Please run /login1224OAuth token revoked · Please run /login
1211Please run /login · API Error: 401 OAuth token has expired ...1225Please run /login · API Error: 401 OAuth token has expired ...
1212```1226```
1213 1227
1214**À faire :**1228En [mode non interactif](/docs/fr/headless) (`-p`) et dans l'[Agent SDK](/docs/fr/agent-sdk/overview), les messages se présentent comme suit, et le code d'erreur structuré est `authentication_failed` :
1215 1229
1216* Exécutez `/login` pour vous reconnecter1230```text theme={null}
1217* Si vous vous authentifiez avec la variable d'environnement `CLAUDE_CODE_OAUTH_TOKEN`, Claude Code continue d'envoyer la valeur que vous avez définie après l'échec d'une requête avec un 401, plutôt que de basculer vers le jeton d'une connexion enregistrée. [`/status`](/docs/fr/commands) affiche cette credential comme une ligne `Auth token` lisant `CLAUDE_CODE_OAUTH_TOKEN`. Générez un jeton frais avec [`claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token) et redémarrez avec, ou déconfigurez la variable et exécutez `/login`. Avant v2.1.225, Claude Code pouvait remplacer la valeur de la variable en cours de session par le jeton d'accès de courte durée d'une connexion enregistrée, et la session échouait à nouveau avec des erreurs 401 une fois ce jeton expiré.1231Failed to authenticate: OAuth token revoked. Please log in again or contact your administrator.
1218* Pour les invites répétées de connexion entre les lancements, consultez les vérifications de l'horloge système et les étapes de récupération du stockage des credentials macOS dans [Dépannage](/docs/fr/troubleshoot-install#not-logged-in-or-token-expired)1232Failed to authenticate. API Error: 401 OAuth token has expired ...
1219* Pour les autres défaillances incluant `403 Forbidden` et les problèmes du navigateur OAuth, consultez [Connexion et authentification](/docs/fr/troubleshoot-install#login-and-authentication)1233```
1234
1235Avant la v2.1.287, en mode non interactif et dans l'Agent SDK, le message de révocation indiquait `Your account does not have access to Claude. Please login again or contact your administrator.`
1236
1237**Que faire :**
1238
1239* Exécutez `/login` à l'invite de Claude Code pour vous reconnecter
1240* Si votre commande `-p` ou votre programme Agent SDK utilise une connexion enregistrée, exécutez `claude` dans le même environnement, effectuez `/login`, puis relancez la commande ou le programme. Pour une automatisation qui ne peut pas se connecter de manière interactive, authentifiez-vous avec [`ANTHROPIC_API_KEY`](/docs/fr/env-vars) ou [générez un jeton de longue durée avec `claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token).
1241* Si vous vous authentifiez avec la variable d'environnement `CLAUDE_CODE_OAUTH_TOKEN`, Claude Code continue d'envoyer la valeur que vous avez définie après l'échec d'une requête avec une 401, plutôt que de passer au jeton d'une connexion enregistrée. [`/status`](/docs/fr/commands) affiche ces identifiants sous la forme d'une ligne `Auth token` indiquant `CLAUDE_CODE_OAUTH_TOKEN`. Générez un nouveau jeton avec [`claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token) et redémarrez avec celui-ci, ou supprimez la variable et exécutez `/login`. Avant la v2.1.225, Claude Code pouvait remplacer la valeur de la variable en cours de session par le jeton d'accès de courte durée d'une connexion enregistrée, et la session échouait à nouveau avec des erreurs 401 une fois ce jeton expiré.
1242* Pour des demandes de connexion répétées d'un lancement à l'autre, consultez les vérifications de l'horloge système et les étapes de récupération du stockage des identifiants sur macOS dans [Dépannage](/docs/fr/troubleshoot-install#not-logged-in-or-token-expired)
1243* Pour d'autres échecs, notamment `403 Forbidden` et les problèmes de navigateur OAuth, consultez [Connexion et authentification](/docs/fr/troubleshoot-install#login-and-authentication)
1220 1244
1221<h3 id="api-error-401-invalid-authentication-credentials">1245<h3 id="api-error-401-invalid-authentication-credentials">
1222 Erreur API : 401 Credentials d'authentification invalides1246 API Error: 401 Invalid authentication credentials
1223</h3>1247</h3>
1224 1248
1225L'API a reconnu le format de votre credential mais a rejeté le compte ou l'organisation derrière. Anthropic retourne ce message quand une credential a été récemment révoquée, quand une organisation a été désactivée ou a supprimé votre accès, ou quand le compte lui-même a été désactivé, donc un jeton expiré n'est pas la cause. La credential peut être votre connexion enregistrée ou une `ANTHROPIC_API_KEY` approuvée, et la correction diffère, donc commencez par exécuter `/status` pour voir laquelle est active.1249L'API a reconnu le format de vos identifiants mais a rejeté le compte ou l'organisation qui se trouve derrière. Anthropic renvoie ce message lorsque des identifiants ont été récemment révoqués, lorsqu'une organisation a été désactivée ou a retiré votre accès, ou lorsque le compte lui-même a été désactivé ; un jeton expiré n'en est donc pas la cause. Les identifiants peuvent être votre connexion enregistrée ou une `ANTHROPIC_API_KEY` approuvée, et la solution diffère : commencez donc par exécuter `/status` pour voir lesquels sont actifs.
1226 1250
1227```text theme={null}1251```text theme={null}
1228Please run /login · API Error: 401 Invalid authentication credentials1252Please run /login · API Error: 401 Invalid authentication credentials
1229```1253```
1230 1254
1231**À faire :**1255**Que faire :**
1232 1256
1233* Si `/status` affiche une ligne `API key` qui n'est pas marquée comme non utilisée, une [`ANTHROPIC_API_KEY`](/docs/fr/authentication#authentication-precedence) approuvée est la credential active et prend la priorité sur votre connexion, donc `/login` ne la remplace pas. Faites tourner la clé dans la Console Claude, ou revenez à votre abonnement en exécutant `unset ANTHROPIC_API_KEY`, ou dans PowerShell `Remove-Item Env:ANTHROPIC_API_KEY`.1257* Si `/status` affiche une ligne `API key` qui n'est pas marquée comme inutilisée, une [`ANTHROPIC_API_KEY`](/docs/fr/authentication#authentication-precedence) approuvée constitue les identifiants actifs et a priorité sur votre connexion, de sorte que `/login` ne la remplace pas. Renouvelez la clé dans la Claude Console, ou revenez à votre abonnement en exécutant `unset ANTHROPIC_API_KEY`, ou dans PowerShell `Remove-Item Env:ANTHROPIC_API_KEY`.
1234* Si `/status` affiche uniquement votre connexion, exécutez `/login` une fois. Si la credential a été révoquée, une connexion fraîche la remplace.1258* Si `/status` n'affiche que votre connexion, exécutez `/login` une fois. Si les identifiants ont été révoqués, une nouvelle connexion les remplace.
1235* Si le même message revient pour le même compte de connexion, le compte ou l'organisation n'est plus actif. Vérifiez le compte et l'organisation que `/status` signale, et demandez à l'administrateur de votre organisation de restaurer l'accès.1259* Si le même message revient pour le même compte de connexion, le compte ou l'organisation n'est plus actif. Vérifiez le compte et l'organisation que signale `/status`, et demandez à l'administrateur de votre organisation de rétablir l'accès.
1236* Si [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) pointe vers une [passerelle LLM](/docs/fr/llm-gateway), le texte après `401` est le message de votre passerelle plutôt que celui d'Anthropic, et `/login` ne le change pas. Corrigez plutôt la credential que votre passerelle attend.1260* Si [`ANTHROPIC_BASE_URL`](/docs/fr/env-vars) pointe vers une [passerelle LLM](/docs/fr/llm-gateway), le texte après `401` est le message de votre passerelle et non celui d'Anthropic, et `/login` n'y change rien. Corrigez plutôt les identifiants qu'attend votre passerelle.
1237 1261
1238<h3 id="login-expired">1262<h3 id="login-expired">
1239 Connexion expirée1263 Connexion expirée
1240</h3>1264</h3>
1241 1265
1242Claude Code a essayé de renouveler votre connexion claude.ai enregistrée et le service OAuth a rejeté le jeton d'actualisation enregistré, donc Claude Code a effacé les credentials enregistrées. Après cela, chaque requête de modèle s'arrête localement avec ce message avant d'atteindre l'API, car seul `/login` peut créer de nouvelles credentials.1266Claude Code a tenté de renouveler votre connexion claude.ai enregistrée et le service OAuth a rejeté le jeton d'actualisation stocké ; Claude Code a donc effacé les identifiants enregistrés. Ensuite, chaque requête au modèle s'arrête localement avec ce message avant d'atteindre l'API, car seul `/login` peut créer de nouveaux identifiants.
1243 1267
1244Avant v2.1.206, Claude Code envoyait quand même la requête de modèle avec quelle que soit la credential restante dans l'environnement, et chaque modèle échouait alors avec [Il y a un problème avec le modèle sélectionné](#theres-an-issue-with-the-selected-model) ou un 401 au lieu d'une invite de connexion.1268Avant la v2.1.206, Claude Code envoyait quand même la requête au modèle avec les identifiants restant dans l'environnement, et chaque modèle échouait alors avec [Un problème concerne le modèle sélectionné](#theres-an-issue-with-the-selected-model) ou une 401 au lieu d'une invitation à se connecter.
1245 1269
1246```text theme={null}1270```text theme={null}
1247Login expired · Please run /login1271Login expired · Please run /login
1248```1272```
1249 1273
1250En [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 `authentication_failed` :1274En [mode non interactif](/docs/fr/headless) (`-p`) et dans l'[Agent SDK](/docs/fr/agent-sdk/overview), le message se présente comme suit, et le code d'erreur structuré est `authentication_failed` :
1251 1275
1252```text theme={null}1276```text theme={null}
1253Failed to authenticate: OAuth session expired and could not be refreshed1277Failed to authenticate: OAuth session expired and could not be refreshed
1254```1278```
1255 1279
1256Ce n'est pas le même état que [Jeton OAuth révoqué ou expiré](#oauth-token-revoked-or-expired). Ces messages signalent un rejet que l'API a retourné. Claude Code lui-même produit `Login expired` pour une connexion qu'il a déjà échoué à renouveler, donc il n'envoie pas de requête. Quand le renouvellement échoue parce que le compte lui-même est suspendu plutôt que la connexion étant obsolète, Claude Code affiche [Votre compte est en attente](#your-account-is-on-hold) à la place.1280Cet état est différent de [Jeton OAuth révoqué ou expiré](#oauth-token-revoked-or-expired). Ces messages signalent un rejet renvoyé par l'API. Claude Code produit lui-même `Login expired` pour une connexion qu'il n'a déjà pas réussi à renouveler ; il n'envoie donc aucune requête. Lorsque le renouvellement échoue parce que le compte lui-même est suspendu plutôt que parce que la connexion est obsolète, Claude Code affiche plutôt [Votre compte est suspendu](#your-account-is-on-hold).
1257 1281
1258Les 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.1282Les 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.
1259 1283
1260Vous pouvez vérifier cet état avant l'échec d'une requête : [`/status`](/docs/fr/commands) affiche une ligne `Login` lisant `Expired — log in again`, plus l'organisation et l'e-mail qu'il a enregistrés pour la connexion expirée. La ligne n'apparaît que quand la connexion enregistrée est votre credential active et ne peut plus être rafraîchie. Les sessions authentifiées d'une autre manière n'affichent pas la ligne, même si une connexion expirée reste enregistrée. Avant v2.1.210, `/status` ne donnait aucune indication dans cet état qu'une connexion avait jamais existé, car la credential effacée n'avait rien à signaler.1284Vous pouvez détecter cet état avant l'échec d'une requête : [`/status`](/docs/fr/commands) affiche une ligne `Login` indiquant `Expired — log in again`, ainsi que l'organisation et l'adresse e-mail enregistrées pour la connexion expirée. La ligne n'apparaît que lorsque la connexion enregistrée constitue vos identifiants actifs et ne peut plus être actualisée. Les sessions authentifiées d'une autre manière n'affichent pas cette ligne, même si une connexion expirée reste enregistrée. Avant la v2.1.210, `/status` n'indiquait pas dans cet état qu'une connexion avait jamais existé, car les identifiants effacés ne lui laissaient rien à signaler.
1261 1285
1262**À faire :**1286**Que faire :**
1263 1287
1264* Exécutez `/login` pour vous reconnecter. Réessayer sans vous connecter affiche le même message à chaque requête.1288* Exécutez `/login` pour vous reconnecter. Réessayer sans vous connecter affiche le même message à chaque requête.
1265* 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).1289* Si vous vous connectez avec votre compte claude.ai dans une autre fenêtre Claude Code, consultez [Non connecté](#not-logged-in) pour savoir quand cette session commence à utiliser cette connexion d'elle-même.
1290* En mode non interactif, exécutez `claude` dans le même environnement, effectuez `/login`, puis relancez votre commande. Pour une 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).
1266* Si la connexion continue d'échouer, consultez [Connexion et authentification](/docs/fr/troubleshoot-install#login-and-authentication)1291* Si la connexion continue d'échouer, consultez [Connexion et authentification](/docs/fr/troubleshoot-install#login-and-authentication)
1267 1292
1268<h3 id="could-not-refresh-your-login">1293<h3 id="could-not-refresh-your-login">
1269 Impossible de rafraîchir votre connexion car un autre processus Claude Code la rafraîchit1294 Impossible d'actualiser votre connexion, car un autre processus Claude Code est en train de l'actualiser
1270</h3>1295</h3>
1271 1296
1272Ce 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 :1297Ce 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 détenait le verrou d'actualisation partagé, ou s'est terminé en le laissant derrière lui, et l'actualisation n'a pas progressé pendant que cette session attendait. Claude Code arrête la requête avant de l'envoyer :
1273 1298
1274```text theme={null}1299```text theme={null}
1275Could 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 /login1300Could 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
1276```1301```
1277 1302
1278En [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` :1303En [mode non interactif](/docs/fr/headless) (`-p`) et dans l'[Agent SDK](/docs/fr/agent-sdk/overview), le message se présente comme suit, et le code d'erreur structuré est `server_error` :
1279 1304
1280```text theme={null}1305```text theme={null}
1281Failed 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 again1306Failed 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
1283 1308
1284Les 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.1309Les 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.
1285 1310
1286**À faire :**1311**Que faire :**
1287 1312
1288* Réessayez dans une minute. Si un autre processus complète le rafraîchissement en premier, cette session utilise la connexion renouvelée.1313* Réessayez dans une minute. Si un autre processus termine l'actualisation en premier, cette session utilise la connexion renouvelée.
1289* Si le message continue de revenir, fermez les autres fenêtres et processus Claude Code, puis réessayez.1314* Si le message continue de revenir, fermez les autres fenêtres et processus Claude Code, puis réessayez.
1290* 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.1315* S'il revient alors qu'aucun autre processus Claude Code n'est en cours d'exécution, exécutez `/login`. Se reconnecter n'attend pas le verrou d'actualisation.
1291 1316
1292<h3 id="couldnt-save-your-login">1317<h3 id="couldnt-save-your-login">
1293 Impossible d'enregistrer votre connexion1318 Impossible d'enregistrer votre connexion
1294</h3>1319</h3>
1295 1320
1296Vous 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.1321Vous vous êtes connecté avec claude.ai, mais Claude Code n'a pas pu enregistrer la connexion dans son magasin d'identifiants ; la connexion n'a donc pas abouti. Sur macOS, cela peut se produire lorsque le trousseau de session se verrouille, par exemple lors de la mise en veille ou d'une inactivité, après que Claude Code y a déjà lu ou enregistré des identifiants au cours de la même session.
1297 1322
1298```text theme={null}1323```text theme={null}
1299Couldn't save your login. If your Mac's keychain is locked, unlock it and log in again.1324Couldn't save your login. If your Mac's keychain is locked, unlock it and log in again.
1300Couldn't save your login. Try logging in again.1325Couldn't save your login. Try logging in again.
1301```1326```
1302 1327
1303La 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.1328La première forme apparaît sur macOS et la seconde partout ailleurs. Un échec transitoire du magasin d'identifiants, comme un délai d'expiration ou un magasin illisible, produit le même message.
1304 1329
1305**À faire :**1330**Que faire :**
1306 1331
1307* Sur macOS, déverrouillez le trousseau de connexion, puis exécutez `/login` à nouveau1332* Sur macOS, déverrouillez le trousseau de session, puis exécutez à nouveau `/login`
1308* Sur d'autres plates-formes, exécutez `/login` à nouveau1333* Sur les autres plateformes, exécutez à nouveau `/login`
1309* 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 credentials1334* Si la connexion ne s'enregistre toujours pas, consultez [Non connecté ou jeton 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 identifiants
1310 1335
1311<h3 id="failed-to-start-oauth-callback-server">1336<h3 id="failed-to-start-oauth-callback-server">
1312 Impossible de démarrer le serveur de rappel OAuth1337 Échec du démarrage du serveur de rappel OAuth
1313</h3>1338</h3>
1314 1339
1315Quand `/login`, `claude auth login` ou `claude setup-token` vous connecte via le navigateur, Claude Code ouvre un port d'écoute sur `127.0.0.1` pour que votre navigateur puisse retourner le résultat de la connexion. Ce message signifie que Claude Code n'a pas pu ouvrir ce port, et la connexion s'arrête avant qu'une fenêtre de navigateur ou une URL de connexion n'apparaisse :1340Lorsque `/login`, `claude auth login` ou `claude setup-token` vous connecte via le navigateur, Claude Code ouvre un port d'écoute sur `127.0.0.1` afin que votre navigateur puisse lui renvoyer le résultat de la connexion. Ce message signifie que Claude Code n'a pas pu ouvrir ce port, et la connexion s'arrête avant qu'une fenêtre de navigateur ou une URL de connexion n'apparaisse :
1316 1341
1317```text theme={null}1342```text theme={null}
1318Failed to start OAuth callback server: Failed to start server. Is port 0 in use?1343Failed to start OAuth callback server: Failed to start server. Is port 0 in use?
1319```1344```
1320 1345
1321Si votre message se termine par `Is port 0 in use?`, la tentative d'écoute sur l'adresse de bouclage IPv4 `127.0.0.1` a échoué directement. Parce que l'échec se produit avant qu'une URL de connexion n'existe, le flux `Paste code here if prompted` n'est pas disponible comme solution de contournement.1346Si votre message se termine par `Is port 0 in use?`, la tentative d'écoute sur l'adresse de bouclage IPv4 `127.0.0.1` a échoué purement et simplement. Comme l'échec survient avant qu'une URL de connexion n'existe, le flux `Paste code here if prompted` n'est pas disponible comme solution de contournement.
1322 1347
1323**À faire :**1348**Que faire :**
1324 1349
1325* Pour vous connecter immédiatement sans l'écouteur local : si vous utilisez un abonnement claude.ai, exécutez [`claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token) sur une machine où la connexion fonctionne et définissez le jeton qu'il imprime comme `CLAUDE_CODE_OAUTH_TOKEN` sur cette machine. Sinon, définissez `ANTHROPIC_API_KEY` sur une clé de la [Console Claude](https://platform.claude.com/settings/keys). [Précédence d'authentification](/docs/fr/authentication#authentication-precedence) explique comment Claude Code choisit entre les credentials.1350* Pour vous connecter immédiatement sans l'écouteur local : si vous utilisez un abonnement claude.ai, exécutez [`claude setup-token`](/docs/fr/authentication#generate-a-long-lived-token) sur une machine où la connexion fonctionne et définissez le jeton qu'il affiche comme `CLAUDE_CODE_OAUTH_TOKEN` sur cette machine. Sinon, définissez `ANTHROPIC_API_KEY` sur une clé provenant de la [Claude Console](https://platform.claude.com/settings/keys). [Priorité d'authentification](/docs/fr/authentication#authentication-precedence) explique comment Claude Code choisit entre les identifiants.
1326* Pour utiliser la connexion du navigateur sur cette machine à la place, Claude Code doit pouvoir écouter sur `127.0.0.1`. S'il s'exécute à l'intérieur d'un bac à sable, vérifiez que la politique du bac à sable permet d'écouter sur les ports locaux, puis exécutez `/login` à nouveau. S'il devrait pouvoir et échoue toujours, exécutez `/feedback` pour que le rapport inclue les détails de votre environnement.1351* Pour utiliser plutôt la connexion par navigateur sur cette machine, Claude Code doit pouvoir écouter sur `127.0.0.1`. S'il s'exécute dans un sandbox, vérifiez que la politique du sandbox autorise l'écoute sur les ports locaux, puis exécutez à nouveau `/login`. S'il devrait pouvoir le faire et que cela échoue toujours, exécutez `/feedback` afin que le rapport inclue les détails de votre environnement.
1327 1352
1328<h3 id="claude-login-not-accepted">1353<h3 id="claude-login-not-accepted">
1329 Connexion Claude non acceptée1354 Connexion Claude non acceptée
1330</h3>1355</h3>
1331 1356
1332Vous 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.1357Vous avez tenté de démarrer une [session cloud](/docs/fr/claude-code-on-the-web), et le serveur a refusé de la créer avec une 401 : il n'a pas accepté la connexion Claude envoyée par cette machine, généralement parce que la connexion a expiré ou a été révoquée.
1333 1358
1334La première partie de la ligne est la propre raison du serveur quand il en donne une. Sinon, la ligne se lit :1359La première partie de la ligne est la raison propre du serveur lorsqu'il en fournit une. Sinon, la ligne indique :
1335 1360
1336```text theme={null}1361```text theme={null}
1337Claude login not accepted · Run /login, then try again1362Claude login not accepted · Run /login, then try again
1338```1363```
1339 1364
1340**À faire :**1365**Que faire :**
1341 1366
1342* Exécutez `/login`, complétez la connexion, puis démarrez la session à nouveau1367* Exécutez `/login`, terminez la connexion, puis démarrez à nouveau la session
1343 1368
1344<h3 id="artifacts-need-a-claude-ai-login">1369<h3 id="artifacts-need-a-claude-ai-login">
1345 Les artefacts ont besoin d'une connexion claude.ai1370 Les artefacts nécessitent une connexion claude.ai
1346</h3>1371</h3>
1347 1372
1348Claude Code a refusé une publication ou une lecture d'[artefact](/docs/fr/artifacts) car la session n'a pas de connexion claude.ai qu'elle peut utiliser pour les artefacts.1373Claude Code a refusé une publication ou une lecture d'[artefact](/docs/fr/artifacts) parce que la session n'a aucune connexion claude.ai utilisable pour les artefacts.
1349 1374
1350Chaque forme du message commence par les mêmes mots, suivis d'un remède qui dépend de la façon dont votre session s'authentifie. Sans credential concurrente, il se lit :1375Chaque forme du message commence par les mêmes mots, suivis d'une solution qui dépend de la manière dont votre session s'authentifie. En l'absence d'identifiants concurrents, il indique :
1351 1376
1352```text theme={null}1377```text theme={null}
1353Artifacts need a claude.ai login. Run /login and select "Claude account with subscription", then retry — the "Anthropic Console account" option does not provide claude.ai credentials.1378Artifacts need a claude.ai login. Run /login and select "Claude account with subscription", then retry — the "Anthropic Console account" option does not provide claude.ai credentials.
1354```1379```
1355 1380
1356**À faire :**1381**Que faire :**
1357 1382
1358* Exécutez `/login` et sélectionnez **Claude account with subscription**. L'option **Anthropic Console account** ne fournit pas de credentials claude.ai.1383* Exécutez `/login` et sélectionnez **Claude account with subscription**. L'option **Anthropic Console account** ne fournit pas d'identifiants claude.ai.
1359* Quand le message nomme une credential qui prend la priorité, comme `ANTHROPIC_API_KEY`, un paramètre `apiKeyHelper` ou une clé Console enregistrée par une `/login` précédente, supprimez-la de la façon que le message dit, puis exécutez `/login`1384* Lorsque le message nomme des identifiants qui ont priorité, comme `ANTHROPIC_API_KEY`, un paramètre `apiKeyHelper` ou une clé Console enregistrée par un `/login` précédent, supprimez-les comme l'indique le message, puis exécutez `/login`
1360* Quand le message dit que cette session distante s'authentifie via la machine qui l'a lancée, connectez-vous à claude.ai sur cette machine, puis reconnectez la session1385* Lorsque le message indique que cette session à distance s'authentifie via la machine qui l'a lancée, connectez-vous à claude.ai sur cette machine, puis reconnectez la session
1361* Quand le message dit que la credential est injectée par l'environnement hôte de la session, vous ne pouvez pas la modifier dans cette session ; démarrez une session qui est connectée à claude.ai1386* Lorsque le message indique que les identifiants sont injectés par l'environnement hôte de la session, vous ne pouvez pas les modifier dans cette session ; démarrez une session connectée à claude.ai
1362* Consultez [Disponibilité](/docs/fr/artifacts#availability) pour les autres exigences que les artefacts ont, comme le plan, le fournisseur de modèle et la politique d'organisation1387* Consultez [Disponibilité](/docs/fr/artifacts#availability) pour les autres exigences des artefacts, comme le forfait, le fournisseur de modèle et la politique de l'organisation
1363 1388
1364<h3 id="administrator-policy-requires-a-cloud-gateway-sign-in">1389<h3 id="administrator-policy-requires-a-cloud-gateway-sign-in">
1365 La politique de l'administrateur nécessite une connexion à la passerelle Cloud1390 La politique de l'administrateur exige une connexion à la passerelle cloud
1366</h3>1391</h3>
1367 1392
1368Un [paramètre géré](/docs/fr/managed-settings) d'un administrateur sur cette machine a défini [`forceLoginMethod`](/docs/fr/settings-reference#forceloginmethod) à `"gateway"` ou a défini [`forceLoginGatewayUrl`](/docs/fr/settings-reference#forcelogingatewayurl). À moins que vous sélectionniez un fournisseur cloud via une variable comme `CLAUDE_CODE_USE_BEDROCK`, Claude Code n'accepte alors que la connexion [passerelle d'applications Claude](/docs/fr/claude-apps-gateway). Vous voyez l'un de deux messages :1393Les [paramètres gérés](/docs/fr/managed-settings) d'un administrateur sur cette machine définissent [`forceLoginMethod`](/docs/fr/settings-reference#forceloginmethod) sur `"gateway"` ou définissent [`forceLoginGatewayUrl`](/docs/fr/settings-reference#forcelogingatewayurl). Sauf si vous sélectionnez un fournisseur cloud via une variable comme `CLAUDE_CODE_USE_BEDROCK`, Claude Code n'accepte alors que la connexion à la [passerelle des applications Claude](/docs/fr/claude-apps-gateway). Vous voyez l'un de ces deux messages :
1369 1394
1370```text theme={null}1395```text theme={null}
1371Not signed in to the Cloud gateway — run /login.1396Not signed in to the Cloud gateway — run /login.
1372```1397```
1373 1398
1374Les requêtes de modèle échouent avec ce message quand la session n'a pas de connexion à la passerelle, par exemple parce que vous n'avez pas exécuté `/login` depuis que la politique a atteint la machine.1399Les requêtes au modèle échouent avec ce message lorsque la session n'a pas de connexion à la passerelle, par exemple parce que vous n'avez pas exécuté `/login` depuis que la politique a atteint la machine.
1375 1400
1376Si vous avez également une credential `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` ou `apiKeyHelper` configurée et que les paramètres gérés définissent `forceLoginMethod`, Claude Code se termine au démarrage à la place avec un message qui commence par :1401Si la machine détient également des identifiants émis par Anthropic et que les paramètres gérés définissent `forceLoginMethod` ou `forceLoginOrgUUID`, Claude Code se ferme plutôt au démarrage. Ces identifiants peuvent être une variable `ANTHROPIC_API_KEY` ou `ANTHROPIC_AUTH_TOKEN`, un paramètre `apiKeyHelper` ou une clé API enregistrée par une connexion Claude Console antérieure.
1402
1403Le message de démarrage nomme les identifiants avec lesquels la session est configurée, l'endroit où ils sont définis et l'étape qui les supprime. Par exemple, avec une variable `ANTHROPIC_API_KEY` définie dans votre shell, il indique :
1377 1404
1378```text theme={null}1405```text theme={null}
1379Administrator policy requires a Cloud gateway sign-in on this machine; the1406Administrator policy requires a Cloud gateway sign-in on this machine, but this session is configured with an API key from ANTHROPIC_API_KEY, which a gateway machine does not accept.
1380Anthropic-issued credential configured here (ANTHROPIC_API_KEY,1407
1381ANTHROPIC_AUTH_TOKEN, or apiKeyHelper) is not used.1408To continue: unset ANTHROPIC_API_KEY (or run in a shell without it), then run claude and sign in with /login.
1382```1409```
1383 1410
1384**À faire :**1411**Que faire :**
1385 1412
1386* Exécutez `/login` et complétez la connexion sur l'écran **Cloud gateway**1413* Pour `Not signed in to the Cloud gateway`, exécutez `/login` et terminez la connexion sur l'écran **Cloud gateway**
1387* Pour le message de démarrage, supprimez le paramètre `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` ou `apiKeyHelper` que vous avez configuré, puis démarrez `claude` et exécutez `/login`1414* Pour le message de démarrage, supprimez les identifiants en suivant les étapes à la fin du message
1388* Si vous pensez que la machine ne devrait pas nécessiter la passerelle, demandez à l'administrateur qui la gère de supprimer `forceLoginMethod` et `forceLoginGatewayUrl` de ses paramètres gérés1415* Si vous pensez que la machine ne devrait pas exiger la passerelle, demandez à l'administrateur qui la gère de retirer `forceLoginMethod` et `forceLoginGatewayUrl` de ses paramètres gérés
1389 1416
1390Sur v2.1.265, une régression a également affiché le premier message dans certaines configurations de passerelle LLM et proxy qui s'authentifient avec une clé API, `apiKeyHelper` ou des en-têtes personnalisés, même sans exigence d'administrateur sur la machine. Mettez à jour vers v2.1.266 ou ultérieur. Vous n'avez pas besoin de modifier votre configuration.1417Avant la v2.1.284, le message de démarrage listait les identifiants possibles au lieu de nommer ceux qui étaient configurés. Il commençait par `Administrator policy requires a Cloud gateway sign-in on this machine; the Anthropic-issued credential configured here (ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN, or apiKeyHelper) is not used.` Si vous voyez cette formulation et ne parvenez pas à déterminer quels identifiants supprimer, passez à la v2.1.284 ou ultérieure et relancez `claude`.
1391 1418
1392Avant v2.1.261, sur les machines qui définissent `forceLoginMethod` à `"gateway"`, Claude Code utilisait une connexion enregistrée restante au lieu d'échouer les requêtes de modèle, et signalait une credential d'environnement configurée avec `This machine's managed settings require a first-party login` au lieu du message de démarrage. Avant v2.1.265, une machine dont les paramètres gérés définissaient uniquement `forceLoginGatewayUrl` ne nécessitait pas la connexion à la passerelle, et Claude Code utilisait une credential restante là.1419Sur la v2.1.265, une régression affichait également le premier message dans certaines configurations de passerelle LLM et de proxy qui s'authentifient avec une clé API, `apiKeyHelper` ou des en-têtes personnalisés, même sans exigence de l'administrateur sur la machine. Passez à la v2.1.266 ou ultérieure. Vous n'avez pas besoin de modifier votre configuration.
1420
1421Avant la v2.1.261, sur les machines qui définissaient `forceLoginMethod` sur `"gateway"`, Claude Code utilisait une connexion enregistrée résiduelle au lieu de faire échouer les requêtes au modèle, et signalait des identifiants d'environnement configurés avec `This machine's managed settings require a first-party login` au lieu du message de démarrage.
1393 1422
1394<h3 id="your-account-is-on-hold">1423<h3 id="your-account-is-on-hold">
1395 Votre compte est en attente1424 Votre compte est suspendu
1396</h3>1425</h3>
1397 1426
1398Le compte Claude derrière votre connexion a été suspendu. Claude Code affiche le premier message quand il essaie de renouveler votre connexion enregistrée et apprend de la suspension, et le deuxième quand une connexion que vous complétez dans le navigateur la signale :1427Le compte Claude associé à votre connexion a été suspendu. Claude Code affiche le premier message lorsqu'il tente de renouveler votre connexion enregistrée et apprend la suspension, et le second lorsqu'une connexion que vous effectuez dans le navigateur la signale :
1399 1428
1400```text theme={null}1429```text theme={null}
1401Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted1430Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted
1402Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted1431Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted
1403```1432```
1404 1433
1405Se reconnecter avec le même compte n'efface pas le message, car la suspension est sur le compte plutôt que sur la connexion. En [mode non-interactif](/docs/fr/headless) (`-p`) et l'[Agent SDK](/docs/fr/agent-sdk/overview), le code d'erreur structuré est `account_on_hold`. Avant v2.1.235, Claude Code signalait un compte suspendu comme [Connexion expirée · Veuillez exécuter /login](#login-expired), dont les étapes de récupération ne peuvent pas effacer une suspension.1434Se reconnecter avec le même compte ne fait pas disparaître le message, car la suspension porte sur le compte et non sur la connexion. En [mode non interactif](/docs/fr/headless) (`-p`) et dans l'[Agent SDK](/docs/fr/agent-sdk/overview), le code d'erreur structuré est `account_on_hold`. Avant la v2.1.235, Claude Code signalait un compte suspendu sous la forme [Login expired · Please run /login](#login-expired), dont les étapes de récupération ne peuvent pas lever une suspension.
1406 1435
1407**À faire :**1436**Que faire :**
1408 1437
1409* Ouvrez le lien dans le message pour afficher les détails de la suspension ou l'appeler1438* Ouvrez le lien du message pour consulter les détails de la suspension ou faire appel
1410* Si vous avez un autre compte Claude ou une clé API qui n'est pas affectée par la suspension, vous pouvez continuer à travailler pendant que la suspension est résolue : exécutez `/login` avec ce compte, ou définissez la clé avec `ANTHROPIC_API_KEY`1439* Si vous disposez d'un autre compte Claude ou d'une clé API non concernés par la suspension, vous pouvez continuer à travailler pendant sa résolution : exécutez `/login` avec ce compte, ou définissez la clé avec `ANTHROPIC_API_KEY`
1411 1440
1412<h3 id="anthropic-profile-login-expired">1441<h3 id="anthropic-profile-login-expired">
1413 Connexion au profil Anthropic expirée1442 Connexion au profil Anthropic expirée
1414</h3>1443</h3>
1415 1444
1416Claude Code s'authentifie via un profil de credential Anthropic dont la credential de connexion enregistrée a expiré, et le profil ne contient pas de credential d'actualisation que Claude Code peut utiliser pour la renouveler. Claude Code arrête chaque requête localement sans réessayer, car un réessai lirait la même credential expirée.1445Claude Code s'authentifie via un profil d'identifiants Anthropic dont les identifiants de connexion enregistrés ont expiré, et le profil ne contient aucun identifiant d'actualisation que Claude Code pourrait utiliser pour les renouveler. Claude Code arrête chaque requête localement sans réessayer, car une nouvelle tentative lirait les mêmes identifiants expirés.
1417 1446
1418```text theme={null}1447```text theme={null}
1419Anthropic profile login expired · Re-authenticate your Anthropic profile1448Anthropic profile login expired · Re-authenticate your Anthropic profile
1420Anthropic profile login expired · Run /login to use your claude.ai account instead, or re-authenticate the profile1449Anthropic profile login expired · Run /login to use your claude.ai account instead, or re-authenticate the profile
1421```1450```
1422 1451
1423Cela n'apparaît que quand la credential active provient d'un profil de credential Anthropic, un que vous sélectionnez avec la variable d'environnement `ANTHROPIC_PROFILE`, que Claude Code découvre comme le profil actif dans votre répertoire de configuration Anthropic, ou que Claude Code a écrit quand vous [vous êtes connecté sans clé API](/docs/fr/authentication#sign-in-without-an-api-key). Les sessions qui s'authentifient avec une clé API, un jeton bearer comme `ANTHROPIC_AUTH_TOKEN` ou un fournisseur tiers ne voient jamais ce message.1452Ce message n'apparaît que lorsque les identifiants actifs proviennent d'un profil d'identifiants Anthropic, que vous sélectionnez avec la variable d'environnement `ANTHROPIC_PROFILE`, que Claude Code découvre comme profil actif dans votre répertoire de configuration Anthropic, ou que Claude Code a écrit lorsque vous vous êtes [connecté sans clé API](/docs/fr/authentication#sign-in-without-an-api-key). Les sessions qui s'authentifient avec une clé API, un jeton bearer comme `ANTHROPIC_AUTH_TOKEN` ou un fournisseur tiers ne voient jamais ce message.
1424 1453
1425Sur une machine qui [offre la connexion sans clé](/docs/fr/authentication#sign-in-without-an-api-key), exécutez `/login`, choisissez le compte Anthropic Console et reconnectez-vous pour renouveler un profil que la connexion Console sans clé ou la CLI Claude Platform `ant auth login` a écrit. Claude Code remplace la credential expirée dans ce profil. Pour un profil de fédération ou un créé par un autre outil, `/login` ne renouvelle pas la credential. La forme que vous voyez dépend de si vous avez sélectionné le profil ou si Claude Code l'a découvert :1454Sur une machine qui [propose la connexion sans clé](/docs/fr/authentication#sign-in-without-an-api-key), exécutez `/login`, choisissez le compte Anthropic Console et reconnectez-vous pour renouveler un profil écrit par la connexion Console sans clé ou par `ant auth login` de la Claude Platform CLI. Claude Code remplace les identifiants expirés dans ce profil. Pour un profil de fédération ou un profil créé par un autre outil, `/login` ne renouvelle pas les identifiants. La forme que vous voyez dépend de si vous avez sélectionné le profil ou si Claude Code l'a découvert :
1426 1455
1427* Quand vous définissez `ANTHROPIC_PROFILE` explicitement, le message se termine par `Re-authenticate your Anthropic profile`.1456* Lorsque vous définissez `ANTHROPIC_PROFILE` explicitement, le message se termine par `Re-authenticate your Anthropic profile`.
1428* Quand Claude Code a découvert le profil à partir de votre répertoire de configuration, le message offre `/login`, car Claude Code donne la priorité à une `/login` fonctionnelle sur le profil découvert et s'authentifie ensuite avec votre compte claude.ai ou Console à la place. Avant v2.1.234, Claude Code affichait la forme `Re-authenticate your Anthropic profile` dans ce cas aussi.1457* Lorsque Claude Code a découvert le profil depuis votre répertoire de configuration, le message propose `/login`, car Claude Code donne la priorité à un `/login` fonctionnel sur le profil découvert et s'authentifie alors avec votre compte claude.ai ou Console. Avant la v2.1.234, Claude Code affichait également la forme `Re-authenticate your Anthropic profile` dans ce cas.
1429 1458
1430**À faire :**1459**Que faire :**
1431 1460
1432* Reconnectez-vous au profil, puis réessayez : sur une machine qui [offre la connexion sans clé](/docs/fr/authentication#sign-in-without-an-api-key), exécutez `/login` et choisissez le compte Anthropic Console pour un profil que la connexion Console sans clé ou la CLI Claude Platform `ant auth login` a écrit ; pour les autres profils, utilisez l'outil qui les a créés1461* Reconnectez-vous au profil, puis réessayez : sur une machine qui [propose la connexion sans clé](/docs/fr/authentication#sign-in-without-an-api-key), exécutez `/login` et choisissez le compte Anthropic Console pour un profil écrit par la connexion Console sans clé ou par `ant auth login` de la Claude Platform CLI ; pour les autres profils, utilisez l'outil qui les a créés
1433* Si un administrateur a provisionné la credential du profil, demandez-lui d'en émettre une nouvelle1462* Si un administrateur a provisionné les identifiants du profil, demandez-lui d'en émettre de nouveaux
1434* Exécutez `/status` pour confirmer la source de credential active et le nom du profil1463* Exécutez `/status` pour confirmer la source d'identifiants active et le nom du profil
1435* Pour arrêter d'utiliser le profil, déconfigurez `ANTHROPIC_PROFILE` si vous l'avez défini, puis authentifiez-vous d'une autre manière, comme `/login` ou `ANTHROPIC_API_KEY`1464* Pour cesser d'utiliser le profil, supprimez `ANTHROPIC_PROFILE` si vous l'avez définie, puis authentifiez-vous d'une autre manière, par exemple avec `/login` ou `ANTHROPIC_API_KEY`
1436 1465
1437<h3 id="oauth-scope-requirement">1466<h3 id="oauth-scope-requirement">
1438 Exigence de portée OAuth1467 Exigence de scope OAuth
1439</h3>1468</h3>
1440 1469
1441Le jeton enregistré est antérieur à une portée de permission qu'une fonctionnalité plus récente nécessite :1470Le jeton stocké est antérieur à un scope de permission dont une fonctionnalité plus récente a besoin :
1442 1471
1443```text theme={null}1472```text theme={null}
1444OAuth token does not meet scope requirement: user:profile1473OAuth token does not meet scope requirement: user:profile
1445```1474```
1446 1475
1447**À faire :**1476**Que faire :**
1448 1477
1449* Exécutez `/login` pour obtenir un nouveau jeton avec les portées actuelles. Vous n'avez pas besoin de vous déconnecter d'abord.1478* Exécutez `/login` pour obtenir un nouveau jeton avec les scopes actuels. Vous n'avez pas besoin de vous déconnecter au préalable.
1450 1479
1451<h3 id="claude-ai-rejected-the-session-token">1480<h3 id="claude-ai-rejected-the-session-token">
1452 claude.ai a rejeté le jeton de session1481 claude.ai a rejeté le jeton de session
1453</h3>1482</h3>
1454 1483
1455Une requête de [connecteur claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai) a échoué car claude.ai a rejeté le jeton de votre connexion Claude Code. Le jeton rejeté est votre connexion, pas l'autorisation propre du connecteur dans claude.ai, donc autoriser le connecteur à nouveau ne le résout pas. Dans `/mcp`, le connecteur s'affiche comme `session token rejected` et sa vue de détail se lit :1484Une requête d'un [connecteur claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai) a échoué parce que claude.ai a rejeté le jeton de votre connexion Claude Code. Le jeton rejeté est votre connexion, et non l'autorisation propre du connecteur dans claude.ai ; autoriser à nouveau le connecteur ne résout donc pas le problème. Dans `/mcp`, le connecteur apparaît comme `session token rejected` et sa vue détaillée indique :
1456 1485
1457```text theme={null}1486```text theme={null}
1458claude.ai rejected the session token. Run /login, then reconnect.1487claude.ai rejected the session token. Run /login, then reconnect.
1459```1488```
1460 1489
1461**À faire :**1490**Que faire :**
1462 1491
1463* Exécutez `/login` pour vous reconnecter1492* Exécutez `/login` pour vous reconnecter
1464* Reconnectez le connecteur à partir de `/mcp`, ou exécutez `/mcp reconnect <server>`. La reconnexion avant de vous reconnecter laisse le connecteur dans le même état. L'option **Reconnect** du panneau `/mcp` signale `your claude.ai session token was rejected` ; la forme `/mcp reconnect <server>` tapée signale une reconnexion réussie même si le jeton est toujours rejeté.1493* Reconnectez le connecteur depuis `/mcp`, ou exécutez `/mcp reconnect <server>`. Reconnecter avant de vous être reconnecté laisse le connecteur dans le même état. L'option **Reconnect** du panneau `/mcp` signale `your claude.ai session token was rejected` ; la forme saisie `/mcp reconnect <server>` signale une reconnexion réussie alors que le jeton est toujours rejeté.
1465 1494
1466Avant v2.1.222, Claude Code marquait le connecteur comme ayant besoin d'authentification à la place, ce qui vous pointait vers le flux d'autorisation du connecteur même si le compléter ne résolvait pas l'état.1495Avant la v2.1.222, Claude Code marquait plutôt le connecteur comme nécessitant une authentification, ce qui vous orientait vers le flux d'autorisation du connecteur alors que le mener à terme ne résolvait pas l'état.
1467 1496
1468<h3 id="mcp-server-needs-you-to-sign-in-again">1497<h3 id="mcp-server-needs-you-to-sign-in-again">
1469 Le serveur MCP a besoin que vous vous reconnectiez1498 Le serveur MCP vous demande de vous reconnecter
1470</h3>1499</h3>
1471 1500
1472Un [serveur MCP](/docs/fr/mcp) distant a rejeté la credential sur un appel d'outil en cours de session, généralement parce qu'une connexion ou un jeton a expiré ou parce que le jeton manque d'une permission que l'outil nécessite. L'appel d'outil échoue, et `/mcp` marque le serveur comme [ayant besoin d'authentification](/docs/fr/mcp#authenticate-with-remote-mcp-servers).1501Un [serveur MCP](/docs/fr/mcp) distant a rejeté les identifiants lors d'un appel d'outil en cours de session, généralement parce qu'une connexion ou un jeton a expiré ou parce que le jeton ne dispose pas d'une permission dont l'outil a besoin. L'appel d'outil échoue, et `/mcp` marque le serveur comme [nécessitant une authentification](/docs/fr/mcp#authenticate-with-remote-mcp-servers).
1473 1502
1474Pour un serveur auquel vous vous connectez à partir de Claude Code, y compris un connecteur claude.ai, la connexion a expiré ou a été révoquée :1503Pour un serveur auquel vous vous connectez depuis Claude Code, y compris un connecteur claude.ai, la connexion a expiré ou a été révoquée :
1475 1504
1476```text theme={null}1505```text theme={null}
1477MCP server "<name>" needs you to sign in again (run /mcp to re-authenticate)1506MCP server "<name>" needs you to sign in again (run /mcp to re-authenticate)
1478```1507```
1479 1508
1480Exécutez `/mcp`, sélectionnez le serveur et reconnectez-vous à partir de son menu.1509Exécutez `/mcp`, sélectionnez le serveur et reconnectez-vous depuis son menu.
1481 1510
1482Pour un serveur configuré avec un script [`headersHelper`](/docs/fr/mcp#use-dynamic-headers-for-custom-authentication), Claude Code a déjà réexécuté le helper et réessayé l'appel une fois avant d'afficher ceci :1511Pour un serveur configuré avec un script [`headersHelper`](/docs/fr/mcp#use-dynamic-headers-for-custom-authentication), Claude Code a déjà réexécuté le helper et relancé l'appel une fois avant d'afficher ceci :
1483 1512
1484```text theme={null}1513```text theme={null}
1485MCP server "<name>" rejected the credential from its headersHelper (check the helper and run /mcp to reconnect, or to authenticate if the server also uses OAuth)1514MCP server "<name>" rejected the credential from its headersHelper (check the helper and run /mcp to reconnect, or to authenticate if the server also uses OAuth)
1486```1515```
1487 1516
1488Vérifiez que le helper retourne une credential que le serveur accepte, puis reconnectez à partir de `/mcp`, qui réexécute le helper.1517Vérifiez que le helper renvoie des identifiants que le serveur accepte, puis reconnectez-vous depuis `/mcp`, qui réexécute le helper.
1489 1518
1490Pour un serveur avec un en-tête `Authorization` statique dans sa configuration :1519Pour un serveur avec un en-tête `Authorization` statique dans sa configuration :
1491 1520
1493MCP server "<name>" rejected the Authorization header in its config (update it, then run /mcp to reconnect)1522MCP server "<name>" rejected the Authorization header in its config (update it, then run /mcp to reconnect)
1494```1523```
1495 1524
1496Mettez à jour la valeur d'en-tête où le serveur est configuré, puis reconnectez à partir de `/mcp`.1525Mettez à jour la valeur de l'en-tête là où le serveur est configuré, puis reconnectez-vous depuis `/mcp`.
1497 1526
1498Avant v2.1.273, les cas de connexion expirée, `headersHelper` et d'en-tête `Authorization` affichaient tous `MCP server "<name>" requires re-authorization (token expired)`.1527Avant la v2.1.273, les cas de connexion expirée, de `headersHelper` et d'en-tête `Authorization` affichaient tous `MCP server "<name>" requires re-authorization (token expired)`.
1499 1528
1500Un serveur peut également refuser un appel d'outil avec HTTP 403 `insufficient_scope` pour vous demander d'autoriser une portée, parfois une que votre jeton liste déjà. Le message nomme cette portée :1529Un serveur peut également refuser un appel d'outil avec une erreur HTTP 403 `insufficient_scope` pour vous demander d'autoriser un scope, parfois un scope que votre jeton liste déjà. Le message nomme ce scope :
1501 1530
1502```text theme={null}1531```text theme={null}
1503MCP server "<name>" needs additional permissions (scope: "<scope>") — run /mcp to re-authenticate1532MCP server "<name>" needs additional permissions (scope: "<scope>") — run /mcp to re-authenticate
1504```1533```
1505 1534
1506Exécutez `/mcp`, sélectionnez le serveur et authentifiez-vous à nouveau à partir de son menu.1535Exécutez `/mcp`, sélectionnez le serveur et authentifiez-vous à nouveau depuis son menu.
1507 1536
1508Quand la configuration du serveur ne définit ni [`oauth.scopes`](/docs/fr/mcp#restrict-oauth-scopes) ni [`authServerMetadataUrl`](/docs/fr/mcp#override-oauth-metadata-discovery), Claude Code demande la portée que le serveur a nommée. Avec l'un ou l'autre paramètre, Claude Code demande plutôt les portées de ce paramètre. Si vous avez épinglé `oauth.scopes`, ajoutez la portée manquante à cette liste avant de vous authentifier à nouveau.1537Lorsque la configuration du serveur ne définit ni [`oauth.scopes`](/docs/fr/mcp#restrict-oauth-scopes) ni [`authServerMetadataUrl`](/docs/fr/mcp#override-oauth-metadata-discovery), Claude Code demande le scope que le serveur a nommé. Avec l'un ou l'autre de ces paramètres, Claude Code demande plutôt les scopes de ce paramètre. Si vous avez figé `oauth.scopes`, ajoutez le scope manquant à cette liste avant de vous authentifier à nouveau.
1509 1538
1510Avant v2.1.274, ce cas affichait le message `needs you to sign in again`, et avant v2.1.273 il affichait `requires re-authorization (token expired)` comme les autres cas.1539Avant la v2.1.274, ce cas affichait le message `needs you to sign in again`, et avant la v2.1.273 il affichait `requires re-authorization (token expired)` comme les autres cas.
1511 1540
1512<h3 id="mcp-server-url-is-missing-or-not-a-valid-url">1541<h3 id="mcp-server-url-is-missing-or-not-a-valid-url">
1513 URL du serveur MCP manquante ou non valide1542 L'URL du serveur MCP est manquante ou n'est pas une URL valide
1514</h3>1543</h3>
1515 1544
1516Claude Code a refusé de démarrer une connexion OAuth pour un serveur MCP distant car l'`url` configurée du serveur ne s'analyse pas comme une URL. À moins que Claude Code ait un problème de configuration plus spécifique à signaler pour le serveur, l'exécution de [`claude mcp login <name>`](/docs/fr/mcp#authenticate-from-the-command-line) dans votre shell imprime le refus comme :1545Claude Code a refusé de démarrer une connexion OAuth pour un serveur MCP distant parce que l'`url` configurée du serveur ne peut pas être analysée comme une URL. Sauf si Claude Code a un problème de configuration plus précis à signaler pour le serveur, exécuter [`claude mcp login <name>`](/docs/fr/mcp#authenticate-from-the-command-line) dans votre shell affiche le refus ainsi :
1517 1546
1518```text theme={null}1547```text theme={null}
1519Couldn't complete authentication for "<name>": This server's URL is missing or not a valid URL, so sign-in can't start. Fix the URL in its MCP config (or set the environment variable it uses) and try again.1548Couldn't complete authentication for "<name>": This server's URL is missing or not a valid URL, so sign-in can't start. Fix the URL in its MCP config (or set the environment variable it uses) and try again.
1520```1549```
1521 1550
1522**À faire :**1551**Que faire :**
1523 1552
1524* Définissez l'entrée `url` au point de terminaison réel du serveur où le serveur est configuré, ou définissez la variable d'environnement que sa référence [`${VAR}`](/docs/fr/mcp#environment-variable-expansion-in-mcp-json) nomme, puis exécutez la connexion à nouveau.1553* Définissez l'`url` de l'entrée sur l'endpoint réel du serveur là où le serveur est configuré, ou définissez la variable d'environnement que nomme sa [référence `${VAR}`](/docs/fr/mcp#environment-variable-expansion-in-mcp-json), puis relancez la connexion.
1525 1554
1526<h3 id="issuer-mismatch-in-authorization-response">1555<h3 id="issuer-mismatch-in-authorization-response">
1527 Incompatibilité d'émetteur dans la réponse d'autorisation1556 Incohérence de l'émetteur dans la réponse d'autorisation
1528</h3>1557</h3>
1529 1558
1530Pendant une [connexion OAuth MCP](/docs/fr/mcp#authenticate-with-remote-mcp-servers), le serveur d'autorisation a redirigé vers Claude Code avec un paramètre `iss` qui ne nomme pas l'émetteur que Claude Code attendait des métadonnées OAuth du serveur. Un mauvais émetteur à cette étape est à quoi ressemble une attaque de mélange de serveur d'autorisation, donc Claude Code échoue la connexion au lieu d'échanger le code d'autorisation. Claude Code affiche l'erreur dans le menu du serveur `/mcp` après la connexion du navigateur :1559Lors d'une [connexion OAuth MCP](/docs/fr/mcp#authenticate-with-remote-mcp-servers), le serveur d'autorisation a redirigé vers Claude Code avec un paramètre `iss` qui ne nomme pas l'émetteur que Claude Code attendait d'après les métadonnées OAuth du serveur. Un émetteur incorrect à cette étape correspond à la signature d'une attaque par confusion de serveur d'autorisation (mix-up) ; Claude Code fait donc échouer la connexion au lieu d'échanger le code d'autorisation. Claude Code affiche l'erreur dans le menu du serveur `/mcp` après la connexion par navigateur :
1531 1560
1532```text theme={null}1561```text theme={null}
1533Issuer mismatch in authorization response (RFC 9207): expected "https://auth.example.com", received "https://other.example.com"1562Issuer mismatch in authorization response (RFC 9207): expected "https://auth.example.com", received "https://other.example.com"
1534```1563```
1535 1564
1536`expected` est l'émetteur des métadonnées OAuth du serveur, et `received` est la valeur `iss` que la redirection portait. Une connexion dont la redirection ne porte pas de paramètre `iss` réussit la vérification, à moins que les métadonnées du serveur définissent `authorization_response_iss_parameter_supported`, auquel cas Claude Code échoue la connexion.1565`expected` est l'émetteur indiqué dans les métadonnées OAuth du serveur, et `received` est la valeur `iss` que contenait la redirection. Une connexion dont la redirection ne contient aucun paramètre `iss` passe la vérification, sauf si les métadonnées du serveur définissent `authorization_response_iss_parameter_supported`, auquel cas Claude Code fait échouer la connexion.
1537 1566
1538**À faire :**1567**Que faire :**
1539 1568
1540* Réessayez la connexion à partir de `/mcp`1569* Relancez la connexion depuis `/mcp`
1541* Si l'erreur se répète, signalez-la à l'opérateur du serveur. La correction est côté serveur : le serveur d'autorisation doit retourner le même émetteur dans le paramètre `iss` qu'il annonce dans ses métadonnées1570* Si l'erreur se répète, signalez-la à l'opérateur du serveur. La correction se fait côté serveur : le serveur d'autorisation doit renvoyer dans le paramètre `iss` le même émetteur que celui qu'il annonce dans ses métadonnées
1542* Pour vous connecter pendant que le serveur est en cours de correction, démarrez Claude Code avec [`MCP_SDK_GENERATION=v1`](/docs/fr/env-vars), dont le [runtime](/docs/fr/mcp#mcp-client-runtimes) n'exécute pas cette vérification. Cela supprime une protection contre les attaques de mélange, donc préférez la correction côté serveur1571* Pour vous connecter pendant la correction du serveur, démarrez Claude Code avec [`MCP_SDK_GENERATION=v1`](/docs/fr/env-vars), dont le [runtime](/docs/fr/mcp#mcp-client-runtimes) n'effectue pas cette vérification. Cela supprime une protection contre les attaques par confusion ; privilégiez donc la correction côté serveur
1543 1572
1544Avant v2.1.232, Claude Code utilisait le runtime v2 uniquement dans un déploiement progressif ou quand vous définissiez `MCP_SDK_GENERATION=v2`.1573Avant la v2.1.232, Claude Code n'utilisait le runtime v2 que dans le cadre d'un déploiement progressif ou lorsque vous définissiez `MCP_SDK_GENERATION=v2`.
1545 1574
1546<h3 id="refusing-to-send-credentials-to-non-https-token-endpoint">1575<h3 id="refusing-to-send-credentials-to-non-https-token-endpoint">
1547 Refus d'envoyer des credentials à un point de terminaison de jeton non-https1576 Refus d'envoyer des identifiants à un endpoint de jeton non HTTPS
1548</h3>1577</h3>
1549 1578
1550Sur le [runtime v2](/docs/fr/mcp#mcp-client-runtimes), Claude Code envoie une requête de jeton [OAuth MCP](/docs/fr/mcp#authenticate-with-remote-mcp-servers) uniquement à un point de terminaison de jeton servi via HTTPS ou à `localhost`, `127.0.0.1` ou `::1`. Ce message signifie que le point de terminaison de jeton du serveur n'est ni l'un ni l'autre, donc Claude Code s'est arrêté avant d'envoyer la requête. Cela se produit après la connexion du navigateur, donc l'étape du navigateur réussit d'abord, et à nouveau chaque fois que Claude Code rafraîchit le jeton du serveur.1579Sur le [runtime v2](/docs/fr/mcp#mcp-client-runtimes), Claude Code n'envoie une requête de jeton [OAuth MCP](/docs/fr/mcp#authenticate-with-remote-mcp-servers) qu'à un endpoint de jeton servi en HTTPS ou sur `localhost`, `127.0.0.1` ou `::1`. Ce message signifie que l'endpoint de jeton du serveur n'est ni l'un ni l'autre ; Claude Code s'est donc arrêté avant d'envoyer la requête. Cela se produit après la connexion par navigateur, de sorte que l'étape du navigateur réussit d'abord, puis à nouveau chaque fois que Claude Code actualise le jeton du serveur.
1551 1580
1552Sous sa forme complète, le message provient du SDK MCP et cite le point de terminaison de jeton qu'il a refusé. Dans le journal de débogage, il suit `Error during auth completion:` pour une connexion ou `Token refresh failed:` pour un rafraîchissement. Dans votre shell, `claude mcp login <name>` l'imprime après `Couldn't complete authentication for "<name>":`, et dans une session, `/mcp` l'affiche sous le menu du serveur :1581Dans sa forme complète, le message provient du MCP SDK et cite l'endpoint de jeton qu'il a refusé. Dans le log de débogage, il suit `Error during auth completion:` pour une connexion ou `Token refresh failed:` pour une actualisation. Dans votre shell, `claude mcp login <name>` l'affiche après `Couldn't complete authentication for "<name>":`, et dans une session, `/mcp` l'affiche sous le menu du serveur :
1553 1582
1554```text theme={null}1583```text theme={null}
1555Refusing to send credentials to non-https token endpoint 'http://192.168.1.50:8123/oauth/token'. OAuth token requests MUST use TLS (localhost / 127.0.0.1 / ::1 are exempt).1584Refusing to send credentials to non-https token endpoint 'http://192.168.1.50:8123/oauth/token'. OAuth token requests MUST use TLS (localhost / 127.0.0.1 / ::1 are exempt).
1556```1585```
1557 1586
1558Claude Code traite une URL de serveur qui a une chaîne de requête ou un segment de chemin long et aléatoire comme possiblement secret. Pour un tel serveur, il rédige les erreurs de connexion que le SDK MCP lève avant de les afficher ou de les enregistrer. Cette erreur se lit alors comme un nom court qui peut changer entre les versions, comme `io`, suivi de `from the MCP SDK for` et l'URL du serveur réduite. Les autres erreurs du SDK MCP prennent la même forme là. Le message réduit ne peut être cette erreur que quand le point de terminaison de jeton du serveur est `http://` simple à une adresse autre que `localhost`, `127.0.0.1` ou `::1`.1587Claude Code considère comme potentiellement secrète une URL de serveur qui comporte une chaîne de requête ou un long segment de chemin d'apparence aléatoire. Pour un tel serveur, il masque les erreurs de connexion levées par le MCP SDK avant de les afficher ou de les journaliser. Cette erreur se présente alors sous la forme d'un nom court susceptible de changer d'une version à l'autre, comme `io`, suivi de `from the MCP SDK for` et de l'URL du serveur masquée. Les autres erreurs du MCP SDK prennent la même forme dans ce cas. Le message masqué ne peut correspondre à cette erreur que lorsque l'endpoint de jeton du serveur est en `http://` simple sur une adresse autre que `localhost`, `127.0.0.1` ou `::1`.
1559 1588
1560**À faire :**1589**Que faire :**
1561 1590
1562* Servez ce point de terminaison de jeton via HTTPS, par exemple en mettant le serveur derrière un proxy inverse ou un tunnel qui termine TLS et en configurant le serveur pour annoncer l'adresse `https://`1591* Servez cet endpoint de jeton en HTTPS, par exemple en plaçant le serveur derrière un reverse proxy ou un tunnel qui termine TLS et en configurant le serveur pour annoncer l'adresse `https://`
1563* Pour vous connecter sans modifier le serveur, démarrez Claude Code avec [`MCP_SDK_GENERATION=v1`](/docs/fr/env-vars), dont le [runtime](/docs/fr/mcp#mcp-client-runtimes) n'applique pas cette règle et envoie la requête de jeton via `http://` simple. Ce choix dure jusqu'à ce que vous quittiez et s'applique à chaque serveur. Le runtime v1 ignore également la [vérification d'émetteur](#issuer-mismatch-in-authorization-response), donc préférez servir le point de terminaison via HTTPS1592* Pour vous connecter sans modifier le serveur, démarrez Claude Code avec [`MCP_SDK_GENERATION=v1`](/docs/fr/env-vars), dont le [runtime](/docs/fr/mcp#mcp-client-runtimes) n'applique pas cette règle et envoie la requête de jeton en HTTP simple. Ce choix dure jusqu'à ce que vous quittiez et s'applique à tous les serveurs. Le runtime v1 ignore également la [vérification de l'émetteur](#issuer-mismatch-in-authorization-response) ; privilégiez donc le service de l'endpoint en HTTPS
1564 1593
1565<h3 id="aws-credentials-expired-or-invalid">1594<h3 id="aws-credentials-expired-or-invalid">
1566 Les credentials AWS ont expiré ou sont invalides1595 Identifiants AWS expirés ou non valides
1567</h3>1596</h3>
1568 1597
1569Votre jeton de session AWS a expiré ou a été rejeté. Ce message apparaît sur un 401 de [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws) ou du [point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint), c'est ainsi que ces fournisseurs signalent un jeton de sécurité expiré.1598Votre jeton de session AWS a expiré ou a été rejeté. Ce message apparaît lors d'une 401 provenant de [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) ou de l'[endpoint Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint), qui est la manière dont ces fournisseurs signalent un jeton de sécurité expiré.
1570 1599
1571L'indice d'action au milieu varie selon votre configuration. La partie stable est le début `AWS credentials expired or invalid` :1600L'indication d'action au milieu varie selon votre configuration. La partie stable est le début `AWS credentials expired or invalid` :
1572 1601
1573```text theme={null}1602```text theme={null}
1574AWS credentials expired or invalid · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · API Error: 401 ...1603AWS credentials expired or invalid · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · API Error: 401 ...
1575```1604```
1576 1605
1577Avant v2.1.273, ce message n'apparaissait que quand `awsAuthRefresh` était configuré.1606Avant la v2.1.273, ce message n'apparaissait que lorsque `awsAuthRefresh` était configuré.
1578 1607
1579**À faire :**1608**Que faire :**
1580 1609
1581* Si l'indice dit que les credentials sont gérées par cet environnement, l'application qui a lancé Claude Code possède la credential et les autres étapes ici ne s'appliquent pas : réessayez, ou contactez votre administrateur1610* Si l'indication précise que les identifiants sont gérés par cet environnement, l'application qui a lancé Claude Code détient les identifiants et les autres étapes ici ne s'appliquent pas : réessayez, ou contactez votre administrateur
1582* Si [`awsAuthRefresh`](/docs/fr/amazon-bedrock#advanced-credential-configuration) est défini, exécutez la commande nommée dans le message, comme `aws sso login --profile myprofile`, dans un autre terminal et complétez la connexion du navigateur, puis réessayez. Sinon, rafraîchissez la credential AWS que vous utilisez vous-même : votre connexion SSO, les clés d'accès, la clé API ou le jeton proxy1611* Si [`awsAuthRefresh`](/docs/fr/amazon-bedrock#advanced-credential-configuration) est défini, exécutez la commande nommée dans le message, comme `aws sso login --profile myprofile`, dans un autre terminal et terminez la connexion par navigateur, puis réessayez. Sinon, actualisez vous-même les identifiants AWS que vous utilisez : votre connexion SSO, vos clés d'accès, votre clé API ou votre jeton de proxy
1583* Avec `awsAuthRefresh` défini dans une session interactive, vous pouvez à la place exécuter `/login`, choisir **3rd-party platform**, puis sélectionner **Claude Platform on AWS · refresh credentials** sous **Using 3rd-party platforms** pour exécuter la même commande sans redémarrer Claude Code. Consultez [Configurer les credentials AWS](/docs/fr/claude-platform-on-aws#1-configure-aws-credentials)1612* Avec `awsAuthRefresh` défini dans une session interactive, vous pouvez plutôt exécuter `/login`, choisir **3rd-party platform**, puis sélectionner **Claude Platform on AWS · refresh credentials** sous **Using 3rd-party platforms** pour exécuter la même commande sans redémarrer Claude Code. Consultez [Configurer les identifiants AWS](/docs/fr/claude-platform-on-aws#1-configure-aws-credentials)
1584* Si l'erreur se répète après la réussite de la commande de rafraîchissement, confirmez que l'identité est valide en dehors de Claude Code avec `aws sts get-caller-identity` dans le même shell et profil1613* Si l'erreur se répète après la réussite de la commande d'actualisation, confirmez que l'identité est valide en dehors de Claude Code avec `aws sts get-caller-identity` dans le même shell et le même profil
1585 1614
1586<h3 id="aws-authentication-failed">1615<h3 id="aws-authentication-failed">
1587 L'authentification AWS a échoué1616 Échec de l'authentification AWS
1588</h3>1617</h3>
1589 1618
1590Votre fournisseur AWS a retourné un 403, ou [Amazon Bedrock](/docs/fr/amazon-bedrock) a retourné un 401.1619Votre fournisseur AWS a renvoyé une 403, ou [Amazon Bedrock](/docs/fr/amazon-bedrock) a renvoyé une 401.
1591 1620
1592Amazon Bedrock signale un jeton de sécurité expiré comme un 403, mais un 403 est aussi comment il signale un refus d'autorisation, comme un `AccessDeniedException` d'une permission IAM manquante. Claude Code ne peut pas distinguer ces deux causes.1621Amazon Bedrock signale un jeton de sécurité expiré par une 403, mais une 403 est aussi sa manière de signaler un refus d'autorisation, comme une `AccessDeniedException` due à une permission IAM manquante. Claude Code ne peut pas distinguer ces deux causes.
1593 1622
1594Un 401 d'Amazon Bedrock atterrit aussi ici plutôt que sous [Les credentials AWS ont expiré ou sont invalides](#aws-credentials-expired-or-invalid), car Amazon Bedrock ne signale pas un jeton expiré comme un 401. Un 401 de ce point de terminaison provient généralement de quelque chose d'autre dans le chemin de la requête, comme un proxy d'entreprise.1623Une 401 provenant d'Amazon Bedrock aboutit également ici plutôt que sous [Identifiants AWS expirés ou non valides](#aws-credentials-expired-or-invalid), car Amazon Bedrock ne signale pas un jeton expiré par une 401. Une 401 provenant de cet endpoint vient généralement d'un autre élément du chemin de la requête, comme un proxy d'entreprise.
1595 1624
1596Un rafraîchissement de credential corrige un jeton expiré et ne peut pas corriger les autres causes, donc le message offre les deux :1625Une actualisation des identifiants corrige un jeton expiré mais ne peut pas corriger les autres causes ; le message propose donc les deux :
1597 1626
1598```text theme={null}1627```text theme={null}
1599AWS authentication failed · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · if credentials are current, check AWS permissions and model access · API Error: 403 ...1628AWS authentication failed · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · if credentials are current, check AWS permissions and model access · API Error: 403 ...
1600```1629```
1601 1630
1602L'indice d'action au milieu varie selon votre configuration. La partie stable est le début `AWS authentication failed`.1631L'indication d'action au milieu varie selon votre configuration. La partie stable est le début `AWS authentication failed`.
1603 1632
1604Quand le 403 est la réponse d'Amazon Bedrock que vous n'avez pas accès au modèle avec l'ID de modèle spécifié, l'indice vous dit plutôt d'activer le modèle pour votre compte et région dans la console Amazon Bedrock.1633Lorsque la 403 est la réponse d'Amazon Bedrock indiquant que vous n'avez pas accès au modèle avec l'identifiant de modèle spécifié, l'indication vous invite plutôt à activer le modèle pour votre compte et votre région dans la console Amazon Bedrock.
1605 1634
1606Avant v2.1.273, ce message n'apparaissait que quand `awsAuthRefresh` était configuré.1635Avant la v2.1.273, ce message n'apparaissait que lorsque `awsAuthRefresh` était configuré.
1607 1636
1608**À faire :**1637**Que faire :**
1609 1638
1610* Si l'indice dit que les credentials sont gérées par cet environnement, l'application qui a lancé Claude Code possède la credential et les autres étapes ici ne s'appliquent pas : réessayez, ou contactez votre administrateur1639* Si l'indication précise que les identifiants sont gérés par cet environnement, l'application qui a lancé Claude Code détient les identifiants et les autres étapes ici ne s'appliquent pas : réessayez, ou contactez votre administrateur
1611* Rafraîchissez vos credentials AWS au cas où une credential expirée serait la cause : exécutez la commande [`awsAuthRefresh`](/docs/fr/amazon-bedrock#advanced-credential-configuration) nommée dans le message quand une est définie, ou rafraîchissez votre connexion SSO, les clés d'accès, la clé API ou le jeton proxy vous-même1640* Actualisez vos identifiants AWS au cas où des identifiants expirés seraient en cause : exécutez la commande [`awsAuthRefresh`](/docs/fr/amazon-bedrock#advanced-credential-configuration) nommée dans le message lorsqu'elle est définie, ou actualisez vous-même votre connexion SSO, vos clés d'accès, votre clé API ou votre jeton de proxy
1612* Si vos credentials sont actuelles, confirmez que les permissions IAM dans [Configuration IAM](/docs/fr/amazon-bedrock#iam-configuration) sont attachées à l'identité que vous utilisez et que le modèle sélectionné est activé pour votre compte et région1641* Si vos identifiants sont à jour, vérifiez que les permissions IAM de [Configuration IAM](/docs/fr/amazon-bedrock#iam-configuration) sont attachées à l'identité que vous utilisez et que le modèle sélectionné est activé pour votre compte et votre région
1613* Exécutez `aws sts get-caller-identity` pour confirmer quelle identité vos requêtes utilisent1642* Exécutez `aws sts get-caller-identity` pour confirmer quelle identité vos requêtes utilisent
1614 1643
1615<h3 id="google-cloud-credentials-expired-or-invalid">1644<h3 id="google-cloud-credentials-expired-or-invalid">
1616 Les credentials Google Cloud ont expiré ou sont invalides1645 Identifiants Google Cloud expirés ou non valides
1617</h3>1646</h3>
1618 1647
1619Vos credentials Google Cloud pour [Agent Platform de Google Cloud](/docs/fr/google-vertex-ai) ont expiré ou ont été rejetées : la requête a retourné un 401, c'est ainsi qu'Agent Platform signale l'expiration des credentials.1648Vos identifiants Google Cloud pour [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai) ont expiré ou ont été rejetés : la requête a renvoyé une 401, qui est la manière dont Agent Platform signale l'expiration des identifiants.
1620 1649
1621L'indice d'action au milieu varie selon votre configuration. La partie stable est le début `Google Cloud credentials expired or invalid` :1650L'indication d'action au milieu varie selon votre configuration. La partie stable est le début `Google Cloud credentials expired or invalid` :
1622 1651
1623```text theme={null}1652```text theme={null}
1624Google Cloud credentials expired or invalid · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · API Error: 401 ...1653Google Cloud credentials expired or invalid · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · API Error: 401 ...
1625```1654```
1626 1655
1627**À faire :**1656**Que faire :**
1628 1657
1629* Si l'indice dit que les credentials sont gérées par cet environnement, l'application qui a lancé Claude Code possède la credential et les autres étapes ici ne s'appliquent pas : réessayez, ou contactez votre administrateur1658* Si l'indication précise que les identifiants sont gérés par cet environnement, l'application qui a lancé Claude Code détient les identifiants et les autres étapes ici ne s'appliquent pas : réessayez, ou contactez votre administrateur
1630* Si vous vous authentifiez avec les credentials par défaut de l'application, exécutez la commande [`gcpAuthRefresh`](/docs/fr/google-vertex-ai#advanced-credential-configuration) nommée dans le message, ou `gcloud auth application-default login`, et complétez la connexion, puis réessayez1659* Si vous vous authentifiez avec les identifiants par défaut de l'application, exécutez la commande [`gcpAuthRefresh`](/docs/fr/google-vertex-ai#advanced-credential-configuration) nommée dans le message, ou `gcloud auth application-default login`, et terminez la connexion, puis réessayez
1631* Si vous acheminez via une [passerelle LLM](/docs/fr/llm-gateway) avec `CLAUDE_CODE_SKIP_VERTEX_AUTH` défini, rafraîchissez le jeton de la passerelle dans `ANTHROPIC_AUTH_TOKEN` ou `ANTHROPIC_CUSTOM_HEADERS`, puis réessayez1660* Si vous passez par une [passerelle LLM](/docs/fr/llm-gateway) avec `CLAUDE_CODE_SKIP_VERTEX_AUTH` défini, actualisez le jeton de la passerelle dans `ANTHROPIC_AUTH_TOKEN` ou `ANTHROPIC_CUSTOM_HEADERS`, puis réessayez
1632* Si vous vous authentifiez avec un fichier de clé de compte de service, confirmez que `GOOGLE_APPLICATION_CREDENTIALS` pointe vers une clé valide. Consultez [Configurer les credentials GCP](/docs/fr/google-vertex-ai#3-configure-gcp-credentials)1661* Si vous vous authentifiez avec un fichier de clé de compte de service, vérifiez que `GOOGLE_APPLICATION_CREDENTIALS` pointe vers une clé valide. Consultez [Configurer les identifiants GCP](/docs/fr/google-vertex-ai#3-configure-gcp-credentials)
1633* Si l'erreur se répète après un rafraîchissement, confirmez que l'identité fonctionne en dehors de Claude Code avec `gcloud auth application-default print-access-token` dans le même shell1662* Si l'erreur se répète après une actualisation, confirmez que l'identité fonctionne en dehors de Claude Code avec `gcloud auth application-default print-access-token` dans le même shell
1634 1663
1635Avant v2.1.273, un 401 d'Agent Platform affichait le message générique `Please run /login` ou `Failed to authenticate` à la place, qui ne peut pas rafraîchir les credentials Google Cloud.1664Avant la v2.1.273, une 401 provenant d'Agent Platform affichait plutôt le message générique `Please run /login` ou `Failed to authenticate`, qui ne permet pas d'actualiser les identifiants Google Cloud.
1636 1665
1637<h3 id="google-cloud-authentication-failed">1666<h3 id="google-cloud-authentication-failed">
1638 L'authentification Google Cloud a échoué1667 Échec de l'authentification Google Cloud
1639</h3>1668</h3>
1640 1669
1641[Agent Platform de Google Cloud](/docs/fr/google-vertex-ai) a retourné un 403, qu'il utilise pour les refus d'autorisation plutôt que les credentials expirées. Généralement, l'identité avec laquelle vous vous authentifiez manque d'une permission IAM, ou le modèle n'est pas activé pour votre projet.1670[Agent Platform de Google Cloud](/docs/fr/google-vertex-ai) a renvoyé une erreur 403, qu'il utilise pour les refus d'autorisation plutôt que pour les identifiants expirés. En général, il manque une permission IAM à l'identité avec laquelle vous vous authentifiez, ou le modèle n'est pas activé pour votre projet.
1642 1671
1643L'indice d'action au milieu varie selon votre configuration. La partie stable est le début `Google Cloud authentication failed` :1672L'indication d'action au milieu varie selon votre configuration. La partie stable est le début `Google Cloud authentication failed` :
1644 1673
1645```text theme={null}1674```text theme={null}
1646Google Cloud authentication failed · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · if credentials are current, check GCP IAM permissions and Vertex AI model access · API Error: 403 ...1675Google Cloud authentication failed · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · if credentials are current, check GCP IAM permissions and Vertex AI model access · API Error: 403 ...
1647```1676```
1648 1677
1649**À faire :**1678**Que faire :**
1650 1679
1651* Si l'indice dit que les credentials sont gérées par cet environnement, l'application qui a lancé Claude Code possède la credential et les autres étapes ici ne s'appliquent pas : réessayez, ou contactez votre administrateur1680* Si l'indication précise que les identifiants sont gérés par cet environnement, c'est l'application qui a lancé Claude Code qui détient l'identifiant et les autres étapes ci-dessous ne s'appliquent pas : réessayez ou contactez votre administrateur
1652* Confirmez que les rôles dans [Configuration IAM](/docs/fr/google-vertex-ai#iam-configuration) sont accordés à l'identité avec laquelle vous vous authentifiez1681* Vérifiez que les rôles décrits dans [Configuration IAM](/docs/fr/google-vertex-ai#iam-configuration) sont accordés à l'identité avec laquelle vous vous authentifiez
1653* Confirmez que le modèle est activé pour votre projet. Consultez [Demander l'accès au modèle](/docs/fr/google-vertex-ai#2-request-model-access)1682* Vérifiez que le modèle est activé pour votre projet. Consultez [Demander l'accès au modèle](/docs/fr/google-vertex-ai#2-request-model-access)
1654 1683
1655Avant v2.1.273, un 403 d'Agent Platform affichait le message générique `Please run /login` ou `Failed to authenticate` à la place, qui ne peut pas rafraîchir les credentials Google Cloud.1684Avant la v2.1.273, une erreur 403 d'Agent Platform affichait à la place le message générique `Please run /login` ou `Failed to authenticate`, qui ne permet pas d'actualiser les identifiants Google Cloud.
1656 1685
1657<h3 id="microsoft-foundry-authentication-failed">1686<h3 id="microsoft-foundry-authentication-failed">
1658 L'authentification Microsoft Foundry a échoué1687 Échec de l'authentification Microsoft Foundry
1659</h3>1688</h3>
1660 1689
1661[Microsoft Foundry](/docs/fr/microsoft-foundry) a retourné un 401 ou 403 : la credential Azure sur la requête a été rejetée, ou l'identité derrière n'a pas accès à la ressource Foundry. `/login` ne peut pas émettre de credentials Azure. L'indice d'action au milieu varie selon votre configuration. La partie stable est le début `Microsoft Foundry authentication failed` :1690[Microsoft Foundry](/docs/fr/microsoft-foundry) a renvoyé une erreur 401 ou 403 : l'identifiant Azure de la requête a été rejeté, ou l'identité associée n'a pas accès à la ressource Foundry. `/login` ne peut pas générer d'identifiants Azure. L'indication d'action au milieu varie selon votre configuration. La partie stable est le début `Microsoft Foundry authentication failed` :
1662 1691
1663```text theme={null}1692```text theme={null}
1664Microsoft Foundry authentication failed · refresh your Foundry credential (ANTHROPIC_FOUNDRY_AUTH_TOKEN, ANTHROPIC_FOUNDRY_API_KEY, Azure sign-in for Entra, or your proxy token) and retry · if credentials are current, check access to the Foundry resource · API Error: 401 ...1693Microsoft Foundry authentication failed · refresh your Foundry credential (ANTHROPIC_FOUNDRY_AUTH_TOKEN, ANTHROPIC_FOUNDRY_API_KEY, Azure sign-in for Entra, or your proxy token) and retry · if credentials are current, check access to the Foundry resource · API Error: 401 ...
1665```1694```
1666 1695
1667**À faire :**1696**Que faire :**
1668 1697
1669* Si l'indice dit que les credentials sont gérées par cet environnement, l'application qui a lancé Claude Code possède la credential et les autres étapes ici ne s'appliquent pas : réessayez, ou contactez votre administrateur1698* Si l'indication précise que les identifiants sont gérés par cet environnement, c'est l'application qui a lancé Claude Code qui détient l'identifiant et les autres étapes ci-dessous ne s'appliquent pas : réessayez ou contactez votre administrateur
1670* Rafraîchissez la credential que vous avez configurée dans [Configurer les credentials Azure](/docs/fr/microsoft-foundry#2-configure-azure-credentials) : faites tourner `ANTHROPIC_FOUNDRY_API_KEY`, émettez un `ANTHROPIC_FOUNDRY_AUTH_TOKEN` frais, ou exécutez `az login` pour que la chaîne de credential Microsoft Entra par défaut puisse se reconnecter1699* Actualisez l'identifiant que vous avez configuré dans [Configurer les identifiants Azure](/docs/fr/microsoft-foundry#2-configure-azure-credentials) : renouvelez `ANTHROPIC_FOUNDRY_API_KEY`, générez un nouveau `ANTHROPIC_FOUNDRY_AUTH_TOKEN`, ou exécutez `az login` pour que la chaîne d'identifiants Microsoft Entra par défaut puisse se reconnecter
1671* Si la credential est actuelle, confirmez que l'identité a accès à la ressource Foundry. Consultez [Configuration Azure RBAC](/docs/fr/microsoft-foundry#azure-rbac-configuration)1700* Si l'identifiant est à jour, vérifiez que l'identité a accès à la ressource Foundry. Consultez [Configuration Azure RBAC](/docs/fr/microsoft-foundry#azure-rbac-configuration)
1672 1701
1673Avant v2.1.273, un 401 ou 403 de Microsoft Foundry affichait le message générique `Please run /login` ou `Failed to authenticate` à la place, qui ne peut pas rafraîchir les credentials Azure.1702Avant la v2.1.273, une erreur 401 ou 403 de Microsoft Foundry affichait à la place le message générique `Please run /login` ou `Failed to authenticate`, qui ne permet pas d'actualiser les identifiants Azure.
1674 1703
1675<h3 id="could-not-load-aws-or-google-cloud-credentials">1704<h3 id="could-not-load-aws-or-google-cloud-credentials">
1676 Impossible de charger les credentials AWS ou Google Cloud1705 Impossible de charger les identifiants AWS ou Google Cloud
1677</h3>1706</h3>
1678 1707
1679Claude Code n'a pas pu obtenir de credentials utilisables à partir de la chaîne de fournisseur de credentials AWS ou de vos credentials par défaut de l'application Google sur la machine sur laquelle il s'exécute, donc aucune requête n'a atteint votre fournisseur cloud. Claude Code efface ses credentials en cache et réessaie deux fois avant d'afficher ce message. Le détail après le `·` nomme la cause spécifique, comme une session SSO expirée, des credentials par défaut manquantes signalées comme `Could not load the default credentials`, ou une connexion révoquée signalée comme `invalid_grant` :1708Claude Code n'a pas pu obtenir d'identifiants utilisables à partir de la chaîne de fournisseurs d'identifiants AWS ou de vos identifiants par défaut d'application Google sur la machine où il s'exécute ; aucune requête n'a donc atteint votre fournisseur cloud. Claude Code vide ses identifiants en cache et réessaie deux fois avant d'afficher ce message. Le détail après le `·` indique la cause précise, par exemple une session SSO expirée, des identifiants par défaut d'application manquants signalés par `Could not load the default credentials`, ou une connexion révoquée signalée par `invalid_grant` :
1680 1709
1681```text theme={null}1710```text theme={null}
1682API Error: Could not load AWS credentials · Could not load credentials from any providers. Check or refresh your AWS credentials and try again.1711API Error: Could not load AWS credentials · Could not load credentials from any providers. Check or refresh your AWS credentials and try again.
1683API Error: Could not load Google Cloud credentials · invalid_grant. Check or refresh your Google Cloud credentials and try again.1712API Error: Could not load Google Cloud credentials · invalid_grant. Check or refresh your Google Cloud credentials and try again.
1684```1713```
1685 1714
1686En [mode non-interactif](/docs/fr/headless) avec `-p` et dans l'[Agent SDK](/docs/fr/agent-sdk/overview), le code d'erreur structuré est `cloud_credential_error`. Avant v2.1.267, le message affichait uniquement le texte de détail après `API Error:`, et le code structuré était `server_error` ou `unknown`.1715En [mode non interactif](/docs/fr/headless) avec `-p` et dans l'[Agent SDK](/docs/fr/agent-sdk/overview), le code d'erreur structuré est `cloud_credential_error`. Avant la v2.1.267, le message n'affichait que le texte de détail après `API Error:`, et le code structuré était `server_error` ou `unknown`.
1687 1716
1688**À faire :**1717**Que faire :**
1689 1718
1690* Exécutez la commande de connexion de votre fournisseur, comme `aws sso login --profile myprofile` ou `gcloud auth application-default login`, puis réessayez. [Les credentials Bedrock, Agent Platform ou Foundry ne se chargent pas](/docs/fr/troubleshoot-install#bedrock-agent-platform-or-foundry-credentials-not-loading) montre comment confirmer les credentials en dehors de Claude Code1719* Exécutez la commande de connexion de votre fournisseur, par exemple `aws sso login --profile myprofile` ou `gcloud auth application-default login`, puis réessayez. [Identifiants Bedrock, Agent Platform ou Foundry non chargés](/docs/fr/troubleshoot-install#bedrock-agent-platform-or-foundry-credentials-not-loading) explique comment vérifier les identifiants en dehors de Claude Code
1691* Si le détail se lit `AWS default-chain credential resolve timed out`, la chaîne a bloqué plutôt que d'échouer, donc suivez [Le délai d'expiration de la résolution des credentials de la chaîne par défaut AWS](#aws-default-chain-credential-resolve-timed-out) à la place1720* Si le détail indique `AWS default-chain credential resolve timed out`, la chaîne s'est bloquée au lieu d'échouer ; suivez plutôt [Délai d'expiration de la résolution des identifiants de la chaîne AWS par défaut](#aws-default-chain-credential-resolve-timed-out)
1692 1721
1693<h3 id="aws-default-chain-credential-resolve-timed-out">1722<h3 id="aws-default-chain-credential-resolve-timed-out">
1694 Le délai d'expiration de la résolution des credentials de la chaîne par défaut AWS1723 Délai d'expiration de la résolution des identifiants de la chaîne AWS par défaut
1695</h3>1724</h3>
1696 1725
1697La chaîne de fournisseur de credentials par défaut AWS n'a pas produit de credentials dans les 60 secondes, donc Claude Code a arrêté la résolution et a échoué la requête. Ce délai d'expiration est une cause de [Impossible de charger les credentials AWS ou Google Cloud](#could-not-load-aws-or-google-cloud-credentials). L'échec est la résolution locale des credentials : la requête n'a jamais atteint [Amazon Bedrock](/docs/fr/amazon-bedrock), [Claude Platform sur AWS](/docs/fr/claude-platform-on-aws) ou le [point de terminaison Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint). Claude Code efface son [cache de credentials](/docs/fr/amazon-bedrock#credential-caching-and-resolution-timeout) et réessaie avant que cette erreur ne fasse surface, donc au moment où vous la voyez, la chaîne s'est bloquée sur des tentatives répétées.1726La chaîne de fournisseurs d'identifiants AWS par défaut n'a pas produit d'identifiants dans un délai de 60 secondes ; Claude Code a donc interrompu la résolution et fait échouer la requête. Ce délai d'expiration est l'une des causes de [Impossible de charger les identifiants AWS ou Google Cloud](#could-not-load-aws-or-google-cloud-credentials). L'échec concerne la résolution locale des identifiants : la requête n'a jamais atteint [Amazon Bedrock](/docs/fr/amazon-bedrock), [Claude Platform on AWS](/docs/fr/claude-platform-on-aws) ni l'[endpoint Mantle](/docs/fr/amazon-bedrock#use-the-mantle-endpoint). Claude Code vide son [cache d'identifiants](/docs/fr/amazon-bedrock#credential-caching-and-resolution-timeout) et réessaie avant que cette erreur n'apparaisse ; lorsque vous la voyez, la chaîne s'est donc bloquée lors de plusieurs tentatives.
1698 1727
1699```text theme={null}1728```text theme={null}
1700API Error: Could not load AWS credentials · AWS default-chain credential resolve timed out. Check or refresh your AWS credentials and try again.1729API Error: Could not load AWS credentials · AWS default-chain credential resolve timed out. Check or refresh your AWS credentials and try again.
1701```1730```
1702 1731
1703Les causes courantes sont une commande `credential_process` dans votre profil AWS qui attend une entrée qu'elle ne peut pas recevoir, et un conteneur ou une VM dont le service de métadonnées d'instance (IMDS) ne répond jamais à la sonde de la chaîne.1732Les causes courantes sont une commande `credential_process` dans votre profil AWS qui attend une saisie qu'elle ne peut pas recevoir, et un conteneur ou une VM dont le service de métadonnées d'instance (IMDS) ne répond jamais à la sonde de la chaîne.
1704 1733
1705Avant v2.1.267, le message se lisait `API Error: AWS default-chain credential resolve timed out`.1734Avant la v2.1.267, le message était `API Error: AWS default-chain credential resolve timed out`.
1706Avant v2.1.207, une chaîne bloquée laissait la requête attendre indéfiniment au lieu d'échouer.1735Avant la v2.1.207, une chaîne bloquée laissait la requête en attente indéfiniment au lieu d'échouer.
1707 1736
1708**À faire :**1737**Que faire :**
1709 1738
1710* Exécutez `aws sts get-caller-identity` dans le même shell avec le même `AWS_PROFILE`. S'il bloque aussi, corrigez le profil ; une commande `credential_process` qui demande de manière interactive est une cause courante.1739* Exécutez `aws sts get-caller-identity` dans le même shell avec le même `AWS_PROFILE`. Si la commande se bloque également, corrigez le profil ; une commande `credential_process` qui demande une saisie interactive en est une cause fréquente.
1711* Complétez l'étape de connexion avant de démarrer Claude Code, par exemple `aws sso login --profile myprofile`, pour que la chaîne se résolve à partir du cache SSO local au lieu d'attendre un flux de navigateur1740* Effectuez l'étape de connexion avant de démarrer Claude Code, par exemple `aws sso login --profile myprofile`
1712* Si votre chaîne exécute une connexion interactive qui a légitimement besoin de plus de 60 secondes, comme SSO avec MFA via un wrapper comme `aws-vault`, augmentez la limite en millisecondes avec [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/fr/env-vars)1741* Si votre chaîne exécute une connexion interactive qui nécessite légitimement plus de 60 secondes, comme une connexion SSO avec MFA via un wrapper tel que `aws-vault`, augmentez la limite en millisecondes avec [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/fr/env-vars)
1713 1742
1714<h3 id="bedrock-setup-verification-timed-out-waiting-for-aws">1743<h3 id="bedrock-setup-verification-timed-out-waiting-for-aws">
1715 La vérification de la configuration de Bedrock a expiré en attendant AWS1744 Délai d'attente d'AWS expiré lors de la vérification de la configuration Bedrock
1716</h3>1745</h3>
1717 1746
1718Un appel à AWS pendant l'[assistant de configuration de Bedrock](/docs/fr/amazon-bedrock#sign-in-with-bedrock), comme la recherche de credentials ou la vérification d'identité, n'a pas terminé dans la limite de 60 secondes. L'assistant arrête d'attendre et échoue l'étape de vérification :1747Un appel à AWS lors de la vérification des identifiants de l'[assistant de configuration Bedrock](/docs/fr/amazon-bedrock#sign-in-with-bedrock), comme la recherche d'identifiants ou la vérification d'identité, ne s'est pas terminé dans la limite de 60 secondes. L'assistant cesse d'attendre et fait échouer l'étape de vérification :
1719 1748
1720```text theme={null}1749```text theme={null}
1721Timed out after 60s waiting for AWS. Check your network and proxy settings; if a credential helper needs longer to prompt you, raise CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS.1750Timed out after 60s waiting for AWS. Check your network and proxy settings; if a credential helper needs longer to prompt you, raise CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS.
1723 1752
1724Le nombre reflète votre limite : 60 secondes par défaut, ou la valeur que vous avez définie dans [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/fr/env-vars).1753Le nombre reflète votre limite : 60 secondes par défaut, ou la valeur que vous avez définie dans [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/fr/env-vars).
1725 1754
1726Les causes courantes sont un réseau ou un proxy qui bloque les requêtes à AWS, y compris le rafraîchissement du jeton SSO, et un helper de credential qui attend toujours une entrée que vous ne pouvez pas voir. Augmentez la limite uniquement quand l'helper a légitimement besoin de plus de temps.1755Les causes courantes sont un réseau ou un proxy qui bloque les requêtes vers AWS, y compris l'actualisation du jeton SSO, et un assistant d'identifiants qui attend encore une saisie que vous ne voyez pas. N'augmentez la limite que lorsque l'assistant a légitimement besoin de plus de temps.
1727 1756
1728Une seule requête bloquée à AWS peut aussi échouer sur son propre délai d'expiration par requête, qui affiche un message plus court sur la même étape :1757Une seule requête bloquée vers AWS peut également échouer en raison de son propre délai d'expiration par requête, ce qui affiche un message plus court à la même étape :
1729 1758
1730```text theme={null}1759```text theme={null}
1731A request to AWS timed out. Check your network and proxy settings, then try again.1760A request to AWS timed out. Check your network and proxy settings, then try again.
1732```1761```
1733 1762
1734Quand les mêmes délais d'expiration se produisent sur l'étape d'épinglage de modèle, l'assistant marque un modèle comme `unreachable` au lieu d'afficher l'un ou l'autre message.1763Lorsque les mêmes délais d'expiration surviennent à l'étape d'épinglage du modèle, l'assistant marque un modèle comme `unreachable` au lieu d'afficher l'un ou l'autre message.
1735 1764
1736**À faire :**1765**Que faire :**
1737 1766
1738* Exécutez `aws sts get-caller-identity` dans le même shell. S'il bloque aussi, le blocage est en dehors de Claude Code, dans votre réseau, votre proxy ou l'helper de credential dans votre profil AWS ; corrigez cela d'abord.1767* Exécutez `aws sts get-caller-identity` dans le même shell. Si la commande se bloque également, le blocage se situe en dehors de Claude Code, dans votre réseau, votre proxy ou l'assistant d'identifiants de votre profil AWS ; corrigez d'abord ce problème.
1739* Complétez toute connexion interactive avant d'ouvrir l'assistant, par exemple `aws sso login --profile myprofile`1768* Effectuez toute connexion interactive avant d'ouvrir l'assistant, par exemple `aws sso login --profile myprofile`
1740* Si un helper de credential dans votre profil AWS a légitimement besoin de plus de 60 secondes pour vous demander, augmentez la limite en millisecondes avec [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/fr/env-vars)1769* Si un assistant d'identifiants de votre profil AWS a légitimement besoin de plus de 60 secondes pour vous demander une saisie, augmentez la limite en millisecondes avec [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/fr/env-vars)
1741 1770
1742<h3 id="cloud-gateway-session-expired">1771<h3 id="cloud-gateway-session-expired">
1743 La session de la passerelle cloud a expiré1772 Session de passerelle cloud expirée
1744</h3>1773</h3>
1745 1774
1746Vous vous êtes connecté via une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway), et la session de la passerelle enregistrée sur cette machine a expiré et n'a pas pu être renouvelée, ou la passerelle ne l'accepte plus, par exemple après que le [secret JWT de la passerelle soit remplacé](/docs/fr/claude-apps-gateway-deploy#jwt-secret-rotation). Si vous voyez cette ligne quand vous démarrez `claude` de manière interactive, la session s'est ouverte déconnectée de la passerelle :1775Vous vous êtes connecté via une [passerelle Claude apps](/docs/fr/claude-apps-gateway), et la session de passerelle enregistrée sur cette machine a expiré et n'a pas pu être renouvelée, ou la passerelle ne l'accepte plus, par exemple après le [remplacement du secret JWT](/docs/fr/claude-apps-gateway-deploy#jwt-secret-rotation) de la passerelle. Si cette ligne apparaît lorsque vous démarrez `claude` en mode interactif, la session s'est ouverte déconnectée de la passerelle :
1747 1776
1748```text theme={null}1777```text theme={null}
1749Cloud gateway session expired — run /login to reconnect.1778Cloud gateway session expired — run /login to reconnect.
1750```1779```
1751 1780
1752La même ligne peut apparaître en cours de session quand la credential de la passerelle expire et Claude Code ne peut pas la renouveler.1781La même ligne peut apparaître en cours de session lorsque l'identifiant de la passerelle expire et que Claude Code ne parvient pas à le renouveler.
1753 1782
1754Dans une exécution [non-interactive](/docs/fr/headless), une session en arrière-plan ou autre sans surveillance, ou une sous-commande `claude` autre que `claude auth`, Claude Code se termine avec ce message à la place quand la passerelle n'accepte plus la session :1783Lors d'une exécution [non interactive](/docs/fr/headless), d'une session en arrière-plan ou autrement sans surveillance, ou d'une sous-commande `claude` autre que `claude auth`, Claude Code se ferme plutôt avec ce message lorsque la passerelle n'accepte plus la session :
1755 1784
1756```text theme={null}1785```text theme={null}
1757Cloud gateway <url> no longer accepts this session. Start `claude` and sign in again with /login.1786Cloud gateway <url> no longer accepts this session. Start `claude` and sign in again with /login.
1758```1787```
1759 1788
1760**À faire :**1789**Que faire :**
1761 1790
1762* Exécutez `/login` dans la session et complétez la connexion du navigateur1791* Exécutez `/login` dans la session et terminez la connexion dans le navigateur
1763* Pour un lancement non-interactif, démarrez `claude` dans le même environnement, exécutez `/login`, puis réexécutez votre commande1792* Pour un lancement non interactif, démarrez `claude` dans le même environnement, exécutez `/login`, puis relancez votre commande
1764 1793
1765<h3 id="sign-in-timed-out-while-waiting-for-you-to-continue">1794<h3 id="sign-in-timed-out-while-waiting-for-you-to-continue">
1766 La connexion a expiré en attendant que vous continuiez1795 Délai de connexion expiré en attendant votre confirmation
1767</h3>1796</h3>
1768 1797
1769Pendant 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é :1798Lors d'une connexion via une [passerelle Claude apps](/docs/fr/claude-apps-gateway), la passerelle a indiqué le compte qui s'est connecté, et Claude Code vous a demandé de le confirmer avant d'enregistrer l'identifiant. Vous avez laissé la confirmation ouverte au-delà de l'expiration propre à la connexion, et la passerelle n'a émis aucun jeton d'actualisation permettant de la renouveler ; Claude Code n'a donc rien enregistré lorsque vous avez continué :
1770 1799
1771```text theme={null}1800```text theme={null}
1772Sign-in timed out while waiting for you to continue. Try again.1801Sign-in timed out while waiting for you to continue. Try again.
1773```1802```
1774 1803
1775**À faire :**1804**Que faire :**
1776 1805
1777* Exécutez `/login` à nouveau et confirmez le compte avant que la connexion n'expire1806* Exécutez de nouveau `/login` et confirmez le compte avant l'expiration de la connexion
1778 1807
1779<h3 id="gateway-refused-the-request">1808<h3 id="gateway-refused-the-request">
1780 La passerelle a refusé la requête1809 La passerelle a refusé la requête
1781</h3>1810</h3>
1782 1811
1783Vous ê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 :1812Vous êtes connecté via une [passerelle Claude apps](/docs/fr/claude-apps-gateway), et une requête a renvoyé une erreur 403 : la passerelle, ou le service en amont derrière elle, l'a refusée. Se reconnecter ne change rien à un refus ; le message vous oriente donc vers l'administrateur de votre passerelle :
1784 1813
1785```text theme={null}1814```text theme={null}
1786Gateway refused the request · signing in again won't change this — check with your gateway administrator · API Error: 403 ...1815Gateway refused the request · signing in again won't change this — check with your gateway administrator · API Error: 403 ...
1787```1816```
1788 1817
1789**À faire :**1818**Que faire :**
1790 1819
1791* Demandez à votre administrateur de passerelle de rechercher la requête. La queue `API Error:` porte le refus que la passerelle a retourné1820* Demandez à l'administrateur de votre passerelle d'examiner la requête. La fin du message `API Error:` contient le refus renvoyé par la passerelle
1792* 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)1821* Pour les administrateurs : une [règle de contrôle d'accès](/docs/fr/claude-apps-gateway-config#http-tuning) sur la passerelle renvoie une erreur 403 que le [log d'audit](/docs/fr/claude-apps-gateway-deploy#logs) consigne avec sa raison, et un refus d'autorisation du service en amont est transmis conformément à [Messages d'erreur en amont](/docs/fr/claude-apps-gateway-config#upstream-error-messages)
1793 1822
1794Avant 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.1823Avant la v2.1.273, une erreur 403 sur une session de passerelle affichait à la place le message générique `Please run /login` ou `Failed to authenticate`, et se reconnecter ne levait pas le refus.
1795 1824
1796<h2 id="network-and-connection-errors">1825<h2 id="network-and-connection-errors">
1797 Erreurs de réseau et de connexion1826 Erreurs de réseau et de connexion
2317API Error: 400 ... Extra inputs are not permitted ... context_management2346API Error: 400 ... Extra inputs are not permitted ... context_management
2318```2347```
2319 2348
2320Claude Code envoie des champs bêta uniquement comme `context_management` et `effort` aux côtés d'un en-tête `anthropic-beta` qui les active. Quand une passerelle transfère le corps mais supprime l'en-tête, l'API voit des champs qu'elle ne reconnaît pas.2349Claude Code envoie des champs réservés aux bêtas, comme `context_management`, accompagnés d'un en-tête `anthropic-beta` qui les active. Quand une passerelle transfère le corps mais supprime l'en-tête, l'API voit des champs qu'elle ne reconnaît pas.
2321 2350
2322**Que faire :**2351**Que faire :**
2323 2352
2852 Erreurs de ligne de commande2881 Erreurs de ligne de commande
2853</h2>2882</h2>
2854 2883
2855Ces erreurs proviennent de la ligne de commande `claude` et de ses sous-commandes, d'un nom de commande que vous soumettez à l'invite, et de commandes telles que `/security-review` qui rassemblent le contexte en exécutant des commandes shell avant l'exécution de leur invite. Elles proviennent également de `/tui`, qui relance l'interface de ligne de commande.2884Ces erreurs proviennent de la ligne de commande `claude` et de ses sous-commandes, d'un nom de commande que vous soumettez dans le prompt, et de commandes telles que `/security-review` qui rassemblent du contexte en exécutant des commandes shell avant l'exécution de leur prompt. Elles proviennent aussi de `/tui`, qui relance la CLI.
2856 2885
2857<h3 id="conflict-between-bg-and-print">2886<h3 id="conflict-between-bg-and-print">
2858 Conflit entre `--bg` et `--print`2887 Conflit entre `--bg` et `--print`
2859</h3>2888</h3>
2860 2889
2861Ce message nécessite Claude Code v2.1.198 ou version ultérieure. Vous avez combiné `--bg` avec `-p` ou `--print` dans la même invocation `claude`. `--bg` démarre une [session en arrière-plan](/docs/fr/agent-view#from-your-shell) à laquelle vous vous connectez ultérieurement avec `claude agents`, tandis que `--print` s'exécute [de manière non interactive](/docs/fr/headless) et ne démarre jamais la session interactive à laquelle `claude agents` se connecte. Avant la v2.1.198, cette combinaison créait silencieusement une tâche en arrière-plan qui ne pouvait jamais être attachée.2890Ce message nécessite Claude Code v2.1.198 ou une version ultérieure. Vous avez combiné `--bg` avec `-p` ou `--print` dans le même appel `claude`. `--bg` démarre une [session en arrière-plan](/docs/fr/agent-view#from-your-shell) à laquelle vous vous rattachez ensuite avec `claude agents`, tandis que `--print` s'exécute en [mode non interactif](/docs/fr/headless) et ne démarre jamais la session interactive à laquelle `claude agents` se rattache. Avant la v2.1.198, cette combinaison créait silencieusement une tâche en arrière-plan à laquelle il était impossible de se rattacher.
2862 2891
2863```text theme={null}2892```text theme={null}
2864--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.2893--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.
2866 2895
2867**Que faire :**2896**Que faire :**
2868 2897
2869* Supprimez `-p` ou `--print`. `--bg` prend l'invite comme argument positionnel, donc `claude --bg "<task>"` est la commande complète. Voir [Dispatcher de nouveaux agents depuis votre shell](/docs/fr/agent-view#from-your-shell).2898* Supprimez `-p` ou `--print`. `--bg` prend le prompt comme argument positionnel, donc `claude --bg "<task>"` est la commande complète. Consultez [Lancer de nouveaux agents depuis votre shell](/docs/fr/agent-view#from-your-shell).
2870* Pour exécuter l'invite de manière non interactive et imprimer le résultat au lieu de créer une session en arrière-plan, supprimez `--bg` et exécutez `claude -p "<task>"`2899* Pour exécuter le prompt en mode non interactif et afficher le résultat au lieu de créer une session en arrière-plan, supprimez `--bg` et exécutez `claude -p "<task>"`
2900
2901<h3 id="conflict-between-a-system-prompt-flag-and-its-file-form">
2902 Conflit entre un flag de prompt système et sa forme fichier
2903</h3>
2904
2905Vous avez passé [`--append-subagent-system-prompt`](/docs/fr/cli-reference#cli-flags) avec `--append-subagent-system-prompt-file` dans un même appel `claude`, donc `claude` se termine avec le code 1 au lieu de démarrer la session :
2906
2907```text theme={null}
2908Error: Cannot use both --append-subagent-system-prompt and --append-subagent-system-prompt-file. Please use only one.
2909```
2910
2911Avant la v2.1.283, `claude` se terminait de la même façon lorsque vous passiez `--system-prompt` avec `--system-prompt-file`, ou `--append-system-prompt` avec `--append-system-prompt-file`, car ces paires entraient en conflit au lieu de [se combiner](/docs/fr/cli-reference#system-prompt-flags). Sur ces versions, le message nomme la paire que vous avez combinée.
2912
2913**Que faire :**
2914
2915* Conservez une seule forme du flag et supprimez l'autre. Pour combiner un fichier de prompt fixe avec du texte propre à chaque exécution, fusionnez le texte dans le fichier avant le lancement au lieu de passer les deux flags
2871 2916
2872<h3 id="invalid-agents-configuration">2917<h3 id="invalid-agents-configuration">
2873 Configuration `--agents` invalide2918 Configuration `--agents` invalide
2874</h3>2919</h3>
2875 2920
2876La 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.2921La valeur que vous avez passée à `--agents` est invalide, donc `claude` se termine avec le code 1 au lieu de démarrer la session. Lorsque vous passez `--safe-mode` ou définissez [`CLAUDE_CODE_SAFE_MODE`](/docs/fr/env-vars#variables), Claude Code ignore entièrement `--agents`. Avec `--resume` ou `--continue`, une valeur JSON en ligne n'est pas vérifiée et la session démarre ; une valeur lue depuis un fichier est vérifiée à chaque lancement. Avant la v2.1.242, Claude Code démarrait quand même la session.
2877 2922
2878```text theme={null}2923```text theme={null}
2879Error: Invalid --agents configuration:2924Error: Invalid --agents configuration:
2880<what failed>2925<what failed>
2881```2926```
2882 2927
2883Ce 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 :2928Ce qui suit la première ligne dépend de la manière 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 présente deux types de problèmes, vous ne voyez le second qu'après avoir corrigé le premier :
2884 2929
28851. 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ême29301. Lorsque la valeur commence par `{` mais n'est pas analysable en JSON, ou que le contenu d'un fichier `--agents` n'est pas analysable, Claude Code affiche une ligne `invalid JSON:` contenant le message propre à l'analyseur JSON
28862. 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ème29312. Lorsqu'elle est analysable mais qu'une définition d'agent ne correspond pas au schéma des [sous-agents définis par la CLI](/docs/fr/sub-agents#choose-the-subagent-scope), Claude Code affiche une ligne par problème
28873. Lorsqu'un nom d'agent commence par `-`, Claude Code imprime `<name>: agent names must not start with '-'`29323. Lorsqu'un nom d'agent commence par `-`, Claude Code affiche `<name>: agent names must not start with '-'`
2888 2933
2889Lorsqu'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`.2934Lorsqu'il y a plus de 20 lignes de problèmes, Claude Code affiche les 20 premières et remplace le reste par `…and N more`.
2890 2935
2891Avec `--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 :2936Avec `--print`, `--agents` accepte aussi [le chemin d'un fichier JSON](/docs/fr/sub-agents#choose-the-subagent-scope) à la place de l'objet en ligne. Avant la v2.1.281, `--agents` n'acceptait que du JSON en ligne et traitait un chemin de fichier comme du JSON invalide. La forme fichier a ses propres refus, affichés à la place de ce message, notamment ceux-ci :
2892 2937
2893* **`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.2938* **`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. Passez les définitions en JSON en ligne, ou ajoutez `-p` pour les lire depuis un fichier.
2894* **`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.2939* **`Error: --agents file not found: <path>`** : aucun fichier n'existe à ce chemin. Une valeur qui ne commence pas par `{` et qui n'est pas du JSON valide est lue comme un chemin, donc du JSON en ligne altéré par votre shell peut aussi échouer de cette façon. Vérifiez le chemin ou les guillemets et exécutez à nouveau la commande.
2895 2940
2896**Que faire :**2941**Que faire :**
2897 2942
2898* 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).2943* Corrigez chaque problème listé par le message, puis exécutez à nouveau la commande. Consultez [les champs acceptés par un sous-agent défini par la CLI](/docs/fr/sub-agents#choose-the-subagent-scope).
2899 2944
2900<h3 id="cloud-sessions-cannot-be-created-from-a-restricted-session">2945<h3 id="cloud-sessions-cannot-be-created-from-a-restricted-session">
2901 Les sessions cloud ne peuvent pas être créées à partir d'une session `--restricted`2946 Les sessions cloud ne peuvent pas être créées depuis une session `--restricted`
2902</h3>2947</h3>
2903 2948
2904Lorsque vous démarrez une session avec [`--restricted`](/docs/fr/cli-reference#cli-flags), Claude Code refuse de créer des [sessions cloud](/docs/fr/claude-code-on-the-web#from-terminal-to-cloud) à partir de celle-ci, car la nouvelle session s'exécuterait en dehors du processus restreint et n'appliquerait pas le mode restreint. Claude Code refuse du côté client, avant de contacter le serveur, donc aucune session cloud n'est créée :2949Lorsque vous démarrez une session avec [`--restricted`](/docs/fr/cli-reference#cli-flags), Claude Code refuse d'y créer des [sessions cloud](/docs/fr/claude-code-on-the-web#from-terminal-to-cloud), car la nouvelle session s'exécuterait en dehors du processus restreint et n'appliquerait pas le mode restreint. Claude Code refuse côté client, avant de contacter le serveur, donc aucune session cloud n'est créée :
2905 2950
2906```text theme={null}2951```text theme={null}
2907Cloud sessions cannot be created from a --restricted session: they would not enforce it.2952Cloud sessions cannot be created from a --restricted session: they would not enforce it.
2910**Que faire :**2955**Que faire :**
2911 2956
2912* Exécutez la tâche localement dans la session restreinte2957* Exécutez la tâche localement dans la session restreinte
2913* Si vous contrôlez la façon dont la session a été lancée, démarrez une nouvelle session `claude` sans `--restricted` et créez la session cloud à partir de là2958* Si vous contrôlez la manière dont la session a été lancée, démarrez une nouvelle session `claude` sans `--restricted` et créez la session cloud depuis celle-ci
2914 2959
2915Avant la v2.1.248, Claude Code n'avait pas d'indicateur `--restricted` ; les versions antérieures rejettent l'indicateur lui-même avec une erreur d'option inconnue.2960Avant la v2.1.248, Claude Code n'avait pas de flag `--restricted` ; les versions antérieures rejettent le flag lui-même avec une erreur d'option inconnue.
2916 2961
2917<h3 id="cloud-sessions-are-disabled-by-your-organizations-policy">2962<h3 id="cloud-sessions-are-disabled-by-your-organizations-policy">
2918 Les sessions cloud sont désactivées par la politique de votre organisation2963 Les sessions cloud sont désactivées par la politique de votre organisation
2924Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.2969Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.
2925```2970```
2926 2971
2927Le message apparaît lorsque vous [créez une session cloud à partir du terminal](/docs/fr/claude-code-on-the-web#from-terminal-to-cloud) et lorsque vous soumettez une commande qui a besoin de sessions cloud, telle que `/teleport`, `/remote-env`, ou `/web-setup`. Avant la v2.1.268, soumettre l'une de ces commandes renvoyait [`Unknown command`](#unknown-command) à la place.2972Le message apparaît lorsque vous [créez une session cloud depuis le terminal](/docs/fr/claude-code-on-the-web#from-terminal-to-cloud) et lorsque vous soumettez une commande qui nécessite les sessions cloud, comme `/teleport`, `/remote-env` ou `/web-setup`. Avant la v2.1.268, soumettre l'une de ces commandes renvoyait [`Unknown command`](#unknown-command) à la place.
2928 2973
2929Il s'agit d'une politique d'organisation côté serveur, elle ne peut donc pas être remplacée par des paramètres locaux, des variables d'environnement ou des indicateurs CLI.2974Il s'agit d'une politique d'organisation côté serveur, elle ne peut donc pas être outrepassée par des paramètres locaux, des variables d'environnement ou des flags de la CLI.
2930 2975
2931Si Claude Code n'a pas encore chargé la politique de votre organisation ou ne peut pas la récupérer, ces commandes répondent `Couldn't verify your organization's policy for cloud sessions. Check your network connection, then restart Claude Code and try again.` à la place.2976Si Claude Code n'a pas encore chargé la politique de votre organisation ou ne parvient pas à la récupérer, ces commandes répondent `Couldn't verify your organization's policy for cloud sessions. Check your network connection, then restart Claude Code and try again.` à la place.
2932 2977
2933**Que faire :**2978**Que faire :**
2934 2979
2935* Demandez à un [Propriétaire](/docs/fr/server-managed-settings#access-control) de votre organisation d'activer les sessions cloud dans les paramètres d'administration Claude Code à [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code)2980* Demandez à un [Owner](/docs/fr/server-managed-settings#access-control) de votre organisation d'activer les sessions cloud dans les paramètres d'administration de Claude Code sur [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code)
2936* Si le message indique qu'il n'a pas pu vérifier la politique, vérifiez votre connexion réseau, puis redémarrez Claude Code et réessayez2981* Si le message indique que la politique n'a pas pu être vérifiée, vérifiez votre connexion réseau, puis redémarrez Claude Code et réessayez
2937 2982
2938<h3 id="the-json-schema-value-is-not-a-valid-json-schema">2983<h3 id="the-json-schema-value-is-not-a-valid-json-schema">
2939 La valeur `--json-schema` n'est pas un schéma JSON valide2984 La valeur `--json-schema` n'est pas un JSON Schema valide
2940</h3>2985</h3>
2941 2986
2942Le schéma que vous avez transmis à [`--json-schema`](/docs/fr/cli-reference#cli-flags) en [mode non interactif](/docs/fr/headless#get-structured-output) a échoué la compilation du schéma JSON, donc `claude` se termine avec le code 1 au lieu d'exécuter l'invite. Avant la v2.1.205, un schéma invalide produisait une sortie non structurée sans erreur, et tout schéma utilisant le mot-clé `format` était traité comme invalide.2987Le schéma que vous avez passé à [`--json-schema`](/docs/fr/cli-reference#cli-flags) en [mode non interactif](/docs/fr/headless#get-structured-output) a échoué à la compilation JSON Schema, donc `claude` se termine avec le code 1 au lieu d'exécuter le prompt. Avant la v2.1.205, un schéma invalide produisait une sortie non structurée sans erreur, et tout schéma utilisant le mot-clé `format` était traité comme invalide.
2943 2988
2944```text theme={null}2989```text theme={null}
2945Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values2990Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values
2946```2991```
2947 2992
2948Le texte après le deuxième deux-points est le diagnostic du validateur et nomme le mot-clé ou l'emplacement qui a échoué. Les schémas qui utilisent le mot-clé `format`, tels que `"format": "email"`, sont valides : Claude Code accepte `format` comme annotation et ne l'applique pas.2993Le texte après le second deux-points est le diagnostic du validateur et nomme le mot-clé ou l'emplacement en échec. Les schémas qui utilisent le mot-clé `format`, comme `"format": "email"`, sont valides : Claude Code accepte `format` comme annotation et ne l'applique pas.
2949 2994
2950Claude Code exécute deux vérifications avant la compilation du schéma : il rejette une valeur qui n'est pas analysable en JSON avec `Error: --json-schema is not valid JSON`, et un JSON valide qui n'est pas un objet avec `Error: --json-schema must be a JSON object`.2995Claude Code effectue deux vérifications avant la compilation du schéma : il rejette une valeur qui n'est pas du JSON analysable avec `Error: --json-schema is not valid JSON`, et du JSON valide qui n'est pas un objet avec `Error: --json-schema must be a JSON object`.
2951 2996
2952**Que faire :**2997**Que faire :**
2953 2998
2954* Corrigez la partie du schéma que le diagnostic nomme, puis réexécutez la commande2999* Corrigez la partie du schéma nommée par le diagnostic, puis relancez la commande
2955* Voir [Obtenir une sortie structurée](/docs/fr/headless#get-structured-output) pour un schéma et une commande fonctionnels3000* Consultez [Obtenir une sortie structurée](/docs/fr/headless#get-structured-output) pour un schéma et une commande fonctionnels
2956 3001
2957<h3 id="settings-file-exceeds-the-2mib-limit">3002<h3 id="settings-file-exceeds-the-2mib-limit">
2958 Le fichier de paramètres dépasse la limite de 2 Mio3003 Le fichier de paramètres dépasse la limite de 2 MiB
2959</h3>3004</h3>
2960 3005
2961Le fichier que vous avez transmis à [`--settings`](/docs/fr/cli-reference#cli-flags) est plus grand que 2 Mio, donc `claude` se termine avec le code 1 au démarrage au lieu de le charger. Avant la v2.1.214, Claude Code lisait le fichier sans vérification de taille, et un fichier de plusieurs gigaoctets ou un fichier de périphérique tel que `/dev/zero` augmentait la mémoire sans limite.3006Le fichier que vous avez passé à [`--settings`](/docs/fr/cli-reference#cli-flags) dépasse 2 MiB, donc `claude` se termine avec le code 1 au démarrage au lieu de le charger. Avant la v2.1.214, Claude Code lisait le fichier sans vérifier sa taille, et un fichier de plusieurs gigaoctets ou un fichier de périphérique comme `/dev/zero` faisait croître la mémoire sans limite.
2962 3007
2963```text theme={null}3008```text theme={null}
2964Error: Settings file exceeds the 2MiB limit: /path/to/settings.json3009Error: Settings file exceeds the 2MiB limit: /path/to/settings.json
2965```3010```
2966 3011
2967Claude Code rejette un chemin `--settings` qui n'est pas un fichier régulier de la même manière : un périphérique, FIFO ou socket signale `Error: Cannot use settings file (Not a regular file (device, FIFO, or socket))` suivi du chemin, et un répertoire signale une raison `EISDIR`.3012Claude Code rejette de la même façon un chemin `--settings` qui n'est pas un fichier ordinaire : un périphérique, une FIFO ou un socket signale `Error: Cannot use settings file (Not a regular file (device, FIFO, or socket))` suivi du chemin, et un répertoire signale un motif `EISDIR`.
2968 3013
2969**Que faire :**3014**Que faire :**
2970 3015
2971* Pointez `--settings` vers un fichier de paramètres JSON régulier inférieur à 2 Mio. Voir [Paramètres](/docs/fr/settings) pour le format.3016* Faites pointer `--settings` vers un fichier de paramètres JSON ordinaire de moins de 2 MiB. Consultez [Paramètres](/docs/fr/settings) pour le format.
2972 3017
2973<h3 id="the-current-directory-no-longer-exists">3018<h3 id="the-current-directory-no-longer-exists">
2974 Le répertoire courant n'existe plus3019 Le répertoire courant n'existe plus
2975</h3>3020</h3>
2976 3021
2977Vous avez démarré `claude` à partir d'un répertoire qui a été supprimé ou déplacé après que votre shell y soit entré, par exemple un worktree ou un répertoire temporaire qu'un autre shell a supprimé. Claude Code ne peut pas lire son répertoire de travail, donc il se termine avec le code 1 avant de démarrer la session, en mode interactif et [non interactif](/docs/fr/headless) également. Avant la v2.1.239, Claude Code s'écrasait avec une source de bundle minifiée et une pile `ENOENT ... uv_cwd` brute sur stderr au lieu de ce message.3022Vous avez démarré `claude` depuis un répertoire qui a été supprimé ou déplacé après que votre shell y est entré, par exemple un worktree ou un répertoire temporaire supprimé par un autre shell. Claude Code ne peut pas lire son répertoire de travail, il se termine donc avec le code 1 avant de démarrer la session, en mode interactif comme en [mode non interactif](/docs/fr/headless). Avant la v2.1.239, Claude Code plantait en affichant le source minifié du bundle et une pile brute `ENOENT ... uv_cwd` sur stderr au lieu de ce message.
2978 3023
2979```text theme={null}3024```text theme={null}
2980The current directory no longer exists (it was deleted or moved). Start Claude Code from an existing directory.3025The current directory no longer exists (it was deleted or moved). Start Claude Code from an existing directory.
2981error: The current working directory was deleted, so that command didn't work. Please cd into a different directory and try again.3026error: The current working directory was deleted, so that command didn't work. Please cd into a different directory and try again.
2982```3027```
2983 3028
2984La cause et la correction sont les mêmes pour les deux formes.3029La cause et la solution sont les mêmes pour les deux formes.
2985 3030
2986Lorsque Claude Code ne peut pas lire le répertoire de travail pour une autre raison, telle qu'un changement de permissions, le message nomme le code d'erreur à la place : `Can't read the current directory (EACCES). Start Claude Code from a different directory.`3031Lorsque Claude Code ne peut pas lire le répertoire de travail pour une autre raison, comme un changement de permissions, le message nomme le code d'erreur à la place : `Can't read the current directory (EACCES). Start Claude Code from a different directory.`
2987 3032
2988Sur macOS, `EPERM` pour un répertoire dans `~/Desktop`, `~/Documents`, `~/Downloads`, ou iCloud Drive signifie généralement que macOS bloque votre application terminal de ce dossier. D'autres commandes qui lisent ce dossier échouent de la même manière : `ls` là-bas signale `Operation not permitted`, même avec `sudo`.3033Sur macOS, `EPERM` pour un répertoire situé dans `~/Desktop`, `~/Documents`, `~/Downloads` ou iCloud Drive signifie généralement que macOS bloque l'accès de votre application de terminal à ce dossier. Les autres commandes qui lisent ce dossier échouent de la même façon : `ls` à cet endroit signale `Operation not permitted`, même avec `sudo`.
2989 3034
2990**Que faire :**3035**Que faire :**
2991 3036
2992* Changez vers un répertoire qui existe, tel que votre répertoire personnel ou de projet, puis exécutez `claude` à nouveau3037* Placez-vous dans un répertoire qui existe, comme votre répertoire personnel ou votre répertoire de projet, puis exécutez à nouveau `claude`
2993* Si le répertoire a été recréé au même chemin, votre shell tient toujours le répertoire supprimé. Exécutez `cd "$PWD"` ou quittez et réentrez le répertoire, puis exécutez `claude` à nouveau3038* Si le répertoire a été recréé au même chemin, votre shell conserve toujours celui qui a été supprimé. Exécutez `cd "$PWD"` ou quittez le répertoire et revenez-y, puis exécutez à nouveau `claude`
2994* Pour `EPERM` sur macOS, quittez votre application terminal avec Cmd+Q, ouvrez-la à nouveau, retournez à ce dossier, et exécutez `claude`. Si `ls` dans ce dossier échoue toujours, ouvrez **Paramètres système > Confidentialité et sécurité > Fichiers et dossiers**, activez le dossier pour votre application terminal, puis rouvrez le terminal3039* Pour `EPERM` sur macOS, quittez votre application de terminal avec Cmd+Q, rouvrez-la, retournez dans ce dossier et exécutez `claude`. Si `ls` échoue toujours dans ce dossier, ouvrez **Réglages Système > Confidentialité et sécurité > Fichiers et dossiers**, activez le dossier pour votre application de terminal, puis rouvrez le terminal
2995 3040
2996<h3 id="temp-directory-refused-or-cannot-be-created">3041<h3 id="temp-directory-refused-or-cannot-be-created">
2997 Le répertoire temporaire a été refusé ou ne peut pas être créé3042 Répertoire temporaire refusé ou impossible à créer
2998</h3>3043</h3>
2999 3044
3000Sur macOS et Linux, Claude Code crée un répertoire temporaire privé au démarrage, `claude-<uid>` sous le répertoire temporaire du système ou le remplacement [`CLAUDE_CODE_TMPDIR`](/docs/fr/env-vars). Lorsque le répertoire ne peut pas être créé, ou qu'une entrée existant déjà à ce chemin échoue les vérifications de sécurité, Claude Code imprime l'échec sur stderr et se termine avec le code 1 plutôt que de démarrer la session :3045Sur macOS et Linux, Claude Code crée au démarrage un répertoire temporaire privé, `claude-<uid>`, dans le répertoire temporaire du système ou dans celui défini par [`CLAUDE_CODE_TMPDIR`](/docs/fr/env-vars). Lorsque le répertoire ne peut pas être créé, ou qu'une entrée déjà présente à ce chemin échoue aux contrôles de sécurité, Claude Code affiche l'échec sur stderr et se termine avec le code 1 au lieu de démarrer la session :
3001 3046
3002```text wrap theme={null}3047```text wrap theme={null}
3003ENOSPC: no space left on device, mkdir '/tmp/claude-501'3048ENOSPC: no space left on device, mkdir '/tmp/claude-501'
3012**Que faire :**3057**Que faire :**
3013 3058
3014* Pour `ENOSPC`, libérez de l'espace disque sur le volume qui contient le répertoire temporaire3059* Pour `ENOSPC`, libérez de l'espace disque sur le volume qui contient le répertoire temporaire
3015* Pour les formes `Refusing to use it`, supprimez l'entrée nommée elle-même, pas ce vers quoi un lien pointe, et démarrez Claude Code à nouveau ; pour la forme `owned by uid`, seul un administrateur ou cet utilisateur peut la supprimer3060* Pour les formes `Refusing to use it`, supprimez l'entrée nommée elle-même, et non la cible d'un lien, puis redémarrez Claude Code ; pour la forme `owned by uid`, seul un administrateur ou cet utilisateur peut la supprimer
3016* Pour `is not readable`, exécutez `chmod 0700` sur le répertoire nommé, ou supprimez-le et redémarrez3061* Pour `is not readable`, exécutez `chmod 0700` sur le répertoire nommé, ou supprimez-le et redémarrez
3017* Dans l'un de ces cas, définissez [`CLAUDE_CODE_TMPDIR`](/docs/fr/env-vars) sur un répertoire que vous contrôlez et démarrez Claude Code à nouveau, en laissant le chemin refusé seul3062* Dans tous ces cas, définissez [`CLAUDE_CODE_TMPDIR`](/docs/fr/env-vars) sur un répertoire que vous contrôlez et redémarrez Claude Code, sans toucher au chemin refusé
3018 3063
3019<h3 id="directory-couldnt-be-resolved-to-a-real-location">3064<h3 id="directory-couldnt-be-resolved-to-a-real-location">
3020 Le répertoire n'a pas pu être résolu à un emplacement réel3065 Le répertoire n'a pas pu être résolu vers un emplacement réel
3021</h3>3066</h3>
3022 3067
3023Vous avez exécuté `/add-dir` pour un sous-répertoire de votre répertoire de travail, et Claude Code n'a pas pu résoudre le répertoire à son emplacement réel.3068Vous avez exécuté `/add-dir` pour un sous-répertoire de votre répertoire de travail, et Claude Code n'a pas pu résoudre le répertoire vers son emplacement réel.
3024 3069
3025Vous avez déjà accès aux fichiers d'un sous-répertoire du répertoire de travail, donc `/add-dir` charge uniquement ses skills, commandes et agents. Avant de les charger, Claude Code vérifie que l'emplacement réel du répertoire, avec tous les liens symboliques résolus, se trouve à l'intérieur du répertoire de travail. Lorsque Claude Code ne peut pas résoudre cet emplacement, il ne charge rien et affiche ce message :3070Vous avez déjà accès aux fichiers d'un sous-répertoire du répertoire de travail, donc `/add-dir` ne charge que ses skills, commandes et agents. Avant de les charger, Claude Code vérifie que l'emplacement réel du répertoire, après résolution des liens symboliques, se trouve dans le répertoire de travail. Lorsque Claude Code ne parvient pas à résoudre cet emplacement, il ne charge rien et affiche ce message :
3026 3071
3027```text theme={null}3072```text theme={null}
3028packages/app couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded. Check that it is a directory inside the working directory and try again.3073packages/app couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded. Check that it is a directory inside the working directory and try again.
3030 3075
3031**Que faire :**3076**Que faire :**
3032 3077
3033* Vérifiez que le chemin nomme un répertoire réel à l'intérieur du répertoire de travail, puis exécutez `/add-dir` à nouveau3078* Vérifiez que le chemin désigne un répertoire réel dans le répertoire de travail, puis exécutez à nouveau `/add-dir`
3034* Le message ne change pas votre accès aux fichiers ; il signale uniquement que le contenu `.claude/` du répertoire n'a pas été chargé3079* Le message ne modifie pas votre accès aux fichiers ; il signale seulement que le contenu `.claude/` du répertoire n'a pas été chargé
3035 3080
3036Avant la v2.1.261, ce message apparaissait également pour chaque `/add-dir <subdirectory>` lorsque le répertoire de travail était sur un automontage `/net/<host>`, où Claude Code refuse de résoudre les chemins par conception ; le répertoire était correct et réessayer ne pouvait pas aider.3081Avant la v2.1.261, ce message apparaissait aussi pour chaque `/add-dir <subdirectory>` lorsque le répertoire de travail se trouvait sur un montage automatique `/net/<host>`, où Claude Code refuse par conception de résoudre les chemins ; le répertoire était correct et réessayer ne pouvait pas aider.
3037 3082
3038<h3 id="workspace-not-trusted-when-starting-remote-control">3083<h3 id="workspace-not-trusted-when-starting-remote-control">
3039 Espace de travail non approuvé au démarrage du contrôle à distance3084 Espace de travail non approuvé au démarrage de Remote Control
3040</h3>3085</h3>
3041 3086
3042Vous 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. Par exemple, l'entrée standard ou la sortie standard de la commande n'est pas un terminal parce que l'une d'elles est redirigée ou canalisée. La commande se termine avec le code 1 :3087Vous avez démarré le mode serveur de [Remote Control](/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 vouliez l'approuver. Par exemple, l'entrée standard ou la sortie standard de la commande n'est pas un terminal parce que l'une d'elles est redirigée ou envoyée dans un pipe. La commande se termine avec le code 1 :
3043 3088
3044```text theme={null}3089```text theme={null}
3045Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.3090Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.
3046```3091```
3047 3092
3048Deux 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.3093Deux variantes qui commencent aussi par `Error: Workspace not trusted.` apparaissent dans un terminal trop petit pour afficher ce qu'active l'approbation du répertoire, ou dans un terminal qui n'a pas signalé sa taille. Agrandissez la fenêtre ou passez à une fenêtre de terminal normale, puis exécutez à nouveau `claude rc`.
3049 3094
3050Dans 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.3095Dans votre répertoire personnel, le message est différent, car la boîte de dialogue d'approbation de l'espace de travail n'enregistre jamais l'approbation pour le répertoire personnel, donc l'accepter à cet endroit ne peut pas satisfaire cette vérification. Avant la v2.1.214, le répertoire personnel affichait le message ci-dessus, dont le conseil ne peut pas aboutir à cet endroit.
3051 3096
3052```text theme={null}3097```text theme={null}
3053Error: 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).3098Error: 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).
3054```3099```
3055 3100
3056Si 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`.3101Si vous répondez `n` ou appuyez sur Entrée à la [question `Trust <directory>?`](/docs/fr/remote-control#requirements), la commande affiche un message `Remote Control did not start` qui nomme le répertoire et se termine avec le code 1. Exécutez à nouveau `claude rc` pour répondre `y`.
3057 3102
3058**Que faire :**3103**Que faire :**
3059 3104
3060* 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 à nouveau3105* Approuvez d'abord le répertoire depuis un terminal : exécutez `claude rc` à cet endroit et répondez `y`, ou exécutez `claude` à cet endroit 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 à nouveau votre commande d'origine
3061* Dans votre répertoire personnel, changez vers un répertoire de projet et démarrez le contrôle à distance là-bas3106* Dans votre répertoire personnel, placez-vous dans un répertoire de projet et démarrez Remote Control depuis celui-ci
3062 3107
3063Avant la v2.1.284, la commande ne demandait jamais, même dans un terminal.3108Avant la v2.1.284, la commande ne posait jamais la question, même dans un terminal.
3064 3109
3065<h3 id="not-carried-over-to-the-sessions-remote-control-starts">3110<h3 id="not-carried-over-to-the-sessions-remote-control-starts">
3066 Non reporté aux sessions que le contrôle à distance démarre3111 Non transmis aux sessions démarrées par Remote Control
3067</h3>3112</h3>
3068 3113
3069Vous avez démarré [Contrôle à distance](/docs/fr/remote-control) avec un indicateur global `claude` avant le verbe `remote-control`, un qui restreindrait ou configurerait les sessions que le contrôle à distance démarre, tel que `--settings`, `--setting-sources`, `--permission-mode`, `--disallowed-tools`, ou `--mcp-config`. Un indicateur placé avant le verbe n'atteint jamais ces sessions. Claude Code refuse de démarrer à la place, en nommant l'indicateur :3114Vous avez démarré [Remote Control](/docs/fr/remote-control) avec un flag global de `claude` placé avant le verbe `remote-control`, qui restreindrait ou configurerait les sessions démarrées par Remote Control, comme `--settings`, `--setting-sources`, `--permission-mode`, `--disallowed-tools` ou `--mcp-config`. Un flag placé avant le verbe n'atteint jamais ces sessions. Claude Code refuse donc de démarrer, en nommant le flag :
3070 3115
3071```text theme={null}3116```text theme={null}
3072Error: `--settings` before `remote-control` is not carried over to the sessions Remote Control starts, so Remote Control refuses to start rather than drop it — remove it, and give Remote Control's own options after the verb (see `claude remote-control --help`).3117Error: `--settings` before `remote-control` is not carried over to the sessions Remote Control starts, so Remote Control refuses to start rather than drop it — remove it, and give Remote Control's own options after the verb (see `claude remote-control --help`).
3073```3118```
3074 3119
3075Claude Code ne refuse pas les indicateurs globaux qui sont inoffensifs à supprimer, tels que `--verbose`, `--model`, ou un `--session-id` ou `--plugin-dir` injecté par wrapper : il les ignore et le contrôle à distance démarre.3120Claude Code ne refuse pas les flags globaux qu'il est sans danger d'ignorer, comme `--verbose`, `--model`, ou un `--session-id` ou `--plugin-dir` injecté par un wrapper : il les ignore et Remote Control démarre.
3076 3121
3077Claude Code refuse également de démarrer pour un indicateur global qu'il ne reconnaît pas encore comme inoffensif, donc un indicateur ajouté dans une version plus récente peut apparaître dans ce message jusqu'à ce qu'une version ultérieure le marque comme inoffensif.3122Claude Code refuse aussi de démarrer pour un flag global qu'il ne reconnaît pas encore comme sans danger, donc un flag ajouté dans une version plus récente peut apparaître dans ce message jusqu'à ce qu'une version ultérieure le marque comme sans danger.
3078 3123
3079**Que faire :**3124**Que faire :**
3080 3125
3081* Supprimez l'indicateur avant le verbe et transmettez [les options propres du contrôle à distance](/docs/fr/remote-control#start-a-remote-control-session) après ; `claude remote-control --help` les énumère3126* Retirez le flag placé avant le verbe et passez les [options propres à Remote Control](/docs/fr/remote-control#start-a-remote-control-session) après celui-ci ; `claude remote-control --help` les liste
3082* Lorsque l'indicateur refusé est `--permission-mode`, exécutez `claude remote-control --permission-mode <mode>` pour définir le mode de permission pour les sessions que le contrôle à distance démarre3127* Lorsque le flag refusé est `--permission-mode`, exécutez `claude remote-control --permission-mode <mode>` pour définir le mode de permission des sessions démarrées par Remote Control
3083 3128
3084Avant la v2.1.248, `claude remote-control` n'acceptait pas ses propres indicateurs lorsqu'un indicateur global venait en premier, et la commande échouait avec une erreur d'option inconnue.3129Avant la v2.1.248, `claude remote-control` n'acceptait pas ses propres flags lorsqu'un flag global venait en premier, et la commande échouait avec une erreur `unknown option`.
3085 3130
3086<h3 id="claude-import-is-not-yet-available-in-this-build">3131<h3 id="claude-import-is-not-yet-available-in-this-build">
3087 claude import n'est pas encore disponible dans cette version3132 claude import n'est pas encore disponible dans ce build
3088</h3>3133</h3>
3089 3134
3090Vous avez exécuté [`claude import`](/docs/fr/cli-reference#cli-commands), et Claude Code a trouvé le flux d'importation désactivé, donc la commande se termine avec le code 1 au lieu de démarrer l'importation. Avant la v2.1.222, une version avec le flux d'importation désactivé traitait `import` comme une invite et démarrait une session interactive au lieu d'imprimer ce message.3135Vous avez exécuté [`claude import`](/docs/fr/cli-reference#cli-commands), et Claude Code a constaté que le processus d'import était désactivé, donc la commande se termine avec le code 1 au lieu de démarrer l'import. Avant la v2.1.222, un build avec le processus d'import désactivé traitait `import` comme un prompt et démarrait une session interactive au lieu d'afficher ce message.
3091 3136
3092```text theme={null}3137```text theme={null}
3093`claude import` is not yet available in this build. Run `claude` and use /mcp or edit ~/.claude/settings.json directly.3138`claude import` is not yet available in this build. Run `claude` and use /mcp or edit ~/.claude/settings.json directly.
3094```3139```
3095 3140
3096Claude Code active `claude import` via un indicateur de fonctionnalité qu'il récupère auprès d'Anthropic et met en cache sur le disque. Ce message signifie que la valeur mise en cache est désactivée. La cause est généralement l'une des suivantes :3141Claude Code active `claude import` via un feature flag qu'il récupère auprès d'Anthropic et met en cache sur le disque. Ce message signifie que la valeur en cache est désactivée. La cause est généralement l'une des suivantes :
3097 3142
3098* Vous n'avez pas démarré de session depuis l'installation, donc Claude Code n'a pas encore récupéré l'indicateur. Le premier `claude import` peut imprimer ceci même lorsque la fonctionnalité vous est disponible.3143* Vous n'avez pas démarré de session depuis l'installation, donc Claude Code n'a pas encore récupéré le flag. Le premier `claude import` peut afficher ce message même lorsque la fonctionnalité vous est disponible.
3099* Vous utilisez Claude Code via Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, ou Claude Platform sur AWS, ou via une [passerelle d'applications Claude](/docs/fr/claude-apps-gateway#availability-and-limitations). Claude Code ne récupère pas les indicateurs de fonctionnalité dans ces sessions, donc `claude import` reste indisponible.3144* Vous utilisez Claude Code via Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry ou Claude Platform on AWS, ou via une [passerelle Claude apps](/docs/fr/claude-apps-gateway#availability-and-limitations). Claude Code ne récupère pas les feature flags dans ces sessions, donc `claude import` reste indisponible.
3100* Vous avez défini `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, `DISABLE_GROWTHBOOK`, ou [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/fr/env-vars), qui désactivent la récupération des indicateurs de fonctionnalité, donc `claude import` reste indisponible.3145* Vous avez défini `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, `DISABLE_GROWTHBOOK` ou [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/fr/env-vars), qui désactivent la récupération des feature flags, donc `claude import` reste indisponible.
3101 3146
3102**Que faire :**3147**Que faire :**
3103 3148
3104* Sur une installation nouvelle, démarrez `claude`, attendez que la session se charge, quittez, et exécutez `claude import` à nouveau3149* Sur une nouvelle installation, démarrez `claude`, attendez que la session se charge, quittez, puis exécutez à nouveau `claude import`
3105* Où la récupération des indicateurs de fonctionnalité reste désactivée, configurez la configuration vous-même : ajoutez des serveurs MCP avec [`claude mcp add`](/docs/fr/mcp#installing-mcp-servers), et créez les [fichiers `CLAUDE.md`](/docs/fr/memory#how-claude-md-files-load), [skills et commandes](/docs/fr/skills#where-skills-live), et [sous-agents](/docs/fr/sub-agents#choose-the-subagent-scope) que vous souhaitez reporter. Le message nomme également `~/.claude/settings.json`. De la configuration que `claude import` reporte, ce fichier ne contient que le [mode de permission](/docs/fr/settings-reference#permission-settings) ; Claude Code ne lit pas les serveurs MCP à partir de celui-ci.3150* Lorsque la récupération des feature flags reste désactivée, configurez vous-même l'environnement : ajoutez des serveurs MCP avec [`claude mcp add`](/docs/fr/mcp#installing-mcp-servers), et créez les [fichiers `CLAUDE.md`](/docs/fr/memory#how-claude-md-files-load), les [skills et commandes](/docs/fr/skills#where-skills-live) et les [sous-agents](/docs/fr/sub-agents#choose-the-subagent-scope) que vous souhaitez transférer. Le message nomme aussi `~/.claude/settings.json`. De la configuration que transfère `claude import`, ce fichier ne contient que le [mode de permission](/docs/fr/settings-reference#permission-settings) ; Claude Code n'y lit pas les serveurs MCP.
3106 3151
3107<h3 id="could-not-read-claude-code-config">3152<h3 id="could-not-read-claude-code-config">
3108 Impossible de lire la configuration Claude Code3153 Impossible de lire la configuration de Claude Code
3109</h3>3154</h3>
3110 3155
3111Vous avez exécuté [`claude import`](/docs/fr/cli-reference#cli-commands) tandis que Claude Code ne pouvait pas analyser `~/.claude.json`, le fichier où il stocke votre connexion et l'état par projet. La sous-commande lit ce fichier pour vérifier la disponibilité mais n'affiche pas la boîte de dialogue de récupération que la session interactive affiche, elle se termine donc avec le code 1. Avant la v2.1.222, `claude import` avec un fichier de configuration illisible démarrait une session interactive, dont la boîte de dialogue de récupération gérait le fichier.3156Vous avez exécuté [`claude import`](/docs/fr/cli-reference#cli-commands) alors que Claude Code ne parvenait pas à analyser `~/.claude.json`, le fichier dans lequel il stocke votre connexion et l'état de chaque projet. La sous-commande lit ce fichier pour vérifier la disponibilité, mais n'affiche pas la boîte de dialogue de récupération qu'affiche la session interactive, elle se termine donc avec le code 1. Avant la v2.1.222, `claude import` avec un fichier de configuration illisible démarrait une session interactive, dont la boîte de dialogue de récupération prenait en charge le fichier.
3112 3157
3113```text theme={null}3158```text theme={null}
3114Could not read Claude Code config — run `claude` with no arguments to recover it.3159Could not read Claude Code config — run `claude` with no arguments to recover it.
3116 3161
3117**Que faire :**3162**Que faire :**
3118 3163
3119* Exécutez `claude` sans arguments. Claude Code détecte le fichier invalide et propose de le réinitialiser. Puis exécutez `claude import` à nouveau.3164* Exécutez `claude` sans arguments. Claude Code détecte le fichier invalide et propose de le réinitialiser. Exécutez ensuite à nouveau `claude import`.
3120* Pour conserver les modifications manuelles que vous avez apportées, corrigez la syntaxe JSON dans `~/.claude.json` dans un éditeur à la place, puis réexécutez `claude import`3165* Pour conserver les modifications manuelles que vous avez apportées, corrigez plutôt la syntaxe JSON de `~/.claude.json` dans un éditeur, puis relancez `claude import`
3121 3166
3122<h3 id="could-not-import-a-server-from-claude-desktop">3167<h3 id="could-not-import-a-server-from-claude-desktop">
3123 Impossible d'importer un serveur depuis Claude Desktop3168 Impossible d'importer un serveur depuis Claude Desktop
3124</h3>3169</h3>
3125 3170
3126Claude Code n'a pas pu ajouter l'un des serveurs que vous avez sélectionnés dans `claude mcp add-from-claude-desktop`. La commande importe toujours les autres serveurs sélectionnés et imprime une ligne par serveur qu'elle n'a pas pu ajouter. Avant la v2.1.205, le premier serveur qui a échoué a arrêté l'importation.3171Claude Code n'a pas pu ajouter l'un des serveurs que vous avez sélectionnés dans `claude mcp add-from-claude-desktop`. La commande importe quand même les autres serveurs sélectionnés et affiche une ligne par serveur qu'elle n'a pas pu ajouter. Avant la v2.1.205, le premier serveur en échec arrêtait l'import.
3127 3172
3128```text theme={null}3173```text theme={null}
3129Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.3174Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.
3130```3175```
3131 3176
3132Le texte après le nom du serveur est la raison. La plus courante est la vérification du nom : Claude Desktop autorise les caractères dans les noms de serveur, tels que les espaces et les points, que `claude mcp` restreint aux lettres, chiffres, traits d'union et traits de soulignement. D'autres raisons incluent une configuration de serveur qui échoue la validation et un serveur bloqué par la [politique MCP](/docs/fr/managed-mcp) de votre organisation.3177Le texte après le nom du serveur est le motif. Le plus courant est la vérification du nom : Claude Desktop autorise dans les noms de serveurs des caractères, comme les espaces et les points, que `claude mcp` limite aux lettres, chiffres, traits d'union et tirets bas. Les autres motifs incluent une configuration de serveur qui échoue à la validation et un serveur bloqué par la [politique MCP](/docs/fr/managed-mcp) de votre organisation.
3133 3178
3134**Que faire :**3179**Que faire :**
3135 3180
3136* Renommez le serveur dans `claude_desktop_config.json` pour utiliser uniquement des lettres, des chiffres, des traits d'union et des traits de soulignement, puis exécutez `claude mcp add-from-claude-desktop` à nouveau3181* Renommez le serveur dans `claude_desktop_config.json` pour n'utiliser que des lettres, chiffres, traits d'union et tirets bas, puis exécutez à nouveau `claude mcp add-from-claude-desktop`
3137* Ajoutez ce serveur directement avec `claude mcp add` ou `claude mcp add-json` sous un nom valide. Voir [Importer les serveurs MCP depuis Claude Desktop](/docs/fr/mcp#import-mcp-servers-from-claude-desktop).3182* Ajoutez ce serveur directement avec `claude mcp add` ou `claude mcp add-json` sous un nom valide. Consultez [Importer des serveurs MCP depuis Claude Desktop](/docs/fr/mcp#import-mcp-servers-from-claude-desktop).
3138 3183
3139<h3 id="cannot-add-mcp-server-to-the-managed-scope">3184<h3 id="cannot-add-mcp-server-to-the-managed-scope">
3140 Impossible d'ajouter un serveur MCP à la portée gérée3185 Impossible d'ajouter un serveur MCP à la portée managed
3141</h3>3186</h3>
3142 3187
3143Vous avez exécuté `claude mcp add` ou `claude mcp add-json` avec `--scope managed`. Cette portée contient les serveurs que votre organisation fournit via le paramètre géré [`managedMcpServers`](/docs/fr/settings-reference#managedmcpservers). Claude Code les lit à partir des paramètres gérés uniquement, donc la commande ne peut pas écrire un serveur dans cette portée.3188Vous avez exécuté `claude mcp add` ou `claude mcp add-json` avec `--scope managed`. Cette portée contient les serveurs que votre organisation fournit via le paramètre géré [`managedMcpServers`](/docs/fr/settings-reference#managedmcpservers). Claude Code les lit uniquement depuis les paramètres gérés, donc la commande ne peut pas écrire de serveur dans cette portée.
3144 3189
3145```text theme={null}3190```text theme={null}
3146Cannot add MCP server to scope: managed3191Cannot add MCP server to scope: managed
3148 3193
3149**Que faire :**3194**Que faire :**
3150 3195
3151* Ajoutez le serveur à une portée dans laquelle vous pouvez écrire : `local`, `user`, ou `project`. Sans `--scope`, la commande utilise `local`. Voir [Portées d'installation MCP](/docs/fr/mcp#mcp-installation-scopes)3196* Ajoutez le serveur à une portée dans laquelle vous pouvez écrire : `local`, `user` ou `project`. Sans `--scope`, la commande utilise `local`. Consultez [Portées d'installation MCP](/docs/fr/mcp#mcp-installation-scopes)
3152* Pour fournir le serveur à chaque utilisateur de votre organisation, ajoutez-le à [`managedMcpServers`](/docs/fr/settings-reference#managedmcpservers) dans les paramètres gérés que vous déployez3197* Pour fournir le serveur à tous les utilisateurs de votre organisation, ajoutez-le à [`managedMcpServers`](/docs/fr/settings-reference#managedmcpservers) dans les paramètres gérés que vous déployez
3198
3199<h3 id="cannot-add-mcp-server-when-managed-settings-allow-only-plugin-servers">
3200 Impossible d'ajouter un serveur MCP lorsque les paramètres gérés n'autorisent que les serveurs de plugins
3201</h3>
3202
3203Vous avez exécuté `claude mcp add` ou `claude mcp add-json` alors que les paramètres gérés de votre organisation définissent [`strictPluginOnlyCustomization`](/docs/fr/settings-reference#strictpluginonlycustomization) sur `true` ou sur une liste qui inclut `mcp`. Avec ce paramètre, Claude Code ne charge pas les serveurs MCP depuis `~/.claude.json` ou `.mcp.json`, donc la commande se termine avec le code 1 au lieu d'enregistrer un serveur qui ne se chargerait jamais :
3204
3205```text theme={null}
3206Cannot add MCP server: your organization's managed settings allow only MCP servers that plugins provide. Install a plugin that provides this server, or ask your administrator to make it available.
3207```
3208
3209`claude mcp add-from-claude-desktop` signale chaque serveur que vous sélectionnez comme non importé, avec ce message comme motif. [`/import`](/docs/fr/commands#all-commands) signale ce message pour chaque serveur MCP qu'il tente d'ajouter et importe quand même les autres éléments qu'il a trouvés.
3210
3211Avant la v2.1.284, ces commandes enregistraient le serveur et signalaient un succès, et le serveur ne se chargeait jamais.
3212
3213**Que faire :**
3214
3215* Installez un [plugin](/docs/fr/plugins/install) qui fournit le serveur
3216* Demandez à votre administrateur de distribuer le serveur dans un [plugin](/docs/fr/plugins/org), ou de le fournir via [`managedMcpServers`](/docs/fr/settings-reference#managedmcpservers) s'il s'agit d'un serveur distant HTTP ou SSE
3153 3217
3154<h3 id="cant-read-mcp-json">3218<h3 id="cant-read-mcp-json">
3155 Impossible de lire .mcp.json3219 Impossible de lire .mcp.json
3156</h3>3220</h3>
3157 3221
3158Une commande qui lit le [`.mcp.json`](/docs/fr/mcp#project-scope) du projet, telle que `claude mcp add` ou `claude mcp add-json` avec `--scope project`, ou `claude mcp remove`, a trouvé que le fichier dans votre répertoire courant n'est pas un fichier régulier ou est plus grand que 2 Mio, elle se termine donc avec cette erreur au lieu de lire le fichier.3222Une commande qui lit le fichier [`.mcp.json`](/docs/fr/mcp#project-scope) du projet, comme `claude mcp add` ou `claude mcp add-json` avec `--scope project`, ou `claude mcp remove`, a constaté que le fichier de votre répertoire courant n'est pas un fichier ordinaire ou dépasse 2 MiB, elle se termine donc avec cette erreur au lieu de lire le fichier.
3159 3223
3160```text theme={null}3224```text theme={null}
3161Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes. Fix or remove it, then run the command again.3225Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes. Fix or remove it, then run the command again.
3162```3226```
3163 3227
3164Avant la v2.1.257, un FIFO à `.mcp.json` laissait la commande attendre indéfiniment sans sortie, et un lien symbolique vers un fichier de périphérique tel que `/dev/zero` augmentait la mémoire jusqu'à ce que le processus soit tué.3228Avant la v2.1.257, une FIFO à l'emplacement `.mcp.json` laissait la commande en attente indéfiniment sans aucune sortie, et un lien symbolique vers un fichier de périphérique comme `/dev/zero` faisait croître la mémoire jusqu'à ce que le processus soit tué.
3165 3229
3166**Que faire :**3230**Que faire :**
3167 3231
3168* Vérifiez ce qui se trouve à `.mcp.json` dans votre répertoire courant. Remplacez-le par un fichier JSON ordinaire au [format de portée de projet](/docs/fr/mcp#project-scope), ou supprimez-le, puis exécutez la commande à nouveau.3232* Vérifiez ce qui se trouve à l'emplacement `.mcp.json` dans votre répertoire courant. Remplacez-le par un fichier JSON ordinaire au [format de portée projet](/docs/fr/mcp#project-scope), ou supprimez-le, puis exécutez à nouveau la commande.
3169 3233
3170<h3 id="mcp-server-was-not-saved-or-removed">3234<h3 id="mcp-server-was-not-saved-or-removed">
3171 Le serveur MCP n'a pas été enregistré ou supprimé3235 Le serveur MCP n'a pas été enregistré ou supprimé
3172</h3>3236</h3>
3173 3237
3174Vous avez exécuté `claude mcp add`, `claude mcp add-json`, ou `claude mcp remove` pour un serveur dans la portée `user` ou `local` [scope](/docs/fr/mcp#mcp-installation-scopes). Les deux portées sont stockées dans `~/.claude.json`, et la modification n'est pas dans ce fichier lorsque Claude Code le relit après l'écriture. La commande se termine avec cette erreur au lieu de sa ligne de succès.3238Vous avez exécuté `claude mcp add`, `claude mcp add-json` ou `claude mcp remove` pour un serveur de [portée](/docs/fr/mcp#mcp-installation-scopes) `user` ou `local`. Les deux portées sont stockées dans `~/.claude.json`, et la modification ne figure pas dans ce fichier lorsque Claude Code le relit après l'écriture. La commande se termine avec cette erreur au lieu de sa ligne de succès.
3175 3239
3176```text theme={null}3240```text theme={null}
3177MCP server "example" was not saved to /home/user/.claude.json. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox, then add the server again.3241MCP server "example" was not saved to /home/user/.claude.json. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox, then add the server again.
3178```3242```
3179 3243
3180Après une suppression, le message lit `was not removed from` et se termine par `then remove the server again`. Pour un serveur de portée `local`, le chemin est suivi du répertoire du projet auquel l'entrée appartient, comme `(local scope for /path/to/project)`.3244Après une suppression, le message indique `was not removed from` et se termine par `then remove the server again`. Pour un serveur de portée `local`, le chemin est suivi du répertoire de projet auquel appartient l'entrée, sous la forme `(local scope for /path/to/project)`.
3181 3245
3182Avant la v2.1.283, `claude mcp add`, `claude mcp add-json`, et `claude mcp remove` signalaient le succès même lorsque la modification n'atteignait pas le fichier.3246Avant la v2.1.283, `claude mcp add`, `claude mcp add-json` et `claude mcp remove` signalaient un succès même lorsque la modification n'atteignait pas le fichier.
3183 3247
3184**Que faire :**3248**Que faire :**
3185 3249
3186* Rendez le fichier que le message nomme inscriptible, ou exécutez la commande en dehors du sandbox, puis exécutez la même commande d'ajout ou de suppression à nouveau.3250* Rendez accessible en écriture le fichier nommé par le message, ou exécutez la commande en dehors du sandbox, puis exécutez à nouveau la même commande d'ajout ou de suppression.
3187 3251
3188<h3 id="mcp-server-may-not-have-been-saved-or-removed">3252<h3 id="mcp-server-may-not-have-been-saved-or-removed">
3189 Le serveur MCP peut ne pas avoir été enregistré ou supprimé3253 Le serveur MCP n'a peut-être pas été enregistré ou supprimé
3190</h3>3254</h3>
3191 3255
3192Vous avez exécuté `claude mcp add`, `claude mcp add-json`, ou `claude mcp remove` pour un serveur dans la portée `user` ou `local` [scope](/docs/fr/mcp#mcp-installation-scopes), et Claude Code n'a pas pu relire `~/.claude.json` pour confirmer la modification. La modification peut ou peut ne pas être sur le disque. Le texte entre parenthèses est l'erreur de cette lecture.3256Vous avez exécuté `claude mcp add`, `claude mcp add-json` ou `claude mcp remove` pour un serveur de [portée](/docs/fr/mcp#mcp-installation-scopes) `user` ou `local`, et Claude Code n'a pas pu relire `~/.claude.json` pour confirmer la modification. La modification peut être ou ne pas être sur le disque. Le texte entre parenthèses est l'erreur renvoyée par cette lecture.
3193 3257
3194```text theme={null}3258```text theme={null}
3195MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.3259MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.
3196```3260```
3197 3261
3198Après une suppression, le message lit `may not have been removed` et se termine par `then remove the server again if it is still listed`.3262Après une suppression, le message indique `may not have been removed` et se termine par `then remove the server again if it is still listed`.
3199 3263
3200Avant la v2.1.283, les commandes signalaient le succès même lorsque la modification ne pouvait pas être confirmée.3264Avant la v2.1.283, les commandes signalaient un succès même lorsque la modification n'avait pas pu être confirmée.
3201 3265
3202**Que faire :**3266**Que faire :**
3203 3267
3204* Exécutez `claude mcp get <name>` pour vérifier si la modification est sur le disque. Pour un serveur de portée `local`, exécutez-le à partir du répertoire du projet auquel le serveur appartient, car la portée locale est par projet.3268* Exécutez `claude mcp get <name>` pour vérifier si la modification est sur le disque. Pour un serveur de portée `local`, exécutez-la depuis le répertoire de projet auquel appartient le serveur, puisque la portée locale est propre à chaque projet.
3205* Si le serveur manque après un ajout, ou est toujours listé après une suppression, exécutez la même commande d'ajout ou de suppression à nouveau.3269* Si le serveur est absent après un ajout, ou toujours listé après une suppression, exécutez à nouveau la même commande d'ajout ou de suppression.
3206 3270
3207<h3 id="anthropic-hosted-and-doesnt-support-local-oauth">3271<h3 id="anthropic-hosted-and-doesnt-support-local-oauth">
3208 Le serveur est hébergé par Anthropic et ne supporte pas OAuth local3272 Le serveur est hébergé par Anthropic et ne prend pas en charge OAuth en local
3209</h3>3273</h3>
3210 3274
3211Vous avez démarré une connexion pour un serveur MCP dont l'URL pointe vers un hôte de connecteur hébergé par Anthropic qui s'authentifie via un fournisseur d'identité tiers. Ces hôtes incluent `microsoft365.mcp.claude.com`, `gmail.mcp.claude.com`, et `gcal.mcp.claude.com`. Claude Code refuse de démarrer son flux OAuth local pour ces hôtes à partir du panneau `/mcp` et de `claude mcp login`, car [leur connexion fonctionne uniquement via claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai).3275Vous avez lancé une connexion pour un serveur MCP dont l'URL pointe vers un hôte de connecteur hébergé par Anthropic qui s'authentifie via un fournisseur d'identité tiers. Ces hôtes incluent `microsoft365.mcp.claude.com`, `gmail.mcp.claude.com` et `gcal.mcp.claude.com`. Claude Code refuse de démarrer son flux OAuth local pour ces hôtes, depuis le panneau `/mcp` comme depuis `claude mcp login`, car [leur connexion ne fonctionne que via claude.ai](/docs/fr/mcp#use-mcp-servers-from-claude-ai).
3212 3276
3213```text theme={null}3277```text theme={null}
3214"gmail" is Anthropic-hosted and doesn't support local OAuth. Connect it via Settings → Connectors on claude.ai (requires `claude login`), then it'll be available here automatically.3278"gmail" is Anthropic-hosted and doesn't support local OAuth. Connect it via Settings → Connectors on claude.ai (requires `claude login`), then it'll be available here automatically.
3217**Que faire :**3281**Que faire :**
3218 3282
3219* Supprimez votre entrée avec `claude mcp remove <name>`, afin qu'elle ne puisse pas masquer le connecteur claude.ai à la même URL3283* Supprimez votre entrée avec `claude mcp remove <name>`, afin qu'elle ne puisse pas masquer le connecteur claude.ai à la même URL
3220* Après l'avoir supprimée, connectez le service à [claude.ai/customize/connectors](https://claude.ai/customize/connectors), tout en étant connecté au compte que vous utilisez dans Claude Code. Une fois connecté, [le connecteur apparaît dans Claude Code automatiquement](/docs/fr/mcp#use-mcp-servers-from-claude-ai) si votre méthode d'authentification active est une connexion d'abonnement claude.ai3284* Après l'avoir supprimée, connectez le service sur [claude.ai/customize/connectors](https://claude.ai/customize/connectors), en étant connecté au compte que vous utilisez dans Claude Code. Une fois la connexion établie, [le connecteur apparaît automatiquement dans Claude Code](/docs/fr/mcp#use-mcp-servers-from-claude-ai) si votre méthode d'authentification active est une connexion par abonnement claude.ai
3221 3285
3222<h3 id="server-rejected-the-authorization-header-minted-by-the-configured-headershelper">3286<h3 id="server-rejected-the-authorization-header-minted-by-the-configured-headershelper">
3223 Le serveur a rejeté l'en-tête Authorization créé par le headersHelper configuré3287 Le serveur a rejeté l'en-tête Authorization généré par le headersHelper configuré
3224</h3>3288</h3>
3225 3289
3226Un serveur MCP dont le [`headersHelper`](/docs/fr/mcp#use-dynamic-headers-for-custom-authentication) fournit l'en-tête `Authorization` a répondu à la connexion avec HTTP 401 ou 403, donc Claude Code signale la connexion comme échouée. Parce que le helper fournit l'en-tête `Authorization`, Claude Code [ne revient pas à OAuth](/docs/fr/mcp#authenticate-with-remote-mcp-servers) pour le serveur :3290Un serveur MCP dont le [`headersHelper`](/docs/fr/mcp#use-dynamic-headers-for-custom-authentication) fournit l'en-tête `Authorization` a répondu à la connexion avec un HTTP 401 ou 403, donc Claude Code signale l'échec de la connexion. Comme le helper fournit l'en-tête `Authorization`, Claude Code [ne se rabat pas sur OAuth](/docs/fr/mcp#authenticate-with-remote-mcp-servers) pour ce serveur :
3227 3291
3228```text theme={null}3292```text theme={null}
3229Server rejected the Authorization header minted by the configured headersHelper (HTTP 401). Check that the helper command returns a valid credential for this MCP endpoint — OAuth fallback is disabled when the helper supplies Authorization.3293Server rejected the Authorization header minted by the configured headersHelper (HTTP 401). Check that the helper command returns a valid credential for this MCP endpoint — OAuth fallback is disabled when the helper supplies Authorization.
3230```3294```
3231 3295
3232Claude Code réexécute le helper à chaque tentative de connexion, donc une nouvelle tentative après un rejet transitoire, tel qu'une course de rotation de jeton, peut réussir avec une nouvelle credential.3296Claude Code réexécute le helper à chaque tentative de connexion, donc une nouvelle tentative après un rejet transitoire, comme une situation de concurrence lors de la rotation d'un jeton, peut réussir avec de nouveaux identifiants.
3233 3297
3234**Que faire :**3298**Que faire :**
3235 3299
3236* Exécutez la commande `headersHelper` vous-même de la façon que Claude Code l'exécute : à partir du [répertoire où Claude Code l'exécute](/docs/fr/mcp#where-the-helper-runs), avec les [variables d'environnement que Claude Code définit pour elle](/docs/fr/mcp#use-dynamic-headers-for-custom-authentication), et sans les [variables de credential que Claude Code supprime](/docs/fr/mcp#which-variables-a-helper-can-read) pour un serveur à partir d'un `.mcp.json` de projet, d'un plugin, ou d'un fichier d'agent de projet. Vérifiez qu'elle imprime une valeur `Authorization` que le point de terminaison du serveur accepte3300* Exécutez vous-même la commande `headersHelper` de la même façon que Claude Code : depuis le [répertoire dans lequel Claude Code l'exécute](/docs/fr/mcp#where-the-helper-runs), avec les [variables d'environnement que Claude Code définit pour elle](/docs/fr/mcp#use-dynamic-headers-for-custom-authentication), et sans les [variables d'identifiants que Claude Code supprime](/docs/fr/mcp#which-variables-a-helper-can-read) pour un serveur provenant d'un fichier `.mcp.json` de projet, d'un plugin ou d'un fichier d'agent de projet. Vérifiez qu'elle affiche une valeur `Authorization` acceptée par l'endpoint du serveur
3237* Après avoir corrigé le helper ou sa source de credential, sélectionnez le serveur dans `/mcp` et choisissez **Reconnect**3301* Après avoir corrigé le helper ou la source de ses identifiants, sélectionnez le serveur dans `/mcp` et choisissez **Reconnect**
3238 3302
3239Avant la v2.1.248, Claude Code exécutait la découverte OAuth pour un serveur dont le helper fournissait l'en-tête `Authorization`. Cette découverte pouvait échouer avec `Incompatible auth server: does not support dynamic client registration` au lieu de signaler la credential rejetée.3303Avant la v2.1.248, Claude Code lançait la découverte OAuth pour un serveur dont le helper fournissait l'en-tête `Authorization`. Cette découverte pouvait échouer avec `Incompatible auth server: does not support dynamic client registration` au lieu de signaler les identifiants rejetés.
3240 3304
3241<h3 id="mcp-permission-prompt-tool-not-found">3305<h3 id="mcp-permission-prompt-tool-not-found">
3242 Outil d'invite de permission MCP non trouvé3306 Outil de demande de permission MCP introuvable
3243</h3>3307</h3>
3244 3308
3245L'outil que vous avez transmis à [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) ne figurait pas parmi les outils MCP connectés lorsque l'exécution a d'abord eu besoin d'une décision de permission, soit parce que son serveur ne s'est jamais connecté, soit parce qu'aucun serveur connecté n'expose un outil portant ce nom. Claude Code envoie toujours votre invite : l'exécution [non interactive](/docs/fr/headless) se termine avec cette erreur, et le code de sortie 1, au premier appel d'outil, donc elle ne produit aucune réponse même si la demande a été faite. Avant la première invite, Claude Code attend jusqu'au délai d'expiration de la connexion par serveur de 30 secondes défini par [`MCP_TIMEOUT`](/docs/fr/env-vars) pour que ce serveur se connecte. Avant la v2.1.206, le démarrage n'attendait pas que le serveur finisse de se connecter, donc un serveur qui démarre lentement mais sain produisait également cette erreur.3309L'outil que vous avez passé à [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags) ne figurait pas parmi les outils MCP connectés lorsque l'exécution a eu besoin pour la première fois d'une décision de permission, soit parce que son serveur ne s'est jamais connecté, soit parce qu'aucun serveur connecté n'expose d'outil portant ce nom. Claude Code envoie quand même votre prompt : l'exécution en [mode non interactif](/docs/fr/headless) se termine avec cette erreur, et le code de sortie 1, au premier appel d'outil, elle ne produit donc aucune réponse bien que la requête ait été effectuée. Avant le premier prompt, Claude Code attend que ce serveur se connecte, jusqu'au délai d'expiration de connexion par serveur de 30 secondes défini par [`MCP_TIMEOUT`](/docs/fr/env-vars). Avant la v2.1.206, le démarrage n'attendait pas la fin de la connexion du serveur, donc un serveur sain mais lent à démarrer produisait aussi cette erreur.
3246 3310
3247```text theme={null}3311```text theme={null}
3248Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none3312Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none
3249```3313```
3250 3314
3251La liste après `Available MCP tools:` nomme les outils MCP qui étaient connectés lorsque l'attente s'est terminée.3315La liste après `Available MCP tools:` nomme les outils MCP qui étaient connectés.
3252 3316
3253**Que faire :**3317**Que faire :**
3254 3318
3255* Vérifiez que le serveur démarre et reste connecté : exécutez `claude mcp list` dans le même répertoire et confirmez que le serveur est listé comme connecté3319* Vérifiez que le serveur démarre et reste connecté : exécutez `claude mcp list` dans le même répertoire et confirmez que le serveur est listé comme connecté
3256* Confirmez que le nom de l'outil correspond au nom `mcp__<server>__<tool>` que le serveur expose3320* Confirmez que le nom de l'outil correspond au nom `mcp__<server>__<tool>` exposé par le serveur
3257* Si le serveur a besoin de plus de 30 secondes pour démarrer, augmentez [`MCP_TIMEOUT`](/docs/fr/env-vars)3321* Si le serveur a besoin de plus de 30 secondes pour démarrer, augmentez [`MCP_TIMEOUT`](/docs/fr/env-vars)
3258 3322
3259<h3 id="oauth-callback-port-is-already-in-use">3323<h3 id="oauth-callback-port-is-already-in-use">
3260 Le port de rappel OAuth est déjà en cours d'utilisation3324 Le port de callback OAuth est déjà utilisé
3261</h3>3325</h3>
3262 3326
3263Lorsque vous vous connectez à un serveur MCP distant avec OAuth, Claude Code démarre un écouteur local pour recevoir le rappel de connexion. Si le port dont cet écouteur a besoin est détenu par un autre processus, la connexion échoue avec ce message. Cela se produit principalement avec un [port de rappel fixe](/docs/fr/mcp#use-a-fixed-oauth-callback-port) défini via la variable [`MCP_OAUTH_CALLBACK_PORT`](/docs/fr/env-vars) ou `--callback-port`, car sans celui-ci Claude Code choisit un port disponible.3327Lorsque vous vous connectez à un serveur MCP distant avec OAuth, Claude Code démarre un écouteur local pour recevoir le callback de connexion. Si le port dont cet écouteur a besoin est occupé par un autre processus, la connexion échoue avec ce message. Cela se produit surtout avec un [port de callback fixe](/docs/fr/mcp#use-a-fixed-oauth-callback-port) défini via la variable [`MCP_OAUTH_CALLBACK_PORT`](/docs/fr/env-vars) ou `--callback-port`, puisque sans cela Claude Code choisit un port disponible.
3264 3328
3265```text theme={null}3329```text theme={null}
3266OAuth callback port <port> is already in use — another process may be holding it. Run `lsof -ti:<port> -sTCP:LISTEN` to find it.3330OAuth callback port <port> is already in use — another process may be holding it. Run `lsof -ti:<port> -sTCP:LISTEN` to find it.
3270 3334
3271**Que faire :**3335**Que faire :**
3272 3336
3273* Exécutez la commande du message pour trouver le processus qui détient le port, et arrêtez-le ou attendez qu'il se termine3337* Exécutez la commande du message pour trouver le processus qui occupe le port, puis arrêtez-le ou attendez qu'il se termine
3274* Si un autre programme a besoin de ce port de manière permanente, enregistrez un URI de redirection différent auprès du serveur et définissez son port avec `MCP_OAUTH_CALLBACK_PORT` ou `--callback-port`, selon celui que vous utilisez3338* Si un autre programme a besoin de ce port en permanence, enregistrez une URI de redirection différente auprès du serveur et définissez son port avec `MCP_OAUTH_CALLBACK_PORT` ou `--callback-port`, selon ce que vous utilisez
3275* Puis démarrez la connexion à nouveau, par exemple en sélectionnant le serveur dans `/mcp`3339* Relancez ensuite la connexion, par exemple en sélectionnant le serveur dans `/mcp`
3276 3340
3277<h3 id="no-available-ports-for-oauth-redirect">3341<h3 id="no-available-ports-for-oauth-redirect">
3278 Aucun port disponible pour la redirection OAuth3342 Aucun port disponible pour la redirection OAuth
3279</h3>3343</h3>
3280 3344
3281Lorsque vous vous connectez à un serveur MCP distant avec [OAuth](/docs/fr/mcp#authenticate-with-remote-mcp-servers), Claude Code démarre un écouteur local pour recevoir le rappel de connexion. La connexion échoue avec ce message lorsque Claude Code ne peut pas lier un port local pour cela. Quelque chose sur la machine empêche d'écouter sur `127.0.0.1`, par exemple un logiciel de sécurité ou une politique de sandbox qui refuse les écouteurs locaux.3345Lorsque vous vous connectez à un serveur MCP distant avec [OAuth](/docs/fr/mcp#authenticate-with-remote-mcp-servers), Claude Code démarre un écouteur local pour recevoir le callback de connexion. La connexion échoue avec ce message lorsque Claude Code ne parvient pas à lier un port local pour cet écouteur. Un élément de la machine l'empêche d'écouter sur `127.0.0.1`, par exemple un logiciel de sécurité ou une politique de sandbox qui interdit les écouteurs locaux.
3282 3346
3283```text theme={null}3347```text theme={null}
3284No available ports for OAuth redirect3348No available ports for OAuth redirect
3285```3349```
3286 3350
3287Avant la v2.1.268, Claude Code ne revenait pas à un port assigné par le système d'exploitation, donc le message apparaissait également lorsque seuls ses ports auto-sélectionnés ne pouvaient pas être liés. Cela peut se produire sur les hôtes Windows où Hyper-V réserve des plages de ports qui couvrent les ports que Claude Code choisit.3351Avant la v2.1.268, Claude Code ne basculait pas sur un port attribué par le système d'exploitation, donc le message apparaissait aussi lorsque seuls les ports qu'il choisissait lui-même ne pouvaient pas être liés. Cela peut se produire sur des hôtes Windows où Hyper-V réserve des plages de ports qui couvrent les ports parmi lesquels Claude Code choisit.
3288 3352
3289**Que faire :**3353**Que faire :**
3290 3354
3291* Vérifiez si un logiciel de sécurité ou une politique de sandbox bloque les processus d'écoute sur `127.0.0.1`, et autorisez Claude Code à lier un port local3355* Vérifiez si un logiciel de sécurité ou une politique de sandbox empêche les processus d'écouter sur `127.0.0.1`, et autorisez Claude Code à lier un port local
3292* Puis démarrez la connexion à nouveau, par exemple en sélectionnant le serveur dans `/mcp`3356* Relancez ensuite la connexion, par exemple en sélectionnant le serveur dans `/mcp`
3293 3357
3294<h3 id="security-review-fails-without-origin-head">3358<h3 id="security-review-fails-without-origin-head">
3295 /security-review échoue sans origin/HEAD3359 /security-review échoue sans origin/HEAD
3296</h3>3360</h3>
3297 3361
3298[`/security-review`](/docs/fr/commands#all-commands) construit son contexte d'examen en comparant votre branche avec `origin/HEAD`, la référence locale qui enregistre quelle branche est la branche par défaut sur votre télécommande `origin`. Lorsque cette référence n'existe pas, les commandes git qui rassemblent la comparaison échouent et l'examen s'arrête avant de commencer.3362[`/security-review`](/docs/fr/commands#all-commands) construit son contexte de revue en calculant le diff de votre branche par rapport à `origin/HEAD`, la référence locale qui indique quelle branche est la branche par défaut sur votre remote `origin`. Lorsque cette référence n'existe pas, les commandes git qui rassemblent le diff échouent et la revue s'arrête avant de commencer.
3299 3363
3300```text theme={null}3364```text theme={null}
3301Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]3365Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]
3304'git <command> [<revision>...] -- [<file>...]'3368'git <command> [<revision>...] -- [<file>...]'
3305```3369```
3306 3370
3307Le message peut citer `git log` ou une `git diff` différente à la place. Git crée `origin/HEAD` uniquement lorsque la télécommande annonce une branche par défaut et que votre refspec de récupération la couvre, ce qu'un `git clone` complet d'une télécommande avec des commits fait. La référence manque dans ces configurations :3371Le message peut citer `git log` ou une autre commande `git diff` à la place. Git ne crée `origin/HEAD` que lorsque le remote annonce une branche par défaut et que votre refspec de fetch la couvre, ce que fait un `git clone` complet d'un remote contenant des commits. La référence est absente dans ces configurations :
3308 3372
3309* Un checkout à branche unique ou CI, qui récupère un refspec trop étroit3373* Un checkout mono-branche ou de CI, qui récupère une refspec trop étroite
3310* Une télécommande dont le HEAD côté serveur pointe vers une branche que personne n'a poussée3374* Un remote dont le HEAD côté serveur pointe vers une branche que personne n'a poussée
3311* Un référentiel sans télécommande `origin`, ou une que vous n'avez jamais récupérée3375* Un dépôt sans remote `origin`, ou un remote que vous n'avez jamais récupéré
3312 3376
3313Claude Code affiche la même erreur pour tout skill qui [injecte du contexte dynamique](/docs/fr/skills#when-an-injected-command-fails), et une commande injectée échouée abandonne l'invocation de ce skill. Deux chaînes sœurs se déclenchent avant l'exécution de la commande :3377Claude Code affiche la même erreur pour tout skill qui [injecte du contexte dynamique](/docs/fr/skills#when-an-injected-command-fails), et une commande injectée en échec interrompt l'invocation de ce skill. Deux messages apparentés apparaissent avant même l'exécution de la commande :
3314 3378
3315* `Shell command permission check failed for pattern "..."`: la vérification de permission de la commande ne l'a pas autorisée. [Les vérifications de permission sur les commandes injectées](/docs/fr/skills#permission-checks-on-injected-commands) couvrent quels résultats abandonnent dans chaque mode de permission et comment pré-approuver une commande avec `allowed-tools`3379* `Shell command permission check failed for pattern "..."` : la vérification de permission de la commande ne l'a pas autorisée. [Vérifications de permission sur les commandes injectées](/docs/fr/skills#permission-checks-on-injected-commands) explique quels résultats interrompent l'exécution dans chaque mode de permission et comment pré-approuver une commande avec `allowed-tools`
3316* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: le frontmatter du skill exige bash sur une machine sans celui-ci. Installez Git pour Windows ou changez le frontmatter en `shell: powershell`. Voir [Comment les commandes injectées s'exécutent](/docs/fr/skills#how-injected-commands-run)3380* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found`` : le frontmatter du skill exige bash sur une machine qui n'en dispose pas. Installez Git for Windows ou modifiez le frontmatter en `shell: powershell`. Consultez [Comment les commandes injectées s'exécutent](/docs/fr/skills#how-injected-commands-run)
3317 3381
3318**Que faire :**3382**Que faire :**
3319 3383
3320* Créez la référence en nommant la branche par défaut de votre télécommande : `git remote set-head origin <default-branch>`. Cela fonctionne chaque fois que la référence de suivi locale `origin/<default-branch>` existe. Si ce n'est pas le cas, comme dans les clones à branche unique, récupérez d'abord la branche : exécutez `git remote set-branches --add origin <branch>`, puis `git fetch origin`, puis réexécutez la commande set-head. Réexécutez `/security-review`.3384* Créez la référence en nommant la branche par défaut de votre remote : `git remote set-head origin <default-branch>`. Cela fonctionne dès lors que la référence de suivi locale `origin/<default-branch>` existe. Si ce n'est pas le cas, comme dans les clones mono-branche, récupérez d'abord la branche : exécutez `git remote set-branches --add origin <branch>`, puis `git fetch origin`, puis relancez la commande set-head. Relancez `/security-review`.
3321* Si vous préférez ne pas nommer la branche, exécutez `git fetch origin` puis `git remote set-head origin --auto`, qui demande à la télécommande quelle branche est sa branche par défaut. Elle échoue avec `error: Cannot determine remote HEAD` lorsque la télécommande n'annonce aucune branche par défaut, car elle est vide ou son HEAD pointe vers une branche que personne n'a poussée ; nommez la branche explicitement à la place. Elle échoue avec `error: Not a valid ref` lorsque votre clone ne récupère pas cette branche ; élargissez le refspec comme ci-dessus d'abord.3385* Si vous préférez ne pas nommer la branche, exécutez `git fetch origin` puis `git remote set-head origin --auto`, qui demande au remote quelle est sa branche par défaut. Cette commande échoue avec `error: Cannot determine remote HEAD` lorsque le remote n'annonce aucune branche par défaut, parce qu'il est vide ou que son HEAD pointe vers une branche que personne n'a poussée ; nommez alors explicitement la branche. Elle échoue avec `error: Not a valid ref` lorsque votre clone ne récupère pas cette branche ; élargissez d'abord la refspec comme indiqué ci-dessus.
3322* Si le référentiel n'a pas de télécommande, ajoutez-en une avec `git remote add origin <url>` et récupérez avant de créer la référence. Si la télécommande est vide, poussez votre branche d'abord avec `git push -u origin HEAD` et nommez cette branche dans la commande set-head ; `origin/HEAD` pointe alors vers la branche que vous venez de pousser, donc `/security-review` voit une comparaison vide jusqu'à ce que la branche diverge de celle-ci.3386* Si le dépôt n'a pas de remote, ajoutez-en un avec `git remote add origin <url>` et effectuez un fetch avant de créer la référence. Si le remote est vide, poussez d'abord votre branche avec `git push -u origin HEAD` et nommez cette branche dans la commande set-head ; `origin/HEAD` pointe alors vers la branche que vous venez de pousser, donc `/security-review` voit un diff vide jusqu'à ce que la branche diverge.
3323 3387
3324<h3 id="input-must-be-provided-when-using-print">3388<h3 id="input-must-be-provided-when-using-print">
3325 L'entrée doit être fournie lors de l'utilisation de `--print`3389 Une entrée doit être fournie lors de l'utilisation de `--print`
3326</h3>3390</h3>
3327 3391
3328Le `claude` nu a besoin que stdout soit un terminal pour démarrer l'interface utilisateur interactive. Lorsque stdout est redirigé, ou que la console n'est pas un vrai terminal, tel que PowerShell ISE et certains volets de sortie IDE, `claude` s'exécute [de manière non interactive](/docs/fr/headless) à la place. C'est le même mode que `claude -p`, qui nécessite une invite, donc le message nomme `--print` même si vous n'avez pas transmis l'indicateur. Transmettre `-p`/`--print` sans invite et rien canalisé sur stdin produit la même erreur n'importe où.3392`claude` seul a besoin que stdout soit un terminal pour démarrer l'interface interactive. Lorsque stdout est redirigé, ou que la console n'est pas un vrai terminal, comme PowerShell ISE et certains volets de sortie d'IDE, `claude` s'exécute en [mode non interactif](/docs/fr/headless) à la place. Il s'agit du même mode que `claude -p`, qui exige un prompt, donc le message nomme `--print` même si vous n'avez pas passé le flag. Passer `-p`/`--print` sans prompt et sans rien envoyer sur stdin produit la même erreur partout.
3329 3393
3330```text theme={null}3394```text theme={null}
3331Error: Input must be provided either through stdin or as a prompt argument when using --print3395Error: Input must be provided either through stdin or as a prompt argument when using --print
3333 3397
3334**Que faire :**3398**Que faire :**
3335 3399
3336* Pour une utilisation interactive, exécutez `claude` dans un vrai terminal : Windows Terminal ou la console PowerShell plutôt que ISE, et le terminal intégré de votre IDE plutôt qu'un volet de sortie3400* Pour une utilisation interactive, exécutez `claude` dans un vrai terminal : Windows Terminal ou la console PowerShell plutôt qu'ISE, et le terminal intégré de votre IDE plutôt qu'un volet de sortie
3337* Pour une utilisation ponctuelle, transmettez l'invite : `claude -p "your question"`, ou canalisez-la avec `echo "your question" | claude -p`3401* Pour une utilisation ponctuelle, passez le prompt : `claude -p "your question"`, ou envoyez-le via un pipe avec `echo "your question" | claude -p`
3338 3402
3339<h3 id="input-contained-only-whitespace">3403<h3 id="input-contained-only-whitespace">
3340 L'entrée contenait uniquement des espaces blancs3404 L'entrée ne contenait que des espaces
3341</h3>3405</h3>
3342 3406
3343En [mode non interactif](/docs/fr/headless), Claude Code refuse une invite composée entièrement d'espaces, de tabulations ou de sauts de ligne au lieu de l'envoyer, car l'API rejette les messages sans texte visible. Le message que vous voyez dépend de l'endroit d'où provient l'invite vide :3407En [mode non interactif](/docs/fr/headless), Claude Code refuse un prompt composé entièrement d'espaces, de tabulations ou de sauts de ligne au lieu de l'envoyer, car l'API rejette les messages sans texte visible. Le message affiché dépend de la provenance du prompt vide :
3344 3408
3345* **Argument d'invite ou stdin canalisé pour `claude -p`** : `claude` se termine avec `Error: Input contained only whitespace. Provide a prompt with text through stdin or as a prompt argument when using --print`3409* **Argument de prompt ou stdin envoyé via un pipe pour `claude -p`** : `claude` se termine avec `Error: Input contained only whitespace. Provide a prompt with text through stdin or as a prompt argument when using --print`
3346* **Message soumis à une session `--input-format stream-json` ou [Agent SDK](/docs/fr/agent-sdk/overview) en cours d'exécution** : Claude Code termine le tour sans appeler le modèle et la session reste utilisable. Le refus arrive comme un message informatif et comme le texte de résultat du tour : `Blank prompt — the message was only whitespace, so nothing was sent to the model.`3410* **Message soumis à une session `--input-format stream-json` ou [Agent SDK](/docs/fr/agent-sdk/overview) en cours** : Claude Code termine le tour sans appeler le modèle et la session reste utilisable. Le refus arrive sous forme de message informatif et comme texte de résultat du tour : `Blank prompt — the message was only whitespace, so nothing was sent to the model.`
3347 3411
3348Avant la v2.1.229, Claude Code envoyait le message contenant uniquement des espaces blancs à l'API, qui rejetait la demande avec une erreur 400.3412Avant la v2.1.229, Claude Code envoyait le message composé uniquement d'espaces à l'API, qui rejetait la requête avec une erreur 400.
3349 3413
3350**Que faire :**3414**Que faire :**
3351 3415
3352* Incluez du texte visible dans l'invite. Si un script construit l'invite à partir d'une variable ou d'un fichier, vérifiez que la source n'est pas vide avant d'appeler Claude Code.3416* Incluez du texte visible dans le prompt. Si un script construit le prompt à partir d'une variable ou d'un fichier, vérifiez que la source n'est pas vide avant d'appeler Claude Code.
3353 3417
3354<h3 id="stream-json-input-carried-over-256m-characters-with-no-newline">3418<h3 id="stream-json-input-carried-over-256m-characters-with-no-newline">
3355 L'entrée stream-json a porté plus de 256 M caractères sans nouvelle ligne3419 L'entrée stream-json contenait plus de 256M caractères sans saut de ligne
3356</h3>3420</h3>
3357 3421
3358Votre programme a envoyé plus de 268 435 456 caractères sur stdin sans nouvelle ligne à une exécution `claude -p --input-format stream-json`, donc Claude Code imprime cette erreur sur stderr et se termine avec le code 1 au lieu de mettre en mémoire tampon plus d'entrée. Le message énonce ce budget comme `256M`. Avant la v2.1.257, Claude Code mettait en mémoire tampon une telle entrée sans limite, augmentant la mémoire jusqu'à ce que le processus s'écrase ou soit tué.3422Votre programme a envoyé plus de 268 435 456 caractères sur stdin sans saut de ligne à une exécution `claude -p --input-format stream-json`, donc Claude Code affiche cette erreur sur stderr et se termine avec le code 1 au lieu de mettre davantage d'entrée en mémoire tampon. Le message exprime cette limite sous la forme `256M`. Avant la v2.1.257, Claude Code mettait une telle entrée en mémoire tampon sans limite, faisant croître la mémoire jusqu'à ce que le processus plante ou soit tué.
3359 3423
3360```text theme={null}3424```text theme={null}
3361Error: stream-json input carried over 256M characters with no newline. Each stream-json message must be a single newline-terminated JSON line: either the producer is not newline-terminating its messages, or one message exceeded this budget.3425Error: stream-json input carried over 256M characters with no newline. Each stream-json message must be a single newline-terminated JSON line: either the producer is not newline-terminating its messages, or one message exceeded this budget.
3362```3426```
3363 3427
3364Une entrée aussi longue sans nouvelle ligne signifie généralement que le producteur n'est pas du tout un producteur stream-json, tel qu'un fichier binaire ou une sortie de journal ordinaire canalisée par accident. Un seul message dépassant le budget échoue la même vérification.3428Une entrée aussi longue sans saut de ligne signifie généralement que le producteur n'est pas du tout un producteur stream-json, par exemple un fichier binaire ou une sortie de log en texte brut envoyé par erreur via un pipe. Un seul message dépassant la limite échoue à la même vérification.
3365 3429
3366**Que faire :**3430**Que faire :**
3367 3431
3368* Vérifiez ce qui est canalisé sur stdin. Avec [`--input-format stream-json`](/docs/fr/cli-reference#cli-flags), chaque message doit être une ligne JSON terminée par une nouvelle ligne3432* Vérifiez ce qui est envoyé sur stdin. Avec [`--input-format stream-json`](/docs/fr/cli-reference#cli-flags), chaque message doit être une seule ligne JSON terminée par un saut de ligne
3369* Pour envoyer du texte ordinaire à la place, supprimez `--input-format stream-json` ; `claude -p` lit une invite en texte ordinaire à partir de stdin par défaut3433* Pour envoyer du texte brut à la place, supprimez `--input-format stream-json` ; `claude -p` lit par défaut un prompt en texte brut depuis stdin
3370 3434
3371<h3 id="unknown-command">3435<h3 id="unknown-command">
3372 Commande inconnue3436 Commande inconnue
3373</h3>3437</h3>
3374 3438
3375Dans une session de terminal interactive, vous avez soumis un nom `/` qui ne correspond à aucune commande dans cette session, donc Claude Code signale le nom au lieu d'exécuter quoi que ce soit :3439Dans une session de terminal interactive, vous avez soumis un nom `/` qui ne correspond à aucune commande de cette session, donc Claude Code signale le nom au lieu d'exécuter quoi que ce soit :
3376 3440
3377```text theme={null}3441```text theme={null}
3378Unknown command: /hepl. Did you mean /help?3442Unknown command: /hepl. Did you mean /help?
3379```3443```
3380 3444
3381Claude Code suggère le nom de commande ou l'alias le plus proche que le menu énumère dans cette session. Lorsque rien n'est proche, le message se termine après le nom. La cause est généralement l'une des suivantes :3445Claude Code suggère le nom de commande ou l'alias le plus proche listé par le menu dans cette session. Lorsque rien n'est proche, le message se termine après le nom. La cause est généralement l'une des suivantes :
3382 3446
3383* Une faute de frappe, telle que `/hepl` pour `/help`. [Comment le menu de commande correspond à ce que vous tapez](/docs/fr/commands#how-the-command-menu-matches-what-you-type) couvre le choix d'une correspondance proche avant de soumettre3447* Une faute de frappe, comme `/hepl` pour `/help`. [Comment le menu des commandes fait correspondre ce que vous tapez](/docs/fr/commands#how-the-command-menu-matches-what-you-type) explique comment choisir une correspondance proche avant de soumettre
3384* Une commande qui existe mais n'est pas disponible dans cette session car une exigence n'est pas satisfaite, telle que votre plateforme, plan ou méthode d'authentification. Les entrées de dépannage pour [`/web-setup`](/docs/fr/web-quickstart#web-setup-shows-no-commands-match-or-unknown-command) et [`/schedule`](/docs/fr/routines#schedule-returns-unknown-command) parcourent deux cas courants. Certaines commandes répondent avec leur propre message lorsque la politique de votre organisation les désactive, telles que [`Cloud sessions are disabled by your organization's policy`](#cloud-sessions-are-disabled-by-your-organizations-policy)3448* Une commande qui existe mais n'est pas disponible dans cette session parce qu'une condition n'est pas remplie, comme votre plateforme, votre forfait ou votre méthode d'authentification. Les entrées de dépannage pour [`/web-setup`](/docs/fr/web-quickstart#web-setup-shows-no-commands-match-or-unknown-command) et [`/schedule`](/docs/fr/routines#schedule-returns-unknown-command) détaillent deux cas courants. Certaines commandes répondent avec leur propre message lorsque la politique de votre organisation les désactive, comme [`Cloud sessions are disabled by your organization's policy`](#cloud-sessions-are-disabled-by-your-organizations-policy)
3385* Une commande d'un [plugin](/docs/fr/plugins/overview) ou [serveur MCP](/docs/fr/mcp#use-mcp-prompts-as-commands) qui n'est pas installé ou connecté dans cette session3449* Une commande provenant d'un [plugin](/docs/fr/plugins/overview) ou d'un [serveur MCP](/docs/fr/mcp#use-mcp-prompts-as-commands) qui n'est pas installé ou connecté dans cette session
3386 3450
3387Claude Code répond à un nom `/` non appairé de cette manière uniquement dans une session de terminal interactive. Dans toute autre session, il envoie l'invite à Claude comme un message normal à la place, avec une note que la commande n'a pas s'exécutée et une liste de commandes que Claude peut exécuter dans la session. Ces sessions incluent :3451Claude Code ne répond de cette façon à un nom `/` sans correspondance que dans une session de terminal interactive. Dans toutes les autres sessions, il envoie plutôt le prompt à Claude comme un message normal, avec une note indiquant que la commande ne s'est pas exécutée et une liste des commandes que Claude peut exécuter dans la session. Ces sessions incluent :
3388 3452
3389* Les exécutions `-p`3453* Les exécutions `-p`
3390* Les applications [Agent SDK](/docs/fr/agent-sdk/overview)3454* Les applications [Agent SDK](/docs/fr/agent-sdk/overview)
3391* L'onglet Code de l'[application Desktop](/docs/fr/desktop)3455* L'onglet Code de l'[application Desktop](/docs/fr/desktop)
3392* Le panneau de chat de l'[extension VS Code](/docs/fr/vs-code)3456* Le panneau de chat de l'[extension VS Code](/docs/fr/vs-code)
3393* Les [sessions cloud](/docs/fr/claude-code-on-the-web) et [routines](/docs/fr/routines)3457* Les [sessions cloud](/docs/fr/claude-code-on-the-web) et les [routines](/docs/fr/routines)
3394 3458
3395Pour une commande intégrée qui ne peut pas s'exécuter dans l'une de ces sessions, Claude Code répond toujours que la commande n'est pas disponible au lieu de l'envoyer à Claude. Avant la v2.1.274, seules les sessions cloud et les routines envoyaient un nom non appairé à Claude. Avant la v2.1.273, elles répondaient également `Unknown command`.3459Pour une commande intégrée qui ne peut pas s'exécuter dans l'une de ces sessions, Claude Code répond quand même que la commande n'est pas disponible au lieu de l'envoyer à Claude. Avant la v2.1.274, seules les sessions cloud et les routines envoyaient un nom sans correspondance à Claude. Avant la v2.1.273, elles répondaient aussi `Unknown command`.
3396 3460
3397Claude Code ne traite pas chaque invite qui commence par `/` comme une commande. Il envoie l'invite à Claude comme un message normal lorsque le premier mot après le `/` commence par la ponctuation, telle que le `/--` qui ouvre un commentaire de document Lean, ou est un chemin tel que `/var/log/syslog`.3461Claude Code ne traite pas comme une commande chaque prompt qui commence par `/`. Il envoie le prompt à Claude comme un message normal lorsque le premier mot après le `/` commence par un signe de ponctuation, comme le `/--` qui ouvre un commentaire de documentation Lean, ou qu'il s'agit d'un chemin comme `/var/log/syslog`.
3398 3462
3399Avant la v2.1.236, si vous aviez appuyé sur `Entrée` tandis que le menu de commande énumérait une correspondance proche du nom que vous aviez tapé, Claude Code exécutait cette correspondance, donc une faute de frappe telle que `/hepl` exécutait `/help` au lieu de produire ce message.3463Avant la v2.1.236, si vous appuyiez sur `Enter` alors que le menu des commandes listait une correspondance proche du nom saisi, Claude Code exécutait cette correspondance, donc une faute de frappe comme `/hepl` exécutait `/help` au lieu de produire ce message.
3400 3464
3401**Que faire :**3465**Que faire :**
3402 3466
3403* Exécutez le nom suggéré, ou tapez `/` suivi d'une partie du nom pour voir ce qui est disponible dans cette session3467* Exécutez le nom suggéré, ou tapez `/` suivi d'une partie du nom pour voir ce qui est disponible dans cette session
3404* Si Claude Code signale une commande documentée comme inconnue, vérifiez sa ligne dans la [référence des commandes](/docs/fr/commands) pour l'exigence qu'elle nomme3468* Si Claude Code signale comme inconnue une commande documentée, consultez sa ligne dans la [référence des commandes](/docs/fr/commands) pour connaître la condition qu'elle indique
3405 3469
3406<h3 id="diff-is-too-large-for-ultrareview">3470<h3 id="diff-is-too-large-for-ultrareview">
3407 La comparaison est trop grande pour ultrareview3471 Le diff est trop volumineux pour ultrareview
3408</h3>3472</h3>
3409 3473
3410La comparaison entre votre branche et la branche de base, y compris les modifications non validées et mises en scène, dépasse les limites de taille pour un [ultrareview](/docs/fr/ultrareview), donc `/code-review ultra` et la sous-commande `claude ultrareview` refusent l'examen avant le démarrage de la session cloud. Un examen refusé n'utilise pas une exécution gratuite et ne facture pas les crédits d'utilisation. Le message nomme les limites en vigueur, la taille de votre comparaison et les fichiers qui contribuent le plus de lignes modifiées. Avant la v2.1.216, le message affichait uniquement les statistiques de comparaison brutes.3474Le diff entre votre branche et la branche de base, y compris les modifications non commitées et indexées, dépasse les limites de taille d'un [ultrareview](/docs/fr/ultrareview), donc `/code-review ultra` et la sous-commande `claude ultrareview` refusent la revue avant le démarrage de la session cloud. Une revue refusée n'utilise pas d'exécution gratuite et ne facture pas de crédits d'utilisation. Le message nomme les limites en vigueur, la taille de votre diff et les fichiers qui contribuent le plus de lignes modifiées. Avant la v2.1.216, le message n'affichait que les statistiques brutes du diff.
3411 3475
3412```text theme={null}3476```text theme={null}
3413Diff is too large for ultrareview: 812 files, 96,410 lines changed (limits: 500 files, 8,000 lines). Largest files: package-lock.json (41,904 lines), dist/bundle.js (18,210 lines), src/generated/api.ts (9,876 lines). Pass a closer base branch (`/code-review ultra <branch>`) to narrow the scope, or split the change.3477Diff is too large for ultrareview: 812 files, 96,410 lines changed (limits: 500 files, 8,000 lines). Largest files: package-lock.json (41,904 lines), dist/bundle.js (18,210 lines), src/generated/api.ts (9,876 lines). Pass a closer base branch (`/code-review ultra <branch>`) to narrow the scope, or split the change.
3414```3478```
3415 3479
3416L'examen d'une demande de tirage applique les mêmes limites ; cette forme du message commence par `PR #<N> is too large for ultrareview` et nomme les comptes de fichiers et de lignes de la demande de tirage.3480La revue d'une pull request applique les mêmes limites ; cette forme du message commence par `PR #<N> is too large for ultrareview` et nomme le nombre de fichiers et de lignes de la PR.
3417 3481
3418**Que faire :**3482**Que faire :**
3419 3483
3420* Transmettez une branche de base plus proche de votre travail, telle que `/code-review ultra develop`, afin que l'examen couvre uniquement la comparaison par rapport à cette branche3484* Passez une branche de base plus proche de votre travail, comme `/code-review ultra develop`, afin que la revue ne couvre que le diff par rapport à cette branche
3421* Divisez la modification en branches plus petites et examinez chacune. Les fichiers que le message nomme contribuent le plus de lignes modifiées, donc commencez par déplacer ceux-ci vers leur propre branche.3485* Divisez la modification en branches plus petites et faites la revue de chacune. Les fichiers nommés par le message contribuent le plus de lignes modifiées, commencez donc par les déplacer dans leur propre branche.
3422 3486
3423<h3 id="could-not-find-merge-base-with-the-base-branch">3487<h3 id="could-not-find-merge-base-with-the-base-branch">
3424 Impossible de trouver la base de fusion avec la branche de base3488 Impossible de trouver la merge-base avec la branche de base
3425</h3>3489</h3>
3426 3490
3427`/code-review ultra` et la sous-commande `claude ultrareview` examinent la comparaison entre votre branche et une branche de base, ce qui nécessite un commit que les deux partagent. Lorsque `git merge-base` n'en trouve aucun, Claude Code refuse l'examen avant le démarrage de la session cloud. Sur un clone que Claude Code peut vérifier comme complet, avec au moins une branche, il revient à [examiner chaque fichier suivi](/docs/fr/ultrareview#diff-limits-and-fallbacks) au lieu de refuser. Vous voyez ce refus lorsque la branche de base ne peut pas être trouvée du tout, lorsque Claude Code ne peut pas vérifier que votre clone est complet, ou dans le rare référentiel où la comparaison de l'arborescence entière n'est pas possible, telle que le format d'objet SHA-256.3491`/code-review ultra` et la sous-commande `claude ultrareview` font la revue du diff entre votre branche et une branche de base, ce qui nécessite un commit commun aux deux. Lorsque `git merge-base` n'en trouve aucun, Claude Code refuse la revue avant le démarrage de la session cloud. Sur un clone dont Claude Code peut vérifier qu'il est complet, avec au moins une branche, il bascule sur la [revue de chaque fichier suivi](/docs/fr/ultrareview#diff-limits-and-fallbacks) au lieu de refuser. Vous voyez ce refus lorsque la branche de base est introuvable, lorsque Claude Code ne peut pas vérifier que votre clone est complet, ou dans les rares dépôts où le diff de l'arborescence entière n'est pas possible, comme avec le format d'objets SHA-256.
3428 3492
3429```text theme={null}3493```text theme={null}
3430Could not find merge-base with main. Pass the base branch explicitly (e.g. `/code-review ultra develop`) or make sure you're in a git repo with a main branch.3494Could not find merge-base with main. Pass the base branch explicitly (e.g. `/code-review ultra develop`) or make sure you're in a git repo with a main branch.
3431```3495```
3432 3496
3433L'indice après la première phrase dépend de ce que Claude Code a observé :3497L'indication après la première phrase dépend de ce que Claude Code a observé :
3434 3498
3435* **Vous n'avez pas transmis une branche de base** : Claude Code a comparé par rapport à la branche par défaut du référentiel et suggère de transmettre votre base explicitement, comme dans l'exemple ci-dessus3499* **Vous n'avez pas passé de branche de base** : Claude Code a comparé avec la branche par défaut du dépôt et suggère de passer explicitement votre branche de base, comme dans l'exemple ci-dessus
3436* **Vous avez transmis une branche de base qui était déjà dans votre clone** : l'indice lit ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``3500* **Vous avez passé une branche de base déjà présente dans votre clone** : l'indication est ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``
3437* **Vous avez transmis une branche de base qui n'était pas dans votre clone** : Claude Code l'a récupérée à partir de origin avant de comparer. L'indice lit ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; lorsque Claude Code ne peut pas dire si votre clone est superficiel, il suggère `git fetch --unshallow origin` à la place. Avant la v2.1.221, l'indice suggérait `git fetch --unshallow origin` pour chaque branche de base récupérée, et sur un clone complet cette commande échoue avec `fatal: --unshallow on a complete repository does not make sense`.3501* **Vous avez passé une branche de base absente de votre clone** : Claude Code l'a récupérée depuis origin avant la comparaison. L'indication est ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)`` ; lorsque Claude Code ne peut pas déterminer si votre clone est superficiel, il suggère `git fetch --unshallow origin` à la place. Avant la v2.1.221, l'indication suggérait `git fetch --unshallow origin` pour chaque branche de base récupérée, et sur un clone complet cette commande échoue avec `fatal: --unshallow on a complete repository does not make sense`.
3438 3502
3439**Que faire :**3503**Que faire :**
3440 3504
3441* Si une autre branche est votre vraie base, transmettez-la explicitement : `/code-review ultra <branch>`3505* Si une autre branche est votre véritable branche de base, passez-la explicitement : `/code-review ultra <branch>`
3442* Si votre clone pourrait ne pas avoir l'historique complet, exécutez `git fetch --unshallow origin` et réexécutez l'examen3506* Si votre clone n'a peut-être pas l'historique complet, exécutez `git fetch --unshallow origin` et relancez la revue
3443 3507
3444<h3 id="your-checkout-has-no-branches">3508<h3 id="your-checkout-has-no-branches">
3445 Votre checkout n'a pas de branches3509 Votre checkout n'a aucune branche
3446</h3>3510</h3>
3447 3511
3448Un checkout peut avoir des commits mais pas de branches : si vous exécutez `git init` suivi de `git fetch <url>` et `git checkout FETCH_HEAD`, vous obtenez un HEAD détaché sans références. Claude Code empaquette votre référentiel en tant que bundle git pour le télécharger pour un [ultrareview](/docs/fr/ultrareview), et il ne peut pas empaqueter un référentiel qui n'a pas de branches ou d'autres références, donc `/code-review ultra` et la sous-commande `claude ultrareview` refusent l'examen avant le démarrage de la session cloud.3512Un checkout peut avoir des commits mais aucune branche : si vous exécutez `git init` suivi de `git fetch <url>` et `git checkout FETCH_HEAD`, vous obtenez un HEAD détaché sans aucune référence. Claude Code empaquette votre dépôt sous forme de bundle git pour le téléverser en vue d'un [ultrareview](/docs/fr/ultrareview), et il ne peut pas empaqueter un dépôt qui n'a ni branches ni autres références, donc `/code-review ultra` et la sous-commande `claude ultrareview` refusent la revue avant le démarrage de la session cloud.
3449 3513
3450```text theme={null}3514```text theme={null}
3451Your checkout has no branches (detached HEAD only), which cloud review can't bundle. Create one first — `git checkout -b <name>` — then rerun /code-review ultra.3515Your checkout has no branches (detached HEAD only), which cloud review can't bundle. Create one first — `git checkout -b <name>` — then rerun /code-review ultra.
3452```3516```
3453 3517
3454Avant la v2.1.221, Claude Code tentait d'examiner chaque fichier suivi dans ce checkout, et le téléchargement échouait.3518Avant la v2.1.221, Claude Code tentait de faire la revue de chaque fichier suivi dans ce checkout, et le téléversement échouait.
3455 3519
3456**Que faire :**3520**Que faire :**
3457 3521
3458* Créez une branche à votre commit courant avec `git checkout -b <name>`, puis réexécutez l'examen3522* Créez une branche sur votre commit actuel avec `git checkout -b <name>`, puis relancez la revue
3459 3523
3460<h3 id="no-github-account-is-connected-to-your-claude-account">3524<h3 id="no-github-account-is-connected-to-your-claude-account">
3461 Aucun compte GitHub n'est connecté à votre compte Claude3525 Aucun compte GitHub n'est connecté à votre compte Claude
3462</h3>3526</h3>
3463 3527
3464Vous avez exécuté `/code-review ultra <PR#>` ou `claude ultrareview <PR#>`, et avant de créer la session cloud Claude Code demande au serveur si [le compte GitHub connecté à votre compte Claude](/docs/fr/ultrareview#review-a-pull-request) peut atteindre le référentiel de la demande de tirage. Aucun compte n'est connecté, ou la connexion a expiré, donc le clone cloud échouerait et Claude Code refuse le lancement. Claude Code ne dépense pas une exécution gratuite ou ne facture pas les crédits d'utilisation pour un lancement refusé.3528Vous avez exécuté `/code-review ultra <PR#>` ou `claude ultrareview <PR#>`, et avant de créer la session cloud, Claude Code demande au serveur si [le compte GitHub connecté à votre compte Claude](/docs/fr/ultrareview#review-a-pull-request) peut accéder au dépôt de la PR. Aucun compte n'est connecté, ou la connexion a expiré, donc le clonage dans le cloud échouerait et Claude Code refuse le lancement. Claude Code ne consomme pas d'exécution gratuite et ne facture pas de crédits d'utilisation pour un lancement refusé.
3465 3529
3466```text theme={null}3530```text theme={null}
3467Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/connect-github — then re-run /code-review ultra 1234 (allow a minute after connecting).3531Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/connect-github — then re-run /code-review ultra 1234 (allow a minute after connecting).
3468```3532```
3469 3533
3470Lorsque [`/web-setup`](/docs/fr/web-quickstart#connect-from-your-terminal) n'est pas disponible dans votre session, le message nomme uniquement le lien claude.ai.3534Lorsque [`/web-setup`](/docs/fr/web-quickstart#connect-from-your-terminal) n'est pas disponible dans votre session, le message ne nomme que le lien claude.ai.
3471 3535
3472**Que faire :**3536**Que faire :**
3473 3537
3474* Exécutez `/web-setup` pour connecter votre connexion GitHub CLI à votre compte Claude, ou connectez un compte à [claude.ai/connect-github](https://claude.ai/connect-github)3538* Exécutez `/web-setup` pour connecter votre connexion GitHub CLI à votre compte Claude, ou connectez un compte sur [claude.ai/connect-github](https://claude.ai/connect-github)
3475* Réexécutez l'examen une minute après la connexion3539* Relancez la revue une minute après la connexion
3476 3540
3477Avant la v2.1.248, Claude Code ne vérifiait pas cela avant le lancement.3541Avant la v2.1.248, Claude Code ne vérifiait pas cela avant le lancement.
3478 3542
3479<h3 id="your-connected-github-account-cant-see-the-repository">3543<h3 id="your-connected-github-account-cant-see-the-repository">
3480 Votre compte GitHub connecté ne peut pas voir le référentiel3544 Votre compte GitHub connecté ne peut pas voir le dépôt
3481</h3>3545</h3>
3482 3546
3483Vous avez exécuté `/code-review ultra <PR#>` ou `claude ultrareview <PR#>`, et [le compte GitHub connecté à votre compte Claude](/docs/fr/ultrareview#review-a-pull-request) ne peut pas lire le référentiel de la demande de tirage, donc le clone cloud échouerait et Claude Code refuse le lancement. Claude Code ne dépense pas une exécution gratuite ou ne facture pas les crédits d'utilisation pour un lancement refusé.3547Vous avez exécuté `/code-review ultra <PR#>` ou `claude ultrareview <PR#>`, et [le compte GitHub connecté à votre compte Claude](/docs/fr/ultrareview#review-a-pull-request) ne peut pas lire le dépôt de la PR, donc le clonage dans le cloud échouerait et Claude Code refuse le lancement. Claude Code ne consomme pas d'exécution gratuite et ne facture pas de crédits d'utilisation pour un lancement refusé.
3484 3548
3485```text theme={null}3549```text theme={null}
3486Your connected GitHub account can't see <owner>/<repo> — usually the Claude GitHub app isn't installed on <owner> or wasn't granted this repo (web-connected accounts need it for private repos), or a different GitHub account is connected. To fix: run /web-setup to reuse your GitHub CLI login, or install the app at https://github.com/apps/claude/installations/new — then re-run /code-review ultra 1234.3550Your connected GitHub account can't see <owner>/<repo> — usually the Claude GitHub app isn't installed on <owner> or wasn't granted this repo (web-connected accounts need it for private repos), or a different GitHub account is connected. To fix: run /web-setup to reuse your GitHub CLI login, or install the app at https://github.com/apps/claude/installations/new — then re-run /code-review ultra 1234.
3487```3551```
3488 3552
3489Lorsque [`/web-setup`](/docs/fr/web-quickstart#connect-from-your-terminal) n'est pas disponible dans votre session, le message nomme uniquement l'installation de l'application.3553Lorsque [`/web-setup`](/docs/fr/web-quickstart#connect-from-your-terminal) n'est pas disponible dans votre session, le message ne nomme que l'installation de l'application.
3490 3554
3491**Que faire :**3555**Que faire :**
3492 3556
3493* Si votre CLI `gh` local peut lire le référentiel, exécutez `/web-setup` pour connecter cette connexion à votre compte Claude3557* Si votre CLI `gh` locale peut lire le dépôt, exécutez `/web-setup` pour connecter cette connexion à votre compte Claude
3494* Réexécutez l'examen après la modification3558* Relancez la revue après la modification
3495 3559
3496Avant la v2.1.248, Claude Code ne vérifiait pas cela avant le lancement.3560Avant la v2.1.248, Claude Code ne vérifiait pas cela avant le lancement.
3497 3561
3498<h3 id="the-github-app-preflight-failed-transiently">3562<h3 id="the-github-app-preflight-failed-transiently">
3499 La vérification préalable de l'application GitHub a échoué de manière transitoire3563 La vérification préalable de la GitHub App a échoué de manière transitoire
3500</h3>3564</h3>
3501 3565
3502Vous avez démarré une [session cloud](/docs/fr/claude-code-on-the-web) à partir d'un référentiel local, et deux étapes ont échoué ensemble. Claude Code n'a pas pu construire ou télécharger le bundle de votre référentiel. Avant le téléchargement, il a vérifié si le service cloud peut cloner le référentiel à partir de GitHub, et plutôt qu'une réponse définitive, cette vérification s'est terminée par une erreur qu'une nouvelle tentative pourrait clarifier, telle qu'une erreur réseau, un délai d'expiration ou une erreur serveur temporaire. Le message complet commence par ce qui a arrêté le bundle, par exemple `Could not upload repo bundle (<error>)`, et se termine par la phrase de vérification préalable :3566Vous avez démarré une [session cloud](/docs/fr/claude-code-on-the-web) depuis un dépôt local, et deux étapes ont échoué ensemble. Claude Code n'a pas pu construire ou téléverser le bundle de votre dépôt. Avant le téléversement, il a vérifié si le service cloud peut cloner le dépôt depuis GitHub, et au lieu d'une réponse définitive, cette vérification s'est terminée par une erreur qu'une nouvelle tentative pourrait résoudre, comme une erreur réseau, un délai d'expiration ou une erreur serveur temporaire. Le message complet commence par ce qui a empêché le bundle, par exemple `Could not upload repo bundle (<error>)`, et se termine par la phrase concernant la vérification préalable :
3503 3567
3504```text theme={null}3568```text theme={null}
3505Could not upload repo bundle (<error>). The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead3569Could not upload repo bundle (<error>). The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead
3507 3571
3508**Que faire :**3572**Que faire :**
3509 3573
3510* Réexécutez la commande après un moment. Lorsque la vérification GitHub réussit, Claude Code peut démarrer la session à partir d'un clone GitHub, donc le téléchargement échoué ne bloque plus le lancement3574* Relancez la commande après un moment. Lorsque la vérification GitHub réussit, Claude Code peut démarrer la session à partir d'un clone GitHub, donc l'échec du téléversement ne bloque plus le lancement
3511* Si les nouvelles tentatives continuent d'échouer, le début du message nomme ce qui a arrêté le téléchargement. Lorsque cette cause est quelque chose que vous pouvez corriger, corrigez-la afin que la session puisse démarrer à partir de votre référentiel local à la place3575* Si les nouvelles tentatives continuent d'échouer, le début du message nomme ce qui a empêché le téléversement. Lorsque cette cause est quelque chose que vous pouvez corriger, corrigez-la afin que la session puisse démarrer à partir de votre dépôt local
3512 3576
3513Avant la v2.1.251, Claude Code terminait le message avec `Please set up GitHub on https://claude.ai/code` même lorsque la vérification GitHub a échoué uniquement de manière transitoire, et les conseils de configuration ne peuvent pas clarifier un échec transitoire.3577Avant la v2.1.251, Claude Code terminait le message par `Please set up GitHub on https://claude.ai/code` même lorsque la vérification GitHub n'avait échoué que de manière transitoire, et un conseil de configuration ne peut pas résoudre un échec transitoire.
3514 3578
3515<h3 id="the-repository-upload-cant-follow-a-git-setting">3579<h3 id="the-repository-upload-cant-follow-a-git-setting">
3516 Le téléchargement du référentiel ne peut pas suivre un paramètre git3580 Le téléversement du dépôt ne peut pas suivre un paramètre git
3517</h3>3581</h3>
3518 3582
3519Vous avez démarré une [session cloud qui télécharge votre référentiel local](/docs/fr/claude-code-on-the-web#send-local-repositories-without-github), ou un [ultrareview](/docs/fr/ultrareview) d'une branche, et le téléchargement ne peut pas suivre l'un des paramètres git qui décident quelles règles d'attribut s'appliquent à vos fichiers. Si le téléchargement s'était poursuivi et avait manqué une règle, un fichier que git transforme avant de le stocker, tel qu'un fichier qu'un filtre clean chiffre, pourrait atteindre le cloud tel qu'il est sur le disque. Claude Code refuse le téléchargement à la place, et rien n'est téléchargé :3583Vous avez démarré une [session cloud qui téléverse votre dépôt local](/docs/fr/claude-code-on-the-web#send-local-repositories-without-github), ou un [ultrareview](/docs/fr/ultrareview) d'une branche, et le téléversement ne peut pas suivre l'un des paramètres git qui déterminent quelles règles d'attributs s'appliquent à vos fichiers. Si le téléversement se poursuivait en manquant une règle, un fichier que git transforme avant de le stocker, comme un fichier chiffré par un filtre clean, pourrait atteindre le cloud tel qu'il est sur le disque. Claude Code refuse donc le téléversement, et rien n'est téléversé :
3520 3584
3521```text theme={null}3585```text theme={null}
3522Not uploading this working tree: core.ignoreCase (which decides whether .gitattributes patterns match file names regardless of letter case) is set in <file>, and the upload cannot follow that setting, so a file git would change before storing it (to encrypt it, for example) could be uploaded as it is on disk. Move the core.ignoreCase line into this repository's .git/config or directly into your ~/.gitconfig, then retry.3586Not uploading this working tree: core.ignoreCase (which decides whether .gitattributes patterns match file names regardless of letter case) is set in <file>, and the upload cannot follow that setting, so a file git would change before storing it (to encrypt it, for example) could be uploaded as it is on disk. Move the core.ignoreCase line into this repository’s .git/config or directly into your ~/.gitconfig, then retry.
3523```3587```
3524 3588
3525Le message nomme le paramètre et où il est défini, et se termine par la correction pour le cas que vous avez rencontré. Le même refus apparaît pour `core.attributesFile` et `attr.tree`, chacun avec sa propre correction.3589Le message nomme le paramètre et l'endroit où il est défini, et se termine par la solution correspondant à votre cas. Le même refus apparaît pour `core.attributesFile` et `attr.tree`, chacun avec sa propre solution.
3526 3590
3527Le message peut nommer un fichier de configuration que votre configuration git tire via une directive `include` ou `includeIf`, même lorsque la condition de cette directive ne s'applique pas à ce référentiel.3591Le message peut nommer un fichier de configuration que votre configuration git inclut via une directive `include` ou `includeIf`, même lorsque la condition de cette directive ne s'applique pas à ce dépôt.
3528 3592
3529**Que faire :**3593**Que faire :**
3530 3594
3531* Appliquez la correction dans la phrase finale du message3595* Appliquez la solution indiquée dans la dernière phrase du message
3532 3596
3533<h3 id="github-isnt-connected-to-your-claude-account">3597<h3 id="github-isnt-connected-to-your-claude-account">
3534 GitHub n'est pas connecté à votre compte Claude3598 GitHub n'est pas connecté à votre compte Claude
3535</h3>3599</h3>
3536 3600
3537Vous avez démarré une [session cloud](/docs/fr/claude-code-on-the-web) à partir de votre référentiel local, par exemple avec `/autofix-pr`. Aucun compte GitHub n'est connecté à votre compte Claude, ou la connexion a expiré, donc Claude Code refuse le lancement :3601Vous avez démarré une [session cloud](/docs/fr/claude-code-on-the-web) depuis votre dépôt local, par exemple avec `/autofix-pr`. Aucun compte GitHub n'est connecté à votre compte Claude, ou la connexion a expiré, donc Claude Code refuse le lancement :
3538 3602
3539```text theme={null}3603```text theme={null}
3540GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud. Run /web-setup to connect with your GitHub CLI login, or connect on the web at https://claude.ai/connect-github3604GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud. Run /web-setup to connect with your GitHub CLI login, or connect on the web at https://claude.ai/connect-github
3541```3605```
3542 3606
3543Lorsque vous créez une routine avec [`/schedule`](/docs/fr/routines), le même message apparaît comme une note de configuration qui nomme le référentiel ; la note ne bloque pas la création de la routine.3607Lorsque vous créez une routine avec [`/schedule`](/docs/fr/routines), le même message apparaît sous forme de note de configuration qui nomme le dépôt ; la note n'empêche pas la création de la routine.
3544 3608
3545**Que faire :**3609**Que faire :**
3546 3610
3547* Exécutez `/web-setup` pour connecter votre connexion GitHub CLI à votre compte Claude, ou connectez un compte à [claude.ai/connect-github](https://claude.ai/connect-github). Voir [Options d'authentification GitHub](/docs/fr/claude-code-on-the-web#github-authentication-options) pour voir comment les deux diffèrent.3611* Exécutez `/web-setup` pour connecter votre connexion GitHub CLI à votre compte Claude, ou connectez un compte sur [claude.ai/connect-github](https://claude.ai/connect-github). Consultez [Options d'authentification GitHub](/docs/fr/claude-code-on-the-web#github-authentication-options) pour connaître les différences entre les deux.
3548* Réexécutez la commande une minute après la connexion3612* Relancez la commande une minute après la connexion
3549 3613
3550Avant la v2.1.268, Claude Code signalait ceci comme un échec temporaire de la vérification de l'application GitHub Claude et suggérait de réessayer ou d'installer l'application ; aucun des deux ne connecte un compte GitHub.3614Avant la v2.1.268, Claude Code signalait cette situation comme un échec temporaire de la vérification de la Claude GitHub App et suggérait de réessayer ou d'installer l'application ; aucune de ces actions ne connecte de compte GitHub.
3551 3615
3552<h3 id="single-sign-on-authorization-needed">3616<h3 id="single-sign-on-authorization-needed">
3553 Autorisation d'authentification unique requise3617 Autorisation d'authentification unique requise
3554</h3>3618</h3>
3555 3619
3556Vous avez exécuté [`/install-github-app`](/docs/fr/github-actions#quick-setup) et choisi un référentiel dont l'organisation applique l'authentification unique SAML. Avant la configuration, Claude Code vérifie votre accès au référentiel avec l'interface de ligne de commande GitHub, et GitHub a refusé cette vérification car votre jeton `gh` n'est pas encore autorisé pour l'organisation. L'assistant affiche l'avertissement avec les étapes à suivre :3620Vous avez exécuté [`/install-github-app`](/docs/fr/github-actions#quick-setup) et choisi un dépôt dont l'organisation impose l'authentification unique SAML. Avant la configuration, Claude Code vérifie votre accès au dépôt avec la GitHub CLI, et GitHub a refusé cette vérification parce que votre jeton `gh` n'est pas encore autorisé pour l'organisation. L'assistant affiche l'avertissement avec les étapes d'autorisation :
3557 3621
3558```text theme={null}3622```text theme={null}
3559Single sign-on authorization needed3623Single sign-on authorization needed
3562 3626
3563**Que faire :**3627**Que faire :**
3564 3628
3565* Réautorisez votre connexion GitHub CLI avec les portées `repo` et `workflow` en exécutant `gh auth refresh -h github.com -s repo,workflow`, et autorisez l'organisation lorsque GitHub vous invite à l'authentification unique3629* Réautorisez votre connexion GitHub CLI avec les scopes `repo` et `workflow` en exécutant `gh auth refresh -h github.com -s repo,workflow`, et autorisez l'organisation lorsque GitHub vous le demande pour l'authentification unique
3566* Si vous vous authentifiez avec un jeton d'accès personnel dans `GH_TOKEN`, ouvrez [github.com/settings/tokens](https://github.com/settings/tokens), sélectionnez **Configure SSO** sur le jeton, et autorisez l'organisation3630* Si vous vous authentifiez avec un jeton d'accès personnel dans `GH_TOKEN`, ouvrez [github.com/settings/tokens](https://github.com/settings/tokens), sélectionnez **Configure SSO** sur le jeton et autorisez l'organisation
3567* Exécutez `/install-github-app` à nouveau3631* Exécutez à nouveau `/install-github-app`
3568 3632
3569Avant la v2.1.273, Claude Code affichait l'avertissement `Admin permissions required` pour cette condition à la place.3633Avant la v2.1.273, Claude Code affichait l'avertissement `Admin permissions required` pour cette situation à la place.
3570 3634
3571<h3 id="failed-to-resume-the-conversation">3635<h3 id="failed-to-resume-the-conversation">
3572 Impossible de reprendre la conversation3636 Échec de la reprise de la conversation
3573</h3>3637</h3>
3574 3638
3575Claude Code n'a pas pu lire ou traiter la transcription enregistrée pour la session que vous avez sélectionnée dans le [sélecteur `claude --resume`](/docs/fr/sessions#use-the-session-picker), il termine donc le processus plutôt que de continuer dans un état partiellement chargé. Le message inclut la commande pour réessayer :3639Claude Code n'a pas pu lire ou traiter la transcription enregistrée de la session que vous avez sélectionnée dans le [sélecteur `claude --resume`](/docs/fr/sessions#use-the-session-picker), il met donc fin au processus plutôt que de continuer dans un état partiellement chargé. Le message inclut la commande pour réessayer :
3576 3640
3577```text theme={null}3641```text theme={null}
3578Failed to resume the conversation.3642Failed to resume the conversation.
3579Run claude --resume <session-id> to retry, or claude to start a new session.3643Run claude --resume <session-id> to retry, or claude to start a new session.
3580```3644```
3581 3645
3582Claude Code se termine avec le code 1 après avoir affiché le message. Le sélecteur `/resume` à l'intérieur d'une session en cours signale `Failed to resume conversation` dans la conversation à la place, et votre session actuelle continue de s'exécuter. Avant la v2.1.216, une reprise échouée du sélecteur `claude --resume` restait sur le spinner `Resuming conversation…` indéfiniment au lieu d'afficher ce message.3646Claude Code se termine avec le code 1 après avoir affiché le message. Le sélecteur `/resume` au sein d'une session en cours signale plutôt `Failed to resume conversation` dans la conversation, et votre session actuelle continue de s'exécuter. Avant la v2.1.216, une reprise échouée depuis le sélecteur `claude --resume` restait indéfiniment sur l'indicateur `Resuming conversation…` au lieu d'afficher ce message.
3583 3647
3584**Que faire :**3648**Que faire :**
3585 3649
3586* Exécutez `claude --resume <session-id>` avec l'ID de session du message pour réessayer3650* Exécutez `claude --resume <session-id>` avec l'ID de session du message pour réessayer
3587* Si chaque nouvelle tentative échoue de la même manière, exécutez `claude update` et reprenez à nouveau. Les versions antérieures à v2.1.275 échouent la reprise lorsque la transcription enregistrée contient une entrée qu'elles ne peuvent pas lire.3651* Sur une version antérieure à la v2.1.285, si la nouvelle tentative échoue de la même façon, exécutez `claude update` et reprenez à nouveau la session. Ces versions font échouer la reprise lorsque la transcription enregistrée contient une entrée qu'elles ne savent pas lire.
3588* Si la nouvelle tentative échoue à nouveau, exécutez `claude` pour démarrer une nouvelle session3652* Si la nouvelle tentative échoue encore, exécutez `claude` pour démarrer une nouvelle session
3589 3653
3590<h3 id="no-conversation-found-with-the-session-id">3654<h3 id="no-conversation-found-with-the-session-id">
3591 Aucune conversation trouvée avec l'ID de session3655 Aucune conversation trouvée avec l'ID de session
3592</h3>3656</h3>
3593 3657
3594Vous avez transmis un ID de session à `claude --resume <session-id>` et aucune transcription enregistrée ne l'a appairé :3658Vous avez transmis un ID de session à `claude --resume <session-id>` et aucune transcription enregistrée ne lui correspondait :
3595 3659
3596```text theme={null}3660```text theme={null}
3597No conversation found with session ID: <session-id>3661No conversation found with session ID: <session-id>
3598```3662```
3599 3663
3600Claude Code se termine avec le code 1 après avoir affiché le message. Claude Code [recherche d'abord le projet courant, puis chaque autre projet sur cette machine](/docs/fr/sessions#resume-a-session) pour l'ID. Avant la v2.1.223, la recherche s'arrêtait au répertoire du projet courant et ses worktrees git, donc reprendre à partir du répertoire où la session a travaillé en dernier.3664Claude Code se termine avec le code 1 après avoir affiché le message. Claude Code [recherche l'ID d'abord dans le projet actuel, puis dans tous les autres projets de cette machine](/docs/fr/sessions#resume-a-session). Avant la v2.1.223, la recherche s'arrêtait au répertoire du projet actuel et à ses worktrees git ; reprenez donc la session depuis le répertoire dans lequel elle a travaillé en dernier.
3601 3665
3602Les causes courantes :3666Causes courantes :
3603 3667
3604* **ID mal saisi** : pour une exécution non interactive, l'ID est le champ `session_id` de la sortie [`--output-format json`](/docs/fr/headless#get-structured-output)3668* **ID mal saisi** : pour une exécution non interactive, l'ID correspond au champ `session_id` de la [sortie `--output-format json`](/docs/fr/headless#get-structured-output)
3605* **Transcription supprimée** : Claude Code supprime les transcriptions après la [période de rétention](/docs/fr/sessions#where-transcripts-are-stored), 30 jours par défaut, suivant les [règles de balayage de rétention](/docs/fr/claude-directory#cleaned-up-automatically)3669* **Transcription supprimée** : Claude Code supprime les transcriptions après la [période de rétention](/docs/fr/sessions#where-transcripts-are-stored), 30 jours par défaut, selon les [règles de nettoyage de rétention](/docs/fr/claude-directory#cleaned-up-automatically)
3606* **Machine différente** : Claude Code stocke les transcriptions localement, donc reprenez la session sur la machine où elle s'est exécutée3670* **Machine différente** : Claude Code stocke les transcriptions localement ; reprenez donc la session sur la machine où elle s'est exécutée
3607* **Copies en double** : si vous avez copié un répertoire de projet sous `~/.claude/projects` afin que deux transcriptions portent le même ID, Claude Code signale ce message plutôt que de reprendre une copie arbitrairement3671* **Copies en double** : si vous avez copié un répertoire de projet sous `~/.claude/projects` de sorte que deux transcriptions portent le même ID, Claude Code affiche ce message plutôt que de reprendre arbitrairement l'une des copies
3608 3672
3609**Que faire :**3673**Que faire :**
3610 3674
3611* 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 session3675* Pour une session interactive, ouvrez le [sélecteur de sessions](/docs/fr/sessions#use-the-session-picker) avec `claude --resume` et appuyez sur `Ctrl+A` pour l'étendre à tous les projets de cette machine, puis sélectionnez la session
3612* 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é3676* Les sessions créées avec `claude -p` ou l'[Agent SDK](/docs/fr/agent-sdk/overview) n'apparaissent pas dans le sélecteur ; vérifiez donc à nouveau l'ID par rapport au `session_id` affiché par votre exécution d'origine
3613 3677
3614<h3 id="windows-reported-an-error-ebadf">3678<h3 id="windows-reported-an-error-ebadf">
3615 Windows a signalé une erreur (EBADF) lorsque Claude Code a lu le fichier de transcription de cette session3679 Windows a signalé une erreur (EBADF) lorsque Claude Code a lu le fichier de transcription de cette session
3616</h3>3680</h3>
3617 3681
3618Vous 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 :3682Vous avez repris une session sous Windows, son [fichier de transcription](/docs/fr/sessions#where-transcripts-are-stored) enregistré s'est ouvert normalement, puis sa lecture a échoué avec l'erreur système EBADF. L'erreur système n'indique pas pourquoi la lecture a échoué ; le message suggère donc des causes probables et des solutions à essayer :
3619 3683
3620```text theme={null}3684```text theme={null}
3621Windows 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.3685Windows 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.
3622```3686```
3623 3687
3624Le 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.3688Le message suit la ligne d'échec propre à la commande, comme `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'avoir affiché. Après `/resume` au sein d'une session, votre session actuelle continue de s'exécuter.
3625 3689
3626**Que faire :**3690**Que faire :**
3627 3691
3628* 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) nomme3692* Excluez le dossier contenant 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 terminaux. Les transcriptions se trouvent par défaut sous `%USERPROFILE%\.claude\projects`, ou sous le répertoire désigné par [`CLAUDE_CONFIG_DIR`](/docs/fr/env-vars)
3629* Si vous ne pouvez pas ajouter une exclusion, ajoutez Claude Code aux applications autorisées de ce logiciel à la place3693* Si vous ne pouvez pas ajouter d'exclusion, ajoutez plutôt Claude Code aux applications autorisées de ce logiciel
3630* Reprenez la session à nouveau3694* Reprenez à nouveau la session
3631 3695
3632Avant 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`.3696Avant la v2.1.282, l'échec ne s'accompagnait d'aucune explication : `claude --resume <session-id>` se terminait sur `Failed to resume session <session-id>`, et une exécution `-p` n'affichait que le texte de l'erreur système, comme `Failed to resume session: EBADF: bad file descriptor, read`.
3633 3697
3634<h3 id="cannot-switch-renderers-in-this-session">3698<h3 id="cannot-switch-renderers-in-this-session">
3635 Impossible de changer de renderers dans cette session3699 Impossible de changer de moteur de rendu dans cette session
3636</h3>3700</h3>
3637 3701
3638Lorsque vous changez de renderers, Claude Code redémarre son processus. Vous avez exécuté [`/tui`](/docs/fr/fullscreen#enable-fullscreen-rendering) dans une session que Claude Code refuse de redémarrer, elle ne change donc pas et ne sauvegarde rien. Le message que vous voyez vous indique la cause :3702Lorsque vous changez de moteur de rendu, Claude Code redémarre son processus. Vous avez exécuté [`/tui`](/docs/fr/fullscreen#enable-fullscreen-rendering) dans une session que Claude Code refuse de redémarrer ; il ne change donc pas de moteur et n'enregistre rien. Le message que vous voyez vous indique la cause :
3639 3703
3640* `Cannot switch renderers while work is running in the background` : vous avez du travail en arrière-plan en cours d'exécution qu'un redémarrage abandonnerait, tel qu'un shell en arrière-plan ou un sous-agent. Attendez que le travail se termine ou arrêtez-le avec [`/tasks`](/docs/fr/commands), puis exécutez `/tui fullscreen` ou `/tui default` à nouveau3704* `Cannot switch renderers while work is running in the background` : vous avez des tâches en arrière-plan qu'un redémarrage abandonnerait, comme un shell en arrière-plan ou un sous-agent. Attendez la fin de ces tâches ou arrêtez-les avec [`/tasks`](/docs/fr/commands), puis exécutez à nouveau `/tui fullscreen` ou `/tui default`
3641* `Cannot switch renderers in this session` : la session a des restrictions que Claude Code ne peut pas transmettre au processus redémarré. Avant la v2.1.234, Claude Code redémarrait de toute façon et la session relancée s'exécutait sans elles3705* `Cannot switch renderers in this session` : la session comporte des restrictions que Claude Code ne peut pas transmettre au processus redémarré. Avant la v2.1.234, Claude Code redémarrait malgré tout et la session relancée s'exécutait sans elles
3642 3706
3643Dans le message des restrictions, la partie entre parenthèses nomme les restrictions que Claude Code a trouvées :3707Dans le message sur les restrictions, la partie entre parenthèses nomme les restrictions détectées par Claude Code :
3644 3708
3645```text theme={null}3709```text theme={null}
3646Cannot switch renderers in this session — it has restrictions a restart can't carry over (permission rules set for this session only). Nothing was changed. Running /tui fullscreen in a session started without them switches every later session too.3710Cannot switch renderers in this session — it has restrictions a restart can't carry over (permission rules set for this session only). Nothing was changed. Running /tui fullscreen in a session started without them switches every later session too.
3648 3712
3649Chaque raison que le message peut afficher entre parenthèses :3713Chaque raison que le message peut afficher entre parenthèses :
3650 3714
3651* `launch flags: a custom system prompt, a tool allowlist, or restricted settings` : vous avez démarré la session avec un indicateur que Claude Code ne transmet pas au processus redémarré. Ces indicateurs incluent [`--system-prompt`](/docs/fr/cli-reference#cli-flags), `--system-prompt-file`, `--append-system-prompt-file`, une liste d'autorisation [`--tools`](/docs/fr/cli-reference#cli-flags), [`--setting-sources`](/docs/fr/cli-reference#cli-flags), et [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags)3715* `launch flags: a custom system prompt, a tool allowlist, or restricted settings` : vous avez démarré la session avec un flag que Claude Code ne retransmet pas au processus redémarré. Ces flags incluent [`--system-prompt`](/docs/fr/cli-reference#cli-flags), `--system-prompt-file`, `--append-system-prompt-file`, une liste d'autorisation [`--tools`](/docs/fr/cli-reference#cli-flags), [`--setting-sources`](/docs/fr/cli-reference#cli-flags) et [`--permission-prompt-tool`](/docs/fr/cli-reference#cli-flags)
3652* `permission rules set for this session only` : une [mise à jour de permission](/docs/fr/hooks#permission-update-entries) d'un hook ou d'un appelant SDK a ajouté des règles de refus ou de demande avec la destination `session`. Les règles d'autorisation à portée de session ne déclenchent pas le refus. Un redémarrage les supprime, et Claude Code demande à nouveau à la place3716* `permission rules set for this session only` : une [mise à jour de permissions](/docs/fr/hooks#permission-update-entries) provenant d'un hook ou d'un appelant SDK a ajouté des règles de refus ou de demande avec la destination `session`. Les règles d'autorisation limitées à la session ne déclenchent pas le refus. Un redémarrage les supprime, et Claude Code vous demande à nouveau à la place
3653* `ask-before-running rules with no command-line form` : une mise à jour de permission d'un hook ou d'un appelant SDK a ajouté des règles de demande aux côtés des règles que Claude Code transmet comme `--allowed-tools` et `--disallowed-tools`. Aucun indicateur n'existe pour les règles de demande3717* `ask-before-running rules with no command-line form` : une mise à jour de permissions provenant d'un hook ou d'un appelant SDK a ajouté des règles de demande en plus des règles que Claude Code retransmet sous forme de `--allowed-tools` et `--disallowed-tools`. Aucun flag n'existe pour les règles de demande
3654* `permission rules a command line cannot carry intact` et `added directories a command line cannot carry intact` : une mise à jour de permission a ajouté une règle ou un chemin de répertoire en milieu de session. La ligne de commande du processus redémarré ne peut pas porter son texte comme la même valeur3718* `permission rules a command line cannot carry intact` et `added directories a command line cannot carry intact` : une mise à jour de permissions a ajouté une règle ou un chemin de répertoire en cours de session. La ligne de commande du processus redémarré ne peut pas transporter son texte sous la même valeur
3655 3719
3656**Que faire :**3720**Que faire :**
3657 3721
3658* Dans une session démarrée sans ces restrictions, exécutez `/tui fullscreen`, ou `/tui default` pour revenir. Claude Code sauvegarde le [paramètre `tui`](/docs/fr/settings-reference#tui) là-bas3722* Dans une session démarrée sans ces restrictions, exécutez `/tui fullscreen`, ou `/tui default` pour revenir en arrière. Claude Code y enregistre le [paramètre `tui`](/docs/fr/settings-reference#tui)
3659 3723
3660<h3 id="couldnt-open-claude-desktop">3724<h3 id="couldnt-open-claude-desktop">
3661 Impossible d'ouvrir Claude Desktop3725 Impossible d'ouvrir Claude Desktop
3662</h3>3726</h3>
3663 3727
3664Vous avez exécuté [`/desktop`](/docs/fr/desktop#coming-from-the-cli) ou son alias `/app` dans une session, ou [`claude --desktop`](/docs/fr/cli-reference#cli-flags) dans votre shell, et la commande système que Claude Code utilise pour ouvrir Claude Desktop a échoué. Après `/desktop`, la session reste dans le terminal ; `claude --desktop` imprime le message sans le préfixe `Error:` et se termine avec le statut 1.3728Vous avez exécuté [`/desktop`](/docs/fr/desktop#coming-from-the-cli) ou son alias `/app` dans une session, ou [`claude --desktop`](/docs/fr/cli-reference#cli-flags) dans votre shell, et la commande système qu'utilise Claude Code pour ouvrir Claude Desktop a échoué. Après `/desktop`, la session reste dans le terminal ; `claude --desktop` affiche le message sans le préfixe `Error:` et se termine avec le statut 1.
3665 3729
3666Le texte entre parenthèses nomme la commande qui a échoué, avec son code de sortie et la première ligne de sa sortie d'erreur lorsqu'elle l'a produite. Sur macOS cette commande est `open`, comme dans cet exemple ; sur Windows c'est `rundll32` :3730Le texte entre parenthèses nomme la commande qui a échoué, avec son statut de sortie et la première ligne de sa sortie d'erreur lorsqu'elle les a produits. Sous macOS, cette commande est `open`, comme dans cet exemple ; sous Windows, il s'agit de `rundll32` :
3667 3731
3668```text theme={null}3732```text theme={null}
3669Error: Couldn't open Claude Desktop (`open` exited 1: LSOpenURLsWithRole() failed for the URL claude://resume?session=<session-id> with error -10814). Open Claude Desktop and try again.3733Error: Couldn't open Claude Desktop (`open` exited 1: LSOpenURLsWithRole() failed for the URL claude://resume?session=<session-id> with error -10814). Open Claude Desktop and try again.
3671 3735
3672**Que faire :**3736**Que faire :**
3673 3737
3674* Ouvrez Claude Desktop vous-même, puis exécutez `/desktop` ou `claude --desktop` à nouveau3738* Ouvrez vous-même Claude Desktop, puis exécutez à nouveau `/desktop` ou `claude --desktop`
3675* Pour lire la sortie d'erreur complète de la commande qui a échoué, activez la journalisation de débogage avec `/debug` et exécutez `/desktop` à nouveau, ou exécutez `claude --desktop --debug-file <path>`, puis vérifiez le journal de débogage3739* Pour lire la sortie d'erreur complète de la commande ayant échoué, activez la journalisation de débogage avec `/debug` et exécutez à nouveau `/desktop`, ou exécutez `claude --desktop --debug-file <path>`, puis consultez le log de débogage
3676 3740
3677Avant la v2.1.285, le message se terminait par `Open Claude Desktop and run /desktop again.` Avant la v2.1.275, c'était `Failed to open Claude Desktop. Please try opening it manually.` et ne disait pas ce qui a échoué.3741Avant la v2.1.285, le message se terminait par `Open Claude Desktop and run /desktop again.` Avant la v2.1.275, il s'agissait de `Failed to open Claude Desktop. Please try opening it manually.` et il n'indiquait pas ce qui avait échoué.
3678 3742
3679<h3 id="terminal-setup-left-your-zed-keymap-unchanged">3743<h3 id="terminal-setup-left-your-zed-keymap-unchanged">
3680 /terminal-setup a laissé votre keymap Zed inchangée3744 /terminal-setup a laissé votre keymap Zed inchangé
3681</h3>3745</h3>
3682 3746
3683Vous avez exécuté [`/terminal-setup`](/docs/fr/terminal-config#enter-multiline-prompts) dans Zed, et Claude Code n'a pas pu terminer la mise à jour de votre Zed `keymap.json`, il a donc laissé le fichier tel qu'il était.3747Vous avez exécuté [`/terminal-setup`](/docs/fr/terminal-config#enter-multiline-prompts) dans Zed, et Claude Code n'a pas pu terminer la mise à jour de votre fichier Zed `keymap.json` ; il a donc laissé le fichier tel quel.
3684 3748
3685Chaque message nomme le chemin vers votre keymap et se termine avec le bloc de liaison de clé à ajouter vous-même :3749Chaque message nomme le chemin de votre keymap et se termine par le bloc de raccourci clavier à ajouter vous-même :
3686 3750
3687```text theme={null}3751```text theme={null}
3688Couldn't update your Zed keymap, so it was left unchanged.3752Couldn't update your Zed keymap, so it was left unchanged.
3692 3756
3693La première ligne du message nomme la cause :3757La première ligne du message nomme la cause :
3694 3758
3695* `Couldn't read your Zed keymap, so it was left unchanged.` : Claude Code n'a pas pu lire le fichier, par exemple en raison de permissions de fichier3759* `Couldn't read your Zed keymap, so it was left unchanged.` : Claude Code n'a pas pu lire le fichier, par exemple en raison des permissions du fichier
3696* `Your Zed keymap isn't a readable list of keybindings, so it was left unchanged.` : le fichier s'est bien lu mais ne s'analyse pas comme un tableau de blocs de liaison de clé, même avec les commentaires `//` et les virgules finales autorisés3760* `Your Zed keymap isn't a readable list of keybindings, so it was left unchanged.` : le fichier a été lu correctement mais ne s'analyse pas comme un tableau de blocs de raccourcis clavier, même en autorisant les commentaires `//` et les virgules finales
3697* `Couldn't back up your Zed keymap; not modifying it.` : Claude Code n'a pas pu copier le fichier vers une sauvegarde `.bak` à côté, il n'a donc rien changé3761* `Couldn't back up your Zed keymap; not modifying it.` : Claude Code n'a pas pu copier le fichier vers une sauvegarde `.bak` à côté de celui-ci ; il n'a donc rien modifié
3698* `Couldn't update your Zed keymap, so it was left unchanged.` : le résultat fusionné n'a pas vérifié comme un keymap valide portant la liaison, donc Claude Code l'a rejeté au lieu de l'écrire. Un bloc de liaison de clé avec une clé dupliquée peut causer ceci3762* `Couldn't update your Zed keymap, so it was left unchanged.` : le résultat fusionné n'a pas été validé comme un keymap valide contenant le raccourci ; Claude Code l'a donc abandonné au lieu de l'écrire. Un bloc de raccourci clavier contenant une clé en double peut en être la cause
3699 3763
3700**Que faire :**3764**Que faire :**
3701 3765
3702* Copiez le bloc du message dans le tableau de niveau supérieur dans votre `keymap.json` au chemin que le message nomme3766* Copiez le bloc du message dans le tableau de premier niveau de votre `keymap.json`, au chemin indiqué par le message
3703* Pour `isn't a readable list of keybindings`, corrigez l'erreur de syntaxe, ou rendez la valeur de niveau supérieur du fichier un tableau, puis exécutez `/terminal-setup` à nouveau3767* Pour `isn't a readable list of keybindings`, corrigez l'erreur de syntaxe, ou faites de la valeur de premier niveau du fichier un tableau, puis exécutez à nouveau `/terminal-setup`
3704 3768
3705Avant la v2.1.247, `/terminal-setup` ne pouvait pas analyser un keymap Zed qui utilisait des commentaires `//` ou des virgules finales, et il remplaçait le fichier entier par uniquement sa propre liaison tout en signalant la liaison comme installée. Pour restaurer un keymap qu'une version antérieure a remplacé, utilisez le fichier de sauvegarde `.bak` décrit sous [Entrer des invites multiligne](/docs/fr/terminal-config#enter-multiline-prompts).3769Avant la v2.1.247, `/terminal-setup` ne pouvait pas analyser un keymap Zed utilisant des commentaires `//` ou des virgules finales, et il remplaçait l'intégralité du fichier par son seul raccourci tout en signalant ce raccourci comme installé. Pour restaurer un keymap remplacé par une version antérieure, utilisez le fichier de sauvegarde `.bak` décrit dans [Saisir des prompts multilignes](/docs/fr/terminal-config#enter-multiline-prompts).
3706 3770
3707<h3 id="skill-usage-reports-are-not-available-on-this-connection">3771<h3 id="skill-usage-reports-are-not-available-on-this-connection">
3708 Les rapports d'utilisation des skills ne sont pas disponibles sur cette connexion3772 Les rapports d'utilisation des skills ne sont pas disponibles sur cette connexion
3709</h3>3773</h3>
3710 3774
3711Vous avez exécuté [`/skill-doctor`](/docs/fr/skills#find-unused-skills) sur [Contrôle à distance](/docs/fr/remote-control), à partir de votre téléphone ou navigateur. Claude Code n'envoie pas le rapport d'utilisation des skills sur le contrôle à distance et répond avec ce message à la place :3775Vous avez exécuté [`/skill-doctor`](/docs/fr/skills#find-unused-skills) via [Remote Control](/docs/fr/remote-control), depuis votre téléphone ou votre navigateur. Claude Code n'envoie pas le rapport d'utilisation des skills via Remote Control et répond par ce message à la place :
3712 3776
3713```text theme={null}3777```text theme={null}
3714Skill usage reports are not available on this connection.3778Skill usage reports are not available on this connection.
3716 3780
3717**Que faire :**3781**Que faire :**
3718 3782
3719* Exécutez `/skill-doctor` dans le terminal sur la machine où la session s'exécute, ou exécutez `claude -p "/skill-doctor"` là-bas3783* Exécutez `/skill-doctor` dans le terminal de la machine sur laquelle la session s'exécute, ou exécutez-y `claude -p "/skill-doctor"`
3720 3784
3721<h3 id="custom-output-styles-cant-be-selected-over-remote-control">3785<h3 id="custom-output-styles-cant-be-selected-over-remote-control">
3722 Les styles de sortie personnalisés ne peuvent pas être sélectionnés sur le contrôle à distance3786 Les styles de sortie personnalisés ne peuvent pas être sélectionnés via Remote Control
3723</h3>3787</h3>
3724 3788
3725Vous avez exécuté [`/output-style`](/docs/fr/output-styles#change-your-output-style) à partir de l'application mobile ou web via [Contrôle à distance](/docs/fr/remote-control), ou la commande est arrivée dans un message relayé dans la session. Parce qu'un tel tour peut ne pas provenir du propriétaire du compte, Claude Code énumère et sélectionne uniquement les [styles intégrés](/docs/fr/output-styles#built-in-output-styles) sur celui-ci, et ajoute cet avis chaque fois que la commande énumère les styles ou ne reconnaît pas le nom que vous avez donné. Un nom de [style personnalisé](/docs/fr/output-styles#create-a-custom-output-style) reçoit la même réponse qu'un nom qui n'existe pas :3789Vous avez exécuté [`/output-style`](/docs/fr/output-styles#change-your-output-style) depuis l'application mobile ou le web via [Remote Control](/docs/fr/remote-control), ou la commande est arrivée dans un message relayé dans la session. Comme un tel tour peut ne pas provenir du titulaire du compte, Claude Code n'y liste et n'y sélectionne que les [styles intégrés](/docs/fr/output-styles#built-in-output-styles), et ajoute cet avertissement chaque fois que la commande liste les styles ou ne reconnaît pas le nom que vous avez indiqué. Un nom de [style personnalisé](/docs/fr/output-styles#create-a-custom-output-style) obtient la même réponse qu'un nom inexistant :
3726 3790
3727```text theme={null}3791```text theme={null}
3728Custom output styles can't be selected over Remote Control or from a relayed message. Select one in the session itself, or pick a built-in style here.3792Custom output styles can't be selected over Remote Control or from a relayed message. Select one in the session itself, or pick a built-in style here.
3731**Que faire :**3795**Que faire :**
3732 3796
3733* Choisissez un style intégré, par exemple `/output-style concise`3797* Choisissez un style intégré, par exemple `/output-style concise`
3734* Pour utiliser un style personnalisé, définissez [`outputStyle`](/docs/fr/settings-reference#outputstyle) dans le `.claude/settings.local.json` du projet, ou exécutez `/output-style <style>` au terminal propre de la session s'il en a un3798* Pour utiliser un style personnalisé, définissez [`outputStyle`](/docs/fr/settings-reference#outputstyle) dans le fichier `.claude/settings.local.json` du projet, ou exécutez `/output-style <style>` dans le terminal propre à la session, si elle en possède un
3735 3799
3736<h3 id="output-styles-are-saved-to-local-settings-which-this-session-doesnt-load">3800<h3 id="output-styles-are-saved-to-local-settings-which-this-session-doesnt-load">
3737 Les styles de sortie sont enregistrés dans les paramètres locaux que cette session ne charge pas3801 Les styles de sortie sont enregistrés dans les paramètres locaux, que cette session ne charge pas
3738</h3>3802</h3>
3739 3803
3740Vous avez essayé de changer les [styles de sortie](/docs/fr/output-styles) avec `/output-style <style>` ou `/config outputStyle=<style>` dans une session dont les sources de paramètres excluent `local`. Les exemples sont une session [Agent SDK](/docs/fr/agent-sdk/typescript) dont [`settingSources`](/docs/fr/agent-sdk/typescript#options) laisse de côté `"local"` et une session CLI démarrée avec une valeur [`--setting-sources`](/docs/fr/cli-reference#cli-flags) qui laisse de côté `local`. Les deux commandes enregistrent le style dans `.claude/settings.local.json`, un fichier qu'une telle session ne relit jamais, donc Claude Code refuse au lieu d'écrire un paramètre qui n'aurait aucun effet :3804Vous avez essayé de changer de [style de sortie](/docs/fr/output-styles) avec `/output-style <style>` ou `/config outputStyle=<style>` dans une session dont les sources de paramètres excluent `local`. Par exemple, une session [Agent SDK](/docs/fr/agent-sdk/typescript) dont le [`settingSources`](/docs/fr/agent-sdk/typescript#options) omet `"local"`, ou une session CLI démarrée avec une valeur [`--setting-sources`](/docs/fr/cli-reference#cli-flags) qui omet `local`. Les deux commandes enregistrent le style dans `.claude/settings.local.json`, un fichier qu'une telle session ne relit jamais ; Claude Code refuse donc au lieu d'écrire un paramètre qui n'aurait aucun effet :
3741 3805
3742```text theme={null}3806```text theme={null}
3743Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load, so the style can't be changed here.3807Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load, so the style can't be changed here.
3745 3809
3746**Que faire :**3810**Que faire :**
3747 3811
3748* Ajoutez `local` aux sources de paramètres de la session et changez à nouveau3812* Ajoutez `local` aux sources de paramètres de la session et changez à nouveau de style
3749* Définissez la clé [`outputStyle`](/docs/fr/settings-reference#outputstyle) dans un fichier de paramètres que la session charge, tel que `.claude/settings.json` dans le projet ou `~/.claude/settings.json`. Dans le SDK TypeScript, définissez `outputStyle` à l'intérieur de l'objet `settings` en ligne à la place ; voir [Activer un style de sortie](/docs/fr/agent-sdk/modifying-system-prompts#activate-an-output-style)3813* Définissez la clé [`outputStyle`](/docs/fr/settings-reference#outputstyle) dans un fichier de paramètres que la session charge, comme `.claude/settings.json` dans le projet ou `~/.claude/settings.json`. Dans le SDK TypeScript, définissez plutôt `outputStyle` dans l'objet `settings` en ligne ; consultez [Activer un style de sortie](/docs/fr/agent-sdk/modifying-system-prompts#activate-an-output-style)
3750 3814
3751<h2 id="plugin-errors">3815<h2 id="plugin-errors">
3752 Erreurs de plugin3816 Erreurs de plugin
4510**Ce qu'il faut faire :**4574**Ce qu'il faut faire :**
4511 4575
4512* Généralement rien : le message complet va à Claude comme une erreur d'outil, et Claude réessaye avec le chemin direct qu'il nomme. Pour une édition de fichier bloquée, la vue de conversation affiche uniquement une courte ligne `Error editing file` ; le message complet apparaît dans la vue de transcription, que vous ouvrez avec `Ctrl+O`. Une commande bloquée l'imprime dans sa sortie de commande.4576* Généralement rien : le message complet va à Claude comme une erreur d'outil, et Claude réessaye avec le chemin direct qu'il nomme. Pour une édition de fichier bloquée, la vue de conversation affiche uniquement une courte ligne `Error editing file` ; le message complet apparaît dans la vue de transcription, que vous ouvrez avec `Ctrl+O`. Une commande bloquée l'imprime dans sa sortie de commande.
4513* Si le bloc se répète sur le même fichier, le chemin passe probablement par un lien symbolique commis dont la cible contient `..`, tel que `docs/current -> ../README.md` ; demandez à Claude d'éditer le fichier cible par son chemin réel au lieu de passer par le lien4577* Si le blocage se répète sur le même fichier, le chemin passe probablement par un lien symbolique commité dont la cible contient `..`, tel que `docs/current -> ../README.md` ; demandez à Claude d'éditer le fichier cible par son chemin réel au lieu de passer par le lien
4514 4578
4515<h3 id="write-or-command-blocked-because-the-path-names-a-network-location">4579<h3 id="write-or-command-blocked-because-the-path-names-a-network-location">
4516 Écriture ou commande bloquée car le chemin nomme un emplacement réseau4580 Écriture ou commande bloquée car le chemin nomme un emplacement réseau
4517</h3>4581</h3>
4518 4582
4519Claude a adressé un fichier ou un répertoire de travail par un chemin qui nomme un lecteur qui n'est pas sur votre machine, un partage UNC tel que `\\server\share\file` ou un chemin d'automontage `/net`, tandis que le checkout de la session est sur un disque local. La même [garde d'isolation worktree](#write-or-command-blocked-because-the-path-cannot-be-safely-resolved) ne peut pas vérifier qu'un tel chemin reste en dehors du checkout partagé, de sorte qu'elle bloque l'opération. L'isolation de la session dans un worktree ne lève pas le bloc. Le message nomme la forme de chemin à utiliser à la place :4583Claude a adressé un fichier ou un répertoire de travail par un chemin qui nomme un lecteur qui n'est pas sur votre machine, un partage UNC tel que `\\server\share\file` ou un chemin d'automontage `/net`, tandis que le checkout de la session est sur un disque local. La même [garde d'isolation worktree](#write-or-command-blocked-because-the-path-cannot-be-safely-resolved) ne peut pas vérifier qu'un tel chemin reste en dehors du checkout partagé, de sorte qu'elle bloque l'opération. L'isolation de la session dans un worktree ne lève pas le blocage. Le message nomme la forme de chemin à utiliser à la place :
4520 4584
4521```text theme={null}4585```text theme={null}
4522This write was blocked because the path is network-shaped (a UNC share or /net automount spelling) while this session's checkout is local. Isolating cannot unblock it. If the file is genuinely inside the worktree /path/to/worktree, address it by its local, plainly-spelled path instead.4586This write was blocked because the path is network-shaped (a UNC share or /net automount spelling) while this session's checkout is local. Isolating cannot unblock it. If the file is genuinely inside the worktree /path/to/worktree, address it by its local, plainly-spelled path instead.
4559This session has no saved transcript — it was stopped before its first response finished. If it was backgrounded from another conversation, that one is still intact; `claude respawn <id>` starts this one fresh.4623This session has no saved transcript — it was stopped before its first response finished. If it was backgrounded from another conversation, that one is still intact; `claude respawn <id>` starts this one fresh.
4560```4624```
4561 4625
4562L'ouverture de la même ligne de session dans la [vue agent](/docs/fr/agent-view) affiche `Press enter again to restart this session fresh` sous la liste à la place, et une deuxième `Entrée` sur la ligne redémarre la session avec une conversation vide. Avant v2.1.212, l'ouverture de la session arrêtée affichait le message de refus sans aucun moyen de redémarrer à partir de la vue agent. Avant v2.1.211, l'ouverture de la session arrêtée démarrait silencieusement cette conversation vierge et pouvait réexécuter l'invite originale de la session.4626L'ouverture de la même ligne de session dans la [vue agent](/docs/fr/agent-view) affiche `Press enter again to restart this session fresh` sous la liste à la place, et une deuxième `Entrée` sur la ligne redémarre la session avec une conversation vide. Avant v2.1.212, l'ouverture de la ligne affichait le message de refus sans aucun moyen de redémarrer à partir de la vue agent. Avant v2.1.211, l'ouverture de la session arrêtée démarrait silencieusement cette conversation vierge et pouvait réexécuter le prompt original de la session.
4563 4627
4564**Ce qu'il faut faire :**4628**Ce qu'il faut faire :**
4565 4629
4581* **`running in another terminal`** : un terminal détient la conversation, par exemple celui où vous l'avez reprise avec `claude --resume` ou `/resume`. La ligne affiche également `Open in a terminal`.4645* **`running in another terminal`** : un terminal détient la conversation, par exemple celui où vous l'avez reprise avec `claude --resume` ou `/resume`. La ligne affiche également `Open in a terminal`.
4582* **`already open in another running Claude session`** : un autre processus Claude Code non interactif la détient, par exemple un processus de [session en arrière-plan](/docs/fr/agent-view#the-supervisor-process) pour la même conversation qui n'a pas encore quitté.4646* **`already open in another running Claude session`** : un autre processus Claude Code non interactif la détient, par exemple un processus de [session en arrière-plan](/docs/fr/agent-view#the-supervisor-process) pour la même conversation qui n'a pas encore quitté.
4583 4647
4584Claude Code enregistre une réponse que vous avez tapée lors de l'ouverture de la ligne et l'envoie comme l'invite suivante de la session lorsque la session démarre ensuite.4648Claude Code enregistre une réponse que vous avez tapée lors de l'ouverture de la ligne et l'envoie comme le prompt suivant de la session lorsque la session démarre ensuite.
4585 4649
4586**Ce qu'il faut faire :**4650**Ce qu'il faut faire :**
4587 4651
4593 La conversation enregistrée de cette session n'est plus sur le disque4657 La conversation enregistrée de cette session n'est plus sur le disque
4594</h3>4658</h3>
4595 4659
4596Vous avez ouvert une [session en arrière-plan](/docs/fr/agent-view) qui s'est terminée alors que le service en arrière-plan était arrêté, et le [nettoyage de transcription](/docs/fr/settings-reference#cleanupperioddays) a depuis supprimé sa conversation enregistrée, par exemple après que la machine ait été éteinte pendant des semaines. L'ouverture d'une telle ligne [reprend normalement sa conversation enregistrée](/docs/fr/agent-view#sessions-show-as-failed-after-shutdown). Sans rien à reprendre, Claude Code refuse plutôt que de réexécuter l'invite originale de la session sans demander :4660Vous avez ouvert une [session en arrière-plan](/docs/fr/agent-view) qui s'est terminée alors que le service en arrière-plan était arrêté, et le [nettoyage de transcription](/docs/fr/settings-reference#cleanupperioddays) a depuis supprimé sa conversation enregistrée, par exemple après que la machine a été éteinte pendant des semaines. L'ouverture d'une telle ligne [reprend normalement sa conversation enregistrée](/docs/fr/agent-view#sessions-show-as-failed-after-shutdown). Sans rien à reprendre, Claude Code refuse plutôt que de réexécuter le prompt original de la session sans demander :
4597 4661
4598```text theme={null}4662```text theme={null}
4599This session's saved conversation is no longer on disk (it ended while the background service was off, and old transcripts are cleaned up), so there is nothing to resume. `claude rm 7c5dcf5d` deletes the row; `claude respawn 7c5dcf5d` runs its original prompt again instead.4663This session's saved conversation is no longer on disk (it ended while the background service was off, and old transcripts are cleaned up), so there is nothing to resume. `claude rm 7c5dcf5d` deletes the row; `claude respawn 7c5dcf5d` runs its original prompt again instead.
4604**Ce qu'il faut faire :**4668**Ce qu'il faut faire :**
4605 4669
4606* Exécutez `claude rm <id>` pour supprimer la ligne. Lorsque l'un des [cas conservés](/docs/fr/agent-view#what-deleting-a-session-removes) s'applique, `claude rm` conserve la ligne et le worktree à la place et nomme la raison4670* Exécutez `claude rm <id>` pour supprimer la ligne. Lorsque l'un des [cas conservés](/docs/fr/agent-view#what-deleting-a-session-removes) s'applique, `claude rm` conserve la ligne et le worktree à la place et nomme la raison
4607* Pour exécuter à nouveau l'invite originale de la session en tant que conversation nouvelle, exécutez `claude respawn <id>`4671* Pour exécuter à nouveau le prompt original de la session en tant que nouvelle conversation, exécutez `claude respawn <id>`
4608 4672
4609Avant v2.1.248, l'ouverture d'une telle ligne réexécutait l'invite originale de la session au lieu de refuser, ramenant une tâche vieille de plusieurs semaines au premier plan.4673Avant v2.1.248, l'ouverture d'une telle ligne réexécutait le prompt original de la session au lieu de refuser, ramenant une tâche vieille de plusieurs semaines au premier plan.
4610 4674
4611<h3 id="worktree-has-commits-that-are-not-pushed-anywhere">4675<h3 id="worktree-has-commits-that-are-not-pushed-anywhere">
4612 Le worktree a des commits qui ne sont poussés nulle part4676 Le worktree a des commits qui ne sont poussés nulle part
4613</h3>4677</h3>
4614 4678
4615Vous avez essayé de supprimer une [session en arrière-plan](/docs/fr/agent-view#what-deleting-a-session-removes) dont le worktree contient des commits que Claude Code ne peut pas confirmer sont enregistrés ailleurs. Claude Code conserve le worktree et la ligne de session plutôt que de détruire les commits sans les voir. `claude rm` nomme la branche et les commits non poussés, et dit comment procéder :4679Vous avez essayé de supprimer une [session en arrière-plan](/docs/fr/agent-view#what-deleting-a-session-removes) dont le worktree contient des commits dont Claude Code ne peut pas confirmer qu'ils sont enregistrés ailleurs. Claude Code conserve le worktree et la ligne de session plutôt que de détruire les commits sans les voir. `claude rm` nomme la branche et les commits non poussés, et dit comment procéder :
4616 4680
4617```text theme={null}4681```text theme={null}
4618kept 7c5dcf5d — its worktree is still at "/home/you/project/.claude/worktrees/fix-login"4682kept 7c5dcf5d — its worktree is still at “/home/you/project/.claude/worktrees/fix-login”
4619 2 unpushed commits on "claude/fix-login": a1b2c3d "Fix login flow" and 1 more. They exist on no remote, so deleting the worktree would lose them.4683 2 unpushed commits on “claude/fix-login”: a1b2c3d “Fix login flow” and 1 more. They exist on no remote, so deleting the worktree would lose them.
4620 push them and run 'claude rm 7c5dcf5d' again, or discard the worktree and its commits: claude rm 7c5dcf5d --discard-unpushed a1b2c3d000000000000000000000000000000000@0123456789abcdef0123456789abcdef4684 push them and run 'claude rm 7c5dcf5d' again, or discard the worktree and its commits: claude rm 7c5dcf5d --discard-unpushed a1b2c3d000000000000000000000000000000000@0123456789abcdef0123456789abcdef
4621```4685```
4622 4686
4623Lorsque Claude Code ne peut pas résumer les commits, la ligne de détail lit `The worktree has unpushed commits` à la place. Dans la [vue agent](/docs/fr/agent-view), la ligne de la session affiche `not deleted` avec la même raison.4687Lorsque Claude Code ne peut pas résumer les commits, la ligne de détail indique `The worktree has unpushed commits` à la place. Dans la [vue agent](/docs/fr/agent-view), la ligne de la session affiche `not deleted` avec la même raison.
4624 4688
4625Les commits sur une télécommande ne bloquent pas la suppression. Non plus les commits sur la copie locale de la branche par défaut de votre télécommande `origin`, tant que cette branche est extraite dans votre checkout principal, le répertoire du référentiel lui-même plutôt qu'un worktree.4689Les commits sur un dépôt distant ne bloquent pas la suppression. Les commits sur la copie locale de la branche par défaut de votre dépôt distant `origin` non plus, tant que cette branche est extraite dans votre checkout principal, le répertoire du dépôt lui-même plutôt qu'un worktree.
4626 4690
4627**Ce qu'il faut faire :**4691**Ce qu'il faut faire :**
4628 4692
4629* Pour conserver les commits, poussez la branche du worktree, ou fusionnez-la dans la branche par défaut extraite dans votre checkout principal, puis supprimez la session à nouveau4693* Pour conserver les commits, poussez la branche du worktree, ou fusionnez-la dans la branche par défaut extraite dans votre checkout principal, puis supprimez la session à nouveau
4630* Pour abandonner les commits, exécutez la commande `claude rm <id> --discard-unpushed` que le message a imprimée, ou appuyez deux fois sur `Ctrl+X` sur la ligne de la session dans la vue agent à nouveau. Cela supprime la session et le worktree ainsi que sa branche, les commits non poussés et les modifications non validées. Si le worktree a gagné un commit depuis le refus, Claude Code le conserve à nouveau et affiche l'état mis à jour4694* Pour abandonner les commits, exécutez la commande `claude rm <id> --discard-unpushed` que le message a imprimée, ou appuyez deux fois sur `Ctrl+X` sur la ligne de la session dans la vue agent à nouveau. Cela supprime la session et le worktree ainsi que sa branche, les commits non poussés et les modifications non commitées. Si le worktree a gagné un commit depuis le refus, Claude Code le conserve à nouveau et affiche l'état mis à jour
4631* Lorsque le message dit que le worktree est également enregistré par une autre session terminée, la suppression à nouveau ne le supprime pas : poussez les commits, puis supprimez la session à nouveau4695* Lorsque le message dit que le worktree est également enregistré par une autre session terminée, la suppression à nouveau ne le supprime pas : poussez les commits, puis supprimez la session à nouveau
4632 4696
4633Avant v2.1.268, `claude rm` mettait le résumé du commit sur la ligne `kept` elle-même. Lorsque `claude rm` ne pouvait pas résumer les commits, la ligne `kept` lisait `worktree has commits that are not pushed anywhere` à la place du résumé.4697Avant v2.1.268, `claude rm` mettait le résumé du commit sur la ligne `kept` elle-même. Lorsque `claude rm` ne pouvait pas résumer les commits, la ligne `kept` indiquait `worktree has commits that are not pushed anywhere` à la place du résumé.
4634 4698
4635Avant v2.1.260, le message ne nommait pas la branche ou les commits, et la suppression à nouveau était refusée de la même manière : supprimer la session sans pousser signifiait supprimer le worktree vous-même avec `git worktree remove --force <path>`, puis exécuter `claude rm <id>` à nouveau.4699Avant v2.1.260, le message ne nommait pas la branche ou les commits, et la suppression à nouveau était refusée de la même manière : supprimer la session sans pousser signifiait supprimer le worktree vous-même avec `git worktree remove --force <path>`, puis exécuter `claude rm <id>` à nouveau.
4636 4700
4637Avant v2.1.248, la branche par défaut extraite dans votre checkout principal ne comptait pas : une branche que vous aviez déjà fusionnée là-bas déclenchait toujours ce refus jusqu'à ce que ses commits atteignent une télécommande.4701Avant v2.1.248, la branche par défaut extraite dans votre checkout principal ne comptait pas : une branche que vous aviez déjà fusionnée là-bas déclenchait toujours ce refus jusqu'à ce que ses commits atteignent un dépôt distant.
4638 4702
4639<h3 id="terminal-host-process-died">4703<h3 id="terminal-host-process-died">
4640 Le processus hôte du terminal est mort4704 Le processus hôte du terminal est mort
4660 4724
4661**Ce qu'il faut faire :**4725**Ce qu'il faut faire :**
4662 4726
4663* Dans la vue agent, appuyez sur `Entrée` sur la ligne échouée ; la session redémarre sur un processus hôte nouveau et la conversation reprend4727* Dans la vue agent, appuyez sur `Entrée` sur la ligne échouée ; la session redémarre sur un nouveau processus hôte et la conversation reprend
4664* À partir du shell, exécutez `claude attach <id>` à nouveau. Claude Code imprime `Session <id>'s terminal host died — restarting it on a fresh one…` et rouvre la session4728* À partir du shell, exécutez `claude attach <id>` à nouveau. Claude Code imprime `Session <id>'s terminal host died — restarting it on a fresh one…` et rouvre la session
4665* Vous ne pouvez pas redémarrer une ligne de commande shell de cette manière ; envoyez la commande à nouveau pour la réexécuter4729* Vous ne pouvez pas redémarrer une ligne de commande shell de cette manière ; envoyez la commande à nouveau pour la réexécuter
4666 4730
4667Avant v2.1.247, un processus hôte mort pouvait passer chaque vérification de vivacité que le service en arrière-plan exécutait, de sorte que l'ouverture de la session affichait `opening… · esc to cancel` indéfiniment et `claude attach <id>` attendait sans signaler une erreur.4731Avant v2.1.247, un processus hôte mort pouvait passer chaque vérification de vivacité que le service en arrière-plan exécutait, de sorte que l'ouverture de la session affichait `opening… · esc to cancel` indéfiniment et `claude attach <id>` attendait sans signaler d'erreur.
4668 4732
4669<h3 id="session-isnt-responding">4733<h3 id="session-isnt-responding">
4670 La session ne répond pas4734 La session ne répond pas
4702Session <id> was stopped while the respawn was in flight4766Session <id> was stopped while the respawn was in flight
4703```4767```
4704 4768
4705L'ouverture d'une session que vous venez de dispatcher, tandis que son processus démarre toujours, attend le processus à la place. Avant v2.1.246, l'ouverture à ce moment-là pouvait l'arrêter et afficher ce message.4769L'ouverture d'une session que vous venez d'envoyer, tandis que son processus démarre toujours, attend le processus à la place. Avant v2.1.246, l'ouverture à ce moment-là pouvait l'arrêter et afficher ce message.
4706 4770
4707**Ce qu'il faut faire :**4771**Ce qu'il faut faire :**
4708 4772
4721 4785
4722L'avertissement nomme uniquement les répertoires que Claude Code a recherchés, et il apparaît dans la conversation reprise que vous réveilliez une [session en arrière-plan](/docs/fr/agent-view), exécutiez `/resume` ou `claude --resume`, ou repreniez en [mode non interactif](/docs/fr/headless), où il va également à stderr. Les sessions utilisant `--input-format stream-json` ne l'affichent pas, car le SDK Agent fournit les agents après le démarrage.4786L'avertissement nomme uniquement les répertoires que Claude Code a recherchés, et il apparaît dans la conversation reprise que vous réveilliez une [session en arrière-plan](/docs/fr/agent-view), exécutiez `/resume` ou `claude --resume`, ou repreniez en [mode non interactif](/docs/fr/headless), où il va également à stderr. Les sessions utilisant `--input-format stream-json` ne l'affichent pas, car le SDK Agent fournit les agents après le démarrage.
4723 4787
4724Claude Code n'enregistre pas le repli à la session, de sorte que l'avertissement se répète à chaque reprise jusqu'à ce que vous agissiez. L'agent `claude` intégré ne déclenche pas l'avertissement, puisque le repli à l'ensemble d'outils par défaut ne change rien pour lui. Avant v2.1.216, Claude Code continuait silencieusement en tant qu'agent par défaut, et la recherche couvrait uniquement le répertoire à partir duquel vous repreniez, de sorte qu'un agent limité au projet était perdu à chaque reprise à partir d'un autre répertoire.4788Claude Code n'enregistre pas la solution de repli dans la session, de sorte que l'avertissement se répète à chaque reprise jusqu'à ce que vous agissiez. L'agent `claude` intégré ne déclenche pas l'avertissement, puisque se rabattre sur l'ensemble d'outils par défaut ne change rien pour lui. Avant v2.1.216, Claude Code continuait silencieusement en tant qu'agent par défaut, et la recherche couvrait uniquement le répertoire à partir duquel vous repreniez, de sorte qu'un agent limité au projet était perdu à chaque reprise à partir d'un autre répertoire.
4725 4789
4726**Ce qu'il faut faire :**4790**Ce qu'il faut faire :**
4727 4791
4739CLAUDE_CODE_PROCESS_WRAPPER: launcher `/opt/corp/launcher` is not an executable regular file4803CLAUDE_CODE_PROCESS_WRAPPER: launcher `/opt/corp/launcher` is not an executable regular file
4740```4804```
4741 4805
4742Un lanceur qui démarre mais quitte sans se remplacer par Claude Code échoue la session qu'il démarrait, et la ligne de la session dans la vue agent rapporte que le lanceur `must exec, not daemonize`, suivi de tout ce que le lanceur a imprimé. Une session qui ne peut pas démarrer ou atteindre le service en arrière-plan à cause du lanceur rapporte le problème du lanceur comme la raison à l'intérieur de `Couldn't reach the background service (...)`.4806Un lanceur qui démarre mais quitte sans se remplacer par Claude Code fait échouer la session qu'il démarrait, et la ligne de la session dans la vue agent rapporte que le lanceur `must exec, not daemonize`, suivi de tout ce que le lanceur a imprimé. Une session qui ne peut pas démarrer ou atteindre le service en arrière-plan à cause du lanceur rapporte le problème du lanceur comme la raison à l'intérieur de `Couldn't reach the background service (...)`.
4743 4807
4744**Ce qu'il faut faire :**4808**Ce qu'il faut faire :**
4745 4809
4767 4831
4768**Ce qu'il faut faire :**4832**Ce qu'il faut faire :**
4769 4833
4770* Si le message lit `Couldn't start the session`, mettez à jour vers v2.1.212 ou ultérieur. Sur les versions antérieures, vous pouvez également exécuter `claude daemon run` dans un terminal séparé en premier, puis démarrer la session en arrière-plan à nouveau. Cette commande exécute le service en arrière-plan au premier plan du terminal, de sorte que le service dure uniquement tant que ce terminal reste ouvert.4834* Si le message indique `Couldn't start the session`, mettez à jour vers v2.1.212 ou ultérieur. Sur les versions antérieures, vous pouvez également exécuter `claude daemon run` dans un terminal séparé en premier, puis démarrer la session en arrière-plan à nouveau. Cette commande exécute le service en arrière-plan au premier plan du terminal, de sorte que le service dure uniquement tant que ce terminal reste ouvert.
4771* Si une installation npm remplaçait le binaire, attendez qu'elle se termine, puis démarrez la session en arrière-plan à nouveau4835* Si une installation npm remplaçait le binaire, attendez qu'elle se termine, puis démarrez la session en arrière-plan à nouveau
4772* Si l'erreur apparaît sur v2.1.212 ou ultérieur tandis qu'aucune installation npm n'est en cours, demandez à votre administrateur Windows d'autoriser l'exécutable Claude Code dans la politique de restriction4836* Si l'erreur apparaît sur v2.1.212 ou ultérieur tandis qu'aucune installation npm n'est en cours, vérifiez auprès de votre administrateur Windows si une politique de restriction bloque l'exécutable Claude Code
4773* Si le service en arrière-plan s'arrête lorsque vous fermez le terminal, Claude Code l'a démarré sans PowerShell. Installez PowerShell 7, ou demandez à votre administrateur de débloquer PowerShell, de sorte que le service puisse survivre au terminal.4837* Si le service en arrière-plan s'arrête lorsque vous fermez le terminal, Claude Code l'a démarré sans PowerShell. Installez PowerShell 7, ou demandez à votre administrateur de débloquer PowerShell, de sorte que le service puisse survivre au terminal.
4774 4838
4775<h3 id="eacces-when-starting-a-background-session">4839<h3 id="eacces-when-starting-a-background-session">
4825 Le répertoire de travail n'existe plus au démarrage d'une session en arrière-plan4889 Le répertoire de travail n'existe plus au démarrage d'une session en arrière-plan
4826</h3>4890</h3>
4827 4891
4828Le répertoire dans lequel vous avez essayé de démarrer une [session en arrière-plan](/docs/fr/agent-view) a été supprimé tandis que la session démarrait. Claude Code ne démarre pas la session, et le message nomme le répertoire manquant :4892Le répertoire dans lequel vous avez démarré une [session en arrière-plan](/docs/fr/agent-view) a été supprimé tandis que la session démarrait. Claude Code ne démarre pas la session, et le message nomme le répertoire manquant :
4829 4893
4830```text theme={null}4894```text theme={null}
4831Couldn't start a background session (working directory no longer exists or is not accessible: /tmp/demo)4895Couldn't start a background session (working directory no longer exists or is not accessible: /tmp/demo)
4849Workspace not trusted. Run `claude` in /path/to/project once and accept the trust prompt, then retry.4913Workspace not trusted. Run `claude` in /path/to/project once and accept the trust prompt, then retry.
4850```4914```
4851 4915
4852À 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.4916À 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 là où aucun dialogue ne peut apparaître, comme dans un script, ou lorsque vous redémarrez une session à partir d'un répertoire autre que le sien.
4853 4917
4854Deux variantes nomment une cause différente :4918Deux variantes nomment une cause différente :
4855 4919
4856* **`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.4920* **`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.
4857* **`<path> could not be resolved on disk`** : Claude Code n'a pas pu trouver le répertoire de la session sur le disque.4921* **`<path> could not be resolved on disk`** : Claude Code n'a pas pu trouver le répertoire de la session sur le disque.
4858 4922
4923Avant v2.1.286, sur Windows, ce message pouvait également apparaître dans un répertoire que vous aviez déjà approuvé, si son enregistrement de confiance avait été sauvegardé avec le chemin dans une casse différente. Mettez à jour vers v2.1.286 ou ultérieur.
4924
4859**Ce qu'il faut faire :**4925**Ce qu'il faut faire :**
4860 4926
4861* Exécutez `claude` dans le répertoire que le message nomme et acceptez le dialogue de confiance, puis exécutez la commande à nouveau4927* Exécutez `claude` dans le répertoire que le message nomme et acceptez le dialogue de confiance, puis exécutez la commande à nouveau