SSD Nodes Learn 🎉 VPS desde $4.99/mês
Guias Matt ConnorPor Matt Connor

Claude no Linux: aplicativo desktop e CLI

Veja o que roda nativamente no Linux: app desktop beta via apt, CLI Claude Code, plugins de editor e qual plano pago inclui cada opção.

Quais componentes do Claude executam nativamente no Linux atualmente

O Claude no Linux está disponível em quatro superfícies distintas e, em agosto de 2026, todas funcionam numa máquina Ubuntu ou Debian comum. A aplicação de desktop é instalada a partir do repositório apt da Anthropic e está em beta. A CLI do Claude Code (interface de linha de comandos) é um binário compilado e funciona em mais distribuições do que a aplicação de desktop. A aplicação Web em claude.ai requer apenas um navegador, e a API é um endpoint HTTPS que pode ser chamado a partir do seu próprio código.

Duas funcionalidades disponíveis no macOS e no Windows estão ausentes da versão beta da aplicação de desktop para Linux: Computer Use, em que o Claude controla aplicações no ecrã, e a ditado por voz. A Anthropic documenta ambas como ainda indisponíveis no Linux. A CLI tem a sua própria funcionalidade de ditado por voz, portanto a limitação está na aplicação de desktop, não no Claude em si.

A disponibilidade muda, por isso leia esta página como uma descrição das superfícies disponíveis e confirme o estado atual antes de planear com base nele. A última secção lista as páginas que deve consultar.

Instalar a aplicação de desktop Claude no Ubuntu ou Debian

Os requisitos documentados são Ubuntu 22.04 ou posterior, ou Debian 12 ou posterior, em x86_64 (que dpkg chama amd64) ou arm64. Outras distribuições baseadas em Debian podem funcionar, mas não são testadas. O Fedora e o RHEL ainda não têm um pacote, por isso nesses sistemas deve usar a CLI ou o navegador.

Instale a partir do repositório apt, em vez de usar um ficheiro .deb transferido. A aplicação para Linux não tem um atualizador próprio. As novas versões só ficam disponíveis através do gestor de pacotes. Registar o repositório é o que permite a apt upgrade encontrá-las.

sudo apt install curl gnupg
sudo curl -fsSLo /usr/share/keyrings/claude-desktop-archive-keyring.asc \
  https://downloads.claude.ai/claude-desktop/key.asc
gpg --show-keys /usr/share/keyrings/claude-desktop-archive-keyring.asc

gpg --show-keys deve mostrar a impressão digital 31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE. Compare-a antes de registar o repositório. Uma chave de assinatura que não verificou é uma chave em que está a confiar sem confirmação. Se o gpg indicar que o ficheiro não contém dados OpenPGP válidos, a transferência falhou. Nesse caso, apt update falha mais tarde com NO_PUBKEY BAA929FF1A7ECACE.

Registar o repositório consiste numa única linha deb escrita em /etc/apt/sources.list.d/claude-desktop.list. Copie essa linha da página de instalação do Linux da Anthropic, code.claude.com/docs/en/desktop-linux, exatamente como aparece. O endereço do repositório é a parte deste procedimento com maior probabilidade de mudar. Uma linha escrita de memória é o que o deixa a olhar para E: Unable to locate package claude-desktop depois. Leia a linha antes de a colar: arch=amd64,arm64 é o motivo pelo qual o apt não encontra nada noutra arquitetura, e signed-by= aponta para o ficheiro de keyring que acabou de verificar. Assim, essa chave fica limitada a este repositório, em vez de ser confiada para tudo o que o apt lê.

sudo apt update && sudo apt install claude-desktop

Inicie a aplicação a partir do lançador de aplicações ou execute claude-desktop num terminal. Inicie sessão com a sua conta claude.ai ou através do SSO (início de sessão único) da sua organização, se a sua empresa o tiver configurado. A aplicação de desktop não aceita uma chave de API do Claude Console. A autenticação baseada em chave é uma funcionalidade da CLI.

