你将学到什么
本指南将带你了解远程使用 Claude Code 的每种方法——从 Anthropic 官方的 Remote Control 功能到使用 tmux、mosh 和 Tailscale 的 DIY SSH 设置。到最后,你将拥有一套可运行的移动端编码环境,你可以在桌面上启动任务,离开办公室,并从手机上保持完全控制。
Claude Code Remote Control:2026年完整指南
在 February 25, 2026,Anthropic 发布了 Remote Control——这是一种在终端启动编码任务,将笔记本电脑装入包中,并从手机上保持完全控制的能力。无需 VPN,无需端口转发,也无需第三方工具。来源
但官方功能只是故事的一部分。开发者社区围绕 Claude Code 构建了一套完整的移动编码设置生态系统,范围从简单的 SSH 隧道到带有推送通知和语音输入的复杂多工具工作流。本指南涵盖了所有这些内容。
第 1 部分:官方 Remote Control
它是什么
Remote Control 是 Anthropic 内置的功能,用于跨设备继续 Claude Code 会话。它的工作原理是让你的本地 Claude Code 实例作为服务器向 Anthropic API 注册,然后允许授权客户端(你的手机)连接并远程控制该会话。来源
底层运作原理
安全模型简单且保守:
你的桌面 (Claude Code) Anthropic API 你的手机 (Claude App)
│ │ │
├──── 注册会话 ──────────────────►│ │
│ │ │
│◄─── 分配会话 URL ──────────────┤ │
│ │ │
│ 显示二维码 │ │
│ │◄──── 扫描二维码 / 认证 ────┤
│ │ │
│◄─── 路由消息 ──────────────────┤──── 路由消息 ─────────────►│
│ │ │
│ (所有流量通过 TLS) │ │
关键安全属性:
- 无入站端口 — 你的本地机器仅发出出站 HTTPS 请求
- 无直接连接 — 你的手机永远不会直接连接到你的桌面
- TLS 加密 — 所有流量都通过 TLS 流经 Anthropic API
- 会话作用域 — 每个 Remote Control 会话都有一个唯一的 URL,且会过期
设置步骤
第 1 步:更新 Claude Code
Remote Control 需要 Claude Code v2.1.51 或更高版本:
# 检查你的版本
claude --version
# 如果需要请更新
npm update -g @anthropic-ai/claude-code
第 2 步:启动会话
像往常一样开始处理你的项目:
cd ~/projects/my-app
claude
第 3 步:启用 Remote Control
在你的 Claude Code 会话中,运行:
/rc
# 或者
/remote-control
这将启动 Remote Control 服务器。你的终端将显示:
Remote Control active
Session URL: https://code.claude.com/rc/abc123-def456
Press [space] to show QR code
Press [q] to stop Remote Control
第 4 步:从手机连接
两个选项:
- 二维码:在终端按空格键显示二维码。在手机上打开 Claude app 并扫描。
- URL:复制会话 URL 并在手机上的 Claude app 中打开。
你的手机现在对 Claude Code 会话拥有完全控制权。你可以发送消息、批准文件更改并查看输出——对话在所有连接的设备上保持同步。来源
默认启用 Remote Control
如果你频繁使用 Remote Control,可以为所有会话启用它:
/mobile
如果你尚未安装 Claude app,这将显示用于安装的二维码,并将“为所有会话启用 Remote Control”设置切换为 true。启用后,每个 Claude Code 会话都会自动以 Remote Control 模式启动。来源
计划要求
| 计划 | 价格 | Remote Control |
|---|---|---|
| Free | $0 | 不可用 |
| Pro | $20/月 | 可用 |
| Max | $100–200/月 | 可用 |
| Team | 自定义 | 可用 |
| Enterprise | 自定义 | 可用 |
Remote Control 的限制
- 需要 Claude app — 你不能使用通用浏览器;必须使用 Claude 移动应用
- 依赖 Anthropic — 所有流量都通过 Anthropic 的服务器路由;如果其 API 宕机,Remote Control 也会失效
- 不支持离线 — 两台设备都必须具备互联网连接
- 会话超时 — 不活跃的会话最终会过期
- 单一供应商 — 仅适用于 Claude 模型,如果你使用 OpenCode 或其他多供应商工具则不适用
第 2 部分:SSH + tmux + mosh (DIY 方法)
对于想要完全终端控制、多供应商支持或在不稳定网络上工作的开发者来说,基于 SSH 的方法更健壮。正如开发者 Harper Reed 所写:“当弄清楚如何在手机上使用 Claude Code 时,显而易见的答案是从手机 ssh 进入电脑并运行 claude。” 来源
为什么需要这三个工具?
你需要两种不同类型的弹性:
- mosh 处理不稳定的移动连接——WiFi 到蜂窝网络的切换、信号盲区、手机休眠
- tmux 处理会话持久性——即使你的手机完全断开连接,也能保持 Claude Code 会话活跃
它们结合在一起,使移动端开发真正可行。来源
设置技术栈
第 1 步:安装 Tailscale (私有网络)
Tailscale 在你的设备之间创建一个私有的 WireGuard 网格。无需端口转发,无需路由器配置,无需防火墙规则。
在你的桌面上:
# macOS
brew install tailscale
# Linux
curl -fsSL https://tailscale.com/install.sh | sh
# 启动 Tailscale
sudo tailscale up
在你的手机上:
- 从应用商店安装 Tailscale app
- 使用同一账号登录
- 现在两台设备都在同一个私有网络上
你的桌面会获得一个 Tailscale IP(类似于 100.64.x.x),无论设备处于什么 WiFi 或蜂窝网络,你的手机都可以直接访问它。来源
第 2 步:安装 tmux (会话持久性)
tmux 保持你的终端会话独立于你的 SSH 连接。当你的手机断开连接(屏幕锁定、网络切换、电池耗尽)时,tmux 会话将继续运行。
# macOS
brew install tmux
# Ubuntu/Debian
sudo apt install tmux
创建一个针对移动端使用优化的 tmux 配置:
# ~/.tmux.conf
# 增加滚动回溯缓冲区
set -g history-limit 50000
# 启用鼠标支持 (在移动端很有用)
set -g mouse on
# 减少转义时间以实现响应式移动输入
set -sg escape-time 10
# 带有有用信息的状态栏
set -g status-right '#H | %H:%M'
# 为移动端阅读调整更大的状态栏样式
set -g status-style 'bg=colour235 fg=colour136'
第 3 步:安装 mosh (连接弹性)
mosh (Mobile Shell) 使用 UDP 而不是 TCP,可以优雅地处理网络切换。当你的手机从 WiFi 切换到蜂窝网络或经过隧道时,mosh 会自动重新连接。
在你的桌面上:
# macOS
brew install mosh
# Ubuntu/Debian
sudo apt install mosh
在你的手机上:
- iOS:安装 Blink Shell 或 Termius — 两者都原生支持 mosh
- Android:安装 JuiceSSH 或带有 mosh 软件包的 Termux
第 4 步:连接并启动 Claude Code
从你手机的 SSH 客户端:
# 通过 Tailscale 使用 mosh 连接
mosh user@100.64.x.x
# 启动或附加到一个 tmux 会话
tmux new-session -s claude
# 或者如果会话已存在:
tmux attach -t claude
# 启动 Claude Code
cd ~/projects/my-app
claude
现在你拥有一个 Claude Code 会话,它:
- 在网络切换中幸存 (mosh)
- 在手机断开连接中幸存 (tmux)
- 可以从 Tailscale 网络中的任何设备访问
- 适用于任何 AI 供应商,不仅仅是 Claude
断开连接后重新连接
当你稍后拿起手机时:
# 如果会话仍然存活,mosh 会自动重新连接
# 如果 mosh 会话已死,请启动一个新会话:
mosh user@100.64.x.x
# 重新附加到你的 tmux 会话
tmux attach -t claude
你的 Claude Code 会话正处于你离开时的状态——相同的对话、相同的工作目录、相同的挂起更改。
第 3 部分:使用 ntfy 进行推送通知
Remote Control 和 SSH 设置都存在一个问题:你必须不断检查手机以查看 Claude Code 是否完成了任务。解决方案是推送通知。
什么是 ntfy?
ntfy 是一个简单的开源推送通知服务。你可以为了隐私而自行托管,也可以使用 ntfy.sh 上的公共实例。来源
使用 Tailscale 自行托管 ntfy
为了获得最大的隐私,在你的桌面上运行 ntfy 并通过 Tailscale 访问它:
# 安装 ntfy
brew install ntfy # macOS
# 或者
sudo apt install ntfy # Linux
# 启动 ntfy 服务器 (默认监听 80 端口)
ntfy serve --listen-http :8090
由于你的手机和桌面位于同一个 Tailscale 网络中,你的手机可以通过 http://100.64.x.x:8090 访问 ntfy。没有数据离开你的私有网络。
配置 Claude Code 钩子 (Hooks)
Claude Code 钩子允许你在发生某些事件时触发自定义命令。设置一个钩子,在 Claude Code 需要输入时发送通知:
// ~/.claude/settings.json
{
"hooks": {
"notification": {
"command": "curl -s -d 'Claude Code needs your attention' http://100.64.x.x:8090/claude-code",
"event": "stop"
}
}
}
ntfy 移动应用设置
- 在手机上安装 ntfy app (iOS 或 Android)
- 在你的自托管服务器上添加对主题
claude-code的订阅 (http://100.64.x.x:8090/claude-code) - 为该主题启用推送通知
现在,每当 Claude Code 停止并需要输入时——无论是完成任务、遇到错误还是需要批准——你都会在手机上收到推送通知。无需保持终端开启或不断检查。
高级通知设置
为了获得更丰富的上下文通知,你可以包含来自 Claude Code 的最后一条消息:
#!/bin/bash
# ~/.claude/hooks/notify.sh
# 获取 Claude Code 输出的最后几行
LAST_OUTPUT=$(tail -5 /tmp/claude-code-output.log 2>/dev/null || echo "Task completed")
# 发送带有上下文的通知
curl -s \
-H "Title: Claude Code" \
-H "Priority: high" \
-H "Tags: robot" \
-d "$LAST_OUTPUT" \
http://100.64.x.x:8090/claude-code
第 4 部分:Happy Coder (免费开源替代方案)
Happy Coder 是一个免费的开源工具,它提供了一个用于远程控制 Claude Code 的 Web 界面,内置了推送通知和语音输入。来源
关键特性
- 免费且开源 — 除了你的 Claude Code 计划外,不需要额外的订阅
- 推送通知 — 内置通知系统,无需设置 ntfy
- 语音输入 — 通过语音说话下达命令,而不是在小屏幕上打字
- 多智能体支持 — 与 Claude Code 一起支持 Codex
- 基于 Web — 可以在任何移动浏览器中运行,无需安装 app
设置
# 安装 Happy Coder
npm install -g happy-coder
# 启动服务器
happy-coder start --port 3000
# 通过 Tailscale 从手机访问
# http://100.64.x.x:3000
Happy Coder 提供了一个针对移动端优化的 Web 界面,可以显示你的 Claude Code 对话,允许你发送消息并显示文件更改——一切都通过你的浏览器完成。
第 5 部分:完整设置对比
方法对比矩阵
| 功能 | Remote Control | SSH + tmux + mosh | Happy Coder |
|---|---|---|---|
| 设置复杂度 | 极小 (1 条命令) | 中等 (30 分钟) | 简单 (5 分钟) |
| 成本 | 包含在计划中 | 免费 (Tailscale 免费层级) | 免费 |
| 网络弹性 | 中等 | 极佳 (mosh) | 中等 |
| 会话持久性 | 良好 | 极佳 (tmux) | 良好 |
| 推送通知 | 否 | 需设置 ntfy | 内置 |
| 语音输入 | 否 | 否 | 是 |
| 多供应商 | 仅限 Claude | 任何供应商 | Claude + Codex |
| 离线能力 | 否 | 部分 (tmux 持久化) | 否 |
| 完整终端访问 | 否 (仅限聊天) | 是 | 否 (仅限聊天) |
| 需要手机 App | Claude app | SSH 客户端 | 浏览器 |
按使用场景推荐设置
普通用户 (偶尔检查任务): → Remote Control。一条命令,一次二维码扫描,搞定。
日常移动编码者 (经常从手机编码): → SSH + tmux + mosh + ntfy。最大的弹性和控制力。
团队负责人 (监控多个会话): → Happy Coder。基于 Web,支持多个智能体,内置通知。
多供应商开发者 (使用 Claude、Codex 和本地模型): → SSH + tmux + mosh。适用于任何在终端运行的工具。
第 6 部分:高级配置
运行多个 Claude Code 会话
使用 tmux,你可以并行运行多个 Claude Code 会话并在它们之间切换:
# 为不同项目创建命名的会话
tmux new-session -d -s project-api
tmux new-session -d -s project-frontend
tmux new-session -d -s project-tests
# 在每个会话中,导航并启动 Claude Code
tmux send-keys -t project-api 'cd ~/projects/api && claude' C-m
tmux send-keys -t project-frontend 'cd ~/projects/frontend && claude' C-m
tmux send-keys -t project-tests 'cd ~/projects/tests && claude' C-m
# 从手机上,在会话之间切换
tmux switch-client -t project-api
tmux switch-client -t project-frontend
无头 (Headless) Linux VM 设置
对于想要专用远程编码环境的团队,Claude Code Remote Control 可以通过 SSH + tmux 在无头 Linux VM 上运行。来源
# 在你的云端 VM (AWS, GCP 等) 上
# 安装 Claude Code
npm install -g @anthropic-ai/claude-code
# 在 tmux 会话中启动
tmux new-session -s remote-claude
# 启动 Claude Code
claude
# 启动 Remote Control
/rc
然后从你的手机扫描二维码。这为你提供了一个完全由移动端控制的功能强大的云端开发环境。
结合使用 Remote Control 与 SSH
你可以同时使用这两种方法以获得最大的灵活性:
- SSH + tmux 用于会话持久性和完整的终端访问
- Remote Control 在 tmux 会话中用于移动端友好的聊天界面
# SSH 进入你的机器
mosh user@100.64.x.x
# 附加到 tmux
tmux attach -t claude
# 在会话内,Claude Code 正在运行
# 启用 Remote Control 以供手机访问
/rc
现在你拥有了:
- tmux 保持会话活跃
- mosh 保持 SSH 连接稳定
- Remote Control 提供精美的移动端界面
- 需要时可以进行完整的终端访问
第 7 部分:在移动端构建应用
移动端开发工作流
Claude Code + 远程访问的结合从根本上改变了你可以在何时何地保持生产力。一个实际的工作流:
- 早间通勤:在手机上查看昨晚的 CI 结果,通过 Remote Control 启动修复任务
- 午休时间:通过 ntfy 通知检查进度,批准或重定向更改
- 晚上:拿起你的笔记本电脑,tmux 会话正处于你离开时的状态
移动端编码适用的场景
通过 Claude Code 进行移动端编码最适合:
- 任务启动 — 描述你想要构建的内容,让 Claude Code 在你离开时工作
- 代码审查 — 从手机阅读 diff 并批准更改
- Bug 分类 — 调查问题并指引 Claude Code 进行修复
- 进度监控 — 检查运行时间较长的任务
它不太适合:
- 复杂调试 — 小屏幕会让阅读堆栈跟踪变得痛苦
- 视觉工作 — CSS 和布局调整需要全屏
- 大规模重构 — 你希望在合适的显示器上查看广泛的更改
随处使用 ZBuild 构建
对于想要在移动时构建和迭代应用程序的开发者,ZBuild 等平台是对远程 Claude Code 工作流的补充。ZBuild 提供了一个在平板电脑上运行良好的可视化应用构建器,并可与 Claude Code 配合处理更复杂的后端逻辑——为你提供不需要桌面工作站的全栈开发能力。
第 8 部分:故障排除
常见问题与修复
问题:“你的计划不提供 Remote Control” 修复:确认你处于 Pro、Max、Team 或 Enterprise 计划。免费层级不支持 Remote Control。
问题:二维码无法扫描 修复:确保你的 Claude app 已更新到最新版本。尝试直接使用会话 URL 而不是扫描。
问题:mosh 连接断开且无法重新连接
修复:验证 mosh-server 是否在你的桌面上运行 (which mosh-server)。检查两台设备上的 Tailscale 是否已连接。如果不使用 Tailscale,请确保 UDP 端口 60000-61000 已打开。
问题:重新连接后 tmux 会话显示黑屏
修复:运行 tmux attach -t claude 而不是创建新会话。如果会话已死,请通过查看 ~/.claude/logs/ 检查 Claude Code 是否崩溃。
问题:ntfy 通知未送达
修复:验证 ntfy 服务器是否正在运行 (curl http://100.64.x.x:8090/health)。检查 ntfy app 订阅 URL 是否与你的服务器地址匹配。确保你手机的 Tailscale 连接处于活跃状态。
问题:手机断开连接期间 Claude Code 会话过期 修复:这在使用 Remote Control 且长时间不活动后会发生。对于需要持续数小时的会话,请使用基于 tmux 的设置。无论客户端连接如何,tmux 会话都会无限期存活。
问题:在移动端打字很慢 修复:使用语音输入 (Happy Coder) 或保持消息简短且以任务为导向。或者,在笔记 app 中准备好 prompt 并将其粘贴到终端。
第 9 部分:安全考量
Remote Control 安全性
- 所有流量都通过 Anthropic 的 API 进行 TLS 加密
- 会话 URL 是唯一的,且在使用后过期
- 你的机器上不会开启入站端口
- 你的凭据和文件永远不会离开你的机器(仅传输 Claude Code 的文本输出)
SSH 安全最佳实践
当暴露 SSH 用于移动端访问时:
# 仅使用基于密钥的身份验证 (禁用密码验证)
# 在 /etc/ssh/sshd_config 中:
PasswordAuthentication no
PubkeyAuthentication yes
# 仅将 SSH 限制在 Tailscale 接口
ListenAddress 100.64.x.x
# 使用非标准端口
Port 2222
Tailscale 安全性
Tailscale 基于 WireGuard 的网格网络提供:
- 设备之间的端到端加密
- 数据不通过 Tailscale 的服务器路由 (直接连接)
- MagicDNS 用于简单的域名解析
- 用于团队设置的访问控制列表 (ACLs)
结论
在 2026 年远程使用 Claude Code 的方式从极其简单(一条 /rc 命令)到完全自定义(SSH + tmux + mosh + ntfy + Tailscale)不等。正确的设置取决于你的工作流:
- Remote Control:适用于零设置的快速移动端检查
- SSH 技术栈:适用于常驻终端且需要最大弹性的开发者
- Happy Coder:一个免费且功能丰富的中间地带
实际影响是显著的。开发不再局限于坐在桌子前并打开笔记本电脑。你可以启动一个任务,走开,并保持控制。无论你是在构建业余项目、管理团队的代码库,还是使用 ZBuild 原型化应用,移动端 Claude Code 访问意味着你的开发工作流跟随着你,而不是相反。
来源
- Claude Code Remote Control Documentation — Anthropic
- Remote Claude Code: Programming Like the Early 2000s — Harper Reed
- Claude Code from the Beach: mosh, tmux, and ntfy — Rogs
- Claude Code Remote Control: Code From Your Phone — Medium
- Claude Code on Your Phone — Builder.io
- Perfect Claude Code Notifications with Tailscale and ntfy — Felipe Elias
- 3 Ways to Run Claude Code from Your Phone — Zilliz
- Run Claude Code from Your iPhone — Pete Sena / Medium
- Claude Code Remote Control Launch Analysis — Blockchain News
- Remote Control on Headless Linux VM — GitHub Issue #29479
- Claude Code Mobile Setup with tmux and Bitvise — GitHub Gist
- How to Use Claude Code on Your Phone — FelloAI
- Claude Code Mobile Setup — Sealos Blog