Modifiez les paramètres Claude Code, choisissez la portée à laquelle appartient une clé, vérifiez la modification, et apprenez quelle valeur Claude Code utilise quand une clé est définie à plusieurs endroits.
export const SettingsPrecedence = () => {
const LEVELS = [{
n: 1,
name: 'Managed settings',
file: 'managed-settings.json, MDM, or the claude.ai console',
who: 'Your organization',
w: 390
}, {
n: 2,
name: 'Command line',
file: 'claude --settings',
who: 'You, this session',
w: 420
}, {
n: 3,
name: 'Project local',
file: '.claude/settings.local.json',
who: 'You, this project',
w: 480
}, {
n: 4,
name: 'Shared project',
file: '.claude/settings.json',
who: 'Everyone in the project',
w: 540
}, {
n: 5,
name: 'User',
file: '~/.claude/settings.json',
who: 'You, every project',
w: 600
}];
const W = 760;
const ROW = 58;
const GAP = 8;
const TOP = 34;
const H = TOP + LEVELS.length * (ROW + GAP) + 30;
const cx = W / 2;
const mono = 'var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace)';
const sans = 'var(--font-sans, system-ui, -apple-system, sans-serif)';
return
Les paramètres sont les clés JSON qui modifient le comportement de Claude Code : quel modèle il démarre, ce qu'il peut exécuter sans demander, quels fichiers il ne peut pas lire, comment il s'affiche dans votre terminal, et ce que votre organisation applique.
Claude Code lit les paramètres à partir de fichiers de paramètres JSON tels que ~/.claude/settings.json. Il les cherche à quelques emplacements, et le fichier à partir duquel il lit un paramètre décide à qui le paramètre s'applique. Cette page couvre ces fichiers : dans lequel mettre un paramètre, comment modifier un paramètre et confirmer qu'il s'est appliqué, et quelle valeur Claude Code utilise quand la même clé est définie dans plus d'un fichier. Configurer les permissions couvre ce que Claude Code peut exécuter sans demander et comment écrire les règles allow, ask, et deny.
Fichiers de paramètres et qui ils affectent
Claude Code lit les paramètres à partir de quatre fichiers, et une organisation peut également fournir des paramètres gérés à partir de la console claude.ai. Chaque source a une portée : l'ensemble des personnes et des projets auxquels un paramètre enregistré s'applique, que ce soit juste vous, tout le monde dans un projet, ou tout le monde dans votre organisation.
Portée
Fichier
Qui est affecté
Utilisez-le pour
Utilisateur
~/.claude/settings.json
Vous, dans chaque projet sur cette machine
Préférences personnelles : thème, mode éditeur, modèle par défaut, vos propres règles de permission
Projet partagé
.claude/settings.json
Tout le monde travaillant dans le dossier qui le contient. Dans un référentiel git, validez-le pour que vos coéquipiers l'obtiennent
Permissions d'équipe, hooks, plugins, et les variables d'environnement dont le projet a besoin
Projet local
.claude/settings.local.json
Vous, dans ce seul projet. Claude Code le garde hors de git quand il crée le fichier ; si vous le créez à la main, ajoutez-le à .gitignore vous-même
Remplacements personnels pour un projet, et test avant de partager
Tout le monde dans votre organisation auquel elle est déployée ; rien de ce que vous définissez ne la remplace, à part quelques exceptions sensibles à la sécurité
Politique de sécurité et exigences de conformité
Dans la colonne Fichier, ~/.claude est le dossier .claude dans votre répertoire personnel, et un .claude nu est le dossier .claude à l'intérieur de votre projet.
Comparez la portée de chaque fichier de paramètres
Supposons que vous ayez trois projets sur votre machine, website/, api/, et acme-app/, qu'un coéquipier ait son propre clone de acme-app/, et que vous démarriez une session cloud sur acme-app/.
Le graphique ci-dessous montre dans quels dossiers un paramètre s'applique quand vous démarrez Claude Code à partir d'eux. Cliquez sur un fichier de paramètres pour voir les dossiers qu'il atteint.
~/.claude/settings.json : chaque projet sur votre machine, et rien sur celle de votre coéquipier ou dans la session cloud
acme-app/.claude/settings.json : votre acme-app/. Il atteint le clone de votre coéquipier et la session cloud uniquement si vous validez le fichier dans le contrôle de version ; jusqu'à ce que vous le fassiez, c'est un fichier sur votre disque comme n'importe quel autre et personne d'autre ne l'a
acme-app/.claude/settings.local.json : votre acme-app/ uniquement. Claude Code l'ajoute à vos exclusions git globales la première fois qu'il écrit le fichier, donc il reste hors de vos commits ; si vous créez le fichier à la main, ajoutez-le à .gitignore vous-même
Paramètres gérés, qu'il s'agisse d'un fichier managed-settings.json, d'une politique MDM, ou de paramètres gérés par le serveur à partir de la console claude.ai : chaque projet sur chaque machine auquel votre organisation la déploie, ou auquel vous vous connectez avec votre compte d'organisation. Seuls les paramètres gérés par le serveur atteignent la session cloud
Trouvez ou créez vos fichiers de paramètres
L'installation de Claude Code ne crée aucun fichier de paramètres. Si votre machine ou projet en a déjà un, il provient de l'une de ces sources :
Géré : votre organisation la déploie. Vous ne la créez ni ne l'éditez.
Projet partagé : un projet qui utilise déjà Claude Code peut en avoir un validé. Sinon, créez-le à .claude/settings.json dans le dossier du projet.
Utilisateur et Projet local : créez-les vous-même, ou laissez Claude Code les créer. Il écrit ~/.claude/settings.json la première fois que vous modifiez une option dans le menu /config qu'il stocke dans les paramètres utilisateur, comme le thème, et .claude/settings.local.json la première fois que vous donnez une approbation permanente sur une invite de permission, comme « Oui, et ne me demande plus » pour une commande Bash. Quelques options /config, y compris Afficher les conseils, s'enregistrent dans .claude/settings.local.json à la place du fichier utilisateur.
Claude Code conserve également un cinquième fichier, ~/.claude.json, qu'il écrit pour lui-même ; vous n'avez pas besoin de l'éditer. Il contient votre session de connexion, les configurations de serveur MCP, l'état par projet comme les décisions de confiance, et les clés de configuration globale que /config écrit pour vous.
Partagez les paramètres avec votre équipe
Validez .claude/settings.json pour que tout le monde qui clone le référentiel obtienne les mêmes permissions, hooks, télémétrie, et plugins. Chaque coéquipier peut toujours le remplacer pour lui-même dans son propre .claude/settings.local.json, donc les exceptions personnelles n'ont pas besoin d'une validation. Pour un fichier d'équipe complet, voir les paramètres partagés d'une équipe.
Gardez les paramètres personnels hors d'un référentiel
Pour modifier un paramètre pour vous-même dans un projet sans le modifier pour vos coéquipiers, enregistrez-le dans .claude/settings.local.json à l'intérieur du projet. Claude Code applique ce fichier sur le .claude/settings.json validé, donc si le fichier de votre équipe définit "model": "claude-sonnet-5" et que vous voulez Opus, mettez "model": "claude-opus-4-8" dans votre fichier local et seules vos sessions changent.
Claude Code écrit également dans ce fichier, le garde hors de vos commits, et applique ses règles allow sans l'étape de confiance :
Claude Code l'écrit aussi. Quand Claude demande la permission d'exécuter une commande Bash et que vous choisissez « Oui, et ne me demande plus », Claude Code enregistre cette approbation de permission ici comme une règle allow.
Vous n'avez pas besoin de le gitignorer vous-même, sauf si vous l'avez créé à la main. La première fois que Claude Code écrit le fichier dans un référentiel git qui ne l'ignore pas déjà, il ajoute **/.claude/settings.local.json à votre fichier d'exclusions git global, donc le fichier reste hors de vos commits dans chaque référentiel. Ce fichier est core.excludesFile quand votre configuration git globale le définit à un chemin absolu ou préfixé par ~ ; sinon c'est $XDG_CONFIG_HOME/git/ignore, ou ~/.config/git/ignore quand XDG_CONFIG_HOME n'est pas défini. Si vous avez créé le fichier à la main et que Claude Code ne l'a pas encore écrit, ajoutez-le à .gitignore vous-même.
Ses règles allow n'attendent pas la confiance tant que le fichier reste non suivi. Parce que le fichier est le vôtre et non celui du référentiel, Claude Code applique ses règles allow sans l'étape de confiance de l'espace de travail qu'il exige pour le fichier validé. Si le fichier est suivi par git, l'étape de confiance s'applique aussi ; voir Quand votre fichier de paramètres locaux a besoin de confiance.
Où Claude Code garde le fichier local dans un référentiel git
Quand Claude demande la permission d'exécuter une commande Bash et que vous choisissez « Oui, et ne me demande plus », Claude Code enregistre cette approbation comme une règle allow dans .claude/settings.local.json. Si vous démarrez Claude Code dans un sous-répertoire d'un référentiel git, il lit et écrit ce fichier à la racine du référentiel et applique l'approbation dans tout le référentiel. Dans un worktree, il utilise le fichier à la racine du checkout principal.
Deux règles qualifient l'emplacement racine :
Quand le fichier reste avec .claude/settings.json à la place : en dehors d'un référentiel git, quand la racine du référentiel est votre répertoire personnel, sur Windows, ou quand la racine du référentiel ou son entrée .git ou .claude n'est pas possédée par votre utilisateur.
Avant v2.1.211, Claude Code gardait le fichier dans le répertoire de démarrage. Il lit toujours un fichier qu'une version antérieure a laissé là à côté du fichier racine ; où les deux définissent la même clé, la valeur de la racine s'applique, et les règles de permission des deux fichiers s'appliquent. L'assistant resolveSettings() du SDK Agent lit toujours le fichier à partir du répertoire de démarrage.
Claude Code lit le .claude/settings.json partagé à partir du répertoire de travail principal de la session, donc pour utiliser un fichier validé à la racine du référentiel, démarrez Claude Code là. Après avoir déplacé la session avec /cd, Claude Code lit les deux fichiers de projet à partir du nouveau répertoire à la place, plaçant le fichier local par les mêmes règles. Les lire à partir du répertoire vers lequel vous avez déplacé nécessite Claude Code v2.1.246 ou ultérieur.
Vérifiez ce que votre organisation applique
Si votre organisation gère Claude Code, certains paramètres sont décidés pour vous et rien de ce que vous mettez dans vos propres fichiers ne les change. Pour voir lesquels, exécutez /status : la ligne Setting sources nomme la source gérée qui s'applique à vous. Les paramètres gérés s'appliquent partout où Claude Code s'exécute sur cette machine ; Ce qu'un développeur peut modifier couvre les droits d'administrateur local et les outils autres que Claude Code.
Les paramètres gérés vous atteignent via les mécanismes de livraison sur la page des paramètres gérés, le plus souvent :
Dans une session Cowork qui s'exécute sur votre machine dans l'application Claude Desktop, Claude Code ne récupère pas les paramètres gérés par le serveur à partir de la console d'administration claude.ai, et il lit la politique déployée sur votre appareil sauf si la configuration Claude Desktop de votre organisation définit requireCoworkFullVmSandbox. Où et quand une politique s'applique couvre Cowork et les sessions cloud.
Vous pouvez modifier un paramètre à partir du menu /config, en éditant un fichier de paramètres, ou pour une session à partir de la ligne de commande.
L'invite système de Claude Code n'est pas publiée. Pour donner à Claude des instructions permanentes, utilisez les fichiers CLAUDE.md ou l'indicateur --append-system-prompt.
Utilisez le menu /config
Exécutez /config à l'intérieur de Claude Code et ouvrez l'onglet Config. Il énumère un petit ensemble d'options personnelles comme le thème, le mode éditeur, et la sortie détaillée, pas chaque clé de paramètres. Sélectionnez une option pour la modifier ; Claude Code l'enregistre pour vous :
La plupart des options : ~/.claude/settings.json
Quelques options, comme Afficher les conseils : .claude/settings.local.json
Pour définir une option sans le menu, passez key=value, comme /config verbose=true.
Éditez un fichier de paramètres
Ouvrez le fichier de paramètres pour la portée que vous voulez dans votre éditeur et ajoutez ou modifiez une clé. Les fichiers de paramètres sont du JSON strict : un commentaire // ou une virgule finale est une erreur de syntaxe, et Claude Code signale le fichier comme une Erreur de paramètres au prochain démarrage. Par exemple, pour laisser Claude Code exécuter vos commandes lint et test sans demander et l'empêcher de lire les fichiers .env, ajoutez ceci à ~/.claude/settings.json :
{"$schema": "https://json.schemastore.org/claude-code-settings.json",
"permissions": {"allow": ["Bash(npm run lint)",
"Bash(npm run test *)"],
"deny": ["Read(./.env)",
"Read(./.env.*)"]}}
Chaque entrée sous permissions est une règle qui nomme un outil et ce qu'il peut faire ; Configurer les permissions explique la syntaxe. La ligne $schema pointe vers le schéma JSON publié pour les paramètres Claude Code, qui vous donne l'autocomplétion et la validation en ligne dans VS Code, Cursor, et tout autre éditeur qui supporte le schéma JSON. Le schéma peut être en retard par rapport aux versions CLI les plus récentes, donc un avertissement de validation sur une clé récemment documentée ne signifie pas que votre configuration est invalide.
Après avoir enregistré, exécutez /status à l'intérieur de Claude Code pour confirmer que le fichier a été chargé ; Confirmez ce qui a été chargé dit ce que la ligne Setting sources affiche et comment un fichier cassé est signalé.
Pour un fichier personnel complet, un fichier d'équipe, et un fichier d'organisation, chacun affiché avec un commentaire sur chaque clé qu'il définit, voir les fichiers de paramètres d'exemple.
Modifiez un paramètre pour une session
Pour essayer une valeur sans l'enregistrer, définissez-la quand vous démarrez Claude Code. La valeur s'applique à cette session et vos fichiers de paramètres restent comme ils étaient. Vous avez trois façons de le faire :
--settings : passez une clé en JSON, en ligne ou comme chemin vers un fichier. Claude Code l'applique au-dessus de vos fichiers utilisateur, projet et locaux et en dessous des paramètres gérés. Il peut définir n'importe quelle clé que votre fichier de paramètres utilisateur peut définir ; il ne peut pas définir les clés Managed ou Global config.
Un indicateur pour cette clé : certaines clés ont leur propre indicateur, comme --model pour model et --effort pour effortLevel et modelSettings.
Une variable d'environnement : exportez la variable appairée de la clé avant d'exécuter claude, comme ANTHROPIC_MODEL pour model.
L'entrée de chaque clé sur la référence des paramètres énumère ses remplacements par session et lequel a la priorité, donc vérifiez l'entrée pour la clé que vous voulez modifier.
Les commandes que vous exécutez à l'intérieur d'une session enregistrent généralement votre choix : quand vous modifiez un paramètre dans /config, Claude Code l'écrit dans vos fichiers de paramètres, et /model enregistre la valeur comme votre défaut pour les nouvelles sessions.
Si vous appuyez sur s dans le sélecteur /model, Claude Code bascule le modèle sans l'enregistrer comme votre défaut utilisateur. Ajustez le niveau d'effort indique quels choix /effort Claude Code enregistre comme votre défaut pour le modèle que vous utilisez et lesquels s'appliquent à la session actuelle uniquement.
Par exemple, pour démarrer une session sur Opus sans modifier votre défaut :
claude --settings'{"model": "claude-opus-4-8"}'
Quand les modifications prennent effet
Claude Code surveille vos fichiers de paramètres et les recharge quand ils changent, donc il applique la plupart des modifications à la session en cours sans redémarrage, y compris les modifications à permissions, hooks, et les assistants d'identifiants comme apiKeyHelper. Claude Code charge aussi un fichier de paramètres que vous créez en session si son répertoire existait quand la session a commencé. Pour le dossier .claude/ du projet, il charge le fichier même quand vous créez le dossier dans la même session.
Le rechargement couvre les paramètres utilisateur, projet, locaux et gérés, et Claude Code exécute le hook ConfigChange pour chaque changement de fichier de paramètres qu'il détecte, pas pour les paramètres gérés qui arrivent de MDM ou de la console claude.ai. Les paramètres gérés qui arrivent via MDM ou de la console claude.ai atteignent une session en cours selon un calendrier plutôt que sur enregistrement ; le tableau de livraison le donne par source.
Claude Code lit certaines clés une seule fois, au démarrage de la session, donc une modification à l'une d'elles n'atteint pas la session en cours. Les clés côté administrateur qui attendent aussi un redémarrage, comme requiredMinimumVersion, sont énumérées sous où et quand une politique s'applique. Celles que vous êtes le plus susceptible de modifier en session :
model : utilisez /model pour basculer en session. Chaque modèle a son propre cache d'invite, donc la première demande après un basculement relit la conversation entière sans cache ; voir Basculer les modèles
Exécutez /status à l'intérieur de Claude Code pour voir quelles sources de paramètres sont actives. L'onglet Status inclut une ligne Setting sources qui énumère chaque fichier de paramètres que Claude Code a chargé pour la session actuelle, comme User settings ou Project local settings. Quand les paramètres gérés sont en vigueur, l'entrée des paramètres gérés affiche entre parenthèses comment ils ont atteint votre machine.
La ligne confirme quels fichiers Claude Code a lus ; elle n'affiche pas quel fichier a fourni chaque clé. Pour énumérer les entrées que Claude Code a rejetées, exécutez claude doctor ; pour un modèle que les paramètres de projet ou gérés définissent, l'en-tête de démarrage nomme le fichier qui l'a défini. /status et /config ouvrent le même dialogue sur des onglets différents, et l'onglet Config n'est pas une vue de vos contenus settings.json.
Réparez un fichier de paramètres cassé
Si vous faites une erreur de frappe JSON ou définissez une clé à une valeur que Claude Code n'accepte pas, Claude Code vous le dit au début d'une session interactive. Ce qu'il affiche dépend de la quantité du fichier affectée :
Erreur de paramètres : un fichier utilisateur, projet ou local a du JSON invalide ou une valeur que le schéma rejette. Au début d'une session interactive, Claude Code affiche un dialogue qui vous permet de corriger le fichier avec l'aide de Claude, de quitter, ou de continuer sans les paramètres cassés.
Avertissement de paramètres : seules les entrées individuelles échouent, comme une règle de permission mal formée ou un nom d'événement hook inconnu. Claude Code ignore ces valeurs et garde le reste du fichier en vigueur.
Erreur de configuration : ~/.claude.json ne peut pas être analysé. Claude Code copie le fichier cassé à ~/.claude/backups/.claude.json.corrupted.<timestamp> et demande si vous voulez quitter et le corriger à la main ou réinitialiser à la configuration par défaut ; une exécution -p imprime l'erreur et quitte. Pour récupérer votre état précédent, copiez l'un des cinq fichiers .claude.json.backup.<timestamp> les plus récents dans ~/.claude/backups/, que Claude Code enregistre avant d'écrire le fichier.
Après avoir continué, exécutez /status pour voir les fichiers affectés et claude doctor pour les détails de chaque erreur.
Une exécution -p n'affiche aucun dialogue. Sauf si un document de paramètres gérés ne peut pas être analysé, Claude Code ignore le fichier cassé ou les valeurs et continue avec le reste, donc après une exécution -p qui ignore un paramètre, exécutez claude doctor pour voir ce qu'il a supprimé.
Précédence des paramètres
Quand la même clé apparaît à plus d'un endroit, Claude Code utilise la valeur du niveau le plus élevé qui la définit. La pile ci-dessous montre les niveaux, le plus élevé en haut ; une clé à un niveau plus élevé remplace la même clé n'importe où en dessous.
En ordre, priorité la plus élevée en premier :
Paramètres gérés : paramètres que votre organisation déploie, par un fichier managed-settings.json, une politique MDM, ou paramètres gérés par le serveur à partir de la console claude.ai. Rien de ce que vous définissez ne les remplace : une clé que vous passez avec --settings ne remplace pas la même clé gérée, et un indicateur comme --model choisit uniquement parmi les modèles que votre organisation autorise. Un model géré définit le modèle avec lequel chaque session démarre, et vous pouvez toujours basculer avec /model ; le verrou est availableModels, qui contraint /model, --model, et la clé model dans vos propres fichiers. Quand votre organisation fournit plus d'une source gérée, les règles pour la précédence au sein du niveau géré disent ce que Claude Code lit à partir de chacune.
Arguments de ligne de commande : indicateurs que vous passez quand vous démarrez claude à partir d'un terminal, pour une session ; voir Modifiez un paramètre pour une session. Claude Code fusionne le JSON que vous passez avec --settings <file-or-json> avec vos fichiers de paramètres par les mêmes règles que les autres niveaux : il prend une clé que vous définissez ici sur la même clé dans les paramètres locaux, projet ou utilisateur, et garde la valeur de niveau inférieur pour une clé que vous omettez.
Paramètres de projet local (.claude/settings.local.json) : vos paramètres personnels pour ce projet.
Paramètres de projet partagés (.claude/settings.json) : paramètres que votre équipe valide dans le contrôle de source.
Paramètres utilisateur (~/.claude/settings.json) : vos paramètres personnels pour chaque projet.
Les variables d'environnement ne sont pas un niveau dans cette pile. Quand un comportement a à la fois une variable shell et une clé de paramètres, lequel s'applique est décidé par paire, pas par niveau : ANTHROPIC_MODEL exportée dans votre shell s'applique sur la clé model à partir de n'importe quel fichier, tandis que ANTHROPIC_DEFAULT_MODEL s'applique uniquement quand aucun fichier ne définit model. La référence des variables d'environnement dit quelles clés ont une paire et lequel Claude Code lit en premier. Un bloc env à l'intérieur d'un fichier de paramètres est une clé ordinaire et suit les niveaux ci-dessus.
Pour quelques clés sensibles à la sécurité, Claude Code honore une valeur plus stricte d'un niveau inférieur sur une valeur gérée ; Exceptions à la précédence des paramètres gérés les énumère.
Les listes fusionnent au lieu de remplacer
Quand vous définissez la même clé de liste, comme permissions.allow, dans plus d'un fichier, Claude Code combine les listes au lieu de choisir une, donc chaque fichier peut ajouter des entrées sans supprimer celles d'un autre fichier. Quatre clés qui contiennent des listes de modèles ou des entrées par modèle suivent leurs propres règles :
fallbackModel est une chaîne ordonnée où la position porte du sens, donc Claude Code prend la valeur entière du fichier de priorité la plus élevée qui la définit.
modelPicker contient une liste ordonnée de lignes plus un indicateur de remplacement, donc Claude Code ne fusionne jamais les lignes de deux sources. Il prend la valeur entière du plus élevé des paramètres gérés, --settings, et des paramètres utilisateur qui la définit, et ignore la clé dans les paramètres de projet et locaux. Nécessite Claude Code v2.1.242 ou ultérieur.
availableModels : quand les paramètres gérés que Claude Code applique la définissent, Claude Code applique cette liste telle quelle et ignore les entrées que vous ajoutez dans les paramètres utilisateur, projet ou locaux, sauf si une application qui intègre Claude Code fournit sa propre liste de modèles ; voir Exceptions à la précédence des paramètres gérés. Entre les sources gérées, la liste ne fusionne jamais non plus ; comment Claude Code combine les sources gérées dit quelle liste de source s'applique. Entre les portées non gérées, Claude Code fusionne les tableaux comme d'habitude.
modelSettings : Claude Code la résout un modèle à la fois, avec effortLevel. L'entrée modelSettings indique quel fichier s'applique à un modèle.
Exemples de précédence
Pendant que Claude travaille, Claude Code affiche un conseil d'une ligne sous le spinner, comme « Utilisez /config pour modifier votre mode de permission par défaut (y compris Plan Mode) ». Supposons que vous vouliez ces conseils désactivés, donc vous définissez spinnerTipsEnabled à false dans ~/.claude/settings.json. Chaque scénario ci-dessous est quelque chose qui peut les réactiver, et ce que vous pouvez faire à ce sujet.
Les paramètres d'équipe remplacent les paramètres personnels
Le .claude/settings.json de votre équipe le définit à true. Claude Code utilise la valeur du projet parce que le projet partagé se situe au-dessus de l'utilisateur, donc vous voyez des conseils dans ce projet et nulle part ailleurs.
Vous pouvez récupérer votre valeur : ajoutez "spinnerTipsEnabled": false à .claude/settings.local.json dans ce projet. Le projet local se situe au-dessus du projet partagé, donc vos sessions là-bas arrêtent d'afficher des conseils et les sessions de vos coéquipiers ne changent pas.
Les paramètres de l'organisation remplacent tout
Les paramètres gérés de votre organisation le définissent à true. Rien de ce que vous mettez dans les paramètres utilisateur, projet ou locaux n'éteint les conseils, et non plus --settings. Géré est le niveau le plus élevé.
Vous ne pouvez pas récupérer votre valeur. Exécutez /status pour voir quelle source gérée s'applique, et demandez à votre administrateur si la politique devrait changer.
La ligne de commande remplace vos fichiers pour une session
Vous avez démarré la session avec claude --settings '{"spinnerTipsEnabled": true}'. La ligne de commande se situe au-dessus de chaque fichier sauf géré, donc cette session affiche des conseils même si vos fichiers disent false.
Vous récupérez votre valeur à la session suivante ; --settings dure une session et n'écrit dans aucun fichier.
Un indicateur ou une variable d'environnement définit la même chose
Certaines clés ont un indicateur de ligne de commande ou une variable d'environnement qui remplace la valeur des paramètres indépendamment du fichier qui l'a défini : ANTHROPIC_MODEL remplace le paramètre model, et --model remplace les deux pour une session.
Que vous puissiez récupérer votre valeur dépend de la clé : supprimez la variable ou retirez l'indicateur, et vérifiez l'entrée de la clé sur la référence des paramètres et la ligne de la variable sur la référence des variables d'environnement pour lequel Claude Code utilise.
Dépannez un paramètre qui ne s'applique pas
Quand vous définissez une clé et que Claude Code ne se comporte pas comme si vous l'aviez, commencez par /status pour voir quels fichiers il a chargés, puis trouvez votre symptôme ci-dessous. Déboguer votre configuration couvre les vérifications plus larges, y compris un test de configuration propre.
Une valeur que vous avez définie est ignorée
Quelque chose d'autre définit la même clé, le fichier ne peut pas définir cette valeur, ou le fichier n'a pas été chargé :
Un niveau plus élevé la définit. Un autre fichier de paramètres, un indicateur --settings, ou une source gérée définit la clé au-dessus de la vôtre ; la pile dit lequel. Un indicateur ou une variable d'environnement peut aussi remplacer la clé de son propre chef, décidé clé par clé ; l'entrée de la clé sur la référence des paramètres dit lequel Claude Code utilise, et l'entrée env couvre une valeur env gérée par rapport à une exportation shell.
Le fichier ne peut pas définir cette valeur. Les valeurs permissions.defaultModeauto et bypassPermissions ne prennent pas effet à partir des paramètres de projet ou locaux ; définissez-les dans les paramètres utilisateur ou gérés à la place, ou passez --permission-mode pour une session. Avant v2.1.257, bypassPermissions prenait effet à partir de n'importe quel fichier.
Le fichier est cassé. Du JSON invalide ou une valeur rejetée fait que Claude Code ignore le fichier ou l'entrée ; voir Réparez un fichier de paramètres cassé.
Un changement que vous avez fait dans Claude Code est perdu dans les nouvelles sessions
Quand vous enregistrez un choix pour les nouvelles sessions à partir de Claude Code, comme un modèle par défaut avec /model, Claude Code l'écrit dans votre fichier de paramètres utilisateur, ~/.claude/settings.json. Si vous ne pouvez pas écrire dans ce fichier, par exemple parce qu'un autre outil le génère ou le lie à une copie en lecture seule, le changement s'applique à la session actuelle et est parti à la session suivante. Définissez la clé dans l'outil qui génère le fichier, ou remplacez le fichier par un que vous pouvez écrire.
Les sources gérées atteignent une session en cours selon le calendrier du tableau de livraison, donc redémarrez d'abord la session. Si /status nomme alors une source différente de celle que votre administrateur a modifiée, une source de priorité plus élevée s'applique ; Comment Claude Code combine les sources gérées donne l'ordre.
Une clé validée n'atteint pas les coéquipiers
Deux choses empêchent une clé dans .claude/settings.json de s'appliquer pour tout le monde qui la clone :
Claude Code ignore la clé dans un fichier de référentiel. Cherchez User, local, or managed, User or managed, Managed, ou Global config dans la colonne Scope de l'index des paramètres. Ces clés ne s'appliquent jamais à partir du fichier partagé, à part quelques-unes qu'un fichier de référentiel peut toujours désactiver. Chacune de ces entrées le dit sur sa ligne Scope. Les clés Global config s'appliquent uniquement à partir de ~/.claude.json.
La clé attend la confiance. Les règles permissions.allow, permissions.additionalDirectories, extraKnownMarketplaces, et la plupart des valeurs env s'appliquent uniquement après que chaque coéquipier fasse confiance au dossier. Jusqu'à ce qu'ils le fassent, ils voient toujours des invites et n'obtiennent pas les plugins d'une marketplace que le fichier déclare. Les règles deny et ask s'appliquent immédiatement.
Les règles de permission se combinent différemment que vous ne l'attendiez
Vous avez choisi « Oui, et ne me demande plus » sur une invite de permission mais vous êtes toujours invité pour le même outil. Ce choix a enregistré une règle allow dans votre fichier local, et une règle allow là ne surclasse pas une règle ask à partir d'un fichier de projet ou géré ; comment les règles de permission se combinent explique l'ordre. Dans l'extension VS Code, la carte d'approbation vous permet de choisir le fichier de destination, y compris le fichier partagé du projet, ce qui change la règle pour tout le monde ; dans la CLI, Claude Code écrit uniquement dans votre fichier local.
Les règles allow de votre organisation s'appliquent toujours à côté des vôtres. C'est attendu : Claude Code fusionne permissions.allow entre les portées, sauf si votre organisation définit allowManagedPermissionRulesOnly.
Exceptions à la précédence des paramètres gérés
Pour quelques clés dont les valeurs restreignent une session, Claude Code honore une valeur restrictive d'une portée qui ne pourrait autrement pas remplacer les paramètres gérés. Trouvez la clé dans ce tableau pour voir quelle valeur elle honore et d'où.
Un plafond inférieur à partir de n'importe quelle portée, y compris --settings
Honorée même quand les paramètres gérés que Claude Code applique définissent un plafond plus élevé ; le plafond le plus bas s'applique. Nécessite Claude Code v2.1.267 ou ultérieur
Une application qui exécute Claude Code à l'intérieur d'elle-même et définit CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST est aussi une exception. Claude Code prend la configuration de modèle de cette application sur les clés model, fallbackModel, modelPicker, et modelOverrides à partir de chaque source gérée, et sur les variables de sélection de modèle dans un bloc env géré, comme ANTHROPIC_MODEL et la famille ANTHROPIC_DEFAULT_*_MODEL. Claude Code garde une liste blanche availableModels gérée en vigueur sauf si l'application fournit la sienne.
Paramètres dans les sessions cloud
Une session cloud s'exécute dans un environnement cloud sur un clone frais de votre référentiel, pas sur votre machine. Cela change quels paramètres l'atteignent :
Paramètres de projet partagés (.claude/settings.json) : lus dans une session avec un référentiel, car le fichier fait partie du clone et la session démarre à l'intérieur. Validez un paramètre là pour l'appliquer dans ces sessions. Une session avec plusieurs référentiels démarre au-dessus des clones, donc à partir du .claude/settings.json de chaque référentiel, elle charge uniquement les plugins et les marketplaces que le fichier déclare, pas les règles de permission, les hooks, env, ou d'autres clés ; voir Ce qui se transfère de votre configuration.
Paramètres utilisateur et projet local (~/.claude/settings.json et .claude/settings.local.json) : non lus. Les deux restent sur votre machine, et le fichier local n'est pas dans le clone.
/config : dans votre navigateur sur claude.ai/code, ouvre la section Claude Code de vos paramètres claude.ai à la place de modifier une valeur. Pour modifier un paramètre pour une session cloud, définissez une variable d'environnement sur l'environnement, ou dans une session avec un référentiel, validez la clé dans le .claude/settings.json de ce référentiel.
Référence du répertoire Claude : chaque fichier que Claude Code lit, y compris les subagents, serveurs MCP, plugins, et CLAUDE.md
settings.md+6−5
470470
471Pour modifier un paramètre pour vous-même dans un projet sans le modifier pour vos coéquipiers, enregistrez-le dans `.claude/settings.local.json` à l'intérieur du projet. Claude Code applique ce fichier sur le `.claude/settings.json` validé, donc si le fichier de votre équipe définit `"model": "claude-sonnet-5"` et que vous voulez Opus, mettez `"model": "claude-opus-4-8"` dans votre fichier local et seules vos sessions changent.471Pour modifier un paramètre pour vous-même dans un projet sans le modifier pour vos coéquipiers, enregistrez-le dans `.claude/settings.local.json` à l'intérieur du projet. Claude Code applique ce fichier sur le `.claude/settings.json` validé, donc si le fichier de votre équipe définit `"model": "claude-sonnet-5"` et que vous voulez Opus, mettez `"model": "claude-opus-4-8"` dans votre fichier local et seules vos sessions changent.
472472
473Troischosesàsavoirsurle fichier local :473ClaudeCodeécritégalementdansce fichier,legarde hors de vos commits, et applique ses règles allow sans l'étape de confiance :
474474
475* **Claude Code l'écrit aussi.** Quand Claude demande la permission d'exécuter une commande Bash et que vous choisissez « Oui, et ne me demande plus », Claude Code enregistre cette [approbation de permission](/docs/fr/permissions#permission-system) ici comme une règle `allow`.475* **Claude Code l'écrit aussi.** Quand Claude demande la permission d'exécuter une commande Bash et que vous choisissez « Oui, et ne me demande plus », Claude Code enregistre cette [approbation de permission](/docs/fr/permissions#permission-system) ici comme une règle `allow`.
476* **Vous n'avez pas besoin de le gitignorer vous-même, sauf si vous l'avez créé à la main.** La première fois que Claude Code écrit le fichier dans un référentiel git qui ne l'ignore pas déjà, il ajoute `**/.claude/settings.local.json` à votre fichier d'exclusions git global, donc le fichier reste hors de vos commits dans chaque référentiel. Ce fichier est `core.excludesFile` quand votre configuration git globale le définit à un chemin absolu ou préfixé par `~` ; sinon c'est `$XDG_CONFIG_HOME/git/ignore`, ou `~/.config/git/ignore` quand `XDG_CONFIG_HOME` n'est pas défini. Si vous avez créé le fichier à la main et que Claude Code ne l'a pas encore écrit, ajoutez-le à `.gitignore` vous-même.476* **Vous n'avez pas besoin de le gitignorer vous-même, sauf si vous l'avez créé à la main.** La première fois que Claude Code écrit le fichier dans un référentiel git qui ne l'ignore pas déjà, il ajoute `**/.claude/settings.local.json` à votre fichier d'exclusions git global, donc le fichier reste hors de vos commits dans chaque référentiel. Ce fichier est `core.excludesFile` quand votre configuration git globale le définit à un chemin absolu ou préfixé par `~` ; sinon c'est `$XDG_CONFIG_HOME/git/ignore`, ou `~/.config/git/ignore` quand `XDG_CONFIG_HOME` n'est pas défini. Si vous avez créé le fichier à la main et que Claude Code ne l'a pas encore écrit, ajoutez-le à `.gitignore` vous-même.
765765
766Deux choses empêchent une clé dans `.claude/settings.json` de s'appliquer pour tout le monde qui la clone :766Deux choses empêchent une clé dans `.claude/settings.json` de s'appliquer pour tout le monde qui la clone :
767767
768* **Claude Code ignore la clé dans un fichier de référentiel.** Cherchez `User, local, or managed`, `User or managed`, `Managed`, ou `Global config` dans la colonne Scope de l'[index des paramètres](/docs/fr/settings-reference#settings-index) ;ces clés ne s'appliquent jamais à partir du fichier partagé, à part [`autoContinueAtUsageLimit`](/docs/fr/settings-reference#autocontinueatusagelimit), qu'un fichier de référentiel peut toujours éteindre : tant que le fichier définit la clé et aucune valeur utilisateur,`--settings`,ougéréene le fait, Claude Code litleparamètrecommeéteint. Les clés `Global config` s'appliquent uniquement à partir de `~/.claude.json`.768* **Claude Code ignore la clé dans un fichier de référentiel.** Cherchez `User, local, or managed`, `User or managed`, `Managed`, ou `Global config` dans la colonne Scope de l'[index des paramètres](/docs/fr/settings-reference#settings-index).Ces clés ne s'appliquent jamais à partir du fichier partagé, à part quelques-unes qu'un fichier de référentiel peut toujours désactiver.Chacunedecesentrées le ditsursaligneScope. Les clés `Global config` s'appliquent uniquement à partir de `~/.claude.json`.
769* **La clé attend la confiance.** Les règles `permissions.allow`, `permissions.additionalDirectories`, `extraKnownMarketplaces`, et la plupart des valeurs [`env`](/docs/fr/settings-reference#env) s'appliquent uniquement après que chaque coéquipier [fasse confiance au dossier](/docs/fr/permissions#project-allow-rules-and-workspace-trust). Jusqu'à ce qu'ils le fassent, ils voient toujours des invites et n'obtiennent pas les plugins d'une marketplace que le fichier déclare. Les règles `deny` et `ask` s'appliquent immédiatement.769* **La clé attend la confiance.** Les règles `permissions.allow`, `permissions.additionalDirectories`, `extraKnownMarketplaces`, et la plupart des valeurs [`env`](/docs/fr/settings-reference#env) s'appliquent uniquement après que chaque coéquipier [fasse confiance au dossier](/docs/fr/permissions#project-allow-rules-and-workspace-trust). Jusqu'à ce qu'ils le fassent, ils voient toujours des invites et n'obtiennent pas les plugins d'une marketplace que le fichier déclare. Les règles `deny` et `ask` s'appliquent immédiatement.
792| [`crossSessionInbound`](/docs/fr/settings-reference#crosssessioninbound) | Une valeur plus stricte à partir de `.claude/settings.json` ou `.claude/settings.local.json`, sur l'échelle `accept` \< `hold` \< `refuse` | Honorée sur les valeurs gérées, `--settings`, et utilisateur ; une valeur de projet ou local qui n'est pas plus stricte est ignorée |792| [`crossSessionInbound`](/docs/fr/settings-reference#crosssessioninbound) | Une valeur plus stricte à partir de `.claude/settings.json` ou `.claude/settings.local.json`, sur l'échelle `accept` \< `hold` \< `refuse` | Honorée sur les valeurs gérées, `--settings`, et utilisateur ; une valeur de projet ou local qui n'est pas plus stricte est ignorée |
793| [`useAutoModeDuringPlan`](/docs/fr/settings-reference#useautomodeduringplan) | `false` à partir de n'importe quelle source gérée, `--settings`, `~/.claude/settings.json`, ou `.claude/settings.local.json` | Honorée même quand la source gérée gagnante définit `true` ; un `false` dans `.claude/settings.json` est ignoré |793| [`useAutoModeDuringPlan`](/docs/fr/settings-reference#useautomodeduringplan) | `false` à partir de n'importe quelle source gérée, `--settings`, `~/.claude/settings.json`, ou `.claude/settings.local.json` | Honorée même quand la source gérée gagnante définit `true` ; un `false` dans `.claude/settings.json` est ignoré |
794| [`syncClaudeAiSkills`](/docs/fr/settings-reference#syncclaudeaiskills) | `false` à partir de n'importe quelle source gérée, `--settings`, `~/.claude/settings.json`, ou `.claude/settings.local.json` | Honorée même quand la source gérée gagnante définit `true` ; un `false` dans `.claude/settings.json` est ignoré |794| [`syncClaudeAiSkills`](/docs/fr/settings-reference#syncclaudeaiskills) | `false` à partir de n'importe quelle source gérée, `--settings`, `~/.claude/settings.json`, ou `.claude/settings.local.json` | Honorée même quand la source gérée gagnante définit `true` ; un `false` dans `.claude/settings.json` est ignoré |
795| [`syncClaudeAiPlugins`](/docs/fr/settings-reference#syncclaudeaiplugins) | `false` à partir de n'importe quelle source gérée, `--settings`, `~/.claude/settings.json`, ou `.claude/settings.local.json` | Honorée même quand la source gérée gagnante définit `true` ; un `false` dans `.claude/settings.json` est ignoré |
795| [`maxEffortLevel`](/docs/fr/settings-reference#maxeffortlevel) | Un plafond inférieur à partir de n'importe quelle portée, y compris `--settings` | Honorée même quand les paramètres gérés que Claude Code applique définissent un plafond plus élevé ; le plafond le plus bas s'applique. Nécessite Claude Code v2.1.267 ou ultérieur |796| [`maxEffortLevel`](/docs/fr/settings-reference#maxeffortlevel) | Un plafond inférieur à partir de n'importe quelle portée, y compris `--settings` | Honorée même quand les paramètres gérés que Claude Code applique définissent un plafond plus élevé ; le plafond le plus bas s'applique. Nécessite Claude Code v2.1.267 ou ultérieur |
796797
797Une application qui exécute Claude Code à l'intérieur d'elle-même et définit [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/fr/env-vars) est aussi une exception. Claude Code prend la configuration de modèle de cette application sur les clés `model`, `fallbackModel`, `modelPicker`, et `modelOverrides` à partir de chaque source gérée, et sur les variables de sélection de modèle dans un bloc `env` géré, comme `ANTHROPIC_MODEL` et la famille `ANTHROPIC_DEFAULT_*_MODEL`. Claude Code garde une liste blanche [`availableModels`](/docs/fr/settings-reference#availablemodels) gérée en vigueur sauf si l'application fournit la sienne.798Une application qui exécute Claude Code à l'intérieur d'elle-même et définit [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/fr/env-vars) est aussi une exception. Claude Code prend la configuration de modèle de cette application sur les clés `model`, `fallbackModel`, `modelPicker`, et `modelOverrides` à partir de chaque source gérée, et sur les variables de sélection de modèle dans un bloc `env` géré, comme `ANTHROPIC_MODEL` et la famille `ANTHROPIC_DEFAULT_*_MODEL`. Claude Code garde une liste blanche [`availableModels`](/docs/fr/settings-reference#availablemodels) gérée en vigueur sauf si l'application fournit la sienne.
800 Paramètres dans les sessions cloud801 Paramètres dans les sessions cloud
801</h2>802</h2>
802803
803Une session cloud, sur [Claude Code sur le web](/docs/fr/claude-code-on-the-web) ou à partir de [`claude--cloud`](/docs/fr/claude-code-on-the-web#from-terminal-to-web), s'exécute dans un [environnement cloud](/docs/fr/cloud-environments) sur un clone frais de votre référentiel, pas sur votre machine. Cela change quels paramètres l'atteignent :804Une [session cloud](/docs/fr/claude-code-on-the-web) s'exécute dans un [environnement cloud](/docs/fr/cloud-environments) sur un clone frais de votre référentiel, pas sur votre machine. Cela change quels paramètres l'atteignent :
804805
805* **Paramètres de projet partagés** (`.claude/settings.json`) : lus,parceque le fichier fait partie du clone. Validez un paramètre là pour l'appliquer dans les sessions cloud.806* **Paramètres de projet partagés** (`.claude/settings.json`) : lus dansunesession avec un référentiel, car le fichier fait partie du clone et la session démarre à l'intérieur. Validez un paramètre là pour l'appliquer dans ces sessions.Une session avec plusieurs référentiels démarre au-dessus des clones, donc à partir du `.claude/settings.json` de chaque référentiel, elle charge uniquement les plugins et les marketplaces que le fichier déclare, pas les règles de permission, les hooks, `env`, ou d'autres clés ; voir [Ce qui se transfère de votre configuration](/docs/fr/cloud-environments#what-carries-over-from-your-setup).
806* **Paramètres utilisateur et projet local** (`~/.claude/settings.json` et `.claude/settings.local.json`) : non lus. Les deux restent sur votre machine, et le fichier local n'est pas dans le clone.807* **Paramètres utilisateur et projet local** (`~/.claude/settings.json` et `.claude/settings.local.json`) : non lus. Les deux restent sur votre machine, et le fichier local n'est pas dans le clone.
807* **Paramètres gérés** : seuls les [paramètres gérés par le serveur](/docs/fr/server-managed-settings) atteignent une session cloud ; un fichier `managed-settings.json` ou un profil MDM sur votre appareil ne le font pas. Un [environnement auto-hébergé](/docs/fr/self-hosted-environments) lit aussi le fichier de paramètres gérés dans son image de runner. [Comment Claude Code combine les sources gérées](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) dit quand ce fichier s'applique.808* **Paramètres gérés** : seuls les [paramètres gérés par le serveur](/docs/fr/server-managed-settings) atteignent une session cloud ; un fichier `managed-settings.json` ou un profil MDM sur votre appareil ne le font pas. Un [environnement auto-hébergé](/docs/fr/self-hosted-environments) lit aussi le fichier de paramètres gérés dans son image de runner. [Comment Claude Code combine les sources gérées](/docs/fr/managed-settings#how-claude-code-combines-managed-sources) dit quand ce fichier s'applique.
808* **`/config`** : surleweb, ouvre la section Claude Code de vos paramètres claude.ai à la place de modifier une valeur. Pour modifier un paramètre pour une session cloud, définissez une [variable d'environnement](/docs/fr/cloud-environments#set-environment-variables) sur l'environnement ou validez la clé dans le `.claude/settings.json` du référentiel.809* **`/config`** : dansvotrenavigateur sur claude.ai/code, ouvre la section Claude Code de vos paramètres claude.ai à la place de modifier une valeur. Pour modifier un paramètre pour une session cloud, définissez une [variable d'environnement](/docs/fr/cloud-environments#set-environment-variables) sur l'environnement, ou dans une session avec un référentiel, validez la clé dans le `.claude/settings.json` dece référentiel.
809810
810[Ce qui se transfère de votre configuration](/docs/fr/cloud-environments#what-carries-over-from-your-setup) énumère le reste : `CLAUDE.md`, skills, serveurs MCP, plugins, et identifiants.811[Ce qui se transfère de votre configuration](/docs/fr/cloud-environments#what-carries-over-from-your-setup) énumère le reste : `CLAUDE.md`, skills, serveurs MCP, plugins, et identifiants.