claude-flow-novice 2.9.0 → 2.10.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 (353) hide show
  1. package/.claude/agents/cfn-dev-team/CLAUDE.md +1086 -0
  2. package/.claude/agents/cfn-dev-team/README.md +116 -0
  3. package/.claude/agents/cfn-dev-team/architecture/api-designer-persona.md +149 -0
  4. package/.claude/agents/cfn-dev-team/architecture/base-template-generator.md +196 -0
  5. package/.claude/agents/cfn-dev-team/architecture/goal-planner.md +183 -0
  6. package/.claude/agents/cfn-dev-team/architecture/planner.md +182 -0
  7. package/.claude/agents/cfn-dev-team/architecture/system-architect.md +162 -0
  8. package/.claude/agents/cfn-dev-team/coordinators/cfn-frontend-coordinator.md +540 -0
  9. package/.claude/agents/cfn-dev-team/coordinators/cfn-v3-coordinator.md +20 -14
  10. package/.claude/agents/cfn-dev-team/coordinators/consensus-builder.md +167 -0
  11. package/.claude/agents/cfn-dev-team/dev-ops/devops-engineer.md +148 -0
  12. package/.claude/agents/cfn-dev-team/dev-ops/github-commit-agent.md +118 -0
  13. package/.claude/agents/cfn-dev-team/dev-ops/kubernetes-specialist.md +540 -0
  14. package/.claude/agents/cfn-dev-team/developers/backend-dev.md +20 -0
  15. package/.claude/agents/cfn-dev-team/developers/data/data-engineer.md +585 -0
  16. package/.claude/agents/cfn-dev-team/developers/database/database-architect.md +276 -0
  17. package/.claude/agents/cfn-dev-team/developers/dev-backend-api.md +147 -0
  18. package/.claude/agents/cfn-dev-team/developers/frontend/mobile-dev.md +218 -0
  19. package/.claude/agents/cfn-dev-team/developers/{react-frontend-engineer.md → frontend/react-frontend-engineer.md} +53 -5
  20. package/.claude/agents/cfn-dev-team/developers/frontend/spec-mobile-react-native.md +199 -0
  21. package/.claude/agents/cfn-dev-team/developers/graphql-specialist.md +615 -0
  22. package/.claude/agents/cfn-dev-team/developers/rust-developer.md +174 -0
  23. package/.claude/agents/cfn-dev-team/documentation/README-VALIDATION.md +243 -0
  24. package/.claude/agents/cfn-dev-team/documentation/agent-type-guidelines.md +465 -0
  25. package/.claude/agents/cfn-dev-team/documentation/api-docs.md +103 -0
  26. package/.claude/agents/cfn-dev-team/documentation/docs-api-openapi.md +98 -0
  27. package/.claude/agents/cfn-dev-team/documentation/pseudocode.md +159 -0
  28. package/.claude/agents/cfn-dev-team/documentation/specification.md +157 -0
  29. package/.claude/agents/cfn-dev-team/product-owners/accessibility-advocate-persona.md +109 -0
  30. package/.claude/agents/cfn-dev-team/{coordinators → product-owners}/cto-agent.md +8 -6
  31. package/.claude/agents/cfn-dev-team/product-owners/power-user-persona.md +190 -0
  32. package/.claude/agents/cfn-dev-team/{coordinators → product-owners}/product-owner.md +85 -59
  33. package/.claude/agents/cfn-dev-team/reviewers/quality/analyze-code-quality.md +141 -0
  34. package/.claude/agents/cfn-dev-team/reviewers/quality/code-analyzer.md +200 -0
  35. package/.claude/agents/cfn-dev-team/reviewers/quality/cyclomatic-complexity-reducer.md +321 -0
  36. package/.claude/agents/cfn-dev-team/reviewers/quality/perf-analyzer.md +238 -0
  37. package/.claude/agents/cfn-dev-team/reviewers/quality/performance-benchmarker.md +101 -0
  38. package/.claude/agents/cfn-dev-team/reviewers/quality/quality-metrics.md +375 -0
  39. package/.claude/agents/cfn-dev-team/reviewers/quality/security-specialist.md +193 -0
  40. package/.claude/agents/cfn-dev-team/reviewers/reviewer.md +39 -0
  41. package/.claude/agents/cfn-dev-team/testers/interaction-tester.md +31 -0
  42. package/.claude/agents/cfn-dev-team/testers/load-testing-specialist.md +469 -0
  43. package/.claude/agents/cfn-dev-team/testers/playwright-tester.md +24 -0
  44. package/.claude/agents/cfn-dev-team/testers/tester.md +20 -0
  45. package/.claude/agents/cfn-dev-team/utility/agent-builder.md +151 -0
  46. package/.claude/agents/cfn-dev-team/utility/analyst.md +178 -0
  47. package/.claude/agents/cfn-dev-team/utility/claude-code-expert.md +1043 -0
  48. package/.claude/agents/cfn-dev-team/utility/code-booster.md +139 -0
  49. package/.claude/agents/cfn-dev-team/utility/context-curator.md +99 -0
  50. package/.claude/agents/cfn-dev-team/{developers → utility}/researcher.md +6 -4
  51. package/.claude/commands/cfn/CFN_LOOP_FRONTEND.md +741 -0
  52. package/.claude/commands/cfn/CFN_LOOP_TASK_MODE.md +353 -0
  53. package/.claude/commands/cfn/cfn-loop-frontend.md +555 -0
  54. package/.claude/commands/cfn/cfn-loop.md +168 -7
  55. package/{CFN-CLAUDE.md → .claude/root-claude-distribute/CFN-CLAUDE.md} +23 -3
  56. package/.claude/skills/cfn-ace-system/SKILL.md +364 -0
  57. package/.claude/skills/cfn-ace-system/add-bullet.sh +145 -0
  58. package/.claude/skills/cfn-ace-system/analyze-anti-pattern-effectiveness.sh +56 -0
  59. package/.claude/skills/cfn-ace-system/classify-task.sh +18 -0
  60. package/.claude/skills/cfn-ace-system/export-ace-metrics.sh +48 -0
  61. package/.claude/skills/cfn-ace-system/extract-tags.sh +385 -0
  62. package/.claude/skills/cfn-ace-system/format-negative-context.sh +180 -0
  63. package/.claude/skills/cfn-ace-system/init-indexes.sql +160 -0
  64. package/.claude/skills/cfn-ace-system/invoke-context-curate.sh +192 -0
  65. package/.claude/skills/cfn-ace-system/invoke-context-inject.sh +361 -0
  66. package/.claude/skills/cfn-ace-system/invoke-context-query.sh +139 -0
  67. package/.claude/skills/cfn-ace-system/invoke-context-reflect.sh +343 -0
  68. package/.claude/skills/cfn-ace-system/invoke-context-stats.sh +227 -0
  69. package/.claude/skills/cfn-ace-system/log-merge.sh +67 -0
  70. package/.claude/skills/cfn-ace-system/monitor-injection-performance.sh +138 -0
  71. package/.claude/skills/cfn-ace-system/optimize-injection-pipeline.sh +169 -0
  72. package/.claude/skills/cfn-ace-system/query-anti-patterns.sh +276 -0
  73. package/.claude/skills/cfn-ace-system/query-contexts.sh +150 -0
  74. package/.claude/skills/cfn-ace-system/query-reflections.sh +35 -0
  75. package/.claude/skills/cfn-ace-system/schema/001-create-context-reflections.sql +237 -0
  76. package/.claude/skills/cfn-ace-system/schema/README.md +723 -0
  77. package/.claude/skills/cfn-ace-system/schema/SCHEMA_DESIGN_SUMMARY.md +564 -0
  78. package/.claude/skills/cfn-ace-system/schema/populate-test-data-simple.sh +62 -0
  79. package/.claude/skills/cfn-ace-system/schema/populate-test-data.sh +247 -0
  80. package/.claude/skills/cfn-ace-system/schema/run-migration.sh +231 -0
  81. package/.claude/skills/cfn-ace-system/schema/validate-schema.sql +280 -0
  82. package/.claude/skills/cfn-ace-system/score-relevance-adapter.sh +138 -0
  83. package/.claude/skills/cfn-ace-system/score-relevance.sh +253 -0
  84. package/.claude/skills/cfn-ace-system/sprint-7-lessons.json +46 -0
  85. package/.claude/skills/cfn-ace-system/store-reflection.sh +46 -0
  86. package/.claude/skills/cfn-ace-system/test-ace-skill.sh +312 -0
  87. package/.claude/skills/cfn-ace-system/track-ab-test.sh +42 -0
  88. package/.claude/skills/cfn-ace-system/update-reflection.sh +41 -0
  89. package/.claude/skills/cfn-agent-discovery/SKILL.md +40 -0
  90. package/.claude/skills/cfn-agent-discovery/agents-registry-clean.json +0 -0
  91. package/.claude/skills/cfn-agent-discovery/agents-registry-fixed.json +19 -0
  92. package/.claude/skills/cfn-agent-discovery/agents-registry.json +718 -0
  93. package/.claude/skills/cfn-agent-discovery/discover-agents.py +184 -0
  94. package/.claude/skills/cfn-agent-discovery/discover-agents.sh +87 -0
  95. package/.claude/skills/cfn-agent-discovery/invoke-registry.sh +11 -0
  96. package/.claude/skills/cfn-agent-discovery/temp_script.py +0 -0
  97. package/.claude/skills/cfn-agent-execution/execute-agent.sh +126 -0
  98. package/.claude/skills/cfn-agent-output-processing/SKILL.md +359 -0
  99. package/.claude/skills/cfn-agent-selector/SKILL.md +90 -0
  100. package/.claude/skills/cfn-agent-selector/select-agents.sh +112 -0
  101. package/.claude/skills/cfn-agent-spawning/SKILL.md +135 -0
  102. package/.claude/skills/cfn-agent-spawning/agent-selection-guide.md +814 -0
  103. package/.claude/skills/cfn-agent-spawning/check-dependencies.sh +30 -0
  104. package/.claude/skills/cfn-agent-spawning/spawn-agent.sh +263 -0
  105. package/.claude/skills/cfn-agent-spawning/spawn-templates.sh +613 -0
  106. package/.claude/skills/cfn-analytics/description-refinement-guide.md +164 -0
  107. package/.claude/skills/cfn-analytics/log-skill-invocation.js +122 -0
  108. package/.claude/skills/cfn-analytics/run-production-criteria-tests.sh +126 -0
  109. package/.claude/skills/cfn-analytics/skill-analytics-dashboard.js +113 -0
  110. package/.claude/skills/cfn-analytics/skill-invocation-hook.sh +28 -0
  111. package/.claude/skills/cfn-analytics/skill-invocations.sql +58 -0
  112. package/.claude/skills/cfn-analytics/test-corpus.json +32 -0
  113. package/.claude/skills/cfn-analytics/test-data-generator.js +115 -0
  114. package/.claude/skills/cfn-analytics/test-manual-override-rate.js +285 -0
  115. package/.claude/skills/cfn-analytics/validate-skill-selection.js +188 -0
  116. package/.claude/skills/cfn-config-management/SKILL.md +34 -0
  117. package/.claude/skills/cfn-config-management/check-dependencies.sh +56 -0
  118. package/.claude/skills/cfn-config-management/config.json +32 -0
  119. package/.claude/skills/cfn-config-management/manage-config.sh +113 -0
  120. package/.claude/skills/cfn-event-bus/SKILL.md +412 -0
  121. package/.claude/skills/cfn-event-bus/config.json +111 -0
  122. package/.claude/skills/cfn-event-bus/eventbus-wrapper.cjs +69 -0
  123. package/.claude/skills/cfn-event-bus/invoke-event-publish.sh +147 -0
  124. package/.claude/skills/cfn-event-bus/invoke-event-subscribe.sh +171 -0
  125. package/.claude/skills/cfn-event-bus/invoke-lifecycle-track.sh +201 -0
  126. package/.claude/skills/cfn-event-bus/test-event-bus.sh +280 -0
  127. package/.claude/skills/cfn-fleet-manager/SKILL.md +412 -0
  128. package/.claude/skills/cfn-fleet-manager/config.json +60 -0
  129. package/.claude/skills/cfn-fleet-manager/invoke-fleet-allocate.sh +182 -0
  130. package/.claude/skills/cfn-fleet-manager/invoke-fleet-balance.sh +239 -0
  131. package/.claude/skills/cfn-fleet-manager/invoke-fleet-metrics.sh +193 -0
  132. package/.claude/skills/cfn-fleet-manager/invoke-fleet-register.sh +124 -0
  133. package/.claude/skills/cfn-fleet-manager/test-fleet-manager.sh +345 -0
  134. package/.claude/skills/cfn-hook-pipeline/SKILL.md +148 -0
  135. package/.claude/skills/cfn-hook-pipeline/auto-resolve.sh +66 -0
  136. package/.claude/skills/cfn-hook-pipeline/check-dependencies.sh +40 -0
  137. package/.claude/skills/cfn-hook-pipeline/feedback-resolver.sh +452 -0
  138. package/.claude/skills/cfn-hook-pipeline/post-edit-handler.sh +154 -0
  139. package/.claude/skills/cfn-hook-pipeline/security-scan.json +60 -0
  140. package/.claude/skills/cfn-hook-pipeline/security-scanner.sh +121 -0
  141. package/.claude/skills/cfn-hook-pipeline/test-root-warning-resolution.sh +148 -0
  142. package/.claude/skills/cfn-hybrid-routing/SKILL.md +46 -0
  143. package/.claude/skills/cfn-hybrid-routing/check-dependencies.sh +52 -0
  144. package/.claude/skills/cfn-hybrid-routing/config.json +26 -0
  145. package/.claude/skills/cfn-hybrid-routing/spawn-worker.sh +44 -0
  146. package/.claude/skills/cfn-loop-orchestration/SKILL.md +299 -0
  147. package/.claude/skills/cfn-loop-orchestration/helpers/auto-tune-timeouts.sh +228 -0
  148. package/.claude/skills/cfn-loop-orchestration/helpers/consensus.sh +84 -0
  149. package/.claude/skills/cfn-loop-orchestration/helpers/context-injection.sh +142 -0
  150. package/.claude/skills/cfn-loop-orchestration/helpers/context-lookup.sh +359 -0
  151. package/.claude/skills/cfn-loop-orchestration/helpers/deliverable-verifier.sh +71 -0
  152. package/.claude/skills/cfn-loop-orchestration/helpers/gate-check.sh +90 -0
  153. package/.claude/skills/cfn-loop-orchestration/helpers/iteration-manager.sh +87 -0
  154. package/.claude/skills/cfn-loop-orchestration/helpers/spawn-agents.sh +271 -0
  155. package/.claude/skills/cfn-loop-orchestration/helpers/timeout-calculator.sh +51 -0
  156. package/.claude/skills/cfn-loop-orchestration/inject-loop-context.sh +41 -0
  157. package/.claude/skills/cfn-loop-orchestration/monitor-execution.sh +156 -0
  158. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh +884 -0
  159. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh.backup +840 -0
  160. package/.claude/skills/cfn-loop-orchestration/security_utils.sh +99 -0
  161. package/.claude/skills/cfn-loop-orchestration/test-cfn-orchestration.sh +281 -0
  162. package/.claude/skills/cfn-loop-orchestration/test-edge-cases.sh +188 -0
  163. package/.claude/skills/cfn-loop-validation/SKILL.md +353 -0
  164. package/.claude/skills/cfn-loop-validation/check-dependencies.sh +31 -0
  165. package/.claude/skills/cfn-loop-validation/config.json +161 -0
  166. package/.claude/skills/cfn-loop-validation/consensus-calculator.js +477 -0
  167. package/.claude/skills/cfn-loop-validation/evidence-chain.sql +163 -0
  168. package/.claude/skills/cfn-loop-validation/examples/README.md +453 -0
  169. package/.claude/skills/cfn-loop-validation/examples/coordinator-full-cfn-loop.sh +234 -0
  170. package/.claude/skills/cfn-loop-validation/examples/coordinator-loop2-consensus.sh +132 -0
  171. package/.claude/skills/cfn-loop-validation/examples/coordinator-loop3-gate.sh +115 -0
  172. package/.claude/skills/cfn-loop-validation/examples/coordinator-redis-integration.sh +186 -0
  173. package/.claude/skills/cfn-loop-validation/orchestrate-cfn-loop.sh +252 -0
  174. package/.claude/skills/cfn-loop-validation/validate-iteration.sh +134 -0
  175. package/.claude/skills/cfn-process-lifecycle/SKILL.md +39 -0
  176. package/.claude/skills/cfn-process-lifecycle/check-dependencies.sh +58 -0
  177. package/.claude/skills/cfn-process-lifecycle/config.json +39 -0
  178. package/.claude/skills/cfn-process-lifecycle/process-manager.sh +144 -0
  179. package/.claude/skills/cfn-product-owner-decision/SKILL.md +332 -0
  180. package/.claude/skills/cfn-product-owner-decision/execute-decision.sh +176 -0
  181. package/.claude/skills/cfn-product-owner-decision/parse-decision.sh +66 -0
  182. package/.claude/skills/cfn-product-owner-decision/validate-deliverables.sh +82 -0
  183. package/.claude/skills/cfn-redis-coordination/AGENT_LOGGING.md +280 -0
  184. package/.claude/skills/cfn-redis-coordination/BZPOPMIN_FIX_SUMMARY.md +209 -0
  185. package/.claude/skills/cfn-redis-coordination/HEARTBEAT.md +57 -0
  186. package/.claude/skills/cfn-redis-coordination/HEARTBEAT_MONITORING.md +267 -0
  187. package/.claude/skills/cfn-redis-coordination/LOGGING.md +260 -0
  188. package/.claude/skills/cfn-redis-coordination/SECURITY_REVIEW.md +25 -0
  189. package/.claude/skills/cfn-redis-coordination/SHUTDOWN_HANDLING.md +164 -0
  190. package/.claude/skills/cfn-redis-coordination/SKILL.md +720 -0
  191. package/.claude/skills/cfn-redis-coordination/agent-log.sh +124 -0
  192. package/.claude/skills/cfn-redis-coordination/agent-recovery.sh +75 -0
  193. package/.claude/skills/cfn-redis-coordination/analyze-task-complexity.sh +277 -0
  194. package/.claude/skills/cfn-redis-coordination/cancel-swarm.sh +221 -0
  195. package/.claude/skills/cfn-redis-coordination/cfn-loop-exec.sh +468 -0
  196. package/.claude/skills/cfn-redis-coordination/cfn-loop-relaunch.sh +29 -0
  197. package/.claude/skills/cfn-redis-coordination/check-dependencies.sh +32 -0
  198. package/.claude/skills/cfn-redis-coordination/collect-confidence-scores.sh +179 -0
  199. package/.claude/skills/cfn-redis-coordination/collect-results.sh +75 -0
  200. package/.claude/skills/cfn-redis-coordination/complete-swarm.sh +75 -0
  201. package/.claude/skills/cfn-redis-coordination/config.json +61 -0
  202. package/.claude/skills/cfn-redis-coordination/data/cfn-loop.db +0 -0
  203. package/.claude/skills/cfn-redis-coordination/demos/phase4-wake-queue-test-report.md +82 -0
  204. package/.claude/skills/cfn-redis-coordination/demos/test-bzpopmin-fix.sh +274 -0
  205. package/.claude/skills/cfn-redis-coordination/demos/test-cancel-swarm.sh +276 -0
  206. package/.claude/skills/cfn-redis-coordination/demos/test-dlq.sh +129 -0
  207. package/.claude/skills/cfn-redis-coordination/demos/test-iteration-feedback.sh +320 -0
  208. package/.claude/skills/cfn-redis-coordination/demos/test-orchestrator.sh +249 -0
  209. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake-phase4-unix.sh +148 -0
  210. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake-phase4.sh +163 -0
  211. package/.claude/skills/cfn-redis-coordination/demos/test-priority-wake.sh +138 -0
  212. package/.claude/skills/cfn-redis-coordination/demos/test-quick-fix.sh +81 -0
  213. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-absolute.sh +45 -0
  214. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-fallback.sh +68 -0
  215. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-percentage.sh +56 -0
  216. package/.claude/skills/cfn-redis-coordination/demos/test-quorum-with-retry.sh +81 -0
  217. package/.claude/skills/cfn-redis-coordination/demos/test-quorum.sh +57 -0
  218. package/.claude/skills/cfn-redis-coordination/demos/test-shutdown-handling.sh +187 -0
  219. package/.claude/skills/cfn-redis-coordination/demos/test-shutdown.sh +160 -0
  220. package/.claude/skills/cfn-redis-coordination/demos/test-utils-unix.sh +97 -0
  221. package/.claude/skills/cfn-redis-coordination/demos/test-utils.sh +97 -0
  222. package/.claude/skills/cfn-redis-coordination/demos/test-waiting-mode.sh +59 -0
  223. package/.claude/skills/cfn-redis-coordination/examples/README.md +73 -0
  224. package/.claude/skills/cfn-redis-coordination/examples/grafana-dashboard.json +352 -0
  225. package/.claude/skills/cfn-redis-coordination/examples/hierarchical-pattern.sh +127 -0
  226. package/.claude/skills/cfn-redis-coordination/examples/mesh-pattern.sh +171 -0
  227. package/.claude/skills/cfn-redis-coordination/examples/timeout-handling.sh +227 -0
  228. package/.claude/skills/cfn-redis-coordination/examples/waiting-mode-pattern.sh +239 -0
  229. package/.claude/skills/cfn-redis-coordination/execute-product-owner-decision.sh +258 -0
  230. package/.claude/skills/cfn-redis-coordination/get-agent-timeout.sh +177 -0
  231. package/.claude/skills/cfn-redis-coordination/heartbeat-functions.sh +137 -0
  232. package/.claude/skills/cfn-redis-coordination/heartbeat-protocol.md +106 -0
  233. package/.claude/skills/cfn-redis-coordination/heartbeat.sh +126 -0
  234. package/.claude/skills/cfn-redis-coordination/init-swarm.sh +148 -0
  235. package/.claude/skills/cfn-redis-coordination/invoke-redis-pattern.sh +220 -0
  236. package/.claude/skills/cfn-redis-coordination/invoke-waiting-mode.sh +283 -0
  237. package/.claude/skills/cfn-redis-coordination/invoke-waiting-mode.sh.backup-p7 +423 -0
  238. package/.claude/skills/cfn-redis-coordination/list-active-swarms.sh +147 -0
  239. package/.claude/skills/cfn-redis-coordination/log-event.sh +109 -0
  240. package/.claude/skills/cfn-redis-coordination/metrics-export.sh +674 -0
  241. package/.claude/skills/cfn-redis-coordination/metrics-schema.json +66 -0
  242. package/.claude/skills/cfn-redis-coordination/metrics-storage.md +31 -0
  243. package/.claude/skills/cfn-redis-coordination/monitor-cfn-violations.sh +391 -0
  244. package/.claude/skills/cfn-redis-coordination/monitor-heartbeats.sh +101 -0
  245. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop-v3.sh +141 -0
  246. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh +31 -0
  247. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup +38 -0
  248. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-1761167675 +1672 -0
  249. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-p5 +1604 -0
  250. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-phase1 +1550 -0
  251. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-phase2 +1621 -0
  252. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.backup-phase3 +1621 -0
  253. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.bak +0 -0
  254. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.broken +1627 -0
  255. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.corrupted +80 -0
  256. package/.claude/skills/cfn-redis-coordination/orchestrate-cfn-loop.sh.deprecated +1864 -0
  257. package/.claude/skills/cfn-redis-coordination/priority-wake-mechanism.md +75 -0
  258. package/.claude/skills/cfn-redis-coordination/priority_wake.py +134 -0
  259. package/.claude/skills/cfn-redis-coordination/query-dlq.sh +162 -0
  260. package/.claude/skills/cfn-redis-coordination/query-logs.sh +103 -0
  261. package/.claude/skills/cfn-redis-coordination/redis-pattern.sh +619 -0
  262. package/.claude/skills/cfn-redis-coordination/retrieve-context.sh +58 -0
  263. package/.claude/skills/cfn-redis-coordination/select-specialist-agent.sh +371 -0
  264. package/.claude/skills/cfn-redis-coordination/semantic-match-tfidf.py +252 -0
  265. package/.claude/skills/cfn-redis-coordination/send-heartbeat.sh +165 -0
  266. package/.claude/skills/cfn-redis-coordination/signal.sh +38 -0
  267. package/.claude/skills/cfn-redis-coordination/store-context.sh +86 -0
  268. package/.claude/skills/cfn-redis-coordination/store-epic-context.sh +123 -0
  269. package/.claude/skills/cfn-redis-coordination/test-context-injection.sh +354 -0
  270. package/.claude/skills/cfn-redis-coordination/test-timeout-enforcement.sh +513 -0
  271. package/.claude/skills/cfn-redis-coordination/tests/convert-line-endings.sh +15 -0
  272. package/.claude/skills/cfn-redis-coordination/tests/dlq-functionality-test.sh +102 -0
  273. package/.claude/skills/cfn-redis-coordination/tests/edge-cases-test.sh +99 -0
  274. package/.claude/skills/cfn-redis-coordination/tests/integration-test.sh +170 -0
  275. package/.claude/skills/cfn-redis-coordination/tests/retry-mechanism-test.sh +82 -0
  276. package/.claude/skills/cfn-redis-coordination/tests/run-test-suite.sh +92 -0
  277. package/.claude/skills/cfn-redis-coordination/tests/run-tests.sh +4 -0
  278. package/.claude/skills/cfn-redis-coordination/tests/test-heartbeat-monitoring.sh +418 -0
  279. package/.claude/skills/cfn-redis-coordination/tests/test-heartbeat-simple.sh +124 -0
  280. package/.claude/skills/cfn-redis-coordination/tests/test-primitives.sh +166 -0
  281. package/.claude/skills/cfn-redis-coordination/tests/test-utils.sh +54 -0
  282. package/.claude/skills/cfn-redis-coordination/tests/test_coordination_primitives.sh.deprecated +20 -0
  283. package/.claude/skills/cfn-redis-coordination/tests/test_utils.sh +49 -0
  284. package/.claude/skills/cfn-redis-coordination/v2_modularization/core_orchestration.sh +76 -0
  285. package/.claude/skills/cfn-redis-coordination/validate-parameters.sh +492 -0
  286. package/.claude/skills/cfn-sqlite-memory/IMPLEMENTATION_REPORT.md +393 -0
  287. package/.claude/skills/cfn-sqlite-memory/QUICK_REFERENCE.md +204 -0
  288. package/.claude/skills/cfn-sqlite-memory/SKILL.md +415 -0
  289. package/.claude/skills/cfn-sqlite-memory/acl-queries.sql +452 -0
  290. package/.claude/skills/cfn-sqlite-memory/check-dependencies.sh +36 -0
  291. package/.claude/skills/cfn-sqlite-memory/config.json +45 -0
  292. package/.claude/skills/cfn-sqlite-memory/memory-cli.sh +88 -0
  293. package/.claude/skills/cfn-sqlite-memory/test-state-persistence.js +187 -0
  294. package/.claude/skills/cfn-sqlite-memory/ttl-cleanup.sh +274 -0
  295. package/.claude/skills/cfn-test-execution/SKILL.md +128 -0
  296. package/.claude/skills/cfn-test-execution/check-dependencies.sh +36 -0
  297. package/.claude/skills/cfn-test-execution/test-cache-reader.sh +134 -0
  298. package/.claude/skills/cfn-test-execution/test-concurrent-conflicts.sh +115 -0
  299. package/.claude/skills/cfn-test-execution/test-coordinator-pattern.sh +109 -0
  300. package/.claude/skills/cfn-transparency-middleware/Cargo.toml +18 -0
  301. package/.claude/skills/cfn-transparency-middleware/SECURITY.md +41 -0
  302. package/.claude/skills/cfn-transparency-middleware/SKILL.md +91 -0
  303. package/.claude/skills/cfn-transparency-middleware/TEST_RESULTS.md +174 -0
  304. package/.claude/skills/cfn-transparency-middleware/config.json +31 -0
  305. package/.claude/skills/cfn-transparency-middleware/examples/basic-usage.ts +39 -0
  306. package/.claude/skills/cfn-transparency-middleware/examples/batch-processing.ts +52 -0
  307. package/.claude/skills/cfn-transparency-middleware/examples/custom-filtering.ts +61 -0
  308. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-filter.sh +98 -0
  309. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-init.sh +224 -0
  310. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-level.sh +333 -0
  311. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-metrics.sh +345 -0
  312. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-observe.sh +140 -0
  313. package/.claude/skills/cfn-transparency-middleware/invoke-transparency-stop.sh +235 -0
  314. package/.claude/skills/cfn-transparency-middleware/memory_query.rs +85 -0
  315. package/.claude/skills/cfn-transparency-middleware/memory_repository.rs +140 -0
  316. package/.claude/skills/cfn-transparency-middleware/memory_schema.rs +64 -0
  317. package/.claude/skills/cfn-transparency-middleware/middleware-config.sh +29 -0
  318. package/.claude/skills/cfn-transparency-middleware/performance-benchmark.sh +79 -0
  319. package/.claude/skills/cfn-transparency-middleware/test-e2e.sh +406 -0
  320. package/.claude/skills/cfn-transparency-middleware/test-integration.sh +162 -0
  321. package/.claude/skills/cfn-transparency-middleware/test-transparency-skill.sh +368 -0
  322. package/.claude/skills/cfn-transparency-middleware/test-transparency-skill.sh.unix +126 -0
  323. package/.claude/skills/cfn-transparency-middleware/tests/input-validation.sh +93 -0
  324. package/.claude/skills/cfn-transparency-middleware/wrap-agent.sh +132 -0
  325. package/.claude/skills/cfn-webapp-testing/SCREENSHOT_NAMING_CONVENTION.md +547 -0
  326. package/.claude/skills/cfn-webapp-testing/SKILL.md +877 -0
  327. package/.claude/skills/cfn-webapp-testing/capture-screenshot.sh +238 -0
  328. package/.claude/skills/cfn-webapp-testing/cfn-loop-integration.sh +265 -0
  329. package/.claude/skills/cfn-webapp-testing/compare-screenshots.sh +199 -0
  330. package/.claude/skills/cfn-webapp-testing/init-storage.sh +150 -0
  331. package/.claude/skills/cfn-webapp-testing/set-baseline.sh +196 -0
  332. package/.claude/skills/cfn-webapp-testing/test-webapp-testing.sh +233 -0
  333. package/README.md +51 -2
  334. package/dist/ace/ace-reflector.js +109 -10
  335. package/dist/ace/ace-reflector.js.map +1 -1
  336. package/dist/agents/agent-loader.js +165 -146
  337. package/dist/agents/agent-loader.js.map +1 -1
  338. package/dist/cli/agent-executor.js +1 -1
  339. package/dist/cli/agent-executor.js.map +1 -1
  340. package/dist/cli/config-manager.js +109 -91
  341. package/dist/cli/config-manager.js.map +1 -1
  342. package/package.json +43 -7
  343. package/readme/README.md +15 -4
  344. package/scripts/init-project.js +84 -29
  345. package/scripts/run-marketing-tests.sh +43 -0
  346. package/scripts/update_paths.sh +47 -0
  347. package/tools/install-lizard.sh +37 -0
  348. package/tools/simple-complexity.sh +44 -0
  349. package/.claude/agents/cfn-dev-team/developers/coder.md +0 -270
  350. package/.claude/agents/cfn-dev-team/developers/state-architect.md +0 -127
  351. package/.claude/agents/cfn-dev-team/reviewers/code-quality-validator.md +0 -128
  352. /package/.claude/agents/cfn-dev-team/developers/{ui-designer.md → frontend/ui-designer.md} +0 -0
  353. /package/.claude/agents/cfn-dev-team/{coordinators → product-owners}/product-owner-agent.md +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-flow-novice",
3
- "version": "2.9.0",
3
+ "version": "2.10.0",
4
4
  "description": "AI agent orchestration framework with namespace-isolated skills, agents, and CFN Loop validation. Safe installation with ~0.01% collision risk.",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -18,7 +18,28 @@
18
18
  "files": [
19
19
  "dist/",
20
20
  ".claude/agents/cfn-dev-team/",
21
- ".claude/skills/cfn-*/",
21
+ ".claude/skills/cfn-ace-system/",
22
+ ".claude/skills/cfn-agent-discovery/",
23
+ ".claude/skills/cfn-agent-execution/",
24
+ ".claude/skills/cfn-agent-output-processing/",
25
+ ".claude/skills/cfn-agent-selector/",
26
+ ".claude/skills/cfn-agent-spawning/",
27
+ ".claude/skills/cfn-analytics/",
28
+ ".claude/skills/cfn-checkpoint-state/",
29
+ ".claude/skills/cfn-config-management/",
30
+ ".claude/skills/cfn-event-bus/",
31
+ ".claude/skills/cfn-fleet-manager/",
32
+ ".claude/skills/cfn-hook-pipeline/",
33
+ ".claude/skills/cfn-hybrid-routing/",
34
+ ".claude/skills/cfn-loop-orchestration/",
35
+ ".claude/skills/cfn-loop-validation/",
36
+ ".claude/skills/cfn-process-lifecycle/",
37
+ ".claude/skills/cfn-product-owner-decision/",
38
+ ".claude/skills/cfn-redis-coordination/",
39
+ ".claude/skills/cfn-sqlite-memory/",
40
+ ".claude/skills/cfn-test-execution/",
41
+ ".claude/skills/cfn-transparency-middleware/",
42
+ ".claude/skills/cfn-webapp-testing/",
22
43
  ".claude/hooks/cfn-*",
23
44
  ".claude/commands/cfn/",
24
45
  ".claude/cfn-data/",
@@ -28,9 +49,11 @@
28
49
  "!scripts/test-*.sh",
29
50
  "!scripts/*-validation.cjs",
30
51
  "!scripts/deployment/",
52
+ "tools/simple-complexity.sh",
53
+ "tools/install-lizard.sh",
31
54
  "README.md",
32
55
  "LICENSE",
33
- "CFN-CLAUDE.md"
56
+ ".claude/root-claude-distribute/CFN-CLAUDE.md"
34
57
  ],
35
58
  "keywords": [
36
59
  "ai",
@@ -50,7 +73,7 @@
50
73
  "license": "MIT",
51
74
  "repository": {
52
75
  "type": "git",
53
- "url": "https://github.com/yourusername/claude-flow-novice.git"
76
+ "url": "git+https://github.com/yourusername/claude-flow-novice.git"
54
77
  },
55
78
  "bugs": {
56
79
  "url": "https://github.com/yourusername/claude-flow-novice/issues"
@@ -62,10 +85,16 @@
62
85
  "build:swc": "swc src -d dist --config-file .swcrc --ignore '**/*.test.ts' --ignore '**/*.test.tsx' --ignore '**/*.spec.ts'",
63
86
  "clean": "rm -rf dist",
64
87
  "test": "jest",
88
+ "test:cfn-v3": "bash tests/cfn-v3-orchestration/run-full-suite.sh",
89
+ "test:cfn-v3:connections": "node tests/cfn-v3-orchestration/tests/02-worker-connections.test.js",
90
+ "test:cfn-v3:confidence": "node tests/cfn-v3-orchestration/tests/03-confidence-scores.test.js",
91
+ "test:cfn-v3:handoffs": "node tests/cfn-v3-orchestration/tests/04-handoff-coordination.test.js",
92
+ "test:cfn-v3:dataflow": "node tests/cfn-v3-orchestration/tests/05-data-flow.test.js",
93
+ "test:cfn-v3:shutdown": "node tests/cfn-v3-orchestration/tests/06-graceful-shutdown.test.js",
65
94
  "typecheck": "tsc --noEmit",
66
95
  "prepublishOnly": "npm run build && ./scripts/verify-no-secrets.sh",
67
96
  "prepack": "npm run build",
68
- "postinstall": "node -e \"console.log('\\n✅ claude-flow-novice installed successfully!\\n📚 Get started: npx claude-flow-novice --help\\n🔧 Initialize project: npx cfn-init\\n💡 CFN loops: npx cfn-loop \\\"Task description\\\"\\n')\"",
97
+ "postinstall": "node scripts/init-project.js",
69
98
  "verify-package": "npm pack --dry-run",
70
99
  "portal:start": "./scripts/start-portal.sh",
71
100
  "portal:stop": "./scripts/stop-portal.sh",
@@ -88,6 +117,11 @@
88
117
  "sqlite": "^5.1.1",
89
118
  "sqlite3": "^5.1.7"
90
119
  },
120
+ "optionalDependencies": {},
121
+ "peerDependencies": {},
122
+ "engines": {
123
+ "node": ">=18.0.0"
124
+ },
91
125
  "devDependencies": {
92
126
  "@swc/cli": "^0.1.62",
93
127
  "@swc/core": "^1.3.0",
@@ -111,7 +145,9 @@
111
145
  "tsx": "^4.7.0",
112
146
  "typescript": "^5.6.3"
113
147
  },
114
- "engines": {
115
- "node": ">=18.0.0"
148
+ "directories": {
149
+ "doc": "docs",
150
+ "example": "examples",
151
+ "test": "tests"
116
152
  }
117
153
  }
package/readme/README.md CHANGED
@@ -1,7 +1,12 @@
1
- # Claude Flow Novice v2 Documentation
1
+ # Claude Flow Novice v2.9.1 Documentation
2
2
 
3
- **Version:** 2.0 (Skills-First Architecture)
4
- **Last Updated:** 2025-10-19
3
+ **Version:** 2.9.1 (Skills-First Architecture)
4
+ **Last Updated:** 2025-10-25
5
+
6
+ **Package Metrics**:
7
+ - 2.4 MB unpacked
8
+ - 303 files
9
+ - Namespace-isolated installation
5
10
 
6
11
  ## Overview
7
12
 
@@ -10,6 +15,10 @@ Claude Flow Novice is a production-ready AI agent orchestration framework built
10
15
  ## Quick Start
11
16
 
12
17
  ```bash
18
+ # Install and initialize
19
+ npm install claude-flow-novice
20
+ npx cfn-init
21
+
13
22
  # Initialize a swarm with skills
14
23
  npx claude-flow-novice swarm "Task Description" \
15
24
  --skills=redis-coordination,agent-spawning \
@@ -59,11 +68,13 @@ npx claude-flow-novice swarm "Task Description" \
59
68
  - **Modular Skills**: Independently maintainable, testable capabilities
60
69
  - **Explicit Dependencies**: Redis pub/sub coordination, no implicit coupling
61
70
  - **Thin Orchestration**: Main chat delegates to skills, minimal coordination logic
71
+ - **Namespace-Isolated Installation**: ~0.01% collision risk
72
+ - **Preserves User Custom Agents/Skills/Hooks**
62
73
 
63
74
  ### Zero-Token Coordination
64
75
  - **Redis BLPOP**: Agents wait without API calls (0 tokens while idle)
65
76
  - **Instant Wake-Up**: <100ms latency for agent activation
66
- - **Scalable**: 10+ agents, indefinite iteration cycles
77
+ - **Scalable**: 23 agents in cfn-dev-team
67
78
 
68
79
  ### CFN Loop (Consensus Framework)
69
80
  - **Loop 3**: Implementation agents (coders, researchers)
@@ -4,6 +4,7 @@ import fs from 'fs';
4
4
  import path from 'path';
5
5
  import { fileURLToPath } from 'url';
6
6
  import { promisify } from 'util';
7
+ import { spawnSync } from 'child_process';
7
8
  import chalk from 'chalk';
8
9
 
9
10
  const __filename = fileURLToPath(import.meta.url);
@@ -13,30 +14,35 @@ const cpAsync = promisify(fs.cp);
13
14
  const mkdirAsync = promisify(fs.mkdir);
14
15
  const existsAsync = promisify(fs.exists);
15
16
 
17
+ // Find the CFN package root (works both in dev and installed contexts)
18
+ const cfnRoot = path.resolve(process.cwd(), 'node_modules', 'claude-flow-novice');
19
+
16
20
  // Configuration for CFN initialization paths
17
21
  const CFN_PATHS = {
18
22
  agents: {
19
- src: path.resolve(__dirname, '../.claude/agents/cfn-dev-team'),
23
+ src: path.join(cfnRoot, '.claude/agents/cfn-dev-team'),
20
24
  dest: '.claude/agents/cfn-dev-team'
21
25
  },
22
26
  skills: {
23
- src: path.resolve(__dirname, '../.claude/skills/cfn-*'),
24
- dest: '.claude/skills/cfn-*'
27
+ src: path.join(cfnRoot, '.claude/skills'),
28
+ dest: '.claude/skills',
29
+ pattern: 'cfn-*'
25
30
  },
26
31
  hooks: {
27
- src: path.resolve(__dirname, '../.claude/hooks/cfn-*'),
28
- dest: '.claude/hooks/cfn-*'
32
+ src: path.join(cfnRoot, '.claude/hooks'),
33
+ dest: '.claude/hooks',
34
+ pattern: 'cfn-*'
29
35
  },
30
36
  commands: {
31
- src: path.resolve(__dirname, '../.claude/commands/cfn'),
37
+ src: path.join(cfnRoot, '.claude/commands/cfn'),
32
38
  dest: '.claude/commands/cfn'
33
39
  },
34
40
  cfnData: {
35
- src: path.resolve(__dirname, '../.claude/cfn-data'),
41
+ src: path.join(cfnRoot, '.claude/cfn-data'),
36
42
  dest: '.claude/cfn-data'
37
43
  },
38
44
  cfnAgentsIgnore: {
39
- src: path.resolve(__dirname, '../.claude/cfn-agents-ignore'),
45
+ src: path.join(cfnRoot, '.claude/cfn-agents-ignore'),
40
46
  dest: '.claude/cfn-agents-ignore'
41
47
  }
42
48
  };
@@ -60,25 +66,38 @@ async function ensureDirectories() {
60
66
  }
61
67
 
62
68
  async function verifyCfnInstallation() {
63
- try {
64
- await import('claude-flow-novice');
65
- } catch (error) {
69
+ const cfnPath = path.resolve(process.cwd(), 'node_modules', 'claude-flow-novice');
70
+ if (!fs.existsSync(cfnPath)) {
66
71
  console.error(chalk.red('❌ claude-flow-novice not installed. Please run: npm install claude-flow-novice'));
67
72
  process.exit(1);
68
73
  }
69
74
  }
70
75
 
71
- async function copyFiles(src, dest, pattern = '*') {
76
+ async function copyFiles(src, dest, pattern) {
72
77
  try {
73
- await cpAsync(src, dest, {
74
- recursive: true,
75
- force: true,
76
- filter: (source) => {
77
- // Optional: Add filtering logic if needed
78
- return true;
78
+ if (!fs.existsSync(src)) {
79
+ console.warn(chalk.yellow(`⚠️ Source not found: ${src}`));
80
+ return false;
81
+ }
82
+
83
+ if (pattern) {
84
+ // Copy only files/dirs matching pattern (e.g., cfn-*)
85
+ const items = fs.readdirSync(src);
86
+ const matched = items.filter(item => item.startsWith(pattern.replace('*', '')));
87
+
88
+ for (const item of matched) {
89
+ const itemSrc = path.join(src, item);
90
+ const itemDest = path.join(dest, item);
91
+ await mkdirAsync(path.dirname(itemDest), { recursive: true });
92
+ await cpAsync(itemSrc, itemDest, { recursive: true, force: true });
79
93
  }
80
- });
81
- console.log(chalk.green(`✅ Copied ${src} ${dest}`));
94
+ console.log(chalk.green(`✅ Copied ${matched.length} ${pattern} items from ${src}`));
95
+ } else {
96
+ // Copy entire directory
97
+ await mkdirAsync(path.dirname(dest), { recursive: true });
98
+ await cpAsync(src, dest, { recursive: true, force: true });
99
+ console.log(chalk.green(`✅ Copied ${src} → ${dest}`));
100
+ }
82
101
  return true;
83
102
  } catch (error) {
84
103
  console.error(chalk.red(`❌ Error copying ${src}: ${error.message}`));
@@ -87,14 +106,14 @@ async function copyFiles(src, dest, pattern = '*') {
87
106
  }
88
107
 
89
108
  async function copyCfnClaudeMarkdown() {
90
- const cfnClaudeMdPath = path.resolve(__dirname, '../CFN-CLAUDE.md');
109
+ const cfnClaudeMdPath = path.join(cfnRoot, '.claude/root-claude-distribute/CFN-CLAUDE.md');
91
110
  const destPath = path.resolve(process.cwd(), 'CFN-CLAUDE.md');
92
111
 
93
- if (await existsAsync(cfnClaudeMdPath)) {
112
+ if (fs.existsSync(cfnClaudeMdPath)) {
94
113
  try {
95
114
  await cpAsync(cfnClaudeMdPath, destPath);
96
115
  console.log(chalk.green('📄 CFN-CLAUDE.md copied to project root'));
97
- console.log(chalk.yellow('💡 Use CFN-CLAUDE.md as a reference. Copy to CLAUDE.md if needed.'));
116
+ console.log(chalk.yellow('💡 Activate CFN workflows: cp CFN-CLAUDE.md CLAUDE.md'));
98
117
  } catch (error) {
99
118
  console.error(chalk.red(`❌ Failed to copy CFN-CLAUDE.md: ${error.message}`));
100
119
  }
@@ -103,8 +122,40 @@ async function copyCfnClaudeMarkdown() {
103
122
  }
104
123
  }
105
124
 
125
+ async function installLizard() {
126
+ console.log(chalk.blue('\n🔧 Installing lizard (complexity analyzer)...'));
127
+
128
+ // Check if lizard is already installed
129
+ const checkResult = spawnSync('which', ['lizard'], { encoding: 'utf-8' });
130
+ if (checkResult.status === 0) {
131
+ console.log(chalk.green('✅ Lizard already installed'));
132
+ return;
133
+ }
134
+
135
+ // Try to install lizard via pip3
136
+ const pipCommands = [
137
+ ['pip3', 'install', '--user', '--break-system-packages', 'lizard'],
138
+ ['pip3', 'install', '--user', 'lizard'],
139
+ ['pip', 'install', '--user', 'lizard']
140
+ ];
141
+
142
+ for (const cmd of pipCommands) {
143
+ const result = spawnSync(cmd[0], cmd.slice(1), { encoding: 'utf-8' });
144
+ if (result.status === 0) {
145
+ console.log(chalk.green('✅ Lizard installed successfully'));
146
+ console.log(chalk.yellow('💡 Add to PATH: export PATH="$HOME/.local/bin:$PATH"'));
147
+ return;
148
+ }
149
+ }
150
+
151
+ // If all attempts failed, provide instructions
152
+ console.log(chalk.yellow('⚠️ Could not auto-install lizard. Manual installation required:'));
153
+ console.log(chalk.gray(' pip3 install --user lizard'));
154
+ console.log(chalk.gray(' or run: ./tools/install-lizard.sh'));
155
+ }
156
+
106
157
  async function initializeCfnProject() {
107
- console.log(chalk.blue('🚀 Claude Flow Novice CFN Initialization'));
158
+ console.log(chalk.blue('\n🚀 Claude Flow Novice CFN Initialization\n'));
108
159
 
109
160
  try {
110
161
  // Verify prerequisites
@@ -115,8 +166,8 @@ async function initializeCfnProject() {
115
166
  const copyResults = [];
116
167
 
117
168
  // Copy CFN files
118
- for (const [key, { src, dest }] of Object.entries(CFN_PATHS)) {
119
- const result = await copyFiles(src, dest);
169
+ for (const [key, config] of Object.entries(CFN_PATHS)) {
170
+ const result = await copyFiles(config.src, config.dest, config.pattern);
120
171
  copyResults.push(result);
121
172
  }
122
173
 
@@ -129,10 +180,14 @@ async function initializeCfnProject() {
129
180
 
130
181
  console.log(chalk.green(`\n✅ CFN Installation Complete`));
131
182
  console.log(chalk.blue(` Copied ${successCount}/${totalPaths} paths successfully`));
183
+
184
+ // Install lizard for complexity analysis
185
+ await installLizard();
186
+
132
187
  console.log(chalk.yellow('\n🔍 Next Steps:'));
133
- console.log(' 1. Review CFN-CLAUDE.md');
134
- console.log(' 2. Configure your project');
135
- console.log(' 3. Run initial CFN setup: npx claude-flow-novice init');
188
+ console.log(' 1. Review CFN-CLAUDE.md in project root');
189
+ console.log(' 2. Run your first CFN Loop: npx cfn-loop "Task description"');
190
+ console.log(' 3. Check available agents: ls .claude/agents/cfn-dev-team/*/\n');
136
191
 
137
192
  } catch (error) {
138
193
  console.error(chalk.red('❌ CFN Initialization Failed'), error);
@@ -0,0 +1,43 @@
1
+ #!/bin/bash
2
+ # Run Marketing Infrastructure Integration Tests
3
+
4
+ set -e
5
+
6
+ # Ensure the correct working directory
7
+ cd "$(dirname "$0")/.." || exit 1
8
+
9
+ # Run all marketing test scripts
10
+ echo "🚀 Starting Marketing Infrastructure Integration Tests..."
11
+
12
+ # Function to run test and capture exit code
13
+ run_test() {
14
+ local test_script="$1"
15
+ local start_time=$(date +%s)
16
+
17
+ echo "Running $test_script..."
18
+
19
+ if bash "$test_script"; then
20
+ local end_time=$(date +%s)
21
+ local duration=$((end_time - start_time))
22
+ echo "✅ $test_script PASSED (${duration}s)"
23
+ else
24
+ echo "❌ $test_script FAILED"
25
+ exit 1
26
+ fi
27
+ }
28
+
29
+ # Array of test scripts
30
+ TEST_SCRIPTS=(
31
+ "tests/marketing-email-campaigns-test.sh"
32
+ "tests/marketing-social-publishing-test.sh"
33
+ "tests/marketing-analytics-data-test.sh"
34
+ "tests/marketing-crm-contacts-test.sh"
35
+ )
36
+
37
+ # Run each test script
38
+ for test in "${TEST_SCRIPTS[@]}"; do
39
+ run_test "$test"
40
+ done
41
+
42
+ echo "🎉 All Marketing Infrastructure Integration Tests PASSED!"
43
+ exit 0
@@ -0,0 +1,47 @@
1
+ #!/bin/bash
2
+
3
+ # Path replacements
4
+ SKILL_REPLACEMENTS=(
5
+ ".claude/skills/redis-coordination/:\.claude/skills/cfn-redis-coordination/"
6
+ ".claude/skills/agent-spawning/:\.claude/skills/cfn-agent-spawning/"
7
+ ".claude/skills/playbook/:\.claude/skills/cfn-playbook/"
8
+ ".claude/skills/:\.claude/skills/cfn-"
9
+ )
10
+
11
+ HOOK_REPLACEMENTS=(
12
+ ".claude/hooks/invoke-post-edit.sh:\.claude/hooks/cfn-invoke-post-edit.sh"
13
+ ".claude/hooks/post-edit.sh:\.claude/hooks/cfn-post-edit.sh"
14
+ ".claude/hooks/:\.claude/hooks/cfn-"
15
+ )
16
+
17
+ DATA_REPLACEMENTS=(
18
+ ".claude/data/:\.claude/cfn-data/"
19
+ )
20
+
21
+ # Function to perform replacements in a file
22
+ replace_paths() {
23
+ local file="$1"
24
+ local replacements=("${@:2}")
25
+
26
+ # Perform replacements for each pattern
27
+ for replacement in "${replacements[@]}"; do
28
+ IFS=':' read -r old_path new_path <<< "$replacement"
29
+ sed -i "s|${old_path}|${new_path}|g" "$file"
30
+ done
31
+ }
32
+
33
+ # Find and update markdown files
34
+ find .claude/agents/cfn-dev-team -name "*.md" | while read -r file; do
35
+ echo "Processing $file"
36
+
37
+ # Skill path replacements
38
+ replace_paths "$file" "${SKILL_REPLACEMENTS[@]}"
39
+
40
+ # Hook path replacements
41
+ replace_paths "$file" "${HOOK_REPLACEMENTS[@]}"
42
+
43
+ # Data path replacements
44
+ replace_paths "$file" "${DATA_REPLACEMENTS[@]}"
45
+ done
46
+
47
+ echo "Path replacements complete!"
@@ -0,0 +1,37 @@
1
+ #!/usr/bin/env bash
2
+ # Install lizard complexity analyzer
3
+
4
+ echo "Installing lizard..."
5
+
6
+ # Try pipx first (isolated install)
7
+ if command -v pipx >/dev/null 2>&1; then
8
+ echo "Using pipx..."
9
+ pipx install lizard
10
+ exit 0
11
+ fi
12
+
13
+ # Try pip with user install
14
+ if command -v pip3 >/dev/null 2>&1; then
15
+ echo "Using pip3 --user..."
16
+ pip3 install --user lizard
17
+
18
+ # Add to PATH if needed
19
+ PYTHON_USER_BASE=$(python3 -m site --user-base)
20
+ export PATH="$PYTHON_USER_BASE/bin:$PATH"
21
+
22
+ echo ""
23
+ echo "Add to your ~/.bashrc or ~/.zshrc:"
24
+ echo "export PATH=\"$PYTHON_USER_BASE/bin:\$PATH\""
25
+ exit 0
26
+ fi
27
+
28
+ # Try pip
29
+ if command -v pip >/dev/null 2>&1; then
30
+ echo "Using pip --user..."
31
+ pip install --user lizard
32
+ exit 0
33
+ fi
34
+
35
+ echo "Error: No Python package manager found"
36
+ echo "Install pipx: sudo apt-get install pipx"
37
+ exit 1
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/env bash
2
+ # Simple cyclomatic complexity calculator for bash scripts
3
+
4
+ FILE="$1"
5
+
6
+ if [ ! -f "$FILE" ]; then
7
+ echo "Usage: $0 <bash-script>"
8
+ exit 1
9
+ fi
10
+
11
+ echo "Cyclomatic Complexity Analysis: $(basename "$FILE")"
12
+ echo "=================================================="
13
+
14
+ # Count decision points
15
+ IF_COUNT=$(grep -cE '^\s*(if|elif)\s+' "$FILE" 2>/dev/null || echo 0)
16
+ LOOP_COUNT=$(grep -cE '^\s*(for|while|until)\s+' "$FILE" 2>/dev/null || echo 0)
17
+ CASE_COUNT=$(grep -cE '^\s*case\s+' "$FILE" 2>/dev/null || echo 0)
18
+ AND_OR=$(grep -vE '^\s*#' "$FILE" | grep -oE '(\&\&|\|\|)' | wc -l)
19
+ FUNC_COUNT=$(grep -cE 'function\s+[a-zA-Z_]|^[a-zA-Z_][a-zA-Z0-9_]*\s*\(\)' "$FILE" 2>/dev/null || echo 0)
20
+
21
+ # Calculate total (base 1 + decision points)
22
+ TOTAL=$((1 + IF_COUNT + LOOP_COUNT + CASE_COUNT + AND_OR / 2))
23
+
24
+ echo "Decision Points:"
25
+ echo " if/elif: $IF_COUNT"
26
+ echo " loops: $LOOP_COUNT"
27
+ echo " case: $CASE_COUNT"
28
+ echo " &&/||: $AND_OR"
29
+ echo " functions: $FUNC_COUNT"
30
+ echo ""
31
+ echo "Total Complexity: $TOTAL"
32
+ echo ""
33
+
34
+ if [ $TOTAL -ge 40 ]; then
35
+ echo "Rating: Very Complex (refactor required)"
36
+ elif [ $TOTAL -ge 20 ]; then
37
+ echo "Rating: Complex (refactor recommended)"
38
+ elif [ $TOTAL -ge 10 ]; then
39
+ echo "Rating: Moderate"
40
+ else
41
+ echo "Rating: Simple"
42
+ fi
43
+
44
+ echo "=================================================="