发布自动化工具Skill release-har

这是一个用于通用发布自动化的技能,支持生成CHANGELOG、提交代码、创建标签和GitHub Release。适用于软件开发中的版本管理和DevOps流程,关键词包括发布自动化、版本升级、CHANGELOG、GitHub Release、DevOps。

DevOps 0 次安装 0 次浏览 更新于 3/10/2026

name: release-har description: “通用发布自动化。支持CHANGELOG、提交、标签、GitHub Release。当用户提及发布、版本升级、创建标签、发布发布时使用。请勿用于:harness release(请使用x-release-harness代替)。” description-en: “Universal release automation. CHANGELOG, commit, tag, GitHub Release supported. Use when user mentions release, version bump, create tag, publish release. Do NOT load for: harness release (use x-release-harness instead).” description-ja: “汎用リリース自動化。CHANGELOG、コミット、タグ、GitHub Release をサポート。Use when user mentions release, version bump, create tag, publish release. Do NOT load for: harness release (use x-release-harness instead).” allowed-tools: [“读取”, “写入”, “编辑”, “Bash”] argument-hint: “[patch|minor|major]” context: fork

Release Har 技能

通用发布自动化技能。适用于任何项目。

快速参考

  • release” -> /release-har
  • bump version” -> /release-har patch
  • minor release” -> /release-har minor

执行流程

步骤 1: 检查当前状态

并行运行:

# 未提交的更改
git status

# 更改的文件
git diff --stat

# 最近的提交历史
git log --oneline -10

# 现有标签
git tag --sort=-v:refname | head -5

步骤 2: 确定版本

基于语义化版本控制

版本 更改类型
patch (x.y.Z) 错误修复,小改进
minor (x.Y.0) 新功能(向后兼容)
major (X.0.0) 重大更改

询问用户:“下一个版本应该是什么?(例如,1.2.3)”

步骤 3: 更新 CHANGELOG(如果存在)

如果项目有CHANGELOG.md,更新它:

## [X.Y.Z] - YYYY-MM-DD

### 添加
- 新功能

### 更改
- 更改描述

### 修复
- 错误修复

如果CHANGELOG不存在,请跳过

步骤 4: 更新版本文件(项目相关)

根据项目配置更新版本文件:

文件 更新方法
package.json "version": "X.Y.Z"
pyproject.toml version = "X.Y.Z"
VERSION 直接内容更新
Cargo.toml version = "X.Y.Z"

如果没有适用的文件存在,请跳过

步骤 5: 提交和标签

# 暂存
git add -A

# 提交(仅当存在更改时)
git commit -m "chore: release vX.Y.Z"

# 创建标签
git tag -a vX.Y.Z -m "发布 vX.Y.Z"

步骤 6: 推送

# 推送分支
git push origin $(git branch --show-current)

# 推送标签
git push origin vX.Y.Z

步骤 7: GitHub Release(可选)

用户确认后,创建GitHub Release:

gh release create vX.Y.Z \
  --title "vX.Y.Z - 标题" \
  --notes "$(cat <<'EOF'
## 更改内容

- 更改 1
- 更改 2

**完整更新日志**: https://github.com/OWNER/REPO/compare/vPREV...vX.Y.Z
EOF
)"

选项

选项 描述
patch 自动递增补丁版本
minor 自动递增次要版本
major 自动递增主要版本
--dry-run 仅预览,不执行

项目特定处理

Node.js (package.json)

npm version patch --no-git-tag-version

Python (pyproject.toml)

手动更新 version = "X.Y.Z"

Rust (Cargo.toml)

手动更新 version = "X.Y.Z"


相关技能

  • x-release-harness - 特定于Harness插件的发布(仅本地)
  • verify - 发布前验证