@howlil/ez-agents 3.5.0 → 4.0.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 (382) hide show
  1. package/README.md +735 -537
  2. package/agents/ez-architect-agent.md +267 -0
  3. package/agents/ez-backend-agent.md +303 -0
  4. package/agents/ez-chief-strategist.md +271 -0
  5. package/agents/ez-codebase-mapper.md +770 -770
  6. package/agents/ez-context-manager.md +319 -0
  7. package/agents/ez-debugger.md +1255 -1255
  8. package/agents/ez-design-expert.md +347 -0
  9. package/agents/ez-devops-agent.md +331 -0
  10. package/agents/ez-executor.md +487 -487
  11. package/agents/ez-frontend-agent.md +322 -0
  12. package/agents/ez-phase-researcher.md +553 -553
  13. package/agents/ez-planner.md +1307 -1307
  14. package/agents/ez-product-engineer.md +435 -0
  15. package/agents/ez-project-researcher.md +629 -629
  16. package/agents/ez-qa-agent.md +320 -0
  17. package/agents/ez-release-agent.md +333 -333
  18. package/agents/ez-requirements-agent.md +377 -377
  19. package/agents/ez-roadmapper.md +650 -650
  20. package/agents/ez-technical-writer.md +551 -0
  21. package/agents/ez-ux-expert.md +393 -0
  22. package/agents/ez-verifier.md +579 -579
  23. package/bin/guards/autonomy-guard.cjs +346 -0
  24. package/bin/guards/context-budget-guard.cjs +278 -0
  25. package/bin/guards/hallucination-guard.cjs +380 -0
  26. package/bin/guards/hidden-state-guard.cjs +182 -0
  27. package/bin/guards/team-overhead-guard.cjs +266 -0
  28. package/bin/guards/tool-sprawl-guard.cjs +271 -0
  29. package/bin/lib/analytics/analytics-collector.cjs +86 -0
  30. package/bin/lib/analytics/analytics-reporter.cjs +130 -0
  31. package/bin/lib/analytics/cohort-analyzer.cjs +138 -0
  32. package/bin/lib/analytics/funnel-analyzer.cjs +147 -0
  33. package/bin/lib/analytics/nps-tracker.cjs +147 -0
  34. package/bin/lib/archetype-detector.cjs +289 -0
  35. package/bin/lib/assistant-adapter.cjs +361 -0
  36. package/bin/lib/audit-exec.cjs +175 -0
  37. package/bin/lib/auth.cjs +176 -0
  38. package/bin/lib/backup-service.cjs +422 -0
  39. package/bin/lib/bdd-validator.cjs +622 -0
  40. package/bin/lib/business-flow-mapper.cjs +429 -0
  41. package/bin/lib/circuit-breaker.cjs +276 -0
  42. package/bin/lib/code-complexity-analyzer.cjs +360 -0
  43. package/bin/lib/codebase-analyzer.cjs +241 -0
  44. package/bin/lib/commands.cjs +691 -0
  45. package/bin/lib/config.cjs +236 -0
  46. package/bin/lib/constraint-extractor.cjs +526 -0
  47. package/bin/lib/content-scanner.cjs +238 -0
  48. package/bin/lib/context-cache.cjs +154 -0
  49. package/bin/lib/context-compressor.cjs +102 -0
  50. package/bin/lib/context-deduplicator.cjs +105 -0
  51. package/bin/lib/context-errors.cjs +78 -0
  52. package/bin/lib/context-manager.cjs +338 -0
  53. package/bin/lib/context-metadata-tracker.cjs +140 -0
  54. package/bin/lib/context-relevance-scorer.cjs +99 -0
  55. package/bin/lib/core.cjs +507 -0
  56. package/bin/lib/cost-alerts.cjs +174 -0
  57. package/bin/lib/cost-tracker.cjs +275 -0
  58. package/bin/lib/crash-recovery.cjs +220 -0
  59. package/bin/lib/dependency-graph.cjs +319 -0
  60. package/bin/lib/deploy/deploy-audit-log.cjs +76 -0
  61. package/bin/lib/deploy/deploy-detector.cjs +69 -0
  62. package/bin/lib/deploy/deploy-env-manager.cjs +109 -0
  63. package/bin/lib/deploy/deploy-health-check.cjs +88 -0
  64. package/bin/lib/deploy/deploy-pre-flight.cjs +57 -0
  65. package/bin/lib/deploy/deploy-rollback.cjs +72 -0
  66. package/bin/lib/deploy/deploy-runner.cjs +97 -0
  67. package/bin/lib/deploy/deploy-status.cjs +74 -0
  68. package/bin/lib/discussion-synthesizer.cjs +439 -0
  69. package/bin/lib/error-cache.cjs +114 -0
  70. package/bin/lib/error-registry.cjs +177 -0
  71. package/bin/lib/file-access.cjs +207 -0
  72. package/bin/lib/file-lock.cjs +236 -0
  73. package/bin/lib/finops/budget-enforcer.cjs +126 -0
  74. package/bin/lib/finops/cost-reporter.cjs +132 -0
  75. package/bin/lib/finops/finops-analyzer.cjs +112 -0
  76. package/bin/lib/finops/spot-manager.cjs +118 -0
  77. package/bin/lib/framework-detector.cjs +396 -0
  78. package/bin/lib/frontmatter.cjs +313 -0
  79. package/bin/lib/fs-utils.cjs +153 -0
  80. package/bin/lib/gate-executor.cjs +272 -0
  81. package/bin/lib/gates/README.md +374 -0
  82. package/bin/lib/gates/gate-01-requirement.cjs +303 -0
  83. package/bin/lib/gates/gate-02-architecture.cjs +555 -0
  84. package/bin/lib/gates/gate-03-code.cjs +635 -0
  85. package/bin/lib/gates/gate-04-security.cjs +829 -0
  86. package/bin/lib/git-errors.cjs +83 -0
  87. package/bin/lib/git-utils.cjs +321 -0
  88. package/bin/lib/git-workflow-engine.cjs +1157 -0
  89. package/bin/lib/health-check.cjs +227 -0
  90. package/bin/lib/index.cjs +279 -0
  91. package/bin/lib/init.cjs +725 -0
  92. package/bin/lib/lock-logger.cjs +194 -0
  93. package/bin/lib/lock-state.cjs +263 -0
  94. package/bin/lib/lockfile-validator.cjs +227 -0
  95. package/bin/lib/log-rotation.cjs +71 -0
  96. package/bin/lib/logger.cjs +125 -0
  97. package/bin/lib/memory-compression.cjs +256 -0
  98. package/bin/lib/milestone.cjs +247 -0
  99. package/bin/lib/model-provider.cjs +241 -0
  100. package/bin/lib/package-manager-detector.cjs +203 -0
  101. package/bin/lib/package-manager-executor.cjs +385 -0
  102. package/bin/lib/package-manager-service.cjs +216 -0
  103. package/bin/lib/perf/api-monitor.cjs +88 -0
  104. package/bin/lib/perf/db-optimizer.cjs +78 -0
  105. package/bin/lib/perf/frontend-performance.cjs +56 -0
  106. package/bin/lib/perf/perf-analyzer.cjs +77 -0
  107. package/bin/lib/perf/perf-baseline.cjs +102 -0
  108. package/bin/lib/perf/perf-reporter.cjs +117 -0
  109. package/bin/lib/perf/regression-detector.cjs +92 -0
  110. package/bin/lib/phase.cjs +963 -0
  111. package/bin/lib/planning-write.cjs +123 -0
  112. package/bin/lib/project-reporter.cjs +565 -0
  113. package/bin/lib/quality-gate.cjs +332 -0
  114. package/bin/lib/quality-metrics.cjs +324 -0
  115. package/bin/lib/recovery-manager.cjs +98 -0
  116. package/bin/lib/release-validator.cjs +617 -0
  117. package/bin/lib/retry.cjs +119 -0
  118. package/bin/lib/roadmap.cjs +309 -0
  119. package/bin/lib/safe-exec.cjs +173 -0
  120. package/bin/lib/safe-path.cjs +130 -0
  121. package/bin/lib/security-errors.cjs +62 -0
  122. package/bin/lib/session-chain.cjs +304 -0
  123. package/bin/lib/session-errors.cjs +81 -0
  124. package/bin/lib/session-export.cjs +251 -0
  125. package/bin/lib/session-import.cjs +262 -0
  126. package/bin/lib/session-manager.cjs +280 -0
  127. package/bin/lib/skill-context.cjs +148 -0
  128. package/bin/lib/skill-matcher.cjs +236 -0
  129. package/bin/lib/skill-registry.cjs +360 -0
  130. package/bin/lib/skill-resolver.cjs +449 -0
  131. package/bin/lib/skill-triggers.cjs +90 -0
  132. package/bin/lib/skill-validator.cjs +270 -0
  133. package/bin/lib/skill-versioning.cjs +355 -0
  134. package/bin/lib/stack-detector.cjs +399 -0
  135. package/bin/lib/state.cjs +736 -0
  136. package/bin/lib/tech-debt-analyzer.cjs +309 -0
  137. package/bin/lib/temp-file.cjs +239 -0
  138. package/bin/lib/template.cjs +223 -0
  139. package/bin/lib/test-file-lock.cjs +112 -0
  140. package/bin/lib/test-graceful.cjs +93 -0
  141. package/bin/lib/test-logger.cjs +60 -0
  142. package/bin/lib/test-safe-exec.cjs +38 -0
  143. package/bin/lib/test-safe-path.cjs +33 -0
  144. package/bin/lib/test-temp-file.cjs +125 -0
  145. package/bin/lib/tier-manager.cjs +428 -0
  146. package/bin/lib/timeout-exec.cjs +63 -0
  147. package/bin/lib/tradeoff-analyzer.cjs +284 -0
  148. package/bin/lib/url-fetch.cjs +170 -0
  149. package/bin/lib/verify.cjs +863 -0
  150. package/bin/update.js +217 -214
  151. package/commands/deploy.cjs +53 -0
  152. package/commands/ez/add-tests.md +41 -41
  153. package/commands/ez/audit-milestone.md +36 -36
  154. package/commands/ez/complete-milestone.md +136 -136
  155. package/commands/ez/discuss-phase.md +90 -90
  156. package/commands/ez/execute-phase.md +52 -52
  157. package/commands/ez/help.md +22 -22
  158. package/commands/ez/map-codebase.md +71 -71
  159. package/commands/ez/new-milestone.md +44 -44
  160. package/commands/ez/new-project.md +51 -42
  161. package/commands/ez/plan-phase.md +53 -53
  162. package/commands/ez/progress.md +36 -36
  163. package/commands/ez/quick.md +45 -45
  164. package/commands/ez/resume-work.md +40 -40
  165. package/commands/ez/run-phase.md +580 -0
  166. package/commands/ez/settings.md +36 -36
  167. package/commands/ez/update.md +37 -37
  168. package/commands/ez/verify-work.md +402 -38
  169. package/commands/health-check.cjs +44 -0
  170. package/commands/rollback.cjs +47 -0
  171. package/ez-agents/bin/ez-tools.cjs +599 -2
  172. package/ez-agents/bin/guards/autonomy-guard.cjs +346 -0
  173. package/ez-agents/bin/guards/context-budget-guard.cjs +247 -0
  174. package/ez-agents/bin/guards/hallucination-guard.cjs +271 -0
  175. package/ez-agents/bin/guards/hidden-state-guard.cjs +182 -0
  176. package/ez-agents/bin/guards/team-overhead-guard.cjs +266 -0
  177. package/ez-agents/bin/guards/tool-sprawl-guard.cjs +271 -0
  178. package/ez-agents/bin/lib/analytics/analytics-collector.cjs +86 -0
  179. package/ez-agents/bin/lib/analytics/analytics-reporter.cjs +130 -0
  180. package/ez-agents/bin/lib/analytics/cohort-analyzer.cjs +138 -0
  181. package/ez-agents/bin/lib/analytics/funnel-analyzer.cjs +147 -0
  182. package/ez-agents/bin/lib/analytics/nps-tracker.cjs +147 -0
  183. package/ez-agents/bin/lib/archetype-detector.cjs +289 -0
  184. package/ez-agents/bin/lib/audit-exec.cjs +166 -167
  185. package/ez-agents/bin/lib/auth.cjs +176 -176
  186. package/ez-agents/bin/lib/backup-service.cjs +422 -0
  187. package/ez-agents/bin/lib/bdd-validator.cjs +622 -622
  188. package/ez-agents/bin/lib/business-flow-mapper.cjs +429 -0
  189. package/ez-agents/bin/lib/code-complexity-analyzer.cjs +360 -0
  190. package/ez-agents/bin/lib/codebase-analyzer.cjs +241 -0
  191. package/ez-agents/bin/lib/commands.cjs +685 -685
  192. package/ez-agents/bin/lib/config.cjs +41 -1
  193. package/ez-agents/bin/lib/constraint-extractor.cjs +526 -0
  194. package/ez-agents/bin/lib/content-scanner.cjs +238 -238
  195. package/ez-agents/bin/lib/context-cache.cjs +154 -154
  196. package/ez-agents/bin/lib/context-errors.cjs +71 -71
  197. package/ez-agents/bin/lib/context-manager.cjs +220 -220
  198. package/ez-agents/bin/lib/core.cjs +507 -512
  199. package/ez-agents/bin/lib/cost-tracker.cjs +243 -0
  200. package/ez-agents/bin/lib/crash-recovery.cjs +172 -0
  201. package/ez-agents/bin/lib/dependency-graph.cjs +319 -0
  202. package/ez-agents/bin/lib/deploy/deploy-audit-log.cjs +76 -0
  203. package/ez-agents/bin/lib/deploy/deploy-detector.cjs +69 -0
  204. package/ez-agents/bin/lib/deploy/deploy-env-manager.cjs +109 -0
  205. package/ez-agents/bin/lib/deploy/deploy-health-check.cjs +88 -0
  206. package/ez-agents/bin/lib/deploy/deploy-pre-flight.cjs +57 -0
  207. package/ez-agents/bin/lib/deploy/deploy-rollback.cjs +72 -0
  208. package/ez-agents/bin/lib/deploy/deploy-runner.cjs +97 -0
  209. package/ez-agents/bin/lib/deploy/deploy-status.cjs +74 -0
  210. package/ez-agents/bin/lib/file-access.cjs +207 -207
  211. package/ez-agents/bin/lib/finops/budget-enforcer.cjs +126 -0
  212. package/ez-agents/bin/lib/finops/cost-reporter.cjs +132 -0
  213. package/ez-agents/bin/lib/finops/finops-analyzer.cjs +112 -0
  214. package/ez-agents/bin/lib/finops/spot-manager.cjs +118 -0
  215. package/ez-agents/bin/lib/framework-detector.cjs +396 -0
  216. package/ez-agents/bin/lib/frontmatter.cjs +3 -1
  217. package/ez-agents/bin/lib/gates/README.md +374 -0
  218. package/ez-agents/bin/lib/gates/gate-01-requirement.cjs +303 -0
  219. package/ez-agents/bin/lib/gates/gate-02-architecture.cjs +555 -0
  220. package/ez-agents/bin/lib/gates/gate-03-code.cjs +635 -0
  221. package/ez-agents/bin/lib/gates/gate-04-security.cjs +829 -0
  222. package/ez-agents/bin/lib/git-errors.cjs +83 -83
  223. package/ez-agents/bin/lib/git-utils.cjs +321 -321
  224. package/ez-agents/bin/lib/git-workflow-engine.cjs +1157 -1157
  225. package/ez-agents/bin/lib/health-check.cjs +162 -162
  226. package/ez-agents/bin/lib/index.cjs +2 -8
  227. package/ez-agents/bin/lib/init.cjs +0 -2
  228. package/ez-agents/bin/lib/lockfile-validator.cjs +227 -227
  229. package/ez-agents/bin/lib/log-rotation.cjs +71 -0
  230. package/ez-agents/bin/lib/logger.cjs +22 -47
  231. package/ez-agents/bin/lib/memory-compression.cjs +256 -256
  232. package/ez-agents/bin/lib/package-manager-detector.cjs +203 -203
  233. package/ez-agents/bin/lib/package-manager-executor.cjs +385 -385
  234. package/ez-agents/bin/lib/package-manager-service.cjs +216 -216
  235. package/ez-agents/bin/lib/perf/api-monitor.cjs +88 -0
  236. package/ez-agents/bin/lib/perf/db-optimizer.cjs +78 -0
  237. package/ez-agents/bin/lib/perf/frontend-performance.cjs +56 -0
  238. package/ez-agents/bin/lib/perf/perf-analyzer.cjs +77 -0
  239. package/ez-agents/bin/lib/perf/perf-baseline.cjs +102 -0
  240. package/ez-agents/bin/lib/perf/perf-reporter.cjs +117 -0
  241. package/ez-agents/bin/lib/perf/regression-detector.cjs +92 -0
  242. package/ez-agents/bin/lib/project-reporter.cjs +502 -0
  243. package/ez-agents/bin/lib/quality-gate.cjs +332 -0
  244. package/ez-agents/bin/lib/recovery-manager.cjs +98 -0
  245. package/ez-agents/bin/lib/release-validator.cjs +617 -614
  246. package/ez-agents/bin/lib/security-errors.cjs +62 -0
  247. package/ez-agents/bin/lib/session-chain.cjs +304 -304
  248. package/ez-agents/bin/lib/session-errors.cjs +81 -81
  249. package/ez-agents/bin/lib/session-export.cjs +251 -251
  250. package/ez-agents/bin/lib/session-import.cjs +262 -262
  251. package/ez-agents/bin/lib/session-manager.cjs +280 -280
  252. package/ez-agents/bin/lib/skill-context.cjs +148 -0
  253. package/ez-agents/bin/lib/skill-matcher.cjs +236 -0
  254. package/ez-agents/bin/lib/skill-registry.cjs +341 -0
  255. package/ez-agents/bin/lib/skill-resolver.cjs +449 -0
  256. package/ez-agents/bin/lib/skill-triggers.cjs +90 -0
  257. package/ez-agents/bin/lib/skill-validator.cjs +270 -0
  258. package/ez-agents/bin/lib/skill-versioning.cjs +355 -0
  259. package/ez-agents/bin/lib/stack-detector.cjs +399 -0
  260. package/ez-agents/bin/lib/tech-debt-analyzer.cjs +309 -0
  261. package/ez-agents/bin/lib/tier-manager.cjs +428 -428
  262. package/ez-agents/bin/lib/tradeoff-analyzer.cjs +284 -0
  263. package/ez-agents/bin/lib/url-fetch.cjs +170 -170
  264. package/ez-agents/bin/lib/verify.cjs +863 -863
  265. package/ez-agents/references/decimal-phase-calculation.md +65 -65
  266. package/ez-agents/references/git-integration.md +248 -248
  267. package/ez-agents/references/git-planning-commit.md +38 -38
  268. package/ez-agents/references/metrics-schema.md +118 -118
  269. package/ez-agents/references/model-profile-resolution.md +34 -34
  270. package/ez-agents/references/model-profiles.md +93 -93
  271. package/ez-agents/references/phase-argument-parsing.md +61 -61
  272. package/ez-agents/references/planning-config.md +340 -340
  273. package/ez-agents/references/tier-strategy.md +103 -103
  274. package/ez-agents/references/ui-brand.md +160 -160
  275. package/ez-agents/references/verification-patterns.md +612 -612
  276. package/ez-agents/templates/DEBUG.md +164 -164
  277. package/ez-agents/templates/UAT.md +247 -247
  278. package/ez-agents/templates/agent-output-format.md +404 -0
  279. package/ez-agents/templates/bdd-feature.md +173 -173
  280. package/ez-agents/templates/codebase/architecture.md +255 -255
  281. package/ez-agents/templates/codebase/structure.md +285 -285
  282. package/ez-agents/templates/copilot-instructions.md +7 -7
  283. package/ez-agents/templates/debug-subagent-prompt.md +91 -91
  284. package/ez-agents/templates/discovery.md +146 -146
  285. package/ez-agents/templates/discussion.md +68 -68
  286. package/ez-agents/templates/handoff-protocol.md +294 -0
  287. package/ez-agents/templates/incident-runbook.md +205 -205
  288. package/ez-agents/templates/mode-workflow-templates.md +301 -0
  289. package/ez-agents/templates/phase-prompt.md +610 -610
  290. package/ez-agents/templates/planner-subagent-prompt.md +117 -117
  291. package/ez-agents/templates/project.md +184 -184
  292. package/ez-agents/templates/release-checklist.md +136 -133
  293. package/ez-agents/templates/research.md +552 -552
  294. package/ez-agents/templates/rollback-plan.md +201 -201
  295. package/ez-agents/templates/security-user-setup.md +244 -0
  296. package/ez-agents/templates/skill-validation-rules.md +476 -0
  297. package/ez-agents/templates/state.md +180 -176
  298. package/ez-agents/templates/summary-complex.md +59 -59
  299. package/ez-agents/tests/gates/gate-01-02.test.cjs +812 -0
  300. package/ez-agents/tests/gates/gate-03-04.test.cjs +762 -0
  301. package/ez-agents/tests/gates/gate-05-validator.test.cjs +145 -0
  302. package/ez-agents/tests/gates/gate-06-docs-validator.test.cjs +244 -0
  303. package/ez-agents/tests/gates/gate-07-release-validator.test.cjs +219 -0
  304. package/ez-agents/tests/guards/context-budget-guard.test.cjs +145 -0
  305. package/ez-agents/tests/guards/edge-case-guards.test.cjs +238 -0
  306. package/ez-agents/tests/guards/hallucination-guard.test.cjs +124 -0
  307. package/ez-agents/workflows/audit-milestone.md +1 -1
  308. package/ez-agents/workflows/autonomous.md +844 -844
  309. package/ez-agents/workflows/complete-milestone.md +1 -1
  310. package/ez-agents/workflows/discuss-phase.md +1 -1
  311. package/ez-agents/workflows/execute-phase.md +124 -3
  312. package/ez-agents/workflows/help.md +42 -181
  313. package/ez-agents/workflows/hotfix.md +291 -291
  314. package/ez-agents/workflows/new-milestone.md +713 -713
  315. package/ez-agents/workflows/new-project.md +1089 -1107
  316. package/ez-agents/workflows/plan-phase.md +0 -40
  317. package/ez-agents/workflows/release.md +253 -253
  318. package/ez-agents/workflows/resume-session.md +215 -215
  319. package/ez-agents/workflows/run-phase.md +531 -0
  320. package/ez-agents/workflows/settings.md +2 -35
  321. package/hooks/dist/ez-check-update.js +81 -81
  322. package/hooks/dist/ez-context-monitor.js +148 -141
  323. package/hooks/dist/ez-statusline.js +115 -115
  324. package/package.json +78 -71
  325. package/scripts/fix-qwen-installation.js +144 -144
  326. package/agents/ez-integration-checker.md +0 -443
  327. package/agents/ez-nyquist-auditor.md +0 -176
  328. package/agents/ez-observer-agent.md +0 -260
  329. package/agents/ez-plan-checker.md +0 -706
  330. package/agents/ez-research-synthesizer.md +0 -247
  331. package/agents/ez-scrum-master-agent.md +0 -242
  332. package/agents/ez-tech-lead-agent.md +0 -267
  333. package/agents/ez-ui-auditor.md +0 -439
  334. package/agents/ez-ui-checker.md +0 -300
  335. package/agents/ez-ui-researcher.md +0 -353
  336. package/commands/ez/add-phase.md +0 -43
  337. package/commands/ez/add-todo.md +0 -47
  338. package/commands/ez/arch-review.md +0 -102
  339. package/commands/ez/auth.md +0 -87
  340. package/commands/ez/autonomous.md +0 -41
  341. package/commands/ez/check-todos.md +0 -45
  342. package/commands/ez/cleanup.md +0 -18
  343. package/commands/ez/debug.md +0 -168
  344. package/commands/ez/export-session.md +0 -79
  345. package/commands/ez/gather-requirements.md +0 -117
  346. package/commands/ez/git-workflow.md +0 -72
  347. package/commands/ez/health.md +0 -22
  348. package/commands/ez/hotfix.md +0 -120
  349. package/commands/ez/import-session.md +0 -82
  350. package/commands/ez/insert-phase.md +0 -32
  351. package/commands/ez/join-discord.md +0 -18
  352. package/commands/ez/list-phase-assumptions.md +0 -46
  353. package/commands/ez/list-sessions.md +0 -96
  354. package/commands/ez/package-manager.md +0 -316
  355. package/commands/ez/pause-work.md +0 -38
  356. package/commands/ez/plan-milestone-gaps.md +0 -34
  357. package/commands/ez/preflight.md +0 -79
  358. package/commands/ez/reapply-patches.md +0 -124
  359. package/commands/ez/release.md +0 -153
  360. package/commands/ez/remove-phase.md +0 -31
  361. package/commands/ez/research-phase.md +0 -190
  362. package/commands/ez/resume.md +0 -107
  363. package/commands/ez/set-profile.md +0 -34
  364. package/commands/ez/standup.md +0 -85
  365. package/commands/ez/stats.md +0 -18
  366. package/commands/ez/ui-phase.md +0 -34
  367. package/commands/ez/ui-review.md +0 -32
  368. package/commands/ez/validate-phase.md +0 -35
  369. package/ez-agents/bin/lib/metrics-tracker.cjs +0 -406
  370. package/ez-agents/templates/UI-SPEC.md +0 -100
  371. package/ez-agents/templates/VALIDATION.md +0 -76
  372. package/ez-agents/templates/context.md +0 -352
  373. package/ez-agents/templates/verification-report.md +0 -322
  374. package/ez-agents/workflows/arch-review.md +0 -54
  375. package/ez-agents/workflows/export-session.md +0 -255
  376. package/ez-agents/workflows/gather-requirements.md +0 -206
  377. package/ez-agents/workflows/import-session.md +0 -303
  378. package/ez-agents/workflows/research-phase.md +0 -74
  379. package/ez-agents/workflows/standup.md +0 -64
  380. package/ez-agents/workflows/ui-phase.md +0 -290
  381. package/ez-agents/workflows/ui-review.md +0 -157
  382. package/ez-agents/workflows/validate-phase.md +0 -167
