/config, que abre uma interface de Configurações com abas onde você pode visualizar informações de status e modificar opções de configuração. A partir da v2.1.181, você pode alterar uma única opção sem abrir a interface passando key=value para /config, por exemplo /config verbose=true.
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
Quando usar cada escopo
O escopo Managed é 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, servidores MCP)
- 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 aparece em vários escopos, o Claude Code as aplica em ordem de prioridade:- Managed (mais alta): não pode ser substituída por nada
- Argumentos de linha de comando: substituições de sessão temporárias
- Local: substitui configurações de projeto e usuário
- Project: substitui configurações de usuário
- User (mais baixa): se aplica quando nada mais especifica a configuração
spinnerTipsEnabled como true e as configurações de projeto a definem como false, o valor do projeto se aplica. As regras de permissão se comportam de forma diferente porque se mesclam entre escopos em vez de substituir. Veja Precedência de configurações.
O que usa escopos
Os escopos se aplicam a muitos recursos do Claude Code:
No Windows, os caminhos mostrados como
~/.claude são resolvidos para %USERPROFILE%\.claude.
Arquivos de configuração
O arquivosettings.json é o mecanismo oficial para configurar o Claude Code através de configurações hierárquicas:
-
As configurações do usuário são definidas em
~/.claude/settings.jsone se aplicam a todos os projetos. -
As 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. Quando o Claude Code cria.claude/settings.local.json, ele configura o git para ignorar o arquivo. Se você criar o arquivo você mesmo, adicione-o ao seu gitignore manualmente. Como este arquivo é seu em vez do repositório, suas regras de permissãoallowentram em vigor sem a etapa de confiança do workspace que as regras allow de.claude/settings.jsonexigem. Se o repositório fornece o arquivo, por exemplo ao confirmá-lo, a confiança do workspace ainda se aplica.
-
-
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 remotamente na entrada, seja dos servidores da Anthropic através do console de administração do claude.ai ou de um gateway de aplicativos Claude auto-hospedado. Veja configurações gerenciadas pelo servidor.
-
Políticas de nível MDM/SO: entregues através do gerenciamento nativo de dispositivos no macOS e Windows:
- macOS: domínio de preferências gerenciadas
com.anthropic.claudecode. As chaves de nível superior do plist espelhammanaged-settings.json, com configurações aninhadas como dicionários e arrays como arrays de plist. Implante via perfis de configuração em Jamf, Iru (Kandji), ou ferramentas MDM similares. - Windows: chave de registro
HKLM\SOFTWARE\Policies\ClaudeCodecom um valorSettings(REG_SZ ou REG_EXPAND_SZ) contendo JSON (implantado via 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\
managed-settings.d/no mesmo diretório do sistema ao lado demanaged-settings.json. Isto permite que equipes separadas implantem fragmentos de política independentes sem coordenar edições em um único arquivo. Seguindo a convenção systemd,managed-settings.jsoné mesclado primeiro como base, então todos os arquivos*.jsonno diretório drop-in são classificados alfabeticamente e mesclados por cima. Arquivos posteriores substituem anteriores para valores escalares, arrays são concatenados e desduplicados, e objetos são mesclados profundamente. Arquivos ocultos começando com.são ignorados. Use prefixos numéricos para controlar a ordem de mesclagem, por exemplo10-telemetry.jsone20-security.json. - macOS:
Implantações gerenciadas também podem restringir adições ao 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 sua 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. Os 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.
O esquema publicado é atualizado periodicamente e pode não incluir configurações adicionadas nos lançamentos CLI mais recentes, então um aviso de validação em um campo documentado recentemente não significa necessariamente que sua configuração é inválida.
Quando as edições entram em vigor
O Claude Code observa seus arquivos de configuração e os recarrega quando mudam, então edições na maioria das chaves se aplicam à sessão em execução sem uma reinicialização. Isto incluipermissions, hooks, e auxiliares de credenciais como apiKeyHelper. O recarregamento cobre configurações de usuário, projeto, local e gerenciadas, e o hook ConfigChange dispara para cada mudança detectada.
Algumas poucas chaves são lidas uma vez na inicialização da sessão e se aplicam na próxima reinicialização em vez disso:
model: use/modelpara mudar no meio da sessãooutputStyle: parte do prompt do sistema, que é reconstruído em/clearou reinicialização
Entradas inválidas em configurações gerenciadas
Configurações gerenciadas analisam com tolerância. Quando uma configuração gerenciada contém uma entrada que falha na validação de esquema, o Claude Code remove essa entrada, registra um aviso, e aplica todas as políticas válidas restantes. Um único erro de digitação não pode desabilitar o resto da política da sua organização. Execute/doctor para listar entradas removidas com sua fonte de arquivo e campo.
Este comportamento é consistente em todos os três mecanismos de entrega: configurações gerenciadas pelo servidor, políticas de plist e registro implantadas através de MDM, e arquivos managed-settings.json. Requer Claude Code v2.1.169 ou posterior.
Campos de aplicação de segurança são tratados por campo em vez de serem removidos no atacado quando estão presentes mas inválidos:
requiredMinimumVersion e requiredMaximumVersion falham abertos por design: um valor inválido é removido em vez de ser aplicado, então um push de política ruim não pode impedir que o Claude Code inicie.
Erros de validação aparecem em três lugares:
- Sessões interativas mostram um diálogo na inicialização listando as entradas inválidas.
- Execuções headless com
-pimprimem um resumo para stderr. claude doctorlista cada entrada inválida com sua fonte e campo.
claude doctor em uma máquina de teste antes de implantá-las em toda a frota.
Esta tolerância se aplica apenas a configurações gerenciadas. Arquivos de configuração de usuário, projeto e local permanecem rigorosos: um arquivo que falha na validação é rejeitado como um todo e relatado.
Configurações disponíveis
settings.json suporta várias opções:
Configurações de config global
Estas configurações são armazenadas em~/.claude.json em vez de settings.json. Adicioná-las a settings.json acionará um erro de validação de esquema.
Versões antes da v2.1.119 também armazenam um número de chaves de preferência
/config aqui em vez de em settings.json, incluindo theme, verbose, editorMode, autoCompactEnabled, e preferredNotifChannel.Configurações de worktrees
Configure como--worktree cria e gerencia git worktrees.
Para copiar arquivos ignorados pelo git como
.env em novos worktrees, use um arquivo .worktreeinclude na raiz do seu projeto em vez de uma configuração.
Configurações de permissão
Sintaxe de regra de permissão
Regras de permissão seguem o formatoTool ou Tool(specifier). Regras são avaliadas em ordem: regras de negação primeiro, depois ask, depois allow. A primeira regra correspondente determina o resultado independentemente da especificidade da regra. Veja a ordem de avaliação de regra de permissão para detalhes.
Exemplos rápidos:
Para a referência completa de sintaxe de regra, incluindo comportamento de curinga, padrões específicos de ferramenta para Read, Edit, WebFetch, MCP, e regras de Agent, e limitações de segurança de padrões Bash, veja Sintaxe de regra de permissão.
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.Prefixos de caminho de sandbox
Caminhos emfilesystem.allowWrite, filesystem.denyWrite, filesystem.denyRead, filesystem.allowRead, e credentials.files suportam estes prefixos:
O prefixo mais antigo
//path para caminhos absolutos ainda funciona. Se você usou anteriormente /path esperando resolução relativa ao projeto, mude para ./path. Esta sintaxe difere de regras de permissão Read e Edit, que usam //path para absoluto e /path para relativo ao projeto. Caminhos de sistema de arquivos de sandbox usam convenções padrão: /tmp/build é um caminho absoluto.
Exemplo de configuração:
- Configurações
sandbox.filesystem(mostradas acima): Controlam caminhos no limite do sandbox de nível de 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 (uma regra denyReadtambém bloqueia a ferramenta Edit nos caminhos correspondentes), 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
Claude Code adiciona atribuição a commits git e pull requests. Estes são configurados 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
Atribuição de commit padrão:
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 e sessionUrl como false.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. Recebe JSON via stdin com um campo query:
Badges de link de rodapé
A configuraçãofooterLinksRegexes renderiza badges clicáveis extras no rodapé abaixo da caixa de entrada. Use-a para transformar IDs impressos por CLIs de projeto, como ferramentas de revisão e rastreadores de problemas, em links de sessão.
Cada regex pattern de entrada é correspondida contra a saída de turno: resultados de ferramenta, incluindo conteúdo de arquivo e páginas buscadas, e respostas do próprio Claude. Placeholders {name} em url e label são preenchidos de grupos de captura nomeados no padrão.
O exemplo a seguir renderiza um badge sempre que uma chave de problema como PROJ-1234 aparece na saída de turno. O grupo nomeado (?<key>...) captura a chave, e {key} a substitui na URL e label:
~/.claude/settings.json
PROJ-1234 aparece em um resultado de ferramenta ou na resposta do Claude, um chip PROJ-1234 aparece no rodapé ligando para https://issues.example.com/browse/PROJ-1234.
As seguintes restrições se aplicam a cada entrada:
Quando um turno é concluído, Claude Code corresponde cada regex
pattern de entrada contra a saída de turno na thread principal, então uma regex lenta bloqueia a UI até terminar. Quantificadores aninhados como (a+)+$ podem levar exponencialmente tempo contra certas entradas e congelar a sessão, então mantenha cada pattern linear e evite aninhar + ou *.
Badges de rodapé renderizam ao lado de uma linha de status personalizada quando uma está configurada; nenhuma substitui a outra. Use uma linha de status para uma linha acionada por script que calcula seu próprio conteúdo a partir de dados de sessão, e badges de rodapé para transformar IDs da conversa em links sem um script.
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 se mesclam entre fontes.
Comportamento quando allowManagedHooksOnly é true:
- Hooks gerenciados e hooks SDK são carregados
- Hooks de plugins força-habilitados em configurações gerenciadas
enabledPluginssão carregados. Isto permite que administradores distribuam hooks verificados através de um marketplace de organização enquanto bloqueiam tudo mais. A confiança é concedida pelo ID completoplugin@marketplace, então um plugin com o mesmo nome de um marketplace diferente permanece bloqueado - Hooks de usuário, hooks de projeto e todos os outros hooks de plugin são bloqueados
* como curinga para correspondência. Quando o array é definido, hooks HTTP almejando URLs não correspondentes são silenciosamente bloqueados. A correspondência de nome de host é insensível a maiúsculas e minúsculas e ignora um ponto FQDN à direita, correspondendo à semântica de DNS.
allowedEnvVars efetivo de cada hook é a interseção de sua própria lista e esta configuração.
Calcular configurações gerenciadas com um auxiliar de política
A configuraçãopolicyHelper aponta para um executável que calcula configurações gerenciadas na inicialização, para que administradores possam derivar política da postura do dispositivo, identidade, ou um serviço remoto em vez de um arquivo estático. Configure-o a partir de MDM ou um arquivo managed-settings.json do sistema. O Claude Code ignora policyHelper quando aparece em qualquer outro escopo, incluindo configurações de usuário, configurações de projeto, a hive de registro HKCU, e configurações gerenciadas pelo servidor.
A configuração aceita estas chaves:
O auxiliar escreve um envelope JSON para stdout. Coloque as configurações sob uma chave
managedSettings em vez de no nível superior, já que um objeto de configurações simples analisa com managedSettings indefinido e não aplica nada:
managedSettings, esse objeto substitui as configurações gerenciadas baseadas em arquivo para a execução. Quando o auxiliar sai com código não-zero na inicialização, Claude Code imprime o erro e recusa iniciar, então um auxiliar que precisa de resiliência de interrupção deve servir a partir de seu próprio cache e sair com 0.
Precedência de configurações
Configurações se aplicam em ordem de precedência. De mais alta para mais baixa:-
Configurações gerenciadas (gerenciadas pelo servidor, políticas de nível MDM/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ções gerenciadas
- Não podem ser substituídas por qualquer outro nível, incluindo argumentos de linha de comando
- Dentro do nível gerenciado, apenas uma fonte é usada e as outras são ignoradas em vez de mescladas. Precedência, mais alta primeiro:
- Saída
policyHelper: quando configurada, esta é a única fonte gerenciada usada - Remota (configurações gerenciadas pelo servidor do claude.ai ou gateway de aplicativos Claude-entregues)
- Políticas de nível MDM/SO
- Baseada em arquivo (
managed-settings.d/*.jsonemanaged-settings.json, mescladas juntas) - Registro HKCU (apenas Windows)
- Saída
- Algumas chaves são exceções, honradas quando qualquer fonte gerenciada controlada por administrador as define em vez de apenas a fonte vencedora. A fonte de registro HKCU gravável pelo usuário é excluída. As chaves de exceção são:
- as chaves de bloqueio de sandbox
sandbox.network.allowManagedDomainsOnlyesandbox.filesystem.allowManagedReadPathsOnly, com suas listas de permissões associadas allowAllClaudeAiMcps- os caminhos binários de sandbox
sandbox.bwrapPathesandbox.socatPath forceRemoteSettingsRefresh
- as chaves de bloqueio de sandbox
- Hosts de incorporação como Claude Desktop podem fornecer política via opção SDK
managedSettings. Por padrão isto é ignorado quando qualquer fonte gerenciada controlada por administrador está presente: configurações gerenciadas pelo servidor, uma política MDM ou SO, ou um arquivo de configurações gerenciadas. O fallback de registro HKCU gravável pelo usuário não conta como uma fonte gerenciada controlada por administrador. Administradores podem optar por definirparentSettingsBehaviorcomo"merge". Os valores do incorporador são filtrados para que possam apertar a política gerenciada mas não afrouxá-la.
-
Argumentos de linha de comando
- Substituições temporárias para uma sessão específica. JSON passado via
--settings <file-or-json>se mescla com configurações baseadas em arquivo usando as mesmas regras que as outras camadas: uma chave definida aqui substitui a mesma chave em configurações local, projeto, ou usuário, e omitir uma chave deixa o valor da camada inferior no lugar
- Substituições temporárias para uma sessão específica. JSON passado via
-
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 de usuário (
~/.claude/settings.json)- Configurações globais pessoais
permissions.defaultMode como acceptEdits e as configurações compartilhadas de um projeto definem como default, o valor do projeto se aplica. O exemplo abaixo cobre como configurações com valor de array como regras de permissão se combinam em vez disso.
Configurações de array se mesclam 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.Duas configurações de array não se mesclam desta forma:fallbackModelé uma cadeia ordenada onde a posição carrega significado: o arquivo de precedência mais alta que a define fornece o valor inteiro.availableModels: quando a fonte gerenciada de precedência mais alta a define, essa lista se aplica como está e entradas de usuário, projeto e local não podem estendê-la. Entre escopos não gerenciados os arrays se mesclam como usual. Veja Comportamento de mesclagem.
Verificar configurações ativas
Execute/status dentro do Claude Code para ver quais fontes de configuração estão ativas. Dentro do menu, a aba Status inclui uma linha Setting sources que lista cada camada que Claude Code carregou para a sessão atual, como User settings ou Project local settings. Quando configurações gerenciadas estão em efeito, a entrada mostra o canal de entrega entre parênteses, por exemplo Enterprise managed settings (remote), (plist), (HKLM), (HKCU), ou (file). O canal remote cobre configurações gerenciadas pelo servidor do claude.ai e políticas gateway de aplicativos Claude-entregues. Uma camada aparece na lista apenas quando essa fonte é carregada com pelo menos uma chave, então uma lista vazia significa que nenhuma fonte de configuração foi encontrada.
A linha Setting sources confirma quais fontes estão sendo lidas. Ela não mostra qual camada forneceu cada chave individual. A aba Config no mesmo diálogo é um editor para um conjunto fixo de toggles como tema e saída verbose, não uma visualização do conteúdo do seu settings.json.
Se um arquivo de configuração contém erros, como JSON inválido ou um valor que falha na validação, /status lista os arquivos afetados. Execute claude doctor para ver os detalhes de cada erro.
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): Configurar permissões, variáveis de ambiente, e comportamento de ferramenta
- Skills: Prompts personalizados que podem ser invocados com
/skill-nameou carregados pelo Claude automaticamente - MCP servers: Estender Claude Code com ferramentas e integrações adicionais
- Precedência: Configurações de nível mais alto (Managed) substituem as de nível mais baixo (User/Project)
- Herança: Configurações são mescladas entre escopos; valores escalares de escopos de prioridade mais alta substituem, e arrays se concatenam, com duas exceções descritas na Nota de mesclagem de array
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 no seu arquivo .claude/settings.json:
ignorePatterns. Arquivos correspondentes 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 ao seu projeto e compartilháveis com sua equipe
Configuração de plugin
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. Um plugin sem entrada em nenhum escopo volta ao seu valor defaultEnabled.
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, gitignored quando Claude Code as cria - Configurações gerenciadas (
managed-settings.json): Substituições de política em toda a organização que bloqueiam instalação em todos os escopos e ocultam o plugin do marketplace
As configurações de projeto têm precedência sobre as configurações de usuário, portanto, definir um plugin como
false em ~/.claude/settings.json não desabilita um plugin que o .claude/settings.json do projeto habilita. Para optar por não usar um plugin habilitado pelo projeto em sua máquina, defina-o como false em .claude/settings.local.json em vez disso.Plugins forçadamente habilitados por configurações gerenciadas não podem ser desabilitados desta forma, pois as configurações gerenciadas substituem as configurações locais.Habilitar um plugin de uma fonte externa como um repositório GitHub ou pacote npm em um .claude/settings.json de projeto não o instala para outras pessoas. A partir de Claude Code v2.1.195, cada caminho que carrega plugins pede a cada usuário para instalar e confiar no plugin antes de executá-lo.pluginConfigs
Armazena os valores de opção não sensíveis que o prompt userConfig de um plugin coleta, indexados por ID de plugin. Claude Code escreve esta chave em configurações de usuário quando você preenche o diálogo de configuração do plugin, portanto você não precisa editá-la manualmente. Opções sensíveis são armazenadas no Keychain do macOS em vez disso, ou em ~/.claude/.credentials.json em plataformas sem um keychain suportado.
Este exemplo armazena uma opção para um plugin instalado do marketplace acme-tools:
pluginConfigs é lido de configurações de usuário, a flag --settings, e configurações gerenciadas apenas. Entradas em um .claude/settings.json de projeto ou .claude/settings.local.json são ignoradas, porque estes valores são substituídos em hook de plugin, MCP, e configurações LSP, e um repositório clonado não deve ser capaz de fornecê-los. Antes de v2.1.207, configurações de projeto e local também eram lidas.
extraKnownMarketplaces
Define marketplaces adicionais que devem ser disponibilizados para o repositório. Tipicamente 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
- Usuários podem pular marketplaces ou plugins indesejados (armazenados em configurações de usuário)
- 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)settings: marketplace inline declarado diretamente em settings.json sem um repositório hospedado separado (usanameeplugins)
git funciona com qualquer serviço de hospedagem git, incluindo GitLab auto-hospedado e Bitbucket. Claude Code clona o repositório com a mesma autenticação que git clone usaria naquela máquina: assistentes de credencial configurados ou chaves SSH. Um token de provedor como GITHUB_TOKEN tem efeito apenas através de um assistente de credencial que o lê. Veja Repositórios privados para detalhes de configuração.
Para fontes github e git, defina "skipLfs": true dentro do objeto source (junto com repo ou url) para pular downloads de Git LFS quando Claude Code clona ou atualiza o repositório de marketplace. Arquivos de ponteiro LFS permanecem como ponteiros em vez de baixar seu conteúdo. Use isto quando o repositório contém objetos LFS grandes não relacionados ao conteúdo de plugin. Requer Claude Code v2.1.153 ou posterior.
Cada entrada de marketplace também aceita um Boolean autoUpdate opcional. Defina "autoUpdate": true junto com source para fazer Claude Code atualizar aquele marketplace e atualizar seus plugins instalados em segundo plano após a inicialização. Quando omitido, marketplaces oficiais da Anthropic padrão para true e todos os outros marketplaces padrão para false. Veja Configurar auto-atualizações.
Use source: 'settings' para declarar um pequeno conjunto de plugins inline sem configurar um repositório de marketplace hospedado. Plugins listados aqui devem referenciar fontes externas como GitHub ou npm. Você ainda precisa habilitar cada plugin separadamente em enabledPlugins.
strictKnownMarketplaces
Apenas configurações gerenciadas: Controla quais marketplaces de plugin os usuários podem adicionar e instalar plugins. 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
- Apenas disponível em configurações gerenciadas (
managed-settings.json) - Não pode ser substituída por configurações de usuário ou projeto (precedência mais alta)
- Aplicada antes de operações de rede e sistema de arquivos, portanto fontes bloqueadas nunca executam
- Usa correspondência exata para especificações de fonte (incluindo
ref,pathpara fontes git), excetohostPatternepathPattern, que usam correspondência regex
undefined(padrão): sem restrições, portanto usuários podem adicionar qualquer marketplace- Array vazio
[]: bloqueio completo, portanto usuários não podem adicionar novos marketplaces - Lista de fontes: usuários podem apenas adicionar marketplaces que correspondem exatamente
hostPattern e pathPattern usam correspondência regex contra o host do marketplace e caminho do sistema de arquivos respectivamente.
- Repositórios GitHub:
repo (obrigatório), ref (opcional: branch ou tag), path (opcional: subdiretório)
- Repositórios Git:
url (obrigatório), ref (opcional: branch ou tag), 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 em vez disso. 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 GitHub Enterprise interno ou servidores GitLab 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
- Correspondência de padrão de caminho:
pathPattern (obrigatório: padrão regex correspondido contra o campo path de fontes file e directory)
Use correspondência de padrão de caminho para permitir marketplaces baseados em sistema de arquivos junto com restrições hostPattern para fontes de rede. Defina ".*" para permitir todos os caminhos locais, ou um padrão mais estreito para restringir a diretórios específicos.
Exemplos de configuração:
Exemplo: permitir apenas marketplaces específicos:
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:
Diferença de formato:
strictKnownMarketplaces usa objetos de fonte diretos:
extraKnownMarketplaces requer marketplaces nomeados:
strictKnownMarketplaces é um portão de política: controla o que os usuários podem adicionar mas não registra nenhum marketplace. Para restringir e pré-registrar um marketplace para todos os usuários, defina ambos em managed-settings.json:
strictKnownMarketplaces definido, usuários ainda podem adicionar o marketplace permitido manualmente via /plugin marketplace add, mas não está disponível automaticamente.
Notas importantes:
- Restrições são verificadas antes de qualquer solicitação de rede ou operação de sistema de arquivos
- Quando bloqueado, usuários veem mensagens de erro claras indicando que a fonte é bloqueada por política gerenciada
- A restrição é aplicada em adição de marketplace e em instalação, atualização, atualização e auto-atualização de plugin. Um marketplace adicionado antes da política ser definida não pode ser usado para instalar ou atualizar plugins uma vez que sua fonte não corresponde mais à lista de permissões
- Configurações gerenciadas têm a precedência mais alta e não podem ser substituídas
strictPluginOnlyCustomization
Apenas configurações gerenciadas: bloqueia skills, agents, hooks, e MCP servers de fontes de usuário e projeto, para que possam vir apenas de plugins ou configurações gerenciadas. Combine com strictKnownMarketplaces para controlar a cadeia de suprimento de personalização completa: a lista de permissões de marketplace controla quais plugins os usuários podem instalar, e esta configuração bloqueia tudo que não vem de um plugin ou de configurações gerenciadas.
O valor é true para bloquear todas as quatro superfícies, ou um array nomeando as superfícies a bloquear:
Nomes de superfície que uma versão de Claude Code não reconhece são ignorados em vez de falhar no arquivo de configurações, portanto você pode adicionar novos nomes de superfície antes que todos os clientes tenham atualizado.
Gerenciando plugins
Use o comando/plugin para gerenciar plugins interativamente:
- Procurar plugins disponíveis de marketplaces
- Instalar/desinstalar plugins
- Habilitar/desabilitar plugins
- Ver detalhes de plugin (skills, agents, hooks fornecidos)
- Adicionar/remover marketplaces
Variáveis de ambiente
Variáveis de ambiente permitem controlar o comportamento do Claude Code sem editar arquivos de configuração. Qualquer variável também pode ser configurada emsettings.json sob a chave env para aplicá-la a cada sessão ou implantá-la para sua equipe.
Veja a referência de variáveis de ambiente para a lista completa.
Ferramentas disponíveis para Claude
O Claude Code tem acesso a um conjunto de ferramentas para leitura, edição, busca, execução de comandos, e orquestração de subagents. Nomes de ferramenta são as strings exatas que você usa em regras de permissão e correspondedores de hook. Veja a referência de ferramentas para a lista completa e detalhes de comportamento da ferramenta Bash.Veja também
- Permissões: sistema de permissões, sintaxe de regra, padrões específicos de ferramenta, e políticas gerenciadas
- Autenticação: configurar acesso de usuário ao Claude Code
- Depurar sua configuração: diagnosticar por que uma configuração, hook, ou servidor MCP não está tendo efeito
- Solucionar problemas de instalação e login: problemas de instalação, autenticação e plataforma