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,90 @@
1
+ # Agent Selector Skill
2
+
3
+ **Version:** 1.0.0
4
+ **Purpose:** Select optimal agents for CFN Loop v3 based on task type and requirements
5
+
6
+ ## Overview
7
+
8
+ Recommends Loop 3 (producers) and Loop 2 (evaluators) agents based on:
9
+ - Task type (from task-classifier)
10
+ - Task description keywords
11
+ - Complexity requirements
12
+
13
+ ## Usage
14
+
15
+ ```bash
16
+ AGENTS=$(./.claude/skills/agent-selector/select-agents.sh \
17
+ --task-type "software-development" \
18
+ --description "Implement JWT authentication with refresh tokens")
19
+
20
+ echo "$AGENTS" | jq '.loop3[]' # ["backend-dev", "security-specialist"]
21
+ echo "$AGENTS" | jq '.loop2[]' # ["reviewer", "tester", "security-auditor"]
22
+ ```
23
+
24
+ ## Output Format
25
+
26
+ ```json
27
+ {
28
+ "loop3": ["agent1", "agent2", "agent3"],
29
+ "loop2": ["validator1", "validator2", "validator3"],
30
+ "loop4": "product-owner",
31
+ "reasoning": "Explanation of agent selection"
32
+ }
33
+ ```
34
+
35
+ ## Agent Selection Rules
36
+
37
+ ### Software Development
38
+ **Base Loop 3:** backend-dev, coder
39
+ **Add if keywords:**
40
+ - "security", "authentication", "JWT" → security-specialist
41
+ - "database", "SQL", "schema" → database-engineer (if exists)
42
+ - "deploy", "CI/CD", "infrastructure" → devops-engineer
43
+ - "frontend", "React", "UI" → react-frontend-engineer
44
+
45
+ **Loop 2:** reviewer, tester, security-auditor
46
+
47
+ ### Content Creation
48
+ **Base Loop 3:** copywriter, content-strategist
49
+ **Add if keywords:**
50
+ - "SEO", "search", "keywords" → seo-specialist
51
+ - "technical", "documentation" → technical-writer (if exists)
52
+
53
+ **Loop 2:** editor, brand-reviewer, compliance-checker
54
+
55
+ ### Research
56
+ **Base Loop 3:** researcher, data-analyst
57
+ **Add if keywords:**
58
+ - "statistics", "data analysis" → statistician (if exists)
59
+ - "domain-specific" → domain-expert
60
+
61
+ **Loop 2:** fact-checker, methodology-reviewer, statistician
62
+
63
+ ### Design
64
+ **Base Loop 3:** ui-designer, ux-researcher
65
+ **Add if keywords:**
66
+ - "visual", "branding" → visual-designer
67
+ - "accessibility" → accessibility-advocate
68
+
69
+ **Loop 2:** accessibility-advocate, design-critic, user-tester
70
+
71
+ ### Infrastructure
72
+ **Base Loop 3:** devops-engineer, terraform-engineer
73
+ **Add if keywords:**
74
+ - "Kubernetes", "k8s", "container" → kubernetes-architect
75
+ - "network", "security" → network-engineer (if exists)
76
+
77
+ **Loop 2:** security-auditor, cost-optimizer, compliance-checker
78
+
79
+ ### Data Engineering
80
+ **Base Loop 3:** data-engineer, pipeline-builder
81
+ **Add if keywords:**
82
+ - "ETL", "transformation" → etl-specialist
83
+ - "streaming", "real-time" → streaming-specialist (if exists)
84
+
85
+ **Loop 2:** data-quality-validator, schema-reviewer, performance-tester
86
+
87
+ ## Integration
88
+
89
+ Used by:
90
+ - `.claude/agents/cfn-v3-coordinator.md` - Agent selection
@@ -0,0 +1,96 @@
1
+ #!/usr/bin/env bash
2
+ # Dynamic Agent Selection with JSON Registry
3
+
4
+ set -euo pipefail
5
+
6
+ # Paths
7
+ REGISTRY_PATH=".claude/skills/agent-discovery/agents-registry.json"
8
+ LOG_PATH="/tmp/agent_selection_$(date +%s).log"
9
+
10
+ # Validate inputs
11
+ if [[ $# -lt 2 ]]; then
12
+ echo "Usage: $0 --task-type TYPE --description 'task description'" >&2
13
+ exit 1
14
+ fi
15
+
16
+ # Parse arguments
17
+ while [[ $# -gt 0 ]]; do
18
+ case "$1" in
19
+ --task-type) TASK_TYPE="$2"; shift 2 ;;
20
+ --description) DESCRIPTION="$2"; shift 2 ;;
21
+ *) echo "Unknown parameter: $1" >&2; exit 1 ;;
22
+ esac
23
+ done
24
+
25
+ # Validate registry
26
+ if [[ ! -f "$REGISTRY_PATH" ]]; then
27
+ echo "Error: Agent registry not found at $REGISTRY_PATH. Run agent discovery first." >&2
28
+ exit 1
29
+ fi
30
+
31
+ # Score agents function with simple matching
32
+ score_agents() {
33
+ local registry_path="$1"
34
+ local description="$2"
35
+ local task_type="$3"
36
+
37
+ # Simple JQ query for agent matching
38
+ jq -r --arg desc "$description" --arg task_type "$task_type" '
39
+ [
40
+ .agents[]
41
+ | select(.type == $task_type)
42
+ | {
43
+ name: .name,
44
+ score: (
45
+ # Base type match score
46
+ 10 +
47
+ # Keyword matching
48
+ (
49
+ [.keywords[]]
50
+ | map(select(
51
+ ($desc | ascii_downcase | contains(. | ascii_downcase))
52
+ ))
53
+ | length * 3
54
+ )
55
+ )
56
+ }
57
+ ]
58
+ | sort_by(.score)
59
+ | reverse
60
+ | .[0:3]
61
+ | map(.name)
62
+ ' "$registry_path"
63
+ }
64
+
65
+ # Score agents
66
+ LOOP3_AGENTS=$(score_agents "$REGISTRY_PATH" "$DESCRIPTION" "specialist")
67
+ LOOP2_AGENTS=$(score_agents "$REGISTRY_PATH" "$DESCRIPTION" "strategic")
68
+
69
+ # Default fallback
70
+ if [[ -z "$LOOP3_AGENTS" || "$LOOP3_AGENTS" == "[]" ]]; then
71
+ LOOP3_AGENTS='["product-owner"]'
72
+ fi
73
+
74
+ if [[ -z "$LOOP2_AGENTS" || "$LOOP2_AGENTS" == "[]" ]]; then
75
+ LOOP2_AGENTS='["product-owner"]'
76
+ fi
77
+
78
+ # Log the results
79
+ {
80
+ echo "Task Description: $DESCRIPTION"
81
+ echo "Loop 3 Agents: $LOOP3_AGENTS"
82
+ echo "Loop 2 Agents: $LOOP2_AGENTS"
83
+ } >> "$LOG_PATH"
84
+
85
+ # Output JSON result with detailed reasoning
86
+ jq -n \
87
+ --argjson loop3 "$LOOP3_AGENTS" \
88
+ --argjson loop2 "$LOOP2_AGENTS" \
89
+ --arg desc "$DESCRIPTION" \
90
+ '{
91
+ "loop3": $loop3,
92
+ "loop2": $loop2,
93
+ "loop4": "product-owner",
94
+ "reasoning": "Selected agents by scoring against task description: \($desc)",
95
+ "log_path": "'"$LOG_PATH"'"
96
+ }'
@@ -135,7 +135,7 @@ Code Quality Focus → + code-analyzer
135
135
  **Complex (6-7 agents):**
