Introduction

When building workflows that require browser operations, you often need to start a headless browser or configure a remote debugging port. This typically means logging in again, losing installed extensions, or repeatedly encountering an “Allow remote debugging” confirmation dialog. BrowserRig provides a locally driven solution. It does not rely on a headless browser; instead, it connects through a Chrome extension to your existing logged-in Chromium browser.

What Is This

BrowserRig is an open-source local browser driver plugin maintained by Castor6. It allows an agent to reuse your existing Chrome windows, Cookies, login sessions, and extensions without requiring browser-scoped remote debugging approval. It is a standalone open-source product. It does not include an LLM or make planning decisions; it only serves as a code-level execution layer.

Core Features

  • Reuse existing sessions: Reuse Chrome windows, Cookies, sessions, and extensions.
  • Non-blocking connection: Connect to a logged-in Chrome instance through a local relay and extension without triggering browser-scoped remote debugging confirmation.
  • Session takeover: The session adopt --active command can find, attach to, and take over the active tab in a single operation.
  • Background work: The execute command creates background tabs within the same browser profile, keeping foreground workflows uninterrupted.
  • Skill-first driving: Provides CLI and Skill-first driving modes compatible with runtimes such as DeepSeek Harness.

Installation and Enablement

Add the plugin to the designated Profile in DeepSeek Harness.

dsh plugin --profile web add browserrig

After installation, inspect the generated configuration to confirm that the plugin was loaded successfully:

dsh --profile web --dump-config

Typical Usage

After installation, execute Playwright scripts through the CLI. The following command navigates to a sample page and returns the title and URL:

browserrig execute 'await page.goto("https://example.com"); return { title: await page.title(), url: page.url() }'

Check the plugin connection status and run a health check:

browserrig status
browserrig doctor

Use Cases and Notes

  • Use cases: Development and testing workflows that require preserving login state, using browser extensions, or frequently switching browser windows.
  • Prerequisites: Node.js 22.22.0 or a newer version is required.
  • Permissions: The plugin runs with the permissions of the current DSH process. Chrome may display the standard non-blocking debug information bar when tabs are attached; this is normal.
  • Key difference: BrowserRig does not connect to Chrome’s browser-scoped remote debugging endpoint; instead, it transfers CDP commands through the extension API. It does not include an LLM or make planning decisions; it only executes code.

Conclusion

BrowserRig addresses the pain point of reusing a real browser environment in agent development. Through session adopt --active and the background-tab mechanism, it maintains workflow continuity. For more details, see the project source code.

GitHub Repository