Hermes WebUI手机电脑同步显示,多设备同步完整指南
【免费下载链接】hermes-webuiHermes WebUI: The best way to use Hermes Agent from the web or from your phone!项目地址: https://gitcode.com/GitHub_Trending/he/hermes-webui
如果你正打算在手机上用 Hermes WebUI 的多设备同步能力,先说句反直觉的:它没有"云端同步"。电脑和手机看到的会话之所以一模一样,是因为它们连的是同一个跑在你自己机器上的服务——数据只有一份,设备只是不同窗口。理解这一点,后面所有操作都很简单。
⚡ 电脑上聊到一半,切手机是空的?
先还原一个最常见的场景:你在公司电脑上和 Hermes 聊了半小时,改了一半的工作区文件,下班路上掏手机想看结果,打开应用却发现是空白界面,或者干脆连不上。
问题往往不在"同步",而在"访问"。Hermes WebUI 默认只监听本机的127.0.0.1回环地址,也就是说只有和它同一台机器上的浏览器能打开它。你的手机根本够不到这个端口,所以不是数据丢了,而是路没通。
好消息是,会话记录、工作区文件、你的设置和主题偏好,全部存在服务器侧,而不是存在你某个浏览器的缓存里。只要把路打通,手机上打开就是电脑上的样子。
🚀 三步跑通:先把服务稳定起来
第一步还是老规矩,把 Hermes WebUI 装到那台你想让它一直开着的机器上(家里的旧电脑、树莓派、VPS 都行):
git clone https://gitcode.com/GitHub_Trending/he/hermes-webui cd hermes-webui && ./start.shstart.sh会帮你找好 Python 环境、启动服务并等它健康就绪。如果你希望它像后台守护进程一样长期运行,可以用仓库里的 ctl.sh:./ctl.sh start启动,./ctl.sh status查看状态,日志落在~/.hermes/webui.log。
这里有个关键认知:会话在页面刷新、隧道断线重连后都会保留,所以哪怕你只是重启过电脑,回来登录一下,一切照旧。这个行为由 会话操作模块 负责持久化。
📱 手机怎么访问同一个 Hermes WebUI?
两条路,选一条就行。
路线一:SSH 隧道,不装任何东西。在你自己的电脑上执行:
ssh -N -L 8787:127.0.0.1:8787 user@your-server这条命令把远程服务器的 8787 端口"搬"到你本地,然后本机浏览器打开http://localhost:8787即可。如果你是通过 SSH 登录的,start.sh会自动把这条命令打印给你,连抄都省了。这条路适合"人在自己电脑上访问远程"的场景。
路线二:Tailscale,真正给手机用的路。在服务器和手机上各装一个 Tailscale,它们会自动组成一张私密的组网,不需要端口转发,也不用把服务暴露到公网。推荐的做法是让 WebUI 继续绑在本地回环地址上,用tailscale serve --bg 8787把端口发布出去,然后手机浏览器打开 Tailscale 分配的 HTTPS 地址。完整步骤(含权限报错的处理)都写在 远程接入文档 里。
🔍 打开手机的瞬间,幕后发生了什么
现在你大概想问:手机凭什么和电脑看到同一份东西?答案就一句话——所有设备的请求都落到同一个进程、同一份磁盘数据上。
具体来说,三层机制在支撑你看到的"一致":
- 单一数据源。会话、设置、工作区文件都落在服务器本地的状态目录里,浏览器只是渲染层。两台设备之间从不互相"传数据",因为它们读的本来就是同一份。工作区模块 处理的文件读写也全部发生在服务器侧。
- 认证只认服务器。一旦你设了密码,登录态是一个签名 cookie,存在服务器这边管理,有效期默认 30 天。手机登录一次,之后的重连不用反复输密码。这套逻辑在 认证模块 里,还支持 passkey 无密码登录。
- 流式输出能自愈。手机上网络抖一下(电梯、地库),SSE 流式连接会自动重接,不会把正在生成的回答弄断。
另外说一句容易混淆的:仓库里有个 state_sync.py 模块,它做的是把 WebUI 的会话用量回写给 Hermes Agent 自己的 state.db,让/insights统计里能算上你在网页上的活动——这是"写入另一本账",和设备间同步不是一回事,默认关闭,不需要你操心。
🏠 进阶:把手机变成正经入口
路通了之后,有几步小动作能让手机体验上一个台阶:
给 UI 上把锁。只要 WebUI 的访问路径超出了本机回环(比如直连 Tailscale IP),就一定要设密码:启动时带上HERMES_WEBUI_PASSWORD=你的密码,或者在设置面板里配置。登录后还可以注册 passkey,之后手机解锁刷脸就能进,密码只在找回时用。
加到主屏幕。手机浏览器里把页面"添加到主屏幕",图标和启动体验接近一个原生 App。配合移动端专门的响应式布局(侧边栏收进汉堡菜单、文件面板从右侧滑出、触控目标 44px 起步),日常查会话、看 cron 任务跑没跑完,都在手机上很顺手。
顺手开两个小功能。输入框旁边的麦克风按钮支持语音输入,说一段话自动转成文字;工作区文件改动都直接落在服务器磁盘上,你在手机里编辑的 Markdown,回到电脑端立刻可见。
⚠️ 容易踩的三颗坑
坑一:手机连不上,先怀疑隧道没开。SSH 隧道是前台进程,终端一关就断。判断方法很简单:本地浏览器打开http://localhost:8787,能开手机就能开;打不开就是隧道的事,跟 WebUI 无关。
坑二:没设密码就直连 IP。Tailscale 的 Serve 模式会替你保留本地绑定,比较安全;但走"直连 tailnet IP"的兜底方案时,服务是绑到0.0.0.0的,忘了设密码等于裸奔。宁可多输一次密码。
坑三:浏览器杀掉后台标签。手机上 Chrome 或系统省电策略容易把闲置标签页回收,切回来页面重载。会话数据不会丢(都在服务器),但正在看的滚动位置会回到会话开头。给浏览器关掉省电限制,体验会好很多。其他疑难场景可以看 故障排查文档,里面有按症状分类的处理步骤。
把 Hermes WebUI 放到一台常年在线的机器上,密码设好,手机通过 Tailscale 接进来——之后你不再需要"同步"这个动作本身。状态一直就在那里,你只是从不同的窗口看同一间屋子。
【免费下载链接】hermes-webuiHermes WebUI: The best way to use Hermes Agent from the web or from your phone!项目地址: https://gitcode.com/GitHub_Trending/he/hermes-webui
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考