9 min read

旧手机变 AI 监控节点:OpenClaw Node 功能完整教程(2026)

家里吃灰的旧手机别扔——装上 OpenClaw 节点 App,配对上去,Agent 就能调摄像头拍照、获取位置、录屏。这篇写从编译 APK 到配对完成的完整过程,以及旧手机当家庭监控节点的实际玩法。

最近在论坛看到有人问"怎么在手机上装 OpenClaw",评论区一堆 Termux 教程,看着一头雾水。其实大家说的根本是两件不同的事——在手机上跑 OpenClaw 服务端,和把手机当 OpenClaw 的节点(Node)挂上去,完全是两种玩法。

这篇写的是后者:节点功能。简单来说就是,你的 OpenClaw 还是跑在 VPS 或电脑上,但通过配对一部手机,让你的 Agent 能调用这部手机的摄像头、获取 GPS 位置、录制屏幕、甚至用手机号发短信。

冰箱里有什么食材、门口来人了吗、现在在哪——这些问题以前 AI 根本没办法知道,有了节点就不一样了。

节点是什么,为什么和"在手机部署"不一样

先把概念说清楚,免得白折腾。

在手机上部署 OpenClaw:用 Termux 在安卓手机上搭一个完整的 OpenClaw 服务端,手机自己当主机跑。这条路挺折腾的,对内存、性能要求也不低。

手机当节点:OpenClaw 的主服务(Gateway)还是跑在你的 VPS 或电脑上,手机只是通过 WebSocket 连上去,充当一个"外设"。手机不需要跑 Node.js,不需要装 OpenClaw 服务端,只需要装一个轻量的伴侣 App。

官方文档里的原话是:"Nodes are peripherals, not gateways."(节点是外设,不是网关本身。)

两种方式各有用途,但如果你只是想让 Agent 调用手机摄像头或者获取位置,走节点这条路简单得多。

节点能干什么

连上之后,你的 Agent 能对这部手机做这些事:

  • 摄像头:拍照、录视频,前后摄均支持
  • 位置:获取当前 GPS 坐标,支持精度配置
  • 屏幕录制(Android):录制手机屏幕,可选是否带音频
  • Canvas 显示:让 Agent 在手机上显示网页或自定义 UI 界面
  • 发短信(Android,需电话权限):Agent 直接通过手机号发 SMS
  • 远程命令:在节点设备上执行 shell 命令(需提前白名单授权)

实际应用场景举几个:

  • 把一部旧手机放在家里当监控,问 Agent"门口有人吗",它直接调摄像头拍一张给你
  • 出门问 Agent 附近有啥好吃的,它能拿到你的实时位置再查
  • 远程触发手机上的脚本或通知

⚠️ 先说清楚现状:App 还没公开发布

这里得说一句实话,网上很多文章直接叫你去 App Store 或 Play Store 下载,那是错的。

截至 2026 年 3 月,官方文档明确写着:

  • Android App:尚未公开发布,源码在 GitHub 仓库的 apps/android 目录下,需要自己从源码编译 APK
  • iOS App:处于"内部预览(internal preview)"阶段,未公开分发

所以 Android 用户可以自己编译来用,iOS 用户目前只能等正式发布(或者有内测资格的才能用)。

虽然听起来有点麻烦,但 Android 编译其实不难,下面一步步来。

前提条件

不管是 Android 还是 iOS 节点,都有一个共同前提:你得有一台运行 OpenClaw Gateway 的主机

如果你还没搭好 OpenClaw,可以先看我之前写的:

Gateway 运行后,手机和 Gateway 主机需要能互相通信,有两种方式:

  • 同一局域网:最简单,App 会自动通过 mDNS/Bonjour 发现 Gateway
  • 不同网络(VPS 场景):需要 Tailscale 或者手动填 IP+端口,稍微复杂一点

确认 Gateway 在跑:

openclaw gateway status

看到 Gateway 监听在 ws://0.0.0.0:18789 这类字样就没问题。默认端口是 18789

Android 节点:从源码编译 + 配对教程

第一步:编译 APK

需要在一台有 Java 17 和 Android SDK 的电脑上操作(不是手机上)。

# 克隆仓库
git clone https://github.com/openclaw/openclaw.git
cd openclaw

# 编译 Android debug APK
./gradlew :app:assembleDebug

编译完成后 APK 会在 apps/android/app/build/outputs/apk/debug/app-debug.apk

然后把 APK 传到手机上安装,安装时记得允许"未知来源"的应用。

没有 Android 开发环境的话,可以在自己的 VPS 上或者 GitHub Actions 上跑编译,把生成的 APK 下载下来就行,不一定要在本地装 Android Studio。

第二步:启动 Gateway 并确认端口可达

在 Gateway 主机上:

openclaw gateway --port 18789 --verbose

如果手机和主机在同一局域网,App 会自动发现,不需要手动填 IP。如果是 VPS 场景,需要确保手机能访问到 VPS 的 18789 端口(防火墙记得放行)。

