Workbranch › Guias
GuiaComo gerenciar permissões no Claude Code
O Claude Code pergunta antes de rodar comandos ou editar arquivos, e pedidos demais atrasam você, enquanto pedidos de menos podem ser arriscados. Este guia explica os pedidos de permissão, os modos e as regras que você pode salvar, para aprovar o trabalho de rotina uma vez e manter bloqueado o que é perigoso.
Resposta rápida: responda cada pedido com Yes (sim), Yes, and don't ask again (sim, e não perguntar de novo) ou No (não), e pressione Shift+Tab para trocar de modo, como aceitar edições ou planejar. Para aprovar comandos de rotina de vez, digite /permissions ou adicione regras allow como Bash(npm run *) ao .claude/settings.json, e adicione regras deny como Read(./.env) para o que o Claude nunca pode tocar.
Este guia segue a documentação do Claude Code da Anthropic em outubro de 2026. Novo no Claude Code? Comece por como começar a usar o Claude Code.
Sobre o que o Claude Code pergunta
| Ação | Pergunta no modo Manual? | Quanto dura o "não perguntar de novo" |
|---|---|---|
| Ler arquivos, buscar | Não, dentro dos seus diretórios de trabalho | Não é necessário |
| Comandos de shell | Sim, exceto um conjunto embutido de comandos somente leitura | Para sempre, por repositório e comando |
| Editar ou gravar arquivos | Sim | Até o fim da sessão |
| Buscar uma página web | Sim, exceto alguns sites de documentação | Para sempre, por repositório e domínio |
| Pesquisa na web | Sim | Para sempre, por repositório |
Um pedido mostra o que o Claude quer fazer e as suas opções. Na maioria dos pedidos, você pode ir até Yes ou No e pressionar Tab para acrescentar um comentário; com No, o comentário chega ao Claude como o seu motivo, e o Claude continua trabalhando levando isso em conta.
Escolha um modo de permissão
Pressione Shift+Tab durante uma sessão para passar pelos modos; a barra de status mostra qual está ativo. Você também pode iniciar já em um deles com claude --permission-mode plan.
| Modo | O que faz | Use quando |
|---|---|---|
Manual (default) | Pergunta na primeira vez que cada ferramenta é usada | Você quer ver tudo |
Accept edits (aceitar edições, acceptEdits) | Aplica edições de arquivos e comandos simples de arquivo como mkdir ou mv no seu projeto sem perguntar | Você confia na tarefa e vai revisar o diff |
Plan (planejar, plan) | Explora e propõe um plano; nenhuma edição até você aprovar | Mudanças grandes ou pouco claras |
Auto (auto) | Pula os pedidos de rotina; um classificador em segundo plano confere comandos e requisições de rede em relação ao seu pedido | Tarefas mais longas, com menos interrupções |
Don't ask (não perguntar, dontAsk) | Recusa tudo o que geraria um pedido e roda só o que foi pré-aprovado | Scripts e CI com acesso restrito; não entra no ciclo do Shift+Tab, inicie com --permission-mode dontAsk |
Bypass (bypassPermissions) | Pula os pedidos, inclusive para pastas protegidas como .git | Só em um container ou VM isolado |
As versões recentes iniciam as sessões interativas no terminal e no VS Code no auto mode, que funciona em todos os planos, apenas com os modelos mais novos. Para escolher você mesmo o modo inicial, defina "defaultMode" em permissions no ~/.claude/settings.json. Auto e bypass definidos nos arquivos de configuração de um projeto são ignorados, então um repositório não consegue ativá-los por você.
Salve regras allow, ask e deny
- Em uma sessão, digite
/permissions. A janela lista todas as regras e de qual arquivo de configuração cada uma vem, e permite adicionar ou remover regras. As mudanças valem a partir da próxima ação do Claude. - Ou edite um arquivo de configuração diretamente. Regras compartilhadas com o time vão em
.claude/settings.json(faça commit dele); as suas vão em.claude/settings.local.jsonou, para todos os projetos, em~/.claude/settings.json. - Escreva as regras como
ToolouTool(pattern):Bash(npm run *): qualquer script do npmBash(git commit *): commits, mas não outros comandos gitRead(./.env): o arquivo.envdo projetoWebFetch(domain:example.com): páginas desse sitemcp__github__*: todas as ferramentas de um servidor MCP chamado github
Um ponto de partida típico:
{"permissions": {"allow": ["Bash(npm run *)", "Bash(git commit *)"], "deny": ["Bash(git push *)", "Read(./.env)", "Read(./secrets/**)"]}}
As regras são verificadas em uma ordem fixa: deny primeiro, depois ask, depois allow. Um deny sempre vence, mesmo contra um allow mais específico, e uma regra ask pede confirmação mesmo que um allow também corresponda.
Como ficar seguro
- Coloque o
*depois do subcomando.Bash(git log *)libera só ogit log;Bash(git *)libera todos os comandos git, inclusive os que rodam outros programas. - Atenção ao espaço.
Bash(ls *)não corresponde alsof;Bash(ls*)corresponde. - Regras de comando não são uma muralha. Um deny para
Bash(rm *)não impedebash -c 'rm …'nem/bin/rm. O Claude Code separa comandos encadeados, então um comando liberado seguido de&&e de outro ainda precisa que todas as partes estejam liberadas. Para limites rígidos de arquivos e de rede, use o sandboxing do Claude Code. - Bloqueie segredos com regras Read deny. Nas versões recentes, um
Readdeny também impede que caminhos de imagem correspondentes colados no prompt sejam anexados e esconde nomes correspondentes quando você menciona uma pasta com @. - Arquivos protegidos continuam protegidos. Regras allow nunca pré-aprovam gravações em lugares como
.git,.claude,.mcp.jsone arquivos de shell como.zshrc. Fora do modo bypass, você é consultado antes, ou, no auto mode, o classificador revisa a gravação. - Desative os modos arriscados. Defina
permissions.disableBypassPermissionsModeoupermissions.disableAutoModecomo"disable"para impedir que sejam usados.
Se não funcionar
- Uma regra allow continua pedindo confirmação: pode haver uma regra deny ou ask de outro arquivo de configuração que corresponde. Abra
/permissionspara ver a origem de cada regra. - Uma regra para outra pasta não vale: o Claude só trabalha dentro dos seus diretórios de trabalho. Inicie com
claude --add-dir pathou liste a pasta emadditionalDirectories. - Uma regra de caminho nas configurações de usuário não pega seu projeto: caminhos que começam com
/no~/.claude/settings.jsonsão relativos a~/.claude. Use~/ou//para caminhos absolutos. - O pedido não tem "don't ask again": essa opção só aparece quando o pedido consegue listar tudo o que uma regra salva cobriria. Aprove uma vez ou escreva a regra você mesmo.
Fontes
- Claude Code user FAQ (Central de Ajuda do Claude, conferido em 30 de outubro de 2026)
- Configure permissions (Claude Code Docs, conferido em 30 de outubro de 2026)
- Permission modes (Claude Code Docs, conferido em 30 de outubro de 2026)
Perguntas frequentes
Posso dizer ao Claude no CLAUDE.md para não rodar certos comandos?
Pode, mas nada garante isso. O CLAUDE.md orienta as escolhas do Claude, enquanto o próprio Claude Code só aplica regras de permissão, modos e hooks. Use uma regra deny para tudo o que nunca pode acontecer.
Onde o "não perguntar de novo" salva minha escolha?
Para comandos e domínios web, ele grava uma regra em .claude/settings.local.json na raiz do repositório git, então ela vale para as próximas sessões ali. Aprovações de edição de arquivos duram só até o fim da sessão.
Minha empresa pode travar essas configurações?
Sim. Os administradores podem distribuir configurações gerenciadas que as configurações de usuário e de projeto não conseguem sobrescrever, incluindo desativar o modo bypass ou o auto mode.