12 12
13Claude Code SDK è stato rinominato in **Claude Agent SDK** e la sua documentazione è stata riorganizzata. Questo cambiamento riflette le capacità più ampie dell'SDK per la creazione di agenti AI oltre ai soli compiti di codifica.13Claude Code SDK è stato rinominato in **Claude Agent SDK** e la sua documentazione è stata riorganizzata. Questo cambiamento riflette le capacità più ampie dell'SDK per la creazione di agenti AI oltre ai soli compiti di codifica.
14 14
15State migrando da OpenAI Agents SDK? La [ricetta di migrazione da OpenAI Agents SDK](https://platform.claude.com/cookbook/claude-agent-sdk-04-migrating-from-openai-agents-sdk) mappa ogni primitiva su Claude Agent SDK attraverso un singolo esempio pratico.
16
15<h2 id="what’s-changed">17<h2 id="what’s-changed">
16 Cosa è cambiato18 Cosa è Cambiato
17</h2>19</h2>
18 20
19| Aspetto | Precedente | Nuovo |21| Aspetto | Precedente | Nuovo |
20| :--------------------------------- | :-------------------------- | :------------------------------- |22| :--------------------------- | :-------------------------- | :---------------------------------------------------------------------- |
21| **Nome del pacchetto (TS/JS)** | `@anthropic-ai/claude-code` | `@anthropic-ai/claude-agent-sdk` |23| **Nome Pacchetto (TS/JS)** | `@anthropic-ai/claude-code` | `@anthropic-ai/claude-agent-sdk` |
22| **Pacchetto Python** | `claude-code-sdk` | `claude-agent-sdk` |24| **Pacchetto Python** | `claude-code-sdk` | `claude-agent-sdk` |
23| **Posizione della documentazione** | Documentazione Claude Code | API Guide → Sezione Agent SDK |25| **Posizione Documentazione** | Claude Code docs | Claude Code docs → sezione dedicata [Agent SDK](/docs/it/agent-sdk/overview) |
24
25<Note>
26 **Modifiche alla documentazione:** La documentazione di Agent SDK è stata spostata dalla documentazione di Claude Code alla API Guide in una sezione dedicata [Agent SDK](/it/agent-sdk/overview). La documentazione di Claude Code ora si concentra sullo strumento CLI e sulle funzionalità di automazione.
27</Note>
28 26
29<h2 id="migration-steps">27<h2 id="migration-steps">
30 Passaggi di migrazione28 Passaggi di migrazione
34 Per progetti TypeScript/JavaScript32 Per progetti TypeScript/JavaScript
35</h3>33</h3>
36 34
37**1. Disinstallare il pacchetto precedente:**35**1. Disinstallare il vecchio pacchetto:**
38 36
39```bash theme={null}37```bash theme={null}
40npm uninstall @anthropic-ai/claude-code38npm uninstall @anthropic-ai/claude-code
58import { query, tool, createSdkMcpServer } from "@anthropic-ai/claude-agent-sdk";56import { query, tool, createSdkMcpServer } from "@anthropic-ai/claude-agent-sdk";
59```57```
60 58
61**4. Aggiornare le dipendenze in package.json:**59**4. Aggiornare package.json:**
62
63Se il pacchetto è elencato nel vostro `package.json`, aggiornarlo:
64
65Prima:
66
67```json theme={null}
68{
69 "dependencies": {
70 "@anthropic-ai/claude-code": "^0.0.42"
71 }
72}
73```
74
75Dopo:
76 60
77```json theme={null}61Se `@anthropic-ai/claude-code` è ancora elencato nel vostro `package.json`, sostituirlo con `@anthropic-ai/claude-agent-sdk` e aggiornare anche l'intervallo di versione, ad esempio da `"^0.0.42"` a `"^0.3.0"`.
78{
79 "dependencies": {
80 "@anthropic-ai/claude-agent-sdk": "^0.2.0"
81 }
82}
83```
84 62
85**5. Rivedere i [cambiamenti significativi](#breaking-changes)**63**5. Consultare [le modifiche di rilievo](#breaking-changes)**
86 64
87Apportare le modifiche al codice necessarie per completare la migrazione.65Apportare le modifiche al codice necessarie per completare la migrazione.
88 66
90 Per progetti Python68 Per progetti Python
91</h3>69</h3>
92 70
93**1. Disinstallare il pacchetto precedente:**71**1. Disinstallare il vecchio pacchetto:**
94 72
95```bash theme={null}73```bash theme={null}
96pip uninstall claude-code-sdk74pip uninstall -y claude-code-sdk
97```75```
98 76
77Se il vecchio pacchetto non è installato, pip stampa `WARNING: Skipping claude-code-sdk as it is not installed.` Questo è previsto e potete continuare al passaggio successivo.
78
99**2. Installare il nuovo pacchetto:**79**2. Installare il nuovo pacchetto:**
100 80
101```bash theme={null}81```bash theme={null}
102pip install claude-agent-sdk82pip install claude-agent-sdk
103```83```
104 84
85Se `claude-code-sdk` è elencato nel vostro `requirements.txt` o `pyproject.toml`, sostituirlo con `claude-agent-sdk`.
86
105**3. Aggiornare gli import:**87**3. Aggiornare gli import:**
106 88
107Modificare tutti gli import da `claude_code_sdk` a `claude_agent_sdk`:89Modificare tutti gli import da `claude_code_sdk` a `claude_agent_sdk`:
114from claude_agent_sdk import query, ClaudeAgentOptions96from claude_agent_sdk import query, ClaudeAgentOptions
115```97```
116 98
117**4. Aggiornare i nomi dei tipi:**99**4. Consultare [le modifiche di rilievo](#breaking-changes)**
118
119Modificare `ClaudeCodeOptions` in `ClaudeAgentOptions`:
120
121```python theme={null}
122# Prima
123from claude_code_sdk import query, ClaudeCodeOptions
124
125options = ClaudeCodeOptions(model="claude-opus-4-7")
126
127# Dopo
128from claude_agent_sdk import query, ClaudeAgentOptions
129
130options = ClaudeAgentOptions(model="claude-opus-4-7")
131```
132
133**5. Rivedere i [cambiamenti significativi](#breaking-changes)**
134 100
135Apportare le modifiche al codice necessarie per completare la migrazione.101Apportare le modifiche al codice necessarie per completare la migrazione.
136 102
137<h2 id="breaking-changes">103<h2 id="breaking-changes">
138 Cambiamenti significativi104 Modifiche di rilievo
139</h2>105</h2>
140 106
141<Warning>107<Warning>
142 Per migliorare l'isolamento e la configurazione esplicita, Claude Agent SDK v0.1.0 introduce cambiamenti significativi per gli utenti che migrano da Claude Code SDK. Rivedere attentamente questa sezione prima di eseguire la migrazione.108 Per migliorare l'isolamento e la configurazione esplicita, Claude Agent SDK v0.1.0 introduce modifiche di rilievo per gli utenti che eseguono la migrazione da Claude Code SDK.
143</Warning>109</Warning>
144 110
145<h3 id="python-claudecodeoptions-renamed-to-claudeagentoptions">111<h3 id="python-claudecodeoptions-renamed-to-claudeagentoptions">
146 Python: ClaudeCodeOptions rinominato in ClaudeAgentOptions112 Python: ClaudeCodeOptions rinominato in ClaudeAgentOptions
147</h3>113</h3>
148 114
149**Cosa è cambiato:** Il tipo Python SDK `ClaudeCodeOptions` è stato rinominato in `ClaudeAgentOptions`.115**Cosa è cambiato:** Il tipo SDK Python `ClaudeCodeOptions` è stato rinominato in `ClaudeAgentOptions`.
150 116
151**Migrazione:**117**Migrazione:**
152 118
153```python theme={null}119```python theme={null}
154# PRIMA (claude-code-sdk)120# BEFORE (claude-code-sdk)
155from claude_code_sdk import query, ClaudeCodeOptions121from claude_code_sdk import query, ClaudeCodeOptions
156 122
157options = ClaudeCodeOptions(model="claude-opus-4-7", permission_mode="acceptEdits")123options = ClaudeCodeOptions(model="claude-opus-4-7", permission_mode="acceptEdits")
158 124
159# DOPO (claude-agent-sdk)125# AFTER (claude-agent-sdk)
160from claude_agent_sdk import query, ClaudeAgentOptions126from claude_agent_sdk import query, ClaudeAgentOptions
161 127
162options = ClaudeAgentOptions(model="claude-opus-4-7", permission_mode="acceptEdits")128options = ClaudeAgentOptions(model="claude-opus-4-7", permission_mode="acceptEdits")
163```129```
164 130
165**Perché è cambiato:** Il nome del tipo ora corrisponde al branding "Claude Agent SDK" e fornisce coerenza nelle convenzioni di denominazione dell'SDK.
166
167<h3 id="system-prompt-no-longer-default">131<h3 id="system-prompt-no-longer-default">
168 System prompt non è più predefinito132 System prompt non è più predefinito
169</h3>133</h3>
176 ```typescript TypeScript theme={null}140 ```typescript TypeScript theme={null}
177 import { query } from "@anthropic-ai/claude-agent-sdk";141 import { query } from "@anthropic-ai/claude-agent-sdk";
178 142
179 // PRIMA (v0.0.x) - Utilizzava il system prompt di Claude Code per impostazione predefinita143 // BEFORE (v0.0.x) - Used Claude Code's system prompt by default
180 const before = query({ prompt: "Hello" });144 const before = query({ prompt: "Hello" });
181 145
182 // DOPO (v0.1.0) - Utilizza un system prompt minimo per impostazione predefinita146 // AFTER (v0.1.0) - Uses minimal system prompt by default
183 // Per ottenere il comportamento precedente, richiedere esplicitamente il preset di Claude Code:147 // To get the old behavior, explicitly request Claude Code's preset:
184 const presetResult = query({148 const presetResult = query({
185 prompt: "Hello",149 prompt: "Hello",
186 options: {150 options: {
188 }152 }
189 });153 });
190 154
191 // Oppure utilizzare un system prompt personalizzato:155 // Or use a custom system prompt:
192 const customResult = query({156 const customResult = query({
193 prompt: "Hello",157 prompt: "Hello",
194 options: {158 options: {
198 ```162 ```
199 163
200 ```python Python theme={null}164 ```python Python theme={null}
201 # PRIMA (v0.0.x) - Utilizzava il system prompt di Claude Code per impostazione predefinita165 from claude_agent_sdk import query, ClaudeAgentOptions
166 import asyncio
167
168
169 async def main():
170 # BEFORE (v0.0.x) - Used Claude Code's system prompt by default
202 async for message in query(prompt="Hello"):171 async for message in query(prompt="Hello"):
203 print(message)172 print(message)
204 173
205 # DOPO (v0.1.0) - Utilizza un system prompt minimo per impostazione predefinita174 # AFTER (v0.1.0) - Uses minimal system prompt by default
206 # Per ottenere il comportamento precedente, richiedere esplicitamente il preset di Claude Code:175 # To get the old behavior, explicitly request Claude Code's preset:
207 from claude_agent_sdk import query, ClaudeAgentOptions
208
209 async for message in query(176 async for message in query(
210 prompt="Hello",177 prompt="Hello",
211 options=ClaudeAgentOptions(178 options=ClaudeAgentOptions(
212 system_prompt={"type": "preset", "preset": "claude_code"} # Utilizzare il preset179 system_prompt={"type": "preset", "preset": "claude_code"} # Use the preset
213 ),180 ),
214 ):181 ):
215 print(message)182 print(message)
216 183
217 # Oppure utilizzare un system prompt personalizzato:184 # Or use a custom system prompt:
218 async for message in query(185 async for message in query(
219 prompt="Hello",186 prompt="Hello",
220 options=ClaudeAgentOptions(system_prompt="You are a helpful coding assistant"),187 options=ClaudeAgentOptions(system_prompt="You are a helpful coding assistant"),
221 ):188 ):
222 print(message)189 print(message)
190
191
192 asyncio.run(main())
223 ```193 ```
224</CodeGroup>194</CodeGroup>
225 195
226**Perché è cambiato:** Fornisce un migliore controllo e isolamento per le applicazioni SDK. Ora è possibile creare agenti con comportamento personalizzato senza ereditare le istruzioni focalizzate sulla CLI di Claude Code.
227
228<h3 id="settings-sources-default">196<h3 id="settings-sources-default">
229 Impostazioni predefinite delle fonti197 Impostazioni predefinite delle origini
230</h3>198</h3>
231 199
232Questo valore predefinito è stato brevemente modificato in v0.1.0 e successivamente ripristinato, quindi non è necessaria alcuna azione di migrazione.200Questa impostazione predefinita è stata brevemente modificata in v0.1.0 per non caricare alcuna impostazione del file system e successivamente ripristinata, quindi non è necessaria alcuna azione di migrazione.
233
234**Comportamento attuale:** Omettendo `settingSources` su `query()` vengono caricate le impostazioni dell'utente, del progetto e del file system locale, corrispondendo alla CLI. Questo include `~/.claude/settings.json`, `.claude/settings.json`, `.claude/settings.local.json`, file CLAUDE.md e comandi personalizzati.
235
236Per eseguire l'isolamento dalle impostazioni del file system, passare un array vuoto:
237
238<CodeGroup>
239 ```typescript TypeScript theme={null}
240 import { query } from "@anthropic-ai/claude-agent-sdk";
241
242 const isolatedResult = query({
243 prompt: "Hello",
244 options: {
245 settingSources: [] // Nessuna impostazione del file system caricata
246 }
247 });
248 201
249 // Oppure caricare solo fonti specifiche:202**Comportamento attuale:** Omettendo `settingSources` su `query()` vengono caricate le impostazioni del file system dell'utente, del progetto e locale, corrispondendo alla CLI. Ciò include `~/.claude/settings.json`, `.claude/settings.json`, `.claude/settings.local.json`, file CLAUDE.md e comandi personalizzati.
250 const projectOnlyResult = query({
251 prompt: "Hello",
252 options: {
253 settingSources: ["project"] // Solo impostazioni del progetto
254 }
255 });
256 ```
257 203
258 ```python Python theme={null}204Per eseguire l'isolamento dalle impostazioni del file system, passare `settingSources: []`, oppure `setting_sources=[]` in Python. Vedere [Control filesystem settings with settingSources](/docs/it/agent-sdk/claude-code-features#control-filesystem-settings-with-settingsources) per informazioni su cosa carica ogni origine.
259 from claude_agent_sdk import query, ClaudeAgentOptions
260 205
261 async for message in query(206L'isolamento è particolarmente importante per le pipeline CI/CD, le applicazioni distribuite, gli ambienti di test e i sistemi multi-tenant in cui le personalizzazioni locali non dovrebbero trapelare.
262 prompt="Hello",
263 options=ClaudeAgentOptions(setting_sources=[]), # Nessuna impostazione del file system caricata
264 ):
265 print(message)
266
267 # Oppure caricare solo fonti specifiche:
268 async for message in query(
269 prompt="Hello",
270 options=ClaudeAgentOptions(
271 setting_sources=["project"] # Solo impostazioni del progetto
272 ),
273 ):
274 print(message)
275 ```
276</CodeGroup>
277
278L'isolamento è particolarmente importante per le pipeline CI/CD, le applicazioni distribuite, gli ambienti di test e i sistemi multi-tenant dove le personalizzazioni locali non dovrebbero infiltrarsi.
279 207
280<Note>208<Note>
281 SDK v0.1.0 ha brevemente impostato per impostazione predefinita nessuna impostazione caricata; questo è stato ripristinato nelle versioni successive. Python SDK 0.1.59 e versioni precedenti hanno trattato un elenco vuoto come l'omissione dell'opzione, quindi eseguire l'aggiornamento prima di fare affidamento su `setting_sources=[]`. Vedere [Cosa settingSources non controlla](/it/agent-sdk/claude-code-features#what-settingsources-does-not-control) per gli input che vengono letti anche quando `settingSources` è `[]`.209 Python SDK 0.1.59 e versioni precedenti hanno trattato un elenco vuoto allo stesso modo dell'omissione dell'opzione, quindi eseguire l'aggiornamento prima di fare affidamento su `setting_sources=[]`. Vedere [What settingSources does not control](/docs/it/agent-sdk/claude-code-features#what-settingsources-does-not-control) per gli input che vengono letti anche quando `settingSources` è `[]`.
282</Note>210</Note>
283 211
284<h2 id="why-the-rename">
285 Perché il cambio di nome?
286</h2>
287
288Claude Code SDK è stato originariamente progettato per compiti di codifica, ma si è evoluto in un framework potente per la creazione di tutti i tipi di agenti AI. Il nuovo nome "Claude Agent SDK" riflette meglio le sue capacità:
289
290* Creazione di agenti aziendali (assistenti legali, consulenti finanziari, supporto clienti)
291* Creazione di agenti di codifica specializzati (bot SRE, revisori di sicurezza, agenti di revisione del codice)
292* Sviluppo di agenti personalizzati per qualsiasi dominio con utilizzo di strumenti, integrazione MCP e altro ancora
293
294<h2 id="getting-help">
295 Ottenere aiuto
296</h2>
297
298Se si incontrano problemi durante la migrazione:
299
300**Per TypeScript/JavaScript:**
301
3021. Verificare che tutti gli import siano aggiornati per utilizzare `@anthropic-ai/claude-agent-sdk`
3032. Verificare che il vostro package.json abbia il nuovo nome del pacchetto
3043. Eseguire `npm install` per assicurarsi che le dipendenze siano aggiornate
305
306**Per Python:**
307
3081. Verificare che tutti gli import siano aggiornati per utilizzare `claude_agent_sdk`
3092. Verificare che il vostro requirements.txt o pyproject.toml abbia il nuovo nome del pacchetto
3103. Eseguire `pip install claude-agent-sdk` per assicurarsi che il pacchetto sia installato
311
312<h2 id="next-steps">212<h2 id="next-steps">
313 Passaggi successivi213 Passaggi successivi
314</h2>214</h2>
315 215
316* Esplorare la [Panoramica di Agent SDK](/it/agent-sdk/overview) per conoscere le funzionalità disponibili216* Esplorare la [Panoramica di Agent SDK](/docs/it/agent-sdk/overview) per conoscere le funzionalità disponibili
317* Consultare il [Riferimento SDK TypeScript](/it/agent-sdk/typescript) per la documentazione dettagliata dell'API217* Consultare il [Riferimento SDK TypeScript](/docs/it/agent-sdk/typescript) per la documentazione dettagliata dell'API
318* Rivedere il [Riferimento SDK Python](/it/agent-sdk/python) per la documentazione specifica di Python218* Rivedere il [Riferimento SDK Python](/docs/it/agent-sdk/python) per la documentazione specifica di Python
319* Scopri di più su [Strumenti personalizzati](/it/agent-sdk/custom-tools) e [Integrazione MCP](/it/agent-sdk/mcp)219* Scopri di più su [Strumenti personalizzati](/docs/it/agent-sdk/custom-tools) e [Integrazione MCP](/docs/it/agent-sdk/mcp)