Paramètres de Claude Code
Configurez Claude Code avec des paramètres globaux et au niveau du projet, ainsi que 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
lors de l’utilisation du REPL interactif.
Fichiers de paramètres
Le fichier settings.json
est notre mécanisme officiel pour configurer Claude
Code via des paramètres hiérarchiques :
- Les paramètres utilisateur sont définis dans
~/.claude/settings.json
et s’appliquent à tous les projets. - Les paramètres de projet sont sauvegardés dans le répertoire de votre projet :
.claude/settings.json
pour les paramètres qui sont versionnés dans le contrôle de source et partagés avec votre équipe.claude/settings.local.json
pour les paramètres qui ne sont pas versionnés, utiles pour les préférences personnelles et l’expérimentation. Claude Code configurera git pour ignorer.claude/settings.local.json
lorsqu’il est créé.
- Pour les déploiements d’entreprise de Claude Code, nous supportons également les paramètres de politique gérés par l’entreprise. Ceux-ci prennent la précédence sur les paramètres utilisateur et de projet. Les administrateurs système peuvent déployer des politiques vers
/Library/Application Support/ClaudeCode/managed-settings.json
sur macOS et/etc/claude-code/managed-settings.json
sur Linux et Windows via WSL.
Paramètres disponibles
settings.json
supporte un certain nombre d’options :
Clé | Description | Exemple |
---|---|---|
apiKeyHelper | Script personnalisé, à exécuter dans /bin/sh , pour générer une valeur d’authentification. Cette valeur sera généralement envoyée comme en-têtes X-Api-Key , Authorization: Bearer , et Proxy-Authorization: Bearer pour les requêtes de modèle | /bin/generate_temp_api_key.sh |
cleanupPeriodDays | Combien de temps conserver localement les transcriptions de chat (par défaut : 30 jours) | 20 |
env | Variables d’environnement qui seront appliquées à chaque session | {"FOO": "bar"} |
includeCoAuthoredBy | S’il faut inclure la ligne co-authored-by Claude dans les commits git et les pull requests (par défaut : true ) | false |
permissions | Voir le tableau ci-dessous pour la structure des permissions. |
Paramètres de permissions
Clés | Description | Exemple |
---|---|---|
allow | Tableau de règles de permission pour autoriser l’utilisation d’outils | [ "Bash(git diff:*)" ] |
deny | Tableau de règles de permission pour refuser l’utilisation d’outils | [ "WebFetch", "Bash(curl:*)" ] |
additionalDirectories | Répertoires de travail supplémentaires auxquels Claude a accès | [ "../docs/" ] |
defaultMode | Mode de permission par défaut lors de l’ouverture de Claude Code | "allowEdits" |
disableBypassPermissionsMode | Définir à "disable" pour empêcher l’activation du mode bypassPermissions . Voir paramètres de politique gérés | "disable" |
Précédence des paramètres
Les paramètres sont appliqués dans l’ordre de précédence :
- Politiques d’entreprise (voir documentation IAM)
- Arguments de ligne de commande
- Paramètres de projet locaux
- Paramètres de projet partagés
- Paramètres utilisateur
Variables d’environnement
Claude Code supporte les variables d’environnement suivantes pour contrôler son comportement :
Toutes les variables d’environnement peuvent également être configurées dans settings.json
. Ceci est utile comme moyen de définir automatiquement les 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 envoyée comme en-tête X-Api-Key , typiquement pour le SDK Claude (pour l’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 avec Bearer ) |
ANTHROPIC_CUSTOM_HEADERS | En-têtes personnalisés que vous voulez ajouter à la requête (au format Name: Value ) |
ANTHROPIC_MODEL | Nom du modèle personnalisé à utiliser (voir Configuration de 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 | Timeout par défaut pour les commandes bash de longue durée |
BASH_MAX_TIMEOUT_MS | Timeout 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 soient tronquées au milieu |
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR | Retourner au répertoire de travail original après chaque commande Bash |
CLAUDE_CODE_API_KEY_HELPER_TTL_MS | Intervalle en millisecondes auquel les identifiants doivent être rafraîchis (lors de l’utilisation de apiKeyHelper ) |
CLAUDE_CODE_MAX_OUTPUT_TOKENS | Définir le nombre maximum de tokens de sortie pour la plupart des requêtes |
CLAUDE_CODE_USE_BEDROCK | Utiliser Bedrock (voir Bedrock & Vertex) |
CLAUDE_CODE_USE_VERTEX | Utiliser Vertex (voir Bedrock & Vertex) |
CLAUDE_CODE_SKIP_BEDROCK_AUTH | Ignorer l’authentification AWS pour Bedrock (par exemple lors de l’utilisation d’une passerelle LLM) |
CLAUDE_CODE_SKIP_VERTEX_AUTH | Ignorer l’authentification Google pour Vertex (par exemple lors de l’utilisation d’une passerelle LLM) |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | Équivalent de définir DISABLE_AUTOUPDATER , DISABLE_BUG_COMMAND , DISABLE_ERROR_REPORTING , et DISABLE_TELEMETRY |
DISABLE_AUTOUPDATER | Définir à 1 pour désactiver le 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 se désinscrire du rapport d’erreur Sentry |
DISABLE_NON_ESSENTIAL_MODEL_CALLS | Définir à 1 pour désactiver les appels de modèle pour les chemins non critiques comme le texte de saveur |
DISABLE_TELEMETRY | Définir à 1 pour se désinscrire de la télémétrie Statsig (notez que les événements Statsig n’incluent pas les données utilisateur comme le code, les chemins de fichiers, ou les 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 | Timeout en millisecondes pour le démarrage du serveur MCP |
MCP_TOOL_TIMEOUT | Timeout en millisecondes pour l’exécution d’outil MCP |
MAX_MCP_OUTPUT_TOKENS | Nombre maximum de tokens autorisés dans les réponses d’outil MCP (par défaut : 25000) |
Options de configuration
Nous sommes en train de migrer la configuration globale vers settings.json
.
claude config
sera déprécié en faveur 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 <key>
- Changer un paramètre :
claude config set <key> <value>
- Pousser vers un paramètre (pour les listes) :
claude config add <key> <value>
- Supprimer d’un paramètre (pour les listes) :
claude config remove <key> <value>
Par défaut config
change votre configuration de projet. Pour gérer votre configuration globale, utilisez le flag --global
(ou -g
).
Configuration globale
Pour définir une configuration globale, utilisez claude config set -g <key> <value>
:
Clé | Description | Exemple |
---|---|---|
autoUpdates | S’il faut activer les mises à jour automatiques (par défaut : true ) | false |
preferredNotifChannel | Où vous voulez 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 | S’il faut afficher les sorties complètes de bash et de commande (par défaut : false ) | true |
Outils disponibles pour Claude
Claude Code a accès à un ensemble d’outils puissants qui l’aident à comprendre et modifier votre base de code :
Outil | Description | Permission Requise |
---|---|---|
Agent | Exécute un sous-agent pour gérer des tâches complexes à plusieurs étapes | Non |
Bash | Exécute des commandes shell dans votre environnement | Oui |
Edit | Effectue des modifications ciblées sur des fichiers spécifiques | Oui |
Glob | Trouve des fichiers basés sur la correspondance de motifs | Non |
Grep | Recherche des motifs dans le contenu des fichiers | Non |
LS | Liste les fichiers et répertoires | Non |
MultiEdit | Effectue plusieurs modifications sur un seul fichier de manière atomique | Oui |
NotebookEdit | Modifie les cellules de notebook Jupyter | Oui |
NotebookRead | Lit et affiche le contenu des notebooks Jupyter | Non |
Read | Lit le contenu des fichiers | Non |
TodoRead | Lit la liste des tâches de la session actuelle | Non |
TodoWrite | Crée et gère des listes de tâches structurées | Non |
WebFetch | Récupère le contenu d’une URL spécifiée | Oui |
WebSearch | Effectue des recherches web avec filtrage de domaine | Oui |
Write | Crée ou écrase des fichiers | Oui |
Les règles de permission peuvent être configurées en utilisant /allowed-tools
ou dans paramètres de permission.
Étendre les outils avec des hooks
Vous pouvez exécuter des commandes personnalisées avant ou après l’exécution de tout outil en utilisant les hooks Claude Code.
Par exemple, vous pourriez automatiquement exécuter un formateur Python après que Claude modifie des fichiers Python, ou empêcher les modifications aux fichiers de configuration de production en bloquant les opérations Write vers certains chemins.
Voir aussi
- Gestion d’Identité et d’Accès - Apprenez sur le système de permissions de Claude Code
- IAM et contrôle d’accès - Gestion des politiques d’entreprise
- Dépannage - Solutions pour les problèmes de configuration courants