From browser-fetch-router
Read pages already open in the user's real browser via Chrome DevTools Protocol — approval-gated, with default-deny redaction of sensitive sessions. Use when the user references "the page I have open", "what I'm looking at", or a logged-in resource whose session cookies you need. Do NOT use for arbitrary public URLs (use read-web) or for clicking/submitting (use interactive-browser).
How this skill is triggered — by the user, by Claude, or both
Slash command
/browser-fetch-router:read-user-tabsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Thin adapter for `browser-fetch-router read-user-tabs`. CDP lifecycle, approvals, and default-deny redaction live in the CLI — never reimplement here.
Thin adapter for browser-fetch-router read-user-tabs. CDP lifecycle, approvals, and default-deny redaction live in the CLI — never reimplement here.
BFR_AGENT=<agent-name> (e.g. claude, codex, gemini, kimi, opencode, pi)BFR_SESSION_ID=<uuid-or-ulid> — one per task, reused across all CLI calls in that task.BFR_CDP_URL=<endpoint> — only if a non-default Chrome DevTools endpoint is in use.# List currently open tabs (default-deny entries are redacted before they reach you)
BFR_AGENT=<agent-name> BFR_SESSION_ID="$session_id" \
browser-fetch-router read-user-tabs list --json
# Read a specific tab by URL or tab id
BFR_AGENT=<agent-name> BFR_SESSION_ID="$session_id" \
browser-fetch-router read-user-tabs read <url-or-tab-id> --json
Optional flags:
list: --all, --show-all (include redacted entries), --allow-remote-cdp, --approval-scope SCOPE, --persist-approval.read: --max-chars N, --approval-scope SCOPE, --persist-approval, --allow-remote-cdp.--persist-approval and --approval-scope control how broadly an approval is remembered — only set them when the user has explicitly granted scope wider than the current call.
If a CLI call fails with exit code 3 (tool_setup_failed) or 70 (internal_error), run browser-fetch-router doctor --json for setup/health diagnostics. CDP-specific failures often surface here (browser not running, wrong BFR_CDP_URL, etc.).
| Code | Meaning |
|---|---|
| 0 | ok |
| 1 | content blocked / not found / paywalled / insufficient |
| 2 | approval_required or approval_denied |
| 3 | tool_setup_failed |
| 4 | unsafe_url_blocked |
| 5 | cost_cap_exceeded or rate_limited |
| 64 | usage_error |
| 70 | internal_error |
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub seungpyoson/browser-fetch-router --plugin browser-fetch-router