AgentSkillsCN

finish-release

完成并合并发布分支。

SKILL.md
--- frontmatter
name: finish-release
allowed-tools: Bash(git:*), Bash(gh:*), Read, Write
description: Complete and merge release branch
model: haiku
argument-hint: [version]
user-invocable: true

Phase 1: Identify Version

Goal: Determine release version from current branch or argument.

Actions:

  1. If $ARGUMENTS provided, use it as version
  2. Otherwise, extract from current branch: git branch --show-current (strip release/ prefix)

Phase 2: Pre-finish Checks

Goal: Run tests before finishing.

Actions:

  1. Identify test commands (check package.json, Makefile, etc.)
  2. Run tests if available; exit if tests fail

Phase 3: Update Changelog

Goal: Generate changelog from commits.

Actions:

  1. Get previous tag: git tag --sort=-v:refname | head -1
  2. Collect commits per ${CLAUDE_PLUGIN_ROOT}/references/changelog-generation.md
  3. Update CHANGELOG.md per ${CLAUDE_PLUGIN_ROOT}/examples/changelog.md
  4. Commit: chore: update changelog for v$VERSION with Co-Authored-By footer

Phase 4: Finish Release

Goal: Complete release using git-flow-next CLI.

Actions:

  1. Run git flow release finish $VERSION -m "Release v$VERSION"
  2. Push all: git push origin main develop --tags

Phase 5: GitHub Release

Goal: Create GitHub release.

Actions:

  1. Extract changelog for this version from CHANGELOG.md
  2. Run gh release create v$VERSION --title "v$VERSION" --notes "<changelog>"