
Version Bump
FreeAutomate your semantic versioning and release workflow.
Free · Opens the source repo
What Version Bump does
Version Bump streamlines the release process for Claude Code plugins by automating semantic versioning and ensuring all necessary files are updated consistently. The skill manages version increments across multiple manifest files, including package.json, marketplace.json, and plugin.json, which are crucial for maintaining compatibility and functionality in your plugins. By following a structured workflow, it minimizes human error and ensures that your project is always in a releasable state.
The workflow begins with analyzing the type of changes being made—whether they are bug fixes (PATCH), new features (MINOR), or breaking changes (MAJOR). After determining the correct version increment, the skill updates the version string across all relevant files, ensuring that they are in sync. It also includes steps for building and syncing artifacts, committing changes, tagging the release in Git, and preparing for npm publishing, which is handed off to a human maintainer for security reasons.
In addition to updating version numbers and committing changes, Version Bump generates a changelog based on the releases from GitHub, ensuring that your project's history is well-documented. It also facilitates notifications via Discord, keeping your team informed about new releases. This skill is particularly useful for developers and teams who need to maintain multiple plugins and want to ensure a consistent and reliable release process.
Overall, Version Bump is an essential tool for any developer working with Claude Code plugins, providing an organized and efficient way to manage versioning and releases without the risk of oversight.
When to use it
Use Version Bump when preparing for a new release of your Claude Code plugins to ensure all versioning is handled correctly.
When not to use it
Avoid this skill if you do not manage Claude Code plugins or if your release process is entirely manual and does not require versioning.
What you can build with it
Preparing for a Plugin Release
Use Version Bump to automate the version increment process before releasing updates to your Claude Code plugins.
Maintaining Multiple Plugin Manifests
This skill ensures that all relevant manifest files are updated consistently, reducing the risk of version mismatches.
Generating Release Notes Automatically
Leverage the changelog generation feature to keep track of changes and communicate updates effectively to your team.
How to install Version Bump
View source1. Install with the skills CLI
npx skills add thedotmack/claude-mem/version-bump --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by thedotmackVersion Bump & Release Workflow
IMPORTANT: Plan and write detailed release notes before starting.
CRITICAL: Commit EVERYTHING (including build artifacts). At the end of this workflow, NOTHING should be left uncommitted or unpushed. Run git status at the end to verify.
Preparation
-
Analyze: Determine if the change is PATCH (bug fixes), MINOR (features), or MAJOR (breaking).
-
Environment: Identify repository owner/name from
git remote -v. -
Paths — every file that carries the version string:
package.json— the npm/npx-published version (npx claude-mem@X.Y.Zresolves from this)plugin/package.json— bundled plugin runtime deps.claude-plugin/marketplace.json— version insideplugins[0].version.claude-plugin/plugin.json— top-level Claude-plugin manifestplugin/.claude-plugin/plugin.json— bundled Claude-plugin manifest.codex-plugin/plugin.json— Codex-plugin manifestplugin/.codex-plugin/plugin.json— bundled Codex-plugin manifestopenclaw/openclaw.plugin.json— OpenClaw plugin manifest
Verify coverage before editing:
git grep -l "\"version\": \"<OLD>\""should list all eight. If a new manifest has been added since this doc was last updated, update this list.
Workflow
- Update: Increment the version string in every path above. Do NOT touch
CHANGELOG.md— it's regenerated. - Verify:
git grep -n "\"version\": \"<NEW>\""— confirm all eight files match.git grep -n "\"version\": \"<OLD>\""— should return zero hits. - Build and sync:
npm run build-and-syncto regenerate artifacts, sync the local marketplace copy, restart the worker, and clear the queue. Do not use plainnpm run buildfor release validation because it can leave the local marketplace/worker out of sync. - Commit:
git add -A && git commit -m "chore: bump version to X.Y.Z". - Tag:
git tag -a vX.Y.Z -m "Version X.Y.Z". - Push:
git push origin main && git push origin vX.Y.Z. - Publish to npm — HAND OFF TO HUMAN. The human maintainer raised npm
security, so publishing now requires credentials/2FA only they can provide.
The agent MUST NOT run
npm publish(ornp/npm run release:*, which also publish) itself. Hand off NPM publishing to the human now: stop and tell them the version is committed, tagged, and pushed, and that they must publish to npm to makenpx claude-mem@X.Y.Zresolve. Give them the command:
Wait for the human to confirm they published, then verify it landed:npm publish # run by the HUMAN — the prepublishOnly script rebuilds the package
If the publish build touched local artifacts, runnpm view claude-mem@X.Y.Z version # should print X.Y.Znpm run build-and-syncagain afterward. - GitHub release:
gh release create vX.Y.Z --title "vX.Y.Z" --notes "RELEASE_NOTES". - Changelog: Regenerate via the project's changelog script:
(Runsnpm run changelog:generatenode scripts/generate-changelog.js, which pulls releases from the GitHub API and rewritesCHANGELOG.md.) - Sync changelog: Commit and push the updated
CHANGELOG.md. - Notify: Run the Discord notification from
~/Scripts/claude-mem/, where the.envwith Discord webhook details lives:
Do this even when the release worktree does not have a localcd ~/Scripts/claude-mem/ && npm run discord:notify vX.Y.Z.env. - Finalize:
git status— working tree must be clean.
Checklist
- All eight config files have matching versions
-
git grepfor old version returns zero hits -
npm run build-and-syncsucceeded - Git tag created and pushed
- NPM publishing handed off to the human (agent does NOT run
npm publish— human raised security); once they publish,npm view claude-mem@X.Y.Z versionconfirms it (sonpx claude-mem@X.Y.Zresolves) - GitHub release created with notes
-
CHANGELOG.mdupdated and pushed - Discord notification run from
~/Scripts/claude-mem/ -
git statusshows clean tree
Frequently asked questions about Version Bump
Similar skills
Release Candidate Preparation
Streamline your OpenAI Agents release process.
Gitmoji
Generate expressive commit messages with emojis.
GitHub Release
Automate your GitHub library release process effortlessly.
Commit Message Storyteller
Generate meaningful commit messages from your git diffs.
Author Contributions
Trace author contributions across branches in Git.
Implementation Kickoff
Streamline your code implementation process with ease.