E: Unable to locate package claude-desktop significa que o apt nunca leu o repositório. cat /etc/apt/sources.list.d/claude-desktop.list deve mostrar a linha deb que escreveu, e dpkg --print-architecture deve mostrar amd64 ou arm64, porque não são publicados pacotes para outras arquiteturas. As atualizações chegam depois com o resto do sistema, a partir de sudo apt update && sudo apt upgrade.

O que só existe num navegador

claude.ai funciona em qualquer navegador atual e em qualquer distribuição, o que faz dele a solução para Fedora, RHEL, Arch, openSUSE e qualquer outro sistema sem pacote. O navegador também dá acesso ao Claude Code na web, onde a sessão é executada na cloud da Anthropic em vez de no seu computador, e utiliza sempre as credenciais da sua subscrição.

É importante compreender a limitação do navegador. Uma sessão na cloud não consegue ler os ficheiros do seu próprio servidor nem executar comandos nele. Tudo o que interage com a sua máquina requer software nessa máquina, ou seja, a CLI ou a aplicação de desktop.

O que a CLI oferece e a aplicação Web não

Inicie claude num diretório e ele funcionará nesse diretório. Essa é a diferença. O resto resulta disso.

  • Lê e edita os ficheiros do diretório de trabalho e mostra cada alteração antes de a aplicar.
  • Executa os comandos shell que aprovar. Assim, pode compilar um projeto, executar uma suite de testes, ler um log ou inspecionar um serviço diretamente no servidor.
  • Funciona sem uma sessão interativa: claude -p "read the nginx error log and summarise it" mostra uma resposta e termina. É isso que deve usar num cron job ou num pipeline.
  • Liga servidores MCP (model context protocol) através de claude mcp add. Isto fornece ao modelo ferramentas além do sistema de ficheiros.
  • Funciona onde não existe qualquer ambiente gráfico. Isso aplica-se a qualquer VPS (virtual private server) que alugar.

Este último ponto explica por que razão um guia de servidores se preocupa com a CLI. Um servidor alugado tem SSH (secure shell) e nada mais. Por isso, o terminal é a única interface que pode estar disponível consigo. A execução nesse contexto tem regras próprias. executar o Claude Code num VPS dentro do tmux explica-as em detalhe, e usar o Claude no trabalho diário de administração de sistemas aborda as tarefas que vale a pena delegar-lhe.

As integrações com editores ficam entre as duas opções. A extensão do VS Code requer o VS Code 1.94.0 ou posterior e disponibiliza um painel gráfico dentro do editor, com revisão de diferenças e do plano. A extensão inclui uma cópia privada da CLI para esse painel e não coloca claude no seu PATH. Por isso, escrever claude no terminal integrado continua a exigir a instalação autónoma. Os editores baseados no VS Code instalam a mesma extensão a partir do registo Open VSX. Também existe um plugin para o JetBrains.

É necessário ter Node.js para executar o Claude Code no Linux?

Não com o método de instalação recomendado. O instalador nativo transfere um binário compilado, e esse binário não é executado pelo Node.js.

curl -fsSL https://claude.ai/install.sh | bash
claude --version

claude --version deve apresentar um número de versão, como 2.1.211 (Claude Code). Se algo parecer incorreto, execute claude doctor. Esse comando apresenta diagnósticos apenas de leitura sobre a instalação e os ficheiros de definições, sem iniciar uma sessão.

O Node.js só é necessário no método npm. A partir da versão 2.1.198 do pacote, o pacote npm requer Node.js 22 ou posterior. Numa versão mais antiga do Node.js, o npm apresenta um aviso EBADENGINE em vez de falhar, porque o pacote inclui o mesmo binário nativo como dependência específica da plataforma e cria uma ligação para o local correto.

npm install -g @anthropic-ai/claude-code

Não execute esse comando com sudo. A documentação desaconselha sudo npm install -g porque isso deixa ficheiros pertencentes a root no prefixo global do npm. Como resultado, a instalação ou atualização seguinte feita por um utilizador sem privilégios falha devido a permissões. Quando o diretório global do npm não permite escrita, a atualização automática em segundo plano deixa de funcionar, e claude doctor apresenta as correções.

