Gsd-skill-creator commit-style
Crafts and generates professional conventional commit messages following Angular/Conventional Commits format. Use when committing changes, writing git commit messages, or when user mentions commit message.
install
source · Clone the upstream repo
git clone https://github.com/Tibsfox/gsd-skill-creator
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/Tibsfox/gsd-skill-creator "$T" && mkdir -p ~/.claude/skills && cp -r "$T/project-claude/skills/commit-style" ~/.claude/skills/tibsfox-gsd-skill-creator-commit-style && rm -rf "$T"
manifest:
project-claude/skills/commit-style/SKILL.mdsource content
Commit Style — Conventional Commits
Generates commit messages following the Conventional Commits / Angular convention for clear, consistent version history.
Format
<type>(<scope>): <subject> [optional body] [optional footer]
Types
| Type | Use |
|---|---|
| New feature |
| Bug fix |
| Documentation only changes |
| Formatting, whitespace, no logic change |
| Neither fix nor feature |
| Performance improvement |
| Adding or updating tests |
| Build system or external dependencies |
| CI/CD configuration changes |
| Other maintenance tasks |
| Reverting a previous commit |
Rules
- Subject: ≤72 chars (50 preferred), lowercase, imperative mood, no trailing period.
- Imperative test: "If applied, this commit will [subject]".
- Scope: Specific module/component in lowercase — e.g.
,feat(auth)
,fix(api)
,docs(readme)
.refactor(core) - Body: Optional. Explain WHY/WHAT, not HOW. Wrap at 72 chars. Blank line between subject and body.
- Footer: Optional.
,BREAKING CHANGE: …
,Closes #N
.Co-Authored-By: …
Atomic Commits
One logical change per commit. Split unrelated changes into separate commits — this makes surgical rollback and
git bisect possible.
Examples
Simple feature:
feat(auth): add password reset functionality
Bug fix with issue reference:
fix(api): handle null response from user endpoint The /users/:id endpoint could return null for deleted users, causing a crash in the profile component. Closes #456
Breaking change:
feat(api): change authentication to JWT Migrate from session-based auth to JWT tokens for better scalability and stateless operation. BREAKING CHANGE: All API clients must now include JWT token in Authorization header. Session cookies no longer accepted.
Documentation update:
docs(readme): update installation instructions Add troubleshooting section for common npm issues and clarify Node.js version requirements.
Anti-Patterns
- Vague subjects: "fix bug", "update stuff"
- Past/present tense: "added", "adds" — use the imperative "add"
- Multiple changes in one commit: "add login and fix navbar"
- Implementation trivia: "change line 47"
- Emotional language: "finally fixed!!!"