Claude Code桌面版迎来重大更新

0 评论 282 浏览 0 收藏 19 分钟

Claude Code 桌面版这次更新被形容为几乎是一个 v2:嵌套会话能自动拆分子任务,侧边栏按等待输入、执行中、已完成分组,环境与 Git worktree 则负责隔离多个会话的代码修改。

Anthropic 最近为 Claude Code 桌面版推送了一轮重要更新。Claude Code 团队成员 Thariq Shihipar 将它形容为“几乎是一个 v2”:桌面端不仅更方便同时运行多个会话,也开始能够主动拆分子任务、创建嵌套会话,并持续向主会话汇报进度。

这次更新真正要解决的问题,并不是单个 Agent 的运行速度,而是多个 Agent 并行工作以后,人的注意力如何跟得上。过去开发者需要反复切换窗口、翻阅长对话、判断哪个任务停住了;现在,桌面端尝试用嵌套会话、状态分组、待办列表和系统通知,把这些管理工作集中起来。

本文将重点拆解:

  • 嵌套会话如何自动拆分和并行执行任务;
  • 新侧边栏怎样提示哪些会话正在等待人工介入;
  • “环境”和 Git worktree 如何隔离多个会话的代码修改;
  • 主动跟进、/btw 和空闲压缩分别解决什么问题;
  • 新版目前还存在哪些值得注意的争议。

最大变化:Claude 会主动创建嵌套会话

新版最核心的能力是嵌套会话(nested sessions)。当一项工作可以拆成几个相互独立的任务时,Claude 可以为每件事分别打开一个子会话,让它们并行读取代码、修改文件和运行测试,完成后再将结果汇报给父会话。

官方演示中,Claude 在处理商品网格布局抖动时,又发现了三个后续问题:

  1. 购物车缩略图没有设置宽高;
  2. 首屏以下的图片没有启用懒加载;
  3. 结账表单缺少 label。

Claude 会把这些问题列成三个建议任务。开发者点击 Start all 后,三个子会话便可同时开工,父会话则依次接收进度消息,最后汇总所有任务的完成状态。

这种结构有两个明显优势:

  • 子会话里的试错、命令输出和详细过程不会挤满主对话;
  • 如果某个任务卡住,开发者仍可以进入对应子会话查看完整上下文并继续处理。

子会话会显示在父会话之下,形成清晰的层级关系。按照相关文档,Claude 还可以访问最近活跃的其他会话,执行列出、读取、发消息、重命名或归档等操作。会话不再只是彼此隔离的聊天窗口,而开始具备协作能力。

新侧边栏:重点不是“开得多”,而是知道该看哪个

当多个会话同时运行时,新的瓶颈很快会出现:有的会话还在执行,有的已经完成,有的只是停下来等待开发者确认。如果所有会话仍按时间顺序混在一起,用户很难快速判断下一步该处理什么。

新版侧边栏将会话分成三种状态:

  1. Needs input:等待用户输入或决策;
  2. Working:仍在执行任务;
  3. Completed:已经完成。

进入某个会话后,还能看到实时更新的待办清单。Claude 会随着执行进度逐项勾选;需要用户回应时,则用回顾卡片概括这一轮做了什么,让开发者不必重新阅读整段对话。

此外,新版还支持:

  • 后台会话完成后发送系统通知;
  • 在侧边栏中按住 Cmd 点击会话进行左右分屏;
  • 随时进入子会话查看具体命令、修改和测试情况。

这反映了 Agent 编程工具正在发生的变化:当模型能够长时间自主执行任务后,等待模型输出已不再是唯一成本。开发者更容易被大量会话、待确认事项和上下文切换占用注意力,而新版桌面端的大部分设计正是在解决这个问题。

“环境”功能:一次保存多个仓库、主机与配置

新建会话的界面也进行了调整。最近使用过的文件夹会直接显示出来,方便从上次中断的位置继续工作。

更重要的是,新版新增了“环境”(Environment)功能。用户可以把多个文件夹、一台 SSH 主机或云端资源保存成一套命名环境,以后直接基于这套配置创建会话。

演示中的环境创建窗口包括四类连接方式:

  1. Local;
  2. Cloud;
  3. SSH;
  4. Remote Control。

一个本地环境可以同时加入多个仓库,例如前端项目、支付 API 和设计系统,并为整套环境单独设置环境变量。对于跨仓库开发、微服务联调或远程开发,这比每次手动重新选择目录和配置连接更直接。

