moflo 4.0.0

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 (902) hide show
  1. package/.claude/agents/MIGRATION_SUMMARY.md +222 -0
  2. package/.claude/agents/analysis/analyze-code-quality.md +179 -0
  3. package/.claude/agents/analysis/code-analyzer.md +210 -0
  4. package/.claude/agents/analysis/code-review/analyze-code-quality.md +179 -0
  5. package/.claude/agents/architecture/system-design/arch-system-design.md +155 -0
  6. package/.claude/agents/base-template-generator.md +42 -0
  7. package/.claude/agents/consensus/byzantine-coordinator.md +63 -0
  8. package/.claude/agents/consensus/crdt-synchronizer.md +997 -0
  9. package/.claude/agents/consensus/gossip-coordinator.md +63 -0
  10. package/.claude/agents/consensus/performance-benchmarker.md +851 -0
  11. package/.claude/agents/consensus/quorum-manager.md +823 -0
  12. package/.claude/agents/consensus/raft-manager.md +63 -0
  13. package/.claude/agents/consensus/security-manager.md +622 -0
  14. package/.claude/agents/core/coder.md +266 -0
  15. package/.claude/agents/core/planner.md +168 -0
  16. package/.claude/agents/core/researcher.md +190 -0
  17. package/.claude/agents/core/reviewer.md +326 -0
  18. package/.claude/agents/core/tester.md +319 -0
  19. package/.claude/agents/custom/test-long-runner.md +44 -0
  20. package/.claude/agents/data/ml/data-ml-model.md +193 -0
  21. package/.claude/agents/database-specialist.yaml +21 -0
  22. package/.claude/agents/development/backend/dev-backend-api.md +142 -0
  23. package/.claude/agents/development/dev-backend-api.md +345 -0
  24. package/.claude/agents/devops/ci-cd/ops-cicd-github.md +164 -0
  25. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +174 -0
  26. package/.claude/agents/dual-mode/codex-coordinator.md +224 -0
  27. package/.claude/agents/dual-mode/codex-worker.md +211 -0
  28. package/.claude/agents/dual-mode/dual-orchestrator.md +291 -0
  29. package/.claude/agents/flow-nexus/app-store.md +88 -0
  30. package/.claude/agents/flow-nexus/authentication.md +69 -0
  31. package/.claude/agents/flow-nexus/challenges.md +81 -0
  32. package/.claude/agents/flow-nexus/neural-network.md +88 -0
  33. package/.claude/agents/flow-nexus/payments.md +83 -0
  34. package/.claude/agents/flow-nexus/sandbox.md +76 -0
  35. package/.claude/agents/flow-nexus/swarm.md +76 -0
  36. package/.claude/agents/flow-nexus/user-tools.md +96 -0
  37. package/.claude/agents/flow-nexus/workflow.md +84 -0
  38. package/.claude/agents/github/code-review-swarm.md +538 -0
  39. package/.claude/agents/github/github-modes.md +173 -0
  40. package/.claude/agents/github/issue-tracker.md +319 -0
  41. package/.claude/agents/github/multi-repo-swarm.md +553 -0
  42. package/.claude/agents/github/pr-manager.md +191 -0
  43. package/.claude/agents/github/project-board-sync.md +509 -0
  44. package/.claude/agents/github/release-manager.md +367 -0
  45. package/.claude/agents/github/release-swarm.md +583 -0
  46. package/.claude/agents/github/repo-architect.md +398 -0
  47. package/.claude/agents/github/swarm-issue.md +573 -0
  48. package/.claude/agents/github/swarm-pr.md +428 -0
  49. package/.claude/agents/github/sync-coordinator.md +452 -0
  50. package/.claude/agents/github/workflow-automation.md +635 -0
  51. package/.claude/agents/goal/agent.md +816 -0
  52. package/.claude/agents/goal/code-goal-planner.md +446 -0
  53. package/.claude/agents/goal/goal-planner.md +168 -0
  54. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +130 -0
  55. package/.claude/agents/hive-mind/queen-coordinator.md +203 -0
  56. package/.claude/agents/hive-mind/scout-explorer.md +242 -0
  57. package/.claude/agents/hive-mind/swarm-memory-manager.md +193 -0
  58. package/.claude/agents/hive-mind/worker-specialist.md +217 -0
  59. package/.claude/agents/index.yaml +17 -0
  60. package/.claude/agents/neural/safla-neural.md +74 -0
  61. package/.claude/agents/optimization/benchmark-suite.md +665 -0
  62. package/.claude/agents/optimization/load-balancer.md +431 -0
  63. package/.claude/agents/optimization/performance-monitor.md +672 -0
  64. package/.claude/agents/optimization/resource-allocator.md +674 -0
  65. package/.claude/agents/optimization/topology-optimizer.md +808 -0
  66. package/.claude/agents/payments/agentic-payments.md +126 -0
  67. package/.claude/agents/project-coordinator.yaml +15 -0
  68. package/.claude/agents/python-specialist.yaml +21 -0
  69. package/.claude/agents/reasoning/agent.md +816 -0
  70. package/.claude/agents/reasoning/goal-planner.md +73 -0
  71. package/.claude/agents/security-auditor.yaml +20 -0
  72. package/.claude/agents/sona/sona-learning-optimizer.md +74 -0
  73. package/.claude/agents/sparc/architecture.md +472 -0
  74. package/.claude/agents/sparc/pseudocode.md +318 -0
  75. package/.claude/agents/sparc/refinement.md +525 -0
  76. package/.claude/agents/sparc/specification.md +276 -0
  77. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +225 -0
  78. package/.claude/agents/sublinear/consensus-coordinator.md +338 -0
  79. package/.claude/agents/sublinear/matrix-optimizer.md +185 -0
  80. package/.claude/agents/sublinear/pagerank-analyzer.md +299 -0
  81. package/.claude/agents/sublinear/performance-optimizer.md +368 -0
  82. package/.claude/agents/sublinear/trading-predictor.md +246 -0
  83. package/.claude/agents/swarm/adaptive-coordinator.md +396 -0
  84. package/.claude/agents/swarm/hierarchical-coordinator.md +327 -0
  85. package/.claude/agents/swarm/mesh-coordinator.md +392 -0
  86. package/.claude/agents/templates/automation-smart-agent.md +205 -0
  87. package/.claude/agents/templates/coordinator-swarm-init.md +105 -0
  88. package/.claude/agents/templates/github-pr-manager.md +177 -0
  89. package/.claude/agents/templates/implementer-sparc-coder.md +259 -0
  90. package/.claude/agents/templates/memory-coordinator.md +187 -0
  91. package/.claude/agents/templates/migration-plan.md +746 -0
  92. package/.claude/agents/templates/orchestrator-task.md +139 -0
  93. package/.claude/agents/templates/performance-analyzer.md +199 -0
  94. package/.claude/agents/templates/sparc-coordinator.md +183 -0
  95. package/.claude/agents/testing/production-validator.md +395 -0
  96. package/.claude/agents/testing/tdd-london-swarm.md +244 -0
  97. package/.claude/agents/testing/unit/tdd-london-swarm.md +244 -0
  98. package/.claude/agents/testing/validation/production-validator.md +395 -0
  99. package/.claude/agents/typescript-specialist.yaml +21 -0
  100. package/.claude/agents/v3/database-specialist.yaml +21 -0
  101. package/.claude/agents/v3/index.yaml +17 -0
  102. package/.claude/agents/v3/project-coordinator.yaml +15 -0
  103. package/.claude/agents/v3/python-specialist.yaml +21 -0
  104. package/.claude/agents/v3/test-architect.yaml +20 -0
  105. package/.claude/agents/v3/typescript-specialist.yaml +21 -0
  106. package/.claude/agents/v3/v3-integration-architect.md +346 -0
  107. package/.claude/agents/v3/v3-memory-specialist.md +318 -0
  108. package/.claude/agents/v3/v3-performance-engineer.md +397 -0
  109. package/.claude/agents/v3/v3-queen-coordinator.md +98 -0
  110. package/.claude/agents/v3/v3-security-architect.md +174 -0
  111. package/.claude/checkpoints/1767754460.json +8 -0
  112. package/.claude/commands/agents/README.md +10 -0
  113. package/.claude/commands/agents/agent-capabilities.md +21 -0
  114. package/.claude/commands/agents/agent-coordination.md +28 -0
  115. package/.claude/commands/agents/agent-spawning.md +28 -0
  116. package/.claude/commands/agents/agent-types.md +26 -0
  117. package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +54 -0
  118. package/.claude/commands/analysis/README.md +9 -0
  119. package/.claude/commands/analysis/bottleneck-detect.md +162 -0
  120. package/.claude/commands/analysis/performance-bottlenecks.md +59 -0
  121. package/.claude/commands/analysis/performance-report.md +25 -0
  122. package/.claude/commands/analysis/token-efficiency.md +45 -0
  123. package/.claude/commands/analysis/token-usage.md +25 -0
  124. package/.claude/commands/automation/README.md +9 -0
  125. package/.claude/commands/automation/auto-agent.md +122 -0
  126. package/.claude/commands/automation/self-healing.md +106 -0
  127. package/.claude/commands/automation/session-memory.md +90 -0
  128. package/.claude/commands/automation/smart-agents.md +73 -0
  129. package/.claude/commands/automation/smart-spawn.md +25 -0
  130. package/.claude/commands/automation/workflow-select.md +25 -0
  131. package/.claude/commands/claude-flow-help.md +103 -0
  132. package/.claude/commands/claude-flow-memory.md +107 -0
  133. package/.claude/commands/claude-flow-swarm.md +205 -0
  134. package/.claude/commands/coordination/README.md +9 -0
  135. package/.claude/commands/coordination/agent-spawn.md +25 -0
  136. package/.claude/commands/coordination/init.md +44 -0
  137. package/.claude/commands/coordination/orchestrate.md +43 -0
  138. package/.claude/commands/coordination/spawn.md +45 -0
  139. package/.claude/commands/coordination/swarm-init.md +85 -0
  140. package/.claude/commands/coordination/task-orchestrate.md +25 -0
  141. package/.claude/commands/flow-nexus/app-store.md +124 -0
  142. package/.claude/commands/flow-nexus/challenges.md +120 -0
  143. package/.claude/commands/flow-nexus/login-registration.md +65 -0
  144. package/.claude/commands/flow-nexus/neural-network.md +134 -0
  145. package/.claude/commands/flow-nexus/payments.md +116 -0
  146. package/.claude/commands/flow-nexus/sandbox.md +83 -0
  147. package/.claude/commands/flow-nexus/swarm.md +87 -0
  148. package/.claude/commands/flow-nexus/user-tools.md +152 -0
  149. package/.claude/commands/flow-nexus/workflow.md +115 -0
  150. package/.claude/commands/github/README.md +11 -0
  151. package/.claude/commands/github/code-review-swarm.md +514 -0
  152. package/.claude/commands/github/code-review.md +25 -0
  153. package/.claude/commands/github/github-modes.md +147 -0
  154. package/.claude/commands/github/github-swarm.md +121 -0
  155. package/.claude/commands/github/issue-tracker.md +292 -0
  156. package/.claude/commands/github/issue-triage.md +25 -0
  157. package/.claude/commands/github/multi-repo-swarm.md +519 -0
  158. package/.claude/commands/github/pr-enhance.md +26 -0
  159. package/.claude/commands/github/pr-manager.md +170 -0
  160. package/.claude/commands/github/project-board-sync.md +471 -0
  161. package/.claude/commands/github/release-manager.md +338 -0
  162. package/.claude/commands/github/release-swarm.md +544 -0
  163. package/.claude/commands/github/repo-analyze.md +25 -0
  164. package/.claude/commands/github/repo-architect.md +367 -0
  165. package/.claude/commands/github/swarm-issue.md +482 -0
  166. package/.claude/commands/github/swarm-pr.md +285 -0
  167. package/.claude/commands/github/sync-coordinator.md +301 -0
  168. package/.claude/commands/github/workflow-automation.md +442 -0
  169. package/.claude/commands/hive-mind/README.md +17 -0
  170. package/.claude/commands/hive-mind/hive-mind-consensus.md +8 -0
  171. package/.claude/commands/hive-mind/hive-mind-init.md +18 -0
  172. package/.claude/commands/hive-mind/hive-mind-memory.md +8 -0
  173. package/.claude/commands/hive-mind/hive-mind-metrics.md +8 -0
  174. package/.claude/commands/hive-mind/hive-mind-resume.md +8 -0
  175. package/.claude/commands/hive-mind/hive-mind-sessions.md +8 -0
  176. package/.claude/commands/hive-mind/hive-mind-spawn.md +21 -0
  177. package/.claude/commands/hive-mind/hive-mind-status.md +8 -0
  178. package/.claude/commands/hive-mind/hive-mind-stop.md +8 -0
  179. package/.claude/commands/hive-mind/hive-mind-wizard.md +8 -0
  180. package/.claude/commands/hive-mind/hive-mind.md +27 -0
  181. package/.claude/commands/hooks/README.md +11 -0
  182. package/.claude/commands/hooks/overview.md +58 -0
  183. package/.claude/commands/hooks/post-edit.md +117 -0
  184. package/.claude/commands/hooks/post-task.md +112 -0
  185. package/.claude/commands/hooks/pre-edit.md +113 -0
  186. package/.claude/commands/hooks/pre-task.md +111 -0
  187. package/.claude/commands/hooks/session-end.md +118 -0
  188. package/.claude/commands/hooks/setup.md +103 -0
  189. package/.claude/commands/memory/README.md +9 -0
  190. package/.claude/commands/memory/memory-persist.md +25 -0
  191. package/.claude/commands/memory/memory-search.md +25 -0
  192. package/.claude/commands/memory/memory-usage.md +25 -0
  193. package/.claude/commands/memory/neural.md +47 -0
  194. package/.claude/commands/monitoring/README.md +9 -0
  195. package/.claude/commands/monitoring/agent-metrics.md +25 -0
  196. package/.claude/commands/monitoring/agents.md +44 -0
  197. package/.claude/commands/monitoring/real-time-view.md +25 -0
  198. package/.claude/commands/monitoring/status.md +46 -0
  199. package/.claude/commands/monitoring/swarm-monitor.md +25 -0
  200. package/.claude/commands/optimization/README.md +9 -0
  201. package/.claude/commands/optimization/auto-topology.md +62 -0
  202. package/.claude/commands/optimization/cache-manage.md +25 -0
  203. package/.claude/commands/optimization/parallel-execute.md +25 -0
  204. package/.claude/commands/optimization/parallel-execution.md +50 -0
  205. package/.claude/commands/optimization/topology-optimize.md +25 -0
  206. package/.claude/commands/pair/README.md +261 -0
  207. package/.claude/commands/pair/commands.md +546 -0
  208. package/.claude/commands/pair/config.md +510 -0
  209. package/.claude/commands/pair/examples.md +512 -0
  210. package/.claude/commands/pair/modes.md +348 -0
  211. package/.claude/commands/pair/session.md +407 -0
  212. package/.claude/commands/pair/start.md +209 -0
  213. package/.claude/commands/sparc/analyzer.md +52 -0
  214. package/.claude/commands/sparc/architect.md +53 -0
  215. package/.claude/commands/sparc/ask.md +97 -0
  216. package/.claude/commands/sparc/batch-executor.md +54 -0
  217. package/.claude/commands/sparc/code.md +89 -0
  218. package/.claude/commands/sparc/coder.md +54 -0
  219. package/.claude/commands/sparc/debug.md +83 -0
  220. package/.claude/commands/sparc/debugger.md +54 -0
  221. package/.claude/commands/sparc/designer.md +53 -0
  222. package/.claude/commands/sparc/devops.md +109 -0
  223. package/.claude/commands/sparc/docs-writer.md +80 -0
  224. package/.claude/commands/sparc/documenter.md +54 -0
  225. package/.claude/commands/sparc/innovator.md +54 -0
  226. package/.claude/commands/sparc/integration.md +83 -0
  227. package/.claude/commands/sparc/mcp.md +117 -0
  228. package/.claude/commands/sparc/memory-manager.md +54 -0
  229. package/.claude/commands/sparc/optimizer.md +54 -0
  230. package/.claude/commands/sparc/orchestrator.md +132 -0
  231. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -0
  232. package/.claude/commands/sparc/refinement-optimization-mode.md +83 -0
  233. package/.claude/commands/sparc/researcher.md +54 -0
  234. package/.claude/commands/sparc/reviewer.md +54 -0
  235. package/.claude/commands/sparc/security-review.md +80 -0
  236. package/.claude/commands/sparc/sparc-modes.md +174 -0
  237. package/.claude/commands/sparc/sparc.md +111 -0
  238. package/.claude/commands/sparc/spec-pseudocode.md +80 -0
  239. package/.claude/commands/sparc/supabase-admin.md +348 -0
  240. package/.claude/commands/sparc/swarm-coordinator.md +54 -0
  241. package/.claude/commands/sparc/tdd.md +54 -0
  242. package/.claude/commands/sparc/tester.md +54 -0
  243. package/.claude/commands/sparc/tutorial.md +79 -0
  244. package/.claude/commands/sparc/workflow-manager.md +54 -0
  245. package/.claude/commands/sparc.md +166 -0
  246. package/.claude/commands/stream-chain/pipeline.md +121 -0
  247. package/.claude/commands/stream-chain/run.md +70 -0
  248. package/.claude/commands/swarm/README.md +15 -0
  249. package/.claude/commands/swarm/analysis.md +95 -0
  250. package/.claude/commands/swarm/development.md +96 -0
  251. package/.claude/commands/swarm/examples.md +168 -0
  252. package/.claude/commands/swarm/maintenance.md +102 -0
  253. package/.claude/commands/swarm/optimization.md +117 -0
  254. package/.claude/commands/swarm/research.md +136 -0
  255. package/.claude/commands/swarm/swarm-analysis.md +8 -0
  256. package/.claude/commands/swarm/swarm-background.md +8 -0
  257. package/.claude/commands/swarm/swarm-init.md +19 -0
  258. package/.claude/commands/swarm/swarm-modes.md +8 -0
  259. package/.claude/commands/swarm/swarm-monitor.md +8 -0
  260. package/.claude/commands/swarm/swarm-spawn.md +19 -0
  261. package/.claude/commands/swarm/swarm-status.md +8 -0
  262. package/.claude/commands/swarm/swarm-strategies.md +8 -0
  263. package/.claude/commands/swarm/swarm.md +27 -0
  264. package/.claude/commands/swarm/testing.md +131 -0
  265. package/.claude/commands/training/README.md +9 -0
  266. package/.claude/commands/training/model-update.md +25 -0
  267. package/.claude/commands/training/neural-patterns.md +74 -0
  268. package/.claude/commands/training/neural-train.md +25 -0
  269. package/.claude/commands/training/pattern-learn.md +25 -0
  270. package/.claude/commands/training/specialization.md +63 -0
  271. package/.claude/commands/truth/start.md +143 -0
  272. package/.claude/commands/verify/check.md +50 -0
  273. package/.claude/commands/verify/start.md +128 -0
  274. package/.claude/commands/workflows/README.md +9 -0
  275. package/.claude/commands/workflows/development.md +78 -0
  276. package/.claude/commands/workflows/research.md +63 -0
  277. package/.claude/commands/workflows/workflow-create.md +25 -0
  278. package/.claude/commands/workflows/workflow-execute.md +25 -0
  279. package/.claude/commands/workflows/workflow-export.md +25 -0
  280. package/.claude/config/v3-dependency-optimization.json +266 -0
  281. package/.claude/config/v3-performance-targets.json +251 -0
  282. package/.claude/helpers/README.md +97 -0
  283. package/.claude/helpers/adr-compliance.sh +186 -0
  284. package/.claude/helpers/aggressive-microcompact.mjs +36 -0
  285. package/.claude/helpers/auto-commit.sh +178 -0
  286. package/.claude/helpers/auto-memory-hook.mjs +363 -0
  287. package/.claude/helpers/checkpoint-manager.sh +251 -0
  288. package/.claude/helpers/context-persistence-hook.mjs +1979 -0
  289. package/.claude/helpers/daemon-manager.sh +252 -0
  290. package/.claude/helpers/ddd-tracker.sh +144 -0
  291. package/.claude/helpers/github-safe.js +106 -0
  292. package/.claude/helpers/github-setup.sh +28 -0
  293. package/.claude/helpers/guidance-hook.sh +13 -0
  294. package/.claude/helpers/guidance-hooks.sh +102 -0
  295. package/.claude/helpers/health-monitor.sh +108 -0
  296. package/.claude/helpers/hook-handler.cjs +229 -0
  297. package/.claude/helpers/intelligence.cjs +197 -0
  298. package/.claude/helpers/learning-hooks.sh +329 -0
  299. package/.claude/helpers/learning-optimizer.sh +127 -0
  300. package/.claude/helpers/learning-service.mjs +1144 -0
  301. package/.claude/helpers/memory.cjs +84 -0
  302. package/.claude/helpers/metrics-db.mjs +488 -0
  303. package/.claude/helpers/patch-aggressive-prune.mjs +184 -0
  304. package/.claude/helpers/pattern-consolidator.sh +86 -0
  305. package/.claude/helpers/perf-worker.sh +160 -0
  306. package/.claude/helpers/quick-start.sh +19 -0
  307. package/.claude/helpers/router.cjs +62 -0
  308. package/.claude/helpers/security-scanner.sh +127 -0
  309. package/.claude/helpers/session.cjs +125 -0
  310. package/.claude/helpers/setup-mcp.sh +18 -0
  311. package/.claude/helpers/standard-checkpoint-hooks.sh +189 -0
  312. package/.claude/helpers/statusline.cjs +742 -0
  313. package/.claude/helpers/swarm-comms.sh +353 -0
  314. package/.claude/helpers/swarm-hooks.sh +761 -0
  315. package/.claude/helpers/swarm-monitor.sh +211 -0
  316. package/.claude/helpers/sync-v3-metrics.sh +245 -0
  317. package/.claude/helpers/update-v3-progress.sh +166 -0
  318. package/.claude/helpers/v3-quick-status.sh +58 -0
  319. package/.claude/helpers/v3.sh +111 -0
  320. package/.claude/helpers/validate-v3-config.sh +216 -0
  321. package/.claude/helpers/worker-manager.sh +170 -0
  322. package/.claude/mcp.json +13 -0
  323. package/.claude/settings copy.json +526 -0
  324. package/.claude/settings.json +305 -0
  325. package/.claude/skills/agentdb-advanced/SKILL.md +550 -0
  326. package/.claude/skills/agentdb-learning/SKILL.md +545 -0
  327. package/.claude/skills/agentdb-memory-patterns/SKILL.md +339 -0
  328. package/.claude/skills/agentdb-optimization/SKILL.md +509 -0
  329. package/.claude/skills/agentdb-vector-search/SKILL.md +339 -0
  330. package/.claude/skills/agentic-jujutsu/SKILL.md +645 -0
  331. package/.claude/skills/dual-mode/README.md +71 -0
  332. package/.claude/skills/dual-mode/dual-collect.md +103 -0
  333. package/.claude/skills/dual-mode/dual-coordinate.md +85 -0
  334. package/.claude/skills/dual-mode/dual-spawn.md +81 -0
  335. package/.claude/skills/flow-nexus-neural/SKILL.md +738 -0
  336. package/.claude/skills/flow-nexus-platform/SKILL.md +1157 -0
  337. package/.claude/skills/flow-nexus-swarm/SKILL.md +610 -0
  338. package/.claude/skills/github-code-review/SKILL.md +1140 -0
  339. package/.claude/skills/github-multi-repo/SKILL.md +874 -0
  340. package/.claude/skills/github-project-management/SKILL.md +1277 -0
  341. package/.claude/skills/github-release-management/SKILL.md +1081 -0
  342. package/.claude/skills/github-workflow-automation/SKILL.md +1065 -0
  343. package/.claude/skills/hive-mind-advanced/SKILL.md +712 -0
  344. package/.claude/skills/hooks-automation/SKILL.md +1201 -0
  345. package/.claude/skills/pair-programming/SKILL.md +1202 -0
  346. package/.claude/skills/performance-analysis/SKILL.md +563 -0
  347. package/.claude/skills/reasoningbank-agentdb/SKILL.md +446 -0
  348. package/.claude/skills/reasoningbank-intelligence/SKILL.md +201 -0
  349. package/.claude/skills/skill-builder/SKILL.md +910 -0
  350. package/.claude/skills/sparc-methodology/SKILL.md +1115 -0
  351. package/.claude/skills/stream-chain/SKILL.md +563 -0
  352. package/.claude/skills/swarm-advanced/SKILL.md +973 -0
  353. package/.claude/skills/swarm-orchestration/SKILL.md +179 -0
  354. package/.claude/skills/v3-cli-modernization/SKILL.md +872 -0
  355. package/.claude/skills/v3-core-implementation/SKILL.md +797 -0
  356. package/.claude/skills/v3-ddd-architecture/SKILL.md +442 -0
  357. package/.claude/skills/v3-integration-deep/SKILL.md +241 -0
  358. package/.claude/skills/v3-mcp-optimization/SKILL.md +777 -0
  359. package/.claude/skills/v3-memory-unification/SKILL.md +174 -0
  360. package/.claude/skills/v3-performance-optimization/SKILL.md +390 -0
  361. package/.claude/skills/v3-security-overhaul/SKILL.md +82 -0
  362. package/.claude/skills/v3-swarm-coordination/SKILL.md +340 -0
  363. package/.claude/skills/verification-quality/SKILL.md +649 -0
  364. package/.claude/skills/worker-benchmarks/skill.md +135 -0
  365. package/.claude/skills/worker-integration/skill.md +154 -0
  366. package/.claude/statusline-command.sh +176 -0
  367. package/.claude/statusline.mjs +109 -0
  368. package/.claude/statusline.sh +431 -0
  369. package/.claude/workflow-state.json +8 -0
  370. package/.claude-plugin/README.md +720 -0
  371. package/.claude-plugin/docs/INSTALLATION.md +261 -0
  372. package/.claude-plugin/docs/PLUGIN_SUMMARY.md +361 -0
  373. package/.claude-plugin/docs/QUICKSTART.md +361 -0
  374. package/.claude-plugin/docs/STRUCTURE.md +128 -0
  375. package/.claude-plugin/hooks/hooks.json +74 -0
  376. package/.claude-plugin/marketplace.json +96 -0
  377. package/.claude-plugin/plugin.json +71 -0
  378. package/.claude-plugin/scripts/install.sh +234 -0
  379. package/.claude-plugin/scripts/uninstall.sh +36 -0
  380. package/.claude-plugin/scripts/verify.sh +108 -0
  381. package/LICENSE +21 -0
  382. package/README.md +148 -0
  383. package/bin/cli.js +12 -0
  384. package/bin/npx-repair.js +7 -0
  385. package/bin/npx-safe-launch.js +9 -0
  386. package/package.json +109 -0
  387. package/v3/@claude-flow/cli/README.md +7536 -0
  388. package/v3/@claude-flow/cli/bin/cli.js +156 -0
  389. package/v3/@claude-flow/cli/bin/mcp-server.js +189 -0
  390. package/v3/@claude-flow/cli/bin/preinstall.cjs +2 -0
  391. package/v3/@claude-flow/cli/dist/src/appliance/gguf-engine.d.ts +91 -0
  392. package/v3/@claude-flow/cli/dist/src/appliance/gguf-engine.js +425 -0
  393. package/v3/@claude-flow/cli/dist/src/appliance/ruvllm-bridge.d.ts +102 -0
  394. package/v3/@claude-flow/cli/dist/src/appliance/ruvllm-bridge.js +292 -0
  395. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-builder.d.ts +44 -0
  396. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-builder.js +329 -0
  397. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-distribution.d.ts +97 -0
  398. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-distribution.js +370 -0
  399. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-format.d.ts +111 -0
  400. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-format.js +393 -0
  401. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-runner.d.ts +69 -0
  402. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-runner.js +238 -0
  403. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-signing.d.ts +123 -0
  404. package/v3/@claude-flow/cli/dist/src/appliance/rvfa-signing.js +347 -0
  405. package/v3/@claude-flow/cli/dist/src/benchmarks/pretrain/index.d.ts +58 -0
  406. package/v3/@claude-flow/cli/dist/src/benchmarks/pretrain/index.js +404 -0
  407. package/v3/@claude-flow/cli/dist/src/commands/agent.d.ts +8 -0
  408. package/v3/@claude-flow/cli/dist/src/commands/agent.js +857 -0
  409. package/v3/@claude-flow/cli/dist/src/commands/analyze.d.ts +19 -0
  410. package/v3/@claude-flow/cli/dist/src/commands/analyze.js +1823 -0
  411. package/v3/@claude-flow/cli/dist/src/commands/appliance-advanced.d.ts +9 -0
  412. package/v3/@claude-flow/cli/dist/src/commands/appliance-advanced.js +215 -0
  413. package/v3/@claude-flow/cli/dist/src/commands/appliance.d.ts +8 -0
  414. package/v3/@claude-flow/cli/dist/src/commands/appliance.js +406 -0
  415. package/v3/@claude-flow/cli/dist/src/commands/benchmark.d.ts +10 -0
  416. package/v3/@claude-flow/cli/dist/src/commands/benchmark.js +459 -0
  417. package/v3/@claude-flow/cli/dist/src/commands/claims.d.ts +10 -0
  418. package/v3/@claude-flow/cli/dist/src/commands/claims.js +373 -0
  419. package/v3/@claude-flow/cli/dist/src/commands/completions.d.ts +10 -0
  420. package/v3/@claude-flow/cli/dist/src/commands/completions.js +539 -0
  421. package/v3/@claude-flow/cli/dist/src/commands/config.d.ts +8 -0
  422. package/v3/@claude-flow/cli/dist/src/commands/config.js +406 -0
  423. package/v3/@claude-flow/cli/dist/src/commands/daemon.d.ts +8 -0
  424. package/v3/@claude-flow/cli/dist/src/commands/daemon.js +609 -0
  425. package/v3/@claude-flow/cli/dist/src/commands/deployment.d.ts +10 -0
  426. package/v3/@claude-flow/cli/dist/src/commands/deployment.js +289 -0
  427. package/v3/@claude-flow/cli/dist/src/commands/doctor.d.ts +10 -0
  428. package/v3/@claude-flow/cli/dist/src/commands/doctor.js +603 -0
  429. package/v3/@claude-flow/cli/dist/src/commands/embeddings.d.ts +18 -0
  430. package/v3/@claude-flow/cli/dist/src/commands/embeddings.js +1576 -0
  431. package/v3/@claude-flow/cli/dist/src/commands/gate.d.ts +23 -0
  432. package/v3/@claude-flow/cli/dist/src/commands/gate.js +54 -0
  433. package/v3/@claude-flow/cli/dist/src/commands/guidance.d.ts +8 -0
  434. package/v3/@claude-flow/cli/dist/src/commands/guidance.js +560 -0
  435. package/v3/@claude-flow/cli/dist/src/commands/hive-mind.d.ts +11 -0
  436. package/v3/@claude-flow/cli/dist/src/commands/hive-mind.js +1230 -0
  437. package/v3/@claude-flow/cli/dist/src/commands/hooks.d.ts +8 -0
  438. package/v3/@claude-flow/cli/dist/src/commands/hooks.js +3945 -0
  439. package/v3/@claude-flow/cli/dist/src/commands/index.d.ts +113 -0
  440. package/v3/@claude-flow/cli/dist/src/commands/index.js +372 -0
  441. package/v3/@claude-flow/cli/dist/src/commands/init.d.ts +8 -0
  442. package/v3/@claude-flow/cli/dist/src/commands/init.js +990 -0
  443. package/v3/@claude-flow/cli/dist/src/commands/issues.d.ts +21 -0
  444. package/v3/@claude-flow/cli/dist/src/commands/issues.js +567 -0
  445. package/v3/@claude-flow/cli/dist/src/commands/mcp.d.ts +11 -0
  446. package/v3/@claude-flow/cli/dist/src/commands/mcp.js +715 -0
  447. package/v3/@claude-flow/cli/dist/src/commands/memory.d.ts +8 -0
  448. package/v3/@claude-flow/cli/dist/src/commands/memory.js +2425 -0
  449. package/v3/@claude-flow/cli/dist/src/commands/migrate.d.ts +8 -0
  450. package/v3/@claude-flow/cli/dist/src/commands/migrate.js +410 -0
  451. package/v3/@claude-flow/cli/dist/src/commands/neural.d.ts +10 -0
  452. package/v3/@claude-flow/cli/dist/src/commands/neural.js +1448 -0
  453. package/v3/@claude-flow/cli/dist/src/commands/orc.d.ts +17 -0
  454. package/v3/@claude-flow/cli/dist/src/commands/orc.js +629 -0
  455. package/v3/@claude-flow/cli/dist/src/commands/performance.d.ts +10 -0
  456. package/v3/@claude-flow/cli/dist/src/commands/performance.js +579 -0
  457. package/v3/@claude-flow/cli/dist/src/commands/plugins.d.ts +11 -0
  458. package/v3/@claude-flow/cli/dist/src/commands/plugins.js +820 -0
  459. package/v3/@claude-flow/cli/dist/src/commands/process.d.ts +10 -0
  460. package/v3/@claude-flow/cli/dist/src/commands/process.js +641 -0
  461. package/v3/@claude-flow/cli/dist/src/commands/progress.d.ts +11 -0
  462. package/v3/@claude-flow/cli/dist/src/commands/progress.js +259 -0
  463. package/v3/@claude-flow/cli/dist/src/commands/providers.d.ts +10 -0
  464. package/v3/@claude-flow/cli/dist/src/commands/providers.js +232 -0
  465. package/v3/@claude-flow/cli/dist/src/commands/route.d.ts +16 -0
  466. package/v3/@claude-flow/cli/dist/src/commands/route.js +813 -0
  467. package/v3/@claude-flow/cli/dist/src/commands/ruvector/backup.d.ts +11 -0
  468. package/v3/@claude-flow/cli/dist/src/commands/ruvector/backup.js +746 -0
  469. package/v3/@claude-flow/cli/dist/src/commands/ruvector/benchmark.d.ts +11 -0
  470. package/v3/@claude-flow/cli/dist/src/commands/ruvector/benchmark.js +480 -0
  471. package/v3/@claude-flow/cli/dist/src/commands/ruvector/import.d.ts +18 -0
  472. package/v3/@claude-flow/cli/dist/src/commands/ruvector/import.js +350 -0
  473. package/v3/@claude-flow/cli/dist/src/commands/ruvector/index.d.ts +29 -0
  474. package/v3/@claude-flow/cli/dist/src/commands/ruvector/index.js +129 -0
  475. package/v3/@claude-flow/cli/dist/src/commands/ruvector/init.d.ts +11 -0
  476. package/v3/@claude-flow/cli/dist/src/commands/ruvector/init.js +431 -0
  477. package/v3/@claude-flow/cli/dist/src/commands/ruvector/migrate.d.ts +11 -0
  478. package/v3/@claude-flow/cli/dist/src/commands/ruvector/migrate.js +481 -0
  479. package/v3/@claude-flow/cli/dist/src/commands/ruvector/optimize.d.ts +11 -0
  480. package/v3/@claude-flow/cli/dist/src/commands/ruvector/optimize.js +503 -0
  481. package/v3/@claude-flow/cli/dist/src/commands/ruvector/setup.d.ts +18 -0
  482. package/v3/@claude-flow/cli/dist/src/commands/ruvector/setup.js +765 -0
  483. package/v3/@claude-flow/cli/dist/src/commands/ruvector/status.d.ts +11 -0
  484. package/v3/@claude-flow/cli/dist/src/commands/ruvector/status.js +456 -0
  485. package/v3/@claude-flow/cli/dist/src/commands/security.d.ts +10 -0
  486. package/v3/@claude-flow/cli/dist/src/commands/security.js +576 -0
  487. package/v3/@claude-flow/cli/dist/src/commands/session.d.ts +8 -0
  488. package/v3/@claude-flow/cli/dist/src/commands/session.js +750 -0
  489. package/v3/@claude-flow/cli/dist/src/commands/start.d.ts +8 -0
  490. package/v3/@claude-flow/cli/dist/src/commands/start.js +418 -0
  491. package/v3/@claude-flow/cli/dist/src/commands/status.d.ts +8 -0
  492. package/v3/@claude-flow/cli/dist/src/commands/status.js +591 -0
  493. package/v3/@claude-flow/cli/dist/src/commands/swarm.d.ts +8 -0
  494. package/v3/@claude-flow/cli/dist/src/commands/swarm.js +748 -0
  495. package/v3/@claude-flow/cli/dist/src/commands/task.d.ts +8 -0
  496. package/v3/@claude-flow/cli/dist/src/commands/task.js +671 -0
  497. package/v3/@claude-flow/cli/dist/src/commands/transfer-store.d.ts +13 -0
  498. package/v3/@claude-flow/cli/dist/src/commands/transfer-store.js +428 -0
  499. package/v3/@claude-flow/cli/dist/src/commands/update.d.ts +8 -0
  500. package/v3/@claude-flow/cli/dist/src/commands/update.js +276 -0
  501. package/v3/@claude-flow/cli/dist/src/commands/workflow.d.ts +8 -0
  502. package/v3/@claude-flow/cli/dist/src/commands/workflow.js +617 -0
  503. package/v3/@claude-flow/cli/dist/src/config/moflo-config.d.ts +43 -0
  504. package/v3/@claude-flow/cli/dist/src/config/moflo-config.js +181 -0
  505. package/v3/@claude-flow/cli/dist/src/config-adapter.d.ts +15 -0
  506. package/v3/@claude-flow/cli/dist/src/config-adapter.js +186 -0
  507. package/v3/@claude-flow/cli/dist/src/index.d.ts +76 -0
  508. package/v3/@claude-flow/cli/dist/src/index.js +470 -0
  509. package/v3/@claude-flow/cli/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
  510. package/v3/@claude-flow/cli/dist/src/infrastructure/in-memory-repositories.js +264 -0
  511. package/v3/@claude-flow/cli/dist/src/init/claudemd-generator.d.ts +25 -0
  512. package/v3/@claude-flow/cli/dist/src/init/claudemd-generator.js +486 -0
  513. package/v3/@claude-flow/cli/dist/src/init/executor.d.ts +41 -0
  514. package/v3/@claude-flow/cli/dist/src/init/executor.js +1741 -0
  515. package/v3/@claude-flow/cli/dist/src/init/helpers-generator.d.ts +60 -0
  516. package/v3/@claude-flow/cli/dist/src/init/helpers-generator.js +1166 -0
  517. package/v3/@claude-flow/cli/dist/src/init/index.d.ts +13 -0
  518. package/v3/@claude-flow/cli/dist/src/init/index.js +15 -0
  519. package/v3/@claude-flow/cli/dist/src/init/mcp-generator.d.ts +26 -0
  520. package/v3/@claude-flow/cli/dist/src/init/mcp-generator.js +116 -0
  521. package/v3/@claude-flow/cli/dist/src/init/moflo-init.d.ts +14 -0
  522. package/v3/@claude-flow/cli/dist/src/init/moflo-init.js +392 -0
  523. package/v3/@claude-flow/cli/dist/src/init/settings-generator.d.ts +14 -0
  524. package/v3/@claude-flow/cli/dist/src/init/settings-generator.js +399 -0
  525. package/v3/@claude-flow/cli/dist/src/init/statusline-generator.d.ts +28 -0
  526. package/v3/@claude-flow/cli/dist/src/init/statusline-generator.js +818 -0
  527. package/v3/@claude-flow/cli/dist/src/init/types.d.ts +287 -0
  528. package/v3/@claude-flow/cli/dist/src/init/types.js +259 -0
  529. package/v3/@claude-flow/cli/dist/src/mcp-client.d.ts +92 -0
  530. package/v3/@claude-flow/cli/dist/src/mcp-client.js +237 -0
  531. package/v3/@claude-flow/cli/dist/src/mcp-server.d.ts +161 -0
  532. package/v3/@claude-flow/cli/dist/src/mcp-server.js +627 -0
  533. package/v3/@claude-flow/cli/dist/src/mcp-tools/agent-tools.d.ts +9 -0
  534. package/v3/@claude-flow/cli/dist/src/mcp-tools/agent-tools.js +549 -0
  535. package/v3/@claude-flow/cli/dist/src/mcp-tools/agentdb-tools.d.ts +30 -0
  536. package/v3/@claude-flow/cli/dist/src/mcp-tools/agentdb-tools.js +557 -0
  537. package/v3/@claude-flow/cli/dist/src/mcp-tools/analyze-tools.d.ts +38 -0
  538. package/v3/@claude-flow/cli/dist/src/mcp-tools/analyze-tools.js +317 -0
  539. package/v3/@claude-flow/cli/dist/src/mcp-tools/auto-install.d.ts +83 -0
  540. package/v3/@claude-flow/cli/dist/src/mcp-tools/auto-install.js +132 -0
  541. package/v3/@claude-flow/cli/dist/src/mcp-tools/browser-tools.d.ts +13 -0
  542. package/v3/@claude-flow/cli/dist/src/mcp-tools/browser-tools.js +551 -0
  543. package/v3/@claude-flow/cli/dist/src/mcp-tools/claims-tools.d.ts +12 -0
  544. package/v3/@claude-flow/cli/dist/src/mcp-tools/claims-tools.js +732 -0
  545. package/v3/@claude-flow/cli/dist/src/mcp-tools/config-tools.d.ts +8 -0
  546. package/v3/@claude-flow/cli/dist/src/mcp-tools/config-tools.js +343 -0
  547. package/v3/@claude-flow/cli/dist/src/mcp-tools/coordination-tools.d.ts +13 -0
  548. package/v3/@claude-flow/cli/dist/src/mcp-tools/coordination-tools.js +486 -0
  549. package/v3/@claude-flow/cli/dist/src/mcp-tools/daa-tools.d.ts +13 -0
  550. package/v3/@claude-flow/cli/dist/src/mcp-tools/daa-tools.js +426 -0
  551. package/v3/@claude-flow/cli/dist/src/mcp-tools/embeddings-tools.d.ts +9 -0
  552. package/v3/@claude-flow/cli/dist/src/mcp-tools/embeddings-tools.js +782 -0
  553. package/v3/@claude-flow/cli/dist/src/mcp-tools/github-tools.d.ts +13 -0
  554. package/v3/@claude-flow/cli/dist/src/mcp-tools/github-tools.js +373 -0
  555. package/v3/@claude-flow/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +8 -0
  556. package/v3/@claude-flow/cli/dist/src/mcp-tools/hive-mind-tools.js +583 -0
  557. package/v3/@claude-flow/cli/dist/src/mcp-tools/hooks-tools.d.ts +44 -0
  558. package/v3/@claude-flow/cli/dist/src/mcp-tools/hooks-tools.js +3045 -0
  559. package/v3/@claude-flow/cli/dist/src/mcp-tools/index.d.ts +23 -0
  560. package/v3/@claude-flow/cli/dist/src/mcp-tools/index.js +22 -0
  561. package/v3/@claude-flow/cli/dist/src/mcp-tools/memory-tools.d.ts +14 -0
  562. package/v3/@claude-flow/cli/dist/src/mcp-tools/memory-tools.js +499 -0
  563. package/v3/@claude-flow/cli/dist/src/mcp-tools/neural-tools.d.ts +16 -0
  564. package/v3/@claude-flow/cli/dist/src/mcp-tools/neural-tools.js +461 -0
  565. package/v3/@claude-flow/cli/dist/src/mcp-tools/performance-tools.d.ts +16 -0
  566. package/v3/@claude-flow/cli/dist/src/mcp-tools/performance-tools.js +534 -0
  567. package/v3/@claude-flow/cli/dist/src/mcp-tools/progress-tools.d.ts +14 -0
  568. package/v3/@claude-flow/cli/dist/src/mcp-tools/progress-tools.js +348 -0
  569. package/v3/@claude-flow/cli/dist/src/mcp-tools/security-tools.d.ts +18 -0
  570. package/v3/@claude-flow/cli/dist/src/mcp-tools/security-tools.js +434 -0
  571. package/v3/@claude-flow/cli/dist/src/mcp-tools/session-tools.d.ts +8 -0
  572. package/v3/@claude-flow/cli/dist/src/mcp-tools/session-tools.js +315 -0
  573. package/v3/@claude-flow/cli/dist/src/mcp-tools/swarm-tools.d.ts +8 -0
  574. package/v3/@claude-flow/cli/dist/src/mcp-tools/swarm-tools.js +102 -0
  575. package/v3/@claude-flow/cli/dist/src/mcp-tools/system-tools.d.ts +13 -0
  576. package/v3/@claude-flow/cli/dist/src/mcp-tools/system-tools.js +417 -0
  577. package/v3/@claude-flow/cli/dist/src/mcp-tools/task-tools.d.ts +8 -0
  578. package/v3/@claude-flow/cli/dist/src/mcp-tools/task-tools.js +338 -0
  579. package/v3/@claude-flow/cli/dist/src/mcp-tools/terminal-tools.d.ts +13 -0
  580. package/v3/@claude-flow/cli/dist/src/mcp-tools/terminal-tools.js +246 -0
  581. package/v3/@claude-flow/cli/dist/src/mcp-tools/transfer-tools.d.ts +14 -0
  582. package/v3/@claude-flow/cli/dist/src/mcp-tools/transfer-tools.js +396 -0
  583. package/v3/@claude-flow/cli/dist/src/mcp-tools/types.d.ts +31 -0
  584. package/v3/@claude-flow/cli/dist/src/mcp-tools/types.js +7 -0
  585. package/v3/@claude-flow/cli/dist/src/mcp-tools/workflow-tools.d.ts +8 -0
  586. package/v3/@claude-flow/cli/dist/src/mcp-tools/workflow-tools.js +572 -0
  587. package/v3/@claude-flow/cli/dist/src/memory/ewc-consolidation.d.ts +271 -0
  588. package/v3/@claude-flow/cli/dist/src/memory/ewc-consolidation.js +542 -0
  589. package/v3/@claude-flow/cli/dist/src/memory/intelligence.d.ts +285 -0
  590. package/v3/@claude-flow/cli/dist/src/memory/intelligence.js +794 -0
  591. package/v3/@claude-flow/cli/dist/src/memory/memory-bridge.d.ts +407 -0
  592. package/v3/@claude-flow/cli/dist/src/memory/memory-bridge.js +1494 -0
  593. package/v3/@claude-flow/cli/dist/src/memory/memory-initializer.d.ts +405 -0
  594. package/v3/@claude-flow/cli/dist/src/memory/memory-initializer.js +2213 -0
  595. package/v3/@claude-flow/cli/dist/src/memory/sona-optimizer.d.ts +227 -0
  596. package/v3/@claude-flow/cli/dist/src/memory/sona-optimizer.js +633 -0
  597. package/v3/@claude-flow/cli/dist/src/output.d.ts +133 -0
  598. package/v3/@claude-flow/cli/dist/src/output.js +514 -0
  599. package/v3/@claude-flow/cli/dist/src/parser.d.ts +41 -0
  600. package/v3/@claude-flow/cli/dist/src/parser.js +377 -0
  601. package/v3/@claude-flow/cli/dist/src/plugins/manager.d.ts +133 -0
  602. package/v3/@claude-flow/cli/dist/src/plugins/manager.js +400 -0
  603. package/v3/@claude-flow/cli/dist/src/plugins/store/discovery.d.ts +88 -0
  604. package/v3/@claude-flow/cli/dist/src/plugins/store/discovery.js +1147 -0
  605. package/v3/@claude-flow/cli/dist/src/plugins/store/index.d.ts +76 -0
  606. package/v3/@claude-flow/cli/dist/src/plugins/store/index.js +141 -0
  607. package/v3/@claude-flow/cli/dist/src/plugins/store/search.d.ts +46 -0
  608. package/v3/@claude-flow/cli/dist/src/plugins/store/search.js +230 -0
  609. package/v3/@claude-flow/cli/dist/src/plugins/store/types.d.ts +274 -0
  610. package/v3/@claude-flow/cli/dist/src/plugins/store/types.js +7 -0
  611. package/v3/@claude-flow/cli/dist/src/plugins/tests/demo-plugin-store.d.ts +7 -0
  612. package/v3/@claude-flow/cli/dist/src/plugins/tests/demo-plugin-store.js +126 -0
  613. package/v3/@claude-flow/cli/dist/src/plugins/tests/standalone-test.d.ts +12 -0
  614. package/v3/@claude-flow/cli/dist/src/plugins/tests/standalone-test.js +188 -0
  615. package/v3/@claude-flow/cli/dist/src/plugins/tests/test-plugin-store.d.ts +7 -0
  616. package/v3/@claude-flow/cli/dist/src/plugins/tests/test-plugin-store.js +206 -0
  617. package/v3/@claude-flow/cli/dist/src/production/circuit-breaker.d.ts +101 -0
  618. package/v3/@claude-flow/cli/dist/src/production/circuit-breaker.js +241 -0
  619. package/v3/@claude-flow/cli/dist/src/production/error-handler.d.ts +92 -0
  620. package/v3/@claude-flow/cli/dist/src/production/error-handler.js +299 -0
  621. package/v3/@claude-flow/cli/dist/src/production/index.d.ts +23 -0
  622. package/v3/@claude-flow/cli/dist/src/production/index.js +18 -0
  623. package/v3/@claude-flow/cli/dist/src/production/monitoring.d.ts +161 -0
  624. package/v3/@claude-flow/cli/dist/src/production/monitoring.js +356 -0
  625. package/v3/@claude-flow/cli/dist/src/production/rate-limiter.d.ts +80 -0
  626. package/v3/@claude-flow/cli/dist/src/production/rate-limiter.js +201 -0
  627. package/v3/@claude-flow/cli/dist/src/production/retry.d.ts +48 -0
  628. package/v3/@claude-flow/cli/dist/src/production/retry.js +179 -0
  629. package/v3/@claude-flow/cli/dist/src/prompt.d.ts +44 -0
  630. package/v3/@claude-flow/cli/dist/src/prompt.js +501 -0
  631. package/v3/@claude-flow/cli/dist/src/runtime/headless.d.ts +60 -0
  632. package/v3/@claude-flow/cli/dist/src/runtime/headless.js +284 -0
  633. package/v3/@claude-flow/cli/dist/src/ruvector/ast-analyzer.d.ts +67 -0
  634. package/v3/@claude-flow/cli/dist/src/ruvector/ast-analyzer.js +277 -0
  635. package/v3/@claude-flow/cli/dist/src/ruvector/coverage-router.d.ts +160 -0
  636. package/v3/@claude-flow/cli/dist/src/ruvector/coverage-router.js +529 -0
  637. package/v3/@claude-flow/cli/dist/src/ruvector/coverage-tools.d.ts +33 -0
  638. package/v3/@claude-flow/cli/dist/src/ruvector/coverage-tools.js +157 -0
  639. package/v3/@claude-flow/cli/dist/src/ruvector/diff-classifier.d.ts +175 -0
  640. package/v3/@claude-flow/cli/dist/src/ruvector/diff-classifier.js +698 -0
  641. package/v3/@claude-flow/cli/dist/src/ruvector/enhanced-model-router.d.ts +146 -0
  642. package/v3/@claude-flow/cli/dist/src/ruvector/enhanced-model-router.js +530 -0
  643. package/v3/@claude-flow/cli/dist/src/ruvector/flash-attention.d.ts +195 -0
  644. package/v3/@claude-flow/cli/dist/src/ruvector/flash-attention.js +643 -0
  645. package/v3/@claude-flow/cli/dist/src/ruvector/graph-analyzer.d.ts +187 -0
  646. package/v3/@claude-flow/cli/dist/src/ruvector/graph-analyzer.js +929 -0
  647. package/v3/@claude-flow/cli/dist/src/ruvector/index.d.ts +34 -0
  648. package/v3/@claude-flow/cli/dist/src/ruvector/index.js +60 -0
  649. package/v3/@claude-flow/cli/dist/src/ruvector/lora-adapter.d.ts +218 -0
  650. package/v3/@claude-flow/cli/dist/src/ruvector/lora-adapter.js +455 -0
  651. package/v3/@claude-flow/cli/dist/src/ruvector/model-router.d.ts +220 -0
  652. package/v3/@claude-flow/cli/dist/src/ruvector/model-router.js +488 -0
  653. package/v3/@claude-flow/cli/dist/src/ruvector/moe-router.d.ts +206 -0
  654. package/v3/@claude-flow/cli/dist/src/ruvector/moe-router.js +626 -0
  655. package/v3/@claude-flow/cli/dist/src/ruvector/q-learning-router.d.ts +211 -0
  656. package/v3/@claude-flow/cli/dist/src/ruvector/q-learning-router.js +681 -0
  657. package/v3/@claude-flow/cli/dist/src/ruvector/semantic-router.d.ts +77 -0
  658. package/v3/@claude-flow/cli/dist/src/ruvector/semantic-router.js +178 -0
  659. package/v3/@claude-flow/cli/dist/src/ruvector/vector-db.d.ts +69 -0
  660. package/v3/@claude-flow/cli/dist/src/ruvector/vector-db.js +243 -0
  661. package/v3/@claude-flow/cli/dist/src/services/agent-router.d.ts +49 -0
  662. package/v3/@claude-flow/cli/dist/src/services/agent-router.js +161 -0
  663. package/v3/@claude-flow/cli/dist/src/services/agentic-flow-bridge.d.ts +50 -0
  664. package/v3/@claude-flow/cli/dist/src/services/agentic-flow-bridge.js +95 -0
  665. package/v3/@claude-flow/cli/dist/src/services/claim-service.d.ts +204 -0
  666. package/v3/@claude-flow/cli/dist/src/services/claim-service.js +818 -0
  667. package/v3/@claude-flow/cli/dist/src/services/container-worker-pool.d.ts +197 -0
  668. package/v3/@claude-flow/cli/dist/src/services/container-worker-pool.js +584 -0
  669. package/v3/@claude-flow/cli/dist/src/services/headless-worker-executor.d.ts +304 -0
  670. package/v3/@claude-flow/cli/dist/src/services/headless-worker-executor.js +999 -0
  671. package/v3/@claude-flow/cli/dist/src/services/index.d.ts +15 -0
  672. package/v3/@claude-flow/cli/dist/src/services/index.js +15 -0
  673. package/v3/@claude-flow/cli/dist/src/services/learning-service.d.ts +161 -0
  674. package/v3/@claude-flow/cli/dist/src/services/learning-service.js +679 -0
  675. package/v3/@claude-flow/cli/dist/src/services/registry-api.d.ts +58 -0
  676. package/v3/@claude-flow/cli/dist/src/services/registry-api.js +146 -0
  677. package/v3/@claude-flow/cli/dist/src/services/ruvector-training.d.ts +214 -0
  678. package/v3/@claude-flow/cli/dist/src/services/ruvector-training.js +497 -0
  679. package/v3/@claude-flow/cli/dist/src/services/worker-daemon.d.ts +203 -0
  680. package/v3/@claude-flow/cli/dist/src/services/worker-daemon.js +756 -0
  681. package/v3/@claude-flow/cli/dist/src/services/worker-queue.d.ts +194 -0
  682. package/v3/@claude-flow/cli/dist/src/services/worker-queue.js +513 -0
  683. package/v3/@claude-flow/cli/dist/src/services/workflow-gate.d.ts +77 -0
  684. package/v3/@claude-flow/cli/dist/src/services/workflow-gate.js +278 -0
  685. package/v3/@claude-flow/cli/dist/src/suggest.d.ts +53 -0
  686. package/v3/@claude-flow/cli/dist/src/suggest.js +200 -0
  687. package/v3/@claude-flow/cli/dist/src/transfer/anonymization/index.d.ts +25 -0
  688. package/v3/@claude-flow/cli/dist/src/transfer/anonymization/index.js +175 -0
  689. package/v3/@claude-flow/cli/dist/src/transfer/deploy-seraphine.d.ts +13 -0
  690. package/v3/@claude-flow/cli/dist/src/transfer/deploy-seraphine.js +205 -0
  691. package/v3/@claude-flow/cli/dist/src/transfer/export.d.ts +25 -0
  692. package/v3/@claude-flow/cli/dist/src/transfer/export.js +113 -0
  693. package/v3/@claude-flow/cli/dist/src/transfer/index.d.ts +12 -0
  694. package/v3/@claude-flow/cli/dist/src/transfer/index.js +31 -0
  695. package/v3/@claude-flow/cli/dist/src/transfer/ipfs/client.d.ts +109 -0
  696. package/v3/@claude-flow/cli/dist/src/transfer/ipfs/client.js +307 -0
  697. package/v3/@claude-flow/cli/dist/src/transfer/ipfs/upload.d.ts +95 -0
  698. package/v3/@claude-flow/cli/dist/src/transfer/ipfs/upload.js +411 -0
  699. package/v3/@claude-flow/cli/dist/src/transfer/models/seraphine.d.ts +72 -0
  700. package/v3/@claude-flow/cli/dist/src/transfer/models/seraphine.js +373 -0
  701. package/v3/@claude-flow/cli/dist/src/transfer/serialization/cfp.d.ts +49 -0
  702. package/v3/@claude-flow/cli/dist/src/transfer/serialization/cfp.js +183 -0
  703. package/v3/@claude-flow/cli/dist/src/transfer/storage/gcs.d.ts +82 -0
  704. package/v3/@claude-flow/cli/dist/src/transfer/storage/gcs.js +230 -0
  705. package/v3/@claude-flow/cli/dist/src/transfer/storage/index.d.ts +6 -0
  706. package/v3/@claude-flow/cli/dist/src/transfer/storage/index.js +6 -0
  707. package/v3/@claude-flow/cli/dist/src/transfer/store/discovery.d.ts +84 -0
  708. package/v3/@claude-flow/cli/dist/src/transfer/store/discovery.js +382 -0
  709. package/v3/@claude-flow/cli/dist/src/transfer/store/download.d.ts +70 -0
  710. package/v3/@claude-flow/cli/dist/src/transfer/store/download.js +334 -0
  711. package/v3/@claude-flow/cli/dist/src/transfer/store/index.d.ts +84 -0
  712. package/v3/@claude-flow/cli/dist/src/transfer/store/index.js +153 -0
  713. package/v3/@claude-flow/cli/dist/src/transfer/store/publish.d.ts +76 -0
  714. package/v3/@claude-flow/cli/dist/src/transfer/store/publish.js +294 -0
  715. package/v3/@claude-flow/cli/dist/src/transfer/store/registry.d.ts +58 -0
  716. package/v3/@claude-flow/cli/dist/src/transfer/store/registry.js +285 -0
  717. package/v3/@claude-flow/cli/dist/src/transfer/store/search.d.ts +54 -0
  718. package/v3/@claude-flow/cli/dist/src/transfer/store/search.js +232 -0
  719. package/v3/@claude-flow/cli/dist/src/transfer/store/tests/standalone-test.d.ts +12 -0
  720. package/v3/@claude-flow/cli/dist/src/transfer/store/tests/standalone-test.js +190 -0
  721. package/v3/@claude-flow/cli/dist/src/transfer/store/types.d.ts +193 -0
  722. package/v3/@claude-flow/cli/dist/src/transfer/store/types.js +6 -0
  723. package/v3/@claude-flow/cli/dist/src/transfer/test-seraphine.d.ts +6 -0
  724. package/v3/@claude-flow/cli/dist/src/transfer/test-seraphine.js +105 -0
  725. package/v3/@claude-flow/cli/dist/src/transfer/tests/test-store.d.ts +7 -0
  726. package/v3/@claude-flow/cli/dist/src/transfer/tests/test-store.js +214 -0
  727. package/v3/@claude-flow/cli/dist/src/transfer/types.d.ts +245 -0
  728. package/v3/@claude-flow/cli/dist/src/transfer/types.js +6 -0
  729. package/v3/@claude-flow/cli/dist/src/types.d.ts +198 -0
  730. package/v3/@claude-flow/cli/dist/src/types.js +38 -0
  731. package/v3/@claude-flow/cli/dist/src/update/checker.d.ts +34 -0
  732. package/v3/@claude-flow/cli/dist/src/update/checker.js +190 -0
  733. package/v3/@claude-flow/cli/dist/src/update/executor.d.ts +32 -0
  734. package/v3/@claude-flow/cli/dist/src/update/executor.js +183 -0
  735. package/v3/@claude-flow/cli/dist/src/update/index.d.ts +33 -0
  736. package/v3/@claude-flow/cli/dist/src/update/index.js +64 -0
  737. package/v3/@claude-flow/cli/dist/src/update/rate-limiter.d.ts +20 -0
  738. package/v3/@claude-flow/cli/dist/src/update/rate-limiter.js +96 -0
  739. package/v3/@claude-flow/cli/dist/src/update/validator.d.ts +17 -0
  740. package/v3/@claude-flow/cli/dist/src/update/validator.js +123 -0
  741. package/v3/@claude-flow/cli/package.json +110 -0
  742. package/v3/@claude-flow/guidance/README.md +1195 -0
  743. package/v3/@claude-flow/guidance/package.json +198 -0
  744. package/v3/@claude-flow/shared/README.md +323 -0
  745. package/v3/@claude-flow/shared/dist/core/config/defaults.d.ts +41 -0
  746. package/v3/@claude-flow/shared/dist/core/config/defaults.js +186 -0
  747. package/v3/@claude-flow/shared/dist/core/config/index.d.ts +8 -0
  748. package/v3/@claude-flow/shared/dist/core/config/index.js +12 -0
  749. package/v3/@claude-flow/shared/dist/core/config/loader.d.ts +45 -0
  750. package/v3/@claude-flow/shared/dist/core/config/loader.js +222 -0
  751. package/v3/@claude-flow/shared/dist/core/config/schema.d.ts +1134 -0
  752. package/v3/@claude-flow/shared/dist/core/config/schema.js +158 -0
  753. package/v3/@claude-flow/shared/dist/core/config/validator.d.ts +92 -0
  754. package/v3/@claude-flow/shared/dist/core/config/validator.js +147 -0
  755. package/v3/@claude-flow/shared/dist/core/event-bus.d.ts +31 -0
  756. package/v3/@claude-flow/shared/dist/core/event-bus.js +197 -0
  757. package/v3/@claude-flow/shared/dist/core/index.d.ts +15 -0
  758. package/v3/@claude-flow/shared/dist/core/index.js +19 -0
  759. package/v3/@claude-flow/shared/dist/core/interfaces/agent.interface.d.ts +200 -0
  760. package/v3/@claude-flow/shared/dist/core/interfaces/agent.interface.js +6 -0
  761. package/v3/@claude-flow/shared/dist/core/interfaces/coordinator.interface.d.ts +310 -0
  762. package/v3/@claude-flow/shared/dist/core/interfaces/coordinator.interface.js +7 -0
  763. package/v3/@claude-flow/shared/dist/core/interfaces/event.interface.d.ts +224 -0
  764. package/v3/@claude-flow/shared/dist/core/interfaces/event.interface.js +46 -0
  765. package/v3/@claude-flow/shared/dist/core/interfaces/index.d.ts +10 -0
  766. package/v3/@claude-flow/shared/dist/core/interfaces/index.js +15 -0
  767. package/v3/@claude-flow/shared/dist/core/interfaces/memory.interface.d.ts +298 -0
  768. package/v3/@claude-flow/shared/dist/core/interfaces/memory.interface.js +7 -0
  769. package/v3/@claude-flow/shared/dist/core/interfaces/task.interface.d.ts +185 -0
  770. package/v3/@claude-flow/shared/dist/core/interfaces/task.interface.js +6 -0
  771. package/v3/@claude-flow/shared/dist/core/orchestrator/event-coordinator.d.ts +35 -0
  772. package/v3/@claude-flow/shared/dist/core/orchestrator/event-coordinator.js +101 -0
  773. package/v3/@claude-flow/shared/dist/core/orchestrator/health-monitor.d.ts +60 -0
  774. package/v3/@claude-flow/shared/dist/core/orchestrator/health-monitor.js +166 -0
  775. package/v3/@claude-flow/shared/dist/core/orchestrator/index.d.ts +46 -0
  776. package/v3/@claude-flow/shared/dist/core/orchestrator/index.js +64 -0
  777. package/v3/@claude-flow/shared/dist/core/orchestrator/lifecycle-manager.d.ts +56 -0
  778. package/v3/@claude-flow/shared/dist/core/orchestrator/lifecycle-manager.js +195 -0
  779. package/v3/@claude-flow/shared/dist/core/orchestrator/session-manager.d.ts +83 -0
  780. package/v3/@claude-flow/shared/dist/core/orchestrator/session-manager.js +193 -0
  781. package/v3/@claude-flow/shared/dist/core/orchestrator/task-manager.d.ts +49 -0
  782. package/v3/@claude-flow/shared/dist/core/orchestrator/task-manager.js +253 -0
  783. package/v3/@claude-flow/shared/dist/events/domain-events.d.ts +282 -0
  784. package/v3/@claude-flow/shared/dist/events/domain-events.js +165 -0
  785. package/v3/@claude-flow/shared/dist/events/event-store.d.ts +126 -0
  786. package/v3/@claude-flow/shared/dist/events/event-store.js +416 -0
  787. package/v3/@claude-flow/shared/dist/events/event-store.test.d.ts +8 -0
  788. package/v3/@claude-flow/shared/dist/events/event-store.test.js +293 -0
  789. package/v3/@claude-flow/shared/dist/events/example-usage.d.ts +10 -0
  790. package/v3/@claude-flow/shared/dist/events/example-usage.js +193 -0
  791. package/v3/@claude-flow/shared/dist/events/index.d.ts +21 -0
  792. package/v3/@claude-flow/shared/dist/events/index.js +22 -0
  793. package/v3/@claude-flow/shared/dist/events/projections.d.ts +177 -0
  794. package/v3/@claude-flow/shared/dist/events/projections.js +421 -0
  795. package/v3/@claude-flow/shared/dist/events/rvf-event-log.d.ts +82 -0
  796. package/v3/@claude-flow/shared/dist/events/rvf-event-log.js +340 -0
  797. package/v3/@claude-flow/shared/dist/events/state-reconstructor.d.ts +101 -0
  798. package/v3/@claude-flow/shared/dist/events/state-reconstructor.js +263 -0
  799. package/v3/@claude-flow/shared/dist/events.d.ts +80 -0
  800. package/v3/@claude-flow/shared/dist/events.js +249 -0
  801. package/v3/@claude-flow/shared/dist/hooks/example-usage.d.ts +42 -0
  802. package/v3/@claude-flow/shared/dist/hooks/example-usage.js +351 -0
  803. package/v3/@claude-flow/shared/dist/hooks/executor.d.ts +100 -0
  804. package/v3/@claude-flow/shared/dist/hooks/executor.js +264 -0
  805. package/v3/@claude-flow/shared/dist/hooks/hooks.test.d.ts +9 -0
  806. package/v3/@claude-flow/shared/dist/hooks/hooks.test.js +322 -0
  807. package/v3/@claude-flow/shared/dist/hooks/index.d.ts +52 -0
  808. package/v3/@claude-flow/shared/dist/hooks/index.js +51 -0
  809. package/v3/@claude-flow/shared/dist/hooks/registry.d.ts +133 -0
  810. package/v3/@claude-flow/shared/dist/hooks/registry.js +277 -0
  811. package/v3/@claude-flow/shared/dist/hooks/safety/bash-safety.d.ts +105 -0
  812. package/v3/@claude-flow/shared/dist/hooks/safety/bash-safety.js +481 -0
  813. package/v3/@claude-flow/shared/dist/hooks/safety/file-organization.d.ts +144 -0
  814. package/v3/@claude-flow/shared/dist/hooks/safety/file-organization.js +328 -0
  815. package/v3/@claude-flow/shared/dist/hooks/safety/git-commit.d.ts +158 -0
  816. package/v3/@claude-flow/shared/dist/hooks/safety/git-commit.js +450 -0
  817. package/v3/@claude-flow/shared/dist/hooks/safety/index.d.ts +17 -0
  818. package/v3/@claude-flow/shared/dist/hooks/safety/index.js +17 -0
  819. package/v3/@claude-flow/shared/dist/hooks/session-hooks.d.ts +234 -0
  820. package/v3/@claude-flow/shared/dist/hooks/session-hooks.js +334 -0
  821. package/v3/@claude-flow/shared/dist/hooks/task-hooks.d.ts +163 -0
  822. package/v3/@claude-flow/shared/dist/hooks/task-hooks.js +326 -0
  823. package/v3/@claude-flow/shared/dist/hooks/types.d.ts +267 -0
  824. package/v3/@claude-flow/shared/dist/hooks/types.js +62 -0
  825. package/v3/@claude-flow/shared/dist/hooks/verify-exports.test.d.ts +9 -0
  826. package/v3/@claude-flow/shared/dist/hooks/verify-exports.test.js +93 -0
  827. package/v3/@claude-flow/shared/dist/index.d.ts +20 -0
  828. package/v3/@claude-flow/shared/dist/index.js +50 -0
  829. package/v3/@claude-flow/shared/dist/mcp/connection-pool.d.ts +98 -0
  830. package/v3/@claude-flow/shared/dist/mcp/connection-pool.js +364 -0
  831. package/v3/@claude-flow/shared/dist/mcp/index.d.ts +69 -0
  832. package/v3/@claude-flow/shared/dist/mcp/index.js +84 -0
  833. package/v3/@claude-flow/shared/dist/mcp/server.d.ts +166 -0
  834. package/v3/@claude-flow/shared/dist/mcp/server.js +593 -0
  835. package/v3/@claude-flow/shared/dist/mcp/session-manager.d.ts +136 -0
  836. package/v3/@claude-flow/shared/dist/mcp/session-manager.js +335 -0
  837. package/v3/@claude-flow/shared/dist/mcp/tool-registry.d.ts +178 -0
  838. package/v3/@claude-flow/shared/dist/mcp/tool-registry.js +439 -0
  839. package/v3/@claude-flow/shared/dist/mcp/transport/http.d.ts +104 -0
  840. package/v3/@claude-flow/shared/dist/mcp/transport/http.js +476 -0
  841. package/v3/@claude-flow/shared/dist/mcp/transport/index.d.ts +102 -0
  842. package/v3/@claude-flow/shared/dist/mcp/transport/index.js +238 -0
  843. package/v3/@claude-flow/shared/dist/mcp/transport/stdio.d.ts +104 -0
  844. package/v3/@claude-flow/shared/dist/mcp/transport/stdio.js +263 -0
  845. package/v3/@claude-flow/shared/dist/mcp/transport/websocket.d.ts +133 -0
  846. package/v3/@claude-flow/shared/dist/mcp/transport/websocket.js +396 -0
  847. package/v3/@claude-flow/shared/dist/mcp/types.d.ts +438 -0
  848. package/v3/@claude-flow/shared/dist/mcp/types.js +54 -0
  849. package/v3/@claude-flow/shared/dist/plugin-interface.d.ts +544 -0
  850. package/v3/@claude-flow/shared/dist/plugin-interface.js +23 -0
  851. package/v3/@claude-flow/shared/dist/plugin-loader.d.ts +139 -0
  852. package/v3/@claude-flow/shared/dist/plugin-loader.js +434 -0
  853. package/v3/@claude-flow/shared/dist/plugin-registry.d.ts +183 -0
  854. package/v3/@claude-flow/shared/dist/plugin-registry.js +457 -0
  855. package/v3/@claude-flow/shared/dist/plugins/index.d.ts +10 -0
  856. package/v3/@claude-flow/shared/dist/plugins/index.js +10 -0
  857. package/v3/@claude-flow/shared/dist/plugins/official/hive-mind-plugin.d.ts +106 -0
  858. package/v3/@claude-flow/shared/dist/plugins/official/hive-mind-plugin.js +241 -0
  859. package/v3/@claude-flow/shared/dist/plugins/official/index.d.ts +10 -0
  860. package/v3/@claude-flow/shared/dist/plugins/official/index.js +10 -0
  861. package/v3/@claude-flow/shared/dist/plugins/official/maestro-plugin.d.ts +121 -0
  862. package/v3/@claude-flow/shared/dist/plugins/official/maestro-plugin.js +355 -0
  863. package/v3/@claude-flow/shared/dist/plugins/types.d.ts +93 -0
  864. package/v3/@claude-flow/shared/dist/plugins/types.js +9 -0
  865. package/v3/@claude-flow/shared/dist/resilience/bulkhead.d.ts +105 -0
  866. package/v3/@claude-flow/shared/dist/resilience/bulkhead.js +206 -0
  867. package/v3/@claude-flow/shared/dist/resilience/circuit-breaker.d.ts +132 -0
  868. package/v3/@claude-flow/shared/dist/resilience/circuit-breaker.js +233 -0
  869. package/v3/@claude-flow/shared/dist/resilience/index.d.ts +19 -0
  870. package/v3/@claude-flow/shared/dist/resilience/index.js +19 -0
  871. package/v3/@claude-flow/shared/dist/resilience/rate-limiter.d.ts +168 -0
  872. package/v3/@claude-flow/shared/dist/resilience/rate-limiter.js +314 -0
  873. package/v3/@claude-flow/shared/dist/resilience/retry.d.ts +91 -0
  874. package/v3/@claude-flow/shared/dist/resilience/retry.js +159 -0
  875. package/v3/@claude-flow/shared/dist/security/index.d.ts +10 -0
  876. package/v3/@claude-flow/shared/dist/security/index.js +12 -0
  877. package/v3/@claude-flow/shared/dist/security/input-validation.d.ts +73 -0
  878. package/v3/@claude-flow/shared/dist/security/input-validation.js +201 -0
  879. package/v3/@claude-flow/shared/dist/security/secure-random.d.ts +92 -0
  880. package/v3/@claude-flow/shared/dist/security/secure-random.js +142 -0
  881. package/v3/@claude-flow/shared/dist/services/index.d.ts +7 -0
  882. package/v3/@claude-flow/shared/dist/services/index.js +7 -0
  883. package/v3/@claude-flow/shared/dist/services/v3-progress.service.d.ts +124 -0
  884. package/v3/@claude-flow/shared/dist/services/v3-progress.service.js +402 -0
  885. package/v3/@claude-flow/shared/dist/types/agent.types.d.ts +137 -0
  886. package/v3/@claude-flow/shared/dist/types/agent.types.js +6 -0
  887. package/v3/@claude-flow/shared/dist/types/index.d.ts +11 -0
  888. package/v3/@claude-flow/shared/dist/types/index.js +17 -0
  889. package/v3/@claude-flow/shared/dist/types/mcp.types.d.ts +266 -0
  890. package/v3/@claude-flow/shared/dist/types/mcp.types.js +7 -0
  891. package/v3/@claude-flow/shared/dist/types/memory.types.d.ts +236 -0
  892. package/v3/@claude-flow/shared/dist/types/memory.types.js +7 -0
  893. package/v3/@claude-flow/shared/dist/types/swarm.types.d.ts +186 -0
  894. package/v3/@claude-flow/shared/dist/types/swarm.types.js +65 -0
  895. package/v3/@claude-flow/shared/dist/types/task.types.d.ts +178 -0
  896. package/v3/@claude-flow/shared/dist/types/task.types.js +32 -0
  897. package/v3/@claude-flow/shared/dist/types.d.ts +197 -0
  898. package/v3/@claude-flow/shared/dist/types.js +21 -0
  899. package/v3/@claude-flow/shared/dist/utils/secure-logger.d.ts +69 -0
  900. package/v3/@claude-flow/shared/dist/utils/secure-logger.js +208 -0
  901. package/v3/@claude-flow/shared/package.json +42 -0
  902. package/v3/README.md +493 -0
