dsh-plugin-manager

DSH PLUGINUI 与外观

仓库 liqichen/dsh-plugin-manager · npm dsh-plugin-manager

UI 与外观 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

DSH 插件管理器在 DeepSeek Harness 设置面板内嵌 GUI,可视化开关、删除 MCP 服务与 Skills,改动实时热生效,无需重启。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 16 复刻 4 · 未关闭 issue 5
最近更新 2026-10-04 创建于 2026-08-14
README 10.8 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:liqichen/dsh-plugin-manager
兼容 DSH 版本0.2.0-rc.2 等 9 个版本版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖@deepseek-ai/dsh-client-locale@*、@deepseek-ai/dsh-client-runtime@* 等 3 个需要同时安装的同级依赖
npm 包名dsh-plugin-manager可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-plugin-manager:DeepSeek Harness 的图形化插件管理界面

  • MCP 一键开关
  • 删除可恢复
  • Skills 管理
  • 插件包浏览
  • 自动备份配置

上游标签

dsh-plugin

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询
— · 其它检查项
  • L4_0_SANDBOX 沙盒安装判定 方式:沙盒安装执行

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

UI 与外观
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方liqichen仓库 dsh-plugin-manager · 默认分支 main
分类UI 与外观skin
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue16 / 4 / 5收录时的数值,非实时
创建 / 更新2026-08-14 · 2026-10-04最后推送 2026-10-04
本站收录2026-08-18首次进入本站目录的时间

README 全文

10.8 KB
作者原文,中文版优先;只做安全转义,不改内容

> [!WARNING]
> ⚠️ 本项目已归档停止维护 (Archived)
> DeepSeek Harness 自 v0.1.6 起内置插件管理页(安装 / 配置 / 启停 / 运行时卸载 / 镜像源),本插件功能已由官方原生能力覆盖,故停止维护并归档。感谢大家的支持。
>
> Deprecated: DSH ≥ v0.1.6 ships a built-in plugin management page (install / config / enable / runtime uninstall / mirror sources). This plugin is superseded and archived.
> Official: https://github.com/deepseek-ai/deepseek-harness


🧩 DSH 插件管理器

dsh-plugin-manager — 在 DeepSeek Harness 设置面板里内嵌的图形化管理器,让你像操作普通 App 一样管理 MCP 服务 / Skills / 内置插件包,开关、删除实时热生效,无需重启 dsh web。


📑 目录


✨ 功能特性

能力 说明 生效方式
🎛️ MCP 开关 一键禁用/启用任意 MCP 服务(写入 disabled: true 或移除) 实时热生效,无需重启
🗑️ MCP 删除 从 cordis.patch.yml 删除整个 MCP 条目(上方注释保留) 实时热生效,无需重启
📚 Skills 管理 浏览全部 skill 及描述;删除 = 移入 .trash-* 目录,可恢复 立即生效
📦 插件包浏览 只读查看 DSH 本体 160+ 内置插件包的名称/版本/说明 只读
🛡️ 自动备份 每次写操作前自动备份配置为 cordis.patch.yml.bak-<时间戳> —
🔌 零额外进程 后端内嵌在 dsh web 宿主里,同源 API,不占端口、无 CORS 暴露 —

📸 界面预览

> 管理页位于 DSH 设置面板 → 「插件管理」,三个标签页:

MCP 服务 Skills 内置插件包

🚀 安装

> 前提:已安装 DeepSeek Harness(dsh web),并了解 ~/.dsh 目录结构。

方式一:从本仓库安装(推荐)

# 1. 克隆并放入用户插件目录
git clone https://github.com/liqichen/dsh-plugin-manager.git
mkdir -p ~/.dsh/plugins/dsh-plugin-manager
cp -r dsh-plugin-manager/{index.js,client.js,package.json} ~/.dsh/plugins/dsh-plugin-manager/

# 2. 通过 dsh CLI 注册插件
dsh plugin --profile web add ~/.dsh/plugins/dsh-plugin-manager

# 3. 声明依赖(让 Node 端可解析)
#    编辑 ~/.dsh/profiles/web/package.json,dependencies 加入:
#    "dsh-plugin-manager": "file:../../plugins/dsh-plugin-manager"

# 4. 在 ~/.dsh/profiles/web/cordis.patch.yml 的 plugins 列表加入:
#    - id: plugin-manager-ui
#      name: dsh-plugin-manager

# 5. 重启 dsh web,打开「设置」→「插件管理」即可使用

方式二:legacy 独立网页版(不依赖插件系统)

如果插件机制不适用,仓库提供了早期独立版 Python 服务:

