如何在家用服务器上运行 Claude Code、Codex 和 OpenCode,并用手机浏览器查看进度
在稳定的机器上运行会话、用手机监控的实用配置,并坦诚对比云端界面、SSH 和手机优先控制面板之间的取舍。
- CLI
- 0.2.17
- 预览 ref
- a2c45c8
真正的工作属于键盘前。
但守着长时间运行的会话不必如此。
如果一个 Claude Code、Codex 或 OpenCode 会话要跑 20 到 60 分钟,你会希望能用手机看看它的情况。
不是用一整套 SSH 配置。
也不是远程桌面。
只是:打开浏览器,看看它在做什么,回应它需要的东西,然后继续忙自己的。
“手机上只用浏览器”这个要求听起来简单,却隐藏着一个大岔路口:
- 云端界面(手机上用起来方便,但默认不是你的本地仓库)
- 本地执行(仓库和工具都在那里,但你需要一个远程操作界面)
这篇指南介绍一种既能本地执行、又能用手机查看的配置。
要点
- 先决定你要哪条路:
- 云端界面:手机访问很方便,但你要围绕云端项目或补丁重建仓库工作流。
- 本地 / 服务器执行:仓库和工具留在你的机器上,但你需要一个远程操作界面。
- 如果选择本地 / 服务器执行,就在不会休眠的机器(家用服务器 / 台式机 / 开发机)上运行会话。
- 要在手机上只用浏览器访问,你需要 HTTPS(安全上下文)。如果是自托管,用 Tailscale Serve 获取
https://*.ts.net地址很省事。 - Happier 是在这里表现不错的选项之一:它提供的网页界面适合手机,文档里也把 Tailscale Serve 作为正式路径。
问题
这里有两个独立的痛点:
- 会话在哪里运行(笔记本休眠、Wi-Fi 断开、终端关闭)。
- 如何在手机上查看和控制它。
大多数工作流解决了 (1),却没有解决 (2)。
- 在服务器上运行有帮助,但不会自动给你一个好用的手机界面。
- 云端界面给了你手机界面,但不会自动给你本地仓库。
常见做法及其取舍
- 在手机上 SSH:能用,但会把手机变成终端。
- 远程桌面:能用,但很重,而且容易误触。
- 云端界面:手机体验很好,但“这是我的仓库”这件事就变了。
更合适的是:
- 会话运行在拥有仓库的稳定机器上
- 一个适合手机的浏览器界面
Happier 是符合这种组合的工具之一。
方案总览:大家实际使用的三种方式
方案 A:云端界面(手机优先,而非本地仓库优先)
这是实现“手机上只用浏览器”的简便路径。
取舍:除非你投入精力做同步或补丁工作流,否则通常拿不到你完全一致的本地文件系统和工具链。
方案 B:终端优先(SSH / Mosh),接受它的体验
一切都留在本地。
取舍:你仍然是在手机上做终端工作。
方案 C:本地执行 + 真正的远程操作界面
这是兼顾“仓库留在我的机器上”和“用手机查看很方便”的平衡点。
这个远程操作界面可以是:
- 官方的远程界面(Claude Remote Control)
- 自托管的控制面板
- 像 Happier 这样的配套应用 / 网页界面
如果你第一次接触 Happier
Happier 是一款面向 Claude Code、Codex 和 OpenCode 等编程会话的开源配套应用(移动端 / 网页 / 桌面端)。
工作流是:让会话和仓库在你信任的机器上运行,用手机上的 Happier 查看进度、处理审批、发送追加指令。
开始设置:
- 如何在手机上使用 Happier
- GitHub: https://github.com/happier-dev/happier
- 安装 / 下载: https://github.com/happier-dev/happier#how-it-works
- Discord: https://discord.gg/W6Pb8KuHfg
一套可行的工作流(Happier + Tailscale Serve)
如果机器由你掌控,这是推荐的仅用浏览器的工作流:
1) 在拥有会话的机器上运行 Happier
选一台稳定的机器:
- 家用服务器
- 台式机
- 常开的开发机
2) 为网页界面准备 HTTPS 地址(安全上下文)
浏览器把 http://localhost 视为安全,但 http://<lan-ip> 和 http://<tailscale-ip> 不是安全上下文。
所以手机远程访问要用 HTTPS。
Happier 推荐的路径是 Tailscale Serve,它会在你的 tailnet 内给你一个 https://*.ts.net 地址。
在 Happier 的工具中,快速开始如下:
hstack tailscale enable
hstack tailscale url然后在手机上(同样登录了 Tailscale)打开这个 https://*.ts.net 地址。
3) 如果有多台机器,理清多服务器
如果你最终有多个服务器(个人 + 工作 + 自托管),要认真对待服务器配置:
- 认证按服务器区分
- 通知能识别服务器
这很重要,因为如果你用错了服务器配置,“仅用浏览器查看”就会失效。
4) 把手机查看当作一个明确的循环
在手机上保持简单:
- 打开会话
- 看看它是否在等待审批
- 回答一个问题,或发一条追加指令
如果需要真正的编辑或重构,就等回到键盘前。
故障排查
网页界面能加载,但加密功能用不了
这几乎总是因为“不是安全上下文”。
用 HTTPS(Tailscale Serve / 正规 TLS),而不是局域网里的普通 HTTP。
我能访问机器,但会话没有显示
检查:
- 你用的是正确的服务器配置
- 那台机器上的守护进程或运行时连接的是同一个服务器