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

agent-browserAgent 浏览器自动化

Agent Skill

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

总安装

329

周安装

14

GitHub Stars

1

下载量

115
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/numberone-ai/machina-meta --skill agent-browser

简介

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

  • 适合让 Agent 打开页面、读取内容或验证前端流程。
  • 通过 npx skills add 命令安装,需结合原始 README 确认具体用法。
  • 安装前建议确认权限范围、维护状态及是否触发联网或文件读写操作。
  • 可结合来源仓库进一步核验功能细节和使用限制。

SKILL.md

agent-browser Skill

CLI-based browser automation using vercel-labs/agent-browser. Provides browser control via Bash commands as an alternative to playwright-mcp.

When to Use agent-browser vs playwright-mcp

Featureplaywright-mcpagent-browser
InvocationMCP tool calls (mcp__playwright__*)Bash commands (npx agent-browser)
Session persistenceNo (fresh context each time)Yes (--session, --session-name)
State save/loadNoYes (state save/load)
Page diffingNoYes (diff snapshot, diff screenshot)
Annotated screenshotsNoYes (screenshot --annotate)
Network interceptionNoYes (network route)
Cookie managementVia browser_run_code JSNative (cookies set)
Multi-tabbrowser_tabs tooltab new, tab <n>
Element refs@ref from snapshot@ref from snapshot (same concept)
Best forQuick interactions, MCP-native workflowsAdvanced workflows, sessions, diffing, state persistence

Default: Use playwright-mcp for standard browser interactions (it's already loaded as an MCP server).

Use agent-browser when you need:

  • Session persistence across commands
  • Page diffing (snapshot or visual)
  • Annotated screenshots with element labels
  • Network interception / mocking
  • Saved authentication state
  • Cookie/storage manipulation
  • CDP connection to existing browser

Nix Environment Setup

This workspace uses Nix for reproducible tooling. The Nix-managed Playwright has Chromium at a different revision than agent-browser's bundled Playwright expects. The project-level agent-browser.json config file at the workspace root handles this automatically by setting executablePath to the Nix store Chromium.

No extra flags needed — just run npx agent-browser commands from the workspace root.

If the Chromium path changes (e.g., after niv update), update agent-browser.json:

{
  "executablePath": "/nix/store/<hash>-playwright-chromium/chrome-linux64/chrome"
}

Find the current path: ls -la /nix/store/*-playwright-browsers/chromium-*

Core Workflow

The basic agent-browser interaction loop:

# 1. Open a page
npx agent-browser open https://example.com

# 2. Get interactive elements (snapshot with refs)
npx agent-browser snapshot -i

# 3. Interact using @refs from snapshot
npx agent-browser click @e3
npx agent-browser fill @e5 "search term"

# 4. Re-snapshot to see updated state
npx agent-browser snapshot -i

# 5. Take screenshot for visual verification
npx agent-browser screenshot

# 6. Close when done
npx agent-browser close

Snapshot Options

npx agent-browser snapshot              # Full accessibility tree
npx agent-browser snapshot -i           # Interactive elements only (recommended)
npx agent-browser snapshot -c           # Compact (remove empty elements)
npx agent-browser snapshot -d 3         # Limit depth to 3 levels
npx agent-browser snapshot -s "#main"   # Scope to CSS selector

Screenshots

npx agent-browser screenshot                        # Viewport screenshot
npx agent-browser screenshot --full                  # Full page
npx agent-browser screenshot --annotate              # With numbered element labels
npx agent-browser screenshot path/to/save.png        # Save to specific path

MachinaMed Authentication

MachinaMed uses Google SSO. You must set JWT cookies before navigating to authenticated pages.

Method 1: State File (Recommended for agent-browser)

# 1. Generate auth cookies
(cd repos/dem2 && ./scripts/user_manager.py user token dbeal@numberone.ai --export-cookie)
# Output: export AUTH_HEADER="Cookie: access_token=eyJhbG...; refresh_token=eyJhbG..."

# 2. Open browser and set cookies before navigating
npx agent-browser open about:blank
npx agent-browser cookies set access_token "eyJhbG..." --domain localhost --path /
npx agent-browser cookies set refresh_token "eyJhbG..." --domain localhost --path /

# 3. Now navigate to authenticated page
npx agent-browser open http://localhost:3000/markers

Method 2: Session Persistence

# First time: set up auth in a named session
npx agent-browser --session-name machina open about:blank
npx agent-browser --session-name machina cookies set access_token "eyJhbG..." --domain localhost --path /
npx agent-browser --session-name machina cookies set refresh_token "eyJhbG..." --domain localhost --path /
npx agent-browser --session-name machina open http://localhost:3000/markers

# Later: reuse the session (cookies persist)
npx agent-browser --session-name machina open http://localhost:3000/markers

Method 3: State Save/Load

# Save authenticated state for reuse
npx agent-browser state save machina-auth.json

# Load it in a new session
npx agent-browser --state machina-auth.json open http://localhost:3000/markers

For Preview/Staging Environments

Replace localhost domain with the target:

npx agent-browser cookies set access_token "eyJhbG..." --domain preview-99.n1-machina.dev --path /
npx agent-browser cookies set refresh_token "eyJhbG..." --domain preview-99.n1-machina.dev --path /
npx agent-browser open https://preview-99.n1-machina.dev/markers

Session Management

# Isolated sessions (separate browser contexts)
npx agent-browser --session my-test open https://example.com
npx agent-browser --session my-test snapshot -i

# List active sessions
npx agent-browser session list

# Auto-persisting sessions (state saved/restored automatically)
npx agent-browser --session-name my-persistent open https://example.com

Page Diffing

Compare page states before and after changes:

Snapshot Diff (DOM/Accessibility Tree)

# Take baseline snapshot, make changes, then diff
npx agent-browser snapshot > baseline.txt
# ... make changes ...
npx agent-browser diff snapshot --baseline baseline.txt

# Scoped diff (only specific section)
npx agent-browser diff snapshot --selector "#main-content" --compact

Visual Diff (Pixel Comparison)

# Save baseline screenshot
npx agent-browser screenshot baseline.png

# After changes, compare
npx agent-browser diff screenshot --baseline baseline.png -o diff-result.png

# With threshold (0-1, default 0.2)
npx agent-browser diff screenshot --baseline baseline.png -t 0.1

URL Comparison

# Compare two URLs side by side
npx agent-browser diff url http://localhost:3000/markers https://preview-99.n1-machina.dev/markers

# Visual comparison
npx agent-browser diff url http://localhost:3000 https://preview-99.n1-machina.dev --screenshot

# Scoped comparison
npx agent-browser diff url <url1> <url2> --selector "#biomarker-list"

Network Interception

# Block requests (e.g., analytics)
npx agent-browser network route "**/analytics/**" --abort

# Mock API responses
npx agent-browser network route "**/api/v1/observations/**" --body '{"items": []}'

# View tracked requests
npx agent-browser network requests
npx agent-browser network requests --filter api

# Remove routes
npx agent-browser network unroute

Common Commands Reference

Navigation

npx agent-browser open <url>           # Navigate to URL
npx agent-browser back                 # Go back
npx agent-browser forward              # Go forward
npx agent-browser reload               # Reload page
npx agent-browser close                # Close browser

Interaction

npx agent-browser click @e1            # Click element by ref
npx agent-browser fill @e2 "text"      # Clear and fill input
npx agent-browser type @e2 "text"      # Type into element
npx agent-browser press Enter          # Press key
npx agent-browser select @e3 "option"  # Select dropdown option
npx agent-browser check @e4            # Check checkbox
npx agent-browser scroll down 500      # Scroll down 500px

Element Inspection

npx agent-browser get text @e1         # Get text content
npx agent-browser get html @e1         # Get innerHTML
npx agent-browser get value @e1        # Get input value
npx agent-browser get title            # Get page title
npx agent-browser get url              # Get current URL
npx agent-browser is visible @e1       # Check visibility

Semantic Locators

npx agent-browser find role button click           # Click first button
npx agent-browser find text "Submit" click         # Click by text
npx agent-browser find label "Email" fill "a@b.c"  # Fill by label
npx agent-browser find testid "login-btn" click    # Click by data-testid

Waiting

npx agent-browser wait "#element"                  # Wait for element
npx agent-browser wait 2000                        # Wait 2 seconds
npx agent-browser wait --text "Loading complete"   # Wait for text
npx agent-browser wait --load networkidle          # Wait for network idle

JavaScript Execution

npx agent-browser eval "document.title"
npx agent-browser eval "window.scrollTo(0, document.body.scrollHeight)"

Tabs

npx agent-browser tab                  # List tabs
npx agent-browser tab new <url>        # Open new tab
npx agent-browser tab 2                # Switch to tab 2
npx agent-browser tab close            # Close current tab

Cookies & Storage

npx agent-browser cookies                          # Get all cookies
npx agent-browser cookies set <name> <value>       # Set cookie
npx agent-browser cookies clear                    # Clear cookies
npx agent-browser storage local                    # Get localStorage
npx agent-browser storage local set <key> <value>  # Set localStorage

State Management

npx agent-browser state save <path>    # Save auth/session state
npx agent-browser state load <path>    # Load saved state
npx agent-browser state list           # List saved states
npx agent-browser state clear --all    # Clear all states

Debugging

npx agent-browser console              # View console messages
npx agent-browser errors               # View page errors
npx agent-browser highlight @e1        # Highlight element
npx agent-browser trace start          # Start recording trace
npx agent-browser trace stop           # Stop and save trace

Global Flags

--session <name>          # Isolated browser session
--session-name <name>     # Auto-persisting session
--state <path>            # Load storage state JSON
--headed                  # Show browser window (visible)
--json                    # JSON output format
--full, -f                # Full page screenshot
--annotate                # Annotated screenshot
--debug                   # Debug output
--config <path>           # Config file path

Environment Variables

VariablePurpose
AGENT_BROWSER_SESSIONSession name
AGENT_BROWSER_SESSION_NAMEAuto-save/restore session
AGENT_BROWSER_STATEStorage state JSON file
AGENT_BROWSER_PROFILEPersistent profile path
AGENT_BROWSER_DEFAULT_TIMEOUTOperation timeout (ms)

Related Skills

  • machina-ui: Required authentication setup for MachinaMed pages. Load machina-ui first to get JWT cookies, then use agent-browser for browser automation.
  • playwright-mcp: Default MCP-based browser automation. Use for standard interactions.
  • machina-docker: Development stack management (start/stop services before browser testing).

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

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

平台分布

Codex

36.35%
按下载量换算42

Claude

28.21%
按下载量换算32

Cursor

21.26%
按下载量换算24

Gemini CLI

9.46%
按下载量换算11

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

未通过

权限和风险

操作浏览器

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

安装前确认

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

来源信息

继续浏览同类 Skills