Space
A área de trabalho paralela onde o agente roda tarefas web dentro do ego lite.
Um Space é uma área de trabalho paralela que o ego lite reserva para um agente de IA. O agente abre páginas, lê elas, clica, preenche formulários e baixa arquivos dentro do Space, enquanto você segue trabalhando nas suas abas. Os dois lados dividem o mesmo processo do navegador ego lite, mas nenhum atrapalha o outro.
O que é, e o que não é
Um Space é:
- Uma área de trabalho paralela dentro do mesmo processo do navegador ego lite.
- Um BrowserContext isolado por tarefa, com cookies e storage próprios.
Um Space não é:
- Não é uma janela nova nem outro perfil do Chrome.
- Não é Chrome headless nem renderização fora da tela.
- Não é uma sessão de navegador na nuvem — todos os dados ficam na sua máquina.
Por que o Space existe
Quando você quer que um agente dirija um navegador de verdade, a resposta usual é subir uma instância de Chromium dedicada por tarefa (headless ou com cópia do perfil). O user-data-dir do Chrome geralmente fica travado para um único processo, então reaproveitar seus logins reais em várias sessões significa ou disputar o lock ou copiar o perfil para uma pasta temporária.
O Space pega outro caminho: todas as tarefas do agente compartilham o processo principal do ego lite, e cada uma ganha o próprio BrowserContext nativo para cookies e storage — sem abrir mão da infraestrutura do navegador e dos logins que você já tem.
Um teste em paralelo com seis tarefas que só abrem about:blank:
| Abordagem | Memória extra | Processos extras | Inicialização em paralelo |
|---|---|---|---|
| Instâncias separadas + cópia de perfil | ~15 GB | ~84 | ~2,5 s |
| Space do ego lite | ~0,9 GB | ~6 | ~0,6 s |
Os números servem para mostrar o modelo de recursos, não como benchmark preciso. O custo real varia com a complexidade da página, extensões, scripts do site e nível de paralelismo.
O que vai num Space
Use um Space quando precisar de navegador real, login real ou interação com arquivos:
- Dashboards autenticados, áreas pessoais, telas de pedido, documentos privados.
- Qualquer coisa que envolva clicar, digitar, paginar, filtrar, fazer upload ou download.
- Reaproveitar os logins que já estão no ego lite, em vez de logar de novo toda vez.
- Tarefas que você quer revisar depois — quais páginas o agente visitou, o que fez.
Se for só informação pública, uma web search comum é mais leve.
Como você e o agente colaboram
Enquanto trabalha no Space, o agente não rouba a página atual, o mouse ou o foco. Você continua navegando, ou entra num Space na hora que quiser para ver o progresso.
Um fluxo típico:
- Você descreve uma tarefa web no Codex, Claude Code, Cursor ou outro agente.
- O agente usa o
ego-browserpara escrever código que conduz o navegador e abre o site alvo dentro do Space. - O agente lê um Snapshot e age sobre ele.
- Em etapas que precisam de você — captcha, login por QR code, confirmação de pagamento — o agente pausa e espera você assumir.
- Quando você termina sua parte, o agente continua.
- Depois que a tarefa fecha, as abas continuam no Space para você conferir.
Estado de login
Em sites onde você já está logado no ego lite, o agente normalmente cai direto na página após o login — não precisa reimportar cookie.
Em situações como estas, o agente deve parar e devolver o controle para você:
- Códigos por SMS ou e-mail, login por QR code, chave de segurança.
- Pagamento, pedido, transferência, estorno.
- Publicar, apagar, arquivar, ou qualquer alteração em massa difícil de reverter.
- Autorizar app de terceiros a acessar a conta.
Dá para deixar os limites claros logo no começo, tipo "só leitura, não alterar" ou "para antes de enviar e me chama".
Várias tarefas em paralelo
Um Space comporta várias tarefas ao mesmo tempo, cada uma com abas, cookies e storage próprios. O useOrCreateTaskSpace(name) reaproveita ou cria um espaço pelo nome, e o resto do script roda lá dentro:
ego-browser nodejs <<'EOF'
const task = await useOrCreateTaskSpace('describe your task')
await openOrReuseTab('https://example.com', { wait: true, timeout: 20 })
cliLog(await snapshotText())
await click('button.primary', { label: 'click the submit button' })
EOF
As refs de página não são compartilhadas entre tarefas. Depois de uma navegação, submissão de formulário, troca de aba ou re-render dinâmico, faça outro snapshot — veja Snapshot.
Instalação e ativação
Vem junto com o ego lite — veja Início rápido.
Se você já usa um agente com suporte a Skills, dá para instalar a skill separada:
npx skills add github:CitroLabs/ego-lite/skills/ego-browser
Perguntas frequentes
O Space afeta a página que estou usando?
Não. O agente trabalha dentro do Space; suas abas, foco e mouse não são tocados.
As abas fecham quando a tarefa termina?
Não. O Space mantém as abas para você revisar caminho e resultado.
Quando eu não preciso de Space?
Se você só está pesquisando informação pública ou resumindo uma página pública, sem login nem interação — uma web search comum é mais simples.