🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI
广告☁️ 云服务器特惠阿里云首购 8 折 · 腾讯云合作特惠
DeepSeek Harness Hub
← 返回列表

imtanhui/dsh-plugin-butler

DeepSeek Harnessspec-screened扫描:中风险在 GitHub 查看 ↗
未验证

插件管家——在 Web UI 中图形化管理 DeepSeek Harness DSH…

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/17 · 已提供中文文档
综合分
28
GitHub 分
28
用户评分
—
★ Stars
2
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add imtanhui/dsh-plugin-butler
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
信任档位:已验证本站已于 0 天前真实安装成功
是什么
dsh 原生插件 · other
装得上吗
本站已真实安装成功(非静态推断)
安全吗
本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
还在维护吗
更新放缓:最近一次提交在 39 天前

档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →

🟢实装验证通过· 2026/9/26
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/21(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

由 DeepSeek 最新模型翻译生成
dsh-plugin-butler

| English

License
GitHub stars

插件管家——在 Web UI 中图形化管理 DeepSeek Harness (DSH) 插件:中文目录、一键启停(热生效)、官方/外部分类、自定义分组、更新检测 + 一键更新(失败自动回滚)、插件市场(搜索 / 安装 / 卸载)、插件详情(Markdown README)、健康状态、全屏依赖关系图。零构建、零运行时依赖——只用 Node 内置模块加上部署自带的服务。

建议先装管家、再装其他插件:装上之后,每个插件的启停、更新、安装、卸载都走统一界面,启停实时生效、更新失败自动回滚,能显著减少"装上就炸、重启起不来"的情况。

若某插件导致 profile 无法启动:先手动清理对应 cordis.patch.yml 里的 disabled 块或卸载依赖,再重启即可。

安装

方式一(推荐):从 GitHub 安装
dsh plugin --profile  add github:imtanhui/dsh-plugin-butler

方式二:本地源码(开发调试)
cd /path/to/dsh-plugin-butler
dsh plugin --profile  add .

重启 profile 后,Web UI 的「设置 → 插件」会出现「插件管理」标签页。

更新

打开「设置 → 插件 → 插件管理」,点「检查更新」会对比每个已装 npm 依赖的 registry latest,有新版的行会显示 当前 → 最新,点对应行的「更新」即可一键升级——失败会自动回滚到上一版本。link / file / git 源的行标记为不可自动更新。

功能

插件管理列表

| 能力 | 说明 |
|---|---|
| 查看 | 官方 / 外部两类分组(可折叠);内置 130+ 官方模块的中文目录(中文名 + 一句说明 + 分类),点说明可在线编辑(保存 / Ctrl+Enter / Esc),自定义覆盖存到 ~/.dsh/plugin-manager/catalog.json 并显示「自定义」徽标 |
| 实时启停 | 每行一个开关,精确编辑 profile 的 cordis.patch.yml(增删 disabled: true 块)后由 DSH 的 HMR 观察器热应用,无需重启;核心行(应用 / 传输层 / 管家自身依赖的服务)受保护不可禁用;!!js 表达式控制的行不动;手工加的其他 patch 条目原样保留 |
| 自定义分组 | 外部插件按分组组织(新建 / 重命名 / 删除 / 移动),持久化到 ~/.dsh/plugin-manager/groups.json,一键过滤 |
| 更新检测 + 一键更新 | 「检查更新」对比 registry latest 并标出 当前 → 最新;「更新」重跑 pnpm add @latest,失败自动回滚旧版本 |
| 卸载 | 从 dsh.profile.bundles 移除 + pnpm remove,失败自动回滚 |
| 详情 | 插件详情弹窗,内置 Markdown README 渲染(手写渲染器,零依赖) |
| 健康状态 | 失败行红色高亮 + 「只看失败」筛选;每行展开可见注入的服务 / 提供方依赖 |

插件市场

| 能力 | 说明 |
|---|---|
| 插件市场 | 检索 GitHub topic:dsh-plugin 仓库(按 star 排序、分页),每项显示作者 / star / 简介,支持「详情」+「一键安装」 |

依赖关系图

| 能力 | 说明 |
|---|---|
| 依赖关系图 | 全屏依赖图:从左到右思维导图布局,节点显示项目名、悬停显示详情;官方=蓝点、外部=黑点;可拖拽节点、悬停高亮上下游、点阵画布、低透明度细边 |

架构

- Host:lib/index.js —— PluginManagerGateway 网关 + /plugin-manager/* REST 路由(GET 带同源校验,防 CSRF / DNS-rebinding);更新 / 安装 / 卸载链路整体串行互斥
- Patch 编辑:lib/patch.js —— 纯函数辅助(setRowDisabled / parsePatchBlocks / githubUrl / moduleShortName …),增删 disabled 块、行级操作、原子写入
- 依赖解析:Host list() 从 Cordis fiber._store({service: impl},impl.fiber.entry.options.name 为提供方模块)解析注入边,返回 edges 数组
- Client:lib/client.js —— 手写 window.__ModuleLoader__.load + React.createElement(无 JSX),注册 settings.plugins.tab(id manager);手写 Markdown 渲染器与依赖图(Sugiyama 式思维导图布局、SVG 边)
- 通信:官方 webServer 路由 + 同源 fetch(零构建、零运行时依赖,不走 Typert Remote)
- 状态文件:中文目录 / 分组 / 说明覆盖存 ~/.dsh/plugin-manager/{catalog.json,groups.json}

已知限制

- 禁用被依赖的条目可能导致 profile 启动失败(官方 fail-loud 设计);恢复:手动删除该 profile cordis.patch.yml 里的 disabled 块
- 核心行受保护,不能从 UI 禁用(需手工改配置文件)
- !!js 表达式控制的行 UI 不碰,须手工编辑
- link / file / git 源的依赖不可自动更新(标记为不可更新)
- 市场依赖 GitHub Search API(未认证 60 次/小时限流),仅影响频繁搜索
- 依赖图基于运行时 fiber._store 尽力解析,语义级冲突不在检测范围

开发

pnpm run check   # node --check 三个源文件
pnpm test        # node --test(16 个纯函数单测)

本插件无构建步骤:lib/index.js / lib/client.js / lib/patch.js 直接发布,改动即生效(改 client 后需刷新页面 / 重启 profile)。

相关

- 源码与 Issue:github.com/imtanhui/dsh-plugin-butler
- 同类项目:dsh-web-plugin-manager
- 许可证:MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入社群

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

DPharness QQ 群二维码,QQ 扫码进群
QQ 扫码进群
DPharness 飞书群二维码,飞书扫码进群
飞书扫码进群