A Anthropic também publica repositórios de pacotes assinados para Debian, Fedora, RHEL e Alpine. Assim, sudo apt install claude-code funciona de forma semelhante ao pacote para desktop, com a sua própria chave de assinatura em https://downloads.claude.ai/keys/claude-code.asc.

Instalação por utilizador ou para todo o sistema?

O instalador nativo faz uma instalação por utilizador. Coloca um launcher em ~/.local/bin/claude como link simbólico para ~/.local/share/claude/versions/, não precisa de root e atualiza-se em segundo plano. Cada utilizador da máquina obtém uma cópia separada, numa versão separada.

A instalação através de um gestor de pacotes é feita para todo o sistema. Um binário serve todos os utilizadores, precisa de root e não é atualizado automaticamente pelo Claude Code. Faça a atualização com sudo apt update && sudo apt upgrade claude-code, o mesmo comando que já utiliza para tudo o resto no sistema.

Escolha a instalação por utilizador numa máquina em que inicia sessão com a sua própria conta, que é o caso da maioria dos trabalhos em VPS. Escolha a instalação através de um pacote num servidor partilhado ou numa imagem de máquina, quando pretende uma versão única para todos e quer atualizá-la de acordo com o seu próprio calendário. Numa instalação nativa, duas definições em ~/.claude/settings.json determinam o comportamento das atualizações:

{
  "autoUpdatesChannel": "stable",
  "env": {
    "DISABLE_AUTOUPDATER": "1"
  }
}

O canal stable segue uma versão com cerca de uma semana e ignora versões com regressões graves. DISABLE_AUTOUPDATER apenas interrompe a verificação em segundo plano. claude update continua a funcionar, pelo que mantém o controlo sobre o momento em que uma nova versão é instalada. Isto é importante num servidor onde uma tarefa longa é executada sem supervisão e em que prefere que o binário não mude durante a execução.

Inicie sessão por SSH e mantenha a sessão ativa

Surgem dois problemas específicos do Linux na primeira execução da CLI num servidor alugado. O fluxo de início de sessão requer um browser, mas o servidor não tem nenhum. Uma ligação SSH que cai interrompe o trabalho em execução.

O tmux resolve o segundo problema. Uma sessão tmux pertence ao servidor tmux na máquina remota, não à sua ligação. Por isso, uma ligação interrompida deixa o processo em execução.

tmux new -s claude
claude

Desligue-se da sessão com Ctrl-b e depois d. Mais tarde, volte a ligar-se com tmux attach -t claude.

O início de sessão é o primeiro problema. Execute claude. O comando apresenta um URL de autorização. Abra esse URL no browser do seu próprio computador. Depois de iniciar sessão, o browser apresenta um código de início de sessão em vez de redirecionar para o servidor, porque o browser do seu portátil não consegue aceder ao servidor de callback que o Claude Code iniciou no endereço de loopback da máquina remota. Cole esse código no terminal, no prompt Paste code here if prompted. O terminal apresenta Login successful.

Para uma sessão que tenha de começar sem supervisão, claude setup-token abre a mesma autorização no browser e apresenta no terminal um token OAuth válido por one year. O comando não guarda o token em nenhum local. Copie-o e defina-o onde for necessário.

export CLAUDE_CODE_OAUTH_TOKEN=your-token

Esse token requer um plano pago e só pode fazer pedidos a modelos. Trate-o como uma palavra-passe com validade de one year. O local onde o guardar e a forma de impedir que um agente o leia são explicados em manter os segredos fora do alcance dos agentes de IA.

Os servidores pequenos enfrentam ainda outro problema. A instalação requer aproximadamente 512 MB de memória livre, e o requisito de hardware documentado para a execução é 4 GB de RAM ou mais. Por isso, numa instância com 1 GB, o kernel termina a instalação através do mecanismo out-of-memory killer:

Setting up Claude Code...
Installation was killed before it could finish (exit code 137). This usually means the system ran out of memory.

Adicione swap e execute novamente o instalador. O swap é espaço em disco que o kernel utiliza como memória de overflow. É muito mais lento do que a RAM, mas é suficiente para concluir uma instalação.

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

