claude-flow-novice 2.6.0 → 2.8.1

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 (364) hide show
  1. package/.claude/adaptive-context/cfn-v3-reflection.json +21 -0
  2. package/.claude/agents/AGENT_LIFECYCLE.md +495 -0
  3. package/.claude/agents/CLAUDE.md +1002 -995
  4. package/.claude/agents/accessibility-advocate.md +457 -0
  5. package/.claude/agents/agent-principles/README.md +226 -226
  6. package/.claude/agents/agent-principles/agent-type-guidelines.md +10 -0
  7. package/.claude/agents/agent-principles/format-selection.md +10 -0
  8. package/.claude/agents/agent-principles/phase4-template-optimization.md +502 -494
  9. package/.claude/agents/agent-principles/prompt-engineering.md +8 -0
  10. package/.claude/agents/agent-principles/quality-metrics.md +8 -0
  11. package/.claude/agents/analysis/code-analyzer.md +7 -17
  12. package/.claude/agents/analysis/code-review/analyze-code-quality.md +2 -104
  13. package/.claude/agents/analysis/perf-analyzer.md +2 -196
  14. package/.claude/agents/context/context-curator.md +78 -84
  15. package/.claude/agents/context/context-reflector.md +27 -81
  16. package/.claude/agents/coordinators/README.md +42 -0
  17. package/.claude/agents/coordinators/cfn-v3-coordinator.md +440 -0
  18. package/.claude/agents/{product-owner-team → coordinators}/cto-agent.md +154 -187
  19. package/.claude/agents/coordinators/multi-sprint-coordinator.md +50 -0
  20. package/.claude/agents/{product-owner-team → coordinators}/product-owner-agent.md +6 -39
  21. package/.claude/agents/{cfn-loop → coordinators}/product-owner.md +72 -17
  22. package/.claude/agents/core-agents/reviewer.md +114 -135
  23. package/.claude/agents/custom/agent-builder.md +637 -637
  24. package/.claude/agents/developers/README.md +69 -0
  25. package/.claude/agents/developers/backend-dev.md +77 -0
  26. package/.claude/agents/{core-agents → developers}/coder.md +131 -26
  27. package/.claude/agents/developers/react-frontend-engineer.md +121 -0
  28. package/.claude/agents/{frontend → developers}/state-architect.md +1 -0
  29. package/.claude/agents/{frontend → developers}/ui-designer.md +1 -0
  30. package/.claude/agents/development/backend/dev-backend-api.md +0 -29
  31. package/.claude/agents/development/npm-package-specialist.md +355 -347
  32. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +8 -0
  33. package/.claude/agents/documentation/api-docs.md +8 -0
  34. package/.claude/agents/github/github-commit-agent.md +125 -117
  35. package/.claude/agents/goal/goal-planner.md +8 -0
  36. package/.claude/agents/infrastructure/README.md +100 -0
  37. package/.claude/agents/{specialized → infrastructure}/devops-engineer.md +131 -150
  38. package/.claude/agents/planners/README.md +94 -0
  39. package/.claude/agents/{core-agents → planners}/analyst.md +1 -22
  40. package/.claude/agents/{planning-team → planners}/api-designer-persona.md +8 -0
  41. package/.claude/agents/{core-agents → planners}/architect.md +7 -20
  42. package/.claude/agents/{core-agents → planners}/planner.md +0 -21
  43. package/.claude/agents/{planning-team → planners}/security-architect-persona.md +8 -28
  44. package/.claude/agents/{planning-team → planners}/system-architect-persona.md +6 -38
  45. package/.claude/agents/{architecture → planners}/system-architect.md +12 -17
  46. package/.claude/agents/product-owner-team/accessibility-advocate-persona.md +132 -161
  47. package/.claude/agents/product-owner-team/power-user-persona.md +149 -182
  48. package/.claude/agents/retrospective-analyst.md +84 -0
  49. package/.claude/agents/reviewers/README.md +58 -0
  50. package/.claude/agents/{analysis → reviewers}/code-quality-validator.md +8 -17
  51. package/.claude/agents/reviewers/reviewer.md +181 -0
  52. package/.claude/agents/sparc/architecture.md +6 -25
  53. package/.claude/agents/sparc/pseudocode.md +6 -0
  54. package/.claude/agents/sparc/refinement.md +6 -0
  55. package/.claude/agents/sparc/specification.md +1 -0
  56. package/.claude/agents/specialists/README.md +60 -0
  57. package/.claude/agents/{core-agents → specialists}/base-template-generator.md +8 -21
  58. package/.claude/agents/{specialized → specialists}/cli-agent-optimizer.md +1 -1
  59. package/.claude/agents/{specialized → specialists}/code-booster.md +1 -0
  60. package/.claude/agents/{consensus → specialists}/consensus-builder.md +1 -17
  61. package/.claude/agents/{specialized/mobile → specialists}/mobile-dev.md +0 -20
  62. package/.claude/agents/{core-agents → specialists}/performance-benchmarker.md +134 -148
  63. package/.claude/agents/{specialized → specialists}/rust-developer.md +1 -20
  64. package/.claude/agents/{specialized → specialists}/rust-enterprise-developer.md +1 -20
  65. package/.claude/agents/{specialized → specialists}/rust-mvp-developer.md +1 -20
  66. package/.claude/agents/{core-agents → specialists}/security-manager.md +68 -88
  67. package/.claude/agents/{security → specialists}/security-specialist-existing.md +6 -57
  68. package/.claude/agents/{security → specialists}/security-specialist.md +6 -30
  69. package/.claude/agents/{specialized/mobile → specialists}/spec-mobile-react-native.md +2 -21
  70. package/.claude/agents/testers/README.md +94 -0
  71. package/.claude/agents/{testing → testers}/e2e/playwright-agent.md +1 -20
  72. package/.claude/agents/{testing → testers}/interaction-tester.md +1 -20
  73. package/.claude/agents/{testing → testers}/playwright-tester.md +1 -1
  74. package/.claude/agents/testers/tester.md +139 -0
  75. package/.claude/agents/testers/unit/tdd-london-swarm.md +49 -0
  76. package/.claude/agents/testers/validation/production-validator.md +33 -0
  77. package/.claude/agents-ignore/cfn-loop-coordinator.md +157 -0
  78. package/.claude/agents-ignore/cfn-loop-coordinator.md.backup +156 -0
  79. package/.claude/agents-ignore/coordinator.md.backup +182 -0
  80. package/.claude/agents-ignore/cost-savings-cfn-loop-coordinator.md +760 -0
  81. package/.claude/agents-ignore/cost-savings-coordinator.md +173 -0
  82. package/.claude/artifacts/ace-reflections/REFLECT-001-summary.json +39 -0
  83. package/.claude/artifacts/ace-reflections/sprint-7_$(date -u +/"%Y%m%d_%H%M%S/").json" +47 -0
  84. package/.claude/commands/CFN_COORDINATOR_PARAMETERS.md +10 -10
  85. package/.claude/commands/cfn-loop-epic.md +3 -3
  86. package/.claude/commands/cfn-loop-single.md +3 -3
  87. package/.claude/commands/cfn-loop-sprints.md +1 -1
  88. package/.claude/commands/cfn-loop.md +3 -3
  89. package/.claude/commands/cfn-mode.md +20 -0
  90. package/.claude/commands/write-plan.md +104 -0
  91. package/.claude/data/cfn-loop.db +0 -0
  92. package/.claude/data/cfn_loop_logs.db +0 -0
  93. package/.claude/hooks/BACKUP_USAGE.md +243 -0
  94. package/.claude/hooks/post-edit-cfn-retrospective.sh +79 -0
  95. package/.claude/hooks/post-edit.sh +21 -0
  96. package/.claude/hooks/pre-edit-backup.sh +71 -0
  97. package/.claude/hooks/restore-from-backup.sh +37 -0
  98. package/.claude/prompts/cfn-loop-context.md +115 -0
  99. package/.claude/prompts/loop-specific/loop2.md +50 -0
  100. package/.claude/prompts/loop-specific/loop3.md +43 -0
  101. package/.claude/prompts/loop-specific/loop4.md +54 -0
  102. package/.claude/root-claude-distribute/CLAUDE.md +76 -2
  103. package/.claude/skills/ace-system/sprint-7-lessons.json +46 -0
  104. package/.claude/skills/ace-system/store-reflection.sh +33 -136
  105. package/.claude/skills/agent-discovery/SKILL.md +40 -0
  106. package/.claude/skills/agent-discovery/agents-registry-clean.json +0 -0
  107. package/.claude/skills/agent-discovery/agents-registry-fixed.json +19 -0
  108. package/.claude/skills/agent-discovery/agents-registry.json +718 -0
  109. package/.claude/skills/agent-discovery/discover-agents.py +175 -0
  110. package/.claude/skills/agent-discovery/discover-agents.sh +87 -0
  111. package/.claude/skills/agent-discovery/invoke-registry.sh +11 -0
  112. package/.claude/skills/agent-discovery/temp_script.py +0 -0
  113. package/.claude/skills/agent-output-processing/SKILL.md +359 -0
  114. package/.claude/skills/agent-selector/SKILL.md +90 -0
  115. package/.claude/skills/agent-selector/select-agents.sh +96 -0
  116. package/.claude/skills/agent-spawning/agent-selection-guide.md +1 -1
  117. package/.claude/skills/agent-swap/SKILL.md +36 -0
  118. package/.claude/skills/agent-swap/recommend-swap.sh +60 -0
  119. package/.claude/skills/api-validation/test-endpoints.sh +54 -0
  120. package/.claude/skills/automatic-memory-persistence/SKILL.md +73 -0
  121. package/.claude/skills/automatic-memory-persistence/persist-agent-output.sh +49 -0
  122. package/.claude/skills/automatic-memory-persistence/query-agent-history.sh +35 -0
  123. package/.claude/skills/automatic-memory-persistence/test-memory-persistence.sh +235 -0
  124. package/.claude/skills/cfn-loop-orchestration/README.md +41 -0
  125. package/.claude/skills/cfn-loop-orchestration/SKILL.md +299 -0
  126. package/.claude/skills/cfn-loop-orchestration/helpers/auto-tune-timeouts.sh +228 -0
  127. package/.claude/skills/cfn-loop-orchestration/helpers/consensus.sh +84 -0
  128. package/.claude/skills/cfn-loop-orchestration/helpers/deliverable-verifier.sh +71 -0
  129. package/.claude/skills/cfn-loop-orchestration/helpers/gate-check.sh +90 -0
  130. package/.claude/skills/cfn-loop-orchestration/helpers/iteration-manager.sh +87 -0
  131. package/.claude/skills/cfn-loop-orchestration/helpers/timeout-calculator.sh +51 -0
  132. package/.claude/skills/cfn-loop-orchestration/inject-loop-context.sh +41 -0
  133. package/.claude/skills/cfn-loop-orchestration/monitor-execution.sh +156 -0
  134. package/.claude/skills/cfn-loop-orchestration/orchestrate.sh +840 -0
  135. package/.claude/skills/cfn-loop-orchestration/security_utils.sh +99 -0
  136. package/.claude/skills/cfn-loop-orchestration/test-cfn-orchestration.sh +281 -0
  137. package/.claude/skills/cfn-loop-orchestration/test-edge-cases.sh +188 -0
  138. package/.claude/skills/cfn-loop-validation/SKILL.md +307 -217
  139. package/.claude/skills/complexity-estimator/SKILL.md +96 -0
  140. package/.claude/skills/complexity-estimator/estimate-complexity.sh +144 -0
  141. package/.claude/skills/context-pruner/SKILL.md +75 -0
  142. package/.claude/skills/context-pruner/prune-context.sh +73 -0
  143. package/.claude/skills/defense-in-depth/SKILL.md +133 -0
  144. package/.claude/skills/dependency-extractor/SKILL.md +35 -0
  145. package/.claude/skills/dependency-extractor/extract-dependencies.sh +66 -0
  146. package/.claude/skills/epic-decomposer/SKILL.md +44 -0
  147. package/.claude/skills/epic-decomposer/decompose-epic.sh +104 -0
  148. package/.claude/skills/improvement-recommender/SKILL.md +33 -0
  149. package/.claude/skills/improvement-recommender/recommend-improvements.sh +92 -0
  150. package/.claude/skills/intervention-detector/SKILL.md +39 -0
  151. package/.claude/skills/intervention-detector/detect-intervention.sh +111 -0
  152. package/.claude/skills/intervention-orchestrator/SKILL.md +43 -0
  153. package/.claude/skills/intervention-orchestrator/execute-intervention.sh +59 -0
  154. package/.claude/skills/loop2-output-processing/SKILL.md +163 -0
  155. package/.claude/skills/loop2-output-processing/execute-and-extract.sh +77 -0
  156. package/.claude/skills/loop2-output-processing/execute-and-extract.sh.backup +36 -0
  157. package/.claude/skills/loop2-output-processing/parse-feedback.sh +147 -0
  158. package/.claude/skills/loop2-output-processing/process-validator-output.sh +275 -0
  159. package/.claude/skills/loop2-output-processing/test-bug27-fix.sh +200 -0
  160. package/.claude/skills/loop2-output-processing/test-loop2-processing.sh +113 -0
  161. package/.claude/skills/loop3-output-processing/AGENT_COMPLETION_PROTOCOL.md +206 -0
  162. package/.claude/skills/loop3-output-processing/SKILL.md +421 -0
  163. package/.claude/skills/loop3-output-processing/calculate-confidence.sh +28 -0
  164. package/.claude/skills/loop3-output-processing/execute-and-extract.sh +85 -0
  165. package/.claude/skills/loop3-output-processing/parse-confidence.sh +31 -0
  166. package/.claude/skills/loop3-output-processing/test-agent-timeout.sh +327 -0
  167. package/.claude/skills/loop3-output-processing/test-loop3-processing.sh +155 -0
  168. package/.claude/skills/loop3-output-processing/verify-deliverables.sh +42 -0
  169. package/.claude/skills/pattern-extraction/SKILL.md +30 -0
  170. package/.claude/skills/pattern-extraction/extract-patterns.sh +80 -0
  171. package/.claude/skills/playbook/SKILL.md +113 -0
  172. package/.claude/skills/playbook/init-playbook.sh +54 -0
  173. package/.claude/skills/playbook/playbook.db +0 -0
  174. package/.claude/skills/playbook/query-playbook.sh +79 -0
  175. package/.claude/skills/playbook/update-playbook.sh +69 -0
  176. package/.claude/skills/playbook-auto-update/SKILL.md +29 -0
  177. package/.claude/skills/playbook-auto-update/auto-update-playbook.sh +86 -0
  178. package/.claude/skills/product-owner-decision/SKILL.md +332 -0
  179. package/.claude/skills/product-owner-decision/execute-decision.sh +176 -0
  180. package/.claude/skills/product-owner-decision/parse-decision.sh +66 -0
  181. package/.claude/skills/product-owner-decision/validate-deliverables.sh +82 -0
  182. package/.claude/skills/redis-coordination/LOGGING.md +260 -0
  183. package/.claude/skills/redis-coordination/README.md +30 -29
  184. package/.claude/skills/redis-coordination/SKILL.md +685 -83
  185. package/.claude/skills/redis-coordination/analyze-task-complexity.sh +277 -0
  186. package/.claude/skills/redis-coordination/cfn-loop-exec.sh +468 -0
  187. package/.claude/skills/redis-coordination/collect-confidence-scores.sh +179 -0
  188. package/.claude/skills/redis-coordination/collect-results.sh +75 -0
  189. package/.claude/skills/redis-coordination/data/cfn-loop.db +0 -0
  190. package/.claude/skills/redis-coordination/{test-orchestrator.sh → demos/test-orchestrator.sh} +25 -0
  191. package/.claude/skills/redis-coordination/execute-product-owner-decision.sh +258 -0
  192. package/.claude/skills/redis-coordination/get-agent-timeout.sh +176 -176
  193. package/.claude/skills/redis-coordination/invoke-waiting-mode.sh +93 -227
  194. package/.claude/skills/redis-coordination/invoke-waiting-mode.sh.backup-p7 +423 -0
  195. package/.claude/skills/redis-coordination/log-event.sh +109 -0
  196. package/.claude/skills/redis-coordination/monitor-cfn-violations.sh +391 -0
  197. package/.claude/skills/redis-coordination/orchestrate-cfn-loop-v3.sh +141 -0
  198. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh +31 -993
  199. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup +38 -0
  200. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-1761167675 +1672 -0
  201. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-p5 +1604 -0
  202. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase1 +1550 -0
  203. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase2 +1621 -0
  204. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-phase3 +1621 -0
  205. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.bak +0 -0
  206. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.broken +1627 -0
  207. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.corrupted +80 -0
  208. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.deprecated +1864 -0
  209. package/.claude/skills/redis-coordination/query-logs.sh +103 -0
  210. package/.claude/skills/redis-coordination/retrieve-context.sh +58 -0
  211. package/.claude/skills/redis-coordination/select-specialist-agent.sh +371 -0
  212. package/.claude/skills/redis-coordination/semantic-match-tfidf.py +252 -0
  213. package/.claude/skills/redis-coordination/send-heartbeat.sh +164 -72
  214. package/.claude/skills/redis-coordination/signal.sh +38 -0
  215. package/.claude/skills/redis-coordination/store-context.sh +86 -0
  216. package/.claude/skills/redis-coordination/test-context-injection.sh +354 -0
  217. package/.claude/skills/redis-coordination/test-timeout-enforcement.sh +513 -0
  218. package/.claude/skills/redis-coordination/tests/convert-line-endings.sh +15 -0
  219. package/.claude/skills/redis-coordination/tests/dlq-functionality-test.sh +101 -101
  220. package/.claude/skills/redis-coordination/tests/edge-cases-test.sh +98 -98
  221. package/.claude/skills/redis-coordination/tests/integration-test.sh +169 -169
  222. package/.claude/skills/redis-coordination/tests/retry-mechanism-test.sh +81 -81
  223. package/.claude/skills/redis-coordination/tests/run-test-suite.sh +91 -91
  224. package/.claude/skills/redis-coordination/tests/run-tests.sh +4 -0
  225. package/.claude/skills/redis-coordination/tests/test-primitives.sh +166 -0
  226. package/.claude/skills/redis-coordination/tests/test-utils.sh +53 -121
  227. package/.claude/skills/redis-coordination/tests/test_coordination_primitives.sh.deprecated +20 -0
  228. package/.claude/skills/redis-coordination/tests/test_utils.sh +49 -0
  229. package/.claude/skills/redis-coordination/v2_modularization/core_orchestration.sh +76 -0
  230. package/.claude/skills/redis-coordination/validate-parameters.sh +492 -0
  231. package/.claude/skills/retrospective-report/SKILL.md +31 -0
  232. package/.claude/skills/retrospective-report/generate-report.sh +101 -0
  233. package/.claude/skills/run-all-skill-tests.sh +124 -0
  234. package/.claude/skills/scope-simplifier/SKILL.md +37 -0
  235. package/.claude/skills/scope-simplifier/simplify-scope.sh +68 -0
  236. package/.claude/skills/simplified-agent-lifecycle/COST_ANALYSIS.md +49 -0
  237. package/.claude/skills/simplified-agent-lifecycle/DESIGN.md +98 -0
  238. package/.claude/skills/simplified-agent-lifecycle/MIGRATION_PLAN.md +74 -0
  239. package/.claude/skills/specialist-injection/SKILL.md +41 -0
  240. package/.claude/skills/specialist-injection/recommend-specialist.sh +57 -0
  241. package/.claude/skills/sprint-execution/SKILL.md +27 -0
  242. package/.claude/skills/sprint-execution/execute-sprint-task.sh +59 -0
  243. package/.claude/skills/sprint-execution/execute-sprint.sh +65 -0
  244. package/.claude/skills/sprint-planner/SKILL.md +37 -0
  245. package/.claude/skills/sprint-planner/plan-sprint.sh +85 -0
  246. package/.claude/skills/standardized-error-handling/SKILL.md +56 -0
  247. package/.claude/skills/standardized-error-handling/capture-agent-error.sh +87 -0
  248. package/.claude/skills/standardized-error-handling/test-error-handling.sh +166 -0
  249. package/.claude/skills/task-classifier/SKILL.md +94 -0
  250. package/.claude/skills/task-classifier/classify-task.sh +115 -0
  251. package/.claude/skills/validation-templates/SKILL.md +47 -0
  252. package/.claude/skills/validation-templates/content.json +38 -0
  253. package/.claude/skills/validation-templates/data.json +38 -0
  254. package/.claude/skills/validation-templates/design.json +38 -0
  255. package/.claude/skills/validation-templates/infrastructure.json +38 -0
  256. package/.claude/skills/validation-templates/research.json +38 -0
  257. package/.claude/skills/validation-templates/software.json +38 -0
  258. package/.claude/skills/webapp-testing/README.md +142 -0
  259. package/.claude/skills/webapp-testing/SCREENSHOT_NAMING_CONVENTION.md +547 -0
  260. package/.claude/skills/webapp-testing/SKILL.md +877 -0
  261. package/.claude/skills/webapp-testing/capture-screenshot.sh +238 -0
  262. package/.claude/skills/webapp-testing/cfn-loop-integration.sh +265 -0
  263. package/.claude/skills/webapp-testing/compare-screenshots.sh +199 -0
  264. package/.claude/skills/webapp-testing/init-storage.sh +150 -0
  265. package/.claude/skills/webapp-testing/set-baseline.sh +196 -0
  266. package/.claude/skills/webapp-testing/test-webapp-testing.sh +233 -0
  267. package/.claude/spawn-pattern-examples.md +3 -3
  268. package/CLAUDE.md +319 -45
  269. package/README.md +598 -251
  270. package/dist/agents/agent-loader.js +146 -165
  271. package/dist/agents/agent-loader.js.map +1 -1
  272. package/dist/cli/agent-command.js +2 -0
  273. package/dist/cli/agent-command.js.map +1 -1
  274. package/dist/cli/agent-definition-parser.js +7 -0
  275. package/dist/cli/agent-definition-parser.js.map +1 -1
  276. package/dist/cli/agent-executor.js +145 -11
  277. package/dist/cli/agent-executor.js.map +1 -1
  278. package/dist/cli/agent-prompt-builder.js +81 -1
  279. package/dist/cli/agent-prompt-builder.js.map +1 -1
  280. package/dist/cli/agent-spawn.js +10 -1
  281. package/dist/cli/agent-spawn.js.map +1 -1
  282. package/dist/cli/anthropic-client.js +192 -13
  283. package/dist/cli/anthropic-client.js.map +1 -1
  284. package/dist/cli/cfn-context.js +150 -0
  285. package/dist/cli/cfn-context.js.map +1 -1
  286. package/dist/cli/cfn-fork.js +159 -0
  287. package/dist/cli/cfn-fork.js.map +1 -0
  288. package/dist/cli/cli-agent-context.js +8 -3
  289. package/dist/cli/cli-agent-context.js.map +1 -1
  290. package/dist/cli/config-manager.js +109 -91
  291. package/dist/cli/config-manager.js.map +1 -1
  292. package/dist/cli/conversation-fork.js +201 -0
  293. package/dist/cli/conversation-fork.js.map +1 -0
  294. package/dist/cli/index.js +4 -0
  295. package/dist/cli/index.js.map +1 -1
  296. package/dist/cli/tool-definitions.js +263 -0
  297. package/dist/cli/tool-definitions.js.map +1 -0
  298. package/dist/cli/tool-executor.js +247 -0
  299. package/dist/cli/tool-executor.js.map +1 -0
  300. package/dist/hello.js +8 -0
  301. package/dist/hello.js.map +1 -0
  302. package/package.json +14 -6
  303. package/scripts/README.md +68 -0
  304. package/scripts/cfn-intervention-example.sh +21 -0
  305. package/scripts/migrate-test-infrastructure.sh +40 -0
  306. package/scripts/validate-test-migration.sh +49 -0
  307. package/scripts/verify-no-secrets.sh +55 -0
  308. package/.claude/agents/architecture/system-architect.md.backup +0 -603
  309. package/.claude/agents/code-booster.md +0 -131
  310. package/.claude/agents/consensus/performance-benchmarker.md +0 -101
  311. package/.claude/agents/consensus/security-manager.md +0 -107
  312. package/.claude/agents/context-curator.md +0 -167
  313. package/.claude/agents/context-reflector.md +0 -65
  314. package/.claude/agents/core-agents/cfn-loop-coordinator.md +0 -134
  315. package/.claude/agents/core-agents/code-quality-validator.md +0 -149
  316. package/.claude/agents/core-agents/context-curator.md +0 -452
  317. package/.claude/agents/core-agents/context-reflector.md +0 -273
  318. package/.claude/agents/core-agents/cost-savings-cfn-loop-coordinator.md +0 -235
  319. package/.claude/agents/core-agents/tester.md +0 -170
  320. package/.claude/agents/development/backend-dev.md +0 -165
  321. package/.claude/agents/devops/devops-engineer.md +0 -148
  322. package/.claude/agents/frontend/interaction-tester.md +0 -139
  323. package/.claude/agents/frontend/react-frontend-engineer.md +0 -9
  324. package/.claude/agents/personas/accessibility-advocate-persona.md +0 -107
  325. package/.claude/agents/testing/production-validator.md +0 -179
  326. package/.claude/agents/testing/tdd-london-swarm.md +0 -209
  327. package/.claude/agents/testing/unit/tdd-london-swarm.md +0 -43
  328. package/.claude/agents/testing/validation/production-validator.md +0 -43
  329. package/.claude/api-configs/config-current-zai-config.env +0 -62
  330. package/.claude/api-configs/config-test-zai-config.env +0 -62
  331. package/.claude/api-configs/env-backups/before-anthropic-20251020-025404.env +0 -62
  332. package/.claude/api-configs/env-backups/before-restore-20251020-025431.env +0 -62
  333. package/.claude/skills/redis-coordination/orchestrate-cfn-loop.sh.backup-1760949407 +0 -933
  334. package/dist/cli/cli-agent-context.test.js +0 -451
  335. package/dist/cli/cli-agent-context.test.js.map +0 -1
  336. package/dist/coordination/fleet-manager.test.js +0 -141
  337. package/dist/coordination/fleet-manager.test.js.map +0 -1
  338. package/dist/middleware/transparency-middleware.test.js +0 -184
  339. package/dist/middleware/transparency-middleware.test.js.map +0 -1
  340. /package/.claude/agents/{core-agents → developers}/researcher.md +0 -0
  341. /package/.claude/agents/{consensus → specialists}/crdt-synchronizer.md +0 -0
  342. /package/.claude/agents/{consensus → specialists}/quorum-manager.md +0 -0
  343. /package/.claude/agents/{consensus → specialists}/raft-manager.md +0 -0
  344. /package/.claude/{agents/core-agents → agents-ignore}/coordinator.md +0 -0
  345. /package/.claude/{agents/core-agents/cost-savings-coordinator.md → agents-ignore/cost-savings-coordinator.md.backup} +0 -0
  346. /package/.claude/skills/redis-coordination/{phase4-wake-queue-test-report.md → demos/phase4-wake-queue-test-report.md} +0 -0
  347. /package/.claude/skills/redis-coordination/{test-bzpopmin-fix.sh → demos/test-bzpopmin-fix.sh} +0 -0
  348. /package/.claude/skills/redis-coordination/{test-cancel-swarm.sh → demos/test-cancel-swarm.sh} +0 -0
  349. /package/.claude/skills/redis-coordination/{test-dlq.sh → demos/test-dlq.sh} +0 -0
  350. /package/.claude/skills/redis-coordination/{test-iteration-feedback.sh → demos/test-iteration-feedback.sh} +0 -0
  351. /package/.claude/skills/redis-coordination/{test-priority-wake-phase4-unix.sh → demos/test-priority-wake-phase4-unix.sh} +0 -0
  352. /package/.claude/skills/redis-coordination/{test-priority-wake-phase4.sh → demos/test-priority-wake-phase4.sh} +0 -0
  353. /package/.claude/skills/redis-coordination/{test-priority-wake.sh → demos/test-priority-wake.sh} +0 -0
  354. /package/.claude/skills/redis-coordination/{test-quick-fix.sh → demos/test-quick-fix.sh} +0 -0
  355. /package/.claude/skills/redis-coordination/{test-quorum-absolute.sh → demos/test-quorum-absolute.sh} +0 -0
  356. /package/.claude/skills/redis-coordination/{test-quorum-fallback.sh → demos/test-quorum-fallback.sh} +0 -0
  357. /package/.claude/skills/redis-coordination/{test-quorum-percentage.sh → demos/test-quorum-percentage.sh} +0 -0
  358. /package/.claude/skills/redis-coordination/{test-quorum-with-retry.sh → demos/test-quorum-with-retry.sh} +0 -0
  359. /package/.claude/skills/redis-coordination/{test-quorum.sh → demos/test-quorum.sh} +0 -0
  360. /package/.claude/skills/redis-coordination/{test-shutdown-handling.sh → demos/test-shutdown-handling.sh} +0 -0
  361. /package/.claude/skills/redis-coordination/{test-shutdown.sh → demos/test-shutdown.sh} +0 -0
  362. /package/.claude/skills/redis-coordination/{test-utils-unix.sh → demos/test-utils-unix.sh} +0 -0
  363. /package/.claude/skills/redis-coordination/{test-utils.sh → demos/test-utils.sh} +0 -0
  364. /package/.claude/skills/redis-coordination/{test-waiting-mode.sh → demos/test-waiting-mode.sh} +0 -0
