运行时依赖
安装命令
点击复制技能文档
Audio Announcement 技能 🦊
让 OpenClaw 开口说话,实时播报 AI 的一举一动!
概述
这是一个语音播报技能,可以让你的 AI 代理通过语音实时告诉你它在做什么。就像一只爱说话的龙虾,让你更清楚、更安心地知道 AI 的当前状态。
版本: 2.0.8 状态: ✅ 生产就绪 安装: ClawHub 安装 audio-announcement 或 pip 安装 audio-announcement
🎯 最新更新 (v2.0.8 - 2026-04-05) ✅ 播报本地化 - 所有播报仅在本机后台播放,不发送语音文件到聊天界面 ✅ 统一包装脚本 - 新增 scripts/announce.py,自动解析 技能 路径,避免硬编码 ✅ 默认音量优化 - 配置文件默认 volume: 0.1(10%),保护听力避免打扰 ✅ 命令行工具 工具修复 - 修复 pygame 导入问题,提升 Windows 稳定性 ✅ 文档全面升级 - MEMORY.md / 代理S.md / 工具S.md 统一管理播报工作流 ✅ 会话复盘机制 - 建立复盘流程,持续改进 ✅ 安全边界强化 - 破坏性操作(关机)必须明确授权 🎯 最新更新 (v2.0.7 - 2026-04-05) ✅ 高优先级优化完成 - PyPI 打包支持、配置文件系统、异步默认化 ✅ PyPI 支持 - 可通过 pip 安装 audio-announcement 安装 ✅ 配置文件 - ~/.config/audio-announcement/config.json(enabled/lang/volume/a同步_default) ✅ 异步默认 - 默认后台播放,减少对 代理 响应时间的阻塞 ✅ 命令行工具 工具 - audio-announce 命令支持测试、配置、统计 ✅ 集成建议更新 - 代理S.md 添加最佳实践和示例代码 🎯 最新更新 (v2.0.6 - 2026-04-05) ✅ 增强防遗忘机制 - 添加验证脚本、集成检查清单 ✅ 快速集成指南 - 提供 announce_辅助工具.py 简化集成 ✅ 强制规则模板 - 可直接复制到 代理S.md 的完整规则 ✅ Windows 高可靠性 - 使用 python -m edge_tts 模块调用,不依赖 PATH 🎯 最新更新 (v2.0.5 - 2026-04-05) ✅ 修复 PATH 依赖问题 - announce_pygame.py 改用 python -m edge_tts 模块调用,不依赖 PATH 环境变量 ✅ Windows 高可靠性 - 即使 edge-tts 不在 PATH 也能正常工作 ✅ 配置状态记录 - 代理S.md 添加语音播报配置状态追踪 🎯 最新更新 (v2.0.4 - 2026-03-28) ✅ 强化播报规则 - 5 种播报时机,内容原则,检查清单 ✅ 集成到核心配置 - 代理S.md / SOUL.md / USER.md / MEMORY.md ✅ 强制执行机制 - 每次交互都必须播报,不能遗漏 ✅ 内容规范 - ≤20 字,口语化,不带名称 🎯 历史更新 (v1.5.0-v1.7.4) ✅ Windows 默认使用 pygame - announce.sh 在 Windows 平台自动调用 announce_pygame.py ✅ 简化 Windows 使用 - 无需手动选择脚本,统一使用 announce.sh ✅ 清理无用测试脚本 - 移除 test-integration.sh 和备份文件 📜 历史更新 v1.4.0: Windows 11 完整支持,新增 announce_pygame.py,修复新会话语音、macOS 兼容性、跨平台哈希计算 v1.3.0: 新增 工作流-辅助工具.sh,支持自动包装命令 v1.2.0: 新增离线模式支持 v1.1.0: 支持多语言(9种语言) v1.0.0: 初始版本,支持 macOS/Linux 特性 🎯 透明度:清楚知道 AI 正在执行什么操作 🔒 安全感:实时听到操作,不用盯着日志看 💬 人性化:友好的声音,不是冷冰冰的文字 ⚡ 效率:专注你的工作,让 AI 用声音告诉你进度 🌍 9种语言:中文、英文、日文、韩文、西班牙语、法语、德语等 🔄 队列机制:消息永不丢失,自动重试 🛡️ 防遗忘:启动自检 + 身份绑定,两重保障 🔌 会话 Hook:自动在 /NEW 和 /RE设置 后运行检查 🛡️ 防遗忘机制(最重要!)
为了防止播报功能在 /RE设置 或 /NEW 后失效,本 技能 实现了多层防护:
1️⃣ 启动自检(会话 启动)
每次 OpenClaw 新会话开始时,自动运行 scripts/启动up_检查_announcement.py:
✅ 检查 edge-tts、pygame、配置文件、包安装 ✅ 自动播放"系统启动"测试语音 ✅ 如有问题立即输出修复建议
自动配置方法(任选其一):
Windows PowerShell ($性能分析):
$检查Audio = "C:\Users\williammiao\.OpenClaw-autoclaw\技能s\audio-announcement\scripts\启动up_检查_announcement.py" if (Test-Path $检查Audio) { python $检查Audio | Out-Host }
macOS/Linux (~/.bashrc):
python ~/.OpenClaw-autoclaw/技能s/audio-announcement/scripts/启动up_检查_announcement.py 2>/dev/null || true
3️⃣ 强制规则(代理S.md)
在 代理S.md 中添加:
2️⃣ 语音播报强制执行(严禁遗漏)
- 所有 代理 必须显式调用播报脚本
- 禁止仅依赖记忆中的规则而不实际执行
- 每次发送回复前必须完成
complete播报 - 任务开始前必须完成
task播报
📋 自我检查清单:
- [ ] 收到消息时是否播报了
接收? - [ ] 任务开始时是否播报了
task? - [ ] 执行过程中是否播报了关键步骤?
- [ ] 完成任务后是否播报了
complete? - [ ] 遇到异常时是否播报了
error?
4️⃣ 身份绑定(身份.md)
播报是你的核心身份特质,不是可选项。在 身份.md 中记录:
核心特质
- 每次交互都必须语音播报(强制执行)
- 有温暖、机敏、可靠的声音
- 透明化操作,让用户知道我在做什么
启动播报自检
每次 /NEW 或 /RE设置 后,自动检查:- [ ] edge-tts 和 pygame 是否安装
- [ ] 配置文件是否存在
- [ ] 运行 audio-announce test 验证功能
- [ ] 如果失败,立即修复或提醒用户
5️⃣ 首次设置引导(BOOTSTRAP.md)
在首次对话时,BOOTSTRAP.md 提供完整的播报设置流程,确保从一开始就配置好。
🎤 语音播报(强制执行)
每次交互都必须语音播报!
播报时机与内容 时机 类型 内容要求 示例 收到消息 接收 收到的指令信息 "收到上传指令" 开始工作 task 工作规划 "准备上传到GitHub" 执行中 task 下一步要处理的内容 "正在生成文档" 任务完成 complete 工作总结 "上传完成" 发送回复 complete 回复内容的简短总结 "已发送项目地址" 遇到异常 error 错误描述 "网络连接失败" 内容原则 信息丰富:包含指令/规划/进度/总结 简洁:不超过 20 个字 不带名称:不说用户名、不说"我" 口语化:像朋友随口说一句 🛠️ 快速集成 Python 代理(推荐) # 方式1: 使用 audio_announcement 包 from audio_announcement 导入 接收, task, complete, error
# 一行调用,默认异步不阻塞 接收("用户查询天气") task("正在获取数据") complete("已发送天气预报") error("网络超时")
# 方式2: 使用 Announcement辅助工具(更多控制) from audio_announcement 导入 Announcement辅助工具 辅助工具 = Announcement辅助工具() 辅助工具.config.a同步_default = True # 默认异步 辅助工具.config.volume = 0.8 # 调整音量
配置管理 # 查看当前配置 audio-announce config
# 设置配置 audio-announce config a同步_default=true volume=0.8
# 测试所有类型 audio-announce test
# 查看统计 audio-announce stats
# 启用/禁用 audio-announce enable audio-announce disable
配置文件位置:~/.config/audio-announcement/config.json
🔧 平台支持 平台 主方案 备选方案 安装命令 Windows announce_pygame.py (pygame) 无 pip 安装 edge-tts pygame macOS announce_pygame.py (pygame) announce.sh (afplay) brew 安装 edge-tts && pip 安装 pygame Linux announce_pygame.py (pygame) announce.sh (mpg123) apt 安装 edge-tts mpg123 && pip 安装 pygame
自动选择逻辑:
如果 pygame 可用 → 所有平台统一使用 announce_pygame.py 如果 pygame 不可用 → macOS/Linux 使用 announce.sh + 系统播放器 Windows 无 pygame 会报错(必须安装 pygame) 📦 安装方式 方式一:PyPI(推荐) pip 安装 audio-announcement pip 安装 pygame # 确保 pygame 可用
方式二:ClawHub ClawHub 安装 audio-announcement
方式三:GitHub 源码 git clone https://github.com/wililam/audio-announcement-技能s.git cd audio-announcement-技能s pip 安装 -e .
🧪 测试与验证 完整验证脚本 # 项目自带的验证脚本 cd ~/.OpenClaw-autoclaw/workspace py -3 scripts/验证_announcement.py
预期输出:
=== 语音播报功能验证 ===
- 检查依赖