marketplace-bump

robbyt's avatarfrom robbyt

Bump a plugin version in marketplace.json using semantic versioning. Use when user asks to "bump version", "increment version", "release new version", or after making changes that warrant a version update.

⭐31stars🔀0forks📁View on GitHub🕐Updated Dec 20, 2025

When & Why to Use This Skill

This Claude skill automates the management of plugin versioning within a marketplace.json file using Semantic Versioning (SemVer) principles. By streamlining the process of incrementing major, minor, or patch versions, it ensures consistent release cycles and reduces manual errors in configuration files, making it an essential tool for developers maintaining plugin ecosystems.

Use Cases

  • Automated Release Management: Quickly increment version numbers (patch, minor, or major) when preparing a new plugin release for the marketplace.
  • Semantic Versioning Compliance: Automatically apply SemVer logic to ensure that breaking changes, new features, and bug fixes are correctly reflected in the version string.
  • Workflow Optimization: Use natural language commands like 'bump version' or 'release new version' to trigger precise JSON updates without manual editing or risk of syntax errors.
namemarketplace-bump
descriptionBump a plugin version in marketplace.json using semantic versioning. Use when user asks to "bump version", "increment version", "release new version", or after making changes that warrant a version update.

Version Bump

Bump a plugin version in marketplace.json following semantic versioning.

Inference Rules

Infer bump type from context:

  • Major (X.0.0): Breaking changes, renames, restructuring
  • Minor (x.Y.0): New features, new skills
  • Patch (x.y.Z): Bug fixes, doc updates

Commands

# Bump patch (e.g., 1.2.3 → 1.2.4)
jq '(.plugins[] | select(.name == "PLUGIN_NAME") | .version) |= (split(".") | .[2] = ((.[2] | tonumber) + 1 | tostring) | join("."))' .claude-plugin/marketplace.json > /tmp/claude/marketplace.json && mv /tmp/claude/marketplace.json .claude-plugin/marketplace.json

# Bump minor (e.g., 1.2.3 → 1.3.0)
jq '(.plugins[] | select(.name == "PLUGIN_NAME") | .version) |= (split(".") | .[1] = ((.[1] | tonumber) + 1 | tostring) | .[2] = "0" | join("."))' .claude-plugin/marketplace.json > /tmp/claude/marketplace.json && mv /tmp/claude/marketplace.json .claude-plugin/marketplace.json

# Bump major (e.g., 1.2.3 → 2.0.0)
jq '(.plugins[] | select(.name == "PLUGIN_NAME") | .version) |= (split(".") | .[0] = ((.[0] | tonumber) + 1 | tostring) | .[1] = "0" | .[2] = "0" | join("."))' .claude-plugin/marketplace.json > /tmp/claude/marketplace.json && mv /tmp/claude/marketplace.json .claude-plugin/marketplace.json

Replace PLUGIN_NAME with the actual plugin name.

Workflow

  1. Get current version first:
    jq '.plugins[] | select(.name == "PLUGIN_NAME") | .version' .claude-plugin/marketplace.json
    
  2. Run the appropriate bump command
  3. Confirm new version to user

Reference