Claude Code 刚刚推送了 2.1.0 版本更新。
我看了一下更新日志,这次不像之前的版本那样堆砌新功能,更侧重于打磨 Agent 的核心交互逻辑和开发者的实际体验。
特别是对 Agent 韧性的增强,让它在处理复杂任务时更像一个成熟的助手,而不是只会报错的脚本。Boris Cherny 也建议大家尽快升级。
下面是我整理的几个核心变化,跟大家分享一下。
1.Agent 行为与韧性增强
这次更新最重要的一点是 Agent 的执行逻辑变得更灵活。以前如果工具调用请求被拒绝,任务往往会直接中止。现在的 Agent 在遇到工具拒绝时,会尝试寻找替代方案继续执行任务,这大大提高了自动化任务的成功率。
同时,Agent 和 Skill 的定义更加完善。现在直接支持在 frontmatter 中定义生命周期钩子(Hooks),比如 PreToolUse 或 PostToolUse。这意味着我们可以在工具调用前后插入自定义逻辑,让 Agent 的行为更可控。
2.技能开发体验优化
对于编写 Skill 的开发者,新版本支持了“热重载”。在 .claude/skills 目录下修改或新建技能文件,不需要重启会话就能立即生效,调试效率提升明显。
此外,新增了上下文分叉(Context Forking)功能。你可以在技能中定义 context: fork,让子 Agent 在独立的上下文中运行任务,避免污染主会话的上下文环境。
3.交互细节的“开箱即用”
很多之前需要手动配置的痛点被解决了:
- • 换行优化:
Shift+Enter现在开箱即用,不需要额外配置终端就能实现换行,这在 iTerm2 或 Ghostty 等终端中体验很好。 - • 多语言支持:可以通过配置
language字段(例如japanese),强制模型使用特定语言响应。 - • Web端联动:新增了
/teleport命令,可以将当前的 CLI 会话直接“传送”到网页端的 claude.ai 继续进行,方便在图形界面查看复杂输出。
4.权限管理的颗粒度
权限设置引入了通配符支持。以前配置 Bash 权限可能很繁琐,现在可以使用类似 Bash(npm *) 的规则,既保留了灵活性,又不需要为每个子命令单独授权。同时,Ctrl+B 现在可以将任务更方便地置入后台运行。
这次的改动虽然不显眼,但确实让整个工具变得更顺手了。