用途:为 GitHub 仓库起草或更新面向用户与升级者的 Release Notes,帮助读者理解版本意义并安全升级,同时保留精确的变更记录。
主要能力:读取仓库发布规范、版本清单、近期 Release Notes 与用户提供的基线;解析上一标签到目标标签或提交的精确变更范围;从提交中提取 PR 引用并核对重复、遗漏、回滚与发布准备类 PR;调研新功能、重要修复、破坏性变更与升级动作;按自适应结构撰写草稿并校验版本名、标签 SHA、比较范围、PR 数量与 Full Changelog 链接。
使用方式:默认只写本地 Markdown 草稿,不创建、编辑、发布或删除 GitHub Release。解析范围可用 git fetch --tags、git rev-parse <previous-tag>^{commit}、git log --format='%H%x09%s' <previous-tag>..<target>;判断祖先关系可用 git merge-base --is-ancestor <previous-stable-tag> <target>。仅在用户明确授权发布时,才使用 gh release edit <tag> --notes-file <draft-file> 或 gh release create,并在写入后回读校验。
适用场景:常规版本发布、预发布转稳定版、大版本升级说明、多模块仓库版本对齐说明。
限制:目标标签不存在时只能标注为临时范围,不能声称 Full Changelog 链接已验证;不得仅凭标题推断破坏性行为;不得把面向评审的 Release PR 描述原样复制;不得擅自改动资产、标签、标题、草稿或预发布状态;缺失信息暂未提供。