SpyBara
Go Premium

desktop.md 2026-10-16 22:59 UTC to 2026-10-17 23:57 UTC

No changes for this document in this history range.

2026
Thu 1 23:59 Fri 2 22:59 Sat 3 23:57 Sun 4 23:58 Tue 6 23:59 Wed 7 23:59 Thu 8 22:58 Fri 9 23:02 Sat 10 23:01 Sun 11 23:57 Tue 13 23:57 Wed 14 22:58 Thu 15 23:58 Fri 16 22:59 Mon 19 23:58 Tue 20 23:00 Wed 21 23:02 Thu 22 22:58 Fri 23 22:59 Sat 24 22:59 Sun 25 23:58 Mon 26 22:57 Tue 27 22:59 Wed 28 23:57 Thu 29 23:57 Fri 30 23:01

Aplicativo Desktop

Aproveite ao máximo o Claude Code Desktop: sessões paralelas com isolamento Git, layout de painel com arrastar e soltar, terminal integrado e editor de arquivo, chats laterais, computer use, Dispatch sessions do seu telefone, revisão visual de diff, visualizações de aplicativos, monitoramento de PR, conectores e configuração corporativa.

O aplicativo Claude Desktop tem três abas: Chat para conversas, Cowork para Dispatch e trabalho agentic mais longo, e Code para desenvolvimento de software. Esta página é a referência para a aba Code.

Para Windows ARM64, baixe o instalador ARM64. No Linux, instale com apt; consulte Claude Desktop no Linux.

Após instalar, inicie Claude, faça login e clique na aba Code. Para um passo a passo de sua primeira sessão, consulte o guia de primeiros passos.

Na aba Code, cada conversa é uma sessão: ela tem seu próprio histórico de chat e pasta de projeto, independente de qualquer outra sessão. A barra lateral lista suas sessões e permite que você execute várias em paralelo. Dentro de uma sessão você pode:

Para trabalho recorrente agendado, atalhos de teclado, ou envio de tarefas do seu telefone, consulte as páginas e seções vinculadas. Se você já usa o CLI baseado em terminal, consulte a comparação CLI para ver o que é transferido.

Iniciar uma sessão

Antes de enviar sua primeira mensagem, configure quatro coisas na área de prompt:

  • Ambiente: escolha onde Claude é executado. Selecione Local para sua máquina, Cloud para uma sessão na nuvem que continua após você fechar o aplicativo, uma conexão SSH para uma máquina remota que você gerencia, ou no Windows uma distribuição WSL. Uma tarefa em uma sessão SSH pode continuar enquanto o Desktop está desconectado, mas com uma conta Claude ela pode parar quando o login dela expirar. Veja configuração de ambiente.
  • Pasta do projeto: selecione a pasta ou repositório em que Claude trabalha. Para sessões em nuvem, você pode adicionar múltiplos repositórios.
  • Modelo: escolha um modelo no menu suspenso ao lado do botão enviar. Você pode alterar isso durante a sessão.
  • Modo de permissão: escolha quanto de autonomia Claude tem no seletor de modo. Você pode alterar isso durante a sessão.

Digite sua tarefa e pressione Enter para começar. Cada sessão rastreia seu próprio contexto e alterações independentemente.

Trabalhar com código

Dê a Claude o contexto certo, controle quanto ele faz por conta própria e revise o que ele alterou.

Use a caixa de prompt

Digite o que você quer que Claude faça e pressione Enter para enviar. Claude lê seus arquivos de projeto, faz alterações e executa comandos com base no seu modo de permissão. Você pode redirecionar Claude a qualquer momento: clique no botão parar para interromper imediatamente, ou digite uma correção e pressione Enter para enviá-la sem parar a ação em execução. Claude lê a correção assim que a ação atual é concluída e se ajusta antes de seu próximo passo.

O botão + ao lado da caixa de prompt oferece acesso a anexos de arquivo, skills, conectores e plugins.

Aceitar um prompt sugerido

Depois que Claude responde, a aba Code pode mostrar um próximo prompt sugerido como texto cinza na caixa de prompt vazia. Claude Code gera cada sugestão a partir da sua conversa com uma breve requisição em segundo plano que conta para os limites de uso do seu plano ou para seus custos de API.

  • Usar a sugestão: pressione Tab ou Seta para a direita para colocá-la na caixa de prompt, edite-a se quiser e pressione Enter para enviá-la. Pressionar Enter antes de aceitar a sugestão não a envia.
  • Escrever seu próprio prompt: comece a digitar. A sugestão aparece apenas enquanto a caixa de prompt está vazia e não tem arquivos anexados.

Acesse Settings > Claude Code e desative Prompt suggestions em Sessions para interromper as sugestões em cada sessão a partir da próxima vez que ela for iniciada ou retomada.

Adicionar arquivos e contexto aos prompts

A caixa de prompt suporta duas maneiras de trazer contexto externo:

  • @mention de arquivos: digite @ seguido de um nome de arquivo para adicionar um arquivo ao contexto da conversa. Claude pode então ler e referenciar esse arquivo. @mention não está disponível em sessões na nuvem ou WSL.
  • Anexar arquivos: anexe imagens, PDFs e outros arquivos ao seu prompt usando o botão de anexo, ou arraste e solte arquivos diretamente no prompt. Isso é útil para compartilhar capturas de tela de bugs, mockups de design ou documentos de referência.

Escolher um modo de permissão

Os modos de permissão controlam quanto de autonomia Claude tem durante uma sessão: se ele pergunta antes de editar arquivos, executar comandos ou ambos. Você pode alternar modos de permissão a qualquer momento usando o seletor de modo ao lado do botão enviar. Para aprovar cada alteração você mesmo, mude para Manual.

Para definir um modo padrão para novas sessões locais, adicione permissions.defaultMode ao seu arquivo de configurações. O aplicativo desktop lê os mesmos arquivos de configurações que o CLI. Um modo que você escolhe no seletor é lembrado por pasta e tem precedência sobre defaultMode para essa pasta, exceto Plan, que se aplica apenas à sessão atual.

Modo Chave de configuração Comportamento
Manual default Claude pergunta antes de editar arquivos ou executar comandos. Você vê um diff e pode aceitar ou rejeitar cada alteração.
Accept edits acceptEdits Claude aceita automaticamente edições de arquivo e comandos comuns do sistema de arquivos como mkdir, touch e mv, mas ainda pergunta antes de executar outros comandos de terminal. Use isso quando você confia em alterações de arquivo e quer iteração mais rápida.
Plan plan Claude lê arquivos e executa comandos para explorar, depois propõe um plano sem editar seu código-fonte. Bom para tarefas complexas onde você quer revisar a abordagem primeiro.
Auto auto Claude executa sem prompts de rotina; antes de ações como comandos shell e requisições de rede serem executadas, um classificador em segundo plano verifica se elas se alinham com sua solicitação. Aparece quando o modo auto está disponível; não há toggle de Configurações separado para isso.
Bypass permissions bypassPermissions Claude é executado sem prompts de permissão, exceto para as ações que nenhum modo aprova automaticamente, classificadores de segurança quando Claude atua em sites externos, ou ações de desktop como excluir uma sessão, embora não arquivar uma. Equivalente a --dangerously-skip-permissions no CLI. Em planos Pro e Max, ative em suas Configurações → Claude Code em "Allow bypass permissions mode"; em planos Team e Enterprise não há toggle de Configurações, e a política organizacional controla isso. Use apenas em containers ou VMs sandboxed.

Versões anteriores da aba Code rotulavam esses modos como Ask permissions, Auto accept edits e Plan mode.

O modo de permissão dontAsk está disponível apenas no CLI.

Sessões na nuvem suportam Accept edits, Plan e Auto. Accept edits corresponde ao modo default: sessões na nuvem pré-aprovam edições de arquivo, então o seletor mostra Accept edits em vez de Manual. Bypass permissions não está disponível em sessões na nuvem, incluindo sessões em um ambiente auto-hospedado.

Administradores corporativos podem restringir quais modos de permissão estão disponíveis. Veja configuração corporativa para detalhes.

Disponibilidade do modo auto

O modo auto está disponível para todos os usuários na API Anthropic e requer Claude Opus 4.6 ou posterior, Sonnet 4.6 ou posterior, Haiku 5.5 ou um modelo Fable. Administradores da organização podem desativar o modo auto com a chave disableAutoMode em configurações gerenciadas.

Em implantações Enterprise que roteiam Desktop para Google Cloud's Agent Platform, o modo auto também está disponível por padrão; veja Modo auto no Bedrock, Agent Platform ou Foundry para os modelos suportados.

Visualizar seu aplicativo

Claude pode iniciar um servidor de desenvolvimento e abri-lo no painel de navegador para verificar suas alterações. Isso funciona para aplicativos web frontend e também para servidores backend: Claude pode testar endpoints de API, visualizar logs do servidor e iterar em problemas que encontra. Na maioria dos casos, Claude inicia o servidor automaticamente após editar arquivos de projeto. Você também pode pedir a Claude para visualizar a qualquer momento. Por padrão, Claude verifica automaticamente alterações após cada edição.

O painel de navegador também pode abrir arquivos HTML estáticos, PDFs, imagens e vídeos do seu projeto. Clique em um caminho HTML, PDF, imagem ou vídeo no chat para abri-lo lá.

No painel de navegador, você pode:

  • Interagir com seu aplicativo em execução diretamente no painel de navegador
  • Assistir Claude verificar suas próprias alterações automaticamente: ele tira capturas de tela, inspeciona o DOM, clica em elementos, preenche formulários e corrige problemas que encontra
  • Iniciar ou parar servidores, ou parar todos de uma vez, no menu Dev servers no cabeçalho do painel de navegador
  • Escolher se o navegador mantém cookies depois que você fecha o aplicativo com Keep cookies no menu ⋮ do painel de navegador, para que você não tenha que fazer login novamente durante o desenvolvimento

Claude cria a configuração inicial do servidor com base em seu projeto. Se seu aplicativo usa um comando dev personalizado, edite .claude/launch.json para corresponder à sua configuração. Veja Configurar servidores de visualização para a referência completa.

Para limpar os dados salvos do navegador, selecione Clear browsing data no menu ⋮ do painel de navegador. Para desativar o navegador completamente, desative Browser tools em Settings > Claude Code.

Navegar em sites externos

O painel de navegador é um navegador com abas, então você pode abrir documentação, rastreadores de problemas ou qualquer outro site ao lado do seu aplicativo em execução. Para abrir o navegador, pressione Cmd+Shift+B no macOS ou Ctrl+Shift+B no Windows, ou clique em Browser na barra de título da sessão. Você pode fazer login em sites no painel, incluindo fluxos de login em popup como Google OAuth.

Na primeira vez que você clica em um link externo no chat, uma caixa de diálogo pergunta se os links devem abrir no painel de navegador ou no seu navegador padrão. Para alterar sua escolha depois, use Open links in built-in browser no menu ⋮ do painel de navegador. Cmd-clique no macOS ou Ctrl-clique no Windows abre um link diretamente no seu navegador padrão.

Claude pode ler e interagir com páginas externas usando as mesmas ferramentas que usa para verificar seu aplicativo, com duas verificações de segurança adicionais:

  • Classificadores de segurança revisam as ações de escrita de Claude em páginas externas, como clicar e digitar, em todos os modos de permissão. Estes são os mesmos classificadores que o modo auto usa, e quando eles sinalizam uma ação, você recebe um prompt de permissão independentemente do modo.
  • Em modos de permissão diferentes de Auto e Bypass permissions, uma verificação de allowlist de domínio também se aplica antes de Claude navegar para um novo site.

Aprovar as ações de Claude em um site

A primeira vez que Claude atua em um site externo, um cartão de permissão aparece e Claude aguarda sua escolha: Allow once, Always allow ou Deny. Allow once aprova a ação sem salvar nada. Always allow salva a aprovação para esse site em seu dispositivo, e você pode revogá-la em Configurações. Cada site precisa de sua própria aprovação, incluindo subdomínios. Seus servidores dev locais e arquivos de projeto não precisam de aprovação, então auto-verify continua funcionando sem prompts.

Mesmo em um site aprovado, Claude não comprará itens, criará contas ou contornará CAPTCHAs sem sua entrada. Navegar no painel de navegador usa o mesmo modelo de segurança que a extensão Claude no Chrome. Veja Usando Claude no Chrome com segurança para como Claude lida com sites sensíveis e ações arriscadas.

Escolher entre o painel de navegador e a extensão Chrome

O painel de navegador usa um perfil de navegador limpo, separado do seu navegador pessoal, sem nenhum de seus logins salvos ou histórico. Use-o para construir e testar seu aplicativo e para sites que não precisam de sua identidade. Quando você quer que Claude aja como você em suas sessões conectadas, use a extensão Claude no Chrome em vez disso, que compartilha o estado de login do seu navegador.

Restringir navegação externa para sua organização

O painel de navegador segue os mesmos controles de allowlist e blocklist de sites que a extensão Claude no Chrome. Se sua organização já configurou essas listas para a extensão, o painel de navegador as respeita automaticamente. Administradores também podem desativar as ferramentas de Claude em páginas externas com a configuração gerenciada browserExternalPageTools. Com ferramentas desativadas, os usuários ainda podem navegar para sites externos; as ferramentas de Claude não podem ler ou agir sobre eles.

Para desativar a navegação externa completamente, defina a configuração gerenciada disableBrowserExternalNavigation como true. Isso bloqueia toda navegação externa no painel de navegador, incluindo sites na allowlist de sua organização; servidores dev localhost e visualizações de arquivo continuam funcionando. Use browserExternalPageTools para permitir que os usuários continuem navegando em sites externos sem as ferramentas de Claude, e disableBrowserExternalNavigation para bloquear sites externos para usuários e Claude.

Revisar alterações com visualização de diff

Depois que Claude faz alterações em seu código, a visualização de diff permite que você revise modificações arquivo por arquivo antes de criar um pull request.

Quando Claude altera arquivos, um indicador de estatísticas de diff aparece mostrando o número de linhas adicionadas e removidas, como +12 -1. Clique neste indicador para abrir o visualizador de diff, que exibe uma lista de arquivos à esquerda e as alterações para cada arquivo à direita.

Para comentar em linhas específicas, clique em qualquer linha no diff para abrir uma caixa de comentário. Digite seu feedback e pressione Enter para adicionar o comentário. Depois de adicionar comentários a várias linhas, envie todos os comentários de uma vez:

  • macOS: pressione Cmd+Enter
  • Windows: pressione Ctrl+Enter

Claude lê seus comentários e faz as alterações solicitadas, que aparecem como um novo diff que você pode revisar.

Revisar seu código

Para que Claude revise suas alterações antes de você fazer commit, digite /code-review na caixa de prompt. As descobertas chegam na conversa quando a revisão é concluída.

Em sessões locais, SSH e WSL, as descobertas aparecem como um cartão Code review, agrupadas por arquivo. Use o cartão para agir sobre elas:

  • Clique em Walk through in diff para abrir a visualização de diff e percorrer as descobertas uma de cada vez. Uma descoberta no diff atual aparece em sua linha, onde você pode clicar em Fix this one ou descartá-la.
  • Clique em Apply fixes para pedir a Claude que corrija as descobertas que ainda estão em aberto.

Em qualquer sessão, você também pode pedir a Claude na caixa de prompt que corrija o que a revisão encontrou. Para saber o que /code-review procura e os argumentos que aceita, veja Revisar localmente com /code-review.

Monitorar status de pull request

Depois de abrir um pull request, uma barra de status de CI aparece na sessão. Claude Code usa o GitHub CLI para pesquisar resultados de verificação e exibir falhas.

  • Auto-fix CI & address comments: quando ativado, Claude tenta automaticamente corrigir verificações de CI falhando lendo a saída de falha e iterando. Em uma sessão local, Claude também responde a novos comentários de revisão deixados por alguém além de você, quando o autor é o proprietário do repositório, um membro da organização, um colaborador ou um GitHub App.
  • Auto-merge when ready: quando ativado, Claude mescla o PR assim que todas as verificações passam. O método de merge é squash. Ative auto-merge em suas configurações do repositório GitHub primeiro; sem isso, Claude não pode mesclar o PR.

