仓库指标

社区健康

inspect.software 如何衡量社区健康——README、许可证、贡献指南、行为准则与议题/PR 模板。占总指数的 6.3%。

方法论 v1.13.0更新于 2026-07-14

社区健康衡量一个仓库是否为接纳用户与贡献者做好了准备:那些向新来者说明项目是什么、依据什么条款可以使用、以及如何参与的标准文件。这些文件正是代码库与社区之间的分界。

  • 类别:社区与采用(类别内占 35%)
  • 在总指数中的权重:6.3%
  • 指标键名:community_health

数值如何计算

对标准文件逐项加权核查,每项或存在或缺失(许可证一行还可获得部分分值——见下文):

组成部分权重
README22.5
许可证22.5
CONTRIBUTING 指南18
行为准则13.5
议题模板7.2
PR 模板6.3

许可证如何检测

许可证的存在只检测一次,由三个来源共同判定:仓库自身的许可证元数据、 GitHub 的社区档案,以及 OpenSSF Scorecard 公开发布的、工具中立的 License 检查。只要任一来源发现了文件即计为存在——这些来源在约 1% 的仓库上存在分歧,而单个端点不可用不应导致许可证被报告为缺失。

判定结果为以下三种状态之一:

状态含义计分
标准可识别的许可证,由 SPDX 代码标识22.5
自定义存在许可证文件,但其文本不是可识别的许可证16.9
没有任何来源发现许可证文件0

自定义许可证是真实的许可证,可获得大部分权重。它不能获得全部权重:自动化工具无法识别的许可证是采用过程中的实际障碍,因为策略工具、企业法务审查与软件包注册表都依赖可识别的标识符,而读者若不亲自阅读文本便无法确定自己被允许做什么。GitHub 将这种情形报告为 NOASSERTION——即找到了许可证但无法归类,这与完全没有许可证并不相同。

Scorecard 的结果仍是安全态势指标的组成部分;在此处它只是三项输入之一,仅以 License 呈现。

这些文件为何承载权重

  • README 与许可证是承重结构。没有 README 的仓库无法被采用;没有许可证的仓库在多数组织中在法律上无法使用——没有任何下游法务团队会批准一个使用条款未定义的依赖。二者合计承载该指标一半的权重。
  • CONTRIBUTING 与行为准则把偶然的兴趣转化为持续的参与,直接滋养维护者韧性所衡量的延续性。
  • 模板提升传入议题与拉取请求的信号质量,减轻维护者的分诊负担 ——对项目所能维持的响应能力而言,这是一个虽小但真实的因素。

如何解读结果

  • 该清单与规模无关:一个诞生一周的项目可以在获得第一个星标之前达到 100 分,而一个缺失许可证的著名项目则明显读出不完整。这正是设计意图——该指标度量的是准备程度,而非声量。
  • 被核验的是存在与否,而非文字质量——参见 信号,而非担保中的测量诚实性说明。

提升数值

每个组成部分都可在一小时内直接落实:

  • 编写一份 README,涵盖项目用途、安装方式与最小示例。
  • 添加带有可识别 SPDX 许可证的 LICENSE 文件。
  • .github/ 下添加 CONTRIBUTING.mdCODE_OF_CONDUCT.md 与议题/PR 模板。

这通常是整个方法论中最容易快速提升的指标。

相关条目:社区与采用 · 文档