ego (lite) é só um navegador, ego é o seu agente pessoal em qualquer dispositivo.
Entrar na lista de espera
Testes de navegador com IA para o seu agente de código

Rode vários testes de navegador em paralelo, automaticamente, com seu agente de IA

O Playwright MCP controla o navegador com uma chamada de ferramenta por vez: é lento e consome muitos tokens. Agora, o Claude Code ou o Codex executam o teste inteiro no ego (lite) com poucas linhas de código: 2,4 vezes mais rápido e com vários testes em paralelo, cada um em seu próprio Space.

Baixar para Mac(sim, de graça)
Usado por desenvolvedores de
GoogleTikTokHarvardStanfordUSCUCLA

Rode testes de navegador só perguntando

Por exemplo, eu peço pro Codex checar se esse e-commerce tem algum bug. O Codex roda o teste inteiro, corrige os bugs e me conta o resultado. A única coisa que eu faço é rolar o feed do TikTok e ver ele trabalhar.

QA visual, correção, confirmação

A mesma página, de quebrada pra certa, na tela

As páginas de produto renderizam quebradas. O agente olha pra elas no ego (lite), corrige o CSS na fonte, e a página aberta renderiza certo na tela.

Rode testes de navegador na velocidade da luz com o ego (lite)

A maneira tradicional de executar testes no navegador usa o Playwright MCP ou o Chrome DevTools MCP, com uma chamada de ferramenta por vez: cada etapa precisa esperar o modelo ler o resultado anterior, o que torna o processo lento e caro. Agora, os agentes podem executar várias etapas de uma só vez com código JS no ego (lite), terminando mais rápido e gastando menos tokens.

2,4x mais rápido
Mesma tarefa, mesmo agente (Claude Code com Opus 4.8): o ego (lite) terminou em cerca de 18 segundos, com 2 interações com o modelo; o Playwright MCP levou cerca de 43 segundos e 9 interações. Quanto mais difícil é a tarefa, maior fica a diferença.
ego (lite)Playwright MCPChrome DevTools MCP
Como o agente controla elePelo /ego-browser, a skillServidor MCP externo. Uma chamada de ferramenta por ação.Servidor MCP externo. Uma chamada de ferramenta por ação.
ConfiguraçãoSem setup, funciona com qualquer agente.instalação via npx, modos de inicialização pra configurar, erros frequentes de inicialização e de descoberta do Chrome.Debug remoto, user-data-dir, configuração cross-host.
Consumo de tokensBaixo. Sem schema de ferramenta MCP, e só o que o agente registra entra no contexto: um snapshot por execução, não um a cada ação.Alto. Usuários relatam 6x mais consumo de tokens e estouro de contexto de 200 mil tokens.Alto. Screenshots consomem muitos tokens.
Estado de loginSeu próprio navegador logado. O mesmo estado de login do seu ChromeNavegador isolado por padrão; levar os logins junto exige modo extensão ou configurar storage-state.Consegue se conectar, mas toma as guias que você está usando.
iframe / shadow DOM / widgets de SDKO snapshot da página é gerado dentro do motor de renderização, então ele enxerga todos eles por dentro.O snapshot de acessibilidade tem um ponto cego em iframes.DOM cru, você que se vira.
Console / rede / traceConsole, rede e traces, lidos direto dos dados do Chrome DevTools.Console, rede, screenshots.O mais profundo: Lighthouse, performance, memória.
Estabilidade do localizadorSe ancora em rótulos semânticos, sobrevive a mudanças de classe CSS.Refs / acessibilidade, bem estável.Seletores de DOM crus.
CAPTCHA / detecção de botSessão humana de verdade, a menos provável de disparar detecção.Navegador separado / headless, costuma ser sinalizado como bot.Melhor quando conectado ao seu navegador, mas toma conta das suas guias.
Tarefas em paraleloNasceu para rodar várias tarefas ao mesmo tempo via Spaces.Uma sessão por servidor; rodar em paralelo significa gerenciar instâncias isoladas extras.Instância única, muitas guias abertas travam ela.

