Agent skill
commit
Crea commits git con verificación obligatoria de calidad. Ejecuta dart analyze, format y tests antes de commitear.
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/commit
SKILL.md
Commit
Crea un commit con los cambios actuales, después de verificar calidad del código.
Cuándo Usar Este Skill (Automático)
Aplicar automáticamente cuando:
- El usuario dice "commit", "commitea", "guarda los cambios"
- El usuario termina una tarea y hay cambios sin commitear
- Hay cambios staged listos para commit
Reglas
NO auto-mencionarse
PROHIBIDO añadir:
Generated with [Claude Code]Co-Authored-By: Claude- Cualquier mención a Claude, Anthropic, o IA
El commit debe parecer escrito por un humano.
NO pedir confirmación
PROHIBIDO pedir confirmación para:
- Hacer
git add -A - Ejecutar el commit
- Ejecutar las verificaciones
Simplemente hazlo. El usuario confía en ti.
Proceso
Fase 1: Detectar paquetes afectados
bash
git diff --name-only HEAD
Identificar qué paquetes tienen cambios:
packages/mot/**→ verificar packages/motpackages/mot_flutter/**→ verificar packages/mot_flutter
Fase 2: Verificaciones OBLIGATORIAS (DEBEN pasar)
Para packages/mot (Dart puro):
bash
cd packages/mot
dart pub get
dart analyze --fatal-infos
dart format --set-exit-if-changed .
dart test
Para packages/mot_flutter (Flutter):
bash
cd packages/mot_flutter
flutter pub get
flutter analyze --fatal-infos
flutter format --set-exit-if-changed .
flutter test
Si CUALQUIER verificación falla:
- Mostrar los errores claramente al usuario
- NO continuar con el commit
- Informar: "Commit bloqueado. Hay X errores que arreglar."
Fase 3: Crear el commit
Solo si Fase 2 pasó completamente:
git statuspara ver cambios- Si no hay staged, hacer
git add -Aautomáticamente - Analizar cambios y generar mensaje:
- Formato:
tipo: descripción breve - Tipos: feat, fix, refactor, test, docs, chore, style
- Inglés, max 72 chars primera línea
- Body opcional si hay contexto importante
- Formato:
- Ejecutar
git commitdirectamente - Mostrar resultado con resumen de verificaciones
Formato del Mensaje
tipo: descripción breve (max 72 chars)
[Body opcional - qué y por qué, no cómo]
Output Esperado
Commit exitoso:
Verificando calidad del código...
packages/mot:
dart analyze: 0 errores
dart format: formatted
dart test: 23 tests passed
Todas las verificaciones pasaron
[main abc1234] feat: add beacon field implementation
3 files changed, 45 insertions(+), 12 deletions(-)
Commit bloqueado:
Verificando calidad del código...
packages/mot:
dart analyze: 3 errores
- lib/src/beacon.dart:66 - Type error...
Commit bloqueado. Arregla los 3 errores antes de commitear.
Prohibido
- Commitear sin ejecutar verificaciones
- Ignorar errores de dart analyze
- Ignorar tests fallidos
- Pedir confirmación (JAMÁS)
- Añadir firmas o atribuciones
- Usar emojis en el mensaje de commit
- Mensajes genéricos como "update files"
Casos Especiales
Solo cambios en docs/
Si los únicos cambios son en docs/**, *.md, o archivos de configuración:
- Saltar verificaciones de código
- Proceder directamente al commit
Didn't find tool you were looking for?