Manage semantic versions for npm packages
Scanned 9/9/2026
Install to Claude Code
npx -y skills add baekenough/oh-my-customcode --skill npm-version --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Npm Version?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/baekenough-npm-version-oh-my-customcode)More formats (shields.io, HTML) on the badges page.
---
name: omcustom:npm-version
description: Manage semantic versions for npm packages
scope: package
argument-hint: "<major|minor|patch> [--no-tag] [--no-commit]"
disable-model-invocation: true
user-invocable: true
---
# NPM Version Management Skill
Manage semantic versions for npm packages with automatic changelog and git integration.
## Arguments
```
major Bump major version (x.0.0)
minor Bump minor version (0.x.0)
patch Bump patch version (0.0.x)
```
## Options
```
--no-tag Skip git tag creation
--no-commit Skip commit creation (only update files)
```
## Workflow
```
1. Analyze current version from package.json
2. Determine version bump type
3. Update package.json version field
4. Update CHANGELOG.md if exists
5. Create version commit
6. Create git tag (optional)
```
## Output Format
### Success
```
[NPM Version] package-name
Previous: 1.2.3
Current: 1.2.4
Changes:
- package.json updated
- Commit: "chore: bump version to 1.2.4"
- Tag: v1.2.4
```
### Failure
```
[NPM Version] Failed
Error: {error_message}
Hint: Ensure clean git working directory
```
## Examples
```bash
# Bump patch version (1.2.3 -> 1.2.4)
npm-version patch
# Bump minor version (1.2.3 -> 1.3.0)
npm-version minor
# Bump major version (1.2.3 -> 2.0.0)
npm-version major
# Update version without creating git tag
npm-version patch --no-tag
```
## Release Branch Integration
When working with `auto-tag.yml` (automatic tag creation on release PR merge):
1. `.npmrc` has `git-tag-version=false` — prevents local tag creation during `npm version`
2. `auto-tag.yml` creates the tag on the **merge commit** when a `release/*` PR is merged to `develop`
3. Do NOT manually push tags — let the CI workflow handle tag creation
### Release Workflow
```
1. Create release branch: release/vX.Y.Z
2. Run version bump (npm version / manual edit) ← no local tag created
3. Build dist, commit, push
4. Create PR → merge to develop
5. auto-tag.yml creates vX.Y.Z tag on merge commit ← correct tag target
6. release.yml triggers on tag → GitHub Release + npm publish
```
### Troubleshooting
If a tag already exists on remote (from a previous failed attempt):
```bash
git push origin :refs/tags/vX.Y.Z # delete remote tag
# Then re-merge or let auto-tag.yml handle it
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!