mcpField
A
app-store-changelog

app-store-changelog

github.com/patrickserrano营销与增长1358 次安装41 周前更新
代码仓库

关于 app-store-changelog

app-store-changelog 是一项工作流技能,可将指定标签之后的 Git 提交整理为面向用户的 App Store 更新说明。它筛选用户可见的变更、按主题归类,并检查条目是否对应实际改动。

主要功能

  1. 01收集标签之间的提交
  2. 02识别用户可见的变更
  3. 03按主题归类变更
  4. 04撰写简洁的更新说明条目
  5. 05核对条目与实际改动

适用场景

  1. 01为新版本准备更新说明
  2. 02将提交记录改写为通俗更新内容
  3. 03从说明中排除仅供内部使用的改动

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/patrickserrano/skills --skill app-store-changelog

安装后在 Claude Code 中输入/app-store-changelog确认已加载。

详细介绍

App Store 更新日志

概述

根据上一个标签以来的 Git 历史记录生成全面的面向用户的更新日志,然后将提交内容整理成清晰的 App Store 版本说明。

工作流

1) 收集变更

获取上一个标签以来的提交:

# Find the last tag
git describe --tags --abbrev=0

# List commits since last tag
git log $(git describe --tags --abbrev=0)..HEAD --oneline

# Or with more detail
git log $(git describe --tags --abbrev=0)..HEAD --pretty=format:"%h %s" --no-merges

如果要比较特定引用:

git log v1.2.3..HEAD --oneline --no-merges

如果没有标签:

git log --oneline --no-merges -50  # Last 50 commits
2) 判断对用户的影响

浏览提交并找出用户可见的变更:

包括:

  • 新功能
  • UI 变更
  • 行为变更
  • 用户会注意到的错误修复
  • 带来明显效果的性能改进

排除:

  • 重构
  • 依赖项升级
  • CI 变更
  • 开发者工具
  • 内部日志记录
  • 分析功能变更(除非影响用户隐私或行为)

按主题对变更分组:

  • 新增:新功能和能力
  • 改进:对现有功能的增强
  • 修复:错误修复
3) 起草 App Store 版本说明

撰写简短、突出益处的要点:

  • 使用清晰的动词和浅显的语言
  • 避免内部术语、工单 ID、文件路径
  • 除非用户指定其他长度,否则优先写 5-10 条
  • 每条要点写成一个句子,并以动词开头

语言指南:

  • 将技术术语转换成面向用户的描述
  • 避免使用:“API”、“重构”、“nil”、“崩溃日志”、“依赖项”
  • 使用:“改进”、“新增”、“修复”、“更新”
  • 保持时态一致(现在时或过去时)

示例:

  • “新增从个人资料菜单切换账户的功能。”
  • “提升了慢速网络下时间线的加载速度。”
  • “修复了媒体附件无法全屏打开的问题。”
4) 验证
  • 每条要点都对应范围内的一项实际变更
  • 没有重复描述同一项变更的要点
  • 没有内部术语或文件路径
  • 最终列表符合 App Store 文本限制(如果有提供)

输出格式

What's New

• Added [feature description]
• Improved [enhancement description]
• Fixed [bug fix description]

或按章节组织:

What's New in [Version]

New
• [Feature 1]
• [Feature 2]

Improved
• [Enhancement 1]

Fixed
• [Bug fix 1]
• [Bug fix 2]

快捷命令

# Full workflow: commits since last tag with files changed
git log $(git describe --tags --abbrev=0)..HEAD --stat --no-merges

# Just commit messages
git log $(git describe --tags --abbrev=0)..HEAD --pretty=format:"- %s" --no-merges

# List all tags
git tag -l --sort=-v:refname

# Compare two specific tags
git log v1.1.0..v1.2.0 --oneline --no-merges

提示

  • 如果变更含义不明确,请请求澄清
  • 删除明显仅供内部使用的变更
  • 如无法确定,仅在用户可见时将其描述为“小幅改进”
  • 如果有提供,请遵守各应用商店的字符数限制

评论

支持 Markdown