证据快照复核于 2026-09-10GitHub 数据核对日期: 2026-08-21
证据已验证Plugin Bundle界面与体验Web Profile

dsh-tts

通过本地或云端文本转语音服务朗读 DeepSeek Harness Web UI 中的助手回复。

快速了解

它能做什么

通过本地或云端文本转语音服务朗读 DeepSeek Harness Web UI 中的助手回复。

本站提供的是中文说明,不代表该项目或 Plugin 自身提供中文界面;语言支持请以上游文档为准。

使用场景
界面与体验UI集成
适配技术
deepseek-harnessWeb
兼容性

Web Profile
Not declared in supplied evidence

可信度与状态

证据已验证
核对日期 2026/9/6 UTC 13:52

有代码证据的贡献

它为 DSH 增加什么

DeepSeek Harness 文本转语音

为 DeepSeek Harness Web UI 中的助手回复添加语音播放,并可配置服务提供商回退链。

机制证据

选择前先看

dsh-tts 是一个 DeepSeek Harness Web 套件:它在主机端合成已完成的回复或流式回复片段,并将音频发送到浏览器。它提供服务商回退链、本地引擎、语音设置、文本清理和按智能体角色覆盖语音等功能。

适合谁

希望在 DeepSeek Harness Web UI 中听取助手回复,并能够配置 TTS 服务商或本地引擎的用户。

常见任务

  • 在 Web UI 中朗读助手回复。
  • 使用本地 Kokoro、Edge、OpenAI TTS 等组成回退链。
  • 为 coder 或 reviewer 等智能体角色分配不同声音。
  • 在设置中试听声音并管理支持的本地语音模型安装。

权限与数据

插件会在主机端处理助手回复文本以合成语音;所选云端服务商可能接收这些文本。

权限
  • 添加 Web UI 客户端集成和主机端 TTS 路由。
  • 可通过文档所述的安装和删除端点管理本地 Kokoro 与 F5-TTS 模型文件。
数据处理
  • 回复文本会在合成前经过清理。
  • README 声称 API 密钥不会进入客户端浏览器,合成在主机后端执行。
外部服务
  • 可选服务商包括 OpenAI、ElevenLabs、Google、Azure、Deepgram、Groq、OpenRouter 等。
  • 文档还列出本地 Kokoro、F5-TTS、Piper 和 eSpeak 选项。
凭据
  • 选择云端服务商可能需要相应 API 密钥,例如 OPENAI_API_KEY 或 ELEVENLABS_API_KEY。
  • 文档称若干本地选项无需凭据。

局限

  • 提供的证据未声明 Harness 版本兼容范围。
  • 未实际测试服务商可用性、延迟、音质或回退行为。
  • 本地模型下载可能较大;README 表示下载需手动发起,不会自动进行。
  • 语音双工需要另行安装 @goodandready/dsh-voice;消息平台语音消息需要 @goodandready/dsh-messenger-gateway。

DSHub 已核对

  • 已固定不可变 Git 源提交。
  • 包清单和 Cordis 套件补丁通过了记录中的结构检查。
  • 已声明版本为 0.3.22,许可证为 MIT。

DSHub 未核对

  • 未执行安装和运行时验证。
  • 未审计已发布 npm 包的内容。
  • 流式延迟、服务商行为和本地模型校验等声明未经独立验证。

固定版本安装

安装 dsh-tts

这个Plugin Bundle没有 DSH Plugin 安装操作,请根据源码文档使用真实交付方式。

访问源码项目

维护者原文

项目 README

查看 commit 6b9ca9f 对应的 README
维护者编写的上游内容原文于 2026/9/6README.md 获取,正文和仓库相对媒体固定到 commit 6b9ca9f927b4,内容哈希为 0413cae86553。以下是未经 DSHub 翻译的上游原文,语言可能与当前页面不同;第三方托管的 badge 可能独立更新。

📦 @goodandready/dsh-tts

