SpyBara
Go Premium

Documentation 2026-05-14 17:02 UTC to 2026-05-15 22:58 UTC

18 files changed +506 −35. View all changes and history on the product overview
2026
Sun 31 06:39 Sat 30 06:23 Fri 29 06:38 Thu 28 06:37 Wed 27 06:42 Tue 26 06:33 Sun 24 06:25 Sat 23 06:18 Fri 22 06:33 Thu 21 06:36 Wed 20 06:35 Tue 19 06:34 Mon 18 23:59 Sun 17 01:01 Fri 15 22:58 Thu 14 17:02 Wed 13 23:01 Tue 12 22:57 Mon 11 23:00 Sun 10 23:03 Sat 9 04:57 Fri 8 22:00 Thu 7 22:59 Tue 5 23:00 Mon 4 22:58 Sat 2 18:14 Fri 1 18:19
Details

46 46 

47 ```python Python theme={null}47 ```python Python theme={null}

48 import asyncio48 import asyncio

49 from claude_agent_sdk import query49 from claude_agent_sdk import query, ClaudeAgentOptions

50 50 

51 51 

52 async def main():52 async def main():

53 async for message in query(53 async for message in query(

54 prompt="Hello",54 prompt="Hello",

55 options={55 options=ClaudeAgentOptions(

56 "plugins": [56 plugins=[

57 {"type": "local", "path": "./my-plugin"},57 {"type": "local", "path": "./my-plugin"},

58 {"type": "local", "path": "/absolute/path/to/another-plugin"},58 {"type": "local", "path": "/absolute/path/to/another-plugin"},

59 ]59 ]

60 },60 ),

61 ):61 ):

62 # Plugin commands, agents, and other features are now available62 # Plugin commands, agents, and other features are now available

63 pass63 pass


106 106 

107 ```python Python theme={null}107 ```python Python theme={null}

108 import asyncio108 import asyncio

109 from claude_agent_sdk import query109 from claude_agent_sdk import query, ClaudeAgentOptions, SystemMessage

110 110 

111 111 

112 async def main():112 async def main():

113 async for message in query(113 async for message in query(

114 prompt="Hello", options={"plugins": [{"type": "local", "path": "./my-plugin"}]}114 prompt="Hello",

115 options=ClaudeAgentOptions(

116 plugins=[{"type": "local", "path": "./my-plugin"}]

117 ),

115 ):118 ):

116 if message.type == "system" and message.subtype == "init":119 if isinstance(message, SystemMessage) and message.subtype == "init":

117 # Check loaded plugins120 # Check loaded plugins

118 print("Plugins:", message.data.get("plugins"))121 print("Plugins:", message.data.get("plugins"))

119 # Example: [{"name": "my-plugin", "path": "./my-plugin"}]122 # Example: [{"name": "my-plugin", "path": "./my-plugin"}]


151 154 

152 ```python Python theme={null}155 ```python Python theme={null}

153 import asyncio156 import asyncio

154 from claude_agent_sdk import query, AssistantMessage, TextBlock157 from claude_agent_sdk import query, ClaudeAgentOptions, AssistantMessage, TextBlock

155 158 

156 159 

157 async def main():160 async def main():

158 # Load a plugin with a custom /greet skill161 # Load a plugin with a custom /greet skill

159 async for message in query(162 async for message in query(

160 prompt="/demo-plugin:greet", # Use plugin skill with namespace163 prompt="/demo-plugin:greet", # Use plugin skill with namespace

161 options={"plugins": [{"type": "local", "path": "./plugins/demo-plugin"}]},164 options=ClaudeAgentOptions(

165 plugins=[{"type": "local", "path": "./plugins/demo-plugin"}]

166 ),

162 ):167 ):

163 # Claude executes the custom greeting skill from the plugin168 # Claude executes the custom greeting skill from the plugin

164 if isinstance(message, AssistantMessage):169 if isinstance(message, AssistantMessage):


219 from claude_agent_sdk import (224 from claude_agent_sdk import (

220 AssistantMessage,225 AssistantMessage,

221 ClaudeAgentOptions,226 ClaudeAgentOptions,

227 SystemMessage,

222 TextBlock,228 TextBlock,

223 query,229 query,

224 )230 )


238 async for message in query(244 async for message in query(

239 prompt="What custom commands do you have available?", options=options245 prompt="What custom commands do you have available?", options=options

240 ):246 ):

241 if message.type == "system" and message.subtype == "init":247 if isinstance(message, SystemMessage) and message.subtype == "init":

242 print(f"Loaded plugins: {message.data.get('plugins')}")248 print(f"Loaded plugins: {message.data.get('plugins')}")

243 print(f"Available commands: {message.data.get('slash_commands')}")249 print(f"Available commands: {message.data.get('slash_commands')}")

244 250 

Details

56 prompt: "/compact",56 prompt: "/compact",

57 options: { maxTurns: 1 }57 options: { maxTurns: 1 }

58 })) {58 })) {

59 if (message.type === "result") {59 if (message.type === "result" && message.subtype === "success") {

60 console.log("Command executed:", message.result);60 console.log("Command executed:", message.result);

61 }61 }

62 }62 }


261 options: { maxTurns: 5 }261 options: { maxTurns: 5 }

262 })) {262 })) {

263 // Command will process with $1="123" and $2="high"263 // Command will process with $1="123" and $2="high"

264 if (message.type === "result") {264 if (message.type === "result" && message.subtype === "success") {

265 console.log("Issue fixed:", message.result);265 console.log("Issue fixed:", message.result);

266 }266 }

267 }267 }

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# Streaming Input

6 

7> Comprendre les deux modes d'entrée du Claude Agent SDK et quand utiliser chacun

8 

9## Aperçu

10 

11Le Claude Agent SDK prend en charge deux modes d'entrée distincts pour interagir avec les agents :

12 

13* **Mode Streaming Input** (Par défaut et recommandé) - Une session persistante et interactive

14* **Single Message Input** - Des requêtes ponctuelles qui utilisent l'état de la session et la reprise

15 

16Ce guide explique les différences, les avantages et les cas d'usage de chaque mode pour vous aider à choisir la bonne approche pour votre application.

17 

18## Mode Streaming Input (Recommandé)

19 

20Le mode streaming input est la façon **préférée** d'utiliser le Claude Agent SDK. Il fournit un accès complet aux capacités de l'agent et permet des expériences riches et interactives.

21 

22Il permet à l'agent de fonctionner comme un processus de longue durée qui accepte les entrées utilisateur, gère les interruptions, affiche les demandes de permission et gère la gestion de session.

23 

24### Fonctionnement

25 

