AI SummaryAutomates semantic version tagging for Git repositories by analyzing conventional commits to determine appropriate version bumps (major/minor/patch). Useful for developers who want to maintain consistent versioning without manual calculation.
Install
Copy this and paste it into Claude Code, Cursor, or any AI assistant:
I want to install the "Semantic Version Tag" skill in my project. Please run this command in my terminal: # Install skill into the correct directory (21 files) mkdir -p .claude/skills/commands && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/SKILL.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/tag.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/check.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/check.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/close-prs.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/close-prs.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/fix-pipeline.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/fix-pipeline.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/lint.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/lint.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/merge-and-branch.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/merge-and-branch.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/pr.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/pr.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/prime.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/prime.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/push.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/push.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/ralph-reset.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/ralph-reset.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/ralph-status.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/ralph-status.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/ralph.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/ralph.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/refactor-component.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/refactor-component.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/refactor.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/refactor.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/research.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/research.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/review-coderabbit.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/review-coderabbit.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/review-components.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/review-components.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/shade.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/shade.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/ship.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/ship.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/til.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/til.md" && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/commands/type-check.md "https://raw.githubusercontent.com/alexanderop/workoutTracker/main/.claude/commands/type-check.md" Then restart Claude Code (or reload the window in Cursor) so the skill is picked up.
Description
Create a semantic version tag based on conventional commits
Semantic Version Tag
I have gathered information about your repository. Here are the results: <current_tag> !git describe --tags --abbrev=0 2>/dev/null || echo "v0.0.0" </current_tag> <commits_since_tag> !git log $(git describe --tags --abbrev=0 2>/dev/null || echo "")..HEAD --oneline --no-decorate 2>/dev/null || git log --oneline --no-decorate </commits_since_tag> <current_branch> !git rev-parse --abbrev-ref HEAD </current_branch>
Step 1: Determine Version Bump
Analyze the commits since the last tag using Conventional Commits rules: | Commit Pattern | Bump Type | |----------------|-----------| | BREAKING CHANGE: in body/footer | MAJOR | | feat! or fix! (breaking change marker) | MAJOR | | feat: | MINOR | | fix:, perf: | PATCH | | docs:, style:, refactor:, test:, build:, ci:, chore: | PATCH | Priority: MAJOR > MINOR > PATCH (use the highest applicable bump)
Step 2: Calculate New Version
Given current version vX.Y.Z: • MAJOR: v(X+1).0.0 • MINOR: vX.(Y+1).0 • PATCH: vX.Y.(Z+1)
Step 3: Create and Push Tag
• Show the user the proposed version bump with reasoning • Create the tag with an annotated message summarizing changes: `bash git tag -a vX.Y.Z -m "$(cat <<'EOF' vX.Y.Z Changes: • feat: description • fix: description EOF )" ` • Push the tag: `bash git push origin vX.Y.Z ` • Confirm with git describe --tags
Discussion
Health Signals
My Fox Den
Community Rating
Sign in to rate this booster