Claude Code 并行会话使用教程

10 阅读2分钟

1. 基本概念

Claude Code 通过 Subagents(子代理) 实现并行会话。每个子代理是独立的 Claude 实例,拥有独立的上下文窗口和工具权限,可以同时执行不同任务。


2. 三种并行方式

方式一:Agent 工具(内置)

在对话中,Claude Code 可以通过 Agent 工具同时启动多个子代理:

# 示例:同时研究两个问题
Agent 1: 搜索认证相关代码
Agent 2: 搜索数据库 schema

关键参数:

  • subagent_type — 指定代理类型(ExplorePlan 等)
  • isolation: "worktree" — 在隔离的 git worktree 中运行,避免冲突
  • run_in_background: true — 后台运行,不阻塞当前对话

方式二:自定义 Subagent 文件

.claude/agents/ 目录下创建 .md 文件定义自定义代理:

.claude/
└── agents/
    ├── code-reviewer.md
    ├── security-checker.md
    └── test-writer.md

示例 .claude/agents/code-reviewer.md

---
name: code-reviewer
model: sonnet
allowed-tools: Read, Grep, Glob
---

你是一个代码审查专家。审查代码质量、可维护性和潜在 bug。

方式三:多终端窗口

最简单的方式 — 打开多个终端窗口,每个运行一个独立的 claude 实例:

# 终端 1
cd ~/project && claude

# 终端 2
cd ~/project && claude

注意:多个实例同时编辑同一文件可能产生冲突,建议配合 git worktree 使用。


3. Git Worktree 隔离(推荐)

Worktree 让每个并行会话在独立的代码副本中工作,避免冲突:

# 在 Claude Code 中输入
/worktree

或通过命令行手动创建:

git worktree add .claude/worktrees/feature-a -b feature-a
git worktree add .claude/worktrees/feature-b -b feature-b

每个 worktree 有独立的工作目录和分支,完成后各自提交 PR。


4. 实用场景示例

场景做法
同时修多个独立 bug每个 bug 一个 worktree + 一个 claude 实例
代码审查 + 写新功能一个会话审查,另一个会话开发
并行探索多种方案用 Agent 工具同时启动多个 Explore 代理
大规模重构多个 worktree 代理分别处理不同模块

5. 最佳实践

  1. 用 worktree 隔离写操作 — 多个代理同时写同一目录容易冲突
  2. 只读任务可以直接并行 — 搜索、分析、审查不需要隔离
  3. 选择合适的模型
    • haiku — 简单检查,速度快成本低
    • sonnet — 常规分析和审查(推荐默认)
    • opus — 复杂架构设计
  4. 注意 API 成本 — 并行会话意味着多倍的 token 消耗
  5. 使用绝对路径 — worktree 中的工作目录不同,相对路径可能出错

6. 快速上手

最快的方式是在对话中让 Claude 并行处理:

"请同时帮我:1) 查找所有未使用的导入 2) 检查是否有安全漏洞 3) 分析测试覆盖率"

Claude Code 会自动启动多个子代理并行执行这些任务。