Skip to content

Credits

browser-broker is designed and written by Matt Macosko (Nice Dreamz LLC), MIT licensed. It is a thin layer on top of other people's work.

Built on

Project What it does here By
Chrome DevTools Protocol Every tab the broker opens, filters and closes The Chromium team
Chrome and Brave The browsers being shared The Chromium team, Brave Software
websockets The async websocket client and server inside proxy.py Aymeric Augustin and contributors
websocket-client The CDP socket in broker_client.py and broker.py Hiroki Ohtani and contributors
Claude Code The PreToolUse hook mechanism the focus-guard example plugs into; several commits were co-authored with it Anthropic
MkDocs and Material for MkDocs This documentation site Tom Christie and contributors; Martin Donath and contributors

Field reports

Who What they found
@Hronom Verified the isolation on Linux in issue #1: Ubuntu 26.04 / Chrome 153, two concurrent clients, checked in both directions. Then measured that hidden tabs never fire requestAnimationFrame while their timers keep running, and that Page.captureScreenshot still returns a PNG. That corrected a claim the project had been making in three files. He maintains Hronaut; this was a standalone test, not an integration.

Sibling projects

Project Role
claude-code-local Claude Code on a local MLX model
browser-agent Drives your real browser via CDP; the agent browser-broker was first built to keep out of the human's tabs

Prior art and neighbours

Other projects working on the same problem, listed in the README:

If your work is here and you'd like the wording changed, or something is missing, open an issue.