SpyBara
Go Premium

Documentation 2026-10-08 22:58 UTC to 2026-10-09 00:01 UTC

17 files changed +138 −37. View all changes and history on the product overview
2026
Fri 9 02:00 Thu 8 22:58 Wed 7 23:59 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59
Details

146| `auto` | Approbations classées par le modèle | Un classificateur de modèle examine les actions telles que les commandes shell et les demandes réseau, en approuvant ou en bloquant chacune qu'il examine. Voir [Mode Auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour la disponibilité et l'ordre de décision |146| `auto` | Approbations classées par le modèle | Un classificateur de modèle examine les actions telles que les commandes shell et les demandes réseau, en approuvant ou en bloquant chacune qu'il examine. Voir [Mode Auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour la disponibilité et l'ordre de décision |

147 147 

148<Warning>148<Warning>

149 **Héritage des sous-agents :** Un sous-agent s'exécute dans le mode de permission de la session parent sauf si vous définissez `permissionMode` sur son [`AgentDefinition`](/docs/fr/agent-sdk/typescript#agentdefinition) et que la session parent est en mode `default`, `dontAsk` ou `plan`. Même dans ce cas, Claude Code n'applique jamais une valeur `"bypassPermissions"`. Un sous-agent s'exécute en mode `bypassPermissions` uniquement lorsque la session parent elle-même le fait. L'exception `bypassPermissions` nécessite Claude Code v2.1.267 ou ultérieur.149 **Héritage des sous-agents :** Un sous-agent s'exécute dans le mode de permission de la session parent sauf si vous définissez `permissionMode` sur son [`AgentDefinition`](/docs/fr/agent-sdk/typescript#agentdefinition) et que la session parent est en mode `default`, `dontAsk` ou `plan`. Même dans ce cas, Claude Code n'applique jamais une valeur `"bypassPermissions"`, et n'applique une valeur `"auto"` que lorsque le [mode auto est disponible](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour ce sous-agent. Un sous-agent s'exécute en mode `bypassPermissions` uniquement lorsque la session parent elle-même le fait. L'exception `bypassPermissions` nécessite Claude Code v2.1.267 ou ultérieur.

150 150 

151 Les sous-agents peuvent avoir des invites système différentes et un comportement moins contraint que votre agent principal, donc hériter de `bypassPermissions` leur accorde un accès système complet et autonome. Les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves) s'appliquent toujours.151 Les sous-agents peuvent avoir des invites système différentes et un comportement moins contraint que votre agent principal, donc hériter de `bypassPermissions` leur accorde un accès système complet et autonome. Les [actions qu'aucun mode n'approuve automatiquement](/docs/fr/permission-modes#actions-no-mode-auto-approves) s'appliquent toujours.

152</Warning>152</Warning>

Details

323 Détecter l'invocation d'un sous-agent323 Détecter l'invocation d'un sous-agent

324</h2>324</h2>

325 325 

326Claude invoque les sous-agents via l'outil Agent. Pour détecter quand un sous-agent est invoqué, recherchez les blocs `tool_use` où `name` est `"Agent"`. Les messages provenant du contexte d'un sous-agent incluent un champ `parent_tool_use_id`.326Claude invoque les sous-agents via l'outil Agent. Pour détecter quand un sous-agent est invoqué, recherchez les blocs `tool_use` où `name` est `"Agent"`.

327 

328Les messages provenant du contexte d'un sous-agent incluent un champ `parent_tool_use_id`. En TypeScript, chaque message assistant et utilisateur produit par un sous-agent comporte également [`agent_id`](/docs/fr/agent-sdk/typescript#sdkassistantmessage) : le `task_id` des [événements de tâche](/docs/fr/agent-sdk/typescript#sdktaskstartedmessage) de ce sous-agent. `agent_id` nécessite le SDK Agent TypeScript v0.3.292 ou une version ultérieure.

327 329 

328<Note>330<Note>

329 L'outil apparaît comme `"Agent"` dans les blocs `tool_use` mais comme `"Task"` dans la liste des outils `system:init`. Avant Claude Code v2.1.63, les blocs `tool_use` le nommaient également `"Task"`. Pour que la détection fonctionne sur les versions du SDK, faites correspondre les deux valeurs dans `block.name`.331 L'outil apparaît comme `"Agent"` dans les blocs `tool_use` mais comme `"Task"` dans la liste des outils `system:init`. Avant Claude Code v2.1.63, les blocs `tool_use` le nommaient également `"Task"`. Pour que la détection fonctionne sur les versions du SDK, faites correspondre les deux valeurs dans `block.name`.


331 333 

332La structure du message diffère entre les SDK. En Python, vous accédez directement aux blocs de contenu via `message.content`. En TypeScript, `SDKAssistantMessage` enveloppe le message de l'API Claude, vous accédez donc au contenu via `message.message.content`.334La structure du message diffère entre les SDK. En Python, vous accédez directement aux blocs de contenu via `message.content`. En TypeScript, `SDKAssistantMessage` enveloppe le message de l'API Claude, vous accédez donc au contenu via `message.message.content`.

333 335 

334Cet exemple itère à travers les messages en flux, enregistrant quand un sous-agent est invoqué et quand les messages suivants proviennent du contexte d'exécution de ce sous-agent.336Cet exemple itère à travers les messages en flux, journalisant quand un sous-agent est invoqué et quand les messages suivants proviennent du contexte d'exécution de ce sous-agent. La version TypeScript journalise également l'`agent_id` de chaque message de sous-agent qui en comporte un.

335 337 

336<CodeGroup>338<CodeGroup>

337 ```python Python theme={null}339 ```python Python theme={null}


403 // Check if this message is from within a subagent's context405 // Check if this message is from within a subagent's context

404 if (msg.parent_tool_use_id) {406 if (msg.parent_tool_use_id) {

405 console.log(" (running inside subagent)");407 console.log(" (running inside subagent)");

408 // On assistant and user messages, agent_id matches the task_id

409 // on that subagent's task_started and other task events

410 if (msg.agent_id) {

411 console.log(` agent_id: ${msg.agent_id}`);

412 }

406 }413 }

407 414 

408 if ("result" in message) {415 if ("result" in message) {

Details

1561 parent_tool_use_id: string | null;1561 parent_tool_use_id: string | null;

1562 error?: SDKAssistantMessageError;1562 error?: SDKAssistantMessageError;

1563 aborted?: true;1563 aborted?: true;

1564 agent_id?: string;

1564 timestamp?: string;1565 timestamp?: string;

1565 context_usage?: SDKContextUsage;1566 context_usage?: SDKContextUsage;

1566 user_message_uuid?: string;1567 user_message_uuid?: string;


1580 1581 

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

1582 1583 

1584`agent_id` identifie le sous-agent qui a produit le message et est absent des messages du fil principal. Sa valeur est égale au `task_id` présent dans l'événement [`task_started`](#sdktaskstartedmessage) et les autres événements de tâche de ce sous-agent, et reste inchangée lorsque le sous-agent est [repris](/docs/fr/agent-sdk/subagents#resume-subagents). Le champ nécessite l'Agent SDK v0.3.292 ou ultérieur.

1585 

1586Associez les messages d'un sous-agent à ses événements de tâche via `agent_id` plutôt qu'en appariant le `parent_tool_use_id` d'un message au `tool_use_id` d'un événement de tâche. Lorsqu'un appel d'outil reprend le sous-agent, les événements de tâche portent le `tool_use_id` de cet appel, tandis que les messages conservent le `parent_tool_use_id` de l'appel d'outil qui a démarré le sous-agent à l'origine, de sorte que les deux ne correspondent plus.

1587 

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

1584 1589 

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


1597 type: "user";1602 type: "user";

1598 uuid?: UUID;1603 uuid?: UUID;

1599 session_id?: string;1604 session_id?: string;

1605 agent_id?: string;

1600 message: MessageParam; // From Anthropic SDK1606 message: MessageParam; // From Anthropic SDK

1601 pasted_content?: MessageParam["content"][];1607 pasted_content?: MessageParam["content"][];

1602 parent_tool_use_id: string | null;1608 parent_tool_use_id: string | null;


1636};1642};

1637```1643```

1638 1644 

