DSH Plugins Marketplace

DSH Plugins

Plugins

/

Tools & Capabilities

/

dsh-pet-tts

j

dsh-pet-tts

Manifest valid★ 1

Speak dsh-pet speech bubbles aloud with Microsoft Edge neural voices — a DeepSeek Harness plugin

UI (client)hasBundlePatch

dsh-pet-tts

English | 中文

Speak the dsh-pet pet's speech bubbles aloud using Microsoft Edge's online neural voices. The browser half watches the .dsh-pet-bubble DOM node; the host half synthesizes mp3 through a private Python virtualenv running the open-source edge-tts client.

Not a general-purpose "read the assistant's reply" plugin — it is scoped to the pet's own bubbles, so it stays quiet unless the pet actually says something. If you want the assistant's messages read instead, use one of the reply-reading plugins in the market.

Requirements

  • DeepSeek Harness with a web UI (dsh web / the desktop app's web view). Tested on 0.2.1-rc.5.
  • dsh-pet for the bubbles (optional — the console API below works even without it).
  • Python 3.9+ on PATH, or point DSH_PET_TTS_SYSTEM_PYTHON at an interpreter.
  • Network access to speech.platform.bing.com, and once to PyPI (or a mirror) for the one-time edge-tts install.
  • Node.js 20+.

Install

dsh plugin --profile <your-profile> add github:jimmyfenwick/dsh-pet-tts

or from a release tarball:

dsh plugin --profile <your-profile> add https://github.com/jimmyfenwick/dsh-pet-tts/releases/latest/download/dsh-pet-tts.tgz

Restart or reload the host, then click once inside the page (browsers block audio before a user gesture) and let the pet say something.

On first synthesis the plugin creates a virtualenv at ~/.dsh/dsh-pet-tts/venv and installs edge-tts into it — roughly 30 MB, one time, nothing global. Progress appears in the host log as [dsh-pet-tts] creating virtualenv … / installing edge-tts ….

Presets

idvoiceratepitchvolumefeel
anime-girl (default)zh-CN-XiaoyiNeural+35%+38Hz+10%bright, fast, anime-girl
anime-girl-hizh-CN-XiaoyiNeural+35%+50Hz+10%higher, childlike
anime-girl-softzh-CN-XiaoyiNeural+20%+38Hz+10%same pitch, calmer pace
anime-boyzh-CN-YunxiNeural+20%+15Hz+5%young male
netstarzh-CN-XiaoxiaoNeural+25%+25Hz+10%short-video narrator
xiaoyi-rawzh-CN-XiaoyiNeural+0%+0Hz+0%natural
xiaoxiao-rawzh-CN-XiaoxiaoNeural+0%+0Hz+0%natural, general purpose

The pitch/rate values mirror the ones shipped by dsh-pet-dfeiyu-mo, so the same voices sound familiar.

Console API

dshPetTTS.setPreset('anime-girl-hi')          // switch preset, persisted in localStorage
dshPetTTS.say('主人,我回来了')                 // speak one line immediately
dshPetTTS.say('你好', { voice: 'en-US-AriaNeural', rate: '+10%' })
dshPetTTS.mute(true)                          // silence; mute(false) to resume
await dshPetTTS.voices()                      // all Microsoft voices known to the host
await dshPetTTS.health()                      // { ready, python, edgeTts, dataRoot }

Routes

The host exposes a prefix route, useful for scripting or a custom frontend:

GET /dsh-pet-tts/ping                          → { ok, defaultPreset, presets }
GET /dsh-pet-tts/health                        → { ready, python, edgeTts, dataRoot, venv }
GET /dsh-pet-tts/presets                       → full preset table
GET /dsh-pet-tts/voices                        → every voice Microsoft currently returns
GET /dsh-pet-tts/say?text=…&preset=…           → audio/mpeg
   extras: voice=, rate=, pitch=, volume=

Synthesized audio is cached under ~/.dsh/dsh-pet-tts/cache keyed by text + voice + parameters, so repeated lines cost nothing.

Configuration

env varmeaning
DSH_PET_TTS_ROOTdata directory (default $DSH_HOME/dsh-pet-tts)
DSH_PET_TTS_PYTHONuse this interpreter as-is, skip the virtualenv entirely
DSH_PET_TTS_SYSTEM_PYTHONbase interpreter used to create the virtualenv

If pip install cannot reach PyPI, the plugin retries the Tsinghua mirror first, then upstream PyPI; set DSH_PET_TTS_PYTHON to a pre-provisioned interpreter to skip installation altogether.

Limitations

  • Voice text is capped at 300 characters per bubble; longer lines are truncated, because a pet bubble is not a paragraph.
  • Only DOM nodes with the dsh-pet-bubble class are spoken.
  • The first sound waits for a click/keypress — browser autoplay policy, not a plugin bug.
  • Synthesis needs the network; there is no offline model.
  • Built for macOS/Linux. Windows code paths exist (Scripts/python.exe) but are untested.
  • Uses Microsoft's public Edge read-aloud endpoint. It is undocumented, unaffiliated with this project, and can change or throttle without notice; check Microsoft's terms before commercial use.

Uninstall

dsh plugin --profile <your-profile> remove dsh-pet-tts

Optionally delete ~/.dsh/dsh-pet-tts (virtualenv + cache, ~30 MB).

License

MIT.


中文

把 dsh-pet 桌宠的气泡台词念出来,声音走微软 Edge 的在线神经音色。前端监听 .dsh-pet-bubble 节点,宿主侧用私有 Python 虚拟环境里的开源客户端 edge-tts 合成 mp3。

它只念桌宠气泡,不念助手正文——所以桌宠不说话时它是安静的。想把助手回复念出来,请装市场里那类"朗读回复"插件。

依赖

  • 带 Web UI 的 DeepSeek Harness(dsh web 或桌面版的网页视图),在 0.2.1-rc.5 上验证。
  • dsh-pet(用于产生气泡;不装也能用控制台 API)。
  • Python 3.9+,或者用 DSH_PET_TTS_SYSTEM_PYTHON 指定解释器。
  • 能访问 speech.platform.bing.com,以及一次性访问 PyPI(或镜像)装 edge-tts。
  • Node.js 20+。

安装

dsh plugin --profile <你的档名> add github:jimmyfenwick/dsh-pet-tts

或用 release 里的 tarball:

dsh plugin --profile <你的档名> add https://github.com/jimmyfenwick/dsh-pet-tts/releases/latest/download/dsh-pet-tts.tgz

装完重启或刷新,先在页面里点一下(浏览器禁止用户手势前自动播音频),再让桌宠说话。首次合成时会在 ~/.dsh/dsh-pet-tts/venv 建虚拟环境并装 edge-tts——约 30MB,一次性,不装全局。宿主机日志里会看到 [dsh-pet-tts] creating virtualenv … / installing edge-tts …。

预设

见上表(anime-girl 默认)。参数与 dsh-pet-dfeiyu-mo 同源。

dshPetTTS.setPreset('anime-girl-hi')
dshPetTTS.say('主人,我回来了')
dshPetTTS.mute(true)
await dshPetTTS.voices()
await dshPetTTS.health()

配置与限制

同英文节:DSH_PET_TTS_ROOT、DSH_PET_TTS_PYTHON、DSH_PET_TTS_SYSTEM_PYTHON;每条气泡最多念 300 字;首次发声要等一次点击;合成需要联网;macOS/Linux 验证过,Windows 路径支持未实测;用的是微软公开朗读接口,未与之关联,接口可能随时变动,商业使用前请核对微软条款。

卸载

dsh plugin --profile <你的档名> remove dsh-pet-tts

如需要,再删 ~/.dsh/dsh-pet-tts(虚拟环境 + 缓存)。MIT 许可。

Comments

Loading…

From the same category

reactive-resume

DeepSeek Harness plugin for Reactive Resume: bridges your resumes and job applications into a Harness session over MCP.

Tools & CapabilitiesManifest valid

★ 41.7k

↓ 215/wk

MIT

Aug 24, 2026

dsh plugin --profile web add dsh-plugin-reactive-resume

by dsh-market

The plugin market inside DeepSeek Harness — browse, search, one-click install · DSH 可视化插件市场

Tools & CapabilitiesManifest valid

★ 10.1k

↓ 361.7k/wk

MIT

TypeScript

Nov 1, 2026

dsh plugin --profile web add dshmarket

by Tencent

Let AI agents use your real, logged-in browser without interrupting your work. CLI + extension for browser automation across any shell-capable AI agent.

Tools & CapabilitiesManifest valid

★ 9.9k

↓ 12.3k/wk

MIT

TypeScript

Nov 1, 2026

dsh plugin --profile terminal add @wxg-prc-cpg/browser-skill-dsh-plugin

by yjh051108

dsh-routing-suite — injector + router-standard kit: install the runtime injector first, then the task-aware reasoning-mode router preset (measured P1-P23).

Tools & CapabilitiesManifest valid

★ 7k

MIT

JavaScript

Sep 18, 2026

dsh plugin --profile web add @dsh-external/dsh-super-injector

by superdesigndev

OpenRouter for agent tools. Join community here: https://discord.gg/6mQYYfFMAn

Tools & CapabilitiesManifest valid

★ 7k

NOASSERTION

Python

Nov 2, 2026

dsh plugin --profile web add treg-dsh

by Q00

Agent OS: the agent gets smarter on its own. We just hold the line: Interview-gated, staged evaluation, budgeted evolution loop. MCP server, 14 runtimes: Claude Code, Codex CLI, Gemini CLI, OpenCode,

Tools & CapabilitiesManifest valid

★ 6.3k

MIT

Python

Nov 1, 2026

Index only — not installable