~/.claude.json à la place. Pour choisir un fichier ou vérifier la précédence, commencez par Fichiers de paramètres et précédence.
Index des paramètres
Chaque clé ci-dessous renvoie à son entrée. La portée liste les fichiers dans lesquels elle peut aller :User est ~/.claude/settings.json, Project est .claude/settings.json, Local est .claude/settings.local.json, et Managed est ce que votre organisation déploie. Any file signifie les quatre, et Global config signifie ~/.claude.json.
Modèle et réponses
Choisissez les modèles que Claude Code utilise et comment il répond. Pour savoir comment ces paramètres interagissent avec la commande/model et les variables d’environnement, consultez Configuration du modèle.
advisorModel
Choisissez quel modèle répond quand Claude appelle l’outil advisor côté serveur. Laissez-le non défini pour désactiver l’advisor. L’advisor doit être au moins aussi capable que votre modèle principal. Consultez Choisir un modèle advisor pour connaître les appairements acceptés et ce qui se passe quand vous en choisissez un qui n’est pas accepté.
Vous n’éditez généralement pas cette clé à la main. Exécutez /advisor pour ouvrir un sélecteur qui affiche le choix actuel, les modèles qui peuvent conseiller, et Pas d’advisor. Claude Code enregistre votre choix dans cette clé dans ~/.claude/settings.json. Si vous choisissez à partir d’un client Remote Control ou dans une session attachée à un worker distant, le choix s’applique à cette session uniquement et ne modifie pas cette clé.
Si votre compte nécessite le consentement usage-credits, acceptez-le d’abord en exécutant /model fable. Jusqu’à ce que vous le fassiez, choisir Fable dans /advisor n’enregistre rien et Claude Code vous dit d’exécuter /model fable d’abord.
- Portée :
Tout fichier - Type : chaîne, l’un des alias
"fable","opus", ou"sonnet", qui se résolvent à la version par défaut actuelle de Claude Code pour cette famille de modèles, ou un ID de modèle complet tel que"claude-opus-5-5" - Par défaut : non défini, donc l’advisor est désactivé
- Remplacements par session :
--advisora la priorité sur cette clé pour une session.CLAUDE_CODE_DISABLE_ADVISOR_TOOLdésactive l’advisor, et cette clé ne peut pas le réactiver
settings.json
"fable" nécessite l’accès à Fable.
alwaysThinkingEnabled
Désactivez la réflexion étendue pour chaque session en définissant ceci à false. La réflexion est activée par défaut, donc true ne change rien. La plupart des gens définissent ceci via /config plutôt qu’en éditant le fichier.
Sur les modèles qui réfléchissent toujours, comme Opus 5.5, Sonnet 5.5, Haiku 5.5 et les modèles Fable, false n’a aucun effet. Sur les fournisseurs tiers, Claude Code omet le paramètre thinking au lieu de désactiver la réflexion, donc les modèles de raisonnement adaptatif peuvent toujours réfléchir. Avec la réflexion désactivée sur l’API Anthropic, Claude Code envoie l’effort high au lieu d’un niveau supérieur aux modèles qu’il sait ne pas accepter cette combinaison, comme Opus 5.
- Portée :
Tout fichier - Type : Booléen
true: aucun effet ; la réflexion est déjà activéefalse: Claude Code désactive la réflexion étendue pour chaque session
- Par défaut : non défini, donc la réflexion est activée pour les modèles qui la supportent
- Remplacements par session :
MAX_THINKING_TOKENSa la priorité sur cette clé pour une session :0désactive la réflexion, sous les mêmes limites de modèle et de fournisseur quefalse, et une valeur positive active la réflexion même quand cette clé estfalse. Sur les modèles de raisonnement adaptatif, le nombre lui-même est ignoré
settings.json
availableModels
Limitez les modèles que les gens peuvent sélectionner pour la session principale, les sous-agents, les compétences, et l’advisor. Une liste gérée contraint /model, --model, et la clé model dans les fichiers propres d’un développeur ; un modèle en dehors ne peut pas être sélectionné. Avec la correspondance de préfixe par défaut, cela ne touche pas l’option Par défaut en soi ; associez-le à enforceAvailableModels pour cela.
- Portée :
Tout fichier. Déployez-le dans les paramètres gérés pour l’appliquer à une organisation. - Type : tableau d’alias de modèles ou d’ID
- Par défaut : non défini, donc chaque modèle est disponible
settings.json
"claude-opus-5" permet également les versions ultérieures qui l’étendent, comme Opus 5.5. Pour bloquer l’une de ces versions, utilisez deniedModels. Pour que chaque entrée d’ID de modèle permette uniquement la version qu’elle nomme, utilisez availableModelsMatch. Consultez Restreindre la sélection du modèle.
availableModelsMatch
Choisissez comment les entrées availableModels correspondent aux ID de modèles. Par défaut, une entrée d’ID de modèle permet également les versions ultérieures qui l’étendent, donc "claude-opus-5" permet Opus 5.5. Avec "exact", chaque entrée d’ID de modèle permet uniquement la version qu’elle nomme, donc une version plus récente de ce modèle reste bloquée jusqu’à ce que vous la listiez. Nécessite Claude Code v2.1.283 ou ultérieur.
- Portée :
Géré. Claude Code ignore la clé dans les paramètres utilisateur, de projet et locaux et dans--settings, avec un avertissement - Type : chaîne, l’une de :
"prefix": une entrée d’ID de modèle permet sa version et tout ID de modèle qui l’étend avec un autre segment"exact": une entrée d’ID de modèle permet uniquement la version qu’elle nomme, y compris les ID datés de cette version, donc"claude-opus-5"permet Opus 5 mais pasclaude-opus-5-5. Un alias de famille comme"opus"permet toujours la famille entière, et les entréesbest,opusplan, etdefaultsont ignorées
- Par défaut :
"prefix"
managed-settings.json
"exact", l’option Par défaut est également limitée aux modèles énumérés chaque fois que la liste nomme au moins un modèle ou une famille. Consultez Bloquer des modèles ou des versions spécifiques.
deniedModels
Bloquez des modèles spécifiques, avec ou sans une liste d’autorisation availableModels et même quand cette liste les permet. Claude Code masque un modèle bloqué du sélecteur /model, et le modèle ne peut pas être sélectionné nulle part où availableModels est appliqué. Une session sur l’option Par défaut n’exécute pas non plus un modèle bloqué, comme Bloquer des modèles ou des versions spécifiques le décrit. Nécessite Claude Code v2.1.283 ou ultérieur.
- Portée :
Géré. Claude Code ignore la clé dans les paramètres utilisateur, de projet et locaux et dans--settings, avec un avertissement - Type : tableau d’alias de modèles ou d’ID
- Un alias de famille comme
"opus"bloque chaque modèle de cette famille - Un ID de modèle comme
"claude-opus-5-5"bloque cette version dans chaque orthographe, y compris les ID datés et spécifiques au fournisseur - Un ID de modèle sans version mineure, comme
"claude-opus-5", bloque également les versions mineures ultérieures comme Opus 5.5. Écrivez"claude-opus-5-0"pour bloquer Opus 5 seul - Les entrées
best,opusplan, etdefaultsont ignorées
- Un alias de famille comme
- Par défaut : non défini, donc aucun modèle n’est bloqué
managed-settings.json
effortLevel
Définissez un niveau d’effort par défaut pour les modèles pour lesquels vous n’avez pas enregistré de niveau. Les niveaux inférieurs sont plus rapides et moins chers sur les tâches simples, et les niveaux supérieurs raisonnent plus profondément sur les problèmes complexes.
Quand vous exécutez /effort low, medium, high, ou xhigh dans une session interactive sur votre machine, Claude Code enregistre le niveau pour le modèle actif sous modelSettings plutôt que d’écrire cette clé. Avant la v2.1.251, /effort écrivait cette clé.
Dans le même fichier de paramètres, Claude Code utilise le niveau enregistré d’un modèle plutôt que cette clé. modelSettings indique la précédence entre fichiers.
Dans une session attachée à un worker distant, dans une exécution -p, et dans l’Agent SDK, /effort s’applique à cette session uniquement. Ajuster le niveau d’effort énumère les choix interactifs qui s’appliquent également à cette session uniquement. Le message que /effort affiche indique ce qui s’est passé.
- Portée :
Tout fichier - Type : chaîne, l’une de :
"low": le moins de raisonnement, pour les tâches courtes, délimitées, sensibles à la latence qui ne sont pas sensibles à l’intelligence"medium": réduit l’utilisation des tokens pour le travail sensible aux coûts qui peut faire des compromis sur l’intelligence"high": équilibre l’utilisation des tokens et l’intelligence"xhigh": raisonnement plus profond avec une dépense de tokens plus élevée
- Par défaut : non défini
- Remplacements par session :
--efforta la priorité sur cette clé pour une session, etCLAUDE_CODE_EFFORT_LEVELa la priorité sur les deux
settings.json
~/.claude/settings.json, cette clé est la forme plus ancienne que /effort écrivait avant d’enregistrer les niveaux par modèle, et elle continue de s’appliquer où elle s’appliquait avant, sur Opus 5, Fable 5.1, et les modèles antérieurs. Opus 5.5 et les modèles publiés après l’ignorent et commencent à leur propre défaut jusqu’à ce que vous enregistriez un niveau pour eux, que /effort écrit sous modelSettings. Dans les paramètres de projet, locaux et gérés, et avec --settings, cette clé s’applique à chaque modèle.
enforceAvailableModels
Le sélecteur /model a une option Par défaut, et paramètre de modèle par défaut décrit le modèle auquel il se résout. Une liste d’autorisation availableModels limite les modèles que vous pouvez nommer, mais avec la correspondance de préfixe par défaut elle ne remapppe pas le défaut de votre type de compte, donc Par défaut peut toujours se résoudre à un modèle en dehors de la liste. Cette clé comble cette lacune. Nécessite Claude Code v2.1.175 ou ultérieur.
Quand votre organisation déploie des paramètres gérés, Claude Code lit cette clé à partir de la source gérée uniquement et l’ignore dans vos autres fichiers.
Pour savoir comment cette clé s’applique aux vérifications de modèle au démarrage, consultez Amazon Bedrock et la plateforme Agent de Google Cloud.
- Portée :
Tout fichier - Type : Booléen
true: quand Par défaut se résoudrait à un modèle en dehors deavailableModels, Claude Code le résout au premier modèle disponible de la listefalse: cette clé ne change pas comment Par défaut se résout
- Par défaut :
false
settings.json
availableModels est non défini ou vide. Consultez Appliquer la liste d’autorisation au modèle Par défaut. Nécessite Claude Code v2.1.175 ou ultérieur.
fallbackModel
Nommez les modèles de secours que Claude Code doit essayer, dans l’ordre, quand votre modèle principal est surchargé ou indisponible. Claude Code bascule vers le modèle disponible suivant dans la chaîne pour le reste du tour et affiche un avis. Sans chaîne, Claude Code réessaie le même modèle puis affiche l’erreur du serveur, et vous réessayez ou changez de modèles vous-même.
Un changement signifie un tour avec un cache de prompt froid sur le modèle de secours ; votre message suivant réessaie d’abord le modèle principal.
- Portée :
Tout fichier - Type : tableau d’alias de modèles ou d’ID ;
"default"se développe au modèle par défaut - Par défaut : non défini, donc une demande échouée n’est pas réessayée sur un autre modèle
- Remplacements par session :
--fallback-modela la priorité sur cette clé pour une session
settings.json
["claude-sonnet-5"] et votre fichier utilisateur définit ["claude-haiku-4-5"], la chaîne est ["claude-sonnet-5"] uniquement. Claude Code conserve au maximum trois modèles distincts autorisés de la liste et ignore le reste. Consultez Chaînes de modèles de secours.
fastMode
Activez le mode rapide pour les sessions où il est disponible, pour le travail interactif comme l’itération rapide ou le débogage en direct où vous voulez la vitesse à un coût plus élevé par token. Vous n’éditez généralement pas cette clé à la main : exécuter /fast écrit fastMode: true dans ~/.claude/settings.json, et l’exécuter à nouveau pour désactiver le mode rapide supprime la clé. Le mode rapide s’exécute uniquement sur Opus 5.5, Opus 5, et Opus 4.8 : l’activer à partir d’un autre modèle vous bascule vers Opus, et basculer vers un modèle non supporté le désactive. Consultez Changer de modèle pendant que le mode rapide est activé.
- Portée :
Tout fichier - Type : Booléen
true: Claude Code active le mode rapide pour les sessions où il est disponiblefalse: le mode rapide reste désactivé
- Par défaut : non défini, donc le mode rapide est désactivé
- Remplacements par session :
CLAUDE_CODE_DISABLE_FAST_MODEdésactive le mode rapide pour une session, et cette clé ne peut pas l’activer
settings.json
fastModePerSessionOptIn
Normalement, exécuter /fast enregistre fastMode dans les paramètres utilisateur d’une personne, donc le mode rapide est activé au début de chaque session ultérieure. Définissez cette clé à true pour arrêter cela : un fastMode: true enregistré n’active plus le mode rapide au démarrage de la session, et chaque personne doit exécuter /fast dans chaque session où elle le souhaite. Claude Code laisse la clé fastMode dans son fichier, donc désactiver cette clé restaure l’ancien comportement.
Les propriétaires sur les plans Team ou Enterprise peuvent le déployer à l’échelle de l’organisation via les paramètres gérés par le serveur. Quand les paramètres gérés définissent la clé, /fast on est refusé en dehors des sessions de terminal interactif et rapporte que votre organisation a désactivé le mode rapide. Cela couvre le mode non interactif, l’extension VS Code, et les sessions cloud.
- Portée :
Tout fichier - Type : Booléen
true: unfastMode: trueenregistré n’active plus le mode rapide au démarrage de la session, donc chaque personne exécute/fastdans chaque session où elle le souhaite ; unfastMode: truepassé avec--settingscompte toujours pour cette session sauf si les paramètres gérés définissent cette cléfalse: unfastMode: trueenregistré active le mode rapide au début de chaque session ultérieure
- Par défaut :
false
settings.json
language
Faites répondre Claude dans une langue autre que l’anglais par défaut. Il n’y a pas de liste fixe pour les réponses : Claude Code transmet la valeur verbatim à Claude comme instruction pour toujours répondre dans cette langue, donc tout nom de langue que Claude peut lire fonctionne. Claude Code ne vérifie pas la valeur, donc un nom mal orthographié atteint Claude tel qu’écrit plutôt que de produire une erreur. La même valeur définit la langue pour la dictée vocale, qui a une liste fixe de langues de dictée supportées, et pour les titres de session générés automatiquement.
- Portée :
Tout fichier - Type : chaîne, tout nom de langue, comme
"japanese","spanish", ou"french"; Claude Code ne le valide pas - Par défaut : non défini ; les titres de session correspondent alors à la langue de votre conversation
settings.json
maxEffortLevel
Limitez le niveau d’effort qu’une session peut utiliser, en laissant les niveaux inférieurs disponibles. Tout niveau supérieur s’exécute à la limite à la place, y compris celui de /effort, du sélecteur /model, de --effort, de CLAUDE_CODE_EFFORT_LEVEL, du frontmatter effort d’une compétence ou d’un sous-agent, ou du défaut du modèle lui-même. Claude Code applique la limite lui-même avant chaque demande, donc elle s’applique sur chaque fournisseur, y compris Amazon Bedrock, la plateforme Agent de Google Cloud, et Microsoft Foundry. Nécessite Claude Code v2.1.267 ou ultérieur.
- Portée :
Tout fichier. Déployez-le dans les paramètres gérés pour l’appliquer à une organisation. Quand plusieurs portées définissent une limite, la plus basse s’applique, donc une limite définie dans une portée ne peut pas être augmentée à partir d’une autre - Type : chaîne, l’une de
"low","medium","high","xhigh", ou"max". Une valeur"max"ne définit aucune limite - Par défaut : non défini, donc aucune limite ne s’applique
- Limites par modèle : ajoutez
maxEffortLevelà l’entréemodelSettingsd’un modèle. Cette entrée remplace cette clé pour le modèle uniquement dans la source de paramètres qui définit les deux, comme vos paramètres utilisateur ou une source gérée. Définissez"max"là pour exempter le modèle de la limite de cette source ; Claude Code applique toujours les limites d’autres sources
medium et exempte Sonnet 4.6 :
settings.json
model
Définissez le modèle que chaque nouvelle session utilise, donc vous n’avez pas à en choisir un avec /model à chaque fois. Le définir ici ne vous empêche pas de basculer en milieu de session. Si votre administrateur a défini un modèle par défaut de l’organisation pour remplacer la sélection de l’utilisateur, vous obtenez ce modèle même quand vous définissez cette clé dans les paramètres utilisateur, de projet ou locaux.
- Portée :
Tout fichier - Type : chaîne, un alias de modèle ou un ID de modèle complet
- Par défaut : non défini, donc Claude Code utilise le modèle par défaut de votre compte
- Remplacements par session :
--modela la priorité surANTHROPIC_MODEL, et les deux ont la priorité sur cette clé pour une session, y compris sur unmodelgéré ; une listeavailableModelss’applique toujours au choix
settings.json
ANTHROPIC_DEFAULT_MODEL, que Claude Code utilise uniquement quand rien d’autre ne sélectionne un modèle.
modelOverrides
Mappez les ID de modèles Anthropic aux ID de modèles spécifiques au fournisseur, comme les ARN de profil d’inférence Amazon Bedrock. Chaque entrée du sélecteur de modèles utilise alors sa valeur mappée lors de l’appel de l’API du fournisseur. Les administrateurs utilisent ceci sur Amazon Bedrock, la plateforme Agent de Google Cloud, et Microsoft Foundry pour router chaque version de modèle vers un profil d’inférence spécifique, un nom de version, ou un déploiement pour la gouvernance, l’allocation des coûts, ou le routage régional.
- Portée :
Tout fichier - Type : objet mappant l’ID du modèle à l’ID du modèle du fournisseur
- Par défaut : non défini
settings.json
modelPicker
Énumérez les modèles que le sélecteur /model offre, dans l’ordre que vous écrivez et sous les étiquettes que vous choisissez, donc le sélecteur énumère les modèles que votre organisation exécute, après la gamme intégrée ou à la place. Le model de chaque ligne est pris verbatim, donc il accepte tout ce que --model accepte : un alias comme opus, un ID de modèle Anthropic, ou un ID au format du fournisseur pour Amazon Bedrock, la plateforme Agent de Google Cloud, Microsoft Foundry, ou une passerelle LLM. Nécessite Claude Code v2.1.242 ou ultérieur.
- Portée :
Utilisateur ou géré. Claude Code lit la clé à partir des paramètres gérés,--settings, et des paramètres utilisateur, et l’ignore dans les paramètres de projet et locaux donc un référentiel que vous clonez ne peut pas réétiqueter le sélecteur. Le plus élevé de ces trois qui définit la clé fournit la gamme entière, et Claude Code ne combine jamais les gammes de deux sources. - Type : objet avec un tableau
optionsde lignes et un BooléenreplaceBuiltInOptionsoptionnel - Par défaut : non défini, donc le sélecteur affiche la gamme intégrée
managed-settings.json
Champs pour modelPicker
La clé prend deux champs, l’un pour les lignes elles-mêmes et l’un pour savoir si elles remplacent la gamme intégrée ou l’ajoutent.
Une entrée dans
options peut également porter une chaîne behavesAs optionnelle à côté de son model, qui nécessite v2.1.257 ou ultérieur. Définissez-la à l’ID d’un modèle que votre version de Claude Code connaît déjà, comme claude-opus-4-8, sur une entrée dont le model est plus récent que votre version. Claude Code applique alors les capacités et les défauts d’effort de ce modèle connu à l’entrée au lieu de traiter son modèle comme inconnu. L’étiquette de l’entrée et l’ID du modèle que Claude Code envoie dans les demandes ne changent pas.
Avec replaceBuiltInOptions activé, Claude Code masque chaque autre ligne : la gamme intégrée, les lignes qu’il ajoute pour les entrées availableModels, les modèles que la découverte de passerelle a trouvés, et ANTHROPIC_CUSTOM_MODEL_OPTION. Avec lui désactivé, Claude Code saute un modèle énuméré que la gamme intégrée couvre déjà. Un label change ce que le sélecteur affiche, pas quel modèle Claude Code exécute.
Une liste d’autorisation availableModels s’applique toujours à ces lignes. Avant d’ajouter un modèle énuméré à la liste d’autorisation, lisez Comportement de fusion : un ID de modèle spécifique restreint l’entrée générique de sa famille. Claude Code vérifie également chaque ligne par rapport à la session avant d’afficher le sélecteur :
- Supprimée : une ligne que Claude Code ne peut pas servir, comme un modèle retiré ou un modèle auquel votre organisation n’a pas accès
- Grisée : une ligne que vous ne pouvez pas sélectionner encore, affichée avec la raison
- Aucune ligne ne survit : Claude Code conserve la gamme intégrée, filtrée par la liste d’autorisation comme d’habitude
modelPricing
Rapportez les dépenses aux tarifs que votre organisation paie au lieu du prix catalogue. Définissez-le quand votre organisation a des tarifs contractuels, donc les chiffres en dollars que les développeurs voient correspondent à votre facture. Claude Code applique les tarifs dans /usage, la ligne d’état, le total_cost_usd de l’Agent SDK, la limite --max-budget-usd, et la métrique de coût OpenTelemetry et les événements. Vous fournissez les tarifs : Claude Code ne les lit pas à partir de votre contrat ou de la Claude Console. Nécessite Claude Code v2.1.242 ou ultérieur.
- Portée :
Géré. Déployez la clé via les paramètres gérés par le serveur, une politique MDM, un fichiermanaged-settings.json, ou un assistant de politique. Claude Code l’ignore dans les paramètres utilisateur, de projet et locaux, dans--settings, et sur Windows dans le registre HKCU inscriptible par l’utilisateur. Avec les paramètres gérés par le serveur, chaque session rapporte les coûts au prix catalogue jusqu’à ce que la récupération des paramètres de cette session ait confirmé le paramètre. Une application hôte qui intègre Claude Code et définitCLAUDE_CODE_PROVIDER_MANAGED_BY_HOSTpeut fournir sa propre table via l’option SDKmanagedSettings, que Claude Code utilise uniquement quand aucune source gérée ne définit la clé et uniquement dans Claude Code v2.1.246 ou ultérieur. - Type : objet avec un
multiplieroptionnel et une carteoverridesoptionnelle - Par défaut : non défini, donc Claude Code rapporte le prix catalogue sauf si une application hôte fournit une table
multiplier seul pour une remise ou une majoration forfaitaire, overrides seul pour des tarifs par modèle, ou les deux.
Cet exemple définit les tarifs contractuels pour Sonnet 4.6 puis réduit chaque chiffre, la ligne Sonnet incluse, de 15 % :
managed-settings.json
multiplier au-dessus de 1, jusqu’à 10, pour majorer chaque chiffre. Une majoration nécessite Claude Code v2.1.271 ou ultérieur. Les versions antérieures ignorent un multiplier au-dessus de 1 avec un avertissement et conservent le reste du paramètre.
Pour les étapes, y compris comment confirmer que les tarifs sont en vigueur, consultez Rapporter les dépenses à vos tarifs contractuels.
Champs pour modelPricing
Claude Code utilise les tarifs d’une ligne exactement comme vous les avez écrits, sans ajouter la surcharge du mode rapide ou le tarif d’inférence réservé aux États-Unis. Si vous définissez également
multiplier, Claude Code l’applique en plus des tarifs de la ligne. Claude Code supprime une ligne avec un tarif qu’il ne peut pas analyser, ou un multiplier qu’il ne peut pas analyser, et conserve le reste ; consultez Corriger un fichier de paramètres cassé.
Quels modèles une ligne modelPricing s’applique à
Claude Code décide quels modèles une ligne s’applique à à partir de la clé de la ligne :
- L’ID d’un modèle intégré : une clé que Claude Code lui-même utilise pour un modèle intégré, que cette clé soit l’ID du modèle lui-même, comme
claude-sonnet-4-6, ou son ID Bedrock, Agent Platform, ou Foundry. Claude Code applique la ligne à chaque ID de snapshot daté et ID spécifique au fournisseur de ce modèle. - Toute autre clé : une clé qui n’est pas l’ID d’un modèle intégré, comme un alias de modèle de passerelle. Claude Code applique la ligne à cet ID uniquement. Quand un ID de modèle correspond exactement à l’une de vos clés et tombe également sous une ligne clé par l’ID d’un modèle intégré, Claude Code utilise la correspondance exacte.
- Un profil d’inférence d’application Bedrock : une fois que Claude Code a résolu le profil au modèle vers lequel il route, via votre carte
modelOverridesou la recherchebedrock:GetInferenceProfile, Claude Code applique la ligne de ce modèle au profil.
modelSettings
Enregistrez un niveau d’effort pour chaque modèle que vous utilisez. Nécessite Claude Code v2.1.251 ou ultérieur.
Dans une session interactive sur votre machine, quand vous enregistrez low, medium, high, ou xhigh comme votre défaut avec /effort ou le curseur d’effort du sélecteur /model, Claude Code écrit ce niveau ici sous le modèle que vous utilisez, donc vous éditez rarement cette clé vous-même. Quand vous choisissez l’un de ces niveaux dans le sélecteur de modèles de l’extension VS Code, Claude Code l’enregistre ici de la même manière. L’entrée effortLevel énumère les sessions où /effort s’applique à cette session uniquement.
Éditez la clé à la main pour modifier ou supprimer un niveau que vous avez enregistré.
Un effortLevel d’un modèle ici a la priorité sur le effortLevel de niveau supérieur dans le même fichier de paramètres. Entre les fichiers, Claude Code résout chaque modèle séparément : le fichier de paramètres de plus haute priorité qui définit soit un effortLevel pour ce modèle soit un effortLevel de niveau supérieur qui s’applique à ce modèle décide, donc un effortLevel dans les paramètres gérés surclasse un niveau que vous avez enregistré dans les paramètres utilisateur. Ajuster le niveau d’effort énumère ce qui d’autre peut remplacer un niveau enregistré, comme --effort au lancement.
Pour limiter l’effort d’un modèle plutôt que de définir son niveau, ajoutez un champ maxEffortLevel à l’entrée de ce modèle. Le champ nécessite Claude Code v2.1.267 ou ultérieur.
- Portée :
Tout fichier - Type : objet mappant un nom de modèle à un objet avec n’importe lequel de ces champs :
effortLevel: l’un de"low","medium","high", ou"xhigh"maxEffortLevel: le niveau d’effort le plus élevé auquel le modèle peut s’exécuterautoCompactWindow: un nombre de tokens de100000à1000000, ou"auto"pour la fenêtre ajustée au modèle./autocompactenregistre ici. Pour ce modèle, la valeur a la priorité sur unautoCompactWindowde niveau supérieur dans le même fichier de paramètres. Nécessite Claude Code v2.1.288 ou ultérieur
- Par défaut : non défini
claude-opus-5-5, et correspond à l’alias de ce modèle, daté, [1m], et les ID spécifiques au fournisseur reconnus à la même entrée.
Cet exemple garde Opus 5.5 à high tandis que les autres modèles utilisent leurs propres niveaux enregistrés ou par défaut :
settings.json
/effort auto pour effacer votre niveau enregistré pour le modèle que vous utilisez. Claude Code laisse les autres entrées et tout effortLevel de niveau supérieur en place.
outputStyle
Sélectionnez un style de sortie par nom. Un style de sortie est un ensemble d’instructions enregistrées qui change le rôle, le ton et le format de sortie de Claude, comme les styles Explanatory et Learning intégrés ou l’un que vous avez écrit vous-même.
Si vous modifiez cette clé pendant une session, Claude utilise le nouveau style à partir de votre message suivant. Pour ce que ce message coûte en cache de prompt, consultez Changer le style de sortie. Avant la v2.1.251, l’édition s’appliquait uniquement après que vous ayez exécuté /clear ou démarré une nouvelle session.
- Portée :
Tout fichier - Type : chaîne, le nom d’un style de sortie intégré ou personnalisé
- Par défaut : non défini, donc Claude Code utilise le style par défaut
settings.json
promptCacheTtl
Choisissez combien de temps le cache de prompt conserve la conversation principale. Cette clé s’applique à vos tours interactifs, -p, et Agent SDK, ainsi que les assistants que Claude Code exécute en ligne avec eux. La durée de vie d’une heure garde le cache chaud entre les pauses plus longues, et l’API facture chaque écriture de cache à un tarif plus élevé qu’à la durée de vie de cinq minutes. Nécessite Claude Code v2.1.242 ou ultérieur.
- Portée :
Tout fichier - Type : chaîne, l’une de :
"5m": le cache se conserve pendant cinq minutes"1h": le cache se conserve pendant une heure
- Par défaut : non défini, donc chaque demande de conversation principale obtient sa durée de vie par défaut
- Remplacements par session :
FORCE_PROMPT_CACHING_5Ma la priorité sur tout le reste, puisCLAUDE_CODE_PROMPT_CACHE_TTL, puis cette clé, et enfinENABLE_PROMPT_CACHING_1H
settings.json
showThinkingSummaries
Voyez les résumés de la réflexion étendue de Claude dans les sessions interactives. Définissez-le si vous voulez les résumés complets quand vous développez la réflexion avec Ctrl+O. Quand non défini ou false, l’API Anthropic rédige les blocs de réflexion et Claude Code affiche un stub réduit ; les fournisseurs tiers ne rédactent pas.
- Portée :
Tout fichier - Type : Booléen
true: vous voyez les résumés complets de la réflexion quand vous développez la réflexion avecCtrl+Ofalse: l’API Anthropic rédige les blocs de réflexion et Claude Code affiche un stub réduit
- Par défaut :
false
settings.json
subagentPromptCacheTtl
Choisissez combien de temps le cache de prompt conserve les demandes que Claude Code fait en dehors de la conversation principale. Cette clé s’applique aux sous-agents, aux workflows, et aux demandes propres de Claude Code en arrière-plan et d’assistance, comme la compaction et les titres de session. La durée de vie d’une heure garde le cache chaud entre les pauses plus longues, et l’API facture chaque écriture de cache à un tarif plus élevé qu’à la durée de vie de cinq minutes. Nécessite Claude Code v2.1.242 ou ultérieur.
- Portée :
Tout fichier - Type : chaîne, l’une de :
"5m": le cache se conserve pendant cinq minutes"1h": le cache se conserve pendant une heure
- Par défaut : non défini, donc chacune de ces demandes obtient sa durée de vie par défaut
- Remplacements par session :
FORCE_PROMPT_CACHING_5Ma la priorité sur tout le reste, puisCLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL, puis cette clé, puisENABLE_PROMPT_CACHING_1H, qui demande la durée de vie d’une heure sur chaque demande. Pour où la valeur du frontmatter propre d’un sous-agent se classe, consultez Choisir la TTL vous-même
settings.json
promptCacheTtl ne couvre pas, donc définissez les deux pour choisir une durée de vie pour chaque demande que Claude Code fait. Pour comment le cache d’un sous-agent diffère de celui de la conversation principale, consultez Sous-agents et le cache.
switchModelsOnFlag
Choisissez ce qui se passe quand un classificateur de sécurité signale une demande : basculer vers le modèle de secours et continuer, ou faire une pause pour que vous puissiez choisir entre basculer et éditer l’invite.
- Portée :
Tout fichier. Apparaît dans/configcomme Changer de modèles quand un message est signalé, avec les options Basculer automatiquement et Demander à chaque fois. - Type : Booléen
true: Claude Code bascule vers le modèle de secours et continuefalse: dans une session interactive Claude Code fait une pause pour que vous puissiez choisir entre basculer et éditer l’invite ; où aucune boîte de dialogue ne peut s’afficher, comme une exécution-p, la demande signalée se termine comme une erreur
- Par défaut : non défini. Claude Code bascule automatiquement, bien qu’il puisse demander d’abord dans une session interactive
settings.json
ultracode
Démarrez les sessions avec ultracode activé. Avec lui activé, Claude planifie un workflow pour chaque tâche substantielle au lieu d’attendre que vous le demandiez. Claude planifie les workflows uniquement quand les workflows dynamiques sont activés pour vous et votre modèle supporte l’effort xhigh. La clé ne change pas le niveau d’effort de la session : ultracode s’exécute au niveau que la session utilise. Claude Code lit cette clé mais ne l’écrit jamais : /effort ultracode active ultracode pour la session actuelle uniquement.
- Portée :
Tout fichier - Type : Booléen
true: les sessions commencent avec ultracode activé quand les workflows dynamiques sont activés pour vous et votre modèle supportexhighfalse: les sessions commencent avec ultracode désactivé
- Par défaut : non défini, donc ultracode est désactivé
- Remplacements par session :
/effort ultracodeactive ultracode pour une session sans cette clé, et/effort ultracode offle désactive pour une session quand cette clé esttrue. L’indicateur--effort ultracodel’active également pour une session, à l’effortxhigh, et nécessite Claude Code v2.1.203 ou ultérieur
settings.json
effortLevel, modelSettings, et des autres sources d’effort, et une limite d’effort comme maxEffortLevel abaisse ce niveau sans désactiver ultracode. Ceci et la forme /effort ultracode off nécessitent Claude Code v2.1.284 ou ultérieur. Avant la v2.1.284, ultracode: true exécutait la session à l’effort xhigh, et une limite d’effort inférieure à xhigh gardait ultracode désactivé. Une demande de contrôle apply_flag_settings de l’Agent SDK accepte également la clé.
Paramètres de permission
Décidez ce que Claude peut faire sans demander, quel mode de permission une session démarre, et ce que le classificateur du mode auto autorise. Pour la syntaxe des règles et le modèle de permission, consultez Configurer les permissions.allowManagedPermissionRulesOnly
Rendez les paramètres gérés la seule source de règles de permission. Claude Code ignore alors les règles allow, ask et deny dans les fichiers utilisateur, projet, local et --settings, ignore --allowedTools, masque les choix d’autorisation permanente dans les invites de permission, et arrête d’enregistrer les nouvelles règles.
Quand les paramètres parents d’un hôte d’intégration s’appliquent, Claude Code les traite comme faisant partie du niveau géré. Il supprime leurs règles allow et additionalDirectories, et conserve leurs règles deny et ask sauf les règles Read et Edit dont le motif commence par !. Un hôte ne peut pas découper des chemins des règles gérées avec une règle !, que vous définissiez cette clé ou non.
Les règles --disallowedTools et les règles deny et ask de la session actuelle s’appliquent toujours, y compris après que Claude Code recharge les paramètres en cours de session. Elles ne font que restreindre, elles ne peuvent donc pas élargir ce que les règles gérées accordent. Avant la v2.1.257, Claude Code supprimait ces règles de ligne de commande et de session au premier rechargement des paramètres.
Pour ce qu’un motif ! dans une règle --disallowedTools ou de session peut découper, consultez Règles Read et Edit.
Quand vous définissez cette clé, Claude Code v2.1.282 ou ultérieur ignore aussi le frontmatter allowed-tools dans les skills et les fichiers .claude/commands/ provenant de ces sources :
- Le répertoire
.claude/d’un dépôt - Vos répertoires
~/.claude/skills/et~/.claude/commands/, y compris les skills synchronisés depuis claude.ai - Un répertoire
--add-dir - Les plugins déclarés avec un manifeste
.claude-plugindans~/.claude/skills/ou dans le.claude/skills/du projet
allowed-tools. Le disallowed-tools d’un skill s’applique toujours. Pour ce qu’un développeur voit quand Claude Code ignore le champ, consultez Quand seules les règles de permission gérées s’appliquent.
- Portée :
Managed - Type : Booléen
true: les paramètres gérés deviennent la seule source de règles de permissionfalse: Claude Code applique les règles de permission des fichiers utilisateur, projet, local et--settingsen plus des règles gérées
- Défaut : non défini, donc Claude Code applique les règles de permission des paramètres utilisateur, projet et local et de
--settings, en plus des règles gérées
managed-settings.json
allowManagedMcpServersOnly. Consultez Paramètres gérés uniquement.
autoMode
Ajoutez vos propres règles à ce que le classificateur du mode auto bloque et autorise. Utilisez-le pour dire au classificateur quels dépôts, buckets et domaines votre organisation approuve, afin qu’il arrête de bloquer les opérations internes courantes. Le classificateur est livré avec des règles d’autorisation et de blocage intégrées. Incluez la chaîne littérale "$defaults" dans un tableau pour conserver ces règles intégrées à cette position et ajouter les vôtres autour ; omettez-la pour les remplacer par les vôtres.
- Portée :
User or managed - Type : objet avec des tableaux
environment,allow,soft_denyethard_denyde règles en prose, plus le BooléenclassifyAllShell - Défaut : non défini, donc le classificateur utilise uniquement ses règles intégrées
soft_deny intégrées, via "$defaults", et en ajoute une qui bloque terraform apply :
settings.json
autoMode.classifyAllShell
Envoyez chaque commande Bash et PowerShell via le classificateur du mode auto pendant que le mode auto est actif. Par défaut, le mode auto suspend uniquement les règles d’autorisation qui pourraient exécuter du code arbitraire : les règles à l’échelle de l’outil et les règles avec caractères génériques telles que Bash(*), et les préfixes d’interpréteur ou d’enveloppe shell tels que Bash(python *). Une commande qui correspond à toute autre règle d’autorisation, comme Bash(npm test), ignore le classificateur sauf si elle porte des domaines autorisés par commande. Quand elle l’ignore, un argument destructeur que le préfixe de la règle n’a pas anticipé peut passer inaperçu. Définir cette clé suspend chaque règle d’autorisation shell pour la session afin que le classificateur voie chaque commande. Nécessite Claude Code v2.1.193 ou ultérieur.
- Portée :
User or managed. Lisez partout oùautoModeest lu. - Type : Booléen
true: pendant que le mode auto est actif, Claude Code envoie chaque commande Bash et PowerShell via le classificateur et suspend vos règles d’autorisation shell ; en dehors du mode auto, les règles s’appliquent toujoursfalse: le mode auto suspend uniquement les règles d’autorisation qui pourraient exécuter du code arbitraire, commeBash(*)etBash(python *); une commande qui correspond à toute autre règle d’autorisation ignore le classificateur sauf si elle porte des domaines autorisés par commande, et chaque autre commande shell le traverse
- Défaut :
false
settings.json
disableAutoMode
Supprimez le mode auto du cycle Shift+Tab. Toute session qui démarrerait autrement en mode auto, que ce soit via --permission-mode auto, un fichier de paramètres ou la valeur par défaut intégrée, démarre plutôt en default. Les administrateurs le définissent dans les paramètres gérés pour empêcher les développeurs de leur organisation d’utiliser le mode auto.
- Portée :
Any file. Plus utile dans les paramètres gérés, où les utilisateurs ne peuvent pas le remplacer. Également accepté souspermissionscommepermissions.disableAutoMode. - Type : la chaîne
"disable" - Défaut : non défini
settings.json
permissions
Contrôlez quels outils Claude peut utiliser sans demander, lesquels invitent toujours, et lesquels sont bloqués, et définissez le mode de permission qu’une session démarre. Chaque clé permissions.* ci-dessous s’imbrique sous cet objet.
- Portée :
Any file - Type : objet avec
allow,ask,deny,additionalDirectories,blockReadsOutsideWorkingDirectories,defaultMode,disableBypassPermissionsModeetdisableAutoMode - Défaut : non défini
npm run sans demander, invite avant git push, bloque les lectures de .env, et démarre les sessions en acceptEdits :
settings.json
permissions.allow. Pour comment les règles de permission de différents fichiers se combinent, consultez comment les règles de permission fusionnent entre les portées ; pour comment les clés de paramètres en général se combinent, consultez Priorité des paramètres sur le guide des paramètres.
useAutoModeDuringPlan
Choisissez si Claude Code utilise le classificateur du mode auto pour examiner les commandes shell en mode plan. Avec la valeur par défaut true, le classificateur examine chaque commande pendant la planification quand le mode auto est disponible et vous ne voyez aucune invite, sauf pour les suppressions de chemin critique. Définissez false pour obtenir une invite de permission pour chaque commande en dehors de l’ensemble intégré en lecture seule. Apparaît dans /config comme Use auto mode during plan.
- Portée :
User, local, or managed. Un dépôt ne peut pas l’éteindre pour vous. - Type : Booléen
true: identique à non défini ; quand le mode auto est disponible, le classificateur examine chaque commande shell pendant la planification au lieu de vous l’inviter, sauf les suppressions de chemin critique. Unfalsedans l’un de ces fichiers l’éteint toujoursfalse: vous obtenez une invite de permission pour chaque commande en dehors de l’ensemble intégré en lecture seule
- Défaut :
true
settings.json
permissions.allow
Listez les utilisations d’outils que Claude Code approuve sans vous demander. Dans une règle MCP, * ne peut apparaître que dans le nom de l’outil après le préfixe mcp__<server>__, comme mcp__github__get_* ; il ne peut pas apparaître dans le nom du serveur.
- Portée :
Any file - Type : tableau de chaînes de règles de permission
- Défaut : non défini
- Remplacements par session :
--allowedToolsajoute des règles d’autorisation pour une session, et une règle de blocage de n’importe quel fichier de paramètres bloque toujours un outil qu’elle nomme
git diff et permet à Claude Code de lire votre .zshrc sans demander :
settings.json
allow du .claude/settings.json d’un projet uniquement après que vous acceptiez le dialogue de confiance d’espace de travail pour ce dossier.
Syntaxe des règles de permission
Les règles de permission suivent le formatTool ou Tool(specifier). Claude Code évalue d’abord les règles deny, puis ask, puis allow, et la première correspondance décide indépendamment de la spécificité de chaque règle ; consultez l’ordre d’évaluation des règles de permission.
Chaque ligne montre une forme de règle et ce qu’elle correspond.
Pour la syntaxe de règle complète, y compris le comportement des caractères génériques, les motifs spécifiques aux outils pour Read, Edit, WebFetch, MCP et les règles Agent, et les limitations de sécurité des motifs Bash, consultez Syntaxe des règles de permission.
permissions.ask
Listez les utilisations d’outils qui vous invitent à confirmer même dans un mode de permission qui les approuverait autrement, comme acceptEdits ou bypassPermissions. En mode dontAsk, Claude Code refuse une utilisation d’outil correspondante au lieu d’inviter.
- Portée :
Any file - Type : tableau de chaînes de règles de permission
- Défaut : non défini
settings.json
permissions.deny
Listez les utilisations d’outils que Claude Code bloque. Utilisez-le pour les fichiers qui contiennent des clés API, des secrets ou des valeurs d’environnement : Claude Code exclut les fichiers correspondants de la découverte de fichiers et des résultats de recherche, refuse les lectures de ceux-ci, et bloque les outils Edit et Write sur les chemins correspondants.
Les règles de blocage Read et Edit s’appliquent aux outils de fichiers intégrés de Claude, aux commandes de fichiers que Claude Code reconnaît dans Bash, comme cat, head, tail, sed et tee, et aux cibles des redirections Bash comme > file et < file ; elles ne s’appliquent pas à une commande qui lit des fichiers sans les nommer, comme grep -r pattern ., ou aux sous-processus arbitraires, donc pour l’application au niveau du système d’exploitation, activez le sandbox.
- Portée :
Any file - Type : tableau de chaînes de règles de permission
- Défaut : non défini
- Remplacements par session :
--disallowedToolsajoute des règles de blocage pour une session à côté de cette clé
.env, du répertoire secrets et d’un fichier d’identifiants, et bloque les commandes curl :
settings.json
"*" bloque chaque outil et "mcp__*" bloque chaque outil MCP. Claude Code ignore une règle de blocage pour l’outil EndConversation tant que tout autre outil est toujours disponible pour Claude. Une règle de blocage Bash correspond à la commande telle que Claude l’écrit, donc Bash(curl *) n’arrête pas /usr/bin/curl ou sh -c 'curl …' ; consultez ce qu’une règle Bash ne correspond pas. Cette clé remplace la configuration ignorePatterns dépréciée.
permissions.additionalDirectories
Donnez à Claude l’accès aux fichiers des répertoires en dehors de celui dans lequel vous avez commencé, comme répertoires de travail supplémentaires. La plupart de la configuration .claude/ n’est pas découverte de ces répertoires.
- Portée :
Any file, avec des limites sur l’accès en écriture du sandbox que confèrent les entrées de projet et locales - Type : tableau de chemins de répertoires
- Défaut : non défini
- Remplacements par session :
--add-diret/add-dirajoutent des répertoires pour une session à côté de cette clé
settings.json
allow, les entrées du .claude/settings.json d’un projet prennent effet uniquement après que vous acceptiez le dialogue de confiance d’espace de travail pour ce dossier.
permissions.blockReadsOutsideWorkingDirectories
Faites refuser les lectures en dehors de vos répertoires de travail par les outils de fichiers de Claude dans chaque mode de permission, y compris bypassPermissions. Claude Code refuse les appels Read, Grep, Glob et LSP sur ces chemins et dit à Claude de vous demander d’ajouter le répertoire avec /add-dir. Les fichiers dont Claude Code lui-même a besoin restent lisibles, comme vos skills, plugins, règles, agents, commandes et le fichier de mémoire CLAUDE.md sous ~/.claude/. Nécessite Claude Code v2.1.257 ou ultérieur.
Claude Code ne refuse pas les commandes shell de la même manière :
- Les actions qu’aucun mode n’auto-approuve couvre quand une commande shell qui lit un tel chemin vous invite
- Les commandes sandboxées sous le blocage couvre ce qu’une commande sandboxée peut lire
bypassPermissions. L’invite apparaît même quand la commande ne nomme aucun chemin en dehors des répertoires de travail. Cette invite ne s’applique pas quand la commande s’exécute dans le sandbox et que le sandbox applique le blocage.
Claude Code écrit aussi true ici quand vous choisissez de bloquer ces lectures sur l’invite du mode auto avant la première lecture en dehors des répertoires de travail.
- Portée :
Any file. Untruedans n’importe quel fichier s’applique, donc un dépôt peut activer le blocage pour lui-même mais ne peut pas lever le vôtre. - Type : Booléen
true: les outils de fichiers de Claude refusent les lectures en dehors des répertoires de travailfalse: identique à non défini ; le blocage s’applique toujours si un autre fichier définittrue
- Défaut : non défini, donc les lectures en dehors des répertoires de travail suivent votre mode de permission
settings.json
--add-dir, /add-dir ou additionalDirectories dans vos paramètres utilisateur ou gérés comptent comme répertoires de travail pour le blocage. Les répertoires ajoutés uniquement dans les paramètres du dépôt ne comptent pas : ceux dans .claude/settings.json, et ceux dans .claude/settings.local.json sauf si git signale ce fichier comme non suivi. Dans un répertoire qui n’est pas un dépôt git, ou quand git suit le fichier, Claude Code traite .claude/settings.local.json comme des paramètres fournis par le dépôt, donc mettez les répertoires que vous voulez garder lisibles dans vos paramètres utilisateur à la place.
Quand autoMemoryDirectory provient du .claude/settings.json du projet, ou d’un .claude/settings.local.json traité comme fourni par le dépôt, Claude Code ne charge aucune mémoire automatique de ce répertoire et n’en enregistre aucune.
Pour lever le blocage, supprimez la clé de chaque fichier de paramètres qui la définit, puis démarrez une nouvelle session.
Commandes sandboxées sous le blocage
Quand le sandboxing est activé, le blocage couvre aussi les commandes sandboxées. Claude Code leur refuse l’accès en lecture à votre répertoire personnel et aux autres racines qui contiennent les fichiers utilisateur :/Users, /home, /root, /Volumes, /mnt, /media, /run/media et /srv. Il réouvre ensuite les répertoires de travail, les worktrees que Claude Code crée dans la session, le répertoire temporaire de la session, et les parties de ~/.claude dont les commandes ont besoin, comme les skills et les plugins. Pendant que le blocage est en vigueur, les entrées allowRead et allowWrite des paramètres du dépôt ne comptent pas.
Quand le répertoire de travail de la session est un git worktree lié, y compris un que Claude Code a entré en cours de session, le répertoire .git commun du dépôt reste lisible et inscriptible pour les commandes sandboxées, afin que git continue de fonctionner là.
Dans ces cas, le blocage n’atteint pas les commandes sandboxées, tandis que les outils de fichiers de Claude continuent de l’appliquer :
- L’isolation du système de fichiers est désactivée via
sandbox.filesystem.disabled allowManagedReadPathsOnlyest défini- Le chemin du répertoire dans lequel vous avez démarré Claude Code contient un caractère glob comme
*,?ou[
git conserve votre identité et vos paramètres :
~/.gitconfig- Les fichiers
config,ignoreetattributessous$XDG_CONFIG_HOME/git, qui par défaut est~/.config/git - Les fichiers que votre configuration git globale nomme via
[include],[includeIf],core.excludesFileoucore.attributesFile
git s’exécute alors sans lui. ~/.git-credentials et $XDG_CONFIG_HOME/git/credentials restent bloqués.
Si un fichier réouvert contient un secret, comme un jeton http.extraHeader, ajoutez son chemin à sandbox.filesystem.denyRead. Une entrée denyRead qui couvre un fichier a toujours priorité sur cette réouverture.
permissions.defaultMode
Définissez le mode de permission que les nouvelles sessions démarrent. Quand vous le laissez non défini, les sessions démarrent dans la valeur par défaut intégrée pour votre surface.
- Portée :
Any file.autoetbypassPermissionsne prennent pas effet à partir des paramètres du projet ou local, donc définissez-les dans~/.claude/settings.jsonà la place. Avant la v2.1.257,bypassPermissionsprenait effet à partir de n’importe quel fichier. Pour les conversations que l’extension VS Code démarre, Claude Code lit uniquement les valeurs utilisateur, gérées et--settings. - Type : chaîne, l’une de :
"default": Claude Code exécute uniquement les lectures sans demander"acceptEdits": Claude Code exécute aussi les éditions de fichiers et les commandes courantes du système de fichiers commemkdiretmvsans demander"plan": Claude Code lit et planifie mais bloque les éditions jusqu’à ce que vous approuviez un plan"auto": Claude Code exécute sans invites de routine ; avant que les actions telles que les commandes shell et les requêtes réseau s’exécutent, un classificateur en arrière-plan vérifie qu’elles s’alignent avec votre demande"dontAsk": Claude Code refuse automatiquement chaque appel qui inviterait autrement ; les lectures de fichiers dans vos répertoires de travail, les autres actions qui ne nécessitent pas d’approbation, et les outils pré-approuvés s’exécutent toujours, à l’exception des lectures depuis des chemins réseau"bypassPermissions": Claude Code exécute tout sans demander"manual": un alias pour"default"
- Défaut : non défini
- Remplacements par session :
--permission-mode, et son équivalent--dangerously-skip-permissionspourbypassPermissions, ont priorité sur cette clé pour une session
settings.json
deny bloquent dans chaque mode, y compris bypassPermissions. Consultez Modes de permission. Dans les sessions cloud, Claude Code honore uniquement acceptEdits, plan, default et auto de cette clé. Pour les conversations que l’extension VS Code démarre, consultez quel paramètre l’extension lit pour le mode de permission de démarrage.
permissions.disableBypassPermissionsMode
Empêchez quiconque d’entrer en mode bypassPermissions. Claude Code rejette alors le flag --dangerously-skip-permissions, et ignore le permissionMode: bypassPermissions d’une définition d’agent, donc le sous-agent s’exécute avec le mode de permission de la session parent.
- Portée :
Any file. Généralement défini dans les paramètres gérés pour appliquer la politique organisationnelle. - Type : la chaîne
"disable" - Défaut : non défini
- Remplacements par session : cette clé a priorité sur
--dangerously-skip-permissions, que Claude Code rejette pendant que la clé est définie
settings.json
skipAutoPermissionPrompt
Ignorez l’avis unique décrivant le mode auto que Claude Code affiche quand vous entrez vous-même en mode auto pour la première fois, par exemple via vos propres paramètres ou le sélecteur de mode, plutôt que quand la valeur par défaut intégrée démarre une session dedans. Claude Code affiche cet avis une fois puis enregistre qu’il a été affiché, donc cette clé ne compte que là où l’avis n’a pas encore apparu.
- Portée :
User or managed. Un dépôt ne peut pas le définir pour vous. - Type : Booléen
true: Claude Code ignore l’avisfalse: identique à non défini ; l’avis apparaît une fois sauf si un de ces fichiers définittrue
- Défaut : non défini, donc l’avis apparaît une fois
settings.json
skipDangerousModePermissionPrompt
Ignorez le dialogue de confirmation que Claude Code affiche avant qu’une session entre en mode bypassPermissions, que ce soit via --dangerously-skip-permissions ou via defaultMode: "bypassPermissions". Claude Code écrit true ici dans vos paramètres utilisateur quand vous acceptez ce dialogue une fois.
- Portée :
User, local, or managed. Un dépôt non approuvé ne peut pas ignorer le dialogue pour vous. - Type : Booléen
true: Claude Code ignore le dialogue de confirmation avant qu’une session entre en modebypassPermissionsfalse: identique à non défini ; le dialogue apparaît sauf si un de ces fichiers définittrue
- Défaut : non défini, donc le dialogue apparaît
settings.json
Paramètres du sandbox
Isolez les commandes que Claude exécute de votre système de fichiers, de votre réseau et de vos identifiants. Pour savoir comment fonctionne le sandboxing et connaître les exigences de plateforme, consultez Sandboxing.sandbox
Isolez les commandes Bash que Claude exécute de votre système de fichiers et de votre réseau avec sandboxing. Activez le sandbox avec enabled, puis réduisez ou élargissez ce que les commandes en sandbox peuvent toucher avec les sous-objets filesystem, network et credentials. Le sandbox s’exécute sur macOS, Linux et WSL2.
- Scope :
Any file - Type : objet avec
enabled,failIfUnavailable,autoAllowBashIfSandboxed,excludedCommands,allowUnsandboxedCommands,enableWeakerNestedSandbox,enableWeakerNetworkIsolation,allowAppleEvents,bwrapPath,socatPath,ignoreViolationsetripgrep, plus les objetsfilesystem,networketcredentials - Default : non défini, donc Claude Code exécute les commandes sans sandbox
docker en dehors du sandbox, ouvre deux chemins d’écriture supplémentaires, masque votre fichier d’identifiants AWS et pré-autorise GitHub et npm :
settings.json
enabled ou failIfUnavailable, cette valeur remplace tout ce qu’un développeur définit. Claude Code fusionne les clés de tableau dans les portées de paramètres que la session charge, donc un développeur peut ajouter des entrées ; consultez Keep developers from widening the policy pour les verrous réservés aux paramètres gérés. Pour exiger le sandbox pour une organisation, consultez Enforce sandboxing with managed settings.
sandbox.enabled
Activez sandboxing pour les commandes Bash. Lorsque vous choisissez un mode dans le panneau /sandbox, Claude Code écrit cette clé dans .claude/settings.local.json pour le projet actuel ; définissez-la dans ~/.claude/settings.json pour mettre en sandbox chaque projet.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : Booléen
true: Claude Code met en sandbox les commandes Bashfalse: les commandes Bash s’exécutent sans sandbox
- Default :
false
settings.json
bubblewrap et socat ; consultez Set up Linux and WSL2. Lorsque le sandbox ne peut pas démarrer, Claude Code exécute les commandes sans sandbox sauf si vous définissez également failIfUnavailable.
sandbox.failIfUnavailable
Faites en sorte que Claude Code se termine avec une erreur au démarrage lorsque sandbox.enabled est true mais que le sandbox ne peut pas démarrer, car une dépendance est manquante ou la plateforme n’est pas supportée. Sans cette clé, Claude Code exécute les commandes sans sandbox. Les déploiements gérés qui exigent le sandboxing comme barrière de sécurité peuvent utiliser ce paramètre.
Sur une plateforme que le sandbox ne supporte pas, Claude Code ne démarre pas lorsque cette clé est activée. Consultez Enforce sandboxing with managed settings.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : Booléen
true: Claude Code se termine avec une erreur au démarrage lorsquesandbox.enabledesttruemais que le sandbox ne peut pas démarrerfalse: Claude Code exécute les commandes sans sandbox lorsque le sandbox ne peut pas démarrer
- Default :
false
managed-settings.json
sandbox.autoAllowBashIfSandboxed
Laissez Claude Code exécuter les commandes Bash en sandbox sans demande de permission. Les commandes qui ne peuvent pas s’exécuter dans le sandbox passent toujours par le flux de permission régulier, et les règles deny et les règles ask limitées au contenu telles que Bash(git push *) s’appliquent toujours ; une règle ask Bash simple est ignorée pour les commandes en sandbox. Définissez-la sur false pour envoyer également les commandes en sandbox par le flux de permission régulier, que l’onglet Mode de /sandbox appelle mode de permissions régulier.
- Scope :
Any file - Type : Booléen
true: Claude Code exécute les commandes Bash en sandbox sans demande de permission, sous réserve des règlesdenyet des règlesasklimitées au contenu ;CLAUDE_CODE_SUBPROCESS_ENV_SCRUBdésactive l’auto-allowfalse: les commandes en sandbox passent par le flux de permission régulier, donc vos règles d’autorisation et le mode de permission décident. L’onglet Mode de/sandboxappelle ceci mode de permissions régulier
- Default :
true
settings.json
sandbox.excludedCommands
Nommez les commandes que Claude Code exécute en dehors du sandbox, comme les outils qui ne fonctionnent pas sous celui-ci. Chaque entrée utilise la même syntaxe que le contenu d’une règle de permission Bash(...) : une commande exacte, un préfixe tel que docker *, ou un motif avec caractères génériques. Un motif sans caractère générique est une correspondance exacte, donc docker ne correspond qu’à docker sans arguments.
Vos entrées sortent un appel Bash du sandbox uniquement lorsqu’elles couvrent chaque commande dedans, et certaines formes d’appel restent en sandbox même dans ce cas. Une entrée docker * seule ne sort pas npm ci && docker build . du sandbox.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : tableau de motifs de commande
- Default : non défini, donc aucune commande n’est exclue
settings.json
- Une commande commençant par
sudo,evalouxargs - Un
cd,pushdoupopd, où qu’il apparaisse dans l’appel - Une substitution de commande, un sous-shell ou un bloc de contrôle de flux tel que
ifoufor - Une redirection, comme
docker build . > build.log, autre qu’une qui duplique uniquement un descripteur de fichier, comme2>&1le fait - Un nom de commande qui provient d’une variable
- Un
git clone,git init,git worktree add,git worktree moveougit bundle createavec un argument de chemin qui est absolu, commence par~ou contient un segment..
cd build && docker compose up reste en sandbox sous une entrée docker *, et ajouter une entrée cd ne change pas cela. Sous une entrée git *, git clone <url> vendor/lib s’exécute en dehors du sandbox, mais git clone <url> ~/tools reste en sandbox. Un clone écrit toute une arborescence de fichiers, éventuellement exécutables, à l’endroit où pointe son chemin de destination.
Les commandes exclues passent toujours par le flux de permission régulier. L’exclusion est une commodité, pas une limite de sécurité : lorsqu’un outil ne doit écrire que quelque part de spécifique, filesystem.allowWrite le garde en sandbox.
Les entrées des portées de paramètres que la session charge se combinent en une seule liste, sauf si le sandbox est exigé par l’administrateur. Dans ce cas, Claude Code ignore les entrées de .claude/settings.json et .claude/settings.local.json, afin qu’un dépôt cloné ne puisse pas sortir des commandes du sandbox. Les entrées des paramètres gérés, de --settings et de votre ~/.claude/settings.json s’appliquent toujours, et aucun verrou réservé aux paramètres gérés ne couvre cette liste.
sandbox.allowUnsandboxedCommands
Laissez Claude réessayer une commande en dehors du sandbox avec le paramètre dangerouslyDisableSandbox après que le sandbox l’ait bloquée. Lorsqu’elle vaut false, Claude Code ignore ce paramètre. Tant que le sandbox est en cours d’exécution, les commandes que Claude exécute sont alors en sandbox, sauf si elles correspondent à une entrée excludedCommands. L’onglet Overrides de /sandbox affiche cet état comme Strict sandbox mode. Un false dans les paramètres gérés active le mode sandbox strict pour les développeurs qu’ils couvrent.
- Scope :
Any file, avec une limite sur les paramètres de projet et locaux - Type : Booléen
true: Claude peut réessayer une commande en dehors du sandbox avec le paramètredangerouslyDisableSandboxaprès que le sandbox l’ait bloquéefalse: Claude Code ignore ce paramètre, donc tant que le sandbox est en cours d’exécution, les commandes que Claude exécute sont en sandbox, sauf si elles correspondent à une entréeexcludedCommands
- Default :
true
managed-settings.json
false provenant des paramètres gérés ou de --settings rend également le sandbox exigé par l’administrateur. Un false dans vos paramètres utilisateur prévaut sur le true d’un projet, mais ne rend pas le sandbox exigé par l’administrateur. Prévaloir sur la valeur d’un projet nécessite Claude Code v2.1.285 ou ultérieur.
Qui approuve une nouvelle tentative sans sandbox dépend de votre mode de permission et de vos règles d’autorisation. Consultez The unsandboxed retry escape hatch.
Pour voir quand les commandes que vous tapez vous-même à l’invite de commandes du mode shell ! s’exécutent en sandbox, consultez strict sandbox mode.
sandbox.filesystem
Contrôlez les chemins que les commandes en sandbox peuvent lire et écrire. Par défaut, elles peuvent écrire dans le répertoire de travail, le répertoire temporaire propre à l’utilisateur et les répertoires que vous ajoutez avec --add-dir, /add-dir ou permissions.additionalDirectories, et peuvent lire le reste du système de fichiers, y compris les fichiers d’identifiants. Élargissez ou réduisez cela avec les quatre listes de chemins, ou désactivez la couche du système de fichiers avec disabled. Consultez Filesystem isolation pour les limites par défaut.
- Scope :
Any file - Type : objet avec les tableaux
allowWrite,denyWrite,denyReadetallowRead, plus les booléensallowManagedReadPathsOnlyetdisabled - Default : non défini, donc les limites de lecture et d’écriture par défaut s’appliquent
settings.json
kubectl, terraform ou npm. Claude Code ajoute vos règles de permission aux mêmes listes : les règles Edit allow et deny à allowWrite et denyWrite, les règles Read deny à denyRead, et les règles WebFetch(domain:...) allow et deny aux listes de domaines network.
Sauf si un verrou s’applique, Claude Code fusionne ces listes dans les fichiers de paramètres que la session charge. allowManagedReadPathsOnly limite allowRead aux entrées des paramètres gérés, et allowManagedDomainsOnly fait la même chose pour les domaines autorisés. Les verrous de dépôt laissent de côté les entrées des fichiers de paramètres d’un dépôt.
Configure sandboxing couvre les sources que vous excluez avec --setting-sources. Lorsque vous modifiez une liste pendant une session, Claude Code applique la modification à la session en cours d’exécution.
Préfixes de chemin du sandbox
Les chemins dansallowWrite, denyWrite, denyRead, allowRead et credentials.files se résolvent par leur préfixe :
Le préfixe
//path pour les chemins absolus fonctionne également. Si vous utilisez /path simple en 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 du sandbox utilisent des conventions standard, donc /tmp/build est un chemin absolu.
Claude Code supprime une barre oblique finale d’un chemin de répertoire, donc ~/.aws et ~/.aws/ correspondent au même répertoire. Avant v2.1.224, Claude Code transmettait la barre oblique finale au sandbox, et Claude pouvait toujours lire ou écrire des chemins sous une entrée denyRead ou denyWrite écrite avec une.
Claude Code supprime également un /** final, donc ~/build/** et ~/build couvrent le même répertoire. Le fait qu’un caractère générique tel que * fonctionne dépend de la liste dans laquelle se trouve l’entrée et de la plateforme :
allowWriteetdenyWrite: sur macOS, les caractères génériques fonctionnent. Sur Linux et WSL2, le sandbox monte des chemins concrets, donc Claude Code ignore une entrée qui contient*,?ou[une fois que le/**final est supprimé, et cette entrée n’a aucun effet. Claude Code ajoute les chemins de vos règles de permissionEdità ces listes, donc la même limite s’applique à elles, et l’onglet Config de/sandboxavertit des règles de permissionEditetReadqui contiennent des caractères génériques.denyReadetallowRead: les caractères génériques fonctionnent sur chaque plateforme. Sur Linux et WSL2, Claude Code développe une entrée de lecture aux chemins concrets qu’elle correspond, ce qu’il ne fait pas pour les listes d’écriture.
sandbox.filesystem.allowWrite
Ajoutez des chemins où les commandes en sandbox peuvent écrire, au-delà du répertoire de travail, du répertoire temporaire propre à l’utilisateur et des répertoires que vous avez ajoutés avec --add-dir, /add-dir ou permissions.additionalDirectories. Utilisez-le lorsqu’un sous-processus tel que kubectl ou un outil de build doit écrire en dehors du projet.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : tableau de chaînes de chemin, utilisant les préfixes de chemin du sandbox
- Default : non défini, donc les commandes en sandbox peuvent écrire dans le répertoire de travail, le répertoire temporaire propre à l’utilisateur, les répertoires que vous avez ajoutés avec
--add-dirou/add-dir, et les répertoires danspermissions.additionalDirectories
/tmp/build et permet à kubectl de mettre à jour votre kubeconfig :
settings.json
allowWrite et les chemins de vos règles de permission Edit(...) allow dans les portées de paramètres que la session charge, en laissant de côté ceux des paramètres du dépôt tant que permissions.blockReadsOutsideWorkingDirectories est activé. Les verrous de dépôt peuvent également laisser de côté les entrées d’un dépôt. Une entrée allowWrite ne peut pas lever un chemin protégé.
sandbox.filesystem.denyWrite
Bloquez les commandes en sandbox d’écrire dans des chemins spécifiques, y compris les chemins à l’intérieur d’un répertoire qui est autrement accessible en écriture.
- Scope :
Any file - Type : tableau de chaînes de chemin, utilisant les préfixes de chemin du sandbox
- Default : non défini
settings.json
Edit(...) deny.
sandbox.filesystem.denyRead
Bloquez les commandes en sandbox de lire des chemins spécifiques, comme les fichiers d’identifiants que la politique de lecture par défaut exposerait autrement. Pour protéger un fichier d’identifiants et le garder utilisable via le proxy du sandbox, consultez sandbox.credentials à la place.
- Scope :
Any file - Type : tableau de chaînes de chemin, utilisant les préfixes de chemin du sandbox
- Default : non défini, donc les commandes en sandbox conservent l’accès en lecture par défaut, qui inclut les fichiers d’identifiants tels que
~/.aws/credentials
settings.json
Read(...) deny. Lorsque filesystem.disabled est true, Claude Code n’applique pas ces entrées.
sandbox.filesystem.allowRead
Rouvrez la lecture pour des chemins spécifiques à l’intérieur d’une région que denyRead bloque, pour construire un accès en lecture réservé à l’espace de travail. Une entrée denyRead exacte ou avec caractères génériques reste bloquée à l’intérieur d’une allowRead plus large, comme le montre le tableau de chevauchement. Lorsqu’une entrée denyRead avec caractères génériques telle que ~/**/.env correspond à un répertoire, Claude Code bloque également les lectures de son contenu. Avant v2.1.236 sur macOS, Claude Code rouvrait les chemins qu’une entrée denyRead avec caractères génériques correspondait partout où une entrée allowRead plus large les couvrait, et laissait le contenu d’un répertoire correspondant lisible.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : tableau de chaînes de chemin, utilisant les préfixes de chemin du sandbox
- Default : non défini
settings.json
. à la racine du projet dans les paramètres du projet et à ~/.claude dans les paramètres utilisateur. Claude Code fusionne les entrées dans les fichiers de paramètres que la session charge sauf si allowManagedReadPathsOnly est défini, et laisse de côté les entrées des paramètres du dépôt tant que permissions.blockReadsOutsideWorkingDirectories est activé. Les verrous de dépôt peuvent également laisser de côté les entrées d’un dépôt.
sandbox.filesystem.allowManagedReadPathsOnly
Honorez uniquement les entrées allowRead qui proviennent des paramètres gérés, afin que les développeurs ne puissent pas rouvrir l’accès en lecture aux chemins que votre organisation a bloqués. Claude Code fusionne toujours les entrées denyRead de chaque portée de paramètres que la session charge.
- Scope :
Managed - Type : Booléen
true: Claude Code honore uniquement les entréesallowReaddes paramètres gérésfalse: les entréesallowReadd’autres fichiers de paramètres peuvent être fusionnées
- Default :
false
~/work, et empêche les développeurs de rouvrir autre chose :
managed-settings.json
sandbox.filesystem.disabled
Ignorez l’isolation du système de fichiers tout en conservant l’isolation du réseau. Les commandes en sandbox obtiennent un accès en lecture et écriture sans restriction au système de fichiers hôte, et leur sortie réseau reste confinée à network.allowedDomains. Utilisez-le lorsque vous mettez en sandbox pour contrôler où les commandes se connectent plutôt que ce qu’elles écrivent. Nécessite Claude Code v2.1.216 ou ultérieur.
- Scope :
User or managed. Lorsque les paramètres gérés configurentsandbox.filesystemdu tout, ou listent une entréesandbox.credentials.filesavec"mode": "deny", seuls les paramètres gérés peuvent la définir. - Type : Booléen
true: Claude Code ignore l’isolation du système de fichiers et conserve l’isolation du réseaufalse: l’isolation du système de fichiers reste activée
- Default :
false, donc l’isolation du système de fichiers reste activée
settings.json
denyRead ou credentials.files deny, tandis que les entrées credentials.envVars et les entrées mask appliquées continuent de fonctionner. autoAllowBashIfSandboxed utilise toujours true par défaut, donc définissez-le sur false pour continuer à demander. Consultez Disable filesystem isolation pour la liste complète des sources qui peuvent la définir et ce qui change lorsque l’isolation est désactivée. Nécessite Claude Code v2.1.216 ou ultérieur.
sandbox.ignoreViolations
Silence les rapports de violation du sandbox pour les chemins qu’une commande est censée sonder et se voir refuser, comme un outil qui vérifie /etc/hosts au démarrage, afin que ces refus ne s’affichent pas comme des violations ou dans ce que Claude voit. Le sandbox bloque toujours l’accès ; seul le rapport est supprimé. Les clés sont des sous-chaînes à faire correspondre avec la commande, avec * correspondant à chaque commande, et les valeurs sont des sous-chaînes de la violation à ignorer pour cette commande, comme un chemin du système de fichiers.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : objet mappant une sous-chaîne de commande à un tableau de sous-chaînes de violation, généralement des chemins
- Default : non défini, donc chaque violation est signalée
settings.json
sandbox.enableWeakerNestedSandbox
Exécutez le sandbox Linux à l’intérieur d’un conteneur Docker sans privilèges, où bubblewrap ne peut pas monter un /proc frais. À la place, le sandbox interne lie-monte le /proc existant du conteneur, ce qui expose les informations de processus qu’un montage frais cacherait. Ceci réduit la sécurité ; utilisez-le uniquement lorsque le conteneur externe fournit déjà l’isolation dont vous avez besoin.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : Booléen
true: le sandbox interne lie-monte le/procexistant du conteneur au lieu de monter un fraisfalse: le sandbox monte un/procfrais, ce qui ne fonctionne pas dans un conteneur Docker sans privilèges
- Default :
false
settings.json
sandbox.enableWeakerNetworkIsolation
Laissez les commandes en sandbox sur macOS atteindre le service de confiance TLS système, com.apple.trustd.agent. Les outils basés sur Go tels que gh, gcloud et terraform en ont besoin pour vérifier les certificats TLS lorsque vous utilisez network.httpProxyPort avec un proxy MITM et une CA personnalisée. Ceci réduit la sécurité en ouvrant un chemin potentiel d’exfiltration de données via le service de confiance.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : Booléen
true: les commandes en sandbox sur macOS peuvent atteindrecom.apple.trustd.agentfalse: les commandes en sandbox sur macOS ne peuvent pas atteindre le service de confiance TLS système
- Default :
false
settings.json
excludedCommands ; consultez Go-based CLIs fail TLS verification on macOS.
sandbox.allowAppleEvents
Laissez les commandes en sandbox sur macOS envoyer des Apple Events, que open, osascript et les outils qui ouvrent des URL dans un navigateur nécessitent ; sans cela, ils échouent avec l’erreur -600. Ceci supprime l’isolation de l’exécution du code : les commandes en sandbox peuvent lancer d’autres applications sans sandbox sans demande à l’utilisateur, et peuvent envoyer des commandes AppleScript aux applications en cours d’exécution telles que Terminal, sous réserve de l’invite de consentement d’automatisation macOS par application (TCC).
- Scope :
User or managed - Type : Booléen
true: les commandes en sandbox sur macOS peuvent envoyer des Apple Eventsfalse: les commandes en sandbox sur macOS ne peuvent pas envoyer des Apple Events, doncopenetosascriptéchouent avec l’erreur-600
- Default :
false
settings.json
excludedCommands à la place. Consultez Apple Events on macOS.
sandbox.ripgrep
Pointez le sandbox vers un binaire ripgrep de votre choix au lieu de celui que Claude Code utilise, par exemple lorsque votre plateforme a besoin d’un rg construit différemment.
- Scope :
User or managed - Type : objet avec
command, le chemin vers le binaire ripgrep, et optionnellementargs, un tableau d’arguments à ajouter en préfixe - Default : non défini, donc le sandbox utilise le même binaire ripgrep que Claude Code. C’est le binaire fourni sauf si vous définissez
USE_BUILTIN_RIPGREPsur0
settings.json
sandbox.bwrapPath
Pointez le sandbox vers un binaire bubblewrap installé en dehors de PATH, comme une copie vendorisée sur un hôte isolé. Claude Code utilise le chemin à la fois pour la vérification de dépendance au démarrage et lorsqu’il enveloppe chaque commande en sandbox.
- Scope :
Managed. Claude Code le lit uniquement à partir des paramètres gérés afin qu’un fichier utilisateur, projet ou local ne puisse pas pointer le sandbox vers un binaire différent. - Type : chaîne, un chemin absolu ; Claude Code abandonne un chemin relatif et revient à la recherche
PATH - Default : non défini, donc Claude Code trouve
bwrapsurPATH
managed-settings.json
sandbox.socatPath
Pointez le proxy réseau du sandbox vers un binaire socat installé en dehors de PATH.
- Scope :
Managed - Type : chaîne, un chemin absolu ; Claude Code abandonne un chemin relatif et revient à la recherche
PATH - Default : non défini, donc Claude Code trouve
socatsurPATH
managed-settings.json
sandbox.credentials
Déclarez les fichiers d’identifiants et les variables d’environnement à protéger des commandes en sandbox. Chaque entrée nomme un fichier path ou une variable name et un mode : deny masque l’identifiant à l’intérieur du sandbox, et mask affiche aux commandes en sandbox un espace réservé tandis que le proxy du sandbox substitue la valeur réelle sur les requêtes sortantes. Claude Code protège uniquement les entrées que vous listez ; il n’y a pas de liste de refus d’identifiants intégrée.
- Scope :
Any file. Claude Code honore les entréesmask,allowPlaintextInject,awsPairsetsigv4uniquement à partir des paramètres utilisateur, gérés et du flag--settings. - Type : objet avec
files,envVars,allowPlaintextInject,awsPairsetsigv4 - Default : non défini, donc aucun identifiant n’est protégé
GITHUB_TOKEN des commandes en sandbox :
settings.json
deny fait partie de la couche du système de fichiers, donc elle ne s’applique pas lorsque vous désactivez l’isolation du système de fichiers ; la protection de variable d’environnement s’applique toujours.
Entrées d’identifiants invalides dans les paramètres gérés
Lorsqu’une entréesandbox.credentials gérée échoue la validation, Claude Code continue de protéger l’identifiant où il peut :
- Une entrée dans
filesouenvVarsqui a toujours unpathounamevalide et unmodedemaskoudeny, comme une dont le motifextractn’a pas de groupe de capture, est dégradée àmode: "deny"avec un avertissement, donc l’identifiant reste bloqué, pas masqué, jusqu’à ce que vous corrigiez l’entrée. Une entréefilesdégradée épinglefilesystem.disabledcomme une entréedenyexplicite, et l’avertissement note que son bloc de lecture n’est pas appliqué si les paramètres gérés désactivent l’isolation du système de fichiers. - Une entrée avec un
modeinconnu ou unpathounameinvalide est supprimée. - Chaque cas avertit ; qu’une entrée soit dégradée ou supprimée, les entrées valides restantes sont toujours appliquées.
sandbox.credentials.files
Protégez les fichiers ou répertoires d’identifiants des commandes en sandbox. Avec "mode": "deny", Claude Code bloque les lectures du chemin à l’intérieur du sandbox, le même bloc de lecture que sandbox.filesystem.denyRead. Avec "mode": "mask", les commandes en sandbox sur Linux et WSL2 lisent une copie sentinelle du fichier, et le proxy du sandbox substitue la valeur réelle sur les requêtes sortantes vers les injectHosts de cette entrée ; sur macOS le fichier est illisible à l’intérieur du sandbox à la place. "mode": "mask" nécessite Claude Code v2.1.221 ou ultérieur.
- Scope :
Any file. Claude Code abandonne les entréesmaskde.claude/settings.jsondu projet et de.claude/settings.local.jsonlocal. - Type : tableau d’objets, chacun avec
pathet unmodede"deny"ou"mask", plus les champs mask optionnels pour les fichiers - Default : non défini, donc aucun fichier d’identifiants n’est protégé
gh, en substituant la valeur réelle uniquement sur les requêtes vers api.github.com :
settings.json
sandbox.filesystem.*, et Claude Code fusionne les tableaux de chaque portée de paramètres que la session charge. Protect credentials couvre ce qui s’applique toujours à partir des sources que vous excluez avec --setting-sources. Les entrées mask nécessitent Claude Code v2.1.221 ou ultérieur.
La substitution mask s’exécute uniquement via le proxy du sandbox, donc définissez sandbox.network.tlsTerminate, ou allowPlaintextInject pour les réseaux de test HTTP simple. mask s’applique à un seul fichier, donc listez chaque fichier d’identifiants individuellement. Claude Code accepte mais ignore les champs mask sur une entrée deny. Mask credentials couvre quelles sources de paramètres sont honorées, et Mask credential files couvre quand une entrée revient à deny.
Champs mask pour les fichiers
Une entréemask accepte ces champs optionnels. Sans extract ou decode, Claude Code remplace le contenu du fichier entier par un sentinelle. Sur macOS avec l’isolation du système de fichiers activée, Claude Code applique une entrée mask comme deny avant que extract ou decode s’exécute ; consultez Mask credential files.
Ceci masque uniquement la valeur
oauth_token dans le fichier hosts gh, remplace chaque autre copie de celle-ci dans le fichier, rend le fichier illisible si le motif ne correspond à rien, et substitue le token réel uniquement sur les requêtes vers api.github.com :
settings.json
sandbox.credentials.envVars
Protégez les variables d’environnement des commandes en sandbox. Avec "mode": "deny", Claude Code supprime la variable de l’environnement des commandes en sandbox. Avec "mode": "mask", les commandes en sandbox voient une valeur sentinelle par session, et le proxy du sandbox substitue la valeur réelle sur les requêtes sortantes vers les injectHosts de cette entrée, afin que les outils tels que gh et npm continuent de s’authentifier sans jamais détenir l’identifiant réel.
- Scope :
Any file. Claude Code abandonne les entréesmaskde.claude/settings.jsondu projet et de.claude/settings.local.jsonlocal. - Type : tableau d’objets, chacun avec
nameet unmodede"deny"ou"mask", plus les champs mask optionnels pour les variables d’environnement - Default : non défini, donc aucune variable d’environnement n’est protégée
NPM_TOKEN des commandes en sandbox et masque GITHUB_TOKEN, en substituant la valeur réelle uniquement sur les requêtes vers api.github.com :
settings.json
name doit commencer par une lettre ou un trait de soulignement et contenir uniquement des lettres, des chiffres et des traits de soulignement. Claude Code fusionne les tableaux de chaque portée de paramètres que la session charge, et applique deny lorsque la même variable apparaît avec les deux modes. Protect credentials couvre ce qui s’applique toujours à partir des sources que vous excluez avec --setting-sources.
La substitution mask s’exécute uniquement via le proxy du sandbox, donc définissez sandbox.network.tlsTerminate, ou allowPlaintextInject pour les réseaux de test HTTP simple ; consultez Mask credentials. Claude Code accepte mais ignore les champs mask sur une entrée deny.
Champs mask pour les variables d’environnement
Une entréemask accepte ces champs optionnels. Sans extract ou decode, Claude Code remplace la valeur entière par un sentinelle. extract et decode ne peuvent pas être combinés sur la même entrée.
Ceci masque uniquement le mot de passe à l’intérieur de
DATABASE_URL, supprime la variable de l’environnement si le motif ne correspond à rien, et masque un JWT dans SERVICE_JWT tout en laissant chaque claim sauf api_key lisible :
settings.json
sandbox.credentials.allowPlaintextInject
Autorisez la substitution mask sur les requêtes HTTP simples ainsi que sur HTTPS terminé par TLS. Sur HTTP simple, l’identité en amont n’est pas vérifiée et l’identifiant voyage en clair, donc laissez ceci désactivé en dehors des réseaux de test de confiance.
- Scope :
User or managed - Type : Booléen
true: Claude Code autorise la substitutionmasksur les requêtes HTTP simples ainsi que sur HTTPS terminé par TLSfalse: Claude Code autorise la substitutionmaskuniquement sur HTTPS terminé par TLS
- Default :
false
settings.json
sandbox.credentials.awsPairs
Groupez les variables d’environnement masquées qui forment un identifiant AWS pour le re-signing SigV4 lorsque votre identifiant vit dans des variables avec des noms non standard. Claude Code lie automatiquement le trio conventionnel AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY et AWS_SESSION_TOKEN lorsque vous masquez leurs valeurs entières, donc vous n’avez besoin de cette clé que pour d’autres noms. Nécessite Claude Code v2.1.224 ou ultérieur.
- Scope :
User or managed - Type : tableau d’objets, chacun avec
accessKeyIdVar,secretAccessKeyVaret optionnellementsessionTokenVar, nommant les entréessandbox.credentials.envVars - Default : non défini, donc seul le trio conventionnel est appairé
settings.json
mask de valeur entière dans sandbox.credentials.envVars, sans extract ou decode, et ne peut remplir qu’un seul rôle dans toutes les paires. Ces règles s’appliquent également :
- Le proxy re-signe les requêtes sur les hôtes listés dans les
injectHostsde l’entrée de l’ID de clé d’accès - Lorsque
sessionTokenVarest défini, le proxy envoie le jeton réel commex-amz-security-tokensur les requêtes re-signées - Nommer l’une des variables conventionnelles dans une paire remplace l’appairage automatique
sandbox.credentials.sigv4
Choisissez ce que le proxy du sandbox fait avec les formes de requête AWS qu’il ne peut pas re-signer : streaming pour les téléchargements en streaming aws-chunked, presigned pour les URLs présignées, et sigv4a pour les signatures asymétriques SigV4A. Ceci s’applique uniquement aux requêtes signées avec l’ID de clé d’accès espace réservé d’une paire masquée. Nécessite Claude Code v2.1.224 ou ultérieur.
- Scope :
User or managed - Type : objet avec
streaming,presignedetsigv4a, chacun l’un de :"deny": le proxy fait échouer la requête"passthrough": le proxy transmet la requête signée avec l’espace réservé masqué, afin que l’outil reçoive le propre rejet d’AWS
- Default : non défini, donc chaque forme est
"deny"
settings.json
deny, le proxy fait échouer la requête. Avec passthrough, le proxy transmet la requête avec sa signature calculée à partir de l’espace réservé masqué, afin qu’AWS la rejette et que l’outil appelant reçoive la propre réponse d’AWS au lieu d’une erreur de proxy.
sandbox.network
Contrôlez les hôtes, ports et sockets que les commandes en sandbox peuvent atteindre. Le sandbox achemine le trafic sortant via un proxy qui applique ces listes ; consultez Network isolation pour savoir comment le proxy décide et quand il demande.
- Scope :
Any file.strictAllowlist,allowManagedDomainsOnlyettlsTerminatesont lus à partir de moins de sources, comme leurs entrées le disent. - Type : objet avec les sous-clés ci-dessous
- Default : non défini, donc aucun domaine n’est pré-autorisé et votre mode de permission décide ce qu’il advient de chaque nouvel hôte
uploads.github.com, et permet aux commandes de se lier à localhost :
settings.json
WebFetch(domain:...) allow et deny alimentent les mêmes listes allow et deny.
sandbox.network.allowUnixSockets
Listez les chemins de socket Unix auxquels les commandes en sandbox peuvent se connecter sur macOS. Claude Code ignore cette liste sur Linux et WSL2, où le filtre seccomp ne peut pas inspecter les chemins de socket ; utilisez allowAllUnixSockets à la place.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : tableau de chaînes, chacun un chemin de socket
- Default : non défini, donc le sandbox macOS bloque chaque socket Unix
settings.json
/var/run/docker.sock, par exemple, permet à une commande en sandbox de contrôler le démon Docker. Consultez Security limitations.
sandbox.network.allowAllUnixSockets
Laissez les commandes en sandbox se connecter à chaque socket Unix. Sur Linux et WSL2, le filtre seccomp du sandbox bloque les appels socket(AF_UNIX, ...), donc c’est le seul moyen de permettre les sockets Unix là. Lorsque le filtre est manquant, que /sandbox rapporte sur son onglet Dependencies, le sandbox ne bloque pas les appels de socket Unix. Consultez Set up Linux and WSL2 pour savoir d’où vient le filtre.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : Booléen
true: les commandes en sandbox peuvent se connecter à chaque socket Unixfalse: le sandbox bloque les connexions de socket Unix : sur macOS sauf les chemins dansallowUnixSockets, et sur Linux et WSL2 via le filtre seccomp lorsqu’il est présent
- Default :
false
settings.json
true rouvre également le socket interop qui lance les binaires Windows tels que cmd.exe et powershell.exe.
sandbox.network.allowLocalBinding
Laissez les commandes en sandbox sur macOS écouter sur des ports réseau, par exemple pour démarrer un serveur de développement, et se connecter à n’importe quel port sur localhost. Une commande qui écoute sur une adresse autre que loopback accepte les connexions provenant d’autres machines. La clé n’a aucun effet sur Linux et WSL2, où chaque commande en sandbox possède sa propre interface loopback. Pour atteindre un serveur sur l’hôte depuis Linux ou WSL2, consultez A command fails to reach a server on localhost.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : Booléen
true: les commandes en sandbox sur macOS peuvent écouter sur n’importe quelle adresse locale et se connecter à n’importe quel port sur localhostfalse: les commandes en sandbox sur macOS ne peuvent pas écouter sur un port ni se connecter directement aux serveurs sur localhost
- Default :
false
settings.json
sandbox.network.allowMachLookup
Listez les noms de service XPC et Mach supplémentaires que le sandbox macOS peut rechercher. Les outils qui communiquent via XPC, comme le simulateur iOS ou Playwright, ont besoin de leurs services listés ici.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux - Type : tableau de chaînes, chacun un nom de service ; un seul
*final correspond à un préfixe, et"*"seul correspond à chaque service - Default : non défini
com.apple.coresimulator. :
settings.json
sandbox.network.allowedDomains
Pré-autorisez les domaines pour le trafic sortant des commandes en sandbox, afin que le sandbox ne demande pas pour eux. Les caractères génériques tels que *.example.com correspondent aux sous-domaines, et un suffixe :port optionnel limite une entrée à un port ; une entrée sans port correspond à chaque port.
- Scope :
Any file, avec des limites sur les paramètres de projet et locaux. Uniquement les paramètres gérés lorsqueallowManagedDomainsOnlyest défini. - Type : tableau de chaînes, chacun un domaine, motif avec caractères génériques ou littéral IP, avec un suffixe
:portoptionnel - Default : non défini, donc votre mode de permission décide ce qu’il advient de chaque nouvel hôte
settings.json
"[::1]" autorise chaque port et "[::1]:443" un port. La forme entre crochets nécessite Claude Code v2.1.229 ou ultérieur. Consultez IPv6 addresses in domain lists.
sandbox.network.deniedDomains
Bloquez les domaines pour le trafic sortant des commandes en sandbox, en utilisant la même syntaxe de caractères génériques, port et IPv6 que allowedDomains. Un domaine refusé reste bloqué même lorsqu’une entrée allowedDomains le correspond également.
- Scope :
Any file - Type : tableau de chaînes, chacun un domaine, motif avec caractères génériques ou littéral IP, avec un suffixe
:portoptionnel - Default : non défini
settings.json
allowManagedDomainsOnly est défini, donc un développeur peut toujours resserrer la liste de refus. Pour les littéraux IPv6, consultez IPv6 addresses in domain lists.
Une entrée écrite avec le point final qui marque un nom de domaine pleinement qualifié, comme example.com., bloque les mêmes connexions que example.com.
sandbox.network.strictAllowlist
Refusez aux commandes en sandbox l’accès aux hôtes en dehors de la liste d’autorisation au lieu de demander l’approbation. La liste d’autorisation est allowedDomains plus les domaines des règles allow WebFetch(domain:...), ou uniquement les entrées des paramètres gérés lorsque allowManagedDomainsOnly est défini. Locks that apply without an admin-required sandbox couvre les entrées d’un dépôt. Nécessite Claude Code v2.1.219 ou ultérieur.
- Scope :
User or managed. Un dépôt ne peut pas l’activer ou le désactiver. - Type : Booléen
true: Claude Code refuse aux commandes en sandbox l’accès aux hôtes en dehors de la liste d’autorisationfalse: sauf si un autre fichier de paramètres de confiance définittrue, Claude Code décide un hôte en dehors de la liste d’autorisation par mode de permission au lieu de le refuser directement : en mode auto il vérifie l’hôte par rapport aux domaines autorisés par commande, en modedontAskil refuse, en modebypassPermissionset en sessions en mode plan de terminal interactif où le bypass est disponible il autorise, et sinon il vous demande
- Default :
false
settings.json
WebFetch suivent toujours leurs règles de permission. Lorsque l’une des sources honorées la définit sur true, elle reste activée. Consultez Network isolation. Nécessite Claude Code v2.1.219 ou ultérieur.
sandbox.network.allowManagedDomainsOnly
Verrouillez la liste d’autorisation du réseau à ce que les paramètres gérés définissent. Claude Code honore alors uniquement allowedDomains et les règles allow WebFetch(domain:...) des paramètres gérés, ignore les domaines des paramètres utilisateur, projet, local et --settings, et bloque automatiquement un domaine non autorisé au lieu de demander.
- Scope :
Managed - Type : Booléen
true: Claude Code honore uniquementallowedDomainset les règles allowWebFetch(domain:...)des paramètres gérés et bloque un domaine non autorisé au lieu de demanderfalse: les domaines d’autres fichiers de paramètres peuvent être fusionnés dans la liste d’autorisation
- Default :
false
managed-settings.json
true, le sandbox est exigé par l’administrateur, et seuls les paramètres gérés peuvent définir un port de proxy.
Les domaines refusés fusionnent toujours de chaque source que la session charge. Consultez Keep developers from widening the policy.
sandbox.network.httpProxyPort
Pointez le sandbox vers votre propre proxy HTTP au lieu de celui que Claude Code exécute. Les organisations font cela pour inspecter le trafic HTTPS, appliquer leurs propres règles de filtrage ou journaliser les requêtes. Votre proxy prend en charge le filtrage, et Claude Code cesse d’appliquer ses listes de domaines et ses demandes réseau au trafic qui y est envoyé. Lorsqu’il n’est pas défini, Claude Code démarre son propre proxy pour le trafic HTTP.
- Scope :
Any file, sauf si d’autres paramètres du sandbox limitent les fichiers pouvant définir un port - Type : nombre, un port TCP local
- Default : non défini, donc Claude Code exécute son propre proxy
settings.json
socksProxyPort si votre proxy doit également transporter le trafic SOCKS ; avec un seul des deux défini, Claude Code exécute toujours son propre proxy pour l’autre protocole. Consultez Custom proxy configuration.
sandbox.network.socksProxyPort
Pointez le sandbox vers votre propre proxy SOCKS5 au lieu de celui que Claude Code exécute. Votre proxy prend en charge le filtrage, et Claude Code cesse d’appliquer ses listes de domaines et ses demandes réseau au trafic qui y est envoyé. Lorsqu’il n’est pas défini, Claude Code démarre son propre proxy pour le trafic SOCKS.
- Scope :
Any file, sauf si d’autres paramètres du sandbox limitent les fichiers pouvant définir un port - Type : nombre, un port TCP local
- Default : non défini, donc Claude Code exécute son propre proxy
settings.json
sandbox.network.tlsTerminate
Faites en sorte que le proxy du sandbox termine TLS afin qu’il puisse lire le contenu des requêtes HTTPS. Ceci est expérimental, et la substitution d’identifiants mask l’exige. Définissez {} pour générer une autorité de certification éphémère pour la session, ou définissez caCertPath et caKeyPath pour utiliser la vôtre.
- Scope :
User or managed. Un dépôt ne peut pas l’activer ou fournir une autorité de certification. - Type : objet avec les chaînes optionnelles
caCertPathetcaKeyPath, chacune un chemin de fichier - Default : non défini, donc le proxy ne termine pas ou n’inspecte pas TLS
settings.json
--settings, puis paramètres utilisateur.
Mémoire et contexte
Contrôlez ce que Claude Code charge dans le contexte, comment il compacte et où il conserve la mémoire et les plans. Voir Gérer le contexte et Mémoire.autoCompactEnabled
Faites en sorte que Claude Code compacte la conversation automatiquement lorsque le contexte approche de la limite. Apparaît dans /config sous Auto-compact, et le basculer là-bas écrit cette clé dans vos paramètres utilisateur.
- Scope :
Any file - Type : Boolean
true: Claude Code compacte la conversation automatiquement lorsque le contexte approche de la limitefalse: Claude Code ne compacte pas automatiquement
- Default :
true - Per-session overrides :
DISABLE_AUTO_COMPACTdésactive le compactage automatique pour une session ; celui des deux qui le désactive, l’autre ne peut pas le réactiver
settings.json
/compact continue de fonctionner tandis que le compactage automatique est désactivé.
autoCompactWindow
Définissez le remplissage du contexte avant que Claude Code compacte automatiquement.
- Scope :
Any file - Type : nombre de tokens, de
100000à1000000. Claude Code plafonne la valeur à la fenêtre de contexte de votre modèle ; l’aperçu des modèles répertorie la fenêtre de chaque modèle - Default : non défini, donc Claude Code choisit une fenêtre adaptée à votre modèle
- Per-session overrides :
--autocompacta la priorité sur cette clé pour une session, etCLAUDE_CODE_AUTO_COMPACT_WINDOWa la priorité sur les deux
settings.json
/autocompact enregistre une fenêtre pour le modèle actuel sous modelSettings, qui a la priorité sur cette clé dans le même fichier pour ce modèle. Définir la fenêtre de compaction automatique explique comment la commande, le flag, la variable et le paramètre interagissent.
autoMemoryDirectory
Stockez la mémoire automatique dans un répertoire de votre choix au lieu de la valeur par défaut par projet.
- Scope :
Any file - Type : string, un chemin de répertoire absolu ou préfixé par
~/ - Default : non défini, donc Claude Code utilise
~/.claude/projects/<project>/memory/
settings.json
autoMemoryEnabled
Activez ou désactivez la mémoire automatique. Lorsque false, Claude ne lit pas et n’écrit pas dans le répertoire de mémoire automatique. Vous pouvez également le basculer avec /memory pendant une session, ce qui écrit cette clé dans vos paramètres utilisateur.
- Scope :
Any file - Type : Boolean
true: identique à non défini ; la mémoire automatique reste activée sauf si quelque chose qui surclasse cette clé la désactive pour la session, comme--bare, le mode sécurisé ouCLAUDE_CODE_DISABLE_AUTO_MEMORYfalse: Claude ne lit pas et n’écrit pas dans le répertoire de mémoire automatique
- Default :
true - Per-session overrides :
CLAUDE_CODE_DISABLE_AUTO_MEMORYa la priorité sur cette clé pour une session, dans les deux sens
settings.json
bashOutputMaxChars
Définissez le nombre de caractères de la sortie d’une commande Bash ou PowerShell réussie que Claude reçoit en ligne. Lorsque la sortie dépasse la limite, Claude Code l’enregistre dans un fichier et Claude reçoit un court aperçu plus le chemin du fichier. Augmentez la limite lorsque la sortie de commande, comme une compilation détaillée ou un journal complet de suite de tests, dépasse régulièrement la valeur par défaut et que vous souhaitez que Claude la lise sans ouvrir le fichier. Nécessite Claude Code v2.1.261 ou ultérieur.
- Scope :
Any file - Type : nombre de caractères, un entier positif. Claude Code limite la valeur à la plage
4000à128000 - Default : non défini, donc Claude reçoit jusqu’à 30 000 caractères en ligne
settings.json
BASH_MAX_OUTPUT_LENGTH.
claudeMd
Injectez les instructions de style CLAUDE.md en tant que mémoire gérée par l’organisation sans déployer un fichier séparé. Claude Code charge le texte en tant qu’entrée de mémoire gérée avant les fichiers CLAUDE.md utilisateur et projet.
- Scope :
Managed - Type : string, le texte d’un fichier CLAUDE.md ; écrivez-le comme vous le feriez pour le fichier, Markdown inclus, avec les sauts de ligne comme
\n - Default : non défini
managed-settings.json
claudeMdExcludes
Ignorez les fichiers CLAUDE.md spécifiques lorsque Claude Code charge la mémoire. Dans un grand monorepo, utilisez-le pour ignorer les fichiers CLAUDE.md d’autres équipes qui ne sont pas pertinents pour votre travail ; Exclure les fichiers CLAUDE.md non pertinents dans le guide des grands codebases explique ce cas. Les motifs correspondent aux chemins de fichiers absolus.
- Scope :
Any file - Type : array of strings, chacun un motif glob ou un chemin absolu
- Default : non défini, donc Claude Code charge chaque CLAUDE.md qu’il trouve
settings.json
env
Définissez les variables d’environnement pour chaque session et pour les sous-processus que Claude Code démarre à partir de celle-ci. Toute variable dans la référence des variables d’environnement peut aller ici, ce qui est comment vous l’appliquez à chaque session ou la déployez à votre équipe. Les paramètres de projet et locaux ne peuvent pas définir certaines d’entre elles.
- Scope :
Any file - Type : object mapping variable names to string values
- Default : non défini
settings.json
Comment les valeurs env interagissent avec votre shell
- Une valeur ici écrase la même variable exportée dans votre shell, et lorsque plus d’un fichier de paramètres définit une variable, celle avec la plus haute priorité s’applique. Variables que Claude Code ignore dans
envrépertorie les exceptions pour les paramètres de projet et locaux. - Lorsque l’application Claude Desktop ou un environnement auto-hébergé démarre la session, l’environnement de lancement qu’il construit a la priorité à la place : Claude Code ignore une valeur
envde n’importe quel fichier de paramètres pour une variable que l’environnement de lancement a déjà définie. Le journal de débogage nomme chaque variable ignorée. - Pour annuler une exportation de shell, définissez la variable sur
"". Claude Code traite une valeur vide comme non définie pour la sélection du fournisseur, et les sous-processus héritent de la valeur vide. NO_COLORetFORCE_COLORdéfinis ici ne parviennent qu’aux sous-processus. Pour modifier les couleurs de l’interface de Claude Code lui-même, définissez-les dans votre shell avant de lancerclaude.- Les valeurs ici sont du texte brut dans le fichier de paramètres et parviennent à chaque sous-processus que Claude Code démarre. Pour un jeton porteur OTLP qui tourne, utilisez
otelHeadersHelper; pour les identifiants d’API, utilisezapiKeyHelper.
Quand Claude Code applique les valeurs env
- À partir des paramètres utilisateur,
--settingset des paramètres gérés : au démarrage, et à nouveau dans la session en cours lorsqu’une modification enregistrée modifie leenvfusionné. - À partir des paramètres de projet et locaux : après avoir approuvé l’espace de travail, ou au démarrage en mode
-p, qui n’affiche jamais la boîte de dialogue de confiance, et à nouveau lorsqu’une modification enregistrée modifie leenvfusionné. - Les variables que Claude Code classe comme sûres, telles que la sélection du modèle, les délais d’attente et les limites, et les basculements de fonctionnalités : au démarrage à partir de chaque fichier de paramètres, à l’exception des variables que les paramètres de projet et locaux ne peuvent pas définir.
- Après avoir déplacé la session avec
/cdsur v2.1.246 ou ultérieur : les valeursenvdu nouveau répertoire du projet et locales, en plus de celles du répertoire précédent.
Variables que Claude Code ignore dans env
-
Les paramètres de projet et locaux ne peuvent pas définir les variables qu’un dépôt extrait ne devrait pas contrôler ; définissez-les plutôt dans votre shell, vos paramètres utilisateur ou vos paramètres gérés. Claude Code supprime chacune d’elles, à l’exception de quelques valeurs qui désactivent la télémétrie, et consigne un avertissement que vous pouvez voir avec
claude --debug. Elles incluent :-
Les variables qui choisissent où Claude Code stocke ou écrit ses propres fichiers :
CLAUDE_CONFIG_DIR,CLAUDE_CODE_TMPDIRet les variables de répertoire du système d’exploitation telles queHOME,TMPDIR,TMP,TEMPet la familleXDG_*. -
Les variables Windows qui choisissent les programmes et la configuration à l’échelle de la machine pour les processus que Claude Code démarre, telles que
SystemRoot,ComSpec,ProgramData,LOCALAPPDATA,PATHEXT,PSModulePathet la familleProgramFiles. -
Les variables qui exportent le contenu de la session :
OTEL_LOG_RAW_API_BODIESet la paire de traçage bêta détailléeENABLE_BETA_TRACING_DETAILEDetBETA_TRACING_ENDPOINT. -
Les variables OpenTelemetry exporter qui activent la télémétrie, choisissent où elle va ou choisissent quel contenu elle capture :
CLAUDE_CODE_ENABLE_TELEMETRY, plus la paire de télémétrie améliorée bêtaCLAUDE_CODE_ENHANCED_TELEMETRY_BETAetENABLE_ENHANCED_TELEMETRY_BETA- Les sélecteurs d’exportateur
OTEL_LOGS_EXPORTER,OTEL_METRICS_EXPORTERetOTEL_TRACES_EXPORTER - Les variables de contenu
OTEL_LOG_USER_PROMPTS,OTEL_LOG_ASSISTANT_RESPONSES,OTEL_LOG_TOOL_CONTENTetOTEL_LOG_TOOL_DETAILS - Les variables
OTEL_EXPORTER_OTLP_*dont les noms se terminent par_ENDPOINT,_HEADERS,_PROTOCOL,_CERTIFICATE,_CLIENT_KEYou_INSECURE, dans les formes génériques et par signal, telles queOTEL_EXPORTER_OTLP_ENDPOINTetOTEL_EXPORTER_OTLP_METRICS_HEADERS OTEL_EXPORTER_PROMETHEUS_HOSTetOTEL_EXPORTER_PROMETHEUS_PORT
nonepour les trois sélecteurs d’exportateur, et une valeur désactivée telle que0pourOTEL_LOG_USER_PROMPTS,OTEL_LOG_TOOL_CONTENTetOTEL_LOG_TOOL_DETAILS. Une telle valeur remplace la même variable dans vos paramètres utilisateur, mais pas celle que l’environnement à partir duquel vous lancez Claude Code, un fichier--settingsou les paramètres gérés définissent. Lorsqu’un fichier de paramètres de projet ou locaux définit une variable dans ce groupe, une session interactive locale affiche un avis au démarrage. Exécutez/statusouclaude doctorpour voir lesquels Claude Code a ignorés et lesquels ont désactivé la télémétrie ; les deux répertorient les noms, jamais les valeurs. Une exécution non interactive avec-pou une session Agent SDK n’affiche aucun avis, donc vérifiez que votre collecteur reçoit toujours des données après la mise à niveau. S’il ne le fait pas, définissez les variables dans vos paramètres utilisateur, paramètres gérés, l’environnement du travail ou un fichier que vous transmettez avec--settings. Ignorer ce groupe dans les paramètres de projet et locaux nécessite Claude Code v2.1.282 ou ultérieur. -
Les variables qui changent la façon dont Claude Code démarre ou se synchronise, telles que
CLAUDE_CODE_PROCESS_WRAPPER,CLAUDE_CODE_SYNC_SKILLS,CLAUDE_CODE_SYNC_PLUGINS,CLAUDE_CODE_PLUGIN_CACHE_DIRetCLAUDE_CODE_PLUGIN_SEED_DIR. -
Les variables qui définissent les minuteurs d’une boîte de dialogue sans réponse :
CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS,CLAUDE_AFK_TIMEOUT_MSetCLAUDE_AFK_COUNTDOWN_MS. -
CLAUDE_CODE_DISABLE_ATTACHMENTS, qui désactive le traitement des pièces jointes.
HOMEetXDG_CONFIG_HOME. Avant v2.1.290, ils pouvaient également définir les variables de minuteur de boîte de dialogue etCLAUDE_CODE_DISABLE_ATTACHMENTS. -
Les variables qui choisissent où Claude Code stocke ou écrit ses propres fichiers :
-
Les variables d’identité que les environnements d’hébergement de Claude Code possèdent, telles que
CLAUDE_CODE_REMOTEetCLAUDE_CODE_ACCOUNT_UUID, sont ignorées de chaque fichier. -
CLAUDE_CODE_MESSAGING_SOCKETetCLAUDE_CODE_MESSAGING_TOKEN, que Claude Code exporte lui-même, sont ignorées de chaque fichier. Ignorer la variable de socket nécessite Claude Code v2.1.224 ou ultérieur, et ignorer le jeton nécessite v2.1.228 ou ultérieur. -
CLAUDE_CODE_PROJECT_DIR_NAME, que Claude Code lit uniquement à partir de l’environnement de lancement, est ignorée de chaque fichier ; nécessite v2.1.234 ou ultérieur. -
CLAUDE_CODE_RESTRICTED, que Claude Code lit uniquement à partir de l’environnement de lancement, est ignorée de chaque fichier. -
CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY, que Claude Code lit uniquement à partir de l’environnement de lancement, est ignorée de chaque fichier. La variable nécessite Claude Code v2.1.283 ou ultérieur. -
CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT,CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPTetCLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT, que Claude Code lit uniquement à partir de l’environnement de lancement, sont ignorées de chaque fichier.
fileCheckpointingEnabled
Faites en sorte que Claude Code crée des instantanés de fichiers avant chaque modification afin que /rewind puisse les restaurer. Apparaît dans /config sous Rewind code (checkpoints), et le basculer là-bas écrit cette clé dans vos paramètres utilisateur.
- Scope :
Any file - Type : Boolean
true: Claude Code crée des instantanés de fichiers avant chaque modification afin que/rewindpuisse les restaurerfalse: Claude Code ne crée pas d’instantanés de fichiers, donc/rewindne peut pas les restaurer
- Default :
true - Per-session overrides :
CLAUDE_CODE_DISABLE_FILE_CHECKPOINTINGdésactive les points de contrôle pour une session ; celui des deux qui le désactive, l’autre ne peut pas le réactiver
settings.json
-p ou une session Agent SDK, Claude Code ignore cette clé. Le SDK active les points de contrôle avec son option enableFileCheckpointing, et une exécution -p nue a besoin de CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true. Voir File checkpointing in the Agent SDK.
plansDirectory
Choisissez où Claude Code stocke les fichiers de plan qu’il écrit en mode plan. Claude Code résout le chemin par rapport à la racine du projet.
- Scope :
Any file - Type : string, a path relative to the project root
- Default : non défini, donc Claude Code utilise
~/.claude/plans
settings.json
~/.claude/plans au lieu du répertoire que vous avez défini dans des cas tels que ceux-ci :
- En dehors de la racine du projet : le chemin se résout en dehors de la racine du projet, comme le fait
"../plans". - Barre oblique inverse sur macOS, Linux et WSL : le chemin résolu contient une barre oblique inverse, comme le fait
"docs\\plans"de style Windows. Écrivez"docs/plans", qui fonctionne aussi sous Windows.
skillListingBudgetFraction
À chaque tour, Claude voit un listing de vos compétences avec leurs descriptions, et Claude Code plafonne ce listing à une part de la fenêtre de contexte. Lorsque le listing dépasse le plafond, Claude Code conserve le nom de chaque compétence mais supprime les descriptions des compétences les moins utilisées, afin que Claude puisse toujours invoquer ces compétences mais soit moins susceptible d’en choisir une de sa propre initiative. Augmentez cette clé pour conserver plus de descriptions visibles au détriment de plus de contexte par tour.
- Scope :
Any file - Type : number, a fraction greater than
0and at most1 - Default :
0.01, which reserves 1% of the context window
settings.json
/doctor.
skillListingMaxDescChars
À chaque tour, Claude voit un listing de vos compétences qui affiche le texte description et when_to_use de chaque compétence. Cette clé plafonne le nombre de caractères de ce texte que Claude Code affiche par compétence ; le texte plus long est coupé au plafond.
- Scope :
Any file - Type : number of characters, a positive integer
- Default :
1536
settings.json
skillListingBudgetFraction.
taskOutputMaxChars
Jusqu’à v2.1.276, vous définissiez cette clé au nombre de caractères de la sortie d’une tâche en arrière-plan que Claude reçoit en ligne lorsqu’il lisait la tâche avec l’outil TaskOutput.
Interface et terminal
Modifiez l’apparence et le comportement de Claude Code dans votre terminal : thème, mode d’éditeur, ligne d’état, spinner, notifications dans la session et accessibilité. Voir Configuration du terminal.askUserQuestionTimeout
Permettez à une boîte de dialogue AskUserQuestion sans réponse de continuer automatiquement après une période d’inactivité, en soumettant les options que vous aviez déjà sélectionnées. Définissez-le lorsque vous vous éloignez et que vous voulez que Claude continue sans vous. Par défaut, les questions attendent que vous y répondiez. Pour savoir quand le minuteur se met en pause ou ne démarre jamais, voir Délai de continuation automatique des questions.
- Portée :
Utilisateur ou géré - Type : chaîne de caractères, l’une de
"60s","5m","10m", ou"never" - Défaut :
"never" - Remplacements par session :
CLAUDE_AFK_TIMEOUT_MSa la priorité sur cette clé pour une session
settings.json
/config sous Question auto-continue timeout, qui écrit cette clé dans les paramètres utilisateur ; Claude Code masque la ligne tandis que les paramètres gérés ou le flag --settings définissent la clé.
autoContinueAtUsageLimit
Après qu’une limite d’utilisation de claude.ai arrête votre session, attendez dans la session ouverte et continuez la tâche automatiquement après la réinitialisation. Voir Désactiver la continuation automatique. Nécessite Claude Code v2.1.234 ou ultérieur.
- Portée :
Utilisateur ou géré. Lire à partir des paramètres utilisateur,--settings, et des paramètres gérés uniquement. Lorsqu’aucun de ceux-ci ne définit la clé, un fichier de paramètres de projet ou local qui la définit désactive la fonctionnalité plutôt que d’être ignoré. - Type : Booléen
true: après qu’une limite d’utilisation de claude.ai arrête votre session, Claude Code attend dans la session ouverte et continue la tâche automatiquement après la réinitialisationfalse: Claude Code ne démarre pas l’attente de lui-même. Vous pouvez toujours démarrer une attente vous-même à partir du menu des options de limite d’utilisation
- Défaut :
true
settings.json
/config sous Continue automatically at usage limit, qui écrit cette clé dans les paramètres utilisateur ; Claude Code masque la ligne tandis que les paramètres gérés ou l’indicateur --settings définissent la clé.
autoScrollEnabled
Suivez la nouvelle sortie jusqu’au bas de la conversation dans rendu plein écran. Désactivez-le pour rester où vous avez fait défiler tandis que Claude continue à travailler ; les invites de permission défilent toujours dans la vue.
- Portée :
N'importe quel fichier - Type : Booléen
true: la conversation suit la nouvelle sortie jusqu’au basfalse: vous restez où vous avez fait défiler tandis que Claude continue à travailler ; les invites de permission apparaissent toujours sous la transcription
- Défaut :
true
settings.json
/config sous Auto-scroll lorsque le rendu plein écran est activé, qui écrit cette clé dans les paramètres utilisateur.
axScreenReader
Rendez la sortie compatible avec les lecteurs d’écran : texte plat sans bordures décoratives ni animations. Le mode lecteur d’écran utilise le moteur de rendu classique, donc le paramètre tui n’a aucun effet tant qu’il est actif ; les sessions en arrière-plan attachées restent rendues en plein écran.
- Portée :
N'importe quel fichier - Type : Booléen
true: Claude Code rend le texte plat sans bordures décoratives ni animations, en utilisant le moteur de rendu classiquefalse: Claude Code rend normalement
- Défaut : non défini, donc le mode lecteur d’écran est désactivé
- Remplacements par session :
--ax-screen-readera la priorité surCLAUDE_AX_SCREEN_READER, et les deux ont la priorité sur cette clé pour une session
settings.json
bashEditDiffEnabled
Choisissez si Claude Code enregistre les fichiers qui ont changé dans un référentiel Git pendant l’exécution d’une commande Bash. Lorsqu’il les enregistre, vous voyez leur diff dans le terminal après la commande, et vos hooks Bash PostToolUse reçoivent la liste des fichiers modifiés.
Un fichier listé n’est pas toujours un fichier que la commande a modifié. Une modification qu’un autre programme ou un autre appel Bash a effectuée pendant que la commande s’exécutait peut également y apparaître.
Définissez la clé à true pour les enregistrer dans chaque mode de permission. Nécessite Claude Code v2.1.269 ou ultérieur.
- Portée :
Utilisateur ou géré. Untruecompte uniquement à partir de vos paramètres utilisateur, du JSON transmis avec--settings, ou des paramètres gérés, donc untruedans le.claude/settings.jsonou.claude/settings.local.jsond’un référentiel ne peut pas activer l’enregistrement. Unfalsedans l’un ou l’autre fichier de référentiel le désactive toujours à moins qu’un fichier de priorité supérieure ne définissetrue. - Type : Booléen
- Défaut : non défini, donc Claude Code enregistre les modifications en mode auto et en mode
bypassPermissionslorsqu’il dirige Claude à modifier les fichiers via Bash - Remplacements par session :
CLAUDE_CODE_BASH_EDIT_DIFFa la priorité sur cette clé pour une session
settings.json
companyAnnouncements
Affichez les annonces de votre organisation aux utilisateurs au démarrage. Lorsque vous en listez plus d’une, Claude Code en choisit une au hasard pour chaque session ; au tout premier lancement d’une personne, il affiche la première entrée.
- Portée :
N'importe quel fichier - Type : tableau de chaînes de caractères
- Défaut : non défini, donc aucune annonce ne s’affiche
settings.json
defaultShell
Choisissez si Bash ou PowerShell exécute les commandes shell que vous tapez avec le préfixe ! dans la boîte d’entrée, celles que Claude Code exécute directement et ajoute à la session.
"powershell" fonctionne uniquement lorsque l’outil PowerShell est activé. L’outil est activé par défaut sur Windows sans Git Bash, et sur Windows avec Git Bash pour les comptes claude.ai et Console. Dans les sessions Amazon Bedrock, Google Cloud’s Agent Platform, et Microsoft Foundry, et sur macOS, Linux, et WSL, définissez CLAUDE_CODE_USE_POWERSHELL_TOOL=1 pour activer l’outil. Définissez cette variable à 0 pour désactiver l’outil.
- Portée :
N'importe quel fichier - Type : chaîne de caractères, l’une de :
"bash": Claude Code exécute vos commandes!dans Bash"powershell": Claude Code exécute vos commandes!dans PowerShell
- Défaut :
"bash", ou"powershell"sur Windows lorsque Bash n’est pas disponible
settings.json
"powershell" revient à Bash lorsque l’outil PowerShell est désactivé, et "bash" revient à PowerShell lorsque Bash n’est pas installé.
dialogExpiry
Définissez la date limite pour les boîtes de dialogue que Claude Code transfère à un client distant, tel qu’un hôte Remote Control ou SDK, et pour la boîte de dialogue d’approbation d’un message inter-session retenu. Sur Claude Code v2.1.236 ou ultérieur, la même date limite limite l’invite de consentement d’utilisation de crédits Fable en milieu de session dans une session qui peut n’avoir personne au terminal. Lorsqu’aucune réponse n’arrive avant la date limite, Claude Code annule la boîte de dialogue et continue avec sa valeur par défaut sans action. Nécessite Claude Code v2.1.224 ou ultérieur.
- Portée :
Utilisateur ou géré - Type : chaîne de caractères, l’une de
"60s","5m","10m", ou"never", qui désactive la date limite - Défaut :
"5m" - Remplacements par session :
CLAUDE_CODE_USER_DIALOG_TIMEOUT_MSa la priorité sur cette clé pour une session
settings.json
AskUserQuestion utilisent leurs propres flux et ne sont pas régies par cette date limite. Apparaît dans /config sous Dialog expiry, qui écrit cette clé dans les paramètres utilisateur ; la ligne nécessite Claude Code v2.1.232 ou ultérieur, et Claude Code la masque tandis que les paramètres gérés ou l’indicateur --settings définissent la clé.
editorMode
Choisissez le mode de liaison de touches pour l’invite d’entrée.
- Portée :
N'importe quel fichier - Type : chaîne de caractères, l’une de :
"normal": liaisons de touches standard dans l’entrée d’invite"vim": édition de style vim avec modes NORMAL, INSERT, et VISUAL
- Défaut :
"normal"
settings.json
/config sous Editor mode, qui écrit cette clé dans les paramètres utilisateur.
emojiCompletionEnabled
Affichez les suggestions d’emoji lorsque vous tapez : plus un raccourci dans l’entrée d’invite, et remplacez un raccourci complété tel que :heart: par son emoji. Définissez-le à false pour désactiver les deux.
- Portée :
N'importe quel fichier - Type : Booléen
true: Claude Code affiche les suggestions d’emoji après:et remplace un raccourci complété par son emojifalse: Claude Code ne suggère pas d’emoji et ne remplace pas les raccourcis
- Défaut :
true
settings.json
fileSuggestion
Exécutez votre propre commande pour fournir l’autocomplétion du chemin de fichier @ au lieu de la suggestion de fichier intégrée. La suggestion intégrée utilise la traversée rapide du système de fichiers ; un grand monorepo peut mieux fonctionner avec l’indexation spécifique au projet, comme un index de fichier pré-construit.
- Portée :
N'importe quel fichier. Sous les portes de ligne d’état et de suggestion de fichier, Claude Code désactive la commande ou exécute uniquement une valeur gérée, et ignore la vôtre sans avertissement. - Type : objet avec
type, toujours"command", etcommand, la commande shell à exécuter - Défaut : non défini, donc Claude Code utilise la suggestion de fichier intégrée
settings.json
@ suivi d’une partie d’un chemin dans l’invite : les suggestions proviennent de la sortie de votre commande.
Entrée et sortie de commande
Claude Code exécute la commande avec les mêmes variables d’environnement que les hooks, y comprisCLAUDE_PROJECT_DIR, et arrête d’attendre après cinq secondes. La commande reçoit du JSON sur stdin avec un champ query contenant ce que vous avez tapé jusqu’à présent :
footerLinksRegexes
Rendez les badges cliquables supplémentaires dans le pied de page sous la boîte d’entrée lorsqu’une regex correspond à la sortie de tour : résultats d’outils, y compris le contenu des fichiers et les pages récupérées, et les propres réponses de Claude. 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.
- Portée :
Utilisateur ou géré - Type : tableau d’objets, chacun avec
typedéfini à"regex", une regexpattern, un modèleurl, et unlabeloptionnel ; les espaces réservés{name}dansurletlabelsont remplis à partir des groupes de capture nommés danspattern - Défaut : non défini, donc aucun badge ne s’affiche
PROJ-1234 et construit chaque lien à partir de la clé capturée :
settings.json
PROJ-1234 apparaît dans un résultat d’outil ou dans la réponse de Claude, un badge PROJ-1234 apparaît dans le pied de page liant à https://issues.example.com/browse/PROJ-1234.
Contraintes de badge
L’URL, le label et le nombre de badges de chaque entrée sont limités comme suit :
Lorsqu’un tour se termine, Claude Code correspond à la regex
pattern de chaque entrée par rapport à la sortie de 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 un temps exponentiel par rapport à 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 lorsqu’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.
keybindingFlavor
Dans v2.1.238 à v2.1.260, le définir à "readline" faisait que Ctrl+W supprime jusqu’à l’espace blanc précédent au lieu de seulement le mot précédent.
- Portée :
N'importe quel fichier - Type : chaîne de caractères,
"classic"ou"readline" - Défaut : non défini
maxProseWidth
Limitez la largeur de la prose dans les réponses de Claude afin que les lignes restent lisibles dans un terminal large. Les paragraphes, les titres, les listes, et les citations en bloc s’enroulent dans ce nombre de colonnes, tandis que les tableaux et les blocs de code conservent la largeur complète du terminal. Nécessite Claude Code v2.1.282 ou ultérieur.
- Portée :
N'importe quel fichier - Type : nombre de colonnes de terminal, un nombre entier, minimum
40. Claude Code ignore toute autre valeur - Défaut : non défini, donc la prose s’enroule au bord du terminal
settings.json
prefersReducedMotion
Réduisez ou désactivez les animations de l’interface telles que le spinner, le shimmer, et les effets de flash. Apparaît dans /config sous Reduce motion.
- Portée :
N'importe quel fichier - Type : Booléen
true: Claude Code réduit ou désactive les animations de l’interface telles que le spinner, le shimmer, et les effets de flashfalse: identique à non défini ; Claude Code affiche ses animations
- Défaut :
false
settings.json
promptSuggestionEnabled
Affichez ou masquez les suggestions d’invite, les prédictions grisées qui apparaissent dans votre entrée d’invite. Définissez-le à false, ou désactivez Prompt suggestions dans /config, pour les masquer.
- Portée :
N'importe quel fichier - Type : Booléen
true: vous voyez les suggestions d’invite dans votre entrée d’invitefalse: Claude Code masque les suggestions d’invite
- Défaut :
true - Remplacements par session :
CLAUDE_CODE_ENABLE_PROMPT_SUGGESTIONa la priorité sur cette clé pour une session
settings.json
DISABLE_TELEMETRY, cette clé n’a aucun effet et seul CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=1 les active.
respectGitignore
Contrôlez si le sélecteur de fichier @ laisse de côté les fichiers qui correspondent aux motifs .gitignore. Apparaît dans /config sous Respect .gitignore in file picker.
- Portée :
N'importe quel fichier. Lorsqu’aucun fichier de paramètres ne le définit, Claude Code revient àrespectGitignoredans~/.claude.json, que le bouton bascule/configécrit. - Type : Booléen
true: le sélecteur de fichier@laisse de côté les fichiers qui correspondent aux motifs.gitignorefalse: le sélecteur de fichier@inclut les fichiers qui correspondent aux motifs.gitignore
- Défaut :
true
settings.json
respondToBashCommands
Choisissez si Claude répond après que vous exécutiez une commande shell avec le préfixe ! dans la boîte d’entrée. Par défaut, Claude Code ajoute la sortie de la commande à la conversation et Claude y répond. Définissez cette clé à false pour ajouter la sortie au contexte sans réponse, afin que vous puissiez exécuter plusieurs commandes et les interroger ensemble.
- Portée :
N'importe quel fichier - Type : Booléen
true: Claude Code ajoute la sortie de la commande à la conversation et Claude y répondfalse: Claude Code ajoute la sortie au contexte sans réponse
- Défaut :
true
settings.json
!.
showClearContextOnPlanAccept
Lorsque Claude termine un plan en mode plan, il affiche un menu d’approbation. La planification peut utiliser beaucoup de contexte, donc cette clé ajoute une première option à ce menu, Yes, clear context and …, qui approuve le plan, efface le contexte de la conversation, et commence l’implémentation à partir du plan seul. Le reste du label nomme le mode de permission dans lequel la session continue, et affiche la quantité de contexte que la planification a utilisée.
- Portée :
N'importe quel fichier - Type : Booléen
true: le menu d’approbation du plan obtient une première option, Yes, clear context and …, qui approuve le plan et efface le contexte de la conversationfalse: le menu d’approbation du plan n’affiche aucune option d’effacement de contexte
- Défaut :
false
settings.json
showTurnDuration
Affichez ou masquez le message de durée de tour après chaque réponse, tel que « Cooked for 1m 6s · done 6:05 PM ». L’horloge après « done » affiche quand le tour s’est terminé ; timeFormat et timeZone contrôlent son format et sa zone. Apparaît dans /config sous Show turn duration.
- Portée :
N'importe quel fichier. Une valeur dans~/.claude.jsond’une version antérieure s’applique lorsqu’aucun fichier de paramètres ne la définit. - Type : Booléen
true: vous voyez le message de durée de tour après chaque réponsefalse: Claude Code masque le message de durée de tour
- Défaut :
true
settings.json
spellcheck
Soulignez les mots mal orthographiés dans l’entrée d’invite au fur et à mesure que vous tapez, en utilisant un correcteur orthographique que vous installez. Claude Code vérifie uniquement le texte dans la boîte d’entrée. Vérifier l’orthographe au fur et à mesure que vous tapez couvre l’installation d’aspell, hunspell, ou ispell et ce que le correcteur couvre. Nécessite Claude Code v2.1.235 ou ultérieur.
- Portée :
Utilisateur ou géré. Le bloc du niveau le plus élevé qui le définit s’applique dans son ensemble. - Type : objet avec
enabled(Booléen),checker("aspell","hunspell","ispell", ou"auto"),language(chaîne de caractères, passée au correcteur comme son nom de dictionnaire), etcolor(chaîne de caractères, un nom de couleur de terminal,#rrggbb,rgb(r,g,b),ansi256(n), ouansi:<name>) - Défaut : non défini, donc la vérification orthographique est désactivée ;
checkerpar défaut à"auto", le premier des trois trouvé surPATH;languagepar défaut au propre dictionnaire du correcteur ;colorpar défaut à la couleur d’erreur du thème
settings.json
spinnerTipsEnabled
Tandis que Claude travaille, la ligne du spinner tourne à travers de courts conseils sur les fonctionnalités de Claude Code, tels que « Use Plan Mode to prepare for a complex request before making changes. Press Shift+Tab twice to enable. » Définissez cette clé à false pour les masquer. Apparaît dans /config sous Show tips.
- Portée :
N'importe quel fichier - Type : Booléen
true: vous voyez les conseils dans le spinner tandis que Claude travaillefalse: Claude Code masque les conseils du spinner
- Défaut :
true
settings.json
spinnerTipsOverride
Ajoutez vos propres conseils aux conseils du spinner que Claude Code affiche tandis que Claude travaille, ou remplacez les conseils intégrés par les vôtres. Claude Code met vos conseils dans la même rotation que les conseils intégrés.
Si vous définissez spinnerTipsEnabled à false, Claude Code masque tous les conseils, les vôtres inclus.
- Portée :
N'importe quel fichier. Claude Code honore les objets de conseil,tipsFile,label, etexcludeDefaultà partir des paramètres utilisateur, l’indicateur--settings, et les paramètres gérés ; à partir des paramètres de projet et local, il lit uniquement les conseils en chaîne de caractères simples. - Type : objet avec les champs
tips,tipsFile,label, etexcludeDefault, chacun optionnel - Défaut : non défini, donc Claude Code affiche uniquement les conseils intégrés
tipsFile, label, et la règle de la ligne Portée selon laquelle les paramètres de projet et local ne contribuent que des chaînes de caractères simples nécessitent Claude Code v2.1.247 ou ultérieur.
Chaque entrée tips est une chaîne de caractères simple ou un objet avec ces champs :
Claude Code lit une chaîne de caractères simple comme un conseil avec ces valeurs par défaut et un id basé sur la position, donc son historique d’affichage se réinitialise lorsque vous réorganisez la liste. Donnez à un conseil un
id pour conserver son historique à travers les modifications.
Claude Code lit au maximum 200 conseils à travers tips et tipsFile, et supprime une entrée invalide avec un avertissement de débogage au lieu de rejeter le fichier de paramètres.
Utilisez les champs restants pour nommer un fichier de conseils, définir le préfixe, et masquer les conseils intégrés :
tipsFile: un chemin absolu ou~/vers un fichier JSON local contenant un tableau des mêmes entrées, ou un objet avec un tableautips, jusqu’à 256 KB. Claude Code lit le fichier une fois par processus, donc il charge vos modifications au prochain démarrage. Vous ne pouvez pas le définir via les paramètres gérés par serveur ; déployez lestipsen ligne là, ou déployez le chemin dans unmanaged-settings.jsonsur disque.label: le préfixe Claude Code affiche avant les conseils à partir des paramètres utilisateur,--settings, et les paramètres gérés, jusqu’à 40 caractères. La valeur par défaut estTip, le même préfixe que les conseils intégrés, et les conseils à partir des paramètres de projet et local l’utilisent toujours.excludeDefault: définissez-le àtruepour masquer les conseils intégrés et afficher uniquement les vôtres. Lorsque Claude Code ne peut pas charger l’un de vos conseils, par exemple parce quetipsFilen’existe pas ou que chaque entrée est invalide, il conserve la rotation intégrée au lieu d’une rotation vide.
tipsFile, label, et excludeDefault à partir de celui des paramètres gérés, l’indicateur --settings, et les paramètres utilisateur qui est le plus élevé en priorité qui définit chacun.
Cet exemple, dans vos paramètres utilisateur, ajoute un conseil en chaîne de caractères simple et un conseil en objet à la rotation sous le préfixe Acme tip :
settings.json
label: Claude Code affiche les deux conseils commeAcme tip: ...au lieu deTip: ....- La chaîne de caractères simple : Claude Code lui donne les valeurs par défaut, donc elle peut réapparaître dans la session suivante.
id: Claude Code clé l’historique d’affichage du deuxième conseil surgateway-errors, donc sa période de refroidissement s’applique toujours après que vous ajoutiez ou réorganisiez les conseils.cooldownSessions: après que Claude Code affiche le conseilgateway-errors, il n’affiche pas ce conseil à nouveau jusqu’à cinq sessions plus tard.priority: lorsque le conseilgateway-errorset un autre conseil n’ont pas été affichés pendant le même nombre de sessions, par exemple lorsqu’aucun n’a été affiché encore, Claude Code affichegateway-errorsen premier. La chaîne de caractères simple a la priorité par défaut,0.
Acme tip: Run /review before opening a PR.
spinnerVerbs
Tandis qu’un tour est en cours, le spinner affiche un verbe rotatif tel que « Accomplishing », « Architecting », ou « Baking ». Utilisez cette clé pour ajouter vos propres verbes à cette rotation ou remplacer la liste intégrée par la vôtre.
- Portée :
N'importe quel fichier - Type : objet avec un tableau
verbsde chaînes de caractères etmode, l’un de :"append": Claude Code ajoute vos verbes à l’ensemble intégré"replace": Claude Code affiche uniquement vos verbes
- Défaut : non défini, donc Claude Code utilise les verbes intégrés
settings.json
"replace" avec un tableau verbs vide, Claude Code conserve les verbes intégrés.
statusLine
Exécutez votre propre commande pour rendre une ligne d’état sous l’invite avec un contexte tel que le modèle, le coût, ou la branche git. Les champs optionnels ajustent l’espacement, ajoutent des réexécutions périodiques, et masquent l’indicateur de mode vim intégré lorsque votre script rend vim.mode lui-même.
- Portée :
N'importe quel fichier. LorsqueallowManagedHooksOnlyest activé, oudisableAllHooksest défini en dehors des paramètres gérés, seule la valeur des paramètres gérés s’exécute. - Type : objet avec
typedéfini à"command"et une chaîne de caractèrescommand, pluspaddingoptionnel comme un nombre de caractères,refreshIntervalcomme un nombre de secondes, minimum1, ethideVimModeIndicatorcomme un Booléen - Défaut : non défini, donc aucune ligne d’état
settings.json
jq installé et s’exécute dans un shell. Pour les équivalents PowerShell et Git Bash, voir Configuration Windows ; pour la configuration complète, voir Configurer manuellement une ligne d’état.
subagentStatusLine
Lorsque Claude exécute des sous-agents, Claude Code les liste dans un affichage de tâche sous l’invite, une ligne par sous-agent affichant name · description · token count. Cette clé vous permet d’exécuter votre propre commande pour réécrire ces lignes, par exemple pour afficher l’utilisation du contexte de chaque sous-agent en pourcentage. À chaque actualisation, Claude Code envoie les lignes visibles comme un objet JSON sur stdin, avec un tableau tasks portant l’id, name, status, model, tokenCount, et plus de chaque sous-agent, et remplace la ligne pour chaque id que vous écrivez en retour comme une ligne {"id", "content"}. Les lignes que vous n’écrivez pas en retour conservent le rendu par défaut.
- Portée :
N'importe quel fichier. LorsqueallowManagedHooksOnlyest activé, oudisableAllHooksest défini en dehors des paramètres gérés, seule la valeur des paramètres gérés s’exécute. - Type : objet avec
typedéfini à"command"et une chaîne de caractèrescommand - Défaut : non défini, donc Claude Code rend les lignes par défaut
settings.json
syntaxHighlightingDisabled
Claude Code colore le code par langage dans les diffs, les blocs de code, et les aperçus de fichier qu’il affiche dans le terminal, avec son surlignage intégré ; aucun plugin ou serveur de langage n’est impliqué. Définissez cette clé à true pour les afficher en texte brut à la place, par exemple si les couleurs entrent en conflit avec votre thème de terminal ou ralentissent un lecteur d’écran.
- Portée :
N'importe quel fichier - Type : Booléen
true: Claude Code désactive la coloration syntaxique dans les diffs, les blocs de code, et les aperçus de fichierfalse: Claude Code colore la syntaxe
- Défaut :
false
settings.json
terminalProgressBarEnabled
Certains terminaux peuvent afficher un indicateur de progression sur l’onglet ou dans la barre des tâches pour le programme qui s’exécute en eux. Tandis que Claude travaille, Claude Code signale un état en cours au terminal, afin que vous puissiez voir à partir d’un autre onglet ou fenêtre si la session est toujours occupée. L’indicateur reste visible après la fin du tour tandis que les sous-agents en arrière-plan ou les flux de travail dynamiques s’exécutent toujours, et s’efface une fois que la session est inactive.
Claude Code le signale uniquement dans les terminaux qui supportent l’indicateur : ConEmu, Ghostty 1.2.0 ou ultérieur, et iTerm2 3.6.6 ou ultérieur. Définissez cette clé à false pour arrêter Claude Code de le signaler. Apparaît dans /config sous Terminal progress bar.
- Portée :
N'importe quel fichier. Une valeur dans~/.claude.jsond’une version antérieure s’applique lorsqu’aucun fichier de paramètres ne la définit. - Type : Booléen
true: vous voyez la barre de progression du terminal dans les terminaux qui la supportentfalse: Claude Code masque la barre de progression du terminal
- Défaut :
true
settings.json
terminalTitleFromRename
Claude Code définit le titre de l’onglet de votre terminal. Par défaut, il utilise un titre qu’il génère à partir de la conversation, et une fois que vous donnez à la session un nom avec /rename ou --name, l’onglet affiche ce nom à la place. Définissez cette clé à false pour conserver le titre généré sur l’onglet même après que vous nommez la session. Le nom lui-même s’applique toujours, donc /resume <name> et le sélecteur de session le trouvent.
- Portée :
N'importe quel fichier - Type : Booléen
true: le titre de l’onglet du terminal affiche le nom de session que vous avez définifalse: l’onglet conserve le titre que Claude Code génère à partir de votre conversation
- Défaut :
true
settings.json
CLAUDE_CODE_DISABLE_TERMINAL_TITLE à 1 à la place.
theme
Choisissez le thème de couleur pour l’interface. Apparaît dans /config sous Theme.
- Portée :
N'importe quel fichier. Une valeur dans~/.claude.jsond’une version antérieure s’applique lorsqu’aucun fichier de paramètres ne la définit. - Type : chaîne de caractères, l’une de :
"auto": correspond au fond clair ou sombre de votre terminal"dark": le thème sombre"light": le thème clair"dark-daltonized": le thème sombre avec des couleurs adaptées aux daltoniens"light-daltonized": le thème clair avec des couleurs adaptées aux daltoniens"dark-ansi": le thème sombre utilisant uniquement la palette de couleurs ANSI de votre terminal"light-ansi": le thème clair utilisant uniquement la palette de couleurs ANSI de votre terminal"custom:<slug>"ou"custom:<plugin-name>:<slug>": un thème personnalisé à partir de~/.claude/themes/ou un plugin
- Défaut :
"dark"
settings.json
timeFormat
Choisissez comment Claude Code écrit les heures qu’il affiche dans l’interface, telles que le done 6:05 PM à la fin de chaque message de durée de tour et les horodatages dans le lecteur de transcription. Pour choisir un préréglage, exécutez /config et définissez Time format. Nécessite Claude Code v2.1.257 ou ultérieur.
- Portée :
N'importe quel fichier - Type : chaîne de caractères, l’une de :
"auto": identique à non défini ; chaque heure conserve son format intégré, qui suit votre locale sur le message de durée de tour"12-hour": une horloge 12 heures"24-hour": une horloge 24 heures"24-hour-utc": une horloge 24 heures en UTC avecZaprès les minutes, telle que18:05Z; Claude Code ignoretimeZonepour ce préréglage- Un motif strftime tel que
"%H:%M": Claude Code écrit chaque heure avec le motif. Toute valeur qui contient un%est un motif, et toute autre valeur en dehors des préréglages compte comme"auto"
- Défaut :
"auto"
settings.json
/config offre uniquement les préréglages, donc pour utiliser un motif strftime, ajoutez la clé à un fichier de paramètres. Cet exemple affiche chaque heure comme une horloge 24 heures à deux chiffres :
settings.json
18:05. Dans le lecteur de transcription, le motif est l’horodatage entier, donc ajoutez des directives de date lorsque vous voulez la date là. Cet exemple met la date devant l’horloge :
settings.json
2026-09-01 18:05.
timeZone
Affichez les heures dans l’interface dans un fuseau horaire autre que celui de votre système. Définissez-le à un nom de fuseau horaire IANA, tel que "UTC" ou "Europe/Dublin". Les heures que timeFormat contrôle affichent alors dans cette zone. Si timeFormat est "24-hour-utc", les heures restent en UTC et Claude Code ignore cette clé. /config n’a aucune ligne pour cette clé, donc définissez-la dans un fichier de paramètres. Nécessite Claude Code v2.1.257 ou ultérieur.
- Portée :
N'importe quel fichier - Type : chaîne de caractères, un nom de fuseau horaire IANA. Lorsque Claude Code ne reconnaît pas le nom, il utilise votre fuseau horaire système
- Défaut : non défini, donc les heures s’affichent dans votre fuseau horaire système
settings.json
tui
Choisissez le moteur de rendu de l’interface utilisateur du terminal. Utilisez "fullscreen" pour le moteur de rendu alt-screen sans scintillement avec défilement virtualisé, ou "default" pour le moteur de rendu classique de l’écran principal. Exécuter /tui fullscreen ou /tui default écrit cette clé pour vous.
- Portée :
N'importe quel fichier - Type : chaîne de caractères, l’une de :
"default": le moteur de rendu classique de l’écran principal"fullscreen": le moteur de rendu alt-screen sans scintillement avec défilement virtualisé
- Défaut : non défini, donc Claude Code choisit le moteur de rendu pour vous
- Remplacements par session :
CLAUDE_CODE_NO_FLICKERetCLAUDE_CODE_DISABLE_ALTERNATE_SCREENont la priorité sur cette clé pour une session :CLAUDE_CODE_NO_FLICKER=1active le plein écran, etCLAUDE_CODE_NO_FLICKER=0ouCLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1le désactive ; lorsque les deux sont définis, Claude Code le désactive
settings.json
-CC ou via SSH vers Windows, Claude Code conserve le moteur de rendu classique à moins que vous définissiez CLAUDE_CODE_NO_FLICKER=1. Les sessions en arrière-plan ouvertes à partir de la vue agent utilisent toujours le moteur de rendu plein écran indépendamment de ce paramètre.
verbose
Par défaut, la transcription réduit chaque appel d’outil à un court résumé, tel que la commande que Claude a exécutée et un nombre de lignes de sa sortie, et vous appuyez sur Ctrl+O pour basculer la transcription entière vers la vue développée lorsque vous voulez les détails. Définissez cette clé à true pour afficher l’entrée et la sortie complètes de chaque appel d’outil en ligne au fur et à mesure qu’elles se produisent, ce qui est utile lorsque vous déboguez un hook, un serveur MCP, ou une longue commande shell. Apparaît dans /config sous Verbose output.
- Portée :
N'importe quel fichier. Une valeur dans~/.claude.jsond’une version antérieure s’applique lorsqu’aucun fichier de paramètres ne la définit. - Type : Booléen
true: vous voyez la sortie complète de l’outilfalse: vous voyez les résumés tronqués de la sortie de l’outil
- Défaut :
false - Remplacements par session :
--verbosea la priorité sur cette clé pour une session
settings.json
viewMode ou une sélection /focus collante remplace cette clé chaque session.
viewMode
Définissez la vue de transcription dans laquelle Claude Code démarre : "default", "verbose", ou "focus". Lorsqu’elle est définie, elle remplace à la fois la sélection /focus collante et le paramètre verbose.
- Portée :
N'importe quel fichier - Type : chaîne de caractères, l’une de :
"default": la transcription normale avec sortie d’outil tronquée"verbose": la transcription avec sortie d’outil complète"focus": uniquement votre dernière invite, un résumé d’une ligne des appels d’outil avec les statistiques de diff d’édition, et la réponse finale. La vue focus nécessite le moteur de rendu plein écran
- Défaut : non défini, donc le paramètre
verboseet votre dernier choix/focuss’appliquent - Remplacements par session :
--verbosea la priorité sur cette clé pour une session
settings.json
vimInsertModeRemaps
Mappez les séquences INSERT-mode à deux touches à Escape en mode d’éditeur vim. Chaque clé est exactement deux caractères imprimables tapés en séquence, et "<Esc>" est la seule cible supportée ; Claude Code ignore les autres entrées. Nécessite Claude Code v2.1.208 ou ultérieur.
- Portée :
Utilisateur ou géré. Un référentiel ne peut pas remapper vos frappes. - Type : objet mappant une séquence de deux caractères à
"<Esc>" - Défaut : non défini
settings.json
editorMode soit "vim". Voir Remapper les séquences de touches INSERT-mode. Nécessite Claude Code v2.1.208 ou ultérieur.
voice
Activez la dictée vocale et choisissez comment la touche de dictée se comporte. Claude Code écrit cet objet pour vous lorsque vous exécutez /voice.
- Portée :
N'importe quel fichier - Type : objet avec
enabledcomme Booléen,autoSubmitcomme Booléen qui s’applique uniquement en mode maintien, etmode, l’un de :"hold": vous maintenez la touche de dictée enfoncée en parlant et la relâchez pour arrêter"tap": vous appuyez sur la touche une fois pour commencer l’enregistrement et à nouveau pour envoyer
- Défaut : non défini, donc la dictée est désactivée ; lorsque
enabledesttrueetmodeest non défini, Claude Code utilise"hold"
settings.json
autoSubmit envoie l’invite lorsque vous relâchez la touche en mode maintien. La dictée vocale nécessite un compte claude.ai.
voiceEnabled
Activez la dictée vocale avec la forme Booléenne simple qui précède l’objet voice. Lorsque les deux sont définis, voice.enabled s’applique.
- Portée :
N'importe quel fichier - Type : Booléen
true: la dictée vocale est activée lorsque vous êtes connecté avec un compte claude.ai et que la politique de votre organisation permet la voix, à moins quevoice.enabledsoit définifalse: la dictée vocale est désactivée, à moins quevoice.enabledsoit défini
- Défaut : non défini
settings.json
wheelScrollAccelerationEnabled
Accélérez la vitesse de défilement à la molette de la souris lors de défilements rapides en rendu plein écran. Définissez-le à false pour un taux de défilement constant par cran de molette.
- Portée :
N'importe quel fichier - Type : Booléen
true: Claude Code accélère la vitesse de défilement à la molette de la souris lors de défilements rapidesfalse: Claude Code défile à un taux constant par cran de molette
- Défaut :
true
settings.json
Git et attribution
Contrôlez l’attribution que Claude Code ajoute aux commits et aux pull requests et comment cela fonctionne avec git.attribution
Personnalisez l’attribution que Claude Code ajoute aux commits git et aux pull requests. Les commits reçoivent une git trailer telle que Co-Authored-By par défaut ; les descriptions de pull request reçoivent du texte brut. Définissez chaque partie séparément avec les sous-clés ci-dessous.
- Portée :
Any file - Type : objet avec les chaînes
commitetpret un booléensessionUrl, oufalsepour masquer toute attribution. La valeurfalsenécessite Claude Code v2.1.281 ou ultérieur ; les versions antérieures la rejettent et ignorent l’intégralité du fichier de paramètres utilisateur, projet ou local qui la contient - Défaut : non défini, donc Claude Code utilise l’attribution standard affichée sous chaque sous-clé
attribution sur false. Dans un fichier de paramètres que les versions antérieures lisent également, définissez commit et pr sur des chaînes vides et sessionUrl sur false à la place.
Cet exemple remplace l’attribution du commit, supprime l’attribution de la pull request et supprime le lien de session :
settings.json
commit ou pr, Claude Code ignore le paramètre includeCoAuthoredBy déprécié et utilise son texte par défaut pour celui des deux que vous avez laissé non défini.
Claude Code indique à Claude que vos propres instructions concernant l’attribution, telles qu’une règle CLAUDE.md ou memory, ont la priorité sur ces lignes de commit et de PR, sauf si la ligne est définie dans les paramètres gérés.
includeCoAuthoredBy
Utilisez attribution à la place, qui remplace cette clé et vous permet de modifier ou masquer la trailer de commit, le texte de la pull request et le lien de session séparément. Claude Code honore toujours includeCoAuthoredBy: false des fichiers de paramètres antérieurs à attribution, mais l’ignore une fois que vous définissez attribution.commit ou attribution.pr.
- Portée :
Any file - Type : booléen
true: identique à non défini ; Claude Code ajoute la trailer de commit et le texte d’attribution de la pull requestfalse: Claude Code omet à la fois la trailer de commit et le texte d’attribution de la pull request, sauf siattributiondéfinitcommitoupr, auquel cas les règlesattributions’appliquent
- Défaut :
true
settings.json
attribution.
includeGitInstructions
Claude Code donne à Claude deux éléments de contexte liés à git : ses instructions intégrées sur la façon d’écrire des commits et des pull requests, dans la description de l’outil Bash, et un snapshot d’état git de votre référentiel. Le snapshot contient la branche actuelle, la branche principale, la sortie git status et les commits récents. Claude Code le lit au démarrage d’une conversation.
Définissez cette clé sur false pour laisser les deux de côté, par exemple lorsque vous utilisez vos propres skills de flux de travail git.
- Portée :
Any file - Type : booléen
true: Claude Code inclut ses instructions intégrées de flux de travail de commit et de pull request et le snapshot d’état git. Les sessions cloud n’incluent jamais le snapshotfalse: Claude Code laisse les deux de côté
- Défaut :
true - Remplacements par session :
CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONSa la priorité sur cette clé pour une session
settings.json
prUrlTemplate
Pointez les liens PR que Claude Code rend, dans le badge de pied de page et dans les résumés de résultats d’outils, vers un outil d’examen de code interne au lieu de github.com. Claude Code substitue {host}, {owner}, {repo}, {number} et {url} à partir de l’URL PR. Les liens de demande de fusion GitLab sur les deux surfaces conservent leur URL GitLab.
- Portée :
Any file - Type : chaîne, un modèle d’URL utilisant l’un des cinq espaces réservés
- Défaut : non défini
settings.json
#123, reste tel que Claude l’a écrit. Une URL qui n’a pas la forme /pull/<number> est laissée inchangée.
attribution.commit
Définissez le texte d’attribution que Claude Code ajoute aux commits git, y compris les trailers. Définissez-le sur une chaîne vide pour masquer l’attribution du commit.
- Portée :
Any file - Type : chaîne
- Défaut : non défini, donc Claude Code ajoute
Co-Authored-By: <name> <noreply@anthropic.com>. Le nom est le modèle en utilisation lorsque le commit est effectué, tel queClaude Sonnet 5. Lorsqu’un subagent effectue le commit, la trailer nomme le modèle du subagent.- Lorsque Claude Code reconnaît le modèle comme un modèle Claude mais ne peut pas confirmer sa version exacte, il écrit
Claudeseul. - Lorsqu’il ne peut pas faire correspondre l’ID du modèle à un modèle Claude, tel qu’un modèle tiers servi via une
ANTHROPIC_BASE_URLpersonnalisée, il écritClaude Code.
- Lorsque Claude Code reconnaît le modèle comme un modèle Claude mais ne peut pas confirmer sa version exacte, il écrit
Co-Authored-By personnalisée :
settings.json
attribution.pr
Définissez le texte d’attribution que Claude Code ajoute aux descriptions de pull request. Définissez-le sur une chaîne vide pour masquer l’attribution de la pull request.
- Portée :
Any file - Type : chaîne
- Défaut : non défini, donc Claude Code ajoute
🤖 Generated with [Claude Code](https://claude.com/claude-code)
settings.json
attribution.sessionUrl
Choisissez si Claude Code ajoute le lien de session claude.ai lorsqu’il valide ou ouvre une pull request à partir d’une session cloud ou Remote Control. Claude Code ajoute le lien en tant que trailer Claude-Session sur les commits et en tant que lien dans les descriptions de pull request. Définissez-le sur false pour omettre le lien.
- Portée :
Any file - Type : booléen
true: Claude Code ajoute le lien de session claude.ai lorsqu’il valide ou ouvre une pull request à partir d’une session cloud ou Remote Controlfalse: Claude Code omet le lien
- Défaut :
true
settings.json
Hooks et automatisation
Enregistrez des hooks, limitez les hooks qui s’exécutent et contrôlez les workflows. Pour les événements et les charges utiles des hooks, consultez la référence des hooks.allowedHttpHookUrls
Limitez les URL que les hooks HTTP peuvent cibler. Lorsque vous définissez cette clé, Claude Code exécute un hook HTTP uniquement si son URL correspond à l’un des modèles et bloque les autres sans les exécuter ; un tableau vide bloque tous les hooks HTTP.
- Portée :
Any file. Les tableaux fusionnent dans les fichiers de paramètres. - Type : tableau de modèles d’URL, avec
*comme caractère générique - Valeur par défaut : non défini, donc toute URL est autorisée
https://hooks.example.com/ et toute URL http://localhost :
settings.json
hooks.example.com., avec le point final qui marque un nom de domaine pleinement qualifié, de la même manière que hooks.example.com, ce qui est la façon dont le DNS les traite. La liste d’autorisation s’applique aux hooks de toutes les sources, y compris les paramètres gérés.
allowManagedHooksOnly
Limitez l’exécution des hooks aux hooks que votre organisation déploie.
- Portée :
Managed - Type : Booléen
true: seuls les hooks gérés s’exécutent, plus les hooks Agent SDK et les hooks des plugins que vos paramètres gérés force-enable. Voir Ce qui s’exécute sousallowManagedHooksOnlyfalse: les hooks de chaque portée de paramètres et plugin s’exécutent
- Valeur par défaut : non défini, donc les hooks de chaque portée de paramètres et plugin s’exécutent
managed-settings.json
Ce qui s’exécute sous allowManagedHooksOnly
Lorsque vous le définissez à true, Claude Code change les hooks et les commandes de type hook qui se chargent :
- Les hooks gérés et SDK s’exécutent : les hooks des paramètres gérés et les hooks que l’Agent SDK enregistre en processus
- Les hooks des plugins force-enabled s’exécutent : les hooks des plugins que vos paramètres gérés force-enable via
enabledPlugins. Claude Code correspond sur l’ID completplugin@marketplace, donc un plugin portant le même nom d’une marketplace différente reste bloqué. Cela vous permet de distribuer des hooks vérifiés via une marketplace d’organisation tout en bloquant tout le reste. Un mod dans un tel plugin se charge uniquement lorsqu’il compte comme celui de votre organisation - Tout le reste est bloqué : les hooks utilisateur, projet et local, les hooks et mods d’autres plugins installés, et les hooks déclarés dans le frontmatter de l’agent. Les mods intégrés à Claude Code continuent de s’exécuter. Pour bloquer uniquement les mods des utilisateurs, définissez
allowManagedModsOnlyà la place. - Les plugins sourced par commande sont désactivés : Claude Code désactive également les plugins avec une
commandsource, y compris les plugins force-enabled dans lesenabledPluginsgérés, sauf si vous définissezdisableCommandPluginSourcesexplicitement àfalse - Les commandes
headersHelperde la marketplace sont bloquées : Claude Code bloque également les commandesheadersHelperde la marketplace sauf sidisableCommandPluginSourcesest explicitement défini àfalse, sauf pour une marketplace que les paramètres gérés eux-mêmes déclarent. Nécessite Claude Code v2.1.238 ou ultérieur - La barre de statut et la suggestion de fichier se limitent aux paramètres gérés : Claude Code lit
statusLine,fileSuggestionetsubagentStatusLineuniquement à partir des paramètres gérés, en suivant les portes de barre de statut et de suggestion de fichier
/goal ne peut pas s’exécuter tant que cette clé est définie, car elle dépend des hooks.
disableAllHooks
Désactivez les hooks, toute barre de statut personnalisée et toute commande suggestion de fichier personnalisée. Utilisez-la pour désactiver tous ces éléments temporairement sans les supprimer de vos paramètres.
- Portée :
Any file. Seuls les paramètres gérés peuvent désactiver les hooks gérés. - Type : Booléen
true: Claude Code désactive les hooks, toute barre de statut personnalisée et toute commande de suggestion de fichier personnaliséefalse: les hooks, la barre de statut et la commande de suggestion de fichier s’exécutent
- Valeur par défaut : non défini, donc les hooks s’exécutent
settings.json
- Dans les paramètres gérés : Claude Code désactive tous les hooks configurés, y compris les hooks gérés, et continue d’exécuter les hooks que l’Agent SDK enregistre en processus
- Dans tout autre fichier de paramètres : Claude Code désactive les hooks utilisateur, projet, local et plugin ; les hooks gérés, les hooks Agent SDK et les hooks des plugins force-enabled dans les
enabledPluginsgérés continuent de s’exécuter
- Dans les paramètres gérés : les mods de chaque plugin installé s’arrêtent, y compris ceux de votre organisation
- Dans tout autre fichier de paramètres : les mods que vous avez installés s’arrêtent, et les mods de votre organisation continuent de s’exécuter
/goal ne peut pas s’exécuter tant que les hooks sont désactivés, et le menu /hooks affiche un avis au lieu de vos hooks.
Portes de barre de statut et de suggestion de fichier
Claude Code prend deux décisions pourstatusLine, fileSuggestion et subagentStatusLine, dans cet ordre :
- Désactivé entièrement : lorsque les paramètres gérés définissent
disableAllHooks, ou lorsque le dossier n’est pas approuvé selon la même règle de confiance d’espace de travail que les hooks dans les fichiers de paramètres - Limité aux paramètres gérés : lorsque
allowManagedHooksOnlyest défini, lorsquedisableAllHooksesttrueen dehors des paramètres gérés après l’application de la priorité des paramètres, ou lorsque vous démarrez Claude Code avec--safe-mode
@ revient à la suggestion de fichier intégrée.
disableWorkflows
Désactivez les workflows dynamiques et les commandes de workflow groupées pour tous ceux que vos paramètres atteignent, comme une organisation via les paramètres gérés. Pour activer ou désactiver les workflows uniquement pour vous-même, utilisez enableWorkflows à la place, que le bouton bascule Dynamic workflows dans /config écrit dans vos paramètres utilisateur.
- Portée :
Any file - Type : Booléen
true: Claude Code désactive les workflows dynamiques et les commandes de workflow groupées pour tous ceux que vos paramètres atteignentfalse: identique à non défini ; que les workflows soient activés dépend alors deenableWorkflowset de la valeur par défaut de votre plan
- Valeur par défaut :
false - Remplacements par session :
CLAUDE_CODE_DISABLE_WORKFLOWSdésactive les workflows pour une session ; quel que soit celui des deux qui les désactive, l’autre ne peut pas les réactiver
settings.json
enableWorkflows
Activez ou désactivez les workflows dynamiques pour vous-même lorsque la valeur par défaut de votre plan n’est pas ce que vous voulez. Apparaît dans /config comme Dynamic workflows, qui écrit cette clé dans vos paramètres utilisateur et la supprime à nouveau lorsque vous basculez vers la valeur par défaut de votre plan. Pour désactiver les workflows pour tout le monde à partir des paramètres gérés, utilisez disableWorkflows à la place.
- Portée :
Any file - Type : Booléen
true: Claude Code active les workflows dynamiques pour vousfalse: Claude Code désactive les workflows dynamiques pour vous
- Valeur par défaut : non défini, donc les workflows sont activés sauf si vous êtes sur le plan Pro, où ils sont désactivés
- Remplacements par session :
CLAUDE_CODE_DISABLE_WORKFLOWSdésactive les workflows pour une session, ettrueici ne peut pas les réactiver tant qu’il est défini
settings.json
disableWorkflows et la politique de workflows de votre organisation prennent également la priorité : enableWorkflows: true ne peut pas réactiver les workflows tant qu’une source les désactive. Claude Code masque la ligne /config tant qu’une source autre que vos paramètres utilisateur définit enableWorkflows, ou définit disableWorkflows à true.
hooks
Exécutez vos propres commandes, prompts, agents, requêtes HTTP ou outils MCP en tant que hooks à des points du cycle de vie de Claude Code, comme avant un appel d’outil ou au démarrage d’une session ; la référence des hooks répertorie tous les événements, leur charge utile et leurs codes de sortie. Chaque événement correspond à une liste de groupes de matchers, et chaque groupe répertorie les gestionnaires à exécuter lorsque le matcher s’applique.
- Portée :
Any file. Les hooks fusionnent dans les fichiers plutôt que de se remplacer les uns les autres, et les hooks des paramètres gérés ne peuvent pas être supprimés d’autres fichiers. - Type : objet indexé par événement hook ; chaque valeur est un tableau de groupes
{ "matcher", "hooks" }dont les entréeshooksont untypede"command","prompt","agent","http"ou"mcp_tool" - Valeur par défaut : non défini, donc aucun hook ne s’exécute
settings.json
disableAllHooks ; pour limiter les hooks à ceux que votre organisation déploie, consultez allowManagedHooksOnly.
httpHookAllowedEnvVars
Un hook HTTP peut mettre la valeur d’une variable d’environnement dans un en-tête de requête, par exemple un en-tête Authorization: Bearer $HOOK_TOKEN, mais uniquement pour les variables que le hook répertorie dans son propre allowedEnvVars. Cette clé définit une limite externe sur cette liste pour chaque hook HTTP : un hook ne peut utiliser une variable que si à la fois son propre allowedEnvVars et cette clé la nomment. Utilisez-la pour empêcher un hook de lire un secret qu’il ne devrait pas, même lorsque la définition du hook le demande.
- Portée :
Any file. Les tableaux fusionnent dans les fichiers de paramètres. - Type : tableau de noms de variables d’environnement
- Valeur par défaut : non défini, donc la liste
allowedEnvVarsde chaque hook s’applique
MY_TOKEN et HOOK_SECRET :
settings.json
workflowKeywordTriggerEnabled
Choisissez si taper le mot-clé ultracode dans un prompt déclenche un workflow dynamique. Définissez-le à false pour taper le mot sans en déclencher un.
- Portée :
Any file. Apparaît dans/configcomme Ultracode keyword trigger. - Type : Booléen
true: taperultracodedans un prompt déclenche un workflow dynamiquefalse: vous pouvez taper le mot sans en déclencher un
- Valeur par défaut :
true
settings.json
ultracode, /workflows et les commandes de workflow enregistrées ne sont pas affectés.
workflowSizeGuideline
Définissez le nombre d’agents que Claude vise dans les workflows dynamiques qu’il écrit. Claude Code envoie la valeur à Claude comme conseil, pas une limite appliquée : "small" demande moins de 5 agents, "medium" moins de 10, et "large" moins de 50. Choisissez "small" lorsque vous voulez limiter ce qu’un workflow dépense. Nécessite Claude Code v2.1.219 ou ultérieur.
- Portée :
Any file. Une valeur là prend la priorité sur le choix Dynamic workflow size dans/config, que Claude Code stocke dans~/.claude.json, et Claude Code masque cette ligne tant qu’un fichier de paramètres définit la clé. - Type : chaîne, l’une des :
"unrestricted": pas de directive, donc Claude dimensionne le workflow à la tâche"small": Claude vise moins de 5 agents"medium": Claude vise moins de 10 agents"large": Claude vise moins de 50 agents
- Valeur par défaut :
"medium", ou"small"lorsque vous êtes connecté sur un plan Pro avec Claude Code v2.1.271 ou ultérieur
settings.json
/config à la place.
Plugins et skills
Activez les plugins, enregistrez les marketplaces, limitez les sources de plugins que votre organisation autorise, et contrôlez les skills qui se chargent. Pour installer et créer des plugins, consultez Plugins.disableBundledSkills
Désactivez les skills et workflows inclus avec Claude Code. Claude Code supprime complètement les skills et workflows fournis, tandis que les commandes intégrées telles que /init restent tapables mais sont masquées au modèle.
- Scope :
Any file - Type : Boolean
true: Claude Code supprime les skills et workflows fournis et masque les commandes intégrées telles que/initau modèlefalse: les skills fournis se chargent
- Default : unset, donc les skills fournis se chargent
- Per-session overrides :
CLAUDE_CODE_DISABLE_BUNDLED_SKILLSdéfini à1désactive les skills fournis pour une session ; celui des deux qui les désactive, l’autre ne peut pas les réactiver
settings.json
.claude/skills/, et .claude/commands/ ne sont pas affectés. /doctor reste tapable comme les commandes intégrées ; pour le masquer, définissez DISABLE_DOCTOR_COMMAND à la place.
disableSkillShellExecution
Désactivez l’exécution de shell en ligne pour !`...` et ```! blocs dans skills et commandes personnalisées provenant de sources utilisateur, projet, plugin ou répertoire supplémentaire. Claude Code remplace chaque commande par [shell command execution disabled by policy] au lieu de l’exécuter.
- Scope :
Any file. Untruedans les paramètres gérés ne peut pas être remplacé parfalseailleurs. - Type : Boolean
true: Claude Code remplace chaque commande shell en ligne par[shell command execution disabled by policy]au lieu de l’exécuterfalse: le shell en ligne s’exécute
- Default : unset, donc le shell en ligne s’exécute
settings.json
skillOverrides
Masquez ou réduisez un skill sans modifier son SKILL.md. Claude Code applique la valeur sous le nom de chaque skill à la liste des skills que Claude voit et à votre autocomplétion /.
- Scope :
Any file. Le menu/skillsécrit dans.claude/settings.local.json. - Type : objet mappant le nom du skill à l’un des éléments suivants :
"on": Claude voit le skill et vous pouvez taper/name"name-only": Claude voit le skill par son nom sans sa description"user-invocable-only": Claude ne voit pas le skill, mais vous pouvez toujours taper/name"off": Claude ne voit pas le skill et/nameest masqué de l’autocomplétion
- Default : unset, donc chaque skill est
"on"
legacy-context à Claude par nom uniquement et masque deploy à Claude et de l’autocomplétion / :
settings.json
/plugin.
Dans les paramètres gérés et les fichiers passés avec --settings, une clé sur un alias de skill fourni, tel que checkup pour /doctor, s’applique également au skill ; consultez comment les clés d’alias se combinent avec les clés sur le nom propre du skill.
syncClaudeAiSkills
Désactivez le téléchargement des skills activés pour votre compte claude.ai. Claude Code les télécharge dans ~/.claude/skills/synced/ dans les sessions de terminal où vous vous connectez avec votre compte claude.ai, interactives ou non interactives, et dans les sessions Cowork et cloud. Définissez false pour arrêter ce téléchargement et arrêter le chargement des skills qu’il a déjà synchronisés. Claude Code honore uniquement false : true est identique à unset et n’active pas la synchronisation où elle est autrement désactivée.
- Scope :
User, local, or managed, et fichiers passés avec--settings. Un dépôt ne peut pas le désactiver pour vous. - Type : Boolean
false: Claude Code arrête de télécharger les skills synchronisés et arrête de charger ceux déjà dans~/.claude/skills/synced/. Dans les paramètres utilisateur ou gérés, il les déplace également vers~/.claude/skills/.trash/true: identique à unset
- Default : unset, donc les sessions connectées avec votre compte claude.ai synchronisent vos skills
settings.json
syncClaudeAiPlugins
Désactivez le téléchargement des plugins activés pour votre compte claude.ai. Claude Code les télécharge dans ~/.claude/plugins/synced/ au début des sessions de terminal où vous vous connectez avec votre compte claude.ai et dans les sessions Cowork, et charge chacun comme <name>@synced. Définissez false pour arrêter ce téléchargement et arrêter le chargement des plugins qu’il a déjà synchronisés. Claude Code honore uniquement false : true est identique à unset et n’active pas la synchronisation où elle est autrement désactivée. Nécessite Claude Code v2.1.273 ou ultérieur.
- Scope :
User, local, or managed, et fichiers passés avec--settings. Un dépôt ne peut pas le désactiver pour vous. - Type : Boolean
false: Claude Code arrête de télécharger les plugins synchronisés et arrête de charger ceux déjà dans~/.claude/plugins/synced/. Dans les paramètres utilisateur ou gérés, il les déplace également vers~/.claude/plugins/.trash/true: identique à unset
- Default : unset, donc les sessions connectées avec votre compte claude.ai synchronisent vos plugins
"<name>@synced": false dans enabledPlugins.
Cet exemple empêche une machine de télécharger les plugins du compte dans n’importe quelle session :
settings.json
allowedChannelPlugins
Choisissez quels plugins de canal peuvent envoyer des messages dans les sessions de votre organisation. Lorsque vous le définissez, Claude Code utilise votre liste à la place de la liste d’autorisation par défaut d’Anthropic ; chaque entrée nomme un plugin et la marketplace d’où il provient.
- Scope :
Managed - Type : tableau d’objets, chacun avec des chaînes
marketplaceetplugin. Une entrée peut à la place être une chaîne"plugin@marketplace"telle que"telegram@claude-plugins-official", que Claude Code traite comme l’objet équivalent. La forme de chaîne nécessite Claude Code v2.1.267 ou ultérieur ; les versions antérieures rejettent la valeurallowedChannelPluginsentière lorsqu’elle en contient une - Default : unset, donc Claude Code utilise la liste d’autorisation par défaut d’Anthropic
managed-settings.json
channelsEnabled pour le compte : sur les plans Team et Enterprise, et sur les comptes Console avec des paramètres gérés, cela signifie channelsEnabled: true. Consultez Restreindre les plugins de canal qui peuvent s’exécuter.
blockedMarketplaces
Bloquez les sources de marketplace de plugins pour votre organisation. Claude Code vérifie la liste de blocage lors de l’ajout de marketplace et lors de l’installation, la mise à jour, l’actualisation et la mise à jour automatique du plugin, donc une marketplace que quelqu’un a ajoutée avant que vous ne définissiez la politique ne peut pas être utilisée pour récupérer des plugins non plus. Les sources bloquées sont vérifiées avant le téléchargement, donc elles ne touchent jamais le système de fichiers.
Si vous définissez cette clé dans la console d’administration claude.ai, claude.ai l’applique également lorsque quelqu’un de votre organisation ajoute une marketplace à partir d’un dépôt git sur claude.ai, comme Comment les restrictions fonctionnent le décrit.
- Scope :
Managed - Type : tableau d’objets source de marketplace, dans les mêmes formes que
strictKnownMarketplaces - Default : unset, donc aucune marketplace n’est bloquée
managed-settings.json
github peut utiliser la forme owner-wildcard "owner/*" pour bloquer tous les dépôts sous ce propriétaire GitHub, ce qui nécessite Claude Code v2.1.223 ou ultérieur. Ajoutez { "source": "skills-dir" } pour arrêter le chargement des plugins @skills-dir par Claude Code depuis ~/.claude/skills/ sans restreindre aucune marketplace. Consultez Restrictions de marketplace gérées.
channelsEnabled
Autorisez les canaux pour votre organisation. Sur les plans Team et Enterprise de claude.ai, Claude Code bloque les canaux jusqu’à ce que vous le définissiez à true. Pour les comptes Anthropic Console qui s’authentifient avec une clé API, les canaux sont autorisés par défaut. Si votre organisation déploie des paramètres gérés, Claude Code bloque également les canaux sur ces comptes jusqu’à ce que vous définissiez cette clé à true.
- Scope :
Managed - Type : Boolean
true: Claude Code autorise les canaux pour votre organisationfalse: identique à unset ; que les canaux soient bloqués dépend de votre plan, comme le Default l’indique
- Default : unset ; les canaux sont bloqués sur les plans Team et Enterprise et sur les comptes Console avec des paramètres gérés, et autorisés sur les plans Pro et Max et sur les comptes Console sans paramètres gérés
managed-settings.json
allowedChannelPlugins. Consultez Contrôles d’entreprise.
disableCommandPluginSources
Bloquez la source de plugin command, qui installe un plugin en exécutant une commande déclarée par la marketplace sur la machine de l’utilisateur. Lorsque vous le définissez à true, Claude Code n’exécute jamais la commande, n’installe ni ne met à jour les plugins provenant de sources de commande, et arrête de charger ceux déjà installés. Définissez-le à false pour les autoriser explicitement. Chaque fois qu’il bloque les sources de commande, que vous le définissiez à true ou que vous le laissiez unset sous allowManagedHooksOnly, il bloque également les commandes headersHelper de la marketplace, sauf pour une marketplace que les paramètres gérés eux-mêmes déclarent. Nécessite Claude Code v2.1.229 ou ultérieur, et le blocage headersHelper nécessite v2.1.238 ou ultérieur.
- Scope :
Managed - Type : Boolean
true: Claude Code n’exécute jamais la commande déclarée par la marketplace, n’installe ni ne met à jour les plugins provenant de sources de commande, et arrête de charger ceux déjà installésfalse: Claude Code autorise explicitement les plugins provenant de sources de commande
- Default : unset, donc Claude Code suit
allowManagedHooksOnly: une organisation qui restreint l’exécution des hooks aux paramètres gérés obtient également les sources de commande désactivées
managed-settings.json
pluginSuggestionMarketplaces
Nommez les marketplaces dont les plugins peuvent apparaître comme suggestions d’installation contextuelle, dans les conseils de spinner et épinglés en haut de l’onglet Discover de /plugin. Le conseil intégré de conception frontale propriétaire n’est pas affecté. Les suggestions proviennent de la déclaration relevance de chaque plugin dans son entrée de marketplace.
- Scope :
Managed - Type : tableau de noms de marketplace
- Default : unset, donc aucune suggestion déclarée par la marketplace ne s’affiche
managed-settings.json
extraKnownMarketplaces pour ce nom, soit comme une entrée de strictKnownMarketplaces. Claude Code ignore une marketplace enregistrée à partir d’une source différente sous un nom autorisé. La marketplace officielle est exempte de l’exigence de source : autoriser son nom seul suffit, puisque ce nom ne peut s’enregistrer que depuis la source Anthropic officielle. Consultez Suggérer des plugins par contexte.
pluginTrustMessage
Ajoutez le texte de votre organisation à l’avertissement de confiance du plugin que Claude Code affiche avant l’installation, par exemple pour confirmer que les plugins de votre marketplace interne sont vérifiés.
- Scope :
Managed - Type : string
- Default : unset, donc Claude Code affiche uniquement l’avertissement standard
managed-settings.json
strictKnownMarketplaces
Limitez les sources de marketplace de plugins à partir desquelles les personnes de votre organisation peuvent ajouter et installer des plugins. Claude Code applique la liste d’autorisation lors de l’ajout de marketplace et lors de l’installation, la mise à jour, l’actualisation et la mise à jour automatique du plugin, avant toute opération réseau ou système de fichiers, donc une marketplace que quelqu’un a ajoutée avant que vous ne définissiez la politique ne peut pas être utilisée pour récupérer des plugins une fois que sa source ne correspond plus. Les utilisateurs bloqués voient une erreur nommant la politique gérée.
Si vous définissez cette clé dans la console d’administration claude.ai, claude.ai l’applique également lorsque quelqu’un de votre organisation ajoute une marketplace à partir d’un dépôt git sur claude.ai, comme Comment les restrictions fonctionnent le décrit.
- Scope :
Managed - Type : tableau d’objets source de marketplace ; consultez Types de source autorisés
- Default : unset, donc les utilisateurs peuvent ajouter n’importe quelle marketplace. Un tableau vide est un verrouillage complet qui bloque toutes les sources de marketplace, y compris la marketplace officielle d’Anthropic
v2.0, et une URL marketplace.json hébergée :
managed-settings.json
allowedMarketplaces ; Alias de clé Marketplace décrit comment Claude Code traite l’alias et quelle version l’accepte. Cette clé est une porte de politique : elle contrôle ce que les utilisateurs peuvent ajouter mais n’enregistre rien. Pour restreindre et pré-enregistrer dans un seul fichier, consultez Combiner avec extraKnownMarketplaces. Pour la vue côté utilisateur, consultez Restrictions de marketplace gérées.
Types de source autorisés
Chaque entrée ci-dessous montre une entrée de liste d’autorisation par type de source et les champs qu’elle accepte. La plupart des types correspondent exactement ;hostPattern et pathPattern correspondent par regex, et les entrées github peuvent utiliser un wildcard de propriétaire.
Trois types de source portent des règles au-delà du tableau :
-
url: une marketplace URL télécharge uniquement le fichiermarketplace.json, et Claude Code ne récupère pas les fichiers de plugin par chemin relatif depuis ce serveur, donc ses plugins doivent utiliser une source de plugin autre qu’un chemin relatif, comme une URL d’archive, qui peut être sur le même hôte. Pour les plugins avec des chemins relatifs, utilisez plutôt une marketplace basée sur Git. Consultez Les plugins avec des chemins relatifs échouent dans les marketplaces basées sur URL. -
hostPattern: utilisez-le pour autoriser chaque marketplace sur un serveur GitHub Enterprise ou GitLab interne sans lister chaque dépôt. Claude Code compare les sourcesgithubàgithub.com, prend le nom d’hôte des sourcesurl, et le prend des sourcesgitselon la forme de l’URL git :- Une URL avec un schéma, tel que
https://oussh://: le nom d’hôte dans l’URL. - Une adresse SSH sans schéma, sous la forme
user@host:pathde git, telle quegit@git.example.com:tools/plugins.git: l’hôte entre@et:, qui est l’hôte auquel git se connecte. - Toute autre forme sans schéma : pas d’hôte, donc aucune entrée
strictKnownMarketplaceshostPatternne lui correspond. Pour une entréeblockedMarketplaceshostPattern, Claude Code prend un hôte à partir d’un ensemble plus large de formes, donc une entrée de liste de blocage peut toujours correspondre à une telle forme. Avant v2.1.234, une entréestrictKnownMarketplaceshostPatterncorrespondait également à certaines formes que git ne traite pas comme des adresses SSH.
fileetdirectoryn’ont pas d’hôte et ne correspondent jamais à une entréehostPattern. - Une URL avec un schéma, tel que
-
pathPattern: utilisez-le pour autoriser les marketplaces du système de fichiers aux côtés des entréeshostPatternpour les sources réseau.".*"autorise chaque chemin local ; un motif plus étroit tel que"^/opt/approved/"restreint à un répertoire.
@skills-dir depuis ~/.claude/skills/. Ajoutez l’entrée { "source": "skills-dir" } pour continuer à les charger ; l’entrée n’a aucun sens en dehors de cette clé et blockedMarketplaces.
Wildcards de propriétaire
Une entréegithub dont la valeur repo est "<owner>/*" correspond à tous les dépôts sous ce propriétaire GitHub. Les wildcards de propriétaire nécessitent Claude Code v2.1.223 ou ultérieur et ne fonctionnent que dans strictKnownMarketplaces et blockedMarketplaces. Partout ailleurs où une source github apparaît, comme extraKnownMarketplaces ou /plugin marketplace add, la valeur repo doit nommer un seul dépôt. Avant v2.1.223, Claude Code comparait l’entrée littéralement, donc une entrée de liste d’autorisation ne correspondait à aucun dépôt et une entrée de liste de blocage ne bloquait rien ; les entrées de dépôt unique sont appliquées sur chaque version.
Cette entrée autorise n’importe quel dépôt de marketplace dans l’organisation acme-corp :
managed-settings.json
*, */plugins, ou acme-corp/tools-* comme invalides, donc elles ne correspondent à aucun dépôt.
Les règles de correspondance diffèrent entre les deux paramètres :
Correspondance exacte
Pour chaque type de source sauf les entréesgithub de wildcard de propriétaire et les entrées hostPattern et pathPattern correspondant par regex, Claude Code autorise l’ajout d’un utilisateur uniquement lorsque la source de marketplace correspond exactement à une entrée. Pour les sources basées sur git github et git, la correspondance exacte inclut les champs optionnels :
- Le
repoouurldoit correspondre exactement - Le champ
refdoit correspondre exactement, ou les deux doivent être undefined - Le champ
pathdoit correspondre exactement, ou les deux doivent être undefined
{ "source": "github", "repo": "acme-corp/plugins" }et{ "source": "github", "repo": "acme-corp/plugins", "ref": "main" }{ "source": "github", "repo": "acme-corp/plugins", "path": "marketplace" }et{ "source": "github", "repo": "acme-corp/plugins" }
Autoriser uniquement la marketplace officielle
Pour autoriser la marketplace officielle d’Anthropic et rien d’autre, listez son dépôt :managed-settings.json
- Les environnements non interactifs qui s’exécutent avant la première session de terminal interactive de la machine.
- Les machines où Claude Code n’a été exécuté que via l’extension VS Code.
- Les machines où Claude Code a déjà exécuté une session de terminal interactive sous une politique qui bloquait la marketplace, comme le verrouillage de tableau vide. Claude Code enregistre la tentative bloquée et ne réessaie pas après le changement de politique.
extraKnownMarketplaces dans le même managed-settings.json pour que Claude Code l’enregistre automatiquement, ou exécutez claude plugin marketplace add anthropics/claude-plugins-official.
Combiner avec extraKnownMarketplaces
Les deux clés font des travaux différents. Ce tableau les compare :
Pour restreindre et pré-enregistrer une marketplace pour tous les utilisateurs, définissez les deux dans
managed-settings.json :
managed-settings.json
strictKnownMarketplaces défini, les utilisateurs peuvent toujours ajouter une marketplace autorisée eux-mêmes avec /plugin marketplace add. La marketplace officielle d’Anthropic est la seule que Claude Code enregistre automatiquement, et uniquement lorsque la liste d’autorisation l’autorise. Autoriser uniquement la marketplace officielle liste les machines qu’elle manque.
strictPluginOnlyCustomization
Bloquez les skills, agents, hooks et serveurs MCP provenant de sources utilisateur et projet, afin qu’ils ne puissent provenir que de plugins ou de paramètres gérés. Combinez-le avec strictKnownMarketplaces pour contrôler la chaîne d’approvisionnement de personnalisation complète : la liste d’autorisation de marketplace contrôle les plugins que les utilisateurs peuvent installer.
- Scope :
Managed - Type :
truepour verrouiller les quatre types de personnalisation, ou un tableau nommant les types à verrouiller, parmi"skills","agents","hooks", et"mcp" - Default : unset, donc rien n’est verrouillé
managed-settings.json
strictPluginOnlyCustomization.skills
Verrouillez la surface skills. Claude Code arrête de charger les skills depuis ~/.claude/skills/ et .claude/skills/, les commandes personnalisées depuis ~/.claude/commands/ et .claude/commands/, les skills et commandes sous les répertoires --add-dir, et les skills synchronisés depuis votre compte claude.ai. Il continue de charger les skills de plugin, les skills fournis, et les skills dans le répertoire de politique gérée.
- Scope :
Managed - Type : la chaîne
"skills"dans le tableaustrictPluginOnlyCustomization - Default : non verrouillé
managed-settings.json
strictPluginOnlyCustomization.agents
Verrouillez la surface agents. Claude Code arrête de charger les agents depuis ~/.claude/agents/, .claude/agents/, et les répertoires --add-dir. Il continue de charger les agents de plugin, les agents intégrés, et les agents dans le répertoire de politique gérée.
- Scope :
Managed - Type : la chaîne
"agents"dans le tableaustrictPluginOnlyCustomization - Default : non verrouillé
managed-settings.json
strictPluginOnlyCustomization.hooks
Verrouillez la surface hooks. Claude Code arrête d’exécuter les hooks provenant des settings.json utilisateur, projet et local, et continue d’exécuter les hooks de plugin et les hooks dans les paramètres gérés.
- Scope :
Managed - Type : la chaîne
"hooks"dans le tableaustrictPluginOnlyCustomization - Default : non verrouillé
managed-settings.json
strictPluginOnlyCustomization.mcp
Verrouillez la surface mcp. Claude Code arrête de charger les serveurs MCP depuis ~/.claude.json et .mcp.json, et continue de charger les serveurs MCP de plugin, les serveurs managed-mcp.json et les serveurs de managedMcpServers.
- Scope :
Managed - Type : la chaîne
"mcp"dans le tableaustrictPluginOnlyCustomization - Default : non verrouillé
managed-settings.json
enabledPlugins
Activez ou désactivez les plugins individuels, indexés par plugin-name@marketplace-name. Un plugin sans entrée à aucune portée revient à sa valeur defaultEnabled. Lorsque vous activez ou désactivez un plugin avec /plugin ou claude plugin enable, Claude Code écrit cette clé pour vous.
- Scope :
Any file - Type : objet mappant
plugin-name@marketplace-nameà un Boolean - Default : unset, donc chaque plugin suit sa valeur
defaultEnabled
team-tools et en désactive un de personal :
settings.json
- Paramètres utilisateur : vos préférences personnelles de plugin
- Paramètres de projet : plugins partagés avec tout le monde dans le dépôt
- Paramètres locaux : remplacements par machine, ignorés par git lorsque Claude Code enregistre un paramètre là
- Paramètres gérés : politique à l’échelle de l’organisation. Un plugin défini à
falseici est bloqué de l’installation à chaque portée et masqué de la marketplace
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 façon, puisque les paramètres gérés remplacent les paramètres locaux.
L’activation d’un plugin à partir d’une source externe telle qu’un dépôt GitHub ou un package npm dans le .claude/settings.json d’un projet ne l’installe pas pour d’autres personnes. Sur chaque chemin qui charge les plugins, Claude Code signale le plugin comme non installé jusqu’à ce que chaque utilisateur l’installe lui-même.
extraKnownMarketplaces
Enregistrez des marketplaces de plugins supplémentaires par nom, afin que les personnes qui ouvrent le dépôt, ou tout le monde que vos paramètres gérés atteignent, obtiennent la marketplace sans l’ajouter eux-mêmes. Claude Code enregistre chaque marketplace qu’il ne connaît pas déjà. Que le plugin que enabledPlugins nomme à partir de celle-ci s’installe dépend de la source du plugin et du fichier qui l’active ; cette entrée a les règles.
- Scope :
Any file. Claude Code honore les entrées dans le.claude/settings.jsonou.claude/settings.local.jsond’un dépôt uniquement après que vous acceptiez la boîte de dialogue de confiance de l’espace de travail pour ce dossier ; dans un dossier que vous n’avez pas approuvé, y compris une exécution-plà, il les ignore sans message. - Type : objet mappant un nom de marketplace à un objet avec un objet
sourceet un BooleanautoUpdateoptionnel - Default : unset
settings.json
additionalMarketplaces ; consultez Alias de clé Marketplace.
Définissez "autoUpdate": true aux côtés de source pour que Claude Code actualise cette marketplace et mette à jour ses plugins installés en arrière-plan après le démarrage. Lorsqu’il est omis, claude-plugins-official et la plupart des autres marketplaces officielles d’Anthropic sont par défaut à true, et les marketplaces tierces par défaut à false. Consultez Configurer les mises à jour automatiques.
Lorsque plus d’un fichier de paramètres définit une entrée de marketplace sous le même nom, Claude Code utilise l’entrée du fichier de priorité la plus élevée dans son intégralité. Cette entrée remplace l’entrée de priorité inférieure et n’hérite d’aucun de ses champs, donc une redéfinition ne peut pas combiner les identifiants source.headers d’un fichier avec une URL qu’un autre fichier contrôle. Avant v2.1.228, Claude Code fusionnait les entrées de même nom champ par champ, donc une entrée dans un fichier de priorité plus élevée pouvait hériter des champs qu’elle ne définissait pas, y compris les headers d’un autre fichier.
Types de source de marketplace
L’objetsource prend l’une de ces formes :
github: un dépôt GitHub, avecrepogit: n’importe quelle URL git, avecurlurl: une URL directe vers un fichiermarketplace.json, avecurletheadersoptionnel etheadersHelperpour l’accès authentifié.headersHelpernomme une commande qui imprime les en-têtes dont les valeurs sont trop éphémères pour être listées dansheaders, et nécessite Claude Code v2.1.238 ou ultérieurfile: un chemin local vers un fichiermarketplace.json, avecpathdirectory: un chemin du système de fichiers local, avecpath. Utilisez-le pour le développement, ou pour une marketplace que votre organisation déploie sur chaque machine.settings: une marketplace en ligne déclarée directement dans le fichier de paramètres sans dépôt hébergé, avecnameetplugins
git fonctionne avec n’importe quel service d’hébergement git, y compris GitLab auto-hébergé et Bitbucket. Claude Code clone le dépôt avec la même authentification que git clone utiliserait sur cette machine : assistants d’identifiants configurés ou clés SSH. Un jeton de fournisseur tel que GITHUB_TOKEN prend effet via un assistant d’identifiants qui le lit. Consultez Dépôts privés pour les détails de configuration.
Pour les sources github et git, Claude Code ne télécharge jamais le contenu de Git LFS lorsqu’il clone le dépôt de marketplace pour l’ajouter ou le mettre à jour. Les fichiers suivis par LFS sont extraits en tant que fichiers pointeurs, et la sortie d’ajout ou de mise à jour signale combien.
Le champ skipLfs à l’intérieur de l’objet source est accepté et n’a aucun effet. Avant v2.1.274, Claude Code téléchargeait le contenu LFS sauf si vous définissiez "skipLfs": true.
Pour une source url, définissez headersHelper à l’intérieur de l’objet source lorsque les identifiants dans headers expirent et qu’une commande doit en produire de nouveaux. Nécessite Claude Code v2.1.238 ou ultérieur. Pour ce que la commande doit imprimer et où Claude Code l’exécute, consultez Écrire la commande headersHelper, et pour les cas où Claude Code ne l’exécute pas, consultez Quand Claude Code ignore une commande headersHelper. Une fois que vous définissez headersHelper sur une URL de marketplace https://, Claude Code exécute la commande à deux moments, réutilisant la sortie d’une exécution pendant jusqu’à 60 secondes :
- Avant chaque récupération du
marketplace.jsonde cette marketplace, y compris une actualisation ultérieure. Claude Code envoie les en-têtes imprimés avec cette récupération. - Avant chaque téléchargement d’archive de plugin sur l’origine de l’URL de la marketplace, ce qui signifie le même schéma, hôte et port. Claude Code envoie la sortie avec ce téléchargement, et aucun autre téléchargement n’obtient les en-têtes.
headersHelper défini dans le .claude/settings.json ou .claude/settings.local.json d’un répertoire que vous ajoutez avec --add-dir, sur une source url comme sur une entrée de plugin en ligne, et envoie uniquement les headers fixes définis dans ce fichier. Comment les utilisateurs acceptent une commande headersHelper couvre les autres fichiers de paramètres.
Les plugins listés dans une source settings doivent référencer des sources externes telles que GitHub ou npm, et le name doit correspondre à la clé de marketplace. Vous activez toujours chaque plugin séparément dans enabledPlugins. Cet exemple déclare un plugin en ligne :
settings.json
source: 'settings' dont le propre source est une archive peut définir headers pour le téléchargement d’archive. Si la valeur que vous mettriez dans headers est éphémère, comme un jeton que votre registre émet à la demande, définissez une commande headersHelper à la place. Une entrée peut définir les deux. Les deux champs nécessitent Claude Code v2.1.238 ou ultérieur.
Claude Code envoie les headers de l’entrée, et tout ce que la commande imprime, avec le téléchargement d’archive de ce plugin et avec aucun autre téléchargement. Claude Code exécute la commande uniquement lorsqu’un utilisateur installe ou met à jour ce seul plugin individuellement. Trois règles supplémentaires dépendent du fichier qui contient l’entrée :
strict: contrairement à une entrée dans lemarketplace.jsond’une marketplace, une entrée dans les paramètres n’a pas besoin de"strict": false, car un fichier de paramètres ne porte aucun champ de manifeste à intégrer. Consultez Mode strict.- Confiance de dossier : pour une entrée dans le
.claude/settings.jsonou.claude/settings.local.jsond’un projet, Claude Code exécute la commande uniquement après que l’utilisateur a également approuvé ce dossier. - Filtre d’en-tête : Claude Code supprime les noms d’en-têtes de routage de requête et d’identité client d’une entrée dans le
.claude/settings.jsonou.claude/settings.local.jsond’un projet, car un dépôt peut fournir ces fichiers. Claude Code applique le même filtre à une entrée de catalogue et à une entrée dans les paramètres d’un répertoire--add-dir, et aucun filtre à une entrée dans vos paramètres utilisateur, un fichier--settings, ou les paramètres gérés.
Alias de clé Marketplace
Sur Claude Code v2.1.232 ou ultérieur, vous pouvez écrireextraKnownMarketplaces comme additionalMarketplaces et strictKnownMarketplaces comme allowedMarketplaces. Claude Code traite chaque alias comme suit :
- Les versions antérieures ignorent l’alias, donc gardez l’orthographe canonique dans un fichier que les versions antérieures lisent également, comme un fichier de paramètres gérés pour une flotte avec des versions Claude Code mixtes.
- Dans n’importe quel fichier de paramètres qui accepte la clé canonique, Claude Code lit l’alias exactement comme il lit la clé canonique.
- Claude Code peut réécrire
additionalMarketplacesenextraKnownMarketplaceslorsqu’il met à jour le fichier. - Si vous définissez les deux orthographes dans un fichier, Claude Code utilise la valeur canonique et ignore l’alias.
pluginConfigs
Stockez les réponses non sensibles que vous donnez au dialogue de configuration userConfig d’un plugin, indexées par ID de plugin. Claude Code écrit cette clé dans vos paramètres utilisateur lorsque vous remplissez le dialogue, donc vous n’avez pas besoin de l’éditer à la main. Claude Code stocke les options sensibles dans le Keychain macOS à la place, revenant à ~/.claude/.credentials.json lorsque le Keychain rejette l’écriture ; sur les plates-formes sans un trousseau pris en charge, il les stocke dans ~/.claude/.credentials.json.
- Scope :
User or managed - Type : objet mappant un ID de plugin à un objet avec un champ
options, mappant chaque nom d’option à une chaîne, un nombre, un Boolean, ou un tableau de chaînes, et un champmcpServersoptionnel contenant les valeurs de configuration utilisateur par serveur dans la même forme - Default : unset
api_endpoint pour le plugin deployer de acme-tools :
settings.json
@builtin. Par exemple, le paramètre Project instructions qui contrôle si Claude Code lit les fichiers AGENTS.md est pluginConfigs["cc-plugin-agents-md@builtin"].options.instructionFiles. Avant v2.1.285, l’ID du plugin était agents-md@builtin. Les versions ultérieures lisent une entrée sous l’un ou l’autre ID.
Claude Code ignore les entrées de projet et locales car il substitue ces valeurs dans les configurations de hook, MCP et LSP du plugin, et un dépôt cloné ne doit pas pouvoir les fournir. Avant v2.1.207, les paramètres de projet et locaux étaient également lus.
prependPlugins
Listez les plugins gérés dont les mods s’exécutent avant chaque mod qu’un utilisateur installe, dans l’ordre listé. Lorsque vous définissez cette clé dans les paramètres gérés, nommez sec-default@builtin dans la liste pour conserver le garde-fou intégré. Dans les paramètres gérés, Claude Code ignore un id dont le plugin ne compte pas comme celui de votre organisation. Consultez Installer les mods de votre organisation et définir l’ordre pour ces conditions et pour la façon dont les deux clés d’ordre fonctionnent ensemble.
- Scope :
User or managed. Claude Code lit la clé à partir des paramètres gérés. Il lit la clé à partir des paramètres utilisateur uniquement sur une machine sans paramètres gérés, pour un utilisateur qui n’est pas connecté avec un plan Team ou Enterprise. Il ignore la clé dans les paramètres de projet et locaux et dans un fichier--settings. - Type : tableau de chaînes
plugin-name@marketplace-name - Default : unset
managed-settings.json
appendPlugins
Listez les plugins gérés dont les mods s’exécutent après chaque mod qu’un utilisateur installe, dans l’ordre listé. Un id listé à la fois dans prependPlugins et appendPlugins est placé en tête. Dans les paramètres gérés, Claude Code ignore un id dont le plugin ne compte pas comme celui de votre organisation.
- Scope :
User or managed. Claude Code lit la clé à partir des paramètres gérés. Il lit la clé à partir des paramètres utilisateur uniquement sur une machine sans paramètres gérés, pour un utilisateur qui n’est pas connecté avec un plan Team ou Enterprise. Il ignore la clé dans les paramètres de projet et locaux et dans un fichier--settings. - Type : tableau de chaînes
plugin-name@marketplace-name - Default : unset
managed-settings.json
MCP
Contrôlez les serveurs MCP auxquels Claude Code se connecte et ceux qu’une organisation autorise. Consultez Connecter à des outils externes avec MCP et Configuration MCP gérée.allowAllClaudeAiMcps
Chargez les connecteurs claude.ai que Claude Code récupère lui-même aux côtés d’un managed-mcp.json déployé. Sans cette clé, managed-mcp.json prend le contrôle exclusif des serveurs MCP et supprime ces connecteurs.
- Portée :
Managed. Les utilisateurs ne peuvent pas réactiver les connecteurs que le contrôle exclusif a supprimés. - Type : Booléen
true: Claude Code charge les connecteurs claude.ai aux côtés d’unmanaged-mcp.jsondéployéfalse: unmanaged-mcp.jsondéployé prend le contrôle exclusif des serveurs MCP et supprime les connecteurs claude.ai que Claude Code récupère lui-même
- Défaut :
false, donc unmanaged-mcp.jsondéployé supprime les connecteurs claude.ai que Claude Code récupère lui-même
managed-settings.json
allowedMcpServers et deniedMcpServers s’appliquent toujours aux connecteurs que cette clé charge. Les connecteurs livrés à une session cloud dont l’hôte porte un managed-mcp.json, comme un exécuteur auto-hébergé, restent supprimés. Consultez Autoriser les connecteurs claude.ai aux côtés de l’ensemble géré.
allowClaudeInChromeWithManagedMcp
Permettez au serveur Claude dans Chrome intégré de s’exécuter aux côtés d’un managed-mcp.json déployé. Sans cette clé, un managed-mcp.json déployé bloque Claude dans Chrome dans les sessions de terminal. Nécessite Claude Code v2.1.282 ou ultérieur.
- Portée :
Managed, uniquement à partir des paramètres gérés du périphérique lui-même : une plist déployée par MDM ou une clé de registre HKLM, ou un fichiermanaged-settings.jsonsystème. Claude Code l’ignore dans les paramètres gérés par le serveur, dans le registre HKCU accessible en écriture par l’utilisateur, et dans les paramètres utilisateur ou projet. - Type : Booléen
true: le serveur Claude dans Chrome intégré peut s’exécuter aux côtés d’unmanaged-mcp.jsondéployéfalse: unmanaged-mcp.jsondéployé bloque Claude dans Chrome dans les sessions de terminal
- Défaut :
false, donc unmanaged-mcp.jsondéployé bloque Claude dans Chrome dans les sessions de terminal
managed-settings.json
deniedMcpServers pour claude-in-chrome bloque toujours le serveur avec cette clé activée. Consultez Autoriser Claude dans Chrome aux côtés de l’ensemble géré.
allowedMcpServers
Créez une liste blanche des serveurs MCP que les utilisateurs peuvent ajouter. Claude Code bloque tout serveur qui ne correspond pas à une entrée, où qu’elle soit définie, y compris les serveurs de plugins, les serveurs passés avec --mcp-config, et les serveurs de claude.ai.
Les serveurs intégrés tels que Claude dans Chrome, le serveur ide auquel Claude Code se connecte dans un IDE VS Code ou JetBrains en cours d’exécution, et les serveurs que l’interface de ligne de commande elle-même configure sont exemptés de la liste blanche, et la liste noire s’applique toujours à eux. Sur Claude Code v2.1.268 ou ultérieur, les outils Slack d’une session Claude Tag sont également exemptés de la liste blanche, et la liste noire s’applique toujours à eux. Les serveurs type: "sdk" en processus sont exemptés des deux listes ; l’application qui a démarré la session les enregistre.
Les serveurs que votre organisation livre sont également exemptés de la liste blanche, et la liste noire s’applique toujours à eux. L’exemption couvre chaque entrée managedMcpServers, et toute entrée managed-mcp.json dont les valeurs n’utilisent pas d’expansion ${VAR}. Consultez Comment un serveur est évalué pour l’ordre de vérification complet. Avant la v2.1.259, les serveurs de managed-mcp.json devaient également correspondre.
- Portée :
Any file. Les entrées de chaque fichier fusionnent en une seule liste blanche sauf siallowManagedMcpServersOnlyest défini. Déployez-le dans les paramètres gérés pour l’appliquer. - Type : tableau d’objets, chacun avec exactement une clé :
serverName, une chaîne limitée aux lettres, chiffres, tirets et traits de soulignement ;serverCommand, un tableau de la commande et de ses arguments correspondant exactement ; ouserverUrl, un modèle d’URL avec des caractères génériques* - Défaut : non défini, donc chaque serveur est autorisé ; un tableau vide bloque chaque serveur que les utilisateurs ajoutent
npx listée démarre :
settings.json
deniedMcpServers a la priorité, donc un serveur sur les deux listes est bloqué. Une fois que la liste contient une entrée serverCommand, un serveur stdio doit correspondre à une entrée serverCommand, et une fois qu’elle contient une entrée serverUrl, un serveur distant doit correspondre à une entrée serverUrl : une correspondance serverName n’admet plus ce type de serveur. Consultez Contrôle basé sur les politiques avec listes blanches et listes noires.
allowManagedMcpServersOnly
Rendez la liste blanche gérée la seule qui s’applique. Claude Code lit alors allowedMcpServers uniquement à partir des paramètres gérés et ignore les listes blanches dans les paramètres utilisateur, projet et locaux ; deniedMcpServers fusionne toujours à partir de chaque portée de paramètres, donc les utilisateurs peuvent toujours bloquer les serveurs pour eux-mêmes. Les administrateurs le définissent pour que les paramètres propres d’un utilisateur ne puissent pas élargir ce que la liste blanche gérée permet.
- Portée :
Managed - Type : Booléen
true: Claude Code litallowedMcpServersuniquement à partir des paramètres gérés et ignore les listes blanches dans les paramètres utilisateur, projet et locauxfalse: les listes blanches de chaque portée de paramètres fusionnent
- Défaut :
false, donc les listes blanches de chaque portée de paramètres fusionnent
github :
managed-settings.json
deniedMcpServers
Bloquez des serveurs MCP spécifiques. Claude Code refuse de charger un serveur correspondant, où qu’il soit défini, y compris les serveurs de plugins, les serveurs passés avec --mcp-config, les serveurs de managed-mcp.json, les serveurs de managedMcpServers, et les connecteurs claude.ai qu’il récupère lui-même. Les serveurs type: "sdk" en processus sont exemptés ; l’application qui a démarré la session les enregistre.
- Portée :
Any file. Les entrées de chaque fichier fusionnent en une seule liste noire, etallowManagedMcpServersOnlyne change pas cela. Déployez-le dans les paramètres gérés pour l’appliquer. - Type : tableau d’objets, chacun avec exactement une clé :
serverName, une chaîne, donc le nom d’affichage d’un connecteur claude.ai comme"claude.ai Slack"fonctionne ;serverCommand, un tableau de la commande et de ses arguments correspondant exactement ; ouserverUrl, un modèle d’URL avec des caractères génériques* - Défaut : non défini, donc aucun serveur n’est bloqué ; un tableau vide ne bloque rien non plus
settings.json
allowedMcpServers, donc un serveur sur les deux listes est bloqué. Consultez Contrôle basé sur les politiques avec listes blanches et listes noires.
disableClaudeAiConnectors
Désactivez les connecteurs MCP claude.ai que Claude Code récupère lui-même, afin qu’il ne les récupère ni ne les connecte. Un true dans n’importe quel fichier de paramètres s’applique : un .claude/settings.json de projet enregistré peut exclure un référentiel de ces connecteurs, mais un false au niveau du projet ne peut pas remplacer un true au niveau utilisateur ou géré.
- Portée :
Any file - Type : Booléen
true: Claude Code ne récupère ni ne connecte ces connecteursfalse: identique à non défini ; Claude Code récupère vos connecteurs sauf si un autre fichier de paramètres ouENABLE_CLAUDEAI_MCP_SERVERSles désactive
- Défaut :
false, donc Claude Code récupère vos connecteurs - Remplacements par session :
ENABLE_CLAUDEAI_MCP_SERVERSdéfini surfalsedésactive les connecteurs pour une session ; quel que soit celui des deux qui les désactive, l’autre ne peut pas les réactiver
settings.json
--mcp-config ne sont pas affectés. Pour bloquer des connecteurs individuels au lieu de tous les bloquer, utilisez deniedMcpServers. Consultez Désactiver les connecteurs claude.ai.
disabledMcpjsonServers
Rejetez des serveurs spécifiques définis dans le fichier .mcp.json d’un projet afin que Claude Code ne les connecte jamais ou ne vous demande de les approuver. Un rejet dans n’importe quel fichier de paramètres s’applique, y compris un .claude/settings.json de projet enregistré dans le référentiel.
- Portée :
Any file - Type : tableau de chaînes, les noms de serveur tels qu’ils apparaissent dans
.mcp.json - Défaut : non défini
settings.json
.claude/settings.local.json lorsque vous rejetez un serveur dans la boîte de dialogue d’approbation. claude mcp get <name> affiche un serveur rejeté comme ✘ Rejected (see disabledMcpjsonServers in settings). Le rejet a la priorité sur enabledMcpjsonServers et enableAllProjectMcpServers.
enableAllProjectMcpServers
Approuvez chaque serveur MCP défini dans les fichiers .mcp.json du projet sans invite. Claude Code écrit cette clé dans .claude/settings.local.json lorsque vous choisissez d’approuver tous les serveurs dans la boîte de dialogue d’approbation.
- Portée :
Any file. Dans un dossier dont vous n’avez pas accepté la boîte de dialogue de confiance, Claude Code l’honore à partir des paramètres utilisateur, des paramètres gérés et de--settingset l’ignore dans le fichier de projet partagé, à la fois dans la session et pourclaude mcp listetclaude mcp get; Approbations des serveurs de projet et confiance de l’espace de travail indique quand un.claude/settings.local.jsonnon suivi compte également. - Type : Booléen
true: Claude Code approuve chaque serveur MCP défini dans les fichiers.mcp.jsondu projet sans invitefalse: Claude Code vous demande d’approuver chaque serveur. Dans un dossier de confiance, unfalsedans un fichier de priorité plus élevée remplace untruedans un fichier de priorité plus basse ; dans un dossier que vous n’avez pas approuvé, untruedans n’importe quel fichier honoré suffit
- Défaut : non défini, donc Claude Code vous demande d’approuver chaque serveur
settings.json
disabledMcpjsonServers rejette toujours un serveur.
enabledMcpjsonServers
Approuvez des serveurs spécifiques définis dans les fichiers .mcp.json du projet afin que Claude Code les connecte sans demander. Claude Code écrit cette clé dans .claude/settings.local.json lorsque vous approuvez un serveur dans la boîte de dialogue d’approbation.
- Portée :
Any file. Dans un dossier dont vous n’avez pas accepté la boîte de dialogue de confiance, Claude Code l’honore à partir des paramètres utilisateur, des paramètres gérés et de--settingset l’ignore dans le fichier de projet partagé, à la fois dans la session et pourclaude mcp listetclaude mcp get; Approbations des serveurs de projet et confiance de l’espace de travail indique quand un.claude/settings.local.jsonnon suivi compte également. - Type : tableau de chaînes, les noms de serveur tels qu’ils apparaissent dans
.mcp.json - Défaut : non défini
memory et github du .mcp.json du projet :
settings.json
disabledMcpjsonServers rejette toujours un serveur.
managedMcpServers
Fournissez des serveurs MCP distants à chaque utilisateur à partir des paramètres gérés. Les utilisateurs conservent les serveurs qu’ils ajoutent eux-mêmes et ne peuvent pas modifier ou supprimer ceux que vous fournissez. Nécessite Claude Code v2.1.259 ou ultérieur.
- Portée :
Managed. Claude Code supprime la clé avec un avertissement dans les paramètres utilisateur, projet et locaux, et ne la lit pas dans l’onglet Code de l’application Claude Desktop sur un déploiement tiers ou dans les sessions Cowork de l’application, où Claude Desktop fournit et verrouille les serveurs MCP de ces sessions lui-même. - Type : objet indexé par nom de serveur. Chaque entrée a la forme
.mcp.jsonpour un serveurhttpousse: uneurlhttps://requise, et optionnellementheaders,oauth, et les autres options HTTP et SSE. Claude Code supprime les entrées qui échouent la validation, et Ce qu’une entrée peut contenir énumère les conditions - Défaut : non défini, donc les paramètres gérés ne fournissent aucun serveur
search :
managed-settings.json
managed-mcp.json et les listes d’autorisation et de refus, et ce que les utilisateurs voient, consultez Fournir des serveurs via les paramètres gérés.
Agents, sessions, et worktrees
Définissez l’agent par défaut, contrôlez les coéquipiers et la messagerie entre sessions, et configurez les worktrees. Voir Sous-agents et Worktrees.agent
Exécutez le thread principal en tant que sous-agent nommé, de sorte que Claude Code applique le prompt système, les restrictions d’outils et le modèle de ce sous-agent à votre session. La même clé définit l’agent par défaut pour les sessions que vous distribuez à partir de claude agents.
- Scope :
Any file - Type : string, le nom d’un agent intégré ou personnalisé
- Default : unset, de sorte que le thread principal s’exécute en tant qu’agent par défaut de Claude Code
- Per-session overrides :
--agenta priorité sur cette clé pour une session
settings.json
settings.json d’un plugin peut également fournir cette clé ; voir Ship default settings with your plugin.
crossSessionInbound
Choisissez ce que cette session fait avec les messages provenant de vos autres sessions Claude Code. Quand aucune valeur ne s’applique, Claude Code décide par message à partir des classes de mode de permission des deux sessions. Nécessite Claude Code v2.1.224 ou ultérieur.
- Scope :
Any file. Une valeur de projet ou locale s’applique uniquement quand elle est plus stricte que la valeur des paramètres gérés, du flag--settings, ou des paramètres utilisateur. - Type : string, l’un de :
"accept": Claude Code remet le message à Claude"hold": Claude Code affiche un avis pour le message sans le remettre"refuse": Claude Code supprime le message
- Default : unset, de sorte que Claude Code décide par message
settings.json
--settings, puis les paramètres utilisateur, et applique la première valeur trouvée. refuse est plus strict que hold, et hold est plus strict que accept. Quand aucune des sources de confiance ne définit une valeur, un hold ou refuse de projet ou local s’applique toujours, remplaçant la valeur par défaut par message. Dans les sessions avec messagerie entre sessions, cette clé apparaît dans /config en tant que Messages from your other sessions, qui l’écrit dans les paramètres utilisateur ; la ligne nécessite Claude Code v2.1.232 ou ultérieur, et Claude Code la masque tant que le flag --settings ou les paramètres gérés définissent la clé.
Claude Code avertit quand vous définissez une valeur qu’il ne reconnaît pas. Tant que cette valeur est présente dans un fichier utilisateur, projet, local ou --settings, Claude Code retient les messages entrants, même quand une source qui a la priorité définit accept. Un refuse qu’une autre source définit s’applique toujours. Corrigez ou supprimez la valeur pour effacer la rétention.
Quand la valeur non reconnue se trouve dans les paramètres gérés, Claude Code la traite plutôt comme refuse jusqu’à ce qu’un administrateur la corrige. Avant v2.1.248, Claude Code ignorait une valeur non reconnue sans avertissement.
disableAgentView
Désactivez les agents d’arrière-plan et la vue agent : claude agents, --bg, /background, et le superviseur à la demande. Définissez-le dans les paramètres gérés pour l’appliquer à une organisation.
- Scope :
Any file - Type : Boolean
true: Claude Code désactiveclaude agents,--bg,/background, et le superviseur à la demandefalse: la vue agent est disponible
- Default : unset, de sorte que la vue agent est disponible
- Per-session overrides :
CLAUDE_CODE_DISABLE_AGENT_VIEWdésactive la vue agent pour une session ; quel que soit celui des deux qui la désactive, l’autre ne peut pas la réactiver
settings.json
isolatePeerMachines
Exigez votre approbation explicite avant que SendMessage de Claude n’atteigne l’une de vos sessions au-delà de cette machine ; voir Require approval for cross-machine messages. La demande d’approbation apparaît même en mode bypassPermissions.
- Scope :
Any file. Untruede n’importe quelle portée s’applique, de sorte qu’un fichier de projet enregistré peut activer l’exigence mais pas la désactiver. - Type : Boolean
true: Claude Code vous demande votre approbation avant queSendMessagede Claude n’atteigne l’une de vos sessions au-delà de cette machinefalse: les messages entre machines ne déclenchent pas de demande
- Default : unset, de sorte que les messages entre machines ne déclenchent pas de demande
settings.json
SendMessage entre machines nécessite Claude Code v2.1.224 ou ultérieur.
processWrapper
Sur macOS et Linux, placez une commande de lanceur d’entreprise devant les processus d’arrière-plan que Claude Code démarre. Claude Code exécute le lanceur avec sa propre ligne de commande ajoutée, de sorte que le lanceur doit exec dans Claude Code ; voir Run Claude Code behind a corporate launcher pour le contrat du lanceur. Nécessite Claude Code v2.1.210 ou ultérieur.
- Scope :
User or managed - Type : string, la commande du lanceur en tant que préfixe argv, comme un chemin absolu avec des arguments optionnels
- Default : unset, de sorte que les processus d’arrière-plan démarrent sans wrapper
- Per-session overrides :
CLAUDE_CODE_PROCESS_WRAPPERa priorité sur cette clé pour une session
settings.json
teammateMode
Choisissez où Claude Code affiche les coéquipiers de l’équipe d’agents : à l’intérieur de votre volet terminal principal, ou dans des volets divisés quand votre terminal les prend en charge. Voir Choose a display mode.
- Scope :
Any file. Claude Code lit également une valeur laissée dans~/.claude.jsonpar les versions antérieures. - Type : string, l’un de :
"in-process": les coéquipiers s’exécutent à l’intérieur de votre volet terminal principal"auto": volets divisés quand vous exécutez à l’intérieur de tmux, ou à l’intérieur d’iTerm2 avecit2sur votrePATHou tmux installé ; in-process sinon"tmux": volets divisés utilisant tmux ou iTerm2, détectés à partir de votre terminal"iterm2": volets divisés natifs iTerm2 via le CLIit2
- Default :
"in-process" - Per-session overrides :
--teammate-modea priorité sur cette clé pour une session
settings.json
worktree
Configurez comment Claude Code crée et gère les git worktrees pour --worktree, l’outil EnterWorktree, et les sous-agents isolés et les sessions d’arrière-plan.
- Scope :
Any file - Type : object avec
baseRef,symlinkDirectories,sparsePaths, etbgIsolation - Default : unset
HEAD actuel et crée des liens symboliques vers node_modules dans chacun :
settings.json
.env dans les nouveaux worktrees, ajoutez plutôt un fichier .worktreeinclude à la racine de votre projet.
worktree.baseRef
Choisissez à partir de quel ref les nouveaux worktrees créent des branches. "fresh" crée des branches à partir de origin/<default-branch> pour un arbre propre correspondant au distant ; "head" crée des branches à partir de votre HEAD local actuel, de sorte que les commits non poussés et l’état de la branche de fonctionnalité sont présents dans le worktree.
- Scope :
Any file - Type : string, l’un de :
"fresh": les nouveaux worktrees créent des branches à partir deorigin/<default-branch>"head": les nouveaux worktrees créent des branches à partir de votreHEADlocal actuel, y compris les commits non poussés
- Default :
"fresh"
settings.json
"head" se résout en HEAD de ce worktree, pas celui du checkout principal.
worktree.symlinkDirectories
Créez des liens symboliques vers les répertoires du dépôt principal dans chaque worktree afin de ne pas dupliquer les grands répertoires sur le disque.
- Scope :
Any file - Type : array of strings, chemins de répertoires relatifs à la racine du dépôt
- Default : unset, de sorte que Claude Code ne crée de liens symboliques vers aucun répertoire
node_modules et .cache du dépôt principal dans chaque nouveau worktree :
settings.json
worktree.sparsePaths
Extrayez uniquement les répertoires listés dans chaque worktree via git sparse-checkout. Claude Code écrit uniquement ces répertoires plus les fichiers au niveau racine sur le disque, ce qui est plus rapide dans les grands monorepos ; voir Check out only the directories you need.
- Scope :
Any file - Type : array of strings, chemins de répertoires relatifs à la racine du dépôt
- Default : unset, de sorte que chaque worktree extrait l’arbre entier
packages/my-app et shared/utils, plus les fichiers au niveau racine, dans chaque worktree :
settings.json
extensions.worktreeConfig dans le .git/config partagé du dépôt.
worktree.bgIsolation
Choisissez comment les sessions d’arrière-plan isolent leurs modifications de fichiers. Si vous avez déplacé une session en arrière-plan avec ← ou /background, cette session modifie les fichiers sur place, quelle que soit la valeur de cette clé. Avec "worktree", Claude Code bloque Edit et Write dans le checkout principal jusqu’à ce que la session appelle EnterWorktree ; avec "none", les travaux d’arrière-plan modifient la copie de travail directement. Définissez "none" pour un dépôt où les git worktrees ne sont pas pratiques.
- Scope :
Any file - Type : string, l’un de :
"worktree": Claude Code bloqueEditetWritedans le checkout principal jusqu’à ce que la session appelleEnterWorktree"none": les travaux d’arrière-plan modifient la copie de travail directement
- Default :
"worktree"
settings.json
WorktreeCreate qui échoue lève le blocage de sorte que la session puisse modifier le répertoire de travail sur place ; cette levée nécessite Claude Code v2.1.203 ou ultérieur.
worktree.location
Choisissez le dossier sur une machine distante où les sessions SSH de Desktop créent leurs worktrees, au lieu de <project-root>/.claude/worktrees/. Seule l’application desktop lit cette clé : --worktree, l’outil EnterWorktree, les sous-agents isolés et les sessions d’arrière-plan l’ignorent. Nécessite Claude Desktop v1.44121.0 ou ultérieur.
- Scope :
User, dans~/.claude/settings.jsonsur la machine distante - Type : string, un chemin absolu ou un chemin qui commence par
~/ - Default : unset, de sorte que les worktrees sont créés à l’intérieur du projet
~/worktrees :
settings.json
Contrôle à distance, bureau et notifications
Configurez le contrôle à distance, les environnements cloud, l’application de bureau et les notifications que Claude Code vous envoie quand il a besoin de vous. Voir Contrôle à distance.agentPushNotifEnabled
Permettre à Claude d’envoyer une notification push à votre téléphone quand il décide qu’elle en vaut la peine, par exemple quand une tâche longue se termine. Claude Code synchronise ce choix avec votre compte, et les notifications arrivent pendant que le Contrôle à distance est connecté. Apparaît dans /config sous Envoyer une notification quand Claude le décide.
- Portée :
Tout fichier. Claude Code lit également une valeur laissée dans~/.claude.jsonpar les versions antérieures. - Type : Booléen
true: Claude peut envoyer une notification push à votre téléphone quand il décide qu’elle en vaut la peinefalse: Claude n’envoie pas ces notifications
- Défaut :
false
settings.json
awaySummaryEnabled
Afficher un résumé de session d’une ligne quand vous revenez au terminal après quelques minutes d’absence. Définissez-le sur false, ou désactivez Résumé de session dans /config, pour arrêter le résumé.
- Portée :
Tout fichier - Type : Booléen
true: vous voyez un résumé de session d’une ligne quand vous revenez après quelques minutes d’absencefalse: Claude Code n’affiche aucun résumé
- Défaut : non défini, donc le résumé est activé
- Remplacements par session :
CLAUDE_CODE_ENABLE_AWAY_SUMMARYa la priorité sur cette clé pour une session, dans les deux sens
settings.json
disableArtifact
Utilisez enableArtifact à la place pour désactiver l’outil Artifact, qui publie la sortie de session en tant que page web privée sur claude.ai. Quand vous désactivez la ligne Artifacts dans /config, Claude Code écrit enableArtifact dans vos paramètres utilisateur et efface cette clé.
- Portée :
Tout fichier - Type : Booléen
true: Claude Code désactive l’outil Artifact pour chaque session à laquelle le fichier s’applique, et aucun autre fichier ne le réactivefalse: ignoré ; pour laisser l’outil activé, supprimez la clé
- Défaut : non défini, donc l’outil suit la disponibilité de votre compte
- Remplacements par session :
CLAUDE_CODE_DISABLE_ARTIFACTdéfini sur1désactive l’outil pour une session
settings.json
disableDeepLinkRegistration
Empêcher Claude Code d’enregistrer le gestionnaire de protocole claude-cli:// auprès du système d’exploitation, ce qu’il fait autrement après que vous ayez envoyé la première invite d’une session interactive. Les Liens profonds permettent aux outils externes d’ouvrir une session Claude Code avec une invite préremplie. Définissez ceci dans les environnements où l’enregistrement du gestionnaire de protocole est restreint ou géré séparément.
- Portée :
Tout fichier - Type : la chaîne
"disable" - Défaut : non défini, donc Claude Code enregistre le gestionnaire
settings.json
disableDesktopLocalSessions
Désactiver les sessions Code qui s’exécutent sur l’appareil dans l’application de bureau, pour les déploiements où les développeurs doivent travailler sur des machines distantes via SSH. Dans l’onglet Code, l’environnement Local reste dans la liste déroulante des environnements mais est grisé et ne peut pas être sélectionné, avec une info-bulle indiquant que votre organisation l’a désactivé ; sur Windows, l’entrée WSL est grisée de la même manière, bien que le fait que les sessions WSL s’exécutent sur un appareil géré soit gouverné séparément. Les nouvelles sessions utilisent par défaut la première connexion SSH si une est configurée, et l’application refuse de démarrer ou de reprendre une session sur l’appareil, y compris une connexion SSH vers la même machine. Les sessions SSH vers d’autres hôtes et les sessions cloud ne sont pas affectées. L’application de bureau lit cette clé ; le CLI du terminal l’ignore. Nécessite Claude Desktop v1.37937.0 ou ultérieur.
- Portée :
Géré. Par défaut, l’application de bureau lit la clé depuis une seule source gérée. - Type : Booléen ; seul le Booléen JSON
truea un effettrue: l’application de bureau n’offre aucune session Code sur l’appareil ; les sessions locales existantes restent listées mais ne peuvent pas continuerfalse: les sessions locales restent disponibles
- Défaut : non défini, donc les sessions locales sont disponibles
managed-settings.json
"true" ou 1, enregistre également un avertissement. Associez-le à sshConfigs pour que les utilisateurs accèdent à une connexion fonctionnelle, et à sshHostAllowlist pour limiter les hôtes qu’ils peuvent atteindre. Voir Sessions locales sur les appareils gérés.
Claude Desktop fournit aux sessions Code une politique dérivée de votre configuration de bureau, par exemple la liste d’autorisation de sortie, le bac à sable du système de fichiers et les restrictions MCP dans les déploiements tiers. Claude Code ignore ces paramètres parents chaque fois qu’une source d’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. Déployer cette clé via l’un de ceux-ci sur un appareil qui n’en avait aucun auparavant, comme dans les déploiements tiers, arrête donc l’application des politiques dérivées du bureau. Laisser un hôte d’intégration ajouter une politique couvre le moment où les paramètres parents peuvent toujours fusionner ; cela s’applique à toute clé que vous déployez de cette manière, pas seulement celle-ci.
disableRemoteControl
Désactiver le Contrôle à distance : Claude Code refuse alors claude remote-control, l’indicateur --remote-control, le démarrage automatique et le basculement en session, et signale que la politique de votre organisation l’a désactivé. Placez-le dans les paramètres gérés pour l’application de la politique MDM par appareil.
- Portée :
Tout fichier - Type : Booléen
true: Claude Code refuseclaude remote-control, l’indicateur--remote-control, le démarrage automatique et le basculement en sessionfalse: le Contrôle à distance reste disponible
- Défaut :
false
settings.json
enableArtifact
Désactiver l’outil Artifact, qui publie la sortie de session en tant que page web privée sur claude.ai. Quand vous désactivez la ligne Artifacts dans /config, Claude Code écrit cette clé dans vos paramètres utilisateur, donc vous ne l’éditez généralement pas à la main.
- Portée :
Tout fichier. Chaque fichier peut désactiver l’outil, et aucun ne peut le réactiver. - Type : Booléen
false: Claude Code désactive l’outil Artifact pour chaque session à laquelle le fichier s’appliquetrue: identique à laisser la clé non définie, car elle ne remplace jamais unfalsed’un autre fichier, deCLAUDE_CODE_DISABLE_ARTIFACT, ou du paramètre d’administrateur de votre organisation
- Défaut : non défini, donc l’outil suit la disponibilité de votre compte
settings.json
/config, car l’activer là ne changerait rien. Désactiver les artifacts énumère tous les moyens de désactiver l’outil.
inputNeededNotifEnabled
Recevoir une notification push sur votre téléphone quand une invite de permission ou une question attend votre entrée. Claude Code envoie celles-ci uniquement pendant que le Contrôle à distance est connecté. Apparaît dans /config sous Envoyer une notification quand des actions sont requises.
- Portée :
Tout fichier. Claude Code lit également une valeur laissée dans~/.claude.jsonpar les versions antérieures. - Type : Booléen
true: vous recevez une notification push sur votre téléphone quand une invite de permission ou une question attend, pendant que le Contrôle à distance est connectéfalse: Claude Code n’envoie pas ces notifications
- Défaut :
false
settings.json
preferredNotifChannel
Choisir comment Claude Code vous notifie quand une tâche se termine ou qu’une invite de permission attend. Apparaît dans /config sous Notifications locales.
- Portée :
Tout fichier. Claude Code lit également une valeur laissée dans~/.claude.jsonpar les versions antérieures. - Type : chaîne, l’une des :
"auto": Claude Code envoie une notification de bureau dans iTerm2, Ghostty et Kitty, sonne la cloche dans Terminal.app uniquement quand sa cloche audible est désactivée, et ne fait rien ailleurs"terminal_bell": Claude Code sonne le caractère de cloche dans n’importe quel terminal"iterm2": Claude Code envoie une notification de bureau iTerm2"iterm2_with_bell": Claude Code envoie une notification de bureau iTerm2 et sonne la cloche"kitty": Claude Code envoie une notification de bureau Kitty"ghostty": Claude Code envoie une notification de bureau Ghostty"notifications_disabled": Claude Code n’envoie aucune notification
- Défaut :
"auto"
settings.json
"auto", Claude Code envoie une notification de bureau dans iTerm2, Ghostty et Kitty. Dans Terminal.app, il sonne le caractère de cloche uniquement quand vous avez désactivé la cloche audible du Terminal, et dans les autres terminaux, il ne fait rien. Définissez "terminal_bell" pour sonner le caractère de cloche dans n’importe quel terminal. Voir Obtenir une cloche de terminal ou une notification.
remote.defaultEnvironmentId
Choisir l’environnement cloud par défaut pour les sessions cloud que vous créez à partir de la CLI, comme avec claude --cloud. Claude Code écrit cette clé dans vos paramètres utilisateur quand vous choisissez un environnement avec /remote-env.
- Portée :
Tout fichier. Pour un ID d’environnement auto-hébergé, paramètres utilisateur ou gérés, ou l’indicateur--settingsuniquement. - Type : chaîne, un ID d’environnement tel que
env_...ouccpool_... - Défaut : non défini, donc Claude Code utilise l’environnement hébergé par Anthropic quand votre liste en a un, et sinon le premier environnement de votre liste qui n’est pas un environnement de pont de Contrôle à distance, ou le premier environnement quand chacun est un environnement de pont
- Remplacements par session :
--environmenta la priorité sur cette clé pour la session cloud unique qu’il crée
settings.json
env_, suit la priorité des paramètres standard, donc une valeur dans les paramètres de projet d’un référentiel remplace votre choix au niveau utilisateur. Un ID d’environnement auto-hébergé, qui commence par ccpool_, n’est honoré que depuis les paramètres utilisateur, les paramètres gérés et l’indicateur --settings ; Claude Code l’ignore dans les paramètres de projet ou locaux d’un référentiel, et /remote-env affiche quelle valeur il a ignorée, donc un fichier archivé ne peut pas diriger les sessions vers un environnement auto-hébergé que vous n’avez pas choisi.
remoteControlAtStartup
Connecter le Contrôle à distance automatiquement quand chaque session interactive démarre, au lieu d’attendre /remote-control. Définissez-le sur true pour activer la connexion automatique, false pour la désactiver. Apparaît dans /config sous Activer le Contrôle à distance pour toutes les sessions.
- Portée :
Tout fichier. Claude Code lit également une valeur laissée dans~/.claude.jsonpar les versions antérieures. - Type : Booléen
true: Claude Code connecte le Contrôle à distance automatiquement quand chaque session interactive démarrefalse: Claude Code attend/remote-control
- Défaut : non défini, donc la connexion automatique par défaut s’applique
- Remplacements par session :
--remote-controlactive le Contrôle à distance pour une session même quand cette clé estfalse, et aucun indicateur ne le désactive pour une session
settings.json
true des paramètres de projet ou locaux, donc un référentiel peut désactiver la connexion automatique pour son extraction mais ne peut pas l’activer. Pour le comportement complet par portée, voir Activer le Contrôle à distance pour toutes les sessions et les clés de sécurité où la valeur plus stricte s’applique.
sshConfigs
Ajouter des connexions SSH à la liste déroulante de l’environnement Bureau. Les administrateurs l’utilisent pour distribuer les connexions partagées à une équipe. Les connexions que vous définissez dans les paramètres gérés s’affichent comme gérées. Les utilisateurs peuvent les sélectionner et définir leur propre Dossier du worktree pour elles, mais ne peuvent rien modifier d’autre ni les supprimer dans l’application.
- Portée :
Utilisateur ou géré. L’application de bureau lit cette clé. Par défaut, elle lit les connexions gérées depuis une seule source gérée. - Type : tableau d’objets, chacun avec
id,nameetsshHostrequis etsshPortetsshIdentityFileoptionnels - Défaut : non défini
Dev VM qui se connecte à user@dev.example.com :
settings.json
sshHostAllowlist
Limiter les hôtes auxquels une session SSH de Bureau peut se connecter. Seule l’application de Bureau lit cette clé ; la CLI ne le fait pas. Les modèles ne sont pas sensibles à la casse : * correspond à n’importe quel hôte, *.example.com correspond à example.com et à chaque sous-domaine, et tout le reste est une correspondance exacte avec le nom d’hôte après la résolution de ~/.ssh/config. Un tableau vide désactive les sessions SSH.
- Portée :
Géré. Par défaut, Bureau lit la clé depuis une seule source gérée. - Type : tableau de modèles de nom d’hôte
- Défaut : non défini, donc n’importe quel hôte est autorisé
devboxes.example.com et ses sous-domaines, plus l’hôte exact bastion.example.com :
managed-settings.json
true ou un objet, compte comme un tableau vide jusqu’à ce que vous la corrigiez, sauf null, qui compte comme non défini. Nécessite Claude Desktop v2.26454.0 ou ultérieur.
Si vous définissez managedSourcesBehavior sur "merge" dans votre source de rang le plus élevé, Bureau combine les listes de chaque source d’administration et autorise un hôte qui correspond à l’une d’entre elles. Si vous définissez un tableau vide dans une source, les sessions SSH restent activées pour les hôtes qu’une autre source liste.
Authentification et fournisseurs
Fournissez les identifiants via des scripts d’aide et, pour les organisations, forcez une méthode de connexion ou une organisation. Voir Authentification.allowedProviders
Listez les services par lesquels une machine peut accéder à Claude, tels que l’API Anthropic, Amazon Bedrock ou une passerelle LLM. Une session sur un fournisseur qui n’est pas listé est refusée au démarrage, à la connexion et lorsqu’elle contacte ensuite l’API, donc le passage à un fournisseur non listé en cours de session est également refusé. Le message de refus indique ce qui a sélectionné le fournisseur et les étapes à suivre. Nécessite Claude Code v2.1.285 ou ultérieur.
- Portée :
Managed. Une liste que les sources d’administrateur de la machine définissent, les politiques MDM et les fichiers de paramètres gérés continuent d’appliquer lorsque les paramètres gérés par le serveur en fournissent également une : une session ne peut alors utiliser que les fournisseurs sur les deux listes, donc une liste gérée par le serveur peut réduire ce que la machine autorise mais jamais l’élargir. La source de machine dontallowedProviderscompte suit comment Claude Code combine les sources gérées. Une liste fournie uniquement par les paramètres gérés par le serveur n’atteint que les sessions qui récupèrent les paramètres gérés par le serveur. - Type : tableau de chaînes, chacune étant :
"anthropic": l’API Anthropic sur le propre serveur d’Anthropic, via une connexion claude.ai ou Console ou une clé API. Associez-la àforceLoginMethodouforceLoginOrgUUIDpour restreindre également la connexion"bedrock": Amazon Bedrock"vertex": Agent Platform de Google Cloud, anciennement Vertex AI"foundry": Microsoft Foundry"anthropicAws": Claude Platform sur AWS"mantle": l’endpoint Mantle d’Amazon Bedrock. Une session qui exécute Mantle aux côtés de l’API Invoke utilise les deux fournisseurs, donc listez"bedrock"et"mantle"ensemble pour cela"customEndpoint": l’API Anthropic ou l’API d’un fournisseur cloud envoyée à un autre serveur, tel qu’une passerelle LLM nommée parANTHROPIC_BASE_URLou par une variable d’endpoint du fournisseur telle queANTHROPIC_BEDROCK_BASE_URL. Claude Code l’admet uniquement pour la valeur exacte qu’un blocenvgéré épingle"gateway": une connexion passerelle Cloud
- Défaut : non défini, donc n’importe quel fournisseur peut être utilisé
managed-settings.json
Endpoints qui nécessitent une épingle dans env géré
Une épingle est la valeur d’une variable d’endpoint définie dans un bloc env géré. Lorsqu’une session envoie le trafic d’un fournisseur ailleurs que vers le propre service de ce fournisseur, Claude Code l’admet uniquement si la valeur de la session est la même que l’épingle. Ces endpoints en ont besoin :
- Sessions
"customEndpoint": la variable qui nomme l’hôte, telle queANTHROPIC_BASE_URL - Amazon Bedrock : les variables
AWS_ENDPOINT_URL,AWS_ENDPOINT_URL_BEDROCKetAWS_ENDPOINT_URL_BEDROCK_RUNTIMEdu SDK AWS lorsqu’elles pointent en dehors du propre service de Bedrock. La session reste sous"bedrock"plutôt que sous"customEndpoint" - L’URL de connexion d’une passerelle : la session reste sous
"gateway", etforceLoginGatewayUrlcompte également comme l’épingle
env qui comptent comme des épingles dépendent de l’endroit où la liste est définie :
- Une source d’administrateur sur la machine définit une liste : seuls les blocs
envdes sources d’administrateur de la machine comptent - Seuls les paramètres gérés par le serveur définissent une liste : une valeur
envdans ces paramètres gérés par le serveur compte également
HTTPS_PROXY et les paramètres de certificat. Définissez-les pour la flotte dans le bloc env géré.
apiKeyHelper
Exécutez votre propre commande pour produire l’identifiant que Claude Code envoie avec les requêtes de modèle. Claude Code exécute la commande via le shell système, /bin/sh sur macOS et Linux et cmd sur Windows, et envoie sa sortie comme en-têtes X-Api-Key et Authorization: Bearer. Utilisez-la pour les identifiants dynamiques ou rotatifs, tels que les jetons de courte durée récupérés d’un coffre.
- Portée :
Any file - Type : chaîne, une ligne de commande shell
- Défaut : non défini, donc Claude Code n’exécute pas d’aide
settings.json
- Après la durée de vie du cache, cinq minutes par défaut ou l’intervalle que vous définissez avec
CLAUDE_CODE_API_KEY_HELPER_TTL_MS. - Lorsqu’une requête à l’API Anthropic, directement ou via une passerelle LLM, échoue avec
401ou403. - Avant d’envoyer une requête à l’API Anthropic, directement ou via une passerelle LLM, lorsque la sortie mise en cache est un JWT qui a expiré après que l’aide l’a produit. Nécessite Claude Code v2.1.246 ou ultérieur.
ANTHROPIC_AUTH_TOKEN n’est pas défini.
Dans les sessions interactives, lorsque la commande provient des paramètres de projet ou locaux, Claude Code ne l’exécute pas jusqu’à ce que vous acceptiez l’invite de confiance de l’espace de travail. Voir Gestion des identifiants.
awsAuthRefresh
Exécutez votre propre commande, telle que aws sso login, pour actualiser les identifiants dans votre répertoire .aws lorsque ceux que Claude Code a pour Amazon Bedrock cessent de fonctionner. Claude Code vérifie d’abord les identifiants actuels par rapport à STS et n’exécute la commande que lorsque cette vérification échoue, puis lit le répertoire .aws actualisé.
Lorsque la vérification échoue au même moment dans plusieurs processus Claude Code qui utilisent la même commande et les mêmes identifiants, tels que des terminaux ou des fenêtres d’IDE distincts, un seul processus exécute la commande et les autres attendent cette exécution au lieu de lancer la leur. Un processus qui a attendu 60 secondes avec une requête en attente exécute lui-même la commande. Pour désactiver ce comportement, définissez CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK sur 1.
- Portée :
Any file - Type : chaîne, une ligne de commande shell
- Défaut : non défini, donc Claude Code n’actualise pas les identifiants AWS pour vous
settings.json
.aws ; utilisez awsCredentialExport lorsqu’il imprime plutôt les identifiants. Voir configuration avancée des identifiants.
awsCredentialExport
Exécutez votre propre commande qui imprime les identifiants AWS en JSON, afin que Claude Code puisse appeler Amazon Bedrock avec des identifiants qui ne vivent pas dans votre répertoire .aws. Claude Code accepte la forme de sortie aws sts et la forme plate aws configure export-credentials, et limite les identifiants à son propre client Bedrock, donc les commandes shell que Claude exécute voient toujours vos identifiants ambiants.
- Portée :
Any file - Type : chaîne, une ligne de commande shell
- Défaut : non défini, donc Claude Code utilise la chaîne d’identifiants AWS ambiante
settings.json
awsAuthRefresh, Claude Code exécute toujours cette commande lorsqu’elle est définie, sans vérifier d’abord les identifiants ambiants. Voir configuration avancée des identifiants.
forceLoginMethod
Restreignez le type de compte avec lequel les gens peuvent se connecter. Définissez "claudeai" pour autoriser uniquement les comptes claude.ai, "console" pour autoriser uniquement les comptes Claude Console, ou "gateway" pour envoyer les gens vers une passerelle cloud au lieu d’une connexion propriétaire. Les administrateurs la définissent dans les paramètres gérés et l’associent à forceLoginOrgUUID pour garder les connexions claude.ai des développeurs à l’intérieur d’une organisation. Si vous la définissez à "claudeai" ou "console" dans n’importe quel fichier de paramètres, Claude Code arrête également d’offrir la connexion Console sans clé dans les sessions auxquelles ce fichier s’applique.
- Portée :
Any file. Claude Code honore"gateway"à partir des mêmes sources queforceLoginGatewayUrlet le traite comme non défini partout ailleurs. - Type : chaîne, l’une de :
"claudeai": seuls les comptes claude.ai peuvent se connecter"console": seuls les comptes Claude Console peuvent se connecter"gateway": Claude Code envoie les gens vers une passerelle cloud au lieu d’une connexion propriétaire
- Défaut : non défini, donc les gens choisissent une méthode de connexion
settings.json
claude setup-token et /install-github-app, sauf l’écran de connexion interactif du terminal, accessible par /login ou l’intégration au premier lancement, qui présélectionne la méthode sans l’appliquer. Avant v2.1.212, seules les connexions au terminal l’appliquaient. Voir Restreindre la connexion à votre organisation pour savoir comment chaque chemin de connexion, les identifiants d’environnement et les fournisseurs tiers sont traités.
Lorsqu’une source gérée sur la machine définit "gateway", Claude Code n’utilise pas une connexion restante, une clé API ou un identifiant d’aide apiKeyHelper. Voir La politique de l’administrateur nécessite une connexion à la passerelle Cloud pour le message que chacun produit. Si vous sélectionnez un fournisseur cloud via CLAUDE_CODE_USE_BEDROCK ou une variable d’environnement similaire, la session n’a pas besoin de la connexion à la passerelle. Avant v2.1.261, Claude Code utilisait une connexion restante sur ces machines.
forceLoginGatewayUrl
Définissez l’URL de la passerelle à laquelle l’écran /login Cloud gateway se connecte, afin que les gens atteignent votre passerelle cloud sans taper son adresse. L’écran n’a pas de champ URL : avec cette clé définie, il affiche l’URL de votre passerelle et se connecte lorsque la personne appuie sur Entrée ; sans elle, il leur dit de contacter leur administrateur IT.
Dans les paramètres gérés, cette clé ou forceLoginMethod: "gateway" rend la machine réservée à la passerelle, sauf pour les sessions qui sélectionnent un fournisseur cloud avec CLAUDE_CODE_USE_*. /login s’ouvre alors sur l’écran Cloud gateway sans sélecteur de méthode de connexion. Voir La politique de l’administrateur nécessite une connexion à la passerelle Cloud pour ce qui se passe avec une connexion propriétaire restante ou une clé API. Définissez les deux clés afin que l’écran se connecte au lieu d’afficher une erreur.
- Portée :
User or managed. Lu à partir d’une source gérée sur la machine :managed-settings.json, le plist macOS ou le registre HKLM Windows, ou un aide de politique. Sur une machine qui n’en possède aucune, Claude Code v2.1.295 ou ultérieur le lit également à partir des paramètres utilisateur. Claude Code l’ignore dans les paramètres HKCU et gérés par le serveur. - Type : chaîne, une URL complète incluant le schéma
- Défaut : non défini, donc l’écran Cloud gateway affiche une erreur indiquant aux gens de contacter leur administrateur IT
managed-settings.json
forceLoginOrgUUID
À partir d’une source gérée, exigez que les connexions de compte claude.ai appartiennent à une organisation Anthropic, donnée comme un UUID unique, ou à l’une de plusieurs organisations, donnée comme un tableau. À partir de n’importe quel fichier de paramètres, Claude Code utilise également un UUID unique pour présélectionner cette organisation lors d’une connexion claude.ai ou Claude Console, et ne présélectionne rien pour un tableau. Si vous définissez la clé dans n’importe quel fichier de paramètres, Claude Code arrête également d’offrir la connexion Console sans clé dans les sessions auxquelles ce fichier s’applique et crée plutôt une clé API.
- Portée :
Any file. Seule une source gérée applique la restriction ; un UUID unique dans n’importe quel autre fichier de paramètres présélectionne l’organisation lors de la connexion sans la restreindre. - Type : chaîne, un UUID, ou tableau de chaînes, plusieurs UUID
- Défaut : non défini, donc n’importe quelle organisation peut se connecter
managed-settings.json
forceLoginOrgUUID et leur indique de contacter leur administrateur. Un policyHelper qui émet une valeur du mauvais type voit plutôt son exécution échouer.
Voir Restreindre la connexion à votre organisation pour savoir comment Claude Code traite les connexions Claude Console, les autres chemins de connexion et les identifiants d’environnement.
gatewayInternalNetworks
Déclarez les blocs IPv4 publics à partir desquels votre organisation numérote son réseau interne, afin que /login accepte une passerelle cloud là-bas. Nécessite Claude Code v2.1.268 ou ultérieur.
Sans cette clé, /login se connecte à n’importe quelle passerelle sur une adresse privée et rien d’autre. Avec elle, /login accepte également une passerelle à l’intérieur d’un bloc listé, sur une connexion directe uniquement. L’adresse propre de la machine sur cette connexion doit également être à l’intérieur du même bloc.
- Portée :
Managed. Lu uniquement à partir d’une source sur la machine :managed-settings.json, le plist macOS ou le registre HKLM Windows, ou un aide de politique. Claude Code l’ignore dans les paramètres HKCU et gérés par le serveur. - Type : tableau de chaînes, au maximum quatre blocs IPv4 CIDR, chacun
/8à/32, ne se chevauchant pas les uns les autres, et aucun ne chevauchant l’espace privé. - Défaut : non défini, donc
/loginaccepte uniquement les passerelles sur des adresses privées
managed-settings.json
/login nomme le problème et refuse chaque nouvelle connexion à la passerelle sur la machine jusqu’à ce que vous corrigiez la valeur. Les connexions existantes continuent de fonctionner. Voir Autoriser une passerelle sur l’espace d’adresses publiques que vous possédez pour les règles complètes et ce que les développeurs voient.
gcpAuthRefresh
Exécutez votre propre commande pour actualiser les identifiants Google Cloud Application Default lorsque Claude Code découvre qu’ils ont expiré ou ne peuvent pas être chargés, afin que les requêtes Agent Platform de Google Cloud continuent de fonctionner sans que vous vous réauthentifiiez à la main.
Lorsque plusieurs processus Claude Code qui utilisent la même commande et les mêmes identifiants, tels que des terminaux ou des fenêtres d’IDE distincts, constatent au même moment que ceux-ci ont expiré, un seul processus exécute la commande et les autres attendent cette exécution au lieu de lancer la leur. Un processus qui a attendu 60 secondes avec une requête en attente exécute lui-même la commande. Pour désactiver ce comportement, définissez CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK sur 1.
- Portée :
Any file - Type : chaîne, une ligne de commande shell
- Défaut : non défini, donc l’erreur d’identifiant de Claude Code vous dit d’exécuter
gcloud auth application-default loginvous-même
settings.json
otelHeadersHelper
Exécutez votre propre commande pour générer les en-têtes que Claude Code envoie avec les exportations OpenTelemetry, pour les backends dont les jetons tournent. Claude Code l’exécute au démarrage et périodiquement après cela, et s’attend à un objet JSON de valeurs d’en-têtes de chaîne sur stdout.
- Portée :
Any file - Type : chaîne, un chemin exécutable ou une ligne de commande shell
- Défaut : non défini, donc Claude Code n’ajoute pas d’en-têtes générés par l’aide
settings.json
CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS. Voir En-têtes dynamiques pour les exigences du script et ce qui se passe lorsque l’aide échoue.
Mises à jour et versioning
Choisissez un canal de mise à jour et, pour les organisations, épinglez les versions que les utilisateurs peuvent exécuter. Voir Mettre à jour Claude Code.autoUpdatesChannel
Choisissez quel canal de version les mises à jour automatiques en arrière-plan et claude update suivent. Définissez "stable" pour une version qui a généralement environ une semaine et ignore les versions avec des régressions majeures, ou "latest" pour la version la plus récente.
- Portée :
Any file. Définissez-le dans les paramètres gérés pour appliquer un canal dans toute votre organisation. - Type : string, l’un des :
"latest": les mises à jour suivent la version la plus récente"stable": les mises à jour suivent une version qui a généralement environ une semaine et ignore les versions avec des régressions majeures
- Défaut : non défini, donc Claude Code suit
"latest"
settings.json
"stable" dans vos paramètres utilisateur lorsque vous le choisissez sous Auto-update channel dans /config, et supprime la clé lorsque vous revenez à latest. claude install stable et claude install latest enregistrent également le canal que vous nommez. Le passage de "latest" à "stable" dans /config demande si vous autorisez une rétrogradation ou si vous restez sur votre version actuelle ; rester définit minimumVersion. Les installations Homebrew ignorent cette clé : le cask claude-code suit stable et claude-code@latest suit latest, et claude update s’en remet à brew upgrade. Pour désactiver complètement les mises à jour automatiques, définissez DISABLE_AUTOUPDATER dans env.
minimumVersion
Empêchez les mises à jour automatiques en arrière-plan et claude update d’installer une version inférieure à celle-ci, de sorte que le passage au canal "stable" ne vous rétrograde pas à partir d’une version "latest" plus récente. Claude Code écrit cette clé pour vous lorsque vous choisissez de rester sur votre version actuelle lors du changement de canal dans /config, et la supprime lorsque vous revenez à "latest".
- Portée :
Any file. Définissez-le dans les paramètres gérés pour épingler un minimum à l’échelle de l’organisation que les paramètres utilisateur et projet ne peuvent pas réduire. - Type : string, un numéro de version tel que
"2.1.100"; une valeur qui n’est pas une version valide est ignorée - Défaut : non défini, donc les mises à jour peuvent installer n’importe quelle version que le canal propose
settings.json
requiredMinimumVersion à la place. Voir Épingler une version minimale.
requiredMaximumVersion
Définissez la version la plus récente de Claude Code que votre organisation autorise à démarrer. Lorsque la version en cours d’exécution est plus récente, Claude Code se ferme au démarrage et indique à l’utilisateur d’installer une version approuvée par la méthode approuvée de votre organisation ; claude install <version> peut également fonctionner. Nécessite Claude Code v2.1.163 ou version ultérieure.
- Portée :
Managed. Claude Code ne donne aucun avertissement lorsqu’il ignore la clé ailleurs. - Type : string, un numéro de version tel que
"2.1.150"; une valeur qui n’est pas une version valide est ignorée - Défaut : non défini, donc aucun plafond ne s’applique
managed-settings.json
claude update ignorent les versions au-dessus du plafond, de sorte qu’une installation dans la plage reste à l’intérieur. claude update, claude install et claude doctor continuent de fonctionner au-dessus du plafond pour que les utilisateurs puissent récupérer. Associez-le à requiredMinimumVersion pour appliquer une plage.
requiredMinimumVersion
Définissez la version la plus ancienne de Claude Code que votre organisation autorise à démarrer. Lorsque la version en cours d’exécution est plus ancienne, Claude Code se ferme au démarrage et indique à l’utilisateur de mettre à jour par la méthode approuvée de votre organisation. La vérification s’exécute uniquement au démarrage, de sorte qu’une session déjà en cours d’exécution continue. Nécessite Claude Code v2.1.163 ou version ultérieure.
- Portée :
Managed. Claude Code ne donne aucun avertissement lorsqu’il ignore la clé ailleurs. - Type : string, un numéro de version tel que
"2.1.150"; une valeur qui n’est pas une version valide est ignorée - Défaut : non défini, donc aucun plancher ne s’applique
managed-settings.json
claude update, claude install et claude doctor continuent de fonctionner en dessous du plancher pour que les utilisateurs puissent récupérer. Contrairement à minimumVersion, qui empêche uniquement les rétrograder, cette clé bloque le démarrage. Associez-le à requiredMaximumVersion pour appliquer une plage.
Outils
Désactivez des outils spécifiques dans l’application de bureau Claude Code. L’interface de ligne de commande du terminal ignore ces clés. Pour les outils eux-mêmes, consultez Outils disponibles pour Claude.browserExternalPageTools
Empêchez Claude d’utiliser ses outils pour lire ou agir sur des pages externes dans le volet Navigateur de l’application de bureau. Les personnes de votre organisation peuvent toujours ouvrir des sites externes eux-mêmes, et les aperçus des serveurs de développement locaux continuent de fonctionner avec les outils de Claude. L’application de bureau lit cette clé ; l’interface de ligne de commande du terminal l’ignore.
- Portée :
Managed - Type : chaîne de caractères,
"disabled"; l’application de bureau accepte également"disable", dans les deux cas - Valeur par défaut : non définie, donc les outils de Claude fonctionnent sur les pages externes
managed-settings.json
disableBrowserExternalNavigation à la place. Consultez Restreindre la navigation externe pour votre organisation.
disableBrowserExternalNavigation
Désactivez la navigation externe dans le volet Navigateur de l’application de bureau pour les personnes et Claude. Les aperçus des serveurs de développement localhost continuent de fonctionner. L’application de bureau lit cette clé ; l’interface de ligne de commande du terminal l’ignore.
- Portée :
Managed - Type : Booléen ; seul le Booléen JSON
trueprend effettrue: l’application de bureau désactive la navigation externe dans le volet Navigateur pour les personnes et Claude ; les aperçus localhost continuent de fonctionnerfalse: la navigation externe reste activée
- Valeur par défaut : non définie, donc la navigation externe est activée
managed-settings.json
"true" ou 1, enregistre également un avertissement. Pour laisser la navigation externe activée mais garder les outils de Claude désactivés sur les pages externes, définissez browserExternalPageTools à la place. Consultez Restreindre la navigation externe pour votre organisation.
disableMobileSimulatorTools
Bloquez les outils de Claude pour le volet Simulateur iOS de l’application de bureau. Les personnes conservent l’utilisation manuelle du volet ; seul l’accès de Claude est supprimé, et personne ne peut le réactiver depuis l’intérieur de l’application. L’application de bureau lit cette clé ; l’interface de ligne de commande du terminal l’ignore.
- Portée :
Managed - Type : Booléen ; seul le Booléen JSON
trueprend effettrue: l’application de bureau bloque les outils de Claude pour le volet Simulateur iOSfalse: les outils de simulateur de Claude suivent le paramètre de basculement des paramètres de chaque personne dans l’application de bureau
- Valeur par défaut : non définie, donc les outils de simulateur de Claude suivent le paramètre de basculement des paramètres de chaque personne dans l’application de bureau
managed-settings.json
"true" ou 1, enregistre également un avertissement.
Confidentialité et télémétrie
Contrôlez la durée pendant laquelle Claude Code conserve les données de session et ce qu’il envoie. Les commutateurs qui désactivent les métriques d’utilisation et les rapports d’erreurs sont des variables d’environnement, pas des clés de paramètres : définissezDISABLE_TELEMETRY, DISABLE_ERROR_REPORTING, ou CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC dans la clé env ou dans le shell. Les services de télémétrie indiquent ce que chacun arrête. Deux exceptions se désactivent à partir d’un fichier de paramètres : feedbackDrafts ci-dessous pour les commentaires rédigés par Claude, et feedbackSurveyRate ci-dessous pour l’enquête de session.
cleanupPeriodDays
Définissez le nombre de jours pendant lesquels Claude Code conserve les transcriptions de session et autres données d’application avant de les supprimer. Claude Code exécute la suppression en tant que balayage en arrière-plan après le démarrage d’une session, tant qu’il peut déterminer en toute sécurité la période de rétention. Le balayage supprime les transcriptions sans afficher de message, donc une session que vous n’avez pas utilisée plus longtemps que la période de rétention n’apparaît plus dans le sélecteur /resume.
- Portée :
Any file - Type : nombre de jours, un nombre entier, minimum
1 - Valeur par défaut :
30
settings.json
0 échoue la validation, donc choisissez une grande valeur comme 3650 pour une rétention longue. Pour empêcher Claude Code d’écrire des transcriptions du tout, consultez Stockage en texte brut.
desktopSessionCleanupPeriodDays
Définissez une limite d’âge en jours pour les transcriptions des sessions que vous avez démarrées ou continuées le plus récemment dans Claude Desktop ou Cowork. Sans cette clé, Claude Code conserve ces transcriptions à tout âge. Claude Code supprime chacune une fois qu’elle est plus ancienne que cette limite et cleanupPeriodDays, donc avec cleanupPeriodDays à sa valeur par défaut de 30, une valeur de 7 les conserve toujours 30 jours. Nettoyage automatique répertorie les cas où cleanupPeriodDays s’applique à la place et où Claude Code ignore cette clé. Nécessite Claude Code v2.1.248 ou version ultérieure.
- Portée :
User or managed. Claude Code lit également la clé à partir d’un fichier que vous transmettez avec--settings, et l’ignore dans les paramètres de projet et locaux. - Type : nombre de jours, un nombre entier, minimum
0 - Valeur par défaut :
0, qui ne définit aucune limite d’âge
settings.json
feedbackDrafts
Contrôlez les commentaires rédigés par Claude : si Claude peut mettre en file d’attente les brouillons de commentaires pour que vous les examiniez, et si Claude Code affiche une carte lorsque Claude en met une en file d’attente.
- Portée :
User or managed - Type : chaîne, l’une de
"notify","quiet", ou"off""notify": Claude Code affiche une carte au-dessus de l’invite lorsque Claude met un brouillon en file d’attente, jusqu’à trois cartes dans une session par défaut"quiet": Claude rédige sans carte. Vous voyez le nombre de brouillons en file d’attente dans le pied de page de l’invite et les examinez dans/feedback"off": Claude Code supprime l’outil SendFeedback, donc Claude ne peut pas mettre en file d’attente les brouillons
- Valeur par défaut :
"notify" - Remplacements par session :
CLAUDE_CODE_SEND_FEEDBACKdéfini à0désactive la fonctionnalité pour une session
settings.json
/config sous Claude-drafted feedback, qui écrit cette clé dans vos paramètres utilisateur. Vous voyez la ligne /config uniquement dans les sessions où Claude peut rédiger des commentaires ; la définition de "off" ne la masque pas, vous pouvez donc réactiver la fonctionnalité à partir de la même ligne. Une valeur dans les paramètres gérés prend précédence sur votre paramètre utilisateur, donc lorsqu’un administrateur définit cette clé, la ligne affiche la valeur gérée et la modifier n’a aucun effet. Claude Code ignore cette clé dans les paramètres de projet et locaux.
feedbackSurveyRate
Définissez la probabilité que l’enquête de qualité de session apparaisse lorsqu’une session est admissible. Définissez 0 pour empêcher l’enquête d’apparaître.
- Portée :
Any file - Type : nombre entre
0et1 - Valeur par défaut : non défini, donc Claude Code utilise le taux qu’Anthropic définit à distance, ou son taux intégré de
0.005sur Amazon Bedrock, Google Cloud’s Agent Platform, et Microsoft Foundry, qui ne reçoivent pas de configuration à distance - Remplacements par session :
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEYdéfini à1désactive l’enquête pour une session quel que soit le taux que cette clé définit
settings.json
skipWebFetchPreflight
Ignorez la vérification de sécurité du domaine WebFetch, qui envoie chaque nom d’hôte demandé à api.anthropic.com avant la récupération. Définissez true dans les environnements qui bloquent le trafic vers Anthropic, comme Amazon Bedrock, Google Cloud’s Agent Platform, ou les déploiements Microsoft Foundry avec une sortie restrictive.
- Portée :
Any file - Type : Booléen
true: Claude Code ignore la vérification de sécurité du domaine WebFetchfalse: la vérification s’exécute avant la première récupération à chaque nom d’hôte dans une session, et à nouveau pour un nom d’hôte dont la vérification antérieure a été bloquée ou a échoué
- Valeur par défaut : non défini, donc la vérification s’exécute avant la première récupération à chaque nom d’hôte dans une session
settings.json
WebFetch si vous devez restreindre les domaines que Claude peut atteindre.
Paramètres d’entreprise et gérés
Clés qu’une organisation utilise pour calculer, actualiser et combiner les paramètres gérés. Voir Configurer les paramètres gérés.disableSideloadFlags
Rejeter les drapeaux CLI --plugin-dir, --plugin-url, --agents et --mcp-config au démarrage, que les utilisateurs pourraient autrement transmettre pour contourner strictKnownMarketplaces pour une seule exécution. Claude Code se ferme avec une erreur nommant les drapeaux rejetés. Dans les sessions cloud, Claude Code démarre plutôt la session et supprime chaque entrée --mcp-config livrée par le serveur sauf les entrées type: "sdk" en processus et les outils Slack d’une session Claude Tag. Nécessite Claude Code v2.1.193 ou ultérieur.
- Portée :
Managed - Type : Booléen
true: Claude Code rejette--plugin-dir,--plugin-url,--agentset--mcp-configau démarrage et se ferme avec une erreur les nommant. Dans les sessions cloud, il démarre plutôt la session et supprime chaque entrée--mcp-configlivrée par le serveur sauf les entréestype: "sdk"en processus et les outils Slack d’une session Claude Tagfalse: Claude Code accepte ces drapeaux
- Défaut :
false
managed-settings.json
--mcp-config dont les serveurs sont tous des entrées type: "sdk" en processus, de sorte que le SDK Agent et l’extension VS Code continuent de fonctionner. Les utilisateurs peuvent toujours ajouter des serveurs avec claude mcp add ou un fichier .mcp.json ; pour un contrôle par serveur, définissez également allowedMcpServers. Nécessite Claude Code v2.1.193 ou ultérieur.
La même vérification couvre les dossiers de plugins nommés dans la variable d’environnement CLAUDE_CODE_PLUGIN_DIRS, ce qui nécessite Claude Code v2.1.280 ou ultérieur. Lorsque la variable nomme un dossier, Claude Code se ferme avec la même erreur, et l’erreur dit de supprimer la variable.
Dans les sessions cloud, Claude Code ignore également les mises à jour MCP livrées en milieu de session, le chemin derrière la configuration de session cloud et les appels SDK setMcpServers() qui atteignent ces sessions. Les entrées type: "sdk" en processus et les outils Slack d’une session Claude Tag restent exemptes là aussi. Avant v2.1.268, cette suppression au démarrage et la suppression au démarrage supprimaient également les outils Slack d’une session Claude Tag. Avant v2.1.239, un --mcp-config livré par le serveur bloquait le démarrage d’une session cloud.
L’application de bureau gère certains plugins elle-même, y compris les plugins synchronisés à partir de claude.ai et les plugins que votre organisation déploie via l’application. Si vous déployez cette clé sur un appareil via MDM, une politique au niveau du système d’exploitation ou un fichier de paramètres gérés, l’application de bureau ne transmet pas ces plugins aux sessions suivantes sur cet appareil :
- Sessions de code sur la machine de l’utilisateur : elles démarrent également sans les compétences activées pour le compte claude.ai de l’utilisateur. Les plugins que Claude Code installe à partir des places de marché dans vos paramètres gérés se chargent toujours. Dans Claude Desktop sur 3P, les serveurs MCP des plugins que vous déployez dans le répertoire
org-pluginsde l’appareil restent disponibles aussi, car l’application de bureau s’y connecte elle-même. Avant Claude Desktop v1.37937.0, ces sessions échouaient au démarrage à la place. - Sessions Cowork sur la machine de l’utilisateur : les compétences à l’intérieur de ces plugins et les compétences activées pour le compte claude.ai de l’utilisateur restent disponibles. Dans Claude Desktop sur 3P, les serveurs MCP des plugins que vous déployez dans le répertoire
org-pluginsde l’appareil restent disponibles aussi, car l’application de bureau s’y connecte elle-même. Avant Claude Desktop v1.44121.0, ces sessions échouaient au démarrage à la place.
forceRemoteSettingsRefresh
Bloquer le démarrage du CLI jusqu’à ce que Claude Code ait récemment récupéré les paramètres gérés par le serveur. Si la récupération échoue, Claude Code se ferme au lieu de continuer avec les paramètres en cache ou aucun paramètre. Définissez-le lorsque votre environnement ne peut pas accepter même une brève fenêtre dans laquelle une session s’exécute sans sa politique gérée.
Lorsque la clé n’est pas définie, Claude Code ne bloque pas le démarrage sur la récupération, bien que lorsque le développeur se connecte au démarrage, il attend jusqu’à cinq secondes pour la récupération. Une session de passerelle Cloud attend toujours et se ferme si la passerelle ne peut pas être atteinte.
- Portée :
Managed. Claude Code honore untruede n’importe quelle source gérée contrôlée par l’administrateur, même une qui n’est pas la source de plus haute priorité. - Type : Booléen
true: Claude Code bloque le démarrage jusqu’à ce qu’il ait récemment récupéré les paramètres gérés par le serveur, et se ferme si la récupération échouefalse: Claude Code ne bloque pas le démarrage sur la récupération, bien qu’au démarrage d’une connexion il attende jusqu’à cinq secondes pour la récupération
- Défaut :
false
managed-settings.json
claude auth sont exemptes, de sorte que les utilisateurs peuvent se réauthentifier lorsque les identifiants expirés sont la raison de l’échec de la récupération. Voir Appliquer un démarrage fermé en cas d’échec.
managedSourcesBehavior
Choisissez si Claude Code applique uniquement la source gérée de plus haute priorité que votre organisation livre, ou combine chaque source d’administrateur qu’elle livre. Par défaut, Claude Code prend la source de plus haute priorité qui porte une clé de politique et ignore le reste. Une clé de politique est n’importe quelle clé de paramètres autre que celle-ci et wslInheritsWindowsSettings. Sous ce défaut, une fois que les paramètres gérés par le serveur ou une politique MDM livrent une clé de politique, un fichier managed-settings.json ne contribue que les clés que Claude Code lit de chaque source d’administrateur. Avec "merge", chaque source d’administrateur que vous livrez contribue ses clés à une politique combinée. Nécessite Claude Code v2.1.242 ou ultérieur.
Définissez "merge" uniquement lorsque chaque source classée en dessous de votre plus haute est sous le contrôle d’un administrateur, car Claude Code ajoute alors des entrées d’une source inférieure, telle que les règles permissions.allow, à la politique.
- Portée :
Managed. Claude Code lit cette clé de la source de plus haute priorité qui porte soit cette clé soit une clé de politique, et ignore cette clé dans chaque source classée plus bas, de sorte qu’une source inférieure ne peut pas se choisir pour combiner avec la source au-dessus. Ni le registre HKCU Windows ni les paramètres parents d’un hôte d’intégration ne participent à la fusion. - Type : chaîne, l’une de :
"first-wins": la source de plus haute priorité qui porte une clé de politique fournit la politique, et les sources inférieures ne contribuent que les clés que Claude Code lit de chaque source d’administrateur"merge": chaque source d’administrateur que vous livrez contribue ses clés, combinées par les règles ci-dessous
- Défaut :
"first-wins"
managed-settings.json est la source d’administrateur la plus basse classée, de sorte que "merge" défini là n’a pas de source en dessous pour combiner. Dans les paramètres gérés par le serveur, la clé ressemble à ceci :
"merge", Claude Code combine chaque clé par son type. Ce tableau donne la règle pour chaque type. Les lignes de liste de restriction, valeurs prises en entier et plus haute source uniquement nomment chaque clé qu’elles couvrent, et les autres lignes donnent des exemples :
Prendre
sandbox.credentials.awsPairs et sandbox.ripgrep en entier nécessite Claude Code v2.1.257 ou ultérieur.
Quelques clés ajoutent une condition que le tableau ne montre pas :
policyHelper: Claude Code l’honore uniquement lorsque la source la plus haute qui porte une clé de politique est une politique MDM ou un fichier de paramètres gérés, de sorte que sous les paramètres gérés par le serveur elle ne s’applique pas.modelOverrides: s’apparie avecavailableModels. Claude Code prendmodelOverridesde la source la plus haute qui la définit, sauf si une source supérieure définitavailableModelssansmodelOverrides. Dans ce cas, il ignoremodelOverridesde chaque source.forceLoginGatewayUrl,gatewayInternalNetworkset la valeur"gateway"deforceLoginMethod: Claude Code ne les lit jamais de paramètres gérés par le serveur, de sorte qu’une valeur là ne s’applique ni ne cache une définie dans une politique MDM ou un fichier de paramètres gérés. Parmi les sources d’administrateur sur la machine, seule la plus haute classée qui porte une clé de politique les fournit, que les paramètres gérés par le serveur soient présents ou non.allowedProviders: après la règle du tableau, la liste de la machine elle-même limite toujours le résultat, comme le note l’entrée de sa Portée.
/status et lisez la ligne Setting sources.
parentSettingsBehavior
Choisissez si Claude Code applique les paramètres gérés fournis par un processus hôte d’intégration, tel que le SDK Agent ou une extension IDE, lorsqu’une couche gérée déployée par l’administrateur est également présente. Avec "first-wins", Claude Code supprime les paramètres fournis par l’hôte ; avec "merge", il les applique sous la couche d’administrateur via un filtre restrictif uniquement. Définissez "merge" lorsqu’un hôte doit transmettre ses propres restrictions aux sessions qu’il lance, par exemple Claude Desktop livrant la liste d’autorisation de sortie d’une passerelle.
- Portée :
Managed. Claude Code le lit de la source gérée contrôlée par l’administrateur de plus haute priorité. - Type : chaîne, l’une de :
"first-wins": Claude Code supprime les paramètres fournis par l’hôte lorsqu’une couche gérée déployée par l’administrateur est présente"merge": Claude Code applique les paramètres fournis par l’hôte sous la couche d’administrateur via un filtre restrictif uniquement
- Défaut :
"first-wins"
managed-settings.json
policyHelper
Exécutez un exécutable que vous déployez qui calcule les paramètres gérés au démarrage, de sorte que vous pouvez dériver la politique de la posture de l’appareil, de l’identité ou d’un service distant au lieu d’un fichier statique. Claude Code exécute l’assistant avant d’accepter la première invite et traite les paramètres qu’il émet comme les paramètres gérés pour la session.
- Portée :
Managed. Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés. Claude Code lit la clé de la source gérée de plus haute priorité qui porte une clé de politique et exécute l’assistant uniquement lorsque cette source est l’une de ces trois ; il ignore la clé dans les paramètres gérés par le serveur, le registre HKCU et les paramètres parents fournis par l’hôte. - Type : objet avec
path,timeoutMsetrefreshIntervalMs - Défaut : non défini, donc aucun assistant ne s’exécute
managed-settings.json
Écrire la sortie de l’assistant
Claude Code exécute l’assistant sans arguments, définitCLAUDE_CODE_VERSION dans son environnement et lit une enveloppe JSON à partir de stdout, plafonnée à 1 MiB.
Mettez les paramètres sous une clé managedSettings. Un objet de paramètres nu sans clé managedSettings analyse avec managedSettings indéfini et n’applique rien, et Claude Code ne signale aucune erreur :
managedSettings, cet objet devient la seule source de paramètres gérés pour l’exécution : Claude Code ignore les sources MDM, fichier et HKCU, lit les clés inter-sources uniquement à partir de la sortie de l’assistant, et ne fusionne jamais les paramètres parents.
La vérification forceRemoteSettingsRefresh au démarrage s’exécute avant l’assistant et lit n’importe quelle source d’administrateur. Un assistant qui quitte 0 avec une enveloppe qui omet managedSettings ne contribue aucun paramètre gérés, et les autres sources s’appliquent comme d’habitude.
Défaillances de l’assistant
Une exécution de l’assistant échoue lorsque :pathviole les règles danspolicyHelper.path.- Aucun fichier régulier n’existe à
path. Claude Code vérifie le fichier avant de démarrer l’assistant, dans le même budgettimeoutMs, de sorte qu’un montage réseau qui ne répond pas peut causer l’échec de l’exécution. - L’assistant quitte non-zéro, s’exécute toujours lorsque
timeoutMss’écoule, ou ne démarre pas du tout, par exemple parce qu’il n’est pas exécutable. - L’assistant écrit plus de 1 MiB à stdout ou à stderr.
- stdout n’est pas un seul objet JSON, ou son
managedSettingsa une violation de schéma que Claude Code ne peut pas réparer.
timeoutMs et n’inclut aucune sortie de l’assistant. Le refus couvre les sessions interactives, claude -p, les sessions du SDK Agent, les sessions en arrière-plan et la plupart des sous-commandes.
Le refus est délibéré, de sorte qu’un assistant qui a besoin de résilience en cas de panne doit servir à partir de son propre cache et quitter 0.
Lorsqu’une actualisation en arrière-plan échoue, Claude Code maintient la dernière politique réussie en vigueur, et /status affiche l’actualisation échouée avec sa raison jusqu’à ce qu’une actualisation réussisse. Chaque actualisation s’exécute sous les mêmes timeoutMs et règles d’échec que l’exécution au démarrage.
Avec --debug, Claude Code écrit stderr de l’assistant de chaque exécution dans le journal de débogage.
Claude Code signale une valeur policyHelper invalide comme une entrée supprimée et démarre la session sur les paramètres gérés restants sans exécuter d’assistant. Les valeurs invalides incluent une chaîne de chemin nu et un timeoutMs en dessous de son minimum.
Pour désactiver un assistant, supprimez la clé de la source qui la définit.
policyHelper.path
Nommez l’exécutable de l’assistant que Claude Code exécute. Pour ce qui se passe lorsque le chemin viole les règles ci-dessous, voir Défaillances de l’assistant.
- Portée :
Managed. Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, partout oùpolicyHelperest lu. - Type : chaîne, un chemin absolu sous forme normalisée, sans segments
.ou..; sur Windows, un chemin de lettre de lecteur ou UNC qui se termine par.exe - Défaut : aucun ; requis lorsque
policyHelperest défini
managed-settings.json
policyHelper.timeoutMs
Définissez combien de temps Claude Code attend l’assistant avant de traiter l’exécution comme échouée. Une exécution expirée échoue de la même manière qu’une sortie non-zéro, de sorte qu’au démarrage Claude Code refuse de démarrer.
- Portée :
Managed. Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, partout oùpolicyHelperest lu. - Type : entier, millisecondes, minimum
1000 - Défaut :
10000
managed-settings.json
policyHelper.refreshIntervalMs
Faites en sorte que Claude Code réexécute l’assistant en arrière-plan à un intervalle de sorte que les modifications de politique atteignent une session en cours d’exécution. Lorsqu’une actualisation réussit, sa sortie remplace les paramètres gérés précédents sans redémarrage ; lorsqu’une actualisation échoue, Claude Code maintient la politique qu’il a déjà.
- Portée :
Managed. Lire à partir de la plist macOS, du registre Windows HKLM ou du fichier de paramètres gérés, partout oùpolicyHelperest lu. - Type : entier, millisecondes :
0pour désactiver l’actualisation, sinon au moins60000 - Défaut : non défini, de sorte que Claude Code exécute l’assistant une fois au démarrage
managed-settings.json
wslInheritsWindowsSettings
Faites en sorte que Claude Code sur WSL lise les paramètres gérés de la chaîne de politique Windows, avec HKLM et le fichier de paramètres gérés Windows prenant la priorité sur /etc/claude-code et HKCU en dessous. Pendant que la chaîne est activée, Claude Code lit /etc/claude-code uniquement lorsqu’aucun document d’administrateur Windows n’est présent dans la valeur du registre HKLM ou le dossier C:\Program Files\ClaudeCode\. Définissez-le pour étendre la politique que vous déployez déjà sur Windows aux sessions WSL sur la même machine, de sorte qu’elles suivent les mêmes règles que les sessions hôte. Claude Code l’honore uniquement lorsqu’il est défini dans la clé du registre HKLM ou dans un fichier de paramètres gérés ou un drop-in sous C:\Program Files\ClaudeCode\, qui nécessitent tous deux l’administrateur Windows pour écrire.
- Portée :
Managed. Dans une source Windows contrôlée par l’administrateur. - Type : Booléen
true: Claude Code sur WSL lit les paramètres gérés de la chaîne de politique Windows, et lit/etc/claude-codeuniquement lorsqu’aucun document d’administrateur Windows n’est présentfalse: WSL lit uniquement/etc/claude-code
- Défaut :
false, de sorte que WSL lit uniquement/etc/claude-code
managed-settings.json
true. Cette copie n’active pas la chaîne par elle-même. Une source Windows qui contient uniquement cette clé, définie à true ou false, ne compte pas comme une source de politique, de sorte qu’une source de priorité inférieure fournit toujours la politique. Cette clé n’a aucun effet sur Windows natif.
Claude Code lit true et false avec ou sans guillemets et lit null comme supprimant la clé. Une source Windows contrôlée par l’administrateur qui contient n’importe quelle autre valeur compte comme un document d’administrateur présent avec la chaîne activée : ni /etc/claude-code ni HKCU ne s’appliquent, et un avertissement de démarrage nomme la clé. Une valeur HKLM ou un fichier de dossier Windows qui existe mais ne peut pas être lu empêche également /etc/claude-code de s’appliquer que la chaîne soit activée ou non. Nécessite Claude Code v2.1.282 ou ultérieur.
Paramètres de configuration globale
Enregistrez ces clés dans~/.claude.json, pas dans un fichier de paramètres. Claude Code les ignore partout ailleurs. Claude Code et /config en écrivent la plupart pour vous, et vous pouvez aussi les modifier manuellement.
autoConnectIde
Connectez-vous à un IDE en cours d’exécution automatiquement lorsque vous démarrez Claude Code à partir d’un terminal externe. Apparaît dans /config sous Auto-connect to IDE (external terminal) lorsque vous exécutez Claude Code en dehors d’un terminal VS Code ou JetBrains.
- Scope :
Global config - Type : Boolean
true: Claude Code se connecte à un IDE en cours d’exécution automatiquement lorsque vous le démarrez à partir d’un terminal externefalse: Claude Code ne se connecte pas automatiquement à partir d’un terminal externe ; à l’intérieur d’un terminal VS Code ou JetBrains, ou avec--ide, il se connecte toujours
- Default :
false - Per-session overrides :
CLAUDE_CODE_AUTO_CONNECT_IDEprend la priorité sur cette clé pour une session, dans les deux sens
~/.claude.json
settings.json.
autoInstallIdeExtension
Installez l’extension Claude Code IDE automatiquement lorsque vous exécutez Claude Code à partir d’un terminal VS Code. Apparaît dans /config sous Auto-install IDE extension lorsque vous exécutez Claude Code à l’intérieur d’un terminal VS Code ou JetBrains.
- Scope :
Global config - Type : Boolean
true: Claude Code installe l’extension IDE automatiquement lorsque vous l’exécutez à partir d’un terminal VS Codefalse: Claude Code n’installe pas l’extension automatiquement
- Default :
true - Per-session overrides :
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALLdéfini à1ignore l’installation pour une session même lorsque cette clé esttrue
~/.claude.json
settings.json.
claudeInChromeDefaultEnabled
Démarrez chaque session CLI interactive avec l’intégration Chrome activée, sans passer --chrome à chaque fois. Si vous exécutez claude remote-control, une session qu’il démarre pour l’un de vos threads de projet suit également cette clé, sauf en mode bypassPermissions. Avec Claude Code v2.1.287 ou ultérieure, cette clé s’applique également aux sessions dans l’extension VS Code : voir Enable Chrome by default.
Exécuter /chrome et sélectionner Enabled by default définit cette clé pour vous. Apparaît dans /config sous Claude in Chrome enabled by default.
- Scope :
Global config - Type : Boolean
true: Claude Code active l’intégration Chrome lorsqu’une session CLI interactive démarre, comme il le fait lorsque vous passez--chrome. Dans l’extension VS Code, les sessions se connectent au navigateur dès leur démarragefalse: les sessions CLI interactives démarrent avec l’intégration Chrome désactivée, et Claude Code arrête d’offrir de la configurer. Passez--chromepour l’activer pour une session interactive. Dans l’extension VS Code, une session se connecte lorsque vous tapez@browser, comme lorsque la clé n’est pas définie
- Default : unset, donc l’intégration Chrome est désactivée et Claude Code peut toujours offrir de la configurer
- Per-session overrides :
--chromeet--no-chromeprennent la priorité sur cette clé pour une session interactive
~/.claude.json
settings.json.
copyFullResponse
Faites en sorte que /copy copie la réponse complète à chaque fois, sans afficher le sélecteur. Sélectionner Always copy full response dans ce sélecteur définit cette clé à true. Apparaît dans /config sous Skip the /copy picker.
- Scope :
Global config - Type : Boolean
true:/copycopie la réponse complète sans afficher le sélecteurfalse: lorsque la réponse contient des blocs de code ou des citations,/copyaffiche un sélecteur où vous choisissez un bloc ou la réponse complète
- Default :
false
~/.claude.json
settings.json.
copyOnSelect
Copiez le texte dans votre presse-papiers automatiquement lorsque vous terminez de le sélectionner avec la souris dans fullscreen rendering ou agent view. Apparaît dans /config sous Copy on select pendant que le rendu en plein écran est activé.
- Scope :
Global config - Type : Boolean
true: Claude Code copie le texte dans votre presse-papiers lorsque vous terminez de le sélectionnerfalse: la sélection de texte laisse votre presse-papiers inchangé, et vous copiez la sélection avec un raccourci clavier à la place
- Default :
true
~/.claude.json
settings.json.
defaultToAgentsView
Ouvrez agent view au lieu d’une nouvelle conversation lorsque vous exécutez claude sans arguments. Apparaît dans /config sous Open agents view by default sauf si agent view est désactivée.
- Scope :
Global config - Type : Boolean
true:claudesans arguments ouvre agent view, sauf si agent view est désactivéefalse:claudesans arguments démarre une nouvelle conversation
- Default :
false
~/.claude.json
settings.json.
diffTool
Choisissez où Claude Code affiche le diff d’une modification Edit ou Write qu’il propose lorsqu’un IDE VS Code ou JetBrains est connecté : "auto" l’ouvre dans la visionneuse de diff de l’IDE, "terminal" le garde dans le terminal. Apparaît dans /config sous Diff tool uniquement lorsque Claude Code est connecté à un IDE VS Code ou JetBrains.
- Scope :
Global config - Type : string, l’un de :
"auto": Claude Code ouvre le diff dans la visionneuse de diff de l’IDE lorsqu’un IDE VS Code ou JetBrains est connecté"terminal": Claude Code garde le diff dans le terminal
- Default :
"auto"
~/.claude.json
settings.json.
externalEditorContext
Lorsque vous appuyez sur Ctrl+G, Claude Code ouvre l’invite que vous tapez dans votre external editor. Avec cette clé activée, le buffer de l’éditeur commence par la réponse précédente de Claude sous forme de lignes de commentaire #, afin que vous puissiez la lire pendant que vous écrivez, et Claude Code supprime ces lignes lorsque vous enregistrez. Apparaît dans /config sous Show last response in external editor.
- Scope :
Global config - Type : Boolean
true: le buffer de l’éditeur commence par la réponse précédente de Claude sous forme de lignes de commentaire#, que Claude Code supprime lorsque vous enregistrezfalse: le buffer de l’éditeur s’ouvre avec uniquement votre invite
- Default :
false
~/.claude.json
# … (earlier output truncated).
Claude Code ignore cette clé dans settings.json.
leftArrowOpensAgents
Appuyez sur ← sur une invite vide pour mettre la session en arrière-plan et ouvrir agent view. Définissez cette clé à false pour désactiver le raccourci. Apparaît dans /config sous ← opens agents lorsque agent view est disponible.
- Scope :
Global config - Type : Boolean
true: appuyer sur←sur une invite vide dans une session que vous avez démarrée dans le terminal la met en arrière-plan et ouvre agent viewfalse: Claude Code désactive le raccourci ; dans une session que vous avez attachée à partir d’agent view,←sur une invite vide se détache toujours
- Default :
true
~/.claude.json
settings.json.
permissionExplainerEnabled
Jusqu’à v2.1.256, vous pouviez appuyer sur Ctrl+E sur une invite de permission Bash ou PowerShell pour voir une explication générée par le modèle de la commande, et définir cette clé à false pour désactiver ce raccourci.
- Scope :
Global config. Sur v2.1.256 et antérieures. - Type : Boolean
- Default :
true
prStatusFooterEnabled
Affiche un badge dans le pied de page de l’invite pour la demande de tirage ou la demande de fusion ouverte de la branche actuelle, avec un trait de soulignement coloré qui affiche son statut. Apparaît dans /config sous Show PR status footer.
- Scope :
Global config - Type : Boolean
true: le pied de page affiche le badge selon les conditions dans PR review statusfalse: Claude Code ignore la vérification de la demande de tirage et de la demande de fusion du pied de page et n’affiche pas ce badge. Une session que vous avez attachée à partir d’agent view peut toujours afficher un lien simple vers une demande de tirage liée à celle-ci
- Default :
true
~/.claude.json
settings.json.
teammateDefaultModel
Jusqu’à v2.1.233, vous définissiez cette clé sur le modèle pour les coéquipiers de agent team que votre invite n’a pas nommé un modèle pour : un alias tel que "sonnet", ou null pour suivre le modèle du leader. Pour le modèle que Claude Code choisit maintenant pour ces coéquipiers, voir specify teammates and models.
- Scope :
Global config. Sur v2.1.233 et antérieures. - Type : string, un alias de modèle ou un ID de modèle complet, ou
null - Default : unset
Voir aussi
- Configurer les autorisations : syntaxe des règles, modes d’autorisation et confiance de l’espace de travail
- Variables d’environnement : chaque variable
CLAUDE_*,ANTHROPIC_*et variable de fournisseur que Claude Code lit - Outils disponibles pour Claude : les outils intégrés et ceux qui nécessitent une approbation
- Exemples de fichiers de paramètres : un fichier personnel, un fichier d’équipe et un fichier géré par une organisation
- Configurer les paramètres gérés : comment les organisations décident ce qu’elles doivent appliquer
- Déployer les paramètres gérés : mécanismes de livraison, précédence au sein du niveau géré et entrées invalides dans les paramètres gérés
- Déboguer votre configuration :
claude doctoret la boîte de dialogue Erreur de paramètres