awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
keon avatar

keon/browser-control

0
View on GitHub↗
3,114 stars·208 forks·Rust·MIT·17 views

Browser Control

Browser Control is a command-line browser control tool written in Rust that communicates directly with browser instances using low-level remote debugging protocol commands over web sockets. It provides a stateless command-line interface that processes single terminal commands and outputs compact text or JSON for automated scripts and coding agents. The project manages real browser process lifecycles, connects to cloud-hosted sessions or local instances, and runs multi-step automation scripts from files or piped input streams.

The utility features stable reference element mapping that generates persistent handles from accessibility and DOM snapshots to target page elements across interactions without breaking. It supports simulating mouse clicks, keyboard text input, scrolling, and specialized key combinations using coordinates or reference identifiers. Background event ring buffers maintain circular history logs of network requests and console messages in memory, automatically capturing diagnostic traces upon command failure.

Additional capabilities include tab management, screenshot capture, PDF generation, viewport adjustments, web page scraping, text summary extraction, and real-time log monitoring. Users can also execute raw custom protocol expressions against the browser debugging backend when standard helper commands are insufficient.

Features

  • Chrome DevTools Protocols - Provides a command-line interface communicating directly with browser instances using Chrome DevTools Protocol commands.
  • Browser Runtime Controllers - Executes actions against a real browser using a command-line interface that outputs compact text and JSON suitable for shell environments.
  • Agent Command Line Interfaces - Processes single terminal commands that output compact text or JSON for easy consumption by automated scripts and coding agents.
  • Batch Scripts - Reads multi-step automation scripts and piped input streams to execute ordered sequences of browser commands without manual intervention.
  • Browser Automation Interfaces - Provides a command-line interface for simulating user inputs, capturing screenshots, and inspecting page content during automated testing.
  • DOM Element ID Mapping - Generates persistent handles from accessibility and DOM snapshots to reliably target page elements across interactions without breaking.
  • Input Element References - Enables interacting with page elements using stable handles generated from snapshots, traditional CSS selectors, or direct coordinates.
  • Headless Browser Controllers - Manages real browser process lifecycles and connects to local or cloud-hosted remote debugging sessions.
  • Remote Browser Connections - Connects to local or cloud-hosted browser instances over the Chrome DevTools Protocol to manage tabs and inspect network traffic.
  • Browser and Web Agents - Gives autonomous coding agents the ability to navigate web pages, inspect DOM elements, and execute browser actions directly.
  • Automatic Page Metadata Extraction - Extracts page metadata, compact text summaries, and headings to provide a quick textual overview of current views.
  • Live Page Content Readers - Captures page snapshots, text, and stable element references to allow external tools to read web pages.
  • Browser Automation Scripts - Runs custom automation scripts and executes raw browser protocol expressions or escape hatches when standard helper commands are insufficient.
  • Browser Log Streaming - Listens to console messages and network requests in real time to diagnose runtime errors and page issues.
  • Debug Message Ring Buffers - Maintains an in-memory circular history buffer of console logs and network requests to automatically capture diagnostic traces upon command failure.
  • Background Trace Sessions - Maintains circular event history buffers to automatically capture diagnostic traces upon command failure.
  • Element Targeting - Targets elements using stable references, CSS selectors, or coordinates to perform clicks, text entry, file uploads, and key presses.
  • Tab Managers - Opens, closes, switches between tabs, captures screenshots, generates PDFs, and adjusts viewports within the active browser session.
  • Keyboard Input Simulations - Simulates mouse clicks, keyboard text input, specialized key combinations, and scrolling actions using reference identifiers or direct coordinates.
  • Browser Lifecycle Managers - Spawns a real browser process, manages its lifecycle, and connects over a remote debugging protocol to execute commands.
  • Web Scraping and Extraction - Extracts clean text summaries, metadata, and interactive element references from web pages for automated data collection.

Star history

Star history chart for keon/browser-controlStar history chart for keon/browser-control

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Browser Control