多会话同时改代码,如何避免互相覆盖?

环境中的每个文件夹都可以独立选择分支,并决定是否启用 Git worktree。

当几个会话需要同时修改同一个仓库时,它们可以分别在独立的 worktree 中工作,避免不同任务直接覆盖彼此的文件。默认情况下,worktree 会创建在项目根目录下:

.claude/worktrees/

这里有一个容易忽略的细节:.env 等已经被 .gitignore 忽略的文件不会自动出现在新 worktree 中。如果子会话依赖这些配置,需要将对应文件写入:

.worktreeinclude

否则,新会话可能会因为缺少环境变量或本地配置而无法启动项目。

worktree 并不是新技术,但把它整合进多 Agent 会话管理后,作用发生了变化:过去开发者手动创建 worktree 是为了并行开发分支,现在它也成为多个 AI 会话安全并发修改同一仓库的隔离层。

主动跟进:发现范围外问题后,一键另开会话

Claude 在执行任务时,经常会发现一些不属于当前需求、但确实值得处理的问题。以前,它通常只能在回复末尾列出建议,用户还需要自己复制问题、创建新会话并重新交代背景。

新版会直接弹出跟进任务卡片,提供两个选择:

  1. Do it here:在当前会话中顺带处理;
  2. Start:将问题作为独立会话启动,当前会话继续执行原任务。

Claude Code跟进任务卡片

Claude Code跟进任务卡片

输入框为空时,Claude 还会用灰色文字提示下一步可能要做什么,按 Tab 或右方向键即可采纳建议。

需要注意,生成这些提示会额外发送一次后台请求,并计入套餐用量。如果不需要,可以在以下位置关闭:

Settings > Claude Code > Sessions > Prompt suggestions

btw:不打断主任务的旁路提问

另一个很实用的新能力是 /btw,也就是“by the way”。当主会话还在执行任务时,用户可能临时想问一句与当前上下文有关、但不应该改变主任务方向的问题。

此时可以输入 /btw,或者使用快捷键:

  • macOS:Cmd + ;
  • Windows:Ctrl + ;

桌面端会在旁边打开一个独立标签页。这个旁路对话能够读取主线程到当前为止的全部上下文,因此用户不需要重新解释背景;但它不会把内容写回主会话,也不会打断主任务。

Claude Code的btw旁路对话

Claude Code的btw旁路对话

它很适合处理这类临时问题:

  • 某段代码中的常量为什么这样设置?
  • 当前改动会不会影响另一个模块?
  • 某个报错大致是什么意思?
  • 主会话正在采用的方案还有哪些替代方式?

但旁路对话不会保存到磁盘,关闭应用后无法恢复。重要结论仍需要手动保存到项目文档、代码注释或主会话中。

空闲压缩:在缓存过期前主动缩短长会话

与桌面版更新同期受到关注的,还有 Claude Code v2.1.299 加入的空闲压缩(idle compaction)。严格来说,这项能力首先出现在终端版更新日志中,但它与多会话并行场景关系密切。

Claude Code 的提示词缓存有效期大约为一小时。过去,一个长会话闲置较久后再继续,完整上下文可能需要重新处理,导致用量增加。

现在,当会话满足以下条件时,Claude Code 会在缓存过期前自动压缩:

  • 上下文超过约 200K Token;
  • 会话闲置约 54 分钟。

系统会把长上下文整理为摘要。用户回来继续时,只需重新处理摘要,而不是完整历史记录。

这可以降低多个长会话同时挂起时的重复上下文成本,但也存在明确代价:压缩后,Claude 是基于摘要继续工作,并不再持有原始完整上下文。对于依赖大量细节的任务,摘要可能不如原会话精确。

如果不希望启用,可以在 settings.json 中配置:

{

“idleCompaction”: false

}

触发压缩的最小 Token 数则可以通过环境变量调整,默认值为 200K:

CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS

新版并非没有争议

这次改版也引发了一些体验层面的吐槽。

首先,侧边栏改成父子会话嵌套后,如果父会话被归档,子会话可能浮到顶层,原本相关的会话被分散在不同位置。旧版的“Group by”分组选项也被移除,因此有用户希望增加切换回扁平列表的开关,并要求在更新日志中明确说明这些变化。

其次,上下文用量的位置发生了改变。过去将鼠标悬停在用量圆环上即可查看,现在需要打开侧边栏。对竖屏、分屏和窄窗口用户而言,这会占用更多空间。

