确认 Host 已经重新可达
网络路径恢复后,Redock 才能通过 SSH 或 Mosh 重新连接开发机。
02 / 保持连接
Redock 通过 tmux 保留开发机上的 Coding Agent 会话,并通过 SSH 或 Mosh 重新连接。手机锁屏、切换 Wi-Fi 与蜂窝网络或短暂断开后,你可以回到原会话继续工作。

手机是当前连接入口;代码、终端进程和 Coding Agent 仍然留在远程 Host 上。
本篇内容
这篇 Workflow 会解释 Redock 如何配合 tmux、SSH 和 Mosh,把长时间运行的 Coding Agent 会话与当前手机连接分开,并在临时断开后重新回到原来的工作现场。
为什么长任务不应该依赖一次移动连接
连接和运行中的 Session 有什么区别
tmux 如何把会话留在开发机上
Mosh 如何应对网络变化
重新连接后如何回到原会话
哪些 AI Coding 任务最适合这样运行
开始之前
持久会话的前提不是手机一直在线,而是 Agent 从一开始就运行在开发机上的 tmux Session 中。这样,手机连接和终端会话可以拥有不同的生命周期。
开发机需要保持开机,并已经安装 tmux 和你实际使用的 Coding Agent。Redock 则负责从手机连接 Host,并在需要时重新进入同一个会话。
cd ~/projects/your-app
# 创建或重新进入名为 ai-coding 的 tmux 会话
tmux new-session -A -s ai-coding
# 在 tmux 中启动你实际使用的 Coding Agent
claude # 或 codex / opencodetmux 只能保留仍在运行的远程会话。开发机关机、重启、休眠或 Agent 进程退出时,结果会不同。
问题场景
一次 AI Coding 任务可能需要几十分钟:Agent 要读取项目、修改文件、运行测试,再根据结果继续调整。但手机连接很难在整个过程中始终保持同一种状态。
你可能锁屏、把 Redock 切到后台、从办公室 Wi-Fi 走到蜂窝网络,或者经过一段信号不稳定的区域。当前连接可能暂时不可用,但这不应该自动决定远程任务是否继续。
关键是把两个问题分开:手机现在是否连得上开发机,以及 Coding Agent 所在的终端会话是否仍然在开发机上运行。
手机锁屏后,远程进程还在吗?
Wi-Fi 切换到蜂窝网络时,连接和会话分别发生什么?
重新连接后,能不能回到原来的输出和上下文?
如果 Agent 直接依赖当前客户端连接,临时断开可能让你担心任务已经结束,或者不得不重新建立工作现场。
如果 Agent 运行在 tmux 中,Session 会留在开发机上。连接恢复后,你需要做的是重新进入,而不是重新开始。

代码仓库、依赖、tmux 和 Coding Agent 都留在真正的开发机上。
你可以离开桌面,让远程 Session 继续承担长时间任务。
工作流
这个 Workflow 的核心不是保证手机连接永远不中断,而是让运行中的 Session 不依赖一次连续的客户端连接。
tmux 在开发机上保存终端会话和其中的 Agent 进程。SSH 或 Mosh 提供手机到 Host 的连接路径;Redock 在路径可用时重新连接并进入原来的 tmux Session。
因此,连接短暂变化时,你看到的可能是等待恢复或重新连接;与此同时,只要 Host 和 tmux Session 仍然正常,Agent 可以继续在远程环境中工作。
从项目目录创建一个命名 Session,再启动 Claude Code、Codex、OpenCode 或其他终端 Agent。
代码、依赖、Git 仓库和 Agent 进程都继续使用开发机的真实环境。
手机锁屏、App 进入后台或网络切换时,当前连接可能等待恢复或暂时断开。
网络路径恢复后,通过 Redock 回到相同 Host 和 tmux Session,继续查看 Agent 输出。
tmux list-sessions
# 重新进入原来的 AI Coding 会话
tmux attach-session -t ai-coding如果 Session 仍在运行,重新 attach 会回到它当前的状态;不会创建一个新的 Coding Agent 任务。

