voice-wake-say

🔊 macOS 本地语音播报助手

🥥9总安装量 3评分人数 2
100% 的用户推荐

基于 macOS 原生 say 命令,在 Voice Wake 场景下自动语音播报回复,纯本地执行保障隐私安全。

A

基本安全,请在特定环境下使用

  • 来自社区或个人来源,建议先隔离验证
  • ✅ 纯文档型资产,无动态代码执行风险,仅使用 macOS 内置 `say` 命令
  • ✅ 无网络通信、无外部数据上传,完全本地执行保障隐私安全
  • ✅ 无危险函数(eval/exec/system),使用 `printf '%s'` 防止命令注入
  • ⚠️ 依赖环境变量($SPOKEN_TEXT 等)作为输入,需确保内容可信避免特殊字符注入
  • ⚠️ T3 来源(社区/个人账号),建议关注维护更新及许可证声明

使用说明

核心用法

Voice Wake Say 是一个专为 macOS 设计的语音交互增强技能。当检测到用户通过 Voice Wake(语音唤醒)功能发起对话时(即消息以 "User talked via voice recognition on m3" 开头),该技能会自动调用 macOS 内置的 say 命令,将助手的文本回复转换为语音朗读。

工作流程分为三个步骤:首先,检测到语音唤醒上下文后立即使用 say 进行语音确认,让用户知道系统已接收指令;其次,执行用户请求的实际任务;最后,在任务完成时再次语音播报结果(如适用)。技能严格区分交互模式,仅在检测到特定前缀时启用语音播报,普通文本对话则保持静默。

技术实现上,技能使用 printf '%s' "$SPOKEN_TEXT" | say 命令组合,支持通过环境变量 $SAY_VOICE$SAY_RATE 自定义语音和语速。所有处理均在本地完成,不涉及云端 TTS 服务。

显著优点

隐私安全性极高:作为纯本地解决方案,Voice Wake Say 完全依赖 macOS 系统内置的语音合成引擎,无需连接互联网或上传数据到第三方云服务,从根本上杜绝了语音数据泄露风险。

响应速度快:本地 say 命令执行几乎无网络延迟,相比云端 TTS 服务能提供即时语音反馈,特别适合需要快速确认的场景。

系统集成度高:利用 macOS 原生工具,无需安装额外软件或依赖库,兼容性好且系统资源占用极低。

使用条件明确:技能有严格的触发机制,仅在明确的 Voice Wake 场景下激活,避免了不必要的语音干扰。

潜在缺点与局限性

平台限制严格say 命令为 macOS 特有功能,该技能完全不支持 Linux、Windows 或其他操作系统,跨平台适用性为零。

语音质量有限:相比云端 TTS 服务(如 Azure、AWS Polly),本地 say 命令的语音合成质量较为基础,缺乏高级情感表达和多种高品质人声选择。

功能相对简单:不支持复杂的 SSML(语音合成标记语言)控制,无法实现语调、停顿的精细调整,仅适合简单的信息播报。

环境变量依赖:技能依赖 $SPOKEN_TEXT 等环境变量传递内容,如果环境变量设置不当或包含特殊字符,可能影响播报效果。

适合的目标群体

该技能特别适合以下用户群体:

  • macOS 重度用户:日常工作流完全基于 macOS 生态系统的开发者、设计师或知识工作者。
  • 无障碍需求用户:视力障碍或阅读困难用户,需要通过听觉方式获取系统反馈。
  • 多任务处理场景:需要在专注工作(如编程、设计)时通过语音获取信息,避免频繁切换视觉焦点的用户。
  • 隐私敏感用户:对数据隐私要求极高,拒绝使用任何云端语音服务的个人或企业用户。

使用风险与注意事项

尽管安全评级为 A 级,使用时仍需注意以下风险:

环境变量注入风险:虽然使用 printf '%s' 格式可在一定程度上防止注入,但仍需确保 $SPOKEN_TEXT$SAY_VOICE$SAY_RATE 等环境变量的内容来源可信,避免包含恶意构造的 Shell 特殊字符。

系统兼容性风险:在非 macOS 系统上尝试使用该技能会导致命令执行失败,尽管技能说明中有错误处理逻辑(say 不可用时返回文本),但仍需确保运行环境符合要求。

用户体验一致性:由于严格依赖特定消息前缀触发,如果 Voice Wake 检测机制不稳定或前缀格式变化,可能导致语音播报功能时有时无,影响用户体验。

来源可信度:该技能来源于 GitHub 个人账号(T3 级别),建议企业用户在正式环境部署前进行额外的代码审计,并关注后续更新维护情况。

voice-wake-say 内容

手动下载zip · 1.4 kB
SKILL.mdtext/markdown
请选择文件