<!-- 使用 .github/release.yml 中 release/v0.18.2 的配置生成的发布说明 -->
## 更新内容
* fix: 对过大的上下文指令发出警告 by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/5073
* docs: 修复过时的默认值、CLI 语法及工具命名漂移 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/5158
* chore(release): 桌面版 desktop-v0.0.4 by @qwen-code-ci-bot in https://github.com/QwenLM/qwen-code/pull/5127
* chore(release): v0.18.1 by @qwen-code-ci-bot in https://github.com/QwenLM/qwen-code/pull/5164
* feat(web-shell): 支持自定义页脚渲染器 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5166
* fix(core): 将编辑工具描述简化为仅路径 by @huww98 in https://github.com/QwenLM/qwen-code/pull/5140
* fix(monitor): 批量排空通知以减少 token 浪费 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/5165
* feat(web-shell): 为外部文本、标签和提交控制添加命令式 composer API by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5161
* feat(web-shell): 在折叠处提示词下方显示每次对话的时间与 token 数 by @wenshao in https://github.com/QwenLM/qwen-code/pull/5163
* docs(daemon): 刷新英文 daemon 文档 by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/5144
* fix(core): 在 MCP 工具的 SchemaValidator 中将数值字符串参数强制转换 by @pomelo-nwu in https://github.com/QwenLM/qwen-code/pull/4967
* fix(channels): 在 SessionRouter 中将发送者 ID 作为完整段进行匹配 by @Osamaali313 in https://github.com/QwenLM/qwen-code/pull/5116
* docs(design): DaemonTransport 抽象 — SDK 的可插拔传输层 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/5026
* ci: 以 qwen-code-ci-bot 身份发布 autofix PR by @qqqys in https://github.com/QwenLM/qwen-code/pull/5137
* fix(agent): 使分叉操作显式化;保持省略的 subagent_type 可等待 by @wenshao in https://github.com/QwenLM/qwen-code/pull/5155
* fix(core): 在第一个数据块之前自动重试传输流错误 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5171
* docs: 添加 Qwen Code Desktop 发布链接 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/5152
* docs: 修复 MCP token 路径、daemon UI 事件计数,并添加飞书频道 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/5172
* docs(channels): 为飞书设置指南添加截图 by @joeytoday in https://github.com/QwenLM/qwen-code/pull/4983
* feat(cli): 添加 daemon 状态 API by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/5174
* docs: 修复 README 中括号前缺失的空格 by @marko1olo in https://github.com/QwenLM/qwen-code/pull/4796
* fix: 绕过 Qwen PR 审查代理、清理过期 worktree 以及修复页脚换行 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5168
* feat(core+cli): 工作流 P4 — meta + /workflows + phase-tree (#4721) by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/5094
* feat(daemon): 将 web-shell 对话中的消息投递至正在运行的对话中 by @wenshao in https://github.com/QwenLM/qwen-code/pull/5175
* feat(tui): 支持带持续计时器的可折叠思考块 by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4598
* feat(web-shell): 暴露 transcript 事件变更 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5193
* 优化 web-shell 执行显示 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5190
* 修复已完成的 prompt 生命周期竞态条件 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5192
* fix(dingtalk): 重新打开代码块围栏而不插入空行 by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/5204
* fix(cli): 隐藏未配置的已停用 OAuth 模型 by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/5167
* fix(permissions): 不将 /dev/tcp 和 /dev/udp 重定向建模为文件 I/O by @warmjademe in https://github.com/QwenLM/qwen-code/pull/5196
* fix(core): 强化 exit_plan_mode 描述以防止空 plan 参数 by @Alex-ai-future in https://github.com/QwenLM/qwen-code/pull/5188
* fix(desktop): 保持最新源仅包含稳定版本 by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/5149
* fix(core): 在大端序文件中正确读取 SHORT 类型的 TIFF 尺寸 by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/5209
* fix(cli): 跳过对无标签且包含框线/中日韩内容的代码块的 highlightAuto by @yuanyuanAli in https://github.com/QwenLM/qwen-code/pull/5198
* fix: 对自托管 LLM 将非字符串工具参数强制转换为字符串 by @launchswitch in https://github.com/QwenLM/qwen-code/pull/4793
* ci(autofix): 优先处理近期未解决的 bug 而非陈旧问题 by @qqqys in https://github.com/QwenLM/qwen-code/pull/5178
* fix(cli): 保留需 sudo 权限的 npm 安装方式,不迁移至独立包 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5207
* Revert "fix(core): 当历史记录无用户消息时跳过自动生成标题" by @yuanyuanAli in https://github.com/QwenLM/qwen-code/pull/5200
* fix(e2e): 将 daemon_status 加入 serve 能力基线;在 PR 上运行 E2E by @wenshao in https://github.com/QwenLM/qwen-code/pull/5211
* fix(web-shell): 本地化剩余硬编码的 UI 字符串 by @carffuca in https://github.com/QwenLM/qwen-code/pull/5189
* fix(acp): 在 daemon 会话中加载扩展命令 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5216
* fix(web-shell): 简化折叠元数据显示 by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5223
* fix(ci): 基于 write 权限限制 PR 审查与分类 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5191
* ci: 在合并队列中运行 CLI 集成测试 by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5224
* ci(autofix): 将 issue 修复与审查响应统一为一个生命周期工作流 by @qqqys in https://github.com/QwenLM/qwen-code/pull/5233
* feat(cli): 添加带有 --json 和 --limit 参数的 sessions list 命令 by @ZijianZhang989 在 https://github.com/QwenLM/qwen-code/pull/5187
* ci(e2e): 停止在每次 PR 推送时运行 E2E 矩阵 by @yiliang114 在 https://github.com/QwenLM/qwen-code/pull/5238
## 新贡献者
* @Osamaali313 在 https://github.com/QwenLM/qwen-code/pull/5116 中完成了首次贡献
* @marko1olo 在 https://github.com/QwenLM/qwen-code/pull/4796 中完成了首次贡献
* @warmjademe 在 https://github.com/QwenLM/qwen-code/pull/5196 中完成了首次贡献
* @launchswitch 在 https://github.com/QwenLM/qwen-code/pull/4793 中完成了首次贡献
* @carffuca 在 https://github.com/QwenLM/qwen-code/pull/5189 中完成了首次贡献
**完整更新日志**: https://github.com/QwenLM/qwen-code/compare/v0.18.1...v0.18.2
<!-- Release notes generated using configuration in .github/release.yml at release/v0.18.2 -->
## What's Changed
* fix: warn on oversized context instructions by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/5073
* docs: fix stale defaults, CLI syntax, and tool naming drift by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/5158
* chore(release): desktop desktop-v0.0.4 by @qwen-code-ci-bot in https://github.com/QwenLM/qwen-code/pull/5127
* chore(release): v0.18.1 by @qwen-code-ci-bot in https://github.com/QwenLM/qwen-code/pull/5164
* feat(web-shell): support custom footer renderer by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5166
* fix(core): simplify edit tool description to path only by @huww98 in https://github.com/QwenLM/qwen-code/pull/5140
* fix(monitor): batch-drain notifications to reduce token waste by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/5165
* feat(web-shell): add imperative composer API for external text, tag, and submit control by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5161
* feat(web-shell): per-turn time & tokens on the collapse seam, below the prompt by @wenshao in https://github.com/QwenLM/qwen-code/pull/5163
* docs(daemon): Refresh daemon docs in English by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/5144
* fix(core): coerce numeric string params in SchemaValidator for MCP tools by @pomelo-nwu in https://github.com/QwenLM/qwen-code/pull/4967
* fix(channels): match sender id as a full segment in SessionRouter by @Osamaali313 in https://github.com/QwenLM/qwen-code/pull/5116
* docs(design): DaemonTransport abstraction — pluggable transport for SDK by @chiga0 in https://github.com/QwenLM/qwen-code/pull/5026
* ci: publish autofix PRs as qwen-code-ci-bot by @qqqys in https://github.com/QwenLM/qwen-code/pull/5137
* fix(agent): make forking explicit; keep omitted subagent_type awaitable by @wenshao in https://github.com/QwenLM/qwen-code/pull/5155
* fix(core): auto-retry transport stream errors before the first chunk by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5171
* docs: add Qwen Code Desktop release link by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/5152
* docs: fix MCP token path, daemon UI event count, add Feishu channel by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/5172
* docs(channels): add screenshots to Feishu setup guide by @joeytoday in https://github.com/QwenLM/qwen-code/pull/4983
* feat(cli): Add daemon status API by @doudouOUC in https://github.com/QwenLM/qwen-code/pull/5174
* docs: fix missing spaces before parentheses in README by @marko1olo in https://github.com/QwenLM/qwen-code/pull/4796
* fix: Qwen PR review proxy bypass, stale-worktree cleanup, and footer line break by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5168
* feat(core+cli): Workflow P4 — meta + /workflows + phase-tree (#4721) by @LaZzyMan in https://github.com/QwenLM/qwen-code/pull/5094
* feat(daemon): deliver web-shell mid-turn messages into the running turn by @wenshao in https://github.com/QwenLM/qwen-code/pull/5175
* feat(tui): collapsible thinking blocks with duration timer by @chiga0 in https://github.com/QwenLM/qwen-code/pull/4598
* feat(web-shell): expose transcript event changes by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5193
* Polish web-shell execution display by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5190
* Fix completed prompt lifecycle race by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5192
* fix(dingtalk): reopen code fences without inserting a blank line by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/5204
* fix(cli): hide unconfigured discontinued OAuth model by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/5167
* fix(permissions): do not model /dev/tcp and /dev/udp redirects as file I/O by @warmjademe in https://github.com/QwenLM/qwen-code/pull/5196
* fix(core): strengthen exit_plan_mode descriptions to prevent empty plan parameter by @Alex-ai-future in https://github.com/QwenLM/qwen-code/pull/5188
* fix(desktop): keep latest feed stable-only by @DragonnZhang in https://github.com/QwenLM/qwen-code/pull/5149
* fix(core): read SHORT-typed TIFF dimensions correctly on big-endian files by @he-yufeng in https://github.com/QwenLM/qwen-code/pull/5209
* fix(cli): skip highlightAuto for unlabeled code blocks with box-drawing/CJK content by @yuanyuanAli in https://github.com/QwenLM/qwen-code/pull/5198
* fix: coerce non-string tool params to strings for self-hosted LLMs by @launchswitch in https://github.com/QwenLM/qwen-code/pull/4793
* ci(autofix): prioritize recent unattended bugs over stale ones by @qqqys in https://github.com/QwenLM/qwen-code/pull/5178
* fix(cli): keep sudo-required npm installs on npm instead of migrating to standalone by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5207
* Revert "fix(core): skip auto-title generation when history has no user message" by @yuanyuanAli in https://github.com/QwenLM/qwen-code/pull/5200
* fix(e2e): add daemon_status to serve capabilities baseline; run E2E on PRs by @wenshao in https://github.com/QwenLM/qwen-code/pull/5211
* fix(web-shell): localize remaining hardcoded UI strings by @carffuca in https://github.com/QwenLM/qwen-code/pull/5189
* fix(acp): load extension commands in daemon sessions by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5216
* fix(web-shell): simplify collapse metadata display by @ytahdn in https://github.com/QwenLM/qwen-code/pull/5223
* fix(ci): gate PR review and triage on write permission by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5191
* ci: run CLI integration tests in the merge queue by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5224
* ci(autofix): unify issue-fix and review-response into one lifecycle workflow by @qqqys in https://github.com/QwenLM/qwen-code/pull/5233
* feat(cli): add sessions list command with --json and --limit flags by @ZijianZhang989 in https://github.com/QwenLM/qwen-code/pull/5187
* ci(e2e): stop running the E2E matrix on every PR push by @yiliang114 in https://github.com/QwenLM/qwen-code/pull/5238
## New Contributors
* @Osamaali313 made their first contribution in https://github.com/QwenLM/qwen-code/pull/5116
* @marko1olo made their first contribution in https://github.com/QwenLM/qwen-code/pull/4796
* @warmjademe made their first contribution in https://github.com/QwenLM/qwen-code/pull/5196
* @launchswitch made their first contribution in https://github.com/QwenLM/qwen-code/pull/4793
* @carffuca made their first contribution in https://github.com/QwenLM/qwen-code/pull/5189
**Full Changelog**: https://github.com/QwenLM/qwen-code/compare/v0.18.1...v0.18.2