Repolode
keon

keon/browser-control

Uma CLI pequena em Rust que controla um navegador Chrome real pelo Chrome DevTools Protocol, feita para agentes de programação que usam o shell.

Estrelas
3,152
Forks
210
Issues abertas
1
Último commit
há 2 meses

O que é?

browser-control é uma ferramenta de linha de comando escrita em Rust que expõe o navegador por meio de subcomandos de shell. Ela pode iniciar ou se conectar a uma instância local do Chrome, capturar snapshots das páginas com referências estáveis para os elementos, como @e1 e @e2, e então clicar, preencher, digitar, rolar a página ou fazer upload usando essas referências. Também aceita seletores CSS e coordenadas x,y como alvos.

A ferramenta é voltada a agentes de programação que já executam comandos no shell. O que não pode ser feito com os comandos de alto nível fica acessível pelos comandos raw eval e cdp. Um daemon em segundo plano mantém um histórico em memória de eventos, tráfego de rede e mensagens do console. Além disso, comandos que falham geram arquivos de trace compactos em um diretório do workspace para ajudar no diagnóstico.

Além do Chrome local, a ferramenta pode iniciar e encerrar sessões remotas no Browser Use, Steel, Hyperbrowser e Browserbase, ou em qualquer outro provedor compatível com CDP configurado por variáveis de ambiente. A instalação pode ser feita com cargo install, por meio de binários pré-compilados ou compilando a partir do código-fonte.

Recursos principais

  • 01O snapshot retorna referências estáveis para os elementos, que podem ser usadas diretamente em ações como clicar e preencher.
  • 02Cada funcionalidade está disponível como subcomando de shell e imprime texto compacto ou JSON.
  • 03O acesso raw ao CDP pelos comandos eval e cdp permite realizar operações que não estão cobertas pelos helpers.
  • 04Um daemon em segundo plano mantém um histórico recente de eventos, requisições de rede e mensagens do console.
  • 05Comandos que falham geram traces de diagnóstico no diretório do workspace.
  • 06Oferece suporte ao Chrome local e a provedores de navegadores na nuvem usando os mesmos comandos.

Casos de uso

  • Permitir que um agente de programação inspecione e interaja com uma página da web pelo shell.
  • Automatizar etapas repetíveis no navegador, como fazer login ou preencher formulários, em um pipeline de shell.
  • Executar uma sessão de navegador em um provedor na nuvem, como Browser Use ou Steel, pela linha de comando.
  • Depurar um fluxo de automação do navegador analisando os traces de falha salvos.

Início rápido

  1. 1

    Instale a CLI pelo crates.io

    cargo install browser-control-cli
  2. 2

    Crie o workspace e inicie o Chrome em uma página de exemplo

    browser-control init && browser-control launch https://example.com
  3. 3

    Capture uma snapshot da página para listar as referências dos elementos acionáveis

    browser-control snapshot

Antes de usar

  • É necessária uma versão local do Chrome ou Chromium ou, para sessões remotas, uma chave de API de um provedor de nuvem pago.
  • O crate se chama browser-control-cli porque o nome mais curto já estava em uso.

Em coleções

Tópicos

Perguntas frequentes

O que é browser-control?
Uma CLI pequena em Rust que controla um navegador Chrome real pelo Chrome DevTools Protocol, feita para agentes de programação que usam o shell. browser-control é uma ferramenta de linha de comando escrita em Rust que expõe o navegador por meio de subcomandos de shell. Ela pode iniciar ou se conectar a uma instância local do Chrome, capturar snapshots das páginas com referências estáveis para os elementos, como @e1 e @e2, e então clicar, preencher, digitar, rolar a página ou fazer upload usando essas referências. Também aceita seletores CSS e coordenadas x,y como alvos.
browser-control é gratuito? Qual é a licença?
browser-control é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
browser-control ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de browser-control foi em 27 de ago. de 2026.
Para que posso usar browser-control?
Permitir que um agente de programação inspecione e interaja com uma página da web pelo shell. Automatizar etapas repetíveis no navegador, como fazer login ou preencher formulários, em um pipeline de shell. Executar uma sessão de navegador em um provedor na nuvem, como Browser Use ou Steel, pela linha de comando. Depurar um fluxo de automação do navegador analisando os traces de falha salvos.
Como instalar browser-control?
Instale a CLI pelo crates.io: cargo install browser-control-cli Crie o workspace e inicie o Chrome em uma página de exemplo: browser-control init && browser-control launch https://example.com Capture uma snapshot da página para listar as referências dos elementos acionáveis: browser-control snapshot
Onde consigo browser-control?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/keon/browser-control

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados