Skip to Content
博客功能更新07-16 产品周报

Qwen Code 周报:/learn 把知识变成 Skill、Code Review 质量把关大升级、Web Shell 界面大范围翻新

Qwen Team
2026-07-16

Qwen Code 本周发布 v0.19.9、v0.19.10 和 v0.19.11 三个正式版本,160+ 个 PR 合入。

/learn 命令上线。 用户主动创建 skill——给一段知识来源(目录、URL、对话、文本),Qwen Code 自动整理成 SKILL.md,下次直接复用。

Code Review 从”能用”到”好用”。 Suggestion 直接发 PR inline 评论,review 加入程序正确性检查、发布前验证、Step 4 verifier 和 Step 5 reverse-audit。

Web Shell 大改版。 shadcn 组件库打底,Artifact 审查面板、extension 管理页、Mermaid 缩放拖拽。多工作区全链路打通,split pane 按 workspace 着色。

Voice Bridge 语音接入 ACP。 纯文本主模型也能处理语音 prompt——音频先转写为文本再交给模型,支持音频的模型直接透传。

PDF 扫描件不再卡死 Agent。 文本提取超限时自动渲染页面图片,视觉模型直接看图作答。

CLI 工作流补齐了。 /update 一键升级、Ctrl+O 冻结对话、Ctrl+S 暂存 prompt、Explore 继承主模型、Alt+T 完整思考。

✨ 新增特性

/learn:把知识变成可复用的 Skill

/learn 是一个新斜杠命令,让你从知识来源创建可复用的 skill。知识来源可以是本地目录、URL、对话历史,或者你直接写一段文本。主模型会收集知识,自动整理成 SKILL.md,保存在 .qwen/skills/learned-skill-<name>/ 下,带 source: learned 标记,和你手写的 skill、自动生成的 skill 互不干扰。

你可以用它做什么:

  • /learn Deploy process: ... 把部署流程写成一个 skill,下次部署直接调用
  • 给一个文档目录让 Qwen Code 学习项目的开发规范,后续编码自动遵循
  • 从一段对话中提取知识,沉淀成可复用的指令模板

详见 PR #6440 

Code Review 质量把关大升级

Code Review 这周从多个维度加强了质量把关,从 inline 评论到 review 质量验证都做了升级。

/review 现在会把 Suggestion 类型的发现直接作为 PR inline 评论发布——不用再手动从 review 输出里复制建议贴到 PR 上。Review 本身也新增了程序正确性检查器(procedural correctness finders)和可调的 effort 等级,并且在发布评论前有 guardrail 验证每个 finding 确实成立。

大 diff 的 review 不再笼统分配——每一行 diff 都有明确的 reviewer 负责,确保审查覆盖率。Review chunk agent 会收到完整构建的 prompt,不会再出现空上下文运行的情况。PR triage 评论新增了置信度评分、序列图、文件概览和 review footer,给 reviewer 更丰富的上下文。自动化 review 默认超时调整为 180 分钟,允许最高 240 分钟的 override,大 PR 不再因为超时被中断。

你能用它做什么:

  • /review 自动在 PR 上发 inline suggestion 评论,省掉手动贴评论的步骤
  • 可调 effort 等级适配不同规模的 review 需求
  • PR triage 的置信度评分帮你判断哪些 PR 需要重点关注

v0.19.11 进一步加入了 Step 4 verifier 和 Step 5 reverse-audit——review 流程从 ” 发现问题→发评论 ” 变成了 ” 发现问题→验证发现确实成立→反向审计确认没有遗漏 ” 的完整链路。findings 列表被折叠进 verify/reverse-audit prompt 中,减少 prompt 体积。Agent 7 的 build/test 范围也缩小到 diff 实际涉及的 workspace,大仓库不再全量构建。

详见 PR #6593 #6711 #6612 #6789 #6771 #6840 #6942 #6965 #6892 #6955 

Web Shell UI 大范围翻新

Web Shell 本周有 15+ 个 PR 集中更新,从底层 UI 组件库到侧边栏、设置页面、模型选择器都做了翻新。

