ego (lite) é só um navegador, ego é o seu agente pessoal em qualquer dispositivo.
Entrar na lista de espera
Navegador sandboxAgentes de IASegurança do navegadorAutomação do navegadorIsolamento

Navegador em Sandbox para Agentes de IA: Execução Local vs Remota

11 de set. de 202615 min read
Uma mão gravada segura uma bandeja sandbox enquanto uma janela do navegador se eleva acima dela

Um navegador sandbox executa conteúdo da web dentro de um ambiente de navegador explicitamente limitado, portanto, uma falha ou página hostil tem menos maneiras de afetar o host, outros usuários ou sessões posteriores. Para agentes de IA, ‘sandbox’ pode significar várias coisas diferentes: sandbox do processo Chromium, um perfil de navegador separado, um espaço de trabalho de aplicativo local, um contêiner, uma máquina virtual, política de rede ou uma sessão remota efêmera. Você precisa nomear o limite antes de poder julgá-lo.

O que é um navegador sandbox?

Uma definição útil tem três partes: o processo do navegador é restrito, o estado do navegador tem escopo e o sistema circundante limita o que a sessão pode alcançar ou reter. Se um produto abrir apenas uma URL em outra guia, isso não será informação suficiente para chamá-lo de sandbox de segurança. Se ele iniciar um novo navegador remoto, mas fornecer a esse navegador amplas credenciais de rede, “efêmero” não significa automaticamente baixo risco. O próprio

Chromium separa os processos do navegador e do renderizador e aplica mecanismos de sandbox específicos da plataforma. Um serviço pode então adicionar um novo diretório de dados do usuário, contêiner ou VM, controles de rede de saída, injeção de segredo, montagens de arquivos, limites de recursos e desmontagem. Cada camada protege um ativo diferente e possui um modo de falha diferente.

Para agentes de IA, o modelo de ameaça é mais amplo do que JavaScript malicioso. O agente pode seguir a injeção imediata em uma página, selecionar o controle errado, expor um segredo em um formulário, baixar um arquivo inseguro ou reutilizar uma sessão privilegiada para uma tarefa não intencional. O isolamento do navegador deve, portanto, funcionar com as permissões do agente e a política de confirmação.

Um agente deve usar um sandbox local ou remoto?

Tome a decisão nesta ordem: identidade, limite de risco, escala e, por fim, transferência de controle. O primeiro requisito que não puder ser flexibilizado deve definir a rota.

  1. Escolha um navegador local persistente quando a tarefa precisar reutilizar um login autorizado, uma extensão local ou um estado vinculado ao dispositivo.
  2. Escolha uma sandbox remota quando páginas não confiáveis precisarem ficar fora do dispositivo do usuário, cada execução precisar começar limpa ou muitas sessões precisarem rodar em paralelo.
  3. Escolha um navegador local ou remoto com visualização ao vivo e transferência de controle verificadas quando uma pessoa precisar inspecionar, autenticar, aprovar ou interromper a execução.
  4. Escolha uma abordagem híbrida quando forem necessárias continuidade de identidade e separação fora do dispositivo: mantenha local a etapa que depende da conta e envie o trabalho anônimo ou em grande escala para sessões remotas descartáveis.
Fator de decisãoNavegador persistente localSandbox remoto
Login existentePode reutilizar um perfil local autorizado ou um estado local dedicadoGeralmente importa, recria ou injeta estado de acordo com as regras do provedor
Aquisição humanaDiretamente visível perto do usuárioDepende do suporte e latência de visualização/controle ao vivo do provedor
Isolamento do hostLimite do navegador/perfil; host permanece localPode adicionar contêiner ou separação de VM do host do usuário
SimultaneidadeDelimitado por uma máquina e contenção localProjetado para frotas provisionadas, cotas e sessões paralelas
CustódiaO estado e os artefatos permanecem na máquina do usuário, a menos que sejam sincronizadosEstado, tráfego e artefatos entram na infraestrutura controlada pelo provedor
ManutençãoO usuário ou equipe possui o navegador, a máquina, as atualizações e a capacidadeProvedor possui mais infraestrutura; o cliente possui política e integração

