等了足足半年多,OpenClaw 的 iOS 客户端终于发布了!作为一名关注 AI 生态很久的玩家,我第一时间就下载了体验。说实话,那种看到“梦中情软”落地的心情还是很激动的。

为了把这玩意儿玩明白,我还特意折腾了一套环境:用腾讯云服务器自建了最新版(2026.6.10)的 Gateway,然后用 Tailscale Serve 打通内网,手里的 iPhone 17 Pro Max 完美连接。

本来以为能立刻享受丝滑的 AI 操纵感,结果现实给我泼了两盆冷水。连接确实是连上了,普通的文本聊天也没问题,但一旦涉及到“高级玩法”,两个明显的 Bug 就暴露出来了。为了帮大家避坑,我把这两个问题的复现过程和排查思路整理了出来。

环境搭好了,但这两个坑得留意

先简单说一下我的环境配置,大家可以参考一下,看看是否雷同:

  • 服务端:腾讯云,自建 OpenClaw(Gateway v2026.6.10)
  • 客户端:iPhone 17 Pro Max
  • 组网方式:Tailscale Serve

连接过程非常丝滑,Agent 也能正常对话,说明网络层没问题。但问题出在核心功能上。

坑一:Talk Mode 模式下“失声”了

现象描述: 我在 App 里开启了 Talk Mode(语音对话模式),并且接入了 ElevenLabs 作为 TTS 引擎。

实际体验:我对着手机说话,AI 能准确识别我的语音(ASR 正常)并返回文字回复,但就是死活不发音。按理说 ElevenLabs 应该会把文字转成语音播放出来,结果这里静默了。

排查思路: 这种情况通常是音频回流或者 API Key、模型配置的问题。建议检查 App 内 ElevenLabs 的 API Key 配置是否正确,或者尝试重置 TTS 引擎选项。如果是网络代理问题(导致无法连接 ElevenLabs 服务),也会导致有文字没声音。

Talk Mode 语音对话模式界面示意图,展示语音输入与文字交互状态。

图1:OpenClaw iOS 客户端开启 Talk Mode 后,ASR 正常识别语音但 TTS 播报失败的交互界面。

坑二:iPhone 成了“摆设”?所有 Node 能力全军覆没

这个问题比第一个更严重,直接影响了“AI 操控手机”的核心预期。

现象描述: 我想让 Agent 调用 iPhone 的相机拍个照,结果它直接报错,提示没有对应的命令。随后我测试了剪贴板等其他 Node 能力,结果全部失效。

错误日志显示

  • CLI 层面报错:node command not allowed: the node did not declare any supported commands
  • Agent 调用层面提示:camera.snap is not in the allowlist

深度分析与解决方案: 虽然我已经在系统设置和 App 内部都开启了相机权限,且 Gateway 端也是最新版,但问题依旧。在多次排查日志并与“助手”对线后,我找到了问题的根源:

这很可能不是权限配置问题,而是注册逻辑的 Bug。

目前的状况是:iOS 客户端虽然成功连接到了 Gateway,但在注册 Node(节点)的时候,并没有向 Gateway 声明自己支持哪些指令(supportedCommands 字段为空)。

说白了,Gateway 知道有个手机连上来了,但它根本不知道这个手机能干嘛(因为它没上报能力清单)。既然 Gateway 觉得这个 Node 啥也不会,自然就会拒绝所有的调用请求(比如相机、剪贴板等),从而报错 not in allowlist

建议修复尝试

  1. 重启并重连:尝试杀掉 iOS 端 App 进程,重新走一遍连接流程,强制重新注册 Node。
  2. 检查版本一致性:虽然我两端都用了 2026.6.10,但如果你在测试,请确保 iOS 端的版本号没有缓存问题,必要时尝试卸载重装。
  3. 关注官方更新:如果上述方法无效,这极大概率是 iOS 端代码层面的逻辑遗漏(Handshake 阶段未携带能力列表),只能等客户端下个版本修复了。

Gateway 与 iOS Node 节点通信架构示意图,展示能力注册流程。

图2:Gateway 与 iOS 客户端的握手注册逻辑示意图,红色部分标注了 supportedCommands 声明缺失的故障点。

结语

目前的 OpenClaw iOS 客户端虽然已经可用,但在 Node 能力的交互上还有明显的逻辑硬伤。对于想尝鲜的朋友,建议先体验基础对话功能,相机和剪贴板等硬件调用功能,目前的版本可能还需要等待补丁才能完美发挥。 大家有踩到类似的坑吗?或者有别的解决思路?欢迎交流。

标签: none

评论已关闭