龙虾AGI通用实验室Lobster AGI Lab · est. 20262026 · 09 · 21
首页 / 文章 / 开发的部分产品
开发的部分产品

ClaudeTerminal 可以用手机远程操控了

格里灰丝2026-09-21约 2989 字Markdown 原文

Claude Code 有一个远程控制功能,可以在手机上看到电脑终端里正在发生的事情。Claude 在跑任务,手机上能看到实时输出;Claude 弹了个权限确认,手机上能直接批准;Claude 问了个问题在等回答,手机上能直接回。不用坐在电脑前,掏出手机就能知道它干到哪了。

这个功能我们一直想在 ClaudeTerminal 里用上。官方终端有,我们没有,每次出门都只能靠回来之后翻记录猜它跑到哪一步了。

试了一圈之后发现,用不了。

一、为什么用不了

ClaudeTerminal 用的是 Agent SDK 模式,这个模式下远程控制的接口根本不存在。不是我们哪里没接对,是官方压根没有把这个能力开放出来。

等官方开放是一种选择,但不知道要等多久。而且我们自己每天都在用 ClaudeTerminal 跑任务,经常是睡前扔一个大任务让它跑着(之前的续跑和定时功能就是干这个的),第二天早上起来看结果。中间这段时间完全是盲的。它是还在跑,还是撞限了在等恢复,还是弹了个确认框卡在那里,还是早就跑完了,不在电脑前根本不知道。

还有一个很实际的问题。Claude 的 prompt 缓存有时效,一个小时不动就过期了。如果 Claude 生成完我们没有及时继续,缓存过期了,后面续跑就要重新读一遍整个上下文,额度白白多花一大截。要是手机上能看到它的状态,是非常重要的。

所以我们决定自己做。

二、手机上能做什么

动手之前先想清楚一件事:手机上应该能做什么,不应该做什么。

我们回头看自己的使用场景,其实需求很集中。出门在外的时候最想知道的就是几件事:任务跑到哪了?是不是卡住了?有没有在等我操作?跑完了结果怎么样?

对应到功能上就是:看实时输出,发消息,回答 Claude 的提问,批准权限请求和计划,切换会话看不同任务的进展,必要的时候能停掉当前任务。

刻意不放进手机的东西也很明确:账号管理、自动化面板、系统设置、文件操作、本地终端。这些功能的操作复杂度高,在手机小屏幕上做体验也不好,而且它们本身就不是「出门瞄一眼」的场景需要的。

总结起来就是三个词:看、说、批准。手机是遥控器,不是第二台电脑。

三、手机上看到的是什么

我们没有给手机单独做一套简化版的界面。手机上看到的消息流、折叠块、工具调用卡片、HUD 状态栏,和电脑上是同一套东西。平时用 ClaudeTerminal 的人拿起手机就会用,没有额外的学习成本。

手机端的首页是一个会话列表,能看到电脑上正开着的所有会话和历史会话。每个会话卡片上能看到它当前的状态,是在跑、已完成、还是在等操作。点进去就是那个会话的完整内容,左上角返回回到列表。如果电脑上开了多个标签页在跑不同的任务,手机上可以逐个点进去看各自的进展,跟在电脑上切标签页是一样的。

这个首页的设计参考了官方手机端的交互方式。进列表、选会话、看内容、返回,操作路径和大家已经习惯的手机端应用一致。

四、扫个码就能用

不用装 App。

电脑上打开 ClaudeTerminal 的远程面板(托盘菜单里有「手机远程…」的入口),屏幕上弹出一个二维码。手机扫一下,配对完成,直接进入界面。整个过程不需要输入任何地址、填任何配置。

配对是一次性的。第一次扫码配对之后,手机会记住这台电脑。以后打开直接连上,不需要再扫。iPhone 和 Android 都可以把这个页面「添加到主屏幕」,添加之后图标和原生 App 一样,打开是全屏的,没有浏览器的地址栏和工具栏。我们在页面底部做了引导条,提示怎么添加到主屏幕,跟着操作就行。

