SuperAPI AI 工具集

github-contribution-period-analysis

数据与分析

查看项目

更新于 10-16 02:25

技能介绍

用途

GitHub Contribution Period Analysis 用于针对单个目标 GitHub 用户,在指定的 UTC 时间窗口内构建一份基于证据的 Markdown 报告,聚焦于实际代码贡献信号,即已合并的 PR 与 commit 活动。分析范围覆盖用户自己的仓库以及其他仓库,但受凭证访问权限限制。

主要能力

报告纳入的贡献类型包括:

  • 作者本人提交的已合并 PR。
  • 由目标用户执行合并的 PR(维护者合并工作)。
  • 作者本人提交的 commit。

报告排除的活动类型包括:评论、审查、star、watch、fork。

生成的报告包含以下内容:

  • 范围与覆盖说明。
  • 汇总指标。
  • 从 PR/commit 证据推断的实质性工作分类。
  • 带代表性证据链接的工作内容亮点。
  • 仓库分解。
  • 每个变更仓库的具体改动细节(针对每一个发生变更的仓库)。
  • 贡献时间线。
  • Top 贡献表格。
  • 包含 PR/commit URL 的证据附录。

使用方式

  1. 准备 GitHub API 访问所需的认证。
  2. 运行 scripts/github_contribution_report.py,传入目标用户与时间窗口。
  3. 查看生成的 Markdown 报告并检查证据链接。

命令示例:

python3 scripts/github_contribution_report.py \
  --user <github-login> \
  --start 2026-03-01 \
  --end 2026-03-08 \
  --output /tmp/github-contribution-report.md

适用场景

适用于需要按时间段评估某个 GitHub 用户实际代码贡献(合并 PR 与 commit)的场景,例如生成周期性的贡献报告、审查维护者的合并工作、或汇总某人在多个仓库中的具体改动。

限制

  • 仅 SSH 密钥用于 git 传输,不能直接授权 GitHub REST API 调用。
  • 私有仓库覆盖需要经过认证的 API 访问,通常通过 GITHUB_TOKEN/G_TOKEN 或 gh auth token。
  • GitHub Search API 每个查询有 1000 条上限。对于非常活跃的用户,需要拆分时间范围并运行多次报告。

参考资料与脚本

参考资料:

  • references/env.md
  • references/data-model.md
  • references/markdown-template.md

脚本:

  • scripts/github_contribution_report.py