Chrome extension that gives AI agents access to the user’s real browser — with existing cookies, sessions, and authentication. No bot detection, no Playwright sandboxes.
Playwright runs in an isolated browser with no cookies or login state. Many sites detect and block automated browsers. The browser extension bridges to the user’s real Chromium instance, so agents can:
Navigate and interact with authenticated pages
Use existing OAuth sessions (GitHub, Google, etc.)
Bypass bot detection and CAPTCHAs
Take screenshots of real page state
BrowserExtTool (src/tools/browser-ext/)
BrowserBridgeService (WebSocket)
↓ ws://localhost:3005/ws/browser-bridge
├─ Service Worker — WebSocket client, command dispatch
├─ Content Script — element highlighting
└─ Popup — settings, connect/disconnect
Commands are sent as JSON over WebSocket with a unique ID. The extension executes the command and returns the result with the same ID.
sudo apt install chromium-browser
Open chromium://extensions
Enable Developer mode (toggle, top right)
Click Load unpacked
Select the browser-extension/ directory
Click the extension icon in the toolbar
Enter the backend URL: ws://localhost:3005
Enter your API key (master key from .env)
Click Connect
The badge shows ON when connected, OFF when disconnected.
Alternatively, run the setup wizard (bun run setup) which can install the extension automatically.
Command Description Permission navigateNavigate active tab to a URL ASK new_tabOpen a new browser tab ASK close_tabClose a tab by ID ASK select_tabSwitch focus to a tab by ID ASK get_tabsList all open tabs ALLOW
Command Description Permission screenshotCapture visible tab as base64 PNG ALLOW extract_contentExtract text, links, forms from page ALLOW
Command Description Permission clickClick element by CSS selector (supports double-click) ASK fillFill input field with value ASK selectSelect option in a <select> element ASK hoverHover over an element ASK press_keyPress a keyboard key (Enter, Tab, Escape, etc.) ASK scrollScroll the page or an element by pixel offset ASK dragDrag an element from one position to another ASK
Command Description Permission wait_forWait for an element or condition to appear ALLOW highlightVisually highlight an element on the page ALLOW
Command Description Permission evaluateExecute JavaScript in page context ASK (dangerous) get_cookies / set_cookiesRead/write cookies for a domain ASK (dangerous) get_storage / set_storageRead/write localStorage or sessionStorage ASK (dangerous)
Command Description Permission get_consoleRetrieve captured console log entries ALLOW get_networkRetrieve captured network request/response log ASK handle_dialogAccept or dismiss browser dialogs (alert, confirm, prompt) ASK
The browser-ext tool is available to these roles:
Role Why research Browse authenticated sources qa Test real browser behavior security Assess authenticated endpoints ai Interact with AI platforms general Fallback access
WebSocket authenticated via master key
evaluate, get_cookies, set_cookies, get_storage, set_storage, and get_network are marked as dangerous and require explicit permission approval
Navigation and interaction commands require ASK-level approval
Screenshots, content extraction, and console capture default to ALLOW
v2.0.0 requires the tabs and cookies browser permissions