version-bump

NikiforovAll's avatarfrom NikiforovAll

This skill automates version bumping during the release process for the Claude Code Handbook monorepo. It should be used when the user requests to bump versions, prepare a release, or increment version numbers across the repository.

⭐47stars🔀9forks📁View on GitHub🕐Updated Dec 29, 2025

When & Why to Use This Skill

The Version Bump skill automates the critical release process of incrementing version numbers within a monorepo. It streamlines software delivery by providing a standardized way to handle major, minor, and patch updates across multiple plugins, ensuring metadata consistency and reducing the risk of manual errors in configuration files.

Use Cases

  • 1. Release Cycle Automation: Quickly prepare for new releases by automating the incrementing of version numbers (major, minor, or patch) across the entire repository or specific modules.
  • 2. Monorepo Version Management: Maintain perfect synchronization between individual plugin versions and global marketplace registries, ensuring all metadata files are updated simultaneously.
  • 3. Granular Component Updates: Target specific plugins for independent version bumps, allowing for flexible release schedules within a complex multi-package project structure.
  • 4. Version Validation: Automatically audit and list current versions across all plugins to prevent version conflicts or duplicate releases.
nameversion-bump
descriptionThis skill automates version bumping during the release process for the Claude Code Handbook monorepo. It should be used when the user requests to bump versions, prepare a release, or increment version numbers across the repository.

Version Bump Skill

Per-plugin version bumping for the Claude Code Handbook monorepo. Each plugin can have independent versions.

When to Use This Skill

Trigger this skill when users mention:

  • "bump version" or "bump the version"
  • "increment version" or "update version numbers"
  • Any mention of "major", "minor", or "patch" version changes

Version Locations

Each plugin has versions in two places (kept in sync):

  1. .claude-plugin/marketplace.json → plugin entry version
  2. plugins/<name>/.claude-plugin/plugin.json → individual plugin version

The marketplace top-level version and metadata.version are schema versions and remain unchanged.

Workflow Instructions

Step 1: List Current Versions

Show current plugin versions:

python .claude/skills/version-bump/scripts/validate_versions.py

Step 2: Ask User Which Plugin(s) to Bump

Ask the user:

  1. Which plugin(s) to bump (can be multiple, or "all")
  2. Which bump type: major, minor, or patch

Step 3: Execute Version Bump

Run the script with the selected plugins:

# Single plugin
python .claude/skills/version-bump/scripts/bump_version.py <bump_type> --plugin <name>

# Multiple plugins
python .claude/skills/version-bump/scripts/bump_version.py <bump_type> --plugin <name1> --plugin <name2>

# All plugins
python .claude/skills/version-bump/scripts/bump_version.py <bump_type> --all

Step 4: Report Results

After successful completion, display:

  • Plugins bumped with old → new versions
  • Next steps for git commit

CLI Reference

# Show help
python .claude/skills/version-bump/scripts/bump_version.py --help

# Error + list plugins when no --plugin flag
python .claude/skills/version-bump/scripts/bump_version.py patch

# Bump specific plugin(s)
python .claude/skills/version-bump/scripts/bump_version.py patch --plugin handbook-dotnet
python .claude/skills/version-bump/scripts/bump_version.py minor --plugin handbook --plugin handbook-extras

# Bump all plugins (legacy monorepo behavior)
python .claude/skills/version-bump/scripts/bump_version.py patch --all

Examples

Example 1: Bump Single Plugin

User: "Bump the version for handbook-dotnet"
Claude: "I'll check current versions first..."

[Runs validate_versions.py]

Claude: "handbook-dotnet is currently at 1.19.5. What bump type: major, minor, or patch?"
User: "patch"

[Runs: python bump_version.py patch --plugin handbook-dotnet]

Claude: "Done!
  handbook-dotnet: 1.19.5 → 1.19.6

Next steps:
1. git diff
2. git add . && git commit -m 'chore: bump handbook-dotnet to 1.19.6'"

Example 2: Bump Multiple Plugins

User: "Bump handbook and handbook-extras to a new minor version"

[Runs: python bump_version.py minor --plugin handbook --plugin handbook-extras]

Claude: "Done!
  handbook: 1.19.5 → 1.20.0
  handbook-extras: 1.19.5 → 1.20.0"

Example 3: Bump All Plugins

User: "Bump all plugins patch version"

[Runs: python bump_version.py patch --all]

Claude: "Done! All 13 plugins bumped from their current versions."

Notes

  • The script does NOT create git commits - user handles version control
  • Plugins can now have different versions (independent versioning)
  • Changelog updates are manual - user maintains CHANGELOG.md as needed