配对成功之后每台手机拿到一个独立的令牌。电脑端可以看到所有连接过的设备,显示型号、操作系统、浏览器这些信息,可以给设备改备注名方便辨认。如果哪台设备不用了,一键吊销就行,那台手机立刻断开。桌面的 HUD 上会显示「📱 N 台手机在线」,随时能看到有几台设备连着。

五、怎么连的

连接方式分两种情况。

在同一个 Wi-Fi 下,手机直接连电脑,中间不经过任何第三方,速度最快也最简单。

不在同一个网络的时候,比如人在外面用手机流量,就需要一个中继服务器在中间转发。我们内置了一个默认的中继地址,所以装好就能用,不需要自己搭任何东西。

但我们也知道,有些人会在意数据经不经过别人的服务器。所以远程面板里提供了三个选项可以切换:用内置中继(默认,最省事)、填一个自建中继的地址(我们提供了部署文档,一个 Node 单文件就能跑起来)、或者选「只走同一 Wi-Fi」关掉中继功能。按自己的需求选就行。

中继本身只做消息转发,不解密内容也不存储任何数据。即便用的是我们内置的那个,传输的也只是消息事件,带宽很小,单台手机一天下来就是 MB 级别的流量。

六、在手机浏览器里用,做了不少适配

因为手机端是一个网页,不同的浏览器和不同的打开方式会碰到一些各自的问题。这些我们都做了处理。

很多人扫二维码习惯用微信扫。微信的内置浏览器能打开页面,但它限制比较多,后续的连接流程在里面跑不顺畅。所以我们在微信里打开的时候,整屏只显示一条引导:点右上角的「···」菜单,选「在浏览器中打开」。同时提供一个复制链接的按钮,万一找不到那个菜单选项,手动粘贴到浏览器里也行。

进了系统浏览器之后就一切正常了。配对、使用、添加到主屏幕都没问题。

iPhone 上还有一个情况:Safari、主屏幕图标、微信内置浏览器,这三个入口的存储是各自隔离的。如果令牌只存在浏览器的本地存储里,从 Safari 配对完,从主屏幕图标打开就又要重新配对,体验很差。我们的处理方式是把令牌编进了链接本身,这样不管从哪个入口打开都能自动连上,一次配对之后就不用再管了。

断线重连也做了处理。手机锁屏、切到别的 App、进电梯信号断了,回来之后会自动重新连上,断线期间错过的消息会补发,不丢内容。iPhone 切后台的时候系统会冻结网页,网络连接表面上开着其实已经断了,我们专门处理了这个情况,回到前台的时候会主动重建连接。

试试看

现在 ClaudeTerminal 跑着任务的时候,出门之前掏出手机扫个码,走在路上也能看它干得怎么样了。

ClaudeTerminal 是我们给 Claude Code CLI 套的一个桌面图形壳。引擎是官方的 Claude Agent SDK,会话数据和终端里的 claude 命令完全互通,随时可以回终端,没有迁移成本。

下载地址:https://github.com/guoy0701/ClaudeTerminal/releases

安装一次,之后有新版本会自动提示更新。

问题反馈和建议:https://github.com/guoy0701/ClaudeTerminal/issues

也可以在应用内点帮助菜单的「反馈」,或者直接输入 /feedback。

我们还在持续往里面加东西,欢迎一起用,一起提问题,一起把这个工具打磨得更趁手。

我建了一个AI学习研究群,目前几十来人,都是在真正动手搞AI的人。

如果你也在自己跑模型、写代码、做项目

或者使用ClaudeClaude code

欢迎点赞关注转发一键三连,然后加我微信,备注写清"你在做的AI方向",聊得来的话我拉你进群。纯围观的和小白就不加了,有一定门槛。

上一篇我的问答版Claude"中转站"上线了!