mcpField
B
browser

browser

github.com/ruvnetAgent 工作流80.1k674 次安装今天更新
代码仓库

关于 browser

browser 是基于 agent-browser 和精简 AI 快照的浏览器自动化技能,面向需要浏览网页、操作元素、提取信息和管理隔离会话的 Agent。

主要功能

  1. 01浏览并控制网页
  2. 02查看完整或筛选后的无障碍快照
  3. 03通过元素引用和定位器交互
  4. 04读取文本、属性和输入值
  5. 05管理隔离的浏览器会话

适用场景

  1. 01自动完成登录和表单提交
  2. 02提取网页中的产品信息
  3. 03用独立会话并行执行浏览任务

MCP 相关

该技能将浏览器操作作为 MCP 工具提供,使用 `browser/` 前缀,包括页面导航、快照、点击、填写和截图。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/ruvnet/ruflo --skill browser

安装后在 Claude Code 中输入/browser确认已加载。

详细介绍

浏览器自动化技能

使用 agent-browser 和针对 AI 优化的快照进行网页浏览器自动化。使用元素引用(@e1、@e2)代替完整 DOM,可减少 93% 的上下文占用。

核心工作流

# 1. Navigate to page
agent-browser open <url>

# 2. Get accessibility tree with element refs
agent-browser snapshot -i    # -i = interactive elements only

# 3. Interact using refs from snapshot
agent-browser click @e2
agent-browser fill @e3 "text"

# 4. Re-snapshot after page changes
agent-browser snapshot -i

快速参考

导航
命令说明
open <url>导航到 URL
back返回上一页
forward前进到下一页
reload重新加载页面
close关闭浏览器
快照(针对 AI 优化)
命令说明
snapshot完整的无障碍树
snapshot -i仅显示可交互元素(按钮、链接、输入框)
snapshot -c紧凑模式(移除空元素)
snapshot -d 3将深度限制为 3 层
screenshot [path]截取屏幕截图(未指定路径时返回 base64)
交互
命令说明
click <sel>点击元素
fill <sel> <text>清空输入框并填入文本
type <sel> <text>使用按键事件输入文本
press <key>按下按键(Enter、Tab 等)
hover <sel>将鼠标悬停在元素上
select <sel> <val>选择下拉选项
check/uncheck <sel>切换复选框状态
scroll <dir> [px]滚动页面
获取信息
命令说明
get text <sel>获取文本内容
get html <sel>获取 innerHTML
get value <sel>获取输入框的值
get attr <sel> <attr>获取属性
get title获取页面标题
get url获取当前 URL
等待
命令说明
wait <selector>等待元素出现
wait <ms>等待指定毫秒数
wait --text "text"等待指定文本出现
wait --url "pattern"等待 URL 匹配
wait --load networkidle等待页面达到加载状态
会话
命令说明
--session <name>使用独立会话
session list列出活动会话

选择器

元素引用(推荐)
# Get refs from snapshot
agent-browser snapshot -i
# Output: button "Submit" [ref=e2]

# Use ref to interact
agent-browser click @e2
CSS 选择器
agent-browser click "#submit"
agent-browser fill ".email-input" "[email protected]"
语义定位器
agent-browser find role button click --name "Submit"
agent-browser find label "Email" fill "[email protected]"
agent-browser find testid "login-btn" click

示例

登录流程
agent-browser open https://example.com/login
agent-browser snapshot -i
agent-browser fill @e2 "[email protected]"
agent-browser fill @e3 "password123"
agent-browser click @e4
agent-browser wait --url "**/dashboard"
表单提交
agent-browser open https://example.com/contact
agent-browser snapshot -i
agent-browser fill @e1 "John Doe"
agent-browser fill @e2 "[email protected]"
agent-browser fill @e3 "Hello, this is my message"
agent-browser click @e4
agent-browser wait --text "Thank you"
数据提取
agent-browser open https://example.com/products
agent-browser snapshot -i
# Iterate through product refs
agent-browser get text @e1  # Product name
agent-browser get text @e2  # Price
agent-browser get attr @e3 href  # Link
多会话(集群)
# Session 1: Navigator
agent-browser --session nav open https://example.com
agent-browser --session nav state save auth.json

# Session 2: Scraper (uses same auth)
agent-browser --session scrape state load auth.json
agent-browser --session scrape open https://example.com/data
agent-browser --session scrape snapshot -i

与 Claude Flow 集成

MCP 工具

所有浏览器操作均可通过带有 browser/ 前缀的 MCP 工具使用:

  • browser/open
  • browser/snapshot
  • browser/click
  • browser/fill
  • browser/screenshot
  • 等
记忆集成
# Store successful patterns
npx @claude-flow/cli memory store --namespace browser-patterns --key "login-flow" --value "snapshot->fill->click->wait"

# Retrieve before similar task
npx @claude-flow/cli memory search --query "login automation"
钩子
# Pre-browse hook (get context)
npx @claude-flow/cli hooks pre-edit --file "browser-task.ts"

# Post-browse hook (record success)
npx @claude-flow/cli hooks post-task --task-id "browse-1" --success true

提示

  1. 始终使用快照 - 快照针对带引用的 AI 使用场景进行了优化
  2. 优先使用 -i 标志 - 仅获取可交互元素,输出更精简
  3. 使用引用,而非选择器 - 更可靠,结果更确定
  4. 导航后重新获取快照 - 页面状态会发生变化
  5. 并行工作时使用会话 - 每个会话彼此独立

评论

支持 Markdown