参考 / Reference
更新日志
每个版本改了什么、为什么改——这一页是完整的版本历史, 按次版本号分组、新到旧排列。chrome-use 自己的功能开发都在 v1.x 系列;再往前, 还有重塑品牌前的 fork 阶段,以及定期从上游 agent-browser 合并进来的版本号。
ℹ️ 逐条 commit diff:GitHub Releases
这一页按版本汇总了每次改动的要点。想看某个版本的完整 diff,去
GitHub Releases。
v1.5.x
- v1.5.116(2026-09-10):ab-connect 0.5.25 带来一扇通用的门
ABExt.call:CLI 想调chrome.tabs / tabGroups / windows / downloads / webNavigation的白名单方法不再需要新的扩展版本;改动类调用只允许作用在 agent 自己建的标签上,adopted 标签只读,windows.create/remove不开,debugger / identity / storage / runtime / management永远不经这扇门。ABExt.state一次返回扩展持有、拥有与配置的全部状态。CLI 新增extension call <ns.method> [json]与extension state;老扩展上报「需要 0.5.25」而不是 Chrome 的 wasn't found。manifest 权限不变,升级不触发重新授权。文档站新增 ChooseBrowser 推广页(中/英),README 与文档里的权限数改为实际的 12 项。 - v1.5.115(2026-09-10):读完 Codex 自带 browser-use 插件的 26 份文档后落地的一批。核心循环改为一步一次往返:
click @e3 --observe+snapshot -i --diff;新增core/behaviour参考(没动先读why:、不退到坐标、不open当前页、查找一次直达、页面的权威信号即答案、keep只留交付物、空 tab list 不是断连);trust-boundaries加副作用三级确认(交回用户 / 每次确认 / 任务预批准即可)。--observe在一次点击换掉整页时返回新树而不是「旧树全删 + 新树全增」的 diff;snapshot --diff无变化时 stdout 打(no change since the last snapshot);console --level/--filter在--limit之前收窄,采集关闭时不再静默返回空。技能桩描述改以「Browser automation in the user's real, logged-in Chrome」开头,并写明 Codex 上要靠AGENTS.md一行指路。修复:嵌入的 skill 内容按指纹重新解压,同版本重建不再读到旧缓存。README 精简到约 290 行。 - v1.5.114(2026-09-09):macOS 产物现在带 Developer ID 签名并已公证:
spctl从 rejected 变为 accepted,浏览器下载(带 quarantine)的副本可以直接运行(#283)。快照里重名的控件补上能区分彼此的文字,三个一样的「进入」变成context="飞行棋"等;只在重名时补,且补了还一样就丢弃(#284)。--observe在 delta 为空时说清是哪种情况(禁用/无框/被遮挡/在视口外/一切正常),并明确「空 delta 不等于失败」(#277)。report自己说清包含与排除什么、截图是独立决定,并自动带上扩展与中继状态(#278)。tabs报出 relay 实际附着的标签,与会话钉的不一致时出声(需要 ab-connect 0.5.24,#279)。修复:无目标的type是用法错误而不是「选择器没匹配」(#282);fill在 onFocus 会重置的 React combobox 上不再丢值(#282);策略强装的扩展不再被指向一个不存在的 Update 按钮(#284)。 - v1.5.113(2026-09-09):扩展 0.5.23 自己催 Chrome 查更新、并在没有标签附着时就地应用(不需要新权限,#272);中继失败时如果装的扩展落后于商店会在错误里说出来(只在失败路径、且确实有可装的新版时,#271);
--observe输出带target(session / tabId / targetId / url,只有 id 没有账号),调用方能看出目标有没有被换过(#270);frame <序号>可用,之前传frames打印的编号会抛 querySelector 原文(#269)。修复:do对判不出成败的动作(showMenu/toggle/ 步进)不再打 ✓,改标·且confirmed: null(#266);显式--browser/--cdp重绑失败时保住原绑定、不再把会话丢在about:blank(#268);访问被拒的错误说出钉在哪个标签、URL 是什么(#267);socket 路径超限说清 103 字节花在哪,不再责怪用户没起过的会话名(#265)。 - v1.5.112(2026-09-09):
open --browser <profile> --remember请求 ChooseBrowser 把该站点长期指向该 profile——只提议,ChooseBrowser 弹窗确认后才保存;请求无效时在导航前拒绝并说明原因;需要 ChooseBrowser 0.2.1+(#257)。doctor报告 ChooseBrowser 规则读自哪条路径、几条、版本能否读、是否有另一份未被读、装的 app 是否接受规则请求(#253、#257)。session stop --force在标签不可达时丢弃归属记录、不关标签(#263)。修复:上传只触发一次change,不再在 React/Livewire 上多出一条卡在 0% 的记录(#261);read <url>遇到客户端渲染的壳不再返回空页,而是拒绝并给出open+text路径(#262);升级后session stop的提示不再要求重连已不存在的浏览器,chrome-extension://访问错误提示可能是别的 session daemon 占着标签(#263)。 - v1.5.111(2026-09-09):交互快照为局部控件保留价格等上下文,并去掉商品链接上的重复说明;状态回执直接出现在动作观察中,可点击的状态节点保留引用。修复其他 profile 的 relay 影响独立浏览器拖拽方式的问题(#246)。打开网站可使用现有 ChooseBrowser 规则选择已连接的 profile,显式
--browser优先,可用--no-choosebrowser关闭查询;规则目标不可用时退回正常选择,仍需核实账号(#247)。发布前先校验版本与说明(#249)。贡献者:@leeguooooo。 - v1.5.109(2026-09-09):中继恢复不再自动重复结果未知的动作;观察捕获失败会明确标记完整、部分或不可用,保留动作结果,不再伪造页面清空。修复子框架错误、恢复后的标签引用与生命周期锁释放;受限扩展内容会返回明确的访问错误;导航会提前识别已确认的调试器访问拒绝,同时保留正常页面加载等待。请求摘要限制输出大小并报告省略数;新增
CHROME_USE_RELAY_DIR隔离中继发现。内置 ab-connect 0.5.22 在确认主机响应后才显示已连接,扩展商店发布单独进行(#242)。贡献者:@leeguooooo。 - v1.5.101(2026-09-04)— React dropzone 消费文件并清空或替换 input 后,
upload返回成功与校验提示,不再误报拒绝(#208)。原生select使用平台 setter,并触发 input/change 事件,使受控表单提交选择(#209)。daemon 空闲回收保留外部 Chrome 标签页、URL 与页内状态,显式 close/session stop 仍正常清理(#210)。内置 ab-connect 0.5.20 优先走浏览器级导航,并对同 URL 快速重载环给出恢复建议;App Store Connect 仍待真实登录态回归,扩展商店上架单独进行(#211)。新增浏览器与扩展回归测试。贡献者:@leeguooooo。 - v1.5.100(2026-09-02)— 一批交互可靠性修复(#202 到 #206)。relay 下 DOM 派发的点击现在会像真实点击一样移动键盘焦点,
click后接press不再落到上一个字段(#204)。type会读回字段值,页面改写或丢弃输入时打 ⚠ 警告并给出readBack;fill校验失败会同时引用写入值和读回值,并指出页面过滤了非拉丁字符(#203)。press对只依赖页面监听器才有效果的键(文本框上的方向键、Escape、表单外 input 上的 Enter)探测 keydown/keyup/keypress 监听器,没有就警告;裸 XPath(//…)自动识别,text()未命中时解释只匹配第一个文本节点;「Element not found」保留选择器和具体诊断(#202)。同一 agent 换目录后复用已有 session,「Unknown ref」会说明是哪个 session、有没有任何 ref(#205)。无障碍树为空时snapshot自动改走穿透 shadow root 的 DOM 遍历,snapshot --dom可强制(#206)。内置 ab-connect 升至 0.5.19:标签 30 秒无活动即释放调试器,横幅不再常驻,下一条命令自动重连(#201,等商店上架)。贡献者:@leeguooooo。 - v1.5.99(2026-08-31)—
screenshot --annotate不再清空当前 session 的 ref map;同一文档内未变化的节点会沿用快照刚给出的@ref。原问题的最小复现已用本版源码验证:快照里的@e82在标注截图中仍为@e82,随后点击成功;#197 等正式 v1.5.99 安装复测后关闭。扩展 relay 在Page.navigate被页面 renderer 卡住时改走浏览器级导航,不提高全局 8 秒预算;重连会清掉 Chrome 中已不存在的幽灵标签,tab inspect会优先解析仍存活的新 tabId(修复 #193、#196)。macOS 的 launched Chrome 默认禁用MacAppCodeSignClone,避免异常退出后留下会随 Chrome 更新膨胀的 APFS 克隆(修复 #195)。内置 ab-connect 升至 0.5.18。贡献者:@leeguooooo。 - v1.5.98(2026-08-27)— relay 的 8 秒命令超时补充诊断上下文:错误现在包含同时在飞的命令数、最老命令的等待时间和当前 MV3 service worker 的存活时间,并在扩展侧保留最近 20 条记录。数据可以区分单标签 renderer 卡死、relay 队头阻塞和 worker 生命周期问题;本版没有猜测性调高超时常量(#193)。贡献者:@leeguooooo。
- v1.5.97(2026-08-25)— 外部 Chrome 与扩展连接的 Chrome 标签现在明确区分
created、adopted、foreign三种所有权。session 可以驱动自己创建或明确 adopt 的标签,但只能关闭自己创建的标签;adopt 永远不授予删除权。创建过的 target ID 按 session 与浏览器 endpoint 持久化,daemon 重启后仍能清理遗留标签,同时不会把用户被 adopt 的标签误认成自己创建。只有Target.closeTarget调用成功且返回success: true后才移除删除权记录。选择已有 target 现在需要先执行tab adopt <targetId>,再执行tab select。贡献者:@forsakesoul、@leeguooooo。 - v1.5.96(2026-08-25)— 撤回 v1.5.95 的一处所有权判定:该版本在 daemon 重连时把 relay 作用域内的每个标签都认领为「本 session 创建」,据以在
session stop时关闭它们。依据不成立 —— 决定作用域的是 relay 自己的target_group,而Target.attachToTarget(正是adopt发出的调用)会把目标重新打进 adopter 的组,因此用户被 adopt 的标签也在该列表内,daemon 重启丢掉内存所有权后两者无法区分。后果是 adopt 用户标签 → 重启 →session stop可能关掉用户的页面。现已改为重连一律不认领,等所有权被持久化记录之后再恢复。v1.5.95 的用户请升级。 #192 的根因修复不受影响并保留:session stop的宽限期 1 秒→8 秒(relay 单命令预算是 8 秒,原先必然半路 SIGKILL),清理循环改为并发并共用 5 秒总预算(原先顺序 await,一个卡住的标签会吃掉其余标签的清理机会)。贡献者:@forsakesoul(发现)、@leeguooooo。 - v1.5.95(2026-08-24)— 命名 session 反复重启不再把标签遗留在用户的 Chrome 里,长跑采集任务不会再把内存吃到 20GB(修复 #192)。清理逻辑本来就有,坏在两处:
session stop发完 SIGTERM 只等 1 秒就 SIGKILL,而每个Target.closeTarget要走 relay、relay 的单命令预算是 8 秒,于是 daemon 必然在关标签的半路被硬杀(宽限期改为 8 秒;轮询一发现进程退出就返回,健康路径仍是零点几秒);清理循环原本顺序await,第一个卡住的标签会吃掉后面所有标签的清理机会,现在并发发出并共用一个 5 秒总预算。第三处是重启后 daemon 已经不认识自己上一世创建的标签——created_targets只活在进程内存里;现在按 Chrome 标签组认领,组标题即 session 名,而进组路径只有Target.createTarget带agentGroup与ABExt.duplicateTab两条(adopt既不入组也不标记所有权),因此组内标签必然由同名 session 创建;没有 relay 作用域时一律不认领,避免把用户的标签误判成自己的。extension status的版本落后提示按安装方式分流:策略强装的扩展没有单独的更新按钮、权限由 Chrome 自动授予,不再让这类用户去点一个在灰掉的行里根本不存在的控件(修复 #190)。贡献者:@leeguooooo。 - v1.5.94(2026-08-24)—
screenshot的纯色兜底检测:#184 的 URL 漂移守卫只拦得住「捕获会话自己承认漂移」的情形——下一次eval读回的 URL 是对的,像素却来自别处时守卫不响,agent 仍拿到一个 ✓ 加一张空白图。现在整张图只有一种颜色、而页面报告了真实布局高度和文字长度时,命令改打 ⚠ 并给出可执行的警告;[selector]与--clip的局部截图及--annotate豁免(后者不缩放,纯色扫描会去解码一张原始尺寸的整页图,代价不划算)(修复 #184)。接入文档不再只列 Claude Code / Cursor / Codex 三个名字——把判断标准(能跑 shell 就装 CLI+技能,不能跑 shell 就配 MCP server)写进 MCP 页,名单补上 CodeBuddy / Trae / Windsurf / Cline(修复 #172)。ab-connect 扩展发布 0.5.17 并上架 Chrome Web Store,随本版 bundled 版本追平,extension status不再对刚发布的版本打误报(#189)。贡献者:@leeguooooo。 - v1.5.93(2026-08-20)— macOS 静默装扩展的策略描述文件会让 Chrome 进入「由贵单位管理」状态,此前从未说明代价:Chrome 停用并锁死安全 DNS(DoH),扩展也被标成「由管理员安装」、没有手动更新/删除按钮。新增
extension install --no-profile完全不写策略描述文件、走商店安装;批准前把代价和退出命令打在选项下面;extension status/uninstall在策略生效时补上同样的因果说明(修复 #187)。本仓库源码里的扩展版本经常跑在 Web Store 已发布版本前面(一度 0.5.16 vs 已发布 0.5.12),导致status/doctor对所有商店用户误报 OUTDATED 并指向一个不存在的更新;现在按需问一次商店 updatecheck 接口,区分「确实落后」「已是最新发布版」「领先商店的中间开发版」「问不到商店」四种情况(修复 #186)。贡献者:@leeguooooo。 - v1.5.92(2026-08-19)— 在扩展 relay 上,页面注入的扩展框架会让
screenshot的 CDP session 落到扩展自己的about:blank渲染器,而 tabs/eval/get text 仍报告正确页面——结果是 ✓ 加一张空白图,agent 无从怀疑。截图前比对「会话正在驱动的标签页 URL」与「捕获 session 上真实的location.href」,不一致即判为漂移,报错退出并给出重新绑定标签页的指令,不再写出文件(修复 #184)。Windows 上 Chrome 的用户数据在LOCALAPPDATA而非config_dir()返回的 Roaming AppData,导致 relay 明明连着一个 profile,extension status却报「0 profiles found」;扩展版本落后时也不再打一个让人自己去 diff 版本号的 ✓,改为明确标 OUTDATED(修复 #183)。贡献者:@leeguooooo。 - v1.5.91(2026-08-13)—
test用字面量flags.session == "default"判断用户是否显式指定了会话,两头都错:--session default和不传完全无法区分,agent 自动派生的会话名又被当成显式指定,导致test suite.yaml --session default静默启一个全新的隔离浏览器,连接好的真实 Chrome 登录态一个都用不上。改为在Flags上记录 session 是否来自用户输入(--session/AGENT_BROWSER_SESSION/ 配置文件),test据此决定复用会话还是自建cu-test,并只关闭自己启动的浏览器;--browser/--as/--as-strict现在会转发给套件的每个 step(修复 #181)。贡献者:@leeguooooo。 - v1.5.90(2026-08-12)—
SessionLifecycleLock/RelayRecoveryLock在 Windows 上是不加锁的 stub,两个并发调用会各自起一个 daemon 抢占同一个 socket/端口文件;改用std::fs::File::lock(Unix flock / Windows LockFileEx)做真正的跨平台 advisory lock,等待锁时会先打印一行提示避免被误认成卡死(修复 #177)。MCP 的screenshot工具此前只回一个服务器本地路径,客户端根本打不开——改为把截图内联成 image block(magic-byte MIME 嗅探 + 2MB 上限,可用CHROME_USE_MCP_MAX_INLINE_IMAGE_BYTES覆盖或关闭)(修复 #178)。DOM 派发的点击不产生镜像Input.dispatchMouseEvent,页面上的光标此前完全不会动,点击看起来像什么都没发生;现在显式驱动光标坐标(复用已解析元素的getBoundingClientRect,不为纯装饰多做一次 resolve),并在截图前后隐藏光标,避免被烤进 agent 随后读取的图片(修复 #179)。两个 agent 共用一个终端 tab 时会共享WT_SESSION/TMUX_PANE,从而挤到同一个 daemon 上抢标签页;会话名现在按三级派生:显式 agent id →<PRODUCT>_SESSION_ID约定扫描 → 终端 ID,doctor会说明当前会话名来自哪个环境变量(修复 #180)。贡献者:@Ishannaik、@leeguooooo。 - v1.5.89(2026-08-10)—
download-url此前直接拒绝blob:scheme——blob URL 属于创建它的 document、扩展的chrome.downloadsAPI 够不到,页面上已经渲染出来的资源(比如 canvas 导出前的原始文件)一个字节都取不回来。现在在页面内 fetch 字节直接落盘,字节级一致(不像toDataURL那样重新编码、静默丢掉 C2PA 之类的元数据);顶层 frame fetch 不到时逐个子 frame 重试,并在结果里报告字节来自哪个 frame;32MB 上限(经 base64 塞进单条 CDP 消息,过大会挂会话而不是下载失败)(修复 #169)。每日版本检查的升级提示原本和真错误共用 stderr,包装 chrome-use 的工具"报告失败并附上 stderr"时会混进无关的家务事;现在只在人能看到的地方打印(TTY + 非--json+ 未设CHROME_USE_NO_UPDATE_NOTICE),后台检查和自动升级本身不受影响(修复 #170)。贡献者:@leeguooooo。 - v1.5.88(2026-08-10)—
fill结尾会el.blur()触发站点的 blur 校验,焦点因此掉回<body>;紧接着的press Enter派发到 document,表单永远不会提交,CLI 却仍打印✓ Done。fill现在把焦点还给原字段(仅当 blur 没有把焦点主动交给别的元素时才还,需要跨 shadow root 判断真正的 activeElement);press新增--selector(别名--on)先聚焦目标,结果带上target,Enter 落在<body>上会给出警告(方向键/Tab/Backspace 落空是正常行为,不告警);press <chord> --hold此前会丢失修饰符,按住的其实是光秃秃的按键却原样报回组合键,现已修复(修复 #167)。贡献者:@leeguooooo。 - v1.5.87(2026-08-05)— 修复
@ref会静默点到别的元素:身份校验探针超时、失败或节点不在无障碍树里时,以前都当成「校验通过」直接点缓存节点,而扩展 relay 的多跳传输让 1 秒预算几乎必然超时,于是click @e273打开了不相干的消息菜单却打印Done。现在探针预算按传输方式区分(直连 CDP 2 秒、relay 5 秒,可用AGENT_BROWSER_VERIFY_REF_TIMEOUT_MS调整),无法确认的 ref 会先按快照里的 role+name 重新锚定(同一节点仍匹配就继续用它)、再按指纹重定位,两者都不成立就明确报错——不再有「先点了再说」的分支。指纹重定位新增无障碍名称下限:role/祖先/兄弟等结构信号本身就值 0.60,两个同层<button>光靠形状就能压线 0.70,导致button "我的 agent"被重定位到消息溢出按钮上;名称差异过大的候选现在直接排除,轻微改名(Submit → Submit now)仍可自愈。跨快照复用@ref也要求 role+name 未变,节点被 React 交给另一个组件后会拿到新 ref(修复 #162)。技能 stub 去掉hidden: true:pi 等 harness 把它读作「永不加载」,导致 chrome-use 对 agent 完全隐身;CLI 内部改按目录判定,stub 描述长度也加了 1024 字符上限的回归测试(修复 #165、#164)。贡献者:@leeguooooo、@beilo。 - v1.5.86(2026-07-31)— 修复旧版 ab-connect 让
tab select的存活探针失败时被误报为 renderer 无响应:警告现在会显示当前扩展与 CLI 内置扩展版本,并明确说明探针失败本身不能证明页面已卡死;旧扩展调用tab inspect时不再泄露原始-32601CDP 错误,而是给出最低版本 0.5.16、当前版本、内置版本以及chrome://extensions更新或重载步骤(修复 #157)。贡献者:@leeguooooo。 - v1.5.85(2026-07-31)— 真实 Chrome 扩展会话的
record start直接录制当前会话自有标签,不再调用被禁止的Target.createBrowserContext(修复 #151);snapshot -i为非默认 cursor、id、data-testid、精简 class 与无名控件 fallback 名称补充定位线索,同一 DOM 节点的@ref在连续快照和模态框增删间保持稳定,导航或切换标签时才硬重置(修复 #154、#155);裸find "自然语言描述"返回带语义、上下文、selector 与 score 的候选列表,绝不自动操作(修复 #156);ab-connect 0.5.16 用浏览器级目标清单重新附加白屏/卡死标签,不再依赖无响应 renderer 回传身份,新增tab select、会话内无导航tab adopt与不执行页面 JavaScript 的tab inspect,并把 renderer timeout 与标签消失明确区分(修复 #157)。贡献者:@leeguooooo。 - v1.5.84(2026-07-29)— 修复会话 daemon 进程仍存活、但 Unix socket 已消失后永久报
No such file or directory (os error 2)的问题:同一会话的 relay 拆建与 daemon 启动现在由跨进程锁串行化,全局 native-host 恢复也只允许一个进程执行;下一条浏览器命令会等待并发启动窗口、回收不可达 worker,再为同一会话启动干净的新 daemon。若 socket 在命令执行途中消失,错误会给出准确 endpoint、停止孤儿进程、清理 sidecar,并提示重跑命令(修复 #152)。贡献者:@leeguooooo。 - v1.5.83(2026-07-28)— 修复多个 Codex 任务共用裸
defaultdaemon、互相覆盖活动标签的问题:未显式指定会话时,现在会识别CODEX_THREAD_ID,为每个任务派生独立标签组。relay 会话固定的标签消失时,chrome-use 会保留该 target 作为恢复锚点,只允许重新挂回同一 target 或明确失败,不再静默切到剩余的about:blankscratch 标签;并发混合执行eval与snapshot时可保住 SPA 的内存登录态(修复 #149)。贡献者:@leeguooooo。 - v1.5.82(2026-07-28)— 完成 v1.5.81 的审查收尾:
status现在同时验证 native-host launcher 是否指向可执行文件,并在 JSON 中提供extension.hostHealthy;自动重置卡住 daemon 后只给出一致的下一步提示;ab-connect 0.5.15 用稳定的RelayTimeoutError标识超时;confirm E2E 与命令帮助同步修正。贡献者:@leeguooooo。 - v1.5.81(2026-07-28)— 新增无需 daemon 的
chrome-use status,统一报告 CLI、扩展、中继、profile 与会话健康(修复 #145);click 触发原生confirm()/prompt()时立即返回待处理 dialog,同一会话可继续 accept 或 dismiss(修复 #144);ab-connect 0.5.14 为 Chrome debugger 调用增加 8 秒超时,旧扩展导致 socket 超时时 CLI 会自动重置卡住的 daemon,HTTP→HTTPS 跨进程恢复不再无限挂起(修复 #146);官方 chrome-use-sites 源新增 Twitter search/thread engagement schema,稳定返回 replies、bookmarks 与数字 views(修复 #124)。贡献者:@leeguooooo。 - v1.5.80(2026-07-26)— 修复
session stop [name]与session prune被会话所有权命令提前截获的问题;两条生命周期命令重新路由到守护进程处理器,session --help现在完整区分所有权与生命周期操作,命名停止还会先校验会话名再触碰守护进程状态(#142,修复 #140)。贡献者:@leeguooooo。 - v1.5.79(2026-07-26)— 新增 Nix flake,提供 package、开发 shell、NixOS module 与 home-manager module(#136)。原生「复制标签页」事务现在有明确生命周期边界,超时后的扩展回复不会继续存活或污染后续会话状态(#137)。
fill现在通过 Monaco 的全局或 AMD model API 定位编辑器,执行原子的setValue或可信剪贴板兜底,并在返回成功前校验权威 model 回读;Synology DSM 编辑器“显示成功但内容为空”的问题现在会安全失败(#139)。贡献者:@M4jor-Tom、@forsakesoul、@leeguooooo。 - v1.5.78(2026-07-24)— 新增原生下载能力:
download-url、download-start、downloads及对应 MCP 工具,动态链接下载不再误导航当前标签页;本地服务新增受 loopback / origin 保护的/api/v1,CLI、MCP、daemon 与 HTTP 错误统一提供稳定的code/retryable字段(#132)。network requests --type websocket可观察页面与跨域 iframe 的 WebSocket 连接元数据,不记录帧载荷(#131)。site update现在默认同步社区源epiral/bb-sites与官方源leeguooooo/chrome-use-sites,无需手动添加(#133)。 - v1.5.77(2026-07-21)— 站点适配器错误现在返回非零退出码;安装器兼容无
/dev/tty的非交互环境;保留全局参数名冲突时给出明确提示;大型页面的Page.navigate超时在确认已完成导航后降级为警告;新增可配置的组织私有适配器源与site sources/add/remove(#122、#123、#125、#126、#127)。 - v1.5.76(2026-07-16)— 新增
chrome-use tab duplicate [ref] [--label <name>]:用 Chrome 原生「复制标签页」(保留完整导航历史),并同步暴露到chrome_use_tabsMCP。仅在扩展连接的真实 Chrome 上可用——--launch/裸 CDP/Lightpanda/云 provider 与旧扩展一律明确报错,绝不用 URL 重建兜底(那会丢失 duplicate 语义);扩展通过hello声明nativeTabDuplicate能力协商。复制出的标签页成为 chrome-use 内部 active target,同时恢复用户原本聚焦的窗口与标签页,输出只给 tab/target id 不泄露 URL;attach/grouping/setup 任一步失败都会回滚孤儿标签页。 - v1.5.75(2026-07-10)— 修复扩展 relay 自动连接在新会话中重复创建两个
about:blank标签页。连接现在复用目标发现阶段创建的 session-owned scratch tab,仅在页面数为零时创建兜底页;纯读取、状态查询或导航前失败不再留下成对空白页。 - v1.5.74(2026-07-08)— 技能分发 v2:新增
chrome-use skill install统一入口,委托 skills.sh(npx skills add … -g)跨 20+ runner 装技能,自己绝不写 runner 目录;curl … | sh装完二进制顺带装技能,并以doctor自检 + 一条可直接粘贴给 agent 的首条 prompt 收尾;doctor新增只读探测「agent 技能是否已装」(warn 不 fail);stub 路由表从 5 个场景补齐到 11 个(canvas/network/react/real-chrome/sessions/test 等按症状路由)。另修:skills/chrome-use/SKILL.md的description是含:的非法 YAML,导致npx skills add误装成core/test等而非chrome-use——改为折叠块标量修复。 - v1.5.73(2026-07-07)— 四个 issue 修复:
extract --schema对普通重复列表不再静默返回[](自动探测重复容器 + 未命中给诊断 + 接受数组 schema,#96);site适配器运行前注入家族_helper(twitter/* 等不再ReferenceError,#99);console --limit N只看最近 N 条(#110);skill 真分层(<!-- full -->标记,默认精简、--full全量)+ 去重 +session handoff同步进 sessions skill(#100)。 - v1.5.72(2026-07-07)— 原生命令扛 shadow-DOM 重站:
select/fill现在能处理 react-select、模块作用域内的 Monaco、@ref 落在包裹元素的受控输入(#105);对 Element-Plus 弹窗更利落——snapshot -i给顶层 modal/drawer 内控件加modal标记、选择器未命中给最接近文本匹配提示、新增diagnose排查空白 SPA(#90)。curl … | sh一条命令装扩展并处理调试横幅(装机时征得同意 → 运行时自动静默)。skill 引导 agent 优先用read/click/fill等命令而非手搓eval。 - v1.5.71(2026-07-07)— 文档:新增「它怎么工作」(含 SVG 架构图)、「血统与上游」、「单次成型脚本」三章,并对整站文档做了一轮审计修订。无功能改动。
- v1.5.70(2026-07-07)—
chrome-use script单次成型脚本(#101):JSON op-list(值总线 + 循环 + 断言)与同步 JS(cu.*助手)两种写法,守护进程内 boa 引擎扛硬跳转,一次 tool call 跑完多步。另:connect 检测企业策略拦截扩展并引导逃生口;后台自动更新(CHROME_USE_AUTO_UPGRADE=1);一键 Web Store 安装。 - v1.5.69(2026-07-07)—
snapshot -i合并 presentation-role / AX-stripped 跨域 iframe(reCAPTCHA 这类,#92);snapshot/eval 先 resync 防漂到 about:blank(#93);未命名交互控件按 placeholder / 邻近 label 命名(#90.2);screenshot resync 抓活动标签(#91)。 - v1.5.68(2026-07-02)— 会话所有权 + 人工接管:
session handoff/resume/status/list(#89,从 ego-lite 搬);whoami每站身份 + 全局--as账号守卫。 - v1.5.67(2026-07-02)— 扩展多 profile 引导安装:枚举所有 profile、检测过期策略、深链设置页 + 等审批 + 自动重启;安装向导 zh/en 本地化;
connect <port>/--cdp换端点时重绑。 - ab-connect 0.5.10(2026-07-06)— 扩展 popup / options 页脚新增
Docs(chrome-use.leeguoo.com)与leeguoo.com链接;消除 native host 断开时打到错误页的Unchecked runtime.lastError: Native host has exited警告(断开本就预期,按需重连,纯观感清理)。 - ab-connect 0.5.9(2026-07-02)— 新增
identity/identity.email权限:hello 握手带上当前 Chrome profile 的登录邮箱,chrome-use browsers能标出每条连接属于哪个账号(多账号下区分"登出" vs "错账号")。邮箱仅走本地 native messaging,不外传。 - v1.5.66(2026-07-02)—
select找不到匹配的<option>时不再默默选不中,改为报错并列出所有可选项;默认操作超时从 30s 降到 25s。 - v1.5.65(2026-07-02)—
network route --set-json结构化编辑响应 JSON 字段;新增chrome-use report一键打包脱敏痛点日志为可粘贴 issue;MCP--tools all(24 工具)。 - v1.5.64(2026-07-01)—
chrome-use mcp:给 Claude Desktop 这类只讲 MCP、不能跑 shell 命令的宿主起一个 stdio MCP 服务器(12 工具核心 profile)。 - v1.5.63(2026-07-01)—
read [url]:把一个 URL(不传参数时是当前标签页)抓取成 agent 可读文本,支持--llms/--outline/--filter/--raw。 - v1.5.62(2026-07-01)— 修复
type --clear/--delay解析;find label现在也匹配aria-label/aria-labelledby。 - v1.5.61(2026-07-01)— React renderer 修复:挑选真正的 react-dom renderer,不再硬编码 id 1(此前在 Next.js 16.3 Turbopack RSC 应用上读到空树)。
- v1.5.60(2026-07-01)—
network route:响应阶段编辑真实响应(状态码/响应头/响应体子串替换)。 - v1.5.59(2026-07-01)—
network route:通过 CDP Fetch 域 mock 响应、改写请求——无需代理、无需证书、不注入 JS。 - v1.5.58(2026-07-01)—
chrome-use test:多账号 YAML 用例支持按 case 切换账号(account:)。 - v1.5.55(2026-06-29)— 摩擦点自动上报(friction auto-reporting)。
- v1.5.54(2026-06-29)— form fill 支持按可见文本选中 select 选项;修复 self-heal 在
--launch路径下失效的问题。 - v1.5.53(2026-06-29)—
form fill --map:批量映射填表。 - v1.5.52(2026-06-29)—
--observe:捕捉 action 前后的 a11y 树差异;补充 auto ref-heal 文档。 - v1.5.51(2026-06-29)— action 守卫
--if-present/--optional。 - v1.5.50(2026-06-29)—
extract --schema:按 schema 结构化抓取为 JSON。 - v1.5.49(2026-06-29)—
expect:断言 + 对应退出码。 - v1.5.48(2026-06-29)— ab-connect 0.5.7:休眠唤醒后通过
chrome.idle自动重连。 - v1.5.47(2026-06-29)— ab-connect 0.5.6:adopt 不再持久化,清除卡住的 debugger 提示条。
- v1.5.46(2026-06-29)— relay 自愈:relay 掉线自动恢复,无需挂起等待或手动重连。
- v1.5.45(2026-06-28)— 修复 adopt-tab 命令解析回归(#68 引入)。
- v1.5.44(2026-06-28)— adopt 改为按需 attach(ext 0.5.5):用户标签页不再出现 debugger 提示条。
- v1.5.43(2026-06-27)— #65
snapshot --filter+ eval 顶层 await 提示。 - v1.5.42(2026-06-27)— #60 浏览器/profile 选择:
browsers列表 +--browser。 - v1.5.41(2026-06-26)— #60 驱动中 profile 可观测性 + #53 canvas/closed-shadow 技能文档。
- v1.5.40(2026-06-26)— #58
eval --frame、reconnect 别名、更可操作的 stale-target 报错。 - v1.5.39(2026-06-26)—
snapshot -i现在能暴露内联表单校验错误。 - v1.5.38(2026-06-26)— #52 标签页路由限定到会话分组内 + CI 格式修复。
- v1.5.37(2026-06-25)— solve-slider 健壮性(等待切片加载)+ 可插拔检测器 hook。
- v1.5.34(2026-06-25)— solve-slider(网易易盾滑块验证码)+ drag 偏移模式。
- v1.5.32(2026-06-24)— sunny 扩展体验优化:更友好的图标、精修 popup、options 页、agent 光标。
- v1.5.31(2026-06-24)— relay tab-drift 时改为大声报错,不再误点错误的标签页。
- v1.5.30(2026-06-24)— relay 掉线提示 + canvas/closed-shadow 技能手册。
- v1.5.29(2026-06-24)— 静音
chrome.debugger提示条 + 修复残留的 about:blank scratch 标签页。 - v1.5.28(2026-06-22)— chrome-use 技能优先做真实联网检查。
- v1.5.27(2026-06-19)— 把 about:blank 清理逻辑限定在 relay 场景。
- v1.5.26(2026-06-18)—
session stop <name>+session prune+ 生命周期文档。 - v1.5.25(2026-06-18)— 默认空闲自动关闭 +
keep:不再留下 scratch 标签页/分组垃圾。 - v1.5.24(2026-06-18)— 修复构建:补上 browser.rs 的 clear_viewport/via_relay + cargo fmt。
- v1.5.23(2026-06-17)—
adopt:无需新开标签页即可驱动已存在的标签页。 - v1.5.22(2026-06-17)— relay 按分组限定
Target.getTargets:恢复弹窗跟随 + 隔离下的跨会话 adopt。 - v1.5.21(2026-06-17)— 富文本编辑器填充、box 中心点、截图降采样、disabled 处理 + 文档(#41-#45)。
- v1.5.20(2026-06-17)—
site:适配器自动同步 + 自动建议触发。 - v1.5.19(2026-06-17)—
site:bb-sites 适配器,把任意站点变成结构化数据 CLI。 - v1.5.18(2026-06-17)— 问题反馈指引 + relay 上
data:URL 的清晰报错。 - v1.5.17(2026-06-17)— 完善多 agent 隔离:点击不再误吞用户标签页/弹出页。
- v1.5.16(2026-06-17)— relay 上的严格多 agent 标签页隔离。
- v1.5.15(2026-06-17)— iframe 内按钮的可信激活。
- v1.5.14(2026-06-17)— 修复 eval await 回归(replMode)+ 默认滚动;CI 转绿(#36, #38)。
- v1.5.13(2026-06-17)— eval replMode(可重复声明 let/const)+ snapshot-first 技能规则(#37, #38)。
- v1.5.12(2026-06-17)— relay 安全的 hover/dblclick/drag、更深的 iframe snapshot、按键事件式输入。
- v1.5.11(2026-06-16)— 跨域 iframe 滚动/点击 +
open自动重新 attach(#35, #36)。 - v1.5.10(2026-06-16)— relay 在线时用 debug-port 启动会给出警告。
- v1.5.9(2026-06-16)— 去除标题里的零宽 unicode 字符 +
screenshot --clip/element。 - v1.5.8(2026-06-16)— 通过扩展 relay 实现文件上传。
- v1.5.7(2026-06-16)—
cf-status:Cloudflare 人机验证 clearance 预检。 - v1.5.6(2026-06-15)— 固定 adopt 的标签页,防止被短暂的 relay 快照误伤。
- v1.5.5(2026-06-15)— connect 模式下远程调试授权弹窗的诊断日志。
- v1.5.4(2026-06-15)—
get text --pierce:穿透 closed shadow DOM(#30)。 - v1.5.3(2026-06-15)—
get text默认跨 frame;#29(sessions/did-you-mean/标签页存活检测);CI changelog 修复。 - v1.5.1(2026-06-15)— 按 frame 提取文本(
get text --all-frames/--main、frames)+ #27,ab-connect 0.4.9 targetId 恢复。 - v1.5.0(2026-06-15)— 文本选择器点击、
get text默认到 body、tab --activate、click --follow/openedTab;fill触发 input/change/blur;close提示文案 +chrome-use current。
v1.4.x
- v1.4.1(2026-06-14)— hold-to-move(完整 keydown/keyup 描述符,#game);要求 ab-connect 0.4.8(#23 重连加固)。
- v1.4.0(2026-06-13)—
open不再抢占用户焦点;tab adopt-by-targetId;keydown/keyup 文档;canvas 提示;doctor检查各组件版本一致性。
v1.3.x
- v1.3.0(2026-06-13)— daemon restart/status(#20.2)+ 实时标签页重同步、adopt-by-targetId、
open --reuse-tab。
v1.0.x – v1.2.x
- v1.2.3(2026-06-13)—
bringToFront命令 +tab list --full显示完整 URL。 - v1.2.2(2026-06-12)— 非阻塞的“有更新”提示 + release changelog。
- v1.2.1(2026-06-12)— relay tab-drift 固定修复(#14/#18)+ 稳定的按标签页 relay session。
- v1.2.0(2026-06-12)—
chrome-use test:浏览器测试套件。 - v1.1.0(2026-06-12)— 跨 profile cookie 导出/迁移。
- v1.0.0(2026-06-12)— 品牌重塑:agent-browser-stealth → chrome-use,去 fork 化,版本号重置为 1.0.0。
v0.27.0-fork.x(重塑品牌前的 fork 阶段)
- v0.27.0-fork.51(2026-06-12)— rustfmt 修复 issue #7 回归测试(CI 格式检查)。
- v0.27.0-fork.50(2026-06-11)— 标签页标题截断 + 多 agent/eval/type 文档。
- v0.27.0-fork.49(2026-06-11)— 内嵌 stealth-status + 多 agent 技能指引。
- v0.27.0-fork.48(2026-06-11)— iframe-proxy 开关 + stealth status。
- v0.27.0-fork.47(2026-06-11)— tab-drift 固定、
snapshot -c保留可交互元素、stale-ref 处理指引。 - v0.27.0-fork.46(2026-06-11)— 限制
--annotate图例数量。 - v0.27.0-fork.45(2026-06-11)—
pickcombobox 原子操作。 - v0.27.0-fork.44(2026-06-11)— eval 来源标记、
type --focused、humanize 参数校验警告。 - v0.27.0-fork.43(2026-06-11)— 一批 issue/Hermes 反馈修复(静默点击、live 环境、
eval --file、tab-list、文档)。 - v0.27.0-fork.42(2026-06-11)— 退出时关闭本会话拥有的标签页,不再遗留标签页。
- v0.27.0-fork.41(2026-06-11)— relay 静默自愈,异常时无需用户操作。
- v0.27.0-fork.40(2026-06-11)— 已安装扩展时不再回退到 consent 弹窗。
- v0.27.0-fork.39(2026-06-11)—
cookies set --curl保留完整 cookie 属性。 - v0.27.0-fork.38(2026-06-11)— 静默运行,不再抢占用户前台标签页。
- v0.27.0-fork.37(2026-06-11)— 完善 humanize(bbox 抖动 + 滚轮/拖拽缓动)。
- v0.27.0-fork.36(2026-06-11)— 类人输入 stealth(humanize)。
- v0.27.0-fork.35(2026-06-11)— 技能内嵌 Store 安装、反馈渠道、过期二进制提示。
- v0.27.0-fork.34(2026-06-11)— Chrome Web Store 上线:面向商店的强制安装 + 技能商店安装指引。
- v0.27.0-fork.33(2026-06-10)— 修复两处 Hermes 反馈的边角问题(非法选择器措辞、空 URL glob)。
- v0.27.0-fork.32(2026-06-10)— 修复 Hermes 发现的 CLI bug(
wait --url、find role、非法选择器等)。 - v0.27.0-fork.31(2026-06-10)— Chrome Web Store 提审就绪 + 两条安装路径。
- v0.27.0-fork.30(2026-06-10)— stealth:navigator 覆写放到 prototype 上而非实例上。
- v0.27.0-fork.29(2026-06-10)— 修复插件 overflowTest、免弹窗自动连接、ab-connect 更名+图标、README。
- v0.27.0-fork.28(2026-06-10)— 技能文档:默认有头模式、标签页分组。
- v0.27.0-fork.27(2026-06-10)— 禁止无头模式(stealth 要求始终有头运行)。
- v0.27.0-fork.26(2026-06-10)— stealth:
navigator.platform修复为 MacIntel(反检测修复)。 - v0.27.0-fork.25(2026-06-10)— 修复 relay 活性检测(本地回答
Browser.getVersion),不再引发重连风暴导致漂移。 - v0.27.0-fork.24(2026-06-10)— 被动标签页发现不再抢占当前标签页(按会话隔离控制)。
- v0.27.0-fork.23(2026-06-10)— 容忍 relay 返回的最简 targetInfo(扩展 connect 的 getTargets)。
- v0.27.0-fork.22(2026-06-09)— 扩展 connect 改用 relay URL,修复
--session connect挂起问题。 - v0.27.0-fork.21(2026-06-09)— 多客户端 relay(支持并发 agent)。
- v0.27.0-fork.20(2026-06-09)— 按会话分组标签页(ab-connect 0.4.0)。
- v0.27.0-fork.19(2026-06-09)— 新扩展 ID(Web Store 签名密钥)+ 商店感知安装。
- v0.27.0-fork.18(2026-06-09)— 扩展 connect:零 token 原生消息控制真实 Chrome + 点击可靠性 + eval-first/find-url/site-notes。
- v0.27.0-fork.17(2026-06-05)— eval-first 技能 + find-url(本地书签搜索)+ site-notes 约定。
- v0.27.0-fork.16(2026-06-05)— 点击可靠性(滚动到可视区 + DOM 回退)+ 技能文档(console 手动开启、CLICK_MODE、表单/隐藏输入 eval)。
- v0.27.0-fork.15(2026-06-04)— stealth 加固(惰性
Runtime.enable、原生时区/WebRTC、可选 canvas 噪声)+ 自适应 @ref 重定位。 - v0.27.0-fork.14(2026-06-01)— 升级修复 + CI 切到 Node 24。
- v0.27.0-fork.13(2026-06-01)—
--profile auto。 - v0.27.0-fork.12(2026-06-01)— 内嵌技能文档。
- v0.27.0-fork.11(2026-06-01)— FullLaunch 路径下 stealth 完整生效(此前只在部分启动路径生效)。
- v0.27.0-fork.10(2026-06-01)— 一批体验优化 + stealth 覆盖率/webdriver 处理。
- v0.27.0-fork.9(2026-06-01)— 常规修复迭代。
- v0.27.0-fork.8(2026-05-09)— 内置重试机制,应对短暂的遮挡层。
- v0.27.0-fork.7(2026-05-09)— 误点前先捕捉短暂的遮挡层。
- v0.27.0-fork.6(2026-05-09)— 收紧防御性 CDP 超时上限,修复误导性的 chrome://inspect 提示。
- v0.27.0-fork.5(2026-05-09)— 修复误导性警告 + connect 活性探测 +
wait @ref。 - v0.27.0-fork.4(2026-05-09)— 修复 SPA 点击竞态 + @ref 身份校验 +
wait --gone。 - v0.27.0-fork.3(2026-05-09)— SPA 点击竞态修复 +
wait --gone原语。 - v0.27.0-fork.2(2026-05-09)— 更友好的 find 报错 + 版本不匹配重启后恢复 URL。
- v0.27.0-fork.1(2026-05-09)— 与上游 v0.27.0 同步,支持 skills.sh。
更早历史
chrome-use 会定期把上游 agent-browser 的版本合并进来(v0.27–v0.31,比如 v0.30.0 的 --wait glob 支持、v0.29.0 的 sandbox 包发布元数据修复);chrome-use 自己在这之上做了大量独立开发,两条版本号并不同步。
更早的 v0.x 版本(v0.6.0 – v0.26.0,2026 年 1–4 月)继承自上游 agent-browser 基线,逐条列出意义不大,这里不再展开。