← 返回更新日志

Qwen Code v0.23.0-nightly.20260907.f1ed3bc31a 预发布

2026-09-07 · GitHub 原文
<!-- 使用 release/v0.23.0-nightly.20260907.f1ed3bc31a 分支的 .github/release.yml 配置生成 --> ## 更新内容 * feat(web-shell): 可视化并管理动态工作流运行 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10594 * perf(web-shell): 仅一次派生会话工作流投影 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10871 * test(integration): 同步中途 /quit 补全 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/10926 * feat(ipc): 当消息被拒绝时通知发送方,并使持有的消息过期 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10809 * fix(web-shell): 使 30 秒概览轮询端到端测试具有确定性 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10934 * feat(serve): 添加会话资源目录 by @w9lsky in https://github.com/QwenLM/qwen-code/pull/10837 * fix(cli): 从实时输入提交精确的斜杠命令 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10929 * fix(web-shell): 当分支落后于上游时禁用推送 by @wenshao in https://github.com/QwenLM/qwen-code/pull/10754 * fix(cli): 按请求解析会话管理设置,而非使用过期的 this.settings 缓存 by @tomsen02 in https://github.com/QwenLM/qwen-code/pull/10095 * fix(ci): 当主 CI 运行报告无测试结果时,命名失败的任务 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/10855 * test(cli): 在共享池上保持对脱敏 ReDoS 防护的断言 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10912 * fix(cli): 完善实时斜杠提交依赖与测试夹具 (#10944) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/10961 * fix(test): 结束测试从未关闭的交互式 PTY 会话 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/10971 * feat(web-shell): 在对话记录中为运行中的子代理提供实时状态 by @wenshao in https://github.com/QwenLM/qwen-code/pull/10939 * ci(e2e): 在托管运行器上构建一次,并在每个阶段解压 by @wenshao in https://github.com/QwenLM/qwen-code/pull/10894 * fix(cli): 从实时输入提交精确的 OpenTUI 斜杠命令 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10987 * fix(cli): 在按回车时从实时缓冲区解析 OpenTUI 斜杠提交 by @wenshao in https://github.com/QwenLM/qwen-code/pull/10986 * docs(web-shell): 统一后续建议文案 by @Theater-ahyeon in https://github.com/QwenLM/qwen-code/pull/10851 * fix(channels/dingtalk): 防止 SDK 连接日志打印 clientSecret 和 stream ticket by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10945 * feat(cli): 在 VP 模式下通过普通点击打开 OSC 8 链接 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/10979 * feat(channels): 添加工作树隔离的命名任务 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/10643 * feat(serve): 添加会话轮次导航协议 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/10751 * fix(cli): 修复 OpenTUI 中命令、/clear 和引导指令的对话记录可见性 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/10947 * fix(docs): 同步守护进程能力计数 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11012 * feat(web-shell): 恢复环境面板状态 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/10627 * feat(ipc): 保持对等方收件箱可达,并在不可达时予以提示 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10800 * feat: 聊天对话记录 mr2a HTML 导出 by @water-in-stone in https://github.com/QwenLM/qwen-code/pull/10076 * feat(serve): 通过强制会话租约限制对话记录写入 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/10924 * fix(dws): 识别机器人提及后的斜杠命令 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10930 * feat: 从 ~/.qwen/output-styles 和 .qwen/output-styles 加载自定义输出样式 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10761 * fix(ci): 重试注册表侧的 npm audit 失败,而非将其报告为 CVE by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11006 * fix(cli): 允许在斜杠命令加载前退出 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11029 * fix(test): 停止在共享 E2E 池上测量模型延迟 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11004 * refactor(cli): 通过 runWithPinnedRuntimeBaseDir 路由每个请求的运行根目录锁定 by @tomsen02 in https://github.com/QwenLM/qwen-code/pull/10988 * docs(web-shell): 添加全局轮次导航 Phase 2 设计 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11020 * fix(cli): 在聊天初始化完成前保持输入关闭 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11000 * fix: 恢复与 ACP 相关的主 CI 检查 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11033 * refactor(rewind): 统一 ACP 和 TUI 用户提示分类器 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10959 * test(web-shell): 在可视化预览中渲染会话工作流驾驶舱 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11014 * fix(web-shell): 正确标记用量受限的目标卡片 by @yu-xin-c in https://github.com/QwenLM/qwen-code/pull/10553 * feat(ui): 添加 ui.showToolCallArgs 以行内渲染工具调用参数 by @TianYuan1024 in https://github.com/QwenLM/qwen-code/pull/10565 * fix(test): 同步固定的无 AK 集成脚本列表 (#11050) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11052 * fix(web-shell): 将单元格值对话框中的全选范围限制为值本身 by @LizunovSergey in https://github.com/QwenLM/qwen-code/pull/10857 * fix(test): 提高内联 E2E 守护进程生成的 ACP 初始化预算 (#11034) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11041 * fix(core): 允许在自动模式阻塞后手动重试 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11025 * feat(ipc): 跨审查类保留对等消息,仅允许仓库收紧入站设置 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11026 * fix(cli): 通过 runtime-root pin 路由 turn-index 读取 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11036 * feat(skills): 添加内置的 zvec-grep 安装程序 by @zhourrr in https://github.com/QwenLM/qwen-code/pull/10723 * docs(cli): 在 qwen 认证移除通知中提及 Token Plan 环境变量设置 by @now-ing in https://github.com/QwenLM/qwen-code/pull/10993 * fix(core): 合并并发 Config.initialize() 调用 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11037 * fix(cli): 修复 main 分支上实时斜杠门控的连锁问题 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/10940 * feat(core): 向 Routify 端点发送会话 ID by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/10896 * feat(core): 将 todo_write 改为可选启用 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/10645 * perf(cli): 避免对无效的内联图像缓存命中进行哈希计算 by @zjunothing in https://github.com/QwenLM/qwen-code/pull/10626 * fix(core): 拒绝模糊的 send_message 目标 by @GCGH159 in https://github.com/QwenLM/qwen-code/pull/10090 * fix(core): 从 Cerebras 请求中剥离 reasoning_content by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11049 * feat(serve): 添加工作区范围的 Skills 运行时 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/10697 * feat(channels): 按配置的过滤器前缀过滤消息 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10817 * fix(goal): 在验证检查点处结束守护进程回合 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11011 * refactor!: 弃用 @qwen-code/webui by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/9812 * docs: 记录后台代理的显示位置及其所有者 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10951 * chore(ci): 移除已弃用的 WebUI 依赖检查 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11095 * docs(core): 说明为何 Todo 依赖语义未置于特性标志后 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11078 * fix(core): 加固 Config.initialize() 合并路径 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11075 * fix(docs): 修正架构图中的 DaemonSessionProvider 路径 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11099 * fix(cli): 在 OpenTUI 回合发送前等待启动聊天完成 (#11042) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11046 * fix(cli): 由提供者交付 Agent View 队列中的后续操作 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10315 * fix(cli): 保持 tmux IME 输入单元格无固定背景 (#8177) by @now-ing in https://github.com/QwenLM/qwen-code/pull/10998 * fix(cli): 通过 pin 瓶颈点路由 transcript turn-index 处理器 by @wenshao in https://github.com/QwenLM/qwen-code/pull/11047 * test(e2e): 在 cron-interactive 中将模型延迟与 cron 触发预算分离 by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/11085 * config: 使目标就绪方法改为 reject 而非同步抛出异常 by @rootkiller6788 in https://github.com/QwenLM/qwen-code/pull/10647 * fix(release): 允许操作员重新调整质量通道超时时间 (#11104) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11110 * fix(release): 基于预留主机为静态质量通道定价 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11127 * fix(review): 防止引用代码导致页脚条显示异常 by @wenshao in https://github.com/QwenLM/qwen-code/pull/10458 * fix(web-shell): 关闭四个延期处理的 #9812 审查后续事项 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11107 * test(core): 固定 Config.initialize() 合并顺序,使 await-drop 变异测试失败 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11113 * fix(release): 在任何异常标头下阻断 transport-timeout 透传 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10902 * fix(ci): 防止 scripts-suite 超时旋钮在空值时默认放行 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10910 * test(sdk): 固定 transcript compactor keep-set 中的 skills 条目 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11079 * fix(test): 将 scripts suite 的 quiet-host 预算独立为单独旋钮 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11106 * test(web-shell): 防止分页滚动测试与自动滚动驱动竞争 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11105 * fix(ci): 恢复被替代的审查运行,并维持循环报告时间的基础刷新 by @wenshao in https://github.com/QwenLM/qwen-code/pull/10123 * feat(review): 添加低开销召回下限 by @yu-xin-c in https://github.com/QwenLM/qwen-code/pull/9912 * fix(core): 为基于语法的提供商规范化工具模式 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10080 * fix(core): 在 edit/write-file 差异结果中同时包含完整 filePath 与 fileName by @JonathanOrr in https://github.com/QwenLM/qwen-code/pull/8607 * fix(export): 缩减导出的 transcript 渲染器,仅保留只读转录所需内容 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11038 * fix(core): 在自动分类中保留主机确认的用户答案 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11084 * feat(workflows): 返回运行句柄并持久化内联脚本 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11089 * fix(goal): 在所有用户取消路径上暂停 Goal,并说明原因 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10802 * fix(acp): 触发标准的会话标题更新 by @zjunothing in https://github.com/QwenLM/qwen-code/pull/8782 * feat(review): 添加 prose-execution 审计与 counter-frame 审计 by @wenshao in https://github.com/QwenLM/qwen-code/pull/10221 * fix(ci): 记录 release.yml 大小漂移的两个累积允许 PR by @wenshao in https://github.com/QwenLM/qwen-code/pull/11157 * fix(web-shell): 在手机端保持自适应对话框的边距 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11077 * docs(arena): 澄清未设置的运行限制 by @AaronZ345 in https://github.com/QwenLM/qwen-code/pull/9860 * feat(web-shell): 添加无头全局回合导航 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11054 * feat(web-shell): 将浏览器授予的本地目录桥接至会话 by @wenshao in https://github.com/QwenLM/qwen-code/pull/10962 * docs(auth): 记录 Token Plan 设置(端点、区域、环境变量键、settings.json 示例) by @now-ing in https://github.com/QwenLM/qwen-code/pull/10980 * feat(acp): 通过父级 tool_call 更新使子代理执行可见 by @PratikWayase in https://github.com/QwenLM/qwen-code/pull/8729 * fix(dws): 跨会话隔离 IM 数据摄入 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10952 * fix(core): 在临时解绑后重放保留的 shell 通知 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11132 * test(ci): 使 verify-capture 回退断言光栅化安全 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/10758 * perf(cli): 让测试单独解析核心模块 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10917 * fix(test): 停止在导出分隔符边界内对 tsx 启动进行计时 by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11044 * test(integration): 使压缩 E2E 测试确定性 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11175 * fix(web-shell): 按工作区限定模拟会话 by @AaronZ345 in https://github.com/QwenLM/qwen-code/pull/10273 * perf(cli): 直接导入核心模块而非包根目录 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10957 * fix(export): 使文档指向已发布的渲染器,移除 mermaid by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11167 * feat(dingtalk): 使后台代理聚合变为可选 by @qqqys in https://github.com/QwenLM/qwen-code/pull/10899 * test(integration): 使 BOM 读取确定性 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11187 * fix(serve): 限定并诊断一个永远无法成功的会话回收 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11120 * fix(web-shell): 通过静默保持守护进程提示状态权威 (#9487) by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10941 * test(integration): 使 spaced-path 写入确定性 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11181 * test(integration): 将压缩种子适配到 OpenTUI pty 视口 (#11191) by @qwen-code-dev-bot in https://github.com/QwenLM/qwen-code/pull/11199 * fix(skills): 在 `/<skill-name>` 路径上注册 frontmatter 钩子 by @TianYuan1024 in https://github.com/QwenLM/qwen-code/pull/11068 * fix(ci): 给予 web-shell E2E Smoke 测试其兄弟节点拥有的 ECS 超时配额 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11212 * ci(release): 移除不验证任何内容的冗余 Format Project 步骤 (#11109) by @now-ing in https://github.com/QwenLM/qwen-code/pull/11195 * ci: 使 Prettier 通道成为真正的门禁 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11117 * fix(core): 暴露 ask_user_question 取消原因 by @destire-mio in https://github.com/QwenLM/qwen-code/pull/9070 * fix(core): 在工具取消消息中添加明确的停止指令 by @aniruddhaadak80 in https://github.com/QwenLM/qwen-code/pull/10180 * chore(core): 包装两个超宽的取消断言 by @wenshao in https://github.com/QwenLM/qwen-code/pull/11232 * fix(vscode): 规范化工作区路径 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11201 * feat(ipc): 使用用户创建的控制器令牌驱动会话,无需逐条消息审查 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11090 * feat(ci): 在 autofix 轮次报告中显示已解析的模型和 CLI 版本 by @wenshao in https://github.com/QwenLM/qwen-code/pull/11124 * feat(web-shell): 对齐侧边栏会话范围 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/11240 * fix(serve): 将子级拥有的会话回合报告为活跃工作 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11265 * feat(web-shell): 解释 shell 审批命令 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/11266 * ci: 给予所有工作区共享池测试超时,而不仅是五个 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/10915 * feat(web-shell): 自定义工件图标 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/11247 * fix(cua): 稳定自动观察差异 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/11293 * feat(update): 支持可配置的发布下载基础 URL by @XIQIXIQIXIQI in https://github.com/QwenLM/qwen-code/pull/11150 * chore(release): 将 node repl 升级至 0.1.3 by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/11299 * feat(web-shell): 显示 Goal 在其允许窗口内已消耗的资源 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11254 * feat(external-context): 为管理员拥有的 Mem0 方言添加可选自动召回 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11246 * feat(goal): 显示 Goal 在其允许窗口内已消耗的资源 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11248 * feat(channels): 实现命名会话 worktree 重置(第 4B 部分) by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11015 * fix(cli): 修复清理任务在已删除绑定挂载上挂起的问题 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11285 * fix(ci): 回收泄漏的 E2E 沙箱容器 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11264 * feat(serve): 通过会话围栏机制允许并发运行的独立守护进程 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11207 * feat(web-shell): 添加连续历史记录与紧凑的轮次导航 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11208 * fix(ci): 在 Vitest 分叉进程中隔离 E2E 目录 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/11312 * fix(goal-draft): 保持草稿简洁且可验证 by @qqqys in https://github.com/QwenLM/qwen-code/pull/11284 * feat(external-context): 添加守护进程内存写入功能 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/11311 ## 新贡献者 * @w9lsky 在 https://github.com/QwenLM/qwen-code/pull/10837 完成了首次贡献 * @Theater-ahyeon 在 https://github.com/QwenLM/qwen-code/pull/10851 完成了首次贡献 * @LizunovSergey 在 https://github.com/QwenLM/qwen-code/pull/10857 完成了首次贡献 * @zhourrr 在 https://github.com/QwenLM/qwen-code/pull/10723 完成了首次贡献 * @now-ing 在 https://github.com/QwenLM/qwen-code/pull/10993 完成了首次贡献 * @GCGH159 在 https://github.com/QwenLM/qwen-code/pull/10090 完成了首次贡献 * @rootkiller6788 在 https://github.com/QwenLM/qwen-code/pull/10647 完成了首次贡献 * @JonathanOrr 在 https://github.com/QwenLM/qwen-code/pull/8607 完成了首次贡献 * @aniruddhaadak80 在 https://github.com/QwenLM/qwen-code/pull/10180 完成了首次贡献 * @XIQIXIQIXIQI 在 https://github.com/QwenLM/qwen-code/pull/11150 完成了首次贡献 **完整更新日志**: https://github.com/QwenLM/qwen-code/compare/v0.23.0...v0.23.0-nightly.20260907.f1ed3bc31a