9 分•作者: icyfox•2 个月前
嗨,HN!我是Pierce。<p>Rotunda是一个主要面向代理使用的Firefox分支,我一直在晚上/周末进行开发。<p>上周有一个[冗长](<a href="https://news.ycombinator.com/item?id=48024859">https://news.ycombinator.com/item?id=48024859</a>)的讨论,关于计算机使用模型的成本有多高。成本最终会下降,但我认为在某种程度上,它仍然通常是错误的基元。网络为我们提供了访问漂亮的结构化格式、纯文本等的机会……如果我们不必这样做,为什么要放弃呢?<p>我意识到,对于99%的自动化,我只想让代理能够控制我的Chrome实例。但说起来容易做起来难:CDP(Chrome自动化协议)泄露了大量关于被程序控制的状态,要么通过切换窗口属性,要么通过在页面上下文中运行`page.evaluate()`命令。而且,如果你观察一个正在运行的自动化,会很明显地看到发生了什么:鼠标跳来跳去,字段瞬间被填满等等。<p>Rotunda试图解决这个问题。它的突出特点:<p>- 逼真的鼠标移动和键盘命令模拟,由我过去一周的个人时间模式训练的RNN提供支持。(仍然对选择加入键盘记录器感到奇怪,但就这样吧)<p>- 不会谎报其主机规格,只对一些客户端细节撒谎。当你在画布像素或音频管道中添加噪声时,隐身浏览器太容易被统计标记了。<p>- 它在你的本地设备上运行,具有CLI或Playwright API,可供Claude、Codex或你今天使用的任何工具使用。<p>- 使用代理框架修补现代Firefox(150),以保持其随时间更新<p>GitHub上的MPL-2.0许可证:<a href="https://github.com/monkeysee-ai/rotunda" rel="nofollow">https://github.com/monkeysee-ai/rotunda</a><p>关于设计选择的更长篇幅的介绍:<a href="https://pierce.dev/notes/a-browser-for-agents" rel="nofollow">https://pierce.dev/notes/a-browser-for-agents</a><p>也请查看网站上的演示!<a href="https://www.rotunda.sh/" rel="nofollow">https://www.rotunda.sh/</a><p>对这个结果感到非常兴奋,但我们还处于早期阶段。试一试,请标记任何问题!