Build This Now
Build This Now
O que é o Código Claude?Instalar o Claude CodeInstalador Nativo do Claude CodeO Teu Primeiro Projeto com Claude Code
Configuração do Claude CodeGuia de Configuração do Terminal para Claude CodeSandbox do Claude CodeReferência de Definições do Claude Code
speedy_devvkoen_salo
Blog/Handbook/Setup/Claude Code Settings Reference

Referência de Definições do Claude Code

Cada chave no settings.json, a lista completa de variáveis de ambiente e a cadeia de precedência de cinco âmbitos que decide qual configuração ganha quando as geridas e as do utilizador colidem.

Pare de configurar. Comece a construir.

Templates SaaS com orquestração de IA.

Published Mar 17, 2026Handbook hubSetup index

Problema: A maior parte do sofrimento com o Claude Code tem uma causa raiz. A tua configuração não está alinhada com a forma como trabalhas. Passas o dia a aprovar comandos bash, os padrões da equipa nunca carregam, ou uma chave que editaste ontem não faz nada.

A solução é conhecer o sistema de definições. Não só as chaves, mas as regras de precedência que escolhem um vencedor quando dois âmbitos discordam.

Vitória Rápida: Coloca uma linha $schema no settings.json e qualquer editor que entenda JSON schema acende com autocomplete e verificações inline. VS Code, Cursor, e tudo o mais com suporte a schema beneficia disso.

A Cadeia de Precedência de Cinco Âmbitos

As definições seguem uma ordem fixa. Conhecê-la é a diferença entre "porque é que a minha alteração não funcionou" e "ah, ficheiro errado."

Precedência de Âmbitos (do Mais Alto ao Mais Baixo)

PrioridadeÂmbitoLocalizaçãoQuem AfetaPartilhado?
1GeridoDiretórios do sistemaTodos os utilizadores na máquinaSim (implementado pelo IT)
2Linha de comandosFlags CLIApenas sessão atualNão
3Local.claude/settings.local.jsonTu, neste projetoNão (no gitignore)
4Projeto.claude/settings.jsonTodos os colaboradoresSim (no git)
5Utilizador~/.claude/settings.jsonTu, todos os projetosNão

Âmbitos mais altos ganham sempre aos mais baixos. Ponto final. Uma regra gerida do IT que bloqueia Bash(curl *) é inalcançável por qualquer ficheiro pessoal ou de projeto.

Escolher o Âmbito Certo

Gerido serve organizações que precisam de regras sem escapatória:

  • Políticas de segurança (bloquear acesso a credenciais, proibir comandos destrutivos)
  • Conformidade que tem de se aplicar a todos os engenheiros e todos os repos
  • Hooks padrão ou configs MCP implementados pelo IT

Linha de comandos lida com substituições pontuais dentro de uma sessão:

  • Experimentar um modelo diferente: claude --model claude-sonnet-4-5-20250929
  • Conceder margem de permissão extra para um trabalho específico
  • Correr com o flag --debug

Local é o teu sandbox privado para um determinado repo:

  • Substituir silenciosamente uma regra de projeto que não se adapta à tua máquina
  • Experimentar um hook antes de o propor à equipa
  • Caminhos únicos desta máquina (onde fica a tua chave SSH, em que porta corre o proxy local)

Projeto é o lugar onde a equipa se alinha:

  • Regras de permissão que todos seguem
  • Hooks partilhados para formatação automática e lint
  • Configs de servidores MCP de que todos os membros precisam
  • Instruções CLAUDE.md que descrevem o projeto

Utilizador são os teus próprios padrões:

  • Língua, tema e o estilo de saída que preferes
  • Plugins que queres em todos os repos
  • Regras de permissão globais (como uma negação geral em ~/.ssh)

Caminhos das Definições Geridas por OS

Os ficheiros geridos precisam de direitos de administrador e ficam fora de qualquer diretório home de utilizador:

Sistema OperativoCaminho
macOS/Library/Application Support/ClaudeCode/
Linux / WSL/etc/claude-code/
WindowsC:\Program Files\ClaudeCode\

Dois ficheiros ficam nessas pastas. managed-settings.json contém as definições, managed-mcp.json contém os servidores MCP.