Para ativá-los, clique em CI na barra de status. Para arquivar a sessão automaticamente assim que o PR for mesclado ou fechado, ative auto-archive em Settings > Claude Code.

Organizar seu workspace

A aba Code é construída em torno de painéis que você pode organizar em qualquer layout: chat, diff, browser, terminal, file, plan, tasks e subagent, junto com o iOS Simulator no macOS. Arraste um painel por seu cabeçalho para reposicioná-lo, ou arraste uma borda de painel para redimensioná-lo. Pressione Cmd+\ no macOS ou Ctrl+\ no Windows para fechar o painel focado. Clique em Terminal, Changes ou Browser na barra de título da sessão para abrir o painel de terminal, diff ou Browser. O menu ⋮ ao lado deles abre mais painéis, como Files, e contém esses botões quando a janela é estreita demais para exibi-los.

Para trabalhar em várias telas, extraia um painel como o diff ou terminal para sua própria janela e encaixe-o novamente quando terminar. Claude continua trabalhando na janela principal.

Executar comandos no terminal

O terminal integrado permite que você execute comandos ao lado de sua sessão sem alternar para outro aplicativo. Clique em Terminal na barra de título da sessão ou pressione Ctrl+` no macOS ou Windows. O terminal abre no diretório de trabalho de sua sessão e compartilha o mesmo ambiente que Claude, então comandos como npm test ou git status veem os mesmos arquivos que Claude está editando. Para abrir uma segunda aba de terminal, clique em + no cabeçalho do painel de terminal ou clique com o botão direito em uma pasta no chat para escolher Open in terminal.

O terminal está disponível em sessões locais e SSH, com uma limitação em máquinas remotas Windows.

Abrir e editar arquivos

Clique em um caminho de arquivo no chat ou visualizador de diff para abri-lo no painel de arquivo. Caminhos HTML, PDF, imagem e vídeo abrem no painel Browser em vez disso. Faça edições pontuais e clique em Save para escrevê-las de volta. Se o arquivo mudou no disco desde que você o abriu, o painel o avisa e permite que você sobrescreva ou descarte. Clique em Discard para reverter suas edições, ou clique no caminho no cabeçalho do painel para copiar o caminho absoluto.

O painel de arquivo está disponível em sessões locais e SSH. Para sessões na nuvem, peça a Claude para fazer a alteração.

Abrir arquivos em outros aplicativos

Clique com o botão direito em qualquer caminho de arquivo no chat, visualizador de diff ou painel de arquivo para abrir um menu de contexto:

  • Attach as context: adicione o arquivo ao seu próximo prompt
  • Open in: abra o arquivo em um editor instalado como VS Code, Cursor ou Zed
  • Show in Finder no macOS, Show in Explorer no Windows: abra a pasta contendo
  • Copy path: copie o caminho absoluto para sua área de transferência

Alternar modos de visualização

Os modos de visualização controlam quanto detalhe aparece na transcrição do chat. Para alternar modos de visualização, abra o menu da sessão pelo acento circunflexo ao lado do título da sessão e selecione Transcript view, ou pressione Ctrl+O no macOS ou Windows para ciclar através deles. O modo Thinking aparece no menu apenas depois que Claude produziu pensamento na sessão que você está visualizando.

Modo O que mostra
Normal Chamadas de ferramenta recolhidas em resumos, com respostas de texto completo
Thinking Chamadas de ferramenta recolhidas em resumos, mais o pensamento de Claude
Verbose Cada chamada de ferramenta, leitura de arquivo e passo intermediário que Claude toma, mais o pensamento de Claude

Use Thinking para seguir o raciocínio de Claude com chamadas de ferramenta ainda recolhidas. Use Verbose ao depurar por que Claude tomou uma ação particular. As versões do Claude Desktop anteriores a 1.46388.1 também listam um modo Summary, e uma sessão ainda definida para Summary abre em Normal assim que você atualiza.

Atalhos de teclado

Pressione Cmd+/ no macOS ou Ctrl+/ no Windows para ver todos os atalhos disponíveis na aba Code. No Windows, use Ctrl no lugar de Cmd para os atalhos abaixo. Ciclagem de sessão, alternância de terminal e alternância de modo de visualização usam Ctrl em todas as plataformas.

Atalho Ação
Cmd / Mostrar atalhos de teclado
Cmd N Nova sessão
Cmd W Fechar sessão
Ctrl Tab / Ctrl Shift Tab Próxima ou sessão anterior
Cmd Shift ] / Cmd Shift [ Próxima ou sessão anterior
Esc Parar resposta de Claude
Tab / Right arrow Aceitar o prompt sugerido em uma caixa de prompt vazia
Cmd Shift D Alternar painel de diff
Cmd Shift B Alternar painel Browser
Cmd Shift S Selecionar um elemento no Browser
Ctrl ` Alternar painel de terminal
Cmd \ Fechar painel focado
Cmd ; Abrir chat lateral
Ctrl O Ciclar modos de visualização
Cmd Shift M Abrir menu de modo de permissão
Cmd Shift I Abrir menu de modelo
Cmd Shift E Abrir menu de esforço
1–9 Selecionar item em um menu aberto

Esses atalhos se aplicam à aba Code. No Desktop, Shift+Tab não cicla os modos de permissão como faz no modo interativo do terminal.

Verificar uso

Clique no anel de uso ao lado do seletor de modelo para ver seu uso atual da janela de contexto e seu uso do plano para o período. O uso de contexto é por sessão; o uso do plano é compartilhado em todas as suas superfícies Claude Code.

Deixar Claude usar seu computador

Computer use permite que Claude abra seus aplicativos, controle sua tela e trabalhe diretamente em sua máquina da forma como você faria. Peça a Claude para interagir com uma ferramenta de desktop que não tem CLI ou automatize algo que só funciona através de uma GUI. Para executar e testar aplicativos iOS, Desktop abre o painel dedicado do iOS Simulator em vez de controlar sua tela; o painel funciona sem ativar computer use.

Computer use está desativado por padrão. Ative-o em Configurações antes que Claude possa controlar sua tela. No macOS, você também precisa conceder permissões de Acessibilidade e Gravação de Tela.

No macOS, computer use também pode ser executado em segundo plano: Claude trabalha nos aplicativos que você aprovou enquanto você continua trabalhando.

Quando computer use se aplica

Claude tem várias maneiras de interagir com um aplicativo ou serviço, e computer use é a mais ampla e lenta. Ele tenta a ferramenta mais precisa primeiro:

  • Se você tem um connector para um serviço, Claude usa o connector.
  • Se a tarefa é um comando shell, Claude usa Bash.
  • Se a tarefa é trabalho de navegador e você tem Claude no Chrome configurado, Claude usa isso.
  • Se a tarefa é executar ou testar um aplicativo iOS, Claude usa o painel iOS Simulator, que não usa controle de tela.
  • Se nenhum desses se aplica, Claude usa computer use.

Os níveis de acesso por aplicativo reforçam isso: navegadores são limitados a apenas visualização, e terminais e IDEs a apenas clique, direcionando Claude para a ferramenta dedicada mesmo quando computer use está ativo. O controle de tela é reservado para coisas que nada mais pode alcançar, como aplicativos nativos, painéis de controle de hardware ou ferramentas proprietárias sem uma API.

Ativar computer use

Computer use está desativado por padrão. Se você pedir a Claude para fazer algo que precisa disso enquanto está desativado, Claude diz que poderia fazer a tarefa se você ativar computer use em Configurações.

1

Atualizar o aplicativo desktop

Certifique-se de que você tem a versão mais recente do Claude Desktop. No macOS e Windows, baixe ou atualize em claude.com/download; no Linux, atualize através do seu gerenciador de pacotes (instruções). Depois reinicie o aplicativo.

2

Ativar o toggle

No aplicativo desktop, vá para Configurações > Este computador > Sistema. Em Computer use, ative Enable computer use. No Windows, o toggle entra em efeito imediatamente e a configuração está completa. No macOS, continue para o próximo passo.

Se você não vir o toggle, confirme que você está em macOS ou Windows com um plano Pro ou Max, depois atualize e reinicie o aplicativo.

3

Conceder permissões macOS

No macOS, conceda duas permissões do sistema antes do toggle entrar em efeito:

  • Accessibility: permite que Claude clique, digite e role
  • Screen Recording: permite que Claude veja o que está em sua tela

A página de Configurações mostra o status atual de cada permissão. Se alguma for negada, clique no badge para abrir o painel de Configurações do Sistema relevante.

Permissões de aplicativo

A primeira vez que Claude precisa usar um aplicativo, um prompt aparece em sua sessão. Clique em Allow for this session ou Deny. As aprovações duram para a sessão atual, ou 30 minutos em sessões geradas por Dispatch.

O prompt também mostra que nível de controle Claude obtém para esse aplicativo. Esses níveis são fixos por categoria de aplicativo e não podem ser alterados:

Nível O que Claude pode fazer Se aplica a
View only Ver o aplicativo em capturas de tela Navegadores, plataformas de negociação
Click only Clicar e rolar, mas não digitar ou usar atalhos de teclado Terminais, IDEs
Full control Clicar, digitar, arrastar e usar atalhos de teclado Tudo mais

Aplicativos com alcance amplo, como terminais, Finder ou File Explorer, e System Settings ou Settings, mostram um aviso extra no prompt para que você saiba o que aprovar concede.

A seção Computer use em Configurações > Este computador > Sistema inclui estas opções:

  • Denied apps: adicione aplicativos aqui para rejeitá-los sem solicitar. Claude ainda pode afetar um aplicativo negado indiretamente através de ações em um aplicativo permitido, mas não pode interagir com o aplicativo negado diretamente.
  • Unhide apps when Claude finishes: quando computer use não está sendo executado em segundo plano, Claude oculta suas outras janelas enquanto trabalha para que interaja apenas com o aplicativo aprovado. Quando Claude termina, as janelas ocultas são restauradas a menos que você desative essa configuração.

Gerenciar sessões

Cada sessão é uma conversa independente com seu próprio contexto e alterações. Você pode executar múltiplas sessões em paralelo, ramificar chats laterais, deixar Claude verificar e enviar mensagens para suas outras sessões, enviar trabalho para a nuvem ou deixar Dispatch iniciar sessões para você do seu telefone.

Trabalhar em paralelo com sessões

Clique em + New session na barra lateral, ou pressione Cmd+N no macOS ou Ctrl+N no Windows, para trabalhar em múltiplas tarefas em paralelo. Pressione Ctrl+Tab e Ctrl+Shift+Tab para ciclar através de sessões na barra lateral. Para repositórios Git, selecione a opção worktree ao lado do nome do branch para dar à sessão sua própria cópia isolada do seu projeto usando Git worktrees.

Para visualizar duas sessões ao mesmo tempo, mantenha Cmd no macOS ou Ctrl no Windows e clique em uma sessão na barra lateral. A sessão abre em um segundo painel ao lado daquele que você já tem aberto. Enquanto a divisão está ativa, clicar em outra sessão da barra lateral substitui o painel que tem foco. Pressione Cmd+\ no macOS ou Ctrl+\ no Windows para fechar o painel focado e retornar a uma única sessão.

Os worktrees são armazenados em <project-root>/.claude/worktrees/ por padrão. Você pode alterar isso para um diretório personalizado:

  • Sessões locais: defina Worktree location em Settings > Claude Code
  • Sessões SSH: defina Worktree folder na conexão SSH

Você também pode definir um Branch prefix em Settings > Claude Code. O Desktop o adiciona antes de cada nome de branch de worktree, o que é útil para manter organizados os branches criados por Claude.

Para remover um worktree quando terminar, passe o mouse sobre a sessão na barra lateral e clique no ícone de arquivo. Para ter sessões se arquivarem automaticamente quando seu pull request for mesclado ou fechado, ative Auto-archive after PR merge or close em Settings > Claude Code. O arquivamento automático se aplica apenas a sessões locais que terminaram de executar.

Para incluir arquivos gitignored como .env em novos worktrees, crie um arquivo .worktreeinclude na raiz do seu projeto. Veja O que os worktrees compartilham com o checkout principal para saber de onde uma sessão de worktree lê as configurações do projeto, hooks e skills.

Use os controles no topo da barra lateral para filtrar sessões por status, projeto ou ambiente, e para agrupar sessões por projeto. Para renomear uma sessão, clique no título da sessão na barra de ferramentas no topo da sessão ativa.

Para verificar o uso de contexto, veja Verificar uso. Quando o contexto se enche, Claude automaticamente resume a conversa e continua trabalhando. Você também pode digitar /compact para disparar a sumarização mais cedo e liberar espaço de contexto. Veja a janela de contexto para detalhes sobre como a compactação funciona.

O aplicativo desktop envia uma notificação do SO quando uma sessão de Code termina uma tarefa e você não está visualizando essa sessão no momento. Para sessões que pertencem a um projeto, você recebe as notificações do projeto em vez disso.

Fazer uma pergunta lateral sem descarrilar a sessão

Um chat lateral permite que você faça a Claude uma pergunta que usa o contexto de sua sessão mas não adiciona nada de volta à conversa principal. Use-o quando você quer entender um pedaço de código, verificar uma suposição ou explorar uma ideia sem descarrilar a sessão.

Pressione Cmd+; no macOS ou Ctrl+; no Windows para abrir um chat lateral, ou digite /btw na caixa de prompt. O chat lateral pode ler tudo no thread principal até esse ponto. Quando terminar, feche o chat lateral e continue a sessão principal onde deixou.

Chats laterais estão disponíveis em sessões locais, SSH e WSL. O aplicativo desktop não salva chats laterais em disco, então você não pode retornar a um após fechar o aplicativo.

Assistir tarefas em segundo plano

O painel de tarefas mostra o trabalho em segundo plano em execução dentro da sessão atual: subagentes, comandos shell em segundo plano e workflows dinâmicos. Quando a sessão tiver trabalho em segundo plano, abra o painel com Background tasks no menu ⋮ da barra de título.

Clique em qualquer entrada para ver sua saída no painel de subagente ou pará-la. Para ver o que outras sessões estão fazendo, use a barra lateral, ou peça a Claude para verificar nelas para você.

Trabalhar entre sessões

Claude pode listar suas outras sessões da aba Code, ler o que cada uma tem feito e enviar mensagens entre elas. Pergunte em linguagem natural: "qual sessão tocou na refatoração de autenticação?", "o que a sessão de API concluiu?" ou "diga à sessão de pagamentos que o esquema mudou". Você também pode pedir a Claude para renomear ou arquivar uma sessão. Claude arquiva uma sessão da mesma forma que o ícone de arquivo da barra lateral faz, então peça a ela para limpar sessões cujos PRs foram mesclados.

Através desta superfície, Claude vê apenas as sessões que o aplicativo desktop executa por si mesmo: local, SSH e sessões WSL na aba Code. Claude não vê sessões na nuvem, ou sessões que você iniciou do CLI do terminal ou da extensão VS Code, mesmo em worktrees do mesmo projeto, então com nove worktrees de terminal abertos e duas sessões desktop, Claude respondendo em uma delas relata a outra sessão desktop. Claude nunca lista a sessão de que você está perguntando. Por padrão, ele vê as 20 sessões mais recentemente ativas e pula sessões arquivadas a menos que você peça por elas. Mensagens entre sessões permite separadamente que Claude envie mensagens para suas outras sessões Claude Code, incluindo sessões de terminal.

Quando Claude envia uma mensagem para outra sessão através desta superfície, Claude Code a mostra lá como um card rotulado com o título da sessão de envio e um link de volta, para que você sempre possa dizer de onde uma mensagem veio. Se a sessão receptora está no meio de uma tarefa, Claude Code segura a mensagem e Claude a lê uma vez que o trabalho atual termina. O Claude receptor pode responder, e Claude Code entrega a resposta de volta através desta superfície. Claude não pode entregar a uma sessão arquivada e avisa você quando uma mensagem não passa.

