← 返回更新日志

Qwen Code v0.21.4

2026-08-03 · GitHub 原文
<!-- qwen-release-notes:v1 --> ## 亮点 - Web Shell 现已打包为可直接发布的桌面应用,具备原生生命周期管理、单实例运行行为及自动更新功能。 ([#8132](https://github.com/QwenLM/qwen-code/pull/8132)) - Web Shell 历史记录分页现在能优雅地处理超长对话轮次,并新增重试按钮,无需重启会话即可重新加载失败页面。 ([#8335](https://github.com/QwenLM/qwen-code/pull/8335)) - 分叉的子代理现在与兄弟分叉隔离,确保每个代理仅访问其专属的指令和指引。 ([#8344](https://github.com/QwenLM/qwen-code/pull/8344)) - 聊天压缩现在在支持的提供商上复用主对话提示词缓存,在不执行工具的情况下降低延迟。 ([#8339](https://github.com/QwenLM/qwen-code/pull/8339)) - 修复了 Windows 系统下粘贴 API 密钥等敏感扩展设置被忽略的问题,通过启用多字符粘贴事件解决。 ([#8342](https://github.com/QwenLM/qwen-code/pull/8342)) - /review 技能现在能正确遵循用户配置的输出语言,用于 Tip 行、保存的报告及审查标签。 ([#8370](https://github.com/QwenLM/qwen-code/pull/8370)) ## 破坏性变更 暂无已知的破坏性变更。 ## 完整变更列表 ### 新功能 - /summary 命令现在接受可选的路径参数,用于将项目摘要保存到自定义位置,并在需要时自动创建父目录。 ([#8116](https://github.com/QwenLM/qwen-code/pull/8116)) by @qwen-code-dev-bot - 更新了审查验证器,将未验证的发现视为低置信度确认而非拒绝,并指示其优先检查引用的来源。 ([#8346](https://github.com/QwenLM/qwen-code/pull/8346)) by @wenshao - 新增 qwen review drive 命令,用于轮询服务就绪状态并验证完成事实,替代依赖固定休眠延迟的做法。 ([#8349](https://github.com/QwenLM/qwen-code/pull/8349)) by @wenshao - 守护进程现在会在 /daemon/status 中解析并报告其内存预算,以指示内存耗尽的临近程度。 ([#8245](https://github.com/QwenLM/qwen-code/pull/8245)) by @doudouOUC - 新增 qwen review mock-provider 命令,将 OpenAI 兼容请求记录为 JSONL 格式,用于在忠实的外部世界模拟环境中进行测试。 ([#8355](https://github.com/QwenLM/qwen-code/pull/8355)) by @wenshao - Web Shell 现已打包为可直接发布的桌面应用,具备原生生命周期管理、单实例运行行为及自动更新功能。 ([#8132](https://github.com/QwenLM/qwen-code/pull/8132)) by @yiliang114 - feat(serve):使子会话并发上限可配置 ([#8341](https://github.com/QwenLM/qwen-code/pull/8341)) by @wenshao - 新增 repo-hygiene 技能及每周工作流,自动扫描并提议修复文档与代码质量问题。 ([#7908](https://github.com/QwenLM/qwen-code/pull/7908)) by @ZijianZhang989 - 根据变更规模调整自动化 PR 审查超时时间,对于超过 300 行的大型拉取请求,超时时间最长可达 240 分钟。 ([#8377](https://github.com/QwenLM/qwen-code/pull/8377)) by @wenshao - 为 GitHub 和 GitLab 渠道启用完整的 Web Shell 管理功能,允许用户在不编辑设置文件的情况下配置令牌和策略。 ([#8310](https://github.com/QwenLM/qwen-code/pull/8310)) by @OrbitZore - 新增 qwen review publish-assets 命令,将证据图片托管在用户指定的仓库中,以便嵌入 PR 审查评论。 ([#8351](https://github.com/QwenLM/qwen-code/pull/8351)) by @wenshao - 审查工具新增内置的 Java/JVM 性能检查清单,用于标记 Java 文件中的正确性陷阱和 JVM 成本缺陷。 ([#8379](https://github.com/QwenLM/qwen-code/pull/8379)) by @wenshao - feat(ci):扩展 packages/core 的代码所有者池 ([#8347](https://github.com/QwenLM/qwen-code/pull/8347)) by @wenshao - 引入 experimental.sessionWorkflow 设置,可选启用会话工作流功能,如“计划与审查”模式和工作流 DAG。 ([#8391](https://github.com/QwenLM/qwen-code/pull/8391)) by @yiliang114 - 更新非交互式 CLI /goal 命令以使用 Goal v3 运行时,确保状态持久化一致并改善流式传输行为。 ([#8324](https://github.com/QwenLM/qwen-code/pull/8324)) by @qqqys - 新增 memory.agentMaxTurns 设置,用于配置所有托管内存代理的轮次限制,设为 0 可完全禁用该限制。 ([#8171](https://github.com/QwenLM/qwen-code/pull/8171)) by @tomatotomata ### 缺陷修复 - 即使单轮对话超过页面预算,Web Shell 历史记录的分页功能现在也能正常进行,并且重试按钮允许在不重启会话的情况下重新加载失败的历史记录页面。 ([#8335](https://github.com/QwenLM/qwen-code/pull/8335)) by @wenshao - CI 分类任务现在会在运行操作前确保已安装 qwen CLI,以防止重复安装并修复自托管运行器上的集群级故障。 ([#8337](https://github.com/QwenLM/qwen-code/pull/8337)) by @yiliang114 - 突变测试现在能正确将突变体标记为“无法判定”(inconclusive)而非“存活”(survived),当其在未突变基线中的关联测试失败时,从而防止误报。 ([#8345](https://github.com/QwenLM/qwen-code/pull/8345)) by @wenshao - 分叉的子代理现在无法再看到同轮次启动的兄弟分叉的指令,确保每个子代理仅能访问其分配到的专属指令。 ([#8344](https://github.com/QwenLM/qwen-code/pull/8344)) by @harjothkhara - 恢复了会话工作流视图外的 Todo 行为,以确保代理关联为可选,并且历史依赖引用不会错误地将计划标记为阻塞。 ([#8334](https://github.com/QwenLM/qwen-code/pull/8334)) by @yiliang114 - 通过在接受 COMPLETE 取消状态的同时,也接受会话拆卸竞态条件期间的 ERROR 终端状态,修复了一个不稳定的 Java 守护进程测试。 ([#8354](https://github.com/QwenLM/qwen-code/pull/8354)) by @wenshao - 启用聊天压缩功能,在使用支持的提供商时复用主对话提示词缓存,从而在不执行工具的情况下降低延迟。 ([#8339](https://github.com/QwenLM/qwen-code/pull/8339)) by @DragonnZhang - 修复了 Windows 系统上粘贴 API 密钥等敏感扩展设置被忽略的问题,通过允许多字符粘贴事件实现。 ([#8342](https://github.com/QwenLM/qwen-code/pull/8342)) by @DragonnZhang - GitHub 通道的入站任务现在支持重启安全,确保中断的工作得以恢复,且待处理的评论会重试,而无需重新运行代理。 ([#8306](https://github.com/QwenLM/qwen-code/pull/8306)) by @yiliang114 - 通过将带有泄露协议标签的畸形 JSON 工具响应路由至现有的重试路径,防止其到达用户界面。 ([#8301](https://github.com/QwenLM/qwen-code/pull/8301)) by @yiliang114 - 通过正确计算 PR 的文件变更(而非与基础分支历史进行比较),修复了旧分支上的 CI 失败问题。 ([#8372](https://github.com/QwenLM/qwen-code/pull/8372)) by @wenshao - 确保 ECS 运行器集群能够自动更新,每当 main 分支上的更新器逻辑发生变化时,都会触发协调工作流。 ([#8373](https://github.com/QwenLM/qwen-code/pull/8373)) by @yiliang114 - 确保 /review 技能中的提示行、保存的报告和审查标签正确遵循用户配置的输出语言。 ([#8370](https://github.com/QwenLM/qwen-code/pull/8370)) by @wenshao - 修复 qwen review 运行逻辑,在生成子进程时正确处理 QWEN_CODE_CLI 环境变量,以确保正确的构建标记。 ([#8378](https://github.com/QwenLM/qwen-code/pull/8378)) by @wenshao - 通过区分已交付的输出与内部推理步骤,启用对因套接字关闭而中断的长响应流的恢复。 ([#7896](https://github.com/QwenLM/qwen-code/pull/7896)) by @LHMQ878 - 确保 Auto Recall 钩子在检索完成后正确释放代理调度器,以防止资源泄漏。 ([#8352](https://github.com/QwenLM/qwen-code/pull/8352)) by @doudouOUC - 更新审查报告,在因预先存在的问题而排除突变体时,清晰区分失败的测试与未产生结果的测试。 ([#8374](https://github.com/QwenLM/qwen-code/pull/8374)) by @wenshao - 当确认归咎于某个 PR 的测试在合并基线上已经失败时,将相关发现降级为“建议”(Suggestion)严重程度。 ([#8380](https://github.com/QwenLM/qwen-code/pull/8380)) by @wenshao - 修复 /review 功能,降低 Maven 生成的测试源码的优先级,防止它们在规则标题中挤占生产 Java 路径的位置。 ([#8405](https://github.com/QwenLM/qwen-code/pull/8405)) by @wenshao ### 文档 - docs: 完善 TUI 键盘快捷键参考 ([#8327](https://github.com/QwenLM/qwen-code/pull/8327)) by @DragonnZhang - 更新架构概述,将 Qwen Code 反映为多表面单体仓库,详细说明 CLI、ACP 和守护进程执行模型。 ([#8325](https://github.com/QwenLM/qwen-code/pull/8325)) by @DragonnZhang - 文档现在解释了如何为聊天压缩和图像生成选择模型,包括默认设置及提供商要求。 ([#8348](https://github.com/QwenLM/qwen-code/pull/8348)) by @DragonnZhang - 更新代理文档,包含 drive 和 mock-provider 命令,并澄清验证测试应如何构建。 ([#8369](https://github.com/QwenLM/qwen-code/pull/8369)) by @wenshao ### 内部变更 - ci:将合并操作限制在确定性的无 AK 端到端测试通过后 ([#8313](https://github.com/QwenLM/qwen-code/pull/8313)) by @yiliang114 - 通过脚本化模型响应,在保留真实工具和 CLI 交互的同时,使 SDK 权限控制的端到端测试具备确定性。 ([#8302](https://github.com/QwenLM/qwen-code/pull/8302)) by @yiliang114 - 在发布后立即自动将 ECS runner 更新到最新的稳定版 Qwen CLI 版本,并防止意外降级到预发布构建。 ([#8343](https://github.com/QwenLM/qwen-code/pull/8343)) by @wenshao - 修复了扩展管理器中的一个不稳定测试,该测试此前因时钟竞态条件导致 CI 间歇性失败。 ([#8362](https://github.com/QwenLM/qwen-code/pull/8362)) by @wenshao - 通过断言跨 Shell 一致的行为而非依赖特定 bash 版本的退出码,修复了 macOS 上的 drive 测试用例。 ([#8366](https://github.com/QwenLM/qwen-code/pull/8366)) by @wenshao - 通过基于源元数据而非系统时间戳来选择通知,提高了 acp-cron 集成测试的稳定性。 ([#8336](https://github.com/QwenLM/qwen-code/pull/8336)) by @qwen-code-dev-bot ## 新贡献者 - @LHMQ878 在 [#7896](https://github.com/QwenLM/qwen-code/pull/7896) 中首次贡献 - @tomatotomata 在 [#8171](https://github.com/QwenLM/qwen-code/pull/8171) 中首次贡献 **完整更新日志**: https://github.com/QwenLM/qwen-code/compare/v0.21.3...v0.21.4