<div align="center"><h3>Multi-Provider Text-to-Speech Voice Synthesis with Local Neural Engines, Sub-300ms Streaming, IT Dictionary & Messenger Integration for DeepSeek Harness</h3><p align="center"> <a href="https://www.npmjs.com/package/@goodandready/dsh-tts"><img src="https://img.shields.io/npm/v/@goodandready/dsh-tts.svg?style=for-the-badge&color=6366f1&labelColor=1e1b4b" alt="npm version"></a> <a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-10b981.svg?style=for-the-badge&color=10b981&labelColor=064e3b" alt="license"></a> <a href="https://github.com/topics/dsh-plugin"><img src="https://img.shields.io/badge/DSH-Plugin-8b5cf6.svg?style=for-the-badge&labelColor=2e1065" alt="DSH Plugin"></a> <a href="https://nodejs.org"><img src="https://img.shields.io/badge/Node-20%2B-f59e0b.svg?style=for-the-badge&labelColor=451a03" alt="Node version"></a> </p><p align="center"> <a href="https://goodandready.app/"><img src="https://img.shields.io/badge/All_Author_Projects-goodandready.app-ff4500.svg?style=for-the-badge&logo=rocket&logoColor=white&labelColor=1a1a2e" alt="All Author Projects"></a> </p><p align="center"> <a href="README.md"><b>🇬🇧 English</b></a> • <a href="README.ru.md"><b>🇷🇺 Русский</b></a> • <a href="README.zh.md"><b>🇨🇳 中文说明</b></a> </p></div>

⚡ Overview

dsh-tts provides robust, lifelike spoken voice synthesis for assistant replies in the DeepSeek Harness Web UI. When Speak agent replies is enabled, each finished assistant turn or real-time streaming chunk is synthesized on the host and streamed directly to the browser.

API keys never reach client browsers: synthesis is executed entirely on the host backend across independent multi-provider fallback chains, including completely offline neural models (Kokoro-82M and F5-TTS).

graph LR
    subgraph Input [Assistant Message]
        Reply[💬 Agent Reply Text] --> Scrub[Smart Text Scrubbing & IT Dictionary]
    end

    subgraph Stream [Low-Latency Streaming]
        Scrub --> SSE[SSE /dsh-tts/stream]
        SSE --> Worklet[AudioWorklet PCM Processor]
    end

    subgraph Cache [Performance Layer]
        Scrub --> LRU{Disk LRU Cache}
        LRU -->|Cache Hit| Play[Immediate Audio Playback]
    end

    subgraph Fallback [TTS Provider Fallback Chain]
        LRU -->|Cache Miss| Chain{Active Chain}
        Chain -->|Priority 1| P1[Kokoro / F5-TTS Local Offline]
        Chain -.->|Cloud Neural| P2[ElevenLabs / OpenAI / CosyVoice]
        Chain -.->|Free Cloud / Edge| P3[EdgeTTS / SiliconFlow]
        Chain -.->|System Fallback| P4[Local Piper / eSpeak NG]
    end

    subgraph Output [Delivery & Integrations]
        P1 --> Store[Save to Cache]
        P2 --> Store
        P3 --> Store
        P4 --> Store
        Store --> Play
        Store --> Msg[Telegram / Discord via dsh-messenger-gateway]
    end

    style Input fill:#1e1e2e,stroke:#89b4fa,stroke-width:2px,color:#cdd6f4
    style Stream fill:#181825,stroke:#89dceb,stroke-width:2px,color:#cdd6f4
    style Cache fill:#181825,stroke:#cba6f7,stroke-width:2px,color:#cdd6f4
    style Fallback fill:#11111b,stroke:#a6e3a1,stroke-width:2px,color:#cdd6f4
    style Output fill:#181825,stroke:#f38ba8,stroke-width:2px,color:#cdd6f4

🚀 Key Features

1. 📴 Offline Local Neural Engines (Kokoro CPU & F5-TTS GPU)

  • Kokoro-82M (CPU): 82M-parameter lightweight neural model running locally on CPU via ONNX Runtime. High-speed synthesis with zero cloud dependencies.
  • F5-TTS (GPU): Zero-shot diffusion transformer voice synthesis running on NVIDIA GPUs via a local inference daemon.
  • ModelManager UI: Direct manual installation in settings with real-time download progress bar, SHA-256 validation, and deletion. No silent or automatic multi-gigabyte downloads.