26```mermaid theme={null}

27sequenceDiagram

28 participant App as Your Application

29 participant Agent as Claude Agent

30 participant Tools as Tools/Hooks

31 participant FS as Environment/<br/>File System

32 

33 App->>Agent: Initialize with AsyncGenerator

34 activate Agent

35 

36 App->>Agent: Yield Message 1

37 Agent->>Tools: Execute tools

38 Tools->>FS: Read files

39 FS-->>Tools: File contents

40 Tools->>FS: Write/Edit files

41 FS-->>Tools: Success/Error

42 Agent-->>App: Stream partial response

43 Agent-->>App: Stream more content...

44 Agent->>App: Complete Message 1

45 

46 App->>Agent: Yield Message 2 + Image

47 Agent->>Tools: Process image & execute

48 Tools->>FS: Access filesystem

49 FS-->>Tools: Operation results

50 Agent-->>App: Stream response 2

51 

52 App->>Agent: Queue Message 3

53 App->>Agent: Interrupt/Cancel

54 Agent->>App: Handle interruption

55 

56 Note over App,Agent: Session stays alive

57 Note over Tools,FS: Persistent file system<br/>state maintained

58 

59 deactivate Agent

60```

61 

62### Avantages

63 

64<CardGroup cols={2}>

65 <Card title="Téléchargements d'images" icon="image">

66 Joignez des images directement aux messages pour l'analyse et la compréhension visuelles

67 </Card>

68 

69 <Card title="Messages en file d'attente" icon="stack">

70 Envoyez plusieurs messages qui se traitent séquentiellement, avec la possibilité d'interrompre

71 </Card>

72 

73 <Card title="Intégration d'outils" icon="wrench">

74 Accès complet à tous les outils et serveurs MCP personnalisés pendant la session

75 </Card>

76 

77 <Card title="Support des hooks" icon="link">

78 Utilisez les hooks de cycle de vie pour personnaliser le comportement à différents points

79 </Card>

80 

81 <Card title="Retours en temps réel" icon="lightning">

82 Voyez les réponses au fur et à mesure qu'elles sont générées, pas seulement les résultats finaux

83 </Card>

84 

85 <Card title="Persistance du contexte" icon="database">

86 Maintenez le contexte de la conversation sur plusieurs tours naturellement

87 </Card>

88</CardGroup>

89 

90### Exemple d'implémentation

91 

92<CodeGroup>

93 ```typescript TypeScript theme={null}

94 import { query, type SDKUserMessage } from "@anthropic-ai/claude-agent-sdk";

95 import { readFile } from "fs/promises";

96 

97 async function* generateMessages(): AsyncGenerator<SDKUserMessage> {

98 // First message

99 yield {

100 type: "user",

101 message: {

102 role: "user",

103 content: "Analyze this codebase for security issues"

104 },

105 parent_tool_use_id: null

106 };

107 

108 // Wait for conditions or user input

109 await new Promise((resolve) => setTimeout(resolve, 2000));

110 

111 // Follow-up with image

112 yield {

113 type: "user",

114 message: {

115 role: "user",

116 content: [

117 {

118 type: "text",

119 text: "Review this architecture diagram"

120 },

121 {

122 type: "image",

123 source: {

124 type: "base64",

125 media_type: "image/png",

126 data: await readFile("diagram.png", "base64")

127 }

128 }

129 ]

130 },

131 parent_tool_use_id: null

132 };

133 }

134 

135 // Process streaming responses

136 for await (const message of query({

137 prompt: generateMessages(),

138 options: {

139 maxTurns: 10,

140 allowedTools: ["Read", "Grep"]

141 }

142 })) {

143 if (message.type === "result" && message.subtype === "success") {

144 console.log(message.result);

145 }

146 }

147 ```

148 

149 ```python Python theme={null}

150 from claude_agent_sdk import (

151 ClaudeSDKClient,

152 ClaudeAgentOptions,

153 AssistantMessage,

154 TextBlock,

155 )

156 import asyncio

157 import base64

158 

159 

160 async def streaming_analysis():

161 async def message_generator():

162 # First message

163 yield {

164 "type": "user",

165 "message": {

166 "role": "user",

167 "content": "Analyze this codebase for security issues",

168 },

169 }

170 

171 # Wait for conditions

172 await asyncio.sleep(2)

173 

174 # Follow-up with image

175 with open("diagram.png", "rb") as f:

176 image_data = base64.b64encode(f.read()).decode()

177 

178 yield {

179 "type": "user",

180 "message": {

181 "role": "user",

182 "content": [

183 {"type": "text", "text": "Review this architecture diagram"},

184 {

185 "type": "image",

186 "source": {

187 "type": "base64",

188 "media_type": "image/png",

189 "data": image_data,

190 },

191 },

192 ],

193 },

194 }

195 

196 # Use ClaudeSDKClient for streaming input

197 options = ClaudeAgentOptions(max_turns=10, allowed_tools=["Read", "Grep"])

198 

199 async with ClaudeSDKClient(options) as client:

200 # Send streaming input

201 await client.query(message_generator())

202 

203 # Process responses

204 async for message in client.receive_response():

205 if isinstance(message, AssistantMessage):

206 for block in message.content:

207 if isinstance(block, TextBlock):

208 print(block.text)

209 

210 

211 asyncio.run(streaming_analysis())

212 ```

213</CodeGroup>

214 

215## Single Message Input

216 

217Single message input est plus simple mais plus limité.

218 

219### Quand utiliser Single Message Input

220 

221Utilisez single message input quand :

222 

223* Vous avez besoin d'une réponse ponctuelle

224* Vous n'avez pas besoin de pièces jointes d'images, de hooks, etc.

225* Vous devez opérer dans un environnement sans état, comme une fonction lambda

226 

227### Limitations

228 

229<Warning>

230 Le mode single message input ne prend **pas** en charge :

231 

232 * Les pièces jointes d'images directes dans les messages

233 * La mise en file d'attente dynamique de messages

234 * L'interruption en temps réel

235 * L'intégration de hooks

236 * Les conversations multi-tours naturelles

237</Warning>

238 

239### Exemple d'implémentation

240 

241<CodeGroup>

242 ```typescript TypeScript theme={null}

243 import { query } from "@anthropic-ai/claude-agent-sdk";

244 

245 // Simple one-shot query

246 for await (const message of query({

247 prompt: "Explain the authentication flow",

248 options: {

249 maxTurns: 1,

250 allowedTools: ["Read", "Grep"]

251 }

252 })) {

253 if (message.type === "result" && message.subtype === "success") {

254 console.log(message.result);

255 }

256 }

257 

258 // Continue conversation with session management

259 for await (const message of query({

260 prompt: "Now explain the authorization process",

261 options: {

262 continue: true,

263 maxTurns: 1

264 }

265 })) {

266 if (message.type === "result" && message.subtype === "success") {

267 console.log(message.result);

268 }

269 }

270 ```

271 

272 ```python Python theme={null}

273 from claude_agent_sdk import query, ClaudeAgentOptions, ResultMessage

274 import asyncio

275 

276 

277 async def single_message_example():

278 # Simple one-shot query using query() function

279 async for message in query(

280 prompt="Explain the authentication flow",

281 options=ClaudeAgentOptions(max_turns=1, allowed_tools=["Read", "Grep"]),

282 ):

283 if isinstance(message, ResultMessage):

284 print(message.result)

285 

286 # Continue conversation with session management

287 async for message in query(

288 prompt="Now explain the authorization process",

289 options=ClaudeAgentOptions(continue_conversation=True, max_turns=1),

290 ):

291 if isinstance(message, ResultMessage):

292 print(message.result)

293 

294 

295 asyncio.run(single_message_example())

296 ```

