marketplace-bump
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.
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.
| name | marketplace-bump |
|---|---|
| description | 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. |
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
- Get current version first:
jq '.plugins[] | select(.name == "PLUGIN_NAME") | .version' .claude-plugin/marketplace.json - Run the appropriate bump command
- Confirm new version to user