文章目录
1、前言 2、tmux 是什么 2.1 一句话定义 2.2 为什么 Agent Teams 需要它 2.3 tmux 的三大核心优势 3、macOS 从零安装 3.1 安装 Homebrew(如果还没有) 3.2 安装 tmux 3.3 安装 Claude Code(如果还没有) 3.4 一键验证全部就绪 4、tmux 核心概念 4.1 Session(会话) 4.2 Window(窗口) 4.3 Pane(面板) 4.4 前缀键(Prefix Key) 5、tmux 动手实操 5.1 第一个 tmux Session 5.2 分屏操作 5.3 在 Pane 之间切换 5.4 放大/缩小单个 Pane(Zoom) 5.5 滚动查看历史输出 5.6 Detach 和 Reattach(核心技能) 5.7 关闭和清理 6、快捷键速查表 7、tmux 配置优化 7.1 创建配置文件 7.2 推荐配置 7.3 让配置生效 7.4 配置后的效果 8、Claude Code Agent Teams + tmux 实战 8.1 一次性配置(只需做一次) 8.1.1 启用 Agent Teams 实验功能 8.1.2 配置 teammateMode 为 tmux 8.1.3 验证环境 8.2 启动 Agent Teams 8.2.1 进入项目目录并启动 Claude Code 8.2.2 用自然语言描述团队任务 8.2.3 Claude 开始创建团队 8.3 在 tmux 中观察和操作 Teammates 8.3.1 切换到 Teammate 的 Pane 8.3.2 Zoom 查看某个 Teammate 的详细输出 8.3.3 滚动查看 Teammate 的历史输出 8.3.4 Detach 让所有 Agent 后台运行 8.4 Delegate 模式(让 Lead 专注协调) 8.5 CLAUDE.md:Agent 间的共享上下文 9、iTerm2 用户的额外选择 9.1 方案一:tmux -CC 控制模式 9.2 方案二:直接用 iterm2 模式 9.3 三种模式对比 10、实战场景与高级技巧 10.1 场景一:启动 Agent Teams 后去吃饭 10.2 场景二:在远程服务器上运行 Agent Teams 10.3 场景三:用额外的 Window 做监控 10.4 技巧:调整 Pane 布局 10.5 技巧:给 Pane 命名(方便识别) 11、常见问题排障 11.1 tmux session 残留(Agent 结束后 session 还在) 11.2 Teammate 没有出现在新的 Pane 中 11.3 Pane 空间不够(终端太小) 11.4 tmux 和 macOS 剪贴板不通 11.5 Prefix 键 Ctrl+B 和其他程序冲突 12、总结
🍃作者介绍:25届双非本科网络工程专业,阿里云专家博主,深耕 AI 原理 / 应用开发 / 产品设计。前几年深耕Java技术体系,现专注把 AI 能力落地到实际产品与业务场景。
🦅个人主页:@逐梦苍穹
🐼GitHub主页:https://github.com/XZL-CODE
✈ 您的一键三连,是我创作的最大动力🌹
1、前言
如果你已经了解了 Claude Code 的 Agent Teams 功能(多个 Claude 实例并行协作开发),那你一定会遇到一个非常实际的问题:
这些 Agent 在终端里到底怎么显示?我怎么同时看到它们各自在做什么?
答案就是 tmux。
Claude Code Agent Teams 有三种 Teammate 显示模式:
- in-process
:所有 Teammate 在同一个终端窗口内,用 Shift+Up/Down切换查看(默认) - tmux
:每个 Teammate 占据独立的 tmux pane,一目了然 - iterm2
:利用 iTerm2 的原生标签页(仅限 iTerm2 用户)
其中 tmux 模式是最推荐的方案——它不依赖特定终端软件,任何 macOS/Linux 终端都能用,而且可以 detach 后台运行,Agent 们会在你关掉终端后继续工作。
本文是一篇从零到实战的完整指南,目标是让你读完就能用 tmux 驾驭 Agent Teams。
2、tmux 是什么
2.1 一句话定义
tmux(Terminal MUltipleXer)是一个终端复用器,它允许你在一个终端窗口中运行多个终端会话,并且在断开连接后,会话依然保持运行。
2.2 为什么 Agent Teams 需要它
不用 tmux 的情况下,你启动 Agent Teams 后只能通过 Shift+Up/Down 在一个窗口内切换查看不同 Teammate 的状态,一次只能看一个。这就像看监控只有一个屏幕,要一个个切画面。
用了 tmux 之后:
┌─────────────────────┬──────────────────────┐
│ Team Lead │ bridging-dev │
│ (you talk here) │ Creating files... │
│ │ ████████░░░ 80% │
│ > engine-dev done ├──────────────────────┤
│ > assigning test │ engine-dev │
│ │ Task completed ✓ │
│ ├──────────────────────┤
│ │ utility-dev │
│ │ Writing tests... │
└─────────────────────┴──────────────────────┘
每个 Agent 有自己独立的 pane,你可以同时看到所有 Agent 的工作状态。
2.3 tmux 的三大核心优势
| 多面板显示 | |
| 后台持久运行 | |
| 随时恢复 | tmux a |
3、macOS 从零安装
3.1 安装 Homebrew(如果还没有)
Homebrew 是 macOS 的包管理器。打开 Terminal 运行:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安装完后验证:
brew --version
# Homebrew 4.x.x
如果你的 Mac 是 Apple Silicon(M1/M2/M3/M4),Homebrew 安装在
/opt/homebrew。安装脚本会自动提示你添加 PATH,务必按照提示操作。
3.2 安装 tmux
brew install tmux
验证:
tmux -V
# tmux 3.5a (or similar)
3.3 安装 Claude Code(如果还没有)
# 确保有 Node.js 18+
node -v# 如果没有 Node.js
brew installnode
# 安装 Claude Code
npminstall -g @anthropic-ai/claude-code
验证:
claude --version
3.4 一键验证全部就绪
echo"=== Environment Check ==="&&\
tmux -V &&\
node -v &&\
claude --version &&\
echo"=== All Good! ==="
看到类似输出就说明一切就绪:
=== Environment Check ===
tmux 3.5a
v22.13.0
1.0.33 (Claude Code)
=== All Good! ===
4、tmux 核心概念
这是理解 tmux 最重要的一节。tmux 的层级结构是:
Server
└── Session(会话)
└── Window(窗口)
└── Pane(面板)
4.1 Session(会话)
Session 是 tmux 的最外层容器。
一个 Session 可以包含多个 Window Session 可以被 detach(分离)—— 你关掉终端,Session 仍在后台运行 你可以随时 reattach(重新连接)到任何 Session
类比:Session 就像一个"工作空间"。你可以有一个叫 tuck-dev 的 Session 用于开发 Tuck 应用,另一个叫 blog 的 Session 用于写博客。
# 创建一个叫 tuck-dev 的 session
tmux new -s tuck-dev# 列出所有 session
tmux ls
# 分离当前 session(session 继续运行)
# 快捷键:Ctrl+B d
# 重新连接到 tuck-dev
tmux a -t tuck-dev
4.2 Window(窗口)
Window 是 Session 内的标签页。
一个 Session 可以有多个 Window 底部状态栏显示所有 Window,带星号(*)的是当前 Window 每个 Window 可以有自己的多个 Pane
类比:就像浏览器的标签页。你可以在一个标签页写代码,另一个标签页看日志。
4.3 Pane(面板)
Pane 是 Window 内的分屏区域。
一个 Window 可以水平/垂直分割为多个 Pane 每个 Pane 是一个独立的终端 - Claude Code Agent Teams 的每个 Teammate 就运行在独立的 Pane 中
这是和 Agent Teams 最直接相关的概念——当你启用 tmux 模式后,Claude Code 会自动为每个 Teammate 创建一个 Pane。
4.4 前缀键(Prefix Key)
tmux 的所有快捷键都需要先按前缀键,默认是 Ctrl+B。
操作方式:
按下 Ctrl+B(同时按住 Ctrl 和 B)- 松开
再按功能键
例如,要分屏:先按 Ctrl+B,松开,再按 "(双引号)。
这和 Vim 的 leader key 概念类似。后文中的"Prefix"均指
Ctrl+B。
5、tmux 动手实操
5.1 第一个 tmux Session
# 创建一个新 session(自动命名为 0)
tmux# 或者,创建带名字的 session(推荐)
tmux new -s my-first
你会进入一个看起来和普通终端几乎一样的环境,唯一区别是底部多了一条绿色状态栏。
5.2 分屏操作
这是 tmux 最常用的功能:
# 水平分割(上下两半)
Ctrl+B "# 垂直分割(左右两半)
Ctrl+B %
分割后的效果:
水平分割 (Ctrl+B "): 垂直分割 (Ctrl+B %):
┌──────────────────┐ ┌─────────┬─────────┐
│ Pane 0 │ │ Pane 0 │ Pane 1 │
├──────────────────┤ │ │ │
│ Pane 1 │ │ │ │
└──────────────────┘ └─────────┴─────────┘
5.3 在 Pane 之间切换
Ctrl+B ↑ # 切换到上方 pane
Ctrl+B ↓ # 切换到下方 pane
Ctrl+B ← # 切换到左侧 pane
Ctrl+B → # 切换到右侧 pane
当前活动的 Pane 的边框会高亮显示。
5.4 放大/缩小单个 Pane(Zoom)
当 Pane 太多导致每个都很小时:
Ctrl+B z # 将当前 pane 放大到全屏
Ctrl+B z # 再按一次,恢复原始布局
这在 Agent Teams 中极其有用——你可以先通过方向键切换到某个 Teammate 的 Pane,然后 Ctrl+B z 放大查看它的详细输出,看完后再 Ctrl+B z 缩回去。
5.5 滚动查看历史输出
tmux 的 Pane 默认不能用鼠标滚轮滚动。要查看历史输出:
Ctrl+B [ # 进入滚动模式(Copy Mode)
进入后:
用 ↑/↓或PgUp/PgDn翻页按 q或Esc退出滚动模式
后面的配置章节会教你如何开启鼠标滚轮支持。
5.6 Detach 和 Reattach(核心技能)
这是 tmux 的杀手级特性:
# 分离(Detach):当前 session 进入后台
Ctrl+B d# 此时你回到了普通终端,但 tmux session 还在运行!
# 查看有哪些 session 在后台
tmux ls
# my-first: 1 windows (created Mon Feb 9 10:00:00 2026)
# 重新连接(Reattach)
tmux a -t my-first
# 一切回到你离开时的样子
Agent Teams 场景:你启动了 3 个 Teammate 在干活,Ctrl+B d 分离后去喝杯咖啡。回来后 tmux a 重新连接,发现 Teammate 们已经写完了所有代码。
5.7 关闭和清理
# 关闭当前 pane
Ctrl+B x # 会提示确认 y/n# 关闭当前 window
Ctrl+B &# 会提示确认
# 杀掉指定 session
tmux kill-session -t my-first
# 杀掉 tmux 服务(关闭所有 session)—— 谨慎使用
tmux kill-server
6、快捷键速查表
最高频使用的快捷键(建议背下来):
Ctrl+B d | ||
Ctrl+B ↑↓←→ | ||
Ctrl+B z | ||
Ctrl+B [ | ||
Ctrl+B " | ||
Ctrl+B % | ||
Ctrl+B c | ||
Ctrl+B n/p | ||
Ctrl+B x |
记忆技巧:
d=detach,z=zoom,[=看(scroll),"=横线(水平分),%=竖线(垂直分)
7、tmux 配置优化
默认的 tmux 配置可以用,但不够好用。下面的配置专门为 Claude Code Agent Teams 场景优化。
7.1 创建配置文件
touch ~/.tmux.conf
7.2 推荐配置
将以下内容写入 ~/.tmux.conf:
# ============================================
# tmux config optimized for Claude Code Agent Teams
# ============================================# --- 基础设置 ---
# 开启鼠标支持(可以用鼠标点击切换 pane、拖拽调整大小、滚轮翻页)
set -g mouse on
# 提高历史记录行数(Agent 输出可能很长)
set -g history-limit 50000
# 减少 Esc 键延迟(默认 500ms,太慢了)
set -sg escape-time 10
# 开启 256 色支持
set -g default-terminal "screen-256color"
# --- 状态栏美化 ---
# 状态栏位置
set -g status-position bottom
# 状态栏颜色
set -g status-style 'bg=#1a1a2e fg=#888888'
# 左侧:session 名称
set -g status-left '#[fg=#4ec9b0,bold] [#S] '
set -g status-left-length 20
# 右侧:时间
set -g status-right '#[fg=#666666] %H:%M '
# 当前 window 高亮
set -g window-status-current-style 'fg=#4ec9b0,bold'
# --- Pane 边框 ---
# 非活动 pane 边框颜色
set -g pane-border-style 'fg=#333333'
# 活动 pane 边框颜色(绿色高亮,方便识别当前 pane)
set -g pane-active-border-style 'fg=#4ec9b0'
# --- 便捷键绑定 ---
# Ctrl+B r 重新加载配置(修改配置后不用重启 tmux)
bind r source-file ~/.tmux.conf \; display-message "Config reloaded!"
# Ctrl+B | 垂直分屏(比 % 更直觉)
bind| split-window -h
# Ctrl+B - 水平分屏(比 " 更直觉)
bind - split-window -v
# Alt+Arrow 不用 prefix 直接切换 pane(更快)
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
7.3 让配置生效
# 方法一:如果你在 tmux 中
# 按 Ctrl+B 然后按 : 进入命令模式,输入:
source-file ~/.tmux.conf# 方法二:如果你已经配置了 bind r(上面的配置里有)
# 直接 Ctrl+B r
# 方法三:重启 tmux(退出所有 session 后重新打开)
tmux kill-server
tmux new -s dev
7.4 配置后的效果
配置后的改善:
- 鼠标可以直接用了
:点击切换 Pane,滚轮翻页,拖拽边框调整大小 - Alt+方向键快速切换
:不需要先按 Prefix,直接 Alt+←→↑↓在 Pane 间跳转 |和-更直觉的分屏:竖线 = 垂直分,横线 = 水平分 - 历史记录更长
:5万行,足够查看 Agent 的完整输出 - 更好看的状态栏
:暗色调配色,当前 pane 绿色高亮
8、Claude Code Agent Teams + tmux 实战
这是本文的核心章节。我们来完整走一遍 从启用到看到 Agent 们在 tmux 中并行工作 的全流程。
8.1 一次性配置(只需做一次)
8.1.1 启用 Agent Teams 实验功能
# 添加到 ~/.zshrc(macOS 默认 shell)
echo'export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1'>> ~/.zshrc
source ~/.zshrc
8.1.2 配置 teammateMode 为 tmux
Claude Code 的设置文件在 ~/.claude/settings.json。如果文件不存在就创建:
# 查看是否已有配置
cat ~/.claude/settings.json 2>/dev/null ||echo"文件不存在,需要创建"
编辑(或创建)这个文件,确保包含:
{
"teammateMode":"tmux"
}
如果你已经有其他配置项,只需要在 JSON 对象里添加
"teammateMode": "tmux"即可。
8.1.3 验证环境
# 确认环境变量已设置
echo$CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS
# 应该输出 1# 确认 tmux 已安装
tmux -V
# 确认 Claude Code 可用
claude --version
8.2 启动 Agent Teams
8.2.1 进入项目目录并启动 Claude Code
cd ~/your-project
claude
8.2.2 用自然语言描述团队任务
启动 Claude Code 后,直接用自然语言告诉它你需要一个团队:
I need a team to build this project in parallel. Please create teammates:
- "bridging-dev" to implement the Bridging layer (PrivateAPIs.swift, BridgingHelpers.swift)
- "engine-dev" to build the MenuBarEngine core (ControlItemManager.swift)
- "utility-dev" to create utility extensions (NSScreen+Extensions.swift)Read CLAUDE.md for project context. Each teammate should work on their assigned files only.
或者用中文也完全可以:
帮我创建一个开发团队来并行开发这个项目。需要3个teammate:
- "bridging-dev" 负责 Bridging 层代码
- "engine-dev" 负责引擎核心代码
- "utility-dev" 负责工具类扩展请阅读 CLAUDE.md 了解项目上下文。每个 teammate 只修改自己负责的文件。
8.2.3 Claude 开始创建团队
Claude Code(Lead Agent)收到你的请求后,会自动:
创建 Shared Task List( ~/.claude/tasks/)使用 create_teammate工具为每个 Teammate 启动独立的 Claude Code 实例因为你配置了 "teammateMode": "tmux",每个 Teammate 会自动在新的 tmux pane 中打开
此时你的终端会自动变成这样:
┌───────────────────────────┬───────────────────────────┐
│ [Team Lead] │ [bridging-dev] │
│ │ │
│ Created team with 3 │ Reading CLAUDE.md... │
│ teammates. │ Starting on Bridging │
│ │ layer... │
│ Task #1 → bridging-dev │ │
│ Task #2 → engine-dev │ Creating PrivateAPIs.swift│
│ Task #3 → utility-dev │ ████████░░░░ 65% │
│ ├───────────────────────────┤
│ Waiting for teammates... │ [engine-dev] │
│ │ │
│ │ Building ControlItem │
│ │ Manager.swift... │
│ │ ████░░░░░░░░ 30% │
│ ├───────────────────────────┤
│ │ [utility-dev] │
│ │ │
│ │ Creating NSScreen+ │
│ │ Extensions.swift... │
│ │ ██░░░░░░░░░░ 15% │
│ You: _ │ │
└───────────────────────────┴───────────────────────────┘
就是这么自动——你不需要手动分屏,Claude Code 会通过 tmux API 自动创建 Pane。
8.3 在 tmux 中观察和操作 Teammates
8.3.1 切换到 Teammate 的 Pane
Ctrl+B → # 切换到右侧 Teammate
Ctrl+B ↓ # 切换到下方 Teammate
Ctrl+B ← # 切换回 Lead
如果你配置了 Alt+方向键(见第7章配置),可以直接:
Alt+→ # 更快地切换到右侧
Alt+↓ # 更快地切换到下方
8.3.2 Zoom 查看某个 Teammate 的详细输出
# 1. 先切换到目标 Teammate 的 pane
Ctrl+B →# 2. 放大该 pane 到全屏
Ctrl+B z
# 3. 查看完毕后,恢复原始布局
Ctrl+B z
8.3.3 滚动查看 Teammate 的历史输出
# 1. 切换到目标 pane
# 2. 进入滚动模式
Ctrl+B [# 3. 用 PgUp/PgDn 或方向键翻页
# 4. 按 q 退出滚动模式
8.3.4 Detach 让所有 Agent 后台运行
这是 tmux 最强大的功能之一:
Ctrl+B d # Detach
此时:
你回到了普通终端 - 但所有 Agent(Lead + Teammates)都还在运行!
你可以关掉终端、合上笔记本,Agent 们继续工作
当你想回来查看进度时:
tmux a # 重新连接到最近的 session
# 或者
tmux a -t session-name # 连接到指定 session
8.4 Delegate 模式(让 Lead 专注协调)
在 Lead Agent 的 Pane 中,你可以按 Shift+Tab 进入 Delegate 模式:
Normal Mode → [Shift+Tab] → Delegate Mode → [Shift+Tab] → Auto-Accept Mode
↑ │
└──────────────────── [Shift+Tab] ───────────────────────────┘
Delegate 模式下的 Lead 只能使用协调工具(创建 Teammate、发送消息、更新任务),不能自己写代码。这可以防止 Lead “抢活”,确保它专注于分配和协调。
8.5 CLAUDE.md:Agent 间的共享上下文
极其重要:Teammate 不会继承 Lead 的对话历史。它们启动后唯一的上下文来源是:
Lead 发给它们的 Task 描述 项目根目录的 CLAUDE.md文件
所以你必须在 CLAUDE.md 中写清楚项目的关键信息:
# Project: Tuck (macOS Menu Bar Manager)## Tech Stack
- Swift + SwiftUI (70%) + AppKit (30%)
- macOS 14+ deployment target
- Xcode 15+
## Architecture
- /Sources/Bridging/ → Private API wrappers (CGS, SkyLight)
- /Sources/Engine/ → MenuBarEngine core (ControlItemManager)
- /Sources/Utils/ → Extensions (NSScreen, NSStatusItem)
## Important Rules
- Each agent ONLY modifies files in their assigned directory
- Always run `swift build` before marking task as complete
- Use `@MainActor` for all UI-related code
- Never force unwrap optionals
Teammate 启动后会自动读取这个文件,获取项目上下文。
9、iTerm2 用户的额外选择
如果你使用 iTerm2(macOS 上最流行的第三方终端),有两个额外选项。
9.1 方案一:tmux -CC 控制模式
iTerm2 有一个独特的功能——可以将 tmux 的 Pane 映射为 iTerm2 的原生标签页和分屏:
tmux -CC
这会启动 tmux 的"控制模式",iTerm2 会接管 tmux 的显示,把 tmux pane 变成 iTerm2 的原生 pane。好处是可以用 iTerm2 的鼠标操作和快捷键。
9.2 方案二:直接用 iterm2 模式
如果你不想折腾 tmux,可以直接在 ~/.claude/settings.json 中设置:
{
"teammateMode":"iterm2"
}
这样 Claude Code 会直接在 iTerm2 中为每个 Teammate 创建新的标签页/分屏,完全不需要 tmux。
9.3 三种模式对比
| 支持 | |||
| 支持 | |||
推荐:
如果你是 iTerm2 用户且不需要后台运行 → 选 iterm2如果你需要后台运行或在远程服务器上使用 → 选 tmux如果你只是想快速试试 → 用默认的 in-process
10、实战场景与高级技巧
10.1 场景一:启动 Agent Teams 后去吃饭
# 1. 启动 Claude Code,描述团队任务
cd ~/tuck-app
claude
# > "Create a team of 3 to implement Phase 1..."# 2. 看到 Agent 们开始工作后
Ctrl+B d # Detach
# 3. 去吃饭 🍜(Agent 们继续工作)
# 4. 回来后
tmux a # 重新连接
# 所有 Agent 的输出都保留着,可以回滚查看
10.2 场景二:在远程服务器上运行 Agent Teams
# 本地 SSH 到远程服务器
ssh user@server# 在服务器上启动 tmux
tmux new -s ai-dev
# 启动 Claude Code + Agent Teams
claude
# > "Create team..."
# SSH 断开后(网络不好、关电脑等)
# Agent 们在服务器上继续运行!
# 重新 SSH 后
ssh user@server
tmux a -t ai-dev
# 回到工作现场
10.3 场景三:用额外的 Window 做监控
# Agent Teams 在 Window 0 工作
# 你可以创建一个新 Window 来监控Ctrl+B c # 创建 Window 1
# 在 Window 1 中运行监控命令
watch -n 5'git log --oneline -10'# 监控 git 提交
# 或者
tail -f ~/project/build.log # 监控构建日志
# 在两个 Window 间切换
Ctrl+B 0# 回到 Agent Teams(Window 0)
Ctrl+B 1# 看监控(Window 1)
10.4 技巧:调整 Pane 布局
当 Agent Teams 自动创建的布局不满意时:
# 在 tmux 中循环切换预设布局
Ctrl+B Space# 预设布局包括:
# even-horizontal: 所有 pane 等宽水平排列
# even-vertical: 所有 pane 等高垂直排列
# main-horizontal: 一个大 pane 在上,其余在下
# main-vertical: 一个大 pane 在左,其余在右
# tiled: 网格排列
推荐 main-vertical——左边大窗口给 Lead,右边小窗口给 Teammates。
10.5 技巧:给 Pane 命名(方便识别)
# 在 tmux 命令模式下(Ctrl+B :)
select-pane -T "bridging-dev"
或者在配置中启用 Pane 标题显示:
# 添加到 ~/.tmux.conf
set -g pane-border-status top
set -g pane-border-format " #{pane_title} "
这样每个 Pane 顶部会显示名字,一目了然。
11、常见问题排障
11.1 tmux session 残留(Agent 结束后 session 还在)
# 查看所有残留 session
tmux ls# 杀掉不需要的 session
tmux kill-session -t session-name
# 杀掉所有(核弹级操作)
tmux kill-server
预防:在 ~/.tmux.conf 中添加:
# 当窗口内最后一个 pane 关闭时,自动关闭窗口
set -g remain-on-exit off
11.2 Teammate 没有出现在新的 Pane 中
可能的原因:
teammateMode没设对cat ~/.claude/settings.json
# 确认有 "teammateMode": "tmux"不在 tmux 环境内启动的 Claude Code
# 错误:直接在普通终端启动
claude# 正确:先进入 tmux,再启动 claude
tmux new -s dev
claude注意:如果你已经设置了
teammateMode: "tmux",Claude Code 即使在普通终端启动,也会尝试调用 tmux 来创建 Pane。但为了最佳体验,建议先进入 tmux Session。环境变量没有生效
echo$CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS
# 如果为空,重新 source
source ~/.zshrc
11.3 Pane 空间不够(终端太小)
当 Teammate 多了,每个 Pane 都很小,看不清内容:
- 方法一
:放大终端窗口(全屏) - 方法二
:用 Ctrl+B zZoom 到需要看的 Pane - 方法三
: Ctrl+B Space切换到更合适的布局 - 方法四
:减少同时显示的 Pane 数,让部分 Teammate 在不同 Window 中
11.4 tmux 和 macOS 剪贴板不通
在 tmux 中复制内容时可能粘贴不到外面。解决方案:
# 安装 reattach-to-user-namespace(如果需要)
brew install reattach-to-user-namespace# 或者,更简单的方案——开启鼠标支持后
# 按住 Option(Alt) 键 + 鼠标选择 = 使用终端原生选择(绕过 tmux)
# 然后 Cmd+C 复制
11.5 Prefix 键 Ctrl+B 和其他程序冲突
如果你习惯 Vim/Emacs 等工具,Ctrl+B 可能有冲突。可以改成 Ctrl+A:
# 添加到 ~/.tmux.conf
unbind C-b
set -g prefix C-a
bind C-a send-prefix
改完后所有 “Ctrl+B” 操作变成 “Ctrl+A”。
12、总结
tmux 是使用 Claude Code Agent Teams 的最佳拍档。让我们回顾核心要点:
安装 3 步走:
brew install tmux # 安装
echo'export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1'>> ~/.zshrc # 启用
# 在 ~/.claude/settings.json 中添加 "teammateMode": "tmux" # 配置
日常使用 5 个快捷键:
Ctrl+B d | |
tmux a | |
Ctrl+B ↑↓←→ | |
Ctrl+B z | |
Ctrl+B [ |
核心认知:
tmux 的 Detach/Reattach 是 Agent Teams 后台运行的基础 CLAUDE.md是所有 Teammate 的共享上下文,务必写好 每个 Teammate 应该负责不同的文件,避免冲突 Delegate 模式( Shift+Tab)让 Lead 专注协调,不"抢活"
如果你还没有用过 tmux,不要被快捷键吓到——实际上你日常只需要上面那 5 个。用两天就会变成肌肉记忆。
tmux + Claude Code Agent Teams,让你的终端变成一个并行 AI 开发工厂。