开篇:你是不是也这样用 Claude Code?
打开终端,敲下 claude,提一个需求,盯着屏幕等结果。Claude 在干活的时候,你只能干等着。想同时让它修个 bug、审个 PR、再调查一下日志?对不起,得开三个终端窗口,来回切换,生怕错过哪个会话需要你拍板。
如果你是一个项目里多线作战的工程师,这种”单线程”的协作方式一定让你抓狂过。
好消息是,Anthropic 在 Claude Code v2.1.139 之后推出了一个叫 Agent View 的新功能。一句话概括:让你像看任务面板一样,同时调度和管理多个 Claude 会话。
今天这篇文章,带你彻底吃透这个功能。
一、Agent View 到底解决了什么问题?
传统用法下,Claude Code 是一个”交互式终端会话”——你和它一对一对话。哪怕你有十个独立任务,也只能排队来。
Agent View 把这个模式彻底翻转了:
- 一个屏幕,看所有会话:每个会话一行,显示它在做什么、是否需要你输入、有没有完成。
- 会话后台独立运行:你关掉终端,关掉 Agent View,甚至重启 Claude Code,会话照样在后台跑。
- 按需介入,而不是全程盯着:谁需要你拍板,谁就被高亮出来,其他的让它们自己跑。
适用场景非常清晰:当你有多个独立任务可以并行处理时,比如批量修 bug、批量审 PR、批量调查日志。如果你只是想和 Claude 一起深度思考一个问题,正常用交互式会话就够了。
二、三分钟上手:打开 Agent View
第一步:启动
claude agents
界面会接管整个终端,底部是一个输入框,上方是会话列表。按 Esc 退出,会话照样在后台跑。
第二步:调度第一个会话
在输入框输入你的需求,按 Enter。比如:
帮我排查 SettingsChangeDetector 这个测试为什么偶尔失败
一个新会话就启动了,在列表中显示为一行。想再调度?继续输入。每个会话独立消耗你的订阅配额,所以并行十个就是十倍的用量,这一点心里要有数。
第三步:窥视和回复
用方向键选中某一行,按 Space 打开”窥视面板”——能看到这个会话在干什么、需要什么、产出了什么。
如果它在等你回答,直接在窥视面板里输入回复,按 Enter 发送。不用附加进去,不用切换上下文。
第四步:附加和分离
想看完整对话?按 Enter 或 →,Agent View 消失,你进入这个会话的完整交互界面。想回到列表?在空提示下按 ← 分离。
记住:分离不会停止会话。←、Ctrl+C、Ctrl+D、/exit 都不会杀掉它。只有 /stop 或 Ctrl+X 才会真正终止。
三、读懂状态:每一行在告诉你什么
Agent View 把会话按状态分组排列,需要你输入的永远在上面。每行的图标传达两个维度的信号:
指示器(颜色/动画)= 会话状态
| 指示器 | 状态 | 含义 |
|---|---|---|
| 动画 | 工作中 | Claude 正在跑工具或生成响应 |
| 黄色 | 需要输入 | 在等你拍板,通常是权限或多选 |
| 暗淡 | 空闲 | 没在被特定问题阻塞 |
| 绿色 | 已完成 | 任务成功 |
| 红色 | 失败 | 报错结束 |
| 灰色 | 已停止 | 被手动停止 |
图标形状 = 底层进程状态
✻或动画✽:进程活着,可以立即回复∙:进程已退出,但状态还在,可以随时唤醒✢:/loop会话在两次迭代之间休眠
右边缘的彩色圆点 = 该会话开的 PR 状态
黄色等审查,绿色检查通过,紫色已合并,灰色草稿/关闭。对很多任务来说,这个点变绿就是你介入的信号——审一下、合一下,大功告成。
四、几个让你效率翻倍的高级技巧
1. 把交互式会话扔到后台
正在和 Claude 聊天,突然想去做别的?在会话里运行:
/bg
或者在空提示下按 ←,当前会话立刻后台,Agent View 打开,该会话被预选中。完全不打断手头工作。
2. 从 shell 直接起后台会话
不想打开 Agent View,只想丢一个任务给 Claude?
claude --bg "调查 flaky 测试 SettingsChangeDetector"
终端会打印一个短 ID 和管理命令,你可以脚本化这一切。
3. 让特定的 Subagent 当主代理
如果你有自定义的 subagent(比如 code-reviewer),可以让它直接作为主代理跑:
claude --agent code-reviewer --bg "处理 PR 1234 的审查意见"
或者在 Agent View 输入框里以 subagent 名开头,或用 @<agent-name> 提及。
4. 文件编辑自动隔离
这是个非常贴心的设计:后台会话默认禁止在工作目录写文件。一旦需要编辑,Claude 自动把它移到 .claude/worktrees/ 下的 git worktree 里。
这意味着十个并行会话互不污染——每个都有自己的工作副本,读同一份代码,写各自的版本。删除会话时 worktree 一起删,所以记得在删除前合并或推送你想保留的改动。
5. 过滤会话列表
会话多了眼花?在输入框输入:
a:<name>—— 只看某个 subagent 的会话s:blocked—— 只看需要你输入的#1234或 PR URL —— 只看处理该 PR 的
6. 必记快捷键
| 快捷键 | 操作 |
|---|---|
↑/↓ | 选择会话 |
Space | 打开/关闭窥视面板 |
Enter | 附加到会话 |
Shift+Enter | 调度并立即附加 |
Alt+1..Alt+9 | 直接跳到第 N 个会话 |
Ctrl+S | 按状态/目录切换分组 |
Ctrl+T | 固定/取消固定 |
Ctrl+X | 停止(再按一次删除) |
Ctrl+R | 重命名 |
? | 查看所有快捷键 |
五、它是怎么”活在后台”的?
Agent View 不是简单地开了一堆终端进程。Anthropic 设计了一个每用户的监督进程(supervisor):
- 第一次后台会话时自动启动
- 跟你的终端解耦——关终端、关 shell 都不影响
- 监视磁盘上的 Claude Code 二进制文件,自动更新后自动重启到新版本
- 所有会话完成且无终端连接后,监督进程自己退出
会话状态存在 ~/.claude/ 下:
daemon.log—— 监督进程日志daemon/roster.json—— 运行中的会话列表jobs/<id>/state.json—— 每个会话的状态
但要注意:后台会话活不过机器睡眠或关机。重启之后,运行 claude respawn --all 一次性把它们拉起来,对话历史完整保留。
六、几个容易踩坑的地方
-
配额翻倍消耗:并行十个会话 = 用十倍订阅额度。不是免费的午餐。
-
会话本地运行:不在云上,机器关了就停。如果需要云端,看 Claude Code on the web。
-
worktree 不会自动清理:删除会话才会删 worktree。如果会话异常结束,可能残留。用
git worktree list看看,git worktree remove <path>清掉。 -
权限模式继承自目录:从 Agent View 调度的会话用的是该目录 settings 里的
defaultMode,不会从 Agent View 传递。bypassPermissions这类危险模式必须先在交互式会话里接受过一次才能用于后台。 -
管理员可以禁用:如果你的公司不让用,可能是
disableAgentView被设成了true,或者CLAUDE_CODE_DISABLE_AGENT_VIEW环境变量被开启。
七、它和 Subagents、Agent Teams 有什么区别?
容易混淆,这里厘清一下:
- Subagents:在一个会话内调用的子代理,用于把任务委派给专门配置的代理(比如 explore、code-reviewer)。
- Agent Teams:多个会话互相发消息协作,有 leader 有 worker,适合需要协调的复杂任务。
- Agent View:多个完全独立的会话并行跑,互不通信,你是唯一的协调者。
简单说:subagent 是会话内部的工具,team 是会话之间的协作,Agent View 是会话之上的调度面板。
八、什么时候该用 Agent View?
如果你符合下面任何一条,值得现在就试试:
- 经常同时处理多个独立 issue 或 PR
- 想把”等 Claude 跑完”的时间利用起来,而不是干瞪眼
- 团队里有标准化流程(修 bug、审 PR、跑测试),想批量委托
- 习惯了用任务面板管理工作,而不是用记忆力跟踪一堆终端窗口
如果你只是写写小脚本、改改单个文件,正常用 claude 就好,不必为了用而用。
写在最后
Agent View 还在研究预览阶段(Research Preview),界面和快捷键可能还会变。但从设计上看,Anthropic 想表达的方向已经很清楚:
AI 编程协作的下一站,不是让 AI 更聪明地回答一个问题,而是让你能同时调度十个 AI 去解决十个问题。
从单线程对话,到任务面板式管理。这是工具形态的进化,也是你工作方式的升级。
打开终端,敲下 claude agents,从此告别”等 Claude”的日子。
参考文档:使用 agent view 管理多个代理 - Claude Code 官方文档
版本要求:Claude Code v2.1.139 或更高