python3 legacy/server.py --port 17891
# 浏览器打开 http://127.0.0.1:17891/

🖥️ 使用说明

打开 DSH 设置 → 插件管理,你会看到三个标签页:

🎛️ MCP 服务
- 每个 MCP 一张卡片,显示名称、传输方式(stdio/http 徽章)、运行状态、配置 id
- 右侧开关:一键禁用/启用;删除按钮:移除该条目(有二次确认)
- 顶部显示配置文件路径与总数量

📚 Skills
- 列出所有 skill 及 SKILL.md 中的描述、目录路径
- 删除 = 移入 ~/.dsh/skills/.trash-*,可手动恢复

📦 内置插件包
- 表格展示 DSH 本体全部插件包(只读),升级请使用 npm update -g @deepseek-ai/dsh

操作完成后,页面会提示「✅ 改动已实时热生效」;已打开的会话建议开新会话,以刷新工具列表。


⚙️ 工作原理

本插件是标准 DSH 双端插件,随 dsh web 一同启动,无需独立进程:

┌─────────────────────────── dsh web 宿主 ───────────────────────────┐
│                                                                     │
│  浏览器端 (client.js)                 Node 端 (index.js)            │
│  ┌───────────────────────┐            ┌─────────────────────────┐  │
│  │ 设置面板「插件管理」页 │   fetch    │ 注册 /plugin-manager/   │  │
│  │ React UI · 同源 API   │ ─────────▶ │ api/* 路由(内嵌后端)     │  │
│  └───────────────────────┘            │ 读 / 写:                │  │
│                                       │  · ~/.dsh/profiles/web/ │  │
│                                       │    cordis.patch.yml     │  │
│                                       │  · ~/.dsh/skills/       │  │
│                                       │  · ~/.dsh/profiles/     │  │
│                                       │    node_modules/@deep-  │  │
│                                       │    seek-ai/             │  │
│                                       └─────────────────────────┘  │
└────────────────────────────────────────────────────────────────────┘

涉及的文件路径:

路径 作用
~/.dsh/profiles/web/cordis.patch.yml MCP 服务配置(补丁层),修改后宿主 HMR 热生效
~/.dsh/skills/ Skill 目录,删除时重命名为 .trash-<时间戳>-<名称>
~/.dsh/profiles/node_modules/@deepseek-ai/ DSH 本体插件包(只读)

📡 API 参考

后端内嵌在 dsh web 宿主,同源提供两个接口:

GET /plugin-manager/api/state

返回当前全部状态:

{
"mcp": [
{ "id": "mcp-scrapling", "serverName": "scrapling", "transport": "stdio", "command": "scrapling", "disabled": false }
],
"skills": [ { "name": "obsidian-cli", "desc": "…", "path": "/Users/me/.dsh/skills/obsidian-cli" } ],
"plugins": [ { "name": "dsh-client-web", "version": "1.2.3", "desc": "…" } ],
"patchFile": "/Users/me/.dsh/profiles/web/cordis.patch.yml",
"skillsDir": "/Users/me/.dsh/skills"
}

POST /plugin-manager/api/action

三种操作,kind 区分:

{ "kind": "mcp-toggle",  "id": "mcp-scrapling", "disable": true }
{ "kind": "mcp-delete",  "id": "mcp-scrapling" }
{ "kind": "skill-delete", "name": "obsidian-cli" }

响应统一为 { "ok": true, "message": "已禁用 mcp-scrapling(热生效)" }。
所有写操作先备份 cordis.patch.yml 为 .bak-<时间戳>,再改文件。


🛠️ 用 DSH 开发(吃自己的狗粮)

本项目就是用 DeepSeek Harness 开发出来的 —— 从想法到上线,整个开发过程由运行在 DSH 里的 AI 编码智能体完成:

  • 通过 DSH 的 MCP 工具(浏览器自动化、文件读写等)逆向研究官方双端插件的扫描与注入机制(dsh-client-modules、dsh-cordis-host-runner、settings.section slot 契约)
  • 直接读写 cordis.patch.yml / ~/.dsh/skills/ 反复实验,验证「配置改动 → 宿主 HMR 热生效」链路
  • 用 Playwright / Chrome DevTools 自动化截图、检查 UI 效果
  • 最终产物又作为标准 DSH 插件被安装回 DSH,用来管理 DSH 自己 —— DSH 管理 DSH 自己

这正是 DeepSeek Harness 的设计哲学:Everything is a Plugin。

🗂️ 目录结构

dsh-plugin-manager/
├── index.js          # Node 半:内嵌后端,注册 /plugin-manager/api/* 路由
├── client.js         # 浏览器半:设置面板「插件管理」React UI
├── package.json      # DSH 双端插件元数据(dsh.client.inject 声明宿主依赖)
├── docs/
│   └── screenshots/  # 界面截图
├── legacy/
│   └── server.py     # 早期独立 Python 网页服务版本(备用)
├── README.md
└── LICENSE           # MIT

❓ 常见问题

Q: 页面提示「插件后端未响应」?
浏览器端连不上 /plugin-manager/api。检查安装步骤 3、4 是否都完成,以及 ~/.dsh/profiles/node_modules/dsh-plugin-manager 是否正确指向插件目录,然后重启 dsh web。

Q: 开关/删除后工具列表没变?
配置改动是热生效的,但当前已打开的会话仍持有旧的工具列表,请新开一个会话。

Q: 删掉的 MCP 怎么恢复?
mcp-delete 只删除配置条目,不会卸载 npm 包。用最近的备份 cordis.patch.yml.bak-* 恢复,或手动把条目加回 cordis.patch.yml 即可。

Q: 删掉的 Skill 怎么恢复?
把 ~/.dsh/skills/.trash-<时间戳>-<名称> 重命名回 ~/.dsh/skills/<名称> 即可。

Q: 想彻底删除 Skill?
管理器只做「移入回收站」;彻底删除请手动 rm -rf 对应的 .trash-* 目录。

Q: 能从管理器升级 DSH 本体吗?
不能。内置插件包页是只读的,DSH 本体升级请用 npm update -g @deepseek-ai/dsh。


⚠️ 注意事项

  1. 操作的是真实配置 —— 所有改动直接写 cordis.patch.yml 与 ~/.dsh/skills/。每次写前自动备份,出问题可用最近的 .bak-* 恢复。
  2. MCP 删除 ≠ 卸载包 —— 只删配置条目,包体仍在,重新配置即可恢复。
  3. Skill 删除可恢复 —— 是「移入 .trash-*」而非真删。
  4. 热生效有边界 —— 配置实时生效,但已开会话的工具列表不自动刷新,请开新会话。
  5. 只作用于当前 profile —— 默认管理 ~/.dsh/profiles/web/,其他 profile 需相应调整路径。

📜 许可证

MIT © liqichen


觉得好用的话点个 ⭐,有问题欢迎提 Issue。

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-plugin-manager 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:liqichen/dsh-plugin-manager` 即可。对应的 npm 包名是 `dsh-plugin-manager`。

dsh-plugin-manager 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-plugin-manager 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-plugin-manager 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.1.7-rc.2、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2、0.1.3-alpha.2、0.1.3-alpha.1、0.1.2-rc.1。版本较多,只列出前 8 个。

dsh-plugin-manager 需要什么运行环境?

需要同时安装 @deepseek-ai/dsh-client-locale@*、@deepseek-ai/dsh-client-runtime@*、@deepseek-ai/dsh-client-ui-settings@*。环境不满足时安装会失败,建议先确认本机版本。

dsh-plugin-manager 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-plugin-manager 有哪些功能?

MCP 一键开关、删除可恢复、Skills 管理、插件包浏览、自动备份配置。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

同名或近似条目

8 条
不同作者的仓库分开列,请确认你要装的是哪一个
UI 与外观
按星标排序,可作替代方案

awesome-dsh-plugin

awesome-dsh-plugin

A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harnes

L4 · 沙盒安装通过 1.8 万 星

deepseek-balance-whale-widget

DeepSeek-Balance-Whale-Widget

DSH 界面右下角的常驻小鲸鱼余额挂件,实时显示 DeepSeek 账户余额、今日已用与每轮对话消耗,支持拖拽吸附、Q 弹动画与音效,开箱即

L4 · 沙盒安装通过 4,492 星

dsh-better-sidebar

DSH-better-sidebar

面向 DeepSeek Harness 的服务化侧边栏工作台插件,把文件编辑、终端、Git 变更、子代理任务与侧边对话整合进右侧栏与底部面板

L4 · 沙盒安装通过 4,112 星

dsh-deep-whale

dsh-deep-whale

DSH Web 鲸鱼娘皮肤系列(深海女仆工坊 maid-atelier)。

L4 · 沙盒安装通过 2,470 星

deepseek-design

deepseek-design

可视化设计工作室,支持网站、App 原型、海报、信息卡、报告和杂志的模板创建、元素编辑、选区级 AI 草稿衔接与导出。

L4 · 沙盒安装通过 1,438 星

superdesign-skill

superdesign-skill

Superdesign为DeepSeek Harness等编码代理提供设计判断力,将AI生成的平庸UI转化为可交付的精致前端,支持设计系统、

L3 · 安装规范通过 647 星

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。