新版上下文用量显示

新版上下文用量显示

这项争议尤其值得关注:一个主打多会话并行的工具,会同时消耗更多上下文和套餐额度,因此“还剩多少上下文”本应是最容易看到的信息之一。

这次更新意味着什么?

从嵌套会话、环境、worktree 到主动跟进和 /btw,Claude Code 桌面版正在从“一个带图形界面的编程会话”转向“多个 Agent 会话的调度台”。

它的工作方式更接近:

  1. 用户向主会话交代目标;
  2. Claude 识别可并行处理的任务;
  3. 子会话在隔离环境中读代码、修改文件并测试;
  4. 侧边栏按状态提示哪里需要人工介入;
  5. 父会话汇总结果,用户只处理关键决策。

对于只运行单个短任务的开发者,这些变化可能只是界面优化;但对于同时维护多个仓库、长时间运行 Agent 或频繁拆分任务的人,桌面端的优势开始变得明显。

CLI 仍然适合快捷操作、脚本化流程和终端重度用户,而桌面版则在多会话可视化管理、分屏查看和人工注意力调度方面提供了更完整的工作流。两者并不是简单替代关系,选择取决于你主要是在“操作一个 Agent”,还是在“管理一组并行工作的 Agent”。

对国内开发者来说,使用 Claude 通常还会涉及支付和网络环境。如果希望减少相关配置,可以了解 Code80。它提供真实订阅账号转 API 的使用方式,更换 endpoint 后即可接入自己的工具,具体方式可前往 Code80 官网 查看。

常见问题

Q:什么是 Claude Code 的嵌套会话?

A:嵌套会话是由父会话创建和管理的子会话。每个子会话可以独立读取代码、修改文件和运行测试,结束后再把结果汇报给父会话,从而让多个任务并行执行,同时避免主对话被大量过程信息占满。

Q:多个会话同时修改同一个仓库,会不会互相覆盖?

A:可以通过 Git worktree 隔离。每个会话在独立工作目录和分支中修改代码,减少文件冲突。不过,被 .gitignore 忽略的配置文件需要通过 .worktreeinclude 明确复制进去。

Q:/btw 和新建一个普通会话有什么区别?

A:/btw 会自动读取主会话现有上下文,适合临时提问,而且不会打断或改写主线程。但它不会保存到磁盘,关闭应用后无法恢复。

Q:Prompt suggestions 会消耗额度吗?

A:会。生成下一步提示需要额外发起后台请求,并计入套餐用量。可以在 Settings > Claude Code > Sessions 中关闭 Prompt suggestions。

Q:idle compaction 会丢失上下文吗?

A:它会把完整长会话压缩成摘要,因此细节保留程度可能低于原始上下文。它的优势是降低缓存过期后重新处理完整历史记录的成本,代价则是后续工作基于摘要继续。

Q:什么情况下更适合使用桌面版而不是 CLI?

A:如果你经常同时运行多个长任务,需要查看哪些会话在等待输入、分屏对比结果,或管理多个本地与远程环境,桌面版更直观。若主要进行短命令、脚本化操作或单会话工作,CLI 仍然高效。

Q:国内开发者如何更方便地使用 Claude?

A:如果不想处理海外支付和复杂网络配置,可以了解 Code80,通过更便捷的方式将 Claude 等模型接入现有开发工具。

核心结论

Claude Code 桌面版这次更新的重点,不是简单增加几个按钮,而是重新组织多 Agent 并行工作的方式。嵌套会话让任务可以自动拆分,状态侧边栏帮助开发者优先处理需要介入的事项,环境与 worktree 负责隔离代码和配置,主动跟进与 /btw 则减少了手动创建会话和重复说明背景的成本。

这也说明 AI 编程工具正在进入一个新阶段:模型能做的事情越来越多以后,真正稀缺的资源不再只是推理速度和 Token,而是开发者的注意力。谁能更好地帮助用户判断“现在该看哪里、该做什么决定”,谁就更接近一个成熟的 Agent 工作台。

当然,新版仍需要解决会话归档后的层级混乱、上下文用量不够醒目等问题。对于 CLI 用户而言,也没有必要因为一次更新立刻完全迁移;更合理的做法,是用自己的典型任务测试多会话管理是否真的能减少切换成本。

本文由人人都是产品经理作者【易安说AI】,微信公众号:【易安说AI】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。

题图来自作者提供

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
海报
评论
评论请登录
  1. 目前还没评论,等你发挥!