Agent skill

Chrome Automation

by appleweiping in appleweiping/WEIPING_WIKI

Connect to and control Google Chrome browser using agent-browser with CDP (Chrome DevTools Protocol).

MITAuto-check: warningsProductivity & Automation

Install Chrome Automation

The automated check flagged lines worth reading first. See the safety section below.

skills CLI
$ npx skills add appleweiping/WEIPING_WIKI --skill chrome-automation -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install appleweiping/WEIPING_WIKI chrome-automation --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/appleweiping/WEIPING_WIKI.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skill/chrome-automation .claude/skills/chrome-automation && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
chrome-automation
GitHub stars
119
Used in
1 other repo
Token cost
~5.3k tokens
SKILL.md length
1,248 words
Files
13 (incl. scripts, references)
Skills in repo
51
Repo updated
First seen
Licence
MIT

At a glance

Connect to and control Google Chrome browser using agent-browser with CDP (Chrome DevTools Protocol).

  • Works in 5 steps: Check if agent-browser binary exists and… → Install missing dependencies… → Clone repository if not present → …
  • The user wants to automate their existing Chrome browser
  • SKILL.md covers âš ï¸^O CRITICAL: Automatic…, Quick Start, Core Workflow and Installation & Setup, plus 7 more sections
  • Runs Shell and PowerShell scripts from its folder; calls bash, npm and cargo; reaches win.rustup.rs and github.com

What it does

Chrome Automation is an agent skill from appleweiping/WEIPING_WIKI. Connect to and control Google Chrome browser using agent-browser with CDP (Chrome DevTools Protocol). Use when the user wants to automate their existing Chrome browser, see browser actions in real-time, or needs to control the Chrome instance they're already using. Handles installation, setup, connecting via remote debugging, and all browser automation tasks with live visual feedback.

Its SKILL.md is about 5.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 14 other files, including scripts and reference files (for example `references/commands.md`, `references/setup-mac.md` and `references/setup-windows.md`).

It sits in Productivity & Automation, covering Browser automation. It works with Chrome DevTools, Rust and pnpm. The repository describes itself as: knowledge base managed with an LLM workflow. The licence is MIT.

When your agent uses it

  • The user wants to automate their existing Chrome browser
  • See browser actions in real-time
  • Needs to control the Chrome instance theyre already using

Example prompts

  • “/chrome-automation”

Requirements

  • Node.js
  • A Bash shell
  • PowerShell
  • Pre-approved tools (allowed-tools): Bash(*)

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Check if agent-browser binary exists and works
  2. Install missing dependencies automatically (pnpm, Rust, etc.)
  3. Clone repository if not present
  4. Build native binary with proper Rust toolchain
  5. Verify installation success

What it can do on your machine

Read from SKILL.md and the folder at commit 76fdc42. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash(*)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 8 files in scripts/ (Shell and PowerShell), which the agent can run.

    Shell commands in SKILL.md call:

    • bash
    • npm
    • cargo
    • git
    • pnpm
    • npx
    • node
    • curl
    • sh
    • osascript

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • win.rustup.rs
    • github.com
    • sh.rustup.rs
    • google.com

    Also links to:

    • nodejs.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Chrome Automation loads about 5.3k tokens when it runs, and up to ~15k if it reads all its reference files. Until then it costs about 101 tokens; SKILL.md has 1,248 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~101
When it runs · the whole SKILL.md, loaded when a task matches
~5.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~15k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: warnings

The automated check found patterns that need a careful read before installing.

  • WarningMentions a credentials file (SSH keys, cloud or package-manager tokens)SKILL.md:91
    2. First run: Imports your existing Chrome configuration (login states, cookies, settings)
  • NotePipes a well-known installer script into a shellSKILL.md:199
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
  • WarningMentions a credentials file (SSH keys, cloud or package-manager tokens)SKILL.md:374
    - Imports your existing Chrome configuration (login states, cookies, bookmarks)
  • NotePipes a well-known installer script into a shellSKILL.md:556
    # 1. Install Rust: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash(*)

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from appleweiping/WEIPING_WIKI at commit 76fdc42, republished under its MIT licence (© appleweiping). 1,248 words, ~5,346 tokens.

