Back to Skills

write-commit-message

verified

Use when creating git commits to ensure consistent, clear commit messages following conventional commits format.

View on GitHub

Marketplace

eveld-claude

eveld/claude

Plugin

workflows

Repository

eveld/claude
3stars

skills/write-commit-message/SKILL.md

Last Verified

January 23, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/eveld/claude/blob/main/skills/write-commit-message/SKILL.md -a claude-code --skill write-commit-message

Installation paths:

Claude
.claude/skills/write-commit-message/
Powered by add-skill CLI

Instructions

# Write Commit Message

Create git commit messages following the Conventional Commits format.

## Format

```
<type>(<scope>): <subject>

[optional body]

[optional footer]
```

## Types

- `feat` - New feature
- `fix` - Bug fix
- `docs` - Documentation changes
- `style` - Code style changes (formatting, no logic change)
- `refactor` - Code refactoring
- `test` - Adding or updating tests
- `chore` - Maintenance tasks

## Rules

1. Subject line < 72 characters
2. Use imperative mood ("add feature" not "added feature")
3. Don't capitalize first letter of subject
4. No period at end of subject
5. Separate subject from body with blank line
6. Wrap body at 72 characters
7. Use body to explain what and why, not how

## Examples

**Feature**:
```
feat(auth): add JWT token refresh mechanism

Implements automatic token refresh to prevent user sessions from
expiring unexpectedly. Tokens are refreshed 5 minutes before expiry.

Closes #123
```

**Bug fix**:
```
fix(api): handle null values in user response

Previously crashed when user profile was incomplete. Now returns
default values for missing fields.
```

**Refactoring**:
```
refactor(auth): extract token validation into separate function

Improves testability and reduces duplication across middleware
and handlers.
```

**Tests**:
```
test(auth): add tests for token refresh flow

Covers successful refresh, expired token, and invalid token cases.
```

## Scope

Scope is optional but recommended:
- Use component/module name: `(auth)`, `(api)`, `(ui)`
- Use file/package name for small changes: `(user-handler)`
- Omit if change spans multiple areas

## Body

Include body when:
- Change is non-obvious
- Explains why, not what
- References issues or tickets
- Breaking changes need explanation

## Footer

Use footer for:
- `Closes #123` - Closes issue
- `BREAKING CHANGE:` - Breaking changes
- `Refs #456` - References related issue

## Integration with Git Workflow

When user asks to commit or you're following git workflow:

1. Ru

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
2404 chars