Claude Code aplica quatro comportamentos de segurança entre sessões:

  • Você recebe um card de aprovação antes de Claude arquivar uma sessão, exceto no modo auto e no modo Bypass permissions, nos quais Claude pode arquivar uma sessão sem ele. Para que a aprovação seja solicitada, mude para Manual.
  • Através desta superfície, Claude não pode enviar mensagens entre sessões de uma sessão que ninguém está observando, como uma execução de tarefa agendada, e não pode entregar mensagens em uma.
  • Claude Code verifica cada mensagem desta superfície contra os controles de entrada da sessão receptora, mesmo quando a sessão receptora não tem mensagens entre sessões por si mesma. Se você definir crossSessionInbound para refuse na sessão receptora, Claude Code descarta mensagens desta superfície. Claude Code relata a recusa ao aplicativo desktop Claude. Antes da v2.1.234, Claude Code descartava todas as mensagens desta superfície para uma sessão receptora sem mensagens entre sessões.
  • Claude Code cita cada mensagem de entrada e a atribui à sessão que a enviou, e Claude ainda segue as configurações de permissão próprias da sessão receptora ao agir em uma.

Claude também pode sugerir novas sessões. Quando ele nota algo que vale a pena corrigir que está fora do escopo da tarefa atual, ele oferece o trabalho como um chip de tarefa no chat. Clique no chip para iniciar esse trabalho em uma nova sessão com seu próprio worktree; Claude continua sua sessão atual ininterruptamente.

Executar tarefas de longa duração na nuvem

Para grandes refatorações, suites de teste, migrações ou outras tarefas de longa duração, selecione Cloud em vez de Local ao iniciar uma sessão. Sessões na nuvem são executadas na infraestrutura gerenciada pela Anthropic por padrão e continuam mesmo se você fechar o aplicativo ou desligar seu computador. Verifique a qualquer momento para ver o progresso ou direcionar Claude em uma direção diferente. Você também pode monitorar sessões na nuvem de claude.ai/code ou do aplicativo Claude mobile.

Sessões na nuvem também suportam múltiplos repositórios. Depois de selecionar um ambiente em nuvem, clique no botão + ao lado do repositório selecionado para adicionar mais repositórios à sessão. Cada repo obtém seu próprio seletor de branch. Isso é útil para tarefas que abrangem múltiplas bases de código, como atualizar uma biblioteca compartilhada e seus consumidores.

Veja Use Claude Code na nuvem para mais sobre como sessões na nuvem funcionam. Quando um corpo de trabalho precisa de muitas sessões na nuvem, selecione Projects na barra lateral para criar um projeto, onde Claude inicia e rastreia as sessões para você de uma conversa.

Continuar em outra superfície

Para continuar uma sessão em outro lugar, abra o menu da sessão a partir do acento circunflexo ao lado do título da sessão ou a partir da linha da sessão na barra lateral e, em seguida, selecione Open in:

  • Selecione Cloud para continuar a sessão como uma sessão na nuvem, com sua conversa transferida como um resumo. Antes de você confirmar, a caixa de diálogo informa se seus arquivos também são movidos e se esta sessão será arquivada quando a sessão na nuvem estiver pronta. Você não pode mover dessa forma uma sessão executada via SSH ou no WSL.
  • Selecione um editor instalado ou seu gerenciador de arquivos para abrir nele a pasta da sessão no disco.

Controlar quais sessões aparecem em seus outros dispositivos

Uma sessão local aparece em seus outros dispositivos assim que o Remote Control a conecta. Uma sessão conectada aparece na lista de sessões em claude.ai/code e nos aplicativos Claude em dispositivos conectados à sua conta claude.ai.

Uma sessão local se conecta quando você ativa o Remote Control para ela, ou quando ela se conecta automaticamente ao iniciar:

  • Você o ativa para essa sessão: com o botão Remote Control da sessão, ou digitando /remote-control na caixa de prompt dela.
  • Ela se conecta ao iniciar: novas sessões se conectam automaticamente enquanto Connect new sessions to Remote Control estiver ativado em Settings > Claude Code. Se você nunca alterou essa configuração, o Desktop segue remoteControlAtStartup em suas configurações de usuário ou configurações gerenciadas e, em seguida, o padrão da sua organização.

Para ver se uma sessão está conectada, observe o ícone de laptop antes do título da sessão na barra de ferramentas. O ícone fica destacado enquanto a sessão está conectada ou se conectando. Clique nele para abrir o botão Remote Control da sessão.

Para manter sessões fora de seus outros dispositivos, desative o Remote Control no nível de que você precisa:

  • Uma sessão: desative o botão Remote Control dela. Em uma sessão que se conectou ao iniciar, digitar /remote-control mantém o Remote Control ativado e mostra Remote Control is already on. This session connected automatically when it started. Clique em Turn off nessa linha para desconectar.
  • Novas sessões do Desktop neste computador: desative Connect new sessions to Remote Control em Settings > Claude Code. Se já aparecer desativado, ative e depois desative para que o Desktop salve sua escolha. Depois de salva, ela tem precedência sobre remoteControlAtStartup e os padrões.
  • Qualquer sessão neste computador, incluindo o CLI: defina disableRemoteControl como true em ~/.claude/settings.json para impedir que as sessões se conectem. Uma sessão que já estava conectada quando você salvou o arquivo permanece conectada até que você desative o Remote Control para ela.

Para ocultar uma sessão que já aparece em seus outros dispositivos, arquive-a no Desktop. O Desktop também arquiva a cópia do Remote Control da sessão, de modo que ela sai da lista de sessões padrão nesses dispositivos. Para visualizá-la ou excluí-la lá, veja Arquivar sessões.

Sessões do Dispatch

Dispatch é uma conversa persistente com Claude que vive na aba Cowork. Você envia uma mensagem ao Dispatch com uma tarefa, e ele decide como lidar com ela.

Uma tarefa pode acabar como uma sessão de Code de duas maneiras: você pede uma diretamente, como "abra uma sessão Claude Code e corrija o bug de login", ou Dispatch decide que a tarefa é trabalho de desenvolvimento e gera uma por conta própria. Tarefas que normalmente são roteadas para Code incluem corrigir bugs, atualizar dependências, executar testes ou abrir pull requests. Pesquisa, edição de documentos e trabalho em planilhas ficam em Cowork.

De qualquer forma, a sessão de Code aparece na barra lateral da aba Code com um badge Dispatch. Você recebe uma notificação push em seu telefone quando termina ou precisa de sua aprovação.

Se você tem computer use ativado, sessões de Code geradas por Dispatch também podem usá-lo. As aprovações de aplicativo nessas sessões expiram após 30 minutos e solicitam novamente, em vez de durarem a sessão completa como sessões de Code regulares.

Para configuração, emparelhamento e configurações de Dispatch, veja o artigo de ajuda do Dispatch. Dispatch requer um plano Pro ou Max e não está disponível em planos Team ou Enterprise.

Dispatch é uma de várias maneiras de trabalhar com Claude quando você está longe de seu terminal. Para uma comparação com as outras opções, veja Plataformas e integrações.

Estender Claude Code

Conecte serviços externos, adicione fluxos de trabalho reutilizáveis, customize o comportamento de Claude e configure servidores de visualização. Para gerenciar conectores, skills e plugins em um único lugar, clique em Customize na barra lateral. A aba Cowork no aplicativo Desktop obtém seus skills, plugins e conectores dessa configuração de Customize, que sincroniza através de sua conta claude.ai, não do diretório ~/.claude da CLI.

Claude Code também carrega os skills e plugins habilitados para sua conta claude.ai em sessões de terminal onde você se conecta com a mesma conta. Veja Skills sincronizados de claude.ai e Plugins sincronizados de claude.ai.

Conectar ferramentas externas

Para sessões locais e SSH, clique no botão + ao lado da caixa de prompt e selecione Connectors para adicionar integrações como Google Calendar, Slack, GitHub, Linear, Notion e muito mais. Você pode adicionar conectores antes ou durante uma sessão. O botão + não está disponível em sessões cloud ou WSL, mas routines configuram conectores no momento da criação da rotina.

Para gerenciar ou desconectar conectores, vá para Settings → Connectors no aplicativo desktop, ou selecione Manage connectors no menu Connectors na caixa de prompt.

Uma vez conectado, Claude pode ler seu calendário, enviar mensagens, criar problemas e interagir com suas ferramentas diretamente. Você pode perguntar a Claude quais conectores estão configurados em sua sessão.

Conectores são MCP servers com um fluxo de configuração gráfica. Use-os para integração rápida com serviços suportados. Para integrações não listadas em Connectors, adicione MCP servers manualmente via arquivos de configuração. Você também pode criar conectores personalizados.

Use skills

Skills estendem o que Claude pode fazer. Claude as carrega automaticamente quando relevante, ou você pode invocar uma diretamente: digite / na caixa de prompt ou clique no botão + e selecione Slash commands para navegar pelo que está disponível. Isso inclui comandos integrados, suas skills personalizadas, skills de projeto de sua base de código e skills de qualquer plugins instalados. Selecione uma e ela aparece destacada no campo de entrada. Digite sua tarefa depois dela e envie como usual.

Você pode enviar um comando enquanto Claude está trabalhando, da mesma forma que qualquer outra mensagem, e a sessão retorna ao estado ocioso assim que o turno termina.

Sessões locais carregam seus skills pessoais de ~/.claude/skills/. Uma sessão SSH lê ~/.claude/skills/ do diretório home do host remoto, não de sua máquina.

Sessões locais e cloud também carregam os skills habilitados para sua conta claude.ai, exceto sessões locais quando sua organização define disableSideloadFlags. Sessões cloud os carregam em vez de ~/.claude/skills/, como Skills em sessões Cowork e cloud descreve.

Instalar plugins

Plugins são pacotes reutilizáveis que adicionam skills, agents, hooks, MCP servers e configurações LSP ao Claude Code. Você pode instalar plugins do aplicativo desktop sem usar o terminal.

Para sessões locais e SSH, clique no botão + ao lado da caixa de prompt e selecione Plugins para ver seus plugins instalados e seus skills. Para adicionar um plugin, selecione Add plugin no submenu para abrir o navegador de plugins, que mostra plugins disponíveis de seus marketplaces configurados incluindo o marketplace oficial da Anthropic. Selecione Manage plugins para ativar, desativar ou desinstalar plugins.

Você pode escopar plugins para sua conta de usuário, um projeto específico ou apenas local. Se sua organização gerencia plugins centralmente, esses plugins estão disponíveis em sessões desktop da mesma forma que estão no CLI, exceto os que o aplicativo desktop retém sob disableSideloadFlags.

O navegador de plugins não está disponível em sessões cloud, e plugins que você instala do aplicativo desktop não estão disponíveis para sessões cloud. Uma sessão cloud também não instala plugins que o .claude/settings.json do repositório declara, como O que é transferido de sua configuração explica. Plugins não estão disponíveis em sessões WSL. Para a referência completa de plugins incluindo criar seus próprios plugins, veja plugins.

Configurar servidores de visualização

Claude detecta automaticamente sua configuração de servidor de desenvolvimento e armazena a configuração em .claude/launch.json na raiz da pasta que você selecionou ao iniciar a sessão. Preview usa essa pasta como seu diretório de trabalho, então se você selecionou uma pasta pai, subpastas com seus próprios servidores de desenvolvimento não serão detectadas automaticamente. Para trabalhar com o servidor de uma subpasta, inicie uma sessão nessa pasta diretamente ou adicione uma configuração manualmente.

Para personalizar como seu servidor inicia, por exemplo para usar yarn dev em vez de npm run dev ou para alterar a porta, edite .claude/launch.json. O arquivo suporta JSON com comentários.

{
  "version": "0.0.1",
  "configurations": [
    {
      "name": "my-app",
      "runtimeExecutable": "npm",
      "runtimeArgs": ["run", "dev"],
      "port": 3000
    }
  ]
}

Você pode definir múltiplas configurações para executar diferentes servidores do mesmo projeto, como um frontend e uma API. Veja os exemplos abaixo.

Auto-verify changes

Quando autoVerify está ativado, Claude verifica automaticamente alterações de código após editar arquivos. Ele tira capturas de tela, verifica erros e confirma que as alterações funcionam antes de completar sua resposta.

Auto-verify está ativado por padrão. Desative-o por projeto adicionando "autoVerify": false a .claude/launch.json, ou desative Auto-verify changes no menu ⋮ do painel Browser.

{
  "version": "0.0.1",
  "autoVerify": false,
  "configurations": [
    {
      "name": "my-app",
      "runtimeExecutable": "npm",
      "runtimeArgs": ["run", "dev"],
      "port": 3000
    }
  ]
}

Quando desativado, ferramentas de visualização ainda estão disponíveis e você pode pedir a Claude para verificar a qualquer momento. Auto-verify torna isso automático após cada edição.

Configuration fields

Cada entrada no array configurations aceita os seguintes campos:

Campo Tipo Descrição
name string Um identificador único para este servidor
runtimeExecutable string O comando a executar, como npm, yarn ou node
runtimeArgs string[] Argumentos passados para runtimeExecutable, como ["run", "dev"]
port number A porta em que seu servidor escuta. Padrão é 3000
cwd string Diretório de trabalho relativo à raiz do seu projeto. Padrão é a raiz do projeto. Use ${workspaceFolder} para referenciar a raiz do projeto explicitamente
env object Variáveis de ambiente adicionais como pares chave-valor, como { "NODE_ENV": "development" }. Não coloque segredos aqui já que este arquivo é commitado em seu repo. Para passar segredos ao seu servidor de desenvolvimento, defina-os no editor de ambiente local em vez disso.
autoPort boolean Como lidar com conflitos de porta. Veja Conflitos de porta
program string Um script a executar com node. Veja quando usar program vs runtimeExecutable
args string[] Argumentos passados para program. Usado apenas quando program está definido
url string O endereço que a visualização abre em vez de http://localhost:<port>. Veja abrir a visualização em uma URL específica
When to use `program` vs `runtimeExecutable`

Use runtimeExecutable com runtimeArgs para iniciar um servidor de desenvolvimento através de um gerenciador de pacotes. Por exemplo, "runtimeExecutable": "npm" com "runtimeArgs": ["run", "dev"] executa npm run dev.

Use program quando você tem um script independente que quer executar com node diretamente. Por exemplo, "program": "server.js" executa node server.js. Passe flags adicionais com args.

Open the preview at a specific URL

Por padrão, a visualização abre http://localhost:<port>. Defina url quando seu servidor precisa de um endereço diferente. Casos comuns são servidores que requerem HTTPS local, aplicativos que usam subdomínios *.localhost e aplicativos que o conectam através de um redirecionamento.

{
  "version": "0.0.1",
  "configurations": [
    {
      "name": "my-app",
      "runtimeExecutable": "npm",
      "runtimeArgs": ["run", "dev"],
      "port": 8443,
      "url": "https://localhost:8443"
    }
  ]
}

Endereços localhost abrem diretamente, exatamente como o endereço de porta padrão. Isso inclui localhost, qualquer subdomínio *.localhost, 127.0.0.1 e ::1. Por segurança, uma url localhost deve ser apenas a origem do seu servidor — sem caminho ou query, e a porta deve corresponder à porta da entrada. Para mostrar uma página específica, peça a Claude para navegar lá após a visualização abrir. Uma url localhost com um caminho, query ou porta incompatível é relatada como um erro de configuração que nomeia a url e mostra a correção.

Para qualquer outro endereço, Desktop pede sua permissão na primeira vez que a visualização o abre, da mesma forma que quando você navega para um novo site na visualização. Endereços externos podem incluir caminhos. Escolha Always allow para pular o prompt para esse site no futuro. Políticas organizacionais que restringem sites externos na visualização ainda se aplicam.

Para visualizar um servidor que você já executa você mesmo, defina url sem um comando. Claude anexa a visualização ao seu servidor em execução em vez de iniciar um:

{
  "version": "0.0.1",
  "configurations": [
    {
      "name": "my-app",
      "url": "https://app.localhost:3000"
    }
  ]
}

A url deve ser http ou https, e não deve conter um nome de usuário ou senha.

Port conflicts

