From ultraship
Generates changelog from git commits, determines semver bump from commit messages or user input, updates package.json, commits/tags/pushes, creates GitHub release, publishes to npm.
npx claudepluginhub houseofmvps/ultraship --plugin ultraship<major|minor|patch>This skill uses the workspace's default tool permissions.
Full release pipeline: changelog → version bump → commit → tag → GitHub release → npm publish.
Automates semver version bumping, changelog generation, git tagging, pushing, and GitHub releases for Node.js, Python, Rust, Go, and generic projects with pre-flight checks and confirmations.
Creates GitHub releases with semantic versioning: analyzes commits for version bumps, generates changelogs, updates version files like package.json or pyproject.toml, creates git tags, publishes notes, and attaches artifacts.
Automates releases on GitHub, GitLab, or Gitea: detects platform, computes semver bump, generates notes from PRs/commits, previews before tagging/publishing.
Share bugs, ideas, or general feedback.
Full release pipeline: changelog → version bump → commit → tag → GitHub release → npm publish.
Check recent commits since last tag to determine semver bump:
git describe --tags --abbrev=0 2>/dev/null || echo "none"
git log $(git describe --tags --abbrev=0 2>/dev/null || git rev-list --max-parents=0 HEAD)..HEAD --oneline
Analyze commit messages:
BREAKING CHANGE: or !: → major bumpfeat: → minor bumpfix:, chore:, docs:, refactor: → patch bumpIf the user specifies a version (e.g., "release 2.0.0"), use that instead.
Group commits by type:
## What's New
- feat: Add deploy command with pre-flight checks
- feat: Add content scoring with readability analysis
## Bug Fixes
- fix: Secret scanner false positive on .env.example
## Other Changes
- chore: Update dependencies
- refactor: Restructure SEO scanner for cross-page analysis
Update version in:
package.json — the version field# Read current version
node -e "console.log(JSON.parse(require('fs').readFileSync('package.json','utf8')).version)"
Use the Edit tool to update the version string.
git add package.json CHANGELOG.md
git commit -m "release: v<new-version>"
git tag -a v<new-version> -m "v<new-version>"
git push origin main --tags
gh release create v<new-version> --title "v<new-version>" --notes "<changelog>"
Use the changelog from Step 2 as release notes.
Only if package.json exists and has a name field (and is not private):
npm publish
If publish fails due to auth, show the user how to set up their npm token.
====================================
RELEASE COMPLETE
====================================
Package: ultraship
Version: 1.0.7
Tag: v1.0.7
Commits: 12 since last release
GitHub: https://github.com/Houseofmvps/ultraship/releases/tag/v1.0.7
npm: https://www.npmjs.com/package/ultraship
====================================
Changelog:
- 3 new features
- 2 bug fixes
- 1 breaking change
====================================