@planu/cli 0.60.0 → 0.62.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 (90) hide show
  1. package/dist/engine/deleter/core.js.map +1 -1
  2. package/dist/engine/hooks/core.d.ts.map +1 -1
  3. package/dist/engine/hooks/core.js +2 -1
  4. package/dist/engine/hooks/core.js.map +1 -1
  5. package/dist/engine/mobile-detector-ios.d.ts.map +1 -1
  6. package/dist/engine/mobile-detector-ios.js +3 -2
  7. package/dist/engine/mobile-detector-ios.js.map +1 -1
  8. package/dist/engine/model-router/rules-engine.d.ts.map +1 -1
  9. package/dist/engine/model-router/rules-engine.js +2 -0
  10. package/dist/engine/model-router/rules-engine.js.map +1 -1
  11. package/dist/engine/paradigm-registry.js.map +1 -1
  12. package/dist/engine/spec-summary-html.js +1 -1
  13. package/dist/engine/spec-summary-html.js.map +1 -1
  14. package/dist/engine/whats-new.d.ts +2 -0
  15. package/dist/engine/whats-new.d.ts.map +1 -0
  16. package/dist/engine/whats-new.js +42 -0
  17. package/dist/engine/whats-new.js.map +1 -0
  18. package/dist/index.js +21 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/storage/spec-store.d.ts.map +1 -1
  21. package/dist/storage/spec-store.js +4 -0
  22. package/dist/storage/spec-store.js.map +1 -1
  23. package/dist/tools/agent-swarm-status.d.ts.map +1 -1
  24. package/dist/tools/agent-swarm-status.js +18 -2
  25. package/dist/tools/agent-swarm-status.js.map +1 -1
  26. package/dist/tools/challenge-spec/resilience-challenge-scenarios.d.ts.map +1 -1
  27. package/dist/tools/challenge-spec/resilience-challenge-scenarios.js +3 -0
  28. package/dist/tools/challenge-spec/resilience-challenge-scenarios.js.map +1 -1
  29. package/dist/tools/challenge-spec.d.ts.map +1 -1
  30. package/dist/tools/challenge-spec.js +5 -3
  31. package/dist/tools/challenge-spec.js.map +1 -1
  32. package/dist/tools/check-spec-accuracy.d.ts.map +1 -1
  33. package/dist/tools/check-spec-accuracy.js +26 -2
  34. package/dist/tools/check-spec-accuracy.js.map +1 -1
  35. package/dist/tools/design-schema.js.map +1 -1
  36. package/dist/tools/estimate.d.ts.map +1 -1
  37. package/dist/tools/estimate.js +1 -0
  38. package/dist/tools/estimate.js.map +1 -1
  39. package/dist/tools/generate-tests/generators/concurrency-test-generator.d.ts.map +1 -1
  40. package/dist/tools/generate-tests/generators/concurrency-test-generator.js +4 -1
  41. package/dist/tools/generate-tests/generators/concurrency-test-generator.js.map +1 -1
  42. package/dist/tools/generate-tests/generators/hypermedia-generator.js.map +1 -1
  43. package/dist/tools/init-project/handler.d.ts.map +1 -1
  44. package/dist/tools/init-project/handler.js +24 -0
  45. package/dist/tools/init-project/handler.js.map +1 -1
  46. package/dist/tools/init-project/result-builder.d.ts.map +1 -1
  47. package/dist/tools/init-project/result-builder.js +1 -0
  48. package/dist/tools/init-project/result-builder.js.map +1 -1
  49. package/dist/tools/list-sessions.d.ts.map +1 -1
  50. package/dist/tools/list-sessions.js +19 -9
  51. package/dist/tools/list-sessions.js.map +1 -1
  52. package/dist/tools/list-specs.d.ts.map +1 -1
  53. package/dist/tools/list-specs.js +1 -0
  54. package/dist/tools/list-specs.js.map +1 -1
  55. package/dist/tools/manage-hooks.d.ts.map +1 -1
  56. package/dist/tools/manage-hooks.js +2 -0
  57. package/dist/tools/manage-hooks.js.map +1 -1
  58. package/dist/tools/reconcile-spec.d.ts.map +1 -1
  59. package/dist/tools/reconcile-spec.js +22 -2
  60. package/dist/tools/reconcile-spec.js.map +1 -1
  61. package/dist/tools/response-helpers.d.ts +31 -0
  62. package/dist/tools/response-helpers.d.ts.map +1 -0
  63. package/dist/tools/response-helpers.js +70 -0
  64. package/dist/tools/response-helpers.js.map +1 -0
  65. package/dist/tools/safe-handler.d.ts +12 -0
  66. package/dist/tools/safe-handler.d.ts.map +1 -1
  67. package/dist/tools/safe-handler.js +38 -0
  68. package/dist/tools/safe-handler.js.map +1 -1
  69. package/dist/tools/suggest-mcps.js.map +1 -1
  70. package/dist/tools/suggest-tooling/llm-security-catalog.d.ts.map +1 -1
  71. package/dist/tools/suggest-tooling/llm-security-catalog.js.map +1 -1
  72. package/dist/tools/suggest-tooling/otel-catalog.js.map +1 -1
  73. package/dist/tools/update-status.d.ts.map +1 -1
  74. package/dist/tools/update-status.js +57 -4
  75. package/dist/tools/update-status.js.map +1 -1
  76. package/dist/tools/usage-stats.d.ts.map +1 -1
  77. package/dist/tools/usage-stats.js +10 -1
  78. package/dist/tools/usage-stats.js.map +1 -1
  79. package/dist/tools/validate.d.ts.map +1 -1
  80. package/dist/tools/validate.js +1 -0
  81. package/dist/tools/validate.js.map +1 -1
  82. package/dist/tools/worker-status-handler.d.ts.map +1 -1
  83. package/dist/tools/worker-status-handler.js +18 -1
  84. package/dist/tools/worker-status-handler.js.map +1 -1
  85. package/dist/types/project/planu-config.d.ts +2 -0
  86. package/dist/types/project/planu-config.d.ts.map +1 -1
  87. package/package.json +18 -14
  88. package/src/i18n/messages/en.json +25 -0
  89. package/src/i18n/messages/es.json +25 -0
  90. package/src/i18n/messages/pt.json +25 -0