297</CodeGroup>

Details

313<CodeGroup>313<CodeGroup>

314 ```python Python theme={null}314 ```python Python theme={null}

315 import asyncio315 import asyncio

316 from claude_agent_sdk import query, ClaudeAgentOptions, AgentDefinition316 from claude_agent_sdk import query, ClaudeAgentOptions, AgentDefinition, ToolUseBlock

317 317 

318 318 

319 async def main():319 async def main():


334 # versions emitted "Task", current versions emit "Agent".334 # versions emitted "Task", current versions emit "Agent".

335 if hasattr(message, "content") and message.content:335 if hasattr(message, "content") and message.content:

336 for block in message.content:336 for block in message.content:

337 if getattr(block, "type", None) == "tool_use" and block.name in (337 if isinstance(block, ToolUseBlock) and block.name in (

338 "Task",338 "Task",

339 "Agent",339 "Agent",

340 ):340 ):


414 // Helper to extract agentId from message content414 // Helper to extract agentId from message content

415 // Stringify to avoid traversing different block types (TextBlock, ToolResultBlock, etc.)415 // Stringify to avoid traversing different block types (TextBlock, ToolResultBlock, etc.)

416 function extractAgentId(message: SDKMessage): string | undefined {416 function extractAgentId(message: SDKMessage): string | undefined {

417 if (!("message" in message)) return undefined;417 if (message.type !== "assistant" && message.type !== "user") return undefined;

418 // Stringify the content so we can search it without traversing nested blocks418 // Stringify the content so we can search it without traversing nested blocks

419 const content = JSON.stringify(message.message.content);419 const content = JSON.stringify(message.message.content);

420 const match = content.match(/agentId:\s*([a-f0-9-]+)/);420 const match = content.match(/agentId:\s*([a-f0-9-]+)/);

Details

948type SDKUserMessage = {948type SDKUserMessage = {

949 type: "user";949 type: "user";

950 uuid?: UUID;950 uuid?: UUID;

951 session_id: string;951 session_id?: string;

952 message: MessageParam; // Du SDK Anthropic952 message: MessageParam; // Du SDK Anthropic

953 parent_tool_use_id: string | null;953 parent_tool_use_id: string | null;

954 isSynthetic?: boolean;954 isSynthetic?: boolean;

agent-view.md +6 −0

Details

265claude --agent code-reviewer --bg "address review comments on PR 1234"265claude --agent code-reviewer --bg "address review comments on PR 1234"

266```266```

267 267 

268Passez `--name` pour définir le nom d'affichage de la session dans la vue agent au lieu du nom généré automatiquement :

269 

270```bash theme={null}

271claude --bg --name "flaky-test-fix" "investigate the flaky SettingsChangeDetector test"

272```

273 

268Après avoir mis en arrière-plan, Claude affiche l'ID court de la session et les commandes pour la gérer :274Après avoir mis en arrière-plan, Claude affiche l'ID court de la session et les commandes pour la gérer :

269 275 

270```text theme={null}276```text theme={null}

Details

211export CLAUDE_CODE_USE_BEDROCK=1211export CLAUDE_CODE_USE_BEDROCK=1

212export AWS_REGION=us-east-1 # or your preferred region212export AWS_REGION=us-east-1 # or your preferred region

213 213 

214# Optional: Override the region for the small/fast model (Haiku).214# Optional: Override the AWS region for the small/fast model (Bedrock and Mantle).

215# Also applies to Bedrock Mantle.215# On Bedrock, has no effect without ANTHROPIC_DEFAULT_HAIKU_MODEL

216# or the deprecated ANTHROPIC_SMALL_FAST_MODEL set.

216export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2217export ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION=us-west-2

217 218 

218# Optional: Override the Bedrock endpoint URL for custom endpoints or gateways219# Optional: Override the Bedrock endpoint URL for custom endpoints or gateways


248| Type de modèle | Valeur par défaut |249| Type de modèle | Valeur par défaut |

249| :------------------ | :--------------------------------------------- |250| :------------------ | :--------------------------------------------- |

250| Modèle principal | `us.anthropic.claude-sonnet-4-5-20250929-v1:0` |251| Modèle principal | `us.anthropic.claude-sonnet-4-5-20250929-v1:0` |

251| Modèle petit/rapide | `us.anthropic.claude-haiku-4-5-20251001-v1:0` |252| Modèle petit/rapide | Identique au modèle principal |

253 

254Les tâches de fond telles que la génération de titre de session utilisent le modèle petit/rapide, normalement un modèle de classe Haiku. Sur Bedrock, Claude Code utilise par défaut le modèle principal car Haiku peut ne pas être activé dans tous les comptes ou régions. Pour utiliser Haiku pour les tâches de fond, définissez `ANTHROPIC_DEFAULT_HAIKU_MODEL` sur un ID de modèle disponible dans votre compte.

252 255 

253Pour personnaliser davantage les modèles, utilisez l'une de ces méthodes :256Pour personnaliser davantage les modèles, utilisez l'une de ces méthodes :

254 257 

Details

1507| `tasks/` | Listes de tâches par session écrites par les outils de tâche |1507| `tasks/` | Listes de tâches par session écrites par les outils de tâche |

1508| `shell-snapshots/` | Environnement shell capturé utilisé par l'outil Bash. Supprimé à la fermeture correcte. Le balayage efface tout ce qui reste après un crash. |1508| `shell-snapshots/` | Environnement shell capturé utilisé par l'outil Bash. Supprimé à la fermeture correcte. Le balayage efface tout ce qui reste après un crash. |

1509| `backups/` | Copies horodatées de `~/.claude.json` prises avant les migrations de configuration |1509| `backups/` | Copies horodatées de `~/.claude.json` prises avant les migrations de configuration |

1510| `feedback-bundles/` | Archives de transcription expurgées écrites par `/feedback` sur les fournisseurs tiers, pour envoi à votre équipe de compte Anthropic |

1510 1511 

1511### Conservés jusqu'à ce que vous les supprimiez1512### Conservés jusqu'à ce que vous les supprimiez

1512 1513 

data-usage.md +3 −1

Details

99 99 

100Claude Code se connecte à partir des machines des utilisateurs à Sentry pour la journalisation des erreurs opérationnelles. Les données sont chiffrées en transit à l'aide de TLS et au repos à l'aide du chiffrement AES 256 bits. Lisez-en plus dans la [documentation de sécurité Sentry](https://sentry.io/security/). Pour refuser la journalisation des erreurs, définissez la variable d'environnement `DISABLE_ERROR_REPORTING`.100Claude Code se connecte à partir des machines des utilisateurs à Sentry pour la journalisation des erreurs opérationnelles. Les données sont chiffrées en transit à l'aide de TLS et au repos à l'aide du chiffrement AES 256 bits. Lisez-en plus dans la [documentation de sécurité Sentry](https://sentry.io/security/). Pour refuser la journalisation des erreurs, définissez la variable d'environnement `DISABLE_ERROR_REPORTING`.

101 101 

102Lorsque les utilisateurs exécutent la commande `/feedback`, une copie de leur historique de conversation complet, y compris le code, est envoyée à Anthropic. Les données sont chiffrées en transit via TLS. Optionnellement, un problème GitHub est créé dans le référentiel public. Pour refuser, définissez la variable d'environnement `DISABLE_FEEDBACK_COMMAND` sur `1`.102Lorsque vous exécutez la commande `/feedback`, une copie de votre historique de conversation complet, y compris le code, est envoyée à Anthropic. Avant de soumettre, vous choisissez la quantité d'historique à inclure : la session actuelle uniquement, qui est la valeur par défaut, ou également d'autres sessions du même projet au cours des 24 dernières heures ou 7 derniers jours. Les données sont chiffrées en transit via TLS. Optionnellement, un problème GitHub est créé dans le référentiel public. Pour refuser, définissez la variable d'environnement `DISABLE_FEEDBACK_COMMAND` sur `1`.

103 

104Lorsque vous utilisez un fournisseur tiers tel que Bedrock ou Vertex, ou que vous n'avez pas d'identifiants Anthropic configurés, `/feedback` écrit le rapport dans une archive locale sous `~/.claude/feedback-bundles/` au lieu de l'envoyer à Anthropic. Les modèles de clé API et de jeton connus sont masqués avant que l'archive ne soit écrite. Rien ne quitte votre machine jusqu'à ce que vous envoyiez ce fichier à votre représentant du compte Anthropic ou que vous le joigniez à une demande d'assistance.

103 105 

104## Comportements par défaut par fournisseur d'API106## Comportements par défaut par fournisseur d'API

105 107 

env-vars.md +3 −2

Details

42| `ANTHROPIC_FOUNDRY_RESOURCE` | Nom de la ressource Foundry (par exemple, `my-resource`). Requis si `ANTHROPIC_FOUNDRY_BASE_URL` n'est pas défini (voir [Microsoft Foundry](/fr/microsoft-foundry)) |42| `ANTHROPIC_FOUNDRY_RESOURCE` | Nom de la ressource Foundry (par exemple, `my-resource`). Requis si `ANTHROPIC_FOUNDRY_BASE_URL` n'est pas défini (voir [Microsoft Foundry](/fr/microsoft-foundry)) |

43| `ANTHROPIC_MODEL` | Nom du paramètre de modèle à utiliser (voir [Configuration du modèle](/fr/model-config#environment-variables)) |43| `ANTHROPIC_MODEL` | Nom du paramètre de modèle à utiliser (voir [Configuration du modèle](/fr/model-config#environment-variables)) |

44| `ANTHROPIC_SMALL_FAST_MODEL` | \[DÉPRÉCIÉ] Nom du [modèle de classe Haiku pour les tâches en arrière-plan](/fr/costs) |44| `ANTHROPIC_SMALL_FAST_MODEL` | \[DÉPRÉCIÉ] Nom du [modèle de classe Haiku pour les tâches en arrière-plan](/fr/costs) |

45| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Remplacer la région AWS pour le modèle de classe Haiku lors de l'utilisation de Bedrock ou Bedrock Mantle |45| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Remplacer la région AWS pour le modèle de classe Haiku lors de l'utilisation de Bedrock ou Bedrock Mantle. Sur Bedrock, cela ne prend effet que lorsque `ANTHROPIC_DEFAULT_HAIKU_MODEL` ou le `ANTHROPIC_SMALL_FAST_MODEL` déprécié est également défini, car Bedrock utilise autrement le modèle principal pour les tâches en arrière-plan |

46| `ANTHROPIC_VERTEX_BASE_URL` | Remplacer l'URL du point de terminaison Vertex AI. À utiliser pour les points de terminaison Vertex personnalisés ou lors du routage via une [passerelle LLM](/fr/llm-gateway). Voir [Google Vertex AI](/fr/google-vertex-ai) |46| `ANTHROPIC_VERTEX_BASE_URL` | Remplacer l'URL du point de terminaison Vertex AI. À utiliser pour les points de terminaison Vertex personnalisés ou lors du routage via une [passerelle LLM](/fr/llm-gateway). Voir [Google Vertex AI](/fr/google-vertex-ai) |

47| `ANTHROPIC_VERTEX_PROJECT_ID` | ID de projet GCP pour les requêtes Vertex AI. Remplacé par `GCLOUD_PROJECT`, `GOOGLE_CLOUD_PROJECT` ou le projet dans votre fichier d'identifiants `GOOGLE_APPLICATION_CREDENTIALS`. Voir [Google Vertex AI](/fr/google-vertex-ai) |47| `ANTHROPIC_VERTEX_PROJECT_ID` | ID de projet GCP pour les requêtes Vertex AI. Remplacé par `GCLOUD_PROJECT`, `GOOGLE_CLOUD_PROJECT` ou le projet dans votre fichier d'identifiants `GOOGLE_APPLICATION_CREDENTIALS`. Voir [Google Vertex AI](/fr/google-vertex-ai) |

48| `ANTHROPIC_WORKSPACE_ID` | ID d'espace de travail pour la [fédération d'identité de charge de travail](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Définissez ceci lorsque votre règle de fédération est limitée à plus d'un espace de travail pour que l'échange de jetons sache quel espace de travail cibler |48| `ANTHROPIC_WORKSPACE_ID` | ID d'espace de travail pour la [fédération d'identité de charge de travail](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Définissez ceci lorsque votre règle de fédération est limitée à plus d'un espace de travail pour que l'échange de jetons sache quel espace de travail cibler |


69| `CLAUDE_CODE_CLIENT_CERT` | Chemin d'accès au fichier de certificat client pour l'authentification mTLS |69| `CLAUDE_CODE_CLIENT_CERT` | Chemin d'accès au fichier de certificat client pour l'authentification mTLS |

70| `CLAUDE_CODE_CLIENT_KEY` | Chemin d'accès au fichier de clé privée client pour l'authentification mTLS |70| `CLAUDE_CODE_CLIENT_KEY` | Chemin d'accès au fichier de clé privée client pour l'authentification mTLS |

71| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Phrase de passe pour CLAUDE\_CODE\_CLIENT\_KEY chiffré (facultatif) |71| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Phrase de passe pour CLAUDE\_CODE\_CLIENT\_KEY chiffré (facultatif) |

72| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Remplacer le chemin d'accès au fichier journal de débogage. Malgré le nom, il s'agit d'un chemin de fichier, pas d'un répertoire. Nécessite que le mode débogage soit activé séparément via `--debug` ou `/debug` : la définition de cette variable seule n'active pas la journalisation. L'indicateur [`--debug-file`](/fr/cli-reference#cli-flags) fait les deux à la fois. Par défaut `~/.claude/debug/<session-id>.txt` |72| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Remplacer le chemin d'accès au fichier journal de débogage. Malgré le nom, il s'agit d'un chemin de fichier, pas d'un répertoire. Nécessite que le mode débogage soit activé séparément via `--debug`, `/debug` ou la variable d'environnement `DEBUG` : la définition de cette variable seule n'active pas la journalisation. L'indicateur [`--debug-file`](/fr/cli-reference#cli-flags) fait les deux à la fois. Par défaut `~/.claude/debug/<session-id>.txt` |

73| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Niveau de journal minimum écrit dans le fichier journal de débogage. Valeurs : `verbose`, `debug` (par défaut), `info`, `warn`, `error`. Définissez sur `verbose` pour inclure les diagnostics à haut volume comme la sortie complète de la commande de ligne d'état, ou augmentez à `error` pour réduire le bruit |73| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Niveau de journal minimum écrit dans le fichier journal de débogage. Valeurs : `verbose`, `debug` (par défaut), `info`, `warn`, `error`. Définissez sur `verbose` pour inclure les diagnostics à haut volume comme la sortie complète de la commande de ligne d'état, ou augmentez à `error` pour réduire le bruit |

74| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Définissez sur `1` pour désactiver la prise en charge de la [fenêtre de contexte 1 M](/fr/model-config#extended-context). Lorsqu'elle est définie, les variantes de modèle 1 M ne sont pas disponibles dans le sélecteur de modèle. Utile pour les environnements d'entreprise avec des exigences de conformité |74| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Définissez sur `1` pour désactiver la prise en charge de la [fenêtre de contexte 1 M](/fr/model-config#extended-context). Lorsqu'elle est définie, les variantes de modèle 1 M ne sont pas disponibles dans le sélecteur de modèle. Utile pour les environnements d'entreprise avec des exigences de conformité |

75| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Définissez sur `1` pour désactiver le [raisonnement adaptatif](/fr/model-config#adjust-effort-level) sur Opus 4.6 et Sonnet 4.6 et revenir au budget de réflexion fixe contrôlé par `MAX_THINKING_TOKENS`. {/* min-version: 2.1.111 */}N'a aucun effet sur Opus 4.7, qui utilise toujours le raisonnement adaptatif |75| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Définissez sur `1` pour désactiver le [raisonnement adaptatif](/fr/model-config#adjust-effort-level) sur Opus 4.6 et Sonnet 4.6 et revenir au budget de réflexion fixe contrôlé par `MAX_THINKING_TOKENS`. {/* min-version: 2.1.111 */}N'a aucun effet sur Opus 4.7, qui utilise toujours le raisonnement adaptatif |


184| `CLAUDE_ENV_FILE` | Chemin d'accès à un script shell dont le contenu Claude Code exécute avant chaque commande Bash dans le même processus shell, de sorte que les exports du fichier sont visibles pour la commande. À utiliser pour persister l'activation de virtualenv ou conda entre les commandes. Également rempli dynamiquement par les hooks [SessionStart](/fr/hooks#persist-environment-variables), [Setup](/fr/hooks#setup), [CwdChanged](/fr/hooks#cwdchanged) et [FileChanged](/fr/hooks#filechanged) |184| `CLAUDE_ENV_FILE` | Chemin d'accès à un script shell dont le contenu Claude Code exécute avant chaque commande Bash dans le même processus shell, de sorte que les exports du fichier sont visibles pour la commande. À utiliser pour persister l'activation de virtualenv ou conda entre les commandes. Également rempli dynamiquement par les hooks [SessionStart](/fr/hooks#persist-environment-variables), [Setup](/fr/hooks#setup), [CwdChanged](/fr/hooks#cwdchanged) et [FileChanged](/fr/hooks#filechanged) |

185| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Préfixe pour les noms de session [Contrôle à distance](/fr/remote-control) générés automatiquement lorsqu'aucun nom explicite n'est fourni. Par défaut, le nom d'hôte de votre machine, produisant des noms comme `myhost-graceful-unicorn`. L'indicateur CLI `--remote-control-session-name-prefix` définit la même valeur pour une seule invocation |185| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Préfixe pour les noms de session [Contrôle à distance](/fr/remote-control) générés automatiquement lorsqu'aucun nom explicite n'est fourni. Par défaut, le nom d'hôte de votre machine, produisant des noms comme `myhost-graceful-unicorn`. L'indicateur CLI `--remote-control-session-name-prefix` définit la même valeur pour une seule invocation |

186| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Délai d'expiration en millisecondes avant que le chien de garde d'inactivité de streaming ferme une connexion bloquée. Par défaut et minimum `300000` (5 minutes) pour les deux chiens de garde au niveau des octets et au niveau des événements ; les valeurs inférieures sont silencieusement limitées pour absorber les pauses de réflexion étendue et la mise en mémoire tampon du proxy. Pour les fournisseurs tiers, nécessite `CLAUDE_ENABLE_STREAM_WATCHDOG=1` |186| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Délai d'expiration en millisecondes avant que le chien de garde d'inactivité de streaming ferme une connexion bloquée. Par défaut et minimum `300000` (5 minutes) pour les deux chiens de garde au niveau des octets et au niveau des événements ; les valeurs inférieures sont silencieusement limitées pour absorber les pauses de réflexion étendue et la mise en mémoire tampon du proxy. Pour les fournisseurs tiers, nécessite `CLAUDE_ENABLE_STREAM_WATCHDOG=1` |

187| `DEBUG` | Définissez sur `1` pour activer le mode débogage, équivalent au lancement avec [`--debug`](/fr/cli-reference#cli-flags). Les journaux de débogage sont écrits dans `~/.claude/debug/<session-id>.txt`, ou dans le chemin défini par `CLAUDE_CODE_DEBUG_LOGS_DIR`. Seules les valeurs véridiques `1`, `true`, `yes` et `on` activent le mode débogage, donc les modèles d'espace de noms comme `DEBUG=express:*` définis pour d'autres outils ne le déclenchent pas |

187| `DISABLE_AUTOUPDATER` | Définissez sur `1` pour désactiver les mises à jour automatiques en arrière-plan. La commande manuelle `claude update` fonctionne toujours. Utilisez `DISABLE_UPDATES` pour bloquer les deux |188| `DISABLE_AUTOUPDATER` | Définissez sur `1` pour désactiver les mises à jour automatiques en arrière-plan. La commande manuelle `claude update` fonctionne toujours. Utilisez `DISABLE_UPDATES` pour bloquer les deux |

188| `DISABLE_AUTO_COMPACT` | Définissez sur `1` pour désactiver le compactage automatique lorsque vous approchez de la limite de contexte. La commande manuelle `/compact` reste disponible. À utiliser lorsque vous souhaitez un contrôle explicite sur le moment du compactage |189| `DISABLE_AUTO_COMPACT` | Définissez sur `1` pour désactiver le compactage automatique lorsque vous approchez de la limite de contexte. La commande manuelle `/compact` reste disponible. À utiliser lorsque vous souhaitez un contrôle explicite sur le moment du compactage |

189| `DISABLE_COMPACT` | Définissez sur `1` pour désactiver tout compactage : à la fois le compactage automatique et la commande manuelle `/compact` |190| `DISABLE_COMPACT` | Définissez sur `1` pour désactiver tout compactage : à la fois le compactage automatique et la commande manuelle `/compact` |

errors.md +4 −4

Details

81 81 

82* Vérifiez [status.claude.com](https://status.claude.com) pour les incidents actifs82* Vérifiez [status.claude.com](https://status.claude.com) pour les incidents actifs

83* Attendez une minute, puis envoyez votre message à nouveau. Votre message original est toujours dans la conversation, donc pour un long prompt vous pouvez taper `try again` au lieu de coller le tout.83* Attendez une minute, puis envoyez votre message à nouveau. Votre message original est toujours dans la conversation, donc pour un long prompt vous pouvez taper `try again` au lieu de coller le tout.

84* Si l'erreur persiste sans incident affiché, exécutez `/feedback` pour qu'Anthropic puisse enquêter avec les détails de votre requête. Consultez [Signaler une erreur](#report-an-error) si `/feedback` n'est pas disponible sur votre fournisseur.84* Si l'erreur persiste sans incident affiché, exécutez `/feedback` pour qu'Anthropic puisse enquêter avec les détails de votre requête. Consultez [Signaler une erreur](#report-an-error) si `/feedback` n'est pas disponible dans votre environnement.

85 85 

86### API Error: Repeated 529 Overloaded errors86### API Error: Repeated 529 Overloaded errors

87 87 


584 584 

585Lorsqu'une réponse s'avère mauvaise, le rembobinage fonctionne généralement mieux que de répondre avec des corrections. Appuyez sur Esc deux fois ou exécutez `/rewind` pour revenir avant le mauvais tour, puis reformulez le prompt avec plus de détails. Corriger dans le fil conserve la mauvaise tentative en contexte, ce qui peut ancrer les réponses ultérieures à celle-ci. Consultez [Checkpointing](/fr/checkpointing).585Lorsqu'une réponse s'avère mauvaise, le rembobinage fonctionne généralement mieux que de répondre avec des corrections. Appuyez sur Esc deux fois ou exécutez `/rewind` pour revenir avant le mauvais tour, puis reformulez le prompt avec plus de détails. Corriger dans le fil conserve la mauvaise tentative en contexte, ce qui peut ancrer les réponses ultérieures à celle-ci. Consultez [Checkpointing](/fr/checkpointing).

586 586 

587Si la qualité semble toujours incorrecte après avoir vérifié ce qui précède, exécutez `/feedback` et décrivez ce que vous attendiez par rapport à ce que vous avez obtenu. Les commentaires soumis de cette manière incluent la transcription de la conversation, ce qui est le moyen le plus rapide pour Anthropic de diagnostiquer une véritable régression. Consultez [Signaler une erreur](#report-an-error) si `/feedback` n'est pas disponible sur votre fournisseur.587Si la qualité semble toujours incorrecte après avoir vérifié ce qui précède, exécutez `/feedback` et décrivez ce que vous attendiez par rapport à ce que vous avez obtenu. Les commentaires soumis de cette manière incluent la transcription de la conversation, ce qui est le moyen le plus rapide pour Anthropic de diagnostiquer une véritable régression. Consultez [Signaler une erreur](#report-an-error) si `/feedback` n'est pas disponible dans votre environnement.

588 588 

589## Signaler une erreur589## Signaler une erreur

590 590 


592 592 

593* Le serveur MCP n'a pas pu se connecter ou s'authentifier : [MCP](/fr/mcp)593* Le serveur MCP n'a pas pu se connecter ou s'authentifier : [MCP](/fr/mcp)

594* Le script hook a échoué ou a bloqué un outil : [Debug hooks](/fr/hooks#debug-hooks)594* Le script hook a échoué ou a bloqué un outil : [Debug hooks](/fr/hooks#debug-hooks)

595* Autorisation refusée ou erreurs du système de fichiers lors de l'installation : [Troubleshooting](/fr/troubleshooting)595* Autorisation refusée ou erreurs du système de fichiers lors de l'installation : [Troubleshoot installation and login](/fr/troubleshoot-install)

596 596 

597Si une erreur n'est pas répertoriée ici ou que la correction suggérée n'aide pas :597Si une erreur n'est pas répertoriée ici ou que la correction suggérée n'aide pas :

598 598 

599* Exécutez `/feedback` dans Claude Code pour envoyer la transcription et une description à Anthropic. La commande offre également d'ouvrir un problème GitHub prérempli. Les commentaires ne sont pas disponibles sur les déploiements Bedrock, Vertex AI et Foundry.599* Exécutez `/feedback` dans Claude Code pour envoyer la transcription et une description à Anthropic. La commande offre également d'ouvrir un problème GitHub prérempli. Sur Bedrock, Vertex AI, Foundry et d'autres fournisseurs tiers, `/feedback` enregistre une archive locale que vous pouvez envoyer à votre représentant de compte Anthropic à la place.

600* Exécutez `/doctor` pour vérifier les problèmes de configuration locale600* Exécutez `/doctor` pour vérifier les problèmes de configuration locale

601* Vérifiez [status.claude.com](https://status.claude.com) pour les incidents actifs601* Vérifiez [status.claude.com](https://status.claude.com) pour les incidents actifs

602* Recherchez les [problèmes existants](https://github.com/anthropics/claude-code/issues) sur GitHub602* Recherchez les [problèmes existants](https://github.com/anthropics/claude-code/issues) sur GitHub

goal.md +4 −0

Details

6 6 

7> Définissez une condition d'achèvement avec /goal et Claude continue de travailler sur plusieurs tours jusqu'à ce que la condition soit satisfaite.7> Définissez une condition d'achèvement avec /goal et Claude continue de travailler sur plusieurs tours jusqu'à ce que la condition soit satisfaite.

8 8 

9<Note>

10 `/goal` nécessite Claude Code v2.1.139 ou une version ultérieure.

11</Note>

12 

9La commande `/goal` définit une condition d'achèvement et Claude continue de travailler vers celle-ci sans que vous ayez besoin de le relancer à chaque étape. Après chaque tour, un petit modèle rapide vérifie si la condition est satisfaite. Si ce n'est pas le cas, Claude commence un autre tour au lieu de vous rendre le contrôle. L'objectif s'efface automatiquement une fois la condition satisfaite.13La commande `/goal` définit une condition d'achèvement et Claude continue de travailler vers celle-ci sans que vous ayez besoin de le relancer à chaque étape. Après chaque tour, un petit modèle rapide vérifie si la condition est satisfaite. Si ce n'est pas le cas, Claude commence un autre tour au lieu de vous rendre le contrôle. L'objectif s'efface automatiquement une fois la condition satisfaite.

10 14 

11Utilisez un objectif pour un travail substantiel avec un état final vérifiable :15Utilisez un objectif pour un travail substantiel avec un état final vérifiable :

Details

202 202 

203[La mise en cache des invites](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) est activée automatiquement. Pour la désactiver, définissez `DISABLE_PROMPT_CACHING=1`. Pour demander une TTL de cache d'1 heure au lieu de la valeur par défaut de 5 minutes, définissez `ENABLE_PROMPT_CACHING_1H=1` ; les écritures de cache avec une TTL d'1 heure sont facturées à un taux plus élevé. Pour des limites de débit accrues, contactez le support Google Cloud. Lors de l'utilisation de Vertex AI, les commandes `/login` et `/logout` sont désactivées car l'authentification est gérée via les identifiants Google Cloud.203[La mise en cache des invites](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) est activée automatiquement. Pour la désactiver, définissez `DISABLE_PROMPT_CACHING=1`. Pour demander une TTL de cache d'1 heure au lieu de la valeur par défaut de 5 minutes, définissez `ENABLE_PROMPT_CACHING_1H=1` ; les écritures de cache avec une TTL d'1 heure sont facturées à un taux plus élevé. Pour des limites de débit accrues, contactez le support Google Cloud. Lors de l'utilisation de Vertex AI, les commandes `/login` et `/logout` sont désactivées car l'authentification est gérée via les identifiants Google Cloud.

204 204 

205[La recherche d'outils MCP](/fr/mcp#scale-with-mcp-tool-search) est désactivée par défaut sur Vertex AI car le point de terminaison n'accepte pas l'en-tête bêta requis. Toutes les définitions d'outils MCP se chargent à l'avance à la place. Pour participer, définissez `ENABLE_TOOL_SEARCH=true`.205Claude Code désactive la [recherche d'outils MCP](/fr/mcp#scale-with-mcp-tool-search) par défaut sur Vertex AI, de sorte que les définitions d'outils MCP se chargent à l'avance. Vertex AI prend en charge la recherche d'outils pour Claude Sonnet 4.5 et versions ultérieures et Claude Opus 4.5 et versions ultérieures. Définissez `ENABLE_TOOL_SEARCH=true` pour l'activer sur ces modèles. Les modèles antérieurs sur Vertex AI n'acceptent pas l'en-tête bêta requis, et les demandes échouent si vous activez la recherche d'outils avec eux.

206 206 

207### 5. Épingler les versions de modèle207### 5. Épingler les versions de modèle

208 208 


225Claude Code utilise ces modèles par défaut lorsqu'aucune variable d'épinglage n'est définie :225Claude Code utilise ces modèles par défaut lorsqu'aucune variable d'épinglage n'est définie :

226 226 

227| Type de modèle | Valeur par défaut |227| Type de modèle | Valeur par défaut |

228| :------------------ | :--------------------------- |228| :------------------ | :---------------------------- |

229| Modèle principal | `claude-sonnet-4-5@20250929` |229| Modèle principal | `claude-sonnet-4-5@20250929` |

230| Modèle petit/rapide | `claude-haiku-4-5@20251001` |230| Modèle petit/rapide | Identique au modèle principal |

231 

232Les tâches en arrière-plan telles que la génération de titre de session utilisent le modèle petit/rapide, normalement un modèle de classe Haiku. Sur Vertex AI, Claude Code utilise par défaut le modèle principal car Haiku peut ne pas être activé dans tous les projets ou régions. Pour utiliser Haiku pour les tâches en arrière-plan, définissez `ANTHROPIC_DEFAULT_HAIKU_MODEL` sur un ID de modèle disponible dans votre projet.

231 233 

232Pour personnaliser davantage les modèles :234Pour personnaliser davantage les modèles :

233 235 

hooks.md +15 −1

Details

732# Hook de notification : ping le bureau lorsque Claude Code a besoin d'attention.732# Hook de notification : ping le bureau lorsque Claude Code a besoin d'attention.

733input=$(cat)733input=$(cat)

734title="Claude Code'734title="Claude Code'

735body=$(jq -r '.message // "Needs your attention"' <<<"$input")735body=$(jq -r '.message // 'Needs your attention"' <<<"$input")

736seq=$(printf '\033]777;notify;%s;%s\007' "$title" "$body")736seq=$(printf '\033]777;notify;%s;%s\007' "$title" "$body")

737jq -nc --arg seq "$seq" '{terminalSequence: $seq}'737jq -nc --arg seq "$seq" '{terminalSequence: $seq}'

738```738```


1230| `subagent_type` | string | `"Explore"` | Type d'agent spécialisé à utiliser |1230| `subagent_type` | string | `"Explore"` | Type d'agent spécialisé à utiliser |

1231| `model` | string | `"sonnet"` | Alias de modèle optionnel pour remplacer la valeur par défaut |1231| `model` | string | `"sonnet"` | Alias de modèle optionnel pour remplacer la valeur par défaut |

1232 1232 

1233Dans `PostToolUse`, `tool_response` pour un appel Agent complété porte le texte final du subagent ainsi que la télémétrie d'utilisation. Lisez ces champs pour enregistrer le coût par subagent à partir d'un hook :

1234 

1235| Champ | Type | Exemple | Description |

1236| :------------------ | :----- | :---------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------- |

1237| `status` | string | `"completed"` | `"completed"` pour les appels synchrones, `"async_launched"` pour `run_in_background: true` |

1238| `agentId` | string | `"a4d2c8f1e0b3a297"` | Identifiant pour l'exécution du subagent |

1239| `content` | array | `[{"type": "text", "text": "Found 12 endpoints..."}]` | Les blocs de texte finaux du subagent |

1240| `totalTokens` | number | `12450` | Tokens totaux facturés sur les tours du subagent |

1241| `totalDurationMs` | number | `48211` | Durée murale de l'exécution du subagent |

1242| `totalToolUseCount` | number | `7` | Nombre d'appels d'outil que le subagent a effectués |

1243| `usage` | object | `{"input_tokens": 8320, ...}` | Ventilation des tokens par type : `input_tokens`, `output_tokens`, `cache_creation_input_tokens`, `cache_read_input_tokens` |

1244 

1245Pour les appels `run_in_background: true`, l'outil retourne immédiatement après le lancement du subagent, donc `tool_response` ne porte aucun champ d'utilisation. Il a `status: "async_launched"`, `agentId`, `description`, `prompt` et `outputFile` à la place.

1246 

1233##### AskUserQuestion1247##### AskUserQuestion

1234 1248 

1235Pose à l'utilisateur une à quatre questions à choix multiples.1249Pose à l'utilisateur une à quatre questions à choix multiples.

mcp.md +6 −4

Details

953 953 

954### Configurer la recherche d'outils954### Configurer la recherche d'outils

955 955 

956La recherche d'outils est activée par défaut : les outils MCP sont différés et découverts à la demande. Elle est désactivée par défaut sur Vertex AI, qui n'accepte pas l'en-tête bêta de recherche d'outils, et lorsque `ANTHROPIC_BASE_URL` pointe vers un hôte non-propriétaire, car la plupart des proxies ne transfèrent pas les blocs `tool_reference`. Si votre proxy transfère les blocs `tool_reference`, définissez `ENABLE_TOOL_SEARCH` explicitement pour opter pour. Cette fonctionnalité nécessite des modèles qui supportent les blocs `tool_reference` : Sonnet 4 et ultérieur, ou Opus 4 et ultérieur. Les modèles Haiku ne supportent pas la recherche d'outils.956La recherche d'outils est activée par défaut : les outils MCP sont différés et découverts à la demande. Claude Code la désactive par défaut sur Vertex AI. Elle est également désactivée lorsque `ANTHROPIC_BASE_URL` pointe vers un hôte non-propriétaire, car la plupart des proxies ne transfèrent pas les blocs `tool_reference`. Définissez `ENABLE_TOOL_SEARCH` explicitement pour remplacer l'un ou l'autre des mécanismes de secours.

957 

958La recherche d'outils nécessite un modèle qui supporte les blocs `tool_reference` : Sonnet 4 et ultérieur, ou Opus 4 et ultérieur. Les modèles Haiku ne le supportent pas. Sur Vertex AI, la recherche d'outils est supportée pour Claude Sonnet 4.5 et ultérieur et Claude Opus 4.5 et ultérieur.

957 959 

958Contrôlez le comportement de la recherche d'outils avec la variable d'environnement `ENABLE_TOOL_SEARCH` :960Contrôlez le comportement de la recherche d'outils avec la variable d'environnement `ENABLE_TOOL_SEARCH` :

959 961 

960| Valeur | Comportement |962| Valeur | Comportement |

961| :----------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |963| :----------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

962| (non défini) | Tous les outils MCP différés et chargés à la demande. Revient au chargement à l'avance sur Vertex AI ou lorsque `ANTHROPIC_BASE_URL` est un hôte non-propriétaire |964| (non défini) | Tous les outils MCP différés et chargés à la demande. Revient au chargement à l'avance sur Vertex AI ou lorsque `ANTHROPIC_BASE_URL` est un hôte non-propriétaire |

963| `true` | Tous les outils MCP différés. Claude Code envoie l'en-tête bêta même sur Vertex AI et via les proxies. Les demandes échouent si le backend ne supporte pas les blocs `tool_reference` |965| `true` | Tous les outils MCP différés. Claude Code envoie l'en-tête bêta même sur Vertex AI et via les proxies. Les demandes échouent sur les modèles Vertex AI antérieurs à Sonnet 4.5 ou Opus 4.5, ou sur les proxies qui ne supportent pas les blocs `tool_reference` |

964| `auto` | Mode seuil : les outils se chargent à l'avance s'ils s'ajustent dans 10 % de la fenêtre de contexte, différés sinon |966| `auto` | Mode seuil : les outils se chargent à l'avance s'ils s'ajustent dans 10 % de la fenêtre de contexte, différés sinon |

965| `auto:<N>` | Mode seuil avec un pourcentage personnalisé, où `<N>` est 0-100 (par exemple, `auto:5` pour 5 %) |967| `auto:N` | Mode seuil avec un pourcentage personnalisé, où `N` est 0-100. Par exemple, `auto:5` pour 5 % |

966| `false` | Tous les outils MCP chargés à l'avance, pas de différé |968| `false` | Tous les outils MCP chargés à l'avance, pas de différé |

967 969 

968```bash theme={null}970```bash theme={null}

Details

163export ANTHROPIC_DEFAULT_HAIKU_MODEL='claude-haiku-4-5'163export ANTHROPIC_DEFAULT_HAIKU_MODEL='claude-haiku-4-5'

164```164```

165 165 

166Les tâches en arrière-plan telles que la génération de titres de session utilisent le modèle petit/rapide, normalement un modèle de classe Haiku. Sur Foundry, Claude Code utilise par défaut le modèle principal car tous les comptes n'ont pas de déploiement Haiku. Pour utiliser Haiku pour les tâches en arrière-plan, définissez `ANTHROPIC_DEFAULT_HAIKU_MODEL` sur un déploiement Haiku disponible dans votre compte, comme indiqué ci-dessus.

167 

166Pour les ID de modèle actuels et hérités, consultez [Aperçu des modèles](https://platform.claude.com/docs/en/about-claude/models/overview). Consultez [Configuration des modèles](/fr/model-config#pin-models-for-third-party-deployments) pour la liste complète des variables d'environnement.168Pour les ID de modèle actuels et hérités, consultez [Aperçu des modèles](https://platform.claude.com/docs/en/about-claude/models/overview). Consultez [Configuration des modèles](/fr/model-config#pin-models-for-third-party-deployments) pour la liste complète des variables d'environnement.

167 169 

168[Le cache des invites](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) est activé automatiquement. Pour demander un TTL de cache d'une heure au lieu de la valeur par défaut de 5 minutes, définissez la variable suivante ; les écritures de cache avec un TTL d'une heure sont facturées à un taux plus élevé :170[Le cache des invites](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) est activé automatiquement. Pour demander un TTL de cache d'une heure au lieu de la valeur par défaut de 5 minutes, définissez la variable suivante ; les écritures de cache avec un TTL d'une heure sont facturées à un taux plus élevé :

settings.md +3 −1

Details

533 533 

534### Vérifier les paramètres actifs534### Vérifier les paramètres actifs

535 535 

536Exécutez `/status` dans Claude Code pour voir quelles sources de paramètres sont actives et d' elles proviennent. La sortie affiche chaque couche de configuration (gérée, utilisateur, projet) ainsi que son origine, telle que `Enterprise managed settings (remote)`, `Enterprise managed settings (plist)`, `Enterprise managed settings (HKLM)`, `Enterprise managed settings (HKCU)`, ou `Enterprise managed settings (file)`. Si un fichier de paramètres contient des erreurs, `/status` signale le problème pour que vous puissiez le corriger.536Exécutez `/status` dans Claude Code pour voir quelles sources de paramètres sont actives. L'onglet Status inclut une ligne `Setting sources` qui énumère chaque couche que Claude Code a chargée pour la session actuelle, telle que `User settings` ou `Project local settings`. Quand les [paramètres gérés](/fr/managed-settings) sont en vigueur, l'entrée affiche le canal de livraison entre parenthèses, par exemple `Enterprise managed settings (remote)`, `(plist)`, `(HKLM)`, `(HKCU)`, ou `(file)`. Une couche n'apparaît dans la liste que quand cette source est chargée avec au moins une clé, donc une liste vide signifie qu'aucune source de paramètres n'a été trouvée.

537 

538La ligne `Setting sources` confirme quelles sources sont lues. Elle n'affiche pas quelle couche a fourni chaque clé individuelle. L'onglet Config dans le même dialogue est un éditeur pour un ensemble fixe de bascules telles que le thème et la sortie détaillée, pas une vue du contenu de votre `settings.json`. Si un fichier de paramètres contient des erreurs, telles que du JSON invalide ou une valeur qui échoue la validation, `/status` signale le problème pour que vous puissiez le corriger.

537 539 

538### Points clés du système de configuration540### Points clés du système de configuration

539 541