A fricção nunca foi o navegador. Era a camada no meio do caminho.

Nos fóruns de desenvolvedores e rastreadores de problemas, a maioria das reclamações é sobre o MCP, a camada entre o agente e o navegador: a conexão cai, as aprovações se acumulam, a sessão quebra e o consumo de tokens dispara. O ego (lite) já vem com tudo configurado, então não há mais erros estranhos.

O que trava com o Playwright MCP

O navegador funciona. A conexão com ele que não.

  • Conexão: as ferramentas aparecem mas o agente não chama elas, a execução trava em "aguardando aprovação", e o mesmo servidor se comporta diferente em cada cliente
  • Aprovações: um popup por chamada de ferramenta, geralmente de 10 a 30 numa única tarefa, mesmo com "rodar tudo" ativado
  • Confiabilidade: uma tarefa que termina pela metade, ou uma navegação que já funcionou mas ainda assim dá timeout
Brigando com a camada antes mesmo de testar
ego (lite)

Sem intermediários: o ego (lite) é o próprio navegador

  • Estável por design: o agente fala direto com um navegador local que ele mesmo controla, sem transporte MCP no meio do caminho pra cair ou travar
  • Menos aprovações: uma passagem roda vários passos em vez de uma chamada de ferramenta por ação
  • Previsível: plugue em qualquer agente de IA, sempre do mesmo jeito
Baixe e peça pro seu agente rodar o teste

Sem script de teste. Sem seletor pra manter. Só diga o que checar.

Nos testes com Playwright, Cypress e Selenium, é você quem escreve o teste e mantém os seletores; basta renomear uma classe ou reorganizar o layout para quebrá-los. O ego (lite) recebe uma verificação em linguagem natural e encontra os elementos pelo que eles significam, então uma mudança na interface não quebra o teste.

Escrever Playwright / Cypress / Selenium

Você escreve a spec, você mantém os seletores

  • Escrever e versionar na mão um .spec pra cada fluxo que você quer cobrir
  • Fixar seletores tipo page.click(".btn-x7f3") que quebram na próxima vez que a UI mudar
  • Adicionar waits e retries na mão para lidar com testes instáveis
  • Montar automação de login ou arquivos de storage-state pra testar atrás de um login
  • Rodar de novo e consertar a suíte a cada redesign
Um monte de código pra escrever, seletores pra ficar de babá
ego (lite)

Só diga o que checar

  • Sem spec pra escrever: diga a checagem pro seu agente numa frase
  • Localiza elementos pelo significado, não por classe CSS, então renomear ou reorganizar o layout não quebra o teste
  • Waits inteligentes lidam com conteúdo assíncrono, sem sleep manual no código
  • Testa atrás do seu login sem automação de login
  • Precisa de teste de regressão visual? O agente compara os screenshots pixel a pixel
Grátis. Só dizer pro seu agente o que checar

Pra uma suíte versionada e headless que roda sem supervisão na CI, ou pra testar em Firefox e WebKit, mantenha o Playwright. O ego (lite) é o ciclo rápido e sem scripts para usar enquanto você desenvolve.

Como os agentes de IA controlam o ego (lite)

O agente controla o navegador escrevendo um programa JavaScript completo. Uma única chamada agrupa todos os passos — abrir a loja, adicionar um produto, esperar o checkout — e roda tudo em sequência dentro do navegador, sem o agente esperar uma ação voltar pra mandar a próxima.

Claude Code
>/ego-browser Open localhost:3000, add the first product to the cart, and check that checkout loads
Bash(
ego-browser nodejs <<'EOF' await openOrReuseTab('http://localhost:3000', { wait: true }) cliLog('opened localhost:3000 — storefront rendered') await click('a[href^="/product/"]') await waitForElement('button[data-testid="add-to-cart"]') await click('button[data-testid="add-to-cart"]') cliLog('added first product to cart') await openOrReuseTab('http://localhost:3000/checkout', { wait: true }) await waitForElement('form#payment') cliLog(`checkout loaded — ${(await pageInfo()).url}`) EOF
)
⎿ Execute ego-browser para percorrer o fluxo de checkout
Resultado:
[t=1240ms] opened localhost:3000 — storefront rendered
[t=2870ms] added first product to cart
[t=4480ms] checkout loaded — http://localhost:3000/checkout
Pronto. O checkout carrega direitinho: loja, adicionar ao carrinho e formulário de pagamento, tudo renderizado.
─── 6s · ↑ 1,9k tokens · ego-browser tempo de execução ───

