browser-tools

Control Chrome/Chromium instances via the DevTools protocol with six scripts.

3|2|Updated Nov 12, 2025
One-click install
npx skills add https://github.com/Whamp/whamp-claude-tools --skill browser-tools-whamp
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: browser-tools
Source: https://github.com/Whamp/whamp-claude-tools/tree/main/browser-tools-plugin/skills/browser-tools
Command: npx skills add https://github.com/Whamp/whamp-claude-tools --skill browser-tools-whamp

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires puppeteer-core, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides a lightweight set of scripts to control a running Chrome/Chromium instance via the DevTools protocol, enabling automated, repeatable browser interactions without heavy dependencies.

Core Features & Use Cases

  • Session management: Start or attach to a Chrome session and reuse it across actions.
  • Navigation and capture: Navigate to URLs, inspect elements, and take screenshots.
  • JSON-first output: Consistent machine-readable results for automation pipelines.

Quick Start

  • Start a session: node scripts/start.js
  • Navigate to a URL: node scripts/navigate.js https://example.com
  • Take a full-page screenshot: node scripts/screenshot.js --format=png
  • Resolve an element: node scripts/element.js ".my-selector"

Frequently Asked Questions about browser-tools

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate browser interactions without heavy dependencies?

Browser automation can be controlled via the DevTools protocol using puppeteer-core, a lightweight alternative to full Puppeteer. This Skill provides scripts to launch Chrome, navigate URLs, capture screenshots, inspect elements, and manage sessions across local and remote targets with JSON-structured output for automation pipelines.

Can I reuse a Chrome session across multiple automation scripts?

Yes. Session management lets you start a Chrome instance once and attach subsequent scripts to the same session via WebSocket or port connection. This eliminates overhead and enables repeatable, chained browser interactions without relaunching the browser.

How do I extract element data and take screenshots programmatically?

Use the element selection and screenshot scripts to query the DOM by CSS selector and capture full-page or viewport images in PNG or JPEG format. Results return as JSON with element properties and screenshot paths, ready for downstream processing or storage.

Does this work with remote Chrome instances or only local?

It supports both local and remote Chrome targets via the DevTools protocol. Connect by specifying port, host, and WebSocket URL, enabling automation against headless instances on remote servers or containerized environments.

What's the difference between this and full Puppeteer?

This Skill uses puppeteer-core, which omits the bundled Chromium download, reducing package size and dependencies. You control your own Chrome binary and connection method, trading convenience for lightweight, modular browser automation.

Can I execute custom JavaScript in the browser context during automation?

Yes. The evaluate script runs arbitrary JavaScript within the loaded page and returns results as JSON. This enables dynamic data extraction, DOM manipulation, or condition checking as part of your automation workflow.