swapon ativa o ficheiro apenas durante este boot. Adicione uma linha para /swapfile a /etc/fstab se quiser que volte a estar disponível depois de um reboot. O que deve bloquear antes de permitir que um agente execute comandos num servidor em produção é explicado em executar o Claude Code em segurança num VPS.

Onde ficam as suas credenciais do Claude no Linux

No Linux, /login grava a credencial em ~/.claude/.credentials.json com o modo de ficheiro 0600. O macOS coloca a mesma credencial no Keychain encriptado, por isso um hábito formado num Mac não se aplica ao Linux: neste sistema, o token é um ficheiro simples no seu diretório pessoal, e qualquer processo executado com o seu utilizador pode lê-lo. Definir CLAUDE_CONFIG_DIR move o ficheiro para esse diretório.

Isto tem duas consequências. Uma cópia de segurança de /home contém um login ativo, por isso copiar essa cópia para uma máquina partilhada entrega a sua conta a qualquer pessoa que consiga lê-la. E uma imagem de máquina criada a partir de um sistema onde iniciou sessão inclui esse login em todas as instâncias clonadas a partir dela. Execute /logout antes de criar qualquer snapshot.

A precedência das credenciais causa problemas a quem tem uma subscrição e uma chave de API ao mesmo tempo. Quando ANTHROPIC_API_KEY está definida na sua shell, o Claude Code utiliza-a depois de a aprovar, e a sua subscrição fica sem utilização enquanto a chave é faturada por token. /status mostra qual é a credencial ativa, e unset ANTHROPIC_API_KEY permite voltar ao login da subscrição.

Os logins expiram. Nos três dias anteriores à expiração, a linha de arranque apresenta Your login expires in 3 days, e esse aviso nunca bloqueia um pedido. Depois da expiração, todos os pedidos falham com Login expired · Please run /login. Tenha isto em conta antes de deixar uma sessão não supervisionada em execução durante um fim de semana, porque essa sessão deixa de avançar e não consegue recuperar por si própria.

Uma subscrição Claude cobre tudo?

Um plano pago cobre todas as interfaces com o mesmo início de sessão. Uma conta Pro, Max, Team ou Enterprise permite iniciar sessão em claude.ai num navegador, na aplicação para desktop, na CLI e na extensão para VS Code. A subscrição é a mesma em todos os casos. O plano gratuito do claude.ai não inclui acesso ao Claude Code. Por isso, a CLI e as funcionalidades do Claude Code na aplicação para desktop exigem um plano pago ou uma conta Claude Console.

A API é um produto diferente, com faturação própria. Uma conta Console cobra por token, com base no que enviar efetivamente. Isto é adequado para um serviço que esteja a desenvolver, e não para escrever comandos num terminal. Definir ANTHROPIC_API_KEY coloca a CLI nesse modelo de faturação. Esta é uma escolha sua, não um mecanismo de recurso.

Os preços e os limites dos planos mudam com demasiada frequência para serem repetidos aqui. Duas páginas acompanham os valores atuais: quanto custa realmente o Claude Code e de que plano Claude precisa. Se estiver a comparar a faturação por token com um plano mensal, a API comparada com uma subscrição explica onde fica o ponto de equilíbrio.

Os erros de instalação que verá efetivamente

bash: claude: command not found logo depois de uma instalação bem-sucedida. O binário está em ~/.local/bin/claude e esse diretório não está no caminho de pesquisa da sua shell. Confirme com echo $PATH | tr ':' '\n' | grep -Fx "$HOME/.local/bin", que não imprime nada quando a entrada está ausente. Corrija no bash com echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc e depois execute source ~/.bashrc. Instalar apenas a extensão do VS Code nunca cria esse ficheiro, porque a extensão mantém a sua cópia da CLI dentro do diretório da extensão.

Error loading shared library libstdc++.so.6. O instalador selecionou a compilação musl para um sistema glibc. Isto acontece quando estão presentes pacotes de compilação cruzada para musl e a deteção os interpreta incorretamente. Execute ldd --version 2>&1 | head -1: a identificação da saída GNU libc ou GLIBC significa que está a usar glibc e recebeu o binário errado. Remova a instalação e execute novamente o instalador. Em sistemas Alpine e noutros sistemas musl, a correção é o oposto: apk add libgcc libstdc++ ripgrep.

