claude-flow-novice 2.15.2 → 2.15.4

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 (533) hide show
  1. package/.claude/cfn-extras/skills/advanced-features/cfn-agent-swap/recommend-swap.sh +59 -59
  2. package/.claude/cfn-extras/skills/analytics/cfn-improvement-recommender/recommend-improvements.sh +91 -91
  3. package/.claude/cfn-extras/skills/analytics/cfn-pattern-extraction/extract-patterns.sh +79 -79
  4. package/.claude/cfn-extras/skills/analytics/cfn-retrospective-report/generate-report.sh +100 -100
  5. package/.claude/cfn-extras/skills/analytics/cfn-telemetry/start-telemetry.sh +110 -110
  6. package/.claude/cfn-extras/skills/deprecated/cfn-ace-system/add-bullet.sh +145 -145
  7. package/.claude/cfn-extras/skills/deprecated/cfn-ace-system/log-merge.sh +67 -67
  8. package/.claude/cfn-extras/skills/deprecated/cfn-ace-system/monitor-injection-performance.sh +137 -137
  9. package/.claude/cfn-extras/skills/deprecated/cfn-ace-system/optimize-injection-pipeline.sh +168 -168
  10. package/.claude/cfn-extras/skills/deprecated/cfn-ace-system/query-reflections.sh +35 -35
  11. package/.claude/cfn-extras/skills/deprecated/cfn-ace-system/store-reflection.sh +45 -45
  12. package/.claude/cfn-extras/skills/deprecated/cfn-ace-system/track-ab-test.sh +41 -41
  13. package/.claude/cfn-extras/skills/deprecated/cfn-ace-system/update-reflection.sh +41 -41
  14. package/.claude/cfn-extras/skills/deprecated/cfn-cli-setup/validate-cli-environment.sh +191 -191
  15. package/.claude/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/create-campaign.sh +231 -231
  16. package/.claude/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/get-campaign-performance.sh +190 -190
  17. package/.claude/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/pause-campaign.sh +142 -142
  18. package/.claude/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/set-budget.sh +181 -181
  19. package/.claude/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/update-bid-strategy.sh +133 -133
  20. package/.claude/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/get-conversation-history.sh +121 -121
  21. package/.claude/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/qualify-lead.sh +156 -156
  22. package/.claude/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/schedule-demo.sh +181 -181
  23. package/.claude/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/send-message.sh +137 -137
  24. package/.claude/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/transfer-to-human.sh +179 -179
  25. package/.claude/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/create-campaign.sh +183 -183
  26. package/.claude/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/get-delivery-status.sh +139 -139
  27. package/.claude/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/opt-out.sh +150 -150
  28. package/.claude/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/schedule-campaign.sh +187 -187
  29. package/.claude/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/send-sms.sh +181 -181
  30. package/.claude/cfn-extras/skills/ui-portal/cfn-web-portal/test-web-portal-skill.sh +50 -50
  31. package/.claude/cfn-extras/skills/ui-portal/cfn-web-portal/validate-deployment.sh +84 -84
  32. package/.claude/cfn-extras/skills/utility/cfn-environment-sanitization/sanitize-environment.sh +243 -243
  33. package/.claude/commands/cfn-loop-cli.md +16 -2
  34. package/.claude/commands/switch-api.md +31 -10
  35. package/.claude/hooks/cfn-BACKUP_USAGE.md +243 -243
  36. package/.claude/hooks/cfn-invoke-security-validation.sh +69 -69
  37. package/.claude/hooks/cfn-lint-sql-injection.sh +61 -0
  38. package/.claude/hooks/cfn-post-edit-cfn-retrospective.sh +109 -78
  39. package/.claude/hooks/cfn-post-edit.config.json +44 -44
  40. package/.claude/hooks/cfn-pre-edit-security-warning.sh +40 -0
  41. package/.claude/skills/cfn-agent-spawning/spawn-agent.sh +22 -24
  42. package/.claude/skills/cfn-docker-agent-spawning/SKILL.md +28 -4
  43. package/.claude/skills/cfn-docker-agent-spawning/spawn-agent.sh +3 -1
  44. package/.claude/skills/cfn-docker-loop-orchestration/orchestrate.sh +224 -20
  45. package/.claude/skills/cfn-hybrid-routing/check-dependencies.sh +51 -51
  46. package/.claude/skills/cfn-loop-orchestration/helpers/gate-check.sh +550 -46
  47. package/.claude/skills/cfn-loop-orchestration/helpers/parse-test-results.sh +277 -0
  48. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh +184 -23
  49. package/.claude/skills/cfn-loop-orchestration/security_utils.sh +24 -0
  50. package/.claude/skills/cfn-loop-orchestration/test-iteration-context-injection.sh +366 -0
  51. package/.claude/skills/cfn-loop-validation/orchestrate-cfn-loop.sh +252 -252
  52. package/.claude/skills/cfn-redis-coordination/CENTRALIZED_REDIS_WRAPPER.md +319 -0
  53. package/.claude/skills/cfn-redis-coordination/agent-log.sh +4 -0
  54. package/.claude/skills/cfn-redis-coordination/agent-log.sh.bak +124 -0
  55. package/.claude/skills/cfn-redis-coordination/agent-recovery.sh +74 -74
  56. package/.claude/skills/cfn-redis-coordination/collect-confidence-scores.sh +30 -0
  57. package/.claude/skills/cfn-redis-coordination/get-context.sh +145 -112
  58. package/.claude/skills/cfn-redis-coordination/get-success-criteria.sh +54 -0
  59. package/.claude/skills/cfn-redis-coordination/invoke-waiting-mode.sh +3 -0
  60. package/.claude/skills/cfn-redis-coordination/redis-cli-wrapper.sh +24 -3
  61. package/.claude/skills/cfn-redis-coordination/redis-functions.sh +33 -0
  62. package/.claude/skills/cfn-redis-coordination/report-completion.sh +24 -31
  63. package/.claude/skills/cfn-redis-coordination/store-context.sh +4 -0
  64. package/.claude/skills/cfn-redis-coordination/store-success-criteria.sh +85 -0
  65. package/.claude/skills/cfn-redis-coordination/update-all-scripts.sh +67 -0
  66. package/.claude/skills/cfn-sqlite-memory/ttl-cleanup.sh +17 -25
  67. package/.claude/skills/cfn-transparency-middleware/middleware-config.sh +28 -28
  68. package/.claude/skills/cfn-transparency-middleware/performance-benchmark.sh +78 -78
  69. package/.claude/skills/cfn-transparency-middleware/test-e2e.sh +15 -0
  70. package/.claude/skills/cfn-transparency-middleware/test-integration.sh +161 -161
  71. package/.claude/skills/cfn-transparency-middleware/test-transparency-skill.sh +367 -367
  72. package/.claude/skills/cfn-transparency-middleware/tests/input-validation.sh +107 -92
  73. package/.claude/skills/cfn-transparency-middleware/wrap-agent.sh +131 -131
  74. package/README.md +116 -475
  75. package/claude-assets/agents/cfn-dev-team/README.md +103 -0
  76. package/claude-assets/agents/cfn-dev-team/architecture/goal-planner.md +1 -1
  77. package/claude-assets/agents/cfn-dev-team/coordinators/cfn-frontend-coordinator.md +77 -15
  78. package/claude-assets/agents/cfn-dev-team/coordinators/cfn-v3-coordinator.md +355 -6
  79. package/claude-assets/agents/cfn-dev-team/coordinators/consensus-builder.md +82 -1
  80. package/claude-assets/agents/cfn-dev-team/coordinators/handoff-coordinator.md +82 -1
  81. package/claude-assets/agents/cfn-dev-team/coordinators/multi-sprint-coordinator.md +77 -15
  82. package/claude-assets/agents/cfn-dev-team/dev-ops/docker-specialist.md +99 -12
  83. package/claude-assets/agents/cfn-dev-team/dev-ops/github-commit-agent.md +1 -1
  84. package/claude-assets/agents/cfn-dev-team/dev-ops/kubernetes-specialist.md +97 -0
  85. package/claude-assets/agents/cfn-dev-team/dev-ops/monitoring-specialist.md +20 -1
  86. package/claude-assets/agents/cfn-dev-team/developers/api-gateway-specialist.md +97 -0
  87. package/claude-assets/agents/cfn-dev-team/developers/backend-developer.md +110 -13
  88. package/claude-assets/agents/cfn-dev-team/developers/data/data-engineer.md +106 -15
  89. package/claude-assets/agents/cfn-dev-team/developers/database/database-architect.md +115 -11
  90. package/claude-assets/agents/cfn-dev-team/developers/frontend/mobile-dev.md +94 -7
  91. package/claude-assets/agents/cfn-dev-team/developers/frontend/react-frontend-engineer.md +87 -9
  92. package/claude-assets/agents/cfn-dev-team/developers/frontend/typescript-specialist.md +85 -7
  93. package/claude-assets/agents/cfn-dev-team/developers/frontend/ui-designer.md +160 -28
  94. package/claude-assets/agents/cfn-dev-team/developers/graphql-specialist.md +101 -19
  95. package/claude-assets/agents/cfn-dev-team/developers/rust-developer.md +108 -14
  96. package/claude-assets/agents/cfn-dev-team/reviewers/{reviewer.md → code-reviewer.md} +95 -8
  97. package/claude-assets/agents/cfn-dev-team/reviewers/quality/code-quality-validator.md +107 -7
  98. package/claude-assets/agents/cfn-dev-team/reviewers/quality/perf-analyzer.md +98 -7
  99. package/claude-assets/agents/cfn-dev-team/reviewers/quality/performance-benchmarker.md +95 -7
  100. package/claude-assets/agents/cfn-dev-team/reviewers/quality/security-specialist.md +136 -9
  101. package/claude-assets/agents/cfn-dev-team/testers/api-testing-specialist.md +108 -1
  102. package/claude-assets/agents/cfn-dev-team/testers/chaos-engineering-specialist.md +107 -13
  103. package/claude-assets/agents/cfn-dev-team/testers/contract-tester.md +737 -0
  104. package/claude-assets/agents/cfn-dev-team/testers/e2e/playwright-tester.md +1 -1
  105. package/claude-assets/agents/cfn-dev-team/testers/integration-tester.md +828 -0
  106. package/claude-assets/agents/cfn-dev-team/testers/interaction-tester.md +106 -7
  107. package/claude-assets/agents/cfn-dev-team/testers/load-testing-specialist.md +77 -0
  108. package/claude-assets/agents/cfn-dev-team/testers/mutation-testing-specialist.md +684 -0
  109. package/claude-assets/agents/cfn-dev-team/testers/playwright-tester.md +110 -1
  110. package/claude-assets/agents/cfn-dev-team/testers/tester.md +94 -7
  111. package/claude-assets/agents/cfn-dev-team/utility/code-booster.md +1 -3
  112. package/claude-assets/agents/cfn-dev-team/utility/epic-creator.md +87 -13
  113. package/claude-assets/agents/cfn-dev-team/utility/memory-leak-specialist.md +103 -7
  114. package/claude-assets/agents/cfn-dev-team/utility/researcher.md +1 -3
  115. package/claude-assets/agents/cfn-dev-team/utility/z-ai-specialist.md +94 -7
  116. package/claude-assets/agents/docker-coordinators/cfn-docker-v3-coordinator.md +46 -0
  117. package/claude-assets/agents/project-only-agents/npm-package-specialist.md +1 -1
  118. package/claude-assets/cfn-extras/skills/advanced-features/cfn-agent-swap/recommend-swap.sh +59 -59
  119. package/claude-assets/cfn-extras/skills/analytics/cfn-improvement-recommender/recommend-improvements.sh +91 -91
  120. package/claude-assets/cfn-extras/skills/analytics/cfn-pattern-extraction/extract-patterns.sh +79 -79
  121. package/claude-assets/cfn-extras/skills/analytics/cfn-retrospective-report/generate-report.sh +100 -100
  122. package/claude-assets/cfn-extras/skills/analytics/cfn-telemetry/start-telemetry.sh +110 -110
  123. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/add-bullet.sh +145 -145
  124. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/log-merge.sh +67 -67
  125. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/monitor-injection-performance.sh +137 -137
  126. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/optimize-injection-pipeline.sh +168 -168
  127. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/query-reflections.sh +35 -35
  128. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/store-reflection.sh +45 -45
  129. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/track-ab-test.sh +41 -41
  130. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/update-reflection.sh +41 -41
  131. package/claude-assets/cfn-extras/skills/deprecated/cfn-cli-setup/validate-cli-environment.sh +191 -191
  132. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/create-campaign.sh +231 -231
  133. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/get-campaign-performance.sh +190 -190
  134. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/pause-campaign.sh +142 -142
  135. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/set-budget.sh +181 -181
  136. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/update-bid-strategy.sh +133 -133
  137. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/get-conversation-history.sh +121 -121
  138. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/qualify-lead.sh +156 -156
  139. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/schedule-demo.sh +181 -181
  140. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/send-message.sh +137 -137
  141. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/transfer-to-human.sh +179 -179
  142. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/create-campaign.sh +183 -183
  143. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/get-delivery-status.sh +139 -139
  144. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/opt-out.sh +150 -150
  145. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/schedule-campaign.sh +187 -187
  146. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/send-sms.sh +181 -181
  147. package/claude-assets/cfn-extras/skills/ui-portal/cfn-web-portal/test-web-portal-skill.sh +50 -50
  148. package/claude-assets/cfn-extras/skills/ui-portal/cfn-web-portal/validate-deployment.sh +84 -84
  149. package/claude-assets/cfn-extras/skills/utility/cfn-environment-sanitization/sanitize-environment.sh +243 -243
  150. package/claude-assets/commands/cfn-loop-cli.md +16 -2
  151. package/claude-assets/commands/switch-api.md +31 -10
  152. package/claude-assets/hooks/cfn-BACKUP_USAGE.md +243 -243
  153. package/claude-assets/hooks/cfn-invoke-security-validation.sh +69 -69
  154. package/claude-assets/hooks/cfn-lint-sql-injection.sh +61 -0
  155. package/claude-assets/hooks/cfn-post-edit-cfn-retrospective.sh +109 -78
  156. package/claude-assets/hooks/cfn-post-edit.config.json +44 -44
  157. package/claude-assets/hooks/cfn-post-execution/memory-cleanup.sh +19 -19
  158. package/claude-assets/hooks/cfn-pre-edit-security-warning.sh +40 -0
  159. package/claude-assets/hooks/cfn-pre-execution/memory-check.sh +19 -19
  160. package/claude-assets/hooks/detect-hardcoded-credentials.sh +212 -0
  161. package/claude-assets/skills/SKILL_TEMPLATE.md +774 -0
  162. package/claude-assets/skills/agent-lifecycle/execute-lifecycle-hook.sh +543 -572
  163. package/claude-assets/skills/agent-lifecycle/simple-audit.sh +57 -30
  164. package/claude-assets/skills/agent-template-generator/SKILL.md +440 -0
  165. package/claude-assets/skills/agent-template-generator/generate-agent.sh +405 -0
  166. package/claude-assets/skills/agent-validation-linter/SKILL.md +589 -0
  167. package/claude-assets/skills/agent-validation-linter/lint-agents.sh +271 -0
  168. package/claude-assets/skills/bootstrap/bash-fundamentals.md +786 -0
  169. package/claude-assets/skills/bootstrap/database-connection.md +464 -0
  170. package/claude-assets/skills/bootstrap/error-handling.md +580 -0
  171. package/claude-assets/skills/bootstrap/file-operations.md +699 -0
  172. package/claude-assets/skills/bootstrap/skill-loader.md +616 -0
  173. package/claude-assets/skills/bootstrap/sqlite-params.sh +287 -0
  174. package/claude-assets/skills/cfn-agent-spawning/spawn-agent.sh +22 -24
  175. package/claude-assets/skills/cfn-automatic-memory-persistence/persist-agent-output.sh +48 -48
  176. package/claude-assets/skills/cfn-automatic-memory-persistence/query-agent-history.sh +34 -34
  177. package/claude-assets/skills/cfn-automatic-memory-persistence/test-memory-persistence.sh +17 -16
  178. package/claude-assets/skills/cfn-deliverable-validation/confidence-calculator.sh +261 -261
  179. package/claude-assets/skills/cfn-deployment/SKILL.md +293 -0
  180. package/claude-assets/skills/cfn-deployment/execute.sh +21 -0
  181. package/claude-assets/skills/cfn-docker-agent-spawning/SKILL.md +28 -4
  182. package/claude-assets/skills/cfn-docker-agent-spawning/spawn-agent.sh +3 -1
  183. package/claude-assets/skills/cfn-docker-loop-orchestration/orchestrate.sh +224 -20
  184. package/claude-assets/skills/cfn-environment-sanitization/sanitize-environment.sh +38 -0
  185. package/claude-assets/skills/cfn-error-batching-strategy/lib/core-functions.sh +47 -47
  186. package/claude-assets/skills/cfn-expert-update/update-expert.sh +345 -345
  187. package/claude-assets/skills/cfn-file-operations/SKILL.md +290 -0
  188. package/claude-assets/skills/cfn-file-operations/execute.sh +129 -0
  189. package/claude-assets/skills/cfn-file-operations/lib/atomic-write.sh +294 -0
  190. package/claude-assets/skills/cfn-file-operations/lib/lock.sh +361 -0
  191. package/claude-assets/skills/cfn-file-operations/test.sh +369 -0
  192. package/claude-assets/skills/cfn-hybrid-routing/check-dependencies.sh +51 -51
  193. package/claude-assets/skills/cfn-intervention-detector/detect-intervention.sh +110 -110
  194. package/claude-assets/skills/cfn-intervention-orchestrator/execute-intervention.sh +58 -58
  195. package/claude-assets/skills/cfn-log-operations/SKILL.md +308 -0
  196. package/claude-assets/skills/cfn-log-operations/execute.sh +420 -0
  197. package/claude-assets/skills/cfn-log-operations/lib/rotate.sh +406 -0
  198. package/claude-assets/skills/cfn-log-operations/lib/search.sh +448 -0
  199. package/claude-assets/skills/cfn-log-operations/test.sh +394 -0
  200. package/claude-assets/skills/cfn-loop-orchestration/helpers/gate-check.sh +550 -46
  201. package/claude-assets/skills/cfn-loop-orchestration/helpers/parse-test-results.sh +277 -0
  202. package/claude-assets/skills/cfn-loop-orchestration/orchestrate.sh +184 -23
  203. package/claude-assets/skills/cfn-loop-orchestration/security_utils.sh +24 -0
  204. package/claude-assets/skills/cfn-loop-orchestration/test-iteration-context-injection.sh +366 -0
  205. package/claude-assets/skills/cfn-loop-validation/orchestrate-cfn-loop.sh +252 -252
  206. package/claude-assets/skills/cfn-loop2-output-processing/process-validator-output.sh +275 -275
  207. package/claude-assets/skills/cfn-memory-management/check-memory.sh +159 -159
  208. package/claude-assets/skills/cfn-memory-management/cleanup-memory.sh +196 -196
  209. package/claude-assets/skills/cfn-node-heap-sizer/task-mode-heap-limiter.sh +325 -325
  210. package/claude-assets/skills/cfn-parameterized-queries/SKILL.md +339 -0
  211. package/claude-assets/skills/cfn-playbook/query-playbook.sh +19 -15
  212. package/claude-assets/skills/cfn-playbook/update-playbook.sh +25 -14
  213. package/claude-assets/skills/cfn-playbook-auto-update/auto-update-playbook.sh +85 -85
  214. package/claude-assets/skills/cfn-process-instrumentation/instrument-process.sh +44 -0
  215. package/claude-assets/skills/cfn-promotion/SKILL.md +305 -0
  216. package/claude-assets/skills/cfn-redis-coordination/CENTRALIZED_REDIS_WRAPPER.md +319 -0
  217. package/claude-assets/skills/cfn-redis-coordination/agent-log.sh +4 -0
  218. package/claude-assets/skills/cfn-redis-coordination/agent-log.sh.bak +124 -0
  219. package/claude-assets/skills/cfn-redis-coordination/agent-recovery.sh +74 -74
  220. package/claude-assets/skills/cfn-redis-coordination/collect-confidence-scores.sh +30 -0
  221. package/claude-assets/skills/cfn-redis-coordination/get-context.sh +145 -112
  222. package/claude-assets/skills/cfn-redis-coordination/get-success-criteria.sh +54 -0
  223. package/claude-assets/skills/cfn-redis-coordination/invoke-waiting-mode.sh +3 -0
  224. package/claude-assets/skills/cfn-redis-coordination/redis-cli-wrapper.sh +24 -3
  225. package/claude-assets/skills/cfn-redis-coordination/redis-functions.sh +33 -0
  226. package/claude-assets/skills/cfn-redis-coordination/report-completion.sh +24 -31
  227. package/claude-assets/skills/cfn-redis-coordination/store-context.sh +4 -0
  228. package/claude-assets/skills/cfn-redis-coordination/store-success-criteria.sh +85 -0
  229. package/claude-assets/skills/cfn-redis-coordination/update-all-scripts.sh +67 -0
  230. package/claude-assets/skills/cfn-scope-simplifier/simplify-scope.sh +67 -67
  231. package/claude-assets/skills/cfn-skill-loader/SKILL.md +466 -0
  232. package/claude-assets/skills/cfn-skill-loader/execute.sh +344 -0
  233. package/claude-assets/skills/cfn-specialist-injection/recommend-specialist.sh +56 -56
  234. package/claude-assets/skills/cfn-sqlite-memory/ttl-cleanup.sh +17 -25
  235. package/claude-assets/skills/cfn-standardized-error-handling/capture-agent-error.sh +86 -86
  236. package/claude-assets/skills/cfn-standardized-error-handling/test-error-handling.sh +165 -165
  237. package/claude-assets/skills/cfn-task-audit/get-audit-data.sh +42 -21
  238. package/claude-assets/skills/cfn-task-audit/store-task-audit.sh +17 -10
  239. package/claude-assets/skills/cfn-task-config-init/initialize-config.sh +264 -264
  240. package/claude-assets/skills/cfn-task-decomposition/task-decomposer.sh +278 -278
  241. package/claude-assets/skills/cfn-test-runner/detect-regressions.sh +17 -14
  242. package/claude-assets/skills/cfn-test-runner/detect-regressions.sh.backup-1763392821 +55 -0
  243. package/claude-assets/skills/cfn-test-runner/store-benchmarks.sh +17 -19
  244. package/claude-assets/skills/cfn-transparency-middleware/middleware-config.sh +28 -28
  245. package/claude-assets/skills/cfn-transparency-middleware/performance-benchmark.sh +78 -78
  246. package/claude-assets/skills/cfn-transparency-middleware/test-e2e.sh +15 -0
  247. package/claude-assets/skills/cfn-transparency-middleware/test-integration.sh +161 -161
  248. package/claude-assets/skills/cfn-transparency-middleware/test-transparency-skill.sh +367 -367
  249. package/claude-assets/skills/cfn-transparency-middleware/tests/input-validation.sh +107 -92
  250. package/claude-assets/skills/cfn-transparency-middleware/wrap-agent.sh +131 -131
  251. package/claude-assets/skills/cfn-utilities/SKILL.md +237 -0
  252. package/claude-assets/skills/cfn-utilities/execute.sh +32 -0
  253. package/claude-assets/skills/cfn-utilities/lib/errors.sh +56 -0
  254. package/claude-assets/skills/cfn-utilities/lib/file-ops.sh +164 -0
  255. package/claude-assets/skills/cfn-utilities/lib/logging.sh +77 -0
  256. package/claude-assets/skills/cfn-utilities/lib/retry.sh +127 -0
  257. package/claude-assets/skills/cfn-utilities/test.sh +317 -0
  258. package/claude-assets/skills/docker-build/SKILL.md +96 -203
  259. package/claude-assets/skills/docker-build/build.sh +73 -73
  260. package/claude-assets/skills/integration/agent-handoff.sh +492 -0
  261. package/claude-assets/skills/integration/file-operations.sh +414 -0
  262. package/claude-assets/skills/json-validation/SKILL.md +431 -0
  263. package/claude-assets/skills/json-validation/test-validate-success-criteria.sh +421 -0
  264. package/claude-assets/skills/json-validation/validate-success-criteria.sh +197 -0
  265. package/claude-assets/skills/redis-coordination/validate-parameters.sh +34 -0
  266. package/claude-assets/skills/workflow-codification/APPROVAL_WORKFLOW.md +806 -0
  267. package/claude-assets/skills/workflow-codification/COST_TRACKING.md +637 -0
  268. package/claude-assets/skills/workflow-codification/DEPLOY_QUICK_REFERENCE.md +106 -0
  269. package/claude-assets/skills/workflow-codification/EDGE_CASE_TRACKING.md +404 -0
  270. package/claude-assets/skills/workflow-codification/PROPAGATE_UPDATE_QUICK_REFERENCE.md +366 -0
  271. package/claude-assets/skills/workflow-codification/README_PHASE4.md +457 -0
  272. package/claude-assets/skills/workflow-codification/SKILL.md +110 -0
  273. package/claude-assets/skills/workflow-codification/analyze-patterns.sh +899 -0
  274. package/claude-assets/skills/workflow-codification/approval-workflow.sh +514 -0
  275. package/claude-assets/skills/workflow-codification/deploy-approved-skill.sh +481 -0
  276. package/claude-assets/skills/workflow-codification/deploy-approved-skill.sh.backup-1763392820 +512 -0
  277. package/claude-assets/skills/workflow-codification/generate-skill-update.sh +525 -0
  278. package/claude-assets/skills/workflow-codification/lib/security-utils.sh +204 -0
  279. package/claude-assets/skills/workflow-codification/propagate-skill-update.sh +648 -0
  280. package/claude-assets/skills/workflow-codification/propagate-skill-update.sh.backup-1763392820 +664 -0
  281. package/claude-assets/skills/workflow-codification/review-skill.sh +643 -0
  282. package/claude-assets/skills/workflow-codification/templates/email-notification.txt +114 -0
  283. package/claude-assets/skills/workflow-codification/templates/slack-notification.md +85 -0
  284. package/claude-assets/skills/workflow-codification/test-integration.sh +296 -0
  285. package/claude-assets/skills/workflow-codification/test-metadata-update.sh +350 -0
  286. package/claude-assets/skills/workflow-codification/track-cost-savings.sh +486 -0
  287. package/claude-assets/skills/workflow-codification/track-cost-savings.sh.backup-1763392821 +445 -0
  288. package/claude-assets/skills/workflow-codification/track-edge-case.sh +290 -0
  289. package/claude-assets/skills/workflow-codification/workflow-codification.db +0 -0
  290. package/dist/ace/ace-curator.js +10 -2
  291. package/dist/ace/ace-curator.js.map +1 -1
  292. package/dist/ace/ace-generator.js +4 -0
  293. package/dist/ace/ace-generator.js.map +1 -1
  294. package/dist/ace/ace-reflector.js +1 -1
  295. package/dist/ace/ace-reflector.js.map +1 -1
  296. package/dist/ace/context-injection.js +24 -2
  297. package/dist/ace/context-injection.js.map +1 -1
  298. package/dist/agents/agent-loader.js +146 -165
  299. package/dist/agents/agent-loader.js.map +1 -1
  300. package/dist/agents/task-agent-integration.js +1 -1
  301. package/dist/agents/task-agent-integration.js.map +1 -1
  302. package/dist/api/health-endpoints.js +390 -0
  303. package/dist/api/health-endpoints.js.map +1 -0
  304. package/dist/cli/agent-executor.js +4 -1
  305. package/dist/cli/agent-executor.js.map +1 -1
  306. package/dist/cli/agent-prompt-builder.js +89 -1
  307. package/dist/cli/agent-prompt-builder.js.map +1 -1
  308. package/dist/cli/agent-spawn.js +130 -37
  309. package/dist/cli/agent-spawn.js.map +1 -1
  310. package/dist/cli/config-manager.js +91 -109
  311. package/dist/cli/config-manager.js.map +1 -1
  312. package/dist/cli/skill-cache-validator.js +412 -0
  313. package/dist/cli/skill-cache-validator.js.map +1 -0
  314. package/dist/cli/skill-cli.js +991 -0
  315. package/dist/cli/skill-cli.js.map +1 -0
  316. package/dist/cli/skill-execution-logger.js +284 -0
  317. package/dist/cli/skill-execution-logger.js.map +1 -0
  318. package/dist/cli/skill-loader.js +457 -0
  319. package/dist/cli/skill-loader.js.map +1 -0
  320. package/dist/coordination/event-bus.js +2 -2
  321. package/dist/coordination/event-bus.js.map +1 -1
  322. package/dist/coordination/fleet-manager.js +1 -1
  323. package/dist/coordination/fleet-manager.js.map +1 -1
  324. package/dist/coordination/index.js +23 -9
  325. package/dist/coordination/index.js.map +1 -1
  326. package/dist/coordination/types/fleet-manager.types.js.map +1 -1
  327. package/dist/db/migration-manager.js +483 -0
  328. package/dist/db/migration-manager.js.map +1 -0
  329. package/dist/db/skills-query.js +535 -0
  330. package/dist/db/skills-query.js.map +1 -0
  331. package/dist/integration/DatabaseHandoff.js +507 -0
  332. package/dist/integration/DatabaseHandoff.js.map +1 -0
  333. package/dist/integration/StandardAdapter.js +291 -0
  334. package/dist/integration/StandardAdapter.js.map +1 -0
  335. package/dist/jobs/edge-case-analyzer.js +367 -0
  336. package/dist/jobs/edge-case-analyzer.js.map +1 -0
  337. package/dist/jobs/promotion-sla-enforcer.js +288 -0
  338. package/dist/jobs/promotion-sla-enforcer.js.map +1 -0
  339. package/dist/lib/agent-output-parser.js +518 -0
  340. package/dist/lib/agent-output-parser.js.map +1 -0
  341. package/dist/lib/agent-output-validator.js +950 -0
  342. package/dist/lib/agent-output-validator.js.map +1 -0
  343. package/dist/lib/agent-workspace.js +281 -0
  344. package/dist/lib/agent-workspace.js.map +1 -0
  345. package/dist/lib/artifact-registry.js +443 -0
  346. package/dist/lib/artifact-registry.js.map +1 -0
  347. package/dist/lib/atomic-file-writer.js +377 -0
  348. package/dist/lib/atomic-file-writer.js.map +1 -0
  349. package/dist/lib/backup-manager.js +779 -0
  350. package/dist/lib/backup-manager.js.map +1 -0
  351. package/dist/lib/checkpoint-manager.js +837 -0
  352. package/dist/lib/checkpoint-manager.js.map +1 -0
  353. package/dist/lib/circuit-breaker.js +340 -0
  354. package/dist/lib/circuit-breaker.js.map +1 -0
  355. package/dist/lib/completion-signal-handler.js +243 -0
  356. package/dist/lib/completion-signal-handler.js.map +1 -0
  357. package/dist/lib/config-manager.js +312 -0
  358. package/dist/lib/config-manager.js.map +1 -0
  359. package/dist/lib/config-migrator.js +386 -0
  360. package/dist/lib/config-migrator.js.map +1 -0
  361. package/dist/lib/config-validator.js +687 -0
  362. package/dist/lib/config-validator.js.map +1 -0
  363. package/dist/lib/correlation-cache.js +311 -0
  364. package/dist/lib/correlation-cache.js.map +1 -0
  365. package/dist/lib/correlation.js +263 -0
  366. package/dist/lib/correlation.js.map +1 -0
  367. package/dist/lib/database-service/connection-pool-manager.js +520 -0
  368. package/dist/lib/database-service/connection-pool-manager.js.map +1 -0
  369. package/dist/lib/database-service/correlation.js +329 -0
  370. package/dist/lib/database-service/correlation.js.map +1 -0
  371. package/dist/lib/database-service/errors.js +120 -0
  372. package/dist/lib/database-service/errors.js.map +1 -0
  373. package/dist/lib/database-service/index.js +168 -0
  374. package/dist/lib/database-service/index.js.map +1 -0
  375. package/dist/lib/database-service/postgres-adapter.js +526 -0
  376. package/dist/lib/database-service/postgres-adapter.js.map +1 -0
  377. package/dist/lib/database-service/redis-adapter.js +360 -0
  378. package/dist/lib/database-service/redis-adapter.js.map +1 -0
  379. package/dist/lib/database-service/sqlite-adapter.js +544 -0
  380. package/dist/lib/database-service/sqlite-adapter.js.map +1 -0
  381. package/dist/lib/database-service/transaction-manager.js +773 -0
  382. package/dist/lib/database-service/transaction-manager.js.map +1 -0
  383. package/dist/lib/database-service/types.js +23 -0
  384. package/dist/lib/database-service/types.js.map +1 -0
  385. package/dist/lib/deadlock-resolver.js +292 -0
  386. package/dist/lib/deadlock-resolver.js.map +1 -0
  387. package/dist/lib/distributed-lock.js +451 -0
  388. package/dist/lib/distributed-lock.js.map +1 -0
  389. package/dist/lib/edge-case-deduplicator.js +227 -0
  390. package/dist/lib/edge-case-deduplicator.js.map +1 -0
  391. package/dist/lib/encryption-manager.js +322 -0
  392. package/dist/lib/encryption-manager.js.map +1 -0
  393. package/dist/lib/error-aggregator.js +234 -0
  394. package/dist/lib/error-aggregator.js.map +1 -0
  395. package/dist/lib/errors.js +287 -0
  396. package/dist/lib/errors.js.map +1 -0
  397. package/dist/lib/file-lock-manager.js +578 -0
  398. package/dist/lib/file-lock-manager.js.map +1 -0
  399. package/dist/lib/file-operations.js +367 -0
  400. package/dist/lib/file-operations.js.map +1 -0
  401. package/dist/lib/idempotent-write.js +237 -0
  402. package/dist/lib/idempotent-write.js.map +1 -0
  403. package/dist/lib/integration-schema-validator.js +522 -0
  404. package/dist/lib/integration-schema-validator.js.map +1 -0
  405. package/dist/lib/lock-health-monitor.js +298 -0
  406. package/dist/lib/lock-health-monitor.js.map +1 -0
  407. package/dist/lib/log-shipper.js +422 -0
  408. package/dist/lib/log-shipper.js.map +1 -0
  409. package/dist/lib/logging.js +146 -0
  410. package/dist/lib/logging.js.map +1 -0
  411. package/dist/lib/message-deduplicator.js +439 -0
  412. package/dist/lib/message-deduplicator.js.map +1 -0
  413. package/dist/lib/multi-system-query.js +604 -0
  414. package/dist/lib/multi-system-query.js.map +1 -0
  415. package/dist/lib/orphan-detector.js +332 -0
  416. package/dist/lib/orphan-detector.js.map +1 -0
  417. package/dist/lib/password-generator.js +166 -0
  418. package/dist/lib/password-generator.js.map +1 -0
  419. package/dist/lib/path-validator.js +429 -0
  420. package/dist/lib/path-validator.js.map +1 -0
  421. package/dist/lib/query-translator.js +905 -0
  422. package/dist/lib/query-translator.js.map +1 -0
  423. package/dist/lib/queue-recovery.js +469 -0
  424. package/dist/lib/queue-recovery.js.map +1 -0
  425. package/dist/lib/redis-queue-manager.js +512 -0
  426. package/dist/lib/redis-queue-manager.js.map +1 -0
  427. package/dist/lib/reflection-archiver.js +272 -0
  428. package/dist/lib/reflection-archiver.js.map +1 -0
  429. package/dist/lib/retry-manager.js +453 -0
  430. package/dist/lib/retry-manager.js.map +1 -0
  431. package/dist/lib/retry.js +262 -0
  432. package/dist/lib/retry.js.map +1 -0
  433. package/dist/lib/schema-transform.js +695 -0
  434. package/dist/lib/schema-transform.js.map +1 -0
  435. package/dist/lib/schema-validator.js +491 -0
  436. package/dist/lib/schema-validator.js.map +1 -0
  437. package/dist/lib/skill-cache.js +297 -0
  438. package/dist/lib/skill-cache.js.map +1 -0
  439. package/dist/lib/skill-content-manager.js +337 -0
  440. package/dist/lib/skill-content-manager.js.map +1 -0
  441. package/dist/lib/skill-frontmatter-parser.js +237 -0
  442. package/dist/lib/skill-frontmatter-parser.js.map +1 -0
  443. package/dist/lib/skill-git-integration.js +275 -0
  444. package/dist/lib/skill-git-integration.js.map +1 -0
  445. package/dist/lib/skill-markdown-validator.js +396 -0
  446. package/dist/lib/skill-markdown-validator.js.map +1 -0
  447. package/dist/lib/skill-output-parser.js +312 -0
  448. package/dist/lib/skill-output-parser.js.map +1 -0
  449. package/dist/lib/unified-query-api.js +467 -0
  450. package/dist/lib/unified-query-api.js.map +1 -0
  451. package/dist/middleware/auth-middleware.js +350 -0
  452. package/dist/middleware/auth-middleware.js.map +1 -0
  453. package/dist/middleware/schema-validation.js +347 -0
  454. package/dist/middleware/schema-validation.js.map +1 -0
  455. package/dist/providers/anthropic-provider.js +1 -1
  456. package/dist/providers/anthropic-provider.js.map +1 -1
  457. package/dist/providers/provider-factory.js +2 -2
  458. package/dist/providers/provider-factory.js.map +1 -1
  459. package/dist/services/edge-case-analyzer.js +321 -0
  460. package/dist/services/edge-case-analyzer.js.map +1 -0
  461. package/dist/services/edge-case-deduplicator.js +266 -0
  462. package/dist/services/edge-case-deduplicator.js.map +1 -0
  463. package/dist/services/edge-case-detector.js +337 -0
  464. package/dist/services/edge-case-detector.js.map +1 -0
  465. package/dist/services/edge-case-tracker.js +547 -0
  466. package/dist/services/edge-case-tracker.js.map +1 -0
  467. package/dist/services/health-check-system.js +586 -0
  468. package/dist/services/health-check-system.js.map +1 -0
  469. package/dist/services/metrics-logger.js +412 -0
  470. package/dist/services/metrics-logger.js.map +1 -0
  471. package/dist/services/patch-generator.js +378 -0
  472. package/dist/services/patch-generator.js.map +1 -0
  473. package/dist/services/patch-validator.js +337 -0
  474. package/dist/services/patch-validator.js.map +1 -0
  475. package/dist/services/performance-monitor.js +811 -0
  476. package/dist/services/performance-monitor.js.map +1 -0
  477. package/dist/services/promotion-pipeline.js +918 -0
  478. package/dist/services/promotion-pipeline.js.map +1 -0
  479. package/dist/services/promotion-validator.js +394 -0
  480. package/dist/services/promotion-validator.js.map +1 -0
  481. package/dist/services/reflection-logger.js +388 -0
  482. package/dist/services/reflection-logger.js.map +1 -0
  483. package/dist/services/skill-deployment.js +472 -0
  484. package/dist/services/skill-deployment.js.map +1 -0
  485. package/dist/services/skill-loader.js +427 -0
  486. package/dist/services/skill-loader.js.map +1 -0
  487. package/dist/services/skill-promotion.js +372 -0
  488. package/dist/services/skill-promotion.js.map +1 -0
  489. package/dist/services/skill-validator.js +454 -0
  490. package/dist/services/skill-validator.js.map +1 -0
  491. package/dist/services/skill-versioning.js +244 -0
  492. package/dist/services/skill-versioning.js.map +1 -0
  493. package/dist/services/workspace-supervisor.js +597 -0
  494. package/dist/services/workspace-supervisor.js.map +1 -0
  495. package/dist/types/agent-output.js +44 -0
  496. package/dist/types/agent-output.js.map +1 -0
  497. package/dist/types/config.js +28 -0
  498. package/dist/types/config.js.map +1 -0
  499. package/dist/types/edge-case.js +45 -0
  500. package/dist/types/edge-case.js.map +1 -0
  501. package/package.json +201 -176
  502. package/readme/README.md +19 -4
  503. package/scripts/artifact-cleanup.sh +392 -0
  504. package/scripts/backup-cleanup.sh +627 -0
  505. package/scripts/cleanup-workspaces.sh +412 -0
  506. package/scripts/cleanup-yaml-configs.sh +141 -0
  507. package/scripts/deploy-approved-skills.sh +263 -0
  508. package/scripts/deploy-production.sh +355 -355
  509. package/scripts/docker-playwright-fix.sh +311 -311
  510. package/scripts/docker-rebuild-all-agents.sh +127 -127
  511. package/scripts/health-check.sh +447 -0
  512. package/scripts/log-aggregator.sh +554 -0
  513. package/scripts/log-monitor.sh +629 -0
  514. package/scripts/manage-agent-workspaces.sh +434 -0
  515. package/scripts/memory-leak-prevention.sh +305 -305
  516. package/scripts/migrate-artifacts.sh +563 -0
  517. package/scripts/migrate-schema.sh +533 -0
  518. package/scripts/migrate-yaml-to-json.sh +465 -0
  519. package/scripts/promote-staged-skills.sh +423 -0
  520. package/scripts/run-marketing-tests.sh +42 -42
  521. package/scripts/update_paths.sh +46 -46
  522. package/scripts/verify-no-secrets.sh +88 -35
  523. package/.claude/cfn-extras/agents/deprecated-coordinators/adaptive-coordinator.md.backup +0 -161
  524. package/.claude/cfn-extras/agents/deprecated-coordinators/blocking-coordinator-example.md.backup +0 -728
  525. package/.claude/cfn-extras/agents/deprecated-coordinators/mesh-coordinator.md.backup +0 -131
  526. package/.claude/skills/cfn-agent-spawning/spawn-agent.sh.backup +0 -273
  527. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh.backup +0 -949
  528. package/README.md.backup_before_replace +0 -781
  529. package/claude-assets/cfn-extras/agents/deprecated-coordinators/adaptive-coordinator.md.backup +0 -161
  530. package/claude-assets/cfn-extras/agents/deprecated-coordinators/blocking-coordinator-example.md.backup +0 -728
  531. package/claude-assets/cfn-extras/agents/deprecated-coordinators/mesh-coordinator.md.backup +0 -131
  532. package/claude-assets/skills/cfn-agent-spawning/spawn-agent.sh.backup +0 -273
  533. package/claude-assets/skills/cfn-loop-orchestration/orchestrate.sh.backup +0 -949
