比较两个 DSH 插件本该是件无聊的事。但在插件之间做选择通常并不无聊,因为多数决定靠的是直觉。一套站得住的插件比较,必须去评那些能预测插件半年后还能不能用的东西;而「插件 vs 插件」的选择,最后应该落在一个你能向同事解释的数字上。下面这套框架有五个因子,各自带权重,做的就是这件事。
问题
DSH(DeepSkinHub)有数百个插件。当两个看起来一样好时,多数人只能靠猜。加上一点结构,猜测就变成一个事后能解释的决定。
比较框架
1. 维护状态
| 因素 | 看什么 | 危险信号 |
|---|---|---|
| 最近提交 | 上次更新是什么时候? | 超过 6 个月 |
| 开放 issue | 有多少没解决? | 超过 20 个 |
| PR 活动 | 合并还在进行吗? | 3 个月没有合并 |
| 贡献者 | 有多少人在活跃? | 只有一个人 |
2. 文档质量
| 因素 | 看什么 | 好迹象 |
|---|---|---|
| README | 是否完整? | 涵盖安装、配置和使用 |
| 示例 | 有能跑的示例吗? | 至少 3 段代码 |
| API 文档 | API 有文档吗? | 有完整参考 |
| 变更日志 | 变更是否记录? | 条目定期更新 |
3. 安全评分
| 因素 | 看什么 | 关键点 |
|---|---|---|
| 网络访问 | 是否发起外部请求? | 有就要仔细看 |
| 文件系统访问 | 能读写哪些路径? | 任何路径都是高风险 |
| 权限 | 需要哪些系统权限? | 管理员或 root 是危险信号 |
| 代码审计 | 是否经过审计? | 没有审计就按有风险处理 |
4. 社区与采用度
| 因素 | 看什么 | 好迹象 |
|---|---|---|
| 下载量 | 多少安装? | 超过 1,000 算站稳了 |
| 评分 | 平均是多少? | 超过 4.0 说明口碑好 |
| 评论 | 是否近期且具体? | 近期加具体说明真有人在用 |
| GitHub stars | 多少 star? | 超过 100 说明有关注 |
5. 性能影响
| 因素 | 看什么 | 可接受 |
|---|---|---|
| 内存占用 | 吃掉多少内存? | 低于 100 MB |
| CPU 占用 | 对系统性能的影响? | 空闲低于 5%,活跃低于 20% |
| 启动时间 | 初始化要多久? | 低于 5 秒 |
| 冲突可能 | 是否动到共享资源? | 低就安全 |
决策矩阵
每个因子给 1 到 5 分,再乘以权重。
| 因素 | 权重 | 插件 A | 插件 B |
|---|---|---|---|
| 维护 | 25% | ||
| 文档 | 15% | ||
| 安全 | 30% | ||
| 社区 | 15% | ||
| 性能 | 15% | ||
| 总计 | 100% |
总分更高的那个胜出。如果两者只差几分,矩阵其实也完成了任务,因为它告诉你这个选择足够接近,选哪个都能用。
一个例子:AI Toolkit vs Model Router
| 因素 | AI Toolkit | Model Router |
|---|---|---|
| 维护 | 活跃,每周提交 | 活跃,每月提交 |
| 文档 | 全面 | 良好 |
| 安全 | 无网络访问 | 有限网络访问 |
| 社区 | 500+ 下载 | 200+ 下载 |
| 性能 | 轻量 | 轻量 |
| 胜出 | AI Toolkit,对多数人 | Model Router,有路由需求时 |
什么时候选哪个
- 需要维护最勤的选项时,选插件 A
- 文档对你的流程很关键时,选插件 A
- 插件 B 有插件 A 缺的功能时,选插件 B
- 插件 B 的社区采用度明显更高时,选插件 B
常见问题
两个插件打平了怎么办?
先比安全,再比维护。这两项出问题最响,补救的代价也最大。
已经装了的插件也要打分吗?
要,打一次就够。这是最快找出配置里哪个插件在悄悄拖后腿的办法。
多久重新评一次?
任何一次改变插件功能边界的发版之后,以及平时每隔几个月。插件可以在不改名字的情况下换人维护。
并排比较不是为了永远选出一个赢家,而是把「当初为什么选它」写下来,好让半年后还能判断这个理由是否仍然成立。本站每个评分都出自同一套加权模型。想看每个分数段怎么来的,读 /blog/dsh-quality-score-decoded;如果最关心安全那一列,读 /blog/plugin-supply-chain-security-team-enforcement。