MVCODEDocsv2026.7 · devAbrir o app
Docs/Empresa, confiança e operação/Rede e ambientes restritos

Egress sob
contrato.

Política de rede centralizada, proxy corporativo, certificados próprios e um bundle offline para máquinas sem internet. O MVCode foi endurecido para operar onde a rede é uma decisão, não um acaso.

Já implementado e entrando na documentaçãoHow-to /network1 min de leitura

01Política de rede Implementado

Todo egress do runtime passa por um serviço central de política — inclusive webfetch, websearch e a busca do catálogo de modelos. Três modos:

ModoComportamento
allow-allPadrão — sem restrição.
whitelistSó os destinos listados; o resto falha de forma limpa e explícita.
deny-allNenhum egress — o modo do air gap.
maxvision-code.jsonjsonc
{
  "network": {
    "mode": "whitelist",
    "whitelist": ["localhost", "*.maxvision.dev", "https://mcp.exa.ai"],
    "proxy": "http://proxy.local:8080"
  }
}

Equivalentes por ambiente: MVCODE_NETWORK_POLICY_MODE, MVCODE_NETWORK_POLICY_WHITELIST (separada por vírgula) e MVCODE_NETWORK_POLICY_PROXY — ideais para config gerenciada e CI.

02Bundle offline Implementado

Para máquinas air-gapped, o bundle empacota dependências pré-resolvidas — catálogo de modelos, binários auxiliares, web UI — e um manifesto que o runtime consome:

maxvision-code.jsonjsonc
{
  "offline": { "bundle": "/opt/mvcode/offline-bundle" },
  "fallback_model": "/opt/mvcode/offline-bundle/models/models.json"
}

Com offline.bundle presente, os defaults endurecem sozinhos:

  • MVCODE_DISABLE_MODELS_FETCH=1 — catálogo só do bundle.
  • MVCODE_DISABLE_LSP_DOWNLOAD=1 — nenhum download de LSP.
  • MVCODE_NETWORK_POLICY_MODE=deny-all — a menos que você já tenha definido outro modo.

O modelo, nesse cenário, é local (Ollama/LM Studio) ou um gateway interno alcançável pela whitelist.

03Proxy corporativo

~/.zshrc · perfil
export HTTPS_PROXY=https://proxy.example.com:8080
export NO_PROXY=localhost,127.0.0.1
NO_PROXY é obrigatório

A TUI conversa com um servidor HTTP local. Sem o bypass de localhost, o proxy cria um loop de roteamento e nada funciona.

Autenticação básica vai na URL (http://user:pass@proxy:8080) — de variável de ambiente, nunca hardcoded. NTLM/Kerberos? Prefira um gateway de LLM que fale a sua autenticação.

04Certificados próprios

terminal
export NODE_EXTRA_CA_CERTS=/path/to/ca-cert.pem

Vale para o proxy e para acesso direto a APIs com CA interna.

05Receita air gap, ponta a ponta

  1. Monte o bundle numa máquina com internet

    Os scripts de bundle baixam e empacotam as dependências num diretório autocontido.

  2. Transporte e aponte

    Copie o bundle para a máquina isolada e configure offline.bundle.

  3. Modelo local ou gateway interno

    Configure o provedor local e adicione-o à whitelist se houver rede interna.

  4. Verifique o isolamento

    mvcode debug config confirma a política resolvida; um webfetch de teste deve falhar com erro de política, não com timeout.