claude-flow-novice 2.3.4 → 2.3.6

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 (347) hide show
  1. package/dist/src/booster/performance-benchmark.js +1 -1
  2. package/dist/src/booster/wasm-demo.js +1 -1
  3. package/dist/src/cli/command-registry.js +2 -2
  4. package/dist/src/cli/help-formatter.js +137 -109
  5. package/dist/src/cli/simple-cli.js +2528 -2121
  6. package/dist/src/cli/simple-commands/sparc/refinement.js +3 -3
  7. package/dist/src/cli/validation-helper.js +98 -49
  8. package/dist/src/commands/suggest-templates.js +4 -4
  9. package/dist/src/core/version.js +23 -15
  10. package/dist/src/memory/swarm-memory.js +603 -470
  11. package/dist/src/slash-commands/fullstack.js +2 -2
  12. package/dist/src/slash-commands/parse-epic.js +1 -1
  13. package/package.json +1 -1
  14. package/scripts/postinstall.js +41 -31
  15. package/dist/scripts/.claude-flow/metrics/agent-metrics.json +0 -1
  16. package/dist/scripts/.claude-flow/metrics/performance.json +0 -9
  17. package/dist/scripts/.claude-flow/metrics/task-metrics.json +0 -10
  18. package/dist/scripts/CLEANUP_OPTIMIZATION_REPORT.json +0 -312
  19. package/dist/scripts/CLEANUP_PERFORMANCE_OPTIMIZATION.md +0 -387
  20. package/dist/scripts/CLEANUP_QUICK_START.md +0 -268
  21. package/dist/scripts/CLEANUP_TEST_RESULTS.md +0 -205
  22. package/dist/scripts/README.md +0 -339
  23. package/dist/scripts/ace-query.sh +0 -384
  24. package/dist/scripts/agent-token-analysis.js +0 -430
  25. package/dist/scripts/auto-setup.js +0 -332
  26. package/dist/scripts/build/README.md +0 -167
  27. package/dist/scripts/build/build-config.js +0 -27
  28. package/dist/scripts/build/build-prompt-copier.sh +0 -30
  29. package/dist/scripts/build/performance-monitor.js +0 -869
  30. package/dist/scripts/build/prepare-publish.js +0 -150
  31. package/dist/scripts/build/typescript-fixer.js +0 -621
  32. package/dist/scripts/build/unified-builder.sh +0 -428
  33. package/dist/scripts/build/update-bin-version.js +0 -32
  34. package/dist/scripts/build/validate-agents.js +0 -238
  35. package/dist/scripts/build-index.js +0 -43
  36. package/dist/scripts/build-orchestrator.js +0 -320
  37. package/dist/scripts/check-routing-stats.cjs +0 -122
  38. package/dist/scripts/ci-validation.js +0 -375
  39. package/dist/scripts/cleanup-blocking-coordination.sh +0 -420
  40. package/dist/scripts/cleanup-idle-sessions.sh +0 -118
  41. package/dist/scripts/collect-build-metrics.js +0 -65
  42. package/dist/scripts/demo/README.md +0 -79
  43. package/dist/scripts/demo/autoscaling-demo-simplified.js +0 -963
  44. package/dist/scripts/demo/comprehensive-dashboard-test.js +0 -693
  45. package/dist/scripts/demo/confidence-log.js +0 -87
  46. package/dist/scripts/demo/confidence-report.js +0 -82
  47. package/dist/scripts/demo/demo-multi-swarm-coordination.js +0 -325
  48. package/dist/scripts/demo/demo-production-deployment.js +0 -399
  49. package/dist/scripts/demo/demo-visualization-system.js +0 -149
  50. package/dist/scripts/demo/performance-analysis.cjs +0 -71
  51. package/dist/scripts/demo/performance-analysis.js +0 -71
  52. package/dist/scripts/demo/test-autoscaling-demo.js +0 -314
  53. package/dist/scripts/dependency-optimizer.js +0 -349
  54. package/dist/scripts/dependency-security-assessment.js +0 -331
  55. package/dist/scripts/deploy-sdk.sh +0 -176
  56. package/dist/scripts/deployment-readiness-report.json +0 -179
  57. package/dist/scripts/dev/README.md +0 -264
  58. package/dist/scripts/dev/claude-flow-wrapper.sh +0 -35
  59. package/dist/scripts/dev/claude-monitor.py +0 -419
  60. package/dist/scripts/dev/claude-sparc.sh +0 -562
  61. package/dist/scripts/dev/claude-wrapper.sh +0 -17
  62. package/dist/scripts/dev/demo-phase3-compliance.js +0 -172
  63. package/dist/scripts/dev/demo-task-system.ts +0 -224
  64. package/dist/scripts/dev/deployment-validator.js +0 -315
  65. package/dist/scripts/dev/spawn-claude-terminal.sh +0 -32
  66. package/dist/scripts/dev/start-portal.sh +0 -506
  67. package/dist/scripts/dev/start-web-ui.js +0 -15
  68. package/dist/scripts/dev/stop-portal.sh +0 -311
  69. package/dist/scripts/dev/validate-examples.ts +0 -288
  70. package/dist/scripts/dev/validate-phase2.cjs +0 -451
  71. package/dist/scripts/dev/validate-phase2.js +0 -785
  72. package/dist/scripts/dev/validate-phase3.cjs +0 -208
  73. package/dist/scripts/dev/validate-security-remediation.js +0 -1
  74. package/dist/scripts/ecosystem.config.cjs +0 -90
  75. package/dist/scripts/enhanced-memory-spiral-killer.sh +0 -221
  76. package/dist/scripts/fix-js-extensions.js +0 -167
  77. package/dist/scripts/generate-basic-types.js +0 -73
  78. package/dist/scripts/generate-changelog.js +0 -318
  79. package/dist/scripts/git-hooks/pre-commit.sh +0 -143
  80. package/dist/scripts/health-checks.js +0 -634
  81. package/dist/scripts/hook-wrapper.sh +0 -54
  82. package/dist/scripts/install/README.md +0 -375
  83. package/dist/scripts/install/REDIS_SETUP_VALIDATION.json +0 -245
  84. package/dist/scripts/install/check-prerequisites.js +0 -303
  85. package/dist/scripts/install/config-wizard.js +0 -606
  86. package/dist/scripts/install/dependency-checker.js +0 -385
  87. package/dist/scripts/install/health-check.js +0 -765
  88. package/dist/scripts/install/install.js +0 -256
  89. package/dist/scripts/install/installation-benchmark.js +0 -461
  90. package/dist/scripts/install/quick-install.js +0 -720
  91. package/dist/scripts/install/quick-start-wizard.js +0 -295
  92. package/dist/scripts/install/redis-cli.js +0 -289
  93. package/dist/scripts/install/redis-install-guides.md +0 -407
  94. package/dist/scripts/install/redis-setup.js +0 -559
  95. package/dist/scripts/install/redis-test.js +0 -278
  96. package/dist/scripts/install/service-manager.js +0 -672
  97. package/dist/scripts/install/setup.js +0 -832
  98. package/dist/scripts/install/uninstall.js +0 -526
  99. package/dist/scripts/install/update.js +0 -461
  100. package/dist/scripts/install-pre-commit-hook.sh +0 -127
  101. package/dist/scripts/legacy/README.md +0 -272
  102. package/dist/scripts/legacy/batch-fix-ts.sh +0 -54
  103. package/dist/scripts/legacy/build-migration.sh +0 -105
  104. package/dist/scripts/legacy/build-monitor.js +0 -209
  105. package/dist/scripts/legacy/build-with-filter.sh +0 -84
  106. package/dist/scripts/legacy/build-workaround.sh +0 -71
  107. package/dist/scripts/legacy/fix-ts-advanced.js +0 -358
  108. package/dist/scripts/legacy/fix-ts-final.sh +0 -50
  109. package/dist/scripts/legacy/fix-ts-targeted.sh +0 -49
  110. package/dist/scripts/legacy/fix-typescript-errors.js +0 -305
  111. package/dist/scripts/legacy/force-build.sh +0 -63
  112. package/dist/scripts/legacy/optimize-performance.js +0 -400
  113. package/dist/scripts/legacy/performance-monitor.js +0 -263
  114. package/dist/scripts/legacy/performance-monitoring.js +0 -532
  115. package/dist/scripts/legacy/performance-test-runner.js +0 -645
  116. package/dist/scripts/legacy/quick-fix-ts.js +0 -281
  117. package/dist/scripts/legacy/safe-build.sh +0 -63
  118. package/dist/scripts/memory-monitor-coordinator.js +0 -451
  119. package/dist/scripts/migrate-to-sdk.sh +0 -520
  120. package/dist/scripts/migration/QUICK-START.md +0 -189
  121. package/dist/scripts/migration/QUICK-START.md.backup-1760135091363 +0 -189
  122. package/dist/scripts/migration/README.md +0 -464
  123. package/dist/scripts/migration/TASK-1.3.2-COMPLETION-REPORT.md +0 -500
  124. package/dist/scripts/migration/TASK-1.3.2-COMPLETION-REPORT.md.backup-1760135091348 +0 -500
  125. package/dist/scripts/migration/UPDATE-PATHS-README.md +0 -464
  126. package/dist/scripts/migration/UPDATE-PATHS-README.md.backup-1760135091337 +0 -464
  127. package/dist/scripts/migration/example-patterns.json +0 -19
  128. package/dist/scripts/migration/install-arm64.js +0 -78
  129. package/dist/scripts/migration/install.js +0 -83
  130. package/dist/scripts/migration/migrate-hooks.js +0 -173
  131. package/dist/scripts/migration/migration-examples.ts +0 -318
  132. package/dist/scripts/migration/reorganize-workspace.js +0 -504
  133. package/dist/scripts/migration/test-update-paths.js +0 -359
  134. package/dist/scripts/migration/update-paths.js +0 -664
  135. package/dist/scripts/migration/validate-migration.js +0 -647
  136. package/dist/scripts/monitor-loop.sh +0 -65
  137. package/dist/scripts/monitor-memory.sh +0 -47
  138. package/dist/scripts/monitor-migration.js +0 -339
  139. package/dist/scripts/monitor.py +0 -43
  140. package/dist/scripts/monitoring/README.md +0 -178
  141. package/dist/scripts/monitoring/alert-monitor.sh +0 -220
  142. package/dist/scripts/monitoring/analyze-resources.sh +0 -199
  143. package/dist/scripts/monitoring/dashboards/rate-limiting-dashboard.json +0 -211
  144. package/dist/scripts/monitoring/dynamic-monitor.sh +0 -85
  145. package/dist/scripts/monitoring/launch-stability-test.sh +0 -184
  146. package/dist/scripts/monitoring/monitor-test.sh +0 -93
  147. package/dist/scripts/monitoring/pre-test-validation.sh +0 -208
  148. package/dist/scripts/monitoring/quick-test-alerting.sh +0 -118
  149. package/dist/scripts/monitoring/quick-test-rate-limiting.sh +0 -206
  150. package/dist/scripts/monitoring/rate-limiting-monitor.sh +0 -380
  151. package/dist/scripts/monitoring/resource-monitor.sh +0 -126
  152. package/dist/scripts/monitoring/stability-monitor.js +0 -429
  153. package/dist/scripts/monitoring/test-monitor-quick.sh +0 -54
  154. package/dist/scripts/monitoring/view-alerts.sh +0 -307
  155. package/dist/scripts/npm-metrics-collector.js +0 -482
  156. package/dist/scripts/npm-package-validation.cjs +0 -299
  157. package/dist/scripts/optimization/build-optimizer.js +0 -438
  158. package/dist/scripts/optimization/config-validator.js +0 -761
  159. package/dist/scripts/optimization/test-optimization.js +0 -432
  160. package/dist/scripts/optimization/unified-activation.js +0 -839
  161. package/dist/scripts/optimize-package-swarm.js +0 -54
  162. package/dist/scripts/performance/ACTIVATION_COMMANDS.md +0 -292
  163. package/dist/scripts/performance/sqlite-enhanced-activation.sh +0 -583
  164. package/dist/scripts/performance/test-enhanced-backend.sh +0 -504
  165. package/dist/scripts/performance-monitor.js +0 -644
  166. package/dist/scripts/performance-test-runner.js +0 -698
  167. package/dist/scripts/post-deployment-monitoring.js +0 -350
  168. package/dist/scripts/post-edit-pipeline.js +0 -2091
  169. package/dist/scripts/post-install-claude-md.js +0 -78
  170. package/dist/scripts/postinstall.js +0 -84
  171. package/dist/scripts/pre-publish-validation.cjs +0 -212
  172. package/dist/scripts/pre-publish-validation.js +0 -429
  173. package/dist/scripts/redis-lua/cleanup-blocking-coordination.lua +0 -198
  174. package/dist/scripts/release-announcement.js +0 -425
  175. package/dist/scripts/release-notification.js +0 -248
  176. package/dist/scripts/release-rollback.js +0 -376
  177. package/dist/scripts/release-validation.js +0 -460
  178. package/dist/scripts/rollback-sdk.sh +0 -66
  179. package/dist/scripts/run-production-validation.ts +0 -590
  180. package/dist/scripts/run-stability-validation.sh +0 -687
  181. package/dist/scripts/security/README.md +0 -339
  182. package/dist/scripts/security/deployment-validation.cjs +0 -279
  183. package/dist/scripts/security/envelope-encryption-confidence-report.cjs +0 -422
  184. package/dist/scripts/security/install-git-hooks.sh +0 -132
  185. package/dist/scripts/security/install-git-secrets.sh +0 -295
  186. package/dist/scripts/security/rotate-api-keys.js +0 -469
  187. package/dist/scripts/security/ruv-swarm-safe.js +0 -74
  188. package/dist/scripts/security/security-audit.cjs +0 -538
  189. package/dist/scripts/security/setup-redis-auth.sh +0 -397
  190. package/dist/scripts/security/validate-envelope-encryption.cjs +0 -340
  191. package/dist/scripts/security-scan.js +0 -492
  192. package/dist/scripts/src/web/frontend/.claude-flow/metrics/agent-metrics.json +0 -1
  193. package/dist/scripts/src/web/frontend/.claude-flow/metrics/performance.json +0 -9
  194. package/dist/scripts/src/web/frontend/.claude-flow/metrics/task-metrics.json +0 -10
  195. package/dist/scripts/switch-api.sh +0 -159
  196. package/dist/scripts/sync-agents.js +0 -290
  197. package/dist/scripts/test/50-agent-test.js +0 -625
  198. package/dist/scripts/test/NEW_STABILITY_TEST_GUIDE.md +0 -407
  199. package/dist/scripts/test/README.md +0 -236
  200. package/dist/scripts/test/STABILITY_TEST_EXAMPLE.md +0 -347
  201. package/dist/scripts/test/STABILITY_TEST_README.md +0 -480
  202. package/dist/scripts/test/agent-worker.js +0 -309
  203. package/dist/scripts/test/ai-coordination-test.js +0 -650
  204. package/dist/scripts/test/ai-mesh-coordination-test.js +0 -416
  205. package/dist/scripts/test/check-links.ts +0 -274
  206. package/dist/scripts/test/check-performance-regression.ts +0 -168
  207. package/dist/scripts/test/cli-agent-coordination-test.js +0 -313
  208. package/dist/scripts/test/coordinator-multilingual-test.js +0 -396
  209. package/dist/scripts/test/coordinator-transparency-demo.js +0 -585
  210. package/dist/scripts/test/coverage-report.ts +0 -692
  211. package/dist/scripts/test/generate-swarm-tests.js +0 -633
  212. package/dist/scripts/test/integration-test-validation.cjs +0 -253
  213. package/dist/scripts/test/load-test-swarm.js +0 -576
  214. package/dist/scripts/test/mesh-coordination-zero-overlap-test.js +0 -740
  215. package/dist/scripts/test/multilingual-hello-world-test.js +0 -390
  216. package/dist/scripts/test/quick-multilingual-demo.js +0 -464
  217. package/dist/scripts/test/real-agent-test.js +0 -312
  218. package/dist/scripts/test/run-phase3-compliance-tests.js +0 -427
  219. package/dist/scripts/test/run-stability-test-examples.sh +0 -292
  220. package/dist/scripts/test/stability-results/stability-metrics.jsonl +0 -83
  221. package/dist/scripts/test/stability-results/stability-test-report.json +0 -128
  222. package/dist/scripts/test/stability-results/stability-test.log +0 -1827
  223. package/dist/scripts/test/stability-test-50-agents.js +0 -734
  224. package/dist/scripts/test/test-batch-tasks.ts +0 -29
  225. package/dist/scripts/test/test-byzantine-resolution.js +0 -246
  226. package/dist/scripts/test/test-claude-spawn-options.sh +0 -63
  227. package/dist/scripts/test/test-cli-wizard.js +0 -331
  228. package/dist/scripts/test/test-comprehensive.js +0 -401
  229. package/dist/scripts/test/test-coordination-features.ts +0 -238
  230. package/dist/scripts/test/test-fallback-systems.js +0 -276
  231. package/dist/scripts/test/test-init-command.ts +0 -302
  232. package/dist/scripts/test/test-mcp.ts +0 -251
  233. package/dist/scripts/test/test-runner.ts +0 -568
  234. package/dist/scripts/test/test-swarm-integration.sh +0 -92
  235. package/dist/scripts/test/test-swarm.ts +0 -142
  236. package/dist/scripts/test/validation-summary.ts +0 -408
  237. package/dist/scripts/test-cleanup-performance.sh +0 -416
  238. package/dist/scripts/test-dashboard-auth.cjs +0 -203
  239. package/dist/scripts/test-docker-deployment.sh +0 -207
  240. package/dist/scripts/test-npm-package.cjs +0 -167
  241. package/dist/scripts/test-provider-routing.cjs +0 -226
  242. package/dist/scripts/test-routing-telemetry.cjs +0 -147
  243. package/dist/scripts/test-runner.cjs +0 -154
  244. package/dist/scripts/test-zai-10k.cjs +0 -81
  245. package/dist/scripts/test-zai-api.cjs +0 -191
  246. package/dist/scripts/test-zai-diagnostic.cjs +0 -151
  247. package/dist/scripts/test-zai-final.cjs +0 -128
  248. package/dist/scripts/test-zai-with-env.cjs +0 -85
  249. package/dist/scripts/toggle-cost-savings.cjs +0 -302
  250. package/dist/scripts/unified-memory-monitor.js +0 -526
  251. package/dist/scripts/utils/README.md +0 -261
  252. package/dist/scripts/utils/clean-build-artifacts.sh +0 -94
  253. package/dist/scripts/utils/cleanup-root.sh +0 -69
  254. package/dist/scripts/utils/fix-cliffy-imports.js +0 -307
  255. package/dist/scripts/utils/fix-duplicate-imports.js +0 -114
  256. package/dist/scripts/utils/fix-error-handling.cjs +0 -70
  257. package/dist/scripts/utils/fix-import-paths.js +0 -104
  258. package/dist/scripts/utils/fix-imports.js +0 -116
  259. package/dist/scripts/utils/fix-shebang.js +0 -78
  260. package/dist/scripts/utils/fix-test-modules.js +0 -27
  261. package/dist/scripts/utils/fix-timezone-issue-246.js +0 -200
  262. package/dist/scripts/utils/fix-ts-comprehensive.py +0 -182
  263. package/dist/scripts/utils/fix-ts-targeted-batch.js +0 -250
  264. package/dist/scripts/utils/remove-benchmark-conflicts.sh +0 -140
  265. package/dist/scripts/utils/simple-test-fixer.js +0 -190
  266. package/dist/scripts/utils/validate-metrics-structure.cjs +0 -144
  267. package/dist/scripts/validate-agent-hooks.js +0 -506
  268. package/dist/scripts/validate-changelog.js +0 -241
  269. package/dist/scripts/validate-coordination-cli.js +0 -69
  270. package/dist/scripts/validate-coordination-toggle-integration.cjs +0 -501
  271. package/dist/scripts/validate-docker-infrastructure.sh +0 -502
  272. package/dist/scripts/validate-entry-points.js +0 -300
  273. package/dist/scripts/validate-memory-monitoring.sh +0 -225
  274. package/dist/scripts/validate-stage3-performance.ts +0 -377
  275. package/dist/scripts/validate-template-bundling.js +0 -180
  276. package/dist/scripts/validation/README.md +0 -33
  277. package/dist/scripts/validation/acl-security-validation.cjs +0 -214
  278. package/dist/scripts/validation/acl-security-validation.js +0 -402
  279. package/dist/scripts/validation/byzantine-verification.js +0 -407
  280. package/dist/scripts/validation/final-phase-2-consensus.cjs +0 -219
  281. package/dist/scripts/validation/final-security-validation.js +0 -791
  282. package/dist/scripts/validation/final-wasm-validation.cjs +0 -840
  283. package/dist/scripts/validation/integration-test-analysis.js +0 -105
  284. package/dist/scripts/validation/phase-0-comprehensive-validation.js +0 -474
  285. package/dist/scripts/validation/phase-0-consensus-report.js +0 -139
  286. package/dist/scripts/validation/phase-0-final-report.js +0 -112
  287. package/dist/scripts/validation/phase-0-redis-consensus-report.js +0 -129
  288. package/dist/scripts/validation/phase-0-validation-improved.js +0 -490
  289. package/dist/scripts/validation/phase-0-validation-test.js +0 -65
  290. package/dist/scripts/validation/phase-1-consensus-report.cjs +0 -342
  291. package/dist/scripts/validation/phase-1-consensus-validation.cjs +0 -551
  292. package/dist/scripts/validation/phase-1-consensus-validation.js +0 -551
  293. package/dist/scripts/validation/phase-2-consensus-report.cjs +0 -186
  294. package/dist/scripts/validation/phase-2-validation.cjs +0 -171
  295. package/dist/scripts/validation/phase-2-validation.js +0 -171
  296. package/dist/scripts/validation/phase-4-consensus-report.js +0 -181
  297. package/dist/scripts/validation/phase-4-final-validation.js +0 -351
  298. package/dist/scripts/validation/phase-5-consensus-report.cjs +0 -113
  299. package/dist/scripts/validation/phase-5-consensus-report.js +0 -113
  300. package/dist/scripts/validation/security-analysis.js +0 -49
  301. package/dist/scripts/validation/security-validation.js +0 -492
  302. package/dist/scripts/validation/simple-security-validation.js +0 -464
  303. package/dist/scripts/verify-installation.js +0 -112
  304. package/dist/scripts/verify-mcp-server.js +0 -86
  305. package/dist/scripts/verify-sdk-phase1.cjs +0 -293
  306. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/accessibility/browser/accessibilityService.js +0 -88
  307. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/accessibility/common/accessibility.js +0 -9
  308. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/action/common/action.js +0 -7
  309. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/action/common/actionCommonCategories.js +0 -13
  310. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/browser/actionList.js +0 -276
  311. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/browser/actionWidget.js +0 -248
  312. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/common/actionWidget.js +0 -5
  313. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actions/common/actions.js +0 -409
  314. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/audioCues/browser/audioCueService.js +0 -176
  315. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/clipboard/browser/clipboardService.js +0 -141
  316. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/clipboard/common/clipboardService.js +0 -6
  317. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/commands/common/commands.js +0 -80
  318. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configuration.js +0 -86
  319. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurationModels.js +0 -554
  320. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurationRegistry.js +0 -317
  321. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurations.js +0 -41
  322. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/browser/contextKeyService.js +0 -432
  323. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/common/contextkey.js +0 -1547
  324. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/common/contextkeys.js +0 -18
  325. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextMenuHandler.js +0 -124
  326. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextMenuService.js +0 -101
  327. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextView.js +0 -7
  328. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextViewService.js +0 -72
  329. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/dialogs/common/dialogs.js +0 -2
  330. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/dnd/browser/dnd.js +0 -36
  331. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/editor/common/editor.js +0 -17
  332. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/environment/common/environment.js +0 -2
  333. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/extensions/common/extensions.js +0 -47
  334. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/files/common/files.js +0 -9
  335. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +0 -105
  336. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/instantiation/common/descriptors.js +0 -11
  337. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/instantiation/common/extensions.js +0 -15
  338. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/keybinding/common/abstractKeybindingService.js +0 -277
  339. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/keybinding/common/baseResolvedKeybinding.js +0 -53
  340. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +0 -354
  341. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/theme/browser/defaultStyles.js +0 -162
  342. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/theme/common/colorRegistry.js +0 -482
  343. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/abap/abap.js +0 -10
  344. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/apex/apex.js +0 -10
  345. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/azcli/azcli.js +0 -10
  346. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/bat/bat.js +0 -10
  347. package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/bicep/bicep.js +0 -11