Download SKILL.mdSave it as .claude/skills/chrome-automation/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.
name
chrome-automation
description
Connect to and control Google Chrome browser using agent-browser with CDP (Chrome DevTools Protocol). Use when the user wants to automate their existing Chrome browser, see browser actions in real-time, or needs to control the Chrome instance they're already using. Handles installation, setup, connecting via remote debugging, and all browser automation tasks with live visual feedback.
allowed-tools
Bash(*)

Chrome Browser Automation with Real-time Control

Control the user's Google Chrome browser using agent-browser connected via Chrome DevTools Protocol (CDP). All actions are visible in real-time in the user's browser window.

⚠️ CRITICAL: Automatic Installation & Dependency Check

BEFORE using this skill, ALWAYS run the auto-installation check:

This skill automatically checks and installs all required dependencies without user confirmation. The installation process verifies:

  • agent-browser repository and binary
  • Node.js and pnpm
  • Playwright Chromium
  • Rust toolchain (cargo)
  • Native binary compilation

Auto-installation workflow:

bash
# Mac: Run auto-install script
bash ~/.claude/skills/chrome-automation/scripts/auto-install-mac.sh

# Windows: Run auto-install script (PowerShell)
powershell -ExecutionPolicy Bypass -File "$HOME\.claude\skills\chrome-automation\scripts\auto-install-windows.ps1"

The script will:

  1. Check if agent-browser binary exists and works
  2. Install missing dependencies automatically (pnpm, Rust, etc.)
  3. Clone repository if not present
  4. Build native binary with proper Rust toolchain
  5. Verify installation success

Critical rules:

  • �?DO NOT fall back to using built-in browser tools (browser_use_desktop)
  • �?MUST run auto-install script before any browser automation
  • �?Only proceed with browser automation AFTER successful installation
  • �?Script handles all dependency checks automatically

Why agent-browser is required:

  • Provides real-time visual feedback in user's actual Chrome browser
  • Allows user to see and interact with automation in progress
  • Offers precise element selection and interaction capabilities
  • Built-in browser tools are NOT a substitute for this skill's functionality

Quick Start

First-time setup (automatic)

Run the auto-install script first:

bash
# Mac
bash ~/.claude/skills/chrome-automation/scripts/auto-install-mac.sh

# Windows (PowerShell)
powershell -ExecutionPolicy Bypass -File "$HOME\.claude\skills\chrome-automation\scripts\auto-install-windows.ps1"

The script automatically handles:

  • Repository cloning
  • Dependency installation (pnpm, Playwright)
  • Rust toolchain setup
  • Native binary compilation
Connect and control Chrome

IMPORTANT: Use the start-chrome script to preserve login states across sessions

bash
# Mac: Start Chrome with persistent profile (RECOMMENDED)
# This preserves your login states, cookies, and settings
bash ~/.claude/skills/chrome-automation/scripts/start-chrome-mac.sh

# Windows: Start Chrome with persistent profile (PowerShell)
powershell -ExecutionPolicy Bypass -File "$HOME\.claude\skills\chrome-automation\scripts\start-chrome-windows.ps1"

# Use agent-browser with --cdp flag
cd /Users/jyxc-dz-0100272/Documents/agent-browser
AGENT_BROWSER_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser \
./bin/agent-browser --cdp 9222 snapshot -i

What the start-chrome script does:

  1. First run: Creates a dedicated automation profile at ~/Library/Application Support/Google/Chrome-Automation
  2. First run: Imports your existing Chrome configuration (login states, cookies, settings)
  3. Subsequent runs: Uses the existing automation profile - all your logins are preserved
  4. You only need to log in once - it will be remembered for future sessions

Core Workflow

CRITICAL: Always show browser state to user after each significant action using screenshots.

  1. Connect: Ensure Chrome running with remote debugging port 9222
  2. Navigate: Open pages using --cdp 9222 flag
  3. Snapshot: Get interactive elements with snapshot -i
  4. Interact: Use element refs (@e1, @e2, etc.)
  5. Screenshot: Capture state and show to user
  6. Report: Describe what's visible in browser
