Unbrowse 网站 API 客户端

把网站的第一方 API 转成可验证的任务调用,让智能体免用浏览器完成网页操作。

Star 数
★ 781
最近更新
3 天前
License
MIT
主语言
TypeScript

30 秒速览

运行形态
云服务 / SaaS命令行工具代码库 / SDK
可在哪里用
通用 · 跨平台ChatGPT · Codex · Claude Code
费用
有免费版,另有付费云服务
上手难度
中 · 需要几步配置
开始前需要
Node.js 18.17+BunShell / 命令行网络访问本地文件系统MCP Server
典型场景
需要从 Hacker News 等网站获取信息、并希望通过任务调用而非浏览器操作的开发者。
不适合
  • 需要所有浏览和 API 请求都在本地执行的团队
  • 不愿使用 Unbrowse 托管服务或完成 OAuth 登录的团队

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

Unbrowse 是面向托管 Unbrowse 服务的开源客户端,提供 `@unbrowse/sdk` TypeScript REST 客户端和基于它构建的 `unbrowse` CLI。它先搜索用户私有能力,再查找已编译网站工具的公共注册表;匹配时重放网站自己的第一方 HTTP 请求,并等待经过验证的结果。若没有匹配能力,智能体可通过托管 MCP 的录制云浏览器完成任务,或由用户上传两份 HAR 录制文件供 `unbrowse learn` 编译成可复用能力。CLI 也可通过 `unbrowse mcp` 将托管 MCP 转为本地 stdio 代理;服务、能力注册表和录制云浏览器仍由 Unbrowse 托管。README 未列出定价细节,要求查看账户方案和 `unbrowse usage`。

unbrowse discover <query> 搜索个人能力及公共网站注册表;unbrowse run <task…> 执行任务并等待验证结果,可用 --set k=v 传入参数。unbrowse resume <runId> k=v… 在同一运行中补充所需输入,unbrowse scrape <url> 将单页读取为 Markdown,unbrowse index <url> 为网站编制能力,unbrowse learn a.har b.har 将两份 HAR 录制编译为能力。@unbrowse/sdk 的 Unbrowse 类调用 REST API;智能体可连接 https://unbrowse.ai/mcp,或通过 unbrowse mcp 使用本地 stdio 代理。

  1. 需要从 Hacker News 等网站获取信息、并希望通过任务调用而非浏览器操作的开发者。
  2. 要让智能体调用没有官方 API 或 MCP 的网站第一方 API 的团队。
  3. 希望先录制两份 HAR,再把重复网站流程编译为单次能力调用的自动化工程师。
  4. 使用支持 MCP 的智能体客户端,并愿意连接 Unbrowse 托管服务的用户。
  5. 需要用 TypeScript 将任务运行接入自有程序的开发者。

如何安装或部署这个 Agent?

CLI 和 SDK 的安装版本应按安装指南使用固定的托管客户端发行版;README 提醒 npm latest 可能仍面向旧服务。完整安装命令未包含在所给材料中。智能体可按下列命令添加托管 MCP,然后在客户端完成 OAuth 登录:

claude mcp add --transport http unbrowse https://unbrowse.ai/mcp

README 要求 Node 18.17+ 用于构建 CLI,但没有明确说明预构建 CLI 或 SDK 的最低运行时要求。

如何使用这个 Agent?

CLI 登录使用浏览器 OAuth,或提供 API key。密码保存在 Unbrowse 密码管理器中,CLI 不接收密码。

unbrowse login
unbrowse discover "top stories on Hacker News"
unbrowse run "top stories on Hacker News"

TypeScript SDK 从 UNBROWSE_API_KEY 读取密钥;示例通过 Unbrowse 发起任务并等待结果:

import { Unbrowse } from "@unbrowse/sdk";
const ub = new Unbrowse(); // UNBROWSE_API_KEY
const run = await ub.wait((await ub.run({ task: "top stories on Hacker News", idempotencyKey: crypto.randomUUID() })).runId);

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

优点
  • 匹配能力会重放网站第一方 HTTP 请求,无需浏览器,并且运行成功以结果验证为条件。
  • 支持两份 HAR 学习流程,可将录制请求编译为后续可复用的能力。
  • 提供 CLI、TypeScript REST SDK、托管 MCP 和本地 stdio MCP 代理等明确接口。
