← 返回更新日志

Qwen Code v0.24.3

2026-09-21 · GitHub 原文
<!-- qwen-release-notes:v2 --> ## 亮点 _详见下方的完整变更列表。_ ## 破坏性变更 暂无已知的破坏性变更。 ## Web Shell Web Shell 新增结构化 Shell 执行结果、可选的轨迹指标、主机设置白名单,以及移动端导航修复。 - Web Shell 现在提供结构化的 Shell 执行结果,包含命令、输出、执行详情、耗时及可滚动内容。 ([#12311](https://github.com/QwenLM/qwen-code/pull/12311)) ![来自 PR 12311 的截图](https://raw.githubusercontent.com/ytahdn/qwen-code/17274805d5bc294093da5e5c8a13d7fac90fdadb/shell-command-card/before-real-health-mobile.png) ![来自 PR 12311 的截图](https://raw.githubusercontent.com/ytahdn/qwen-code/17274805d5bc294093da5e5c8a13d7fac90fdadb/shell-command-card/02-success.png) - 在 Web Shell 中新增可选的轨迹表格选项卡,展示每轮耗时、首 Token 时间、Token 数量及工具调用耗时。 ([#12388](https://github.com/QwenLM/qwen-code/pull/12388)) ![轨迹面板(深色)](https://raw.githubusercontent.com/qqqys/qwen-code/04a02dce67d152edfb44deed0be7f8891b98dbe2/trajectory-dark.png) ![轨迹面板(浅色)](https://raw.githubusercontent.com/qqqys/qwen-code/04a02dce67d152edfb44deed0be7f8891b98dbe2/trajectory-light.png) - web-shell:支持主机设置项白名单 ([#12328](https://github.com/QwenLM/qwen-code/pull/12328)) - web-shell:恢复移动端历史记录导航 ([#12362](https://github.com/QwenLM/qwen-code/pull/12362)) ![来自 PR 12362 的截图](https://raw.githubusercontent.com/wenshao/qwen-code/6f1cb77dbc2a756f738ad572134bd445422cdb3d/webkit-before.png) ![来自 PR 12362 的截图](https://raw.githubusercontent.com/wenshao/qwen-code/6f1cb77dbc2a756f738ad572134bd445422cdb3d/webkit-after.png) - web-shell:修复标题栏不再显示新建会话占位符的问题 ([#12379](https://github.com/QwenLM/qwen-code/pull/12379)) ![修复前](https://raw.githubusercontent.com/ytahdn/qwen-code/41912b25287e1bc239b78067d52ba627af9c4298/screenshots/session-title-flicker/before.png) ![修复后](https://raw.githubusercontent.com/ytahdn/qwen-code/41912b25287e1bc239b78067d52ba627af9c4298/screenshots/session-title-flicker/after.png) ## Live Voice Live Voice 采集迁移至 AudioWorklet 并保留降级方案,改进了失败报告,并支持共享屏幕请求。 - Live Voice 麦克风采集现已使用 AudioWorklet,并保留旧的 ScriptProcessorNode 作为降级方案,在保持电平计量和通话门限功能的同时减少主线程负载。 ([#12338](https://github.com/QwenLM/qwen-code/pull/12338)) - live:当 Live Voice 启动失败且异常非 Error 类型时,报告具体原因 ([#12377](https://github.com/QwenLM/qwen-code/pull/12377)) - live:允许浏览器 Host 响应来自共享屏幕的屏幕请求 ([#12378](https://github.com/QwenLM/qwen-code/pull/12378)) ## Runtime and sessions 运行时基础架构新增托管状态、会话记录、JDBC 持久化,以及更广泛的 serve 通道恢复功能。 - java:新增托管运行时状态基础架构 ([#12301](https://github.com/QwenLM/qwen-code/pull/12301)) - core:新增托管会话记录基础架构 ([#12302](https://github.com/QwenLM/qwen-code/pull/12302)) - 为 Runtime 绑定和会话新增 JDBC 持久化支持,实现跨 broker 进程的状态共享及重启安全的归属权管理。 ([#12390](https://github.com/QwenLM/qwen-code/pull/12390)) - qwen serve 启动时现从所有可信工作区恢复 serve.channels,而不仅限于主工作区。 ([#12385](https://github.com/QwenLM/qwen-code/pull/12385)) ## Review workflow 审查行为更加聚焦,新增关键修复审计轮次及更安全的 base-tree 复用机制。 - review:在关键状态下将重新审查轮次切换为修复审计模式 ([#10136](https://github.com/QwenLM/qwen-code/pull/10136)) - 修复审查 base-tree 复用问题:将 merge-base 证据存储在挂载沙箱之外,从而基于可信的主机端租约状态拒绝过期或冲突的锚点。 ([#11540](https://github.com/QwenLM/qwen-code/pull/11540)) ## Chrome extension Chrome 扩展的发布打包流程与隐私文档现已就绪。 - 新增 Chrome Web Store 打包流程及发布工作流,可在稳定版本发布或手动触发时构建、扫描、上传并选择性地发布 Chrome 扩展。 ([#12329](https://github.com/QwenLM/qwen-code/pull/12329)) - chrome:披露浏览器数据处理方式及有限使用范围 ([#12330](https://github.com/QwenLM/qwen-code/pull/12330)) ## Desktop and CLI macOS 获得原生集成标题栏,CLI 启动更具韧性,历史记录重试状态更清晰。 - macOS 桌面端现采用原生集成标题栏,内容绘制于红绿灯控件之后,并设有独立的拖拽区域。 ([#12393](https://github.com/QwenLM/qwen-code/pull/12393)) - 当无法写入输出语言文件时,CLI 启动不再崩溃;它将跳过该文件继续运行。 ([#10455](https://github.com/QwenLM/qwen-code/pull/10455)) - 无法重试的历史记录项现暴露 argsUnavailable 字段,以便客户端准确反映重试限制。 ([#12349](https://github.com/QwenLM/qwen-code/pull/12349)) ## Performance and execution 无头执行更加精简,重复的 workspace-provider 请求已进行合并。 - 一次性无头执行现默认采用基于管道的 shell 后端,并优化了重启行为以降低开销。 ([#12340](https://github.com/QwenLM/qwen-code/pull/12340)) - 针对同一解析 URL 的并发 workspace-providers 请求现共享一个进行中的请求,在不引入缓存或 TTL 机制的情况下减少重复网络调用。 ([#12327](https://github.com/QwenLM/qwen-code/pull/12327)) ## 其他变更 - core: 通过 bwrap 路由运行时工具 ([#12269](https://github.com/QwenLM/qwen-code/pull/12269)) - workflows: 在注册恢复的运行之前写入检查点 ([#12347](https://github.com/QwenLM/qwen-code/pull/12347)) - core: 拒绝支持广播的 Hook PID ([#12344](https://github.com/QwenLM/qwen-code/pull/12344)) - E2E CI 安装步骤现在会对瞬时的 npm ci 失败最多重试三次后再报错,减少工作流不稳定中断。 ([#11731](https://github.com/QwenLM/qwen-code/pull/11731)) - 发布独立归档下载现在使用超时与重试,并在重试循环内校验 checksum,提高对瞬时网络故障的容错能力。 ([#11879](https://github.com/QwenLM/qwen-code/pull/11879)) - 频道分组现在可接受所有权提示(ownership hint),以解析歧义频道名称并跳过可容忍名称,同时保持现有行为。 ([#12383](https://github.com/QwenLM/qwen-code/pull/12383)) - 更新 SDK E2E 集成断言,使其能识别延迟 MCP 工具调用,同时继续支持直接 MCP 工具调用。 ([#12365](https://github.com/QwenLM/qwen-code/pull/12365)) - 为 Hosted Harness 定义版本化私有协议基础,包含能力封装、启动防护和请求校验。 ([#12409](https://github.com/QwenLM/qwen-code/pull/12409)) - test(cli): 防止全局 GIT_CONFIG_GLOBAL 环境变量劫持 withHome ([#12407](https://github.com/QwenLM/qwen-code/pull/12407)) - release: 恢复自动化 web-shell 发布 ([#12387](https://github.com/QwenLM/qwen-code/pull/12387)) --- ## 中文摘要 ### Web Shell Web Shell 新增结构化 shell 结果、可选 trajectory 指标、主机设置白名单,并修复移动端历史导航。 - Web Shell 现在以结构化方式展示 shell 执行结果,包含命令、输出、执行详情、耗时和可滚动内容区域。 ([#12311](https://github.com/QwenLM/qwen-code/pull/12311)) - Web Shell 新增可选的 trajectory 表格页签,展示每轮耗时、首 token 时间、token 数量和工具调用耗时。 ([#12388](https://github.com/QwenLM/qwen-code/pull/12388)) - 新增可选 settings.includeItems 白名单,主机可仅显示指定设置和内置块;excludeItems 优先,空白名单显示空状态。 ([#12328](https://github.com/QwenLM/qwen-code/pull/12328)) - web-shell: 恢复移动端历史导航 ([#12362](https://github.com/QwenLM/qwen-code/pull/12362)) - web-shell: 停止在标题中显示新建会话占位符 ([#12379](https://github.com/QwenLM/qwen-code/pull/12379)) ### Live Voice Live Voice 麦克风采集改用 AudioWorklet 并保留回退,改进启动失败原因展示,并支持从共享屏幕响应请求。 - Live Voice 麦克风采集改用 AudioWorklet,并保留旧 ScriptProcessorNode 作为回退,减少主线程负担,同时保持电平表和通话控制行为不变。 ([#12338](https://github.com/QwenLM/qwen-code/pull/12338)) - live: 当 Live Voice 启动失败时报告非 Error 类型的原因 ([#12377](https://github.com/QwenLM/qwen-code/pull/12377)) - live: 允许浏览器 Host 响应来自共享屏幕的请求 ([#12378](https://github.com/QwenLM/qwen-code/pull/12378)) ### 运行时与会话 运行时基础新增托管状态、会话记录、JDBC 持久化,并在启动时恢复更多受信任 workspace 的 serve.channels。 - java: 添加托管运行时状态基础 ([#12301](https://github.com/QwenLM/qwen-code/pull/12301)) - core: 添加托管会话记录基础 ([#12302](https://github.com/QwenLM/qwen-code/pull/12302)) - 为 Runtime bindings 和 sessions 添加 JDBC 持久化,支持跨 broker 进程共享状态及重启后保留所有权。 ([#12390](https://github.com/QwenLM/qwen-code/pull/12390)) - qwen serve 现在在启动时会恢复所有受信任 workspace 的 serve.channels,而不仅是主 workspace。 ([#12385](https://github.com/QwenLM/qwen-code/pull/12385)) ### 审查工作流 审查行为更聚焦:critical 多轮审查改用 fix-audit 形态,并修复基础树复用的锚点校验。 - 当多轮 /review 明确进入仅发布 critical 的模式且存在增量锚点时,改用更窄的 fix-audit 形态,而不是重复完整首轮审查。 ([#10136](https://github.com/QwenLM/qwen-code/pull/10136)) - 修复 review 基础树复用问题:将合并基准证据移出挂载沙箱,基于主机侧租约状态拒绝过期或冲突的锚点。 ([#11540](https://github.com/QwenLM/qwen-code/pull/11540)) ### Chrome 扩展 Chrome extension 新增打包与发布工作流,并补充浏览器数据处理与隐私说明。 - 新增 Chrome Web Store 打包与发布工作流,可在稳定版发布或手动触发时构建、扫描、上传并可选发布 Chrome extension。 ([#12329](https://github.com/QwenLM/qwen-code/pull/12329)) - 更新隐私文档,披露浏览器数据处理、extension 权限、本地 token 存储、模型提供方传输、保留控制和 Limited Use 承诺。 ([#12330](https://github.com/QwenLM/qwen-code/pull/12330)) ### 桌面端与 CLI macOS 使用集成原生标题栏,CLI 启动更稳健,历史记录重试限制展示更准确。 - macOS 桌面端现在使用集成的原生标题栏,内容延伸至窗口控制按钮后方,并保留专用拖拽区域。 ([#12393](https://github.com/QwenLM/qwen-code/pull/12393)) - 当 output-language 文件无法写入时,CLI 启动不再崩溃,而是继续运行。 ([#10455](https://github.com/QwenLM/qwen-code/pull/10455)) - 无法重试的历史记录现在会标记 argsUnavailable,使客户端能准确反映重试限制。 ([#12349](https://github.com/QwenLM/qwen-code/pull/12349)) ### 性能与执行 一次性 headless 执行开销更低,相同 workspace-providers URL 的并发请求会合并。 - 一次性 headless 执行现在默认使用基于 pipe 的 shell 后端,并优化重启行为以降低开销。 ([#12340](https://github.com/QwenLM/qwen-code/pull/12340)) - 针对同一已解析 URL 的并发 workspace-providers 请求现在会共享同一个进行中的请求,减少重复网络调用,且不引入缓存或 TTL。 ([#12327](https://github.com/QwenLM/qwen-code/pull/12327)) ### 其他变更 - 新增内部运行时支持,为各工具启用 bwrap 隔离并应用不可变工作区策略,同时禁用不受支持的主机副作用路径,本阶段暂不公开设置。 ([#12269](https://github.com/QwenLM/qwen-code/pull/12269)) - workflows: 在注册恢复的运行之前写入检查点 ([#12347](https://github.com/QwenLM/qwen-code/pull/12347)) - core: 拒绝支持广播的 Hook PID ([#12344](https://github.com/QwenLM/qwen-code/pull/12344)) - E2E CI 安装步骤现在会对瞬时的 npm ci 失败最多重试三次后再失败,减少工作流误报。 ([#11731](https://github.com/QwenLM/qwen-code/pull/11731)) - 发布流程中的 standalone 归档下载现在使用超时与重试,并在重试循环内校验 checksum,提高对瞬时网络故障的容错能力。 ([#11879](https://github.com/QwenLM/qwen-code/pull/11879)) - channel 分组现在可接受 ownership hint,以解析歧义 channel 名称并跳过可容忍名称,同时保持现有行为。 ([#12383](https://github.com/QwenLM/qwen-code/pull/12383)) - 更新 SDK E2E 集成断言,使其能识别延迟 MCP 工具调用,同时继续支持直接 MCP 工具调用。 ([#12365](https://github.com/QwenLM/qwen-code/pull/12365)) - 为 Hosted Harness 定义版本化私有协议基础,包含能力封装、启动防护和请求校验。 ([#12409](https://github.com/QwenLM/qwen-code/pull/12409)) - test(cli): 防止全局 GIT_CONFIG_GLOBAL 环境变量劫持 withHome ([#12407](https://github.com/QwenLM/qwen-code/pull/12407)) - release: 恢复自动化 web-shell 发布 ([#12387](https://github.com/QwenLM/qwen-code/pull/12387)) <details> <summary>完整变更列表(31 个拉取请求)</summary> ### 功能 - web-shell:使用 AudioWorklet 捕获 Live Voice 麦克风 ([#12338](https://github.com/QwenLM/qwen-code/pull/12338)) by @qqqys - core:通过 bwrap 路由运行时工具 ([#12269](https://github.com/QwenLM/qwen-code/pull/12269)) by @doudouOUC - review:在关键状态下,将重新审查轮次调整为修复审计形态 ([#10136](https://github.com/QwenLM/qwen-code/pull/10136)) by @wenshao - chrome-extension:将扩展发布到 Chrome Web Store ([#12329](https://github.com/QwenLM/qwen-code/pull/12329)) by @tanzhenxin - web-shell:支持主机设置项的允许列表 ([#12328](https://github.com/QwenLM/qwen-code/pull/12328)) by @Lilian0122 - java:添加托管运行时状态基础 ([#12301](https://github.com/QwenLM/qwen-code/pull/12301)) by @doudouOUC - core:添加托管会话记录基础 ([#12302](https://github.com/QwenLM/qwen-code/pull/12302)) by @doudouOUC - live:让浏览器 Host 响应来自共享屏幕的屏幕请求 ([#12378](https://github.com/QwenLM/qwen-code/pull/12378)) by @qqqys - serve:让频道分组接受所有权提示并跳过可容忍的名称 ([#12383](https://github.com/QwenLM/qwen-code/pull/12383)) by @qqqys - serve:在启动时恢复每个受信任工作区各自的 serve.channels ([#12385](https://github.com/QwenLM/qwen-code/pull/12385)) by @qqqys - java:添加 JDBC 绑定与会话持久化 ([#12390](https://github.com/QwenLM/qwen-code/pull/12390)) by @doudouOUC - web-shell:展示结构化的 Shell 执行结果 ([#12311](https://github.com/QwenLM/qwen-code/pull/12311)) by @ytahdn - web-shell:显示运行耗时分布的轨迹表格 ([#12388](https://github.com/QwenLM/qwen-code/pull/12388)) by @qqqys - desktop:集成 macOS 标题栏 ([#12393](https://github.com/QwenLM/qwen-code/pull/12393)) by @yiliang114 - serve:定义 Hosted Harness 私有协议 ([#12409](https://github.com/QwenLM/qwen-code/pull/12409)) by @doudouOUC ### 错误修复 - review:防止在挂载外保留状态时复用基础树 ([#11540](https://github.com/QwenLM/qwen-code/pull/11540)) by @wenshao - web-shell:恢复移动端历史记录导航 ([#12362](https://github.com/QwenLM/qwen-code/pull/12362)) by @wenshao - workflows:在注册前写入恢复运行的检查点 ([#12347](https://github.com/QwenLM/qwen-code/pull/12347)) by @qqqys - live:当 Live Voice 因非 Error 原因启动失败时报告具体原因 ([#12377](https://github.com/QwenLM/qwen-code/pull/12377)) by @qqqys - core:拒绝具备广播能力的 Hook PIDs ([#12344](https://github.com/QwenLM/qwen-code/pull/12344)) by @yiliang114 - web-shell:防止标题栏显示新建会话的占位符 ([#12379](https://github.com/QwenLM/qwen-code/pull/12379)) by @ytahdn - ci:在 e2e.yml 安装步骤中重试瞬态 npm ci 失败 (#11726) ([#11731](https://github.com/QwenLM/qwen-code/pull/11731)) by @qwen-code-dev-bot - release:重试瞬态独立运行时下载 (#11870) ([#11879](https://github.com/QwenLM/qwen-code/pull/11879)) by @qwen-code-dev-bot - cli:当输出语言文件不可写时不导致启动崩溃 (#10453) ([#10455](https://github.com/QwenLM/qwen-code/pull/10455)) by @qwen-code-dev-bot - serve:告知客户端哪些历史记录条目无法重试 ([#12349](https://github.com/QwenLM/qwen-code/pull/12349)) by @qqqys - release:恢复自动化 web-shell 发布 ([#12387](https://github.com/QwenLM/qwen-code/pull/12387)) by @yiliang114 ### 性能优化 - sdk:按解析后的 URL 对进行中的 workspace-providers 请求进行去重 ([#12327](https://github.com/QwenLM/qwen-code/pull/12327)) by @Willam2004 - cli:优化一次性无头执行 ([#12340](https://github.com/QwenLM/qwen-code/pull/12340)) by @yiliang114 ### 文档 - chrome:披露浏览器数据处理及有限使用条款 ([#12330](https://github.com/QwenLM/qwen-code/pull/12330)) by @tanzhenxin ### 内部变更 - test(integration):在 SDK E2E 中支持延迟的 MCP 工具调用 ([#12365](https://github.com/QwenLM/qwen-code/pull/12365)) by @dvd233 - test(cli):防止环境中的 GIT_CONFIG_GLOBAL 劫持 withHome ([#12407](https://github.com/QwenLM/qwen-code/pull/12407)) by @yiliang114 </details> **完整更新日志**: https://github.com/QwenLM/qwen-code/compare/v0.24.2...v0.24.3