Standard operation pattern
bash
# Set path variables
export AB_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser
cd $AB_HOME

# Navigate
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 open https://example.com
sleep 2

# Get interactive elements
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 snapshot -i

# Screenshot to show user
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 screenshot /tmp/state.png

# Interact
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 fill @e1 "text"
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 press Enter

# Capture result
sleep 2
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 screenshot /tmp/result.png

Installation & Setup

Always use the auto-install script - it handles all dependencies automatically:

Mac Installation
bash
# Run auto-install script
bash ~/.claude/skills/chrome-automation/scripts/auto-install-mac.sh

What it does:

  1. Checks if agent-browser binary exists and works
  2. Clones repository if missing
  3. Installs Node.js dependencies (pnpm)
  4. Installs Playwright Chromium
  5. Checks/installs Rust toolchain (cargo, rustup)
  6. Sets up stable Rust toolchain if needed
  7. Builds native binary with npm run build:native
  8. Verifies installation success

Requirements:

  • Node.js (will notify if missing)
  • Git (for cloning repository)
  • Internet connection
Windows Installation
powershell
# Run auto-install script (PowerShell)
powershell -ExecutionPolicy Bypass -File "$HOME\.claude\skills\chrome-automation\scripts\auto-install-windows.ps1"

What it does:

  1. Checks if agent-browser binary exists and works
  2. Clones repository if missing
  3. Installs Node.js dependencies (pnpm)
  4. Installs Playwright Chromium
  5. Downloads and installs Rust toolchain if needed
  6. Sets up stable Rust toolchain
  7. Builds native binary with npm run build:native
  8. Verifies installation success

