Agent专用浏览器架构:ego-lite用JS函数批量执行和内核级Snapshot穿透iframe
让Agent操作浏览器说起来简单,做起来全是坑:登录不了、验证码过不去、SSO重定向失败,Agent还要和你在同一个浏览器里抢夺标签页,鼠标飞来飞去。
之前用过Browser-Use,配置环境要半天;试过agent-browser,登录态很难带过去。
ego-lite 是一个把浏览器重新做了一遍的项目。它在GitHub上已有8500个Star。
它是一个专为Agent设计的Chromium浏览器。
和其他方案的差异在于,它本身就是一个浏览器,Agent可以直接在你的登录态中工作。Dev.to上有人评价说,它回答了一个很实际的问题:你的电脑,能不能让AI助手安全访问你已经登录的浏览器?
实际使用体验
以前要一个个切标签,手动登录每个SaaS后台。现在只需要在Agent对话就行,Agent自己打开ego-lite,在自己的Space里开始干活。
它独立开一个Space跳到页面上,因为之前一键迁移了Chrome数据,直接就是登录状态。然后自动读取网页内容,不需要手动复制粘贴,Agent直接抓取价格信息和功能列表写入本地文件。同一个操作可以在5个Space中同时进行——同时打开五个网页,Agent在后台工作,你可以在前台正常浏览网页,鼠标不动、标签不丢、互不干扰。
也可以直接在Claude Code里看结果,比如让它找小红书昨天最热门的美食图文,很快就能整理好。
技术原理
01 代码控制
目前的浏览器自动化工具是逐条执行的——执行两行命令,观察结果,然后继续。ego-lite把能力暴露为JavaScript函数,Agent写一个JS就可以连续执行多个步骤。传输层使用Chrome DevTools Protocol直接连接到Chromium,不需要Puppeteer或者Playwright,唯一的外部依赖是轻量级的JavaScript解析器。Agent和浏览器之间的往返次数大大减少,一次写好脚本就跑到底。复杂任务比agent-browser快2.5倍,token消耗也更少。这个设计得到了HN用户的称赞,说是正确的架构选择。
02 空间隔离,多Agent并行
每个Agent都有自己的Space,独立的标签页、Cookie、存储空间,但会继承你的登录状态。Claude Code可以在10个Space中处理客户线索,Codex在5个Space中抓取热门新闻,它们不会打架也不会抢走你的标签页。任务结束自动交还控制权,全程你该干嘛干嘛。
03 Chrome数据一键迁移
第一次启动时,ego-lite会扫描本地的agent并自动写入skill,一键导入Chrome浏览器的书签、密码、插件、Cookie等信息。Agent不会因为验证码或SSO被卡住,之前登录过的所有网站都可以直接使用。仓库中还包含GitHub、Google、X等站点的知识包,比如GitHub的知识包知道怎么翻看commit记录,X的知道怎么滚动时间轴,踩过一次的坑不会再踩第二次。
04 内核级语义Snapshot
Snapshot直接在定制的Chromium引擎内核层上构建,没有用外挂JS,可以穿过跨域iframe、shadow DOM、Stripe和Salesforce等第三方组件。普通web fetch无法读取的内容在这里都可以读到,Agent不需要对不存在的东西反复尝试浪费Token。像Stripe的支付组件、Salesforce的CRM界面这些重型JS页面,靠普通抓取根本读不全,Snapshot可以直接获取渲染完成后的整个DOM。
安装方式
目前只有macOS版,Windows和Linux在roadmap上。macOS用户直接下载DMG安装。
一行命令加skill,或者把指令丢给Agent让它自己来:
npx skills add citrolabs/ego-lite
安装好之后,在Agent CLI中输入 /ego-browser 加上任务描述,Agent就会自动完成。第一次启动会问是否迁移Chrome数据,选择"是"即可,登录状态、扩展、书签等都一并带过去。
注意事项
- 平台限制:目前仅支持macOS,其他系统用户还需等待
- 2.5倍提速是官方宣称的数据,没有第三方独立基准测试验证,可以自己跑一下看实际效果
- 迁移Chrome数据虽然方便,但也意味着必须完全信任新的浏览器
小结
ego-lite没有对现有框架进行修补完善,而是在"浏览器要同时服务于人和AI Agent"的起点上重新设计,这个思路本身就有价值。项目今年4月才创建,等到Windows和Linux版本出来后,用户量应该还会增长。
开源地址:https://github.com/citrolabs/ego-lite