136
136
  ```bash
137
137
  # Enterprise features, multi-component systems
138
- --agents=analyst,system-architect,backend-dev,frontend-dev,security-specialist,tester,reviewer
138
+ --agents=analyst,system-architect,backend-dev,react-frontend-engineer,security-specialist,tester,reviewer
139
139
  --agents=system-architect,architect,backend-dev,security-specialist,devops-engineer,production-validator
140
140
  ```
141
141
 
@@ -0,0 +1,36 @@
1
+ # Agent Swap Mechanism Skill
2
+
3
+ ## Purpose
4
+ Recommend agent replacement strategies when performance issues are detected in CFN Loops.
5
+
6
+ ## Replacement Rules
7
+ 1. Identify lowest-performing agent
8
+ 2. Match replacement based on feedback themes
9
+ - Security feedback → security-specialist
10
+ - Performance feedback → performance-engineer
11
+ - Testing feedback → tester
12
+ - Architecture feedback → architect
13
+
14
+ ## Replacement Strategies
15
+ - Complete agent replacement
16
+ - Adding specialist alongside existing agents
17
+ - Prioritize maintaining existing team composition
18
+
19
+ ## Usage
20
+ ```bash
21
+ ./recommend-swap.sh \
22
+ --loop3-agents "backend-dev,coder" \
23
+ --loop3-confidences "0.82,0.70" \
24
+ --feedback-themes "security,error-handling"
25
+ ```
26
+
27
+ ## Output Details
28
+ - Agent to remove
29
+ - Reasoning for removal
30
+ - Recommended replacement agent
31
+ - Updated agent configuration
32
+
33
+ ## Implementation Considerations
34
+ - Stateless design
35
+ - Minimal side effects
36
+ - Clear, reproducible recommendations
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ # Parse arguments
5
+ while [[ $# -gt 0 ]]; do
6
+ case "$1" in
7
+ --loop3-agents) IFS=',' read -ra AGENTS <<< "$2"; shift 2 ;;
8
+ --loop3-confidences) IFS=',' read -ra CONFIDENCES <<< "$2"; shift 2 ;;
9
+ --feedback-themes) IFS=',' read -ra THEMES <<< "$2"; shift 2 ;;
10
+ *) echo "Unknown parameter: $1"; exit 1 ;;
11
+ esac
12
+ done
13
+
14
+ # Agent Swap Rules
15
+ get_specialist_for_theme() {
16
+ local theme="$1"
17
+ case "$theme" in
18
+ *security*) echo "security-specialist" ;;
19
+ *performance*) echo "performance-engineer" ;;
20
+ *test*|*coverage*) echo "testing-expert" ;;
21
+ *architecture*) echo "architecture-consultant" ;;
22
+ *) echo "generic-specialist" ;;
23
+ esac
24
+ }
25
+
26
+ # Find lowest confidence agent
27
+ lowest_confidence_index=0
28
+ lowest_confidence="${CONFIDENCES[0]}"
29
+
30
+ for i in "${!CONFIDENCES[@]}"; do
31
+ if (( $(echo "${CONFIDENCES[i]} < $lowest_confidence" | bc -l) )); then
32
+ lowest_confidence="${CONFIDENCES[i]}"
33
+ lowest_confidence_index=$i
34
+ fi
35
+ done
36
+
37
+ # Recommend replacement specialist
38
+ recommended_specialist=""
39
+ for theme in "${THEMES[@]}"; do
40
+ specialist=$(get_specialist_for_theme "$theme")
41
+ if [[ -n "$specialist" ]]; then
42
+ recommended_specialist="$specialist"
43
+ break
44
+ fi
45
+ done
46
+
47
+ # Generate output
48
+ jq -n \
49
+ --arg remove_agent "${AGENTS[lowest_confidence_index]}" \
50
+ --arg add_agent "$recommended_specialist" \
51
+ --argjson agents "$(printf '%s\n' "${AGENTS[@]}" | jq -R . | jq -s '.')" \
52
+ --arg lowest_confidence "$lowest_confidence" \
53
+ --argjson themes "$(printf '%s\n' "${THEMES[@]}" | jq -R . | jq -s '.')" \
54
+ '{
55
+ "remove_agent": $remove_agent,
56
+ "remove_reason": "Lowest confidence (\($lowest_confidence)), contributing to plateau",
57
+ "add_agent": $add_agent,
58
+ "add_reason": "Match to feedback themes: \(join(", ", $themes))",
59
+ "new_loop3_agents": [$agents | map(select(. != $remove_agent)), $add_agent]
60
+ }'
@@ -0,0 +1,54 @@
1
+ #!/bin/bash
2
+ # API Endpoint Validation Script
3
+ # Usage: ./test-endpoints.sh <base-url> <endpoint> [request-count]
4
+
5
+ BASE_URL="${1:-http://localhost:8080}"
6
+ ENDPOINT="$2"
7
+ COUNT="${3:-10}"
8
+
9
+ if [ -z "$ENDPOINT" ]; then
10
+ echo "Usage: $0 <base-url> <endpoint> [request-count]"
11
+ exit 1
12
+ fi
13
+
14
+ echo "Testing: $BASE_URL$ENDPOINT"
15
+ echo "Requests: $COUNT"
16
+ echo ""
17
+
18
+ SUCCESS=0
19
+ FAILED=0
20
+ TOTAL_RESPONSE_TIME=0
21
+
22
+ for i in $(seq 1 "$COUNT"); do
23
+ START_TIME=$(date +%s.%N)
24
+ RESPONSE=$(curl -s -w "\n%{http_code}\n%{time_total}" "$BASE_URL$ENDPOINT")
25
+
26
+ HTTP_STATUS=$(echo "$RESPONSE" | tail -1)
27
+ RESPONSE_TIME=$(echo "$RESPONSE" | tail -2 | head -1)
28
+ BODY=$(echo "$RESPONSE" | head -n -2)
29
+
30
+ if [ "$HTTP_STATUS" = "200" ]; then
31
+ echo "✅ Request $i: 200 OK (Response Time: ${RESPONSE_TIME}s)"
32
+ ((SUCCESS++))
33
+ else
34
+ echo "❌ Request $i: $HTTP_STATUS"
35
+ echo " Response: $BODY"
36
+ ((FAILED++))
37
+ fi
38
+
39
+ TOTAL_RESPONSE_TIME=$(echo "$TOTAL_RESPONSE_TIME + $RESPONSE_TIME" | bc)
40
+
41
+ [ $i -lt "$COUNT" ] && sleep 2
42
+ done
43
+
44
+ AVG_RESPONSE_TIME=$(echo "scale=3; $TOTAL_RESPONSE_TIME / $COUNT" | bc)
45
+
46
+ echo ""
47
+ echo "Results:"
48
+ echo "- Requests: $COUNT total"
49
+ echo "- Succeeded: $SUCCESS"
50
+ echo "- Failed: $FAILED"
51
+ echo "- Average Response Time: ${AVG_RESPONSE_TIME}s"
52
+
53
+ # Strict success criteria
54
+ [ $FAILED -eq 0 ] && exit 0 || exit 1
@@ -0,0 +1,73 @@
1
+ # Automatic Memory Persistence Skill
2
+
3
+ ## Overview
4
+ This skill provides automatic, structured persistence of agent outputs to a SQLite database, ensuring consistent memory tracking across CFN Loop workflows.
5
+
6
+ ## Key Components
7
+ - `persist-agent-output.sh`: Primary script for saving agent outputs
8
+ - `query-agent-history.sh`: Query and retrieve past agent outputs
9
+ - `test-memory-persistence.sh`: Validation test suite
10
+
11
+ ## Memory Schema
12
+ ```json
13
+ {
14
+ "agent/[agent-id]/output/[task-id]": {
15
+ "output": "Raw agent output text",
16
+ "confidence": 0.85,
17
+ "iteration": 1,
18
+ "timestamp": "2025-10-20T15:30:00Z",
19
+ "parsed_data": null
20
+ }
21
+ }
22
+ ```
23
+
24
+ ## Integration Points
25
+ - Loop 3 output processing
26
+ - Loop 2 output processing
27
+ - Product Owner decision parsing
28
+
29
+ ## Usage Examples
30
+
31
+ ### Persist Agent Output
32
+ ```bash
33
+ ./persist-agent-output.sh \
34
+ "task_authentication_v1" \ # Task ID
35
+ "backend-dev" \ # Agent ID
36
+ "Implemented JWT auth" \ # Output
37
+ 0.85 \ # Confidence
38
+ 1 # Iteration
39
+ ```
40
+
41
+ ### Query Agent History
42
+ ```bash
43
+ # Get last 5 outputs for a specific agent
44
+ ./query-agent-history.sh "backend-dev" "" 5
45
+
46
+ # Get outputs for a specific task
47
+ ./query-agent-history.sh "backend-dev" "task_authentication_v1"
48
+ ```
49
+
50
+ ## Security & Performance
51
+ - ACL Level 1 (Read-only access)
52
+ - Indexed by tags for fast retrieval
53
+ - Minimal performance overhead
54
+ - Escaped and normalized inputs
55
+
56
+ ## Testing
57
+ Run comprehensive tests:
58
+ ```bash
59
+ ./test-memory-persistence.sh
60
+ ```
61
+
62
+ ## Sprint 7 Insights
63
+ - **Confidence**: 0.95
64
+ - **Priority**: 9
65
+ - Provides robust, zero-configuration memory tracking
66
+ - Eliminates manual output saving
67
+ - Supports multi-iteration workflows
68
+
69
+ ## Best Practices
70
+ - Always use script for output persistence
71
+ - Do not modify SQLite database directly
72
+ - Use query script for retrieval
73
+ - Add structured parsing for complex outputs
@@ -0,0 +1,49 @@
1
+ #!/bin/bash
2
+ # Saves agent output to SQLite via TypeScript adapter
3
+
4
+ # Enable strict error handling
5
+ set -euo pipefail
6
+
7
+ # Input validation
8
+ if [[ $# -lt 5 ]]; then
9
+ echo "Usage: $0 <TASK_ID> <AGENT_ID> <AGENT_OUTPUT> <CONFIDENCE> <ITERATION>"
10
+ exit 1
11
+ fi
12
+
13
+ TASK_ID="$1"
14
+ AGENT_ID="$2"
15
+ AGENT_OUTPUT="$3"
16
+ CONFIDENCE="$4"
17
+ ITERATION="$5"
18
+
19
+ # Normalize confidence to float
20
+ NORMALIZED_CONFIDENCE=$(printf "%.2f" "$CONFIDENCE")
21
+
22
+ # Ensure output is properly escaped for JSON
23
+ ESCAPED_OUTPUT=$(echo "$AGENT_OUTPUT" | jq -R -s '.')
24
+
25
+ # Call TypeScript persistence layer
26
+ node -e "
27
+ const { SQLiteAdapter } = require('./src/cli/sqlite-adapter');
28
+ const adapter = new SQLiteAdapter();
29
+
30
+ const memoryKey = \`agent/${AGENT_ID}/output/${TASK_ID}\`;
31
+ const outputRecord = {
32
+ output: $ESCAPED_OUTPUT,
33
+ confidence: parseFloat('$NORMALIZED_CONFIDENCE'),
34
+ iteration: parseInt('$ITERATION'),
35
+ timestamp: new Date().toISOString(),
36
+ parsed_data: null // Optional: Add structured parsing logic here
37
+ };
38
+
39
+ try {
40
+ adapter.set(memoryKey, outputRecord, {
41
+ aclLevel: 1, // Read-only access
42
+ tags: ['agent-output', \`agent-${AGENT_ID}\`, \`task-${TASK_ID}\`]
43
+ });
44
+ console.log(\`Successfully persisted output for agent ${AGENT_ID} in task ${TASK_ID}\`);
45
+ } catch (error) {
46
+ console.error('Memory persistence failed:', error);
47
+ process.exit(1);
48
+ }
49
+ "
@@ -0,0 +1,35 @@
1
+ #!/bin/bash
2
+ # Query agent output history from SQLite
3
+
4
+ # Enable strict error handling
5
+ set -euo pipefail
6
+
7
+ # Input validation
8
+ if [[ $# -lt 1 ]]; then
9
+ echo "Usage: $0 <AGENT_ID> [TASK_ID] [MAX_ENTRIES]"
10
+ exit 1
11
+ fi
12
+
13
+ AGENT_ID="$1"
14
+ TASK_ID="${2:-}"
15
+ MAX_ENTRIES="${3:-10}"
16
+
17
+ # Call TypeScript query layer
18
+ node -e "
19
+ const { SQLiteAdapter } = require('./src/cli/sqlite-adapter');
20
+ const adapter = new SQLiteAdapter();
21
+
22
+ const queryPattern = '${AGENT_ID}' + (process.argv[2] ? '/output/${TASK_ID}' : '/output/*');
23
+
24
+ try {
25
+ const results = adapter.query(queryPattern, {
26
+ limit: parseInt('${MAX_ENTRIES}'),
27
+ order: 'timestamp DESC'
28
+ });
29
+
30
+ console.log(JSON.stringify(results, null, 2));
31
+ } catch (error) {
32
+ console.error('Query failed:', error);
33
+ process.exit(1);
34
+ }
35
+ " "${TASK_ID}"