Voice Wake Say
Speak responses aloud on macOS using the built-in `say` command when user input indicates Voice Wake/voice recognition (for example, messages starting with "User talked via voice r…
xadenryan
@xadenryan
What This Skill Does
Speaks the assistant's response aloud on macOS using the built-in `say` command when the user message starts with 'User talked via voice recognition'. It strips markdown and code blocks for spoken output, and can optionally use a custom voice or speech rate.
Replaces cloud-based text-to-speech services by using the local macOS `say` command for voice responses triggered by Voice Wake input.
When to Use It
- Acknowledge a voice command from a user on macOS by speaking a confirmation aloud
- Read a short summary of a response out loud after processing a voice request
- Provide spoken feedback during a multi-step task initiated by voice recognition
- Speak a completion message after executing a voice-triggered action
- Handle voice input from a device like an iPhone or Mac where the message starts with the Voice Wake prefix
Install
$ openclaw skills install @xadenryan/voice-wake-sayVoice Wake Say
Overview
Use macOS say to read the assistant's response out loud whenever the conversation came from Voice Wake/voice recognition. Do not use the tts tool (it calls cloud providers).
When to Use say (CHECK EVERY MESSAGE INDIVIDUALLY)
IF the user message STARTS WITH: User talked via voice recognition
- Step 1: Acknowledge with
sayfirst (so the user knows you heard them) - Step 2: Then perform the task
- Step 3: Optionally speak again when done if it makes sense
IF the user message does NOT start with that exact phrase
- THEN: Do NOT use
say. Text-only response only.
Critical:
- Check EACH message individually — context does NOT carry over
- The trigger phrase must be at the VERY START of the message
- For tasks that take time, acknowledge FIRST so the user knows you're working
Workflow
- Detect Voice Wake context
- Trigger ONLY when the latest user/system message STARTS WITH
User talked via voice recognition - If the message instructs "repeat prompt first", keep that behavior in the response.
- Prepare spoken text
- Use the final response text as the basis.
- Strip markdown/code blocks; if the response is long or code-heavy, speak a short summary and mention that details are on screen.
- Speak with
say(local macOS TTS)
printf '%s' "$SPOKEN_TEXT" | say
Optional controls (use only if set):
printf '%s' "$SPOKEN_TEXT" | say -v "$SAY_VOICE"
printf '%s' "$SPOKEN_TEXT" | say -r "$SAY_RATE"
Failure handling
- If
sayis unavailable or errors, still send the text response and note that TTS failed.
Top skills in this category
ATXP
@emilioaccAccess ATXP paid API tools for web search, AI image generation, music creation, video generation, X/Twitter search, email, and agent account management. Use...
Openai Whisper Api
@steipeteTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
Wechat Article Search
@wuchubuzai2018搜索微信公众号文章技能。通过微信搜索获取文章列表,覆盖科技/AI、社会热点、财经、教育、职场等各类中文资讯;可按关键词检索并返回标题、概要、发布时间、来源公众号与链接。当用户需要查找微信公众号文章、整理参考资料或快速获取文章信息时使用此技能。
Manage Facebook Pages, posts, comments, messages, and insights via the Facebook Graph API. Use this skill when users want to post content, read engagement me...
xAI / Grok
@blueberrywoodsymChat with Grok models via xAI API. Supports Grok-3, Grok-3-mini, vision, and more.