SpyBara
Go Premium

Documentation 2026-10-29 23:57 UTC to 2026-10-30 23:01 UTC

90 files changed +4,591 −4,538. View all changes and history on the product overview
2026
Fri 30 23:01 Thu 29 23:57 Wed 28 23:57 Tue 27 22:59 Mon 26 22:57 Sun 25 23:58 Sat 24 22:59 Fri 23 22:59 Thu 22 22:58 Wed 21 23:02 Tue 20 23:00 Mon 19 23:58 Sat 17 23:57 Fri 16 22:59 Thu 15 23:58 Wed 14 22:58 Tue 13 23:57 Sun 11 23:57 Sat 10 23:01 Fri 9 23:02 Thu 8 22:58 Wed 7 23:59 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59
Details

77* **Python :** vérifiez les types de messages avec `isinstance()` par rapport aux classes importées de `claude_agent_sdk` (par exemple, `isinstance(message, ResultMessage)`).77* **Python :** vérifiez les types de messages avec `isinstance()` par rapport aux classes importées de `claude_agent_sdk` (par exemple, `isinstance(message, ResultMessage)`).

78* **TypeScript :** vérifiez le champ de chaîne `type` (par exemple, `message.type === "result"`). `AssistantMessage` et `UserMessage` enveloppent le message API brut dans un champ `.message`, donc les blocs de contenu sont à `message.message.content`, pas `message.content`.78* **TypeScript :** vérifiez le champ de chaîne `type` (par exemple, `message.type === "result"`). `AssistantMessage` et `UserMessage` enveloppent le message API brut dans un champ `.message`, donc les blocs de contenu sont à `message.message.content`, pas `message.content`.

79 79 

80> **Exemple : Vérifier les types de messages et gérer les résultats**80> [accordion] Exemple : Vérifier les types de messages et gérer les résultats

81>81>

82> ```python Python theme={null}82> ```python Python theme={null}

83> import asyncio83> import asyncio


273* **Hook `PreCompact` :** Exécutez une logique personnalisée avant la compaction, par exemple pour archiver la transcription complète. Le hook reçoit un champ `trigger` (`manual` ou `auto`). Voir [hooks](https://code.claude.com/docs/fr/agent-sdk/hooks.md).273* **Hook `PreCompact` :** Exécutez une logique personnalisée avant la compaction, par exemple pour archiver la transcription complète. Le hook reçoit un champ `trigger` (`manual` ou `auto`). Voir [hooks](https://code.claude.com/docs/fr/agent-sdk/hooks.md).

274* **Compaction manuelle :** Envoyez `/compact` comme chaîne de prompt pour déclencher la compaction à la demande. Les commandes envoyées de cette façon sont des entrées SDK ordinaires. Voir [dispatch commands by name](https://code.claude.com/docs/fr/agent-sdk/skills.md#dispatch-commands-by-name).274* **Compaction manuelle :** Envoyez `/compact` comme chaîne de prompt pour déclencher la compaction à la demande. Les commandes envoyées de cette façon sont des entrées SDK ordinaires. Voir [dispatch commands by name](https://code.claude.com/docs/fr/agent-sdk/skills.md#dispatch-commands-by-name).

275 275 

276> **Exemple : Instructions de résumé dans CLAUDE.md**276> [accordion] Exemple : Instructions de résumé dans CLAUDE.md

277>277>

278> Ajoutez une section au CLAUDE.md de votre projet indiquant au compacteur ce qu'il faut préserver. Le nom d'en-tête n'est pas spécial ; utilisez n'importe quel label clair.278> Ajoutez une section au CLAUDE.md de votre projet indiquant au compacteur ce qu'il faut préserver. Le nom d'en-tête n'est pas spécial ; utilisez n'importe quel label clair.

279>279>

Details

42 42 

43Les exemples Python de cette page qui effectuent des requêtes HTTP utilisent [httpx](https://www.python-httpx.org/). Ajoutez-le avec le gestionnaire de paquets utilisé par votre projet :43Les exemples Python de cette page qui effectuent des requêtes HTTP utilisent [httpx](https://www.python-httpx.org/). Ajoutez-le avec le gestionnaire de paquets utilisé par votre projet :

44 44 

45**Python (uv)**45> [tab] Python (uv)

46 46>

47```bash theme={null}47> ```bash theme={null}

48uv add httpx48> uv add httpx

49```49> ```

50 

51**Python (pip)**

52 50 

53```bash theme={null}51> [tab] Python (pip)

54pip install httpx52>

55```53> ```bash theme={null}

54> pip install httpx

55> ```

56 56 

57### Exemple d'outil météo57### Exemple d'outil météo

58 58 


198 198 

199Combinez cet extrait avec les définitions d'outil et de serveur de l'[exemple d'outil météo](#weather-tool-example) dans un seul fichier, `weather.py` ou `weather.ts`, puis exécutez-le depuis votre terminal :199Combinez cet extrait avec les définitions d'outil et de serveur de l'[exemple d'outil météo](#weather-tool-example) dans un seul fichier, `weather.py` ou `weather.ts`, puis exécutez-le depuis votre terminal :

200 200 

201**TypeScript**201> [tab] TypeScript

202 202>

203```bash theme={null}203> ```bash theme={null}

204npx tsx weather.ts204> npx tsx weather.ts

205```205> ```

206 

207**Python (uv)**

208 

209```bash theme={null}

210uv run weather.py

211```

212 

213**Python (pip)**

214 206 

215Activez l'environnement virtuel dans lequel vous avez installé le SDK, puis exécutez :207> [tab] Python (uv)

208>

209> ```bash theme={null}

210> uv run weather.py

211> ```

216 212 

217```bash theme={null}213> [tab] Python (pip)

218python weather.py214>

219```215> Activez l'environnement virtuel dans lequel vous avez installé le SDK, puis exécutez :

216>

217> ```bash theme={null}

218> python weather.py

219> ```

220 220 

221Claude appelle `get_temperature` et le script affiche une réponse d'une ligne avec la température actuelle à San Francisco.221Claude appelle `get_temperature` et le script affiche une réponse d'une ligne avec la température actuelle à San Francisco.

222 222 

Details

585>585>

586> Ouvrez votre fichier utilitaire (`utils.py` ou `utils.ts`) dans votre IDE ou éditeur avant d'exécuter le script. Vous verrez le fichier se mettre à jour en temps réel alors que l'agent ajoute des commentaires de documentation, puis revenir à l'original lorsque vous choisissez de rembobiner.586> Ouvrez votre fichier utilitaire (`utils.py` ou `utils.ts`) dans votre IDE ou éditeur avant d'exécuter le script. Vous verrez le fichier se mettre à jour en temps réel alors que l'agent ajoute des commentaires de documentation, puis revenir à l'original lorsque vous choisissez de rembobiner.

587 587 

588**Python**588> [tab] Python

589 589>

590```bash theme={null}590> ```bash theme={null}

591python try_checkpointing.py591> python try_checkpointing.py

592```592> ```

593 

594**TypeScript**

595 593 

596```bash theme={null}594> [tab] TypeScript

597npx tsx try_checkpointing.ts595>

598```596> ```bash theme={null}

597> npx tsx try_checkpointing.ts

598> ```

599 599 

600Vous verrez l'agent ajouter des commentaires de documentation, puis une invite vous demandant si vous souhaitez rembobiner. Si vous choisissez oui, le fichier est restauré à son état d'origine.600Vous verrez l'agent ajouter des commentaires de documentation, puis une invite vous demandant si vous souhaitez rembobiner. Si vous choisissez oui, le fichier est restauré à son état d'origine.

601 601 

agent-sdk/mcp.md +98 −98

Details

386 386 

387Utilisez le champ `env` pour transmettre les clés API, les jetons et autres identifiants au serveur MCP :387Utilisez le champ `env` pour transmettre les clés API, les jetons et autres identifiants au serveur MCP :

388 388 

389**Dans le code**389> [tab] Dans le code

390 390>

391```typescript TypeScript hidelines={1,-1} theme={null}391> ```typescript TypeScript hidelines={1,-1} theme={null}

392const _ = {392> const _ = {

393 options: {393> options: {

394 mcpServers: {394> mcpServers: {

395 "api-server": {395> "api-server": {

396 command: "npx",396> command: "npx",

397 args: ["-y", "@your-org/api-mcp-server"],397> args: ["-y", "@your-org/api-mcp-server"],

398 env: {398> env: {

399 API_KEY: process.env.API_KEY399> API_KEY: process.env.API_KEY

400 }400> }

401 }401> }

402 },402> },

403 allowedTools: ["mcp__api-server__*"]403> allowedTools: ["mcp__api-server__*"]

404 }404> }

405};405> };

406```406> ```

407 407>

408```python Python theme={null}408> ```python Python theme={null}

409options = ClaudeAgentOptions(409> options = ClaudeAgentOptions(

410 mcp_servers={410> mcp_servers={

411 "api-server": {411> "api-server": {

412 "command": "npx",412> "command": "npx",

413 "args": ["-y", "@your-org/api-mcp-server"],413> "args": ["-y", "@your-org/api-mcp-server"],

414 "env": {"API_KEY": os.environ["API_KEY"]},414> "env": {"API_KEY": os.environ["API_KEY"]},

415 }415> }

416 },416> },

417 allowed_tools=["mcp__api-server__*"],417> allowed_tools=["mcp__api-server__*"],

418)418> )

419```419> ```

420 420 

421**.mcp.json**421> [tab] .mcp.json

422 422>

423```json theme={null}423> ```json theme={null}

424{424> {

425 "mcpServers": {425> "mcpServers": {

426 "api-server": {426> "api-server": {

427 "command": "npx",427> "command": "npx",

428 "args": ["-y", "@your-org/api-mcp-server"],428> "args": ["-y", "@your-org/api-mcp-server"],

429 "env": {429> "env": {

430 "API_KEY": "${API_KEY}"430> "API_KEY": "${API_KEY}"

431 }431> }

432 }432> }

433 }433> }

434}434> }

435```435> ```

436 436>

437La syntaxe `${API_KEY}` développe les variables d'environnement au moment de l'exécution.437> La syntaxe `${API_KEY}` développe les variables d'environnement au moment de l'exécution.

438 438 

439### En-têtes HTTP pour les serveurs distants439### En-têtes HTTP pour les serveurs distants

440 440 

441Pour les serveurs HTTP et SSE, transmettez les en-têtes d'authentification directement dans la configuration du serveur :441Pour les serveurs HTTP et SSE, transmettez les en-têtes d'authentification directement dans la configuration du serveur :

442 442 

443**Dans le code**443> [tab] Dans le code

444 444>

445```typescript TypeScript hidelines={1,-1} theme={null}445> ```typescript TypeScript hidelines={1,-1} theme={null}

446const _ = {446> const _ = {

447 options: {447> options: {

448 mcpServers: {448> mcpServers: {

449 "secure-api": {449> "secure-api": {

450 type: "http",450> type: "http",

451 url: "https://api.example.com/mcp",451> url: "https://api.example.com/mcp",

452 headers: {452> headers: {

453 Authorization: `Bearer ${process.env.API_TOKEN}`453> Authorization: `Bearer ${process.env.API_TOKEN}`

454 }454> }

455 }455> }

456 },456> },

457 allowedTools: ["mcp__secure-api__*"]457> allowedTools: ["mcp__secure-api__*"]

458 }458> }

459};459> };

460```460> ```

461 461>

462```python Python theme={null}462> ```python Python theme={null}

463options = ClaudeAgentOptions(463> options = ClaudeAgentOptions(

464 mcp_servers={464> mcp_servers={

465 "secure-api": {465> "secure-api": {

466 "type": "http",466> "type": "http",

467 "url": "https://api.example.com/mcp",467> "url": "https://api.example.com/mcp",

468 "headers": {"Authorization": f"Bearer {os.environ['API_TOKEN']}"},468> "headers": {"Authorization": f"Bearer {os.environ['API_TOKEN']}"},

469 }469> }

470 },470> },

471 allowed_tools=["mcp__secure-api__*"],471> allowed_tools=["mcp__secure-api__*"],

472)472> )

473```473> ```

474 474 

475**.mcp.json**475> [tab] .mcp.json

476 476>

477```json theme={null}477> ```json theme={null}

478{478> {

479 "mcpServers": {479> "mcpServers": {

480 "secure-api": {480> "secure-api": {

481 "type": "http",481> "type": "http",

482 "url": "https://api.example.com/mcp",482> "url": "https://api.example.com/mcp",

483 "headers": {483> "headers": {

484 "Authorization": "Bearer ${API_TOKEN}"484> "Authorization": "Bearer ${API_TOKEN}"

485 }485> }

486 }486> }

487 }487> }

488}488> }

489```489> ```

490 490>

491La syntaxe `${API_TOKEN}` développe les variables d'environnement au moment de l'exécution.491> La syntaxe `${API_TOKEN}` développe les variables d'environnement au moment de l'exécution.

492 492 

493Pour un exemple complet et fonctionnel d'un serveur distant authentifié avec des en-têtes, consultez [Lister les problèmes d'un référentiel](#list-issues-from-a-repository).493Pour un exemple complet et fonctionnel d'un serveur distant authentifié avec des en-têtes, consultez [Lister les problèmes d'un référentiel](#list-issues-from-a-repository).

494 494 

Details

163 163 

164Vous pouvez définir le mode de permission une fois au démarrage d'une requête, ou le modifier dynamiquement pendant que la session est active.164Vous pouvez définir le mode de permission une fois au démarrage d'une requête, ou le modifier dynamiquement pendant que la session est active.

165 165 

166**Au moment de la requête**166> [tab] Au moment de la requête

167 167>

168Passez `permission_mode` (Python) ou `permissionMode` (TypeScript) lors de la création d'une requête.168> Passez `permission_mode` (Python) ou `permissionMode` (TypeScript) lors de la création d'une requête.

169 169>

170```python Python theme={null}170> ```python Python theme={null}

171import asyncio171> import asyncio

172from claude_agent_sdk import query, ClaudeAgentOptions172> from claude_agent_sdk import query, ClaudeAgentOptions

173 173>

174 174>

175async def main():175> async def main():

176 async for message in query(176> async for message in query(

177 prompt="Help me refactor this code",177> prompt="Help me refactor this code",

178 options=ClaudeAgentOptions(178> options=ClaudeAgentOptions(

179 permission_mode="default", # Set the mode here179> permission_mode="default", # Set the mode here

180 ),180> ),

181 ):181> ):

182 if hasattr(message, "result"):182> if hasattr(message, "result"):

183 print(message.result)183> print(message.result)

184 184>

185 185>

186asyncio.run(main())186> asyncio.run(main())

187```187> ```

188 188>

189```typescript TypeScript theme={null}189> ```typescript TypeScript theme={null}

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

191 191>

192async function main() {192> async function main() {

193 for await (const message of query({193> for await (const message of query({

194 prompt: "Help me refactor this code",194> prompt: "Help me refactor this code",

195 options: {195> options: {

196 permissionMode: "default" // Set the mode here196> permissionMode: "default" // Set the mode here

197 }197> }

198 })) {198> })) {

199 if ("result" in message) {199> if ("result" in message) {

200 console.log(message.result);200> console.log(message.result);

201 }201> }

202 }202> }

203}203> }

204 204>

205main();205> main();

206```206> ```

207 

208**Pendant le streaming**

209 

210Appelez `set_permission_mode()` (Python) ou `setPermissionMode()` (TypeScript) pour modifier le mode en cours de session. Le nouveau mode prend effet immédiatement pour toutes les demandes d'outils suivantes. Cela vous permet de commencer de manière restrictive et d'assouplir les permissions à mesure que la confiance augmente, par exemple en passant à `acceptEdits` après avoir examiné l'approche initiale de Claude.

211 

212```python Python theme={null}

213import asyncio

214from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

215 

216 

217async def main():

218 async with ClaudeSDKClient(

219 options=ClaudeAgentOptions(

220 permission_mode="default", # Start in default mode

221 )

222 ) as client:

223 await client.query("Help me refactor this code")

224 

225 # Change mode dynamically mid-session

226 await client.set_permission_mode("acceptEdits")

227 

228 # Process messages with the new permission mode

229 async for message in client.receive_response():

230 if hasattr(message, "result"):

231 print(message.result)

232 

233 

234asyncio.run(main())

235```

236 207 

237```typescript TypeScript theme={null}208> [tab] Pendant le streaming

238import { query } from "@anthropic-ai/claude-agent-sdk";209>

239 210> Appelez `set_permission_mode()` (Python) ou `setPermissionMode()` (TypeScript) pour modifier le mode en cours de session. Le nouveau mode prend effet immédiatement pour toutes les demandes d'outils suivantes. Cela vous permet de commencer de manière restrictive et d'assouplir les permissions à mesure que la confiance augmente, par exemple en passant à `acceptEdits` après avoir examiné l'approche initiale de Claude.

240async function main() {211>

241 const q = query({212> ```python Python theme={null}

242 prompt: "Help me refactor this code",213> import asyncio

243 options: {214> from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

244 permissionMode: "default" // Start in default mode215>

245 }216>

246 });217> async def main():

247 218> async with ClaudeSDKClient(

248 // Change mode dynamically mid-session219> options=ClaudeAgentOptions(

249 await q.setPermissionMode("acceptEdits");220> permission_mode="default", # Start in default mode

250 221> )

251 // Process messages with the new permission mode222> ) as client:

252 for await (const message of q) {223> await client.query("Help me refactor this code")

253 if ("result" in message) {224>

254 console.log(message.result);225> # Change mode dynamically mid-session

255 }226> await client.set_permission_mode("acceptEdits")

256 }227>

257}228> # Process messages with the new permission mode

258 229> async for message in client.receive_response():

259main();230> if hasattr(message, "result"):

260```231> print(message.result)

232>

233>

234> asyncio.run(main())

235> ```

236>

237> ```typescript TypeScript theme={null}

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

239>

240> async function main() {

241> const q = query({

242> prompt: "Help me refactor this code",

243> options: {

244> permissionMode: "default" // Start in default mode

245> }

246> });

247>

248> // Change mode dynamically mid-session

249> await q.setPermissionMode("acceptEdits");

250>

251> // Process messages with the new permission mode

252> for await (const message of q) {

253> if ("result" in message) {

254> console.log(message.result);

255> }

256> }

257> }

258>

259> main();

260> ```

261 261 

262### Détails des modes262### Détails des modes

263 263 

Details

36 36 

37Installez le package du SDK Agent pour votre langage :37Installez le package du SDK Agent pour votre langage :

38 38 

39**TypeScript (nouveau projet)**39> [tab] TypeScript (nouveau projet)

40 40>

41```bash theme={null}41> ```bash theme={null}

42npm init -y42> npm init -y

43npm pkg set type=module43> npm pkg set type=module

44npm install @anthropic-ai/claude-agent-sdk44> npm install @anthropic-ai/claude-agent-sdk

45npm install --save-dev tsx45> npm install --save-dev tsx

46```46> ```

47 47>

48Définir `"type": "module"` dans `package.json` permet à votre script d'agent d'utiliser `await` au niveau supérieur, et [tsx](https://tsx.hirok.io) exécute les fichiers TypeScript directement. npm affiche `added N packages` lorsque l'installation réussit.48> Définir `"type": "module"` dans `package.json` permet à votre script d'agent d'utiliser `await` au niveau supérieur, et [tsx](https://tsx.hirok.io) exécute les fichiers TypeScript directement. npm affiche `added N packages` lorsque l'installation réussit.

49 

50**TypeScript (projet existant)**

51 

52```bash theme={null}

53npm install @anthropic-ai/claude-agent-sdk

54npm install --save-dev tsx

55```

56 

57[tsx](https://tsx.hirok.io) exécute les fichiers TypeScript directement. Si votre projet utilise CommonJS, nommez votre script d'agent `agent.mts` au lieu de `agent.ts`. L'extension `.mts` fait que tsx traite le fichier comme un module ES, donc `await` au niveau supérieur fonctionne sans convertir tout votre projet en modules ES. Utilisez `agent.mts` à la place de `agent.ts` dans les étapes de création et d'exécution plus tard dans ce démarrage rapide.

58 

59**Python (uv)**

60 

61[Installez uv](https://docs.astral.sh/uv/), un gestionnaire de paquets Python rapide qui gère automatiquement les environnements virtuels. Ensuite, initialisez un projet et ajoutez le SDK :

62 

63```bash theme={null}

64uv init

65uv add claude-agent-sdk

66```

67 

68**Python (pip)**

69 

70Créez et activez un environnement virtuel, puis installez le package.

71 

72Sur macOS ou Linux :

73 

74```bash theme={null}

75python3 -m venv .venv

76source .venv/bin/activate

77pip install claude-agent-sdk

78```

79 49 

80Sur Windows :50> [tab] TypeScript (projet existant)

51>

52> ```bash theme={null}

53> npm install @anthropic-ai/claude-agent-sdk

54> npm install --save-dev tsx

55> ```

56>

57> [tsx](https://tsx.hirok.io) exécute les fichiers TypeScript directement. Si votre projet utilise CommonJS, nommez votre script d'agent `agent.mts` au lieu de `agent.ts`. L'extension `.mts` fait que tsx traite le fichier comme un module ES, donc `await` au niveau supérieur fonctionne sans convertir tout votre projet en modules ES. Utilisez `agent.mts` à la place de `agent.ts` dans les étapes de création et d'exécution plus tard dans ce démarrage rapide.

81 58 

82```powershell theme={null}59> [tab] Python (uv)

83py -m venv .venv60>

84.venv\Scripts\Activate.ps161> [Installez uv](https://docs.astral.sh/uv/), un gestionnaire de paquets Python rapide qui gère automatiquement les environnements virtuels. Ensuite, initialisez un projet et ajoutez le SDK :

85pip install claude-agent-sdk62>

86```63> ```bash theme={null}

64> uv init

65> uv add claude-agent-sdk

66> ```

87 67 

88Si PowerShell bloque `Activate.ps1` avec une erreur de politique d'exécution, exécutez d'abord `Set-ExecutionPolicy -Scope Process RemoteSigned`.68> [tab] Python (pip)

69>

70> Créez et activez un environnement virtuel, puis installez le package.

71>

72> Sur macOS ou Linux :

73>

74> ```bash theme={null}

75> python3 -m venv .venv

76> source .venv/bin/activate

77> pip install claude-agent-sdk

78> ```

79>

80> Sur Windows :

81>

82> ```powershell theme={null}

83> py -m venv .venv

84> .venv\Scripts\Activate.ps1

85> pip install claude-agent-sdk

86> ```

87>

88> Si PowerShell bloque `Activate.ps1` avec une erreur de politique d'exécution, exécutez d'abord `Set-ExecutionPolicy -Scope Process RemoteSigned`.

89 89 

90> [!NOTE]90> [!NOTE]

91>91>


98 98 

99Obtenez une clé API à partir de la [Console Claude](https://platform.claude.com/), puis définissez-la comme variable d'environnement dans le shell où vous exécuterez votre agent :99Obtenez une clé API à partir de la [Console Claude](https://platform.claude.com/), puis définissez-la comme variable d'environnement dans le shell où vous exécuterez votre agent :

100 100 

101**macOS / Linux**101> [tab] macOS / Linux

102 102>

103```bash theme={null}103> ```bash theme={null}

104export ANTHROPIC_API_KEY=your-api-key104> export ANTHROPIC_API_KEY=your-api-key

105```105> ```

106 

107**Windows (PowerShell)**

108 106 

109```powershell theme={null}107> [tab] Windows (PowerShell)

110$env:ANTHROPIC_API_KEY = "your-api-key"108>

111```109> ```powershell theme={null}

110> $env:ANTHROPIC_API_KEY = "your-api-key"

111> ```

112 112 

113Le SDK lit la clé à partir de l'environnement du processus qui exécute votre agent ; il ne charge pas les fichiers `.env` automatiquement. Si vous conservez la clé dans un fichier `.env`, chargez-la vous-même, par exemple avec le package `dotenv`, avant d'appeler le SDK.113Le SDK lit la clé à partir de l'environnement du processus qui exécute votre agent ; il ne charge pas les fichiers `.env` automatiquement. Si vous conservez la clé dans un fichier `.env`, chargez-la vous-même, par exemple avec le package `dotenv`, avant d'appeler le SDK.

114 114 


224 224 

225Votre agent est prêt. Exécutez-le avec la commande suivante :225Votre agent est prêt. Exécutez-le avec la commande suivante :

226 226 

227**TypeScript**227> [tab] TypeScript

228 228>

229```bash theme={null}229> ```bash theme={null}

230npx tsx agent.ts230> npx tsx agent.ts

231```231> ```

232 232>

233Si vous avez nommé votre script `agent.mts`, exécutez `npx tsx agent.mts` à la place.233> Si vous avez nommé votre script `agent.mts`, exécutez `npx tsx agent.mts` à la place.

234 

235**Python (uv)**

236 

237```bash theme={null}

238uv run agent.py

239```

240 

241**Python (pip)**

242 234 

243Avec votre environnement virtuel toujours activé :235> [tab] Python (uv)

236>

237> ```bash theme={null}

238> uv run agent.py

239> ```

244 240 

245```bash theme={null}241> [tab] Python (pip)

246python agent.py242>

247```243> Avec votre environnement virtuel toujours activé :

244>

245> ```bash theme={null}

246> python agent.py

247> ```

248 248 

249Au fur et à mesure qu'il travaille, l'agent imprime son raisonnement et chaque outil qu'il appelle, se terminant par `Done: success`. Après l'exécution, vérifiez `utils.py`. Vous verrez du code défensif gérant les listes vides et les utilisateurs nuls. Votre agent a autonomement :249Au fur et à mesure qu'il travaille, l'agent imprime son raisonnement et chaque outil qu'il appelle, se terminant par `Done: success`. Après l'exécution, vérifiez `utils.py`. Vous verrez du code défensif gérant les listes vides et les utilisateurs nuls. Votre agent a autonomement :

250 250 

Details

470 470 

471Chaque SDK expose le rejet différemment :471Chaque SDK expose le rejet différemment :

472 472 

473**TypeScript**473> [tab] TypeScript

474 474>

475Le SDK TypeScript lève une `Error` indiquant la règle que l'entrée a enfreinte. Par exemple, `skills: ["docs:*"]` lève :475> Le SDK TypeScript lève une `Error` indiquant la règle que l'entrée a enfreinte. Par exemple, `skills: ["docs:*"]` lève :

476 476>

477```text theme={null}477> ```text theme={null}

478Invalid skill name "docs:*": wildcard-suffix names are not allowed; list each skill by its exact name.478> Invalid skill name "docs:*": wildcard-suffix names are not allowed; list each skill by its exact name.

479```479> ```

480 480>

481Un nom vide rapporte `Skill names must be non-empty strings.`481> Un nom vide rapporte `Skill names must be non-empty strings.`

482 482>

483Avant le TypeScript Agent SDK 0.3.221, le SDK n'exécutait pas cette vérification.483> Avant le TypeScript Agent SDK 0.3.221, le SDK n'exécutait pas cette vérification.

484 

485**Python**

486 

487Le SDK Python lève `ValueError` indiquant la règle que l'entrée a enfreinte. Par exemple, `skills=["docs:*"]` lève :

488 

489```text theme={null}

490ValueError: Invalid skill name 'docs:*': wildcard-suffix names are not allowed; list each skill by its exact name.

491```

492 

493Un nom vide rapporte `Skill names must be non-empty strings`.

494 484 

495Avant le Python Agent SDK 0.2.129, le SDK n'exécutait pas cette vérification.485> [tab] Python

486>

487> Le SDK Python lève `ValueError` indiquant la règle que l'entrée a enfreinte. Par exemple, `skills=["docs:*"]` lève :

488>

489> ```text theme={null}

490> ValueError: Invalid skill name 'docs:*': wildcard-suffix names are not allowed; list each skill by its exact name.

491> ```

492>

493> Un nom vide rapporte `Skill names must be non-empty strings`.

494>

495> Avant le Python Agent SDK 0.2.129, le SDK n'exécutait pas cette vérification.

496 496 

497### Dépannage supplémentaire497### Dépannage supplémentaire

498 498 

Details

16 16 

17Considérez une application de recettes où un agent recherche sur le web et ramène des recettes. Sans sorties structurées, vous obtenez du texte libre que vous devriez analyser vous-même. Avec les sorties structurées, vous définissez la forme que vous souhaitez et obtenez des données typées que vous pouvez utiliser directement dans votre application.17Considérez une application de recettes où un agent recherche sur le web et ramène des recettes. Sans sorties structurées, vous obtenez du texte libre que vous devriez analyser vous-même. Avec les sorties structurées, vous définissez la forme que vous souhaitez et obtenez des données typées que vous pouvez utiliser directement dans votre application.

18 18 

19> **Sans sorties structurées**19> [accordion] Sans sorties structurées

20>20>

21> ```text theme={null}21> ```text theme={null}

22> Voici une recette classique de biscuits aux pépites de chocolat !22> Voici une recette classique de biscuits aux pépites de chocolat !


32>32>

33> Pour utiliser ceci dans votre application, vous devriez analyser le titre, convertir ' 15 minutes ' en nombre, séparer les ingrédients des instructions et gérer le formatage incohérent entre les réponses.33> Pour utiliser ceci dans votre application, vous devriez analyser le titre, convertir ' 15 minutes ' en nombre, séparer les ingrédients des instructions et gérer le formatage incohérent entre les réponses.

34 34 

35> **Avec sorties structurées**35> [accordion] Avec sorties structurées

36>36>

37> ```jsonc theme={null}37> ```jsonc theme={null}

38> {38> {

Details

225 225 

226Les helpers `ask_user` et `askUser` dans les extraits suivants représentent votre propre interface utilisateur d'invite d'application.226Les helpers `ask_user` et `askUser` dans les extraits suivants représentent votre propre interface utilisateur d'invite d'application.

227 227 

228**Approuver**228> [tab] Approuver

229 229>

230L'utilisateur approuve l'action telle quelle. Passez l'`input` de votre callback inchangée et l'outil s'exécute exactement comme Claude l'a demandé.230> L'utilisateur approuve l'action telle quelle. Passez l'`input` de votre callback inchangée et l'outil s'exécute exactement comme Claude l'a demandé.

231 231>

232```python Python theme={null}232> ```python Python theme={null}

233async def can_use_tool(tool_name, input_data, context):233> async def can_use_tool(tool_name, input_data, context):

234 print(f"Claude wants to use {tool_name}")234> print(f"Claude wants to use {tool_name}")

235 approved = await ask_user("Allow this action?")235> approved = await ask_user("Allow this action?")

236 236>

237 if approved:237> if approved:

238 return PermissionResultAllow(updated_input=input_data)238> return PermissionResultAllow(updated_input=input_data)

239 return PermissionResultDeny(message="User declined")239> return PermissionResultDeny(message="User declined")

240```240> ```

241 241>

242```typescript TypeScript theme={null}242> ```typescript TypeScript theme={null}

243canUseTool: async (toolName, input) => {243> canUseTool: async (toolName, input) => {

244 console.log(`Claude wants to use ${toolName}`);244> console.log(`Claude wants to use ${toolName}`);

245 const approved = await askUser("Allow this action?");245> const approved = await askUser("Allow this action?");

246 246>

247 if (approved) {247> if (approved) {

248 return { behavior: "allow", updatedInput: input };248> return { behavior: "allow", updatedInput: input };

249 }249> }

250 return { behavior: "deny", message: "User declined" };250> return { behavior: "deny", message: "User declined" };

251};251> };

252```252> ```

253 253 

254**Approuver avec des modifications**254> [tab] Approuver avec des modifications

255 255>

256L'utilisateur approuve mais veut d'abord modifier la demande. Vous pouvez modifier l'entrée avant l'exécution de l'outil. Claude voit le résultat mais n'est pas informé que vous avez changé quelque chose. Utile pour nettoyer les paramètres, ajouter des contraintes, ou limiter l'accès.256> L'utilisateur approuve mais veut d'abord modifier la demande. Vous pouvez modifier l'entrée avant l'exécution de l'outil. Claude voit le résultat mais n'est pas informé que vous avez changé quelque chose. Utile pour nettoyer les paramètres, ajouter des contraintes, ou limiter l'accès.

257 257>

258```python Python theme={null}258> ```python Python theme={null}

259async def can_use_tool(tool_name, input_data, context):259> async def can_use_tool(tool_name, input_data, context):

260 if tool_name == "Bash":260> if tool_name == "Bash":

261 # L'utilisateur a approuvé, mais limiter toutes les commandes au sandbox261> # L'utilisateur a approuvé, mais limiter toutes les commandes au sandbox

262 sandboxed_input = {**input_data}262> sandboxed_input = {**input_data}

263 sandboxed_input["command"] = input_data["command"].replace(263> sandboxed_input["command"] = input_data["command"].replace(

264 "/tmp", "/tmp/sandbox"264> "/tmp", "/tmp/sandbox"

265 )265> )

266 return PermissionResultAllow(updated_input=sandboxed_input)266> return PermissionResultAllow(updated_input=sandboxed_input)

267 return PermissionResultAllow(updated_input=input_data)267> return PermissionResultAllow(updated_input=input_data)

268```268> ```

269 269>

270```typescript TypeScript theme={null}270> ```typescript TypeScript theme={null}

271canUseTool: async (toolName, input) => {271> canUseTool: async (toolName, input) => {

272 if (toolName === "Bash") {272> if (toolName === "Bash") {

273 // L'utilisateur a approuvé, mais limiter toutes les commandes au sandbox273> // L'utilisateur a approuvé, mais limiter toutes les commandes au sandbox

274 const sandboxedInput = {274> const sandboxedInput = {

275 ...input,275> ...input,

276 command: input.command.replace("/tmp", "/tmp/sandbox")276> command: input.command.replace("/tmp", "/tmp/sandbox")

277 };277> };

278 return { behavior: "allow", updatedInput: sandboxedInput };278> return { behavior: "allow", updatedInput: sandboxedInput };

279 }279> }

280 return { behavior: "allow", updatedInput: input };280> return { behavior: "allow", updatedInput: input };

281};281> };

282```282> ```

283 283 

284**Approuver et mémoriser**284> [tab] Approuver et mémoriser

285 285>

286L'utilisateur approuve et ne veut pas être invité à nouveau pour ce type d'appel. Le troisième argument du callback porte `suggestions`, un tableau d'entrées [`PermissionUpdate`](https://code.claude.com/docs/fr/agent-sdk/typescript#permissionupdate) prêtes à l'emploi. Renvoyez-en une dans `updatedPermissions` pour l'appliquer. Une suggestion avec la destination `localSettings` écrit la règle dans `.claude/settings.local.json` afin que les futures sessions ignorent l'invite pour les appels correspondants.286> L'utilisateur approuve et ne veut pas être invité à nouveau pour ce type d'appel. Le troisième argument du callback porte `suggestions`, un tableau d'entrées [`PermissionUpdate`](https://code.claude.com/docs/fr/agent-sdk/typescript#permissionupdate) prêtes à l'emploi. Renvoyez-en une dans `updatedPermissions` pour l'appliquer. Une suggestion avec la destination `localSettings` écrit la règle dans `.claude/settings.local.json` afin que les futures sessions ignorent l'invite pour les appels correspondants.

287 287>

288En TypeScript, ignorez le choix always-allow pour une demande dont les options portent [`suppressAlwaysAllowRule: true`](https://code.claude.com/docs/fr/agent-sdk/typescript#canusetool). L'indice nécessite Agent SDK v0.3.268 ou ultérieur, et le `context` Python ne le porte pas.288> En TypeScript, ignorez le choix always-allow pour une demande dont les options portent [`suppressAlwaysAllowRule: true`](https://code.claude.com/docs/fr/agent-sdk/typescript#canusetool). L'indice nécessite Agent SDK v0.3.268 ou ultérieur, et le `context` Python ne le porte pas.

289 289>

290L'exemple Python nécessite `claude-agent-sdk` 0.1.80 ou ultérieur.290> L'exemple Python nécessite `claude-agent-sdk` 0.1.80 ou ultérieur.

291 291>

292```python Python theme={null}292> ```python Python theme={null}

293async def can_use_tool(tool_name, input_data, context):293> async def can_use_tool(tool_name, input_data, context):

294 choice = await ask_user(f"Allow {tool_name}?", ["once", "always", "no"])294> choice = await ask_user(f"Allow {tool_name}?", ["once", "always", "no"])

295 295>

296 if choice == "always":296> if choice == "always":

297 persist = [297> persist = [

298 s for s in context.suggestions if s.destination == "localSettings"298> s for s in context.suggestions if s.destination == "localSettings"

299 ]299> ]

300 return PermissionResultAllow(300> return PermissionResultAllow(

301 updated_input=input_data, updated_permissions=persist301> updated_input=input_data, updated_permissions=persist

302 )302> )

303 if choice == "once":303> if choice == "once":

304 return PermissionResultAllow(updated_input=input_data)304> return PermissionResultAllow(updated_input=input_data)

305 return PermissionResultDeny(message="User declined")305> return PermissionResultDeny(message="User declined")

306```306> ```

307 307>

308```typescript TypeScript theme={null}308> ```typescript TypeScript theme={null}

309canUseTool: async (toolName, input, { suggestions = [] }) => {309> canUseTool: async (toolName, input, { suggestions = [] }) => {

310 const choice = await askUser(`Allow ${toolName}?`, ["once", "always", "no"]);310> const choice = await askUser(`Allow ${toolName}?`, ["once", "always", "no"]);

311 311>

312 if (choice === "always") {312> if (choice === "always") {

313 const persist = suggestions.filter(313> const persist = suggestions.filter(

314 (s) => s.destination === "localSettings"314> (s) => s.destination === "localSettings"

315 );315> );

316 return {316> return {

317 behavior: "allow",317> behavior: "allow",

318 updatedInput: input,318> updatedInput: input,

319 updatedPermissions: persist319> updatedPermissions: persist

320 };320> };

321 }321> }

322 if (choice === "once") {322> if (choice === "once") {

323 return { behavior: "allow", updatedInput: input };323> return { behavior: "allow", updatedInput: input };

324 }324> }

325 return { behavior: "deny", message: "User declined" };325> return { behavior: "deny", message: "User declined" };

326};326> };

327```327> ```

328 328 

329**Rejeter**329> [tab] Rejeter

330 330>

331L'utilisateur ne veut pas que cette action se produise. Bloquez l'outil et fournissez un message expliquant pourquoi. Claude voit ce message et peut essayer une approche différente.331> L'utilisateur ne veut pas que cette action se produise. Bloquez l'outil et fournissez un message expliquant pourquoi. Claude voit ce message et peut essayer une approche différente.

332 332>

333```python Python theme={null}333> ```python Python theme={null}

334async def can_use_tool(tool_name, input_data, context):334> async def can_use_tool(tool_name, input_data, context):

335 approved = await ask_user(f"Allow {tool_name}?")335> approved = await ask_user(f"Allow {tool_name}?")

336 336>

337 if not approved:337> if not approved:

338 return PermissionResultDeny(message="User rejected this action")338> return PermissionResultDeny(message="User rejected this action")

339 return PermissionResultAllow(updated_input=input_data)339> return PermissionResultAllow(updated_input=input_data)

340```340> ```

341 341>

342```typescript TypeScript theme={null}342> ```typescript TypeScript theme={null}

343canUseTool: async (toolName, input) => {343> canUseTool: async (toolName, input) => {

344 const approved = await askUser(`Allow ${toolName}?`);344> const approved = await askUser(`Allow ${toolName}?`);

345 345>

346 if (!approved) {346> if (!approved) {

347 return {347> return {

348 behavior: "deny",348> behavior: "deny",

349 message: "User rejected this action"349> message: "User rejected this action"

350 };350> };

351 }351> }

352 return { behavior: "allow", updatedInput: input };352> return { behavior: "allow", updatedInput: input };

353};353> };

354```354> ```

355 355 

356**Suggérer une alternative**356> [tab] Suggérer une alternative

357 357>

358L'utilisateur ne veut pas cette action spécifique, mais a une idée différente. Bloquez l'outil et incluez des conseils dans votre message. Claude lira ceci et décidera comment procéder en fonction de vos commentaires.358> L'utilisateur ne veut pas cette action spécifique, mais a une idée différente. Bloquez l'outil et incluez des conseils dans votre message. Claude lira ceci et décidera comment procéder en fonction de vos commentaires.

359 359>

360```python Python theme={null}360> ```python Python theme={null}

361async def can_use_tool(tool_name, input_data, context):361> async def can_use_tool(tool_name, input_data, context):

362 if tool_name == "Bash" and "rm" in input_data.get("command", ""):362> if tool_name == "Bash" and "rm" in input_data.get("command", ""):

363 # L'utilisateur ne veut pas supprimer, suggérer d'archiver à la place363> # L'utilisateur ne veut pas supprimer, suggérer d'archiver à la place

364 return PermissionResultDeny(364> return PermissionResultDeny(

365 message="User doesn't want to delete files. They asked if you could compress them into an archive instead."365> message="User doesn't want to delete files. They asked if you could compress them into an archive instead."

366 )366> )

367 return PermissionResultAllow(updated_input=input_data)367> return PermissionResultAllow(updated_input=input_data)

368```368> ```

369 369>

370```typescript TypeScript theme={null}370> ```typescript TypeScript theme={null}

371canUseTool: async (toolName, input) => {371> canUseTool: async (toolName, input) => {

372 if (toolName === "Bash" && input.command.includes("rm")) {372> if (toolName === "Bash" && input.command.includes("rm")) {

373 // L'utilisateur ne veut pas supprimer, suggérer d'archiver à la place373> // L'utilisateur ne veut pas supprimer, suggérer d'archiver à la place

374 return {374> return {

375 behavior: "deny",375> behavior: "deny",

376 message:376> message:

377 "User doesn't want to delete files. They asked if you could compress them into an archive instead."377> "User doesn't want to delete files. They asked if you could compress them into an archive instead."

378 };378> };

379 }379> }

380 return { behavior: "allow", updatedInput: input };380> return { behavior: "allow", updatedInput: input };

381};381> };

382```382> ```

383 383 

384**Rediriger entièrement**384> [tab] Rediriger entièrement

385 385>

386Pour un changement de direction complet (pas seulement une nudge), utilisez [streaming input](https://code.claude.com/docs/fr/agent-sdk/streaming-vs-single-mode.md) pour envoyer à Claude une nouvelle instruction directement. Cela contourne la demande d'outil actuelle et donne à Claude des instructions entièrement nouvelles à suivre.386> Pour un changement de direction complet (pas seulement une nudge), utilisez [streaming input](https://code.claude.com/docs/fr/agent-sdk/streaming-vs-single-mode.md) pour envoyer à Claude une nouvelle instruction directement. Cela contourne la demande d'outil actuelle et donne à Claude des instructions entièrement nouvelles à suivre.

387 387 

388## Gérer les questions de clarification388## Gérer les questions de clarification

389 389 

agents.md +1 −1

Details

13| [Sous-agents](https://code.claude.com/docs/fr/sub-agents.md) | Des travailleurs délégués dans une session qui effectuent une tâche secondaire dans leur propre contexte et retournent un résumé | Une tâche secondaire inonderait votre conversation principale avec des résultats de recherche, des journaux ou des contenus de fichiers que vous ne référencerez plus |13| [Sous-agents](https://code.claude.com/docs/fr/sub-agents.md) | Des travailleurs délégués dans une session qui effectuent une tâche secondaire dans leur propre contexte et retournent un résumé | Une tâche secondaire inonderait votre conversation principale avec des résultats de recherche, des journaux ou des contenus de fichiers que vous ne référencerez plus |

14| [Vue agent](https://code.claude.com/docs/fr/agent-view.md) | Un écran pour dispatcher et surveiller les sessions s'exécutant en arrière-plan, ouvert avec `claude agents`. Aperçu de recherche | Vous avez plusieurs tâches indépendantes et voulez les déléguer, vérifier l'état en un coup d'œil et intervenir uniquement quand l'une d'elles a besoin de vous |14| [Vue agent](https://code.claude.com/docs/fr/agent-view.md) | Un écran pour dispatcher et surveiller les sessions s'exécutant en arrière-plan, ouvert avec `claude agents`. Aperçu de recherche | Vous avez plusieurs tâches indépendantes et voulez les déléguer, vérifier l'état en un coup d'œil et intervenir uniquement quand l'une d'elles a besoin de vous |

15| [Équipes d'agents](https://code.claude.com/docs/fr/agent-teams.md) | Plusieurs sessions coordonnées avec une liste de tâches partagée et une messagerie inter-agents, gérées par un responsable. Expérimental et désactivé par défaut | Vous voulez que Claude divise un projet en morceaux, les assigne et maintient les travailleurs synchronisés |15| [Équipes d'agents](https://code.claude.com/docs/fr/agent-teams.md) | Plusieurs sessions coordonnées avec une liste de tâches partagée et une messagerie inter-agents, gérées par un responsable. Expérimental et désactivé par défaut | Vous voulez que Claude divise un projet en morceaux, les assigne et maintient les travailleurs synchronisés |

16| [Projets](https://code.claude.com/docs/fr/claude-projects.md) | Une conversation continue sur claude.ai/code ou dans l'application de bureau. Claude démarre des sessions parallèles appelées threads, dans le cloud ou, quand vous le demandez, sur votre ordinateur via Remote Control, donne à chacune les instructions du projet et vous montre lesquelles ont besoin de vous. Bêta publique sur Pro et Max | Le travail s'étend sur plusieurs tâches pendant des jours ou des semaines, devrait continuer à s'exécuter quand votre machine est éteinte, et vous préférez le décrire une fois plutôt que de dispatcher et suivre chaque session |16| [Projets](https://code.claude.com/docs/fr/claude-projects.md) | Une conversation continue sur claude.ai/code ou dans l'application de bureau. Claude démarre des sessions parallèles appelées threads, dans le cloud ou, quand vous le demandez, sur votre ordinateur via Remote Control. Il donne à chacune les instructions du projet et vous montre lesquelles ont besoin de vous. Bêta publique sur Pro, Max et Ultra | Le travail s'étend sur plusieurs tâches pendant des jours ou des semaines, devrait continuer à s'exécuter quand votre machine est éteinte, et vous préférez le décrire une fois plutôt que de dispatcher et suivre chaque session |

17| [Workflows dynamiques](https://code.claude.com/docs/fr/workflows.md) | Un script qui exécute de nombreux sous-agents et vérifie leurs résultats, pour un travail trop important pour être coordonné en un seul tour ou qui nécessite plus d'une seule passe | Une tâche dépasse une poignée de sous-agents, ou vous voulez que les résultats soient vérifiés les uns par rapport aux autres : un audit à l'échelle de la base de code, une migration de 500 fichiers, une recherche vérifiée de manière croisée, ou un plan élaboré sous plusieurs angles |17| [Workflows dynamiques](https://code.claude.com/docs/fr/workflows.md) | Un script qui exécute de nombreux sous-agents et vérifie leurs résultats, pour un travail trop important pour être coordonné en un seul tour ou qui nécessite plus d'une seule passe | Une tâche dépasse une poignée de sous-agents, ou vous voulez que les résultats soient vérifiés les uns par rapport aux autres : un audit à l'échelle de la base de code, une migration de 500 fichiers, une recherche vérifiée de manière croisée, ou un plan élaboré sous plusieurs angles |

18 18 

19Dans chaque approche, les travailleurs sont des sessions Claude. Pour impliquer un outil différent, exposez-le à Claude en tant que [serveur MCP](https://code.claude.com/docs/fr/mcp.md).19Dans chaque approche, les travailleurs sont des sessions Claude. Pour impliquer un outil différent, exposez-le à Claude en tant que [serveur MCP](https://code.claude.com/docs/fr/mcp.md).

artifacts.md +4 −4

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Les artefacts sont disponibles sur les plans Pro, Max, Team et Enterprise et nécessitent une session connectée avec [`/login`](https://code.claude.com/docs/fr/setup#authenticate). Consultez [Disponibilité](#availability) pour l'ensemble complet des exigences.11> Les artefacts sont disponibles sur les plans Pro, Max, Ultra, Team et Enterprise et nécessitent une session connectée avec [`/login`](https://code.claude.com/docs/fr/setup#authenticate). Consultez [Disponibilité](#availability) pour l'ensemble complet des exigences.

12 12 

13Un [artefact](https://claude.com/features/artifacts) est une page web en direct et interactive que Claude Code publie depuis votre session vers une URL privée sur claude.ai. Vous l'ouvrez dans un navigateur, et elle se met à jour sur place à mesure que la session continue. Partagez-la depuis l'en-tête de la page quand vous voulez que quelqu'un d'autre la voie aussi.13Un [artefact](https://claude.com/features/artifacts) est une page web en direct et interactive que Claude Code publie depuis votre session vers une URL privée sur claude.ai. Vous l'ouvrez dans un navigateur, et elle se met à jour sur place à mesure que la session continue. Partagez-la depuis l'en-tête de la page quand vous voulez que quelqu'un d'autre la voie aussi.

14 14 


197 197 

198## Récupérer des données en direct avec les connecteurs MCP198## Récupérer des données en direct avec les connecteurs MCP

199 199 

200Un artifact peut appeler des [connecteurs MCP](https://code.claude.com/docs/fr/mcp.md#use-mcp-servers-from-claude-ai) chaque fois que quelqu'un le consulte, de sorte que la page affiche des données actuelles plutôt qu'une capture instantanée de la session qui l'a créé. Les appels de connecteur à partir d'artifacts sont disponibles sur les plans Pro, Max, Team et Enterprise et nécessitent Claude Code v2.1.209 ou version ultérieure. Sur les versions antérieures, Claude publie la page avec les données que la session a rassemblées lors de sa création.200Un artefact peut appeler des [connecteurs MCP](https://code.claude.com/docs/fr/mcp.md#use-mcp-servers-from-claude-ai) chaque fois que quelqu'un le consulte, de sorte que la page affiche des données actuelles plutôt qu'une capture instantanée de la session qui l'a créé. Les appels de connecteur à partir d'artefacts sont disponibles sur les plans Pro, Max, Ultra, Team et Enterprise et nécessitent Claude Code v2.1.209 ou version ultérieure. Sur les versions antérieures, Claude publie la page avec les données que la session a rassemblées lors de sa création.

201 201 

202Pour créer une page alimentée par un connecteur, nommez le connecteur et les données que vous souhaitez dans votre prompt :202Pour créer une page alimentée par un connecteur, nommez le connecteur et les données que vous souhaitez dans votre prompt :

203 203 


314 314 

315> [!NOTE]315> [!NOTE]

316>316>

317> Les modèles sont en version bêta. Ils sont activés par défaut sur les plans Pro, Max et Team. Sur les plans Enterprise, un propriétaire [active chaque modèle](https://support.claude.com/fr/articles/16994751-artifacts-admin-guide-for-team-and-enterprise-plans) sous **Paramètres de l'organisation > Artefacts**. Si votre organisation a désactivé le modèle Slides, `/slides` n'apparaît pas ; si elle a désactivé le modèle Design, `/design` ne crée pas de conceptions. Les deux commandes nécessitent Claude Code v2.1.265 ou version ultérieure et une session où [les artefacts sont disponibles](#availability).317> Les modèles sont en version bêta. Ils sont activés par défaut sur les plans Pro, Max, Ultra et Team. Sur les plans Enterprise, un propriétaire [active chaque modèle](https://support.claude.com/fr/articles/16994751-artifacts-admin-guide-for-team-and-enterprise-plans) sous **Paramètres de l'organisation > Artefacts**. Si votre organisation a désactivé le modèle Slides, `/slides` n'apparaît pas ; si elle a désactivé le modèle Design, `/design` ne crée pas de conceptions. Les deux commandes nécessitent Claude Code v2.1.265 ou version ultérieure et une session où [les artefacts sont disponibles](#availability).

318 318 

319### Créer une présentation319### Créer une présentation

320 320 


368 368 

369| Exigence | Disponible quand |369| Exigence | Disponible quand |

370| :- | :- |370| :- | :- |

371| Plan | Pro, Max, Team ou Enterprise. Sur les plans Pro et Max, les artefacts sont privés pour vous jusqu'à ce que vous les partagiez, et aucune gestion d'administrateur ne s'applique. Sur les plans Team et Enterprise, les artefacts sont activés par défaut, et un propriétaire peut [les désactiver pour l'organisation](#manage-artifacts-for-your-organization) dans les paramètres d'administration de claude.ai. |371| Plan | Pro, Max, Ultra, Team ou Enterprise. Sur les plans Pro, Max et Ultra, les artefacts sont privés pour vous jusqu'à ce que vous les partagiez, et aucune gestion d'administrateur ne s'applique. Sur les plans Team et Enterprise, les artefacts sont activés par défaut, et un propriétaire peut [les désactiver pour l'organisation](#manage-artifacts-for-your-organization) dans les paramètres d'administration de claude.ai. |

372| Authentification | La session s'appuie sur un compte claude.ai : connectez-vous avec `/login` dans la CLI ou l'application de bureau. Les sessions Claude Tag ne nécessitent aucune étape de connexion. Les sessions utilisant une clé API, un [jeton de passerelle](https://code.claude.com/docs/fr/llm-gateway) ou des identifiants de fournisseur cloud ne peuvent pas publier. |372| Authentification | La session s'appuie sur un compte claude.ai : connectez-vous avec `/login` dans la CLI ou l'application de bureau. Les sessions Claude Tag ne nécessitent aucune étape de connexion. Les sessions utilisant une clé API, un [jeton de passerelle](https://code.claude.com/docs/fr/llm-gateway) ou des identifiants de fournisseur cloud ne peuvent pas publier. |

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

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

authentication.md +21 −21

Details

23 23 

24Vous pouvez vous authentifier avec l'un de ces types de comptes :24Vous pouvez vous authentifier avec l'un de ces types de comptes :

25 25 

26* **Abonnement Claude Pro ou Max** : connectez-vous avec votre compte claude.ai. Abonnez-vous sur [claude.com/pricing](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=authentication_pro_max).26* **Abonnement Claude Pro, Max ou Ultra** : connectez-vous avec votre compte claude.ai. Abonnez-vous sur [claude.com/pricing](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=authentication_pro_max).

27* **Claude for Teams ou Enterprise** : connectez-vous avec le compte claude.ai auquel l'administrateur de votre équipe vous a invité.27* **Claude for Teams ou Enterprise** : connectez-vous avec le compte claude.ai auquel l'administrateur de votre équipe vous a invité.

28* **Claude Console** : connectez-vous avec vos identifiants Console. Votre administrateur doit d'abord vous avoir [invité](#claude-console-authentication). Vous pouvez vous connecter avec ou sans [créer de clé API](#sign-in-without-an-api-key).28* **Claude Console** : connectez-vous avec vos identifiants Console. Votre administrateur doit d'abord vous avoir [invité](#claude-console-authentication). Vous pouvez vous connecter avec ou sans [créer de clé API](#sign-in-without-an-api-key).

29* **Fournisseurs cloud** : si votre organisation utilise [Amazon Bedrock](https://code.claude.com/docs/fr/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/fr/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/fr/microsoft-foundry.md), définissez les variables d'environnement requises avant d'exécuter `claude`, ou sélectionnez **3rd-party platform** dans la demande de connexion, ce qui lance un assistant de configuration interactif pour Bedrock et Vertex AI. Aucune connexion via le navigateur n'est nécessaire.29* **Fournisseurs cloud** : si votre organisation utilise [Amazon Bedrock](https://code.claude.com/docs/fr/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/fr/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/fr/microsoft-foundry.md), définissez les variables d'environnement requises avant d'exécuter `claude`, ou sélectionnez **3rd-party platform** dans la demande de connexion, ce qui lance un assistant de configuration interactif pour Bedrock et Vertex AI. Aucune connexion via le navigateur n'est nécessaire.


2534. Sortie du script [`apiKeyHelper`](https://code.claude.com/docs/fr/settings-reference#apikeyhelper). Utilisez ceci pour les identifiants dynamiques ou rotatifs, tels que les jetons de courte durée récupérés à partir d'un coffre-fort.2534. Sortie du script [`apiKeyHelper`](https://code.claude.com/docs/fr/settings-reference#apikeyhelper). Utilisez ceci pour les identifiants dynamiques ou rotatifs, tels que les jetons de courte durée récupérés à partir d'un coffre-fort.

2545. Variable d'environnement `CLAUDE_CODE_OAUTH_TOKEN`. Un jeton OAuth de longue durée généré par [`claude setup-token`](#generate-a-long-lived-token). Utilisez ceci pour les pipelines CI et les scripts où la connexion au navigateur n'est pas disponible. Si vous exécutez `/login` alors que la variable est définie, Claude Code bascule la session actuelle vers la nouvelle connexion, mais relit la variable dans chaque nouvelle session jusqu'à ce que vous la supprimiez de votre profil shell ou du bloc `env` d'un [fichier de paramètres](https://code.claude.com/docs/fr/settings.md).2545. Variable d'environnement `CLAUDE_CODE_OAUTH_TOKEN`. Un jeton OAuth de longue durée généré par [`claude setup-token`](#generate-a-long-lived-token). Utilisez ceci pour les pipelines CI et les scripts où la connexion au navigateur n'est pas disponible. Si vous exécutez `/login` alors que la variable est définie, Claude Code bascule la session actuelle vers la nouvelle connexion, mais relit la variable dans chaque nouvelle session jusqu'à ce que vous la supprimiez de votre profil shell ou du bloc `env` d'un [fichier de paramètres](https://code.claude.com/docs/fr/settings.md).

2556. Identifiants de profil Anthropic et de fédération, les identifiants que la CLI `ant` et Workload Identity Federation utilisent. Un profil que `ant auth login` a écrit ne se classe ici que lorsque vous le nommez dans `ANTHROPIC_PROFILE` ; sinon, il se classe en dessous de `/login`. Consultez [Profils Anthropic et identifiants de fédération](#anthropic-profiles-and-federation-credentials).2556. Identifiants de profil Anthropic et de fédération, les identifiants que la CLI `ant` et Workload Identity Federation utilisent. Un profil que `ant auth login` a écrit ne se classe ici que lorsque vous le nommez dans `ANTHROPIC_PROFILE` ; sinon, il se classe en dessous de `/login`. Consultez [Profils Anthropic et identifiants de fédération](#anthropic-profiles-and-federation-credentials).

2567. Identifiants OAuth d'abonnement de `/login`. C'est la valeur par défaut pour les utilisateurs Claude Pro, Max, Team et Enterprise.2567. Identifiants OAuth d'abonnement de `/login`. C'est la valeur par défaut pour les utilisateurs Claude Pro, Max, Ultra, Team et Enterprise.

257 257 

258Une session [passerelle d'applications Claude](https://code.claude.com/docs/fr/claude-apps-gateway) signée se situe en dehors de cette liste : c'est une sélection de fournisseur comme Amazon Bedrock ou Google Cloud's Agent Platform, et elle les surclasse. Lorsqu'une session de passerelle existe, la CLI s'authentifie avec le jeton de passerelle même si `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX` ou `CLAUDE_CODE_USE_FOUNDRY` est défini, et les sources d'identifiants ci-dessus telles que le jeton porteur, la clé API, `apiKeyHelper` et les profils ne sont pas utilisés.258Une session [passerelle d'applications Claude](https://code.claude.com/docs/fr/claude-apps-gateway) signée se situe en dehors de cette liste : c'est une sélection de fournisseur comme Amazon Bedrock ou Google Cloud's Agent Platform, et elle les surclasse. Lorsqu'une session de passerelle existe, la CLI s'authentifie avec le jeton de passerelle même si `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX` ou `CLAUDE_CODE_USE_FOUNDRY` est défini, et les sources d'identifiants ci-dessus telles que le jeton porteur, la clé API, `apiKeyHelper` et les profils ne sont pas utilisés.

259 259 


300 300 

301La commande ouvre le même flux d'autorisation du navigateur que `/login`, et le jeton s'affiche dans le terminal après que vous ayez approuvé l'accès dans le navigateur. Il ne sauvegarde le jeton nulle part ; copiez-le et définissez-le en tant que variable d'environnement `CLAUDE_CODE_OAUTH_TOKEN` partout où vous souhaitez vous authentifier :301La commande ouvre le même flux d'autorisation du navigateur que `/login`, et le jeton s'affiche dans le terminal après que vous ayez approuvé l'accès dans le navigateur. Il ne sauvegarde le jeton nulle part ; copiez-le et définissez-le en tant que variable d'environnement `CLAUDE_CODE_OAUTH_TOKEN` partout où vous souhaitez vous authentifier :

302 302 

303**macOS, Linux, WSL**303> [tab] macOS, Linux, WSL

304 304>

305```bash theme={null}305> ```bash theme={null}

306export CLAUDE_CODE_OAUTH_TOKEN=your-token306> export CLAUDE_CODE_OAUTH_TOKEN=your-token

307```307> ```

308 308 

309**Windows PowerShell**309> [tab] Windows PowerShell

310 310>

311```powershell theme={null}311> ```powershell theme={null}

312$env:CLAUDE_CODE_OAUTH_TOKEN = "your-token"312> $env:CLAUDE_CODE_OAUTH_TOKEN = "your-token"

313```313> ```

314 314 

315**Windows CMD**315> [tab] Windows CMD

316 316>

317```batch theme={null}317> ```batch theme={null}

318set CLAUDE_CODE_OAUTH_TOKEN=your-token318> set CLAUDE_CODE_OAUTH_TOKEN=your-token

319```319> ```

320 320 

321Ce jeton s'authentifie avec votre abonnement Claude et nécessite un plan Pro, Max, Team ou Enterprise. Il ne peut faire que des requêtes de modèle, il ne peut donc pas établir de sessions [Remote Control](https://code.claude.com/docs/fr/remote-control.md) ou récupérer [les connecteurs claude.ai](https://code.claude.com/docs/fr/mcp.md#use-mcp-servers-from-claude-ai). Les serveurs MCP que vous configurez localement fonctionnent toujours.321Ce jeton s'authentifie avec votre abonnement Claude et nécessite un plan Pro, Max, Ultra, Team ou Enterprise. Il ne peut faire que des requêtes de modèle, il ne peut donc pas établir de sessions [Remote Control](https://code.claude.com/docs/fr/remote-control.md) ou récupérer [les connecteurs claude.ai](https://code.claude.com/docs/fr/mcp.md#use-mcp-servers-from-claude-ai). Les serveurs MCP que vous configurez localement fonctionnent toujours.

322 322 

323[Le mode bare](https://code.claude.com/docs/fr/headless.md#start-faster-with-bare-mode) ne lit pas `CLAUDE_CODE_OAUTH_TOKEN`. Si votre script passe `--bare`, authentifiez-vous avec `ANTHROPIC_API_KEY` ou un `apiKeyHelper` à la place.323[Le mode bare](https://code.claude.com/docs/fr/headless.md#start-faster-with-bare-mode) ne lit pas `CLAUDE_CODE_OAUTH_TOKEN`. Si votre script passe `--bare`, authentifiez-vous avec `ANTHROPIC_API_KEY` ou un `apiKeyHelper` à la place.

Details

43 43 

44## Pourquoi la notification apparaît44## Pourquoi la notification apparaît

45 45 

46[L'examen du classificateur côté serveur](https://code.claude.com/docs/fr/permission-modes.md#server-side-classifier-review) répertorie les sessions qui demandent au serveur d'effectuer les vérifications du classificateur. Les plans Pro, Max et Team n'affichent jamais la notification. Lorsqu'elle apparaît, les causes habituelles sont :46Avec un plan Pro, Max, Ultra ou Team, vous ne voyez jamais la notification. Pour savoir quelles sessions demandent au serveur d'effectuer les vérifications du classificateur, consultez [L'examen du classificateur côté serveur](https://code.claude.com/docs/fr/permission-modes.md#server-side-classifier-review). Si vous voyez la notification, vérifiez ces causes habituelles :

47 47 

48* **Une passerelle LLM ou un proxy se trouve dans le chemin** : l'un qui supprime ou réécrit les en-têtes de requête, supprime les champs de requête qu'il ne reconnaît pas, ou modifie les réponses. Le serveur ne reçoit alors jamais la demande de vérifications, ou Claude Code ne reçoit jamais les résultats. Lorsque votre configuration ou les réponses identifient la passerelle, la notification la nomme.48* **Une passerelle LLM ou un proxy se trouve dans le chemin** : l'un qui supprime ou réécrit les en-têtes de requête, supprime les champs de requête qu'il ne reconnaît pas, ou modifie les réponses. Le serveur ne reçoit alors jamais la demande de vérifications, ou Claude Code ne reçoit jamais les résultats. Lorsque votre configuration ou les réponses identifient la passerelle, la notification la nomme.

49* **Les vérifications côté serveur n'ont pas encore atteint votre plateforme, région ou identifiant** : qu'une plateforme ou une région les effectue dépend du déploiement de cette plateforme. Si vous voyez la notification sans passerelle ou proxy dans le chemin et qu'elle continue d'apparaître, c'est la cause probable. Pour confirmer, contactez le support ou l'administrateur de votre entreprise, ou signalez-le avec `/feedback`.49* **Les vérifications côté serveur n'ont pas encore atteint votre plateforme, région ou identifiant** : qu'une plateforme ou une région les effectue dépend du déploiement de cette plateforme. Si vous voyez la notification sans passerelle ou proxy dans le chemin et qu'elle continue d'apparaître, c'est la cause probable. Pour confirmer, contactez le support ou l'administrateur de votre entreprise, ou signalez-le avec `/feedback`.

Details

161 161 

162> [!NOTE]162> [!NOTE]

163>163>

164> `/auto-mode-setup` est disponible avec les forfaits Pro, Max, Team et Enterprise, ainsi qu'avec une clé API Claude Console. Avec un forfait Pro, Max ou Team, vous avez besoin de la v2.1.228 ou ultérieure, ou de la v2.1.233 ou ultérieure sous Windows natif. Avec un forfait Enterprise ou une clé API Claude Console, vous avez besoin de la v2.1.283 ou ultérieure. Si la commande est absente de votre session, consultez [`/auto-mode-setup` renvoie « Unknown command »](#auto-mode-setup-returns-unknown-command).164> `/auto-mode-setup` est disponible avec les forfaits Pro, Max, Ultra, Team et Enterprise, ainsi qu'avec une clé API Claude Console. Avec un forfait Pro, Max, Ultra ou Team, vous avez besoin de la v2.1.228 ou ultérieure, ou de la v2.1.233 ou ultérieure sous Windows natif. Avec un forfait Enterprise ou une clé API Claude Console, vous avez besoin de la v2.1.283 ou ultérieure. Si la commande est absente de votre session, consultez [`/auto-mode-setup` renvoie « Unknown command »](#auto-mode-setup-returns-unknown-command).

165 165 

166### Ce que lit `/auto-mode-setup`166### Ce que lit `/auto-mode-setup`

167 167 

Details

489 489 

490Avec une fenêtre de 1M de tokens sur la plupart des modèles actuels et une compaction proche de sa limite, vous manquerez rarement de contexte. Vous pouvez cependant toujours *payer* pour du contexte dont vous n'avez pas besoin. Chaque requête envoie toute la conversation, donc une session qui a accumulé trois tâches sans rapport relit les trois à chaque tour de la quatrième. C'est [à prix réduit tant que le cache est chaud](https://code.claude.com/docs/fr/costs.md#why-usage-climbs-in-a-long-session) et à plein tarif une fois qu'il a expiré.490Avec une fenêtre de 1M de tokens sur la plupart des modèles actuels et une compaction proche de sa limite, vous manquerez rarement de contexte. Vous pouvez cependant toujours *payer* pour du contexte dont vous n'avez pas besoin. Chaque requête envoie toute la conversation, donc une session qui a accumulé trois tâches sans rapport relit les trois à chaque tour de la quatrième. C'est [à prix réduit tant que le cache est chaud](https://code.claude.com/docs/fr/costs.md#why-usage-climbs-in-a-long-session) et à plein tarif une fois qu'il a expiré.

491 491 

492[`/usage`](https://code.claude.com/docs/fr/costs) est le premier endroit où regarder. Sur Pro, Max, Team et Enterprise, il ventile votre utilisation par skill, sous-agent, plugin et serveur MCP. Il signale aussi des tendances comme un contexte long ou des défauts de cache fréquents dès que l'une d'elles dépasse 10 % de votre utilisation. À partir de là, les solutions habituelles :492[`/usage`](https://code.claude.com/docs/fr/costs) est le premier endroit où regarder. Sur Pro, Max, Ultra, Team et Enterprise, il ventile votre utilisation par skill, sous-agent, plugin et serveur MCP. Il signale aussi des tendances comme un contexte long ou des défauts de cache fréquents dès que l'une d'elles dépasse 10 % de votre utilisation. À partir de là, les solutions habituelles :

493 493 

494* `/clear` entre des tâches sans rapport. Cela ne coûte rien, et la tâche suivante ne continue pas à payer pour l'historique de la précédente. `/clear oauth-migration` nomme la session que vous quittez, afin que vous puissiez y revenir plus tard.494* `/clear` entre des tâches sans rapport. Cela ne coûte rien, et la tâche suivante ne continue pas à payer pour l'historique de la précédente. `/clear oauth-migration` nomme la session que vous quittez, afin que vous puissiez y revenir plus tard.

495* `/compact` avec un objectif, comme `/compact keep the API changes and the test commands`. Sur une longue session, `/compact` est lui-même une grosse requête, puisqu'il lit toute la conversation pour la résumer, et plus encore une fois le cache expiré.495* `/compact` avec un objectif, comme `/compact keep the API changes and the test commands`. Sur une longue session, `/compact` est lui-même une grosse requête, puisqu'il lit toute la conversation pour la résumer, et plus encore une fois le cache expiré.

channels.md +189 −189

Details

24 24 

25Chaque canal pris en charge est un plugin qui nécessite [Bun](https://bun.sh). Pour une démonstration pratique du flux de plugin avant de connecter une plateforme réelle, essayez le [démarrage rapide fakechat](#quickstart).25Chaque canal pris en charge est un plugin qui nécessite [Bun](https://bun.sh). Pour une démonstration pratique du flux de plugin avant de connecter une plateforme réelle, essayez le [démarrage rapide fakechat](#quickstart).

26 26 

27**Telegram**27> [tab] Telegram

28 

29Consultez la [source complète du plugin Telegram](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/telegram).

30 

31**1. Créer un bot Telegram**

32 

33Ouvrez [BotFather](https://t.me/BotFather) dans Telegram et envoyez `/newbot`. Donnez-lui un nom d'affichage et un nom d'utilisateur unique se terminant par `bot`. Copiez le jeton que BotFather retourne.

34 

35**2. Installer le plugin**

36 

37Démarrez Claude Code en exécutant `claude` dans votre terminal, puis saisissez ceci à son invite :

38 

39```

40/plugin install telegram@claude-plugins-official

41```

42 

43Si l'installation échoue, faites correspondre le message que Claude Code signale :

44 

45* `Marketplace "claude-plugins-official" not found` : ajoutez la marketplace avec `/plugin marketplace add anthropics/claude-plugins-official`, puis réessayez l'installation.

46* `Plugin "<name>" not found in marketplace "claude-plugins-official"` : votre copie locale du catalogue de la marketplace est peut-être obsolète. Actualisez-la avec `/plugin marketplace update claude-plugins-official`, puis réessayez l'installation. Si la nouvelle tentative affiche le même message, consultez [Plugin introuvable dans la marketplace](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

47 

48Lorsque l'installation vous demande une portée d'installation, choisissez l'option de portée utilisateur pour que le plugin soit disponible dans tous vos projets. Vérifiez le résumé d'installation : s'il signale `Run /reload-plugins to apply.`, consultez [Appliquer les modifications de plugin sans redémarrer](https://code.claude.com/docs/fr/plugins/cli-reference.md#reload-plugins) pour rendre la commande de configuration du plugin disponible.

49 

50**3. Configurer votre jeton**

51 

52Exécutez la commande de configuration avec le jeton de BotFather :

53 

54```

55/telegram:configure <token>

56```

57 

58Cela l'enregistre dans `~/.claude/channels/telegram/.env`. Vous pouvez également définir `TELEGRAM_BOT_TOKEN` dans votre environnement shell avant de lancer Claude Code.

59 

60**4. Redémarrer avec les canaux activés**

61 

62Quittez Claude Code et redémarrez avec le flag de canal. Cela démarre le plugin Telegram, qui commence à interroger les messages de votre bot :

63 

64```bash theme={null}

65claude --channels plugin:telegram@claude-plugins-official

66```

67 

68**5. Appairer votre compte**

69 

70Ouvrez Telegram et envoyez n'importe quel message à votre bot. Le bot répond avec un code d'appairage.

71 

72> [!NOTE]

73>28>

74> Si votre bot ne répond pas, assurez-vous que Claude Code s'exécute avec `--channels` à partir de l'étape précédente. Le bot ne peut répondre que lorsque le canal est actif.29> Consultez la [source complète du plugin Telegram](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/telegram).

75 

76De retour dans Claude Code, exécutez :

77 

78```

79/telegram:access pair <code>

80```

81 

82Ensuite, verrouillez l'accès pour que seul votre compte puisse envoyer des messages :

83 

84```

85/telegram:access policy allowlist

86```

87 

88**Discord**

89 

90Consultez la [source complète du plugin Discord](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/discord).

91 

92**1. Créer un bot Discord**

93 

94Allez au [Portail des développeurs Discord](https://discord.com/developers/applications), cliquez sur **New Application** et nommez-le. Dans la section **Bot**, créez un nom d'utilisateur, puis cliquez sur **Reset Token** et copiez le jeton.

95 

96**2. Activer Message Content Intent**

97 

98Dans les paramètres de votre bot, faites défiler jusqu'à **Privileged Gateway Intents** et activez **Message Content Intent**.

99 

100**3. Inviter le bot à votre serveur**

101 

102Allez à **OAuth2 > URL Generator**. Sélectionnez la portée `bot` et activez ces permissions :

103 

104* View Channels

105* Send Messages

106* Send Messages in Threads

107* Read Message History

108* Attach Files

109* Add Reactions

110 

111Ouvrez l'URL générée pour ajouter le bot à votre serveur.

112 

113**4. Installer le plugin**

114 

115Démarrez Claude Code en exécutant `claude` dans votre terminal, puis saisissez ceci à son invite :

116 

117```

118/plugin install discord@claude-plugins-official

119```

120 

121Si l'installation échoue, faites correspondre le message que Claude Code signale :

122 

123* `Marketplace "claude-plugins-official" not found` : ajoutez la marketplace avec `/plugin marketplace add anthropics/claude-plugins-official`, puis réessayez l'installation.

124* `Plugin "<name>" not found in marketplace "claude-plugins-official"` : votre copie locale du catalogue de la marketplace est peut-être obsolète. Actualisez-la avec `/plugin marketplace update claude-plugins-official`, puis réessayez l'installation. Si la nouvelle tentative affiche le même message, consultez [Plugin introuvable dans la marketplace](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

125 

126Lorsque l'installation vous demande une portée d'installation, choisissez l'option de portée utilisateur pour que le plugin soit disponible dans tous vos projets. Vérifiez le résumé d'installation : s'il signale `Run /reload-plugins to apply.`, consultez [Appliquer les modifications de plugin sans redémarrer](https://code.claude.com/docs/fr/plugins/cli-reference.md#reload-plugins) pour rendre la commande de configuration du plugin disponible.

127 

128**5. Configurer votre jeton**

129 

130Exécutez la commande de configuration avec le jeton du bot que vous avez copié :

131 

132```

133/discord:configure <token>

134```

135 

136Cela l'enregistre dans `~/.claude/channels/discord/.env`. Vous pouvez également définir `DISCORD_BOT_TOKEN` dans votre environnement shell avant de lancer Claude Code.

137 

138**6. Redémarrer avec les canaux activés**

139 

140Quittez Claude Code et redémarrez avec le flag de canal. Cela connecte le plugin Discord pour que votre bot puisse recevoir et répondre aux messages :

141 

142```bash theme={null}

143claude --channels plugin:discord@claude-plugins-official

144```

145 

146**7. Appairer votre compte**

147 

148Envoyez un DM à votre bot sur Discord. Le bot répond avec un code d'appairage.

149 

150> [!NOTE]

151>30>

152> Si votre bot ne répond pas, assurez-vous que Claude Code s'exécute avec `--channels` à partir de l'étape précédente. Le bot ne peut répondre que lorsque le canal est actif.31> **1. Créer un bot Telegram**

153 

154De retour dans Claude Code, exécutez :

155 

156```

157/discord:access pair <code>

158```

159 

160Ensuite, verrouillez l'accès pour que seul votre compte puisse envoyer des messages :

161 

162```

163/discord:access policy allowlist

164```

165 

166**iMessage**

167 

168Consultez la [source complète du plugin iMessage](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/imessage).

169 

170Le canal iMessage lit votre base de données Messages directement et envoie les réponses via AppleScript. Il nécessite macOS et n'a besoin d'aucun jeton de bot ou service externe.

171 

172**1. Accorder l'accès complet au disque**

173 

174La base de données Messages à `~/Library/Messages/chat.db` est protégée par macOS. La première fois que le serveur la lit, macOS demande l'accès : cliquez sur **Allow**. L'invite nomme l'application qui a lancé Bun, comme Terminal, iTerm ou votre IDE.

175 

176Si l'invite n'apparaît pas ou si vous avez cliqué sur Don't Allow, accordez l'accès manuellement sous **System Settings > Privacy & Security > Full Disk Access** et ajoutez votre terminal. Sans cela, le serveur se ferme immédiatement avec `authorization denied`.

177 

178**2. Installer le plugin**

179 

180Démarrez Claude Code en exécutant `claude` dans votre terminal, puis saisissez ceci à son invite :

181 

182```

183/plugin install imessage@claude-plugins-official

184```

185 

186Si l'installation échoue, faites correspondre le message que Claude Code signale :

187 

188* `Marketplace "claude-plugins-official" not found` : ajoutez la marketplace avec `/plugin marketplace add anthropics/claude-plugins-official`, puis réessayez l'installation.

189* `Plugin "<name>" not found in marketplace "claude-plugins-official"` : votre copie locale du catalogue de la marketplace est peut-être obsolète. Actualisez-la avec `/plugin marketplace update claude-plugins-official`, puis réessayez l'installation. Si la nouvelle tentative affiche le même message, consultez [Plugin introuvable dans la marketplace](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

190 

191Lorsque l'installation vous demande une portée d'installation, choisissez l'option de portée utilisateur pour que le plugin soit disponible dans tous vos projets.

192 

193Si le résumé d'installation signale `Run /reload-plugins to apply.`, vous pouvez ignorer cela ici, car le redémarrage à l'étape suivante récupère le plugin.

194 

195**3. Redémarrer avec les canaux activés**

196 

197Quittez Claude Code et redémarrez avec le flag de canal :

198 

199```bash theme={null}

200claude --channels plugin:imessage@claude-plugins-official

201```

202 

203**4. Vous envoyer un message**

204 

205Ouvrez Messages sur n'importe quel appareil connecté à votre Apple ID et envoyez-vous un message. Il atteint Claude immédiatement : l'auto-chat contourne le contrôle d'accès sans configuration.

206 

207> [!NOTE]

208>32>

209> La première réponse que Claude envoie déclenche une invite d'automatisation macOS demandant si votre terminal peut contrôler Messages. Cliquez sur **OK**.33> Ouvrez [BotFather](https://t.me/BotFather) dans Telegram et envoyez `/newbot`. Donnez-lui un nom d'affichage et un nom d'utilisateur unique se terminant par `bot`. Copiez le jeton que BotFather retourne.

210 34>

211**5. Autoriser d'autres expéditeurs**35> **2. Installer le plugin**

212 36>

213Par défaut, seuls vos propres messages passent. Pour laisser un autre contact atteindre Claude, ajoutez son identifiant :37> Démarrez Claude Code en exécutant `claude` dans votre terminal, puis saisissez ceci à son invite :

38>

39> ```

40> /plugin install telegram@claude-plugins-official

41> ```

42>

43> Si l'installation échoue, faites correspondre le message que Claude Code signale :

44>

45> * `Marketplace "claude-plugins-official" not found` : ajoutez la marketplace avec `/plugin marketplace add anthropics/claude-plugins-official`, puis réessayez l'installation.

46> * `Plugin "<name>" not found in marketplace "claude-plugins-official"` : votre copie locale du catalogue de la marketplace est peut-être obsolète. Actualisez-la avec `/plugin marketplace update claude-plugins-official`, puis réessayez l'installation. Si la nouvelle tentative affiche le même message, consultez [Plugin introuvable dans la marketplace](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

47>

48> Lorsque l'installation vous demande une portée d'installation, choisissez l'option de portée utilisateur pour que le plugin soit disponible dans tous vos projets. Vérifiez le résumé d'installation : s'il signale `Run /reload-plugins to apply.`, consultez [Appliquer les modifications de plugin sans redémarrer](https://code.claude.com/docs/fr/plugins/cli-reference.md#reload-plugins) pour rendre la commande de configuration du plugin disponible.

49>

50> **3. Configurer votre jeton**

51>

52> Exécutez la commande de configuration avec le jeton de BotFather :

53>

54> ```

55> /telegram:configure <token>

56> ```

57>

58> Cela l'enregistre dans `~/.claude/channels/telegram/.env`. Vous pouvez également définir `TELEGRAM_BOT_TOKEN` dans votre environnement shell avant de lancer Claude Code.

59>

60> **4. Redémarrer avec les canaux activés**

61>

62> Quittez Claude Code et redémarrez avec le flag de canal. Cela démarre le plugin Telegram, qui commence à interroger les messages de votre bot :

63>

64> ```bash theme={null}

65> claude --channels plugin:telegram@claude-plugins-official

66> ```

67>

68> **5. Appairer votre compte**

69>

70> Ouvrez Telegram et envoyez n'importe quel message à votre bot. Le bot répond avec un code d'appairage.

71>

72> > [!NOTE]

73> >

74> > Si votre bot ne répond pas, assurez-vous que Claude Code s'exécute avec `--channels` à partir de l'étape précédente. Le bot ne peut répondre que lorsque le canal est actif.

75>

76> De retour dans Claude Code, exécutez :

77>

78> ```

79> /telegram:access pair <code>

80> ```

81>

82> Ensuite, verrouillez l'accès pour que seul votre compte puisse envoyer des messages :

83>

84> ```

85> /telegram:access policy allowlist

86> ```

214 87 

215```88> [tab] Discord

216/imessage:access allow +1555123456789>

217```90> Consultez la [source complète du plugin Discord](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/discord).

91>

92> **1. Créer un bot Discord**

93>

94> Allez au [Portail des développeurs Discord](https://discord.com/developers/applications), cliquez sur **New Application** et nommez-le. Dans la section **Bot**, créez un nom d'utilisateur, puis cliquez sur **Reset Token** et copiez le jeton.

95>

96> **2. Activer Message Content Intent**

97>

98> Dans les paramètres de votre bot, faites défiler jusqu'à **Privileged Gateway Intents** et activez **Message Content Intent**.

99>

100> **3. Inviter le bot à votre serveur**

101>

102> Allez à **OAuth2 > URL Generator**. Sélectionnez la portée `bot` et activez ces permissions :

103>

104> * View Channels

105> * Send Messages

106> * Send Messages in Threads

107> * Read Message History

108> * Attach Files

109> * Add Reactions

110>

111> Ouvrez l'URL générée pour ajouter le bot à votre serveur.

112>

113> **4. Installer le plugin**

114>

115> Démarrez Claude Code en exécutant `claude` dans votre terminal, puis saisissez ceci à son invite :

116>

117> ```

118> /plugin install discord@claude-plugins-official

119> ```

120>

121> Si l'installation échoue, faites correspondre le message que Claude Code signale :

122>

123> * `Marketplace "claude-plugins-official" not found` : ajoutez la marketplace avec `/plugin marketplace add anthropics/claude-plugins-official`, puis réessayez l'installation.

124> * `Plugin "<name>" not found in marketplace "claude-plugins-official"` : votre copie locale du catalogue de la marketplace est peut-être obsolète. Actualisez-la avec `/plugin marketplace update claude-plugins-official`, puis réessayez l'installation. Si la nouvelle tentative affiche le même message, consultez [Plugin introuvable dans la marketplace](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

125>

126> Lorsque l'installation vous demande une portée d'installation, choisissez l'option de portée utilisateur pour que le plugin soit disponible dans tous vos projets. Vérifiez le résumé d'installation : s'il signale `Run /reload-plugins to apply.`, consultez [Appliquer les modifications de plugin sans redémarrer](https://code.claude.com/docs/fr/plugins/cli-reference.md#reload-plugins) pour rendre la commande de configuration du plugin disponible.

127>

128> **5. Configurer votre jeton**

129>

130> Exécutez la commande de configuration avec le jeton du bot que vous avez copié :

131>

132> ```

133> /discord:configure <token>

134> ```

135>

136> Cela l'enregistre dans `~/.claude/channels/discord/.env`. Vous pouvez également définir `DISCORD_BOT_TOKEN` dans votre environnement shell avant de lancer Claude Code.

137>

138> **6. Redémarrer avec les canaux activés**

139>

140> Quittez Claude Code et redémarrez avec le flag de canal. Cela connecte le plugin Discord pour que votre bot puisse recevoir et répondre aux messages :

141>

142> ```bash theme={null}

143> claude --channels plugin:discord@claude-plugins-official

144> ```

145>

146> **7. Appairer votre compte**

147>

148> Envoyez un DM à votre bot sur Discord. Le bot répond avec un code d'appairage.

149>

150> > [!NOTE]

151> >

152> > Si votre bot ne répond pas, assurez-vous que Claude Code s'exécute avec `--channels` à partir de l'étape précédente. Le bot ne peut répondre que lorsque le canal est actif.

153>

154> De retour dans Claude Code, exécutez :

155>

156> ```

157> /discord:access pair <code>

158> ```

159>

160> Ensuite, verrouillez l'accès pour que seul votre compte puisse envoyer des messages :

161>

162> ```

163> /discord:access policy allowlist

164> ```

218 165 

219Les identifiants sont des numéros de téléphone au format `+country` ou des e-mails Apple ID comme `user@example.com`.166> [tab] iMessage

167>

168> Consultez la [source complète du plugin iMessage](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/imessage).

169>

170> Le canal iMessage lit votre base de données Messages directement et envoie les réponses via AppleScript. Il nécessite macOS et n'a besoin d'aucun jeton de bot ou service externe.

171>

172> **1. Accorder l'accès complet au disque**

173>

174> La base de données Messages à `~/Library/Messages/chat.db` est protégée par macOS. La première fois que le serveur la lit, macOS demande l'accès : cliquez sur **Allow**. L'invite nomme l'application qui a lancé Bun, comme Terminal, iTerm ou votre IDE.

175>

176> Si l'invite n'apparaît pas ou si vous avez cliqué sur Don't Allow, accordez l'accès manuellement sous **System Settings > Privacy & Security > Full Disk Access** et ajoutez votre terminal. Sans cela, le serveur se ferme immédiatement avec `authorization denied`.

177>

178> **2. Installer le plugin**

179>

180> Démarrez Claude Code en exécutant `claude` dans votre terminal, puis saisissez ceci à son invite :

181>

182> ```

183> /plugin install imessage@claude-plugins-official

184> ```

185>

186> Si l'installation échoue, faites correspondre le message que Claude Code signale :

187>

188> * `Marketplace "claude-plugins-official" not found` : ajoutez la marketplace avec `/plugin marketplace add anthropics/claude-plugins-official`, puis réessayez l'installation.

189> * `Plugin "<name>" not found in marketplace "claude-plugins-official"` : votre copie locale du catalogue de la marketplace est peut-être obsolète. Actualisez-la avec `/plugin marketplace update claude-plugins-official`, puis réessayez l'installation. Si la nouvelle tentative affiche le même message, consultez [Plugin introuvable dans la marketplace](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

190>

191> Lorsque l'installation vous demande une portée d'installation, choisissez l'option de portée utilisateur pour que le plugin soit disponible dans tous vos projets.

192>

193> Si le résumé d'installation signale `Run /reload-plugins to apply.`, vous pouvez ignorer cela ici, car le redémarrage à l'étape suivante récupère le plugin.

194>

195> **3. Redémarrer avec les canaux activés**

196>

197> Quittez Claude Code et redémarrez avec le flag de canal :

198>

199> ```bash theme={null}

200> claude --channels plugin:imessage@claude-plugins-official

201> ```

202>

203> **4. Vous envoyer un message**

204>

205> Ouvrez Messages sur n'importe quel appareil connecté à votre Apple ID et envoyez-vous un message. Il atteint Claude immédiatement : l'auto-chat contourne le contrôle d'accès sans configuration.

206>

207> > [!NOTE]

208> >

209> > La première réponse que Claude envoie déclenche une invite d'automatisation macOS demandant si votre terminal peut contrôler Messages. Cliquez sur **OK**.

210>

211> **5. Autoriser d'autres expéditeurs**

212>

213> Par défaut, seuls vos propres messages passent. Pour laisser un autre contact atteindre Claude, ajoutez son identifiant :

214>

215> ```

216> /imessage:access allow +15551234567

217> ```

218>

219> Les identifiants sont des numéros de téléphone au format `+country` ou des e-mails Apple ID comme `user@example.com`.

220 220 

221## Démarrage rapide221## Démarrage rapide

222 222 


308| `channelsEnabled` | Commutateur maître. Doit être `true` pour que tout canal puisse livrer des messages. Bloque tous les canaux, y compris l'indicateur de développement lorsqu'il est désactivé. Voir [Activer les canaux pour votre organisation](#enable-channels-for-your-organization). | claude.ai Team et Enterprise : canaux bloqués. Console : canaux autorisés sauf si votre organisation déploie des paramètres gérés, auquel cas les canaux sont bloqués jusqu'à ce que cette clé soit définie |308| `channelsEnabled` | Commutateur maître. Doit être `true` pour que tout canal puisse livrer des messages. Bloque tous les canaux, y compris l'indicateur de développement lorsqu'il est désactivé. Voir [Activer les canaux pour votre organisation](#enable-channels-for-your-organization). | claude.ai Team et Enterprise : canaux bloqués. Console : canaux autorisés sauf si votre organisation déploie des paramètres gérés, auquel cas les canaux sont bloqués jusqu'à ce que cette clé soit définie |

309| `allowedChannelPlugins` | Quels plugins peuvent s'enregistrer une fois les canaux activés. Remplace la liste maintenue par Anthropic lorsqu'elle est définie. | La liste par défaut d'Anthropic s'applique |309| `allowedChannelPlugins` | Quels plugins peuvent s'enregistrer une fois les canaux activés. Remplace la liste maintenue par Anthropic lorsqu'elle est définie. | La liste par défaut d'Anthropic s'applique |

310 310 

311Les utilisateurs Pro et Max sans organisation ignorent complètement ces vérifications : les canaux sont disponibles et les utilisateurs optent pour chaque session avec `--channels`.311Les utilisateurs Pro, Max et Ultra sans organisation ignorent complètement ces vérifications : les canaux sont disponibles et les utilisateurs optent pour chaque session avec `--channels`.

312 312 

313### Activer les canaux pour votre organisation313### Activer les canaux pour votre organisation

314 314 

chrome.md +1 −1

Details

39* [Google Chrome](https://www.google.com/chrome/), [Microsoft Edge](https://www.microsoft.com/edge) ou un autre navigateur basé sur Chromium tel que Brave, Arc, Vivaldi ou Opera39* [Google Chrome](https://www.google.com/chrome/), [Microsoft Edge](https://www.microsoft.com/edge) ou un autre navigateur basé sur Chromium tel que Brave, Arc, Vivaldi ou Opera

40* Extension [Claude in Chrome](https://chromewebstore.google.com/detail/claude/fcoeoabgfenejglbffodgkkbkcdhcgfn) version 1.0.36 ou supérieure, disponible dans le Chrome Web Store40* Extension [Claude in Chrome](https://chromewebstore.google.com/detail/claude/fcoeoabgfenejglbffodgkkbkcdhcgfn) version 1.0.36 ou supérieure, disponible dans le Chrome Web Store

41* [Claude Code](https://code.claude.com/docs/fr/quickstart.md#step-1-install-claude-code)41* [Claude Code](https://code.claude.com/docs/fr/quickstart.md#step-1-install-claude-code)

42* Un plan Anthropic direct (Pro, Max, Team ou Enterprise)42* Un plan Anthropic direct (Pro, Max, Ultra, Team ou Enterprise)

43 43 

44Dans les organisations Enterprise pour lesquelles HIPAA est activé, Claude in Chrome est désactivé par défaut, et un [Owner](https://code.claude.com/docs/fr/server-managed-settings.md#access-control) peut l'activer dans [**Organization settings > Claude in Chrome**](https://claude.ai/admin-settings/browser-extension). Votre Business Associate Agreement (BAA) avec Anthropic ne couvre pas les données envoyées à des sites tiers via Claude in Chrome. Consultez l'[Implementation Guide](https://trust.anthropic.com/resources?s=l1wrssd9hsbi4gak0tp5a6\&name=%5Banthropic%5D-hipaa-ready-offering-implementation-guide) pour obtenir la liste des Eligible Services.44Dans les organisations Enterprise pour lesquelles HIPAA est activé, Claude in Chrome est désactivé par défaut, et un [Owner](https://code.claude.com/docs/fr/server-managed-settings.md#access-control) peut l'activer dans [**Organization settings > Claude in Chrome**](https://claude.ai/admin-settings/browser-extension). Votre Business Associate Agreement (BAA) avec Anthropic ne couvre pas les données envoyées à des sites tiers via Claude in Chrome. Consultez l'[Implementation Guide](https://trust.anthropic.com/resources?s=l1wrssd9hsbi4gak0tp5a6\&name=%5Banthropic%5D-hipaa-ready-offering-implementation-guide) pour obtenir la liste des Eligible Services.

45 45 

Details

325 325 

326**7. Déployer**326**7. Déployer**

327 327 

328**ECS Fargate**328> [tab] ECS Fargate

329 329>

330Créez le cluster et un groupe de journaux pour la sortie d'erreur standard de la passerelle, qui porte à la fois ses événements d'audit et ses journaux opérationnels. La rétention est un appel séparé, et sans elle CloudWatch garde les journaux pour toujours ; alignez les 90 jours avec votre politique de rétention d'audit :330> Créez le cluster et un groupe de journaux pour la sortie d'erreur standard de la passerelle, qui porte à la fois ses événements d'audit et ses journaux opérationnels. La rétention est un appel séparé, et sans elle CloudWatch garde les journaux pour toujours ; alignez les 90 jours avec votre politique de rétention d'audit :

331 331>

332```bash theme={null}332> ```bash theme={null}

333aws ecs create-cluster --cluster-name claude-gateway333> aws ecs create-cluster --cluster-name claude-gateway

334aws logs create-log-group --log-group-name /ecs/claude-gateway334> aws logs create-log-group --log-group-name /ecs/claude-gateway

335aws logs put-retention-policy --log-group-name /ecs/claude-gateway \335> aws logs put-retention-policy --log-group-name /ecs/claude-gateway \

336 --retention-in-days 90336> --retention-in-days 90

337```337> ```

338 338>

339Écrivez la définition de tâche. Le rôle de tâche porte la permission Bedrock et le rôle d'exécution injecte les secrets ; utilisez les ARN de secret de l'étape Secrets Manager :339> Écrivez la définition de tâche. Le rôle de tâche porte la permission Bedrock et le rôle d'exécution injecte les secrets ; utilisez les ARN de secret de l'étape Secrets Manager :

340 340>

341```json claude-gateway-task.json theme={null}341> ```json claude-gateway-task.json theme={null}

342{342> {

343 "family": "claude-gateway",343> "family": "claude-gateway",

344 "networkMode": "awsvpc",344> "networkMode": "awsvpc",

345 "requiresCompatibilities": ["FARGATE"],345> "requiresCompatibilities": ["FARGATE"],

346 "cpu": "1024",346> "cpu": "1024",

347 "memory": "2048",347> "memory": "2048",

348 "runtimePlatform": { "cpuArchitecture": "X86_64", "operatingSystemFamily": "LINUX" },348> "runtimePlatform": { "cpuArchitecture": "X86_64", "operatingSystemFamily": "LINUX" },

349 "executionRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-execution",349> "executionRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-execution",

350 "taskRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-task",350> "taskRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-task",

351 "containerDefinitions": [351> "containerDefinitions": [

352 {352> {

353 "name": "gateway",353> "name": "gateway",

354 "image": "<account-id>.dkr.ecr.<region>.amazonaws.com/claude-gateway:<version>",354> "image": "<account-id>.dkr.ecr.<region>.amazonaws.com/claude-gateway:<version>",

355 "portMappings": [{ "containerPort": 8080 }],355> "portMappings": [{ "containerPort": 8080 }],

356 "secrets": [356> "secrets": [

357 { "name": "GATEWAY_JWT_SECRET", "valueFrom": "<gateway-jwt-secret ARN>" },357> { "name": "GATEWAY_JWT_SECRET", "valueFrom": "<gateway-jwt-secret ARN>" },

358 { "name": "OIDC_CLIENT_SECRET", "valueFrom": "<gateway-oidc-client-secret ARN>" },358> { "name": "OIDC_CLIENT_SECRET", "valueFrom": "<gateway-oidc-client-secret ARN>" },

359 { "name": "GATEWAY_POSTGRES_URL", "valueFrom": "<gateway-postgres-url ARN>" }359> { "name": "GATEWAY_POSTGRES_URL", "valueFrom": "<gateway-postgres-url ARN>" }

360 ],360> ],

361 "logConfiguration": {361> "logConfiguration": {

362 "logDriver": "awslogs",362> "logDriver": "awslogs",

363 "options": {363> "options": {

364 "awslogs-group": "/ecs/claude-gateway",364> "awslogs-group": "/ecs/claude-gateway",

365 "awslogs-region": "<region>",365> "awslogs-region": "<region>",

366 "awslogs-stream-prefix": "gateway"366> "awslogs-stream-prefix": "gateway"

367 }367> }

368 }368> }

369 }369> }

370 ]370> ]

371}371> }

372```372> ```

373 373>

374Enregistrez-le :374> Enregistrez-le :

375 375>

376```bash theme={null}376> ```bash theme={null}

377aws ecs register-task-definition --cli-input-json file://claude-gateway-task.json377> aws ecs register-task-definition --cli-input-json file://claude-gateway-task.json

378```378> ```

379 379>

380Mettez un ALB interne en face avec un groupe cible qui vérifie l'état de santé de la passerelle. `--ip-address-type ipv4` est important : un ALB interne double pile publie des enregistrements AAAA de plage publique, que la vérification de réseau privé `/login` rejette :380> Mettez un ALB interne en face avec un groupe cible qui vérifie l'état de santé de la passerelle. `--ip-address-type ipv4` est important : un ALB interne double pile publie des enregistrements AAAA de plage publique, que la vérification de réseau privé `/login` rejette :

381 381>

382```bash theme={null}382> ```bash theme={null}

383ALB_ARN="$(aws elbv2 create-load-balancer --name claude-gateway \383> ALB_ARN="$(aws elbv2 create-load-balancer --name claude-gateway \

384 --scheme internal --type application --ip-address-type ipv4 \384> --scheme internal --type application --ip-address-type ipv4 \

385 --subnets $PRIVATE_SUBNETS --security-groups "$ALB_SG" \385> --subnets $PRIVATE_SUBNETS --security-groups "$ALB_SG" \

386 --query 'LoadBalancers[0].LoadBalancerArn' --output text)"386> --query 'LoadBalancers[0].LoadBalancerArn' --output text)"

387 387>

388TG_ARN="$(aws elbv2 create-target-group --name claude-gateway \388> TG_ARN="$(aws elbv2 create-target-group --name claude-gateway \

389 --protocol HTTP --port 8080 --vpc-id "$VPC_ID" --target-type ip \389> --protocol HTTP --port 8080 --vpc-id "$VPC_ID" --target-type ip \

390 --health-check-path /readyz \390> --health-check-path /readyz \

391 --query 'TargetGroups[0].TargetGroupArn' --output text)"391> --query 'TargetGroups[0].TargetGroupArn' --output text)"

392```392> ```

393 393>

394Ajoutez l'écouteur HTTPS. `--ssl-policy` épingle un plancher TLS moderne, car l'omettre revient à la politique par défaut héritée `ELBSecurityPolicy-2016-08`, qui accepte toujours TLS 1.0/1.1.394> Ajoutez l'écouteur HTTPS. `--ssl-policy` épingle un plancher TLS moderne, car l'omettre revient à la politique par défaut héritée `ELBSecurityPolicy-2016-08`, qui accepte toujours TLS 1.0/1.1.

395 395>

396L'ALB ferme une connexion après 60 secondes sans données par défaut. Les pings de maintien de la passerelle gardent les flux à l'intérieur de ce délai par défaut, donc augmenter le délai d'inactivité ajoute une marge au-dessus de la cadence de ping ; la ligne [Dépannage](#troubleshooting) sur les flux abandonnés couvre le mécanisme et les passerelles plus anciennes. Les commandes ci-dessous ajoutent l'écouteur et augmentent le délai d'inactivité :396> L'ALB ferme une connexion après 60 secondes sans données par défaut. Les pings de maintien de la passerelle gardent les flux à l'intérieur de ce délai par défaut, donc augmenter le délai d'inactivité ajoute une marge au-dessus de la cadence de ping ; la ligne [Dépannage](#troubleshooting) sur les flux abandonnés couvre le mécanisme et les passerelles plus anciennes. Les commandes ci-dessous ajoutent l'écouteur et augmentent le délai d'inactivité :

397 397>

398```bash theme={null}398> ```bash theme={null}

399aws elbv2 create-listener --load-balancer-arn "$ALB_ARN" \399> aws elbv2 create-listener --load-balancer-arn "$ALB_ARN" \

400 --protocol HTTPS --port 443 \400> --protocol HTTPS --port 443 \

401 --ssl-policy ELBSecurityPolicy-TLS13-1-2-2021-06 \401> --ssl-policy ELBSecurityPolicy-TLS13-1-2-2021-06 \

402 --certificates CertificateArn=<your-acm-certificate-arn> \402> --certificates CertificateArn=<your-acm-certificate-arn> \

403 --default-actions Type=forward,TargetGroupArn="$TG_ARN"403> --default-actions Type=forward,TargetGroupArn="$TG_ARN"

404 404>

405aws elbv2 modify-load-balancer-attributes --load-balancer-arn "$ALB_ARN" \405> aws elbv2 modify-load-balancer-attributes --load-balancer-arn "$ALB_ARN" \

406 --attributes Key=idle_timeout.timeout_seconds,Value=3600406> --attributes Key=idle_timeout.timeout_seconds,Value=3600

407```407> ```

408 408>

409Créez le service. Le disjoncteur de déploiement annule un déploiement dont les tâches continuent d'échouer, à cause d'une mauvaise image ou d'une configuration non amorçable, au dernier état stable au lieu de relancer les tâches défaillantes pour toujours :409> Créez le service. Le disjoncteur de déploiement annule un déploiement dont les tâches continuent d'échouer, à cause d'une mauvaise image ou d'une configuration non amorçable, au dernier état stable au lieu de relancer les tâches défaillantes pour toujours :

410 410>

411```bash theme={null}411> ```bash theme={null}

412aws ecs create-service --cluster claude-gateway --service-name claude-gateway \412> aws ecs create-service --cluster claude-gateway --service-name claude-gateway \

413 --task-definition claude-gateway --desired-count 1 --launch-type FARGATE \413> --task-definition claude-gateway --desired-count 1 --launch-type FARGATE \

414 --deployment-configuration "deploymentCircuitBreaker={enable=true,rollback=true}" \414> --deployment-configuration "deploymentCircuitBreaker={enable=true,rollback=true}" \

415 --health-check-grace-period-seconds 60 \415> --health-check-grace-period-seconds 60 \

416 --network-configuration "awsvpcConfiguration={subnets=[$(echo $PRIVATE_SUBNETS | tr ' ' ',')],securityGroups=[$GW_SG],assignPublicIp=DISABLED}" \416> --network-configuration "awsvpcConfiguration={subnets=[$(echo $PRIVATE_SUBNETS | tr ' ' ',')],securityGroups=[$GW_SG],assignPublicIp=DISABLED}" \

417 --load-balancers "targetGroupArn=$TG_ARN,containerName=gateway,containerPort=8080"417> --load-balancers "targetGroupArn=$TG_ARN,containerName=gateway,containerPort=8080"

418```418> ```

419 419>

420La période de grâce de 60 secondes donne à une tâche froide le temps de tirer l'image, de se connecter au store et de répondre à sa première vérification de santé avant qu'ECS ne commence à compter les défaillances par rapport au déploiement.420> La période de grâce de 60 secondes donne à une tâche froide le temps de tirer l'image, de se connecter au store et de répondre à sa première vérification de santé avant qu'ECS ne commence à compter les défaillances par rapport au déploiement.

421 421>

422La vérification de santé du groupe cible sur `GET /readyz` vérifie que le store est accessible, donc une tâche qui ne peut pas atteindre Postgres n'entre jamais en rotation. Pour garder les tâches passant la vérification lors d'une courte panne de base de données telle qu'un basculement RDS, définissez `store.readiness_grace_seconds` comme décrit dans [Comportement en cas de panne](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#outage-behavior), qui couvre également l'alternative `/healthz`.422> La vérification de santé du groupe cible sur `GET /readyz` vérifie que le store est accessible, donc une tâche qui ne peut pas atteindre Postgres n'entre jamais en rotation. Pour garder les tâches passant la vérification lors d'une courte panne de base de données telle qu'un basculement RDS, définissez `store.readiness_grace_seconds` comme décrit dans [Comportement en cas de panne](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#outage-behavior), qui couvre également l'alternative `/healthz`.

423 423>

424Les tâches s'exécutent dans des sous-réseaux privés sans IP publique, donc tout le trafic sortant (vers Bedrock, votre IdP, Secrets Manager, ECR et CloudWatch Logs) passe par la passerelle NAT. Pour garder le trafic Bedrock hors du chemin public, créez un endpoint VPC d'interface `bedrock-runtime` et pointez l'`base_url` upstream vers celui-ci, comme indiqué dans la [référence upstream Bedrock](https://code.claude.com/docs/fr/claude-apps-gateway-config.md#amazon-bedrock) ; l'IdP a toujours besoin d'une sortie Internet.424> Les tâches s'exécutent dans des sous-réseaux privés sans IP publique, donc tout le trafic sortant (vers Bedrock, votre IdP, Secrets Manager, ECR et CloudWatch Logs) passe par la passerelle NAT. Pour garder le trafic Bedrock hors du chemin public, créez un endpoint VPC d'interface `bedrock-runtime` et pointez l'`base_url` upstream vers celui-ci, comme indiqué dans la [référence upstream Bedrock](https://code.claude.com/docs/fr/claude-apps-gateway-config.md#amazon-bedrock) ; l'IdP a toujours besoin d'une sortie Internet.

425 425>

426Terminez en donnant aux développeurs un nom d'hôte privé résolvable : dans une zone hébergée privée Route 53, aliasez le nom DNS interne de la passerelle à l'ALB, et définissez `listen.public_url` sur ce nom d'hôte. Le nom `*.elb.amazonaws.com` propre de l'ALB se résout en adresses privées sur un ALB interne, mais il ne peut pas porter votre certificat ACM, donc utilisez votre propre nom.426> Terminez en donnant aux développeurs un nom d'hôte privé résolvable : dans une zone hébergée privée Route 53, aliasez le nom DNS interne de la passerelle à l'ALB, et définissez `listen.public_url` sur ce nom d'hôte. Le nom `*.elb.amazonaws.com` propre de l'ALB se résout en adresses privées sur un ALB interne, mais il ne peut pas porter votre certificat ACM, donc utilisez votre propre nom.

427 427>

428Mettez à jour l'URI de redirection autorisée du client OAuth vers `<public_url>/oauth/callback` avant la première connexion. Après avoir modifié `public_url`, reconstruisez et poussez l'image sous une nouvelle balise, enregistrez une nouvelle révision de définition de tâche et redéployez. Sur ECS, le paramètre vit dans le `gateway.yaml` intégré de l'image, et la passerelle construit son origine publique uniquement à partir de ce paramètre, en ignorant `X-Forwarded-Host` et `X-Forwarded-Proto`. `X-Forwarded-For` est honoré pour les adresses IP des clients uniquement lorsque `listen.trusted_proxies` est défini.428> Mettez à jour l'URI de redirection autorisée du client OAuth vers `<public_url>/oauth/callback` avant la première connexion. Après avoir modifié `public_url`, reconstruisez et poussez l'image sous une nouvelle balise, enregistrez une nouvelle révision de définition de tâche et redéployez. Sur ECS, le paramètre vit dans le `gateway.yaml` intégré de l'image, et la passerelle construit son origine publique uniquement à partir de ce paramètre, en ignorant `X-Forwarded-Host` et `X-Forwarded-Proto`. `X-Forwarded-For` est honoré pour les adresses IP des clients uniquement lorsque `listen.trusted_proxies` est défini.

429 

430**EKS**

431 

432Cette piste a besoin de `kubectl` et `eksctl` installés localement, et d'un cluster EKS existant avec un fournisseur OIDC IAM et le contrôleur AWS Load Balancer installé. Le cluster doit être sur `$VPC_ID` pour que les pods puissent atteindre l'endpoint privé RDS, et le groupe de sécurité `claude-gateway-db` doit admettre le groupe de sécurité du pod ou du nœud du cluster à la place de `$GW_SG`.

433 

434Sur EKS, la passerelle obtient ses identifiants Bedrock via IRSA plutôt que les rôles ECS. La politique de confiance `ecs-tasks.amazonaws.com` de l'étape IAM ne s'applique pas ici ; IRSA a besoin d'un rôle dont la politique de confiance fédère sur le fournisseur OIDC du cluster, limité à `system:serviceaccount:claude-gateway:gateway`. `eksctl create iamserviceaccount` crée ce rôle, attache les politiques et annote le compte de service Kubernetes avec l'ARN du rôle en une seule étape. Transformez les deux documents de politique de l'étape IAM en politiques gérées qu'il peut attacher :

435 

436```bash theme={null}

437BEDROCK_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-bedrock-invoke \

438 --policy-document file://bedrock-invoke.json --query Policy.Arn --output text)"

439SECRETS_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-secrets-read \

440 --policy-document file://secrets-read.json --query Policy.Arn --output text)"

441 

442kubectl create namespace claude-gateway

443eksctl create iamserviceaccount --cluster <your-cluster> --region "$AWS_REGION" \

444 --namespace claude-gateway --name gateway --role-name claude-gateway \

445 --attach-policy-arn "$BEDROCK_POLICY_ARN" \

446 --attach-policy-arn "$SECRETS_POLICY_ARN" \

447 --approve

448```

449 

450La politique des secrets n'est nécessaire que lorsque les pods lisent eux-mêmes Secrets Manager, comme le fait le fournisseur AWS du pilote CSI Secrets Store en utilisant le compte de service du pod de montage ; supprimez-la si vous créez les secrets Kubernetes d'une autre façon. Le fournisseur a besoin des deux actions de la politique : il appelle `DescribeSecret` lorsqu'il réconcilie les secrets ayant fait l'objet d'une rotation, donc une autorisation limitée à `GetSecretValue` permet le montage au premier déploiement mais cesse de récupérer les rotations.

451 

452Déployez la passerelle en tant que Deployment standard plus un Service et un Ingress, comme décrit dans [Déploiement Kubernetes](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#kubernetes), avec :

453 

454* `serviceAccountName: gateway`

455* `gateway.yaml` monté à partir d'une ConfigMap et les secrets montés à `/secrets`

456* la sonde de disponibilité pointée vers `GET /readyz`

457 

458Pour le frontal, un Ingress géré par le contrôleur AWS Load Balancer provisionne l'ALB interne. Annotez-le avec :

459 

460* `alb.ingress.kubernetes.io/scheme: internal` et `alb.ingress.kubernetes.io/target-type: ip`

461* `alb.ingress.kubernetes.io/ip-address-type: ipv4`, pour qu'aucun enregistrement AAAA de plage publique ne soit publié pour la vérification de [réseau privé](https://code.claude.com/docs/fr/claude-apps-gateway#prerequisites) `/login` à rejeter

462* `alb.ingress.kubernetes.io/inbound-cidrs: <your-corporate-cidr>`, pour que le groupe de sécurité frontal géré par le contrôleur n'admette que votre réseau d'entreprise à la place de sa valeur par défaut `0.0.0.0/0`

463* `alb.ingress.kubernetes.io/certificate-arn` avec le certificat ACM

464* `alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-TLS13-1-2-2021-06`, pour que l'écouteur ne revienne pas à la politique par défaut héritée qui accepte TLS 1.0 et 1.1

465* `alb.ingress.kubernetes.io/load-balancer-attributes: idle_timeout.timeout_seconds=3600`, une marge au-dessus du maintien de la passerelle en streaming ; consultez [Dépannage](#troubleshooting)

466 429 

467Avec IRSA, le SDK AWS lit un jeton de compte de service projeté et l'échange avec AWS STS, donc le pod n'a jamais besoin du service de métadonnées d'instance EC2 ; une NetworkPolicy de sortie peut bloquer `169.254.169.254` pour les pods de passerelle. Le problème de limite de saut de nœud dans [Dépannage](#troubleshooting) ci-dessous s'applique uniquement aux clusters qui ignorent IRSA et s'appuient sur les rôles d'instance de nœud.430> [tab] EKS

431>

432> Cette piste a besoin de `kubectl` et `eksctl` installés localement, et d'un cluster EKS existant avec un fournisseur OIDC IAM et le contrôleur AWS Load Balancer installé. Le cluster doit être sur `$VPC_ID` pour que les pods puissent atteindre l'endpoint privé RDS, et le groupe de sécurité `claude-gateway-db` doit admettre le groupe de sécurité du pod ou du nœud du cluster à la place de `$GW_SG`.

433>

434> Sur EKS, la passerelle obtient ses identifiants Bedrock via IRSA plutôt que les rôles ECS. La politique de confiance `ecs-tasks.amazonaws.com` de l'étape IAM ne s'applique pas ici ; IRSA a besoin d'un rôle dont la politique de confiance fédère sur le fournisseur OIDC du cluster, limité à `system:serviceaccount:claude-gateway:gateway`. `eksctl create iamserviceaccount` crée ce rôle, attache les politiques et annote le compte de service Kubernetes avec l'ARN du rôle en une seule étape. Transformez les deux documents de politique de l'étape IAM en politiques gérées qu'il peut attacher :

435>

436> ```bash theme={null}

437> BEDROCK_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-bedrock-invoke \

438> --policy-document file://bedrock-invoke.json --query Policy.Arn --output text)"

439> SECRETS_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-secrets-read \

440> --policy-document file://secrets-read.json --query Policy.Arn --output text)"

441>

442> kubectl create namespace claude-gateway

443> eksctl create iamserviceaccount --cluster <your-cluster> --region "$AWS_REGION" \

444> --namespace claude-gateway --name gateway --role-name claude-gateway \

445> --attach-policy-arn "$BEDROCK_POLICY_ARN" \

446> --attach-policy-arn "$SECRETS_POLICY_ARN" \

447> --approve

448> ```

449>

450> La politique des secrets n'est nécessaire que lorsque les pods lisent eux-mêmes Secrets Manager, comme le fait le fournisseur AWS du pilote CSI Secrets Store en utilisant le compte de service du pod de montage ; supprimez-la si vous créez les secrets Kubernetes d'une autre façon. Le fournisseur a besoin des deux actions de la politique : il appelle `DescribeSecret` lorsqu'il réconcilie les secrets ayant fait l'objet d'une rotation, donc une autorisation limitée à `GetSecretValue` permet le montage au premier déploiement mais cesse de récupérer les rotations.

451>

452> Déployez la passerelle en tant que Deployment standard plus un Service et un Ingress, comme décrit dans [Déploiement Kubernetes](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#kubernetes), avec :

453>

454> * `serviceAccountName: gateway`

455> * `gateway.yaml` monté à partir d'une ConfigMap et les secrets montés à `/secrets`

456> * la sonde de disponibilité pointée vers `GET /readyz`

457>

458> Pour le frontal, un Ingress géré par le contrôleur AWS Load Balancer provisionne l'ALB interne. Annotez-le avec :

459>

460> * `alb.ingress.kubernetes.io/scheme: internal` et `alb.ingress.kubernetes.io/target-type: ip`

461> * `alb.ingress.kubernetes.io/ip-address-type: ipv4`, pour qu'aucun enregistrement AAAA de plage publique ne soit publié pour la vérification de [réseau privé](https://code.claude.com/docs/fr/claude-apps-gateway#prerequisites) `/login` à rejeter

462> * `alb.ingress.kubernetes.io/inbound-cidrs: <your-corporate-cidr>`, pour que le groupe de sécurité frontal géré par le contrôleur n'admette que votre réseau d'entreprise à la place de sa valeur par défaut `0.0.0.0/0`

463> * `alb.ingress.kubernetes.io/certificate-arn` avec le certificat ACM

464> * `alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-TLS13-1-2-2021-06`, pour que l'écouteur ne revienne pas à la politique par défaut héritée qui accepte TLS 1.0 et 1.1

465> * `alb.ingress.kubernetes.io/load-balancer-attributes: idle_timeout.timeout_seconds=3600`, une marge au-dessus du maintien de la passerelle en streaming ; consultez [Dépannage](#troubleshooting)

466>

467> Avec IRSA, le SDK AWS lit un jeton de compte de service projeté et l'échange avec AWS STS, donc le pod n'a jamais besoin du service de métadonnées d'instance EC2 ; une NetworkPolicy de sortie peut bloquer `169.254.169.254` pour les pods de passerelle. Le problème de limite de saut de nœud dans [Dépannage](#troubleshooting) ci-dessous s'applique uniquement aux clusters qui ignorent IRSA et s'appuient sur les rôles d'instance de nœud.

468 468 

469**8. Pousser l'URL de la passerelle vers les machines des développeurs**469**8. Pousser l'URL de la passerelle vers les machines des développeurs**

470 470 

Details

203 203 

204**7. Déployer**204**7. Déployer**

205 205 

206**Cloud Run**206> [tab] Cloud Run

207 

208La commande ci-dessous déploie pour la production derrière un équilibreur de charge interne.

209 

210```bash theme={null}

211gcloud run deploy claude-gateway \

212 --image="${REGION}-docker.pkg.dev/${PROJECT_ID}/claude-gateway/gateway:<version>" \

213 --region="$REGION" \

214 --service-account="claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com" \

215 --min-instances=1 \

216 --max-instances=8 \

217 --timeout=3600 \

218 --ingress=internal \

219 --network="$VPC" --subnet=cc-gateway-subnet --vpc-egress=private-ranges-only \

220 --set-secrets=/etc/claude/gateway.yaml=gateway-config:latest,GATEWAY_JWT_SECRET=gateway-jwt-secret:latest,OIDC_CLIENT_SECRET=gateway-oidc-client-secret:latest,GATEWAY_POSTGRES_URL=gateway-postgres-url:latest \

221 --no-invoker-iam-check

222```

223 

224L'accès VPC direct, via `--network`, `--subnet` et `--vpc-egress=private-ranges-only`, permet au service d'atteindre l'IP privée Cloud SQL directement. L'accès public aux endpoints de l'Agent Platform de Google Cloud et à `accounts.google.com` va directement sur Internet plutôt que via le VPC, donc aucun Cloud NAT n'est nécessaire.

225 

226> [!NOTE]

227>207>

228> Chaque instance détient jusqu'à [`store.max_connections`](https://code.claude.com/docs/fr/claude-apps-gateway-config#store) connexions Postgres, cinq par défaut. Utilisez [Dimensionner le pool de connexions](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#size-the-connection-pool) pour vérifier `--max-instances=8` par rapport aux connexions que votre base de données laisse disponibles pour la passerelle, et incluez les instances supplémentaires qu'une mise à jour progressive démarre.208> La commande ci-dessous déploie pour la production derrière un équilibreur de charge interne.

229 209>

230La vérification IAM de l'invocateur doit être ouverte ou désactivée. La passerelle exécute son propre OIDC et ses clients ne portent aucun jeton GCP, donc la vérification de l'invocateur de Cloud Run doit admettre les requêtes non authentifiées. L'authentification OIDC de la passerelle authentifie la requête une fois qu'elle atteint le conteneur, avec `allowed_email_domains` contrôlant les domaines autorisés à se connecter.210> ```bash theme={null}

231 211> gcloud run deploy claude-gateway \

232Deux flags admettent les requêtes non authentifiées :212> --image="${REGION}-docker.pkg.dev/${PROJECT_ID}/claude-gateway/gateway:<version>" \

233 213> --region="$REGION" \

234* `--no-invoker-iam-check` : désactive la vérification sans liaison `allUsers` à gérer, et fonctionne sous Domain Restricted Sharing214> --service-account="claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com" \

235* `--allow-unauthenticated` : accorde à `allUsers` le rôle `run.invoker` ; utilisez-le si votre organisation n'autorise pas `--no-invoker-iam-check`215> --min-instances=1 \

236 216> --max-instances=8 \

237La restriction d'accès via `--ingress` est une couche indépendante et séparée de la vérification de l'invocateur ; gardez-la définie pour limiter le service à votre réseau d'entreprise.217> --timeout=3600 \

238 218> --ingress=internal \

239Par défaut, l'URL Cloud Run `*.run.app` se résout en une adresse publique, que la vérification [réseau privé](https://code.claude.com/docs/fr/claude-apps-gateway#prerequisites) de `/login` rejette. Deux topologies donnent aux développeurs un nom d'hôte résoluble en privé, et Cloud Run ne provisionne ni l'une ni l'autre pour vous :219> --network="$VPC" --subnet=cc-gateway-subnet --vpc-egress=private-ranges-only \

240 220> --set-secrets=/etc/claude/gateway.yaml=gateway-config:latest,GATEWAY_JWT_SECRET=gateway-jwt-secret:latest,OIDC_CLIENT_SECRET=gateway-oidc-client-secret:latest,GATEWAY_POSTGRES_URL=gateway-postgres-url:latest \

241* **Équilibreur de charge d'application interne**, la topologie que le `gateway.yaml` de cette page suppose : provisionnez un équilibreur de charge d'application interne devant le service avec un nom DNS interne et un certificat, et définissez `listen.public_url` sur ce nom d'hôte. Le paramètre d'accès `internal` admet déjà le trafic provenant des équilibreurs de charge d'application internes ; `internal-and-cloud-load-balancing` admet en plus les équilibreurs de charge d'application externes, dont la vérification réseau privé de `/login` rejette les adresses publiques, donc aucune topologie de cette page n'en a besoin.221> --no-invoker-iam-check

242* **Accès interne uniquement sans équilibreur de charge** : conservez la commande de déploiement telle quelle et laissez `listen.public_url` comme l'URL `*.run.app`, la valeur par défaut dans les [actifs de référence](#terraform-reference) ci-dessous. Pour que `*.run.app` se résolve en privé, votre équipe réseau doit déjà exploiter un endpoint Private Service Connect pour les API Google, une zone privée Cloud DNS résolvant `*.run.app` vers celui-ci, et un routage sur site vers cet endpoint.222> ```

243 223>

244Le [guide de mise en réseau privée de Google pour Cloud Run](https://cloud.google.com/run/docs/securing/private-networking) couvre l'infrastructure que les deux options nécessitent. Vérifiez la connexion une fois que la passerelle est servie sur un nom d'hôte privé ; jusqu'à ce moment, confirmez que le conteneur a démarré à partir de ses journaux dans Cloud Run.224> L'accès VPC direct, via `--network`, `--subnet` et `--vpc-egress=private-ranges-only`, permet au service d'atteindre l'IP privée Cloud SQL directement. L'accès public aux endpoints de l'Agent Platform de Google Cloud et à `accounts.google.com` va directement sur Internet plutôt que via le VPC, donc aucun Cloud NAT n'est nécessaire.

245 225>

246Mettez à jour l'URI de redirection autorisé du client OAuth vers `<public_url>/oauth/callback` avant la première connexion. Redéployez après avoir modifié `public_url`, car la passerelle construit son origine publique uniquement à partir de ce paramètre et ignore `X-Forwarded-Host` et `X-Forwarded-Proto`. `X-Forwarded-For` est honoré pour les IP client uniquement lorsque `listen.trusted_proxies` est défini.226> > [!NOTE]

247 227> >

248**GKE**228> > Chaque instance détient jusqu'à [`store.max_connections`](https://code.claude.com/docs/fr/claude-apps-gateway-config#store) connexions Postgres, cinq par défaut. Utilisez [Dimensionner le pool de connexions](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#size-the-connection-pool) pour vérifier `--max-instances=8` par rapport aux connexions que votre base de données laisse disponibles pour la passerelle, et incluez les instances supplémentaires qu'une mise à jour progressive démarre.

249 229>

250Le cluster doit être sur le `$VPC` créé à l'étape Cloud SQL afin que les pods puissent atteindre l'IP privée de la base de données ; l'appairage VPC seul ne fonctionne pas, car l'IP privée Cloud SQL est elle-même un réseau appairé et l'appairage n'est pas transitif. Pour créer un nouveau cluster sur ce VPC, passez `--network="$VPC" --subnetwork=cc-gateway-subnet` à `gcloud container clusters create`.230> La vérification IAM de l'invocateur doit être ouverte ou désactivée. La passerelle exécute son propre OIDC et ses clients ne portent aucun jeton GCP, donc la vérification de l'invocateur de Cloud Run doit admettre les requêtes non authentifiées. L'authentification OIDC de la passerelle authentifie la requête une fois qu'elle atteint le conteneur, avec `allowed_email_domains` contrôlant les domaines autorisés à se connecter.

251 231>

252Activez Workload Identity sur le cluster et ses pools de nœuds, puis liez le compte de service Google au compte de service Kubernetes afin que les pods héritent de ses identifiants :232> Deux flags admettent les requêtes non authentifiées :

253 233>

254```bash theme={null}234> * `--no-invoker-iam-check` : désactive la vérification sans liaison `allUsers` à gérer, et fonctionne sous Domain Restricted Sharing

255gcloud container clusters update <cluster> --region="$REGION" \235> * `--allow-unauthenticated` : accorde à `allUsers` le rôle `run.invoker` ; utilisez-le si votre organisation n'autorise pas `--no-invoker-iam-check`

256 --workload-pool="${PROJECT_ID}.svc.id.goog"236>

257# On a Standard cluster, existing node pools also need GKE_METADATA;237> La restriction d'accès via `--ingress` est une couche indépendante et séparée de la vérification de l'invocateur ; gardez-la définie pour limiter le service à votre réseau d'entreprise.

258# Autopilot enables this by default.238>

259gcloud container node-pools update <pool> --cluster=<cluster> \239> Par défaut, l'URL Cloud Run `*.run.app` se résout en une adresse publique, que la vérification [réseau privé](https://code.claude.com/docs/fr/claude-apps-gateway#prerequisites) de `/login` rejette. Deux topologies donnent aux développeurs un nom d'hôte résoluble en privé, et Cloud Run ne provisionne ni l'une ni l'autre pour vous :

260 --region="$REGION" --workload-metadata=GKE_METADATA240>

261 241> * **Équilibreur de charge d'application interne**, la topologie que le `gateway.yaml` de cette page suppose : provisionnez un équilibreur de charge d'application interne devant le service avec un nom DNS interne et un certificat, et définissez `listen.public_url` sur ce nom d'hôte. Le paramètre d'accès `internal` admet déjà le trafic provenant des équilibreurs de charge d'application internes ; `internal-and-cloud-load-balancing` admet en plus les équilibreurs de charge d'application externes, dont la vérification réseau privé de `/login` rejette les adresses publiques, donc aucune topologie de cette page n'en a besoin.

262kubectl create namespace claude-gateway242> * **Accès interne uniquement sans équilibreur de charge** : conservez la commande de déploiement telle quelle et laissez `listen.public_url` comme l'URL `*.run.app`, la valeur par défaut dans les [actifs de référence](#terraform-reference) ci-dessous. Pour que `*.run.app` se résolve en privé, votre équipe réseau doit déjà exploiter un endpoint Private Service Connect pour les API Google, une zone privée Cloud DNS résolvant `*.run.app` vers celui-ci, et un routage sur site vers cet endpoint.

263kubectl create serviceaccount gateway -n claude-gateway243>

264 244> Le [guide de mise en réseau privée de Google pour Cloud Run](https://cloud.google.com/run/docs/securing/private-networking) couvre l'infrastructure que les deux options nécessitent. Vérifiez la connexion une fois que la passerelle est servie sur un nom d'hôte privé ; jusqu'à ce moment, confirmez que le conteneur a démarré à partir de ses journaux dans Cloud Run.

265gcloud iam service-accounts add-iam-policy-binding \245>

266 "claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com" \246> Mettez à jour l'URI de redirection autorisé du client OAuth vers `<public_url>/oauth/callback` avant la première connexion. Redéployez après avoir modifié `public_url`, car la passerelle construit son origine publique uniquement à partir de ce paramètre et ignore `X-Forwarded-Host` et `X-Forwarded-Proto`. `X-Forwarded-For` est honoré pour les IP client uniquement lorsque `listen.trusted_proxies` est défini.

267 --role roles/iam.workloadIdentityUser \

268 --member "serviceAccount:${PROJECT_ID}.svc.id.goog[claude-gateway/gateway]"

269 

270kubectl annotate serviceaccount gateway -n claude-gateway \

271 iam.gke.io/gcp-service-account="claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com"

272```

273 

274Déployez la passerelle en tant que Deployment standard plus un Service et un Ingress interne, classe `gce-internal`, comme décrit dans [Déploiement Kubernetes](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#kubernetes), avec :

275 

276* `serviceAccountName: gateway`

277* le pilote CSI Secret Manager montant les secrets à `/secrets`

278* la sonde de disponibilité pointée vers `GET /readyz`

279 

280Attachez un BackendConfig avec un `timeoutSec` augmenté au Service de la passerelle : le service backend de l'équilibreur de charge derrière GKE Ingress utilise par défaut un délai d'expiration de 30 secondes, ce qui coupe les réponses de streaming longues.

281 

282N'appliquez pas une NetworkPolicy d'accès sortant qui bloque `169.254.169.254` sur un cluster Workload Identity ; le pod doit atteindre le serveur de métadonnées pour les identifiants. La [garde SSRF](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#threat-model-summary) intégrée de la passerelle est la défense là.

283 247 

284La passerelle journalise un avertissement de démarrage indiquant que l'endpoint des métadonnées est accessible et suggère d'appliquer une NetworkPolicy d'accès sortant. Sous Workload Identity, cet avertissement est attendu, car le pod a besoin de l'endpoint.248> [tab] GKE

249>

250> Le cluster doit être sur le `$VPC` créé à l'étape Cloud SQL afin que les pods puissent atteindre l'IP privée de la base de données ; l'appairage VPC seul ne fonctionne pas, car l'IP privée Cloud SQL est elle-même un réseau appairé et l'appairage n'est pas transitif. Pour créer un nouveau cluster sur ce VPC, passez `--network="$VPC" --subnetwork=cc-gateway-subnet` à `gcloud container clusters create`.

251>

252> Activez Workload Identity sur le cluster et ses pools de nœuds, puis liez le compte de service Google au compte de service Kubernetes afin que les pods héritent de ses identifiants :

253>

254> ```bash theme={null}

255> gcloud container clusters update <cluster> --region="$REGION" \

256> --workload-pool="${PROJECT_ID}.svc.id.goog"

257> # On a Standard cluster, existing node pools also need GKE_METADATA;

258> # Autopilot enables this by default.

259> gcloud container node-pools update <pool> --cluster=<cluster> \

260> --region="$REGION" --workload-metadata=GKE_METADATA

261>

262> kubectl create namespace claude-gateway

263> kubectl create serviceaccount gateway -n claude-gateway

264>

265> gcloud iam service-accounts add-iam-policy-binding \

266> "claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com" \

267> --role roles/iam.workloadIdentityUser \

268> --member "serviceAccount:${PROJECT_ID}.svc.id.goog[claude-gateway/gateway]"

269>

270> kubectl annotate serviceaccount gateway -n claude-gateway \

271> iam.gke.io/gcp-service-account="claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com"

272> ```

273>

274> Déployez la passerelle en tant que Deployment standard plus un Service et un Ingress interne, classe `gce-internal`, comme décrit dans [Déploiement Kubernetes](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#kubernetes), avec :

275>

276> * `serviceAccountName: gateway`

277> * le pilote CSI Secret Manager montant les secrets à `/secrets`

278> * la sonde de disponibilité pointée vers `GET /readyz`

279>

280> Attachez un BackendConfig avec un `timeoutSec` augmenté au Service de la passerelle : le service backend de l'équilibreur de charge derrière GKE Ingress utilise par défaut un délai d'expiration de 30 secondes, ce qui coupe les réponses de streaming longues.

281>

282> N'appliquez pas une NetworkPolicy d'accès sortant qui bloque `169.254.169.254` sur un cluster Workload Identity ; le pod doit atteindre le serveur de métadonnées pour les identifiants. La [garde SSRF](https://code.claude.com/docs/fr/claude-apps-gateway-deploy.md#threat-model-summary) intégrée de la passerelle est la défense là.

283>

284> La passerelle journalise un avertissement de démarrage indiquant que l'endpoint des métadonnées est accessible et suggère d'appliquer une NetworkPolicy d'accès sortant. Sous Workload Identity, cet avertissement est attendu, car le pod a besoin de l'endpoint.

285 285 

286**8. Pousser l'URL de la passerelle vers les machines des développeurs**286**8. Pousser l'URL de la passerelle vers les machines des développeurs**

287 287 

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Les sessions cloud sont disponibles sur les plans Pro, Max et Team, ainsi que pour les utilisateurs Enterprise disposant de sièges premium ou de sièges Chat + Claude Code. Si des [rôles personnalisés](https://support.claude.com/en/articles/13930452) régissent votre accès, vous avez également besoin d'un rôle qui inclut la permission des sessions cloud pour démarrer des sessions sur l'infrastructure d'Anthropic depuis le navigateur, les applications ou le terminal. Demandez à un Owner de l'ajouter à l'un de vos rôles dans [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).11> Les sessions cloud sont disponibles sur les plans Pro, Max, Ultra et Team, ainsi que pour les utilisateurs Enterprise disposant de sièges premium ou de sièges Chat + Claude Code. Si des [rôles personnalisés](https://support.claude.com/en/articles/13930452) régissent votre accès, vous avez également besoin d'un rôle qui inclut la permission des sessions cloud pour démarrer des sessions sur l'infrastructure d'Anthropic depuis le navigateur, les applications ou le terminal. Demandez à un Owner de l'ajouter à l'un de vos rôles dans [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).

12 12 

13Une session cloud est une session Claude Code qui s'exécute sur l'infrastructure cloud au lieu de sur votre machine. Par défaut, elle s'exécute sur l'infrastructure gérée par Anthropic, ou sur l'[environnement auto-hébergé](https://code.claude.com/docs/fr/self-hosted-environments) de votre organisation lorsqu'elle y est acheminée. La session continue de s'exécuter après que vous fermiez votre ordinateur portable, et vous pouvez la vérifier ou la diriger depuis n'importe quel appareil. Elle est comptabilisée dans les limites d'utilisation de votre plan, avec le reste de votre utilisation de Claude et de Claude Code, et la VM cloud ne fait l'objet d'aucune facturation séparée.13Une session cloud est une session Claude Code qui s'exécute sur l'infrastructure cloud au lieu de sur votre machine. Par défaut, elle s'exécute sur l'infrastructure gérée par Anthropic, ou sur l'[environnement auto-hébergé](https://code.claude.com/docs/fr/self-hosted-environments) de votre organisation lorsqu'elle y est acheminée. La session continue de s'exécuter après que vous fermiez votre ordinateur portable, et vous pouvez la vérifier ou la diriger depuis n'importe quel appareil. Elle est comptabilisée dans les limites d'utilisation de votre plan, avec le reste de votre utilisation de Claude et de Claude Code, et la VM cloud ne fait l'objet d'aucune facturation séparée.

14 14 


342* **Votre nom** : le nom d'affichage de votre compte est visible à tous les destinataires ayant accès342* **Votre nom** : le nom d'affichage de votre compte est visible à tous les destinataires ayant accès

343* **Sessions Slack** : les sessions [Claude dans Slack](https://code.claude.com/docs/fr/slack.md) sont automatiquement partagées avec la visibilité Équipe343* **Sessions Slack** : les sessions [Claude dans Slack](https://code.claude.com/docs/fr/slack.md) sont automatiquement partagées avec la visibilité Équipe

344 344 

345#### Partager à partir d'un compte Max ou Pro345#### Partager à partir d'un compte Max, Ultra ou Pro

346 

347Le partage fonctionne comme suit pour les comptes Max et Pro :

348 346 

349* **Options de visibilité** : **Privé** et **Public**. La visibilité Public rend la session visible à tout utilisateur connecté à claude.ai347* **Options de visibilité** : **Privé** et **Public**. La visibilité Public rend la session visible à tout utilisateur connecté à claude.ai

350* **Accès au dépôt** : la vérification n'est pas activée par défaut348* **Accès au dépôt** : la vérification n'est pas activée par défaut

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Projects est en bêta publique sur les plans Pro et Max et se déploie progressivement. Le déploiement a commencé par les comptes qui ont utilisé les [sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) et qui n'ont pas de projets existants dans le chat claude.ai ou Cowork. Projects n'est pas encore proposé sur les plans Team ou Enterprise.11> Projects est en bêta publique sur les plans Pro, Max et Ultra et se déploie progressivement. Le déploiement a commencé par les comptes qui ont utilisé les [sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) et qui n'ont pas de projets existants dans le chat claude.ai ou Cowork. Projects n'est pas encore proposé sur les plans Team ou Enterprise.

12>12>

13> Si **Projects** n'apparaît pas dans la barre latérale sur [claude.ai/code](https://claude.ai/code) ou dans l'onglet Code de l'[application de bureau](https://code.claude.com/docs/fr/desktop.md), vérifiez sous **More** à cet endroit. S'il n'y figure pas non plus, le déploiement n'a pas encore atteint votre compte. Vous pouvez [rejoindre la liste d'attente](https://claude.com/form/projects), et consulter [Exécuter des agents en parallèle](https://code.claude.com/docs/fr/agents.md) pour voir ce que vous pouvez utiliser en attendant.13> Si **Projects** n'apparaît pas dans la barre latérale sur [claude.ai/code](https://claude.ai/code) ou dans l'onglet Code de l'[application de bureau](https://code.claude.com/docs/fr/desktop.md), vérifiez sous **More** à cet endroit. S'il n'y figure pas non plus, le déploiement n'a pas encore atteint votre compte. Vous pouvez [rejoindre la liste d'attente](https://claude.com/form/projects), et consulter [Exécuter des agents en parallèle](https://code.claude.com/docs/fr/agents.md) pour voir ce que vous pouvez utiliser en attendant.

14 14 


78 78 

79Avant de créer un projet, vérifiez votre plan, votre configuration GitHub et ce que le travail doit atteindre :79Avant de créer un projet, vérifiez votre plan, votre configuration GitHub et ce que le travail doit atteindre :

80 80 

81* **Plan** : vous êtes sur Pro ou Max et **Projects** s'affiche dans votre barre latérale, directement ou sous **More**. Sélectionnez **Projects** et vérifiez qu'il propose **New project** ou **Get started**.81* **Plan** : vous êtes sur Pro, Max ou Ultra et **Projects** s'affiche dans votre barre latérale, directement ou sous **More**. Sélectionnez **Projects** et vérifiez qu'il propose **New project** ou **Get started**.

82* **GitHub, si le projet travaillera sur du code** : votre code est sur github.com plutôt que sur GitHub Enterprise Server, GitLab ou Bitbucket, votre compte GitHub connecté y a accès en push, et l'application Claude GitHub est installée dessus. Si vous avez connecté GitHub avec [`/web-setup`](https://code.claude.com/docs/fr/web-quickstart#connect-from-your-terminal), ce token permet à vos autres sessions cloud d'atteindre un référentiel mais n'est pas suffisant pour les threads du projet, qui ont besoin de l'application Claude GitHub. [Configurer l'accès GitHub](#set-up-github-access) a les étapes.82* **GitHub, si le projet travaillera sur du code** : votre code est sur github.com plutôt que sur GitHub Enterprise Server, GitLab ou Bitbucket, votre compte GitHub connecté y a accès en push, et l'application Claude GitHub est installée dessus. Si vous avez connecté GitHub avec [`/web-setup`](https://code.claude.com/docs/fr/web-quickstart#connect-from-your-terminal), ce token permet à vos autres sessions cloud d'atteindre un référentiel mais n'est pas suffisant pour les threads du projet, qui ont besoin de l'application Claude GitHub. [Configurer l'accès GitHub](#set-up-github-access) a les étapes.

83* **Accès réseau, secrets et outils** : pour les threads cloud, ceux-ci proviennent de l'[environnement cloud](#choose-an-environment-for-threads) du projet. L'environnement par défaut atteint déjà [les registres de packages courants](https://code.claude.com/docs/fr/cloud-environments.md#default-allowed-domains), donc vérifiez ceci seulement si le travail a besoin d'autres domaines, d'un secret ou d'un outil qui n'est pas préinstallé. Si le travail a besoin d'un serveur MCP, vérifiez qu'il s'affiche comme connecté dans vos [connecteurs claude.ai](https://claude.ai/customize/connectors).83* **Accès réseau, secrets et outils** : pour les threads cloud, ceux-ci proviennent de l'[environnement cloud](#choose-an-environment-for-threads) du projet. L'environnement par défaut atteint déjà [les registres de packages courants](https://code.claude.com/docs/fr/cloud-environments.md#default-allowed-domains), donc vérifiez ceci seulement si le travail a besoin d'autres domaines, d'un secret ou d'un outil qui n'est pas préinstallé. Si le travail a besoin d'un serveur MCP, vérifiez qu'il s'affiche comme connecté dans vos [connecteurs claude.ai](https://claude.ai/customize/connectors).

84 84 


421 421 

422Ouvrez l'onglet **Usage** dans **Project settings** pour voir l'utilisation des tokens par thread et par modèle, et combien est allé à la conversation du projet. Pour la réduire :422Ouvrez l'onglet **Usage** dans **Project settings** pour voir l'utilisation des tokens par thread et par modèle, et combien est allé à la conversation du projet. Pour la réduire :

423 423 

424* Une suite acheminée vers un thread qui a été inactif plus longtemps que la [durée de vie du cache](https://code.claude.com/docs/fr/prompt-caching.md#cache-lifetime), une heure sur Pro et Max dans les limites de votre plan, relit la conversation entière de ce thread avant de faire quoi que ce soit. Pour le nouveau travail, demander à Claude de démarrer un thread frais peut utiliser moins que de relancer un grand ancien.424* Sur Pro, Max et Ultra dans les limites de votre plan, la [durée de vie du cache](https://code.claude.com/docs/fr/prompt-caching.md#cache-lifetime) est d'une heure. Un thread inactif depuis plus longtemps relit l'intégralité de sa conversation avant de faire quoi que ce soit lorsqu'une suite lui parvient. Pour le nouveau travail, demandez à Claude de démarrer un thread frais, ce qui peut utiliser moins que de relancer un grand ancien.

425* Pour le travail qui n'a pas besoin du plus grand modèle, [choisissez un modèle plus petit ou un niveau d'effort inférieur](#choose-models-and-let-claude-manage-context) pour les threads, la conversation ou les deux.425* Pour le travail qui n'a pas besoin du plus grand modèle, [choisissez un modèle plus petit ou un niveau d'effort inférieur](#choose-models-and-let-claude-manage-context) pour les threads, la conversation ou les deux.

426* Demandez à Claude dans la conversation du projet d'exécuter moins de threads à la fois, ou de répondre aux petites questions lui-même au lieu de démarrer un thread.426* Demandez à Claude dans la conversation du projet d'exécuter moins de threads à la fois, ou de répondre aux petites questions lui-même au lieu de démarrer un thread.

427 427 


429 429 

430Plusieurs fonctionnalités de Claude Code permettent à plus d'une session de fonctionner en même temps, donc exécuter du travail en parallèle n'est pas en soi à quoi sert un projet. Dans un projet, Claude démarre et suit les sessions au lieu de vous, et chacun commence à partir des mêmes instructions. Voici comment chaque fonctionnalité voisine se connecte à un projet :430Plusieurs fonctionnalités de Claude Code permettent à plus d'une session de fonctionner en même temps, donc exécuter du travail en parallèle n'est pas en soi à quoi sert un projet. Dans un projet, Claude démarre et suit les sessions au lieu de vous, et chacun commence à partir des mêmes instructions. Voici comment chaque fonctionnalité voisine se connecte à un projet :

431 431 

432* **Claude Tag** : [Claude Tag](https://claude.com/docs/claude-tag/overview) est Claude dans les canaux Slack de votre équipe, sur les plans Team et Enterprise. N'importe qui dans un canal peut lui donner du travail, tout le monde dans le canal le voit et le dirige, et il utilise les connexions qu'un administrateur a configurées pour ce canal. Un projet est le vôtre seul : vous êtes le seul à lui envoyer du travail ou à voir ses threads, il utilise votre propre accès GitHub et vos connecteurs, et il est sur Pro et Max. [Comment Claude Tag diffère de Cowork et Claude Code](https://claude.com/docs/claude-tag/concepts/how-it-works#how-claude-tag-differs-from-cowork-and-claude-code) a le côté à côté.432* **Claude Tag** : [Claude Tag](https://claude.com/docs/claude-tag/overview) est Claude dans les canaux Slack de votre équipe, sur les plans Team et Enterprise. N'importe qui dans un canal peut lui donner du travail, tout le monde dans le canal le voit et le dirige, et il utilise les connexions qu'un administrateur a configurées pour ce canal.

433 

434 Les projets sont disponibles sur Pro, Max et Ultra. Un projet est le vôtre seul : vous êtes le seul à lui envoyer du travail ou à voir ses threads, et il utilise votre propre accès GitHub et vos connecteurs. [Comment Claude Tag diffère de Cowork et Claude Code](https://claude.com/docs/claude-tag/concepts/how-it-works#how-claude-tag-differs-from-cowork-and-claude-code) présente la comparaison côte à côte.

433* **Sessions cloud** : chaque thread est une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) sauf si vous demandez à Claude de l'exécuter sur votre machine. De toute façon, Claude la démarre et la suit au lieu de vous. Vous pouvez également intégrer à un projet le travail d'une session cloud que vous avez démarrée vous-même : choisissez [**Continue in project**](#start-from-an-existing-cloud-session) dans le menu de la barre latérale de cette session.435* **Sessions cloud** : chaque thread est une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) sauf si vous demandez à Claude de l'exécuter sur votre machine. De toute façon, Claude la démarre et la suit au lieu de vous. Vous pouvez également intégrer à un projet le travail d'une session cloud que vous avez démarrée vous-même : choisissez [**Continue in project**](#start-from-an-existing-cloud-session) dans le menu de la barre latérale de cette session.

434* **Tâches planifiées** : quand vous demandez du travail planifié dans un projet, Claude crée une [tâche planifiée cloud](https://code.claude.com/docs/fr/routines.md) qui s'exécute en tant que threads dans ce projet et apparaît sur son onglet **Scheduled tasks**. Les tâches planifiées que vous créez en dehors d'un projet continuent à fonctionner seules.436* **Tâches planifiées** : quand vous demandez du travail planifié dans un projet, Claude crée une [tâche planifiée cloud](https://code.claude.com/docs/fr/routines.md) qui s'exécute en tant que threads dans ce projet et apparaît sur son onglet **Scheduled tasks**. Les tâches planifiées que vous créez en dehors d'un projet continuent à fonctionner seules.

435* **Remote Control** : [Remote Control](https://code.claude.com/docs/fr/remote-control.md) connecte claude.ai à une session Claude Code s'exécutant sur votre machine. Quand vous demandez à Claude dans un projet d'exécuter un thread sur votre ordinateur, le projet [utilise Remote Control pour le faire](#run-a-thread-on-your-own-computer).437* **Remote Control** : [Remote Control](https://code.claude.com/docs/fr/remote-control.md) connecte claude.ai à une session Claude Code s'exécutant sur votre machine. Quand vous demandez à Claude dans un projet d'exécuter un thread sur votre ordinateur, le projet [utilise Remote Control pour le faire](#run-a-thread-on-your-own-computer).

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Les environnements cloud s'appliquent aux [sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md), qui sont disponibles sur les plans Pro, Max et Team, et pour les utilisateurs Enterprise disposant de [sièges premium ou de sièges Chat + Claude Code](https://support.claude.com/en/articles/11845131-use-claude-code-with-your-team-or-enterprise-plan).11> Les environnements cloud s'appliquent aux [sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md), qui sont disponibles sur les plans Pro, Max, Ultra et Team, et pour les utilisateurs Enterprise disposant de [sièges premium ou de sièges Chat + Claude Code](https://support.claude.com/en/articles/11845131-use-claude-code-with-your-team-or-enterprise-plan).

12 12 

13Chaque [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) s'exécute dans un environnement cloud. Vous pouvez configurer un environnement pour autoriser ou refuser l'[accès réseau](#access-levels), [définir des variables d'environnement](#set-environment-variables) pour la session, stocker des [secrets réseau](#add-network-secrets) que les sessions utilisent sans les voir, et exécuter un [script de configuration](#setup-scripts) avant que Claude ne commence à travailler.13Chaque [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) s'exécute dans un environnement cloud. Vous pouvez configurer un environnement pour autoriser ou refuser l'[accès réseau](#access-levels), [définir des variables d'environnement](#set-environment-variables) pour la session, stocker des [secrets réseau](#add-network-secrets) que les sessions utilisent sans les voir, et exécuter un [script de configuration](#setup-scripts) avant que Claude ne commence à travailler.

14 14 


32Si vous n'avez pas encore d'environnement, l'intégration configure l'environnement **Default** pour vous. Cela dépend de l'endroit où vous vous intégrez :32Si vous n'avez pas encore d'environnement, l'intégration configure l'environnement **Default** pour vous. Cela dépend de l'endroit où vous vous intégrez :

33 33 

34* **Flux CLI tels que `/web-setup`** : créent **Default** pour vous34* **Flux CLI tels que `/web-setup`** : créent **Default** pour vous

35* **Intégration web sur Pro et Max** : crée **Default** pour vous35* **Intégration web sur Pro, Max et Ultra** : vous obtenez **Default** automatiquement

36* **Intégration web sur Team et Enterprise** : affiche un formulaire **Créer votre premier environnement cloud** sauf si un propriétaire a activé la [Configuration rapide](https://code.claude.com/docs/fr/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise) ; conservez les valeurs par défaut du formulaire et cliquez sur **Créer et terminer** pour obtenir le même environnement **Default**36* **Intégration web sur Team et Enterprise** : affiche un formulaire **Créer votre premier environnement cloud** sauf si un propriétaire a activé la [Configuration rapide](https://code.claude.com/docs/fr/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise) ; conservez les valeurs par défaut du formulaire et cliquez sur **Créer et terminer** pour obtenir le même environnement **Default**

37 37 

38**Default** n'a aucune configuration propre :38**Default** n'a aucune configuration propre :


93 93 

94Un secret réseau est une clé API ou un jeton que vous stockez sur un environnement cloud afin que Claude puisse appeler cette API à partir de n'importe quelle session dans l'environnement sans voir la clé. Le proxy d'agent d'Anthropic ajoute la clé aux requêtes pour les hôtes que vous listez, après que chaque requête quitte la VM de la session, de sorte que la clé elle-même reste en dehors de la VM.94Un secret réseau est une clé API ou un jeton que vous stockez sur un environnement cloud afin que Claude puisse appeler cette API à partir de n'importe quelle session dans l'environnement sans voir la clé. Le proxy d'agent d'Anthropic ajoute la clé aux requêtes pour les hôtes que vous listez, après que chaque requête quitte la VM de la session, de sorte que la clé elle-même reste en dehors de la VM.

95 95 

96Les secrets réseau sont disponibles sur les plans Pro, Max, Team et Enterprise. Pour vérifier si vous pouvez en ajouter un vous-même, consultez [Exigences](#requirements).96Les secrets réseau sont disponibles sur les plans Pro, Max, Ultra, Team et Enterprise. Pour vérifier si vous pouvez en ajouter un vous-même, consultez [Exigences](#requirements).

97 97 

98#### Exigences98#### Exigences

99 99 


552 552 

553Avec un accès réseau **Trusted**, les sessions peuvent atteindre les domaines suivants par défaut. Les domaines marqués avec `*` indiquent une correspondance de sous-domaine générique, donc `*.gcr.io` autorise n'importe quel sous-domaine de `gcr.io`.553Avec un accès réseau **Trusted**, les sessions peuvent atteindre les domaines suivants par défaut. Les domaines marqués avec `*` indiquent une correspondance de sous-domaine générique, donc `*.gcr.io` autorise n'importe quel sous-domaine de `gcr.io`.

554 554 

555> **Services Anthropic**555> [accordion] Services Anthropic

556>556>

557> * api.anthropic.com557> * api.anthropic.com

558> * docs.claude.com558> * docs.claude.com


564> * anthropic.com564> * anthropic.com

565> * [www.anthropic.com](http://www.anthropic.com)565> * [www.anthropic.com](http://www.anthropic.com)

566 566 

567> **Contrôle de version**567> [accordion] Contrôle de version

568>568>

569> * github.com569> * github.com

570> * [www.github.com](http://www.github.com)570> * [www.github.com](http://www.github.com)


585> * [www.bitbucket.org](http://www.bitbucket.org)585> * [www.bitbucket.org](http://www.bitbucket.org)

586> * api.bitbucket.org586> * api.bitbucket.org

587 587 

588> **Registres de conteneurs**588> [accordion] Registres de conteneurs

589>589>

590> * registry-1.docker.io590> * registry-1.docker.io

591> * auth.docker.io591> * auth.docker.io


602> * \*.data.mcr.microsoft.com602> * \*.data.mcr.microsoft.com

603> * public.ecr.aws603> * public.ecr.aws

604 604 

605> **Plateformes cloud**605> [accordion] Plateformes cloud

606>606>

607> * cloud.google.com607> * cloud.google.com

608> * accounts.google.com608> * accounts.google.com


633> * yum.oracle.com633> * yum.oracle.com

634> * \*.r2.cloudflarestorage.com634> * \*.r2.cloudflarestorage.com

635 635 

636> **Gestionnaires de paquets JavaScript et Node**636> [accordion] Gestionnaires de paquets JavaScript et Node

637>637>

638> * registry.npmjs.org638> * registry.npmjs.org

639> * [www.npmjs.com](http://www.npmjs.com)639> * [www.npmjs.com](http://www.npmjs.com)


645> * jsr.io645> * jsr.io

646> * npm.jsr.io646> * npm.jsr.io

647 647 

648> **Gestionnaires de paquets Python**648> [accordion] Gestionnaires de paquets Python

649>649>

650> * pypi.org650> * pypi.org

651> * [www.pypi.org](http://www.pypi.org)651> * [www.pypi.org](http://www.pypi.org)


656> * pypa.io656> * pypa.io

657> * [www.pypa.io](http://www.pypa.io)657> * [www.pypa.io](http://www.pypa.io)

658 658 

659> **Gestionnaires de paquets Ruby**659> [accordion] Gestionnaires de paquets Ruby

660>660>

661> * rubygems.org661> * rubygems.org

662> * [www.rubygems.org](http://www.rubygems.org)662> * [www.rubygems.org](http://www.rubygems.org)


671> * rvm.io671> * rvm.io

672> * get.rvm.io672> * get.rvm.io

673 673 

674> **Gestionnaires de paquets Rust**674> [accordion] Gestionnaires de paquets Rust

675>675>

676> * crates.io676> * crates.io

677> * [www.crates.io](http://www.crates.io)677> * [www.crates.io](http://www.crates.io)


681> * static.rust-lang.org681> * static.rust-lang.org

682> * [www.rust-lang.org](http://www.rust-lang.org)682> * [www.rust-lang.org](http://www.rust-lang.org)

683 683 

684> **Gestionnaires de paquets Go**684> [accordion] Gestionnaires de paquets Go

685>685>

686> * proxy.golang.org686> * proxy.golang.org

687> * sum.golang.org687> * sum.golang.org


691> * goproxy.io691> * goproxy.io

692> * pkg.go.dev692> * pkg.go.dev

693 693 

694> **Gestionnaires de paquets JVM**694> [accordion] Gestionnaires de paquets JVM

695>695>

696> * maven.org696> * maven.org

697> * repo.maven.org697> * repo.maven.org


710> * spring.io710> * spring.io

711> * repo.spring.io711> * repo.spring.io

712 712 

713> **Autres gestionnaires de paquets**713> [accordion] Autres gestionnaires de paquets

714>714>

715> * packagist.org (PHP Composer)715> * packagist.org (PHP Composer)

716> * [www.packagist.org](http://www.packagist.org)716> * [www.packagist.org](http://www.packagist.org)


736> * swift.org736> * swift.org

737> * [www.swift.org](http://www.swift.org)737> * [www.swift.org](http://www.swift.org)

738 738 

739> **Distributions Linux**739> [accordion] Distributions Linux

740>740>

741> * archive.ubuntu.com741> * archive.ubuntu.com

742> * security.ubuntu.com742> * security.ubuntu.com


748> * [www.launchpad.net](http://www.launchpad.net)748> * [www.launchpad.net](http://www.launchpad.net)

749> * \*.nixos.org749> * \*.nixos.org

750 750 

751> **Outils de développement et plateformes**751> [accordion] Outils de développement et plateformes

752>752>

753> * dl.k8s.io (Kubernetes)753> * dl.k8s.io (Kubernetes)

754> * pkgs.k8s.io754> * pkgs.k8s.io


780> * pkg.stainless.com780> * pkg.stainless.com

781> * binaries.prisma.sh781> * binaries.prisma.sh

782 782 

783> **Services cloud et surveillance**783> [accordion] Services cloud et surveillance

784>784>

785> * http-intake.logs.datadoghq.com785> * http-intake.logs.datadoghq.com

786> * \*.datadoghq.com786> * \*.datadoghq.com

787> * \*.datadoghq.eu787> * \*.datadoghq.eu

788> * api.honeycomb.io788> * api.honeycomb.io

789 789 

790> **Livraison de contenu et miroirs**790> [accordion] Livraison de contenu et miroirs

791>791>

792> * sourceforge.net792> * sourceforge.net

793> * \*.sourceforge.net793> * \*.sourceforge.net


796> * fonts.googleapis.com796> * fonts.googleapis.com

797> * fonts.gstatic.com797> * fonts.gstatic.com

798 798 

799> **Schéma et configuration**799> [accordion] Schéma et configuration

800>800>

801> * json-schema.org801> * json-schema.org

802> * [www.json-schema.org](http://www.json-schema.org)802> * [www.json-schema.org](http://www.json-schema.org)

803> * json.schemastore.org803> * json.schemastore.org

804> * [www.schemastore.org](http://www.schemastore.org)804> * [www.schemastore.org](http://www.schemastore.org)

805 805 

806> **Model Context Protocol**806> [accordion] Model Context Protocol

807>807>

808> * \*.modelcontextprotocol.io808> * \*.modelcontextprotocol.io

809 809 

code-review.md +5 −5

Details

32 32 

33Choisissez la page correspondant à ce que vous souhaitez faire :33Choisissez la page correspondant à ce que vous souhaitez faire :

34 34 

35> **[Configurer Code Review](https://code.claude.com/docs/fr/code-review-setup.md)**35> [card] [Configurer Code Review](https://code.claude.com/docs/fr/code-review-setup.md)

36>36>

37> Vérifiez les prérequis, installez la GitHub App Claude, et choisissez les dépôts, un niveau de revue et le moment où les revues s'exécutent37> Vérifiez les prérequis, installez la GitHub App Claude, et choisissez les dépôts, un niveau de revue et le moment où les revues s'exécutent

38 38 

39> **[Personnaliser Code Review](https://code.claude.com/docs/fr/code-review-customize.md)**39> [card] [Personnaliser Code Review](https://code.claude.com/docs/fr/code-review-customize.md)

40>40>

41> Ajustez ce qui est signalé grâce aux fichiers `REVIEW.md` et `CLAUDE.md` de votre dépôt41> Ajustez ce qui est signalé grâce aux fichiers `REVIEW.md` et `CLAUDE.md` de votre dépôt

42 42 

43> **[Lire et demander des revues sur une pull request](https://code.claude.com/docs/fr/code-review-pull-requests.md)**43> [card] [Lire et demander des revues sur une pull request](https://code.claude.com/docs/fr/code-review-pull-requests.md)

44>44>

45> Lisez les résultats et leur gravité, et demandez une nouvelle revue par un commentaire45> Lisez les résultats et leur gravité, et demandez une nouvelle revue par un commentaire

46 46 

47> **[Dépannage de Code Review](https://code.claude.com/docs/fr/code-review-troubleshooting.md)**47> [card] [Dépannage de Code Review](https://code.claude.com/docs/fr/code-review-troubleshooting.md)

48>48>

49> Résolvez le cas d'une revue qui n'a pas démarré, a échoué ou a été ignorée pour raison de budget49> Résolvez le cas d'une revue qui n'a pas démarré, a échoué ou a été ignorée pour raison de budget

50 50 

51> **[Coûts et utilisation de Code Review](https://code.claude.com/docs/fr/code-review-costs.md)**51> [card] [Coûts et utilisation de Code Review](https://code.claude.com/docs/fr/code-review-costs.md)

52>52>

53> Découvrez comment les revues sont facturées, estimez les dépenses, définissez la limite de dépenses mensuelles et suivez l'activité des revues53> Découvrez comment les revues sont facturées, estimez les dépenses, définissez la limite de dépenses mensuelles et suivez l'activité des revues

54 54 

commands.md +5 −5

Details

55| `/artifact-capabilities` | **[Skill](https://code.claude.com/docs/fr/skills.md#bundled-skills).** Charger la référence des capacités d'exécution qu'un [artefact](https://code.claude.com/docs/fr/artifacts.md) publié peut utiliser, comme [appeler vos connecteurs](https://code.claude.com/docs/fr/artifacts.md#pull-live-data-with-mcp-connectors) ou [proposer un téléchargement de fichier](https://code.claude.com/docs/fr/artifacts.md#offer-a-file-download), y compris celles dont dispose votre compte. Claude la charge normalement de lui-même avant de créer une page qui en utilise une. Disponible là où les [artefacts](https://code.claude.com/docs/fr/artifacts.md#availability) le sont |55| `/artifact-capabilities` | **[Skill](https://code.claude.com/docs/fr/skills.md#bundled-skills).** Charger la référence des capacités d'exécution qu'un [artefact](https://code.claude.com/docs/fr/artifacts.md) publié peut utiliser, comme [appeler vos connecteurs](https://code.claude.com/docs/fr/artifacts.md#pull-live-data-with-mcp-connectors) ou [proposer un téléchargement de fichier](https://code.claude.com/docs/fr/artifacts.md#offer-a-file-download), y compris celles dont dispose votre compte. Claude la charge normalement de lui-même avant de créer une page qui en utilise une. Disponible là où les [artefacts](https://code.claude.com/docs/fr/artifacts.md#availability) le sont |

56| `/artifact-diagramming` | **[Skill](https://code.claude.com/docs/fr/skills.md#bundled-skills).** Charger des conseils de création de diagrammes que Claude suit dans les [artefacts](https://code.claude.com/docs/fr/artifacts.md) : quand un diagramme est utile, quoi dessiner et comment écrire du SVG inline qui reste lisible dans les thèmes clair et sombre. Nécessite Claude Code v2.1.221 ou ultérieure |56| `/artifact-diagramming` | **[Skill](https://code.claude.com/docs/fr/skills.md#bundled-skills).** Charger des conseils de création de diagrammes que Claude suit dans les [artefacts](https://code.claude.com/docs/fr/artifacts.md) : quand un diagramme est utile, quoi dessiner et comment écrire du SVG inline qui reste lisible dans les thèmes clair et sombre. Nécessite Claude Code v2.1.221 ou ultérieure |

57| `/artifacts` | Lister les [artefacts](https://code.claude.com/docs/fr/artifacts.md#find-an-artifact-again) que vous possédez ou qui sont partagés avec vous, puis en joindre un à la session, l'ouvrir dans votre navigateur ou copier son lien. Disponible là où les [artefacts](https://code.claude.com/docs/fr/artifacts.md#availability) le sont |57| `/artifacts` | Lister les [artefacts](https://code.claude.com/docs/fr/artifacts.md#find-an-artifact-again) que vous possédez ou qui sont partagés avec vous, puis en joindre un à la session, l'ouvrir dans votre navigateur ou copier son lien. Disponible là où les [artefacts](https://code.claude.com/docs/fr/artifacts.md#availability) le sont |

58| `/auto-mode-setup` | [Rédiger des entrées `autoMode.environment`](https://code.claude.com/docs/fr/auto-mode-config#generate-environment-entries) à partir de votre projet et de vos sessions récentes, puis examiner le brouillon et l'enregistrer dans vos paramètres utilisateur. Sur un forfait Pro, Max ou Team, nécessite Claude Code v2.1.228 ou ultérieure, ou v2.1.233 ou ultérieure sur Windows natif. Sur un forfait Enterprise ou avec une clé API Claude Console, nécessite la v2.1.283 ou ultérieure. Si la commande est absente, consultez [`/auto-mode-setup` renvoie « Unknown command »](https://code.claude.com/docs/fr/auto-mode-config#auto-mode-setup-returns-unknown-command) |58| `/auto-mode-setup` | [Rédiger des entrées `autoMode.environment`](https://code.claude.com/docs/fr/auto-mode-config#generate-environment-entries) à partir de votre projet et de vos sessions récentes, puis examiner le brouillon et l'enregistrer dans vos paramètres utilisateur. Sur un forfait Pro, Max, Ultra ou Team, nécessite Claude Code v2.1.228 ou ultérieure, ou v2.1.233 ou ultérieure sur Windows natif. Sur un forfait Enterprise ou avec une clé API Claude Console, nécessite la v2.1.283 ou ultérieure. Si la commande est absente, consultez [`/auto-mode-setup` renvoie « Unknown command »](https://code.claude.com/docs/fr/auto-mode-config#auto-mode-setup-returns-unknown-command) |

59| `/autocompact [auto\|<tokens>]` | Définir la fenêtre de compaction automatique : le niveau de remplissage de la fenêtre de contexte à partir duquel Claude Code compacte automatiquement. Passez une taille comme `500k`, ou `auto` pour revenir à la fenêtre ajustée pour votre modèle. Claude Code enregistre la valeur dans les paramètres utilisateur et l'applique à la session en cours. Consultez [Définir la fenêtre de compaction automatique](https://code.claude.com/docs/fr/model-config.md#set-the-auto-compact-window) pour les valeurs acceptées et ce qui la remplace. Sans argument, ouvre une boîte de dialogue qui affiche la fenêtre actuelle. Nécessite Claude Code v2.1.221 ou ultérieure |59| `/autocompact [auto\|<tokens>]` | Définir la fenêtre de compaction automatique : le niveau de remplissage de la fenêtre de contexte à partir duquel Claude Code compacte automatiquement. Passez une taille comme `500k`, ou `auto` pour revenir à la fenêtre ajustée pour votre modèle. Claude Code enregistre la valeur dans les paramètres utilisateur et l'applique à la session en cours. Consultez [Définir la fenêtre de compaction automatique](https://code.claude.com/docs/fr/model-config.md#set-the-auto-compact-window) pour les valeurs acceptées et ce qui la remplace. Sans argument, ouvre une boîte de dialogue qui affiche la fenêtre actuelle. Nécessite Claude Code v2.1.221 ou ultérieure |

60| `/autofix-pr [prompt]` | Lancer une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md#auto-fix-pull-requests) qui surveille la PR de la branche actuelle et pousse des correctifs lorsque la CI échoue ou que des relecteurs laissent des commentaires. Détecte la PR ouverte à partir de votre branche extraite avec `gh pr view` ; pour surveiller une autre PR, extrayez d'abord sa branche. Par défaut, la session cloud a pour consigne de corriger chaque échec de CI et chaque commentaire de revue ; passez un prompt pour lui donner d'autres instructions, par exemple `/autofix-pr only fix lint and type errors`. Nécessite la CLI `gh` et l'accès aux [sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) |60| `/autofix-pr [prompt]` | Lancer une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md#auto-fix-pull-requests) qui surveille la PR de la branche actuelle et pousse des correctifs lorsque la CI échoue ou que des relecteurs laissent des commentaires. Détecte la PR ouverte à partir de votre branche extraite avec `gh pr view` ; pour surveiller une autre PR, extrayez d'abord sa branche. Par défaut, la session cloud a pour consigne de corriger chaque échec de CI et chaque commentaire de revue ; passez un prompt pour lui donner d'autres instructions, par exemple `/autofix-pr only fix lint and type errors`. Nécessite la CLI `gh` et l'accès aux [sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) |

61| `/background [prompt]` | Détacher la session en cours pour l'exécuter en tant qu'[agent en arrière-plan](https://code.claude.com/docs/fr/agent-view.md) et libérer ce terminal. Passez un prompt pour envoyer une dernière instruction avant le détachement. Surveillez la session avec `claude agents`. Pour copier la conversation dans une nouvelle session en arrière-plan tout en laissant celle-ci s'exécuter, utilisez `/fork`. Alias : `/bg` |61| `/background [prompt]` | Détacher la session en cours pour l'exécuter en tant qu'[agent en arrière-plan](https://code.claude.com/docs/fr/agent-view.md) et libérer ce terminal. Passez un prompt pour envoyer une dernière instruction avant le détachement. Surveillez la session avec `claude agents`. Pour copier la conversation dans une nouvelle session en arrière-plan tout en laissant celle-ci s'exécuter, utilisez `/fork`. Alias : `/bg` |


120| `/plugin-authoring` | Charger la référence sur laquelle Claude s'appuie pour [écrire un mod](https://code.claude.com/docs/fr/plugins/mods/create.md#ask-claude-for-a-mod). Claude peut la charger de lui-même lorsque vous demandez un mod. Il s'agit d'un skill issu d'un [plugin intégré](https://code.claude.com/docs/fr/plugins/mods/overview.md#mods-built-into-claude-code), que vous pouvez désactiver dans `/plugin`. Nécessite Claude Code v2.1.287 ou ultérieure |120| `/plugin-authoring` | Charger la référence sur laquelle Claude s'appuie pour [écrire un mod](https://code.claude.com/docs/fr/plugins/mods/create.md#ask-claude-for-a-mod). Claude peut la charger de lui-même lorsque vous demandez un mod. Il s'agit d'un skill issu d'un [plugin intégré](https://code.claude.com/docs/fr/plugins/mods/overview.md#mods-built-into-claude-code), que vous pouvez désactiver dans `/plugin`. Nécessite Claude Code v2.1.287 ou ultérieure |

121| `/powerup` | Découvrir les fonctionnalités de Claude Code grâce à de courtes leçons interactives avec des démos animées |121| `/powerup` | Découvrir les fonctionnalités de Claude Code grâce à de courtes leçons interactives avec des démos animées |

122| `/pr-comments [PR]` | Supprimée en v2.1.91. Demandez plutôt directement à Claude d'afficher les commentaires de la pull request. Dans les versions antérieures, récupère et affiche les commentaires d'une pull request GitHub ; détecte automatiquement la PR de la branche actuelle, ou passez une URL ou un numéro de PR. Nécessite la CLI `gh` |122| `/pr-comments [PR]` | Supprimée en v2.1.91. Demandez plutôt directement à Claude d'afficher les commentaires de la pull request. Dans les versions antérieures, récupère et affiche les commentaires d'une pull request GitHub ; détecte automatiquement la PR de la branche actuelle, ou passez une URL ou un numéro de PR. Nécessite la CLI `gh` |

123| `/privacy-settings` | Afficher et mettre à jour vos paramètres de confidentialité. Disponible uniquement pour les abonnés aux forfaits Pro et Max |123| `/privacy-settings` | Afficher et mettre à jour vos paramètres de confidentialité. Disponible uniquement pour les abonnés aux forfaits Pro, Max et Ultra |

124| `/radio` | Ouvrir la radio lo-fi Claude FM dans votre navigateur. Affiche l'URL du flux lorsqu'aucun navigateur n'est disponible |124| `/radio` | Ouvrir la radio lo-fi Claude FM dans votre navigateur. Affiche l'URL du flux lorsqu'aucun navigateur n'est disponible |

125| `/rate-limit-options` | Afficher les moyens de continuer à travailler lorsqu'une limite d'utilisation claude.ai bloque une requête : attendre et [continuer automatiquement lorsque la limite se réinitialise](https://code.claude.com/docs/fr/interactive-mode.md#wait-for-a-usage-limit-to-reset), ajouter des [crédits d'utilisation](https://code.claude.com/docs/fr/costs.md#add-usage-credits-to-your-subscription) ou passer à un forfait supérieur. Claude Code peut aussi ouvrir ce menu de lui-même lorsque vous atteignez une limite dans votre propre terminal. Consultez [Désactiver la reprise automatique](https://code.claude.com/docs/fr/interactive-mode.md#turn-automatic-continue-off). Nécessite un abonnement claude.ai. Les lignes d'attente et de reprise nécessitent Claude Code v2.1.234 ou ultérieure |125| `/rate-limit-options` | Afficher les moyens de continuer à travailler lorsqu'une limite d'utilisation claude.ai bloque une requête : attendre et [continuer automatiquement lorsque la limite se réinitialise](https://code.claude.com/docs/fr/interactive-mode.md#wait-for-a-usage-limit-to-reset), ajouter des [crédits d'utilisation](https://code.claude.com/docs/fr/costs.md#add-usage-credits-to-your-subscription) ou passer à un forfait supérieur. Claude Code peut aussi ouvrir ce menu de lui-même lorsque vous atteignez une limite dans votre propre terminal. Consultez [Désactiver la reprise automatique](https://code.claude.com/docs/fr/interactive-mode.md#turn-automatic-continue-off). Nécessite un abonnement claude.ai. Les lignes d'attente et de reprise nécessitent Claude Code v2.1.234 ou ultérieure |

126| `/recap` | Générer à la demande un résumé d'une ligne de la session en cours. Consultez [Récapitulatif de session](https://code.claude.com/docs/fr/interactive-mode.md#session-recap) pour le récapitulatif automatique qui s'affiche après une absence |126| `/recap` | Générer à la demande un résumé d'une ligne de la session en cours. Consultez [Récapitulatif de session](https://code.claude.com/docs/fr/interactive-mode.md#session-recap) pour le récapitulatif automatique qui s'affiche après une absence |


130| `/remote-control` | Rendre cette session disponible pour [Remote Control](https://code.claude.com/docs/fr/remote-control.md) depuis claude.ai. L'exécuter sans être connecté affiche que Remote Control nécessite un abonnement claude.ai et vous indique comment vous connecter. Alias : `/rc` |130| `/remote-control` | Rendre cette session disponible pour [Remote Control](https://code.claude.com/docs/fr/remote-control.md) depuis claude.ai. L'exécuter sans être connecté affiche que Remote Control nécessite un abonnement claude.ai et vous indique comment vous connecter. Alias : `/rc` |

131| `/remote-env` | Choisir l'[environnement cloud](https://code.claude.com/docs/fr/cloud-environments.md#select-an-environment-from-the-cli) par défaut pour les sessions cloud que vous démarrez depuis la CLI |131| `/remote-env` | Choisir l'[environnement cloud](https://code.claude.com/docs/fr/cloud-environments.md#select-an-environment-from-the-cli) par défaut pour les sessions cloud que vous démarrez depuis la CLI |

132| `/rename [name]` | Renommer la session en cours et afficher le nom dans la barre de prompt. Sans nom, en génère automatiquement un à partir de l'historique de la conversation. Également disponible en mode non interactif (`-p`). Depuis toutes les surfaces de renommage, y compris claude.ai et l'application de bureau, Claude Code remplace les caractères de contrôle et invisibles du nouveau nom par des espaces et limite le nom à 200 caractères. Si le nom est vide une fois les caractères invisibles supprimés, Claude Code le rejette et affiche `That name is empty once invisible characters are removed. Usage: /rename <name>`. Le remplacement des caractères et la limite de longueur nécessitent Claude Code v2.1.221 ou ultérieure |132| `/rename [name]` | Renommer la session en cours et afficher le nom dans la barre de prompt. Sans nom, en génère automatiquement un à partir de l'historique de la conversation. Également disponible en mode non interactif (`-p`). Depuis toutes les surfaces de renommage, y compris claude.ai et l'application de bureau, Claude Code remplace les caractères de contrôle et invisibles du nouveau nom par des espaces et limite le nom à 200 caractères. Si le nom est vide une fois les caractères invisibles supprimés, Claude Code le rejette et affiche `That name is empty once invisible characters are removed. Usage: /rename <name>`. Le remplacement des caractères et la limite de longueur nécessitent Claude Code v2.1.221 ou ultérieure |

133| `/restart` | Redémarrer Claude Code et reprendre cette session, ce qui applique une mise à jour installée. Exécutez-la lorsque le pied de page la propose après l'installation d'une mise à jour. Nécessite un forfait Pro ou Max et une installation native sur macOS ou Linux, hors WSL. Nécessite Claude Code v2.1.288 ou ultérieure. Alias : `/update` |133| `/restart` | Redémarrer Claude Code et reprendre cette session, ce qui applique une mise à jour installée. Exécutez-la lorsque le pied de page la propose après l'installation d'une mise à jour. Nécessite un forfait Pro, Max ou Ultra et une installation native sur macOS ou Linux, hors WSL. Nécessite Claude Code v2.1.288 ou ultérieure. Alias : `/update` |

134| `/resume [session]` | Reprendre une conversation par identifiant ou par nom, ou ouvrir le sélecteur de sessions. Les [sessions en arrière-plan](https://code.claude.com/docs/fr/agent-view.md) apparaissent dans le sélecteur marquées `bg`. Reprendre une session encore en cours d'exécution, depuis le sélecteur ou par identifiant ou nom, [ouvre cette session](https://code.claude.com/docs/fr/sessions.md#resume-a-running-background-session) : votre conversation actuelle passe en arrière-plan et ce terminal s'attache à celle en cours d'exécution. Appuyez sur `←` sur un prompt vide pour revenir à la vue des agents, qui liste aussi la conversation que vous avez quittée. Avant la v2.1.285, Claude Code refusait et vous demandait d'ouvrir la session avec `claude attach` ou de l'arrêter d'abord. Alias : `/continue` |134| `/resume [session]` | Reprendre une conversation par identifiant ou par nom, ou ouvrir le sélecteur de sessions. Les [sessions en arrière-plan](https://code.claude.com/docs/fr/agent-view.md) apparaissent dans le sélecteur marquées `bg`. Reprendre une session encore en cours d'exécution, depuis le sélecteur ou par identifiant ou nom, [ouvre cette session](https://code.claude.com/docs/fr/sessions.md#resume-a-running-background-session) : votre conversation actuelle passe en arrière-plan et ce terminal s'attache à celle en cours d'exécution. Appuyez sur `←` sur un prompt vide pour revenir à la vue des agents, qui liste aussi la conversation que vous avez quittée. Avant la v2.1.285, Claude Code refusait et vous demandait d'ouvrir la session avec `claude attach` ou de l'arrêter d'abord. Alias : `/continue` |

135| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [--max-findings n\|all\|default] [pr#\|branch\|path]` | Alias de [`/code-review`](https://code.claude.com/docs/fr/code-review-local) : examine le diff actuel, ou un numéro de PR, une branche ou un chemin que vous passez, comme `/review 1234`, et accepte les mêmes niveaux d'effort et flags. Si aucun niveau n'est indiqué, la revue réutilise le dernier niveau de `low` à `max` que vous avez saisi ; consultez [Effectuer une revue locale avec `/code-review`](https://code.claude.com/docs/fr/code-review-local) pour les règles exactes. Pour une revue cloud approfondie, utilisez [`/code-review ultra`](https://code.claude.com/docs/fr/ultrareview). Avant la v2.1.223, `/review` était une commande distincte qui effectuait une revue en une seule passe et en lecture seule d'une pull request GitHub par numéro, en listant les PR ouvertes parmi lesquelles choisir lorsqu'elle était exécutée sans argument ; de la v2.1.186 à la v2.1.201, elle utilisait le même moteur multi-agents que `/code-review medium` |135| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [--max-findings n\|all\|default] [pr#\|branch\|path]` | Alias de [`/code-review`](https://code.claude.com/docs/fr/code-review-local) : examine le diff actuel, ou un numéro de PR, une branche ou un chemin que vous passez, comme `/review 1234`, et accepte les mêmes niveaux d'effort et flags. Si aucun niveau n'est indiqué, la revue réutilise le dernier niveau de `low` à `max` que vous avez saisi ; consultez [Effectuer une revue locale avec `/code-review`](https://code.claude.com/docs/fr/code-review-local) pour les règles exactes. Pour une revue cloud approfondie, utilisez [`/code-review ultra`](https://code.claude.com/docs/fr/ultrareview). Avant la v2.1.223, `/review` était une commande distincte qui effectuait une revue en une seule passe et en lecture seule d'une pull request GitHub par numéro, en listant les PR ouvertes parmi lesquelles choisir lorsqu'elle était exécutée sans argument ; de la v2.1.186 à la v2.1.201, elle utilisait le même moteur multi-agents que `/code-review medium` |

136| `/rewind` | Rembobiner la conversation et/ou le code jusqu'à un point antérieur, ou résumer à partir d'un message sélectionné. Consultez [checkpointing](https://code.claude.com/docs/fr/checkpointing.md). Alias : `/checkpoint`, `/undo` |136| `/rewind` | Rembobiner la conversation et/ou le code jusqu'à un point antérieur, ou résumer à partir d'un message sélectionné. Consultez [checkpointing](https://code.claude.com/docs/fr/checkpointing.md). Alias : `/checkpoint`, `/undo` |


159| `/theme` | Changer le thème de couleurs. Inclut une option `auto` qui s'adapte à l'arrière-plan clair ou sombre de votre terminal, des variantes claires et sombres, des thèmes accessibles aux daltoniens (daltonisés), des thèmes ANSI qui utilisent la palette de couleurs de votre terminal, ainsi que les éventuels [thèmes personnalisés](https://code.claude.com/docs/fr/terminal-config.md#create-a-custom-theme) de `~/.claude/themes/` ou des plugins. Sélectionnez **New custom theme…** pour en créer un |159| `/theme` | Changer le thème de couleurs. Inclut une option `auto` qui s'adapte à l'arrière-plan clair ou sombre de votre terminal, des variantes claires et sombres, des thèmes accessibles aux daltoniens (daltonisés), des thèmes ANSI qui utilisent la palette de couleurs de votre terminal, ainsi que les éventuels [thèmes personnalisés](https://code.claude.com/docs/fr/terminal-config.md#create-a-custom-theme) de `~/.claude/themes/` ou des plugins. Sélectionnez **New custom theme…** pour en créer un |

160| `/tui [default\|fullscreen]` | Définir le moteur de rendu de l'interface du terminal et relancer avec celui-ci en conservant votre conversation. `fullscreen` active le [moteur de rendu alt-screen sans scintillement](https://code.claude.com/docs/fr/fullscreen.md). Sans argument, affiche le moteur de rendu actif |160| `/tui [default\|fullscreen]` | Définir le moteur de rendu de l'interface du terminal et relancer avec celui-ci en conservant votre conversation. `fullscreen` active le [moteur de rendu alt-screen sans scintillement](https://code.claude.com/docs/fr/fullscreen.md). Sans argument, affiche le moteur de rendu actif |

161| `/ultraplan <prompt>` | Supprimée. Utilisez plutôt le [mode plan](https://code.claude.com/docs/fr/permission-modes.md#analyze-before-you-edit-with-plan-mode). Envoyait auparavant une tâche de planification à une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) pour examen dans votre navigateur |161| `/ultraplan <prompt>` | Supprimée. Utilisez plutôt le [mode plan](https://code.claude.com/docs/fr/permission-modes.md#analyze-before-you-edit-with-plan-mode). Envoyait auparavant une tâche de planification à une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) pour examen dans votre navigateur |

162| `/ultrareview [PR or branch]` | Lancer une revue de code approfondie et multi-agents dans un sandbox cloud avec [ultrareview](https://code.claude.com/docs/fr/ultrareview.md). Passez une référence de PR pour examiner cette pull request, ou une branche de base ou un commit pour changer la base de comparaison. L'invocation recommandée est `/code-review ultra`, et `/ultrareview` en est un alias. Inclut 3 exécutions gratuites sur Pro et Max, puis nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |162| `/ultrareview [PR or branch]` | Lancer une revue de code approfondie et multi-agents dans un sandbox cloud avec [ultrareview](https://code.claude.com/docs/fr/ultrareview.md). Passez une référence de PR pour examiner cette pull request, ou une branche de base ou un commit pour changer la base de comparaison. L'invocation recommandée est `/code-review ultra`, et `/ultrareview` en est un alias. Inclut 3 exécutions gratuites sur Pro, Max et Ultra, puis nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |

163| `/update-config [request]` | **[Skill](https://code.claude.com/docs/fr/skills.md#bundled-skills).** Décrire une modification de paramètres, comme autoriser une commande, définir une variable d'environnement ou ajouter un [hook](https://code.claude.com/docs/fr/hooks.md), et Claude modifie le fichier [`settings.json`](https://code.claude.com/docs/fr/settings) correspondant. Pour des options comme le thème et le modèle, utilisez plutôt `/config` |163| `/update-config [request]` | **[Skill](https://code.claude.com/docs/fr/skills.md#bundled-skills).** Décrire une modification de paramètres, comme autoriser une commande, définir une variable d'environnement ou ajouter un [hook](https://code.claude.com/docs/fr/hooks.md), et Claude modifie le fichier [`settings.json`](https://code.claude.com/docs/fr/settings) correspondant. Pour des options comme le thème et le modèle, utilisez plutôt `/config` |

164| `/upgrade` | Ouvrir la page de mise à niveau dans votre navigateur pour passer à un forfait supérieur. Lorsque le navigateur ne s'ouvre pas, la commande affiche une invite de connexion sans afficher l'URL |164| `/upgrade` | Ouvrir la page de mise à niveau dans votre navigateur pour passer à un forfait supérieur. Lorsque le navigateur ne s'ouvre pas, la commande affiche une invite de connexion sans afficher l'URL |

165| `/usage` | Afficher le coût de la session, les limites d'utilisation du forfait et les statistiques d'activité. Sur un forfait Pro, Max, Team ou Enterprise, inclut une [répartition de ce qui est décompté de vos limites de forfait](https://code.claude.com/docs/fr/costs.md#plan-usage-breakdown). `/cost` et `/stats` en sont des alias |165| `/usage` | Afficher le coût de la session, les limites d'utilisation du forfait et les statistiques d'activité. Sur un forfait Pro, Max, Ultra, Team ou Enterprise, inclut une [répartition de ce qui est décompté de vos limites de forfait](https://code.claude.com/docs/fr/costs.md#plan-usage-breakdown). `/cost` et `/stats` en sont des alias |

166| `/usage-credits` | Configurer les crédits d'utilisation, ou en demander à votre administrateur, lorsque vous atteignez une limite. Ouvre vos [paramètres de facturation des crédits d'utilisation](https://code.claude.com/docs/fr/costs.md#add-usage-credits-to-your-subscription) dans le navigateur, sauf pour les membres Team et Enterprise sans accès à la facturation, qui envoient plutôt une demande de crédits d'utilisation à leur administrateur depuis la CLI, après avoir confirmé dans une boîte de dialogue que la demande avertit leurs administrateurs. Lorsqu'aucun navigateur ne peut ouvrir la page de facturation, par exemple via SSH, la commande affiche à la place l'URL à consulter ; cela nécessite Claude Code v2.1.205 ou ultérieure, et les versions antérieures n'affichaient rien dans ce cas. Anciennement `/extra-usage` |166| `/usage-credits` | Configurer les crédits d'utilisation, ou en demander à votre administrateur, lorsque vous atteignez une limite. Ouvre vos [paramètres de facturation des crédits d'utilisation](https://code.claude.com/docs/fr/costs.md#add-usage-credits-to-your-subscription) dans le navigateur, sauf pour les membres Team et Enterprise sans accès à la facturation, qui envoient plutôt une demande de crédits d'utilisation à leur administrateur depuis la CLI, après avoir confirmé dans une boîte de dialogue que la demande avertit leurs administrateurs. Lorsqu'aucun navigateur ne peut ouvrir la page de facturation, par exemple via SSH, la commande affiche à la place l'URL à consulter ; cela nécessite Claude Code v2.1.205 ou ultérieure, et les versions antérieures n'affichaient rien dans ce cas. Anciennement `/extra-usage` |

167| `/verify` | **[Skill](https://code.claude.com/docs/fr/skills.md#bundled-skills).** Confirmer qu'une modification de code fait ce qu'elle doit faire en compilant l'application de votre projet, en l'exécutant et en observant le résultat, plutôt qu'en se fiant aux tests ou aux vérifications de types. Consultez [Exécuter et vérifier votre application](https://code.claude.com/docs/fr/skills.md#run-and-verify-your-app) |167| `/verify` | **[Skill](https://code.claude.com/docs/fr/skills.md#bundled-skills).** Confirmer qu'une modification de code fait ce qu'elle doit faire en compilant l'application de votre projet, en l'exécutant et en observant le résultat, plutôt qu'en se fiant aux tests ou aux vérifications de types. Consultez [Exécuter et vérifier votre application](https://code.claude.com/docs/fr/skills.md#run-and-verify-your-app) |

168| `/vim` | Supprimée en v2.1.92. Pour basculer entre les modes d'édition Vim et Normal, utilisez `/config` → Editor mode |168| `/vim` | Supprimée en v2.1.92. Pour basculer entre les modes d'édition Vim et Normal, utilisez `/config` → Editor mode |

Details

500 500 

501## Étapes suivantes501## Étapes suivantes

502 502 

503> **[Bonnes pratiques](https://code.claude.com/docs/fr/best-practices.md)**503> [card] [Bonnes pratiques](https://code.claude.com/docs/fr/best-practices.md)

504>504>

505> Modèles pour tirer le meilleur parti de Claude Code505> Modèles pour tirer le meilleur parti de Claude Code

506 506 

507> **[Gérer les sessions](https://code.claude.com/docs/fr/sessions.md)**507> [card] [Gérer les sessions](https://code.claude.com/docs/fr/sessions.md)

508>508>

509> Reprendre, nommer et créer des branches de conversations509> Reprendre, nommer et créer des branches de conversations

510 510 

511> **[Worktrees](https://code.claude.com/docs/fr/worktrees.md)**511> [card] [Worktrees](https://code.claude.com/docs/fr/worktrees.md)

512>512>

513> Exécuter des sessions parallèles isolées513> Exécuter des sessions parallèles isolées

514 514 

515> **[Étendre Claude Code](https://code.claude.com/docs/fr/features-overview.md)**515> [card] [Étendre Claude Code](https://code.claude.com/docs/fr/features-overview.md)

516>516>

517> Ajouter des skills, des hooks, MCP, des subagents et des plugins517> Ajouter des skills, des hooks, MCP, des subagents et des plugins

communications-kit.md +106 −106

Details

33 33 

34Utilisez ceci comme votre message de déploiement standard à l'échelle de l'organisation. Il explique ce qu'est Claude Code, fournit un chemin d'installation de deux minutes, donne aux lecteurs une tâche concrète à essayer, et répond à « où va mon code ? » avant que quiconque ait besoin de poser la question.34Utilisez ceci comme votre message de déploiement standard à l'échelle de l'organisation. Il explique ce qu'est Claude Code, fournit un chemin d'installation de deux minutes, donne aux lecteurs une tâche concrète à essayer, et répond à « où va mon code ? » avant que quiconque ait besoin de poser la question.

35 35 

36**Email**36> [tab] Email

37 37>

38```text theme={null}38> ```text theme={null}

39Objet : Claude Code est en direct pour [Ingénierie / votre équipe]39> Objet : Claude Code est en direct pour [Ingénierie / votre équipe]

40 40>

41Équipe,41> Équipe,

42 42>

43À partir d'aujourd'hui, vous avez accès à Claude Code, un agent de codage IA qui s'exécute dans43> À partir d'aujourd'hui, vous avez accès à Claude Code, un agent de codage IA qui s'exécute dans

44votre terminal, lit votre base de code réelle et travaille sur des tâches réelles du début à la fin :44> votre terminal, lit votre base de code réelle et travaille sur des tâches réelles du début à la fin :

45débogage, refactorisations, tests, PR. Ce n'est pas de l'autocomplétion et ce n'est pas une fenêtre de chat.45> débogage, refactorisations, tests, PR. Ce n'est pas de l'autocomplétion et ce n'est pas une fenêtre de chat.

46Il édite des fichiers et exécute vos commandes.46> Il édite des fichiers et exécute vos commandes.

47 47>

48Commencez en deux minutes :48> Commencez en deux minutes :

49 49>

50 curl -fsSL https://claude.ai/install.sh | bash50> curl -fsSL https://claude.ai/install.sh | bash

51 cd <your-repo>51> cd <your-repo>

52 claude52> claude

53 53>

54Puis exécutez /init une fois. Claude lit votre projet et écrit un CLAUDE.md avec54> Puis exécutez /init une fois. Claude lit votre projet et écrit un CLAUDE.md avec

55vos commandes de build et conventions, afin que vous arrêtiez de réexpliquer les bases.55> vos commandes de build et conventions, afin que vous arrêtiez de réexpliquer les bases.

56 56>

57Ensuite, essayez l'une de celles-ci sur le référentiel dans lequel vous êtes déjà :57> Ensuite, essayez l'une de celles-ci sur le référentiel dans lequel vous êtes déjà :

58 58>

59 - « Le test dans [fichier] est instable. Découvrez pourquoi et corrigez-le »59> - « Le test dans [fichier] est instable. Découvrez pourquoi et corrigez-le »

60 - « Expliquez-moi comment [module] gère [X] »60> - « Expliquez-moi comment [module] gère [X] »

61 - « Regardez mon diff de travail et dites-moi ce qui est risqué avant que je pousse »61> - « Regardez mon diff de travail et dites-moi ce qui est risqué avant que je pousse »

62 62>

63Où va votre code : Claude Code s'exécute dans votre terminal et communique directement63> Où va votre code : Claude Code s'exécute dans votre terminal et communique directement

64avec l'API d'Anthropic. Avec notre plan Team ou Enterprise, Anthropic64> avec l'API d'Anthropic. Avec notre plan Team ou Enterprise, Anthropic

65n'utilise pas votre code ou vos prompts pour entraîner ses modèles.65> n'utilise pas votre code ou vos prompts pour entraîner ses modèles.

66Détails : https://code.claude.com/docs/en/data-usage66> Détails : https://code.claude.com/docs/en/data-usage

67 https://code.claude.com/docs/en/security67> https://code.claude.com/docs/en/security

68 68>

69Où aller avec des questions : #claude-code. [Nom du propriétaire] le surveille69> Où aller avec des questions : #claude-code. [Nom du propriétaire] le surveille

70cette semaine.70> cette semaine.

71 71>

72- [Nom]72> - [Nom]

73 73>

74P.S. Vous préférez votre éditeur ? Il y a une extension VS Code et un plugin74> P.S. Vous préférez votre éditeur ? Il y a une extension VS Code et un plugin

75JetBrains. Le même agent, pas de terminal requis.75> JetBrains. Le même agent, pas de terminal requis.

76```76> ```

77 

78**Slack ou Teams**

79 

80```markdown theme={null}

81🚀 *Claude Code est en direct pour [équipe]*

82 

83Agent de codage IA, s'exécute dans votre terminal, lit votre référentiel, fait du vrai travail :

84bugs, refactorisations, tests, PR.

85 

86`curl -fsSL https://claude.ai/install.sh | bash` → `cd your-repo` → `claude`

87 

88*Première chose à essayer* → exécutez `/init`, puis : « le test dans [fichier] est instable,

89découvrez pourquoi et corrigez-le. »

90 

91🔒 S'exécute dans votre terminal, communique directement avec l'API d'Anthropic. Avec notre

92plan Team ou Enterprise, votre code et vos prompts ne sont pas utilisés pour entraîner les modèles.

93Utilisation des données → https://code.claude.com/docs/en/data-usage

94 

95📚 Démarrage rapide · VS Code · Cours gratuit d'1 heure

96 https://code.claude.com/docs/en/quickstart

97 https://code.claude.com/docs/en/vs-code

98 https://academy.claude.com/courses/claude-code-in-action

99 77 

100Questions → ce fil. [Propriétaire] est en première ligne.78> [tab] Slack ou Teams

101```79>

80> ```markdown theme={null}

81> 🚀 *Claude Code est en direct pour [équipe]*

82>

83> Agent de codage IA, s'exécute dans votre terminal, lit votre référentiel, fait du vrai travail :

84> bugs, refactorisations, tests, PR.

85>

86> `curl -fsSL https://claude.ai/install.sh | bash` → `cd your-repo` → `claude`

87>

88> *Première chose à essayer* → exécutez `/init`, puis : « le test dans [fichier] est instable,

89> découvrez pourquoi et corrigez-le. »

90>

91> 🔒 S'exécute dans votre terminal, communique directement avec l'API d'Anthropic. Avec notre

92> plan Team ou Enterprise, votre code et vos prompts ne sont pas utilisés pour entraîner les modèles.

93> Utilisation des données → https://code.claude.com/docs/en/data-usage

94>

95> 📚 Démarrage rapide · VS Code · Cours gratuit d'1 heure

96> https://code.claude.com/docs/en/quickstart

97> https://code.claude.com/docs/en/vs-code

98> https://academy.claude.com/courses/claude-code-in-action

99>

100> Questions → ce fil. [Propriétaire] est en première ligne.

101> ```

102 102 

103### Variante de sponsor exécutif103### Variante de sponsor exécutif

104 104 


106 106 

107Cette version est délibérément réduite à une seule demande : installez-la et exécutez-la sur une tâche réelle. Le travail du cadre est de faire atterrir la demande ; l'annonce standard et `#claude-code` gèrent le comment.107Cette version est délibérément réduite à une seule demande : installez-la et exécutez-la sur une tâche réelle. Le travail du cadre est de faire atterrir la demande ; l'annonce standard et `#claude-code` gèrent le comment.

108 108 

109**Email**109> [tab] Email

110 110>

111```text theme={null}111> ```text theme={null}

112Objet : Une chose que j'aimerais que chaque ingénieur essaie cette semaine112> Objet : Une chose que j'aimerais que chaque ingénieur essaie cette semaine

113 113>

114Équipe,114> Équipe,

115 115>

116Nous avons activé Claude Code pour toute l'ingénierie. C'est un agent IA116> Nous avons activé Claude Code pour toute l'ingénierie. C'est un agent IA

117qui fonctionne directement dans votre terminal, sur votre base de code réelle, et les117> qui fonctionne directement dans votre terminal, sur votre base de code réelle, et les

118résultats précoces des équipes qui l'utilisent déjà sont assez solides pour que je veuille118> résultats précoces des équipes qui l'utilisent déjà sont assez solides pour que je veuille

119que tout le monde l'utilise cette semaine.119> que tout le monde l'utilise cette semaine.

120 120>

121Je demande dix minutes :121> Je demande dix minutes :

122 122>

123 curl -fsSL https://claude.ai/install.sh | bash123> curl -fsSL https://claude.ai/install.sh | bash

124 cd <your-repo>124> cd <your-repo>

125 claude125> claude

126 126>

127Ensuite, donnez-lui une tâche réelle : le bug que vous avez remis à plus tard, ou ' expliquez-moi127> Ensuite, donnez-lui une tâche réelle : le bug que vous avez remis à plus tard, ou ' expliquez-moi

128comment [module] fonctionne. '128> comment [module] fonctionne. '

129 129>

130C'est toute la demande. [Nom du propriétaire] et l'équipe sont dans #claude-code pour130> C'est toute la demande. [Nom du propriétaire] et l'équipe sont dans #claude-code pour

131tout ce que vous rencontrez en chemin.131> tout ce que vous rencontrez en chemin.

132 132>

133- [Nom du cadre]133> - [Nom du cadre]

134 [Titre]134> [Titre]

135```135> ```

136 

137**Slack ou Teams**

138 

139```markdown theme={null}

140📣 *De [Nom du cadre] : une chose à essayer cette semaine*

141 

142Nous avons activé *Claude Code* pour toute l'ingénierie. Les résultats précoces sont

143assez solides pour que je demande à tout le monde de lui donner dix minutes sur du vrai

144travail cette semaine.

145 

146`curl -fsSL https://claude.ai/install.sh | bash` → `cd your-repo` →

147`claude` → donnez-lui une tâche réelle.

148 136 

149C'est tout. Questions → #claude-code.137> [tab] Slack ou Teams

150```138>

139> ```markdown theme={null}

140> 📣 *De [Nom du cadre] : une chose à essayer cette semaine*

141>

142> Nous avons activé *Claude Code* pour toute l'ingénierie. Les résultats précoces sont

143> assez solides pour que je demande à tout le monde de lui donner dix minutes sur du vrai

144> travail cette semaine.

145>

146> `curl -fsSL https://claude.ai/install.sh | bash` → `cd your-repo` →

147> `claude` → donnez-lui une tâche réelle.

148>

149> C'est tout. Questions → #claude-code.

150> ```

151 151 

152### Variante du groupe pilote152### Variante du groupe pilote

153 153 

computer-use.md +2 −2

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> L'utilisation de l'ordinateur est un aperçu de recherche sur macOS qui nécessite un plan Pro ou Max. Elle n'est pas disponible sur les plans Team ou Enterprise. Elle nécessite une session interactive, elle n'est donc pas disponible en mode non-interactif avec le drapeau `-p`.11> L'utilisation de l'ordinateur est disponible en research preview sur macOS et nécessite un plan Pro, Max ou Ultra. Elle n'est pas disponible sur les plans Team ou Enterprise. Elle nécessite une session interactive, elle n'est donc pas disponible en mode non interactif avec le flag `-p`.

12 12 

13L'utilisation de l'ordinateur permet à Claude d'ouvrir des applications, de contrôler votre écran et de travailler sur votre machine comme vous le feriez. Depuis la CLI, Claude peut compiler une application Swift, la lancer, cliquer sur chaque bouton et faire une capture d'écran du résultat, tout dans la même conversation où il a écrit le code.13L'utilisation de l'ordinateur permet à Claude d'ouvrir des applications, de contrôler votre écran et de travailler sur votre machine comme vous le feriez. Depuis la CLI, Claude peut compiler une application Swift, la lancer, cliquer sur chaque bouton et faire une capture d'écran du résultat, tout dans la même conversation où il a écrit le code.

14 14 


200Le serveur n'apparaît que sur les configurations éligibles. Vérifiez que :200Le serveur n'apparaît que sur les configurations éligibles. Vérifiez que :

201 201 

202* Vous êtes sur macOS. L'utilisation de l'ordinateur dans la CLI n'est pas disponible sur Linux ou Windows. Sur Windows, utilisez [utilisation de l'ordinateur dans Desktop](https://code.claude.com/docs/fr/desktop.md#let-claude-use-your-computer) à la place.202* Vous êtes sur macOS. L'utilisation de l'ordinateur dans la CLI n'est pas disponible sur Linux ou Windows. Sur Windows, utilisez [utilisation de l'ordinateur dans Desktop](https://code.claude.com/docs/fr/desktop.md#let-claude-use-your-computer) à la place.

203* Vous êtes sur un plan Pro ou Max. Exécutez `/status` pour confirmer votre abonnement.203* Vous êtes sur un plan Pro, Max ou Ultra. Exécutez `/status` pour confirmer votre abonnement.

204* Vous êtes authentifié via claude.ai. L'utilisation de l'ordinateur n'est pas disponible avec les fournisseurs tiers comme Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry. Si vous accédez à Claude exclusivement via un fournisseur tiers, vous avez besoin d'un compte claude.ai séparé pour utiliser cette fonctionnalité.204* Vous êtes authentifié via claude.ai. L'utilisation de l'ordinateur n'est pas disponible avec les fournisseurs tiers comme Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry. Si vous accédez à Claude exclusivement via un fournisseur tiers, vous avez besoin d'un compte claude.ai séparé pour utiliser cette fonctionnalité.

205* Vous êtes dans une session interactive. L'utilisation de l'ordinateur n'est pas disponible en mode non-interactif avec le drapeau `-p`.205* Vous êtes dans une session interactive. L'utilisation de l'ordinateur n'est pas disponible en mode non-interactif avec le drapeau `-p`.

206 206 

costs.md +50 −50

Details

6 6 

7> Suivez l'utilisation des tokens, définissez des limites de dépenses pour l'équipe, et réduisez les coûts de Claude Code grâce à la gestion du contexte, la sélection du modèle, les paramètres de réflexion étendue et les hooks de prétraitement.7> Suivez l'utilisation des tokens, définissez des limites de dépenses pour l'équipe, et réduisez les coûts de Claude Code grâce à la gestion du contexte, la sélection du modèle, les paramètres de réflexion étendue et les hooks de prétraitement.

8 8 

9Claude Code facture selon la consommation de tokens API. Pour les tarifs des plans d'abonnement (Pro, Max, Team, Enterprise), consultez [claude.com/pricing](https://claude.com/pricing). Les coûts par développeur varient considérablement en fonction de la sélection du modèle, de la taille de la base de code et des modèles d'utilisation tels que l'exécution de plusieurs instances ou l'automatisation.9Claude Code facture selon la consommation de tokens API. Pour les tarifs des plans d'abonnement (Pro, Max, Ultra, Team, Enterprise), consultez [claude.com/pricing](https://claude.com/pricing). Les coûts par développeur varient considérablement en fonction de la sélection du modèle, de la taille de la base de code et des modèles d'utilisation tels que l'exécution de plusieurs instances ou l'automatisation.

10 10 

11Dans les déploiements d'entreprise, le coût moyen est d'environ 13 $par développeur par jour actif et de 150 à 250$ par développeur par mois, les coûts restant en dessous de 30 \$ par jour actif pour 90 % des utilisateurs. Pour estimer les dépenses de votre équipe, commencez par un petit groupe pilote et utilisez les outils de suivi ci-dessous pour établir une base de référence avant un déploiement plus large.11Dans les déploiements d'entreprise, le coût moyen est d'environ 13 $par développeur par jour actif et de 150 à 250$ par développeur par mois, les coûts restant en dessous de 30 \$ par jour actif pour 90 % des utilisateurs. Pour estimer les dépenses de votre équipe, commencez par un petit groupe pilote et utilisez les outils de suivi ci-dessous pour établir une base de référence avant un déploiement plus large.

12 12 


18 18 

19> [!NOTE]19> [!NOTE]

20>20>

21> Le bloc Session dans `/usage` affiche l'utilisation des tokens API et est destiné aux utilisateurs d'API. Les abonnés Claude Max et Pro ont l'utilisation incluse dans leur abonnement, donc le chiffre du coût de session n'est pas pertinent à des fins de facturation. Les abonnés voient les barres d'utilisation du plan, les statistiques d'activité et une ventilation de l'utilisation sur le même écran.21> Le bloc Session dans `/usage` affiche l'utilisation des tokens API et est destiné aux utilisateurs d'API. Les abonnés Claude Pro, Max et Ultra ont l'utilisation incluse dans leur abonnement, donc le chiffre du coût de session n'est pas pertinent à des fins de facturation. Les abonnés voient les barres d'utilisation du plan, les statistiques d'activité et une ventilation de l'utilisation sur le même écran.

22 22 

23Le bloc Session en haut de `/usage` affiche des statistiques détaillées sur l'utilisation des tokens pour votre session actuelle. Claude Code calcule le chiffre en dollars localement à partir des décomptes de tokens au prix catalogue, sauf si une table [`modelPricing`](https://code.claude.com/docs/fr/settings-reference#modelpricing) est en vigueur. Un administrateur en définit une dans les paramètres gérés de votre organisation afin que le chiffre utilise vos tarifs contractuels, et tant qu'une table est en vigueur, la ligne `Total cost` porte la note `at your organization's configured rates`. Le chiffre est une estimation, donc pour une facturation fiable, consultez la page Utilisation dans la [Console Claude](https://platform.claude.com/usage).23Le bloc Session en haut de `/usage` affiche des statistiques détaillées sur l'utilisation des tokens pour votre session actuelle. Claude Code calcule le chiffre en dollars localement à partir des décomptes de tokens au prix catalogue, sauf si une table [`modelPricing`](https://code.claude.com/docs/fr/settings-reference#modelpricing) est en vigueur. Un administrateur en définit une dans les paramètres gérés de votre organisation afin que le chiffre utilise vos tarifs contractuels, et tant qu'une table est en vigueur, la ligne `Total cost` porte la note `at your organization's configured rates`. Le chiffre est une estimation, donc pour une facturation fiable, consultez la page Utilisation dans la [Console Claude](https://platform.claude.com/usage).

24 24 


55 55 

56#### Ventilation de l'utilisation du plan56#### Ventilation de l'utilisation du plan

57 57 

58Sur un plan Pro, Max, Team ou Enterprise, `/usage` affiche également une ventilation de ce qui compte par rapport à vos limites de plan, accompagnée de recommandations :58Sur un plan Pro, Max, Ultra, Team ou Enterprise, `/usage` affiche également une ventilation de ce qui compte par rapport à vos limites de plan, accompagnée de recommandations :

59 59 

60* **Attribution** : utilisation récente attribuée aux skills, subagents, plugins et serveurs MCP individuels, chacun affiché en pourcentage du total. La part d'un serveur MCP compte uniquement les demandes qui ont consommé l'un de ses résultats d'outils. Avant la v2.1.222, après un appel à un serveur MCP, Claude Code attribuait chaque demande ultérieure à ce serveur, surestimant sa part.60* **Attribution** : utilisation récente attribuée aux skills, subagents, plugins et serveurs MCP individuels, chacun affiché en pourcentage du total. La part d'un serveur MCP compte uniquement les demandes qui ont consommé l'un de ses résultats d'outils. Avant la v2.1.222, après un appel à un serveur MCP, Claude Code attribuait chaque demande ultérieure à ce serveur, surestimant sa part.

61* **Recommendations** : des modifications suggérées, une par ligne. Chaque ligne commence par une part de votre utilisation récente, au moins 10 %, comme dans `25% Trim ~/code/api/CLAUDE.md · 49k tokens per request`.61* **Recommendations** : des modifications suggérées, une par ligne. Chaque ligne commence par une part de votre utilisation récente, au moins 10 %, comme dans `25% Trim ~/code/api/CLAUDE.md · 49k tokens per request`.


92 92 

93`/usage` affiche également une ligne de crédits d'utilisation tandis que les [crédits d'utilisation](#add-usage-credits-to-your-subscription) sont activés. Ce que la ligne affiche dépend de votre plan :93`/usage` affiche également une ligne de crédits d'utilisation tandis que les [crédits d'utilisation](#add-usage-credits-to-your-subscription) sont activés. Ce que la ligne affiche dépend de votre plan :

94 94 

95* **Pro et Max** : vos dépenses pour le mois en cours, mesurées par rapport à votre limite de dépenses mensuelles quand vous en avez défini une. Quand vous n'avez pas défini de limite, la ligne affiche `Unlimited` et aucun chiffre de dépenses.95* **Pro, Max et Ultra** : vos dépenses pour le mois en cours, mesurées par rapport à votre limite de dépenses mensuelles quand vous en avez défini une. Quand vous n'avez pas défini de limite, la ligne affiche `Unlimited` et aucun chiffre de dépenses.

96* **Team et Enterprise** : vos propres dépenses pour le mois en cours, mesurées par rapport à toute [limite que votre organisation a définie](#claude-for-teams-and-enterprise) qui s'applique à vous. Une limite qui couvre l'ensemble de l'organisation n'apparaît pas dans la ligne. Quand vous n'avez pas de limite qui vous est propre, la ligne affiche vos dépenses sans limite à côté. Tandis que les crédits d'utilisation sont désactivés pour vous, `/usage` n'affiche aucune ligne de crédits d'utilisation.96* **Team et Enterprise** : vos propres dépenses pour le mois en cours, mesurées par rapport à toute [limite que votre organisation a définie](#claude-for-teams-and-enterprise) qui s'applique à vous. Une limite qui couvre l'ensemble de l'organisation n'apparaît pas dans la ligne. Quand vous n'avez pas de limite qui vous est propre, la ligne affiche vos dépenses sans limite à côté. Tandis que les crédits d'utilisation sont désactivés pour vous, `/usage` n'affiche aucune ligne de crédits d'utilisation.

97 97 

98Quand vous avez une limite de dépenses, la ligne apparaît dès que les crédits d'utilisation sont activés et affiche 0 % jusqu'à ce que vous dépensez d'abord des crédits d'utilisation. Avant la v2.1.236, `/usage` affichait la ligne uniquement sur les plans Pro et Max, et une ligne avec une limite de dépenses restait cachée jusqu'à ce que vous ayez dépensé quelque chose.98Quand vous avez une limite de dépenses, la ligne apparaît dès que les crédits d'utilisation sont activés et affiche 0 % jusqu'à ce que vous dépensiez des crédits d'utilisation pour la première fois. Avant la v2.1.236, `/usage` affichait la ligne uniquement sur les plans Pro, Max et Ultra, et une ligne avec une limite de dépenses restait cachée jusqu'à ce que vous ayez dépensé quelque chose.

99 99 

100#### Quand la demande d'utilisation échoue100#### Quand la demande d'utilisation échoue

101 101 


130 130 

131| Votre rôle | Ce que `/usage-credits` fait |131| Votre rôle | Ce que `/usage-credits` fait |

132| :- | :- |132| :- | :- |

133| Abonné Pro ou Max | Ouvre [**Settings > Usage**](https://claude.ai/settings/usage) sur claude.ai dans le navigateur. Dans sa section **Usage credits** vous pouvez activer ou désactiver les crédits d'utilisation et vérifier votre solde de crédit, les dépenses de ce mois et votre limite de dépenses mensuelles |133| Abonné Pro, Max ou Ultra | Ouvre [**Settings > Usage**](https://claude.ai/settings/usage) sur claude.ai dans le navigateur. Dans sa section **Usage credits** vous pouvez activer ou désactiver les crédits d'utilisation et vérifier votre solde de crédit, les dépenses de ce mois et votre limite de dépenses mensuelles |

134| Membre Team ou Enterprise avec accès à la facturation | Ouvre les paramètres d'utilisation de votre organisation, [**Organization settings > Usage**](https://claude.ai/admin-settings/usage), dans le navigateur |134| Membre Team ou Enterprise avec accès à la facturation | Ouvre les paramètres d'utilisation de votre organisation, [**Organization settings > Usage**](https://claude.ai/admin-settings/usage), dans le navigateur |

135| Membre Team ou Enterprise sans accès à la facturation | Vous demande de confirmer, puis envoie une demande aux administrateurs de votre organisation. Avant la v2.1.211, Claude Code envoyait la demande sans étape de confirmation |135| Membre Team ou Enterprise sans accès à la facturation | Vous demande de confirmer, puis envoie une demande aux administrateurs de votre organisation. Avant la v2.1.211, Claude Code envoyait la demande sans étape de confirmation |

136 136 


144 144 

145Les contrôles dont vous disposez dépendent de la façon dont votre organisation accède à Claude Code : un plan Claude for Teams ou Enterprise, la Claude Console, ou un fournisseur cloud. Sur les plans Teams et Enterprise, l'utilisation est prélevée sur l'allocation de siège de chaque membre. Sur la Console et chez les fournisseurs cloud, l'utilisation est facturée par token à votre organisation. Si votre organisation mélange les méthodes de connexion, chaque développeur est mesuré selon celle avec laquelle il s'est authentifié.145Les contrôles dont vous disposez dépendent de la façon dont votre organisation accède à Claude Code : un plan Claude for Teams ou Enterprise, la Claude Console, ou un fournisseur cloud. Sur les plans Teams et Enterprise, l'utilisation est prélevée sur l'allocation de siège de chaque membre. Sur la Console et chez les fournisseurs cloud, l'utilisation est facturée par token à votre organisation. Si votre organisation mélange les méthodes de connexion, chaque développeur est mesuré selon celle avec laquelle il s'est authentifié.

146 146 

147Le tableau mappe chaque configuration à l'endroit où vous voyez les dépenses, où vous les plafonnez, et comment vous extrayez les chiffres par utilisateur. Sur un plan Pro ou Max individuel, vous n'avez pas d'organisation à gérer, donc suivez vos propres dépenses en crédits d'utilisation, y compris le [mode rapide](https://code.claude.com/docs/fr/fast-mode.md#see-where-fast-mode-spend-appears), sous [Ajouter des crédits d'utilisation à votre abonnement](#add-usage-credits-to-your-subscription).147Le tableau mappe chaque configuration à l'endroit où vous voyez les dépenses, où vous les plafonnez, et comment vous extrayez les chiffres par utilisateur. Sur un plan Pro, Max ou Ultra individuel, vous n'avez pas d'organisation à gérer, donc suivez vos propres dépenses en crédits d'utilisation, y compris le [mode rapide](https://code.claude.com/docs/fr/fast-mode.md#see-where-fast-mode-spend-appears), sous [Ajouter des crédits d'utilisation à votre abonnement](#add-usage-credits-to-your-subscription).

148 148 

149| Votre configuration | Voir les dépenses | Plafonner les dépenses | Rapports par utilisateur |149| Votre configuration | Voir les dépenses | Plafonner les dépenses | Rapports par utilisateur |

150| :- | :- | :- | :- |150| :- | :- | :- | :- |


294 294 

295Par exemple, ce hook PreToolUse filtre la sortie des tests pour n'afficher que les échecs :295Par exemple, ce hook PreToolUse filtre la sortie des tests pour n'afficher que les échecs :

296 296 

297**settings.json**297> [tab] settings.json

298 298>

299Ajoutez ceci à votre [settings.json](https://code.claude.com/docs/fr/settings.md#where-settings-live) pour exécuter le hook avant chaque commande Bash :299> Ajoutez ceci à votre [settings.json](https://code.claude.com/docs/fr/settings.md#where-settings-live) pour exécuter le hook avant chaque commande Bash :

300 300>

301```json theme={null}301> ```json theme={null}

302{302> {

303 "hooks": {303> "hooks": {

304 "PreToolUse": [304> "PreToolUse": [

305 {305> {

306 "matcher": "Bash",306> "matcher": "Bash",

307 "hooks": [307> "hooks": [

308 {308> {

309 "type": "command",309> "type": "command",

310 "command": "~/.claude/hooks/filter-test-output.sh"310> "command": "~/.claude/hooks/filter-test-output.sh"

311 }311> }

312 ]312> ]

313 }313> }

314 ]314> ]

315 }315> }

316}316> }

317```317> ```

318 318 

319**filter-test-output.sh**319> [tab] filter-test-output.sh

320 320>

321Le hook appelle ce script. Créez le dossier avec `mkdir -p ~/.claude/hooks`, enregistrez le script ci-dessous sous `~/.claude/hooks/filter-test-output.sh` et rendez-le exécutable avec `chmod +x ~/.claude/hooks/filter-test-output.sh`. Il vérifie si la commande est un lanceur de tests et la modifie pour n'afficher que les échecs :321> Le hook appelle ce script. Créez le dossier avec `mkdir -p ~/.claude/hooks`, enregistrez le script ci-dessous sous `~/.claude/hooks/filter-test-output.sh` et rendez-le exécutable avec `chmod +x ~/.claude/hooks/filter-test-output.sh`. Il vérifie si la commande est un lanceur de tests et la modifie pour n'afficher que les échecs :

322 322>

323```bash theme={null}323> ```bash theme={null}

324#!/bin/bash324> #!/bin/bash

325input=$(cat)325> input=$(cat)

326cmd=$(echo "$input" | jq -r '.tool_input.command')326> cmd=$(echo "$input" | jq -r '.tool_input.command')

327 327>

328# If running tests, filter to show only failures328> # If running tests, filter to show only failures

329pattern='^(npm test|pytest|go test)( [^;&|<>`$#\\[:cntrl:]]*)?$'329> pattern='^(npm test|pytest|go test)( [^;&|<>`$#\\[:cntrl:]]*)?$'

330if [[ "$cmd" =~ $pattern ]]; then330> if [[ "$cmd" =~ $pattern ]]; then

331 filtered_cmd="$cmd 2>&1 | grep -A 5 -E '(FAIL|ERROR|error:)' | head -100"331> filtered_cmd="$cmd 2>&1 | grep -A 5 -E '(FAIL|ERROR|error:)' | head -100"

332 echo "$input" | jq --arg filtered "$filtered_cmd" \332> echo "$input" | jq --arg filtered "$filtered_cmd" \

333 '{hookSpecificOutput: {hookEventName: "PreToolUse", updatedInput: (.tool_input + {command: $filtered})}}'333> '{hookSpecificOutput: {hookEventName: "PreToolUse", updatedInput: (.tool_input + {command: $filtered})}}'

334else334> else

335 echo "{}"335> echo "{}"

336fi336> fi

337```337> ```

338 338 

339Pour vérifier la configuration, exécutez `/hooks` et vérifiez que le hook apparaît sous PreToolUse. Vous pouvez également démarrer Claude Code avec `claude --debug-file ./claude-debug.txt` et demander à Claude d'exécuter `npm test`. Lorsque le hook réécrit la commande, ce fichier de log contient une ligne `modified tool input keys` listant `command` et les autres champs d'entrée de Bash.339Pour vérifier la configuration, exécutez `/hooks` et vérifiez que le hook apparaît sous PreToolUse. Vous pouvez également démarrer Claude Code avec `claude --debug-file ./claude-debug.txt` et demander à Claude d'exécuter `npm test`. Lorsque le hook réécrit la commande, ce fichier de log contient une ligne `modified tool input keys` listant `command` et les autres champs d'entrée de Bash.

340 340 


392* **Coéquipiers agents** : chaque [coéquipier](#agent-team-token-costs) actif continue de consommer des jetons jusqu'à sa sortie392* **Coéquipiers agents** : chaque [coéquipier](#agent-team-token-costs) actif continue de consommer des jetons jusqu'à sa sortie

393* **Compaction** : `/compact` lit la conversation qu'il résume, donc [compacter un grand contexte](https://code.claude.com/docs/fr/prompt-caching.md#compacting-the-conversation) est en soi une grande requête. Lorsque vous voulez un nouveau départ au lieu de continuité, `/clear` ne coûte rien393* **Compaction** : `/compact` lit la conversation qu'il résume, donc [compacter un grand contexte](https://code.claude.com/docs/fr/prompt-caching.md#compacting-the-conversation) est en soi une grande requête. Lorsque vous voulez un nouveau départ au lieu de continuité, `/clear` ne coûte rien

394 394 

395Sur un plan Pro, Max, Team ou Enterprise, la [répartition `/usage`](#plan-usage-breakdown) recommande un changement pour les comportements qui représentent 10 % ou plus de votre utilisation récente, comme un contexte long ou des absences de cache.395Pour savoir quoi changer sur un plan Pro, Max, Ultra, Team ou Enterprise, exécutez [`/usage`](#plan-usage-breakdown) à l'invite de Claude Code. Sa répartition recommande un changement pour les comportements qui représentent 10 % ou plus de votre utilisation récente. Ces comportements incluent un contexte long et des absences de cache.

396 396 

397## Comprendre les changements de comportement de Claude Code397## Comprendre les changements de comportement de Claude Code

398 398 


400 400 

401Pour les questions de facturation concernant votre compte spécifique, contactez le support Anthropic via le messenger intégré au produit :401Pour les questions de facturation concernant votre compte spécifique, contactez le support Anthropic via le messenger intégré au produit :

402 402 

403* **Plans d'abonnement** (Pro, Max, Team, Enterprise) : connectez-vous sur [claude.ai](https://claude.ai), cliquez sur vos initiales en bas à gauche, et sélectionnez **Obtenir de l'aide**403* **Plans d'abonnement** (Pro, Max, Ultra, Team, Enterprise) : connectez-vous sur [claude.ai](https://claude.ai), cliquez sur vos initiales en bas à gauche, et sélectionnez **Obtenir de l'aide**

404* **Facturation Console (API)** : connectez-vous sur [platform.claude.com](https://platform.claude.com), cliquez sur vos initiales, et sélectionnez **Obtenir de l'aide**404* **Facturation Console (API)** : connectez-vous sur [platform.claude.com](https://platform.claude.com), cliquez sur vos initiales, et sélectionnez **Obtenir de l'aide**

405 405 

406Consultez [Comment obtenir du support](https://support.claude.com/en/articles/9015913-how-to-get-support) pour connaître le processus complet, y compris qui peut vous mettre en contact avec un agent humain selon votre plan.406Consultez [Comment obtenir du support](https://support.claude.com/en/articles/9015913-how-to-get-support) pour connaître le processus complet, y compris qui peut vous mettre en contact avec un agent humain selon votre plan.

data-usage.md +6 −6

Details

10 10 

11### Politique d'entraînement sur les données11### Politique d'entraînement sur les données

12 12 

13**Utilisateurs grand public (forfaits Free, Pro et Max)** :13**Utilisateurs grand public (forfaits Free, Pro, Max et Ultra)** :

14Nous vous laissons le choix d'autoriser l'utilisation de vos données pour améliorer les futurs modèles Claude. Nous entraînerons de nouveaux modèles à l'aide des données des comptes Free, Pro et Max lorsque ce paramètre est activé (y compris lorsque vous utilisez Claude Code depuis ces comptes).14Nous vous laissons le choix d'autoriser l'utilisation de vos données pour améliorer les futurs modèles Claude. Nous entraînerons de nouveaux modèles à l'aide des données des comptes Free, Pro, Max et Ultra lorsque ce paramètre est activé (y compris lorsque vous utilisez Claude Code depuis ces comptes).

15 15 

16**Utilisateurs commerciaux** : (forfaits Team et Enterprise, API, plateformes tierces et Claude Gov) les politiques existantes sont maintenues : Anthropic n'entraîne pas de modèles génératifs à l'aide du code ou des prompts envoyés à Claude Code dans le cadre des conditions commerciales, sauf si le client a choisi de nous fournir ses données pour l'amélioration des modèles (par exemple, le [Developer Partner Program](https://support.claude.com/en/articles/11174108-about-the-development-partner-program)).16**Utilisateurs commerciaux** : (forfaits Team et Enterprise, API, plateformes tierces et Claude Gov) les politiques existantes sont maintenues : Anthropic n'entraîne pas de modèles génératifs à l'aide du code ou des prompts envoyés à Claude Code dans le cadre des conditions commerciales, sauf si le client a choisi de nous fournir ses données pour l'amélioration des modèles (par exemple, le [Developer Partner Program](https://support.claude.com/en/articles/11174108-about-the-development-partner-program)).

17 17 


43 43 

44Anthropic conserve les données de Claude Code en fonction de votre type de compte et de vos préférences.44Anthropic conserve les données de Claude Code en fonction de votre type de compte et de vos préférences.

45 45 

46**Utilisateurs grand public (forfaits Free, Pro et Max)** :46**Utilisateurs grand public (forfaits Free, Pro, Max et Ultra)** :

47 47 

48* Utilisateurs qui autorisent l'utilisation des données pour l'amélioration des modèles : période de conservation de 5 ans pour soutenir le développement des modèles et les améliorations de sécurité48* Utilisateurs qui autorisent l'utilisation des données pour l'amélioration des modèles : période de conservation de 5 ans pour soutenir le développement des modèles et les améliorations de sécurité

49* Utilisateurs qui n'autorisent pas l'utilisation des données pour l'amélioration des modèles : période de conservation de 30 jours49* Utilisateurs qui n'autorisent pas l'utilisation des données pour l'amélioration des modèles : période de conservation de 30 jours


61 61 

62Pour en savoir plus sur les pratiques de conservation des données, consultez notre [Centre de confidentialité](https://privacy.anthropic.com/).62Pour en savoir plus sur les pratiques de conservation des données, consultez notre [Centre de confidentialité](https://privacy.anthropic.com/).

63 63 

64Pour tous les détails, veuillez consulter nos [Conditions commerciales d'utilisation](https://www.anthropic.com/legal/commercial-terms) (pour les utilisateurs Team, Enterprise et API) ou nos [Conditions grand public](https://www.anthropic.com/legal/consumer-terms) (pour les utilisateurs Free, Pro et Max) ainsi que notre [Politique de confidentialité](https://www.anthropic.com/legal/privacy).64Pour tous les détails, veuillez consulter nos [Conditions commerciales d'utilisation](https://www.anthropic.com/legal/commercial-terms) (pour les utilisateurs Team, Enterprise et API) ou nos [Conditions grand public](https://www.anthropic.com/legal/consumer-terms) (pour les utilisateurs Free, Pro, Max et Ultra) ainsi que notre [Politique de confidentialité](https://www.anthropic.com/legal/privacy).

65 65 

66## Accès aux données66## Accès aux données

67 67 


107 107 

108La génération de rapports d'erreur est activée uniquement lorsque tous ces éléments s'appliquent :108La génération de rapports d'erreur est activée uniquement lorsque tous ces éléments s'appliquent :

109 109 

110* vous vous connectez avec un abonnement Claude Pro ou Max110* vous vous connectez avec un abonnement Claude Pro, Max ou Ultra

111* vous exécutez Claude Code v2.1.198 ou version ultérieure111* vous exécutez Claude Code v2.1.198 ou version ultérieure

112* vous vous connectez directement à l'API Claude112* vous vous connectez directement à l'API Claude

113* votre organisation n'a pas d'accord de rétention zéro ou HIPAA113* votre organisation n'a pas d'accord de rétention zéro ou HIPAA


123| Service | Claude API | Google Cloud's Agent Platform API | Amazon Bedrock API | Microsoft Foundry API | Claude Platform sur AWS |123| Service | Claude API | Google Cloud's Agent Platform API | Amazon Bedrock API | Microsoft Foundry API | Claude Platform sur AWS |

124| - | - | - | - | - | - |124| - | - | - | - | - | - |

125| **Métriques** | Activé par défaut. `DISABLE_TELEMETRY=1` pour désactiver. | Désactivé par défaut. `CLAUDE_CODE_USE_VERTEX` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_BEDROCK` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_FOUNDRY` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_ANTHROPIC_AWS` doit être 1. |125| **Métriques** | Activé par défaut. `DISABLE_TELEMETRY=1` pour désactiver. | Désactivé par défaut. `CLAUDE_CODE_USE_VERTEX` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_BEDROCK` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_FOUNDRY` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_ANTHROPIC_AWS` doit être 1. |

126| **Rapports d'erreurs** | Activé pour les connexions Pro et Max sur v2.1.198+, sinon désactivé. `DISABLE_ERROR_REPORTING=1` pour désactiver. | Désactivé par défaut. `CLAUDE_CODE_USE_VERTEX` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_BEDROCK` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_FOUNDRY` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_ANTHROPIC_AWS` doit être 1. |126| **Rapports d'erreurs** | Activé pour les connexions Pro, Max et Ultra sur v2.1.198+, sinon désactivé. `DISABLE_ERROR_REPORTING=1` pour désactiver. | Désactivé par défaut. `CLAUDE_CODE_USE_VERTEX` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_BEDROCK` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_FOUNDRY` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_ANTHROPIC_AWS` doit être 1. |

127| **Claude API (rapports `/feedback`)** | Activé par défaut. `DISABLE_FEEDBACK_COMMAND=1` pour désactiver. | Désactivé par défaut. `CLAUDE_CODE_USE_VERTEX` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_BEDROCK` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_FOUNDRY` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_ANTHROPIC_AWS` doit être 1. |127| **Claude API (rapports `/feedback`)** | Activé par défaut. `DISABLE_FEEDBACK_COMMAND=1` pour désactiver. | Désactivé par défaut. `CLAUDE_CODE_USE_VERTEX` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_BEDROCK` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_FOUNDRY` doit être 1. | Désactivé par défaut. `CLAUDE_CODE_USE_ANTHROPIC_AWS` doit être 1. |

128| **Sondages de qualité de session** | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. |128| **Sondages de qualité de session** | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. | Activé par défaut. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` pour désactiver. |

129| **Vérification de sécurité du domaine WebFetch** | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. |129| **Vérification de sécurité du domaine WebFetch** | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. | Activé par défaut. `skipWebFetchPreflight: true` dans [paramètres](https://code.claude.com/docs/fr/settings.md) pour désactiver. |

Details

95 95 

96Dans votre shell, sans session Claude Code en cours d'exécution, créez le répertoire et déplacez-vous dedans :96Dans votre shell, sans session Claude Code en cours d'exécution, créez le répertoire et déplacez-vous dedans :

97 97 

98**Bash or Zsh**98> [tab] Bash or Zsh

99 99>

100```bash theme={null}100> ```bash theme={null}

101mkdir -p ~/claude-clean/empty && cd ~/claude-clean/empty101> mkdir -p ~/claude-clean/empty && cd ~/claude-clean/empty

102```102> ```

103 

104**PowerShell**

105 103 

106```powershell theme={null}104> [tab] PowerShell

107New-Item -ItemType Directory -Force "$HOME/claude-clean/empty" | Out-Null105>

108Set-Location "$HOME/claude-clean/empty"106> ```powershell theme={null}

109```107> New-Item -ItemType Directory -Force "$HOME/claude-clean/empty" | Out-Null

108> Set-Location "$HOME/claude-clean/empty"

109> ```

110 110 

111**2. Démarrer Claude Code avec un répertoire de configuration propre**111**2. Démarrer Claude Code avec un répertoire de configuration propre**

112 112 

113Depuis le même shell, définissez [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/fr/env-vars) sur un nouveau répertoire à la place de `~/.claude`, et passez [`--setting-sources user`](https://code.claude.com/docs/fr/cli-reference#cli-flags) pour désactiver la configuration du projet, comme `.claude/settings.json`, `CLAUDE.md` et `.mcp.json` :113Depuis le même shell, définissez [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/fr/env-vars) sur un nouveau répertoire à la place de `~/.claude`, et passez [`--setting-sources user`](https://code.claude.com/docs/fr/cli-reference#cli-flags) pour désactiver la configuration du projet, comme `.claude/settings.json`, `CLAUDE.md` et `.mcp.json` :

114 114 

115**Bash or Zsh**115> [tab] Bash or Zsh

116 116>

117La variable s'applique uniquement à ce lancement.117> La variable s'applique uniquement à ce lancement.

118 118>

119```bash theme={null}119> ```bash theme={null}

120CLAUDE_CONFIG_DIR=~/claude-clean/config claude --setting-sources user120> CLAUDE_CONFIG_DIR=~/claude-clean/config claude --setting-sources user

121```121> ```

122 

123**PowerShell**

124 

125La variable reste définie pour le reste de cette session PowerShell, de sorte que les lancements ultérieurs de `claude` dans la même fenêtre continuent d'utiliser le répertoire propre. Pour revenir à votre répertoire habituel, exécutez `Remove-Item Env:CLAUDE_CONFIG_DIR` avant le prochain lancement.

126 122 

127```powershell theme={null}123> [tab] PowerShell

128$env:CLAUDE_CONFIG_DIR = "$HOME/claude-clean/config"124>

129claude --setting-sources user125> La variable reste définie pour le reste de cette session PowerShell, de sorte que les lancements ultérieurs de `claude` dans la même fenêtre continuent d'utiliser le répertoire propre. Pour revenir à votre répertoire habituel, exécutez `Remove-Item Env:CLAUDE_CONFIG_DIR` avant le prochain lancement.

130```126>

127> ```powershell theme={null}

128> $env:CLAUDE_CONFIG_DIR = "$HOME/claude-clean/config"

129> claude --setting-sources user

130> ```

131 131 

132Au premier lancement, vous repassez par les écrans de configuration initiale, signe que le répertoire de configuration propre est en vigueur. Les paramètres gérés s'appliquent toujours, et les [connecteurs](https://code.claude.com/docs/fr/mcp.md#use-mcp-servers-from-claude-ai) se chargent toujours si vous vous connectez avec un compte claude.ai.132Au premier lancement, vous repassez par les écrans de configuration initiale, signe que le répertoire de configuration propre est en vigueur. Les paramètres gérés s'appliquent toujours, et les [connecteurs](https://code.claude.com/docs/fr/mcp.md#use-mcp-servers-from-claude-ai) se chargent toujours si vous vous connectez avec un compte claude.ai.

133 133 

desktop.md +120 −90

Details

8 8 

9Dans l'application Claude Desktop, Claude Code correspond à l'onglet **Code**. L'application propose également le chat et [Cowork](https://claude.com/product/cowork), qui gère Dispatch et les travaux agentiques plus longs. Cette page est la référence pour l'onglet Code.9Dans l'application Claude Desktop, Claude Code correspond à l'onglet **Code**. L'application propose également le chat et [Cowork](https://claude.com/product/cowork), qui gère Dispatch et les travaux agentiques plus longs. Cette page est la référence pour l'onglet Code.

10 10 

11> **[Télécharger pour macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs)**11> [card] [Télécharger pour macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs)

12>12>

13> Build universel pour Intel et Apple Silicon13> Build universel pour Intel et Apple Silicon

14 14 

15> **[Télécharger pour Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)**15> [card] [Télécharger pour Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)

16>16>

17> Pour les processeurs x6417> Pour les processeurs x64

18 18 

19> **[Obtenir Claude pour Linux (bêta)](https://code.claude.com/docs/fr/desktop-linux.md)**19> [card] [Obtenir Claude pour Linux (bêta)](https://code.claude.com/docs/fr/desktop-linux.md)

20>20>

21> apt ou .deb pour Ubuntu et Debian21> apt ou .deb pour Ubuntu et Debian

22 22 


92| **Accept edits** | `acceptEdits` | Claude accepte automatiquement les modifications de fichiers et les commandes courantes du système de fichiers comme `mkdir`, `touch` et `mv`, mais demande toujours avant d'exécuter d'autres commandes du terminal. Utilisez ce mode lorsque vous faites confiance aux modifications de fichiers et souhaitez itérer plus rapidement. |92| **Accept edits** | `acceptEdits` | Claude accepte automatiquement les modifications de fichiers et les commandes courantes du système de fichiers comme `mkdir`, `touch` et `mv`, mais demande toujours avant d'exécuter d'autres commandes du terminal. Utilisez ce mode lorsque vous faites confiance aux modifications de fichiers et souhaitez itérer plus rapidement. |

93| **Plan** | `plan` | Claude lit des fichiers et exécute des commandes pour explorer, puis propose un plan sans modifier votre code source. Idéal pour les tâches complexes dont vous voulez d'abord examiner l'approche. |93| **Plan** | `plan` | Claude lit des fichiers et exécute des commandes pour explorer, puis propose un plan sans modifier votre code source. Idéal pour les tâches complexes dont vous voulez d'abord examiner l'approche. |

94| **Auto** | `auto` | Claude s'exécute sans demandes de permission courantes ; avant l'exécution d'actions telles que les commandes shell et les requêtes réseau, un classifieur en arrière-plan vérifie qu'elles correspondent à votre demande. Apparaît lorsque le [mode auto est disponible](#auto-mode-availability) ; il n'existe pas d'option distincte dans Settings pour ce mode. |94| **Auto** | `auto` | Claude s'exécute sans demandes de permission courantes ; avant l'exécution d'actions telles que les commandes shell et les requêtes réseau, un classifieur en arrière-plan vérifie qu'elles correspondent à votre demande. Apparaît lorsque le [mode auto est disponible](#auto-mode-availability) ; il n'existe pas d'option distincte dans Settings pour ce mode. |

95| **Bypass permissions** | `bypassPermissions` | Claude s'exécute sans demandes de permission, à l'exception des [actions qu'aucun mode n'approuve automatiquement](https://code.claude.com/docs/fr/permission-modes.md#actions-no-mode-auto-approves), des classifieurs de sécurité lorsque Claude [agit sur des sites externes](#browse-external-sites), ou des actions de l'application de bureau telles que la suppression d'une session, mais pas son [archivage](#work-across-sessions). Équivalent à `--dangerously-skip-permissions` dans la CLI. Sur les forfaits Pro et Max, activez « Allow bypass permissions mode » dans **Settings > Code** ou **Settings > Claude Code**. Sur les forfaits Team et Enterprise, il n'existe pas d'option dans Settings : c'est la politique de l'organisation qui le contrôle. N'utilisez ce mode que dans des conteneurs ou des VM isolés (sandbox). |95| **Bypass permissions** | `bypassPermissions` | Claude s'exécute sans demandes de permission, à l'exception des [actions qu'aucun mode n'approuve automatiquement](https://code.claude.com/docs/fr/permission-modes.md#actions-no-mode-auto-approves), des classifieurs de sécurité lorsque Claude [agit sur des sites externes](#browse-external-sites), ou des actions de l'application de bureau telles que la suppression d'une session, mais pas son [archivage](#work-across-sessions). Équivalent à `--dangerously-skip-permissions` dans la CLI. Sur les forfaits Pro, Max et Ultra, activez « Allow bypass permissions mode » dans **Settings > Code** ou **Settings > Claude Code**. Sur les forfaits Team et Enterprise, il n'existe pas d'option dans Settings : c'est la politique de l'organisation qui le contrôle. N'utilisez ce mode que dans des conteneurs ou des VM isolés (sandbox). |

96 96 

97Les versions antérieures de l'onglet Code nommaient ces modes Ask permissions, Auto accept edits et Plan mode.97Les versions antérieures de l'onglet Code nommaient ces modes Ask permissions, Auto accept edits et Plan mode.

98 98 


320 320 

321> [!NOTE]321> [!NOTE]

322>322>

323> Computer use est en research preview sur macOS et Windows et nécessite un forfait Pro ou Max. Il n'est pas disponible avec les forfaits Team ou Enterprise. L'application Claude Desktop doit être en cours d'exécution. Sur macOS, computer use nécessite macOS 14 ou une version ultérieure.323> Computer use est en research preview sur macOS et Windows et nécessite un forfait Pro, Max ou Ultra. Il n'est pas disponible avec les forfaits Team ou Enterprise. L'application Claude Desktop doit être en cours d'exécution. Sur macOS, computer use nécessite macOS 14 ou une version ultérieure.

324 324 

325Computer use est désactivé par défaut. [Activez-le dans les Paramètres](#enable-computer-use) avant que Claude puisse contrôler votre écran. Sur macOS, vous devez également accorder les permissions Accessibilité et Enregistrement de l'écran.325Computer use est désactivé par défaut. [Activez-le dans les Paramètres](#enable-computer-use) avant que Claude puisse contrôler votre écran. Sur macOS, vous devez également accorder les permissions Accessibilité et Enregistrement de l'écran.

326 326 


362* **Windows** : le bouton prend effet immédiatement et la configuration est terminée362* **Windows** : le bouton prend effet immédiatement et la configuration est terminée

363* **macOS** : passez à l'étape suivante363* **macOS** : passez à l'étape suivante

364 364 

365Si vous ne voyez pas le bouton, vérifiez que vous êtes sur macOS ou Windows avec un forfait Pro ou Max, puis mettez à jour et redémarrez l'application.365Si vous ne voyez pas le bouton, vérifiez que vous êtes sur macOS ou Windows avec un forfait Pro, Max ou Ultra, puis mettez à jour et redémarrez l'application.

366 366 

367**3. Accorder les permissions macOS**367**3. Accorder les permissions macOS**

368 368 


562 562 

563#### Configurer Dispatch563#### Configurer Dispatch

564 564 

565Pour la configuration, l'appairage et les paramètres Dispatch, voir l'[article d'aide Dispatch](https://support.claude.com/en/articles/13947068). Dispatch nécessite un plan Pro ou Max et n'est pas disponible sur les plans Team ou Enterprise.565* **Plans** : Dispatch nécessite un plan Pro, Max ou Ultra et n'est pas disponible sur les plans Team ou Enterprise

566* **Configuration, appairage et paramètres Dispatch** : voir l'[article d'aide Dispatch](https://support.claude.com/en/articles/13947068)

566 567 

567Dispatch est l'une de plusieurs façons de travailler avec Claude quand vous êtes loin de votre terminal. Pour une comparaison avec les autres options, voir [Plateformes et intégrations](https://code.claude.com/docs/fr/platforms.md#work-when-you-are-away-from-your-terminal).568Dispatch est l'une de plusieurs façons de travailler avec Claude quand vous êtes loin de votre terminal. Pour une comparaison avec les autres options, voir [Plateformes et intégrations](https://code.claude.com/docs/fr/platforms.md#work-when-you-are-away-from-your-terminal).

568 569 


738 739 

739Ces configurations montrent les configurations courantes pour différents types de projets :740Ces configurations montrent les configurations courantes pour différents types de projets :

740 741 

741**Next.js**742> [tab] Next.js

742 743>

743Cette configuration exécute une application Next.js en utilisant Yarn sur le port 3000 :744> Cette configuration exécute une application Next.js en utilisant Yarn sur le port 3000 :

744 745>

745```json theme={null}746> ```json theme={null}

746{747> {

747 "version": "0.0.1",748> "version": "0.0.1",

748 "configurations": [749> "configurations": [

749 {750> {

750 "name": "web",751> "name": "web",

751 "runtimeExecutable": "yarn",752> "runtimeExecutable": "yarn",

752 "runtimeArgs": ["dev"],753> "runtimeArgs": ["dev"],

753 "port": 3000754> "port": 3000

754 }755> }

755 ]756> ]

756}757> }

757```758> ```

758 759 

759**Plusieurs serveurs**760> [tab] Plusieurs serveurs

760 761>

761Pour un monorepo avec un serveur frontend et API, définissez plusieurs configurations. Le frontend utilise `autoPort: true` pour qu'il choisisse un port libre si 3000 est pris, tandis que le serveur API nécessite le port 8080 exactement :762> Pour un monorepo avec un serveur frontend et API, définissez plusieurs configurations. Le frontend utilise `autoPort: true` pour qu'il choisisse un port libre si 3000 est pris, tandis que le serveur API nécessite le port 8080 exactement :

762 763>

763```json theme={null}764> ```json theme={null}

764{765> {

765 "version": "0.0.1",766> "version": "0.0.1",

766 "configurations": [767> "configurations": [

767 {768> {

768 "name": "frontend",769> "name": "frontend",

769 "runtimeExecutable": "npm",770> "runtimeExecutable": "npm",

770 "runtimeArgs": ["run", "dev"],771> "runtimeArgs": ["run", "dev"],

771 "cwd": "apps/web",772> "cwd": "apps/web",

772 "port": 3000,773> "port": 3000,

773 "autoPort": true774> "autoPort": true

774 },775> },

775 {776> {

776 "name": "api",777> "name": "api",

777 "runtimeExecutable": "npm",778> "runtimeExecutable": "npm",

778 "runtimeArgs": ["run", "start"],779> "runtimeArgs": ["run", "start"],

779 "cwd": "server",780> "cwd": "server",

780 "port": 8080,781> "port": 8080,

781 "env": { "NODE_ENV": "development" },782> "env": { "NODE_ENV": "development" },

782 "autoPort": false783> "autoPort": false

783 }784> }

784 ]785> ]

785}786> }

786```787> ```

787 788 

788**Script Node.js**789> [tab] Script Node.js

789 790>

790Pour exécuter un script Node.js directement au lieu d'utiliser une commande du gestionnaire de packages, utilisez le champ `program` :791> Pour exécuter un script Node.js directement au lieu d'utiliser une commande du gestionnaire de packages, utilisez le champ `program` :

791 792>

792```json theme={null}793> ```json theme={null}

793{794> {

794 "version": "0.0.1",795> "version": "0.0.1",

795 "configurations": [796> "configurations": [

796 {797> {

797 "name": "server",798> "name": "server",

798 "program": "server.js",799> "program": "server.js",

799 "args": ["--verbose"],800> "args": ["--verbose"],

800 "port": 4000801> "port": 4000

801 }802> }

802 ]803> ]

803}804> }

804```805> ```

805 806 

806## Configuration de l'environnement807## Configuration de l'environnement

807 808 


1327* **Workflows** : Desktop vérifie chaque nouveau [workflow](https://code.claude.com/docs/fr/workflows.md) avant son démarrage : pendant que Desktop est déconnecté, un nouveau workflow attend donc jusqu'à 10 minutes, puis échoue1328* **Workflows** : Desktop vérifie chaque nouveau [workflow](https://code.claude.com/docs/fr/workflows.md) avant son démarrage : pendant que Desktop est déconnecté, un nouveau workflow attend donc jusqu'à 10 minutes, puis échoue

1328* **Serveurs MCP** : les serveurs MCP que Claude Code démarre sur la machine distante ne passent pas par Desktop : Claude peut donc toujours appeler leurs outils. Les serveurs de `claude_desktop_config.json` en font partie uniquement si Desktop n'utilise pas son [client SSH intégré](#worktree-edits-while-disconnected). Sinon, ainsi que sur [certaines machines distantes Windows](#windows-remote-machines), Claude ne peut pas appeler leurs outils pendant que Desktop est déconnecté.1329* **Serveurs MCP** : les serveurs MCP que Claude Code démarre sur la machine distante ne passent pas par Desktop : Claude peut donc toujours appeler leurs outils. Les serveurs de `claude_desktop_config.json` en font partie uniquement si Desktop n'utilise pas son [client SSH intégré](#worktree-edits-while-disconnected). Sinon, ainsi que sur [certaines machines distantes Windows](#windows-remote-machines), Claude ne peut pas appeler leurs outils pendant que Desktop est déconnecté.

1329 1330 

1330> **Quand les modifications dans un worktree continuent de fonctionner**1331> [accordion] Quand les modifications dans un worktree continuent de fonctionner

1331>1332>

1332> Sur une machine distante Linux ou macOS, la vérification ne passe pas par Desktop : les modifications à l'intérieur du worktree continuent donc de fonctionner pendant que Desktop est déconnecté. Avant Claude Desktop v2.37337.0, cela ne s'applique qu'aux machines distantes Linux.1333> Sur une machine distante Linux ou macOS, la vérification ne passe pas par Desktop : les modifications à l'intérieur du worktree continuent donc de fonctionner pendant que Desktop est déconnecté. Avant Claude Desktop v2.37337.0, cela ne s'applique qu'aux machines distantes Linux.

1333>1334>


1368* **Mot de passe mémorisé** : un mot de passe que vous laissez Desktop mémoriser fonctionne également sans invite, mais pour une absence prolongée, préférez une clé détenue par votre agent SSH. Si les connexions avec ce mot de passe s'interrompent ou se bloquent, Desktop peut cesser de se reconnecter et vous attendre.1369* **Mot de passe mémorisé** : un mot de passe que vous laissez Desktop mémoriser fonctionne également sans invite, mais pour une absence prolongée, préférez une clé détenue par votre agent SSH. Si les connexions avec ce mot de passe s'interrompent ou se bloquent, Desktop peut cesser de se reconnecter et vous attendre.

1369* **Toute autre invite** : si la machine distante demande autre chose, comme un code à usage unique, vous pouvez recevoir une notification sur votre ordinateur. Cliquez sur la notification, ou envoyez un message dans la session, et Desktop affiche l'invite.1370* **Toute autre invite** : si la machine distante demande autre chose, comme un code à usage unique, vous pouvez recevoir une notification sur votre ordinateur. Cliquez sur la notification, ou envoyez un message dans la session, et Desktop affiche l'invite.

1370 1371 

1371> **Si un hôte de rebond demande une connexion, si la panne est longue, si une sortie manque ou si le processus a disparu**1372> [accordion] Si un hôte de rebond demande une connexion, si la panne est longue, si une sortie manque ou si le processus a disparu

1372>1373>

1373> * **Hôte de rebond, les notifications push s'arrêtent pendant votre absence** : cela peut se produire avec Desktop sous macOS ou Linux lorsque personne ne répond à la demande de connexion d'un hôte de rebond, par exemple une notification push sur un téléphone. Desktop cesse alors de se reconnecter tant que personne n'est devant votre ordinateur. Lorsque vous déverrouillez ou utilisez l'ordinateur, vous pouvez recevoir une nouvelle notification push, car Desktop peut réessayer. Après trois tentatives sans réponse, il attend que vous réessayiez ou envoyiez un message.1374> * **Hôte de rebond, les notifications push s'arrêtent pendant votre absence** : cela peut se produire avec Desktop sous macOS ou Linux lorsque personne ne répond à la demande de connexion d'un hôte de rebond, par exemple une notification push sur un téléphone. Desktop cesse alors de se reconnecter tant que personne n'est devant votre ordinateur. Lorsque vous déverrouillez ou utilisez l'ordinateur, vous pouvez recevoir une nouvelle notification push, car Desktop peut réessayer. Après trois tentatives sans réponse, il attend que vous réessayiez ou envoyiez un message.

1374> * **Hôte de rebond, les notifications push continuent d'arriver** : lorsque Desktop ne peut pas savoir que personne ne répond, comme avec Desktop sous Windows, il continue d'essayer tant qu'il a un processus à rejoindre, que ce processus s'exécute toujours ou non. Vous pouvez recevoir une nouvelle notification push à chaque tentative. Pour mettre fin aux tentatives, quittez Desktop, ce qui [peut vous faire perdre la tâche en cours](#reopen-a-session-after-you-quit-desktop).1375> * **Hôte de rebond, les notifications push continuent d'arriver** : lorsque Desktop ne peut pas savoir que personne ne répond, comme avec Desktop sous Windows, il continue d'essayer tant qu'il a un processus à rejoindre, que ce processus s'exécute toujours ou non. Vous pouvez recevoir une nouvelle notification push à chaque tentative. Pour mettre fin aux tentatives, quittez Desktop, ce qui [peut vous faire perdre la tâche en cours](#reopen-a-session-after-you-quit-desktop).


1592>1593>

1593> Les connexions à partir d'une commande nécessitent Claude Desktop v3.6556.0 ou une version ultérieure sur macOS ou Linux, avec une connexion via un compte Claude. Les administrateurs peuvent [distribuer des commandes à une équipe](#distribute-commands-to-your-team).1594> Les connexions à partir d'une commande nécessitent Claude Desktop v3.6556.0 ou une version ultérieure sur macOS ou Linux, avec une connexion via un compte Claude. Les administrateurs peuvent [distribuer des commandes à une équipe](#distribute-commands-to-your-team).

1594 1595 

1595Chaque entrée correspond à une connexion, avec un seul hôte à la fois. Desktop n'exécute la commande que lorsque vous créez la connexion ou [remplacez son hôte](#replace-the-host), et non à chaque connexion. Pour conserver deux machines à la fois, ajoutez une seconde entrée.1596Desktop exécute la commande uniquement lorsque vous créez la connexion ou que vous [créez une autre machine](#create-another-machine), et non à chaque connexion. Chaque entrée correspond à une connexion, qui pointe vers l'hôte que Desktop a enregistré en dernier à partir de la commande de l'entrée.

1596 1597 

1597> [!WARNING]1598> [!WARNING]

1598>1599>

1599> Desktop n'arrête ni ne supprime de machines. Chacune des suivantes continue de s'exécuter, et peut continuer à coûter de l'argent, jusqu'à ce que vous la supprimiez avec votre outil :1600> Desktop n'arrête ni ne supprime de machines. Chacune des suivantes continue de s'exécuter, et peut continuer à coûter de l'argent, jusqu'à ce que vous la supprimiez avec votre outil :

1600>1601>

1601> * Un hôte que vous avez remplacé1602> * Une machine vers laquelle une entrée pointait avant que vous n'en [créiez une autre](#create-another-machine)

1602> * L'hôte d'une entrée que vous avez supprimée du fichier, ou dont vous avez modifié l'`id`1603> * Les machines d'une entrée que vous avez retirée du fichier, ou dont vous avez modifié l'`id`

1603> * Une machine que votre commande a créée sans que Desktop enregistre son hôte, par exemple dans ces cas :1604> * Une machine que votre commande a créée sans que Desktop n'enregistre son hôte, par exemple dans ces cas :

1604> * La commande échoue ou dépasse le délai imparti1605> * La commande échoue ou dépasse le délai imparti

1605> * Desktop ne peut pas utiliser l'hôte affiché, une autre connexion l'utilise déjà, ou votre organisation ne l'autorise pas1606> * Desktop ne peut pas utiliser l'hôte affiché, une autre connexion l'utilise déjà, ou votre organisation ne l'autorise pas

1606> * Pendant l'exécution de la commande, vous l'annulez, supprimez son entrée, modifiez son `command` ou son `id`, ou quittez Desktop1607> * Pendant l'exécution de la commande, vous l'annulez, retirez son entrée, modifiez sa `command` ou son `id`, ou quittez Desktop

1607 1608 

1608L'exemple suivant ajoute une connexion nommée Dev box. Si le fichier n'existe pas, créez-le. S'il contient déjà des paramètres, ajoutez la clé à côté d'eux. La commande `acme-dev create` représente votre propre outil, et `~/project` est le dossier que Desktop sélectionne sur chaque machine créée par votre commande :1609L'exemple suivant ajoute une connexion nommée Dev box. Si le fichier n'existe pas, créez-le. S'il contient déjà des paramètres, ajoutez la clé à côté d'eux. La commande `acme-dev create` représente votre propre outil, et `~/project` est le dossier que Desktop sélectionne sur chaque machine créée par votre commande :

1609 1610 


1624 1625 

1625| Champ | Valeur |1626| Champ | Valeur |

1626| :- | :- |1627| :- | :- |

1627| `id` | Jusqu'à 64 lettres ASCII, chiffres, `.`, `_` et `-`, commençant par une lettre ou un chiffre. Utilisez un `id` qu'aucune autre entrée de `sshHostCommands` ou de [`sshConfigs`](#pre-configure-ssh-connections-for-your-team) ne possède. Desktop conserve l'hôte de la connexion sous cet identifiant : si vous le modifiez, la connexion repart sans hôte et l'ancienne machine continue de s'exécuter. |1628| `id` | Jusqu'à 64 lettres ASCII, chiffres, `.`, `_` et `-`, commençant par une lettre ou un chiffre. Utilisez un `id` qu'aucune autre entrée de `sshHostCommands` ou de [`sshConfigs`](#pre-configure-ssh-connections-for-your-team) ne possède. Desktop conserve l'hôte de la connexion sous celui-ci ; si vous le modifiez, la connexion repart donc sans hôte, ses machines continuent de fonctionner, et Desktop peut [toujours s'y connecter](#remove-an-entry). |

1628| `name` | Le nom de la connexion dans le sélecteur d'environnement, jusqu'à 200 caractères sur une seule ligne |1629| `name` | Le nom de la connexion dans le sélecteur d'environnement, jusqu'à 200 caractères sur une seule ligne |

1629| `command` | Un programme et ses arguments, comme décrit dans [Écrire la commande](#write-the-command) |1630| `command` | Un programme et ses arguments, comme décrit dans [Écrire la commande](#write-the-command) |

1630| `sshIdentityFile` | Chemin vers votre clé privée, comme `~/.ssh/id_ed25519`. Omettez-le pour utiliser votre configuration SSH ou votre agent SSH. |1631| `sshIdentityFile` | Chemin vers votre clé privée, comme `~/.ssh/id_ed25519`. Omettez-le pour utiliser votre configuration SSH ou votre agent SSH. |


1677 1678 

1678Laissez la vérification de clé d'hôte activée pour ces hôtes, et conservez un fichier `known_hosts` pour eux. Si `StrictHostKeyChecking` vaut `no` ou `accept-new` et que `UserKnownHostsFile` vaut également `/dev/null` ou `none`, rien n'enregistre la clé. Lorsque votre outil réutilise ensuite un nom, vous pouvez vous connecter à une autre machine sans avertissement.1679Laissez la vérification de clé d'hôte activée pour ces hôtes, et conservez un fichier `known_hosts` pour eux. Si `StrictHostKeyChecking` vaut `no` ou `accept-new` et que `UserKnownHostsFile` vaut également `/dev/null` ou `none`, rien n'enregistre la clé. Lorsque votre outil réutilise ensuite un nom, vous pouvez vous connecter à une autre machine sans avertissement.

1679 1680 

1680##### Remplacer l'hôte1681Un nom réutilisé pose également problème en l'absence de toute personne devant l'ordinateur, car Desktop se connecte à ces hôtes de lui-même. Par exemple, il transmet un message que vous avez envoyé alors que l'hôte était injoignable, dès que l'hôte répond. Même avec la vérification des clés d'hôte activée, le message peut atteindre la nouvelle machine portant ce nom dans les cas suivants ; [cessez donc d'utiliser une machine](#stop-using-a-machine) avant qu'elle ne soit supprimée :

1682 

1683* Vous, votre commande ou un autre programme avez ajouté la nouvelle clé à `known_hosts` ou supprimé la ligne de l'ancienne clé, comme le fait votre commande si elle ajoute des clés d'hôte

1684* Les machines de votre outil partagent une clé d'hôte

1685* Les machines de votre outil partagent une autorité de certification à laquelle `known_hosts` fait confiance

1686* Vous ou votre administrateur avez défini `KnownHostsCommand` ou `VerifyHostKeyDNS yes`, de sorte que SSH accepte des clés provenant d'ailleurs que de `known_hosts`

1687 

1688##### Créer une autre machine

1689 

1690Vos sessions sur les machines précédentes continuent de fonctionner après que vous avez sélectionné **Create another Dev box**, et les nouvelles sessions utilisent la nouvelle machine. Sélectionnez l'élément dans le sélecteur d'environnement pour créer une nouvelle machine ou pour en remplacer une qui a disparu. Sur la page de nouvelle session, le message indiquant que Desktop ne peut pas joindre l'hôte le propose également.

1681 1691 

1682Une fois que Dev box a un hôte, le sélecteur liste Dev box parmi vos connexions SSH, et **Create Dev box** devient **Replace Dev box's host**. Si cet élément n'est pas dans la liste, regardez sous **More**.1692* **Sessions sur les machines précédentes** : poursuivez-les depuis la barre latérale, car le sélecteur liste la machine actuelle de Dev box et non les précédentes. Desktop peut se connecter à leurs machines de lui-même, par exemple au démarrage de Desktop ; [cessez donc d'utiliser une machine](#stop-using-a-machine) lorsque vous n'en avez plus besoin.

1693* **Un hôte remplacé avant Claude Desktop v4.4212.0** : ces versions affichent **Replace Dev box's host** et cessent de se connecter à l'hôte remplacé. Pour poursuivre une session sur cet hôte, ouvrez la session, sélectionnez **Add SSH connection**, et enregistrez la connexion que Desktop remplit. Mettez à jour Desktop avant de remplacer un autre hôte.

1694* **Nouvelles sessions sur deux machines** : ajoutez une deuxième entrée à [`sshHostCommands`](#create-an-ssh-connection-from-a-command)

1695* **Un nouvel hôte qui ne répond pas encore** : laissez la page de nouvelle session ouverte jusqu'à 10 minutes pendant qu'elle continue d'essayer de se connecter. Si l'hôte ne répond toujours pas, sélectionnez **Create another Dev box** dans le message de la page.

1696* **Une autre machine peu après** : après plusieurs exécutions de la commande en moins d'une heure, confirmez chaque exécution supplémentaire dans la boîte de dialogue que Desktop ouvre, qui affiche la commande

1683 1697 

1684Sélectionnez-le lorsque la machine n'existe plus ou que vous en voulez une nouvelle. Sur la page de nouvelle session, le message indiquant que Desktop ne peut pas joindre l'hôte le propose également. Desktop exécute de nouveau la commande, et les nouvelles sessions utilisent le nouvel hôte.1698##### Cesser d'utiliser une machine

1685 1699 

1686* **Un nouvel hôte** : l'élément est grisé pendant 10 minutes après que Desktop a enregistré un hôte, car une nouvelle machine peut mettre un certain temps à démarrer. Tant qu'un nouvel hôte ne répond pas, la page de nouvelle session continue d'essayer de se connecter pendant ces 10 minutes.1700Pour empêcher Desktop de se connecter de lui-même à une machine créée par une commande, archivez toutes les sessions sur cette machine :

1687* **Sessions sur l'ancien hôte** : elles y restent, et Desktop ne se connecte pas à cet hôte, sauf si vous le rajoutez. Pour en poursuivre une, ouvrez la session et sélectionnez **Add SSH connection**. Desktop renseigne l'ancien hôte. Enregistrez-le comme connexion à part entière.1701 

17021. Trouvez les sessions de la machine dans la barre latérale. Le [panneau de détails](#see-session-details) d'une session affiche l'hôte sur lequel elle s'exécute.

17032. [Archivez chaque session](#archive-a-session), et laissez-la archivée.

17043. Si vous n'avez pas créé d'autre machine à partir de la même entrée `sshHostCommands` depuis la création de celle-ci, [créez-en une](#create-another-machine) ou [supprimez également l'entrée](#remove-an-entry). D'ici là, la machine est la connexion enregistrée de l'entrée, et Desktop peut s'y connecter lorsque vous ouvrez la page de nouvelle session avec cette connexion sélectionnée.

17054. Supprimez toute autre connexion SSH à la machine dans l'application, ou retirez son entrée [`sshConfigs`](#pre-configure-ssh-connections-for-your-team).

17065. Quittez et rouvrez Desktop, ce qui ferme sa connexion à la machine et met fin à ses tentatives pour la joindre.

17076. Supprimez la machine avec votre outil.

1708 

1709##### Supprimer une entrée

1710 

1711Après que vous avez retiré une entrée du fichier de paramètres ou modifié son `id`, les sessions sur ses machines restent, de sorte que Desktop peut toujours se connecter à ces machines. Il peut le faire sans personne devant l'ordinateur, par exemple pour rejoindre le processus en cours d'une session ou pour transmettre un message en attente d'envoi. Pour l'en empêcher, archivez les sessions, comme le décrit [Cesser d'utiliser une machine](#stop-using-a-machine).

1712 

1713Si vous êtes administrateur et avez retiré une entrée gérée, les sessions de vos utilisateurs restent également, et chaque utilisateur doit archiver les siennes. Pour bloquer vous-même les machines de l'entrée, définissez une [`sshHostAllowlist`](#restrict-which-ssh-hosts-users-can-connect-to) qui correspond aux hôtes dont vos utilisateurs ont encore besoin et non aux noms d'hôte des machines. Vous ne pouvez le faire que lorsqu'un motif permet de distinguer les deux.

1688 1714 

1689##### Distribuer des commandes à votre équipe1715##### Distribuer des commandes à votre équipe

1690 1716 


1711* **L'`id`** : si l'entrée `sshHostCommands` d'un utilisateur possède votre `id`, seule la vôtre fonctionne. Si une autre connexion SSH le possède, comme une connexion dans les `sshConfigs` d'un utilisateur, votre entrée est grisée. Choisissez un `id` que les utilisateurs ont peu de chances de choisir.1737* **L'`id`** : si l'entrée `sshHostCommands` d'un utilisateur possède votre `id`, seule la vôtre fonctionne. Si une autre connexion SSH le possède, comme une connexion dans les `sshConfigs` d'un utilisateur, votre entrée est grisée. Choisissez un `id` que les utilisateurs ont peu de chances de choisir.

1712* **Le programme** : indiquez son chemin complet, car Desktop recherche un nom seul dans le `PATH` propre à chaque utilisateur. Le programme s'exécute sous l'utilisateur, avec les variables que son shell de connexion exporte.1738* **Le programme** : indiquez son chemin complet, car Desktop recherche un nom seul dans le `PATH` propre à chaque utilisateur. Le programme s'exécute sous l'utilisateur, avec les variables que son shell de connexion exporte.

1713* **Les entrées propres aux utilisateurs** : Desktop traite l'entrée d'un utilisateur comme un [hook](https://code.claude.com/docs/fr/hooks.md), car tous deux exécutent un programme sur l'ordinateur. Pour n'autoriser que vos entrées, définissez [`strictPluginOnlyCustomization`](https://code.claude.com/docs/fr/settings-reference#strictpluginonlycustomization) sur `["hooks"]`, ou ajoutez `"hooks"` à sa liste. Vous bloquez également les hooks Claude Code provenant des paramètres utilisateur, projet et locaux, sans moyen de les conserver. Si vous définissez plutôt cette clé ou [`allowManagedHooksOnly`](https://code.claude.com/docs/fr/settings-reference#allowmanagedhooksonly) sur `true`, vous bloquez davantage, comme l'indique l'entrée de chaque clé.1739* **Les entrées propres aux utilisateurs** : Desktop traite l'entrée d'un utilisateur comme un [hook](https://code.claude.com/docs/fr/hooks.md), car tous deux exécutent un programme sur l'ordinateur. Pour n'autoriser que vos entrées, définissez [`strictPluginOnlyCustomization`](https://code.claude.com/docs/fr/settings-reference#strictpluginonlycustomization) sur `["hooks"]`, ou ajoutez `"hooks"` à sa liste. Vous bloquez également les hooks Claude Code provenant des paramètres utilisateur, projet et locaux, sans moyen de les conserver. Si vous définissez plutôt cette clé ou [`allowManagedHooksOnly`](https://code.claude.com/docs/fr/settings-reference#allowmanagedhooksonly) sur `true`, vous bloquez davantage, comme l'indique l'entrée de chaque clé.

1714* **Toutes les entrées** : pour désactiver également vos entrées, définissez [`disableAllHooks`](https://code.claude.com/docs/fr/settings-reference#disableallhooks) dans les paramètres gérés. Si vous définissez [`disableDesktopLocalSessions`](https://code.claude.com/docs/fr/settings-reference#disabledesktoplocalsessions), ou un `sshHostAllowlist` qui n'autorise aucun hôte, le sélecteur ne liste aucun élément **Create** ou **Replace**.1740* **Toutes les entrées** : pour désactiver également vos entrées, définissez [`disableAllHooks`](https://code.claude.com/docs/fr/settings-reference#disableallhooks) dans les paramètres gérés. Si vous définissez [`disableDesktopLocalSessions`](https://code.claude.com/docs/fr/settings-reference#disabledesktoplocalsessions), ou une `sshHostAllowlist` qui n'autorise aucun hôte, le sélecteur ne liste aucun élément **Create** ni **Create another**.

1715* **Où les verrous comptent** : pour ces entrées, Desktop lit `allowManagedHooksOnly`, `strictPluginOnlyCustomization` et `disableAllHooks` à partir des paramètres gérés par le serveur et du fichier ou de la stratégie propre à l'ordinateur, et applique le résultat le plus strict. Toutes les entrées restent grisées tant que Desktop n'a pas vérifié sur claude.ai la présence de paramètres gérés par le serveur, même si votre organisation n'en a aucun.1741* **Où les verrous comptent** : pour ces entrées, Desktop lit `allowManagedHooksOnly`, `strictPluginOnlyCustomization` et `disableAllHooks` à partir des paramètres gérés par le serveur et du fichier ou de la stratégie propre à l'ordinateur, et applique le résultat le plus strict. Toutes les entrées restent grisées tant que Desktop n'a pas vérifié sur claude.ai la présence de paramètres gérés par le serveur, même si votre organisation n'en a aucun.

1716* **Hôtes autorisés** : si vous définissez [`sshHostAllowlist`](#restrict-which-ssh-hosts-users-can-connect-to), assurez-vous qu'un motif correspond à chaque nom d'hôte que votre outil affiche, et omettez `user@` du motif. Desktop ne vérifie le nom affiché qu'après l'exécution de la commande : une machine que la liste refuse existe donc déjà, et l'utilisateur doit la supprimer avec votre outil. À chaque connexion, le `HostName` résolu doit également correspondre.1742* **Hôtes autorisés** : si vous définissez [`sshHostAllowlist`](#restrict-which-ssh-hosts-users-can-connect-to), assurez-vous qu'un motif correspond à chaque nom d'hôte que votre outil affiche, et omettez `user@` du motif. Desktop ne vérifie le nom affiché qu'après l'exécution de la commande : une machine que la liste refuse existe donc déjà, et l'utilisateur doit la supprimer avec votre outil. À chaque connexion, le `HostName` résolu doit également correspondre.

1717 1743 


1719 1745 

1720##### Si une commande est absente ou grisée1746##### Si une commande est absente ou grisée

1721 1747 

1722Le sélecteur d'environnement ne liste aucun élément **Create** ou **Replace** dans ces cas :1748Le sélecteur d'environnement ne liste aucun élément **Create** ni **Create another** dans ces cas :

1723 1749 

1724* **Le fichier** : `~/.claude/settings.json` contient [du JSON non valide ou une valeur que le schéma rejette](https://code.claude.com/docs/fr/settings.md#fix-a-broken-settings-file), vous avez mal orthographié la clé, ou vous l'avez placée dans les paramètres d'un projet. Corrigez le fichier.1750* **Le fichier** : `~/.claude/settings.json` contient [du JSON non valide ou une valeur que le schéma rejette](https://code.claude.com/docs/fr/settings.md#fix-a-broken-settings-file), vous avez mal orthographié la clé, ou vous l'avez placée dans les paramètres d'un projet. Corrigez le fichier.

1725* **Plateforme et compte** : vous utilisez Windows, ou un [fournisseur tiers](https://code.claude.com/docs/fr/third-party-integrations.md) au lieu d'un compte Claude. Ajoutez vous-même chaque hôte comme [connexion SSH](#ssh-sessions).1751* **Plateforme et compte** : vous utilisez Windows, ou un [fournisseur tiers](https://code.claude.com/docs/fr/third-party-integrations.md) au lieu d'un compte Claude. Ajoutez vous-même chaque hôte comme [connexion SSH](#ssh-sessions).


1730 1756 

1731* **Une erreur dans l'entrée** : corrigez le champ ou la commande que le message nomme. Si l'`id` est déjà utilisé, donnez-en un autre à l'entrée.1757* **Une erreur dans l'entrée** : corrigez le champ ou la commande que le message nomme. Si l'`id` est déjà utilisé, donnez-en un autre à l'entrée.

1732* **Un fichier de paramètres défectueux** : tant que votre propre fichier de paramètres est défectueux, les entrées de votre administrateur peuvent être grisées, avec un message qui nomme le fichier. [Corrigez le fichier](https://code.claude.com/docs/fr/settings.md#fix-a-broken-settings-file).1758* **Un fichier de paramètres défectueux** : tant que votre propre fichier de paramètres est défectueux, les entrées de votre administrateur peuvent être grisées, avec un message qui nomme le fichier. [Corrigez le fichier](https://code.claude.com/docs/fr/settings.md#fix-a-broken-settings-file).

1733* **Un nouvel hôte** : vous pouvez [remplacer un hôte](#replace-the-host) une fois qu'il a 10 minutes.1759* **Un nouvel hôte** : [**Create another**](#create-another-machine) est grisé pendant une minute après que Desktop a enregistré un hôte. Sélectionnez-le une fois cette minute écoulée. Avant Claude Desktop v4.4212.0, **Replace Dev box's host** est grisé pendant 10 minutes.

1734* **Les hooks sont désactivés ou restreints** : vos propres entrées ne fonctionnent que là où vos propres hooks peuvent s'exécuter. Supprimez `disableAllHooks` de vos paramètres, ou contactez votre administrateur.1760* **Les hooks sont désactivés ou restreints** : vos propres entrées ne fonctionnent que là où vos propres hooks peuvent s'exécuter. Supprimez `disableAllHooks` de vos paramètres, ou contactez votre administrateur.

1735* **Les paramètres sont encore en cours de chargement** : toutes les entrées sont grisées tant que Desktop n'a pas chargé les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) de votre organisation, généralement quelques secondes après le lancement. Si les entrées restent grisées, vérifiez votre connexion à claude.ai.1761* **Les paramètres sont encore en cours de chargement** : toutes les entrées sont grisées tant que Desktop n'a pas chargé les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) de votre organisation, généralement quelques secondes après le lancement. Si les entrées restent grisées, vérifiez votre connexion à claude.ai.

1736 1762 


1946 1972 

1947Remplacez l'espace réservé par l'ID de votre organisation claude.ai, affiché dans les [paramètres d'administration de claude.ai](https://claude.ai/admin-settings/organization). Il s'agit du même ID que celui accepté par le paramètre [`forceLoginOrgUUID`](https://code.claude.com/docs/fr/settings-reference#forceloginorguuid) de Claude Code. Pour des exemples macOS et Windows qui définissent cette clé, voir [Déployer la politique Claude Desktop](https://claude.com/docs/cowork/hipaa-setup#deploy-the-claude-desktop-policy) dans le guide Cowork pour les organisations compatibles HIPAA.1973Remplacez l'espace réservé par l'ID de votre organisation claude.ai, affiché dans les [paramètres d'administration de claude.ai](https://claude.ai/admin-settings/organization). Il s'agit du même ID que celui accepté par le paramètre [`forceLoginOrgUUID`](https://code.claude.com/docs/fr/settings-reference#forceloginorguuid) de Claude Code. Pour des exemples macOS et Windows qui définissent cette clé, voir [Déployer la politique Claude Desktop](https://claude.com/docs/cowork/hipaa-setup#deploy-the-claude-desktop-policy) dans le guide Cowork pour les organisations compatibles HIPAA.

1948 1974 

1975> [!WARNING]

1976>

1977> Vérifiez la valeur de `forceLoginOrgUUID` avant de la déployer. Si l'ID n'est pas celui de votre organisation, les personnes de votre organisation ne peuvent pas utiliser Claude Desktop, sauf si elles appartiennent également à une organisation avec cet ID. Pour rétablir la situation, déployez l'ID correct et demandez-leur de redémarrer Claude Desktop.

1978 

1949Si vous définissez `forceLoginMethod` et `forceLoginOrgUUID` dans les [paramètres gérés](https://code.claude.com/docs/fr/managed-settings.md) de Claude Code, vous ne modifiez pas l'écran de connexion de Claude Desktop.1979Si vous définissez `forceLoginMethod` et `forceLoginOrgUUID` dans les [paramètres gérés](https://code.claude.com/docs/fr/managed-settings.md) de Claude Code, vous ne modifiez pas l'écran de connexion de Claude Desktop.

1950 1980 

1951### Exigences d'accès réseau1981### Exigences d'accès réseau


2055| `--model sonnet` | Sélecteur de modèle dans la ligne sous la zone de saisie |2085| `--model sonnet` | Sélecteur de modèle dans la ligne sous la zone de saisie |

2056| `--resume`, `--continue` | Cliquez sur une session dans la barre latérale, ou tapez `/resume` dans la zone de saisie pour reprendre une session que vous avez démarrée à partir de la CLI |2086| `--resume`, `--continue` | Cliquez sur une session dans la barre latérale, ou tapez `/resume` dans la zone de saisie pour reprendre une session que vous avez démarrée à partir de la CLI |

2057| `--permission-mode` | Sélecteur de mode dans la ligne sous la zone de saisie |2087| `--permission-mode` | Sélecteur de mode dans la ligne sous la zone de saisie |

2058| `--dangerously-skip-permissions` | Mode Contourner les permissions. Sur les plans Pro et Max, activez « Autoriser le mode de contournement des permissions » dans **Paramètres > Code** ou **Paramètres > Claude Code** ; sur les plans Team et Enterprise, la politique organisationnelle le contrôle |2088| `--dangerously-skip-permissions` | Mode Contourner les permissions. Sur les plans Pro, Max et Ultra, activez « Autoriser le mode de contournement des permissions » dans **Paramètres > Code** ou **Paramètres > Claude Code** ; sur les plans Team et Enterprise, la politique organisationnelle le contrôle |

2059| `--add-dir` | [Ajouter des dossiers à une session](#add-folders-to-a-session) dans les sessions locales et SSH, ou sélectionner [plusieurs dépôts](#run-long-running-tasks-in-the-cloud) dans une session cloud |2089| `--add-dir` | [Ajouter des dossiers à une session](#add-folders-to-a-session) dans les sessions locales et SSH, ou sélectionner [plusieurs dépôts](#run-long-running-tasks-in-the-cloud) dans une session cloud |

2060| `--allowedTools`, `--disallowedTools` | Aucun équivalent par session. Les règles de permission dans les [fichiers de paramètres](https://code.claude.com/docs/fr/settings.md) s'appliquent toujours. |2090| `--allowedTools`, `--disallowedTools` | Aucun équivalent par session. Les règles de permission dans les [fichiers de paramètres](https://code.claude.com/docs/fr/settings.md) s'appliquent toujours. |

2061| `--verbose` | [Mode d'affichage Verbose](#switch-view-modes) |2091| `--verbose` | [Mode d'affichage Verbose](#switch-view-modes) |


2091 2121 

2092| Fonctionnalité | CLI | Desktop |2122| Fonctionnalité | CLI | Desktop |

2093| - | - | - |2123| - | - | - |

2094| Modes de permission | Tous les modes y compris `dontAsk` | Manuel, Accepter les modifications, Plan et Auto. Le mode Contourner les permissions apparaît dans le sélecteur de mode une fois activé : via le bouton bascule Paramètres sur les plans Pro et Max, ou via la politique organisationnelle sur les plans Team et Enterprise |2124| Modes de permission | Tous les modes y compris `dontAsk` | Manuel, Accepter les modifications, Plan et Auto. Le mode Contourner les permissions apparaît dans le sélecteur de mode une fois activé : via le bouton bascule Paramètres sur les plans Pro, Max et Ultra, ou via la politique organisationnelle sur les plans Team et Enterprise |

2095| [Fournisseurs tiers](https://code.claude.com/docs/fr/third-party-integrations.md) | Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry | API d'Anthropic par défaut. Pour le routage par passerelle, voir [connecter l'application de bureau à une passerelle](https://code.claude.com/docs/fr/llm-gateway-connect.md#desktop-app). Pour exécuter l'onglet Code sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou une passerelle LLM auto-hébergée, voir [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview). |2125| [Fournisseurs tiers](https://code.claude.com/docs/fr/third-party-integrations.md) | Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry | API d'Anthropic par défaut. Pour le routage par passerelle, voir [connecter l'application de bureau à une passerelle](https://code.claude.com/docs/fr/llm-gateway-connect.md#desktop-app). Pour exécuter l'onglet Code sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou une passerelle LLM auto-hébergée, voir [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview). |

2096| [Serveurs MCP](https://code.claude.com/docs/fr/mcp.md) | Configurer dans les fichiers de paramètres | Interface utilisateur Connecteurs pour les sessions locales et SSH, ou fichiers de paramètres |2126| [Serveurs MCP](https://code.claude.com/docs/fr/mcp.md) | Configurer dans les fichiers de paramètres | Interface utilisateur Connecteurs pour les sessions locales et SSH, ou fichiers de paramètres |

2097| [Plugins](https://code.claude.com/docs/fr/plugins/overview.md) | Commande `/plugin` | Interface utilisateur du gestionnaire de plugins |2127| [Plugins](https://code.claude.com/docs/fr/plugins/overview.md) | Commande `/plugin` | Interface utilisateur du gestionnaire de plugins |


2153Si vous voyez `Error 403: Forbidden` ou d'autres échecs d'authentification lors de l'utilisation de l'onglet Code :2183Si vous voyez `Error 403: Forbidden` ou d'autres échecs d'authentification lors de l'utilisation de l'onglet Code :

2154 2184 

21551. Déconnectez-vous puis reconnectez-vous depuis le menu de l'application. C'est la solution la plus courante.21851. Déconnectez-vous puis reconnectez-vous depuis le menu de l'application. C'est la solution la plus courante.

21562. Vérifiez que vous disposez d'un abonnement payant actif : Pro, Max, Team ou Enterprise.21862. Vérifiez que vous disposez d'un abonnement payant actif : Pro, Max, Ultra, Team ou Enterprise.

21573. Si la CLI fonctionne mais pas Desktop, quittez complètement l'application de bureau (ne vous contentez pas de fermer la fenêtre), puis rouvrez-la et reconnectez-vous.21873. Si la CLI fonctionne mais pas Desktop, quittez complètement l'application de bureau (ne vous contentez pas de fermer la fenêtre), puis rouvrez-la et reconnectez-vous.

21584. Vérifiez votre connexion internet et vos paramètres de proxy.21884. Vérifiez votre connexion internet et vos paramètres de proxy.

2159 2189 

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Le volet Simulateur iOS est en bêta publique dans Claude Code Desktop sur macOS. Il est disponible sur les plans Pro, Max, Team et Enterprise, sauf dans les organisations Enterprise qui ont une configuration HIPAA activée.11> Le volet Simulateur iOS est en bêta publique dans Claude Code Desktop sur macOS. Il est disponible sur les plans Pro, Max, Ultra, Team et Enterprise, sauf dans les organisations Enterprise qui ont une configuration HIPAA activée.

12 12 

13Le volet Simulateur iOS affiche votre application en cours d'exécution dans le Simulateur iOS d'Apple à côté de votre conversation dans Claude Code Desktop. Lorsque Claude crée, installe, lance ou vérifie votre application dans un simulateur, le volet s'ouvre automatiquement et diffuse l'écran de l'appareil en direct. Utilisez-le pour regarder Claude exécuter et tester votre application, ou pour parcourir l'application vous-même en appuyant sur les éléments tandis que Claude continue à travailler.13Le volet Simulateur iOS affiche votre application en cours d'exécution dans le Simulateur iOS d'Apple à côté de votre conversation dans Claude Code Desktop. Lorsque Claude crée, installe, lance ou vérifie votre application dans un simulateur, le volet s'ouvre automatiquement et diffuse l'écran de l'appareil en direct. Utilisez-le pour regarder Claude exécuter et tester votre application, ou pour parcourir l'application vous-même en appuyant sur les éléments tandis que Claude continue à travailler.

14 14 

Details

6 6 

7> Installez l'application de bureau Claude, ouvrez l'onglet Code et commencez votre première session Claude Code sur un dossier de projet sur votre ordinateur.7> Installez l'application de bureau Claude, ouvrez l'onglet Code et commencez votre première session Claude Code sur un dossier de projet sur votre ordinateur.

8 8 

9L'application de bureau vous donne accès à Claude Code avec une interface graphique. Vous pouvez demander à Claude de travailler sur le code dans un dossier sur votre ordinateur et examiner ses modifications sans utiliser un terminal.9L'application de bureau vous donne accès à Claude Code avec une interface graphique. Vous pouvez demander à Claude de travailler sur le code dans un dossier sur votre ordinateur, puis examiner vous-même les modifications, sans utiliser de terminal.

10 10 

11Claude Code se trouve dans l'onglet **Code** en haut de la barre latérale de l'application. Cette page vous guide dans l'installation de l'application et le démarrage de votre première session à cet endroit. Claude Code nécessite un [abonnement Pro, Max, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=desktop_quickstart_pricing).11Claude Code se trouve dans l'onglet **Code** en haut de la barre latérale de l'application. Cette page vous guide dans l'installation de l'application et le démarrage de votre première session à cet endroit. Claude Code nécessite un [abonnement Pro, Max, Ultra, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=desktop_quickstart_pricing).

12 12 

13> **[Télécharger pour macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs)**13> [card] [Télécharger pour macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs)

14>14>

15> Build universel pour Intel et Apple Silicon15> Build universel pour Intel et Apple Silicon

16 16 

17> **[Télécharger pour Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)**17> [card] [Télécharger pour Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)

18>18>

19> Pour les processeurs x6419> Pour les processeurs x64

20 20 

21> **[Obtenir Claude pour Linux (bêta)](https://code.claude.com/docs/fr/desktop-linux.md)**21> [card] [Obtenir Claude pour Linux (bêta)](https://code.claude.com/docs/fr/desktop-linux.md)

22>22>

23> apt ou .deb pour Ubuntu et Debian23> apt ou .deb pour Ubuntu et Debian

24 24 

devcontainer.md +1 −1

Details

17> Utilisez les dev containers uniquement lors du développement avec des référentiels de confiance, et surveillez les activités de Claude.17> Utilisez les dev containers uniquement lors du développement avec des référentiels de confiance, et surveillez les activités de Claude.

18> Évitez de monter les secrets de l'hôte tels que `~/.ssh` ou les fichiers d'identifiants cloud dans le conteneur ; préférez les jetons limités au référentiel ou à courte durée de vie.18> Évitez de monter les secrets de l'hôte tels que `~/.ssh` ou les fichiers d'identifiants cloud dans le conteneur ; préférez les jetons limités au référentiel ou à courte durée de vie.

19 19 

20> **Comment les dev containers fonctionnent avec votre éditeur**20> [accordion] Comment les dev containers fonctionnent avec votre éditeur

21>21>

22> ![Diagramme montrant un éditeur sur l'hôte se connectant à un dev container Docker. Claude Code, le terminal et les outils de compilation s'exécutent à l'intérieur du conteneur. Le référentiel hôte est monté en bind dans le conteneur en tant qu'espace de travail.](https://mintcdn.com/claude-code/YvJyjZfd9yMihr0i/images/devcontainer-architecture.svg?fit=max\&auto=format\&n=YvJyjZfd9yMihr0i\&q=85\&s=9017b1d16a446c6cc37ba562f35b9aae)22> ![Diagramme montrant un éditeur sur l'hôte se connectant à un dev container Docker. Claude Code, le terminal et les outils de compilation s'exécutent à l'intérieur du conteneur. Le référentiel hôte est monté en bind dans le conteneur en tant qu'espace de travail.](https://mintcdn.com/claude-code/YvJyjZfd9yMihr0i/images/devcontainer-architecture.svg?fit=max\&auto=format\&n=YvJyjZfd9yMihr0i\&q=85\&s=9017b1d16a446c6cc37ba562f35b9aae)

23>23>

env-vars.md +41 −41

Details

23 23 

24Définissez la variable avant de lancer `claude` :24Définissez la variable avant de lancer `claude` :

25 25 

26**macOS, Linux, WSL**26> [tab] macOS, Linux, WSL

27 27>

28```bash theme={null}28> ```bash theme={null}

29export API_TIMEOUT_MS="1200000"29> export API_TIMEOUT_MS="1200000"

30claude30> claude

31```31> ```

32 32>

33Pour la définir pour chaque session, ajoutez la ligne `export` à `~/.bashrc`, `~/.zshrc`, ou le fichier de profil de votre shell.33> Pour la définir pour chaque session, ajoutez la ligne `export` à `~/.bashrc`, `~/.zshrc`, ou le fichier de profil de votre shell.

34 

35**Windows PowerShell**

36 

37```powershell theme={null}

38$env:API_TIMEOUT_MS = "1200000"

39claude

40```

41 

42Pour la définir pour chaque session, exécutez `[Environment]::SetEnvironmentVariable("API_TIMEOUT_MS", "1200000", "User")` et ouvrez un nouveau terminal.

43 

44**Windows CMD**

45 34 

46```batch theme={null}35> [tab] Windows PowerShell

47set API_TIMEOUT_MS=120000036>

48claude37> ```powershell theme={null}

49```38> $env:API_TIMEOUT_MS = "1200000"

39> claude

40> ```

41>

42> Pour la définir pour chaque session, exécutez `[Environment]::SetEnvironmentVariable("API_TIMEOUT_MS", "1200000", "User")` et ouvrez un nouveau terminal.

50 43 

51Pour la définir pour chaque session, exécutez `setx API_TIMEOUT_MS "1200000"` et ouvrez un nouveau terminal.44> [tab] Windows CMD

45>

46> ```batch theme={null}

47> set API_TIMEOUT_MS=1200000

48> claude

49> ```

50>

51> Pour la définir pour chaque session, exécutez `setx API_TIMEOUT_MS "1200000"` et ouvrez un nouveau terminal.

52 52 

53La ligne d'assignation n'affiche rien en cas de succès. Pour confirmer que la variable est définie, affichez-la dans le même shell :53La ligne d'assignation n'affiche rien en cas de succès. Pour confirmer que la variable est définie, affichez-la dans le même shell :

54 54 

55**macOS, Linux, WSL**55> [tab] macOS, Linux, WSL

56 56>

57```bash theme={null}57> ```bash theme={null}

58echo $API_TIMEOUT_MS58> echo $API_TIMEOUT_MS

59```59> ```

60 

61**Windows PowerShell**

62 

63```powershell theme={null}

64echo $env:API_TIMEOUT_MS

65```

66 60 

67**Windows CMD**61> [tab] Windows PowerShell

62>

63> ```powershell theme={null}

64> echo $env:API_TIMEOUT_MS

65> ```

68 66 

69```batch theme={null}67> [tab] Windows CMD

70echo %API_TIMEOUT_MS%68>

71```69> ```batch theme={null}

70> echo %API_TIMEOUT_MS%

71> ```

72 72 

73### Définir les variables dans les fichiers de paramètres73### Définir les variables dans les fichiers de paramètres

74 74 


130 130 

131| Variable | Objectif |131| Variable | Objectif |

132| :- | :- |132| :- | :- |

133| `ANTHROPIC_API_KEY` | Clé API envoyée dans l'en-tête `X-Api-Key`. Lorsqu'elle est définie, cette clé est utilisée à la place de votre abonnement Claude Pro, Max, Team ou Enterprise, même si vous êtes connecté. En mode non interactif (`-p`), la clé est toujours utilisée lorsqu'elle est présente. En mode interactif, il vous est demandé d'approuver la clé une fois avant qu'elle ne remplace votre abonnement. Pour utiliser plutôt votre abonnement, exécutez `unset ANTHROPIC_API_KEY` |133| `ANTHROPIC_API_KEY` | Clé API envoyée dans l'en-tête `X-Api-Key`. Lorsqu'elle est définie, cette clé est utilisée à la place de votre abonnement Claude Pro, Max, Ultra, Team ou Enterprise, même si vous êtes connecté. En mode non interactif (`-p`), la clé est toujours utilisée lorsqu'elle est présente. En mode interactif, il vous est demandé d'approuver la clé une fois avant qu'elle ne remplace votre abonnement. Pour utiliser plutôt votre abonnement, exécutez `unset ANTHROPIC_API_KEY` |

134| `ANTHROPIC_AUTH_TOKEN` | Valeur personnalisée pour l'en-tête `Authorization` (la valeur définie ici sera préfixée par `Bearer `) |134| `ANTHROPIC_AUTH_TOKEN` | Valeur personnalisée pour l'en-tête `Authorization` (la valeur définie ici sera préfixée par `Bearer `) |

135| `ANTHROPIC_AWS_API_KEY` | Clé API d'espace de travail pour [Claude Platform on AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md), générée dans la console AWS. Envoyée en tant que `x-api-key` et prioritaire sur AWS SigV4 |135| `ANTHROPIC_AWS_API_KEY` | Clé API d'espace de travail pour [Claude Platform on AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md), générée dans la console AWS. Envoyée en tant que `x-api-key` et prioritaire sur AWS SigV4 |

136| `ANTHROPIC_AWS_BASE_URL` | Remplace l'URL de l'endpoint [Claude Platform on AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md). À utiliser pour des régions personnalisées ou lors du routage via une [passerelle LLM](https://code.claude.com/docs/fr/llm-gateway). Par défaut : `https://aws-external-anthropic.{region}.api.aws`. Claude Code résout la région avec la [même priorité que sur Amazon Bedrock](https://code.claude.com/docs/fr/amazon-bedrock.md#3-configure-claude-code) |136| `ANTHROPIC_AWS_BASE_URL` | Remplace l'URL de l'endpoint [Claude Platform on AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md). À utiliser pour des régions personnalisées ou lors du routage via une [passerelle LLM](https://code.claude.com/docs/fr/llm-gateway). Par défaut : `https://aws-external-anthropic.{region}.api.aws`. Claude Code résout la région avec la [même priorité que sur Amazon Bedrock](https://code.claude.com/docs/fr/amazon-bedrock.md#3-configure-claude-code) |


575* [Envoyer des messages à des sessions au-delà de cette machine](https://code.claude.com/docs/fr/cross-session-messaging.md#message-sessions-on-other-machines) lorsque [Remote Control](https://code.claude.com/docs/fr/remote-control.md#requirements) n'est pas disponible. La messagerie entre sessions sur cette machine fonctionne lorsque la récupération est désactivée575* [Envoyer des messages à des sessions au-delà de cette machine](https://code.claude.com/docs/fr/cross-session-messaging.md#message-sessions-on-other-machines) lorsque [Remote Control](https://code.claude.com/docs/fr/remote-control.md#requirements) n'est pas disponible. La messagerie entre sessions sur cette machine fonctionne lorsque la récupération est désactivée

576* Exécuter [`claude import` ou la commande `/import`](https://code.claude.com/docs/fr/cli-reference#cli-commands)576* Exécuter [`claude import` ou la commande `/import`](https://code.claude.com/docs/fr/cli-reference#cli-commands)

577* Exécuter [`/skill-doctor`](https://code.claude.com/docs/fr/skills#find-unused-skills) ou ouvrir son rapport dans l'onglet **Stats** de `/plugin`577* Exécuter [`/skill-doctor`](https://code.claude.com/docs/fr/skills#find-unused-skills) ou ouvrir son rapport dans l'onglet **Stats** de `/plugin`

578* Exécuter [`/restart`](https://code.claude.com/docs/fr/commands) avec les forfaits Pro et Max578* Exécuter [`/restart`](https://code.claude.com/docs/fr/commands) avec les forfaits Pro, Max et Ultra

579* Synchroniser les [skills](https://code.claude.com/docs/fr/skills.md#where-synced-skills-load) et les [plugins](https://code.claude.com/docs/fr/plugins/loading.md#synced-plugins) activés pour votre compte claude.ai dans vos sessions de terminal579* Synchroniser les [skills](https://code.claude.com/docs/fr/skills.md#where-synced-skills-load) et les [plugins](https://code.claude.com/docs/fr/plugins/loading.md#synced-plugins) activés pour votre compte claude.ai dans vos sessions de terminal

580* Activer le [mod You should know](https://code.claude.com/docs/fr/interactive-mode.md#you-should-know-suggestions)580* Activer le [mod You should know](https://code.claude.com/docs/fr/interactive-mode.md#you-should-know-suggestions)

581* Utiliser [l'outil advisor](https://code.claude.com/docs/fr/advisor.md#requirements)581* Utiliser [l'outil advisor](https://code.claude.com/docs/fr/advisor.md#requirements)

errors.md +5 −5

Details

830* Dans l'onglet Code de l'[application de bureau](https://code.claude.com/docs/fr/desktop.md), la carte de limite de session offre une case à cocher **Auto-continue when limits reset**. La carte de limite hebdomadaire ne l'offre pas. Quand elle est cochée, l'application de bureau réessaie le tour interrompu après la réinitialisation et affiche l'heure de nouvelle tentative sur la carte. La case à cocher de l'application de bureau et le paramètre **Continue automatically at usage limit** de la CLI dans `/config` sont séparés, donc désactivez chacun indépendamment.830* Dans l'onglet Code de l'[application de bureau](https://code.claude.com/docs/fr/desktop.md), la carte de limite de session offre une case à cocher **Auto-continue when limits reset**. La carte de limite hebdomadaire ne l'offre pas. Quand elle est cochée, l'application de bureau réessaie le tour interrompu après la réinitialisation et affiche l'heure de nouvelle tentative sur la carte. La case à cocher de l'application de bureau et le paramètre **Continue automatically at usage limit** de la CLI dans `/config` sont séparés, donc désactivez chacun indépendamment.

831* Pour la limite Opus ou Sonnet, exécutez `/model` et basculez vers un modèle en dehors de cette famille pour continuer à travailler. Chaque modèle a son propre cache de prompt, donc la requête suivante relit toute la conversation sans accès au cache ; consultez [Changement de modèles](https://code.claude.com/docs/fr/prompt-caching.md#switching-models)831* Pour la limite Opus ou Sonnet, exécutez `/model` et basculez vers un modèle en dehors de cette famille pour continuer à travailler. Chaque modèle a son propre cache de prompt, donc la requête suivante relit toute la conversation sans accès au cache ; consultez [Changement de modèles](https://code.claude.com/docs/fr/prompt-caching.md#switching-models)

832* Exécutez `/usage` pour voir vos limites de plan et quand elles se réinitialisent832* Exécutez `/usage` pour voir vos limites de plan et quand elles se réinitialisent

833* Exécutez `/usage-credits` pour acheter une utilisation supplémentaire sur Pro et Max, ou pour la demander à votre administrateur sur Team et Enterprise. Consultez [usage credits for paid plans](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) pour savoir comment cela est facturé.833* Exécutez `/usage-credits` pour acheter une utilisation supplémentaire sur Pro, Max et Ultra, ou pour la demander à votre administrateur sur Team et Enterprise. Consultez [usage credits for paid plans](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) pour savoir comment cela est facturé.

834* Pour mettre à niveau votre plan pour des limites de base plus élevées, consultez [claude.com/pricing](https://claude.com/pricing)834* Pour mettre à niveau votre plan pour des limites de base plus élevées, consultez [claude.com/pricing](https://claude.com/pricing)

835 835 

836Avant qu'une fenêtre ne s'épuise, Claude Code peut vous avertir que vous avez utilisé la plupart de celle-ci, avec un message tel que `You've used 85% of your session limit · resets 3:45pm`. Pour surveiller votre allocation restante en continu, ajoutez les champs `rate_limits` à une [barre de statut personnalisée](https://code.claude.com/docs/fr/statusline.md#rate-limit-usage), ou dans l'application de bureau, cliquez sur l'[anneau d'utilisation](https://code.claude.com/docs/fr/desktop.md#check-usage) à côté du sélecteur de modèle.836Avant qu'une fenêtre ne s'épuise, Claude Code peut vous avertir que vous avez utilisé la plupart de celle-ci, avec un message tel que `You've used 85% of your session limit · resets 3:45pm`. Pour surveiller votre allocation restante en continu, ajoutez les champs `rate_limits` à une [barre de statut personnalisée](https://code.claude.com/docs/fr/statusline.md#rate-limit-usage), ou dans l'application de bureau, cliquez sur l'[anneau d'utilisation](https://code.claude.com/docs/fr/desktop.md#check-usage) à côté du sélecteur de modèle.


852**Ce qu'il faut faire :**852**Ce qu'il faut faire :**

853 853 

854* Exécutez `/model` et sélectionnez la variante sans le suffixe `[1m]` pour revenir à la fenêtre de contexte standard854* Exécutez `/model` et sélectionnez la variante sans le suffixe `[1m]` pour revenir à la fenêtre de contexte standard

855* Où le message nomme `/usage-credits`, exécutez-le pour activer la facturation à l'usage pour la variante 1M sur Pro et Max, ou pour demander des crédits d'utilisation à votre administrateur sur Team et Enterprise. Une fois que les crédits d'utilisation sont activés, redémarrez Claude Code ou démarrez une nouvelle session, selon ce que le message indique. Jusqu'à ce moment, la session reste à la limite de contexte standard.855* Où le message nomme `/usage-credits`, exécutez-le pour activer la facturation à l'usage pour la variante 1M sur Pro, Max et Ultra, ou pour demander des crédits d'utilisation à votre administrateur sur Team et Enterprise. Une fois que les crédits d'utilisation sont activés, redémarrez Claude Code ou démarrez une nouvelle session, selon ce que le message indique. Jusqu'à ce moment, la session reste à la limite de contexte standard.

856* Si l'erreur persiste après `/model`, un ID de modèle 1M peut être défini ailleurs. Consultez [Définir votre modèle](https://code.claude.com/docs/fr/model-config.md#setting-your-model) pour les emplacements de configuration à vérifier par ordre de priorité.856* Si l'erreur persiste après `/model`, un ID de modèle 1M peut être défini ailleurs. Consultez [Définir votre modèle](https://code.claude.com/docs/fr/model-config.md#setting-your-model) pour les emplacements de configuration à vérifier par ordre de priorité.

857* Pour supprimer complètement les variantes 1M du sélecteur de modèle, définissez [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](https://code.claude.com/docs/fr/env-vars)857* Pour supprimer complètement les variantes 1M du sélecteur de modèle, définissez [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](https://code.claude.com/docs/fr/env-vars)

858 858 


933 933 

934**Ce qu'il faut faire :**934**Ce qu'il faut faire :**

935 935 

936* Sur Pro et Max, augmentez votre limite de dépenses mensuelles dans [**Settings > Usage**](https://claude.ai/settings/usage) sur claude.ai, ou exécutez `/usage-credits`936* Sur Pro, Max et Ultra, augmentez votre limite de dépenses mensuelles dans [**Settings > Usage**](https://claude.ai/settings/usage) sur claude.ai, ou exécutez `/usage-credits`

937* Sur Team et Enterprise, augmentez la limite dans [**Organization settings > Usage**](https://claude.ai/admin-settings/usage) si vous gérez la facturation, ou demandez à un administrateur de le faire. `/usage-credits` envoie cette demande à votre administrateur pour vous937* Sur Team et Enterprise, augmentez la limite dans [**Organization settings > Usage**](https://claude.ai/admin-settings/usage) si vous gérez la facturation, ou demandez à un administrateur de le faire. `/usage-credits` envoie cette demande à votre administrateur pour vous

938* Pour la limite d'un canal, demandez à un propriétaire d'organisation ou au gestionnaire du canal de l'augmenter sur claude.ai. Consultez [Per-channel limits](https://claude.com/docs/claude-tag/admins/set-spend-limit#per-channel-limits) dans la documentation Claude Tag938* Pour la limite d'un canal, demandez à un propriétaire d'organisation ou au gestionnaire du canal de l'augmenter sur claude.ai. Consultez [Per-channel limits](https://claude.com/docs/claude-tag/admins/set-spend-limit#per-channel-limits) dans la documentation Claude Tag

939* Si le message nomme une heure de réinitialisation pour la fenêtre de votre plan, vous pouvez l'attendre à la place939* Si le message nomme une heure de réinitialisation pour la fenêtre de votre plan, vous pouvez l'attendre à la place


966 966 

967**Ce qu'il faut faire :**967**Ce qu'il faut faire :**

968 968 

969* Si vous avez un plan Pro, Max, Team ou Enterprise et voyez ceci, exécutez `/status` et vérifiez la ligne `API key`. Un `ANTHROPIC_API_KEY` approuvé dans votre environnement achemine les requêtes via cette clé au lieu de votre abonnement. Supprimez-le dans le shell actuel et retirez-le de votre profil de shell, puis relancez `claude`. Exécutez `/login` si vous ne vous êtes pas encore connecté avec votre abonnement.969* Si vous avez un plan Pro, Max, Ultra, Team ou Enterprise et voyez ceci, exécutez `/status` et vérifiez la ligne `API key`. Un `ANTHROPIC_API_KEY` approuvé dans votre environnement achemine les requêtes via cette clé au lieu de votre abonnement. Supprimez-le dans le shell actuel et retirez-le de votre profil de shell, puis relancez `claude`. Exécutez `/login` si vous ne vous êtes pas encore connecté avec votre abonnement.

970* Ajoutez des crédits à [platform.claude.com/settings/billing](https://platform.claude.com/settings/billing), et envisagez d'activer le rechargement automatique là-bas pour que le solde se remplisse avant d'atteindre zéro970* Ajoutez des crédits à [platform.claude.com/settings/billing](https://platform.claude.com/settings/billing), et envisagez d'activer le rechargement automatique là-bas pour que le solde se remplisse avant d'atteindre zéro

971* Définissez des plafonds de dépenses par espace de travail dans la Console pour empêcher un seul projet de drainer le solde de l'organisation. Consultez [Gérer les coûts efficacement](https://code.claude.com/docs/fr/costs.md).971* Définissez des plafonds de dépenses par espace de travail dans la Console pour empêcher un seul projet de drainer le solde de l'organisation. Consultez [Gérer les coûts efficacement](https://code.claude.com/docs/fr/costs.md).

972 972 


1120 1120 

1121L'indication après le `·` dépend de vos identifiants enregistrés : la première forme apparaît lorsqu'une connexion `/login` enregistrée peut prendre le relais une fois la clé supprimée, et la seconde lorsque la clé est votre seul identifiant.1121L'indication après le `·` dépend de vos identifiants enregistrés : la première forme apparaît lorsqu'une connexion `/login` enregistrée peut prendre le relais une fois la clé supprimée, et la seconde lorsque la clé est votre seul identifiant.

1122 1122 

1123Les variables d'environnement ont priorité sur `/login` : une clé exportée dans votre profil de shell ou chargée depuis un fichier `.env` est donc utilisée même si vous disposez d'un abonnement Pro ou Max fonctionnel. En mode non interactif (`-p`), la clé est toujours utilisée lorsqu'elle est présente.1123Si vous exportez une clé dans votre profil shell ou en chargez une depuis `.env`, Claude Code l'utilise à la place de `/login`, même avec un abonnement Pro, Max ou Ultra fonctionnel. En mode non interactif (`-p`), la clé est toujours utilisée lorsqu'elle est présente.

1124 1124 

1125**Que faire :**1125**Que faire :**

1126 1126 

fast-mode.md +5 −5

Details

20 20 

21* Utilisez `/fast` pour activer/désactiver le mode rapide dans Claude Code CLI. L'extension [VS Code](https://code.claude.com/docs/fr/vs-code.md) offre une commande **Toggle fast mode** quand le modèle sélectionné supporte le mode rapide. Claude Code enregistre ce paramètre dans votre paramètre [`fastMode`](#toggle-fast-mode).21* Utilisez `/fast` pour activer/désactiver le mode rapide dans Claude Code CLI. L'extension [VS Code](https://code.claude.com/docs/fr/vs-code.md) offre une commande **Toggle fast mode** quand le modèle sélectionné supporte le mode rapide. Claude Code enregistre ce paramètre dans votre paramètre [`fastMode`](#toggle-fast-mode).

22* La tarification du mode rapide par MTok entrée/sortie est de 8 $/40 $ sur Opus 5.5 et de 10 $/50 $ sur Opus 5 et Opus 4.8.22* La tarification du mode rapide par MTok entrée/sortie est de 8 $/40 $ sur Opus 5.5 et de 10 $/50 $ sur Opus 5 et Opus 4.8.

23* Disponible pour les utilisateurs de Claude Code sur les plans d'abonnement (Pro/Max/Team/Enterprise) et sur Claude Console. Les organisations Team et Enterprise ont besoin qu'un propriétaire l'active d'abord, et les organisations Console ont besoin d'un accès provisionné d'abord pour l'utiliser avec Opus 5 ou Opus 4.8. La section [Exigences](#requirements) décrit ces deux cas.23* Disponible pour les utilisateurs de Claude Code sur les plans d'abonnement (Pro/Max/Ultra/Team/Enterprise) et sur Claude Console. Les organisations Team et Enterprise ont besoin qu'un propriétaire l'active d'abord, et les organisations Console ont besoin d'un accès provisionné d'abord pour l'utiliser avec Opus 5 ou Opus 4.8. La section [Exigences](#requirements) décrit ces deux cas.

24* Pour les utilisateurs de Claude Code sur les plans d'abonnement (Pro/Max/Team/Enterprise), le mode rapide est disponible via les crédits d'utilisation uniquement et n'est pas inclus dans les limites de taux d'abonnement.24* Pour les utilisateurs de Claude Code sur les plans d'abonnement (Pro/Max/Ultra/Team/Enterprise), le mode rapide est disponible via les crédits d'utilisation uniquement et n'est pas inclus dans les limites de débit de l'abonnement.

25 25 

26## Activer ou désactiver le mode rapide26## Activer ou désactiver le mode rapide

27 27 


86 86 

87Vous voyez la dépense du mode rapide à un endroit différent selon la façon dont vous vous êtes connecté, alors exécutez d'abord [`/status`](https://code.claude.com/docs/fr/commands) pour vérifier. S'il affiche une ligne `Login method` telle que `Claude Max account`, vous vous êtes connecté avec un abonnement Claude. S'il affiche une ligne `API key` à la place, vos demandes sont facturées à une organisation Claude Console.87Vous voyez la dépense du mode rapide à un endroit différent selon la façon dont vous vous êtes connecté, alors exécutez d'abord [`/status`](https://code.claude.com/docs/fr/commands) pour vérifier. S'il affiche une ligne `Login method` telle que `Claude Max account`, vous vous êtes connecté avec un abonnement Claude. S'il affiche une ligne `API key` à la place, vos demandes sont facturées à une organisation Claude Console.

88 88 

89* **Pro et Max** : vous payez le mode rapide à partir de vos crédits d'utilisation. Allez à [**Paramètres > Utilisation**](https://claude.ai/settings/usage) sur claude.ai, où la section **Crédits d'utilisation** affiche combien vous avez dépensé en crédits d'utilisation ce mois-ci. Ce chiffre inclut le mode rapide mais ne le détaille pas séparément.89* **Pro, Max et Ultra** : vous payez le mode rapide à partir de vos crédits d'utilisation. Allez à [**Paramètres > Utilisation**](https://claude.ai/settings/usage) sur claude.ai, où la section **Crédits d'utilisation** affiche combien vous avez dépensé en crédits d'utilisation ce mois-ci. Ce chiffre inclut le mode rapide mais ne le détaille pas séparément.

90* **Team et Enterprise** : votre organisation paie votre utilisation du mode rapide à partir de ses crédits d'utilisation. Pour voir votre dépense en crédits d'utilisation, exécutez [`/usage`](https://code.claude.com/docs/fr/costs#check-your-usage-credits-spend). Pour voir où votre organisation voit cette dépense, consultez [Claude for Teams and Enterprise](https://code.claude.com/docs/fr/costs.md#claude-for-teams-and-enterprise).90* **Team et Enterprise** : votre organisation paie votre utilisation du mode rapide à partir de ses crédits d'utilisation. Pour voir votre dépense en crédits d'utilisation, exécutez [`/usage`](https://code.claude.com/docs/fr/costs#check-your-usage-credits-spend). Pour voir où votre organisation voit cette dépense, consultez [Claude for Teams and Enterprise](https://code.claude.com/docs/fr/costs.md#claude-for-teams-and-enterprise).

91* **Claude Console** : votre organisation paie le mode rapide avec le reste de son utilisation de l'API. Sur les pages Console [Usage](https://platform.claude.com/usage) et [Cost](https://platform.claude.com/cost), sélectionnez **Speed (Research Preview)** dans le menu **Group by** pour séparer le mode rapide de l'utilisation à vitesse standard. Vous ne voyez cette option que lorsque la plage de dates sélectionnée inclut l'utilisation du mode rapide.91* **Claude Console** : votre organisation paie le mode rapide avec le reste de son utilisation de l'API. Sur les pages Console [Usage](https://platform.claude.com/usage) et [Cost](https://platform.claude.com/cost), sélectionnez **Speed (Research Preview)** dans le menu **Group by** pour séparer le mode rapide de l'utilisation à vitesse standard. Vous ne voyez cette option que lorsque la plage de dates sélectionnée inclut l'utilisation du mode rapide.

92 92 


120Le mode rapide nécessite tous les éléments suivants :120Le mode rapide nécessite tous les éléments suivants :

121 121 

122* **API Anthropic ou abonnement uniquement** : le mode rapide est disponible via l'API Anthropic Console et pour les plans d'abonnement Claude utilisant les crédits d'utilisation. Il n'est pas disponible sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou Claude Platform sur AWS. Les organisations Console doivent également avoir [l'accès au mode rapide provisionné](#enable-fast-mode-for-your-organization) pour l'utiliser avec Opus 5 ou Opus 4.8.122* **API Anthropic ou abonnement uniquement** : le mode rapide est disponible via l'API Anthropic Console et pour les plans d'abonnement Claude utilisant les crédits d'utilisation. Il n'est pas disponible sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou Claude Platform sur AWS. Les organisations Console doivent également avoir [l'accès au mode rapide provisionné](#enable-fast-mode-for-your-organization) pour l'utiliser avec Opus 5 ou Opus 4.8.

123* **Crédits d'utilisation activés pour les plans d'abonnement** : sur un plan Pro, Max, Team ou Enterprise, votre compte doit avoir les [crédits d'utilisation](https://code.claude.com/docs/fr/costs.md#add-usage-credits-to-your-subscription) activés, ce qui permet la facturation au-delà de l'utilisation incluse dans votre plan. Jusqu'à ce qu'ils soient activés, `/fast` affiche « Le mode rapide nécessite des crédits d'utilisation ». La façon dont vous les activez dépend de votre plan :123* **Crédits d'utilisation activés pour les plans d'abonnement** : sur un plan Pro, Max, Ultra, Team ou Enterprise, votre compte doit avoir les [crédits d'utilisation](https://code.claude.com/docs/fr/costs.md#add-usage-credits-to-your-subscription) activés, ce qui permet la facturation au-delà de l'utilisation incluse dans votre plan. Jusqu'à ce qu'ils soient activés, `/fast` affiche « Le mode rapide nécessite des crédits d'utilisation ». Pour les activer, suivez l'étape correspondant à votre plan :

124 * Sur Pro et Max, activez-les dans la section **Crédits d'utilisation** de [**Paramètres > Utilisation**](https://claude.ai/settings/usage) sur claude.ai, ou exécutez `/usage-credits` pour ouvrir cette page.124 * Sur Pro, Max et Ultra, activez-les dans la section **Crédits d'utilisation** de [**Paramètres > Utilisation**](https://claude.ai/settings/usage) sur claude.ai, ou exécutez `/usage-credits` pour ouvrir cette page.

125 * Sur Team et Enterprise, un membre ayant accès à la facturation les active pour l'organisation dans [**Paramètres d'administration > Utilisation**](https://claude.ai/admin-settings/usage), et un membre sans accès exécute `/usage-credits` pour envoyer une demande aux administrateurs de l'organisation.125 * Sur Team et Enterprise, un membre ayant accès à la facturation les active pour l'organisation dans [**Paramètres d'administration > Utilisation**](https://claude.ai/admin-settings/usage), et un membre sans accès exécute `/usage-credits` pour envoyer une demande aux administrateurs de l'organisation.

126 126 

127> [!NOTE]127> [!NOTE]

Details

14 14 

15La façon dont vous vous authentifiez détermine les fonctionnalités que Claude Code peut atteindre. Pour une liste unique de ce qui manque chez votre fournisseur, consultez les onglets [résumé par fournisseur](#summary-by-provider). Pour trouver votre colonne dans les tableaux :15La façon dont vous vous authentifiez détermine les fonctionnalités que Claude Code peut atteindre. Pour une liste unique de ce qui manque chez votre fournisseur, consultez les onglets [résumé par fournisseur](#summary-by-provider). Pour trouver votre colonne dans les tableaux :

16 16 

17* **Abonnement Claude** : vous vous connectez avec un compte claude.ai sur le plan Pro, Max, Team ou Enterprise17* **Abonnement Claude** : vous vous connectez avec un compte claude.ai sur le plan Pro, Max, Ultra, Team ou Enterprise

18* **Console Anthropic** : vous vous authentifiez avec une clé API Anthropic ou en [vous connectant à un compte Console sans clé](https://code.claude.com/docs/fr/authentication.md#sign-in-without-an-api-key)18* **Console Anthropic** : vous vous authentifiez avec une clé API Anthropic ou en [vous connectant à un compte Console sans clé](https://code.claude.com/docs/fr/authentication.md#sign-in-without-an-api-key)

19* **Amazon Bedrock** : vous utilisez les modèles Claude du catalogue de modèles Bedrock et définissez `CLAUDE_CODE_USE_BEDROCK`. Le [point de terminaison Mantle](https://code.claude.com/docs/fr/amazon-bedrock.md#use-the-mantle-endpoint) (`CLAUDE_CODE_USE_MANTLE`) est couvert par cette colonne19* **Amazon Bedrock** : vous utilisez les modèles Claude du catalogue de modèles Bedrock et définissez `CLAUDE_CODE_USE_BEDROCK`. Le [point de terminaison Mantle](https://code.claude.com/docs/fr/amazon-bedrock.md#use-the-mantle-endpoint) (`CLAUDE_CODE_USE_MANTLE`) est couvert par cette colonne

20* **Claude Platform sur AWS** : vous avez acheté Claude via AWS Marketplace mais appelez l'API Anthropic, et définissez `CLAUDE_CODE_USE_ANTHROPIC_AWS`20* **Claude Platform sur AWS** : vous avez acheté Claude via AWS Marketplace mais appelez l'API Anthropic, et définissez `CLAUDE_CODE_USE_ANTHROPIC_AWS`


46Celles-ci nécessitent de se connecter avec un compte claude.ai et ne sont pas accessibles avec une clé API de la Console Anthropic ou d'un fournisseur tiers :46Celles-ci nécessitent de se connecter avec un compte claude.ai et ne sont pas accessibles avec une clé API de la Console Anthropic ou d'un fournisseur tiers :

47 47 

48* [Sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) et Claude Code sur mobile48* [Sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) et Claude Code sur mobile

49* [Claude Code dans Slack](https://code.claude.com/docs/fr/slack.md) : plans Pro et Max49* [Claude Code dans Slack](https://code.claude.com/docs/fr/slack.md) : plans Pro, Max et Ultra

50* [Claude Code Desktop](https://code.claude.com/docs/fr/desktop.md)50* [Claude Code Desktop](https://code.claude.com/docs/fr/desktop.md)

51* [Tâches planifiées cloud](https://code.claude.com/docs/fr/routines.md) (`/schedule`)51* [Tâches planifiées cloud](https://code.claude.com/docs/fr/routines.md) (`/schedule`)

52* [Ultrareview](https://code.claude.com/docs/fr/ultrareview.md)52* [Ultrareview](https://code.claude.com/docs/fr/ultrareview.md)

53* [Code Review](https://code.claude.com/docs/fr/code-review.md) : plans Team et Enterprise53* [Code Review](https://code.claude.com/docs/fr/code-review.md) : plans Team et Enterprise

54* [Remote Control](https://code.claude.com/docs/fr/remote-control.md)54* [Remote Control](https://code.claude.com/docs/fr/remote-control.md)

55* [Extension Chrome](https://code.claude.com/docs/fr/chrome.md)55* [Extension Chrome](https://code.claude.com/docs/fr/chrome.md)

56* [Computer use](https://code.claude.com/docs/fr/computer-use.md) : plans Pro et Max56* [Computer use](https://code.claude.com/docs/fr/computer-use.md) : plans Pro, Max et Ultra

57* [Artifacts](https://code.claude.com/docs/fr/artifacts.md) : plans Pro, Max, Team et Enterprise57* [Artefacts](https://code.claude.com/docs/fr/artifacts.md) : plans Pro, Max, Ultra, Team et Enterprise

58* [Voice dictation](https://code.claude.com/docs/fr/voice-dictation.md)58* [Voice dictation](https://code.claude.com/docs/fr/voice-dictation.md)

59 59 

60Desktop est l'exception partielle : l'[acheminement par passerelle peut être configuré dans l'application ou par un administrateur](https://code.claude.com/docs/fr/llm-gateway-connect.md#desktop-app). [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview) exécute également l'onglet Code sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou une passerelle LLM auto-hébergée. Il exécute aussi l'onglet Code sur l'[API Claude](https://claude.com/docs/third-party/claude-desktop/claude-api) avec une clé API de la Console Anthropic. Pour la disponibilité par plan de ces fonctionnalités, consultez [Disponibilité par plan d'abonnement](#availability-by-subscription-plan).60Desktop est l'exception partielle : l'[acheminement par passerelle peut être configuré dans l'application ou par un administrateur](https://code.claude.com/docs/fr/llm-gateway-connect.md#desktop-app). [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview) exécute également l'onglet Code sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou une passerelle LLM auto-hébergée. Il exécute aussi l'onglet Code sur l'[API Claude](https://claude.com/docs/third-party/claude-desktop/claude-api) avec une clé API de la Console Anthropic. Pour la disponibilité par plan de ces fonctionnalités, consultez [Disponibilité par plan d'abonnement](#availability-by-subscription-plan).


229 229 

230Chaque onglet répertorie ce qui n'est pas disponible ou partiellement supporté chez ce fournisseur, avec des alternatives le cas échéant. Tout ce qui n'est pas répertorié fonctionne de la même manière que sur un abonnement Claude, à part les [différences spécifiques au fournisseur](#features-available-on-every-provider) notées ci-dessus. Sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry et Claude Platform sur AWS, la création de rapports d'erreurs et la télémétrie vers Anthropic sont désactivées par défaut. Consultez [comportements par défaut par fournisseur API](https://code.claude.com/docs/fr/data-usage.md#default-behaviors-by-api-provider) pour connaître le trafic qui atteint toujours Anthropic et comment refuser.230Chaque onglet répertorie ce qui n'est pas disponible ou partiellement supporté chez ce fournisseur, avec des alternatives le cas échéant. Tout ce qui n'est pas répertorié fonctionne de la même manière que sur un abonnement Claude, à part les [différences spécifiques au fournisseur](#features-available-on-every-provider) notées ci-dessus. Sur Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry et Claude Platform sur AWS, la création de rapports d'erreurs et la télémétrie vers Anthropic sont désactivées par défaut. Consultez [comportements par défaut par fournisseur API](https://code.claude.com/docs/fr/data-usage.md#default-behaviors-by-api-provider) pour connaître le trafic qui atteint toujours Anthropic et comment refuser.

231 231 

232**Amazon Bedrock**232> [tab] Amazon Bedrock

233 233>

234**Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription), plus [web search](https://code.claude.com/docs/fr/tools-reference.md#websearch-tool-behavior), [fast mode](https://code.claude.com/docs/fr/fast-mode.md), [Advisor](https://code.claude.com/docs/fr/advisor.md), [Channels](https://code.claude.com/docs/fr/channels.md), le [tableau de bord analytique](https://code.claude.com/docs/fr/analytics.md), les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) et les [commandes `/design-sync` et `/import`](https://code.claude.com/docs/fr/commands#all-commands).234> **Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription), plus [web search](https://code.claude.com/docs/fr/tools-reference.md#websearch-tool-behavior), [fast mode](https://code.claude.com/docs/fr/fast-mode.md), [Advisor](https://code.claude.com/docs/fr/advisor.md), [Channels](https://code.claude.com/docs/fr/channels.md), le [tableau de bord analytique](https://code.claude.com/docs/fr/analytics.md), les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) et les [commandes `/design-sync` et `/import`](https://code.claude.com/docs/fr/commands#all-commands).

235 235>

236**Support partiel :**236> **Support partiel :**

237 237>

238* [Desktop](https://code.claude.com/docs/fr/desktop.md) : uniquement via [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)238> * [Desktop](https://code.claude.com/docs/fr/desktop.md) : uniquement via [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

239* [Auto mode](https://code.claude.com/docs/fr/auto-mode-config.md) : Sonnet 5 ou version ultérieure, Opus 4.7 ou version ultérieure, Haiku 5.5 et modèles Fable uniquement239> * [Auto mode](https://code.claude.com/docs/fr/auto-mode-config.md) : Sonnet 5 ou version ultérieure, Opus 4.7 ou version ultérieure, Haiku 5.5 et modèles Fable uniquement

240* [Messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md) : entre vos sessions sur cette machine uniquement <sup>[5](#fn5)</sup>240> * [Messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md) : entre vos sessions sur cette machine uniquement <sup>[5](#fn5)</sup>

241* [Rétention zéro donnée](https://code.claude.com/docs/fr/zero-data-retention.md) : soumis à votre accord AWS241> * [Rétention zéro donnée](https://code.claude.com/docs/fr/zero-data-retention.md) : soumis à votre accord AWS

242 242>

243**Alternatives :** pour la planification, utilisez [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) au lieu de `/schedule`. Pour les sessions cloud, utilisez [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md). Pour les recherches web, utilisez l'[outil WebFetch](https://code.claude.com/docs/fr/tools-reference.md#webfetch-tool-behavior) avec une URL spécifique.243> **Alternatives :** pour la planification, utilisez [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) au lieu de `/schedule`. Pour les sessions cloud, utilisez [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md). Pour les recherches web, utilisez l'[outil WebFetch](https://code.claude.com/docs/fr/tools-reference.md#webfetch-tool-behavior) avec une URL spécifique.

244 

245**Claude Platform sur AWS**

246 

247**Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription), plus [fast mode](https://code.claude.com/docs/fr/fast-mode.md), [Advisor](https://code.claude.com/docs/fr/advisor.md), [Channels](https://code.claude.com/docs/fr/channels.md), [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md), le [tableau de bord analytique](https://code.claude.com/docs/fr/analytics.md), les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) et les [commandes `/design-sync` et `/import`](https://code.claude.com/docs/fr/commands#all-commands).

248 

249**Disponible là où Amazon Bedrock ne l'est pas :** [web search](https://code.claude.com/docs/fr/tools-reference.md#websearch-tool-behavior).

250 

251**Support partiel :**

252 

253* [Messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md) : entre vos sessions sur cette machine uniquement <sup>[5](#fn5)</sup>

254 

255**Alternatives :** pour la planification, utilisez [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) au lieu de `/schedule`. Pour les sessions cloud, utilisez [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md).

256 

257**Google Cloud's Agent Platform**

258 

259**Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription), plus [fast mode](https://code.claude.com/docs/fr/fast-mode.md), [Advisor](https://code.claude.com/docs/fr/advisor.md), [Channels](https://code.claude.com/docs/fr/channels.md), le [tableau de bord analytique](https://code.claude.com/docs/fr/analytics.md), les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) et les [commandes `/design-sync` et `/import`](https://code.claude.com/docs/fr/commands#all-commands).

260 

261**Support partiel :**

262 

263* [Desktop](https://code.claude.com/docs/fr/desktop.md) : via les [paramètres gérés](https://claude.com/docs/third-party/claude-desktop/configuration) ou [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

264* [Web search](https://code.claude.com/docs/fr/tools-reference.md#websearch-tool-behavior) : Opus 4, Sonnet 4, Haiku 4.5 et modèles ultérieurs

265* [Auto mode](https://code.claude.com/docs/fr/auto-mode-config.md) : Sonnet 5 ou version ultérieure, Opus 4.7 ou version ultérieure, Haiku 5.5 et modèles Fable uniquement

266* [Messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md) : entre vos sessions sur cette machine uniquement <sup>[5](#fn5)</sup>

267* [Rétention zéro donnée](https://code.claude.com/docs/fr/zero-data-retention.md) : soumis à votre accord Google Cloud

268 

269**Alternatives :** pour la planification, utilisez [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) au lieu de `/schedule`. Pour les sessions cloud, utilisez [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md).

270 

271**Microsoft Foundry**

272 

273**Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription), plus [fast mode](https://code.claude.com/docs/fr/fast-mode.md), [Advisor](https://code.claude.com/docs/fr/advisor.md), [Channels](https://code.claude.com/docs/fr/channels.md), [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md), le [tableau de bord analytique](https://code.claude.com/docs/fr/analytics.md), les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) et les [commandes `/design-sync` et `/import`](https://code.claude.com/docs/fr/commands#all-commands).

274 

275**Support partiel :**

276 

277* [Desktop](https://code.claude.com/docs/fr/desktop.md) : uniquement via [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

278* [Auto mode](https://code.claude.com/docs/fr/auto-mode-config.md) : Sonnet 5 ou version ultérieure, Opus 4.7 ou version ultérieure, Haiku 5.5 et modèles Fable uniquement

279* [Messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md) : entre vos sessions sur cette machine uniquement <sup>[5](#fn5)</sup>

280* [Rétention zéro donnée](https://code.claude.com/docs/fr/zero-data-retention.md) : soumis à votre accord Azure

281 

282**Alternatives :** pour la planification, utilisez [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) au lieu de `/schedule`. Pour les sessions cloud, utilisez [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md).

283 

284**Console Anthropic**

285 244 

286**Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription).245> [tab] Claude Platform sur AWS

246>

247> **Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription), plus [fast mode](https://code.claude.com/docs/fr/fast-mode.md), [Advisor](https://code.claude.com/docs/fr/advisor.md), [Channels](https://code.claude.com/docs/fr/channels.md), [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md), le [tableau de bord analytique](https://code.claude.com/docs/fr/analytics.md), les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) et les [commandes `/design-sync` et `/import`](https://code.claude.com/docs/fr/commands#all-commands).

248>

249> **Disponible là où Amazon Bedrock ne l'est pas :** [web search](https://code.claude.com/docs/fr/tools-reference.md#websearch-tool-behavior).

250>

251> **Support partiel :**

252>

253> * [Messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md) : entre vos sessions sur cette machine uniquement <sup>[5](#fn5)</sup>

254>

255> **Alternatives :** pour la planification, utilisez [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) au lieu de `/schedule`. Pour les sessions cloud, utilisez [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md).

287 256 

288Tout ce qui se trouve dans [Capacités CLI qui varient selon le fournisseur](#cli-capabilities-that-vary-by-provider) est disponible, sauf que le [fast mode](https://code.claude.com/docs/fr/fast-mode.md) avec Claude Opus 5 ou Claude Opus 4.8 nécessite un [accès provisionné](https://code.claude.com/docs/fr/fast-mode.md#enable-fast-mode-for-your-organization). Les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) que vous configurez dans une organisation claude.ai Team ou Enterprise n'atteignent pas une session qui s'authentifie avec une clé API Console. Consultez [Disponibilité par plateforme](https://code.claude.com/docs/fr/server-managed-settings.md#platform-availability) pour savoir comment couvrir ces sessions.257> [tab] Google Cloud's Agent Platform

258>

259> **Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription), plus [fast mode](https://code.claude.com/docs/fr/fast-mode.md), [Advisor](https://code.claude.com/docs/fr/advisor.md), [Channels](https://code.claude.com/docs/fr/channels.md), le [tableau de bord analytique](https://code.claude.com/docs/fr/analytics.md), les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) et les [commandes `/design-sync` et `/import`](https://code.claude.com/docs/fr/commands#all-commands).

260>

261> **Support partiel :**

262>

263> * [Desktop](https://code.claude.com/docs/fr/desktop.md) : via les [paramètres gérés](https://claude.com/docs/third-party/claude-desktop/configuration) ou [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

264> * [Web search](https://code.claude.com/docs/fr/tools-reference.md#websearch-tool-behavior) : Opus 4, Sonnet 4, Haiku 4.5 et modèles ultérieurs

265> * [Auto mode](https://code.claude.com/docs/fr/auto-mode-config.md) : Sonnet 5 ou version ultérieure, Opus 4.7 ou version ultérieure, Haiku 5.5 et modèles Fable uniquement

266> * [Messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md) : entre vos sessions sur cette machine uniquement <sup>[5](#fn5)</sup>

267> * [Rétention zéro donnée](https://code.claude.com/docs/fr/zero-data-retention.md) : soumis à votre accord Google Cloud

268>

269> **Alternatives :** pour la planification, utilisez [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) au lieu de `/schedule`. Pour les sessions cloud, utilisez [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md).

289 270 

290**Support partiel :**271> [tab] Microsoft Foundry

272>

273> **Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription), plus [fast mode](https://code.claude.com/docs/fr/fast-mode.md), [Advisor](https://code.claude.com/docs/fr/advisor.md), [Channels](https://code.claude.com/docs/fr/channels.md), [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md), le [tableau de bord analytique](https://code.claude.com/docs/fr/analytics.md), les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) et les [commandes `/design-sync` et `/import`](https://code.claude.com/docs/fr/commands#all-commands).

274>

275> **Support partiel :**

276>

277> * [Desktop](https://code.claude.com/docs/fr/desktop.md) : uniquement via [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

278> * [Auto mode](https://code.claude.com/docs/fr/auto-mode-config.md) : Sonnet 5 ou version ultérieure, Opus 4.7 ou version ultérieure, Haiku 5.5 et modèles Fable uniquement

279> * [Messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md) : entre vos sessions sur cette machine uniquement <sup>[5](#fn5)</sup>

280> * [Rétention zéro donnée](https://code.claude.com/docs/fr/zero-data-retention.md) : soumis à votre accord Azure

281>

282> **Alternatives :** pour la planification, utilisez [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) au lieu de `/schedule`. Pour les sessions cloud, utilisez [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md).

291 283 

292* [Desktop](https://code.claude.com/docs/fr/desktop.md) : via [Claude Desktop on 3P avec l'API Claude](https://claude.com/docs/third-party/claude-desktop/claude-api)284> [tab] Console Anthropic

285>

286> **Non disponible :** toutes les [fonctionnalités qui nécessitent un abonnement Claude](#features-that-require-a-claude-subscription).

287>

288> Tout ce qui se trouve dans [Capacités CLI qui varient selon le fournisseur](#cli-capabilities-that-vary-by-provider) est disponible, sauf que le [fast mode](https://code.claude.com/docs/fr/fast-mode.md) avec Claude Opus 5 ou Claude Opus 4.8 nécessite un [accès provisionné](https://code.claude.com/docs/fr/fast-mode.md#enable-fast-mode-for-your-organization). Les [paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) que vous configurez dans une organisation claude.ai Team ou Enterprise n'atteignent pas une session qui s'authentifie avec une clé API Console. Consultez [Disponibilité par plateforme](https://code.claude.com/docs/fr/server-managed-settings.md#platform-availability) pour savoir comment couvrir ces sessions.

289>

290> **Support partiel :**

291>

292> * [Desktop](https://code.claude.com/docs/fr/desktop.md) : via [Claude Desktop on 3P avec l'API Claude](https://claude.com/docs/third-party/claude-desktop/claude-api)

293 293 

294## Disponibilité par plan d'abonnement294## Disponibilité par plan d'abonnement

295 295 


297 297 

298Dans les organisations Enterprise où la [configuration HIPAA](https://code.claude.com/docs/fr/hipaa-setup.md) est appliquée, certaines fonctionnalités de ce tableau sont désactivées.298Dans les organisations Enterprise où la [configuration HIPAA](https://code.claude.com/docs/fr/hipaa-setup.md) est appliquée, certaines fonctionnalités de ce tableau sont désactivées.

299 299 

300| Fonctionnalité | Pro | Max | Team | Enterprise |300| Fonctionnalité | Pro | Max | Ultra | Team | Enterprise |

301| :- | :- | :- | :- | :- |301| :- | :- | :- | :- | :- | :- |

302| [Cloud sessions](https://code.claude.com/docs/fr/claude-code-on-the-web.md) | ✓ | ✓ | ✓ | ✓ <sup>[6](#fn6)</sup> |302| [Sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) | ✓ | ✓ | ✓ | ✓ | ✓ <sup>[6](#fn6)</sup> |

303| [Tâches planifiées cloud](https://code.claude.com/docs/fr/routines.md) | ✓ | ✓ | ✓ | ✓ |303| [Tâches planifiées cloud](https://code.claude.com/docs/fr/routines.md) | ✓ | ✓ | ✓ | ✓ | ✓ |

304| [Remote Control](https://code.claude.com/docs/fr/remote-control.md) | ✓ | ✓ | Admin-enabled | Admin-enabled |304| [Remote Control](https://code.claude.com/docs/fr/remote-control.md) | ✓ | ✓ | ✓ | Admin-enabled | Admin-enabled |

305| [Channels](https://code.claude.com/docs/fr/channels.md) | ✓ | ✓ | Admin-enabled | Admin-enabled |305| [Canaux](https://code.claude.com/docs/fr/channels.md) | ✓ | ✓ | ✓ | Admin-enabled | Admin-enabled |

306| [Computer use](https://code.claude.com/docs/fr/computer-use.md) | ✓ | ✓ | ✗ | ✗ |306| [Computer use](https://code.claude.com/docs/fr/computer-use.md) | ✓ | ✓ | ✓ | ✗ | ✗ |

307| Dispatch ([Desktop](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch)) | ✓ | ✓ | ✗ | ✗ |307| Dispatch ([Desktop](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch)) | ✓ | ✓ | ✓ | ✗ | ✗ |

308| [Code Review](https://code.claude.com/docs/fr/code-review.md) | ✗ | ✗ | ✓ | ✓ |308| [Code Review](https://code.claude.com/docs/fr/code-review.md) | ✗ | ✗ | ✗ | ✓ | ✓ |

309| [Artifacts](https://code.claude.com/docs/fr/artifacts.md) | ✓ | ✓ | ✓ | ✓ |309| [Artefacts](https://code.claude.com/docs/fr/artifacts.md) | ✓ | ✓ | ✓ | ✓ | ✓ |

310| [Tableau de bord Analytics et métriques de contribution](https://code.claude.com/docs/fr/analytics.md) | ✗ | ✗ | ✓ | ✓ |310| [Tableau de bord Analytics et métriques de contribution](https://code.claude.com/docs/fr/analytics.md) | ✗ | ✗ | ✗ | ✓ | ✓ |

311| [API Enterprise Analytics](https://code.claude.com/docs/fr/analytics.md#access-data-programmatically) | ✗ | ✗ | ✗ | ✓ |311| [API Enterprise Analytics](https://code.claude.com/docs/fr/analytics.md#access-data-programmatically) | ✗ | ✗ | ✗ | ✗ | ✓ |

312| [Paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) | ✗ | ✗ | ✓ | ✓ |312| [Paramètres gérés par le serveur](https://code.claude.com/docs/fr/server-managed-settings.md) | ✗ | ✗ | ✗ | ✓ | ✓ |

313| [SSO](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) | ✗ | ✗ | ✓ | ✓ |313| [SSO](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) | ✗ | ✗ | ✗ | ✓ | ✓ |

314| SCIM | ✗ | ✗ | ✗ | ✓ |314| SCIM | ✗ | ✗ | ✗ | ✗ | ✓ |

315| [Compliance API](https://platform.claude.com/docs/en/api/compliance) | ✗ | ✗ | ✗ | ✓ |315| [Compliance API](https://platform.claude.com/docs/en/api/compliance) | ✗ | ✗ | ✗ | ✗ | ✓ |

316| [Zero Data Retention](https://code.claude.com/docs/fr/zero-data-retention.md) | ✗ | ✗ | ✗ | ✓ <sup>[7](#fn7)</sup> |316| [Zero Data Retention](https://code.claude.com/docs/fr/zero-data-retention.md) | ✗ | ✗ | ✗ | ✗ | ✓ <sup>[7](#fn7)</sup> |

317 317 

318<sup>6</sup> Sur Enterprise, nécessite un siège premium ou un siège Chat + Claude Code. Consultez [Cloud sessions](https://code.claude.com/docs/fr/claude-code-on-the-web.md).\318<sup>6</sup> Sur Enterprise, nécessite un siège premium ou un siège Chat + Claude Code. Consultez [Cloud sessions](https://code.claude.com/docs/fr/claude-code-on-the-web.md).\

319 319 


321 321 

322Pour la tarification et la comparaison complète des plans, consultez [Plans Team](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) et [Plans Enterprise](https://support.claude.com/en/articles/9797531-what-is-the-enterprise-plan).322Pour la tarification et la comparaison complète des plans, consultez [Plans Team](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) et [Plans Enterprise](https://support.claude.com/en/articles/9797531-what-is-the-enterprise-plan).

323 323 

324### Plan Ultra

325 

326Ultra est le nouveau nom du plan Max 20x, et Max est le nouveau nom de Max 5x. Pour vérifier votre plan, consultez votre abonnement sur claude.ai.

327 

328Dans Claude Code, Max et Ultra disposent des mêmes fonctionnalités, répertoriées dans les colonnes Max et Ultra du [tableau de disponibilité](#availability-by-subscription-plan). Pour les limites d'utilisation et la tarification, consultez la [page de tarification de Claude](https://claude.com/pricing).

329 

324## Disponibilité des modèles330## Disponibilité des modèles

325 331 

326Pour connaître les modèles Claude et les tailles de fenêtre contextuelle disponibles par fournisseur et région, consultez [Configuration des modèles](https://code.claude.com/docs/fr/model-config.md) et l'[aperçu des modèles](https://platform.claude.com/docs/en/about-claude/models/overview). Vision, entrée PDF et réflexion étendue sont des capacités de modèle plutôt que des fonctionnalités de Claude Code et fonctionnent chez chaque fournisseur qui propose le modèle. [Prompt caching](https://code.claude.com/docs/fr/prompt-caching.md) fonctionne de la même manière chez la plupart des fournisseurs ; sur Amazon Bedrock, le support varie selon le modèle.332Pour connaître les modèles Claude et les tailles de fenêtre contextuelle disponibles par fournisseur et région, consultez [Configuration des modèles](https://code.claude.com/docs/fr/model-config.md) et l'[aperçu des modèles](https://platform.claude.com/docs/en/about-claude/models/overview). Vision, entrée PDF et réflexion étendue sont des capacités de modèle plutôt que des fonctionnalités de Claude Code et fonctionnent chez chaque fournisseur qui propose le modèle. [Prompt caching](https://code.claude.com/docs/fr/prompt-caching.md) fonctionne de la même manière chez la plupart des fournisseurs ; sur Amazon Bedrock, le support varie selon le modèle.

features-overview.md +193 −193

Details

72 72 

73Certaines fonctionnalités peuvent sembler similaires. Pour une explication plus approfondie du choix entre elles, consultez [Steering Claude Code : when to use CLAUDE.md, skills, hooks, and subagents](https://claude.com/blog/steering-claude-code-skills-hooks-rules-subagents-and-more) sur le blog. Voici comment les distinguer.73Certaines fonctionnalités peuvent sembler similaires. Pour une explication plus approfondie du choix entre elles, consultez [Steering Claude Code : when to use CLAUDE.md, skills, hooks, and subagents](https://claude.com/blog/steering-claude-code-skills-hooks-rules-subagents-and-more) sur le blog. Voici comment les distinguer.

74 74 

75**Skill vs Subagent**75> [tab] Skill vs Subagent

76 76>

77Les skills et les subagents résolvent des problèmes différents :77> Les skills et les subagents résolvent des problèmes différents :

78 78>

79* **Skills** sont du contenu réutilisable que vous pouvez charger dans n'importe quel contexte79> * **Skills** sont du contenu réutilisable que vous pouvez charger dans n'importe quel contexte

80* **Subagents** sont des travailleurs isolés qui s'exécutent séparément de votre conversation principale80> * **Subagents** sont des travailleurs isolés qui s'exécutent séparément de votre conversation principale

81 81>

82| Aspect | Skill | Subagent |82> | Aspect | Skill | Subagent |

83| - | - | - |83> | - | - | - |

84| **Ce que c'est** | Instructions, connaissances ou flux de travail réutilisables | Travailleur isolé avec son propre contexte |84> | **Ce que c'est** | Instructions, connaissances ou flux de travail réutilisables | Travailleur isolé avec son propre contexte |

85| **Avantage clé** | Partagez le contenu entre les contextes | Isolation du contexte. Le travail se fait séparément, seul le résumé revient |85> | **Avantage clé** | Partagez le contenu entre les contextes | Isolation du contexte. Le travail se fait séparément, seul le résumé revient |

86| **Impact de la [fenêtre de contexte](https://code.claude.com/docs/fr/context-window.md)** | S'ajoute à votre fenêtre principale | Utilise une fenêtre séparée avec ses propres tokens d'entrée et de sortie |86> | **Impact de la [fenêtre de contexte](https://code.claude.com/docs/fr/context-window.md)** | S'ajoute à votre fenêtre principale | Utilise une fenêtre séparée avec ses propres tokens d'entrée et de sortie |

87| **Meilleur pour** | Matériel de référence, flux de travail invocables | Tâches qui lisent de nombreux fichiers, travail parallèle, travailleurs spécialisés |87> | **Meilleur pour** | Matériel de référence, flux de travail invocables | Tâches qui lisent de nombreux fichiers, travail parallèle, travailleurs spécialisés |

88 88>

89**Les skills peuvent être de référence ou d'action.** Les skills de référence fournissent des connaissances que Claude utilise tout au long de votre session (comme votre guide de style API). Les skills d'action disent à Claude de faire quelque chose de spécifique (comme `/deploy` qui exécute votre flux de travail de déploiement).89> **Les skills peuvent être de référence ou d'action.** Les skills de référence fournissent des connaissances que Claude utilise tout au long de votre session (comme votre guide de style API). Les skills d'action disent à Claude de faire quelque chose de spécifique (comme `/deploy` qui exécute votre flux de travail de déploiement).

90 90>

91**Utilisez un subagent** quand vous avez besoin d'isolation du contexte ou quand votre fenêtre de contexte se remplit. Le subagent pourrait lire des dizaines de fichiers ou exécuter des recherches étendues, mais votre conversation principale ne reçoit qu'un résumé. Puisque le travail du subagent ne consomme pas votre contexte principal, c'est aussi utile quand vous n'avez pas besoin que le travail intermédiaire reste visible. Les subagents personnalisés peuvent avoir leurs propres instructions et peuvent précharger des skills.91> **Utilisez un subagent** quand vous avez besoin d'isolation du contexte ou quand votre fenêtre de contexte se remplit. Le subagent pourrait lire des dizaines de fichiers ou exécuter des recherches étendues, mais votre conversation principale ne reçoit qu'un résumé. Puisque le travail du subagent ne consomme pas votre contexte principal, c'est aussi utile quand vous n'avez pas besoin que le travail intermédiaire reste visible. Les subagents personnalisés peuvent avoir leurs propres instructions et peuvent précharger des skills.

92 92>

93**Ils peuvent se combiner.** Un subagent peut précharger des skills spécifiques (champ `skills:`). Une skill peut s'exécuter dans un contexte isolé en utilisant `context: fork`. Consultez [Skills](https://code.claude.com/docs/fr/skills.md) pour plus de détails.93> **Ils peuvent se combiner.** Un subagent peut précharger des skills spécifiques (champ `skills:`). Une skill peut s'exécuter dans un contexte isolé en utilisant `context: fork`. Consultez [Skills](https://code.claude.com/docs/fr/skills.md) pour plus de détails.

94 

95**CLAUDE.md vs Skill**

96 

97Les deux stockent des instructions, mais elles se chargent différemment et servent des objectifs différents.

98 

99| Aspect | CLAUDE.md | Skill |

100| - | - | - |

101| **Se charge** | À chaque session, automatiquement | À la demande |

102| **Peut inclure des fichiers** | Oui, avec les importations `@path` | Oui, avec les importations `@path` |

103| **Peut déclencher des flux de travail** | Non | Oui, avec `/<name>` |

104| **Meilleur pour** | Règles « toujours faire X » | Matériel de référence, flux de travail invocables |

105 

106**Mettez-le dans CLAUDE.md** si Claude devrait toujours le savoir : conventions de codage, commandes de construction, structure du projet, règles « ne jamais faire X ».

107 

108**Mettez-le dans une skill** si c'est du matériel de référence dont Claude a besoin parfois (documentation API, guides de style) ou un flux de travail que vous déclenchez avec `/<name>` (déployer, examiner, publier).

109 

110**Règle générale :** Gardez CLAUDE.md sous 200 lignes. S'il grandit, déplacez le contenu de référence vers des skills ou divisez-le en fichiers [`.claude/rules/`](https://code.claude.com/docs/fr/memory#organize-rules-with-claude/rules/).

111 

112**CLAUDE.md vs Output style**

113 

114Les deux donnent à Claude des instructions permanentes. CLAUDE.md porte ce que Claude devrait savoir, et un style de sortie définit comment Claude répond.

115 

116| Aspect | CLAUDE.md | Style de sortie |

117| - | - | - |

118| **Contient** | Faits et règles sur votre projet | Un rôle, un ton et un format de réponse |

119| **Changement** | Toujours chargé | Un actif à la fois ; [changez les styles](https://code.claude.com/docs/fr/output-styles.md#change-your-output-style) quand vous le souhaitez |

120| **Meilleur pour** | Commandes de construction, conventions, règles « ne jamais faire X » | Réponses plus courtes, explications aux côtés du code, un rôle non-ingénierie |

121 

122**Mettez-le dans CLAUDE.md** si c'est vrai du projet quel que soit le style dans lequel vous êtes : conventions de codage, commandes de construction, structure du projet.

123 

124**Utilisez un style de sortie** si c'est sur la réponse elle-même et que vous pourriez vouloir l'éteindre à nouveau : longueur, format, combien Claude explique, ou un rôle différent comme un assistant en écriture. Claude Code inclut [des styles intégrés](https://code.claude.com/docs/fr/output-styles.md#built-in-output-styles), et vous pouvez écrire les vôtres.

125 

126**Ils se combinent.** CLAUDE.md reste chargé quel que soit le style que vous choisissez. Claude suit les deux comme instructions, donc aucun n'est imposé. Pour tout ce qui doit se produire à chaque fois, utilisez un [hook](https://code.claude.com/docs/fr/hooks-guide.md).

127 

128**CLAUDE.md vs Rules vs Skills**

129 

130Les trois stockent des instructions, mais elles se chargent différemment :

131 

132| Aspect | CLAUDE.md | `.claude/rules/` | Skill |

133| - | - | - | - |

134| **Se charge** | À chaque session | À chaque session, ou quand les fichiers correspondants sont ouverts | À la demande, quand invoqué ou pertinent |

135| **Portée** | Projet entier | Peut être limité aux chemins de fichiers | Spécifique à la tâche |

136| **Meilleur pour** | Conventions principales et commandes de construction | Directives spécifiques au langage ou au répertoire | Matériel de référence, flux de travail répétables |

137 

138**Utilisez CLAUDE.md** pour les instructions que chaque session a besoin : commandes de construction, conventions de test, architecture du projet.

139 

140**Utilisez les règles** pour garder CLAUDE.md concentré. Les règles avec [frontmatter `paths`](https://code.claude.com/docs/fr/memory#path-specific-rules) ne se chargent que quand Claude travaille avec des fichiers correspondants, économisant du contexte.

141 

142**Utilisez les skills** pour le contenu dont Claude n'a besoin que parfois, comme la documentation API ou une liste de contrôle de déploiement que vous déclenchez avec `/<name>`.

143 

144**Subagent vs Flux de travail dynamique**

145 

146Les deux font du travail en dehors de votre conversation principale. Avec les subagents, Claude décide tour après tour ce qui s'exécute ensuite. Dans un flux de travail, le script décide :

147 

148* **Subagents** sont des travailleurs que Claude génère, chacun retournant un résumé à la conversation qui l'a généré

149* **[Flux de travail dynamique](https://code.claude.com/docs/fr/workflows.md)** sont des scripts que Claude écrit qui exécutent de nombreux subagents en arrière-plan et retournent un résultat

150 

151**Utilisez un sous-agent** quand vous avez besoin d'un travailleur rapide et ciblé : rechercher une question, vérifier une affirmation, faire la revue d'un fichier. Le sous-agent fait le travail et retourne un résumé, afin que votre conversation principale reste propre. Les sous-agents que Claude a [nommés](https://code.claude.com/docs/fr/sub-agents.md#subagent-names) en les lançant peuvent aussi [s'envoyer des messages](https://code.claude.com/docs/fr/sub-agents.md#what-loads-at-startup).

152 

153**Utilisez un flux de travail dynamique** quand un travail [dépasse une poignée de subagents](https://code.claude.com/docs/fr/workflows.md#when-to-use-a-workflow), ou quand vous voulez que les conclusions soient vérifiées en croisant avant que vous les voyiez, comme un audit à l'échelle du codebase, une grande migration ou un plan rédigé sous plusieurs angles. Pour en démarrer un, [demandez un flux de travail dans votre invite](https://code.claude.com/docs/fr/workflows.md#ask-for-a-workflow-in-your-prompt).

154 

155**Pour transmettre une conclusion d'une de vos sessions à une autre**, demandez au Claude de la première session de l'envoyer. Claude la livre avec [messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md). [Exécutez les agents en parallèle](https://code.claude.com/docs/fr/agents.md) compare les autres façons d'exécuter plus d'un Claude à la fois, y compris les sessions que vous transmettez et vérifiez plus tard.

156 

157**MCP vs Skill**

158 

159MCP connecte Claude à des services externes. Les skills étendent ce que Claude connaît, y compris comment utiliser efficacement ces services.

160 

161| Aspect | MCP | Skill |

162| - | - | - |

163| **Ce que c'est** | Protocole de connexion à des services externes | Connaissances, flux de travail et matériel de référence |

164| **Fournit** | Accès aux outils et aux données | Connaissances, flux de travail, matériel de référence |

165| **Exemples** | Intégration Slack, requêtes de base de données, contrôle de navigateur | Liste de contrôle de relecture de code, flux de travail de déploiement, guide de style API |

166 

167Ces solutions résolvent des problèmes différents et fonctionnent bien ensemble :

168 

169**MCP** donne à Claude des outils spécialisés pour un système externe, avec la connexion et l'authentification gérées par le serveur.

170 

171**Skills** donnent à Claude des connaissances sur la façon d'utiliser efficacement ces outils, plus des flux de travail que vous pouvez déclencher avec `/<name>`. Une skill pourrait inclure le schéma de votre base de données et les modèles de requête, ou un flux de travail `/post-to-slack` avec les règles de formatage des messages de votre équipe.

172 

173**Hook vs Skill**

174 94 

175Claude Code exécute un hook à un événement du cycle de vie ; il charge une skill dans le contexte pour que Claude l'applique.95> [tab] CLAUDE.md vs Skill

96>

97> Les deux stockent des instructions, mais elles se chargent différemment et servent des objectifs différents.

98>

99> | Aspect | CLAUDE.md | Skill |

100> | - | - | - |

101> | **Se charge** | À chaque session, automatiquement | À la demande |

102> | **Peut inclure des fichiers** | Oui, avec les importations `@path` | Oui, avec les importations `@path` |

103> | **Peut déclencher des flux de travail** | Non | Oui, avec `/<name>` |

104> | **Meilleur pour** | Règles « toujours faire X » | Matériel de référence, flux de travail invocables |

105>

106> **Mettez-le dans CLAUDE.md** si Claude devrait toujours le savoir : conventions de codage, commandes de construction, structure du projet, règles « ne jamais faire X ».

107>

108> **Mettez-le dans une skill** si c'est du matériel de référence dont Claude a besoin parfois (documentation API, guides de style) ou un flux de travail que vous déclenchez avec `/<name>` (déployer, examiner, publier).

109>

110> **Règle générale :** Gardez CLAUDE.md sous 200 lignes. S'il grandit, déplacez le contenu de référence vers des skills ou divisez-le en fichiers [`.claude/rules/`](https://code.claude.com/docs/fr/memory#organize-rules-with-claude/rules/).

176 111 

177| Aspect | Hook | Skill |112> [tab] CLAUDE.md vs Output style

178| - | - | - |113>

179| **S'exécute** | Une commande shell, une requête HTTP, un appel d'outil MCP, une invite LLM ou un subagent | Instructions que Claude lit et suit |114> Les deux donnent à Claude des instructions permanentes. CLAUDE.md porte ce que Claude devrait savoir, et un style de sortie définit comment Claude répond.

180| **Déclenché par** | [Événements du cycle de vie](https://code.claude.com/docs/fr/hooks.md#hook-events) tels que `PostToolUse` ou `SessionStart` | Vous tapant `/<name>`, ou Claude correspondant à la description de votre tâche |115>

181| **Déterminisme** | Se déclenche sur son événement sans que Claude décide | Claude interprète les instructions ; le résultat peut varier |116> | Aspect | CLAUDE.md | Style de sortie |

182| **Coût du contexte** | Zéro sauf si le hook retourne une sortie | La description se charge à chaque session ; le contenu complet se charge quand utilisé |117> | - | - | - |

183| **Meilleur pour** | Linting après les modifications, blocage des commandes dangereuses, journalisation, notifications | Flux de travail qui nécessitent du raisonnement, matériel de référence, tâches multi-étapes |118> | **Contient** | Faits et règles sur votre projet | Un rôle, un ton et un format de réponse |

119> | **Changement** | Toujours chargé | Un actif à la fois ; [changez les styles](https://code.claude.com/docs/fr/output-styles.md#change-your-output-style) quand vous le souhaitez |

120> | **Meilleur pour** | Commandes de construction, conventions, règles « ne jamais faire X » | Réponses plus courtes, explications aux côtés du code, un rôle non-ingénierie |

121>

122> **Mettez-le dans CLAUDE.md** si c'est vrai du projet quel que soit le style dans lequel vous êtes : conventions de codage, commandes de construction, structure du projet.

123>

124> **Utilisez un style de sortie** si c'est sur la réponse elle-même et que vous pourriez vouloir l'éteindre à nouveau : longueur, format, combien Claude explique, ou un rôle différent comme un assistant en écriture. Claude Code inclut [des styles intégrés](https://code.claude.com/docs/fr/output-styles.md#built-in-output-styles), et vous pouvez écrire les vôtres.

125>

126> **Ils se combinent.** CLAUDE.md reste chargé quel que soit le style que vous choisissez. Claude suit les deux comme instructions, donc aucun n'est imposé. Pour tout ce qui doit se produire à chaque fois, utilisez un [hook](https://code.claude.com/docs/fr/hooks-guide.md).

184 127 

185**Utilisez un hook** quand l'action doit se produire de la même manière à chaque fois et n'a pas besoin que Claude réfléchisse. Par exemple : formater à la sauvegarde, rejeter `rm -rf /`, publier un message Slack quand une session se termine.128> [tab] CLAUDE.md vs Rules vs Skills

129>

130> Les trois stockent des instructions, mais elles se chargent différemment :

131>

132> | Aspect | CLAUDE.md | `.claude/rules/` | Skill |

133> | - | - | - | - |

134> | **Se charge** | À chaque session | À chaque session, ou quand les fichiers correspondants sont ouverts | À la demande, quand invoqué ou pertinent |

135> | **Portée** | Projet entier | Peut être limité aux chemins de fichiers | Spécifique à la tâche |

136> | **Meilleur pour** | Conventions principales et commandes de construction | Directives spécifiques au langage ou au répertoire | Matériel de référence, flux de travail répétables |

137>

138> **Utilisez CLAUDE.md** pour les instructions que chaque session a besoin : commandes de construction, conventions de test, architecture du projet.

139>

140> **Utilisez les règles** pour garder CLAUDE.md concentré. Les règles avec [frontmatter `paths`](https://code.claude.com/docs/fr/memory#path-specific-rules) ne se chargent que quand Claude travaille avec des fichiers correspondants, économisant du contexte.

141>

142> **Utilisez les skills** pour le contenu dont Claude n'a besoin que parfois, comme la documentation API ou une liste de contrôle de déploiement que vous déclenchez avec `/<name>`.

186 143 

187**Utilisez une skill** quand Claude devrait décider comment appliquer les étapes, ou quand le contenu est une connaissance plutôt qu'un script. Par exemple : une liste de contrôle `/release`, votre guide de style API, un playbook de débogage.144> [tab] Subagent vs Flux de travail dynamique

145>

146> Les deux font du travail en dehors de votre conversation principale. Avec les subagents, Claude décide tour après tour ce qui s'exécute ensuite. Dans un flux de travail, le script décide :

147>

148> * **Subagents** sont des travailleurs que Claude génère, chacun retournant un résumé à la conversation qui l'a généré

149> * **[Flux de travail dynamique](https://code.claude.com/docs/fr/workflows.md)** sont des scripts que Claude écrit qui exécutent de nombreux subagents en arrière-plan et retournent un résultat

150>

151> **Utilisez un sous-agent** quand vous avez besoin d'un travailleur rapide et ciblé : rechercher une question, vérifier une affirmation, faire la revue d'un fichier. Le sous-agent fait le travail et retourne un résumé, afin que votre conversation principale reste propre. Les sous-agents que Claude a [nommés](https://code.claude.com/docs/fr/sub-agents.md#subagent-names) en les lançant peuvent aussi [s'envoyer des messages](https://code.claude.com/docs/fr/sub-agents.md#what-loads-at-startup).

152>

153> **Utilisez un flux de travail dynamique** quand un travail [dépasse une poignée de subagents](https://code.claude.com/docs/fr/workflows.md#when-to-use-a-workflow), ou quand vous voulez que les conclusions soient vérifiées en croisant avant que vous les voyiez, comme un audit à l'échelle du codebase, une grande migration ou un plan rédigé sous plusieurs angles. Pour en démarrer un, [demandez un flux de travail dans votre invite](https://code.claude.com/docs/fr/workflows.md#ask-for-a-workflow-in-your-prompt).

154>

155> **Pour transmettre une conclusion d'une de vos sessions à une autre**, demandez au Claude de la première session de l'envoyer. Claude la livre avec [messagerie inter-sessions](https://code.claude.com/docs/fr/cross-session-messaging.md). [Exécutez les agents en parallèle](https://code.claude.com/docs/fr/agents.md) compare les autres façons d'exécuter plus d'un Claude à la fois, y compris les sessions que vous transmettez et vérifiez plus tard.

188 156 

189**Mettez les garde-fous dans les hooks.** Une instruction comme « ne jamais modifier `.env` » dans CLAUDE.md ou une skill est une demande, pas une garantie. Un hook `PreToolUse` qui bloque la modification est une application. Si une règle doit tenir à chaque fois, faites-en un hook plutôt qu'une instruction d'invite.157> [tab] MCP vs Skill

158>

159> MCP connecte Claude à des services externes. Les skills étendent ce que Claude connaît, y compris comment utiliser efficacement ces services.

160>

161> | Aspect | MCP | Skill |

162> | - | - | - |

163> | **Ce que c'est** | Protocole de connexion à des services externes | Connaissances, flux de travail et matériel de référence |

164> | **Fournit** | Accès aux outils et aux données | Connaissances, flux de travail, matériel de référence |

165> | **Exemples** | Intégration Slack, requêtes de base de données, contrôle de navigateur | Liste de contrôle de relecture de code, flux de travail de déploiement, guide de style API |

166>

167> Ces solutions résolvent des problèmes différents et fonctionnent bien ensemble :

168>

169> **MCP** donne à Claude des outils spécialisés pour un système externe, avec la connexion et l'authentification gérées par le serveur.

170>

171> **Skills** donnent à Claude des connaissances sur la façon d'utiliser efficacement ces outils, plus des flux de travail que vous pouvez déclencher avec `/<name>`. Une skill pourrait inclure le schéma de votre base de données et les modèles de requête, ou un flux de travail `/post-to-slack` avec les règles de formatage des messages de votre équipe.

190 172 

191**La sortie du hook atterrit dans le contexte.** Un hook `PostToolUse` qui exécute votre linter alimente les résultats en tant que texte que Claude lit ; une skill `/fix-lint` dit à Claude comment les résoudre.173> [tab] Hook vs Skill

174>

175> Claude Code exécute un hook à un événement du cycle de vie ; il charge une skill dans le contexte pour que Claude l'applique.

176>

177> | Aspect | Hook | Skill |

178> | - | - | - |

179> | **S'exécute** | Une commande shell, une requête HTTP, un appel d'outil MCP, une invite LLM ou un subagent | Instructions que Claude lit et suit |

180> | **Déclenché par** | [Événements du cycle de vie](https://code.claude.com/docs/fr/hooks.md#hook-events) tels que `PostToolUse` ou `SessionStart` | Vous tapant `/<name>`, ou Claude correspondant à la description de votre tâche |

181> | **Déterminisme** | Se déclenche sur son événement sans que Claude décide | Claude interprète les instructions ; le résultat peut varier |

182> | **Coût du contexte** | Zéro sauf si le hook retourne une sortie | La description se charge à chaque session ; le contenu complet se charge quand utilisé |

183> | **Meilleur pour** | Linting après les modifications, blocage des commandes dangereuses, journalisation, notifications | Flux de travail qui nécessitent du raisonnement, matériel de référence, tâches multi-étapes |

184>

185> **Utilisez un hook** quand l'action doit se produire de la même manière à chaque fois et n'a pas besoin que Claude réfléchisse. Par exemple : formater à la sauvegarde, rejeter `rm -rf /`, publier un message Slack quand une session se termine.

186>

187> **Utilisez une skill** quand Claude devrait décider comment appliquer les étapes, ou quand le contenu est une connaissance plutôt qu'un script. Par exemple : une liste de contrôle `/release`, votre guide de style API, un playbook de débogage.

188>

189> **Mettez les garde-fous dans les hooks.** Une instruction comme « ne jamais modifier `.env` » dans CLAUDE.md ou une skill est une demande, pas une garantie. Un hook `PreToolUse` qui bloque la modification est une application. Si une règle doit tenir à chaque fois, faites-en un hook plutôt qu'une instruction d'invite.

190>

191> **La sortie du hook atterrit dans le contexte.** Un hook `PostToolUse` qui exécute votre linter alimente les résultats en tant que texte que Claude lit ; une skill `/fix-lint` dit à Claude comment les résoudre.

192 192 

193### Comprendre comment les fonctionnalités se superposent193### Comprendre comment les fonctionnalités se superposent

194 194 


238 238 

239![Chargement du contexte : CLAUDE.md se charge au début de la session et reste dans chaque requête. Les noms d'outils MCP se chargent au démarrage avec les schémas complets reportés jusqu'à utilisation. Les skills chargent les descriptions au démarrage, le contenu complet à l'invocation. Les subagents obtiennent un contexte isolé. Les hooks s'exécutent en externe.](https://mintcdn.com/claude-code/ikqp3_70mqIahteV/images/context-loading.svg?fit=max\&auto=format\&n=ikqp3_70mqIahteV\&q=85\&s=aab139e750494a237ae2e0c8f9139b0a)239![Chargement du contexte : CLAUDE.md se charge au début de la session et reste dans chaque requête. Les noms d'outils MCP se chargent au démarrage avec les schémas complets reportés jusqu'à utilisation. Les skills chargent les descriptions au démarrage, le contenu complet à l'invocation. Les subagents obtiennent un contexte isolé. Les hooks s'exécutent en externe.](https://mintcdn.com/claude-code/ikqp3_70mqIahteV/images/context-loading.svg?fit=max\&auto=format\&n=ikqp3_70mqIahteV\&q=85\&s=aab139e750494a237ae2e0c8f9139b0a)

240 240 

241**CLAUDE.md**241> [tab] CLAUDE.md

242 

243**Quand :** Début de session

244 

245**Ce qui se charge :** Contenu complet de chaque fichier CLAUDE.md qui se charge au début de la session (niveaux géré, utilisateur et projet).

246 

247**Héritage :** Claude lit les fichiers CLAUDE.md de votre répertoire de travail jusqu'à la racine et découvre les fichiers imbriqués dans les sous-répertoires au fur et à mesure qu'il accède à ces fichiers. Consultez [Comment les fichiers CLAUDE.md se chargent](https://code.claude.com/docs/fr/memory.md#how-claude-md-files-load) pour plus de détails. Si un CLAUDE.md imbriqué dépasse sa [limite de taille par fichier](https://code.claude.com/docs/fr/memory.md#claude-ignores-the-end-of-my-subdirectory-claude-md), Claude ne reçoit que le début du fichier.

248 

249> [!TIP]

250>242>

251> Gardez CLAUDE.md sous 200 lignes. Déplacez le matériel de référence vers les skills, qui se chargent à la demande. Pour obtenir des [propositions de réduction pour un CLAUDE.md enregistré](https://code.claude.com/docs/fr/memory.md#my-claude-md-is-too-large), exécutez `/doctor`.243> **Quand :** Début de session

252 

253**Skills**

254 

255Les skills sont des capacités supplémentaires dans la boîte à outils de Claude. Elles peuvent être du matériel de référence (comme un guide de style API) ou des flux de travail invocables que vous déclenchez avec `/<name>` (comme `/deploy`). Claude Code inclut des [skills groupées](https://code.claude.com/docs/fr/commands.md) comme `/code-review`, `/batch` et `/debug` qui fonctionnent directement. Vous pouvez également créer les vôtres.

256 

257**Quand :** Dépend de la configuration de la skill. Par défaut, les descriptions se chargent au début de la session et le contenu complet se charge quand utilisé. Pour les skills utilisateur uniquement (`disable-model-invocation: true`), rien ne se charge jusqu'à ce que vous les invoquiez.

258 

259**Ce qui se charge :** Pour les skills invocables par modèle, Claude voit les noms et descriptions dans chaque requête. Quand vous invoquez une skill avec `/<name>` ou que Claude la charge automatiquement, le contenu complet se charge dans votre conversation.

260 

261**Comment Claude choisit les skills :** Claude associe votre tâche aux descriptions de skills pour décider lesquels sont pertinents. Si les descriptions sont vagues ou se chevauchent, Claude peut charger le mauvais skill ou en manquer un qui aiderait. Pour dire à Claude d'utiliser un skill spécifique, invoquez-le avec `/<name>`.

262 

263**Coût du contexte :** Faible jusqu'à utilisation. Les skills utilisateur uniquement ont un coût zéro jusqu'à invocation.

264 

265**Dans les sous-agents :** Le contenu complet des skills listés dans le champ `skills` d'un sous-agent [se charge dans son contexte au lancement](https://code.claude.com/docs/fr/sub-agents.md#preload-skills-into-subagents), plutôt qu'à la demande. Les sous-agents peuvent toujours découvrir et invoquer les skills de projet, utilisateur et plugin non listés via l'outil Skill.

266 

267> [!TIP]

268>244>

269> Utilisez `disable-model-invocation: true` pour les skills avec des effets secondaires. Cela économise du contexte et garantit qu'ils ne s'exécutent que lorsque vous les nommez.245> **Ce qui se charge :** Contenu complet de chaque fichier CLAUDE.md qui se charge au début de la session (niveaux géré, utilisateur et projet).

270 

271**Serveurs MCP**

272 

273**Quand :** Début de session.

274 

275**Ce qui se charge :** Noms d'outils et instructions du serveur à partir des serveurs connectés. Les schémas JSON complets restent reportés jusqu'à ce que Claude ait besoin d'un outil spécifique.

276 

277**Coût du contexte :** [Recherche d'outils](https://code.claude.com/docs/fr/mcp.md#scale-with-mcp-tool-search) est activée par défaut, donc les outils MCP inactifs consomment un contexte minimal.

278 

279> [!TIP]

280>246>

281> Exécutez `/mcp` pour voir l'état de la connexion de chaque serveur. Exécutez `/context all` pour voir combien de tokens chaque outil MCP chargé utilise. Claude Code [se reconnecte automatiquement aux serveurs distants](https://code.claude.com/docs/fr/mcp.md#automatic-reconnection) s'ils se déconnectent, et vous pouvez déconnecter les serveurs que vous n'utilisez pas activement.247> **Héritage :** Claude lit les fichiers CLAUDE.md de votre répertoire de travail jusqu'à la racine et découvre les fichiers imbriqués dans les sous-répertoires au fur et à mesure qu'il accède à ces fichiers. Consultez [Comment les fichiers CLAUDE.md se chargent](https://code.claude.com/docs/fr/memory.md#how-claude-md-files-load) pour plus de détails. Si un CLAUDE.md imbriqué dépasse sa [limite de taille par fichier](https://code.claude.com/docs/fr/memory.md#claude-ignores-the-end-of-my-subdirectory-claude-md), Claude ne reçoit que le début du fichier.

282 

283**Intelligence du code**

284 

285**Quand :** Après les modifications de fichiers, et à la demande quand Claude navigue dans le code.

286 

287**Ce qui se charge :** Erreurs de type et avertissements après chaque modification de fichier. Informations de définition, de référence et de type quand Claude recherche un symbole.

288 

289**Coût du contexte :** Faible. Les recherches de symboles remplacent souvent les lectures de fichiers larges, donc l'utilisation nette du contexte peut diminuer.

290 

291> [!TIP]

292>248>

293> L'outil LSP est inactif jusqu'à ce que vous installiez un [plugin d'intelligence du code](https://code.claude.com/docs/fr/plugins/code-intelligence.md) pour votre langage.249> > [!TIP]

294 250> >

295**Subagents**251> > Gardez CLAUDE.md sous 200 lignes. Déplacez le matériel de référence vers les skills, qui se chargent à la demande. Pour obtenir des [propositions de réduction pour un CLAUDE.md enregistré](https://code.claude.com/docs/fr/memory.md#my-claude-md-is-too-large), exécutez `/doctor`.

296 

297**Quand :** À la demande, quand vous ou Claude en générez un pour une tâche.

298 

299**Ce qui se charge :** Contexte frais et isolé contenant :

300 

301* Le prompt système propre à l'agent, pas le prompt système de Claude Code

302* Contenu complet des skills listés dans le champ `skills:` de l'agent

303* CLAUDE.md et le statut git. Les agents intégrés Explore et Plan [ne démarrent avec aucun des deux](https://code.claude.com/docs/fr/sub-agents.md#what-loads-at-startup), et un agent dont la définition définit [`omitClaudeMd`](https://code.claude.com/docs/fr/sub-agents#supported-frontmatter-fields) démarre sans les fichiers CLAUDE.md utilisateur, projet et local.

304* Quel que soit le contexte que l'agent principal transmet dans le prompt

305 

306Pour un [fork](https://code.claude.com/docs/fr/sub-agents.md#fork-the-current-conversation), Claude Code charge la conversation parent jusqu'à présent, l'invite système et les outils à la place.

307 

308**Coût du contexte :** Isolé de la session principale.

309 252 

310> [!TIP]253> [tab] Skills

311>254>

312> Utilisez les subagents pour le travail qui n'a pas besoin de votre contexte de conversation complet. Leur isolation empêche de gonfler votre session principale.255> Les skills sont des capacités supplémentaires dans la boîte à outils de Claude. Elles peuvent être du matériel de référence (comme un guide de style API) ou des flux de travail invocables que vous déclenchez avec `/<name>` (comme `/deploy`). Claude Code inclut des [skills groupées](https://code.claude.com/docs/fr/commands.md) comme `/code-review`, `/batch` et `/debug` qui fonctionnent directement. Vous pouvez également créer les vôtres.

313 256>

314**Hooks**257> **Quand :** Dépend de la configuration de la skill. Par défaut, les descriptions se chargent au début de la session et le contenu complet se charge quand utilisé. Pour les skills utilisateur uniquement (`disable-model-invocation: true`), rien ne se charge jusqu'à ce que vous les invoquiez.

258>

259> **Ce qui se charge :** Pour les skills invocables par modèle, Claude voit les noms et descriptions dans chaque requête. Quand vous invoquez une skill avec `/<name>` ou que Claude la charge automatiquement, le contenu complet se charge dans votre conversation.

260>

261> **Comment Claude choisit les skills :** Claude associe votre tâche aux descriptions de skills pour décider lesquels sont pertinents. Si les descriptions sont vagues ou se chevauchent, Claude peut charger le mauvais skill ou en manquer un qui aiderait. Pour dire à Claude d'utiliser un skill spécifique, invoquez-le avec `/<name>`.

262>

263> **Coût du contexte :** Faible jusqu'à utilisation. Les skills utilisateur uniquement ont un coût zéro jusqu'à invocation.

264>

265> **Dans les sous-agents :** Le contenu complet des skills listés dans le champ `skills` d'un sous-agent [se charge dans son contexte au lancement](https://code.claude.com/docs/fr/sub-agents.md#preload-skills-into-subagents), plutôt qu'à la demande. Les sous-agents peuvent toujours découvrir et invoquer les skills de projet, utilisateur et plugin non listés via l'outil Skill.

266>

267> > [!TIP]

268> >

269> > Utilisez `disable-model-invocation: true` pour les skills avec des effets secondaires. Cela économise du contexte et garantit qu'ils ne s'exécutent que lorsque vous les nommez.

315 270 

316**Quand :** Au déclenchement. Claude Code exécute les hooks à des événements de cycle de vie spécifiques comme l'exécution d'outils, les limites de session, la soumission d'invite, les demandes de permission et la compaction. Consultez [Hooks](https://code.claude.com/docs/fr/hooks.md) pour la liste complète.271> [tab] Serveurs MCP

272>

273> **Quand :** Début de session.

274>

275> **Ce qui se charge :** Noms d'outils et instructions du serveur à partir des serveurs connectés. Les schémas JSON complets restent reportés jusqu'à ce que Claude ait besoin d'un outil spécifique.

276>

277> **Coût du contexte :** [Recherche d'outils](https://code.claude.com/docs/fr/mcp.md#scale-with-mcp-tool-search) est activée par défaut, donc les outils MCP inactifs consomment un contexte minimal.

278>

279> > [!TIP]

280> >

281> > Exécutez `/mcp` pour voir l'état de la connexion de chaque serveur. Exécutez `/context all` pour voir combien de tokens chaque outil MCP chargé utilise. Claude Code [se reconnecte automatiquement aux serveurs distants](https://code.claude.com/docs/fr/mcp.md#automatic-reconnection) s'ils se déconnectent, et vous pouvez déconnecter les serveurs que vous n'utilisez pas activement.

317 282 

318**Ce qui se charge :** Rien par défaut. Les hooks s'exécutent en dehors de la conversation principale.283> [tab] Intelligence du code

284>

285> **Quand :** Après les modifications de fichiers, et à la demande quand Claude navigue dans le code.

286>

287> **Ce qui se charge :** Erreurs de type et avertissements après chaque modification de fichier. Informations de définition, de référence et de type quand Claude recherche un symbole.

288>

289> **Coût du contexte :** Faible. Les recherches de symboles remplacent souvent les lectures de fichiers larges, donc l'utilisation nette du contexte peut diminuer.

290>

291> > [!TIP]

292> >

293> > L'outil LSP est inactif jusqu'à ce que vous installiez un [plugin d'intelligence du code](https://code.claude.com/docs/fr/plugins/code-intelligence.md) pour votre langage.

319 294 

320**Coût du contexte :** Zéro, sauf si le hook retourne une sortie qui est ajoutée en tant que messages à votre conversation.295> [tab] Subagents

296>

297> **Quand :** À la demande, quand vous ou Claude en générez un pour une tâche.

298>

299> **Ce qui se charge :** Contexte frais et isolé contenant :

300>

301> * Le prompt système propre à l'agent, pas le prompt système de Claude Code

302> * Contenu complet des skills listés dans le champ `skills:` de l'agent

303> * CLAUDE.md et le statut git. Les agents intégrés Explore et Plan [ne démarrent avec aucun des deux](https://code.claude.com/docs/fr/sub-agents.md#what-loads-at-startup), et un agent dont la définition définit [`omitClaudeMd`](https://code.claude.com/docs/fr/sub-agents#supported-frontmatter-fields) démarre sans les fichiers CLAUDE.md utilisateur, projet et local.

304> * Quel que soit le contexte que l'agent principal transmet dans le prompt

305>

306> Pour un [fork](https://code.claude.com/docs/fr/sub-agents.md#fork-the-current-conversation), Claude Code charge la conversation parent jusqu'à présent, l'invite système et les outils à la place.

307>

308> **Coût du contexte :** Isolé de la session principale.

309>

310> > [!TIP]

311> >

312> > Utilisez les subagents pour le travail qui n'a pas besoin de votre contexte de conversation complet. Leur isolation empêche de gonfler votre session principale.

321 313 

322> [!TIP]314> [tab] Hooks

315>

316> **Quand :** Au déclenchement. Claude Code exécute les hooks à des événements de cycle de vie spécifiques comme l'exécution d'outils, les limites de session, la soumission d'invite, les demandes de permission et la compaction. Consultez [Hooks](https://code.claude.com/docs/fr/hooks.md) pour la liste complète.

317>

318> **Ce qui se charge :** Rien par défaut. Les hooks s'exécutent en dehors de la conversation principale.

319>

320> **Coût du contexte :** Zéro, sauf si le hook retourne une sortie qui est ajoutée en tant que messages à votre conversation.

323>321>

324> Les hooks sont idéaux pour les effets secondaires (linting, journalisation) qui n'ont pas besoin d'affecter le contexte de Claude.322> > [!TIP]

323> >

324> > Les hooks sont idéaux pour les effets secondaires (linting, journalisation) qui n'ont pas besoin d'affecter le contexte de Claude.

325 325 

326## En savoir plus326## En savoir plus

327 327 

328Chaque fonctionnalité a son propre guide avec des instructions de configuration, des exemples et des options de configuration.328Chaque fonctionnalité a son propre guide avec des instructions de configuration, des exemples et des options de configuration.

329 329 

330> **[CLAUDE.md](https://code.claude.com/docs/fr/memory.md)**330> [card] [CLAUDE.md](https://code.claude.com/docs/fr/memory.md)

331>331>

332> Stockez le contexte du projet, les conventions et les instructions332> Stockez le contexte du projet, les conventions et les instructions

333 333 

334> **[Skills](https://code.claude.com/docs/fr/skills.md)**334> [card] [Skills](https://code.claude.com/docs/fr/skills.md)

335>335>

336> Donnez à Claude une expertise de domaine et des flux de travail réutilisables336> Donnez à Claude une expertise de domaine et des flux de travail réutilisables

337 337 

338> **[Subagents](https://code.claude.com/docs/fr/sub-agents.md)**338> [card] [Subagents](https://code.claude.com/docs/fr/sub-agents.md)

339>339>

340> Déléguez le travail à un contexte isolé340> Déléguez le travail à un contexte isolé

341 341 

342> **[Dynamic workflows](https://code.claude.com/docs/fr/workflows.md)**342> [card] [Dynamic workflows](https://code.claude.com/docs/fr/workflows.md)

343>343>

344> Exécutez de nombreux subagents à partir d'un seul script344> Exécutez de nombreux subagents à partir d'un seul script

345 345 

346> **[Cross-session messaging](https://code.claude.com/docs/fr/cross-session-messaging.md)**346> [card] [Cross-session messaging](https://code.claude.com/docs/fr/cross-session-messaging.md)

347>347>

348> Laissez Claude envoyer des messages à vos autres sessions348> Laissez Claude envoyer des messages à vos autres sessions

349 349 

350> **[MCP](https://code.claude.com/docs/fr/mcp.md)**350> [card] [MCP](https://code.claude.com/docs/fr/mcp.md)

351>351>

352> Connectez Claude à des services externes352> Connectez Claude à des services externes

353 353 

354> **[Hooks](https://code.claude.com/docs/fr/hooks-guide.md)**354> [card] [Hooks](https://code.claude.com/docs/fr/hooks-guide.md)

355>355>

356> Automatisez les actions avec des hooks356> Automatisez les actions avec des hooks

357 357 

358> **[Plugins](https://code.claude.com/docs/fr/plugins/overview.md)**358> [card] [Plugins](https://code.claude.com/docs/fr/plugins/overview.md)

359>359>

360> Empaquetez et partagez des ensembles de fonctionnalités360> Empaquetez et partagez des ensembles de fonctionnalités

361 361 

362> **[Marketplaces](https://code.claude.com/docs/fr/plugins/create-marketplace.md)**362> [card] [Marketplaces](https://code.claude.com/docs/fr/plugins/create-marketplace.md)

363>363>

364> Hébergez et distribuez des collections de plugins364> Hébergez et distribuez des collections de plugins

Details

74Ajoutez l'un des secrets suivants à votre dépôt, selon votre mode d'authentification. Consultez le guide de GitHub sur l'[utilisation des secrets dans GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).74Ajoutez l'un des secrets suivants à votre dépôt, selon votre mode d'authentification. Consultez le guide de GitHub sur l'[utilisation des secrets dans GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).

75 75 

76* `ANTHROPIC_API_KEY` : une clé API Claude issue de la [Claude Console](https://platform.claude.com)76* `ANTHROPIC_API_KEY` : une clé API Claude issue de la [Claude Console](https://platform.claude.com)

77* `CLAUDE_CODE_OAUTH_TOKEN` : un jeton OAuth qui s'authentifie avec votre abonnement Claude, disponible avec les forfaits Pro, Max, Team et Enterprise. Générez-en un en exécutant `claude setup-token` en local. Consultez [Générer un jeton de longue durée](https://code.claude.com/docs/fr/authentication.md#generate-a-long-lived-token)77* `CLAUDE_CODE_OAUTH_TOKEN` : un jeton OAuth qui s'authentifie avec votre abonnement Claude, disponible avec les forfaits Pro, Max, Ultra, Team et Enterprise. Générez-en un en exécutant `claude setup-token` en local. Consultez [Générer un jeton de longue durée](https://code.claude.com/docs/fr/authentication.md#generate-a-long-lived-token)

78 78 

79Dans les fichiers de workflow, transmettez le secret à l'entrée correspondante : `anthropic_api_key` pour une clé API, ou `claude_code_oauth_token` pour un jeton OAuth.79Dans les fichiers de workflow, transmettez le secret à l'entrée correspondante : `anthropic_api_key` pour une clé API, ou `claude_code_oauth_token` pour un jeton OAuth.

80 80 

Details

59 59 

60Configurez votre cloud pour faire confiance au jeton OIDC que GitHub émet au workflow, afin que chaque exécution de workflow obtienne des identifiants cloud de courte durée. Les puces dans chaque onglet résument ce qu'il faut créer, et chaque onglet renvoie au guide du fournisseur cloud pour les étapes au niveau de la console.60Configurez votre cloud pour faire confiance au jeton OIDC que GitHub émet au workflow, afin que chaque exécution de workflow obtienne des identifiants cloud de courte durée. Les puces dans chaque onglet résument ce qu'il faut créer, et chaque onglet renvoie au guide du fournisseur cloud pour les étapes au niveau de la console.

61 61 

62**Amazon Bedrock**62> [tab] Amazon Bedrock

63 63>

64Créez la configuration de confiance dans votre compte AWS, en suivant le [guide AWS pour créer des fournisseurs d'identité OIDC](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html) :64> Créez la configuration de confiance dans votre compte AWS, en suivant le [guide AWS pour créer des fournisseurs d'identité OIDC](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html) :

65 65>

66* Ajoutez un fournisseur d'identité OIDC GitHub avec l'URL du fournisseur `https://token.actions.githubusercontent.com` et l'audience `sts.amazonaws.com`66> * Ajoutez un fournisseur d'identité OIDC GitHub avec l'URL du fournisseur `https://token.actions.githubusercontent.com` et l'audience `sts.amazonaws.com`

67* Créez un rôle IAM approuvé par ce fournisseur en tant qu'identité web, et attachez la politique d'invocation délimitée de [Configuration IAM](https://code.claude.com/docs/fr/amazon-bedrock.md#iam-configuration), qui accorde `bedrock:InvokeModel`, `bedrock:InvokeModelWithResponseStream`, `bedrock:ListInferenceProfiles` et `bedrock:GetInferenceProfile`, ainsi que deux actions d'abonnement `aws-marketplace`67> * Créez un rôle IAM approuvé par ce fournisseur en tant qu'identité web, et attachez la politique d'invocation délimitée de [Configuration IAM](https://code.claude.com/docs/fr/amazon-bedrock.md#iam-configuration), qui accorde `bedrock:InvokeModel`, `bedrock:InvokeModelWithResponseStream`, `bedrock:ListInferenceProfiles` et `bedrock:GetInferenceProfile`, ainsi que deux actions d'abonnement `aws-marketplace`

68* Limitez la politique de confiance du rôle à votre référentiel avec une condition de sujet telle que `repo:your-org/your-repo:*`. Voir le [guide de renforcement OIDC de GitHub](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect) pour le format de la réclamation68> * Limitez la politique de confiance du rôle à votre référentiel avec une condition de sujet telle que `repo:your-org/your-repo:*`. Voir le [guide de renforcement OIDC de GitHub](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect) pour le format de la réclamation

69 69>

70Notez l'ARN du rôle. Vous l'ajoutez en tant que secret à l'étape suivante.70> Notez l'ARN du rôle. Vous l'ajoutez en tant que secret à l'étape suivante.

71 

72**Google Cloud's Agent Platform**

73 

74Créez les ressources de fédération dans votre projet Google Cloud, en suivant la [documentation Workload Identity Federation](https://cloud.google.com/iam/docs/workload-identity-federation) :

75 

76* Activez trois API : IAM Credentials, Security Token Service (STS) et l'API Agent Platform, dont le nom du service est `aiplatform.googleapis.com`

77* Créez un pool Workload Identity avec un fournisseur OIDC GitHub dont l'émetteur est `https://token.actions.githubusercontent.com`, et ajoutez une condition d'attribut qui limite le pool à votre référentiel

78* Créez un compte de service dédié avec uniquement le rôle `Vertex AI User`, qui est `roles/aiplatform.user`, et autorisez le pool à l'emprunter

79 

80Notez le nom de ressource complet du fournisseur et l'adresse e-mail du compte de service. Vous les ajoutez en tant que secrets à l'étape suivante.

81 

82**Microsoft Foundry**

83 

84Créez une application Microsoft Entra avec une identité fédérée pour votre référentiel, en suivant le [guide Microsoft pour l'authentification à partir de GitHub Actions](https://learn.microsoft.com/en-us/azure/developer/github/connect-from-azure-openid-connect) :

85 71 

86* Enregistrez une application Microsoft Entra et ajoutez une identité fédérée qui fait confiance aux jetons que GitHub émet à votre référentiel. Une identité gérée affectée par l'utilisateur fonctionne à la place d'une application. Les deux ont l'ID client que vous notez ci-dessous72> [tab] Google Cloud's Agent Platform

87* Attribuez à l'application le rôle `Azure AI User` sur votre ressource Foundry. Voir [Configuration Azure RBAC](https://code.claude.com/docs/fr/microsoft-foundry.md#azure-rbac-configuration) pour un rôle personnalisé plus étroit73>

74> Créez les ressources de fédération dans votre projet Google Cloud, en suivant la [documentation Workload Identity Federation](https://cloud.google.com/iam/docs/workload-identity-federation) :

75>

76> * Activez trois API : IAM Credentials, Security Token Service (STS) et l'API Agent Platform, dont le nom du service est `aiplatform.googleapis.com`

77> * Créez un pool Workload Identity avec un fournisseur OIDC GitHub dont l'émetteur est `https://token.actions.githubusercontent.com`, et ajoutez une condition d'attribut qui limite le pool à votre référentiel

78> * Créez un compte de service dédié avec uniquement le rôle `Vertex AI User`, qui est `roles/aiplatform.user`, et autorisez le pool à l'emprunter

79>

80> Notez le nom de ressource complet du fournisseur et l'adresse e-mail du compte de service. Vous les ajoutez en tant que secrets à l'étape suivante.

88 81 

89Notez l'ID client de l'application, votre ID de locataire et votre ID d'abonnement. Vous les ajoutez en tant que secrets à l'étape suivante.82> [tab] Microsoft Foundry

83>

84> Créez une application Microsoft Entra avec une identité fédérée pour votre référentiel, en suivant le [guide Microsoft pour l'authentification à partir de GitHub Actions](https://learn.microsoft.com/en-us/azure/developer/github/connect-from-azure-openid-connect) :

85>

86> * Enregistrez une application Microsoft Entra et ajoutez une identité fédérée qui fait confiance aux jetons que GitHub émet à votre référentiel. Une identité gérée affectée par l'utilisateur fonctionne à la place d'une application. Les deux ont l'ID client que vous notez ci-dessous

87> * Attribuez à l'application le rôle `Azure AI User` sur votre ressource Foundry. Voir [Configuration Azure RBAC](https://code.claude.com/docs/fr/microsoft-foundry.md#azure-rbac-configuration) pour un rôle personnalisé plus étroit

88>

89> Notez l'ID client de l'application, votre ID de locataire et votre ID d'abonnement. Vous les ajoutez en tant que secrets à l'étape suivante.

90 90 

91**3. Ajouter les secrets du référentiel**91**3. Ajouter les secrets du référentiel**

92 92 


116>116>

117> Sur les référentiels publics, un commentaire contenant la phrase déclencheur de n'importe quel utilisateur démarre ce workflow. Les étapes d'identifiants s'exécutent avant que Claude Code GitHub Action vérifie l'accès en écriture du commentateur, de sorte que l'action rejette les utilisateurs non autorisés uniquement après que le workflow a généré un jeton d'application et s'est connecté à votre fournisseur cloud, ce qui laisse des entrées de journal d'audit et consomme des minutes d'Actions. Pour éviter ces exécutions, ajoutez une étape qui vérifie l'accès en écriture du commentateur avant les étapes d'identifiants.117> Sur les référentiels publics, un commentaire contenant la phrase déclencheur de n'importe quel utilisateur démarre ce workflow. Les étapes d'identifiants s'exécutent avant que Claude Code GitHub Action vérifie l'accès en écriture du commentateur, de sorte que l'action rejette les utilisateurs non autorisés uniquement après que le workflow a généré un jeton d'application et s'est connecté à votre fournisseur cloud, ce qui laisse des entrées de journal d'audit et consomme des minutes d'Actions. Pour éviter ces exécutions, ajoutez une étape qui vérifie l'accès en écriture du commentateur avant les étapes d'identifiants.

118 118 

119**Amazon Bedrock**119> [tab] Amazon Bedrock

120 120>

121Remplacez la valeur `aws-region` par la vôtre. L'étape d'identifiants l'exporte en tant que `AWS_REGION` pour le reste du travail.121> Remplacez la valeur `aws-region` par la vôtre. L'étape d'identifiants l'exporte en tant que `AWS_REGION` pour le reste du travail.

122 122>

123```yaml theme={null}123> ```yaml theme={null}

124name: Claude PR Action124> name: Claude PR Action

125 125>

126permissions:126> permissions:

127 contents: write127> contents: write

128 pull-requests: write128> pull-requests: write

129 issues: write129> issues: write

130 id-token: write130> id-token: write

131 131>

132on:132> on:

133 issue_comment:133> issue_comment:

134 types: [created]134> types: [created]

135 pull_request_review_comment:135> pull_request_review_comment:

136 types: [created]136> types: [created]

137 issues:137> issues:

138 types: [opened]138> types: [opened]

139 139>

140jobs:140> jobs:

141 claude-pr:141> claude-pr:

142 if: |142> if: |

143 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||143> (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

144 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||144> (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

145 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))145> (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

146 runs-on: ubuntu-latest146> runs-on: ubuntu-latest

147 steps:147> steps:

148 - name: Checkout repository148> - name: Checkout repository

149 uses: actions/checkout@v6149> uses: actions/checkout@v6

150 150>

151 - name: Generate GitHub App token151> - name: Generate GitHub App token

152 id: app-token152> id: app-token

153 uses: actions/create-github-app-token@v2153> uses: actions/create-github-app-token@v2

154 with:154> with:

155 app-id: ${{ secrets.APP_ID }}155> app-id: ${{ secrets.APP_ID }}

156 private-key: ${{ secrets.APP_PRIVATE_KEY }}156> private-key: ${{ secrets.APP_PRIVATE_KEY }}

157 157>

158 - name: Configure AWS Credentials (OIDC)158> - name: Configure AWS Credentials (OIDC)

159 uses: aws-actions/configure-aws-credentials@v4159> uses: aws-actions/configure-aws-credentials@v4

160 with:160> with:

161 role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}161> role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}

162 aws-region: us-west-2162> aws-region: us-west-2

163 163>

164 - uses: anthropics/claude-code-action@v1164> - uses: anthropics/claude-code-action@v1

165 with:165> with:

166 github_token: ${{ steps.app-token.outputs.token }}166> github_token: ${{ steps.app-token.outputs.token }}

167 use_bedrock: "true"167> use_bedrock: "true"

168 claude_args: '--model us.anthropic.claude-sonnet-4-6'168> claude_args: '--model us.anthropic.claude-sonnet-4-6'

169```169> ```

170 170>

171> [!TIP]171> > [!TIP]

172>172> >

173> Les ID de modèle Bedrock incluent un préfixe de profil d'inférence inter-régions tel que `us.`. Utilisez le préfixe pour le groupe de régions où vous avez accordé l'accès au modèle.173> > Les ID de modèle Bedrock incluent un préfixe de profil d'inférence inter-régions tel que `us.`. Utilisez le préfixe pour le groupe de régions où vous avez accordé l'accès au modèle.

174 174 

175**Google Cloud's Agent Platform**175> [tab] Google Cloud's Agent Platform

176 176>

177Remplacez la valeur `CLOUD_ML_REGION` par la vôtre. Vous n'avez pas besoin de coder en dur l'ID du projet, car le workflow le lit à partir de la sortie de l'étape `auth`.177> Remplacez la valeur `CLOUD_ML_REGION` par la vôtre. Vous n'avez pas besoin de coder en dur l'ID du projet, car le workflow le lit à partir de la sortie de l'étape `auth`.

178 178>

179```yaml theme={null}179> ```yaml theme={null}

180name: Claude PR Action180> name: Claude PR Action

181 181>

182permissions:182> permissions:

183 contents: write183> contents: write

184 pull-requests: write184> pull-requests: write

185 issues: write185> issues: write

186 id-token: write186> id-token: write

187 187>

188on:188> on:

189 issue_comment:189> issue_comment:

190 types: [created]190> types: [created]

191 pull_request_review_comment:191> pull_request_review_comment:

192 types: [created]192> types: [created]

193 issues:193> issues:

194 types: [opened]194> types: [opened]

195 195>

196jobs:196> jobs:

197 claude-pr:197> claude-pr:

198 if: |198> if: |

199 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||199> (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

200 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||200> (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

201 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))201> (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

202 runs-on: ubuntu-latest202> runs-on: ubuntu-latest

203 steps:203> steps:

204 - name: Checkout repository204> - name: Checkout repository

205 uses: actions/checkout@v6205> uses: actions/checkout@v6

206 206>

207 - name: Generate GitHub App token207> - name: Generate GitHub App token

208 id: app-token208> id: app-token

209 uses: actions/create-github-app-token@v2209> uses: actions/create-github-app-token@v2

210 with:210> with:

211 app-id: ${{ secrets.APP_ID }}211> app-id: ${{ secrets.APP_ID }}

212 private-key: ${{ secrets.APP_PRIVATE_KEY }}212> private-key: ${{ secrets.APP_PRIVATE_KEY }}

213 213>

214 - name: Authenticate to Google Cloud214> - name: Authenticate to Google Cloud

215 id: auth215> id: auth

216 uses: google-github-actions/auth@v2216> uses: google-github-actions/auth@v2

217 with:217> with:

218 workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}218> workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}

219 service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}219> service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}

220 220>

221 - uses: anthropics/claude-code-action@v1221> - uses: anthropics/claude-code-action@v1

222 with:222> with:

223 github_token: ${{ steps.app-token.outputs.token }}223> github_token: ${{ steps.app-token.outputs.token }}

224 use_vertex: "true"224> use_vertex: "true"

225 claude_args: '--model claude-sonnet-5'225> claude_args: '--model claude-sonnet-5'

226 env:226> env:

227 ANTHROPIC_VERTEX_PROJECT_ID: ${{ steps.auth.outputs.project_id }}227> ANTHROPIC_VERTEX_PROJECT_ID: ${{ steps.auth.outputs.project_id }}

228 CLOUD_ML_REGION: us-east5228> CLOUD_ML_REGION: us-east5

229```229> ```

230 230 

231**Microsoft Foundry**231> [tab] Microsoft Foundry

232 232>

233Remplacez `your-resource-name` par le nom de votre ressource Foundry. Claude Code construit l'URL du point de terminaison à partir de celui-ci. L'étape `azure/login` se connecte avec le jeton OIDC du workflow, et Claude Code récupère les identifiants via la [chaîne d'identifiants par défaut](https://learn.microsoft.com/en-us/azure/developer/javascript/sdk/authentication/credential-chains#defaultazurecredential-overview) Azure.233> Remplacez `your-resource-name` par le nom de votre ressource Foundry. Claude Code construit l'URL du point de terminaison à partir de celui-ci. L'étape `azure/login` se connecte avec le jeton OIDC du workflow, et Claude Code récupère les identifiants via la [chaîne d'identifiants par défaut](https://learn.microsoft.com/en-us/azure/developer/javascript/sdk/authentication/credential-chains#defaultazurecredential-overview) Azure.

234 234>

235```yaml theme={null}235> ```yaml theme={null}

236name: Claude PR Action236> name: Claude PR Action

237 237>

238permissions:238> permissions:

239 contents: write239> contents: write

240 pull-requests: write240> pull-requests: write

241 issues: write241> issues: write

242 id-token: write242> id-token: write

243 243>

244on:244> on:

245 issue_comment:245> issue_comment:

246 types: [created]246> types: [created]

247 pull_request_review_comment:247> pull_request_review_comment:

248 types: [created]248> types: [created]

249 issues:249> issues:

250 types: [opened]250> types: [opened]

251 251>

252jobs:252> jobs:

253 claude-pr:253> claude-pr:

254 if: |254> if: |

255 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||255> (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

256 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||256> (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

257 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))257> (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

258 runs-on: ubuntu-latest258> runs-on: ubuntu-latest

259 steps:259> steps:

260 - name: Checkout repository260> - name: Checkout repository

261 uses: actions/checkout@v6261> uses: actions/checkout@v6

262 262>

263 - name: Generate GitHub App token263> - name: Generate GitHub App token

264 id: app-token264> id: app-token

265 uses: actions/create-github-app-token@v2265> uses: actions/create-github-app-token@v2

266 with:266> with:

267 app-id: ${{ secrets.APP_ID }}267> app-id: ${{ secrets.APP_ID }}

268 private-key: ${{ secrets.APP_PRIVATE_KEY }}268> private-key: ${{ secrets.APP_PRIVATE_KEY }}

269 269>

270 - name: Authenticate to Azure270> - name: Authenticate to Azure

271 uses: azure/login@v2271> uses: azure/login@v2

272 with:272> with:

273 client-id: ${{ secrets.AZURE_CLIENT_ID }}273> client-id: ${{ secrets.AZURE_CLIENT_ID }}

274 tenant-id: ${{ secrets.AZURE_TENANT_ID }}274> tenant-id: ${{ secrets.AZURE_TENANT_ID }}

275 subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}275> subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}

276 276>

277 - uses: anthropics/claude-code-action@v1277> - uses: anthropics/claude-code-action@v1

278 with:278> with:

279 github_token: ${{ steps.app-token.outputs.token }}279> github_token: ${{ steps.app-token.outputs.token }}

280 use_foundry: "true"280> use_foundry: "true"

281 claude_args: '--model claude-sonnet-5'281> claude_args: '--model claude-sonnet-5'

282 env:282> env:

283 ANTHROPIC_FOUNDRY_RESOURCE: your-resource-name283> ANTHROPIC_FOUNDRY_RESOURCE: your-resource-name

284```284> ```

285 285>

286> [!TIP]286> > [!TIP]

287>287> >

288> Utilisez un ID de modèle qui correspond à un déploiement Claude dans votre ressource Foundry. Voir [Claude Code sur Microsoft Foundry](https://code.claude.com/docs/fr/microsoft-foundry.md) pour la configuration du modèle et l'épinglage de version.288> > Utilisez un ID de modèle qui correspond à un déploiement Claude dans votre ressource Foundry. Voir [Claude Code sur Microsoft Foundry](https://code.claude.com/docs/fr/microsoft-foundry.md) pour la configuration du modèle et l'épinglage de version.

289 289 

290Avec n'importe quel fournisseur, vous pouvez limiter la durée d'exécution et les coûts en ajoutant `--max-turns` à `claude_args`. Voir [Gérer les coûts](https://code.claude.com/docs/fr/github-actions.md#manage-costs).290Avec n'importe quel fournisseur, vous pouvez limiter la durée d'exécution et les coûts en ajoutant `--max-turns` à `claude_args`. Voir [Gérer les coûts](https://code.claude.com/docs/fr/github-actions.md#manage-costs).

291 291 

gitlab-ci-cd.md +52 −52

Details

158 158 

159Pour les environnements d'entreprise, vous pouvez exécuter Claude Code entièrement sur votre infrastructure cloud avec la même expérience développeur.159Pour les environnements d'entreprise, vous pouvez exécuter Claude Code entièrement sur votre infrastructure cloud avec la même expérience développeur.

160 160 

161**Amazon Bedrock**161> [tab] Amazon Bedrock

162 162>

163### Prérequis163> ### Prérequis

164 164>

165Avant de configurer Claude Code avec Amazon Bedrock, vous avez besoin de :165> Avant de configurer Claude Code avec Amazon Bedrock, vous avez besoin de :

166 166>

1671. Un compte AWS avec accès à Amazon Bedrock pour les modèles Claude souhaités167> 1. Un compte AWS avec accès à Amazon Bedrock pour les modèles Claude souhaités

1682. GitLab configuré en tant que fournisseur d'identité OIDC dans AWS IAM168> 2. GitLab configuré en tant que fournisseur d'identité OIDC dans AWS IAM

1693. Un rôle IAM avec les permissions Amazon Bedrock et une politique de confiance limitée à votre projet/références GitLab169> 3. Un rôle IAM avec les permissions Amazon Bedrock et une politique de confiance limitée à votre projet/références GitLab

1704. Des variables CI/CD GitLab pour l'assomption de rôle :170> 4. Des variables CI/CD GitLab pour l'assomption de rôle :

171 * `AWS_ROLE_TO_ASSUME` (ARN du rôle)171> * `AWS_ROLE_TO_ASSUME` (ARN du rôle)

172 * `AWS_REGION` (région Amazon Bedrock)172> * `AWS_REGION` (région Amazon Bedrock)

173 173>

174### Instructions de configuration174> ### Instructions de configuration

175 175>

176Configurez AWS pour permettre aux tâches CI GitLab d'assumer un rôle IAM via OIDC (sans clés statiques).176> Configurez AWS pour permettre aux tâches CI GitLab d'assumer un rôle IAM via OIDC (sans clés statiques).

177 177>

178**Configuration requise :**178> **Configuration requise :**

179 179>

1801. Activez Amazon Bedrock et demandez l'accès à vos modèles Claude cibles180> 1. Activez Amazon Bedrock et demandez l'accès à vos modèles Claude cibles

1812. Créez un fournisseur OIDC IAM pour GitLab s'il n'existe pas déjà181> 2. Créez un fournisseur OIDC IAM pour GitLab s'il n'existe pas déjà

1823. Créez un rôle IAM approuvé par le fournisseur OIDC GitLab, limité à votre projet et aux références protégées182> 3. Créez un rôle IAM approuvé par le fournisseur OIDC GitLab, limité à votre projet et aux références protégées

1834. Attachez les permissions de moindre privilège pour les API d'invocation Amazon Bedrock183> 4. Attachez les permissions de moindre privilège pour les API d'invocation Amazon Bedrock

184 184>

185Utilisez l'[exemple de tâche Amazon Bedrock](#configuration-examples) pour échanger le jeton OIDC de la tâche contre des identifiants AWS temporaires au moment de l'exécution.185> Utilisez l'[exemple de tâche Amazon Bedrock](#configuration-examples) pour échanger le jeton OIDC de la tâche contre des identifiants AWS temporaires au moment de l'exécution.

186 

187**Google Cloud's Agent Platform**

188 

189### Prérequis

190 

191Avant de configurer Claude Code avec Google Cloud's Agent Platform, vous avez besoin de :

192 

1931. Un projet Google Cloud avec :

194 * L'API Google Cloud's Agent Platform activée

195 * Workload Identity Federation configurée pour approuver OIDC GitLab

1962. Un compte de service dédié avec uniquement les rôles Google Cloud's Agent Platform requis

1973. Des variables CI/CD GitLab :

198 * `GCP_WORKLOAD_IDENTITY_PROVIDER` (nom de ressource du fournisseur sans le préfixe `//iam.googleapis.com/`, tel que `projects/123456789/locations/global/workloadIdentityPools/my-pool/providers/my-provider`)

199 * `GCP_SERVICE_ACCOUNT` (adresse e-mail du compte de service)

200 * `GCP_PROJECT_ID` (ID du projet Google Cloud)

201 

202### Instructions de configuration

203 

204Configurez Google Cloud pour permettre aux tâches CI GitLab d'emprunter l'identité d'un compte de service via Workload Identity Federation.

205 

206**Configuration requise :**

207 

2081. Activez l'API IAM Credentials, l'API STS et l'API Google Cloud's Agent Platform

2092. Créez un pool Workload Identity et un fournisseur pour OIDC GitLab

2103. Créez un compte de service dédié avec les rôles Google Cloud's Agent Platform

2114. Accordez au principal WIF la permission d'emprunter l'identité du compte de service

212 186 

213Utilisez l'[exemple de tâche Agent Platform](#configuration-examples) pour vous authentifier sans stocker de clés.187> [tab] Google Cloud's Agent Platform

188>

189> ### Prérequis

190>

191> Avant de configurer Claude Code avec Google Cloud's Agent Platform, vous avez besoin de :

192>

193> 1. Un projet Google Cloud avec :

194> * L'API Google Cloud's Agent Platform activée

195> * Workload Identity Federation configurée pour approuver OIDC GitLab

196> 2. Un compte de service dédié avec uniquement les rôles Google Cloud's Agent Platform requis

197> 3. Des variables CI/CD GitLab :

198> * `GCP_WORKLOAD_IDENTITY_PROVIDER` (nom de ressource du fournisseur sans le préfixe `//iam.googleapis.com/`, tel que `projects/123456789/locations/global/workloadIdentityPools/my-pool/providers/my-provider`)

199> * `GCP_SERVICE_ACCOUNT` (adresse e-mail du compte de service)

200> * `GCP_PROJECT_ID` (ID du projet Google Cloud)

201>

202> ### Instructions de configuration

203>

204> Configurez Google Cloud pour permettre aux tâches CI GitLab d'emprunter l'identité d'un compte de service via Workload Identity Federation.

205>

206> **Configuration requise :**

207>

208> 1. Activez l'API IAM Credentials, l'API STS et l'API Google Cloud's Agent Platform

209> 2. Créez un pool Workload Identity et un fournisseur pour OIDC GitLab

210> 3. Créez un compte de service dédié avec les rôles Google Cloud's Agent Platform

211> 4. Accordez au principal WIF la permission d'emprunter l'identité du compte de service

212>

213> Utilisez l'[exemple de tâche Agent Platform](#configuration-examples) pour vous authentifier sans stocker de clés.

214 214 

215## Exemples de configuration215## Exemples de configuration

216 216 

glossary.md +5 −2

Details

54 54 

55### Auto mode55### Auto mode

56 56 

57Un [permission mode](#permission-mode) où un modèle de classificateur séparé examine les actions au lieu de vous, de sorte que Claude Code exécute la plupart d'entre elles sans vous demander. Claude Code vous demande toujours avant les actions qui correspondent à vos règles d'ask explicites. Avec Claude Code v2.1.283 ou ultérieur, auto mode est le [permission mode de démarrage intégré](https://code.claude.com/docs/fr/permission-modes.md#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code, et sur les versions antérieures uniquement sur les plans Pro, Max et Team. Le classificateur bloque l'escalade de portée, l'infrastructure non fiable et [prompt injection](#prompt-injection). Les résultats des outils sont supprimés de ce qu'il voit, de sorte que le contenu hostile dans un fichier ou une page web ne peut pas le manipuler directement.57Un [mode de permission](#permission-mode) où un modèle classifieur distinct examine les actions à votre place, de sorte que Claude Code exécute la plupart d'entre elles sans vous demander. Claude Code vous demande toujours avant les actions qui correspondent à vos règles ask explicites. Le classifieur bloque l'escalade de portée, l'infrastructure non fiable et l'[injection de prompt](#prompt-injection). Les résultats des outils sont retirés de ce qu'il voit, de sorte que le contenu hostile dans un fichier ou une page web ne peut pas le manipuler directement.

58 

59* **Claude Code v2.1.283 ou ultérieur** : le mode auto est le [mode de permission de démarrage intégré](https://code.claude.com/docs/fr/permission-modes.md#which-mode-a-session-starts-in) pour les sessions interactives dans le terminal et VS Code

60* **Versions antérieures** : le mode auto est le mode de permission de démarrage intégré uniquement sur les plans Pro, Max, Ultra et Team

58 61 

59En savoir plus : [Eliminate prompts with auto mode](https://code.claude.com/docs/fr/permission-modes.md#eliminate-prompts-with-auto-mode)62En savoir plus : [Eliminate prompts with auto mode](https://code.claude.com/docs/fr/permission-modes.md#eliminate-prompts-with-auto-mode)

60 63 


140 143 

141### Dispatch144### Dispatch

142 145 

143Un routeur de tâches initié par téléphone qui génère une session Claude Code dans l'application Desktop lorsque vous envoyez une tâche de codage depuis l'application mobile Claude. Votre invite s'achemine automatiquement vers le bon outil. Disponible sur les plans Pro et Max.146Un routeur de tâches initié par téléphone qui génère une session Claude Code dans l'application Desktop lorsque vous envoyez une tâche de codage depuis l'application mobile Claude. Votre prompt s'achemine automatiquement vers le bon outil. Disponible sur les plans Pro, Max et Ultra.

144 147 

145En savoir plus : [Sessions from Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch)148En savoir plus : [Sessions from Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch)

146 149 

hooks.md +411 −411

Details

68 68 

69Pour voir comment l'événement, le matcher et le gestionnaire s'assemblent, considérez ce hook `PreToolUse` qui bloque les commandes shell destructrices.69Pour voir comment l'événement, le matcher et le gestionnaire s'assemblent, considérez ce hook `PreToolUse` qui bloque les commandes shell destructrices.

70 70 

71**macOS/Linux**71> [tab] macOS/Linux

72 72>

73Le `matcher` se limite aux appels d'outil Bash et la condition `if` se limite davantage aux sous-commandes Bash correspondant à `rm *`, donc `block-rm.sh` ne s'exécute que lorsque les deux filtres correspondent :73> Le `matcher` se limite aux appels d'outil Bash et la condition `if` se limite davantage aux sous-commandes Bash correspondant à `rm *`, donc `block-rm.sh` ne s'exécute que lorsque les deux filtres correspondent :

74 74>

75```json theme={null}75> ```json theme={null}

76{76> {

77 "hooks": {77> "hooks": {

78 "PreToolUse": [78> "PreToolUse": [

79 {79> {

80 "matcher": "Bash",80> "matcher": "Bash",

81 "hooks": [81> "hooks": [

82 {82> {

83 "type": "command",83> "type": "command",

84 "if": "Bash(rm *)",84> "if": "Bash(rm *)",

85 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh",85> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh",

86 "args": []86> "args": []

87 }87> }

88 ]88> ]

89 }89> }

90 ]90> ]

91 }91> }

92}92> }

93```93> ```

94 94>

95Le script lit l'entrée JSON depuis stdin, extrait la commande et retourne une `permissionDecision` de `"deny"` si elle contient `rm -rf`. Enregistrez-le dans `.claude/hooks/block-rm.sh` dans votre projet et rendez-le exécutable avec `chmod +x .claude/hooks/block-rm.sh` pour que Claude Code puisse l'exécuter :95> Le script lit l'entrée JSON depuis stdin, extrait la commande et retourne une `permissionDecision` de `"deny"` si elle contient `rm -rf`. Enregistrez-le dans `.claude/hooks/block-rm.sh` dans votre projet et rendez-le exécutable avec `chmod +x .claude/hooks/block-rm.sh` pour que Claude Code puisse l'exécuter :

96 96>

97```bash theme={null}97> ```bash theme={null}

98#!/bin/bash98> #!/bin/bash

99# .claude/hooks/block-rm.sh99> # .claude/hooks/block-rm.sh

100COMMAND=$(jq -r '.tool_input.command')100> COMMAND=$(jq -r '.tool_input.command')

101 101>

102if echo "$COMMAND" | grep -q 'rm -rf'; then102> if echo "$COMMAND" | grep -q 'rm -rf'; then

103 jq -n '{103> jq -n '{

104 hookSpecificOutput: {104> hookSpecificOutput: {

105 hookEventName: "PreToolUse",105> hookEventName: "PreToolUse",

106 permissionDecision: "deny",106> permissionDecision: "deny",

107 permissionDecisionReason: "Destructive command blocked by hook"107> permissionDecisionReason: "Destructive command blocked by hook"

108 }108> }

109 }'109> }'

110else110> else

111 exit 0 # no decision; normal permission flow applies111> exit 0 # no decision; normal permission flow applies

112fi112> fi

113```113> ```

114 114>

115Ce script, comme les autres exemples Bash sur cette page qui analysent l'entrée JSON, utilise `jq`, donc installez `jq` et assurez-vous qu'il se trouve sur votre `PATH` avant de les essayer.115> Ce script, comme les autres exemples Bash sur cette page qui analysent l'entrée JSON, utilise `jq`, donc installez `jq` et assurez-vous qu'il se trouve sur votre `PATH` avant de les essayer.

116 

117**Windows (PowerShell)**

118 

119Le matcher `Bash|PowerShell` couvre l'[outil PowerShell](#powershell) ainsi que Bash. Une seule règle `if` correspond aux appels d'un seul outil, donc chaque outil obtient son propre gestionnaire : le premier se limite aux sous-commandes Bash correspondant à `rm *`, le second aux commandes PowerShell correspondant à `Remove-Item *`. Les deux exécutent le même script via `powershell.exe` :

120 

121```json theme={null}

122{

123 "hooks": {

124 "PreToolUse": [

125 {

126 "matcher": "Bash|PowerShell",

127 "hooks": [

128 {

129 "type": "command",

130 "if": "Bash(rm *)",

131 "command": "powershell.exe",

132 "args": [

133 "-NoProfile",

134 "-ExecutionPolicy",

135 "Bypass",

136 "-File",

137 "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.ps1"

138 ]

139 },

140 {

141 "type": "command",

142 "if": "PowerShell(Remove-Item *)",

143 "command": "powershell.exe",

144 "args": [

145 "-NoProfile",

146 "-ExecutionPolicy",

147 "Bypass",

148 "-File",

149 "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.ps1"

150 ]

151 }

152 ]

153 }

154 ]

155 }

156}

157```

158 

159Le drapeau `-NoProfile` ignore le chargement de votre profil PowerShell pour que le hook démarre rapidement, et `-ExecutionPolicy Bypass` permet à PowerShell d'exécuter le fichier de script local.

160 

161Le script lit l'entrée JSON depuis stdin, extrait la commande et retourne une `permissionDecision` de `"deny"` si elle contient `rm -rf` ou `Remove-Item` suivi de `-Recurse`. Enregistrez-le dans `.claude/hooks/block-rm.ps1` dans votre projet :

162 

163```powershell theme={null}

164# .claude/hooks/block-rm.ps1

165$callInput = [Console]::In.ReadToEnd() | ConvertFrom-Json

166$command = $callInput.tool_input.command

167 116 

168if ($command -match 'rm -rf|Remove-Item.*-Recurse') {117> [tab] Windows (PowerShell)

169 @{118>

170 hookSpecificOutput = @{119> Le matcher `Bash|PowerShell` couvre l'[outil PowerShell](#powershell) ainsi que Bash. Une seule règle `if` correspond aux appels d'un seul outil, donc chaque outil obtient son propre gestionnaire : le premier se limite aux sous-commandes Bash correspondant à `rm *`, le second aux commandes PowerShell correspondant à `Remove-Item *`. Les deux exécutent le même script via `powershell.exe` :

171 hookEventName = "PreToolUse"120>

172 permissionDecision = "deny"121> ```json theme={null}

173 permissionDecisionReason = "Destructive command blocked by hook"122> {

174 }123> "hooks": {

175 } | ConvertTo-Json124> "PreToolUse": [

176} else {125> {

177 exit 0 # no decision; normal permission flow applies126> "matcher": "Bash|PowerShell",

178}127> "hooks": [

179```128> {

129> "type": "command",

130> "if": "Bash(rm *)",

131> "command": "powershell.exe",

132> "args": [

133> "-NoProfile",

134> "-ExecutionPolicy",

135> "Bypass",

136> "-File",

137> "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.ps1"

138> ]

139> },

140> {

141> "type": "command",

142> "if": "PowerShell(Remove-Item *)",

143> "command": "powershell.exe",

144> "args": [

145> "-NoProfile",

146> "-ExecutionPolicy",

147> "Bypass",

148> "-File",

149> "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.ps1"

150> ]

151> }

152> ]

153> }

154> ]

155> }

156> }

157> ```

158>

159> Le drapeau `-NoProfile` ignore le chargement de votre profil PowerShell pour que le hook démarre rapidement, et `-ExecutionPolicy Bypass` permet à PowerShell d'exécuter le fichier de script local.

160>

161> Le script lit l'entrée JSON depuis stdin, extrait la commande et retourne une `permissionDecision` de `"deny"` si elle contient `rm -rf` ou `Remove-Item` suivi de `-Recurse`. Enregistrez-le dans `.claude/hooks/block-rm.ps1` dans votre projet :

162>

163> ```powershell theme={null}

164> # .claude/hooks/block-rm.ps1

165> $callInput = [Console]::In.ReadToEnd() | ConvertFrom-Json

166> $command = $callInput.tool_input.command

167>

168> if ($command -match 'rm -rf|Remove-Item.*-Recurse') {

169> @{

170> hookSpecificOutput = @{

171> hookEventName = "PreToolUse"

172> permissionDecision = "deny"

173> permissionDecisionReason = "Destructive command blocked by hook"

174> }

175> } | ConvertTo-Json

176> } else {

177> exit 0 # no decision; normal permission flow applies

178> }

179> ```

180 180 

181Supposons maintenant que Claude Code décide d'exécuter `Bash "rm -rf /tmp/build"` par rapport à la configuration macOS/Linux. Voici ce qui se passe :181Supposons maintenant que Claude Code décide d'exécuter `Bash "rm -rf /tmp/build"` par rapport à la configuration macOS/Linux. Voici ce qui se passe :

182 182 


601 601 

602Préférez la [forme exec](#exec-form-and-shell-form) pour tout hook qui référence un placeholder de chemin. En forme shell, enveloppez chaque placeholder entre guillemets doubles.602Préférez la [forme exec](#exec-form-and-shell-form) pour tout hook qui référence un placeholder de chemin. En forme shell, enveloppez chaque placeholder entre guillemets doubles.

603 603 

604**Scripts de projet**604> [tab] Scripts de projet

605 605>

606Cet exemple utilise `${CLAUDE_PROJECT_DIR}` pour exécuter un vérificateur de style à partir du répertoire `.claude/hooks/` du projet après tout appel d'outil `Write` ou `Edit` :606> Cet exemple utilise `${CLAUDE_PROJECT_DIR}` pour exécuter un vérificateur de style à partir du répertoire `.claude/hooks/` du projet après tout appel d'outil `Write` ou `Edit` :

607 607>

608```json theme={null}608> ```json theme={null}

609{609> {

610 "hooks": {610> "hooks": {

611 "PostToolUse": [611> "PostToolUse": [

612 {612> {

613 "matcher": "Write|Edit",613> "matcher": "Write|Edit",

614 "hooks": [614> "hooks": [

615 {615> {

616 "type": "command",616> "type": "command",

617 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/check-style.sh",617> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/check-style.sh",

618 "args": []618> "args": []

619 }619> }

620 ]620> ]

621 }621> }

622 ]622> ]

623 }623> }

624}624> }

625```625> ```

626 626 

627**Scripts de plugin**627> [tab] Scripts de plugin

628 628>

629Définissez les hooks de plugin dans `hooks/hooks.json` avec un champ `description` optionnel au niveau supérieur. Lorsqu'un plugin est activé, ses hooks fusionnent avec vos hooks utilisateur et projet.629> Définissez les hooks de plugin dans `hooks/hooks.json` avec un champ `description` optionnel au niveau supérieur. Lorsqu'un plugin est activé, ses hooks fusionnent avec vos hooks utilisateur et projet.

630 630>

631Cet exemple exécute un script de formatage fourni avec le plugin :631> Cet exemple exécute un script de formatage fourni avec le plugin :

632 632>

633```json theme={null}633> ```json theme={null}

634{634> {

635 "description": "Automatic code formatting",635> "description": "Automatic code formatting",

636 "hooks": {636> "hooks": {

637 "PostToolUse": [637> "PostToolUse": [

638 {638> {

639 "matcher": "Write|Edit",639> "matcher": "Write|Edit",

640 "hooks": [640> "hooks": [

641 {641> {

642 "type": "command",642> "type": "command",

643 "command": "${CLAUDE_PLUGIN_ROOT}/scripts/format.sh",643> "command": "${CLAUDE_PLUGIN_ROOT}/scripts/format.sh",

644 "args": [],644> "args": [],

645 "timeout": 30645> "timeout": 30

646 }646> }

647 ]647> ]

648 }648> }

649 ]649> ]

650 }650> }

651}651> }

652```652> ```

653 653>

654Consultez la [référence des composants de plugin](https://code.claude.com/docs/fr/plugins/components.md#hooks) pour plus de détails sur la création de hooks de plugin.654> Consultez la [référence des composants de plugin](https://code.claude.com/docs/fr/plugins/components.md#hooks) pour plus de détails sur la création de hooks de plugin.

655 655 

656### Hooks dans les skills et agents656### Hooks dans les skills et agents

657 657 


1180 1180 

1181Voici des exemples de chaque modèle en action :1181Voici des exemples de chaque modèle en action :

1182 1182 

1183**Décision au niveau supérieur**1183> [tab] Décision au niveau supérieur

1184 1184>

1185La seule valeur pour `decision` est `"block"`. Pour autoriser l'action à procéder, omettez `decision` de votre JSON, ou quittez 0 sans aucun JSON :1185> La seule valeur pour `decision` est `"block"`. Pour autoriser l'action à procéder, omettez `decision` de votre JSON, ou quittez 0 sans aucun JSON :

1186 1186>

1187```json theme={null}1187> ```json theme={null}

1188{1188> {

1189 "decision": "block",1189> "decision": "block",

1190 "reason": "Test suite must pass before proceeding"1190> "reason": "Test suite must pass before proceeding"

1191}1191> }

1192```1192> ```

1193 1193 

1194**PreToolUse**1194> [tab] PreToolUse

1195 1195>

1196Utilise `hookSpecificOutput` pour un contrôle plus riche : autoriser, refuser, ou escalader à l'utilisateur. Vous pouvez également modifier l'entrée de l'outil avant son exécution ou injecter du contexte supplémentaire pour Claude. Consultez [Contrôle de décision PreToolUse](#pretooluse-decision-control) pour l'ensemble complet des options.1196> Utilise `hookSpecificOutput` pour un contrôle plus riche : autoriser, refuser, ou escalader à l'utilisateur. Vous pouvez également modifier l'entrée de l'outil avant son exécution ou injecter du contexte supplémentaire pour Claude. Consultez [Contrôle de décision PreToolUse](#pretooluse-decision-control) pour l'ensemble complet des options.

1197 1197>

1198```json theme={null}1198> ```json theme={null}

1199{1199> {

1200 "hookSpecificOutput": {1200> "hookSpecificOutput": {

1201 "hookEventName": "PreToolUse",1201> "hookEventName": "PreToolUse",

1202 "permissionDecision": "deny",1202> "permissionDecision": "deny",

1203 "permissionDecisionReason": "Database writes are not allowed"1203> "permissionDecisionReason": "Database writes are not allowed"

1204 }1204> }

1205}1205> }

1206```1206> ```

1207 1207 

1208**PermissionRequest**1208> [tab] PermissionRequest

1209 1209>

1210Utilise `hookSpecificOutput` pour autoriser ou refuser une demande de permission au nom de l'utilisateur. Lors de l'autorisation, vous pouvez également modifier l'entrée de l'outil ou appliquer des règles de permission afin que l'utilisateur ne soit pas sollicité à nouveau. Consultez [Contrôle de décision PermissionRequest](#permissionrequest-decision-control) pour l'ensemble complet des options.1210> Utilise `hookSpecificOutput` pour autoriser ou refuser une demande de permission au nom de l'utilisateur. Lors de l'autorisation, vous pouvez également modifier l'entrée de l'outil ou appliquer des règles de permission afin que l'utilisateur ne soit pas sollicité à nouveau. Consultez [Contrôle de décision PermissionRequest](#permissionrequest-decision-control) pour l'ensemble complet des options.

1211 1211>

1212```json theme={null}1212> ```json theme={null}

1213{1213> {

1214 "hookSpecificOutput": {1214> "hookSpecificOutput": {

1215 "hookEventName": "PermissionRequest",1215> "hookEventName": "PermissionRequest",

1216 "decision": {1216> "decision": {

1217 "behavior": "allow",1217> "behavior": "allow",

1218 "updatedInput": {1218> "updatedInput": {

1219 "command": "npm run lint"1219> "command": "npm run lint"

1220 }1220> }

1221 }1221> }

1222 }1222> }

1223}1223> }

1224```1224> ```

1225 1225 

1226Pour des exemples étendus incluant la validation de commandes Bash, le filtrage de prompts et les scripts d'approbation automatique, consultez [Ce que vous pouvez automatiser](https://code.claude.com/docs/fr/hooks-guide.md#what-you-can-automate) dans le guide et l'[implémentation de référence du validateur de commandes Bash](https://github.com/anthropics/claude-code/blob/main/examples/hooks/bash_command_validator_example.py).1226Pour des exemples étendus incluant la validation de commandes Bash, le filtrage de prompts et les scripts d'approbation automatique, consultez [Ce que vous pouvez automatiser](https://code.claude.com/docs/fr/hooks-guide.md#what-you-can-automate) dans le guide et l'[implémentation de référence du validateur de commandes Bash](https://github.com/anthropics/claude-code/blob/main/examples/hooks/bash_command_validator_example.py).

1227 1227 


1656 1656 

1657Cet exemple supprime la mise en forme markdown des réponses de Claude pour un affichage en texte brut. Le script lit chaque lot depuis stdin, supprime les marqueurs de gras et les backticks de code en ligne de `delta`, et renvoie le résultat en tant que `displayContent`.1657Cet exemple supprime la mise en forme markdown des réponses de Claude pour un affichage en texte brut. Le script lit chaque lot depuis stdin, supprime les marqueurs de gras et les backticks de code en ligne de `delta`, et renvoie le résultat en tant que `displayContent`.

1658 1658 

1659**macOS/Linux**1659> [tab] macOS/Linux

1660 1660>

1661Enregistrez un hook de commande pour l'événement dans votre fichier de paramètres :1661> Enregistrez un hook de commande pour l'événement dans votre fichier de paramètres :

1662 1662>

1663```json theme={null}1663> ```json theme={null}

1664{1664> {

1665 "hooks": {1665> "hooks": {

1666 "MessageDisplay": [1666> "MessageDisplay": [

1667 {1667> {

1668 "hooks": [1668> "hooks": [

1669 {1669> {

1670 "type": "command",1670> "type": "command",

1671 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/plain-display.sh",1671> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/plain-display.sh",

1672 "args": []1672> "args": []

1673 }1673> }

1674 ]1674> ]

1675 }1675> }

1676 ]1676> ]

1677 }1677> }

1678}1678> }

1679```1679> ```

1680 1680>

1681Enregistrez ce script dans `.claude/hooks/plain-display.sh` dans votre projet et rendez-le exécutable avec `chmod +x` :1681> Enregistrez ce script dans `.claude/hooks/plain-display.sh` dans votre projet et rendez-le exécutable avec `chmod +x` :

1682 1682>

1683```bash theme={null}1683> ```bash theme={null}

1684#!/bin/bash1684> #!/bin/bash

1685jq '{hookSpecificOutput: {hookEventName: "MessageDisplay", displayContent: (.delta | gsub("\\*\\*"; "") | gsub("`"; ""))}}'1685> jq '{hookSpecificOutput: {hookEventName: "MessageDisplay", displayContent: (.delta | gsub("\\*\\*"; "") | gsub("`"; ""))}}'

1686```1686> ```

1687 

1688**Windows (PowerShell)**

1689 

1690Enregistrez un hook de commande qui exécute le script via PowerShell :

1691 

1692```json theme={null}

1693{

1694 "hooks": {

1695 "MessageDisplay": [

1696 {

1697 "hooks": [

1698 {

1699 "type": "command",

1700 "command": "powershell.exe",

1701 "args": [

1702 "-NoProfile",

1703 "-ExecutionPolicy",

1704 "Bypass",

1705 "-File",

1706 "${CLAUDE_PROJECT_DIR}/.claude/hooks/plain-display.ps1"

1707 ]

1708 }

1709 ]

1710 }

1711 ]

1712 }

1713}

1714```

1715 

1716Le flag `-NoProfile` évite de charger votre profil PowerShell afin que le hook démarre rapidement, et `-ExecutionPolicy Bypass` permet à PowerShell d'exécuter le fichier de script local.

1717 

1718Enregistrez ce script dans `.claude/hooks/plain-display.ps1` dans votre projet :

1719 1687 

1720```powershell theme={null}1688> [tab] Windows (PowerShell)

1721$batch = [Console]::In.ReadToEnd() | ConvertFrom-Json1689>

1722$text = $batch.delta -replace '\*\*', '' -replace '`', ''1690> Enregistrez un hook de commande qui exécute le script via PowerShell :

1723@{1691>

1724 hookSpecificOutput = @{1692> ```json theme={null}

1725 hookEventName = "MessageDisplay"1693> {

1726 displayContent = $text1694> "hooks": {

1727 }1695> "MessageDisplay": [

1728} | ConvertTo-Json1696> {

1729```1697> "hooks": [

1698> {

1699> "type": "command",

1700> "command": "powershell.exe",

1701> "args": [

1702> "-NoProfile",

1703> "-ExecutionPolicy",

1704> "Bypass",

1705> "-File",

1706> "${CLAUDE_PROJECT_DIR}/.claude/hooks/plain-display.ps1"

1707> ]

1708> }

1709> ]

1710> }

1711> ]

1712> }

1713> }

1714> ```

1715>

1716> Le flag `-NoProfile` évite de charger votre profil PowerShell afin que le hook démarre rapidement, et `-ExecutionPolicy Bypass` permet à PowerShell d'exécuter le fichier de script local.

1717>

1718> Enregistrez ce script dans `.claude/hooks/plain-display.ps1` dans votre projet :

1719>

1720> ```powershell theme={null}

1721> $batch = [Console]::In.ReadToEnd() | ConvertFrom-Json

1722> $text = $batch.delta -replace '\*\*', '' -replace '`', ''

1723> @{

1724> hookSpecificOutput = @{

1725> hookEventName = "MessageDisplay"

1726> displayContent = $text

1727> }

1728> } | ConvertTo-Json

1729> ```

1730 1730 

1731Les lots sans markdown passent sans modification. Si le script échoue, par exemple parce que `jq` est absent, Claude Code affiche le texte d'origine et ne signale l'échec que dans la [sortie de débogage](#debug-hooks), et non dans la session.1731Les lots sans markdown passent sans modification. Si le script échoue, par exemple parce que `jq` est absent, Claude Code affiche le texte d'origine et ne signale l'échec que dans la [sortie de débogage](#debug-hooks), et non dans la session.

1732 1732 


3357 3357 

3358Écrivez le matcher sous la forme d'un nom exact, d'une liste séparée par `|` comme `claude-opus-4-6|claude-opus-5`, ou d'une expression régulière comme `.*opus.*`. Cet exemple utilise un matcher de nom exact et vérifie également `to_model` dans l'entrée du hook ; il refuse ainsi un passage à Opus 4.6 en se terminant avec le code 2 et laisse passer toute autre cible :3358Écrivez le matcher sous la forme d'un nom exact, d'une liste séparée par `|` comme `claude-opus-4-6|claude-opus-5`, ou d'une expression régulière comme `.*opus.*`. Cet exemple utilise un matcher de nom exact et vérifie également `to_model` dans l'entrée du hook ; il refuse ainsi un passage à Opus 4.6 en se terminant avec le code 2 et laisse passer toute autre cible :

3359 3359 

3360**macOS/Linux**3360> [tab] macOS/Linux

3361 3361>

3362La commande vérifie `to_model` avec `jq` :3362> La commande vérifie `to_model` avec `jq` :

3363 3363>

3364```json theme={null}3364> ```json theme={null}

3365{3365> {

3366 "hooks": {3366> "hooks": {

3367 "PreModelSwitch": [3367> "PreModelSwitch": [

3368 {3368> {

3369 "matcher": "claude-opus-4-6",3369> "matcher": "claude-opus-4-6",

3370 "hooks": [3370> "hooks": [

3371 {3371> {

3372 "type": "command",3372> "type": "command",

3373 "command": "jq -e '.to_model | test(\"opus-4-6\")' > /dev/null && { echo 'Opus 4.6 is retired for this project. Use a newer model.' >&2; exit 2; }; exit 0"3373> "command": "jq -e '.to_model | test(\"opus-4-6\")' > /dev/null && { echo 'Opus 4.6 is retired for this project. Use a newer model.' >&2; exit 2; }; exit 0"

3374 }3374> }

3375 ]3375> ]

3376 }3376> }

3377 ]3377> ]

3378 }3378> }

3379}3379> }

3380```3380> ```

3381 3381 

3382**Windows (PowerShell)**3382> [tab] Windows (PowerShell)

3383 3383>

3384Enregistrez un hook de commande qui exécute un script via PowerShell :3384> Enregistrez un hook de commande qui exécute un script via PowerShell :

3385 3385>

3386```json theme={null}3386> ```json theme={null}

3387{3387> {

3388 "hooks": {3388> "hooks": {

3389 "PreModelSwitch": [3389> "PreModelSwitch": [

3390 {3390> {

3391 "matcher": "claude-opus-4-6",3391> "matcher": "claude-opus-4-6",

3392 "hooks": [3392> "hooks": [

3393 {3393> {

3394 "type": "command",3394> "type": "command",

3395 "command": "powershell.exe",3395> "command": "powershell.exe",

3396 "args": [3396> "args": [

3397 "-NoProfile",3397> "-NoProfile",

3398 "-ExecutionPolicy",3398> "-ExecutionPolicy",

3399 "Bypass",3399> "Bypass",

3400 "-File",3400> "-File",

3401 "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-opus-46.ps1"3401> "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-opus-46.ps1"

3402 ]3402> ]

3403 }3403> }

3404 ]3404> ]

3405 }3405> }

3406 ]3406> ]

3407 }3407> }

3408}3408> }

3409```3409> ```

3410 3410>

3411Enregistrez ce script sous `.claude/hooks/block-opus-46.ps1` dans votre projet :3411> Enregistrez ce script sous `.claude/hooks/block-opus-46.ps1` dans votre projet :

3412 3412>

3413```powershell theme={null}3413> ```powershell theme={null}

3414$hookInput = [Console]::In.ReadToEnd() | ConvertFrom-Json3414> $hookInput = [Console]::In.ReadToEnd() | ConvertFrom-Json

3415if ($hookInput.to_model -match 'opus-4-6') {3415> if ($hookInput.to_model -match 'opus-4-6') {

3416 [Console]::Error.WriteLine('Opus 4.6 is retired for this project. Use a newer model.')3416> [Console]::Error.WriteLine('Opus 4.6 is retired for this project. Use a newer model.')

3417 exit 23417> exit 2

3418}3418> }

3419exit 03419> exit 0

3420```3420> ```

3421 3421 

3422Pour vérifier que le hook fonctionne, exécutez `/model claude-opus-4-6` depuis une session utilisant un autre modèle. Claude Code conserve le modèle actuel et signale qu'un hook PreModelSwitch a bloqué le changement, avec votre message comme motif.3422Pour vérifier que le hook fonctionne, exécutez `/model claude-opus-4-6` depuis une session utilisant un autre modèle. Claude Code conserve le modèle actuel et signale qu'un hook PreModelSwitch a bloqué le changement, avec votre message comme motif.

3423 3423 


3705 3705 

3706Cet exemple répond à une question récurrente à la place de l'utilisateur. Un serveur MCP nommé `issue-tracker` demande une clé de projet dans un formulaire, et le hook renseigne `DOCS`. Le script accepte lorsque `project_key` est l'unique champ du formulaire. Pour toute autre demande, il n'affiche rien, de sorte que la boîte de dialogue apparaît.3706Cet exemple répond à une question récurrente à la place de l'utilisateur. Un serveur MCP nommé `issue-tracker` demande une clé de projet dans un formulaire, et le hook renseigne `DOCS`. Le script accepte lorsque `project_key` est l'unique champ du formulaire. Pour toute autre demande, il n'affiche rien, de sorte que la boîte de dialogue apparaît.

3707 3707 

3708**macOS/Linux**3708> [tab] macOS/Linux

3709 3709>

3710Enregistrez un hook de commande pour l'événement dans votre fichier de paramètres, avec le nom du serveur comme matcher :3710> Enregistrez un hook de commande pour l'événement dans votre fichier de paramètres, avec le nom du serveur comme matcher :

3711 3711>

3712```json theme={null}3712> ```json theme={null}

3713{3713> {

3714 "hooks": {3714> "hooks": {

3715 "Elicitation": [3715> "Elicitation": [

3716 {3716> {

3717 "matcher": "issue-tracker",3717> "matcher": "issue-tracker",

3718 "hooks": [3718> "hooks": [

3719 {3719> {

3720 "type": "command",3720> "type": "command",

3721 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/answer-project-key.sh",3721> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/answer-project-key.sh",

3722 "args": []3722> "args": []

3723 }3723> }

3724 ]3724> ]

3725 }3725> }

3726 ]3726> ]

3727 }3727> }

3728}3728> }

3729```3729> ```

3730 3730>

3731Enregistrez ce script sous `.claude/hooks/answer-project-key.sh` dans votre projet et rendez-le exécutable avec `chmod +x` :3731> Enregistrez ce script sous `.claude/hooks/answer-project-key.sh` dans votre projet et rendez-le exécutable avec `chmod +x` :

3732 3732>

3733```bash theme={null}3733> ```bash theme={null}

3734#!/bin/bash3734> #!/bin/bash

3735input=$(cat)3735> input=$(cat)

3736fields=$(jq -c '.requested_schema.properties // {} | keys' <<<"$input")3736> fields=$(jq -c '.requested_schema.properties // {} | keys' <<<"$input")

3737 3737>

3738if [ "$fields" = '["project_key"]' ]; then3738> if [ "$fields" = '["project_key"]' ]; then

3739 jq -n '{hookSpecificOutput: {hookEventName: "Elicitation", action: "accept", content: {project_key: "DOCS"}}}'3739> jq -n '{hookSpecificOutput: {hookEventName: "Elicitation", action: "accept", content: {project_key: "DOCS"}}}'

3740fi3740> fi

3741```3741> ```

3742 

3743**Windows (PowerShell)**

3744 

3745Enregistrez un hook de commande qui exécute le script via PowerShell, avec le nom du serveur comme matcher :

3746 

3747```json theme={null}

3748{

3749 "hooks": {

3750 "Elicitation": [

3751 {

3752 "matcher": "issue-tracker",

3753 "hooks": [

3754 {

3755 "type": "command",

3756 "command": "powershell.exe",

3757 "args": [

3758 "-NoProfile",

3759 "-ExecutionPolicy",

3760 "Bypass",

3761 "-File",

3762 "${CLAUDE_PROJECT_DIR}/.claude/hooks/answer-project-key.ps1"

3763 ]

3764 }

3765 ]

3766 }

3767 ]

3768 }

3769}

3770```

3771 

3772Enregistrez ce script sous `.claude/hooks/answer-project-key.ps1` dans votre projet :

3773 

3774```powershell theme={null}

3775$request = [Console]::In.ReadToEnd() | ConvertFrom-Json

3776$fields = @($request.requested_schema.properties.PSObject.Properties.Name)

3777 3742 

3778if ($fields.Count -eq 1 -and $fields[0] -eq 'project_key') {3743> [tab] Windows (PowerShell)

3779 @{3744>

3780 hookSpecificOutput = @{3745> Enregistrez un hook de commande qui exécute le script via PowerShell, avec le nom du serveur comme matcher :

3781 hookEventName = "Elicitation"3746>

3782 action = "accept"3747> ```json theme={null}

3783 content = @{ project_key = "DOCS" }3748> {

3784 }3749> "hooks": {

3785 } | ConvertTo-Json -Depth 33750> "Elicitation": [

3786}3751> {

3787```3752> "matcher": "issue-tracker",

3753> "hooks": [

3754> {

3755> "type": "command",

3756> "command": "powershell.exe",

3757> "args": [

3758> "-NoProfile",

3759> "-ExecutionPolicy",

3760> "Bypass",

3761> "-File",

3762> "${CLAUDE_PROJECT_DIR}/.claude/hooks/answer-project-key.ps1"

3763> ]

3764> }

3765> ]

3766> }

3767> ]

3768> }

3769> }

3770> ```

3771>

3772> Enregistrez ce script sous `.claude/hooks/answer-project-key.ps1` dans votre projet :

3773>

3774> ```powershell theme={null}

3775> $request = [Console]::In.ReadToEnd() | ConvertFrom-Json

3776> $fields = @($request.requested_schema.properties.PSObject.Properties.Name)

3777>

3778> if ($fields.Count -eq 1 -and $fields[0] -eq 'project_key') {

3779> @{

3780> hookSpecificOutput = @{

3781> hookEventName = "Elicitation"

3782> action = "accept"

3783> content = @{ project_key = "DOCS" }

3784> }

3785> } | ConvertTo-Json -Depth 3

3786> }

3787> ```

3788 3788 

3789Pour vérifier que le hook fonctionne, démarrez Claude Code avec `claude --debug` et confiez à Claude une tâche qui amène le serveur à demander la clé de projet. Aucune boîte de dialogue n'apparaît, et le [log de débogage](#debug-hooks) contient une ligne qui se termine par `Elicitation resolved by hook: {"action":"accept","content":{"project_key":"DOCS"}}`.3789Pour vérifier que le hook fonctionne, démarrez Claude Code avec `claude --debug` et confiez à Claude une tâche qui amène le serveur à demander la clé de projet. Aucune boîte de dialogue n'apparaît, et le [log de débogage](#debug-hooks) contient une ligne qui se termine par `Elicitation resolved by hook: {"action":"accept","content":{"project_key":"DOCS"}}`.

3790 3790 

hooks-guide.md +144 −144

Details

89 89 

90Chaque onglet ci-dessous utilise la commande de notification native de la plateforme. Ajoutez ceci à `~/.claude/settings.json` :90Chaque onglet ci-dessous utilise la commande de notification native de la plateforme. Ajoutez ceci à `~/.claude/settings.json` :

91 91 

92**macOS**92> [tab] macOS

93 

94```json theme={null}

95{

96 "hooks": {

97 "Notification": [

98 {

99 "matcher": "",

100 "hooks": [

101 {

102 "type": "command",

103 "command": "osascript -e 'display notification \"Claude Code needs your attention\" with title \"Claude Code\"'"

104 }

105 ]

106 }

107 ]

108 }

109}

110```

111 

112> **Si aucune notification n'apparaît**

113>

114> `osascript` achemine les notifications via l'application intégrée Éditeur de script. Si l'Éditeur de script n'a pas la permission d'afficher des notifications, la commande échoue silencieusement et macOS ne vous invite pas à l'accorder.

115>93>

116> Exécutez ceci une fois dans Terminal pour faire apparaître l'Éditeur de script dans vos paramètres de notification :94> ```json theme={null}

117>95> {

118> ```bash theme={null}96> "hooks": {

119> osascript -e 'display notification "test"'97> "Notification": [

98> {

99> "matcher": "",

100> "hooks": [

101> {

102> "type": "command",

103> "command": "osascript -e 'display notification \"Claude Code needs your attention\" with title \"Claude Code\"'"

104> }

105> ]

106> }

107> ]

108> }

109> }

120> ```110> ```

121>111>

122> Rien n'apparaîtra encore. Ouvrez **Réglages Système > Notifications**, trouvez **Éditeur de script** dans la liste et activez **Autoriser les notifications**. Exécutez à nouveau la commande pour confirmer que la notification de test apparaît.112> > [accordion] Si aucune notification n'apparaît

123 113> >

124**Linux**114> > `osascript` achemine les notifications via l'application intégrée Éditeur de script. Si l'Éditeur de script n'a pas la permission d'afficher des notifications, la commande échoue silencieusement et macOS ne vous invite pas à l'accorder.

125 115> >

126```json theme={null}116> > Exécutez ceci une fois dans Terminal pour faire apparaître l'Éditeur de script dans vos paramètres de notification :

127{117> >

128 "hooks": {118> > ```bash theme={null}

129 "Notification": [119> > osascript -e 'display notification "test"'

130 {120> > ```

131 "matcher": "",121> >

132 "hooks": [122> > Rien n'apparaîtra encore. Ouvrez **Réglages Système > Notifications**, trouvez **Éditeur de script** dans la liste et activez **Autoriser les notifications**. Exécutez à nouveau la commande pour confirmer que la notification de test apparaît.

133 {123 

134 "type": "command",124> [tab] Linux

135 "command": "notify-send 'Claude Code' 'Claude Code needs your attention'"

136 }

137 ]

138 }

139 ]

140 }

141}

142```

143 

144> **Si aucune notification n'apparaît**

145>

146> `notify-send` nécessite un démon de notifications de bureau, dont sont dépourvus les serveurs headless, les sessions SSH et la plupart des conteneurs. Testez d'abord la commande directement :

147>125>

148> ```bash theme={null}126> ```json theme={null}

149> notify-send 'Claude Code' 'test'127> {

128> "hooks": {

129> "Notification": [

130> {

131> "matcher": "",

132> "hooks": [

133> {

134> "type": "command",

135> "command": "notify-send 'Claude Code' 'Claude Code needs your attention'"

136> }

137> ]

138> }

139> ]

140> }

141> }

150> ```142> ```

151>143>

152> Si la commande est introuvable, installez le paquet `libnotify-bin` sur Debian et Ubuntu, ou l'équivalent pour votre distribution.144> > [accordion] Si aucune notification n'apparaît

153 145> >

154**Windows (PowerShell)**146> > `notify-send` nécessite un démon de notifications de bureau, dont sont dépourvus les serveurs headless, les sessions SSH et la plupart des conteneurs. Testez d'abord la commande directement :

155 147> >

156```json theme={null}148> > ```bash theme={null}

157{149> > notify-send 'Claude Code' 'test'

158 "hooks": {150> > ```

159 "Notification": [151> >

160 {152> > Si la commande est introuvable, installez le paquet `libnotify-bin` sur Debian et Ubuntu, ou l'équivalent pour votre distribution.

161 "matcher": "",153 

162 "hooks": [154> [tab] Windows (PowerShell)

163 {

164 "type": "command",

165 "command": "powershell.exe -Command \"[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms'); [System.Windows.Forms.MessageBox]::Show('Claude Code needs your attention', 'Claude Code')\""

166 }

167 ]

168 }

169 ]

170 }

171}

172```

173 

174> **Si aucune boîte de dialogue n'apparaît**

175>155>

176> Cette commande ouvre une boîte de dialogue plutôt qu'une notification dans le coin de votre écran ; la boîte de dialogue peut donc s'ouvrir derrière la fenêtre de votre terminal. Testez d'abord la commande directement dans PowerShell.156> ```json theme={null}

157> {

158> "hooks": {

159> "Notification": [

160> {

161> "matcher": "",

162> "hooks": [

163> {

164> "type": "command",

165> "command": "powershell.exe -Command \"[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms'); [System.Windows.Forms.MessageBox]::Show('Claude Code needs your attention', 'Claude Code')\""

166> }

167> ]

168> }

169> ]

170> }

171> }

172> ```

177>173>

178> Si vous exécutez Claude Code dans WSL, `powershell.exe` doit être disponible dans votre `PATH` via l'interopérabilité Windows.174> > [accordion] Si aucune boîte de dialogue n'apparaît

175> >

176> > Cette commande ouvre une boîte de dialogue plutôt qu'une notification dans le coin de votre écran ; la boîte de dialogue peut donc s'ouvrir derrière la fenêtre de votre terminal. Testez d'abord la commande directement dans PowerShell.

177> >

178> > Si vous exécutez Claude Code dans WSL, `powershell.exe` doit être disponible dans votre `PATH` via l'interopérabilité Windows.

179 179 

180Le `matcher` vide se déclenche pour tous les types de notification. Pour ne le déclencher que sur des événements spécifiques, définissez-le sur l'une de ces valeurs :180Le `matcher` vide se déclenche pour tous les types de notification. Pour ne le déclencher que sur des événements spécifiques, définissez-le sur l'une de ces valeurs :

181 181 


705 705 

706Les onglets ci-dessous montrent quelques autres matchers sur différents types d'événements.706Les onglets ci-dessous montrent quelques autres matchers sur différents types d'événements.

707 707 

708**Enregistrer chaque commande Bash**708> [tab] Enregistrer chaque commande Bash

709 709>

710Correspond uniquement aux appels d'outil `Bash` et enregistre chaque commande dans un fichier. L'événement `PostToolUse` se déclenche après la fin de la commande, donc `tool_input.command` contient ce qui a été exécuté. Le hook reçoit les données d'événement en JSON sur stdin, et `jq -r '.tool_input.command'` extrait juste la chaîne de commande, que `>>` ajoute au fichier journal :710> Correspond uniquement aux appels d'outil `Bash` et enregistre chaque commande dans un fichier. L'événement `PostToolUse` se déclenche après la fin de la commande, donc `tool_input.command` contient ce qui a été exécuté. Le hook reçoit les données d'événement en JSON sur stdin, et `jq -r '.tool_input.command'` extrait juste la chaîne de commande, que `>>` ajoute au fichier journal :

711 711>

712```json theme={null}712> ```json theme={null}

713{713> {

714 "hooks": {714> "hooks": {

715 "PostToolUse": [715> "PostToolUse": [

716 {716> {

717 "matcher": "Bash",717> "matcher": "Bash",

718 "hooks": [718> "hooks": [

719 {719> {

720 "type": "command",720> "type": "command",

721 "command": "jq -r '.tool_input.command' >> ~/.claude/command-log.txt"721> "command": "jq -r '.tool_input.command' >> ~/.claude/command-log.txt"

722 }722> }

723 ]723> ]

724 }724> }

725 ]725> ]

726 }726> }

727}727> }

728```728> ```

729 

730**Correspondre aux outils MCP**

731 

732Les outils MCP utilisent une convention de nommage différente des outils intégrés : `mcp__<server>__<tool>`, où `<server>` est le nom du serveur MCP et `<tool>` est l'outil qu'il fournit. Par exemple, `mcp__github__search_repositories` ou `mcp__filesystem__read_file`. Les outils d'un [serveur fourni par plugin](https://code.claude.com/docs/fr/mcp.md#plugin-provided-mcp-servers) utilisent un segment de serveur délimité à la place, comme `mcp__plugin_my-plugin_db__query`. Utilisez un matcher regex pour cibler tous les outils d'un serveur spécifique, ou correspondre entre les serveurs avec un modèle comme `mcp__.*__write.*`. Consultez [Correspondre aux outils MCP](https://code.claude.com/docs/fr/hooks.md#match-mcp-tools) dans la référence pour la liste complète des exemples.

733 

734La commande ci-dessous extrait le nom de l'outil de l'entrée JSON du hook avec `jq` et l'écrit sur stderr. L'écriture sur stderr garde stdout propre pour la sortie JSON et envoie le message au [journal de débogage](https://code.claude.com/docs/fr/hooks.md#debug-hooks) :

735 

736```json theme={null}

737{

738 "hooks": {

739 "PreToolUse": [

740 {

741 "matcher": "mcp__github__.*",

742 "hooks": [

743 {

744 "type": "command",

745 "command": "echo \"GitHub tool called: $(jq -r '.tool_name')\" >&2"

746 }

747 ]

748 }

749 ]

750 }

751}

752```

753 

754**Nettoyer à la fin de la session**

755 729 

756L'événement `SessionEnd` supporte les matchers sur la raison de la fin de la session. Ce hook ne se déclenche que sur `clear` (lorsque vous exécutez `/clear`), pas sur les sorties normales :730> [tab] Correspondre aux outils MCP

731>

732> Les outils MCP utilisent une convention de nommage différente des outils intégrés : `mcp__<server>__<tool>`, où `<server>` est le nom du serveur MCP et `<tool>` est l'outil qu'il fournit. Par exemple, `mcp__github__search_repositories` ou `mcp__filesystem__read_file`. Les outils d'un [serveur fourni par plugin](https://code.claude.com/docs/fr/mcp.md#plugin-provided-mcp-servers) utilisent un segment de serveur délimité à la place, comme `mcp__plugin_my-plugin_db__query`. Utilisez un matcher regex pour cibler tous les outils d'un serveur spécifique, ou correspondre entre les serveurs avec un modèle comme `mcp__.*__write.*`. Consultez [Correspondre aux outils MCP](https://code.claude.com/docs/fr/hooks.md#match-mcp-tools) dans la référence pour la liste complète des exemples.

733>

734> La commande ci-dessous extrait le nom de l'outil de l'entrée JSON du hook avec `jq` et l'écrit sur stderr. L'écriture sur stderr garde stdout propre pour la sortie JSON et envoie le message au [journal de débogage](https://code.claude.com/docs/fr/hooks.md#debug-hooks) :

735>

736> ```json theme={null}

737> {

738> "hooks": {

739> "PreToolUse": [

740> {

741> "matcher": "mcp__github__.*",

742> "hooks": [

743> {

744> "type": "command",

745> "command": "echo \"GitHub tool called: $(jq -r '.tool_name')\" >&2"

746> }

747> ]

748> }

749> ]

750> }

751> }

752> ```

757 753 

758```json theme={null}754> [tab] Nettoyer à la fin de la session

759{755>

760 "hooks": {756> L'événement `SessionEnd` supporte les matchers sur la raison de la fin de la session. Ce hook ne se déclenche que sur `clear` (lorsque vous exécutez `/clear`), pas sur les sorties normales :

761 "SessionEnd": [757>

762 {758> ```json theme={null}

763 "matcher": "clear",759> {

764 "hooks": [760> "hooks": {

765 {761> "SessionEnd": [

766 "type": "command",762> {

767 "command": "rm -f /tmp/claude-scratch-*.txt"763> "matcher": "clear",

768 }764> "hooks": [

769 ]765> {

770 }766> "type": "command",

771 ]767> "command": "rm -f /tmp/claude-scratch-*.txt"

772 }768> }

773}769> ]

774```770> }

771> ]

772> }

773> }

774> ```

775 775 

776#### Filtrer par nom d'outil et arguments avec le champ `if`776#### Filtrer par nom d'outil et arguments avec le champ `if`

777 777 

Details

163 163 

164Choisissez un mode de permission pour définir ce que Claude peut faire sans vous demander. Appuyez sur `Shift+Tab` pour parcourir les modes de permission :164Choisissez un mode de permission pour définir ce que Claude peut faire sans vous demander. Appuyez sur `Shift+Tab` pour parcourir les modes de permission :

165 165 

166* **Auto** : un classificateur examine la plupart des actions en arrière-plan et bloque les actions risquées au lieu de vous demander. Avec Claude Code v2.1.283 ou version ultérieure, c'est le [mode de permission de démarrage intégré](https://code.claude.com/docs/fr/permission-modes.md#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code, et sur les versions antérieures uniquement sur les plans Pro, Max et Team166* **Auto** : un classifieur examine la plupart des actions en arrière-plan et bloque les actions risquées au lieu de vous demander. Avec Claude Code v2.1.283 ou version ultérieure, c'est le [mode de permission de démarrage intégré](https://code.claude.com/docs/fr/permission-modes.md#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code. Sur les versions antérieures, c'est le mode de permission de démarrage intégré uniquement sur les plans Pro, Max, Ultra et Team.

167* **Manual** : Claude demande avant les éditions de fichiers et les commandes shell167* **Manual** : Claude demande avant les éditions de fichiers et les commandes shell

168* **Accept edits** : Claude édite les fichiers et exécute les commandes courantes du système de fichiers comme `mkdir` et `mv` sans demander, demande toujours pour les autres commandes168* **Accept edits** : Claude édite les fichiers et exécute les commandes courantes du système de fichiers comme `mkdir` et `mv` sans demander, demande toujours pour les autres commandes

169* **Plan** : Claude explore et propose un plan sans éditer vos fichiers source169* **Plan** : Claude explore et propose un plan sans éditer vos fichiers source


223 223 

224## Prochaines étapes224## Prochaines étapes

225 225 

226> **[Étendre avec des fonctionnalités](https://code.claude.com/docs/fr/features-overview.md)**226> [card] [Étendre avec des fonctionnalités](https://code.claude.com/docs/fr/features-overview.md)

227>227>

228> Ajouter des Skills et des connexions MCP228> Ajouter des Skills et des connexions MCP

229 229 

230> **[Workflows courants](https://code.claude.com/docs/fr/common-workflows.md)**230> [card] [Workflows courants](https://code.claude.com/docs/fr/common-workflows.md)

231>231>

232> Guides pas à pas pour les tâches typiques232> Guides pas à pas pour les tâches typiques

Details

537 537 

538Claude Code lit le paramètre [`spellcheck`](https://code.claude.com/docs/fr/settings-reference#spellcheck) à partir de trois emplacements, et l'ignore dans le `.claude/settings.json` et `.claude/settings.local.json` d'un projet. Activez-le à partir de celui que vous utilisez :538Claude Code lit le paramètre [`spellcheck`](https://code.claude.com/docs/fr/settings-reference#spellcheck) à partir de trois emplacements, et l'ignore dans le `.claude/settings.json` et `.claude/settings.local.json` d'un projet. Activez-le à partir de celui que vous utilisez :

539 539 

540**Paramètres utilisateur**540> [tab] Paramètres utilisateur

541 541>

542Ajoutez `spellcheck` à `~/.claude/settings.json`. Il s'applique dans chaque projet que vous ouvrez, comme le reste de vos [paramètres utilisateur](https://code.claude.com/docs/fr/settings.md#where-settings-live) :542> Ajoutez `spellcheck` à `~/.claude/settings.json`. Il s'applique dans chaque projet que vous ouvrez, comme le reste de vos [paramètres utilisateur](https://code.claude.com/docs/fr/settings.md#where-settings-live) :

543 543>

544```json theme={null}544> ```json theme={null}

545{545> {

546 "spellcheck": { "enabled": true }546> "spellcheck": { "enabled": true }

547}547> }

548```548> ```

549 

550**Ligne de commande**

551 

552Enregistrez `spellcheck` dans un fichier JSON, tel que `spellcheck.json` :

553 

554```json theme={null}

555{

556 "spellcheck": { "enabled": true }

557}

558```

559 

560Ensuite, transmettez le fichier à `--settings`. Il s'applique à cette session uniquement :

561 

562```bash theme={null}

563claude --settings spellcheck.json

564```

565 

566**Paramètres gérés**

567 549 

568Ajoutez `spellcheck` à l'une des [sources de paramètres gérés](https://code.claude.com/docs/fr/permissions.md#managed-settings) de votre organisation. Il s'applique à chaque utilisateur qui reçoit ces paramètres, et ils ne peuvent pas le désactiver :550> [tab] Ligne de commande

551>

552> Enregistrez `spellcheck` dans un fichier JSON, tel que `spellcheck.json` :

553>

554> ```json theme={null}

555> {

556> "spellcheck": { "enabled": true }

557> }

558> ```

559>

560> Ensuite, transmettez le fichier à `--settings`. Il s'applique à cette session uniquement :

561>

562> ```bash theme={null}

563> claude --settings spellcheck.json

564> ```

569 565 

570```json theme={null}566> [tab] Paramètres gérés

571{567>

572 "spellcheck": { "enabled": true }568> Ajoutez `spellcheck` à l'une des [sources de paramètres gérés](https://code.claude.com/docs/fr/permissions.md#managed-settings) de votre organisation. Il s'applique à chaque utilisateur qui reçoit ces paramètres, et ils ne peuvent pas le désactiver :

573}569>

574```570> ```json theme={null}

571> {

572> "spellcheck": { "enabled": true }

573> }

574> ```

575 575 

576Pour vérifier que la vérification orthographique est activée, tapez un mot mal orthographié et un espace. Claude Code souligne le mot. Si ce n'est pas le cas, consultez [Quand Claude Code ne souligne rien](#when-claude-code-underlines-nothing). Pour désactiver à nouveau la vérification orthographique, définissez `enabled` sur `false` au même endroit, ou supprimez `spellcheck`.576Pour vérifier que la vérification orthographique est activée, tapez un mot mal orthographié et un espace. Claude Code souligne le mot. Si ce n'est pas le cas, consultez [Quand Claude Code ne souligne rien](#when-claude-code-underlines-nothing). Pour désactiver à nouveau la vérification orthographique, définissez `enabled` sur `false` au même endroit, ou supprimez `spellcheck`.

577 577 

jetbrains.md +1 −1

Details

41 41 

42Si `claude` est installé quelque part que votre IDE ne peut pas trouver, définissez le chemin complet dans les [paramètres de commande Claude](#general-settings) du plugin.42Si `claude` est installé quelque part que votre IDE ne peut pas trouver, définissez le chemin complet dans les [paramètres de commande Claude](#general-settings) du plugin.

43 43 

44Claude Code fonctionne avec n'importe quel abonnement Claude payant (Pro, Max, Team ou Enterprise) ou un compte Claude Console, et aucune clé API n'est requise. Vous serez invité à [vous connecter](https://code.claude.com/docs/fr/authentication.md#log-in-to-claude-code) la première fois que vous exécutez `claude`.44Claude Code fonctionne avec n'importe quel abonnement Claude payant (Pro, Max, Ultra, Team ou Enterprise) ou un compte Claude Console, et aucune clé API n'est requise. Vous serez invité à [vous connecter](https://code.claude.com/docs/fr/authentication.md#log-in-to-claude-code) la première fois que vous exécutez `claude`.

45 45 

46## Utilisation46## Utilisation

47 47 

Details

73 73 

74Remplacez les valeurs par celles que votre équipe de passerelle vous a données :74Remplacez les valeurs par celles que votre équipe de passerelle vous a données :

75 75 

76**Bash ou Zsh**76> [tab] Bash ou Zsh

77 77>

78```bash theme={null}78> ```bash theme={null}

79export ANTHROPIC_BASE_URL=https://llm-gateway.example.com79> export ANTHROPIC_BASE_URL=https://llm-gateway.example.com

80export ANTHROPIC_AUTH_TOKEN=sk-gateway-key80> export ANTHROPIC_AUTH_TOKEN=sk-gateway-key

81```81> ```

82 

83**PowerShell**

84 82 

85```powershell theme={null}83> [tab] PowerShell

86$env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"84>

87$env:ANTHROPIC_AUTH_TOKEN = "sk-gateway-key"85> ```powershell theme={null}

88```86> $env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"

87> $env:ANTHROPIC_AUTH_TOKEN = "sk-gateway-key"

88> ```

89 89 

90Les exports shell s'appliquent uniquement à cette session de terminal et aux programmes lancés à partir de celle-ci. Un éditeur lancé depuis le dock ou le menu Démarrer ne les verra pas. Pour les faire persister dans les nouveaux terminaux, ajoutez les mêmes lignes à votre profil shell, comme `~/.zshrc`, `~/.bashrc`, ou votre `$PROFILE` PowerShell.90Les exports shell s'appliquent uniquement à cette session de terminal et aux programmes lancés à partir de celle-ci. Un éditeur lancé depuis le dock ou le menu Démarrer ne les verra pas. Pour les faire persister dans les nouveaux terminaux, ajoutez les mêmes lignes à votre profil shell, comme `~/.zshrc`, `~/.bashrc`, ou votre `$PROFILE` PowerShell.

91 91 


119 119 

120Avec les variables exportées dans votre shell, envoyez une demande d'un jeton à la passerelle directement. Cela confirme que l'URL et l'identifiant fonctionnent avant d'ouvrir Claude Code, de sorte qu'une défaillance pointe vers la passerelle plutôt que votre configuration. Les commandes ci-dessous lisent les variables shell, elles ont donc besoin des [exports shell](#set-as-shell-environment-variables) même si vous mettez aussi les valeurs dans un fichier de paramètres.120Avec les variables exportées dans votre shell, envoyez une demande d'un jeton à la passerelle directement. Cela confirme que l'URL et l'identifiant fonctionnent avant d'ouvrir Claude Code, de sorte qu'une défaillance pointe vers la passerelle plutôt que votre configuration. Les commandes ci-dessous lisent les variables shell, elles ont donc besoin des [exports shell](#set-as-shell-environment-variables) même si vous mettez aussi les valeurs dans un fichier de paramètres.

121 121 

122**Bash ou Zsh**122> [tab] Bash ou Zsh

123 123>

124```bash theme={null}124> ```bash theme={null}

125curl -sS -w '\n%{http_code}\n' -X POST "$ANTHROPIC_BASE_URL/v1/messages" \125> curl -sS -w '\n%{http_code}\n' -X POST "$ANTHROPIC_BASE_URL/v1/messages" \

126 -H "Authorization: Bearer $ANTHROPIC_AUTH_TOKEN" \126> -H "Authorization: Bearer $ANTHROPIC_AUTH_TOKEN" \

127 -H "anthropic-version: 2023-06-01" \127> -H "anthropic-version: 2023-06-01" \

128 -H "content-type: application/json" \128> -H "content-type: application/json" \

129 -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'129> -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

130```130> ```

131 131 

132**PowerShell**132> [tab] PowerShell

133 133>

134```powershell theme={null}134> ```powershell theme={null}

135Invoke-RestMethod -Method Post -Uri "$env:ANTHROPIC_BASE_URL/v1/messages" `135> Invoke-RestMethod -Method Post -Uri "$env:ANTHROPIC_BASE_URL/v1/messages" `

136 -Headers @{ "Authorization" = "Bearer $env:ANTHROPIC_AUTH_TOKEN"; "anthropic-version" = "2023-06-01" } `136> -Headers @{ "Authorization" = "Bearer $env:ANTHROPIC_AUTH_TOKEN"; "anthropic-version" = "2023-06-01" } `

137 -ContentType "application/json" `137> -ContentType "application/json" `

138 -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'138> -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

139```139> ```

140 140 

141Si votre passerelle s'attend à des clés dans l'en-tête `x-api-key`, remplacez l'en-tête `Authorization` par `x-api-key: $ANTHROPIC_API_KEY` dans la commande Bash, ou l'entrée de table de hachage `"Authorization"` par `"x-api-key" = "$env:ANTHROPIC_API_KEY"` dans la commande PowerShell.141Si votre passerelle s'attend à des clés dans l'en-tête `x-api-key`, remplacez l'en-tête `Authorization` par `x-api-key: $ANTHROPIC_API_KEY` dans la commande Bash, ou l'entrée de table de hachage `"Authorization"` par `"x-api-key" = "$env:ANTHROPIC_API_KEY"` dans la commande PowerShell.

142 142 


274 274 

275Certaines passerelles routent ou balisent les demandes en utilisant un en-tête personnalisé en plus de l'identifiant, par exemple un identifiant de locataire ou une clé de routage. Pour en envoyer un, définissez [`ANTHROPIC_CUSTOM_HEADERS`](https://code.claude.com/docs/fr/env-vars) avec une paire `Name: Value` par ligne. L'exemple ci-dessous ajoute un en-tête de routage nommé `X-Org-Route` :275Certaines passerelles routent ou balisent les demandes en utilisant un en-tête personnalisé en plus de l'identifiant, par exemple un identifiant de locataire ou une clé de routage. Pour en envoyer un, définissez [`ANTHROPIC_CUSTOM_HEADERS`](https://code.claude.com/docs/fr/env-vars) avec une paire `Name: Value` par ligne. L'exemple ci-dessous ajoute un en-tête de routage nommé `X-Org-Route` :

276 276 

277**Bash ou Zsh**277> [tab] Bash ou Zsh

278 278>

279```bash theme={null}279> ```bash theme={null}

280export ANTHROPIC_CUSTOM_HEADERS="X-Org-Route: prod"280> export ANTHROPIC_CUSTOM_HEADERS="X-Org-Route: prod"

281```281> ```

282 

283**PowerShell**

284 282 

285```powershell theme={null}283> [tab] PowerShell

286$env:ANTHROPIC_CUSTOM_HEADERS = "X-Org-Route: prod"284>

287```285> ```powershell theme={null}

286> $env:ANTHROPIC_CUSTOM_HEADERS = "X-Org-Route: prod"

287> ```

288 288 

289Vous pouvez aussi définir `ANTHROPIC_CUSTOM_HEADERS` dans le bloc `env` d'un fichier de paramètres. Utilisez `\n` entre les paires là, puisque les chaînes JSON ne peuvent pas s'étendre sur plusieurs lignes :289Vous pouvez aussi définir `ANTHROPIC_CUSTOM_HEADERS` dans le bloc `env` d'un fichier de paramètres. Utilisez `\n` entre les paires là, puisque les chaînes JSON ne peuvent pas s'étendre sur plusieurs lignes :

290 290 


318 318 

319L'assistant est n'importe quelle commande shell qui imprime l'identifiant actuel sur stdout. Claude Code l'exécute via votre shell système, donc sur Windows il peut être un exécutable ou une invocation PowerShell. La commande ne doit rien imprimer d'autre que l'identifiant. Sur Claude Code v2.1.227 ou ultérieur, une bannière ou une ligne de journal imprimée à côté de la clé fait [échouer l'assistant](https://code.claude.com/docs/fr/errors.md#your-apikeyhelper-script-is-failing). Écrivez le script, rendez-le exécutable, et référencez-le à partir de `apiKeyHelper` dans votre [fichier de paramètres](https://code.claude.com/docs/fr/settings.md) :319L'assistant est n'importe quelle commande shell qui imprime l'identifiant actuel sur stdout. Claude Code l'exécute via votre shell système, donc sur Windows il peut être un exécutable ou une invocation PowerShell. La commande ne doit rien imprimer d'autre que l'identifiant. Sur Claude Code v2.1.227 ou ultérieur, une bannière ou une ligne de journal imprimée à côté de la clé fait [échouer l'assistant](https://code.claude.com/docs/fr/errors.md#your-apikeyhelper-script-is-failing). Écrivez le script, rendez-le exécutable, et référencez-le à partir de `apiKeyHelper` dans votre [fichier de paramètres](https://code.claude.com/docs/fr/settings.md) :

320 320 

321**Bash ou Zsh**321> [tab] Bash ou Zsh

322 322>

323Par exemple, un script qui lit à partir d'un coffre-fort :323> Par exemple, un script qui lit à partir d'un coffre-fort :

324 324>

325```bash theme={null}325> ```bash theme={null}

326#!/bin/bash326> #!/bin/bash

327vault kv get -field=api_key secret/llm-gateway/claude-code327> vault kv get -field=api_key secret/llm-gateway/claude-code

328```328> ```

329 329>

330Référencez son chemin dans `~/.claude/settings.json` :330> Référencez son chemin dans `~/.claude/settings.json` :

331 331>

332```json theme={null}332> ```json theme={null}

333{333> {

334 "apiKeyHelper": "~/bin/get-gateway-key.sh"334> "apiKeyHelper": "~/bin/get-gateway-key.sh"

335}335> }

336```336> ```

337 

338**PowerShell**

339 

340Par exemple, un script qui lit à partir d'un coffre-fort :

341 

342```powershell theme={null}

343vault kv get -field=api_key secret/llm-gateway/claude-code

344```

345 

346Référencez l'invocation PowerShell dans `%USERPROFILE%\.claude\settings.json`, en échappant les barres obliques inverses dans la chaîne JSON :

347 337 

348```json theme={null}338> [tab] PowerShell

349{339>

350 "apiKeyHelper": "powershell -NoProfile -File C:\\scripts\\get-gateway-key.ps1"340> Par exemple, un script qui lit à partir d'un coffre-fort :

351}341>

352```342> ```powershell theme={null}

343> vault kv get -field=api_key secret/llm-gateway/claude-code

344> ```

345>

346> Référencez l'invocation PowerShell dans `%USERPROFILE%\.claude\settings.json`, en échappant les barres obliques inverses dans la chaîne JSON :

347>

348> ```json theme={null}

349> {

350> "apiKeyHelper": "powershell -NoProfile -File C:\\scripts\\get-gateway-key.ps1"

351> }

352> ```

353 353 

354Claude Code met en cache la sortie de l'assistant pendant cinq minutes par défaut et réexécute l'assistant après l'expiration de la durée de vie du cache. Pour changer la durée de vie, définissez `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` en millisecondes, par exemple `CLAUDE_CODE_API_KEY_HELPER_TTL_MS=900000` pour 15 minutes.354Claude Code met en cache la sortie de l'assistant pendant cinq minutes par défaut et réexécute l'assistant après l'expiration de la durée de vie du cache. Pour changer la durée de vie, définissez `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` en millisecondes, par exemple `CLAUDE_CODE_API_KEY_HELPER_TTL_MS=900000` pour 15 minutes.

355 355 


363 363 

364Pour désactiver ce trafic, définissez `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1` à côté des variables de passerelle, dans les mêmes exports shell ou bloc `env` du fichier de paramètres :364Pour désactiver ce trafic, définissez `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1` à côté des variables de passerelle, dans les mêmes exports shell ou bloc `env` du fichier de paramètres :

365 365 

366**Bash ou Zsh**366> [tab] Bash ou Zsh

367 367>

368```bash theme={null}368> ```bash theme={null}

369export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1369> export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1

370```370> ```

371 

372**PowerShell**

373 371 

374```powershell theme={null}372> [tab] PowerShell

375$env:CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = "1"373>

376```374> ```powershell theme={null}

375> $env:CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = "1"

376> ```

377 377 

378Définir la variable a ces effets et limites :378Définir la variable a ces effets et limites :

379 379 


398 398 

399Laissez `AWS_BEARER_TOKEN_BEDROCK` non défini quand la passerelle émet son propre identifiant. Si vous le définissez, Claude Code envoie cette [clé API Amazon Bedrock](https://code.claude.com/docs/fr/amazon-bedrock.md#2-configure-aws-credentials) comme en-tête `Authorization` à la place de votre jeton de passerelle, même avec `CLAUDE_CODE_SKIP_BEDROCK_AUTH` défini.399Laissez `AWS_BEARER_TOKEN_BEDROCK` non défini quand la passerelle émet son propre identifiant. Si vous le définissez, Claude Code envoie cette [clé API Amazon Bedrock](https://code.claude.com/docs/fr/amazon-bedrock.md#2-configure-aws-credentials) comme en-tête `Authorization` à la place de votre jeton de passerelle, même avec `CLAUDE_CODE_SKIP_BEDROCK_AUTH` défini.

400 400 

401**Bash ou Zsh**401> [tab] Bash ou Zsh

402 402>

403```bash theme={null}403> ```bash theme={null}

404export ANTHROPIC_BEDROCK_BASE_URL=https://llm-gateway.example.com/bedrock404> export ANTHROPIC_BEDROCK_BASE_URL=https://llm-gateway.example.com/bedrock

405export CLAUDE_CODE_SKIP_BEDROCK_AUTH=1405> export CLAUDE_CODE_SKIP_BEDROCK_AUTH=1

406export CLAUDE_CODE_USE_BEDROCK=1406> export CLAUDE_CODE_USE_BEDROCK=1

407```407> ```

408 

409**PowerShell**

410 408 

411```powershell theme={null}409> [tab] PowerShell

412$env:ANTHROPIC_BEDROCK_BASE_URL = "https://llm-gateway.example.com/bedrock"410>

413$env:CLAUDE_CODE_SKIP_BEDROCK_AUTH = "1"411> ```powershell theme={null}

414$env:CLAUDE_CODE_USE_BEDROCK = "1"412> $env:ANTHROPIC_BEDROCK_BASE_URL = "https://llm-gateway.example.com/bedrock"

415```413> $env:CLAUDE_CODE_SKIP_BEDROCK_AUTH = "1"

414> $env:CLAUDE_CODE_USE_BEDROCK = "1"

415> ```

416 416 

417#### Google Cloud's Agent Platform417#### Google Cloud's Agent Platform

418 418 

419Remplacez l'ID de projet et la région par vos propres valeurs. Claude Code inclut les deux dans le chemin de chaque demande qu'il envoie à la passerelle :419Remplacez l'ID de projet et la région par vos propres valeurs. Claude Code inclut les deux dans le chemin de chaque demande qu'il envoie à la passerelle :

420 420 

421**Bash ou Zsh**421> [tab] Bash ou Zsh

422 422>

423```bash theme={null}423> ```bash theme={null}

424export ANTHROPIC_VERTEX_BASE_URL=https://llm-gateway.example.com/vertex424> export ANTHROPIC_VERTEX_BASE_URL=https://llm-gateway.example.com/vertex

425export ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id425> export ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id

426export CLAUDE_CODE_SKIP_VERTEX_AUTH=1426> export CLAUDE_CODE_SKIP_VERTEX_AUTH=1

427export CLAUDE_CODE_USE_VERTEX=1427> export CLAUDE_CODE_USE_VERTEX=1

428export CLOUD_ML_REGION=us-east5428> export CLOUD_ML_REGION=us-east5

429```429> ```

430 430 

431**PowerShell**431> [tab] PowerShell

432 432>

433```powershell theme={null}433> ```powershell theme={null}

434$env:ANTHROPIC_VERTEX_BASE_URL = "https://llm-gateway.example.com/vertex"434> $env:ANTHROPIC_VERTEX_BASE_URL = "https://llm-gateway.example.com/vertex"

435$env:ANTHROPIC_VERTEX_PROJECT_ID = "your-gcp-project-id"435> $env:ANTHROPIC_VERTEX_PROJECT_ID = "your-gcp-project-id"

436$env:CLAUDE_CODE_SKIP_VERTEX_AUTH = "1"436> $env:CLAUDE_CODE_SKIP_VERTEX_AUTH = "1"

437$env:CLAUDE_CODE_USE_VERTEX = "1"437> $env:CLAUDE_CODE_USE_VERTEX = "1"

438$env:CLOUD_ML_REGION = "us-east5"438> $env:CLOUD_ML_REGION = "us-east5"

439```439> ```

440 440 

441Le bloc couvre le routage et l'authentification. Les remplacements de région et les épingles de modèle de la [configuration Agent Platform](https://code.claude.com/docs/fr/google-vertex-ai.md#4-configure-claude-code) s'appliquent aussi via une passerelle :441Le bloc couvre le routage et l'authentification. Les remplacements de région et les épingles de modèle de la [configuration Agent Platform](https://code.claude.com/docs/fr/google-vertex-ai.md#4-configure-claude-code) s'appliquent aussi via une passerelle :

442 442 


450 450 

451Pour une passerelle qui injecte son propre en-tête `Authorization`, définissez `CLAUDE_CODE_SKIP_FOUNDRY_AUTH=1` et laissez les deux variables d'identifiant non définies. Claude Code envoie alors les requêtes sans identifiant Azure et préserve l'en-tête `Authorization` que vous fournissez, par exemple via `ANTHROPIC_CUSTOM_HEADERS`.451Pour une passerelle qui injecte son propre en-tête `Authorization`, définissez `CLAUDE_CODE_SKIP_FOUNDRY_AUTH=1` et laissez les deux variables d'identifiant non définies. Claude Code envoie alors les requêtes sans identifiant Azure et préserve l'en-tête `Authorization` que vous fournissez, par exemple via `ANTHROPIC_CUSTOM_HEADERS`.

452 452 

453**Bash ou Zsh**453> [tab] Bash ou Zsh

454 454>

455```bash theme={null}455> ```bash theme={null}

456export ANTHROPIC_FOUNDRY_BASE_URL=https://llm-gateway.example.com/foundry456> export ANTHROPIC_FOUNDRY_BASE_URL=https://llm-gateway.example.com/foundry

457export ANTHROPIC_FOUNDRY_API_KEY=sk-gateway-key457> export ANTHROPIC_FOUNDRY_API_KEY=sk-gateway-key

458export CLAUDE_CODE_USE_FOUNDRY=1458> export CLAUDE_CODE_USE_FOUNDRY=1

459```459> ```

460 

461**PowerShell**

462 460 

463```powershell theme={null}461> [tab] PowerShell

464$env:ANTHROPIC_FOUNDRY_BASE_URL = "https://llm-gateway.example.com/foundry"462>

465$env:ANTHROPIC_FOUNDRY_API_KEY = "sk-gateway-key"463> ```powershell theme={null}

466$env:CLAUDE_CODE_USE_FOUNDRY = "1"464> $env:ANTHROPIC_FOUNDRY_BASE_URL = "https://llm-gateway.example.com/foundry"

467```465> $env:ANTHROPIC_FOUNDRY_API_KEY = "sk-gateway-key"

466> $env:CLAUDE_CODE_USE_FOUNDRY = "1"

467> ```

468 468 

469#### Claude Platform sur AWS469#### Claude Platform sur AWS

470 470 

471Voir [Claude Platform sur AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md) pour l'ID d'espace de travail.471Voir [Claude Platform sur AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md) pour l'ID d'espace de travail.

472 472 

473**Bash ou Zsh**473> [tab] Bash ou Zsh

474 474>

475```bash theme={null}475> ```bash theme={null}

476export ANTHROPIC_AWS_BASE_URL=https://llm-gateway.example.com/anthropic-aws476> export ANTHROPIC_AWS_BASE_URL=https://llm-gateway.example.com/anthropic-aws

477export ANTHROPIC_AWS_WORKSPACE_ID=wrkspc_01ABCDEFGHIJKLMN477> export ANTHROPIC_AWS_WORKSPACE_ID=wrkspc_01ABCDEFGHIJKLMN

478export CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH=1478> export CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH=1

479export CLAUDE_CODE_USE_ANTHROPIC_AWS=1479> export CLAUDE_CODE_USE_ANTHROPIC_AWS=1

480```480> ```

481 481 

482**PowerShell**482> [tab] PowerShell

483 483>

484```powershell theme={null}484> ```powershell theme={null}

485$env:ANTHROPIC_AWS_BASE_URL = "https://llm-gateway.example.com/anthropic-aws"485> $env:ANTHROPIC_AWS_BASE_URL = "https://llm-gateway.example.com/anthropic-aws"

486$env:ANTHROPIC_AWS_WORKSPACE_ID = "wrkspc_01ABCDEFGHIJKLMN"486> $env:ANTHROPIC_AWS_WORKSPACE_ID = "wrkspc_01ABCDEFGHIJKLMN"

487$env:CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH = "1"487> $env:CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH = "1"

488$env:CLAUDE_CODE_USE_ANTHROPIC_AWS = "1"488> $env:CLAUDE_CODE_USE_ANTHROPIC_AWS = "1"

489```489> ```

490 490 

491#### Confirmer la route du fournisseur491#### Confirmer la route du fournisseur

492 492 

Details

62* `<gateway-key>` est la credential qui vous permet d'appeler la passerelle en ce moment : une clé administrative, une clé de test, ou votre propre clé développeur si vous en avez déjà émis une. Tous les produits de passerelle n'ont pas une credential d'administration séparée ; si le vôtre n'en a pas, émettez-vous d'abord une clé développeur dans [Émettre une credential pour chaque développeur](#issue-developer-credentials)62* `<gateway-key>` est la credential qui vous permet d'appeler la passerelle en ce moment : une clé administrative, une clé de test, ou votre propre clé développeur si vous en avez déjà émis une. Tous les produits de passerelle n'ont pas une credential d'administration séparée ; si le vôtre n'en a pas, émettez-vous d'abord une clé développeur dans [Émettre une credential pour chaque développeur](#issue-developer-credentials)

63* `model` est un nom de modèle Claude que votre passerelle est configurée pour acheminer. L'exemple utilise `claude-sonnet-4-6` ; remplacez par un nom que vous avez configuré63* `model` est un nom de modèle Claude que votre passerelle est configurée pour acheminer. L'exemple utilise `claude-sonnet-4-6` ; remplacez par un nom que vous avez configuré

64 64 

65**Bash ou Zsh**65> [tab] Bash ou Zsh

66 66>

67```bash theme={null}67> ```bash theme={null}

68curl -X POST "https://llm-gateway.example.com/v1/messages" \68> curl -X POST "https://llm-gateway.example.com/v1/messages" \

69 -H "Authorization: Bearer <gateway-key>" \69> -H "Authorization: Bearer <gateway-key>" \

70 -H "anthropic-version: 2023-06-01" \70> -H "anthropic-version: 2023-06-01" \

71 -H "content-type: application/json" \71> -H "content-type: application/json" \

72 -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'72> -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

73```73> ```

74 74 

75**PowerShell**75> [tab] PowerShell

76 76>

77```powershell theme={null}77> ```powershell theme={null}

78Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `78> Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `

79 -Headers @{ "Authorization" = "Bearer <gateway-key>"; "anthropic-version" = "2023-06-01" } `79> -Headers @{ "Authorization" = "Bearer <gateway-key>"; "anthropic-version" = "2023-06-01" } `

80 -ContentType "application/json" `80> -ContentType "application/json" `

81 -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'81> -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

82```82> ```

83 83 

84**Point de contrôle** : un `200` avec un champ `content` signifie que la passerelle a atteint le fournisseur avec ce nom de modèle. Un `404` signifie que ce nom n'est pas acheminé à la passerelle ; un `401` du fournisseur signifie que la credential du fournisseur de la passerelle est incorrecte.84**Point de contrôle** : un `200` avec un champ `content` signifie que la passerelle a atteint le fournisseur avec ce nom de modèle. Un `404` signifie que ce nom n'est pas acheminé à la passerelle ; un `401` du fournisseur signifie que la credential du fournisseur de la passerelle est incorrecte.

85 85 


95 95 

96Confirmez qu'une clé fraîchement émise fonctionne par rapport à la passerelle avec la même demande que [Confirmer que la passerelle achemine vos modèles](#confirm-the-gateway-routes-your-models), en remplaçant `<gateway-key>` par la nouvelle `<developer-key>` :96Confirmez qu'une clé fraîchement émise fonctionne par rapport à la passerelle avec la même demande que [Confirmer que la passerelle achemine vos modèles](#confirm-the-gateway-routes-your-models), en remplaçant `<gateway-key>` par la nouvelle `<developer-key>` :

97 97 

98**Bash ou Zsh**98> [tab] Bash ou Zsh

99 99>

100```bash theme={null}100> ```bash theme={null}

101curl -X POST "https://llm-gateway.example.com/v1/messages" \101> curl -X POST "https://llm-gateway.example.com/v1/messages" \

102 -H "Authorization: Bearer <developer-key>" \102> -H "Authorization: Bearer <developer-key>" \

103 -H "anthropic-version: 2023-06-01" \103> -H "anthropic-version: 2023-06-01" \

104 -H "content-type: application/json" \104> -H "content-type: application/json" \

105 -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'105> -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

106```106> ```

107 107 

108**PowerShell**108> [tab] PowerShell

109 109>

110```powershell theme={null}110> ```powershell theme={null}

111Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `111> Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `

112 -Headers @{ "Authorization" = "Bearer <developer-key>"; "anthropic-version" = "2023-06-01" } `112> -Headers @{ "Authorization" = "Bearer <developer-key>"; "anthropic-version" = "2023-06-01" } `

113 -ContentType "application/json" `113> -ContentType "application/json" `

114 -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'114> -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

115```115> ```

116 116 

117**Point de contrôle** : un `200` avec un champ `content` signifie que la clé développeur atteint la passerelle et que la passerelle la transmet. Un `401` ici, quand [l'étape précédente](#confirm-the-gateway-routes-your-models) a réussi, signifie que la clé développeur est incorrecte ou n'a pas encore pris effet à la passerelle.117**Point de contrôle** : un `200` avec un champ `content` signifie que la clé développeur atteint la passerelle et que la passerelle la transmet. Un `401` ici, quand [l'étape précédente](#confirm-the-gateway-routes-your-models) a réussi, signifie que la clé développeur est incorrecte ou n'a pas encore pris effet à la passerelle.

118 118 


122 122 

123Exécutez Claude Code par la passerelle vous-même avant de distribuer quoi que ce soit, en utilisant la même configuration que le déploiement livrera à l'échelle de la flotte. Tapez-les directement dans un terminal, pas dans un fichier `.env` ou de paramètres ; ils ne durent que pour cette session de terminal, donc la fermer ramène votre machine à sa configuration normale. Utilisez `ANTHROPIC_API_KEY` au lieu de `ANTHROPIC_AUTH_TOKEN` si votre passerelle lit l'en-tête `x-api-key` :123Exécutez Claude Code par la passerelle vous-même avant de distribuer quoi que ce soit, en utilisant la même configuration que le déploiement livrera à l'échelle de la flotte. Tapez-les directement dans un terminal, pas dans un fichier `.env` ou de paramètres ; ils ne durent que pour cette session de terminal, donc la fermer ramène votre machine à sa configuration normale. Utilisez `ANTHROPIC_API_KEY` au lieu de `ANTHROPIC_AUTH_TOKEN` si votre passerelle lit l'en-tête `x-api-key` :

124 124 

125**Bash ou Zsh**125> [tab] Bash ou Zsh

126 126>

127```bash theme={null}127> ```bash theme={null}

128export ANTHROPIC_BASE_URL=https://llm-gateway.example.com128> export ANTHROPIC_BASE_URL=https://llm-gateway.example.com

129export ANTHROPIC_AUTH_TOKEN="<developer-key>"129> export ANTHROPIC_AUTH_TOKEN="<developer-key>"

130```130> ```

131 

132**PowerShell**

133 131 

134```powershell theme={null}132> [tab] PowerShell

135$env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"133>

136$env:ANTHROPIC_AUTH_TOKEN = "<developer-key>"134> ```powershell theme={null}

137```135> $env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"

136> $env:ANTHROPIC_AUTH_TOKEN = "<developer-key>"

137> ```

138 138 

139Ensuite, envoyez une demande unique par la passerelle :139Ensuite, envoyez une demande unique par la passerelle :

140 140 


224 224 

225Confirmez que tout fonctionne à partir d'une machine développeur, pas de l'hôte de la passerelle, afin que le test couvre le chemin réseau que les développeurs utilisent. Envoyez une demande en streaming, qui vérifie le point de terminaison, le passage en streaming, et l'acheminement du modèle à la fois :225Confirmez que tout fonctionne à partir d'une machine développeur, pas de l'hôte de la passerelle, afin que le test couvre le chemin réseau que les développeurs utilisent. Envoyez une demande en streaming, qui vérifie le point de terminaison, le passage en streaming, et l'acheminement du modèle à la fois :

226 226 

227**Bash ou Zsh**227> [tab] Bash ou Zsh

228 228>

229```bash theme={null}229> ```bash theme={null}

230curl -N -X POST "https://llm-gateway.example.com/v1/messages" \230> curl -N -X POST "https://llm-gateway.example.com/v1/messages" \

231 -H "Authorization: Bearer <developer-key>" \231> -H "Authorization: Bearer <developer-key>" \

232 -H "anthropic-version: 2023-06-01" \232> -H "anthropic-version: 2023-06-01" \

233 -H "content-type: application/json" \233> -H "content-type: application/json" \

234 -d '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'234> -d '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'

235```235> ```

236 236 

237**PowerShell**237> [tab] PowerShell

238 238>

239```powershell theme={null}239> ```powershell theme={null}

240$body = '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'240> $body = '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'

241$body | curl.exe -N -X POST "https://llm-gateway.example.com/v1/messages" `241> $body | curl.exe -N -X POST "https://llm-gateway.example.com/v1/messages" `

242 -H "Authorization: Bearer <developer-key>" `242> -H "Authorization: Bearer <developer-key>" `

243 -H "anthropic-version: 2023-06-01" `243> -H "anthropic-version: 2023-06-01" `

244 -H "content-type: application/json" `244> -H "content-type: application/json" `

245 --data-binary '@-'245> --data-binary '@-'

246```246> ```

247 247 

248Vous devriez voir les lignes `data:` arriver de manière progressive. La réponse entière arrivant à la fois après une pause signifie que la passerelle met en mémoire tampon, ce qui bloque Claude Code ; un `404` signifie que le nom du modèle n'est pas acheminé. Répétez par nom de modèle.248Vous devriez voir les lignes `data:` arriver de manière progressive. La réponse entière arrivant à la fois après une pause signifie que la passerelle met en mémoire tampon, ce qui bloque Claude Code ; un `404` signifie que le nom du modèle n'est pas acheminé. Répétez par nom de modèle.

249 249 

managed-mcp.md +5 −5

Details

403 403 

404Les accordéons ci-dessous parcourent la façon dont un serveur est évalué par rapport à d'autres combinaisons de liste blanche et de liste noire.404Les accordéons ci-dessous parcourent la façon dont un serveur est évalué par rapport à d'autres combinaisons de liste blanche et de liste noire.

405 405 

406> **Liste blanche URL uniquement**406> [accordion] Liste blanche URL uniquement

407>407>

408> ```json theme={null}408> ```json theme={null}

409> {409> {


421> | Serveur HTTP à `https://external.example.com/mcp` | Bloqué : ne correspond à aucun motif d'URL |421> | Serveur HTTP à `https://external.example.com/mcp` | Bloqué : ne correspond à aucun motif d'URL |

422> | Serveur stdio avec n'importe quelle commande | Bloqué : pas d'entrées de nom ou de commande pour correspondre |422> | Serveur stdio avec n'importe quelle commande | Bloqué : pas d'entrées de nom ou de commande pour correspondre |

423 423 

424> **Liste blanche commande uniquement**424> [accordion] Liste blanche commande uniquement

425>425>

426> ```json theme={null}426> ```json theme={null}

427> {427> {


437> | Serveur stdio avec `["node", "server.js"]` | Bloqué : ne correspond pas à la commande |437> | Serveur stdio avec `["node", "server.js"]` | Bloqué : ne correspond pas à la commande |

438> | Serveur HTTP nommé `my-api` | Bloqué : pas d'entrées de nom pour correspondre |438> | Serveur HTTP nommé `my-api` | Bloqué : pas d'entrées de nom pour correspondre |

439 439 

440> **Liste blanche mixte nom et commande**440> [accordion] Liste blanche mixte nom et commande

441>441>

442> ```json theme={null}442> ```json theme={null}

443> {443> {


456> | Serveur HTTP nommé `github` | Autorisé : correspond au nom |456> | Serveur HTTP nommé `github` | Autorisé : correspond au nom |

457> | Serveur HTTP nommé `other-api` | Bloqué : le nom ne correspond pas |457> | Serveur HTTP nommé `other-api` | Bloqué : le nom ne correspond pas |

458 458 

459> **Liste blanche nom uniquement**459> [accordion] Liste blanche nom uniquement

460>460>

461> ```json theme={null}461> ```json theme={null}

462> {462> {


474> | Serveur HTTP nommé `github` | Autorisé : correspond au nom |474> | Serveur HTTP nommé `github` | Autorisé : correspond au nom |

475> | N'importe quel serveur nommé `other` | Bloqué : le nom ne correspond pas |475> | N'importe quel serveur nommé `other` | Bloqué : le nom ne correspond pas |

476 476 

477> **Liste blanche avec remplacement de liste noire**477> [accordion] Liste blanche avec remplacement de liste noire

478>478>

479> ```json theme={null}479> ```json theme={null}

480> {480> {

mcp.md +35 −35

Details

1039 1039 

1040Les onglets couvrent les deux commandes : `claude mcp add` prend votre ID client et votre port de rappel comme flags, et `claude mcp add-json` les prend dans un objet `oauth`. Si vous avez enregistré un URI de redirection, définissez le port de rappel sur le port dans cet URI.1040Les onglets couvrent les deux commandes : `claude mcp add` prend votre ID client et votre port de rappel comme flags, et `claude mcp add-json` les prend dans un objet `oauth`. Si vous avez enregistré un URI de redirection, définissez le port de rappel sur le port dans cet URI.

1041 1041 

1042**claude mcp add**1042> [tab] claude mcp add

1043 1043>

1044Utilisez `--client-id` pour passer l'ID client de votre application. Le flag `--client-secret` demande le secret avec une entrée masquée :1044> Utilisez `--client-id` pour passer l'ID client de votre application. Le flag `--client-secret` demande le secret avec une entrée masquée :

1045 1045>

1046```bash theme={null}1046> ```bash theme={null}

1047claude mcp add --transport http \1047> claude mcp add --transport http \

1048 --client-id your-client-id --client-secret --callback-port 8080 \1048> --client-id your-client-id --client-secret --callback-port 8080 \

1049 my-server https://mcp.example.com/mcp1049> my-server https://mcp.example.com/mcp

1050```1050> ```

1051 

1052**claude mcp add-json**

1053 

1054Incluez l'objet `oauth` dans la configuration JSON et passez `--client-secret` comme flag séparé :

1055 

1056```bash theme={null}

1057claude mcp add-json my-server \

1058 '{"type":"http","url":"https://mcp.example.com/mcp","oauth":{"clientId":"your-client-id","callbackPort":8080}}' \

1059 --client-secret

1060```

1061 

1062**claude mcp add-json (port de rappel uniquement)**

1063 

1064Pour fixer uniquement le port de rappel et laisser Claude Code enregistrer le client automatiquement, définissez `callbackPort` seul :

1065 

1066```bash theme={null}

1067claude mcp add-json my-server \

1068 '{"type":"http","url":"https://mcp.example.com/mcp","oauth":{"callbackPort":8080}}'

1069```

1070 1051 

1071**CI / variable d'environnement**1052> [tab] claude mcp add-json

1053>

1054> Incluez l'objet `oauth` dans la configuration JSON et passez `--client-secret` comme flag séparé :

1055>

1056> ```bash theme={null}

1057> claude mcp add-json my-server \

1058> '{"type":"http","url":"https://mcp.example.com/mcp","oauth":{"clientId":"your-client-id","callbackPort":8080}}' \

1059> --client-secret

1060> ```

1072 1061 

1073Définissez le secret via une variable d'environnement pour ignorer l'invite interactive :1062> [tab] claude mcp add-json (port de rappel uniquement)

1063>

1064> Pour fixer uniquement le port de rappel et laisser Claude Code enregistrer le client automatiquement, définissez `callbackPort` seul :

1065>

1066> ```bash theme={null}

1067> claude mcp add-json my-server \

1068> '{"type":"http","url":"https://mcp.example.com/mcp","oauth":{"callbackPort":8080}}'

1069> ```

1074 1070 

1075```bash theme={null}1071> [tab] CI / variable d'environnement

1076MCP_CLIENT_SECRET=your-secret claude mcp add --transport http \1072>

1077 --client-id your-client-id --client-secret --callback-port 8080 \1073> Définissez le secret via une variable d'environnement pour ignorer l'invite interactive :

1078 my-server https://mcp.example.com/mcp1074>

1079```1075> ```bash theme={null}

1076> MCP_CLIENT_SECRET=your-secret claude mcp add --transport http \

1077> --client-id your-client-id --client-secret --callback-port 8080 \

1078> my-server https://mcp.example.com/mcp

1079> ```

1080 1080 

1081**3. S'authentifier dans Claude Code**1081**3. S'authentifier dans Claude Code**

1082 1082 

Details

286 286 

287Si un serveur ne se connecte pas, vérifiez son état avec `/mcp` à l'intérieur d'une session ou `claude mcp list` à partir de votre shell, puis faites correspondre le symptôme ci-dessous. Le panneau `/mcp` vous permet également de vous reconnecter ou de vous authentifier sans quitter la session.287Si un serveur ne se connecte pas, vérifiez son état avec `/mcp` à l'intérieur d'une session ou `claude mcp list` à partir de votre shell, puis faites correspondre le symptôme ci-dessous. Le panneau `/mcp` vous permet également de vous reconnecter ou de vous authentifier sans quitter la session.

288 288 

289> **/mcp shows No MCP servers configured**289> [accordion] /mcp shows No MCP servers configured

290>290>

291> Claude Code n'a trouvé aucun serveur pour le répertoire actuel. Les causes les plus courantes :291> Claude Code n'a trouvé aucun serveur pour le répertoire actuel. Les causes les plus courantes :

292>292>


294> * Vous avez modifié un fichier de configuration au mauvais chemin. Les fichiers corrects sont `~/.claude.json` et `<project>/.mcp.json`. Claude Code ne lit pas les chemins tels que `~/.claude/.mcp.json`, `~/.claude/config/mcp.json`, `~/.claude/mcp.json`, ou `%APPDATA%\Claude\mcp.json`. Pour les serveurs à portée utilisateur, exécutez `claude mcp add --scope user`, qui écrit dans la clé `mcpServers` dans `~/.claude.json` ; pour les serveurs à portée projet, modifiez `.mcp.json` à la racine du projet.294> * Vous avez modifié un fichier de configuration au mauvais chemin. Les fichiers corrects sont `~/.claude.json` et `<project>/.mcp.json`. Claude Code ne lit pas les chemins tels que `~/.claude/.mcp.json`, `~/.claude/config/mcp.json`, `~/.claude/mcp.json`, ou `%APPDATA%\Claude\mcp.json`. Pour les serveurs à portée utilisateur, exécutez `claude mcp add --scope user`, qui écrit dans la clé `mcpServers` dans `~/.claude.json` ; pour les serveurs à portée projet, modifiez `.mcp.json` à la racine du projet.

295> * Vous avez écrit une entrée mal formée dans `.mcp.json`. Claude Code ignore cette entrée et charge toujours les autres. Exécutez `claude mcp list` à partir de votre shell et recherchez l'avertissement d'analyse, qui nomme le champ offensant.295> * Vous avez écrit une entrée mal formée dans `.mcp.json`. Claude Code ignore cette entrée et charge toujours les autres. Exécutez `claude mcp list` à partir de votre shell et recherchez l'avertissement d'analyse, qui nomme le champ offensant.

296 296 

297> **Status shows Failed to connect or Connection error**297> [accordion] Status shows Failed to connect or Connection error

298>298>

299> Les deux états signifient que le serveur n'a pas démarré ou que l'URL n'a pas répondu. Ils peuvent également apparaître pour les serveurs HTTP qui rejettent le jeton que vous avez configuré dans `headers.Authorization` ; un serveur qui veut un jeton que vous n'avez pas configuré affiche `! Needs authentication` à la place, couvert dans [Connecter un serveur qui nécessite une connexion](#connect-a-server-that-requires-sign-in).299> Les deux états signifient que le serveur n'a pas démarré ou que l'URL n'a pas répondu. Ils peuvent également apparaître pour les serveurs HTTP qui rejettent le jeton que vous avez configuré dans `headers.Authorization` ; un serveur qui veut un jeton que vous n'avez pas configuré affiche `! Needs authentication` à la place, couvert dans [Connecter un serveur qui nécessite une connexion](#connect-a-server-that-requires-sign-in).

300>300>


334> Exécutez `claude mcp get <name>` et confirmez que la commande affichée là correspond à ce que vous venez d'exécuter. Si la commande affichée diffère de ce que vous avez tapé, vous avez probablement omis le séparateur `--` avant la commande du serveur. Supprimez le serveur et rajoutez-le avec `--` en place. Si vous avez écrit `.mcp.json` à la main, vérifiez sa syntaxe et son emplacement. Avant la v2.1.285, `claude mcp get` n'affichait aucune ligne `Command` pour une entrée stdio enregistrée sans champ `type`, comme une entrée `.mcp.json` écrite à la main. Sur ces versions, exécutez `claude mcp list` à la place, qui affiche la ligne de commande de toute façon.334> Exécutez `claude mcp get <name>` et confirmez que la commande affichée là correspond à ce que vous venez d'exécuter. Si la commande affichée diffère de ce que vous avez tapé, vous avez probablement omis le séparateur `--` avant la commande du serveur. Supprimez le serveur et rajoutez-le avec `--` en place. Si vous avez écrit `.mcp.json` à la main, vérifiez sa syntaxe et son emplacement. Avant la v2.1.285, `claude mcp get` n'affichait aucune ligne `Command` pour une entrée stdio enregistrée sans champ `type`, comme une entrée `.mcp.json` écrite à la main. Sur ces versions, exécutez `claude mcp list` à la place, qui affiche la ligne de commande de toute façon.

335> * La commande génère une erreur : le message indique ce qui manque, comme Node.js ou un navigateur.335> * La commande génère une erreur : le message indique ce qui manque, comme Node.js ou un navigateur.

336 336 

337> **Connection timed out at startup**337> [accordion] Connection timed out at startup

338>338>

339> Le serveur a pris plus que le délai d'expiration de démarrage par défaut de 30 secondes. La première exécution d'un serveur stdio peut être lente pendant que `npx` télécharge le package. Augmentez la limite avec la variable d'environnement [`MCP_TIMEOUT`](https://code.claude.com/docs/fr/env-vars), en millisecondes :339> Le serveur a pris plus que le délai d'expiration de démarrage par défaut de 30 secondes. La première exécution d'un serveur stdio peut être lente pendant que `npx` télécharge le package. Augmentez la limite avec la variable d'environnement [`MCP_TIMEOUT`](https://code.claude.com/docs/fr/env-vars), en millisecondes :

340>340>


350>350>

351> Avant la v2.1.299, certaines connexions à des serveurs HTTP actifs expiraient au démarrage quelle que soit la valeur de `MCP_TIMEOUT`. Si vous utilisez l'une de ces versions et qu'un serveur HTTP actif expire toujours après que vous avez augmenté la limite, [mettez à jour Claude Code](https://code.claude.com/docs/fr/setup.md#update-claude-code).351> Avant la v2.1.299, certaines connexions à des serveurs HTTP actifs expiraient au démarrage quelle que soit la valeur de `MCP_TIMEOUT`. Si vous utilisez l'une de ces versions et qu'un serveur HTTP actif expire toujours après que vous avez augmenté la limite, [mettez à jour Claude Code](https://code.claude.com/docs/fr/setup.md#update-claude-code).

352 352 

353> **Server already exists**353> [accordion] Server already exists

354>354>

355> Vous avez déjà ajouté un serveur avec ce nom à la même portée. Supprimez l'entrée existante ou choisissez un nom différent :355> Vous avez déjà ajouté un serveur avec ce nom à la même portée. Supprimez l'entrée existante ou choisissez un nom différent :

356>356>


360>360>

361> Si le nom existe à plus d'une portée, `remove` signale `exists in multiple scopes`. Passez `--scope` pour choisir quelle copie supprimer, par exemple `claude mcp remove claude-code-docs --scope local`.361> Si le nom existe à plus d'une portée, `remove` signale `exists in multiple scopes`. Passez `--scope` pour choisir quelle copie supprimer, par exemple `claude mcp remove claude-code-docs --scope local`.

362 362 

363> **Server connects but no tools appear**363> [accordion] Server connects but no tools appear

364>364>

365> Exécutez `/mcp` à l'intérieur d'une session et sélectionnez le serveur pour voir sa liste d'outils. Si la liste est vide, le serveur a démarré mais n'a enregistré aucun outil, ce qui signifie généralement qu'il manque une variable d'environnement requise comme une clé API.365> Exécutez `/mcp` à l'intérieur d'une session et sélectionnez le serveur pour voir sa liste d'outils. Si la liste est vide, le serveur a démarré mais n'a enregistré aucun outil, ce qui signifie généralement qu'il manque une variable d'environnement requise comme une clé API.

366>366>


368>368>

369> Avant la v2.1.302, `/mcp` affichait l'état `tools fetch failed` pour un serveur utilisant la [révision de protocole 2026-07-28](https://code.claude.com/docs/fr/mcp.md#mcp-client-runtimes) qui omettait `resultType`, `ttlMs` ou `cacheScope` dans ses réponses. Si vous utilisez l'une de ces versions et qu'un serveur affiche cet état, [mettez à jour Claude Code](https://code.claude.com/docs/fr/setup.md#update-claude-code).369> Avant la v2.1.302, `/mcp` affichait l'état `tools fetch failed` pour un serveur utilisant la [révision de protocole 2026-07-28](https://code.claude.com/docs/fr/mcp.md#mcp-client-runtimes) qui omettait `resultType`, `ttlMs` ou `cacheScope` dans ses réponses. Si vous utilisez l'une de ces versions et qu'un serveur affiche cet état, [mettez à jour Claude Code](https://code.claude.com/docs/fr/setup.md#update-claude-code).

370 370 

371> **Changes to .mcp.json don't take effect**371> [accordion] Changes to .mcp.json don't take effect

372>372>

373> Claude Code lit `.mcp.json` au démarrage de la session. Quittez et redémarrez la session après avoir modifié le fichier.373> Claude Code lit `.mcp.json` au démarrage de la session. Quittez et redémarrez la session après avoir modifié le fichier.

374>374>


380> claude mcp reset-project-choices380> claude mcp reset-project-choices

381> ```381> ```

382 382 

383> **OAuth sign-in fails or browser doesn't open**383> [accordion] OAuth sign-in fails or browser doesn't open

384>384>

385> Exécutez `/mcp`, sélectionnez le serveur et choisissez `Authenticate` à nouveau. Si le navigateur ne s'ouvre pas automatiquement, copiez l'URL affichée dans le terminal et ouvrez-la manuellement. Voir [S'authentifier avec les serveurs MCP distants](https://code.claude.com/docs/fr/mcp.md#authenticate-with-remote-mcp-servers) pour les ports de rappel fixes et les identifiants préconfigurés.385> Exécutez `/mcp`, sélectionnez le serveur et choisissez `Authenticate` à nouveau. Si le navigateur ne s'ouvre pas automatiquement, copiez l'URL affichée dans le terminal et ouvrez-la manuellement. Voir [S'authentifier avec les serveurs MCP distants](https://code.claude.com/docs/fr/mcp.md#authenticate-with-remote-mcp-servers) pour les ports de rappel fixes et les identifiants préconfigurés.

386 386 

mobile.md +2 −2

Details

39| [Cloud sessions](https://code.claude.com/docs/fr/claude-code-on-the-web.md) | Une session sur l'infrastructure cloud, gérée par Anthropic par défaut | Votre référentiel est sur GitHub et la tâche doit continuer à s'exécuter après avoir rangé votre téléphone. Consultez le [guide de démarrage rapide cloud](https://code.claude.com/docs/fr/web-quickstart.md) pour configurer. |39| [Cloud sessions](https://code.claude.com/docs/fr/claude-code-on-the-web.md) | Une session sur l'infrastructure cloud, gérée par Anthropic par défaut | Votre référentiel est sur GitHub et la tâche doit continuer à s'exécuter après avoir rangé votre téléphone. Consultez le [guide de démarrage rapide cloud](https://code.claude.com/docs/fr/web-quickstart.md) pour configurer. |

40| [Projects](https://code.claude.com/docs/fr/claude-projects.md) | Une conversation où Claude coordonne des threads de travail parallèles et rend compte | Vous avez un flux de travail connexe plutôt qu'une seule tâche et vous voulez voir quels threads se sont terminés ou ont besoin de vous. |40| [Projects](https://code.claude.com/docs/fr/claude-projects.md) | Une conversation où Claude coordonne des threads de travail parallèles et rend compte | Vous avez un flux de travail connexe plutôt qu'une seule tâche et vous voulez voir quels threads se sont terminés ou ont besoin de vous. |

41| [Remote Control](https://code.claude.com/docs/fr/remote-control.md) | Une session Claude Code s'exécutant sur votre ordinateur | Le travail a besoin de votre système de fichiers local, d'outils ou de serveurs MCP. |41| [Remote Control](https://code.claude.com/docs/fr/remote-control.md) | Une session Claude Code s'exécutant sur votre ordinateur | Le travail a besoin de votre système de fichiers local, d'outils ou de serveurs MCP. |

42| [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) | L'application Desktop sur votre ordinateur | Vous voulez envoyer une tâche et laisser Dispatch décider comment l'exécuter. Nécessite un plan Pro ou Max. |42| [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) | L'application Desktop sur votre ordinateur | Vous voulez envoyer une tâche et laisser Dispatch décider comment l'exécuter. Nécessite un plan Pro, Max ou Ultra. |

43 43 

44Si votre ordinateur sera éteint, utilisez les sessions cloud ou un projet, qui s'exécutent dans le cloud et continuent avec votre ordinateur portable fermé. Remote Control et Dispatch pilotent votre propre machine, elle doit donc rester allumée avec Claude Code ou l'application Desktop en cours d'exécution. Si votre machine se met en veille pendant une session Remote Control, Claude Code se reconnecte quand la machine revient en ligne.44Si votre ordinateur sera éteint, utilisez les sessions cloud ou un projet, qui s'exécutent dans le cloud et continuent avec votre ordinateur portable fermé. Remote Control et Dispatch pilotent votre propre machine, elle doit donc rester allumée avec Claude Code ou l'application Desktop en cours d'exécution. Si votre machine se met en veille pendant une session Remote Control, Claude Code se reconnecte quand la machine revient en ligne.

45 45 


76 76 

77* **Commandes locales uniquement** : les commandes qui s'exécutent uniquement dans l'interface du terminal, telles que `/plugin` et `/resume`, ne fonctionnent pas depuis l'application. Les [limitations de Remote Control](https://code.claude.com/docs/fr/remote-control.md#limitations) listent les commandes qui fonctionnent depuis mobile et comment leur comportement diffère.77* **Commandes locales uniquement** : les commandes qui s'exécutent uniquement dans l'interface du terminal, telles que `/plugin` et `/resume`, ne fonctionnent pas depuis l'application. Les [limitations de Remote Control](https://code.claude.com/docs/fr/remote-control.md#limitations) listent les commandes qui fonctionnent depuis mobile et comment leur comportement diffère.

78* **Modes de permission** : les sessions cloud offrent Accept edits, Plan et Auto, et les sessions Remote Control offrent Manual, Accept edits, Plan et Auto. Vous ne pouvez pas sélectionner Bypass permissions depuis l'application dans les deux cas. Consultez [changer les modes de permission](https://code.claude.com/docs/fr/permission-modes.md#switch-permission-modes) pour savoir quand Auto est disponible.78* **Modes de permission** : les sessions cloud offrent Accept edits, Plan et Auto, et les sessions Remote Control offrent Manual, Accept edits, Plan et Auto. Vous ne pouvez pas sélectionner Bypass permissions depuis l'application dans les deux cas. Consultez [changer les modes de permission](https://code.claude.com/docs/fr/permission-modes.md#switch-permission-modes) pour savoir quand Auto est disponible.

79* **Plans Dispatch** : Dispatch nécessite un plan Pro ou Max et n'est pas disponible sur Team ou Enterprise.79* **Plans Dispatch** : Dispatch nécessite un plan Pro, Max ou Ultra et n'est pas disponible sur Team ou Enterprise.

80 80 

81## Ressources connexes81## Ressources connexes

82 82 

model-config.md +4 −4

Details

455 455 

456Le comportement de `default` dépend de votre type de compte :456Le comportement de `default` dépend de votre type de compte :

457 457 

458* **Pro, Max, Team, Enterprise et API Anthropic** : Opus 5.5 par défaut458* **Pro, Max, Ultra, Team, Enterprise et API Anthropic** : Opus 5.5 par défaut

459* **Claude Platform on AWS, Amazon Bedrock et Google Cloud's Agent Platform** : Opus 5.5 par défaut459* **Claude Platform on AWS, Amazon Bedrock et Google Cloud's Agent Platform** : Opus 5.5 par défaut

460* **Microsoft Foundry** : Sonnet 4.5 par défaut460* **Microsoft Foundry** : Sonnet 4.5 par défaut

461 461 

462Avant la v2.1.280, `default` correspondait à Sonnet 5 sur Pro et Team Standard, et à Opus 5 sur Max, Team Premium, Enterprise, l'API Anthropic, Claude Platform on AWS, Amazon Bedrock et Google Cloud's Agent Platform à partir de la v2.1.219. Avant la v2.1.219, `default` correspondait à Opus 4.8 sur l'API Anthropic, Max, Team Premium et Enterprise à l'usage à partir de la v2.1.154, et sur Claude Platform on AWS, Amazon Bedrock et Google Cloud's Agent Platform à partir de la v2.1.207. Avant la v2.1.207, `default` correspondait à Opus 4.7 sur Claude Platform on AWS et à Sonnet 4.5 sur Amazon Bedrock et Google Cloud's Agent Platform.462Avant la v2.1.280, `default` correspondait à Sonnet 5 sur Pro et Team Standard, et à Opus 5 sur Max, Ultra, Team Premium, Enterprise, l'API Anthropic, Claude Platform on AWS, Amazon Bedrock et Google Cloud's Agent Platform à partir de la v2.1.219. Avant la v2.1.219, `default` correspondait à Opus 4.8 sur l'API Anthropic, Max, Ultra, Team Premium et Enterprise à l'usage à partir de la v2.1.154, et sur Claude Platform on AWS, Amazon Bedrock et Google Cloud's Agent Platform à partir de la v2.1.207. Avant la v2.1.207, `default` correspondait à Opus 4.7 sur Claude Platform on AWS et à Sonnet 4.5 sur Amazon Bedrock et Google Cloud's Agent Platform.

463 463 

464Lorsqu'un administrateur a défini un [modèle par défaut de l'organisation](#organization-default-model), `default` correspond à ce modèle plutôt qu'au modèle par défaut du type de compte indiqué ci-dessus. Nécessite Claude Code v2.1.196 ou une version ultérieure. `default` peut également correspondre au modèle que vous définissez avec [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions), dans les conditions indiquées dans sa section, ou au modèle [enregistré sur votre compte](#setting-your-model).464Lorsqu'un administrateur a défini un [modèle par défaut de l'organisation](#organization-default-model), `default` correspond à ce modèle plutôt qu'au modèle par défaut du type de compte indiqué ci-dessus. Nécessite Claude Code v2.1.196 ou une version ultérieure. `default` peut également correspondre au modèle que vous définissez avec [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions), dans les conditions indiquées dans sa section, ou au modèle [enregistré sur votre compte](#setting-your-model).

465 465 


758 758 

759Fable 5.1, Fable 5, Sonnet 5 et versions ultérieures, Haiku 5.5, et Opus 4.7 et versions ultérieures fonctionnent par défaut avec la fenêtre de 1M, sans suffixe `[1m]` nécessaire. Cela inclut les sessions sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry, ainsi que les sessions [Claude apps gateway](https://code.claude.com/docs/fr/claude-apps-gateway). Pour les exécuter plutôt avec une fenêtre de 200K, consultez [Désactiver le contexte de 1M](#turn-off-1m-context).759Fable 5.1, Fable 5, Sonnet 5 et versions ultérieures, Haiku 5.5, et Opus 4.7 et versions ultérieures fonctionnent par défaut avec la fenêtre de 1M, sans suffixe `[1m]` nécessaire. Cela inclut les sessions sur Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry, ainsi que les sessions [Claude apps gateway](https://code.claude.com/docs/fr/claude-apps-gateway). Pour les exécuter plutôt avec une fenêtre de 200K, consultez [Désactiver le contexte de 1M](#turn-off-1m-context).

760 760 

761Opus 4.6 et Sonnet 4.6 n'atteignent 1M que via leur variante `[1m]`, et l'accès à cette variante dépend de votre forfait. Sur les forfaits Max, Team et Enterprise, y compris pour les sièges Team Standard et Team Premium, Opus 4.6 avec un contexte de 1M est inclus dans votre abonnement. Sonnet 4.6 avec un contexte de 1M nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) sur tous les forfaits d'abonnement, y compris Max.761Opus 4.6 et Sonnet 4.6 n'atteignent 1M que via leur variante `[1m]`, et l'accès à cette variante dépend de votre forfait. Sur les forfaits Max, Ultra, Team et Enterprise, y compris pour les sièges Team Standard et Team Premium, Opus 4.6 avec un contexte de 1M est inclus dans votre abonnement. Sonnet 4.6 avec un contexte de 1M nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) sur tous les forfaits d'abonnement, y compris Max et Ultra.

762 762 

763| Forfait | Opus 4.6 avec contexte de 1M | Sonnet 4.6 avec contexte de 1M |763| Forfait | Opus 4.6 avec contexte de 1M | Sonnet 4.6 avec contexte de 1M |

764| - | - | - |764| - | - | - |

765| Max, Team et Enterprise | Inclus dans l'abonnement | Nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |765| Max, Ultra, Team et Enterprise | Inclus dans l'abonnement | Nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |

766| Pro | Nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) | Nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |766| Pro | Nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) | Nécessite des [crédits d'utilisation](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |

767| API et paiement à l'usage | Accès complet | Accès complet |767| API et paiement à l'usage | Accès complet | Accès complet |

768 768 

overview.md +119 −119

Details

12 12 

13Claude Code s'exécute sur plusieurs surfaces : le terminal, les extensions IDE, une application de bureau et le web. Choisissez l'une des options dans les onglets ci-dessous pour commencer. La plupart des surfaces nécessitent un [abonnement Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=overview_pricing) ou un compte [Anthropic Console](https://platform.claude.com/). Le CLI Terminal, VS Code et JetBrains prennent également en charge les [fournisseurs tiers](https://code.claude.com/docs/fr/third-party-integrations.md).13Claude Code s'exécute sur plusieurs surfaces : le terminal, les extensions IDE, une application de bureau et le web. Choisissez l'une des options dans les onglets ci-dessous pour commencer. La plupart des surfaces nécessitent un [abonnement Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=overview_pricing) ou un compte [Anthropic Console](https://platform.claude.com/). Le CLI Terminal, VS Code et JetBrains prennent également en charge les [fournisseurs tiers](https://code.claude.com/docs/fr/third-party-integrations.md).

14 14 

15**Terminal**15> [tab] Terminal

16 16>

17Le CLI complet pour travailler avec Claude Code directement dans votre terminal. Modifiez les fichiers, exécutez des commandes et gérez l'ensemble de votre projet à partir de la ligne de commande.17> Le CLI complet pour travailler avec Claude Code directement dans votre terminal. Modifiez les fichiers, exécutez des commandes et gérez l'ensemble de votre projet à partir de la ligne de commande.

18 18>

19Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](https://code.claude.com/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.19> Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](https://code.claude.com/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.

20 20>

21**Installation native (recommandée)**21> > [tab] Installation native (recommandée)

22 22> >

23**macOS, Linux, WSL :**23> > **macOS, Linux, WSL :**

24 24> >

25```bash theme={null}25> > ```bash theme={null}

26curl -fsSL https://claude.ai/install.sh | bash26> > curl -fsSL https://claude.ai/install.sh | bash

27```27> > ```

28 28> >

29Sur Windows, votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.29> > Sur Windows, votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.

30 30> >

31**Windows PowerShell :**31> > **Windows PowerShell :**

32 32> >

33```powershell theme={null}33> > ```powershell theme={null}

34irm https://claude.ai/install.ps1 | iex34> > irm https://claude.ai/install.ps1 | iex

35```35> > ```

36 36> >

37**Windows CMD :**37> > **Windows CMD :**

38 38> >

39```batch theme={null}39> > ```batch theme={null}

40curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd40> > curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

41```41> > ```

42 42> >

43La commande d'installation n'affiche aucune progression pendant le téléchargement de Claude Code. Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](https://code.claude.com/docs/fr/troubleshoot-install.md#command-not-found-claude-after-installation).43> > La commande d'installation n'affiche aucune progression pendant le téléchargement de Claude Code. Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](https://code.claude.com/docs/fr/troubleshoot-install.md#command-not-found-claude-after-installation).

44 44> >

45Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell.45> > Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell.

46 46> >

47Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou toute autre erreur, consultez [Dépannage de l'installation](https://code.claude.com/docs/fr/troubleshoot-install.md#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.47> > Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou toute autre erreur, consultez [Dépannage de l'installation](https://code.claude.com/docs/fr/troubleshoot-install.md#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.

48 48> >

49[Git for Windows](https://git-scm.com/downloads/win) est recommandé sur Windows natif afin que Claude Code puisse utiliser l'outil Bash. Si Git for Windows n'est pas installé, Claude Code utilise PowerShell comme outil shell à la place. Les configurations WSL n'ont pas besoin de Git for Windows.49> > [Git for Windows](https://git-scm.com/downloads/win) est recommandé sur Windows natif afin que Claude Code puisse utiliser l'outil Bash. Si Git for Windows n'est pas installé, Claude Code utilise PowerShell comme outil shell à la place. Les configurations WSL n'ont pas besoin de Git for Windows.

50 50> >

51> [!NOTE]51> > > [!NOTE]

52> > >

53> > > Les installations natives se mettent à jour automatiquement en arrière-plan pour vous maintenir à jour avec la dernière version.

54>

55> > [tab] Homebrew

56> >

57> > ```bash theme={null}

58> > brew install --cask claude-code

59> > ```

60> >

61> > Homebrew propose deux casks. `claude-code` suit le canal de version stable, qui est généralement environ une semaine en retard et ignore les versions avec des régressions majeures. `claude-code@latest` suit le canal le plus récent et reçoit les nouvelles versions dès qu'elles sont publiées.

62> >

63> > > [!NOTE]

64> > >

65> > > Les installations Homebrew ne se mettent pas à jour automatiquement. Exécutez `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, selon le cask que vous avez installé, pour obtenir les dernières fonctionnalités et correctifs de sécurité.

66>

67> > [tab] WinGet

68> >

69> > ```powershell theme={null}

70> > winget install Anthropic.ClaudeCode

71> > ```

72> >

73> > > [!NOTE]

74> > >

75> > > Les installations WinGet ne se mettent pas à jour automatiquement. Exécutez `winget upgrade Anthropic.ClaudeCode` périodiquement pour obtenir les dernières fonctionnalités et correctifs de sécurité.

76>

77> Vous pouvez également installer avec [apt, dnf, ou apk](https://code.claude.com/docs/fr/setup.md#install-with-linux-package-managers) sur Debian, Fedora, RHEL et Alpine.

78>

79> Ensuite, démarrez Claude Code dans n'importe quel projet. Remplacez `your-project` par le chemin d'accès à un répertoire de projet sur votre machine :

52>80>

53> Les installations natives se mettent à jour automatiquement en arrière-plan pour vous maintenir à jour avec la dernière version.81> ```bash theme={null}

54 82> cd your-project

55**Homebrew**83> claude

56 84> ```

57```bash theme={null}

58brew install --cask claude-code

59```

60 

61Homebrew propose deux casks. `claude-code` suit le canal de version stable, qui est généralement environ une semaine en retard et ignore les versions avec des régressions majeures. `claude-code@latest` suit le canal le plus récent et reçoit les nouvelles versions dès qu'elles sont publiées.

62 

63> [!NOTE]

64>85>

65> Les installations Homebrew ne se mettent pas à jour automatiquement. Exécutez `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, selon le cask que vous avez installé, pour obtenir les dernières fonctionnalités et correctifs de sécurité.86> Claude Code vous demande de vous connecter lors de la première utilisation. Si vous avez défini la variable d'environnement `ANTHROPIC_API_KEY` et que vous approuvez la clé lorsque Claude Code vous demande s'il doit l'utiliser, Claude Code ignore l'invite de connexion. [Continuez avec le Démarrage rapide →](https://code.claude.com/docs/fr/quickstart.md)

66 

67**WinGet**

68 

69```powershell theme={null}

70winget install Anthropic.ClaudeCode

71```

72 

73> [!NOTE]

74>87>

75> Les installations WinGet ne se mettent pas à jour automatiquement. Exécutez `winget upgrade Anthropic.ClaudeCode` périodiquement pour obtenir les dernières fonctionnalités et correctifs de sécurité.88> > [!TIP]

76 89> >

77Vous pouvez également installer avec [apt, dnf, ou apk](https://code.claude.com/docs/fr/setup.md#install-with-linux-package-managers) sur Debian, Fedora, RHEL et Alpine.90> > Consultez la [configuration avancée](https://code.claude.com/docs/fr/setup.md) pour les options d'installation, les mises à jour manuelles ou les instructions de désinstallation. Visitez la [résolution des problèmes d'installation](https://code.claude.com/docs/fr/troubleshoot-install.md) si vous rencontrez des problèmes.

78 

79Ensuite, démarrez Claude Code dans n'importe quel projet. Remplacez `your-project` par le chemin d'accès à un répertoire de projet sur votre machine :

80 91 

81```bash theme={null}92> [tab] VS Code

82cd your-project

83claude

84```

85 

86Claude Code vous demande de vous connecter lors de la première utilisation. Si vous avez défini la variable d'environnement `ANTHROPIC_API_KEY` et que vous approuvez la clé lorsque Claude Code vous demande s'il doit l'utiliser, Claude Code ignore l'invite de connexion. [Continuez avec le Démarrage rapide →](https://code.claude.com/docs/fr/quickstart.md)

87 

88> [!TIP]

89>93>

90> Consultez la [configuration avancée](https://code.claude.com/docs/fr/setup.md) pour les options d'installation, les mises à jour manuelles ou les instructions de désinstallation. Visitez la [résolution des problèmes d'installation](https://code.claude.com/docs/fr/troubleshoot-install.md) si vous rencontrez des problèmes.94> L'extension VS Code fournit des diffs en ligne, des mentions @, un examen du plan et l'historique des conversations directement dans votre éditeur.

91 95>

92**VS Code**96> * [Installer pour VS Code](vscode:extension/anthropic.claude-code)

93 97> * [Installer pour Cursor](cursor:extension/anthropic.claude-code)

94L'extension VS Code fournit des diffs en ligne, des mentions @, un examen du plan et l'historique des conversations directement dans votre éditeur.98>

95 99> Ou recherchez « Claude Code » dans la vue Extensions (`Cmd+Shift+X` sur Mac, `Ctrl+Shift+X` sur Windows/Linux). Après l'installation, ouvrez la Palette de commandes (`Cmd+Shift+P` / `Ctrl+Shift+P`), tapez « Claude Code » et sélectionnez **Ouvrir dans un nouvel onglet**.

96* [Installer pour VS Code](vscode:extension/anthropic.claude-code)100>

97* [Installer pour Cursor](cursor:extension/anthropic.claude-code)101> [Commencer avec VS Code →](https://code.claude.com/docs/fr/vs-code.md#get-started)

98 

99Ou recherchez « Claude Code » dans la vue Extensions (`Cmd+Shift+X` sur Mac, `Ctrl+Shift+X` sur Windows/Linux). Après l'installation, ouvrez la Palette de commandes (`Cmd+Shift+P` / `Ctrl+Shift+P`), tapez « Claude Code » et sélectionnez **Ouvrir dans un nouvel onglet**.

100 

101[Commencer avec VS Code →](https://code.claude.com/docs/fr/vs-code.md#get-started)

102 

103**Application de bureau**

104 

105Une application autonome pour exécuter Claude Code en dehors de votre IDE ou terminal. Examinez les diffs visuellement, exécutez plusieurs sessions côte à côte, planifiez des tâches récurrentes et lancez des sessions cloud.

106 

107Téléchargez et installez :

108 

109* [macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs) (Intel et Apple Silicon)

110* [Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs) (x64)

111* [Windows ARM64](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)

112* Sur Ubuntu ou Debian, où l'application est en version bêta, installez-la avec apt en suivant les [instructions d'installation Linux](https://code.claude.com/docs/fr/desktop-linux.md)

113 

114Après l'installation, lancez Claude, connectez-vous et cliquez sur l'onglet **Code** pour commencer à coder. L'application inclut Claude Code, vous n'avez donc pas besoin d'installer le CLI séparément. Un [abonnement payant](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=overview_desktop_pricing) est requis.

115 

116[En savoir plus sur l'application de bureau →](https://code.claude.com/docs/fr/desktop-quickstart.md)

117 

118**Web**

119 

120Exécutez Claude Code dans votre navigateur sans configuration locale. Lancez des tâches longues et revenez quand elles sont terminées, travaillez sur des dépôts que vous n'avez pas localement ou exécutez plusieurs tâches en parallèle. Pour un travail plus important, créez un [projet](https://code.claude.com/docs/fr/claude-projects.md) et laissez Claude coordonner les sessions parallèles pour vous. Disponible sur les navigateurs de bureau et [l'application Claude pour iOS et Android](https://code.claude.com/docs/fr/mobile.md).

121 

122Commencez à coder sur [claude.ai/code](https://claude.ai/code).

123 

124[Commencer →](https://code.claude.com/docs/fr/web-quickstart.md)

125 

126**JetBrains**

127 102 

128Un plugin pour IntelliJ IDEA, PyCharm, WebStorm et autres IDE JetBrains avec visualisation interactive des diffs et partage du contexte de sélection.103> [tab] Application de bureau

104>

105> Une application autonome pour exécuter Claude Code en dehors de votre IDE ou terminal. Examinez les diffs visuellement, exécutez plusieurs sessions côte à côte, planifiez des tâches récurrentes et lancez des sessions cloud.

106>

107> Téléchargez et installez :

108>

109> * [macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs) (Intel et Apple Silicon)

110> * [Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs) (x64)

111> * [Windows ARM64](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)

112> * Sur Ubuntu ou Debian, où l'application est en version bêta, installez-la avec apt en suivant les [instructions d'installation Linux](https://code.claude.com/docs/fr/desktop-linux.md)

113>

114> Après l'installation, lancez Claude, connectez-vous et cliquez sur l'onglet **Code** pour commencer à coder. L'application inclut Claude Code, vous n'avez donc pas besoin d'installer le CLI séparément. Un [abonnement payant](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=overview_desktop_pricing) est requis.

115>

116> [En savoir plus sur l'application de bureau →](https://code.claude.com/docs/fr/desktop-quickstart.md)

129 117 

130Installez le [plugin Claude Code](https://plugins.jetbrains.com/plugin/27310-claude-code-beta-) depuis la Marketplace JetBrains et redémarrez votre IDE. Le plugin nécessite le CLI Claude Code, installé séparément ; consultez les [étapes de configuration JetBrains](https://code.claude.com/docs/fr/jetbrains.md#installation).118> [tab] Web

119>

120> Exécutez Claude Code dans votre navigateur sans configuration locale. Lancez des tâches longues et revenez quand elles sont terminées, travaillez sur des dépôts que vous n'avez pas localement ou exécutez plusieurs tâches en parallèle. Pour un travail plus important, créez un [projet](https://code.claude.com/docs/fr/claude-projects.md) et laissez Claude coordonner les sessions parallèles pour vous. Disponible sur les navigateurs de bureau et [l'application Claude pour iOS et Android](https://code.claude.com/docs/fr/mobile.md).

121>

122> Commencez à coder sur [claude.ai/code](https://claude.ai/code).

123>

124> [Commencer →](https://code.claude.com/docs/fr/web-quickstart.md)

131 125 

132[Commencer avec JetBrains →](https://code.claude.com/docs/fr/jetbrains.md)126> [tab] JetBrains

127>

128> Un plugin pour IntelliJ IDEA, PyCharm, WebStorm et autres IDE JetBrains avec visualisation interactive des diffs et partage du contexte de sélection.

129>

130> Installez le [plugin Claude Code](https://plugins.jetbrains.com/plugin/27310-claude-code-beta-) depuis la Marketplace JetBrains et redémarrez votre IDE. Le plugin nécessite le CLI Claude Code, installé séparément ; consultez les [étapes de configuration JetBrains](https://code.claude.com/docs/fr/jetbrains.md#installation).

131>

132> [Commencer avec JetBrains →](https://code.claude.com/docs/fr/jetbrains.md)

133 133 

134## Ce que vous pouvez faire134## Ce que vous pouvez faire

135 135 

136Voici quelques-unes des façons dont vous pouvez utiliser Claude Code :136Voici quelques-unes des façons dont vous pouvez utiliser Claude Code :

137 137 

138> **Automatiser le travail que vous reprenez sans cesse**138> [accordion] Automatiser le travail que vous reprenez sans cesse

139>139>

140> Claude Code gère les tâches fastidieuses qui vous prennent du temps : écrire des tests pour le code non testé, corriger les erreurs de lint dans un projet, résoudre les conflits de fusion, mettre à jour les dépendances et écrire les notes de version.140> Claude Code gère les tâches fastidieuses qui vous prennent du temps : écrire des tests pour le code non testé, corriger les erreurs de lint dans un projet, résoudre les conflits de fusion, mettre à jour les dépendances et écrire les notes de version.

141>141>


143> claude "write tests for the auth module, run them, and fix any failures"143> claude "write tests for the auth module, run them, and fix any failures"

144> ```144> ```

145 145 

146> **Créer des fonctionnalités et corriger des bogues**146> [accordion] Créer des fonctionnalités et corriger des bogues

147>147>

148> Décrivez ce que vous voulez en langage naturel. Claude Code planifie l'approche, écrit le code sur plusieurs fichiers et vérifie qu'il fonctionne.148> Décrivez ce que vous voulez en langage naturel. Claude Code planifie l'approche, écrit le code sur plusieurs fichiers et vérifie qu'il fonctionne.

149>149>

150> Pour les bogues, collez un message d'erreur ou décrivez le symptôme. Claude Code trace le problème dans votre base de code, identifie la cause racine et implémente une correction. Consultez les [flux de travail courants](https://code.claude.com/docs/fr/common-workflows.md) pour plus d'exemples.150> Pour les bogues, collez un message d'erreur ou décrivez le symptôme. Claude Code trace le problème dans votre base de code, identifie la cause racine et implémente une correction. Consultez les [flux de travail courants](https://code.claude.com/docs/fr/common-workflows.md) pour plus d'exemples.

151 151 

152> **Créer des commits et des demandes de tirage**152> [accordion] Créer des commits et des demandes de tirage

153>153>

154> Claude Code fonctionne directement avec git. Il prépare les modifications, écrit les messages de commit, crée des branches et ouvre des demandes de tirage.154> Claude Code fonctionne directement avec git. Il prépare les modifications, écrit les messages de commit, crée des branches et ouvre des demandes de tirage.

155>155>


159>159>

160> En CI, vous pouvez automatiser la revue de code et le triage des problèmes avec [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md).160> En CI, vous pouvez automatiser la revue de code et le triage des problèmes avec [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md).

161 161 

162> **Connecter vos outils avec MCP**162> [accordion] Connecter vos outils avec MCP

163>163>

164> Le [Model Context Protocol (MCP)](https://code.claude.com/docs/fr/mcp.md) est une norme ouverte pour connecter les outils d'IA aux sources de données externes. Avec MCP, Claude Code peut lire vos documents de conception dans Google Drive, mettre à jour les tickets dans Jira, extraire les données de Slack ou utiliser vos outils personnalisés. Le [démarrage rapide MCP](https://code.claude.com/docs/fr/mcp-quickstart.md) connecte votre premier serveur de bout en bout.164> Le [Model Context Protocol (MCP)](https://code.claude.com/docs/fr/mcp.md) est une norme ouverte pour connecter les outils d'IA aux sources de données externes. Avec MCP, Claude Code peut lire vos documents de conception dans Google Drive, mettre à jour les tickets dans Jira, extraire les données de Slack ou utiliser vos outils personnalisés. Le [démarrage rapide MCP](https://code.claude.com/docs/fr/mcp-quickstart.md) connecte votre premier serveur de bout en bout.

165 165 

166> **Personnaliser avec des instructions, des skills et des hooks**166> [accordion] Personnaliser avec des instructions, des skills et des hooks

167>167>

168> [`CLAUDE.md`](https://code.claude.com/docs/fr/memory) est un fichier markdown que vous ajoutez à la racine de votre projet et que Claude Code lit au début de chaque session. Utilisez-le pour définir les normes de codage, les décisions architecturales, les bibliothèques préférées et les listes de contrôle de revue. Si votre dépôt possède déjà un `AGENTS.md` pour d'autres agents de codage, Claude Code [peut le lire](https://code.claude.com/docs/fr/memory.md#agents-md) à la place d'un `CLAUDE.md`. Claude construit également une [mémoire automatique](https://code.claude.com/docs/fr/memory.md#auto-memory) au fur et à mesure qu'il travaille, en sauvegardant les apprentissages entre les sessions sans que vous ayez à écrire quoi que ce soit.168> [`CLAUDE.md`](https://code.claude.com/docs/fr/memory) est un fichier markdown que vous ajoutez à la racine de votre projet et que Claude Code lit au début de chaque session. Utilisez-le pour définir les normes de codage, les décisions architecturales, les bibliothèques préférées et les listes de contrôle de revue. Si votre dépôt possède déjà un `AGENTS.md` pour d'autres agents de codage, Claude Code [peut le lire](https://code.claude.com/docs/fr/memory.md#agents-md) à la place d'un `CLAUDE.md`. Claude construit également une [mémoire automatique](https://code.claude.com/docs/fr/memory.md#auto-memory) au fur et à mesure qu'il travaille, en sauvegardant les apprentissages entre les sessions sans que vous ayez à écrire quoi que ce soit.

169>169>


171>171>

172> Les [hooks](https://code.claude.com/docs/fr/hooks.md) vous permettent d'exécuter des commandes shell avant ou après les actions de Claude Code, comme le formatage automatique après chaque modification de fichier ou l'exécution de lint avant un commit.172> Les [hooks](https://code.claude.com/docs/fr/hooks.md) vous permettent d'exécuter des commandes shell avant ou après les actions de Claude Code, comme le formatage automatique après chaque modification de fichier ou l'exécution de lint avant un commit.

173 173 

174> **Exécuter des équipes d'agents et créer des agents personnalisés**174> [accordion] Exécuter des équipes d'agents et créer des agents personnalisés

175>175>

176> Lancez [plusieurs agents Claude Code](https://code.claude.com/docs/fr/sub-agents.md) qui travaillent sur différentes parties d'une tâche simultanément. Un agent principal coordonne le travail, assigne les sous-tâches et fusionne les résultats.176> Lancez [plusieurs agents Claude Code](https://code.claude.com/docs/fr/sub-agents.md) qui travaillent sur différentes parties d'une tâche simultanément. Un agent principal coordonne le travail, assigne les sous-tâches et fusionne les résultats.

177>177>

178> Pour exécuter plusieurs sessions complètes en parallèle et les regarder depuis un seul écran, utilisez les [agents en arrière-plan](https://code.claude.com/docs/fr/agent-view.md). Pour les flux de travail entièrement personnalisés, le [Agent SDK](https://code.claude.com/docs/fr/agent-sdk/overview.md) vous permet de créer vos propres agents alimentés par les outils et capacités de Claude Code, avec un contrôle total sur l'orchestration, l'accès aux outils et les permissions.178> Pour exécuter plusieurs sessions complètes en parallèle et les regarder depuis un seul écran, utilisez les [agents en arrière-plan](https://code.claude.com/docs/fr/agent-view.md). Pour les flux de travail entièrement personnalisés, le [Agent SDK](https://code.claude.com/docs/fr/agent-sdk/overview.md) vous permet de créer vos propres agents alimentés par les outils et capacités de Claude Code, avec un contrôle total sur l'orchestration, l'accès aux outils et les permissions.

179 179 

180> **Piping, scripts et automatisation avec le CLI**180> [accordion] Piping, scripts et automatisation avec le CLI

181>181>

182> Claude Code est composable et suit la philosophie Unix. Canalisez les journaux dedans, exécutez-le en CI ou chaînez-le avec d'autres outils :182> Claude Code est composable et suit la philosophie Unix. Canalisez les journaux dedans, exécutez-le en CI ou chaînez-le avec d'autres outils :

183>183>


194>194>

195> Consultez la [référence CLI](https://code.claude.com/docs/fr/cli-reference.md) pour l'ensemble complet des commandes et des drapeaux.195> Consultez la [référence CLI](https://code.claude.com/docs/fr/cli-reference.md) pour l'ensemble complet des commandes et des drapeaux.

196 196 

197> **Planifier des tâches récurrentes**197> [accordion] Planifier des tâches récurrentes

198>198>

199> Exécutez Claude selon un calendrier pour automatiser le travail qui se répète : examens de PR le matin, analyse des défaillances CI pendant la nuit, audits de dépendances hebdomadaires ou synchronisation des documents après la fusion des PR.199> Exécutez Claude selon un calendrier pour automatiser le travail qui se répète : examens de PR le matin, analyse des défaillances CI pendant la nuit, audits de dépendances hebdomadaires ou synchronisation des documents après la fusion des PR.

200>200>


202> * Les [tâches planifiées de bureau](https://code.claude.com/docs/fr/desktop-scheduled-tasks.md) s'exécutent sur votre machine, avec un accès direct à vos fichiers et outils locaux202> * Les [tâches planifiées de bureau](https://code.claude.com/docs/fr/desktop-scheduled-tasks.md) s'exécutent sur votre machine, avec un accès direct à vos fichiers et outils locaux

203> * [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) répète un prompt dans une session CLI pour un sondage rapide203> * [`/loop`](https://code.claude.com/docs/fr/scheduled-tasks) répète un prompt dans une session CLI pour un sondage rapide

204 204 

205> **Travailler de n'importe où**205> [accordion] Travailler de n'importe où

206>206>

207> Les sessions ne sont pas liées à une seule surface. Déplacez le travail entre elles à mesure que votre contexte change :207> Les sessions ne sont pas liées à une seule surface. Déplacez le travail entre elles à mesure que votre contexte change :

208>208>

permission-modes.md +140 −135

Details

8 8 

9Un mode de permission définit les actions que Claude peut effectuer dans une session sans vous demander au préalable. En mode Manual, Claude Code s'arrête et vous sollicite avant la plupart des actions qui modifient des fichiers, exécutent des commandes shell ou accèdent au réseau. En [mode auto](#eliminate-prompts-with-auto-mode), un second modèle, le classifieur, examine les actions à votre place ; la section [comment le classifieur évalue les actions](#how-the-classifier-evaluates-actions) indique quelles actions il examine et lesquelles lui échappent.9Un mode de permission définit les actions que Claude peut effectuer dans une session sans vous demander au préalable. En mode Manual, Claude Code s'arrête et vous sollicite avant la plupart des actions qui modifient des fichiers, exécutent des commandes shell ou accèdent au réseau. En [mode auto](#eliminate-prompts-with-auto-mode), un second modèle, le classifieur, examine les actions à votre place ; la section [comment le classifieur évalue les actions](#how-the-classifier-evaluates-actions) indique quelles actions il examine et lesquelles lui échappent.

10 10 

11Avec Claude Code v2.1.283 ou version ultérieure, le mode auto est le mode de permission de départ intégré pour les sessions interactives dans le terminal et dans VS Code. Sur les versions antérieures, il n'est le mode de permission de départ intégré que sur les forfaits Pro, Max et Team. La section [Dans quel mode une session démarre](#which-mode-a-session-starts-in) présente les surfaces et les paramètres qui modifient le mode de permission de départ. Vous pouvez également changer le mode de permission d'une session en cours à tout moment.11Avec Claude Code v2.1.283 ou version ultérieure, le mode auto est le mode de permission de départ intégré pour les sessions interactives dans le terminal et dans VS Code. Sur les versions antérieures, il n'est le mode de permission de départ intégré que sur les forfaits Pro, Max, Ultra et Team. La section [Dans quel mode une session démarre](#which-mode-a-session-starts-in) présente les surfaces et les paramètres qui modifient le mode de permission de départ. Vous pouvez également changer le mode de permission d'une session en cours à tout moment.

12 12 

13## Modes disponibles13## Modes disponibles

14 14 


80| Un fichier de paramètres définit `disableAutoMode` sur `"disable"` | `default` |80| Un fichier de paramètres définit `disableAutoMode` sur `"disable"` | `default` |

81| `claude -p` ou le [SDK Agent](https://code.claude.com/docs/fr/agent-sdk/permissions.md#permission-modes) | `default` |81| `claude -p` ou le [SDK Agent](https://code.claude.com/docs/fr/agent-sdk/permissions.md#permission-modes) | `default` |

82| La [configuration HIPAA](#hipaa-configuration) est appliquée à votre organisation et la session y est [éligible](https://code.claude.com/docs/fr/hipaa-setup.md#check-how-developers-sign-in-and-connect) | `default` avec Claude Code v2.1.285 ou version ultérieure ; le mode auto reste disponible pour y basculer |82| La [configuration HIPAA](#hipaa-configuration) est appliquée à votre organisation et la session y est [éligible](https://code.claude.com/docs/fr/hipaa-setup.md#check-how-developers-sign-in-and-connect) | `default` avec Claude Code v2.1.285 ou version ultérieure ; le mode auto reste disponible pour y basculer |

83| Dans un terminal ou via l'[extension VS Code](https://code.claude.com/docs/fr/vs-code.md) | `auto` avec Claude Code v2.1.283 ou version ultérieure ; sur les versions antérieures, `auto` sur les plans Pro, Max ou Team dans les sessions qui [récupèrent les flags de fonctionnalité](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching), et `default` sinon |83| Dans un terminal ou via l'[extension VS Code](https://code.claude.com/docs/fr/vs-code.md) | `auto` avec Claude Code v2.1.283 ou version ultérieure ; sur les versions antérieures, `auto` sur les plans Pro, Max, Ultra ou Team dans les sessions qui [récupèrent les flags de fonctionnalité](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching), et `default` sinon |

84 84 

85Quand le flag, un fichier de paramètres ou la valeur par défaut intégrée sélectionne `auto` mais que le mode auto n'est pas disponible pour la session, Claude Code démarre la session en mode Manuel à la place. Le mode auto est indisponible quand la session ne répond pas aux [exigences de disponibilité](#eliminate-prompts-with-auto-mode), comme un fichier de paramètres le désactivant ou un modèle qui ne le supporte pas, ou quand Anthropic l'a temporairement désactivé côté serveur.85Quand le flag, un fichier de paramètres ou la valeur par défaut intégrée sélectionne `auto` mais que le mode auto n'est pas disponible pour la session, Claude Code démarre la session en mode Manuel à la place. Le mode auto est indisponible quand la session ne répond pas aux [exigences de disponibilité](#eliminate-prompts-with-auto-mode), comme un fichier de paramètres le désactivant ou un modèle qui ne le supporte pas, ou quand Anthropic l'a temporairement désactivé côté serveur.

86 86 


89* Dans un terminal, une fois, en haut de la session89* Dans un terminal, une fois, en haut de la session

90* Dans l'extension VS Code, sous forme de carte sur l'écran de nouvelle conversation qui reste jusqu'à ce que vous la fermiez90* Dans l'extension VS Code, sous forme de carte sur l'écran de nouvelle conversation qui reste jusqu'à ce que vous la fermiez

91 91 

92Si votre `~/.claude/settings.json` définit un `defaultMode` autre que `auto` et qu'aucun autre fichier de paramètres n'en définit un, vos sessions continuent à démarrer dans ce mode. Sur les plans Pro, Max et Team, et dans les sessions qui [ne récupèrent pas les flags de fonctionnalité](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching), Claude Code demande une fois, dans le terminal ou dans l'extension VS Code, si vous souhaitez modifier le paramètre en mode auto. Si vous refusez, votre paramètre reste tel quel.92Si votre `~/.claude/settings.json` définit un `defaultMode` autre que `auto` et qu'aucun autre fichier de paramètres n'en définit un, vos sessions continuent à démarrer dans ce mode.

93 

94Sur les plans Pro, Max, Ultra et Team, et dans les sessions qui [ne récupèrent pas les flags de fonctionnalité](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching), Claude Code demande une fois si vous souhaitez modifier le paramètre en mode auto. La question apparaît dans le terminal ou dans l'extension VS Code, et si vous refusez, votre paramètre reste tel quel.

93 95 

94### Appels d'outils refusés dans les exécutions `claude -p` et Agent SDK96### Appels d'outils refusés dans les exécutions `claude -p` et Agent SDK

95 97 


102 104 

103Ces exemples montrent la forme en mode auto pour la CLI et pour chaque SDK :105Ces exemples montrent la forme en mode auto pour la CLI et pour chaque SDK :

104 106 

105**CLI**107> [tab] CLI

106 108>

107```bash theme={null}109> ```bash theme={null}

108claude -p "Run the test suite and fix any failures" --permission-mode auto110> claude -p "Run the test suite and fix any failures" --permission-mode auto

109```111> ```

110 

111**TypeScript**

112 

113```typescript theme={null}

114const options = {

115 permissionMode: "auto"

116};

117```

118 

119**Python**

120 112 

121```python theme={null}113> [tab] TypeScript

122from claude_agent_sdk import ClaudeAgentOptions114>

115> ```typescript theme={null}

116> const options = {

117> permissionMode: "auto"

118> };

119> ```

123 120 

124options = ClaudeAgentOptions(permission_mode="auto")121> [tab] Python

125```122>

123> ```python theme={null}

124> from claude_agent_sdk import ClaudeAgentOptions

125>

126> options = ClaudeAgentOptions(permission_mode="auto")

127> ```

126 128 

127Avant la v2.1.302, ces exécutions pouvaient démarrer en mode auto si elles ne [récupéraient pas les flags de fonctionnalité](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching), par exemple sur un [fournisseur tiers](https://code.claude.com/docs/fr/third-party-integrations.md) ou avec `DISABLE_TELEMETRY`.129Avant la v2.1.302, ces exécutions pouvaient démarrer en mode auto si elles ne [récupéraient pas les flags de fonctionnalité](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching), par exemple sur un [fournisseur tiers](https://code.claude.com/docs/fr/third-party-integrations.md) ou avec `DISABLE_TELEMETRY`.

128 130 


166 168 

167Chaque interface a son propre contrôle pour basculer les modes de permission pendant une session et sa propre façon de choisir le mode de permission que les nouvelles sessions démarrent. Sélectionnez votre interface pour voir ses contrôles.169Chaque interface a son propre contrôle pour basculer les modes de permission pendant une session et sa propre façon de choisir le mode de permission que les nouvelles sessions démarrent. Sélectionnez votre interface pour voir ses contrôles.

168 170 

169**CLI**171> [tab] CLI

170 172>

171**En cours de session** : appuyez sur `Shift+Tab` pour parcourir les modes de permission. À partir de `auto`, le premier appui bascule vers `default`, et le cycle s'exécute ensuite `default` → `acceptEdits` → `plan`. Les modes optionnels s'insèrent après `plan`. La barre d'état affiche le mode actif sous la forme d'un `⏸ manual mode on` gris pour `default`, ou sous la forme `⏵⏵ accept edits on`, `⏸ plan mode on`, `⏵⏵ auto mode on`, `⏵⏵ don't ask on`, ou `⏵⏵ bypass permissions on`.173> **En cours de session** : appuyez sur `Shift+Tab` pour parcourir les modes de permission. À partir de `auto`, le premier appui bascule vers `default`, et le cycle s'exécute ensuite `default` → `acceptEdits` → `plan`. Les modes optionnels s'insèrent après `plan`. La barre d'état affiche le mode actif sous la forme d'un `⏸ manual mode on` gris pour `default`, ou sous la forme `⏵⏵ accept edits on`, `⏸ plan mode on`, `⏵⏵ auto mode on`, `⏵⏵ don't ask on`, ou `⏵⏵ bypass permissions on`.

172 174>

173Observez la barre d'état dans cet extrait d'une session démarrée en mode auto. Chaque fois que vous appuyez sur `Shift+Tab`, elle passe de `auto mode on` à `manual mode on`, `accept edits on`, `plan mode on`, puis revient à `auto mode on`.175> Observez la barre d'état dans cet extrait d'une session démarrée en mode auto. Chaque fois que vous appuyez sur `Shift+Tab`, elle passe de `auto mode on` à `manual mode on`, `accept edits on`, `plan mode on`, puis revient à `auto mode on`.

174 176>

175<video autoPlay muted loop playsInline src="https://mintcdn.com/claude-code/tA-x-5L2YsYSVdee/images/permission-modes-cycle-light.mp4?fit=max&auto=format&n=tA-x-5L2YsYSVdee&q=85&s=3927dd62d59b01efd81b3578f2a6f971" aria-label="La barre d'état sous la zone de saisie de Claude Code change à chaque appui sur Shift+Tab : auto mode on, manual mode on, accept edits on, plan mode on, puis de nouveau auto mode on." />177> <video autoPlay muted loop playsInline src="https://mintcdn.com/claude-code/tA-x-5L2YsYSVdee/images/permission-modes-cycle-light.mp4?fit=max&auto=format&n=tA-x-5L2YsYSVdee&q=85&s=3927dd62d59b01efd81b3578f2a6f971" aria-label="La barre d'état sous la zone de saisie de Claude Code change à chaque appui sur Shift+Tab : auto mode on, manual mode on, accept edits on, plan mode on, puis de nouveau auto mode on." />

176 178>

177Tous les modes ne sont pas dans le cycle par défaut :179> Tous les modes ne sont pas dans le cycle par défaut :

178 180>

179* `auto` : apparaît quand le [mode auto est disponible](#eliminate-prompts-with-auto-mode) ; basculer vers celui-ci change les modes de permission sans invite de confirmation181> * `auto` : apparaît quand le [mode auto est disponible](#eliminate-prompts-with-auto-mode) ; basculer vers celui-ci change les modes de permission sans invite de confirmation

180* `bypassPermissions` : apparaît après que vous ayez démarré avec `--permission-mode bypassPermissions`, `--dangerously-skip-permissions`, `--allow-dangerously-skip-permissions`, ou `permissions.defaultMode: "bypassPermissions"` dans les [paramètres utilisateur, `--settings`, ou gérés](https://code.claude.com/docs/fr/settings-reference#permissions-defaultmode). La variante `--allow-` ajoute le mode de permission au cycle sans l'activer182> * `bypassPermissions` : apparaît après que vous ayez démarré avec `--permission-mode bypassPermissions`, `--dangerously-skip-permissions`, `--allow-dangerously-skip-permissions`, ou `permissions.defaultMode: "bypassPermissions"` dans les [paramètres utilisateur, `--settings`, ou gérés](https://code.claude.com/docs/fr/settings-reference#permissions-defaultmode). La variante `--allow-` ajoute le mode de permission au cycle sans l'activer

181* `dontAsk` : n'apparaît jamais dans le cycle ; définissez-le avec `--permission-mode dontAsk`183> * `dontAsk` : n'apparaît jamais dans le cycle ; définissez-le avec `--permission-mode dontAsk`

182 184>

183Les modes optionnels activés s'insèrent après `plan`, avec `bypassPermissions` en premier et `auto` en dernier. Si vous avez les deux activés, vous parcourrez `bypassPermissions` en allant vers `auto`.185> Les modes optionnels activés s'insèrent après `plan`, avec `bypassPermissions` en premier et `auto` en dernier. Si vous avez les deux activés, vous parcourrez `bypassPermissions` en allant vers `auto`.

184 186>

185**À partir d'une invite de permission Bash** : en modes de permission Manuel et `acceptEdits`, quand le [mode auto](#eliminate-prompts-with-auto-mode) est disponible, Claude Code ajoute **Oui, et basculer vers le mode auto** à l'invite de permission d'une commande Bash. Sélectionnez-le pour approuver la commande et basculer la session vers le mode auto. Les invites de l'[outil PowerShell](https://code.claude.com/docs/fr/tools-reference.md#powershell-tool) n'offrent pas l'option. Nécessite Claude Code v2.1.247 ou version ultérieure.187> **À partir d'une invite de permission Bash** : en modes de permission Manuel et `acceptEdits`, quand le [mode auto](#eliminate-prompts-with-auto-mode) est disponible, Claude Code ajoute **Oui, et basculer vers le mode auto** à l'invite de permission d'une commande Bash. Sélectionnez-le pour approuver la commande et basculer la session vers le mode auto. Les invites de l'[outil PowerShell](https://code.claude.com/docs/fr/tools-reference.md#powershell-tool) n'offrent pas l'option. Nécessite Claude Code v2.1.247 ou version ultérieure.

186 188>

187Claude Code n'ajoute pas l'option aux invites forcées par l'une de vos [règles `ask`](https://code.claude.com/docs/fr/permissions#manage-permissions) ou par un [hook](https://code.claude.com/docs/fr/hooks.md#pretooluse-decision-control), car le mode auto vous montre toujours ces invites, donc basculer ne les supprimerait pas.189> Claude Code n'ajoute pas l'option aux invites forcées par l'une de vos [règles `ask`](https://code.claude.com/docs/fr/permissions#manage-permissions) ou par un [hook](https://code.claude.com/docs/fr/hooks.md#pretooluse-decision-control), car le mode auto vous montre toujours ces invites, donc basculer ne les supprimerait pas.

188 190>

189**Au démarrage** : passez le mode de permission en tant que drapeau.191> **Au démarrage** : passez le mode de permission en tant que drapeau.

190 192>

191```bash theme={null}193> ```bash theme={null}

192claude --permission-mode plan194> claude --permission-mode plan

193```195> ```

194 196>

195**Comme valeur par défaut** : définissez `permissions.defaultMode` à la portée que vous souhaitez, comme décrit dans [Démarrer dans un mode de permission différent](#start-in-a-different-mode).197> **Comme valeur par défaut** : définissez `permissions.defaultMode` à la portée que vous souhaitez, comme décrit dans [Démarrer dans un mode de permission différent](#start-in-a-different-mode).

196 198>

197Le même drapeau `--permission-mode` fonctionne avec `-p` pour les [exécutions non-interactives](https://code.claude.com/docs/fr/headless.md).199> Le même drapeau `--permission-mode` fonctionne avec `-p` pour les [exécutions non-interactives](https://code.claude.com/docs/fr/headless.md).

198 

199**VS Code**

200 

201**En cours de session** : cliquez sur l'indicateur de mode en bas de la zone de saisie. Il utilise ces étiquettes pour les modes sur cette page :

202 

203| Étiquette UI | Mode |

204| :- | :- |

205| Manual | `default` |

206| Edit automatically | `acceptEdits` |

207| Plan | `plan` |

208| Auto | `auto` |

209| Bypass permissions | `bypassPermissions` |

210 

211**Comme valeur par défaut** : pour épingler le mode de permission dans lequel les conversations démarrent, définissez `claudeCode.initialPermissionMode` dans vos paramètres utilisateur VS Code sur `default`, `manual`, `acceptEdits`, `plan`, ou `bypassPermissions`. Le paramètre n'accepte pas `auto` ; pour démarrer en Auto, laissez-le non défini et choisissez **Auto** à partir de l'indicateur de mode une fois, comme l'élément 2 ci-dessous le décrit. L'extension démarre chaque nouvelle conversation dans le premier de ces éléments qui s'applique :

212 

2131. `claudeCode.initialPermissionMode`

2142. Le mode que vous avez choisi en dernier à partir de l'indicateur de mode, s'il s'agissait de Manuel, Éditer automatiquement, ou Auto. Choisir Plan ou Bypass permissions s'applique à cette conversation uniquement

2153. `permissions.defaultMode` à partir des [paramètres gérés](https://code.claude.com/docs/fr/managed-settings.md) ou `~/.claude/settings.json`

2164. La [valeur par défaut intégrée](#which-mode-a-session-starts-in) pour votre plan, fournisseur et paramètres d'organisation

217 

218L'extension ne lit jamais le `.claude/settings.json` ou `.claude/settings.local.json` d'un projet pour le mode de permission de démarrage. Quand `claudeCode.claudeProcessWrapper` est défini, les éléments 3 et 4 ne s'appliquent pas : ces conversations démarrent en Manuel sauf si l'élément 1 ou l'élément 2 définit un mode de permission.

219 

220Avant v2.1.283, l'élément 3 s'appliquait uniquement sur les plans Pro, Max et Team dans les sessions qui [récupèrent les drapeaux de fonctionnalité](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching).

221 

222Auto apparaît dans l'indicateur de mode quand le [mode auto est disponible](#eliminate-prompts-with-auto-mode).

223 

224Bypass permissions nécessite le bouton bascule **Allow dangerously skip permissions** dans les paramètres de l'extension. Sans lui, le mode de permission n'apparaît pas dans l'indicateur, et une valeur `bypassPermissions` de l'élément 1 ou l'élément 3 démarre la conversation en Manuel à la place. Auto de n'importe quel élément démarre également la conversation en Manuel quand le mode auto n'est pas disponible.

225 

226Voir le [guide VS Code](https://code.claude.com/docs/fr/vs-code.md) pour les détails spécifiques à l'extension.

227 

228**JetBrains**

229 

230Le plugin JetBrains exécute Claude Code dans le terminal de l'IDE, donc basculer les modes de permission fonctionne de la même manière que dans la CLI : appuyez sur `Shift+Tab` pour parcourir, ou passez `--permission-mode` lors du lancement.

231 

232**Desktop**

233 

234**En cours de session** : dans l'onglet Code, utilisez le sélecteur de mode dans la rangée sous la zone de saisie. Tous les modes n'apparaissent pas dans le sélecteur :

235 

236* **Auto** : apparaît quand le [mode auto est disponible](#eliminate-prompts-with-auto-mode)

237* **Bypass permissions** : nécessite le bouton bascule **Allow bypass permissions mode** dans les paramètres Desktop sur les plans Pro et Max ; sur les plans Team et Enterprise, la politique organisationnelle le contrôle à la place

238 

239Cowork n'utilise pas ces modes. Il dispose de ses propres modes de permission, activés séparément, et n'affiche aucun sélecteur de mode du tout jusqu'à ce qu'un mode autre que celui par défaut soit activé pour votre compte. Voir la [documentation Cowork](https://claude.com/docs/cowork/overview).

240 

241Pour les détails spécifiques au bureau, voir [Choisir un mode de permission](https://code.claude.com/docs/fr/desktop.md#choose-a-permission-mode) dans le guide Desktop.

242 

243**Comme valeur par défaut** : définissez `defaultMode` dans les [paramètres](https://code.claude.com/docs/fr/settings.md#where-settings-live). L'application de bureau lit les mêmes fichiers de paramètres que la CLI et applique le mode de permission aux nouvelles sessions locales.

244 

245Un mode que vous choisissez dans le sélecteur de mode est mémorisé par dossier et prend précédence sur `defaultMode` pour ce dossier. Plan est l'exception : le choisir s'applique à la session actuelle uniquement.

246 

247Pour savoir où placer `defaultMode` dans un fichier de paramètres, voir l'exemple sous [Démarrer dans un mode de permission différent](#start-in-a-different-mode).

248 

249**Web and mobile**

250 200 

251Sur [claude.ai/code](https://claude.ai/code), utilisez la liste déroulante de mode dans la rangée sous la zone de saisie. Dans l'application mobile, appuyez sur le bouton **+** dans la zone de saisie, puis sur **Permission**. Les sessions cloud et les sessions Remote Control proposent des modes de permission différents :201> [tab] VS Code

202>

203> **En cours de session** : cliquez sur l'indicateur de mode en bas de la zone de saisie. Il utilise ces étiquettes pour les modes sur cette page :

204>

205> | Étiquette UI | Mode |

206> | :- | :- |

207> | Manual | `default` |

208> | Edit automatically | `acceptEdits` |

209> | Plan | `plan` |

210> | Auto | `auto` |

211> | Bypass permissions | `bypassPermissions` |

212>

213> **Comme valeur par défaut** : pour épingler le mode de permission dans lequel les conversations démarrent, définissez `claudeCode.initialPermissionMode` dans vos paramètres utilisateur VS Code sur `default`, `manual`, `acceptEdits`, `plan`, ou `bypassPermissions`. Le paramètre n'accepte pas `auto` ; pour démarrer en Auto, laissez-le non défini et choisissez **Auto** à partir de l'indicateur de mode une fois, comme l'élément 2 ci-dessous le décrit. L'extension démarre chaque nouvelle conversation dans le premier de ces éléments qui s'applique :

214>

215> 1. `claudeCode.initialPermissionMode`

216> 2. Le mode que vous avez choisi en dernier à partir de l'indicateur de mode, s'il s'agissait de Manuel, Éditer automatiquement, ou Auto. Choisir Plan ou Bypass permissions s'applique à cette conversation uniquement

217> 3. `permissions.defaultMode` à partir des [paramètres gérés](https://code.claude.com/docs/fr/managed-settings.md) ou `~/.claude/settings.json`

218> 4. La [valeur par défaut intégrée](#which-mode-a-session-starts-in) pour votre plan, fournisseur et paramètres d'organisation

219>

220> L'extension ne lit jamais le `.claude/settings.json` ou `.claude/settings.local.json` d'un projet pour le mode de permission de démarrage. Quand `claudeCode.claudeProcessWrapper` est défini, les éléments 3 et 4 ne s'appliquent pas : ces conversations démarrent en Manuel sauf si l'élément 1 ou l'élément 2 définit un mode de permission.

221>

222> Avant v2.1.283, l'élément 3 s'appliquait uniquement sur les plans Pro, Max, Ultra et Team dans les sessions qui [récupèrent les feature flags](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching).

223>

224> Auto apparaît dans l'indicateur de mode quand le [mode auto est disponible](#eliminate-prompts-with-auto-mode).

225>

226> Bypass permissions nécessite le bouton bascule **Allow dangerously skip permissions** dans les paramètres de l'extension. Sans lui, le mode de permission n'apparaît pas dans l'indicateur, et une valeur `bypassPermissions` de l'élément 1 ou l'élément 3 démarre la conversation en Manuel à la place. Auto de n'importe quel élément démarre également la conversation en Manuel quand le mode auto n'est pas disponible.

227>

228> Voir le [guide VS Code](https://code.claude.com/docs/fr/vs-code.md) pour les détails spécifiques à l'extension.

252 229 

253* **[Sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md)** : Accept edits, Plan et Auto. Accept edits correspond au mode `default` : les sessions cloud pré-approuvent les modifications de fichiers quel que soit le mode, donc la liste déroulante affiche Accept edits au lieu de Manual. Les sessions cloud honorent toujours `defaultMode: "acceptEdits"` à partir des paramètres. Le mode Auto n'apparaît que quand votre organisation le permet et que le modèle sélectionné le supporte. Bypass permissions n'est pas disponible.230> [tab] JetBrains

254* **[Sessions Remote Control](https://code.claude.com/docs/fr/remote-control.md)** sur votre machine locale : Manual, Accept edits, Plan et Auto pour une session que vous avez démarrée vous-même, et vous ne pouvez pas sélectionner Bypass permissions à partir de l'application. Pour utiliser Auto, la session doit satisfaire les [conditions de disponibilité](#eliminate-prompts-with-auto-mode) du mode auto. Pour un fil de projet s'exécutant sur votre ordinateur, voir [Exécuter un fil sur votre propre ordinateur](https://code.claude.com/docs/fr/claude-projects.md#run-a-thread-on-your-own-computer).231>

255 * Sauf pour Bypass permissions, la liste déroulante affiche le mode de permission dans lequel se trouve la session locale, y compris un mode défini à partir du terminal. Elle se met à jour quand le mode de permission change dans l'application ou dans le terminal.232> Le plugin JetBrains exécute Claude Code dans le terminal de l'IDE, donc basculer les modes de permission fonctionne de la même manière que dans la CLI : appuyez sur `Shift+Tab` pour parcourir, ou passez `--permission-mode` lors du lancement.

256 * Les sessions hébergées par l'[application de bureau](https://code.claude.com/docs/fr/desktop.md) ou l'[extension VS Code](https://code.claude.com/docs/fr/vs-code.md) signalent les changements de mode de permission à claude.ai au fur et à mesure qu'ils se produisent, de la même manière que les sessions hébergées dans un terminal.

257 233 

258Pour Remote Control, la machine locale exécutant la session doit être connectée avec votre compte claude.ai ; les clés API ne sont pas supportées. Vous pouvez également définir le mode de permission de démarrage lors du lancement de cette session locale :234> [tab] Desktop

235>

236> **En cours de session** : dans l'onglet Code, utilisez le sélecteur de mode dans la rangée sous la zone de saisie. Tous les modes n'apparaissent pas dans le sélecteur :

237>

238> * **Auto** : apparaît quand le [mode auto est disponible](#eliminate-prompts-with-auto-mode)

239> * **Bypass permissions** : nécessite le bouton bascule **Allow bypass permissions mode** dans les paramètres Desktop sur les plans Pro, Max et Ultra ; sur les plans Team et Enterprise, la politique organisationnelle le contrôle à la place

240>

241> Cowork n'utilise pas ces modes. Il dispose de ses propres modes de permission, activés séparément, et n'affiche aucun sélecteur de mode du tout jusqu'à ce qu'un mode autre que celui par défaut soit activé pour votre compte. Voir la [documentation Cowork](https://claude.com/docs/cowork/overview).

242>

243> Pour les détails spécifiques au bureau, voir [Choisir un mode de permission](https://code.claude.com/docs/fr/desktop.md#choose-a-permission-mode) dans le guide Desktop.

244>

245> **Comme valeur par défaut** : définissez `defaultMode` dans les [paramètres](https://code.claude.com/docs/fr/settings.md#where-settings-live). L'application de bureau lit les mêmes fichiers de paramètres que la CLI et applique le mode de permission aux nouvelles sessions locales.

246>

247> Un mode que vous choisissez dans le sélecteur de mode est mémorisé par dossier et prend précédence sur `defaultMode` pour ce dossier. Plan est l'exception : le choisir s'applique à la session actuelle uniquement.

248>

249> Pour savoir où placer `defaultMode` dans un fichier de paramètres, voir l'exemple sous [Démarrer dans un mode de permission différent](#start-in-a-different-mode).

259 250 

260```bash theme={null}251> [tab] Web and mobile

261claude remote-control --permission-mode acceptEdits252>

262```253> Sur [claude.ai/code](https://claude.ai/code), utilisez la liste déroulante de mode dans la rangée sous la zone de saisie. Dans l'application mobile, appuyez sur le bouton **+** dans la zone de saisie, puis sur **Permission**. Les sessions cloud et les sessions Remote Control proposent des modes de permission différents :

254>

255> * **[Sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md)** : Accept edits, Plan et Auto. Accept edits correspond au mode `default` : les sessions cloud pré-approuvent les modifications de fichiers quel que soit le mode, donc la liste déroulante affiche Accept edits au lieu de Manual. Les sessions cloud honorent toujours `defaultMode: "acceptEdits"` à partir des paramètres. Le mode Auto n'apparaît que quand votre organisation le permet et que le modèle sélectionné le supporte. Bypass permissions n'est pas disponible.

256> * **[Sessions Remote Control](https://code.claude.com/docs/fr/remote-control.md)** sur votre machine locale : Manual, Accept edits, Plan et Auto pour une session que vous avez démarrée vous-même, et vous ne pouvez pas sélectionner Bypass permissions à partir de l'application. Pour utiliser Auto, la session doit satisfaire les [conditions de disponibilité](#eliminate-prompts-with-auto-mode) du mode auto. Pour un fil de projet s'exécutant sur votre ordinateur, voir [Exécuter un fil sur votre propre ordinateur](https://code.claude.com/docs/fr/claude-projects.md#run-a-thread-on-your-own-computer).

257> * Sauf pour Bypass permissions, la liste déroulante affiche le mode de permission dans lequel se trouve la session locale, y compris un mode défini à partir du terminal. Elle se met à jour quand le mode de permission change dans l'application ou dans le terminal.

258> * Les sessions hébergées par l'[application de bureau](https://code.claude.com/docs/fr/desktop.md) ou l'[extension VS Code](https://code.claude.com/docs/fr/vs-code.md) signalent les changements de mode de permission à claude.ai au fur et à mesure qu'ils se produisent, de la même manière que les sessions hébergées dans un terminal.

259>

260> Pour Remote Control, la machine locale exécutant la session doit être connectée avec votre compte claude.ai ; les clés API ne sont pas supportées. Vous pouvez également définir le mode de permission de démarrage lors du lancement de cette session locale :

261>

262> ```bash theme={null}

263> claude remote-control --permission-mode acceptEdits

264> ```

263 265 

264## Auto-approuver les modifications de fichiers avec le mode acceptEdits266## Auto-approuver les modifications de fichiers avec le mode acceptEdits

265 267 


327 329 

328Le mode auto permet à Claude d'exécuter sans demandes de permission répétitives. Un modèle classificateur distinct examine les actions avant leur exécution, bloquant tout ce qui dépasse votre demande, cible une infrastructure non reconnue, ou semble provenir de contenu hostile que Claude a lu. Les [règles ask](https://code.claude.com/docs/fr/permissions.md#manage-permissions) explicites forcent toujours une demande de permission.330Le mode auto permet à Claude d'exécuter sans demandes de permission répétitives. Un modèle classificateur distinct examine les actions avant leur exécution, bloquant tout ce qui dépasse votre demande, cible une infrastructure non reconnue, ou semble provenir de contenu hostile que Claude a lu. Les [règles ask](https://code.claude.com/docs/fr/permissions.md#manage-permissions) explicites forcent toujours une demande de permission.

329 331 

330Avec Claude Code v2.1.283 ou ultérieur, le mode auto est le [mode de permission intégré de démarrage](#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code sur tous les plans et fournisseurs. Sur les versions antérieures, c'est le mode de permission intégré de démarrage uniquement sur les plans Pro, Max et Team.332Avec Claude Code v2.1.283 ou ultérieur, le mode auto est le [mode de permission intégré de démarrage](#which-mode-a-session-starts-in) pour les sessions de terminal interactif et VS Code sur tous les plans et fournisseurs. Sur les versions antérieures, c'est le mode de permission intégré de démarrage uniquement sur les plans Pro, Max, Ultra et Team.

331 333 

332Le classificateur examine également chaque message que Claude envoie à un autre agent avec [`SendMessage`](https://code.claude.com/docs/fr/tools-reference), qu'il s'agisse de texte brut ou d'un message d'[équipe d'agents](https://code.claude.com/docs/fr/agent-teams.md) structuré, avant que Claude Code le livre, à la fois en mode auto et en [mode plan tandis que le classificateur examine les commandes](#analyze-before-you-edit-with-plan-mode) ; l'examen d'envoi nécessite Claude Code v2.1.222 ou ultérieur.334Le classificateur examine également chaque message que Claude envoie à un autre agent avec [`SendMessage`](https://code.claude.com/docs/fr/tools-reference), qu'il s'agisse de texte brut ou d'un message d'[équipe d'agents](https://code.claude.com/docs/fr/agent-teams.md) structuré, avant que Claude Code le livre, à la fois en mode auto et en [mode plan tandis que le classificateur examine les commandes](#analyze-before-you-edit-with-plan-mode) ; l'examen d'envoi nécessite Claude Code v2.1.222 ou ultérieur.

333 335 


367 369 

368En mode auto, Claude Code peut demander au serveur de vérifier les actions que [l'ordre de décision](#how-the-classifier-evaluates-actions) envoie pour examen, dans le cadre des requêtes de modèle de la session, à la place d'envoyer ses propres requêtes de classificateur. Ces sessions le demandent :370En mode auto, Claude Code peut demander au serveur de vérifier les actions que [l'ordre de décision](#how-the-classifier-evaluates-actions) envoie pour examen, dans le cadre des requêtes de modèle de la session, à la place d'envoyer ses propres requêtes de classificateur. Ces sessions le demandent :

369 371 

370* **Une connexion directe à l'API Anthropic** : dans les sessions de terminal interactif et dans les sessions `-p`, Agent SDK, [extension VS Code](https://code.claude.com/docs/fr/vs-code.md) et [application de bureau](https://code.claude.com/docs/fr/desktop.md), quel que soit votre plan ou type de compte, au fur et à mesure qu'Anthropic le déploie. Dans les sessions de terminal interactif, cela nécessite Claude Code v2.1.271 ou ultérieur sur les plans Pro, Max et Team, et v2.1.278 ou ultérieur sur les plans Enterprise et les comptes Claude API. Dans les sessions `-p`, Agent SDK, extension VS Code et application de bureau, cela nécessite Claude Code v2.1.281 ou ultérieur. À partir de v2.1.282, une session qui [ne récupère pas les feature flags](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching), par exemple parce que vous avez désactivé la télémétrie, demande au serveur par défaut dans n'importe quel type de session.372* **Une connexion directe à l'API Anthropic** : dans les sessions de terminal interactif et dans les sessions `-p`, Agent SDK, [extension VS Code](https://code.claude.com/docs/fr/vs-code.md) et [application de bureau](https://code.claude.com/docs/fr/desktop.md), quel que soit votre plan ou type de compte, au fur et à mesure qu'Anthropic le déploie. Vérifiez votre type de session par rapport à ces versions minimales de Claude Code :

373 * Dans les sessions de terminal interactif, interroger le serveur nécessite Claude Code v2.1.271 ou ultérieur sur les plans Pro, Max, Ultra et Team. Sur les plans Enterprise et les comptes Claude API, ces sessions nécessitent v2.1.278 ou ultérieur.

374 * Dans les sessions `-p`, Agent SDK, extension VS Code et application de bureau, interroger le serveur nécessite Claude Code v2.1.281 ou ultérieur

375 * À partir de v2.1.282, une session qui [ne récupère pas les feature flags](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching), par exemple parce que vous avez désactivé la télémétrie, interroge le serveur par défaut dans n'importe quel type de session

371* **Un fournisseur cloud, une passerelle LLM ou un proxy** : sur [Claude Platform sur AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md), Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry, et chaque fois que vous pointez `ANTHROPIC_BASE_URL` vers une [passerelle LLM ou un proxy](https://code.claude.com/docs/fr/llm-gateway), quel que soit votre plan. Demander par défaut nécessite Claude Code v2.1.278 ou ultérieur.376* **Un fournisseur cloud, une passerelle LLM ou un proxy** : sur [Claude Platform sur AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md), Amazon Bedrock, Google Cloud's Agent Platform et Microsoft Foundry, et chaque fois que vous pointez `ANTHROPIC_BASE_URL` vers une [passerelle LLM ou un proxy](https://code.claude.com/docs/fr/llm-gateway), quel que soit votre plan. Demander par défaut nécessite Claude Code v2.1.278 ou ultérieur.

372* **Une session de [passerelle d'applications Claude](https://code.claude.com/docs/fr/claude-apps-gateway) connectée** : nécessite Claude Code v2.1.280 ou ultérieur377* **Une session de [passerelle d'applications Claude](https://code.claude.com/docs/fr/claude-apps-gateway) connectée** : nécessite Claude Code v2.1.280 ou ultérieur

373* **Une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) dans un environnement hébergé par Anthropic** : quel que soit votre plan, lorsque vous la démarrez depuis le web, l'application mobile ou l'application de bureau avec **Cloud** sélectionné. Les sessions démarrées par une [tâche planifiée cloud](https://code.claude.com/docs/fr/routines.md) interrogent le serveur au fur et à mesure qu'Anthropic le déploie.378* **Une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) dans un environnement hébergé par Anthropic** : quel que soit votre plan, lorsque vous la démarrez depuis le web, l'application mobile ou l'application de bureau avec **Cloud** sélectionné. Les sessions démarrées par une [tâche planifiée cloud](https://code.claude.com/docs/fr/routines.md) interrogent le serveur au fur et à mesure qu'Anthropic le déploie.


566 571 

567Les sections suivantes couvrent l'ordre dans lequel Claude Code évalue une action, comment le classificateur examine le travail des sous-agents, et ce que les appels au classificateur ajoutent en coût et en latence.572Les sections suivantes couvrent l'ordre dans lequel Claude Code évalue une action, comment le classificateur examine le travail des sous-agents, et ce que les appels au classificateur ajoutent en coût et en latence.

568 573 

569> **Comment le classificateur évalue les actions**574> [accordion] Comment le classificateur évalue les actions

570>575>

571> Chaque action passe par un ordre de décision fixe. La première étape correspondante l'emporte :576> Chaque action passe par un ordre de décision fixe. La première étape correspondante l'emporte :

572>577>


608>613>

609> Une sonde côté serveur distincte analyse les résultats d'outils entrants et signale le contenu suspect avant que Claude ne le lise. Pour plus d'informations sur la façon dont ces couches fonctionnent ensemble, consultez l'[annonce du mode auto](https://claude.com/blog/auto-mode) et l'[analyse technique approfondie](https://www.anthropic.com/engineering/claude-code-auto-mode).614> Une sonde côté serveur distincte analyse les résultats d'outils entrants et signale le contenu suspect avant que Claude ne le lise. Pour plus d'informations sur la façon dont ces couches fonctionnent ensemble, consultez l'[annonce du mode auto](https://claude.com/blog/auto-mode) et l'[analyse technique approfondie](https://www.anthropic.com/engineering/claude-code-auto-mode).

610 615 

611> **Comment le mode auto gère les sous-agents**616> [accordion] Comment le mode auto gère les sous-agents

612>617>

613> Le classificateur vérifie le travail des [sous-agents](https://code.claude.com/docs/fr/sub-agents.md) à trois moments :618> Le classificateur vérifie le travail des [sous-agents](https://code.claude.com/docs/fr/sub-agents.md) à trois moments :

614>619>


616> 2. Pendant que le sous-agent s'exécute, chacune de ses actions passe par le même [ordre de décision](#how-the-classifier-evaluates-actions) que dans la session parente, avec les mêmes règles de blocage et d'autorisation. Tout `permissionMode` dans le frontmatter du sous-agent est ignoré.621> 2. Pendant que le sous-agent s'exécute, chacune de ses actions passe par le même [ordre de décision](#how-the-classifier-evaluates-actions) que dans la session parente, avec les mêmes règles de blocage et d'autorisation. Tout `permissionMode` dans le frontmatter du sous-agent est ignoré.

617> 3. Quand le sous-agent se termine, le classificateur examine son travail et son rapport final avant que le parent ne lise le rapport. Quand le classificateur signale le travail ou le rapport du sous-agent, ou qu'une vérification de sécurité API distincte refuse l'examen, le rapport est tout de même livré, précédé d'un avertissement de sécurité. Quand le classificateur n'est pas disponible pour l'examen, le rapport arrive avec une note invitant à vérifier le travail du sous-agent avant d'agir en conséquence.622> 3. Quand le sous-agent se termine, le classificateur examine son travail et son rapport final avant que le parent ne lise le rapport. Quand le classificateur signale le travail ou le rapport du sous-agent, ou qu'une vérification de sécurité API distincte refuse l'examen, le rapport est tout de même livré, précédé d'un avertissement de sécurité. Quand le classificateur n'est pas disponible pour l'examen, le rapport arrive avec une note invitant à vérifier le travail du sous-agent avant d'agir en conséquence.

618 623 

619> **Coût et latence**624> [accordion] Coût et latence

620>625>

621> Les requêtes de classificateur de Claude Code peuvent s'exécuter sur un modèle autre que votre sélection `/model`. Voir [sur quel modèle elles s'exécutent](#default-classifier-model).626> Les requêtes de classificateur de Claude Code peuvent s'exécuter sur un modèle autre que votre sélection `/model`. Voir [sur quel modèle elles s'exécutent](#default-classifier-model).

622>627>


964 969 

965Pour exécuter sans invite, en mode `bypassPermissions`, les commandes Bash `rm` et `rmdir` qui ciblent des [chemins critiques](#critical-paths), démarrez Claude Code avec [`CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1`](https://code.claude.com/docs/fr/env-vars#variables) dans son environnement. Cela nécessite Claude Code v2.1.311 ou ultérieur. Claude Code lit la variable uniquement depuis l'environnement de lancement et [l'ignore dans le bloc `env` d'un fichier de paramètres](https://code.claude.com/docs/fr/settings-reference#variables-claude-code-ignores-in-env). Par exemple, définissez-la dans [votre shell](https://code.claude.com/docs/fr/env-vars.md#set-variables-in-your-shell) et démarrez `claude` depuis celui-ci :970Pour exécuter sans invite, en mode `bypassPermissions`, les commandes Bash `rm` et `rmdir` qui ciblent des [chemins critiques](#critical-paths), démarrez Claude Code avec [`CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1`](https://code.claude.com/docs/fr/env-vars#variables) dans son environnement. Cela nécessite Claude Code v2.1.311 ou ultérieur. Claude Code lit la variable uniquement depuis l'environnement de lancement et [l'ignore dans le bloc `env` d'un fichier de paramètres](https://code.claude.com/docs/fr/settings-reference#variables-claude-code-ignores-in-env). Par exemple, définissez-la dans [votre shell](https://code.claude.com/docs/fr/env-vars.md#set-variables-in-your-shell) et démarrez `claude` depuis celui-ci :

966 971 

967**macOS, Linux, WSL**972> [tab] macOS, Linux, WSL

968 973>

969```bash theme={null}974> ```bash theme={null}

970export CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1975> export CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1

971claude --permission-mode bypassPermissions976> claude --permission-mode bypassPermissions

972```977> ```

973 

974**Windows PowerShell**

975 

976```powershell theme={null}

977$env:CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS = "1"

978claude --permission-mode bypassPermissions

979```

980 978 

981**Windows CMD**979> [tab] Windows PowerShell

980>

981> ```powershell theme={null}

982> $env:CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS = "1"

983> claude --permission-mode bypassPermissions

984> ```

982 985 

983```batch theme={null}986> [tab] Windows CMD

984set CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1987>

985claude --permission-mode bypassPermissions988> ```batch theme={null}

986```989> set CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1

990> claude --permission-mode bypassPermissions

991> ```

987 992 

988> [!WARNING]993> [!WARNING]

989>994>

platforms.md +6 −6

Details

14 14 

15| Plateforme | Idéale pour | Ce que vous obtenez |15| Plateforme | Idéale pour | Ce que vous obtenez |

16| :- | :- | :- |16| :- | :- | :- |

17| [CLI](https://code.claude.com/docs/fr/quickstart.md) | Flux de travail en terminal, scripts, serveurs distants | Ensemble complet de fonctionnalités, [Agent SDK](https://code.claude.com/docs/fr/headless.md), [utilisation de l'ordinateur](https://code.claude.com/docs/fr/computer-use.md) sur macOS (Pro et Max), fournisseurs tiers |17| [CLI](https://code.claude.com/docs/fr/quickstart.md) | Workflows en terminal, scripts, serveurs distants | Ensemble complet de fonctionnalités, [Agent SDK](https://code.claude.com/docs/fr/headless.md), [utilisation de l'ordinateur](https://code.claude.com/docs/fr/computer-use.md) sur macOS (Pro, Max et Ultra), fournisseurs tiers |

18| [Desktop](https://code.claude.com/docs/fr/desktop.md) | Examen visuel, sessions parallèles, configuration gérée | Visionneuse de différences, aperçu de l'application, [utilisation de l'ordinateur](https://code.claude.com/docs/fr/desktop.md#let-claude-use-your-computer) et [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) sur Pro et Max |18| [Desktop](https://code.claude.com/docs/fr/desktop.md) | Examen visuel, sessions parallèles, configuration gérée | Visionneuse de diffs, aperçu de l'application, [utilisation de l'ordinateur](https://code.claude.com/docs/fr/desktop.md#let-claude-use-your-computer) et [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) sur Pro, Max et Ultra |

19| [VS Code](https://code.claude.com/docs/fr/vs-code.md) | Travailler dans VS Code sans basculer vers un terminal | Différences intégrées, terminal intégré, contexte de fichier |19| [VS Code](https://code.claude.com/docs/fr/vs-code.md) | Travailler dans VS Code sans basculer vers un terminal | Différences intégrées, terminal intégré, contexte de fichier |

20| [JetBrains](https://code.claude.com/docs/fr/jetbrains.md) | Travailler dans IntelliJ, PyCharm, WebStorm ou d'autres IDE JetBrains | Visionneuse de différences, partage de sélection, session de terminal |20| [JetBrains](https://code.claude.com/docs/fr/jetbrains.md) | Travailler dans IntelliJ, PyCharm, WebStorm ou d'autres IDE JetBrains | Visionneuse de différences, partage de sélection, session de terminal |

21| [Web](https://code.claude.com/docs/fr/claude-code-on-the-web.md) | Tâches longues qui ne nécessitent pas beaucoup de direction, ou travail qui devrait continuer quand vous êtes hors ligne | Cloud, géré par Anthropic par défaut ; continue après votre déconnexion |21| [Web](https://code.claude.com/docs/fr/claude-code-on-the-web.md) | Tâches longues qui ne nécessitent pas beaucoup de direction, ou travail qui devrait continuer quand vous êtes hors ligne | Cloud, géré par Anthropic par défaut ; continue après votre déconnexion |

22| [Mobile](https://code.claude.com/docs/fr/mobile.md) | Démarrer et surveiller les tâches loin de votre ordinateur | Sessions cloud depuis l'application Claude pour iOS et Android, [Remote Control](https://code.claude.com/docs/fr/remote-control.md) pour les sessions locales, [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) vers Desktop sur Pro et Max |22| [Mobile](https://code.claude.com/docs/fr/mobile.md) | Démarrer et surveiller les tâches loin de votre ordinateur | Sessions cloud depuis l'application Claude pour iOS et Android, [Remote Control](https://code.claude.com/docs/fr/remote-control.md) pour les sessions locales, [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) vers Desktop sur Pro, Max et Ultra |

23 23 

24Le CLI est la surface la plus complète pour le travail natif en terminal : les scripts et l'Agent SDK sont exclusifs au CLI. Les fournisseurs tiers fonctionnent également dans [VS Code](https://code.claude.com/docs/fr/vs-code.md#use-third-party-providers) et dans [JetBrains](https://code.claude.com/docs/fr/feature-availability.md#features-available-on-every-provider), qui exécute le CLI dans le terminal de votre IDE. Les déploiements [Desktop](https://code.claude.com/docs/fr/desktop.md) d'entreprise prennent en charge Google Cloud's Agent Platform, et Desktop prend en charge les [fournisseurs de passerelle](https://code.claude.com/docs/fr/llm-gateway-connect.md#desktop-app) ; pour Amazon Bedrock ou Microsoft Foundry, utilisez le CLI ou une extension IDE, ou [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview), qui exécute l'onglet Code sur ces fournisseurs. Desktop et les extensions IDE échangent certaines fonctionnalités exclusives au CLI contre un examen visuel et une intégration plus étroite de l'éditeur. Le web s'exécute dans le cloud, donc les tâches continuent après votre déconnexion. Mobile est un client léger dans ces mêmes sessions cloud ou dans une session locale via Remote Control, et peut envoyer des tâches à Desktop avec Dispatch.24Le CLI est la surface la plus complète pour le travail natif en terminal : les scripts et l'Agent SDK sont exclusifs au CLI. Les fournisseurs tiers fonctionnent également dans [VS Code](https://code.claude.com/docs/fr/vs-code.md#use-third-party-providers) et dans [JetBrains](https://code.claude.com/docs/fr/feature-availability.md#features-available-on-every-provider), qui exécute le CLI dans le terminal de votre IDE. Les déploiements [Desktop](https://code.claude.com/docs/fr/desktop.md) d'entreprise prennent en charge Google Cloud's Agent Platform, et Desktop prend en charge les [fournisseurs de passerelle](https://code.claude.com/docs/fr/llm-gateway-connect.md#desktop-app) ; pour Amazon Bedrock ou Microsoft Foundry, utilisez le CLI ou une extension IDE, ou [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview), qui exécute l'onglet Code sur ces fournisseurs. Desktop et les extensions IDE échangent certaines fonctionnalités exclusives au CLI contre un examen visuel et une intégration plus étroite de l'éditeur. Le web s'exécute dans le cloud, donc les tâches continuent après votre déconnexion. Mobile est un client léger dans ces mêmes sessions cloud ou dans une session locale via Remote Control, et peut envoyer des tâches à Desktop avec Dispatch.

25 25 


35| [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) | Exécute Claude dans votre pipeline CI | Examens automatisés des PR, triage des problèmes, maintenance programmée |35| [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) | Exécute Claude dans votre pipeline CI | Examens automatisés des PR, triage des problèmes, maintenance programmée |

36| [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md) | Identique à GitHub Actions pour GitLab | Automatisation pilotée par CI sur GitLab |36| [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md) | Identique à GitHub Actions pour GitLab | Automatisation pilotée par CI sur GitLab |

37| [Code Review](https://code.claude.com/docs/fr/code-review.md) | Examine automatiquement chaque PR | Détecter les bogues avant l'examen humain |37| [Code Review](https://code.claude.com/docs/fr/code-review.md) | Examine automatiquement chaque PR | Détecter les bogues avant l'examen humain |

38| [Slack](https://code.claude.com/docs/fr/slack.md) | Répond aux mentions `@Claude` dans vos canaux, sous votre propre compte | Transformer les rapports de bogues en pull requests à partir du chat d'équipe sur les plans Pro et Max |38| [Slack](https://code.claude.com/docs/fr/slack.md) | Répond aux mentions `@Claude` dans vos canaux, sous votre propre compte | Transformer les rapports de bogues en pull requests à partir du chat d'équipe sur les plans Pro, Max et Ultra |

39| [Claude Tag](https://claude.com/docs/claude-tag) | Exécute `@Claude` en tant qu'identité partagée de votre organisation avec accès configuré par l'administrateur | Accès d'équipe partagé sur les plans Team et Enterprise, au lieu de sessions Slack par utilisateur |39| [Claude Tag](https://claude.com/docs/claude-tag) | Exécute `@Claude` en tant qu'identité partagée de votre organisation avec accès configuré par l'administrateur | Accès d'équipe partagé sur les plans Team et Enterprise, au lieu de sessions Slack par utilisateur |

40 40 

41Pour les intégrations non listées ici, les [serveurs MCP](https://code.claude.com/docs/fr/mcp.md) et les [connecteurs](https://code.claude.com/docs/fr/desktop.md#connect-external-tools) vous permettent de connecter presque n'importe quoi : Linear, Notion, Google Drive ou vos propres API internes.41Pour les intégrations non listées ici, les [serveurs MCP](https://code.claude.com/docs/fr/mcp.md) et les [connecteurs](https://code.claude.com/docs/fr/desktop.md#connect-external-tools) vous permettent de connecter presque n'importe quoi : Linear, Notion, Google Drive ou vos propres API internes.


49| [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) | Envoyer une tâche depuis l'application mobile Claude | Votre machine (Desktop) | [Associer l'application mobile à Desktop](https://support.claude.com/en/articles/13947068) | Déléguer du travail quand vous êtes absent, configuration minimale |49| [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) | Envoyer une tâche depuis l'application mobile Claude | Votre machine (Desktop) | [Associer l'application mobile à Desktop](https://support.claude.com/en/articles/13947068) | Déléguer du travail quand vous êtes absent, configuration minimale |

50| [Remote Control](https://code.claude.com/docs/fr/remote-control.md) | Piloter une session en cours depuis [claude.ai/code](https://claude.ai/code) ou l'application mobile Claude | Votre machine (CLI, Desktop ou VS Code) | Exécuter [`claude remote-control` ou `/remote-control`](https://code.claude.com/docs/fr/remote-control#start-a-remote-control-session) | Diriger le travail en cours depuis un autre appareil |50| [Remote Control](https://code.claude.com/docs/fr/remote-control.md) | Piloter une session en cours depuis [claude.ai/code](https://claude.ai/code) ou l'application mobile Claude | Votre machine (CLI, Desktop ou VS Code) | Exécuter [`claude remote-control` ou `/remote-control`](https://code.claude.com/docs/fr/remote-control#start-a-remote-control-session) | Diriger le travail en cours depuis un autre appareil |

51| [Channels](https://code.claude.com/docs/fr/channels.md) | Envoyer des événements depuis une application de chat comme Telegram ou Discord, ou votre propre serveur | Votre machine (CLI) | [Installer un plugin de canal](https://code.claude.com/docs/fr/channels.md#quickstart) ou [créer le vôtre](https://code.claude.com/docs/fr/channels-reference.md) | Réagir à des événements externes comme les échecs CI ou les messages de chat |51| [Channels](https://code.claude.com/docs/fr/channels.md) | Envoyer des événements depuis une application de chat comme Telegram ou Discord, ou votre propre serveur | Votre machine (CLI) | [Installer un plugin de canal](https://code.claude.com/docs/fr/channels.md#quickstart) ou [créer le vôtre](https://code.claude.com/docs/fr/channels-reference.md) | Réagir à des événements externes comme les échecs CI ou les messages de chat |

52| [Slack](https://code.claude.com/docs/fr/slack.md) | Mentionner `@Claude` dans un canal d'équipe | Cloud Anthropic | [Installer l'application Slack](https://code.claude.com/docs/fr/slack.md#setting-up-claude-code-in-slack) avec [Claude Code sur le web](https://code.claude.com/docs/fr/claude-code-on-the-web.md) activé, sur les plans Pro et Max | PRs et révisions depuis le chat d'équipe |52| [Slack](https://code.claude.com/docs/fr/slack.md) | Mentionner `@Claude` dans un canal d'équipe | Cloud Anthropic | [Installer l'application Slack](https://code.claude.com/docs/fr/slack.md#setting-up-claude-code-in-slack) avec [Claude Code sur le web](https://code.claude.com/docs/fr/claude-code-on-the-web.md) activé, sur les plans Pro, Max et Ultra | PRs et révisions depuis le chat d'équipe |

53| [Environnements auto-hébergés](https://code.claude.com/docs/fr/self-hosted-environments) | Démarrer une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) et choisir l'environnement de votre organisation | Infrastructure de votre organisation | [Déployer des runners](https://code.claude.com/docs/fr/self-hosted-environments-quickstart.md), sur les plans Team et Enterprise | Sessions cloud qui doivent s'exécuter dans votre réseau |53| [Environnements auto-hébergés](https://code.claude.com/docs/fr/self-hosted-environments) | Démarrer une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) et choisir l'environnement de votre organisation | Infrastructure de votre organisation | [Déployer des runners](https://code.claude.com/docs/fr/self-hosted-environments-quickstart.md), sur les plans Team et Enterprise | Sessions cloud qui doivent s'exécuter dans votre réseau |

54| [Tâches planifiées](https://code.claude.com/docs/fr/scheduled-tasks.md) | Définir un calendrier | [CLI](https://code.claude.com/docs/fr/scheduled-tasks.md), [Desktop](https://code.claude.com/docs/fr/desktop-scheduled-tasks.md), ou [cloud](https://code.claude.com/docs/fr/routines.md) | Choisir une fréquence | Automatisation récurrente comme les révisions quotidiennes |54| [Tâches planifiées](https://code.claude.com/docs/fr/scheduled-tasks.md) | Définir un calendrier | [CLI](https://code.claude.com/docs/fr/scheduled-tasks.md), [Desktop](https://code.claude.com/docs/fr/desktop-scheduled-tasks.md), ou [cloud](https://code.claude.com/docs/fr/routines.md) | Choisir une fréquence | Automatisation récurrente comme les révisions quotidiennes |

55 55 


74* [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) : exécutez Claude dans votre pipeline CI74* [GitHub Actions](https://code.claude.com/docs/fr/github-actions.md) : exécutez Claude dans votre pipeline CI

75* [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md) : la même chose pour GitLab75* [GitLab CI/CD](https://code.claude.com/docs/fr/gitlab-ci-cd.md) : la même chose pour GitLab

76* [Code Review](https://code.claude.com/docs/fr/code-review.md) : examen automatique à chaque demande de tirage76* [Code Review](https://code.claude.com/docs/fr/code-review.md) : examen automatique à chaque demande de tirage

77* [Slack](https://code.claude.com/docs/fr/slack.md) : envoyez des tâches à partir du chat d'équipe et récupérez des PR en retour, sur les plans Pro et Max77* [Slack](https://code.claude.com/docs/fr/slack.md) : envoyez des tâches à partir du chat d'équipe et récupérez des PR en retour, sur les plans Pro, Max et Ultra

78* [Claude Tag](https://claude.com/docs/claude-tag) : exécutez `@Claude` comme identité partagée de votre organisation sur les plans Team et Enterprise78* [Claude Tag](https://claude.com/docs/claude-tag) : exécutez `@Claude` comme identité partagée de votre organisation sur les plans Team et Enterprise

79 79 

80### Accès à distance80### Accès à distance

plugins/install.md +96 −96

Details

27 27 

28Choisissez l'onglet correspondant à l'endroit où vous exécutez Claude Code.28Choisissez l'onglet correspondant à l'endroit où vous exécutez Claude Code.

29 29 

30**Terminal**30> [tab] Terminal

31 31>

32Lancez Claude Code avec `claude` dans votre projet, puis :32> Lancez Claude Code avec `claude` dans votre projet, puis :

33 33>

34**1. Ouvrir les détails du plugin avec la commande d'installation**34> **1. Ouvrir les détails du plugin avec la commande d'installation**

35 35>

36Exécutez `/plugin install` avec le nom du plugin et sa marketplace. Dans une session, cette commande n'installe pas immédiatement : elle ouvre le panneau `/plugin` sur les détails de ce plugin afin que vous puissiez l'examiner et choisir d'abord une portée.36> Exécutez `/plugin install` avec le nom du plugin et sa marketplace. Dans une session, cette commande n'installe pas immédiatement : elle ouvre le panneau `/plugin` sur les détails de ce plugin afin que vous puissiez l'examiner et choisir d'abord une portée.

37 37>

38```text theme={null}38> ```text theme={null}

39/plugin install commit-commands@claude-plugins-official39> /plugin install commit-commands@claude-plugins-official

40```40> ```

41 41>

42Pour parcourir plutôt les plugins, exécutez `/plugin` sans nom de plugin : le panneau s'ouvre sur l'onglet **Discover**, qui liste les plugins de vos marketplaces. Vous pouvez taper pour rechercher, puis appuyer sur **Enter** sur un plugin pour ouvrir ses détails.42> Pour parcourir plutôt les plugins, exécutez `/plugin` sans nom de plugin : le panneau s'ouvre sur l'onglet **Discover**, qui liste les plugins de vos marketplaces. Vous pouvez taper pour rechercher, puis appuyer sur **Enter** sur un plugin pour ouvrir ses détails.

43 43>

44**2. Examiner ce que le plugin ajoute**44> **2. Examiner ce que le plugin ajoute**

45 45>

46Le panneau de détails affiche la description du plugin. Il peut également afficher :46> Le panneau de détails affiche la description du plugin. Il peut également afficher :

47 47>

48* **Will install** : les commandes, agents, skills, hooks et serveurs MCP et LSP que le plugin ajoute.48> * **Will install** : les commandes, agents, skills, hooks et serveurs MCP et LSP que le plugin ajoute.

49* **Last updated** : affiché pour un plugin de la marketplace officielle d'Anthropic.49> * **Last updated** : affiché pour un plugin de la marketplace officielle d'Anthropic.

50* **Context cost** : pour un plugin de la marketplace officielle d'Anthropic, deux estimations en tokens. **Every turn** correspond à ce que le plugin ajoute à chaque message que vous envoyez, et **When invoked** à ce que ses skills et agents ajoutent une fois que Claude les charge. Les estimations apparaissent lorsque vous ouvrez le plugin en nommant sa marketplace, comme le fait la commande de l'étape 1, ou depuis l'onglet **Marketplaces**. Le panneau de détails auquel vous accédez depuis la liste **Discover** ne les affiche pas.50> * **Context cost** : pour un plugin de la marketplace officielle d'Anthropic, deux estimations en tokens. **Every turn** correspond à ce que le plugin ajoute à chaque message que vous envoyez, et **When invoked** à ce que ses skills et agents ajoutent une fois que Claude les charge. Les estimations apparaissent lorsque vous ouvrez le plugin en nommant sa marketplace, comme le fait la commande de l'étape 1, ou depuis l'onglet **Marketplaces**. Le panneau de détails auquel vous accédez depuis la liste **Discover** ne les affiche pas.

51 51>

52Les plugins provenant d'une marketplace locale ou personnalisée peuvent afficher `Components will be discovered at installation` à la place.52> Les plugins provenant d'une marketplace locale ou personnalisée peuvent afficher `Components will be discovered at installation` à la place.

53 53>

54Un plugin peut exécuter des hooks et des serveurs MCP, lisez donc le panneau avant d'installer. Consultez [Sécurité et confiance des plugins](https://code.claude.com/docs/fr/plugins/security.md).54> Un plugin peut exécuter des hooks et des serveurs MCP, lisez donc le panneau avant d'installer. Consultez [Sécurité et confiance des plugins](https://code.claude.com/docs/fr/plugins/security.md).

55 55>

56**3. Choisir une portée**56> **3. Choisir une portée**

57 57>

58Sélectionnez l'une des trois options d'installation :58> Sélectionnez l'une des trois options d'installation :

59 59>

60* **Install for you (user scope)** : vous disposez du plugin dans tous les projets de cette machine60> * **Install for you (user scope)** : vous disposez du plugin dans tous les projets de cette machine

61* **Install for all collaborators on this repository (project scope)** : il est activé pour toutes les personnes qui travaillent dans ce dépôt61> * **Install for all collaborators on this repository (project scope)** : il est activé pour toutes les personnes qui travaillent dans ce dépôt

62* **Install for you, in this repo only (local scope)** : vous en disposez uniquement dans ce dépôt62> * **Install for you, in this repo only (local scope)** : vous en disposez uniquement dans ce dépôt

63 63>

64[Choisir une portée d'installation](#choose-an-install-scope) indique dans quel fichier de paramètres chacune écrit et laquelle s'applique lorsque le même plugin est défini à plusieurs portées.64> [Choisir une portée d'installation](#choose-an-install-scope) indique dans quel fichier de paramètres chacune écrit et laquelle s'applique lorsque le même plugin est défini à plusieurs portées.

65 65>

66Après avoir sélectionné une portée, Claude Code installe le plugin ainsi que toutes les dépendances qu'il déclare, puis affiche un résumé de l'installation.66> Après avoir sélectionné une portée, Claude Code installe le plugin ainsi que toutes les dépendances qu'il déclare, puis affiche un résumé de l'installation.

67 67>

68**4. Lire le résumé de l'installation**68> **4. Lire le résumé de l'installation**

69 69>

70La dernière phrase du résumé vous indique si le plugin est déjà utilisable dans cette session :70> La dernière phrase du résumé vous indique si le plugin est déjà utilisable dans cette session :

71 71>

72* **Actif immédiatement** : `Plugin is now active.` Aucun rechargement n'est nécessaire.72> * **Actif immédiatement** : `Plugin is now active.` Aucun rechargement n'est nécessaire.

73* **Actif, mais un serveur nécessite une configuration** : `Plugin is now active.` est suivi de `Its bundled MCP server needs configuration before it can start`. Le [serveur MCP intégré](https://code.claude.com/docs/fr/plugins/components.md#include-a-packaged-mcpb-server) du plugin ne peut pas démarrer tant que vous n'avez pas défini ses options. Sélectionnez le plugin dans l'onglet **Installed** de `/plugin` et choisissez **Configure** pour définir les options du serveur.73> * **Actif, mais un serveur nécessite une configuration** : `Plugin is now active.` est suivi de `Its bundled MCP server needs configuration before it can start`. Le [serveur MCP intégré](https://code.claude.com/docs/fr/plugins/components.md#include-a-packaged-mcpb-server) du plugin ne peut pas démarrer tant que vous n'avez pas défini ses options. Sélectionnez le plugin dans l'onglet **Installed** de `/plugin` et choisissez **Configure** pour définir les options du serveur.

74* **Rechargement nécessaire** : `Run /reload-plugins to apply.` Le panneau se ferme et Claude Code effectue ce rechargement pour vous. Si le rechargement risque d'[invalider le cache du prompt](https://code.claude.com/docs/fr/prompt-caching.md#enabling-or-disabling-a-plugin), il affiche un avertissement et laisse plutôt le plugin en attente. Exécutez `/reload-plugins --force` pour l'activer malgré tout, ce qui coûte une requête non mise en cache.74> * **Rechargement nécessaire** : `Run /reload-plugins to apply.` Le panneau se ferme et Claude Code effectue ce rechargement pour vous. Si le rechargement risque d'[invalider le cache du prompt](https://code.claude.com/docs/fr/prompt-caching.md#enabling-or-disabling-a-plugin), il affiche un avertissement et laisse plutôt le plugin en attente. Exécutez `/reload-plugins --force` pour l'activer malgré tout, ce qui coûte une requête non mise en cache.

75* **Échec du chargement** : `The plugin couldn't be loaded`. Ouvrez l'onglet **Errors** de `/plugin` pour en connaître la raison, puis consultez [Après l'installation : le plugin ne fonctionne pas](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-installed-but-not-working).75> * **Échec du chargement** : `The plugin couldn't be loaded`. Ouvrez l'onglet **Errors** de `/plugin` pour en connaître la raison, puis consultez [Après l'installation : le plugin ne fonctionne pas](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-installed-but-not-working).

76 76>

77**5. Vérifier que le plugin fonctionne**77> **5. Vérifier que le plugin fonctionne**

78 78>

79Tapez `/` et recherchez les skills du plugin sous son nom, sous la forme `/<plugin>:<skill>`. Pour `commit-commands`, `/commit-commands:commit` apparaît. Deux autres endroits listent également le plugin :79> Tapez `/` et recherchez les skills du plugin sous son nom, sous la forme `/<plugin>:<skill>`. Pour `commit-commands`, `/commit-commands:commit` apparaît. Deux autres endroits listent également le plugin :

80 80>

81* Ouvrez l'onglet **Installed** de `/plugin`, qui liste le plugin avec sa portée.81> * Ouvrez l'onglet **Installed** de `/plugin`, qui liste le plugin avec sa portée.

82* Dans votre shell, exécutez `claude plugin list`, qui affiche la même liste avec les lignes `Version`, `Scope` et `Status`.82> * Dans votre shell, exécutez `claude plugin list`, qui affiche la même liste avec les lignes `Version`, `Scope` et `Status`.

83 83>

84Si `/commit-commands:commit` n'apparaît pas, consultez [Après l'installation : le plugin ne fonctionne pas](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-installed-but-not-working).84> Si `/commit-commands:commit` n'apparaît pas, consultez [Après l'installation : le plugin ne fonctionne pas](https://code.claude.com/docs/fr/plugins/troubleshooting.md#plugin-installed-but-not-working).

85 85>

86L'installation depuis toute autre marketplace nécessite d'abord une étape supplémentaire : [ajouter la marketplace](#add-a-marketplace). Claude Code ajoute la marketplace officielle d'Anthropic pour vous la première fois que vous lancez une session interactive dans le terminal, c'est pourquoi l'exemple ignore cette étape. Si vous avez trouvé un plugin sur [claude.com/marketplace](https://claude.com/marketplace), son bouton **Claude Code** copie la commande d'installation sous sa [forme shell](#install-from-your-shell), `claude plugin install <name>@claude-plugins-official`.86> L'installation depuis toute autre marketplace nécessite d'abord une étape supplémentaire : [ajouter la marketplace](#add-a-marketplace). Claude Code ajoute la marketplace officielle d'Anthropic pour vous la première fois que vous lancez une session interactive dans le terminal, c'est pourquoi l'exemple ignore cette étape. Si vous avez trouvé un plugin sur [claude.com/marketplace](https://claude.com/marketplace), son bouton **Claude Code** copie la commande d'installation sous sa [forme shell](#install-from-your-shell), `claude plugin install <name>@claude-plugins-official`.

87 

88**Application de bureau**

89 

90Dans une session locale ou SSH de l'onglet **Code** de l'application de bureau :

91 

92**1. Ouvrir le navigateur de plugins**

93 

94Cliquez sur le bouton **+** à côté de la zone de prompt et sélectionnez **Add plugins**. Si le menu **+** affiche **Plugins** au lieu de **Add plugins**, sélectionnez **Plugins**, puis **Browse plugins**. Le navigateur de plugins s'ouvre avec les plugins de vos marketplaces.

95 

96**2. Sélectionner le plugin**

97 

98Trouvez `commit-commands` et sélectionnez-le.

99 

100**3. Choisir une portée**

101 

102Choisissez une [portée](#choose-an-install-scope) : votre compte utilisateur, ce projet ou local uniquement.

103 

104Pour activer, désactiver ou désinstaller un plugin ultérieurement, consultez [Installer des plugins dans l'application de bureau](https://code.claude.com/docs/fr/desktop.md#install-plugins).

105 

106**VS Code**

107 

108Dans le panneau Claude Code de VS Code :

109 

110**1. Ouvrir Manage plugins**

111 

112Tapez `/plugins` dans la zone de prompt pour ouvrir **Manage plugins**.

113 

114**2. Installer le plugin**

115 

116Dans l'onglet **Plugins**, recherchez `commit-commands` et cliquez sur **Install**. Si l'onglet ne liste aucun plugin, ajoutez d'abord `anthropics/claude-plugins-official` dans l'onglet **Marketplaces**.

117 

118**3. Choisir une portée**

119 

120Choisissez une [portée](#choose-an-install-scope) : **Install for you**, **Install for this project** ou **Install locally**.

121 

122Vos modifications s'appliquent aux sessions ouvertes sans redémarrage. Consultez [Gérer les plugins dans VS Code](https://code.claude.com/docs/fr/vs-code.md#manage-plugins).

123 87 

124**Session cloud**88> [tab] Application de bureau

89>

90> Dans une session locale ou SSH de l'onglet **Code** de l'application de bureau :

91>

92> **1. Ouvrir le navigateur de plugins**

93>

94> Cliquez sur le bouton **+** à côté de la zone de prompt et sélectionnez **Add plugins**. Si le menu **+** affiche **Plugins** au lieu de **Add plugins**, sélectionnez **Plugins**, puis **Browse plugins**. Le navigateur de plugins s'ouvre avec les plugins de vos marketplaces.

95>

96> **2. Sélectionner le plugin**

97>

98> Trouvez `commit-commands` et sélectionnez-le.

99>

100> **3. Choisir une portée**

101>

102> Choisissez une [portée](#choose-an-install-scope) : votre compte utilisateur, ce projet ou local uniquement.

103>

104> Pour activer, désactiver ou désinstaller un plugin ultérieurement, consultez [Installer des plugins dans l'application de bureau](https://code.claude.com/docs/fr/desktop.md#install-plugins).

125 105 

126Une [session cloud](https://code.claude.com/docs/fr/cloud-environments.md), y compris [le navigateur sur claude.ai/code](https://code.claude.com/docs/fr/claude-code-on-the-web.md), ne dispose pas de navigateur de plugins et ne charge ni les plugins que vous avez installés sur votre propre machine, ni ceux que le fichier `.claude/settings.json` de votre dépôt active. Pour les plugins que votre organisation distribue via des paramètres gérés, consultez [Gérer les plugins pour votre organisation](https://code.claude.com/docs/fr/plugins/org.md).106> [tab] VS Code

107>

108> Dans le panneau Claude Code de VS Code :

109>

110> **1. Ouvrir Manage plugins**

111>

112> Tapez `/plugins` dans la zone de prompt pour ouvrir **Manage plugins**.

113>

114> **2. Installer le plugin**

115>

116> Dans l'onglet **Plugins**, recherchez `commit-commands` et cliquez sur **Install**. Si l'onglet ne liste aucun plugin, ajoutez d'abord `anthropics/claude-plugins-official` dans l'onglet **Marketplaces**.

117>

118> **3. Choisir une portée**

119>

120> Choisissez une [portée](#choose-an-install-scope) : **Install for you**, **Install for this project** ou **Install locally**.

121>

122> Vos modifications s'appliquent aux sessions ouvertes sans redémarrage. Consultez [Gérer les plugins dans VS Code](https://code.claude.com/docs/fr/vs-code.md#manage-plugins).

127 123 

128Consultez [quelles parties de votre configuration sont également disponibles dans une session cloud](https://code.claude.com/docs/fr/cloud-environments.md#what-carries-over-from-your-setup) pour le reste de votre configuration.124> [tab] Session cloud

125>

126> Une [session cloud](https://code.claude.com/docs/fr/cloud-environments.md), y compris [le navigateur sur claude.ai/code](https://code.claude.com/docs/fr/claude-code-on-the-web.md), ne dispose pas de navigateur de plugins et ne charge ni les plugins que vous avez installés sur votre propre machine, ni ceux que le fichier `.claude/settings.json` de votre dépôt active. Pour les plugins que votre organisation distribue via des paramètres gérés, consultez [Gérer les plugins pour votre organisation](https://code.claude.com/docs/fr/plugins/org.md).

127>

128> Consultez [quelles parties de votre configuration sont également disponibles dans une session cloud](https://code.claude.com/docs/fr/cloud-environments.md#what-carries-over-from-your-setup) pour le reste de votre configuration.

129 129 

130### Choisir une portée d'installation130### Choisir une portée d'installation

131 131 

Details

116 116 

117### Partage d'utilisation dans `/usage`117### Partage d'utilisation dans `/usage`

118 118 

119Sur un plan Pro, Max, Team ou Enterprise, la ventilation `/usage` attribue l'utilisation récente aux skills, subagents, plugins et serveurs MCP en tant que part du total. Voir [Utiliser la commande `/usage`](https://code.claude.com/docs/fr/costs#using-the-/usage-command).119Sur un plan Pro, Max, Ultra, Team ou Enterprise, la ventilation `/usage` attribue l'utilisation récente aux skills, sous-agents, plugins et serveurs MCP en tant que part du total. Voir [Utiliser la commande `/usage`](https://code.claude.com/docs/fr/costs#using-the-/usage-command).

120 120 

121## Mesurer sur une flotte121## Mesurer sur une flotte

122 122 

Details

92 92 

93Créez les deux répertoires qui contiennent les fichiers :93Créez les deux répertoires qui contiennent les fichiers :

94 94 

95**Bash ou Zsh**95> [tab] Bash ou Zsh

96 96>

97```bash theme={null}97> ```bash theme={null}

98mkdir -p first-mod/.claude-plugin first-mod/hooks98> mkdir -p first-mod/.claude-plugin first-mod/hooks

99```99> ```

100 

101**PowerShell**

102 100 

103```powershell theme={null}101> [tab] PowerShell

104New-Item -ItemType Directory -Force first-mod\.claude-plugin, first-mod\hooks102>

105```103> ```powershell theme={null}

104> New-Item -ItemType Directory -Force first-mod\.claude-plugin, first-mod\hooks

105> ```

106 106 

107**2. Écrire le manifeste**107**2. Écrire le manifeste**

108 108 

Details

181 181 

182Le panneau et la bande restent vides tant qu'un mod ne les remplit pas. Sélectionnez un onglet pour découvrir ce qu'est chacun d'eux et comment y dessiner :182Le panneau et la bande restent vides tant qu'un mod ne les remplit pas. Sélectionnez un onglet pour découvrir ce qu'est chacun d'eux et comment y dessiner :

183 183 

184**Panneau**184> [tab] Panneau

185 185>

186Un panneau est une barre latérale à côté de la transcription dans un terminal large en plein écran, ou sinon une zone encadrée au-dessus du prompt. Lorsque plusieurs panneaux sont ouverts, chacun dispose d'un onglet qui affiche son titre.186> Un panneau est une barre latérale à côté de la transcription dans un terminal large en plein écran, ou sinon une zone encadrée au-dessus du prompt. Lorsque plusieurs panneaux sont ouverts, chacun dispose d'un onglet qui affiche son titre.

187 187>

188Un panneau apparaît lorsque votre mod appelle `$.ui.open` avec un `id` de votre choix, comme dans `$.ui.open({ id: 'hello-tabs' })`. [Ouvrir un panneau au bon moment](#open-a-pane-at-the-right-time) présente les autres champs et explique quand un panneau attend un terminal plus large.188> Un panneau apparaît lorsque votre mod appelle `$.ui.open` avec un `id` de votre choix, comme dans `$.ui.open({ id: 'hello-tabs' })`. [Ouvrir un panneau au bon moment](#open-a-pane-at-the-right-time) présente les autres champs et explique quand un panneau attend un terminal plus large.

189 189>

190Pour dessiner dans votre panneau, filtrez sur `{ component: 'Pane' }` et vérifiez que `e.requestId` correspond à votre `id`.190> Pour dessiner dans votre panneau, filtrez sur `{ component: 'Pane' }` et vérifiez que `e.requestId` correspond à votre `id`.

191 

192**Bande au-dessus du prompt**

193 

194La bande est une bande située juste au-dessus de la zone de saisie du prompt. Elle est toujours présente, et tous les mods la partagent.

195 

196Votre hook renvoie un arbre pour afficher quelque chose dans la bande, ou `next(e)` pour ne rien afficher. Un arbre remplace ce que les mods [exécutés après le vôtre](https://code.claude.com/docs/fr/plugins/mods/events.md#the-order-mods-run-in) y dessinent. Pour conserver leur contenu, placez le résultat de `await next(e)` parmi les enfants d'une [`Box`](#build-a-tree-from-elements) de votre arbre.

197 191 

198Pour dessiner dans la bande, filtrez sur `{ component: 'AbovePrompt' }`.192> [tab] Bande au-dessus du prompt

193>

194> La bande est une bande située juste au-dessus de la zone de saisie du prompt. Elle est toujours présente, et tous les mods la partagent.

195>

196> Votre hook renvoie un arbre pour afficher quelque chose dans la bande, ou `next(e)` pour ne rien afficher. Un arbre remplace ce que les mods [exécutés après le vôtre](https://code.claude.com/docs/fr/plugins/mods/events.md#the-order-mods-run-in) y dessinent. Pour conserver leur contenu, placez le résultat de `await next(e)` parmi les enfants d'une [`Box`](#build-a-tree-from-elements) de votre arbre.

197>

198> Pour dessiner dans la bande, filtrez sur `{ component: 'AbovePrompt' }`.

199 199 

200### Modifier ce que Claude Code dessine déjà200### Modifier ce que Claude Code dessine déjà

201 201 


214 214 

215Sur un point de rendu que Claude Code dessine déjà, votre hook peut modifier un détail, remplacer le dessin ou le laisser tel quel. Sélectionnez un onglet pour voir chaque cas appliqué au spinner. Les exemples lisent une variable `calls` qu'un autre hook incrémente, comme dans le [mod du tutoriel](https://code.claude.com/docs/fr/plugins/mods/create.md#write-a-mod-yourself).215Sur un point de rendu que Claude Code dessine déjà, votre hook peut modifier un détail, remplacer le dessin ou le laisser tel quel. Sélectionnez un onglet pour voir chaque cas appliqué au spinner. Les exemples lisent une variable `calls` qu'un autre hook incrémente, comme dans le [mod du tutoriel](https://code.claude.com/docs/fr/plugins/mods/create.md#write-a-mod-yourself).

216 216 

217**Modifier un détail**217> [tab] Modifier un détail

218 218>

219Pour conserver le dessin de Claude Code et en modifier une partie, passez à `next` une copie de l'événement avec des `props` modifiées. Ce hook modifie le texte qui suit le mot du spinner :219> Pour conserver le dessin de Claude Code et en modifier une partie, passez à `next` une copie de l'événement avec des `props` modifiées. Ce hook modifie le texte qui suit le mot du spinner :

220 220>

221```javascript theme={null}221> ```javascript theme={null}

222on('ui.render', { component: 'Spinner' }, async ($, e, next) => {222> on('ui.render', { component: 'Spinner' }, async ($, e, next) => {

223 // Keep Claude Code's spinner, and change the text after its word223> // Keep Claude Code's spinner, and change the text after its word

224 return next({ ...e, props: { ...e.props, suffix: ' · tool calls: ' + calls + '…' } })224> return next({ ...e, props: { ...e.props, suffix: ' · tool calls: ' + calls + '…' } })

225})225> })

226```226> ```

227 227>

228Le spinner conserve son animation et son mot, et votre texte suit le mot :228> Le spinner conserve son animation et son mot, et votre texte suit le mot :

229 229>

230```text theme={null}230> ```text theme={null}

231Thinking · tool calls: 2…231> Thinking · tool calls: 2…

232```232> ```

233 

234**Remplacer le dessin**

235 

236Pour dessiner votre propre contenu à la place du point de rendu, renvoyez un arbre et n'appelez pas `next`. Ce hook dessine une ligne de texte à l'emplacement du spinner :

237 

238```javascript theme={null}

239on('ui.render', { component: 'Spinner' }, async ($, e) => {

240 const { Text } = $.ui.resolve(e)

241 // No call to next, so this line is drawn in the spinner's place

242 return Text({ children: ['Claude has made ' + calls + ' tool calls'] })

243})

244```

245 

246Pendant que Claude travaille, votre ligne s'affiche et le spinner de Claude Code n'apparaît pas :

247 

248```text theme={null}

249Claude has made 2 tool calls

250```

251 

252**Le laisser tel quel**

253 

254Pour laisser le point de rendu tel que Claude Code le dessine, renvoyez `next(e)`. Un hook le fait souvent pour certains événements et pas pour d'autres. Ce hook laisse le spinner tel quel tant qu'il n'y a aucun appel à compter :

255 

256```javascript theme={null}

257on('ui.render', { component: 'Spinner' }, async ($, e, next) => {

258 // Nothing to show yet, so pass the event on unchanged

259 if (calls === 0) return next(e)

260 return next({ ...e, props: { ...e.props, suffix: ' · tool calls: ' + calls + '…' } })

261})

262```

263 233 

264Avant le premier appel d'outil, le spinner a la même apparence que sans le mod :234> [tab] Remplacer le dessin

235>

236> Pour dessiner votre propre contenu à la place du point de rendu, renvoyez un arbre et n'appelez pas `next`. Ce hook dessine une ligne de texte à l'emplacement du spinner :

237>

238> ```javascript theme={null}

239> on('ui.render', { component: 'Spinner' }, async ($, e) => {

240> const { Text } = $.ui.resolve(e)

241> // No call to next, so this line is drawn in the spinner's place

242> return Text({ children: ['Claude has made ' + calls + ' tool calls'] })

243> })

244> ```

245>

246> Pendant que Claude travaille, votre ligne s'affiche et le spinner de Claude Code n'apparaît pas :

247>

248> ```text theme={null}

249> Claude has made 2 tool calls

250> ```

265 251 

266```text theme={null}252> [tab] Le laisser tel quel

267Thinking…253>

268```254> Pour laisser le point de rendu tel que Claude Code le dessine, renvoyez `next(e)`. Un hook le fait souvent pour certains événements et pas pour d'autres. Ce hook laisse le spinner tel quel tant qu'il n'y a aucun appel à compter :

255>

256> ```javascript theme={null}

257> on('ui.render', { component: 'Spinner' }, async ($, e, next) => {

258> // Nothing to show yet, so pass the event on unchanged

259> if (calls === 0) return next(e)

260> return next({ ...e, props: { ...e.props, suffix: ' · tool calls: ' + calls + '…' } })

261> })

262> ```

263>

264> Avant le premier appel d'outil, le spinner a la même apparence que sans le mod :

265>

266> ```text theme={null}

267> Thinking…

268> ```

269 269 

270Sur ces points de rendu, `next(e)` renvoie une référence au dessin de Claude Code, `{ type: 'engine', ref }`, sauf si un mod exécuté après le vôtre a renvoyé son propre arbre. Pour modifier le contenu de ce dessin, passez à `next` une copie de l'événement avec des props différentes, comme le fait l'onglet **Modifier un détail**. Vous pouvez renvoyer la référence telle quelle, ou la placer dans une `Box` à côté de vos propres éléments :270Sur ces points de rendu, `next(e)` renvoie une référence au dessin de Claude Code, `{ type: 'engine', ref }`, sauf si un mod exécuté après le vôtre a renvoyé son propre arbre. Pour modifier le contenu de ce dessin, passez à `next` une copie de l'événement avec des props différentes, comme le fait l'onglet **Modifier un détail**. Vous pouvez renvoyer la référence telle quelle, ou la placer dans une `Box` à côté de vos propres éléments :

271 271 


357 357 

358Sélectionnez un onglet pour voir chacun des éléments les plus courants et la façon dont le terminal le dessine :358Sélectionnez un onglet pour voir chacun des éléments les plus courants et la façon dont le terminal le dessine :

359 359 

360**Text**360> [tab] Text

361 361>

362`Text` dessine une chaîne, avec un style facultatif tel que `bold` et `color` :362> `Text` dessine une chaîne, avec un style facultatif tel que `bold` et `color` :

363 363>

364```javascript theme={null}364> ```javascript theme={null}

365Text({ children: ['This is the first tab.'] })365> Text({ children: ['This is the first tab.'] })

366```366> ```

367 367>

368```text theme={null}368> ```text theme={null}

369This is the first tab.369> This is the first tab.

370```370> ```

371 

372**Box**

373 

374`Box` dispose ce qu'il contient, en ligne ou en colonne. Celui-ci place un bouton et une ligne de texte côte à côte, à deux colonnes d'écart :

375 

376```javascript theme={null}

377Box({

378 flexDirection: 'row',

379 columnGap: 2,

380 children: [

381 Button({ key: 'more', label: 'Add one', onPress: addOne }),

382 Text({ children: ['Count: 0'] }),

383 ],

384})

385```

386 

387```text theme={null}

388[ Add one ] Count: 0

389```

390 

391**Button**

392 

393`Button` est un contrôle sur lequel l'utilisateur peut appuyer. Il exécute votre callback `onPress`. Avec `plain: true`, il n'a pas de crochets et affiche son raccourci clavier :

394 

395```javascript theme={null}

396Button({ key: 'more', label: 'Add one', onPress: addOne })

397Button({ key: 'tab-one', label: 'One', hotkey: '1', plain: true, onPress: showTabOne })

398```

399 

400```text theme={null}

401[ Add one ]

4021: One

403```

404 

405**Input**

406 

407`Input` est un champ de texte. Il exécute votre callback `onSubmit` avec le texte lorsque l'utilisateur appuie sur Enter :

408 371 

409```javascript theme={null}372> [tab] Box

410Input({373>

411 key: 'new-note',374> `Box` dispose ce qu'il contient, en ligne ou en colonne. Celui-ci place un bouton et une ligne de texte côte à côte, à deux colonnes d'écart :

412 label: 'Note',375>

413 placeholder: 'Type a note and press Enter',376> ```javascript theme={null}

414 value: '',377> Box({

415 submitLabel: 'add',378> flexDirection: 'row',

416 onSubmit: addNote,379> columnGap: 2,

417})380> children: [

418```381> Button({ key: 'more', label: 'Add one', onPress: addOne }),

382> Text({ children: ['Count: 0'] }),

383> ],

384> })

385> ```

386>

387> ```text theme={null}

388> [ Add one ] Count: 0

389> ```

419 390 

420```text theme={null}391> [tab] Button

421Note: Type a note and press Enter392>

422```393> `Button` est un contrôle sur lequel l'utilisateur peut appuyer. Il exécute votre callback `onPress`. Avec `plain: true`, il n'a pas de crochets et affiche son raccourci clavier :

394>

395> ```javascript theme={null}

396> Button({ key: 'more', label: 'Add one', onPress: addOne })

397> Button({ key: 'tab-one', label: 'One', hotkey: '1', plain: true, onPress: showTabOne })

398> ```

399>

400> ```text theme={null}

401> [ Add one ]

402> 1: One

403> ```

423 404 

424Définissez `rows` à 2 ou plus pour obtenir [un champ qui contient plusieurs lignes](https://code.claude.com/docs/fr/plugins/mods/gallery.md#input).405> [tab] Input

406>

407> `Input` est un champ de texte. Il exécute votre callback `onSubmit` avec le texte lorsque l'utilisateur appuie sur Enter :

408>

409> ```javascript theme={null}

410> Input({

411> key: 'new-note',

412> label: 'Note',

413> placeholder: 'Type a note and press Enter',

414> value: '',

415> submitLabel: 'add',

416> onSubmit: addNote,

417> })

418> ```

419>

420> ```text theme={null}

421> Note: Type a note and press Enter

422> ```

423>

424> Définissez `rows` à 2 ou plus pour obtenir [un champ qui contient plusieurs lignes](https://code.claude.com/docs/fr/plugins/mods/gallery.md#input).

425 425 

426La [galerie d'interface](https://code.claude.com/docs/fr/plugins/mods/gallery.md) propose des exemples et des captures d'écran de la plupart des éléments. Ce tableau répertorie tous les éléments :426La [galerie d'interface](https://code.claude.com/docs/fr/plugins/mods/gallery.md) propose des exemples et des captures d'écran de la plupart des éléments. Ce tableau répertorie tous les éléments :

427 427 

Details

132 132 

133**1. Confirmer que vous pouvez soumettre**133**1. Confirmer que vous pouvez soumettre**

134 134 

135La soumission nécessite un plan claude.ai payant. Sur Pro et Max, vous soumettez à partir de votre propre compte. Sur Team et Enterprise, un propriétaire peut soumettre, et sur Enterprise, un propriétaire peut également accorder la permission **Directory** à d'autres membres via un rôle personnalisé sous **Organization settings > Roles**. Voir [Confirmer que vous pouvez soumettre au répertoire](https://claude.com/docs/directory/publish#confirm-you-can-submit-to-the-directory).135La soumission nécessite un plan claude.ai payant. Sur Pro, Max et Ultra, vous soumettez à partir de votre propre compte. Sur Team et Enterprise, un propriétaire peut soumettre, et sur Enterprise, un propriétaire peut également accorder la permission **Directory** à d'autres membres via un rôle personnalisé sous **Organization settings > Roles**. Voir [Confirmer que vous pouvez soumettre au répertoire](https://claude.com/docs/directory/publish#confirm-you-can-submit-to-the-directory).

136 136 

137**2. Valider le plugin localement**137**2. Valider le plugin localement**

138 138 

Details

302 302 

303Le clonage d'une marketplace et le re-clonage d'une pour la mettre à jour obtiennent 120 secondes par défaut. Pour un grand référentiel ou une connexion lente, augmentez la limite. La valeur est en millisecondes :303Le clonage d'une marketplace et le re-clonage d'une pour la mettre à jour obtiennent 120 secondes par défaut. Pour un grand référentiel ou une connexion lente, augmentez la limite. La valeur est en millisecondes :

304 304 

305**Bash ou Zsh**305> [tab] Bash ou Zsh

306 306>

307```bash theme={null}307> ```bash theme={null}

308export CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS=300000308> export CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS=300000

309```309> ```

310 

311**PowerShell**

312 310 

313```powershell theme={null}311> [tab] PowerShell

314$env:CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS = "300000"312>

315```313> ```powershell theme={null}

314> $env:CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS = "300000"

315> ```

316 316 

317Ensuite, réessayez dans le même shell.317Ensuite, réessayez dans le même shell.

318 318 


328 328 

329Définissez cette variable pour ignorer la tentative de re-clonage et continuer à utiliser le checkout existant lorsque la vérification ne peut pas atteindre l'hôte :329Définissez cette variable pour ignorer la tentative de re-clonage et continuer à utiliser le checkout existant lorsque la vérification ne peut pas atteindre l'hôte :

330 330 

331**Bash ou Zsh**331> [tab] Bash ou Zsh

332 332>

333```bash theme={null}333> ```bash theme={null}

334export CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1334> export CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1

335```335> ```

336 

337**PowerShell**

338 336 

339```powershell theme={null}337> [tab] PowerShell

340$env:CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE = "1"338>

341```339> ```powershell theme={null}

340> $env:CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE = "1"

341> ```

342 342 

343Avec la variable définie, Claude Code ignore le re-clonage uniquement pour un checkout qui contient déjà `.claude-plugin/marketplace.json`. Une marketplace qui n'a jamais été clonée ou dont le clonage s'est arrêté à mi-chemin obtient toujours la tentative de clonage, donc ajoutez-la une fois en ligne.343Avec la variable définie, Claude Code ignore le re-clonage uniquement pour un checkout qui contient déjà `.claude-plugin/marketplace.json`. Une marketplace qui n'a jamais été clonée ou dont le clonage s'est arrêté à mi-chemin obtient toujours la tentative de clonage, donc ajoutez-la une fois en ligne.

344 344 

quickstart.md +56 −56

Details

14 14 

15* Un terminal ou une invite de commande ouvert15* Un terminal ou une invite de commande ouvert

16* Un projet de code avec lequel travailler16* Un projet de code avec lequel travailler

17* Un [abonnement Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_prereq) (Pro, Max, Team ou Enterprise), un compte [Claude Console](https://platform.claude.com/), ou un accès via un [fournisseur cloud pris en charge](https://code.claude.com/docs/fr/third-party-integrations.md)17* Un [abonnement Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_prereq) (Pro, Max, Ultra, Team ou Enterprise), un compte [Claude Console](https://platform.claude.com/), ou un accès via un [fournisseur cloud pris en charge](https://code.claude.com/docs/fr/third-party-integrations.md)

18 18 

19> [!NOTE]19> [!NOTE]

20>20>


27 27 

28Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](https://code.claude.com/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.28Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](https://code.claude.com/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.

29 29 

30**Installation native (recommandée)**30> [tab] Installation native (recommandée)

31 

32**macOS, Linux, WSL :**

33 

34```bash theme={null}

35curl -fsSL https://claude.ai/install.sh | bash

36```

37 

38Sur Windows, votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.

39 

40**Windows PowerShell :**

41 

42```powershell theme={null}

43irm https://claude.ai/install.ps1 | iex

44```

45 

46**Windows CMD :**

47 

48```batch theme={null}

49curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

50```

51 

52La commande d'installation n'affiche aucune progression pendant le téléchargement de Claude Code. Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](https://code.claude.com/docs/fr/troubleshoot-install.md#command-not-found-claude-after-installation).

53 

54Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell.

55 

56Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou toute autre erreur, consultez [Dépannage de l'installation](https://code.claude.com/docs/fr/troubleshoot-install.md#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.

57 

58[Git for Windows](https://git-scm.com/downloads/win) est recommandé sur Windows natif afin que Claude Code puisse utiliser l'outil Bash. Si Git for Windows n'est pas installé, Claude Code utilise PowerShell comme outil shell à la place. Les configurations WSL n'ont pas besoin de Git for Windows.

59 

60> [!NOTE]

61>31>

62> Les installations natives se mettent à jour automatiquement en arrière-plan pour vous maintenir à jour avec la dernière version.32> **macOS, Linux, WSL :**

63 

64**Homebrew**

65 

66```bash theme={null}

67brew install --cask claude-code

68```

69 

70Homebrew propose deux casks. `claude-code` suit le canal de version stable, qui est généralement environ une semaine en retard et ignore les versions avec des régressions majeures. `claude-code@latest` suit le canal le plus récent et reçoit les nouvelles versions dès qu'elles sont publiées.

71 

72> [!NOTE]

73>33>

74> Les installations Homebrew ne se mettent pas à jour automatiquement. Exécutez `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, selon le cask que vous avez installé, pour obtenir les dernières fonctionnalités et correctifs de sécurité.34> ```bash theme={null}

75 35> curl -fsSL https://claude.ai/install.sh | bash

76**WinGet**36> ```

37>

38> Sur Windows, votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.

39>

40> **Windows PowerShell :**

41>

42> ```powershell theme={null}

43> irm https://claude.ai/install.ps1 | iex

44> ```

45>

46> **Windows CMD :**

47>

48> ```batch theme={null}

49> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

50> ```

51>

52> La commande d'installation n'affiche aucune progression pendant le téléchargement de Claude Code. Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](https://code.claude.com/docs/fr/troubleshoot-install.md#command-not-found-claude-after-installation).

53>

54> Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell.

55>

56> Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou toute autre erreur, consultez [Dépannage de l'installation](https://code.claude.com/docs/fr/troubleshoot-install.md#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.

57>

58> [Git for Windows](https://git-scm.com/downloads/win) est recommandé sur Windows natif afin que Claude Code puisse utiliser l'outil Bash. Si Git for Windows n'est pas installé, Claude Code utilise PowerShell comme outil shell à la place. Les configurations WSL n'ont pas besoin de Git for Windows.

59>

60> > [!NOTE]

61> >

62> > Les installations natives se mettent à jour automatiquement en arrière-plan pour vous maintenir à jour avec la dernière version.

77 63 

78```powershell theme={null}64> [tab] Homebrew

79winget install Anthropic.ClaudeCode65>

80```66> ```bash theme={null}

67> brew install --cask claude-code

68> ```

69>

70> Homebrew propose deux casks. `claude-code` suit le canal de version stable, qui est généralement environ une semaine en retard et ignore les versions avec des régressions majeures. `claude-code@latest` suit le canal le plus récent et reçoit les nouvelles versions dès qu'elles sont publiées.

71>

72> > [!NOTE]

73> >

74> > Les installations Homebrew ne se mettent pas à jour automatiquement. Exécutez `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, selon le cask que vous avez installé, pour obtenir les dernières fonctionnalités et correctifs de sécurité.

81 75 

82> [!NOTE]76> [tab] WinGet

77>

78> ```powershell theme={null}

79> winget install Anthropic.ClaudeCode

80> ```

83>81>

84> Les installations WinGet ne se mettent pas à jour automatiquement. Exécutez `winget upgrade Anthropic.ClaudeCode` périodiquement pour obtenir les dernières fonctionnalités et correctifs de sécurité.82> > [!NOTE]

83> >

84> > Les installations WinGet ne se mettent pas à jour automatiquement. Exécutez `winget upgrade Anthropic.ClaudeCode` périodiquement pour obtenir les dernières fonctionnalités et correctifs de sécurité.

85 85 

86Vous pouvez également installer avec [apt, dnf, ou apk](https://code.claude.com/docs/fr/setup.md#install-with-linux-package-managers) sur Debian, Fedora, RHEL et Alpine.86Vous pouvez également installer avec [apt, dnf, ou apk](https://code.claude.com/docs/fr/setup.md#install-with-linux-package-managers) sur Debian, Fedora, RHEL et Alpine.

87 87 


108 108 

109Vous pouvez vous connecter avec l'un de ces types de comptes :109Vous pouvez vous connecter avec l'un de ces types de comptes :

110 110 

111* [Claude Pro, Max, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_login) (recommandé)111* [Claude Pro, Max, Ultra, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_login) (recommandé)

112* [Claude Console](https://platform.claude.com/) (accès à l'API avec des crédits prépayés). Lors de la première connexion, un espace de travail « Claude Code » est automatiquement créé dans la Console pour un suivi centralisé des coûts.112* [Claude Console](https://platform.claude.com/) (accès à l'API avec des crédits prépayés). Lors de la première connexion, un espace de travail « Claude Code » est automatiquement créé dans la Console pour un suivi centralisé des coûts.

113* [Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry](https://code.claude.com/docs/fr/third-party-integrations.md) (fournisseurs cloud d'entreprise)113* [Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry](https://code.claude.com/docs/fr/third-party-integrations.md) (fournisseurs cloud d'entreprise)

114* Une [passerelle Claude apps](https://code.claude.com/docs/fr/claude-apps-gateway) auto-hébergée, si votre organisation en exploite une : votre administrateur préconfigure l'URL de la passerelle, et `/login` s'ouvre directement sur l'écran **Cloud gateway** pour que vous vous connectiez avec le SSO de votre entreprise114* Une [passerelle Claude apps](https://code.claude.com/docs/fr/claude-apps-gateway) auto-hébergée, si votre organisation en exploite une : votre administrateur préconfigure l'URL de la passerelle, et `/login` s'ouvre directement sur l'écran **Cloud gateway** pour que vous vous connectiez avec le SSO de votre entreprise


267 267 

268Pour plus d'informations, voir [les meilleures pratiques](https://code.claude.com/docs/fr/best-practices.md) et [les flux de travail courants](https://code.claude.com/docs/fr/common-workflows.md).268Pour plus d'informations, voir [les meilleures pratiques](https://code.claude.com/docs/fr/best-practices.md) et [les flux de travail courants](https://code.claude.com/docs/fr/common-workflows.md).

269 269 

270> **Soyez spécifique dans vos demandes**270> [accordion] Soyez spécifique dans vos demandes

271>271>

272> Au lieu de : ' corriger le bug '272> Au lieu de : ' corriger le bug '

273>273>

274> Essayez : ' corriger le bug de connexion où les utilisateurs voient un écran vide après avoir entré des identifiants incorrects '274> Essayez : ' corriger le bug de connexion où les utilisateurs voient un écran vide après avoir entré des identifiants incorrects '

275 275 

276> **Utilisez des instructions étape par étape**276> [accordion] Utilisez des instructions étape par étape

277>277>

278> Divisez les tâches complexes en étapes :278> Divisez les tâches complexes en étapes :

279>279>


283> 3. construire une page web qui permet aux utilisateurs de voir et modifier leurs informations283> 3. construire une page web qui permet aux utilisateurs de voir et modifier leurs informations

284> ```284> ```

285 285 

286> **Laissez Claude explorer d'abord**286> [accordion] Laissez Claude explorer d'abord

287>287>

288> Avant de faire des modifications, laissez Claude comprendre votre code :288> Avant de faire des modifications, laissez Claude comprendre votre code :

289>289>


295> construire un tableau de bord montrant les produits les plus fréquemment retournés par nos clients au Royaume-Uni295> construire un tableau de bord montrant les produits les plus fréquemment retournés par nos clients au Royaume-Uni

296> ```296> ```

297 297 

298> **Gagnez du temps avec les raccourcis**298> [accordion] Gagnez du temps avec les raccourcis

299>299>

300> * Tapez `/` pour voir les commandes et skills disponibles300> * Tapez `/` pour voir les commandes et skills disponibles

301> * Utilisez Tab pour la complétion des commandes301> * Utilisez Tab pour la complétion des commandes

remote-control.md +97 −97

Details

25 25 

26Avant d'utiliser Remote Control, confirmez que votre environnement répond à ces conditions :26Avant d'utiliser Remote Control, confirmez que votre environnement répond à ces conditions :

27 27 

28* **Abonnement** : disponible sur les plans Pro, Max, Team et Enterprise. Les clés API ne sont pas prises en charge. Sur Team et Enterprise, un propriétaire doit d'abord activer le bouton Remote Control dans les [paramètres d'administration Claude Code](https://claude.ai/admin-settings/claude-code).28* **Abonnement** : disponible sur les plans Pro, Max, Ultra, Team et Enterprise. Les clés API ne sont pas prises en charge. Sur Team et Enterprise, un propriétaire doit d'abord activer le bouton Remote Control dans les [paramètres d'administration Claude Code](https://claude.ai/admin-settings/claude-code).

29* **Rôles personnalisés** : si votre organisation Enterprise gère votre accès avec des [rôles personnalisés](https://support.claude.com/en/articles/13930452), vos rôles doivent vous accorder à la fois la permission des sessions cloud et la permission **Claude Code remote control**. Si l'une ou l'autre manque, le démarrage de Remote Control affiche [`Remote Control is disabled by your organization's policy`](#remote-control-is-disabled-by-your-organizations-policy). Demandez à un propriétaire de vérifier vos rôles et d'ajouter ce qui manque dans [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).29* **Rôles personnalisés** : si votre organisation Enterprise gère votre accès avec des [rôles personnalisés](https://support.claude.com/en/articles/13930452), vos rôles doivent vous accorder à la fois la permission des sessions cloud et la permission **Claude Code remote control**. Si l'une ou l'autre manque, le démarrage de Remote Control affiche [`Remote Control is disabled by your organization's policy`](#remote-control-is-disabled-by-your-organizations-policy). Demandez à un propriétaire de vérifier vos rôles et d'ajouter ce qui manque dans [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).

30* **Authentification** : exécutez `claude` et utilisez `/login` pour vous connecter via claude.ai si vous ne l'avez pas déjà fait. Sans une connexion éligible, `claude remote-control` se termine avec une erreur, tandis que `claude --remote-control` démarre toujours une session interactive et affiche une notification d'échec de Remote Control peu de temps après le lancement.30* **Authentification** : exécutez `claude` et utilisez `/login` pour vous connecter via claude.ai si vous ne l'avez pas déjà fait. Sans une connexion éligible, `claude remote-control` se termine avec une erreur, tandis que `claude --remote-control` démarre toujours une session interactive et affiche une notification d'échec de Remote Control peu de temps après le lancement.

31* **Point de terminaison API** : non disponible dans l'une de ces configurations :31* **Point de terminaison API** : non disponible dans l'une de ces configurations :


41 41 

42Vous pouvez démarrer une session Remote Control depuis la CLI, l'[application Claude Desktop](https://code.claude.com/docs/fr/desktop.md) ou l'extension VS Code. La CLI propose trois modes d'invocation ; l'application Desktop et VS Code utilisent la commande `/remote-control`.42Vous pouvez démarrer une session Remote Control depuis la CLI, l'[application Claude Desktop](https://code.claude.com/docs/fr/desktop.md) ou l'extension VS Code. La CLI propose trois modes d'invocation ; l'application Desktop et VS Code utilisent la commande `/remote-control`.

43 43 

44**Mode serveur**44> [tab] Mode serveur

45 45>

46Dans le répertoire de votre projet, exécutez :46> Dans le répertoire de votre projet, exécutez :

47 47>

48```bash theme={null}48> ```bash theme={null}

49claude remote-control49> claude remote-control

50```50> ```

51 51>

52Tant que vous n'avez pas accepté la confirmation unique de Remote Control, `claude remote-control` explique ce qu'il fait et demande `Enable Remote Control? (y/n)` avant de démarrer le serveur. Répondez `y` pour accepter et démarrer le serveur. Si vous refusez, Claude Code se ferme sans démarrer le serveur et vous pose à nouveau la question la prochaine fois que vous exécutez la commande.52> Tant que vous n'avez pas accepté la confirmation unique de Remote Control, `claude remote-control` explique ce qu'il fait et demande `Enable Remote Control? (y/n)` avant de démarrer le serveur. Répondez `y` pour accepter et démarrer le serveur. Si vous refusez, Claude Code se ferme sans démarrer le serveur et vous pose à nouveau la question la prochaine fois que vous exécutez la commande.

53 53>

54En mode serveur, le processus reste actif dans votre terminal, en attente de connexions à distance. Il affiche une URL de session que vous pouvez utiliser pour [vous connecter depuis un autre appareil](#connect-from-another-device), et vous pouvez appuyer sur la barre d'espace pour afficher un QR code permettant un accès rapide depuis votre téléphone. Tant qu'une session à distance est active, le terminal affiche l'état de la connexion et l'activité des outils.54> En mode serveur, le processus reste actif dans votre terminal, en attente de connexions à distance. Il affiche une URL de session que vous pouvez utiliser pour [vous connecter depuis un autre appareil](#connect-from-another-device), et vous pouvez appuyer sur la barre d'espace pour afficher un QR code permettant un accès rapide depuis votre téléphone. Tant qu'une session à distance est active, le terminal affiche l'état de la connexion et l'activité des outils.

55 55>

56Passez l'un de ces flags après `remote-control` :56> Passez l'un de ces flags après `remote-control` :

57 57>

58| Flag | Description |58> | Flag | Description |

59| - | - |59> | - | - |

60| `--name "My Project"` | Définit un titre de session personnalisé, visible dans la liste des sessions sur claude.ai/code. |60> | `--name "My Project"` | Définit un titre de session personnalisé, visible dans la liste des sessions sur claude.ai/code. |

61| `--remote-control-session-name-prefix <prefix>` | Préfixe des noms de session générés automatiquement lorsqu'aucun nom explicite n'est défini. Par défaut, il s'agit du nom d'hôte de votre machine, ce qui produit des noms comme `myhost-graceful-unicorn`. Définissez `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` pour obtenir le même effet. |61> | `--remote-control-session-name-prefix <prefix>` | Préfixe des noms de session générés automatiquement lorsqu'aucun nom explicite n'est défini. Par défaut, il s'agit du nom d'hôte de votre machine, ce qui produit des noms comme `myhost-graceful-unicorn`. Définissez `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` pour obtenir le même effet. |

62| `-c`, `--continue` | Rétablit la session avec laquelle le dernier serveur de ce répertoire a démarré, au lieu d'en créer une nouvelle. Consultez [Reprendre des sessions après l'arrêt du serveur](#resume-sessions-after-stopping-the-server). Ne peut pas être combiné avec `--session-id`, `--spawn`, `--capacity` ou `--create-session-in-dir`. Nécessite Claude Code v2.1.200 ou ultérieur. |62> | `-c`, `--continue` | Rétablit la session avec laquelle le dernier serveur de ce répertoire a démarré, au lieu d'en créer une nouvelle. Consultez [Reprendre des sessions après l'arrêt du serveur](#resume-sessions-after-stopping-the-server). Ne peut pas être combiné avec `--session-id`, `--spawn`, `--capacity` ou `--create-session-in-dir`. Nécessite Claude Code v2.1.200 ou ultérieur. |

63| `--session-id <id>` | Rétablit une session à partir de son ID. Consultez [Reprendre des sessions après l'arrêt du serveur](#resume-sessions-after-stopping-the-server). Ne peut pas être combiné avec `--continue`, `--spawn`, `--capacity` ou `--create-session-in-dir`. Nécessite Claude Code v2.1.200 ou ultérieur. |63> | `--session-id <id>` | Rétablit une session à partir de son ID. Consultez [Reprendre des sessions après l'arrêt du serveur](#resume-sessions-after-stopping-the-server). Ne peut pas être combiné avec `--continue`, `--spawn`, `--capacity` ou `--create-session-in-dir`. Nécessite Claude Code v2.1.200 ou ultérieur. |

64| `--spawn <mode>` | Façon dont le serveur crée les sessions. • `same-dir` (par défaut lorsqu'aucun mode n'est enregistré) : toutes les sessions partagent le répertoire de travail actuel, elles peuvent donc entrer en conflit si elles modifient les mêmes fichiers. • `worktree` : chaque session à la demande obtient son propre [worktree git](https://code.claude.com/docs/fr/worktrees.md). Nécessite un dépôt git ou un [hook `WorktreeCreate`](https://code.claude.com/docs/fr/hooks#worktreecreate). • `session` : mode session unique. Sert exactement une session et rejette les connexions supplémentaires. Ne peut être défini qu'au démarrage. Appuyez sur `w` pendant l'exécution pour basculer entre `same-dir` et `worktree`. Le mode vers lequel vous basculez devient le [mode par défaut pour ce projet](#set-the-default-spawn-mode-for-a-project). |64> | `--spawn <mode>` | Façon dont le serveur crée les sessions. • `same-dir` (par défaut lorsqu'aucun mode n'est enregistré) : toutes les sessions partagent le répertoire de travail actuel, elles peuvent donc entrer en conflit si elles modifient les mêmes fichiers. • `worktree` : chaque session à la demande obtient son propre [worktree git](https://code.claude.com/docs/fr/worktrees.md). Nécessite un dépôt git ou un [hook `WorktreeCreate`](https://code.claude.com/docs/fr/hooks#worktreecreate). • `session` : mode session unique. Sert exactement une session et rejette les connexions supplémentaires. Ne peut être défini qu'au démarrage. Appuyez sur `w` pendant l'exécution pour basculer entre `same-dir` et `worktree`. Le mode vers lequel vous basculez devient le [mode par défaut pour ce projet](#set-the-default-spawn-mode-for-a-project). |

65| `--capacity <N>` | Nombre maximal de sessions simultanées. La valeur par défaut est 32. Ne peut pas être utilisé avec `--spawn=session`. |65> | `--capacity <N>` | Nombre maximal de sessions simultanées. La valeur par défaut est 32. Ne peut pas être utilisé avec `--spawn=session`. |

66| `--[no-]create-session-in-dir` | Pré-crée une session dans le répertoire actuel au démarrage du serveur, afin que vous puissiez saisir du texte immédiatement. En mode `worktree`, cette session reste dans le répertoire actuel tandis que les sessions à la demande obtiennent des worktrees isolés. Activé par défaut. Si vous passez `--no-create-session-in-dir` pour démarrer sans aucune session, Claude Code archive les sessions du serveur lorsque vous l'arrêtez, il n'y a donc rien à [reprendre](#resume-sessions-after-stopping-the-server). |66> | `--[no-]create-session-in-dir` | Pré-crée une session dans le répertoire actuel au démarrage du serveur, afin que vous puissiez saisir du texte immédiatement. En mode `worktree`, cette session reste dans le répertoire actuel tandis que les sessions à la demande obtiennent des worktrees isolés. Activé par défaut. Si vous passez `--no-create-session-in-dir` pour démarrer sans aucune session, Claude Code archive les sessions du serveur lorsque vous l'arrêtez, il n'y a donc rien à [reprendre](#resume-sessions-after-stopping-the-server). |

67| `--permission-mode <mode>` | Définit le [mode de permission](https://code.claude.com/docs/fr/permission-modes.md) initial des sessions du serveur, par exemple `acceptEdits`. Accepte `manual` comme alias de `default` ; un mode non reconnu arrête le serveur au démarrage et liste les modes valides. |67> | `--permission-mode <mode>` | Définit le [mode de permission](https://code.claude.com/docs/fr/permission-modes.md) initial des sessions du serveur, par exemple `acceptEdits`. Accepte `manual` comme alias de `default` ; un mode non reconnu arrête le serveur au démarrage et liste les modes valides. |

68| `--chrome` / `--no-chrome` | Active ou désactive l'[intégration Chrome](https://code.claude.com/docs/fr/chrome.md) dans les sessions créées par le serveur, afin que Claude puisse utiliser Chrome sur votre machine pendant que vous travaillez depuis un autre appareil. Sans l'un ou l'autre de ces flags, la session pré-créée par le serveur et toute session que vous démarrez vous-même depuis claude.ai/code ou l'application Claude commencent avec Chrome désactivé, même si vous avez [activé Chrome par défaut](https://code.claude.com/docs/fr/chrome.md#enable-chrome-by-default). Une session que le serveur démarre pour l'un de vos fils de [projet](https://code.claude.com/docs/fr/claude-projects.md) suit plutôt ce paramètre, sauf en mode `bypassPermissions`. Nécessite Claude Code v2.1.273 ou ultérieur. |68> | `--chrome` / `--no-chrome` | Active ou désactive l'[intégration Chrome](https://code.claude.com/docs/fr/chrome.md) dans les sessions créées par le serveur, afin que Claude puisse utiliser Chrome sur votre machine pendant que vous travaillez depuis un autre appareil. Sans l'un ou l'autre de ces flags, la session pré-créée par le serveur et toute session que vous démarrez vous-même depuis claude.ai/code ou l'application Claude commencent avec Chrome désactivé, même si vous avez [activé Chrome par défaut](https://code.claude.com/docs/fr/chrome.md#enable-chrome-by-default). Une session que le serveur démarre pour l'un de vos fils de [projet](https://code.claude.com/docs/fr/claude-projects.md) suit plutôt ce paramètre, sauf en mode `bypassPermissions`. Nécessite Claude Code v2.1.273 ou ultérieur. |

69| `-d`, `--debug[=<filter>]` | Active les logs de débogage du serveur, éventuellement filtrés par catégorie. Ne passez un filtre que sous la forme `=`, par exemple `--debug=api,hooks`. Nécessite Claude Code v2.1.282 ou ultérieur. |69> | `-d`, `--debug[=<filter>]` | Active les logs de débogage du serveur, éventuellement filtrés par catégorie. Ne passez un filtre que sous la forme `=`, par exemple `--debug=api,hooks`. Nécessite Claude Code v2.1.282 ou ultérieur. |

70| `--debug-file <path>` | Écrit les logs de débogage dans le fichier indiqué. |70> | `--debug-file <path>` | Écrit les logs de débogage dans le fichier indiqué. |

71| `--verbose` | Affiche des logs détaillés sur les connexions et les sessions. |71> | `--verbose` | Affiche des logs détaillés sur les connexions et les sessions. |

72| `--sandbox`, `--no-sandbox` | Supprimés dans la v2.1.300. Si vous passez l'un de ces flags, le serveur [se ferme avec une erreur](https://code.claude.com/docs/fr/errors.md#sandbox-is-not-supported-by-claude-remote-control) au lieu de démarrer. |72> | `--sandbox`, `--no-sandbox` | Supprimés dans la v2.1.300. Si vous passez l'un de ces flags, le serveur [se ferme avec une erreur](https://code.claude.com/docs/fr/errors.md#sandbox-is-not-supported-by-claude-remote-control) au lieu de démarrer. |

73 73>

74Si vous passez un flag global de `claude` avant `remote-control`, ou si un script wrapper en ajoute un, Claude Code ne transmet pas ce flag aux sessions créées par le serveur. Claude Code ne laisse passer le flag que lorsqu'il est établi que son abandon ne change pas ce que ces sessions peuvent faire, comme `--verbose` ou `--model`. Pour tout autre flag, comme `--settings`, Claude Code [refuse de démarrer](https://code.claude.com/docs/fr/errors.md#not-carried-over-to-the-sessions-remote-control-starts) et indique le flag à supprimer.74> Si vous passez un flag global de `claude` avant `remote-control`, ou si un script wrapper en ajoute un, Claude Code ne transmet pas ce flag aux sessions créées par le serveur. Claude Code ne laisse passer le flag que lorsqu'il est établi que son abandon ne change pas ce que ces sessions peuvent faire, comme `--verbose` ou `--model`. Pour tout autre flag, comme `--settings`, Claude Code [refuse de démarrer](https://code.claude.com/docs/fr/errors.md#not-carried-over-to-the-sessions-remote-control-starts) et indique le flag à supprimer.

75 75>

76Pour exécuter dans un sandbox les sessions démarrées par le serveur, activez le [sandboxing](https://code.claude.com/docs/fr/sandboxing.md) dans un fichier de paramètres.76> Pour exécuter dans un sandbox les sessions démarrées par le serveur, activez le [sandboxing](https://code.claude.com/docs/fr/sandboxing.md) dans un fichier de paramètres.

77 77>

78Pour afficher les flags de `remote-control` dans votre terminal, exécutez `claude remote-control --help`. Avant la v2.1.302, en l'absence d'une connexion éligible, la commande renvoyait plutôt l'une des erreurs décrites dans [Dépannage](#troubleshooting).78> Pour afficher les flags de `remote-control` dans votre terminal, exécutez `claude remote-control --help`. Avant la v2.1.302, en l'absence d'une connexion éligible, la commande renvoyait plutôt l'une des erreurs décrites dans [Dépannage](#troubleshooting).

79 

80**Session interactive**

81 

82Pour démarrer une session interactive Claude Code normale avec Remote Control activé, utilisez le flag `--remote-control` (ou `--rc`) :

83 

84```bash theme={null}

85claude --remote-control

86```

87 

88Vous pouvez éventuellement passer un nom pour la session :

89 

90```bash theme={null}

91claude --remote-control "My Project"

92```

93 

94Vous obtenez ainsi une session interactive complète dans votre terminal, que vous pouvez également contrôler depuis claude.ai ou l'application Claude. Contrairement à `claude remote-control` (mode serveur), vous pouvez saisir des messages localement pendant que la session est également disponible à distance.

95 

96**Depuis une session existante**

97 

98Si vous êtes déjà dans une session Claude Code et souhaitez la poursuivre à distance, utilisez la commande `/remote-control` (ou `/rc`) :

99 

100```text theme={null}

101/remote-control

102```

103 

104Passez un nom en argument pour définir un titre de session personnalisé :

105 

106```text theme={null}

107/remote-control My Project

108```

109 

110Cela démarre une session Remote Control qui reprend l'historique de votre conversation actuelle.

111 

112Tant que vous n'avez pas accepté la confirmation unique de Remote Control, une boîte de dialogue apparaît avant que `/remote-control` ne se connecte. Sélectionnez **Enable Remote Control** pour accepter et vous connecter. Si vous sélectionnez **Never mind** ou appuyez sur Esc, Claude Code ne se connecte pas et vous pose à nouveau la question la prochaine fois que vous exécutez `/remote-control`.

113 

114Le flag `--verbose` n'est pas disponible avec cette commande.

115 

116**VS Code**

117 

118Dans l'[extension VS Code de Claude Code](https://code.claude.com/docs/fr/vs-code.md), saisissez `/remote-control` ou `/rc` dans la zone de prompt.

119 

120```text theme={null}

121/remote-control

122```

123 

124Tant que Remote Control est activé, Claude Code affiche un indicateur **Remote Control** dans le pied de la zone de prompt. Une fois la session connectée, cliquez sur l'indicateur pour accéder directement à la session, ou retrouvez-la dans la liste des sessions sur [claude.ai/code](https://claude.ai/code). Claude Code publie également l'URL de la session dans la conversation. Pour vous déconnecter, exécutez à nouveau `/remote-control`.

125 

126Contrairement à la CLI, la commande VS Code n'accepte pas d'argument de nom et n'affiche pas de QR code. Le titre de la session est dérivé de l'historique de votre conversation ou de votre premier prompt.

127 

128**Application Desktop**

129 79 

130Dans une session locale de l'onglet Code de l'[application Claude Desktop](https://code.claude.com/docs/fr/desktop.md), saisissez `/remote-control` ou `/rc` dans la zone de prompt.80> [tab] Session interactive

81>

82> Pour démarrer une session interactive Claude Code normale avec Remote Control activé, utilisez le flag `--remote-control` (ou `--rc`) :

83>

84> ```bash theme={null}

85> claude --remote-control

86> ```

87>

88> Vous pouvez éventuellement passer un nom pour la session :

89>

90> ```bash theme={null}

91> claude --remote-control "My Project"

92> ```

93>

94> Vous obtenez ainsi une session interactive complète dans votre terminal, que vous pouvez également contrôler depuis claude.ai ou l'application Claude. Contrairement à `claude remote-control` (mode serveur), vous pouvez saisir des messages localement pendant que la session est également disponible à distance.

131 95 

132```text theme={null}96> [tab] Depuis une session existante

133/remote-control97>

134```98> Si vous êtes déjà dans une session Claude Code et souhaitez la poursuivre à distance, utilisez la commande `/remote-control` (ou `/rc`) :

99>

100> ```text theme={null}

101> /remote-control

102> ```

103>

104> Passez un nom en argument pour définir un titre de session personnalisé :

105>

106> ```text theme={null}

107> /remote-control My Project

108> ```

109>

110> Cela démarre une session Remote Control qui reprend l'historique de votre conversation actuelle.

111>

112> Tant que vous n'avez pas accepté la confirmation unique de Remote Control, une boîte de dialogue apparaît avant que `/remote-control` ne se connecte. Sélectionnez **Enable Remote Control** pour accepter et vous connecter. Si vous sélectionnez **Never mind** ou appuyez sur Esc, Claude Code ne se connecte pas et vous pose à nouveau la question la prochaine fois que vous exécutez `/remote-control`.

113>

114> Le flag `--verbose` n'est pas disponible avec cette commande.

135 115 

136Une fois la session connectée, retrouvez-la dans la liste des sessions sur [claude.ai/code](https://claude.ai/code). Pour vous déconnecter, exécutez à nouveau `/remote-control`.116> [tab] VS Code

117>

118> Dans l'[extension VS Code de Claude Code](https://code.claude.com/docs/fr/vs-code.md), saisissez `/remote-control` ou `/rc` dans la zone de prompt.

119>

120> ```text theme={null}

121> /remote-control

122> ```

123>

124> Tant que Remote Control est activé, Claude Code affiche un indicateur **Remote Control** dans le pied de la zone de prompt. Une fois la session connectée, cliquez sur l'indicateur pour accéder directement à la session, ou retrouvez-la dans la liste des sessions sur [claude.ai/code](https://claude.ai/code). Claude Code publie également l'URL de la session dans la conversation. Pour vous déconnecter, exécutez à nouveau `/remote-control`.

125>

126> Contrairement à la CLI, la commande VS Code n'accepte pas d'argument de nom et n'affiche pas de QR code. Le titre de la session est dérivé de l'historique de votre conversation ou de votre premier prompt.

137 127 

138Pour activer plutôt Remote Control par défaut pour toutes les sessions, consultez [Activer Remote Control pour toutes les sessions](#enable-remote-control-for-all-sessions).128> [tab] Application Desktop

129>

130> Dans une session locale de l'onglet Code de l'[application Claude Desktop](https://code.claude.com/docs/fr/desktop.md), saisissez `/remote-control` ou `/rc` dans la zone de prompt.

131>

132> ```text theme={null}

133> /remote-control

134> ```

135>

136> Une fois la session connectée, retrouvez-la dans la liste des sessions sur [claude.ai/code](https://claude.ai/code). Pour vous déconnecter, exécutez à nouveau `/remote-control`.

137>

138> Pour activer plutôt Remote Control par défaut pour toutes les sessions, consultez [Activer Remote Control pour toutes les sessions](#enable-remote-control-for-all-sessions).

139 139 

140### Vérifier l'état de la connexion140### Vérifier l'état de la connexion

141 141 


250>250>

251> Trusted Devices est actuellement en version bêta. Les fonctionnalités et les capacités peuvent évoluer à mesure que l'expérience est affinée.251> Trusted Devices est actuellement en version bêta. Les fonctionnalités et les capacités peuvent évoluer à mesure que l'expérience est affinée.

252>252>

253> Trusted Devices est disponible sur les plans Pro, Max, Team et Enterprise et est désactivé par défaut. Sur les plans Team et Enterprise, un propriétaire l'active pour l'organisation. Sur les plans Pro et Max, vous activez vous-même **Require trusted devices** dans vos paramètres, sur la page Cowork ou Account.253> Trusted Devices est disponible sur les plans Pro, Max, Ultra, Team et Enterprise et est désactivé par défaut. Sur les plans Team et Enterprise, un propriétaire l'active pour l'organisation. Sur les plans Pro, Max et Ultra, vous activez vous-même **Require trusted devices** dans vos paramètres, sur la page Cowork ou Account.

254 254 

255Trusted Devices exige que chaque membre de votre organisation, ou vous seul sur un plan Pro ou Max, vérifie son appareil avant de pouvoir afficher ou contrôler les sessions Remote Control depuis claude.ai, les applications Claude mobiles ou Claude Desktop. Il lie l'accès à Remote Control à un appareil connu et à une authentification récente, pas seulement à un compte connecté.255Trusted Devices exige un appareil vérifié avant que vous puissiez afficher ou contrôler les sessions Remote Control depuis claude.ai, les applications Claude mobiles ou Claude Desktop. Cette exigence s'applique à chaque membre de votre organisation, ou à vous seul sur un plan Pro, Max ou Ultra. Il lie l'accès à Remote Control à un appareil connu et à une authentification récente, pas seulement à un compte connecté.

256 256 

257Lorsque le paramètre est activé, l'interaction avec une session Remote Control nécessite les deux éléments suivants :257Lorsque le paramètre est activé, l'interaction avec une session Remote Control nécessite les deux éléments suivants :

258 258 


310| [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) | Envoyer une tâche depuis l'application mobile Claude | Votre machine (Desktop) | [Associer l'application mobile à Desktop](https://support.claude.com/en/articles/13947068) | Déléguer du travail quand vous êtes absent, configuration minimale |310| [Dispatch](https://code.claude.com/docs/fr/desktop.md#sessions-from-dispatch) | Envoyer une tâche depuis l'application mobile Claude | Votre machine (Desktop) | [Associer l'application mobile à Desktop](https://support.claude.com/en/articles/13947068) | Déléguer du travail quand vous êtes absent, configuration minimale |

311| [Remote Control](https://code.claude.com/docs/fr/remote-control.md) | Piloter une session en cours depuis [claude.ai/code](https://claude.ai/code) ou l'application mobile Claude | Votre machine (CLI, Desktop ou VS Code) | Exécuter [`claude remote-control` ou `/remote-control`](https://code.claude.com/docs/fr/remote-control#start-a-remote-control-session) | Diriger le travail en cours depuis un autre appareil |311| [Remote Control](https://code.claude.com/docs/fr/remote-control.md) | Piloter une session en cours depuis [claude.ai/code](https://claude.ai/code) ou l'application mobile Claude | Votre machine (CLI, Desktop ou VS Code) | Exécuter [`claude remote-control` ou `/remote-control`](https://code.claude.com/docs/fr/remote-control#start-a-remote-control-session) | Diriger le travail en cours depuis un autre appareil |

312| [Channels](https://code.claude.com/docs/fr/channels.md) | Envoyer des événements depuis une application de chat comme Telegram ou Discord, ou votre propre serveur | Votre machine (CLI) | [Installer un plugin de canal](https://code.claude.com/docs/fr/channels.md#quickstart) ou [créer le vôtre](https://code.claude.com/docs/fr/channels-reference.md) | Réagir à des événements externes comme les échecs CI ou les messages de chat |312| [Channels](https://code.claude.com/docs/fr/channels.md) | Envoyer des événements depuis une application de chat comme Telegram ou Discord, ou votre propre serveur | Votre machine (CLI) | [Installer un plugin de canal](https://code.claude.com/docs/fr/channels.md#quickstart) ou [créer le vôtre](https://code.claude.com/docs/fr/channels-reference.md) | Réagir à des événements externes comme les échecs CI ou les messages de chat |

313| [Slack](https://code.claude.com/docs/fr/slack.md) | Mentionner `@Claude` dans un canal d'équipe | Cloud Anthropic | [Installer l'application Slack](https://code.claude.com/docs/fr/slack.md#setting-up-claude-code-in-slack) avec [Claude Code sur le web](https://code.claude.com/docs/fr/claude-code-on-the-web.md) activé, sur les plans Pro et Max | PRs et révisions depuis le chat d'équipe |313| [Slack](https://code.claude.com/docs/fr/slack.md) | Mentionner `@Claude` dans un canal d'équipe | Cloud Anthropic | [Installer l'application Slack](https://code.claude.com/docs/fr/slack.md#setting-up-claude-code-in-slack) avec [Claude Code sur le web](https://code.claude.com/docs/fr/claude-code-on-the-web.md) activé, sur les plans Pro, Max et Ultra | PRs et révisions depuis le chat d'équipe |

314| [Environnements auto-hébergés](https://code.claude.com/docs/fr/self-hosted-environments) | Démarrer une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) et choisir l'environnement de votre organisation | Infrastructure de votre organisation | [Déployer des runners](https://code.claude.com/docs/fr/self-hosted-environments-quickstart.md), sur les plans Team et Enterprise | Sessions cloud qui doivent s'exécuter dans votre réseau |314| [Environnements auto-hébergés](https://code.claude.com/docs/fr/self-hosted-environments) | Démarrer une [session cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) et choisir l'environnement de votre organisation | Infrastructure de votre organisation | [Déployer des runners](https://code.claude.com/docs/fr/self-hosted-environments-quickstart.md), sur les plans Team et Enterprise | Sessions cloud qui doivent s'exécuter dans votre réseau |

315| [Tâches planifiées](https://code.claude.com/docs/fr/scheduled-tasks.md) | Définir un calendrier | [CLI](https://code.claude.com/docs/fr/scheduled-tasks.md), [Desktop](https://code.claude.com/docs/fr/desktop-scheduled-tasks.md), ou [cloud](https://code.claude.com/docs/fr/routines.md) | Choisir une fréquence | Automatisation récurrente comme les révisions quotidiennes |315| [Tâches planifiées](https://code.claude.com/docs/fr/scheduled-tasks.md) | Définir un calendrier | [CLI](https://code.claude.com/docs/fr/scheduled-tasks.md), [Desktop](https://code.claude.com/docs/fr/desktop-scheduled-tasks.md), ou [cloud](https://code.claude.com/docs/fr/routines.md) | Choisir une fréquence | Automatisation récurrente comme les révisions quotidiennes |

316 316 


444Une [variable d'environnement](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching) qui désactive l'évaluation des feature-flags est définie, et le message complet nomme la variable que Claude Code a trouvée. Sur les versions antérieures à 2.1.154, la même configuration produit « Remote Control is not yet enabled for your account » à la place. Ce qu'il faut faire dépend de la variable que le message nomme :444Une [variable d'environnement](https://code.claude.com/docs/fr/env-vars.md#features-that-need-feature-flag-fetching) qui désactive l'évaluation des feature-flags est définie, et le message complet nomme la variable que Claude Code a trouvée. Sur les versions antérieures à 2.1.154, la même configuration produit « Remote Control is not yet enabled for your account » à la place. Ce qu'il faut faire dépend de la variable que le message nomme :

445 445 

446* **`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` ou `DISABLE_GROWTHBOOK`** : supprimez la variable partout où elle est définie, dans votre environnement shell ou dans le bloc `env` d'un [fichier `settings.json`](https://code.claude.com/docs/fr/settings-reference#all-settings).446* **`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` ou `DISABLE_GROWTHBOOK`** : supprimez la variable partout où elle est définie, dans votre environnement shell ou dans le bloc `env` d'un [fichier `settings.json`](https://code.claude.com/docs/fr/settings-reference#all-settings).

447* **`DISABLE_TELEMETRY` ou `DO_NOT_TRACK`** : sur un plan Pro, Max, Team ou Enterprise avec `DISABLE_GROWTHBOOK` non défini, ces variables laissent Remote Control disponible sauf si votre organisation exige [Trusted Devices](#trusted-devices). Si c'est le cas, supprimez la variable partout où elle est définie pour utiliser Remote Control. De la v2.1.154 à la v2.1.282, vous voyez ce message lorsque l'une ou l'autre variable est définie ; mettez donc à jour Claude Code vers une version qui satisfait à l'[exigence relative à ces variables](#requirements).447* **`DISABLE_TELEMETRY` ou `DO_NOT_TRACK`** : sur un plan Pro, Max, Ultra, Team ou Enterprise avec `DISABLE_GROWTHBOOK` non défini, Remote Control reste disponible lorsque ces variables sont définies, sauf si votre organisation exige [Trusted Devices](#trusted-devices). Si c'est le cas, supprimez la variable partout où elle est définie pour utiliser Remote Control. De la v2.1.154 à la v2.1.282, vous voyez ce message lorsque l'une ou l'autre variable est définie ; mettez donc à jour Claude Code vers une version qui satisfait à l'[exigence relative à ces variables](#requirements).

448 448 

449### « Remote Control is only available when using Claude via api.anthropic.com »449### « Remote Control is only available when using Claude via api.anthropic.com »

450 450 


457Une politique bloque Remote Control. Vérifiez ces causes dans l'ordre :457Une politique bloque Remote Control. Vérifiez ces causes dans l'ordre :

458 458 

459* **L'erreur mentionne `disableRemoteControl`** : votre administrateur informatique a désactivé Remote Control sur cet appareil via [paramètres gérés](https://code.claude.com/docs/fr/managed-settings.md), indépendamment du bouton bascule à l'échelle de l'organisation et de la façon dont vous êtes connecté.459* **L'erreur mentionne `disableRemoteControl`** : votre administrateur informatique a désactivé Remote Control sur cet appareil via [paramètres gérés](https://code.claude.com/docs/fr/managed-settings.md), indépendamment du bouton bascule à l'échelle de l'organisation et de la façon dont vous êtes connecté.

460* **Votre plan claude.ai est Pro ou Max** : Claude Code est toujours connecté sous une organisation Team ou Enterprise d'une connexion antérieure, il vérifie donc la politique Remote Control de cette organisation. Exécutez `/status` pour voir quel plan et quelle organisation votre connexion utilise. Exécutez `claude auth logout` puis `claude auth login` pour vous reconnecter sous votre plan actuel.460* **Votre plan claude.ai est Pro, Max ou Ultra** : Claude Code est toujours connecté sous une organisation Team ou Enterprise d'une connexion antérieure, il vérifie donc la politique Remote Control de cette organisation. Exécutez `/status` pour voir quel plan et quelle organisation votre connexion utilise. Exécutez `claude auth logout` puis `claude auth login` pour vous reconnecter sous votre plan actuel.

461* **Le message ne dit pas de contacter votre administrateur d'organisation** : la [configuration HIPAA](https://code.claude.com/docs/fr/hipaa-setup.md) est appliquée à votre organisation, ce qui désactive Remote Control. Pour le confirmer, exécutez `/status` et recherchez `HIPAA` sur la ligne `Organization configuration`. Un propriétaire voit le bouton bascule **Remote Control** grisé dans les [paramètres d'administration](https://claude.ai/admin-settings/claude-code) et ne peut pas l'activer. Si vous avez des questions sur la configuration, adressez-vous à un propriétaire, qui peut contacter l'équipe de compte Anthropic de votre organisation. Avant la v2.1.267, ce cas affichait « Remote Control isn't available for your organization due to its compliance policy » à la place.461* **Le message ne dit pas de contacter votre administrateur d'organisation** : la [configuration HIPAA](https://code.claude.com/docs/fr/hipaa-setup.md) est appliquée à votre organisation, ce qui désactive Remote Control. Pour le confirmer, exécutez `/status` et recherchez `HIPAA` sur la ligne `Organization configuration`. Un propriétaire voit le bouton bascule **Remote Control** grisé dans les [paramètres d'administration](https://claude.ai/admin-settings/claude-code) et ne peut pas l'activer. Si vous avez des questions sur la configuration, adressez-vous à un propriétaire, qui peut contacter l'équipe de compte Anthropic de votre organisation. Avant la v2.1.267, ce cas affichait « Remote Control isn't available for your organization due to its compliance policy » à la place.

462* **Remote Control fonctionne pour d'autres membres de votre organisation, mais pas pour vous** : si votre organisation Enterprise gère votre accès avec des [rôles personnalisés](https://support.claude.com/en/articles/13930452), vos rôles peuvent en être la cause. Remote Control nécessite à la fois la permission des sessions cloud et la permission **Claude Code remote control**. Demandez à un propriétaire de vérifier si vos rôles incluent les deux et d'ajouter ce qui manque dans [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).462* **Remote Control fonctionne pour d'autres membres de votre organisation, mais pas pour vous** : si votre organisation Enterprise gère votre accès avec des [rôles personnalisés](https://support.claude.com/en/articles/13930452), vos rôles peuvent en être la cause. Remote Control nécessite à la fois la permission des sessions cloud et la permission **Claude Code remote control**. Demandez à un propriétaire de vérifier si vos rôles incluent les deux et d'ajouter ce qui manque dans [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).

463* **Sinon, un propriétaire ne l'a pas activé pour votre organisation** : Remote Control est désactivé par défaut sur les plans Team et Enterprise. Un propriétaire peut l'activer sur [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) en activant le bouton bascule **Remote Control**. Ce bouton bascule est un paramètre d'organisation côté serveur.463* **Sinon, un propriétaire ne l'a pas activé pour votre organisation** : Remote Control est désactivé par défaut sur les plans Team et Enterprise. Un propriétaire peut l'activer sur [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) en activant le bouton bascule **Remote Control**. Ce bouton bascule est un paramètre d'organisation côté serveur.

routines.md +11 −11

Details

25* Une tâche avec uniquement un déclencheur API s'exécute lorsque vous appelez son endpoint.25* Une tâche avec uniquement un déclencheur API s'exécute lorsque vous appelez son endpoint.

26* Une tâche avec uniquement un déclencheur GitHub s'exécute lorsqu'un événement de dépôt correspondant se produit.26* Une tâche avec uniquement un déclencheur GitHub s'exécute lorsqu'un événement de dépôt correspondant se produit.

27 27 

28Les tâches planifiées sont disponibles sur les plans Pro, Max, Team et Enterprise. Créez-les et gérez-les sur [claude.ai/code/routines](https://claude.ai/code/routines), ou à partir de la CLI avec `/schedule`. L'ancien nom, routines, [apparaît encore](#where-the-name-routines-still-appears).28Les tâches planifiées sont disponibles sur les plans Pro, Max, Ultra, Team et Enterprise. Créez-les et gérez-les sur [claude.ai/code/routines](https://claude.ai/code/routines), ou à partir de la CLI avec `/schedule`. L'ancien nom, routines, [apparaît encore](#where-the-name-routines-still-appears).

29 29 

30> [!NOTE]30> [!NOTE]

31>31>


85 85 

86Dans la ligne **Trigger**, choisissez comment la tâche démarre. Pour combiner plusieurs déclencheurs, cliquez sur **+** à la fin de la ligne.86Dans la ligne **Trigger**, choisissez comment la tâche démarre. Pour combiner plusieurs déclencheurs, cliquez sur **+** à la fin de la ligne.

87 87 

88**Schedule**88> [tab] Schedule

89 89>

90Choisissez une fréquence prédéfinie pour une exécution récurrente. Consultez [Ajouter un déclencheur de planification](#add-a-schedule-trigger) pour la gestion des fuseaux horaires, les démarrages tardifs, les intervalles cron personnalisés et les exécutions ponctuelles.90> Choisissez une fréquence prédéfinie pour une exécution récurrente. Consultez [Ajouter un déclencheur de planification](#add-a-schedule-trigger) pour la gestion des fuseaux horaires, les démarrages tardifs, les intervalles cron personnalisés et les exécutions ponctuelles.

91 

92**GitHub event**

93 

94Sélectionnez le dépôt, l'événement auquel réagir et des filtres facultatifs. Consultez [Ajouter un déclencheur GitHub](#add-a-github-trigger) pour la liste complète des événements pris en charge et des champs de filtre.

95 91 

96**API**92> [tab] GitHub event

93>

94> Sélectionnez le dépôt, l'événement auquel réagir et des filtres facultatifs. Consultez [Ajouter un déclencheur GitHub](#add-a-github-trigger) pour la liste complète des événements pris en charge et des champs de filtre.

97 95 

98Sélectionnez **API** ici. Lorsque vous cliquez sur **Create**, la boîte de dialogue **API token** affiche le jeton une seule fois, copiez-le donc avant de fermer la boîte de dialogue. Consultez [Ajouter un déclencheur API](#add-an-api-trigger) pour copier l'URL ou générer un nouveau jeton.96> [tab] API

97>

98> Sélectionnez **API** ici. Lorsque vous cliquez sur **Create**, la boîte de dialogue **API token** affiche le jeton une seule fois, copiez-le donc avant de fermer la boîte de dialogue. Consultez [Ajouter un déclencheur API](#add-an-api-trigger) pour copier l'URL ou générer un nouveau jeton.

99 99 

100**4. Sélectionner les dépôts**100**4. Sélectionner les dépôts**

101 101 


502* Un propriétaire a [désactivé les tâches planifiées](#routines-are-disabled-by-your-organizations-policy) pour votre organisation Team ou Enterprise. Avant la v2.1.227, la commande apparaissait toujours dans ce cas, et claude.ai rejetait la tâche lorsque Claude tentait de la créer ou de l'exécuter502* Un propriétaire a [désactivé les tâches planifiées](#routines-are-disabled-by-your-organizations-policy) pour votre organisation Team ou Enterprise. Avant la v2.1.227, la commande apparaissait toujours dans ce cas, et claude.ai rejetait la tâche lorsque Claude tentait de la créer ou de l'exécuter

503* Votre organisation Enterprise gère votre accès avec des [rôles personnalisés](https://support.claude.com/en/articles/13930452), et aucun de vos rôles n'inclut la permission des tâches planifiées sous **Remote sessions**. Demandez à un propriétaire de l'ajouter à l'un de vos rôles503* Votre organisation Enterprise gère votre accès avec des [rôles personnalisés](https://support.claude.com/en/articles/13930452), et aucun de vos rôles n'inclut la permission des tâches planifiées sous **Remote sessions**. Demandez à un propriétaire de l'ajouter à l'un de vos rôles

504 504 

505Si la cause est votre connexion à la CLI ou le fait d'être dans une session cloud, vous pouvez tout de même créer et gérer des tâches planifiées sur [claude.ai/code/routines](https://claude.ai/code/routines). Vous y avez besoin d'un compte Pro, Max, Team ou Enterprise. Si les tâches planifiées ou les sessions cloud sont désactivées pour votre organisation ou absentes de vos rôles, vous ne pouvez pas non plus les créer sur le web.505Si la cause est votre connexion à la CLI ou le fait d'être dans une session cloud, vous pouvez tout de même créer et gérer des tâches planifiées sur [claude.ai/code/routines](https://claude.ai/code/routines). Vous y avez besoin d'un compte Pro, Max, Ultra, Team ou Enterprise. Si les tâches planifiées ou les sessions cloud sont désactivées pour votre organisation ou absentes de vos rôles, vous ne pouvez pas non plus les créer sur le web.

506 506 

507### "Routines are disabled by your organization's policy"507### "Routines are disabled by your organization's policy"

508 508 

sandboxing.md +12 −12

Details

119 119 

120Installez-les avec le gestionnaire de paquets de votre distribution :120Installez-les avec le gestionnaire de paquets de votre distribution :

121 121 

122**Ubuntu/Debian**122> [tab] Ubuntu/Debian

123 123>

124```bash theme={null}124> ```bash theme={null}

125sudo apt-get install bubblewrap socat125> sudo apt-get install bubblewrap socat

126```126> ```

127 

128**Fedora**

129 127 

130```bash theme={null}128> [tab] Fedora

131sudo dnf install bubblewrap socat129>

132```130> ```bash theme={null}

131> sudo dnf install bubblewrap socat

132> ```

133 133 

134Lorsqu'une dépendance est manquante, l'onglet Dependencies de `/sandbox` indique lesquels parmi `ripgrep`, `bubblewrap`, `socat` et le filtre seccomp manquent sur votre plateforme. Si vous ne voyez pas cet onglet après l'installation et le redémarrage de Claude Code, toutes les dépendances sont présentes.134Lorsqu'une dépendance est manquante, l'onglet Dependencies de `/sandbox` indique lesquels parmi `ripgrep`, `bubblewrap`, `socat` et le filtre seccomp manquent sur votre plateforme. Si vous ne voyez pas cet onglet après l'installation et le redémarrage de Claude Code, toutes les dépendances sont présentes.

135 135 


137 137 

138Lorsqu'une dépendance requise est manquante, l'onglet Dependencies est le seul onglet affiché jusqu'à ce que vous l'installiez. Lorsque seul le filtre seccomp facultatif est absent, l'onglet Dependencies apparaît à côté des autres onglets. La vérification des dépendances s'exécute au démarrage ; redémarrez donc Claude Code après avoir installé des paquets pour que `/sandbox` les détecte.138Lorsqu'une dépendance requise est manquante, l'onglet Dependencies est le seul onglet affiché jusqu'à ce que vous l'installiez. Lorsque seul le filtre seccomp facultatif est absent, l'onglet Dependencies apparaît à côté des autres onglets. La vérification des dépendances s'exécute au démarrage ; redémarrez donc Claude Code après avoir installé des paquets pour que `/sandbox` les détecte.

139 139 

140> **Ubuntu 24.04 et versions ultérieures : autoriser bubblewrap à créer des espaces de noms utilisateur**140> [accordion] Ubuntu 24.04 et versions ultérieures : autoriser bubblewrap à créer des espaces de noms utilisateur

141>141>

142> Sous Ubuntu 24.04 et versions ultérieures, la politique AppArmor par défaut empêche bubblewrap de créer les espaces de noms utilisateur dont il a besoin pour l'isolation.142> Sous Ubuntu 24.04 et versions ultérieures, la politique AppArmor par défaut empêche bubblewrap de créer les espaces de noms utilisateur dont il a besoin pour l'isolation.

143>143>


161> sudo systemctl reload apparmor161> sudo systemctl reload apparmor

162> ```162> ```

163 163 

164> **Remarques sur WSL2**164> [accordion] Remarques sur WSL2

165>165>

166> Vérifiez votre version de WSL avec `wsl -l -v` depuis PowerShell. Si vous voyez `Sandboxing requires WSL2`, votre distribution s'exécute sous WSL1. Passez-la à WSL2 ou exécutez Claude Code sans sandboxing.166> Vérifiez votre version de WSL avec `wsl -l -v` depuis PowerShell. Si vous voyez `Sandboxing requires WSL2`, votre distribution s'exécute sous WSL1. Passez-la à WSL2 ou exécutez Claude Code sans sandboxing.

167>167>

security.md +1 −1

Details

53* Accès restreint aux données de session utilisateur53* Accès restreint aux données de session utilisateur

54* Contrôle utilisateur sur les préférences de formation des données. Les utilisateurs consommateurs peuvent modifier leurs [paramètres de confidentialité](https://claude.ai/settings/privacy) à tout moment.54* Contrôle utilisateur sur les préférences de formation des données. Les utilisateurs consommateurs peuvent modifier leurs [paramètres de confidentialité](https://claude.ai/settings/privacy) à tout moment.

55 55 

56Pour plus de détails, veuillez consulter nos [Conditions commerciales](https://www.anthropic.com/legal/commercial-terms) (pour les utilisateurs Team, Enterprise et API) ou [Conditions pour les consommateurs](https://www.anthropic.com/legal/consumer-terms) (pour les utilisateurs Free, Pro et Max) et [Politique de confidentialité](https://www.anthropic.com/legal/privacy).56Pour plus de détails, veuillez consulter nos [Conditions commerciales](https://www.anthropic.com/legal/commercial-terms) (pour les utilisateurs Team, Enterprise et API) ou [Conditions pour les consommateurs](https://www.anthropic.com/legal/consumer-terms) (pour les utilisateurs Free, Pro, Max et Ultra) et [Politique de confidentialité](https://www.anthropic.com/legal/privacy).

57 57 

58### Protections supplémentaires58### Protections supplémentaires

59 59 

Details

14 14 

15Dans un environnement auto-hébergé, ces mêmes sessions s'exécutent à l'intérieur de votre réseau. L'expérience développeur est par ailleurs la même, à part les différences décrites dans [Disponibilité et limitations](#availability-and-limitations) et les [problèmes connus](https://code.claude.com/docs/fr/self-hosted-environments-deploy.md#known-issues-and-limitations) de la page de déploiement.15Dans un environnement auto-hébergé, ces mêmes sessions s'exécutent à l'intérieur de votre réseau. L'expérience développeur est par ailleurs la même, à part les différences décrites dans [Disponibilité et limitations](#availability-and-limitations) et les [problèmes connus](https://code.claude.com/docs/fr/self-hosted-environments-deploy.md#known-issues-and-limitations) de la page de déploiement.

16 16 

17Si votre équipe n'utilise pas les sessions cloud, il n'y a rien à configurer ici : les sessions dans un terminal ou un IDE s'exécutent toujours sur la machine du développeur. Si vous voulez exécuter Claude Code sur votre propre machine toujours active et la piloter à partir d'autres appareils, utilisez [Contrôle à distance](https://code.claude.com/docs/fr/remote-control.md), qui est également disponible sur les plans Pro et Max. Quand vous êtes prêt à configurer, allez directement au [démarrage rapide](https://code.claude.com/docs/fr/self-hosted-environments-quickstart.md) ; pour examiner d'abord la posture de sécurité, commencez par [Déployer en production](https://code.claude.com/docs/fr/self-hosted-environments-deploy.md). Le reste de cette page explique comment fonctionne l'auto-hébergement et quand le choisir.17* Si votre équipe n'utilise pas les sessions cloud, il n'y a rien à configurer ici : les sessions dans un terminal ou un IDE s'exécutent toujours sur la machine du développeur

18* Pour exécuter Claude Code sur votre propre machine toujours active et la piloter à partir d'autres appareils, utilisez [Remote Control](https://code.claude.com/docs/fr/remote-control.md), qui est également disponible sur les plans Pro, Max et Ultra

19* Quand vous êtes prêt à configurer, allez directement au [démarrage rapide](https://code.claude.com/docs/fr/self-hosted-environments-quickstart.md) ; pour examiner d'abord la posture de sécurité, commencez par [Déployer en production](https://code.claude.com/docs/fr/self-hosted-environments-deploy.md)

20 

21Pour découvrir comment fonctionne l'auto-hébergement et quand le choisir, lisez [Fonctionnement des environnements auto-hébergés](#how-self-hosted-environments-work) et [Pourquoi auto-héberger](#why-self-host).

18 22 

19## Comment fonctionnent les environnements auto-hébergés23## Comment fonctionnent les environnements auto-hébergés

20 24 

Details

531 531 

532Démarrez ces runners avec [`--confine-repo-settings enforce`](https://code.claude.com/docs/fr/self-hosted-environments-deploy#harden-your-deployment). Ce mode refuse les sessions sur les dépôts dont il signale les paramètres commités ; exécutez donc d'abord le mode par défaut `warn` et corrigez ce qu'il consigne dans les logs.532Démarrez ces runners avec [`--confine-repo-settings enforce`](https://code.claude.com/docs/fr/self-hosted-environments-deploy#harden-your-deployment). Ce mode refuse les sessions sur les dépôts dont il signale les paramètres commités ; exécutez donc d'abord le mode par défaut `warn` et corrigez ce qu'il consigne dans les logs.

533 533 

534**Amazon Bedrock**534> [tab] Amazon Bedrock

535 535>

536Remplacez la région par la vôtre :536> Remplacez la région par la vôtre :

537 537>

538```bash theme={null}538> ```bash theme={null}

539export CLAUDE_CODE_USE_BEDROCK=1539> export CLAUDE_CODE_USE_BEDROCK=1

540export AWS_REGION=us-east-1540> export AWS_REGION=us-east-1

541```541> ```

542 542>

543Pour savoir comment Claude Code détermine la région, consultez [Configurer Claude Code](https://code.claude.com/docs/fr/amazon-bedrock.md#3-configure-claude-code). Pour connaître le préfixe de profil d'inférence que Claude Code utilise pour votre région, consultez [Préfixes des profils d'inférence inter-régions](https://code.claude.com/docs/fr/amazon-bedrock.md#cross-region-inference-profile-prefixes).543> Pour savoir comment Claude Code détermine la région, consultez [Configurer Claude Code](https://code.claude.com/docs/fr/amazon-bedrock.md#3-configure-claude-code). Pour connaître le préfixe de profil d'inférence que Claude Code utilise pour votre région, consultez [Préfixes des profils d'inférence inter-régions](https://code.claude.com/docs/fr/amazon-bedrock.md#cross-region-inference-profile-prefixes).

544 

545**Agent Platform de Google Cloud**

546 

547Remplacez la région et l'ID de projet par les vôtres :

548 

549```bash theme={null}

550export CLAUDE_CODE_USE_VERTEX=1

551export CLOUD_ML_REGION=global

552export ANTHROPIC_VERTEX_PROJECT_ID=YOUR-PROJECT-ID

553```

554 544 

555Pour choisir une région, consultez [Configuration de la région](https://code.claude.com/docs/fr/google-vertex-ai.md#region-configuration).545> [tab] Agent Platform de Google Cloud

546>

547> Remplacez la région et l'ID de projet par les vôtres :

548>

549> ```bash theme={null}

550> export CLAUDE_CODE_USE_VERTEX=1

551> export CLOUD_ML_REGION=global

552> export ANTHROPIC_VERTEX_PROJECT_ID=YOUR-PROJECT-ID

553> ```

554>

555> Pour choisir une région, consultez [Configuration de la région](https://code.claude.com/docs/fr/google-vertex-ai.md#region-configuration).

556 556 

557**4. Vérifier que les variables ont atteint une session**557**4. Vérifier que les variables ont atteint une session**

558 558 

Details

90 90 

91Les vérifications correspondent directement aux bibliothèques JWT standard. Les exemples ci-dessous implémentent la séquence complète en Node.js avec [`jose`](https://www.npmjs.com/package/jose), qui gère la récupération du JWKS, la mise en cache et la sélection du `kid`, et en Python avec [`PyJWT`](https://pyjwt.readthedocs.io/) et son client JWKS intégré.91Les vérifications correspondent directement aux bibliothèques JWT standard. Les exemples ci-dessous implémentent la séquence complète en Node.js avec [`jose`](https://www.npmjs.com/package/jose), qui gère la récupération du JWKS, la mise en cache et la sélection du `kid`, et en Python avec [`PyJWT`](https://pyjwt.readthedocs.io/) et son client JWKS intégré.

92 92 

93**Node.js (jose)**93> [tab] Node.js (jose)

94 94>

95```typescript theme={null}95> ```typescript theme={null}

96import { createRemoteJWKSet, jwtVerify } from "jose";96> import { createRemoteJWKSet, jwtVerify } from "jose";

97 97>

98const JWKS = createRemoteJWKSet(98> const JWKS = createRemoteJWKSet(

99 new URL("https://api.anthropic.com/v1/code/.well-known/jwks.json")99> new URL("https://api.anthropic.com/v1/code/.well-known/jwks.json")

100);100> );

101 101>

102const PREFIX = "sk-ant-cc-";102> const PREFIX = "sk-ant-cc-";

103const EXPECTED_POOL_ID = "ccpool_...";103> const EXPECTED_POOL_ID = "ccpool_...";

104 104>

105export async function verifySessionToken(raw: string) {105> export async function verifySessionToken(raw: string) {

106 if (!raw.startsWith(PREFIX)) {106> if (!raw.startsWith(PREFIX)) {

107 throw new Error("not a self-hosted runner session token");107> throw new Error("not a self-hosted runner session token");

108 }108> }

109 const jwt = raw.slice(PREFIX.length);109> const jwt = raw.slice(PREFIX.length);

110 110>

111 const { payload } = await jwtVerify(jwt, JWKS, {111> const { payload } = await jwtVerify(jwt, JWKS, {

112 issuer: "ccr",112> issuer: "ccr",

113 audience: EXPECTED_POOL_ID,113> audience: EXPECTED_POOL_ID,

114 algorithms: ["ES256"],114> algorithms: ["ES256"],

115 });115> });

116 116>

117 if (payload["ccr:role"] !== "session_worker") {117> if (payload["ccr:role"] !== "session_worker") {

118 throw new Error("token is not a session_worker token");118> throw new Error("token is not a session_worker token");

119 }119> }

120 120>

121 const act = payload.act as { email?: string; sub?: string };121> const act = payload.act as { email?: string; sub?: string };

122 return {122> return {

123 sessionId: payload["ccr:session_id"] as string,123> sessionId: payload["ccr:session_id"] as string,

124 poolId: payload["ccr:pool_id"] as string,124> poolId: payload["ccr:pool_id"] as string,

125 orgId: payload["ccr:org_id"] as string,125> orgId: payload["ccr:org_id"] as string,

126 creatorEmail: act?.email,126> creatorEmail: act?.email,

127 creatorSub: act?.sub,127> creatorSub: act?.sub,

128 };128> };

129}129> }

130```130> ```

131 131 

132**Python (PyJWT)**132> [tab] Python (PyJWT)

133 133>

134```python theme={null}134> ```python theme={null}

135import jwt135> import jwt

136from jwt import PyJWKClient136> from jwt import PyJWKClient

137 137>

138JWKS_URL = "https://api.anthropic.com/v1/code/.well-known/jwks.json"138> JWKS_URL = "https://api.anthropic.com/v1/code/.well-known/jwks.json"

139PREFIX = "sk-ant-cc-"139> PREFIX = "sk-ant-cc-"

140EXPECTED_POOL_ID = "ccpool_..."140> EXPECTED_POOL_ID = "ccpool_..."

141 141>

142jwks = PyJWKClient(JWKS_URL)142> jwks = PyJWKClient(JWKS_URL)

143 143>

144 144>

145def verify_session_token(raw: str) -> dict:145> def verify_session_token(raw: str) -> dict:

146 if not raw.startswith(PREFIX):146> if not raw.startswith(PREFIX):

147 raise ValueError("not a self-hosted runner session token")147> raise ValueError("not a self-hosted runner session token")

148 token = raw.removeprefix(PREFIX)148> token = raw.removeprefix(PREFIX)

149 149>

150 signing_key = jwks.get_signing_key_from_jwt(token)150> signing_key = jwks.get_signing_key_from_jwt(token)

151 payload = jwt.decode(151> payload = jwt.decode(

152 token,152> token,

153 signing_key.key,153> signing_key.key,

154 algorithms=["ES256"],154> algorithms=["ES256"],

155 issuer="ccr",155> issuer="ccr",

156 audience=EXPECTED_POOL_ID,156> audience=EXPECTED_POOL_ID,

157 )157> )

158 158>

159 if payload.get("ccr:role") != "session_worker":159> if payload.get("ccr:role") != "session_worker":

160 raise ValueError("token is not a session_worker token")160> raise ValueError("token is not a session_worker token")

161 161>

162 act = payload.get("act") or {}162> act = payload.get("act") or {}

163 return {163> return {

164 "session_id": payload["ccr:session_id"],164> "session_id": payload["ccr:session_id"],

165 "pool_id": payload["ccr:pool_id"],165> "pool_id": payload["ccr:pool_id"],

166 "org_id": payload["ccr:org_id"],166> "org_id": payload["ccr:org_id"],

167 "creator_email": act.get("email"),167> "creator_email": act.get("email"),

168 "creator_sub": act.get("sub"),168> "creator_sub": act.get("sub"),

169 }169> }

170```170> ```

171 171 

172### Vérifier le token à l'intérieur de la session172### Vérifier le token à l'intérieur de la session

173 173 

sessions.md +1 −1

Details

95 95 

96Si la boîte de dialogue « Resume this conversation? » s'affiche lorsque vous reprenez une session, son estimation correspond à la part de votre limite d'utilisation de 5 heures que la conversation enregistrée utiliserait à elle seule. L'estimation ne tient pas compte de ce que vous avez déjà utilisé.96Si la boîte de dialogue « Resume this conversation? » s'affiche lorsque vous reprenez une session, son estimation correspond à la part de votre limite d'utilisation de 5 heures que la conversation enregistrée utiliserait à elle seule. L'estimation ne tient pas compte de ce que vous avez déjà utilisé.

97 97 

98Sur les forfaits Pro et Max, la boîte de dialogue peut apparaître lorsque vous reprenez une longue conversation [après une longue pause](https://code.claude.com/docs/fr/prompt-caching.md#resuming-a-session) ou sur un modèle différent. L'utilisation estimée intervient lorsque vous envoyez votre premier message après **Resume**, et non lorsque vous sélectionnez cette option. Choisissez selon que votre prochaine tâche a encore besoin de la conversation enregistrée :98Sur les forfaits Pro, Max et Ultra, la boîte de dialogue peut apparaître lorsque vous reprenez une longue conversation [après une longue pause](https://code.claude.com/docs/fr/prompt-caching.md#resuming-a-session) ou sur un modèle différent. L'utilisation estimée intervient lorsque vous envoyez votre premier message après **Resume**, et non lorsque vous sélectionnez cette option. Choisissez selon que votre prochaine tâche a encore besoin de la conversation enregistrée :

99 99 

100* **Resume** : continuer à travailler dans la conversation enregistrée.100* **Resume** : continuer à travailler dans la conversation enregistrée.

101* **Start a new conversation** : passer à un travail qui ne nécessite pas la conversation enregistrée. Pour la rouvrir plus tard, exécutez [`/resume`](#use-the-session-picker) dans le prompt. L'estimation ne s'applique pas à votre premier message dans la nouvelle conversation. Si l'option indique que Claude peut consulter cette conversation, vous pouvez toujours faire référence au travail antérieur dans la nouvelle conversation.101* **Start a new conversation** : passer à un travail qui ne nécessite pas la conversation enregistrée. Pour la rouvrir plus tard, exécutez [`/resume`](#use-the-session-picker) dans le prompt. L'estimation ne s'applique pas à votre premier message dans la nouvelle conversation. Si l'option indique que Claude peut consulter cette conversation, vous pouvez toujours faire référence au travail antérieur dans la nouvelle conversation.

settings-example.md +325 −325

Details

20 20 

21Les paramètres personnels d'un développeur. Il choisit un modèle et un effort, ajuste le terminal et pré-approuve une commande en lecture seule et une lecture de fichier. Tout ce qui n'est pas listé conserve sa valeur par défaut. Un fichier comme celui-ci va dans `~/.claude/settings.json`, où il s'applique à chaque projet que vous ouvrez.21Les paramètres personnels d'un développeur. Il choisit un modèle et un effort, ajuste le terminal et pré-approuve une commande en lecture seule et une lecture de fichier. Tout ce qui n'est pas listé conserve sa valeur par défaut. Un fichier comme celui-ci va dans `~/.claude/settings.json`, où il s'applique à chaque projet que vous ouvrez.

22 22 

23**Fichier de paramètres copiable**23> [tab] Fichier de paramètres copiable

24 24>

25Enregistrez ceci sous `~/.claude/settings.json`. C'est du JSON valide sans commentaires, vous pouvez donc le coller tel quel et supprimer les clés que vous ne voulez pas.25> Enregistrez ceci sous `~/.claude/settings.json`. C'est du JSON valide sans commentaires, vous pouvez donc le coller tel quel et supprimer les clés que vous ne voulez pas.

26 26>

27```json ~/.claude/settings.json theme={null}27> ```json ~/.claude/settings.json theme={null}

28{28> {

29 "model": "claude-sonnet-5",29> "model": "claude-sonnet-5",

30 "modelSettings": {30> "modelSettings": {

31 "claude-sonnet-5": { "effortLevel": "xhigh" }31> "claude-sonnet-5": { "effortLevel": "xhigh" }

32 },32> },

33 "editorMode": "vim",33> "editorMode": "vim",

34 "theme": "light-daltonized",34> "theme": "light-daltonized",

35 "statusLine": {35> "statusLine": {

36 "type": "command",36> "type": "command",

37 "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",37> "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",

38 "padding": 238> "padding": 2

39 },39> },

40 "spinnerTipsEnabled": false,40> "spinnerTipsEnabled": false,

41 "preferredNotifChannel": "terminal_bell",41> "preferredNotifChannel": "terminal_bell",

42 "permissions": {42> "permissions": {

43 "allow": [43> "allow": [

44 "Bash(git diff *)",44> "Bash(git diff *)",

45 "Read(~/.zshrc)"45> "Read(~/.zshrc)"

46 ]46> ]

47 },47> },

48 "autoUpdatesChannel": "stable",48> "autoUpdatesChannel": "stable",

49 "cleanupPeriodDays": 2049> "cleanupPeriodDays": 20

50}50> }

51```51> ```

52 52 

53**Ce que chaque clé fait**53> [tab] Ce que chaque clé fait

54 54>

55Le même fichier avec un commentaire au-dessus de chaque clé. Lisez-le ici ; copiez à partir de l'autre onglet, car Claude Code n'accepte pas les commentaires dans un fichier de paramètres.55> Le même fichier avec un commentaire au-dessus de chaque clé. Lisez-le ici ; copiez à partir de l'autre onglet, car Claude Code n'accepte pas les commentaires dans un fichier de paramètres.

56 56>

57```jsonc ~/.claude/settings.json theme={null}57> ```jsonc ~/.claude/settings.json theme={null}

58{58> {

59 // Commencez chaque session sur Sonnet 559> // Commencez chaque session sur Sonnet 5

60 "model": "claude-sonnet-5",60> "model": "claude-sonnet-5",

61 // Exécutez Sonnet 5 au-dessus de son niveau élevé par défaut ; /effort enregistre un niveau par modèle, et --effort en définit un pour une seule session61> // Exécutez Sonnet 5 au-dessus de son niveau élevé par défaut ; /effort enregistre un niveau par modèle, et --effort en définit un pour une seule session

62 "modelSettings": {62> "modelSettings": {

63 "claude-sonnet-5": { "effortLevel": "xhigh" }63> "claude-sonnet-5": { "effortLevel": "xhigh" }

64 },64> },

65 // Liaisons de touches Vim dans l'invite65> // Liaisons de touches Vim dans l'invite

66 "editorMode": "vim",66> "editorMode": "vim",

67 // Le thème clair adapté aux daltoniens67> // Le thème clair adapté aux daltoniens

68 "theme": "light-daltonized",68> "theme": "light-daltonized",

69 // Une ligne d'état sous l'invite : nom du modèle et contexte utilisé69> // Une ligne d'état sous l'invite : nom du modèle et contexte utilisé

70 "statusLine": {70> "statusLine": {

71 "type": "command",71> "type": "command",

72 "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",72> "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",

73 "padding": 273> "padding": 2

74 },74> },

75 // Masquez les conseils qui tournent sous le spinner75> // Masquez les conseils qui tournent sous le spinner

76 "spinnerTipsEnabled": false,76> "spinnerTipsEnabled": false,

77 // Sonnez la cloche du terminal pour les notifications, comme une tâche terminée ou une invite de permission en attente77> // Sonnez la cloche du terminal pour les notifications, comme une tâche terminée ou une invite de permission en attente

78 "preferredNotifChannel": "terminal_bell",78> "preferredNotifChannel": "terminal_bell",

79 // Laissez Claude Code exécuter git diff et lire votre .zshrc sans demander79> // Laissez Claude Code exécuter git diff et lire votre .zshrc sans demander

80 "permissions": {80> "permissions": {

81 "allow": [81> "allow": [

82 "Bash(git diff *)",82> "Bash(git diff *)",

83 "Read(~/.zshrc)"83> "Read(~/.zshrc)"

84 ]84> ]

85 },85> },

86 // Prenez les mises à jour du canal stable86> // Prenez les mises à jour du canal stable

87 "autoUpdatesChannel": "stable",87> "autoUpdatesChannel": "stable",

88 // Supprimez les transcriptions de session et autres données de session locale plus anciennes que 20 jours88> // Supprimez les transcriptions de session et autres données de session locale plus anciennes que 20 jours

89 "cleanupPeriodDays": 2089> "cleanupPeriodDays": 20

90}90> }

91```91> ```

92 92 

93## Paramètres partagés d'une équipe93## Paramètres partagés d'une équipe

94 94 


100* **Le hook est un script dans le référentiel.** Le hook de ce fichier exécute `.claude/hooks/block-rm.sh` ; [Comment un hook se résout](https://code.claude.com/docs/fr/hooks.md#how-a-hook-resolves) explique comment l'écrire.100* **Le hook est un script dans le référentiel.** Le hook de ce fichier exécute `.claude/hooks/block-rm.sh` ; [Comment un hook se résout](https://code.claude.com/docs/fr/hooks.md#how-a-hook-resolves) explique comment l'écrire.

101* **Les règles correspondent à la commande et au chemin tels qu'écrits.** `Bash(git push *)` ne correspond pas à [`git -C . push`](https://code.claude.com/docs/fr/permissions#bash-rule-limits). `Read(./.env)` seul arrête les outils de fichier et les commandes qui nomment le fichier, comme `cat .env`, mais pas [`grep -r` exécuté sur le répertoire](https://code.claude.com/docs/fr/permissions#read-and-edit) ; le bloc `sandbox` dans ce fichier comble cette lacune, car le sandbox [ajoute vos chemins de refus `Read`](https://code.claude.com/docs/fr/settings-reference#sandbox-filesystem-denyread) à ce que chaque commande en sandbox ne peut pas lire.101* **Les règles correspondent à la commande et au chemin tels qu'écrits.** `Bash(git push *)` ne correspond pas à [`git -C . push`](https://code.claude.com/docs/fr/permissions#bash-rule-limits). `Read(./.env)` seul arrête les outils de fichier et les commandes qui nomment le fichier, comme `cat .env`, mais pas [`grep -r` exécuté sur le répertoire](https://code.claude.com/docs/fr/permissions#read-and-edit) ; le bloc `sandbox` dans ce fichier comble cette lacune, car le sandbox [ajoute vos chemins de refus `Read`](https://code.claude.com/docs/fr/settings-reference#sandbox-filesystem-denyread) à ce que chaque commande en sandbox ne peut pas lire.

102 102 

103**Fichier de paramètres copiable**103> [tab] Fichier de paramètres copiable

104 104>

105Enregistrez ceci sous `.claude/settings.json` en haut du référentiel et validez-le. C'est du JSON valide sans commentaires, vous pouvez donc le coller tel quel et supprimer les clés que vous ne voulez pas.105> Enregistrez ceci sous `.claude/settings.json` en haut du référentiel et validez-le. C'est du JSON valide sans commentaires, vous pouvez donc le coller tel quel et supprimer les clés que vous ne voulez pas.

106 106>

107```json .claude/settings.json theme={null}107> ```json .claude/settings.json theme={null}

108{108> {

109 "permissions": {109> "permissions": {

110 "allow": [110> "allow": [

111 "Bash(npm run *)"111> "Bash(npm run *)"

112 ],112> ],

113 "ask": [113> "ask": [

114 "Bash(git push *)"114> "Bash(git push *)"

115 ],115> ],

116 "deny": [116> "deny": [

117 "Read(./.env)",117> "Read(./.env)",

118 "Read(./.env.*)",118> "Read(./.env.*)",

119 "Read(./secrets/**)"119> "Read(./secrets/**)"

120 ]120> ]

121 },121> },

122 "hooks": {122> "hooks": {

123 "PreToolUse": [123> "PreToolUse": [

124 {124> {

125 "matcher": "Bash",125> "matcher": "Bash",

126 "hooks": [126> "hooks": [

127 {127> {

128 "type": "command",128> "type": "command",

129 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"129> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"

130 }130> }

131 ]131> ]

132 }132> }

133 ]133> ]

134 },134> },

135 "extraKnownMarketplaces": {135> "extraKnownMarketplaces": {

136 "acme-tools": {136> "acme-tools": {

137 "source": {137> "source": {

138 "source": "github",138> "source": "github",

139 "repo": "acme-corp/claude-plugins"139> "repo": "acme-corp/claude-plugins"

140 }140> }

141 }141> }

142 },142> },

143 "enabledPlugins": {143> "enabledPlugins": {

144 "code-formatter@acme-tools": true144> "code-formatter@acme-tools": true

145 },145> },

146 "sandbox": {146> "sandbox": {

147 "enabled": true,147> "enabled": true,

148 "filesystem": {148> "filesystem": {

149 "allowWrite": [149> "allowWrite": [

150 "/tmp/build"150> "/tmp/build"

151 ]151> ]

152 },152> },

153 "network": {153> "network": {

154 "allowedDomains": [154> "allowedDomains": [

155 "registry.npmjs.org",155> "registry.npmjs.org",

156 "*.example.com"156> "*.example.com"

157 ]157> ]

158 }158> }

159 },159> },

160 "plansDirectory": "./plans"160> "plansDirectory": "./plans"

161}161> }

162```162> ```

163 163 

164**Ce que chaque clé fait**164> [tab] Ce que chaque clé fait

165 165>

166Le même fichier avec un commentaire au-dessus de chaque clé. Lisez-le ici ; copiez à partir de l'autre onglet, car Claude Code n'accepte pas les commentaires dans un fichier de paramètres.166> Le même fichier avec un commentaire au-dessus de chaque clé. Lisez-le ici ; copiez à partir de l'autre onglet, car Claude Code n'accepte pas les commentaires dans un fichier de paramètres.

167 167>

168```jsonc .claude/settings.json theme={null}168> ```jsonc .claude/settings.json theme={null}

169{169> {

170 "permissions": {170> "permissions": {

171 // Exécutez les scripts npm sans demander171> // Exécutez les scripts npm sans demander

172 "allow": [172> "allow": [

173 "Bash(npm run *)"173> "Bash(npm run *)"

174 ],174> ],

175 // Confirmez avant les commandes git push175> // Confirmez avant les commandes git push

176 "ask": [176> "ask": [

177 "Bash(git push *)"177> "Bash(git push *)"

178 ],178> ],

179 // Refusez les lectures des fichiers env et du dossier secrets par les outils de fichier et les commandes de lecture de fichier179> // Refusez les lectures des fichiers env et du dossier secrets par les outils de fichier et les commandes de lecture de fichier

180 "deny": [180> "deny": [

181 "Read(./.env)",181> "Read(./.env)",

182 "Read(./.env.*)",182> "Read(./.env.*)",

183 "Read(./secrets/**)"183> "Read(./secrets/**)"

184 ]184> ]

185 },185> },

186 // Avant chaque commande Bash, exécutez un script dans le dépôt qui peut la bloquer186> // Avant chaque commande Bash, exécutez un script dans le dépôt qui peut la bloquer

187 "hooks": {187> "hooks": {

188 "PreToolUse": [188> "PreToolUse": [

189 {189> {

190 "matcher": "Bash",190> "matcher": "Bash",

191 "hooks": [191> "hooks": [

192 {192> {

193 "type": "command",193> "type": "command",

194 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"194> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"

195 }195> }

196 ]196> ]

197 }197> }

198 ]198> ]

199 },199> },

200 // Enregistrez la marketplace de plugins de l'équipe à chaque clone200> // Enregistrez la marketplace de plugins de l'équipe à chaque clone

201 "extraKnownMarketplaces": {201> "extraKnownMarketplaces": {

202 "acme-tools": {202> "acme-tools": {

203 "source": {203> "source": {

204 "source": "github",204> "source": "github",

205 "repo": "acme-corp/claude-plugins"205> "repo": "acme-corp/claude-plugins"

206 }206> }

207 }207> }

208 },208> },

209 // Activez un plugin de cette marketplace ; un plugin d'une source externe comme un dépôt GitHub doit toujours être installé une fois par chaque personne209> // Activez un plugin de cette marketplace ; un plugin d'une source externe comme un dépôt GitHub doit toujours être installé une fois par chaque personne

210 "enabledPlugins": {210> "enabledPlugins": {

211 "code-formatter@acme-tools": true211> "code-formatter@acme-tools": true

212 },212> },

213 // Commandes sandbox : répertoire de build inscriptible ; npm et example.com pré-autorisés213> // Commandes sandbox : répertoire de build inscriptible ; npm et example.com pré-autorisés

214 "sandbox": {214> "sandbox": {

215 "enabled": true,215> "enabled": true,

216 "filesystem": {216> "filesystem": {

217 "allowWrite": [217> "allowWrite": [

218 "/tmp/build"218> "/tmp/build"

219 ]219> ]

220 },220> },

221 "network": {221> "network": {

222 "allowedDomains": [222> "allowedDomains": [

223 "registry.npmjs.org",223> "registry.npmjs.org",

224 "*.example.com"224> "*.example.com"

225 ]225> ]

226 }226> }

227 },227> },

228 // Gardez les fichiers de plan à l'intérieur du dépôt228> // Gardez les fichiers de plan à l'intérieur du dépôt

229 "plansDirectory": "./plans"229> "plansDirectory": "./plans"

230}230> }

231```231> ```

232 232 

233## Paramètres gérés d'une organisation233## Paramètres gérés d'une organisation

234 234 


247 247 

248Les administrateurs déploient un fichier comme celui-ci en tant que `managed-settings.json`, ou le même JSON via MDM ou [paramètres gérés par serveur](https://code.claude.com/docs/fr/server-managed-settings.md). Un fichier déployé s'applique à chaque machine ou compte qu'il atteint. Pour donner à un groupe des valeurs différentes, déployez un fichier ou un profil différent à ce groupe, car [les paramètres gérés par serveur ne supportent pas encore la politique par groupe](https://code.claude.com/docs/fr/server-managed-settings.md#current-limitations).248Les administrateurs déploient un fichier comme celui-ci en tant que `managed-settings.json`, ou le même JSON via MDM ou [paramètres gérés par serveur](https://code.claude.com/docs/fr/server-managed-settings.md). Un fichier déployé s'applique à chaque machine ou compte qu'il atteint. Pour donner à un groupe des valeurs différentes, déployez un fichier ou un profil différent à ce groupe, car [les paramètres gérés par serveur ne supportent pas encore la politique par groupe](https://code.claude.com/docs/fr/server-managed-settings.md#current-limitations).

249 249 

250**Fichier de paramètres copiable**250> [tab] Fichier de paramètres copiable

251 251>

252Déployez ceci en tant que `managed-settings.json`, ou le même JSON via MDM ou la console claude.ai. C'est du JSON valide sans commentaires ; remplacez l'UUID d'organisation d'exemple, l'URL du serveur et le marketplace par les vôtres et supprimez les clés que vous ne voulez pas.252> Déployez ceci en tant que `managed-settings.json`, ou le même JSON via MDM ou la console claude.ai. C'est du JSON valide sans commentaires ; remplacez l'UUID d'organisation d'exemple, l'URL du serveur et le marketplace par les vôtres et supprimez les clés que vous ne voulez pas.

253 253>

254```json managed-settings.json theme={null}254> ```json managed-settings.json theme={null}

255{255> {

256 "forceLoginMethod": "claudeai",256> "forceLoginMethod": "claudeai",

257 "forceLoginOrgUUID": [257> "forceLoginOrgUUID": [

258 "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"258> "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

259 ],259> ],

260 "availableModels": [260> "availableModels": [

261 "opus",261> "opus",

262 "sonnet"262> "sonnet"

263 ],263> ],

264 "enforceAvailableModels": true,264> "enforceAvailableModels": true,

265 "permissions": {265> "permissions": {

266 "deny": [266> "deny": [

267 "Bash(curl *)",267> "Bash(curl *)",

268 "Read(./.env)",268> "Read(./.env)",

269 "Read(./secrets/**)"269> "Read(./secrets/**)"

270 ],270> ],

271 "disableBypassPermissionsMode": "disable"271> "disableBypassPermissionsMode": "disable"

272 },272> },

273 "allowManagedPermissionRulesOnly": true,273> "allowManagedPermissionRulesOnly": true,

274 "allowedMcpServers": [274> "allowedMcpServers": [

275 {275> {

276 "serverUrl": "https://api.githubcopilot.com/*"276> "serverUrl": "https://api.githubcopilot.com/*"

277 }277> }

278 ],278> ],

279 "allowManagedMcpServersOnly": true,279> "allowManagedMcpServersOnly": true,

280 "strictKnownMarketplaces": [280> "strictKnownMarketplaces": [

281 {281> {

282 "source": "github",282> "source": "github",

283 "repo": "acme-corp/approved-plugins"283> "repo": "acme-corp/approved-plugins"

284 }284> }

285 ],285> ],

286 "sandbox": {286> "sandbox": {

287 "enabled": true,287> "enabled": true,

288 "failIfUnavailable": true,288> "failIfUnavailable": true,

289 "allowUnsandboxedCommands": false,289> "allowUnsandboxedCommands": false,

290 "network": {290> "network": {

291 "allowedDomains": [291> "allowedDomains": [

292 "registry.npmjs.org",292> "registry.npmjs.org",

293 "github.com"293> "github.com"

294 ],294> ],

295 "allowManagedDomainsOnly": true295> "allowManagedDomainsOnly": true

296 }296> }

297 },297> },

298 "requiredMinimumVersion": "2.1.150",298> "requiredMinimumVersion": "2.1.150",

299 "cleanupPeriodDays": 7,299> "cleanupPeriodDays": 7,

300 "companyAnnouncements": [300> "companyAnnouncements": [

301 "Welcome to Acme Corp! Review our code guidelines at docs.example.com"301> "Welcome to Acme Corp! Review our code guidelines at docs.example.com"

302 ]302> ]

303}303> }

304```304> ```

305 305 

306**Ce que chaque clé fait**306> [tab] Ce que chaque clé fait

307 307>

308Le même fichier avec un commentaire au-dessus de chaque clé. Lisez-le ici ; copiez à partir de l'autre onglet, car Claude Code n'accepte pas les commentaires dans un fichier de paramètres.308> Le même fichier avec un commentaire au-dessus de chaque clé. Lisez-le ici ; copiez à partir de l'autre onglet, car Claude Code n'accepte pas les commentaires dans un fichier de paramètres.

309 309>

310```jsonc managed-settings.json theme={null}310> ```jsonc managed-settings.json theme={null}

311{311> {

312 // Uniquement les connexions claude.ai, et uniquement dans cette organisation312> // Uniquement les connexions claude.ai, et uniquement dans cette organisation

313 "forceLoginMethod": "claudeai",313> "forceLoginMethod": "claudeai",

314 "forceLoginOrgUUID": [314> "forceLoginOrgUUID": [

315 "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"315> "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

316 ],316> ],

317 // Uniquement les modèles Opus et Sonnet ; avec enforceAvailableModels, l'option Par défaut obéit également à la liste317> // Uniquement les modèles Opus et Sonnet ; avec enforceAvailableModels, l'option Par défaut obéit également à la liste

318 "availableModels": [318> "availableModels": [

319 "opus",319> "opus",

320 "sonnet"320> "sonnet"

321 ],321> ],

322 "enforceAvailableModels": true,322> "enforceAvailableModels": true,

323 "permissions": {323> "permissions": {

324 // Refusez les commandes curl et les lectures du fichier .env du projet et du dossier secrets sur chaque machine324> // Refusez les commandes curl et les lectures du fichier .env du projet et du dossier secrets sur chaque machine

325 "deny": [325> "deny": [

326 "Bash(curl *)",326> "Bash(curl *)",

327 "Read(./.env)",327> "Read(./.env)",

328 "Read(./secrets/**)"328> "Read(./secrets/**)"

329 ],329> ],

330 // Supprimez le mode de permission de contournement de chaque session330> // Supprimez le mode de permission de contournement de chaque session

331 "disableBypassPermissionsMode": "disable"331> "disableBypassPermissionsMode": "disable"

332 },332> },

333 // Ignorez les règles de permission des paramètres utilisateur, projet et locaux333> // Ignorez les règles de permission des paramètres utilisateur, projet et locaux

334 "allowManagedPermissionRulesOnly": true,334> "allowManagedPermissionRulesOnly": true,

335 // Uniquement le serveur MCP GitHub, mis en correspondance par URL plutôt que par nom, car un utilisateur peut335> // Uniquement le serveur MCP GitHub, mis en correspondance par URL plutôt que par nom, car un utilisateur peut

336 // nommer n'importe quel serveur « github ». Les serveurs ajoutés par l'utilisateur qui ne correspondent pas ne se chargent pas, y compris336> // nommer n'importe quel serveur « github ». Les serveurs ajoutés par l'utilisateur qui ne correspondent pas ne se chargent pas, y compris

337 // chaque serveur stdio quand la liste n'a que des entrées URL. La clé allowManagedMcpServersOnly337> // chaque serveur stdio quand la liste n'a que des entrées URL. La clé allowManagedMcpServersOnly

338 // ci-dessous rend cette liste gérée la seule liste blanche qui s'applique338> // ci-dessous rend cette liste gérée la seule liste blanche qui s'applique

339 "allowedMcpServers": [339> "allowedMcpServers": [

340 {340> {

341 "serverUrl": "https://api.githubcopilot.com/*"341> "serverUrl": "https://api.githubcopilot.com/*"

342 }342> }

343 ],343> ],

344 "allowManagedMcpServersOnly": true,344> "allowManagedMcpServersOnly": true,

345 // Les plugins ne peuvent provenir que de ce marketplace345> // Les plugins ne peuvent provenir que de ce marketplace

346 "strictKnownMarketplaces": [346> "strictKnownMarketplaces": [

347 {347> {

348 "source": "github",348> "source": "github",

349 "repo": "acme-corp/approved-plugins"349> "repo": "acme-corp/approved-plugins"

350 }350> }

351 ],351> ],

352 // Bac à sable chaque commande que Claude exécute, refusez de démarrer si le bac à sable ne peut pas être352> // Bac à sable chaque commande que Claude exécute, refusez de démarrer si le bac à sable ne peut pas être

353 // configuré, et ne laissez jamais une commande bloquée réessayer en dehors du bac à sable ; réseau353> // configuré, et ne laissez jamais une commande bloquée réessayer en dehors du bac à sable ; réseau

354 // limité à npm et GitHub, et les utilisateurs ne peuvent pas ajouter de domaines354> // limité à npm et GitHub, et les utilisateurs ne peuvent pas ajouter de domaines

355 "sandbox": {355> "sandbox": {

356 "enabled": true,356> "enabled": true,

357 "failIfUnavailable": true,357> "failIfUnavailable": true,

358 "allowUnsandboxedCommands": false,358> "allowUnsandboxedCommands": false,

359 "network": {359> "network": {

360 "allowedDomains": [360> "allowedDomains": [

361 "registry.npmjs.org",361> "registry.npmjs.org",

362 "github.com"362> "github.com"

363 ],363> ],

364 "allowManagedDomainsOnly": true364> "allowManagedDomainsOnly": true

365 }365> }

366 },366> },

367 // Refusez de démarrer sur les versions antérieures à 2.1.150367> // Refusez de démarrer sur les versions antérieures à 2.1.150

368 "requiredMinimumVersion": "2.1.150",368> "requiredMinimumVersion": "2.1.150",

369 // Supprimez les transcriptions de session et autres données de session locale après 7 jours369> // Supprimez les transcriptions de session et autres données de session locale après 7 jours

370 "cleanupPeriodDays": 7,370> "cleanupPeriodDays": 7,

371 // Un message que chaque utilisateur voit au démarrage371> // Un message que chaque utilisateur voit au démarrage

372 "companyAnnouncements": [372> "companyAnnouncements": [

373 "Welcome to Acme Corp! Review our code guidelines at docs.example.com"373> "Welcome to Acme Corp! Review our code guidelines at docs.example.com"

374 ]374> ]

375}375> }

376```376> ```

Details

3865* **Type** : Boolean3865* **Type** : Boolean

3866 * `true` : Claude Code autorise les canaux pour votre organisation3866 * `true` : Claude Code autorise les canaux pour votre organisation

3867 * `false` : identique à unset ; que les canaux soient bloqués dépend de votre plan, comme le Default l'indique3867 * `false` : identique à unset ; que les canaux soient bloqués dépend de votre plan, comme le Default l'indique

3868* **Default** : unset ; les canaux sont bloqués sur les plans Team et Enterprise et sur les comptes Console avec des paramètres gérés, et autorisés sur les plans Pro et Max et sur les comptes Console sans paramètres gérés3868* **Default** : unset ; les canaux sont bloqués sur les plans Team et Enterprise et sur les comptes Console avec des paramètres gérés, et autorisés sur les plans Pro, Max et Ultra et sur les comptes Console sans paramètres gérés

3869 3869 

3870```json managed-settings.json theme={null}3870```json managed-settings.json theme={null}

3871{3871{

setup.md +251 −251

Details

35 35 

36Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](https://code.claude.com/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.36Pour installer Claude Code, ouvrez un terminal et exécutez la commande pour votre système. Si vous n'avez jamais utilisé de terminal auparavant, le [guide du terminal](https://code.claude.com/docs/fr/terminal-guide) montre comment en ouvrir un et coller la commande.

37 37 

38**Installation native (recommandée)**38> [tab] Installation native (recommandée)

39 

40**macOS, Linux, WSL :**

41 

42```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

43curl -fsSL https://claude.ai/install.sh | bash

44```

45 

46Sur Windows, votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.

47 

48**Windows PowerShell :**

49 

50```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

51irm https://claude.ai/install.ps1 | iex

52```

53 

54**Windows CMD :**

55 

56```batch theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

57curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

58```

59 

60La commande d'installation n'affiche aucune progression pendant le téléchargement de Claude Code. Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](https://code.claude.com/docs/fr/troubleshoot-install.md#command-not-found-claude-after-installation).

61 

62Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell.

63 

64Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou toute autre erreur, consultez [Dépannage de l'installation](https://code.claude.com/docs/fr/troubleshoot-install.md#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.

65 

66[Git for Windows](https://git-scm.com/downloads/win) est recommandé sur Windows natif afin que Claude Code puisse utiliser l'outil Bash. Si Git for Windows n'est pas installé, Claude Code utilise PowerShell comme outil shell à la place. Les configurations WSL n'ont pas besoin de Git for Windows.

67 

68> [!NOTE]

69>39>

70> Les installations natives se mettent à jour automatiquement en arrière-plan pour vous maintenir à jour avec la dernière version.40> **macOS, Linux, WSL :**

71 

72**Homebrew**

73 

74```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

75brew install --cask claude-code

76```

77 

78Homebrew propose deux casks. `claude-code` suit le canal de version stable, qui est généralement environ une semaine en retard et ignore les versions avec des régressions majeures. `claude-code@latest` suit le canal le plus récent et reçoit les nouvelles versions dès qu'elles sont publiées.

79 

80> [!NOTE]

81>41>

82> Les installations Homebrew ne se mettent pas à jour automatiquement. Exécutez `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, selon le cask que vous avez installé, pour obtenir les dernières fonctionnalités et correctifs de sécurité.42> ```bash theme={null}

83 43> curl -fsSL https://claude.ai/install.sh | bash

84**WinGet**44> ```

45>

46> Sur Windows, votre invite affiche `PS C:\` quand vous êtes dans PowerShell et `C:\` sans le `PS` quand vous êtes dans CMD.

47>

48> **Windows PowerShell :**

49>

50> ```powershell theme={null}

51> irm https://claude.ai/install.ps1 | iex

52> ```

53>

54> **Windows CMD :**

55>

56> ```batch theme={null}

57> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

58> ```

59>

60> La commande d'installation n'affiche aucune progression pendant le téléchargement de Claude Code. Quand l'installateur se termine, ouvrez une nouvelle fenêtre de terminal et exécutez `claude --version`. Une installation fonctionnelle affiche un numéro de version. Si votre shell dit que `claude` n'est pas trouvé ou n'est pas reconnu, le répertoire d'installation n'est pas encore sur votre PATH : consultez [Corriger votre PATH](https://code.claude.com/docs/fr/troubleshoot-install.md#command-not-found-claude-after-installation).

61>

62> Si vous voyez `The token '&&' is not a valid statement separator`, vous êtes dans PowerShell, pas dans CMD. Si vous voyez `'irm' is not recognized as an internal or external command`, vous êtes dans CMD, pas dans PowerShell.

63>

64> Si la commande d'installation échoue avec `syntax error near unexpected token '<'`, un `403`, ou toute autre erreur, consultez [Dépannage de l'installation](https://code.claude.com/docs/fr/troubleshoot-install.md#find-your-error) pour faire correspondre l'erreur à une solution et pour connaître les méthodes d'installation alternatives.

65>

66> [Git for Windows](https://git-scm.com/downloads/win) est recommandé sur Windows natif afin que Claude Code puisse utiliser l'outil Bash. Si Git for Windows n'est pas installé, Claude Code utilise PowerShell comme outil shell à la place. Les configurations WSL n'ont pas besoin de Git for Windows.

67>

68> > [!NOTE]

69> >

70> > Les installations natives se mettent à jour automatiquement en arrière-plan pour vous maintenir à jour avec la dernière version.

85 71 

86```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}72> [tab] Homebrew

87winget install Anthropic.ClaudeCode73>

88```74> ```bash theme={null}

75> brew install --cask claude-code

76> ```

77>

78> Homebrew propose deux casks. `claude-code` suit le canal de version stable, qui est généralement environ une semaine en retard et ignore les versions avec des régressions majeures. `claude-code@latest` suit le canal le plus récent et reçoit les nouvelles versions dès qu'elles sont publiées.

79>

80> > [!NOTE]

81> >

82> > Les installations Homebrew ne se mettent pas à jour automatiquement. Exécutez `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, selon le cask que vous avez installé, pour obtenir les dernières fonctionnalités et correctifs de sécurité.

89 83 

90> [!NOTE]84> [tab] WinGet

85>

86> ```powershell theme={null}

87> winget install Anthropic.ClaudeCode

88> ```

91>89>

92> Les installations WinGet ne se mettent pas à jour automatiquement. Exécutez `winget upgrade Anthropic.ClaudeCode` périodiquement pour obtenir les dernières fonctionnalités et correctifs de sécurité.90> > [!NOTE]

91> >

92> > Les installations WinGet ne se mettent pas à jour automatiquement. Exécutez `winget upgrade Anthropic.ClaudeCode` périodiquement pour obtenir les dernières fonctionnalités et correctifs de sécurité.

93 93 

94Vous pouvez également installer avec [apt, dnf, ou apk](https://code.claude.com/docs/fr/setup.md#install-with-linux-package-managers) sur Debian, Fedora, RHEL et Alpine.94Vous pouvez également installer avec [apt, dnf, ou apk](https://code.claude.com/docs/fr/setup.md#install-with-linux-package-managers) sur Debian, Fedora, RHEL et Alpine.

95 95 


188 188 

189## S'authentifier189## S'authentifier

190 190 

191Claude Code nécessite un compte Pro, Max, Team, Enterprise ou Console. Le plan gratuit Claude.ai n'inclut pas l'accès à Claude Code. Vous pouvez également utiliser Claude Code avec un fournisseur d'API tiers comme [Amazon Bedrock](https://code.claude.com/docs/fr/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/fr/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/fr/microsoft-foundry.md).191Claude Code nécessite un compte Pro, Max, Ultra, Team, Enterprise ou Console. Le plan gratuit Claude.ai n'inclut pas l'accès à Claude Code. Vous pouvez également utiliser Claude Code avec un fournisseur d'API tiers comme [Amazon Bedrock](https://code.claude.com/docs/fr/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/fr/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/fr/microsoft-foundry.md).

192 192 

193Après l'installation, connectez-vous en exécutant `claude` et en suivant les invites du navigateur. Si vous avez défini la variable d'environnement `ANTHROPIC_API_KEY` et que vous approuvez la clé lorsque Claude Code vous demande s'il doit l'utiliser, Claude Code ignore l'invite de connexion. Consultez [Authentification](https://code.claude.com/docs/fr/authentication.md) pour tous les types de comptes et les options de configuration d'équipe.193Après l'installation, connectez-vous en exécutant `claude` et en suivant les invites du navigateur. Si vous avez défini la variable d'environnement `ANTHROPIC_API_KEY` et que vous approuvez la clé lorsque Claude Code vous demande s'il doit l'utiliser, Claude Code ignore l'invite de connexion. Consultez [Authentification](https://code.claude.com/docs/fr/authentication.md) pour tous les types de comptes et les options de configuration d'équipe.

194 194 


300 300 

301Pour installer la dernière version (par défaut) :301Pour installer la dernière version (par défaut) :

302 302 

303**macOS, Linux, WSL**303> [tab] macOS, Linux, WSL

304 304>

305```bash theme={null}305> ```bash theme={null}

306curl -fsSL https://claude.ai/install.sh | bash306> curl -fsSL https://claude.ai/install.sh | bash

307```307> ```

308 

309**Windows PowerShell**

310 

311```powershell theme={null}

312irm https://claude.ai/install.ps1 | iex

313```

314 308 

315**Windows CMD**309> [tab] Windows PowerShell

310>

311> ```powershell theme={null}

312> irm https://claude.ai/install.ps1 | iex

313> ```

316 314 

317```batch theme={null}315> [tab] Windows CMD

318curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd316>

319```317> ```batch theme={null}

318> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

319> ```

320 320 

321Pour installer la version stable :321Pour installer la version stable :

322 322 

323**macOS, Linux, WSL**323> [tab] macOS, Linux, WSL

324 324>

325```bash theme={null}325> ```bash theme={null}

326curl -fsSL https://claude.ai/install.sh | bash -s stable326> curl -fsSL https://claude.ai/install.sh | bash -s stable

327```327> ```

328 

329**Windows PowerShell**

330 

331```powershell theme={null}

332& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) stable

333```

334 328 

335**Windows CMD**329> [tab] Windows PowerShell

330>

331> ```powershell theme={null}

332> & ([scriptblock]::Create((irm https://claude.ai/install.ps1))) stable

333> ```

336 334 

337```batch theme={null}335> [tab] Windows CMD

338curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd stable && del install.cmd336>

339```337> ```batch theme={null}

338> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd stable && del install.cmd

339> ```

340 340 

341Pour installer un numéro de version spécifique :341Pour installer un numéro de version spécifique :

342 342 

343**macOS, Linux, WSL**343> [tab] macOS, Linux, WSL

344 344>

345```bash theme={null}345> ```bash theme={null}

346curl -fsSL https://claude.ai/install.sh | bash -s 2.1.89346> curl -fsSL https://claude.ai/install.sh | bash -s 2.1.89

347```347> ```

348 

349**Windows PowerShell**

350 

351```powershell theme={null}

352& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) 2.1.89

353```

354 348 

355**Windows CMD**349> [tab] Windows PowerShell

350>

351> ```powershell theme={null}

352> & ([scriptblock]::Create((irm https://claude.ai/install.ps1))) 2.1.89

353> ```

356 354 

357```batch theme={null}355> [tab] Windows CMD

358curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd 2.1.89 && del install.cmd356>

359```357> ```batch theme={null}

358> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd 2.1.89 && del install.cmd

359> ```

360 360 

361Pour confirmer quelle version a été installée, exécutez `claude --version` : la commande affiche la version exacte que vous avez transmise, par exemple `2.1.89 (Claude Code)`.361Pour confirmer quelle version a été installée, exécutez `claude --version` : la commande affiche la version exacte que vous avez transmise, par exemple `2.1.89 (Claude Code)`.

362 362 


366 366 

367Tous les dépôts sont signés avec la [clé de signature de version Claude Code](#binary-integrity-and-code-signing). Avant de faire confiance à la clé, vérifiez-la comme décrit dans chaque onglet.367Tous les dépôts sont signés avec la [clé de signature de version Claude Code](#binary-integrity-and-code-signing). Avant de faire confiance à la clé, vérifiez-la comme décrit dans chaque onglet.

368 368 

369**apt**369> [tab] apt

370 370>

371Pour Debian et Ubuntu. Les commandes d'installation ci-dessous téléchargent la clé de signature avec `curl` et la vérifient avec `gpg`, que les installations fraîches de Debian et Ubuntu peuvent ne pas inclure. Si l'une ou l'autre commande signale `command not found`, installez d'abord les deux :371> Pour Debian et Ubuntu. Les commandes d'installation ci-dessous téléchargent la clé de signature avec `curl` et la vérifient avec `gpg`, que les installations fraîches de Debian et Ubuntu peuvent ne pas inclure. Si l'une ou l'autre commande signale `command not found`, installez d'abord les deux :

372 372>

373```bash theme={null}373> ```bash theme={null}

374sudo apt install curl gnupg374> sudo apt install curl gnupg

375```375> ```

376 376>

377Téléchargez la clé de signature :377> Téléchargez la clé de signature :

378 378>

379```bash theme={null}379> ```bash theme={null}

380sudo install -d -m 0755 /etc/apt/keyrings380> sudo install -d -m 0755 /etc/apt/keyrings

381sudo curl -fsSL https://downloads.claude.ai/keys/claude-code.asc \381> sudo curl -fsSL https://downloads.claude.ai/keys/claude-code.asc \

382 -o /etc/apt/keyrings/claude-code.asc382> -o /etc/apt/keyrings/claude-code.asc

383```383> ```

384 384>

385Si ce téléchargement échoue, `apt update` échoue plus tard avec `NO_PUBKEY BAA929FF1A7ECACE`. Confirmez que la clé a été téléchargée et appartient à Anthropic avant de continuer :385> Si ce téléchargement échoue, `apt update` échoue plus tard avec `NO_PUBKEY BAA929FF1A7ECACE`. Confirmez que la clé a été téléchargée et appartient à Anthropic avant de continuer :

386 386>

387```bash theme={null}387> ```bash theme={null}

388gpg --show-keys /etc/apt/keyrings/claude-code.asc388> gpg --show-keys /etc/apt/keyrings/claude-code.asc

389```389> ```

390 390>

391L'empreinte digitale que gpg affiche devrait être `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE`. Si gpg signale que le fichier ne peut pas être ouvert ou ne contient pas de données OpenPGP valides, le téléchargement a échoué ou a renvoyé le mauvais contenu : confirmez que votre réseau peut atteindre `downloads.claude.ai`, puis réexécutez la commande de téléchargement.391> L'empreinte digitale que gpg affiche devrait être `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE`. Si gpg signale que le fichier ne peut pas être ouvert ou ne contient pas de données OpenPGP valides, le téléchargement a échoué ou a renvoyé le mauvais contenu : confirmez que votre réseau peut atteindre `downloads.claude.ai`, puis réexécutez la commande de téléchargement.

392 392>

393Enregistrez le dépôt sur le canal `stable` et installez :393> Enregistrez le dépôt sur le canal `stable` et installez :

394 394>

395```bash theme={null}395> ```bash theme={null}

396echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/stable stable main" \396> echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/stable stable main" \

397 | sudo tee /etc/apt/sources.list.d/claude-code.list397> | sudo tee /etc/apt/sources.list.d/claude-code.list

398sudo apt update398> sudo apt update

399sudo apt install claude-code399> sudo apt install claude-code

400```400> ```

401 401>

402Pour utiliser le canal `latest` à la place, le chemin d'URL et le nom de la suite changent tous les deux. Utilisez cette ligne `deb` :402> Pour utiliser le canal `latest` à la place, le chemin d'URL et le nom de la suite changent tous les deux. Utilisez cette ligne `deb` :

403 403>

404```bash theme={null}404> ```bash theme={null}

405echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/latest latest main" \405> echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/latest latest main" \

406 | sudo tee /etc/apt/sources.list.d/claude-code.list406> | sudo tee /etc/apt/sources.list.d/claude-code.list

407```407> ```

408 408>

409Pour mettre à jour ultérieurement, exécutez `sudo apt update && sudo apt upgrade claude-code`.409> Pour mettre à jour ultérieurement, exécutez `sudo apt update && sudo apt upgrade claude-code`.

410 

411**dnf**

412 

413Pour Fedora et RHEL. Les commandes suivantes configurent le canal `stable` :

414 

415```bash theme={null}

416sudo tee /etc/yum.repos.d/claude-code.repo <<'EOF'

417[claude-code]

418name=Claude Code

419baseurl=https://downloads.claude.ai/claude-code/rpm/stable

420enabled=1

421gpgcheck=1

422gpgkey=https://downloads.claude.ai/keys/claude-code.asc

423EOF

424sudo dnf install claude-code

425```

426 

427Pour utiliser le canal `latest` à la place, définissez `baseurl` sur le dépôt `latest` :

428 

429```ini theme={null}

430baseurl=https://downloads.claude.ai/claude-code/rpm/latest

431```

432 

433dnf télécharge la clé lors de la première installation et vous demande de confirmer l'empreinte digitale. Vérifiez qu'elle correspond à `31DD DE24 DDFA B679 F42D 7BD2 BAA9 29FF 1A7E CACE` avant d'accepter.

434 

435Pour mettre à jour ultérieurement, exécutez `sudo dnf upgrade claude-code`.

436 

437**apk**

438 

439Pour Alpine Linux. Les commandes suivantes configurent le canal `stable` :

440 

441```sh theme={null}

442wget -O /etc/apk/keys/claude-code.rsa.pub \

443 https://downloads.claude.ai/keys/claude-code.rsa.pub

444echo "https://downloads.claude.ai/claude-code/apk/stable" >> /etc/apk/repositories

445apk add claude-code

446```

447 

448Pour basculer vers le canal `latest`, supprimez la ligne du dépôt `stable` et ajoutez le dépôt `latest` :

449 

450```sh theme={null}

451sed -i '\|downloads.claude.ai/claude-code/apk/stable|d' /etc/apk/repositories

452echo "https://downloads.claude.ai/claude-code/apk/latest" >> /etc/apk/repositories

453```

454 410 

455Vérifiez la clé téléchargée avec `sha256sum /etc/apk/keys/claude-code.rsa.pub`, qui devrait signaler `395759c1f7449ef4cdef305a42e820f3c766d6090d142634ebdb049f113168b6`.411> [tab] dnf

412>

413> Pour Fedora et RHEL. Les commandes suivantes configurent le canal `stable` :

414>

415> ```bash theme={null}

416> sudo tee /etc/yum.repos.d/claude-code.repo <<'EOF'

417> [claude-code]

418> name=Claude Code

419> baseurl=https://downloads.claude.ai/claude-code/rpm/stable

420> enabled=1

421> gpgcheck=1

422> gpgkey=https://downloads.claude.ai/keys/claude-code.asc

423> EOF

424> sudo dnf install claude-code

425> ```

426>

427> Pour utiliser le canal `latest` à la place, définissez `baseurl` sur le dépôt `latest` :

428>

429> ```ini theme={null}

430> baseurl=https://downloads.claude.ai/claude-code/rpm/latest

431> ```

432>

433> dnf télécharge la clé lors de la première installation et vous demande de confirmer l'empreinte digitale. Vérifiez qu'elle correspond à `31DD DE24 DDFA B679 F42D 7BD2 BAA9 29FF 1A7E CACE` avant d'accepter.

434>

435> Pour mettre à jour ultérieurement, exécutez `sudo dnf upgrade claude-code`.

456 436 

457Pour mettre à jour ultérieurement, exécutez `apk update && apk upgrade claude-code`.437> [tab] apk

438>

439> Pour Alpine Linux. Les commandes suivantes configurent le canal `stable` :

440>

441> ```sh theme={null}

442> wget -O /etc/apk/keys/claude-code.rsa.pub \

443> https://downloads.claude.ai/keys/claude-code.rsa.pub

444> echo "https://downloads.claude.ai/claude-code/apk/stable" >> /etc/apk/repositories

445> apk add claude-code

446> ```

447>

448> Pour basculer vers le canal `latest`, supprimez la ligne du dépôt `stable` et ajoutez le dépôt `latest` :

449>

450> ```sh theme={null}

451> sed -i '\|downloads.claude.ai/claude-code/apk/stable|d' /etc/apk/repositories

452> echo "https://downloads.claude.ai/claude-code/apk/latest" >> /etc/apk/repositories

453> ```

454>

455> Vérifiez la clé téléchargée avec `sha256sum /etc/apk/keys/claude-code.rsa.pub`, qui devrait signaler `395759c1f7449ef4cdef305a42e820f3c766d6090d142634ebdb049f113168b6`.

456>

457> Pour mettre à jour ultérieurement, exécutez `apk update && apk upgrade claude-code`.

458 458 

459### Installer avec npm459### Installer avec npm

460 460 


546 546 

547Comparez la somme de contrôle SHA256 du binaire avec la valeur répertoriée sous `platforms.<platform>.checksum` dans `manifest.json`. Les commandes ci-dessous supposent un binaire `claude` dans le répertoire courant. Pour vérifier un binaire natif installé à la place, exécutez la commande par rapport à `~/.local/share/claude/versions/VERSION`, en remplaçant VERSION par la version que vous avez définie à l'étape 2.547Comparez la somme de contrôle SHA256 du binaire avec la valeur répertoriée sous `platforms.<platform>.checksum` dans `manifest.json`. Les commandes ci-dessous supposent un binaire `claude` dans le répertoire courant. Pour vérifier un binaire natif installé à la place, exécutez la commande par rapport à `~/.local/share/claude/versions/VERSION`, en remplaçant VERSION par la version que vous avez définie à l'étape 2.

548 548 

549**Linux**549> [tab] Linux

550 550>

551```bash theme={null}551> ```bash theme={null}

552sha256sum claude552> sha256sum claude

553```553> ```

554 

555**macOS**

556 

557```bash theme={null}

558shasum -a 256 claude

559```

560 554 

561**Windows PowerShell**555> [tab] macOS

556>

557> ```bash theme={null}

558> shasum -a 256 claude

559> ```

562 560 

563```powershell theme={null}561> [tab] Windows PowerShell

564(Get-FileHash claude.exe -Algorithm SHA256).Hash.ToLower()562>

565```563> ```powershell theme={null}

564> (Get-FileHash claude.exe -Algorithm SHA256).Hash.ToLower()

565> ```

566 566 

567> [!NOTE]567> [!NOTE]

568>568>


584 584 

585Supprimez le binaire Claude Code et les fichiers de version :585Supprimez le binaire Claude Code et les fichiers de version :

586 586 

587**macOS, Linux, WSL**587> [tab] macOS, Linux, WSL

588 588>

589```bash theme={null}589> ```bash theme={null}

590rm -f ~/.local/bin/claude590> rm -f ~/.local/bin/claude

591rm -rf ~/.local/share/claude591> rm -rf ~/.local/share/claude

592```592> ```

593 

594**Windows PowerShell**

595 593 

596```powershell theme={null}594> [tab] Windows PowerShell

597Remove-Item -Path "$env:USERPROFILE\.local\bin\claude.exe" -Force595>

598Remove-Item -Path "$env:USERPROFILE\.local\share\claude" -Recurse -Force596> ```powershell theme={null}

599```597> Remove-Item -Path "$env:USERPROFILE\.local\bin\claude.exe" -Force

598> Remove-Item -Path "$env:USERPROFILE\.local\share\claude" -Recurse -Force

599> ```

600 600 

601### Désinstaller avec Homebrew601### Désinstaller avec Homebrew

602 602 


624 624 

625Supprimez le paquet et la configuration du référentiel :625Supprimez le paquet et la configuration du référentiel :

626 626 

627**apt**627> [tab] apt

628 628>

629```bash theme={null}629> ```bash theme={null}

630sudo apt remove claude-code630> sudo apt remove claude-code

631sudo rm /etc/apt/sources.list.d/claude-code.list /etc/apt/keyrings/claude-code.asc631> sudo rm /etc/apt/sources.list.d/claude-code.list /etc/apt/keyrings/claude-code.asc

632```632> ```

633 

634**dnf**

635 

636```bash theme={null}

637sudo dnf remove claude-code

638sudo rm /etc/yum.repos.d/claude-code.repo

639```

640 633 

641**apk**634> [tab] dnf

635>

636> ```bash theme={null}

637> sudo dnf remove claude-code

638> sudo rm /etc/yum.repos.d/claude-code.repo

639> ```

642 640 

643```sh theme={null}641> [tab] apk

644apk del claude-code642>

645sed -i '\|downloads.claude.ai/claude-code/apk|d' /etc/apk/repositories643> ```sh theme={null}

646rm /etc/apk/keys/claude-code.rsa.pub644> apk del claude-code

647```645> sed -i '\|downloads.claude.ai/claude-code/apk|d' /etc/apk/repositories

646> rm /etc/apk/keys/claude-code.rsa.pub

647> ```

648 648 

649### Désinstaller avec npm649### Désinstaller avec npm

650 650 


664 664 

665Pour supprimer les paramètres et données en cache de Claude Code :665Pour supprimer les paramètres et données en cache de Claude Code :

666 666 

667**macOS, Linux, WSL**667> [tab] macOS, Linux, WSL

668 668>

669```bash theme={null}669> ```bash theme={null}

670# Supprimer les paramètres utilisateur et l'état670> # Supprimer les paramètres utilisateur et l'état

671rm -rf ~/.claude671> rm -rf ~/.claude

672rm ~/.claude.json672> rm ~/.claude.json

673 673>

674# Supprimer les paramètres spécifiques au projet (exécutez depuis votre répertoire de projet)674> # Supprimer les paramètres spécifiques au projet (exécutez depuis votre répertoire de projet)

675rm -rf .claude675> rm -rf .claude

676rm -f .mcp.json676> rm -f .mcp.json

677```677> ```

678 

679**Windows PowerShell**

680 

681```powershell theme={null}

682# Supprimer les paramètres utilisateur et l'état

683Remove-Item -Path "$env:USERPROFILE\.claude" -Recurse -Force

684Remove-Item -Path "$env:USERPROFILE\.claude.json" -Force

685 678 

686# Supprimer les paramètres spécifiques au projet (exécutez depuis votre répertoire de projet)679> [tab] Windows PowerShell

687Remove-Item -Path ".claude" -Recurse -Force680>

688Remove-Item -Path ".mcp.json" -Force681> ```powershell theme={null}

689```682> # Supprimer les paramètres utilisateur et l'état

683> Remove-Item -Path "$env:USERPROFILE\.claude" -Recurse -Force

684> Remove-Item -Path "$env:USERPROFILE\.claude.json" -Force

685>

686> # Supprimer les paramètres spécifiques au projet (exécutez depuis votre répertoire de projet)

687> Remove-Item -Path ".claude" -Recurse -Force

688> Remove-Item -Path ".mcp.json" -Force

689> ```

skills.md +1 −1

Details

42* **Extensions** : skills, serveurs MCP et plugins inutilisés comparés à leur coût en contexte, et [hooks](https://code.claude.com/docs/fr/hooks.md) lents42* **Extensions** : skills, serveurs MCP et plugins inutilisés comparés à leur coût en contexte, et [hooks](https://code.claude.com/docs/fr/hooks.md) lents

43* **Fichiers `CLAUDE.md`** : fichiers `CLAUDE.md` locaux qui dupliquent ceux versionnés dans le dépôt, [contenu de `CLAUDE.md` que Claude pourrait déduire de la base de code](https://code.claude.com/docs/fr/memory#my-claude-md-is-too-large) versionné dans le dépôt, et les consignes toujours chargées restantes, que Claude propose de migrer vers des skills et des fichiers `CLAUDE.md` imbriqués chargés à la demande43* **Fichiers `CLAUDE.md`** : fichiers `CLAUDE.md` locaux qui dupliquent ceux versionnés dans le dépôt, [contenu de `CLAUDE.md` que Claude pourrait déduire de la base de code](https://code.claude.com/docs/fr/memory#my-claude-md-is-too-large) versionné dans le dépôt, et les consignes toujours chargées restantes, que Claude propose de migrer vers des skills et des fichiers `CLAUDE.md` imbriqués chargés à la demande

44* **Permissions** : une proposition de faire du [mode auto](https://code.claude.com/docs/fr/permissions.md#permission-modes) votre mode de permission par défaut et de [pré-approuver](https://code.claude.com/docs/fr/permissions.md) les commandes en lecture seule que vous refusez fréquemment44* **Permissions** : une proposition de faire du [mode auto](https://code.claude.com/docs/fr/permissions.md#permission-modes) votre mode de permission par défaut et de [pré-approuver](https://code.claude.com/docs/fr/permissions.md) les commandes en lecture seule que vous refusez fréquemment

45* **Utilisation** : avec un forfait Pro, Max, Team ou Enterprise, les [modifications recommandées par `/usage`](https://code.claude.com/docs/fr/costs#plan-usage-breakdown) pour réduire l'utilisation de votre forfait, mesurée sur les 7 derniers jours. Claude propose les modifications qu'il peut effectuer lui-même et présente le reste sous forme de conseils, comme une commande à exécuter vous-même. La vérification de l'utilisation nécessite Claude Code v2.1.305 ou version ultérieure, et `/doctor` l'omet lorsque [Remote Control](https://code.claude.com/docs/fr/remote-control.md) est connecté.45* **Utilisation** : avec un forfait Pro, Max, Ultra, Team ou Enterprise, les [modifications recommandées par `/usage`](https://code.claude.com/docs/fr/costs#plan-usage-breakdown) pour réduire l'utilisation de votre forfait, mesurée sur les 7 derniers jours. Claude propose les modifications qu'il peut effectuer lui-même et présente le reste sous forme de conseils, comme une commande à exécuter vous-même. La vérification de l'utilisation nécessite Claude Code v2.1.305 ou version ultérieure, et `/doctor` l'omet lorsque [Remote Control](https://code.claude.com/docs/fr/remote-control.md) est connecté.

46 46 

47Pour obtenir des diagnostics d'installation en lecture seule sans démarrer de session, exécutez plutôt `claude doctor` dans votre terminal.47Pour obtenir des diagnostics d'installation en lecture seule sans démarrer de session, exécutez plutôt `claude doctor` dans votre terminal.

48 48 

slack.md +11 −11

Details

4 4 

5# Claude Code dans Slack5# Claude Code dans Slack

6 6 

7> Déléguez les tâches de codage depuis Slack. Cette version antérieure ne répond aux mentions dans les canaux que des comptes Pro et Max, dans les espaces de travail non connectés à Claude Tag.7> Déléguez les tâches de codage depuis Slack. Cette version antérieure ne répond aux mentions que des comptes Pro, Max et Ultra, dans les espaces de travail non connectés à Claude Tag.

8 8 

9> [!WARNING]9> [!WARNING]

10>10>

11> Cette page documente la version antérieure de Claude Code dans Slack, qui exécute chaque session sous le compte d'un utilisateur individuel. Elle ne répond aux @mentions dans les canaux que des comptes Pro et Max, et uniquement dans un espace de travail Slack qu'aucune organisation n'a connecté à [Claude Tag](https://claude.com/product/tag). Claude Tag exécute @Claude en tant qu'identité partagée de votre organisation avec un accès configuré par l'administrateur.11> Cette version antérieure de Claude Code dans Slack ne répond aux @mentions dans les canaux que des comptes Pro, Max et Ultra, et uniquement dans un espace de travail Slack qu'aucune organisation n'a connecté à [Claude Tag](https://claude.com/product/tag). Chaque session s'exécute sous le compte d'un utilisateur individuel. Claude Tag exécute @Claude en tant qu'identité partagée de votre organisation avec un accès configuré par l'administrateur.

12>12>

13> * **Plans Pro et Max :** Claude Tag n'est pas disponible sur les plans individuels, donc cette page reste le chemin de configuration dans un espace de travail qui n'est pas connecté à Claude Tag.13> * **Plans Pro, Max et Ultra :** Claude Tag n'est pas disponible sur les plans individuels, donc [configurez cette version](#setting-up-claude-code-in-slack) dans un espace de travail qui n'est pas connecté à Claude Tag.

14> * **Plans Team et Enterprise :** votre application Slack existante et votre handle @Claude restent. [Configurez Claude Tag](https://claude.com/docs/claude-tag/overview) pour un nouvel espace de travail ; pour en migrer un qui utilise déjà cette version, consultez [Migrer depuis la version antérieure de Claude dans Slack](https://claude.com/docs/claude-tag/admins/migrate-from-earlier).14> * **Plans Team et Enterprise :** votre application Slack existante et votre handle @Claude restent. [Configurez Claude Tag](https://claude.com/docs/claude-tag/overview) pour un nouvel espace de travail ; pour en migrer un qui utilise déjà cette version, consultez [Migrer depuis la version antérieure de Claude dans Slack](https://claude.com/docs/claude-tag/admins/migrate-from-earlier).

15> * **Avis au lieu d'une réponse :** consultez l'[avis de configuration](#this-workspace-isnt-set-up-for-claude-tag-yet) ou l'[avis de retrait](#the-legacy-claude-in-slack-bot-is-retired) par lequel @Claude a répondu.15> * **Avis au lieu d'une réponse :** consultez l'[avis de configuration](#this-workspace-isnt-set-up-for-claude-tag-yet) ou l'[avis de retrait](#the-legacy-claude-in-slack-bot-is-retired) par lequel @Claude a répondu.

16 16 


31 31 

32| Condition | Détails |32| Condition | Détails |

33| :- | :- |33| :- | :- |

34| Plan Claude | Pro ou Max |34| Plan Claude | Pro, Max ou Ultra |

35| Espace de travail Slack | Aucune organisation ne l'a connecté à [Claude Tag](https://claude.com/docs/claude-tag/overview). Si @Claude répond avec l'[avis de retrait](#the-legacy-claude-in-slack-bot-is-retired), l'espace de travail est connecté |35| Espace de travail Slack | Aucune organisation ne l'a connecté à [Claude Tag](https://claude.com/docs/claude-tag/overview). Si @Claude répond avec l'[avis de retrait](#the-legacy-claude-in-slack-bot-is-retired), l'espace de travail est connecté |

36| Sessions cloud | Les [sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) sont activées pour votre compte |36| Sessions cloud | Les [sessions cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md) sont activées pour votre compte |

37| Compte GitHub | Connecté à [claude.ai/code](https://claude.ai/code) avec au moins un dépôt authentifié |37| Compte GitHub | Connecté à [claude.ai/code](https://claude.ai/code) avec au moins un dépôt authentifié |


178@Claude répond dans le fil avec cet avis au lieu d'une réponse lorsque les deux conditions suivantes sont remplies :178@Claude répond dans le fil avec cet avis au lieu d'une réponse lorsque les deux conditions suivantes sont remplies :

179 179 

180* Aucune organisation n'a connecté votre espace de travail Slack à [Claude Tag](https://claude.com/docs/claude-tag/overview).180* Aucune organisation n'a connecté votre espace de travail Slack à [Claude Tag](https://claude.com/docs/claude-tag/overview).

181* Le compte Claude que vous avez associé dans Slack ne dispose pas d'un plan Pro ou Max.181* Le compte Claude que vous avez associé dans Slack ne dispose pas d'un plan Pro, Max ou Ultra.

182 182 

183Claude Tag est disponible avec les plans Team et Enterprise. Pour connecter l'espace de travail, commencez par la commande `@Claude connect` indiquée dans l'avis, puis suivez [Configurer Claude Tag](https://claude.com/docs/claude-tag/overview).183Claude Tag est disponible avec les plans Team et Enterprise. Pour connecter l'espace de travail, commencez par la commande `@Claude connect` indiquée dans l'avis, puis suivez [Configurer Claude Tag](https://claude.com/docs/claude-tag/overview).

184 184 

185### "The legacy Claude in Slack bot is retired"185### "The legacy Claude in Slack bot is retired"

186 186 

187L'avis commence par `The legacy Claude in Slack bot is retired effective October 5, 2026 and no longer responds in channels.` Votre espace de travail Slack est connecté à une organisation Claude, et l'ancienne version est toujours sélectionnée pour le canal, l'espace de travail ou la valeur par défaut de l'organisation dans les paramètres Claude Tag de cette organisation. L'avis ne dépend pas de votre propre plan : les comptes Pro et Max le reçoivent donc également.187L'avis commence par `The legacy Claude in Slack bot is retired effective October 5, 2026 and no longer responds in channels.` Votre espace de travail Slack est connecté à une organisation Claude. L'ancienne version est toujours sélectionnée pour le canal, l'espace de travail ou la valeur par défaut de l'organisation dans les paramètres Claude Tag de cette organisation. L'avis ne dépend pas de votre propre plan : les comptes Pro, Max et Ultra le reçoivent donc également.

188 188 

189Si vous êtes propriétaire de cette organisation, ouvrez les [paramètres d'administration de Claude](https://claude.ai/admin-settings/claude-tag) et activez Claude Tag pour le canal. Pour corriger tous les canaux qui héritent de ce paramètre, modifiez-le plutôt au niveau de l'espace de travail ou de la valeur par défaut de l'organisation. Pour la migration complète, consultez [Migrer depuis l'ancienne version de Claude in Slack](https://claude.com/docs/claude-tag/admins/migrate-from-earlier). Si vous n'êtes pas propriétaire, envoyez cette entrée à un propriétaire.189Si vous êtes propriétaire de cette organisation, ouvrez les [paramètres d'administration de Claude](https://claude.ai/admin-settings/claude-tag) et activez Claude Tag pour le canal. Pour corriger tous les canaux qui héritent de ce paramètre, modifiez-le plutôt au niveau de l'espace de travail ou de la valeur par défaut de l'organisation. Pour la migration complète, consultez [Migrer depuis l'ancienne version de Claude in Slack](https://claude.com/docs/claude-tag/admins/migrate-from-earlier). Si vous n'êtes pas propriétaire, envoyez cette entrée à un propriétaire.

190 190 


235 235 

236## Ressources connexes236## Ressources connexes

237 237 

238> **[Claude Code dans le cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md)**238> [card] [Claude Code dans le cloud](https://code.claude.com/docs/fr/claude-code-on-the-web.md)

239>239>

240> En savoir plus sur les sessions cloud240> En savoir plus sur les sessions cloud

241 241 

242> **[Claude pour Slack](https://claude.com/claude-and-slack)**242> [card] [Claude pour Slack](https://claude.com/claude-and-slack)

243>243>

244> Documentation générale de Claude pour Slack244> Documentation générale de Claude pour Slack

245 245 

246> **[Claude Tag](https://claude.com/docs/claude-tag/overview)**246> [card] [Claude Tag](https://claude.com/docs/claude-tag/overview)

247>247>

248> @Claude géré par l'organisation dans Slack avec accès configuré par l'administrateur248> @Claude géré par l'organisation dans Slack avec accès configuré par l'administrateur

249 249 

250> **[Slack App Marketplace](https://slack.com/marketplace/A08SF47R6P4)**250> [card] [Slack App Marketplace](https://slack.com/marketplace/A08SF47R6P4)

251>251>

252> Installez l'application Claude à partir de la Slack Marketplace252> Installez l'application Claude à partir de la Slack Marketplace

253 253 

254> **[Centre d'aide Claude](https://support.claude.com)**254> [card] [Centre d'aide Claude](https://support.claude.com)

255>255>

256> Obtenir un support supplémentaire256> Obtenir un support supplémentaire

statusline.md +4 −4

Details

212| `worktree.original_cwd` | Le répertoire dans lequel Claude se trouvait avant d'entrer dans le worktree |212| `worktree.original_cwd` | Le répertoire dans lequel Claude se trouvait avant d'entrer dans le worktree |

213| `worktree.original_branch` | Branche git extraite avant d'entrer dans le worktree. Absent pour les worktrees basés sur des hooks |213| `worktree.original_branch` | Branche git extraite avant d'entrer dans le worktree. Absent pour les worktrees basés sur des hooks |

214 214 

215> **Schéma JSON complet**215> [accordion] Schéma JSON complet

216>216>

217> Votre commande de barre de statut reçoit cette structure JSON via stdin :217> Votre commande de barre de statut reçoit cette structure JSON via stdin :

218>218>


341> * `agent` : apparaît uniquement lors de l'exécution avec l'indicateur `--agent` ou les paramètres d'agent configurés341> * `agent` : apparaît uniquement lors de l'exécution avec l'indicateur `--agent` ou les paramètres d'agent configurés

342> * `pr` : apparaît uniquement tant qu'une PR ouverte ou une demande de fusion GitLab est trouvée pour la branche actuelle, et est supprimée une fois qu'elle fusionne ou se ferme. `pr.review_state` et `pr.kind` peuvent être indépendamment absents342> * `pr` : apparaît uniquement tant qu'une PR ouverte ou une demande de fusion GitLab est trouvée pour la branche actuelle, et est supprimée une fois qu'elle fusionne ou se ferme. `pr.review_state` et `pr.kind` peuvent être indépendamment absents

343> * `worktree` : apparaît uniquement pendant une [session worktree](https://code.claude.com/docs/fr/worktrees.md). Quand présent, `branch` et `original_branch` peuvent aussi être absents pour les worktrees basés sur des hooks343> * `worktree` : apparaît uniquement pendant une [session worktree](https://code.claude.com/docs/fr/worktrees.md). Quand présent, `branch` et `original_branch` peuvent aussi être absents pour les worktrees basés sur des hooks

344> * `rate_limits` : apparaît uniquement pour les abonnés Claude.ai Pro et Max, ou derrière une passerelle d'applications Claude qui définit une limite de dépenses pour vous, et uniquement après la première réponse API dans la session. Chaque fenêtre (`five_hour`, `seven_day`, `spend_limit`) peut être indépendamment absente, et Claude Code supprime une fenêtre une fois que son heure `resets_at` passe. Utilisez `jq -r '.rate_limits.five_hour.used_percentage // empty'` pour gérer l'absence avec élégance.344> * `rate_limits` : apparaît uniquement pour les abonnés claude.ai Pro, Max et Ultra, ou derrière une passerelle d'applications Claude qui définit une limite de dépenses pour vous. Même dans ce cas, il n'apparaît qu'après la première réponse API dans la session. Chaque fenêtre (`five_hour`, `seven_day`, `spend_limit`) peut être indépendamment absente, et Claude Code supprime une fenêtre une fois que son heure `resets_at` est passée. Utilisez `jq -r '.rate_limits.five_hour.used_percentage // empty'` pour gérer l'absence avec élégance.

345> * `prompt_cache` : apparaît après la première réponse API de la conversation principale. Consultez [champs de cache d'invite](#prompt-cache-fields)345> * `prompt_cache` : apparaît après la première réponse API de la conversation principale. Consultez [champs de cache d'invite](#prompt-cache-fields)

346>346>

347> **Champs qui peuvent être `null`** :347> **Champs qui peuvent être `null`** :


819 819 

820### Utilisation des limites de débit820### Utilisation des limites de débit

821 821 

822Affiche dans la barre de statut l'utilisation des limites de débit d'abonnement Claude.ai, ou vos dépenses par rapport à la limite de dépenses d'une passerelle d'applications Claude. Pour les abonnés, l'objet `rate_limits` contient une fenêtre glissante `five_hour` et une fenêtre hebdomadaire `seven_day`. Chaque fenêtre fournit `used_percentage`, de 0 à 100, et `resets_at`, les secondes d'époque Unix auxquelles la fenêtre se réinitialise. Derrière une passerelle, lisez l'objet `spend_limit`, décrit dans [champs de limite de dépenses](#spend-limit-fields).822Affiche dans la barre de statut l'utilisation des limites de débit d'abonnement Claude.ai, ou vos dépenses par rapport à la limite de dépenses d'une passerelle d'applications Claude. Pour les abonnés, l'objet `rate_limits` peut contenir une fenêtre glissante `five_hour` et une fenêtre hebdomadaire `seven_day`. Chaque fenêtre fournit `used_percentage`, de 0 à 100, et `resets_at`, les secondes d'époque Unix auxquelles la fenêtre se réinitialise. Derrière une passerelle, lisez l'objet `spend_limit`, décrit dans [champs de limite de dépenses](#spend-limit-fields).

823 823 

824L'objet `rate_limits` n'est présent que pour les abonnés Claude.ai Pro et Max, ou derrière une passerelle d'applications Claude avec des limites de dépenses, et uniquement après la première réponse API. Chaque script gère les champs absents avec élégance et, derrière une passerelle, affiche `spend: $314.12 / $500`, ou `spend: 63%` lorsque les champs en dollars sont absents :824L'objet `rate_limits` n'est présent que pour les abonnés Claude.ai Pro, Max et Ultra, ou derrière une passerelle d'applications Claude avec des limites de dépenses, et uniquement après la première réponse API. Chaque script gère les champs absents avec élégance et, derrière une passerelle, affiche `spend: $314.12 / $500`, ou `spend: 63%` lorsque les champs en dollars sont absents :

825 825 

826```bash Bash theme={null}826```bash Bash theme={null}

827#!/bin/bash827#!/bin/bash

sub-agents.md +77 −77

Details

32 32 

33Explore et Plan démarrent sans vos fichiers CLAUDE.md ni l'instantané du statut git afin que la recherche reste rapide et peu coûteuse. Les autres sous-agents intégrés et les [sous-agents personnalisés](#configure-subagents) chargent les deux, sauf si vous définissez [`omitClaudeMd`](#supported-frontmatter-fields) dans la définition d'un sous-agent personnalisé pour le démarrer sans les fichiers CLAUDE.md utilisateur, projet et locaux. Pour le détail complet de ce qui parvient à un sous-agent, consultez [ce qui est chargé au démarrage](#what-loads-at-startup).33Explore et Plan démarrent sans vos fichiers CLAUDE.md ni l'instantané du statut git afin que la recherche reste rapide et peu coûteuse. Les autres sous-agents intégrés et les [sous-agents personnalisés](#configure-subagents) chargent les deux, sauf si vous définissez [`omitClaudeMd`](#supported-frontmatter-fields) dans la définition d'un sous-agent personnalisé pour le démarrer sans les fichiers CLAUDE.md utilisateur, projet et locaux. Pour le détail complet de ce qui parvient à un sous-agent, consultez [ce qui est chargé au démarrage](#what-loads-at-startup).

34 34 

35**Explore**35> [tab] Explore

36 36>

37Un agent rapide, en lecture seule, optimisé pour rechercher et analyser des bases de code.37> Un agent rapide, en lecture seule, optimisé pour rechercher et analyser des bases de code.

38 38>

39* **Modèle** : le modèle de la conversation principale. Lorsque la conversation principale s'exécute sur Fable, le modèle d'Explore dépend de votre mode de connexion :39> * **Modèle** : le modèle de la conversation principale. Lorsque la conversation principale s'exécute sur Fable, le modèle d'Explore dépend de votre mode de connexion :

40 * Avec un abonnement Claude, un compte Anthropic Console ou une [passerelle LLM](https://code.claude.com/docs/fr/llm-gateway) atteinte via `ANTHROPIC_BASE_URL`, Explore s'exécute sur le modèle Opus vers lequel l'[alias `opus`](https://code.claude.com/docs/fr/model-config#model-aliases) est résolu.40> * Avec un abonnement Claude, un compte Anthropic Console ou une [passerelle LLM](https://code.claude.com/docs/fr/llm-gateway) atteinte via `ANTHROPIC_BASE_URL`, Explore s'exécute sur le modèle Opus vers lequel l'[alias `opus`](https://code.claude.com/docs/fr/model-config#model-aliases) est résolu.

41 * Sur Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry, [Claude Platform on AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md) ou une [passerelle Claude apps](https://code.claude.com/docs/fr/claude-apps-gateway), Explore reste sur le modèle de la conversation principale.41> * Sur Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry, [Claude Platform on AWS](https://code.claude.com/docs/fr/claude-platform-on-aws.md) ou une [passerelle Claude apps](https://code.claude.com/docs/fr/claude-apps-gateway), Explore reste sur le modèle de la conversation principale.

42* **Outils** : outils en lecture seule ; Write et Edit sont refusés42> * **Outils** : outils en lecture seule ; Write et Edit sont refusés

43* **Objectif** : découverte de fichiers, recherche de code, exploration de la base de code43> * **Objectif** : découverte de fichiers, recherche de code, exploration de la base de code

44 44>

45Un [sous-agent utilisateur ou projet](#choose-the-subagent-scope) nommé `Explore` remplace le sous-agent intégré et conserve son propre champ `model` : définissez-en donc un avec `model: haiku` pour exécuter l'exploration sur un modèle moins coûteux. Pour imposer un même modèle à tous les sous-agents, Explore compris, consultez [Exécuter tous les sous-agents sur un seul modèle](#run-every-subagent-on-one-model).45> Un [sous-agent utilisateur ou projet](#choose-the-subagent-scope) nommé `Explore` remplace le sous-agent intégré et conserve son propre champ `model` : définissez-en donc un avec `model: haiku` pour exécuter l'exploration sur un modèle moins coûteux. Pour imposer un même modèle à tous les sous-agents, Explore compris, consultez [Exécuter tous les sous-agents sur un seul modèle](#run-every-subagent-on-one-model).

46 46>

47Claude délègue à Explore lorsqu'il doit rechercher ou comprendre une base de code sans apporter de modifications. Cela permet de garder les résultats d'exploration hors du contexte de votre conversation principale.47> Claude délègue à Explore lorsqu'il doit rechercher ou comprendre une base de code sans apporter de modifications. Cela permet de garder les résultats d'exploration hors du contexte de votre conversation principale.

48 48>

49Lorsqu'il invoque Explore, Claude spécifie un niveau de minutie : **quick** pour des recherches ciblées, **medium** pour une exploration équilibrée, ou **very thorough** pour une analyse exhaustive.49> Lorsqu'il invoque Explore, Claude spécifie un niveau de minutie : **quick** pour des recherches ciblées, **medium** pour une exploration équilibrée, ou **very thorough** pour une analyse exhaustive.

50 

51**Plan**

52 

53Un agent de recherche utilisé pendant le [mode plan](https://code.claude.com/docs/fr/permission-modes.md#analyze-before-you-edit-with-plan-mode) pour rassembler du contexte avant de présenter un plan.

54 

55* **Modèle** : hérite de la conversation principale, sauf si vous définissez `CLAUDE_CODE_SUBAGENT_MODEL` et [l'imposez à tous les sous-agents](#run-every-subagent-on-one-model)

56* **Outils** : outils en lecture seule ; Write et Edit sont refusés

57* **Objectif** : recherche dans la base de code pour la planification

58 

59Lorsque vous êtes en mode plan et que Claude doit comprendre votre base de code, il délègue la recherche au sous-agent Plan afin que le résultat de l'exploration reste dans une fenêtre de contexte distincte tandis que la conversation principale reste en lecture seule.

60 

61**General-purpose**

62 

63Un agent performant pour les tâches complexes en plusieurs étapes qui nécessitent à la fois exploration et action.

64 

65* **Modèle** : le modèle [`CLAUDE_CODE_SUBAGENT_MODEL`](#choose-a-model) si vous en définissez un et qu'aucun autre mécanisme n'attribue de modèle, sinon le modèle de la conversation principale ; [Choisir un modèle](#choose-a-model) indique l'ordre complet, et [Exécuter tous les sous-agents sur un seul modèle](#run-every-subagent-on-one-model) montre comment faire en sorte que la variable remplace ces sources

66* **Outils** : tous les outils [disponibles pour les sous-agents](#available-tools)

67* **Objectif** : recherche complexe, opérations en plusieurs étapes, modifications de code

68 

69Claude délègue à general-purpose lorsque la tâche nécessite à la fois exploration et modification, un raisonnement complexe pour interpréter les résultats, ou plusieurs étapes dépendantes.

70 50 

71**Other**51> [tab] Plan

52>

53> Un agent de recherche utilisé pendant le [mode plan](https://code.claude.com/docs/fr/permission-modes.md#analyze-before-you-edit-with-plan-mode) pour rassembler du contexte avant de présenter un plan.

54>

55> * **Modèle** : hérite de la conversation principale, sauf si vous définissez `CLAUDE_CODE_SUBAGENT_MODEL` et [l'imposez à tous les sous-agents](#run-every-subagent-on-one-model)

56> * **Outils** : outils en lecture seule ; Write et Edit sont refusés

57> * **Objectif** : recherche dans la base de code pour la planification

58>

59> Lorsque vous êtes en mode plan et que Claude doit comprendre votre base de code, il délègue la recherche au sous-agent Plan afin que le résultat de l'exploration reste dans une fenêtre de contexte distincte tandis que la conversation principale reste en lecture seule.

72 60 

73Claude Code inclut des agents auxiliaires supplémentaires pour des tâches spécifiques. Ceux-ci sont généralement invoqués automatiquement, vous n'avez donc pas besoin de les utiliser directement.61> [tab] General-purpose

62>

63> Un agent performant pour les tâches complexes en plusieurs étapes qui nécessitent à la fois exploration et action.

64>

65> * **Modèle** : le modèle [`CLAUDE_CODE_SUBAGENT_MODEL`](#choose-a-model) si vous en définissez un et qu'aucun autre mécanisme n'attribue de modèle, sinon le modèle de la conversation principale ; [Choisir un modèle](#choose-a-model) indique l'ordre complet, et [Exécuter tous les sous-agents sur un seul modèle](#run-every-subagent-on-one-model) montre comment faire en sorte que la variable remplace ces sources

66> * **Outils** : tous les outils [disponibles pour les sous-agents](#available-tools)

67> * **Objectif** : recherche complexe, opérations en plusieurs étapes, modifications de code

68>

69> Claude délègue à general-purpose lorsque la tâche nécessite à la fois exploration et modification, un raisonnement complexe pour interpréter les résultats, ou plusieurs étapes dépendantes.

74 70 

75| Agent | Modèle | Quand Claude l'utilise |71> [tab] Other

76| :- | :- | :- |72>

77| claude | Aucun qui lui soit propre ; suit l'[ordre des modèles](#choose-a-model) lorsque Claude le lance en tant que sous-agent | Lorsqu'une tâche ne correspond à aucun agent plus spécialisé. Un agent polyvalent disposant de tous les outils [disponibles pour les sous-agents](#available-tools). C'est aussi l'agent par défaut d'une [session en arrière-plan](https://code.claude.com/docs/fr/agent-view.md) lancée ; [le mode de permission dans lequel il démarre](https://code.claude.com/docs/fr/agent-view.md#permission-mode-model-and-effort) dépend de la manière dont la session a été démarrée |73> Claude Code inclut des agents auxiliaires supplémentaires pour des tâches spécifiques. Ceux-ci sont généralement invoqués automatiquement, vous n'avez donc pas besoin de les utiliser directement.

78| statusline-setup | Sonnet | Lorsque vous exécutez `/statusline` pour configurer votre barre de statut |74>

79| claude-code-guide | Haiku | Lorsque vous posez des questions sur les fonctionnalités de Claude Code |75> | Agent | Modèle | Quand Claude l'utilise |

76> | :- | :- | :- |

77> | claude | Aucun qui lui soit propre ; suit l'[ordre des modèles](#choose-a-model) lorsque Claude le lance en tant que sous-agent | Lorsqu'une tâche ne correspond à aucun agent plus spécialisé. Un agent polyvalent disposant de tous les outils [disponibles pour les sous-agents](#available-tools). C'est aussi l'agent par défaut d'une [session en arrière-plan](https://code.claude.com/docs/fr/agent-view.md) lancée ; [le mode de permission dans lequel il démarre](https://code.claude.com/docs/fr/agent-view.md#permission-mode-model-and-effort) dépend de la manière dont la session a été démarrée |

78> | statusline-setup | Sonnet | Lorsque vous exécutez `/statusline` pour configurer votre barre de statut |

79> | claude-code-guide | Haiku | Lorsque vous posez des questions sur les fonctionnalités de Claude Code |

80 80 

81Les sous-agents intégrés sont enregistrés par défaut dans les sessions interactives. Pour les restreindre :81Les sous-agents intégrés sont enregistrés par défaut dans les sessions interactives. Pour les restreindre :

82 82 


179 179 

180**Les sous-agents définis par CLI** sont passés en JSON lors du lancement de Claude Code. Ils n'existent que pour cette session et ne sont pas enregistrés sur le disque, ce qui les rend utiles pour les tests rapides ou les scripts d'automatisation. Vous pouvez définir plusieurs sous-agents dans un seul appel `--agents` :180**Les sous-agents définis par CLI** sont passés en JSON lors du lancement de Claude Code. Ils n'existent que pour cette session et ne sont pas enregistrés sur le disque, ce qui les rend utiles pour les tests rapides ou les scripts d'automatisation. Vous pouvez définir plusieurs sous-agents dans un seul appel `--agents` :

181 181 

182**macOS, Linux, WSL**182> [tab] macOS, Linux, WSL

183 183>

184```bash theme={null}184> ```bash theme={null}

185claude --agents '{185> claude --agents '{

186 "code-reviewer": {186> "code-reviewer": {

187 "description": "Expert code reviewer. Use proactively after code changes.",187> "description": "Expert code reviewer. Use proactively after code changes.",

188 "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",188> "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",

189 "tools": ["Read", "Grep", "Glob", "Bash"],189> "tools": ["Read", "Grep", "Glob", "Bash"],

190 "model": "sonnet"190> "model": "sonnet"

191 },191> },

192 "debugger": {192> "debugger": {

193 "description": "Debugging specialist for errors and test failures.",193> "description": "Debugging specialist for errors and test failures.",

194 "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."194> "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."

195 }195> }

196}'196> }'

197```197> ```

198 198 

199**Windows PowerShell**199> [tab] Windows PowerShell

200 200>

201```powershell theme={null}201> ```powershell theme={null}

202claude --agents @'202> claude --agents @'

203{203> {

204 "code-reviewer": {204> "code-reviewer": {

205 "description": "Expert code reviewer. Use proactively after code changes.",205> "description": "Expert code reviewer. Use proactively after code changes.",

206 "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",206> "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",

207 "tools": ["Read", "Grep", "Glob", "Bash"],207> "tools": ["Read", "Grep", "Glob", "Bash"],

208 "model": "sonnet"208> "model": "sonnet"

209 },209> },

210 "debugger": {210> "debugger": {

211 "description": "Debugging specialist for errors and test failures.",211> "description": "Debugging specialist for errors and test failures.",

212 "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."212> "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."

213 }213> }

214}214> }

215'@215> '@

216```216> ```

217 217 

218En [mode non interactif](https://code.claude.com/docs/fr/headless.md), `--agents` accepte également le chemin d'un fichier JSON contenant le même objet, pour les définitions trop grandes pour être passées sur la ligne de commande. Par exemple, `claude -p --agents ./agents.json "Review my changes"` lit les définitions de ce fichier. Dans une session interactive, Claude Code refuse un chemin de fichier. La forme de fichier nécessite Claude Code v2.1.281 ou ultérieur.218En [mode non interactif](https://code.claude.com/docs/fr/headless.md), `--agents` accepte également le chemin d'un fichier JSON contenant le même objet, pour les définitions trop grandes pour être passées sur la ligne de commande. Par exemple, `claude -p --agents ./agents.json "Review my changes"` lit les définitions de ce fichier. Dans une session interactive, Claude Code refuse un chemin de fichier. La forme de fichier nécessite Claude Code v2.1.281 ou ultérieur.

219 219 

terminal-config.md +16 −16

Details

48 48 

49Certains raccourcis de Claude Code utilisent la touche Option, comme Option+Enter pour insérer une nouvelle ligne ou Option+P pour changer de modèle. Sur macOS, la plupart des terminaux n'envoient pas Option comme modificateur par défaut, de sorte que ces raccourcis ne font rien tant que vous ne l'avez pas activé. Le paramètre du terminal correspondant est généralement intitulé « Use Option as Meta Key » ; Meta est le nom historique Unix de la touche aujourd'hui appelée Option ou Alt.49Certains raccourcis de Claude Code utilisent la touche Option, comme Option+Enter pour insérer une nouvelle ligne ou Option+P pour changer de modèle. Sur macOS, la plupart des terminaux n'envoient pas Option comme modificateur par défaut, de sorte que ces raccourcis ne font rien tant que vous ne l'avez pas activé. Le paramètre du terminal correspondant est généralement intitulé « Use Option as Meta Key » ; Meta est le nom historique Unix de la touche aujourd'hui appelée Option ou Alt.

50 50 

51**Apple Terminal**51> [tab] Apple Terminal

52 52>

53Ouvrez Settings → Profiles → Keyboard et cochez « Use Option as Meta Key ».53> Ouvrez Settings → Profiles → Keyboard et cochez « Use Option as Meta Key ».

54 54>

55Si vous avez accepté le prompt de configuration du terminal proposé au premier lancement de Claude Code, c'est déjà fait. Ce prompt exécute `/terminal-setup` pour vous, ce qui active Option comme Meta et désactive la sonnerie audible dans votre profil Apple Terminal.55> Si vous avez accepté le prompt de configuration du terminal proposé au premier lancement de Claude Code, c'est déjà fait. Ce prompt exécute `/terminal-setup` pour vous, ce qui active Option comme Meta et désactive la sonnerie audible dans votre profil Apple Terminal.

56 56>

57En [mode lecteur d'écran](https://code.claude.com/docs/fr/accessibility.md), `/terminal-setup` laisse le paramètre de sonnerie inchangé afin que la sonnerie du terminal reste audible. Si une exécution précédente a désactivé la sonnerie, réactivez-la sous Settings → Profiles → Advanced → « Audible bell ».57> En [mode lecteur d'écran](https://code.claude.com/docs/fr/accessibility.md), `/terminal-setup` laisse le paramètre de sonnerie inchangé afin que la sonnerie du terminal reste audible. Si une exécution précédente a désactivé la sonnerie, réactivez-la sous Settings → Profiles → Advanced → « Audible bell ».

58 

59**iTerm2**

60 

61Ouvrez Settings → Profiles → Keys → General et définissez Left Option key et Right Option key sur « Esc+ ».

62 

63L'exécution de `/terminal-setup` dans iTerm2 active « Applications in terminal may access clipboard » sous Settings → General → Selection afin que la commande `/copy` puisse écrire dans le presse-papiers de votre système. La commande détecte iTerm2 même lorsqu'elle est exécutée depuis tmux. Redémarrez iTerm2 pour que la modification prenne effet.

64 58 

65**VS Code**59> [tab] iTerm2

60>

61> Ouvrez Settings → Profiles → Keys → General et définissez Left Option key et Right Option key sur « Esc+ ».

62>

63> L'exécution de `/terminal-setup` dans iTerm2 active « Applications in terminal may access clipboard » sous Settings → General → Selection afin que la commande `/copy` puisse écrire dans le presse-papiers de votre système. La commande détecte iTerm2 même lorsqu'elle est exécutée depuis tmux. Redémarrez iTerm2 pour que la modification prenne effet.

66 64 

67Ajoutez `"terminal.integrated.macOptionIsMeta": true` à vos paramètres VS Code.65> [tab] VS Code

66>

67> Ajoutez `"terminal.integrated.macOptionIsMeta": true` à vos paramètres VS Code.

68 68 

69Pour Ghostty, Kitty et les autres terminaux, recherchez un paramètre Option-as-Alt ou Option-as-Meta dans le fichier de configuration du terminal.69Pour Ghostty, Kitty et les autres terminaux, recherchez un paramètre Option-as-Alt ou Option-as-Meta dans le fichier de configuration du terminal.

70 70 


188 188 

189La référence ci-dessous présente les tokens que vous pouvez définir dans `overrides`. L'éditeur interactif de `/theme` affiche les mêmes tokens avec un aperçu en direct, ainsi que quelques accents à usage unique, comme les couleurs de l'écran d'accueil, qui sont omis ici.189La référence ci-dessous présente les tokens que vous pouvez définir dans `overrides`. L'éditeur interactif de `/theme` affiche les mêmes tokens avec un aperçu en direct, ainsi que quelques accents à usage unique, comme les couleurs de l'écran d'accueil, qui sont omis ici.

190 190 

191> **Référence des tokens de couleur**191> [accordion] Référence des tokens de couleur

192>192>

193> L'exemple suivant combine des tokens issus de plusieurs des groupes ci-dessous : l'accent de la marque, la bordure du mode plan, les arrière-plans des diffs et l'arrière-plan des messages.193> L'exemple suivant combine des tokens issus de plusieurs des groupes ci-dessous : l'accent de la marque, la bordure du mode plan, les arrière-plans des diffs et l'arrière-plan des messages.

194>194>

Details

19| Outil | Description | Permission requise |19| Outil | Description | Permission requise |

20| :- | :- | :- |20| :- | :- | :- |

21| `Agent` | Crée un [sous-agent](https://code.claude.com/docs/fr/sub-agents.md) avec sa propre fenêtre de contexte pour gérer une tâche. Avec les [équipes d'agents](https://code.claude.com/docs/fr/agent-teams.md) activées, un appel qui porte un `name` peut lancer un [coéquipier](https://code.claude.com/docs/fr/agent-teams.md#how-claude-starts-agent-teams) à la place. Consultez [Comportement de l'outil Agent](#agent-tool-behavior) | Non |21| `Agent` | Crée un [sous-agent](https://code.claude.com/docs/fr/sub-agents.md) avec sa propre fenêtre de contexte pour gérer une tâche. Avec les [équipes d'agents](https://code.claude.com/docs/fr/agent-teams.md) activées, un appel qui porte un `name` peut lancer un [coéquipier](https://code.claude.com/docs/fr/agent-teams.md#how-claude-starts-agent-teams) à la place. Consultez [Comportement de l'outil Agent](#agent-tool-behavior) | Non |

22| `Artifact` | Publie un fichier HTML ou Markdown en tant qu'[artifact](https://code.claude.com/docs/fr/artifacts.md) : une page privée et interactive sur claude.ai. Vous pouvez la partager avec un lien public, ou au sein de votre organisation sur les plans Team et Enterprise, où le partage public nécessite qu'un propriétaire l'[active](https://code.claude.com/docs/fr/artifacts.md#control-public-sharing). Nécessite un plan Pro, Max, Team ou Enterprise et l'authentification `/login` ; consultez [Disponibilité](https://code.claude.com/docs/fr/artifacts.md#availability) | Oui |22| `Artifact` | Publie un fichier HTML ou Markdown sur claude.ai en tant qu'[artefact](https://code.claude.com/docs/fr/artifacts.md) : une page privée et interactive. Vous pouvez la partager avec un lien public, ou au sein de votre organisation sur les plans Team et Enterprise, où le partage public nécessite qu'un propriétaire l'[active](https://code.claude.com/docs/fr/artifacts.md#control-public-sharing). Nécessite un plan Pro, Max, Ultra, Team ou Enterprise et l'authentification `/login` ; consultez [Disponibilité](https://code.claude.com/docs/fr/artifacts.md#availability) | Oui |

23| `AskUserQuestion` | Pose des questions à choix multiples pour recueillir les exigences ou clarifier l'ambiguïté. Les questions restent ouvertes jusqu'à ce que vous y répondiez par défaut. Consultez [Comportement de l'outil AskUserQuestion](#askuserquestion-tool-behavior) | Non |23| `AskUserQuestion` | Pose des questions à choix multiples pour recueillir les exigences ou clarifier l'ambiguïté. Les questions restent ouvertes jusqu'à ce que vous y répondiez par défaut. Consultez [Comportement de l'outil AskUserQuestion](#askuserquestion-tool-behavior) | Non |

24| `Bash` | Exécute des commandes shell dans votre environnement. Consultez [Comportement de l'outil Bash](#bash-tool-behavior) | Oui |24| `Bash` | Exécute des commandes shell dans votre environnement. Consultez [Comportement de l'outil Bash](#bash-tool-behavior) | Oui |

25| `CronCreate` | Planifie un prompt récurrent ou ponctuel dans la session actuelle. Les tâches sont limitées à la session et restaurées sur `--resume` ou `--continue` si non expirées. Consultez [tâches planifiées limitées à la session](https://code.claude.com/docs/fr/scheduled-tasks.md) | Non |25| `CronCreate` | Planifie un prompt récurrent ou ponctuel dans la session actuelle. Les tâches sont limitées à la session et restaurées sur `--resume` ou `--continue` si non expirées. Consultez [tâches planifiées limitées à la session](https://code.claude.com/docs/fr/scheduled-tasks.md) | Non |


42| `PushNotification` | Envoie une notification de bureau, et une notification push téléphonique quand [Remote Control](https://code.claude.com/docs/fr/remote-control.md) est connecté, afin qu'une tâche longue ou une [tâche planifiée limitée à la session](https://code.claude.com/docs/fr/scheduled-tasks.md) puisse vous atteindre quand vous vous éloignez. La livraison push s'effectue via l'infrastructure hébergée par Anthropic, qui n'est pas accessible depuis Amazon Bedrock, Claude Platform sur AWS, Google Cloud's Agent Platform, ou Microsoft Foundry | Non |42| `PushNotification` | Envoie une notification de bureau, et une notification push téléphonique quand [Remote Control](https://code.claude.com/docs/fr/remote-control.md) est connecté, afin qu'une tâche longue ou une [tâche planifiée limitée à la session](https://code.claude.com/docs/fr/scheduled-tasks.md) puisse vous atteindre quand vous vous éloignez. La livraison push s'effectue via l'infrastructure hébergée par Anthropic, qui n'est pas accessible depuis Amazon Bedrock, Claude Platform sur AWS, Google Cloud's Agent Platform, ou Microsoft Foundry | Non |

43| `Read` | Lit le contenu des fichiers. Consultez [Comportement de l'outil Read](#read-tool-behavior) | Non |43| `Read` | Lit le contenu des fichiers. Consultez [Comportement de l'outil Read](#read-tool-behavior) | Non |

44| `ReadMcpResourceTool` | Lit une ressource MCP spécifique par URI | Non |44| `ReadMcpResourceTool` | Lit une ressource MCP spécifique par URI | Non |

45| `RemoteTrigger` | Crée, met à jour, exécute et liste les [tâches planifiées cloud](https://code.claude.com/docs/fr/routines.md), anciennement appelées routines, sur claude.ai. Soutient la commande `/schedule`. La [référence d'entrée `RemoteTrigger`](https://code.claude.com/docs/fr/agent-sdk/typescript#remotetrigger) documente chaque action et les politiques organisationnelles qui suppriment l'outil. Les tâches planifiées cloud résident sur claude.ai et nécessitent un plan Pro, Max, Team ou Enterprise. Cet outil n'est donc pas accessible depuis Amazon Bedrock, Claude Platform sur AWS, Google Cloud's Agent Platform, ou Microsoft Foundry | Non |45| `RemoteTrigger` | Crée, met à jour, exécute et liste les [tâches planifiées cloud](https://code.claude.com/docs/fr/routines.md), anciennement appelées routines, sur claude.ai. Soutient la commande `/schedule`. La [référence d'entrée `RemoteTrigger`](https://code.claude.com/docs/fr/agent-sdk/typescript#remotetrigger) documente chaque action et les politiques organisationnelles qui suppriment l'outil. Les tâches planifiées cloud résident sur claude.ai et nécessitent un plan Pro, Max, Ultra, Team ou Enterprise. Cet outil n'est donc pas accessible depuis Amazon Bedrock, Claude Platform sur AWS, Google Cloud's Agent Platform, ou Microsoft Foundry | Non |

46| `ReportFindings` | Signale les résultats de la revue de code sous forme de liste structurée, avec un fichier, un résumé et un scénario d'échec par résultat, afin que Claude Code puisse les rendre au lieu de les imprimer en tant que texte. Claude l'appelle quand les instructions actives de revue de code le lui demandent. Un résultat peut également porter un slug `category` optionnel, tel que `correctness` ou `test-coverage`, affiché à côté de l'emplacement du fichier dans la liste rendue | Non |46| `ReportFindings` | Signale les résultats de la revue de code sous forme de liste structurée, avec un fichier, un résumé et un scénario d'échec par résultat, afin que Claude Code puisse les rendre au lieu de les imprimer en tant que texte. Claude l'appelle quand les instructions actives de revue de code le lui demandent. Un résultat peut également porter un slug `category` optionnel, tel que `correctness` ou `test-coverage`, affiché à côté de l'emplacement du fichier dans la liste rendue | Non |

47| `ScheduleWakeup` | Reprogramme la prochaine itération d'une [`/loop` auto-rythmée](https://code.claude.com/docs/fr/scheduled-tasks#let-claude-choose-the-interval). Claude l'appelle à la fin de chaque itération pour choisir quand la prochaine s'exécute, entre une minute et une heure ; vous ne l'appelez pas directement. Pour terminer la boucle à la place, Claude l'appelle avec `stop: true`, ce qui annule le réveil en attente. Le réveil en attente apparaît dans `session_crons` dans [Entrée du hook Stop](https://code.claude.com/docs/fr/hooks.md#stop-input) | Non |47| `ScheduleWakeup` | Reprogramme la prochaine itération d'une [`/loop` auto-rythmée](https://code.claude.com/docs/fr/scheduled-tasks#let-claude-choose-the-interval). Claude l'appelle à la fin de chaque itération pour choisir quand la prochaine s'exécute, entre une minute et une heure ; vous ne l'appelez pas directement. Pour terminer la boucle à la place, Claude l'appelle avec `stop: true`, ce qui annule le réveil en attente. Le réveil en attente apparaît dans `session_crons` dans [Entrée du hook Stop](https://code.claude.com/docs/fr/hooks.md#stop-input) | Non |

48| `SendFeedback` | Rédige un rapport de rétroaction sur Claude Code, couvrant un problème de produit ou le comportement de Claude lui-même dans la session, et le met en file d'attente sur votre machine pour que vous le révisiez. Claude Code n'envoie rien jusqu'à ce que vous choisissiez d'envoyer le brouillon. Consultez [Comportement de l'outil SendFeedback](#sendfeedback-tool-behavior). Nécessite Claude Code v2.1.238 ou ultérieur | Non |48| `SendFeedback` | Rédige un rapport de rétroaction sur Claude Code, couvrant un problème de produit ou le comportement de Claude lui-même dans la session, et le met en file d'attente sur votre machine pour que vous le révisiez. Claude Code n'envoie rien jusqu'à ce que vous choisissiez d'envoyer le brouillon. Consultez [Comportement de l'outil SendFeedback](#sendfeedback-tool-behavior). Nécessite Claude Code v2.1.238 ou ultérieur | Non |

Details

75 75 

76Le programme d'installation télécharge depuis `downloads.claude.ai`. Vérifiez que vous pouvez l'atteindre :76Le programme d'installation télécharge depuis `downloads.claude.ai`. Vérifiez que vous pouvez l'atteindre :

77 77 

78**macOS/Linux**78> [tab] macOS/Linux

79 79>

80```bash theme={null}80> ```bash theme={null}

81curl -sI https://downloads.claude.ai/claude-code-releases/latest81> curl -sI https://downloads.claude.ai/claude-code-releases/latest

82```82> ```

83 

84**Windows PowerShell**

85 

86```powershell theme={null}

87curl.exe -sI https://downloads.claude.ai/claude-code-releases/latest

88```

89 83 

90PowerShell crée un alias `curl` vers `Invoke-WebRequest`, qui rejette les flags `-sI`, donc appelez `curl.exe` explicitement.84> [tab] Windows PowerShell

85>

86> ```powershell theme={null}

87> curl.exe -sI https://downloads.claude.ai/claude-code-releases/latest

88> ```

89>

90> PowerShell crée un alias `curl` vers `Invoke-WebRequest`, qui rejette les flags `-sI`, donc appelez `curl.exe` explicitement.

91 91 

92Vous avez atteint le serveur si la première ligne affiche un statut `200`. Vous voyez `HTTP/2 200` sur macOS et Linux, et `HTTP/1.1 200 OK` depuis le `curl.exe` inclus avec Windows. D'autres résultats pointent vers la cause :92Vous avez atteint le serveur si la première ligne affiche un statut `200`. Vous voyez `HTTP/2 200` sur macOS et Linux, et `HTTP/1.1 200 OK` depuis le `curl.exe` inclus avec Windows. D'autres résultats pointent vers la cause :

93 93 


104 104 

105Cet exemple définit les deux variables de proxy, puis exécute le programme d'installation via votre proxy :105Cet exemple définit les deux variables de proxy, puis exécute le programme d'installation via votre proxy :

106 106 

107**macOS/Linux**107> [tab] macOS/Linux

108 108>

109```bash theme={null}109> ```bash theme={null}

110export HTTP_PROXY=http://proxy.example.com:8080110> export HTTP_PROXY=http://proxy.example.com:8080

111export HTTPS_PROXY=http://proxy.example.com:8080111> export HTTPS_PROXY=http://proxy.example.com:8080

112curl -fsSL https://claude.ai/install.sh | bash112> curl -fsSL https://claude.ai/install.sh | bash

113```113> ```

114 

115**Windows PowerShell**

116 114 

117```powershell theme={null}115> [tab] Windows PowerShell

118$env:HTTP_PROXY = 'http://proxy.example.com:8080'116>

119$env:HTTPS_PROXY = 'http://proxy.example.com:8080'117> ```powershell theme={null}

120irm https://claude.ai/install.ps1 | iex118> $env:HTTP_PROXY = 'http://proxy.example.com:8080'

121```119> $env:HTTPS_PROXY = 'http://proxy.example.com:8080'

120> irm https://claude.ai/install.ps1 | iex

121> ```

122 122 

123### Vérifiez votre PATH123### Vérifiez votre PATH

124 124 


132 132 

133Vérifiez d'abord que le programme est bien présent, puis vérifiez si son dossier figure dans votre PATH. La correction du PATH est permanente, vous ne l'appliquez donc qu'une seule fois. Choisissez l'onglet de votre plateforme et exécutez-y ses commandes : dans votre terminal sur macOS et Linux, ou dans PowerShell ou l'invite de commandes sur Windows.133Vérifiez d'abord que le programme est bien présent, puis vérifiez si son dossier figure dans votre PATH. La correction du PATH est permanente, vous ne l'appliquez donc qu'une seule fois. Choisissez l'onglet de votre plateforme et exécutez-y ses commandes : dans votre terminal sur macOS et Linux, ou dans PowerShell ou l'invite de commandes sur Windows.

134 134 

135**macOS/Linux**135> [tab] macOS/Linux

136 136>

137Vérifiez que le programme d'installation a mis le programme en place :137> Vérifiez que le programme d'installation a mis le programme en place :

138 138>

139```bash theme={null}139> ```bash theme={null}

140ls -la ~/.local/bin/claude140> ls -la ~/.local/bin/claude

141```141> ```

142 142>

143* **`No such file or directory`** : il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm, Homebrew ou un gestionnaire de paquets Linux, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code). Si vous l'avez installé d'une autre manière, consultez [Vérifiez les installations en conflit](#check-for-conflicting-installations).143> * **`No such file or directory`** : il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm, Homebrew ou un gestionnaire de paquets Linux, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code). Si vous l'avez installé d'une autre manière, consultez [Vérifiez les installations en conflit](#check-for-conflicting-installations).

144* **Une ligne listant le fichier** : le programme est présent. Vérifiez ensuite votre PATH.144> * **Une ligne listant le fichier** : le programme est présent. Vérifiez ensuite votre PATH.

145 145>

146Listez vos entrées PATH et filtrez pour le dossier d'installation :146> Listez vos entrées PATH et filtrez pour le dossier d'installation :

147 147>

148```bash theme={null}148> ```bash theme={null}

149echo $PATH | tr ':' '\n' | grep -Fx "$HOME/.local/bin"149> echo $PATH | tr ':' '\n' | grep -Fx "$HOME/.local/bin"

150```150> ```

151 151>

152Si cela affiche `/Users/you/.local/bin` ou `/home/you/.local/bin`, le répertoire est dans votre PATH et vous pouvez passer à [Vérifiez les installations en conflit](#check-for-conflicting-installations). S'il n'y a pas de sortie, ajoutez-le à votre configuration shell avec les deux commandes correspondant à votre shell. La commande `echo` enregistre le paramètre pour chaque nouveau terminal, et `source` l'applique à la fenêtre dans laquelle vous vous trouvez. La commande `echo` n'affiche rien lorsqu'elle réussit.152> Si cela affiche `/Users/you/.local/bin` ou `/home/you/.local/bin`, le répertoire est dans votre PATH et vous pouvez passer à [Vérifiez les installations en conflit](#check-for-conflicting-installations). S'il n'y a pas de sortie, ajoutez-le à votre configuration shell avec les deux commandes correspondant à votre shell. La commande `echo` enregistre le paramètre pour chaque nouveau terminal, et `source` l'applique à la fenêtre dans laquelle vous vous trouvez. La commande `echo` n'affiche rien lorsqu'elle réussit.

153 153>

154Pour Zsh, la valeur par défaut sur macOS :154> Pour Zsh, la valeur par défaut sur macOS :

155 155>

156```bash theme={null}156> ```bash theme={null}

157echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc157> echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc

158source ~/.zshrc158> source ~/.zshrc

159```159> ```

160 160>

161Pour Bash sur Linux, où c'est la valeur par défaut sur la plupart des distributions :161> Pour Bash sur Linux, où c'est la valeur par défaut sur la plupart des distributions :

162 162>

163```bash theme={null}163> ```bash theme={null}

164echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc164> echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc

165source ~/.bashrc165> source ~/.bashrc

166```166> ```

167 167>

168Pour Bash sur macOS, ajoutez la ligne à `~/.bash_profile` à la place. Terminal sur macOS démarre Bash en tant que shell de connexion, qui ignore `~/.bashrc` et lit uniquement le premier de `~/.bash_profile`, `~/.bash_login`, ou `~/.profile` qui existe. Si vous avez déjà un `~/.bash_login` ou `~/.profile` et aucun `~/.bash_profile`, mettez la ligne dans ce fichier plutôt que de créer `~/.bash_profile` :168> Pour Bash sur macOS, ajoutez la ligne à `~/.bash_profile` à la place. Terminal sur macOS démarre Bash en tant que shell de connexion, qui ignore `~/.bashrc` et lit uniquement le premier de `~/.bash_profile`, `~/.bash_login`, ou `~/.profile` qui existe. Si vous avez déjà un `~/.bash_login` ou `~/.profile` et aucun `~/.bash_profile`, mettez la ligne dans ce fichier plutôt que de créer `~/.bash_profile` :

169 169>

170```bash theme={null}170> ```bash theme={null}

171echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile171> echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile

172source ~/.bash_profile172> source ~/.bash_profile

173```173> ```

174 174>

175Alternativement, fermez et rouvrez votre terminal.175> Alternativement, fermez et rouvrez votre terminal.

176 176>

177Si la commande `echo` affiche `permission denied`, consultez [`permission denied` lors de l'ajout à votre PATH](#permission-denied-when-adding-to-your-path).177> Si la commande `echo` affiche `permission denied`, consultez [`permission denied` lors de l'ajout à votre PATH](#permission-denied-when-adding-to-your-path).

178 178>

179Pour les autres shells tels que fish ou Nushell, ajoutez `~/.local/bin` à votre PATH en utilisant la syntaxe de configuration propre à votre shell, puis redémarrez votre terminal.179> Pour les autres shells tels que fish ou Nushell, ajoutez `~/.local/bin` à votre PATH en utilisant la syntaxe de configuration propre à votre shell, puis redémarrez votre terminal.

180 180>

181Vérifiez que la correction a fonctionné :181> Vérifiez que la correction a fonctionné :

182 182>

183```bash theme={null}183> ```bash theme={null}

184claude --version184> claude --version

185```185> ```

186 186>

187Si `claude` est toujours introuvable, vérifiez ces causes :187> Si `claude` est toujours introuvable, vérifiez ces causes :

188 188>

189* **Le terminal est antérieur à la modification** : une fenêtre déjà ouverte conserve son ancien PATH, et un terminal intégré à un éditeur tient son PATH de l'éditeur. Ouvrez une nouvelle fenêtre, ou quittez et rouvrez l'éditeur.189> * **Le terminal est antérieur à la modification** : une fenêtre déjà ouverte conserve son ancien PATH, et un terminal intégré à un éditeur tient son PATH de l'éditeur. Ouvrez une nouvelle fenêtre, ou quittez et rouvrez l'éditeur.

190* **La ligne n'a pas été enregistrée** : exécutez `grep -n '.local/bin' ~/.zshrc`, en utilisant le nom de fichier de votre shell. Cette commande affiche la ligne avec son numéro lorsque la ligne est présente. Si elle n'affiche rien, exécutez à nouveau les deux commandes PATH.190> * **La ligne n'a pas été enregistrée** : exécutez `grep -n '.local/bin' ~/.zshrc`, en utilisant le nom de fichier de votre shell. Cette commande affiche la ligne avec son numéro lorsque la ligne est présente. Si elle n'affiche rien, exécutez à nouveau les deux commandes PATH.

191* **La ligne a été ajoutée au fichier d'un autre shell** : exécutez `echo $0` pour identifier votre shell, puis exécutez les deux commandes PATH correspondant à ce shell.191> * **La ligne a été ajoutée au fichier d'un autre shell** : exécutez `echo $0` pour identifier votre shell, puis exécutez les deux commandes PATH correspondant à ce shell.

192 

193**Windows PowerShell**

194 

195Vérifiez que le programme d'installation a mis le programme en place :

196 

197```powershell theme={null}

198Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

199```

200 

201* **`False`** : il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm ou WinGet, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code). Si vous l'avez installé d'une autre manière, consultez [Vérifiez les installations en conflit](#check-for-conflicting-installations).

202* **`True`** : le programme est présent. Vérifiez ensuite votre PATH.

203 

204Listez vos entrées PATH et filtrez pour le dossier d'installation :

205 

206```powershell theme={null}

207$env:PATH -split ';' | Select-String '\.local\\bin'

208```

209 

210Si cela affiche `C:\Users\you\.local\bin`, le répertoire est dans votre PATH et vous pouvez passer à [Vérifiez les installations en conflit](#check-for-conflicting-installations). S'il n'y a pas de sortie, ajoutez le répertoire d'installation à votre PATH utilisateur :

211 

212```powershell theme={null}

213$currentPath = [Environment]::GetEnvironmentVariable('PATH', 'User')

214[Environment]::SetEnvironmentVariable('PATH', "$currentPath;$env:USERPROFILE\.local\bin", 'User')

215```

216 

217Redémarrez votre terminal pour que la modification prenne effet.

218 

219Vérifiez que la correction a fonctionné :

220 

221```powershell theme={null}

222claude --version

223```

224 

225Si `claude` est toujours introuvable dans un nouveau terminal, vérifiez ces causes :

226 

227* **Le terminal s'exécute dans un éditeur** : il tient son PATH de l'éditeur, donc quittez et rouvrez l'éditeur.

228* **La modification n'a pas été enregistrée** : exécutez `[Environment]::GetEnvironmentVariable('PATH', 'User')` et recherchez `.local\bin` dans le PATH affiché. S'il est absent, exécutez à nouveau les deux commandes.

229 

230**Windows CMD**

231 

232Vérifiez que le programme d'installation a mis le programme en place :

233 

234```batch theme={null}

235dir "%USERPROFILE%\.local\bin\claude.exe"

236```

237 

238* **`File Not Found` ou `The system cannot find the path specified.`** : il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm ou WinGet, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code). Si vous l'avez installé d'une autre manière, consultez [Vérifiez les installations en conflit](#check-for-conflicting-installations).

239* **Une ligne listant `claude.exe`** : le programme est présent. Vérifiez ensuite votre PATH.

240 

241Listez vos entrées PATH et filtrez pour le dossier d'installation :

242 

243```batch theme={null}

244echo %PATH% | findstr /i "local\bin"

245```

246 

247S'il n'y a pas de sortie, ouvrez Paramètres système, allez à Variables d'environnement, et ajoutez `%USERPROFILE%\.local\bin` à votre variable PATH utilisateur. Redémarrez votre terminal.

248 

249Vérifiez que la correction a fonctionné :

250 192 

251```batch theme={null}193> [tab] Windows PowerShell

252claude --version194>

253```195> Vérifiez que le programme d'installation a mis le programme en place :

196>

197> ```powershell theme={null}

198> Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

199> ```

200>

201> * **`False`** : il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm ou WinGet, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code). Si vous l'avez installé d'une autre manière, consultez [Vérifiez les installations en conflit](#check-for-conflicting-installations).

202> * **`True`** : le programme est présent. Vérifiez ensuite votre PATH.

203>

204> Listez vos entrées PATH et filtrez pour le dossier d'installation :

205>

206> ```powershell theme={null}

207> $env:PATH -split ';' | Select-String '\.local\\bin'

208> ```

209>

210> Si cela affiche `C:\Users\you\.local\bin`, le répertoire est dans votre PATH et vous pouvez passer à [Vérifiez les installations en conflit](#check-for-conflicting-installations). S'il n'y a pas de sortie, ajoutez le répertoire d'installation à votre PATH utilisateur :

211>

212> ```powershell theme={null}

213> $currentPath = [Environment]::GetEnvironmentVariable('PATH', 'User')

214> [Environment]::SetEnvironmentVariable('PATH', "$currentPath;$env:USERPROFILE\.local\bin", 'User')

215> ```

216>

217> Redémarrez votre terminal pour que la modification prenne effet.

218>

219> Vérifiez que la correction a fonctionné :

220>

221> ```powershell theme={null}

222> claude --version

223> ```

224>

225> Si `claude` est toujours introuvable dans un nouveau terminal, vérifiez ces causes :

226>

227> * **Le terminal s'exécute dans un éditeur** : il tient son PATH de l'éditeur, donc quittez et rouvrez l'éditeur.

228> * **La modification n'a pas été enregistrée** : exécutez `[Environment]::GetEnvironmentVariable('PATH', 'User')` et recherchez `.local\bin` dans le PATH affiché. S'il est absent, exécutez à nouveau les deux commandes.

254 229 

255Si `claude` est toujours introuvable dans un nouveau terminal, sachez qu'un terminal intégré à un éditeur tient son PATH de l'éditeur : quittez et rouvrez également l'éditeur.230> [tab] Windows CMD

231>

232> Vérifiez que le programme d'installation a mis le programme en place :

233>

234> ```batch theme={null}

235> dir "%USERPROFILE%\.local\bin\claude.exe"

236> ```

237>

238> * **`File Not Found` ou `The system cannot find the path specified.`** : il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm ou WinGet, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code). Si vous l'avez installé d'une autre manière, consultez [Vérifiez les installations en conflit](#check-for-conflicting-installations).

239> * **Une ligne listant `claude.exe`** : le programme est présent. Vérifiez ensuite votre PATH.

240>

241> Listez vos entrées PATH et filtrez pour le dossier d'installation :

242>

243> ```batch theme={null}

244> echo %PATH% | findstr /i "local\bin"

245> ```

246>

247> S'il n'y a pas de sortie, ouvrez Paramètres système, allez à Variables d'environnement, et ajoutez `%USERPROFILE%\.local\bin` à votre variable PATH utilisateur. Redémarrez votre terminal.

248>

249> Vérifiez que la correction a fonctionné :

250>

251> ```batch theme={null}

252> claude --version

253> ```

254>

255> Si `claude` est toujours introuvable dans un nouveau terminal, sachez qu'un terminal intégré à un éditeur tient son PATH de l'éditeur : quittez et rouvrez également l'éditeur.

256 256 

257### Vérifiez les installations en conflit257### Vérifiez les installations en conflit

258 258 

259Plusieurs installations de Claude Code peuvent causer des incompatibilités de version ou un comportement inattendu. Vérifiez ce qui est installé :259Plusieurs installations de Claude Code peuvent causer des incompatibilités de version ou un comportement inattendu. Vérifiez ce qui est installé :

260 260 

261**macOS/Linux**261> [tab] macOS/Linux

262 262>

263Listez tous les binaires `claude` trouvés dans votre PATH :263> Listez tous les binaires `claude` trouvés dans votre PATH :

264 264>

265```bash theme={null}265> ```bash theme={null}

266which -a claude266> which -a claude

267```267> ```

268 268>

269Si cela affiche `claude not found`, une ligne `no claude in`, ou rien du tout, aucun `claude` n'est sur votre PATH. Les vérifications suivantes indiquent si Claude Code est installé ou non.269> Si cela affiche `claude not found`, une ligne `no claude in`, ou rien du tout, aucun `claude` n'est sur votre PATH. Les vérifications suivantes indiquent si Claude Code est installé ou non.

270 270>

271Vérifiez les trois emplacements d'où un binaire `claude` peut provenir. `~/.local/bin/claude` est le programme d'installation natif, `~/.claude/local/` est une installation npm locale héritée créée par les anciennes versions de Claude Code, et la liste npm globale affiche une installation `-g` :271> Vérifiez les trois emplacements d'où un binaire `claude` peut provenir. `~/.local/bin/claude` est le programme d'installation natif, `~/.claude/local/` est une installation npm locale héritée créée par les anciennes versions de Claude Code, et la liste npm globale affiche une installation `-g` :

272 272>

273```bash theme={null}273> ```bash theme={null}

274ls -la ~/.local/bin/claude274> ls -la ~/.local/bin/claude

275```275> ```

276 276>

277Une installation native affiche un lien symbolique dans `~/.local/share/claude/versions/`. Un script ou un lien symbolique que vous avez créé vous-même à ce chemin est un lanceur personnalisé, que la [mise à jour automatique laisse en place](https://code.claude.com/docs/fr/setup.md#auto-updates).277> Une installation native affiche un lien symbolique dans `~/.local/share/claude/versions/`. Un script ou un lien symbolique que vous avez créé vous-même à ce chemin est un lanceur personnalisé, que la [mise à jour automatique laisse en place](https://code.claude.com/docs/fr/setup.md#auto-updates).

278 278>

279Si l'une ou l'autre commande `ls` affiche `No such file or directory`, ce n'est pas une erreur. Cela signifie que rien n'est installé à cet emplacement, alors passez à la vérification suivante.279> Si l'une ou l'autre commande `ls` affiche `No such file or directory`, ce n'est pas une erreur. Cela signifie que rien n'est installé à cet emplacement, alors passez à la vérification suivante.

280 280>

281```bash theme={null}281> ```bash theme={null}

282ls -la ~/.claude/local/282> ls -la ~/.claude/local/

283```283> ```

284 284>

285```bash theme={null}285> ```bash theme={null}

286npm -g ls @anthropic-ai/claude-code 2>/dev/null286> npm -g ls @anthropic-ai/claude-code 2>/dev/null

287```287> ```

288 288>

289Si `ls -la ~/.local/bin/claude` a affiché `No such file or directory`, il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm, Homebrew ou un gestionnaire de paquets Linux, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code). Si `~/.local/bin/claude` existe mais que `which -a claude` ne l'a pas listé, le dossier n'est pas dans votre PATH : consultez [Vérifiez votre PATH](#verify-your-path).289> Si `ls -la ~/.local/bin/claude` a affiché `No such file or directory`, il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm, Homebrew ou un gestionnaire de paquets Linux, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code). Si `~/.local/bin/claude` existe mais que `which -a claude` ne l'a pas listé, le dossier n'est pas dans votre PATH : consultez [Vérifiez votre PATH](#verify-your-path).

290 

291**Windows PowerShell**

292 

293Listez tous les binaires `claude` trouvés dans votre PATH :

294 

295```powershell theme={null}

296where.exe claude

297```

298 

299Si cela affiche `INFO: Could not find files for the given pattern(s).`, aucun `claude` n'est sur votre PATH.

300 

301Vérifiez si le programme d'installation natif a placé un binaire :

302 

303```powershell theme={null}

304Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

305```

306 290 

307* **`True`** : l'installation native est présente. Si `where.exe` n'a rien trouvé, son dossier n'est pas dans votre PATH : consultez [Vérifiez votre PATH](#verify-your-path).291> [tab] Windows PowerShell

308* **`False`** : il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm ou WinGet, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code).292>

293> Listez tous les binaires `claude` trouvés dans votre PATH :

294>

295> ```powershell theme={null}

296> where.exe claude

297> ```

298>

299> Si cela affiche `INFO: Could not find files for the given pattern(s).`, aucun `claude` n'est sur votre PATH.

300>

301> Vérifiez si le programme d'installation natif a placé un binaire :

302>

303> ```powershell theme={null}

304> Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

305> ```

306>

307> * **`True`** : l'installation native est présente. Si `where.exe` n'a rien trouvé, son dossier n'est pas dans votre PATH : consultez [Vérifiez votre PATH](#verify-your-path).

308> * **`False`** : il n'y a pas d'installation native. Si vous n'avez pas installé Claude Code d'une autre manière, par exemple avec npm ou WinGet, [installez Claude Code](https://code.claude.com/docs/fr/setup.md#install-claude-code).

309 309 

310Si vous trouvez plusieurs installations, conservez-en une seule. L'installation native à `~/.local/bin/claude` sur macOS/Linux ou `%USERPROFILE%\.local\bin\claude.exe` sur Windows est recommandée. Supprimez les extras :310Si vous trouvez plusieurs installations, conservez-en une seule. L'installation native à `~/.local/bin/claude` sur macOS/Linux ou `%USERPROFILE%\.local\bin\claude.exe` sur Windows est recommandée. Supprimez les extras :

311 311 


317 317 

318Supprimez l'installation npm locale héritée :318Supprimez l'installation npm locale héritée :

319 319 

320**macOS/Linux**320> [tab] macOS/Linux

321 321>

322```bash theme={null}322> ```bash theme={null}

323rm -rf ~/.claude/local323> rm -rf ~/.claude/local

324```324> ```

325 

326**Windows PowerShell**

327 325 

328```powershell theme={null}326> [tab] Windows PowerShell

329Remove-Item -Recurse -Force "$env:USERPROFILE\.claude\local"327>

330```328> ```powershell theme={null}

329> Remove-Item -Recurse -Force "$env:USERPROFILE\.claude\local"

330> ```

331 331 

332Supprimez une installation Homebrew sur macOS. Si vous avez installé le cask `claude-code@latest`, remplacez ce nom :332Supprimez une installation Homebrew sur macOS. Si vous avez installé le cask `claude-code@latest`, remplacez ce nom :

333 333 


376 376 

377Confirmez que le binaire existe et est exécutable :377Confirmez que le binaire existe et est exécutable :

378 378 

379**macOS/Linux**379> [tab] macOS/Linux

380 380>

381```bash theme={null}381> ```bash theme={null}

382ls -la "$(command -v claude)"382> ls -la "$(command -v claude)"

383```383> ```

384 

385**Windows PowerShell**

386 384 

387```powershell theme={null}385> [tab] Windows PowerShell

388Get-Command claude | Select-Object Source386>

389```387> ```powershell theme={null}

388> Get-Command claude | Select-Object Source

389> ```

390 390 

391Sur Linux, vérifiez les bibliothèques partagées manquantes. Si `ldd` affiche des bibliothèques manquantes, vous devrez peut-être installer des paquets système. Sur Alpine Linux et autres distributions basées sur musl, consultez [Configuration Alpine Linux](https://code.claude.com/docs/fr/setup.md#alpine-linux-and-musl-based-distributions).391Sur Linux, vérifiez les bibliothèques partagées manquantes. Si `ldd` affiche des bibliothèques manquantes, vous devrez peut-être installer des paquets système. Sur Alpine Linux et autres distributions basées sur musl, consultez [Configuration Alpine Linux](https://code.claude.com/docs/fr/setup.md#alpine-linux-and-musl-based-distributions).

392 392 


568 568 

5693. **Vérifiez l'interférence du proxy ou du pare-feu** : les proxys d'entreprise qui effectuent une inspection TLS peuvent causer ces erreurs, y compris `unable to get local issuer certificate` et `SELF_SIGNED_CERT_IN_CHAIN`. Pour l'étape d'installation, faites en sorte que le téléchargement d'installation fasse confiance à l'autorité de certification de votre proxy d'entreprise :5693. **Vérifiez l'interférence du proxy ou du pare-feu** : les proxys d'entreprise qui effectuent une inspection TLS peuvent causer ces erreurs, y compris `unable to get local issuer certificate` et `SELF_SIGNED_CERT_IN_CHAIN`. Pour l'étape d'installation, faites en sorte que le téléchargement d'installation fasse confiance à l'autorité de certification de votre proxy d'entreprise :

570 570 

571 **macOS/Linux**571 > [tab] macOS/Linux

572 >

573 > ```bash theme={null}

574 > curl --cacert /path/to/corporate-ca.pem -fsSL https://claude.ai/install.sh | bash

575 > ```

572 576 

573 ```bash theme={null}577 > [tab] Windows PowerShell

574 curl --cacert /path/to/corporate-ca.pem -fsSL https://claude.ai/install.sh | bash578 >

575 ```579 > Le programme d'installation PowerShell télécharge via .NET, qui valide TLS par rapport au magasin de certificats Windows. Demandez à votre équipe informatique d'ajouter le certificat CA du proxy au magasin Windows s'il n'y est pas déjà, puis exécutez le programme d'installation :

576 580 >

577 **Windows PowerShell**581 > ```powershell theme={null}

578 582 > irm https://claude.ai/install.ps1 | iex

579 Le programme d'installation PowerShell télécharge via .NET, qui valide TLS par rapport au magasin de certificats Windows. Demandez à votre équipe informatique d'ajouter le certificat CA du proxy au magasin Windows s'il n'y est pas déjà, puis exécutez le programme d'installation :583 > ```

580 

581 ```powershell theme={null}

582 irm https://claude.ai/install.ps1 | iex

583 ```

584 584 

585 Pour Claude Code lui-même une fois installé, définissez `NODE_EXTRA_CA_CERTS` pour que les requêtes API fassent confiance au même bundle :585 Pour Claude Code lui-même une fois installé, définissez `NODE_EXTRA_CA_CERTS` pour que les requêtes API fassent confiance au même bundle :

586 586 

587 **macOS/Linux**587 > [tab] macOS/Linux

588 588 >

589 ```bash theme={null}589 > ```bash theme={null}

590 export NODE_EXTRA_CA_CERTS=/path/to/corporate-ca.pem590 > export NODE_EXTRA_CA_CERTS=/path/to/corporate-ca.pem

591 ```591 > ```

592 

593 **Windows PowerShell**

594 592 

595 ```powershell theme={null}593 > [tab] Windows PowerShell

596 $env:NODE_EXTRA_CA_CERTS = 'C:\path\to\corporate-ca.pem'594 >

597 ```595 > ```powershell theme={null}

596 > $env:NODE_EXTRA_CA_CERTS = 'C:\path\to\corporate-ca.pem'

597 > ```

598 598 

599 Demandez à votre équipe informatique le fichier de certificat si vous ne l'avez pas. Vous pouvez également essayer sur une connexion directe pour confirmer que le proxy en est la cause.599 Demandez à votre équipe informatique le fichier de certificat si vous ne l'avez pas. Vous pouvez également essayer sur une connexion directe pour confirmer que le proxy en est la cause.

600 600 


827 827 

828Dans toute autre configuration, réexécuter le programme d'installation dépasse cette erreur, car le script exécute la commande `install` de la dernière version même lorsque vous demandez d'installer une version plus ancienne. Réexécutez la commande pour votre plateforme :828Dans toute autre configuration, réexécuter le programme d'installation dépasse cette erreur, car le script exécute la commande `install` de la dernière version même lorsque vous demandez d'installer une version plus ancienne. Réexécutez la commande pour votre plateforme :

829 829 

830**macOS/Linux**830> [tab] macOS/Linux

831 831>

832```bash theme={null}832> ```bash theme={null}

833curl -fsSL https://claude.ai/install.sh | bash833> curl -fsSL https://claude.ai/install.sh | bash

834```834> ```

835 

836**Windows PowerShell**

837 835 

838```powershell theme={null}836> [tab] Windows PowerShell

839irm https://claude.ai/install.ps1 | iex837>

840```838> ```powershell theme={null}

839> irm https://claude.ai/install.ps1 | iex

840> ```

841 841 

842`claude --version` affiche la version que la réexécution a installée.842`claude --version` affiche la version que la réexécution a installée.

843 843 


1108 1108 

1109La ligne `npm error path` nomme le répertoire que npm n'a pas pu déplacer. Supprimez ce répertoire et tous les répertoires `.claude-code-*` restants à côté, que les exécutions interrompues antérieures peuvent laisser derrière. Les commandes ci-dessous trouvent votre répertoire de package global avec `npm root -g` ; si le répertoire que la ligne `npm error path` nomme ne se trouve pas sous le répertoire que `npm root -g` affiche, par exemple parce que vous avez basculé les versions de Node avec nvm, supprimez les répertoires que l'erreur nomme à la place :1109La ligne `npm error path` nomme le répertoire que npm n'a pas pu déplacer. Supprimez ce répertoire et tous les répertoires `.claude-code-*` restants à côté, que les exécutions interrompues antérieures peuvent laisser derrière. Les commandes ci-dessous trouvent votre répertoire de package global avec `npm root -g` ; si le répertoire que la ligne `npm error path` nomme ne se trouve pas sous le répertoire que `npm root -g` affiche, par exemple parce que vous avez basculé les versions de Node avec nvm, supprimez les répertoires que l'erreur nomme à la place :

1110 1110 

1111**macOS/Linux**1111> [tab] macOS/Linux

1112 1112>

1113```bash theme={null}1113> ```bash theme={null}

1114rm -rf "$(npm root -g)/@anthropic-ai/claude-code"1114> rm -rf "$(npm root -g)/@anthropic-ai/claude-code"

1115```1115> ```

1116 1116>

1117Ensuite, supprimez tous les répertoires temporaires restants. Si Zsh affiche `no matches found`, il n'y en avait aucun à supprimer :1117> Ensuite, supprimez tous les répertoires temporaires restants. Si Zsh affiche `no matches found`, il n'y en avait aucun à supprimer :

1118 1118>

1119```bash theme={null}1119> ```bash theme={null}

1120rm -rf "$(npm root -g)/@anthropic-ai/.claude-code-"*1120> rm -rf "$(npm root -g)/@anthropic-ai/.claude-code-"*

1121```1121> ```

1122 

1123**Windows PowerShell**

1124 1122 

1125```powershell theme={null}1123> [tab] Windows PowerShell

1126Remove-Item -Recurse -Force "$(npm root -g)/@anthropic-ai/claude-code", "$(npm root -g)/@anthropic-ai/.claude-code-*"1124>

1127```1125> ```powershell theme={null}

1126> Remove-Item -Recurse -Force "$(npm root -g)/@anthropic-ai/claude-code", "$(npm root -g)/@anthropic-ai/.claude-code-*"

1127> ```

1128 1128 

1129Ensuite, réinstallez. Sur npm 12, suivez [Corriger une installation npm 12](#fix-an-npm-12-install). Sinon, exécutez :1129Ensuite, réinstallez. Sur npm 12, suivez [Corriger une installation npm 12](#fix-an-npm-12-install). Sinon, exécutez :

1130 1130 


1162 1162 

1163Si vous voyez `API Error: 403 Request not allowed` après vous être connecté :1163Si vous voyez `API Error: 403 Request not allowed` après vous être connecté :

1164 1164 

1165* **Utilisateurs Claude Pro/Max** : vérifiez que votre abonnement est actif sur [claude.ai/settings](https://claude.ai/settings)1165* **Utilisateurs Claude Pro/Max/Ultra** : vérifiez que votre abonnement est actif sur [claude.ai/settings](https://claude.ai/settings)

1166* **Utilisateurs de l'Anthropic Console** : vérifiez que votre compte dispose du rôle « Claude Code » ou « Developer ». Les administrateurs l'attribuent sur la page Members de la Console à l'adresse [platform.claude.com/settings/members](https://platform.claude.com/settings/members).1166* **Utilisateurs de l'Anthropic Console** : vérifiez que votre compte dispose du rôle « Claude Code » ou « Developer ». Les administrateurs l'attribuent sur la page Members de la Console à l'adresse [platform.claude.com/settings/members](https://platform.claude.com/settings/members).

1167* **Derrière un proxy** : les proxys d'entreprise peuvent interférer avec les requêtes API. Consultez la [configuration réseau](https://code.claude.com/docs/fr/network-config.md) pour configurer le proxy.1167* **Derrière un proxy** : les proxys d'entreprise peuvent interférer avec les requêtes API. Consultez la [configuration réseau](https://code.claude.com/docs/fr/network-config.md) pour configurer le proxy.

1168 1168 


1183 1183 

1184Pour utiliser plutôt votre abonnement, supprimez la variable d'environnement et retirez-la de votre profil de shell :1184Pour utiliser plutôt votre abonnement, supprimez la variable d'environnement et retirez-la de votre profil de shell :

1185 1185 

1186**macOS/Linux**1186> [tab] macOS/Linux

1187 1187>

1188```bash theme={null}1188> ```bash theme={null}

1189unset ANTHROPIC_API_KEY1189> unset ANTHROPIC_API_KEY

1190claude1190> claude

1191```1191> ```

1192 

1193**Windows PowerShell**

1194 1192 

1195```powershell theme={null}1193> [tab] Windows PowerShell

1196Remove-Item Env:ANTHROPIC_API_KEY1194>

1197claude1195> ```powershell theme={null}

1198```1196> Remove-Item Env:ANTHROPIC_API_KEY

1197> claude

1198> ```

1199 1199 

1200Recherchez les lignes `export ANTHROPIC_API_KEY=...` dans `~/.zshrc`, `~/.bashrc` ou `~/.profile` et supprimez-les pour rendre la modification permanente. Sous Windows, vérifiez la présence de `ANTHROPIC_API_KEY` dans votre profil PowerShell à l'emplacement `$PROFILE` et dans vos variables d'environnement utilisateur. Exécutez `/status` dans Claude Code pour confirmer quelle méthode d'authentification est active.1200Recherchez les lignes `export ANTHROPIC_API_KEY=...` dans `~/.zshrc`, `~/.bashrc` ou `~/.profile` et supprimez-les pour rendre la modification permanente. Sous Windows, vérifiez la présence de `ANTHROPIC_API_KEY` dans votre profil PowerShell à l'emplacement `$PROFILE` et dans vos variables d'environnement utilisateur. Exécutez `/status` dans Claude Code pour confirmer quelle méthode d'authentification est active.

1201 1201 

troubleshooting.md +27 −27

Details

134 134 

135Si l'outil Search, les mentions `@file`, les agents personnalisés ou les compétences personnalisées ne trouvent pas les fichiers, le binaire `ripgrep` fourni peut ne pas s'exécuter sur votre système. Installez le paquet `ripgrep` de votre plateforme et dites à Claude Code de l'utiliser à la place :135Si l'outil Search, les mentions `@file`, les agents personnalisés ou les compétences personnalisées ne trouvent pas les fichiers, le binaire `ripgrep` fourni peut ne pas s'exécuter sur votre système. Installez le paquet `ripgrep` de votre plateforme et dites à Claude Code de l'utiliser à la place :

136 136 

137**macOS**137> [tab] macOS

138 138>

139```bash theme={null}139> ```bash theme={null}

140brew install ripgrep140> brew install ripgrep

141```141> ```

142 

143**Ubuntu/Debian**

144 

145```bash theme={null}

146sudo apt install ripgrep

147```

148 

149**Alpine**

150 

151```bash theme={null}

152apk add ripgrep

153```

154 

155`ripgrep` se trouve dans le référentiel communautaire d'Alpine. Si `apk` signale que le paquet est manquant, consultez [Configuration d'Alpine Linux](https://code.claude.com/docs/fr/setup.md#alpine-linux-and-musl-based-distributions).

156 142 

157**Arch**143> [tab] Ubuntu/Debian

144>

145> ```bash theme={null}

146> sudo apt install ripgrep

147> ```

158 148 

159```bash theme={null}149> [tab] Alpine

160pacman -S ripgrep150>

161```151> ```bash theme={null}

152> apk add ripgrep

153> ```

154>

155> `ripgrep` se trouve dans le référentiel communautaire d'Alpine. Si `apk` signale que le paquet est manquant, consultez [Configuration d'Alpine Linux](https://code.claude.com/docs/fr/setup.md#alpine-linux-and-musl-based-distributions).

162 156 

163**Windows**157> [tab] Arch

158>

159> ```bash theme={null}

160> pacman -S ripgrep

161> ```

164 162 

165```powershell theme={null}163> [tab] Windows

166winget install BurntSushi.ripgrep.MSVC164>

167```165> ```powershell theme={null}

166> winget install BurntSushi.ripgrep.MSVC

167> ```

168 168 

169Ensuite, définissez `USE_BUILTIN_RIPGREP` sur `0`, soit dans votre [environnement](https://code.claude.com/docs/fr/env-vars.md) shell, soit dans le bloc `env` de votre [`settings.json`](https://code.claude.com/docs/fr/settings-reference#all-settings) :169Ensuite, définissez `USE_BUILTIN_RIPGREP` sur `0`, soit dans votre [environnement](https://code.claude.com/docs/fr/env-vars.md) shell, soit dans le bloc `env` de votre [`settings.json`](https://code.claude.com/docs/fr/settings-reference#all-settings) :

170 170 

ultrareview.md +2 −1

Details

120| - | - | - |120| - | - | - |

121| Pro | 3 exécutions gratuites | facturées comme [utilisation supplémentaire](https://support.claude.com/fr/articles/12429409-extra-usage-for-paid-claude-plans) |121| Pro | 3 exécutions gratuites | facturées comme [utilisation supplémentaire](https://support.claude.com/fr/articles/12429409-extra-usage-for-paid-claude-plans) |

122| Max | 3 exécutions gratuites | facturées comme [utilisation supplémentaire](https://support.claude.com/fr/articles/12429409-extra-usage-for-paid-claude-plans) |122| Max | 3 exécutions gratuites | facturées comme [utilisation supplémentaire](https://support.claude.com/fr/articles/12429409-extra-usage-for-paid-claude-plans) |

123| Ultra | 3 exécutions gratuites | facturées en [crédits d'utilisation](https://support.claude.com/fr/articles/12429409-extra-usage-for-paid-claude-plans) |

123 124 

124* **Exécutions gratuites** : les trois exécutions Pro et Max sont une allocation unique par compte et ne se renouvellent pas.125* **Exécutions gratuites** : les trois exécutions Pro, Max et Ultra sont une allocation unique par compte et ne se renouvellent pas.

125* **Coût par révision** : après avoir utilisé les exécutions gratuites, généralement entre 5 et 25 dollars en utilisation supplémentaire selon la taille du changement, correspondant à l'estimation affichée par la boîte de dialogue de lancement avant chaque exécution.126* **Coût par révision** : après avoir utilisé les exécutions gratuites, généralement entre 5 et 25 dollars en utilisation supplémentaire selon la taille du changement, correspondant à l'estimation affichée par la boîte de dialogue de lancement avant chaque exécution.

126* **Quand une exécution compte** : une fois que la session cloud démarre. Une révision que vous arrêtez tôt ou qui ne se termine pas utilise quand même une exécution gratuite ; une révision payante facture uniquement l'utilisation supplémentaire pour la portion qui a été exécutée.127* **Quand une exécution compte** : une fois que la session cloud démarre. Une révision que vous arrêtez tôt ou qui ne se termine pas utilise quand même une exécution gratuite ; une révision payante facture uniquement l'utilisation supplémentaire pour la portion qui a été exécutée.

127 128 

Details

105 105 

106La dictée vocale utilise le même [paramètre `language`](https://code.claude.com/docs/fr/settings-reference#language) qui contrôle la langue de réponse de Claude. Si ce paramètre est vide, la dictée utilise par défaut l'anglais. Dans l'extension VS Code, si `language` est vide, la dictée utilise le paramètre `accessibility.voice.speechLanguage` de VS Code avant d'utiliser par défaut l'anglais.106La dictée vocale utilise le même [paramètre `language`](https://code.claude.com/docs/fr/settings-reference#language) qui contrôle la langue de réponse de Claude. Si ce paramètre est vide, la dictée utilise par défaut l'anglais. Dans l'extension VS Code, si `language` est vide, la dictée utilise le paramètre `accessibility.voice.speechLanguage` de VS Code avant d'utiliser par défaut l'anglais.

107 107 

108> **Langues de dictée prises en charge**108> [accordion] Langues de dictée prises en charge

109>109>

110> | Langue | Code |110> | Langue | Code |

111> | :- | :- |111> | :- | :- |

vs-code.md +34 −30

Details

23Avant d'installer, assurez-vous que vous avez :23Avant d'installer, assurez-vous que vous avez :

24 24 

25* VS Code 1.94.0 ou supérieur25* VS Code 1.94.0 ou supérieur

26* Un compte Anthropic : tout abonnement Claude payant (Pro, Max, Team ou Enterprise) ou un compte Claude Console fonctionne, et aucune clé API n'est requise. Vous vous [connecterez](https://code.claude.com/docs/fr/authentication.md#log-in-to-claude-code) avec ce compte lors de la première ouverture de l'extension. Si vous accédez à Claude par l'intermédiaire d'un fournisseur tiers comme Amazon Bedrock ou Google Cloud's Agent Platform, consultez [Utiliser des fournisseurs tiers](#use-third-party-providers) pour les instructions de configuration.26* Un compte Anthropic : tout abonnement Claude payant (Pro, Max, Ultra, Team ou Enterprise) ou un compte Claude Console fonctionne, et aucune clé API n'est requise. Vous vous [connecterez](https://code.claude.com/docs/fr/authentication.md#log-in-to-claude-code) avec ce compte lors de la première ouverture de l'extension. Si vous accédez à Claude par l'intermédiaire d'un fournisseur tiers comme Amazon Bedrock ou Google Cloud's Agent Platform, consultez [Utiliser des fournisseurs tiers](#use-third-party-providers) pour les instructions de configuration.

27 27 

28> [!TIP]28> [!TIP]

29>29>


38 38 

39Ou, dans VS Code, appuyez sur `Cmd+Shift+X` (Mac) ou `Ctrl+Shift+X` (Windows/Linux) pour ouvrir la vue Extensions, recherchez « Claude Code », puis cliquez sur **Install**.39Ou, dans VS Code, appuyez sur `Cmd+Shift+X` (Mac) ou `Ctrl+Shift+X` (Windows/Linux) pour ouvrir la vue Extensions, recherchez « Claude Code », puis cliquez sur **Install**.

40 40 

41> [!NOTE]

42>

43> Les marketplaces d'extensions sont des logiciels tiers qu'Anthropic ne cautionne pas, ne maintient pas et n'audite pas. Anthropic soumet ses extensions pour publication sur le Visual Studio Marketplace et l'Open VSX Registry.

44 

41Le numéro de version de l'extension correspond à la version de Claude Code qu'elle intègre. Par exemple, une fonctionnalité qui nécessite Claude Code v2.1.286 ou une version ultérieure requiert la version 2.1.286 ou ultérieure de l'extension, indiquée dans la vue Extensions.45Le numéro de version de l'extension correspond à la version de Claude Code qu'elle intègre. Par exemple, une fonctionnalité qui nécessite Claude Code v2.1.286 ou une version ultérieure requiert la version 2.1.286 ou ultérieure de l'extension, indiquée dans la vue Extensions.

42 46 

43Claude Code fonctionne également dans d'autres éditeurs et conteneurs :47Claude Code fonctionne également dans d'autres éditeurs et conteneurs :

44 48 

45* **Autres forks de VS Code** : l'extension s'installe aussi dans des forks comme Devin Desktop ou Kiro. Recherchez « Claude Code » dans la vue Extensions de l'éditeur, ou installez-la depuis le [registre Open VSX](https://open-vsx.org/extension/Anthropic/claude-code).49* **Autres forks de VS Code** : l'extension s'installe également dans des forks comme Devin Desktop ou Kiro. Recherchez « Claude Code » dans la vue Extensions de l'éditeur, ou installez-la depuis l'[Open VSX Registry](https://open-vsx.org/extension/Anthropic/claude-code).

46* **Éditeurs qui ne peuvent pas installer l'extension** : [installez la CLI](https://code.claude.com/docs/fr/quickstart.md) et exécutez plutôt `claude` dans le terminal intégré de l'éditeur. La CLI fonctionne dans n'importe quel terminal.50* **Éditeurs qui ne peuvent pas installer l'extension** : [installez la CLI](https://code.claude.com/docs/fr/quickstart.md) et exécutez plutôt `claude` dans le terminal intégré de l'éditeur. La CLI fonctionne dans n'importe quel terminal.

47* **Dev containers** : pour exécuter Claude Code dans un dev container, consultez [Conteneurs de développement](https://code.claude.com/docs/fr/devcontainer.md).51* **Dev containers** : pour exécuter Claude Code dans un dev container, consultez [Conteneurs de développement](https://code.claude.com/docs/fr/devcontainer.md).

48 52 


117 121 

118La zone de prompt prend en charge plusieurs fonctionnalités :122La zone de prompt prend en charge plusieurs fonctionnalités :

119 123 

120* **Modes de permission** : cliquez sur l'indicateur de mode en bas de la zone de prompt pour changer de mode de permission. Avec Claude Code v2.1.283 ou version ultérieure, Auto est le mode de permission de départ intégré ; sur les versions antérieures, il ne l'est que sur les forfaits Pro, Max et Team. Consultez [comment l'extension choisit le mode de permission de départ](https://code.claude.com/docs/fr/permission-modes.md#switch-permission-modes) pour savoir ce qui le modifie, ainsi que chaque mode de permission proposé par l'indicateur.124* **Modes de permission** : cliquez sur l'indicateur de mode en bas de la zone de prompt pour changer de mode de permission. Avec Claude Code v2.1.283 ou version ultérieure, Auto est le mode de permission de départ intégré ; sur les versions antérieures, il ne l'est que sur les forfaits Pro, Max, Ultra et Team. Consultez [comment l'extension choisit le mode de permission de départ](https://code.claude.com/docs/fr/permission-modes.md#switch-permission-modes) pour savoir ce qui le modifie, ainsi que chaque mode de permission proposé par l'indicateur.

121 * **Auto** : un classifieur examine la plupart des actions au lieu de vous demander. Consultez [mode auto](https://code.claude.com/docs/fr/permission-modes.md#eliminate-prompts-with-auto-mode) pour savoir ce qu'il examine et bloque.125 * **Auto** : un classifieur examine la plupart des actions au lieu de vous demander. Consultez [mode auto](https://code.claude.com/docs/fr/permission-modes.md#eliminate-prompts-with-auto-mode) pour savoir ce qu'il examine et bloque.

122 * **Manual** : Claude demande la permission avant les modifications de fichiers et la plupart des commandes shell.126 * **Manual** : Claude demande la permission avant les modifications de fichiers et la plupart des commandes shell.

123 * **Plan** : Claude décrit ce qu'il va faire et attend votre approbation avant d'effectuer des modifications. VS Code ouvre automatiquement le plan sous forme de document Markdown complet dans lequel vous pouvez ajouter des commentaires en ligne pour donner votre avis avant que Claude ne commence.127 * **Plan** : Claude décrit ce qu'il va faire et attend votre approbation avant d'effectuer des modifications. VS Code ouvre automatiquement le plan sous forme de document Markdown complet dans lequel vous pouvez ajouter des commentaires en ligne pour donner votre avis avant que Claude ne commence.


656 660 

657Invoquez le gestionnaire avec l'outil d'ouverture d'URL de votre système d'exploitation.661Invoquez le gestionnaire avec l'outil d'ouverture d'URL de votre système d'exploitation.

658 662 

659**macOS**663> [tab] macOS

660 664>

661```bash theme={null}665> ```bash theme={null}

662open "vscode://anthropic.claude-code/open"666> open "vscode://anthropic.claude-code/open"

663```667> ```

664 

665**Linux**

666 

667```bash theme={null}

668xdg-open "vscode://anthropic.claude-code/open"

669```

670 

671La commande `xdg-open` provient du paquet `xdg-utils`. Si le shell indique qu'elle est introuvable, consultez [xdg-open is not found on Linux](https://code.claude.com/docs/fr/deep-links.md#xdg-open-is-not-found-on-linux).

672 

673**Windows**

674 

675Dans PowerShell :

676 

677```powershell theme={null}

678Start-Process "vscode://anthropic.claude-code/open"

679```

680 668 

681Dans `cmd.exe`, `start` traite son premier argument entre guillemets comme un titre de fenêtre ; passez donc un titre vide avant l'URL :669> [tab] Linux

670>

671> ```bash theme={null}

672> xdg-open "vscode://anthropic.claude-code/open"

673> ```

674>

675> La commande `xdg-open` provient du paquet `xdg-utils`. Si le shell indique qu'elle est introuvable, consultez [xdg-open is not found on Linux](https://code.claude.com/docs/fr/deep-links.md#xdg-open-is-not-found-on-linux).

682 676 

683```cmd theme={null}677> [tab] Windows

684start "" "vscode://anthropic.claude-code/open"678>

685```679> Dans PowerShell :

680>

681> ```powershell theme={null}

682> Start-Process "vscode://anthropic.claude-code/open"

683> ```

684>

685> Dans `cmd.exe`, `start` traite son premier argument entre guillemets comme un titre de fenêtre ; passez donc un titre vide avant l'URL :

686>

687> ```cmd theme={null}

688> start "" "vscode://anthropic.claude-code/open"

689> ```

686 690 

687Le gestionnaire accepte deux paramètres de requête facultatifs :691Le gestionnaire accepte deux paramètres de requête facultatifs :

688 692 


704Vous configurez l'extension à deux endroits : les paramètres de l'extension dans VS Code et le fichier de paramètres de Claude Code :708Vous configurez l'extension à deux endroits : les paramètres de l'extension dans VS Code et le fichier de paramètres de Claude Code :

705 709 

706* **Paramètres de l'extension** dans VS Code : contrôlent le comportement de l'extension dans VS Code. Ouvrez-les avec `Cmd+,` (Mac) ou `Ctrl+,` (Windows/Linux), puis accédez à **Extensions > Claude Code**. Vous pouvez également taper `/` et sélectionner **General config…** pour ouvrir les paramètres.710* **Paramètres de l'extension** dans VS Code : contrôlent le comportement de l'extension dans VS Code. Ouvrez-les avec `Cmd+,` (Mac) ou `Ctrl+,` (Windows/Linux), puis accédez à **Extensions > Claude Code**. Vous pouvez également taper `/` et sélectionner **General config…** pour ouvrir les paramètres.

707* **Paramètres de Claude Code** dans `~/.claude/settings.json` : partagés entre l'extension et la CLI. Utilisez-les pour les commandes autorisées, les variables d'environnement, les hooks et les serveurs MCP. Avec Claude Code v2.1.283 ou ultérieure, ils constituent également l'une des sources qui déterminent le mode de permission dans lequel les conversations démarrent ; sur les versions antérieures, uniquement sur les forfaits Pro, Max et Team. [Changer de mode de permission](https://code.claude.com/docs/fr/permission-modes.md#switch-permission-modes) indique l'ordre de priorité. Consultez [Paramètres](https://code.claude.com/docs/fr/settings.md) pour plus de détails.711* **Paramètres de Claude Code** dans `~/.claude/settings.json` : partagés entre l'extension et la CLI. Utilisez-les pour les commandes autorisées, les variables d'environnement, les hooks et les serveurs MCP. Avec Claude Code v2.1.283 ou ultérieure, vous pouvez également les utiliser comme l'une des sources qui déterminent le mode de permission dans lequel les conversations démarrent. Sur les versions antérieures, cela n'est possible que sur les forfaits Pro, Max, Ultra et Team. [Changer de mode de permission](https://code.claude.com/docs/fr/permission-modes.md#switch-permission-modes) indique l'ordre de priorité. Consultez [Paramètres](https://code.claude.com/docs/fr/settings.md) pour plus de détails.

708 712 

709> [!TIP]713> [!TIP]

710>714>


933 937 

934* Assurez-vous de disposer d'une version compatible de VS Code (1.94.0 ou ultérieure)938* Assurez-vous de disposer d'une version compatible de VS Code (1.94.0 ou ultérieure)

935* Vérifiez que VS Code a la permission d'installer des extensions939* Vérifiez que VS Code a la permission d'installer des extensions

936* Essayez de l'installer directement depuis la [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=anthropic.claude-code)940* Essayez de l'installer directement depuis la [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=anthropic.claude-code)

937 941 

938### L'icône Spark n'est pas visible942### L'icône Spark n'est pas visible

939 943 

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Les sessions cloud sont disponibles sur les plans Pro, Max et Team, ainsi que pour les utilisateurs Enterprise disposant de sièges premium ou de sièges Chat + Claude Code.11> Les sessions cloud sont disponibles sur les plans Pro, Max, Ultra et Team, ainsi que pour les utilisateurs Enterprise disposant de sièges premium ou de sièges Chat + Claude Code.

12 12 

13Une session cloud exécute Claude Code sur l'infrastructure cloud au lieu de votre machine, gérée par Anthropic par défaut. Ce guide de démarrage rapide en lance une depuis [claude.ai/code](https://claude.ai/code) dans votre navigateur. Vous pouvez également en lancer une depuis l'application mobile Claude, l'application Desktop, ou votre terminal avec `claude --cloud`.13Une session cloud exécute Claude Code sur l'infrastructure cloud au lieu de votre machine, gérée par Anthropic par défaut. Ce guide de démarrage rapide en lance une depuis [claude.ai/code](https://claude.ai/code) dans votre navigateur. Vous pouvez également en lancer une depuis l'application mobile Claude, l'application Desktop, ou votre terminal avec `claude --cloud`.

14 14 


77 77 

78Un [environnement cloud](https://code.claude.com/docs/fr/cloud-environments.md) est la configuration enregistrée qui contrôle l'accès réseau que Claude a pendant les sessions et ce qui s'exécute au démarrage d'une session. Ce qui se passe après que vous connectiez GitHub dépend de votre plan :78Un [environnement cloud](https://code.claude.com/docs/fr/cloud-environments.md) est la configuration enregistrée qui contrôle l'accès réseau que Claude a pendant les sessions et ce qui s'exécute au démarrage d'une session. Ce qui se passe après que vous connectiez GitHub dépend de votre plan :

79 79 

80* **Pro et Max** : l'intégration crée un environnement nommé **Par défaut** pour vous.80* **Pro, Max et Ultra** : vous obtenez automatiquement un environnement nommé **Par défaut**.

81* **Team et Enterprise** : l'intégration affiche un formulaire **Créez votre premier environnement cloud**. Laissez le nom prérempli et l'accès réseau inchangés et cliquez sur **Créer et terminer** pour créer l'environnement **Par défaut**. Si un Propriétaire a activé [Configuration rapide](https://code.claude.com/docs/fr/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise), l'intégration crée **Par défaut** pour vous à la place.81* **Team et Enterprise** : l'intégration affiche un formulaire **Créez votre premier environnement cloud**. Laissez le nom prérempli et l'accès réseau inchangés et cliquez sur **Créer et terminer** pour créer l'environnement **Par défaut**. Si un Propriétaire a activé [Configuration rapide](https://code.claude.com/docs/fr/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise), l'intégration crée **Par défaut** pour vous à la place.

82 82 

83**Par défaut** utilise l'accès réseau [`Trusted`](https://code.claude.com/docs/fr/cloud-environments#access-levels) : les sessions accèdent aux [registres de paquets courants](https://code.claude.com/docs/fr/cloud-environments.md#default-allowed-domains) et à d'autres domaines autorisés, et à rien d'autre via le réseau de la session. Consultez [Outils installés](https://code.claude.com/docs/fr/cloud-environments.md#installed-tools) pour voir ce qui est disponible sans aucune configuration.83**Par défaut** utilise l'accès réseau [`Trusted`](https://code.claude.com/docs/fr/cloud-environments#access-levels) : les sessions accèdent aux [registres de paquets courants](https://code.claude.com/docs/fr/cloud-environments.md#default-allowed-domains) et à d'autres domaines autorisés, et à rien d'autre via le réseau de la session. Consultez [Outils installés](https://code.claude.com/docs/fr/cloud-environments.md#installed-tools) pour voir ce qui est disponible sans aucune configuration.