底层引入 shadcn 作为 UI 基础组件库,统一设计 token 和组件规范。多工作区侧边栏重新设计,布局更清晰。设置页面换上了现代组件库,用户级设置可以直接在面板中编辑,模型管理也集成在设置面板内。模型选择器重新设计,模型元数据更清晰,切换更快。详见 PR #6760 #6804 #6817 #6758 

多工作区支持全链路打通。Daemon ACP 端点支持 workspace 作用域,频道 worker 按 workspace 分组绑定,split view 支持跨 workspace 会话和 workspace 标签。动态添加的 workspace 注册会持久化,daemon 重启后不需要重新配置。Workspace 可以在运行时移除,不需要重启 server。详见 PR #6621 #6635 #6746 #6716 #6745 

新增右侧 Artifact 审查面板——编辑过的文件以 turn 卡片形式展示,带行数统计和可展开的单文件 diff,右侧面板支持文件列表/树形导航和可拖拽调整宽度。Artifact 和定时任务也有独立的 turn output 卡片,HTML artifact 在 sandbox iframe 中渲染。详见 PR #6591 

v0.19.11 新增了 extension 管理页面,可以在 Web Shell 中直接查看和管理已安装的 extension。Mermaid 图表支持缩放、平移和拖拽,流程图和序列图不再只能看不能动。Split pane 可以最大化单个面板,每个 pane 按 workspace 着色区分。Composer 控件改为 popover 形式,会话列表显示正在等待用户操作的会话。详见 PR #6815 #6881 #6951 #6971 #6877 #6956 

其他改进:Markdown 表格双击单元格弹窗显示完整内容方便复制;输入框工具栏显示当前 Git 分支 chip;会话分组支持自定义 Hex 颜色代码;定时任务从所有 workspace 汇总到一个视图统一查看;Composer 支持自定义 placeholder 文本;workspace 路径锁定。详见 PR #6530 #6725 #6752 #6759 #6765 #6853 

Voice Bridge:语音输入接入 ACP

之前通过 ACP(Agent Communication Protocol)发送语音 prompt,如果主模型是纯文本模型,音频无法被处理。现在加了 voice bridge——音频先由配置的 voice model 转写为文本,再交给主模型处理。如果主模型本身支持音频输入,原始音频直接透传,不经过转写。转写不可用或失败时,主模型会收到一条安全的 ” 音频不可用 ” 说明,不会透传裸音频。

你能用它做什么:

  • 通过 ACP 客户端发送语音指令,纯文本模型也能理解你的语音内容
  • 支持音频的主模型(如多模态模型)保持原始音频直通,不损失语音信息
  • 转写失败时有安全降级,不会因为音频问题导致对话中断

详见 PR #6576 

PDF 自动转图片:扫描件不再卡死 Agent

之前遇到扫描件或文字密集的 PDF,文本提取超过 12000 token 的预算就会报 FILE_TOO_LARGE 死循环——Agent 反复用更小的页范围重试,每次仍然超限,上下文被撑爆直到会话崩溃。现在加了页→图片渲染回退:文本提取超限或失败时,自动用 pdftoppm 把页面渲染成 JPEG 图片交给视觉模型处理。每页 token 成本固定,不受文字密度影响。文本提取仍然是默认路径(可 grep、精确取字),渲染只在超限或失败时触发。对于配了视觉模型的纯文本主模型,通过 @ 附加的扫描件会被渲染为少量页面交给 vision bridge 转写。

你能用它做什么:

  • 扫描件 PDF 不再报 FILE_TOO_LARGE,视觉模型直接看图作答
  • 密集 PDF(超过 token 预算)自动降级为图片,不会撑爆上下文
  • 纯文本 PDF 仍然走文本提取,不损失精确度

详见 PR #6585 

CLI 工作流升级:一键升级、对话不丢失

之前升级 Qwen Code 得自己记安装方式——npm 装的跑 npm install,standalone 装的要重新下载安装包。这周加了 qwen update CLI 命令和 /update 斜杠命令,自动检测安装类型执行升级。Standalone 安装会直接从 npm registry 拉最新版本,SHA256 校验 + Ed25519 签名验证(可选)+ smoke test(新二进制必须通过 --version)+ 原子替换,失败自动回滚。npm 安装显示对应的 npm install -g 命令。支持 9 种语言的 i18n。详见 PR #5780 

