claude-git-hooks 1.5.1 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +49 -3
- package/README.md +1 -1
- package/bin/claude-hooks +334 -334
- package/package.json +1 -1
- package/templates/pre-commit +91 -91
- package/templates/prepare-commit-msg +32 -32
package/CHANGELOG.md
CHANGED
|
@@ -5,18 +5,28 @@ Todos los cambios notables en este proyecto se documentarán en este archivo.
|
|
|
5
5
|
El formato está basado en [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.5.2] - 2025-09-11
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- 🈳 Traducidos todos los logs a inglés
|
|
13
|
+
- 📋 Aclaraciones de uso de analyze-diff en README
|
|
14
|
+
|
|
8
15
|
## [1.5.1] - 2025-09-11
|
|
9
16
|
|
|
10
17
|
### Added
|
|
18
|
+
|
|
11
19
|
- 📋 Sección CHEATSHEET en README
|
|
12
20
|
|
|
13
21
|
### Fixed
|
|
22
|
+
|
|
14
23
|
- 🔧 SKIP_ANALYSIS_BLOCK funciona correctamente
|
|
15
24
|
- 📝 Estructura del proyecto en documentación
|
|
16
25
|
|
|
17
26
|
## [1.5.0] - 2025-09-10
|
|
18
27
|
|
|
19
28
|
### Added
|
|
29
|
+
|
|
20
30
|
- 🔍 Nuevo comando `claude-hooks analyze-diff [base]` para análisis de diferencias entre ramas
|
|
21
31
|
- Genera título de PR conciso (máx. 72 caracteres)
|
|
22
32
|
- Crea descripción detallada del PR con markdown
|
|
@@ -27,15 +37,18 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
27
37
|
- Guarda resultados en `.claude-pr-analysis.json`
|
|
28
38
|
|
|
29
39
|
### Changed
|
|
40
|
+
|
|
30
41
|
- 🎯 Modo SonarQube ahora es el predeterminado (no hay selección interactiva)
|
|
31
42
|
- ⚡ Eliminada lógica de selección de modo del pre-commit hook
|
|
32
43
|
- 🗑️ Removidas referencias a guardado de preferencias `.claude-analysis-mode`
|
|
33
44
|
|
|
34
45
|
### Fixed
|
|
46
|
+
|
|
35
47
|
- 🐛 Eliminado prompt interactivo incompatible con algunas consolas
|
|
36
48
|
- 🔧 Pre-commit ahora va directo al análisis sin solicitar input del usuario
|
|
37
49
|
|
|
38
50
|
### Removed
|
|
51
|
+
|
|
39
52
|
- 🗑️ Eliminada selección interactiva de modo de análisis
|
|
40
53
|
- 🗑️ Removido comando `set-mode` (ya no es necesario)
|
|
41
54
|
- 🗑️ Eliminada variable de entorno `CLAUDE_ANALYSIS_MODE`
|
|
@@ -43,6 +56,7 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
43
56
|
## [1.4.2] - 2025-09-08
|
|
44
57
|
|
|
45
58
|
### Added
|
|
59
|
+
|
|
46
60
|
- 🚫 Comentario `// SKIP-ANALYSIS` para excluir código del análisis
|
|
47
61
|
- Una línea: excluye la siguiente línea
|
|
48
62
|
- Bloque: código entre dos comentarios `// SKIP_ANALYSIS_BLOCK` es excluido
|
|
@@ -51,31 +65,37 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
51
65
|
- Inyección de dependencias con field injection es aceptable
|
|
52
66
|
|
|
53
67
|
### Changed
|
|
68
|
+
|
|
54
69
|
- 📋 Actualizada documentación con casos de uso de commits clarificados
|
|
55
70
|
- 🎯 Templates de prompts actualizados con reglas de Spring Framework
|
|
56
71
|
|
|
57
72
|
### Fixed
|
|
73
|
+
|
|
58
74
|
- 🔧 Clarificado que `git commit --no-verify -m "auto"` genera mensaje automático sin análisis
|
|
59
75
|
|
|
60
76
|
## [1.4.1] - 2025-09-04
|
|
61
77
|
|
|
62
78
|
### Changed
|
|
79
|
+
|
|
63
80
|
- 🚀 **BREAKING**: Eliminado modo estándar, ahora solo existe modo SonarQube
|
|
64
81
|
- ⚡ Prompts optimizados para Claude: reducción de ~80% en tokens manteniendo eficacia
|
|
65
82
|
- 🎯 Nuevo formato ultra-compacto de prompts usando notación concisa y directivas claras
|
|
66
83
|
- 📝 Templates simplificados: CLAUDE_ANALYSIS_PROMPT_SONAR.md, CLAUDE_PRE_COMMIT_SONAR.md, CLAUDE_RESOLUTION_PROMPT.md
|
|
67
84
|
|
|
68
85
|
### Fixed
|
|
86
|
+
|
|
69
87
|
- 🐛 Mejorada la lógica de escritura para mejor formación del prompt de resolución de problemas críticos
|
|
70
88
|
- 🔧 Corregido el formato del prompt AI-friendly para resolución de issues
|
|
71
89
|
|
|
72
90
|
### Removed
|
|
91
|
+
|
|
73
92
|
- 🗑️ Eliminados archivos del modo estándar: CLAUDE_PRE_COMMIT.md, CLAUDE_ANALYSIS_PROMPT.md
|
|
74
93
|
- 🗑️ Eliminada lógica de selección de modo (ahora siempre usa SonarQube)
|
|
75
94
|
|
|
76
95
|
## [1.4.0] - 2025-08-29
|
|
77
96
|
|
|
78
97
|
### Added
|
|
98
|
+
|
|
79
99
|
- 🎯 Prompts externalizados en archivos `.md` para facilitar personalización
|
|
80
100
|
- 🤖 Generación automática de prompt AI-friendly para resolución de problemas críticos
|
|
81
101
|
- 📝 Nuevos templates de prompts: `CLAUDE_ANALYSIS_PROMPT.md`, `CLAUDE_ANALYSIS_PROMPT_SONAR.md`, `CLAUDE_RESOLUTION_PROMPT.md`
|
|
@@ -85,16 +105,19 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
85
105
|
- 📖 Ejemplos detallados de respuestas JSON con blocking issues en README
|
|
86
106
|
|
|
87
107
|
### Changed
|
|
108
|
+
|
|
88
109
|
- 🏗️ Estandarización de `blockingIssues` a formato objeto (nunca strings)
|
|
89
110
|
- 📦 Separación de prompts del código para mayor mantenibilidad
|
|
90
111
|
- 🔧 Hook pre-commit simplificado sin fallbacks complejos
|
|
91
112
|
- 📁 Instalador actualizado para copiar todos los templates de prompts
|
|
92
113
|
|
|
93
114
|
### Fixed
|
|
115
|
+
|
|
94
116
|
- 🐛 Consistencia en el formato de respuesta JSON para ambos modos
|
|
95
117
|
- 🔧 Mejor manejo de errores cuando faltan archivos de configuración
|
|
96
118
|
|
|
97
119
|
### Technical
|
|
120
|
+
|
|
98
121
|
- 🏗️ Función `generate_resolution_prompt()` para crear prompts de resolución
|
|
99
122
|
- 📝 Templates de prompts con placeholders reemplazables
|
|
100
123
|
- 🎯 Estructura JSON estricta para blockingIssues con campos obligatorios
|
|
@@ -103,6 +126,7 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
103
126
|
## [1.3.0] - 2025-08-28
|
|
104
127
|
|
|
105
128
|
### Added
|
|
129
|
+
|
|
106
130
|
- 🚀 Nuevo comando `claude-hooks update` para actualizar a la última versión disponible
|
|
107
131
|
- 🔄 Verificación automática de versión antes de cada commit con prompt interactivo
|
|
108
132
|
- 📜 Script compartido `check-version.sh` para evitar duplicación de código
|
|
@@ -110,16 +134,19 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
110
134
|
- 📊 Mensajes informativos detallados durante el proceso de verificación y actualización
|
|
111
135
|
|
|
112
136
|
### Changed
|
|
137
|
+
|
|
113
138
|
- 🎯 El hook `pre-commit` ahora verifica automáticamente si hay actualizaciones disponibles
|
|
114
139
|
- 📦 La instalación ahora incluye el script `check-version.sh` en `.git/hooks/`
|
|
115
140
|
- 🔧 Mejorada la UX con mensajes claros sobre el estado de la versión
|
|
116
141
|
|
|
117
142
|
### Fixed
|
|
143
|
+
|
|
118
144
|
- 🐛 Corregido el parsing de versión desde NPM API (usaba endpoint incorrecto)
|
|
119
145
|
- 🔧 Mejorada la compatibilidad del prompt interactivo para consolas IntelliJ/WSL
|
|
120
146
|
- 📝 Múltiples métodos de fallback para leer input del usuario
|
|
121
147
|
|
|
122
148
|
### Technical
|
|
149
|
+
|
|
123
150
|
- 🏗️ Función `getLatestVersion()` ahora usa `dist-tags.latest` de NPM API
|
|
124
151
|
- 🔄 Función `checkVersionAndPromptUpdate()` reutilizable para verificación
|
|
125
152
|
- 📁 Script compartido para evitar duplicación de lógica de verificación
|
|
@@ -128,33 +155,39 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
128
155
|
## [1.2.4] - 2025-08-22
|
|
129
156
|
|
|
130
157
|
### Fixed
|
|
158
|
+
|
|
131
159
|
- 🐛 Corregido el análisis de SonarQube para mostrar correctamente el formato detallado
|
|
132
160
|
- 📊 Arreglado el parsing de JSON para buscar `QUALITY_GATE` en mayúsculas según las pautas
|
|
133
161
|
- 🔧 Actualizado el mapeo de campos JSON para coincidir con la estructura esperada
|
|
134
162
|
|
|
135
163
|
### Changed
|
|
164
|
+
|
|
136
165
|
- 📈 Añadidas métricas de coverage, duplications y complexity al formato SonarQube
|
|
137
166
|
- 📝 Actualizado el archivo de pautas SonarQube para incluir todas las métricas
|
|
138
167
|
|
|
139
168
|
## [1.2.3] - 2025-08-22
|
|
140
169
|
|
|
141
170
|
### Added
|
|
171
|
+
|
|
142
172
|
- 🚀 Actualización automática de `.gitignore` durante la instalación
|
|
143
173
|
- 📝 Claude Hooks ahora agrega automáticamente las entradas necesarias a `.gitignore`
|
|
144
174
|
- 🔍 El comando `status` ahora muestra el estado de las entradas en `.gitignore`
|
|
145
175
|
|
|
146
176
|
### Changed
|
|
177
|
+
|
|
147
178
|
- 🎯 Mejorado el proceso de instalación para ser más completo y automatizado
|
|
148
179
|
- 📊 El comando `status` ahora proporciona información más detallada sobre la configuración
|
|
149
180
|
|
|
150
181
|
## [1.2.2] - 2025-08-22
|
|
151
182
|
|
|
152
183
|
### Fixed
|
|
184
|
+
|
|
153
185
|
- 🐛 Corregido problema donde los archivos markdown de pautas no se instalaban correctamente desde npm
|
|
154
186
|
- 📁 Los archivos de pautas ahora se instalan en el directorio `.claude/` en lugar de la raíz del proyecto
|
|
155
187
|
- 🔧 Actualizado el hook pre-commit para buscar los archivos de pautas en la nueva ubicación `.claude/`
|
|
156
188
|
|
|
157
189
|
### Changed
|
|
190
|
+
|
|
158
191
|
- 📂 Los archivos `CLAUDE_PRE_COMMIT.md` y `CLAUDE_PRE_COMMIT_SONAR.md` ahora se almacenan en `.claude/`
|
|
159
192
|
- 🎯 Mejorada la organización del proyecto manteniendo los archivos de configuración separados del código fuente
|
|
160
193
|
- 📝 Actualizada la documentación para reflejar la nueva estructura de directorios
|
|
@@ -162,6 +195,7 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
162
195
|
## [1.2.1] - 2024-07-24
|
|
163
196
|
|
|
164
197
|
### Fixed
|
|
198
|
+
|
|
165
199
|
- 🐛 Corregido problema de bloqueo del spinner durante verificación de autenticación Claude
|
|
166
200
|
- 🎨 Arreglado sistema de entretenimiento para mostrar correctamente spinner, chistes y countdown
|
|
167
201
|
- 🔧 Solucionado problema de líneas duplicadas en consola después del segundo chiste
|
|
@@ -169,11 +203,13 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
169
203
|
- ⏱️ Aumentado timeout de verificación de autenticación a 2 minutos
|
|
170
204
|
|
|
171
205
|
### Changed
|
|
206
|
+
|
|
172
207
|
- 🔄 Reemplazado `execSync` por `spawn` en verificación de autenticación para evitar bloqueos
|
|
173
208
|
- 📍 Mejorado sistema de posicionamiento del cursor para renderizado consistente
|
|
174
209
|
- 🎯 Optimizada lógica de actualización del spinner para evitar race conditions
|
|
175
210
|
|
|
176
211
|
### Technical
|
|
212
|
+
|
|
177
213
|
- 🏗️ Uso de `spawn` con `stdio: 'ignore'` para mantener compatibilidad con comportamiento original
|
|
178
214
|
- 🎮 Sistema de reserva de espacio (3 líneas) para evitar problemas de renderizado
|
|
179
215
|
- 🧮 Contador de chistes cada 10 segundos real (sin drift de tiempo)
|
|
@@ -182,6 +218,7 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
182
218
|
## [1.2.0] - 2024-07-24
|
|
183
219
|
|
|
184
220
|
### Added
|
|
221
|
+
|
|
185
222
|
- ✨ Sistema de entretenimiento con spinner animado y chistes durante operaciones largas
|
|
186
223
|
- 🔐 Lectura segura y no-persistente de contraseña sudo para instalación automática
|
|
187
224
|
- 🛠️ Verificación completa de dependencias del sistema (jq, curl, herramientas Unix)
|
|
@@ -190,15 +227,18 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
190
227
|
- 🎭 Chistes rotativos cada 10 segundos durante verificación de autenticación Claude
|
|
191
228
|
|
|
192
229
|
### Enhanced
|
|
230
|
+
|
|
193
231
|
- 📦 Función `install` ahora incluye verificación e instalación completa de dependencias
|
|
194
232
|
- 🔍 Verificación de autenticación Claude con entretenimiento visual
|
|
195
233
|
- 💻 Detección inteligente de plataforma (Linux/macOS) para instalación de paquetes
|
|
196
234
|
|
|
197
235
|
### Removed
|
|
236
|
+
|
|
198
237
|
- 🗑️ Eliminados archivos `setup-wsl.sh` y `setup-wsl.js` (redundantes)
|
|
199
238
|
- 🧹 Simplificación de la arquitectura eliminando duplicación de código
|
|
200
239
|
|
|
201
240
|
### Technical
|
|
241
|
+
|
|
202
242
|
- 🔧 Añadido módulo `https` para obtener chistes de API externa
|
|
203
243
|
- 🎨 Clase `Entertainment` para manejo de spinner y chistes
|
|
204
244
|
- 🔐 Funciones `readPassword()` y `testSudoPassword()` para manejo seguro de credenciales
|
|
@@ -207,23 +247,27 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
207
247
|
## [1.1.0] - 2024-07-24
|
|
208
248
|
|
|
209
249
|
### Added
|
|
250
|
+
|
|
210
251
|
- 🎯 Comando `set-mode` para cambiar entre análisis estándar y SonarQube
|
|
211
252
|
- 📊 Modo SonarQube con métricas detalladas y quality gate
|
|
212
253
|
- 📈 Visualización del modo de análisis actual en comando `status`
|
|
213
254
|
- 🔧 Configuración persistente del modo de análisis en archivo `.claude-analysis-mode`
|
|
214
255
|
|
|
215
|
-
### Enhanced
|
|
256
|
+
### Enhanced
|
|
257
|
+
|
|
216
258
|
- 📋 Comando `status` ahora muestra modo de análisis y archivos de pautas
|
|
217
259
|
- 📚 Documentación mejorada con ejemplos de ambos modos
|
|
218
260
|
- 🎨 Mejor formateo de salida en comandos informativos
|
|
219
261
|
|
|
220
262
|
### Technical
|
|
263
|
+
|
|
221
264
|
- 📁 Detección automática de archivos de pautas (CLAUDE_PRE_COMMIT.md, CLAUDE_PRE_COMMIT_SONAR.md)
|
|
222
265
|
- 🏗️ Estructura preparada para múltiples modos de análisis
|
|
223
266
|
|
|
224
267
|
## [1.0.0] - 2024-07-24
|
|
225
268
|
|
|
226
269
|
### Added
|
|
270
|
+
|
|
227
271
|
- 🎉 Primera versión estable del paquete npm `claude-git-hooks`
|
|
228
272
|
- 📦 CLI global `claude-hooks` para gestión de hooks de Git
|
|
229
273
|
- 🪝 Instalación automática de hooks `pre-commit` y `prepare-commit-msg`
|
|
@@ -235,6 +279,7 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
235
279
|
- 🔄 Sistema de backup automático de hooks existentes
|
|
236
280
|
|
|
237
281
|
### Technical
|
|
282
|
+
|
|
238
283
|
- 🏗️ Arquitectura modular con funciones especializadas
|
|
239
284
|
- 🎨 Sistema de colores para output legible
|
|
240
285
|
- 🛡️ Validaciones de entorno (repositorio Git, dependencias)
|
|
@@ -243,9 +288,10 @@ y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.h
|
|
|
243
288
|
---
|
|
244
289
|
|
|
245
290
|
## Tipos de cambios
|
|
291
|
+
|
|
246
292
|
- `Added` - para nuevas funcionalidades
|
|
247
|
-
- `Changed` - para cambios en funcionalidades existentes
|
|
293
|
+
- `Changed` - para cambios en funcionalidades existentes
|
|
248
294
|
- `Deprecated` - para funcionalidades que serán removidas
|
|
249
295
|
- `Removed` - para funcionalidades removidas
|
|
250
296
|
- `Fixed` - para corrección de bugs
|
|
251
|
-
- `Security` - para vulnerabilidades corregidas
|
|
297
|
+
- `Security` - para vulnerabilidades corregidas
|
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ git commit --no-verify -m "auto"
|
|
|
17
17
|
# Analizar diferencias con rama origin actual
|
|
18
18
|
claude-hooks analyze-diff
|
|
19
19
|
|
|
20
|
-
# Analizar diferencias para PR (comparar con develop)
|
|
20
|
+
# Analizar diferencias para PR (comparar con develop LOCAL)
|
|
21
21
|
claude-hooks analyze-diff develop
|
|
22
22
|
|
|
23
23
|
# Reinstalar durante desarrollo (después de npm link)
|