Requirements:

  • Node.js (will notify if missing - download from https://nodejs.org/)
  • Git (for cloning repository)
  • Internet connection
Manual Installation (Advanced Users Only)

If you prefer manual installation or need to troubleshoot:

Mac Manual Steps
bash
# 1. Clone repository
cd ~/Documents
git clone https://github.com/vercel-labs/agent-browser.git
cd agent-browser

# 2. Install Node dependencies
pnpm install
npx playwright install chromium

# 3. Install Rust (if not installed)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
export PATH="$HOME/.cargo/bin:$PATH"
rustup default stable

# 4. Build native binary
npm run build:native
Windows Manual Steps
powershell
# 1. Clone repository
Set-Location "$HOME\Documents"
git clone https://github.com/vercel-labs/agent-browser.git
Set-Location agent-browser

# 2. Install Node dependencies
pnpm install
npx playwright install chromium

# 3. Install Rust (if not installed)
# Download from: https://win.rustup.rs/x86_64
# Or use the auto-install script

# 4. Build native binary
npm run build:native
Verify Installation

After installation (automatic or manual), verify it works:

bash
# Mac
cd ~/Documents/agent-browser
AGENT_BROWSER_HOME=~/Documents/agent-browser ./bin/agent-browser --version

# Windows (PowerShell)
Set-Location "$HOME\Documents\agent-browser"
$env:AGENT_BROWSER_HOME = "$HOME\Documents\agent-browser"
.\bin\agent-browser.cmd --version
Troubleshooting Installation

"No binary found for darwin-arm64" or "No binary found for win32-x64":

  • Rust is not installed or not in PATH
  • Run the auto-install script, it will handle Rust installation
  • Or manually install Rust and run npm run build:native

"cargo: command not found":

  • Rust toolchain not in PATH
  • Mac: export PATH="$HOME/.cargo/bin:$PATH"
  • Windows: $env:PATH = "$HOME\.cargo\bin;$env:PATH"
  • Then run rustup default stable and npm run build:native

"rustup could not choose a version":

  • Default toolchain not set
  • Run: rustup default stable
  • Then rebuild: npm run build:native
Common Rust Installation Issues

Issue 1: Permission denied when installing Rust (Mac)

When running the Rust installer, you may encounter:

error: could not amend shell profile: '/Users/username/.bash_profile':
could not write rcfile file: Permission denied (os error 13)

Solution: This error is usually harmless - Rust binaries are still installed successfully to ~/.cargo/bin/. The error only affects automatic PATH configuration in shell profiles.

Fix steps:

bash
# Mac: Set default toolchain manually
/Users/username/.cargo/bin/rustup default stable

# This will download and install:
# - cargo, clippy, rust-docs, rust-std, rustc, rustfmt

Issue 2: Rust installed but cargo not found (Mac)

After Rust installation, running cargo fails with "command not found".

Root cause:

  • Rust binaries are in ~/.cargo/bin/ but not in current shell's PATH
  • Default toolchain not configured

Solution:

bash
# Use full path to set default toolchain
~/.cargo/bin/rustup default stable

# Then build with full path
cd ~/Documents/agent-browser/cli
~/.cargo/bin/cargo build --release

# Or add to PATH for current session
export PATH="$HOME/.cargo/bin:$PATH"
cargo build --release

Issue 3: Rust installation permission errors (Windows)

On Windows, Rust installer may fail with access denied errors.

Solution:

powershell
# Run PowerShell as Administrator, then:
# Download and run Rust installer
Invoke-WebRequest -Uri "https://win.rustup.rs/x86_64" -OutFile "$env:TEMP\rustup-init.exe"
& "$env:TEMP\rustup-init.exe" -y

# Set default toolchain
& "$env:USERPROFILE\.cargo\bin\rustup.exe" default stable

# Add to PATH for current session
$env:PATH = "$env:USERPROFILE\.cargo\bin;$env:PATH"

Issue 4: Build fails even after Rust installation

Symptoms:

  • npm run build:native fails
  • "cargo: command not found" in build output

Solution:

bash
# Mac: Build with explicit cargo path
cd ~/Documents/agent-browser/cli
~/.cargo/bin/cargo build --release

# Then copy binary manually
cd ~/Documents/agent-browser
node scripts/copy-native.js

# Windows: Build with explicit cargo path
Set-Location "$HOME\Documents\agent-browser\cli"
& "$env:USERPROFILE\.cargo\bin\cargo.exe" build --release

# Then copy binary manually
Set-Location "$HOME\Documents\agent-browser"
node scripts/copy-native.js

Key Takeaway: Even if Rust installation shows permission errors, the binaries are usually installed successfully. The main issue is:

  1. Default toolchain not configured �?Run rustup default stable with full path
  2. PATH not updated �?Use full paths to cargo/rustup, or manually add ~/.cargo/bin to PATH

For detailed troubleshooting, see:

  • references/setup-mac.md
  • references/setup-windows.md
  • references/troubleshooting.md
Show full SKILL.md (457 more words)Show less

Chrome Connection

Use the start-chrome script to preserve login states across sessions:

bash
# Mac: Start Chrome with persistent profile
bash ~/.claude/skills/chrome-automation/scripts/start-chrome-mac.sh

# Windows (PowerShell):
powershell -ExecutionPolicy Bypass -File "$HOME\.claude\skills\chrome-automation\scripts\start-chrome-windows.ps1"

First time setup (automatic):

  • Creates dedicated profile at ~/Library/Application Support/Google/Chrome-Automation (Mac)
  • Or %USERPROFILE%\AppData\Local\Google\Chrome-Automation (Windows)
  • Imports your existing Chrome configuration (login states, cookies, bookmarks)
  • Excludes large cache files to save space

Subsequent runs:

  • Uses the existing automation profile
  • All your logins are preserved
  • No need to log in again
bash
# Verify connection after starting Chrome
cd /Users/jyxc-dz-0100272/Documents/agent-browser
AGENT_BROWSER_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser \
./bin/agent-browser --cdp 9222 get url
Method 2: Connect to existing Chrome
bash
# Check if Chrome already running with debug port
ps aux | grep "remote-debugging-port=9222"

# If yes, connect directly
cd /Users/jyxc-dz-0100272/Documents/agent-browser
AGENT_BROWSER_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser \
./bin/agent-browser --cdp 9222 get url

If you need to start Chrome manually without the script:

bash
# Mac: Start with persistent profile directory
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \
  --remote-debugging-port=9222 \
  --user-data-dir="$HOME/Library/Application Support/Google/Chrome-Automation" &

# Windows (PowerShell):
Start-Process "chrome.exe" -ArgumentList @(
    "--remote-debugging-port=9222",
    "--user-data-dir=`"$HOME\AppData\Local\Google\Chrome-Automation`""
)

Note: Using --user-data-dir=/tmp/chrome-debug (temporary directory) will NOT preserve login states.

Usage Patterns

bash
cd /Users/jyxc-dz-0100272/Documents/agent-browser
export AB_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser

# Open search site
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 open xiaohongshu.com
sleep 2

# Get elements
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 snapshot -i
# Output: textbox "搜索小红�? [ref=e2]

# Fill and search
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 fill @e2 "labubu"
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 press Enter

# Capture result
sleep 2
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 screenshot ~/Desktop/result.png
Pattern 2: Form Automation
bash
cd /Users/jyxc-dz-0100272/Documents/agent-browser
export AB_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser

# Navigate
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 open https://example.com/form

# Get form fields
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 snapshot -i

# Fill form
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 fill @e1 "John Doe"
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 fill @e2 "john@example.com"
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 click @e3

# Verify
sleep 2
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 screenshot ~/Desktop/submitted.png
Pattern 3: Handle Security Verification

When sites show security verification (QR codes, captchas):

bash
# Take screenshot
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 screenshot ~/Desktop/verification.png

# Show user and inform them
echo "Site requires verification - please complete in browser window"

# User completes verification manually

# Check URL after verification
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 get url

# Continue workflow
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 snapshot -i

Real-time Feedback Protocol

MANDATORY: Provide visual feedback after every significant action

After navigation, clicks, or form submissions:

  1. Take screenshot
  2. Get current URL
  3. Read screenshot and describe to user
bash
# After any action
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 screenshot ~/Desktop/current.png
AGENT_BROWSER_HOME=$AB_HOME ./bin/agent-browser --cdp 9222 get url

# Then use Read tool on screenshot
# Describe what's visible to user

Command Reference

All commands use this format:

bash
cd /Users/jyxc-dz-0100272/Documents/agent-browser
AGENT_BROWSER_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser \
./bin/agent-browser --cdp 9222 <command>
Essential Commands

Navigation:

  • open <url> - Navigate to URL
  • back - Go back
  • reload - Reload page
  • get url - Get current URL

Page Analysis:

  • snapshot -i - Get interactive elements (RECOMMENDED)
  • get title - Get page title

Interaction:

  • click @e1 - Click element
  • fill @e1 "text" - Fill input
  • press Enter - Press key
  • scroll down 500 - Scroll

Capture:

  • screenshot path.png - Screenshot
  • get text @e1 - Get element text

JavaScript:

  • eval "code" - Execute JavaScript

For complete command reference, see the agent-browser skill at: /Users/jyxc-dz-0100272/Documents/agent-browser/skills/agent-browser/SKILL.md

Troubleshooting

Installation Issues

"No binary found for darwin-arm64/win32-x64":

bash
# Mac: Run auto-install script - it handles Rust installation
bash ~/.claude/skills/chrome-automation/scripts/auto-install-mac.sh

# Windows: Run auto-install script
powershell -ExecutionPolicy Bypass -File "$HOME\.claude\skills\chrome-automation\scripts\auto-install-windows.ps1"

# Or manually:
# Mac:
# 1. Install Rust: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
# 2. Set toolchain: ~/.cargo/bin/rustup default stable
# 3. Build: cd ~/Documents/agent-browser/cli && ~/.cargo/bin/cargo build --release
# 4. Copy: cd ~/Documents/agent-browser && node scripts/copy-native.js

# Windows:
# 1. Download Rust: https://win.rustup.rs/x86_64
# 2. Set toolchain: & "$env:USERPROFILE\.cargo\bin\rustup.exe" default stable
# 3. Build: cd "$HOME\Documents\agent-browser\cli"; & "$env:USERPROFILE\.cargo\bin\cargo.exe" build --release
# 4. Copy: cd "$HOME\Documents\agent-browser"; node scripts/copy-native.js

"cargo: command not found":

bash
# Mac: Use full path to cargo
~/.cargo/bin/rustup default stable
cd ~/Documents/agent-browser/cli
~/.cargo/bin/cargo build --release

# Windows: Use full path to cargo
& "$env:USERPROFILE\.cargo\bin\rustup.exe" default stable
Set-Location "$HOME\Documents\agent-browser\cli"
& "$env:USERPROFILE\.cargo\bin\cargo.exe" build --release

"rustup could not choose a version":

bash
# Mac: Set default Rust toolchain with full path
~/.cargo/bin/rustup default stable

# Windows: Set default Rust toolchain with full path
& "$env:USERPROFILE\.cargo\bin\rustup.exe" default stable

Rust installation shows permission errors but completes:

bash
# Mac: This is usually harmless - binaries are installed
# Just set default toolchain manually:
~/.cargo/bin/rustup default stable

# Windows: Run installer as Administrator if needed
# Then set default toolchain:
& "$env:USERPROFILE\.cargo\bin\rustup.exe" default stable
Runtime Issues

"Daemon not found" error:

bash
# Must set AGENT_BROWSER_HOME and run from project directory
cd /Users/jyxc-dz-0100272/Documents/agent-browser
AGENT_BROWSER_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser \
./bin/agent-browser --cdp 9222 <command>
"No page found" error
bash
# Chrome needs at least one page open
osascript -e 'tell application "Google Chrome" to open location "https://google.com"'
sleep 2

# Then retry
AGENT_BROWSER_HOME=/Users/jyxc-dz-0100272/Documents/agent-browser \
./bin/agent-browser --cdp 9222 snapshot -i
Connection refused
bash
# Check if Chrome running with debug port
ps aux | grep "remote-debugging-port=9222"

# If not, start it with persistent profile
bash ~/.claude/skills/chrome-automation/scripts/start-chrome-mac.sh

Best Practices

  1. Auto-install first - ALWAYS run the auto-install script before first use
  2. Use start-chrome script - Use start-chrome-mac.sh or start-chrome-windows.ps1 to preserve login states
  3. Check dependencies - Script automatically verifies all required tools (Node.js, Rust, pnpm)
  4. Never use fallback tools - Do NOT use browser_use_desktop or other built-in browser tools when this skill is requested
  5. Rebuild if needed - If binary errors occur, re-run auto-install script
  6. Never use detached mode - Do NOT use terminal detached mode when starting Chrome
  7. Always screenshot - Show user what's happening
  8. Wait after navigation - Use sleep 2 after page loads
  9. Check URL - Verify navigation succeeded
  10. Handle security - Inform user, wait for manual completion
  11. Re-snapshot - Get fresh refs after DOM changes
  12. Descriptive paths - Save screenshots with clear names
  13. Report state - Describe browser content to user

Profile Management

Reset automation profile

If you want to reset the automation profile and re-import from your main Chrome:

bash
# Mac: Remove automation profile and restart
rm -rf ~/Library/Application\ Support/Google/Chrome-Automation
bash ~/.claude/skills/chrome-automation/scripts/start-chrome-mac.sh

# Windows (PowerShell): Remove automation profile and restart
Remove-Item -Recurse -Force "$HOME\AppData\Local\Google\Chrome-Automation"
powershell -ExecutionPolicy Bypass -File "$HOME\.claude\skills\chrome-automation\scripts\start-chrome-windows.ps1"
Profile locations
PlatformAutomation Profile Location
Mac~/Library/Application Support/Google/Chrome-Automation
Windows%USERPROFILE%\AppData\Local\Google\Chrome-Automation

This profile is separate from your daily Chrome, so automation activities won't affect your main browser.

© appleweiping, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 12 other files (scripts, references) in skill/chrome-automation of appleweiping/WEIPING_WIKI.

  • SKILL.md
  • references/commands.md
  • references/setup-mac.md
  • references/setup-windows.md
  • references/troubleshooting.md
  • scripts/README.md
  • scripts/auto-install-mac.sh
  • scripts/auto-install-windows.ps1
  • scripts/connect_chrome.sh
  • scripts/install-scripts.md
  • scripts/setup.sh
  • scripts/start-chrome-mac.sh
  • scripts/start-chrome-windows.ps1

Open the folder on GitHubat commit 76fdc42

Used in 1 other repository

We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in appleweiping/WEIPING_WIKI, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Chrome Automation next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Chrome Automation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Chrome Automation this skillappleweiping/WEIPING_WIKI1191 repos~5.3kAutomated safety check: WarnMIT
OpenWork Electron Browser Automationdifferent-ai/openwork24k—~780Automated safety check: PassCustom licence
Electron App Automationvercel-labs/agent-browser44k5 repos~1.7kAutomated safety check: PassApache-2.0
Chrome CDP Browser Controlzenstory-ai/oh-story-claudecode7.4k2 repos~1.2kAutomated safety check: PassMIT
Cloudflare Browser Renderingcloudflare/moltworker10k—~742Automated safety check: PassApache-2.0
AI Search Hubminsight-ai-info/AI-Search-Hub1.3k—~1.3kAutomated safety check: PassNone

Similar skills

  • Attaches OpenCode browser tools to the OpenWork Electron dev app through CDP to explore its UI, send a composer task and debug, not to give test verdicts.

    24k GitHub stars~780 tokensUpdated today
    Testing & QAAuto-check passed
  • Electron App Automation

    vercel-labs/agent-browser

    Official

    Automates Electron desktop apps such as VS Code, Slack or Discord by connecting agent-browser to their Chrome DevTools Protocol port.

    44k GitHub starsUsed in 5 repos~1.7k tokens
    Productivity & AutomationAuto-check passed
  • Chrome CDP Browser Control

    zenstory-ai/oh-story-claudecode

    Drives a Chrome window over the DevTools Protocol with the agent-browser CLI, so the agent can reuse your logged-in sessions, read pages and pull tokens.

    7.4k GitHub starsUsed in 2 repos~1.2k tokens
    Productivity & AutomationAuto-check passed
  • Cloudflare Browser Rendering

    cloudflare/moltworker

    Official

    Drives headless Chrome through Cloudflare Browser Rendering over a CDP WebSocket to take screenshots, navigate and scrape pages, and record multi-page videos.

    10k GitHub stars~742 tokensUpdated 5 mo ago
    Productivity & AutomationAuto-check passed
  • AI Search Hub

    minsight-ai-info/AI-Search-Hub

    Run the AI Search Hub browser automation scripts for Yuanbao, LongCat, Doubao, Qwen, Gemini, Grok, and MiniMax.

    1.3k GitHub stars~1.3k tokensUpdated 5 mo ago
    Productivity & AutomationAuto-check passed
  • Superset Browser Control

    superset-sh/superset

    Opens pages, takes screenshots, reads the console, clicks and types in the browser panes of a Superset workspace, with Browser Use as a fallback for other browsers.

    15k GitHub stars~2.9k tokensUpdated today
    Productivity & AutomationAuto-check passed

More from appleweiping/WEIPING_WIKI

All 51 skills in this repo
  • Communication Assistant

    appleweiping/WEIPING_WIKI

    Unified lazy-mode communication assistant for Vipin across WhatsApp, WeChat, QQ, Feishu/Lark, and email.

    119 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Content Refinement Agent

    appleweiping/WEIPING_WIKI

    Step 5 of the PaperOrchestra pipeline (arXiv:2604.05018). An agent skill from appleweiping/WEIPING_WIKI.

    119 GitHub stars~3k tokensUpdated 1 mo ago
    Auto-check passed
  • Email Assistant

    appleweiping/WEIPING_WIKI

    Personal Gmail and Google Workspace email assistant for Vipin.

    119 GitHub stars~1.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Wechat Video Channel Publish

    appleweiping/WEIPING_WIKI

    A skill your agent uses when the user wants to log into 微信视频号, validate cookie state, upload videos, set scheduled publish time, fill long description, set a cover image, or save drafts through a…

    119 GitHub stars~765 tokensUpdated 1 mo ago
    Auto-check passed
  • Feishu Bridge

    appleweiping/WEIPING_WIKI

    Route Feishu/Lark content access for Codex. An agent skill from appleweiping/WEIPING_WIKI.

    119 GitHub stars~906 tokensUpdated 1 mo ago
    Auto-check passed
  • Lark Event

    appleweiping/WEIPING_WIKI

    Lark/Feishu real-time event listening / subscribing / consuming: stream events as NDJSON via lark-cli event consume <EventKey (covers IM message receive, reactions, chat member changes, etc.).

    119 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed

Questions about Chrome Automation

What does Chrome Automation do?

Connect to and control Google Chrome browser using agent-browser with CDP (Chrome DevTools Protocol). Chrome Automation is an agent skill from appleweiping/WEIPING_WIKI. Connect to and control Google Chrome browser using agent-browser with CDP (Chrome DevTools Protocol).

When should I use Chrome Automation?

Chrome Automation fits situations like: the user wants to automate their existing Chrome browser; see browser actions in real-time; needs to control the Chrome instance theyre already using.

How do I install Chrome Automation in Claude Code?

Run `npx skills add appleweiping/WEIPING_WIKI --skill chrome-automation -a claude-code`. Or copy the skill folder (skill/chrome-automation in appleweiping/WEIPING_WIKI) into .claude/skills/chrome-automation in your project. Claude Code loads it when a task matches its description.

How do I install Chrome Automation in Codex?

Run `npx skills add appleweiping/WEIPING_WIKI --skill chrome-automation -a codex`. Or copy the skill folder (skill/chrome-automation in appleweiping/WEIPING_WIKI) into .agents/skills/chrome-automation in your project. Codex loads it when a task matches its description.

Can I use Chrome Automation in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add appleweiping/WEIPING_WIKI --skill chrome-automation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/chrome-automation, .gemini/skills/chrome-automation, .github/skills/chrome-automation and .opencode/skills/chrome-automation in your project.

What does Chrome Automation need to run?

Going by SKILL.md and its folder, Chrome Automation needs a shell and PowerShell for the scripts in its folder and the command-line tools its instructions call (bash, npm, cargo, git, pnpm and npx). Our summary lists: Node.js; A Bash shell; PowerShell. Its frontmatter pre-approves these tools: Bash(*).

Does Chrome Automation access the network?

SKILL.md names 5 domains. In commands or code: win.rustup.rs, github.com, sh.rustup.rs and google.com; the agent is likely to contact these when it follows the instructions. As links in the text: nodejs.org. This is read from the text; nothing was executed.

Is Chrome Automation safe to install?

Our automated static check of SKILL.md flagged 2 warning(s): mentions a credentials file (ssh keys, cloud or package-manager tokens). Read the flagged lines before installing; the check is not a guarantee either way. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Chrome Automation use?

Chrome Automation is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Chrome Automation use?

About 5.3k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 9.6k tokens, read only when the agent opens those files.

What are the alternatives to Chrome Automation?

Skills that share tags, products or a category with Chrome Automation: OpenWork Electron Browser Automation (different-ai/openwork, 24k stars), Electron App Automation (vercel-labs/agent-browser, 44k stars), Chrome CDP Browser Control (zenstory-ai/oh-story-claudecode, 7.4k stars) and Cloudflare Browser Rendering (cloudflare/moltworker, 10k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Chrome Automation?

appleweiping (a GitHub user) maintains it in appleweiping/WEIPING_WIKI, which has 119 GitHub stars. The repository holds 51 skills in this directory. The repository was last updated on August 26, 2026.

Source: appleweiping/WEIPING_WIKI on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.