FSB 全自主浏览

用自然语言驱动 Chrome 的 DOM 优先浏览器自动化扩展,可通过本地 MCP 桥接被多种 AI 客户端直接调用。

Star 数
★ 190
最近更新
18 天前
License
MIT
主语言
JavaScript

30 秒速览

可在哪里用
通用 · 跨平台Codex · Claude Code · OpenAI API · Claude APIClaude.ai(部分支持)
开始前需要
Chromium 116+ (Chrome/Edge/Brave/Chromium)Node.js (npx)npmShell / 命令行网络访问本地文件系统MCP Server
典型场景
QA 或前端工程师需要对同一段页面流程反复回归,可以用 FSB 重放点击、填表与状态切换,并从日志中收集每一步的动作记录。
主要局限
强依赖本机浏览器:触发器、PhantomStream 预览与坐标工具都要求 Chrome 与扩展保持运行,没有服务端监控或推送,无法做无人值守的长时任务。

这个 Agent 能做什么,适合哪些场景?

FSB(Full Self Browsing)是一个以 DOM 结构为核心的 Chrome 清单 V3 扩展(当前版本 0.9.91),用自然语言描述任务后,扩展会读取当前页面的 DOM、选择器、表单与 ARIA 标签,规划工具调用,执行点击、输入、导航等浏览器动作,并在动作后校验页面状态。它配套发布了 fsb-mcp-server 这个本地 MCP 桥接服务,对外注册 69 个工具,让 Claude Code、Codex、Cursor、VS Code、Windsurf 等客户端通过 ws://localhost:7225 驱动同一个扩展运行时。扩展自身也可独立运行,只需在弹窗或侧边栏填入 xAI、Gemini、OpenAI、Anthropic、OpenRouter、LM Studio 或自定义 OpenAI 兼容端点的密钥即可。除 DOM 自动化外,它还提供 128 个应用的 T1/T1b 首批方 API 能力目录、真实文件上传、触发器监视、长期记忆与会话回放。整体运行在你的本地浏览器和本地进程中,不需要托管账号,代价是必须保持 Chrome 与扩展处于打开状态。

扩展的后台 Service Worker(extension/background.js)掌管会话状态、模型调用与工具执行;内容脚本(extension/content/)负责抓取 DOM 快照、生成元素引用与选择器、执行动作并通过 PhantomStream 适配器回传页面状态。AI 层(extension/ai/)走统一的 OpenAI 兼容请求通道,负责模型发现、工具定义、转录记录与成本核算。工具执行路径覆盖 click、type_text、press_key、scroll、navigate、标签页操作、表格区域、坐标工具、execute_js 以及通过 CDP DOM.setFileInputFiles 实现的 upload_file,动作后会用 read_page 或 get_dom_snapshot 校验结果并检测卡死重复。MCP 侧暴露视觉会话、自动驾驶、触发器监视、手动控制、只读检查、开发者截图、能力搜索与调用、可观测性回放、凭据保险箱等分组工具;mutation 工具串行化以免两个客户端同时操作,只读工具在安全时绕过队列。新增的 search_capabilities 与 invoke_capability 会在 128 应用目录中检索,只有签名校验、审计与拒绝名单门禁通过的 T1/T1b 能力才会直接执行。长期记忆分为情景、语义、流程三类,任务结束后从会话转录中提取并按域与关键词检索复用。

  1. QA 或前端工程师需要对同一段页面流程反复回归,可以用 FSB 重放点击、填表与状态切换,并从日志中收集每一步的动作记录。
  2. 研究人员要跨多个页面收集可见文本并汇总,可直接用 read_page 与 get_dom_snapshot 读取结构,而不必依赖截图识别。
  3. 运维或数据分析人员需要在结构化的后台表单中批量录入数据,可借助下拉框、自定义控件与表格输入工具完成填写并验证结果。
  4. 开发者想让 Claude Code 或 Codex 直接操控浏览器调试验收构建产物,可安装 fsb-mcp-server 后用 run_task 或手动工具链驱动本地 Chrome。
  5. 需要监控某个页面元素何时出现库存、阈值越界或内容变化时,可以用 trigger 系列的四个工具挂载单元素监视,并在 MCP 客户端接收阻塞或异步通知。
  6. 客户支持或运营人员希望在不写脚本的前提下完成商品比价、读取仪表盘表格或整理购物车,可以交给扩展的自动驾驶循环并在有监督的情况下操作。

