关于 changelog-gen
用于根据 Git 提交历史生成版本更新日志的技能,面向维护软件发布记录的开发者。它按 Conventional Commits 分类变更,并依据 Semantic Versioning 建议版本号。
主要功能
- 01读取 Git 标签与提交范围
- 02按提交类型分类变更
- 03依据语义化版本建议版本号
- 04生成分组的 CHANGELOG 内容
- 05标注关联 Issue、PR 与 CVE
适用场景
- 01为一次版本发布整理更新内容
- 02从指定 Git 标签范围生成 release notes
- 03判断提交对应的版本号变更
- 04维护持续追加的 CHANGELOG.md
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ laolaoshiren/ claude-code-skills-zh --skill changelog-gen安装后在 Claude Code 中输入/changelog-gen确认已加载。
详细介绍
来自项目 READMEChangelog 自动生成
触发条件
当用户要求生成 changelog、更新日志、版本记录、release notes 时激活此技能。
工作流程
第 1 步:获取 Git 历史
# 先获取最近的 tag,再用 revision range 查询
git describe --tags --abbrev=0
git log --oneline <last-tag>..HEAD
# 或指定范围
git log --oneline v1.0.0..HEAD
# 仓库没有 tag 时,明确选择起始提交或查看全部历史
git log --oneline
第 2 步:分类提交
按 Conventional Commits 分类:
| 分类 | Type 标识 | 图标 |
|---|---|---|
| 新功能 | feat | ✨ |
| Bug 修复 | fix | 🐛 |
| 文档 | docs | 📝 |
| 重构 | refactor | ♻️ |
| 性能优化 | perf | ⚡ |
| 测试 | test | 🧪 |
| 构建/工具 | chore | 🔧 |
| Breaking Changes | 含 BREAKING CHANGE: 或 ! | ⚠️ |
| 安全修复 | fix(security) 或含 CVE | 🔒 |
| 依赖更新 | deps 或 chore(deps) | 📦 |
第 3 步:版本号确定策略
遵循 Semantic Versioning 规则:
| 变更类型 | 版本变化 | 示例 |
|---|---|---|
| Breaking Changes | 主版本 +1 | 1.2.0 → 2.0.0 |
| 新功能 (feat) | 次版本 +1 | 1.2.0 → 1.3.0 |
| Bug 修复 (fix) | 修订版本 +1 | 1.2.0 → 1.2.1 |
| 安全修复 (fix(security)) | 修订版本 +1(紧急发布) | 1.2.0 → 1.2.1 |
判断依据:
- 提交信息含
BREAKING CHANGE:或 type 后加!(如feat!:)→ 主版本 - 存在
feat提交 → 次版本 - 仅
fix/docs/chore等 → 修订版本
第 4 步:生成 CHANGELOG
输出格式
# Changelog
## [1.3.0] - 2026-06-17
### ⚠️ Breaking Changes
- 移除废弃的 `/api/v1/users` 端点,统一使用 `/api/v2/users` (#130)
### ✨ 新功能
- 新增用户认证模块 (#123)
- 支持 OAuth2 登录 (#124)
- 新增批量导出功能 (#128)
### 🔒 安全修复
- 升级 lodash 修复原型污染漏洞 CVE-2025-XXXX (#129)
### 🐛 Bug 修复
- 修复分页查询偏移量错误 (#125)
- 修复并发写入导致的数据竞争 (#127)
### ⚡ 性能优化
- 优化大列表渲染性能,减少 50% 内存占用 (#126)
### 📝 文档
- 更新 API 文档 (#131)
### 📦 依赖更新
- 升级 axios 1.6.0 → 1.7.0 (#132)
注意事项
- Breaking Changes 必须放在最前面,加粗突出显示
- 每条记录关联 Issue/PR 编号,便于追溯
- 安全修复需注明 CVE 编号(如有)
- 版本号应与 git tag 保持一致
- 如果是预发布版本,使用
-beta.1、-rc.1后缀 - 可维护一个
CHANGELOG.md文件,每次 release 追加到顶部
评论
支持 Markdown