Encontre seu erro
Corresponda a mensagem de erro ou sintoma que você está vendo a uma solução:
Se seu problema não estiver listado, trabalhe através das verificações de diagnóstico abaixo para estreitar a causa.
Execute verificações de diagnóstico
Verifique a conectividade de rede
O instalador baixa dedownloads.claude.ai. Verifique se você consegue alcançá-lo:
- macOS/Linux
- Windows PowerShell
200. Você vê HTTP/2 200 no macOS e Linux, e HTTP/1.1 200 OK do curl.exe incluído no Windows. Outros resultados apontam para a causa:
403: geralmente um proxy ou filtro de rede bloqueando o host, ou Claude Code não está disponível em sua região5xx: geralmente um problema temporário de serviço; aguarde alguns minutos e tente novamente
Could not resolve host, ou um timeout de conexão, sua rede está bloqueando a conexão. Causas comuns:
- Firewalls corporativos ou proxies bloqueando
downloads.claude.ai - Restrições de rede regional: tente uma VPN ou rede alternativa
- Problemas de TLS/SSL: atualize os certificados CA do seu sistema, ou verifique se
HTTPS_PROXYestá configurado
HTTPS_PROXY e HTTP_PROXY para o endereço do seu proxy antes de instalar. Peça à sua equipe de TI pela URL do proxy se você não souber, ou verifique as configurações de proxy do seu navegador.
Este exemplo define ambas as variáveis de proxy e executa o instalador através do seu proxy:
- macOS/Linux
- Windows PowerShell
Verifique seu PATH
Se a instalação foi bem-sucedida mas você recebe um errocommand not found ou not recognized ao executar claude, o diretório de instalação não está em seu PATH. Seu shell procura por programas em diretórios listados em PATH, e o instalador coloca claude em ~/.local/bin/claude no macOS/Linux ou %USERPROFILE%\.local\bin\claude.exe no Windows.
O instalador detecta esse caso e o relata em Setup notes: em sua saída: Native installation exists but ~/.local/bin is not in your PATH. no macOS e Linux, ou Native installation exists but C:\Users\you\.local\bin is not in your PATH. no Windows. Ele imprime a correção junto com essa nota, mas não altera o PATH por conta própria.
A extensão VS Code não coloca
claude neste local. Ela agrupa uma cópia privada da CLI dentro do diretório da extensão para seu próprio painel de chat e não a adiciona ao PATH. Se você tiver instalado apenas a extensão, ~/.local/bin/claude não existirá. Execute a instalação autônoma para usar claude a partir de um terminal, depois continue abaixo.- macOS/Linux
- Windows PowerShell
- Windows CMD
Verifique se o instalador colocou o programa no lugar:Se isso imprimir Para Bash no Linux, onde é o padrão na maioria das distribuições:Para Bash no macOS, adicione a linha a Alternativamente, feche e reabra seu terminal.Se o comando Se
No such file or directory: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm, Homebrew ou um gerenciador de pacotes do Linux, instale o Claude Code. Se você o instalou de outra forma, consulte Verifique se há instalações conflitantes.- Uma listagem do arquivo: o programa está lá. Verifique seu PATH em seguida.
/Users/you/.local/bin ou /home/you/.local/bin, o diretório está em seu PATH e você pode pular para Verifique se há instalações conflitantes. Se não houver saída, adicione-o à sua configuração de shell com os dois comandos para o seu shell. O comando echo salva a configuração para todo novo terminal, e source a aplica à janela em que você está. O comando echo não imprime nada quando é bem-sucedido.Para Zsh, o padrão no macOS:~/.bash_profile em vez disso. Terminal no macOS inicia Bash como um shell de login, que ignora ~/.bashrc e lê apenas o primeiro de ~/.bash_profile, ~/.bash_login, ou ~/.profile que existe. Se você já tem um ~/.bash_login ou ~/.profile e nenhum ~/.bash_profile, coloque a linha naquele arquivo em vez de criar ~/.bash_profile:echo imprimir permission denied, consulte permission denied ao adicionar ao seu PATH.Para outros shells como fish ou Nushell, adicione ~/.local/bin ao seu PATH usando a sintaxe de configuração do seu próprio shell, depois reinicie seu terminal.Verifique se a correção funcionou:claude ainda não for encontrado, verifique estas causas:- O terminal é anterior à alteração: uma janela que já estava aberta mantém seu PATH antigo, e um terminal dentro de um editor recebe seu PATH do editor. Abra uma nova janela, ou feche e reabra o editor.
- A linha não foi salva: execute
grep -n '.local/bin' ~/.zshrc, usando o nome de arquivo do seu shell. Ele imprime a linha com seu número de linha quando a linha está lá. Se não imprimir nada, execute os dois comandos de PATH novamente. - A linha foi para o arquivo de outro shell: execute
echo $0para ver seu shell e, em seguida, execute os dois comandos de PATH para esse shell.
Verifique se há instalações conflitantes
Múltiplas instalações do Claude Code podem causar incompatibilidades de versão ou comportamento inesperado. Verifique o que está instalado:- macOS/Linux
- Windows PowerShell
Liste todos os binários Se isso imprimir Uma instalação nativa mostra um symlink em Se
claude encontrados em seu PATH:claude not found, uma linha no claude in ou nada, nenhum claude está em seu PATH. As próximas verificações mostram se algum está instalado.Verifique os três locais de onde um binário claude pode vir. ~/.local/bin/claude é o instalador nativo, ~/.claude/local/ é uma instalação npm local legada criada por versões antigas do Claude Code, e a lista npm global mostra uma instalação -g:~/.local/share/claude/versions/. Um script ou um symlink que você criou por conta própria neste caminho é um inicializador personalizado, que auto-update deixa no lugar.Se algum comando ls imprimir No such file or directory, isso não é um erro. Significa que nada está instalado naquele local, então passe para a próxima verificação.ls -la ~/.local/bin/claude imprimiu No such file or directory, não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm, Homebrew ou um gerenciador de pacotes do Linux, instale o Claude Code. Se ~/.local/bin/claude existe mas which -a claude não o listou, a pasta não está em seu PATH: consulte Verifique seu PATH.~/.local/bin/claude no macOS/Linux ou %USERPROFILE%\.local\bin\claude.exe no Windows é recomendada. Remova as extras:
Desinstale uma instalação npm global:
- macOS/Linux
- Windows PowerShell
claude-code@latest, substitua esse nome:
Verifique permissões de diretório
Uma instalação que falha por permissões informa o caminho que não conseguiu criar ou gravar. No Windows, a instalação grava em%USERPROFILE%, que é gravável pelo seu usuário por padrão, então esta seção raramente se aplica lá.
No macOS e Linux, a instalação grava nestes locais:
~/.claude/downloads/: onde o comando de instalação coloca o binário baixado~/.local/bin/: o inicializadorclaude~/.local/share/claude/: cada versão que ela baixa~/.local/state/claude/: seus arquivos de bloqueio~/.cache/claude/: downloads preparados~/.claude.json: seu arquivo de configuração global, onde o instalador registra o método de instalação
XDG_DATA_HOME, XDG_STATE_HOME ou XDG_CACHE_HOME, a instalação usa esses em vez de ~/.local/share, ~/.local/state e ~/.cache. Se você definir CLAUDE_CONFIG_DIR, o arquivo de configuração global fica nesse diretório em vez do seu diretório pessoal.
Verifique se os diretórios são graváveis:
Verifique se o binário funciona
Seclaude --version imprime uma versão mas claude falha ou trava na inicialização, execute estas verificações para estreitar a causa. Se claude --version disser comando não encontrado, vá para Verifique seu PATH primeiro; os comandos abaixo assumem que claude está em seu PATH.
Confirme que o binário existe e é executável:
- macOS/Linux
- Windows PowerShell
ldd mostrar bibliotecas ausentes, você pode precisar instalar pacotes do sistema. No Alpine Linux e outras distribuições baseadas em musl, consulte Alpine Linux setup.
Problemas comuns de instalação
Estes são os problemas de instalação mais frequentemente encontrados e suas soluções.Install script returns HTML instead of a shell script
O comando de instalação falha com um destes erros quando o que ele baixou não é o script de instalação. Bash ou Zsh: o erro cita a primeira linha da página retornada.iex tentando executar HTML e CSS como PowerShell.
Missing expression after unary operator '--' ou um ParserError com ParseException em vez disso. Tags HTML ou CSS no texto citado identificam essa falha. Se você baixar com -OutFile install.ps1 em vez disso, o arquivo salvo é a mesma página da web, então isso também não ajuda.
PowerShell, System.Xml.XmlDocument: o erro nomeia esse tipo em vez de citar a página.
irm consegue analisar a resposta como XML, ele retorna um objeto XML em vez de texto, e iex então tenta executar o nome do tipo desse objeto como um comando. O script de instalação é código PowerShell e não pode ser analisado como XML, então esse erro também significa que a resposta foi algo diferente do script. A redação em torno do nome do tipo varia com a versão do PowerShell e o idioma do sistema, mas System.Xml.XmlDocument em si permanece o mesmo, então procure pelo nome do tipo.
CMD: você vê este erro, seguido pelo HTML da página retornada.
- Tente novamente após alguns minutos: o problema é frequentemente temporário. Aguarde e tente o comando original novamente.
-
Use um método de instalação alternativo: diferentemente de uma instalação nativa, uma instalação via Homebrew ou WinGet não se atualiza automaticamente por padrão.
No macOS, instale via Homebrew:
No Windows, instale via WinGet:Depois execute
claude --versionpara confirmar: o comando imprime um número de versão como2.1.211 (Claude Code). Se o shell relatar queclaudenão foi encontrado, abra uma nova janela de terminal e tente novamente: a sessão em que você instalou mantém seu antigoPATH.
command not found: claude after installation
A instalação foi concluída mas claude não funciona. O erro exato varia por plataforma:
No Windows, se o erro começou logo após o Claude Code ser atualizado, consulte restaurar
claude.exe a partir do backup.
Caso contrário, consulte Verifique seu PATH para a correção em cada plataforma.
permission denied when adding to your PATH
Se o comando echo que adiciona ~/.local/bin ao seu PATH imprimir zsh: permission denied: /Users/you/.zshrc ou bash: /home/you/.bashrc: Permission denied, seu usuário não pode escrever nesse arquivo e nada foi salvo. No seu terminal, verifique quem é o proprietário do arquivo, usando o nome do arquivo do seu shell no lugar de ~/.zshrc:
- O proprietário é outro usuário, como
root: assuma a propriedade comsudo chown $(whoami) ~/.zshrc, o que requer direitos de administrador. - O proprietário é você: o arquivo é somente leitura. Torne-o gravável com
chmod u+w ~/.zshrc.
curl: (56) Failure writing output to destination
O comando curl ... | bash baixa o script e o encanua para Bash para execução. Este erro, e o relacionado curl: (23) Failure writing output to destination, significa que Bash não recebeu o script completo. O código de saída 56 indica que o download em si foi interrompido, e o código de saída 23 indica que curl não conseguiu escrever o que recebeu para o pipe, geralmente porque Bash saiu cedo.
Teste se você consegue alcançar downloads.claude.ai com a verificação em Check network connectivity. Se você alcançou o servidor, a falha original foi provavelmente intermitente; tente novamente o comando de instalação. Você também pode tentar um método de instalação alternativo.
Homebrew cask unavailable or outdated
Homebrew relataError: Cask 'claude-code' is unavailable: No Cask with this name exists quando sua cópia local do índice de cask do Homebrew é anterior à publicação do cask. Atualize o índice e tente novamente:
claude-code rastreia o canal estável e é tipicamente cerca de uma semana atrás da versão mais recente; para a versão mais recente execute brew install --cask claude-code@latest em vez disso. Consulte Configure release channel para a diferença entre os dois casks.
Cask 'claude-code@latest' is not installed
O Homebrew oferece dois casks, claude-code e claude-code@latest. Executar brew upgrade --cask claude-code@latest quando esse cask não é o que está instalado imprime Error: Cask 'claude-code@latest' is not installed. Para ver qual cask você tem, execute isto no seu terminal:
TLS or SSL connection errors
Erros como estes significam que o handshake TLS falhou:curl: (35) TLS connect errorschannel: next InitializeSecurityContext failed- PowerShell’s
Could not create SSL/TLS secure channel - PowerShell’s
Could not establish trust relationship for the SSL/TLS secure channel
CRYPT_E_NO_REVOCATION_CHECK ou CRYPT_E_REVOCATION_OFFLINE, vá para a etapa 4.
Soluções:
-
Atualize seus certificados CA do sistema:
No Ubuntu/Debian:
No macOS, o curl do sistema usa o armazenamento de confiança do Keychain; atualizar o macOS em si atualiza os certificados raiz.
-
No Windows PowerShell 5.1, ative TLS 1.2:
Depois execute o instalador na mesma janela:
-
Verifique se há interferência de proxy ou firewall: proxies corporativos que realizam inspeção TLS podem causar esses erros, incluindo
unable to get local issuer certificateeSELF_SIGNED_CERT_IN_CHAIN. Para a etapa de instalação, faça o download de instalação confiar no CA do seu proxy corporativo:Para o Claude Code em si uma vez instalado, defina- macOS/Linux
- Windows PowerShell
NODE_EXTRA_CA_CERTSpara que as requisições de API confiem no mesmo pacote:Peça à sua equipe de TI pelo arquivo de certificado se você não tiver. Você também pode tentar em uma conexão direta para confirmar que o proxy é a causa.- macOS/Linux
- Windows PowerShell
-
No Windows, contorne verificações de revogação bloqueadas. Os erros
CRYPT_E_NO_REVOCATION_CHECK (0x80092012)eCRYPT_E_REVOCATION_OFFLINE (0x80092013)significam que curl alcançou o servidor mas sua rede bloqueia a pesquisa de revogação de certificado, o que é comum atrás de firewalls corporativos. Se o comando que está falhando é ocurlque baixainstall.cmd, execute-o novamente de um Prompt de Comando com--ssl-revoke-best-effortadicionado:Quando os downloads do próprio script atingem os mesmos erros, ele os tenta novamente com verificação de revogação de melhor esforço automaticamente, então a flag é necessária apenas no comando que você executa. A verificação de melhor esforço tolera um servidor de revogação inacessível mas ainda rejeita um certificado que é conhecido por ser revogado, correspondendo a como os navegadores lidam com revogação. Você também pode evitar completamente a verificação de revogação do curl executando o instalador PowerShell do PowerShell, que baixa através do .NET e não falha quando o servidor de revogação está inacessível:Você também pode instalar comwinget install Anthropic.ClaudeCode, que evita curl completamente.
Failed to fetch version from downloads.claude.ai
O instalador não conseguiu alcançar o servidor de download. Isso normalmente significa que downloads.claude.ai está bloqueado em sua rede. Consulte Check network connectivity.
The connection dropped while downloading the update
A conexão com o servidor de download foi encerrada enquantoclaude install ou claude update baixava o binário do Claude Code, e as novas tentativas não se recuperaram. O Claude Code tenta novamente o download quando a conexão cai, a transferência trava ou o arquivo baixado falha na verificação de checksum, até três tentativas no total. Um erro HTTP concluído, como um 404, não gera nova tentativa porque o servidor já respondeu. Antes da v2.1.202, uma única queda de conexão fazia o download falhar imediatamente com o erro simples aborted em vez de tentar novamente.
claude update precede a mensagem com Error: Failed to install native update no stderr.
Um download que permanece conectado mas não termina em 10 minutos falha com Download timed out: exceeded the total deadline em vez disso. O Claude Code não tenta novamente um download que excedeu o tempo limite, porque uma conexão lenta demais para terminar dentro do prazo também não terminará em uma nova tentativa imediata. As etapas abaixo se aplicam às duas mensagens.
Um proxy ou gateway pode encerrar uma transferência longa antes que ela termine, e o binário do Claude Code é um download grande.
O que fazer:
- Execute
claude updatenovamente. Em uma rede de resto saudável, o download geralmente é bem-sucedido na próxima execução. Para a mensagem de tempo limite excedido, execute-o novamente a partir de uma rede mais rápida ou menos limitada. - Se sua rede exigir um proxy, defina
HTTPS_PROXYantes de executar o instalador ouclaude update. Consulte Check network connectivity. - Se um proxy corporativo continuar encerrando a transferência, peça à sua equipe de rede para permitir o download completo de
downloads.claude.ai. Consulte Network access requirements. - Execute
claude doctorno seu shell para obter diagnósticos de instalação
Release verification failed for Claude Code
Esta mensagem declaude update ou claude install significa que o Claude Code não conseguiu confirmar que a versão que estava prestes a instalar é genuína, então não instalou nada. Qualquer versão que você já tenha continua funcionando.
- Um valor que começa com
sidecar_fetch_: execute o mesmo comando novamente a partir do seu shell.claude updatefoi bem-sucedido se imprimir uma linha que começa comSuccessfully updated from, eclaude installfoi bem-sucedido se imprimirClaude Code successfully installed!. - Qualquer outro valor: tente o mesmo comando novamente mais tarde
Auto-update failed · Run claude doctor in the session footer
Esta linha vermelha significa que o Claude Code tentou se atualizar em segundo plano e a atualização não foi instalada. Você pode continuar trabalhando sem fazer nada.
A linha indica claude doctor, cuja linha Last update attempt: failed (install_failed) mostra uma data, mas não a causa. Para concluir a atualização ou ver por que ela falhou, execute claude update no seu shell em vez disso. Se essa instalação também falhar, procure o erro que claude update imprime em Encontre seu erro.
Wrong install command on Windows
Se você vir'irm' is not recognized, The token '&&' is not a valid statement separator, A parameter cannot be found that matches parameter name 'fsSL', ou 'bash' is not recognized as the name of a cmdlet, você copiou o comando de instalação para um shell ou sistema operacional diferente. Se o comando imprimir o texto do script em vez de instalar qualquer coisa, você executou apenas parte dele.
-
irmnão reconhecido: você está em CMD, não PowerShell. Você tem duas opções: Abra PowerShell procurando por “PowerShell” no menu Iniciar, depois execute o comando de instalação original:Ou fique em CMD e use o instalador CMD em vez disso: -
&&não é um separador de instrução válido: você está em PowerShell mas executou o comando do instalador CMD. Use o instalador PowerShell: -
A parameter cannot be found that matches parameter name 'fsSL': você executou o instalador macOS/Linuxcurl -fsSL ... | bashno Windows PowerShell, ondecurlé um alias paraInvoke-WebRequeste rejeita as flags-fsSL. Use o instalador PowerShell em vez disso: -
bashnão reconhecido: você executou o instalador macOS/Linux no Windows. Use o instalador PowerShell em vez disso: -
O comando imprime texto do script em vez de instalar: você executou a metade do download do comando sem a parte que o executa.
irm https://claude.ai/install.ps1por si só imprime o script baixado para o terminal. Canalize-o paraiexpara executá-lo:Em CMD,curl -fsSL https://claude.ai/install.cmdsem-oimprime o script em lote em vez de salvá-lo. Execute o comando completo:
claude --version, que imprime um número de versão como 2.1.211 (Claude Code).
running scripts is disabled on this system
Instalar ou executar Claude Code através de npm no Windows pode falhar com um SecurityError:
claude.ps1 quando você executa claude após uma instalação npm. A política de execução do PowerShell está bloqueando os scripts de inicializador .ps1 que npm cria para seus comandos. A política se aplica a arquivos de script, então não afeta o instalador PowerShell irm https://claude.ai/install.ps1 | iex, que executa o texto baixado diretamente.
Soluções:
- Permita scripts criados localmente para seu usuário, depois tente novamente:
- Chame o inicializador
.cmdem vez disso:npm.cmdeclaude.cmdfazem o mesmo trabalho, e a política não os cobre. - Use o PowerShell installer em vez de npm. Ele instala um binário em vez de um script
.ps1.
The process cannot access the file during Windows install
Se o instalador PowerShell falhar com Failed to download binary: The process cannot access the file ... because it is being used by another process, o instalador não conseguiu escrever em %USERPROFILE%\.claude\downloads. Isso geralmente significa que uma tentativa de instalação anterior ainda está em execução, ou o software antivírus está verificando um binário parcialmente baixado nessa pasta.
Feche qualquer outra janela do PowerShell executando o instalador e aguarde as verificações de antivírus liberarem o arquivo. Depois delete a pasta de downloads e execute o instalador novamente:
claude.exe missing after an update on Windows
Se seu terminal relatar 'claude' is not recognized logo após Claude Code atualizar no Windows, verifique se %USERPROFILE%\.local\bin ainda contém claude.exe. Se esse diretório não estiver em seu PATH de forma alguma, consulte Verifique seu PATH em vez disso. Para atualizar no Windows, Claude Code renomeia o claude.exe existente para um backup e move a nova versão para seu lugar. Se mover a nova versão para seu lugar falhar e Claude Code não conseguir renomear o backup de volta, o diretório mantém o backup mas não tem claude.exe.
O backup é um arquivo no mesmo diretório cujo nome começa com claude.exe.old. seguido por um timestamp numérico. Execute o seguinte no PowerShell para renomear o backup mais recente de volta para claude.exe:
claude --version para confirmar a correção. Um claude.exe restaurado imprime um número de versão.
Se não houver arquivo claude.exe.old.*, ou claude ainda falhar após a renomeação, reinstale em vez disso:
claude.exe ainda estava faltando.
Install killed on low-memory Linux servers
Uma mensagemKilled durante a instalação geralmente significa que o assassino de falta de memória (OOM) do Linux encerrou a etapa claude install porque o sistema ficou sem memória livre. Isso é comum em VPS pequenos e instâncias em nuvem. O script de instalação relata a causa e sai com código 137. Neste exemplo, o número da linha e o ID do processo variam por versão e execução:
-
Adicione espaço de swap se seu servidor tiver RAM limitada. Swap usa espaço em disco como memória de overflow, permitindo que a instalação seja concluída mesmo com RAM física baixa.
Crie um arquivo de swap de 2 GB e ative-o:
Depois tente a instalação novamente:
- Feche outros processos para liberar memória antes de instalar.
- Use uma instância maior se possível. Claude Code requer pelo menos 4 GB de RAM.
Installation was killed before it could finish
O script de instalação informa quando a etapaclaude install é encerrada por um sinal. No Linux, o código de saída 137 significa que o processo recebeu SIGKILL e, em um host com pouca memória, geralmente é o assassino de falta de memória (OOM) do kernel. O script imprime esta explicação e sai com código 137:
Installation was killed before it could finish (exit code <N>) com o código de saída real e omite a explicação sobre falta de memória. A mensagem vem do script de instalação que o macOS e o Linux usam, que também abrange instalações dentro do WSL; os scripts de instalação nativos do Windows nunca a imprimem. Antes da v2.1.200, o script saía apenas com a linha simples Killed do shell.
O que fazer:
- Encerre outros processos para liberar memória e depois execute o instalador novamente
- Adicione espaço de swap ou mude para uma instância maior. Consulte Install killed on low-memory Linux servers para os comandos do arquivo de swap.
Install hangs in Docker
Ao instalar Claude Code em um contêiner Docker, instalar como root em/ pode causar travamentos.
Soluções:
-
Defina um diretório de trabalho antes de executar o instalador. Quando executado de
/, o instalador verifica todo o sistema de arquivos, o que causa uso excessivo de memória. DefinirWORKDIRlimita a verificação a um pequeno diretório: - Aumente a memória do Docker se usar Docker Desktop. Os contêineres de build compartilham a memória alocada para a máquina virtual do Docker Desktop, então abra Settings > Resources no Docker Desktop, aumente o limite de memória e execute o build novamente.
Raw mode is not supported during install
Quando as server-managed settings da sua organização incluem alterações que precisam de security approval, versões do Claude Code anteriores a 2.1.246 tentam mostrar o diálogo de aprovação durante claude install. O diálogo precisa de um terminal em stdin. Quando o instalador executa claude install de um pipe, como curl -fsSL https://claude.ai/install.sh | bash faz, stdin é o pipe em vez de um terminal, então a instalação falha com um erro contendo Raw mode is not supported.
Claude Code v2.1.246 e posterior não mostram o diálogo durante claude install ou claude update. O comando é executado com as configurações que você aprovou pela última vez, e Claude Code mostra o diálogo em sua próxima sessão interativa. Se a configuração de inicialização da sua organização aguarda a busca de configurações, como quando define forceRemoteSettingsRefresh, o diálogo ainda aparece durante esses comandos, e uma execução de instalação de um pipe ainda falha.
Em todas as outras configurações, executar novamente o instalador passa por esse erro, porque o script executa o comando install da versão mais recente mesmo quando você pede para instalar uma versão mais antiga. Execute novamente o comando para sua plataforma:
- macOS/Linux
- Windows PowerShell
claude --version imprime a versão que a execução novamente instalou.
claude update or claude doctor hangs
claude update e claude doctor verificam seus arquivos de configuração de shell para um alias claude desatualizado: ~/.zshrc, ~/.bashrc e ~/.config/fish/config.fish, além no macOS o primeiro de ~/.bash_profile, ~/.bash_login ou ~/.profile que existe. Se você definir ZDOTDIR, o arquivo Zsh é $ZDOTDIR/.zshrc em vez disso. Quando um desses caminhos é um diretório, Claude Code o ignora e ambos os comandos são concluídos normalmente. Antes da v2.1.214, um diretório em um desses caminhos fazia ambos os comandos travarem e deixava a seção System diagnostics de /status em branco. claude doctor travava sem saída; claude update travava logo após imprimir Checking for updates.
Se você atingir o travamento em uma versão anterior, encontre o diretório. Na saída deste comando, uma linha começando com d marca esse caminho como um diretório. Uma linha No such file or directory significa que nada existe nesse caminho e não é a causa:
claude update trava nas versões afetadas, atualize executando novamente o install script em vez disso.
Claude Desktop overrides the claude command on Windows
Se você instalou uma versão mais antiga do Claude Desktop, ele pode registrar um Claude.exe no diretório WindowsApps que tem prioridade de PATH sobre Claude Code CLI. Executar claude abre o aplicativo Desktop em vez do CLI.
Atualize Claude Desktop para a versão mais recente para corrigir este problema.
Claude Code on Windows requires either Git for Windows (for bash) or PowerShell
Git for Windows é opcional. Claude Code usa a PowerShell tool quando Git Bash está ausente, então este erro significa que nenhum shell foi encontrado. Se PowerShell estiver faltando do seu PATH, sua localização padrão éC:\Windows\System32\WindowsPowerShell\v1.0\. Adicione esse diretório ao seu PATH, ou instale PowerShell 7, que fornece pwsh.
Para instalar Git for Windows em vez disso, baixe de git-scm.com/downloads/win. Durante a configuração, selecione “Add to PATH.” Reinicie seu terminal após instalar. Instalá-lo ativa a ferramenta Bash, útil ao trabalhar com scripts e ferramentas baseadas em Bash.
Se Git já estiver instalado mas Claude Code não conseguir encontrá-lo, compare sua localização contra os lugares que Claude Code verifica. Quando CLAUDE_CODE_GIT_BASH_PATH não está definido, Claude Code procura por bash.exe nesta ordem:
- Os locais de instalação padrão
C:\Program Files\GiteC:\Program Files (x86)\Git. - O
gitem seuPATH, usando obin\bash.exedessa instalação do Git.
git que fica na pasta de onde você iniciou Claude Code, ou abaixo dela em um caminho que contém node_modules ou uma pasta de ambiente virtual como .venv ou env, por exemplo C:\dev\env\myproject\Git quando você iniciou de C:\dev\env\myproject. Isso impede que Claude Code execute um executável que um projeto colocou lá. Se seu Git estiver em um local assim, aponte CLAUDE_CODE_GIT_BASH_PATH para ele.
Para apontar Claude Code para uma instalação específica do Git, encontre-a executando where.exe git no PowerShell, depois defina o caminho bin\bash.exe dessa instalação como CLAUDE_CODE_GIT_BASH_PATH em seu settings.json file:
CLAUDE_CODE_GIT_BASH_PATH estiver definido para o caminho correto e o arquivo existir mas Claude Code ainda não o usar, verifique o nome do arquivo primeiro. Claude Code aceita apenas um arquivo nomeado bash.exe, sh.exe, bash ou sh; com qualquer outro nome, como o inicializador git-bash.exe do Git for Windows, ele ignora a variável e auto-detecta Git Bash como se não estivesse definida, registrando um aviso visível com --debug. Um caminho que não existe recebe o mesmo fallback e aviso. Antes da v2.1.219, Claude Code usava qualquer arquivo existente como o shell sem verificar seu nome, e saía na inicialização com Claude Code was unable to find CLAUDE_CODE_GIT_BASH_PATH path quando o caminho não existia.
Se o nome do arquivo estiver correto, software de segurança de endpoint como AppLocker, políticas de restrição de software de Política de Grupo ou agentes EDR podem estar interferindo. Peça à sua equipe de TI para adicionar à allowlist claude.exe e os processos que ele gera, incluindo cmd.exe e bash.exe, em sua política de proteção de endpoint.
Claude Code does not support 32-bit Windows
O Windows inclui duas entradas do PowerShell no menu Iniciar:Windows PowerShell e Windows PowerShell (x86). A entrada x86 é executada como um processo de 32 bits e dispara este erro mesmo em uma máquina de 64 bits. Para verificar qual caso você está, execute isto na mesma janela que produziu o erro:
True, seu sistema operacional está bem. Feche a janela, abra Windows PowerShell sem o sufixo x86 e execute o comando de instalação novamente.
Se isso imprimir False, você está em uma edição de 32 bits do Windows. Claude Code requer um sistema operacional de 64 bits. Consulte os system requirements.
Linux musl or glibc binary mismatch
Se você vir erros sobre bibliotecas compartilhadas ausentes comolibstdc++.so.6 ou libgcc_s.so.1 após a instalação, o instalador pode ter baixado a variante binária errada para seu sistema.
-
Verifique qual libc seu sistema usa:
A saída mencionando
GNU libcouGLIBCsignifica glibc. A saída mencionandomuslsignifica musl. -
Se você estiver em glibc mas recebeu o binário musl, remova a instalação e reinstale. Você também pode baixar manualmente o binário correto usando o manifesto em
https://downloads.claude.ai/claude-code-releases/{VERSION}/manifest.json. Abra um GitHub issue com a saída deldd --versionels /lib/libc.musl*. -
Se você estiver realmente em musl, como Alpine Linux, instale os pacotes necessários:
No Alpine,
ripgrepestá no repositório community. Seapkrelatar que o pacote está faltando, consulte Alpine Linux setup.
Illegal instruction
Se executar claude ou o instalador imprimir Illegal instruction, o binário nativo usa instruções de CPU que seu processador não suporta. Existem duas causas distintas.
Incompatibilidade de arquitetura. O instalador baixou o binário errado, por exemplo x86 em um servidor ARM. Verifique com uname -m no macOS ou Linux, ou $env:PROCESSOR_ARCHITECTURE no PowerShell. Se o resultado não corresponder ao binário que você recebeu, abra um GitHub issue com a saída.
Conjunto de instruções AVX ausente. Se sua arquitetura estiver correta mas você ainda vir Illegal instruction, seu CPU provavelmente não tem AVX ou outra instrução que o binário requer. Isso afeta aproximadamente processadores Intel e AMD anteriores a 2013, e máquinas virtuais onde o hipervisor não passa AVX para o convidado.
Em um VPS ou VM, execute grep -m1 -ow avx /proc/cpuinfo; um resultado vazio significa que AVX não está disponível para o convidado.
Não há solução alternativa de binário nativo; acompanhe issue #50384 para status e inclua seu modelo de CPU de grep -m1 "model name" /proc/cpuinfo no Linux ou sysctl -n machdep.cpu.brand_string no macOS ao relatar.
Métodos de instalação alternativos baixam o mesmo binário nativo e não resolverão nenhuma das causas.
dyld: cannot load on macOS
Se você vir dyld: Symbol not found, dyld: cannot load ou Abort trap: 6 durante a instalação, o binário é incompatível com sua versão ou hardware do macOS.
Um erro Symbol not found que referencia libicucore significa que sua versão do macOS é mais antiga do que o binário suporta:
- Verifique sua versão do macOS: Claude Code requer macOS 13.0 ou posterior. Abra o menu Apple e selecione About This Mac para verificar sua versão.
- Atualize o macOS se você estiver em uma versão mais antiga. O binário usa comandos de carregamento e bibliotecas do sistema que versões mais antigas do macOS não suportam. Métodos de instalação alternativos como Homebrew baixam o mesmo binário e não resolverão este erro.
Bus error while a session is running
Se uma sessão em execução for encerrada e seu shell imprimir Bus error, uma causa possível é que Claude Code não conseguiu mais ler seu próprio arquivo executável do disco. Por exemplo, o arquivo foi truncado, ou excluído no armazenamento de rede, enquanto a sessão estava em execução.
Antes da mensagem do shell, o runtime do Claude Code pode imprimir um relatório de falha que inclui panic(main thread): Bus error at address e oh no: Bun has crashed. This indicates a bug in Bun, not your code. Quando o executável se tornou ilegível, a falha vem do arquivo ilegível, não de um bug no Bun. O relatório também pode estar ausente, se o runtime também não conseguiu ler o código que o imprime.
Inicie uma nova sessão para continuar. Se Claude Code estiver instalado em armazenamento de rede, siga Instalar em armazenamento de rede para que as atualizações não removam um binário de que sessões em execução ainda precisam.
Exec format error on WSL1
Se executar claude em WSL imprimir cannot execute binary file: Exec format error, você está em WSL1 e atingindo uma regressão de binário nativo conhecida rastreada em issue #38788. Os cabeçalhos do programa do binário mudaram de uma forma que o carregador do WSL1 não consegue lidar.
A correção mais limpa é converter sua distribuição para WSL2 do PowerShell:
~/.bashrc dentro do WSL, substituindo o caminho se seu diretório pessoal for diferente:
source ~/.bashrc e tente novamente claude.
npm install errors in WSL
Estes problemas se aplicam se você instalou Claude Code comnpm install -g dentro do WSL. Se você usou o native installer, pule esta seção.
Problemas de detecção de SO ou plataforma. Se npm relatar uma incompatibilidade de plataforma durante a instalação, WSL provavelmente está pegando o npm do Windows. Execute npm config set os linux primeiro, depois instale com npm install -g @anthropic-ai/claude-code --force. Não use sudo.
exec: node: not found ao executar claude. Seu ambiente WSL provavelmente está usando a instalação do Windows do Node.js. Confirme com which npm e which node: caminhos começando com /mnt/c/ são binários do Windows, enquanto caminhos Linux começam com /usr/. Para corrigir isso, instale Node via gerenciador de pacotes da sua distribuição Linux ou via nvm.
Conflitos de versão nvm. Se você tiver nvm instalado tanto em WSL quanto em Windows, alternar versões do Node em WSL pode quebrar porque WSL importa o PATH do Windows por padrão e o nvm do Windows tem prioridade. A causa mais comum é que nvm não está carregado em seu shell. Adicione o carregador nvm a ~/.bashrc ou ~/.zshrc:
Permission errors during installation
Se o instalador nativo falhar com erros de permissão, o diretório de destino pode não ser gravável. Consulte Check directory permissions. Se você instalou anteriormente com npm e está atingindo erros de permissão específicos do npm, mude para o instalador nativo:Native binary not found after npm install
O pacote npm@anthropic-ai/claude-code baixa o binário nativo como uma dependência opcional por plataforma, como @anthropic-ai/claude-code-darwin-arm64. npm então executa o script postinstall do pacote, que copia esse binário no lugar como o comando claude; até que seja executado, claude é um script de espaço reservado. Se o download ou a etapa postinstall for ignorada, o espaço reservado permanece no lugar, e executar claude no macOS e Linux imprime:
bin/claude.exe é esse mesmo espaço reservado de script de shell em vez de um executável real, então PowerShell e CMD relatam que não conseguem executar o arquivo em vez de imprimir esta mensagem.
Verifique as seguintes causas:
- Dependências opcionais estão desabilitadas. Remova
--omit=optionaldo seu comando npm install,--no-optionaldo pnpm, ou--ignore-optionaldo yarn, e verifique que.npmrcnão defineoptional=false. Depois reinstale. O binário nativo é entregue apenas como uma dependência opcional, então não há fallback JavaScript se for ignorado, e executarinstall.cjsnovamente não consegue colocar um binário que nunca foi baixado. - Scripts de instalação estão desabilitados.
--ignore-scriptse algumas configurações pnpm ignoram a etapa postinstall mas ainda baixam o pacote de plataforma. Executenode node_modules/@anthropic-ai/claude-code/install.cjscomo a mensagem sugere, ou reinstale sem a flag. Se postinstall não conseguir executar em seu ambiente,node node_modules/@anthropic-ai/claude-code/cli-wrapper.cjsencontra o pacote baixado e o inicia, ao custo de um processo Node extra em cada inicialização. Se o wrapper imprimirCould not find native binary packageem vez disso, o pacote de plataforma nunca foi baixado, então corrija a causa de dependências opcionais acima primeiro. - Plataforma não suportada. Binários pré-compilados são publicados para
darwin-arm64,darwin-x64,linux-x64,linux-arm64,linux-x64-musl,linux-arm64-musl,win32-x64ewin32-arm64. Claude Code não envia um binário para outras plataformas; consulte os system requirements. No FreeBSD, o instalador relata a plataforma como não suportada. Antes da v2.1.205, ele tratava FreeBSD como Linux e baixava um binário que não conseguia executar. - Espelho npm corporativo está faltando os pacotes de plataforma. Certifique-se de que seu registro espelha todos os oito pacotes
@anthropic-ai/claude-code-*de plataforma além do pacote meta.
npm ENOTEMPTY error during update or reinstall
Quando você executa npm install -g @anthropic-ai/claude-code sobre uma instalação existente, npm pode falhar ao mover o diretório do pacote antigo para o lado:
npm error path nomeia o diretório que npm não conseguiu mover. Delete esse diretório e qualquer diretório .claude-code-* restante ao lado dele, que execuções anteriores interrompidas podem deixar para trás. Os comandos abaixo encontram seu diretório de pacote global com npm root -g; se o diretório que a linha npm error path nomeia não estiver sob o diretório que npm root -g imprime, por exemplo porque você alternou versões do Node com nvm, delete os diretórios que o erro nomeia em vez disso:
- macOS/Linux
- Windows PowerShell
no matches found, não havia nenhum para remover:claude --version, que imprime um número de versão como 2.1.211 (Claude Code).
Login e autenticação
Estas seções abordam falhas de login, erros OAuth e problemas de token.Redefinir seu login
Quando o login falha e a causa não é óbvia, uma re-autenticação limpa resolve a maioria dos casos:- Execute
/logoutpara sair completamente - Feche Claude Code
- Reinicie com
claudee complete o processo de autenticação novamente
c para copiar a URL OAuth para sua área de transferência e depois cole-a em um navegador manualmente. Isso também funciona quando a URL se estende por várias linhas em um terminal estreito ou SSH e não pode ser clicada diretamente.
OAuth error: Invalid code
Se você virOAuth error: Invalid code. Please make sure the full code was copied, o código de login expirou ou foi truncado durante cópia e cola.
Soluções:
- Pressione Enter para tentar novamente e complete o login rapidamente após o navegador abrir
- Digite
cpara copiar a URL completa se o navegador não abrir automaticamente - Se usar uma sessão remota/SSH, o navegador pode abrir na máquina errada. Copie a URL exibida no terminal e abra-a em seu navegador local em vez disso.
403 Forbidden after login
Se você virAPI Error: 403 Request not allowed após fazer login:
- Usuários Claude Pro/Max: verifique se sua assinatura está ativa em claude.ai/settings
- Usuários do Anthropic Console: confirme que sua conta tem a função “Claude Code” ou “Developer”. Os administradores atribuem isso na página Members do Console em platform.claude.com/settings/members.
- Atrás de um proxy: proxies corporativos podem interferir com requisições de API. Consulte network configuration para configuração de proxy.
Claude Code access has not been granted for this account
Se a página de login mostrarAuthorization failed com a mensagem Claude Code access has not been granted for this account. Contact your administrator. após você fazer login a partir do Claude Code, sua organização Claude Enterprise definiu sua função como Custom e nenhuma das custom roles atribuídas aos seus grupos concede Claude Code. Na função Custom, você obtém acesso apenas dessas funções personalizadas, portanto nada que você altere no Claude Code resolve esse erro.
Para obter acesso:
- Peça a um Owner de sua organização Claude para atribuir uma função personalizada que conceda acesso ao Claude Code a um de seus grupos, ou para alterar sua função de Custom para uma função padrão como User. Os Owners gerenciam funções nas role settings da organização.
- Após o Owner fazer a alteração, execute
claudee faça login novamente.
This organization has been disabled with an active subscription
Se você virAPI Error: 400 ... "This organization has been disabled" apesar de ter uma assinatura Claude ativa, uma variável de ambiente ANTHROPIC_API_KEY está substituindo sua assinatura. Isso comumente acontece quando uma chave de API antiga de um empregador anterior ou projeto ainda está definida em seu perfil de shell.
Quando ANTHROPIC_API_KEY está presente e você a aprovou, Claude Code usa essa chave em vez das credenciais OAuth da sua assinatura. Em modo não interativo com a flag -p, a chave é sempre usada quando presente. Consulte authentication precedence para a ordem de resolução completa.
Para usar sua assinatura em vez disso, desdefina a variável de ambiente e remova-a do seu perfil de shell:
- macOS/Linux
- Windows PowerShell
~/.zshrc, ~/.bashrc ou ~/.profile para linhas export ANTHROPIC_API_KEY=... e remova-as para tornar a alteração permanente. No Windows, verifique seu perfil PowerShell em $PROFILE e suas variáveis de ambiente do usuário para ANTHROPIC_API_KEY. Execute /status dentro do Claude Code para confirmar qual método de autenticação está ativo.
OAuth login fails in WSL2, SSH, or containers
Quando Claude Code é executado em WSL2, em uma máquina remota via SSH ou dentro de um container, o navegador geralmente abre em um host diferente e seu redirecionamento não consegue alcançar o servidor de callback local do Claude Code. Depois que você faz login, o navegador mostra um código de login em vez de redirecionar automaticamente. Cole esse código no terminal no promptPaste code here if prompted para completar o login.
Se o navegador não abrir nada do WSL2, defina a variável de ambiente BROWSER para o caminho do seu navegador do Windows:
c no prompt de login interativo para copiar a URL OAuth, ou copie a URL que claude auth login imprime, e abra-a em um navegador em sua máquina local.
Se colar o código no prompt interativo não fizer nada, o atalho de cola do seu terminal provavelmente não está alcançando o campo de entrada. Tente o atalho de cola alternativo do seu terminal, frequentemente clique direito ou Shift+Insert no Windows Terminal, ou use claude auth login em vez disso, que lê o código colado da entrada padrão:
Not logged in or token expired
Se Claude Code solicitar que você faça login novamente após uma sessão, seu token OAuth pode ter expirado. Execute/login para re-autenticar. Se isso acontecer frequentemente, verifique se seu relógio do sistema está preciso, pois a validação de token depende de timestamps corretos.
Sessões paralelas em uma máquina compartilham um login salvo e coordenam sua renovação para que apenas um processo atualize o token por vez. Para saber o que as outras sessões fazem depois que você faz login novamente em uma delas, consulte Not logged in.
Antes da v2.1.211, acordar a máquina do sono poderia fazer com que duas sessões renovassem com o mesmo token, o que revogava o login salvo e solicitava que cada sessão aberta fizesse login novamente de uma vez.
No macOS, Claude Code salva credenciais no Keychain de login. Quando o Keychain rejeita a escrita, como quando está bloqueado em uma sessão SSH ou sua senha está fora de sincronização com sua senha de conta, Claude Code salva seu login no arquivo de texto simples ~/.claude/.credentials.json em vez disso. Um login do Console que cria uma chave de API falha até que o Keychain seja gravável novamente.
Para tornar o Keychain gravável novamente e mover seu login de volta para o Keychain criptografado:
1
Verificar acesso ao Keychain
Execute
claude doctor para verificar o acesso ao Keychain. Quando o Keychain rejeita gravações, o relatório lista um aviso que começa com macOS Keychain is not writable, seguido por uma correção sugerida. Quando o relatório não lista nenhum aviso do Keychain, o Keychain é gravável e você pode pular para a última etapa.2
Desbloquear o Keychain
claude doctor novamente. Quando o desbloqueio funcionou, o relatório não lista mais o aviso do Keychain.3
Ressincronizar a senha do Keychain se desbloquear não ajudar
Abra Keychain Access, selecione o keychain
login e escolha Edit > Change Password for Keychain “login” para ressincronizá-lo com sua senha de conta. Depois execute claude doctor novamente. Prossiga para a próxima etapa assim que o relatório não listar mais o aviso do Keychain.4
Sair e fazer login novamente
Assim que o Keychain for gravável novamente, Claude Code move as credenciais de volta na próxima vez que grava uma credencial. Para forçar agora, execute
/logout e depois /login. Sair remove todas as credenciais armazenadas, incluindo o conteúdo do arquivo de texto simples, logins de servidor MCP salvos e valores sensíveis de plugin, então espere re-autorizar servidores MCP e re-inserir segredos de plugin depois. Fazer login novamente armazena seu login no Keychain.Bedrock, Agent Platform, or Foundry credentials not loading
Se você configurou Claude Code para usar um provedor de nuvem e vêCould not load credentials from any providers no Amazon Bedrock, Could not load the default credentials no Google Cloud’s Agent Platform, ou ChainedTokenCredential authentication failed no Microsoft Foundry, seu CLI do provedor de nuvem provavelmente não está autenticado no shell atual.
Para Amazon Bedrock, confirme que suas credenciais AWS são válidas:
ANTHROPIC_VERTEX_PROJECT_ID e CLOUD_ML_REGION estão definidos em seu shell, depois defina credenciais padrão de aplicativo:
ANTHROPIC_FOUNDRY_API_KEY está definido, ou faça login com a CLI do Azure para que a cadeia de credenciais padrão possa encontrar sua conta:
Still stuck
Se nenhum dos itens acima resolver seu problema:- Verifique o GitHub repository para problemas conhecidos, ou abra um novo com seu sistema operacional, o comando de instalação que você executou e a saída de erro completa
- Se
claude --versionfunciona mas algo mais está errado, executeclaude doctorpara um relatório de diagnóstico automatizado - Se você conseguir iniciar uma sessão, use
/feedbackdentro do Claude Code para relatar o problema - Se o problema for com sua conta em vez da instalação, como um loop de login, uma assinatura que não é reconhecida ou uma organização desabilitada, entre em contato com o suporte da Anthropic: faça login em claude.ai (Usuários do Console: platform.claude.com), clique em suas iniciais no canto inferior esquerdo e selecione Get help. Consulte How to get support para o fluxo completo.