dsh-tts-voice 🔈

August 14, 2026 · View on GitHub

让 AI 开口说话:一个用 Moss TTS 合成语音的 skill,附带 Markdown 清洗与 DeepSeek Harness 的对话内语音朗读集成。

它解决什么

AI 生成的回复往往带 Markdown 标记(**加粗**、列表、链接、emoji)。直接丢给 TTS,会念出一堆怪停顿和乱码。这个 skill:

  1. 先把文本洗成纯语音文本(去格式、去符号);
  2. 再调 Moss TTS 合成语音;
  3. 可选地,把"对话内自动朗读"装进 DeepSeek Harness(语音开关 + 逐条朗读按钮)。

目录结构

dsh-tts-voice/
├── SKILL.md                 # skill 主文件
├── README.md
├── scripts/
│   └── speak.py             # 命令行朗读脚本(含 Markdown 清洗)
├── harness/
│   ├── INSTALL.md           # harness 集成安装说明
│   └── tts-voice/           # DSH 双面插件(后端 /api/tts + 前端开关)
└── LICENSE

快速开始

# 1. 配置密钥(环境变量,绝不硬编码)
export MOSS_TTS_API_KEY="你的-key"
export MOSS_TTS_VOICE_ID="你的-voice-id"   # 可选

# 2. 朗读一句话
python scripts/speak.py "你好,我是你的 AI 助手。"
# 输出 speech.mp3

配置

环境变量必填说明
MOSS_TTS_API_KEYMoss API 密钥
MOSS_TTS_VOICE_ID音色 id,缺省用平台默认
MOSS_TTS_BASE_URL默认 https://api.mosi.cn

Markdown 清洗规则

朗读前自动去掉:代码围栏/反引号、**加粗**/*斜体*[文字](url) 的 URL、![图片]# 标题、> 引用、-/1. 列表、--- 分隔线、 箭头(换成停顿)、emoji(丢弃),并归一换行与标点。

装进 DeepSeek Harness

harness/INSTALL.md

安全

  • 密钥只通过环境变量注入,仓库中只有占位符;
  • harness 后端代理模式下,key 只存在于服务端进程,不进浏览器。

许可

MIT