Quais camadas de isolamento realmente importam?

Avalie pelo menos seis camadas separadamente. O isolamento do processo limita o que um renderizador comprometido pode fazer com outros processos. O isolamento do perfil separa cookies, armazenamento local, histórico e extensões. O isolamento do sistema de arquivos limita caminhos legíveis e graváveis. O isolamento de rede controla destinos, DNS, proxies e alcance de rede privada. O isolamento computacional adiciona um contêiner ou limite de VM. O isolamento do locatário evita que o navegador, os logs, os segredos ou os artefatos de um cliente cruzem a carga de trabalho de outro.

Também separe o ciclo de vida do isolamento. Excluir uma sessão após dez minutos reduz a persistência, mas não prova que a sessão não poderia alcançar uma rede confidencial enquanto estivesse ativa. Por outro lado, um espaço local persistente pode ser aceitável para um fluxo de trabalho de conta confiável restrito se o perfil, as permissões do agente e o escopo da tarefa forem intencionalmente limitados.

Como o estado de login e a custódia de dados diferem?

Um navegador local persistente pode manter cookies, armazenamento local, certificados de cliente e extensões compatíveis perto do usuário. Isso elimina o trabalho repetido de login, mas aumenta a consequência do acesso excessivo: um agente pode herdar mais estados de conta do que a tarefa exige. Prefira um perfil de trabalho ou espaço dedicado, permita apenas sites obrigatórios e exija confirmação para ações irreversíveis.

Um sandbox remoto geralmente começa limpo e, em seguida, recebe o estado de armazenamento, um fluxo de login ou persistência gerenciada pelo provedor. Isso melhora a reprodutibilidade, mas envia parte do estado e do tráfego do navegador para um plano de controle remoto. Revise criptografia, região, retenção, logs, artefatos de reprodução, acesso de funcionários, isolamento de subprocessos e comportamento de exclusão. Não carregue um perfil pessoal porque um provedor oferece suporte a um campo de estado de armazenamento.

A expiração da sessão permanece como comportamento do aplicativo. MFA, verificações de risco, vinculação de dispositivos, alterações de IP e rotação de cookies podem invalidar qualquer um dos caminhos. Um agente confiável detecta uma sessão expirada, para antes de agir na página errada e devolve o controle ou segue um fluxo de reautenticação aprovado.

Como o controle humano e a depuração diferem?

A execução visível local coloca o navegador ao lado do usuário, o que é útil quando uma pessoa deve inspecionar o contexto, resolver uma etapa de autenticação ou interromper imediatamente uma ação insegura. Um espaço local dedicado também evita misturar ações do agente em uma guia diária não relacionada.

Um ambiente de navegador remoto pode expor uma superfície de sessão ao vivo, fluxo de comando, logs, gravações e reprodução. Esses recursos podem oferecer suporte a equipes distribuídas e depuração pós-execução, mas a latência de controle, o controle de acesso, a retenção e a disponibilidade regional permanecem específicos da implementação. Verifique-os no ambiente exato em que você opera.

Em uma execução do Airbnb autenticada ao vivo, Claude Code usou o caminho ego-browser para verificar o login da UI visível, pesquise Tóquio de 20 a 23 de outubro e dois hóspedes, aplique o filtro Casa inteira, abra duas listagens e compare os campos visíveis enquanto o Espaço dedicado permaneceu sob o controle do Agente. Ele não inspecionou cookies de sessão nem realizou reservas, lista de desejos, mensagens ou ações de conta.

Claude Code showing a completed two-listing Airbnb comparison beside the live ego (lite) Space and its Agent is in control state
Os pares de quadros de mesma execução concluídos comparam a comparação visível de Claude Code com a página de detalhes ativa do Airbnb em ego (lite). Ele prova a conclusão da tarefa sob o controle do Agente, mas não a persistência entre as execuções ou um controle humano concluído.