@@ -0,0 +1,228 @@
1
+ #!/bin/bash
2
+ #
3
+ # Auto-Tune Timeouts Helper
4
+ #
5
+ # Dynamically calculates optimal timeouts for CFN Loop agents based on:
6
+ # - Historical performance data
7
+ # - Agent type (implementer vs validator)
8
+ # - Task complexity
9
+ # - Current system load
10
+ #
11
+ # Usage:
12
+ # auto-tune-timeouts.sh --agent-type <type> --task-complexity <low|medium|high> [--history-file <file>]
13
+ #
14
+ # Returns: Recommended timeout in seconds
15
+
16
+ set -euo pipefail
17
+
18
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
19
+
20
+ # Default configuration
21
+ DEFAULT_TIMEOUT=300
22
+ MIN_TIMEOUT=60
23
+ MAX_TIMEOUT=1800
24
+ HISTORY_FILE="/tmp/cfn-agent-performance-history.json"
25
+
26
+ # Baseline timeouts by agent type (seconds)
27
+ declare -A BASELINE_TIMEOUTS=(
28
+ ["implementer"]=300
29
+ ["validator"]=180
30
+ ["coordinator"]=600
31
+ ["product-owner"]=120
32
+ )
33
+
34
+ # Complexity multipliers
35
+ declare -A COMPLEXITY_MULTIPLIERS=(
36
+ ["low"]=0.7
37
+ ["medium"]=1.0
38
+ ["high"]=1.5
39
+ )
40
+
41
+ # Parse arguments
42
+ AGENT_TYPE=""
43
+ TASK_COMPLEXITY="medium"
44
+ CUSTOM_HISTORY_FILE=""
45
+
46
+ while [[ $# -gt 0 ]]; do
47
+ case $1 in
48
+ --agent-type)
49
+ AGENT_TYPE="$2"
50
+ shift 2
51
+ ;;
52
+ --task-complexity)
53
+ TASK_COMPLEXITY="$2"
54
+ shift 2
55
+ ;;
56
+ --history-file)
57
+ CUSTOM_HISTORY_FILE="$2"
58
+ shift 2
59
+ ;;
60
+ --help)
61
+ echo "Usage: auto-tune-timeouts.sh --agent-type <type> --task-complexity <low|medium|high> [--history-file <file>]"
62
+ echo ""
63
+ echo "Agent Types: implementer, validator, coordinator, product-owner"
64
+ echo "Task Complexity: low, medium, high"
65
+ echo ""
66
+ echo "Returns: Recommended timeout in seconds"
67
+ exit 0
68
+ ;;
69
+ *)
70
+ echo "Unknown argument: $1"
71
+ exit 1
72
+ ;;
73
+ esac
74
+ done
75
+
76
+ # Validation
77
+ if [ -z "$AGENT_TYPE" ]; then
78
+ echo "Error: --agent-type is required"
79
+ exit 1
80
+ fi
81
+
82
+ if [[ ! "${BASELINE_TIMEOUTS[$AGENT_TYPE]+isset}" ]]; then
83
+ echo "Error: Unknown agent type '$AGENT_TYPE'"
84
+ echo "Valid types: ${!BASELINE_TIMEOUTS[@]}"
85
+ exit 1
86
+ fi
87
+
88
+ if [[ ! "${COMPLEXITY_MULTIPLIERS[$TASK_COMPLEXITY]+isset}" ]]; then
89
+ echo "Error: Unknown task complexity '$TASK_COMPLEXITY'"
90
+ echo "Valid complexities: ${!COMPLEXITY_MULTIPLIERS[@]}"
91
+ exit 1
92
+ fi
93
+
94
+ # Use custom history file if provided
95
+ if [ -n "$CUSTOM_HISTORY_FILE" ]; then
96
+ HISTORY_FILE="$CUSTOM_HISTORY_FILE"
97
+ fi
98
+
99
+ # Function to get historical average execution time
100
+ get_historical_avg() {
101
+ local agent_type=$1
102
+
103
+ if [ ! -f "$HISTORY_FILE" ]; then
104
+ echo "$DEFAULT_TIMEOUT"
105
+ return
106
+ fi
107
+
108
+ # Extract average execution time for this agent type
109
+ local avg_time=$(jq -r --arg type "$agent_type" \
110
+ '.history[]
111
+ | select(.agentType == $type)
112
+ | .executionTime
113
+ | select(. != null)' "$HISTORY_FILE" 2>/dev/null | \
114
+ awk '{ sum += $1; count++ } END { if (count > 0) print sum/count; else print 0 }')
115
+
116
+ if [ -z "$avg_time" ] || [ "$avg_time" = "0" ]; then
117
+ echo "$DEFAULT_TIMEOUT"
118
+ else
119
+ echo "$avg_time"
120
+ fi
121
+ }
122
+
123
+ # Function to get system load factor
124
+ get_load_factor() {
125
+ # Check if on Linux
126
+ if [ -f /proc/loadavg ]; then
127
+ local load_1min=$(cat /proc/loadavg | awk '{print $1}')
128
+ local cpu_count=$(nproc 2>/dev/null || echo 1)
129
+
130
+ # Calculate load factor (load per CPU)
131
+ local load_factor=$(echo "scale=2; $load_1min / $cpu_count" | bc)
132
+
133
+ # Return multiplier (1.0 baseline, increase if high load)
134
+ if (( $(echo "$load_factor > 2.0" | bc -l) )); then
135
+ echo "1.5" # High load, increase timeout by 50%
136
+ elif (( $(echo "$load_factor > 1.0" | bc -l) )); then
137
+ echo "1.2" # Moderate load, increase timeout by 20%
138
+ else
139
+ echo "1.0" # Normal load
140
+ fi
141
+ else
142
+ # Non-Linux or can't determine load
143
+ echo "1.0"
144
+ fi
145
+ }
146
+
147
+ # Function to get Redis latency factor
148
+ get_redis_latency_factor() {
149
+ # Measure Redis ping latency
150
+ local start_ns=$(date +%s%N)
151
+ redis-cli PING >/dev/null 2>&1 || return
152
+ local end_ns=$(date +%s%N)
153
+
154
+ local latency_ns=$((end_ns - start_ns))
155
+ local latency_ms=$(echo "scale=2; $latency_ns / 1000000" | bc)
156
+
157
+ # If Redis is slow, increase timeout
158
+ if (( $(echo "$latency_ms > 100" | bc -l) )); then
159
+ echo "1.3" # Very slow Redis, increase timeout by 30%
160
+ elif (( $(echo "$latency_ms > 50" | bc -l) )); then
161
+ echo "1.1" # Slow Redis, increase timeout by 10%
162
+ else
163
+ echo "1.0" # Normal Redis performance
164
+ fi
165
+ }
166
+
167
+ # Calculate base timeout
168
+ baseline_timeout=${BASELINE_TIMEOUTS[$AGENT_TYPE]}
169
+
170
+ # Get historical average
171
+ historical_avg=$(get_historical_avg "$AGENT_TYPE")
172
+
173
+ # If we have historical data, use weighted average
174
+ if [ "$historical_avg" != "$DEFAULT_TIMEOUT" ]; then
175
+ # 70% historical, 30% baseline
176
+ base_timeout=$(echo "scale=0; ($historical_avg * 0.7) + ($baseline_timeout * 0.3)" | bc)
177
+ else
178
+ base_timeout=$baseline_timeout
179
+ fi
180
+
181
+ # Apply complexity multiplier
182
+ complexity_multiplier=${COMPLEXITY_MULTIPLIERS[$TASK_COMPLEXITY]}
183
+ timeout_after_complexity=$(echo "scale=0; $base_timeout * $complexity_multiplier" | bc)
184
+
185
+ # Apply system load factor
186
+ load_factor=$(get_load_factor)
187
+ timeout_after_load=$(echo "scale=0; $timeout_after_complexity * $load_factor" | bc)
188
+
189
+ # Apply Redis latency factor
190
+ redis_factor=$(get_redis_latency_factor)
191
+ final_timeout=$(echo "scale=0; $timeout_after_load * $redis_factor" | bc)
192
+
193
+ # Ensure timeout is within bounds
194
+ if (( $(echo "$final_timeout < $MIN_TIMEOUT" | bc -l) )); then
195
+ final_timeout=$MIN_TIMEOUT
196
+ fi
197
+
198
+ if (( $(echo "$final_timeout > $MAX_TIMEOUT" | bc -l) )); then
199
+ final_timeout=$MAX_TIMEOUT
200
+ fi
201
+
202
+ # Round to integer
203
+ final_timeout=$(printf "%.0f" "$final_timeout")
204
+
205
+ # Output result (JSON format for easy parsing)
206
+ cat <<EOF
207
+ {
208
+ "agentType": "$AGENT_TYPE",
209
+ "taskComplexity": "$TASK_COMPLEXITY",
210
+ "recommendedTimeout": $final_timeout,
211
+ "calculation": {
212
+ "baselineTimeout": $baseline_timeout,
213
+ "historicalAverage": $historical_avg,
214
+ "complexityMultiplier": $complexity_multiplier,
215
+ "loadFactor": $load_factor,
216
+ "redisLatencyFactor": $redis_factor
217
+ },
218
+ "bounds": {
219
+ "min": $MIN_TIMEOUT,
220
+ "max": $MAX_TIMEOUT
221
+ }
222
+ }
223
+ EOF
224
+
225
+ # Also output just the timeout value to stderr for easy shell capture
226
+ echo "$final_timeout" >&2
227
+
228
+ exit 0
@@ -0,0 +1,84 @@
1
+ #!/usr/bin/env bash
2
+
3
+ ##############################################################################
4
+ # Consensus Checker
5
+ # Collects and validates Loop 2 consensus scores
6
+ #
7
+ # Usage:
8
+ # consensus.sh --task-id <id> \
9
+ # --agents <agent1,agent2,...> \
10
+ # --threshold <0.0-1.0> \
11
+ # --min-quorum <n|n%|0.n>
12
+ #
13
+ # Returns:
14
+ # Exit 0: Consensus reached
15
+ # Exit 1: Consensus failed
16
+ ##############################################################################
17
+
18
+ set -euo pipefail
19
+
20
+ # Parameters
21
+ TASK_ID=""
22
+ AGENTS=""
23
+ THRESHOLD=""
24
+ MIN_QUORUM=""
25
+
26
+ # Parse arguments
27
+ while [[ $# -gt 0 ]]; do
28
+ case $1 in
29
+ --task-id) TASK_ID="$2"; shift 2 ;;
30
+ --agents) AGENTS="$2"; shift 2 ;;
31
+ --threshold) THRESHOLD="$2"; shift 2 ;;
32
+ --min-quorum) MIN_QUORUM="$2"; shift 2 ;;
33
+ *) echo "Unknown option: $1"; exit 1 ;;
34
+ esac
35
+ done
36
+
37
+ # Validation
38
+ if [ -z "$TASK_ID" ] || [ -z "$AGENTS" ] || [ -z "$THRESHOLD" ] || [ -z "$MIN_QUORUM" ]; then
39
+ echo "Error: Missing required parameters"
40
+ exit 1
41
+ fi
42
+
43
+ # Use Redis Coordination skill to collect consensus scores
44
+ SKILL_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
45
+ REDIS_COORD_SKILL="$SKILL_DIR/redis-coordination"
46
+
47
+ echo "Consensus Check Configuration:"
48
+ echo " Task ID: $TASK_ID"
49
+ echo " Agent IDs: $AGENTS"
50
+ echo " Min Quorum: $MIN_QUORUM"
51
+ echo ""
52
+
53
+ # Collect Loop 2 consensus scores
54
+ CONSENSUS=$("$REDIS_COORD_SKILL/invoke-waiting-mode.sh" collect \
55
+ --task-id "$TASK_ID" \
56
+ --agent-ids "$AGENTS" \
57
+ --min-quorum "$MIN_QUORUM" 2>&1) || {
58
+ echo "❌ Error: Failed to collect Loop 2 consensus scores"
59
+ echo " Agent IDs: $AGENTS"
60
+ echo " Output: $CONSENSUS"
61
+ exit 1
62
+ }
63
+
64
+ # Validate consensus is a valid number
65
+ if ! [[ "$CONSENSUS" =~ ^[0-9]+\.?[0-9]*$ ]]; then
66
+ echo "⚠️ WARNING: Invalid consensus value: $CONSENSUS (expected numeric)"
67
+ echo " Defaulting to 0.0"
68
+ CONSENSUS="0.0"
69
+ fi
70
+
71
+ echo "Loop 2 Consensus Check:"
72
+ echo " Consensus: $CONSENSUS"
73
+ echo " Threshold: $THRESHOLD"
74
+ echo " Required: >= $THRESHOLD"
75
+
76
+ # Compare consensus to threshold
77
+ if (( $(echo "$CONSENSUS >= $THRESHOLD" | bc -l) )); then
78
+ echo "✅ Consensus REACHED - Loop 2 validation successful"
79
+ exit 0
80
+ else
81
+ echo "❌ Consensus FAILED - Iteration required"
82
+ echo " Gap: $(echo "$THRESHOLD - $CONSENSUS" | bc -l)"
83
+ exit 1
84
+ fi
@@ -0,0 +1,71 @@
1
+ #!/usr/bin/env bash
2
+
3
+ ##############################################################################
4
+ # Deliverable Verifier
5
+ # Verifies expected deliverables were created (prevents "consensus on vapor")
6
+ #
7
+ # Usage:
8
+ # deliverable-verifier.sh --expected-files <file1,file2,...> \
9
+ # --task-type <keyword-detection>
10
+ #
11
+ # Returns:
12
+ # Exit 0: Deliverables verified
13
+ # Exit 1: Missing deliverables
14
+ ##############################################################################
15
+
16
+ set -euo pipefail
17
+
18
+ # Parameters
19
+ EXPECTED_FILES=""
20
+ TASK_TYPE=""
21
+
22
+ # Parse arguments
23
+ while [[ $# -gt 0 ]]; do
24
+ case $1 in
25
+ --expected-files) EXPECTED_FILES="$2"; shift 2 ;;
26
+ --task-type) TASK_TYPE="$2"; shift 2 ;;
27
+ *) echo "Unknown option: $1"; exit 1 ;;
28
+ esac
29
+ done
30
+
31
+ # Check git status for file changes
32
+ GIT_CHANGES=$(git status --short | wc -l)
33
+
34
+ echo "Deliverable Verification:"
35
+ echo " Git changes detected: $GIT_CHANGES files"
36
+
37
+ # If expected files specified, check them explicitly
38
+ if [ -n "$EXPECTED_FILES" ]; then
39
+ IFS=',' read -ra FILE_ARRAY <<< "$EXPECTED_FILES"
40
+ MISSING_COUNT=0
41
+
42
+ for file in "${FILE_ARRAY[@]}"; do
43
+ if [ -f "$file" ]; then
44
+ echo " ✅ Found: $file"
45
+ else
46
+ echo " ❌ Missing: $file"
47
+ MISSING_COUNT=$((MISSING_COUNT + 1))
48
+ fi
49
+ done
50
+
51
+ if [ $MISSING_COUNT -gt 0 ]; then
52
+ echo "❌ Deliverable verification FAILED: $MISSING_COUNT missing files"
53
+ exit 1
54
+ fi
55
+ fi
56
+
57
+ # Keyword-based task type detection
58
+ if [ -n "$TASK_TYPE" ]; then
59
+ if [[ "$TASK_TYPE" =~ (create|build|implement|add|generate) ]]; then
60
+ # Implementation tasks require file changes
61
+ if [ $GIT_CHANGES -eq 0 ]; then
62
+ echo "❌ Implementation task detected but no files created"
63
+ echo " Task type: $TASK_TYPE"
64
+ echo " This is 'consensus on vapor' - forcing iteration"
65
+ exit 1
66
+ fi
67
+ fi
68
+ fi
69
+
70
+ echo "✅ Deliverable verification PASSED"
71
+ exit 0
@@ -0,0 +1,90 @@
1
+ #!/usr/bin/env bash
2
+
3
+ ##############################################################################
4
+ # Gate Check Helper
5
+ # Validates Loop 3 self-assessment against gate threshold
6
+ #
7
+ # Usage:
8
+ # gate-check.sh --task-id <id> \
9
+ # --agents <agent1,agent2,...> \
10
+ # --threshold <0.0-1.0> \
11
+ # --min-quorum <n|n%|0.n>
12
+ #
13
+ # Returns:
14
+ # Exit 0: Gate passed (Loop 3 meets threshold)
15
+ # Exit 1: Gate failed (Loop 3 needs iteration)
16
+ ##############################################################################
17
+
18
+ set -euo pipefail
19
+
20
+ # Parameters
21
+ TASK_ID=""
22
+ AGENTS=""
23
+ THRESHOLD=""
24
+ MIN_QUORUM=""
25
+
26
+ # Parse arguments
27
+ while [[ $# -gt 0 ]]; do
28
+ case $1 in
29
+ --task-id) TASK_ID="$2"; shift 2 ;;
30
+ --agents) AGENTS="$2"; shift 2 ;;
31
+ --threshold) THRESHOLD="$2"; shift 2 ;;
32
+ --min-quorum) MIN_QUORUM="$2"; shift 2 ;;
33
+ *) echo "Unknown option: $1"; exit 1 ;;
34
+ esac
35
+ done
36
+
37
+ # Validation
38
+ if [ -z "$TASK_ID" ] || [ -z "$AGENTS" ] || [ -z "$THRESHOLD" ] || [ -z "$MIN_QUORUM" ]; then
39
+ echo "Error: Missing required parameters"
40
+ exit 1
41
+ fi
42
+
43
+ # Use Redis Coordination skill to collect confidence scores
44
+ SKILL_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
45
+ REDIS_COORD_SKILL="$SKILL_DIR/redis-coordination"
46
+
47
+ echo "Gate Check Configuration:"
48
+ echo " Task ID: $TASK_ID"
49
+ echo " Agent IDs: $AGENTS"
50
+ echo " Min Quorum: $MIN_QUORUM"
51
+ echo ""
52
+
53
+ # Collect Loop 3 confidence scores
54
+ # Note: invoke-waiting-mode.sh outputs consensus to stdout and verbose messages to stderr
55
+ # We capture only stdout to get the numeric consensus value
56
+ CONSENSUS=$("$REDIS_COORD_SKILL/invoke-waiting-mode.sh" collect \
57
+ --task-id "$TASK_ID" \
58
+ --agent-ids "$AGENTS" \
59
+ --min-quorum "$MIN_QUORUM") || {
60
+ echo "❌ Error: Failed to collect Loop 3 confidence scores"
61
+ echo " Agent IDs: $AGENTS"
62
+ echo " Output: $CONSENSUS"
63
+ exit 1
64
+ }
65
+
66
+ # Validate consensus is a valid number
67
+ if ! [[ "$CONSENSUS" =~ ^[0-9]+\.?[0-9]*$ ]]; then
68
+ echo "⚠️ WARNING: Invalid consensus value: $CONSENSUS (expected numeric)"
69
+ echo " Defaulting to 0.0"
70
+ CONSENSUS="0.0"
71
+ fi
72
+
73
+ echo "Loop 3 Gate Check:"
74
+ echo " Consensus: $CONSENSUS"
75
+ echo " Threshold: $THRESHOLD"
76
+ echo " Required: >= $THRESHOLD"
77
+
78
+ # Compare consensus to gate threshold
79
+ if (( $(echo "$CONSENSUS >= $THRESHOLD" | bc -l) )); then
80
+ echo "✅ Gate PASSED - Loop 3 self-validation successful"
81
+
82
+ # NOTE: Orchestrator controls Loop 2 spawn timing directly (orchestrate.sh line 520)
83
+ # No signal broadcast needed - Loop 2 agents spawn after this helper returns 0
84
+
85
+ exit 0
86
+ else
87
+ echo "❌ Gate FAILED - Loop 3 needs improvement"
88
+ echo " Gap: $(echo "$THRESHOLD - $CONSENSUS" | bc -l)"
89
+ exit 1
90
+ fi
@@ -0,0 +1,87 @@
1
+ #!/usr/bin/env bash
2
+
3
+ ##############################################################################
4
+ # Iteration Manager
5
+ # Manages iteration cycles and feedback injection
6
+ #
7
+ # Usage:
8
+ # iteration-manager.sh --task-id <id> \
9
+ # --iteration <n> \
10
+ # --agents <agent1,agent2,...> \
11
+ # --feedback-source <redis-key-prefix>
12
+ #
13
+ # Returns:
14
+ # Exit 0: Agents awakened for next iteration
15
+ # Exit 1: Error during wake process
16
+ ##############################################################################
17
+
18
+ set -euo pipefail
19
+
20
+ # Parameters
21
+ TASK_ID=""
22
+ ITERATION=""
23
+ AGENTS=""
24
+ FEEDBACK_SOURCE=""
25
+
26
+ # Parse arguments
27
+ while [[ $# -gt 0 ]]; do
28
+ case $1 in
29
+ --task-id) TASK_ID="$2"; shift 2 ;;
30
+ --iteration) ITERATION="$2"; shift 2 ;;
31
+ --agents) AGENTS="$2"; shift 2 ;;
32
+ --feedback-source) FEEDBACK_SOURCE="$2"; shift 2 ;;
33
+ *) echo "Unknown option: $1"; exit 1 ;;
34
+ esac
35
+ done
36
+
37
+ # Validation
38
+ if [ -z "$TASK_ID" ] || [ -z "$ITERATION" ] || [ -z "$AGENTS" ]; then
39
+ echo "Error: Missing required parameters"
40
+ exit 1
41
+ fi
42
+
43
+ # Use Redis Coordination skill for wake operations
44
+ SKILL_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
45
+ REDIS_COORD_SKILL="$SKILL_DIR/redis-coordination"
46
+
47
+ echo "Starting Iteration $ITERATION"
48
+ echo "Agents to wake: $AGENTS"
49
+
50
+ # Convert comma-separated agents to array
51
+ IFS=',' read -ra AGENT_ARRAY <<< "$AGENTS"
52
+
53
+ # Wake each agent with feedback
54
+ for agent_id in "${AGENT_ARRAY[@]}"; do
55
+ # Retrieve agent-specific feedback if feedback source provided using Redis coordination primitive
56
+ FEEDBACK=""
57
+ if [ -n "$FEEDBACK_SOURCE" ]; then
58
+ # Retrieve context from Redis using primitive
59
+ FEEDBACK_JSON=$("$REDIS_COORD_SKILL/retrieve-context.sh" \
60
+ --task-id "$TASK_ID" \
61
+ --key "$agent_id" \
62
+ --namespace "$FEEDBACK_SOURCE" 2>/dev/null || echo "{}")
63
+
64
+ # Extract feedback message from JSON (try multiple field names)
65
+ FEEDBACK=$(echo "$FEEDBACK_JSON" | jq -r '.message // .feedback // .data // ""' 2>/dev/null || echo "")
66
+ fi
67
+
68
+ # Default feedback if none exists
69
+ if [ -z "$FEEDBACK" ]; then
70
+ FEEDBACK="Continue iteration $ITERATION with quality improvements"
71
+ fi
72
+
73
+ echo "Waking $agent_id with feedback: ${FEEDBACK:0:80}..."
74
+
75
+ # Wake agent using Redis Coordination skill
76
+ "$REDIS_COORD_SKILL/invoke-waiting-mode.sh" wake \
77
+ --task-id "$TASK_ID" \
78
+ --agent-id "$agent_id" \
79
+ --reason "cfn_loop_iteration" \
80
+ --iteration "$ITERATION" \
81
+ --feedback "$FEEDBACK" || {
82
+ echo "Warning: Failed to wake $agent_id"
83
+ }
84
+ done
85
+
86
+ echo "✅ All agents awakened for iteration $ITERATION"
87
+ exit 0
@@ -0,0 +1,51 @@
1
+ #!/usr/bin/env bash
2
+
3
+ ##############################################################################
4
+ # Timeout Calculator
5
+ # Calculates phase-specific timeouts for agent execution
6
+ #
7
+ # Usage:
8
+ # timeout-calculator.sh --phase-id <phase-identifier>
9
+ #
10
+ # Returns:
11
+ # Timeout value in seconds (stdout)
12
+ ##############################################################################
13
+
14
+ set -euo pipefail
15
+
16
+ # Parameters
17
+ PHASE_ID=""
18
+ DEFAULT_TIMEOUT=3600 # 60 minutes
19
+
20
+ # Parse arguments
21
+ while [[ $# -gt 0 ]]; do
22
+ case $1 in
23
+ --phase-id) PHASE_ID="$2"; shift 2 ;;
24
+ *) echo "Unknown option: $1"; exit 1 ;;
25
+ esac
26
+ done
27
+
28
+ # Phase-specific timeout configuration
29
+ # Based on empirical data from Sprint 6
30
+ case "$PHASE_ID" in
31
+ phase-1)
32
+ # Backend work - relatively fast
33
+ echo 900 # 15 minutes
34
+ ;;
35
+ phase-2)
36
+ # React components - more complex
37
+ echo 3600 # 60 minutes
38
+ ;;
39
+ phase-3)
40
+ # Advanced components - complex
41
+ echo 3600 # 60 minutes
42
+ ;;
43
+ phase-4)
44
+ # Testing/integration - moderate
45
+ echo 1800 # 30 minutes
46
+ ;;
47
+ *)
48
+ # Unknown phase - use default
49
+ echo $DEFAULT_TIMEOUT
50
+ ;;
51
+ esac
@@ -0,0 +1,41 @@
1
+ #!/bin/bash
2
+ # inject-loop-context.sh - Inject loop-specific context into agent prompts
3
+
4
+ set -euo pipefail
5
+
6
+ LOOP_TYPE="$1" # loop3, loop2, loop4, loop1
7
+ AGENT_CONTEXT="$2" # Original agent context
8
+
9
+ # Use absolute path from current working directory
10
+ PROJECT_ROOT="/mnt/c/Users/masha/Documents/claude-flow-novice"
11
+
12
+ # Load base CFN Loop context
13
+ BASE_CONTEXT_FILE="$PROJECT_ROOT/.claude/prompts/cfn-loop-context.md"
14
+ if [[ ! -f "$BASE_CONTEXT_FILE" ]]; then
15
+ echo "ERROR: Base context file not found: $BASE_CONTEXT_FILE" >&2
16
+ exit 1
17
+ fi
18
+ BASE_CONTEXT=$(cat "$BASE_CONTEXT_FILE")
19
+
20
+ # Load loop-specific context (optional)
21
+ LOOP_CONTEXT_FILE="$PROJECT_ROOT/.claude/prompts/loop-specific/${LOOP_TYPE}.md"
22
+ if [[ -f "$LOOP_CONTEXT_FILE" ]]; then
23
+ LOOP_CONTEXT=$(cat "$LOOP_CONTEXT_FILE")
24
+ else
25
+ LOOP_CONTEXT=""
26
+ fi
27
+
28
+ # Combine contexts
29
+ cat <<EOF
30
+ $BASE_CONTEXT
31
+
32
+ ---
33
+
34
+ $LOOP_CONTEXT
35
+
36
+ ---
37
+
38
+ # Your Task
39
+
40
+ $AGENT_CONTEXT
41
+ EOF