Claude-skill-registry chrome-dev-protocol
Lightweight Chromium DevTools automation via the bundled browser-tools.ts CLI (Puppeteer connect). Use when you need to launch a Chromium-based browser with a remote-debugging port, navigate pages, run JS in the active tab, capture screenshots, inspect DevTools sessions, or extract readable content without a full browser automation server.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/chrome-dev-protocol" ~/.claude/skills/majiayu000-claude-skill-registry-chrome-dev-protocol && rm -rf "$T"
manifest:
skills/data/chrome-dev-protocol/SKILL.mdsource content
Chromium DevTools Helpers
Overview
Use the bundled TypeScript CLI to drive Chromium through the Chrome DevTools Protocol. Prefer this when quick, local, single-purpose browser actions are needed and a full browser automation server is overkill.
Quick Start
Run from the skill directory so relative paths resolve:
cd /Users/douglas/.claude/skills/chrome-dev-protocol # 1) Launch Chromium with remote debugging enabled npx tsx scripts/browser-tools.ts start --port 9222 # 2) Navigate the active tab npx tsx scripts/browser-tools.ts nav https://example.com --port 9222 # 3) Run JS in the active tab npx tsx scripts/browser-tools.ts eval 'document.title' --port 9222 # 4) Capture a viewport screenshot (prints temp path) npx tsx scripts/browser-tools.ts screenshot --port 9222
Core Commands
: Launch Chromium with a DevTools port.start- Defaults to
./Applications/Chromium.app/Contents/MacOS/Chromium - Use
for a custom Chromium binary (inferred name used for logs).--chromium-path <path> - Use
to copy a specific Chromium profile (e.g.,--profile <name>
,Default
) and passProfile 2
to skip the profile switcher.--profile-directory - Fresh tabs are enabled by default; pass
to keep restored tabs.--no-fresh-tabs
- Defaults to
: Navigate the current tab; usenav <url>
to force a new tab. If no normal page tab exists yet, it opens a new tab first. Falls back to a new tab if current-tab navigation fails in Chromium. Use--new
if the page is slow.--timeout <seconds>
: Evaluate JavaScript in the active tab. Useeval <code...>
for structured output.--pretty-print
: Capture the current viewport; prints the temp PNG path.screenshot
: Interactive DOM picker to collect metadata about clicked elements.pick <message...>
: Stream or snapshot console logs. Useconsole
to tail.--follow
: Google search with optional readable content extraction (search <query...>
).--content
: Extract readable text content from a URL.content <url>
: Dump cookies from the active tab as JSON.cookies
: List DevTools-enabled Chromium processes and open tabs.inspect
: Terminate DevTools-enabled Chromium processes.kill
Chromium Notes
- The default profile copy uses
on macOS.~/Library/Application Support/Chromium/ - If the script cannot find a running tab, open one in Chromium before running
,nav
,eval
, etc.screenshot
Resources
scripts/
: CLI for Chromium DevTools automation (adapted from steipete/agent-scripts).scripts/browser-tools.ts