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` indica perché è scattata una notifica `scheduled-trigger`, come breve token in minuscolo quale `scheduled`, `manual`, `retry`, `catch_up` o `api`. I server Anthropic lo impostano sulle consegne di una [routine](/docs/it/routines), e la tua applicazione lo imposta quando dichiara un'esecuzione pianificata. È assente quando nessuno dei due ne ha inviato uno. Richiede TypeScript Agent SDK v0.3.280 o successivo.2417`fireReason` indica perché è scattata una notifica `scheduled-trigger`, come breve token in minuscolo quale `scheduled`, `manual`, `retry`, `catch_up` o `api`. I server Anthropic lo impostano sulle consegne di una [routine](/docs/it/routines), e la tua applicazione lo imposta quando dichiara un'esecuzione pianificata. È assente quando nessuno dei due ne ha inviato uno. Richiede TypeScript Agent SDK v0.3.280 o successivo.
2417 2418
2419Un'attività in background può essere eseguita più di una volta con lo stesso `task_id`, ad esempio quando Claude [riprende un subagent](/docs/it/agent-sdk/subagents#resume-subagents). Ogni esecuzione ha il proprio [`run_id`](#sdktaskstartedmessage). Quando la notifica di un'esecuzione raggiunge la tua sessione come messaggio utente, `runId` sull'origine `task-notification` di quel messaggio contiene lo stesso valore. Una notifica può arrivare dopo che l'esecuzione successiva dell'attività è iniziata, e riporta comunque l'ID dell'esecuzione precedente. Per capire a quale esecuzione appartiene un turno, confronta `runId`, non `task_id`. Richiede TypeScript Agent SDK v0.3.292 o versioni successive.
2420
2418<h4 id="declare-a-scheduled-run">2421<h4 id="declare-a-scheduled-run">
2419 Dichiarare un'esecuzione pianificata2422 Dichiarare un'esecuzione pianificata
2420</h4>2423</h4>
3263 Tipi di input dei tool3266 Tipi di input dei tool
3264</h2>3267</h2>
3265 3268
32663269Documentazione degli schemi di input per tutti i tool Claude Code incorporati. Questi tipi vengono esportati da `@anthropic-ai/claude-agent-sdk/sdk-tools` e possono essere usati per le interazioni dei tool type-safe.Documentazione degli schemi di input per i tool Claude Code incorporati. Questi tipi vengono esportati da `@anthropic-ai/claude-agent-sdk/sdk-tools` e possono essere usati per le interazioni dei tool type-safe.
3267 3270
3268<h3 id="toolinputschemas">3271<h3 id="toolinputschemas">
3269 `ToolInputSchemas`3272 `ToolInputSchemas`
4079 Tipi di output degli strumenti4082 Tipi di output degli strumenti
4080</h2>4083</h2>
4081 4084
40824085Documentazione degli schemi di output per tutti gli strumenti Claude Code incorporati. Questi tipi vengono esportati da `@anthropic-ai/claude-agent-sdk/sdk-tools` e rappresentano i dati di risposta effettivi restituiti da ogni strumento.Documentazione degli schemi di output per gli strumenti Claude Code incorporati. Questi tipi vengono esportati da `@anthropic-ai/claude-agent-sdk/sdk-tools` e rappresentano i dati di risposta effettivi restituiti da ogni strumento.
4083 4086
4084<h3 id="tooloutputschemas">4087<h3 id="tooloutputschemas">
4085 `ToolOutputSchemas`4088 `ToolOutputSchemas`
5732 `SDKTaskNotificationMessage`5735 `SDKTaskNotificationMessage`
5733</h3>5736</h3>
5734 5737
57355738Notifica inviata quando un'attività in background viene completata, fallisce o viene arrestata. Le attività in background includono i comandi Bash `run_in_background`, le osservazioni [Monitor](#monitor) e i subagent in background. Per il campo `ambient`, consulta [`SDKTaskStartedMessage`](#sdktaskstartedmessage), che lo definisce insieme al relativo requisito di versione.Notifica inviata quando un'attività in background viene completata, fallisce o viene arrestata. Le attività in background includono i comandi Bash `run_in_background`, le osservazioni [Monitor](#monitor) e i subagent in background. Per i campi `run_id` e `ambient`, consulta [`SDKTaskStartedMessage`](#sdktaskstartedmessage), che li definisce insieme ai relativi requisiti di versione.
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` identifica una singola esecuzione dell'attività. Quando un'attività viene eseguita di nuovo con lo stesso `task_id`, come un [subagent che Claude riprende](/docs/it/agent-sdk/subagents#resume-subagents), la nuova esecuzione riceve un nuovo `run_id`. Il campo richiede Agent SDK v0.3.292 o versioni successive. Usalo per tenere distinte le esecuzioni di una stessa attività:
5932
5933* **Associare i messaggi a un'esecuzione**: i messaggi `task_started`, [`task_progress`](#sdktaskprogressmessage), [`task_updated`](#sdktaskupdatedmessage) e [`task_notification`](#sdktasknotificationmessage) di una stessa esecuzione riportano lo stesso `run_id`. Lo riporta anche la voce dell'esecuzione in ogni [`SDKBackgroundTasksChangedMessage`](#sdkbackgroundtaskschangedmessage), così come il [`runId`](#task-notification-subkinds) nell'origine del messaggio dell'utente che consegna la notifica dell'esecuzione.
5934* **Rilevare un messaggio in ritardo**: confrontati come semplici stringhe, gli ID di esecuzione di un'attività si ordinano nell'ordine in cui le esecuzioni sono iniziate, quindi un messaggio il cui `run_id` viene ordinato prima dell'esecuzione che stai mostrando proviene da un'esecuzione precedente. A parte questo confronto, tratta il valore come opaco.
5935* **Ricorrere a `task_id`**: quando un messaggio non riporta alcun `run_id`, come il `task_notification` che una sessione ripresa emette per chiudere un'attività avviata dal processo precedente, attribuiscilo tramite `task_id`.
5936
5937Ad esempio, questi tre messaggi, ridotti ai loro campi identificativi, provengono da un subagent in background che Claude ha ripreso una volta. I due messaggi `task_started` condividono un `task_id`, e la notifica che ha terminato la prima esecuzione riporta l'ID della prima esecuzione:
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` è `true` per le attività che non fanno parte del lavoro della sessione, come le attività che Claude Code esegue per il proprio funzionamento. Anche gli osservatori di aggiornamenti in tempo reale sono ambient, compresi quelli richiesti dall'utente. Escludi le attività ambient dagli indicatori di attività. Il campo richiede Agent SDK v0.3.247 o versioni successive.5945`ambient` è `true` per le attività che non fanno parte del lavoro della sessione, come le attività che Claude Code esegue per il proprio funzionamento. Anche gli osservatori di aggiornamenti in tempo reale sono ambient, compresi quelli richiesti dall'utente. Escludi le attività ambient dagli indicatori di attività. Il campo richiede Agent SDK v0.3.247 o versioni successive.
5927 5946
5928`ambient` compare anche in [`SDKTaskNotificationMessage`](#sdktasknotificationmessage) e nelle voci di [`SDKBackgroundTasksChangedMessage`](#sdkbackgroundtaskschangedmessage).5947`ambient` compare anche in [`SDKTaskNotificationMessage`](#sdktasknotificationmessage) e nelle voci di [`SDKBackgroundTasksChangedMessage`](#sdkbackgroundtaskschangedmessage).
5946 `SDKTaskProgressMessage`5965 `SDKTaskProgressMessage`
5947</h3>5966</h3>
5948 5967
59495968Emesso periodicamente mentre un subagent o un'attività in background è in esecuzione.Emesso periodicamente mentre un subagent o un'attività in background è in esecuzione. Per il campo `run_id`, consulta [`SDKTaskStartedMessage`](#sdktaskstartedmessage), che lo definisce insieme al relativo requisito di versione.
5950 5969
5951Per un'attività di subagent, il campo `summary` contiene un riepilogo dell'avanzamento generato dal modello ed è popolato solo quando [`agentProgressSummaries`](#options) è abilitato. Per una [chiamata a uno strumento MCP spostata in background](/docs/it/mcp#automatic-backgrounding-of-long-tool-calls), `summary` contiene l'ultimo avanzamento riportato dal server MCP e non dipende da tale opzione.5970Per un'attività di subagent, il campo `summary` contiene un riepilogo dell'avanzamento generato dal modello ed è popolato solo quando [`agentProgressSummaries`](#options) è abilitato. Per una [chiamata a uno strumento MCP spostata in background](/docs/it/mcp#automatic-backgrounding-of-long-tool-calls), `summary` contiene l'ultimo avanzamento riportato dal server MCP e non dipende da tale opzione.
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
59775997Emesso quando lo stato di un'attività in background cambia, ad esempio quando passa da `running` a `completed`. Fai il merge di `patch` nella tua mappa locale delle attività con chiave `task_id`. Il campo `end_time` è un timestamp Unix epoch in millisecondi, confrontabile con `Date.now()`.Emesso quando lo stato di un'attività in background cambia, ad esempio quando passa da `running` a `completed`. Fai il merge di `patch` nella tua mappa locale delle attività con chiave `task_id`. Il campo `end_time` è un timestamp Unix epoch in millisecondi, confrontabile con `Date.now()`. Per il campo `run_id`, consulta [`SDKTaskStartedMessage`](#sdktaskstartedmessage), che lo definisce insieme al relativo requisito di versione.
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
60016022Emesso ogni volta che l'insieme delle attività in background attive cambia: un'attività inizia, viene completata o viene terminata; un agente in primo piano passa in background; oppure cambia il campo `description`, `ambient` o `parent_task_id` di un'attività. Per il campo `parent_task_id` di ciascuna voce, consulta [`SDKTaskStartedMessage`](#sdktaskstartedmessage), che lo definisce insieme al relativo requisito di versione.Emesso ogni volta che l'insieme delle attività in background attive cambia: un'attività inizia, viene completata o viene terminata; un agente in primo piano passa in background; oppure cambia il campo `description`, `ambient` o `parent_task_id` di un'attività. Per i campi `run_id` e `parent_task_id` di ciascuna voce, consulta [`SDKTaskStartedMessage`](#sdktaskstartedmessage), che li definisce insieme ai relativi requisiti di versione.
6002 6023
6003L'array `tasks` è l'intero insieme attivo. Sostituisci qualsiasi insieme memorizzato nella cache con ogni payload invece di abbinare gli eventi `task_started` e `task_notification`, in modo che la successiva modifica dell'insieme corregga qualsiasi evento che ti sei perso.6024L'array `tasks` è l'intero insieme attivo. Sostituisci qualsiasi insieme memorizzato nella cache con ogni payload invece di abbinare gli eventi `task_started` e `task_notification`, in modo che la successiva modifica dell'insieme corregga qualsiasi evento che ti sei perso.
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;