O campo autoPort controla o que acontece quando sua porta preferida já está em uso:

  • true: Claude encontra e usa uma porta livre automaticamente. Adequado para a maioria dos servidores de desenvolvimento.
  • false: Claude falha com um erro. Use isso quando seu servidor deve usar uma porta específica, como para callbacks OAuth ou allowlists CORS.
  • Não definido (padrão): seu servidor recebe a próxima porta livre, como com true, exceto no único caso abaixo. Antes do Claude Desktop v2.37337.0, Claude pergunta se o servidor precisa dessa porta exata, depois salva sua resposta em launch.json.

Se sua porta preferida estiver em uso e autoPort não estiver definido, seu servidor permanece parado quando todas estas condições forem verdadeiras:

  • Você inicia o servidor através de um script npm, yarn, pnpm ou bun.
  • Sua porta preferida está fixada no código desse script, ou Claude não consegue inspecionar o script.
  • Você não passa a porta em runtimeArgs.

Nesse caso, libere a porta, remova o valor fixo ou altere port para corresponder ao script. Definir "autoPort": true em vez disso funciona apenas para um script que lê PORT.

Faça seu servidor ler sua porta da variável de ambiente PORT, que contém a porta atribuída. Quando Claude move seu servidor para uma porta diferente, ele também reescreve um valor --port ou -p em runtimeArgs para corresponder.

Examples

Essas configurações mostram setups comuns para diferentes tipos de projeto:

Esta configuração executa um aplicativo Next.js usando Yarn na porta 3000:

{
"version": "0.0.1",
"configurations": [
{
"name": "web",
"runtimeExecutable": "yarn",
"runtimeArgs": ["dev"],
"port": 3000
}
]
}

Configuração do ambiente

O ambiente que você escolhe ao iniciar uma sessão determina onde Claude é executado e como você se conecta:

  • Local: é executado na sua máquina com acesso direto aos seus arquivos
  • Nuvem: é executado por padrão em infraestrutura gerenciada pela Anthropic. As sessões continuam mesmo que você feche o aplicativo.
  • SSH: é executado em uma máquina remota à qual você se conecta via SSH, como seus próprios servidores, VMs na nuvem ou dev containers. Uma tarefa em execução pode continuar enquanto o Desktop está desconectado, mas com uma conta Claude ela pode parar quando o login dela expirar.
  • WSL (Windows): é executado dentro de uma distribuição WSL 2 na sua máquina, usando o conjunto de ferramentas Linux dela e caminhos nativos

Sessões locais

O aplicativo desktop nem sempre herda todo o ambiente do seu shell. No macOS, quando você inicia o aplicativo pelo Dock ou pelo Finder, ele lê o perfil do seu shell, como ~/.zshrc ou ~/.bashrc, para fornecer ao Claude Code o PATH e um conjunto fixo de variáveis do Claude Code, mas não outras variáveis que você exporta ali. No Windows, o aplicativo herda as variáveis de ambiente do usuário e do sistema, mas não lê perfis do PowerShell.

Para definir variáveis de ambiente para sessões locais e servidores de desenvolvimento em qualquer plataforma, abra o menu suspenso de ambiente na caixa de prompt, passe o mouse sobre Local e clique no ícone de engrenagem para abrir o editor de ambiente local. As variáveis que você salva aqui são armazenadas criptografadas na sua máquina e se aplicam a todas as sessões locais e servidores de pré-visualização que você iniciar. Você também pode adicionar variáveis à chave env no seu arquivo ~/.claude/settings.json, embora elas cheguem apenas às sessões do Claude e não aos servidores de desenvolvimento. Consulte variáveis de ambiente para a lista completa de variáveis suportadas.

O pensamento estendido é ativado por padrão, o que melhora o desempenho em tarefas de raciocínio complexo, mas usa tokens adicionais. Na API da Anthropic, defina MAX_THINKING_TOKENS como 0 no editor de ambiente local para desativar o pensamento; isso não tem efeito no Opus 5.5, Sonnet 5.5, Haiku 5.5 ou nos modelos Fable, que sempre usam pensamento estendido. Com o pensamento desativado na API da Anthropic, o Claude Code envia o esforço high em vez de um nível mais alto para modelos que ele sabe que não aceitam essa combinação, como o Opus 5.

Em modelos com raciocínio adaptativo, o Claude Code ignora o próprio número em um valor positivo de MAX_THINKING_TOKENS, porque o raciocínio adaptativo controla a profundidade do pensamento. No Opus 4.6 e no Sonnet 4.6, defina CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING como 1 para usar um orçamento fixo de pensamento; os modelos Fable, o Sonnet 5 e posteriores, o Haiku 5.5 e o Opus 4.7 e posteriores sempre usam raciocínio adaptativo e não têm modo de orçamento fixo.

Sessões locais em dispositivos gerenciados

Seu administrador pode desativar as sessões locais com a configuração gerenciada disableDesktopLocalSessions. Quando isso acontece, Local permanece no menu suspenso de ambiente, mas fica esmaecido e não pode ser selecionado, com uma dica informando que sua organização o desativou, e no Windows a entrada WSL, cuja disponibilidade em dispositivos gerenciados é controlada separadamente, fica esmaecida da mesma forma. Novas sessões usam por padrão a primeira conexão SSH, se houver uma configurada, e o Desktop mostra uma mensagem informando que sessões locais não estão disponíveis neste dispositivo se você tentar continuar uma existente. Escolha um ambiente SSH ou na nuvem em vez disso, ou entre em contato com sua equipe de TI.

Sessões na nuvem

As sessões na nuvem continuam em segundo plano mesmo que você feche o aplicativo. O uso conta para os limites do seu plano de assinatura, sem cobranças de computação separadas.

Você pode criar ambientes de nuvem personalizados com diferentes níveis de acesso à rede e variáveis de ambiente. Para gerenciá-los, abra o menu suspenso de ambiente na caixa de prompt e selecione Cloud:

  • Adicionar um ambiente: selecione Add cloud environment
  • Editar ou arquivar um dos seus próprios ambientes: passe o mouse sobre ele e clique no ícone de engrenagem

Consulte Configurar ambientes de nuvem para detalhes sobre como configurar o acesso à rede e as variáveis de ambiente.

Sessões SSH

As sessões SSH permitem que você execute o Claude Code em uma máquina remota enquanto usa o aplicativo desktop como sua interface. Isso é útil para trabalhar com bases de código que ficam em VMs na nuvem, dev containers ou servidores com hardware ou dependências específicos.

Para adicionar uma conexão SSH, abra o menu suspenso de ambiente na caixa de prompt antes de iniciar uma sessão, depois selecione SSH > Add SSH connection… e preencha os detalhes da conexão:

  • Name: um rótulo amigável para esta conexão
  • SSH host: user@hostname ou um host definido em ~/.ssh/config
  • SSH port: usa 22 por padrão se deixado vazio, ou usa a porta da sua configuração SSH
  • SSH key (optional): caminho para sua chave privada, como ~/.ssh/id_ed25519. Deixe vazio para usar sua configuração SSH ou seu agente SSH.
  • Worktree folder: uma pasta na máquina remota, como ~/worktrees, onde novas sessões criam seus worktrees. Deixe vazio para usar o padrão da máquina remota.

Depois de adicionada, a conexão aparece em SSH no menu suspenso de ambiente. Selecione-a para iniciar uma sessão nessa máquina. Claude é executado na máquina remota com acesso aos arquivos e ferramentas dela.

A máquina remota pode executar Linux, macOS ou Windows. O Desktop instala o Claude Code na máquina remota automaticamente na primeira vez que você se conecta. Depois de conectadas, as sessões SSH suportam modos de permissão, conectores, plugins e servidores MCP.

Requisitos da máquina remota para sessões SSH

Uma máquina remota Linux ou macOS precisa de um processador suportado, um servidor SSH com SFTP, uma pasta de instalação que não esteja montada com noexec, um shell funcional e acesso à rede. Verifique cada requisito antes de se conectar, ou quando uma conexão falhar depois que você fizer login:

  • Sistema: um processador x86_64 ou arm64. A máquina também precisa atender aos requisitos de sistema do Claude Code. No Linux, o Claude Code precisa de glibc 2.17 ou posterior, ou musl. Para ver qual a máquina tem, execute ldd --version nela. Em uma distribuição baseada em musl, como o Alpine Linux, instale também os pacotes de que o Claude Code precisa.
  • SFTP: o servidor SSH precisa oferecer o subsistema SFTP, que uma linha Subsystem sftp no sshd_config dele ativa. Para verificar, conecte-se ao mesmo host e porta com sftp em um terminal no seu computador. Um servidor funcionando mostra o prompt sftp>.
  • Sessões por conexão: o Desktop no macOS e no Linux abre várias sessões em uma única conexão SSH. Se o sshd_config do servidor definir MaxSessions 1, aumente o valor, por exemplo para o padrão do OpenSSH, que é 10.
  • Pasta de instalação: o Desktop instala um programa auxiliar e o Claude Code em ~/.claude/remote/ no seu diretório pessoal. Ele os executa a partir dali, portanto essa pasta não pode estar em um sistema de arquivos montado com noexec. Reserve cerca de 1 GB de espaço em disco no diretório pessoal de cada usuário que se conecta. Para saber o que essa pasta contém, consulte Arquivos e processos na máquina remota.
  • Shell: o shell definido para sua conta na máquina remota precisa executar comandos enviados via SSH, como fazem o Bash, o Zsh e o sh
  • Rede: o Claude Code é executado na máquina remota e faz suas requisições de rede a partir dali, portanto a máquina precisa do acesso à rede que o Claude Code exige. Se a máquina não conseguir baixar o Claude Code, o Desktop o baixa no seu computador e o envia. As outras requisições do Claude Code ainda saem da máquina remota. Em uma máquina remota Linux, se essas requisições precisarem de um proxy, defina-o para sessões SSH.

Definir um proxy ou um certificado de CA para sessões SSH

Se uma máquina remota Linux acessa a internet por meio de um proxy ou precisa de um certificado de CA, adicione as variáveis de proxy e de CA em env no ~/.claude/settings.json dessa máquina. Adicione-as mesmo que você já as exporte em ~/.profile, ~/.bash_profile, ~/.zprofile ou ~/.zshrc nessa máquina.

Uma sessão SSH não as obtém desses arquivos, mesmo quando o claude em um terminal nessa máquina as obtém. A sessão pode então travar, ou mostrar The connection from … to the API failed ou Authentication failed, e fazer login novamente não ajuda.

1

Adicione as variáveis

Para o arquivo de CA, use NODE_EXTRA_CA_CERTS, porque o Claude Code não confia em uma CA de SSL_CERT_FILE em ~/.claude/settings.json. Este exemplo define um proxy e um arquivo de CA:

{
"env": {
"HTTPS_PROXY": "http://proxy.example.com:8080",
"NODE_EXTRA_CA_CERTS": "/etc/ssl/certs/example-ca.pem"
}
}
2

Envie sua mensagem novamente

Envie sua mensagem novamente, porque uma variável que você adiciona ou altera nesse arquivo entra em vigor em segundos. Inicie uma nova sessão se ainda falhar.

Encontrar uma variável de proxy ou de CA definida em outro lugar na máquina remota

Verifique se a máquina remota Linux define a variável de proxy ou de CA em outro lugar, porque as sessões usam esse valor e ignoram o de qualquer arquivo de configurações:

1

Liste as variáveis que a máquina remota define

Em um terminal no seu computador, execute ssh devbox env, com o seu próprio host.

2

Altere a variável onde ela é definida

Se a lista tiver a variável, altere-a no arquivo que a define, como ~/.zshenv, /etc/environment ou ~/.bashrc na máquina remota.

3

Forneça o novo valor às sessões

Reinicie a máquina remota, ou saia do Desktop e encerre os processos do auxiliar, como nas duas primeiras etapas para remover o auxiliar. Faça isso quando nenhuma tarefa estiver em execução, porque qualquer uma das opções interrompe o trabalho de Claude.

Usar sua configuração SSH no macOS e no Linux

No macOS e no Linux, o Desktop se conecta executando o cliente OpenSSH no seu computador, portanto ele usa seu ~/.ssh/config. Conectar-se por meio do cliente OpenSSH requer o Claude Desktop v1.37937.0 ou posterior. Insira um nome de Host desse arquivo no campo SSH host para usar as configurações da entrada correspondente, como HostName, User, IdentityFile, CertificateFile, ProxyJump e ProxyCommand.

Antes de adicionar a conexão, verifique o cliente e a entrada em um terminal no seu computador:

  • Versão do cliente: execute ssh -V. O cliente precisa ser o OpenSSH 7.6 ou posterior.
  • Entrada: execute ssh com o nome do Host, como ssh devbox. Se isso falhar, corrija a entrada primeiro.

Você pode deixar os campos SSH port e SSH key (optional) vazios. Se você preencher um deles, o Desktop o usa junto com a entrada:

  • SSH port: um valor aqui sobrescreve o Port da entrada
  • SSH key (optional): o Desktop oferece o arquivo de chave que você escolher, além do IdentityFile da entrada e das chaves no seu agente SSH
Acessar uma máquina atrás de um jump host

Para acessar uma máquina atrás de um jump host, também chamado de bastion, defina ProxyJump ou ProxyCommand na entrada. A entrada a seguir acessa devbox.internal.example.com por meio de bastion.example.com:

Host devbox
  HostName devbox.internal.example.com
  User alice
  ProxyJump bastion.example.com

Insira devbox no campo SSH host.

Acessar um contêiner em uma máquina remota

Para executar uma sessão dentro de um contêiner que não publica nenhuma porta SSH, acesse-o com um ProxyCommand, porque o Desktop não executa o RemoteCommand da entrada à qual você se conecta. Se sua entrada usa RemoteCommand para entrar no contêiner, a sessão é executada na máquina em que a entrada faz login, não no contêiner.

1

Adicione a entrada

Adicione a entrada a seguir ao final do seu ~/.ssh/config, ou logo acima da sua primeira entrada Host *, se você tiver uma. Substitua o contêiner Docker devbox, seu usuário dev e a máquina build.example.com pelos seus. O comando da entrada inicia um servidor SSH dentro do contêiner para cada conexão:

Host devbox-container
User dev
ProxyCommand ssh build.example.com docker exec -i devbox /usr/sbin/sshd -i
2

Prepare o contêiner

  • Instale o servidor OpenSSH, com uma chave de host que permaneça a mesma quando você recompilar a imagem ou recriar o contêiner
  • Dê à conta indicada em User uma forma de fazer login, como um arquivo authorized_keys
  • Verifique se o contêiner atende aos requisitos da máquina remota
3

Verifique a allowlist

Se seu administrador restringe os hosts SSH, execute ssh -G devbox-container em um terminal no seu computador. Peça a ele que permita o hostname que o comando imprime, aqui devbox-container, em sshHostAllowlist. Ao permitir esse nome, ele permite tudo aquilo a que o ProxyCommand da sua entrada se conecta.

4

Teste a entrada e depois conecte-se

Execute ssh devbox-container em um terminal no seu computador. Corrija o que ele relatar e execute-o novamente até que ele abra um shell no contêiner sem pedir nada a você:

  • Se o ssh pedir uma senha, frase secreta ou código: mude para um login que funcione sem prompt, como uma chave mantida pelo seu agente SSH
  • Se o ssh relatar Cannot execute command-line and remote command. ou Bad packet length: remova RemoteCommand e RequestTTY da sua entrada para build.example.com. Depois disso, ssh build.example.com em um terminal no seu computador abre um shell nessa máquina, não no contêiner.
  • Se o ssh relatar Connection closed by UNKNOWN port 65535: execute ssh build.example.com docker exec devbox /usr/sbin/sshd -t no mesmo terminal.
  • Se ele imprimir Missing privilege separation directory: /run/sshd, crie essa pasta no contêiner.
  • Se ele imprimir no hostkeys available e o contêiner tiver chaves de host, adicione -u root após exec neste comando e na entrada.

Em seguida, insira devbox-container no campo SSH host.

Usar variáveis do seu shell em um `ProxyCommand`

