create-release

star 197

创建 PolyHermes 项目的 GitHub Release。当用户要求发布版本、创建 release、打 tag 或发布新版本时使用。

WrBug By WrBug schedule Updated 3/2/2026

name: create-release description: 创建 PolyHermes 项目的 GitHub Release。当用户要求发布版本、创建 release、打 tag 或发布新版本时使用。

Create Release

创建 PolyHermes 项目的 GitHub Release,包括创建 Git tag、推送 tag、创建 GitHub Release(支持 pre-release),并自动在 Issue #1 发布公告。

使用时机

  • 用户要求「发布版本」「创建 release」「打 tag」「发布新版本」时
  • 用户要求「创建 pre-release」「beta 版本」时
  • 用户提到「v1.x.x」等版本号相关操作时

前置条件

  1. GitHub CLI 已安装:确保 gh 命令可用
  2. 已登录 GitHub:运行 gh auth status 确认
  3. 工作目录干净:建议先提交所有更改

指令

步骤 1:收集发布信息

询问用户以下信息:

  • 版本号(格式:vX.Y.Z,如 v1.0.0)
  • 是否为 Pre-release(测试版本)
  • Release 标题和描述(可选,如未提供则自动生成)

步骤 2:生成 Release 内容

重要:如果用户未提供描述,需要根据 Git commits 自动生成。

  1. 获取上一个版本的 tag

    git describe --tags --abbrev=0 HEAD
    
  2. 获取版本间的 commits

    git log <PREVIOUS_TAG>..HEAD --oneline --no-merges
    
  3. 过滤 commit 规则

    • 排除:版本内新增功能的修复 commit
    • 判断方法:如果一个 commit 的消息包含「fix」「修复」「bugfix」等关键词,且是针对同一版本内新增代码的修复,则不包含
    • 保留:新功能、性能优化、重构、文档更新等
  4. 生成中英文 Release 内容

    • 格式要求:中文在上,英文在下
    • 使用分隔线 --- 分隔中英文部分
    • 按功能类型分组(新功能、改进、修复等)

    示例格式:

    ## 新功能
    
    - 添加了 A 功能
    - 支持了 B 操作
    
    ## 改进
    
    - 优化了 C 性能
    
    ---
    
    ## New Features
    
    - Added feature A
    - Supported operation B
    
    ## Improvements
    
    - Optimized performance C
    

步骤 3:运行发布脚本

在项目根目录下执行:

cd .cursor/skills/common/create-release/scripts && \
chmod +x create-release.sh && \
./create-release.sh -t <VERSION> [-T "<TITLE>"] [-d "<DESCRIPTION>"] [-p] [-y]

步骤 4:发布公告到 Issue #1

