AgentSkillsCN

release

生成发布说明、CHANGELOG 条目以及发布命令。当维护者准备发布新版本时,可使用此技能。

SKILL.md
--- frontmatter
name: release
description: Generate release notes, CHANGELOG entries, and release commands. Use when maintainer is preparing a release.

Release Helper Skill (For Maintainers)

Generate release documentation and commands.

When to Use

  • Maintainer mentions "release" or "changelog"
  • Maintainer asks to prepare a version release
  • Maintainer wants release notes generated
  • Maintainer asks about version bumping

Process

  1. Identify last release

    • Find latest tag via GitHub MCP
    • Get release date
  2. Collect changes

    • List merged PRs since last release
    • Gather commit messages
    • Identify contributors
  3. Categorize changes

    • Breaking changes
    • New features
    • Bug fixes
    • Documentation
    • Internal/maintenance
  4. Generate documentation

    • CHANGELOG entry (Keep a Changelog format)
    • GitHub release notes
    • Version bump recommendation

Output Format

Respond in user's language:

code
# Release: v[version]

## Summary
| Item | Value |
|------|-------|
| Previous | v[X.Y.Z] |
| New | v[A.B.C] |
| Type | Major / Minor / Patch |
| PRs | [count] |
| Contributors | [count] |

## Version Recommendation
[Major/Minor/Patch] because [reason]

---

## CHANGELOG Entry

```markdown
## [version] - [YYYY-MM-DD]

### Added
- [feature] (#[PR])

### Changed
- [change] (#[PR])

### Fixed
- [fix] (#[PR])

### Security
- [security fix] (#[PR])

GitHub Release Notes

markdown
## What's Changed

### ✨ New Features
- [description] by @[author] in #[PR]

### 🐛 Bug Fixes
- [description] by @[author] in #[PR]

### 📚 Documentation
- [description] by @[author] in #[PR]

## New Contributors
- @[username] made their first contribution in #[PR]

**Full Changelog**: [compare URL]

Release Commands

bash
# Update version (if applicable)
npm version [patch/minor/major]

# Commit changelog
git add CHANGELOG.md
git commit -m "chore: release v[version]"

# Create tag
git tag -a v[version] -m "Release v[version]"

# Push
git push origin main --tags

# Create GitHub release
gh release create v[version] --notes-file RELEASE_NOTES.md
code

## Arguments

`$ARGUMENTS` can include:
- Version: `v2.1.0`
- Type: `--patch`, `--minor`, `--major`
- Options: `--dry-run`, `--draft`