GitHub 仓库尽职调查(精简版)
网络访问(已声明)
向 api.github.com/repos/<owner>/<repo> 发起一次 GET 请求——公共、无需认证(共享限制 60 req/hr)。无其他主机。不发送任何数据;唯一请求是对公共仓库元数据的读取。
边界
- 仅限元数据——不克隆仓库,不访问代码。
- "陈旧"/"安静"是基于
pushed_at的启发式判断;私有活动不可见。 - 未认证的速率限制较低——不要循环检查多个仓库;如需批量检查,建议使用完整版本或提供令牌。
1. 运行
需要 Node 18+,零依赖。
node <skill-dir>/scripts/dd.mjs owner/repo
node <skill-dir>/scripts/dd.mjs https://github.com/owner/repo
输出 JSON 到标准输出;请求失败时退出码为 1,参数错误时退出码为 2。
2. 阅读报告
stars、lastPushDaysAgo、license(SPDX 标识或 null)、archived、health。- 标志:
archived: true、lastPushDaysAgo > 365、license: null、声称流行的项目但stars极低。
3. 报告
<owner>/<repo>: <health>
stars X · last push Y days ago · license <spdx|none> · archived <yes/no>
<一行建议:采用 / 锁定并监控 / 避免>
精简版 vs 完整版
完整的 github-repo-due-diligence 版本在相同单请求开销下,额外提供 fork 数、开放问题数、默认分支和主要编程语言信息。