Ctrl+O 新增冻结 transcript 视图——按下去打开一个备用屏幕,显示完整对话记录,所有工具输出展开,可以上下滚动。Esc/q/Ctrl+C/Ctrl+O 退出回到主界面。同时重构了工具输出渲染:read/search/list 类工具结果折叠为单行摘要,mutation 类工具保持展开。原来的 compactMode 设置被静默忽略。详见 PR #5666 

Ctrl+S 新增 prompt 暂存——输入框有内容时按 Ctrl+S,prompt 保存到项目级暂存文件,下次从同一项目启动自动恢复。提交后自动删除暂存。大段粘贴的占位符在保存前展开,恢复的是原始内容。不同项目之间互不干扰。详见 PR #6709 

Shell 命令超时可以配了。新增 tools.shell.defaultTimeoutMs 设置,在项目或会话级别调整前台命令的默认超时,不用每次在命令参数里单独指定。默认仍为 120 秒,设为 0 禁用超时。详见 PR #6628 

Explore subagent 默认继承主模型了。内置 Explore subagent 不再自动选择 fastModel,改为继承主会话模型。你用 Claude Opus 做主模型,Explore 也用 Claude Opus——推理能力不打折。如果仍想用快速模型,设置 agents.builtin.exploreModelfast 或具体模型 ID 即可。详见 PR #6807 

Alt+T 展开完整思考过程。流式输出时按 Alt+T 展开 thinking block,现在能看到完整的推理内容实时流式输出,不再是之前硬编码的 4 行尾部预览。跟踪模型的思维链终于能跟上了。超长推理受视口高度限制,不会无限展开。详见 PR #6678 

📊 更多新功能

功能PR对你的影响
Channel daemon 重启后自动恢复:DingTalk/Feishu 频道 worker 自动重连#6680 daemon 重启后频道不再断连
钉钉 Markdown 表格保留:发送表格时结构不被拆散#6673 钉钉频道不再收到一行行纯文本
钉钉群 @ 发送者:可选 mention 群消息发送者#6679 钉钉频道回复时可以 @ 提问者
钉钉 webhook 私聊投递:webhook 支持发到 DM#6891 钉钉通知可以发到个人而不是群
Channel 结构化记忆管理#6860 频道对话记忆管理更结构化
SDK 交互式问答:ask_user_question 回传答案给模型#6655 SDK 集成可以做交互式问答流程
SDK 控制方法:effort、models、usage、context 查询#6492 SDK 集成可以更精细地控制模型和查询用量
ACP tool-call 生命周期暴露#6819 SDK 可以感知工具调用的准备阶段
子代理可观测性增强:完整命令、transcript 路径、审批上下文#6580 子代理在干什么看得更清楚了
子代理时间线:按时间顺序展示 + 并行 agent 时间线#6772 多任务并行时更容易追踪进度
Daemon session 来源元数据:不可变来源标记#6932 daemon 会话可以追溯创建来源
Daemon 深度健康聚合:跨 workspace 健康检查#6961 daemon 状态监控覆盖所有 workspace
Workspace MCP 管理:serve 模式 MCP 管理#6954 多 workspace 下 MCP server 可以按 workspace 管理
归档会话导出/export 导出归档会话#6911 会话历史可以导出备份
Shell 前台命令存活心跳#6876 静默运行的长命令不再被误判为超时
/goal 条件加长:允许更长的 goal 条件描述#6665 复杂目标不用缩减描述了
xAI Grok 内置 provider:通过 /auth 向导配置 xAI 模型#6805 不用写自定义 provider 配置就能用 Grok
定时任务引用标签:prompt 中插入 extension/skill/MCP 引用#6589 定时任务 prompt 可以直接引用技能和 MCP
MessageDisplay hook:流式输出中途触发回调#6489 插件可以在回复中途跟踪文本内容
QQ Bot 群消息处理#6457 QQ 频道场景的群消息支持

🔧 重要修复

