skills/jimliu/baoyu-skills/release-skills

release-skills

SKILL.md

Release Skills

Automate the release process for baoyu-skills plugin: analyze changes, update changelogs, bump version, commit, and tag.

When to Use

Trigger this skill when user requests:

  • "release", "发布", "create release", "new version"
  • "bump version", "update version"
  • "prepare release"

Workflow

Step 1: Analyze Changes Since Last Tag

# Get the latest version tag
LAST_TAG=$(git tag --sort=-v:refname | head -1)

# Show changes since last tag
git log ${LAST_TAG}..HEAD --oneline
git diff ${LAST_TAG}..HEAD --stat

Categorize changes by type based on commit messages and file changes:

Type Prefix Description
feat feat: New features, new skills
fix fix: Bug fixes
docs docs: Documentation only
refactor refactor: Code refactoring
style style: Formatting, styling
chore chore: Build, tooling, maintenance

Breaking Change Detection: If changes include:

  • Removed skills or scripts
  • Changed API/interfaces
  • Renamed public functions/options

Warn user: "Breaking changes detected. Consider major version bump (--major flag)."

Step 2: Determine Version Bump

Current version location: .claude-plugin/marketplace.jsonmetadata.version

Version rules:

  • Patch (0.6.1 → 0.6.2): Bug fixes, docs updates, minor improvements
  • Minor (0.6.x → 0.7.0): New features, new skills, significant enhancements
  • Major (0.x → 1.0): Breaking changes, only when user explicitly requests with --major

Default behavior:

  • If changes include feat: or new skills → Minor bump
  • Otherwise → Patch bump

Step 3: Check and Update README

Before updating changelogs, check if README files need updates based on changes:

When to update README:

  • New skills added → Add to skill list
  • Skills removed → Remove from skill list
  • Skill renamed → Update references
  • New features affecting usage → Update usage section
  • Breaking changes → Update migration notes

Files to sync:

  • README.md (English)
  • README.zh.md (Chinese)

If changes include new skills or significant feature changes, update both README files to reflect the new capabilities. Keep both files in sync with the same structure and information.

Step 4: Update Changelogs

Files to update:

  • CHANGELOG.md (English)
  • CHANGELOG.zh.md (Chinese)

Format (insert after header, before previous version):

## {NEW_VERSION} - {YYYY-MM-DD}

### Features
- `skill-name`: description of new feature

### Fixes
- `skill-name`: description of fix

### Documentation
- description of docs changes

### Other
- description of other changes

Only include sections that have changes. Omit empty sections.

For Chinese changelog, translate the content maintaining the same structure.

Step 5: Update marketplace.json

Update .claude-plugin/marketplace.json:

{
  "metadata": {
    "version": "{NEW_VERSION}"
  }
}

Step 6: Commit Changes

git add README.md README.zh.md CHANGELOG.md CHANGELOG.zh.md .claude-plugin/marketplace.json
git commit -m "chore: release v{NEW_VERSION}"

Note: Do NOT add Co-Authored-By line. This is a release commit, not a code contribution.

Step 7: Create Version Tag

git tag v{NEW_VERSION}

Important: Do NOT push to remote. User will push manually when ready.

Options

Flag Description
--dry-run Preview changes without executing. Show what would be updated.
--major Force major version bump (0.x → 1.0 or 1.x → 2.0)
--minor Force minor version bump
--patch Force patch version bump
--pre <tag> (Reserved) Create pre-release version, e.g., --pre beta0.7.0-beta.1

Dry-Run Mode

When --dry-run is specified:

  1. Show all changes since last tag
  2. Show proposed version bump (current → new)
  3. Show draft changelog entries (EN and CN)
  4. Show files that would be modified
  5. Do NOT make any actual changes

Output format:

=== DRY RUN MODE ===

Last tag: v0.6.1
Proposed version: v0.7.0

Changes detected:
- feat: new skill baoyu-foo added
- fix: baoyu-bar timeout issue
- docs: updated README

Changelog preview (EN):
## 0.7.0 - 2026-01-17
### Features
- `baoyu-foo`: new skill for ...
### Fixes
- `baoyu-bar`: fixed timeout issue

README updates needed: Yes/No
(If yes, show proposed changes)

Files to modify:
- README.md (if updates needed)
- README.zh.md (if updates needed)
- CHANGELOG.md
- CHANGELOG.zh.md
- .claude-plugin/marketplace.json

No changes made. Run without --dry-run to execute.

Example Usage

/release-skills              # Auto-detect version bump
/release-skills --dry-run    # Preview only
/release-skills --minor      # Force minor bump
/release-skills --major      # Force major bump (with confirmation)

Post-Release Reminder

After successful release, remind user:

Release v{NEW_VERSION} created locally.

To publish:
  git push origin main
  git push origin v{NEW_VERSION}
Weekly Installs
128
Install
$ npx skills add jimliu/baoyu-skills --skill "release-skills"
Installed on
claude-code113
opencode91
gemini-cli83
antigravity73
cursor66
codex55