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 votre répertoire de 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 d’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 :
- macOS :
/Library/Application Support/ClaudeCode/managed-settings.json
- Linux et WSL :
/etc/claude-code/managed-settings.json
- Windows :
C:\ProgramData\ClaudeCode\managed-settings.json
- macOS :
Paramètres disponibles
settings.json
supporte plusieurs options :
Clé | Description | Exemple |
---|---|---|
apiKeyHelper | Script personnalisé, à exécuter dans /bin/sh , pour générer une valeur d’authentification. Cette valeur sera envoyée comme en-têtes X-Api-Key et 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 basées sur la date de dernière activité (par défaut : 30 jours) | 20 |
env | Variables d’environnement qui seront appliquées à chaque session | {"FOO": "bar"} |
includeCoAuthoredBy | S’il faut inclure la signature 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. | |
hooks | Configurez des commandes personnalisées à exécuter avant ou après les exécutions d’outils. Voir documentation des hooks | {"PreToolUse": {"Bash": "echo 'Running command...'"}} |
model | Remplacer le modèle par défaut à utiliser pour Claude Code | "claude-3-5-sonnet-20241022" |
statusLine | Configurez une ligne de statut personnalisée pour afficher le contexte. Voir documentation statusLine | {"type": "command", "command": "~/.claude/statusline.sh"} |
forceLoginMethod | Utilisez claudeai pour restreindre la connexion aux comptes Claude.ai, console pour restreindre la connexion aux comptes Anthropic Console (facturation d’utilisation API) | claudeai |
enableAllProjectMcpServers | Approuver automatiquement tous les serveurs MCP définis dans les fichiers .mcp.json de projet | true |
enabledMcpjsonServers | Liste des serveurs MCP spécifiques des fichiers .mcp.json à approuver | ["memory", "github"] |
disabledMcpjsonServers | Liste des serveurs MCP spécifiques des fichiers .mcp.json à rejeter | ["filesystem"] |
awsAuthRefresh | Script personnalisé qui modifie le répertoire .aws (voir configuration avancée des identifiants) | aws sso login --profile myprofile |
awsCredentialExport | Script personnalisé qui génère du JSON avec les identifiants AWS (voir configuration avancée des identifiants) | /bin/generate_aws_grant.sh |
Paramètres de permissions
Clés | Description | Exemple |
---|---|---|
allow | Tableau de règles de permission pour autoriser l’utilisation d’outils | [ "Bash(git diff:*)" ] |
ask | Tableau de règles de permission pour demander confirmation lors de l’utilisation d’outils. | [ "Bash(git push:*)" ] |
deny | Tableau de règles de permission pour refuser l’utilisation d’outils. Utilisez ceci pour également exclure les fichiers sensibles de l’accès Claude Code. | [ "WebFetch", "Bash(curl:*)", "Read(./.env)", "Read(./secrets/**)" ] |
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 | "acceptEdits" |
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 par ordre de précédence (du plus élevé au plus bas) :
-
Politiques gérées d’entreprise (
managed-settings.json
)- Déployées par IT/DevOps
- Ne peuvent pas être remplacées
-
Arguments de ligne de commande
- Remplacements temporaires pour une session spécifique
-
Paramètres de projet locaux (
.claude/settings.local.json
)- Paramètres personnels spécifiques au projet
-
Paramètres de projet partagés (
.claude/settings.json
)- Paramètres de projet partagés par l’équipe dans le contrôle de source
-
Paramètres utilisateur (
~/.claude/settings.json
)- Paramètres globaux personnels
Cette hiérarchie garantit que les politiques de sécurité d’entreprise sont toujours appliquées tout en permettant aux équipes et aux individus de personnaliser leur expérience.
Points clés sur le système de configuration
- Fichiers de mémoire (CLAUDE.md) : Contiennent des instructions et du contexte que Claude charge au démarrage
- Fichiers de paramètres (JSON) : Configurent les permissions, variables d’environnement et comportement des outils
- Commandes slash : Commandes personnalisées qui peuvent être invoquées pendant une session avec
/nom-commande
- Serveurs MCP : Étendent Claude Code avec des outils et intégrations supplémentaires
- Précédence : Les configurations de niveau supérieur (Entreprise) remplacent celles de niveau inférieur (Utilisateur/Projet)
- Héritage : Les paramètres sont fusionnés, avec des paramètres plus spécifiques ajoutant ou remplaçant les plus généraux
Disponibilité du prompt système
Contrairement à claude.ai, nous ne publions pas le prompt système interne de Claude Code sur ce site web. Utilisez les fichiers CLAUDE.md ou --append-system-prompt
pour ajouter des instructions personnalisées au comportement de Claude Code.
Exclusion de fichiers sensibles
Pour empêcher Claude Code d’accéder aux fichiers contenant des informations sensibles (par exemple, clés API, secrets, fichiers d’environnement), utilisez le paramètre permissions.deny
dans votre fichier .claude/settings.json
:
Ceci remplace la configuration ignorePatterns
dépréciée. Les fichiers correspondant à ces motifs seront complètement invisibles à Claude Code, empêchant toute exposition accidentelle de données sensibles.
Configuration de sous-agents
Claude Code supporte des sous-agents IA personnalisés qui peuvent être configurés aux niveaux utilisateur et projet. Ces sous-agents sont stockés comme fichiers Markdown avec frontmatter YAML :
- Sous-agents utilisateur :
~/.claude/agents/
- Disponibles dans tous vos projets - Sous-agents de projet :
.claude/agents/
- Spécifiques à votre projet et peuvent être partagés avec votre équipe
Les fichiers de sous-agents définissent des assistants IA spécialisés avec des prompts personnalisés et des permissions d’outils. Apprenez-en plus sur la création et l’utilisation de sous-agents dans la documentation des sous-agents.
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 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 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 l’en-tête 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 d’arrière-plan |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION | Remplacer la région AWS pour le modèle petit/rapide lors de l’utilisation de Bedrock |
AWS_BEARER_TOKEN_BEDROCK | Clé API Bedrock pour l’authentification (voir Clés API Bedrock) |
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 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 actualisés (lors de l’utilisation d’apiKeyHelper ) |
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL | Ignorer l’auto-installation des extensions IDE |
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 |
CLAUDE_CODE_USE_VERTEX | Utiliser 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 |
CLAUDE_CODE_DISABLE_TERMINAL_TITLE | Définir à 1 pour désactiver les mises à jour automatiques du titre du terminal basées sur le contexte de conversation |
DISABLE_AUTOUPDATER | Définir à 1 pour désactiver les mises à jour automatiques. Ceci prend la précédence sur le paramètre de configuration autoUpdates . |
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’erreurs 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 de 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 | 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 d’outils MCP |
MAX_MCP_OUTPUT_TOKENS | Nombre maximum de tokens autorisés dans les réponses d’outils MCP (par défaut : 25000) |
USE_BUILTIN_RIPGREP | Définir à 0 pour utiliser rg installé sur le système au lieu de rg inclus avec Claude Code |
VERTEX_REGION_CLAUDE_3_5_HAIKU | Remplacer la région pour Claude 3.5 Haiku lors de l’utilisation de Vertex AI |
VERTEX_REGION_CLAUDE_3_5_SONNET | Remplacer la région pour Claude Sonnet 3.5 lors de l’utilisation de Vertex AI |
VERTEX_REGION_CLAUDE_3_7_SONNET | Remplacer la région pour Claude 3.7 Sonnet lors de l’utilisation de Vertex AI |
VERTEX_REGION_CLAUDE_4_0_OPUS | Remplacer la région pour Claude 4.0 Opus lors de l’utilisation de Vertex AI |
VERTEX_REGION_CLAUDE_4_0_SONNET | Remplacer la région pour Claude 4.0 Sonnet lors de l’utilisation de Vertex AI |
VERTEX_REGION_CLAUDE_4_1_OPUS | Remplacer la région pour Claude 4.1 Opus lors de l’utilisation de Vertex AI |
Options de configuration
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 drapeau --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 ). Lorsqu’activé, Claude Code télécharge et installe automatiquement les mises à jour en arrière-plan. Les mises à jour sont appliquées lorsque vous redémarrez Claude Code. | 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 commandes (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 |
---|---|---|
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 |
Task | Exécute un sous-agent pour gérer des tâches complexes à plusieurs étapes | 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 remplace des fichiers | Oui |
Les règles de permission peuvent être configurées en utilisant /allowed-tools
ou dans paramètres de permission.
Extension des 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