/config ao usar o REPL interativo, que abre uma interface de Configurações com abas onde você pode visualizar informações de status e modificar opções de configuração.
Escopos de configuração
O Claude Code usa um sistema de escopo para determinar onde as configurações se aplicam e com quem são compartilhadas. Compreender os escopos ajuda você a decidir como configurar o Claude Code para uso pessoal, colaboração em equipe ou implantação empresarial.Escopos disponíveis
| Escopo | Localização | Quem afeta | Compartilhado com a equipe? |
|---|---|---|---|
| Gerenciado | Configurações gerenciadas pelo servidor, plist / registro, ou managed-settings.json em nível de sistema | Todos os usuários na máquina | Sim (implantado por TI) |
| Usuário | Diretório ~/.claude/ | Você, em todos os projetos | Não |
| Projeto | .claude/ no repositório | Todos os colaboradores neste repositório | Sim (confirmado no git) |
| Local | Arquivos .claude/*.local.* | Você, apenas neste repositório | Não (ignorado pelo git) |
Quando usar cada escopo
Escopo Gerenciado é para:- Políticas de segurança que devem ser aplicadas em toda a organização
- Requisitos de conformidade que não podem ser substituídos
- Configurações padronizadas implantadas por TI/DevOps
- Preferências pessoais que você deseja em todos os lugares (temas, configurações do editor)
- Ferramentas e plugins que você usa em todos os projetos
- Chaves de API e autenticação (armazenadas com segurança)
- Configurações compartilhadas pela equipe (permissões, hooks, MCP servers)
- Plugins que toda a equipe deve ter
- Padronização de ferramentas entre colaboradores
- Substituições pessoais para um projeto específico
- Testar configurações antes de compartilhar com a equipe
- Configurações específicas da máquina que não funcionarão para outros
Como os escopos interagem
Quando a mesma configuração é definida em vários escopos, escopos mais específicos têm precedência:- Gerenciado (mais alto) - não pode ser substituído por nada
- Argumentos de linha de comando - substituições de sessão temporárias
- Local - substitui configurações de projeto e usuário
- Projeto - substitui configurações de usuário
- Usuário (mais baixo) - se aplica quando nada mais especifica a configuração
O que usa escopos
Os escopos se aplicam a muitos recursos do Claude Code:| Recurso | Localização do usuário | Localização do projeto | Localização local |
|---|---|---|---|
| Configurações | ~/.claude/settings.json | .claude/settings.json | .claude/settings.local.json |
| Subagents | ~/.claude/agents/ | .claude/agents/ | — |
| MCP servers | ~/.claude.json | .mcp.json | ~/.claude.json (por projeto) |
| Plugins | ~/.claude/settings.json | .claude/settings.json | .claude/settings.local.json |
| CLAUDE.md | ~/.claude/CLAUDE.md | CLAUDE.md ou .claude/CLAUDE.md | CLAUDE.local.md |
Arquivos de configuração
O arquivosettings.json é nosso mecanismo oficial para configurar o Claude
Code através de configurações hierárquicas:
-
Configurações do usuário são definidas em
~/.claude/settings.jsone se aplicam a todos os projetos. -
Configurações do projeto são salvas no diretório do seu projeto:
.claude/settings.jsonpara configurações que são verificadas no controle de origem e compartilhadas com sua equipe.claude/settings.local.jsonpara configurações que não são verificadas, úteis para preferências pessoais e experimentação. O Claude Code configurará o git para ignorar.claude/settings.local.jsonquando for criado.
-
Configurações gerenciadas: Para organizações que precisam de controle centralizado, o Claude Code suporta múltiplos mecanismos de entrega para configurações gerenciadas. Todos usam o mesmo formato JSON e não podem ser substituídos por configurações de usuário ou projeto:
- Configurações gerenciadas pelo servidor: entregues dos servidores da Anthropic através do console de administração do Claude.ai. Veja configurações gerenciadas pelo servidor.
- Políticas MDM/nível do SO: entregues através do gerenciamento nativo de dispositivos no macOS e Windows:
- macOS: domínio de preferências gerenciadas
com.anthropic.claudecode(implantado através de perfis de configuração no Jamf, Kandji ou outras ferramentas MDM) - Windows: chave de registro
HKLM\SOFTWARE\Policies\ClaudeCodecom um valorSettings(REG_SZ ou REG_EXPAND_SZ) contendo JSON (implantado através de Política de Grupo ou Intune) - Windows (nível de usuário):
HKCU\SOFTWARE\Policies\ClaudeCode(prioridade de política mais baixa, usada apenas quando nenhuma fonte de nível de administrador existe)
- macOS: domínio de preferências gerenciadas
- Baseado em arquivo:
managed-settings.jsonemanaged-mcp.jsonimplantados em diretórios do sistema:- macOS:
/Library/Application Support/ClaudeCode/ - Linux e WSL:
/etc/claude-code/ - Windows:
C:\Program Files\ClaudeCode\
- macOS:
Implantações gerenciadas também podem restringir adições do marketplace de plugins usandostrictKnownMarketplaces. Para mais informações, veja Restrições de marketplace gerenciado. -
Outra configuração é armazenada em
~/.claude.json. Este arquivo contém suas preferências (tema, configurações de notificação, modo de editor), sessão OAuth, configurações de MCP server para escopos de usuário e local, estado por projeto (ferramentas permitidas, configurações de confiança) e vários caches. MCP servers com escopo de projeto são armazenados separadamente em.mcp.json.
O Claude Code cria automaticamente backups com timestamp dos arquivos de configuração e retém os cinco backups mais recentes para evitar perda de dados.
Exemplo settings.json
$schema no exemplo acima aponta para o esquema JSON oficial para configurações do Claude Code. Adicioná-la ao seu settings.json ativa o preenchimento automático e validação inline no VS Code, Cursor e qualquer outro editor que suporte validação de esquema JSON.
Configurações disponíveis
settings.json suporta várias opções:
| Chave | Descrição | Exemplo |
|---|---|---|
apiKeyHelper | Script personalizado, a ser executado em /bin/sh, para gerar um valor de autenticação. Este valor será enviado como cabeçalhos X-Api-Key e Authorization: Bearer para solicitações de modelo | /bin/generate_temp_api_key.sh |
cleanupPeriodDays | Sessões inativas por mais tempo que este período são deletadas na inicialização. Definir como 0 deleta imediatamente todas as sessões. (padrão: 30 dias) | 20 |
companyAnnouncements | Anúncio a ser exibido aos usuários na inicialização. Se múltiplos anúncios forem fornecidos, eles serão alternados aleatoriamente. | ["Welcome to Acme Corp! Review our code guidelines at docs.acme.com"] |
env | Variáveis de ambiente que serão aplicadas a cada sessão | {"FOO": "bar"} |
attribution | Personalizar atribuição para commits git e pull requests. Veja Configurações de atribuição | {"commit": "🤖 Generated with Claude Code", "pr": ""} |
includeCoAuthoredBy | Descontinuado: Use attribution em vez disso. Se deve incluir a linha co-authored-by Claude em commits git e pull requests (padrão: true) | false |
permissions | Veja a tabela abaixo para a estrutura de permissões. | |
hooks | Configure comandos personalizados para executar em eventos do ciclo de vida. Veja documentação de hooks para formato | Veja hooks |
disableAllHooks | Desabilite todos os hooks e qualquer linha de status personalizada | true |
allowManagedHooksOnly | (Apenas configurações gerenciadas) Impeça o carregamento de hooks de usuário, projeto e plugin. Apenas permite hooks gerenciados e hooks SDK. Veja Configuração de hooks | true |
allowedHttpHookUrls | Lista de permissões de padrões de URL que hooks HTTP podem almejar. Suporta * como curinga. Quando definido, hooks com URLs não correspondentes são bloqueados. Indefinido = sem restrição, array vazio = bloquear todos os hooks HTTP. Arrays são mesclados entre fontes de configuração. Veja Configuração de hooks | ["https://hooks.example.com/*"] |
httpHookAllowedEnvVars | Lista de permissões de nomes de variáveis de ambiente que hooks HTTP podem interpolar em cabeçalhos. Quando definido, o allowedEnvVars efetivo de cada hook é a interseção com esta lista. Indefinido = sem restrição. Arrays são mesclados entre fontes de configuração. Veja Configuração de hooks | ["MY_TOKEN", "HOOK_SECRET"] |
allowManagedPermissionRulesOnly | (Apenas configurações gerenciadas) Impeça que configurações de usuário e projeto definam regras de permissão allow, ask ou deny. Apenas regras em configurações gerenciadas se aplicam. Veja Configurações apenas gerenciadas | true |
allowManagedMcpServersOnly | (Apenas configurações gerenciadas) Apenas allowedMcpServers de configurações gerenciadas são respeitados. deniedMcpServers ainda é mesclado de todas as fontes. Os usuários ainda podem adicionar MCP servers, mas apenas a lista de permissões definida pelo administrador se aplica. Veja Configuração MCP gerenciada | true |
model | Substitua o modelo padrão a ser usado para Claude Code | "claude-sonnet-4-6" |
availableModels | Restrinja quais modelos os usuários podem selecionar via /model, --model, ferramenta Config ou ANTHROPIC_MODEL. Não afeta a opção Padrão. Veja Restringir seleção de modelo | ["sonnet", "haiku"] |
otelHeadersHelper | Script para gerar cabeçalhos OpenTelemetry dinâmicos. Executa na inicialização e periodicamente (veja Cabeçalhos dinâmicos) | /bin/generate_otel_headers.sh |
statusLine | Configure uma linha de status personalizada para exibir contexto. Veja documentação de statusLine | {"type": "command", "command": "~/.claude/statusline.sh"} |
fileSuggestion | Configure um script personalizado para preenchimento automático de arquivo @. Veja Configurações de sugestão de arquivo | {"type": "command", "command": "~/.claude/file-suggestion.sh"} |
respectGitignore | Controle se o seletor de arquivo @ respeita padrões .gitignore. Quando true (padrão), arquivos que correspondem aos padrões .gitignore são excluídos das sugestões | false |
outputStyle | Configure um estilo de saída para ajustar o prompt do sistema. Veja documentação de estilos de saída | "Explanatory" |
forceLoginMethod | Use claudeai para restringir login a contas Claude.ai, console para restringir login a contas Claude Console (faturamento de uso de API) | claudeai |
forceLoginOrgUUID | Especifique o UUID de uma organização para selecioná-la automaticamente durante o login, contornando a etapa de seleção de organização. Requer que forceLoginMethod seja definido | "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" |
enableAllProjectMcpServers | Aprove automaticamente todos os MCP servers definidos em arquivos .mcp.json do projeto | true |
enabledMcpjsonServers | Lista de MCP servers específicos de arquivos .mcp.json para aprovar | ["memory", "github"] |
disabledMcpjsonServers | Lista de MCP servers específicos de arquivos .mcp.json para rejeitar | ["filesystem"] |
allowedMcpServers | Quando definido em managed-settings.json, lista de permissões de MCP servers que os usuários podem configurar. Indefinido = sem restrições, array vazio = bloqueio. Se aplica a todos os escopos. A lista de negação tem precedência. Veja Configuração MCP gerenciada | [{ "serverName": "github" }] |
deniedMcpServers | Quando definido em managed-settings.json, lista de negação de MCP servers que são explicitamente bloqueados. Se aplica a todos os escopos, incluindo servers gerenciados. A lista de negação tem precedência sobre a lista de permissões. Veja Configuração MCP gerenciada | [{ "serverName": "filesystem" }] |
strictKnownMarketplaces | Quando definido em managed-settings.json, lista de permissões de marketplaces de plugin que os usuários podem adicionar. Indefinido = sem restrições, array vazio = bloqueio. Se aplica apenas a adições de marketplace. Veja Restrições de marketplace gerenciado | [{ "source": "github", "repo": "acme-corp/plugins" }] |
blockedMarketplaces | (Apenas configurações gerenciadas) Lista de negação de fontes de marketplace. Fontes bloqueadas são verificadas antes do download, então nunca tocam o sistema de arquivos. Veja Restrições de marketplace gerenciado | [{ "source": "github", "repo": "untrusted/plugins" }] |
awsAuthRefresh | Script personalizado que modifica o diretório .aws (veja configuração avançada de credenciais) | aws sso login --profile myprofile |
awsCredentialExport | Script personalizado que gera JSON com credenciais AWS (veja configuração avançada de credenciais) | /bin/generate_aws_grant.sh |
alwaysThinkingEnabled | Habilite pensamento estendido por padrão para todas as sessões. Normalmente configurado através do comando /config em vez de editar diretamente | true |
plansDirectory | Personalize onde os arquivos de plano são armazenados. O caminho é relativo à raiz do projeto. Padrão: ~/.claude/plans | "./plans" |
showTurnDuration | Mostre mensagens de duração de turno após respostas (por exemplo, “Cooked for 1m 6s”). Defina como false para ocultar essas mensagens | true |
spinnerVerbs | Personalize os verbos de ação mostrados no spinner e mensagens de duração de turno. Defina mode como "replace" para usar apenas seus verbos, ou "append" para adicioná-los aos padrões | {"mode": "append", "verbs": ["Pondering", "Crafting"]} |
language | Configure o idioma de resposta preferido do Claude (por exemplo, "japanese", "spanish", "french"). Claude responderá neste idioma por padrão | "japanese" |
autoUpdatesChannel | Canal de lançamento a seguir para atualizações. Use "stable" para uma versão que é tipicamente cerca de uma semana antiga e pula versões com regressões maiores, ou "latest" (padrão) para o lançamento mais recente | "stable" |
spinnerTipsEnabled | Mostre dicas no spinner enquanto Claude está trabalhando. Defina como false para desabilitar dicas (padrão: true) | false |
spinnerTipsOverride | Substitua dicas do spinner com strings personalizadas. tips: array de strings de dica. excludeDefault: se true, mostre apenas dicas personalizadas; se false ou ausente, dicas personalizadas são mescladas com dicas integradas | { "excludeDefault": true, "tips": ["Use our internal tool X"] } |
terminalProgressBarEnabled | Habilite a barra de progresso do terminal que mostra progresso em terminais suportados como Windows Terminal e iTerm2 (padrão: true) | false |
prefersReducedMotion | Reduza ou desabilite animações da UI (spinners, shimmer, efeitos de flash) para acessibilidade | true |
fastModePerSessionOptIn | Quando true, o modo rápido não persiste entre sessões. Cada sessão começa com o modo rápido desligado, exigindo que os usuários o habilitem com /fast. A preferência de modo rápido do usuário ainda é salva. Veja Exigir opt-in por sessão | true |
teammateMode | Como agent team companheiros de equipe são exibidos: auto (escolhe painéis divididos em tmux ou iTerm2, em processo caso contrário), in-process ou tmux. Veja configurar agent teams | "in-process" |
Configurações de permissão
| Chaves | Descrição | Exemplo |
|---|---|---|
allow | Array de regras de permissão para permitir uso de ferramenta. Veja Sintaxe de regra de permissão abaixo para detalhes de correspondência de padrão | [ "Bash(git diff *)" ] |
ask | Array de regras de permissão para pedir confirmação ao usar ferramenta. Veja Sintaxe de regra de permissão abaixo | [ "Bash(git push *)" ] |
deny | Array de regras de permissão para negar uso de ferramenta. Use isto para excluir arquivos sensíveis do acesso do Claude Code. Veja Sintaxe de regra de permissão e Limitações de permissão Bash | [ "WebFetch", "Bash(curl *)", "Read(./.env)", "Read(./secrets/**)" ] |
additionalDirectories | Diretórios de trabalho adicionais aos quais Claude tem acesso | [ "../docs/" ] |
defaultMode | Modo de permissão padrão ao abrir Claude Code | "acceptEdits" |
disableBypassPermissionsMode | Defina como "disable" para impedir que o modo bypassPermissions seja ativado. Isto desabilita a flag de linha de comando --dangerously-skip-permissions. Veja configurações gerenciadas | "disable" |
Sintaxe de regra de permissão
Regras de permissão seguem o formatoTool ou Tool(specifier). As regras são avaliadas em ordem: regras de negação primeiro, depois ask, depois allow. A primeira regra correspondente vence.
Exemplos rápidos:
| Regra | Efeito |
|---|---|
Bash | Corresponde a todos os comandos Bash |
Bash(npm run *) | Corresponde a comandos começando com npm run |
Read(./.env) | Corresponde à leitura do arquivo .env |
WebFetch(domain:example.com) | Corresponde a solicitações de fetch para example.com |
Configurações de sandbox
Configure comportamento avançado de sandboxing. Sandboxing isola comandos bash do seu sistema de arquivos e rede. Veja Sandboxing para detalhes.| Chaves | Descrição | Exemplo |
|---|---|---|
enabled | Habilite sandboxing bash (macOS, Linux e WSL2). Padrão: false | true |
autoAllowBashIfSandboxed | Aprove automaticamente comandos bash quando sandboxed. Padrão: true | true |
excludedCommands | Comandos que devem ser executados fora do sandbox | ["git", "docker"] |
allowUnsandboxedCommands | Permita que comandos sejam executados fora do sandbox através do parâmetro dangerouslyDisableSandbox. Quando definido como false, a escotilha de escape dangerouslyDisableSandbox é completamente desabilitada e todos os comandos devem ser sandboxed (ou estar em excludedCommands). Útil para políticas empresariais que exigem sandboxing rigoroso. Padrão: true | false |
filesystem.allowWrite | Caminhos adicionais onde comandos sandboxed podem escrever. Arrays são mesclados em todos os escopos de configuração: caminhos de usuário, projeto e gerenciados são combinados, não substituídos. Também mesclado com caminhos de regras de permissão Edit(...) allow. Veja prefixos de caminho de sandbox abaixo. | ["//tmp/build", "~/.kube"] |
filesystem.denyWrite | Caminhos onde comandos sandboxed não podem escrever. Arrays são mesclados em todos os escopos de configuração. Também mesclado com caminhos de regras de permissão Edit(...) deny. | ["//etc", "//usr/local/bin"] |
filesystem.denyRead | Caminhos onde comandos sandboxed não podem ler. Arrays são mesclados em todos os escopos de configuração. Também mesclado com caminhos de regras de permissão Read(...) deny. | ["~/.aws/credentials"] |
network.allowUnixSockets | Caminhos de socket Unix acessíveis no sandbox (para agentes SSH, etc.) | ["~/.ssh/agent-socket"] |
network.allowAllUnixSockets | Permita todas as conexões de socket Unix no sandbox. Padrão: false | true |
network.allowLocalBinding | Permita vinculação a portas localhost (apenas macOS). Padrão: false | true |
network.allowedDomains | Array de domínios para permitir tráfego de rede de saída. Suporta curingas (por exemplo, *.example.com). | ["github.com", "*.npmjs.org"] |
network.allowManagedDomainsOnly | (Apenas configurações gerenciadas) Apenas allowedDomains e regras allow WebFetch(domain:...) de configurações gerenciadas são respeitadas. Domínios de configurações de usuário, projeto e local são ignorados. Domínios não permitidos são bloqueados automaticamente sem solicitar ao usuário. Domínios negados ainda são respeitados de todas as fontes. Padrão: false | true |
network.httpProxyPort | Porta de proxy HTTP usada se você deseja trazer seu próprio proxy. Se não especificado, Claude executará seu próprio proxy. | 8080 |
network.socksProxyPort | Porta de proxy SOCKS5 usada se você deseja trazer seu próprio proxy. Se não especificado, Claude executará seu próprio proxy. | 8081 |
enableWeakerNestedSandbox | Habilite sandbox mais fraco para ambientes Docker sem privilégios (apenas Linux e WSL2). Reduz segurança. Padrão: false | true |
Prefixos de caminho de sandbox
Caminhos emfilesystem.allowWrite, filesystem.denyWrite e filesystem.denyRead suportam estes prefixos:
| Prefixo | Significado | Exemplo |
|---|---|---|
// | Caminho absoluto da raiz do sistema de arquivos | //tmp/build se torna /tmp/build |
~/ | Relativo ao diretório home | ~/.kube se torna $HOME/.kube |
/ | Relativo ao diretório do arquivo de configuração | /build se torna $SETTINGS_DIR/build |
./ ou sem prefixo | Caminho relativo (resolvido pelo runtime do sandbox) | ./output |
- Configurações
sandbox.filesystem(mostradas acima): Controlam caminhos no limite do sandbox em nível do SO. Estas restrições se aplicam a todos os comandos de subprocesso (por exemplo,kubectl,terraform,npm), não apenas às ferramentas de arquivo do Claude. - Regras de permissão: Use regras allow/deny
Editpara controlar acesso à ferramenta de arquivo do Claude, regras denyReadpara bloquear leituras e regras allow/denyWebFetchpara controlar domínios de rede. Caminhos destas regras também são mesclados na configuração do sandbox.
Configurações de atribuição
O Claude Code adiciona atribuição a commits git e pull requests. Estas são configuradas separadamente:- Commits usam git trailers (como
Co-Authored-By) por padrão, que podem ser personalizados ou desabilitados - Descrições de pull request são texto simples
| Chaves | Descrição |
|---|---|
commit | Atribuição para commits git, incluindo qualquer trailer. String vazia oculta atribuição de commit |
pr | Atribuição para descrições de pull request. String vazia oculta atribuição de pull request |
A configuração
attribution tem precedência sobre a configuração descontinuada includeCoAuthoredBy. Para ocultar toda atribuição, defina commit e pr como strings vazias.Configurações de sugestão de arquivo
Configure um comando personalizado para preenchimento automático de caminho de arquivo@. A sugestão de arquivo integrada usa travessia rápida do sistema de arquivos, mas grandes monorepos podem se beneficiar de indexação específica do projeto, como um índice de arquivo pré-construído ou ferramentas personalizadas.
CLAUDE_PROJECT_DIR. Ele recebe JSON via stdin com um campo query:
Configuração de hooks
Estas configurações controlam quais hooks são permitidos executar e o que hooks HTTP podem acessar. A configuraçãoallowManagedHooksOnly pode ser configurada apenas em configurações gerenciadas. As listas de permissões de URL e variável de ambiente podem ser definidas em qualquer nível de configuração e são mescladas entre fontes.
Comportamento quando allowManagedHooksOnly é true:
- Hooks gerenciados e hooks SDK são carregados
- Hooks de usuário, hooks de projeto e hooks de plugin são bloqueados
* como curinga para correspondência. Quando o array é definido, hooks HTTP que almejam URLs não correspondentes são silenciosamente bloqueados.
allowedEnvVars efetivo de cada hook é a interseção de sua própria lista e esta configuração.
Precedência de configurações
As configurações se aplicam em ordem de precedência. De mais alto para mais baixo:-
Configurações gerenciadas (gerenciadas pelo servidor, políticas MDM/nível do SO ou configurações gerenciadas)
- Políticas implantadas por TI através de entrega de servidor, perfis de configuração MDM, políticas de registro ou arquivos de configuração gerenciados
- Não podem ser substituídas por configurações de usuário ou projeto
- Dentro do nível gerenciado, a precedência é: gerenciadas pelo servidor > políticas MDM/nível do SO >
managed-settings.json> registro HKCU (apenas Windows). Apenas uma fonte gerenciada é usada; fontes não são mescladas.
-
Argumentos de linha de comando
- Substituições temporárias para uma sessão específica
-
Configurações de projeto local (
.claude/settings.local.json)- Configurações pessoais específicas do projeto
-
Configurações de projeto compartilhadas (
.claude/settings.json)- Configurações de projeto compartilhadas pela equipe no controle de origem
-
Configurações do usuário (
~/.claude/settings.json)- Configurações globais pessoais
Bash(npm run *) mas as configurações compartilhadas do projeto negam, a configuração do projeto tem precedência e o comando é bloqueado.
Configurações de array são mescladas entre escopos. Quando a mesma configuração com valor de array (como
sandbox.filesystem.allowWrite ou permissions.allow) aparece em múltiplos escopos, os arrays são concatenados e desduplicados, não substituídos. Isto significa que escopos de prioridade mais baixa podem adicionar entradas sem substituir aquelas definidas por escopos de prioridade mais alta, e vice-versa. Por exemplo, se configurações gerenciadas definem allowWrite como ["//opt/company-tools"] e um usuário adiciona ["~/.kube"], ambos os caminhos são incluídos na configuração final.Verificar configurações ativas
Execute/status dentro do Claude Code para ver quais fontes de configuração estão ativas e de onde vêm. A saída mostra cada camada de configuração (gerenciada, usuário, projeto) junto com sua origem, como Enterprise managed settings (remote), Enterprise managed settings (plist), Enterprise managed settings (HKLM) ou Enterprise managed settings (file). Se um arquivo de configuração contiver erros, /status relata o problema para que você possa corrigi-lo.
Pontos-chave sobre o sistema de configuração
- Arquivos de memória (
CLAUDE.md): Contêm instruções e contexto que Claude carrega na inicialização - Arquivos de configuração (JSON): Configuram permissões, variáveis de ambiente e comportamento de ferramenta
- Skills: Prompts personalizados que podem ser invocados com
/skill-nameou carregados automaticamente pelo Claude - MCP servers: Estendem Claude Code com ferramentas e integrações adicionais
- Precedência: Configurações de nível superior (Gerenciadas) substituem as de nível inferior (Usuário/Projeto)
- Herança: Configurações são mescladas, com configurações mais específicas adicionando ou substituindo as mais amplas
Prompt do sistema
O prompt do sistema interno do Claude Code não é publicado. Para adicionar instruções personalizadas, use arquivosCLAUDE.md ou a flag --append-system-prompt.
Excluindo arquivos sensíveis
Para impedir que Claude Code acesse arquivos contendo informações sensíveis como chaves de API, segredos e arquivos de ambiente, use a configuraçãopermissions.deny em seu arquivo .claude/settings.json:
ignorePatterns. Arquivos que correspondem a estes padrões são excluídos da descoberta de arquivo e resultados de busca, e operações de leitura nestes arquivos são negadas.
Configuração de subagent
O Claude Code suporta subagents de IA personalizados que podem ser configurados em níveis de usuário e projeto. Estes subagents são armazenados como arquivos Markdown com frontmatter YAML:- Subagents de usuário:
~/.claude/agents/- Disponíveis em todos os seus projetos - Subagents de projeto:
.claude/agents/- Específicos do seu projeto e podem ser compartilhados com sua equipe
Configuração de plugin
O Claude Code suporta um sistema de plugin que permite estender funcionalidade com skills, agents, hooks e MCP servers. Plugins são distribuídos através de marketplaces e podem ser configurados em níveis de usuário e repositório.Configurações de plugin
Configurações relacionadas a plugin emsettings.json:
enabledPlugins
Controla quais plugins estão habilitados. Formato: "plugin-name@marketplace-name": true/false
Escopos:
- Configurações de usuário (
~/.claude/settings.json): Preferências pessoais de plugin - Configurações de projeto (
.claude/settings.json): Plugins específicos do projeto compartilhados com equipe - Configurações locais (
.claude/settings.local.json): Substituições por máquina (não confirmadas)
extraKnownMarketplaces
Define marketplaces adicionais que devem ser disponibilizados para o repositório. Normalmente usado em configurações em nível de repositório para garantir que membros da equipe tenham acesso a fontes de plugin necessárias.
Quando um repositório inclui extraKnownMarketplaces:
- Membros da equipe são solicitados a instalar o marketplace quando confiam na pasta
- Membros da equipe são então solicitados a instalar plugins daquele marketplace
- Os usuários podem pular marketplaces ou plugins indesejados (armazenados em configurações de usuário)
- A instalação respeita limites de confiança e requer consentimento explícito
github: Repositório GitHub (usarepo)git: Qualquer URL git (usaurl)directory: Caminho do sistema de arquivos local (usapath, apenas para desenvolvimento)hostPattern: Padrão regex para corresponder hosts de marketplace (usahostPattern)
strictKnownMarketplaces
Apenas configurações gerenciadas: Controla quais marketplaces de plugin os usuários podem adicionar. Esta configuração pode ser configurada apenas em configurações gerenciadas e fornece aos administradores controle rigoroso sobre fontes de marketplace.
Localizações de arquivo de configurações gerenciadas:
- macOS:
/Library/Application Support/ClaudeCode/managed-settings.json - Linux e WSL:
/etc/claude-code/managed-settings.json - Windows:
C:\Program Files\ClaudeCode\managed-settings.json
- Disponível apenas em configurações gerenciadas (
managed-settings.json) - Não pode ser substituído por configurações de usuário ou projeto (precedência mais alta)
- Aplicado ANTES de operações de rede/sistema de arquivos (fontes bloqueadas nunca executam)
- Usa correspondência exata para especificações de fonte (incluindo
ref,pathpara fontes git), excetohostPattern, que usa correspondência regex
undefined(padrão): Sem restrições - usuários podem adicionar qualquer marketplace- Array vazio
[]: Bloqueio completo - usuários não podem adicionar novos marketplaces - Lista de fontes: Usuários podem adicionar apenas marketplaces que correspondem exatamente
hostPattern usa correspondência regex contra o host do marketplace.
- Repositórios GitHub:
repo (obrigatório), ref (opcional: branch/tag/SHA), path (opcional: subdiretório)
- Repositórios Git:
url (obrigatório), ref (opcional: branch/tag/SHA), path (opcional: subdiretório)
- Marketplaces baseados em URL:
url (obrigatório), headers (opcional: cabeçalhos HTTP para acesso autenticado)
Marketplaces baseados em URL apenas baixam o arquivo
marketplace.json. Eles não baixam arquivos de plugin do servidor. Plugins em marketplaces baseados em URL devem usar fontes externas (URLs GitHub, npm ou git) em vez de caminhos relativos. Para plugins com caminhos relativos, use um marketplace baseado em Git. Veja Troubleshooting para detalhes.- Pacotes NPM:
package (obrigatório, suporta pacotes com escopo)
- Caminhos de arquivo:
path (obrigatório: caminho absoluto para arquivo marketplace.json)
- Caminhos de diretório:
path (obrigatório: caminho absoluto para diretório contendo .claude-plugin/marketplace.json)
- Correspondência de padrão de host:
hostPattern (obrigatório: padrão regex para corresponder contra o host do marketplace)
Use correspondência de padrão de host quando você deseja permitir todos os marketplaces de um host específico sem enumerar cada repositório individualmente. Isto é útil para organizações com servidores GitHub Enterprise ou GitLab internos onde desenvolvedores criam seus próprios marketplaces.
Extração de host por tipo de fonte:
github: sempre corresponde contragithub.comgit: extrai nome de host da URL (suporta formatos HTTPS e SSH)url: extrai nome de host da URLnpm,file,directory: não suportado para correspondência de padrão de host
github e git), isto inclui todos os campos opcionais:
- O
repoouurldeve corresponder exatamente - O campo
refdeve corresponder exatamente (ou ambos serem indefinidos) - O campo
pathdeve corresponder exatamente (ou ambos serem indefinidos)
extraKnownMarketplaces:
| Aspecto | strictKnownMarketplaces | extraKnownMarketplaces |
|---|---|---|
| Propósito | Aplicação de política organizacional | Conveniência da equipe |
| Arquivo de configuração | managed-settings.json apenas | Qualquer arquivo de configuração |
| Comportamento | Bloqueia adições não permitidas | Auto-instala marketplaces faltantes |
| Quando aplicado | Antes de operações de rede/sistema de arquivos | Após prompt de confiança do usuário |
| Pode ser substituído | Não (precedência mais alta) | Sim (por configurações de precedência mais alta) |
| Formato de fonte | Objeto de fonte direto | Marketplace nomeado com fonte aninhada |
| Caso de uso | Conformidade, restrições de segurança | Onboarding, padronização |
strictKnownMarketplaces usa objetos de fonte diretos:
extraKnownMarketplaces requer marketplaces nomeados:
- Restrições são verificadas ANTES de qualquer solicitação de rede ou operação de sistema de arquivos
- Quando bloqueado, os usuários veem mensagens de erro claras indicando que a fonte é bloqueada por política gerenciada
- A restrição se aplica apenas à adição de NOVOS marketplaces; marketplaces previamente instalados permanecem acessíveis
- Configurações gerenciadas têm a precedência mais alta e não podem ser substituídas
Gerenciando plugins
Use o comando/plugin para gerenciar plugins interativamente:
- Procure plugins disponíveis de marketplaces
- Instale/desinstale plugins
- Habilite/desabilite plugins
- Veja detalhes de plugin (comandos, agents, hooks fornecidos)
- Adicione/remova marketplaces
Variáveis de ambiente
O Claude Code suporta as seguintes variáveis de ambiente para controlar seu comportamento:Todas as variáveis de ambiente também podem ser configuradas em
settings.json. Isto é útil como forma de definir automaticamente variáveis de ambiente para cada sessão, ou para distribuir um conjunto de variáveis de ambiente para toda sua equipe ou organização.| Variável | Propósito | |
|---|---|---|
ANTHROPIC_API_KEY | Chave de API enviada como cabeçalho X-Api-Key, normalmente para o SDK Claude (para uso interativo, execute /login) | |
ANTHROPIC_AUTH_TOKEN | Valor personalizado para o cabeçalho Authorization (o valor que você definir aqui será prefixado com Bearer ) | |
ANTHROPIC_CUSTOM_HEADERS | Cabeçalhos personalizados para adicionar a solicitações (formato Name: Value, separados por nova linha para múltiplos cabeçalhos) | |
ANTHROPIC_DEFAULT_HAIKU_MODEL | Veja Configuração de modelo | |
ANTHROPIC_DEFAULT_OPUS_MODEL | Veja Configuração de modelo | |
ANTHROPIC_DEFAULT_SONNET_MODEL | Veja Configuração de modelo | |
ANTHROPIC_FOUNDRY_API_KEY | Chave de API para autenticação Microsoft Foundry (veja Microsoft Foundry) | |
ANTHROPIC_FOUNDRY_BASE_URL | URL base completa para o recurso Foundry (por exemplo, https://my-resource.services.ai.azure.com/anthropic). Alternativa a ANTHROPIC_FOUNDRY_RESOURCE (veja Microsoft Foundry) | |
ANTHROPIC_FOUNDRY_RESOURCE | Nome do recurso Foundry (por exemplo, my-resource). Obrigatório se ANTHROPIC_FOUNDRY_BASE_URL não for definido (veja Microsoft Foundry) | |
ANTHROPIC_MODEL | Nome da configuração de modelo a usar (veja Configuração de modelo) | |
ANTHROPIC_SMALL_FAST_MODEL | [DESCONTINUADO] Nome de modelo classe Haiku para tarefas em background | |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION | Substitua a região AWS para o modelo classe Haiku ao usar Bedrock | |
AWS_BEARER_TOKEN_BEDROCK | Chave de API Bedrock para autenticação (veja Chaves de API Bedrock) | |
BASH_DEFAULT_TIMEOUT_MS | Timeout padrão para comandos bash de longa duração | |
BASH_MAX_OUTPUT_LENGTH | Número máximo de caracteres em saídas bash antes de serem truncadas no meio | |
BASH_MAX_TIMEOUT_MS | Timeout máximo que o modelo pode definir para comandos bash de longa duração | |
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE | Defina a porcentagem de capacidade de contexto (1-100) na qual auto-compactação é acionada. Por padrão, auto-compactação é acionada em aproximadamente 95% de capacidade. Use valores mais baixos como 50 para compactar mais cedo. Valores acima do limite padrão não têm efeito. Se aplica a conversas principais e subagents. Esta porcentagem se alinha com o campo context_window.used_percentage disponível em linha de status | |
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR | Retorne ao diretório de trabalho original após cada comando Bash | |
CLAUDE_CODE_ACCOUNT_UUID | UUID da conta para o usuário autenticado. Usado por chamadores SDK para fornecer informações de conta sincronamente, evitando uma condição de corrida onde eventos de telemetria antigos carecem de metadados de conta. Requer que CLAUDE_CODE_USER_EMAIL e CLAUDE_CODE_ORGANIZATION_UUID também sejam definidos | |
CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD | Defina como 1 para carregar arquivos CLAUDE.md de diretórios especificados com --add-dir. Por padrão, diretórios adicionais não carregam arquivos de memória | 1 |
CLAUDE_CODE_API_KEY_HELPER_TTL_MS | Intervalo em milissegundos no qual credenciais devem ser atualizadas (ao usar apiKeyHelper) | |
CLAUDE_CODE_CLIENT_CERT | Caminho para arquivo de certificado de cliente para autenticação mTLS | |
CLAUDE_CODE_CLIENT_KEY | Caminho para arquivo de chave privada de cliente para autenticação mTLS | |
CLAUDE_CODE_CLIENT_KEY_PASSPHRASE | Frase de senha para CLAUDE_CODE_CLIENT_KEY criptografado (opcional) | |
CLAUDE_CODE_DISABLE_1M_CONTEXT | Defina como 1 para desabilitar suporte a janela de contexto de 1M. Quando definido, variantes de modelo 1M não estão disponíveis no seletor de modelo. Útil para ambientes empresariais com requisitos de conformidade | |
CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING | Defina como 1 para desabilitar raciocínio adaptativo para Opus 4.6 e Sonnet 4.6. Quando desabilitado, estes modelos voltam ao orçamento de pensamento fixo controlado por MAX_THINKING_TOKENS | |
CLAUDE_CODE_DISABLE_AUTO_MEMORY | Defina como 1 para desabilitar memória automática. Defina como 0 para forçar memória automática durante o rollout gradual. Quando desabilitado, Claude não cria ou carrega arquivos de memória automática | |
CLAUDE_CODE_DISABLE_BACKGROUND_TASKS | Defina como 1 para desabilitar toda funcionalidade de tarefa em background, incluindo o parâmetro run_in_background em ferramentas Bash e subagent, auto-backgrounding e o atalho Ctrl+B | |
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS | Defina como 1 para desabilitar cabeçalhos anthropic-beta específicos da API Anthropic. Use isto se experimentar problemas como “Unexpected value(s) for the anthropic-beta header” ao usar um gateway LLM com provedores de terceiros | |
CLAUDE_CODE_DISABLE_FAST_MODE | Defina como 1 para desabilitar modo rápido | |
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY | Defina como 1 para desabilitar pesquisas de qualidade de sessão “How is Claude doing?”. Também desabilitado ao usar provedores de terceiros ou quando telemetria está desabilitada. Veja Pesquisas de qualidade de sessão | |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | Equivalente a definir DISABLE_AUTOUPDATER, DISABLE_BUG_COMMAND, DISABLE_ERROR_REPORTING e DISABLE_TELEMETRY | |
CLAUDE_CODE_DISABLE_TERMINAL_TITLE | Defina como 1 para desabilitar atualizações automáticas de título de terminal baseadas em contexto de conversa | |
CLAUDE_CODE_EFFORT_LEVEL | Defina o nível de esforço para modelos suportados. Valores: low, medium, high. Esforço mais baixo é mais rápido e barato, esforço mais alto fornece raciocínio mais profundo. Suportado em Opus 4.6 e Sonnet 4.6. Veja Ajustar nível de esforço | |
CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION | Defina como false para desabilitar sugestões de prompt (o toggle “Prompt suggestions” em /config). Estas são as previsões acinzentadas que aparecem em sua entrada de prompt após Claude responder. Veja Sugestões de prompt | |
CLAUDE_CODE_ENABLE_TASKS | Defina como false para reverter temporariamente para a lista TODO anterior em vez do sistema de rastreamento de tarefas. Padrão: true. Veja Lista de tarefas | |
CLAUDE_CODE_ENABLE_TELEMETRY | Defina como 1 para habilitar coleta de dados OpenTelemetry para métricas e logging. Obrigatório antes de configurar exportadores OTel. Veja Monitoramento | |
CLAUDE_CODE_EXIT_AFTER_STOP_DELAY | Tempo em milissegundos para aguardar após o loop de consulta ficar ocioso antes de sair automaticamente. Útil para fluxos de trabalho automatizados e scripts usando modo SDK | |
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS | Defina como 1 para habilitar agent teams. Agent teams são experimentais e desabilitados por padrão | |
CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS | Substitua o limite de token padrão para leituras de arquivo. Útil quando você precisa ler arquivos maiores na íntegra | |
CLAUDE_CODE_HIDE_ACCOUNT_INFO | Defina como 1 para ocultar seu endereço de email e nome da organização da UI do Claude Code. Útil ao fazer streaming ou gravação | |
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL | Pule auto-instalação de extensões IDE | |
CLAUDE_CODE_MAX_OUTPUT_TOKENS | Defina o número máximo de tokens de saída para a maioria das solicitações. Padrão: 32.000. Máximo: 64.000. Aumentar este valor reduz a janela de contexto efetiva disponível antes que auto-compactação seja acionada. | |
CLAUDE_CODE_ORGANIZATION_UUID | UUID da organização para o usuário autenticado. Usado por chamadores SDK para fornecer informações de conta sincronamente. Requer que CLAUDE_CODE_ACCOUNT_UUID e CLAUDE_CODE_USER_EMAIL também sejam definidos | |
CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS | Intervalo para atualizar cabeçalhos OpenTelemetry dinâmicos em milissegundos (padrão: 1740000 / 29 minutos). Veja Cabeçalhos dinâmicos | |
CLAUDE_CODE_PLAN_MODE_REQUIRED | Auto-definido como true em agent team companheiros que exigem aprovação de plano. Somente leitura: definido por Claude Code ao gerar companheiros. Veja exigir aprovação de plano | |
CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS | Timeout em milissegundos para operações git ao instalar ou atualizar plugins (padrão: 120000). Aumente este valor para repositórios grandes ou conexões de rede lentas. Veja Operações Git expiram | |
CLAUDE_CODE_PROXY_RESOLVES_HOSTS | Defina como true para permitir que o proxy execute resolução DNS em vez do chamador. Opt-in para ambientes onde o proxy deve lidar com resolução de nome de host | |
CLAUDE_CODE_SHELL | Substitua detecção automática de shell. Útil quando seu shell de login difere do seu shell de trabalho preferido (por exemplo, bash vs zsh) | |
CLAUDE_CODE_SHELL_PREFIX | Prefixo de comando para envolver todos os comandos bash (por exemplo, para logging ou auditoria). Exemplo: /path/to/logger.sh executará /path/to/logger.sh <command> | |
CLAUDE_CODE_SIMPLE | Defina como 1 para executar com um prompt do sistema mínimo e apenas as ferramentas Bash, leitura de arquivo e edição de arquivo. Desabilita ferramentas MCP, anexos, hooks e arquivos CLAUDE.md | |
CLAUDE_CODE_SKIP_BEDROCK_AUTH | Pule autenticação AWS para Bedrock (por exemplo, ao usar um gateway LLM) | |
CLAUDE_CODE_SKIP_FOUNDRY_AUTH | Pule autenticação Azure para Microsoft Foundry (por exemplo, ao usar um gateway LLM) | |
CLAUDE_CODE_SKIP_VERTEX_AUTH | Pule autenticação Google para Vertex (por exemplo, ao usar um gateway LLM) | |
CLAUDE_CODE_SUBAGENT_MODEL | Veja Configuração de modelo | |
CLAUDE_CODE_TASK_LIST_ID | Compartilhe uma lista de tarefas entre sessões. Defina o mesmo ID em múltiplas instâncias do Claude Code para coordenar em uma lista de tarefas compartilhada. Veja Lista de tarefas | |
CLAUDE_CODE_TEAM_NAME | Nome do agent team ao qual este companheiro pertence. Definido automaticamente em membros de agent team | |
CLAUDE_CODE_TMPDIR | Substitua o diretório temporário usado para arquivos temporários internos. Claude Code acrescenta /claude/ a este caminho. Padrão: /tmp em Unix/macOS, os.tmpdir() em Windows | |
CLAUDE_CODE_USER_EMAIL | Endereço de email para o usuário autenticado. Usado por chamadores SDK para fornecer informações de conta sincronamente. Requer que CLAUDE_CODE_ACCOUNT_UUID e CLAUDE_CODE_ORGANIZATION_UUID também sejam definidos | |
CLAUDE_CODE_USE_BEDROCK | Use Bedrock | |
CLAUDE_CODE_USE_FOUNDRY | Use Microsoft Foundry | |
CLAUDE_CODE_USE_VERTEX | Use Vertex | |
CLAUDE_CONFIG_DIR | Personalize onde Claude Code armazena seus arquivos de configuração e dados | |
DISABLE_AUTOUPDATER | Defina como 1 para desabilitar atualizações automáticas. | |
DISABLE_BUG_COMMAND | Defina como 1 para desabilitar o comando /bug | |
DISABLE_COST_WARNINGS | Defina como 1 para desabilitar mensagens de aviso de custo | |
DISABLE_ERROR_REPORTING | Defina como 1 para optar por não participar de relatório de erro Sentry | |
DISABLE_INSTALLATION_CHECKS | Defina como 1 para desabilitar avisos de instalação. Use apenas ao gerenciar manualmente a localização de instalação, pois isto pode mascarar problemas com instalações padrão | |
DISABLE_NON_ESSENTIAL_MODEL_CALLS | Defina como 1 para desabilitar chamadas de modelo para caminhos não críticos como texto de sabor | |
DISABLE_PROMPT_CACHING | Defina como 1 para desabilitar cache de prompt para todos os modelos (tem precedência sobre configurações por modelo) | |
DISABLE_PROMPT_CACHING_HAIKU | Defina como 1 para desabilitar cache de prompt para modelos Haiku | |
DISABLE_PROMPT_CACHING_OPUS | Defina como 1 para desabilitar cache de prompt para modelos Opus | |
DISABLE_PROMPT_CACHING_SONNET | Defina como 1 para desabilitar cache de prompt para modelos Sonnet | |
DISABLE_TELEMETRY | Defina como 1 para optar por não participar de telemetria Statsig (note que eventos Statsig não incluem dados de usuário como código, caminhos de arquivo ou comandos bash) | |
ENABLE_CLAUDEAI_MCP_SERVERS | Defina como false para desabilitar MCP servers claude.ai no Claude Code. Habilitado por padrão para usuários conectados | |
ENABLE_TOOL_SEARCH | Controla busca de ferramenta MCP. Valores: auto (padrão, habilita em 10% de contexto), auto:N (limite personalizado, por exemplo, auto:5 para 5%), true (sempre ligado), false (desabilitado) | |
FORCE_AUTOUPDATE_PLUGINS | Defina como true para forçar auto-atualizações de plugin mesmo quando o auto-atualizador principal está desabilitado via DISABLE_AUTOUPDATER | |
HTTP_PROXY | Especifique servidor proxy HTTP para conexões de rede | |
HTTPS_PROXY | Especifique servidor proxy HTTPS para conexões de rede | |
IS_DEMO | Defina como true para habilitar modo demo: oculta email e organização da UI, pula onboarding e oculta comandos internos. Útil para streaming ou gravação de sessões | |
MAX_MCP_OUTPUT_TOKENS | Número máximo de tokens permitidos em respostas de ferramenta MCP. Claude Code exibe um aviso quando a saída excede 10.000 tokens (padrão: 25000) | |
MAX_THINKING_TOKENS | Substitua o orçamento de token de pensamento estendido. Pensamento é habilitado no orçamento máximo (31.999 tokens) por padrão. Use isto para limitar o orçamento (por exemplo, MAX_THINKING_TOKENS=10000) ou desabilitar pensamento completamente (MAX_THINKING_TOKENS=0). Para Opus 4.6, a profundidade de pensamento é controlada por nível de esforço em vez disso, e esta variável é ignorada a menos que definida como 0 para desabilitar pensamento. | |
MCP_CLIENT_SECRET | Segredo de cliente OAuth para MCP servers que exigem credenciais pré-configuradas. Evita o prompt interativo ao adicionar um servidor com --client-secret | |
MCP_OAUTH_CALLBACK_PORT | Porta fixa para o callback de redirecionamento OAuth, como alternativa a --callback-port ao adicionar um MCP server com credenciais pré-configuradas | |
MCP_TIMEOUT | Timeout em milissegundos para inicialização de MCP server | |
MCP_TOOL_TIMEOUT | Timeout em milissegundos para execução de ferramenta MCP | |
NO_PROXY | Lista de domínios e IPs para os quais solicitações serão emitidas diretamente, contornando proxy | |
SLASH_COMMAND_TOOL_CHAR_BUDGET | Substitua o orçamento de caracteres para metadados de skill mostrados à ferramenta Skill. O orçamento escala dinamicamente em 2% da janela de contexto, com fallback de 16.000 caracteres. Nome legado mantido para compatibilidade com versões anteriores | |
USE_BUILTIN_RIPGREP | Defina como 0 para usar rg instalado no sistema em vez de rg incluído com Claude Code | |
VERTEX_REGION_CLAUDE_3_5_HAIKU | Substitua região para Claude 3.5 Haiku ao usar Vertex AI | |
VERTEX_REGION_CLAUDE_3_7_SONNET | Substitua região para Claude 3.7 Sonnet ao usar Vertex AI | |
VERTEX_REGION_CLAUDE_4_0_OPUS | Substitua região para Claude 4.0 Opus ao usar Vertex AI | |
VERTEX_REGION_CLAUDE_4_0_SONNET | Substitua região para Claude 4.0 Sonnet ao usar Vertex AI | |
VERTEX_REGION_CLAUDE_4_1_OPUS | Substitua região para Claude 4.1 Opus ao usar Vertex AI |
Ferramentas disponíveis para Claude
O Claude Code tem acesso a um conjunto de ferramentas poderosas que ajudam a entender e modificar sua base de código:| Ferramenta | Descrição | Permissão Obrigatória |
|---|---|---|
| AskUserQuestion | Faz perguntas de múltipla escolha para reunir requisitos ou esclarecer ambiguidade | Não |
| Bash | Executa comandos shell em seu ambiente (veja Comportamento da ferramenta Bash abaixo) | Sim |
| TaskOutput | Recupera saída de uma tarefa em background (shell bash ou subagent) | Não |
| Edit | Faz edições direcionadas em arquivos específicos | Sim |
| ExitPlanMode | Solicita ao usuário sair do Plan Mode e começar a codificar | Sim |
| Glob | Encontra arquivos baseado em correspondência de padrão | Não |
| Grep | Busca padrões em conteúdo de arquivo | Não |
| KillShell | Mata um shell bash em background em execução pelo seu ID | Não |
| MCPSearch | Busca e carrega ferramentas MCP quando busca de ferramenta está habilitada | Não |
| NotebookEdit | Modifica células de notebook Jupyter | Sim |
| Read | Lê o conteúdo de arquivos | Não |
| Skill | Executa uma skill dentro da conversa principal | Sim |
| Agent | Executa um sub-agent para lidar com tarefas complexas e multi-etapas | Não |
| TaskCreate | Cria uma nova tarefa na lista de tarefas | Não |
| TaskGet | Recupera detalhes completos para uma tarefa específica | Não |
| TaskList | Lista todas as tarefas com seu status atual | Não |
| TaskUpdate | Atualiza status de tarefa, dependências, detalhes ou deleta tarefas | Não |
| WebFetch | Busca conteúdo de uma URL especificada | Sim |
| WebSearch | Realiza buscas web com filtragem de domínio | Sim |
| Write | Cria ou sobrescreve arquivos | Sim |
| LSP | Inteligência de código via servidores de linguagem. Relata erros de tipo e avisos automaticamente após edições de arquivo. Também suporta operações de navegação: pular para definições, encontrar referências, obter informações de tipo, listar símbolos, encontrar implementações, rastrear hierarquias de chamada. Requer um plugin de inteligência de código e seu binário de servidor de linguagem | Não |
/allowed-tools ou em configurações de permissão. Veja também Regras de permissão específicas de ferramenta.
Comportamento da ferramenta Bash
A ferramenta Bash executa comandos shell com o seguinte comportamento de persistência:- Diretório de trabalho persiste: Quando Claude muda o diretório de trabalho (por exemplo,
cd /path/to/dir), comandos Bash subsequentes serão executados naquele diretório. Você pode usarCLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1para resetar ao diretório do projeto após cada comando. - Variáveis de ambiente NÃO persistem: Variáveis de ambiente definidas em um comando Bash (por exemplo,
export MY_VAR=value) não estão disponíveis em comandos Bash subsequentes. Cada comando Bash é executado em um ambiente shell fresco.
/path/to/env-setup.sh contém:
.claude/settings.json:
$CLAUDE_ENV_FILE, que é então fornecido antes de cada comando Bash. Isto é ideal para configurações de projeto compartilhadas pela equipe.
Veja hooks SessionStart para mais detalhes sobre a Opção 3.
Estendendo ferramentas com hooks
Você pode executar comandos personalizados antes ou depois de qualquer ferramenta executar usando hooks do Claude Code. Por exemplo, você poderia executar automaticamente um formatador Python após Claude modificar arquivos Python, ou impedir modificações em arquivos de configuração de produção bloqueando operações Write para certos caminhos.Veja também
- Permissões: sistema de permissões, sintaxe de regra, padrões específicos de ferramenta e políticas gerenciadas
- Autenticação: configure acesso de usuário ao Claude Code
- Troubleshooting: soluções para problemas de configuração comuns