browser-tools

Automate Chrome browser control and content extraction via the Chrome DevTools Protocol.

2.3k|207|Updated Dec 12, 2025
One-click install
npx skills add https://github.com/badlogic/pi-skills --skill browser-tools-badlogic
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: browser-tools
Source: https://github.com/badlogic/pi-skills/tree/main/browser-tools
Command: npx skills add https://github.com/badlogic/pi-skills --skill browser-tools-badlogic

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires puppeteer-core, @mozilla/readability, jsdom, turndown, turndown-plugin-gfm, cheerio, and includes scripts (resource) components.

What problem does it solve?

This Skill enables automated browser control and content extraction using the Chrome DevTools Protocol.

Core Features & Use Cases

  • Deterministic browser automation: start a Chrome session with remote debugging and control it programmatically for testing, QA, and interactive explorations.
  • Interactive tooling: navigate to URLs, evaluate JavaScript in the active tab, take screenshots, inspect cookies, and extract readable content from pages.
  • Use Case: imagine automating front-end checks on a dynamic site, gathering a page's content as Markdown and capturing snapshots for reports.

Quick Start

Start by installing dependencies and launching Chrome with remote debugging, then run the included browser-start.js script to establish a controlled session and begin issuing commands like browser-nav.js or browser-eval.js.

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 tasks using the Chrome DevTools Protocol for QA testing?

Automate browser tasks by establishing a controlled Chrome session with remote debugging enabled. You can programmatically drive browser actions for QA automation, navigate URLs, evaluate JavaScript, and take screenshots to test dynamic websites.

Can I extract readable content from dynamic web pages and convert it to Markdown?

Yes, you can extract readable content from dynamic web pages and convert it to Markdown. The skill uses @mozilla/readability, jsdom, and turndown to process rendered DOM content and output clean Markdown formatted text.

Do I need a local Chrome installation to use puppeteer-core for web scraping?

Yes, puppeteer-core requires an existing Chrome installation to connect. You must launch Chrome with remote debugging enabled and use the included browser-start.js script to establish the connection before running web scraping or automation commands.

What is the best way to inspect cookies and evaluate JavaScript in an active browser tab?

The best way to inspect cookies and evaluate JavaScript is by connecting to a Chrome remote debugging session. Using puppeteer-core, the skill executes scripts like browser-eval.js to interact with the active tab and retrieve page data programmatically.

Can I use cheerio alongside puppeteer-core for content extraction on dynamic sites?

Yes, you can use cheerio alongside puppeteer-core. The skill utilizes puppeteer-core to render dynamic content and execute browser actions, then employs cheerio to parse the resulting HTML structure for targeted web scraping and data collection.