@@ -0,0 +1,61 @@
1
+ #!/bin/bash
2
+ # SQL Injection Linting Script
3
+ # Detects vulnerable SQL query patterns in shell scripts
4
+ # Part of SEC-003 SQL injection prevention
5
+
6
+ set -euo pipefail
7
+
8
+ # Check if file provided
9
+ if [[ $# -eq 0 ]]; then
10
+ echo "Usage: $0 <file_path>" >&2
11
+ exit 1
12
+ fi
13
+
14
+ FILE_PATH="$1"
15
+
16
+ if [[ ! -f "$FILE_PATH" ]]; then
17
+ echo "ERROR: File not found: $FILE_PATH" >&2
18
+ exit 1
19
+ fi
20
+
21
+ # Skip non-shell scripts
22
+ if [[ ! "$FILE_PATH" =~ \.sh$ ]]; then
23
+ exit 0
24
+ fi
25
+
26
+ # Detect vulnerable patterns
27
+ VULNERABLE_PATTERNS=(
28
+ 'sqlite3.*["\047].*\$[A-Za-z_]' # Direct variable interpolation in SQL strings
29
+ 'sqlite3.*".*WHERE.*=.*\$' # WHERE clauses with direct variables
30
+ 'sqlite3.*".*VALUES.*\$' # INSERT VALUES with direct variables
31
+ 'sqlite3.*".*SET.*\$' # UPDATE SET with direct variables
32
+ )
33
+
34
+ FOUND_ISSUES=0
35
+
36
+ for pattern in "${VULNERABLE_PATTERNS[@]}"; do
37
+ # Exclude safe patterns:
38
+ # - sqlite-params.sh library itself
39
+ # - Comments (lines starting with #)
40
+ # - Heredocs (<<)
41
+ # - Already using sqlite_select/sqlite_insert/sqlite_exec
42
+ matches=$(grep -n -E "$pattern" "$FILE_PATH" | \
43
+ grep -v "sqlite_select\|sqlite_insert\|sqlite_exec" | \
44
+ grep -v "^[[:space:]]*#" | \
45
+ grep -v "<<" || true)
46
+
47
+ if [[ -n "$matches" ]]; then
48
+ echo "VULNERABILITY DETECTED in $FILE_PATH:" >&2
49
+ echo "$matches" >&2
50
+ FOUND_ISSUES=1
51
+ fi
52
+ done
53
+
54
+ if [[ $FOUND_ISSUES -eq 1 ]]; then
55
+ echo "" >&2
56
+ echo "RECOMMENDATION: Use parameterized queries from .claude/skills/bootstrap/sqlite-params.sh" >&2
57
+ echo "Example: sqlite_select \"\$DB\" \"SELECT * FROM table WHERE id = ?1\" \"\$user_input\"" >&2
58
+ exit 1
59
+ fi
60
+
61
+ exit 0
@@ -1,79 +1,110 @@
1
- #!/bin/bash
2
-
3
- # Post-Edit Hook for CFN Retrospective Skills
4
-
5
- # Validate script permissions
6
- validate_script_permissions() {
7
- local script_path="$1"
8
- if [[ ! -x "$script_path" ]]; then
9
- echo "❌ Script is not executable: $script_path"
10
- chmod +x "$script_path" && echo " Made script executable: $script_path"
11
- fi
12
- }
13
-
14
- # Basic JSON validation
15
- validate_json_syntax() {
16
- local file_path="$1"
17
- if ! jq empty "$file_path" >/dev/null 2>&1; then
18
- echo "❌ Invalid JSON syntax in $file_path"
19
- return 1
20
- fi
21
- echo "✅ JSON syntax valid: $file_path"
22
- }
23
-
24
- # Specific validation for retrospective components
25
- validate_retrospective_skills() {
26
- local base_path="/mnt/c/Users/masha/Documents/claude-flow-novice/.claude/skills"
27
- local skills=(
28
- "pattern-extraction/extract-patterns.sh"
29
- "playbook-auto-update/auto-update-playbook.sh"
30
- "improvement-recommender/recommend-improvements.sh"
31
- "retrospective-report/generate-report.sh"
32
- )
33
-
34
- for skill in "${skills[@]}"; do
35
- full_path="${base_path}/${skill}"
36
-
37
- # Validate script permissions
38
- validate_script_permissions "$full_path"
39
-
40
- # Run basic validation for shell scripts
41
- if ! bash -n "$full_path" >/dev/null 2>&1; then
42
- echo "❌ Syntax error in shell script: $skill"
43
- return 1
44
- fi
45
- done
46
-
47
- echo "✅ All retrospective skill scripts validated successfully"
48
- }
49
-
50
- # Validate playbook JSON
51
- validate_playbook() {
52
- local playbook_path="/mnt/c/Users/masha/Documents/claude-flow-novice/docs/PLAYBOOK.json"
53
- validate_json_syntax "$playbook_path"
54
- }
55
-
56
- # Main validation function
57
- main() {
58
- local edited_file="$1"
59
- echo "🔍 Validating edited file: $edited_file"
60
-
61
- # Determine validation based on file path
62
- case "$edited_file" in
63
- *".claude/skills/pattern-extraction"* | \
64
- *".claude/skills/playbook-auto-update"* | \
65
- *".claude/skills/improvement-recommender"* | \
66
- *".claude/skills/retrospective-report"* | \
67
- */PLAYBOOK.json)
68
- validate_retrospective_skills
69
- validate_playbook
70
- ;;
71
- *)
72
- echo "✅ No specific validation required for this file"
73
- exit 0
74
- ;;
75
- esac
76
- }
77
-
78
- # Run validation
1
+ #!/bin/bash
2
+
3
+ # Post-Edit Hook for CFN Retrospective Skills
4
+
5
+ # Determine PROJECT_ROOT portably
6
+ if [[ -z "$PROJECT_ROOT" ]]; then
7
+ # Resolve script location (handle symlinks)
8
+ SCRIPT_SOURCE="${BASH_SOURCE[0]}"
9
+ if [[ -L "$SCRIPT_SOURCE" ]]; then
10
+ SCRIPT_SOURCE="$(readlink -f "$SCRIPT_SOURCE" 2>/dev/null)" || {
11
+ echo "❌ Failed to resolve symlink for ${BASH_SOURCE[0]}" >&2
12
+ exit 1
13
+ }
14
+ fi
15
+
16
+ # Get script directory
17
+ SCRIPT_DIR="$(dirname "$SCRIPT_SOURCE")"
18
+ if ! cd "$SCRIPT_DIR" 2>/dev/null; then
19
+ echo "❌ Failed to cd to script directory: $SCRIPT_DIR" >&2
20
+ exit 1
21
+ fi
22
+ SCRIPT_DIR="$(pwd)"
23
+
24
+ # Navigate to project root (.claude/hooks -> ../..)
25
+ if ! cd "$SCRIPT_DIR/../.." 2>/dev/null; then
26
+ echo "❌ Failed to navigate to project root from $SCRIPT_DIR" >&2
27
+ exit 1
28
+ fi
29
+
30
+ export PROJECT_ROOT="$(pwd)"
31
+
32
+ # Return to original directory (optional, for safety)
33
+ cd - >/dev/null || true
34
+ fi
35
+
36
+ # Validate script permissions
37
+ validate_script_permissions() {
38
+ local script_path="$1"
39
+ if [[ ! -x "$script_path" ]]; then
40
+ echo "❌ Script is not executable: $script_path"
41
+ chmod +x "$script_path" && echo "✅ Made script executable: $script_path"
42
+ fi
43
+ }
44
+
45
+ # Basic JSON validation
46
+ validate_json_syntax() {
47
+ local file_path="$1"
48
+ if ! jq empty "$file_path" >/dev/null 2>&1; then
49
+ echo "❌ Invalid JSON syntax in $file_path"
50
+ return 1
51
+ fi
52
+ echo "✅ JSON syntax valid: $file_path"
53
+ }
54
+
55
+ # Specific validation for retrospective components
56
+ validate_retrospective_skills() {
57
+ local base_path="${PROJECT_ROOT}/.claude/skills"
58
+ local skills=(
59
+ "pattern-extraction/extract-patterns.sh"
60
+ "playbook-auto-update/auto-update-playbook.sh"
61
+ "improvement-recommender/recommend-improvements.sh"
62
+ "retrospective-report/generate-report.sh"
63
+ )
64
+
65
+ for skill in "${skills[@]}"; do
66
+ full_path="${base_path}/${skill}"
67
+
68
+ # Validate script permissions
69
+ validate_script_permissions "$full_path"
70
+
71
+ # Run basic validation for shell scripts
72
+ if ! bash -n "$full_path" >/dev/null 2>&1; then
73
+ echo "❌ Syntax error in shell script: $skill"
74
+ return 1
75
+ fi
76
+ done
77
+
78
+ echo "✅ All retrospective skill scripts validated successfully"
79
+ }
80
+
81
+ # Validate playbook JSON
82
+ validate_playbook() {
83
+ local playbook_path="${PROJECT_ROOT}/docs/PLAYBOOK.json"
84
+ validate_json_syntax "$playbook_path"
85
+ }
86
+
87
+ # Main validation function
88
+ main() {
89
+ local edited_file="$1"
90
+ echo "🔍 Validating edited file: $edited_file"
91
+
92
+ # Determine validation based on file path
93
+ case "$edited_file" in
94
+ *".claude/skills/pattern-extraction"* | \
95
+ *".claude/skills/playbook-auto-update"* | \
96
+ *".claude/skills/improvement-recommender"* | \
97
+ *".claude/skills/retrospective-report"* | \
98
+ */PLAYBOOK.json)
99
+ validate_retrospective_skills
100
+ validate_playbook
101
+ ;;
102
+ *)
103
+ echo "✅ No specific validation required for this file"
104
+ exit 0
105
+ ;;
106
+ esac
107
+ }
108
+
109
+ # Run validation
79
110
  main "$1"
