omdsh-dev/dsh-plugin-check 预览 preview

omdsh-dev/dsh-plugin-check

Plugin插件 Native原生 ⭐ 25 MIT Runtime & Injection运行时与注入

DSH 插件健康检查工具:扫描插件仓库的清单协议 / patch 格式 / 构建陷阱 / hub 收录状态,零依赖只读,注册 plugin_check 工具

Project Overview项目介绍

dsh-plugin-check is a native DSH plugin that provides health checking functionality for other DSH plugins. It scans local DSH plugin repositories to diagnose issues related to bundle manifests, patch formatting, common build traps, and DSH hub inclusion status, then outputs a structured compliance report with suggested fixes. The tool operates in read-only mode, so it never modifies or builds the repository being checked, and only relies on Node.js built-in modules to function. To install it via the recommended Profile Bundle method, you can run dsh plugin --profile <profile-name> add github:omdsh-dev/dsh-plugin-check in your terminal.

The tool offers three core actions: check a single plugin repository, scan all dsh-prefixed plugin repositories under a parent directory, and output a full list of checks with their pass/fail criteria. It includes 33 total checks split into five categories, and automatically adjusts which checks to run based on the detected type of the plugin being scanned. It is intended for use by DSH plugin developers, can be integrated into continuous integration pipelines, or called directly by the DSH model to catch compliance issues before plugin submission or public release.

dsh-plugin-check is released under the open-source MIT license, and has no external production dependencies beyond the core built-in Node.js modules. It is officially verified to work with DSH version 0.1.5-rc.1 and newer, and the repository includes 38 test cases to validate that checks are accurate and avoid unnecessary false positives. After successful installation, the plugin_check tool is registered with the row ID tool-plugin-check, and all results are output as standardized JSON for easy parsing by models or automated workflows.

这是一款专为 DSH 生态开发的原生插件健康检查工具,用于扫描 DSH 插件仓库,诊断清单协议、patch 格式、构建陷阱、 hub 收录状态等问题,输出合规报告与修复建议。工具全程只读,不会修改或构建被检查的仓库,仅依赖 Node.js 内置模块完成文件读取和扫描,目标是将已知的插件开发踩坑点转化为可自动执行的检查门禁。

工具支持三类操作:检查单个插件仓库、批量扫描父目录下所有插件仓库、输出全部检测项清单与判定标准。总共覆盖 33 项检测,分类为清单协议、patch 格式、构建陷阱、生态合规、hub 收录五类,会根据插件形态自动匹配适用的检测集。适合插件开发者、CI 流程和 DSH 模型用来提前拦截合规性问题。

本工具遵循 MIT 许可,零业务依赖,仅使用 Node.js 内置 fs/path/child_process 模块。可以通过 DSH 官方的 Profile Bundle 方式一键安装,也支持本地构建 tarball 安装,兼容 DSH 0.1.5-rc.1 及以上版本。安装后会注册 plugin_check 工具,输出标准化 JSON 格式结果。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 note1 项提示
  • 25 stars - an early-stage project星标 25,属于早期项目
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:omdsh-dev/dsh-plugin-check

把 omdsh-dev/dsh-plugin-check 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-plugin-check

English

DSH 插件健康检查工具 —— 扫描插件仓库,诊断清单协议 / patch 格式 / 构建陷阱 / hub 收录状态,输出合规报告与修复建议。只读,不修改、不构建被检查仓库。

License

动机

组织内插件仓库持续增长,作者踩过的坑(cordis 双副本、tsconfig 三件套、patch name 不一致、产物 .ts 残留——运行时必崩)本可以自动化拦截。本工具把全部实测踩坑变成可自动检查的门禁:模型或 CI 直接对仓库目录跑一次 plugin_check,拿合规报告与修复建议。

安全模型

  • 只读:仅 readdir/stat/readFile,绝不修改或构建被检查仓库
  • 零业务依赖:仅 node 内置模块(fs/path/child_process)
  • hub 检查离线优先:先读本地 hub catalog(DSH_HUB_SOURCE 或 cwd/hub/ 下),再通过 gh 读取公开 omdsh-dev/dsh-hub-workshop/catalog.json;兼容 dsh-hub-index/v0.4 与旧 repos[].name;全部失败静默降级 skipped(报告如实标注,不算警告)
  • 不执行 tsc:构建陷阱全部静态文本扫描(快、无副作用)

工具声明

注册 plugin_check 工具(@omdsh-dev/dsh-plugin-check,row id tool-plugin-check),统一输出 JSON 文本。

参数 类型 必填 说明
action string ✅ check / scan / schema
path string 插件仓库目录(check)或父目录(scan);默认当前工作目录
strict boolean strict 模式:warning 升级为 error 影响 verdict,默认 false

Actions

action 功能
check 检查单个插件仓库目录 → 合规报告(verdict/errors/warnings/suggestions)
scan 扫描父目录下所有 dsh-* 插件仓库(有 package.json 者)→ 汇总报告
schema 输出全部检测项清单与判定标准(按形态适用的检测项矩阵,供模型/人核对)

形态识别与检测项(按形态适用,33 项)

类别 error warning
清单协议 no-manifest / invalid-name-format / missing-main-or-types / no-patch incomplete-files / missing-peer / no-bundle-decl
patch 格式 malformed-patch / patch-name-mismatch / duplicate-row-id unexpected-fields
构建陷阱 no-source-entry / no-tsconfig / missing-ts-ext-imports / lib-layout-mismatch / stale-ts-imports missing-rewrite-imports / types-path-mismatch / implicit-node-types / no-build-script
生态合规(Profile Bundle) core-row-id missing-profile-install-example / manual-install-only / core-modification-required
hub 收录 — not-in-hub(hub-skipped 为 info)

生态合规四项(immediate-adjustments-bundle-profile-plan §4.5):

  • core-row-id:patch 条目使用官方核心 row(tools/session/llm/web/permission);
  • missing-profile-install-example:README 缺 dsh plugin --profile ... add 示例;
  • manual-install-only:无法通过标准 Profile Bundle 安装(无 patch 或 README 无示例);
  • core-modification-required:默认安装流程要求修改 DSH 核心(git apply / cp 进 monorepo;明确标注"手动安装与旧版本兼容"的段落不计入)。

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-session-notification 下一个 Next dsh-launcher →