Show conventional commit format guide and best practices
Displays comprehensive Conventional Commits format guide with types, rules, and examples.
/plugin marketplace add aasanchez/claude-plugins/plugin install aasanchez-commit-message@aasanchez/claude-pluginsDisplay comprehensive information about the Conventional Commits specification and best practices.
Provide the user with a clear, formatted guide including:
Show the basic format:
type(scope): subject
body
footer
```text
### 2. Commit Types
List all standard types with descriptions:
- **feat**: A new feature
- **fix**: A bug fix
- **docs**: Documentation changes only
- **style**: Code style/formatting (no logic change)
- **refactor**: Code restructuring without feature/fix
- **perf**: Performance improvements
- **test**: Adding or updating tests
- **chore**: Build, dependencies, or tooling
- **ci**: CI/CD configuration
- **build**: Build system changes
### 3. Format Rules
**Subject line**:
- Max 50 characters (preferably), 72 hard limit
- Imperative mood: "add", "fix", "update" (not "adds", "fixed", "updating")
- Lowercase start (except proper nouns)
- No trailing period
- Specific and descriptive
**Body** (optional):
- Blank line after subject
- Explain what and why, not how
- Wrap at 72 characters
- Use bullets for multiple items
**Footer** (optional):
- Reference issues: `Closes #123`, `Fixes #456`
- Breaking changes: `BREAKING CHANGE: description`
### 4. Breaking Changes
Show both methods:
1. Using `!`: `feat(api)!: change response format`
2. Using footer: `BREAKING CHANGE: detailed description`
### 5. Scope Examples
Provide common scope examples relevant to different project types:
- **Web apps**: `auth`, `ui`, `api`, `database`, `config`
- **Libraries**: `core`, `utils`, `docs`, `build`
- **APIs**: `endpoints`, `middleware`, `validation`, `models`
### 6. Quick Examples
Show 3-4 practical examples:
```txt
feat(auth): add OAuth2 login support
fix(api): handle null values in user profile endpoint
docs(readme): update installation instructions
refactor(database): extract connection logic to separate module
```text
### 7. Tips for Good Commits
- Keep commits atomic and focused
- Commit often with logical changesets
- Write for your future self and teammates
- Use the body to explain complex changes
- Always reference related issues
### 8. Resources
- Specification: <https://www.conventionalcommits.org/>
- Semantic Versioning: <https://semver.org/>
- Plugin repository: [link to your repo]
Present this information in a clear, scannable format using markdown headings and code blocks.