4 4
5# Utiliser Claude Code sur le web5# Utiliser Claude Code sur le web
6 6
7> Configurez les environnements cloud, les scripts de configuration, l'accès réseau et Docker dans le sandbox d'Anthropic. Déplacez les sessions entre le web et le terminal avec `--cloud` et `--teleport`.7> Déplacez les sessions entre le web et le terminal avec `--cloud` et `--teleport`, gérez et partagez les sessions, et corrigez automatiquement les demandes de tirage depuis le cloud.
8 8
9<Note>9<Note>
10 Claude Code sur le web est en aperçu de recherche pour les utilisateurs Pro, Max et Team, ainsi que pour les utilisateurs Enterprise disposant de sièges premium ou de sièges Chat + Claude Code.10 Claude Code sur le web est en aperçu de recherche pour les utilisateurs Pro, Max et Team, ainsi que pour les utilisateurs Enterprise disposant de sièges premium ou de sièges Chat + Claude Code.
11</Note>11</Note>
12 12
13Claude Code sur le web exécute les tâches sur l'infrastructure cloud gérée par Anthropic à [claude.ai/code](https://claude.ai/code). Les sessions persistent même si vous fermez votre navigateur, et vous pouvez les surveiller depuis l'application mobile Claude.13Claude Code sur le web exécute les tâches sur l'infrastructure cloud gérée par Anthropic à [claude.ai/code](https://claude.ai/code), ou sur l'[environnement auto-hébergé](/docs/fr/self-hosted-environments) de votre organisation lorsqu'il y est acheminé. Les sessions persistent même si vous fermez votre navigateur, et vous pouvez les surveiller depuis l'application mobile Claude.
14 14
15<Tip>15<Tip>
16 Nouveau sur Claude Code sur le web ? Commencez par [Démarrer](/docs/fr/web-quickstart) pour connecter votre compte GitHub et soumettre votre première tâche.16 Nouveau sur Claude Code sur le web ? Commencez par [Démarrer](/docs/fr/web-quickstart) pour connecter votre compte GitHub et soumettre votre première tâche.
17</Tip>17</Tip>
18 18
19Cette page couvre :19Cette page couvre le produit web lui-même :
20 20
21* [Environnements cloud](#cloud-environments) : où les sessions s'exécutent et où configurer cela
21* [Options d'authentification GitHub](#github-authentication-options) : deux façons de connecter GitHub22* [Options d'authentification GitHub](#github-authentication-options) : deux façons de connecter GitHub
22* [L'environnement cloud](#the-cloud-environment) : quelle configuration est transférée, quels outils sont installés et comment configurer les environnements
23* [Scripts de configuration](#setup-scripts) et gestion des dépendances
24* [Accès réseau](#network-access) : niveaux, proxies et liste d'autorisation par défaut
25* [Déplacer les tâches entre le web et le terminal](#move-tasks-between-web-and-terminal) avec `--cloud` et `--teleport`23* [Déplacer les tâches entre le web et le terminal](#move-tasks-between-web-and-terminal) avec `--cloud` et `--teleport`
26* [Travailler avec les sessions](#work-with-sessions) : examiner, partager, archiver, supprimer24* [Travailler avec les sessions](#work-with-sessions) : modes de permission, examen, partage, archivage, suppression
27* [Correction automatique des demandes de tirage](#auto-fix-pull-requests) : répondre automatiquement aux défaillances CI et aux commentaires d'examen25* [Correction automatique des demandes de tirage](#auto-fix-pull-requests) : répondre automatiquement aux défaillances CI et aux commentaires d'examen
28* [Sécurité et isolation](#security-and-isolation) : comment les sessions sont isolées26* [Sécurité et isolation](#security-and-isolation) : comment les sessions sont isolées
29* [Limitations](#limitations) : limites de débit et restrictions de plateforme27* [Limitations](#limitations) : limites de débit et restrictions de plateforme
30 28
29<h2 id="cloud-environments">
30 Environnements cloud
31</h2>
32
33Chaque session cloud s'exécute dans un [environnement cloud](/docs/fr/cloud-environments), la configuration enregistrée qui contrôle l'accès réseau, les variables d'environnement et les scripts de configuration. Si vous n'avez pas encore d'environnement, l'intégration configure un environnement **Default** avec [accès réseau **Trusted**](/docs/fr/cloud-environments#access-levels), soit en le créant pour vous, soit en vous demandant de le créer. Consultez [L'environnement Default](/docs/fr/cloud-environments#the-default-environment) pour savoir lequel se produit sur votre plan et comment les sessions choisissent un environnement lorsque vous en avez plus d'un.
34
35Les mêmes environnements s'appliquent partout où vous démarrez une session cloud : le web, le terminal, [Claude Tag](https://claude.com/docs/claude-tag/overview), [routines](/docs/fr/routines) et les applications mobile et Desktop. Les sessions de canal Claude Tag utilisent uniquement les environnements au niveau de l'organisation, soit les [environnements partagés](/docs/fr/cloud-environments#organization-shared-environments), soit les [environnements auto-hébergés](/docs/fr/self-hosted-environments).
36
37Consultez [Configurer les environnements cloud](/docs/fr/cloud-environments) pour modifier ce qu'un environnement permet, définir des variables ou ajouter un script de configuration, et [Outils installés](/docs/fr/cloud-environments#installed-tools) pour ce que les sessions incluent sans aucune configuration.
38
31<h2 id="github-authentication-options">39<h2 id="github-authentication-options">
32 Options d'authentification GitHub40 Options d'authentification GitHub
33</h2>41</h2>
43 Avec l'une ou l'autre méthode, une session cloud peut accéder à n'importe quel référentiel que le compte GitHub connecté peut voir, pas seulement les référentiels sur lesquels l'application Claude GitHub est installée. L'installation de l'application active les webhooks PR pour [Auto-fix](#auto-fix-pull-requests) ; ce n'est pas un contrôle d'accès au niveau de la session. Pour restreindre les référentiels que votre équipe peut atteindre à partir des sessions cloud, restreignez l'accès sur GitHub lui-même, par exemple en limitant l'appartenance à l'équipe ou au référentiel pour les comptes GitHub connectés.51 Avec l'une ou l'autre méthode, une session cloud peut accéder à n'importe quel référentiel que le compte GitHub connecté peut voir, pas seulement les référentiels sur lesquels l'application Claude GitHub est installée. L'installation de l'application active les webhooks PR pour [Auto-fix](#auto-fix-pull-requests) ; ce n'est pas un contrôle d'accès au niveau de la session. Pour restreindre les référentiels que votre équipe peut atteindre à partir des sessions cloud, restreignez l'accès sur GitHub lui-même, par exemple en limitant l'appartenance à l'équipe ou au référentiel pour les comptes GitHub connectés.
44</Note>52</Note>
45 53
46L'une ou l'autre méthode fonctionne. [`/schedule`](/docs/fr/routines) vérifie l'une ou l'autre forme d'accès et vous invite à exécuter `/web-setup` si aucune n'est configurée. Consultez [Connecter depuis votre terminal](/docs/fr/web-quickstart#connect-from-your-terminal) pour la procédure pas à pas de `/web-setup`.54L'une ou l'autre méthode fonctionne. Pour savoir comment `/schedule` vérifie cet accès avant de créer une routine, consultez [Référentiels et permissions de branche](/docs/fr/routines#repositories-and-branch-permissions). Consultez [Connecter depuis votre terminal](/docs/fr/web-quickstart#connect-from-your-terminal) pour la procédure pas à pas de `/web-setup`.
47
48L'application GitHub est requise pour [Auto-fix](#auto-fix-pull-requests), qui utilise l'application pour recevoir les webhooks PR. Si vous vous connectez avec `/web-setup` et souhaitez ultérieurement Auto-fix, installez l'application sur ces référentiels.
49 55
50Les administrateurs Team et Enterprise peuvent désactiver `/web-setup` avec le bouton bascule Quick web setup sur [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code).56La configuration web rapide est un paramètre d'organisation qui permet aux membres de connecter GitHub avec `/web-setup`, ignore l'invite d'installation de l'application Claude GitHub lors de l'intégration web, et fait que l'intégration web crée l'[environnement **Default**](/docs/fr/cloud-environments#the-default-environment) pour eux au lieu d'afficher le formulaire d'environnement. Sur les plans Team et Enterprise, elle est désactivée par défaut, ce qui masque `/web-setup`. Un [Propriétaire](/docs/fr/server-managed-settings#access-control) l'active avec le bouton bascule **Quick web setup** à [**Paramètres d'administration > Claude Code**](https://claude.ai/admin-settings/claude-code).
51 57
52<Note>58<Note>
53 Les organisations avec [Zéro rétention de données](/docs/fr/zero-data-retention) activée ne peuvent pas utiliser `/web-setup` ou d'autres fonctionnalités de session cloud.59 Les organisations avec [Zéro rétention de données](/docs/fr/zero-data-retention) activée ne peuvent pas utiliser `/web-setup` ou d'autres fonctionnalités de session cloud.
54</Note>60</Note>
55 61
56<h2 id="the-cloud-environment">
57 L'environnement cloud
58</h2>
59
60Chaque session s'exécute dans une VM fraîche gérée par Anthropic avec votre référentiel cloné. Cette section couvre ce qui est disponible au démarrage d'une session et comment la personnaliser.
61
62<h3 id="what’s-available-in-cloud-sessions">
63 Ce qui est disponible dans les sessions cloud
64</h3>
65
66Les sessions cloud commencent par un clone frais de votre référentiel. Tout ce qui est validé dans le référentiel est disponible. Tout ce que vous avez installé ou configuré uniquement sur votre propre machine ne l'est pas dans la session. La politique de votre organisation arrive séparément via les [paramètres gérés par le serveur](/docs/fr/server-managed-settings).
67
68| | Disponible dans les sessions cloud | Pourquoi |
69| :------------------------------------------------------------------------------------- | :--------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
70| Votre `CLAUDE.md` du référentiel | Oui | Fait partie du clone |
71| Vos hooks `.claude/settings.json` du référentiel | Oui | Fait partie du clone |
72| Vos serveurs MCP `.mcp.json` du référentiel | Oui | Fait partie du clone |
73| Votre `.claude/rules/` du référentiel | Oui | Fait partie du clone |
74| Votre `.claude/skills/`, `.claude/agents/`, `.claude/commands/` du référentiel | Oui | Fait partie du clone |
75| Plugins déclarés dans `.claude/settings.json` | Oui | Installés au démarrage de la session à partir de la [marketplace](/docs/fr/plugin-marketplaces) que vous avez déclarée. Nécessite un accès réseau pour atteindre la source de la marketplace |
76| Votre [paramètres gérés par le serveur](/docs/fr/server-managed-settings) de l'organisation | Oui | Récupérés depuis les serveurs d'Anthropic au démarrage de la session. Consultez [Couverture de surface](/docs/fr/model-config#surface-coverage) pour savoir comment `availableModels` est appliqué dans les sessions cloud. Les paramètres déployés sur votre appareil via MDM ou des fichiers de paramètres gérés ne s'appliquent pas, car la session s'exécute sur une VM gérée par Anthropic |
77| Votre `~/.claude/CLAUDE.md` utilisateur | Non | Vit sur votre machine, pas dans le référentiel |
78| Votre `~/.claude/skills/`, `~/.claude/agents/`, `~/.claude/commands/` utilisateur | Non | Vivent sur votre machine, pas dans le référentiel. Validez-les plutôt dans le répertoire `.claude/` du référentiel. Les compétences que vous activez sur claude.ai sont chargées automatiquement dans les sessions cloud |
79| Plugins activés uniquement dans vos paramètres utilisateur | Non | Les `enabledPlugins` limités à l'utilisateur vivent dans `~/.claude/settings.json`. Déclarez-les plutôt dans le `.claude/settings.json` du référentiel |
80| Serveurs MCP que vous avez ajoutés avec `claude mcp add` | Non | Ceux-ci écrivent dans votre configuration utilisateur locale, pas dans le référentiel. Déclarez le serveur dans [`.mcp.json`](/docs/fr/mcp#project-scope) à la place |
81| Jetons API statiques et identifiants | Non | Aucun magasin de secrets dédié n'existe encore. Voir ci-dessous |
82| Authentification interactive comme AWS SSO | Non | Non pris en charge. SSO nécessite une connexion basée sur le navigateur qui ne peut pas s'exécuter dans une session cloud |
83
84Pour rendre votre propre configuration disponible dans les sessions cloud, validez-la dans le référentiel ; la politique de l'organisation arrive séparément via les [paramètres gérés par le serveur](/docs/fr/server-managed-settings).
85
86Un magasin de secrets dédié n'est pas encore disponible. Les variables d'environnement et les scripts de configuration sont stockés dans la configuration de l'environnement, visibles à quiconque peut modifier cet environnement. Si vous avez besoin de secrets dans une session cloud, ajoutez-les comme variables d'environnement en gardant cette visibilité à l'esprit.
87
88<h3 id="installed-tools">
89 Outils installés
90</h3>
91
92Les sessions cloud sont livrées avec des runtimes de langage courants, des outils de construction et des bases de données pré-installés. Le tableau ci-dessous résume ce qui est inclus par catégorie.
93
94| Catégorie | Inclus |
95| :------------------- | :------------------------------------------------------------------------------- |
96| **Python** | Python 3.x avec pip, poetry, uv, black, mypy, pytest, ruff |
97| **Node.js** | 20, 21 et 22 via nvm, avec npm, yarn, pnpm, bun¹, eslint, prettier, chromedriver |
98| **Ruby** | 3.1, 3.2, 3.3 avec gem, bundler, rbenv |
99| **PHP** | 8.4 avec Composer |
100| **Java** | OpenJDK 21 avec Maven et Gradle |
101| **Go** | dernière version stable avec support des modules |
102| **Rust** | rustc et cargo |
103| **C/C++** | GCC, Clang, cmake, ninja, conan |
104| **Docker** | docker, dockerd, docker compose |
105| **Bases de données** | PostgreSQL 16, Redis 7.0 |
106| **Utilitaires** | git, jq, yq, ripgrep, tmux, vim, nano |
107
108¹ Bun est installé mais a des [problèmes de compatibilité proxy](#install-dependencies-with-a-sessionstart-hook) connus pour la récupération de paquets.
109
110Pour les versions exactes, demandez à Claude d'exécuter `check-tools` dans une session cloud. Cette commande n'existe que dans les sessions cloud.
111
112<h3 id="work-with-github-issues-and-pull-requests">
113 Travailler avec les problèmes et demandes de tirage GitHub
114</h3>
115
116Les sessions cloud incluent des outils GitHub intégrés qui permettent à Claude de lire les problèmes, de lister les demandes de tirage, de récupérer les diffs et de publier des commentaires sans aucune configuration. Ces outils s'authentifient via le [proxy GitHub](#github-proxy) en utilisant la méthode que vous avez configurée sous [Options d'authentification GitHub](#github-authentication-options), donc votre jeton n'entre jamais dans le conteneur.
117
118Vous pouvez définir `GH_TOKEN` ou `GITHUB_TOKEN` vous-même dans les [paramètres d'environnement](#configure-your-environment), ou laisser les deux non définis et laisser le [proxy GitHub](#github-proxy) vous authentifier :
119
120* Si vous définissez un jeton, il passe au conteneur inchangé, donc `gh` et vos scripts l'utilisent directement.
121* Si vous ne définissez aucun des deux, le conteneur définit les deux variables sur la chaîne d'espace réservé `proxy-injected` et le proxy substitue vos vraies identifiants sur les demandes GitHub sortantes. `gh` fonctionne sans jeton personnel, mais un script qui lit `GITHUB_TOKEN` directement obtient l'espace réservé, pas un jeton utilisable.
122
123Pour vérifier quel cas s'applique à votre session, demandez à Claude d'exécuter `echo $GH_TOKEN`.
124
125Le CLI `gh` n'est pas pré-installé. Si vous avez besoin d'une commande `gh` que les outils intégrés ne couvrent pas, comme `gh release` ou `gh workflow run`, installez et authentifiez-la vous-même :
126
127<Steps>
128 <Step title="Installer gh dans votre script de configuration">
129 Ajoutez `apt update && apt install -y gh` à votre [script de configuration](#setup-scripts).
130 </Step>
131
132 <Step title="Fournir un jeton si le proxy ne gère pas l'authentification">
133 Si `echo $GH_TOKEN` affiche `proxy-injected`, le [proxy GitHub](#github-proxy) authentifie `gh` pour vous et cette étape est inutile. Sinon, ajoutez une variable d'environnement `GH_TOKEN` à vos [paramètres d'environnement](#configure-your-environment) avec un jeton d'accès personnel GitHub. `gh` lit `GH_TOKEN` automatiquement, donc aucune étape `gh auth login` n'est nécessaire.
134 </Step>
135</Steps>
136
137<h3 id="link-output-back-to-the-session">
138 Lier la sortie à la session
139</h3>
140
141Chaque session cloud a une URL de transcription sur claude.ai, et la session peut lire son propre ID à partir de la variable d'environnement `CLAUDE_CODE_REMOTE_SESSION_ID`. Utilisez ceci pour mettre un lien traçable dans les corps PR, les messages de commit, les publications Slack ou les rapports générés afin qu'un examinateur puisse ouvrir l'exécution qui les a produits.
142
143À partir de la v2.1.179, les commits que Claude crée dans une session web incluent une remorque git `Claude-Session: <url>`, et les corps PR incluent l'URL de la session sur sa propre ligne. À partir de la v2.1.182, définissez [`attribution.sessionUrl`](/docs/fr/settings#attribution-settings) sur `false` pour omettre la remorque et le lien du corps PR.
144
145Pour inclure le lien de session dans quelque chose d'autre qu'un commit ou une PR, comme un message Slack que Claude publie ou un fichier de rapport qu'il écrit, demandez à Claude d'exécuter la commande suivante et d'utiliser sa sortie. La commande convertit le préfixe `cse_` dans la valeur de la variable d'environnement au préfixe `session_` que l'URL de transcription attend :
146
147```bash theme={null}
148echo "https://claude.ai/code/${CLAUDE_CODE_REMOTE_SESSION_ID/#cse_/session_}"
149```
150
151<h3 id="run-tests-start-services-and-add-packages">
152 Exécuter les tests, démarrer les services et ajouter des paquets
153</h3>
154
155Claude exécute les tests dans le cadre du travail sur une tâche. Demandez-le dans votre invite, comme « corriger les tests échoués dans `tests/` » ou « exécuter pytest après chaque modification ». Les exécuteurs de tests comme pytest, jest et cargo test sont pré-installés et fonctionnent sans configuration supplémentaire.
156
157PostgreSQL et Redis sont pré-installés mais ne s'exécutent pas par défaut. Demandez à Claude de démarrer chacun pendant la session :
158
159```bash theme={null}
160service postgresql start
161```
162
163```bash theme={null}
164service redis-server start
165```
166
167Docker est disponible pour exécuter les services conteneurisés. Demandez à Claude d'exécuter `docker compose up` pour démarrer les services de votre projet. L'accès réseau pour extraire les images suit le [niveau d'accès](#access-levels) de votre environnement, et les [valeurs par défaut de confiance](#default-allowed-domains) incluent Docker Hub et d'autres registres courants.
168
169Si vos images sont volumineuses ou lentes à extraire, ajoutez `docker compose pull` ou `docker compose build` à votre [script de configuration](#setup-scripts). Les images extraites sont sauvegardées dans l'[environnement en cache](#environment-caching), donc chaque nouvelle session les a sur le disque. Le cache stocke uniquement les fichiers, pas les processus en cours d'exécution, donc Claude démarre toujours les conteneurs à chaque session.
170
171Pour ajouter des paquets qui ne sont pas pré-installés, utilisez un [script de configuration](#setup-scripts). La sortie du script est [mise en cache](#environment-caching), donc les paquets que vous installez là sont disponibles au démarrage de chaque session sans réinstallation à chaque fois. Vous pouvez également demander à Claude d'installer des paquets pendant la session, mais ces installations ne persistent pas entre les sessions.
172
173<h3 id="resource-limits">
174 Limites de ressources
175</h3>
176
177Les sessions cloud s'exécutent avec des plafonds de ressources approximatifs qui peuvent changer au fil du temps :
178
179* 4 vCPU
180* 16 Go de RAM
181* 30 Go de disque
182
183Les tâches nécessitant beaucoup plus de mémoire, comme les gros travaux de construction ou les tests gourmands en mémoire, peuvent échouer ou être terminées. Pour les charges de travail au-delà de ces limites, utilisez [Contrôle à distance](/docs/fr/remote-control) pour exécuter Claude Code sur votre propre matériel.
184
185<h3 id="configure-your-environment">
186 Configurer votre environnement
187</h3>
188
189Les environnements contrôlent [l'accès réseau](#network-access), les variables d'environnement et le [script de configuration](#setup-scripts) qui s'exécute avant le démarrage d'une session. Consultez [Outils installés](#installed-tools) pour ce qui est disponible sans aucune configuration. Vous pouvez gérer les environnements à partir de l'interface web ou du terminal :
190
191| Action | Comment |
192| :------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
193| Ajouter un environnement | Sélectionnez l'environnement actuel pour ouvrir le sélecteur, puis sélectionnez **Ajouter un environnement**. La boîte de dialogue inclut le nom, le niveau d'accès réseau, les variables d'environnement et le script de configuration. |
194| Modifier un environnement | Sélectionnez l'icône cloud affichant le nom de l'environnement actuel pour ouvrir le sélecteur, survolez un environnement et cliquez sur l'icône des paramètres qui apparaît à droite. |
195| Archiver un environnement | Ouvrez l'environnement pour le modifier et sélectionnez **Archiver**. Les environnements archivés sont masqués du sélecteur mais les sessions existantes continuent de s'exécuter. |
196| Définir l'environnement par défaut pour les sessions cloud CLI | Exécutez `/remote-env` dans votre terminal. Si vous avez un seul environnement, cette commande affiche votre configuration actuelle. `/remote-env` sélectionne uniquement la valeur par défaut ; ajoutez, modifiez et archivez les environnements à partir de l'interface web. |
197
198Les variables d'environnement utilisent le format `.env` avec une paire `KEY=value` par ligne. N'enveloppez pas les valeurs entre guillemets, car les guillemets sont stockés comme faisant partie de la valeur. Cet exemple définit trois variables :
199
200```text theme={null}
201NODE_ENV=development
202LOG_LEVEL=debug
203DATABASE_URL=postgres://localhost:5432/myapp
204```
205
206<h3 id="organization-shared-environments">
207 Environnements partagés par l'organisation
208</h3>
209
210Les propriétaires et administrateurs des plans Team et Enterprise peuvent créer des environnements cloud qui sont partagés avec chaque membre de l'organisation. Les environnements partagés apparaissent dans le sélecteur d'environnement de chaque membre aux côtés de leurs environnements personnels, afin qu'une équipe puisse standardiser une configuration au lieu que chaque membre la recréé.
211
212Gérez les environnements partagés à partir de la page **Environnements cloud** dans les [paramètres d'administration](https://claude.ai/admin-settings). À partir de là, vous pouvez :
213
214* Créer, modifier et archiver les environnements partagés. Chacun a les mêmes champs qu'un environnement personnel : un nom, un [niveau d'accès réseau](#access-levels), des [variables d'environnement](#configure-your-environment) au format `.env` et un [script de configuration](#setup-scripts).
215* Définir l'environnement par défaut pour l'organisation.
216
217Les valeurs dans un environnement partagé atteignent les sessions de chaque membre dans cet environnement. Comme les environnements personnels, les environnements partagés n'ont pas de magasin de secrets dédié, donc n'incluez pas de secrets.
218
219<h2 id="setup-scripts">
220 Scripts de configuration
221</h2>
222
223Un script de configuration est un script Bash qui s'exécute au démarrage d'une nouvelle session cloud, avant le lancement de Claude Code. Utilisez les scripts de configuration pour installer les dépendances, configurer les outils ou récupérer tout ce dont la session a besoin et qui n'est pas pré-installé.
224
225Les scripts s'exécutent en tant que root sur Ubuntu 24.04, donc `apt install` et la plupart des gestionnaires de paquets de langage fonctionnent.
226
227Pour ajouter un script de configuration, ouvrez la boîte de dialogue des paramètres d'environnement et entrez votre script dans le champ **Script de configuration**.
228
229Cet exemple installe le CLI `gh`, qui n'est pas pré-installé :
230
231```bash theme={null}
232#!/bin/bash
233apt update && apt install -y gh
234```
235
236Si le script se termine avec un code non nul, la session ne démarre pas. Ajoutez `|| true` aux commandes non critiques pour éviter de bloquer la session sur une défaillance d'installation intermittente.
237
238Gardez le temps d'exécution total du script en dessous d'environ cinq minutes afin que le [cache d'environnement](#environment-caching) puisse être construit. Exécutez les installations indépendantes en parallèle avec `&` et `wait`. Si un seul téléchargement ne rentre pas dans la limite de cinq minutes, déplacez-le vers un [hook SessionStart](#setup-scripts-vs-sessionstart-hooks) qui le lance en arrière-plan.
239
240<Note>
241 Les scripts de configuration qui installent des paquets ont besoin d'un accès réseau pour atteindre les registres. L'accès réseau **Trusted** par défaut permet les connexions aux [domaines de paquets courants](#default-allowed-domains) y compris npm, PyPI, RubyGems et crates.io. Les scripts échoueront à installer les paquets si votre environnement utilise l'accès réseau **None**.
242</Note>
243
244<h3 id="environment-caching">
245 Mise en cache de l'environnement
246</h3>
247
248Le script de configuration s'exécute la première fois que vous démarrez une session dans un environnement. Après son achèvement, Anthropic crée un snapshot du système de fichiers et réutilise ce snapshot comme point de départ pour les sessions ultérieures. Les nouvelles sessions commencent avec vos dépendances, outils et images Docker déjà sur le disque, et l'étape du script de configuration est ignorée. Cela maintient le démarrage rapide même lorsque le script installe de grandes chaînes d'outils ou extrait des images de conteneur.
249
250Le cache capture les fichiers, pas les processus en cours d'exécution. Tout ce que le script de configuration écrit sur le disque est transféré. Les services ou conteneurs qu'il démarre ne le sont pas, donc démarrez-les par session en demandant à Claude ou avec un [hook SessionStart](#setup-scripts-vs-sessionstart-hooks).
251
252Le script de configuration s'exécute à nouveau pour reconstruire le cache lorsque vous modifiez le script de configuration de l'environnement ou les hôtes réseau autorisés, et lorsque le cache atteint son expiration après environ sept jours. La reprise d'une session existante ne réexécute jamais le script de configuration.
253
254Vous n'avez pas besoin d'activer la mise en cache ou de gérer les snapshots vous-même.
255
256<h3 id="setup-scripts-vs-sessionstart-hooks">
257 Scripts de configuration vs. hooks SessionStart
258</h3>
259
260Utilisez un script de configuration pour installer les choses dont le cloud a besoin mais que votre ordinateur portable a déjà, comme un runtime de langage ou un outil CLI. Utilisez un hook [SessionStart](/docs/fr/hooks#sessionstart) pour la configuration du projet qui devrait s'exécuter partout, cloud et local, comme `npm install`.
261
262Les deux s'exécutent au démarrage d'une session, mais ils appartiennent à des endroits différents :
263
264| | Scripts de configuration | Hooks SessionStart |
265| -------------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
266| Attaché à | L'environnement cloud | Votre référentiel |
267| Configuré dans | Interface utilisateur de l'environnement cloud | `.claude/settings.json` dans votre référentiel |
268| S'exécute | Avant le lancement de Claude Code, lorsqu'aucun [environnement en cache](#environment-caching) n'est disponible | Après le lancement de Claude Code, sur chaque session y compris les sessions reprises |
269| Portée | Environnements cloud uniquement | Local et cloud |
270
271Les hooks SessionStart peuvent également être définis dans votre `~/.claude/settings.json` au niveau de l'utilisateur localement, mais les paramètres au niveau de l'utilisateur ne sont pas transférés aux sessions cloud. Dans le cloud, les hooks proviennent du référentiel et des [paramètres gérés par le serveur](/docs/fr/server-managed-settings) de votre organisation.
272
273<h3 id="install-dependencies-with-a-sessionstart-hook">
274 Installer les dépendances avec un hook SessionStart
275</h3>
276
277Pour installer les dépendances uniquement dans les sessions cloud, ajoutez un hook SessionStart au `.claude/settings.json` de votre référentiel :
278
279```json theme={null}
280{
281 "hooks": {
282 "SessionStart": [
283 {
284 "matcher": "startup|resume",
285 "hooks": [
286 {
287 "type": "command",
288 "command": "\"$CLAUDE_PROJECT_DIR\"/scripts/install_pkgs.sh"
289 }
290 ]
291 }
292 ]
293 }
294}
295```
296
297Créez le script à `scripts/install_pkgs.sh` et rendez-le exécutable avec `chmod +x`. La variable d'environnement `CLAUDE_CODE_REMOTE` est définie sur `true` dans les sessions cloud, vous pouvez donc l'utiliser pour ignorer l'exécution locale :
298
299```bash theme={null}
300#!/bin/bash
301
302if [ "$CLAUDE_CODE_REMOTE" != "true" ]; then
303 exit 0
304fi
305
306npm install
307pip install -r requirements.txt
308exit 0
309```
310
311Les hooks SessionStart ont certaines limitations dans les sessions cloud :
312
313* **Pas de portée cloud uniquement** : les hooks s'exécutent dans les sessions locales et cloud. Pour ignorer l'exécution locale, vérifiez la variable d'environnement `CLAUDE_CODE_REMOTE` comme indiqué ci-dessus.
314* **Nécessite un accès réseau** : les commandes d'installation ont besoin d'atteindre les registres de paquets. Si votre environnement utilise l'accès réseau **None**, ces hooks échouent. La [liste d'autorisation par défaut](#default-allowed-domains) sous **Trusted** couvre npm, PyPI, RubyGems et crates.io.
315* **Compatibilité du proxy** : tout le trafic sortant passe par un [proxy de sécurité](#security-proxy). Certains gestionnaires de paquets ne fonctionnent pas correctement avec ce proxy. Bun est un exemple connu.
316* **Ajoute une latence de démarrage** : les hooks s'exécutent chaque fois qu'une session démarre ou reprend, contrairement aux scripts de configuration qui bénéficient de la [mise en cache de l'environnement](#environment-caching). Gardez les scripts d'installation rapides en vérifiant si les dépendances sont déjà présentes avant de les réinstaller.
317
318Pour persister les variables d'environnement pour les commandes Bash suivantes, écrivez dans le fichier à `$CLAUDE_ENV_FILE`. Consultez [Hooks SessionStart](/docs/fr/hooks#sessionstart) pour plus de détails.
319
320Remplacer l'image de base par votre propre image Docker n'est pas encore pris en charge. Utilisez un script de configuration pour installer ce dont vous avez besoin en haut de l'[image fournie](#installed-tools), ou exécutez votre image en tant que conteneur aux côtés de Claude avec `docker compose`.
321
322<h2 id="network-access">
323 Accès réseau
324</h2>
325
326L'accès réseau contrôle les connexions sortantes de l'environnement cloud. Chaque environnement spécifie un niveau d'accès, et vous pouvez l'étendre avec des domaines autorisés personnalisés. La valeur par défaut est **Trusted**, qui permet les registres de paquets et autres [domaines autorisés](#default-allowed-domains).
327
328Pour modifier l'accès réseau d'un environnement, [ouvrez-le pour le modifier](#configure-your-environment) et utilisez le sélecteur **Accès réseau** dans la boîte de dialogue. Il n'y a pas de page Environnements séparée. L'icône cloud apparaît partout où vous démarrez une session cloud ou configurez une [routine](/docs/fr/routines#environments-and-network-access).
329
330<Note>
331 Le trafic du connecteur MCP est acheminé via les serveurs d'Anthropic, donc les connecteurs que vous activez sur une session ou une routine fonctionnent sans ajouter leurs hôtes aux **Domaines autorisés**. Les connecteurs sont configurés par session ou par routine ; supprimez ceux que vous n'avez pas besoin pour limiter les outils que Claude peut atteindre. Cela repose sur le même canal lié à Anthropic noté sous [Sécurité et isolation](#security-and-isolation).
332</Note>
333
334<h3 id="access-levels">
335 Niveaux d'accès
336</h3>
337
338Choisissez un niveau d'accès lorsque vous créez ou modifiez un environnement :
339
340| Niveau | Connexions sortantes |
341| :---------- | :-------------------------------------------------------------------------------------------------- |
342| **None** | Aucun accès réseau sortant |
343| **Trusted** | [Domaines autorisés](#default-allowed-domains) uniquement : registres de paquets, GitHub, SDK cloud |
344| **Full** | N'importe quel domaine |
345| **Custom** | Votre propre liste d'autorisation, incluant optionnellement les valeurs par défaut |
346
347Les opérations GitHub utilisent un [proxy séparé](#github-proxy) qui est indépendant de ce paramètre.
348
349<h3 id="allow-specific-domains">
350 Autoriser des domaines spécifiques
351</h3>
352
353Pour autoriser les domaines qui ne figurent pas dans la liste Trusted, sélectionnez **Custom** dans les paramètres d'accès réseau de l'environnement. Un champ **Domaines autorisés** apparaît. Entrez un domaine par ligne :
354
355```text theme={null}
356api.example.com
357*.internal.example.com
358registry.example.com
359```
360
361Utilisez `*.` pour la correspondance de sous-domaine générique. Cochez **Inclure également la liste par défaut des gestionnaires de paquets courants** pour conserver les [domaines Trusted](#default-allowed-domains) aux côtés de vos entrées personnalisées, ou laissez-le décoché pour autoriser uniquement ce que vous listez.
362
363Les domaines autorisés sont configurés par environnement. Il n'y a pas de liste d'autorisation au niveau de l'organisation que les propriétaires peuvent appliquer aux environnements de tous les utilisateurs ; les [paramètres gérés par le serveur](/docs/fr/server-managed-settings) peuvent restreindre les sessions cloud mais ne peuvent pas ajouter de domaines autorisés.
364
365<h3 id="github-proxy">
366 Proxy GitHub
367</h3>
368
369Pour la sécurité, toutes les opérations GitHub passent par un service proxy dédié qui garde vos véritables identifiants GitHub en dehors du sandbox. Le proxy authentifie deux types de trafic :
370
371* Interactions Git : le client git à l'intérieur du sandbox utilise une identité personnalisée limitée, que le proxy vérifie et traduit en votre jeton d'authentification GitHub réel
372* Demandes d'API GitHub : le proxy remplace vos véritables identifiants sur les demandes des outils GitHub intégrés, et de `gh` lorsque votre session définit l'espace réservé `proxy-injected` décrit dans [Travailler avec les problèmes et les demandes de tirage GitHub](#work-with-github-issues-and-pull-requests)
373
374Le proxy restreint également les opérations de poussée git à la branche de travail actuelle pour la sécurité, et permet le clonage, la récupération et les opérations PR tout en maintenant les limites de sécurité.
375
376Le proxy limite les demandes d'API GitHub et de ressources de version aux référentiels attachés à la session, indépendamment du [niveau d'accès réseau](#access-levels) de l'environnement. Les scripts de configuration qui téléchargent des ressources de version à partir de référentiels non attachés retournent un 403. Les fichiers validés à partir de référentiels publics sont récupérés via `raw.githubusercontent.com`, que le [proxy de sécurité](#security-proxy) gère à la place. Ce domaine figure dans la [liste Trusted](#default-allowed-domains) par défaut, donc les fichiers restent accessibles sauf si le [niveau d'accès](#access-levels) de l'environnement l'exclut.
377
378<h3 id="security-proxy">
379 Proxy de sécurité
380</h3>
381
382Les environnements s'exécutent derrière un proxy réseau HTTP/HTTPS pour la sécurité et la prévention des abus. Tout le trafic Internet sortant passe par ce proxy, qui fournit :
383
384* Protection contre les demandes malveillantes
385* Limitation de débit et prévention des abus
386* Filtrage de contenu pour une sécurité renforcée
387* Un journal d'audit au niveau DNS des noms d'hôtes demandés
388
389<h3 id="default-allowed-domains">
390 Domaines autorisés par défaut
391</h3>
392
393Lors de l'utilisation de l'accès réseau **Trusted**, les domaines suivants sont autorisés 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`.
394
395<AccordionGroup>
396 <Accordion title="Services Anthropic">
397 * api.anthropic.com
398 * statsig.anthropic.com
399 * docs.claude.com
400 * platform.claude.com
401 * code.claude.com
402 * claude.ai
403 </Accordion>
404
405 <Accordion title="Contrôle de version">
406 * github.com
407 * [www.github.com](http://www.github.com)
408 * api.github.com
409 * npm.pkg.github.com
410 * raw\.githubusercontent.com
411 * pkg-npm.githubusercontent.com
412 * objects.githubusercontent.com
413 * release-assets.githubusercontent.com
414 * codeload.github.com
415 * avatars.githubusercontent.com
416 * camo.githubusercontent.com
417 * gist.github.com
418 * gitlab.com
419 * [www.gitlab.com](http://www.gitlab.com)
420 * registry.gitlab.com
421 * bitbucket.org
422 * [www.bitbucket.org](http://www.bitbucket.org)
423 * api.bitbucket.org
424 </Accordion>
425
426 <Accordion title="Registres de conteneurs">
427 * registry-1.docker.io
428 * auth.docker.io
429 * index.docker.io
430 * hub.docker.com
431 * [www.docker.com](http://www.docker.com)
432 * production.cloudflare.docker.com
433 * download.docker.com
434 * gcr.io
435 * \*.gcr.io
436 * ghcr.io
437 * mcr.microsoft.com
438 * \*.data.mcr.microsoft.com
439 * public.ecr.aws
440 </Accordion>
441
442 <Accordion title="Plateformes cloud">
443 * cloud.google.com
444 * accounts.google.com
445 * gcloud.google.com
446 * \*.googleapis.com
447 * storage.googleapis.com
448 * compute.googleapis.com
449 * container.googleapis.com
450 * azure.com
451 * portal.azure.com
452 * microsoft.com
453 * [www.microsoft.com](http://www.microsoft.com)
454 * \*.microsoftonline.com
455 * packages.microsoft.com
456 * dotnet.microsoft.com
457 * dot.net
458 * visualstudio.com
459 * dev.azure.com
460 * \*.amazonaws.com
461 * \*.api.aws
462 * oracle.com
463 * [www.oracle.com](http://www.oracle.com)
464 * java.com
465 * [www.java.com](http://www.java.com)
466 * java.net
467 * [www.java.net](http://www.java.net)
468 * download.oracle.com
469 * yum.oracle.com
470 </Accordion>
471
472 <Accordion title="Gestionnaires de paquets JavaScript et Node">
473 * registry.npmjs.org
474 * [www.npmjs.com](http://www.npmjs.com)
475 * [www.npmjs.org](http://www.npmjs.org)
476 * npmjs.com
477 * npmjs.org
478 * yarnpkg.com
479 * registry.yarnpkg.com
480 </Accordion>
481
482 <Accordion title="Gestionnaires de paquets Python">
483 * pypi.org
484 * [www.pypi.org](http://www.pypi.org)
485 * files.pythonhosted.org
486 * pythonhosted.org
487 * test.pypi.org
488 * pypi.python.org
489 * pypa.io
490 * [www.pypa.io](http://www.pypa.io)
491 </Accordion>
492
493 <Accordion title="Gestionnaires de paquets Ruby">
494 * rubygems.org
495 * [www.rubygems.org](http://www.rubygems.org)
496 * api.rubygems.org
497 * index.rubygems.org
498 * ruby-lang.org
499 * [www.ruby-lang.org](http://www.ruby-lang.org)
500 * rubyforge.org
501 * [www.rubyforge.org](http://www.rubyforge.org)
502 * rubyonrails.org
503 * [www.rubyonrails.org](http://www.rubyonrails.org)
504 * rvm.io
505 * get.rvm.io
506 </Accordion>
507
508 <Accordion title="Gestionnaires de paquets Rust">
509 * crates.io
510 * [www.crates.io](http://www.crates.io)
511 * index.crates.io
512 * static.crates.io
513 * rustup.rs
514 * static.rust-lang.org
515 * [www.rust-lang.org](http://www.rust-lang.org)
516 </Accordion>
517
518 <Accordion title="Gestionnaires de paquets Go">
519 * proxy.golang.org
520 * sum.golang.org
521 * index.golang.org
522 * golang.org
523 * [www.golang.org](http://www.golang.org)
524 * goproxy.io
525 * pkg.go.dev
526 </Accordion>
527
528 <Accordion title="Gestionnaires de paquets JVM">
529 * maven.org
530 * repo.maven.org
531 * central.maven.org
532 * repo1.maven.org
533 * repo.maven.apache.org
534 * jcenter.bintray.com
535 * gradle.org
536 * [www.gradle.org](http://www.gradle.org)
537 * services.gradle.org
538 * plugins.gradle.org
539 * kotlinlang.org
540 * [www.kotlinlang.org](http://www.kotlinlang.org)
541 * spring.io
542 * repo.spring.io
543 </Accordion>
544
545 <Accordion title="Autres gestionnaires de paquets">
546 * packagist.org (PHP Composer)
547 * [www.packagist.org](http://www.packagist.org)
548 * repo.packagist.org
549 * nuget.org (.NET NuGet)
550 * [www.nuget.org](http://www.nuget.org)
551 * api.nuget.org
552 * pub.dev (Dart/Flutter)
553 * api.pub.dev
554 * hex.pm (Elixir/Erlang)
555 * [www.hex.pm](http://www.hex.pm)
556 * cpan.org (Perl CPAN)
557 * [www.cpan.org](http://www.cpan.org)
558 * metacpan.org
559 * [www.metacpan.org](http://www.metacpan.org)
560 * api.metacpan.org
561 * cocoapods.org (iOS/macOS)
562 * [www.cocoapods.org](http://www.cocoapods.org)
563 * cdn.cocoapods.org
564 * haskell.org
565 * [www.haskell.org](http://www.haskell.org)
566 * hackage.haskell.org
567 * swift.org
568 * [www.swift.org](http://www.swift.org)
569 </Accordion>
570
571 <Accordion title="Distributions Linux">
572 * archive.ubuntu.com
573 * security.ubuntu.com
574 * ubuntu.com
575 * [www.ubuntu.com](http://www.ubuntu.com)
576 * \*.ubuntu.com
577 * ppa.launchpad.net
578 * launchpad.net
579 * [www.launchpad.net](http://www.launchpad.net)
580 * \*.nixos.org
581 </Accordion>
582
583 <Accordion title="Outils de développement et plateformes">
584 * dl.k8s.io (Kubernetes)
585 * pkgs.k8s.io
586 * k8s.io
587 * [www.k8s.io](http://www.k8s.io)
588 * releases.hashicorp.com (HashiCorp)
589 * apt.releases.hashicorp.com
590 * rpm.releases.hashicorp.com
591 * archive.releases.hashicorp.com
592 * hashicorp.com
593 * [www.hashicorp.com](http://www.hashicorp.com)
594 * repo.anaconda.com (Anaconda/Conda)
595 * conda.anaconda.org
596 * anaconda.org
597 * [www.anaconda.com](http://www.anaconda.com)
598 * anaconda.com
599 * continuum.io
600 * apache.org (Apache)
601 * [www.apache.org](http://www.apache.org)
602 * archive.apache.org
603 * downloads.apache.org
604 * eclipse.org (Eclipse)
605 * [www.eclipse.org](http://www.eclipse.org)
606 * download.eclipse.org
607 * nodejs.org (Node.js)
608 * [www.nodejs.org](http://www.nodejs.org)
609 * developer.apple.com
610 * developer.android.com
611 * pkg.stainless.com
612 * binaries.prisma.sh
613 </Accordion>
614
615 <Accordion title="Services cloud et surveillance">
616 * statsig.com
617 * [www.statsig.com](http://www.statsig.com)
618 * api.statsig.com
619 * sentry.io
620 * \*.sentry.io
621 * downloads.sentry-cdn.com
622 * http-intake.logs.datadoghq.com
623 * browser-intake-us5-datadoghq.com
624 * \*.datadoghq.com
625 * \*.datadoghq.eu
626 * api.honeycomb.io
627 </Accordion>
628
629 <Accordion title="Livraison de contenu et miroirs">
630 * sourceforge.net
631 * \*.sourceforge.net
632 * packagecloud.io
633 * \*.packagecloud.io
634 * fonts.googleapis.com
635 * fonts.gstatic.com
636 </Accordion>
637
638 <Accordion title="Schéma et configuration">
639 * json-schema.org
640 * [www.json-schema.org](http://www.json-schema.org)
641 * json.schemastore.org
642 * [www.schemastore.org](http://www.schemastore.org)
643 </Accordion>
644
645 <Accordion title="Model Context Protocol">
646 * \*.modelcontextprotocol.io
647 </Accordion>
648</AccordionGroup>
649
650<h2 id="move-tasks-between-web-and-terminal">62<h2 id="move-tasks-between-web-and-terminal">
651 Déplacer les tâches entre le web et le terminal63 Déplacer les tâches entre le web et le terminal
652</h2>64</h2>
653 65
654Ces flux de travail nécessitent le [CLI Claude Code](/docs/fr/quickstart) connecté au même compte claude.ai. Vous pouvez démarrer de nouvelles sessions cloud à partir de votre terminal, ou extraire les sessions cloud dans votre terminal pour continuer localement. Les sessions cloud persistent même si vous fermez votre ordinateur portable, et vous pouvez les surveiller de n'importe où, y compris depuis l'application mobile Claude.66Ces workflows nécessitent que le [Claude Code CLI](/docs/fr/quickstart) soit connecté au même compte claude.ai. Vous pouvez démarrer de nouvelles sessions cloud depuis votre terminal, ou extraire des sessions cloud dans votre terminal pour continuer localement. Les sessions cloud persistent même si vous fermez votre ordinateur portable, et vous pouvez les surveiller de n'importe où, y compris depuis l'application mobile Claude.
655 67
656<Note>68<Note>
657 À partir du CLI, le transfert de session est unidirectionnel : vous pouvez extraire les sessions cloud dans votre terminal avec `--teleport`, mais vous ne pouvez pas pousser une session de terminal existante vers le web. L'indicateur `--cloud` crée une nouvelle session cloud pour votre référentiel actuel. L'[application Desktop](/docs/fr/desktop#continue-in-another-surface) fournit un menu Continue in qui peut envoyer une session locale vers le web.69 Depuis le CLI, le transfert de session est unidirectionnel : vous pouvez extraire des sessions cloud dans votre terminal avec `--teleport`, mais vous ne pouvez pas envoyer une session terminal existante vers le web. Le flag `--cloud` avec une description de tâche crée une nouvelle session cloud pour votre référentiel actuel ; avec `-p` et un ID de session ou une URL claude.ai/code, il [met plutôt en file d'attente un message dans cette session existante](/docs/fr/claude-code-on-the-web#send-follow-ups-from-the-cli). L'[application de bureau](/docs/fr/desktop#continue-in-another-surface) fournit un menu Continuer dans qui peut envoyer une session locale vers le web.
658</Note>70</Note>
659 71
660<h3 id="from-terminal-to-web">72<h3 id="from-terminal-to-web">
661 Du terminal au web73 Du terminal vers le web
662</h3>74</h3>
663 75
664Démarrez une session cloud à partir de la ligne de commande avec l'indicateur `--cloud` :76Démarrez une session cloud depuis la ligne de commande avec le flag `--cloud` :
665 77
666```bash theme={null}78```bash theme={null}
667claude --cloud "Fix the authentication bug in src/auth/login.ts"79claude --cloud "Fix the authentication bug in src/auth/login.ts"
668```80```
669 81
670Cela crée une nouvelle session cloud sur claude.ai. La session clone votre répertoire courant du serveur distant GitHub à votre branche actuelle, donc poussez d'abord si vous avez des commits locaux, puisque la VM clone depuis GitHub plutôt que depuis votre machine. `--cloud` fonctionne avec un seul référentiel à la fois. La tâche s'exécute dans le cloud tandis que vous continuez à travailler localement. L'ancienne orthographe `--remote` fonctionne toujours comme alias déprécié pour `--cloud`.82Cela crée une nouvelle session cloud sur claude.ai. La VM cloud clone le remote GitHub du répertoire actuel à votre branche actuelle, pas votre checkout local, donc poussez d'abord si vous avez des commits locaux. `--cloud` fonctionne avec un seul référentiel à la fois. La tâche s'exécute dans le cloud tandis que vous continuez à travailler localement. L'ancienne orthographe `--remote` fonctionne toujours comme alias déprécié pour `--cloud`.
671 83
672À partir de la v2.1.195, le CLI affiche une liste de contrôle en direct des étapes de configuration, telles que le clonage du référentiel et l'exécution de votre [script de configuration](#setup-scripts), tandis que le conteneur cloud démarre. Les messages que vous tapez pendant que le conteneur est en cours de provisionnement sont mis en file d'attente et envoyés une fois que la session est prête.84Pendant que le conteneur cloud démarre, le CLI affiche une liste de contrôle en direct des étapes de configuration, telles que le clonage du référentiel et l'exécution de votre [script de configuration](/docs/fr/cloud-environments#setup-scripts). Il met en file d'attente les messages que vous tapez pendant le provisionnement et les envoie une fois que la session est prête.
673 85
674<Note>86<Note>
675 `--cloud` crée des sessions cloud. `--remote-control` n'est pas lié : il expose une session CLI locale pour la surveillance depuis le web. Consultez [Contrôle à distance](/docs/fr/remote-control).87 `--cloud` crée des sessions cloud. `--remote-control` n'est pas lié : il expose une session CLI locale pour la surveillance depuis le web. Voir [Remote Control](/docs/fr/remote-control).
676</Note>88</Note>
677 89
678Utilisez `/tasks` dans le CLI Claude Code pour vérifier la progression, ou ouvrez la session sur claude.ai ou l'application mobile Claude pour interagir directement. De là, vous pouvez diriger Claude, fournir des commentaires ou répondre à des questions comme dans n'importe quelle autre conversation.90Utilisez `/tasks` dans le Claude Code CLI pour vérifier la progression, ou ouvrez la session sur claude.ai ou l'application mobile Claude pour interagir directement. De là, vous pouvez diriger Claude, fournir des commentaires ou répondre à des questions comme dans n'importe quelle autre conversation.
91
92Si Claude pose une question et que la session reste inactive, vous pouvez toujours répondre quand vous revenez, jusqu'à [l'expiration de l'environnement](#environment-expired), et la session continue à partir de votre réponse.
679 93
680<h4 id="tips-for-cloud-tasks">94<h4 id="tips-for-cloud-tasks">
681 Conseils pour les tâches cloud95 Conseils pour les tâches cloud
687claude --permission-mode plan101claude --permission-mode plan
688```102```
689 103
690En mode plan, Claude lit les fichiers, exécute les commandes pour explorer et propose un plan sans modifier le code source. Une fois que vous êtes satisfait, enregistrez le plan dans le référentiel, validez et poussez afin que la VM cloud puisse le cloner. Ensuite, démarrez une session cloud pour l'exécution autonome :104En mode plan, Claude lit les fichiers, exécute des commandes pour explorer et propose un plan sans modifier le code source. Une fois que vous êtes satisfait, enregistrez le plan dans le référentiel, validez et poussez afin que la VM cloud puisse le cloner. Ensuite, démarrez une session cloud pour l'exécution autonome :
691 105
692```bash theme={null}106```bash theme={null}
693claude --cloud "Execute the migration plan in docs/migration-plan.md"107claude --cloud "Execute the migration plan in docs/migration-plan.md"
694```108```
695 109
696Ce modèle vous donne le contrôle sur la stratégie tout en permettant à Claude d'exécuter de manière autonome dans le cloud.110**Exécutez les tâches en parallèle** : chaque commande `--cloud` crée sa propre session cloud qui s'exécute indépendamment. Vous pouvez démarrer plusieurs tâches et elles s'exécuteront toutes simultanément dans des sessions séparées :
697
698**Planifiez dans le cloud avec ultraplan** : pour rédiger et examiner le plan lui-même dans une session web, utilisez [ultraplan](/docs/fr/ultraplan). Claude génère le plan sur Claude Code sur le web tandis que vous continuez à travailler, puis vous commentez les sections dans votre navigateur et choisissez d'exécuter à distance ou d'envoyer le plan vers votre terminal.
699
700**Exécutez les tâches en parallèle** : chaque commande `--cloud` crée sa propre session cloud qui s'exécute indépendamment. Vous pouvez lancer plusieurs tâches et elles s'exécuteront toutes simultanément dans des sessions séparées :
701 111
702```bash theme={null}112```bash theme={null}
703claude --cloud "Fix the flaky test in auth.spec.ts"113claude --cloud "Fix the flaky test in auth.spec.ts"
705claude --cloud "Refactor the logger to use structured output"115claude --cloud "Refactor the logger to use structured output"
706```116```
707 117
708Surveillez toutes les sessions avec `/tasks` dans le CLI Claude Code. Lorsqu'une session se termine, vous pouvez créer une PR à partir de l'interface web ou [téléporter](#from-web-to-terminal) la session vers votre terminal pour continuer à travailler.118Surveillez toutes les sessions avec `/tasks` dans le Claude Code CLI. Quand une session se termine, vous pouvez créer une PR depuis l'interface web ou [téléporter](#from-web-to-terminal) la session dans votre terminal pour continuer à travailler.
709 119
710<h4 id="send-local-repositories-without-github">120<h4 id="send-local-repositories-without-github">
711 Envoyer les référentiels locaux sans GitHub121 Envoyer des référentiels locaux sans GitHub
712</h4>122</h4>
713 123
714Lorsque vous exécutez `claude --cloud` à partir d'un référentiel qui n'est pas connecté à GitHub, Claude Code regroupe votre référentiel local et le télécharge directement vers la session cloud. Le paquet inclut votre historique de référentiel complet sur toutes les branches, plus toute modification non validée des fichiers suivis.124Quand vous exécutez `claude --cloud` depuis un référentiel qui n'est pas connecté à GitHub, Claude Code regroupe votre référentiel local et le télécharge directement vers la session cloud. Le bundle inclut l'historique complet de votre référentiel sur toutes les branches, plus les modifications non validées des fichiers suivis.
715 125
716Ce repli s'active automatiquement lorsque l'accès à GitHub n'est pas disponible. Pour le forcer même lorsque GitHub est connecté, définissez `CCR_FORCE_BUNDLE=1` :126Sur macOS, Linux et WSL, Claude Code exclut les modifications non validées des fichiers nommés comme des identifiants ou des clés de l'upload et nomme les fichiers qu'il a laissés de côté. Cela couvre les fichiers `.env`, les fichiers Terraform `*.tfvars` et les fichiers clés tels que `id_rsa` et `*.pem`. La session démarre avec la version validée de chacun, ou sans le fichier si aucun n'est validé. Dans une worktree liée, un submodule ou une disposition similaire, Claude Code télécharge ces modifications avec le reste et nomme les fichiers qu'il télécharge.
127
128Ce fallback s'active automatiquement quand l'accès à GitHub n'est pas disponible. Pour le forcer même quand GitHub est connecté, définissez `CCR_FORCE_BUNDLE=1` :
717 129
718```bash theme={null}130```bash theme={null}
719CCR_FORCE_BUNDLE=1 claude --cloud "Run the test suite and fix any failures"131CCR_FORCE_BUNDLE=1 claude --cloud "Run the test suite and fix any failures"
722Les référentiels regroupés doivent respecter ces limites :134Les référentiels regroupés doivent respecter ces limites :
723 135
724* Le répertoire doit être un référentiel git avec au moins un commit136* Le répertoire doit être un référentiel git avec au moins un commit
725* Le référentiel regroupé doit être inférieur à 100 Mo. Les référentiels plus grands reviennent à regrouper uniquement la branche actuelle, puis à un snapshot unique aplati de l'arborescence de travail, et échouent uniquement si le snapshot est toujours trop volumineux137* Le référentiel regroupé doit être inférieur à 100 MB. Les référentiels plus grands reviennent à regrouper uniquement la branche actuelle, puis à un seul snapshot aplati de l'arborescence de travail, et échouent uniquement si le snapshot est toujours trop volumineux
726* Les fichiers non suivis ne sont pas inclus ; exécutez `git add` sur les fichiers que vous souhaitez que la session cloud voie138* Les fichiers non suivis ne sont pas inclus ; exécutez `git add` sur les fichiers que vous voulez que la session cloud voie
727* Les sessions créées à partir d'un paquet ne peuvent pas pousser vers un serveur distant à moins que vous ayez également [authentification GitHub](#github-authentication-options) configurée139* Les sessions créées à partir d'un bundle ne peuvent pas repousser vers un remote à moins que vous ayez également [l'authentification GitHub](#github-authentication-options) configurée
140
141<h3 id="send-follow-ups-from-the-cli">
142 Envoyer des messages de suivi depuis le CLI
143</h3>
144
145Une fois qu'une session cloud est en cours d'exécution, où qu'elle s'exécute, envoyez-lui un message de suivi depuis le CLI `claude` sur n'importe quelle machine où vous êtes connecté avec `claude auth login`. Le CLI s'authentifie avec vos identifiants de compte Anthropic et n'envoie aucun état de session local, donc la commande n'a pas besoin de s'exécuter depuis la machine qui a démarré la session, et c'est la même dans chaque shell, y compris PowerShell.
146
147La commande publie un message et se termine :
148
149```bash theme={null}
150claude -p "your message" --cloud <session-id>
151```
152
153Le CLI met le message en file d'attente dans la session et se termine sans attendre une réponse. Utilisez-le pour diriger une session longue, mettre en file d'attente l'étape suivante tandis que la session actuelle se termine toujours, ou envoyer des messages de suivi depuis un [script CI](/docs/fr/self-hosted-environments-testing#run-the-test-loop). Vous pouvez également rediriger le message sur stdin au lieu de le passer en tant qu'argument : `echo "your message" | claude -p --cloud <session-id>`.
154
155Pour `<session-id>`, passez l'ID nu, tel que `session_...` ou `cse_...`, ou l'URL `claude.ai/code/<id>` de la session, avec ou sans le schéma ou la chaîne de requête. Trouvez l'ID dans votre liste de sessions sur claude.ai/code.
156
157<Note>
158 `--cloud` nécessite un compte Anthropic. Il n'est pas disponible quand Claude Code est configuré pour Amazon Bedrock, Google Cloud's Agent Platform ou un autre fournisseur tiers. Une [passerelle LLM](/docs/fr/llm-gateway) configurée uniquement via `ANTHROPIC_BASE_URL` ne compte pas comme un fournisseur tiers pour cette vérification, mais vous devez toujours vous connecter avec `claude auth login`. La politique `allow_remote_sessions` de votre organisation doit également être activée. Un propriétaire peut l'activer dans les paramètres d'administration Claude Code sur claude.ai/admin-settings/claude-code.
159</Note>
160
161<h4 id="output-and-errors">
162 Sortie et erreurs
163</h4>
164
165En cas de succès, la commande imprime l'ID de session et un lien pour afficher la session :
166
167```
168Sent to cloud session.
169Session ID: session_01DiUkqY2kzbUbDmW1w96rfi
170View: https://claude.ai/code/session_01DiUkqY2kzbUbDmW1w96rfi?from=cli&m=0
171```
172
173Passez `--output-format json` pour un résultat lisible par machine : `{ok, session_id, url}` en cas de succès, ou `{ok: false, session_id, error}` quand l'envoi échoue, par exemple quand la session est manquante ou archivée. Les erreurs de configuration, telles qu'un fournisseur non pris en charge ou une politique organisationnelle désactivée, s'impriment sur stderr sans JSON. `--output-format stream-json` n'est pas pris en charge avec `--cloud <session-id>`.
174
175Le CLI préfixe les erreurs avec `Error: `. Un échec de livraison est enveloppé comme `failed to send message to cloud session <id>: <reason>`.
176
177| Message | Ce que cela signifie |
178| --------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
179| `Cloud sessions aren't available with <provider>. They run on Anthropic's infrastructure and require an Anthropic account.` | Claude Code est configuré pour un fournisseur tiers. Le message nomme le fournisseur avec l'étiquette que votre configuration utilise, telle que `Amazon Bedrock` ou `Google Vertex AI`. Supprimez la configuration de ce fournisseur, par exemple en désactivant `CLAUDE_CODE_USE_BEDROCK`, et connectez-vous avec un compte Anthropic (`claude auth login`). |
180| `Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.` | La politique organisationnelle `allow_remote_sessions` est désactivée. |
181| `Couldn't verify your organization's policy for cloud sessions. Check your network connection and try again.` | Claude Code n'a pas pu récupérer la politique de votre organisation, il refuse donc l'envoi plutôt que d'assumer que les sessions cloud sont autorisées. Vérifiez votre connexion réseau et réessayez. |
182| `Attaching to an existing cloud session is not enabled for your account.` | Vous avez exécuté `--cloud <session-id>` sans `-p`. Envoyez le message avec `claude -p "your message" --cloud <session-id>`. |
183| `Session not found: <id>` | L'ID ou l'URL ne correspond pas à une session à laquelle vous pouvez accéder. Vérifiez-le par rapport à l'URL claude.ai/code de la session. |
184| `cloud session <id> is archived and cannot accept new messages` | La session a été archivée. Démarrez une nouvelle session à la place. |
728 185
729<h3 id="from-web-to-terminal">186<h3 id="from-web-to-terminal">
730 Du web au terminal187 Du web vers le terminal
731</h3>188</h3>
732 189
733Extrayez une session cloud dans votre terminal en utilisant l'une de ces options :190Extrayez une session cloud dans votre terminal en utilisant l'une de ces options :
734 191
735* **Utilisation de `--teleport`** : à partir de la ligne de commande, exécutez `claude --teleport` pour un sélecteur de session interactif, ou `claude --teleport <session-id>` pour reprendre une session spécifique directement. Si vous avez des modifications non validées, vous serez invité à les ranger d'abord.192* **Utilisation de `--teleport`** : depuis la ligne de commande, exécutez `claude --teleport` pour un sélecteur de session interactif, ou `claude --teleport <session-id>` pour reprendre une session spécifique directement. Si vous avez des modifications non validées, vous serez invité à les ranger d'abord.
736* **Utilisation de `/teleport`** : à l'intérieur d'une session CLI existante, exécutez `/teleport` ou `/tp` pour ouvrir le même sélecteur de session sans redémarrer Claude Code.193* **Utilisation de `/teleport`** : à l'intérieur d'une session CLI existante, exécutez `/teleport` ou `/tp` pour ouvrir le même sélecteur de session sans redémarrer Claude Code.
737* **À partir de `/tasks`** : exécutez `/tasks` pour voir vos sessions en arrière-plan, puis appuyez sur `t` pour vous téléporter dans l'une d'elles.194* **Depuis `/tasks`** : exécutez `/tasks` pour voir vos sessions en arrière-plan, puis appuyez sur `t` pour vous téléporter dans l'une d'elles.
738* **À partir de l'interface web** : sélectionnez **Ouvrir dans CLI** pour copier une commande que vous pouvez coller dans votre terminal.195* **Depuis l'interface web** : sélectionnez **Ouvrir dans > Terminal** dans le menu de session pour copier une commande que vous pouvez coller dans votre terminal.
196* **Depuis l'intérieur de la session cloud** : tapez `/teleport` et Claude Code répond avec la commande exacte `claude --teleport <session-id>` pour cette session, prête à s'exécuter à partir d'un checkout du référentiel. Nécessite Claude Code v2.1.223 ou ultérieur dans l'environnement de la session.
739 197
740Lorsque vous téléportez une session, Claude vérifie que vous êtes dans le bon référentiel, récupère et extrait la branche de la session cloud, et charge l'historique complet de la conversation dans votre terminal.198Quand vous téléportez une session, Claude vérifie que vous êtes dans le bon référentiel, récupère et vérifie la branche de la session cloud, et charge l'historique complet de la conversation dans votre terminal. Le terminal obtient sa propre copie de la session : le nouveau travail là-bas reste local et n'apparaît pas dans la session cloud sur claude.ai ou l'application mobile Claude. Pour continuer à diriger depuis votre téléphone après la téléportation, démarrez [`/remote-control`](/docs/fr/remote-control) dans la session locale.
741 199
742`--teleport` est distinct de `--resume`. `--resume` rouvre une conversation à partir de l'historique local de cette machine et ne liste pas les sessions cloud ; `--teleport` extrait une session cloud et sa branche.200`--teleport` est distinct de `--resume`. `--resume` rouvre une conversation à partir de l'historique local de cette machine et ne liste pas les sessions cloud ; `--teleport` extrait une session cloud et sa branche.
743 201
745 Exigences de téléportation203 Exigences de téléportation
746</h4>204</h4>
747 205
748La téléportation vérifie ces exigences avant de reprendre une session. Si une exigence n'est pas satisfaite, vous verrez une erreur ou vous serez invité à résoudre le problème.206Teleport vérifie ces exigences avant de reprendre une session. Si une exigence n'est pas satisfaite, vous verrez une erreur ou serez invité à résoudre le problème.
749 207
750| Exigence | Détails |208| Exigence | Détails |
751| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |209| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
752| État git propre | Votre répertoire de travail ne doit avoir aucune modification non validée. La téléportation vous invite à ranger les modifications si nécessaire. |210| État git propre | Votre répertoire de travail ne doit avoir aucune modification non validée. Teleport vous invite à ranger les modifications si nécessaire. |
753| Référentiel correct | Vous devez exécuter `--teleport` à partir d'une extraction du même référentiel, pas d'une fourche. À partir de la v2.1.199, Claude Code accepte une extraction même lorsqu'il ne peut pas analyser le serveur distant en nom d'hôte, comme un alias d'hôte SSH comme `git@work:owner/repo.git` ou une forme courte réécrite par `insteadOf`. Il affiche d'abord une invite de confirmation, et uniquement lorsque le propriétaire du serveur distant et le nom du référentiel correspondent au référentiel de la session. |211| Référentiel correct | Vous devez exécuter `--teleport` à partir d'un checkout du même référentiel, pas d'une fork. Si vous l'exécutez à partir d'un checkout d'un référentiel différent, Claude Code affiche une erreur qui nomme à la fois le référentiel de la session et votre checkout. Si Claude Code ne peut pas analyser votre remote en un nom d'hôte, par exemple un alias d'hôte SSH comme `git@work:owner/repo.git`, il vous demande de confirmer et accepte le checkout quand le propriétaire du remote et le nom du référentiel correspondent au référentiel de la session. |
754| Branche disponible | La branche de la session cloud doit avoir été poussée vers le serveur distant. La téléportation la récupère et l'extrait automatiquement. |212| Branche disponible | La branche de la session cloud doit avoir été poussée vers le remote. Teleport la récupère et la vérifie automatiquement. |
755| Même compte | Vous devez être authentifié au même compte claude.ai utilisé dans la session cloud. |213| Même compte | Vous devez être authentifié au même compte claude.ai utilisé dans la session cloud. |
756 214
757<h4 id="teleport-is-unavailable">215<h4 id="teleport-is-unavailable">
758 `--teleport` n'est pas disponible216 `--teleport` n'est pas disponible
759</h4>217</h4>
760 218
761La téléportation nécessite l'authentification par abonnement claude.ai. Si vous êtes authentifié via clé API, Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry, exécutez `/login` pour vous connecter avec votre compte claude.ai à la place. Si vous êtes déjà connecté via claude.ai et `--teleport` n'est toujours pas disponible, votre organisation a peut-être désactivé les sessions cloud.219Teleport nécessite l'authentification par abonnement claude.ai. Si vous êtes authentifié via clé API, exécutez `/login` pour vous connecter avec votre compte claude.ai à la place. Si l'erreur nomme votre fournisseur à la place, les sessions cloud ne sont pas disponibles via les fournisseurs tiers ; voir le [tableau d'erreurs](#output-and-errors). Si vous êtes déjà connecté via claude.ai et que `--teleport` n'est toujours pas disponible, votre organisation a peut-être désactivé les sessions cloud.
762 220
763<h2 id="work-with-sessions">221<h2 id="work-with-sessions">
764 Travailler avec les sessions222 Travailler avec les sessions
765</h2>223</h2>
766 224
767Les sessions apparaissent dans la barre latérale à claude.ai/code. De là, vous pouvez examiner les modifications, partager avec les coéquipiers, archiver le travail terminé ou supprimer les sessions définitivement.225Les sessions apparaissent dans la barre latérale sur claude.ai/code. De là, vous pouvez examiner les modifications, partager avec vos coéquipiers, archiver le travail terminé ou supprimer définitivement les sessions.
768 226
769<h3 id="manage-context">227<h3 id="manage-context">
770 Gérer le contexte228 Gérer le contexte
772 230
773Les sessions cloud prennent en charge les [commandes intégrées](/docs/fr/commands) qui produisent une sortie textuelle. Les commandes qui s'exécutent uniquement dans l'interface du terminal, telles que `/plugin` ou `/resume`, ne sont pas disponibles. Les commandes qui ouvrent un sélecteur ou un panneau dans le terminal se comportent différemment dans les sessions cloud :231Les sessions cloud prennent en charge les [commandes intégrées](/docs/fr/commands) qui produisent une sortie textuelle. Les commandes qui s'exécutent uniquement dans l'interface du terminal, telles que `/plugin` ou `/resume`, ne sont pas disponibles. Les commandes qui ouvrent un sélecteur ou un panneau dans le terminal se comportent différemment dans les sessions cloud :
774 232
775* **`/model`, `/effort`, `/fast`, `/color` et `/rename`** : passez la valeur comme argument, par exemple `/model sonnet`, au lieu d'ouvrir le sélecteur de terminal ou le curseur. Les formes d'argument nécessitent Claude Code v2.1.205 ou ultérieur dans l'environnement de la session et suivent les [notes de disponibilité](/docs/fr/commands#all-commands) de chaque commande : `/effort` signale `Not applied` tandis qu'un [lancement par défaut du niveau d'effort](/docs/fr/model-config#adjust-effort-level) du modèle est en vigueur, et `/fast` fonctionne uniquement dans une session qui a démarré avec le mode rapide activé.233* **`/model`, `/effort`, `/fast`, `/color` et `/rename`** : transmettez la valeur en tant qu'argument, par exemple `/model sonnet`, au lieu d'ouvrir le sélecteur du terminal ou le curseur. Les formes d'argument nécessitent Claude Code v2.1.205 ou une version ultérieure dans l'environnement de la session et suivent les [notes de disponibilité](/docs/fr/commands#all-commands) de chaque commande : `/effort` signale `Not applied` tandis qu'un [effort par défaut au lancement](/docs/fr/model-config#adjust-effort-level) du modèle est en vigueur, et `/fast` fonctionne uniquement dans une session qui a démarré avec le mode rapide activé.
776* **`/config`** : sur le web, ouvre la section Claude Code de vos paramètres au lieu de définir une valeur, et le texte après la commande, y compris `key=value`, est ignoré. Pour modifier les paramètres d'une session cloud, utilisez les [variables d'environnement](#configure-your-environment) ou validez les [fichiers de paramètres](/docs/fr/settings) dans le référentiel.234* **`/config`** : sur le web, ouvre la section Claude Code de vos paramètres au lieu de définir une valeur, et le texte après la commande, y compris `key=value`, est ignoré. Pour modifier les paramètres d'une session cloud, utilisez les [variables d'environnement](/docs/fr/cloud-environments#set-environment-variables) ou validez les [fichiers de paramètres](/docs/fr/settings) dans le référentiel.
777 235
778Pour la gestion du contexte spécifiquement :236Pour la gestion du contexte spécifiquement :
779 237
780| Commande | Fonctionne dans les sessions cloud | Notes |238| Commande | Fonctionne dans les sessions cloud | Notes |
781| :--------- | :--------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------ |239| :--------- | :--------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------ |
782| `/compact` | Oui | Résume la conversation pour libérer du contexte. Accepte les instructions de focus optionnelles comme `/compact keep the test output` |240| `/compact` | Oui | Résume la conversation pour libérer du contexte. Accepte les instructions de focus optionnelles comme `/compact keep the test output` |
783| `/context` | Oui | Affiche ce qui est actuellement dans la fenêtre de contexte |241| `/context` | Oui | Affiche ce qui se trouve actuellement dans la fenêtre de contexte |
784| `/clear` | Non | Démarrez une nouvelle session à partir de la barre latérale à la place |242| `/clear` | Non | Démarrez plutôt une nouvelle session à partir de la barre latérale |
785 243
786La compaction automatique s'exécute automatiquement lorsque la fenêtre de contexte approche de la capacité. Pour la déclencher plus tôt, définissez [`CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`](/docs/fr/env-vars) dans vos [variables d'environnement](#configure-your-environment). Par exemple, `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=70` compacte à 70 % de capacité au lieu d'attendre que la fenêtre soit presque pleine. Pour modifier la taille de fenêtre effective pour les calculs de compaction, utilisez [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/fr/env-vars).244La compaction automatique s'exécute automatiquement lorsque la fenêtre de contexte approche de sa capacité. Claude Code sur le web définit [`CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`](/docs/fr/env-vars) dans les sessions cloud lui-même, de sorte que la compaction se déclenche à mi-chemin dans la [fenêtre de compaction automatique](/docs/fr/model-config#set-the-auto-compact-window) plutôt que lorsque la fenêtre se remplit. Cette valeur remplace celle que vous ajoutez dans vos [variables d'environnement](/docs/fr/cloud-environments#set-environment-variables), donc ajouter la variable là-bas ne change pas le moment où la compaction se déclenche.
787 245
788Les [sous-agents](/docs/fr/sub-agents) fonctionnent de la même manière qu'en local. Claude peut les générer avec l'outil Task pour décharger la recherche ou le travail parallèle dans une fenêtre de contexte séparée, gardant la conversation principale plus légère. Les sous-agents définis dans votre `.claude/agents/` du référentiel sont récupérés automatiquement.246Pour modifier la fenêtre de compaction automatique à la place, définissez [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/fr/env-vars) dans vos variables d'environnement, ou exécutez [`/autocompact`](/docs/fr/commands#all-commands) avec un nombre de jetons dans une session où la variable n'est pas définie.
789 247
790Les [équipes d'agents](/docs/fr/agent-teams) sont désactivées par défaut mais peuvent être activées en ajoutant `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` à vos [variables d'environnement](#configure-your-environment).248Les [sous-agents](/docs/fr/sub-agents) fonctionnent de la même manière qu'en local. Claude peut les générer avec l'outil Agent pour déléguer la recherche ou le travail parallèle à une fenêtre de contexte séparée, en gardant la conversation principale plus légère. Les sous-agents définis dans le répertoire `.claude/agents/` de votre référentiel sont détectés automatiquement.
249
250Les [équipes d'agents](/docs/fr/agent-teams) sont désactivées par défaut mais peuvent être activées en ajoutant `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` à vos [variables d'environnement](/docs/fr/cloud-environments#set-environment-variables).
251
252<h3 id="permission-modes-in-cloud-sessions">
253 Modes de permission dans les sessions cloud
254</h3>
255
256Vous choisissez le [mode de permission](/docs/fr/permission-modes) d'une session cloud à partir du [menu déroulant de mode](/docs/fr/permission-modes#switch-permission-modes), à la fois lorsque vous créez la tâche et pendant que la session s'exécute. Lorsque vous rouvrez une session dont l'[environnement hébergé par Anthropic a expiré](#environment-expired), ou que vous envoyez un message à une session qu'un exécuteur auto-hébergé a [libérée pendant qu'elle était inactive](/docs/fr/self-hosted-environments-reference#runner-cli-flags), Claude Code reprend la session dans le mode de permission dans lequel elle se trouvait.
791 257
792<h3 id="review-changes">258<h3 id="review-changes">
793 Examiner les modifications259 Examiner les modifications
794</h3>260</h3>
795 261
796Chaque session affiche un indicateur de diff avec les lignes ajoutées et supprimées, comme `+42 -18`. Sélectionnez-le pour ouvrir la vue diff, laissez des commentaires en ligne sur des lignes spécifiques et envoyez-les à Claude avec votre message suivant. Consultez [Examiner et itérer](/docs/fr/web-quickstart#review-and-iterate) pour la procédure pas à pas complète incluant la création de PR. Pour que Claude surveille la PR pour les défaillances CI et les commentaires d'examen automatiquement, consultez [Correction automatique des demandes de tirage](#auto-fix-pull-requests).262Chaque session affiche un indicateur de diff avec les lignes ajoutées et supprimées, comme `+42 -18`. Sélectionnez-le pour ouvrir la vue diff, laisser des commentaires en ligne sur des lignes spécifiques et les envoyer à Claude avec votre prochain message.
263
264Claude Code calcule ces diffs, y compris les diffs par fichier affichés lors des modifications de Claude, à partir du contenu brut des blobs git, de sorte que les pilotes diff et les filtres `textconv` configurés dans le référentiel ne s'appliquent pas.
265
266Consultez [Examiner et itérer](/docs/fr/web-quickstart#review-and-iterate) pour la procédure complète incluant la création de PR. Pour que Claude surveille automatiquement la PR pour les défaillances CI et les commentaires d'examen, consultez [Correction automatique des demandes de tirage](#auto-fix-pull-requests).
797 267
798<h3 id="share-sessions">268<h3 id="share-sessions">
799 Partager les sessions269 Partager les sessions
802Pour partager une session, basculez sa visibilité selon les types de compte ci-dessous. Après cela, partagez le lien de session tel quel. Les destinataires voient l'état le plus récent lorsqu'ils ouvrent le lien, mais leur vue ne se met pas à jour en temps réel.272Pour partager une session, basculez sa visibilité selon les types de compte ci-dessous. Après cela, partagez le lien de session tel quel. Les destinataires voient l'état le plus récent lorsqu'ils ouvrent le lien, mais leur vue ne se met pas à jour en temps réel.
803 273
804<h4 id="share-from-an-enterprise-or-team-account">274<h4 id="share-from-an-enterprise-or-team-account">
805 Partage à partir d'un compte Enterprise ou Team275 Partager à partir d'un compte Enterprise ou Team
806</h4>276</h4>
807 277
808Pour les comptes Enterprise et Team, les deux options de visibilité sont **Private** et **Team**. La visibilité Team rend la session visible aux autres membres de votre organisation claude.ai. Les sessions [Claude dans Slack](/docs/fr/slack) sont automatiquement partagées avec la visibilité Team.278Pour les comptes Enterprise et Team, les deux options de visibilité sont **Privé** et **Équipe**. La visibilité Équipe rend la session visible aux autres membres de votre organisation claude.ai. Les sessions [Claude dans Slack](/docs/fr/slack) sont automatiquement partagées avec la visibilité Équipe.
809 279
810La vérification de l'accès au référentiel est activée par défaut, en fonction du compte GitHub connecté au compte du destinataire. Le nom d'affichage de votre compte est visible à tous les destinataires ayant accès.280La vérification de l'accès au référentiel est activée par défaut, en fonction du compte GitHub connecté au compte du destinataire. Le nom d'affichage de votre compte est visible à tous les destinataires ayant accès.
811 281
812<h4 id="share-from-a-max-or-pro-account">282<h4 id="share-from-a-max-or-pro-account">
813 Partage à partir d'un compte Max ou Pro283 Partager à partir d'un compte Max ou Pro
814</h4>284</h4>
815 285
816Pour les comptes Max et Pro, les deux options de visibilité sont **Private** et **Public**. La visibilité Public rend la session visible à tout utilisateur connecté à claude.ai.286Pour les comptes Max et Pro, les deux options de visibilité sont **Privé** et **Public**. La visibilité Public rend la session visible à tout utilisateur connecté à claude.ai.
817 287
818Vérifiez votre session pour le contenu sensible avant de la partager. Les sessions peuvent contenir du code et des identifiants provenant de référentiels GitHub privés. La vérification de l'accès au référentiel n'est pas activée par défaut.288Vérifiez votre session pour le contenu sensible avant de partager. Les sessions peuvent contenir du code et des identifiants provenant de référentiels GitHub privés. La vérification de l'accès au référentiel n'est pas activée par défaut.
819 289
820Pour exiger que les destinataires aient accès au référentiel, ou pour masquer votre nom des sessions partagées, allez à Paramètres > Claude Code > Paramètres de partage.290Pour exiger que les destinataires aient accès au référentiel, ou pour masquer votre nom des sessions partagées, accédez à [**Paramètres > Claude Code > Paramètres de partage**](https://claude.ai/settings/claude-code).
821 291
822<h3 id="archive-sessions">292<h3 id="archive-sessions">
823 Archiver les sessions293 Archiver les sessions
824</h3>294</h3>
825 295
826Vous pouvez archiver les sessions pour garder votre liste de sessions organisée. Les sessions archivées sont masquées de la liste de sessions par défaut mais peuvent être affichées en filtrant les sessions archivées.296Vous pouvez archiver les sessions pour garder votre liste de sessions organisée. Les sessions archivées sont masquées de la liste de sessions par défaut mais peuvent être visualisées en filtrant les sessions archivées.
827 297
828Pour archiver une session, survolez la session dans la barre latérale et sélectionnez l'icône d'archivage.298Pour archiver une session, survolez la session dans la barre latérale et sélectionnez l'icône d'archive.
829 299
830<h3 id="delete-sessions">300<h3 id="delete-sessions">
831 Supprimer les sessions301 Supprimer les sessions
834La suppression d'une session supprime définitivement la session et ses données. Cette action ne peut pas être annulée. Vous pouvez supprimer une session de deux façons :304La suppression d'une session supprime définitivement la session et ses données. Cette action ne peut pas être annulée. Vous pouvez supprimer une session de deux façons :
835 305
836* **À partir de la barre latérale** : filtrez les sessions archivées, puis survolez la session que vous souhaitez supprimer et sélectionnez l'icône de suppression306* **À partir de la barre latérale** : filtrez les sessions archivées, puis survolez la session que vous souhaitez supprimer et sélectionnez l'icône de suppression
837* **À partir du menu de session** : ouvrez une session, sélectionnez la liste déroulante à côté du titre de la session et sélectionnez **Supprimer**307* **À partir du menu de session** : ouvrez une session, sélectionnez la liste déroulante à côté du titre de la session, et sélectionnez **Supprimer**
838 308
839Vous serez invité à confirmer avant la suppression d'une session.309Vous serez invité à confirmer avant la suppression d'une session.
840 310
845Claude peut surveiller une demande de tirage et répondre automatiquement aux défaillances CI et aux commentaires d'examen. Claude s'abonne aux événements GitHub sur la PR, et lorsqu'une vérification échoue ou qu'un examinateur laisse un commentaire, Claude enquête et pousse une correction si elle est claire.315Claude peut surveiller une demande de tirage et répondre automatiquement aux défaillances CI et aux commentaires d'examen. Claude s'abonne aux événements GitHub sur la PR, et lorsqu'une vérification échoue ou qu'un examinateur laisse un commentaire, Claude enquête et pousse une correction si elle est claire.
846 316
847<Note>317<Note>
848 Auto-fix nécessite que l'application Claude GitHub soit installée sur votre référentiel. Si vous ne l'avez pas déjà fait, installez-la à partir de la [page de l'application GitHub](https://github.com/apps/claude) ou lorsque vous y êtes invité lors de la [configuration](/docs/fr/web-quickstart#connect-github-and-create-an-environment).318 Auto-fix nécessite que l'application Claude GitHub soit installée sur votre référentiel. Si vous ne l'avez pas déjà fait, installez-la à partir de la [page de l'application GitHub](https://github.com/apps/claude).
849</Note>319</Note>
850 320
851Il existe plusieurs façons d'activer auto-fix selon d'où provient la PR et quel appareil vous utilisez :321Il existe plusieurs façons d'activer auto-fix selon d'où provient la PR et quel appareil vous utilisez :
881 351
882Chaque session cloud est séparée de votre machine et des autres sessions par plusieurs couches :352Chaque session cloud est séparée de votre machine et des autres sessions par plusieurs couches :
883 353
884* **Machines virtuelles isolées** : chaque session s'exécute dans une VM isolée gérée par Anthropic354* **Machines virtuelles isolées** : chaque session s'exécute dans une VM isolée gérée par Anthropic. Les sessions que votre organisation achemine vers un [environnement auto-hébergé](/docs/fr/self-hosted-environments) s'exécutent sur votre propre infrastructure à la place, où l'isolation est la responsabilité de votre déploiement
885* **Contrôles d'accès réseau** : l'accès réseau est limité par défaut et peut être désactivé. Lors de l'exécution avec l'accès réseau désactivé, Claude Code peut toujours communiquer avec l'API Anthropic, ce qui peut permettre aux données de quitter la VM.355* **Contrôles d'accès réseau** : dans les environnements hébergés par Anthropic, l'accès réseau est limité par défaut et peut être désactivé. Dans un environnement auto-hébergé, vous restreignez la sortie de session à votre propre limite réseau. Lors de l'exécution avec l'accès réseau désactivé, Claude Code peut toujours communiquer avec l'API Anthropic, ce qui peut permettre aux données de quitter la VM.
886* **Protection des identifiants** : les identifiants sensibles tels que les identifiants git ou les clés de signature ne sont jamais à l'intérieur du sandbox avec Claude Code. L'authentification est gérée via un proxy sécurisé utilisant des identifiants limités.356* **Protection des identifiants** : dans les environnements hébergés par Anthropic, les identifiants git et les clés de signature restent en dehors du sandbox, et un proxy authentifie au nom de la session avec des identifiants limités. Dans un environnement auto-hébergé, votre déploiement fournit les identifiants git ; consultez [Configurer git](/docs/fr/self-hosted-environments-deploy#configure-git)
887* **Analyse sécurisée** : le code est analysé et modifié dans des VM isolées avant la création de PR357* **Identifiants API** : dans les environnements hébergés par Anthropic sur les plans Pro et Max, les clés que vous [ajoutez à un environnement cloud](/docs/fr/cloud-environments#add-api-credentials) restent en dehors du sandbox de la même manière, attachées aux demandes correspondantes après qu'elles quittent la session. Un environnement auto-hébergé n'a pas d'identifiants API, et les plans Team et Enterprise ne les ont pas encore
358* **Analyse sécurisée** : le code est analysé et modifié dans l'environnement isolé de la session avant la création de PR
888 359
889<h2 id="troubleshooting">360<h2 id="troubleshooting">
890 Dépannage361 Dépannage
896 Échec de la création de session367 Échec de la création de session
897</h3>368</h3>
898 369
899Si une nouvelle session ne démarre pas avec `Session creation failed` ou stagne à la mise en service, Claude Code n'a pas pu allouer un environnement cloud.370Si une nouvelle session ne démarre pas avec `Session creation failed` ou stagne à la mise en service, Claude Code n'a pas pu allouer une VM pour la session.
900 371
901* Vérifiez [status.claude.com](https://status.claude.com) pour les incidents de session cloud372* Vérifiez [status.claude.com](https://status.claude.com) pour les incidents de session cloud
902* Réessayez après une minute, car la capacité est mise en service à la demande373* Réessayez après une minute, car la capacité est mise en service à la demande
903* Confirmez que votre référentiel est accessible. Le compte GitHub qui se connecte doit avoir accès au référentiel sur GitHub, soit par l'autorisation de l'application Claude GitHub, soit par un jeton `gh` synchronisé via `/web-setup`. L'installation de l'application sur le référentiel n'est pas requise. Consultez [Options d'authentification GitHub](#github-authentication-options).374* Confirmez que votre référentiel est accessible. Le compte GitHub qui se connecte doit avoir accès au référentiel sur GitHub, soit par l'autorisation de l'application Claude GitHub, soit par un jeton `gh` synchronisé via `/web-setup`. L'installation de l'application sur le référentiel n'est pas requise. Consultez [Options d'authentification GitHub](#github-authentication-options).
904 375
376<h3 id="unable-to-get-organization-uuid">
377 Impossible d'obtenir l'UUID de l'organisation
378</h3>
379
380`claude --cloud` et `claude --teleport` nécessitent une connexion avec un compte claude.ai. Si vous vous authentifiez avec une clé API, ou si vos détails de compte stockés sont obsolètes, ces commandes échouent avec `Unable to get organization UUID` ou un message indiquant que l'authentification par clé API n'est pas suffisante. Avec l'authentification par clé API ou les détails de compte obsolètes, l'exécution de `claude --teleport` sans ID de session affiche `Error loading Claude Code sessions` dans le sélecteur de session au lieu de l'un ou l'autre message, et le même correctif s'applique.
381
382Exécutez `/login` pour vous connecter avec votre compte claude.ai, puis réessayez la commande. Si le message nomme votre fournisseur à la place, consultez le [tableau d'erreurs](#output-and-errors) : les sessions cloud ne sont pas disponibles via les fournisseurs tiers.
383
905<h3 id="remote-control-session-expired-or-access-denied">384<h3 id="remote-control-session-expired-or-access-denied">
906 Session Remote Control expirée ou accès refusé385 Session Remote Control expirée ou accès refusé
907</h3>386</h3>
910 389
911* Exécutez `/login` localement pour actualiser vos identifiants, puis reconnectez-vous390* Exécutez `/login` localement pour actualiser vos identifiants, puis reconnectez-vous
912* Confirmez que vous êtes connecté au même compte qui possède la session391* Confirmez que vous êtes connecté au même compte qui possède la session
913* Si vous voyez `Remote Control may not be available for this organization`, un propriétaire n'a pas activé les sessions cloud pour votre organisation392* Si vous voyez `Remote Control may not be available for this organization`, un Propriétaire n'a pas activé les sessions cloud pour votre organisation
914 393
915<h3 id="environment-expired">394<h3 id="environment-expired">
916 Environnement expiré395 Environnement expiré
917</h3>396</h3>
918 397
919Les sessions cloud s'arrêtent après une période d'inactivité et l'environnement sous-jacent est réclamé. À partir d'un terminal local, cela apparaît comme `Could not resume session ... its environment has expired. Creating a fresh session instead.` Sur le web, la session est marquée comme expirée dans la liste des sessions.398Les sessions cloud s'arrêtent après une période d'inactivité et la VM de la session est réclamée. Sur le web, la session est marquée comme expirée dans la liste des sessions.
920 399
921Rouvrez la session à partir de [claude.ai/code](https://claude.ai/code) pour mettre en service un environnement frais avec votre historique de conversation restauré.400Rouvrez la session à partir de [claude.ai/code](https://claude.ai/code) pour mettre en service une VM fraîche avec votre historique de conversation restauré. Le travail en arrière-plan qui était toujours en cours d'exécution lorsque la VM a été réclamée, comme les sous-agents et les commandes shell, n'est pas restauré.
922 401
923<h2 id="limitations">402<h2 id="limitations">
924 Limitations403 Limitations
929* **Limites de débit** : Claude Code sur le web partage les limites de débit avec tous les autres usages de Claude et Claude Code au sein de votre compte. L'exécution de plusieurs tâches en parallèle consomme proportionnellement plus de limites de débit. Il n'y a pas de frais de calcul séparé pour la VM cloud.408* **Limites de débit** : Claude Code sur le web partage les limites de débit avec tous les autres usages de Claude et Claude Code au sein de votre compte. L'exécution de plusieurs tâches en parallèle consomme proportionnellement plus de limites de débit. Il n'y a pas de frais de calcul séparé pour la VM cloud.
930* **Authentification du référentiel** : vous ne pouvez déplacer les sessions du web vers le local que lorsque vous êtes authentifié au même compte409* **Authentification du référentiel** : vous ne pouvez déplacer les sessions du web vers le local que lorsque vous êtes authentifié au même compte
931* **Restrictions de plateforme** : le clonage du référentiel et la création de demandes de tirage nécessitent GitHub. Les instances [GitHub Enterprise Server](/docs/fr/github-enterprise-server) auto-hébergées sont prises en charge pour les plans Team et Enterprise. GitLab, Bitbucket et les autres référentiels non-GitHub peuvent être envoyés aux sessions cloud en tant que [paquet local](#send-local-repositories-without-github), mais la session ne peut pas pousser les résultats vers le serveur distant410* **Restrictions de plateforme** : le clonage du référentiel et la création de demandes de tirage nécessitent GitHub. Les instances [GitHub Enterprise Server](/docs/fr/github-enterprise-server) auto-hébergées sont prises en charge pour les plans Team et Enterprise. GitLab, Bitbucket et les autres référentiels non-GitHub peuvent être envoyés aux sessions cloud en tant que [paquet local](#send-local-repositories-without-github), mais la session ne peut pas pousser les résultats vers le serveur distant
932* **Liste d'autorisation IP de l'organisation** : les sessions cloud appellent l'API Anthropic à partir de l'infrastructure gérée par Anthropic, pas de votre réseau. Si votre organisation a [l'autorisation IP](https://support.claude.com/fr/articles/13200993-restrict-access-to-claude-with-ip-allowlisting) activée, chaque session cloud échoue avec une erreur d'authentification. Il en va de même pour [Code Review](/docs/fr/code-review) et [Routines](/docs/fr/routines). Contactez [le support Anthropic](https://support.claude.com/) pour exempter les services hébergés par Anthropic de la liste d'autorisation IP de votre organisation.411* **Liste d'autorisation IP de l'organisation** : les sessions cloud appellent l'API Anthropic à partir de l'infrastructure gérée par Anthropic, pas de votre réseau, tandis que les sessions dans un [environnement auto-hébergé](/docs/fr/self-hosted-environments) l'appellent à partir de votre propre réseau. Si votre organisation a [l'autorisation IP](https://support.claude.com/en/articles/13200993-restrict-access-to-claude-with-ip-allowlisting) activée, chaque session cloud hébergée par Anthropic échoue avec une erreur d'authentification. Il en va de même pour [Code Review](/docs/fr/code-review) et pour les [routines](/docs/fr/routines) qui s'exécutent sur les environnements hébergés par Anthropic ; une routine acheminée vers un environnement auto-hébergé appelle l'API à partir de votre propre réseau. Contactez [le support Anthropic](https://support.claude.com/) pour exempter les services hébergés par Anthropic de la liste d'autorisation IP de votre organisation.
933 412
934<h2 id="related-resources">413<h2 id="related-resources">
935 Ressources connexes414 Ressources connexes
936</h2>415</h2>
937 416
938* [Ultraplan](/docs/fr/ultraplan) : rédigez un plan dans une session cloud et examinez-le dans votre navigateur417* [Environnements cloud](/docs/fr/cloud-environments) : configurez l'accès réseau, les variables d'environnement et les scripts de configuration pour les sessions cloud
939* [Ultrareview](/docs/fr/ultrareview) : exécutez un examen de code multi-agent approfondi dans un sandbox cloud418* [Ultrareview](/docs/fr/ultrareview) : exécutez un examen de code multi-agent approfondi dans un sandbox cloud
940* [Routines](/docs/fr/routines) : automatisez le travail selon un calendrier, via un appel API ou en réponse aux événements GitHub419* [Routines](/docs/fr/routines) : automatisez le travail selon un calendrier, via un appel API ou en réponse aux événements GitHub
941* [Configuration des hooks](/docs/fr/hooks) : exécutez les scripts aux événements du cycle de vie de la session420* [Configuration des hooks](/docs/fr/hooks) : exécutez les scripts aux événements du cycle de vie de la session
942* [Référence des paramètres](/docs/fr/settings) : toutes les options de configuration421* [Tous les paramètres](/docs/fr/settings-reference) : toutes les options de configuration
943* [Sécurité](/docs/fr/security) : garanties d'isolation et gestion des données422* [Sécurité](/docs/fr/security) : garanties d'isolation et gestion des données
944* [Utilisation des données](/docs/fr/data-usage) : ce qu'Anthropic conserve des sessions cloud423* [Utilisation des données](/docs/fr/data-usage) : ce qu'Anthropic conserve des sessions cloud
945* [Claude Tag](https://claude.com/docs/claude-tag/overview) : un @Claude géré par l'organisation dans Slack qui s'exécute sur le même environnement cloud424* [Claude Tag](https://claude.com/docs/claude-tag/overview) : un @Claude géré par l'organisation dans Slack qui s'exécute sur la même infrastructure cloud