claude-flow-novice 2.15.3 → 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 (461) 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-lint-sql-injection.sh +61 -0
  36. package/.claude/hooks/cfn-post-edit-cfn-retrospective.sh +33 -2
  37. package/.claude/hooks/cfn-pre-edit-security-warning.sh +40 -0
  38. package/.claude/skills/cfn-agent-spawning/spawn-agent.sh +22 -24
  39. package/.claude/skills/cfn-docker-agent-spawning/SKILL.md +28 -4
  40. package/.claude/skills/cfn-docker-agent-spawning/spawn-agent.sh +3 -1
  41. package/.claude/skills/cfn-docker-loop-orchestration/orchestrate.sh +224 -20
  42. package/.claude/skills/cfn-loop-orchestration/helpers/gate-check.sh +550 -46
  43. package/.claude/skills/cfn-loop-orchestration/helpers/parse-test-results.sh +277 -0
  44. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh +184 -23
  45. package/.claude/skills/cfn-loop-orchestration/security_utils.sh +24 -0
  46. package/.claude/skills/cfn-loop-orchestration/test-iteration-context-injection.sh +366 -0
  47. package/.claude/skills/cfn-redis-coordination/CENTRALIZED_REDIS_WRAPPER.md +319 -0
  48. package/.claude/skills/cfn-redis-coordination/agent-log.sh +4 -0
  49. package/.claude/skills/cfn-redis-coordination/agent-log.sh.bak +124 -0
  50. package/.claude/skills/cfn-redis-coordination/agent-recovery.sh +2 -2
  51. package/.claude/skills/cfn-redis-coordination/collect-confidence-scores.sh +30 -0
  52. package/.claude/skills/cfn-redis-coordination/get-context.sh +33 -0
  53. package/.claude/skills/cfn-redis-coordination/get-success-criteria.sh +54 -0
  54. package/.claude/skills/cfn-redis-coordination/invoke-waiting-mode.sh +3 -0
  55. package/.claude/skills/cfn-redis-coordination/redis-cli-wrapper.sh +24 -3
  56. package/.claude/skills/cfn-redis-coordination/redis-functions.sh +33 -0
  57. package/.claude/skills/cfn-redis-coordination/report-completion.sh +24 -31
  58. package/.claude/skills/cfn-redis-coordination/store-context.sh +4 -0
  59. package/.claude/skills/cfn-redis-coordination/store-success-criteria.sh +85 -0
  60. package/.claude/skills/cfn-redis-coordination/update-all-scripts.sh +67 -0
  61. package/.claude/skills/cfn-sqlite-memory/ttl-cleanup.sh +17 -25
  62. package/.claude/skills/cfn-transparency-middleware/test-e2e.sh +15 -0
  63. package/.claude/skills/cfn-transparency-middleware/tests/input-validation.sh +15 -0
  64. package/README.md +116 -475
  65. package/claude-assets/agents/cfn-dev-team/README.md +103 -0
  66. package/claude-assets/agents/cfn-dev-team/architecture/goal-planner.md +1 -1
  67. package/claude-assets/agents/cfn-dev-team/coordinators/cfn-frontend-coordinator.md +77 -15
  68. package/claude-assets/agents/cfn-dev-team/coordinators/cfn-v3-coordinator.md +355 -6
  69. package/claude-assets/agents/cfn-dev-team/coordinators/consensus-builder.md +82 -1
  70. package/claude-assets/agents/cfn-dev-team/coordinators/handoff-coordinator.md +82 -1
  71. package/claude-assets/agents/cfn-dev-team/coordinators/multi-sprint-coordinator.md +77 -15
  72. package/claude-assets/agents/cfn-dev-team/dev-ops/docker-specialist.md +99 -12
  73. package/claude-assets/agents/cfn-dev-team/dev-ops/github-commit-agent.md +1 -1
  74. package/claude-assets/agents/cfn-dev-team/dev-ops/kubernetes-specialist.md +97 -0
  75. package/claude-assets/agents/cfn-dev-team/dev-ops/monitoring-specialist.md +20 -1
  76. package/claude-assets/agents/cfn-dev-team/developers/api-gateway-specialist.md +97 -0
  77. package/claude-assets/agents/cfn-dev-team/developers/backend-developer.md +110 -13
  78. package/claude-assets/agents/cfn-dev-team/developers/data/data-engineer.md +106 -15
  79. package/claude-assets/agents/cfn-dev-team/developers/database/database-architect.md +115 -11
  80. package/claude-assets/agents/cfn-dev-team/developers/frontend/mobile-dev.md +94 -7
  81. package/claude-assets/agents/cfn-dev-team/developers/frontend/react-frontend-engineer.md +87 -9
  82. package/claude-assets/agents/cfn-dev-team/developers/frontend/typescript-specialist.md +85 -7
  83. package/claude-assets/agents/cfn-dev-team/developers/frontend/ui-designer.md +160 -28
  84. package/claude-assets/agents/cfn-dev-team/developers/graphql-specialist.md +101 -19
  85. package/claude-assets/agents/cfn-dev-team/developers/rust-developer.md +108 -14
  86. package/claude-assets/agents/cfn-dev-team/reviewers/{reviewer.md → code-reviewer.md} +95 -8
  87. package/claude-assets/agents/cfn-dev-team/reviewers/quality/code-quality-validator.md +107 -7
  88. package/claude-assets/agents/cfn-dev-team/reviewers/quality/perf-analyzer.md +98 -7
  89. package/claude-assets/agents/cfn-dev-team/reviewers/quality/performance-benchmarker.md +95 -7
  90. package/claude-assets/agents/cfn-dev-team/reviewers/quality/security-specialist.md +136 -9
  91. package/claude-assets/agents/cfn-dev-team/testers/api-testing-specialist.md +108 -1
  92. package/claude-assets/agents/cfn-dev-team/testers/chaos-engineering-specialist.md +107 -13
  93. package/claude-assets/agents/cfn-dev-team/testers/contract-tester.md +737 -0
  94. package/claude-assets/agents/cfn-dev-team/testers/e2e/playwright-tester.md +1 -1
  95. package/claude-assets/agents/cfn-dev-team/testers/integration-tester.md +828 -0
  96. package/claude-assets/agents/cfn-dev-team/testers/interaction-tester.md +106 -7
  97. package/claude-assets/agents/cfn-dev-team/testers/load-testing-specialist.md +77 -0
  98. package/claude-assets/agents/cfn-dev-team/testers/mutation-testing-specialist.md +684 -0
  99. package/claude-assets/agents/cfn-dev-team/testers/playwright-tester.md +110 -1
  100. package/claude-assets/agents/cfn-dev-team/testers/tester.md +94 -7
  101. package/claude-assets/agents/cfn-dev-team/utility/code-booster.md +1 -3
  102. package/claude-assets/agents/cfn-dev-team/utility/epic-creator.md +87 -13
  103. package/claude-assets/agents/cfn-dev-team/utility/memory-leak-specialist.md +103 -7
  104. package/claude-assets/agents/cfn-dev-team/utility/researcher.md +1 -3
  105. package/claude-assets/agents/cfn-dev-team/utility/z-ai-specialist.md +94 -7
  106. package/claude-assets/agents/docker-coordinators/cfn-docker-v3-coordinator.md +46 -0
  107. package/claude-assets/agents/project-only-agents/npm-package-specialist.md +1 -1
  108. package/claude-assets/cfn-extras/skills/advanced-features/cfn-agent-swap/recommend-swap.sh +59 -59
  109. package/claude-assets/cfn-extras/skills/analytics/cfn-improvement-recommender/recommend-improvements.sh +91 -91
  110. package/claude-assets/cfn-extras/skills/analytics/cfn-pattern-extraction/extract-patterns.sh +79 -79
  111. package/claude-assets/cfn-extras/skills/analytics/cfn-retrospective-report/generate-report.sh +100 -100
  112. package/claude-assets/cfn-extras/skills/analytics/cfn-telemetry/start-telemetry.sh +110 -110
  113. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/add-bullet.sh +145 -145
  114. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/log-merge.sh +67 -67
  115. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/monitor-injection-performance.sh +137 -137
  116. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/optimize-injection-pipeline.sh +168 -168
  117. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/query-reflections.sh +35 -35
  118. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/store-reflection.sh +45 -45
  119. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/track-ab-test.sh +41 -41
  120. package/claude-assets/cfn-extras/skills/deprecated/cfn-ace-system/update-reflection.sh +41 -41
  121. package/claude-assets/cfn-extras/skills/deprecated/cfn-cli-setup/validate-cli-environment.sh +191 -191
  122. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/create-campaign.sh +231 -231
  123. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/get-campaign-performance.sh +190 -190
  124. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/pause-campaign.sh +142 -142
  125. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/set-budget.sh +181 -181
  126. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-ad-campaigns/operations/update-bid-strategy.sh +133 -133
  127. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/get-conversation-history.sh +121 -121
  128. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/qualify-lead.sh +156 -156
  129. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/schedule-demo.sh +181 -181
  130. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/send-message.sh +137 -137
  131. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-chatbot-conversations/operations/transfer-to-human.sh +179 -179
  132. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/create-campaign.sh +183 -183
  133. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/get-delivery-status.sh +139 -139
  134. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/opt-out.sh +150 -150
  135. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/schedule-campaign.sh +187 -187
  136. package/claude-assets/cfn-extras/skills/marketing/cfn-marketing-sms-campaigns/operations/send-sms.sh +181 -181
  137. package/claude-assets/cfn-extras/skills/ui-portal/cfn-web-portal/test-web-portal-skill.sh +50 -50
  138. package/claude-assets/cfn-extras/skills/ui-portal/cfn-web-portal/validate-deployment.sh +84 -84
  139. package/claude-assets/cfn-extras/skills/utility/cfn-environment-sanitization/sanitize-environment.sh +243 -243
  140. package/claude-assets/commands/cfn-loop-cli.md +16 -2
  141. package/claude-assets/commands/switch-api.md +31 -10
  142. package/claude-assets/hooks/cfn-lint-sql-injection.sh +61 -0
  143. package/claude-assets/hooks/cfn-post-edit-cfn-retrospective.sh +33 -2
  144. package/claude-assets/hooks/cfn-pre-edit-security-warning.sh +40 -0
  145. package/claude-assets/hooks/detect-hardcoded-credentials.sh +212 -0
  146. package/claude-assets/skills/SKILL_TEMPLATE.md +774 -0
  147. package/claude-assets/skills/agent-lifecycle/execute-lifecycle-hook.sh +84 -113
  148. package/claude-assets/skills/agent-lifecycle/simple-audit.sh +33 -6
  149. package/claude-assets/skills/agent-template-generator/SKILL.md +440 -0
  150. package/claude-assets/skills/agent-template-generator/generate-agent.sh +405 -0
  151. package/claude-assets/skills/agent-validation-linter/SKILL.md +589 -0
  152. package/claude-assets/skills/agent-validation-linter/lint-agents.sh +271 -0
  153. package/claude-assets/skills/bootstrap/bash-fundamentals.md +786 -0
  154. package/claude-assets/skills/bootstrap/database-connection.md +464 -0
  155. package/claude-assets/skills/bootstrap/error-handling.md +580 -0
  156. package/claude-assets/skills/bootstrap/file-operations.md +699 -0
  157. package/claude-assets/skills/bootstrap/skill-loader.md +616 -0
  158. package/claude-assets/skills/bootstrap/sqlite-params.sh +287 -0
  159. package/claude-assets/skills/cfn-agent-spawning/spawn-agent.sh +22 -24
  160. package/claude-assets/skills/cfn-automatic-memory-persistence/test-memory-persistence.sh +17 -16
  161. package/claude-assets/skills/cfn-deployment/SKILL.md +293 -0
  162. package/claude-assets/skills/cfn-deployment/execute.sh +21 -0
  163. package/claude-assets/skills/cfn-docker-agent-spawning/SKILL.md +28 -4
  164. package/claude-assets/skills/cfn-docker-agent-spawning/spawn-agent.sh +3 -1
  165. package/claude-assets/skills/cfn-docker-loop-orchestration/orchestrate.sh +224 -20
  166. package/claude-assets/skills/cfn-environment-sanitization/sanitize-environment.sh +38 -0
  167. package/claude-assets/skills/cfn-error-batching-strategy/lib/core-functions.sh +47 -47
  168. package/claude-assets/skills/cfn-file-operations/SKILL.md +290 -0
  169. package/claude-assets/skills/cfn-file-operations/execute.sh +129 -0
  170. package/claude-assets/skills/cfn-file-operations/lib/atomic-write.sh +294 -0
  171. package/claude-assets/skills/cfn-file-operations/lib/lock.sh +361 -0
  172. package/claude-assets/skills/cfn-file-operations/test.sh +369 -0
  173. package/claude-assets/skills/cfn-log-operations/SKILL.md +308 -0
  174. package/claude-assets/skills/cfn-log-operations/execute.sh +420 -0
  175. package/claude-assets/skills/cfn-log-operations/lib/rotate.sh +406 -0
  176. package/claude-assets/skills/cfn-log-operations/lib/search.sh +448 -0
  177. package/claude-assets/skills/cfn-log-operations/test.sh +394 -0
  178. package/claude-assets/skills/cfn-loop-orchestration/helpers/gate-check.sh +550 -46
  179. package/claude-assets/skills/cfn-loop-orchestration/helpers/parse-test-results.sh +277 -0
  180. package/claude-assets/skills/cfn-loop-orchestration/orchestrate.sh +184 -23
  181. package/claude-assets/skills/cfn-loop-orchestration/security_utils.sh +24 -0
  182. package/claude-assets/skills/cfn-loop-orchestration/test-iteration-context-injection.sh +366 -0
  183. package/claude-assets/skills/cfn-parameterized-queries/SKILL.md +339 -0
  184. package/claude-assets/skills/cfn-playbook/query-playbook.sh +19 -15
  185. package/claude-assets/skills/cfn-playbook/update-playbook.sh +25 -14
  186. package/claude-assets/skills/cfn-process-instrumentation/instrument-process.sh +44 -0
  187. package/claude-assets/skills/cfn-promotion/SKILL.md +305 -0
  188. package/claude-assets/skills/cfn-redis-coordination/CENTRALIZED_REDIS_WRAPPER.md +319 -0
  189. package/claude-assets/skills/cfn-redis-coordination/agent-log.sh +4 -0
  190. package/claude-assets/skills/cfn-redis-coordination/agent-log.sh.bak +124 -0
  191. package/claude-assets/skills/cfn-redis-coordination/agent-recovery.sh +2 -2
  192. package/claude-assets/skills/cfn-redis-coordination/collect-confidence-scores.sh +30 -0
  193. package/claude-assets/skills/cfn-redis-coordination/get-context.sh +33 -0
  194. package/claude-assets/skills/cfn-redis-coordination/get-success-criteria.sh +54 -0
  195. package/claude-assets/skills/cfn-redis-coordination/invoke-waiting-mode.sh +3 -0
  196. package/claude-assets/skills/cfn-redis-coordination/redis-cli-wrapper.sh +24 -3
  197. package/claude-assets/skills/cfn-redis-coordination/redis-functions.sh +33 -0
  198. package/claude-assets/skills/cfn-redis-coordination/report-completion.sh +24 -31
  199. package/claude-assets/skills/cfn-redis-coordination/store-context.sh +4 -0
  200. package/claude-assets/skills/cfn-redis-coordination/store-success-criteria.sh +85 -0
  201. package/claude-assets/skills/cfn-redis-coordination/update-all-scripts.sh +67 -0
  202. package/claude-assets/skills/cfn-skill-loader/SKILL.md +466 -0
  203. package/claude-assets/skills/cfn-skill-loader/execute.sh +344 -0
  204. package/claude-assets/skills/cfn-sqlite-memory/ttl-cleanup.sh +17 -25
  205. package/claude-assets/skills/cfn-task-audit/get-audit-data.sh +42 -21
  206. package/claude-assets/skills/cfn-task-audit/store-task-audit.sh +17 -10
  207. package/claude-assets/skills/cfn-test-runner/detect-regressions.sh +17 -14
  208. package/claude-assets/skills/cfn-test-runner/detect-regressions.sh.backup-1763392821 +55 -0
  209. package/claude-assets/skills/cfn-test-runner/store-benchmarks.sh +17 -19
  210. package/claude-assets/skills/cfn-transparency-middleware/test-e2e.sh +15 -0
  211. package/claude-assets/skills/cfn-transparency-middleware/tests/input-validation.sh +15 -0
  212. package/claude-assets/skills/cfn-utilities/SKILL.md +237 -0
  213. package/claude-assets/skills/cfn-utilities/execute.sh +32 -0
  214. package/claude-assets/skills/cfn-utilities/lib/errors.sh +56 -0
  215. package/claude-assets/skills/cfn-utilities/lib/file-ops.sh +164 -0
  216. package/claude-assets/skills/cfn-utilities/lib/logging.sh +77 -0
  217. package/claude-assets/skills/cfn-utilities/lib/retry.sh +127 -0
  218. package/claude-assets/skills/cfn-utilities/test.sh +317 -0
  219. package/claude-assets/skills/integration/agent-handoff.sh +62 -64
  220. package/claude-assets/skills/json-validation/SKILL.md +431 -0
  221. package/claude-assets/skills/json-validation/test-validate-success-criteria.sh +421 -0
  222. package/claude-assets/skills/json-validation/validate-success-criteria.sh +197 -0
  223. package/claude-assets/skills/redis-coordination/validate-parameters.sh +34 -0
  224. package/claude-assets/skills/workflow-codification/DEPLOY_QUICK_REFERENCE.md +106 -0
  225. package/claude-assets/skills/workflow-codification/PROPAGATE_UPDATE_QUICK_REFERENCE.md +366 -0
  226. package/claude-assets/skills/workflow-codification/deploy-approved-skill.sh +481 -0
  227. package/claude-assets/skills/workflow-codification/deploy-approved-skill.sh.backup-1763392820 +512 -0
  228. package/claude-assets/skills/workflow-codification/lib/security-utils.sh +204 -0
  229. package/claude-assets/skills/workflow-codification/propagate-skill-update.sh +648 -0
  230. package/claude-assets/skills/workflow-codification/propagate-skill-update.sh.backup-1763392820 +664 -0
  231. package/claude-assets/skills/workflow-codification/test-integration.sh +15 -0
  232. package/claude-assets/skills/workflow-codification/test-metadata-update.sh +350 -0
  233. package/claude-assets/skills/workflow-codification/track-cost-savings.sh +55 -14
  234. package/claude-assets/skills/workflow-codification/track-cost-savings.sh.backup-1763392821 +445 -0
  235. package/claude-assets/skills/workflow-codification/track-edge-case.sh +27 -60
  236. package/claude-assets/skills/workflow-codification/workflow-codification.db +0 -0
  237. package/dist/ace/ace-curator.js +10 -2
  238. package/dist/ace/ace-curator.js.map +1 -1
  239. package/dist/ace/ace-generator.js +4 -0
  240. package/dist/ace/ace-generator.js.map +1 -1
  241. package/dist/ace/ace-reflector.js +1 -1
  242. package/dist/ace/ace-reflector.js.map +1 -1
  243. package/dist/ace/context-injection.js +24 -2
  244. package/dist/ace/context-injection.js.map +1 -1
  245. package/dist/agents/agent-loader.js +146 -165
  246. package/dist/agents/agent-loader.js.map +1 -1
  247. package/dist/agents/task-agent-integration.js +1 -1
  248. package/dist/agents/task-agent-integration.js.map +1 -1
  249. package/dist/api/health-endpoints.js +390 -0
  250. package/dist/api/health-endpoints.js.map +1 -0
  251. package/dist/cli/agent-executor.js +4 -1
  252. package/dist/cli/agent-executor.js.map +1 -1
  253. package/dist/cli/agent-prompt-builder.js +89 -1
  254. package/dist/cli/agent-prompt-builder.js.map +1 -1
  255. package/dist/cli/agent-spawn.js +130 -37
  256. package/dist/cli/agent-spawn.js.map +1 -1
  257. package/dist/cli/skill-cache-validator.js +412 -0
  258. package/dist/cli/skill-cache-validator.js.map +1 -0
  259. package/dist/cli/skill-cli.js +991 -0
  260. package/dist/cli/skill-cli.js.map +1 -0
  261. package/dist/cli/skill-execution-logger.js +284 -0
  262. package/dist/cli/skill-execution-logger.js.map +1 -0
  263. package/dist/cli/skill-loader.js +457 -0
  264. package/dist/cli/skill-loader.js.map +1 -0
  265. package/dist/coordination/event-bus.js +2 -2
  266. package/dist/coordination/event-bus.js.map +1 -1
  267. package/dist/coordination/fleet-manager.js +1 -1
  268. package/dist/coordination/fleet-manager.js.map +1 -1
  269. package/dist/coordination/index.js +23 -9
  270. package/dist/coordination/index.js.map +1 -1
  271. package/dist/coordination/types/fleet-manager.types.js.map +1 -1
  272. package/dist/db/migration-manager.js +483 -0
  273. package/dist/db/migration-manager.js.map +1 -0
  274. package/dist/db/skills-query.js +535 -0
  275. package/dist/db/skills-query.js.map +1 -0
  276. package/dist/integration/DatabaseHandoff.js +1 -1
  277. package/dist/integration/DatabaseHandoff.js.map +1 -1
  278. package/dist/jobs/edge-case-analyzer.js +367 -0
  279. package/dist/jobs/edge-case-analyzer.js.map +1 -0
  280. package/dist/jobs/promotion-sla-enforcer.js +288 -0
  281. package/dist/jobs/promotion-sla-enforcer.js.map +1 -0
  282. package/dist/lib/agent-output-parser.js.map +1 -1
  283. package/dist/lib/agent-output-validator.js.map +1 -1
  284. package/dist/lib/agent-workspace.js +281 -0
  285. package/dist/lib/agent-workspace.js.map +1 -0
  286. package/dist/lib/atomic-file-writer.js +377 -0
  287. package/dist/lib/atomic-file-writer.js.map +1 -0
  288. package/dist/lib/backup-manager.js +779 -0
  289. package/dist/lib/backup-manager.js.map +1 -0
  290. package/dist/lib/checkpoint-manager.js +837 -0
  291. package/dist/lib/checkpoint-manager.js.map +1 -0
  292. package/dist/lib/circuit-breaker.js +340 -0
  293. package/dist/lib/circuit-breaker.js.map +1 -0
  294. package/dist/lib/completion-signal-handler.js +243 -0
  295. package/dist/lib/completion-signal-handler.js.map +1 -0
  296. package/dist/lib/config-manager.js +312 -0
  297. package/dist/lib/config-manager.js.map +1 -0
  298. package/dist/lib/config-migrator.js +386 -0
  299. package/dist/lib/config-migrator.js.map +1 -0
  300. package/dist/lib/config-validator.js.map +1 -1
  301. package/dist/lib/correlation-cache.js +311 -0
  302. package/dist/lib/correlation-cache.js.map +1 -0
  303. package/dist/lib/correlation.js +263 -0
  304. package/dist/lib/correlation.js.map +1 -0
  305. package/dist/lib/database-service/connection-pool-manager.js +520 -0
  306. package/dist/lib/database-service/connection-pool-manager.js.map +1 -0
  307. package/dist/lib/database-service/correlation.js +329 -0
  308. package/dist/lib/database-service/correlation.js.map +1 -0
  309. package/dist/lib/database-service/errors.js +120 -0
  310. package/dist/lib/database-service/errors.js.map +1 -0
  311. package/dist/lib/database-service/index.js +168 -0
  312. package/dist/lib/database-service/index.js.map +1 -0
  313. package/dist/lib/database-service/postgres-adapter.js +526 -0
  314. package/dist/lib/database-service/postgres-adapter.js.map +1 -0
  315. package/dist/lib/database-service/redis-adapter.js +360 -0
  316. package/dist/lib/database-service/redis-adapter.js.map +1 -0
  317. package/dist/lib/database-service/sqlite-adapter.js +544 -0
  318. package/dist/lib/database-service/sqlite-adapter.js.map +1 -0
  319. package/dist/lib/database-service/transaction-manager.js +773 -0
  320. package/dist/lib/database-service/transaction-manager.js.map +1 -0
  321. package/dist/lib/database-service/types.js +23 -0
  322. package/dist/lib/database-service/types.js.map +1 -0
  323. package/dist/lib/deadlock-resolver.js +292 -0
  324. package/dist/lib/deadlock-resolver.js.map +1 -0
  325. package/dist/lib/distributed-lock.js +451 -0
  326. package/dist/lib/distributed-lock.js.map +1 -0
  327. package/dist/lib/edge-case-deduplicator.js +227 -0
  328. package/dist/lib/edge-case-deduplicator.js.map +1 -0
  329. package/dist/lib/encryption-manager.js +322 -0
  330. package/dist/lib/encryption-manager.js.map +1 -0
  331. package/dist/lib/error-aggregator.js +234 -0
  332. package/dist/lib/error-aggregator.js.map +1 -0
  333. package/dist/lib/errors.js +287 -0
  334. package/dist/lib/errors.js.map +1 -0
  335. package/dist/lib/file-lock-manager.js +578 -0
  336. package/dist/lib/file-lock-manager.js.map +1 -0
  337. package/dist/lib/file-operations.js +367 -0
  338. package/dist/lib/file-operations.js.map +1 -0
  339. package/dist/lib/idempotent-write.js +237 -0
  340. package/dist/lib/idempotent-write.js.map +1 -0
  341. package/dist/lib/integration-schema-validator.js +522 -0
  342. package/dist/lib/integration-schema-validator.js.map +1 -0
  343. package/dist/lib/lock-health-monitor.js +298 -0
  344. package/dist/lib/lock-health-monitor.js.map +1 -0
  345. package/dist/lib/log-shipper.js +422 -0
  346. package/dist/lib/log-shipper.js.map +1 -0
  347. package/dist/lib/logging.js +146 -0
  348. package/dist/lib/logging.js.map +1 -0
  349. package/dist/lib/message-deduplicator.js +439 -0
  350. package/dist/lib/message-deduplicator.js.map +1 -0
  351. package/dist/lib/multi-system-query.js +604 -0
  352. package/dist/lib/multi-system-query.js.map +1 -0
  353. package/dist/lib/orphan-detector.js +332 -0
  354. package/dist/lib/orphan-detector.js.map +1 -0
  355. package/dist/lib/password-generator.js +166 -0
  356. package/dist/lib/password-generator.js.map +1 -0
  357. package/dist/lib/path-validator.js +429 -0
  358. package/dist/lib/path-validator.js.map +1 -0
  359. package/dist/lib/query-translator.js +905 -0
  360. package/dist/lib/query-translator.js.map +1 -0
  361. package/dist/lib/queue-recovery.js +469 -0
  362. package/dist/lib/queue-recovery.js.map +1 -0
  363. package/dist/lib/redis-queue-manager.js +512 -0
  364. package/dist/lib/redis-queue-manager.js.map +1 -0
  365. package/dist/lib/reflection-archiver.js +272 -0
  366. package/dist/lib/reflection-archiver.js.map +1 -0
  367. package/dist/lib/retry-manager.js +453 -0
  368. package/dist/lib/retry-manager.js.map +1 -0
  369. package/dist/lib/retry.js +262 -0
  370. package/dist/lib/retry.js.map +1 -0
  371. package/dist/lib/schema-transform.js +695 -0
  372. package/dist/lib/schema-transform.js.map +1 -0
  373. package/dist/lib/schema-validator.js +491 -0
  374. package/dist/lib/schema-validator.js.map +1 -0
  375. package/dist/lib/skill-cache.js +297 -0
  376. package/dist/lib/skill-cache.js.map +1 -0
  377. package/dist/lib/skill-content-manager.js +337 -0
  378. package/dist/lib/skill-content-manager.js.map +1 -0
  379. package/dist/lib/skill-frontmatter-parser.js +237 -0
  380. package/dist/lib/skill-frontmatter-parser.js.map +1 -0
  381. package/dist/lib/skill-git-integration.js +275 -0
  382. package/dist/lib/skill-git-integration.js.map +1 -0
  383. package/dist/lib/skill-markdown-validator.js +396 -0
  384. package/dist/lib/skill-markdown-validator.js.map +1 -0
  385. package/dist/lib/skill-output-parser.js +312 -0
  386. package/dist/lib/skill-output-parser.js.map +1 -0
  387. package/dist/lib/unified-query-api.js +467 -0
  388. package/dist/lib/unified-query-api.js.map +1 -0
  389. package/dist/middleware/auth-middleware.js +350 -0
  390. package/dist/middleware/auth-middleware.js.map +1 -0
  391. package/dist/middleware/schema-validation.js +347 -0
  392. package/dist/middleware/schema-validation.js.map +1 -0
  393. package/dist/providers/anthropic-provider.js +1 -1
  394. package/dist/providers/anthropic-provider.js.map +1 -1
  395. package/dist/providers/provider-factory.js +2 -2
  396. package/dist/providers/provider-factory.js.map +1 -1
  397. package/dist/services/edge-case-analyzer.js +321 -0
  398. package/dist/services/edge-case-analyzer.js.map +1 -0
  399. package/dist/services/edge-case-deduplicator.js +266 -0
  400. package/dist/services/edge-case-deduplicator.js.map +1 -0
  401. package/dist/services/edge-case-detector.js +337 -0
  402. package/dist/services/edge-case-detector.js.map +1 -0
  403. package/dist/services/edge-case-tracker.js +547 -0
  404. package/dist/services/edge-case-tracker.js.map +1 -0
  405. package/dist/services/health-check-system.js +586 -0
  406. package/dist/services/health-check-system.js.map +1 -0
  407. package/dist/services/metrics-logger.js +412 -0
  408. package/dist/services/metrics-logger.js.map +1 -0
  409. package/dist/services/patch-generator.js +378 -0
  410. package/dist/services/patch-generator.js.map +1 -0
  411. package/dist/services/patch-validator.js +337 -0
  412. package/dist/services/patch-validator.js.map +1 -0
  413. package/dist/services/performance-monitor.js +811 -0
  414. package/dist/services/performance-monitor.js.map +1 -0
  415. package/dist/services/promotion-pipeline.js +918 -0
  416. package/dist/services/promotion-pipeline.js.map +1 -0
  417. package/dist/services/promotion-validator.js +394 -0
  418. package/dist/services/promotion-validator.js.map +1 -0
  419. package/dist/services/reflection-logger.js +388 -0
  420. package/dist/services/reflection-logger.js.map +1 -0
  421. package/dist/services/skill-deployment.js +472 -0
  422. package/dist/services/skill-deployment.js.map +1 -0
  423. package/dist/services/skill-loader.js +427 -0
  424. package/dist/services/skill-loader.js.map +1 -0
  425. package/dist/services/skill-promotion.js +372 -0
  426. package/dist/services/skill-promotion.js.map +1 -0
  427. package/dist/services/skill-validator.js +454 -0
  428. package/dist/services/skill-validator.js.map +1 -0
  429. package/dist/services/skill-versioning.js +244 -0
  430. package/dist/services/skill-versioning.js.map +1 -0
  431. package/dist/services/workspace-supervisor.js +597 -0
  432. package/dist/services/workspace-supervisor.js.map +1 -0
  433. package/dist/types/edge-case.js +45 -0
  434. package/dist/types/edge-case.js.map +1 -0
  435. package/package.json +201 -177
  436. package/readme/README.md +19 -4
  437. package/scripts/backup-cleanup.sh +627 -0
  438. package/scripts/cleanup-workspaces.sh +412 -0
  439. package/scripts/cleanup-yaml-configs.sh +141 -0
  440. package/scripts/deploy-approved-skills.sh +263 -0
  441. package/scripts/health-check.sh +447 -0
  442. package/scripts/log-aggregator.sh +554 -0
  443. package/scripts/log-monitor.sh +629 -0
  444. package/scripts/manage-agent-workspaces.sh +434 -0
  445. package/scripts/migrate-schema.sh +533 -0
  446. package/scripts/promote-staged-skills.sh +423 -0
  447. package/scripts/verify-no-secrets.sh +88 -35
  448. package/.claude/cfn-extras/agents/deprecated-coordinators/adaptive-coordinator.md.backup +0 -161
  449. package/.claude/cfn-extras/agents/deprecated-coordinators/blocking-coordinator-example.md.backup +0 -728
  450. package/.claude/cfn-extras/agents/deprecated-coordinators/mesh-coordinator.md.backup +0 -131
  451. package/.claude/skills/agent-lifecycle/SKILL.md +0 -60
  452. package/.claude/skills/agent-lifecycle/execute-lifecycle-hook.sh +0 -573
  453. package/.claude/skills/agent-lifecycle/simple-audit.sh +0 -31
  454. package/.claude/skills/cfn-agent-spawning/spawn-agent.sh.backup +0 -273
  455. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh.backup +0 -949
  456. package/README.md.backup_before_replace +0 -781
  457. package/claude-assets/cfn-extras/agents/deprecated-coordinators/adaptive-coordinator.md.backup +0 -161
  458. package/claude-assets/cfn-extras/agents/deprecated-coordinators/blocking-coordinator-example.md.backup +0 -728
  459. package/claude-assets/cfn-extras/agents/deprecated-coordinators/mesh-coordinator.md.backup +0 -131
  460. package/claude-assets/skills/cfn-agent-spawning/spawn-agent.sh.backup +0 -273
  461. package/claude-assets/skills/cfn-loop-orchestration/orchestrate.sh.backup +0 -949
@@ -1,728 +0,0 @@
1
- ---
2
- name: blocking-coordinator-example
3
- description: |
4
- Example agent profile demonstrating blocking coordination lifecycle hooks.
5
- Use this as a reference for implementing custom blocking behavior in agent profiles.
6
- Keywords - blocking, coordination, lifecycle, hooks, example
7
- tools: [Read, Write, Edit, Bash, TodoWrite]
8
- model: sonnet
9
- provider: zai
10
- color: purple
11
- type: specialist
12
- capabilities:
13
- - blocking-coordination
14
- - lifecycle-hooks
15
- - example-reference
16
-
17
- # MANDATORY: Validation hooks for implementers
18
- validation_hooks:
19
- - agent-template-validator
20
- - cfn-loop-memory-validator
21
- - test-coverage-validator
22
-
23
- ## Completion Protocol
24
-
25
- Complete your work and provide a structured response with:
26
- - Confidence score (0.0-1.0) based on work quality
27
- - Summary of analysis/review completed
28
- - List of findings or deliverables
29
- - Any recommendations made
30
-
31
- **Note:** Coordination instructions are provided when spawned via CLI.
32
-
33
- # ACL Level: 1 (Private) - Agent-scoped data
34
- acl_level: 1
35
-
36
- hooks:
37
- on_blocking_start: |
38
- echo "🔒 Agent ${AGENT_ID} entering blocking coordination (swarm: ${SWARM_ID}, iteration: ${ITERATION})"
39
- /sqlite-memory store --key "agent:${AGENT_ID}:blocking:context" \
40
- --level agent \
41
- --data '{"status":"blocked","timestamp":"'$(date +%s)'","task":"${TASK}","phase":"${PHASE}","swarm":"${SWARM_ID}","iteration":"${ITERATION}"}' || true
42
-
43
- on_signal_received: |
44
- echo "✅ Agent ${AGENT_ID} received signal, resuming work"
45
- CONTEXT=$(/sqlite-memory retrieve --key "agent:${AGENT_ID}:blocking:context" --level agent || echo '{}')
46
- echo "Resuming from context: ${CONTEXT}"
47
- /sqlite-memory store --key "agent:${AGENT_ID}:blocking:resumed" \
48
- --level agent \
49
- --data '{"status":"resumed","timestamp":"'$(date +%s)'","context":'"${CONTEXT}"'}' || true
50
-
51
- on_blocking_timeout: |
52
- echo "⏰ Agent ${AGENT_ID} blocking timeout - escalating"
53
- /sqlite-memory store --key "agent:${AGENT_ID}:timeout" \
54
- --level agent \
55
- --data '{"status":"timeout","timestamp":"'$(date +%s)'","action":"escalate","iteration":"${ITERATION}"}' || true
56
- /eventbus publish --type agent.timeout \
57
- --data '{"agent":"${AGENT_ID}","iteration":"${ITERATION}","phase":"${PHASE}"}' \
58
- --priority 9 || true
59
- ---
60
- ## 🚀 OPTIMIZED FOR CLI/REDIS/SQLITE ENVIRONMENTS
61
-
62
- **Your role is optimized for:**
63
- - **Redis pub/sub communication** for real-time agent coordination
64
- - **SQLite memory management** with ACL-secured data persistence
65
- - **CFN Loop integration** for systematic development workflows
66
- - **Evidence chain optimization** for transparent development processes
67
-
68
-
69
-
70
- ## 🚨 MANDATORY POST-EDIT VALIDATION
71
-
72
- **CRITICAL**: After **EVERY** file edit operation, you **MUST** run the enhanced post-edit hook:
73
-
74
- ```bash
75
- npx claude-flow@alpha hooks post-edit [FILE_PATH] --memory-key "blocking-coordinator-example/${AGENT_ID}/step" --structured
76
- ```
77
-
78
- **This provides:**
79
- - 🧪 **TDD Compliance**: Validates test-first development practices
80
- - 🔒 **Security Analysis**: Detects eval(), hardcoded credentials, XSS vulnerabilities
81
- - 🎨 **Formatting**: Prettier/rustfmt analysis with diff preview
82
- - 📊 **Coverage Analysis**: Test coverage validation with configurable thresholds
83
- - 🤖 **Actionable Recommendations**: Specific steps to improve code quality
84
- - 💾 **Memory Coordination**: Stores results for cross-agent collaboration
85
-
86
- **⚠️ NO EXCEPTIONS**: Run this hook for ALL file types (JS, TS, Rust, Python, etc.)
87
-
88
-
89
- # Blocking Coordinator Example Agent
90
-
91
- This agent profile demonstrates how to implement blocking coordination lifecycle hooks.
92
- Use this as a template for creating agents that need custom blocking behavior.
93
-
94
- ## Overview
95
-
96
- Lifecycle hooks allow agents to execute custom logic at critical coordination points:
97
-
98
- 1. **on_blocking_start**: Executed when agent enters blocking state
99
- 2. **on_signal_received**: Executed when agent receives signal to resume
100
- 3. **on_blocking_timeout**: Executed when blocking operation times out
101
-
102
- ## Hook Environment Variables
103
-
104
- Each hook has access to these environment variables:
105
-
106
- - `AGENT_ID` - Unique agent identifier
107
- - `TASK` - Current task description
108
- - `SWARM_ID` - Swarm identifier
109
- - `ITERATION` - Current iteration number
110
- - `PHASE` - Current phase name
111
- - `BLOCKING_TYPE` - Type of blocking (consensus, validation, dependency, etc.)
112
- - `TIMEOUT_THRESHOLD` - Configured timeout threshold (ms)
113
-
114
- ## Hook Implementations
115
-
116
- ### on_blocking_start Hook
117
-
118
- **Purpose**: Save agent state before blocking coordination begins.
119
-
120
- **Example Use Cases**:
121
- - **Coder Agent**: Save code context, open files, cursor position
122
- - **Reviewer Agent**: Checkpoint current review state, feedback buffer
123
- - **Tester Agent**: Pause test execution, save test queue
124
-
125
- **Implementation**:
126
- ```bash
127
- # Save blocking context to SQLite memory
128
- /sqlite-memory store \
129
- --key "agent:${AGENT_ID}:blocking:context" \
130
- --level agent \
131
- --data '{"status":"blocked","timestamp":"'$(date +%s)'","task":"${TASK}"}'
132
-
133
- # Publish blocking event to event bus
134
- /eventbus publish \
135
- --type agent.blocking.start \
136
- --data '{"agent":"${AGENT_ID}","phase":"${PHASE}"}' \
137
- --priority 8
138
- ```
139
-
140
- ### on_signal_received Hook
141
-
142
- **Purpose**: Restore agent state when blocking coordination completes.
143
-
144
- **Example Use Cases**:
145
- - **Coder Agent**: Restore code context, resume editing
146
- - **Reviewer Agent**: Load review checkpoint, continue feedback
147
- - **Tester Agent**: Resume test execution from saved queue
148
-
149
- **Implementation**:
150
- ```bash
151
- # Retrieve blocking context
152
- CONTEXT=$(/sqlite-memory retrieve \
153
- --key "agent:${AGENT_ID}:blocking:context" \
154
- --level agent)
155
-
156
- # Restore state and resume work
157
- echo "Resuming from context: $CONTEXT"
158
-
159
- # Publish resume event
160
- /eventbus publish \
161
- --type agent.blocking.resume \
162
- --data '{"agent":"${AGENT_ID}","context":'"$CONTEXT"'}' \
163
- --priority 8
164
- ```
165
-
166
- ### on_blocking_timeout Hook
167
-
168
- **Purpose**: Handle timeout scenarios gracefully.
169
-
170
- **Example Use Cases**:
171
- - **Coder Agent**: Save partial work, escalate to coordinator
172
- - **Reviewer Agent**: Submit partial review, request extension
173
- - **Tester Agent**: Report timeout, save test state for retry
174
-
175
- **Implementation**:
176
- ```bash
177
- # Store timeout event
178
- /sqlite-memory store \
179
- --key "agent:${AGENT_ID}:timeout" \
180
- --level agent \
181
- --data '{"status":"timeout","timestamp":"'$(date +%s)'","action":"escalate"}'
182
-
183
- # Publish timeout event for coordinator escalation
184
- /eventbus publish \
185
- --type agent.timeout \
186
- --data '{"agent":"${AGENT_ID}","iteration":"${ITERATION}"}' \
187
- --priority 9
188
- ```
189
-
190
- ## Agent Type Examples
191
-
192
- ### Coder Agent Hook
193
-
194
- ```yaml
195
- hooks:
196
- on_blocking_start: |
197
- # Save code editing context
198
- /sqlite-memory store --key "coder:${AGENT_ID}:context" --level agent \
199
- --data '{"files":["'$(echo $OPEN_FILES)'"],"cursor":"'$(echo $CURSOR_POS)'"}'
200
-
201
- on_signal_received: |
202
- # Restore code context
203
- CONTEXT=$(/sqlite-memory retrieve --key "coder:${AGENT_ID}:context" --level agent)
204
- echo "Restoring code context: $CONTEXT"
205
-
206
- on_blocking_timeout: |
207
- # Save partial work
208
- git stash save "WIP: Agent ${AGENT_ID} timeout at iteration ${ITERATION}"
209
- /eventbus publish --type coder.timeout \
210
- --data '{"agent":"${AGENT_ID}","stash":"latest"}' --priority 9
211
- ```
212
-
213
- ### Reviewer Agent Hook
214
-
215
- ```yaml
216
- hooks:
217
- on_blocking_start: |
218
- # Checkpoint review state
219
- /sqlite-memory store --key "reviewer:${AGENT_ID}:checkpoint" --level agent \
220
- --data '{"reviewed_files":'"$(cat /tmp/reviewed_files.json)"',"feedback":'"$(cat /tmp/feedback.json)"'}'
221
-
222
- on_signal_received: |
223
- # Load checkpoint and continue
224
- CHECKPOINT=$(/sqlite-memory retrieve --key "reviewer:${AGENT_ID}:checkpoint" --level agent)
225
- echo "$CHECKPOINT" | jq -r '.reviewed_files' > /tmp/reviewed_files.json
226
- echo "$CHECKPOINT" | jq -r '.feedback' > /tmp/feedback.json
227
-
228
- on_blocking_timeout: |
229
- # Submit partial review
230
- /sqlite-memory store --key "reviewer:${AGENT_ID}:partial_review" --level swarm \
231
- --data '{"status":"partial","files_reviewed":"'$(wc -l < /tmp/reviewed_files.json)'"}'
232
- ```
233
-
234
- ### Tester Agent Hook
235
-
236
- ```yaml
237
- hooks:
238
- on_blocking_start: |
239
- # Pause test execution
240
- pkill -STOP -f "vitest.*${AGENT_ID}"
241
- /sqlite-memory store --key "tester:${AGENT_ID}:test_queue" --level agent \
242
- --data '{"paused_at":"'$(date +%s)'","queue":'"$(cat /tmp/test_queue.json)"'}'
243
-
244
- on_signal_received: |
245
- # Resume test execution
246
- pkill -CONT -f "vitest.*${AGENT_ID}"
247
- TEST_QUEUE=$(/sqlite-memory retrieve --key "tester:${AGENT_ID}:test_queue" --level agent)
248
- echo "Resuming tests from: $TEST_QUEUE"
249
-
250
- on_blocking_timeout: |
251
- # Kill hanging tests and report
252
- pkill -KILL -f "vitest.*${AGENT_ID}"
253
- /sqlite-memory store --key "tester:${AGENT_ID}:timeout_report" --level swarm \
254
- --data '{"status":"timeout","tests_completed":"'$(cat /tmp/test_results.json | jq '.total')'","action":"retry"}'
255
- ```
256
-
257
- ## ACE Hooks Integration for Blocking Coordination Learning
258
-
259
- ### Educational Purpose
260
-
261
- The ACE (Autonomous Coordination Engine) hooks system helps you learn and track blocking coordination patterns empirically. As an example file, this demonstrates how to extract lessons from real coordination experiences.
262
-
263
- ### Blocking Coordination Metrics to Track
264
-
265
- **Signal ACK Protocol Metrics:**
266
- ```javascript
267
- // Track successful vs failed signal ACK patterns
268
- const signalMetrics = {
269
- signalsSent: 0,
270
- acksReceived: 0,
271
- timeouts: 0,
272
- avgAckTime: 0,
273
- patternType: 'SIGNAL→ACK→PROCEED'
274
- };
275
-
276
- await sqlite.memoryAdapter.set(
277
- `ace/blocking/signal-metrics/${agentId}`,
278
- signalMetrics,
279
- { aclLevel: 1, ttl: 86400 } // 24h for analysis
280
- );
281
- ```
282
-
283
- **Timeout Management Patterns:**
284
- ```javascript
285
- // Track timeout handling success rates
286
- const timeoutMetrics = {
287
- timeouts: 0,
288
- exponentialBackoffUsed: true,
289
- maxRetries: 3,
290
- retriesAttempted: 0,
291
- recoverySuccess: 0,
292
- recoveryFailures: 0
293
- };
294
-
295
- await sqlite.memoryAdapter.set(
296
- `ace/blocking/timeout-patterns/${agentId}`,
297
- timeoutMetrics,
298
- { aclLevel: 1, ttl: 86400 }
299
- );
300
- ```
301
-
302
- **Deadlock Prevention Tracking:**
303
- ```javascript
304
- // Track deadlock scenarios and prevention
305
- const deadlockMetrics = {
306
- potentialDeadlocks: 0,
307
- preventedDeadlocks: 0,
308
- deadlockPattern: 'circular-wait',
309
- preventionStrategy: 'timeout-with-backoff',
310
- timeoutThreshold: 10000 // 10s
311
- };
312
-
313
- await sqlite.memoryAdapter.set(
314
- `ace/blocking/deadlock-prevention/${agentId}`,
315
- deadlockMetrics,
316
- { aclLevel: 1, ttl: 86400 }
317
- );
318
- ```
319
-
320
- ### Learning Patterns from Coordination
321
-
322
- **Pattern 1: Successful Signal ACK with Fast Response**
323
- ```javascript
324
- // When: ACK received < 1s
325
- // Lesson: Network is healthy, agents responsive
326
- // Action: Maintain current timeout thresholds
327
-
328
- const fastAckPattern = {
329
- pattern: 'fast-ack',
330
- ackTime: 850, // ms
331
- threshold: 1000,
332
- lesson: 'Network healthy, agents responsive',
333
- recommendation: 'Maintain timeout settings'
334
- };
335
-
336
- await sqlite.memoryAdapter.set(
337
- `ace/blocking/lessons/fast-ack-${Date.now()}`,
338
- fastAckPattern,
339
- { aclLevel: 1, ttl: 604800 } // 7 days retention
340
- );
341
- ```
342
-
343
- **Pattern 2: Timeout Requiring Exponential Backoff**
344
- ```javascript
345
- // When: First timeout, retry succeeds
346
- // Lesson: Transient network issue, backoff works
347
- // Action: Continue exponential backoff strategy
348
-
349
- const backoffSuccessPattern = {
350
- pattern: 'timeout-backoff-success',
351
- timeoutCount: 1,
352
- retriesNeeded: 2,
353
- backoffStrategy: 'exponential',
354
- delaysUsed: [1000, 2000], // ms
355
- lesson: 'Exponential backoff effective for transient issues',
356
- recommendation: 'Continue current retry strategy'
357
- };
358
-
359
- await sqlite.memoryAdapter.set(
360
- `ace/blocking/lessons/backoff-success-${Date.now()}`,
361
- backoffSuccessPattern,
362
- { aclLevel: 1, ttl: 604800 }
363
- );
364
- ```
365
-
366
- **Pattern 3: Persistent Timeout Requiring Agent Replacement**
367
- ```javascript
368
- // When: Max retries exhausted, agent non-responsive
369
- // Lesson: Agent dead, coordinator health check passed
370
- // Action: Spawn replacement agent
371
-
372
- const agentDeadPattern = {
373
- pattern: 'agent-death-confirmed',
374
- timeoutsBeforeReplacement: 3,
375
- coordinatorHealthy: true,
376
- lesson: 'Agent non-responsive after max retries, coordinator alive',
377
- recommendation: 'Spawn replacement agent immediately',
378
- replacementStrategy: 'spawn-identical-agent'
379
- };
380
-
381
- await sqlite.memoryAdapter.set(
382
- `ace/blocking/lessons/agent-death-${agentId}`,
383
- agentDeadPattern,
384
- { aclLevel: 1, ttl: 2592000 } // 30 days for incident analysis
385
- );
386
- ```
387
-
388
- **Pattern 4: Coordinator Health Check Failure**
389
- ```javascript
390
- // When: Coordinator heartbeat expired
391
- // Lesson: Coordinator dead, escalate to new coordinator
392
- // Action: Escalate to coordinator failover protocol
393
-
394
- const coordinatorDeadPattern = {
395
- pattern: 'coordinator-death-detected',
396
- heartbeatExpired: true,
397
- lastHeartbeat: Date.now() - 95000, // 95s ago
398
- ttlThreshold: 90000, // 90s
399
- lesson: 'Coordinator heartbeat expired, failover required',
400
- recommendation: 'Publish coordinator:dead event, wait for reassignment'
401
- };
402
-
403
- await sqlite.memoryAdapter.set(
404
- `ace/blocking/lessons/coordinator-death-${coordinatorId}`,
405
- coordinatorDeadPattern,
406
- { aclLevel: 3, ttl: 2592000 } // Swarm-level, 30 days
407
- );
408
- ```
409
-
410
- ### Extracting Lessons from CFN Loop Coordination
411
-
412
- **Loop 3 → Loop 2 Transition Metrics:**
413
- ```javascript
414
- // Track signal ACK performance during loop transitions
415
- const loopTransitionMetrics = {
416
- loop: 3,
417
- nextLoop: 2,
418
- signalsSent: 5, // To all implementers
419
- acksReceived: 5,
420
- avgAckTime: 1200, // ms
421
- transitionSuccess: true,
422
- lesson: 'All implementers responsive, smooth transition',
423
- recommendation: 'Current timeout (5min) appropriate'
424
- };
425
-
426
- await sqlite.memoryAdapter.set(
427
- `ace/cfn/loop-transition/${phaseId}/loop3-to-loop2`,
428
- loopTransitionMetrics,
429
- { aclLevel: 3, ttl: 7776000 } // Swarm, 90 days
430
- );
431
- ```
432
-
433
- **Agent Spawn Coordination Metrics:**
434
- ```javascript
435
- // Track blocking coordination during agent spawning
436
- const spawnCoordinationMetrics = {
437
- agentsSpawned: 5,
438
- spawnTime: 12000, // ms
439
- signalsPerAgent: 1, // Wake signal
440
- avgAckTime: 800, // ms
441
- spawnPattern: 'parallel',
442
- coordinationMethod: 'blocking-signal-ack',
443
- lesson: 'Parallel spawn with signal ACK efficient',
444
- recommendation: 'Continue parallel spawn strategy'
445
- };
446
-
447
- await sqlite.memoryAdapter.set(
448
- `ace/spawn/coordination/${swarmId}`,
449
- spawnCoordinationMetrics,
450
- { aclLevel: 3, ttl: 2592000 } // Swarm, 30 days
451
- );
452
- ```
453
-
454
- ### Monitoring Blocking Patterns with ACE
455
-
456
- **Real-Time Pattern Detection:**
457
- ```javascript
458
- // Detect patterns as they emerge
459
- class BlockingPatternMonitor {
460
- async detectPattern(agentId, eventType, eventData) {
461
- // Get historical data
462
- const history = await sqlite.memoryAdapter.get(
463
- `ace/blocking/history/${agentId}`,
464
- { aclLevel: 1 }
465
- );
466
-
467
- // Analyze pattern
468
- if (eventType === 'timeout' && history.timeouts >= 3) {
469
- // Pattern: Persistent timeouts
470
- return {
471
- pattern: 'persistent-timeout',
472
- severity: 'high',
473
- recommendation: 'Check agent health, spawn replacement',
474
- lesson: 'Agent likely dead, retry limit reached'
475
- };
476
- }
477
-
478
- if (eventType === 'fast-ack' && history.avgAckTime < 1000) {
479
- // Pattern: Healthy coordination
480
- return {
481
- pattern: 'healthy-coordination',
482
- severity: 'low',
483
- recommendation: 'No action needed',
484
- lesson: 'Network and agents performing well'
485
- };
486
- }
487
-
488
- return null;
489
- }
490
- }
491
- ```
492
-
493
- ### Educational Dashboard Example
494
-
495
- **Blocking Coordination Learning Dashboard:**
496
- ```javascript
497
- // Query ACE data for learning insights
498
- async function generateBlockingLessonsDashboard(agentId) {
499
- const signalMetrics = await sqlite.memoryAdapter.get(
500
- `ace/blocking/signal-metrics/${agentId}`,
501
- { aclLevel: 1 }
502
- );
503
-
504
- const timeoutMetrics = await sqlite.memoryAdapter.get(
505
- `ace/blocking/timeout-patterns/${agentId}`,
506
- { aclLevel: 1 }
507
- );
508
-
509
- const deadlockMetrics = await sqlite.memoryAdapter.get(
510
- `ace/blocking/deadlock-prevention/${agentId}`,
511
- { aclLevel: 1 }
512
- );
513
-
514
- return {
515
- signalACKSuccessRate: signalMetrics.acksReceived / signalMetrics.signalsSent,
516
- avgResponseTime: signalMetrics.avgAckTime,
517
- timeoutRate: timeoutMetrics.timeouts / signalMetrics.signalsSent,
518
- retryEffectiveness: timeoutMetrics.recoverySuccess / timeoutMetrics.retriesAttempted,
519
- deadlocksPrevented: deadlockMetrics.preventedDeadlocks,
520
-
521
- keyLessons: [
522
- 'Signal ACK protocol: 95% success rate indicates healthy coordination',
523
- 'Timeout handling: Exponential backoff recovers 80% of transient failures',
524
- 'Deadlock prevention: 10s timeout with backoff prevents circular waits'
525
- ]
526
- };
527
- }
528
- ```
529
-
530
- ### Integration with Blocking Coordination System
531
-
532
- **ACE Hooks in Blocking Coordinator:**
533
- ```javascript
534
- import { BlockingCoordinationSignals } from '../cfn-loop/blocking-coordination-signals.js';
535
- import { ACEHooks } from '../ace/hooks.js';
536
-
537
- // Initialize ACE hooks for learning
538
- const aceHooks = new ACEHooks({
539
- sqlite,
540
- agentId: coordinatorId,
541
- category: 'blocking-coordination'
542
- });
543
-
544
- // Track signal sent
545
- await aceHooks.trackEvent('signal-sent', {
546
- targetAgent: 'coder-1',
547
- signalType: 'wake',
548
- timestamp: Date.now()
549
- });
550
-
551
- // Track ACK received
552
- await aceHooks.trackEvent('ack-received', {
553
- sourceAgent: 'coder-1',
554
- ackTime: 850, // ms
555
- timestamp: Date.now()
556
- });
557
-
558
- // Analyze patterns
559
- const pattern = await aceHooks.detectPattern('signal-ack');
560
- if (pattern.severity === 'high') {
561
- console.warn('Blocking coordination issue detected:', pattern.lesson);
562
- console.log('Recommendation:', pattern.recommendation);
563
- }
564
- ```
565
-
566
- ## Hook Execution Flow
567
-
568
- ```
569
- Agent starts task
570
-
571
- Enters blocking coordination
572
-
573
- on_blocking_start hook executes
574
- + ACE tracking: Record blocking start time, context
575
-
576
- Agent waits for signal
577
-
578
- ┌───┴────┐
579
- │ │
580
- Signal Timeout
581
- Received Reached
582
- │ │
583
- ↓ ↓
584
- on_signal on_blocking_timeout
585
- _received hook executes
586
- hook + ACE tracking: Timeout pattern analysis
587
- executes ↓
588
- + ACE Escalate or retry
589
- tracking: + ACE tracking: Recovery strategy used
590
- Fast ACK ↓
591
- pattern Analyze lesson: Why timeout? Agent dead? Coordinator dead?
592
-
593
- Resume work
594
-
595
- Complete task
596
-
597
- ACE analysis: Generate lessons from coordination experience
598
- ```
599
-
600
- ## Hook Best Practices
601
-
602
- ### 1. Keep Hooks Fast
603
- - **Target**: < 5 seconds execution time
604
- - **Why**: Hooks block coordination flow
605
- - **How**: Use async operations, avoid heavy computation
606
-
607
- ### 2. Handle Errors Gracefully
608
- - **Exit code 0**: Hook success
609
- - **Exit code non-zero**: Hook failure (logged, doesn't block)
610
- - **Always include error handling**: `|| true` for non-critical commands
611
-
612
- ### 3. Use SQLite Memory for State
613
- - **Level `agent`**: Private to single agent
614
- - **Level `swarm`**: Shared across swarm
615
- - **Level `project`**: Persistent across swarms
616
- - **Include TTL**: Auto-cleanup with `--ttl 3600`
617
-
618
- ### 4. Publish Events for Coordination
619
- - **Priority 9**: Critical timeouts, escalations
620
- - **Priority 8**: Lifecycle events (start, resume)
621
- - **Priority 7**: Status updates, metrics
622
- - **Use structured data**: JSON for event payloads
623
-
624
- ### 5. Sanitize User Input
625
- - **Never use raw variables in commands**: `"${AGENT_ID}"` not `$AGENT_ID`
626
- - **Validate paths**: Check file existence before operations
627
- - **Escape special characters**: Use proper quoting
628
-
629
- ### 6. Log Hook Execution
630
- - **Always echo status**: `echo "🔒 Agent entering blocking"`
631
- - **Include context**: Agent ID, iteration, phase
632
- - **Use emojis for visibility**: 🔒 blocking, ✅ resume, ⏰ timeout
633
-
634
- ## Testing Hooks
635
-
636
- ### Manual Testing
637
-
638
- ```bash
639
- # Test on_blocking_start hook
640
- export AGENT_ID="test-agent-1"
641
- export TASK="Test blocking coordination"
642
- export PHASE="testing"
643
- export ITERATION="1"
644
- bash -c '<hook_script_here>'
645
-
646
- # Verify state saved
647
- /sqlite-memory retrieve --key "agent:test-agent-1:blocking:context" --level agent
648
-
649
- # Test on_signal_received hook
650
- bash -c '<hook_script_here>'
651
-
652
- # Verify state restored
653
- cat /tmp/restored_context.json
654
- ```
655
-
656
- ### Automated Testing
657
-
658
- See `scripts/validate-agent-hooks.js` for hook validation:
659
-
660
- ```bash
661
- # Validate all agent profiles
662
- npx claude-flow-validate-hooks --all
663
-
664
- # Validate specific profile
665
- npx claude-flow-validate-hooks .claude/agents/examples/blocking-coordinator-example.md
666
- ```
667
-
668
- ## Debugging Hooks
669
-
670
- ### Enable Debug Logging
671
-
672
- ```bash
673
- export CLAUDE_FLOW_DEBUG_HOOKS=1
674
- ```
675
-
676
- ### Hook Execution Logs
677
-
678
- Hooks log to:
679
- - **stdout**: Captured in agent logs
680
- - **stderr**: Captured in error logs
681
- - **SQLite memory**: `hook:${AGENT_ID}:execution`
682
-
683
- ### Common Issues
684
-
685
- **Hook not executing:**
686
- - Check YAML syntax in frontmatter
687
- - Verify hook name (must be exact: `on_blocking_start`)
688
- - Check file permissions (hooks must be readable)
689
-
690
- **Hook timing out:**
691
- - Reduce execution time (< 5 seconds)
692
- - Use background jobs for long operations: `command & disown`
693
- - Check for hanging processes: `pkill -f <process>`
694
-
695
- **State not persisted:**
696
- - Verify SQLite memory level (agent/swarm/project)
697
- - Check key naming: `agent:${AGENT_ID}:*`
698
- - Ensure data is valid JSON
699
-
700
- ## Security Considerations
701
-
702
- ### 1. Input Validation
703
- - **Always quote variables**: `"${AGENT_ID}"`
704
- - **Sanitize IDs**: No special characters in agent IDs
705
- - **Validate paths**: Check existence before file operations
706
-
707
- ### 2. Privilege Isolation
708
- - **Hooks run with agent privileges**: Not root
709
- - **File access**: Limited to agent workspace
710
- - **Network access**: Restricted to event bus and memory store
711
-
712
- ### 3. Dangerous Commands
713
- - **Forbidden**: `rm -rf`, `dd`, `mkfs`, destructive operations
714
- - **Restricted**: Direct database access, system configuration
715
- - **Allowed**: Memory operations, event publishing, file I/O in workspace
716
-
717
- ## Related Documentation
718
-
719
- - **[Agent Lifecycle Hooks](../../docs/agent-lifecycle-hooks.md)** - Complete hook documentation
720
- - **[SQLite Memory Management](../../docs/operations/sqlite-memory.md)** - Memory persistence
721
- - **[Event Bus Coordination](../../docs/architecture/event-bus.md)** - Event publishing
722
- - **[Hook Validation](../../scripts/validate-agent-hooks.js)** - Hook testing
723
-
724
- ---
725
-
726
- **Version:** 1.0.0
727
- **Last Updated:** 2025-10-10
728
- **Sprint:** 2.2 - Agent Lifecycle Hooks