浏览器成了 API
最近 GitHub 上冒出来一个 bb-browser,许多人见了它的自述,便两眼放光,因为那句话说得很会勾人:你的浏览器,本身就是 API。我一开始却没有这么激动。这样的话,我这些年见得多了,十句里倒有九句是把旧东西换个壳再卖一遍,仿佛只要名目够新,世界也就跟着焕然一新了。OpenClaw 这一类 Agent 工具这阵子正热,什么都要往上面挂,浏览器控制自然也成了一门显学,所以我起初怀疑,bb-browser 多半不过是把自动化脚本改头换面,顺手赶了这一班车罢了。
真正上手之后,才知道它并不只是换皮。它厉害之处,不在于“会点网页”,那本是 Playwright、Puppeteer 们早就会做的旧事;它的要害在于,第一,它接得上你已经登录过的浏览器环境,第二,它让模型直接对网页下手,而不必先去求人家的 API。别看这只是两层纸,一捅破,意味却很不一样。过去折腾 OpenClaw,一大半时间并不是花在“让模型思考”上,而是花在“给模型找手脚”上。一个网站没有 API,事情便做不成;有 API 而权限抠得很死,事情也做不成;即便接口开得痛快,登录、回调、配额、风控,一层层剥下来,往往只剩下一句空话:理论上可以。理论上当然什么都可以,实际上则未必。
我拿它试的,倒不是什么惊天动地的大场面,只是一些很琐碎、却恰恰最能暴露问题的动作。浏览器里原本就登着 X、YouTube 和几个后台,我让 Agent 去打开页面、找按钮、点进去、填几句内容,再提交。照理说,这不过是人手做惯了的事情,没什么了不起;可放在 Agent 的语境里,意义便出来了,因为它不再需要我先去翻文档,看对方有没有开放接口,也不需要我再造一套登录态,把 Cookie 搬来搬去,像做贼一样躲平台的监视。浏览器开着,账号在里面,Agent 便接上去做事。事情忽然就顺了。
这顺,不是技术说明书上那种“能力增强”,而是那种很实在的顺。以前用 OpenClaw,我总觉得它像个嘴很利索、手脚却被绑住的人,主意不少,动作极少,常常在最后一步卡死:想发内容,先找 API;想操作后台,先看文档;想跑完整流程,先申请权限。到了 bb-browser 这里,许多原本需要绕半天路的事情,忽然成了“看见按钮,点下去”这么简单。说到底,互联网原本就是给人点的,不是天生给 API 调的。如今不过是让模型学着照人的路数再走一遍,倒像是把事情还原回去了。
不过也不要高兴得太早。凡是这种看上去很像“从此天下太平”的东西,往往都在别处埋了雷。bb-browser 最大的麻烦,恰恰也来自它最大的本事:它碰的是你的真实浏览器,你的登录状态,你的会话环境。换言之,它不是隔着 API 在门外说话,而是已经进屋坐下了。这种权限,一旦给出去,便不是开玩笑的。你若拿主账号去试,出了事情,轻则操作乱掉,重则账号翻船;而平台那边也不是瞎子,网页动作是不是人做的,节奏是否诡异,停留是否自然,很多时候人家心里有数。脚本时代会撞上的墙,这里一堵也不会少,只不过形式换了而已。
稳定性也是一样。用 API,规矩写在文档里,虽然恼人,至少明白;用网页,规矩藏在页面结构里,今天按钮在左边,明天 DOM 改了名字,后天多弹出一个验证框,你前面搭好的流程便全要重来。有人见到“浏览器就是 API”这句话,便误以为从此可以摆脱一切接口约束,这就近于做梦了。它摆脱的,是官方接口的约束;它接过来的,则是前端页面那一整套更琐碎、更善变、也更不讲道理的约束。无非如此罢了。
但我仍然觉得,这东西值得一试。因为对 OpenClaw 这一类 Agent 来说,真正稀缺的从来不是“大脑”,而是手。模型这些年换了一茬又一茬,能说会算的越来越多,会真的去做事的却并不多见。你给它一个浏览器,它才像长出手来。发内容也好,跑后台也好,采页面数据也好,乃至把几步分散的网页动作连成一条流程,事情才有一点像“代理人”了。否则,所谓 Agent,往往不过是一个会讲计划书的秘书而已。
这也就是 bb-browser 让人觉得有点意思的地方。它并没有发明一个新的互联网,也没有发明一个新的浏览器,它只是把原来被人手占着的位置,让给了模型。旧时代的自动化工具,终究还是“脚本替人干活”;到了这里,味道有些变了,变成了“模型指挥脚本,脚本借浏览器下手”,于是中间那层死板的规则,忽然就活络起来了。模型可以看页面,可以临时判断,可以遇到岔路时换一个走法。这与单纯的录制回放,不是一回事。
我总怀疑,今后很多所谓“必须有 API 才能做”的场景,都会被这一类工具慢慢侵蚀。原因并不玄。网站本来就是给人用的,人能点进去完成的流程,理论上机器也能点进去完成;API 只是网站施舍出来的一扇偏门,如今偏门关着,便有人从正门进去。这种做法固然不那么优雅,甚至有点粗鲁;但技术史上许多有生命力的东西,本来也不是靠优雅活下来的,而是靠管用活下来的。能管用,事情就会往前走。
当然,工具层一旦打通,另一个更俗、也更硬的问题便立刻冒出来:模型用什么。跑 OpenClaw 的人,最后多半还是要回到 GPT、Claude、Gemini 这些名字上去。模型没有免费的午餐,支付便绕不过去。中国用户在这上头吃的哑巴亏太多了:技术上折腾半天,最后不是死在提示词,也不是死在部署,而是死在信用卡那一关。Claude 不认,Gemini 不认,GPT 也不认,你前面搭得再漂亮,到了付款页面一样站住。这才真叫扫兴。
所以这类文章若只谈工具,不谈支付,其实是装清高。事情没有那么风雅。你要真想把 bb-browser、OpenClaw 这些东西跑起来,最后总要落到模型订阅、API 余额、卡片支付这些庸俗事务上来,而庸俗事务往往最有决定性。我现在倒觉得,很多人以为自己玩的是 Agent,实际上先学会的却是怎样和支付系统周旋。世事本来如此,写代码的人最后也得学会买单。
我对 bb-browser 的看法,因此很简单:它未必是什么改天换地的大革命,却确实把 Agent 往前推了一步。它让模型不只是会说,而是勉强能做;它让浏览器不只是窗口,而有点像接口;它也让人看到,所谓 AI 自动化,未必要永远跪在 API 文档前面等人开恩。至于它能走多远,要看两件事,一看工具本身能否扛住真实网页环境的变动,二看平台肯不肯容忍这种“像人又不是人”的操作。前者是技术问题,后者是权力问题。技术问题总还能修,权力问题,向来难说。
但不管怎样,路子已经摆在那里了。OpenClaw 之类的 Agent 若还想继续往前走,浏览器这一层,恐怕是绕不过去的。因为互联网终究不是为 API 生的,它先是为人而生,然后才顺手给了程序一口饭吃。如今程序想要重新坐回桌上,不过是把这口饭端了回来而已。