ppy-web/dsh-plugin-xiaomi-mimo-tts
ppy-web/dsh-plugin-xiaomi-mimo-tts为 DSH 提供小米 MiMo、豆包、浏览器本地 TTS 语音朗读;自动播报、自定义音色、UI 音效、桌宠联动、QQBot 联动。
Web UI 免费语音闭环:浏览器语音识别输入(实时中间结果上屏)+ 助手回复朗读与自动朗读,零配置、免 API key。
English | 中文
Free, zero-config, no-API-key voice for DeepSeek Harness (dsh): speak your prompts and have AI replies read aloud. Everything runs on the browser's native Web Speech API — no backend, no key, nothing to register.
🎤 Voice input: each confirmed sentence lands in the box in real time
🔊 Read aloud: click the speaker on any reply, stop anytime
✏️ Edit while listening: type fixes or delete while the mic runs — append-only, never rewrites
ChatVoice = Chat + Voice: one plugin for both your mouth and your ears — dictate prompts while your hands stay on the keyboard, and let AI read long replies to you (listening-based learning, accessibility, or just lying back).
| # | Feature | Details |
|---|---|---|
| 1 | 🎤 Voice input | Mic button in the composer toolbar: click once and keep talking — each confirmed sentence lands in the input box in real time (interim results show in the bubble above). Type corrections or delete anything while listening — speech only appends to the end of the box, never rewrites it, and deleted text stays deleted after you stop |
| 2 | 🔊 Read aloud | Speaker button on every assistant reply; click again to stop anytime |
| 3 | 🔁 Auto-read | When enabled, new replies are read aloud automatically (interruptible at any time) |
| 4 | ⚙️ Settings | dsh Settings → ChatVoice: recognition language / auto-read / voice / rate — saved instantly, no restart |
| 5 | 🛡 Friendly errors | Mic permission denied / browser unsupported / insecure context / network failure — every case shows a readable toast, never a silent failure |
| 6 | 🇨🇳 Chinese-first | zh-CN recognition + auto-picks Edge's free natural Chinese voice Xiaoxiao Online (Natural) |
| Capability | Chrome | Edge | Notes |
|---|---|---|---|
| Speech recognition | ✅ (via Google servers) | ✅ (via Azure — more reliable in China) | Chrome may fail with a network error on some networks |
| Speech voices | Some online voices | ✅ Xiaoxiao Online (Natural) — the most natural free Chinese voice | Online voices need network access |
| Microphone (secure context) | localhost/HTTPS only | Same | dsh web defaults to http://127.0.0.1:3080 ✅; mic is unavailable over LAN IP (read-aloud still works) |
dsh plugin --profile web add dsh-chatvoice
# or manually: pnpm add dsh-chatvoice (dsh.profile.bundles reconciles automatically)
Restart dsh web (dsh web) and open http://127.0.0.1:3080.
⚠️ You must access dsh web via
127.0.0.1: speech recognition requires a secure context (HTTPS or localhost). Over a LAN IP the browser blocks the microphone — input is disabled with a hint, read-aloud still works.
| Setting | Default | Description |
|---|---|---|
| Recognition language | zh-CN | zh-CN / en-US |
| Auto-read | off | Read new replies automatically when they complete (kept off by default — don't be too noisy) |
| Voice | empty = auto | Auto-picks the best Chinese voice (Xiaoxiao Online (Natural)); or enter any voice name your browser provides |
| Rate | 1.0 | 0.5 (slow) ~ 2 (fast) |
dsh/index.js): Config schema + GET/POST /dsh-chatvoice/config route; settings persist to ~/.dsh/chatvoice.jsonclient/client.js): MutationObserver injects the mic button (composer toolbar) and speaker buttons (assistant reply rows); SpeechRecognition for input; speechSynthesis for read-aloudnetwork error → switch to Edge (Azure)read_aloud, so the model can speak during replies)MIT © FuzzySoul