A execução comparou apenas o que as duas páginas expuseram visivelmente. A Listagem A mostrou um apartamento com serviços por JPY 58.188 com uma classificação 4.89 de 577 avaliações. A Listagem B mostrou uma unidade de aluguel por JPY 43.154 com uma classificação 4.9 de 489 avaliações. Ambas as páginas usaram a mesma formulação genérica “Cancelamento gratuito por 24 horas”, de modo que o agente não inferiu os termos de cancelamento específicos da data sem entrar no painel de reservas.

Após o término da comparação, o usuário selecionou Assumir o controle. O mesmo Espaço e listagem permaneceram abertos, o status mudou de Agente está no controle para Você está no controle e a ação disponível mudou para Retornar ao agente. Esta é uma observação de transferência direta no nível da interface; não estabelece como cada site ou ação interrompida se comportará.

The completed Airbnb comparison beside the same ego (lite) Space after its status changed to You're in control with Return to agent available
A mesma corrida do Airbnb concluída após aquisição humana. O Espaço permanece na listagem, enquanto Você está no controle e Retornar ao agente confirma visivelmente que o controle foi transferido do agente para o usuário.

Qual a diferença entre simultaneidade, reprodução e custo?

Uma máquina local possui CPU, memória, exibição, bloqueios de perfil e capacidade de rede finitos. É apropriado para trabalho interativo ou de baixa simultaneidade, mas os agentes paralelos não devem alterar o mesmo perfil de uma só vez. Os serviços remotos podem fornecer muitas sessões isoladas e centralizar gravações, mas cotas, tempo de inicialização, minutos do navegador, tráfego de proxy, armazenamento e recursos de observabilidade afetam os custos.

As comparações de custos precisam de uma unidade correspondente: tarefa concluída, não apenas um minuto bruto do navegador. Inclui configuração, novas tentativas, tráfego de proxy, transferência de CAPTCHA ou MFA, criação de estado, armazenamento de artefatos, reprodução de sessão com falha e tempo do operador. Não tivemos telemetria de faturamento comparável para este artigo, portanto não publicamos um vencedor ou tabela de preços.

O que nosso teste de persistência local mostrou?

Usamos ego-browser 0.5.0.31 com Chromium 152.0.7977.54 em um espaço ego (lite) dedicado. Um primeiro processo Claude Code concluiu a comparação somente leitura do Airbnb e entregou o Espaço ao usuário. Depois que o usuário retornou o controle, um novo processo Claude Code retomou o Espaço 12 e inspecionou suas guias existentes sem navegar, recarregar ou alterá-las.

VerificarResultado observado
Mesmo espaço encontrado por novo processoSim, Espaço 12
Guia de resultados de pesquisa em Tóquio mantidaSim, p1
Duas guias de detalhes da listagem mantidasSim, p2 e p3
A listagem visível permaneceu ativaSim, p3
É necessária navegação, recarga ou mutação de guiaNão
A fresh Claude Code process reporting three preserved Airbnb tabs beside Space 12 under Agent control in ego (lite)
Um novo processo Claude Code retomou o mesmo espaço ego (lite) e encontrou a guia de resultados de Tóquio e ambas as guias de listagem intactas. A verificação inspecionou apenas o estado existente, sem navegação, recarga ou mutação de guia.

Esta observação estabelece continuidade entre dois processos Claude Code nesta máquina: o mesmo espaço, três guias, rótulos, títulos, URLs e listagem ativa permaneceram disponíveis. Ele não prova autenticação indefinida, persistência após a reinicialização de um navegador ou dispositivo, compatibilidade com todos os sites ou comportamento de sandbox remoto.

O que nossa execução de proxy remoto mostrou?

Para uma verificação neutra fora do dispositivo, lançamos o Chromium sem cabeça em um tempo de execução do Google Colab Linux e abrimos a mesma pesquisa pública em Tóquio de 20 a 23 de outubro, dois adultos e casas inteiras. Nenhuma credencial do Airbnb foi fornecida. Duas execuções terminaram em 17.66 e 16.42 segundos. Ambos retornaram HTTP 200, renderizaram listagens e o mapa, extraíram os mesmos cinco links de salas distintas e não registraram sinais de bloqueio.