修复PR对你的影响
Channel 不再发送子代理中间输出#6696 钉钉/飞书不再收到半成品回复
钉钉入站媒体 token 刷新#6903 钉钉频道图片/文件消息不再因为 token 过期而失败
企业微信 requireMention 不再禁用群聊#6948 企业微信群聊功能恢复正常
飞书凭证校验#6780 无效凭证不再静默失败
/mcp 详情新增 Approve 按钮#6518 pending/rejected 的 MCP server 可以直接批准
MCP URL query 保留#6587 远程 MCP 连接不再因为 URL 尾部被截断而失败
MCP OAuth 401 自动恢复#6732 OAuth 过期后自动重试,不用手动重连
MCP OAuth HTTP 握手保留 challenge#7022 MCP OAuth 连接不再因为 challenge 丢失而失败
MCP 只读自动审批需要 trust#6924 不受信任的 MCP server 不会静默自动审批
VS Code 光标位置 =0 不再被覆盖#2971 行首光标不会跳到行尾
VS Code ACP 进程 Electron Node 模式#6866 VS Code 扩展中 ACP 进程不再因为 Node 版本问题失败
Web Shell composer 高度自适应#6872 长 prompt 不再被固定高度截断
Web Shell session 分组折叠状态持久化#6878 刷新后 session 分组不会全部展开
YOLO 模式不再被 plan mode 静默禁用#6630 进了 plan mode 不会偷偷关掉你的 YOLO
Approval mode UI 标签本地化#6592 Shift+Tab 切模式时不再冒出英文标签
Shell 超时归类为工具错误#6864 shell 超时不再被当成模型错误
ACP 用户指令优先#6607 Agent 模式下你的指令不再被附件内容挤到后面
子代理模板占位符修复#6672 ${0} 等数字模式不再被误解析
Claude Opus 4.6-4.8 token 限制#6718 不再过早触发 compaction
Claude 代理 thinking 签名处理#6893 通过代理使用 Claude 不再因为无签名 thinking 报错
Managed memory 压缩时保留#6714 microcompaction 不再丢失记忆条目
Skill 结果参与 microcompaction#6788 skill 执行结果不再在压缩时丢失
无效模型流恢复#6712 模型返回无效流不再直接崩溃
max-token 续写失败自动回滚#6921 续写失败后不会留在半截状态
trusted-folders 缓存不再被污染#6900 预览信任检查不会影响后续判断
启动性能优化:tree-sitter 懒加载#6747 启动更快
Git 快照进程减少#6784 会话中性能更好
长会话 OOM 防护#6682 长交互会话退出时不再 OOM 崩溃
会话恢复统一方案#6731 中断/悬挂/降级历史的恢复更可靠

👥 贡献者

