Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计异常

lightpanda-browser轻熊猫浏览器

Agent Skill

lightpanda-browser 用于处理浏览器自动化、网页检查和页面信息提取,适合在 Codex、Claude、Cursor、Gemini CLI 中需要让 Agent 打开页面、读取网页或验证前端流程时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

906

周安装

37

GitHub Stars

216

下载量

290
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:lightpanda-browser(轻熊猫浏览器)
来源仓库:https://github.com/mathews-tom/armory
仓库路径:skills/lightpanda-browser
安装命令:
npx skills add https://github.com/mathews-tom/armory --skill lightpanda-browser
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/mathews-tom/armory --skill lightpanda-browser

简介

lightpanda-browser 用于处理浏览器自动化、网页检查和页面信息提取。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中需要打开页面、读取网页或验证前端流程时使用。
  • 通过 npx 安装,需确认权限范围和维护状态,注意可能触发联网和文件读写操作。
  • 建议结合来源仓库和原始 README 核验具体用法,避免直接执行高风险命令。
  • 使用前应评估是否涉及敏感数据访问或生产环境操作,确保最小权限原则。

SKILL.md

Lightpanda Browser — Fast Headless Automation

Headless browser automation using Lightpanda as the backend engine, controlled through the agent-browser CLI via CDP (Chrome DevTools Protocol).

When to use this over agent-browser:

Use LightpandaUse agent-browser (Chromium)
Web scraping / data extractionScreenshots, PDFs, visual testing
Form automation / submissionVideo recording / visual debugging
API response inspectionCSS layout verification
DOM traversal / content parsingMobile device emulation (iOS)
CI environments with limited RAMFull browser extension support
High-volume parallel sessionsSites requiring full rendering

Triggers:

  • "lightpanda", "lightweight browser", "fast headless"
  • "scrape with low memory", "headless scraping"
  • "browser without rendering", "DOM-only browser"
  • "fast browser automation", "efficient scraping"
  • "is lightpanda faster than chromium?", "which headless browser uses less memory?"
  • "how do I scrape without chromium?", "can I run a browser with less RAM?"
  • Any browser task where visual output is not needed

Prerequisites

Install Lightpanda

# macOS (Apple Silicon)
curl -fsSL https://github.com/nichochar/install-lightpanda/raw/main/install.sh | bash

# Or build from source
git clone https://github.com/lightpanda-io/browser.git
cd browser && zig build -Doptimize=ReleaseSafe

Install agent-browser (if not already present)

brew install agent-browser

Verify installation

lightpanda --version
agent-browser --version

Core Workflow

Every session follows this lifecycle:

1. Start Lightpanda daemon (CDP server)
2. Connect agent-browser via --cdp
3. Navigate, snapshot, interact
4. Stop daemon when done

Step 1 — Start Lightpanda

# Start Lightpanda CDP server on port 9222 (background)
lightpanda serve --host 127.0.0.1 --port 9222 &
LIGHTPANDA_PID=$!

# Wait for CDP to be ready
sleep 1

Step 2 — Connect and Automate

# All agent-browser commands work via --cdp flag
agent-browser --cdp 9222 open https://example.com
agent-browser --cdp 9222 snapshot -i
agent-browser --cdp 9222 fill @e1 "search query"
agent-browser --cdp 9222 click @e2
agent-browser --cdp 9222 snapshot -i  # Re-snapshot after navigation

Step 3 — Cleanup

agent-browser --cdp 9222 close
kill $LIGHTPANDA_PID 2>/dev/null

Supported Commands

All commands below are invoked as agent-browser --cdp <port> <command>.

Navigation

agent-browser --cdp 9222 open <url>
agent-browser --cdp 9222 back
agent-browser --cdp 9222 forward
agent-browser --cdp 9222 reload
agent-browser --cdp 9222 close

Snapshot (DOM Analysis)

agent-browser --cdp 9222 snapshot -i         # Interactive elements with refs
agent-browser --cdp 9222 snapshot -i -C      # Include cursor-interactive elements
agent-browser --cdp 9222 snapshot -s "#main"  # Scope to CSS selector
agent-browser --cdp 9222 snapshot -i --json   # JSON output for parsing

Interaction (use @refs from snapshot)

agent-browser --cdp 9222 click @e1
agent-browser --cdp 9222 dblclick @e1
agent-browser --cdp 9222 fill @e2 "text"
agent-browser --cdp 9222 type @e2 "text"
agent-browser --cdp 9222 press Enter
agent-browser --cdp 9222 select @e1 "option"
agent-browser --cdp 9222 check @e1
agent-browser --cdp 9222 hover @e1
agent-browser --cdp 9222 scroll down 500
agent-browser --cdp 9222 drag @e1 @e2
agent-browser --cdp 9222 upload @e1 file.pdf

Get Information

agent-browser --cdp 9222 get text @e1        # Element text
agent-browser --cdp 9222 get html @e1        # innerHTML
agent-browser --cdp 9222 get value @e1       # Input value
agent-browser --cdp 9222 get attr @e1 href   # Attribute
agent-browser --cdp 9222 get title           # Page title
agent-browser --cdp 9222 get url             # Current URL
agent-browser --cdp 9222 get count ".item"   # Count elements