重要:Release 创建成功后,必须自动在 Issue #1 下发布公告 comment。

  1. 生成公告内容(面向用户,通俗易懂):

    公告格式模板:

    # 🎉 PolyHermes vX.X.X 版本发布公告
    
    ## 📅 发布日期
    
    YYYY年MM月DD日
    
    ---
    
    ## ✨ 本次更新亮点
    
    ### 🚀 新功能
    
    **功能名称**
    - 用通俗的语言描述这个功能是什么
    - 用户能从中获得什么好处
    - 如何使用这个功能
    
    ### 🔧 改进优化
    
    - 优化了 XXX,现在 XXX 更快/更稳定了
    - 改进了 XXX 体验,操作更简单了
    
    ### 🐛 问题修复
    
    - 修复了 XXX 问题,不再出现 XXX 情况
    
    ---
    
    ## 📦 如何更新
    
    ### Docker 部署(推荐)
    
    ```bash
    # 拉取最新镜像
    docker pull wrbug/polyhermes:vX.X.X
    
    # 重启服务
    docker-compose -f docker-compose.prod.yml down
    docker-compose -f docker-compose.prod.yml up -d
    

    ⚠️ 安全提醒

    请务必使用官方 Docker 镜像源,避免财产损失!

    官方镜像地址wrbug/polyhermes


    📚 相关链接

    
    
  2. 公告内容编写原则

    • 通俗易懂:避免技术术语,用用户能理解的语言
    • 突出价值:告诉用户这个更新对他们有什么好处
    • 简洁明了:每个功能点用 1-2 句话说明
    • 包含操作指引:告诉用户如何使用新功能
    • 中英文双语:中文在上,英文在下(可选)
    • 避免:commit hash、代码细节、内部实现
  3. 执行发布公告命令

    gh issue comment 1 --repo WrBug/PolyHermes --body "$(cat <<'EOF'
    # 🎉 PolyHermes vX.X.X 版本发布公告
    
    [公告内容...]
    
    ---
    EOF
    )"
    

    或使用文件方式(内容较长时推荐):

    echo "[公告内容...]" > /tmp/announcement.md
    gh issue comment 1 --repo WrBug/PolyHermes --body-file /tmp/announcement.md
    

参数说明

参数 说明 示例
-t, --tag 版本号(必需) -t v1.0.0
-T, --title Release 标题 -T "Release v1.0.0"
-d, --description Release 描述 -d "## 新功能\n- 功能1"
-f, --description-file 从文件读取描述 -f CHANGELOG.md
-p, --prerelease 标记为 Pre-release(自动加 -beta 后缀) -p
-y, --yes 无交互模式 -y

版本号格式

  • 必须格式:v数字.数字.数字(如 v1.0.0, v1.10.2, v1.1.12)
  • 如果指定 --prerelease,会自动拼接 -beta 后缀(如 v1.0.1 → v1.0.1-beta)

Release 内容生成规则

中英文格式

Release 描述必须使用中英文双语格式:

## 中文标题

- 内容项1
- 内容项2

---

## English Title

- Item 1
- Item 2

Commit 过滤规则

需要排除的 commit 类型

  1. 版本内修复:对同一版本新增功能的后续修复

    • 例如:v1.0.1 新增了功能 A,然后有一个 commit 修复功能 A 的 bug → 不包含
    • 判断依据:commit 消息包含「fix」「修复」「bugfix」且相关功能在本版本新增
  2. 琐碎修改

    • typo 修正
    • 代码格式调整
    • 注释更新

需要保留的 commit 类型

  1. 新功能(feat、feature)
  2. 改进/优化(improve、optimize、enhance)
  3. 重要 bug 修复(针对旧版本的 bug)
  4. 重构(refactor)
  5. 文档更新(docs)

分组建议

  • 新功能 / New Features
  • 改进 / Improvements
  • 修复 / Bug Fixes(仅包含对旧版本 bug 的修复)
  • 其他 / Others

公告内容示例

以下是一个面向用户的公告示例:

# 🎉 PolyHermes v1.2.0 版本发布公告

## 📅 发布日期

2026年3月2日

---

## ✨ 本次更新亮点

### 🚀 新功能

**系统自动更新**
- 现在可以在网页上直接更新系统,无需手动重启 Docker
- 更新过程约 30-60 秒,系统会自动处理
- 如果更新失败,系统会自动恢复到旧版本

**RPC 节点管理**
- 可以在系统设置中添加、编辑、删除自定义 RPC 节点
- 可以随时启用或禁用节点
- 系统会自动选择可用的节点

### 🔧 改进优化

- **更快的跟单响应**:通过实时监听链上交易,跟单速度提升到秒级
- **更准确的盈亏统计**:系统会自动追踪实际成交价,统计数据更准确
- **内存占用优化**:修复了内存泄漏问题,系统可以长时间稳定运行

### 🐛 问题修复

- 修复了部分市场无法正确查询价格的问题
- 修复了卖出订单偶发失败的问题

---

## 📦 如何更新

### 方式一:网页更新(推荐)

1. 登录系统,进入 **系统设置** → **系统更新**
2. 点击 **检查更新**
3. 如果有新版本,点击 **立即升级**
4. 等待更新完成即可

### 方式二:Docker 更新

```bash
docker pull wrbug/polyhermes:v1.2.0
docker-compose -f docker-compose.prod.yml down
docker-compose -f docker-compose.prod.yml up -d

⚠️ 安全提醒

请务必使用官方 Docker 镜像源!

官方镜像:wrbug/polyhermes


📚 相关链接


## 发布流程

1. 验证版本号格式
2. 检查 Git 工作目录状态
3. 检查 tag 是否已存在
4. 生成 Release 内容(中英文)
5. 创建本地 tag
6. 推送 tag 到远程
7. 创建 GitHub Release
8. **生成面向用户的公告内容**
9. **发布公告到 Issue #1**
10. 返回 Release URL 和公告链接

## 注意事项

- Pre-release 版本不会触发 Telegram 通知
- GitHub Actions 会自动触发构建流程
- 如果 tag 已存在,会提示是否删除并重新创建
- **必须**在 Release 创建成功后发布公告到 Issue #1

## 可选目录说明

- `scripts/`:包含 `create-release.sh` 发布脚本
Install via CLI
npx skills add https://github.com/WrBug/PolyHermes --skill create-release
Repository Details
star Stars 197
call_split Forks 44
navigation Branch main
article Path SKILL.md
More from Creator