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

插件管理器 yunniees/DSH-Plugin-Manager

DeepSeek Harness
yunniees68 天前有提交已提供中文文档扫描:含敏感能力

可视化启停插件,AI 翻译概括搜索并一键更新

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

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

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add yunniees/DSH-Plugin-Manager
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · market
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/09/25·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 68 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

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

验证判据与等级说明 →

可信度证据

安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

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

✗npm 包@dsh-external/dsh-plugin-manager(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/24 04:26:58

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

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

可执行外部命令读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 33 处,展示前 23 条)
  • 执行外部命令来自配置/变量
    lib/index.js:39
    execFile(cmd, args, { maxBuffer: 8 * 1024 * 1024, windowsHide: true, timeout: timeoutMs, ...(env ? { env: { ...process.env, ...env } } : {}) }, (e, _s
  • 读取本地文件
    lib/index.js:52
    if (existsSync(cand))
  • 读取本地文件
    lib/index.js:140
    const p = JSON.parse(await readFile(file, 'utf8'));
  • 发起网络请求
    lib/index.js:193
    const res = await fetch(u, { headers });
  • 读取本地文件
    lib/index.js:219
    const s = JSON.parse(await readFile(join(resolveDshHome(), '.agent-presets', id, 'dpm.source.json'), 'utf8'));
  • 写入本地文件
    lib/index.js:228
    await writeFile(join(resolveDshHome(), '.agent-presets', id, 'dpm.source.json'), JSON.stringify(data, null, 2) + '\n', 'utf8');
  • 读取本地文件
    lib/index.js:314
    entries = await readdir(dir);
  • 读取本地文件
    lib/index.js:326
    const meta = await readFile(join(pdir, 'preset.yml'), 'utf8');
  • 读取本地文件
    lib/index.js:331
    const s = JSON.parse(await readFile(join(pdir, 'dpm.source.json'), 'utf8'));
  • 写入本地文件
    lib/index.js:408
    await writeFile(join(profileDir(profileName), STATE_FILE), JSON.stringify(state, null, 2) + '\n', 'utf8');
  • 发起网络请求
    lib/index.js:416
    const req = https.get(url, { headers, timeout: timeoutMs }, (res) => {
  • 发起网络请求
    lib/index.js:476
    const res = await fetch(u, { headers, signal: AbortSignal.timeout(per) });
  • 发起网络请求
    lib/index.js:487
    const res = await fetch(u, { headers, signal: AbortSignal.timeout(per) });
  • 写入本地文件
    lib/index.js:587
    await writeFile(workspaceYaml, text.trimEnd() + `\nallowBuilds:\n ${key}: true\n`, 'utf8');
  • 写入本地文件
    lib/index.js:935
    await rename(from, to);
  • 写入本地文件
    lib/index.js:996
    await writeFile(join(base, fn), Buffer.from(f.content, 'base64'), 'utf8');
  • 写入本地文件
    lib/index.js:1027
    await mkdir(base, { recursive: true });
  • 发起网络请求
    lib/client.js:25
    const r = await fetch(API + path, {
  • 写入剪贴板
    lib/client.js:2191
    await navigator.clipboard.writeText(code);
  • 写入剪贴板
    lib/client.js:2199
    await navigator.clipboard.writeText(code);
  • 发起网络请求
    lib/client/index.js:23
    const r = await fetch(API + path, { headers: { 'content-type': 'application/json' }, ...init, signal: timeout });
  • 写入剪贴板
    lib/client/index.js:2184
    await navigator.clipboard.writeText(code);
  • 写入剪贴板
    lib/client/index.js:2193
    await navigator.clipboard.writeText(code);
扫描于 2026/11/4(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-llm@deepseek-ai/dsh-app-boot@deepseek-ai/dsh-home-paths@deepseek-ai/dsh-client-ui-slots
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 可视化启停插件
  • AI翻译与总结
  • 插件搜索与批量更新

DeepSeek Harness 可视化插件管理器:AI 自动翻译、AI 一键总结、AI 插件搜索、一键分享安装多个插件、批量更新

README

由 DeepSeek 最新模型翻译生成
@dsh-external/dsh-plugin-manager version license dsh 面向 DeepSeek Harness 的全功能插件管理器:可视化插件管理 · AI 自动翻译 · AI 一键概括 · AI 智能搜索 · 一键分享安装 · 一键更新,附带应用内插件市场——一个包,开箱即用。 ✨ 核心功能 | | 功能 | 说明 | | 🖥️ | 可视化插件管理 | 已安装插件与预设卡片化展示:启停 / 删除 / 检查更新 / 分类,全部在一个面板里完成,无需命令行 | | 🌐 | AI 自动翻译 | 整个面板一键切换中文 / 英文 / 任意自定义语言——用你自己的模型翻译(可以选便宜模型!
展开完整文档(README 剩余 1 节)
@dsh-external/dsh-plugin-manager

version
license
dsh

面向 DeepSeek Harness 的全功能插件管理器:可视化插件管理 · AI 自动翻译 · AI 一键概括 · AI 智能搜索 · 一键分享安装 · 一键更新,附带应用内插件市场——一个包,开箱即用。

✨ 核心功能

| | 功能 | 说明 |
| 🖥️ | 可视化插件管理 | 已安装插件与预设卡片化展示:启停 / 删除 / 检查更新 / 分类,全部在一个面板里完成,无需命令行 |
| 🌐 | AI 自动翻译 | 整个面板一键切换中文 / 英文 / 任意自定义语言——用你自己的模型翻译(可以选便宜模型!),译文本地缓存、持久保存 |
| 📝 | AI 一键概括插件 | 让 AI 为每个已安装插件写一句话简介;增量 + diff 判定:版本无实质更新的插件绝不重复消耗 token |
| 🔍 | AI 智能搜索插件 | 用大白话描述需求,AI 自动生成查询、扫 GitHub(topic:dsh-plugin + 宽泛检索)、按相关度与星数挑选最佳候选,一键安装 |
| 🔗 | 一键分享安装 | 把自己或他人的多个插件 / 预设打包成一条 dshpm:// 链接,发出去;对方粘贴即装,一次装齐 |
| ⬆️ | 一键更新 | 一次点按检查并更新全部插件(npm 源与 GitHub 源)与 GitHub 预设,多版本并存时可选择目标版本 |

📸 界面预览

| 插件管理面板 | 插件市场 |
| 插件管理面板 | 插件市场 |

📦 安装

从 GitHub 安装(推荐)
dsh plugin --profile web add github:yunniees/DSH-Plugin-Manager

或本地目录装配(开发自用)
dsh plugin --profile web add /path/to/dsh-plugin-manager

仓库已包含构建产物(lib/),按官方发布规范采用「分发构建产物」路径——无需 allowBuilds 授权、无需 prepare 脚本,开箱即用;锁定版本可用 github:yunniees/DSH-Plugin-Manager#。

安装后重启 Harness Web(插件依赖 webServer 与 llm 服务,需在主 profile 作用域加载)。重启后侧栏底部出现「插件管理」入口(在「设置」旁,视觉与官方对齐)。

🚀 使用

1. 点击侧栏底部「插件管理」入口,打开管理面板。
2. 首次使用先在顶部「模型」下拉选择一个 AI 模型(AI 功能都复用 DSH 已配置的 provider,插件不持有任何 API key)。
3. 概览页:AI 自动分类(只分类未分类插件);AI 生成简介(增量);每张卡「更多」菜单可检查更新 / 选版本 / 删除 / 分享。
4. 插件市场:浏览 / 搜索 / AI 搜索(直接输入需求描述);开启「AI 介绍」逐条生成简介(长按按钮可清缓存);滚动到底自动加载下一页。
5. 预设区:开关启停、检查更新、选版本更新、分享链接。
6. 分享:任意卡片「更多」→「分享」生成 dshpm:// 链接;对方在分享面板粘贴,一次装齐多个插件与预设。

🔒 安全

- 无硬编码密钥——AI 调用全部复用 DSH 已配置的 provider,不持有、不读取任何 API key;
- 仅本机——HTTP API 只绑定回环地址,不写日志、不外发请求体;
- 输入白名单——仓库名 / 预设名 / 版本 tag / 文件名均经正则校验,防注入与路径穿越;
- 隐私——状态文件只存分类 / 简介 / 语言等 UI 数据;settings.yaml 仅解析 provider 与模型名。

🛠️ 开发

npm install # typescript + tsdown(仅构建需要)
npm run typecheck # host + client 类型检查(必须 0 错误)
npm run build # typecheck + 编译 host + 打包 client → lib/

- host 源码:src/index.ts(Cordis bundle 插件,Node)
- client 源码:src/client/index.ts(vanilla DOM + CSS 变量,无需框架)

改动 client 源码后必须重新 npm run build,否则装配的是旧产物。

❓ 常见问题

Q:插件市场加载慢或失败?
官方源优先(走你的代理节点),失败后自动切换国内镜像(镜像直连,不绕代理)。全部失败时网格底部出现「加载失败,点击重试」按钮。注意 GitHub 搜索接口(api.github.com)国内直连不稳定,会自动用 gh-proxy.com 兜底。

Q:为什么必须先选模型?
所有 AI 能力都复用 DSH 已配置的 provider,本插件不持有任何 API key。未选模型时点 AI 按钮会提示。

Q:提示「GitHub API 限流」?
GitHub 匿名搜索约 10 次 / 分钟。AI 搜索一次会并发发起多条查询,连续操作可能触发限流——会给出明确错误并可重试。

Q:安装时提示 allowBuilds?
DSH 对 git 源码插件要求构建授权(pnpm ≥10)。本插件的「安装」「AI 安装」会自动放行并提示;而它自身因仓库内已带构建产物,永远不需要授权。

Q:一键更新能更新哪些?
npm 源插件走 npm registry(显式版本号绕开 lockfile 惰性);GitHub 源插件更新到最新 HEAD 或所选 tag;本地目录链接的插件会提示手动 git pull。

Q:删除插件会怎样?
确认后执行 dsh plugin remove(从 profile 卸载并移除文件);删除预设仅移除其目录。

📚 文档

深入阅读 ARCHITECTURE.md:必守规则、统一调用层、翻译架构、防回归模式与发布检查清单。

📄 许可证

MIT(见 LICENSE)
预览分享卡片长什么样 ↓yunniees/DSH-Plugin-Manager
分享 · DeepSeek Harness Hub
yunniees/DSH-Plugin-Manager

可视化启停插件,AI 翻译概括搜索并一键更新

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部