Google Colab remote runtime displaying a headless Chromium screenshot of Airbnb Tokyo search results
Um notebook Colab exibe a página capturada por Chromium headless no tempo de execução hospedado. O aviso de preço do Airbnb e os resultados renderizados estabelecem a saída real da página dessa execução; eles não estabelecem isolamento ou controles de um provedor de navegador gerenciado.
Google Colab JSON output identifying the remote Linux runtime, headless Chromium, HTTP 200 response, five room links, and no recorded block signals
O primeiro registro de execução visível vincula o resultado a um tempo de execução do Colab Linux e relata HTTP 200, cinco links de sala distintos e uma lista vazia de sinais bloqueados. Uma segunda execução arquivada reproduziu esses resultados. Duas observações proxy ainda não são uma referência de confiabilidade, velocidade ou segurança.

Isso reduz a lacuna de evidências anterior: uma VM remota limpa concluiu esta investigação anônima de página pública duas vezes. Ele ainda não testa o isolamento multilocatário, segredos gerenciados pelo provedor, reprodução de sessão, aquisição ao vivo, saída geográfica, reutilização de conta ou garantias de desmontagem. Eles exigem um ambiente de navegador remoto gerenciado com uma conta autorizada e um plano de teste congelado separadamente.

Quando você deve usar uma arquitetura híbrida?

Use um híbrido quando o mesmo sistema tiver zonas de confiança incompatíveis. Roteie uma etapa dependente da conta e visível ao usuário para um espaço local dedicado e roteie descobertas anônimas, páginas não confiáveis ​​ou grandes trabalhos de distribuição para sessões remotas descartáveis. Passe apenas o resultado mínimo entre zonas, como uma URL pública ou um registro normalizado, em vez de um perfil de navegador inteiro.

Um roteador seguro considera a confiança do alvo, a identidade necessária, a sensibilidade dos dados, a simultaneidade, a saída geográfica, o requisito de controle e se um API oficial pode substituir o trabalho do navegador. Deve negar uma tarefa quando nenhuma rota atende à política, em vez de escolher silenciosamente o navegador mais privilegiado.

Como é uma integração mínima?

Um caminho local cria um espaço de trabalho de navegador dedicado, navega em uma página existente, executa a tarefa limitada, valida o resultado e fecha as páginas criadas pelo agente. O caminho remoto solicita uma sessão ao provedor, conecta um cliente de automação, executa a mesma tarefa, armazena apenas os artefatos necessários e encerra a sessão mesmo em caso de falha.

route = policy.choose({
  targetTrust, requiredIdentity, concurrency, takeover
})

if (route === "local") {
  runInDedicatedVisibleSpace(task)
} else if (route === "remote") {
  session = await sandbox.create({ ttl, egressPolicy })
  try { await runTask(session.endpoint) }
  finally { await sandbox.terminate(session.id) }
} else {
  throw new Error("No safe browser route")
}

O código de produção também deve definir tempos limite, chaves de idempotência, origens permitidas, quarentena de download, escopo secreto, retenção de artefato e um registro de auditoria que não contenha credenciais brutas.

Como você valida uma sandbox do navegador?

  1. Escreva o modelo de ativo e invasor: arquivos de host, rede interna, credenciais, outro locatário, sessões posteriores e operador humano.
  2. Mapeie o processo do navegador, perfil, sistema de arquivos, rede, computação, locatário e limites do ciclo de vida separadamente.
  3. Execute uma tarefa canário que tente apenas leituras e gravações de teste aprovadas e, em seguida, prove que caminhos e destinos de host proibidos permanecem inacessíveis.
  4. Verifique o comportamento de inicialização limpa e persistência com marcadores não secretos nomeados. Confirme se a desmontagem realmente remove o estado pretendido.
  5. Teste expiração, travamento, nova tentativa, perda de controle, pop-up, download e caminhos de login interrompidos.
  6. Valide a aquisição e revogação ao vivo com o usuário real e a política de acesso, não com uma captura de tela de marketing.
  7. Verifique artefatos, logs, replays, backups e acesso de suporte em relação à política de retenção.
  8. Repita sob simultaneidade realista e registre o custo da tarefa concluída somente quando todos os denominadores estiverem disponíveis.

