Talk Mode
Talk 模式是一个连续语音对话循环:- 听取语音
- 将转写发送给模型(主会话,chat.send)
- 等待回复
- 通过 ElevenLabs 朗读(流式播放)
行为(macOS)
- Talk 模式启用时显示常驻 overlay。
- Listening → Thinking → Speaking 三阶段切换。
- 在短暂停顿(静音窗口)时发送当前转写。
- 回复会写入 WebChat(等同于打字)。
- 说话打断(默认开启):用户在助手说话时开口,会停止播放,并记录打断时间戳用于下一次 prompt。
回复中的语音指令
助手可在回复顶部插入单行 JSON 来控制语音:- 只读取第一条非空行。
- 未知键会被忽略。
once: true仅对当前回复生效。- 不带
once时,该语音会成为 Talk 模式的新默认。 - JSON 行在 TTS 播放前会被剥离。
voice/voice_id/voiceIdmodel/model_id/modelIdspeed,rate(WPM),stability,similarity,style,speakerBoostseed,normalize,lang,output_format,latency_tieronce
配置(~/.openclaw/openclaw.json)
interruptOnSpeech: truevoiceId: 若未设置则回退到ELEVENLABS_VOICE_ID/SAG_VOICE_ID(或在 API key 可用时使用第一个 ElevenLabs voice)modelId: 未设置时默认eleven_v3apiKey: 回退到ELEVENLABS_API_KEY(或 gateway 的 shell profile 若可用)outputFormat: macOS/iOS 默认pcm_44100,Android 默认pcm_24000(设置mp3_*可强制 MP3 流式)
macOS UI
- 菜单栏开关:Talk
- 配置页:Talk Mode 组(voice id + interrupt 开关)
- Overlay:
- Listening:云朵随麦克风电平脉动
- Thinking:下沉动画
- Speaking:放射环
- 点击云朵:停止朗读
- 点击 X:退出 Talk 模式
备注
- 需要 Speech + Microphone 权限。
- 使用
chat.send(会话 keymain)。 - TTS 使用 ElevenLabs 流式 API,macOS/iOS/Android 采用增量播放以降低延迟。
eleven_v3的stability只能是0.0、0.5或1.0;其他模型接受0..1。- 设置
latency_tier时必须为0..4。 - Android 支持
pcm_16000、pcm_22050、pcm_24000、pcm_44100以便低延迟 AudioTrack 流式。