git-auto-release
在需要根据本地改动自动完成提交、推送和语义化打标时使用,尤其适用于发布流程要求 CHANGELOG 存在对应版本条目的场景。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
在需要根据本地改动自动完成提交、推送和语义化打标时使用,尤其适用于发布流程要求 CHANGELOG 存在对应版本条目的场景。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
在任何创造性工作之前必须使用此技能——创建功能、构建组件、添加功能或修改行为。在实现之前先探索用户意图、需求和设计。
当你有规格说明或需求用于多步骤任务时使用,在动手写代码之前
当创建新技能、编辑现有技能或在部署前验证技能是否有效时使用
创建具有高设计质量、独特的生产级前端界面,或应用 Anthropic 官方品牌视觉风格指南。当用户要求构建 Web 组件、页面、应用程序时,生成富有创意且打磨精良的代码;当涉及品牌色彩、风格指南或公司设计标准时,应用 Anthropic 的外观和感觉。
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
当用户询问 VS Code API 的定义、methods、interfaces、events、types,或希望了解可用的 VS Code APIs 时使用。 触发场景包括类似 “what does vscode.X do”、“how to use VS Code API”、“VS Code type definition”,或检查 API compatibility 的问题。
| name | git-auto-release |
| description | 在需要根据本地改动自动完成提交、推送和语义化打标时使用,尤其适用于发布流程要求 CHANGELOG 存在对应版本条目的场景。 |
该技能用于规范一套完整发布流程:分析当前改动、生成合适提交、推送分支更新、计算下一个语义化版本标签、更新变更日志条目并推送标签。
它适用于通过 v* 标签触发自动发布、且要求 CHANGELOG.md 中必须包含对应 [x.y.z] 版本段落的仓库。
以下场景不建议使用:
执行:
git rev-parse --is-inside-work-tree
git fetch --tags --prune
git status --short
git rev-parse --abbrev-ref HEAD
Rules: 规则:
默认行为:
git add -A
如果用户要求部分发布,只暂存指定路径。
检查已暂存内容:
git diff --cached --name-status
git diff --cached -- .
提交类型判定:
标题格式:
<type>: <short summary of main change>
如果是混合改动,按以下优先级选择最高影响的类型: feat > fix > refactor > docs > chore。
查找最近语义化标签:
git describe --tags --abbrev=0 --match "v[0-9]*.[0-9]*.[0-9]*"
版本基线规则:
版本提升规则:
破坏性变更信号(满足任一即可):
语义化版本计算:
标签格式必须是 v。
检查目标版本条目是否已存在:
git grep -n "^## \[<newVersion>\]" CHANGELOG.md
如果不存在,在当前最上方已发布版本之前新增段落(通常位于 ## [Unreleased] 之后):
## [<newVersion>] - <YYYY-MM-DD>
### Changed
- <auto-generated summary from staged diff>
要求:
将所有已暂存发布改动(代码 + changelog)一起提交:
git commit -m "<type>: <summary>"
git push <remote> <branch>
git tag "v<newVersion>"
git push <remote> "v<newVersion>"
git status --short
git log --oneline --decorate -n 5
git ls-remote --tags <remote>
成功标准:
| 观察到的改动 | 提交类型 | 版本提升 |
|---|---|---|
| 破坏性 API 或行为变更 | feat! 或 refactor! | Major |
| 新增能力 | feat | Minor |
| 仅缺陷修复 | fix | Patch |
| 仅重构/文档/维护 | refactor/docs/chore | Patch |
完成后使用如下固定格式报告:
Release completed.
- Branch: <branch>
- Commit: <sha> <subject>
- Previous tag: <tag or none>
- New tag: v<newVersion>
- Bump reason: <major|minor|patch + why>
- Pushed: branch and tag
- Changelog: CHANGELOG.md includes [<newVersion>]