browser-tools

Automate Chrome browser interactions via Chrome DevTools Protocol and Puppeteer.

2|Updated Mar 29, 2015
One-click install
npx skills add https://github.com/ovisan/dotfiles --skill browser-tools-ovisan
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: browser-tools
Source: https://github.com/ovisan/dotfiles/tree/main/.agents/skills/browser-tools
Command: npx skills add https://github.com/ovisan/dotfiles --skill browser-tools-ovisan

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires puppeteer-core, puppeteer, puppeteer-extra, puppeteer-extra-plugin-stealth, @mozilla/readability, jsdom, turndown, turndown-plugin-gfm, cheerio.

What problem does it solve? Manually testing web pages, debugging frontend behavior, and scraping JavaScript-rendered content is slow and error-prone. This Skill gives an AI agent direct control over a real Chrome browser so it can navigate pages, execute JavaScript, inspect the DOM, and extract content programmatically. ## Core Features & Use Cases - Browser Automation via CDP: Launch Chrome with remote debugging on port 9222, navigate tabs, evaluate arbitrary JavaScript, and capture screenshots using Puppeteer. - Interactive Element Picking: Let users visually click DOM elements in the browser to obtain CSS selectors, supporting multi-select with Cmd/Ctrl+Click. - Content Extraction & Debugging: Convert web pages to clean Markdown using Mozilla Readability and Turndown, inspect cookies for session debugging, and scrape Hacker News with Cheerio. - Use Case: A developer testing a frontend asks the agent to open the staging site, click through a checkout flow, read the resulting page state, and screenshot the result to verify the UI. ## Quick Start Ask the agent to start the browser and navigate to a URL, for example: open example.com in Chrome and tell me the page title.

Frequently Asked Questions about browser-tools

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

FAQPage Schema
How do I automate Chrome with Puppeteer and the DevTools Protocol?

Launch Chrome with the --remote-debugging-port=9222 flag, then connect using puppeteer-core's browserURL option pointing at http://localhost:9222. From there you can navigate pages, evaluate JavaScript, take screenshots, and read cookies.

How do I extract readable article content from a web page as Markdown?

Load the page in a real browser, grab the rendered HTML via the CDP DOM.getOuterHTML call, then parse it with Mozilla Readability and convert the result with Turndown. This handles JavaScript-rendered pages that plain HTTP fetches miss.

Can I reuse my existing Chrome login sessions for automation?

Yes. The start script supports a --profile flag that rsyncs your default Chrome profile into a separate data directory, preserving cookies and logins while excluding session lock files so a second instance can run.

Why does the script fail to connect to the browser?

Connection fails when Chrome is not running with remote debugging enabled on port 9222. Run the browser-start script first, which launches Chrome with the correct flags and waits until the debugging endpoint responds.

When should I use DOM evaluation instead of screenshots?

Prefer direct DOM evaluation with document.querySelectorAll and innerHTML when you need structured page state, since it is faster and machine-readable. Use screenshots only when visual verification of layout or rendering is required.