SuperAPI AI 工具集

changelog

编程与开发

查看项目

更新于 10-15 18:04

技能介绍

用途

该技能用于从 git 提交记录和冲刺数据自动生成变更日志,并同时产出两个版本:面向团队的内部变更日志,以及面向玩家的对外变更日志。它属于游戏开发工作流中的发布文档环节,与 /patch-notes、/release-checklist 等技能配合使用。

主要能力

  • 历史归属校验:在生成前先读取注入的近期提交主题,将每条提交分类为 Game(机制、内容、平衡、美术、音频、UI 或其中的缺陷)、Framework / maintenance(涉及技能、钩子、智能体、测试计划、CI 或框架自身文档)或 Unclear(按 Framework 处理)。若范围内没有任何属于本游戏的提交,则判定为 BLOCKED 并停止,避免把框架内部提交误写成玩家可见的发布文案。
  • 参数解析:读取目标版本号或冲刺编号。给定版本时使用对应的 git 标签;给定冲刺编号时使用冲刺日期范围。通过 git rev-parse --is-inside-work-tree 确认仓库已初始化,否则提示用户并优雅中止。
  • 变更数据收集:读取自上一个标签或发布以来的 git log(git log --oneline [last-tag]..HEAD);若无标签则显式限定范围(git log --oneline -n 100),不盲目回退到完整日志。同时读取 production/sprints/ 下相关周期的冲刺报告,以及 design/gdd/ 下已完成的设计文档。
  • 变更归类:将每条变更归入新增功能、改进、缺陷修复、平衡调整、技术债/重构、已知问题、杂项之一。技术债/重构仅出现在内部日志,绝不进入玩家版本。对每条提交检查是否含任务 ID 或故事引用(如 [STORY-123]、TR-、#NNN 等),统计缺少任务引用的提交数。
  • 内部变更日志:包含版本、日期、覆盖的冲刺、提交数与哈希范围,并按类别列出功能名称、技术描述、受影响系统、提交哈希、负责人和设计文档链接;平衡调整记录旧值到新值及设计意图;指标部分统计总提交数、变更文件数、新增行数、删除行数、缺少任务引用的提交数。
  • 玩家变更日志:以玩家可理解的语言描述可体验到的变化,聚焦体验而非实现;缺陷修复描述玩家遇到的症状而非代码问题;平衡调整附带设计意图;已知问题如实说明并提供变通方案(如有)。
  • 文件写入:生成后询问用户是否写入 docs/CHANGELOG.md,提供追加(推荐,若文件已存在)、覆盖、不写入三个选项。写入成功后给出 CHANGELOG WRITTEN 判定,用户拒绝则给出 COMPLETE 判定。

使用方式

该技能以斜杠命令形式调用,可传入目标版本或冲刺编号。运行时会自动解析自动化模式(modes.automation,按 project.local.yaml → project.yaml → 默认 collaborative 的顺序),所有 AskUserQuestion 调用和文件写入遵循 .claude/docs/automation-modes.md 的规则:collaborative 始终询问、guided 仅重大事项询问、autonomous 记录并继续,automation_always_ask 类别始终提示。

适用场景

适用于采用该框架的游戏项目在版本发布或冲刺结束时生成发布说明,尤其适合需要同时维护内部技术记录和对外玩家公告的团队。

限制

  • 依赖 git 历史:非 git 仓库或尚无提交时判定为 BLOCKED,无法生成。
  • 若近期提交中没有属于本游戏的提交,同样判定为 BLOCKED。
  • 无标签时提交范围限定为最近 100 条;若 100 条不足以覆盖,需用户提供起始引用,而非盲目扩大范围。
  • 玩家版本不得暴露内部代码引用、文件路径或开发者姓名。
  • 提交信息不清晰时需结合相关文件和冲刺数据判断上下文。
  • 关于收费、价格、平台等信息,资料中暂未提供。