Para usar uma variável de ambiente sua em um comando ProxyCommand ou Match exec, exporte-a em um arquivo de inicialização do shell, como ~/.zshrc, depois saia do Desktop e abra-o novamente. Quando o Desktop é iniciado, ele lê o que seu shell de login exporta e mantém esses valores até você sair.

Isso requer o Claude Desktop v2.37337.0 ou posterior e um comando env que aceite -0, o que você pode verificar executando env -0 em um terminal no seu computador.

Usar credenciais da AWS em um `ProxyCommand`

Se você define credenciais temporárias da AWS em um arquivo de inicialização do shell, um ProxyCommand que executa a AWS CLI pode se conectar em um terminal e falhar no Desktop. Quando seu shell exporta AWS_SESSION_TOKEN, AWS_SECURITY_TOKEN ou AWS_CREDENTIAL_EXPIRATION, o ssh e seu ProxyCommand no Desktop não recebem as credenciais da AWS do shell, nem AWS_REGION ou AWS_PROFILE.

Se a AWS CLI não tiver outra fonte para uma região ou para credenciais, ela falha com You must specify a region ou Unable to locate credentials. Para se conectar pelo Desktop, forneça à AWS CLI um perfil que ela lê de ~/.aws/config:

1

Adicione um perfil com uma região e uma fonte de credenciais

Este exemplo adiciona um perfil chamado corp que obtém suas credenciais de um programa auxiliar:

[profile corp]
region = us-east-1
credential_process = /full/path/to/your-credential-helper
2

Indique o perfil no ProxyCommand

Este exemplo adiciona --profile ao comando que a AWS documenta para o Session Manager:

Host i-*
ProxyCommand sh -c "aws ssm start-session --profile corp --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'"
3

Conecte-se novamente

Execute ssh com o host em um terminal para confirmar que a entrada ainda se conecta ali, depois conecte-se pelo Desktop.

Aumentar o timeout da conexão SSH

Se sua configuração SSH não define nenhum ConnectTimeout para o host, o Desktop dá ao ssh 30 segundos para se conectar. Por meio de um jump host ou de um ProxyCommand, esse tempo inclui o tempo que a rota leva para se conectar. Se sua rota precisar de mais tempo, adicione um valor maior à entrada:

Host devbox
  HostName devbox.internal.example.com
  User alice
  ProxyJump bastion.example.com
  ConnectTimeout 120

O ssh usa o primeiro valor que encontra para um host, portanto mantenha a entrada acima de qualquer entrada Host * que defina ConnectTimeout. Para confirmar, execute ssh -G devbox em um terminal no seu computador. A saída inclui connecttimeout 120. Depois de alterar o valor, saia do Desktop e abra-o novamente.

Se a própria máquina remota aguarda uma aprovação no seu telefone, aprove em até 45 segundos, qualquer que seja o ConnectTimeout que você definir. Você não pode aumentar esse limite, porque o próprio Desktop define ServerAliveInterval e ServerAliveCountMax, e o ssh então encerra um login em que a máquina remota não envia nada por esse tempo. Se, em vez disso, um jump host ou um ProxyCommand aguardar por você, aumente o ConnectTimeout na entrada da máquina remota para cobrir esse tempo.

Corrigir um bloco `Match host` que apenas o Desktop aplica

Se o Desktop usa uma configuração que ssh devbox em um terminal não usa, procure um bloco Match host acima da linha HostName da entrada. Em um terminal, o ssh lê um bloco ali antes da linha HostName, portanto compara o bloco com devbox. O Desktop fornece ao ssh o valor de HostName na linha de comando, portanto o ssh compara o bloco com esse valor.

Para verificar, execute ssh -G em um terminal no seu computador com os valores de HostName e User da entrada na linha de comando, como o Desktop faz:

ssh -G -o HostName=devbox.internal.example.com -l alice devbox

Compare a saída com a de ssh -G devbox. Se as configurações do bloco, como proxycommand, aparecerem apenas na primeira saída, o bloco só tem efeito no Desktop. Para que o Desktop também o ignore, adicione !originalhost devbox à linha Match dele:

Match host *.internal.example.com !originalhost devbox

Para confirmar, execute o primeiro comando novamente. As configurações do bloco não aparecem mais na saída.

Configurações de encaminhamento que o Desktop deixa desativadas

Na conexão com a máquina remota, o Desktop deixa ForwardAgent, ForwardX11, LocalForward, RemoteForward, DynamicForward e Tunnel desativados, mesmo quando sua configuração SSH os ativa. No terminal ou em um comando !, espere que suas configurações de encaminhamento se apliquem apenas às vezes, porque o Desktop pode iniciar ali um ssh separado que as segue.

  • Para acessar uma porta na máquina remota: encaminhe-a você mesmo
  • Para usar suas próprias chaves a partir da máquina remota: configure uma credencial na própria máquina remota, por exemplo para git push

Para impedir que o Desktop encaminhe seu agente SSH ou uma porta, execute ssh -G devbox em um terminal no seu computador. Em seguida, execute-o novamente como o Desktop pode executá-lo, com os valores de hostname e user que ele imprime, como em ssh -G -o HostName=devbox.internal.example.com -l alice devbox. A segunda saída pode mostrar configurações de um bloco Match que a primeira ignora.

Procure em ambas as saídas uma linha forwardagent que diga qualquer coisa diferente de no, e linhas que comecem com localforward, remoteforward ou dynamicforward. Se encontrar alguma, remova essa configuração da sua configuração SSH. Faça o mesmo para um host que seu ProxyCommand acessa com ssh.

Acessar uma porta na máquina remota

Para abrir um servidor que é executado na máquina remota, como um servidor de desenvolvimento na porta 3000, encaminhe a porta você mesmo. Em um terminal no seu computador, execute ssh com -L e o host ao qual você se conecta, como devbox:

ssh -N -L 3000:localhost:3000 devbox

Se você preencheu SSH port ou SSH key (optional) na conexão, adicione -p ou -i com o mesmo valor. Deixe esse comando em execução e abra http://localhost:3000 em um navegador no seu computador para acessar a porta 3000 da máquina remota. Se o ssh imprimir open failed: administratively prohibited, peça ao administrador da máquina que permita o encaminhamento TCP, que é controlado por AllowTcpForwarding no sshd_config do servidor SSH.

Máquinas remotas Windows

Uma máquina remota Windows requer o Claude Desktop v2.31226.0 ou posterior.

Use o OpenSSH Server da Microsoft. A máquina pode ser x64 ou ARM64. O shell que o servidor SSH inicia pode ser cmd.exe, Windows PowerShell 5.1 ou Git Bash.

Máquinas remotas Windows são menos testadas do que as Linux. Experimente seu próprio trabalho ali antes de depender dele.

Espere estes limites, entre outros, em uma máquina remota Windows:

  • Terminal: o terminal não abre em uma sessão cuja pasta é um caminho do Windows, como C:/projects/app
  • Sandbox: o Claude Code é executado ali no Windows nativo, onde executa comandos sem sandbox. Consulte onde o sandbox é executado.
  • Plugins: o Desktop não copia um plugin que contenha um nome de arquivo ou pasta que o Windows não consegue armazenar, como um nome com :. A sessão lista os plugins que o Desktop deixou de fora.
  • Servidores MCP: em algumas máquinas remotas Windows, as chamadas de Claude para servidores MCP de claude_desktop_config.json passam pelo Desktop, portanto Claude não consegue chamar as ferramentas deles enquanto o Desktop está desconectado. Antes do Claude Desktop v2.37337.0, isso vale para todas as máquinas remotas Windows.
  • Worktrees: os worktrees ficam em <project-root>/.claude/worktrees/. Se você escolher outra pasta, o Desktop a ignora.
  • Mensagens anteriores: se o shell do servidor SSH for cmd.exe ou Windows PowerShell, talvez você precise se conectar antes de ver as mensagens anteriores de uma sessão
  • Forks: se o shell do servidor SSH for cmd.exe ou Windows PowerShell, você só pode fazer fork de uma sessão na primeira mensagem dela
  • Execução enquanto desconectado: uma tarefa continua em execução enquanto o Desktop está desconectado somente se o servidor SSH permitir que um programa sobreviva à conexão que o iniciou. Para descobrir, teste a máquina remota.
  • Processos remanescentes: depois que uma sessão termina, verifique na máquina se há programas que o Claude Code iniciou, porque eles podem continuar em execução. O auxiliar em segundo plano que o Desktop instala não para sozinho ali.

Manter uma tarefa em execução enquanto o Desktop está desconectado

Se seu computador entrar em suspensão, você perder a rede ou sair do Desktop, a tarefa continua até terminar, precisar de você ou atingir um dos limites. Fechar a tampa conta como suspensão. Uma reinicialização do Desktop ou do seu computador, inclusive para uma atualização, conta como saída.

O Claude Code é executado como um processo na máquina remota, sob um auxiliar em segundo plano que o Desktop instala ali, portanto não precisa da sua conexão SSH para continuar em execução. O comportamento descrito nesta seção requer o Claude Desktop v2.31226.0 ou posterior.

  • Após suspensão ou perda de rede: você recupera a tarefa em execução se o processo ainda estiver em execução e o Desktop puder fazer login sem prompt. Se não puder, envie uma mensagem.
  • Após sair: a tarefa continua em execução, mas você a perde quando a sessão é aberta novamente, a menos que o Desktop consiga se reconectar ao processo dela. Verifique quando o Desktop consegue se reconectar antes de sair. Se você perdeu a tarefa, envie uma mensagem para continuar.

Quando você voltar e a tarefa não estiver concluída, verifique se há um aviso de que o Desktop não consegue se reconectar, um erro de autenticação ou uma solicitação pendente:

Preparar uma tarefa longa
Limites enquanto o Desktop está desconectado

Uma tarefa que você deixa em execução pode terminar quando o login dela expira, quando a máquina remota a encerra ou quando o auxiliar para ou é substituído:

Edições de arquivos e algumas ferramentas podem falhar enquanto o Desktop está desconectado. Se a tarefa precisar delas, mantenha o Desktop conectado:

  • Worktrees: em uma sessão que usa um worktree, o Desktop verifica cada edição de arquivo antes que Claude a faça. Enquanto o Desktop está desconectado, cada edição aguarda cerca de 30 segundos e depois falha. Comandos do shell ainda são executados. Em uma máquina remota Linux ou macOS, as edições podem continuar funcionando. Se não tiver certeza, inicie a sessão sem um worktree.
  • Restrições de pastas: se sua organização restringe quais pastas as sessões podem usar, o Desktop verifica cada leitura, pesquisa e edição de arquivo, com ou sem worktree. Enquanto o Desktop está desconectado, cada uma aguarda até 10 minutos e depois falha.
  • Conectores: conectores e outras ferramentas que o Desktop fornece passam pelo Desktop, portanto, enquanto ele está desconectado, cada chamada falha após cerca de 30 segundos
  • Fluxos de trabalho: o Desktop verifica cada novo fluxo de trabalho antes que ele comece, portanto, enquanto o Desktop está desconectado, um novo aguarda até 10 minutos e depois falha
  • Servidores MCP: servidores MCP que o Claude Code inicia na máquina remota não passam pelo Desktop, portanto Claude ainda pode chamar as ferramentas deles. Servidores de claude_desktop_config.json estão entre eles apenas se o Desktop não usar seu cliente SSH integrado. Caso contrário, e em algumas máquinas remotas Windows, Claude não consegue chamar as ferramentas deles enquanto o Desktop está desconectado.
Quando as edições em um worktree continuam funcionando

Em uma máquina remota Linux ou macOS, a verificação não passa pelo Desktop, portanto as edições dentro do worktree continuam funcionando enquanto o Desktop está desconectado. Antes do Claude Desktop v2.37337.0, isso vale apenas para uma máquina remota Linux.

As edições ainda falham em alguns casos, incluindo estes:

  • Cliente SSH integrado: o Desktop o usa, por exemplo, em uma instalação da Microsoft Store, em um computador Windows sem o OpenSSH 9.4 ou posterior da Microsoft, ou por padrão no Windows com um provedor terceirizado
  • Localização do repositório: o repositório é seu diretório pessoal, uma pasta acima dele ou ~/.claude
  • Caminhos do macOS: em uma máquina remota macOS, o repositório está em /Volumes, ou um nome de pasta no caminho do repositório ou do worktree tem um ~ ou um caractere não ASCII
  • Restrições de pastas: sua organização restringe quais pastas as sessões podem usar
  • Inicializador corporativo: antes do Claude Desktop v2.37337.0, você faz login com uma conta Claude e sua organização inicia o Claude Code na máquina remota por meio de um inicializador corporativo

Uma sessão sem worktree não tem essa verificação, a menos que sua organização restrinja quais pastas as sessões podem usar.

Lidar com solicitações que chegam enquanto você está ausente

Se Claude precisar da sua aprovação ou lhe fizer uma pergunta enquanto o Desktop está desconectado, Claude aguarda na máquina remota. A espera não tem limite de tempo próprio. Quando o Desktop se reconecta ao processo, ele mostra a solicitação. Se, em vez disso, o Desktop iniciar um novo processo, você perde a solicitação.

Se uma solicitação que aguardava por você tiver sumido quando você voltar, uma causa possível é que o Desktop reiniciou sozinho, por exemplo para instalar uma atualização. Você só mantém uma solicitação após uma reinicialização se o Desktop conseguir se reconectar ao processo, então verifique quando o Desktop consegue se reconectar antes de deixar uma tarefa em execução.

Se você perder uma solicitação, envie uma mensagem para continuar.

Para reduzir a frequência com que uma tarefa para e aguarda por você, e para receber notícias dela enquanto você está ausente, configure qualquer um destes itens antes de sair:

Se sua organização executa apenas hooks gerenciados, peça ao seu administrador que adicione o hook às configurações gerenciadas que chegam à máquina remota.

O Claude Code não aprova automaticamente algumas ações em nenhum modo de permissão, incluindo Bypass permissions. Dependendo do modo de permissão, o Claude Code nega essa ação ou pergunta a você, e a tarefa então aguarda sua resposta.

Reconectar após suspensão ou perda de rede

Se o Desktop não tiver se reconectado quando você voltar, envie uma mensagem na sessão. O Desktop se reconecta sozinho apenas onde consegue fazer login sem prompt, por exemplo com uma chave mantida pelo seu agente SSH.

  • Senha memorizada: uma senha que você permite que o Desktop memorize também funciona sem prompt, mas, para uma ausência longa, prefira uma chave mantida pelo seu agente SSH. Se os logins com essa senha forem interrompidos ou travarem, o Desktop pode parar de se reconectar e aguardar por você.
  • Qualquer outro prompt: se a máquina remota solicitar qualquer outra coisa, como um código de uso único, você pode receber uma notificação no seu computador. Clique na notificação, ou envie uma mensagem na sessão, e o Desktop mostra o prompt.
Se um jump host pede um login, a interrupção é longa, falta saída ou o processo desapareceu
Reabrir uma sessão depois de sair do Desktop

Depois que você sai do Desktop, a tarefa continua em execução na máquina remota, mas para quando a sessão é aberta novamente, a menos que o Desktop consiga se reconectar ao processo dela. Enquanto o Desktop está fechado, a tarefa é executada até terminar, precisar de você ou atingir um dos limites.

  • Desktop no Windows: você não recupera a tarefa em execução, porque o Desktop nunca se reconecta depois de sair. Inicie o Desktop novamente somente quando esperar que a tarefa esteja concluída, porque a sessão pode ser aberta quando o Desktop é iniciado.
  • Provedor terceirizado, tarefa de uma versão anterior: se você iniciou a tarefa em uma versão do Desktop anterior à v2.42304.0, também não a recupera no macOS nem no Linux. Inicie o Desktop novamente somente quando esperar que a tarefa esteja concluída.
  • Qualquer outra tarefa, com o Desktop no macOS ou no Linux: inicie o Desktop e abra a sessão, e a tarefa continua se o Desktop se reconectar. Ele nem sempre consegue se reconectar, por exemplo após algumas atualizações do Desktop, então atualize antes de uma tarefa longa.

