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,113 @@
1
+ # Playbook Learning System
2
+
3
+ **Version:** 1.0.0
4
+ **Purpose:** Store and query successful CFN Loop patterns for continuous improvement
5
+
6
+ ## Overview
7
+
8
+ The playbook system stores execution patterns from successful CFN Loops:
9
+ - Task patterns (type, description, keywords)
10
+ - Optimal agent configurations
11
+ - Iteration counts and convergence patterns
12
+ - Common feedback themes
13
+ - Success strategies
14
+
15
+ ## Database Schema
16
+
17
+ **File:** `.claude/skills/playbook/playbook.db` (SQLite)
18
+
19
+ **Tables:**
20
+
21
+ ### playbook_entries
22
+ ```sql
23
+ CREATE TABLE playbook_entries (
24
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
25
+ task_pattern TEXT NOT NULL, -- Task description or embedding
26
+ task_type TEXT NOT NULL, -- software-development, content-creation, etc.
27
+ task_keywords TEXT, -- Comma-separated keywords
28
+ loop3_agents TEXT NOT NULL, -- JSON array
29
+ loop2_agents TEXT NOT NULL, -- JSON array
30
+ loop4_agent TEXT DEFAULT 'product-owner',
31
+ iterations_required INTEGER,
32
+ final_confidence REAL,
33
+ final_consensus REAL,
34
+ gate_threshold REAL DEFAULT 0.75,
35
+ consensus_threshold REAL DEFAULT 0.90,
36
+ complexity TEXT, -- low, medium, high
37
+ estimated_iterations INTEGER,
38
+ actual_iterations INTEGER,
39
+ common_feedback TEXT, -- JSON array of recurring themes
40
+ success_strategy TEXT, -- JSON object
41
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
42
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
43
+ use_count INTEGER DEFAULT 1 -- How many times this pattern was reused
44
+ );
45
+
46
+ CREATE INDEX idx_task_type ON playbook_entries(task_type);
47
+ CREATE INDEX idx_task_pattern ON playbook_entries(task_pattern);
48
+ CREATE INDEX idx_final_confidence ON playbook_entries(final_confidence DESC);
49
+ CREATE INDEX idx_use_count ON playbook_entries(use_count DESC);
50
+ ```
51
+
52
+ ### agent_performance
53
+ ```sql
54
+ CREATE TABLE agent_performance (
55
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
56
+ agent_type TEXT NOT NULL,
57
+ task_type TEXT NOT NULL,
58
+ avg_confidence REAL,
59
+ execution_count INTEGER DEFAULT 1,
60
+ success_rate REAL,
61
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
62
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
63
+ UNIQUE(agent_type, task_type)
64
+ );
65
+
66
+ CREATE INDEX idx_agent_performance ON agent_performance(agent_type, task_type);
67
+ ```
68
+
69
+ ## Usage
70
+
71
+ ### Query Playbook
72
+ ```bash
73
+ SIMILAR_PATTERN=$(./.claude/skills/playbook/query-playbook.sh \
74
+ --task-type "software-development" \
75
+ --description "Implement OAuth2 authentication")
76
+
77
+ echo "$SIMILAR_PATTERN" | jq '.loop3_agents'
78
+ # ["backend-dev", "security-specialist"]
79
+ ```
80
+
81
+ ### Update Playbook
82
+ ```bash
83
+ ./.claude/skills/playbook/update-playbook.sh \
84
+ --task-id "$TASK_ID" \
85
+ --task-type "software-development" \
86
+ --description "Implement JWT authentication" \
87
+ --loop3-agents "backend-dev,security-specialist" \
88
+ --loop2-agents "reviewer,tester,security-auditor" \
89
+ --iterations 3 \
90
+ --final-confidence 0.92 \
91
+ --final-consensus 0.93
92
+ ```
93
+
94
+ ## Similarity Matching
95
+
96
+ **Algorithm:** Keyword overlap (Jaccard similarity)
97
+
98
+ ```
99
+ Similarity = Intersection(keywords1, keywords2) / Union(keywords1, keywords2)
100
+ ```
101
+
102
+ **Thresholds:**
103
+ - ≥ 0.6: Potentially similar
104
+ - ≥ 0.75: Similar (use this pattern)
105
+ - ≥ 0.90: Very similar (high confidence match)
106
+
107
+ ## Integration
108
+
109
+ Used by:
110
+ - `.claude/agents/cfn-v3-coordinator.md` - Query for similar tasks
111
+ - Main Chat post-execution - Update playbook after PROCEED
112
+ - Loop 5 retrospective - Extract patterns and update playbook
113
+ ```
@@ -0,0 +1,54 @@
1
+ #!/bin/bash
2
+ set -eu
3
+
4
+ # Initialize Playbook Database
5
+
6
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
7
+ DB_PATH="$SCRIPT_DIR/playbook.db"
8
+
9
+ # Create database if not exists
10
+ sqlite3 "$DB_PATH" <<'EOF'
11
+ CREATE TABLE IF NOT EXISTS playbook_entries (
12
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
13
+ task_pattern TEXT NOT NULL,
14
+ task_type TEXT NOT NULL,
15
+ task_keywords TEXT,
16
+ loop3_agents TEXT NOT NULL,
17
+ loop2_agents TEXT NOT NULL,
18
+ loop4_agent TEXT DEFAULT 'product-owner',
19
+ iterations_required INTEGER,
20
+ final_confidence REAL,
21
+ final_consensus REAL,
22
+ gate_threshold REAL DEFAULT 0.75,
23
+ consensus_threshold REAL DEFAULT 0.90,
24
+ complexity TEXT,
25
+ estimated_iterations INTEGER,
26
+ actual_iterations INTEGER,
27
+ common_feedback TEXT,
28
+ success_strategy TEXT,
29
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
30
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
31
+ use_count INTEGER DEFAULT 1
32
+ );
33
+
34
+ CREATE INDEX IF NOT EXISTS idx_task_type ON playbook_entries(task_type);
35
+ CREATE INDEX IF NOT EXISTS idx_task_pattern ON playbook_entries(task_pattern);
36
+ CREATE INDEX IF NOT EXISTS idx_final_confidence ON playbook_entries(final_confidence DESC);
37
+ CREATE INDEX IF NOT EXISTS idx_use_count ON playbook_entries(use_count DESC);
38
+
39
+ CREATE TABLE IF NOT EXISTS agent_performance (
40
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
41
+ agent_type TEXT NOT NULL,
42
+ task_type TEXT NOT NULL,
43
+ avg_confidence REAL,
44
+ execution_count INTEGER DEFAULT 1,
45
+ success_rate REAL,
46
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
47
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
48
+ UNIQUE(agent_type, task_type)
49
+ );
50
+
51
+ CREATE INDEX IF NOT EXISTS idx_agent_performance ON agent_performance(agent_type, task_type);
52
+ EOF
53
+
54
+ echo "✅ Playbook database initialized at $DB_PATH"
@@ -0,0 +1,79 @@
1
+ #!/bin/bash
2
+ set -euo pipefail
3
+
4
+ # Query Playbook for Similar Tasks
5
+
6
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
7
+ DB_PATH="$SCRIPT_DIR/playbook.db"
8
+
9
+ TASK_TYPE=""
10
+ DESCRIPTION=""
11
+
12
+ while [[ $# -gt 0 ]]; do
13
+ case $1 in
14
+ --task-type) TASK_TYPE="$2"; shift 2 ;;
15
+ --description) DESCRIPTION="$2"; shift 2 ;;
16
+ *) echo "Unknown: $1"; exit 1 ;;
17
+ esac
18
+ done
19
+
20
+ if [ -z "$TASK_TYPE" ] || [ -z "$DESCRIPTION" ]; then
21
+ echo "Usage: query-playbook.sh --task-type TYPE --description 'text'" >&2
22
+ exit 1
23
+ fi
24
+
25
+ # Initialize DB if not exists
26
+ if [ ! -f "$DB_PATH" ]; then
27
+ bash "$SCRIPT_DIR/init-playbook.sh"
28
+ fi
29
+
30
+ # Extract keywords from description (simple tokenization)
31
+ KEYWORDS=$(echo "$DESCRIPTION" | tr '[:upper:]' '[:lower:]' | grep -oE '\w+' | sort -u | tr '\n' ',' | sed 's/,$//')
32
+
33
+ # Query for similar tasks (same task type)
34
+ SIMILAR=$(sqlite3 "$DB_PATH" <<EOF
35
+ SELECT
36
+ task_pattern,
37
+ loop3_agents,
38
+ loop2_agents,
39
+ iterations_required,
40
+ final_confidence,
41
+ common_feedback,
42
+ use_count
43
+ FROM playbook_entries
44
+ WHERE task_type = '$TASK_TYPE'
45
+ ORDER BY final_confidence DESC, use_count DESC
46
+ LIMIT 3;
47
+ EOF
48
+ )
49
+
50
+ # If no results, return empty
51
+ if [ -z "$SIMILAR" ]; then
52
+ echo "{}"
53
+ exit 0
54
+ fi
55
+
56
+ # Return first (best) match
57
+ FIRST_MATCH=$(echo "$SIMILAR" | head -1)
58
+
59
+ TASK_PATTERN=$(echo "$FIRST_MATCH" | cut -d'|' -f1)
60
+ LOOP3_AGENTS=$(echo "$FIRST_MATCH" | cut -d'|' -f2)
61
+ LOOP2_AGENTS=$(echo "$FIRST_MATCH" | cut -d'|' -f3)
62
+ ITERATIONS=$(echo "$FIRST_MATCH" | cut -d'|' -f4)
63
+ CONFIDENCE=$(echo "$FIRST_MATCH" | cut -d'|' -f5)
64
+ FEEDBACK=$(echo "$FIRST_MATCH" | cut -d'|' -f6)
65
+ USE_COUNT=$(echo "$FIRST_MATCH" | cut -d'|' -f7)
66
+
67
+ # Build JSON output
68
+ cat <<EOF
69
+ {
70
+ "found": true,
71
+ "task_pattern": "$TASK_PATTERN",
72
+ "loop3_agents": $LOOP3_AGENTS,
73
+ "loop2_agents": $LOOP2_AGENTS,
74
+ "expected_iterations": $ITERATIONS,
75
+ "historical_confidence": $CONFIDENCE,
76
+ "common_feedback": $FEEDBACK,
77
+ "use_count": $USE_COUNT
78
+ }
79
+ EOF
@@ -0,0 +1,69 @@
1
+ #!/bin/bash
2
+ set -euo pipefail
3
+
4
+ # Update Playbook after Successful CFN Loop
5
+
6
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
7
+ DB_PATH="$SCRIPT_DIR/playbook.db"
8
+
9
+ TASK_ID=""
10
+ TASK_TYPE=""
11
+ DESCRIPTION=""
12
+ LOOP3_AGENTS=""
13
+ LOOP2_AGENTS=""
14
+ ITERATIONS=""
15
+ FINAL_CONFIDENCE=""
16
+ FINAL_CONSENSUS=""
17
+
18
+ while [[ $# -gt 0 ]]; do
19
+ case $1 in
20
+ --task-id) TASK_ID="$2"; shift 2 ;;
21
+ --task-type) TASK_TYPE="$2"; shift 2 ;;
22
+ --description) DESCRIPTION="$2"; shift 2 ;;
23
+ --loop3-agents) LOOP3_AGENTS="$2"; shift 2 ;;
24
+ --loop2-agents) LOOP2_AGENTS="$2"; shift 2 ;;
25
+ --iterations) ITERATIONS="$2"; shift 2 ;;
26
+ --final-confidence) FINAL_CONFIDENCE="$2"; shift 2 ;;
27
+ --final-consensus) FINAL_CONSENSUS="$2"; shift 2 ;;
28
+ *) echo "Unknown: $1"; exit 1 ;;
29
+ esac
30
+ done
31
+
32
+ # Initialize DB if not exists
33
+ if [ ! -f "$DB_PATH" ]; then
34
+ bash "$SCRIPT_DIR/init-playbook.sh"
35
+ fi
36
+
37
+ # Convert agent lists to JSON arrays
38
+ LOOP3_JSON=$(echo "$LOOP3_AGENTS" | jq -Rc 'split(",") | map(gsub("^\\s+|\\s+$"; ""))')
39
+ LOOP2_JSON=$(echo "$LOOP2_AGENTS" | jq -Rc 'split(",") | map(gsub("^\\s+|\\s+$"; ""))')
40
+
41
+ # Extract keywords
42
+ KEYWORDS=$(echo "$DESCRIPTION" | tr '[:upper:]' '[:lower:]' | grep -oE '\w+' | sort -u | tr '\n' ',' | sed 's/,$//')
43
+
44
+ # Insert into playbook
45
+ sqlite3 "$DB_PATH" <<EOF
46
+ INSERT INTO playbook_entries (
47
+ task_pattern,
48
+ task_type,
49
+ task_keywords,
50
+ loop3_agents,
51
+ loop2_agents,
52
+ iterations_required,
53
+ final_confidence,
54
+ final_consensus,
55
+ actual_iterations
56
+ ) VALUES (
57
+ '$DESCRIPTION',
58
+ '$TASK_TYPE',
59
+ '$KEYWORDS',
60
+ '$LOOP3_JSON',
61
+ '$LOOP2_JSON',
62
+ $ITERATIONS,
63
+ $FINAL_CONFIDENCE,
64
+ $FINAL_CONSENSUS,
65
+ $ITERATIONS
66
+ );
67
+ EOF
68
+
69
+ echo "✅ Playbook updated with task execution pattern"
@@ -0,0 +1,29 @@
1
+ # Playbook Auto-Update Skill
2
+
3
+ ## Purpose
4
+ Automatically update playbook with insights from sprint retrospectives.
5
+
6
+ ## Core Responsibilities
7
+ - Parse retrospective JSON
8
+ - Update agent performance metrics
9
+ - Store successful strategies
10
+ - Increment pattern counters
11
+ - Maintain historical performance data
12
+
13
+ ## Update Strategy
14
+ - Incremental updates
15
+ - Preserve historical context
16
+ - Allow rollback/review of changes
17
+ - Ensure data integrity
18
+
19
+ ## Performance Tracking
20
+ - Per-agent performance by task type
21
+ - Confidence score trending
22
+ - Execution frequency
23
+ - Improvement over time
24
+
25
+ ## Safety Mechanisms
26
+ - Validation of input data
27
+ - Backup of previous playbook version
28
+ - Logging of all modifications
29
+ - Ability to revert changes
@@ -0,0 +1,86 @@
1
+ #!/bin/bash
2
+
3
+ # Playbook Auto-Update Script
4
+
5
+ set -euo pipefail
6
+
7
+ # Validate input
8
+ [[ $# -ne 2 ]] && { echo "Usage: $0 --retrospective-json JSON --task-id TASK_ID"; exit 1; }
9
+
10
+ # Parse arguments
11
+ while [[ $# -gt 0 ]]; do
12
+ key="$1"
13
+ case $key in
14
+ --retrospective-json)
15
+ RETROSPECTIVE_JSON="$2"
16
+ shift 2
17
+ ;;
18
+ --task-id)
19
+ TASK_ID="$2"
20
+ shift 2
21
+ ;;
22
+ *)
23
+ echo "Unknown parameter: $1"
24
+ exit 1
25
+ ;;
26
+ esac
27
+ done
28
+
29
+ # Validate required parameters
30
+ [[ -z "${RETROSPECTIVE_JSON:-}" ]] && { echo "Error: retrospective-json is required"; exit 1; }
31
+ [[ -z "${TASK_ID:-}" ]] && { echo "Error: task-id is required"; exit 1; }
32
+
33
+ # Playbook path
34
+ PLAYBOOK_PATH="/mnt/c/Users/masha/Documents/claude-flow-novice/docs/PLAYBOOK.json"
35
+ BACKUP_PATH="/mnt/c/Users/masha/Documents/claude-flow-novice/docs/playbook-backups/PLAYBOOK_${TASK_ID}_$(date +%Y%m%d_%H%M%S).json"
36
+
37
+ # Ensure backup directory exists
38
+ mkdir -p "$(dirname "$BACKUP_PATH")"
39
+
40
+ # Backup current playbook
41
+ cp "$PLAYBOOK_PATH" "$BACKUP_PATH"
42
+
43
+ # Update playbook with jq
44
+ updated_playbook=$(echo "$RETROSPECTIVE_JSON" | jq '
45
+ # Update or create tasks record
46
+ .tasks //= [] |
47
+ .tasks += [{
48
+ "task_id": env.TASK_ID,
49
+ "sprint_metrics": {
50
+ "total_iterations": .velocity.total_iterations,
51
+ "confidence_trajectory": .confidence_trajectory,
52
+ "final_confidence": .confidence_trajectory["iteration_3"] // 0
53
+ },
54
+ "agent_performance": .agent_performance,
55
+ "patterns_identified": .patterns_identified
56
+ }] |
57
+
58
+ # Update agent performance tracking
59
+ .agent_performance_history //= {} |
60
+ reduce .agent_performance.top_performers[] as $agent (
61
+ .;
62
+ .agent_performance_history[$agent.agent] //= {
63
+ "total_tasks": 0,
64
+ "avg_confidence": 0
65
+ } |
66
+ .agent_performance_history[$agent.agent].total_tasks += 1 |
67
+ .agent_performance_history[$agent.agent].avg_confidence =
68
+ ((.agent_performance_history[$agent.agent].avg_confidence *
69
+ (.agent_performance_history[$agent.agent].total_tasks - 1) +
70
+ $agent.avg_confidence) /
71
+ .agent_performance_history[$agent.agent].total_tasks)
72
+ ) |
73
+
74
+ # Track successful strategies
75
+ .successful_strategies //= [] |
76
+ .successful_strategies += .lessons_learned |
77
+
78
+ # Remove redundant data to keep playbook lean
79
+ del(.feedback_themes, .bottlenecks)
80
+ ')
81
+
82
+ # Write updated playbook
83
+ echo "$updated_playbook" | jq . > "$PLAYBOOK_PATH"
84
+
85
+ # Log update
86
+ echo "Playbook updated for task $TASK_ID: $BACKUP_PATH → $PLAYBOOK_PATH"