Mosh 在网络路径变化或暂时不可用时,可能显示正在等待 UDP 连接恢复。
这表示当前连接状态发生变化,不等于远程 tmux Session 已经结束。最终能否恢复仍取决于 Host、网络和 Mosh 配置。
重新连接
重新连接不是重新创建开发环境。Redock 回到同一个 Host 后,你可以查看已有 tmux Session,并重新进入 Agent 所在的会话。
真正需要确认的,是 Host 是否仍可访问、tmux Session 是否存在,以及 Agent 当前正在执行、已经完成,还是在等待你的输入。
网络路径恢复后,Redock 才能通过 SSH 或 Mosh 重新连接开发机。
命名 Session 可以帮助你识别项目和任务,而不是打开一个没有上下文的新 Terminal。
Agent 可能仍在运行,也可能已经完成任务或停下来等待一个决定。重新进入后先查看当前输出。
如果 Agent 正在等待输入,直接在原会话里回复;如果任务已经完成,就检查结果或安排下一步。
重新连接 Host 后,可以确认:
tmux list-sessions
tmux attach-session -t ai-coding
重新连接后,你看到的是开发机上已经存在的 Session,而不是一个空白的新任务。
之前的终端输出和 Agent 状态仍然在同一个会话中,可以继续检查或回复。
一个真实场景
中午 12:06,你准备离开办公室吃饭。Mac 上还有一次认证模块重构要做,于是你在名为 ai-coding 的 tmux Session 中启动 Claude Code,把任务和约束说清楚。
12:18,你锁上手机并走出办公室。Wi-Fi 变成蜂窝网络,Redock 的当前连接暂时不可用;但 tmux Session 和 Claude Code 仍然留在 Mac 上。
下面不是重新发起一段对话,而是同一个 tmux Session 在桌面、断开和手机重新进入之间的连续过程。
把 authentication module 的 token refresh 逻辑拆开,保持现有 public API 不变。完成后跑一遍认证相关测试。
我先读取认证模块和现有测试,再分步重构。修改完成后会运行测试并汇报结果。
手机锁屏并离开办公室 Wi-Fi。Mosh 当前连接等待网络路径恢复。
tmux: ai-coding · running on Mac重构已经完成。48 个测试通过,1 个失败。失败来自 refresh token 的过期时间断言,需要确认是否同步调整测试。
这条输出先留在 tmux Session 中,等待你重新进入。网络重新可用。你打开同一台 Host,并重新进入 ai-coding Session。
Welcome back · attached to existing session一起调整测试,但不要改变 public API。修复后重新运行认证相关测试。
收到。我会保持 public API 不变,更新对应断言并重新运行测试。
这段来回可能不到一分钟。你没有重新进入项目目录、重启 Claude Code,也没有再次解释认证模块的上下文;回复直接发生在开发机上原本就在运行的 Session 中。
它也不意味着任何网络条件下都能立即恢复连接。Redock、Mosh 和 tmux 分别处理不同层级;当 Host 和网络重新可用时,你才能重新进入仍在运行的 Session。
Redock 如何支持这个 Workflow
tmux、SSH 和 Mosh 不是三个并列卖点。在这个场景中,它们分别负责会话存续、基础连接和网络变化下的连接体验。
tmux
Coding Agent 运行在开发机上的 tmux Session 中。手机连接暂时离开时,Session 和其中仍在运行的进程可以继续留在 Host 上。
SSH
SSH 负责建立到 Host 的安全远程终端连接。即使不使用 Mosh,也可以重新建立 SSH 连接后 attach 原来的 tmux Session。
Mosh
Mosh 可以应对 IP 变化、短暂丢包和网络切换,并在 UDP 路径恢复后尝试继续连接,但实际效果仍取决于服务器和网络环境。
机制解释
Mosh 或 SSH 处理的是手机此刻如何到达开发机;tmux 处理的是远程终端会话是否独立于这个连接继续存在。
当 Mosh 显示等待恢复时,连接层正在处理网络变化。只要开发机仍然运行、tmux Session 没有结束,其中的 Coding Agent 就可能继续执行任务。
Redock 的 Host 设置把这两个选择放在不同位置:连接模式可以选择 Mosh,会话保持可以使用 tmux。配置图用于说明它们在 Workflow 中的分工,而不是承诺所有断开都能无条件恢复。

Coding Agent 和 tmux Session 运行在开发机上。
Redock 通过 SSH 或 Mosh 连接 Host,并在路径恢复后重新进入原会话。
更适合哪些时候
任务会跨越多轮文件修改和检查,不适合依赖一次始终在线的手机连接。
把运行现场留在 tmux 中,之后再回来查看结果。
客户端状态变化不应该成为远程 Session 的唯一生命周期。
使用 Mosh 改善网络变化下的连接体验,并由 tmux 保留远程会话。
如果任务只运行几秒钟,普通 SSH Terminal 可能已经足够。这个 Workflow 更适合需要持续运行、可能多次离开再回来的 AI Coding 任务。
结果
连接和任务绑在一起:手机一断开,就担心 Agent 和当前上下文一起消失。
连接和 Session 分层:tmux 保留远程现场,Redock 在路径恢复后重新进入。
长时间 AI Coding 的关键不是让手机永远保持在线,而是让 Agent 所在的执行环境和 Session 拥有独立、可理解的生命周期。
tmux 把 Session 留在开发机上,SSH 或 Mosh 提供当前连接路径,Redock 让手机重新进入这个 Session。
于是整个过程可以变成:会话继续在开发机运行,连接临时中断,用户重新回来,再从原会话继续。
最终结果仍取决于 Host 是否在线、Agent 是否仍在运行、tmux Session 是否存在,以及网络路径能否重新建立。
常见问题
不能这样保证。tmux 可以让 Session 独立于当前客户端连接继续存在,但开发机关机、重启、休眠、资源不足或 Agent 进程自身退出时,任务仍可能停止。
Mosh 主要改善网络变化、IP 变化和短暂中断下的远程终端连接体验;tmux 负责把终端 Session 和其中的进程保留在远程开发机上。
可以。重新建立 SSH 连接后,可以 attach 仍然存在的 tmux Session。Mosh 不是 tmux 会话存续的必要条件。
通常不能假设仍然存在。tmux 依赖开发机和相关进程持续运行;如果 Host 休眠、关机或重启,需要根据实际环境重新确认 Session 和 Agent 状态。
可以。只要 Coding Agent 通过 Terminal 运行在开发机上的 tmux Session 中,Redock 就可以在重新连接 Host 后回到该 Session 继续查看和交互。
下一篇 Workflow
Stay connected
使用 Redock 连接开发机,通过 tmux 保留长时间 AI Coding 会话,并在网络路径恢复后从手机重新进入。
在 App Store 下载