Quando o Desktop não consegue se reconectar, você também perde qualquer aprovação ou pergunta que estava aguardando por você. Se a tarefa não continuar sozinha, envie uma mensagem, e o Claude continua a partir do histórico salvo da conversa.

Para implantações de terceiros, consulte SSH remote sessions in Claude Desktop on 3P.

Escolher onde ficam os worktrees das sessões SSH

A menos que sua organização restrinja quais pastas as sessões podem usar, novas sessões SSH criam seus worktrees no primeiro destes que estiver definido:

  1. Worktree folder na conexão SSH
  2. worktree.location em ~/.claude/settings.json na máquina remota
  3. <project-root>/.claude/worktrees/, o padrão

Cada projeto recebe sua própria subpasta na pasta que você define, portanto, com ~/worktrees, o caminho de um worktree é ~/worktrees/<project>-<id>/<worktree-name>. Se a pasta que você definir estiver dentro do projeto, o Desktop a ignora para esse projeto e usa o padrão. Em uma máquina remota Windows, o Desktop sempre usa o padrão.

Para definir Worktree folder em uma conexão que você adicionou anteriormente ou em uma que sua organização gerencia, passe o mouse sobre ela no menu suspenso de ambiente e clique no ícone de engrenagem.

O campo requer o Claude Desktop v1.44121.0 ou posterior. Se sua organização restringe quais pastas as sessões podem usar, o Desktop oculta o campo e mantém os worktrees dentro do projeto.

Arquivos e processos na máquina remota

O Desktop instala um programa auxiliar e o Claude Code em ~/.claude/remote/ no diretório pessoal de cada usuário que se conecta a uma máquina remota Linux ou macOS. O auxiliar não escuta em nenhuma porta de rede, mas o Claude Code e os programas que ele inicia, como servidores MCP e servidores de desenvolvimento, podem escutar.

Pasta Conteúdo
~/.claude/remote/srv/ O auxiliar, em uma pasta por versão
~/.claude/remote/ccd-cli/ O Claude Code, em um arquivo por versão
~/.claude/remote/run/ Os arquivos de runtime do auxiliar, como seu socket e log, em uma pasta por computador que se conecta
~/.claude/remote/plugins/ Plugins que o Desktop copia do computador do usuário
~/.claude/uploads/ Arquivos que o usuário anexa às mensagens, em uma pasta por sessão

Para listar os processos de um usuário, execute pgrep -fl "$HOME/.claude/remote/" na máquina remota como esse usuário, ou com o diretório pessoal do usuário no lugar de $HOME:

  • Auxiliar: um ou mais processos server para cada computador que se conecta
  • Claude Code: os processos que o auxiliar inicia para as sessões do usuário, cada um a partir de um arquivo com o nome de sua versão, como 2.1.295-…

O Desktop acessa o auxiliar por meio da conexão SSH do usuário, pelo socket Unix rpc.sock na pasta do auxiliar em ~/.claude/remote/run/. Exceto o root, outros usuários na máquina não conseguem se conectar a esse socket, porque ele tem modo 600 e sua pasta tem modo 700.

Para saber quando o auxiliar para sozinho, consulte Limites enquanto o Desktop está desconectado.

Para remover o auxiliar e o Claude Code de um usuário:

1

Saia do Desktop

Saia do Desktop em cada computador a partir do qual o usuário se conecta. Ele instala ambos os programas novamente na próxima vez que se conectar, e pode se reconectar sozinho.

2

Encerre os processos

Com login como esse usuário na máquina remota, execute kill com o ID de cada processo do Claude Code que o pgrep listar. Depois que eles sumirem da lista, execute kill com o ID de cada processo server. Se você encerrar um processo server primeiro, um comando que o Claude Code está executando pode continuar em execução.

Em seguida, liste os processos restantes do usuário, por exemplo com ps -u "$(id -un)" -f, e encerre qualquer um que você reconheça como iniciado pelo Claude Code. Programas que ele deixou em segundo plano podem continuar em execução depois que ele termina, sem estar na lista do pgrep.

3

Exclua a pasta

Exclua ~/.claude/remote/. Para remover os próprios arquivos do Claude Code em ~/.claude/ e ~/.claude.json, consulte Remover arquivos de configuração.

Encerrar o processo de uma sessão

Para encerrar o processo do Claude Code de uma sessão, arquive a sessão no Desktop enquanto o Desktop estiver conectado à máquina remota. O processo continua em execução depois que sua tarefa é concluída e depois que você sai do Desktop.

Antes de arquivar uma sessão que tem um worktree, consulte Trabalhar em paralelo com sessões.

Ver com qual usuário os processos são executados

O auxiliar e o Claude Code são executados como o usuário com o qual o Desktop faz login via SSH. Instalá-los e iniciá-los não exige sudo. Para verificar o usuário, execute ps -o user= -p na máquina remota com um ID de processo que o pgrep listar.

Os programas que o Claude Code inicia, como comandos do shell e servidores MCP, também são iniciados como esse usuário. Revise os direitos desse usuário na máquina remota, incluindo suas regras de sudo, como faria para uma pessoa que executa comandos ali.

Ver quem se conectou à máquina remota

Para descobrir quem se conectou a uma máquina remota, leia o log do servidor SSH nessa máquina, onde um login do Desktop se parece com um de um terminal. Com o Desktop no macOS ou no Linux, espere uma entrada cada vez que o Desktop se conecta, e não uma para cada sessão.

Você não encontrará as conexões SSH do Desktop nas métricas e eventos do Claude Code. Para descobrir a partir deles em qual máquina remota uma sessão SSH executou, consulte Atribuir telemetria a sessões SSH do Desktop. Para o registro do próprio Desktop sobre suas conexões, consulte Obter os logs do Desktop para um problema de SSH.

Conexões que fecham antes do login

Se o log do servidor SSH mostrar conexões que fecham antes de qualquer login, elas podem ser testes do Desktop na porta SSH. O Desktop testa se uma máquina responde, por exemplo depois que uma conexão com ela falhou. Ele abre uma conexão com a porta e a fecha imediatamente, sem enviar nada. Espere um teste ou vários seguidos, por exemplo oito em cerca de dois minutos.

Se nada bane ou recusa endereços por causa dessas conexões, você não precisa fazer nada sobre os testes do Desktop. Se um endereço a partir do qual o Desktop se conecta for recusado ou banido, verifique se o próprio servidor SSH recusa o endereço e se o fail2ban conta os testes do Desktop.

Reconhecer um teste no log do servidor SSH

Compare as linhas do seu log com as que um servidor OpenSSH no Linux grava para um teste no LogLevel padrão, na linha correspondente à versão do seu servidor. Você pode ver as linhas da última coluna em vez disso se a saudação do servidor chegar antes de o Desktop fechar a conexão:

Versão do OpenSSH Linhas para um teste Linhas se a saudação chegar primeiro
6.6 a 7.9 Uma linha com Did not receive identification string from 203.0.113.7 A mesma linha
8.0 a 8.2 error: kex_exchange_identification: Connection closed by remote host error: kex_exchange_identification: read: Connection reset by peer
8.3 a 9.4 error: kex_exchange_identification: Connection closed by remote host, depois Connection closed by 203.0.113.7 port 51234 error: kex_exchange_identification: read: Connection reset by peer, depois Connection reset by 203.0.113.7 port 51234
9.5 a 10.2 Connection closed by 203.0.113.7 port 51234 error: kex_exchange_identification: read: Connection reset by peer, depois Connection reset by 203.0.113.7 port 51234
10.3 a 10.5 Connection closed by 203.0.113.7 port 51234 [preauth] error: kex_exchange_identification: read: Connection reset by peer [preauth], depois Connection reset by 203.0.113.7 port 51234 [preauth]

Outros programas que abrem a porta e a fecham podem deixar as mesmas linhas. Onde uma linha tiver um endereço, verifique se é um a partir do qual um computador com o Desktop se conecta.

As linhas das versões 8.0 a 8.2 não têm endereço. Para obter um, defina LogLevel VERBOSE no sshd_config e execute sshd -T | grep -i loglevel como root. Se ele imprimir loglevel VERBOSE, recarregue o servidor SSH. Depois procure uma linha com Connection from 203.0.113.7 port 51234 antes da linha do teste.

Verificar se o próprio servidor SSH recusa o endereço

Se as conexões forem recusadas a partir de um endereço que muitos computadores com o Desktop compartilham, procure no log do servidor SSH uma linha que termine como esta:

drop connection #0 from [203.0.113.7]:51234 on [192.0.2.10]:22 penalty: connections without attempting authentication

Com o LogLevel padrão, o OpenSSH 9.8 e posteriores podem gravar essa linha ao recusar um endereço por conexões que fecharam sem tentar fazer login, como fazem os testes do Desktop. Com as configurações padrão, você não vê essa linha apenas após alguns testes.

Para evitar a recusa, defina PerSourcePenaltyExemptList no sshd_config com os endereços a partir dos quais as pessoas se conectam, por exemplo PerSourcePenaltyExemptList 203.0.113.7. O servidor então não aplica nenhuma de suas penalidades a esses endereços, incluindo as de logins com falha. Para verificar o arquivo, execute sshd -T | grep -i persourcepenalt como root. Se ele imprimir sua lista, recarregue o servidor SSH.

Verificar se o fail2ban conta os testes do Desktop

Se o fail2ban 0.10.5 ou posterior baniu um endereço a partir do qual o Desktop se conecta, encontre o modo da sua jail em jail.conf, jail.local ou em jail.d/:

  • Uma linha filter que nomeia um modo entre colchetes, como filter = sshd[mode=aggressive]: use esse modo.
  • Apenas a linha filter padrão, com [mode=%(mode)s]: use a linha mode, ou normal se não houver nenhuma.

Se o modo for normal, o fail2ban não conta as linhas dos testes do Desktop, então procure outra causa para o banimento.

Para outro modo, copie as linhas do seu próprio log para um arquivo na máquina remota. Copie cada linha inteira, da data até o fim, e as duas linhas quando um teste deixa duas. Execute fail2ban-regex ali com o arquivo e o modo da sua jail, por exemplo aggressive:

fail2ban-regex -o ip lines.log "sshd[mode=aggressive]"

Para cada falha que o fail2ban conta, o comando imprime o endereço em uma linha própria, como 203.0.113.7. Nesse caso, evite um banimento. Se ele não imprimir nada, o fail2ban não conta nenhuma dessas linhas nesse modo, então procure outra causa para o banimento.

Evitar um banimento pelo fail2ban

Para impedir que o fail2ban bana um endereço por causa dos testes do Desktop, altere uma de duas configurações da jail, cada uma com um custo:

  • mode: defina-o como normal onde quer que sua jail o defina, em uma linha mode ou entre os colchetes de uma linha como filter = sshd[mode=aggressive]. Você abre mão de todas as contagens que apenas os outros modos fazem, por exemplo de clientes que se conectam e saem sem tentar fazer login.
  • ignoreip: defina-o com os endereços a partir dos quais as pessoas se conectam, por exemplo ignoreip = 203.0.113.7. O fail2ban então não conta nada desses endereços, incluindo logins com falha.

Usar servidores MCP configurados na máquina remota

Para usar um servidor MCP de ~/.claude.json ou do .mcp.json de um projeto em uma sessão SSH, configure-o nesses arquivos na máquina remota. O Claude Code inicia os servidores stdio deles ali, portanto instale na máquina remota os comandos que esses servidores executam. Para servidores de claude_desktop_config.json, consulte Limites enquanto o Desktop está desconectado.

Um link claude://code/new abre a página de nova sessão do Desktop e pode indicar uma conexão SSH. Coloque esse tipo de link em um runbook, painel ou página wiki para abrir o Desktop configurado para a máquina e a pasta certas. Para plataformas que removem esses links, consulte O link é exibido como texto simples em vez de ser clicável.

Links SSH requerem o Claude Desktop v2.110.0 ou posterior.

O link a seguir indica o usuário dev em build.example.com, a porta 2222 e a pasta /srv/payments, e preenche um prompt:

claude://code/new?ssh_host=dev%40build.example.com&ssh_port=2222&ssh_folder=/srv/payments&q=Investigate%20the%20failed%20deploy

Um link SSH aceita estes parâmetros, e apenas ssh_host é obrigatório:

Parâmetro Valor
ssh_host host ou user@host, escrito como no campo SSH host. O valor não pode começar com -, e a parte do host aceita apenas letras, dígitos, ., _, : e -
ssh_port Um número de porta de 1 a 65535
ssh_folder Uma pasta na máquina remota. Comece-a com / ou ~/, ou use ~
q Texto codificado para URL para a caixa de prompt

Um alias de ~/.ssh/config funciona como ssh_host apenas para pessoas que têm essa entrada. Para corresponder a uma conexão que as pessoas já têm, forneça ao link o mesmo usuário, host e porta dessa conexão.

Quando você abre o link, o Desktop pede que você confirme antes de selecionar a conexão:

  • Uma conexão que você já tem: se o host, o usuário e a porta corresponderem a uma das suas conexões, o Desktop pergunta se deve usá-la e mostra o nome e o host da conexão, e a pasta, se o link indicar uma.
  • Uma nova conexão: caso contrário, o Desktop abre a caixa de diálogo para adicionar uma conexão SSH. Quando você adiciona a conexão, o Desktop pergunta se deve se conectar antes de salvar qualquer coisa e mostra o host do link, e a porta e a pasta, se o link as indicar.

Até que você confirme, o Desktop não salva o host, a porta ou a pasta do link, e não seleciona nem abre uma conexão com eles. Se uma conexão SSH já estiver selecionada, a página de nova sessão ainda pode se conectar a ela sozinha, como faz sem um link, mesmo quando o link indica o mesmo host. Um link não pode conter um arquivo de chave, uma senha ou um comando.

Qualquer pessoa pode escrever um link, portanto verifique o que ele preencheu:

  • Antes de confirmar: verifique o host e a pasta.
  • Antes de enviar: verifique o prompt e o ambiente selecionado.

O Desktop preenche o prompt quando o link é aberto, no lugar de qualquer texto que você ainda não enviou, e nunca o envia por você. Ele trata o prompt como texto simples, portanto um / ou ! inicial e uma menção de arquivo com @ não funcionam como comando ou menção. Se você cancelar, o prompt permanece na caixa e o ambiente que você havia selecionado não muda.

Um link não contorna a sshHostAllowlist. O Desktop verifica a allowlist ao se conectar.

Se o link abrir o Desktop sem uma caixa de diálogo sobre a conexão, procure uma destas causas:

  • Você está desconectado: faça login e abra o link novamente.
  • Outra caixa de diálogo está aberta: feche-a e abra o link novamente.
  • O link não é válido: o Desktop mostra uma mensagem que diz o que corrigir e não preenche o prompt.
  • O Desktop é anterior à v2.110.0: versões anteriores ignoram os parâmetros SSH e abrem a página de nova sessão apenas com o prompt.
  • As sessões SSH estão desativadas: se seu administrador definir a allowlist como um array vazio, o Desktop recusa links SSH.

Pré-configurar conexões SSH para sua equipe

Os administradores podem distribuir conexões SSH aos membros da equipe definindo sshConfigs nas configurações gerenciadas. As conexões definidas dessa forma aparecem automaticamente no menu suspenso de ambiente de cada usuário e são mostradas como gerenciadas. Os usuários podem selecioná-las e definir sua própria Worktree folder para elas, mas não podem editar mais nada nem excluí-las no aplicativo.

O exemplo a seguir pré-configura uma única conexão:

{
  "sshConfigs": [
    {
      "id": "shared-dev-vm",
      "name": "Shared Dev VM",
      "sshHost": "user@dev.example.com",
      "sshPort": 22,
      "sshIdentityFile": "~/.ssh/id_ed25519"
    }
  ]
}

Cada entrada requer id, name e sshHost. Os campos sshPort e sshIdentityFile são opcionais. Os usuários também podem adicionar sshConfigs ao seu próprio ~/.claude/settings.json.

Se você omitir user@ em sshHost, o Desktop se conecta como o User que o ~/.ssh/config de cada desenvolvedor define para o host, ou então como o nome de usuário dele no próprio computador.

