Skip to content
Back to skills

Commit Message 9

ASecurity

Generate commit messages following conventional commits with scope detection

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 27, 2026
code-qualitygotestingrefactoringdatabaseperformancedocumentation

Security analysis

A100/100

Scanned September 27, 2026

npx -y skills add David-Li0406/meta-skill-evloving --skill commit-message-9 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Commit Message 9?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Commit Message 9
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-commit-message-9/badge)](https://www.skillsdirectory.com/skills/david-li0406-commit-message-9)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
type: skill
name: Commit Message
description: Generate commit messages following conventional commits with scope detection
skillSlug: commit-message
phases: [E, C]
generated: 2026-01-20
status: filled
scaffoldVersion: "2.0.0"
---

# Commit Message Skill

## When to Use

Use this skill when:
- Creating commit messages for code changes
- Following project commit conventions
- Ensuring clear commit history
- Grouping related changes logically

## Commit Message Format

Follow **Conventional Commits** format with scope detection:

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

[optional body]

[optional footer]
```

## Commit Types

Based on project patterns, use these types:

- `feat`: Nova funcionalidade
- `fix`: Correção de bugs
- `docs`: Mudanças na documentação
- `refactor`: Refatoração de código
- `perf`: Melhorias de performance
- `test`: Adição ou correção de testes
- `chore`: Tarefas de manutenção

## Scopes for This Project

Detect scope from files changed:

- `indexer`: Changes to `indexer.py`
- `search`: Changes to `search.py`
- `organize`: Changes to `organize.py`
- `metrics`: Changes to `metrics.py`
- `database`: Database schema changes
- `ocr`: OCR-related changes
- `docs`: Documentation updates
- `deps`: Dependency changes

## Examples from Project Context

### Feature Addition

```
feat(indexer): adiciona suporte a OCR para PDFs escaneados

- Implementa extração com pytesseract como fallback
- Adiciona métricas de extração ao banco de dados
- Garante extração completa mesmo de PDFs escaneados
```

### Bug Fix

```
fix(search): corrige tratamento de caracteres especiais em busca

Corrige problema onde termos com acentos não eram encontrados
corretamente em buscas FTS5.
```

### Documentation

```
docs(readme): atualiza instruções de instalação com OCR

Adiciona seção sobre instalação do Tesseract OCR para garantir
extração completa de todos os documentos.
```

### Refactoring

```
refactor(indexer): melhora organização das funções de extração

Separa lógica de extração direta e OCR em funções distintas
para melhor manutenibilidade.
```

### Performance

```
perf(database): adiciona índices para melhorar performance de busca

Cria índices em category e contract_number para acelerar
queries filtradas.
```

### Testing

```
test(indexer): adiciona testes para classificação de documentos

Testa classificação de contratos, aditivos e anexos com
diferentes padrões de nomes de arquivo.
```

### Chore

```
chore(deps): atualiza pdfplumber para versão 0.10.0

Atualiza dependência para versão mais recente com melhorias
de performance.
```

## Commit Message Best Practices

1. **Portuguese**: Use português para descrições (project standard)
2. **Clear Scope**: Always include scope when applicable
3. **Concise**: Keep first line under 72 characters
4. **Body**: Use body for detailed explanations when needed
5. **Breaking Changes**: Use `BREAKING CHANGE:` in footer if applicable

## Scope Detection Rules

Based on file paths:
- `contrato/indexer.py` → `(indexer)`
- `contrato/search.py` → `(search)`
- `contrato/organize.py` → `(organize)`
- `contrato/metrics.py` → `(metrics)`
- `contrato/requirements.txt` → `(deps)`
- `contrato/README.md` → `(docs)`
- Database files → `(database)`

## Examples from Codebase Context

### Adding OCR Feature

```
feat(indexer): adiciona OCR para extração de PDFs escaneados

Implementa extração completa de texto usando Tesseract OCR
como fallback quando pdfplumber não extrai texto suficiente.
Adiciona tabela extraction_metrics para rastrear métodos
de extração utilizados.
```

### Fixing Classification

```
fix(indexer): corrige classificação de anexos com partes

Ajusta regex para identificar corretamente anexos divididos
em partes (ex: Anexo III - Parte I).
```

### Database Changes

```
feat(database): adiciona tabela de métricas de extração

Cria tabela extraction_metrics para armazenar estatísticas
detalhadas de cada extração, incluindo método utilizado e
tempo de processamento.
```

## Checklist

When creating commit message:
- [ ] Type correctly identified (feat, fix, docs, etc.)
- [ ] Scope detected from changed files
- [ ] Description clear and in Portuguese
- [ ] Body explains "why" not just "what" (if needed)
- [ ] Breaking changes documented in footer
- [ ] Message follows conventional commits format

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…