Browser automation with Puppeteer CLI scripts. Use for screenshots, performance analysis, network monitoring, web scraping, form automation, or encountering JavaScript debugging, browser automation errors.
View on GitHubFebruary 1, 2026
Select agents to install to:
npx add-skill https://github.com/secondsky/claude-skills/blob/main/plugins/chrome-devtools/skills/chrome-devtools/SKILL.md -a claude-code --skill chrome-devtoolsInstallation paths:
.claude/skills/chrome-devtools/# Chrome DevTools Agent Skill
Browser automation via executable Puppeteer scripts. All scripts output JSON for easy parsing.
## Quick Start
**CRITICAL**: Always check `pwd` before running scripts.
### Installation
#### Step 1: Install System Dependencies (Linux/WSL only)
On Linux/WSL, Chrome requires system libraries. Install them first:
```bash
pwd # Should show current working directory
cd .claude/skills/chrome-devtools/scripts
./install-deps.sh # Auto-detects OS and installs required libs
```
Supports: Ubuntu, Debian, Fedora, RHEL, CentOS, Arch, Manjaro
**macOS/Windows**: Skip this step (dependencies bundled with Chrome)
#### Step 2: Install Node Dependencies
```bash
# Preferred: Using bun (faster)
bun install # Installs puppeteer, debug, yargs
# Alternative: Using npm
npm install
```
#### Step 3: Install ImageMagick (Optional, Recommended)
ImageMagick enables automatic screenshot compression to keep files under 5MB:
**macOS:**
```bash
brew install imagemagick
```
**Ubuntu/Debian/WSL:**
```bash
sudo apt-get install imagemagick
```
**Verify:**
```bash
magick -version # or: convert -version
```
Without ImageMagick, screenshots >5MB will not be compressed (may fail to load in Gemini/Claude).
### Test
```bash
bun navigate.js --url https://example.com
# Output: {"success": true, "url": "https://example.com", "title": "Example Domain"}
```
## Available Scripts
All scripts are in `.claude/skills/chrome-devtools/scripts/`
**CRITICAL**: Always check `pwd` before running scripts.
### Script Usage
- `./scripts/README.md`
### Core Automation
- `navigate.js` - Navigate to URLs
- `screenshot.js` - Capture screenshots (full page or element)
- `click.js` - Click elements
- `fill.js` - Fill form fields
- `evaluate.js` - Execute JavaScript in page context
### Analysis & Monitoring
- `snapshot.js` - Extract interactive elements with metadata
- `console.js` - Monitor console messages/errors
- `network.js` - Track HTTP requests/responses
- `performance.js