autoMode pour indiquer à ce classificateur quels dépôts, buckets et domaines votre organisation approuve, afin qu’il cesse de bloquer les opérations internes courantes.
Le mode auto est disponible pour tous les utilisateurs sur l’API Anthropic. Sur Amazon Bedrock, Google Cloud Vertex AI et Microsoft Foundry, vous devez d’abord définir
CLAUDE_CODE_ENABLE_AUTO_MODE. Si Claude Code signale que le mode auto n’est pas disponible pour votre compte, consultez les exigences complètes, qui couvrent également les modèles pris en charge et l’activation par l’administrateur sur les plans Team et Enterprise.autoMode.environment.
Pour savoir comment activer le mode auto et ce qu’il bloque par défaut, consultez Modes de permission. Cette page est la référence de configuration.
Cette page couvre comment :
- Choisir où définir les règles dans CLAUDE.md, les paramètres utilisateur et les paramètres gérés
- Définir l’infrastructure approuvée avec
autoMode.environment - Remplacer les règles de blocage et d’autorisation quand les valeurs par défaut ne correspondent pas à votre pipeline
- Inspecter votre configuration effective avec les sous-commandes
claude auto-mode - Examiner les refus pour savoir ce qu’il faut ajouter ensuite
Où le classificateur lit la configuration
Le classificateur lit le même contenu CLAUDE.md que Claude lui-même charge, donc une instruction comme « ne jamais forcer la poussée » dans le CLAUDE.md de votre projet guide à la fois Claude et le classificateur en même temps. Commencez par là pour les conventions de projet et les règles de comportement. Pour les règles qui s’appliquent à plusieurs projets, comme l’infrastructure approuvée ou les règles de refus à l’échelle de l’organisation, utilisez le bloc de paramètresautoMode. Le classificateur lit autoMode à partir des portées suivantes :
| Portée | Fichier | Utiliser pour |
|---|---|---|
| Un développeur | ~/.claude/settings.json | Infrastructure approuvée personnelle |
| Un projet, un développeur | .claude/settings.local.json | Buckets ou services approuvés par projet, gitignorés |
| À l’échelle de l’organisation | Paramètres gérés | Infrastructure approuvée distribuée à tous les développeurs |
Drapeau --settings ou Agent SDK | JSON en ligne | Remplacements par invocation pour l’automatisation |
autoMode à partir des paramètres de projet partagés dans .claude/settings.json, donc un dépôt enregistré ne peut pas injecter ses propres règles d’autorisation.
Les entrées de chaque portée sont combinées. Un développeur peut étendre environment, allow, soft_deny et hard_deny avec des entrées personnelles mais ne peut pas supprimer les entrées que les paramètres gérés fournissent. Parce que les règles d’autorisation agissent comme des exceptions aux règles de blocage à l’intérieur du classificateur, une entrée allow ajoutée par un développeur peut remplacer une entrée soft_deny d’organisation : la combinaison est additive, pas une limite de politique stricte.
Le classificateur est une deuxième porte qui s’exécute après le système de permissions. Pour les actions qui ne doivent jamais s’exécuter indépendamment de l’intention de l’utilisateur ou de la configuration du classificateur, utilisez
permissions.deny dans les paramètres gérés, qui bloque l’action avant que le classificateur ne soit consulté et ne peut pas être remplacée.Définir l’infrastructure approuvée
Pour la plupart des organisations,autoMode.environment est le seul champ que vous devez définir. Il indique au classificateur quels dépôts, buckets et domaines sont approuvés : le classificateur l’utilise pour décider ce que signifie « externe », donc toute destination non listée est une cible d’exfiltration potentielle.
La liste d’environnement par défaut approuve le dépôt de travail et ses remotes configurées. Pour ajouter vos propres entrées aux côtés de cette valeur par défaut, incluez la chaîne littérale "$defaults" dans le tableau. Les entrées par défaut sont insérées à cette position, donc vos entrées personnalisées peuvent aller avant ou après.
- Organisation : le nom de votre entreprise et ce pour quoi Claude Code est principalement utilisé, comme le développement logiciel, l’automatisation de l’infrastructure ou l’ingénierie des données
- Contrôle de source : chaque organisation GitHub, GitLab ou Bitbucket vers laquelle vos développeurs poussent
- Fournisseurs cloud et buckets approuvés : noms de buckets ou préfixes que Claude devrait pouvoir lire et écrire
- Domaines internes approuvés : noms d’hôtes pour les API, tableaux de bord et services à l’intérieur de votre réseau, comme
*.internal.example.com - Services internes clés : CI, registres d’artefacts, index de packages internes, outils d’incident
- Contexte supplémentaire : contraintes d’industrie réglementée, infrastructure multi-locataire ou exigences de conformité qui affectent ce que le classificateur devrait traiter comme risqué
Remplacer les règles de blocage et d’autorisation
Trois champs supplémentaires vous permettent de remplacer les listes de règles intégrées du classificateur :autoMode.hard_deny pour les limites de sécurité inconditionnelles, autoMode.soft_deny pour les actions destructrices que l’intention de l’utilisateur peut lever, et autoMode.allow pour les exceptions. Chacun est un tableau de descriptions en prose, lu comme des règles en langage naturel. Pour les blocages durs basés sur des motifs d’outils qui s’exécutent avant le classificateur, utilisez permissions.deny.
À l’intérieur du classificateur, la précédence fonctionne en quatre niveaux :
- Les règles
hard_denybloquent inconditionnellement. L’intention de l’utilisateur et les exceptionsallowne s’appliquent pas. - Les règles
soft_denybloquent ensuite. L’intention de l’utilisateur et les exceptionsallowpeuvent remplacer celles-ci. - Les règles
allowremplacent ensuite les règlessoft_denycorrespondantes comme exceptions. - L’intention explicite de l’utilisateur remplace les blocages souples restants : si le message de l’utilisateur décrit directement et spécifiquement l’action exacte que Claude est sur le point de prendre, le classificateur l’autorise même quand une règle
soft_denycorrespond.
allow quand le classificateur signale à plusieurs reprises un motif courant que les exceptions par défaut ne couvrent pas. Pour renforcer, ajoutez à soft_deny pour les risques destructeurs spécifiques à votre environnement que les valeurs par défaut manquent, ou à hard_deny pour les limites de sécurité qui ne doivent jamais être franchies.
Pour conserver les règles intégrées tout en ajoutant les vôtres, incluez la chaîne littérale "$defaults" dans le tableau. Les règles par défaut sont insérées à cette position, donc vos règles personnalisées peuvent aller avant ou après elles, et vous continuez à hériter des mises à jour à mesure que la liste intégrée change entre les versions.
La définition de l’un de
environment, allow, soft_deny ou hard_deny sans "$defaults" remplace la liste par défaut entière pour cette section. Un tableau soft_deny sans "$defaults" rejette chaque règle de blocage intégrée, y compris la poussée forcée, curl | bash et les déploiements en production. Un tableau hard_deny sans "$defaults" rejette les règles intégrées d’exfiltration de données et de contournement des vérifications de sécurité.environment seule laisse les listes allow, soft_deny et hard_deny par défaut intactes. Omettez "$defaults" uniquement quand vous avez l’intention de prendre la responsabilité complète de la liste. Pour ce faire en toute sécurité, exécutez claude auto-mode defaults pour imprimer les règles intégrées, copiez-les dans votre fichier de paramètres, puis examinez chaque règle par rapport à votre propre pipeline et tolérance au risque.
Inspecter les valeurs par défaut et votre configuration effective
Trois sous-commandes CLI vous aident à inspecter et valider votre configuration. Imprimez les règlesenvironment, allow, soft_deny et hard_deny intégrées en JSON :
allow, soft_deny et hard_deny personnalisées :
claude auto-mode config après avoir enregistré vos paramètres pour confirmer que les règles effectives sont ce que vous attendez, avec "$defaults" développé en place. Si vous avez écrit des règles personnalisées, claude auto-mode critique les examine et signale les entrées qui sont ambiguës, redondantes ou susceptibles de causer des faux positifs. Si vous devez supprimer ou réécrire une règle intégrée plutôt que d’en ajouter une à côté, enregistrez la sortie de claude auto-mode defaults dans un fichier, modifiez les listes, et collez le résultat dans votre fichier de paramètres à la place de "$defaults".
Examiner les refus
Quand le mode auto refuse un appel d’outil, le refus est enregistré dans/permissions sous l’onglet Récemment refusé. Appuyez sur r sur une action refusée pour la marquer pour réessai : quand vous quittez la boîte de dialogue, Claude Code envoie un message indiquant au modèle qu’il peut réessayer cet appel d’outil et reprend la conversation.
Les refus répétés pour la même destination signifient généralement que le classificateur manque de contexte. Ajoutez cette destination à autoMode.environment, puis exécutez claude auto-mode config pour confirmer que cela a pris effet.
Pour réagir aux refus par programmation, utilisez le hook PermissionDenied.
Voir aussi
- Modes de permission : ce qu’est le mode auto, ce qu’il bloque par défaut et comment l’activer
- Paramètres gérés : déployez la configuration
autoModedans votre organisation - Permissions : règles d’autorisation, de demande et de refus qui s’appliquent avant l’exécution du classificateur
- Paramètres : la référence complète des paramètres, y compris la clé
autoMode