Similar open-source projects, ranked by how many features they share with Browser Control.
  • autoscrape-labs/pydollautoscrape-labs avatar

    autoscrape-labs/pydoll

    6,919View on GitHub↗

    pydoll is a Chrome DevTools Protocol automation library and headless browser controller used for web data extraction and parallel browser automation. It controls Chromium-based browsers via direct WebSocket connections, allowing it to manage isolated browser contexts and tabs while bypassing the overhead and detection associated with WebDriver. The project features an anti-bot evasion framework that mimics natural human behavior, including mouse movements generated via Bezier curves and variable typing patterns. It provides specialized stealth capabilities to bypass behavioral analysis and au

    Pythonanti-detectionautomationbrowser-automation
    View on GitHub↗6,919
  • sawyerhood/dev-browserSawyerHood avatar

    SawyerHood/dev-browser

    3,631View on GitHub↗

    Dev-browser is a browser automation framework and headless browser controller that provides a sandboxed script runner for executing web tasks. It functions as a vision-based web automator and a specialized interface for large language models, enabling the navigation and interaction of web pages within isolated execution environments. The project distinguishes itself by converting complex web pages into simplified representations and coordinate-based maps, allowing AI agents to analyze layouts and perform actions based on pixel locations. It employs a mapping system that assigns unique identif

    TypeScriptclaude-codeplaywrightskills
    View on GitHub↗3,631
  • chromedp/chromedpchromedp avatar

    chromedp/chromedp

    13,137View on GitHub↗

    chromedp is a browser automation framework and driver that controls web browsers via the Chrome DevTools Protocol. It functions as a headless browser automation tool and web browser controller, enabling the programmatic management of browser sessions, targets, and network responses through a remote debugging interface. The project provides specialized capabilities for Chrome DevTools Protocol automation, including headless browser testing, web scraping and data extraction, and mobile device emulation. It also supports browser-based visual regression by capturing precise screenshots of web pag

    Go
    View on GitHub↗13,137
  • pyppeteer/pyppeteerpyppeteer avatar

    pyppeteer/pyppeteer

    3,948View on GitHub↗

    Pyppeteer is a Python library for controlling Chromium-based browsers using the Chrome DevTools Protocol. It functions as a headless browser automation tool, allowing for the programmatic navigation of web pages and the extraction of data from dynamic websites. The project provides low-level browser control through direct communication with the Chrome DevTools Protocol, enabling the interception and modification of network traffic. It differentiates itself by offering specialized performance profiling capabilities, including the measurement of JavaScript and CSS code coverage and the capture

    Python
    View on GitHub↗3,948
See all 30 alternatives to Browser Control→

Curated searches featuring Browser Control

Hand-picked collections where Browser Control appears.
  • Browser automation libraries
  • a library for browser automation and scraping
  • Browser automation agent

Frequently asked questions

What does keon/browser-control do?

Browser Control is a command-line browser control tool written in Rust that communicates directly with browser instances using low-level remote debugging protocol commands over web sockets. It provides a stateless command-line interface that processes single terminal commands and outputs compact text or JSON for automated scripts and coding agents. The project manages real browser process lifecycles, connects to cloud-hosted sessions or local instances, and runs multi-step…

What are the main features of keon/browser-control?

The main features of keon/browser-control are: Chrome DevTools Protocols, Browser Runtime Controllers, Agent Command Line Interfaces, Batch Scripts, Browser Automation Interfaces, DOM Element ID Mapping, Input Element References, Headless Browser Controllers.

What are some open-source alternatives to keon/browser-control?

Open-source alternatives to keon/browser-control include: autoscrape-labs/pydoll — pydoll is a Chrome DevTools Protocol automation library and headless browser controller used for web data extraction… sawyerhood/dev-browser — Dev-browser is a browser automation framework and headless browser controller that provides a sandboxed script runner… chromedp/chromedp — chromedp is a browser automation framework and driver that controls web browsers via the Chrome DevTools Protocol. It… pyppeteer/pyppeteer — Pyppeteer is a Python library for controlling Chromium-based browsers using the Chrome DevTools Protocol. It functions… puppeteer/puppeteer — Puppeteer is a browser automation library that provides a programmatic interface for controlling web browsers to… apify/crawlee-python — Crawlee-python is a web crawling framework for building scalable scrapers using Python. It serves as a comprehensive…