specforge-mcp 0.2.2 → 0.3.0

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.
Files changed (64) hide show
  1. package/dist/engine/skill-generator/sections-skills.d.ts +4 -0
  2. package/dist/engine/skill-generator/sections-skills.d.ts.map +1 -0
  3. package/dist/engine/skill-generator/sections-skills.js +51 -0
  4. package/dist/engine/skill-generator/sections-skills.js.map +1 -0
  5. package/dist/engine/skill-generator/sections.d.ts +1 -0
  6. package/dist/engine/skill-generator/sections.d.ts.map +1 -1
  7. package/dist/engine/skill-generator/sections.js +2 -1
  8. package/dist/engine/skill-generator/sections.js.map +1 -1
  9. package/dist/engine/skill-generator.d.ts +3 -1
  10. package/dist/engine/skill-generator.d.ts.map +1 -1
  11. package/dist/engine/skill-generator.js +11 -2
  12. package/dist/engine/skill-generator.js.map +1 -1
  13. package/dist/engine/test-plan-generator.d.ts +3 -0
  14. package/dist/engine/test-plan-generator.d.ts.map +1 -0
  15. package/dist/engine/test-plan-generator.js +166 -0
  16. package/dist/engine/test-plan-generator.js.map +1 -0
  17. package/dist/engine/test-spec-generator.d.ts +8 -0
  18. package/dist/engine/test-spec-generator.d.ts.map +1 -0
  19. package/dist/engine/test-spec-generator.js +348 -0
  20. package/dist/engine/test-spec-generator.js.map +1 -0
  21. package/dist/tools/generate-rules.d.ts.map +1 -1
  22. package/dist/tools/generate-rules.js +20 -0
  23. package/dist/tools/generate-rules.js.map +1 -1
  24. package/dist/tools/generate-tests/generators/graphql-test-generator.d.ts +17 -0
  25. package/dist/tools/generate-tests/generators/graphql-test-generator.d.ts.map +1 -0
  26. package/dist/tools/generate-tests/generators/graphql-test-generator.js +235 -0
  27. package/dist/tools/generate-tests/generators/graphql-test-generator.js.map +1 -0
  28. package/dist/tools/generate-tests/generators/grpc-test-generator.d.ts +17 -0
  29. package/dist/tools/generate-tests/generators/grpc-test-generator.d.ts.map +1 -0
  30. package/dist/tools/generate-tests/generators/grpc-test-generator.js +283 -0
  31. package/dist/tools/generate-tests/generators/grpc-test-generator.js.map +1 -0
  32. package/dist/tools/generate-tests/generators/visual-regression-generator.d.ts +19 -0
  33. package/dist/tools/generate-tests/generators/visual-regression-generator.d.ts.map +1 -0
  34. package/dist/tools/generate-tests/generators/visual-regression-generator.js +304 -0
  35. package/dist/tools/generate-tests/generators/visual-regression-generator.js.map +1 -0
  36. package/dist/tools/generate-tests/generators/websocket-test-generator.d.ts +17 -0
  37. package/dist/tools/generate-tests/generators/websocket-test-generator.d.ts.map +1 -0
  38. package/dist/tools/generate-tests/generators/websocket-test-generator.js +243 -0
  39. package/dist/tools/generate-tests/generators/websocket-test-generator.js.map +1 -0
  40. package/dist/tools/generate-tests/plan-mode-handler.d.ts +3 -0
  41. package/dist/tools/generate-tests/plan-mode-handler.d.ts.map +1 -0
  42. package/dist/tools/generate-tests/plan-mode-handler.js +54 -0
  43. package/dist/tools/generate-tests/plan-mode-handler.js.map +1 -0
  44. package/dist/tools/generate-tests/spec-dispatcher.d.ts.map +1 -1
  45. package/dist/tools/generate-tests/spec-dispatcher.js +25 -0
  46. package/dist/tools/generate-tests/spec-dispatcher.js.map +1 -1
  47. package/dist/tools/generate-tests/test-helpers.d.ts +8 -0
  48. package/dist/tools/generate-tests/test-helpers.d.ts.map +1 -0
  49. package/dist/tools/generate-tests/test-helpers.js +120 -0
  50. package/dist/tools/generate-tests/test-helpers.js.map +1 -0
  51. package/dist/tools/generate-tests.d.ts.map +1 -1
  52. package/dist/tools/generate-tests.js +6 -118
  53. package/dist/tools/generate-tests.js.map +1 -1
  54. package/dist/tools/init-project/handler.d.ts.map +1 -1
  55. package/dist/tools/init-project/handler.js +29 -0
  56. package/dist/tools/init-project/handler.js.map +1 -1
  57. package/dist/types/stack/recommend.d.ts +2 -0
  58. package/dist/types/stack/recommend.d.ts.map +1 -1
  59. package/dist/types/testing.d.ts +51 -0
  60. package/dist/types/testing.d.ts.map +1 -1
  61. package/package.json +3 -2
  62. package/src/i18n/messages/en.json +333 -0
  63. package/src/i18n/messages/es.json +333 -0
  64. package/src/i18n/messages/pt.json +333 -0
