What You Can Do with DevSnoop
Your coding agent controls a real Chrome browser — inspect pages, fill forms, catch errors, and verify changes. Just describe what you want.
DevSnoop ships with a SKILL.md file that teaches your agent every command. You write prompts, the agent handles the rest.
Multiple Chrome profiles
Keep every browser context distinct
Open the DevSnoop popup in each Chrome profile and give it a label such as Normal or SeatPlanMaker PostHog. Your agent can list the connected profiles, select one, and work only with the tabs and logged-in sites in that profile.
# See every connected Chrome profile
curl -s -X POST http://127.0.0.1:9400/ \
-H 'Content-Type: application/json' \
-d '{"command":"list_connections","params":{}}'
# Choose the default profile for later commands
curl -s -X POST http://127.0.0.1:9400/ \
-H 'Content-Type: application/json' \
-d '{"command":"select_connection","params":{"connectionID":"native-123-example"}}' Labels are optional. With one Chrome profile, DevSnoop works as before. Each installation also has a stable local profile ID, so agents can distinguish profiles even when you do not add a label. Add a top-level connectionID to target one request without changing the selected profile.
Agent loop recipe
Inspect, act, verify, then edit
Use this when the agent is about to change frontend code. The point is to collect browser evidence from the local Chrome tab before opening files.
- 1 Start with
page_summaryso the agent sees current text, controls, regions, selectors, and tab context. - 2 Reproduce the user path with
click,fill,scroll, orhover. - 3 Read
get_networkandget_logs. Include redacted bodies only when payloads matter. - 4 Run
diffafter the action or hot reload so the agent checks what the page did, not just what the code says. - 5 Use
screenshotwhen visual state matters: layout, clipping, contrast, modal position, or review evidence. - 6 Then edit. If the evidence points to a request, fix request code. If it points to state or rendering, fix the feature.
Workflows
Tell your agent what you need. It picks the right commands automatically.
Inspect a page you're building
The agent finds the tab, reads the page structure, and checks for console errors — all in one go.
Test a form interaction
The agent finds inputs by label, fills them, clicks submit, and reports back any errors.
Verify visual changes after code edits
The agent snapshots the page before your change, waits for hot-reload, then diffs to show exactly what shifted.
Debug a failing API call
The agent watches network requests and console output, filters for errors, and can include redacted request or response bodies when payloads matter.
Collect a debug bundle before editing
The agent reads the page, reproduces the bug, checks network failures and console logs, diffs the DOM, then captures a screenshot only when visual state matters.
Grab a screenshot for review
The agent captures any tab — even background ones — and saves it locally for you or itself to review.
Good to Know
- - Your agent gets structured data back — no raw HTML, minimal tokens.
- - The agent uses
page_summaryas its starting point — it returns selectors the agent passes directly to other commands. - - Console logs and network requests are captured automatically when the agent starts debugging. Logs buffer up to 200 entries. Network bodies are opt-in and redacted by default.
- - First time on a site? Click the DevSnoop extension icon to grant access. One-time per origin.
Base Request
Every command is a POST to the same endpoint. Use tabID to target a specific tab, or omit it for the active tab.
curl -s -X POST http://127.0.0.1:9400/ \
-H 'Content-Type: application/json' \
-d '{"command":"<command>","params":{...},"tabID":<optional>}'