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.
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.
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.
| ego (lite) | Playwright MCP | Chrome DevTools MCP | |
|---|---|---|---|
| Como o agente controla ele | Pelo /ego-browser, a skill | Servidor MCP externo. Uma chamada de ferramenta por ação. | Servidor MCP externo. Uma chamada de ferramenta por ação. |
| Configuração | Sem 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 tokens | Baixo. 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 login | Seu próprio navegador logado. O mesmo estado de login do seu Chrome | Navegador 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 SDK | O 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 / trace | Console, rede e traces, lidos direto dos dados do Chrome DevTools. | Console, rede, screenshots. | O mais profundo: Lighthouse, performance, memória. |
| Estabilidade do localizador | Se 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 bot | Sessã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 paralelo | Nasceu 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 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
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
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.
Você escreve a spec, você mantém os seletores
- Escrever e versionar na mão um
.specpra 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
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
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.
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.
Um navegador Chromium que você usa todo dia. Um clique importa seus logins do Chrome, e o agente testa logado como você.
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.
| Página | Resultado |
|---|---|
| /checkout | OK |
| /product/gift-card | erro do console |
| /product/camera | imagem 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 MacFAQ
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.