TabbitBlog

Guia do agent-browser CLI para snapshots, refs e sessões

Abra uma página de prática, reproduza uma ref obsoleta e confira duas sessões independentes do agent-browser.

Neste artigo
  1. Como a CLI e a sessão trabalham juntas
  2. Abra a página de prática
  3. Execute a prática
  4. Leia o necessário para decidir
  5. Reproduza uma ref antiga
  6. Tire um novo snapshot e confira
  7. Separe as evidências
  8. Quais referências podem permanecer
  9. Separe as tarefas por sessão
  10. Navegador do experimento
  11. Escolha o isolamento adequado
  12. Feche a sessão e diagnostique erros

No agent-browser, abra a página, tire um snapshot interativo, use uma referência e confira o que mudou. Se a página mudar, tire outro snapshot antes da próxima ação por ref. O número sozinho não identifica o controle.

Um usuário perguntou como as refs funcionam em páginas que atualizam o DOM. Outro sugeriu verificar se a falha é visível e reproduzível. O exercício separa as duas questões. r/ClaudeAI · r/AI_Agents

Como a CLI e a sessão trabalham juntas

A CLI envia comandos a um processo em segundo plano e mantém o navegador disponível. Use o mesmo nome --session em todos os comandos da tarefa. O snapshot descreve a aba atual, e a sessão identifica o estado do navegador compartilhado.

Sessões · Comparação entre Tabbit e agent-browser · Agente de navegador · Automação web

Abra a página de prática

Use a CLI instalada e um navegador configurado. Consulte a instalação oficial. Sirva o arquivo em loopback ou abra a página hospedada. Leia o título e os nomes dos botões. A saída usa ref=e2 e o comando usa @e2.

Instalação oficial · Snapshots · Abrir a prática

Execute a prática

O HTML não exige conta. Salve fixture.html em uma pasta vazia e rode o servidor em outro terminal. Confira o título ou substitua a URL local pela página hospedada.

python3 -m http.server 4173 --bind 127.0.0.1
agent-browser --session refs-demo-a open http://127.0.0.1:4173/fixture.html
agent-browser --session refs-demo-a snapshot -i
Página antes da troca do painel

Leia o necessário para decidir

Comece com snapshot -i para escolher um controle. Se precisar de uma explicação ou de um erro, leia o snapshot completo ou o estado. Um filtro pode omitir texto que continua na página. Com botões repetidos, confira a região antes de limitar o snapshot.

Reproduza uma ref antiga

Clique no botão que troca o painel. A URL fica igual, mas os botões anteriores desaparecem. Na versão 0.41.2, @e3 retornou código de saída 1 com a mensagem de que o botão original não foi localizado. Uma leitura separada mostrou Panel B ready.

agent-browser --session refs-demo-a click @e2
agent-browser --session refs-demo-a get text '#status'
agent-browser --session refs-demo-a click @e3
Panel B ready
✗ Could not locate element with role=button name=Use original action

Tire um novo snapshot e confira

O novo snapshot atribuiu @e5 a Use revised action. Clicamos e lemos Panel B selected. Na 0.26.0, outro snapshot reutilizou @e3 no botão substituto. Confira a função e o nome em cada execução, pois os números podem mudar.

agent-browser --session refs-demo-a snapshot -i
agent-browser --session refs-demo-a click @e5
agent-browser --session refs-demo-a get text '#status'
Controle ou estadoResultado observado
Botão originalUse original action · @e3
Botão novoUse revised action · @e5
#statusPanel B selected
Novo botão com Panel B selected

Separe as evidências

O primeiro retorno confirma que o painel mudou. O erro mostra que o nome antigo deixou de ser localizado. A última leitura confirma o efeito do novo clique. Guarde o snapshot junto com o estado.

Quais referências podem permanecer

A documentação diz que um nó existente pode manter sua ref. Se for substituído, a ferramenta pode buscar um único elemento com a mesma função e nome. Na prática, o nome antigo desaparece e a busca falha. Com nomes repetidos, observe de novo e use o contexto da região.

Separe as tarefas por sessão

Use nomes como refs-demo-a e refs-demo-b. A segunda sessão abriu o mesmo endereço com outro perfil temporário. Ela mostrou Panel A ready, enquanto a primeira continuava em Panel B selected. O perfil importa para o estado persistente. Dois clientes no mesmo navegador externo podem compartilhar identidade.

agent-browser --session refs-demo-b open http://127.0.0.1:4173/fixture.html
agent-browser --session refs-demo-b get text '#status'
agent-browser --session refs-demo-a get text '#status'

Agentes de automação · Segurança dos agentes · Conectar um navegador existente

As duas versões usaram o executável real do Tabbit Browser Dev com perfis temporários no macOS. O exercício usou agent-browser, e a validação da página usou Tabbit CLI. Siga o guia oficial de instalação da sua plataforma.

Escolha o isolamento adequado

A aba seleciona uma página, a sessão mantém o estado entre comandos e o perfil define onde ficam os dados no início local. Preserve os ajustes em uma sessão e use outro perfil temporário no próximo teste. Alterar uma configuração de inicialização pode reiniciar o navegador.

Feche a sessão e diagnostique erros

Confirme o resultado e feche cada sessão pelo nome. Use session list para ver as sessões ativas. Se a nova referência também falhar, confira URL, aba, função, nome e visibilidade. Aguarde o estado esperado antes de repetir uma ação.

Falha ou observaçãoPróxima ação
Ref anterior após a trocaTirar novo snapshot e buscar a ação revisada
Mesmo número em outro snapshotVerificar nome e função novos
A nova ref também falhaVerificar a aba e o estado visível
agent-browser --session refs-demo-a close
agent-browser --session refs-demo-b close
agent-browser session list

Checklist da primeira tarefa · Depurar erros do navegador

Perguntas frequentes

O que snapshot -i retorna?

Uma visão interativa com funções, nomes e referências.

Por que uma ref antiga falha?

O controle pode ter sumido ou a referência pode mudar em outro snapshot.

Posso copiar @e5 do guia?

Use a referência do controle no seu próprio snapshot.

A mesma URL garante as mesmas refs?

Um aplicativo pode trocar controles sem navegar.

O que devo conferir depois do clique?

O resultado real, como status, URL ou valor salvo.

Como fecho a sessão de prática?

Execute close com o nome da sessão e consulte session list se precisar.

Dê o próximo passo

Deixe o Tabbit trabalhar ao seu lado.

Pesquise entre abas, automatize o trabalho repetitivo do navegador e mantenha todo o contexto ao alcance.