Local only
- The companion binds to
127.0.0.1. There is no cloud component, no telemetry and no account. - The extension talks only to that port and only after presenting the pairing token.
- Messages from the extension to the companion are validated; malformed frames are rejected and the socket closed.
Access is opt-in per tab
The agent reaches exactly the tabs you share, plus tabs it opened itself in your window.chrome:// pages, extension pages and the Web Store are never automatable. Emergency stop revokes everything at once.
What the agent can see in a shared tab
Everything the page can: DOM, cookies for the page origin, local and session storage, network requests and their bodies while adevtools_session is running, and JavaScript evaluation in the page. Treat a shared tab as fully visible to the agent. Do not share tabs you would not paste into the chat.
Restricting what the agent does
- Disable tools you do not want used.
- Domain policies limit where a tab, or every tab the agent opens, may navigate and load resources from.
- Set the developer browser to Never if the agent should not get a second browser.
- The activity log is off by default and keeps nothing; on, it holds the last 200 commands in memory only, never on disk. See Activity.
Secrets
- The pairing token is in
~/.browspark/tokenwith mode0600and in the extension’s local storage. It appears in the HTTP endpoint URL and live-view URLs; treat those like passwords. - Recorder exports and HAR files can contain form values, cookies and headers. They are written to
~/.browspark/artifactsor the path you give. - Developer-context profiles under
~/.browspark/hold logins like any Chrome profile.
The debugger permission
Chrome grants the extension thedebugger permission at install time. The extension attaches only to shared tabs, only when a command arrives, and detaches after 30 seconds of inactivity. The yellow bar Chrome shows is the honest signal that a tab is attached.