返回 Skill 列表
extension
分类: AI Agent 能力无需 API Key

browser-daemon

通过FGP守护进程实现快速浏览器自动化 - 比Playwright MCP快3-12倍。当用户需要浏览网页、截屏、点击元素、填写表单、抓取内容或获取ARIA可访问性快照时使用。触发条件包括“打开URL”、“截屏”、“点击按钮”、“填写表单”、“获取页面内容”、“抓取网站”、“自动化浏览器”。

person作者: jakexiaohubgithub

FGP Browser Daemon

Ultra-fast browser automation using Chrome DevTools Protocol directly. 3-12x faster than Playwright MCP for navigation, 50x faster for ARIA snapshots.

Why FGP?

| Operation | FGP Daemon | Playwright MCP | Speedup | |-----------|------------|----------------|---------| | Navigate | 2-8ms | 27ms | 3-12x | | ARIA Snapshot | 0.7-9ms | 2-3ms | 3x | | Screenshot | 25-30ms | 50-80ms | 2x |

FGP daemons are persistent UNIX socket servers - no cold start, no process spawn overhead.

Installation

# Install via Homebrew (macOS/Linux)
brew install fast-gateway-protocol/tap/fgp-browser

# Or build from source
git clone https://github.com/fast-gateway-protocol/browser
cd browser && cargo build --release

The install script handles daemon setup:

bash ~/.claude/skills/fgp-browser/scripts/install.sh

Usage

Once installed, the daemon runs in the background. Call it via the fgp CLI:

# Navigate to URL
fgp browser open "https://example.com"

# Get ARIA accessibility tree (for understanding page structure)
fgp browser snapshot

# Take screenshot
fgp browser screenshot /tmp/page.png

# Click element
fgp browser click "button[type=submit]"

# Fill input field
fgp browser fill "input#email" "user@example.com"

# Press key
fgp browser press Enter

# Select dropdown option
fgp browser select "select#country" "United States"

Available Commands

| Command | Description | Example | |---------|-------------|---------| | open <url> | Navigate to URL | fgp browser open "https://google.com" | | snapshot | Get ARIA tree | fgp browser snapshot | | screenshot <path> | Capture PNG | fgp browser screenshot /tmp/shot.png | | click <selector> | Click element | fgp browser click "#submit" | | fill <selector> <text> | Fill input | fgp browser fill "input" "hello" | | press <key> | Press key | fgp browser press Enter | | select <selector> <value> | Select option | fgp browser select "select" "opt1" | | hover <selector> | Hover element | fgp browser hover ".menu" | | scroll [direction] | Scroll page | fgp browser scroll down |

Multi-Session Support

Create isolated browser sessions for parallel work:

# Create new session
fgp browser session new --name "shopping"

# Use specific session
fgp browser --session shopping open "https://amazon.com"

# List sessions
fgp browser session list

# Close session
fgp browser session close shopping

Daemon Management

# Check daemon status
fgp browser health

# View available methods
fgp browser methods

# Stop daemon
fgp browser stop

# Restart daemon
fgp browser start

Example Workflow

# 1. Open a page
fgp browser open "https://github.com/login"

# 2. Get page structure
fgp browser snapshot

# 3. Fill login form
fgp browser fill "input#login_field" "username"
fgp browser fill "input#password" "password"

# 4. Submit
fgp browser click "input[type=submit]"

# 5. Screenshot result
fgp browser screenshot /tmp/github-logged-in.png

Troubleshooting

Chrome not found

Error: Chrome executable not found

Install Chrome or set CHROME_PATH environment variable.

Daemon not running

Error: Connection refused

Start the daemon: fgp browser start

Permission denied on socket

Error: Permission denied

Check socket permissions: ls -la ~/.fgp/services/browser/daemon.sock

Architecture

FGP Browser uses:

  • Chrome DevTools Protocol for browser control (not Playwright)
  • UNIX sockets for IPC (sub-millisecond latency)
  • Persistent daemon (no cold start)
  • NDJSON protocol (simple, debuggable)

Socket location: ~/.fgp/services/browser/daemon.sock