Restringir a quais hosts SSH os usuários podem se conectar

Os administradores podem limitar as sessões SSH do Desktop a um conjunto aprovado de hosts definindo sshHostAllowlist nas configurações gerenciadas. Quando definida, os usuários só podem se conectar a hosts cujo nome de host resolvido corresponda a um dos padrões. Defina-a como um array vazio para desativar as sessões SSH. A entrada de referência de sshHostAllowlist explica como um array vazio se combina com listas de outras fontes gerenciadas.

O exemplo a seguir permite conexões a qualquer host em devboxes.example.com e a um único bastion host nomeado:

{
  "sshHostAllowlist": ["*.devboxes.example.com", "bastion.example.com"]
}

Os padrões não diferenciam maiúsculas de minúsculas. * corresponde a qualquer host, e *.example.com corresponde a example.com e a qualquer subdomínio. Qualquer outra coisa é uma correspondência exata. A verificação é feita no nome de host após a resolução de ~/.ssh/config via ssh -G, portanto aliases de Host e entradas ProxyCommand/ProxyJump são permitidos desde que o HostName resolvido corresponda.

sshHostAllowlist é lida apenas das configurações gerenciadas; valores nas configurações de usuário ou de projeto são ignorados. Apenas o aplicativo Claude Desktop respeita essa configuração; a CLI do Claude Code e as extensões de IDE não a leem, e ela não restringe comandos ssh executados por meio da ferramenta Bash. Ela controla a quais hosts o aplicativo Desktop se conecta, não o tráfego de saída da rede, portanto combine-a com os controles de rede ou de zero trust da sua organização se precisar de um limite rígido.

Desativar sessões locais e distribuir conexões SSH

Para desativar as sessões locais e limitar as sessões SSH aos hosts que você escolher, implante disableDesktopLocalSessions, sshConfigs e sshHostAllowlist em conjunto.

O exemplo a seguir desativa as sessões locais, adiciona uma conexão e limita as sessões SSH ao host dessa conexão:

{
  "disableDesktopLocalSessions": true,
  "sshConfigs": [
    {
      "id": "shared-dev-vm",
      "name": "Shared Dev VM",
      "sshHost": "dev.example.com"
    }
  ],
  "sshHostAllowlist": ["dev.example.com"]
}

As chaves se aplicam ao aplicativo desktop. Elas deixam inalteradas outras formas de executar o Claude Code, como a CLI, o Cowork e as sessões na nuvem:

  • A CLI: nenhuma das chaves impede que um desenvolvedor execute a CLI do Claude Code no próprio computador
  • Cowork: nenhuma das chaves se aplica a sessões do Cowork ou a tarefas agendadas do Cowork
  • Sessões na nuvem: nenhuma das chaves altera a disponibilidade das sessões na nuvem. Para desativá-las, use a configuração Cloud sessions em Controles do console de administração.

Ao adaptar o exemplo, verifique os nomes de host, a versão do Desktop e as permissões do arquivo:

  • Nomes de host: certifique-se de que um padrão em sshHostAllowlist corresponda ao nome de host de cada entrada de sshConfigs, sem user@, ou os desenvolvedores não conseguirão se conectar a ela. Para saber como o Desktop faz a correspondência de um nome de host, consulte Restringir a quais hosts SSH os usuários podem se conectar.
  • Versão: disableDesktopLocalSessions requer o Claude Desktop v1.37937.0 ou posterior
  • Permissões do arquivo: certifique-se de que a conta de cada desenvolvedor no computador possa ler o arquivo de configurações gerenciadas. O Desktop não aplica as chaves de um arquivo que a conta não consegue ler, e o Claude Code também é iniciado sem elas.

Coloque as três chaves em uma única fonte gerenciada, a de maior prioridade que você fornece. Se você fornece configurações gerenciadas pelo servidor, mantenha também uma cópia das três chaves na política MDM ou no arquivo de configurações gerenciadas de maior prioridade em cada computador. O Desktop busca as configurações gerenciadas pelo servidor na inicialização, e a cópia no computador se aplica até que uma busca seja bem-sucedida.

Para confirmar que as configurações se aplicam, verifique o computador de um desenvolvedor:

1

Verifique o menu suspenso de ambiente

Saia do Desktop e abra-o novamente, depois abra o menu suspenso de ambiente na caixa de prompt. Local fica esmaecido, e Shared Dev VM aparece em SSH. Se Local ainda estiver disponível, verifique a versão do Desktop, se o arquivo é um JSON válido e qual fonte gerenciada o computador lê.

2

Adicione um host que não está na allowlist

Adicione uma conexão SSH com um nome de host que não está na allowlist, como other.example.com. O Desktop salva a conexão, mas se recusa a se conectar, e informa que as configurações da sua organização não permitem a conexão.

Configuração corporativa

Organizações em planos Team ou Enterprise podem gerenciar o comportamento do aplicativo desktop através de controles do console de administração, arquivos de configurações gerenciadas e políticas de gerenciamento de dispositivos.

Controles do console de administração

Essas configurações são configuradas através do console de configurações de administração:

  • Desktop: controle se usuários em sua organização podem acessar Claude Code no aplicativo desktop
  • Cloud sessions: ative ou desative sessões na nuvem para sua organização
  • Remote Control: ative ou desative Remote Control para sua organização

Em organizações Enterprise que têm HIPAA ativado, a opção Desktop fica desativada por padrão e um Owner pode ativá-la. Aplicar a configuração HIPAA a desativa, mesmo que estivesse ativada, então um Owner precisa ativá-la depois. Cloud sessions e Remote Control também ficam desativados por padrão, e um Owner não pode ativá-los depois que a organização tiver a configuração HIPAA aplicada.

Managed settings

Configurações gerenciadas sobrescrevem configurações de projeto e usuário e se aplicam a sessões Claude Code no Desktop. Você pode definir essas chaves no arquivo de configurações gerenciadas de sua organização ou enviá-las remotamente através do console de administração.

Chave Descrição
permissions.disableBypassPermissionsMode defina como "disable" para impedir usuários de ativar o modo Bypass permissions.
disableAutoMode defina como "disable" para remover o modo Auto do seletor de modo. Também aceito em permissions.
autoMode customize o que o classificador de modo auto confia e bloqueia em sua organização. Veja Configurar o modo auto.
browserExternalPageTools defina como "disabled" para impedir Claude de usar ferramentas para ler ou agir em páginas externas no painel Browser. Os usuários ainda podem navegar para sites externos por conta própria, e as visualizações do servidor de desenvolvimento local não são afetadas.
disableMobileSimulatorTools defina como true para bloquear as ferramentas de Claude para controlar e capturar dispositivos no painel iOS Simulator. O painel permanece utilizável para os toques do próprio usuário; apenas o acesso de Claude é removido. O valor deve ser o booleano JSON true; a string "true" é ignorada.
disableBrowserExternalNavigation defina como true para desativar a navegação externa no painel Browser inteiramente. Nem usuários nem Claude podem navegar para sites externos, e as visualizações do servidor localhost dev não são afetadas. O valor deve ser o booleano JSON true; a string "true" é ignorada.
sshConfigs pré-configure conexões SSH que aparecem no dropdown de ambiente. Usuários não podem excluir conexões gerenciadas nem editar nada além de sua própria Worktree folder.
sshHostAllowlist restrinja sessões SSH a hosts cujo nome de host resolvido corresponde a um desses padrões. Lido apenas de configurações gerenciadas.
disableDesktopLocalSessions defina como true para desativar sessões Code que são executadas no dispositivo, deixando sessões SSH para outros hosts e sessões na nuvem disponíveis. O valor deve ser o booleano JSON true. Lido apenas de configurações gerenciadas. Requer Claude Desktop v1.37937.0 ou posterior.
disableSshSavedPasswords defina como true para impedir que o Desktop ofereça lembrar senhas SSH e que use ou mostre as que salvou anteriormente. Ativá-la não as exclui. Lido apenas de configurações gerenciadas. Requer Claude Desktop v1.49585.0 ou posterior.
managedMcpServers envie configurações de servidor MCP para todos os usuários. Disponível apenas em implantações Desktop de terceiros (3P). Em cada entrada, defina um transporte de "http", "sse" ou "stdio", detalhes de conexão e opcionalmente um mapa toolPolicy para restringir quais ferramentas desse servidor os usuários podem invocar. Entregue através do arquivo de configurações gerenciadas, MDM ou do bloco desktop da política de um gateway de aplicativos Claude, já que implantações de terceiros não recebem configurações do console de administração. Para entregá-lo através do gateway, você precisa de Claude Code v2.1.232 ou posterior no servidor do gateway. Esta é a chave do próprio aplicativo desktop; Claude Code lê uma configuração gerenciada de mesmo nome própria, com uma forma de entrada diferente.

Quais configurações gerenciadas alcançam uma sessão Desktop depende de onde essa sessão é executada. Restrições de modelo como availableModels são aplicadas em sessões Claude Code do Desktop da mesma forma que na CLI do terminal; veja cobertura de superfície.

  • Sessões locais nesta máquina: um arquivo de configurações gerenciadas implantado em disco se aplica. Configurações gerenciadas enviadas remotamente através do console de administração também alcançam essas sessões na API da Anthropic quando a sessão se autentica com um login elegível, seguindo a mesma precedência de configurações que a CLI do terminal.
  • Sessões na nuvem: recebem configurações gerenciadas pelo servidor; arquivos implantados em dispositivos não as alcançam, porque são executadas em VMs gerenciadas pela Anthropic. Sessões roteadas para um ambiente auto-hospedado também leem o arquivo de configurações gerenciadas na imagem do executor. Como Claude Code combina fontes gerenciadas diz quando esse arquivo se aplica.
  • Sessões SSH: a sessão lê o arquivo de configurações gerenciadas do host remoto. O Desktop em si lê sshConfigs, sshHostAllowlist, disableSshSavedPasswords e disableDesktopLocalSessions na máquina local. Se você entregar mais de uma fonte gerenciada, ele as lê de apenas uma por padrão.
  • Sessões Cowork: em uma sessão Cowork nesta máquina, Claude Code nunca busca configurações do console de administração, mesmo quando o usuário se conecta com uma conta Team ou Enterprise, e lê a política implantada na máquina a menos que sua configuração Claude Desktop defina requireCoworkFullVmSandbox. Sessões Cowork remotas não recebem nenhuma. Veja onde e quando uma política se aplica para quais arquivos de dispositivo alcançam Cowork, e regras de permissão MCP para como as regras Bash e WebFetch se aplicam às ferramentas de Cowork.

Em sessões locais e SSH, o aplicativo desktop entrega cada conector claude.ai conectado do usuário para Claude Code diretamente. Nenhuma configuração MCP ou managed-mcp.json alcança esses conectores, qualquer que seja a fonte de configurações ou local de arquivo que você use. Para bloquear as ferramentas de um conector nessas sessões, use os controles de ferramentas de conector de sua organização. Como conectores alcançam Claude Code mostra quais configurações governam conectores em cada tipo de sessão.

permissions.disableBypassPermissionsMode e disableAutoMode também funcionam em configurações de usuário e projeto, mas colocá-los em configurações gerenciadas impede que usuários os sobrescrevam.

Para as chaves de permissão, plugin e entrega que apenas uma fonte gerenciada pode definir, veja Chaves que apenas configurações gerenciadas podem definir.

Políticas de gerenciamento de dispositivos

Equipes de TI podem gerenciar o aplicativo desktop através de MDM em macOS, group policy no Windows ou um arquivo de política no Linux. As políticas disponíveis incluem ativar ou desativar o recurso Claude Code, controlar atualizações automáticas no macOS e no Windows e definir uma URL de implantação personalizada.

  • macOS: configure via domínio de preferência com.anthropic.claudefordesktop usando ferramentas como Jamf ou Kandji
  • Windows: configure via registro em SOFTWARE\Policies\Claude
  • Linux: configure via um arquivo pertencente ao root em /etc/claude-desktop/managed-settings.json, que contém as chaves de política como um objeto JSON. O Desktop recusa o arquivo se qualquer pessoa além do root puder escrever nele ou em sua pasta. É um arquivo diferente do arquivo de configurações gerenciadas de Claude Code.

Requisitos de acesso à rede

Desktop carrega seu código de aplicação e conteúdo do usuário de hosts CDN da Anthropic.

anthropic.com
*.anthropic.com
claude.ai
*.claude.ai
claude.com
*.claude.com
claude.app
*.claude.app
*.claudeusercontent.com
*.claudemcpcontent.com

O tráfego é HTTPS na porta 443 a menos que você configure uma porta personalizada para OTLP, um gateway de LLM ou um servidor MCP.

Para servidores proxy, autoridades de certificado personalizadas, mTLS e os domínios que a CLI autônoma precisa, veja configuração de rede.

Para reduzir o número de wildcards de firewall, permita esses hosts da Anthropic em vez disso. Certos subdomínios são gerados dinamicamente e devem permanecer como wildcards.

anthropic.com
api.anthropic.com
a-api.anthropic.com
a-cdn.anthropic.com
s-cdn.anthropic.com
assets-proxy.anthropic.com
claude.ai
a.claude.ai
assets.claude.ai
downloads.claude.ai
*.livepreview.claude.ai
claude.com
platform.claude.com
*.livepreview.claude.app
*.claudeusercontent.com
*.claudemcpcontent.com

Se sua organização tiver IP allowlisting ativado para Claude, roteie bridge.claudeusercontent.com através do mesmo proxy egress que claude.ai e api.anthropic.com. Se você não conseguir rotear dessa forma, adicione o endereço egress que seu proxy usa para esse host à allowlist de IP de sua organização, mas apenas quando esse endereço for dedicado à sua organização: um intervalo de proxy egress compartilhado também admite outros clientes do fornecedor de proxy.

A Anthropic verifica conexões para esse host contra a allowlist de IP de sua organização usando o endereço de onde chegam. Se seu proxy enviar tráfego para ele através de um endereço que não está nessa allowlist, Claude no Chrome e outros recursos que se conectam através da ponte deixam de funcionar enquanto o resto do aplicativo continua funcionando.

Um artefato que carrega uma fonte tipográfica do Google Fonts também faz requisições a fonts.googleapis.com e fonts.gstatic.com. Ambos os hosts são opcionais. Se você bloqueá-los, artefatos são renderizados em fontes tipográficas de fallback. Bloqueie com uma rejeição rápida em vez de uma queda silenciosa para que a requisição de fonte falhe imediatamente em vez de atrasar a primeira renderização da página.

Artefatos também podem carregar bibliotecas JavaScript, como React ou um pacote de gráficos, de cdnjs.cloudflare.com, cdn.jsdelivr.net, cdn.tailwindcss.com, code.jquery.com e unpkg.com, e de nenhum outro host externo. Se você bloquear esses hosts, as partes de um artefato que dependem de uma biblioteca não funcionam, e diferentemente de uma fonte bloqueada, uma biblioteca bloqueada não tem fallback. Bloqueie com uma rejeição rápida aqui também, para que uma requisição de biblioteca bloqueada falhe imediatamente em vez de ficar pendurada até expirar.

Autenticação e SSO

Organizações Team e Enterprise podem exigir SSO para todos os usuários. Veja autenticação para detalhes de nível de plano e Configurando SSO para configuração SAML; a configuração OIDC é coberta no Guia do Administrador Corporativo Claude.

Manipulação de dados

Claude Code processa seu código localmente em sessões locais ou em sessões na nuvem na infraestrutura gerenciada pela Anthropic, a menos que sua organização as roteie para um ambiente auto-hospedado. Sessões na nuvem, incluindo em um ambiente auto-hospedado, enviam conversas e contexto de código para a API da Anthropic para processamento; sessões locais e SSH os enviam para qualquer provedor de modelo que sua implantação configure, a API da Anthropic por padrão. Veja manipulação de dados para detalhes sobre retenção de dados, privacidade e conformidade.

Implantação

Desktop pode ser distribuído através de ferramentas de implantação corporativa:

  • macOS: distribua via MDM como Jamf ou Kandji usando o instalador .dmg
  • Windows: implante via pacote MSIX. Veja Deploy Claude Desktop for Windows para opções de implantação corporativa incluindo instalação silenciosa