@@ -0,0 +1,333 @@
1
+ {
2
+ "spec": {
3
+ "created": "Spec {id} creada exitosamente",
4
+ "updated": "Spec {id} actualizada a estado {status}",
5
+ "notFound": "Spec {id} no encontrada",
6
+ "invalidTransition": "Transición inválida de {from} a {to}. Válido: draft → review → approved → implementing → done",
7
+ "actualsRequired": "Se requieren métricas reales (actuals) al marcar spec como done",
8
+ "duplicateTitle": "Ya existe una spec con título '{title}'. Usando slug: {slug}"
9
+ },
10
+ "project": {
11
+ "initialized": "Proyecto inicializado: {language} / {framework} detectado",
12
+ "notFound": "Proyecto no encontrado. Ejecuta init_project primero",
13
+ "alreadyExists": "Proyecto ya inicializado. Actualizando knowledge...",
14
+ "emptyProject": "Proyecto vacio detectado. Usa create_spec para definir tu primera feature y SpecForge te guiara en el setup.",
15
+ "unknownLanguage": "No se pudo detectar el lenguaje. Configúralo manualmente con learn_pattern"
16
+ },
17
+ "locale": {
18
+ "changed": "Idioma cambiado a {locale}",
19
+ "unsupported": "Idioma '{locale}' no soportado. Disponibles: {available}. Agrega nuevos idiomas en templates/ e i18n/messages/",
20
+ "globalChanged": "Idioma por defecto cambiado a {locale}"
21
+ },
22
+ "estimate": {
23
+ "noHistory": "Sin datos históricos. Usando heurísticas base (confianza: baja)",
24
+ "withHistory": "Basado en {count} specs similares (confianza: {confidence})"
25
+ },
26
+ "reverseEngineer": {
27
+ "analyzing": "Analizando {count} archivos...",
28
+ "completed": "Spec draft generada desde {count} archivos. Marcada como draft — requiere revisión",
29
+ "pathNotFound": "Path no encontrado: {path}",
30
+ "tooLarge": "Directorio tiene {count} archivos. Usa depth: 'deep' para análisis completo"
31
+ },
32
+ "validate": {
33
+ "score": "Cobertura de implementación: {score}%",
34
+ "allGood": "Todos los archivos de la spec están implementados",
35
+ "missing": "{count} archivos de la spec no encontrados en la implementación"
36
+ },
37
+ "docs": {
38
+ "found": "Documentación encontrada para {framework}: {topic}",
39
+ "notFound": "No se encontró documentación para '{topic}' en {framework}",
40
+ "registryMissing": "Framework '{framework}' no está en el registry de docs. Agrégalo en config/docs-registry.json"
41
+ },
42
+ "mcps": {
43
+ "discovered": "Se encontraron {count} MCP servers",
44
+ "configNotFound": "Archivo de configuración no encontrado en {path}",
45
+ "noneFound": "No hay MCP servers configurados"
46
+ },
47
+ "sections": {
48
+ "metadata": "Metadata",
49
+ "estimation": "Estimación",
50
+ "postImplementation": "Post-implementación (llenar al completar)",
51
+ "interfaces": "Interfaces / Types",
52
+ "models": "Modelos / Types",
53
+ "structs": "Structs / Interfaces",
54
+ "schemaDb": "Schema de Base de Datos",
55
+ "behavior": "Comportamiento",
56
+ "happyPath": "Camino Feliz",
57
+ "edgeCases": "Casos Borde",
58
+ "dataFlow": "Flujo de Datos",
59
+ "files": "Archivos",
60
+ "toCreate": "A crear",
61
+ "toModify": "A modificar",
62
+ "verification": "Criterios de Verificación",
63
+ "technicalNotes": "Notas Técnicas",
64
+ "availableMcps": "MCPs Disponibles (auto-detectados)"
65
+ },
66
+ "tools": {
67
+ "set_locale": {
68
+ "description": "Cambiar el idioma activo para mensajes y plantillas de specs",
69
+ "success": "Idioma establecido a {locale}",
70
+ "notImplemented": "set_locale aún no está implementado"
71
+ },
72
+ "init_project": {
73
+ "description": "Inicializar un proyecto — detecta lenguaje, framework, arquitectura y almacena conocimiento del proyecto",
74
+ "success": "Proyecto inicializado en {projectPath}",
75
+ "notImplemented": "init_project aún no está implementado"
76
+ },
77
+ "init_constitution": {
78
+ "description": "Generar la constitución del proyecto — principios arquitectónicos inmutables y reglas de calidad",
79
+ "success": "Constitución inicializada para proyecto {projectId} con {count} principios",
80
+ "notImplemented": "init_constitution aún no está implementado"
81
+ },
82
+ "clarify_requirements": {
83
+ "description": "Generar preguntas de clarificación antes de crear una spec",
84
+ "success": "Se generaron {count} preguntas de clarificación para el tema: {topic}",
85
+ "notImplemented": "clarify_requirements aún no está implementado"
86
+ },
87
+ "create_spec": {
88
+ "description": "Crear una spec SDD completa (HU.md + FICHA-TECNICA.md) desde una descripción",
89
+ "success": "Spec {id} creada: {title}",
90
+ "notImplemented": "create_spec aún no está implementado"
91
+ },
92
+ "list_specs": {
93
+ "description": "Listar todas las specs de un proyecto, opcionalmente filtrando por estado",
94
+ "success": "Se encontraron {count} specs",
95
+ "notImplemented": "list_specs aún no está implementado"
96
+ },
97
+ "update_status": {
98
+ "description": "Transicionar una spec a través de su ciclo de vida (draft → review → approved → implementing → done)",
99
+ "success": "Spec {specId} actualizada a estado {status}",
100
+ "notImplemented": "update_status aún no está implementado"
101
+ },
102
+ "estimate": {
103
+ "description": "Estimar esfuerzo, costo y uso de tokens para una spec usando análisis multi-agente",
104
+ "success": "Estimación completa para spec {specId} — {devHours}h dev, ${totalCostUsd} total",
105
+ "notImplemented": "estimate aún no está implementado"
106
+ },
107
+ "reverse_engineer": {
108
+ "description": "Analizar código existente y generar una spec SDD desde él",
109
+ "success": "Spec generada por ingeniería inversa desde {path}",
110
+ "notImplemented": "reverse_engineer aún no está implementado"
111
+ },
112
+ "validate": {
113
+ "description": "Validar implementación contra su spec — cobertura, drift y calidad",
114
+ "success": "Validación completa: {score}% de cobertura",
115
+ "notImplemented": "validate aún no está implementado"
116
+ },
117
+ "detect_drift": {
118
+ "description": "Detectar drift entre spec e implementación",
119
+ "success": "Análisis de drift completo: {driftScore}% de drift detectado",
120
+ "notImplemented": "detect_drift aún no está implementado"
121
+ },
122
+ "summarize_spec": {
123
+ "description": "Generar un resumen conciso de una spec",
124
+ "success": "Resumen generado para spec {specId}",
125
+ "notImplemented": "summarize_spec aún no está implementado"
126
+ },
127
+ "generate_checklist": {
128
+ "description": "Generar un checklist de calidad para una spec",
129
+ "success": "Checklist generado: {totalCount} items",
130
+ "notImplemented": "generate_checklist aún no está implementado"
131
+ },
132
+ "reconcile_spec": {
133
+ "description": "Reconciliar spec con cambios de implementación",
134
+ "success": "Spec {specId} reconciliada con {count} cambios",
135
+ "notImplemented": "reconcile_spec aún no está implementado"
136
+ },
137
+ "learn_pattern": {
138
+ "description": "Enseñar al sistema un nuevo patrón (arquitectura, convención, estimación, stack, calidad)",
139
+ "success": "Patrón aprendido: {type} — {pattern}",
140
+ "notImplemented": "learn_pattern aún no está implementado"
141
+ },
142
+ "capture_learning": {
143
+ "description": "Capturar un patrón o lección descubierta en el sistema de specs con deduplicación semántica",
144
+ "success": "Patrón capturado y enrutado a {specId}",
145
+ "duplicate": "Patrón ya cubierto en {specId} ({similarity}% similitud)",
146
+ "lesson": "Lección capturada: {type}"
147
+ },
148
+ "audit": {
149
+ "description": "Auditar código por SOLID, código limpio, arquitectura, seguridad y calidad",
150
+ "success": "Auditoría completa: {score}/100 — {findingsCount} hallazgos",
151
+ "notImplemented": "audit aún no está implementado"
152
+ },
153
+ "consult_docs": {
154
+ "description": "Consultar documentación del framework para un tema específico",
155
+ "success": "Documentación encontrada para {framework}: {topic}",
156
+ "notImplemented": "consult_docs aún no está implementado"
157
+ },
158
+ "discover_mcps": {
159
+ "description": "Descubrir MCP servers configurados en el entorno",
160
+ "success": "Se descubrieron {count} MCP servers",
161
+ "notImplemented": "discover_mcps aún no está implementado"
162
+ },
163
+ "suggest_mcps": {
164
+ "description": "Sugerir MCP servers que podrían beneficiar al proyecto",
165
+ "success": "Se encontraron {count} MCP servers recomendados",
166
+ "notImplemented": "suggest_mcps aún no está implementado"
167
+ },
168
+ "generate_adr": {
169
+ "description": "Generar Architecture Decision Records para una spec",
170
+ "success": "ADR generado con {count} decisiones",
171
+ "notImplemented": "generate_adr aún no está implementado"
172
+ },
173
+ "design_schema": {
174
+ "description": "Diseñar schema de base de datos desde requisitos de la spec",
175
+ "success": "Schema diseñado: {tableCount} tablas, {indexCount} índices",
176
+ "notImplemented": "design_schema aún no está implementado"
177
+ },
178
+ "define_ui_contract": {
179
+ "description": "Definir contratos de componentes UI, flujo de datos y manejo de estado",
180
+ "success": "Contrato UI definido: {componentCount} componentes",
181
+ "notImplemented": "define_ui_contract aún no está implementado"
182
+ },
183
+ "challenge_spec": {
184
+ "description": "Probar una spec ante fallos, concurrencia, escala y casos borde",
185
+ "success": "Challenge completo: {scenarioCount} escenarios de fallo analizados",
186
+ "notImplemented": "challenge_spec aún no está implementado"
187
+ },
188
+ "generate_execution_plan": {
189
+ "description": "Generar un plan de ejecución paso a paso para implementar una spec",
190
+ "success": "Plan de ejecución generado: {phaseCount} fases, {stepCount} pasos",
191
+ "notImplemented": "generate_execution_plan aún no está implementado"
192
+ },
193
+ "suggest_stack": {
194
+ "description": "Sugerir un stack tecnológico basado en requisitos del proyecto",
195
+ "success": "Stack recomendado: {language}/{framework}",
196
+ "notImplemented": "suggest_stack aún no está implementado"
197
+ },
198
+ "check_versions": {
199
+ "description": "Verificar versiones de dependencias para actualizaciones, deprecaciones y problemas de seguridad",
200
+ "success": "Se verificaron {count} dependencias: {updatesAvailable} actualizaciones, {securityAlerts} alertas de seguridad",
201
+ "notImplemented": "check_versions aún no está implementado"
202
+ },
203
+ "generate_skill": {
204
+ "description": "Generar un archivo de skill de agente para una plataforma específica",
205
+ "success": "Skill '{name}' generado para {platform}",
206
+ "notImplemented": "generate_skill aún no está implementado"
207
+ },
208
+ "detect_agent": {
209
+ "description": "Detectar la plataforma de agente de IA en uso",
210
+ "success": "Agente detectado: {platform} (confianza: {confidence}%)",
211
+ "notImplemented": "detect_agent aún no está implementado"
212
+ },
213
+ "generate_sub_agent": {
214
+ "description": "Generar una definición de sub-agente para orquestación multi-agente",
215
+ "success": "Sub-agente '{agentName}' generado para {framework}",
216
+ "notImplemented": "generate_sub_agent aún no está implementado"
217
+ },
218
+ "generate_rules": {
219
+ "description": "Generar archivos de reglas de agente (.cursorrules, CLAUDE.md, etc.)",
220
+ "success": "Reglas generadas para {platform}: {rulesCount} reglas",
221
+ "notImplemented": "generate_rules aún no está implementado"
222
+ },
223
+ "generate_orchestration_script": {
224
+ "description": "Generar script de automatización paralela en 3 capas (worktrees + claude -p)",
225
+ "success": "Script de orquestación generado para {specCount} specs",
226
+ "notImplemented": "generate_orchestration_script aún no está implementado"
227
+ },
228
+ "suggest_tooling": {
229
+ "description": "Evaluar y sugerir herramientas del ciclo de desarrollo (CI/CD, testing, monitoreo, etc.)",
230
+ "success": "Evaluación de herramientas completa: {maturityScore}/100",
231
+ "notImplemented": "suggest_tooling aún no está implementado"
232
+ },
233
+ "generate_tests": {
234
+ "description": "Generar plan de tests y archivos de test desde una spec",
235
+ "success": "Plan de tests generado: {unitCount} unitarios, {integrationCount} integración, {e2eCount} e2e",
236
+ "notImplemented": "generate_tests aún no está implementado"
237
+ },
238
+ "generate_docs": {
239
+ "description": "Generar documentación desde specs y código",
240
+ "success": "Se generaron {count} documentos",
241
+ "notImplemented": "generate_docs aún no está implementado"
242
+ },
243
+ "manage_context": {
244
+ "description": "Guardar, cargar y gestionar notas de contexto persistentes entre sesiones",
245
+ "success": "Contexto {action}: {key}",
246
+ "notImplemented": "manage_context aún no está implementado"
247
+ },
248
+ "manage_git": {
249
+ "description": "Integración Git — branches, PRs, changelogs, hooks vinculados a specs",
250
+ "success": "Git {action} completado",
251
+ "notImplemented": "manage_git aún no está implementado"
252
+ },
253
+ "orchestrate": {
254
+ "description": "Orquestación multi-agente — registrar agentes, bloquear recursos, distribuir tareas",
255
+ "success": "Orquestación {action} completada",
256
+ "notImplemented": "orchestrate aún no está implementado"
257
+ },
258
+ "integrate_pm": {
259
+ "description": "Integrar con herramientas de gestión de proyectos (Jira, Linear, GitHub Issues, etc.)",
260
+ "success": "Integración PM: {action} en {platform}",
261
+ "notImplemented": "integrate_pm aún no está implementado"
262
+ },
263
+ "security_check": {
264
+ "description": "Analizar un spec contra OWASP Top 10, escanear código en busca de patrones inseguros, generar puntuación de seguridad (A-F) y detección de drift",
265
+ "success": "Verificación de seguridad completa: {specId} — grado {grade}",
266
+ "notImplemented": "security_check aún no está implementado"
267
+ },
268
+ "data_governance": {
269
+ "description": "Detectar PII en specs, generar políticas de retención, redactar avisos de privacidad y auditar cumplimiento con GDPR/CCPA/LGPD",
270
+ "detectSuccess": "Detección de PII completada — {count} campo(s) encontrados, hasPII: {hasPII}",
271
+ "retentionSuccess": "Política de retención generada para el modelo: {model}",
272
+ "privacyNoticeSuccess": "Borrador de aviso de privacidad generado — {count} spec(s) con PII",
273
+ "auditSuccess": "Auditoría de privacidad completada — {total} spec(s) revisados, {nonCompliant} no conformes"
274
+ },
275
+ "migrate_tech": {
276
+ "description": "Guiar la migración de stack tecnológico (lenguaje, framework, DB, servicios): analizar codebase origen, mapear equivalencias, generar plan de migración, recomendar estrategia de transición, validar paridad funcional y planificar migración de BD",
277
+ "analyzeSuccess": "Análisis del stack origen completado — revisar contratos implícitos y componentes calientes antes de migrar",
278
+ "mapSuccess": "Mapa de equivalencias generado — revisar mapeos manuales y diferencias antes de continuar",
279
+ "planSuccess": "Plan de migración generado con specs ordenados y resolución de dependencias circulares",
280
+ "strategySuccess": "Estrategia de migración recomendada — revisar y reemplazar si es necesario",
281
+ "validateSuccess": "Checklist de paridad y contract tests generados",
282
+ "analyzeDbSuccess": "Schema de base de datos analizado — revisar schema, ORM y volumen estimado de datos",
283
+ "mapDbSuccess": "Mapeo de tipos de BD generado — todos los warnings de data loss deben revisarse antes de migrar",
284
+ "planDbSuccess": "Plan de migración de BD generado con enfoque por fases y estrategia de rollback",
285
+ "analyzeServicesSuccess": "External services analysis complete — review critical services and migration priorities",
286
+ "mapServicesSuccess": "Service equivalence map generated — review adapters and behavior differences",
287
+ "planServicesSuccess": "Service migration plan generated — stateless services scheduled first",
288
+ "validateServiceSuccess": "Service validation checklist generated — fill in expected values from your baseline",
289
+ "rollbackPlanSuccess": "Rollback plan generated — review irreversible steps and checkpoint conditions",
290
+ "checkpointSuccess": "Migration checkpoint recorded — use this ID to rollback to this state if needed",
291
+ "rollbackSuccess": "Rollback execution plan generated — confirm each manual step before proceeding",
292
+ "featureFlagsSuccess": "Feature flag spec generated — configure your provider and set expiration date",
293
+ "statusSuccess": "Migration status report generated — update completed components as specs are finished"
294
+ },
295
+ "paradigm_report": {
296
+ "description": "Detectar y reportar los paradigmas de programación usados en un proyecto",
297
+ "success": "Reporte de paradigmas generado: {dominant} detectado",
298
+ "notFound": "Proyecto no encontrado. Ejecuta init_project primero."
299
+ },
300
+ "check_readiness": {
301
+ "description": "Evaluar si una spec está lista para implementar verificando completeness, calidad de criterios y estado de dependencias"
302
+ },
303
+ "package_handoff": {
304
+ "description": "Generar un paquete de handoff estructurado para que un agente AI implemente una spec, incluyendo objetivo, criterios, archivos, fuera de scope y restricciones"
305
+ }
306
+ },
307
+ "resources": {
308
+ "process": {
309
+ "description": "Pasos y flujo del proceso de la metodología SDD",
310
+ "notFound": "Información del proceso no disponible"
311
+ },
312
+ "specs": {
313
+ "description": "Lista de specs del proyecto actual",
314
+ "notFound": "No se encontraron specs. Usa create_spec o init_project primero"
315
+ },
316
+ "templates": {
317
+ "description": "Plantillas de specs disponibles",
318
+ "notFound": "No se encontraron plantillas"
319
+ },
320
+ "patterns": {
321
+ "description": "Patrones aprendidos del proyecto",
322
+ "notFound": "Aún no se han aprendido patrones. Usa learn_pattern para agregar patrones"
323
+ }
324
+ },
325
+ "errors": {
326
+ "notImplemented": "La herramienta '{tool}' aún no está implementada",
327
+ "invalidInput": "Entrada inválida: {details}",
328
+ "projectRequired": "Se requiere ID de proyecto. Ejecuta init_project primero",
329
+ "specRequired": "Se requiere ID de spec",
330
+ "unknownTool": "Herramienta desconocida: {tool}",
331
+ "internalError": "Error interno: {message}"
332
+ }
333
+ }