Un linter de texto para la línea de comandos que aplica las reglas de estilo de escritura de tu equipo en editores, CI y código, sin conexión.
evilmartians/lefthook
Un gestor rápido de Git hooks escrito en Go que ejecuta en paralelo comandos de pre-commit y otros hooks en proyectos de Node.js, Ruby, Python y otros entornos.
Alternativa open source a:Husky
- Estrellas
- 8,931
- Forks
- 325
- Issues abiertos
- 91
- Último commit
- ayer
¿Qué es?
Lefthook gestiona los Git hooks de un proyecto mediante un único archivo lefthook.yml. Defines comandos para hooks como pre-commit, pre-push o commit-msg y, después, ejecutas lefthook install una vez para integrarlos en el repositorio. Se distribuye como un binario único sin dependencias y también se puede instalar mediante npm, gem, pipx, Go, Homebrew, apt, winget y otros gestores de paquetes.
Cada hook puede ejecutar trabajos en paralelo y filtrar los archivos que recibe mediante patrones glob, exclusiones o la lista de archivos preparados para el commit. Los trabajos se pueden agrupar con etiquetas, ejecutar dentro de un subdirectorio mediante root, usar archivos de script y ejecutarse con un runner como docker run. Un archivo local de configuración (lefthook-local.yml) permite que cada desarrollador omita o cambie trabajos sin modificar la configuración compartida.
Además de los hooks, los comandos definidos en la configuración se pueden ejecutar directamente con lefthook run, lo que resulta útil para compartir herramientas de corrección o linters. La salida se puede reducir para mostrar solo los mensajes de ejecución y de error.
Funciones clave
- 01Ejecuta comandos de hooks en paralelo para agilizar las comprobaciones de pre-commit y pre-push.
- 02Filtra los archivos de cada trabajo con patrones glob, exclusiones y listas de archivos preparados para el commit.
- 03Agrupa trabajos con etiquetas y permite incluirlos o excluirlos en cada hook.
- 04Permite ejecutar trabajos en subdirectorios, archivos de script y contenedores de Docker.
- 05Permite que cada desarrollador guarde sus propias modificaciones en un archivo de configuración local.
Casos de uso
- Ejecutar ESLint, Stylelint o RuboCop en los archivos preparados para el commit antes de cada commit.
- Auditar dependencias o ejecutar comprobaciones de seguridad antes de un push.
- Imponer plantillas para los mensajes de commit mediante un script de commit-msg.
- Compartir un conjunto de herramientas de corrección para todo el equipo y ejecutarlas cuando se necesite con lefthook run.
Inicio rápido
- 1
Instala lefthook con npm como dependencia de desarrollo
npm install lefthook --save-dev - 2
Configura tus hooks en lefthook.yml
- 3
Instala los hooks en el proyecto de Git
lefthook install
Antes de usarlo
- Algunos detalles de configuración y uso solo están disponibles en el sitio de documentación externo.
Temas
Preguntas frecuentes
- ¿Qué es lefthook?
- Un gestor rápido de Git hooks escrito en Go que ejecuta en paralelo comandos de pre-commit y otros hooks en proyectos de Node.js, Ruby, Python y otros entornos. Lefthook gestiona los Git hooks de un proyecto mediante un único archivo lefthook.yml. Defines comandos para hooks como pre-commit, pre-push o commit-msg y, después, ejecutas lefthook install una vez para integrarlos en el repositorio. Se distribuye como un binario único sin dependencias y también se puede instalar mediante npm, gem, pipx, Go, Homebrew, apt, winget y otros gestores de paquetes.
- ¿lefthook es gratuito? ¿Qué licencia tiene?
- lefthook es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿lefthook sigue mantenido?
- Mantenimiento activo. El último commit de lefthook fue el 21 oct 2026.
- ¿Para qué puedo usar lefthook?
- Ejecutar ESLint, Stylelint o RuboCop en los archivos preparados para el commit antes de cada commit. Auditar dependencias o ejecutar comprobaciones de seguridad antes de un push. Imponer plantillas para los mensajes de commit mediante un script de commit-msg. Compartir un conjunto de herramientas de corrección para todo el equipo y ejecutarlas cuando se necesite con lefthook run.
- ¿Cómo se instala lefthook?
- Instala lefthook con npm como dependencia de desarrollo: npm install lefthook --save-dev Configura tus hooks en lefthook.yml Instala los hooks en el proyecto de Git: lefthook install
- ¿Dónde consigo lefthook?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/evilmartians/lefthook
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Utilidad y biblioteca de Python que ordena y agrupa automáticamente las sentencias de importación.
Una skill para agentes que convierte cambios del árbol de trabajo generados por IA en Conventional Commits claros, ramas, pulls y pushes seguros, y PR de GitHub.
Una app nativa para la barra de menús de macOS que muestra el estado de los repositorios de GitHub: issues, pull requests, CI, releases y clones locales.
Una pequeña biblioteca de gestión de estado para React basada en hooks, sin necesidad de providers.
Un clon de cat(1) para la terminal, con resaltado de sintaxis, indicadores de cambios de Git y paginación automática.