agent-sdk/typescript.md +28 −6
2386 kind: "task-notification";2386 kind: "task-notification";
2387 subkind?: "scheduled-trigger" | "peer-send-message";2387 subkind?: "scheduled-trigger" | "peer-send-message";
2388 fireReason?: string;2388 fireReason?: string;
2389 runId?: string;
2389 }2390 }
2390 | { kind: "coordinator" }2391 | { kind: "coordinator" }
2391 | { kind: "auto-continuation" }2392 | { kind: "auto-continuation" }
2415 2416
2416`fireReason` indique pourquoi une notification `scheduled-trigger` s'est déclenchée, sous la forme d'un court jeton en minuscules comme `scheduled`, `manual`, `retry`, `catch_up`, ou `api`. Les serveurs Anthropic le définissent sur les livraisons d'une [routine](/docs/fr/routines), et votre application le définit quand elle déclare une exécution planifiée. Il est absent quand ni l'un ni l'autre n'en a envoyé. Nécessite TypeScript Agent SDK v0.3.280 ou ultérieur.2417`fireReason` indique pourquoi une notification `scheduled-trigger` s'est déclenchée, sous la forme d'un court jeton en minuscules comme `scheduled`, `manual`, `retry`, `catch_up`, ou `api`. Les serveurs Anthropic le définissent sur les livraisons d'une [routine](/docs/fr/routines), et votre application le définit quand elle déclare une exécution planifiée. Il est absent quand ni l'un ni l'autre n'en a envoyé. Nécessite TypeScript Agent SDK v0.3.280 ou ultérieur.
2417 2418
2419Une tâche en arrière-plan peut s'exécuter plusieurs fois sous le même `task_id`, par exemple lorsque Claude [reprend un sous-agent](/docs/fr/agent-sdk/subagents#resume-subagents). Chaque exécution possède son propre [`run_id`](#sdktaskstartedmessage). Lorsque la notification d'une exécution atteint votre session sous forme de message utilisateur, `runId` sur l'origine `task-notification` de ce message contient la même valeur. Une notification peut arriver après le démarrage de l'exécution suivante de la tâche, et elle porte toujours l'ID de l'exécution précédente. Pour savoir à quelle exécution appartient un tour, comparez `runId`, et non `task_id`. Nécessite le SDK Agent TypeScript v0.3.292 ou une version ultérieure.
2420
2418<h4 id="declare-a-scheduled-run">2421<h4 id="declare-a-scheduled-run">
2419 Déclarer une exécution planifiée2422 Déclarer une exécution planifiée
2420</h4>2423</h4>
3263 Types d'entrée d'outil3266 Types d'entrée d'outil
3264</h2>3267</h2>
3265 3268
32663269Documentation des schémas d'entrée pour tous les outils Claude Code intégrés. Ces types sont exportés depuis `@anthropic-ai/claude-agent-sdk/sdk-tools` et peuvent être utilisés pour les interactions d'outils type-safe.Documentation des schémas d'entrée pour les outils Claude Code intégrés. Ces types sont exportés depuis `@anthropic-ai/claude-agent-sdk/sdk-tools` et peuvent être utilisés pour les interactions d'outils type-safe.
3267 3270
3268<h3 id="toolinputschemas">3271<h3 id="toolinputschemas">
3269 `ToolInputSchemas`3272 `ToolInputSchemas`
4079 Types de sortie d'outils4082 Types de sortie d'outils
4080</h2>4083</h2>
4081 4084
40824085Documentation des schémas de sortie pour tous les outils Claude Code intégrés. Ces types sont exportés depuis `@anthropic-ai/claude-agent-sdk/sdk-tools` et représentent les données de réponse réelles renvoyées par chaque outil.Documentation des schémas de sortie pour les outils Claude Code intégrés. Ces types sont exportés depuis `@anthropic-ai/claude-agent-sdk/sdk-tools` et représentent les données de réponse réelles renvoyées par chaque outil.
4083 4086
4084<h3 id="tooloutputschemas">4087<h3 id="tooloutputschemas">
4085 `ToolOutputSchemas`4088 `ToolOutputSchemas`
5732 `SDKTaskNotificationMessage`5735 `SDKTaskNotificationMessage`
5733</h3>5736</h3>
5734 5737
57355738Notification lorsqu'une tâche en arrière-plan se termine, échoue ou est arrêtée. Les tâches en arrière-plan incluent les commandes Bash `run_in_background`, les surveillances [Monitor](#monitor) et les sous-agents en arrière-plan. Pour le champ `ambient`, consultez [`SDKTaskStartedMessage`](#sdktaskstartedmessage), qui le définit et son exigence de version.Notification lorsqu'une tâche en arrière-plan se termine, échoue ou est arrêtée. Les tâches en arrière-plan incluent les commandes Bash `run_in_background`, les surveillances [Monitor](#monitor) et les sous-agents en arrière-plan. Pour les champs `run_id` et `ambient`, consultez [`SDKTaskStartedMessage`](#sdktaskstartedmessage), qui les définit ainsi que leurs exigences de version.
5736 5739
5737```typescript theme={null}5740```typescript theme={null}
5738type SDKTaskNotificationMessage = {5741type SDKTaskNotificationMessage = {
5739 type: "system";5742 type: "system";
5740 subtype: "task_notification";5743 subtype: "task_notification";
5741 task_id: string;5744 task_id: string;
5745 run_id?: string;
5742 tool_use_id?: string;5746 tool_use_id?: string;
5743 status: "completed" | "failed" | "stopped";5747 status: "completed" | "failed" | "stopped";
5744 reason?: "worker_restart";5748 reason?: "worker_restart";
5911 type: "system";5915 type: "system";
5912 subtype: "task_started";5916 subtype: "task_started";
5913 task_id: string;5917 task_id: string;
5918 run_id?: string;
5914 tool_use_id?: string;5919 tool_use_id?: string;
5915 description: string;5920 description: string;
5916 task_type?: string;5921 task_type?: string;
5923};5928};
5924```5929```
5925 5930
5931`run_id` identifie une exécution de la tâche. Lorsqu'une tâche s'exécute de nouveau sous le même `task_id`, comme un [sous-agent que Claude reprend](/docs/fr/agent-sdk/subagents#resume-subagents), la nouvelle exécution reçoit un nouveau `run_id`. Le champ nécessite Agent SDK v0.3.292 ou version ultérieure. Utilisez-le pour distinguer les exécutions d'une même tâche :
5932
5933* **Associer les messages à une exécution** : les messages `task_started`, [`task_progress`](#sdktaskprogressmessage), [`task_updated`](#sdktaskupdatedmessage) et [`task_notification`](#sdktasknotificationmessage) d'une même exécution portent le même `run_id`. L'entrée de l'exécution dans chaque [`SDKBackgroundTasksChangedMessage`](#sdkbackgroundtaskschangedmessage) le porte également, tout comme le [`runId`](#task-notification-subkinds) sur l'origine du message utilisateur qui livre la notification de l'exécution.
5934* **Détecter un message tardif** : comparés comme de simples chaînes, les ID d'exécution d'une tâche se trient dans l'ordre de démarrage des exécutions ; un message dont le `run_id` se trie avant l'exécution que vous affichez provient donc d'une exécution antérieure. Traitez la valeur comme opaque en dehors de cette comparaison.
5935* **Se rabattre sur `task_id`** : lorsqu'un message ne porte aucun `run_id`, comme le `task_notification` qu'une session reprise émet pour clôturer une tâche que le processus précédent avait démarrée, attribuez-le par `task_id`.
5936
5937Par exemple, ces trois messages, réduits à leurs champs d'identification, proviennent d'un sous-agent en arrière-plan que Claude a repris une fois. Les deux messages `task_started` partagent un `task_id`, et la notification qui a mis fin à la première exécution porte l'ID de la première exécution :
5938
5939```json theme={null}
5940{"subtype": "task_started", "task_id": "a5c2e8f41b09d7a36", "run_id": "0mubbs7i8-6f0c2d41"}
5941{"subtype": "task_notification", "task_id": "a5c2e8f41b09d7a36", "run_id": "0mubbs7i8-6f0c2d41", "status": "completed"}
5942{"subtype": "task_started", "task_id": "a5c2e8f41b09d7a36", "run_id": "0mubc18m1-b7719e05"}
5943```
5944
5926`ambient` est `true` pour les tâches qui ne font pas partie du travail de la session, telles que les tâches que Claude Code exécute pour son propre fonctionnement. Les surveillances de mise à jour en direct sont également ambiantes, y compris les surveillances que l'utilisateur a demandées. Excluez les tâches ambiantes des indicateurs d'activité. Le champ nécessite Agent SDK v0.3.247 ou version ultérieure.5945`ambient` est `true` pour les tâches qui ne font pas partie du travail de la session, telles que les tâches que Claude Code exécute pour son propre fonctionnement. Les surveillances de mise à jour en direct sont également ambiantes, y compris les surveillances que l'utilisateur a demandées. Excluez les tâches ambiantes des indicateurs d'activité. Le champ nécessite Agent SDK v0.3.247 ou version ultérieure.
5927 5946
5928`ambient` apparaît également sur [`SDKTaskNotificationMessage`](#sdktasknotificationmessage) et sur les entrées [`SDKBackgroundTasksChangedMessage`](#sdkbackgroundtaskschangedmessage).5947`ambient` apparaît également sur [`SDKTaskNotificationMessage`](#sdktasknotificationmessage) et sur les entrées [`SDKBackgroundTasksChangedMessage`](#sdkbackgroundtaskschangedmessage).
5946 `SDKTaskProgressMessage`5965 `SDKTaskProgressMessage`
5947</h3>5966</h3>
5948 5967
59495968Émis périodiquement pendant qu'un sous-agent ou une tâche en arrière-plan s'exécute.Émis périodiquement pendant qu'un sous-agent ou une tâche en arrière-plan s'exécute. Pour le champ `run_id`, consultez [`SDKTaskStartedMessage`](#sdktaskstartedmessage), qui le définit ainsi que son exigence de version.
5950 5969
5951Pour une tâche de sous-agent, le champ `summary` porte un résumé de progression généré par le modèle et n'est rempli que lorsque [`agentProgressSummaries`](#options) est activé. Pour un [appel d'outil MCP mis en arrière-plan](/docs/fr/mcp#automatic-backgrounding-of-long-tool-calls), `summary` porte le dernier progrès signalé par le serveur MCP et ne dépend pas de cette option.5970Pour une tâche de sous-agent, le champ `summary` porte un résumé de progression généré par le modèle et n'est rempli que lorsque [`agentProgressSummaries`](#options) est activé. Pour un [appel d'outil MCP mis en arrière-plan](/docs/fr/mcp#automatic-backgrounding-of-long-tool-calls), `summary` porte le dernier progrès signalé par le serveur MCP et ne dépend pas de cette option.
5952 5971
5955 type: "system";5974 type: "system";
5956 subtype: "task_progress";5975 subtype: "task_progress";
5957 task_id: string;5976 task_id: string;
5977 run_id?: string;
5958 tool_use_id?: string;5978 tool_use_id?: string;
5959 description: string;5979 description: string;
5960 subagent_type?: string;5980 subagent_type?: string;
5974 `SDKTaskUpdatedMessage`5994 `SDKTaskUpdatedMessage`
5975</h3>5995</h3>
5976 5996
59775997Émis lorsque l'état d'une tâche en arrière-plan change, par exemple lorsqu'elle passe de `running` à `completed`. Fusionnez `patch` dans votre carte de tâches locale indexée par `task_id`. Le champ `end_time` est un horodatage d'époque Unix en millisecondes, comparable avec `Date.now()`.Émis lorsque l'état d'une tâche en arrière-plan change, par exemple lorsqu'elle passe de `running` à `completed`. Fusionnez `patch` dans votre carte de tâches locale indexée par `task_id`. Le champ `end_time` est un horodatage d'époque Unix en millisecondes, comparable avec `Date.now()`. Pour le champ `run_id`, consultez [`SDKTaskStartedMessage`](#sdktaskstartedmessage), qui le définit ainsi que son exigence de version.
5978 5998
5979```typescript theme={null}5999```typescript theme={null}
5980type SDKTaskUpdatedMessage = {6000type SDKTaskUpdatedMessage = {
5981 type: "system";6001 type: "system";
5982 subtype: "task_updated";6002 subtype: "task_updated";
5983 task_id: string;6003 task_id: string;
6004 run_id?: string;
5984 patch: {6005 patch: {
5985 status?: "pending" | "running" | "completed" | "failed" | "killed";6006 status?: "pending" | "running" | "completed" | "failed" | "killed";
5986 description?: string;6007 description?: string;
5998 `SDKBackgroundTasksChangedMessage`6019 `SDKBackgroundTasksChangedMessage`
5999</h3>6020</h3>
6000 6021
60016022É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.É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 les champs `run_id` et `parent_task_id` de chaque entrée, consultez [`SDKTaskStartedMessage`](#sdktaskstartedmessage), qui les définit ainsi que leurs exigences de version.
6002 6023
6003Le 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é.6024Le 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é.
6004 6025
6016 subtype: "background_tasks_changed";6037 subtype: "background_tasks_changed";
6017 tasks: {6038 tasks: {
6018 task_id: string;6039 task_id: string;
6040 run_id?: string;
6019 task_type: string;6041 task_type: string;
6020 subagent_type?: string;6042 subagent_type?: string;
6021 description: string;6043 description: string;