Duas cópias de claude no mesmo servidor. which -a claude apresenta todas as correspondências no seu PATH. Uma instalação nativa é um link simbólico de ~/.local/bin/claude para ~/.local/share/claude/versions/, uma instalação npm local antiga fica em ~/.claude/local/ e npm -g ls @anthropic-ai/claude-code mostra uma instalação npm global. Remova as cópias que não pretende manter, porque uma cópia antiga mais acima no seu PATH faz com que um erro já corrigido pareça continuar presente.

Onde consultar o estado atual

Todos os números de versão e datas deste guia correspondem a um instantâneo de agosto de 2026. O que permanece válido é a estrutura: quatro superfícies, uma única sessão iniciada entre as opções pagas e uma decisão sobre se a CLI pertence ao seu utilizador ou a toda a máquina.

FAQ

Existe uma aplicação de desktop do Claude para Linux?

Sim. Em agosto de 2026, está em beta e é compatível com Ubuntu 22.04 ou posterior e Debian 12 ou posterior, em amd64 ou arm64. Instale-a com sudo apt install claude-desktop depois de adicionar o repositório apt da Anthropic e a respetiva chave de assinatura, para que as novas versões sejam instaladas com as atualizações normais do sistema. A versão para Linux tem os mesmos separadores da aplicação para macOS, incluindo o separador Claude Code. Computer Use e a ditado por voz ainda não estão disponíveis na versão para Linux. Fedora e RHEL não têm pacote, por isso, nessas distribuições, use a CLI ou claude.ai num navegador.

Preciso do Node.js para executar o Claude Code no Linux?

Não para a instalação recomendada. curl -fsSL https://claude.ai/install.sh | bash descarrega um binário compilado que não usa Node.js em tempo de execução. O Node.js só é necessário se instalar o pacote npm, que pede Node.js 22 ou posterior a partir da versão 2.1.198. Com uma versão mais antiga do Node.js, o npm apresenta um aviso EBADENGINE e a instalação termina na mesma, porque o mesmo binário nativo é obtido como dependência específica da plataforma. Nunca o instale com sudo npm install -g, porque isso deixa ficheiros pertencentes a root no seu prefixo npm e impede atualizações posteriores.

Como inicio sessão no Claude Code através de SSH?

Execute claude. O comando apresenta um URL de autorização. Abra esse URL no navegador do seu próprio computador, não no servidor. Depois de iniciar sessão, o navegador apresenta um código de início de sessão em vez de fazer o redirecionamento, porque não consegue alcançar o listener de callback que o Claude Code iniciou no endereço de loopback da máquina remota. Cole esse código no prompt Paste code here if prompted. Para sessões iniciadas sem ninguém presente, execute claude setup-token e defina o token apresentado como CLAUDE_CODE_OAUTH_TOKEN onde for necessário.

Onde é guardado o meu início de sessão do Claude Code no Linux?

Em ~/.claude/.credentials.json, com o modo de ficheiro 0600, ou em CLAUDE_CONFIG_DIR quando essa variável está definida. No Linux não é usado nenhum keychain, ao contrário do macOS, por isso qualquer processo executado com o seu utilizador pode ler o ficheiro. Uma cópia de segurança /home ou uma imagem da máquina transporta, portanto, um início de sessão funcional. Execute /logout antes de criar um snapshot ou copiar um sistema. Se ANTHROPIC_API_KEY também estiver definida no seu ambiente, tem precedência sobre o início de sessão da subscrição armazenado depois de a aprovar. /status mostra qual está ativo.

A minha subscrição Claude Pro também cobre a CLI e a aplicação web?

Sim. Um plano Pro, Max, Team ou Enterprise inicia sessão no claude.ai, na aplicação de desktop, na CLI e na extensão do VS Code com uma única conta. O plano gratuito do claude.ai não inclui o Claude Code, por isso a CLI do terminal requer um plano pago ou uma conta Claude Console. A API é faturada separadamente por token a partir de uma conta Console, que é um produto diferente de uma subscrição.