Onde o ego (lite) se encaixa?

ego (lite) é um navegador local baseado no Chromium, criado para que pessoas e agentes de IA trabalhem juntos; como categoria de produto, é um navegador para agentes de IA. Ele não é um agente de IA, uma extensão do Chrome, um navegador remoto na nuvem nem um framework de automação como o Playwright. Você pode usá-lo como navegador no dia a dia, enquanto agentes compatíveis como Claude Code, Codex, Cursor e Gemini CLI o controlam pelo ego-browser. No momento, ego (lite) funciona no macOS e pode importar do Chrome guias, favoritos, senhas, extensões, cookies, sessões de login e perfis. Cada tarefa de agente é executada em seu próprio Space, onde você pode acompanhar, pausar ou assumir o controle a qualquer momento.

Por isso, ego (lite) é indicado para tarefas no navegador que dependem de uma sessão autorizada — por exemplo, consultar informações, organizar conteúdo ou preencher formulários no Gmail, Notion, LinkedIn, em ferramentas internas ou em painéis administrativos de SaaS nos quais você já está conectado. Ele também é adequado para fluxos visíveis e que podem ser interrompidos, como pesquisas em várias páginas, comparação de preços, testes de navegador e tarefas mais longas, além de trabalhos em paralelo, nos quais vários agentes usam Spaces separados enquanto você continua navegando em suas próprias guias. Como o navegador é executado localmente, ego (lite) também atende equipes e pessoas que não querem entregar cookies e sessões de navegação a um navegador hospedado na nuvem e precisam que as tarefas usem sua própria rede, VPN ou proxy. Prefira um sandbox remoto ou uma arquitetura híbrida quando o requisito decisivo for isolamento remoto entre vários clientes, um grande volume de sessões descartáveis, saída de rede controlada pelo provedor ou manter páginas não confiáveis fora da máquina local. Se uma API oficial ou uma solicitação HTTP comum puder concluir a tarefa, talvez o navegador seja desnecessário.

Quais fontes definem esta comparação?

Para o limite do processo do navegador, leiaDesign de caixa de areia do Chromium. Para separação em nível de sessão, leia Playwrightguia de isolamento do contexto do navegador. Para limites de host e contêiner, leia Dockervisão geral da segurança do mecanismo. Essas fontes definem camadas de isolamento e primitivas de teste. Eles não provam que um serviço hospedado específico implementa todos os limites corretamente.

Perguntas frequentes

O modo de navegação anônima é uma sandbox do navegador?

O modo anônimo altera principalmente o histórico local e a persistência de armazenamento. Por si só, ele não adiciona uma VM, um limite de locatário, uma lista de permissões de rede ou proteção contra um agente com privilégios excessivos.

Uma sandbox remota é sempre mais segura?

Não. Ele pode isolar o trabalho da máquina do usuário, mas a segurança ainda depende da separação do locatário, do alcance da rede, dos segredos, da custódia do provedor, da retenção e das ações permitidas do agente.

Um navegador local pode reutilizar meu login?

Um perfil local dedicado ou estado importado autorizado pode preservar cookies e armazenamento, sujeito à política do site, expiração, MFA e compatibilidade do produto. Use o perfil mais restrito que atenda à tarefa.

Todo agente deve ser executado em um navegador novo?

Novas sessões são úteis para trabalhos não confiáveis ​​ou repetíveis. As sessões persistentes são justificadas quando a continuidade da identidade faz parte da tarefa e as permissões são intencionalmente limitadas.