2. ⚡ Real-Time Streaming Audio (< 300 ms Latency)

  • AudioWorklet (TTSWorklet): High-performance Web Audio Worklet processor playing seamless Float32Array PCM chunks at 24 kHz without audible clicks or buffer underruns.
  • Server-Sent Events (SSE): Dedicated /dsh-tts/stream route delivering synthesized chunks to connected browsers instantly.

3. 🎙️ Voice Duplex & VAD Barge-In (with @goodandready/dsh-voice)

  • Full-Duplex Conversation: Automatic voice reply synthesis upon completion of speech dictation.
  • VAD Barge-In: Immediately mutes assistant speech playback when user voice activity is detected.
  • Installation Guard: If @goodandready/dsh-voice is not present, settings controls are disabled with an explicit instruction banner (dsh plugin --profile web add @goodandready/dsh-voice).

4. 📚 Built-in IT Terminology Pronunciation Dictionary

  • Pre-configured Lexicon: Correct phonetic pronunciation for common technical abbreviations and developer terms:
    • SQL $\rightarrow$ "сиквел"
    • Nginx $\rightarrow$ "энджинкс"
    • Kubernetes / K8s $\rightarrow$ "кубернетис"
    • Docker $\rightarrow$ "докер", API $\rightarrow$ "апи", JSON $\rightarrow$ "джейсон", YAML $\rightarrow$ "ямл"
    • GUI, CLI, CI/CD, PR, Regex, OAuth, HTTP, HTTPS, CPU, GPU, RAM
  • Interactive UI Editor: Edit rules, preview phonetic substitutions with the ▶ Listen button, and populate standard IT terms with one click.

5. 👥 Multi-Agent Personas & Subagent Voice Overrides

  • Assign distinct voices, providers, models, and audio chimes to individual subagents (e.g. coder, reviewer, planner, tester).
  • Automatically matches incoming assistant turn events (session.agent or message.agent).

6. 💬 Messenger Voice Notes Integration (with @goodandready/dsh-messenger-gateway)

  • Generates voice audio for Telegram and Discord bot replies via POST /dsh-tts/speak.
  • Protective dependency check with installation hint when gateway plugin is missing.

🛠️ Complete Supported Providers Matrix (18 Backends)

Provider Key Service Backend Default Model Default Voice Credential Ref Features & Notes
kokoro Local Kokoro-82M ONNX hexgrad/Kokoro-82M af_bella None 100% offline CPU neural synthesis
f5 Local F5-TTS GPU Daemon F5-TTS Default None High-fidelity GPU zero-shot voice synthesis
elevenlabs ElevenLabs API eleven_multilingual_v2 Rachel ELEVENLABS_API_KEY Ultra-realistic, emotional nuance
openai OpenAI Audio gpt-4o-mini-tts / tts-1 alloy OPENAI_API_KEY High-quality industry standard
edge Microsoft Edge Online ru-RU-SvetlanaNeural ru-RU-SvetlanaNeural None Free, high-fidelity neural TTS without API keys
siliconflow SiliconFlow CosyVoice FunAudioLLM/CosyVoice2-0.5B Default SILICONFLOW_API_KEY State-of-the-art CosyVoice2 neural engine
deepinfra DeepInfra Kokoro hexgrad/Kokoro-82M Default DEEPINFRA_API_KEY Fast open-weights Kokoro synthesis
fireworks Fireworks AI kokoro Default FIREWORKS_API_KEY Ultra-low latency Kokoro inference
minimax MiniMax Speech speech-01-turbo Default MINIMAX_API_KEY High-expressiveness neural voice
mimo Xiaomi MiMo Audio mimo-v2.5-tts Default MIMO_API_KEY Low-latency streaming TTS
google Google Cloud TTS gemini-2.5-flash-preview-tts Language default GEMINI_API_KEY Multilingual Google Gemini voice synthesis
azure Azure Cognitive Speech en-US-JennyNeural Region default AZURE_SPEECH_KEY Enterprise neural synthesis
deepgram Deepgram Aura aura-asteria-en asteria DEEPGRAM_API_KEY Ultra-low latency voice output
groq Groq TTS playai-tts default GROQ_API_KEY Near-instant inference speed
openrouter OpenRouter Audio openai/gpt-4o-mini-tts alloy OPENROUTER_API_KEY Unified router access
custom Custom OpenAI-compatible Configurable Configurable CUSTOM_TTS_API_KEY Any /v1/audio/speech endpoint
piper Local Piper ONNX Local ONNX weights Model default None 100% offline neural engine
espeak Local eSpeak NG System synth ru / en None 100% offline lightweight fallback

