← Back to list

release
by bugwz
chrome/firefox/edge browser proxy assistant plugin. 谷歌/火狐/微软浏览器代理助手插件.
⭐ 1🍴 0📅 Jan 25, 2026
SKILL.md
name: release description: 自动化处理项目版本发布流程,包括收集版本号、提取变更日志、智能分类、生成 Release Notes 并创建 Git 标签 license: MIT compatibility: opencode
What I do
自动化处理项目版本发布流程:
- 确认版本号 - 向用户请求版本号并验证格式
- 获取变更记录 - 提取自上次标签以来的所有 Git 提交
- 智能分类 - 将变更归类为:特性、问题修复、其他
- 翻译总结 - 将英文 commit message 转化为中文描述
- 生成 Release Notes - 在 release/ 目录创建版本日志文件
- 更新版本号 - 更新 manifest 和 popup.html 中的版本号
- 提交代码 - 必须经用户确认后才能提交本地变更
- 创建标签 - 必须经用户确认后才能创建 Git 标签
Critical Rules (必须严格遵守)
绝对禁止自动操作
- 禁止在未获得用户明确确认前执行任何 git commit 命令
- 禁止在未获得用户明确确认前执行任何 git tag 命令
- 禁止在未展示完整操作信息前执行任何 git 操作
- 违反以上规则将导致代码和标签被错误操作,这是一个严重的安全问题
用户确认流程 (必须严格执行)
- 展示完整的操作信息
- 明确列出所有将被修改的文件
- 明确询问用户是否确认执行
- 必须等待用户明确回复(回复必须是 "yes"、"y"、"confirm" 等明确表示同意的词汇)
- 只有在用户明确确认后才能执行 git commit 和 git tag 命令
- 如果用户未回复、回复不明确、或回复 "no",必须取消操作
错误处理
- 如果用户回复不明确(如 "ok"、"sure"、"I think so" 等),必须再次询问直到获得明确回复
- 如果用户拒绝或未确认,回复用户说明操作已取消,并不执行任何 git 操作
When to use me
当用户要求执行发布操作时使用此技能。会自动分析变更内容并生成规范的 Release Notes。
操作流程
阶段一:初始化与信息收集
- 询问用户版本号(格式示例:1.0.0,无需 v 前缀)
- 验证版本号格式是否为三段式数字
阶段二:获取与分析变更
- 执行
git describe --tags --abbrev=0获取上一个标签 - 根据是否有标签确定对比范围:
- 如果有标签:对比范围为
LAST_TAG..HEAD - 如果无标签:对比范围为所有提交
- 如果有标签:对比范围为
- 执行
git log --pretty=format:"%h|%s|%an" --no-merges <对比范围>提取提交信息
阶段三:智能分类
根据前缀和语义将变更归类:
-
特性 (Features)
- 前缀:
Feat: - 语义:新增功能、添加文件、主要逻辑变更
- 前缀:
-
问题修复 (Bug Fixes)
- 前缀:
Fix: - 语义:修复错误、解决崩溃
- 前缀:
-
其他变更 (Other Changes)
- 前缀:
Chore:、Refactor:、Docs:、Style:、Test:等 - 语义:文档更新、格式调整、依赖升级、重构、测试、代码优化
- 前缀:
阶段四:生成 Release Notes
- 语义分析每条提交,将技术性描述转化为用户友好的中文
- 合并重复或相似的变更点
- 按分类整理为 Markdown 格式
- 确保
release/目录存在 - 写入
release/{VERSION}.md文件
Release Notes 文件格式示例:
# 1.0.0 Release Notes
## ✨ 特性
- 新增功能A
- 新增功能B
## 🐛 问题修复
- 修复了XX问题
## 📋 其他
- 更新文档
- 优化代码结构
如果某项没有匹配的变动,需要设置一个为空的列表:
# 1.3.0 Release Notes
## ✨ 特性
- 无
## 🐛 问题修复
- 无
## 📋 其他
- 更新扩展名称以包含英文标题
阶段五:提交代码(必须确认)
警告:此阶段是强制性的,任何跳过此阶段直接提交的行为都是严重错误。
- 展示将被提交的文件列表
- 征求用户明确确认
- 必须等待用户明确回复(如 "yes"、"y"、"confirm" 等)
- 如果用户明确同意提交,执行
git add . && git commit -m "Release {VERSION}" - 如果用户拒绝或未明确确认,禁止提交,并告知用户提交已取消
确认提示格式:
=== Commit Confirmation Required ===
This operation will commit the following files:
- [File 1]
- [File 2]
- [File 3]
Commit message: Release {VERSION}
Do you confirm this commit? Please reply with "yes" to confirm or "no" to cancel.
阶段六:Git 标记(必须确认)
警告:此阶段是强制性的,任何跳过此阶段直接打 tag 的行为都是严重错误。
- 展示将执行的操作
- 征求用户明确确认
- 必须等待用户明确回复(如 "yes"、"y"、"confirm" 等)
- 如果用户明确确认,执行
git tag {VERSION}创建标签 - 如果用户拒绝或未明确确认,禁止打标签,并告知用户操作已取消
确认提示格式:
=== Tag Confirmation Required ===
This operation will create a git tag: v{VERSION}
Do you confirm this tag creation? Please reply with "yes" to confirm or "no" to cancel.
注意事项
安全规则(必须严格遵守)
- 【强制】发版前必须先从用户处确认版本号
- 【强制】执行 git commit 前必须获得用户明确确认
- 【强制】执行 git tag 前必须获得用户明确确认
- 【强制】必须展示完整的操作信息和将被修改的文件列表
- 【绝对禁止】在用户未明确确认前执行任何 git commit 命令
- 【绝对禁止】在用户未明确确认前执行任何 git tag 命令
- 版本号不使用 v 前缀
- Commit message 必须翻译为中文描述
- 所有变更内容必须为中文
- 不要直接使用原始 commit message,需进行语义总结
- 每次发版必须更新
src/manifest_chrome.json、src/manifest_firefox.json中的版本号 - 如果某项没有匹配的变动,在 Release Notes 中设置一个为空的列表(如:
- 无)
错误处理
- 如果用户回复不明确,必须反复询问直到获得明确回复
- 如果用户长时间未回复,可以提醒用户需要明确回复才能继续
- 如果用户取消提交或打标签,不要尝试自动执行或再次询问,直接取消操作
Score
Total Score
60/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon