Git Commit
Analyze changes and create well-formatted commits using conventional commit format.
Instructions
- •Run
git statusto see staged, unstaged, and untracked files - •Run
git diff --staged(orgit diffif nothing staged) to view changes - •Run
git log --oneline -5to match existing commit style - •Run /update-readme skill to ensure documentation is in sync with changes
- •Stage changes with
git addif needed (ask user if unclear what to stage) - •Create commit with conventional format (see below)
- •Run
git statusto verify success
Conventional commit format
code
<type>[scope]: <description> [optional body]
Types: feat, fix, docs, style, refactor, test, chore, build, ci, perf
Example:
code
feat(auth): add password reset flow Implements forgot password email and reset token validation. Closes #42
Rules
- •MUST use imperative mood ("add" not "added")
- •MUST keep first line under 72 characters
- •MUST use heredoc for multi-line messages
- •Never add "Generated with Claude Code" or attribution
- •Never add Co-Authored-By headers
- •Never add attribution to PR descriptions either
- •Never use
git commit --amendunless explicitly requested - •Never use
git reset --hard- it destroys local changes - •Never use
git pushunless explicitly requested - •Never push directly to main/master; always use a feature branch and PR
- •Never create a PR without explicit user approval
- •After committing, ASK the user before pushing or creating a PR
- •Never stage files containing secrets (.env, credentials, API keys)
- •Never stage or commit CLAUDE.md files
Heredoc format
bash
git commit -m "$(cat <<'EOF' type(scope): description Body text here. EOF )"