chrome-bridge: let any AI agent drive your real logged-in Chrome
DEV Community

chrome-bridge: let any AI agent drive your real logged-in Chrome

The Problem

Ask an agent to check something on a website and most tools spin up a clean browser with zero cookies. Playwright and friends drive a browser they launched, with a profile of their own. MCP browser bridges need an MCP-capable client and a configured server. Either way, you start every session logged out.

How chrome-bridge Works

chrome-bridge takes the other road: it drives the Chrome you are already logged into. A tiny unpacked extension talks over WebSocket to a local zero-dependency Node server, and any agent that can run a shell command can drive the browser:

node cli.mjs snap localhost:8082          # compact a11y snapshot with element refs
node cli.mjs click localhost:8082 @e4     # click by ref
node cli.mjs fill localhost:8082 @e2 "h****@example.com"

What a Snap Looks Like

A snap is the whole page as a compact text tree with refs you act on, roughly 10x cheaper on tokens than a screenshot:

table "Hacker News new | past | comments | ask | show | jobs | submit" @e1
link "Hacker News" @e5
link "new" @e6
link "submit" @e12
link "login" @e13

Key Features

  • refs survive re-snaps, so the agent re-checks with --diff instead of re-reading the whole page
  • driven tabs get a purple pill that narrates what the agent is doing right now, plus a live command feed in your terminal
  • multiple Chrome profiles are supported, and it refuses to guess which one you meant
  • works with Claude Code, Cursor, Qwen, GLM, Kimi, or a plain script hitting the local HTTP endpoint - no MCP setup

Setup and Licensing

Setup is one paste into your agent plus one click to load the extension (Chrome requires that click). MIT licensed, zero dependencies, Node >= 18.

Repo and full agent manual: https://github.com/siropkin/chrome-bridge

Feedback welcome, especially on token cost of the snapshots against real workloads.

Read on DEV Community ↗ ← Back to News

Comments

No comments yet. Start the discussion.