如何在终端里同时运行多个 Claude Code 实例

发布时间:2026/11/1 1:50:04
如何在终端里同时运行多个 Claude Code 实例

只要你用 Claude Code 认真干过几天活,大概率都会碰上这个念头:一个会话正在重构代码,与此同时,你想开一个新会话去处理别的事情,好省点时间、提高点产出。毕竟没人愿意盯着进度条发呆。于是你就开始想:能不能直接再开一个窗口,让两边各干各的?你来对地方了。

能同时运行多个 Claude Code 实例吗?

简短回答:能。我大部分工作日都并行跑两到三个会话,这也是这个工具带给我吞吐量提升最明显的地方之一。不过这事有正确姿势和错误姿势,错误姿势的结局是:合并冲突满天飞,还有一到周三就把用量配额烧光。

先说说它到底是怎么运作的。

直接给结论

你可以同时运行多个 Claude Code 实例。每个实例都是独立的进程,各自持有自己的对话,各自在自己的上下文里干活。最干净的做法是给每个会话分配独立的目录,通常通过git worktree实现,这样各个会话永远不会碰彼此的文件。

有一点必须记住:在 Pro、Max、Team 或 Enterprise 订阅下,每个会话消耗的都是同一个用量池。这点下面还会细说,因为翻车的人基本都栽在这。

同时开多个 Claude Code 会话会发生什么?

每个你启动的实例都是真正独立的。具体表现在:

  • 对话互不相通。会话A看不到会话B的聊天记录。它们是不同进程,有不同的对话记录文件。
  • 上下文窗口各自独立。每个实例各自理解它正在看的代码,彼此之间没有共享记忆。
  • 任务执行互不阻塞。一个可以跑测试,另一个同时在写数据库迁移。谁也不挡谁。
  • 账户用量是共享的。这是隔离性唯一的例外。在Pro和Max订阅里,Claude Code 是包含在内的,但用量在Claude和Claude Code之间是共用的。你跑的每个会话,加上你在Claude.ai上的聊天,都算在同一个配额里。

所以,这些会话在方方面面都是隔离的——除了那个直接碰到你钱包的部分。这一点值得记牢。

具体怎么运行多个 Claude Code 实例

做法有几种,取决于你需要多强的隔离。下面从最简单讲到最稳妥。

多个终端窗口或标签页

最基础的做法:再开一个终端窗口或标签页,cd进项目目录,再运行一次claude。

# Terminal 1 cd ~/projects/api-service claude # Terminal 2 (new window or tab) cd ~/projects/web-frontend claude

当两个会话处在不同项目里时,这么做没问题。问题出在你把两个会话指向同一个文件夹的时候——它们可能会同时编辑同一批文件,互相踩踏。这正是 worktree 要解决的问题。

使用不同的项目文件夹

如果你的工作横跨多个仓库,那就一个仓库跑一个会话。不需要任何额外设置。每个claude进程都会从它被启动的位置去读取