🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

提示词增强与语音输入 Fishsb/dsh-prompt-enhancer

DeepSeek Harnessv1.2.2
Fishsb11 天前有提交已提供中文文档扫描:含敏感能力

DeepSeek Harness (DSH) 插件:✨ 提示词一键增强 + 💬 语音识别(说完自动停·云端/本地双引擎)· 附 🔁 服务异常一键重启

58.9/100
综合分
106
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:npm 同名包「dsh-prompt-enhancer」归属 mcjf28/dsh-prompt-enhancer,装到的可能不是本插件。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Fishsb/dsh-prompt-enhancer
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · other
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 11 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

npm 同名包「dsh-prompt-enhancer」归属 mcjf28/dsh-prompt-enhancer,装到的可能不是本插件

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-prompt-enhancer @ 1.2.2
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/29 20:42:47

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 64 处,展示前 52 条)
  • 读取本地文件
    lib/index.cjs:44
    const BODY = fs.readFileSync(path.join(__dirname, '..', 'plugin-host.js'), 'utf8');
  • 发起网络请求
    lib/client.cjs:15
    return fetch('/dsh-prompt-enhancer/rpc', {
  • 发起网络请求
    lib/client.cjs:27
    return fetch('http://127.0.0.1:' + port + '/rpc', {
  • 读取本地文件
    lib/sys.cjs:298
    const missing = ['sc.exe', 'netstat.exe', 'reg.exe'].filter((f) => !fs.existsSync(sr + '\\System32\\' + f));
  • 读取本地文件
    lib/sys.cjs:396
    const obj = JSON.parse(fs.readFileSync(p, 'utf8').replace(/^ FEFF/, ''));
  • 读取本地文件
    lib/sys.cjs:438
    const raw = fs.readFileSync(filePathOverride || executorPortFile(), 'utf8');
  • 读取本地文件
    lib/sys.cjs:477
    while (fs.existsSync(path.join(o.root || rescueRoot(home), stampBase + (suffix ? '-' + suffix : '')))) suffix++;
  • 写入本地文件
    lib/sys.cjs:480
    fs.mkdirSync(tmp, { recursive: true });
  • 读取本地文件
    lib/sys.cjs:483
    if (!src || !fs.existsSync(src)) return;
  • 写入本地文件
    lib/sys.cjs:485
    fs.mkdirSync(path.dirname(dest), { recursive: true });
  • 读取本地文件
    lib/sys.cjs:495
    if (runtimeDir && fs.existsSync(runtimeDir)) {
  • 写入本地文件
    lib/sys.cjs:505
    fs.writeFileSync(path.join(tmp, 'meta.json'), JSON.stringify(manifest, null, 2), 'utf8');
  • 写入本地文件
    lib/sys.cjs:506
    fs.renameSync(tmp, dir);
  • 删除本地文件
    lib/sys.cjs:526
    try { fs.rmSync(path.join(root, d), { recursive: true, force: true }); } catch { }
  • 执行外部命令来自配置/变量
    lib/sys.cjs:542
    const r = spawnSync(node, ['--check', f], { encoding: 'utf8', windowsHide: true, timeout: 15000 });
  • 执行外部命令固定命令
    lib/sys.cjs:565
    var r = cp.spawnSync('netstat', ['-ano'], { encoding: 'utf8', windowsHide: true, timeout: 10000 });
  • 执行外部命令固定命令
    lib/sys.cjs:620
    var rs = cp.spawnSync('ss', ['-ltnp'], { encoding: 'utf8', windowsHide: true, timeout: 10000 });
  • 执行外部命令固定命令
    lib/sys.cjs:623
    var rn = cp.spawnSync('netstat', ['-tlnp'], { encoding: 'utf8', windowsHide: true, timeout: 10000 });
  • 执行外部命令固定命令
    lib/sys.cjs:636
    cp.spawnSync('taskkill', args, { windowsHide: true, stdio: 'ignore', timeout: 15000 });
  • 执行外部命令固定命令
    lib/sys.cjs:648
    var r = cp.spawnSync('tasklist', ['/FI', 'PID eq ' + pid, '/FO', 'CSV', '/NH'], { encoding: 'utf8', windowsHide: true, timeout: 10000 });
  • 写入本地文件
    lib/sys.cjs:729
    fs.mkdirSync(path.dirname(dest), { recursive: true });
  • 删除本地文件
    lib/sys.cjs:741
    fs.unlinkSync(path.join(home, 'cordis.patch.yml'));
  • 读取本地文件
    lib/harness.cjs:47
    const rawPj = fs.readFileSync(pj, 'utf8').replace(/^ FEFF/, '');
  • 写入本地文件
    lib/rpc-config.cjs:19
    fs.mkdirSync(dshHome, { recursive: true });
  • 读取本地文件
    lib/rpc-config.cjs:28
    if (!CONFIG_FILE || !fs.existsSync(CONFIG_FILE)) return null;
  • 读取本地文件
    lib/rpc-config.cjs:30
    const parsed = JSON.parse(fs.readFileSync(CONFIG_FILE, 'utf8'));
  • 读取本地文件
    lib/rpc-config.cjs:44
    if (!CONFIG_FILE || !fs.existsSync(CONFIG_FILE)) return { ok: true, config: null };
  • 读取本地文件
    lib/rpc-config.cjs:45
    const parsed = JSON.parse(fs.readFileSync(CONFIG_FILE, 'utf8'));
  • 读取本地文件
    lib/rpc-config.cjs:63
    if (fs.existsSync(CONFIG_FILE)) {
  • 读取本地文件
    lib/rpc-config.cjs:65
    const cur = JSON.parse(fs.readFileSync(CONFIG_FILE, 'utf8'));
  • 写入本地文件
    lib/rpc-config.cjs:72
    fs.mkdirSync(path.dirname(CONFIG_FILE), { recursive: true });
  • 写入本地文件
    lib/rpc-config.cjs:74
    fs.writeFileSync(tmp, JSON.stringify(merged), 'utf8');
  • 写入本地文件
    lib/rpc-config.cjs:75
    fs.renameSync(tmp, CONFIG_FILE);
  • 执行外部命令来自配置/变量
    lib/platform-service.cjs:94
    const r = spawnSync(cmd, args, { encoding: 'utf8', windowsHide: true, timeout: 8000, env });
  • 读取本地文件
    lib/platform-service.cjs:243
    const s = fs.readFileSync(p, 'utf8');
  • 读取本地文件
    lib/platform-service.cjs:366
    const raw = fs.readFileSync(path.join(dshHome, 'dsh-prompt-enhancer.json'), 'utf8');
  • 读取本地文件
    lib/platform-service.cjs:368
    if (!o || typeof o.execPath !== 'string' || !fs.existsSync(o.execPath)) return null;
  • 执行外部命令固定命令
    lib/net-proxy.cjs:29
    const en = spawnSync('reg', ['query', 'HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings', '/v', 'ProxyEnable'], { encoding: 'utf8
  • 执行外部命令固定命令
    lib/net-proxy.cjs:31
    const r = spawnSync('reg', ['query', 'HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings', '/v', 'ProxyServer'], { encoding: 'utf8'
  • 读取本地文件
    lib/integrity.cjs:13
    const stream = fs.createReadStream(filePath);
  • 执行外部命令来自配置/变量
    lib/maintain-lib.cjs:36
    ? spawnSync(process.execPath, [bin].concat(baseArgs), { encoding: 'utf8', windowsHide: true, timeout: o.timeoutMs || 60000 })
  • 执行外部命令来自配置/变量
    lib/maintain-lib.cjs:37
    : spawnSync(bin, baseArgs, { encoding: 'utf8', windowsHide: true, timeout: o.timeoutMs || 60000 });
  • 读取本地文件
    lib/maintain-lib.cjs:67
    if (!root || !fs.existsSync(root)) continue;
  • 读取本地文件
    lib/maintain-lib.cjs:96
    if (process.env.DSH_INSTALL_DIR && fs.existsSync(process.env.DSH_INSTALL_DIR)) {
  • 执行外部命令固定命令
    lib/maintain-lib.cjs:100
    const r = spawnSync('reg', ['query', 'HKLM\\SYSTEM\\CurrentControlSet\\Services\\dsh-web\\Parameters', '/v', 'AppParameters'], {
  • 读取本地文件
    lib/maintain-lib.cjs:108
    if (root && fs.existsSync(root)) return root;
  • 读取本地文件
    lib/maintain-lib.cjs:121
    if (fs.existsSync(pd)) roots.push(pd);
  • 读取本地文件
    lib/maintain-lib.cjs:148
    return JSON.parse(fs.readFileSync((pp && pp.packageJson) || pp, 'utf8'));
  • 读取本地文件
    lib/maintain-lib.cjs:172
    const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
  • 写入本地文件
    lib/maintain-lib.cjs:179
    fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n', 'utf8');
  • 写入本地文件
    lib/maintain-lib.cjs:215
    fs.writeFileSync(patchYmlPath, PATCH_HEADER + body, 'utf8');
  • 写入本地文件
    lib/maintain-lib.cjs:233
    fs.writeFileSync(patchYmlPath, next, 'utf8');
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-client-locale
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

界面预览

1 张 · 点击查看大图

功能亮点

  • 提示词一键增强
  • 语音识别自动停止
  • 云端本地双引擎

README

由 DeepSeek 最新模型翻译生成
dsh-prompt-enhancer DeepSeek Harness(DSH)插件:提示词优化 + 语音输入增强 —— 把输入框草稿改写得更清晰、可执行,并给语音输入加上热键、说完自动停、清口水词与纠错。 草稿常常只有半句要求,交给模型后还要来回补问——点一下 ✨ 就地改写,不满意可撤回;语音则直接说,停顿即停,结果落回输入框。 安装 dsh plugin --profile web add github:Fishsb/dsh-prompt-enhancer#v3.4.2 dsh plugin --profile web update dsh-prompt-enhancer # 更新 dsh plugin --profile web remove dsh-prompt-enhancer # 卸载 装完(或更新 / 卸载后)重启 DSH,输入框工具行出现 ✨ 即安装成功。需本机已装 DeepSeek Harness ≥ 0.1.0-rc.6 且 pnpm 在 PATH 中。
展开完整文档(README 剩余 1 节)
dsh-prompt-enhancer

DeepSeek Harness(DSH)插件:提示词优化 + 语音输入增强 —— 把输入框草稿改写得更清晰、可执行,并给语音输入加上热键、说完自动停、清口水词与纠错。

草稿常常只有半句要求,交给模型后还要来回补问——点一下 ✨ 就地改写,不满意可撤回;语音则直接说,停顿即停,结果落回输入框。

安装

dsh plugin --profile web add github:Fishsb/dsh-prompt-enhancer#v3.4.2
dsh plugin --profile web update dsh-prompt-enhancer # 更新
dsh plugin --profile web remove dsh-prompt-enhancer # 卸载

装完(或更新 / 卸载后)重启 DSH,输入框工具行出现 ✨ 即安装成功。需本机已装 DeepSeek Harness ≥ 0.1.0-rc.6 且 pnpm 在 PATH 中。

能做什么

提示词优化

- ✨ 一键优化 — 改写当前草稿,可继续优化、可撤回、优化中可取消
- 5 种模式 — 基础 / 轻量 / 标准 / 专家 / 一键发布
- 记忆开关 — 发送前的多轮优化累积为记忆链,发送即清空(默认关)
- 模型链 — 多个模型按序尝试,可增删改序、开关思考、行内测连通性

语音输入增强(识别由 DSH 官方 speechToText 提供;插件不自带识别引擎、不下载模型)

- 两种入口 — 官方 🎤 按钮,或插件热键(点按开始 / 再按停止;长按 = 按住说、松开停)
- 静音监测 — 说完自动停,判定时长 1–5 秒可调(默认 2 秒),可整体关闭
- 清口水词 — 本地规则清理语气词 / 重复 / 拖音,不改写、不新增(默认开)
- 语音纠错 — 识别完成后做字词层订正,仅作用于语音路径(默认关)
- 自动增强 — 识别结果填入草稿后自动触发增强(默认关)

按钮与文案跟随 DSH 界面语言(中文 / English)。

设置项速查

设置 →「提示词增强」,改动即时保存:

| 位置 | 内容 |
| 模型配置 | 模型链;语音识别:热键、静音监测(1–5 秒)、清口水词、语音纠错、自动增强 |
| 优化参数 | 优化模式、模板、记忆开关、上下文预算、超时 / 回复长度 / 输出上限 |

录音采集、识别与写回都由 DSH 官方语音控件完成,插件只叠加上述增值。录音不落盘。

语音输入

Releases · CHANGELOG · 兼容性说明 · Licensed under Apache-2.0

隐私:插件不记录、不上报任何数据;增强结果来自外部 LLM,发送前请自行核对。
预览分享卡片长什么样 ↓Fishsb/dsh-prompt-enhancer
分享 · DeepSeek Harness Hub
Fishsb/dsh-prompt-enhancer

DeepSeek Harness (DSH) 插件:✨ 提示词一键增强 + 💬 语音识别(说完自动停·云端/本地双引擎)· 附 🔁 服务异常一键重启

回到顶部