Paramètres de Claude Code
Apprenez à configurer Claude Code avec des paramètres globaux et au niveau du projet, des thèmes et des variables d’environnement.
Claude Code offre une variété de paramètres pour configurer son comportement selon vos
besoins. Vous pouvez configurer Claude Code en exécutant la commande /config
lorsque vous utilisez
le REPL interactif.
Fichiers de paramètres
Le nouveau format de fichier settings.json
est notre mécanisme officiel pour configurer Claude
Code à travers des paramètres hiérarchiques :
- Paramètres utilisateur sont définis dans
~/.claude/settings.json
et s’appliquent à tous les projets. - Paramètres de projet sont enregistrés dans votre répertoire de projet sous
.claude/settings.json
pour les paramètres partagés, et.claude/settings.local.json
pour les paramètres de projet locaux. Claude Code configurera git pour ignorer.claude/settings.local.json
lorsqu’il est créé. - Pour les déploiements d’entreprise de Claude Code, nous prenons également en charge les paramètres
de politique gérée par l’entreprise. Ceux-ci ont priorité sur les paramètres utilisateur et de projet.
Les administrateurs système peuvent déployer des politiques vers
/Library/Application Support/ClaudeCode/policies.json
sur macOS et/etc/claude-code/policies.json
sur Linux et Windows via WSL.
Paramètres disponibles
settings.json
prend en charge plusieurs options :
Clé | Description | Exemple |
---|---|---|
apiKeyHelper | Script personnalisé pour générer une clé API Anthropic | /bin/generate_temp_api_key.sh |
cleanupPeriodDays | Durée de conservation locale des transcriptions de chat (par défaut : 30 jours) | 20 |
env | Variables d’environnement qui seront appliquées à chaque session | {"FOO": "bar"} |
includeCoAuthoredBy | Indique s’il faut inclure la mention co-authored-by Claude dans les commits git et les pull requests (par défaut : true ) | false |
permissions | Les clés allow et deny sont une liste de règles de permission | {"allow": [ "Bash(npm run lint)" ]} |
Priorité des paramètres
Les paramètres sont appliqués par ordre de priorité :
- Politiques d’entreprise
- Arguments de ligne de commande
- Paramètres de projet locaux
- Paramètres de projet partagés
- Paramètres utilisateur
Permissions
Vous pouvez consulter et gérer les permissions d’outils de Claude Code avec /permissions
. Cette interface
liste toutes les règles de permission et le fichier settings.json dont elles proviennent.
- Les règles Allow permettront à Claude Code d’utiliser l’outil spécifié sans approbation manuelle supplémentaire.
- Les règles Deny empêcheront Claude Code d’utiliser l’outil spécifié. Les règles Deny ont priorité sur les règles Allow.
Les règles de permission utilisent le format : Outil(spécificateur-optionnel)
Une règle qui est simplement le nom de l’outil correspond à toute utilisation de cet outil.
Par exemple, ajouter Bash
à la liste des règles d’autorisation permettrait à Claude Code d’utiliser
l’outil Bash sans nécessiter l’approbation de l’utilisateur. Consultez la liste des
outils disponibles pour Claude.
Règles de permission spécifiques aux outils
Certains outils utilisent le spécificateur optionnel pour des contrôles de permission plus précis.
Par exemple, une règle d’autorisation avec Bash(git diff:*)
autoriserait les commandes Bash
qui commencent par git diff
. Les outils suivants prennent en charge les règles de permission avec des spécificateurs :
Bash
Bash(npm run build)
Correspond exactement à la commande Bashnpm run build
Bash(npm run test:*)
Correspond aux commandes Bash commençant parnpm run test
.
Claude Code est conscient des opérateurs de shell (comme &&
), donc une règle de correspondance de préfixe
comme Bash(safe-cmd:*)
ne lui donnera pas la permission d’exécuter la commande safe-cmd && other-cmd
Read & Edit
Les règles Edit
s’appliquent à tous les outils intégrés qui modifient des fichiers.
Claude fera de son mieux pour appliquer les règles Read
à
tous les outils intégrés qui lisent des fichiers comme Grep, Glob et LS.
Les règles Read & Edit suivent toutes deux la
spécification gitignore. Les modèles sont
résolus par rapport au répertoire contenant .claude/settings.json
. Pour
référencer un chemin absolu, utilisez //
. Pour un chemin relatif à votre répertoire
personnel, utilisez ~/
.
Edit(docs/**)
Correspond aux modifications de fichiers dans le répertoiredocs
de votre projetRead(~/.zshrc)
Correspond aux lectures de votre fichier~/.zshrc
Edit(//tmp/scratch.txt)
Correspond aux modifications de/tmp/scratch.txt
WebFetch
WebFetch(domain:example.com)
Correspond aux requêtes fetch vers example.com
MCP
mcp__puppeteer
Correspond à tout outil fourni par le serveurpuppeteer
(nom configuré dans Claude Code)mcp__puppeteer__puppeteer_navigate
Correspond à l’outilpuppeteer_navigate
fourni par le serveurpuppeteer
Options de permission pour la mise à jour automatique
Lorsque Claude Code détecte qu’il n’a pas suffisamment de permissions pour écrire dans votre répertoire npm global (requis pour les mises à jour automatiques), vous verrez un avertissement qui pointe vers cette page de documentation. Pour des solutions détaillées aux problèmes de mise à jour automatique, consultez le guide de dépannage.
Recommandé : Créer un nouveau préfixe npm accessible en écriture par l’utilisateur
Pourquoi nous recommandons cette option :
- Évite de modifier les permissions des répertoires système
- Crée un emplacement propre et dédié pour vos packages npm globaux
- Suit les meilleures pratiques de sécurité
Comme Claude Code est en développement actif, nous recommandons de configurer les mises à jour automatiques en utilisant l’option recommandée ci-dessus.
Désactiver la mise à jour automatique
Si vous préférez désactiver la mise à jour automatique au lieu de corriger les permissions, vous pouvez
définir la variable d’environnement DISABLE_AUTOUPDATER
à 1
Optimisez votre configuration de terminal
Claude Code fonctionne mieux lorsque votre terminal est correctement configuré. Suivez ces directives pour optimiser votre expérience.
Shells pris en charge :
- Bash
- Zsh
- Fish
Thèmes et apparence
Claude ne peut pas contrôler le thème de votre terminal. Cela est géré par votre
application de terminal. Vous pouvez faire correspondre le thème de Claude Code à votre terminal pendant
l’intégration ou à tout moment via la commande /config
Sauts de ligne
Vous avez plusieurs options pour entrer des sauts de ligne dans Claude Code :
- Échappement rapide : Tapez
\
suivi de Entrée pour créer une nouvelle ligne - Raccourci clavier : Appuyez sur Option+Entrée (Meta+Entrée) avec une configuration appropriée
Pour configurer Option+Entrée dans votre terminal :
Pour Mac Terminal.app :
- Ouvrez Paramètres → Profils → Clavier
- Cochez “Utiliser Option comme touche Meta”
Pour iTerm2 et le terminal VSCode :
- Ouvrez Paramètres → Profils → Touches
- Sous Général, définissez la touche Option gauche/droite sur “Esc+”
Conseil pour les utilisateurs d’iTerm2 et VSCode : Exécutez /terminal-setup
dans Claude Code pour
configurer automatiquement Shift+Entrée comme alternative plus intuitive.
Configuration des notifications
Ne manquez jamais le moment où Claude termine une tâche avec une configuration de notification appropriée :
Notifications sonores du terminal
Activez les alertes sonores lorsque les tâches sont terminées :
Pour les utilisateurs macOS : N’oubliez pas d’activer les permissions de notification dans Paramètres Système → Notifications → [Votre application de terminal].
Notifications système iTerm 2
Pour les alertes iTerm 2 lorsque les tâches sont terminées :
- Ouvrez les Préférences d’iTerm 2
- Naviguez vers Profils → Terminal
- Activez “Silence bell” et Filter Alerts → “Send escape sequence-generated alerts”
- Définissez votre délai de notification préféré
Notez que ces notifications sont spécifiques à iTerm 2 et ne sont pas disponibles dans le Terminal macOS par défaut.
Gestion des entrées volumineuses
Lorsque vous travaillez avec du code étendu ou de longues instructions :
- Évitez le collage direct : Claude Code peut avoir du mal avec le contenu collé très long
- Utilisez des flux de travail basés sur des fichiers : Écrivez du contenu dans un fichier et demandez à Claude de le lire
- Soyez conscient des limitations de VS Code : Le terminal VS Code est particulièrement enclin à tronquer les collages longs
Mode Vim
Claude Code prend en charge un sous-ensemble de raccourcis Vim qui peuvent être activés avec /vim
ou configurés via /config
.
Le sous-ensemble pris en charge comprend :
- Changement de mode :
Esc
(vers NORMAL),i
/I
,a
/A
,o
/O
(vers INSERT) - Navigation :
h
/j
/k
/l
,w
/e
/b
,0
/$
/^
,gg
/G
- Édition :
x
,dw
/de
/db
/dd
/D
,cw
/ce
/cb
/cc
/C
,.
(répéter)
Variables d’environnement
Claude Code prend en charge les variables d’environnement suivantes pour contrôler son comportement :
Toutes les variables d’environnement peuvent également être configurées dans
settings.json
. C’est
utile comme moyen de définir automatiquement des variables d’environnement pour chaque session,
ou pour déployer un ensemble de variables d’environnement pour toute votre équipe ou
organisation.
Variable | Objectif |
---|---|
ANTHROPIC_API_KEY | Clé API, uniquement lors de l’utilisation du SDK Claude (pour une utilisation interactive, exécutez /login ) |
ANTHROPIC_AUTH_TOKEN | Valeur personnalisée pour les en-têtes Authorization et Proxy-Authorization (la valeur que vous définissez ici sera préfixée par Bearer ) |
ANTHROPIC_CUSTOM_HEADERS | En-têtes personnalisés que vous souhaitez ajouter à la requête (au format Nom: Valeur ) |
ANTHROPIC_MODEL | Nom du modèle personnalisé à utiliser (voir Configuration du modèle) |
ANTHROPIC_SMALL_FAST_MODEL | Nom du modèle de classe Haiku pour les tâches en arrière-plan |
BASH_DEFAULT_TIMEOUT_MS | Délai d’attente par défaut pour les commandes bash de longue durée |
BASH_MAX_TIMEOUT_MS | Délai d’attente maximum que le modèle peut définir pour les commandes bash de longue durée |
BASH_MAX_OUTPUT_LENGTH | Nombre maximum de caractères dans les sorties bash avant qu’elles ne soient tronquées au milieu |
CLAUDE_CODE_API_KEY_HELPER_TTL_MS | Intervalle auquel les identifiants doivent être actualisés (lors de l’utilisation de apiKeyHelper ) |
CLAUDE_CODE_USE_BEDROCK | Utiliser Bedrock (voir Bedrock & Vertex) |
CLAUDE_CODE_USE_VERTEX | Utiliser Vertex (voir Bedrock & Vertex) |
CLAUDE_CODE_SKIP_VERTEX_AUTH | Ignorer l’authentification Google pour Vertex (par ex. lors de l’utilisation d’un proxy) |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | Équivalent à définir DISABLE_AUTOUPDATER , DISABLE_BUG_COMMAND , DISABLE_ERROR_REPORTING , et DISABLE_TELEMETRY |
DISABLE_AUTOUPDATER | Définir à 1 pour désactiver la mise à jour automatique |
DISABLE_BUG_COMMAND | Définir à 1 pour désactiver la commande /bug |
DISABLE_COST_WARNINGS | Définir à 1 pour désactiver les messages d’avertissement de coût |
DISABLE_ERROR_REPORTING | Définir à 1 pour désactiver le signalement d’erreurs Sentry |
DISABLE_TELEMETRY | Définir à 1 pour désactiver la télémétrie Statsig (notez que les événements Statsig n’incluent pas de données utilisateur comme du code, des chemins de fichiers ou des commandes bash) |
HTTP_PROXY | Spécifier le serveur proxy HTTP pour les connexions réseau |
HTTPS_PROXY | Spécifier le serveur proxy HTTPS pour les connexions réseau |
MAX_THINKING_TOKENS | Forcer un budget de réflexion pour le modèle |
MCP_TIMEOUT | Délai d’attente en millisecondes pour le démarrage du serveur MCP |
MCP_TOOL_TIMEOUT | Délai d’attente en millisecondes pour l’exécution de l’outil MCP |
Options de configuration
Nous sommes en train de migrer la configuration globale vers settings.json
.
claude config
sera déprécié au profit de settings.json
Pour gérer vos configurations, utilisez les commandes suivantes :
- Lister les paramètres :
claude config list
- Voir un paramètre :
claude config get <clé>
- Modifier un paramètre :
claude config set <clé> <valeur>
- Ajouter à un paramètre (pour les listes) :
claude config add <clé> <valeur>
- Supprimer d’un paramètre (pour les listes) :
claude config remove <clé> <valeur>
Par défaut, config
modifie votre configuration de projet. Pour gérer votre configuration
globale, utilisez le drapeau --global
(ou -g
).
Configuration globale
Pour définir une configuration globale, utilisez claude config set -g <clé> <valeur>
:
Clé | Description | Exemple |
---|---|---|
autoUpdaterStatus | Activer ou désactiver la mise à jour automatique (par défaut : enabled ) | disabled |
preferredNotifChannel | Où vous souhaitez recevoir les notifications (par défaut : iterm2 ) | iterm2 , iterm2_with_bell , terminal_bell , ou notifications_disabled |
theme | Thème de couleur | dark , light , light-daltonized , ou dark-daltonized |
verbose | Indique s’il faut afficher les sorties bash et de commande complètes (par défaut : false ) | true |