开发者 Harper Reed 的手机 Claude Code 方案——不依赖第三方 AI IDE,纯粹的 SSH + Tailscale + Tmux,从手机连到工作站,在任何地方继续编程。
四个核心问题的答案
| 问题 | 答案 |
|---|---|
| 网络 | Tailscale |
| 终端客户端(iOS) | Blink |
| 工作站 | Mac 或 Linux,保持开机 |
| 工具 | Tmux + Mosh + Claude Code |
第一步:让工作站可以 SSH
Linux:
bash
sudo apt install openssh-server
ssh localhost # 测试Mac:系统设置 -> 通用 -> 共享 -> 开启「远程登录」,先用本地 IP 测试连接成功。
第二步:Tailscale 打通网络
Tailscale 创建只有你自己能访问的私有网络,无需配置防火墙:
bash
# 工作站和手机都安装 Tailscale,登录同一账号
# 即可用 Tailscale IP 直接 SSH
ssh <tailscale-ip>效果:手机在东京,工作站在上海,直接连接,低延迟,稳定可靠。
第三步:选 iOS 终端客户端
Blink(推荐):打开即是 Shell,支持 Mosh,支持 SSH 配置管理。
其他选项:Termius(界面友好)、Prompt(Panic 出品,稳定)。
第四步:Mosh 解决断线问题
bash
# 工作站安装 mosh
brew install mosh # Mac
apt install mosh # Linux
# 之后用 mosh 代替 ssh
mosh <tailscale-ip>实际效果:
- 进地铁隧道断网 -> 出来后自动重连,Claude Code 继续跑
- 手机息屏再打开 -> 会话完好
- WiFi 切换到 5G -> 无感知切换
第五步:Tmux 管理多个 Claude Code 实例
bash
brew install tmux # Mac
apt install tmux # Linux
tmux new -s project1 # 新建会话
tmux attach -t project1 # 重新连接
# Ctrl+b c 新建窗口
# Ctrl+b n 切换窗口Harper 同时运行 7 个 Claude Code 实例,在窗口间切换,随时可以放下手机再回来继续。
实用脚本
Claude Code 别名
bash
alias cc-start="claude --dangerously-skip-permissions"
alias cc-continue="claude --dangerously-skip-permissions --continue"Mac Keychain 解锁
Claude Code 在 Mac 上将 API Key 存在 Keychain 中,SSH 进来后需要先解锁:
bash
#!/bin/bash
if timeout 1 security show-keychain-info &>/dev/null; then
echo "Keychain already unlocked"
else
security unlock-keychain
fi快速 Tmux 脚本(tm)
bash
#!/bin/bash
# 自动创建或连接以主机名命名的 Tmux 会话
SESSION=$(hostname)
tmux has-session -t $SESSION 2>/dev/null && \
tmux attach -t $SESSION || \
tmux new-session -s $SESSION输入 tm 即可,在哪台电脑上就连接哪台的 Tmux 会话。
完整工作流
- 手机打开 Blink
mosh <工作站 Tailscale IP>tm进入 Tmux 会话./unlock.sh解锁 Keychaincc-start启动 Claude Code- 开始工作,放下手机
- 下午拿起手机,mosh 自动重连,Claude Code 还在跑
原文:Remote Claude Code: programming like it was the early 2000s | 来源:harper.blog