@@ -0,0 +1,17 @@
1
+ /**
2
+ * MoFlo Orc Command
3
+ * Feature orchestrator that sequences GitHub issues through /mf workflows.
4
+ *
5
+ * Loads a feature YAML definition, resolves story dependencies via topological
6
+ * sort, then executes each story sequentially by spawning `claude -p "/mf ..."`.
7
+ *
8
+ * Usage:
9
+ * moflo orc run <feature.yaml> Execute a feature
10
+ * moflo orc run <feature.yaml> --dry-run Show execution plan
11
+ * moflo orc status <feature-id> Check progress
12
+ * moflo orc reset <feature-id> Reset for re-run
13
+ */
14
+ import type { Command } from '../types.js';
15
+ declare const orcCommand: Command;
16
+ export default orcCommand;
17
+ //# sourceMappingURL=orc.d.ts.map
@@ -0,0 +1,629 @@
1
+ /**
2
+ * MoFlo Orc Command
3
+ * Feature orchestrator that sequences GitHub issues through /mf workflows.
4
+ *
5
+ * Loads a feature YAML definition, resolves story dependencies via topological
6
+ * sort, then executes each story sequentially by spawning `claude -p "/mf ..."`.
7
+ *
8
+ * Usage:
9
+ * moflo orc run <feature.yaml> Execute a feature
10
+ * moflo orc run <feature.yaml> --dry-run Show execution plan
11
+ * moflo orc status <feature-id> Check progress
12
+ * moflo orc reset <feature-id> Reset for re-run
13
+ */
14
+ import { spawn, execSync } from 'child_process';
15
+ import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
16
+ import { join, resolve, dirname } from 'path';
17
+ // ═══════════════════════════════════════════════════════════════════════════════
18
+ // Constants
19
+ // ═══════════════════════════════════════════════════════════════════════════════
20
+ const STORY_TIMEOUT_MS = 30 * 60 * 1000; // 30 minutes
21
+ // ═══════════════════════════════════════════════════════════════════════════════
22
+ // YAML Parsing (js-yaml optional — fallback to simple parser)
23
+ // ═══════════════════════════════════════════════════════════════════════════════
24
+ async function parseYaml(content) {
25
+ try {
26
+ const yaml = await import('js-yaml');
27
+ return yaml.load(content);
28
+ }
29
+ catch {
30
+ // Fallback: try JSON (YAML is a superset of JSON)
31
+ try {
32
+ return JSON.parse(content);
33
+ }
34
+ catch {
35
+ throw new Error('Failed to parse feature file. Install js-yaml (`npm i js-yaml`) or use JSON format.');
36
+ }
37
+ }
38
+ }
39
+ // ═══════════════════════════════════════════════════════════════════════════════
40
+ // Validation (inline zod-like validation, no external dependency required)
41
+ // ═══════════════════════════════════════════════════════════════════════════════
42
+ function validateFeatureDefinition(raw) {
43
+ if (!raw || typeof raw !== 'object') {
44
+ throw new Error('Feature definition must be an object');
45
+ }
46
+ const obj = raw;
47
+ if (!obj.feature || typeof obj.feature !== 'object') {
48
+ throw new Error('Feature definition must have a "feature" key');
49
+ }
50
+ const f = obj.feature;
51
+ const errors = [];
52
+ // Required string fields
53
+ for (const field of ['id', 'name', 'description', 'repository', 'base_branch']) {
54
+ if (!f[field] || typeof f[field] !== 'string') {
55
+ errors.push(`feature.${field} is required and must be a string`);
56
+ }
57
+ }
58
+ // Repository must exist and be a git repo
59
+ if (typeof f.repository === 'string') {
60
+ if (!existsSync(f.repository)) {
61
+ errors.push(`Repository path does not exist: "${f.repository}"`);
62
+ }
63
+ else if (!existsSync(join(f.repository, '.git'))) {
64
+ errors.push(`Repository path is not a git repo: "${f.repository}"`);
65
+ }
66
+ }
67
+ // Stories
68
+ if (!Array.isArray(f.stories) || f.stories.length === 0) {
69
+ errors.push('feature.stories must be a non-empty array');
70
+ }
71
+ else {
72
+ const storyIds = new Set();
73
+ const issueNumbers = new Set();
74
+ for (let i = 0; i < f.stories.length; i++) {
75
+ const s = f.stories[i];
76
+ if (!s.id || typeof s.id !== 'string')
77
+ errors.push(`stories[${i}].id is required`);
78
+ if (!s.name || typeof s.name !== 'string')
79
+ errors.push(`stories[${i}].name is required`);
80
+ if (typeof s.issue !== 'number' || s.issue <= 0)
81
+ errors.push(`stories[${i}].issue must be a positive number`);
82
+ if (typeof s.id === 'string') {
83
+ if (storyIds.has(s.id))
84
+ errors.push(`Duplicate story ID: "${s.id}"`);
85
+ storyIds.add(s.id);
86
+ }
87
+ if (typeof s.issue === 'number') {
88
+ if (issueNumbers.has(s.issue))
89
+ errors.push(`Duplicate issue number: ${s.issue}`);
90
+ issueNumbers.add(s.issue);
91
+ }
92
+ // Validate depends_on references
93
+ if (Array.isArray(s.depends_on)) {
94
+ for (const dep of s.depends_on) {
95
+ if (typeof dep !== 'string')
96
+ errors.push(`stories[${i}].depends_on must contain strings`);
97
+ }
98
+ }
99
+ }
100
+ // Validate depends_on references exist (second pass)
101
+ for (const s of f.stories) {
102
+ if (s.depends_on) {
103
+ for (const dep of s.depends_on) {
104
+ if (!storyIds.has(dep)) {
105
+ errors.push(`Story "${s.id}" depends on "${dep}" which does not exist`);
106
+ }
107
+ }
108
+ }
109
+ }
110
+ }
111
+ // Review
112
+ if (!f.review || typeof f.review !== 'object') {
113
+ errors.push('feature.review is required');
114
+ }
115
+ else {
116
+ const r = f.review;
117
+ if (typeof r.enabled !== 'boolean')
118
+ errors.push('review.enabled must be a boolean');
119
+ if (!Array.isArray(r.focus_areas))
120
+ errors.push('review.focus_areas must be an array');
121
+ if (!r.output || typeof r.output !== 'string')
122
+ errors.push('review.output is required');
123
+ if (typeof r.fail_on_critical !== 'boolean')
124
+ errors.push('review.fail_on_critical must be a boolean');
125
+ }
126
+ if (errors.length > 0) {
127
+ throw new Error(`Invalid feature definition:\n${errors.map((e) => ` - ${e}`).join('\n')}`);
128
+ }
129
+ // Check for circular dependencies
130
+ resolveExecutionOrder(f.stories);
131
+ return raw;
132
+ }
133
+ // ═══════════════════════════════════════════════════════════════════════════════
134
+ // Topological Sort (Kahn's Algorithm)
135
+ // ═══════════════════════════════════════════════════════════════════════════════
136
+ function resolveExecutionOrder(stories) {
137
+ const ids = stories.map((s) => s.id);
138
+ const inDegree = new Map();
139
+ const adjacency = new Map();
140
+ for (const id of ids) {
141
+ inDegree.set(id, 0);
142
+ adjacency.set(id, []);
143
+ }
144
+ for (const story of stories) {
145
+ if (story.depends_on) {
146
+ for (const dep of story.depends_on) {
147
+ adjacency.get(dep)?.push(story.id);
148
+ inDegree.set(story.id, (inDegree.get(story.id) || 0) + 1);
149
+ }
150
+ }
151
+ }
152
+ const queue = [];
153
+ for (const [id, degree] of inDegree.entries()) {
154
+ if (degree === 0)
155
+ queue.push(id);
156
+ }
157
+ const order = [];
158
+ const groups = [];
159
+ while (queue.length > 0) {
160
+ const currentLevel = [...queue];
161
+ groups.push(currentLevel);
162
+ queue.length = 0;
163
+ for (const id of currentLevel) {
164
+ order.push(id);
165
+ for (const neighbor of adjacency.get(id) || []) {
166
+ const newDegree = (inDegree.get(neighbor) || 1) - 1;
167
+ inDegree.set(neighbor, newDegree);
168
+ if (newDegree === 0)
169
+ queue.push(neighbor);
170
+ }
171
+ }
172
+ }
173
+ if (order.length !== ids.length) {
174
+ const remaining = ids.filter((id) => !order.includes(id));
175
+ throw new Error(`Circular dependency detected involving: ${remaining.join(', ')}`);
176
+ }
177
+ return { order, independent_groups: groups };
178
+ }
179
+ // ═══════════════════════════════════════════════════════════════════════════════
180
+ // State Management (JSON file)
181
+ // ═══════════════════════════════════════════════════════════════════════════════
182
+ function getStatePath(repoPath) {
183
+ return join(repoPath, '.claude-orc', 'state.json');
184
+ }
185
+ function loadState(repoPath) {
186
+ const statePath = getStatePath(repoPath);
187
+ if (existsSync(statePath)) {
188
+ return JSON.parse(readFileSync(statePath, 'utf-8'));
189
+ }
190
+ return { features: {} };
191
+ }
192
+ function saveState(repoPath, state) {
193
+ const statePath = getStatePath(repoPath);
194
+ const dir = dirname(statePath);
195
+ if (!existsSync(dir)) {
196
+ mkdirSync(dir, { recursive: true });
197
+ }
198
+ writeFileSync(statePath, JSON.stringify(state, null, 2));
199
+ }
200
+ // ═══════════════════════════════════════════════════════════════════════════════
201
+ // Feature Loading
202
+ // ═══════════════════════════════════════════════════════════════════════════════
203
+ async function loadFeatureDefinition(yamlPath) {
204
+ const absPath = resolve(yamlPath);
205
+ if (!existsSync(absPath)) {
206
+ throw new Error(`Feature file not found: ${absPath}`);
207
+ }
208
+ const content = readFileSync(absPath, 'utf-8');
209
+ const raw = await parseYaml(content);
210
+ return validateFeatureDefinition(raw);
211
+ }
212
+ // ═══════════════════════════════════════════════════════════════════════════════
213
+ // GitHub Helpers
214
+ // ═══════════════════════════════════════════════════════════════════════════════
215
+ function findPrForIssue(issue, repoPath) {
216
+ try {
217
+ const output = execSync(`gh pr list --state all --search "Closes #${issue}" --json number,url --limit 1`, { cwd: repoPath, stdio: ['pipe', 'pipe', 'pipe'] }).toString().trim();
218
+ const prs = JSON.parse(output);
219
+ if (prs.length > 0) {
220
+ return { number: prs[0].number, url: prs[0].url };
221
+ }
222
+ // Fallback: search by issue number in title
223
+ const output2 = execSync(`gh pr list --state all --search "#${issue}" --json number,url --limit 1`, { cwd: repoPath, stdio: ['pipe', 'pipe', 'pipe'] }).toString().trim();
224
+ const prs2 = JSON.parse(output2);
225
+ if (prs2.length > 0) {
226
+ return { number: prs2[0].number, url: prs2[0].url };
227
+ }
228
+ return null;
229
+ }
230
+ catch {
231
+ return null;
232
+ }
233
+ }
234
+ // ═══════════════════════════════════════════════════════════════════════════════
235
+ // Story Runner
236
+ // ═══════════════════════════════════════════════════════════════════════════════
237
+ function runClaudeSession(command, cwd, timeoutMs, onOutput) {
238
+ return new Promise((resolve, reject) => {
239
+ const startTime = Date.now();
240
+ const args = ['-p', command, '--model', 'opus', '--verbose'];
241
+ const child = spawn('claude', args, {
242
+ cwd,
243
+ stdio: ['pipe', 'pipe', 'pipe'],
244
+ env: { ...process.env },
245
+ shell: true,
246
+ });
247
+ let stdout = '';
248
+ let stderr = '';
249
+ let timedOut = false;
250
+ const timer = setTimeout(() => {
251
+ timedOut = true;
252
+ child.kill('SIGTERM');
253
+ }, timeoutMs);
254
+ child.stdout.on('data', (data) => {
255
+ const chunk = data.toString();
256
+ stdout += chunk;
257
+ onOutput?.(chunk);
258
+ });
259
+ child.stderr.on('data', (data) => {
260
+ stderr += data.toString();
261
+ });
262
+ child.on('close', (code) => {
263
+ clearTimeout(timer);
264
+ const durationMs = Date.now() - startTime;
265
+ if (timedOut) {
266
+ resolve({ success: false, output: stdout, durationMs, error: `Timed out after ${timeoutMs}ms` });
267
+ return;
268
+ }
269
+ if (code !== 0) {
270
+ resolve({ success: false, output: stdout, durationMs, error: `Claude exited with code ${code}: ${stderr.substring(0, 500)}` });
271
+ return;
272
+ }
273
+ resolve({ success: true, output: stdout, durationMs, error: null });
274
+ });
275
+ child.on('error', (error) => {
276
+ clearTimeout(timer);
277
+ reject(new Error(`Failed to spawn Claude: ${error.message}`));
278
+ });
279
+ });
280
+ }
281
+ // ═══════════════════════════════════════════════════════════════════════════════
282
+ // Formatting Helpers
283
+ // ═══════════════════════════════════════════════════════════════════════════════
284
+ function formatDuration(ms) {
285
+ const seconds = Math.floor(ms / 1000);
286
+ const minutes = Math.floor(seconds / 60);
287
+ const remaining = seconds % 60;
288
+ return minutes > 0 ? `${minutes}m ${remaining}s` : `${remaining}s`;
289
+ }
290
+ function pad(str, len) {
291
+ return str.length >= len ? str.substring(0, len) : str + ' '.repeat(len - str.length);
292
+ }
293
+ // ═══════════════════════════════════════════════════════════════════════════════
294
+ // Subcommand: run
295
+ // ═══════════════════════════════════════════════════════════════════════════════
296
+ async function runFeature(yamlPath, dryRun, verbose) {
297
+ const featureDef = await loadFeatureDefinition(yamlPath);
298
+ const feature = featureDef.feature;
299
+ const autoMerge = feature.auto_merge !== false;
300
+ const plan = resolveExecutionOrder(feature.stories);
301
+ // ── Dry run ───────────────────────────────────────────────────────────
302
+ if (dryRun) {
303
+ console.log('');
304
+ console.log('+-------------------------------------------------------------+');
305
+ console.log(`| DRY RUN: ${pad(feature.name, 50)}|`);
306
+ console.log(`| Base: ${pad(feature.base_branch, 53)}|`);
307
+ console.log(`| Auto-merge: ${pad(autoMerge ? 'yes' : 'no', 47)}|`);
308
+ console.log('+-------------------------------------------------------------+');
309
+ console.log('| Stories (via /mf): |');
310
+ for (let i = 0; i < plan.order.length; i++) {
311
+ const story = feature.stories.find((s) => s.id === plan.order[i]);
312
+ const deps = story.depends_on?.length ? ` -> after ${story.depends_on.join(', ')}` : '';
313
+ const flags = story.cl_flags || '-sw';
314
+ const line = `${i + 1}. /mf ${story.issue} ${flags}${deps}`;
315
+ console.log(`| ${pad(line, 57)}|`);
316
+ console.log(`| ${pad(story.name.substring(0, 55), 55)}|`);
317
+ }
318
+ console.log('+-------------------------------------------------------------+');
319
+ console.log(`| Review: ${pad(feature.review.enabled ? 'enabled' : 'disabled', 51)}|`);
320
+ console.log('+-------------------------------------------------------------+');
321
+ console.log('');
322
+ return { success: true };
323
+ }
324
+ // ── Initialize state ──────────────────────────────────────────────────
325
+ const state = loadState(feature.repository);
326
+ if (!state.features[feature.id]) {
327
+ state.features[feature.id] = {
328
+ id: feature.id,
329
+ name: feature.name,
330
+ status: 'pending',
331
+ started_at: null,
332
+ completed_at: null,
333
+ stories: {},
334
+ };
335
+ for (const storyId of plan.order) {
336
+ const storyDef = feature.stories.find((s) => s.id === storyId);
337
+ state.features[feature.id].stories[storyId] = {
338
+ id: storyId,
339
+ name: storyDef.name,
340
+ status: 'pending',
341
+ started_at: null,
342
+ completed_at: null,
343
+ duration_ms: 0,
344
+ pr_url: null,
345
+ pr_number: null,
346
+ merged: false,
347
+ error: null,
348
+ };
349
+ }
350
+ }
351
+ state.features[feature.id].status = 'running';
352
+ state.features[feature.id].started_at = new Date().toISOString();
353
+ saveState(feature.repository, state);
354
+ // ── Execute stories ───────────────────────────────────────────────────
355
+ const results = [];
356
+ let failed = false;
357
+ for (const storyId of plan.order) {
358
+ const storyDef = feature.stories.find((s) => s.id === storyId);
359
+ const storyState = state.features[feature.id].stories[storyId];
360
+ // Skip already-passed stories (resume support)
361
+ if (storyState && storyState.status === 'passed') {
362
+ console.log(`[skip] ${storyId} (#${storyDef.issue}) -- already passed`);
363
+ results.push({
364
+ story_id: storyId,
365
+ issue: storyDef.issue,
366
+ status: 'passed',
367
+ started_at: storyState.started_at || '',
368
+ completed_at: storyState.completed_at || '',
369
+ duration_ms: storyState.duration_ms,
370
+ pr_url: storyState.pr_url,
371
+ pr_number: storyState.pr_number,
372
+ merged: storyState.merged,
373
+ error: null,
374
+ });
375
+ continue;
376
+ }
377
+ // Check dependencies
378
+ if (storyDef.depends_on?.length) {
379
+ const unmet = storyDef.depends_on.filter((dep) => !results.some((r) => r.story_id === dep && r.status === 'passed'));
380
+ if (unmet.length > 0) {
381
+ console.log(`[skip] ${storyId} -- unmet dependencies: ${unmet.join(', ')}`);
382
+ state.features[feature.id].stories[storyId].status = 'skipped';
383
+ state.features[feature.id].stories[storyId].error = `Unmet deps: ${unmet.join(', ')}`;
384
+ saveState(feature.repository, state);
385
+ continue;
386
+ }
387
+ }
388
+ // ── Run the story ─────────────────────────────────────────────────
389
+ const startedAt = new Date().toISOString();
390
+ const flags = storyDef.cl_flags || '-sw';
391
+ console.log('');
392
+ console.log(`=== Starting story: ${storyId} (#${storyDef.issue}) ===`);
393
+ console.log(` ${storyDef.name}`);
394
+ console.log(` Command: /mf ${storyDef.issue} ${flags}`);
395
+ console.log('');
396
+ // Update state to running
397
+ state.features[feature.id].stories[storyId].status = 'running';
398
+ state.features[feature.id].stories[storyId].started_at = startedAt;
399
+ saveState(feature.repository, state);
400
+ // Pull latest main
401
+ try {
402
+ execSync(`git checkout ${feature.base_branch} && git pull origin ${feature.base_branch}`, {
403
+ cwd: feature.repository,
404
+ stdio: 'pipe',
405
+ });
406
+ }
407
+ catch {
408
+ console.log('[warn] Failed to pull base branch -- continuing anyway');
409
+ }
410
+ // Spawn claude
411
+ const command = `/mf ${storyDef.issue} ${flags}`.trim();
412
+ const runResult = await runClaudeSession(command, feature.repository, STORY_TIMEOUT_MS, verbose ? (text) => process.stdout.write(text) : undefined);
413
+ if (!runResult.success) {
414
+ console.log(`[FAIL] ${storyId}: ${runResult.error}`);
415
+ state.features[feature.id].stories[storyId].status = 'failed';
416
+ state.features[feature.id].stories[storyId].completed_at = new Date().toISOString();
417
+ state.features[feature.id].stories[storyId].duration_ms = runResult.durationMs;
418
+ state.features[feature.id].stories[storyId].error = runResult.error;
419
+ saveState(feature.repository, state);
420
+ results.push({
421
+ story_id: storyId, issue: storyDef.issue, status: 'failed',
422
+ started_at: startedAt, completed_at: new Date().toISOString(),
423
+ duration_ms: runResult.durationMs, pr_url: null, pr_number: null,
424
+ merged: false, error: runResult.error,
425
+ });
426
+ failed = true;
427
+ break;
428
+ }
429
+ // Find the PR
430
+ const prInfo = findPrForIssue(storyDef.issue, feature.repository);
431
+ if (!prInfo) {
432
+ console.log(`[FAIL] ${storyId}: No PR found after /mf completed`);
433
+ state.features[feature.id].stories[storyId].status = 'failed';
434
+ state.features[feature.id].stories[storyId].completed_at = new Date().toISOString();
435
+ state.features[feature.id].stories[storyId].duration_ms = runResult.durationMs;
436
+ state.features[feature.id].stories[storyId].error = 'No PR created by /mf';
437
+ saveState(feature.repository, state);
438
+ results.push({
439
+ story_id: storyId, issue: storyDef.issue, status: 'failed',
440
+ started_at: startedAt, completed_at: new Date().toISOString(),
441
+ duration_ms: runResult.durationMs, pr_url: null, pr_number: null,
442
+ merged: false, error: 'No PR created by /mf',
443
+ });
444
+ failed = true;
445
+ break;
446
+ }
447
+ console.log(`[ok] PR found: #${prInfo.number} (${prInfo.url})`);
448
+ // Auto-merge
449
+ let merged = false;
450
+ if (autoMerge) {
451
+ try {
452
+ execSync(`gh pr merge ${prInfo.number} --squash --delete-branch`, {
453
+ cwd: feature.repository,
454
+ stdio: 'pipe',
455
+ });
456
+ merged = true;
457
+ console.log(`[ok] PR #${prInfo.number} merged`);
458
+ // Pull merged changes
459
+ execSync(`git checkout ${feature.base_branch} && git pull origin ${feature.base_branch}`, {
460
+ cwd: feature.repository,
461
+ stdio: 'pipe',
462
+ });
463
+ }
464
+ catch (e) {
465
+ console.log(`[warn] Failed to merge PR #${prInfo.number}: ${String(e)}`);
466
+ }
467
+ }
468
+ // Update state
469
+ state.features[feature.id].stories[storyId].status = 'passed';
470
+ state.features[feature.id].stories[storyId].completed_at = new Date().toISOString();
471
+ state.features[feature.id].stories[storyId].duration_ms = runResult.durationMs;
472
+ state.features[feature.id].stories[storyId].pr_url = prInfo.url;
473
+ state.features[feature.id].stories[storyId].pr_number = prInfo.number;
474
+ state.features[feature.id].stories[storyId].merged = merged;
475
+ saveState(feature.repository, state);
476
+ results.push({
477
+ story_id: storyId, issue: storyDef.issue, status: 'passed',
478
+ started_at: startedAt, completed_at: new Date().toISOString(),
479
+ duration_ms: runResult.durationMs, pr_url: prInfo.url, pr_number: prInfo.number,
480
+ merged, error: null,
481
+ });
482
+ console.log(`=== Story completed: ${storyId} (${formatDuration(runResult.durationMs)}) ===`);
483
+ }
484
+ // ── Finalize ──────────────────────────────────────────────────────────
485
+ state.features[feature.id].status = failed ? 'failed' : 'completed';
486
+ state.features[feature.id].completed_at = new Date().toISOString();
487
+ saveState(feature.repository, state);
488
+ // ── Summary ───────────────────────────────────────────────────────────
489
+ printSummary(feature, results, plan.order);
490
+ return { success: !failed };
491
+ }
492
+ // ═══════════════════════════════════════════════════════════════════════════════
493
+ // Subcommand: status
494
+ // ═══════════════════════════════════════════════════════════════════════════════
495
+ function showStatus(featureId) {
496
+ // Search for state file in cwd
497
+ const cwd = process.cwd();
498
+ const state = loadState(cwd);
499
+ const featureState = state.features[featureId];
500
+ if (!featureState) {
501
+ console.log(`No state found for feature "${featureId}"`);
502
+ console.log(`Looked in: ${getStatePath(cwd)}`);
503
+ return { success: false };
504
+ }
505
+ console.log('');
506
+ console.log(`Feature: ${featureState.name} (${featureState.id})`);
507
+ console.log(`Status: ${featureState.status}`);
508
+ console.log(`Started: ${featureState.started_at || '-'}`);
509
+ console.log('');
510
+ console.log(`${pad('Story', 22)} ${pad('Status', 10)} ${pad('Duration', 10)} ${pad('PR', 15)} Error`);
511
+ console.log(`${'-'.repeat(22)} ${'-'.repeat(10)} ${'-'.repeat(10)} ${'-'.repeat(15)} ${'─'.repeat(20)}`);
512
+ for (const [, story] of Object.entries(featureState.stories)) {
513
+ const duration = story.duration_ms > 0 ? formatDuration(story.duration_ms) : '-';
514
+ const pr = story.pr_number ? `#${story.pr_number}${story.merged ? ' (merged)' : ''}` : '-';
515
+ const error = story.error ? story.error.substring(0, 30) : '';
516
+ console.log(`${pad(story.id, 22)} ${pad(story.status, 10)} ${pad(duration, 10)} ${pad(pr, 15)} ${error}`);
517
+ }
518
+ console.log('');
519
+ return { success: true };
520
+ }
521
+ // ═══════════════════════════════════════════════════════════════════════════════
522
+ // Subcommand: reset
523
+ // ═══════════════════════════════════════════════════════════════════════════════
524
+ function resetFeature(featureId) {
525
+ const cwd = process.cwd();
526
+ const state = loadState(cwd);
527
+ if (!state.features[featureId]) {
528
+ console.log(`No state found for feature "${featureId}"`);
529
+ return { success: false };
530
+ }
531
+ delete state.features[featureId];
532
+ saveState(cwd, state);
533
+ console.log(`Reset state for feature "${featureId}"`);
534
+ return { success: true };
535
+ }
536
+ // ═══════════════════════════════════════════════════════════════════════════════
537
+ // Summary Output
538
+ // ═══════════════════════════════════════════════════════════════════════════════
539
+ function printSummary(feature, results, order) {
540
+ const featureStatus = results.some((r) => r.status === 'failed') ? 'FAILED' : 'COMPLETED';
541
+ let totalDuration = 0;
542
+ console.log('');
543
+ console.log('+---------------------------------------------------------------------+');
544
+ console.log(`| Feature: ${pad(feature.name, 58)}|`);
545
+ console.log(`| Status: ${pad(featureStatus, 59)}|`);
546
+ console.log('+----------------------+--------+----------+----------+---------------+');
547
+ console.log('| Story | Issue | Status | Duration | PR |');
548
+ console.log('+----------------------+--------+----------+----------+---------------+');
549
+ for (const storyId of order) {
550
+ const r = results.find((s) => s.story_id === storyId);
551
+ const story = feature.stories.find((s) => s.id === storyId);
552
+ const status = r?.status || 'pending';
553
+ const icon = status === 'passed' ? '[ok]' : status === 'failed' ? '[!!]' : status === 'skipped' ? '[--]' : '[..]';
554
+ const duration = r ? formatDuration(r.duration_ms) : '-';
555
+ const pr = r?.pr_number ? `#${r.pr_number}${r.merged ? ' ok' : ''}` : '-';
556
+ if (r)
557
+ totalDuration += r.duration_ms;
558
+ console.log(`| ${pad(storyId.substring(0, 20), 20)} | #${pad(String(story.issue), 5)} | ${icon} ${pad(status.substring(0, 6), 4)} | ${pad(duration, 8)} | ${pad(pr, 13)} |`);
559
+ }
560
+ console.log('+----------------------+--------+----------+----------+---------------+');
561
+ console.log(`| Total: ${pad(formatDuration(totalDuration), 61)}|`);
562
+ console.log('+---------------------------------------------------------------------+');
563
+ console.log('');
564
+ }
565
+ // ═══════════════════════════════════════════════════════════════════════════════
566
+ // Command Definition
567
+ // ═══════════════════════════════════════════════════════════════════════════════
568
+ const orcCommand = {
569
+ name: 'orc',
570
+ description: 'Feature orchestrator — sequences GitHub issues through /mf workflows',
571
+ options: [],
572
+ examples: [
573
+ { command: 'moflo orc run feature.yaml', description: 'Execute a feature definition' },
574
+ { command: 'moflo orc run feature.yaml --dry-run', description: 'Show execution plan without running' },
575
+ { command: 'moflo orc run feature.yaml --verbose', description: 'Execute with Claude output streaming' },
576
+ { command: 'moflo orc status my-feature', description: 'Check progress of a feature' },
577
+ { command: 'moflo orc reset my-feature', description: 'Reset feature state for re-run' },
578
+ ],
579
+ action: async (ctx) => {
580
+ const subcommand = ctx.args?.[0];
581
+ if (!subcommand) {
582
+ console.log('Usage: moflo orc <command> [args] [flags]');
583
+ console.log('');
584
+ console.log('Commands:');
585
+ console.log(' run <feature.yaml> Execute a feature definition');
586
+ console.log(' status <feature-id> Check feature progress');
587
+ console.log(' reset <feature-id> Reset feature state for re-run');
588
+ console.log('');
589
+ console.log('Flags:');
590
+ console.log(' --dry-run Show execution plan without running');
591
+ console.log(' --verbose Stream Claude output to terminal');
592
+ return { success: true };
593
+ }
594
+ switch (subcommand) {
595
+ case 'run': {
596
+ const yamlPath = ctx.args[1];
597
+ if (!yamlPath) {
598
+ console.log('Usage: moflo orc run <feature.yaml> [--dry-run] [--verbose]');
599
+ return { success: false, message: 'Missing feature YAML path' };
600
+ }
601
+ const dryRun = ctx.flags['dry-run'] === true || ctx.flags['dryRun'] === true;
602
+ const verbose = ctx.flags['verbose'] === true;
603
+ return runFeature(yamlPath, dryRun, verbose);
604
+ }
605
+ case 'status': {
606
+ const featureId = ctx.args[1];
607
+ if (!featureId) {
608
+ console.log('Usage: moflo orc status <feature-id>');
609
+ return { success: false, message: 'Missing feature ID' };
610
+ }
611
+ return showStatus(featureId);
612
+ }
613
+ case 'reset': {
614
+ const featureId = ctx.args[1];
615
+ if (!featureId) {
616
+ console.log('Usage: moflo orc reset <feature-id>');
617
+ return { success: false, message: 'Missing feature ID' };
618
+ }
619
+ return resetFeature(featureId);
620
+ }
621
+ default:
622
+ console.log(`Unknown subcommand: ${subcommand}`);
623
+ console.log('Available: run, status, reset');
624
+ return { success: false, message: `Unknown subcommand: ${subcommand}` };
625
+ }
626
+ },
627
+ };
628
+ export default orcCommand;
629
+ //# sourceMappingURL=orc.js.map
@@ -0,0 +1,10 @@
1
+ /**
2
+ * V3 CLI Performance Command
3
+ * Performance profiling, benchmarking, optimization, metrics
4
+ *
5
+ * Created with ❤️ by ruv.io
6
+ */
7
+ import type { Command } from '../types.js';
8
+ export declare const performanceCommand: Command;
9
+ export default performanceCommand;
10
+ //# sourceMappingURL=performance.d.ts.map