OpenClaw 将唤醒词视为 Gateway 拥有的单一全局列表。

  • 无每节点自定义唤醒词
  • 任何节点/应用 UI 均可编辑列表,变更由 Gateway 持久化并广播给所有客户端
  • macOS 和 iOS 保留本地的 Voice Wake 开/关切换
  • Android 当前关闭 Voice Wake,使用 Voice 标签页的手动麦克风流程

存储位置

~/.openclaw/settings/voicewake.json
{ "triggers": ["openclaw", "claude", "computer"], "updatedAtMs": 1730000000000 }

协议方法

方法说明
voicewake.get获取当前触发词列表
voicewake.set设置触发词列表(空列表回退到默认值)
voicewake.routing.get获取路由配置
voicewake.routing.set设置路由配置

路由配置示例:

{
  "version": 1,
  "defaultTarget": { "mode": "current" },
  "routes": [{ "trigger": "robot wake", "target": { "sessionKey": "agent:main:main" } }]
}

路由目标支持:{ "mode": "current" }、{ "agentId": "main" }、{ "sessionKey": "..." }

事件广播

  • voicewake.changed — 触发词变更
  • voicewake.routing.changed — 路由配置变更

接收方:所有 WebSocket 客户端(macOS 应用、WebChat 等)+ 所有已连接节点(iOS/Android),节点连接时也会收到当前状态推送。

平台行为

平台行为
macOS使用全局列表门控 VoiceWakeRuntime 触发;编辑触发词调用 voicewake.set
iOS 节点使用全局列表进行 VoiceWakeManager 触发检测
Android 节点Voice Wake 当前禁用,使用手动麦克风捕获

相关页面