white-sand-grand/dsh-plugin-doctor

Plugin插件 Native原生 ⭐ 6 MIT Markets & Collections市场与合集

致力于解决各插件之间也与版本之间可能存在的冲突问题并提供解决方案

Project Overview项目介绍

This is a native DSH plugin built exclusively for the DSH plugin ecosystem, designed to diagnose plugin issues and help users make better installation decisions. It draws inspiration from Claude Code’s /doctor command and the common crashes and conflicts users face when installing multiple unvetted plugins. To install it, you run the dsh plugin --profile web add github:white-sand-grand/dsh-plugin-doctor command in the same environment that you run DSH, then start DSH Web as you normally would. Once installed, you just open DSH Web at http://127.0.0.1:3080 and ask questions in natural language.

dsh-plugin-doctor includes seven built-in specialized tools that handle different user requests, and the agent automatically picks the right tool based on your input. It works for casual DSH users who want to avoid plugin conflicts and crashes, as well as plugin maintainers who need to map the plugin ecosystem’s current landscape. Common use cases include checking for open, unresolved issues in a plugin’s official repository before installation, searching for community plugins and checking for functional overlap with already installed tools, preventing installation conflicts before bulk installs, and auditing which plugins you actually use.

The plugin requires Node.js 22.19 or newer to run, and runs in read-only mode by default so it never modifies your existing plugin setup or starts DSH Web on its own. It uses a fail-closed design for installation conflict checks, so it will block installation if it cannot verify repository metadata, for example when GitHub API rate limits hit. All usage audit data is processed only on your local machine, no session data is uploaded to any remote server. The project is open source under the MIT license, and users can set a GitHub token via an environment variable to avoid API rate limits.

dsh-plugin-doctor 是专为 DSH 插件生态打造的原生诊断决策插件,灵感来自 Claude Code 的 /doctor 命令和插件冲突引发的运行故障。它提供社区插件搜索、功能重复识别、聚合 bundle 子插件识别、批量安装冲突预检、使用量审计、插件关系图生成和官方版本同步检查等功能。你可以在 DSH 运行环境中通过 dsh plugin add 命令完成安装。

面向 DSH 普通用户和插件维护者,dsh-plugin-doctor 安装后无需额外操作,你直接在 DSH Web 中用自然语言提问即可,插件会根据问题自动调用 7 款内置工具完成任务。典型使用场景包括安装前检查官方未解决 Issue、搜索插件并排查功能重复、批量安装前预检冲突、生成插件关系图、识别聚合 bundle 子插件和审计实际使用量。

dsh-plugin-doctor 要求 Node.js 版本不低于 22.19,默认只读运行,不会自行修改已有插件安装或启动 Web UI。冲突检查采用失败关闭设计,GitHub API 限流时支持多级降级,用量审计仅处理本地落盘数据,不会上传任何用户信息。项目开源遵循 MIT 许可,用户可配置 GitHub 令牌来避免 API 限流问题。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 6 stars - very few users, little community feedback星标只有 6,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add github:white-sand-grand/dsh-plugin-doctor

把 white-sand-grand/dsh-plugin-doctor 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-plugin-doctor

English version: README.en.md

Awesome DSH Plugin

dsh-plugin-doctor 是 DSH 插件生态的诊断与决策工具。它可以搜索社区插件、比较功能重复、识别聚合 bundle 提供的子插件、检查批量安装冲突、审计实际使用量、生成插件全景关系图,并检查本地安装与官方发行版的差距。 灵感来源自 claude code 的命令 "/doctor" 以及无数次下载插件造成的崩溃和冲突。

当前版本:1.1.0。插件要求 Node.js >=22.19,默认只读,不会自行安装、卸载或启动 Web UI。

安装

在运行 DSH 的同一环境中执行:

dsh plugin --profile web add github:white-sand-grand/dsh-plugin-doctor

然后按你自己的方式启动 DSH Web:

dsh web

打开 http://127.0.0.1:3080 后直接用自然语言提问。插件不会替你启动 Web,也不会改变已有 profile 的其他插件。

更新

使用移除后重新添加的确定性流程:

dsh plugin --profile web remove dsh-plugin-doctor
dsh plugin --profile web add github:white-sand-grand/dsh-plugin-doctor

更新后是否启动 Web 由你决定:

dsh web

能做什么

用户需求 工具行为
找一个插件 搜索 GitHub dsh-plugin 主题和降级数据源,返回匹配度、功能标签、stars、更新时间和安装引用
判断功能是否重复 比较说明文本、功能标签和依赖,并给出去重或自研建议
询问插件有什么联系 生成相似度关系图;节点带中文功能解释,连线说明相似度及重叠来源
安装多个仓库前检查风险 预检包名、工具名、Cordis patch 行和 peer 依赖;冲突或无法检查时返回 INSTALL BLOCKED
检查聚合 bundle 展开已安装的 DSH 插件形依赖;子插件标记 providedBy,不会被建议单独卸载
查看实际使用情况 扫描本地已落盘 session 日志,按 dsh.tools 统计调用量、会话数和最近使用时间
查看插件总体格局 生成 Mermaid 关系图,并按 core、active、idle、review 分层
安装前了解官方已知问题 在搜索、推荐或收到仓库链接准备安装时,询问是否检查官方仓库的未关闭 Issue,并显示相关链接和风险
检查本地落后官方多少 对比本地 DSH 版本与官方最新发行版;落后时报告发行版新改动以及可能重复或冲突的已装插件

七个工具

  • plugin_community_search:社区插件搜索与过滤。
  • plugin_similarity_analyze:相似度、重复组和不可替代性分析。
  • plugin_recommend:综合搜索和本地库存做安装、去重或自研决策。
  • plugin_install_guard:批量安装预检,只读不安装。
  • plugin_usage_audit:本地 session 用量审计,不上传日志。
  • plugin_landscape:插件全景与关系图,可把社区候选加入图中。
  • plugin_official_sync:官方版本同步检查,本地落后时报告新改动与重复/冲突插件。

Agent 会根据问题自动选择工具。

安装前官方 Issue 检查

当用户通过社区搜索寻找可安装插件、请求推荐插件,或直接发送多个仓库链接要求安装时,插件会先询问是否检查这些官方仓库的未关闭 Issue。检查内容包括 Issue 标题和正文与用户需求或故障现象的匹配度,并提供官方链接,例如递归文件监视导致 Web UI 卡顿的未解决报告。

用户明确选择“不检查本会话”后,本会话不会再次弹出这个提醒;下一次新会话会重新询问。用户取消弹窗或当前环境没有交互能力时,插件会说明检查未完成,不会把它误报成“没有已知问题”。Issue API 暂时不可用只影响提醒信息,不会绕过 plugin_install_guard 的失败关闭规则。

具体使用例子

安装前先询问官方 Issue(实际故障场景)

我想安装一个 Web UI 插件,先帮我查一下官方仓库有没有未修复的问题,避免再次出现历史加载失败、模型无法选择或文件操作卡住。

插件会先询问是否进行官方 Issue 检查,来避免由于插件本身问题导致用户不得不使用其他 agent 来找出 bug 并尝试修复。举例:实际排查时,官方仓库曾发现与“右侧文件面板卡顿、历史加载失败、整个聊天对话无法继续使用”高度一致的未关闭 Issue:根因并不是远程 Web 插件,而是某个文件面板插件的递归监视行为。报告会显示插件名,例如 @example-org/ui-panel-plugin,并附上官方 [Issue #119]供用户核对。用户在本会话明确拒绝后,后续安装请求不再重复提醒。

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-wallpaper-engine 下一个 Next dsh-workspace →