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.