GitHub: https://github.com/Yuzc-001/grasp
一个让人抓狂的问题
你让 AI 帮你自动填个表单,配置好工具,第二天——AI 又在问你要账号密码。
因为它的浏览器每次启动都“失忆”:所有登录状态、Cookie、会话,全部清空。你得重新登录,重新过验证码,重新点“记住我”。
云端浏览器?数据上传到别人服务器,访问不了内网,还要按月付费。\
本地 Playwright?配置文件写到手软,每次启动还是白板。
AI 明明能记住对话上下文,为什么不能记住它登录过的网站?
一个简单到极致的想法
能不能给 AI 开一个专属浏览器?
就像你自己的 Chrome——登录一次,下次打开还在。但这个浏览器只属于 AI,和你的完全隔离。
这就是 Grasp。
v0.5.2 完全重塑,解决了三个核心问题:
1. 让 AI 的浏览器“记得住事儿”
Grasp 为 AI 创建独立的 Chrome 配置文件 chrome-grasp。你的 Chrome 还是你的,AI 的是 AI 的。
登录一次,永久保存。 Cookie、会话、扩展,全都在。
第一次运行 grasp connect,它打开浏览器,你登录需要的网站,然后关掉。从此 AI 每次启动都是登录状态。
这不是黑科技,就是个简单想法——但之前没人这么做。
2. 让 AI 看网页不烧钱
传统方案把整个 HTML 扔给模型:几万字符的 <div>、<span>、CSS 类名、广告代码……模型从这堆东西里找“登录按钮”,就像在字典里找电话号码。
Grasp 给的是语义地图:
[B1] "提交订单" button
[I1] "邮箱地址" input
[L1] "用户协议" link
模型一眼看懂:“点 [B1]”。Token 消耗降 90%+,不是压缩,是改变 AI 理解网页的方式。
3. 让 AI 操作像真人
传统工具用 element.click()——瞬间完成,无轨迹,无偏移。网站一看就知道:机器人。
Grasp 模拟真实人类:
-
点击:鼠标曲线移动,15 步插值,落点随机偏移
-
滚动:5 个滚轮事件,20-60ms 随机间隔
-
打字:每个字符 30-80ms 延迟
通过 Chrome DevTools Protocol 发送,OS 级真实事件。网站看到的,就是正常用户。
五分钟上手
npm install -g grasp
grasp connect
第一次运行会打开 chrome-grasp 浏览器,登录你需要的网站,然后关掉。
配置文件(~/.codex/config.toml 或对应客户端):
[mcp.grasp]
command = "grasp"
args = ["mcp"]
完成。AI 现在可以:导航、点击、输入、滚动、截图、管理标签页。而且每次启动都是登录状态。
它能做什么?
自动化重复工作 - 填表单、提交工单、检查更新,登录一次就不用管\
访问内网系统 - 本地运行,可以访问公司内网、VPN 后的服务\
自动化测试 - 保持登录状态跑测试,不用每次重新认证\
数据采集 - 支持 SSO、2FA,会话永久保存
为什么开源?
因为浏览器自动化涉及你的账号、密码、Cookie,这些不应该经过别人的服务器。
MIT 协议,完全本地运行,无云后端,无需注册。代码开源,可审计每一行。
你的数据,只在你的电脑和浏览器之间。
一些细节
-
grasp status - 查看连接状态
-
grasp logs --follow - 实时查看 AI 在做什么
-
安全模式 - 默认开启,拦截高风险操作(如“删除账号”)
-
审计日志 - 所有操作记录在 ~/.grasp/audit.log
这是第四个作品
之前分享了 vibe-101-publish、DriveMind 和 Skill Router,很多佬给了支持。
Grasp 是第四个,也是我觉得最“理所当然”的——AI 既然能记住对话,为什么不能记住登录状态?
刚刚完全重塑(v0.5.2),还在快速迭代。有需求或问题,欢迎提 Issue。
后面还有更多,慢慢来。
GitHub: https://github.com/Yuzc-001/grasp \
个人主页: https://github.com/Yuzc-001
如果有帮助,给个 Star ⭐
Grasp - 给 AI 一个真正属于它的浏览器。