/config, qui ouvre une interface Paramètres avec onglets où vous pouvez afficher les informations d’état et modifier les options de configuration. À partir de la v2.1.181, vous pouvez modifier une seule option sans ouvrir l’interface en passant key=value à /config, par exemple /config verbose=true.
Portées de configuration
Claude Code utilise un système de portées pour déterminer où les configurations s’appliquent et qui les partage. Comprendre les portées vous aide à décider comment configurer Claude Code pour un usage personnel, une collaboration d’équipe ou un déploiement en entreprise.Portées disponibles
Quand utiliser chaque portée
La portée Managed est pour :- Les politiques de sécurité qui doivent être appliquées à l’échelle de l’organisation
- Les exigences de conformité qui ne peuvent pas être contournées
- Les configurations standardisées déployées par l’IT/DevOps
- Les préférences personnelles que vous voulez partout (thèmes, paramètres d’éditeur)
- Les outils et plugins que vous utilisez dans tous les projets
- Les clés API et l’authentification (stockées de manière sécurisée)
- Les paramètres partagés par l’équipe (permissions, hooks, MCP servers)
- Les plugins que toute l’équipe devrait avoir
- La standardisation des outils entre collaborateurs
- Les remplacements personnels pour un projet spécifique
- Tester les configurations avant de les partager avec l’équipe
- Les paramètres spécifiques à la machine qui ne fonctionneront pas pour les autres
Comment les portées interagissent
Quand le même paramètre est configuré dans plusieurs portées, Claude Code les applique dans l’ordre de priorité :- Managed (la plus élevée) : ne peut pas être contournée par quoi que ce soit
- Arguments de ligne de commande : remplacements de session temporaires
- Local : remplace les paramètres de projet et d’utilisateur
- Project : remplace les paramètres d’utilisateur
- User (la plus basse) : s’applique quand rien d’autre ne spécifie le paramètre
spinnerTipsEnabled à true et les paramètres de projet le définissent à false, la valeur du projet s’applique. Les règles de permission se comportent différemment car elles fusionnent entre les portées plutôt que de se remplacer. Voir Précédence des paramètres.
Ce qui utilise les portées
Les portées s’appliquent à de nombreuses fonctionnalités de Claude Code :
Sur Windows, les chemins affichés comme
~/.claude se résolvent en %USERPROFILE%\.claude.
Fichiers de paramètres
Le fichiersettings.json est le 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. Quand Claude Code crée.claude/settings.local.json, il configure git pour ignorer le fichier. Si vous créez le fichier vous-même, ajoutez-le à votre gitignore manuellement. Parce que ce fichier est le vôtre plutôt que celui du référentiel, ses règles de permissionallowprennent effet sans l’étape de confiance de l’espace de travail que les règles allow de.claude/settings.jsonnécessitent. Si le référentiel fournit le fichier, par exemple en le validant, la confiance de l’espace de travail s’applique toujours.
-
-
Paramètres gérés : Pour les organisations qui ont besoin d’un contrôle centralisé, Claude Code supporte plusieurs mécanismes de livraison pour les paramètres gérés. Tous utilisent le même format JSON et ne peuvent pas être contournés par les paramètres utilisateur ou de projet :
- Paramètres gérés par le serveur : livrés à distance au moment de la connexion, soit à partir des serveurs d’Anthropic via la console d’administration claude.ai, soit à partir d’une passerelle d’applications Claude auto-hébergée. Voir paramètres gérés par le serveur.
-
Politiques MDM/au niveau du système d’exploitation : livrées via la gestion native des appareils sur macOS et Windows :
- macOS : domaine de préférences gérées
com.anthropic.claudecode. Les clés de niveau supérieur du plist reflètentmanaged-settings.json, avec les paramètres imbriqués comme dictionnaires et les tableaux comme tableaux plist. Déployez via des profils de configuration dans Jamf, Iru (Kandji), ou d’autres outils MDM similaires. - Windows : clé de registre
HKLM\SOFTWARE\Policies\ClaudeCodeavec une valeurSettings(REG_SZ ou REG_EXPAND_SZ) contenant du JSON (déployé via Group Policy ou Intune) - Windows (au niveau utilisateur) :
HKCU\SOFTWARE\Policies\ClaudeCode(priorité de politique la plus basse, utilisée uniquement quand aucune source au niveau administrateur n’existe)
- macOS : domaine de préférences gérées
-
Basé sur fichier :
managed-settings.jsonetmanaged-mcp.jsondéployés dans les répertoires système :- macOS :
/Library/Application Support/ClaudeCode/ - Linux et WSL :
/etc/claude-code/ - Windows :
C:\Program Files\ClaudeCode\
managed-settings.d/dans le même répertoire système à côté demanaged-settings.json. Cela permet à des équipes séparées de déployer des fragments de politique indépendants sans coordonner les modifications d’un seul fichier. Suivant la convention systemd,managed-settings.jsonest fusionné en premier comme base, puis tous les fichiers*.jsondans le répertoire drop-in sont triés alphabétiquement et fusionnés par-dessus. Les fichiers ultérieurs remplacent les fichiers antérieurs pour les valeurs scalaires ; les tableaux sont concaténés et dédupliqués ; les objets sont fusionnés en profondeur. Les fichiers cachés commençant par.sont ignorés. Utilisez des préfixes numériques pour contrôler l’ordre de fusion, par exemple10-telemetry.jsonet20-security.json. - macOS :
Les déploiements gérés peuvent également restreindre les ajouts de marketplace de plugins en utilisantstrictKnownMarketplaces. Pour plus d’informations, voir Restrictions de marketplace gérées. -
Autre configuration est stockée dans
~/.claude.json. Ce fichier contient votre session OAuth, les configurations de MCP server pour les portées utilisateur et locale, l’état par projet (outils autorisés, paramètres de confiance), et divers caches. Les MCP servers au niveau du projet sont stockés séparément dans.mcp.json.
Claude Code crée automatiquement des sauvegardes horodatées des fichiers de configuration et conserve les cinq sauvegardes les plus récentes pour prévenir la perte de données.
Exemple settings.json
$schema dans l’exemple ci-dessus pointe vers le schéma JSON officiel pour les paramètres Claude Code. L’ajouter à votre settings.json active l’autocomplétion et la validation en ligne dans VS Code, Cursor, et tout autre éditeur qui supporte la validation de schéma JSON.
Le schéma publié est mis à jour périodiquement et peut ne pas inclure les paramètres ajoutés dans les versions CLI les plus récentes, donc un avertissement de validation sur un champ récemment documenté ne signifie pas nécessairement que votre configuration est invalide.
Quand les modifications prennent effet
Claude Code surveille vos fichiers de paramètres et les recharge quand ils changent, donc les modifications de la plupart des clés s’appliquent à la session en cours sans redémarrage. Cela inclutpermissions, hooks, et les assistants d’identifiants comme apiKeyHelper. Le rechargement couvre les paramètres utilisateur, projet, locaux et gérés, et le hook ConfigChange se déclenche pour chaque changement détecté.
Quelques clés sont lues une seule fois au démarrage de la session et s’appliquent au redémarrage suivant à la place :
model: utilisez/modelpour basculer en sessionoutputStyle: fait partie de l’invite système, qui est reconstruite sur/clearou redémarrage
Entrées invalides dans les paramètres gérés
Les paramètres gérés analysent avec tolérance. Quand une configuration gérée contient une entrée qui échoue la validation du schéma, Claude Code supprime cette entrée, enregistre un avertissement, et applique chaque politique valide restante. Une seule faute de frappe ne peut pas désactiver le reste de la politique de votre organisation. Exécutez/doctor pour énumérer les entrées supprimées avec leur fichier source et leur champ.
Ce comportement est cohérent dans les trois mécanismes de livraison : paramètres gérés par le serveur, politiques plist et registre déployées via MDM, et fichiers managed-settings.json. Nécessite Claude Code v2.1.169 ou ultérieur.
Les champs d’application de la sécurité sont traités par champ au lieu d’être supprimés en gros quand ils sont présents mais invalides :
requiredMinimumVersion et requiredMaximumVersion échouent ouvertement par conception : une valeur invalide est supprimée plutôt qu’appliquée, donc une mauvaise poussée de politique ne peut pas empêcher Claude Code de démarrer.
Les erreurs de validation apparaissent à trois endroits :
- Les sessions interactives affichent une boîte de dialogue au démarrage énumérant les entrées invalides.
- Les exécutions sans tête avec
-pimpriment un résumé sur stderr. claude doctorénumère chaque entrée invalide avec sa source et son champ.
claude doctor sur une machine de test avant de les déployer à l’échelle de la flotte.
Cette tolérance s’applique uniquement aux paramètres gérés. Les fichiers de paramètres utilisateur, projet et locaux restent stricts : un fichier qui échoue la validation est rejeté dans son ensemble et signalé.
Paramètres disponibles
settings.json supporte un certain nombre d’options :
Paramètres de configuration globale
Ces paramètres sont stockés dans~/.claude.json plutôt que dans settings.json. Les ajouter à settings.json déclenchera une erreur de validation de schéma.
Les versions antérieures à v2.1.119 stockent également un certain nombre de clés de préférence
/config ici au lieu de dans settings.json, y compris theme, verbose, editorMode, autoCompactEnabled, et preferredNotifChannel.Paramètres de worktree
Configurez comment--worktree crée et gère les git worktrees.
Pour copier les fichiers ignorés par git comme
.env dans les nouveaux worktrees, utilisez un fichier .worktreeinclude dans la racine de votre projet à la place d’un paramètre.
Paramètres de permission
Syntaxe de règle de permission
Les règles de permission suivent le formatTool ou Tool(specifier). Les règles sont évaluées dans l’ordre : d’abord les règles de refus, puis de demande, puis d’autorisation. La première règle correspondante gagne indépendamment de la spécificité de la règle. Voir l’ordre d’évaluation des règles de permission pour les détails.
Exemples rapides :
Pour la référence complète de la syntaxe des règles, y compris le comportement des caractères génériques, les modèles spécifiques aux outils pour Read, Edit, WebFetch, MCP, et Agent, et les limitations de sécurité des modèles Bash, voir Syntaxe de règle de permission.
Paramètres de sandbox
Configurez le comportement avancé du sandboxing. Le sandboxing isole les commandes bash de votre système de fichiers et réseau. Voir Sandboxing pour plus de détails.Préfixes de chemin sandbox
Les chemins dansfilesystem.allowWrite, filesystem.denyWrite, filesystem.denyRead, filesystem.allowRead, et credentials.files supportent ces préfixes :
Le préfixe plus ancien
//path pour les chemins absolus fonctionne toujours. Si vous aviez précédemment utilisé /path en s’attendant à une résolution relative au projet, passez à ./path. Cette syntaxe diffère des règles de permission Read et Edit, qui utilisent //path pour absolu et /path pour relatif au projet. Les chemins du système de fichiers sandbox utilisent les conventions standard : /tmp/build est un chemin absolu.
Exemple de configuration :
- Paramètres
sandbox.filesystem(affichés ci-dessus) : Contrôlez les chemins à la limite du sandbox au niveau du système d’exploitation. Ces restrictions s’appliquent à toutes les commandes de sous-processus (par exemple,kubectl,terraform,npm), pas seulement aux outils de fichier de Claude. - Règles de permission : Utilisez les règles allow/deny
Editpour contrôler l’accès à l’outil de fichier de Claude, les règles denyReadpour bloquer les lectures (une règle denyReadbloque également l’outil Edit sur les chemins correspondants), et les règles allow/denyWebFetchpour contrôler les domaines réseau. Les chemins de ces règles sont également fusionnés dans la configuration du sandbox.
Paramètres d’attribution
Claude Code ajoute l’attribution aux commits git et aux pull requests. Ceux-ci sont configurés séparément :- Les commits utilisent les trailers git (comme
Co-Authored-By) par défaut, qui peuvent être personnalisés ou désactivés - Les descriptions de pull request sont du texte brut
Attribution de commit par défaut :
Le paramètre
attribution a la priorité sur le paramètre déprécié includeCoAuthoredBy. Pour masquer toute attribution, définissez commit et pr à des chaînes vides et sessionUrl à false.Paramètres de suggestion de fichier
Configurez une commande personnalisée pour l’autocomplétion de chemin de fichier@. La suggestion de fichier intégrée utilise la traversée rapide du système de fichiers, mais les grands monorepos peuvent bénéficier d’une indexation spécifique au projet telle qu’un index de fichier pré-construit ou un outillage personnalisé.
CLAUDE_PROJECT_DIR. Elle reçoit du JSON via stdin avec un champ query :
Badges de lien de pied de page
Le paramètrefooterLinksRegexes rend des badges cliquables supplémentaires dans le pied de page sous la boîte d’entrée. Utilisez-le pour transformer les ID imprimés par les CLI de projet, tels que les outils d’examen et les suivi de problèmes, en liens de session.
Chaque regex pattern d’entrée est mise en correspondance avec la sortie du tour : les résultats d’outils, y compris les contenus de fichiers et les pages récupérées, et les réponses de Claude lui-même. Les espaces réservés {name} dans url et label sont remplis à partir de groupes de capture nommés dans le modèle.
L’exemple suivant rend un badge chaque fois qu’une clé de problème comme PROJ-1234 apparaît dans la sortie du tour. Le groupe nommé (?<key>...) capture la clé, et {key} la substitue dans l’URL et l’étiquette :
~/.claude/settings.json
PROJ-1234 apparaît dans un résultat d’outil ou dans la réponse de Claude, une puce PROJ-1234 apparaît dans le pied de page liant à https://issues.example.com/browse/PROJ-1234.
Les contraintes suivantes s’appliquent à chaque entrée :
Quand un tour se termine, Claude Code met en correspondance chaque regex
pattern d’entrée avec la sortie du tour sur le thread principal, donc une regex lente bloque l’interface utilisateur jusqu’à ce qu’elle se termine. Les quantificateurs imbriqués tels que (a+)+$ peuvent prendre exponentiellement longtemps contre certaines entrées et geler la session, donc gardez chaque pattern linéaire et évitez d’imbriquer + ou *.
Les badges de pied de page s’affichent aux côtés d’une ligne d’état personnalisée quand une est configurée ; ni l’une ni l’autre ne remplace l’autre. Utilisez une ligne d’état pour une ligne pilotée par script qui calcule son propre contenu à partir des données de session, et les badges de pied de page pour transformer les ID de la conversation en liens sans script.
Configuration des hooks
Ces paramètres contrôlent quels hooks sont autorisés à s’exécuter et ce que les hooks HTTP peuvent accéder. Le paramètreallowManagedHooksOnly ne peut être configuré que dans les paramètres gérés. Les listes blanches d’URL et de variables d’environnement peuvent être définies à n’importe quel niveau de paramètres et fusionnent entre les sources.
Comportement quand allowManagedHooksOnly est true :
- Les hooks gérés et les hooks SDK sont chargés
- Les hooks des plugins force-activés dans les paramètres gérés
enabledPluginssont chargés. Cela permet aux administrateurs de distribuer des hooks vérifiés via une marketplace organisationnelle tout en bloquant tout le reste. La confiance est accordée par l’ID completplugin@marketplace, donc un plugin avec le même nom d’une marketplace différente reste bloqué - Les hooks utilisateur, projet et tous les autres hooks de plugin sont bloqués
* comme caractère générique pour la correspondance. Quand le tableau est défini, les hooks HTTP ciblant des URL non correspondantes sont silencieusement bloqués. La correspondance du nom d’hôte est insensible à la casse et ignore un point FQDN de fin, correspondant à la sémantique DNS.
allowedEnvVars effectif de chaque hook est l’intersection de sa propre liste et ce paramètre.
Calculer les paramètres gérés avec un assistant de politique
Le paramètrepolicyHelper pointe vers un exécutable qui calcule les paramètres gérés au démarrage, afin que les administrateurs puissent dériver la politique de la posture de l’appareil, de l’identité, ou d’un service distant au lieu d’un fichier statique. Configurez-le à partir de MDM ou d’un fichier managed-settings.json système. Claude Code ignore policyHelper quand il apparaît dans n’importe quelle autre portée, y compris les paramètres utilisateur, les paramètres de projet, la ruche de registre HKCU, et les paramètres gérés par le serveur.
Le paramètre accepte ces clés :
L’assistant écrit une enveloppe JSON vers stdout. Mettez les paramètres sous une clé
managedSettings plutôt qu’au niveau supérieur, car un objet de paramètres nu analyse avec managedSettings non défini et n’applique rien :
managedSettings, cet objet remplace les paramètres gérés basés sur fichier pour l’exécution. Quand l’assistant se termine avec un code non zéro au démarrage, Claude Code imprime l’erreur et refuse de démarrer, donc un assistant qui a besoin de résilience de panne devrait servir à partir de son propre cache et se terminer avec 0.
Précédence des paramètres
Les paramètres s’appliquent dans l’ordre de précédence. Du plus élevé au plus bas :-
Paramètres gérés (gérés par le serveur, politiques MDM/au niveau du système d’exploitation, ou paramètres gérés)
- Politiques déployées par l’IT via la livraison par serveur, les profils de configuration MDM, les politiques de registre, ou les fichiers de paramètres gérés
- Ne peuvent pas être contournés par aucun autre niveau, y compris les arguments de ligne de commande
- Au sein du niveau géré, une seule source est utilisée et les autres sont ignorées plutôt que fusionnées. Précédence, du plus élevé au plus bas :
- Sortie
policyHelper: quand configuré, c’est la seule source gérée utilisée - Distant (paramètres gérés par le serveur claude.ai ou passerelle d’applications Claude-livrés)
- Politiques MDM/au niveau du système d’exploitation
- Basé sur fichier (
managed-settings.d/*.jsonetmanaged-settings.json, fusionnés ensemble) - Registre HKCU (Windows uniquement)
- Sortie
- Quelques clés sont des exceptions, honorées quand n’importe quelle source gérée contrôlée par l’administrateur les définit plutôt que seulement la source gagnante. La source de registre HKCU inscriptible par l’utilisateur est exclue. Les clés d’exception sont :
- les clés de verrouillage sandbox
sandbox.network.allowManagedDomainsOnlyetsandbox.filesystem.allowManagedReadPathsOnly, avec leurs listes blanches associées allowAllClaudeAiMcps- les chemins binaires sandbox
sandbox.bwrapPathetsandbox.socatPath forceRemoteSettingsRefresh
- les clés de verrouillage sandbox
- Les hôtes d’intégration tels que Claude Desktop peuvent fournir une politique via l’option SDK
managedSettings. Par défaut, ceci est ignoré quand une source gérée déployée par l’administrateur est présente : paramètres gérés par le serveur, une politique MDM ou au niveau du système d’exploitation, ou un fichier de paramètres gérés. Le fallback de registre HKCU inscriptible par l’utilisateur ne compte pas comme une source déployée par l’administrateur. Les administrateurs peuvent opter en définissantparentSettingsBehaviorà"merge". Les valeurs de l’intégrateur sont filtrées pour qu’elles puissent resserrer la politique gérée mais pas l’assouplir.
-
Arguments de ligne de commande
- Remplacements temporaires pour une session spécifique. JSON passé via
--settings <file-or-json>fusionne avec les paramètres basés sur fichier en utilisant les mêmes règles que les autres couches : une clé définie ici remplace la même clé dans les paramètres locaux, de projet ou utilisateur, et omettre une clé laisse la valeur de couche inférieure en place
- Remplacements temporaires pour une session spécifique. JSON passé via
-
Paramètres de projet local (
.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
permissions.defaultMode à acceptEdits et que les paramètres partagés d’un projet le définissent à default, la valeur du projet s’applique. L’exemple ci-dessous couvre comment les paramètres avec valeur de tableau tels que les règles de permission se combinent à la place.
Les paramètres de tableau fusionnent entre les portées. Quand le même paramètre avec valeur de tableau (tel que
sandbox.filesystem.allowWrite ou permissions.allow) apparaît dans plusieurs portées, les tableaux sont concaténés et dédupliqués, non remplacés. Cela signifie que les portées de priorité inférieure peuvent ajouter des entrées sans remplacer celles définies par les portées de priorité supérieure, et vice versa. Par exemple, si les paramètres gérés définissent allowWrite à ["/opt/company-tools"] et qu’un utilisateur ajoute ["~/.kube"], les deux chemins sont inclus dans la configuration finale.Deux paramètres de tableau ne fusionnent pas de cette façon :fallbackModelest une chaîne ordonnée où la position porte du sens : le fichier de priorité la plus élevée qui la définit fournit la valeur entière.availableModels: quand la source gérée de priorité la plus élevée la définit, cette liste s’applique telle quelle et les entrées utilisateur, projet et locales ne peuvent pas l’étendre. Entre les portées non gérées, les tableaux fusionnent comme d’habitude. Voir Comportement de fusion.
Vérifier les paramètres actifs
Exécutez/status à l’intérieur de Claude Code pour voir quelles sources de paramètres sont actives. À l’intérieur du menu, l’onglet Status inclut une ligne Setting sources qui énumère chaque couche Claude Code a chargée pour la session actuelle, telle que User settings ou Project local settings. Quand les paramètres gérés sont en vigueur, l’entrée affiche le canal de livraison entre parenthèses, par exemple Enterprise managed settings (remote), (plist), (HKLM), (HKCU), ou (file). Le canal remote couvre à la fois les paramètres gérés par le serveur claude.ai et les politiques passerelle d’applications Claude-livrées. Une couche apparaît dans la liste uniquement quand cette source est chargée avec au moins une clé, donc une liste vide signifie qu’aucune source de paramètres n’a été trouvée.
La ligne Setting sources confirme quels fichiers sont en cours de lecture. Elle n’affiche pas quelle couche a fourni chaque clé individuelle. L’onglet Config dans le même dialogue est un éditeur pour un ensemble fixe de bascules telles que le thème et la sortie détaillée, pas une vue de vos contenus settings.json.
Si un fichier de paramètres contient des erreurs, telles que du JSON invalide ou une valeur qui échoue la validation, /status énumère les fichiers affectés. Exécutez /doctor pour voir les détails de chaque erreur.
Points clés du système de configuration
- Fichiers de mémoire (
CLAUDE.md) : Contiennent les instructions et le contexte que Claude charge au démarrage - Fichiers de paramètres (JSON) : Configurez les permissions, les variables d’environnement, et le comportement des outils
- Skills : Invites personnalisées qui peuvent être invoquées avec
/skill-nameou chargées automatiquement par Claude - MCP servers : Étendez Claude Code avec des outils et des intégrations supplémentaires
- Précédence : Les configurations de niveau supérieur (Managed) remplacent celles de niveau inférieur (User/Project)
- Héritage : Les paramètres fusionnent entre les portées ; les valeurs scalaires des portées de priorité supérieure remplacent, et les tableaux se concatènent, avec deux exceptions décrites dans la Note de fusion de tableau
Invite système
L’invite système interne de Claude Code n’est pas publiée. Pour ajouter des instructions personnalisées, utilisez les fichiersCLAUDE.md ou l’indicateur --append-system-prompt.
Exclure les fichiers sensibles
Pour empêcher Claude Code d’accéder aux fichiers contenant des informations sensibles comme les clés API, les secrets, et les fichiers d’environnement, utilisez le paramètrepermissions.deny dans votre fichier .claude/settings.json :
ignorePatterns. Les fichiers correspondant à ces modèles sont exclus de la découverte de fichiers et des résultats de recherche, et les opérations de lecture sur ces fichiers sont refusées.
Configuration des subagents
Claude Code supporte les subagents IA personnalisés qui peuvent être configurés aux niveaux utilisateur et projet. Ces subagents sont stockés en tant que fichiers Markdown avec du frontmatter YAML :- Subagents utilisateur :
~/.claude/agents/, disponibles dans tous vos projets - Subagents de projet :
.claude/agents/, spécifiques à votre projet et partageables avec votre équipe
Configuration des plugins
Claude Code supporte un système de plugins qui vous permet d’étendre les fonctionnalités avec des skills, des agents, des hooks, et des MCP servers. 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. Un plugin sans entrée à aucune portée revient à sa valeur defaultEnabled.
Portées :
- Paramètres utilisateur (
~/.claude/settings.json) : Préférences personnelles de plugin - 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, ignorés par git quand Claude Code les crée - Paramètres gérés (
managed-settings.json) : Remplacements de politique au niveau de l’organisation qui bloquent l’installation à toutes les portées et masquent le plugin de la marketplace
Les paramètres de projet ont la priorité sur les paramètres utilisateur, donc définir un plugin à
false dans ~/.claude/settings.json ne désactive pas un plugin que le .claude/settings.json du projet active. Pour refuser un plugin activé par le projet sur votre machine, définissez-le à false dans .claude/settings.local.json à la place.Les plugins forcément activés par les paramètres gérés ne peuvent pas être désactivés de cette manière, car les paramètres gérés remplacent les paramètres locaux.L’activation d’un plugin à partir d’une source externe telle qu’un référentiel GitHub ou un package npm dans le .claude/settings.json d’un projet ne l’installe pas pour d’autres personnes. À partir de Claude Code v2.1.195, chaque chemin qui charge les plugins demande à chaque utilisateur d’installer et faire confiance au plugin avant qu’il s’exécute.pluginConfigs
Stocke les valeurs d’option non sensibles qu’une userConfig de plugin collecte, indexées par ID de plugin. Claude Code écrit cette clé dans les paramètres utilisateur quand vous remplissez le dialogue de configuration du plugin, donc vous n’avez pas besoin de l’éditer manuellement. Les options sensibles sont stockées dans le Keychain macOS à la place, ou dans ~/.claude/.credentials.json sur les plateformes sans keychain supporté.
Cet exemple stocke une option pour un plugin installé à partir de la marketplace acme-tools :
pluginConfigs est lu à partir des paramètres utilisateur, du drapeau --settings, et des paramètres gérés uniquement. Les entrées dans le .claude/settings.json ou .claude/settings.local.json d’un projet sont ignorées, car ces valeurs sont substituées dans les configurations de hook, MCP, et LSP du plugin, et un référentiel cloné ne doit pas pouvoir les fournir. Avant v2.1.207, les paramètres de projet et locaux étaient également lus.
extraKnownMarketplaces
Définit les 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.
Quand un référentiel inclut extraKnownMarketplaces :
- Les membres de l’équipe sont invités à installer la marketplace quand ils font confiance au dossier
- Les membres de l’équipe sont ensuite invités à installer les plugins de cette marketplace
- Les utilisateurs peuvent ignorer les marketplaces ou 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)hostPattern: Modèle regex pour correspondre aux hôtes de marketplace (utilisehostPattern)settings: marketplace en ligne déclarée directement dans settings.json sans référentiel hébergé séparé (utilisenameetplugins)
git fonctionne avec n’importe quel service d’hébergement git, y compris GitLab auto-hébergé et Bitbucket. Claude Code clone le référentiel avec la même authentification que git clone utiliserait sur cette machine : assistants d’identification configurés ou clés SSH. Un jeton de fournisseur tel que GITHUB_TOKEN ne prend effet que par le biais d’un assistant d’identification qui le lit. Voir Référentiels privés pour les détails de configuration.
Pour les sources github et git, définissez "skipLfs": true à l’intérieur de l’objet source (aux côtés de repo ou url) pour ignorer les téléchargements Git LFS quand Claude Code clone ou met à jour le référentiel de marketplace. Les fichiers pointeurs LFS restent comme des pointeurs au lieu de télécharger leur contenu. Utilisez ceci quand le référentiel contient de grands objets LFS sans rapport avec le contenu du plugin. Nécessite Claude Code v2.1.153 ou ultérieur.
Chaque entrée de marketplace accepte également un booléen autoUpdate optionnel. Définissez "autoUpdate": true aux côtés de source pour faire en sorte que Claude Code actualise cette marketplace et mette à jour ses plugins installés en arrière-plan après le démarrage. Quand omis, les marketplaces officielles d’Anthropic sont par défaut à true et toutes les autres marketplaces sont par défaut à false. Voir Configurer les mises à jour automatiques.
Utilisez source: 'settings' pour déclarer un petit ensemble de plugins en ligne sans configurer un référentiel de marketplace hébergé. Les plugins listés ici doivent référencer des sources externes telles que GitHub ou npm. Vous devez toujours activer chaque plugin séparément dans enabledPlugins.
strictKnownMarketplaces
Paramètres gérés uniquement : Contrôle quelles marketplaces de plugins les utilisateurs sont autorisés à ajouter et installer des plugins à partir de. Ce paramètre ne peut être configuré que dans les paramètres gérés et fournit aux administrateurs un contrôle strict sur les sources de marketplace.
Emplacements des fichiers de paramètres gérés :
- macOS :
/Library/Application Support/ClaudeCode/managed-settings.json - Linux et WSL :
/etc/claude-code/managed-settings.json - Windows :
C:\Program Files\ClaudeCode\managed-settings.json
- Disponible uniquement dans les paramètres gérés (
managed-settings.json) - Ne peut pas être contourné par les paramètres utilisateur ou projet (précédence la plus élevée)
- Appliqué avant les opérations de réseau et système de fichiers, donc les sources bloquées ne s’exécutent jamais
- Utilise la correspondance exacte pour les spécifications de source (y compris
ref,pathpour les sources git), saufhostPatternetpathPattern, qui utilisent la correspondance regex
undefined(par défaut) : pas de restrictions, donc les utilisateurs peuvent ajouter n’importe quelle marketplace- Tableau vide
[]: verrouillage complet, donc les utilisateurs ne peuvent pas ajouter de nouvelles marketplaces - Liste de sources : les utilisateurs ne peuvent ajouter que les marketplaces qui correspondent exactement
hostPattern et pathPattern utilisent la correspondance regex par rapport à l’hôte de la marketplace et au chemin du système de fichiers respectivement.
- Référentiels GitHub :
repo (requis), ref (optionnel : branche ou tag), path (optionnel : sous-répertoire)
- Référentiels Git :
url (requis), ref (optionnel : branche ou tag), path (optionnel : sous-répertoire)
- Marketplaces basées sur URL :
url (requis), headers (optionnel : en-têtes HTTP pour l’accès authentifié)
Les marketplaces basées sur URL téléchargent uniquement le fichier
marketplace.json. Elles ne téléchargent pas les fichiers de plugin à partir du serveur. Les plugins dans les marketplaces basées sur URL doivent utiliser des sources externes (URLs GitHub, npm, ou git) plutôt que des chemins relatifs. Pour les plugins avec des chemins relatifs, utilisez une marketplace basée sur Git à la place. Voir Dépannage pour plus de détails.- Packages NPM :
package (requis, supporte les packages scoped)
- Chemins de fichier :
path (requis : chemin absolu vers le fichier marketplace.json)
- Chemins de répertoire :
path (requis : chemin absolu vers le répertoire contenant .claude-plugin/marketplace.json)
- Correspondance de modèle d’hôte :
hostPattern (requis : modèle regex pour correspondre à l’hôte de la marketplace)
Utilisez la correspondance de modèle d’hôte quand vous voulez autoriser toutes les marketplaces d’un hôte spécifique sans énumérer chaque référentiel individuellement. Ceci est utile pour les organisations avec des serveurs GitHub Enterprise ou GitLab internes où les développeurs créent leurs propres marketplaces.
Extraction d’hôte par type de source :
github: correspond toujours àgithub.comgit: extrait le nom d’hôte de l’URL (supporte les formats HTTPS et SSH)url: extrait le nom d’hôte de l’URLnpm,file,directory: non supporté pour la correspondance de modèle d’hôte
- Correspondance de modèle de chemin :
pathPattern (requis : modèle regex correspondant au champ path des sources file et directory)
Utilisez la correspondance de modèle de chemin pour autoriser les marketplaces basées sur le système de fichiers aux côtés des restrictions hostPattern pour les sources réseau. Définissez ".*" pour autoriser tous les chemins locaux, ou un modèle plus étroit pour restreindre à des répertoires spécifiques.
Exemples de configuration :
Exemple : autoriser uniquement les marketplaces spécifiques :
github et git), cela inclut tous les champs optionnels :
- Le
repoouurldoit correspondre exactement - Le champ
refdoit correspondre exactement (ou les deux être non définis) - Le champ
pathdoit correspondre exactement (ou les deux être non définis)
extraKnownMarketplaces :
Différence de format :
strictKnownMarketplaces utilise des objets de source directs :
extraKnownMarketplaces nécessite des marketplaces nommées :
strictKnownMarketplaces est une porte de politique : elle contrôle ce que les utilisateurs peuvent ajouter mais n’enregistre aucune marketplace. Pour à la fois restreindre et pré-enregistrer une marketplace pour tous les utilisateurs, définissez les deux dans managed-settings.json :
strictKnownMarketplaces défini, les utilisateurs peuvent toujours ajouter la marketplace autorisée manuellement via /plugin marketplace add, mais elle n’est pas disponible automatiquement.
Notes importantes :
- Les restrictions sont vérifiées avant toute demande réseau ou opération de système de fichiers
- Quand bloquée, les utilisateurs voient des messages d’erreur clairs indiquant que la source est bloquée par la politique gérée
- La restriction s’applique à l’ajout de marketplace et à l’installation, la mise à jour, l’actualisation et la mise à jour automatique de plugins. Une marketplace ajoutée avant que la politique soit définie ne peut pas être utilisée pour installer ou mettre à jour des plugins une fois que sa source ne correspond plus à la liste blanche
- Les paramètres gérés ont la précédence la plus élevée et ne peuvent pas être contournés
strictPluginOnlyCustomization
Paramètres gérés uniquement : bloque les skills, agents, hooks, et MCP servers des sources utilisateur et projet, afin qu’ils ne puissent provenir que des plugins ou des paramètres gérés. Combinez-le avec strictKnownMarketplaces pour contrôler la chaîne d’approvisionnement de personnalisation complète : la liste blanche de marketplace contrôle quels plugins les utilisateurs peuvent installer, et ce paramètre bloque tout ce qui ne provient pas d’un plugin ou des paramètres gérés.
La valeur est soit true pour verrouiller les quatre surfaces, soit un tableau nommant les surfaces à verrouiller :
Les noms de surface qu’une version de Claude Code ne reconnaît pas sont ignorés plutôt que de faire échouer le fichier de paramètres, afin que vous puissiez ajouter de nouveaux noms de surface avant que tous les clients se mettent à jour.
Gérer les plugins
Utilisez la commande/plugin pour gérer les plugins de manière interactive :
- Parcourir les plugins disponibles à partir des marketplaces
- Installer/désinstaller les plugins
- Activer/désactiver les plugins
- Afficher les détails du plugin (skills, agents, hooks fournis)
- Ajouter/supprimer les marketplaces
Variables d’environnement
Les variables d’environnement vous permettent de contrôler le comportement de Claude Code sans éditer les fichiers de paramètres. N’importe quelle variable peut également être configurée danssettings.json sous la clé env pour l’appliquer à chaque session ou la déployer à votre équipe.
Voir la référence des variables d’environnement pour la liste complète.
Outils disponibles pour Claude
Claude Code a accès à un ensemble d’outils pour lire, éditer, rechercher, exécuter des commandes, et orchestrer les subagents. Les noms d’outils sont les chaînes exactes que vous utilisez dans les règles de permission et les correspondances de hooks. Voir la référence des outils pour la liste complète et les détails du comportement de l’outil Bash.Voir aussi
- Permissions : système de permissions, syntaxe des règles, modèles spécifiques aux outils, et politiques gérées
- Authentification : configurer l’accès utilisateur à Claude Code
- Déboguer votre configuration : diagnostiquer pourquoi un paramètre, un hook, ou un serveur MCP ne prend pas effet
- Dépannage de l’installation et de la connexion : problèmes d’installation, d’authentification, et de plateforme