Ativação por Voz (Palavras de Ativação Globais)¶
O OpenClaw trata as palavras de ativação como uma única lista global pertencente ao Gateway.
- Não existem palavras de ativação personalizadas por nó.
- Qualquer UI de nó/app pode editar a lista; as alterações são persistidas pelo Gateway e transmitidas para todos.
- Cada dispositivo ainda mantém seu próprio alternador Ativação por Voz ativada/desativada (a UX local + permissões diferem).
Armazenamento (host do Gateway)¶
As palavras de ativação são armazenadas na máquina do gateway em:
~/.openclaw/settings/voicewake.json
Formato:
{ "triggers": ["openclaw", "claude", "computer"], "updatedAtMs": 1730000000000 }
Protocolo¶
Métodos¶
voicewake.get→{ triggers: string[] }voicewake.setcom parâmetros{ triggers: string[] }→{ triggers: string[] }
Notas:
- Os gatilhos são normalizados (espaços aparados, vazios descartados). Listas vazias retornam aos padrões.
- Limites são aplicados por segurança (limites de quantidade/comprimento).
Eventos¶
voicewake.changedpayload{ triggers: string[] }
Quem recebe:
- Todos os clientes WebSocket (app macOS, WebChat, etc.)
- Todos os nós conectados (iOS/Android), e também no momento da conexão do nó como um envio inicial do “estado atual”.
Comportamento do cliente¶
app macOS¶
- Usa a lista global para controlar gatilhos
VoiceWakeRuntime. - Editar “Palavras de gatilho” nas configurações de Ativação por Voz chama
voicewake.sete então depende da transmissão para manter outros clientes em sincronia.
nó iOS¶
- Usa a lista global para detecção de gatilhos
VoiceWakeManager. - Editar Palavras de Ativação em Configurações chama
voicewake.set(via WS do Gateway) e também mantém a detecção local de palavras de ativação responsiva.
nó Android¶
- Expõe um editor de Palavras de Ativação em Configurações.
- Chama
voicewake.setvia WS do Gateway para que as edições sejam sincronizadas em todos os lugares.