局限
  • 核心服务、公共能力注册表及录制云浏览器是托管服务;材料没有提供自托管部署方式。
  • 首次连接 MCP 需要 OAuth;CLI 或 SDK 需要按安装指南选择托管客户端发行版,npm latest 可能不兼容当前服务。
  • 成本取决于账户方案和配额;所给材料未说明具体价格或免费额度。
  • 未命中已有能力时,需要通过云浏览器学习或准备两份 HAR 录制,流程并非每个网站都能直接调用。

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

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

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Unbrowse 网站 API 客户端 当前 56 · 缺口较多 云服务 / SaaS免费版 + 付费版 ★ 781 3 天前 TypeScript ChatGPT · Codex · Claude Code
Uni-CLI 72 · 存在缺口 命令行工具免费 ★ 274 7 天前 TypeScript ChatGPT · Codex · Claude Code
OpenTabs 49 · 缺口较多 命令行工具免费 + 模型费 ★ 967 2 个月前 TypeScript Claude Code
Stock SDK 71 · 存在缺口 代码库 / SDK免费 ★ 2k 6 天前 TypeScript ChatGPT · Codex · Claude Code

FollowAgents 如何评估这个 Agent?

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

证据显示 CLI 凭据文件设为 0600,站点密码由服务器保存,cookie 同步按站点指定且全站同步需显式确认;因此最小权限和敏感数据处理有实质措施,但同步仍会读取并上传浏览器会话 cookie,不能得满分。命令文档区分本机与 Unbrowse 出口,便于理解数据流;但请求会重放站点第一方 API,也可能使用云浏览器,外部影响说明有限。daemon 可停止并移除配置和状态,但已发送的站点请求或上传 cookie 无法据此撤回。安全联系渠道明确,发布者身份仍未获验证,故来源归属证据有限。依赖有锁文件和 CI,但材料未显示依赖审计或漏洞处置机制。

可靠稳定9 / 14 · 3.2/5

README、CLI 与测试材料对命令、验证结果、退出码及输入补充流程相互呼应;测试使用本地 stand-in API,CI列出多包构建与测试。错误提示覆盖未登录、网络不可达、上游错误和输入要求。仍扣分于核心能力依赖托管服务可用性,且静态材料不能证明真实运行表现。

适用触发10 / 18 · 2.8/5

材料覆盖 CLI、SDK、托管 MCP、插件及自定义连接器,并提供本机或托管出口选项;能力范围也由 CLI、REST 和 MCP 文档分开说明。扣分原因是主要受众与适用场景仍较宽泛,自动触发或不适用情形缺少明确规则;环境支持有安装指引,但 cookie daemon 的服务平台支持有限,测试所示 Windows 服务计划不支持。

规范维护12 / 18 · 3.3/5

文档按安装、CLI、MCP、SDK、故障排查及开放范围组织,安装步骤和示例具体,LICENSE 提供完整 MIT 条款。扣分原因是 README 提及 npm latest 可能指向旧服务,版本更新路径存在需要读者留意之处;给定材料未见完整变更日志,维护责任仅能从安全邮箱和 CI 发布流程部分判断,且发布者未验证。

有效结果7 / 13 · 2.7/5

项目提供站点能力发现、请求重放、学习编译、抓取和多客户端接口;CLI 可输出 JSON、Markdown、退出码及后续命令,结果通过验证才算成功。扣分原因是性能与成本改善幅度仅为 README 中的主张,材料未提供支持该幅度的测量细节;托管服务、OAuth 和账户配额带来使用成本与依赖。

证据核验4 / 8 · 2.5/5

README 的功能主张有 CLI 测试、CI 工作流和安全文档等材料支撑,功能与数据流可追到具体文件内容;但这些材料主要属于同一仓库,独立交叉印证有限。扣分原因是性能数字及服务端密码处理等描述主要是仓库自身声明,静态审查无法独立确认,故事实与推断边界仅部分清楚。

风险与缓解建议
  • cookie 同步会上传浏览器会话 cookie;开始同步前确认站点范围,尤其是 --all-sites。
  • 这是托管服务的客户端;核对出口位置、账户配额以及所用版本与服务端的兼容性。
证据充分度:低 评估于 2026年10月9日 审查版本 7b59dfa95bfb
查看完整评分方法 →

常见问题

是否必须使用浏览器?
匹配到能力后,Unbrowse 重放网站第一方 HTTP 请求,不使用浏览器;学习新能力时可使用托管的录制云浏览器。
首次使用需要什么凭据?
MCP 连接通过客户端完成 OAuth 登录;CLI 可浏览器 OAuth 登录或保存 API key;SDK 示例从 UNBROWSE_API_KEY 读取密钥。
任务失败或需要补充输入时会怎样?
CLI 的退出码 2 表示需要输入,退出码 4 表示结果未验证;可用 unbrowse resume <runId> k=v… 回答同一运行提出的问题。
网站没有现成能力时如何添加?
可让智能体在 Unbrowse 录制云浏览器中执行任务,也可运行 unbrowse learn a.har b.har 上传两份 HAR 录制并编译能力。
密码会交给 CLI 吗?
README 表示密码保存在 Unbrowse 密码管理器中,CLI 不接收密码。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

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

相关 Agents