SuperPlane Changelog 是一个用于生成 SuperPlane 项目更新日志的技能。当用户希望获取在指定时间范围内合并到 main 分支的内容摘要时,可以使用此技能。它支持多种时间范围表达方式,例如“自周一以来”“最近5天”“自上周五以来”“2月3日至今”“自 v0.6.0 以来”或具体日期。
用途: 该技能的主要用途是自动生成结构化的更新日志,帮助团队和用户了解项目在特定时间段内的变化。它适用于发布说明、内部沟通或用户公告等场景。
主要能力:
- 确定时间范围:根据用户输入计算起始和结束时间。对于日期范围,起始为当天午夜,结束为今天;对于版本标签范围,起始为标签的精确提交时间戳,以确保同一天但早于标签的提交不被包含。
- 获取提交:使用 git log 命令,根据时间范围筛选 main 分支的提交,并格式化输出提交哈希、日期和主题。
- 分类提交:将提交分为新集成、新组件和触发器、改进、安全修复和错误修复。排除所有 chore 提交,即使它们看似面向用户。新集成指在时间窗口内完全添加的集成(基础集成注册和首批组件)。新组件和触发器指在时间窗口内首次出现的组件或触发器。改进指非 chore 提交中的面向用户的产品变更,需用用户视角描述。安全修复指与安全相关的提交,如漏洞修复,需单独列出。错误修复指其他修复和可靠性改进,但排除仅影响本窗口新增组件或集成的修复。
- 解析名称:通过检查 pkg/integrations// 和 pkg/components// 中的代码,确定组件和触发器的名称及其所属集成。
- 格式化输出:遵循严格的格式规则,如不使用破折号、不使用“我们”的表述、新集成部分仅列出集成名称、新组件部分使用“集成: 组件1, 组件2”格式、改进部分使用粗体标签加简短描述、安全部分包含 CVE 标识(如有)、错误修复部分以“Fixed: ”开头。
- 生成文件:将更新日志写入 tmp/ 目录下的 Markdown 文件,文件名包含时间范围,如 tmp/changelog_YYYY-MM-DD_to_YYYY-MM-DD.md。文件结构包括标题、时间范围说明、各分类的条目列表,并确保计数准确。
使用方式: 用户需提供时间范围,技能会推断或询问。然后运行 git log 命令获取提交,进行分类和解析,最后生成 Markdown 文件。技能会告知用户文件路径,并提示用户可以审阅或编辑。
适用场景: 适用于需要定期生成 SuperPlane 更新日志的团队,特别是在发布新版本或进行阶段性总结时。它可以帮助快速整理变更内容,确保日志的一致性和准确性。
限制: 该技能依赖于 git 仓库和提交历史,需要访问代码库。它不包含任何收费、价格或平台信息。具体功能细节和效果暂未提供。