缘起今天风暴了一下准备实践一下Hermes自动售卖数字产品实现自动变现的MVP谁知道刚开始就卡在了操作百度网盘要么被反爬要么靠之前开发的computer use for win截图点坐标像瞎子摸象。最后换了条路——用 bb-browser 接管你已登录的 Chrome让 Agent 直接调百度网盘的接口终于跑通了 list、find、share、upload全自动化MVP。痛点我的 Agent 戳不准按钮要让 AI Agent 自主完成数字商品交付百度网盘是绕不开的一环。商品上传、分享链接、提取码——这套动作必须稳定可重复。之前试了两条路Hermes 自带的 browser-use打开百度首页就触发滑块验证码页面都进不去。自开发的computer-use-win能控制我的桌面但网页操作靠的是截图标坐标点按钮百度网盘的页面结构复杂很容易点偏而且每次网页布局一变就要重新适配。说实话这个tool开发完觉得挺鸡肋对于操作Electron窗口完全依靠大模型的视图理解费钱不说操作也相当不流畅哪就更别说操作浏览器了。两条路试下来核心感受是Agent 需要的是网页里的数据不是网页里的像素。既然我已经在 Chrome 里登录了百度网盘——为什么不让 Agent 直接用这个登录态去调页面接口呢这就是 bb-browser 的切入点。方案bb-browser 的思路很简单你的真实浏览器就是 API。它启动一个 daemon 连接你正在用的 Chrome然后在页面上下文里执行 JS直接调网页自身的 fetch 接口。你的 Chrome已登录百度网盘 └─ bb-browser daemon连接 Chrome DevTools ├─ site adapter封装高频网站操作 ├─ eval在页面跑任何 JS └─ fetch用页面登录态调接口它通过site adapter机制封装了百度、GitHub、知乎等几十个常用网站的命令。没有内置 adapter 的网站可以用eval直接跑自定义 JS。先测百度搜索安装 bb-browsernpminstall-gbb-browserlatest bb-browser site update# 拉取社区 adapter 包一条命令测试百度搜索bb-browser site baidu/searchhermes agent5--json直接拿到结构化结果没有验证码。Hermes自带的 browser use 工具被百度拦住bb-browser 一次就过了。原因是它走的是真实 Chrome 里我自己的登录态和浏览习惯不是远程无头浏览器——百度不觉得这是机器人。百度网盘 adapterbb-sites 社区包里没有百度网盘 adapter自己写。适配器目录结构~/.bb-browser/bb-sites/baidu-pan/ ├── list.js # 列文件 ├── find.js # 按文件名查找 └── share.js # 创建分享链接每个 adapter 一个 JS 文件在 baidu.com 域名的 tab 上下文里执行 fetch。列文件bb-browser site baidu-pan/list--json输出文件列表、路径、大小、fs_id。按文件名查找bb-browser site baidu-pan/find earn-50-rmb-product.zip--json找到了目标文件name: earn-50-rmb-product.zip path: /earn-50-rmb-product.zip fs_id: 295531441272474 size: 7080创建分享链接bb-browser site baidu-pan/share earn-50-rmb-product.zip a8k2--json返回永久分享链接和提取码。至此文件查找和分享链接生成已经全自动化了。上传最难的一关adapter 只能在浏览器页面上下文里跑 JS——没法读取本地任意路径的文件。这是浏览器安全模型决定的。于是改用本地脚本 浏览器上下文的组合Node 本地读取文件、计算 MD5脚本通过 bb-browser 在百度网盘 tab 上执行一段自定义 JSJS 依次调用百度网盘的内部 API 完成文件创建和写入先找百度网盘当前在哪个 tabbb-browser tab list--json# 找到 pan.baidu.com 的短 ID比如 713c然后上传测试文件BB_BROWSER_TAB713cnodescripts/baidu-pan-upload.js\--fileupload-test.txt\--namebb-upload-test.txt输出{ok:true,path:/bb-upload-test.txt,size:59,create:{fs_id:288039632014397,server_filename:bb-upload-test.txt,errno:0}}确认文件已存在bb-browser site baidu-pan/find bb-upload-test.txt--json# ✅ 找到效果现在全套链路已经验证通过操作耗时结果列文件1 秒结构化 JSON按文件名查找1 秒精准定位 fs_id创建分享链接提取码2 秒永久有效链接本地文件上传5 秒返回 fs_id可验证上传脚本有安全限制当前只处理 20MB 以内的小文件不做覆盖操作不涉及删除/重命名。对比与之前路线对比方案验证码登录态输出稳定性Hermes browser 工具被拦无见不到页面-Computer Use 点按钮无有截图坐标低网页一改就偏bb-browser 调接口无有真实 Chrome结构化 JSON高bb-browser 的 adapter 机制还带来了额外好处——这套操作已经沉淀到本地适配器目录下次直接复用。这个验证最关键的发现不是某个技术细节而是方向上的判断让 Agent 用你已登录的浏览器干活比让 Agent 假装成你干活靠谱得多。你已经登录了agent 就直接用——不需要额外处理验证码、不需要构造 cookie、不需要无头浏览器。你的登录态就是 agent 的能力底座。下一步计划把这套操作封装成 Hermes Agent 的原生工具让每次找文件、上传、生成分享链接都可以一条命令完成。如需要方案细节与源码评论区找我。作者爱折腾的编程老炮
百度网盘全自动化实录:Hermes Agent + bb-browser
缘起今天风暴了一下准备实践一下Hermes自动售卖数字产品实现自动变现的MVP谁知道刚开始就卡在了操作百度网盘要么被反爬要么靠之前开发的computer use for win截图点坐标像瞎子摸象。最后换了条路——用 bb-browser 接管你已登录的 Chrome让 Agent 直接调百度网盘的接口终于跑通了 list、find、share、upload全自动化MVP。痛点我的 Agent 戳不准按钮要让 AI Agent 自主完成数字商品交付百度网盘是绕不开的一环。商品上传、分享链接、提取码——这套动作必须稳定可重复。之前试了两条路Hermes 自带的 browser-use打开百度首页就触发滑块验证码页面都进不去。自开发的computer-use-win能控制我的桌面但网页操作靠的是截图标坐标点按钮百度网盘的页面结构复杂很容易点偏而且每次网页布局一变就要重新适配。说实话这个tool开发完觉得挺鸡肋对于操作Electron窗口完全依靠大模型的视图理解费钱不说操作也相当不流畅哪就更别说操作浏览器了。两条路试下来核心感受是Agent 需要的是网页里的数据不是网页里的像素。既然我已经在 Chrome 里登录了百度网盘——为什么不让 Agent 直接用这个登录态去调页面接口呢这就是 bb-browser 的切入点。方案bb-browser 的思路很简单你的真实浏览器就是 API。它启动一个 daemon 连接你正在用的 Chrome然后在页面上下文里执行 JS直接调网页自身的 fetch 接口。你的 Chrome已登录百度网盘 └─ bb-browser daemon连接 Chrome DevTools ├─ site adapter封装高频网站操作 ├─ eval在页面跑任何 JS └─ fetch用页面登录态调接口它通过site adapter机制封装了百度、GitHub、知乎等几十个常用网站的命令。没有内置 adapter 的网站可以用eval直接跑自定义 JS。先测百度搜索安装 bb-browsernpminstall-gbb-browserlatest bb-browser site update# 拉取社区 adapter 包一条命令测试百度搜索bb-browser site baidu/searchhermes agent5--json直接拿到结构化结果没有验证码。Hermes自带的 browser use 工具被百度拦住bb-browser 一次就过了。原因是它走的是真实 Chrome 里我自己的登录态和浏览习惯不是远程无头浏览器——百度不觉得这是机器人。百度网盘 adapterbb-sites 社区包里没有百度网盘 adapter自己写。适配器目录结构~/.bb-browser/bb-sites/baidu-pan/ ├── list.js # 列文件 ├── find.js # 按文件名查找 └── share.js # 创建分享链接每个 adapter 一个 JS 文件在 baidu.com 域名的 tab 上下文里执行 fetch。列文件bb-browser site baidu-pan/list--json输出文件列表、路径、大小、fs_id。按文件名查找bb-browser site baidu-pan/find earn-50-rmb-product.zip--json找到了目标文件name: earn-50-rmb-product.zip path: /earn-50-rmb-product.zip fs_id: 295531441272474 size: 7080创建分享链接bb-browser site baidu-pan/share earn-50-rmb-product.zip a8k2--json返回永久分享链接和提取码。至此文件查找和分享链接生成已经全自动化了。上传最难的一关adapter 只能在浏览器页面上下文里跑 JS——没法读取本地任意路径的文件。这是浏览器安全模型决定的。于是改用本地脚本 浏览器上下文的组合Node 本地读取文件、计算 MD5脚本通过 bb-browser 在百度网盘 tab 上执行一段自定义 JSJS 依次调用百度网盘的内部 API 完成文件创建和写入先找百度网盘当前在哪个 tabbb-browser tab list--json# 找到 pan.baidu.com 的短 ID比如 713c然后上传测试文件BB_BROWSER_TAB713cnodescripts/baidu-pan-upload.js\--fileupload-test.txt\--namebb-upload-test.txt输出{ok:true,path:/bb-upload-test.txt,size:59,create:{fs_id:288039632014397,server_filename:bb-upload-test.txt,errno:0}}确认文件已存在bb-browser site baidu-pan/find bb-upload-test.txt--json# ✅ 找到效果现在全套链路已经验证通过操作耗时结果列文件1 秒结构化 JSON按文件名查找1 秒精准定位 fs_id创建分享链接提取码2 秒永久有效链接本地文件上传5 秒返回 fs_id可验证上传脚本有安全限制当前只处理 20MB 以内的小文件不做覆盖操作不涉及删除/重命名。对比与之前路线对比方案验证码登录态输出稳定性Hermes browser 工具被拦无见不到页面-Computer Use 点按钮无有截图坐标低网页一改就偏bb-browser 调接口无有真实 Chrome结构化 JSON高bb-browser 的 adapter 机制还带来了额外好处——这套操作已经沉淀到本地适配器目录下次直接复用。这个验证最关键的发现不是某个技术细节而是方向上的判断让 Agent 用你已登录的浏览器干活比让 Agent 假装成你干活靠谱得多。你已经登录了agent 就直接用——不需要额外处理验证码、不需要构造 cookie、不需要无头浏览器。你的登录态就是 agent 的能力底座。下一步计划把这套操作封装成 Hermes Agent 的原生工具让每次找文件、上传、生成分享链接都可以一条命令完成。如需要方案细节与源码评论区找我。作者爱折腾的编程老炮