Pular para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://docs.devin.ai/llms.txt

Use this file to discover all available pages before exploring further.

Esta página aborda problemas conhecidos ao usar o Devin Desktop no Windows Subsystem for Linux (WSL) e as correções recomendadas.

Desempenho lento ou desconexões (saturação do sistema de arquivos 9P)

Ao usar o Devin Desktop no WSL (via Remote - WSL), o editor pode ficar lento, parar de responder ou se desconectar repetidamente do backend do WSL. Na maioria das vezes, isso é causado por extensões que fazem monitoramento agressivo de arquivos e indexação no sistema de arquivos do WSL, o que satura o protocolo Plan 9 (9P) — a ponte do sistema de arquivos entre o Windows e o ambiente Linux do WSL. Isso é mais provável em repositórios grandes e quando vários servidores de linguagem são executados ao mesmo tempo.

Sintomas

  • O Devin Desktop fica visivelmente lento ou com travamentos quando conectado ao WSL
  • O editor se desconecta com frequência do backend do WSL e tenta se reconectar
  • As desconexões ocorrem durante o desenvolvimento ativo (por exemplo, ao usar o Cascade) e também quando o editor está ocioso
  • O Devin Desktop trava ou deixa de responder, exigindo a reinicialização tanto da IDE quanto do WSL (wsl --shutdown)
  • O uso de memória do WSL aumenta com o tempo, mesmo em sistemas com 32 GB+ de RAM
  • Os logs de diagnóstico do WSL mostram um grande número de eventos P9 Reply_Rlerror (erros de arquivo não encontrado)
  • O desempenho é normal ao usar o Devin Desktop fora do WSL (por exemplo, ao abrir uma pasta local do Windows)
  • Soluções alternativas comuns (reiniciar o WSL, reinstalar o Devin Desktop, aumentar a memória no .wslconfig) não resolvem o problema por si só

Causa raiz

A comunicação entre o Windows e o sistema de arquivos Linux do WSL usa o protocolo Plan 9 (9P), que tem taxa de transferência limitada em comparação com o acesso nativo ao sistema de arquivos. Quando extensões são instaladas no ambiente WSL, algumas fazem monitoramento de arquivos e indexação agressivos em todo o workspace. Em repositórios grandes (por exemplo, 250.000+ arquivos, 5+ GB), isso gera um volume enorme de operações no sistema de arquivos pela ponte 9P, o que pode:
  • Saturar a capacidade do protocolo
  • Produzir milhares de erros de arquivo não encontrado (Reply_Rlerror)
  • Fazer a conexão entre o Devin Desktop e o backend do WSL cair
  • Contribuir para o aumento gradual da pressão de memória dentro do WSL ao longo do tempo
Isso se agrava quando vários servidores de linguagem também estão em execução (por exemplo, Sorbet, Ruby LSP, TypeScript etc.), já que eles adicionam ainda mais sobrecarga de monitoramento de arquivos. A atividade combinada no sistema de arquivos gerada por extensões e servidores de linguagem pode sobrecarregar a ponte 9P mesmo em sistemas com mais de 32 GB de RAM. Um exemplo conhecido é a extensão Vue (Volar), que já foi observada causando indexação excessiva de arquivos em ambientes WSL mesmo quando o workspace não contém arquivos Vue. Esse problema está documentado no ecossistema do VS Code: microsoft/vscode-remote-release#11091 Isso é especialmente provável se você tiver trazido um grande conjunto de extensões do VS Code ou de outro editor que não são necessárias para o projeto atual.

Soluções

Muitos problemas de desconexão e desempenho no WSL podem ser resolvidos simplesmente atualizando o próprio WSL. As versões mais recentes do WSL incluem melhorias na estabilidade do sistema de arquivos 9P e na confiabilidade da conexão. Abra o PowerShell (ou o Prompt de Comando) no seu host Windows e execute:
wsl --update
Em seguida, reinicie o WSL:
wsl --shutdown
Reabra o Devin Desktop e reconecte-se ao WSL. Você pode verificar a versão do WSL com:
wsl --version
O WSL 2.7.3.0 e versões posteriores inclui correções que resolveram problemas persistentes de desconexão para os usuários, mesmo sem outras alterações na configuração.

2. Reinstalação limpa do servidor do Devin Desktop no WSL

Exclua o diretório do servidor do Devin Desktop no WSL e deixe o Devin Desktop reinstalá-lo na próxima conexão:
rm -rf ~/.windsurf-server
Depois, reconecte o Devin Desktop ao WSL. O servidor será reinstalado automaticamente.

3. Minimize as extensões instaladas (maior impacto)

Instale apenas as extensões de que você realmente precisa para o repositório em que está trabalhando.
  • Abra o painel Extensions no Devin Desktop enquanto estiver conectado ao WSL
  • Verifique quais extensões estão instaladas no ambiente WSL (não apenas localmente)
  • Desative ou desinstale extensões de que você não precisa, especialmente aquelas que fazem monitoramento intenso de arquivos ou indexação
Extensões com problemas conhecidos no WSL:
  • Vue (Volar) — foi confirmado que causa indexação excessiva de arquivos pela ponte 9P, mesmo em projetos que não usam Vue. Só desinstalar essa extensão já resolveu desconexões para vários usuários.
  • Outras extensões de linguagem específicas de frameworks (Angular, Svelte etc.) podem se comportar de forma semelhante se estiverem instaladas, mas não forem necessárias para o workspace atual.
