← 返回 Skills 市场
🔌

BrowserOS CLI

作者 BrowserOS · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
116
总下载
1
收藏
0
当前安装
3
版本数
在 OpenClaw 中安装
/install browseros-agent
功能描述
Use when a task requires interacting with a website beyond just reading it — clicking elements, filling forms, submitting data, navigating through multi-step...
使用说明 (SKILL.md)

Browser Automation with BrowserOS

Control a real Chromium browser via browseros-cli. Run commands via Bash. Use --json for structured output, -p \x3CpageId> to target specific tabs.

When NOT to Use

  • Headless scraping in CI/CD with no display — use Playwright or Puppeteer instead.
  • Static page fetching where curl/wget suffices.

Safety Defaults

  • Default to read-only first: snap, text, links, pages, ss.
  • Avoid eval unless no simpler command works.
  • Save screenshots/PDFs only to user-specified or workspace paths.
  • Close tabs when done: browseros-cli close \x3CpageId>.

Setup

# Check if CLI is available
browseros-cli --version

# If not installed:
npm install -g browseros-cli

# If BrowserOS app is not installed:
browseros-cli install

# If BrowserOS is not running:
browseros-cli launch

# Configure connection:
browseros-cli init --auto

# Verify:
browseros-cli health

Core Workflow: snap → act → re-snap

Every interaction follows this loop:

  1. Open a page → get a page ID.
  2. Snap → get element IDs like [10] textbox "Email", [15] button "Submit".
  3. Act on elements by ID (fill 10 "text", click 15).
  4. Re-snap after ANY click, navigation, or form submit — IDs change after DOM updates.

Critical rules:

  • open \x3Curl> = new tab. nav \x3Curl> = navigate current tab.
  • NEVER reuse element IDs after navigation — always snap again.
  • Use text for content extraction, snap for interaction, ss for visual verification.
browseros-cli open https://example.com/login    # → Page ID: 5
browseros-cli snap -p 5                          # → [10] textbox "Email", [11] textbox "Password", [15] button "Sign In"
browseros-cli fill 10 "[email protected]"
browseros-cli fill 11 "password123"
browseros-cli click 15
browseros-cli snap -p 5                          # Re-snap! IDs have changed after submit
browseros-cli text -p 5                          # Read result page
browseros-cli close 5                            # Clean up

Commands Quick Reference

Category Key Commands
Navigate open \x3Curl>, open --hidden, nav \x3Curl>, back, forward, reload, pages, active, close [id]
Observe snap, snap -e, text, text --selector \x3Ccss>, text --links, text --viewport, links, ss -o \x3Cpath>, ss --full, eval "\x3Cjs>", dom, dom-search "\x3Cq>", wait --text "\x3Ctxt>"
Input click \x3Cid>, click --double, fill \x3Cid> "text", clear \x3Cid>, key Enter, hover \x3Cid>, focus \x3Cid>, check \x3Cid>, uncheck \x3Cid>, select \x3Cid> "val", scroll down [amt], drag \x3Cid> --to \x3Cid>, upload \x3Cid> \x3Cfile>, dialog accept/dismiss
Export pdf \x3Cpath>, download \x3Cid> \x3Cdir>
Resources window list/create/close/activate, bookmark list/search/create/remove/update/move, history recent/search/delete, group list/create/update/ungroup/close

Full flags and options: see references/cli-commands.md or run browseros-cli \x3Ccommand> --help.

Common Patterns

Data extraction

browseros-cli open https://example.com/data
browseros-cli text                         # full page as markdown
browseros-cli text --selector "table"      # scoped to element
browseros-cli text --links                 # include hyperlinks

Multi-tab research

browseros-cli open https://site-a.com      # → Page ID: 1
browseros-cli open https://site-b.com      # → Page ID: 2
browseros-cli text -p 1                    # extract from first
browseros-cli text -p 2                    # extract from second
browseros-cli close 1 && browseros-cli close 2

Web app testing

browseros-cli open http://localhost:3000
browseros-cli snap                         # get interactive elements
browseros-cli ss -o test-state.png         # visual snapshot
browseros-cli eval "document.querySelectorAll('.error').length"

Common Mistakes

Mistake Fix
Using CSS selectors (fill --selector "input[type=email]") Always snap first, then use element IDs (fill 10 "text")
Reusing element IDs after a click or navigation IDs are invalidated by DOM changes — snap again
Using eval to extract text Use text or text --selector instead — lower tokens, structured output
Forgetting to close tabs Always close \x3CpageId> when done to avoid resource leaks
Using nav when you want a new tab nav replaces the current tab. Use open for a new tab
Using open when you want to stay in the same tab open creates a new tab. Use nav to navigate in place
Taking screenshots for content extraction Use text for content — screenshots burn tokens and need vision
Using dialog --accept (flag syntax) Correct syntax is dialog accept or dialog dismiss (positional arg)

Deep-Dive Documentation

Reference Description
references/cli-commands.md Full command reference with all flags

Links

安全使用建议
This SKILL.md is an instruction-only adapter for the browseros-cli tool — it looks coherent for browser automation. Before you install or let an agent use it: 1) Verify the npm package and BrowserOS download sources (follow the provided GitHub/browseros.com links) to ensure you're installing the official binaries. 2) Be aware the CLI can upload local files, download files, run page JS (eval), and read/write browser history/bookmarks — avoid giving the agent secrets or private files to upload. 3) Check for existing ~/.browseros or ~/.config/browseros-cli config files and BROWSEROS_URL/BOS_* env vars; these may contain server URLs or tokens the CLI will use. 4) Prefer running the CLI in a controlled environment (sandbox/container) if the pages you automate or files you handle are sensitive. If you want a stricter audit trail, review the browseros-cli project source on GitHub before installing.
功能分析
Type: OpenClaw Skill Name: browseros-agent Version: 1.0.0 The skill provides a comprehensive interface for browser automation via `browseros-cli`, which includes high-risk capabilities such as accessing browser history and bookmarks, uploading/downloading files to/from the host, and executing arbitrary JavaScript via `eval`. While these features are aligned with the stated purpose and the `SKILL.md` includes safety guidelines, the broad access to sensitive user data and the requirement to install global NPM packages and download external binaries (`browseros-cli install`) represent a significant attack surface. No evidence of intentional malice was found in `SKILL.md` or `references/cli-commands.md`.
能力评估
Purpose & Capability
The name and description (browser automation: clicking, filling forms, screenshots, bookmarks/history) match the CLI commands and examples in SKILL.md and references/cli-commands.md. However, the registry metadata claims no required env vars or config paths while the command reference documents environment variables (BROWSEROS_URL, BOS_JSON, BOS_DEBUG) and auto-detection from local config files (~/.browseros/server.json, ~/.config/browseros-cli/config.yaml). This is a minor inconsistency but explainable: the skill itself does not demand credentials, yet the CLI can use local config or env vars if present.
Instruction Scope
The SKILL.md stays within browser automation scope (open, snap, click, fill, upload, download, history/bookmark commands). It does allow potentially sensitive actions that are normal for a browser CLI: file upload, downloading files to disk, reading/saving screenshots, running page JS via eval, and manipulating browser history/bookmarks. The document warns against eval and recommends read-only first, which helps, but the instructions give the agent broad discretion (e.g., upload <file>, history delete) that could access or modify local data if the operator or agent provides files or config paths.
Install Mechanism
There is no formal install spec in the registry (instruction-only), but SKILL.md instructs installing via npm (npm install -g browseros-cli) and running browseros-cli install which downloads the BrowserOS app. Installing a third-party npm package and downloading a native app are normal for a CLI, but they do introduce the usual risks of fetching and running remote code. The SKILL.md points to plausible project pages (browseros.com, GitHub) rather than obscure URLs, reducing concern but you should verify the package origin before running npm -g.
Credentials
The skill metadata lists no required env vars or primary credential, which aligns with an instruction-only skill. The command reference, however, documents optional env vars (BROWSEROS_URL, BOS_JSON, BOS_DEBUG) and config-file auto-detection paths. Those are reasonable for a CLI, but if present they could cause the CLI to read local configuration or server URLs (and potentially credentials) from disk or environment. In short: the skill itself doesn't demand secrets, but the underlying CLI can use local env/config — verify those before use.
Persistence & Privilege
The skill is not always-enabled and does not request elevated platform persistence. It is user-invocable and allows autonomous invocation (the platform default). It does not attempt to modify other skills or system-wide agent settings in the provided instructions.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install browseros-agent
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /browseros-agent 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release of the browseros-cli skill. - Provides browser automation capabilities using the browseros-cli tool. - Enables real browser interactions such as clicking, typing, form filling, navigation, and screenshots. - Supports management of browser bookmarks, history, and tabs. - Includes safety guidelines, setup instructions, and common usage patterns. - Offers a comprehensive command reference and troubleshooting tips.
v0.3.2
No user-facing changes in this release. - Version bump to 0.3.2 with no updates to documentation or code files.
v0.3.1
No user-visible changes in this version. - No file changes detected between 0.3.0 and 0.3.1. - Documentation and skill behavior remain unchanged.
元数据
Slug browseros-agent
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 3
常见问题

BrowserOS CLI 是什么?

Use when a task requires interacting with a website beyond just reading it — clicking elements, filling forms, submitting data, navigating through multi-step... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 116 次。

如何安装 BrowserOS CLI?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install browseros-agent」即可一键安装,无需额外配置。

BrowserOS CLI 是免费的吗?

是的,BrowserOS CLI 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

BrowserOS CLI 支持哪些平台?

BrowserOS CLI 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 BrowserOS CLI?

由 BrowserOS(@browseros-ai)开发并维护,当前版本 v1.0.0。

💬 留言讨论