¿Qué hace conventional-commit?
Inducción y flujo de trabajo para generar mensajes de commit convencionales utilizando un formato XML estructurado. Guía a los usuarios para crear mensajes de commit estandarizados y descriptivos según la especificación de Conventional Commits, incluyendo instrucciones, ejemplos y validación.
Introducción
Este skill ayuda a los desarrolladores a redactar mensajes de commit que cumplan con la especificación Conventional Commits. Esto permite:
- Historial de commits legible y estructurado.
- Automatización de versionado semántico (semver).
- Generación automática de changelogs.
- Mejor colaboración en equipos.
Formato del mensaje XML
El skill utiliza el siguiente formato estructurado:
<commit>
<type>feat|fix|docs|style|refactor|perf|test|build|ci|chore|revert</type>
<scope>opcional</scope>
<description>Descripción breve del cambio</description>
<body>
Cuerpo opcional con detalles adicionales.
</body>
<footer>
Pie de página opcional (ejemplo: BREAKING CHANGE, issues relacionados).
</footer>
</commit>
Tipos de commit estándar
| Tipo | Descripción |
|---|---|
feat | Nueva funcionalidad para el usuario. |
fix | Corrección de un error. |
docs | Cambios en la documentación. |
style | Cambios de formato, sin afectar el código (espacios, etc.). |
refactor | Refactorización de código sin correcciones ni nuevas características. |
perf | Mejoras de rendimiento. |
test | Adición o modificación de pruebas. |
build | Cambios en el sistema de construcción o dependencias. |
ci | Cambios en la configuración de CI/CD. |
chore | Tareas de mantenimiento (actualización de paquetes, etc.). |
revert | Reversión de un commit anterior. |
Ejemplo de uso
Solicitud de commit
Usuario: Genera un commit para el cambio que agrega una función de búsqueda al módulo de usuarios.
Respuesta del skill:
<commit>
<type>feat</type>
<scope>users</scope>
<description>Agregar función de búsqueda al módulo de usuarios</description>
<body>
- Implementa búsqueda por nombre, email y rol.
- Se agregaron pruebas unitarias y de integración.
- La nueva API es compatible con versiones anteriores.
</body>
<footer>
Closes #123
</footer>
</commit>
Validación
El skill valida que el mensaje cumpla con:
- Tipo obligatorio: Debe ser uno de los tipos listados.
- Descripción obligatoria: No debe estar vacía.
- Mayúscula inicial: La descripción debe comenzar con mayúscula.
- Sin punto final: La descripción no debe terminar en punto.
- Formato de pie de página: Si incluye
BREAKING CHANGE, debe ser en mayúsculas y seguido de dos puntos.
Integración con herramientas
Este skill funciona correctamente con:
- Claude Code: Se activa mediante el prompt
commito referencia explícita. - Cursor: Compatible mediante comandos de chat y formato estructurado.
- Codex: Utilizable en flujos de trabajo de GitHub Actions.
Notas adicionales
- Los alcances deben ser sustantivos en plural, como
api,auth,config,docs. - Para cambios que rompen la compatibilidad, usar
BREAKING CHANGE:en el pie de página o agregar!después del tipo/alcance. - Se recomienda mantener los mensajes en tiempo presente imperativo ("Agregar", "Corregir", "Actualizar").