Skip to main content
Esta documentação se aplica às implantações federais do Devin. Voltar para a Documentação do Devin
A CLI e o Desktop air-gapped se conectam aos endpoints de modelo definidos no seu arquivo de modelos, ao emissor do provedor de identidade definido no seu arquivo de autenticação e a quaisquer servidores MCP que você configurar localmente. Esta página explica o que essas conexões exigem da sua rede: confiança TLS, um proxy opcional e os códigos exibidos quando uma conexão falha.

Requisitos de TLS

  • Todo base_url de modelo e o issuer de SSO devem usar https://. O http:// simples só é aceito para hosts de loopback (localhost, 127.0.0.0/8, [::1]).
  • Os certificados são verificados com o repositório de confiança do sistema operacional (Security.framework no macOS e o repositório de CAs do sistema no Linux). Se seus endpoints forem assinados por uma CA já instalada na estação de trabalho, nenhuma configuração adicional será necessária.
  • Se seus endpoints forem assinados por uma CA privada que não esteja no repositório de confiança do sistema operacional, adicione-a com DEVIN_CA_BUNDLE, conforme descrito abaixo. A CLI nunca desativa a verificação de certificados.

Confiar em uma CA privada com DEVIN_CA_BUNDLE

DEVIN_CA_BUNDLE aponta para um arquivo PEM cujos certificados são considerados confiáveis além do repositório de confiança do sistema operacional. Ele se aplica às requisições de inferência, às verificações do devin airgap doctor e a todas as requisições que a CLI faz ao seu IdP durante o login e a revalidação via SSO (Single Sign-On).
1

Monte o pacote

Coloque os certificados raiz (e os intermediários, se houver) da sua CA privada em um único arquivo PEM. O arquivo pode conter vários blocos -----BEGIN CERTIFICATE-----.
Seus endpoints não precisam compartilhar o mesmo certificado nem a mesma CA. Há um único pacote para todo o processo do agente, e ele vale para todas as conexões. Portanto, se endpoints diferentes forem assinados por CAs privadas diferentes, concatene todas essas CAs no mesmo arquivo:
Com esse pacote, https://vllm.corp.example (assinado por corp-root-ca), https://models.ml.example (assinado por ml-platform-ca) e seu IdP (assinado por idp-root-ca) passam a ser confiáveis. Endpoints assinados por uma CA que já está no repositório de confiança do sistema operacional não precisam de entrada. O arquivo de modelos não tem campos de certificado ou TLS por modelo, e não há suporte a um pacote separado por endpoint.
2

Exporte a variável no ambiente do agente

A variável precisa estar visível para o processo que executa o agente. Para a CLI no terminal, defina-a no perfil do shell de cada usuário. Para o Desktop, defina-a da mesma forma que as variáveis de chave de API dos modelos (consulte Variáveis de ambiente de chave de API): adicione-a à configuração devin.acp.agentEnv ou, no macOS, use launchctl setenv DEVIN_CA_BUNDLE /etc/devin/ca-bundle.pem (o open não repassa o ambiente do seu shell para o app).
3

Confirme com o doctor

O sufixo trusted only via DEVIN_CA_BUNDLE confirma que é o pacote que torna o endpoint confiável: o doctor testa novamente cada endpoint acessível usando apenas o repositório de confiança do sistema operacional e informa se essa tentativa falha no TLS. Sem a variável definida, a linha do pacote de CA exibe not configured (OS trust store only; set DEVIN_CA_BUNDLE to add a private CA).
Se o arquivo não puder ser lido, contiver uma seção PEM inválida ou não tiver nenhum certificado, o doctor reprova a verificação CA bundle com CFG004 e a mensagem do parser (por exemplo, failed to read CA bundle '/etc/devin/ca-bundle.pem': No such file or directory). Em tempo de execução, a mesma condição não é fatal: a CLI exibe uma linha warning: ignoring DEVIN_CA_BUNDLE: … e passa a usar o repositório de confiança do sistema operacional. Assim, um erro de digitação no caminho aparece como falhas de TLS NET003 nos seus endpoints, e não como um erro de inicialização. Corrija o pacote e execute o doctor novamente.

Proxy

A CLI air-gapped usa o mesmo tratamento de proxy de saída que a Devin CLI padrão. Por padrão ("mode": "system"), ela respeita as variáveis de ambiente HTTP_PROXY, HTTPS_PROXY, ALL_PROXY e NO_PROXY, além das configurações de PAC/proxy automático do sistema operacional. Para forçar um proxy específico ou ignorar totalmente os proxies, adicione um bloco proxy ao arquivo de configuração do usuário (config.json no diretório de configuração compartilhado do Devin; consulte Formatos em disco):
no_proxy vale em todos os modos e usa a mesma sintaxe da variável de ambiente NO_PROXY. Para definir o proxy para todos os usuários de um host, coloque o mesmo bloco proxy no arquivo de políticas machine-wide system.json (/etc/devin/system.json no Linux, /Library/Application Support/Devin/system.json no macOS, C:\ProgramData\Devin\system.json no Windows). Se os dois arquivos definirem proxy, a CLI não inicia até que você remova a cópia do usuário. A referência completa das opções está na referência do arquivo de configuração da CLI. Um proxy que encerra o TLS e assina novamente o tráfego com a própria CA conta como uma CA privada: adicione o certificado dele a DEVIN_CA_BUNDLE. As conexões continuam indo apenas para os destinos listados no início desta página; o proxy muda o caminho, não o conjunto de destinos.

Tempos limite

Uma verificação que excede o tempo limite é reportada como NET005.

Códigos NET

O devin airgap doctor anexa um destes códigos a cada verificação de endpoint que falha. Esses também são os códigos que você verá em solicitações de suporte. O catálogo completo está na página Códigos de erro.