Ele resolve o que normalmente deixa os testes de navegador instáveis

Executamos os cenários que os desenvolvedores consideram mais difíceis de automatizar. Com o ego (lite), os agentes resolveram todos eles. Seu snapshot semântico é gerado dentro do próprio mecanismo de renderização Chromium, por isso consegue enxergar dentro de shadow roots e iframes entre documentos, onde scripts injetados deixam de funcionar.

Shadow DOM

Acts inside web-component shadow roots, where injected scripts go blind.

Payment iframes

Fills card fields inside cross-document iframes, like a Stripe checkout.

Custom date pickers

Picks a date range in a custom calendar with no test ids.

Drag and drop

Real HTML5 drag: moves a kanban card, the board follows.

Infinite scroll

Scrolls a lazy feed until every item is loaded, no hand-tuned waits.

Paginated tables

Walks every page of an admin table and pulls each row.

Conditional modals

Cookie banners and dialogs that pop up mid-flow get handled, not tripped over.

Autocomplete

Types an address, waits for the suggestions, picks the right one.

E um clique que cai num botão coberto ou desabilitado é reportado como falha, não como passou-por-engano — igual a um framework de teste de verdade trataria.

Seu navegador logado, ainda sob seu controle

Faz sentido parar pra pensar antes de soltar um agente no navegador onde você está logado. Aqui estão os limites.

Ele roda no próprio Space

O agente roda num workspace separado dentro do navegador. Ele usa seus logins, mas suas guias e janelas ficam intocadas.

Todo passo é visível

Um navegador de verdade, com interface, rodando no seu Mac — não um processo headless escondido. Acompanhe o teste ao vivo e interrompa pela CLI do seu agente a qualquer momento.

Nada sai do seu Mac

O histórico, os cookies e as sessões ficam no seu computador. O ego (lite) não envia esses dados para a nuvem.

E quando um fluxo tem efeito colateral real — um checkout que cobra de fato, um delete que apaga de fato — aponte o agente para localhost ou staging, do mesmo jeito que você testaria na mão.

Como usar, passo a passo

Teste de aplicação web em três passos: aponte seu agente pra localhost ou qualquer URL, diga o que checar, e leia de volta o que falhou.

1Baixar o ego (lite)

Um navegador Chromium que você usa todo dia. Um clique importa seus logins do Chrome, e o agente testa logado como você.

2Diga pro seu agente de IA o que checar

O que ele deve testar?

/ego-browser Abre localhost:3000, passa pelo checkout e me diz o que está quebrado

Tipo /ego-browser e só diga o que checar, em qualquer idioma que seu agente entenda.

3Leia de volta o que falhou
PáginaResultado
/checkoutOK
/product/gift-carderro do console
/product/cameraimagem 404

Cada página quebrada volta com o erro de console ou a requisição que falhou e explica o motivo — não só um passou ou falhou.

Onde o ego (lite) se encaixa e onde não se encaixa

Feito pro ciclo rápido do dia a dia: reproduzir, debugar e confirmar a correção enquanto você desenvolve.

No que o ego (lite) se destaca

O ciclo do dia a dia, num navegador de verdade.

  • Reproduzir e debugar um bug num navegador de verdade, já logado
  • Teste fluxos atrás de login sem montar automação de login
  • Leia erros de console, requisições falhas e o estado da página
  • Rode checagens exploratórias em várias páginas ao mesmo tempo
  • Confirme a correção na mesma sessão em que encontrou o bug

Quando ainda vale usar o Playwright

