releasing
Releasing a New Version
Overview
Bump versions, tag, and publish a GitHub Release with an auto-generated changelog. All version sources must stay in sync.
Version Sources (must match)
| File | Field |
|---|---|
.claude-plugin/plugin.json |
version |
.claude-plugin/marketplace.json |
plugins[0].version |
| Git tag | vX.Y.Z |
Steps
1. Determine version bump
Check commits since last tag:
git log $(git describe --tags --abbrev=0)..HEAD --oneline
Apply semver: patch for fixes, minor for features, major for breaking changes.
2. Update version in both JSON files
Edit plugin.json and marketplace.json to the new version string. Both must match exactly.
3. Commit version bump
git add .claude-plugin/plugin.json .claude-plugin/marketplace.json
git commit -m "chore: bump version to X.Y.Z"
4. Create tag and push
git tag vX.Y.Z
git push origin main --tags
5. Create GitHub Release
Generate changelog from commits since previous tag, then publish:
gh release create vX.Y.Z --title "vX.Y.Z" --notes "$(cat <<'EOF'
## Changes
<changelog from git log>
EOF
)"
Group commits by type when there are enough to justify it:
- Features (
feat:) - Fixes (
fix:) - Refactors (
refactor:) - Other (everything else)
For small releases (< 5 commits), a flat list is fine.
Common Mistakes
| Mistake | Fix |
|---|---|
| marketplace.json version not updated | Always update both JSON files together |
| Tag created before commit pushed | Push commit first, then tag, or use --tags |
| Changelog missing commits | Use prev_tag..HEAD, not prev_tag..new_tag before tagging |
More from sipengxie2024/superpower-planning
brainstorming
Use when designing complex multi-step features, building new components, or planning significant behavior changes that require design exploration before implementation.
10main
Skill router and planning initialization. Loaded on every session start. Determines which skills to invoke and ensures .planning/ is initialized for complex tasks.
9subagent-driven
Use when executing implementation plans with independent tasks in the current session
9parallel-agents
Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
8debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
8planning-foundation
Implements persistent file-based planning for complex tasks. Creates .planning/ directory with progress.md and findings.md. Use when starting complex multi-step tasks, research projects, or any task requiring >5 tool calls. Foundation layer inherited by all other skills.
8