Wait

agent-browser --cdp 9222 wait @e1                     # Wait for element
agent-browser --cdp 9222 wait 2000                    # Wait milliseconds
agent-browser --cdp 9222 wait --text "Success"        # Wait for text
agent-browser --cdp 9222 wait --url "**/dashboard"    # Wait for URL
agent-browser --cdp 9222 wait --load networkidle      # Wait for network idle
agent-browser --cdp 9222 wait --fn "window.ready"     # Wait for JS condition

Cookies and Storage

agent-browser --cdp 9222 cookies
agent-browser --cdp 9222 cookies set name value
agent-browser --cdp 9222 cookies clear
agent-browser --cdp 9222 storage local
agent-browser --cdp 9222 storage local set key value

Network Interception

agent-browser --cdp 9222 network route <url>              # Intercept
agent-browser --cdp 9222 network route <url> --abort      # Block
agent-browser --cdp 9222 network route <url> --body '{}'  # Mock response
agent-browser --cdp 9222 network requests                 # View tracked
agent-browser --cdp 9222 network requests --filter api    # Filter

JavaScript Execution

agent-browser --cdp 9222 eval "document.title"
agent-browser --cdp 9222 eval -b "<base64>"
cat script.js | agent-browser --cdp 9222 eval --stdin

Semantic Locators

agent-browser --cdp 9222 find text "Sign In" click
agent-browser --cdp 9222 find label "Email" fill "user@test.com"
agent-browser --cdp 9222 find role button click --name "Submit"
agent-browser --cdp 9222 find testid "submit-btn" click

Tabs

agent-browser --cdp 9222 tab                 # List tabs
agent-browser --cdp 9222 tab new [url]       # New tab
agent-browser --cdp 9222 tab 2               # Switch tab
agent-browser --cdp 9222 tab close           # Close tab

Frames

agent-browser --cdp 9222 frame "#iframe"     # Enter iframe
agent-browser --cdp 9222 frame main          # Back to main

State Management

agent-browser --cdp 9222 state save auth.json    # Save session state
agent-browser --cdp 9222 state load auth.json    # Restore session state

Unsupported Commands

Lightpanda does not have a rendering engine. These commands will fail or produce empty output:

CommandReasonAlternative
screenshotNo visual renderingUse get text / get html for content
pdfNo CSS layout engineUse get html and convert externally
record start/stopNo visual output to recordUse network request logs
highlightNo visual renderingUse snapshot -i to identify elements
set deviceNo viewport emulationSet user-agent via set headers
set mediaNo CSS media query supportN/A
get stylesNo computed stylesParse raw HTML/CSS
get boxNo layout computationN/A
is visibleNo visibility computationCheck DOM presence instead

Common Patterns

High-Volume Scraping

# Start Lightpanda — uses ~60MB vs ~550MB for Chromium
lightpanda serve --host 127.0.0.1 --port 9222 &
LIGHTPANDA_PID=$!
sleep 1

URLS=("https://site.com/page/1" "https://site.com/page/2" "https://site.com/page/3")
for url in "${URLS[@]}"; do
  agent-browser --cdp 9222 open "$url"
  agent-browser --cdp 9222 wait --load networkidle
  agent-browser --cdp 9222 get text body >> output.txt
  echo "---" >> output.txt
done

kill $LIGHTPANDA_PID 2>/dev/null

Form Automation

lightpanda serve --host 127.0.0.1 --port 9222 &
LIGHTPANDA_PID=$!
sleep 1

agent-browser --cdp 9222 open https://example.com/form
agent-browser --cdp 9222 snapshot -i
agent-browser --cdp 9222 fill @e1 "Jane Doe"
agent-browser --cdp 9222 fill @e2 "jane@example.com"
agent-browser --cdp 9222 select @e3 "California"
agent-browser --cdp 9222 check @e4
agent-browser --cdp 9222 click @e5
agent-browser --cdp 9222 wait --load networkidle
agent-browser --cdp 9222 snapshot -i  # Verify result

kill $LIGHTPANDA_PID 2>/dev/null

Authenticated Session

lightpanda serve --host 127.0.0.1 --port 9222 &
LIGHTPANDA_PID=$!
sleep 1

# Login and save state
agent-browser --cdp 9222 open https://app.example.com/login
agent-browser --cdp 9222 snapshot -i
agent-browser --cdp 9222 fill @e1 "$USERNAME"
agent-browser --cdp 9222 fill @e2 "$PASSWORD"
agent-browser --cdp 9222 click @e3
agent-browser --cdp 9222 wait --url "**/dashboard"
agent-browser --cdp 9222 state save auth.json

# Reuse state later (new session)
agent-browser --cdp 9222 state load auth.json
agent-browser --cdp 9222 open https://app.example.com/dashboard
agent-browser --cdp 9222 snapshot -i

kill $LIGHTPANDA_PID 2>/dev/null

API Response Inspection

lightpanda serve --host 127.0.0.1 --port 9222 &
LIGHTPANDA_PID=$!
sleep 1

