Modo Talk
O modo Talk é um loop contínuo de conversa por voz:- Escutar a fala
- Enviar a transcrição ao modelo (sessão principal,
chat.send) - Aguardar a resposta
- Falar a resposta por meio do provedor Talk configurado (
talk.speak)
Comportamento (macOS)
- Overlay sempre ativo enquanto o modo Talk estiver habilitado.
- Transições de fase Escutando → Pensando → Falando.
- Em uma pausa curta (janela de silêncio), a transcrição atual é enviada.
- As respostas são gravadas no WebChat (igual a digitar).
- Interromper ao falar (padrão ativado): se o usuário começar a falar enquanto o assistente estiver falando, interrompemos a reprodução e registramos o timestamp da interrupção para o próximo prompt.
Diretivas de voz nas respostas
O assistente pode prefixar sua resposta com uma única linha JSON para controlar a voz:- Apenas a primeira linha não vazia.
- Chaves desconhecidas são ignoradas.
once: trueaplica-se apenas à resposta atual.- Sem
once, a voz se torna o novo padrão do modo Talk. - A linha JSON é removida antes da reprodução TTS.
voice/voice_id/voiceIdmodel/model_id/modelIdspeed,rate(WPM),stability,similarity,style,speakerBoostseed,normalize,lang,output_format,latency_tieronce
Configuração (~/.openclaw/openclaw.json)
interruptOnSpeech: truesilenceTimeoutMs: quando não definido, o Talk mantém a janela padrão de pausa da plataforma antes de enviar a transcrição (700 ms no macOS e Android, 900 ms no iOS)voiceId: usa como fallbackELEVENLABS_VOICE_ID/SAG_VOICE_ID(ou a primeira voz da ElevenLabs quando a chave de API está disponível)modelId: usaeleven_v3como padrão quando não definidoapiKey: usaELEVENLABS_API_KEYcomo fallback (ou o profile do shell do gateway, se disponível)outputFormat: usapcm_44100como padrão no macOS/iOS epcm_24000no Android (definamp3_*para forçar streaming MP3)
UI do macOS
- Toggle na barra de menus: Talk
- Aba de configuração: grupo Talk Mode (voice id + toggle de interrupção)
- Overlay:
- Escutando: nuvem pulsa com o nível do microfone
- Pensando: animação de afundamento
- Falando: anéis radiantes
- Clique na nuvem: parar de falar
- Clique no X: sair do modo Talk
Observações
- Requer permissões de Fala + Microfone.
- Usa
chat.sendcom a chave de sessãomain. - O gateway resolve a reprodução do Talk por meio de
talk.speakusando o provedor Talk ativo. O Android usa TTS local do sistema como fallback apenas quando esse RPC não está disponível. stabilityparaeleven_v3é validado como0.0,0.5ou1.0; outros modelos aceitam0..1.latency_tieré validado como0..4quando definido.- O Android oferece suporte aos formatos de saída
pcm_16000,pcm_22050,pcm_24000epcm_44100para streaming AudioTrack de baixa latência.