Honesto sobre o limite.

  • Suítes de regressão headless rodando sem supervisão na CI (o ego (lite) é um navegador Mac com interface, não headless)
  • Testes cruzados em Firefox e WebKit (o ego (lite) é Chromium)
  • Uma suíte de testes versionada e determinística, que você commita e mantém

Dê ao seu agente um navegador de verdade pra testar

Baixar ego (lite) para Mac

FAQ

Não. Você usa um agente de IA que já usa no dia a dia, como Claude Code, Codex ou Cursor, e diz o que checar em linguagem natural. O agente escreve e roda os passos no navegador por você. Não tem arquivo .spec pra manter nem seletor CSS pra escrever na mão, porque o ego (lite) localiza os elementos a partir de um snapshot semântico da página.

O Playwright MCP é um servidor MCP que seu agente controla com uma chamada de ferramenta por ação — uma tarefa de quinze passos vira quinze idas e voltas pro modelo, lento e caro em tokens. O ego (lite) é o próprio navegador: o agente escreve uma única passagem curta de JavaScript que executa vários passos de uma vez, no seu navegador real já logado. No nosso teste com a mesma tarefa, no Claude Code com Opus 4.8, o ego (lite) terminou em cerca de 18 segundos com 2 idas e voltas ao modelo, contra cerca de 43 segundos e 9 idas e voltas do Playwright MCP. Ele também roda várias tarefas de teste em paralelo, cada uma no seu próprio Space — algo que um único navegador MCP não consegue fazer.

Sim, e é aqui que ele brilha. O ego (lite) é o seu navegador do dia a dia, já logado, então o agente testa dashboards, painéis de admin internos e fluxos de conta sem você precisar montar uma automação de login antes. Como se comporta como uma sessão humana de verdade, também é bem menos provável disparar CAPTCHA ou detecção de bot do que um navegador headless ou recém-aberto.

Cada tarefa roda no seu próprio Space, um workspace separado dentro do mesmo navegador, como janelas extras do mesmo perfil. Os Spaces compartilham seus logins mas mantêm páginas próprias, então execuções em paralelo não colidem entre si nem com as guias que você está usando. Pro site, parece um único usuário logado com várias guias abertas. Se sua aplicação só permite uma sessão ativa por conta, rode esses fluxos um de cada vez ou use uma conta de teste.

Sim, no sentido de que o agente captura um screenshot de baseline e um novo, compara pixel a pixel, e conta o que mudou e onde. É o próprio agente fazendo o diff no seu navegador, não um produto separado de teste visual pra configurar — não precisa de Percy nem Chromatic. Pra um serviço de baseline gerenciado com fluxo de revisão e gate na CI, uma ferramenta dedicada de teste visual ainda é a melhor opção.

Hoje não. O ego (lite) é um navegador de verdade, com interface, rodando no seu Mac, feito pra testar enquanto você desenvolve: reproduzir um bug, debugar, confirmar a correção, rodar checagens nas suas páginas. Pra uma suíte headless que roda sem supervisão na CI, ou pra testar em Firefox e WebKit, mantenha sua suíte Playwright. O ego (lite) é o ciclo rápido do dia a dia, não o runner da CI.

Problemas funcionais e de runtime que um usuário de verdade encontraria: um fluxo que quebra, um botão que não faz nada, um erro de JavaScript não tratado, uma requisição que falha, um erro de console, um valor que sai errado. O agente lê o estado da página junto com console e rede, então ele conta o que falhou e onde — não só um sinal verde ou vermelho.

O agente trabalha no próprio Space, então suas guias e janelas ficam intocadas, e tudo acontece numa janela de navegador real e visível, que você pode acompanhar e interromper pela CLI do seu agente a qualquer momento. Seus dados de navegação ficam no seu computador: o ego (lite) não envia histórico, cookies ou sessões pra lugar nenhum. Pra fluxos com efeito colateral real, tipo um checkout que cobra de verdade, aponte o agente pra localhost ou staging, do mesmo jeito que você testaria na mão. Se você conectar um agente ou provedor de modelo externo, esse provedor tem sua própria política de dados.