@@ -1,44 +1,44 @@
1
- {
2
- "enabled": true,
3
- "version": "2.0.0",
4
- "pipeline": "config/hooks/post-edit-pipeline.js",
5
- "triggerOn": ["Edit", "Write", "MultiEdit"],
6
- "fileTypes": [".ts", ".tsx", ".js", ".jsx", ".json", ".md", ".sh", ".bash", ".py", ".rs"],
7
- "blocking": false,
8
- "exitCodes": {
9
- "0": "SUCCESS",
10
- "1": "ERROR",
11
- "2": "SYNTAX_ERROR",
12
- "9": "BASH_VALIDATOR_ERROR",
13
- "10": "BASH_VALIDATOR_WARNING"
14
- },
15
- "redis": {
16
- "enabled": true,
17
- "publishChannel": "swarm:hooks:post-edit",
18
- "memoryKeyPattern": "swarm/{agentId}/hook-results"
19
- },
20
- "logging": {
21
- "enabled": true,
22
- "logFile": ".artifacts/logs/post-edit-pipeline.log",
23
- "includeTimestamp": true,
24
- "verbose": false
25
- },
26
- "validation": {
27
- "typescript": {
28
- "enabled": true,
29
- "noEmit": true,
30
- "skipLibCheck": true
31
- },
32
- "bash": {
33
- "enabled": true,
34
- "validators": ["pipe-safety", "dependency-checker", "line-endings"],
35
- "timeout": 5000
36
- }
37
- },
38
- "feedback": {
39
- "provideSuggestions": true,
40
- "autoFixable": ["LINT_ISSUES"],
41
- "nonBlocking": ["TYPE_WARNING", "LINT_ISSUES", "BASH_VALIDATOR_WARNING"],
42
- "blocking": ["SYNTAX_ERROR", "BASH_VALIDATOR_ERROR"]
43
- }
44
- }
1
+ {
2
+ "enabled": true,
3
+ "version": "2.0.0",
4
+ "pipeline": "config/hooks/post-edit-pipeline.js",
5
+ "triggerOn": ["Edit", "Write", "MultiEdit"],
6
+ "fileTypes": [".ts", ".tsx", ".js", ".jsx", ".json", ".md", ".sh", ".bash", ".py", ".rs"],
7
+ "blocking": false,
8
+ "exitCodes": {
9
+ "0": "SUCCESS",
10
+ "1": "ERROR",
11
+ "2": "SYNTAX_ERROR",
12
+ "9": "BASH_VALIDATOR_ERROR",
13
+ "10": "BASH_VALIDATOR_WARNING"
14
+ },
15
+ "redis": {
16
+ "enabled": true,
17
+ "publishChannel": "swarm:hooks:post-edit",
18
+ "memoryKeyPattern": "swarm/{agentId}/hook-results"
19
+ },
20
+ "logging": {
21
+ "enabled": true,
22
+ "logFile": ".artifacts/logs/post-edit-pipeline.log",
23
+ "includeTimestamp": true,
24
+ "verbose": false
25
+ },
26
+ "validation": {
27
+ "typescript": {
28
+ "enabled": true,
29
+ "noEmit": true,
30
+ "skipLibCheck": true
31
+ },
32
+ "bash": {
33
+ "enabled": true,
34
+ "validators": ["pipe-safety", "dependency-checker", "line-endings"],
35
+ "timeout": 5000
36
+ }
37
+ },
38
+ "feedback": {
39
+ "provideSuggestions": true,
40
+ "autoFixable": ["LINT_ISSUES"],
41
+ "nonBlocking": ["TYPE_WARNING", "LINT_ISSUES", "BASH_VALIDATOR_WARNING"],
42
+ "blocking": ["SYNTAX_ERROR", "BASH_VALIDATOR_ERROR"]
43
+ }
44
+ }
@@ -1,20 +1,20 @@
1
- #!/bin/bash
2
-
3
- # CFN Post-Execution Memory Cleanup Hook
4
- # Automatically cleans up memory resources after CFN operations
5
-
6
- set -euo pipefail
7
-
8
- # Hook configuration
9
- HOOK_SCRIPT_PATH="$(dirname "$0")/memory-cleanup.sh"
10
- MEMORY_MANAGEMENT_SKILL="$(dirname "$0")/../../skills/cfn-memory-management/cleanup-memory.sh"
11
-
12
- # Use the memory management skill if available, otherwise use local fallback
13
- if [[ -f "$MEMORY_MANAGEMENT_SKILL" ]]; then
14
- exec "$MEMORY_MANAGEMENT_SKILL" "$@"
15
- elif [[ -f "$HOOK_SCRIPT_PATH" ]]; then
16
- exec "$HOOK_SCRIPT_PATH" "$@"
17
- else
18
- echo "WARNING: Memory cleanup scripts not found, skipping cleanup"
19
- exit 0
1
+ #!/bin/bash
2
+
3
+ # CFN Post-Execution Memory Cleanup Hook
4
+ # Automatically cleans up memory resources after CFN operations
5
+
6
+ set -euo pipefail
7
+
8
+ # Hook configuration
9
+ HOOK_SCRIPT_PATH="$(dirname "$0")/memory-cleanup.sh"
10
+ MEMORY_MANAGEMENT_SKILL="$(dirname "$0")/../../skills/cfn-memory-management/cleanup-memory.sh"
11
+
12
+ # Use the memory management skill if available, otherwise use local fallback
13
+ if [[ -f "$MEMORY_MANAGEMENT_SKILL" ]]; then
14
+ exec "$MEMORY_MANAGEMENT_SKILL" "$@"
15
+ elif [[ -f "$HOOK_SCRIPT_PATH" ]]; then
16
+ exec "$HOOK_SCRIPT_PATH" "$@"
17
+ else
18
+ echo "WARNING: Memory cleanup scripts not found, skipping cleanup"
19
+ exit 0
20
20
  fi
@@ -0,0 +1,40 @@
1
+ #!/bin/bash
2
+ #
3
+ # Pre-Edit Security Warning Hook
4
+ # Warns security-specialist agents when editing documentation files
5
+ # to remind them about credential redaction requirements
6
+ #
7
+ # Usage: Called automatically by cfn-invoke-pre-edit.sh
8
+ #
9
+
10
+ set -euo pipefail
11
+
12
+ FILE_PATH="${1:-}"
13
+ AGENT_TYPE="${2:-unknown}"
14
+
15
+ # Only warn when editing documentation as security-specialist
16
+ if [[ "$FILE_PATH" == docs/* ]] && [[ "$AGENT_TYPE" == "security-specialist" ]]; then
17
+ echo ""
18
+ echo "⚠️ SECURITY WARNING: Editing documentation as security-specialist"
19
+ echo " ════════════════════════════════════════════════════════════"
20
+ echo ""
21
+ echo " 📋 MANDATORY REDACTION PROTOCOL:"
22
+ echo " • ALWAYS redact sensitive values: API keys, passwords, tokens"
23
+ echo " • Use [REDACTED] or placeholder patterns only"
24
+ echo " • See: docs/templates/SECURITY_AUDIT_TEMPLATE.md"
25
+ echo ""
26
+ echo " ✅ CORRECT:"
27
+ echo " API_KEY=sk-ant-[REDACTED]"
28
+ echo " PASSWORD=[REDACTED]"
29
+ echo " JWT_TOKEN=eyJhbGci[REDACTED]..."
30
+ echo ""
31
+ echo " ❌ WRONG:"
32
+ echo " API_KEY=sk-ant-actual-key-value"
33
+ echo " PASSWORD=actual-password-123"
34
+ echo ""
35
+ echo " 🛡️ Pre-commit hook will BLOCK commits with exposed credentials"
36
+ echo ""
37
+ fi
38
+
39
+ # Exit 0 (non-blocking warning)
40
+ exit 0
@@ -1,20 +1,20 @@
1
- #!/bin/bash
2
-
3
- # CFN Pre-Execution Memory Check Hook
4
- # Automatically checks memory availability before CFN operations
5
-
6
- set -euo pipefail
7
-
8
- # Hook configuration
9
- HOOK_SCRIPT_PATH="$(dirname "$0")/memory-check.sh"
10
- MEMORY_MANAGEMENT_SKILL="$(dirname "$0")/../../skills/cfn-memory-management/check-memory.sh"
11
-
12
- # Use the memory management skill if available, otherwise use local fallback
13
- if [[ -f "$MEMORY_MANAGEMENT_SKILL" ]]; then
14
- exec "$MEMORY_MANAGEMENT_SKILL" "$@"
15
- elif [[ -f "$HOOK_SCRIPT_PATH" ]]; then
16
- exec "$HOOK_SCRIPT_PATH" "$@"
17
- else
18
- echo "WARNING: Memory check scripts not found, proceeding without memory validation"
19
- exit 0
1
+ #!/bin/bash
2
+
3
+ # CFN Pre-Execution Memory Check Hook
4
+ # Automatically checks memory availability before CFN operations
5
+
6
+ set -euo pipefail
7
+
8
+ # Hook configuration
9
+ HOOK_SCRIPT_PATH="$(dirname "$0")/memory-check.sh"
10
+ MEMORY_MANAGEMENT_SKILL="$(dirname "$0")/../../skills/cfn-memory-management/check-memory.sh"
11
+
12
+ # Use the memory management skill if available, otherwise use local fallback
13
+ if [[ -f "$MEMORY_MANAGEMENT_SKILL" ]]; then
14
+ exec "$MEMORY_MANAGEMENT_SKILL" "$@"
15
+ elif [[ -f "$HOOK_SCRIPT_PATH" ]]; then
16
+ exec "$HOOK_SCRIPT_PATH" "$@"
17
+ else
18
+ echo "WARNING: Memory check scripts not found, proceeding without memory validation"
19
+ exit 0
20
20
  fi
@@ -0,0 +1,212 @@
1
+ #!/bin/bash
2
+ #
3
+ # Pre-commit Hook: Detect Hardcoded Credentials
4
+ # Version: 1.0.0
5
+ #
6
+ # This hook prevents accidental commits of hardcoded credentials including:
7
+ # - API keys (Anthropic, Z.ai, OpenRouter, etc)
8
+ # - Database passwords
9
+ # - JWT/Session secrets
10
+ # - Bearer tokens
11
+ # - Private keys
12
+ #
13
+ # Installation:
14
+ # cp .claude/hooks/detect-hardcoded-credentials.sh .git/hooks/pre-commit
15
+ # chmod +x .git/hooks/pre-commit
16
+ #
17
+ # Usage:
18
+ # Runs automatically before every git commit
19
+ # Bypass (NOT RECOMMENDED): git commit --no-verify
20
+ #
21
+ # Exit Codes:
22
+ # 0 = No credentials found (safe to commit)
23
+ # 1 = Credentials detected (commit blocked)
24
+ #
25
+
26
+ set -euo pipefail
27
+
28
+ # Color codes for output
29
+ RED='\033[0;31m'
30
+ YELLOW='\033[1;33m'
31
+ GREEN='\033[0;32m'
32
+ NC='\033[0m' # No Color
33
+
34
+ # Configuration
35
+ EXCLUDE_PATTERNS=(
36
+ "*.example"
37
+ "*.template"
38
+ "docs/"
39
+ "tests/"
40
+ "legacy/"
41
+ "node_modules/"
42
+ ".git/"
43
+ "*.md"
44
+ "tests/fixtures/" # Only exclude test fixtures, not all tests
45
+ "legacy/"
46
+ "node_modules/"
47
+ ".git/"
48
+ # REMOVED: "docs/" exclusion - now validates documentation files
49
+ # REMOVED: "*.md" exclusion - now validates markdown files
50
+ )
51
+
52
+ # High-entropy patterns (likely credentials)
53
+ CREDENTIAL_PATTERNS=(
54
+ # API Keys
55
+ "sk-ant-v1-[a-zA-Z0-9_-]{50,}" # Anthropic keys
56
+ "sk-[a-zA-Z0-9]{20,}" # Generic API keys
57
+ "api_key\s*=\s*['\"][^'\"]{20,}['\"]" # api_key assignments
58
+ "apikey\s*=\s*['\"][^'\"]{20,}['\"]" # apikey assignments
59
+ "API_KEY\s*=\s*['\"][^'\"]{20,}['\"]" # API_KEY assignments
60
+
61
+ # Passwords
62
+ "password\s*=\s*['\"][^'\"]{8,}['\"]" # password assignments
63
+ "passwd\s*=\s*['\"][^'\"]{8,}['\"]" # passwd assignments
64
+ "pwd\s*=\s*['\"][^'\"]{8,}['\"]" # pwd assignments
65
+ "PASSWORD\s*=\s*['\"][^'\"]{8,}['\"]" # PASSWORD assignments
66
+
67
+ # Database credentials
68
+ "POSTGRES_PASSWORD\s*=\s*['\"][^'\"]{8,}['\"]" # PostgreSQL password
69
+ "MYSQL_PASSWORD\s*=\s*['\"][^'\"]{8,}['\"]" # MySQL password
70
+ "MONGO_PASSWORD\s*=\s*['\"][^'\"]{8,}['\"]" # MongoDB password
71
+ "DB_PASSWORD\s*=\s*['\"][^'\"]{8,}['\"]" # Generic DB password
72
+ "REDIS_PASSWORD\s*=\s*['\"][^'\"]{8,}['\"]" # Redis password
73
+
74
+ # Tokens & Secrets
75
+ "token\s*=\s*['\"][^'\"]{20,}['\"]" # token assignments
76
+ "secret\s*=\s*['\"][^'\"]{20,}['\"]" # secret assignments
77
+ "jwt\s*=\s*['\"][^'\"]{20,}['\"]" # JWT assignments
78
+ "Bearer\s+[a-zA-Z0-9_.-]{20,}" # Bearer tokens
79
+
80
+ # AWS Credentials
81
+ "AKIA[0-9A-Z]\{16\}" # AWS Access Key ID
82
+ "aws_access_key_id\s*=\s*[^[:space:]]+" # AWS key assignment
83
+ "aws_secret_access_key\s*=\s*[^[:space:]]+" # AWS secret assignment
84
+
85
+ # Private Keys
86
+ "-----BEGIN PRIVATE KEY-----" # PEM private key start
87
+ "-----BEGIN RSA PRIVATE KEY-----" # RSA private key start
88
+ "-----BEGIN EC PRIVATE KEY-----" # EC private key start
89
+ )
90
+
91
+ # Build grep pattern
92
+ PATTERN=""
93
+ for p in "${CREDENTIAL_PATTERNS[@]}"; do
94
+ if [ -z "$PATTERN" ]; then
95
+ PATTERN="$p"
96
+ else
97
+ PATTERN="$PATTERN|$p"
98
+ fi
99
+ done
100
+
101
+ # Build exclude pattern for grep
102
+ EXCLUDE_GREP=""
103
+ for exc in "${EXCLUDE_PATTERNS[@]}"; do
104
+ if [ -z "$EXCLUDE_GREP" ]; then
105
+ EXCLUDE_GREP="--exclude=$exc"
106
+ else
107
+ EXCLUDE_GREP="$EXCLUDE_GREP --exclude=$exc"
108
+ fi
109
+ done
110
+
111
+ # Function to check staged files
112
+ check_staged_files() {
113
+ local found_credentials=0
114
+
115
+ # Get list of staged files
116
+ local staged_files=$(git diff --cached --name-only --diff-filter=ACM 2>/dev/null || echo "")
117
+
118
+ if [ -z "$staged_files" ]; then
119
+ return 0
120
+ fi
121
+
122
+ # Check each staged file
123
+ while IFS= read -r file; do
124
+ # Skip excluded patterns
125
+ local skip=0
126
+ for exc in "${EXCLUDE_PATTERNS[@]}"; do
127
+ if [[ "$file" == $exc ]]; then
128
+ skip=1
129
+ break
130
+ fi
131
+ done
132
+
133
+ if [ $skip -eq 1 ]; then
134
+ continue
135
+ fi
136
+
137
+ # Get staged content
138
+ local staged_content=$(git show ":$file" 2>/dev/null || echo "")
139
+
140
+ # Check for credentials in staged content
141
+ if echo "$staged_content" | grep -E "$PATTERN" >/dev/null 2>&1; then
142
+ echo -e "${RED}[SECURITY] Hardcoded credential detected in: ${NC}$file"
143
+ found_credentials=1
144
+ fi
145
+ done <<< "$staged_files"
146
+
147
+ return $found_credentials
148
+ }
149
+
150
+ # Function to check for dangerous files
151
+ check_dangerous_files() {
152
+ local staged_files=$(git diff --cached --name-only --diff-filter=ACM 2>/dev/null || echo "")
153
+
154
+ if [ -z "$staged_files" ]; then
155
+ return 0
156
+ fi
157
+
158
+ # Check for .env files (should never be committed)
159
+ if echo "$staged_files" | grep -E "^\.(env|env\.production|env\.staging)" >/dev/null; then
160
+ echo -e "${RED}[SECURITY] Attempting to commit .env file (BLOCKED)${NC}"
161
+ echo " Use .env.example instead and add .env to .gitignore"
162
+ return 1
163
+ fi
164
+
165
+ # Check for private key files
166
+ if echo "$staged_files" | grep -E "\.(pem|key|pk|priv)$" >/dev/null; then
167
+ echo -e "${RED}[SECURITY] Attempting to commit private key file (BLOCKED)${NC}"
168
+ echo " Private keys should never be committed to version control"
169
+ return 1
170
+ fi
171
+
172
+ return 0
173
+ }
174
+
175
+ # Main execution
176
+ main() {
177
+ echo -e "${YELLOW}[CREDENTIAL DETECTION] Scanning staged files...${NC}"
178
+
179
+ # Check dangerous file types first
180
+ if ! check_dangerous_files; then
181
+ echo ""
182
+ echo -e "${RED}[SECURITY] Commit blocked: dangerous files detected${NC}"
183
+ echo ""
184
+ echo "How to fix:"
185
+ echo " 1. Add .env to .gitignore: echo '.env' >> .gitignore"
186
+ echo " 2. Remove the file from staging: git reset HEAD <file>"
187
+ echo " 3. Remove from history (if already committed):"
188
+ echo " git filter-branch --tree-filter 'rm -f <file>' HEAD"
189
+ echo ""
190
+ return 1
191
+ fi
192
+
193
+ # Check for hardcoded credentials
194
+ if ! check_staged_files; then
195
+ echo ""
196
+ echo -e "${RED}[SECURITY] Commit blocked: hardcoded credentials detected${NC}"
197
+ echo ""
198
+ echo "How to fix:"
199
+ echo " 1. Remove hardcoded values: git checkout -- <file>"
200
+ echo " 2. Use environment variables instead"
201
+ echo " 3. Add values to .env.example (without real values)"
202
+ echo " 4. Re-stage the corrected file"
203
+ echo ""
204
+ echo "Reference: docs/CREDENTIAL_MANAGEMENT.md"
205
+ return 1
206
+ fi
207
+
208
+ echo -e "${GREEN}[CREDENTIAL DETECTION] ✓ No credentials detected${NC}"
209
+ return 0
210
+ }
211
+
212
+ main "$@"