From claude-dotfiles
Write clear, conventional commit messages. Use when the user asks to commit changes, needs help with commit messages, or when following Conventional Commits specification is required.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-dotfiles:commit-helperThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Write clear, meaningful commit messages following conventions.
Write clear, meaningful commit messages following conventions.
<type>(<scope>): <subject>
<body>
<footer>
| Type | Use For |
|---|---|
feat | New feature |
fix | Bug fix |
docs | Documentation only |
style | Formatting, whitespace (not CSS) |
refactor | Code change that neither fixes nor adds |
perf | Performance improvement |
test | Adding or fixing tests |
build | Build system or dependencies |
ci | CI configuration |
chore | Maintenance tasks |
revert | Reverting previous commit |
The area of the codebase:
feat(auth): add OAuth login
fix(api): resolve timeout issue
docs(readme): update installation steps
BREAKING CHANGE: descriptionFixes #123, Closes #456feat: add user profile page
feat(auth): add password reset functionality
fix(cart): resolve incorrect total calculation
The cart total was not including the shipping cost
when calculating the final amount.
Fixes #234
feat(api)!: change authentication to OAuth 2.0
BREAKING CHANGE: The /auth/login endpoint now requires
OAuth 2.0 credentials instead of username/password.
Migration guide: https://docs.example.com/oauth-migration
refactor(utils): extract date formatting to separate module
Moved date formatting functions from utils.ts to
dates.ts for better organization and reusability.
If commits have unrelated changes, split them:
# Bad: one commit with unrelated changes
git commit -m "fix: login bug and add profile page"
# Good: separate commits
git commit -m "fix(auth): resolve login timeout issue"
git commit -m "feat(profile): add user profile page"
git status
git diff --staged
featfixdocsrefactorWhat area of the code?
auth, api, ui, db, config, etc.Include body when:
# Bad
fix: fixed the bug
feat: new feature added
update: updated some stuff
# Good
fix(cart): resolve race condition in checkout
feat(search): add fuzzy matching support
refactor(api): extract validation to middleware
# Bad (how, not why)
Changed the function to use a loop instead of recursion
and added a cache variable.
# Good (why)
The recursive implementation was causing stack overflow
on large datasets. Switched to iterative approach with
memoization to handle inputs up to 100k items.
# Stage specific files
git add src/auth/login.ts src/auth/login.test.ts
# Write commit message
git commit -m "fix(auth): resolve session timeout issue
Sessions were expiring immediately due to incorrect
timestamp comparison. Fixed by using UTC timestamps.
Fixes #189"
# Amend last commit message
git commit --amend -m "new message"
# Add forgotten files to last commit
git add forgotten-file.ts
git commit --amend --no-edit
Warning: Don't amend commits that have been pushed.
Create .gitmessage template:
# <type>(<scope>): <subject>
#
# <body>
#
# <footer>
# Types: feat, fix, docs, style, refactor, perf, test, build, ci, chore
# Scope: auth, api, ui, db, etc. (optional)
# Subject: imperative, lowercase, no period, max 50 chars
# Body: what and why, wrap at 72 chars
# Footer: BREAKING CHANGE:, Fixes #, Closes #
Configure git:
git config --global commit.template ~/.gitmessage
npx claudepluginhub peopleforrester/claude-dotfilesGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Resolves in-progress git merge or rebase conflicts by analyzing history, understanding intent, and preserving both changes where possible. Runs automated checks after resolution.