DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Listener — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
L

dsh-listener

Listener

Secure local voice input plugin for DeepSeek Harness: a microphone button on the right side of the input box. After recording, transcription is performed through the same-origin host proxy (local SenseVoice-Small INT8 ONNX; audio never leaves the network). The backend binds only to 127.0.0.1 with a

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:Lanzgale/dsh-listener#3505467a6da81ced1d115a8933861eea81b6ea5d
READMECompatibilityVersions

Description

Secure local voice input plugin for DeepSeek Harness: a microphone button on the right side of the input box. After recording, transcription is performed through the same-origin host proxy (local SenseVoice-Small INT8 ONNX; audio never leaves the network). The backend binds only to 127.0.0.1 with a random token, has no CORS, and verifies the model’s sha256.

Compatibility and provenance

Listener is published as dsh-listener and currently resolves to version 0.1.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
8/30/2026

Versions

0.1.0stable
8/30/2026

Related plugins

Loading related plugins…

Latest
0.1.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
8/30/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in integrations-communication.

Acp App@deepseek-ai/dsh-acp-appThe dsh ACP profile bundle: automation-only JSON-RPC stdio and process lifecycle over dsh-baseIm@xmanrui/dsh-im把十一种 IM 渠道和公网 AI Office 接入本机 DeepSeek Harness。 Connect eleven IM channels and a public AI Office to a local DeepSeek Harness.Pocketdsh-pocketPut DeepSeek Harness in your pocket: one package, one settings page, and scan a QR code on your phone to access DSH on your computer in sync (LAN + public network, real-time screen mirroring).DSCODE@toddzheng024/dscode-bundleA complete DeepSeek coding agent with persistent shell, Ultra collaboration and automatic permission review.

README

dsh-listener — 本地安全语音输入插件

在 DSH 对话输入框右侧添加麦克风按钮:录音 → 本地 SenseVoice-Small INT8 ONNX 转写 → 文本填入输入框。音频全程本地处理,不出网。

fork/参考:@opensquad/dsh-voice-input(MIT,已克隆 ~/file/dsh/plugin/dsh-voice-input),重写为安全架构,详见下方「与原版的差异」。

架构

浏览器(输入框 conversation.input.right)
  └─ 同源 POST /plugins/dsh-listener/*(宿主代理,无 CORS)
       └─ 宿主:生命周期管理 + 20MB 上限 + 语言头透传
            └─ Python 后端(单进程,仅 127.0.0.1:7103 + 随机 token)
                 ├─ /health /download /download/status /start
                 └─ /v1/audio/transcriptions(SenseVoice-Small INT8 ONNX)

目录

  • lib/index.js — 宿主:路由代理、后端生命周期(懒启动/崩溃重启/dispose 清理)、依赖检查与安装(钉版本)
  • lib/client.js — 浏览器:麦克风按钮、录音(120s 上限)、进度/错误弹窗、inputActions.setDraft 追加填入
  • backend/server.py — 合并后端(下载网关 + 推理服务单进程)
  • backend/lib/inference.py — SenseVoice ONNX 推理(MIT 复用,未改动)
  • backend/lib/model_store.py — 模型下载 + sha256 落盘校验
  • backend/requirements.txt — 钉版本依赖(onnxruntime==1.29.0 等)

存储

数据位置
模型(4 文件,~240MB)~/.local/share/dsh-listener/model/(环境变量 DSH_LISTENER_MODEL_DIR 可改)
sha256 清单同目录 .sha256.json(首次下载建立信任锚点,启动时校验,损坏自动重下)
Python 依赖~/.local/lib/python3.14/site-packages/(--user --break-system-packages,PEP 668)
token每进程随机,命令行注入,不落盘
后端日志backend/server.log

与原版的差异(安全修复清单)

原版dsh-listener
浏览器直连 127.0.0.1:7101/7102 + CORS 全开浏览器只访问同源宿主路由;后端无 CORS
后端绑 0.0.0.0、零鉴权只绑 127.0.0.1 + 回环来源校验 + 随机 token
网关 + 推理两进程合并单进程,生命周期一条清理链
/uninstall 可远程删模型删除该端点
无大小/时长限制20MB / 120s 上限(宿主+后端双重)
自动 pip 装未钉版本钉版本 + 首次安装前 UI 确认
模型无校验sha256 落盘 + 启动校验 + 损坏自动重下
无 dispose 清理宿主 dispose / 进程退出统一 kill

使用

  1. 首次点击麦克风:确认后自动安装依赖(约 250MB)+ 下载模型(约 230MB),进度条显示
  2. 就绪后:点击开始录音,再点停止 → 转写 → 填入输入框(已有内容则追加)
  3. 输入框已有草稿时追加在末尾;识别失败显示角标 !

开发

  • client 改动:Ctrl+Shift+R 刷新即可(curl http://127.0.0.1:3080/plugins/dsh-listener/client.js 验证服务端已更新)
  • host / 后端改动:重启 DSH
  • 模型重下:rm -rf ~/.local/share/dsh-listener/model 后重新走下载流程