Harness发布自动化技能Skill release-harness

本技能用于自动化Harness项目的软件发布流程,一键完成版本号升级、CHANGELOG更新、Git标签创建和GitHub发布,适用于DevOps环境中的CI/CD自动化,提升发布效率和一致性,关键词:自动化发布、版本管理、Git操作、CI/CD工具、Harness发布。

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

name: release-harness description: “自动化Harness发布。一键完成CHANGELOG、版本、标签。当用户提及harness发布、harness版本升级时使用。不要用于:一般发布讨论、其他项目发布。” description-en: “Automate Harness release. CHANGELOG, version, tag in one click. Use when user mentions harness release, harness version bump. Do NOT load for: general release discussions, other project releases.” description-ja: “Harness リリース作業を自動化。CHANGELOG、バージョン、タグをポチッと一発。Use when user mentions harness release, harness version bump. Do NOT load for: general release discussions, other project releases.” allowed-tools: [“Read”, “Write”, “Edit”, “Bash”] argument-hint: “[patch|minor|major]” user-invocable: false context: fork

Harness发布技能

自动化claude-code-harness发布过程。

快速参考

  • 发布新harness版本” -> /release-harness
  • 升级补丁版本” -> /release-harness patch
  • 创建次要发布” -> /release-harness minor

执行流程

步骤1: 变更验证

并行运行:

  1. git status - 检查未提交的更改
  2. git diff --stat - 列出更改的文件
  3. git log --format="%h|%s|%an|%ad" --date=short -10 - 最近提交历史(结构化)

Git日志标志 (CC 2.1.30+)

使用结构化日志输出来生成发布说明。

发布说明的提交列表

# 结构化格式提交列表
git log --format="%s" vPREV..HEAD

# 排除合并提交(仅实际更改)
git log --cherry-pick --no-merges --format="%s" vPREV..HEAD

# 详细信息(带作者和日期)
git log --format="%h|%s|%an|%ad" --date=short vPREV..HEAD

关键用例

用例 标志 效果
发布说明生成 --format="%s" 仅提取提交消息
排除合并 --cherry-pick --no-merges 仅实际提交
详细列表 --format="%h|%s|%an|%ad" 结构化详细信息
更改文件 --raw 影响分析

步骤2: 版本确定

检查当前版本:

cat VERSION

根据更改确定版本(语义化版本):

  • 补丁 (x.y.Z): 错误修复,小改进
  • 次要 (x.Y.0): 新功能(向后兼容)
  • 主要 (X.0.0): 破坏性更改

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

步骤3: CHANGELOG更新(日文 + 英文)

重要: 关注面向用户的更改。内部修复保持简短。

更新 CHANGELOG_ja.mdCHANGELOG.md

CHANGELOG规则

更改类型 如何记录
面向用户的影响 What's Changed + 前后对比表
新功能 Added 部分,简洁
内部(CI/测试/文档) Internal 部分,一行
错误修复(面向用户) Fixed 部分
错误修复(仅内部) 省略或合并到 Internal

模板

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

### What's Changed

**用户体验更改的一行描述**

| 之前 | 之后 |
|--------|-------|
| 先前状态 | 新状态 |

### Added

- 简洁的功能描述

### Internal

- 内部更改的一行摘要

前后对比表规则

  • 仅用于 面向用户的更改
  • 不需要用于内部修复(CI、测试、重构)
  • 用户角度 编写,非技术细节

步骤3.5: README更新检查

检查是否需要更新README(日文/英文都检查)

步骤4: 版本文件更新

echo "X.Y.Z" > VERSION

同时更新 .claude-plugin/plugin.json:

"version": "X.Y.Z"

步骤5: 提交和标签

git add -A
git commit -m "chore: release vX.Y.Z"
git tag -a vX.Y.Z -m "Release vX.Y.Z"

步骤6: 推送

git push origin main
git push origin vX.Y.Z

步骤7: GitHub发布(可选)

gh release create vX.Y.Z \
  --title "vX.Y.Z - Title" \
  --notes "$(cat <<'EOF'
## What's Changed

**用户体验更改的一行描述**

| Before | After |
|--------|-------|
| Previous state | New state |

### Added / Changed / Fixed

- Concise description

---

Generated with [Claude Code](https://claude.com/claude-code)
EOF
)"

GitHub发布格式

遵循 .claude/rules/github-release.md:

## What's Changed

**价值描述的一行**

| Before | After |
|--------|-------|
| Previous state | New state |

### Added / Changed / Fixed

- 简要描述

---

Generated with [Claude Code](https://claude.com/claude-code)

相关技能

  • verify - 发布前验证