Não presuma que extensões que funcionam bem em uma configuração local (sem WSL) terão o mesmo comportamento no WSL. A ponte do sistema de arquivos 9P é o gargalo — extensões inofensivas localmente podem se tornar desestabilizadoras quando toda operação de arquivo precisa atravessar esse limite do protocolo. Reduzir a atividade no sistema de arquivos causada por extensões reduz diretamente a carga na ponte 9P.

4. Otimize os limites de recursos do WSL

Crie ou edite o arquivo %USERPROFILE%\.wslconfig no host Windows (por exemplo, C:\Users\<YourUser>\.wslconfig) com limites de recursos adequados ao seu sistema:
[wsl2]
memory=16GB
swap=4GB
processors=4
autoMemoryReclaim=gradual
Observação: A configuração autoMemoryReclaim foi removida no WSL 2.7.3.0 e em versões posteriores. Se você estiver usando o WSL 2.7.3.0+, omita esta linha. Você pode verificar a versão do seu WSL com wsl --version.
Ajuste os valores de acordo com os recursos disponíveis no seu sistema. Após salvar o arquivo, reinicie o WSL:
wsl --shutdown
Em seguida, reabra o Devin Desktop e reconecte-se ao WSL.

Diagnóstico

Verifique os logs de diagnóstico do WSL em busca de erros de 9P

Para confirmar se a saturação de 9P é a causa, colete os logs de diagnóstico do WSL:
wsl --debug-shell
Ou colete um pacote completo de diagnósticos:
Invoke-WebRequest -UseBasicParsing "https://aka.ms/wsldiag" -OutFile wsldiag.ps1
.\wsldiag.ps1
Procure grandes volumes de eventos Reply_Rlerror nos logs do 9P/sistema de arquivos. Milhares deles (ou mais) geralmente indicam que extensões ou processos dentro do WSL estão gerando requisições excessivas ao sistema de arquivos, em um volume que o bridge 9P não consegue acompanhar.

Quando usar cada solução

  • Atualize o WSL primeiro — muitos problemas podem ser resolvidos simplesmente executando wsl --update. O WSL 2.7.3.0+ inclui melhorias significativas de estabilidade. (Solução mais simples.)
  • Minimize as extensões se você tiver muitas extensões instaladas no WSL que não usa ativamente ou se tiver migrado extensões de outro editor. (Mudança de maior impacto.)
  • Reinstale o servidor de forma limpa se o estado do servidor do Devin Desktop puder estar corrompido ou obsoleto (por exemplo, após uma atualização com falha ou uma falha anterior).
  • Otimize o .wslconfig se o WSL estiver consumindo recursos demais do host ou se você ainda não tiver configurado limites de recursos. (Melhoria geral na estabilidade do WSL.)
Para melhores resultados, comece atualizando o WSL e depois aplique as demais soluções conforme necessário. A combinação de um WSL atualizado, um servidor limpo, poucas extensões e limites de recursos ajustados resolve tanto a causa raiz (saturação do 9P causada pela atividade das extensões) quanto os fatores que contribuem para o problema (esgotamento de recursos).

Não é possível se conectar ao WSL com VPN ou software Zero Trust

O Devin Desktop não consegue se conectar ao WSL e exibe o erro Couldn't install vscode server on remote server, install script returned non-zero exit status quando uma VPN ou um software Zero Trust (Twingate, Tailscale, Zscaler, Cloudflare WARP, GlobalProtect etc.) bloqueia o tráfego de saída da rede de dentro do WSL.

Sintomas

  • O Devin Desktop exibe Error resolving authority / install script returned non-zero exit status ao se conectar ao WSL
  • O próprio WSL funciona (wsl -d Ubuntu -- echo hello funciona), mas o curl atinge o tempo limite dentro do WSL
  • O problema começou após a instalação ou atualização de uma VPN ou de um software de Zero Trust

Causa raiz

O WSL 2, por padrão, roteia o tráfego por uma rede virtual baseada em NAT. Softwares de VPN e de zero trust muitas vezes não encaminham o tráfego dessa rede virtual, então o download do servidor do Devin Desktop falha silenciosamente.

Solução

1. Ative a rede espelhada

Edite o arquivo de configuração do WSL para ativar a rede espelhada (normalmente C:\Users\<YourUser>\.wslconfig). Adicione o seguinte:
[wsl2]
networkingMode=mirrored
dnsTunneling=true
autoProxy=true
Em seguida, reinicie o WSL e limpe qualquer estado de instalação obsoleto:
wsl --shutdown
wsl -d Ubuntu -- bash -c "rm -f ~/.windsurf-server/.installation_lock"
Reabra o Devin Desktop e reconecte-se ao WSL. O servidor será instalado automaticamente.
Observação: Requer WSL 2.0.0+. Execute wsl --version para verificar a versão e wsl --update para atualizar, se necessário.

2. Alternativa: desconectar temporariamente a VPN

Se não for possível alterar .wslconfig, desconecte a VPN/ZTNA, deixe o Devin Desktop instalar o servidor e, em seguida, reconecte. Atualizações futuras do Devin Desktop voltarão a exigir acesso à rede pelo WSL.