emanjusaka —— 彼岸花开可奈何

【前沿资讯】claude-code v2.1.90 版本更新内容

3
0
【前沿资讯】claude-code v2.1.90 版本更新内容

by emanjusaka from https://www.emanjusaka.com/archives/claude-code-changelog-v2.1.90 彼岸花开可奈何
内容源自官方日志,由 emanjusaka 整理发布。

博客:https://www.emanjusaka.com
博客园:https://www.cnblogs.com/emanjusaka
公众号:emanjusaka的编程栈


Claude Code v2.1.90 版本发布了。本次更新涵盖了从交互式教学到底层性能优化,以及针对特定环境(如离线场景和 Windows PowerShell)的安全加固。

一、新增功能与交互增强

  • 交互式教学课程 (/powerup): 引入了全新的交互式课程,通过动画演示教学 Claude Code 的核心功能,帮助用户更直观地掌握工具技巧。

  • 离线环境支持: 新增环境变量 CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE。当 git pull 失败时,允许保留现有的 Marketplace 缓存,这对于在离线或弱网环境下工作的开发者非常有用。

  • 受保护目录扩展: 在 acceptEdits 模式下,.husky 目录现已被列为受保护目录,防止 AI 误改 Git 钩子配置。

二、性能优化(大幅提升响应速度)

  • 核心传输优化: SSE(Server-Sent Events)传输现在以线性时间处理大型流式帧,解决了此前可能导致的二次方时间复杂度延迟。

  • 长对话优化: 修复了 SDK 会话中长对话在写入转录(transcript)时变慢的问题,性能从二次方增长优化为线性。

  • 会话加载提速: /resume 的“所有项目”视图现在支持并行加载项目会话,对于拥有大量项目的用户,加载速度显著提升。

  • MCP 插件优化: 消除了缓存键查找时每轮对 MCP 工具 Schema 进行的 JSON.stringify 操作,降低了 CPU 开销。

三、关键修复

  • 缓存命中修复: 修复了 --resume 导致的一个严重回归(自 v2.1.69 起):此前对于使用延迟工具、MCP 服务器或自定义 Agent 的用户,首次请求会出现完整的 Prompt Cache 丢失。

  • 编辑冲突修复: 解决了在使用 PostToolUse 格式化钩子(如 save-on-format)时,由于文件内容在连续编辑之间被重写,导致 Edit/Write 失败并报错 "File content has changed" 的问题。

  • UI 稳定性:修复了因触发速率限制(Rate-limit)导致对话框反复自动开启并最终崩溃的死循环。

    • 修复了畸形工具输入到达权限对话框时导致的 UI 崩溃。

    • 修复了 /model/config 等选择界面在滚动时头部标题消失的问题。

  • 显示与交互:

    • 修复了在全屏滚动回溯中,CLAUDE.md 自动加载时搜索/阅读摘要勋章重复出现的问题。

    • 提升了浅色终端主题下“点击展开”悬浮文本的可读性。

  • 自主模式约束: 修复了自动模式(Auto mode)不尊重用户显式边界(如 "don't push" 或 "wait for X before Y")的问题。

  • Hook 拦截逻辑: 修复了 PreToolUse 钩子在输出 JSON 到 stdout 并以代码 2 退出时,未能正确拦截工具调用的问题。

四、安全与策略变更

  • PowerShell 权限加固: 强化了针对 PowerShell 工具的权限检查,修复了包括尾部及后台作业绕过、-ErrorAction Break 调试器挂起、归档提取的 TOCTOU(时间差攻击)以及解析失败时的降级防御风险。

  • 自动允许清单缩减: 出于 DNS 缓存隐私考虑,从自动允许执行的命令中移除了 Get-DnsClientCache 和 ipconfig /displaydns

  • 会话筛选优化: --resume 选择器现在会过滤掉由 claude -p 或 SDK 调用创建的临时会话,使项目恢复界面更加整洁。

···

版权声明 COPYRIGHT

谦学于心,谷纳万物,静思致远,共筑收获之旅!