贡献者贡献内容参考 PR 链接
@wenshao Code Review 大升级(inline 评论、verifier/reverse-audit、triage 评分)、Web Shell 改进(split view、Mermaid 缩放、workspace 着色、视觉预览)#6593 , #6942 , #6965 , #6971 , #6881 
@doudouOUC 多工作区全链路(ACP 端点、频道 worker 分组、workspace 持久化)、PDF 自动转图片、会话列表、transcript reader#6621 , #6635 , #6585 , #6716 , #6741 
@yiliang114 子代理循环修复、shell 自杀修复、CI 多项改进、Claude token 限制、managed memory 保留、流容错#6543 , #6544 , #6682 , #6714 , #6718 
@qqqys Channel 全面改进(daemon 恢复、钉钉 Stream 修复、markdown 表格保留、频道 payload 诊断)、goal 生命周期修复#6680 , #6715 , #6673 , #6617 , #6620 
@chinesepowered VS Code 光标修复、mobile-mcp 优化、cua-driver 坐标归一化、LRU cache 修复、dotfiles 语言检测#2971 , #6624 , #6785 , #6787 
@ytahdn Web Shell 多项改进(shadcn、侧边栏、设置页面、extension 管理页、workspace 路径锁定、split view)#6760 , #6804 , #6815 , #6853 , #6956 
@dreamWB Web Shell(底部状态栏、assistant turn footer、context mention、可配置侧边栏、模型选择器、session group 颜色)#6613 , #6611 , #6578 , #6750 , #6758 
@callmeYe 记忆对话对齐、daemon 记忆任务错误详情、记忆 remember 刷新、skill 安装路径、workspace skill API#6434 , #6431 , #6497 , #6811 , #6816 
@chiga0 Ctrl+O 冻结 transcript 视图、VP mode inline thought expand、session artifact 持久化#5666 , #6079 , #6557 
@jifeng Markdown 表格可读性改进、双击单元格查看完整内容#6626 , #6530 , #6838 
@TianYuan1024 SDK 交互式问答回传、子代理可观测性增强、xAI Grok provider#6655 , #6580 , #6805 
@tanzhenxin NO_PROXY 模型请求支持、max_tokens context window clamp、Explore subagent 继承主模型#6640 , #6556 , #6807 
@LaZzyMan /learn 命令、mobile-mcp 坐标归一化修复、/mcp Approve 按钮#6440 , #6610 , #6518 
@Nas01010101 Shell 命令默认超时可配、cron step 修复、tools.disabled 文档、YOLO plan mode 修复#6628 , #6627 , #6641 , #6630 
@zjunothing 记忆 agent 超时可配、vision bridge 超时重试、桌面版剪贴板图片修复#6459 , #6541 , #6708 
@huww98 Alt+T 流式展开完整推理内容#6678 
@yuanyuanAli Web Shell AskUserQuestion 折叠/展开、mobile welcome composer slots#6588 , #6584 
@Alex-ai-future CLI 命令名匹配优先、plan mode 错误响应改进#6504 , #6667 , #6764 
@Eric-GoodBoy-Tech QQ Bot 群消息处理#6457 
@DragonnZhang model-provider 配置文档、/goal 条件加长、CI 桌面 release notes 截断#6552 , #6665 , #6792 
@dexhunter 纯 ASCII token 快速路径、tree-sitter 懒加载启动优化#6551 , #6747 
@han-dreamer Approval mode UI 本地化、Git branch chip、记忆 remember 刷新#6592 , #6725 , #6497 
@samuelhsin 会话分组自定义 Hex 颜色#6752 
@water-in-stone 统一 session 恢复方案#6731 
@BZ-D 定时任务 prompt 引用标签#6589 
@VectorPeak MCP URL query 保留、ACP readTextFile 修复#6587 , #6704 
@BenGuanRan 飞书凭证校验、钉钉 webhook 私聊投递、企业微信 requireMention 修复#6780 , #6891 , #6948 
🆕 @liziwl 🎉 首次贡献:qwen update/update 一键升级命令#5780 
🆕 @C0d3N1nja97342 🎉 首次贡献:Windows extension tempDir 清理修复#6545 
🆕 @cxruan 🎉 首次贡献:Web Shell dialog backdrop z-index 可配#6572 
🆕 @harbin1053020115 🎉 首次贡献:Web Shell harness 基础设施#6517 
🆕 @juhuan 🎉 首次贡献:SDK 控制方法和 transport 选项#6492 , #6491 
🆕 @ksws00684315 🎉 首次贡献:子代理模板占位符修复#6672 
🆕 @kaymeer 🎉 首次贡献:ACP 用户指令优先级修复#6607 
🆕 @destire-mio 🎉 首次贡献:Ctrl+S 项目级 prompt 暂存#6709 
🆕 @yanchenko 🎉 首次贡献:MessageDisplay 流式 hook#6489 
🆕 @ever-o 🎉 首次贡献:Web Shell 用户消息引用标签渲染#6537 
🆕 @ran411285752 🎉 首次贡献:ACP tool-call 生命周期暴露#6819 
🆕 @morluto 🎉 首次贡献:畸形工具结果保留显示、session 配置校验、续写回滚#6925 , #6920 , #6921 
🆕 @AriaZhao-coder 🎉 首次贡献:trusted-folders 缓存不再被预览检查污染#6900 
🆕 @xurik 🎉 首次贡献:daemon session channel 来源标记#6991 

升级方式:运行 npm i @qwen-code/qwen-code@latest -g 即可升级到最新版本。也可以在 Qwen Code 中直接使用 /update 命令一键升级。

如有问题或建议,欢迎在 GitHub Issues  反馈!

Last updated on