Talk Mode
Talk modeは連続音声会話ループです。- 音声を聞き取る
- transcriptをmodelへ送る(main session、chat.send)
- 応答を待つ
- 設定されたTalk provider(
talk.speak)で読み上げる
動作(macOS)
- Talk modeが有効な間は常時表示オーバーレイ。
- Listening → Thinking → Speaking のフェーズ遷移。
- 短い一時停止(無音ウィンドウ)で、現在のtranscriptが送信されます。
- 返信はWebChatに書き込まれます(入力して送る場合と同じ)。
- 音声による割り込み(デフォルトでオン): assistantが話している間にユーザーが話し始めると、再生を停止し、次のプロンプトのために割り込みタイムスタンプを記録します。
返信内のvoice directive
assistantは、voiceを制御するために返信の先頭へ1行のJSONを付けることがあります。- 最初の非空行のみ。
- 不明なキーは無視されます。
once: trueは現在の返信にのみ適用されます。onceがない場合、そのvoiceはTalk modeの新しいデフォルトになります。- JSON行はTTS再生前に取り除かれます。
voice/voice_id/voiceIdmodel/model_id/modelIdspeed,rate(WPM),stability,similarity,style,speakerBoostseed,normalize,lang,output_format,latency_tieronce
Config (~/.openclaw/openclaw.json)
interruptOnSpeech: truesilenceTimeoutMs: 未設定時、Talkはtranscript送信前のプラットフォームごとのデフォルト一時停止ウィンドウを維持します(macOSとAndroidでは700 ms、iOSでは900 ms)voiceId: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 streamingを強制するにはmp3_*を設定してください)
macOS UI
- メニューバートグル: Talk
- Configタブ: Talk Mode グループ(voice id + interruptトグル)
- オーバーレイ:
- Listening: mic levelに応じてcloudが脈動
- Thinking: 沈み込むアニメーション
- Speaking: 放射状のリング
- cloudをクリック: 読み上げ停止
- Xをクリック: Talk modeを終了
注意
- Speech + Microphone権限が必要です。
- session key
mainに対してchat.sendを使います。 - Gatewayは、アクティブなTalk providerを使って
talk.speak経由でTalk再生を解決します。Androidでは、そのRPCが利用できない場合のみローカルsystem TTSへフォールバックします。 eleven_v3のstabilityは0.0、0.5、1.0に検証されます。他のmodelでは0..1を受け入れます。latency_tierは設定時に0..4として検証されます。- Androidは、低遅延のAudioTrack streaming向けに
pcm_16000、pcm_22050、pcm_24000、pcm_44100のoutput formatをサポートします。