如何安装或部署这个 Agent?

环境要求:Chromium 116+ 的稳定桌面浏览器(Chrome、Edge、Brave 或 Chromium)。

  1. 克隆并准备依赖:
git clone https://github.com/fullselfbrowsing/FSB.git
cd FSB
npm install
npm --prefix mcp install

扩展本身无需构建步骤,直接用 extension/ 目录。

  1. 加载扩展:打开 chrome://extensions/,启用开发者模式,点击“加载已解压的扩展程序”,选择 extension/ 目录,然后点击工具栏图标并在设置中配置一个模型提供方(xAI、Gemini、OpenAI、Anthropic、OpenRouter、LM Studio 或自定义端点),用 Test API 验证连通性。

3.(可选)安装 MCP 桥接,一条命令写入客户端配置:

npx -y fsb-mcp-server@latest install --claude-code
npx -y fsb-mcp-server@latest install --claude-desktop
npx -y fsb-mcp-server@latest install --cursor
npx -y fsb-mcp-server@latest install --vscode
npx -y fsb-mcp-server@latest install --windsurf
npx -y fsb-mcp-server@latest install --codex
npx -y fsb-mcp-server@latest install --all

添加 --dry-run 可预览而不写入。之后重启客户端,让新的 MCP 服务出现。走 MCP 时不需要 FSB 自己的 API key,推理由 MCP 客户端的模型完成。

如何使用这个 Agent?

独立使用:点击 FSB 工具栏图标打开弹窗或侧边栏,在设置中粘贴某家提供方的 API key,然后输入任务,例如 “Scroll down”“Search for cats on Google”“Read this page and summarize it”。建议先做只读任务,再做点击或输入任务,评估阶段保持视觉覆盖层开启。注意不要停留在 chrome:// 等浏览器内部页面。

通过 MCP 使用:先用 npx -y fsb-mcp-server@latest doctorstatus --watch 确认桥接状态,再在客户端里发出指令。手动工具是大多数外部客户端的默认路径:先 read_page 或 get_dom_snapshot 了解页面,再用 execute_js 做安全 DOM 读取或触发点击,需要真实浏览器事件时用 click、type_text、press_key、drag,最后用快照校验;在最后一个动作上设置 is_final:true 可立刻清除覆盖层。需要 FSB 自己跑完整循环时用 run_task。扩展通过 ws://localhost:7225 连接桥接,可选 Streamable HTTP 模式暴露 http://127.0.0.1:7226/mcp。触发器会本地挂载在当前打开的浏览器会话上,Chrome 和扩展必须保持运行,FSB 不提供服务端监控或推送。

这个 Agent 有哪些优点和局限?

优点
  • DOM 优先路线带来明确的性能与成本差异:README 标称每步延迟 50–200 ms,而视觉方案为 1–3 秒,且隐藏元素在结构里仍然可见。
  • MCP 集成开箱即用,一条 npx 命令即可为 Claude Code、Claude Desktop、Cursor、VS Code、Windsurf、Codex 写入配置,且走 MCP 路径时不需要额外的 FSB API key。
  • 模型提供方覆盖广:xAI、Gemini、OpenAI、Anthropic、OpenRouter、LM Studio 本地模型以及自定义 OpenAI 兼容端点,并支持在线模型发现与 30 条回退模型。
  • 工程细节相对完整:动作后校验、卡死检测、智能等待、串行化的 mutation 队列、审计日志,以及覆盖扩展、MCP 契约与桥接行为的 Node 测试。
  • 具备真实文件上传能力,upload_file 通过 CDP DOM.setFileInputFiles 支持被样式化 dropzone 遮挡的 input,并配有敏感路径拒绝名单与不落盘路径的审计记录。
局限
  • 强依赖本机浏览器:触发器、PhantomStream 预览与坐标工具都要求 Chrome 与扩展保持运行,没有服务端监控或推送,无法做无人值守的长时任务。
  • 能力目录并非全部可用:只有通过签名与审计门禁的 T1/T1b 能力可直接执行,其余命中会返回 learn-pending、discovery-pending 或 fail-closed 的待定响应。
  • 自动驾驶在复杂或敏感站点上仍不稳定,README 明确建议在有监督的情况下使用,把 FSB 当作快速助手而不是生产级无人值守工人。
  • 历史包袱与迁移风险:后台 agent 功能已退役,虽保留了旧的 chrome.storage.local['bgAgents'] 数据,但计划性或周期性自动化不再是活跃特性。
  • API key 与 LLM 计费由用户自行承担,扩展不含任何内置额度;同时任务上下文会被发送到所选模型提供方,敏感页面需谨慎。