@@ -1,167 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Post-build script to fix .js extensions in ES module imports
4
- *
5
- * SWC strips .js extensions from imports during compilation,
6
- * which breaks ES modules that require explicit extensions.
7
- *
8
- * This script adds .js extensions to relative imports in the compiled output.
9
- */
10
-
11
- import fs from 'fs/promises';
12
- import path from 'path';
13
- import { fileURLToPath } from 'url';
14
-
15
- const __filename = fileURLToPath(import.meta.url);
16
- const __dirname = path.dirname(__filename);
17
-
18
- const DIST_DIR = path.join(__dirname, '..', 'dist');
19
-
20
- // Patterns to match and fix relative imports without .js extension
21
- const IMPORT_PATTERNS = [
22
- // import { x } from './module/index.js' or from "./module/index.js" (also handles directory imports like './commands')
23
- {
24
- pattern: /from\s+(['"])(\.\.[\/\\][^'"\s]+|\.\/[^'"\s]+)(['"])/g,
25
- type: 'from',
26
- },
27
- // import './module/index.js' or import "./module/index.js"
28
- {
29
- pattern: /import\s+(['"])(\.\.[\/\\][^'"\s]+|\.\/[^'"\s]+)(['"])/g,
30
- type: 'import',
31
- },
32
- // export { x } from './module/index.js' or from "./module/index.js"
33
- {
34
- pattern: /export\s+{[^}]*}\s+from\s+(['"])(\.\.[\/\\][^'"\s]+|\.\/[^'"\s]+)(['"])/g,
35
- type: 'export-from',
36
- },
37
- // export * from './module/index.js' or from "./module/index.js"
38
- {
39
- pattern: /export\s+\*\s+from\s+(['"])(\.\.[\/\\][^'"\s]+|\.\/[^'"\s]+)(['"])/g,
40
- type: 'export-star',
41
- },
42
- ];
43
-
44
- async function fixFileExtensions(filePath) {
45
- try {
46
- let content = await fs.readFile(filePath, 'utf8');
47
- let modified = false;
48
-
49
- for (const { pattern, type } of IMPORT_PATTERNS) {
50
- content = content.replace(pattern, (match, quote1, modulePath, quote2) => {
51
- // Skip if already has .js extension
52
- if (modulePath.endsWith('.js')) {
53
- return match;
54
- }
55
-
56
- // If it's a .ts extension in a .js file, change to .js
57
- if (modulePath.endsWith('.ts')) {
58
- const fixedModulePath = modulePath.replace('.ts', '.js');
59
- const fixed = match.replace(modulePath, fixedModulePath);
60
- modified = true;
61
- return fixed;
62
- }
63
-
64
- // Skip if it's a JSON or other file type
65
- if (modulePath.match(/\.(json|css|svg|png|jpg|jpeg|gif|wasm)$/)) {
66
- return match;
67
- }
68
-
69
- // For directory imports like './commands', add '/index.js'
70
- // For file imports like './module', add '.js'
71
- let fixedModulePath;
72
-
73
- // Check if this looks like a directory import (no file extension and no dots in last segment)
74
- const lastSegment = modulePath.split('/').pop();
75
- const looksLikeDirectory = !lastSegment.includes('.');
76
-
77
- if (looksLikeDirectory && !modulePath.endsWith('/index')) {
78
- // Directory import: './commands' → './commands/index.js'
79
- fixedModulePath = modulePath + '/index.js';
80
- } else {
81
- // File import: './module' → './module.js'
82
- fixedModulePath = modulePath + '.js';
83
- }
84
-
85
- const fixed = match.replace(modulePath, fixedModulePath);
86
- modified = true;
87
- return fixed;
88
- });
89
- }
90
-
91
- if (modified) {
92
- await fs.writeFile(filePath, content, 'utf8');
93
- return true;
94
- }
95
-
96
- return false;
97
- } catch (error) {
98
- console.error(`Error processing ${filePath}:`, error.message);
99
- return false;
100
- }
101
- }
102
-
103
- async function processDirectory(dir) {
104
- let fixedCount = 0;
105
- let totalFiles = 0;
106
-
107
- try {
108
- const entries = await fs.readdir(dir, { withFileTypes: true });
109
-
110
- for (const entry of entries) {
111
- // Skip node_modules directories
112
- if (entry.isDirectory() && entry.name === 'node_modules') {
113
- continue;
114
- }
115
-
116
- const fullPath = path.join(dir, entry.name);
117
-
118
- if (entry.isDirectory()) {
119
- // Recursively process subdirectories
120
- const result = await processDirectory(fullPath);
121
- fixedCount += result.fixedCount;
122
- totalFiles += result.totalFiles;
123
- } else if (entry.isFile() && entry.name.endsWith('.js')) {
124
- totalFiles++;
125
- const wasFixed = await fixFileExtensions(fullPath);
126
- if (wasFixed) {
127
- fixedCount++;
128
- console.log(`✓ Fixed: ${path.relative(DIST_DIR, fullPath)}`);
129
- }
130
- }
131
- }
132
- } catch (error) {
133
- console.error(`Error processing directory ${dir}:`, error.message);
134
- }
135
-
136
- return { fixedCount, totalFiles };
137
- }
138
-
139
- async function main() {
140
- console.log('🔧 Fixing .js extensions in compiled output...\n');
141
-
142
- try {
143
- // Check if dist directory exists
144
- await fs.access(DIST_DIR);
145
- } catch {
146
- console.error(`❌ Distribution directory not found: ${DIST_DIR}`);
147
- process.exit(1);
148
- }
149
-
150
- const { fixedCount, totalFiles } = await processDirectory(DIST_DIR);
151
-
152
- console.log(`\n📊 Summary:`);
153
- console.log(` Total files processed: ${totalFiles}`);
154
- console.log(` Files fixed: ${fixedCount}`);
155
- console.log(` Files unchanged: ${totalFiles - fixedCount}`);
156
-
157
- if (fixedCount > 0) {
158
- console.log(`\n✅ Successfully fixed ${fixedCount} file(s)`);
159
- } else {
160
- console.log('\n✅ All files already have correct extensions');
161
- }
162
- }
163
-
164
- main().catch((error) => {
165
- console.error('❌ Fatal error:', error);
166
- process.exit(1);
167
- });
@@ -1,73 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * Generate basic type declarations when TypeScript compiler fails
5
- */
6
-
7
- import fs from 'fs';
8
- import path from 'path';
9
- import { fileURLToPath } from 'url';
10
-
11
- const __filename = fileURLToPath(import.meta.url);
12
- const __dirname = path.dirname(__filename);
13
-
14
- const projectRoot = path.resolve(__dirname, '..');
15
- const typesDir = path.join(projectRoot, '.claude-flow-novice/dist');
16
-
17
- // Create basic index.d.ts
18
- const indexDts = `/**
19
- * Claude Flow Novice - Type Declarations
20
- */
21
-
22
- export interface AgentConfig {
23
- id: string;
24
- name: string;
25
- type: string;
26
- capabilities?: string[];
27
- }
28
-
29
- export interface SwarmConfig {
30
- maxAgents?: number;
31
- strategy?: string;
32
- mode?: string;
33
- persistence?: boolean;
34
- }
35
-
36
- export declare class AgentManager {
37
- constructor(config?: SwarmConfig);
38
- spawnAgent(config: AgentConfig): Promise<string>;
39
- destroyAgent(id: string): Promise<void>;
40
- listAgents(): string[];
41
- }
42
-
43
- export declare class SimpleAgent {
44
- constructor(config: AgentConfig);
45
- execute(task: string): Promise<any>;
46
- }
47
-
48
- export declare const AgentType: {
49
- CODER: string;
50
- TESTER: string;
51
- REVIEWER: string;
52
- PLANNER: string;
53
- };
54
-
55
- export declare class ProjectManager {
56
- createProject(name: string): Promise<void>;
57
- loadProject(name: string): Promise<void>;
58
- saveProject(): Promise<void>;
59
- }
60
-
61
- export { default as cli } from './src/cli/main.js';
62
- export { default as mcpServer } from './mcp/mcp-server-sdk.js';
63
- `;
64
-
65
- // Ensure types directory exists
66
- if (!fs.existsSync(typesDir)) {
67
- fs.mkdirSync(typesDir, { recursive: true });
68
- }
69
-
70
- // Write type declarations
71
- fs.writeFileSync(path.join(typesDir, 'index.d.ts'), indexDts);
72
-
73
- console.log('✅ Created basic type declarations');
@@ -1,318 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * Automated Changelog Generator
5
- * Generates changelog entries based on git commit history and conventional commits
6
- */
7
-
8
- import { execSync } from 'child_process';
9
- import fs from 'fs';
10
- import path from 'path';
11
- import { fileURLToPath } from 'url';
12
-
13
- const __filename = fileURLToPath(import.meta.url);
14
- const __dirname = path.dirname(__filename);
15
- const rootDir = path.join(__dirname, '..');
16
-
17
- const packageJson = JSON.parse(fs.readFileSync(path.join(rootDir, 'package.json'), 'utf8'));
18
- const currentVersion = packageJson.version;
19
-
20
- class ChangelogGenerator {
21
- constructor() {
22
- this.changelogPath = path.join(rootDir, 'CHANGELOG.md');
23
- this.changelog = this.loadExistingChangelog();
24
- this.categories = {
25
- feat: 'Features',
26
- fix: 'Bug Fixes',
27
- docs: 'Documentation',
28
- style: 'Style Changes',
29
- refactor: 'Code Refactoring',
30
- perf: 'Performance Improvements',
31
- test: 'Testing',
32
- build: 'Build System',
33
- ci: 'Continuous Integration',
34
- chore: 'Chores',
35
- deps: 'Dependencies',
36
- security: 'Security',
37
- breaking: 'Breaking Changes'
38
- };
39
- }
40
-
41
- loadExistingChangelog() {
42
- try {
43
- if (fs.existsSync(this.changelogPath)) {
44
- const content = fs.readFileSync(this.changelogPath, 'utf8');
45
- const sections = content.split('\n## ');
46
- return {
47
- header: sections[0] || '',
48
- releases: sections.slice(1).map(section => {
49
- const lines = section.split('\n');
50
- const versionLine = lines[0];
51
- const version = versionLine.match(/\[(\d+\.\d+\.\d+(?:-[a-zA-Z0-9.]+)?)\]/)?.[1];
52
- const date = versionLine.match(/\((\d{4}-\d{2}-\d{2})\)/)?.[1];
53
-
54
- return {
55
- version,
56
- date,
57
- content: lines.slice(1).join('\n').trim()
58
- };
59
- })
60
- };
61
- }
62
- } catch (error) {
63
- console.warn('Warning: Could not load existing changelog:', error.message);
64
- }
65
-
66
- return {
67
- header: '# Changelog\n\nAll notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\n',
68
- releases: []
69
- };
70
- }
71
-
72
- getGitHistory(sinceVersion) {
73
- try {
74
- const lastTag = this.getLastTag();
75
- let range = 'HEAD';
76
-
77
- if (sinceVersion && lastTag) {
78
- range = `${lastTag}..HEAD`;
79
- } else if (lastTag) {
80
- range = `${lastTag}..HEAD`;
81
- }
82
-
83
- const gitLog = execSync(
84
- `git log ${range} --pretty=format:"%H|%s|%b|%an|%ad" --date=short`,
85
- { encoding: 'utf8', cwd: rootDir }
86
- );
87
-
88
- return gitLog.trim().split('\n').map(line => {
89
- const [hash, subject, body, author, date] = line.split('|');
90
- return { hash, subject, body, author, date };
91
- });
92
- } catch (error) {
93
- console.warn('Warning: Could not get git history:', error.message);
94
- return [];
95
- }
96
- }
97
-
98
- getLastTag() {
99
- try {
100
- return execSync('git describe --tags --abbrev=0', { encoding: 'utf8', cwd: rootDir }).trim();
101
- } catch (error) {
102
- return null;
103
- }
104
- }
105
-
106
- parseCommit(commit) {
107
- const { subject, body, hash } = commit;
108
-
109
- // Parse conventional commit format
110
- const conventionalMatch = subject.match(/^(\w+)(\(.+\))?:\s*(.+)$/);
111
- if (!conventionalMatch) {
112
- return { type: 'chore', description: subject, breaking: false };
113
- }
114
-
115
- const [, type, scope, description] = conventionalMatch;
116
- const breaking = subject.includes('BREAKING CHANGE:') ||
117
- (body && body.includes('BREAKING CHANGE:'));
118
-
119
- return {
120
- type: type.toLowerCase(),
121
- scope: scope ? scope.replace(/[()]/g, '') : null,
122
- description,
123
- breaking,
124
- body,
125
- hash: hash.substring(0, 7)
126
- };
127
- }
128
-
129
- categorizeCommits(commits) {
130
- const categorized = {};
131
-
132
- commits.forEach(commit => {
133
- const parsed = this.parseCommit(commit);
134
- let category = this.categories[parsed.type] || this.categories.chore;
135
-
136
- if (parsed.breaking) {
137
- category = this.categories.breaking;
138
- }
139
-
140
- if (!categorized[category]) {
141
- categorized[category] = [];
142
- }
143
-
144
- categorized[category].push(parsed);
145
- });
146
-
147
- return categorized;
148
- }
149
-
150
- formatReleaseEntry(version, date, categorizedCommits) {
151
- let entry = `## [${version}] - ${date}\n\n`;
152
-
153
- const order = [
154
- 'Breaking Changes',
155
- 'Features',
156
- 'Bug Fixes',
157
- 'Security',
158
- 'Performance Improvements',
159
- 'Documentation',
160
- 'Code Refactoring',
161
- 'Testing',
162
- 'Build System',
163
- 'Continuous Integration',
164
- 'Dependencies',
165
- 'Style Changes',
166
- 'Chores'
167
- ];
168
-
169
- order.forEach(categoryName => {
170
- const commits = categorizedCommits[categoryName];
171
- if (commits && commits.length > 0) {
172
- entry += `### ${categoryName}\n\n`;
173
-
174
- commits.forEach(commit => {
175
- let line = `- ${commit.description}`;
176
-
177
- if (commit.scope) {
178
- line = `- **${commit.scope}:** ${commit.description}`;
179
- }
180
-
181
- if (commit.breaking) {
182
- line = `**${line}**`;
183
- }
184
-
185
- if (commit.hash) {
186
- line += ` (${commit.hash})`;
187
- }
188
-
189
- entry += line + '\n';
190
-
191
- // Add breaking change details
192
- if (commit.body && commit.body.includes('BREAKING CHANGE:')) {
193
- const breakingMatch = commit.body.match(/BREAKING CHANGE:\s*(.+)/s);
194
- if (breakingMatch) {
195
- entry += ` - Breaking change details: ${breakingMatch[1].trim()}\n`;
196
- }
197
- }
198
- });
199
-
200
- entry += '\n';
201
- }
202
- });
203
-
204
- return entry;
205
- }
206
-
207
- updateChangelog(newVersion, date = new Date().toISOString().split('T')[0]) {
208
- const commits = this.getGitHistory();
209
- const categorizedCommits = this.categorizeCommits(commits);
210
-
211
- if (Object.keys(categorizedCommits).length === 0) {
212
- console.log('No commits found to add to changelog');
213
- return;
214
- }
215
-
216
- const newEntry = this.formatReleaseEntry(newVersion, date, categorizedCommits);
217
-
218
- // Update changelog structure
219
- const newRelease = {
220
- version: newVersion,
221
- date,
222
- content: newEntry.replace(/^## \[.+\] - .+\n\n/, '')
223
- };
224
-
225
- // Insert new release at the beginning
226
- this.changelog.releases.unshift(newRelease);
227
-
228
- // Write updated changelog
229
- let content = this.changelog.header;
230
- this.changelog.releases.forEach(release => {
231
- content += `## [${release.version}] - ${release.date}\n\n`;
232
- content += release.content + '\n';
233
- });
234
-
235
- fs.writeFileSync(this.changelogPath, content, 'utf8');
236
- console.log(`✅ Changelog updated for version ${newVersion}`);
237
-
238
- // Show summary
239
- Object.entries(categorizedCommits).forEach(([category, commits]) => {
240
- console.log(` ${category}: ${commits.length} commits`);
241
- });
242
- }
243
-
244
- validateChangelog() {
245
- try {
246
- const content = fs.readFileSync(this.changelogPath, 'utf8');
247
-
248
- // Check for required sections
249
- if (!content.includes('# Changelog')) {
250
- throw new Error('Changelog must have a header');
251
- }
252
-
253
- if (!content.includes('## [')) {
254
- throw new Error('Changelog must have at least one release section');
255
- }
256
-
257
- // Check for proper format
258
- const releaseSections = content.match(/## \[([^\]]+)\] - (\d{4}-\d{2}-\d{2})/g);
259
- if (!releaseSections) {
260
- throw new Error('Release sections must follow format: ## [version] - YYYY-MM-DD');
261
- }
262
-
263
- console.log('✅ Changelog validation passed');
264
- return true;
265
- } catch (error) {
266
- console.error('❌ Changelog validation failed:', error.message);
267
- return false;
268
- }
269
- }
270
- }
271
-
272
- // CLI Interface
273
- function main() {
274
- const args = process.argv.slice(2);
275
- const command = args[0] || 'update';
276
-
277
- const generator = new ChangelogGenerator();
278
-
279
- switch (command) {
280
- case 'update':
281
- const version = args[1] || currentVersion;
282
- const date = args[2] || new Date().toISOString().split('T')[0];
283
- generator.updateChangelog(version, date);
284
- break;
285
-
286
- case 'validate':
287
- generator.validateChangelog();
288
- break;
289
-
290
- case 'init':
291
- // Initialize changelog if it doesn't exist
292
- if (!fs.existsSync(generator.changelogPath)) {
293
- fs.writeFileSync(generator.changelogPath, generator.changelog.header, 'utf8');
294
- console.log('✅ Changelog initialized');
295
- } else {
296
- console.log('Changelog already exists');
297
- }
298
- break;
299
-
300
- default:
301
- console.log(`
302
- Usage: node generate-changelog.js [command] [options]
303
-
304
- Commands:
305
- update [version] [date] Update changelog with new version (default: current package version)
306
- validate Validate changelog format and content
307
- init Initialize changelog file
308
-
309
- Examples:
310
- node generate-changelog.js update
311
- node generate-changelog.js update 1.2.3 2024-01-15
312
- node generate-changelog.js validate
313
- node generate-changelog.js init
314
- `);
315
- }
316
- }
317
-
318
- main();
@@ -1,143 +0,0 @@
1
- #!/bin/bash
2
- # Pre-commit hook for Claude Flow Novice
3
- # Runs validation checks before allowing commits
4
-
5
- set -e
6
-
7
- echo "🔍 Running pre-commit validation..."
8
- echo "======================================"
9
-
10
- # Colors for output
11
- RED='\033[0;31m'
12
- GREEN='\033[0;32m'
13
- YELLOW='\033[1;33m'
14
- NC='\033[0m' # No Color
15
-
16
- # Get staged files
17
- STAGED_FILES=$(git diff --cached --name-only --diff-filter=ACMR)
18
-
19
- if [ -z "$STAGED_FILES" ]; then
20
- echo -e "${YELLOW}⚠️ No files staged for commit${NC}"
21
- exit 0
22
- fi
23
-
24
- # Check if npm is available
25
- if ! command -v npm &> /dev/null; then
26
- echo -e "${RED}❌ npm not found${NC}"
27
- exit 1
28
- fi
29
-
30
- # Run security scan on staged files
31
- echo ""
32
- echo "🔒 Security Scan..."
33
- if npm run security:check --silent; then
34
- echo -e "${GREEN}✅ Security check passed${NC}"
35
- else
36
- echo -e "${RED}❌ Security issues found${NC}"
37
- exit 1
38
- fi
39
-
40
- # Run linting on staged JS/TS files
41
- STAGED_JS_FILES=$(echo "$STAGED_FILES" | grep -E '\.(js|ts|jsx|tsx)$' || true)
42
-
43
- if [ -n "$STAGED_JS_FILES" ]; then
44
- echo ""
45
- echo "📝 Linting staged files..."
46
-
47
- if npm run lint --silent; then
48
- echo -e "${GREEN}✅ Linting passed${NC}"
49
- else
50
- echo -e "${YELLOW}⚠️ Linting issues found (not blocking)${NC}"
51
- fi
52
- fi
53
-
54
- # Check for hardcoded secrets in staged files
55
- echo ""
56
- echo "🔐 Checking for hardcoded secrets..."
57
- SECRETS_FOUND=0
58
-
59
- # Patterns to check for secrets
60
- declare -a SECRET_PATTERNS=(
61
- "api[_-]?key\s*[:=]\s*['\"][a-zA-Z0-9]{20,}['\"]"
62
- "password\s*[:=]\s*['\"][^'\"]{8,}['\"]"
63
- "secret[_-]?token\s*[:=]\s*['\"][a-zA-Z0-9]{20,}['\"]"
64
- "-----BEGIN (RSA )?PRIVATE KEY-----"
65
- "AKIA[0-9A-Z]{16}"
66
- )
67
-
68
- for file in $STAGED_FILES; do
69
- if [ -f "$file" ]; then
70
- for pattern in "${SECRET_PATTERNS[@]}"; do
71
- if grep -qE "$pattern" "$file" 2>/dev/null; then
72
- echo -e "${RED}❌ Potential secret found in: $file${NC}"
73
- SECRETS_FOUND=1
74
- fi
75
- done
76
- fi
77
- done
78
-
79
- if [ $SECRETS_FOUND -eq 1 ]; then
80
- echo -e "${RED}❌ Commit blocked: Remove hardcoded secrets${NC}"
81
- exit 1
82
- fi
83
-
84
- echo -e "${GREEN}✅ No secrets found${NC}"
85
-
86
- # Check for large files (>1MB)
87
- echo ""
88
- echo "📦 Checking file sizes..."
89
- LARGE_FILES=0
90
-
91
- for file in $STAGED_FILES; do
92
- if [ -f "$file" ]; then
93
- FILE_SIZE=$(stat -c%s "$file" 2>/dev/null || stat -f%z "$file" 2>/dev/null || echo 0)
94
- if [ $FILE_SIZE -gt 1048576 ]; then
95
- echo -e "${YELLOW}⚠️ Large file detected: $file ($(($FILE_SIZE / 1024))KB)${NC}"
96
- LARGE_FILES=1
97
- fi
98
- fi
99
- done
100
-
101
- if [ $LARGE_FILES -eq 1 ]; then
102
- echo -e "${YELLOW}⚠️ Consider using Git LFS for large files${NC}"
103
- fi
104
-
105
- # Check for package.json changes
106
- if echo "$STAGED_FILES" | grep -q "package.json"; then
107
- echo ""
108
- echo "📦 package.json changed - validating..."
109
-
110
- if node -e "JSON.parse(require('fs').readFileSync('package.json', 'utf8'))" 2>/dev/null; then
111
- echo -e "${GREEN}✅ package.json is valid JSON${NC}"
112
- else
113
- echo -e "${RED}❌ package.json is invalid${NC}"
114
- exit 1
115
- fi
116
-
117
- # Check if package-lock.json should be updated
118
- if [ -f "package-lock.json" ] && ! echo "$STAGED_FILES" | grep -q "package-lock.json"; then
119
- echo -e "${YELLOW}⚠️ package.json changed but package-lock.json not staged${NC}"
120
- echo -e "${YELLOW} Consider running: npm install && git add package-lock.json${NC}"
121
- fi
122
- fi
123
-
124
- # Check for CLAUDE.md changes
125
- if echo "$STAGED_FILES" | grep -q "CLAUDE.md"; then
126
- echo ""
127
- echo "📋 CLAUDE.md changed - validating format..."
128
-
129
- if grep -q "## 1) Critical Rules" "CLAUDE.md" && grep -q "## 2) When Agents Are Mandatory" "CLAUDE.md"; then
130
- echo -e "${GREEN}✅ CLAUDE.md format valid${NC}"
131
- else
132
- echo -e "${RED}❌ CLAUDE.md appears to be malformed${NC}"
133
- exit 1
134
- fi
135
- fi
136
-
137
- # Final summary
138
- echo ""
139
- echo "======================================"
140
- echo -e "${GREEN}✅ Pre-commit validation passed${NC}"
141
- echo "======================================"
142
-
143
- exit 0