<!-- 使用 release/v0.18.1-preview.1 分支中 .github/release.yml 的配置生成的发布说明 -->
## 更新内容
* 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 加入服务功能基线;在 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
## 新贡献者
* @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.1-preview.1
<!-- Release notes generated using configuration in .github/release.yml at release/v0.18.1-preview.1 -->
## 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
## 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.1-preview.1