Visão Geral
O Claude Code, um dos assistentes de programação com IA mais populares da atualidade, coloca seu sistema de permissões no centro do design. Sempre que o Claude quer editar um arquivo, executar um comando de shell ou fazer uma requisição de rede, ele pausa e pede sua aprovação. Os modos de permissão controlam a frequência com que essa pausa acontece.
O Claude Code oferece seis modos de permissão, cada um fazendo uma troca diferente entre conveniência e segurança. Este guia percorre o comportamento, os cenários ideais, os comandos e as práticas de cada modo, para que você possa escolher bem no trabalho do dia a dia.
Os Modos em Resumo
Os seis modos, ordenados do mais restritivo ao mais permissivo:
| Modo | Executa sem aprovação | Ideal para |
|---|---|---|
default | Operações somente de leitura | Primeiro uso; projetos sensíveis |
acceptEdits | Leituras, edições de arquivos, comandos comuns de filesystem | Iteração em código existente |
plan | Somente leitura | Explorar uma base de código; analisar antes de modificar |
auto | Tudo (com verificações de segurança em segundo plano) | Tarefas longas; fadiga de aprovação |
dontAsk | Apenas ferramentas pré-aprovadas | CI e ambientes de script totalmente controlados |
bypassPermissions | Tudo | Somente contêineres ou VMs isoladas |
Em todos os modos, exceto bypassPermissions, gravações em caminhos protegidos nunca são aprovadas automaticamente — preservando a segurança do estado do seu repositório e da própria configuração do Claude.
1. Modo Default
O default é o modo com que o Claude Code inicia, e é a base do controle de permissões. O Claude pode realizar operações de leitura sem aprovação — ler arquivos, buscar na base de código, analisar a estrutura. Toda ação que altera estado — editar arquivos, executar comandos de shell, fazer requisições de rede — pausa e exige sua aprovação explícita.
Use quando: você está começando com o Claude Code e aprendendo seu comportamento; o repositório é sensível ou de alto risco; você quer controle total de cada etapa.
# iniciar no modo default
claude
# alternar modos na sessão (Shift+Tab faz o ciclo)
# ordem do ciclo: default → acceptEdits → plan
Melhor prática: o default é o ponto de partida seguro. Se o volume de aprovações estiver te atrasando, suba para o acceptEdits; para sistemas de produção ou dados sensíveis, fique aqui.
2. Modo AcceptEdits
O acceptEdits afrouxa o default em um nível: o Claude pode criar e editar arquivos no diretório de trabalho sem aprovação por arquivo. A barra de status mostra ⏵⏵ accept edits on quando ativo. Além das edições de arquivos, ele aprova automaticamente comandos comuns de filesystem — mkdir, touch, rm, rmdir, mv, cp e sed — mesmo quando precedidos de variáveis de ambiente seguras (como LANG=C ou NO_COLOR=1) ou wrappers de processo (como timeout, nice, nohup). A aprovação automática vale apenas dentro do diretório de trabalho ou dos additionalDirectories; gravações fora desse escopo, gravações em caminhos protegidos e todos os demais comandos de shell ainda exigem aprovação.
Use quando: revisando e iterando sobre código existente; você prefere auditar as mudanças depois via git diff ou no editor; refatorações de rotina e trabalho em funcionalidades.
# iniciar no modo acceptEdits
claude --permission-mode acceptEdits
# alternar para ele na sessão com Shift+Tab
# defini-lo como padrão — .claude/settings.json
{
"permissions": {
"defaultMode": "acceptEdits"
}
}
Melhor prática: este é o modo diário recomendado para a maioria dos desenvolvedores — sem clicar em confirmar a cada edição de arquivo, enquanto operações críticas (requisições de rede, gravações no banco de dados, deploys) ainda precisam do seu aval. Na extensão do VS Code, defina claudeCode.initialPermissionMode como acceptEdits.
3. Modo Plan
O modo plan transforma o Claude Code em um fluxo de trabalho de “apenas pesquisar, não modificar nada”. O Claude pode ler arquivos e executar comandos de shell para explorar, e produz um plano detalhado — mas não toca em nenhum código-fonte. As regras de aprovação são as mesmas do modo default.
O fluxo de aprovação do plano: quando o plano está pronto, o Claude o apresenta e pergunta como prosseguir. Você pode aprovar e alternar para o auto para execução autônoma; aprovar e alternar para o acceptEdits para edição automática; aprovar e revisar cada mudança manualmente; continuar dando feedback para refinar o plano; ou usar o Ultraplan para revisá-lo no navegador. Você também pode pressionar Ctrl+G para abrir o plano no seu editor de texto padrão, editá-lo diretamente e depois deixar o Claude executar.
Use quando: explorando uma base de código desconhecida; você quer uma proposta antes de qualquer modificação; code review ou auditorias de segurança.
# iniciar no modo plan
claude --permission-mode plan
# plano pontual para um único prompt
/plan analyze the performance bottlenecks in this module
# definir como padrão do projeto
{
"permissions": {
"defaultMode": "plan"
}
}
Melhor prática: antes de mexer em uma base de código desconhecida ou iniciar uma refatoração grande, rode o modo plan primeiro. Em sistemas legados especialmente, ele evita que a IA faça edições erradas com base em um entendimento incompleto da estrutura.
4. Modo Auto
O auto, introduzido no Claude Code v2.1.83, é o modo de permissão avançado: o Claude executa livremente sem prompts de permissão, enquanto um modelo classificador independente inspeciona cada operação antecipadamente e bloqueia qualquer coisa fora de escopo, voltada a infraestrutura não identificada, ou impulsionada por conteúdo malicioso.
Observação: o modo auto é uma versão prévia de pesquisa. Ele reduz os prompts, mas não garante segurança. Use-o para tarefas cuja direção geral você confia — não como substituto da revisão de operações sensíveis.
Requisitos de disponibilidade: plano Max, Team, Enterprise ou API (não Pro); habilitação pelo administrador para Team e Enterprise; modelos Claude Sonnet 4.6, Opus 4.6 ou Opus 4.7; e somente a API da Anthropic (Bedrock, Vertex e Foundry estão excluídos).O que o classificador bloqueia por padrão: baixar e executar código (como curl | bash); enviar dados sensíveis a endpoints externos; deploys em produção e migrações de banco de dados; exclusões em massa em armazenamento em nuvem; conceder permissões de IAM ou de repositório; modificar infraestrutura compartilhada; destruir irreversivelmente arquivos que existiam antes da sessão; e force-push ou push direto para a main. O que ele permite por padrão: operações locais em arquivos dentro do diretório de trabalho; instalar dependências declaradas em lockfiles ou manifests; ler o .env e enviar credenciais para a API correspondente; requisições HTTP somente de leitura; e push para branches que você iniciou ou o Claude criou.
# entrar no modo auto pelo ciclo do Shift+Tab
# ver as regras padrão do modo auto
claude auto-mode defaults
O limitador de segurança: se o classificador bloquear 3 operações consecutivas ou 20 cumulativas, o modo auto pausa a si mesmo e volta a pedir aprovações. Aprovar manualmente uma operação bloqueada restaura o auto. Os limites não são configuráveis.Melhor prática: o auto serve para automações de longa duração (refatorações em lote, geração de testes em grande escala), idealmente combinado com infraestrutura confiável configurada pelo administrador para estreitar ainda mais o limite.
5. Modo DontAsk
O dontAsk parece o auto — menos prompts! — mas funciona de forma completamente diferente. Ele nega toda chamada de ferramenta que não esteja explicitamente pré-aprovada; apenas operações permitidas por regras em permissions.allow ou pelo comando /permissions podem executar. Este é um modelo de whitelist: negar tudo primeiro, e depois abrir portas uma a uma.
Use quando: automação de pipelines de CI/CD; ambientes de produção rigidamente controlados; qualquer cenário que exija um conjunto preciso de ações executáveis pela IA.
# iniciar o modo dontAsk
claude --permission-mode dontAsk
# nota: dontAsk NÃO está no ciclo do Shift+Tab —
# ele deve ser definido no lançamento via flag
{
"permissions": {
"defaultMode": "dontAsk",
"allow": [
"Read",
"Bash(cat *)",
"Edit(./src/**)"
],
"deny": [
"Bash(curl http://*)",
"Bash(rm -rf /)"
]
}
}
Melhor prática: o dontAsk é a primeira escolha para CI/CD e scripts de automação. Com regras allow/deny refinadas, você pode construir um envelope de comportamento da IA totalmente previsível, e combinado com caminhos protegidos ele mantém seu repositório e configuração intactos.
6. Modo BypassPermissions
O bypassPermissions está no topo da hierarquia de permissões: ele contorna todo o sistema de permissões, permitindo que o Claude faça qualquer coisa sem aprovação. O nome da flag — --dangerously-skip-permissions — anuncia o risco por design.
Aviso de segurança: este modo pula todas as verificações de permissão, incluindo a proteção contra gravação em caminhos protegidos. Use-o apenas dentro de contêineres isolados ou máquinas virtuais.Como ativá-lo: o Shift+Tab não alcança esse modo; é necessária autorização explícita no lançamento:
# ativar diretamente (efeito imediato)
claude --permission-mode bypassPermissions
# ou
claude --dangerously-skip-permissions
# adicioná-lo ao ciclo do Shift+Tab sem ativar
claude --allow-dangerously-skip-permissions
Uma vez definido, o bypassPermissions aparece no ciclo do Shift+Tab depois do plan e antes do auto. A extensão do VS Code também exige ativar “Allow dangerously skip permissions” nas configurações antes de ele aparecer.
Use quando: contêineres Docker ou VMs que não contêm nada importante; experimentos grandes em sandboxes descartáveis; cenários de testes automatizados (embora combinar CI com dontAsk seja mais controlável). Melhor prática: a regra é simples — nunca use bypassPermissions em um ambiente de desenvolvimento no host. Se você precisa de uma experiência sem aprovações, prefira o auto ou um dontAsk bem configurado. Trate o bypass como último recurso, reservado para ambientes isolados com snapshots de rollback.
O Mecanismo de Caminhos Protegidos
Em todos os modos, exceto bypassPermissions, o Claude Code protege contra gravações automáticas: o diretório .claude/ (configuração e estado do Claude); o diretório .git/ (metadados do repositório); o arquivo .env (variáveis de ambiente); e arquivos não rastreados que existiam no início da sessão. Essas proteções garantem que, mesmo nos modos de alta permissão, o Claude não possa acidentalmente destruir a infraestrutura do seu repositório ou sua configuração.
Um Guia de Decisão para Escolher
- Iniciante no Claude Code →
default, para aprender o fluxo de aprovação - Iteração diária de código →
acceptEdits, pulando confirmações por edição - Analisando uma base de código desconhecida →
plan, proposta antes da ação - Tarefas em lote longas →
auto, com verificações de segurança em segundo plano - Automação de CI/CD →
dontAsk, com regras allow rígidas - Sandbox isolado →
bypassPermissions, com rollback à mão
Em qualquer modo, você pode ajustar finamente o comportamento de aprovação por ferramenta por meio das regras permissions.allow e permissions.deny no .claude/settings.json para um controle verdadeiramente granular.
Conclusão
Os seis modos de permissão do Claude Code formam um espectro completo, do rígido ao livre: a aprovação por ação do default, a confiança em edições de arquivos do acceptEdits, o fluxo de análise primeiro do plan, o classificador de segurança inteligente do auto, o controle por whitelist do dontAsk e a liberdade total do bypassPermissions. Entender os limites e os cenários ideais de cada modo permite encontrar o equilíbrio certo entre segurança e eficiência. Para a maioria dos desenvolvedores: acceptEdits para o trabalho diário, modo plan antes de tarefas complexas, e bypassPermissions apenas onde um ambiente isolado o torna seguro.
Tags: Claude Code, programação com IA, gerenciamento de permissões, ferramentas de desenvolvedor, Anthropic, 2026