@@ -1,5 +1,6 @@
1
1
  // tools/worker-status-handler.ts — Handler for worker_status tool (SPEC-078 AC-11)
2
2
  import { getWorkerEngine } from '../engine/workers/index.js';
3
+ import { t } from '../i18n/index.js';
3
4
  // ---------------------------------------------------------------------------
4
5
  // Formatting helpers
5
6
  // ---------------------------------------------------------------------------
@@ -74,8 +75,13 @@ export function handleWorkerStatus(args) {
74
75
  };
75
76
  }
76
77
  const engineStatus = engine.getStatus();
78
+ const engineLabel = engineStatus.active
79
+ ? t('tools.response.active')
80
+ : t('tools.response.stopped');
77
81
  const lines = [];
78
- lines.push(`Worker Engine: ${engineStatus.active ? 'active' : 'stopped'}`);
82
+ lines.push(t('tools.response.workerTitle'));
83
+ lines.push('');
84
+ lines.push(`Worker Engine: ${engineLabel}`);
79
85
  lines.push(`Queue: ${String(engineStatus.queueLength)} pending`);
80
86
  lines.push(`Total runs: ${String(engineStatus.totalRunsCompleted)}`);
81
87
  lines.push('');
@@ -86,6 +92,17 @@ export function handleWorkerStatus(args) {
86
92
  if (engineStatus.workers.length === 0) {
87
93
  lines.push(' No workers registered. Call loadRegistry() to initialize.');
88
94
  }
95
+ const nextSteps = [];
96
+ if (!engineStatus.active) {
97
+ nextSteps.push('Run `configure_workers` to start the engine');
98
+ }
99
+ if (engineStatus.queueLength > 0) {
100
+ nextSteps.push(`Workers are processing ${String(engineStatus.queueLength)} pending tasks`);
101
+ }
102
+ nextSteps.push('Use `configure_workers` to adjust worker settings');
103
+ lines.push('');
104
+ lines.push('🚀 **Next Steps**');
105
+ nextSteps.forEach((step, i) => lines.push(`${String(i + 1)}. ${step}`));
89
106
  return {
90
107
  content: [{ type: 'text', text: lines.join('\n') }],
91
108
  };
@@ -1 +1 @@
1
- {"version":3,"file":"worker-status-handler.js","sourceRoot":"","sources":["../../src/tools/worker-status-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-status-handler.js","sourceRoot":"","sources":["../../src/tools/worker-status-handler.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface PlanuConfig {
12
12
  specNaming: 'modern' | 'legacy';
13
13
  createdAt: string;
14
14
  updatedAt: string;
15
+ lastSeenVersion?: string;
15
16
  }
16
17
  export interface GeneratedRulesInfo {
17
18
  rulesFile: {
@@ -66,5 +67,6 @@ export interface InitProjectResultInput {
66
67
  gitignoreUpdated: boolean;
67
68
  constitutionInitialized: boolean;
68
69
  claudeMdUpdated: boolean;
70
+ whatsNew?: string | null;
69
71
  }
70
72
  //# sourceMappingURL=planu-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"planu-config.d.ts","sourceRoot":"","sources":["../../../src/types/project/planu-config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,uBAAuB,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAC1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGvE,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,eAAe,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACtD;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,aAAa,EAAE,WAAW,EAAE,CAAC;IAC7B,YAAY,EAAE,mBAAmB,CAAC;IAClC,cAAc,EAAE,uBAAuB,EAAE,CAAC;IAC1C,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,qBAAqB,CAAC;IACtC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,oBAAoB,EAAE,wBAAwB,CAAC;IAC/C,aAAa,EAAE,oBAAoB,CAAC;IACpC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,gBAAgB,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;IAC3C,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,QAAQ,EAAE,aAAa,CAAC;IACxB,cAAc,EAAE,kBAAkB,CAAC;IACnC,YAAY,EAAE,OAAO,CAAC;IACtB,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IACpE,eAAe,EAAE;QACf,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,GAAG,IAAI,CAAC;IACT,qBAAqB,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAC1E,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,uBAAuB,EAAE,OAAO,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;CAC1B"}
1
+ {"version":3,"file":"planu-config.d.ts","sourceRoot":"","sources":["../../../src/types/project/planu-config.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@planu/cli",
3
- "version": "0.60.0",
3
+ "version": "0.62.0",
4
4
  "description": "Planu — MCP Server for Spec Driven Development. Manages specs, estimations, reverse engineering, and auto-learning across any language/framework.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -14,7 +14,7 @@
14
14
  "src/i18n/messages/"
15
15
  ],
16
16
  "engines": {
17
- "node": ">=22.0.0"
17
+ "node": ">=24.0.0"
18
18
  },
19
19
  "packageManager": "pnpm@10.28.2",
20
20
  "scripts": {
@@ -33,7 +33,11 @@
33
33
  "check": "pnpm typecheck && pnpm lint && pnpm format:check",
34
34
  "setup:protection": "bash scripts/setup-branch-protection.sh",
35
35
  "prepare": "husky || true",
36
- "prepublishOnly": "pnpm build"
36
+ "prepublishOnly": "pnpm build",
37
+ "test:debug": "vitest run --inspect-brk --single-thread",
38
+ "validate": "pnpm typecheck && pnpm lint && pnpm format:check && pnpm test",
39
+ "docker:build": "docker build -t planu .",
40
+ "docker:run": "docker compose up"
37
41
  },
38
42
  "lint-staged": {
39
43
  "src/**/*.ts": [
@@ -71,13 +75,13 @@
71
75
  ],
72
76
  "license": "SEE LICENSE IN LICENSE",
73
77
  "dependencies": {
74
- "@modelcontextprotocol/sdk": "^1.12.1",
78
+ "@modelcontextprotocol/sdk": "^1.27.1",
75
79
  "glob": "^13.0.6",
76
80
  "zod": "^4.3.6"
77
81
  },
78
82
  "devDependencies": {
79
- "@commitlint/cli": "^20.4.2",
80
- "@commitlint/config-conventional": "^20.4.2",
83
+ "@commitlint/cli": "^20.4.4",
84
+ "@commitlint/config-conventional": "^20.4.4",
81
85
  "@eslint/js": "^10.0.1",
82
86
  "@secretlint/secretlint-rule-no-homedir": "^11.3.1",
83
87
  "@secretlint/secretlint-rule-preset-recommend": "^11.3.1",
@@ -85,23 +89,23 @@
85
89
  "@semantic-release/commit-analyzer": "^13.0.1",
86
90
  "@semantic-release/git": "^10.0.1",
87
91
  "@semantic-release/github": "^12.0.6",
88
- "@semantic-release/npm": "^13.1.4",
92
+ "@semantic-release/npm": "^13.1.5",
89
93
  "@semantic-release/release-notes-generator": "^14.1.0",
90
- "@types/node": "^25.3.0",
91
- "@vitest/coverage-v8": "^4.0.18",
92
- "eslint": "^10.0.2",
94
+ "@types/node": "^25.5.0",
95
+ "@vitest/coverage-v8": "^4.1.0",
96
+ "eslint": "^10.0.3",
93
97
  "eslint-config-prettier": "^10.1.8",
94
98
  "eslint-import-resolver-typescript": "^4.4.4",
95
99
  "eslint-plugin-import": "^2.32.0",
96
100
  "husky": "^9.1.7",
97
101
  "jscpd": "^4.0.8",
98
- "lint-staged": "^16.2.7",
102
+ "lint-staged": "^16.3.3",
99
103
  "prettier": "^3.8.1",
100
104
  "secretlint": "^11.3.1",
101
105
  "semantic-release": "^25.0.3",
102
106
  "tsc-alias": "^1.8.16",
103
- "typescript": "^5.7.0",
104
- "typescript-eslint": "^8.56.1",
105
- "vitest": "^4.0.18"
107
+ "typescript": "^5.9.3",
108
+ "typescript-eslint": "^8.57.0",
109
+ "vitest": "^4.1.0"
106
110
  }
107
111
  }
@@ -463,6 +463,31 @@
463
463
  "modelPricing": " - {name} ({tier}) — ${input}/${output} per 1M tokens (in/out)",
464
464
  "recommendationHeading": "### Recommendation",
465
465
  "recommendation": "For standard tasks, **{provider}/{model}** offers the best cost/quality ratio at ${cost}/1M tokens."
466
+ },
467
+ "response": {
468
+ "nextSteps": "🚀 **Next Steps**",
469
+ "suggestions": "💡 **Suggestions**",
470
+ "error": "❌ **Error:** {message}",
471
+ "howToFix": "💡 **How to fix:** {fix}",
472
+ "tip": "💡 **Tip:** {message}",
473
+ "summary": "📋 **Summary**",
474
+ "noIssues": "✅ No issues found",
475
+ "issuesFound": "⚠️ {count} issue(s) found",
476
+ "healthy": "✅ Healthy",
477
+ "degraded": "⚠️ Degraded",
478
+ "down": "❌ Down",
479
+ "stopped": "⏹️ Stopped",
480
+ "active": "✅ Active",
481
+ "pending": "🔄 Pending",
482
+ "sessionsFound": "📋 Found {count} session(s)",
483
+ "noSessions": "📋 No sessions found",
484
+ "statsTitle": "📊 **Usage Statistics**",
485
+ "accuracyTitle": "🎯 **Spec Accuracy Report**",
486
+ "reconcileTitle": "🔄 **Spec Reconciled**",
487
+ "statusTitle": "✅ **Status Updated**",
488
+ "workerTitle": "⚙️ **Worker Status**",
489
+ "swarmTitle": "🐝 **Agent Swarm Status**",
490
+ "sessionsTitle": "📋 **Sessions**"
466
491
  }
467
492
  },
468
493
  "resources": {
@@ -463,6 +463,31 @@
463
463
  "modelPricing": " - {name} ({tier}) — ${input}/${output} por 1M tokens (entrada/salida)",
464
464
  "recommendationHeading": "### Recomendación",
465
465
  "recommendation": "Para tareas estándar, **{provider}/{model}** ofrece la mejor relación costo/calidad a ${cost}/1M tokens."
466
+ },
467
+ "response": {
468
+ "nextSteps": "🚀 **Próximos Pasos**",
469
+ "suggestions": "💡 **Sugerencias**",
470
+ "error": "❌ **Error:** {message}",
471
+ "howToFix": "💡 **Cómo solucionarlo:** {fix}",
472
+ "tip": "💡 **Consejo:** {message}",
473
+ "summary": "📋 **Resumen**",
474
+ "noIssues": "✅ Sin problemas encontrados",
475
+ "issuesFound": "⚠️ {count} problema(s) encontrado(s)",
476
+ "healthy": "✅ Saludable",
477
+ "degraded": "⚠️ Degradado",
478
+ "down": "❌ Caído",
479
+ "stopped": "⏹️ Detenido",
480
+ "active": "✅ Activo",
481
+ "pending": "🔄 Pendiente",
482
+ "sessionsFound": "📋 Se encontraron {count} sesión(es)",
483
+ "noSessions": "📋 No se encontraron sesiones",
484
+ "statsTitle": "📊 **Estadísticas de Uso**",
485
+ "accuracyTitle": "🎯 **Reporte de Precisión de Spec**",
486
+ "reconcileTitle": "🔄 **Spec Reconciliada**",
487
+ "statusTitle": "✅ **Estado Actualizado**",
488
+ "workerTitle": "⚙️ **Estado de Workers**",
489
+ "swarmTitle": "🐝 **Estado del Enjambre de Agentes**",
490
+ "sessionsTitle": "📋 **Sesiones**"
466
491
  }
467
492
  },
468
493
  "resources": {
@@ -463,6 +463,31 @@
463
463
  "modelPricing": " - {name} ({tier}) — ${input}/${output} por 1M tokens (entrada/saída)",
464
464
  "recommendationHeading": "### Recomendação",
465
465
  "recommendation": "Para tarefas padrão, **{provider}/{model}** oferece a melhor relação custo/qualidade a ${cost}/1M tokens."
466
+ },
467
+ "response": {
468
+ "nextSteps": "🚀 **Próximos Passos**",
469
+ "suggestions": "💡 **Sugestões**",
470
+ "error": "❌ **Erro:** {message}",
471
+ "howToFix": "💡 **Como resolver:** {fix}",
472
+ "tip": "💡 **Dica:** {message}",
473
+ "summary": "📋 **Resumo**",
474
+ "noIssues": "✅ Nenhum problema encontrado",
475
+ "issuesFound": "⚠️ {count} problema(s) encontrado(s)",
476
+ "healthy": "✅ Saudável",
477
+ "degraded": "⚠️ Degradado",
478
+ "down": "❌ Fora do ar",
479
+ "stopped": "⏹️ Parado",
480
+ "active": "✅ Ativo",
481
+ "pending": "🔄 Pendente",
482
+ "sessionsFound": "📋 Encontrada(s) {count} sessão(ões)",
483
+ "noSessions": "📋 Nenhuma sessão encontrada",
484
+ "statsTitle": "📊 **Estatísticas de Uso**",
485
+ "accuracyTitle": "🎯 **Relatório de Precisão da Spec**",
486
+ "reconcileTitle": "🔄 **Spec Reconciliada**",
487
+ "statusTitle": "✅ **Status Atualizado**",
488
+ "workerTitle": "⚙️ **Status dos Workers**",
489
+ "swarmTitle": "🐝 **Status do Enxame de Agentes**",
490
+ "sessionsTitle": "📋 **Sessões**"
466
491
  }
467
492
  },
468
493
  "resources": {