这个 Agent 与同类方案有什么区别?

README 明确提到 Project Mariner、Claude Computer Use 与 OpenAI Operator 依赖视觉理解,而 FSB 直接使用页面结构;在延迟、隐藏元素可见性和 token 成本上形成对照。此外,Native Capability Catalog 的灵感来自 OpenTabs。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 Star 最近更新 主语言 完整支持的平台
FSB 全自主浏览 当前 49 · 缺口较多 ★ 190 18 天前 JavaScript Codex · Claude Code · OpenAI API · Claude API
WebBrain 65 · 存在缺口 ★ 1.1k 4 天前 JavaScript Claude Code
Open Claude in Chrome 40 · 缺口较多 ★ 223 23 天前 HTML Claude Code
Obscura 无头浏览器 75 · 表现良好 ★ 27k 4 天前 Rust Claude.ai

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
49/ 100 五分制 2.5 / 5
信任安全 11/29
可靠稳定 8/14
适用触发 10/18
规范维护 10/18
有效结果 7/13
证据核验 3/8
查看各维度的扣分理由
信任安全11 / 29 · 1.9/5

README 声明了加密密钥、保险库解锁、脱敏、DOMPurify、能力签名/审计门、来源与上传路径拒绝清单、同意门等机制,且测试文件名(consent-gate、audit-log-no-secret、upload-path-denylist、network-capture-consent)与之一致,故 sensitive_data_handling 给 2。但 manifest 声明 host_permissions 为 <all_urls>,并含 tabs、scripting、system.memory、windows 等宽权限,未见最小权限收敛说明,least_privilege 仅 1。用户确认方面只有“supervised automation”“敏感来源额外确认”等文字,缺少可核验的确认流程细节,给 1。数据流透明仅 README 一段描述,无数据流图或字段级说明,给 1。依赖安全仅见 npm ci 与 lockfile 使用,无审计/SBOM/漏洞处置记录,给 1。外部效果(真实点击、上传、支付/凭证保险库)有审计与拒绝清单但无沙箱或影响范围界定,给 1。回滚仅“重装 MCP 配置是最后手段”等提示,无状态回滚机制,给 1。来源归属有 MIT 版权人与致谢(OpenTabs、Project Mariner),但发布者身份未验证、贡献者含 AI 名称,给 1。

可靠稳定8 / 14 · 2.9/5

self_consistency 给 2:版本号在 README、package.json、badge 中一致(0.9.91),CI 有 version:check 与 tag 绑定校验,但 README 同时出现“Engineering milestone 0.11.0”与 v0.9.91,存在版本叙事不一致。dependency_availability 给 1:依赖含私有作用域包 @full-self-browsing/phantom-stream、lattice 别名包与 @opentabs-dev/plugin-sdk,可用性依赖外部发布,静态无法确认。failure_messages 给 2:README 提供故障排查表、doctor/status 诊断命令,测试覆盖 recovery-messaging、restricted-tab、ownership-error-codes,但未见错误码目录。

适用触发10 / 18 · 2.8/5

audience_and_scenarios 给 2:明确列出 QA、研究、数据录入、电商、金融、触发器、开发者、无障碍等场景,并区分受监督使用。capability_boundaries 给 2:明确声明“不是隐身浏览器、爬虫农场或无人值守账号操作者”,并说明后台代理已退役、触发器需浏览器常开。trigger_precision 给 1:触发器仅描述单元素监视与阈值/正则/复合条件,缺少误触发与去抖的静态证据。environment_fit 给 2:明确 Chrome/Edge/Brave/Chromium 116+、Node>=24、MCP 客户端清单与本地端口,但 Windows 原生宿主构建依赖 MSVC,环境要求较重。

规范维护10 / 18 · 2.8/5