Cada configuração no Claude Code vive num caminho de ficheiro conhecido em cada âmbito:

FuncionalidadeUtilizadorProjeto (partilhado)Local (pessoal)
Definições~/.claude/settings.json.claude/settings.json.claude/settings.local.json
Subagentes~/.claude/agents/.claude/agents/N/A
Servidores MCP~/.claude.json.mcp.json~/.claude.json (por projeto)
Plugins~/.claude/settings.json.claude/settings.json.claude/settings.local.json
CLAUDE.md~/.claude/CLAUDE.mdCLAUDE.md ou .claude/CLAUDE.mdCLAUDE.local.md

Referência de Definições

Definições Gerais

ChaveDescriçãoPadrãoExemplo
modelSubstitui o modelo padrão(padrão do sistema)"claude-sonnet-4-5-20250929"
languageLíngua de resposta preferida do ClaudeInglês"japanese"
outputStyleAjusta o estilo do system prompt(nenhum)"Explanatory"
cleanupPeriodDaysDias antes de sessões inativas serem eliminadas3020
autoUpdatesChannelCanal de lançamento: "stable" ou "latest""latest""stable"
showTurnDurationMostra o tempo de resposta ("Cooked for 1m 6s")truefalse
spinnerVerbsPersonaliza o texto do spinner(padrões){"mode": "append", "verbs": ["Pondering"]}
spinnerTipsEnabledMostra dicas enquanto o Claude trabalhatruefalse
terminalProgressBarEnabledBarra de progresso no terminal (iTerm2, Windows Terminal)truefalse
alwaysThinkingEnabledAtiva o pensamento extendido por padrãofalsetrue
plansDirectoryOnde os ficheiros de plano são armazenados~/.claude/plans"./plans"
respectGitignoreO seletor de ficheiros @ respeita .gitignoretruefalse
companyAnnouncementsMensagens mostradas no arranque (ciclo aleatório)(nenhum)["Review guidelines at docs.acme.com"]

Definições de Permissões

As chaves abaixo ficam todas dentro do objeto "permissions".

ChaveDescriçãoExemplo
allowRegras para permitir automaticamente o uso de ferramentas["Bash(npm run lint)", "Read(~/.zshrc)"]
askRegras que requerem confirmação["Bash(git push *)"]
denyRegras para bloquear completamente o uso de ferramentas["WebFetch", "Bash(curl *)", "Read(./.env)"]
additionalDirectoriesDiretórios adicionais a que o Claude pode aceder["../docs/", "../shared/"]
defaultModeModo de permissão padrão no arranque"acceptEdits"
disableBypassPermissionsModeBloqueia --dangerously-skip-permissions"disable"

Ordem de avaliação: Deny tem a primeira passagem. Ask é o seguinte. Allow vai por último. A primeira regra que corresponde é a que fica.

Exemplos de sintaxe de regras:

RegraO que Corresponde
BashTodos os comandos Bash
Bash(npm run *)Comandos que começam com npm run
Read(./.env)Leitura do ficheiro .env
Read(./secrets/**)Leitura de qualquer coisa em secrets/
WebFetch(domain:example.com)Pedidos fetch para example.com

Definições de Sandbox

As chaves abaixo ficam dentro do objeto "sandbox" e governam como os comandos bash são isolados.

ChaveDescriçãoPadrãoExemplo
enabledAtiva o sandboxing de bashfalsetrue
autoAllowBashIfSandboxedAprovação automática de comandos quando em sandboxtruetrue
excludedCommandsComandos que correm fora do sandbox(nenhum)["git", "docker"]
allowUnsandboxedCommandsPermite escape dangerouslyDisableSandboxtruefalse
enableWeakerNestedSandboxSandbox mais fraco para Docker (Linux/WSL2)falsetrue
network.allowedDomainsLista de domínios de saída permitidos(nenhum)["github.com", "*.npmjs.org"]
network.allowUnixSocketsCaminhos de sockets Unix acessíveis no sandbox(nenhum)["~/.ssh/agent-socket"]
network.allowAllUnixSocketsPermite todas as ligações de sockets Unixfalsetrue
network.allowLocalBindingPermite ligação ao localhost (só macOS)falsetrue
network.httpProxyPortPorta proxy HTTP personalizada(automático)8080
network.socksProxyPortPorta proxy SOCKS5 personalizada(automático)8081

Definições de Atribuição

As chaves abaixo ficam dentro do objeto "attribution" e decidem como o git atribui o trabalho do Claude.

ChaveDescriçãoPadrão
commitTexto adicionado às mensagens de commit git"Generated with Claude Code..." + trailer Co-Authored-By
prTexto adicionado às descrições de pull request"Generated with Claude Code..."

Deixa qualquer chave em branco com "" e a linha correspondente desaparece do git. A chave legada includeCoAuthoredBy ainda funciona, embora esteja agora obsoleta.

Definições de Plugins

ChaveDescriçãoExemplo
enabledPluginsAtiva/desativa plugins{"formatter@acme-tools": true}
extraKnownMarketplacesFontes adicionais de pluginsVer exemplo abaixo
strictKnownMarketplaces(Só Gerido) Restringe fontes de marketplace[{"source": "github", "repo": "acme/plugins"}]

Existem quatro tipos de fontes. github aponta para um repo. git aceita qualquer URL. directory usa um caminho local enquanto estás a desenvolver. hostPattern faz correspondência regex em hostnames.

Definições de Servidores MCP

ChaveDescriçãoExemplo
enableAllProjectMcpServersAprova automaticamente todos os servidores MCP do projetotrue
enabledMcpjsonServersServidores MCP específicos a aprovar["memory", "github"]
disabledMcpjsonServersServidores MCP específicos a rejeitar["filesystem"]
allowedMcpServers(Só Gerido) Lista de permissão de servidores MCP[{"serverName": "github"}]
deniedMcpServers(Só Gerido) Lista de bloqueio de servidores MCP[{"serverName": "filesystem"}]

Definições de Autenticação e Fornecedor

ChaveDescriçãoExemplo
apiKeyHelperScript para gerar valor de autenticação"/bin/generate_temp_api_key.sh"
forceLoginMethodRestringe a claudeai ou console"claudeai"
forceLoginOrgUUIDSeleciona automaticamente a organização no login"xxxxxxxx-xxxx-..."
awsAuthRefreshScript para atualizar credenciais AWS"aws sso login --profile myprofile"
awsCredentialExportScript que produz JSON de credenciais AWS"/bin/generate_aws_grant.sh"
otelHeadersHelperScript que gera cabeçalhos OpenTelemetry"/bin/generate_otel_headers.sh"

Definições de Hooks e Avançadas

ChaveDescriçãoExemplo
hooksConfiguração de hook para eventos do ciclo de vidaVer guia de hooks
disableAllHooksDesativa todos os hookstrue
allowManagedHooksOnly(Só Gerido) Bloqueia hooks de utilizador/projetotrue
allowManagedPermissionRulesOnly(Só Gerido) Bloqueia regras de permissão de utilizador/projetotrue
fileSuggestionScript de autocomplete de ficheiros @ personalizado{"type": "command", "command": "~/.claude/file-suggestion.sh"}
statusLineExibição de linha de estado personalizada{"type": "command", "command": "~/.claude/statusline.sh"}
envVariáveis de ambiente para cada sessão{"FOO": "bar"}

Variáveis de Ambiente

O Claude Code lê cerca de 70 variáveis de ambiente. A maioria são casos extremos. Um conjunto de trabalho de cerca de 20 é tudo o que vês no uso diário.

Modelo e Fornecedor

VariávelPropósito
ANTHROPIC_API_KEYChave API para acesso direto à API
ANTHROPIC_MODELSubstitui o modelo padrão
ANTHROPIC_DEFAULT_SONNET_MODELNome do modelo para o alias Sonnet
CLAUDE_CODE_SUBAGENT_MODELModelo para subagentes (separado do modelo principal)
CLAUDE_CODE_USE_BEDROCKEncaminha através do AWS Bedrock
CLAUDE_CODE_USE_VERTEXEncaminha através do Google Vertex

As variáveis de alias (ANTHROPIC_DEFAULT_SONNET_MODEL, ANTHROPIC_DEFAULT_OPUS_MODEL, ANTHROPIC_DEFAULT_HAIKU_MODEL) são úteis quando a tua organização aponta um modelo ajustado para os nomes de alias padrão.

Ajuste de Performance

VariávelPropósito
CLAUDE_CODE_MAX_OUTPUT_TOKENSMáximo de tokens de saída (padrão: 32K, máximo: 64K)
MAX_THINKING_TOKENSOrçamento de pensamento extendido (padrão: 31.999, define 0 para desativar)
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE% da capacidade de contexto (1-100) que dispara compactação automática
BASH_DEFAULT_TIMEOUT_MSTimeout padrão de comandos bash
BASH_MAX_TIMEOUT_MSTimeout máximo de bash que o Claude pode definir
BASH_MAX_OUTPUT_LENGTHMáximo de caracteres de saída bash antes de truncar

Privacidade e Telemetria

VariávelPropósito
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICDesativa atualizações, telemetria, relatório de erros de uma vez
DISABLE_TELEMETRYOpta por sair da telemetria Statsig
DISABLE_ERROR_REPORTINGOpta por sair do relatório de erros Sentry
CLAUDE_CODE_HIDE_ACCOUNT_INFOEsconde email e nome da organização da UI
DISABLE_AUTOUPDATERDesativa atualizações automáticas de versão

Controlo de Sessão

VariávelPropósito
CLAUDE_CODE_TASK_LIST_IDPartilha uma lista de tarefas entre várias sessões
CLAUDE_CODE_ENABLE_TASKSDefine false para reverter para a lista TODO antiga
CLAUDE_CODE_SHELLSubstitui a deteção automática de shell
CLAUDE_CONFIG_DIRLocalização personalizada de diretório de configuração/dados
MCP_TIMEOUTTimeout em ms para arranque do servidor MCP
MCP_TOOL_TIMEOUTTimeout em ms para execução de ferramentas MCP

Existem duas formas. Exporta-as do teu perfil de shell, ou coloca-as no objeto "env" do settings.json para que sobrevivam entre sessões sem qualquer edição do shell rc.

Resolver Conflitos de Configuração

A maior parte das dores de cabeça clássicas de configuração desaparecem quando sabes qual âmbito ganha qual.

Caso 1: Uma regra de permissão discorda entre âmbitos

A tua configuração de utilizador permite Bash(curl *). A configuração do projeto bloqueia-o. Quem ganha? Projeto está na prioridade 4 e utilizador está na prioridade 5, por isso o bloqueio mantém-se. Se o curl é genuinamente necessário na tua própria máquina, coloca a regra de permissão em .claude/settings.local.json. Local na prioridade 3 ultrapassa projeto na prioridade 4, e o allow local substitui a regra bloqueada.

Caso 2: Um ficheiro gerido derruba uma regra de projeto

O settings.json da tua equipa no projeto permite Bash(rm -rf *). O IT envia então um ficheiro gerido que bloqueia esse mesmo comando. Gerido é o vencedor. Sempre. Nada num ficheiro de utilizador, local ou projeto consegue superar regras geridas. O design é intencional, e a conformidade é a razão.

Caso 3: Experimentar algo localmente

Queres testar um novo hook antes de o oferecer à equipa. Coloca-o em .claude/settings.local.json. Ultrapassa o .claude/settings.json partilhado e fica apenas na tua máquina.

Caso 4: Dois âmbitos a fundir

Os âmbitos não se apagam mutuamente por completo. Acumulam-se. A configuração de utilizador a permitir Bash(git status) e a configuração de projeto a permitir Bash(npm run lint) dão-te ambas as regras ativas ao mesmo tempo. A fusão une os arrays de permissões. Se a mesma chave tem um valor diferente em dois âmbitos, o âmbito mais alto é o que fica para essa chave única.

Caso 5: Uma variável de ambiente exportada do shell e listada no settings.json

Exporta ANTHROPIC_MODEL do teu shell e também lista-a no objeto env do settings.json, e a exportação do shell é o valor que o Claude Code usa.

Como as Definições se Ligam ao Resto do Sistema

Os ficheiros CLAUDE.md contêm as instruções que o Claude carrega no arranque, mais o contexto de que precisa. Modelo mental limpo: as definições dizem o que o Claude tem permissão para fazer, o CLAUDE.md diz o que o Claude deve saber.

Os servidores MCP ligam novas ferramentas ao Claude. A sua configuração vive nos seus próprios ficheiros (.mcp.json ao nível do projeto, ~/.claude.json ao nível do utilizador). O settings.json é o lugar que decide quais desses servidores estão aprovados e quais estão bloqueados.

Os hooks ficam dentro do settings.json sob a chave hooks. Cada um executa um comando shell, ou envia um prompt LLM, quando um evento do ciclo de vida dispara.

Os plugins também correm através do settings.json, via enabledPlugins e a tua lista de marketplace.

Os subagentes são ficheiros Markdown simples. Os de utilizador ficam em ~/.claude/agents/, os de projeto em .claude/agents/.

Cópias de Segurança e Recuperação

Cada vez que um ficheiro de configuração muda, o Claude Code escreve uma cópia de segurança com timestamp. As últimas cinco cópias por ficheiro ficam guardadas. Uma má atualização já não significa escavar no git reflog. A versão anterior a funcionar fica ao lado da que está com problemas.

Começar

Novo nas definições do Claude Code? Passa por esta lista curta por ordem.

  1. Regras de permissão ao nível do projeto. Bloqueia qualquer leitura em .env e outros ficheiros secretos. Permite os comandos de build ou test que usas todos os dias
  2. Um hook PostToolUse que formata automaticamente ao guardar. Esta única entrada destrói a fadiga de aprovação mais rápido do que qualquer outra coisa
  3. Definições de atribuição se a linha Co-Authored-By precisa de ajuste ou remoção
  4. Padrões de utilizador para as preferências que queres ativas em todos os repos que tocas
  5. Um ficheiro CLAUDE.md com contexto do projeto e as tuas convenções de código

Continue in Setup

  • Configuração do Claude Code
    Três ficheiros configuram o Claude Code por projeto: CLAUDE.md para contexto, servidores MCP para ferramentas, comandos slash para fluxos de trabalho. Uma hierarquia, cada sessão pronta.
  • Sandbox do Claude Code
    O sandbox do Claude Code aplica limites de sistema de ficheiros e rede ao nível do kernel. Configuração para macOS Seatbelt, Linux e WSL2 com bubblewrap, e listas de domínios permitidos.
  • Guia de Configuração do Terminal para Claude Code
    Combina temas, ativa Shift+Enter, configura notificações, corrige truncagem em pastes longos e ativa o modo vim no iTerm2, WezTerm, Ghostty, Kitty e outros terminais.

More from Handbook

  • Fundamentos do agente
    Cinco maneiras de criar agentes especializados no Código Claude: Sub-agentes de tarefas, .claude/agents YAML, comandos de barra personalizados, personas CLAUDE.md e prompts de perspetiva.
  • Padrões de Agentes
    Orchestrator, fan-out, cadeia de validação, routing especializado, refinamento progressivo e watchdog. Seis formas de orquestração para ligar sub-agentes no Claude Code.
  • Boas Práticas para Equipas de Agentes
    Padrões testados em produção para Equipas de Agentes Claude Code. Prompts de criação ricos em contexto, tarefas bem dimensionadas, posse de ficheiros, modo delegado, e correções das versões v2.1.33-v2.1.45.
  • Controlos de Equipas de Agentes
    Configura o modo delegado, modos de exibição, aprovação de planos, limites de ficheiros e regras CLAUDE.md para que o líder da tua equipa Claude Code coordene em vez de codificar.

Pare de configurar. Comece a construir.

Templates SaaS com orquestração de IA.

On this page

A Cadeia de Precedência de Cinco Âmbitos
Precedência de Âmbitos (do Mais Alto ao Mais Baixo)
Escolher o Âmbito Certo
Caminhos das Definições Geridas por OS
Referência de Definições
Definições Gerais
Definições de Permissões
Definições de Sandbox
Definições de Atribuição
Definições de Plugins
Definições de Servidores MCP
Definições de Autenticação e Fornecedor
Definições de Hooks e Avançadas
Variáveis de Ambiente
Modelo e Fornecedor
Ajuste de Performance
Privacidade e Telemetria
Controlo de Sessão
Resolver Conflitos de Configuração
Como as Definições se Ligam ao Resto do Sistema
Cópias de Segurança e Recuperação
Começar

Pare de configurar. Comece a construir.

Templates SaaS com orquestração de IA.