@@ -0,0 +1,227 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * EZ Health Check — Health monitoring for EZ workflow
5
+ *
6
+ * Validates EZ environment and configuration
7
+ * Used by workflows to detect failures and use fallback functions
8
+ *
9
+ * Usage:
10
+ * const HealthCheck = require('./health-check.cjs');
11
+ * const health = new HealthCheck();
12
+ * const result = health.runAll();
13
+ */
14
+
15
+ const fs = require('fs');
16
+ const path = require('path');
17
+
18
+ class HealthCheck {
19
+ /**
20
+ * Create a HealthCheck instance
21
+ */
22
+ constructor() {
23
+ this.issues = [];
24
+ this.warnings = [];
25
+ }
26
+
27
+ /**
28
+ * Check Node.js version (must be >= 16)
29
+ * @returns {boolean} - True if version is acceptable
30
+ */
31
+ checkNodeVersion() {
32
+ try {
33
+ const version = process.version;
34
+ const major = parseInt(version.slice(1).split('.')[0]);
35
+ if (major < 16) {
36
+ this.issues.push(`Node.js version ${version} is below required 16.x`);
37
+ return false;
38
+ }
39
+ return true;
40
+ } catch (err) {
41
+ this.issues.push('Cannot determine Node.js version');
42
+ return false;
43
+ }
44
+ }
45
+
46
+ /**
47
+ * Check if .planning directory exists
48
+ * @returns {boolean} - True if exists
49
+ */
50
+ checkPlanningDirectory() {
51
+ const planningDir = '.planning';
52
+ if (!fs.existsSync(planningDir)) {
53
+ this.warnings.push('.planning directory does not exist');
54
+ return false;
55
+ }
56
+ return true;
57
+ }
58
+
59
+ /**
60
+ * Check if config.json exists and is valid JSON
61
+ * @returns {boolean} - True if exists and valid
62
+ */
63
+ checkConfigFile() {
64
+ const configPath = '.planning/config.json';
65
+ if (!fs.existsSync(configPath)) {
66
+ this.warnings.push('config.json not found');
67
+ return false;
68
+ }
69
+ try {
70
+ JSON.parse(fs.readFileSync(configPath, 'utf-8'));
71
+ return true;
72
+ } catch (err) {
73
+ this.issues.push('config.json is invalid JSON');
74
+ return false;
75
+ }
76
+ }
77
+
78
+ /**
79
+ * Check if STATE.md exists
80
+ * @returns {boolean} - True if exists
81
+ */
82
+ checkStateFile() {
83
+ const statePath = '.planning/STATE.md';
84
+ if (!fs.existsSync(statePath)) {
85
+ this.warnings.push('STATE.md not found');
86
+ return false;
87
+ }
88
+ return true;
89
+ }
90
+
91
+ /**
92
+ * Check if ROADMAP.md exists
93
+ * @returns {boolean} - True if exists
94
+ */
95
+ checkRoadmapFile() {
96
+ const roadmapPath = '.planning/ROADMAP.md';
97
+ if (!fs.existsSync(roadmapPath)) {
98
+ this.warnings.push('ROADMAP.md not found');
99
+ return false;
100
+ }
101
+ return true;
102
+ }
103
+
104
+ /**
105
+ * Check if PROJECT.md exists
106
+ * @returns {boolean} - True if exists
107
+ */
108
+ checkProjectFile() {
109
+ const projectPath = '.planning/PROJECT.md';
110
+ if (!fs.existsSync(projectPath)) {
111
+ this.warnings.push('PROJECT.md not found');
112
+ return false;
113
+ }
114
+ return true;
115
+ }
116
+
117
+ /**
118
+ * Check if REQUIREMENTS.md exists
119
+ * @returns {boolean} - True if exists
120
+ */
121
+ checkRequirementsFile() {
122
+ const reqPath = '.planning/REQUIREMENTS.md';
123
+ if (!fs.existsSync(reqPath)) {
124
+ this.warnings.push('REQUIREMENTS.md not found');
125
+ return false;
126
+ }
127
+ return true;
128
+ }
129
+
130
+ /**
131
+ * Check if git is available in PATH
132
+ * @returns {boolean} - True if git is available
133
+ */
134
+ checkGitAvailability() {
135
+ try {
136
+ const { execSync } = require('child_process');
137
+ execSync('git --version', { stdio: 'ignore', timeout: 5000 });
138
+ return true;
139
+ } catch (err) {
140
+ this.warnings.push('git is not available in PATH');
141
+ return false;
142
+ }
143
+ }
144
+
145
+ /**
146
+ * Check if required API keys are configured
147
+ * @returns {Object} - { ok: boolean, missing: string[] }
148
+ */
149
+ checkApiKeys() {
150
+ const missing = [];
151
+ const requiredKeys = ['ANTHROPIC_API_KEY'];
152
+
153
+ for (const key of requiredKeys) {
154
+ if (!process.env[key]) {
155
+ // Also check ~/.ez/ directory
156
+ const homeDir = require('os').homedir();
157
+ const keyPath = path.join(homeDir, '.ez', key.toLowerCase().replace('_api_key', ''));
158
+ if (!fs.existsSync(keyPath)) {
159
+ missing.push(key);
160
+ }
161
+ }
162
+ }
163
+
164
+ if (missing.length > 0) {
165
+ return { ok: false, missing };
166
+ }
167
+ return { ok: true };
168
+ }
169
+
170
+ /**
171
+ * Check if npm dependencies are installed
172
+ * @returns {Object} - { ok: boolean, missing: string[] }
173
+ */
174
+ checkDependencies() {
175
+ const missing = [];
176
+ const requiredDeps = ['proper-lockfile', 'semver'];
177
+
178
+ for (const dep of requiredDeps) {
179
+ try {
180
+ require.resolve(dep);
181
+ } catch (err) {
182
+ missing.push(dep);
183
+ }
184
+ }
185
+
186
+ if (missing.length > 0) {
187
+ return { ok: false, missing };
188
+ }
189
+ return { ok: true };
190
+ }
191
+
192
+ /**
193
+ * Run all health checks
194
+ * @returns {Object} - Health status object
195
+ */
196
+ runAll() {
197
+ const results = {
198
+ status: 'healthy',
199
+ timestamp: new Date().toISOString(),
200
+ node_version: process.version,
201
+ checks: {
202
+ node_version: this.checkNodeVersion(),
203
+ planning_dir: this.checkPlanningDirectory(),
204
+ config_file: this.checkConfigFile(),
205
+ state_file: this.checkStateFile(),
206
+ roadmap_file: this.checkRoadmapFile(),
207
+ project_file: this.checkProjectFile(),
208
+ requirements_file: this.checkRequirementsFile(),
209
+ git: this.checkGitAvailability(),
210
+ api_keys: this.checkApiKeys(),
211
+ dependencies: this.checkDependencies()
212
+ },
213
+ issues: this.issues,
214
+ warnings: this.warnings
215
+ };
216
+
217
+ if (this.issues.length > 0) {
218
+ results.status = 'unhealthy';
219
+ } else if (this.warnings.length > 0) {
220
+ results.status = 'degraded';
221
+ }
222
+
223
+ return results;
224
+ }
225
+ }
226
+
227
+ module.exports = HealthCheck;
@@ -0,0 +1,279 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * EZ Lib Index — Central export for all EZ libraries
5
+ *
6
+ * Provides single import point for all utility modules.
7
+ *
8
+ * Usage:
9
+ * const lib = require('./index.cjs');
10
+ * const logger = new lib.Logger();
11
+ * const git = new lib.GitUtils(process.cwd());
12
+ */
13
+
14
+ const path = require('path');
15
+ const fs = require('fs');
16
+
17
+ // Core utilities
18
+ const Logger = require('./logger.cjs');
19
+ const LoggerInstance = new Logger();
20
+
21
+ // File system
22
+ const fsUtils = require('./fs-utils.cjs');
23
+
24
+ // Security
25
+ const safeExec = require('./safe-exec.cjs');
26
+ const safePath = require('./safe-path.cjs');
27
+ const auth = require('./auth.cjs');
28
+ const auditExec = require('./audit-exec.cjs');
29
+
30
+ // Git
31
+ const GitUtils = require('./git-utils.cjs');
32
+ const GitWorkflowEngine = require('./git-workflow-engine.cjs');
33
+ const GitErrors = require('./git-errors.cjs');
34
+
35
+ // Reliability
36
+ const retry = require('./retry.cjs');
37
+ const CircuitBreaker = require('./circuit-breaker.cjs');
38
+
39
+ // Concurrency
40
+ const fileLock = require('./file-lock.cjs');
41
+ const tempFile = require('./temp-file.cjs');
42
+
43
+ // Health & Testing
44
+ const healthCheck = require('./health-check.cjs');
45
+ const timeoutExec = require('./timeout-exec.cjs');
46
+
47
+ // Multi-model
48
+ const modelProvider = require('./model-provider.cjs');
49
+
50
+ // Adapters
51
+ const assistantAdapter = require('./assistant-adapter.cjs');
52
+
53
+ // Package Manager
54
+ const PackageManagerService = require('./package-manager-service.cjs');
55
+ const PackageManagerDetector = require('./package-manager-detector.cjs');
56
+ const PackageManagerExecutor = require('./package-manager-executor.cjs');
57
+ const LockfileValidator = require('./lockfile-validator.cjs');
58
+
59
+ // BDD & Requirements (Phase 30)
60
+ const bddValidator = require('./bdd-validator.cjs');
61
+
62
+ // Discussion Synthesis (Phase 31)
63
+ const discussionSynthesizer = require('./discussion-synthesizer.cjs');
64
+
65
+ // Tier Management & Release Validation (Phase 32-33)
66
+ const TierManager = require('./tier-manager.cjs');
67
+ const ReleaseValidator = require('./release-validator.cjs');
68
+
69
+ // Context Optimization (Phase 43)
70
+ const ContextRelevanceScorer = require('./context-relevance-scorer.cjs');
71
+ const ContextCompressor = require('./context-compressor.cjs');
72
+ const ContextDeduplicator = require('./context-deduplicator.cjs');
73
+ const ContextMetadataTracker = require('./context-metadata-tracker.cjs');
74
+ const ContextManager = require('./context-manager.cjs');
75
+
76
+ // Analytics
77
+ const AnalyticsCollector = require('./analytics/analytics-collector.cjs');
78
+ const AnalyticsReporter = require('./analytics/analytics-reporter.cjs');
79
+ const CohortAnalyzer = require('./analytics/cohort-analyzer.cjs');
80
+ const FunnelAnalyzer = require('./analytics/funnel-analyzer.cjs');
81
+ const NpsTracker = require('./analytics/nps-tracker.cjs');
82
+
83
+ // Deploy
84
+ const DeployAuditLog = require('./deploy/deploy-audit-log.cjs');
85
+ const DeployDetector = require('./deploy/deploy-detector.cjs');
86
+ const DeployEnvManager = require('./deploy/deploy-env-manager.cjs');
87
+ const DeployHealthCheck = require('./deploy/deploy-health-check.cjs');
88
+ const DeployPreFlight = require('./deploy/deploy-pre-flight.cjs');
89
+ const DeployRollback = require('./deploy/deploy-rollback.cjs');
90
+ const DeployRunner = require('./deploy/deploy-runner.cjs');
91
+ const DeployStatus = require('./deploy/deploy-status.cjs');
92
+
93
+ // FinOps
94
+ const BudgetEnforcer = require('./finops/budget-enforcer.cjs');
95
+ const CostReporter = require('./finops/cost-reporter.cjs');
96
+ const FinopsAnalyzer = require('./finops/finops-analyzer.cjs');
97
+ const SpotManager = require('./finops/spot-manager.cjs');
98
+
99
+ // Gates
100
+ const Gate01Requirement = require('./gates/gate-01-requirement.cjs');
101
+ const Gate02Architecture = require('./gates/gate-02-architecture.cjs');
102
+ const Gate03Code = require('./gates/gate-03-code.cjs');
103
+ const Gate04Security = require('./gates/gate-04-security.cjs');
104
+
105
+ // Perf
106
+ const ApiMonitor = require('./perf/api-monitor.cjs');
107
+ const DbOptimizer = require('./perf/db-optimizer.cjs');
108
+ const FrontendPerformance = require('./perf/frontend-performance.cjs');
109
+ const PerfAnalyzer = require('./perf/perf-analyzer.cjs');
110
+ const PerfBaseline = require('./perf/perf-baseline.cjs');
111
+ const PerfReporter = require('./perf/perf-reporter.cjs');
112
+ const RegressionDetector = require('./perf/regression-detector.cjs');
113
+
114
+ // Standalone analyzers
115
+ const ArchetypeDetector = require('./archetype-detector.cjs');
116
+ const BackupService = require('./backup-service.cjs');
117
+ const BusinessFlowMapper = require('./business-flow-mapper.cjs');
118
+ const CodeComplexityAnalyzer = require('./code-complexity-analyzer.cjs');
119
+ const CodebaseAnalyzer = require('./codebase-analyzer.cjs');
120
+ const ConstraintExtractor = require('./constraint-extractor.cjs');
121
+ const DependencyGraph = require('./dependency-graph.cjs');
122
+ const FrameworkDetector = require('./framework-detector.cjs');
123
+ const LogRotation = require('./log-rotation.cjs');
124
+ const RecoveryManager = require('./recovery-manager.cjs');
125
+ const SkillTriggers = require('./skill-triggers.cjs');
126
+ const SkillValidator = require('./skill-validator.cjs');
127
+ const SkillVersioning = require('./skill-versioning.cjs');
128
+ const StackDetector = require('./stack-detector.cjs');
129
+ const TechDebtAnalyzer = require('./tech-debt-analyzer.cjs');
130
+ const TradeoffAnalyzer = require('./tradeoff-analyzer.cjs');
131
+ const QualityGate = require('./quality-gate.cjs');
132
+
133
+ module.exports = {
134
+ // Core
135
+ Logger,
136
+ logger: LoggerInstance,
137
+
138
+ // File system
139
+ ...fsUtils,
140
+
141
+ // Security
142
+ ...safeExec,
143
+ ...safePath,
144
+ ...auth,
145
+ ...auditExec,
146
+
147
+ // Git
148
+ GitUtils,
149
+ GitWorkflowEngine,
150
+ GitErrors,
151
+
152
+ // Reliability
153
+ ...retry,
154
+ CircuitBreaker,
155
+
156
+ // Concurrency
157
+ ...fileLock,
158
+ ...tempFile,
159
+
160
+ // Health & Testing
161
+ ...healthCheck,
162
+ ...timeoutExec,
163
+
164
+ // Multi-model
165
+ ...modelProvider,
166
+
167
+ // Adapters
168
+ ...assistantAdapter,
169
+
170
+ // Package Manager
171
+ PackageManagerService,
172
+ PackageManagerDetector,
173
+ PackageManagerExecutor,
174
+ LockfileValidator,
175
+
176
+ // BDD & Requirements (Phase 30)
177
+ ...bddValidator,
178
+
179
+ // Discussion Synthesis (Phase 31)
180
+ ...discussionSynthesizer,
181
+
182
+ // Tier Management & Release (Phase 32-33)
183
+ TierManager,
184
+ ReleaseValidator,
185
+
186
+ // Context Optimization (Phase 43)
187
+ ContextRelevanceScorer,
188
+ ContextCompressor,
189
+ ContextDeduplicator,
190
+ ContextMetadataTracker,
191
+ ContextManager,
192
+
193
+ // Analytics
194
+ AnalyticsCollector,
195
+ AnalyticsReporter,
196
+ CohortAnalyzer,
197
+ FunnelAnalyzer,
198
+ NpsTracker,
199
+
200
+ // Deploy
201
+ DeployAuditLog,
202
+ DeployDetector,
203
+ DeployEnvManager,
204
+ DeployHealthCheck,
205
+ DeployPreFlight,
206
+ DeployRollback,
207
+ DeployRunner,
208
+ DeployStatus,
209
+
210
+ // FinOps
211
+ BudgetEnforcer,
212
+ CostReporter,
213
+ FinopsAnalyzer,
214
+ SpotManager,
215
+
216
+ // Gates
217
+ Gate01Requirement,
218
+ Gate02Architecture,
219
+ Gate03Code,
220
+ Gate04Security,
221
+
222
+ // Perf
223
+ ApiMonitor,
224
+ DbOptimizer,
225
+ FrontendPerformance,
226
+ PerfAnalyzer,
227
+ PerfBaseline,
228
+ PerfReporter,
229
+ RegressionDetector,
230
+
231
+ // Standalone analyzers
232
+ ArchetypeDetector,
233
+ BackupService,
234
+ BusinessFlowMapper,
235
+ CodeComplexityAnalyzer,
236
+ CodebaseAnalyzer,
237
+ ConstraintExtractor,
238
+ DependencyGraph,
239
+ FrameworkDetector,
240
+ LogRotation,
241
+ RecoveryManager,
242
+ SkillTriggers,
243
+ SkillValidator,
244
+ SkillVersioning,
245
+ StackDetector,
246
+ TechDebtAnalyzer,
247
+ TradeoffAnalyzer,
248
+ QualityGate,
249
+
250
+ // Version info
251
+ version: '3.0.0',
252
+
253
+ /**
254
+ * Get health status of all modules
255
+ */
256
+ getHealthStatus() {
257
+ return {
258
+ version: this.version,
259
+ nodeVersion: process.version,
260
+ platform: process.platform,
261
+ modules: {
262
+ logger: 'ok',
263
+ fsUtils: 'ok',
264
+ safeExec: 'ok',
265
+ safePath: 'ok',
266
+ auth: auth.isKeychainAvailable() ? 'keychain' : 'fallback',
267
+ gitUtils: 'ok',
268
+ gitWorkflowEngine: 'ok',
269
+ gitErrors: 'ok',
270
+ retry: 'ok',
271
+ circuitBreaker: 'ok',
272
+ fileLock: 'ok',
273
+ tempFile: 'ok',
274
+ modelProvider: 'ok',
275
+ assistantAdapter: 'ok'
276
+ }
277
+ };
278
+ }
279
+ };