# Intercept API calls
agent-browser --cdp 9222 open https://app.example.com
agent-browser --cdp 9222 network requests --filter "/api/"

# Or mock API responses for testing
agent-browser --cdp 9222 network route "**/api/users" --body '{"users": []}'
agent-browser --cdp 9222 open https://app.example.com/users
agent-browser --cdp 9222 snapshot -i

kill $LIGHTPANDA_PID 2>/dev/null

Parallel Sessions on Different Ports

# Launch multiple Lightpanda instances for true parallelism
lightpanda serve --host 127.0.0.1 --port 9222 &
PID1=$!
lightpanda serve --host 127.0.0.1 --port 9223 &
PID2=$!
sleep 1

agent-browser --cdp 9222 open https://site-a.com &
agent-browser --cdp 9223 open https://site-b.com &
wait

agent-browser --cdp 9222 get text body > site-a.txt
agent-browser --cdp 9223 get text body > site-b.txt

kill $PID1 $PID2 2>/dev/null

Environment Variables

LIGHTPANDA_HOST="127.0.0.1"    # Bind address (default: 127.0.0.1)
LIGHTPANDA_PORT="9222"          # CDP port (default: 9222)

Troubleshooting

Lightpanda won't start

# Check if port is in use
lsof -i :9222
# Kill existing process
kill $(lsof -t -i :9222) 2>/dev/null

CDP connection refused

# Verify Lightpanda is listening
curl -s http://127.0.0.1:9222/json/version
# Expected: JSON with browser info

Command fails with "not supported"

Lightpanda is in beta. If a CDP method is not yet implemented:

  1. Check the Lightpanda status page for supported APIs
  2. Fall back to agent-browser (Chromium) for that specific operation
  3. File an issue at https://github.com/lightpanda-io/browser/issues

JavaScript execution errors

Lightpanda uses V8 but not all Web APIs are implemented. If eval fails:

  1. Check if the API is listed in Lightpanda's supported features
  2. Use simpler DOM operations (get text, get html) instead of complex JS

Performance Benchmarks

Reference numbers for choosing between Lightpanda and Chromium. Measured on typical scraping workloads.

MetricLightpandaChromium (Playwright)When It Matters
Memory per page~60MB~550MBParallel sessions, CI runners, constrained environments
Cold start<100ms~2sShort-lived scripts, serverless, high-frequency invocations
DOM-only page load~50ms~300msBulk scraping (difference compounds over hundreds of pages)
Binary size~15MB~300MBDocker images, CI caching, disk-constrained hosts
JS execution (V8)EquivalentEquivalentNo difference — same engine
Full page renderN/A~500msLightpanda cannot render — use Chromium

Decision Thresholds

ScenarioRecommendation
< 10 pages, need screenshotsChromium — overhead is negligible
10-100 pages, text extraction onlyLightpanda — saves 5-50GB RAM
100+ pages, parallel sessionsLightpanda — Chromium hits memory limits
CI with 2GB RAM limitLightpanda — fits 30+ pages vs 3 with Chromium
Visual regression testingChromium — Lightpanda cannot produce images
Form submission + response validationEither — Lightpanda is faster but both work

Calibration Rules

  1. Always start Lightpanda before agent-browser commands. CDP connection fails silently if the daemon is not running — verify with curl -sf http://127.0.0.1:9222/json/version before proceeding.
  2. Re-snapshot after every navigation. Refs (@e1, @e2) are invalidated when the page changes — this is inherited from agent-browser, not Lightpanda-specific.
  3. Prefer get text over eval for content extraction. Lightpanda's Web API surface is incomplete — document.querySelector works but complex APIs (IntersectionObserver, getComputedStyle) do not.
  4. Use separate ports for parallel sessions, not --session. Lightpanda instances are single-threaded — multiple ports give true parallelism, --session multiplexes on one instance.
  5. Fall back to Chromium explicitly, not silently. If a command fails with "not supported", switch to agent-browser (no --cdp flag) for that operation. Do not retry or suppress the error.
  6. Kill the daemon on exit. Use trap cleanup EXIT in scripts to prevent orphaned Lightpanda processes consuming port 9222.
  7. Check Lightpanda release notes before upgrading. Beta software — CDP method coverage changes between versions. Run agent-browser --cdp 9222 snapshot -i on a known page as a smoke test after updates.

Deep-Dive Documentation

ReferenceWhen to Use
references/commands.mdFull command reference with CDP flag usage
references/lightpanda-setup.mdInstallation, configuration, build from source
references/compatibility.mdSupported vs unsupported CDP methods and Web APIs

Ready-to-Use Templates

TemplateDescription
templates/scrape-session.shStart daemon, scrape pages, cleanup
templates/form-submit.shForm fill + submission with validation
templates/parallel-extract.shMulti-port parallel data extraction

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.37%
按下载量换算105

Claude

30.41%
按下载量换算88

Cursor

20.45%
按下载量换算59

Gemini CLI

10.21%
按下载量换算30

安全审计

Gen Agent Trust Hub

未通过

Socket

可疑

Snyk

未通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills