技能注册表
开发工作流公共技能

Browser Automation

AI 代理的网页操作 — 读取页面、提取数据、截图、与表单交互,并通过无头 Chromium 抓取结构化内容。

此技能教授的内容

针对特定工作类型的可复用操作手册。

MCP 服务器告诉代理可用的操作。技能为这些操作添加判断:如何识别任务,遵循哪个顺序,避免什么,以及如何判断结果已完成。

编排浏览器操作 — 获取网页、提取内容、截图、与元素交互及抓取结构化数据。适用于阅读网页、从网站提取数据、截图、检查 URL 是否可用或与网页表单交互。

架构

Browser Automation 如何指导 ADK-Rust 代理。

技能保持可读和可移植,因为它包含说明而非服务凭证或业务数据。ADK-Rust 将其提供给代理,代理从审核过的工具边界中选择,连接的 MCP 服务器执行经过身份验证的操作。

01

用户请求

代理接收以普通语言表达的目标。

02

Browser Automation 技能

匹配意图,提供决策指南,并缩小工具边界。

03

ADK-Rust 代理

规划工作流,并通过运行时流式传输每个关键步骤。

04

mcp-browser

对拥有该能力的系统执行经过身份验证的操作。

05

已验证结果

技能的完成规则决定返回给用户的证据。

可移植的说明: SKILL.md · 能力边界: mcp-browser · 允许的工具: 17

决策指南

代理如何将请求转化为正确操作。

这些路由直接来自技能说明。它们帮助模型识别意图并选择专注的工具或工作流,而不是在整个能力范围内即兴发挥。

01

“读取”、“获取页面”、“URL 内容”?

read_page(JS 渲染)或 fetch_light(静态)

02

“截图”、“捕获”、“视觉”?

screenshot / screenshot_element

03

“链接”、“提取链接”?

extract_links

04

“点击”、“填写表单”、“交互”?

click / type_text / wait_for

05

“是否可用”、“状态”、“检查 URL”?

check_status

06

“PDF”、“保存页面”?

save_pdf

07

“结构化数据”、“抓取字段”?

extract_structured / query_selector

经过验证的工作流

可重复的序列以实现有用结果。

工作流将多个工具调用组合成用户实际识别的任务。技能解释顺序和预期结果,而 ADK-Rust 通过共享运行时实时传输代理的进度。

011-2 次调用

读取页面

从任意 URL 获取干净文本

022 次调用

提取数据

从页面获取结构化字段

031 次调用

截图

视觉捕获(整页或元素)

043-4 次调用

交互

填写表单,点击按钮

051 次调用

状态检查

验证 URL 是否可访问

工具边界

技能可能使用 17 个已记录工具。

此允许列表由技能声明。它使代理专注于完成此任务所需的操作,而 mcp-browser 保留身份验证、验证和连接系统的责任。

read_page
get_html
extract_links
extract_metadata
query_selector
get_accessibility_tree
extract_structured
screenshot
screenshot_element
save_pdf
click
type_text
evaluate_js
wait_for
navigate
check_status
fetch_light

工作规则

代理应做什么。

  • 在执行重操作前使用 check_status(避免浪费时间在无效 URL)
  • 对静态页面使用 fetch_light(比完整浏览器快 10 倍)
  • 使用 get_accessibility_tree 进行高效提取(比 HTML 节省 77% 令牌)

操作边界

代理应避免什么。

  • 简单静态页面不要用 read_page(用 fetch_light)
  • 不要抓取明确禁止机器人的网站(遵守 robots.txt)
  • 不要存储通过 type_text 输入的凭证

安装并连接

将技能添加到其预期能力旁边。

安装仓库,使您的 ADK-Rust 技能加载器能发现它,连接 mcp-browser,并确认声明的工具可用后,再让代理使用工作流。

安装技能
git clone https://github.com/zavora-ai/skill-browser-automation.git ~/.skills/skills/browser-automation
ADK-Rust 加载形态
let skills = SkillLoader::from_dir("~/.skills/skills").await?;
let skill = skills.load("browser-automation").await?;

let agent = LlmAgentBuilder::new("agent")
    .instruction(skill.instructions())
    .tools(skill.allowed_tools(toolset)?)
    .build()?;

仓库的兼容性声明:需要连接 mcp-browser 服务器(基于 Chromium,无头模式)。

源记录

此技能条目的仓库元数据。

查看公共仓库 ↗
许可证
Apache-2.0
允许的工具
17
参考文献
3
修订
38297870a375
已更新
2026年5月31日