🧹 Smart Text Scrubbing & Formatting Engine

Before text reaches speech synthesizers, dsh-tts intelligently sanitizes and filters the message so the assistant doesn't read out syntax noise:

  • Fenced Code Blocks: Spoken as "code block, N lines" / "блок кода, N строк".
  • Markdown Tables: Spoken as "table, N rows" / "таблица, N строк".
  • Summary Intros: Spoken as "Summary of the reply" / "Пересказ ответа".
  • Narration Filters: Skip asterisk actions (*smiles*), narrate quotes only, and apply custom regex removal.

📦 Quick Installation

dsh plugin --profile web add @goodandready/dsh-tts

[!IMPORTANT] Restart DSH Web UI after installation (systemctl --user restart dsh-web) and refresh your browser tab.


⚙️ Configuration Recipes (settings.yaml)

dsh-tts:
  speakReplies: true
  enableLocalEngines: true
  kokoroEnabled: true
  streamingEnabled: true
  enableItDictionary: true
  voiceDuplexEnabled: true
  vadBargeIn: true
  messengerTtsEnabled: true
  cache: true
  cacheMaxMb: 150
  autoDetect: true
  chain:
    - provider: kokoro
    - provider: edge
      voice: ru-RU-SvetlanaNeural
    - provider: openai
      model: tts-1
      voice: alloy
  roles:
    coder:
      provider: openai
      voice: onyx
    reviewer:
      provider: edge
      voice: ru-RU-DmitryNeural

🤖 HTTP Endpoints Reference

  • GET /dsh-tts/stream — Real-time Server-Sent Events (SSE) audio streaming.
  • POST /dsh-tts/speak{ text, voice?, model? } → Returns synthesized audio.
  • POST /dsh-tts/preview{ provider, model, voice, text? } → Test voice playback in UI.
  • GET /dsh-tts/models/status — Reports local Kokoro and F5-TTS model installation states.
  • POST /dsh-tts/models/install{ engine: 'kokoro' | 'f5' } → Starts HuggingFace model download.
  • DELETE /dsh-tts/models/delete{ engine: 'kokoro' | 'f5' } → Removes local model files.
  • GET /dsh-tts/integrations — Status of sibling plugins (dsh-voice, dsh-messenger-gateway).
  • GET /dsh-tts/status — Returns active chain state, cache statistics, and engine readiness.

📄 License

MIT © GooDAnDReaDY

有意识地管理

安装与管理

前置条件与目标 Profile

目标 Web Profile

交付方式 Git Bundle — GooDAnDReaDY/dsh-tts#6b9ca9f927b4112eb8af311e529ff8f0ae6e96e8

验证、更新与移除

显示生命周期命令
验证
dsh plugin --profile web list

兼容性与访问范围

DeepSeek Harness web bundle; peer dependencies declared Not declared in supplied evidence

检查兼容性证据

风险事实

external-services

Cloud TTS providers may receive reply text

证据
凭据

Several providers require API-key credentials

证据
local-model-management

Settings can download and delete local Kokoro or F5-TTS models

证据
证据与编辑审查Manifest、Bundle patch、分发与新鲜度

不可变证据

审查状态与源码活动

AI 已审查

若回复内容不应离开主机,请选择本地引擎;在敏感对话中启用云端服务前,请审查所选服务商的数据处理做法。

AI 审查于 2026/9/10 UTC 11:36GitHub 事实核对日期: 2026/9/10 UTC 11:36

自当前证据基线以来,没有记录到重要源码变化。

下一步

按 Plugin 安装流程操作

订阅重要变化: dsh-tts