Para os domínios a adicionar à allowlist no seu firewall, veja requisitos de acesso à rede acima. Para configurações de proxy, autoridades de certificado personalizadas e gateways de LLM, veja configuração de rede.

Para a referência completa de configuração corporativa, veja o guia de configuração corporativa.

Vindo do CLI?

Se você já usa o CLI do Claude Code, Desktop executa o mesmo mecanismo subjacente com uma interface gráfica. Você pode executar ambos simultaneamente na mesma máquina, até mesmo no mesmo projeto. Cada um mantém sua própria lista de sessão, e você pode trazer uma sessão CLI para Desktop. Eles compartilham configuração e memória de projeto via arquivos CLAUDE.md.

Para mover uma sessão CLI para Desktop, execute /desktop no terminal. Claude salva sua sessão e a abre no aplicativo desktop, depois sai do CLI. Este comando está disponível em macOS e Windows x64 quando você está conectado com uma assinatura Claude. Não está disponível com autenticação de chave de API ou em Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry.

Do seu shell, claude --desktop abre Desktop diretamente sem iniciar uma sessão de terminal. Requer Claude Code v2.1.285 ou posterior e tem os mesmos requisitos de plataforma e login que /desktop. Sem outros argumentos, abre Desktop no diretório atual. Para abrir uma sessão CLI existente em Desktop, adicione --continue para a conversa mais recente neste diretório, ou --resume com o ID da sessão que /status mostra:

claude --desktop --resume <session-id>

Claude Code imprime Opening session <session-id> in Claude Desktop, a sessão abre no aplicativo e o comando sai. Um nome de sessão não funciona no lugar do ID. Claude Code não move uma sessão que está aberta em outro terminal ou ainda em execução em segundo plano. Se Claude Desktop não estiver instalado, o comando imprime um link de download e sai.

Você também pode retomar uma sessão CLI de dentro do Desktop com /resume. O comando está disponível em sessões locais, não em SSH, WSL ou sessões na nuvem.

Para continuar uma sessão de terminal em Desktop:

  1. Feche a sessão no terminal.
  2. Na caixa de prompt do Desktop, digite /resume. Desktop lista as sessões que você iniciou a partir do CLI neste computador. Pesquise por título, pasta ou branch e visualize onde cada uma parou.
  3. Selecione a sessão. Ela continua no aplicativo com sua conversa completa e contexto.

Desktop continua a mesma sessão em vez de uma cópia, então claude --resume no terminal ainda a encontra depois.

CLI flag equivalents

Esta tabela mostra o equivalente do aplicativo desktop para flags CLI comuns. Flags não listadas não têm equivalente desktop porque são projetadas para scripting ou automação.

CLI Equivalente desktop
--model sonnet Menu suspenso de modelo ao lado do botão enviar
--resume, --continue Clique em uma sessão na barra lateral, ou digite /resume na caixa de prompt para retomar uma sessão que você iniciou a partir do CLI
--permission-mode Seletor de modo ao lado do botão enviar
--dangerously-skip-permissions Modo Bypass permissions. Em planos Pro e Max, ative em Configurações → Claude Code → "Allow bypass permissions mode"; em planos Team e Enterprise, a política organizacional controla
--add-dir Adicione múltiplos repos com o botão + em sessões na nuvem
--allowedTools, --disallowedTools Nenhum equivalente por sessão. Regras de permissão em arquivos de configuração ainda se aplicam.
--verbose Modo de visualização Verbose
--print, --output-format Não disponível. Desktop é apenas interativo.
Variável de ambiente ANTHROPIC_MODEL Menu suspenso de modelo ao lado do botão enviar
Variável de ambiente MAX_THINKING_TOKENS Defina no editor de ambiente local. Veja configuração de ambiente.

Shared configuration

Desktop e CLI leem os mesmos arquivos de configuração, então sua configuração é transferida:

  • Arquivos CLAUDE.md e CLAUDE.local.md em seu projeto são usados por ambos
  • MCP servers configurados em ~/.claude.json ou .mcp.json funcionam em ambos
  • Hooks e skills definidos em configurações se aplicam a ambos
  • Configurações em ~/.claude.json e ~/.claude/settings.json são compartilhadas. Regras de permissão, ferramentas permitidas e outras configurações em settings.json se aplicam a sessões Desktop.
  • Modelos: os mesmos modelos estão disponíveis em ambos. Em Desktop, selecione o modelo no menu suspenso ao lado do botão enviar. Você pode alterar o modelo durante a sessão a partir do mesmo menu suspenso.

MCP servers from the Claude Desktop chat app

O aplicativo Desktop carrega MCP servers de claude_desktop_config.json em sessões da aba Code local, juntamente com servers de ~/.claude.json e .mcp.json. Um server definido em claude_desktop_config.json está disponível tanto na superfície de chat Desktop quanto em sessões da aba Code local.

Se você definir o mesmo nome de server em claude_desktop_config.json e em ~/.claude.json ou .mcp.json, a aba Code em sessões locais se conecta uma vez e usa a definição de claude_desktop_config.json.

O aplicativo também re-entrega stdio servers de ~/.claude.json para o CLI incorporado em sessões locais. Quando o nível superior de ~/.claude.json (escopo de usuário) e .mcp.json definem o mesmo nome de stdio server, a aba Code usa a definição de ~/.claude.json, diferindo da hierarquia de escopo do CLI.

Feature comparison

Esta tabela compara capacidades principais entre CLI e Desktop. Para uma lista completa de flags CLI, veja a referência CLI.

Recurso CLI Desktop
Modos de permissão Todos os modos incluindo dontAsk Manual, Aceitar edições, Plan e Auto. Bypass permissions aparece no seletor de modo uma vez habilitado: através do toggle Configurações em planos Pro e Max, ou através da política organizacional em planos Team e Enterprise
Provedores de terceiros Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry API da Anthropic por padrão. Para roteamento de gateway, veja conectar o aplicativo desktop a um gateway. Para executar a aba Code em Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou um gateway LLM auto-hospedado, veja Claude Desktop on 3P.
MCP servers Configure em arquivos de configuração UI de Connectors para sessões locais e SSH, ou arquivos de configuração
Plugins Comando /plugin UI do gerenciador de plugins
@mention de arquivos Baseado em texto Com autocompletar; sessões locais e SSH apenas
Anexos de arquivo Não disponível Imagens, PDFs
Isolamento de sessão Flag --worktree Opção worktree ao iniciar uma sessão
Múltiplas sessões Terminais separados Abas na barra lateral
Tarefas recorrentes Cron jobs, pipelines CI Tarefas agendadas
Computer use Ativar via /mcp no macOS Controle de aplicativo e tela no macOS e Windows
iOS simulator Dirija o simulador via computer use Painel iOS Simulator abre automaticamente
Integração Dispatch Não disponível Sessões Dispatch na barra lateral
Scripting e automação --print, Agent SDK Não disponível

What's not available in Desktop

Os seguintes recursos não estão disponíveis em Desktop, exceto onde observado:

  • Provedores de terceiros: Desktop se conecta à API da Anthropic por padrão. Para rotear Desktop através de um gateway, ou para executar a aba Code em Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou um gateway LLM auto-hospedado, siga os links na linha Provedores de terceiros.
  • Linux (beta): Computer Use ainda não está disponível no aplicativo desktop Linux. Veja Claude Desktop no Linux.
  • Sugestões de código inline: Desktop não oferece conclusões de código no estilo autocompletar. Funciona através de prompts conversacionais e alterações de código explícitas, e pode sugerir seu próximo prompt depois que Claude responde.
  • Equipes de agentes: equipes coordenadas, onde Claude como líder da equipe atribui tarefas aos colegas de equipe de uma lista de tarefas compartilhada, estão disponíveis no CLI, não em Desktop. Para trabalho multi-agente dentro de uma sessão, use dynamic workflows, que são executados em Desktop; Claude também pode enviar mensagens e gerenciar suas outras sessões diretamente.
  • Comandos terminal-dialog: comandos integrados que abrem um painel interativo no terminal se comportam de forma diferente na aba Code. Edite arquivos de configuração diretamente para gerenciar regras de permissão e configuração, ou execute os comandos a partir do CLI autônomo.
    • Comandos sem forma de argumento, como /permissions, respondem com isn't available in this environment.
    • /config abre Configurações → Claude Code. Texto após o comando é ignorado, então /config theme=dark não define o tema.

Solução de problemas

As seções abaixo cobrem problemas específicos do aplicativo desktop. Para erros de API de tempo de execução que aparecem no chat como API Error: 500, 529 Overloaded, 429 ou Prompt is too long, veja a referência de erros. Esses erros e suas correções são os mesmos em CLI, desktop e web.

Verificar sua versão

Para ver qual versão do aplicativo desktop você está executando:

  • macOS: clique em Claude na barra de menu, depois About Claude
  • Windows: clique em Help, depois About Claude

Clique no número da versão para copiá-lo para sua área de transferência.

Versão do Claude Code na aba Code

Para ver qual versão do Claude Code uma sessão executa, digite /status em uma sessão local na aba Code e leia a linha Claude Code, que mostra uma versão como 2.1.286.

Para obter uma versão mais recente para sessões locais, abra Claude → Check for Updates no macOS ou Help → Check for Updates no Windows e, em seguida, inicie uma nova sessão.

Em uma sessão local, a aba Code executa sua própria cópia do Claude Code, que tem seu próprio número de versão. O aplicativo desktop baixa e atualiza essa cópia, portanto ela pode ser diferente do comando claude no seu terminal, e atualizar um não atualiza o outro.

Erros 403 ou autenticação na aba Code

Se você vê Error 403: Forbidden ou outras falhas de autenticação ao usar a aba Code:

  1. Saia e entre novamente no menu do aplicativo. Esta é a correção mais comum.
  2. Verifique se você tem uma assinatura paga ativa: Pro, Max, Team ou Enterprise.
  3. Se o CLI funciona mas Desktop não, saia completamente do aplicativo desktop, não apenas feche a janela, depois reabra e entre novamente.
  4. Verifique sua conexão de internet e configurações de proxy.

Tela em branco ou travada ao iniciar

Se o aplicativo abre mas mostra uma tela em branco ou não responsiva:

  1. Reinicie o aplicativo.
  2. Verifique se há atualizações pendentes. Em macOS e Windows, o aplicativo se atualiza automaticamente ao iniciar; em Linux, atualize através do apt conforme descrito em Claude Desktop no Linux.
  3. Em uma rede gerenciada, confirme que seu firewall permite os hosts CDN em requisitos de acesso à rede.
  4. No Windows, verifique o Event Viewer para logs de crash em Windows Logs → Application.

"Failed to load session"

Se você vê Failed to load session, a pasta selecionada pode não existir mais, um repositório Git pode exigir Git LFS que não está instalado, ou permissões de arquivo podem impedir acesso. Tente selecionar uma pasta diferente ou reinicie o aplicativo.

Sessão não encontrando ferramentas instaladas

Se Claude não consegue encontrar ferramentas como npm, node ou outros comandos CLI, verifique se as ferramentas funcionam em seu terminal regular, verifique se seu perfil de shell configura adequadamente PATH e reinicie o aplicativo desktop para recarregar variáveis de ambiente.

Erros de Git e Git LFS

Sessões que executam em seu próprio worktree precisam de Git. Se você vê "Git is required," instale Git, ou Git para Windows no Windows, e tente novamente. No Windows, versões do Claude Desktop anteriores a 1.49585.0 pediam Git antes de iniciar qualquer sessão local; se você vê esse prompt e não está usando worktrees, atualize o aplicativo.

Se você vê "Git LFS is required by this repository but is not installed," instale Git LFS de git-lfs.com, execute git lfs install e reinicie o aplicativo.

MCP servers não funcionando no Windows

Se toggles de MCP server não respondem ou servidores falham em conectar no Windows, verifique se o servidor está adequadamente configurado em suas configurações, reinicie o aplicativo, verifique se o processo do servidor está em execução no Task Manager e revise logs do servidor para erros de conexão.

A conexão SSH falha depois que você faz login

Encontre o título do cartão, ou o código que encerra a mensagem de erro, nesta tabela e, em seguida, faça o que a última coluna indica. Para ver a mensagem, selecione View details no cartão de falha.

Título no cartão Código O que fazer
<host>'s SSH server has SFTP turned off [SFTP_UNAVAILABLE] Ative o SFTP no sshd_config do servidor, conforme descrito em requisitos da máquina remota
SFTP doesn't start on <host> [SFTP_NOT_STARTED] Conecte-se ao mesmo host com sftp em um terminal no seu computador para ver o que o impede e, em seguida, verifique as configurações e os arquivos que a mensagem do Desktop menciona
<host> allows too few SSH sessions per connection [SESSION_LIMIT] Aumente MaxSessions no sshd_config do servidor, por exemplo para o padrão do OpenSSH, que é 10
<host> is out of disk space [ENOSPC] ou [EDQUOT] Libere espaço ou cota na máquina remota, no seu diretório pessoal ou em /tmp
This computer is out of disk space [ENOSPC] ou [EDQUOT], em uma mensagem que começa com Couldn't prepare the deploy locally Libere espaço no seu computador
Claude Code won't start on <host> [CLI_UNRESPONSIVE] Aguarde um minuto e tente novamente. Se continuar falhando, execute na máquina remota o comando que a mensagem menciona para ver se o Claude Code responde lá.

Para qualquer outra mensagem, verifique os requisitos da máquina remota.

Obter os logs do Desktop para um problema de SSH

Você obtém o ssh.log, o registro do Desktop de suas conexões SSH, em um arquivo zip com os logs do Desktop que você salva a partir do menu Help. Para salvá-lo, abra Help > Troubleshooting e selecione o item correspondente ao seu sistema:

  • macOS: Show Logs in Finder
  • Windows: Show Logs in File Explorer
  • Linux: Show Logs in File Manager

Examine os arquivos antes de enviá-los, pois eles podem incluir nomes e outros detalhes do seu ambiente. <host> e <user> representam nomes que o Desktop substituiu. O Desktop não substitui todos os nomes, e um nome de host ou de usuário SSH ainda pode aparecer como foi escrito. Se você enviar o arquivo zip para alguém, informe qual host falhou e quando, pois os logs podem não mencioná-lo.

O arquivo zip não contém o log do programa auxiliar que o Desktop instala na máquina remota. Para obter esse log também, copie o remote-server.log da pasta do programa auxiliar em ~/.claude/remote/run/ no diretório pessoal do usuário que se conectou. Examine esse arquivo também antes de enviá-lo.

Aplicativo não quer sair

  • macOS: pressione Cmd+Q. Se o aplicativo não responder, use Force Quit com Cmd+Option+Esc, selecione Claude e clique Force Quit.
  • Windows: use Task Manager com Ctrl+Shift+Esc para encerrar o processo Claude.

Problemas específicos do Windows

  • PATH não atualizado após instalação: abra uma nova janela de terminal. PATH é atualizado apenas para novas sessões de terminal.
  • Erro de instalação concorrente: se você vê um erro sobre outra instalação em progresso mas não há uma, tente executar o instalador como Administrador.

"Branch doesn't exist yet" ao abrir em CLI

Sessões na nuvem podem criar branches que não existem em sua máquina local. Clique no nome do branch na sessão e selecione Copy branch name, depois busque-o localmente:

git fetch origin <branch-name>
git checkout <branch-name>

Ainda preso?

  • Abra Help → Get Support no aplicativo desktop, ou visite o centro de suporte Claude diretamente
  • Para problemas que também se reproduzem no CLI claude autossuficiente, pesquise ou registre um bug em GitHub Issues

Ao registrar um problema, inclua a versão do seu aplicativo desktop, seu sistema operacional, a mensagem de erro exata e logs relevantes. Em macOS, verifique Console.app. No Windows, verifique Event Viewer → Windows Logs → Application. Revise trechos de log antes de postá-los em um problema público; eles podem incluir caminhos de arquivo e outros detalhes do seu ambiente.