Enforces conventional commit message format with proportional detail for changes
A GitHub Copilot instruction set that enforces conventional commit message format with proportional detail based on change complexity.
This skill guides AI coding assistants to write commit messages that follow the conventional commits specification, with appropriate detail levels for different types of changes. It distinguishes between simple one-line commits and complex multi-part changes requiring detailed descriptions.
When generating commit messages, follow these guidelines:
**For simple changes** (single logical change, small scope):
```
<type>: <short description>
```
**For complex changes** (multiple parts, significant scope):
```
<type>(<scope>): <short description>
```
Use the appropriate type prefix:
1. **Match message length to change complexity:**
- Typo fix → `fix: typo in component name`
- Simple rename → `refactor: rename UserCard to ProfileCard`
- Multi-file feature → Use header + bulleted body with key changes
2. **Keep headers scannable:**
- Must be readable at a glance in git log or GitHub UI
- No long explanations in the header line
- Use the body for details
3. **Focus on what matters:**
- Describe the intent and outcome, not the file diff
- When a commit includes many changes, highlight the significant ones
- Omit trivial side-effects (formatting, minor cleanup) unless that's the commit's purpose
- Don't list every file touched
4. **Use scope sparingly:**
- Include `(<scope>)` only when helpful for context (e.g., `feat(auth):`, `fix(api):`)
- Not required for obvious scopes
**Simple changes:**
```
fix: typo in button label
refactor: extract validation logic to utility
style: format with prettier
docs: update installation steps
```
**Complex changes:**
```
feat(auth): add OAuth provider support
```
```
refactor(api): restructure error handling
```
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/conventional-commits-helper/raw