Skip to content
Back to skills

Browser 2

CSecurity

Control a Chromium browser via CDP. Use when automating web browsing, scraping pages, testing web apps, monitoring network traffic, or interacting with page elements.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 27, 2026
developmentjavascriptgojavabashtestingdebugginggitapi

Works with

  • cli
  • api

Security analysis

C71/100
  • criticalPipes output to a shell interpreter
  • mediumUses curl or wget to download content
  • criticalDownloads and executes remote scripts — classic supply chain attack

Pro scans all 2 files and shows the line behind each finding

Scanned September 27, 2026

npx -y skills add David-Li0406/meta-skill-evloving --skill browser-2 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Browser 2?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Browser 2
[![Security: C — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-browser-2/badge)](https://www.skillsdirectory.com/skills/david-li0406-browser-2)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: browser
description: Control a Chromium browser via CDP. Use when automating web browsing, scraping pages, testing web apps, monitoring network traffic, or interacting with page elements.
compatibility: Requires Chromium/Chrome installed and the browser CLI in PATH.
metadata:
  author: browser-cli
  version: "1.0"
---

# Browser CLI Skill

Control a Chromium browser via CDP. Install: https://github.com/camhahu/browser

```bash
curl -fsSL https://raw.githubusercontent.com/camhahu/browser/main/packages/cli/install.sh | bash
```

## Core Loop

```bash
browser open https://example.com  # Starts headless browser, shows outline

browser click l3                  # 1. Click by label from outline
browser text ".product-list"      # 3. Read content

browser stop                      # Always stop when finished
```

**Prefer `text` over screenshots.** Text is faster and more reliable. Use screenshots only when visual layout matters.

## Commands

```bash
# Navigation
browser open <url>                # Open URL (auto-starts headless browser if needed)
browser navigate <url>            # Navigate current tab
browser back / forward / refresh  # History navigation
browser stop                      # Close browser

# Interaction
browser click <selector>          # Click by label, text, or CSS
browser type <text> [selector]    # Type into input (special keys: Enter, Escape, Tab)
browser hover <selector>          # Move mouse to element
browser drag <source> <target>    # Drag element to another element
browser select <selector> <value> # Select dropdown option
browser scroll <target>           # Scroll to top, bottom, or selector

# Content
browser outline                   # Show outline again (or use -a for full structure)
browser text [selector]           # Extract text content
browser screenshot [name]         # Capture screenshot (use when layout matters)

# Tabs
browser tabs                      # List all open tabs
browser use <tab-id>              # Switch to tab
browser close [tab-id]            # Close tab

# Debugging
browser console                   # Show console output
browser network                   # List network requests
browser eval <js>                 # Run JavaScript (shares scope between calls)
```

Navigation commands (`open`, `click`, `navigate`, `back`, `forward`, `refresh`) show an outline after completing.

For debugging or user intervention, start a headed browser with `browser start --headed`.

Run `browser --help` for full command list.

## Outline

Outline shows interactive elements with labels:

```
[l1] link "Products" [href=/products]
[l2] link "About" [href=/about]
[b3] button "Sign up"
[i4] input [type=email] [placeholder="Email"]
```

## Selectors

```bash
browser click l3                 # Label from outline (fastest)
browser click "Sign up"          # Text match (exact first, then partial)
browser click ".btn-primary"     # CSS selector
```

CSS selectors: `#id`, `.class`, `tag`, `[attr=value]`, `parent > child`

## Persistent Profile

Logins, cookies, and browsing data are preserved across sessions in `~/.browser/profile/`.

```bash
browser config clear-profile              # Logout, reset cookies
browser config set persistentProfile false # Disable persistence
```

Files in this skill

  • PATH.json47 B
  • SKILL.md3.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…