1645Un message utilisateur produit par un sous-agent, comme le `tool_result` de l'un de ses propres appels d'outils, porte `agent_id`. Consultez [`SDKAssistantMessage`](#sdkassistantmessage), qui définit ce champ et la version requise.

1646 

1639Sur un message qui porte un bloc `tool_result`, `tool_use_result` est l'objet de sortie structurée de l'outil plutôt que le texte envoyé au modèle. Sa forme dépend de l'outil nommé par le bloc `tool_use` correspondant : le champ est donc typé `unknown` ; les formes intégrées sont répertoriées sous [Types de sortie des outils](#tool-output-types). Ces résultats nécessitent un traitement qui va au-delà de leur forme répertoriée :1647Sur un message qui porte un bloc `tool_result`, `tool_use_result` est l'objet de sortie structurée de l'outil plutôt que le texte envoyé au modèle. Sa forme dépend de l'outil nommé par le bloc `tool_use` correspondant : le champ est donc typé `unknown` ; les formes intégrées sont répertoriées sous [Types de sortie des outils](#tool-output-types). Ces résultats nécessitent un traitement qui va au-delà de leur forme répertoriée :

1640 1648 

1641* L'outil `Agent` : `tool_use_result` est [`AgentOutput`](#agent-2). Effectuez le rendu à partir de celui-ci plutôt que d'analyser le texte du `tool_result`. Le `content` d'un résultat `completed` contient le rapport du sous-agent ou, pour un sous-agent dont le rapport passe par un appel d'outil `SubagentHandback`, une courte note sur cette remise à la place du rapport. En [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) sur Claude Code v2.1.271 ou version ultérieure, tout sous-agent qui produit un résultat `completed` fait son rapport de cette façon, sauf s'il s'agit d'un [fork](/docs/fr/sub-agents#fork-the-current-conversation), et Claude reçoit le rapport sous la forme d'un message distinct provenant du sous-agent.1649* L'outil `Agent` : `tool_use_result` est [`AgentOutput`](#agent-2). Effectuez le rendu à partir de celui-ci plutôt que d'analyser le texte du `tool_result`. Le `content` d'un résultat `completed` contient le rapport du sous-agent ou, pour un sous-agent dont le rapport passe par un appel d'outil `SubagentHandback`, une courte note sur cette remise à la place du rapport. En [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) sur Claude Code v2.1.271 ou version ultérieure, tout sous-agent qui produit un résultat `completed` fait son rapport de cette façon, sauf s'il s'agit d'un [fork](/docs/fr/sub-agents#fork-the-current-conversation), et Claude reçoit le rapport sous la forme d'un message distinct provenant du sous-agent.


1992 `SDKPartialAssistantMessage`2000 `SDKPartialAssistantMessage`

1993</h3>2001</h3>

1994 2002 

1995Message partiel en streaming (uniquement quand `includePartialMessages` est true). Le champ `parent_tool_use_id` est toujours `null` : les événements de flux sont émis pour la session principale uniquement. Pour l'attribution de sous-agent, utilisez les messages complets, qui portent `parent_tool_use_id`, ou activez [`forwardSubagentText`](#options) pour recevoir le texte et la réflexion du sous-agent comme des messages complets.2003Message partiel en streaming (uniquement lorsque `includePartialMessages` vaut true).

2004 

2005Le champ `parent_tool_use_id` est toujours `null` : les événements de flux ne sont émis que pour la session principale. Pour l'attribution aux sous-agents, utilisez les messages complets, qui portent [`agent_id`](#sdkassistantmessage) et `parent_tool_use_id`, ou activez [`forwardSubagentText`](#options) pour recevoir le texte et la réflexion des sous-agents sous forme de messages complets.

1996 2006 

1997```typescript theme={null}2007```typescript theme={null}

1998type SDKPartialAssistantMessage = {2008type SDKPartialAssistantMessage = {


5777 task_type?: string;5787 task_type?: string;

5778 is_backgrounded?: boolean;5788 is_backgrounded?: boolean;

5779 spawn_depth?: number;5789 spawn_depth?: number;

5790 parent_task_id?: string;

5780 ambient?: boolean;5791 ambient?: boolean;

5781 uuid: UUID;5792 uuid: UUID;

5782 session_id: string;5793 session_id: string;


5794 5805 

5795Un [sous-agent repris](/docs/fr/agent-sdk/subagents#resume-subagents) signale toujours `is_backgrounded: true`, car Claude Code exécute chaque sous-agent repris en arrière-plan. Lorsqu'une tâche au premier plan se déplace en arrière-plan plus tard, Claude Code signale la nouvelle valeur `is_backgrounded` dans un message [`task_updated`](#sdktaskupdatedmessage) plutôt que d'envoyer un second `task_started`.5806Un [sous-agent repris](/docs/fr/agent-sdk/subagents#resume-subagents) signale toujours `is_backgrounded: true`, car Claude Code exécute chaque sous-agent repris en arrière-plan. Lorsqu'une tâche au premier plan se déplace en arrière-plan plus tard, Claude Code signale la nouvelle valeur `is_backgrounded` dans un message [`task_updated`](#sdktaskupdatedmessage) plutôt que d'envoyer un second `task_started`.

5796 5807 

5808`parent_task_id` contient le `task_id` du sous-agent qui a lancé cette tâche. Utilisez-le pour regrouper chaque tâche sous le sous-agent qui l'a démarrée. Claude Code le définit sur les tâches de sous-agent, Bash et [Monitor](#monitor). Le champ nécessite Agent SDK v0.3.292 ou version ultérieure. Il est absent lorsque :

5809 

5810* Le thread principal a lancé la tâche

5811* Claude Code ne suit plus la tâche parente

5812* Un [coéquipier](/docs/fr/agent-teams) ou un agent à l'intérieur d'un workflow a lancé la tâche

5813 

5814Le parent peut être une tâche au premier plan ou une tâche déjà terminée ; traitez donc un ID que vous ne reconnaissez pas comme l'absence de parent.

5815 

5797<h3 id="sdktaskprogressmessage">5816<h3 id="sdktaskprogressmessage">

5798 `SDKTaskProgressMessage`5817 `SDKTaskProgressMessage`

5799</h3>5818</h3>


5850 `SDKBackgroundTasksChangedMessage`5869 `SDKBackgroundTasksChangedMessage`

5851</h3>5870</h3>

5852 5871 

5853Émis chaque fois que l'ensemble des tâches en arrière-plan en direct change : une tâche démarre, se termine, est tuée, un agent au premier plan est mis en arrière-plan, ou le champ `description` ou `ambient` d'une tâche change.5872Émis chaque fois que l'ensemble des tâches en arrière-plan en direct change : une tâche démarre, se termine ou est tuée ; un agent au premier plan est mis en arrière-plan ; ou le champ `description`, `ambient` ou `parent_task_id` d'une tâche change. Pour le champ `parent_task_id` de chaque entrée, consultez [`SDKTaskStartedMessage`](#sdktaskstartedmessage), qui le définit et son exigence de version.

5854 5873 

5855Le tableau `tasks` est l'ensemble en direct complet. Remplacez tout ensemble mis en cache par chaque payload au lieu d'appairer les événements `task_started` et `task_notification`, afin que le prochain changement d'appartenance corrige tout événement que vous avez manqué.5874Le tableau `tasks` est l'ensemble en direct complet. Remplacez tout ensemble mis en cache par chaque payload au lieu d'appairer les événements `task_started` et `task_notification`, afin que le prochain changement d'appartenance corrige tout événement que vous avez manqué.

5856 5875 

5857L'ordre relatif à ces événements par tâche n'est pas spécifié, donc ne corrélez pas les deux flux.5876Lorsqu'une tâche se termine, ses messages [`task_updated`](#sdktaskupdatedmessage) et [`task_notification`](#sdktasknotificationmessage) arrivent avant le `background_tasks_changed` qui la retire de la liste. L'ordre relatif aux événements par tâche n'est sinon pas spécifié.

5858 5877 

5859Rien n'est émis au démarrage. Réinitialisez à un ensemble vide chaque fois que le processus CLI de la session démarre ou redémarre et laissez le prochain changement d'appartenance le repeupler.5878Rien n'est émis au démarrage. Réinitialisez à un ensemble vide chaque fois que le processus CLI de la session démarre ou redémarre et laissez le prochain changement d'appartenance le repeupler.

5860 5879 


5871 task_type: string;5890 task_type: string;

5872 subagent_type?: string;5891 subagent_type?: string;

5873 description: string;5892 description: string;

5893 parent_task_id?: string;

5874 ambient?: boolean;5894 ambient?: boolean;

5875 }[];5895 }[];

5876 uuid: UUID;5896 uuid: UUID;

artifacts.md +38 −10

Details

51Build a dashboard artifact of last week's deploy failures by service and keep it updated as you investigate.51Build a dashboard artifact of last week's deploy failures by service and keep it updated as you investigate.

52```52```

53 53 

54Sauf si vous nommez un emplacement, Claude écrit la page dans un fichier HTML ou Markdown dans un répertoire temporaire en dehors de votre projet, puis la publie. En dehors du [mode plan](/docs/fr/permission-modes#analyze-before-you-edit-with-plan-mode), un nouvel artifact que Claude publie en réponse à une invite que vous tapez passe sans invite de permission ou examen du classificateur, sauf si cette publication déclare des capacités d'exécution pour la page, comme les [appels de connecteur](#pull-live-data-with-mcp-connectors) ou les [téléchargements de fichiers](#offer-a-file-download). En mode plan, Claude Code vous demande avant la première publication de chaque artifact.54Sauf si vous indiquez un emplacement, Claude écrit la page dans un fichier HTML ou Markdown situé dans un répertoire temporaire en dehors de votre projet, puis la publie. L'artefact reste privé jusqu'à ce que vous le [partagiez](#share-an-artifact).

55 55 

56L'artifact reste privé pour vous jusqu'à ce que vous le [partagiez](#share-an-artifact). Après l'avoir partagé publiquement, Claude Code demande votre approbation une fois par conversation avant de le modifier, ou en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) fait examiner la modification par le classificateur.56Après la première publication, Claude affiche l'URL, et votre navigateur s'ouvre sur la nouvelle page.

57 57 

58Si vous avez désactivé la [récupération de drapeaux de fonctionnalité](/docs/fr/env-vars#features-that-need-feature-flag-fetching), Claude Code demande avant la première publication de chaque artifact, ou en mode auto fait examiner par le classificateur.58* **Rouvrir la page** : appuyez sur `Ctrl+]` à tout moment pour rouvrir l'artefact le plus récent de la session

59* **Voir les artefacts de cette session** : une pastille `⧉` sous le prompt affiche le nom de l'artefact, ou un nombre lorsque la session en contient plusieurs. En [rendu plein écran](/docs/fr/fullscreen), cliquez dessus pour ouvrir la liste [`/artifacts`](#find-an-artifact-again)

60* **Empêcher l'ouverture du navigateur** : définissez `CLAUDE_CODE_ARTIFACT_AUTO_OPEN=0` dans votre environnement

61* **Remote Control** : si vous avez envoyé le prompt via [Remote Control](/docs/fr/remote-control) depuis claude.ai, Claude Desktop ou l'application mobile Claude, aucun onglet ne s'ouvre sur la machine qui exécute la session. Le navigateur s'y ouvre la prochaine fois que Claude publie l'artefact à partir d'un prompt que vous tapez dans le terminal

59 62 

60Après la première publication, Claude imprime l'URL, et votre navigateur s'ouvre sur la nouvelle page. Si vous avez envoyé l'invite via [Contrôle à distance](/docs/fr/remote-control) depuis claude.ai, Claude Desktop ou l'application mobile Claude, aucun onglet ne s'ouvre sur la machine exécutant la session. Le navigateur s'ouvre là la prochaine fois que Claude publie l'artifact à partir d'une invite que vous tapez au terminal. Appuyez sur `Ctrl+]` à tout moment pour rouvrir l'artifact le plus récent de la session.63Claude choisit le titre de l'artefact et une icône d'onglet de navigateur qui correspond à la nature de la page, comme un graphique ou un calendrier. Le titre apparaît dans votre [galerie d'artefacts](#share-an-artifact) sur claude.ai et dans les liens partagés. Demandez à Claude un titre ou une icône d'onglet spécifique si vous le souhaitez.

61 64 

62Claude choisit le titre de l'artifact et un emoji, et les deux apparaissent dans votre [galerie d'artifacts](#share-an-artifact) sur claude.ai et dans les liens partagés. Claude peut également choisir une icône d'onglet de navigateur qui correspond à ce que la page est, comme un graphique ou un calendrier. Demandez à Claude un titre, un emoji ou une icône d'onglet spécifique si vous en voulez un.65Si Claude répond qu'il ne peut pas publier, ou écrit un fichier HTML local sans lien, les artefacts ne sont pas activés pour votre session. Vérifiez les exigences de [Disponibilité](#availability). Si le terminal affiche `Artifacts need a claude.ai login`, consultez [l'entrée de cette erreur](/docs/fr/errors#artifacts-need-a-claude-ai-login) pour savoir comment vous connecter.

63 66 

64Pour empêcher le navigateur de s'ouvrir automatiquement lors de la publication d'un nouvel artifact, définissez `CLAUDE_CODE_ARTIFACT_AUTO_OPEN=0` dans votre environnement.67<h3 id="when-claude-code-asks-before-publishing">

68 Quand Claude Code demande avant de publier

69</h3>

70 

71Un nouvel artefact que Claude publie en réponse à un prompt que vous tapez est publié sans demande de permission ni examen par le classifieur. Dans les cas suivants, Claude Code vous demande d'abord, ou en [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) fait examiner la publication par le classifieur :

65 72 

66Si Claude répond qu'il ne peut pas publier, ou écrit un fichier HTML local sans lien, l'outil n'est pas activé pour votre session. Vérifiez les exigences de [Disponibilité](#availability).73| Quand | Ce que fait Claude Code |

74| :- | :- |

75| La session est en [mode plan](/docs/fr/permission-modes#analyze-before-you-edit-with-plan-mode) | Demande avant la première publication de chaque artefact |

76| La publication déclare des capacités d'exécution pour la page, comme des [appels de connecteur](#pull-live-data-with-mcp-connectors) ou des [téléchargements de fichiers](#offer-a-file-download) | Demande avant cette publication |

77| Vous avez partagé l'artefact publiquement | Demande une fois par conversation avant de le modifier |

78| Vous avez désactivé la [récupération des feature flags](/docs/fr/env-vars#features-that-need-feature-flag-fetching) | Demande avant la première publication de chaque artefact |

79| Claude publie lors d'un tour déclenché par une [tâche planifiée](/docs/fr/scheduled-tasks) s'exécutant dans votre session, plutôt que par un prompt que vous avez tapé | Demande avant la première publication de chaque artefact |

80| Claude ne peut pas lire le fichier sans votre approbation | Demande avant de le publier. Une règle d'autorisation pour l'outil `Artifact` ne permet pas d'ignorer cette demande |

81 

82Claude lit sans demander les fichiers situés dans les [répertoires de travail](/docs/fr/permissions#working-directories) de votre session, ainsi que dans le répertoire temporaire où il écrit les pages. Pour permettre à Claude de publier depuis un autre dossier sans demande, ajoutez ce dossier comme répertoire de travail avec [`--add-dir`](/docs/fr/cli-reference#cli-flags) au lancement ou `/add-dir` pendant la session.

67 83 

68<h2 id="update-an-artifact">84<h2 id="update-an-artifact">

69 Mettre à jour un artifact85 Mettre à jour un artifact


87 Retrouver un artifact103 Retrouver un artifact

88</h2>104</h2>

89 105 

90Exécutez `/artifacts` dans Claude Code pour lister chaque artifact que vous possédez et chaque artifact partagé avec vous. Sélectionnez-en un et appuyez sur `o` pour l'ouvrir dans votre navigateur ou `c` pour copier son lien. Appuyez sur `Entrée` pour l'attacher à la session actuelle ; avant la v2.1.216, `Entrée` l'ouvrait dans votre navigateur. Claude Code lit la liste à partir de votre compte claude.ai, donc cela fonctionne dans une nouvelle session et après `/clear`, quand le lien a disparu du terminal. Nécessite Claude Code v2.1.208 ou version ultérieure.106Exécutez `/artifacts` dans Claude Code pour lister les artefacts que vous possédez et ceux partagés avec vous. Les artefacts de la session actuelle apparaissent en premier, sous **This session**. Nécessite Claude Code v2.1.208 ou version ultérieure.

107 

108Sélectionnez un artefact, puis appuyez sur l'une de ces touches :

109 

110* **`Enter`** : l'ouvre dans votre navigateur lorsqu'il est déjà attaché à la session actuelle, et l'attache dans le cas contraire. Avant la v2.1.216, `Enter` l'ouvrait dans votre navigateur

111* **`o`** : l'ouvre dans votre navigateur

112* **`c`** : copie son lien

113 

114Claude Code lit la liste à partir de votre compte claude.ai, donc cela fonctionne dans une nouvelle session et après `/clear`, quand le lien a disparu du terminal.

91 115 

92<h2 id="share-an-artifact">116<h2 id="share-an-artifact">

93 Partager un artifact117 Partager un artifact


110 134 

111Un éditeur publie de nouvelles versions de la même manière que vous [mettez à jour l'artifact à partir d'une autre session](#update-an-artifact) : il donne à Claude l'URL de l'artifact, ou l'attache à partir de [`/artifacts`](#find-an-artifact-again), et Claude récupère le contenu actuel et le republish avec ses modifications. Tous les utilisateurs ayant la page ouverte voient chaque mise à jour en direct.135Un éditeur publie de nouvelles versions de la même manière que vous [mettez à jour l'artifact à partir d'une autre session](#update-an-artifact) : il donne à Claude l'URL de l'artifact, ou l'attache à partir de [`/artifacts`](#find-an-artifact-again), et Claude récupère le contenu actuel et le republish avec ses modifications. Tous les utilisateurs ayant la page ouverte voient chaque mise à jour en direct.

112 136 

137Si un éditeur publie alors que Claude détient une copie plus ancienne de la page, Claude Code refuse toute publication fondée sur cette copie. Claude fusionne alors ses modifications avec la version plus récente et publie à nouveau.

138 

113<h2 id="read-an-artifact-shared-with-you">139<h2 id="read-an-artifact-shared-with-you">

114 Lire un artifact partagé avec vous140 Lire un artifact partagé avec vous

115</h2>141</h2>


168 194 

169Claude cesse également de répondre de lui-même sur un artefact après avoir traité 60 commentaires envoyés ou activations de fils de discussion sur cet artefact en l'espace d'une heure. Vous voyez `Comments are waiting on Artifact: <name>` une seule fois, et Claude reprend à mesure que les commentaires de cette heure sortent de la fenêtre.195Claude cesse également de répondre de lui-même sur un artefact après avoir traité 60 commentaires envoyés ou activations de fils de discussion sur cet artefact en l'espace d'une heure. Vous voyez `Comments are waiting on Artifact: <name>` une seule fois, et Claude reprend à mesure que les commentaires de cette heure sortent de la fenêtre.

170 196 

171Exécutez `/tasks` pour voir chaque artefact que votre session surveille, listé comme une tâche de mises à jour en direct. Vous pouvez empêcher Claude de répondre de lui-même de l'une des manières suivantes :197Exécutez `/tasks` pour voir les artefacts que votre session surveille. `/tasks` regroupe les surveillances que Claude Code a démarrées de lui-même sous la ligne **System tasks**. Appuyez sur `Enter` sur cette ligne pour les lister. Une surveillance que vous avez demandé à Claude de démarrer apparaît sous **Monitors**.

198 

199Vous pouvez empêcher Claude de répondre de lui-même de l'une des manières suivantes :

172 200 

173* **Appuyez une fois sur Ctrl+C à un prompt inactif** : Claude met en pause ses réponses sur tous les artefacts que votre session surveille. Les réponses reprennent après l'envoi de votre prochain message.201* **Appuyez une fois sur Ctrl+C à un prompt inactif** : Claude met en pause ses réponses sur tous les artefacts que votre session surveille. Les réponses reprennent après l'envoi de votre prochain message.

174* **Arrêtez la tâche dans `/tasks`** : Claude cesse de répondre sur cet artefact jusqu'à ce que vous lui demandiez de reprendre les réponses à cet endroit. Republier l'artefact ne relance pas les réponses, et l'arrêt s'applique toujours lorsque vous reprenez la session ultérieurement.202* **Arrêtez la tâche dans `/tasks`** : Claude cesse de répondre sur cet artefact jusqu'à ce que vous lui demandiez de reprendre les réponses à cet endroit. Republier l'artefact ne relance pas les réponses, et l'arrêt s'applique toujours lorsque vous reprenez la session ultérieurement.


391| Authentification | La session est sauvegardée par un compte claude.ai : connectez-vous avec `/login` dans la CLI ou l'application de bureau. Les sessions Claude Tag sont connectées via l'identité de l'agent, donc aucune étape n'est nécessaire. Les sessions utilisant une clé API, un [jeton de passerelle](/docs/fr/llm-gateway) ou une identifiant de fournisseur cloud ne peuvent pas publier. |419| Authentification | La session est sauvegardée par un compte claude.ai : connectez-vous avec `/login` dans la CLI ou l'application de bureau. Les sessions Claude Tag sont connectées via l'identité de l'agent, donc aucune étape n'est nécessaire. Les sessions utilisant une clé API, un [jeton de passerelle](/docs/fr/llm-gateway) ou une identifiant de fournisseur cloud ne peuvent pas publier. |

392| Fournisseur de modèle | API Anthropic. Non disponible sur [Amazon Bedrock](/docs/fr/amazon-bedrock), [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai) ou [Microsoft Foundry](/docs/fr/microsoft-foundry). |420| Fournisseur de modèle | API Anthropic. Non disponible sur [Amazon Bedrock](/docs/fr/amazon-bedrock), [Google Cloud's Agent Platform](/docs/fr/google-vertex-ai) ou [Microsoft Foundry](/docs/fr/microsoft-foundry). |

393| Politique organisationnelle | Les clés de chiffrement gérées par le client (CMEK), HIPAA et [Zéro rétention de données](/docs/fr/zero-data-retention) ne sont pas activées pour l'organisation. |421| Politique organisationnelle | Les clés de chiffrement gérées par le client (CMEK), HIPAA et [Zéro rétention de données](/docs/fr/zero-data-retention) ne sont pas activées pour l'organisation. |

394| Surface | Claude Code CLI, ou l'application de bureau Claude version 1.13576.0 ou ultérieure. Les sessions [Claude Tag](https://claude.com/docs/claude-tag/overview) peuvent également publier des artefacts lorsque Claude Tag et les artefacts sont activés pour l'organisation. Désactivé par défaut dans les contextes [Agent SDK](/docs/fr/agent-sdk/overview), GitHub Action et MCP-server, lorsque vous exécutez Claude Code avec [`-p`](/docs/fr/headless) depuis votre propre terminal ou vos scripts, et lorsque [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/fr/env-vars) est défini. |422| Surface | Claude Code CLI, ou l'application de bureau Claude version 1.13576.0 ou ultérieure. Les sessions [Claude Tag](https://claude.com/docs/claude-tag/overview) peuvent également publier des artefacts lorsque Claude Tag et les artefacts sont activés pour l'organisation. Les sessions servies par [`claude remote-control`](/docs/fr/remote-control) peuvent publier des artefacts lorsque vous avez démarré la session vous-même. Nécessite Claude Code v2.1.281 ou ultérieur. Désactivé par défaut dans les contextes [Agent SDK](/docs/fr/agent-sdk/overview), GitHub Action et MCP-server, lorsque vous exécutez Claude Code avec [`-p`](/docs/fr/headless) depuis votre propre terminal ou vos scripts, et lorsque [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/fr/env-vars) est défini. |

395 423 

396La disponibilité des artefacts pour votre organisation provient de la politique de votre organisation, que Claude Code charge depuis `api.anthropic.com`. Lorsque Claude Code ne peut pas charger la politique, les artefacts ne sont pas disponibles. Lorsque vous en demandez un, Claude explique pourquoi.424La disponibilité des artefacts pour votre organisation provient de la politique de votre organisation, que Claude Code charge depuis `api.anthropic.com`. Lorsque Claude Code ne peut pas charger la politique, les artefacts ne sont pas disponibles. Lorsque vous en demandez un, Claude explique pourquoi.

397 425 

errors.md +1 −1

Details

4064 Marketplace is already added from a different source4064 Marketplace is already added from a different source

4065</h3>4065</h3>

4066 4066 

4067Vous avez confirmé l'ajout d'une marketplace via [`/plugin install <plugin> --marketplace <source>`](/docs/fr/plugins/install#add-a-marketplace-and-install-in-one-command), et le catalogue que Claude Code a récupéré à partir de cette source se nomme lui-même de la même façon qu'une marketplace que vous avez déjà ajoutée à partir d'une source différente. Claude Code conserve la marketplace existante au lieu de la remplacer, et le plugin n'est pas installé.4067Vous avez indiqué une nouvelle source de marketplace avec [`--marketplace <source>` sur la commande d'installation](/docs/fr/plugins/install#add-a-marketplace-and-install-in-one-command), dans une session ou depuis votre shell. Le catalogue que Claude Code a récupéré à partir de cette source porte le même nom qu'une marketplace que vous avez déjà ajoutée à partir d'une source différente. Claude Code conserve la marketplace existante au lieu de la remplacer, et le plugin n'est pas installé.

4068 4068 

4069```text theme={null}4069```text theme={null}

4070Marketplace "acme-tools" is already added from a different source (github:acme/plugins). To use this source instead, remove that marketplace first with /plugin marketplace remove acme-tools.4070Marketplace "acme-tools" is already added from a different source (github:acme/plugins). To use this source instead, remove that marketplace first with /plugin marketplace remove acme-tools.

hooks.md +17 −7

Details

1237 Contrôle de décision de SessionStart1237 Contrôle de décision de SessionStart

1238</h4>1238</h4>

1239 1239 

1240Claude Code ajoute au contexte de Claude la sortie stdout qu'il [traite comme du texte brut](#exit-code-0). En plus des [champs de sortie JSON](#json-output) disponibles pour tous les hooks, vous pouvez renvoyer ces champs propres à l'événement :1240Un hook SessionStart peut ajouter du contexte pour Claude, fournir le premier message utilisateur, définir le titre de la session, surveiller des fichiers et recharger les skills. Renvoyez le champ correspondant à chacune de ces actions, en plus des [champs de sortie JSON](#json-output) disponibles pour tous les hooks :

1241 1241 

1242| Champ | Description |1242| Champ | Description |

1243| :- | :- |1243| :- | :- |

1244| `additionalContext` | Chaîne ajoutée au contexte de Claude au début de la conversation, avant le premier prompt. Consultez [Ajouter du contexte pour Claude](#add-context-for-claude) pour savoir comment le texte est transmis et ce qu'il faut y mettre |1244| `additionalContext` | Chaîne ajoutée au contexte de Claude au début de la conversation, avant le premier prompt. Consultez [Ajouter du contexte pour Claude](#add-context-for-claude) pour savoir comment le texte est transmis et ce qu'il faut y mettre |

1245| `initialUserMessage` | Chaîne utilisée comme premier message utilisateur de la session. S'applique en [mode non interactif](/docs/fr/headless) avec le flag `-p`, où elle devient le premier tour même si aucun prompt n'est fourni. Si un prompt est fourni, il suit comme tour suivant. Contrairement à `additionalContext`, qui se rattache à un tour existant, ce champ crée le tour |1245| `initialUserMessage` | Chaîne utilisée comme premier message utilisateur de la session, en [mode non interactif](/docs/fr/headless) avec le flag `-p`. Elle devient le premier tour même si vous ne passez aucun prompt. Un prompt que vous passez suit comme tour suivant |

1246| `sessionTitle` | Définit le titre de la session, avec le même effet que `/rename`. À utiliser pour nommer automatiquement les sessions à partir du dossier de lancement, de la branche git ou du nom du worktree. S'applique lorsque `source` vaut `"startup"`, `"resume"` ou `"fork"` ; ignoré pour `"clear"` et `"compact"` |1246| `sessionTitle` | Définit le titre de la session, avec le même effet que `/rename`. S'applique lorsque `source` vaut `"startup"`, `"resume"` ou `"fork"` |

1247| `watchPaths` | Tableau de chemins absolus à surveiller pour les événements [FileChanged](#filechanged) pendant cette session |1247| `watchPaths` | Tableau de chemins absolus à surveiller pour les événements [FileChanged](#filechanged) pendant cette session |

1248| `reloadSkills` | Booléen. Lorsqu'il vaut `true`, Claude Code analyse à nouveau les répertoires de [skills](/docs/fr/skills) et de commandes une fois les hooks SessionStart terminés, afin que les skills installés par le hook soient disponibles dans la même session, dès le premier prompt |1248| `reloadSkills` | Booléen. Lorsqu'il vaut `true`, Claude Code analyse de nouveau les répertoires de [skills](/docs/fr/skills) et de commandes une fois les hooks SessionStart terminés. Consultez [Recharger les skills installés par un hook](#reload-skills-that-a-hook-installs) |

1249 

1250Cette sortie ajoute du contexte et nomme la session :

1249 1251 

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

1251{1253{


1257}1259}

1258```1260```

1259 1261 

1260Comme la sortie stdout brute parvient déjà à Claude pour cet événement, un hook qui se contente de charger du contexte peut écrire directement sur stdout sans construire de JSON. Utilisez la forme JSON lorsque vous devez combiner le contexte avec d'autres champs comme `sessionTitle`.1262Un hook qui se contente d'ajouter du contexte peut l'afficher sans construire de JSON, car Claude Code ajoute la [sortie stdout en texte brut](#exit-code-0) d'un hook SessionStart au contexte de Claude.

1263 

1264Si le hook SessionStart de votre plugin fournit `initialUserMessage` ou `sessionTitle`, installez le plugin avant le démarrage de la session. Claude Code ignore ces deux champs provenant d'un plugin dont l'installation se termine après l'exécution des hooks SessionStart.

1265 

1266<h4 id="reload-skills-that-a-hook-installs">

1267 Recharger les skills installés par un hook

1268</h4>

1269 

1270Pour rendre les skills installés par un hook SessionStart disponibles dans la même session, renvoyez `reloadSkills`. La découverte des skills s'exécute normalement avant la fin des hooks SessionStart ; sans ce champ, les fichiers qu'un hook écrit dans `~/.claude/skills/` ou `.claude/skills/` peuvent être absents lors de l'exécution du premier prompt.

1261 1271 

1262Utilisez `reloadSkills` lorsqu'un hook SessionStart installe ou met à jour des skills. La découverte des skills s'exécute normalement avant la fin des hooks SessionStart ; les fichiers que le hook écrit dans `~/.claude/skills/` ou `.claude/skills/` n'apparaîtraient donc sinon que dans la session suivante. Cet exemple synchronise un dépôt de skills partagé et demande la nouvelle analyse :1272Cet exemple synchronise un dépôt de skills partagé et demande une nouvelle analyse :

1263 1273 

1264```bash theme={null}1274```bash theme={null}

1265#!/bin/bash1275#!/bin/bash


1270echo '{"hookSpecificOutput": {"hookEventName": "SessionStart", "reloadSkills": true}}'1280echo '{"hookSpecificOutput": {"hookEventName": "SessionStart", "reloadSkills": true}}'

1271```1281```

1272 1282 

1273L'URL du dépôt est un exemple fictif ; remplacez-la par votre propre dépôt de skills. Avec cette URL fictive, le clonage échoue et affiche un message `fatal:` sur stderr. La sortie stderr d'un hook SessionStart qui se termine avec le code 0 est purement informative, donc la demande `reloadSkills` s'applique tout de même.1283L'URL du dépôt est un exemple fictif. Remplacez-la par votre propre dépôt de skills.

1274 1284 

1275<h4 id="persist-environment-variables">1285<h4 id="persist-environment-variables">

1276 Conserver les variables d'environnement1286 Conserver les variables d'environnement

Details

91| `-y, --yes` | Acceptez la commande d'installation affichée sans l'invite `Run this command now?`. Ignoré quand la commande s'exécute dans une session Claude Code, comme depuis l'outil Bash ou un hook. Nécessite Claude Code v2.1.229 ou ultérieur |91| `-y, --yes` | Acceptez la commande d'installation affichée sans l'invite `Run this command now?`. Ignoré quand la commande s'exécute dans une session Claude Code, comme depuis l'outil Bash ou un hook. Nécessite Claude Code v2.1.229 ou ultérieur |

92| `--accept-command <sha256>` | Acceptez la commande d'installation affichée dont le `sha256` une exécution [`--json` précédente](#plugin-json-result) a rapporté dans `shownCommand`, à la place de `-y`. Ne peut pas être combiné avec `-y`. Voir [Accepter une commande d'installation affichée](#accept-a-displayed-install-command). Nécessite Claude Code v2.1.271 ou ultérieur |92| `--accept-command <sha256>` | Acceptez la commande d'installation affichée dont le `sha256` une exécution [`--json` précédente](#plugin-json-result) a rapporté dans `shownCommand`, à la place de `-y`. Ne peut pas être combiné avec `-y`. Voir [Accepter une commande d'installation affichée](#accept-a-displayed-install-command). Nécessite Claude Code v2.1.271 ou ultérieur |

93| `--json` | Affiche le résultat en tant qu'un objet JSON sur la dernière ligne de stdout au lieu du message lisible par l'homme, pour utilisation dans les scripts. Voir [Format de résultat JSON](#plugin-json-result). Nécessite Claude Code v2.1.268 ou ultérieur |93| `--json` | Affiche le résultat en tant qu'un objet JSON sur la dernière ligne de stdout au lieu du message lisible par l'homme, pour utilisation dans les scripts. Voir [Format de résultat JSON](#plugin-json-result). Nécessite Claude Code v2.1.268 ou ultérieur |

94| `--marketplace <source>` | Installez `<plugin>`, donné par son nom nu, depuis la marketplace à `<source>`, en ajoutant d'abord la marketplace si vous ne l'avez pas encore ajoutée. Voir [Ajouter une marketplace et installer en une seule commande](/docs/fr/plugins/install#add-a-marketplace-and-install-in-one-command). Nécessite Claude Code v2.1.292 ou ultérieur |

94 95 

95Exécutez `claude plugin install --help` dans votre shell pour voir chaque option que votre version supporte.96Exécutez `claude plugin install --help` dans votre shell pour voir chaque option que votre version supporte.

96 97 

Details

189 189 

190* **Portée** : portée utilisateur par défaut. Passez `--scope project` ou `--scope local` pour le modifier.190* **Portée** : portée utilisateur par défaut. Passez `--scope project` ou `--scope local` pour le modifier.

191* **Quand les plugins se chargent** : les plugins qu'il installe se chargent la prochaine fois que vous démarrez Claude Code, ou lorsque vous exécutez `/reload-plugins` dans une session déjà ouverte.191* **Quand les plugins se chargent** : les plugins qu'il installe se chargent la prochaine fois que vous démarrez Claude Code, ou lorsque vous exécutez `/reload-plugins` dans une session déjà ouverte.

192* **La marketplace doit d'abord être ajoutée** : sur une machine où personne n'a ouvert une session Claude Code interactive, la marketplace officielle n'est pas enregistrée, donc un script qui installe à partir de celle-ci exécute `claude plugin marketplace add anthropics/claude-plugins-official` avant l'installation.192* **La marketplace sur une nouvelle machine** : sur une machine où personne n'a encore ouvert de session Claude Code interactive, la marketplace officielle n'est pas enregistrée, donc un script qui installe à partir de celle-ci exécute `claude plugin marketplace add anthropics/claude-plugins-official` avant l'installation. Consultez [Ajouter et installer à partir de votre shell](#add-and-install-from-your-shell).

193 193 

194```bash theme={null}194```bash theme={null}

195claude plugin install formatter@your-org --scope project195claude plugin install formatter@your-org --scope project


232 Ajouter une marketplace et installer en une seule commande232 Ajouter une marketplace et installer en une seule commande

233</h3>233</h3>

234 234 

235Pour installer un plugin à partir d'une marketplace que vous n'avez pas encore ajoutée, exécutez `/plugin install` dans une session Claude Code et nommez la source de la marketplace avec `--marketplace`. Nécessite Claude Code v2.1.275 ou ultérieur.235Pour installer un plugin à partir d'une marketplace que vous n'avez pas encore ajoutée, nommez la source de la marketplace avec `--marketplace` dans la commande d'installation, dans une session ou à partir de votre shell. La source prend [les mêmes formes que `/plugin marketplace add`](#add-a-marketplace), telles que GitHub `owner/repo`, une URL git ou un chemin local. Donnez le nom du plugin seul, sans suffixe `@marketplace`.

236 

237<h4 id="add-and-install-in-a-session">

238 Ajouter et installer dans une session

239</h4>

240 

241Exécutez `/plugin install` dans une session Claude Code avec le plugin et la source. Nécessite Claude Code v2.1.275 ou ultérieur. Dans une session, la source ne peut pas contenir d'espaces.

236 242 

237```text theme={null}243```text theme={null}

238/plugin install deploy-helper --marketplace your-org/plugins244/plugin install deploy-helper --marketplace your-org/plugins

239```245```

240 246 

241La source prend [les mêmes formes que `/plugin marketplace add`](#add-a-marketplace), telles que GitHub `owner/repo`, une URL git ou un chemin local, sauf qu'elle ne peut pas contenir d'espaces. Donnez le nom du plugin seul, sans suffixe `@marketplace`.

242 

243Si vous n'avez pas encore ajouté cette marketplace, Claude Code affiche la source qu'il a résolue et vous demande de confirmer avant de l'ajouter. Une fois la marketplace ajoutée, les détails du plugin s'ouvrent et vous choisissez une [portée d'installation](#install-a-plugin). Si la source correspond à une marketplace que vous avez déjà ajoutée, Claude Code ignore la confirmation et ouvre les détails du plugin dans cette marketplace.247Si vous n'avez pas encore ajouté cette marketplace, Claude Code affiche la source qu'il a résolue et vous demande de confirmer avant de l'ajouter. Une fois la marketplace ajoutée, les détails du plugin s'ouvrent et vous choisissez une [portée d'installation](#install-a-plugin). Si la source correspond à une marketplace que vous avez déjà ajoutée, Claude Code ignore la confirmation et ouvre les détails du plugin dans cette marketplace.

244 248 

249<h4 id="add-and-install-from-your-shell">

250 Ajouter et installer à partir de votre shell

251</h4>

252 

253Dans votre shell, sans démarrer de session, exécutez `claude plugin install` avec le plugin et la source. Nécessite Claude Code v2.1.292 ou ultérieur.

254 

255```bash theme={null}

256claude plugin install deploy-helper --marketplace your-org/plugins

257```

258 

259La commande shell ajoute la marketplace sans étape de confirmation. Une marketplace que vous avez déjà ajoutée à partir de cette source est réutilisée. Une nouvelle marketplace est ajoutée avec les mêmes [vérifications de politique d'organisation](/docs/fr/plugins/org#restrict-what-users-can-install) que `claude plugin marketplace add`, et elle est déclarée dans vos paramètres utilisateur même lorsque vous passez `--scope project`.

260 

245<h3 id="add-a-private-marketplace">261<h3 id="add-a-private-marketplace">

246 Ajouter une marketplace privée262 Ajouter une marketplace privée

247</h3>263</h3>

Details

138| `$.mcp.call` | Appelle un outil sur un serveur MCP connecté, selon les règles de permission de la session |138| `$.mcp.call` | Appelle un outil sur un serveur MCP connecté, selon les règles de permission de la session |

139| `$.model.complete` | Utilise le plan ou la clé API de l'utilisateur pour les appels de modèle |139| `$.model.complete` | Utilise le plan ou la clé API de l'utilisateur pour les appels de modèle |

140| `$.prompt.submit` | Soumet une invite, et peut l'envoyer comme les propres paroles de l'utilisateur |140| `$.prompt.submit` | Soumet une invite, et peut l'envoyer comme les propres paroles de l'utilisateur |

141| `$.session.send` | Envoie un message qu'une autre session ou sous-agent de Claude lit |141| `$.session.send` | Envoie un message que lit le Claude d'une autre session, d'un sous-agent ou d'un [coéquipier](/docs/fr/agent-teams) |

142 142 

143Dans la ligne `hooks:`, [`tool.call`](/docs/fr/plugins/mods/reference#tools) et [`prompt.submit`](/docs/fr/plugins/mods/reference#prompts-and-what-claude-reads) signifient que le mod voit chaque appel d'outil et chaque invite, et peut les changer. [`session.append`](/docs/fr/plugins/mods/reference#session) signifie que le mod peut réécrire chaque ligne de la conversation avant qu'elle ne soit stockée. [`ui.render{component=AskUserQuestion}`](/docs/fr/plugins/mods/interface#change-what-claude-code-already-draws) signifie que le mod peut redessiner la boîte de dialogue que Claude utilise pour poser une question à l'utilisateur. `tool.check` signifie que le mod peut approuver ou refuser un appel d'outil avant qu'une invite de permission n'apparaisse. [Savoir ce qui se passe par défaut](#know-what-happens-by-default) liste lesquels de vos règles et hooks ont la priorité sur sa réponse.143Dans la ligne `hooks:`, [`tool.call`](/docs/fr/plugins/mods/reference#tools) et [`prompt.submit`](/docs/fr/plugins/mods/reference#prompts-and-what-claude-reads) signifient que le mod voit chaque appel d'outil et chaque invite, et peut les changer. [`session.append`](/docs/fr/plugins/mods/reference#session) signifie que le mod peut réécrire chaque ligne de la conversation avant qu'elle ne soit stockée. [`ui.render{component=AskUserQuestion}`](/docs/fr/plugins/mods/interface#change-what-claude-code-already-draws) signifie que le mod peut redessiner la boîte de dialogue que Claude utilise pour poser une question à l'utilisateur. `tool.check` signifie que le mod peut approuver ou refuser un appel d'outil avant qu'une invite de permission n'apparaisse. [Savoir ce qui se passe par défaut](#know-what-happens-by-default) liste lesquels de vos règles et hooks ont la priorité sur sa réponse.

144 144 

Details

159 Envoyer et recevoir des messages entre les sessions159 Envoyer et recevoir des messages entre les sessions

160</h2>160</h2>

161 161 

162Un mod peut envoyer un message en texte brut à une autre de vos sessions ou à l'un des sous-agents de cette session, et observer les messages qui arrivent et partent. `$.session.send({ to, text })` en envoie un, la même livraison que l'outil SendMessage fait. `to` est `{ sessionId }` pour une session, `{ agentId }` pour un sous-agent de `$.agent.list()`, ou l'adresse de chaîne d'où provient un message reçu. L'appel se résout une fois que le message est mis en file d'attente, avec `{ isDelivered: true }`. Quand rien n'a été livré, il se résout avec `{ isDelivered: false, reason }`, et `reason` dit pourquoi.162Un mod peut envoyer un message en texte brut à une autre de vos sessions, à l'un des sous-agents de cette session ou à un coéquipier de son [équipe d'agents](/docs/fr/agent-teams). Il peut aussi observer les messages qui arrivent et partent.

163 

164Pour en envoyer un, appelez `$.session.send({ to, text })`, qui effectue la même livraison que l'outil SendMessage. Définissez `to` selon le destinataire du message :

165 

166* **Une autre de vos sessions** : `{ sessionId }`

167* **Un sous-agent ou un coéquipier** : `{ agentId }`, avec un id provenant de `$.agent.list()`

168* **L'expéditeur d'un message que vous avez reçu** : l'adresse de chaîne d'où provient ce message

169 

170L'appel se résout une fois que le message est mis en file d'attente, avec `{ isDelivered: true }`. Quand rien n'a été livré, il se résout avec `{ isDelivered: false, reason }`, et `reason` dit pourquoi.

163 171 

164Ce hook répond à une commande `/ping`, [enregistrée comme une commande](#add-a-command), en demandant à la session dont vous tapez l'id après un statut :172Ce hook répond à une commande `/ping`, [enregistrée comme une commande](#add-a-command), en demandant à la session dont vous tapez l'id après un statut :

165 173 

Details

281 281 

282`result.usage` contient le nombre de tokens que l'API Claude indique pour une requête, ainsi que le `model` qui a répondu : `input_tokens`, `output_tokens`, `cache_read_input_tokens` et `cache_creation_input_tokens`. Le hook s'exécute aussi pour les requêtes des sous-agents ; vérifiez donc `e.agentId` si vous ne souhaitez traiter que la conversation principale.282`result.usage` contient le nombre de tokens que l'API Claude indique pour une requête, ainsi que le `model` qui a répondu : `input_tokens`, `output_tokens`, `cache_read_input_tokens` et `cache_creation_input_tokens`. Le hook s'exécute aussi pour les requêtes des sous-agents ; vérifiez donc `e.agentId` si vous ne souhaitez traiter que la conversation principale.

283 283 

284Pour voir les appels d'outils que l'API a exécutés elle-même pendant la requête, comme les appels à l'[outil advisor](/docs/fr/advisor), lisez `result.serverToolUses`. Claude Code n'exécute pas ces appels ; aucun hook `tool.call` ou `tool.check` ne se déclenche donc pour eux. Le champ est absent lorsque la réponse ne contient aucun appel de ce type, et il nécessite Claude Code v2.1.290 ou une version ultérieure.

285 

284<h3 id="hook-the-settings-hook-events">286<h3 id="hook-the-settings-hook-events">

285 Gérer les événements des hooks des paramètres287 Gérer les événements des hooks des paramètres

286</h3>288</h3>

Details

209| [`$.ui`](/docs/fr/plugins/mods/interface#pick-where-to-draw) | `resolve`, `invalidate`, `open`, `close`, `panes`, `focus`, `scroll`, `toast`, `status`, `log`, `notice`, `ask`, `copy`, `selection`, `blit` |209| [`$.ui`](/docs/fr/plugins/mods/interface#pick-where-to-draw) | `resolve`, `invalidate`, `open`, `close`, `panes`, `focus`, `scroll`, `toast`, `status`, `log`, `notice`, `ask`, `copy`, `selection`, `blit` |

210| [`$.command`](/docs/fr/plugins/mods/api#add-a-command) | `register`, `run`, `list` |210| [`$.command`](/docs/fr/plugins/mods/api#add-a-command) | `register`, `run`, `list` |

211| [`$.tool`](/docs/fr/plugins/mods/api#add-a-tool) | `register`, `call`, `check`, `list` |211| [`$.tool`](/docs/fr/plugins/mods/api#add-a-tool) | `register`, `call`, `check`, `list` |

212| `$.agent` | `register`, `spawn`, `list` |212| `$.agent` | `register`, `spawn`, `list`. `list()` renvoie les sous-agents et coéquipiers de cette session, chacun avec un `status` parmi `pending`, `running`, `waiting`, `idle`, `completed`, `failed` ou `killed`, où `idle` et `waiting` nécessitent Claude Code v2.1.289 ou une version ultérieure. |

213| [`$.model`](/docs/fr/plugins/mods/api#call-a-model) | `complete`, `fork`, `classify` |213| [`$.model`](/docs/fr/plugins/mods/api#call-a-model) | `complete`, `fork`, `classify` |

214| [`$.prompt`](/docs/fr/plugins/mods/api#start-a-turn-from-a-background-job) | `submit`, `read`, `fill`, `suggest`, `compose`. Claude lit le texte de `submit({ text })` après une phrase qui désigne votre mod comme expéditeur. `submit({ text, asUser: true })` envoie le texte comme s'il s'agissait des propres mots de l'utilisateur, sans cette phrase. |214| [`$.prompt`](/docs/fr/plugins/mods/api#start-a-turn-from-a-background-job) | `submit`, `read`, `fill`, `suggest`, `compose`. Claude lit le texte de `submit({ text })` après une phrase qui désigne votre mod comme expéditeur. `submit({ text, asUser: true })` envoie le texte comme s'il s'agissait des propres mots de l'utilisateur, sans cette phrase. |

215| `$.turn` | `abort` |215| `$.turn` | `abort` |


317| Délai d'expiration de `$.process.run` | 30 secondes par défaut, 10 minutes au maximum |317| Délai d'expiration de `$.process.run` | 30 secondes par défaut, 10 minutes au maximum |

318| `maxTokens` de `$.model.complete` | 1024 par défaut, jusqu'à 64 000 ou la limite de sortie du modèle |318| `maxTokens` de `$.model.complete` | 1024 par défaut, jusqu'à 64 000 ou la limite de sortie du modèle |

319| `$.fs.read` et `$.fs.write` | 4 Mio pour un fichier |319| `$.fs.read` et `$.fs.write` | 4 Mio pour un fichier |

320| La raison `drop` d'un hook ou la raison `deny` de `config.set` | 4 096 caractères. La fin d'une raison plus longue est tronquée, et le drop ou le deny s'applique quand même. La troncature nécessite Claude Code v2.1.292 ou une version ultérieure ; sur les versions antérieures, le hook [échoue](/docs/fr/plugins/mods/events#handle-a-hook-that-fails) à la place. |

320| Texte dans un arbre | Les 100 000 premiers caractères sont dessinés |321| Texte dans un arbre | Les 100 000 premiers caractères sont dessinés |

321| Le `language` ou le `path` d'un `Code`, la `value` d'une option `Select`, ou le `module` d'un `Client` | 10 000 caractères. Si l'un d'eux est plus long, Claude Code [dessine sa propre version du site](/docs/fr/plugins/mods/interface#build-a-tree-from-elements). |322| Le `language` ou le `path` d'un `Code`, la `value` d'une option `Select`, ou le `module` d'un `Client` | 10 000 caractères. Si l'un d'eux est plus long, Claude Code [dessine sa propre version du site](/docs/fr/plugins/mods/interface#build-a-tree-from-elements). |

322| Le `href` d'un `Link` | 2 048 caractères. Un `href` plus long empêche le dessin de l'arbre entier. |323| Le `href` d'un `Link` | 2 048 caractères. Un `href` plus long empêche le dessin de l'arbre entier. |

Details

110* `returned neither { value } nor { deny }` : un stub pour un appel d'API des mods a retourné une valeur nue, ce qui fait échouer le test110* `returned neither { value } nor { deny }` : un stub pour un appel d'API des mods a retourné une valeur nue, ce qui fait échouer le test

111* `no implementation for` suivi d'un nom : votre mod a fait cet appel et aucun stub ne le répond111* `no implementation for` suivi d'un nom : votre mod a fait cet appel et aucun stub ne le répond

112 112 

113Le kit exporte également des mocks en mémoire qui répondent à un espace de noms entier pour vous. `mock.clock(on)` répond à [`$.clock`](/docs/fr/plugins/mods/api#run-work-in-the-background), `mock.store(on, { count: 7 })` répond à `$.store` à partir d'un magasin qui commence par ces entrées, et `mock.env(on, { CI: 'true' })` répond à `$.env.get` à partir de ces variables. `mock.clock` retourne une horloge simulée que votre test avance, afin qu'un test d'une minuterie n'attende pas. `mock.store` ne retourne rien, donc pour vérifier ce que votre mod a enregistré, écrivez vous-même les deux stubs `store` comme le fait le [test de dessin](#test-a-drawing).113Le kit exporte également des mocks prêts à l'emploi pour l'horloge, le magasin, les variables d'environnement et les lignes ajoutées à la conversation :

114 

115* **`mock.clock(on)`** : répond à [`$.clock`](/docs/fr/plugins/mods/api#run-work-in-the-background) et retourne une horloge simulée que votre test avance, afin qu'un test d'une minuterie n'attende pas.

116* **`mock.store(on, { count: 7 })`** : répond à `$.store` à partir d'un magasin qui commence par ces entrées. Il ne retourne rien, donc pour vérifier ce que votre mod a enregistré, écrivez vous-même les deux stubs `store` comme le fait le [test de dessin](#test-a-drawing).

117* **`mock.env(on, { CI: 'true' })`** : répond à `$.env.get` à partir de ces variables.

118* **`mock.session(on)`** : retourne une session simulée dont la méthode `appended()` liste les lignes que votre mod a ajoutées avec [`$.session.append`](/docs/fr/plugins/mods/reference#session), de la plus ancienne à la plus récente ; nécessite Claude Code v2.1.293 ou ultérieur.

114 119 

115<h3 id="follow-the-test-kit’s-rules">120<h3 id="follow-the-test-kit’s-rules">

116 Suivre les règles du kit de test121 Suivre les règles du kit de test


168 Rechercher ce qu'un stub retourne173 Rechercher ce qu'un stub retourne

169</h3>174</h3>

170 175 

171Chaque appel d'API des mods que votre mod fait dans un test a besoin d'un stub qui répond à la place de Claude Code, sauf les quelques-uns que le kit répond lui-même : les appels [`$.ui.invalidate`](/docs/fr/plugins/mods/interface#redraw-when-something-changes) et [`$.state`](/docs/fr/plugins/mods/interface#keep-state). Pour les appels `$.clock`, utilisez `mock.clock(on)`, sinon votre mod `$.clock.now()` échoue avec `no implementation for clock.now`.176Chaque appel d'API des mods que votre mod fait dans un test a besoin d'un stub qui répond à la place de Claude Code, sauf les quelques-uns que le kit répond lui-même : les appels [`$.ui.invalidate`](/docs/fr/plugins/mods/interface#redraw-when-something-changes), [`$.state`](/docs/fr/plugins/mods/interface#keep-state) et `$.session.append`. Pour les appels `$.clock`, utilisez `mock.clock(on)`, sinon votre mod `$.clock.now()` échoue avec `no implementation for clock.now`.

172 177 

173Ce tableau liste ceux que les mods utilisent le plus. La première colonne est l'appel que votre mod fait ou l'événement qu'il transmet avec `next(e)`. La deuxième est la fonction à passer à `on` sous ce nom, afin que la ligne `$.store.get` devienne `on('store.get', ($, e) => ({ value: saved.get(e.key) }))`. Un `'...'` dans un stub marque le texte pour vous à remplir :178Ce tableau liste ceux que les mods utilisent le plus. La première colonne est l'appel que votre mod fait ou l'événement qu'il transmet avec `next(e)`. La deuxième est la fonction à passer à `on` sous ce nom, afin que la ligne `$.store.get` devienne `on('store.get', ($, e) => ({ value: saved.get(e.key) }))`. Un `'...'` dans un stub marque le texte pour vous à remplir :

174 179 

Details

129* Ajouter la marketplace une fois : `claude plugin marketplace add your-org/your-marketplace`, où l'argument est un raccourci GitHub `owner/repo`, une URL ou un chemin129* Ajouter la marketplace une fois : `claude plugin marketplace add your-org/your-marketplace`, où l'argument est un raccourci GitHub `owner/repo`, une URL ou un chemin

130* Installer le plugin : `claude plugin install deploy-helper@your-marketplace`130* Installer le plugin : `claude plugin install deploy-helper@your-marketplace`

131* Ou faire les deux à partir d'une session : `/plugin install deploy-helper --marketplace your-org/your-marketplace`. Nécessite Claude Code v2.1.275 ou ultérieur. Voir [Ajouter une marketplace et installer en une commande](/docs/fr/plugins/install#add-a-marketplace-and-install-in-one-command)131* Ou faire les deux à partir d'une session : `/plugin install deploy-helper --marketplace your-org/your-marketplace`. Nécessite Claude Code v2.1.275 ou ultérieur. Voir [Ajouter une marketplace et installer en une commande](/docs/fr/plugins/install#add-a-marketplace-and-install-in-one-command)

132* Ou faire les deux à partir du shell en une seule commande : `claude plugin install deploy-helper --marketplace your-org/your-marketplace`. Nécessite Claude Code v2.1.292 ou ultérieur

132 133 

133<h3 id="ship-updates-to-users">134<h3 id="ship-updates-to-users">

134 Livrer les mises à jour aux utilisateurs135 Livrer les mises à jour aux utilisateurs

Details

163 `Invalid marketplace source format`163 `Invalid marketplace source format`

164</h3>164</h3>

165 165 

166Vous avez exécuté `/plugin marketplace add <source>` ou `claude plugin marketplace add <source>`, et Claude Code a répondu `Invalid marketplace source format. Try: owner/repo, https://..., or ./path`.166Vous avez exécuté `/plugin marketplace add <source>`, `claude plugin marketplace add <source>` ou `claude plugin install <plugin> --marketplace <source>`, et Claude Code a répondu `Invalid marketplace source format. Try: owner/repo, https://..., or ./path`.

167 167 

168Claude Code accepte une source dans l'une de ces formes :168Claude Code accepte une source dans l'une de ces formes :

169 169 


568 `Marketplace "<name>" is already added from a different source`568 `Marketplace "<name>" is already added from a different source`

569</h3>569</h3>

570 570 

571Vous avez confirmé l'ajout d'une marketplace via [`/plugin install <plugin> --marketplace <source>`](/docs/fr/plugins/install#add-a-marketplace-and-install-in-one-command), et le catalogue que Claude Code a récupéré à partir de cette source a le même nom qu'une marketplace que vous avez déjà ajoutée à partir d'une source différente. Claude Code conserve la marketplace existante au lieu de la remplacer, et le plugin n'est pas installé.571Vous avez indiqué une nouvelle source de marketplace avec [`--marketplace <source>` dans la commande d'installation](/docs/fr/plugins/install#add-a-marketplace-and-install-in-one-command), dans une session ou depuis votre shell. Le catalogue que Claude Code a récupéré à partir de cette source a le même nom qu'une marketplace que vous avez déjà ajoutée à partir d'une source différente. Claude Code conserve la marketplace existante au lieu de la remplacer, et le plugin n'est pas installé.

572 572 

573Le message complet ressemble à ceci :573Le message complet ressemble à ceci :

574 574 

sub-agents.md +3 −1

Details

609Le mode de permission de la conversation principale décide si Claude Code utilise la valeur que vous définissez :609Le mode de permission de la conversation principale décide si Claude Code utilise la valeur que vous définissez :

610 610 

611* Lorsque la conversation principale est en `bypassPermissions`, `acceptEdits` ou [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), le sous-agent s'exécute dans ce même mode et Claude Code ignore le `permissionMode` que vous définissez. En mode auto, le classifieur évalue les appels d'outils du sous-agent avec les règles de blocage et d'autorisation de la conversation principale. Lorsque le sous-agent se termine, le classifieur examine également son travail et son rapport final avant que le rapport soit livré, comme [Comment le mode auto gère les sous-agents](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) le décrit.611* Lorsque la conversation principale est en `bypassPermissions`, `acceptEdits` ou [mode auto](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode), le sous-agent s'exécute dans ce même mode et Claude Code ignore le `permissionMode` que vous définissez. En mode auto, le classifieur évalue les appels d'outils du sous-agent avec les règles de blocage et d'autorisation de la conversation principale. Lorsque le sous-agent se termine, le classifieur examine également son travail et son rapport final avant que le rapport soit livré, comme [Comment le mode auto gère les sous-agents](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) le décrit.

612* Lorsque la conversation principale est en mode `default`, `dontAsk` ou `plan`, le sous-agent s'exécute dans le mode de permission que vous définissez, sauf `bypassPermissions`. Un sous-agent qui déclare `bypassPermissions` conserve le mode de la conversation principale à la place. L'exception `bypassPermissions` nécessite Claude Code v2.1.267 ou ultérieur.612* Lorsque la conversation principale est en mode `default`, `dontAsk` ou `plan`, le sous-agent s'exécute dans le mode de permission que vous définissez. Il conserve plutôt le mode de permission de la conversation principale dans les cas suivants :

613 * Vous définissez `bypassPermissions`. L'exception `bypassPermissions` nécessite Claude Code v2.1.267 ou ultérieur.

614 * Vous définissez `auto` et le [mode auto n'est pas disponible](/docs/fr/permission-modes#eliminate-prompts-with-auto-mode) pour le sous-agent, par exemple lorsqu'un fichier de paramètres définit [`disableAutoMode`](/docs/fr/settings-reference#disableautomode) ou que le modèle du sous-agent ne prend pas en charge le mode auto.

613 615 

614`permissionMode` accepte ces valeurs, et `manual` comme alias pour `default` :616`permissionMode` accepte ces valeurs, et `manual` comme alias pour `default` :

615 617 

vs-code.md +1 −1

Details

596| `attachOpenFile` | `true` | Ajoutez le fichier ouvert dans l'éditeur à vos messages et affichez-le dans la zone de saisie. Lorsqu'il est désactivé, seul votre texte sélectionné est ajouté. Nécessite Claude Code v2.1.271 ou ultérieur |596| `attachOpenFile` | `true` | Ajoutez le fichier ouvert dans l'éditeur à vos messages et affichez-le dans la zone de saisie. Lorsqu'il est désactivé, seul votre texte sélectionné est ajouté. Nécessite Claude Code v2.1.271 ou ultérieur |

597| `useCtrlEnterToSend` | `false` | Utilisez Ctrl/Cmd+Entrée au lieu d'Entrée pour envoyer les invites |597| `useCtrlEnterToSend` | `false` | Utilisez Ctrl/Cmd+Entrée au lieu d'Entrée pour envoyer les invites |

598| `scrollToBottomOnSend` | `true` | Faites défiler la conversation vers le bas lorsque vous envoyez un message. Lorsqu'il est désactivé, la conversation reste où vous l'avez laissée. Nécessite Claude Code v2.1.275 ou ultérieur |598| `scrollToBottomOnSend` | `true` | Faites défiler la conversation vers le bas lorsque vous envoyez un message. Lorsqu'il est désactivé, la conversation reste où vous l'avez laissée. Nécessite Claude Code v2.1.275 ou ultérieur |

599| `showMessageTimestamps` | `false` | Affichez le moment où chaque message a été envoyé. Une ligne de date marque le changement de jour. Nécessite Claude Code v2.1.284 ou ultérieur |599| `showMessageTimestamps` | `true` | Affichez le moment où chaque message a été envoyé. Une ligne de date marque le changement de jour. Nécessite Claude Code v2.1.284 ou ultérieur. Avant la v2.1.290, la valeur par défaut était `false` |

600| `enableNewConversationShortcut` | `false` | Activez Cmd/Ctrl+N pour démarrer une nouvelle conversation |600| `enableNewConversationShortcut` | `false` | Activez Cmd/Ctrl+N pour démarrer une nouvelle conversation |

601| `enableReopenClosedSessionShortcut` | `true` | Utilisez Cmd/Ctrl+Maj+T pour rouvrir l'onglet de session Claude le plus récemment fermé. Lorsque le dernier onglet fermé n'était pas une session Claude, le raccourci exécute la commande de réouverture d'éditeur fermé normale de VS Code à la place. |601| `enableReopenClosedSessionShortcut` | `true` | Utilisez Cmd/Ctrl+Maj+T pour rouvrir l'onglet de session Claude le plus récemment fermé. Lorsque le dernier onglet fermé n'était pas une session Claude, le raccourci exécute la commande de réouverture d'éditeur fermé normale de VS Code à la place. |

602| `archiveInactiveSessions` | `14` | [Archivez une session automatiquement](#resume-past-conversations) après ce nombre de jours sans activité : `1`, `2`, `7` ou `14`. Définissez `0` pour le désactiver. Nécessite Claude Code v2.1.265 ou ultérieur |602| `archiveInactiveSessions` | `14` | [Archivez une session automatiquement](#resume-past-conversations) après ce nombre de jours sans activité : `1`, `2`, `7` ou `14`. Définissez `0` pour le désactiver. Nécessite Claude Code v2.1.265 ou ultérieur |