第三步:手机 App 配对

打开刚装好的 OpenClaw Android App,进入 Connect(连接)标签页。

有两种方式找到 Gateway:

  • 自动发现:同局域网时,App 会列出发现的 Gateway,直接选就行
  • 手动填写:点 Manual(手动),输入 Gateway 主机的 IP 和端口,比如 192.168.1.100:18789

连上后 App 会自动发送配对请求。

第四步:在主机上审批配对

回到 Gateway 主机的终端:

# 看有没有待审批的设备
openclaw devices list

# 审批(把 requestId 换成上面列出来的实际 ID)
openclaw devices approve <requestId>

第五步:验证连接

openclaw nodes status

看到 paired · connected 就成了。

还有一种推荐方式——通过 Telegram 配对,省去手动敲命令的步骤:

# 在 Telegram 里给你的 Bot 发:
/pair
# Bot 会回复一个 Setup Code

# 在手机 App 里粘贴这个 Setup Code 连接

# 然后在 Telegram 发:
/pair approve

这个方式对已经用 Telegram 接入 OpenClaw 的人来说最顺手。如果还没接入 Telegram 的,可以看这篇 gateway 命令指南

iOS 节点:内部预览版现状

iOS 的情况要稍微解释一下。目前 iOS App 仍在内部预览阶段,官方文档写的是"not publicly distributed yet",也就是还没有公开渠道下载。

如果你有 TestFlight 内测资格,连接流程和 Android 基本一样:

  1. 打开 iOS App,进 Settings → Gateway 部分
  2. 选一个已发现的 Gateway,或者手动输入 IP 和端口
  3. App 自动发送配对请求
  4. 在 Gateway 主机上执行 openclaw devices list + openclaw devices approve <requestId>
  5. openclaw nodes status 确认连接

iOS 节点支持摄像头、Canvas 显示、位置服务和 Talk Mode 语音模式,功能比 Android 少一点(没有短信和屏幕录制)。

对大多数人来说,等公开版本发布可能更实际。GitHub 仓库的 release 页面会第一时间更新,关注着就行。

配对成功后能用哪些命令

配对完成后,你的 Agent 就能直接调用这些功能,也可以手动从命令行测试:

# 用手机拍一张照片
openclaw nodes camera snap --node MyPhone --facing back

# 获取当前位置
openclaw nodes location get --node MyPhone

# 录制屏幕 10 秒(Android)
openclaw nodes screen record --node MyPhone --duration 10s

# 在手机上显示一个网页(Canvas)
openclaw nodes canvas present --node MyPhone --target https://example.com

# 截一张 Canvas 的图
openclaw nodes canvas snapshot --node MyPhone --format png

# 发短信(Android,需短信权限)
openclaw nodes invoke --node MyPhone --command sms.send --params '{"to":"+8613800138000","message":"你好"}'

其中 --node MyPhoneMyPhone 是你在 App 里设置的节点名称,openclaw nodes status 里能看到已连接的节点列表和名称。

常见问题和排查

App 打开发现不了 Gateway

同局域网情况下发现不了,最常见原因是路由器禁了 mDNS 广播(部分路由器默认关闭)。解决办法是直接切手动模式,填 IP 和端口。

# 先在主机上确认 Gateway 在监听
openclaw gateway status
# 确认能看到 ws://0.0.0.0:18789 或者 ws://192.168.x.x:18789

devices list 里看不到配对请求

配对请求有时效性。如果等了很久还没看到,重新在 App 里断开再重新连接,会重新发送配对请求。也可以用下面这个命令强制刷新:

openclaw gateway call node.list --params "{}"

VPS 上的 Gateway,手机无法连接

需要确认两件事:

  1. VPS 防火墙开放了 18789 端口(TCP)
  2. Gateway 绑定的是 0.0.0.0 而不是 127.0.0.1(本地回环无法从外部访问)
# 在 openclaw.json 里检查或设置
# gateway.bind: "lan"  # 绑定所有网络接口
# 或者手动启动时指定
openclaw gateway --bind 0.0.0.0 --port 18789

用 Tailscale 把手机和 VPS 放在同一个虚拟局域网也是个好方案,省去公网端口暴露的安全顾虑。

重装 App 后需要重新配对

这是正常的。App 卸载重装会丢失本地存储的配对 token,需要重走一遍配对流程。配对是单次授权,不是永久绑定的。

一些实际使用体验

节点功能目前整体还是早期阶段——Android 没有公开发布、iOS 还在内测,文档也不是非常完善。但功能本身是真能用的,摄像头调用和位置获取都比较稳定。

最实用的玩法还是旧手机当监控节点:充着电放在角落,只要和 Gateway 在同一网络下,Agent 随时能拍照汇报。也不需要手机性能多好,能装 App 能保持网络连接就行。

后续官方发布正式版 App 之后,配对流程应该会简化很多,现在这套还是偏 geek 向的玩法。感兴趣的可以先折腾起来,不感兴趣的等公开版本出来再说也不迟。