Início rápido
Instale o ego lite em cinco minutos e corra a sua primeira tarefa de browser a partir da sua Agent CLI.
Instale o ego lite em cinco minutos e corra a sua primeira tarefa de browser a partir da sua Agent CLI.
Requisitos do sistema
- macOS 12.0 ou superior
- Uma destas Agent CLI: Claude Code, OpenAI Codex, Cursor, Continue, Gemini CLI, Hermes Agent, OpenClaw, Opencode
Instalação
Escolha a opção que lhe convier.
Descarregar o instalador macOS
Duplo clique para instalar. No primeiro arranque, o ego lite procura as Agent CLI instaladas na sua máquina e escreve a skill ego-browser na pasta de skills de cada uma.
Instalar pela linha de comandos
No terminal de qualquer Agent CLI:
curl -fsSL https://lite.ego.app/install.sh | sh
O comando instala o browser ego lite e o helper ego-browser, e regista a skill em todas as Agent CLI presentes na sua máquina.
No primeiro arranque, o ego lite faz apenas uma pergunta: quer importar os dados do navegador? Depois selecione o navegador correspondente para confirmar, e sessões, cookies, extensões e Profile vêm consigo, e os seus agentes podem reutilizá-los logo a seguir.
A sua primeira tarefa
Na Agent CLI, escreva / para abrir o seletor de skills, escolha /ego-browser, e descreva a tarefa em linguagem natural:
/ego-browser follow @ego_agent on x.com for me
Depois de carregar o contexto da skill, o agente produz e executa este código:
ego-browser nodejs <<'EOF'
await useOrCreateTaskSpace('follow-ego-agent')
await openOrReuseTab('https://x.com/ego_agent', { wait: true })
await snapshotText()
// O snapshot devolve a página de perfil de @ego_agent — uma SPA com centenas de refs.
// O botão Follow tem nome acessível "Follow @ego_agent". Nesta execução, a sua ref é @92.
await click('@92')
await wait(3) // Três segundos para o X confirmar o follow e voltar a desenhar a página
await snapshotText()
// Depois do click, o label do mesmo botão passa de "Follow @ego_agent" para "Following @ego_agent". A ref não muda.
cliLog('Done. @ego_agent followed.')
EOF
Dois pormenores merecem atenção:
- O agente atua sobre a ref devolvida por
snapshotText()(@92), não sobre um seletor CSS. A ref reflete a forma como uma pessoa percebe o elemento (o nome acessível do botão é mesmo"Follow @ego_agent"), por isso sobrevive a qualquer rotação de class names que o X faça. As refs são atribuídas por snapshot, por isso o número que verá na prática não vai bater certo com o exemplo. - O agente usa a sessão do X importada do seu Chrome. Não há novo login, nem cookies coladas, nem fluxo de OAuth. No primeiro snapshot, o botão Follow já está clicável porque já estava com sessão iniciada.
Acompanhar o trabalho do agente
Assim que a tarefa arranca, abra o ego lite e clique no painel Space na barra lateral. O Space em execução fica destacado; entre lá para ver o agente em tempo real: navegação, scroll, snapshots, extração de dados.
No fundo da vista Space há dois botões:
- Assumir (Take over). Recupera o separador atual do agente e passa a conduzi-lo você.
- Parar (Stop). Termina a tarefa de imediato.
Operar uma página
click é apenas uma das operações baseadas em refs. fill, type, pressKey, hover e select funcionam da mesma maneira: snapshot, escolher a ref, agir sobre ela. Eis um fluxo de login:
ego-browser nodejs <<'EOF'
await useOrCreateTaskSpace('example-login')
await openOrReuseTab('https://example.com/login', { wait: true })
await snapshotText()
// O snapshot devolve algo deste género:
// @3 [input type="email"] placeholder="Email"
// @4 [input type="password"] placeholder="Password"
// @5 [button type="submit"] "Continue"
await fill('@3', 'user@example.com')
await fill('@4', 'your-password')
await click('@5')
await waitForLoad()
const tab = await currentTab()
cliLog('Logged in:', tab.url)
EOF
Se importou os dados do Chrome durante o onboarding e o Chrome já estava com sessão iniciada neste site, o openOrReuseTab leva o agente diretamente para a página autenticada. O snapshot vem com o dashboard em vez do formulário de login, e o agente pode saltar o preenchimento.
Várias tarefas em paralelo
Cada Space tem o nome que passou em useOrCreateTaskSpace. Nomes diferentes não colidem, por isso podem correr ao mesmo tempo:
# Claude Code num terminal
ego-browser nodejs <<'EOF'
await useOrCreateTaskSpace('leads-enrichment')
await openOrReuseTab('https://www.linkedin.com', { wait: true })
EOF
# Em paralelo, o Codex noutro terminal
ego-browser nodejs <<'EOF'
await useOrCreateTaskSpace('qa-regression')
await openOrReuseTab('https://staging.example.com', { wait: true })
EOF
Próximos passos
- ego-browser — lista completa de helpers, contexto
js()no lado da página, acesso CDP em bruto - Space — ciclo de vida e regras de nomeação de um Space
- Snapshot — refs e o seletor
loc= - Tarefas de browser na prática — um percurso completo, de ponta a ponta