/config lors de l’utilisation du REPL interactif, qui ouvre une interface Paramètres avec onglets où vous pouvez afficher les informations d’état et modifier les options de configuration.
Fichiers de paramètres
Le fichiersettings.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.jsonet s’appliquent à tous les projets. - Les paramètres de projet sont enregistrés dans votre répertoire de projet :
.claude/settings.jsonpour les paramètres qui sont vérifiés dans le contrôle de source et partagés avec votre équipe.claude/settings.local.jsonpour les paramètres qui ne sont pas vérifiés, utiles pour les préférences personnelles et l’expérimentation. Claude Code configurera git pour ignorer.claude/settings.local.jsonlors de sa création.
- Pour les déploiements d’entreprise de Claude Code, nous supportons également les paramètres de politique gérée par l’entreprise. Ceux-ci ont la priorité 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 :
- Les déploiements d’entreprise peuvent également configurer des serveurs MCP gérés qui remplacent les serveurs configurés par l’utilisateur. Voir Configuration MCP d’entreprise :
- macOS :
/Library/Application Support/ClaudeCode/managed-mcp.json - Linux et WSL :
/etc/claude-code/managed-mcp.json - Windows :
C:\ProgramData\ClaudeCode\managed-mcp.json
- macOS :
Exemple settings.json
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 envoyée comme en-têtes X-Api-Key et Authorization: Bearer pour les demandes de modèle | /bin/generate_temp_api_key.sh |
cleanupPeriodDays | Durée de conservation locale des transcriptions de chat en fonction de 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 ligne de signature co-authored-by Claude dans les commits git et les demandes de tirage (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...'"}} |
disableAllHooks | Désactiver tous les hooks | true |
model | Remplacer le modèle par défaut à utiliser pour Claude Code | "claude-sonnet-4-5-20250929" |
statusLine | Configurez une ligne d’état personnalisée pour afficher le contexte. Voir documentation statusLine | {"type": "command", "command": "~/.claude/statusline.sh"} |
outputStyle | Configurez un style de sortie pour ajuster l’invite système. Voir documentation des styles de sortie | "Explanatory" |
forceLoginMethod | Utilisez claudeai pour restreindre la connexion aux comptes Claude.ai, console pour restreindre la connexion aux comptes Claude Console (facturation d’utilisation d’API) | claudeai |
forceLoginOrgUUID | Spécifiez l’UUID d’une organisation pour la sélectionner automatiquement lors de la connexion, en contournant l’étape de sélection d’organisation. Nécessite que forceLoginMethod soit défini | "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" |
enableAllProjectMcpServers | Approuver automatiquement tous les serveurs MCP définis dans les fichiers .mcp.json du 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"] |
useEnterpriseMcpConfigOnly | Lorsqu’il est défini dans managed-settings.json, restreint les serveurs MCP à ceux définis uniquement dans managed-mcp.json. Voir Configuration MCP d’entreprise | true |
allowedMcpServers | Lorsqu’il est défini dans managed-settings.json, liste blanche des serveurs MCP que les utilisateurs peuvent configurer. Non défini = pas de restrictions, tableau vide = verrouillage. S’applique à tous les domaines. La liste noire a la priorité. Voir Configuration MCP d’entreprise | [{ "serverName": "github" }] |
deniedMcpServers | Lorsqu’il est défini dans managed-settings.json, liste noire des serveurs MCP explicitement bloqués. S’applique à tous les domaines, y compris les serveurs d’entreprise. La liste noire a la priorité sur la liste blanche. Voir Configuration MCP d’entreprise | [{ "serverName": "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 permission
| Clés | Description | Exemple |
|---|---|---|
allow | Tableau de règles de permission pour autoriser l’utilisation d’outils. Remarque : Les règles Bash utilisent la correspondance de préfixe, pas regex | [ "Bash(git diff:*)" ] |
ask | Tableau de règles de permission pour demander une 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 de Claude Code. Remarque : Les modèles Bash sont des correspondances de préfixe et peuvent être contournés (voir Limitations de permission Bash) | [ "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 sur "disable" pour empêcher l’activation du mode bypassPermissions. Cela désactive l’indicateur de ligne de commande --dangerously-skip-permissions. Voir paramètres de politique gérée | "disable" |
Paramètres de sandbox
Configurez le comportement avancé du sandboxing. Le sandboxing isole les commandes bash de votre système de fichiers et de votre réseau. Voir Sandboxing pour plus de détails. Les restrictions du système de fichiers et du réseau sont configurées via les règles de permission Read, Edit et WebFetch, pas via ces paramètres de sandbox.| Clés | Description | Exemple |
|---|---|---|
enabled | Activer le sandboxing bash (macOS/Linux uniquement). Par défaut : false | true |
autoAllowBashIfSandboxed | Approuver automatiquement les commandes bash lorsqu’elles sont sandboxées. Par défaut : true | true |
excludedCommands | Commandes qui doivent s’exécuter en dehors du sandbox | ["git", "docker"] |
network.allowUnixSockets | Chemins de socket Unix accessibles dans le sandbox (pour les agents SSH, etc.) | ["~/.ssh/agent-socket"] |
network.allowLocalBinding | Autoriser la liaison aux ports localhost (MacOS uniquement). Par défaut : false | true |
network.httpProxyPort | Port du proxy HTTP utilisé si vous souhaitez apporter votre propre proxy. S’il n’est pas spécifié, Claude exécutera son propre proxy. | 8080 |
network.socksProxyPort | Port du proxy SOCKS5 utilisé si vous souhaitez apporter votre propre proxy. S’il n’est pas spécifié, Claude exécutera son propre proxy. | 8081 |
enableWeakerNestedSandbox | Activer un sandbox plus faible pour les environnements Docker non privilégiés (Linux uniquement). Réduit la sécurité. Par défaut : false | true |
- Les règles de refus Read bloquent les lectures de fichiers dans le sandbox
- Les règles d’autorisation Edit permettent les écritures de fichiers (en plus des valeurs par défaut, par exemple le répertoire de travail actuel)
- Les règles de refus Edit bloquent les écritures dans les chemins autorisés
- Les règles d’autorisation WebFetch permettent les domaines réseau
- Les règles de refus WebFetch bloquent les domaines réseau
Précédence des paramètres
Les paramètres sont appliqués dans l’ordre de précédence (du plus élevé au plus bas) :-
Politiques gérées par l’entreprise (
managed-settings.json)- Déployées par l’informatique/DevOps
- Ne peuvent pas être remplacées
-
Arguments de ligne de commande
- Remplacements temporaires pour une session spécifique
-
Paramètres de projet local (
.claude/settings.local.json)- Paramètres de projet personnels et spécifiques
-
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
Points clés du 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) : Configurez les permissions, les variables d’environnement et le comportement des outils
- Commandes slash : Commandes personnalisées qui peuvent être invoquées pendant une session avec
/command-name - Serveurs MCP : Étendez Claude Code avec des outils et des 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, les paramètres plus spécifiques s’ajoutant à ou remplaçant les paramètres plus larges
Disponibilité de l’invite système
Contrairement à claude.ai, nous ne publions pas l’invite 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 des 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ètrepermissions.deny dans votre fichier .claude/settings.json :
ignorePatterns dépréciée. Les fichiers correspondant à ces modèles seront complètement invisibles pour Claude Code, empêchant toute exposition accidentelle de données sensibles.
Configuration des sous-agents
Claude Code supporte les sous-agents IA personnalisés qui peuvent être configurés aux niveaux utilisateur et projet. Ces sous-agents sont stockés sous forme de fichiers Markdown avec du 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
Configuration des plugins
Claude Code supporte un système de plugins qui vous permet d’étendre les fonctionnalités avec des commandes personnalisées, des agents, des hooks et des serveurs MCP. Les plugins sont distribués via des marketplaces et peuvent être configurés aux niveaux utilisateur et référentiel.Paramètres des plugins
Paramètres liés aux plugins danssettings.json :
enabledPlugins
Contrôle quels plugins sont activés. Format : "plugin-name@marketplace-name": true/false
Domaines :
- Paramètres utilisateur (
~/.claude/settings.json) : Préférences de plugins personnels - Paramètres de projet (
.claude/settings.json) : Plugins spécifiques au projet partagés avec l’équipe - Paramètres locaux (
.claude/settings.local.json) : Remplacements par machine (non validés)
extraKnownMarketplaces
Définit des marketplaces supplémentaires qui doivent être mises à disposition pour le référentiel. Généralement utilisé dans les paramètres au niveau du référentiel pour s’assurer que les membres de l’équipe ont accès aux sources de plugins requises.
Lorsqu’un référentiel inclut extraKnownMarketplaces :
- Les membres de l’équipe sont invités à installer la marketplace lorsqu’ils font confiance au dossier
- Les membres de l’équipe sont ensuite invités à installer des plugins à partir de cette marketplace
- Les utilisateurs peuvent ignorer les marketplaces ou les plugins indésirables (stockés dans les paramètres utilisateur)
- L’installation respecte les limites de confiance et nécessite un consentement explicite
github: Référentiel GitHub (utiliserepo)git: N’importe quelle URL git (utiliseurl)directory: Chemin du système de fichiers local (utilisepath, pour le développement uniquement)
Gestion des plugins
Utilisez la commande/plugin pour gérer les plugins de manière interactive :
- Parcourir les plugins disponibles à partir des marketplaces
- Installer/désinstaller des plugins
- Activer/désactiver des plugins
- Afficher les détails des plugins (commandes, agents, hooks fournis)
- Ajouter/supprimer des marketplaces
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 de 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, généralement pour le SDK Claude (pour une 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 souhaitez ajouter à la demande (au format Name: Value) |
ANTHROPIC_DEFAULT_HAIKU_MODEL | Voir Configuration du modèle |
ANTHROPIC_DEFAULT_OPUS_MODEL | Voir Configuration du modèle |
ANTHROPIC_DEFAULT_SONNET_MODEL | Voir Configuration du modèle |
ANTHROPIC_MODEL | Nom du paramètre de modèle à utiliser (voir Configuration du modèle) |
ANTHROPIC_SMALL_FAST_MODEL | [DÉPRÉCIÉ] Nom du modèle de classe Haiku pour les tâches de fond |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION | Remplacer la région AWS pour le modèle de classe Haiku 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’expiration par défaut pour les commandes bash longues |
BASH_MAX_OUTPUT_LENGTH | Nombre maximal de caractères dans les sorties bash avant qu’elles ne soient tronquées au milieu |
BASH_MAX_TIMEOUT_MS | Délai d’expiration maximal que le modèle peut définir pour les commandes bash longues |
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR | Revenir au répertoire de travail d’origine 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 de apiKeyHelper) |
CLAUDE_CODE_CLIENT_CERT | Chemin vers le fichier de certificat client pour l’authentification mTLS |
CLAUDE_CODE_CLIENT_KEY_PASSPHRASE | Phrase de passe pour la clé CLAUDE_CODE_CLIENT_KEY chiffrée (optionnel) |
CLAUDE_CODE_CLIENT_KEY | Chemin vers le fichier de clé privée client pour l’authentification mTLS |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | Équivalent de la définition de DISABLE_AUTOUPDATER, DISABLE_BUG_COMMAND, DISABLE_ERROR_REPORTING et DISABLE_TELEMETRY |
CLAUDE_CODE_DISABLE_TERMINAL_TITLE | Définir sur 1 pour désactiver les mises à jour automatiques du titre du terminal en fonction du contexte de conversation |
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL | Ignorer l’installation automatique des extensions IDE |
CLAUDE_CODE_MAX_OUTPUT_TOKENS | Définir le nombre maximal de jetons de sortie pour la plupart des demandes |
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_SUBAGENT_MODEL | Voir Configuration du modèle |
CLAUDE_CODE_USE_BEDROCK | Utiliser Bedrock |
CLAUDE_CODE_USE_VERTEX | Utiliser Vertex |
DISABLE_AUTOUPDATER | Définir sur 1 pour désactiver les mises à jour automatiques. Cela a la priorité sur le paramètre de configuration autoUpdates. |
DISABLE_BUG_COMMAND | Définir sur 1 pour désactiver la commande /bug |
DISABLE_COST_WARNINGS | Définir sur 1 pour désactiver les messages d’avertissement de coût |
DISABLE_ERROR_REPORTING | Définir sur 1 pour refuser la création de rapports d’erreurs Sentry |
DISABLE_NON_ESSENTIAL_MODEL_CALLS | Définir sur 1 pour désactiver les appels de modèle pour les chemins non critiques comme le texte de saveur |
DISABLE_PROMPT_CACHING | Définir sur 1 pour désactiver la mise en cache des invites pour tous les modèles (a la priorité sur les paramètres par modèle) |
DISABLE_PROMPT_CACHING_HAIKU | Définir sur 1 pour désactiver la mise en cache des invites pour les modèles Haiku |
DISABLE_PROMPT_CACHING_OPUS | Définir sur 1 pour désactiver la mise en cache des invites pour les modèles Opus |
DISABLE_PROMPT_CACHING_SONNET | Définir sur 1 pour désactiver la mise en cache des invites pour les modèles Sonnet |
DISABLE_TELEMETRY | Définir sur 1 pour refuser 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_MCP_OUTPUT_TOKENS | Nombre maximal de jetons autorisés dans les réponses des outils MCP. Claude Code affiche un avertissement lorsque la sortie dépasse 10 000 jetons (par défaut : 25000) |
MAX_THINKING_TOKENS | Activer la réflexion étendue et définir le budget de jetons pour le processus de réflexion. La réflexion étendue améliore les performances sur les tâches complexes de raisonnement et de codage mais impacte l’efficacité de la mise en cache des invites. Désactivé par défaut. |
MCP_TIMEOUT | Délai d’expiration en millisecondes pour le démarrage du serveur MCP |
MCP_TOOL_TIMEOUT | Délai d’expiration en millisecondes pour l’exécution de l’outil MCP |
NO_PROXY | Liste des domaines et adresses IP vers lesquels les demandes seront émises directement, en contournant le proxy |
SLASH_COMMAND_TOOL_CHAR_BUDGET | Nombre maximal de caractères pour les métadonnées de commande slash affichées à l’outil SlashCommand (par défaut : 15000) |
USE_BUILTIN_RIPGREP | Définir sur 0 pour utiliser le rg installé sur le système au lieu du 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_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 |
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 les commandes shell dans votre environnement | Oui |
| Edit | Effectue des modifications ciblées sur des fichiers spécifiques | Oui |
| Glob | Trouve les fichiers en fonction de la correspondance de modèles | Non |
| Grep | Recherche les modèles dans le contenu des fichiers | Non |
| NotebookEdit | Modifie les cellules du notebook Jupyter | Oui |
| NotebookRead | Lit et affiche le contenu des notebooks Jupyter | Non |
| Read | Lit le contenu des fichiers | Non |
| SlashCommand | Exécute une commande slash personnalisée | Oui |
| Task | Exécute un sous-agent pour gérer les tâches complexes et multi-étapes | Non |
| TodoWrite | Crée et gère les 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 les fichiers | Oui |
/allowed-tools ou dans les paramètres de permission. Voir aussi Règles de permission spécifiques aux outils.
Extension des outils avec des hooks
Vous pouvez exécuter des commandes personnalisées avant ou après l’exécution de n’importe quel outil en utilisant les hooks Claude Code. Par exemple, vous pourriez exécuter automatiquement un formateur Python après que Claude modifie les fichiers Python, ou empêcher les modifications des fichiers de configuration de production en bloquant les opérations Write vers certains chemins.Voir aussi
- Gestion des identités et des accès - En savoir plus 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