information_architecture 给 2:README 结构清晰,仓库布局表与架构图齐备。install_notes 给 2:提供一键安装、手动配置、dry-run、doctor 与前置条件。naming_stability 给 1:产品名 FSB/Full Self Browsing 与包名 fsb-mcp-server、fsb-full-self-browsing 并存,且存在“remote-control-rebrand”测试,命名演进痕迹明显。examples_and_faq 给 2:有快速开始示例、截图与故障排查表。known_limitations 给 1:仅零散提示(复杂站点不可预测、触发器需常开、HLS/DASH 延后),无集中限制清单。license 给 2:MIT 全文与 package.json 一致。versioning_changelog 给 2:有 CHANGELOG.md、mcp/CHANGELOG.md、版本同步脚本与 tag 发布流程。maintenance_responsibility 给 1:发布者未验证,仅个人作者与赞助链接,无治理或安全响应渠道。

有效结果7 / 13 · 2.7/5

output_usability 给 2:输出支持 Markdown、净化 HTML、Mermaid、Chart.js 与进度消息,并有弹窗/侧边栏/日志多界面。marginal_value 给 2:DOM-first 相对视觉方案在延迟与成本上有明确差异化定位,并叠加能力目录与触发器。cost_benefit 给 1:README 给出延迟对比但无实测基准或成本数据,且依赖多个私有包与较重环境,收益证据偏薄。

证据核验3 / 8 · 1.9/5

claim_traceability 给 1:多数能力声明指向文件或测试名,但“已测试、测试全绿、生产可用”等结论无对应证据文件。cross_source_corroboration 给 1:README、package.json、CI 工作流在版本与测试链上部分互证,但安全与能力声明缺少第二来源。fact_inference_separation 给 1:README 将营销表述与工程事实混排(如“production ready”与“行为不可预测”并列),未区分已验证与推断。

风险与缓解建议
  • manifest 声明 <all_urls> 主机权限及 tabs/scripting/system.memory/windows 等宽权限,未见最小权限收敛说明,部署前应逐项核对权限必要性。
  • 发布者身份未经验证,且 package.json 中作者邮箱为占位符([email protected]),不应据此推断可信度。
  • 依赖包含私有作用域包(@full-self-browsing/phantom-stream、lattice 别名、@opentabs-dev/plugin-sdk),其可用性与供应链风险无法静态确认。
  • README 存在版本叙事不一致(v0.9.91 与 'Engineering milestone 0.11.0'),且 'production ready' 与 '行为不可预测' 并列,需以代码与 CI 为准。
  • 能力目录、签名/审计门、同意门等安全机制仅有 README 与测试文件名佐证,未提供可核验的规范或审计样例。
  • 触发器与 DOM 实时预览依赖 Chrome 与扩展常开,且 HLS/DASH 发现被推迟,实际可用范围可能小于描述。
证据充分度: 评估于 2026年9月17日 审查版本 b5156eae7b18
查看完整评分方法 →

常见问题

用 FSB 需要付费的 FSB 账号或 API key 吗?
本地扩展使用不需要托管账号。若走 MCP 路径由客户端的模型推理,则不需要 FSB 的 key;若独立运行扩展,则需要在设置中填写所选提供方的 API key 或指向本地 LM Studio 端点,费用由该提供方结算。
它需要哪些浏览器权限,会不会读写我的账号?
扩展以 MV3 清单方式声明权限,可操作当前页面、标签页,并使用基于调试器的坐标工具和 CDP 文件上传。FSB 明确表示不绕过浏览器对内部页面的限制,凭证与支付保险箱需要用户显式配置并解锁,也不会把原始机密经 MCP 桥接传输。
任务失败了怎么办?
多数问题可通过重新读取页面、刷新选择器或重启本地 MCP 桥接解决。常见排查顺序是先运行 doctor 与 status --watch,确认是连接、扩展唤醒、活动标签页还是内容脚本未就绪,重装 MCP 配置应是最后手段。
触发器监视能在无人时后台运行吗?
不能。触发器依附于当前打开的浏览器会话,Chrome 和扩展必须保持运行,结果只回报给发起调用的 MCP 客户端,FSB 不提供服务端监控或推送投递。
可以把 FSB 部署到服务器上跑吗?
核心运行时是 Chrome 扩展,必须跑在本地浏览器中;仓库里的 showcase/server 与 server-py 分别是展示站点后端和保留的旧 Python 后端原型,并不承担浏览器自动化。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents