tmux 配置指南:用 Claude Code 多开任务、远程重连

这份 tmux 配置指南带你在远程主机上运行 Claude Code,为独立任务分配 Git worktree 和命名会话,合上笔记本后再通过 SSH 接回原会话。文中涵盖官方配置、常用切换命令、分屏智能体团队与排障要点,并说明会话保活、对话恢复和文件隔离各自解决什么问题,帮助你搭好可持续使用的远程开发工作流。

发布于

tmux 配置指南:用 Claude Code 多开任务、远程重连

用这套 tmux 配置在持续开机的远程主机上运行 Claude Code,合上笔记本后,再通过 SSH 连回来,就能接着处理仍在运行的任务。每个独立任务都配一个 Git worktree 和一个有明确名称的 tmux 会话,让功能开发与故障修复各用各的文件。先把这套工作流跑通;等任务之间确实需要沟通协作时,再加入智能体团队。

能否持续运行,关键在于实际执行任务的那台机器。tmux 可以让终端会话在连接断开后继续存在,但无法让休眠中的笔记本继续计算,也无法让关机的服务器继续运行,更不会重启已经崩溃的 Claude 进程。对于需要在 SSH 断连后继续运行的远程 Claude 会话,Anthropic 明确建议使用 tmux 或 screen。参见 Anthropic Remote Control 文档。

先按官方说明完成 tmux 配置

配置文件要放在运行 Claude Code 的机器上。远程开发时,要修改的是远程主机的 ~/.tmux.conf。如果尚未安装 tmux,先用那台主机的包管理器安装,再在主机上执行 tmux -V 和 claude --version,确认后继续。

将下面这段配置合并到 ~/.tmux.conf 中。前三行来自 Anthropic 官方文档;被注释掉的鼠标设置只是可选偏好,并非 Anthropic 的要求。

Tmux
set -g allow-passthrough on
set -s extended-keys on
set -as terminal-features 'xterm*:extkeys'

# Optional preference: enable mouse interaction in tmux.
# set -g mouse on

透传让通知和进度更新能够传到外层终端;扩展按键支持则让 tmux 能区分 Shift+Enter 与 Enter。对于已经运行的 tmux 服务,用 tmux source-file ~/.tmux.conf 加载配置;新启动的服务会在启动时读取文件。参见 Anthropic 终端配置文档。

如果 tmux 服务还没启动,先按下文创建第一个会话,再执行重新加载命令。初次配置先不加第三方插件:这套工作流不依赖任何插件。

每个 worktree 配一个专属的命名会话

Git worktree 是同一仓库的另一份检出目录,有自己的文件和分支,共享仓库历史。tmux 会话是一组有名称的终端窗口,窗格则是窗口内划分出来的区域。可以把 worktree 理解为工作台,把 tmux 理解为随时可以离开、再回来的房间。参见 Anthropic worktree 指南。

让会话名与检出目录采用对应的命名方式,一看名称就知道自己将进入哪份代码。下面是建议的组织方式,并非 Claude Code 的默认设置:

任务主机上的 worktreetmux 会话窗口
功能开发~/src/project-feature-acc-feature-aclaude,可选 checks
故障排查~/src/project-bugfixcc-bugfixclaude,可选 checks

下面的首次配置示例假定 ~/src/project 已有一个仓库,仓库中至少有一次提交,示例中的分支名、目录名和会话名也都尚未使用。请替换 dev@devbox 和项目路径。从笔记本上普通的 shell 开始执行,不要在 tmux 内运行。worktree 命令遵循 Anthropic 的手动操作流程;命名会话的组织方式则是本文提供的方案。

Bash
ssh dev@devbox
cd ~/src/project

git worktree add ../project-feature-a -b feature-a
git worktree add ../project-bugfix -b bugfix

tmux new-session -d -s cc-feature-a -n claude -c "$HOME/src/project-feature-a"
tmux new-session -d -s cc-bugfix -n claude -c "$HOME/src/project-bugfix"

tmux attach-session -t cc-feature-a
# Now inside the feature worktree's tmux shell:
claude

SSH 连接成功后,余下的命令都在远程主机上执行。两个后台会话最初都只运行着 shell。接入其中一个会话后执行 claude,就能在眼前启动编程会话,并完成通常的初始设置提示。需要启动第二个任务时,先分离当前会话,再接入 cc-bugfix,在里面运行 claude。

每个 worktree 都需要单独完成项目初始化,包括安装依赖和准备必需的本地配置。让 Claude 修改代码前,先核对当前目录和分支。参见 Anthropic 手动管理 worktree 的流程。

如果想在功能分支的检出目录里另开一个测试 shell,可在主机的 shell 中运行 tmux new-window -t cc-feature-a -n checks -c "$HOME/src/project-feature-a"。把检查命令放在所属任务的会话里,不要让两个智能体共用主检出目录作为临时工作区。

如果你也使用 Codex,可以另看 Codex CLI worktree 指南,其中介绍了该工具的工作流。

架构示意图:笔记本通过 SSH 连接远程主机,主机内运行两个独立的 tmux 会话。
会话运行在远程主机上,SSH 是连接它们的通道。在这套布局中,每个会话各用一个独立的 worktree。

分离会话、合上笔记本,再通过 SSH 连回来

使用 tmux 默认前缀键时,先按 Ctrl+B,松开两个键,再按 D。这样会分离当前客户端,回到远程 shell。此时可以断开 SSH,让 Claude 继续在会话内运行。

回来后,依次运行 ssh dev@devbox、tmux list-sessions 和 tmux attach-session -t cc-feature-a。要连接同一台远程主机,并使用同一个用户账号。也可以从笔记本上用一条等效命令完成连接:ssh -t dev@devbox 'tmux attach-session -t cc-feature-a'。

想做什么操作
离开,但让任务继续运行先按 Ctrl+B,再按 D
查看已有的命名会话tmux list-sessions
回到故障修复任务tmux attach-session -t cc-bugfix
在 tmux 内切换会话先按 Ctrl+B,再按 S
选择当前会话中的窗口先按 Ctrl+B,再按 W

这些按键操作以默认前缀为前提。如果改过前缀键,就使用自己的设置。在 tmux 内应切换会话,不要再嵌套启动一个 tmux 客户端。

重新接入会话,连接的是已有的终端进程。如果进程已经退出,就需要恢复对话,这是另一回事:claude --continue 会继续当前目录中最近的一次对话,claude --resume 则会打开对话选择器。这两个命令都不能代替让原进程持续运行。参见 Anthropic 会话工作流。

如果希望通过手机或浏览器访问,可以看 Claude Code Remote Control。任务仍在主机上执行,因此主机必须保持开机。参见 Anthropic Remote Control 文档。

任务需要协作时,再启用智能体团队

智能体团队仍是实验性功能,默认关闭。在 tmux 的 shell 中运行 CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 claude --teammate-mode tmux,即可启动一个新的交互式团队主会话。这次启动会通过环境变量启用团队功能,并用命令行参数选择分屏显示。参见 Anthropic 智能体团队配置说明。

目前默认显示模式是 in-process。auto 会在 tmux 内使用分屏,并在需要时回退;tmux 则通过终端检测选择分屏模式。如需持久保存偏好,可在 ~/.claude/settings.json 中设置 teammateMode。分屏会让每个队友拥有独立、可见的终端。Anthropic 列出的不支持该模式的终端包括 VS Code 集成终端、Windows Terminal 和 Ghostty。参见 Anthropic 显示模式与限制说明。

第一次试用时,我会给团队负责人一个范围明确的任务:

创建一个智能体团队,调查 checkout 超时问题。将一名队友命名为 Requests,另一名命名为 Storage。Requests 负责追踪重试行为,Storage 负责检查事务边界。让他们对照各自找到的证据。不要修改文件,返回修复建议和测试计划。

手动启动的 cc-feature-a 和 cc-bugfix 会话,不会因为都在 tmux 中就自动成为队友。是否使用团队,需要单独考虑:由谁分派任务,又由谁汇总、核对调查结果。如果只想在一个会话中委派范围明确的任务,优先考虑 Claude Code 子智能体。

两个手动创建的独立工作区,旁边是负责人和队友相互连接的智能体团队。
手动会话之间由你来协调;智能体团队则增加了负责人,以及队友之间的沟通机制。

窗格不等于独立的代码检出目录。要让多个任务独立修改代码,应分配不同文件,或使用各自的 worktree。团队也会消耗更多 token,tmux 并不会降低这部分用量。重新接入会话可以继续访问仍在运行的终端,而 /resume 不会恢复进程内的队友。参见 Anthropic 团队使用指南。

这套工作流适合哪五种场景?

我会按下面的顺序优先考虑这些用法。它们是可选工作流,不是经过实测的效率结论。

开发场景怎么用这套配置可能带来的价值
用笔记本连接远程开发主机工作把编程任务放在远程命名会话中,离开前先分离会话减少出行或断连后重新搭建终端工作区的麻烦
功能开发到一半,突然收到故障报告为故障单独建分支、worktree 和会话排查问题时不打扰尚未完成的功能开发目录
同时维护两条发布线每条发布线各用一个名称清晰的会话和检出目录批准修改前,更容易看清当前改的是哪个版本
比较不同实现方案每个候选方案各用一个 worktree,再审查生成的差异在做出选择前保留两套实验,并明确决定如何合并
对原因不明的故障,需要从多个角度调查试一次范围受控的团队调查,再让负责人汇总核对证据在值得开展独立调查时,可能更快得到有用的诊断

增加自动化之前,先量一量中断带来的成本。举个例子:每周中断五次,每次花四分钟重新找回上下文,就会耗掉二十分钟。这些是假设输入,不是基准测试结果。记录自己的恢复时间、配置时间和审查时间;只有总耗时下降,这套工作流才值得保留。同时运行更多智能体,并不自动意味着更划算。

围绕这套工作流,可以做哪两个小工具?

更值得考虑的方向,是面向开发团队的 worktree 与会话启动器。 平台团队可能愿意付费,让开发者统一使用一致的任务名、检出路径和接入命令。最小可用版本可以创建或找到 worktree,打开对应的命名 tmux 会话,并在启动 Claude 前显示分支和路径。清理检出目录之前,应先征得用户确认。

2026 年 10 月 12 日获取的 DataForSEO 美国关键词估算显示,“tmux claude code”每月有 480 次搜索。 这只能说明一个小范围的配置需求,不能当作潜在买家数量。难点在于,一段简短的内部脚本可能就够用了;要做成付费产品,就需要提供适合团队的配置或支持,持续省下重复劳动。

另一个更小众的产品方向,是远程会话目录。 小型工程团队可以在一个地方记录已获准使用的主机别名、会话名和检出路径,并提供可复制的 SSH 接入命令。先解决查找和跳转,只有用户确实需要时,再添加生命周期管理功能。

同一次 DataForSEO 查询估算,“claude code remote”在美国每月有 1,600 次搜索,“claude code remote ssh”有 70 次。 前一个更宽泛的词也包括寻找其他远程界面的人,单凭它无法验证 SSH 产品的需求。另一个难点是访问管理:这个目录必须遵守每位开发者现有的主机权限。动手做仪表盘之前,先访谈以远程协作为主的团队。

实际使用时常见的问题

合上笔记本后,Claude 还会继续工作吗?

会,前提是 Claude 和 tmux 都运行在保持唤醒、保持联网的远程主机上。如果它们运行在进入休眠的笔记本上,工作也会随之暂停。终端还在运行也不代表任务一定在推进:Claude 仍可能正在等待你的输入。

为什么在 tmux 里按 Shift+Enter 还是会提交?

确认你修改并重新加载配置的,是实际运行 tmux 的那台主机。如果需要执行 /terminal-setup,请在外层终端运行。文档给出的备用换行按键是 Ctrl+J。参见 Anthropic 终端设置说明。

重新接入时,为什么提示会话不存在?

用 tmux list-sessions 核对主机、用户和准确的会话名。如果会话已终止,或主机重启过,就需要恢复工作,反复尝试接入并不能解决问题。在确认原会话是否还在别处运行之前,不要急着创建一个名称相似的替代会话。

两个 tmux 窗格能防止智能体修改同一份文件吗?

不能。在本文的方案中,隔离来自不同的 worktree 路径。开始修改前,先确认每个 shell 所在的目录和分支。最终的修改仍需要你审查和整合。

周一就从这件事开始:挑一个远程任务,为它创建 worktree 和命名会话。在让它无人值守运行之前,先确认自己能顺利分离并重新接入。等这套操作熟练了,再加第二个独立任务。

如果你的团队希望将这套工作流集成到开发环境中,可以了解我们的生产级 AI 系统开发服务。

发布日期
分类
Build
Airtable 替代品怎么选?NocoDB、Baserow 等工具的价格与适用场景

Airtable 替代品怎么选?NocoDB、Baserow 等工具的价格与适用场景

想换掉 Airtable,先分清是席位太贵、容量不够,还是缺少客户门户。本文对比 NocoDB、Baserow、SeaTable、Grist、Smartsheet、Notion 和 Softr,拆解价格、免费额度、自托管、API、自动化与权限差异,帮你按真实工作流选型,并在迁移前验证关联数据、集成和恢复方案。2026年11月10日Build
2026 年 proxy 代理服务推荐:Bright Data、Oxylabs、Decodo 等 7 家怎么选

2026 年 proxy 代理服务推荐:Bright Data、Oxylabs、Decodo 等 7 家怎么选

proxy 代理服务该怎么选?对比 Bright Data、Oxylabs、Decodo、Webshare、ThorData、IPRoyal 与 NetNut,梳理住宅、数据中心、ISP 和移动代理的价格、试用、KYC 与会话控制,分清原始网络、托管解封和抓取 API 的职责,按有效记录成本和实际任务需求筛选。2026年11月10日Build
NVIDIA OpenShell:为 AI 智能体划定可执行的权限边界

NVIDIA OpenShell:为 AI 智能体划定可执行的权限边界

NVIDIA OpenShell 如何限制编程智能体的文件、网络和凭据访问?本文梳理受支持的平台、CLI 安装与 OpenCode 启动流程,解释哪些策略可实时更新、哪些变更需要重建沙箱,并给出可审查的编程策略模板、权限测试方法和团队落地场景,帮助平台团队在开放真实项目与服务前看清实际授予的权限。2026年11月9日Build
CodeRabbit 价格详解:席位费用、用量限制与附加收费

CodeRabbit 价格详解:席位费用、用量限制与附加收费

CodeRabbit 价格怎么算?本文梳理 Essentials、Team、Advanced 与 Enterprise 的席位收费、年付折扣、PR 审查额度及关联仓库限制,并列出不同团队规模的预算算例。了解免费版和开源方案的适用范围,分清超限文件审查、Agent 分钟数与安全扫描费用,再按实际工作流和安全需求选择套餐。2026年11月9日Build
2026 企业杀毒软件怎么选:六款小企业方案、价格与响应服务对比

2026 企业杀毒软件怎么选:六款小企业方案、价格与响应服务对比

企业杀毒软件怎么选,关键在于谁来管理设备、谁来处理告警。本文对比 Bitdefender、Microsoft Defender、ESET、Sophos、CrowdStrike 与 Malwarebytes,梳理美元价格、设备额度、服务器授权和托管响应范围,帮助小企业按现有订阅、设备类型与管理能力确定候选方案。2026年11月8日Build
Paperclip AI 评测:多智能体协作怎么管,部署前要看什么

Paperclip AI 评测:多智能体协作怎么管,部署前要看什么

Paperclip AI 能把分散的 AI 智能体组织成可追踪的工作流,但安装管理面板并不等于完成权限与验收配置。本文梳理官方安装方式、运行时与模型支持、任务交接、预算策略和审批边界,并对比 OpenClaw 与 Hermes Agent,帮你判断是否值得花一个周末试用,以及上线前应检查什么。2026年11月7日Build
Supabase 是什么?看懂 AI 应用背后的数据库、权限与后端

Supabase 是什么?看懂 AI 应用背后的数据库、权限与后端

Supabase 是什么,为什么 AI 应用构建工具常用它做后端?本文从 Postgres 数据库、登录认证、文件存储、实时更新与向量搜索讲起,梳理 Lovable、Bolt、v0 和 MCP 的接入方式,解释 RLS 权限、项目控制权与迁移边界,帮你在接收真实客户数据前,明确需要验证的隔离、恢复和交接事项。2026年11月7日Build
AI IDE 怎么选?2026 年 Cursor、VS Code、Zed 等 6 款编辑器对比

AI IDE 怎么选?2026 年 Cursor、VS Code、Zed 等 6 款编辑器对比

AI IDE 怎么选?比较 Cursor、VS Code 搭配 GitHub Copilot、Windsurf(现为 Devin Desktop)、Zed、Kiro 与 JetBrains AI,梳理价格、免费方案、智能体模式、模型接入、BYOK、本地推理、隐私边界与团队管控,帮你按工作流判断是否值得迁移。2026年11月6日Build
订阅通讯

每周日,一封信。写运转中的系统,不写热评。

每周一期。无垃圾邮件。随时退订。