Agent Skills
返回列表
GitHub 星标增长曲线

GitHub 星标增长曲线

数据分析 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_fccf428b/github-stars。

技能介绍

要解决的问题

GitHub 仓库页只给一个累计的 star 总数。产品发布、Show HN 或 Product Hunt 冲榜之后,这个数字只是一条没有形状的线:增长集中在哪一天、哪一个小时、发布后多久出现拐点,全都看不出来。逐个翻 stargazer 列表去猜时间戳,既慢又不准确,也没有汇总视图。

核心能力

github-stars 直接调用 gh api,并带上 application/vnd.github.star+json 这个 Accept 头,让每个 stargazer 附带 starred_at 时间戳。脚本会分页取回全部 stargazer,把每条时间戳按指定时区(--tz,默认 America/Los_Angeles)换算,再分别按天和按小时分桶,最终在终端渲染两张 ASCII 图表:一张是较长周期的按天趋势(--days,默认 14 天),一张是最近几天的按小时拆解(--hours-days,默认 2 天)。

仓库名可以用 facebook/react 这种完整形式精确指定,跳过搜索;也可以只写一个词,脚本会按 star 数解析出最靠前的仓库。

使用方式

脚本就放在 skill 目录旁边,从该目录运行即可。每次执行都会重新拉取最新数据,不需要常驻进程;想观察发布效果,按固定间隔重复执行、对比两次结果就行。间隔建议不低于约 15 分钟,以免触发限流。

注意点

  • 40,000 星上限:GitHub 只返回前 4 万个 stargazer 的 starred_at,超出之后按天/按小时的细分会缺失,脚本会给出警告;星标总数本身仍然准确。
  • 净增量而非总量:stargazer 列表反映的是当前仍然存在的 star,取消 star 不会被记录。两次检查之间总数持平,可能掩盖 +1/-1 的流转;如果实时 stargazers_count 与时间戳计数不一致,说明发生过 un-star。
  • 时区与夏令时:换算通过 Python 标准库 zoneinfo 完成,夏令时自动处理,不要手工写死 UTC 偏移。
  • 认证要求:未认证调用会撞上较低的速率限制,大仓库可能翻页到一半失败,因此 gh 需要先完成登录(gh auth status),Python 需要 3.9 以上版本。

使用场景

  • 发布新版本后,想确认星标集中在哪一天才需要复盘推广动作
  • 准备提交 Show HN 或 Product Hunt 前,想先检查仓库最近的按小时增长曲线是否健康
  • DevRel 活动结束后,需要按天对比活动前后的星标增量
  • 监控仓库增长时,需要区分当天各小时的变化,而不是只看总数

适合人员

  • 需要复盘开源项目推广效果的开发者与维护者
  • 负责 DevRel 和增长实验、需要按天或按小时观察指标的工程师
  • 写技术博客时要用真实星标数据说明发布效果的作者
  • 希望通过公开数据验证社区反响的独立开发者