moflo 4.8.21 → 4.8.22

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 (260) hide show
  1. package/.claude/agents/browser/browser-agent.yaml +182 -182
  2. package/.claude/agents/core/coder.md +265 -265
  3. package/.claude/agents/core/planner.md +167 -167
  4. package/.claude/agents/core/researcher.md +189 -189
  5. package/.claude/agents/core/reviewer.md +325 -325
  6. package/.claude/agents/core/tester.md +318 -318
  7. package/.claude/agents/database-specialist.yaml +21 -21
  8. package/.claude/agents/dual-mode/codex-coordinator.md +224 -224
  9. package/.claude/agents/dual-mode/codex-worker.md +211 -211
  10. package/.claude/agents/dual-mode/dual-orchestrator.md +291 -291
  11. package/.claude/agents/github/code-review-swarm.md +537 -537
  12. package/.claude/agents/github/github-modes.md +172 -172
  13. package/.claude/agents/github/issue-tracker.md +318 -318
  14. package/.claude/agents/github/multi-repo-swarm.md +552 -552
  15. package/.claude/agents/github/pr-manager.md +190 -190
  16. package/.claude/agents/github/project-board-sync.md +508 -508
  17. package/.claude/agents/github/release-manager.md +366 -366
  18. package/.claude/agents/github/release-swarm.md +582 -582
  19. package/.claude/agents/github/repo-architect.md +397 -397
  20. package/.claude/agents/github/swarm-issue.md +572 -572
  21. package/.claude/agents/github/swarm-pr.md +427 -427
  22. package/.claude/agents/github/sync-coordinator.md +451 -451
  23. package/.claude/agents/github/workflow-automation.md +634 -634
  24. package/.claude/agents/goal/code-goal-planner.md +445 -445
  25. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +129 -129
  26. package/.claude/agents/hive-mind/queen-coordinator.md +202 -202
  27. package/.claude/agents/hive-mind/scout-explorer.md +241 -241
  28. package/.claude/agents/hive-mind/swarm-memory-manager.md +192 -192
  29. package/.claude/agents/hive-mind/worker-specialist.md +216 -216
  30. package/.claude/agents/index.yaml +17 -17
  31. package/.claude/agents/neural/safla-neural.md +73 -73
  32. package/.claude/agents/project-coordinator.yaml +15 -15
  33. package/.claude/agents/python-specialist.yaml +21 -21
  34. package/.claude/agents/reasoning/goal-planner.md +72 -72
  35. package/.claude/agents/security-auditor.yaml +20 -20
  36. package/.claude/agents/swarm/adaptive-coordinator.md +395 -395
  37. package/.claude/agents/swarm/hierarchical-coordinator.md +326 -326
  38. package/.claude/agents/swarm/mesh-coordinator.md +391 -391
  39. package/.claude/agents/templates/migration-plan.md +745 -745
  40. package/.claude/agents/typescript-specialist.yaml +21 -21
  41. package/.claude/checkpoints/1767754460.json +8 -8
  42. package/.claude/commands/agents/agent-spawning.md +28 -28
  43. package/.claude/commands/github/github-modes.md +146 -146
  44. package/.claude/commands/github/github-swarm.md +121 -121
  45. package/.claude/commands/github/issue-tracker.md +291 -291
  46. package/.claude/commands/github/pr-manager.md +169 -169
  47. package/.claude/commands/github/release-manager.md +337 -337
  48. package/.claude/commands/github/repo-architect.md +366 -366
  49. package/.claude/commands/github/sync-coordinator.md +300 -300
  50. package/.claude/commands/memory/neural.md +47 -47
  51. package/.claude/commands/sparc/analyzer.md +51 -51
  52. package/.claude/commands/sparc/architect.md +53 -53
  53. package/.claude/commands/sparc/ask.md +97 -97
  54. package/.claude/commands/sparc/batch-executor.md +54 -54
  55. package/.claude/commands/sparc/code.md +89 -89
  56. package/.claude/commands/sparc/coder.md +54 -54
  57. package/.claude/commands/sparc/debug.md +83 -83
  58. package/.claude/commands/sparc/debugger.md +54 -54
  59. package/.claude/commands/sparc/designer.md +53 -53
  60. package/.claude/commands/sparc/devops.md +109 -109
  61. package/.claude/commands/sparc/docs-writer.md +80 -80
  62. package/.claude/commands/sparc/documenter.md +54 -54
  63. package/.claude/commands/sparc/innovator.md +54 -54
  64. package/.claude/commands/sparc/integration.md +83 -83
  65. package/.claude/commands/sparc/mcp.md +117 -117
  66. package/.claude/commands/sparc/memory-manager.md +54 -54
  67. package/.claude/commands/sparc/optimizer.md +54 -54
  68. package/.claude/commands/sparc/orchestrator.md +131 -131
  69. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -83
  70. package/.claude/commands/sparc/refinement-optimization-mode.md +83 -83
  71. package/.claude/commands/sparc/researcher.md +54 -54
  72. package/.claude/commands/sparc/reviewer.md +54 -54
  73. package/.claude/commands/sparc/security-review.md +80 -80
  74. package/.claude/commands/sparc/sparc-modes.md +174 -174
  75. package/.claude/commands/sparc/sparc.md +111 -111
  76. package/.claude/commands/sparc/spec-pseudocode.md +80 -80
  77. package/.claude/commands/sparc/supabase-admin.md +348 -348
  78. package/.claude/commands/sparc/swarm-coordinator.md +54 -54
  79. package/.claude/commands/sparc/tdd.md +54 -54
  80. package/.claude/commands/sparc/tester.md +54 -54
  81. package/.claude/commands/sparc/tutorial.md +79 -79
  82. package/.claude/commands/sparc/workflow-manager.md +54 -54
  83. package/.claude/commands/sparc.md +166 -166
  84. package/.claude/commands/swarm/analysis.md +95 -95
  85. package/.claude/commands/swarm/development.md +96 -96
  86. package/.claude/commands/swarm/examples.md +168 -168
  87. package/.claude/commands/swarm/maintenance.md +102 -102
  88. package/.claude/commands/swarm/optimization.md +117 -117
  89. package/.claude/commands/swarm/research.md +136 -136
  90. package/.claude/commands/swarm/testing.md +131 -131
  91. package/.claude/commands/workflows/development.md +77 -77
  92. package/.claude/commands/workflows/research.md +62 -62
  93. package/.claude/guidance/moflo-bootstrap.md +126 -126
  94. package/.claude/guidance/shipped/agent-bootstrap.md +126 -126
  95. package/.claude/guidance/shipped/guidance-memory-strategy.md +262 -262
  96. package/.claude/guidance/shipped/memory-strategy.md +204 -204
  97. package/.claude/guidance/shipped/moflo.md +668 -653
  98. package/.claude/guidance/shipped/task-swarm-integration.md +441 -441
  99. package/.claude/helpers/intelligence.cjs +207 -207
  100. package/.claude/helpers/statusline.cjs +851 -851
  101. package/.claude/settings.local.json +18 -0
  102. package/.claude/skills/fl/SKILL.md +583 -583
  103. package/.claude/skills/flo/SKILL.md +583 -583
  104. package/.claude/skills/github-code-review/SKILL.md +1140 -1140
  105. package/.claude/skills/github-multi-repo/SKILL.md +874 -874
  106. package/.claude/skills/github-project-management/SKILL.md +1277 -1277
  107. package/.claude/skills/github-release-management/SKILL.md +1081 -1081
  108. package/.claude/skills/github-workflow-automation/SKILL.md +1065 -1065
  109. package/.claude/skills/hive-mind-advanced/SKILL.md +712 -712
  110. package/.claude/skills/hooks-automation/SKILL.md +1201 -1201
  111. package/.claude/skills/performance-analysis/SKILL.md +563 -563
  112. package/.claude/skills/sparc-methodology/SKILL.md +1115 -1115
  113. package/.claude/skills/swarm-advanced/SKILL.md +973 -973
  114. package/.claude/workflow-state.json +4 -4
  115. package/LICENSE +21 -21
  116. package/README.md +685 -685
  117. package/bin/cli.js +0 -0
  118. package/bin/gate-hook.mjs +50 -50
  119. package/bin/gate.cjs +138 -138
  120. package/bin/generate-code-map.mjs +775 -775
  121. package/bin/hook-handler.cjs +83 -83
  122. package/bin/hooks.mjs +656 -656
  123. package/bin/index-guidance.mjs +892 -892
  124. package/bin/index-tests.mjs +709 -709
  125. package/bin/lib/process-manager.mjs +243 -243
  126. package/bin/lib/registry-cleanup.cjs +41 -41
  127. package/bin/prompt-hook.mjs +72 -72
  128. package/bin/semantic-search.mjs +472 -472
  129. package/bin/session-start-launcher.mjs +238 -238
  130. package/bin/setup-project.mjs +250 -250
  131. package/package.json +123 -123
  132. package/src/@claude-flow/cli/README.md +452 -452
  133. package/src/@claude-flow/cli/bin/cli.js +180 -180
  134. package/src/@claude-flow/cli/bin/preinstall.cjs +2 -2
  135. package/src/@claude-flow/cli/dist/src/commands/completions.js +409 -409
  136. package/src/@claude-flow/cli/dist/src/commands/doctor.js +5 -1
  137. package/src/@claude-flow/cli/dist/src/commands/embeddings.js +25 -25
  138. package/src/@claude-flow/cli/dist/src/commands/github.js +61 -61
  139. package/src/@claude-flow/cli/dist/src/commands/hive-mind.js +90 -90
  140. package/src/@claude-flow/cli/dist/src/commands/hooks.js +9 -9
  141. package/src/@claude-flow/cli/dist/src/commands/ruvector/import.js +14 -14
  142. package/src/@claude-flow/cli/dist/src/commands/ruvector/setup.js +624 -624
  143. package/src/@claude-flow/cli/dist/src/config/moflo-config.d.ts +3 -0
  144. package/src/@claude-flow/cli/dist/src/config/moflo-config.js +101 -91
  145. package/src/@claude-flow/cli/dist/src/index.d.ts +5 -0
  146. package/src/@claude-flow/cli/dist/src/index.js +44 -0
  147. package/src/@claude-flow/cli/dist/src/init/claudemd-generator.d.ts +29 -29
  148. package/src/@claude-flow/cli/dist/src/init/claudemd-generator.js +43 -43
  149. package/src/@claude-flow/cli/dist/src/init/executor.js +453 -453
  150. package/src/@claude-flow/cli/dist/src/init/helpers-generator.js +482 -482
  151. package/src/@claude-flow/cli/dist/src/init/moflo-init.d.ts +30 -30
  152. package/src/@claude-flow/cli/dist/src/init/moflo-init.js +140 -140
  153. package/src/@claude-flow/cli/dist/src/init/statusline-generator.js +876 -876
  154. package/src/@claude-flow/cli/dist/src/memory/memory-initializer.js +371 -371
  155. package/src/@claude-flow/cli/dist/src/runtime/headless.js +28 -28
  156. package/src/@claude-flow/cli/dist/src/services/container-worker-pool.d.ts +197 -0
  157. package/src/@claude-flow/cli/dist/src/services/container-worker-pool.js +584 -0
  158. package/src/@claude-flow/cli/dist/src/services/daemon-lock.d.ts +14 -0
  159. package/src/@claude-flow/cli/dist/src/services/daemon-lock.js +1 -1
  160. package/src/@claude-flow/cli/dist/src/services/headless-worker-executor.js +84 -84
  161. package/src/@claude-flow/cli/package.json +1 -1
  162. package/src/@claude-flow/guidance/README.md +1195 -1195
  163. package/src/@claude-flow/guidance/package.json +198 -198
  164. package/src/@claude-flow/memory/README.md +587 -587
  165. package/src/@claude-flow/memory/dist/agent-memory-scope.test.js +4 -7
  166. package/src/@claude-flow/memory/dist/agentdb-backend.d.ts +2 -0
  167. package/src/@claude-flow/memory/dist/agentdb-backend.js +28 -26
  168. package/src/@claude-flow/memory/dist/auto-memory-bridge.test.js +36 -39
  169. package/src/@claude-flow/memory/dist/benchmark.test.js +1 -1
  170. package/src/@claude-flow/memory/dist/controller-registry.test.js +43 -0
  171. package/src/@claude-flow/memory/dist/database-provider.d.ts +2 -2
  172. package/src/@claude-flow/memory/dist/database-provider.js +6 -3
  173. package/src/@claude-flow/memory/dist/database-provider.test.js +1 -3
  174. package/src/@claude-flow/memory/dist/hybrid-backend.d.ts +245 -0
  175. package/src/@claude-flow/memory/dist/hybrid-backend.js +569 -0
  176. package/src/@claude-flow/memory/dist/hybrid-backend.test.d.ts +8 -0
  177. package/src/@claude-flow/memory/dist/hybrid-backend.test.js +320 -0
  178. package/src/@claude-flow/memory/dist/index.d.ts +3 -0
  179. package/src/@claude-flow/memory/dist/index.js +3 -0
  180. package/src/@claude-flow/memory/dist/sqlite-backend.d.ts +121 -0
  181. package/src/@claude-flow/memory/dist/sqlite-backend.js +572 -0
  182. package/src/@claude-flow/memory/dist/sqljs-backend.d.ts +4 -3
  183. package/src/@claude-flow/memory/dist/sqljs-backend.js +31 -30
  184. package/src/@claude-flow/memory/package.json +44 -44
  185. package/src/@claude-flow/shared/README.md +323 -323
  186. package/src/@claude-flow/shared/dist/core/config/defaults.js +1 -1
  187. package/src/@claude-flow/shared/dist/core/config/loader.js +1 -1
  188. package/src/@claude-flow/shared/dist/core/config/schema.js +1 -1
  189. package/src/@claude-flow/shared/dist/events/event-store.js +34 -50
  190. package/src/@claude-flow/shared/dist/events/event-store.test.js +4 -8
  191. package/src/@claude-flow/shared/dist/hooks/executor.js +4 -7
  192. package/src/@claude-flow/shared/dist/hooks/safety/file-organization.js +1 -1
  193. package/src/@claude-flow/shared/dist/hooks/safety/git-commit.js +3 -3
  194. package/src/@claude-flow/shared/dist/hooks/verify-exports.test.js +6 -6
  195. package/src/@claude-flow/shared/dist/utils/secure-logger.js +1 -1
  196. package/src/README.md +493 -493
  197. package/src/@claude-flow/guidance/dist/adversarial.d.ts +0 -284
  198. package/src/@claude-flow/guidance/dist/adversarial.js +0 -572
  199. package/src/@claude-flow/guidance/dist/analyzer.d.ts +0 -530
  200. package/src/@claude-flow/guidance/dist/analyzer.js +0 -2518
  201. package/src/@claude-flow/guidance/dist/artifacts.d.ts +0 -283
  202. package/src/@claude-flow/guidance/dist/artifacts.js +0 -356
  203. package/src/@claude-flow/guidance/dist/authority.d.ts +0 -290
  204. package/src/@claude-flow/guidance/dist/authority.js +0 -558
  205. package/src/@claude-flow/guidance/dist/capabilities.d.ts +0 -209
  206. package/src/@claude-flow/guidance/dist/capabilities.js +0 -485
  207. package/src/@claude-flow/guidance/dist/coherence.d.ts +0 -233
  208. package/src/@claude-flow/guidance/dist/coherence.js +0 -372
  209. package/src/@claude-flow/guidance/dist/compiler.d.ts +0 -87
  210. package/src/@claude-flow/guidance/dist/compiler.js +0 -419
  211. package/src/@claude-flow/guidance/dist/conformance-kit.d.ts +0 -225
  212. package/src/@claude-flow/guidance/dist/conformance-kit.js +0 -629
  213. package/src/@claude-flow/guidance/dist/continue-gate.d.ts +0 -214
  214. package/src/@claude-flow/guidance/dist/continue-gate.js +0 -353
  215. package/src/@claude-flow/guidance/dist/crypto-utils.d.ts +0 -17
  216. package/src/@claude-flow/guidance/dist/crypto-utils.js +0 -24
  217. package/src/@claude-flow/guidance/dist/evolution.d.ts +0 -282
  218. package/src/@claude-flow/guidance/dist/evolution.js +0 -500
  219. package/src/@claude-flow/guidance/dist/gates.d.ts +0 -79
  220. package/src/@claude-flow/guidance/dist/gates.js +0 -302
  221. package/src/@claude-flow/guidance/dist/gateway.d.ts +0 -206
  222. package/src/@claude-flow/guidance/dist/gateway.js +0 -452
  223. package/src/@claude-flow/guidance/dist/generators.d.ts +0 -153
  224. package/src/@claude-flow/guidance/dist/generators.js +0 -682
  225. package/src/@claude-flow/guidance/dist/headless.d.ts +0 -177
  226. package/src/@claude-flow/guidance/dist/headless.js +0 -342
  227. package/src/@claude-flow/guidance/dist/hooks.d.ts +0 -109
  228. package/src/@claude-flow/guidance/dist/hooks.js +0 -347
  229. package/src/@claude-flow/guidance/dist/index.d.ts +0 -205
  230. package/src/@claude-flow/guidance/dist/index.js +0 -321
  231. package/src/@claude-flow/guidance/dist/ledger.d.ts +0 -162
  232. package/src/@claude-flow/guidance/dist/ledger.js +0 -375
  233. package/src/@claude-flow/guidance/dist/manifest-validator.d.ts +0 -289
  234. package/src/@claude-flow/guidance/dist/manifest-validator.js +0 -838
  235. package/src/@claude-flow/guidance/dist/memory-gate.d.ts +0 -222
  236. package/src/@claude-flow/guidance/dist/memory-gate.js +0 -382
  237. package/src/@claude-flow/guidance/dist/meta-governance.d.ts +0 -265
  238. package/src/@claude-flow/guidance/dist/meta-governance.js +0 -348
  239. package/src/@claude-flow/guidance/dist/optimizer.d.ts +0 -104
  240. package/src/@claude-flow/guidance/dist/optimizer.js +0 -329
  241. package/src/@claude-flow/guidance/dist/persistence.d.ts +0 -189
  242. package/src/@claude-flow/guidance/dist/persistence.js +0 -464
  243. package/src/@claude-flow/guidance/dist/proof.d.ts +0 -185
  244. package/src/@claude-flow/guidance/dist/proof.js +0 -238
  245. package/src/@claude-flow/guidance/dist/retriever.d.ts +0 -116
  246. package/src/@claude-flow/guidance/dist/retriever.js +0 -394
  247. package/src/@claude-flow/guidance/dist/ruvbot-integration.d.ts +0 -370
  248. package/src/@claude-flow/guidance/dist/ruvbot-integration.js +0 -738
  249. package/src/@claude-flow/guidance/dist/temporal.d.ts +0 -426
  250. package/src/@claude-flow/guidance/dist/temporal.js +0 -658
  251. package/src/@claude-flow/guidance/dist/trust.d.ts +0 -283
  252. package/src/@claude-flow/guidance/dist/trust.js +0 -473
  253. package/src/@claude-flow/guidance/dist/truth-anchors.d.ts +0 -276
  254. package/src/@claude-flow/guidance/dist/truth-anchors.js +0 -488
  255. package/src/@claude-flow/guidance/dist/types.d.ts +0 -378
  256. package/src/@claude-flow/guidance/dist/types.js +0 -10
  257. package/src/@claude-flow/guidance/dist/uncertainty.d.ts +0 -372
  258. package/src/@claude-flow/guidance/dist/uncertainty.js +0 -619
  259. package/src/@claude-flow/guidance/dist/wasm-kernel.d.ts +0 -48
  260. package/src/@claude-flow/guidance/dist/wasm-kernel.js +0 -158
@@ -10,7 +10,7 @@ import { join, dirname } from 'path';
10
10
  import { fileURLToPath } from 'url';
11
11
  import { execSync, exec } from 'child_process';
12
12
  import { promisify } from 'util';
13
- import { getDaemonLockHolder, releaseDaemonLock } from '../services/daemon-lock.js';
13
+ import { getDaemonLockHolder, releaseDaemonLock, isDaemonProcess } from '../services/daemon-lock.js';
14
14
  // Promisified exec with proper shell and env inheritance for cross-platform support
15
15
  const execAsync = promisify(exec);
16
16
  /**
@@ -765,6 +765,10 @@ async function findZombieProcesses(kill = false) {
765
765
  continue;
766
766
  if (isProcessAlive(ppid))
767
767
  continue;
768
+ // Defense-in-depth: detached daemons have dead parents by design.
769
+ // Even if the lock file is missing/corrupted, don't kill a running daemon.
770
+ if (isDaemonProcess(pid))
771
+ continue;
768
772
  found.push(pid);
769
773
  }
770
774
  if (kill && found.length > 0) {
@@ -146,13 +146,13 @@ const searchCommand = {
146
146
  const queryResult = await generateEmbedding(query);
147
147
  const queryEmbedding = queryResult.embedding;
148
148
  // Get all entries with embeddings from database
149
- const entries = db.exec(`
150
- SELECT id, key, namespace, content, embedding, embedding_dimensions
151
- FROM memory_entries
152
- WHERE status = 'active'
153
- AND embedding IS NOT NULL
154
- ${namespace !== 'all' ? `AND namespace = '${namespace}'` : ''}
155
- LIMIT 1000
149
+ const entries = db.exec(`
150
+ SELECT id, key, namespace, content, embedding, embedding_dimensions
151
+ FROM memory_entries
152
+ WHERE status = 'active'
153
+ AND embedding IS NOT NULL
154
+ ${namespace !== 'all' ? `AND namespace = '${namespace}'` : ''}
155
+ LIMIT 1000
156
156
  `);
157
157
  const results = [];
158
158
  if (entries[0]?.values) {
@@ -181,13 +181,13 @@ const searchCommand = {
181
181
  }
182
182
  // Also search entries without embeddings using keyword match
183
183
  if (results.length < limit) {
184
- const keywordEntries = db.exec(`
185
- SELECT id, key, namespace, content
186
- FROM memory_entries
187
- WHERE status = 'active'
188
- AND (content LIKE '%${query.replace(/'/g, "''")}%' OR key LIKE '%${query.replace(/'/g, "''")}%')
189
- ${namespace !== 'all' ? `AND namespace = '${namespace}'` : ''}
190
- LIMIT ${limit - results.length}
184
+ const keywordEntries = db.exec(`
185
+ SELECT id, key, namespace, content
186
+ FROM memory_entries
187
+ WHERE status = 'active'
188
+ AND (content LIKE '%${query.replace(/'/g, "''")}%' OR key LIKE '%${query.replace(/'/g, "''")}%')
189
+ ${namespace !== 'all' ? `AND namespace = '${namespace}'` : ''}
190
+ LIMIT ${limit - results.length}
191
191
  `);
192
192
  if (keywordEntries[0]?.values) {
193
193
  for (const row of keywordEntries[0].values) {
@@ -384,17 +384,17 @@ const collectionsCommand = {
384
384
  const fileBuffer = fs.readFileSync(fullDbPath);
385
385
  const db = new SQL.Database(fileBuffer);
386
386
  // Get collection stats from database
387
- const statsQuery = db.exec(`
388
- SELECT
389
- namespace,
390
- COUNT(*) as total_entries,
391
- SUM(CASE WHEN embedding IS NOT NULL THEN 1 ELSE 0 END) as with_embeddings,
392
- AVG(embedding_dimensions) as avg_dimensions,
393
- SUM(LENGTH(content)) as total_content_size
394
- FROM memory_entries
395
- WHERE status = 'active'
396
- GROUP BY namespace
397
- ORDER BY total_entries DESC
387
+ const statsQuery = db.exec(`
388
+ SELECT
389
+ namespace,
390
+ COUNT(*) as total_entries,
391
+ SUM(CASE WHEN embedding IS NOT NULL THEN 1 ELSE 0 END) as with_embeddings,
392
+ AVG(embedding_dimensions) as avg_dimensions,
393
+ SUM(LENGTH(content)) as total_content_size
394
+ FROM memory_entries
395
+ WHERE status = 'active'
396
+ GROUP BY namespace
397
+ ORDER BY total_entries DESC
398
398
  `);
399
399
  // Get vector index info
400
400
  const indexQuery = db.exec(`SELECT name, dimensions, hnsw_m FROM vector_indexes`);
@@ -137,74 +137,74 @@ function generateCIWorkflow(config, defaultBranch) {
137
137
  : pm === 'bun' ? 'bun install --frozen-lockfile'
138
138
  : 'npm ci';
139
139
  const run = pm === 'pnpm' ? 'pnpm' : pm === 'yarn' ? 'yarn' : pm === 'bun' ? 'bun run' : 'npm run';
140
- const setupPm = pm === 'pnpm' ? `
141
- - name: Install pnpm
142
- uses: pnpm/action-setup@v4
143
- with:
144
- version: latest
140
+ const setupPm = pm === 'pnpm' ? `
141
+ - name: Install pnpm
142
+ uses: pnpm/action-setup@v4
143
+ with:
144
+ version: latest
145
145
  ` : '';
146
146
  const nodeCache = pm === 'pnpm' ? 'pnpm' : pm === 'yarn' ? 'yarn' : pm === 'bun' ? '' : 'npm';
147
- const setupNode = nodeCache ? `
148
- - name: Setup Node.js
149
- uses: actions/setup-node@v4
150
- with:
151
- node-version: 20
152
- cache: '${nodeCache}'
153
- ` : `
154
- - name: Setup Node.js
155
- uses: actions/setup-node@v4
156
- with:
157
- node-version: 20
147
+ const setupNode = nodeCache ? `
148
+ - name: Setup Node.js
149
+ uses: actions/setup-node@v4
150
+ with:
151
+ node-version: 20
152
+ cache: '${nodeCache}'
153
+ ` : `
154
+ - name: Setup Node.js
155
+ uses: actions/setup-node@v4
156
+ with:
157
+ node-version: 20
158
158
  `;
159
- const setupBun = pm === 'bun' ? `
160
- - name: Setup Bun
161
- uses: oven-sh/setup-bun@v2
159
+ const setupBun = pm === 'bun' ? `
160
+ - name: Setup Bun
161
+ uses: oven-sh/setup-bun@v2
162
162
  ` : '';
163
- const lintStep = `
164
- - name: Lint
165
- run: ${run} lint --max-warnings 0
163
+ const lintStep = `
164
+ - name: Lint
165
+ run: ${run} lint --max-warnings 0
166
166
  continue-on-error: true`;
167
- const typeCheckStep = config.hasTypeScript ? `
168
-
169
- - name: Type check
167
+ const typeCheckStep = config.hasTypeScript ? `
168
+
169
+ - name: Type check
170
170
  run: ${run} typecheck` : '';
171
- const testStep = config.hasTests ? `
172
-
173
- - name: Test
171
+ const testStep = config.hasTests ? `
172
+
173
+ - name: Test
174
174
  run: ${run} test` : '';
175
- return `# CI pipeline — generated by moflo (https://github.com/eric-cielo/moflo)
176
- # Runs on every push to ${defaultBranch} and on all pull requests.
177
-
178
- name: CI
179
-
180
- on:
181
- push:
182
- branches: [${defaultBranch}]
183
- pull_request:
184
- branches: [${defaultBranch}]
185
-
186
- concurrency:
187
- group: \${{ github.workflow }}-\${{ github.ref }}
188
- cancel-in-progress: true
189
-
190
- permissions:
191
- contents: read
192
-
193
- jobs:
194
- build:
195
- runs-on: ubuntu-latest
196
- timeout-minutes: 15
197
-
198
- steps:
199
- - name: Checkout
200
- uses: actions/checkout@v4
201
- ${setupPm}${setupNode}${setupBun}
202
- - name: Install dependencies
203
- run: ${install}
204
-
205
- - name: Build
206
- run: ${run} build
207
- ${lintStep}${typeCheckStep}${testStep}
175
+ return `# CI pipeline — generated by moflo (https://github.com/eric-cielo/moflo)
176
+ # Runs on every push to ${defaultBranch} and on all pull requests.
177
+
178
+ name: CI
179
+
180
+ on:
181
+ push:
182
+ branches: [${defaultBranch}]
183
+ pull_request:
184
+ branches: [${defaultBranch}]
185
+
186
+ concurrency:
187
+ group: \${{ github.workflow }}-\${{ github.ref }}
188
+ cancel-in-progress: true
189
+
190
+ permissions:
191
+ contents: read
192
+
193
+ jobs:
194
+ build:
195
+ runs-on: ubuntu-latest
196
+ timeout-minutes: 15
197
+
198
+ steps:
199
+ - name: Checkout
200
+ uses: actions/checkout@v4
201
+ ${setupPm}${setupNode}${setupBun}
202
+ - name: Install dependencies
203
+ run: ${install}
204
+
205
+ - name: Build
206
+ run: ${run} build
207
+ ${lintStep}${typeCheckStep}${testStep}
208
208
  `;
209
209
  }
210
210
  // ============================================================================
@@ -50,96 +50,96 @@ function generateHiveMindPrompt(swarmId, swarmName, objective, workers, workerGr
50
50
  const queenType = flags.queenType || 'strategic';
51
51
  const consensusAlgorithm = flags.consensus || 'byzantine';
52
52
  const topology = flags.topology || 'hierarchical-mesh';
53
- return `🧠 HIVE MIND COLLECTIVE INTELLIGENCE SYSTEM
54
- ═══════════════════════════════════════════════
55
-
56
- You are the Queen coordinator of a Hive Mind swarm with collective intelligence capabilities.
57
-
58
- HIVE MIND CONFIGURATION:
59
- 📌 Swarm ID: ${swarmId}
60
- 📌 Swarm Name: ${swarmName}
61
- 🎯 Objective: ${objective}
62
- 👑 Queen Type: ${queenType}
63
- 🐝 Worker Count: ${workers.length}
64
- 🔗 Topology: ${topology}
65
- 🤝 Consensus Algorithm: ${consensusAlgorithm}
66
- ⏰ Initialized: ${currentTime}
67
-
68
- WORKER DISTRIBUTION:
69
- ${workerTypes.map(type => `• ${type}: ${workerGroups[type].length} agents`).join('\n')}
70
-
71
- 🔧 AVAILABLE MCP TOOLS FOR HIVE MIND COORDINATION:
72
-
73
- 1️⃣ **COLLECTIVE INTELLIGENCE**
74
- mcp__moflo__hive-mind_consensus - Democratic decision making
75
- mcp__moflo__hive-mind_memory - Share knowledge across the hive
76
- mcp__moflo__hive-mind_broadcast - Broadcast to all workers
77
- mcp__moflo__neural_patterns - Neural pattern recognition
78
-
79
- 2️⃣ **QUEEN COORDINATION**
80
- mcp__moflo__hive-mind_status - Monitor swarm health
81
- mcp__moflo__task_create - Create and delegate tasks
82
- mcp__moflo__task_orchestrate - Orchestrate task distribution
83
- mcp__moflo__agent_spawn - Spawn additional workers
84
-
85
- 3️⃣ **WORKER MANAGEMENT**
86
- mcp__moflo__agent_list - List all active agents
87
- mcp__moflo__agent_status - Check agent status
88
- mcp__moflo__agent_metrics - Track worker performance
89
- mcp__moflo__hive-mind_join - Add agent to hive
90
- mcp__moflo__hive-mind_leave - Remove agent from hive
91
-
92
- 4️⃣ **TASK ORCHESTRATION**
93
- mcp__moflo__task_create - Create hierarchical tasks
94
- mcp__moflo__task_status - Track task progress
95
- mcp__moflo__task_complete - Mark tasks complete
96
- mcp__moflo__workflow_create - Create workflows
97
-
98
- 5️⃣ **MEMORY & LEARNING**
99
- mcp__moflo__memory_store - Store collective knowledge
100
- mcp__moflo__memory_retrieve - Access shared memory
101
- mcp__moflo__memory_search - Search memory patterns
102
- mcp__moflo__neural_train - Learn from experiences
103
- mcp__moflo__hooks_intelligence_pattern-store - Store patterns
104
-
105
- 📋 HIVE MIND EXECUTION PROTOCOL:
106
-
107
- 1. **INITIALIZATION PHASE**
108
- - Verify all workers are online and responsive
109
- - Establish communication channels
110
- - Load previous session state if available
111
- - Initialize shared memory space
112
-
113
- 2. **TASK DISTRIBUTION PHASE**
114
- - Analyze the objective and decompose into subtasks
115
- - Assign tasks based on worker specializations
116
- - Set up task dependencies and ordering
117
- - Monitor parallel execution
118
-
119
- 3. **COORDINATION PHASE**
120
- - Use consensus for critical decisions
121
- - Aggregate results from workers
122
- - Resolve conflicts using ${consensusAlgorithm} consensus
123
- - Share learnings across the hive
124
-
125
- 4. **COMPLETION PHASE**
126
- - Verify all subtasks are complete
127
- - Consolidate results
128
- - Store learnings in collective memory
129
- - Report final status
130
-
131
- 🎯 YOUR OBJECTIVE:
132
- ${objective}
133
-
134
- 💡 COORDINATION TIPS:
135
- • Use mcp__moflo__hive-mind_broadcast for swarm-wide announcements
136
- • Check worker status regularly with mcp__moflo__hive-mind_status
137
- • Store important decisions in shared memory for persistence
138
- • Use consensus for any decisions affecting multiple workers
139
- • Monitor task progress and reassign if workers are blocked
140
-
141
- 🚀 BEGIN HIVE MIND COORDINATION NOW!
142
- Start by checking the current hive status and then proceed with the objective.
53
+ return `🧠 HIVE MIND COLLECTIVE INTELLIGENCE SYSTEM
54
+ ═══════════════════════════════════════════════
55
+
56
+ You are the Queen coordinator of a Hive Mind swarm with collective intelligence capabilities.
57
+
58
+ HIVE MIND CONFIGURATION:
59
+ 📌 Swarm ID: ${swarmId}
60
+ 📌 Swarm Name: ${swarmName}
61
+ 🎯 Objective: ${objective}
62
+ 👑 Queen Type: ${queenType}
63
+ 🐝 Worker Count: ${workers.length}
64
+ 🔗 Topology: ${topology}
65
+ 🤝 Consensus Algorithm: ${consensusAlgorithm}
66
+ ⏰ Initialized: ${currentTime}
67
+
68
+ WORKER DISTRIBUTION:
69
+ ${workerTypes.map(type => `• ${type}: ${workerGroups[type].length} agents`).join('\n')}
70
+
71
+ 🔧 AVAILABLE MCP TOOLS FOR HIVE MIND COORDINATION:
72
+
73
+ 1️⃣ **COLLECTIVE INTELLIGENCE**
74
+ mcp__moflo__hive-mind_consensus - Democratic decision making
75
+ mcp__moflo__hive-mind_memory - Share knowledge across the hive
76
+ mcp__moflo__hive-mind_broadcast - Broadcast to all workers
77
+ mcp__moflo__neural_patterns - Neural pattern recognition
78
+
79
+ 2️⃣ **QUEEN COORDINATION**
80
+ mcp__moflo__hive-mind_status - Monitor swarm health
81
+ mcp__moflo__task_create - Create and delegate tasks
82
+ mcp__moflo__task_orchestrate - Orchestrate task distribution
83
+ mcp__moflo__agent_spawn - Spawn additional workers
84
+
85
+ 3️⃣ **WORKER MANAGEMENT**
86
+ mcp__moflo__agent_list - List all active agents
87
+ mcp__moflo__agent_status - Check agent status
88
+ mcp__moflo__agent_metrics - Track worker performance
89
+ mcp__moflo__hive-mind_join - Add agent to hive
90
+ mcp__moflo__hive-mind_leave - Remove agent from hive
91
+
92
+ 4️⃣ **TASK ORCHESTRATION**
93
+ mcp__moflo__task_create - Create hierarchical tasks
94
+ mcp__moflo__task_status - Track task progress
95
+ mcp__moflo__task_complete - Mark tasks complete
96
+ mcp__moflo__workflow_create - Create workflows
97
+
98
+ 5️⃣ **MEMORY & LEARNING**
99
+ mcp__moflo__memory_store - Store collective knowledge
100
+ mcp__moflo__memory_retrieve - Access shared memory
101
+ mcp__moflo__memory_search - Search memory patterns
102
+ mcp__moflo__neural_train - Learn from experiences
103
+ mcp__moflo__hooks_intelligence_pattern-store - Store patterns
104
+
105
+ 📋 HIVE MIND EXECUTION PROTOCOL:
106
+
107
+ 1. **INITIALIZATION PHASE**
108
+ - Verify all workers are online and responsive
109
+ - Establish communication channels
110
+ - Load previous session state if available
111
+ - Initialize shared memory space
112
+
113
+ 2. **TASK DISTRIBUTION PHASE**
114
+ - Analyze the objective and decompose into subtasks
115
+ - Assign tasks based on worker specializations
116
+ - Set up task dependencies and ordering
117
+ - Monitor parallel execution
118
+
119
+ 3. **COORDINATION PHASE**
120
+ - Use consensus for critical decisions
121
+ - Aggregate results from workers
122
+ - Resolve conflicts using ${consensusAlgorithm} consensus
123
+ - Share learnings across the hive
124
+
125
+ 4. **COMPLETION PHASE**
126
+ - Verify all subtasks are complete
127
+ - Consolidate results
128
+ - Store learnings in collective memory
129
+ - Report final status
130
+
131
+ 🎯 YOUR OBJECTIVE:
132
+ ${objective}
133
+
134
+ 💡 COORDINATION TIPS:
135
+ • Use mcp__moflo__hive-mind_broadcast for swarm-wide announcements
136
+ • Check worker status regularly with mcp__moflo__hive-mind_status
137
+ • Store important decisions in shared memory for persistence
138
+ • Use consensus for any decisions affecting multiple workers
139
+ • Monitor task progress and reassign if workers are blocked
140
+
141
+ 🚀 BEGIN HIVE MIND COORDINATION NOW!
142
+ Start by checking the current hive status and then proceed with the objective.
143
143
  `;
144
144
  }
145
145
  /**
@@ -3156,15 +3156,15 @@ const tokenOptimizeCommand = {
3156
3156
  const total = stats.cacheHits + stats.cacheMisses;
3157
3157
  const hitRate = total > 0 ? (stats.cacheHits / total * 100).toFixed(1) : '0';
3158
3158
  const savings = (stats.totalTokensSaved / 1000 * 0.01).toFixed(2);
3159
- output.writeln(`## Token Optimization Report
3160
-
3161
- | Metric | Value |
3162
- |--------|-------|
3163
- | Tokens Saved | ${stats.totalTokensSaved.toLocaleString()} |
3164
- | Edits Optimized | ${stats.editsOptimized} |
3165
- | Cache Hit Rate | ${hitRate}% |
3166
- | Memories Retrieved | ${stats.memoriesRetrieved} |
3167
- | Est. Monthly Savings | $${savings} |
3159
+ output.writeln(`## Token Optimization Report
3160
+
3161
+ | Metric | Value |
3162
+ |--------|-------|
3163
+ | Tokens Saved | ${stats.totalTokensSaved.toLocaleString()} |
3164
+ | Edits Optimized | ${stats.editsOptimized} |
3165
+ | Cache Hit Rate | ${hitRate}% |
3166
+ | Memories Retrieved | ${stats.memoriesRetrieved} |
3167
+ | Est. Monthly Savings | $${savings} |
3168
3168
  | Agentic-Flow Active | ${agenticFlowAvailable ? '✓' : '✗'} |`);
3169
3169
  }
3170
3170
  return { success: true, data: { config, stats: { ...stats, agenticFlowAvailable } } };
@@ -46,20 +46,20 @@ function generateInsertSQL(entry) {
46
46
  if (entry.embedding && Array.isArray(entry.embedding) && entry.embedding.length > 0) {
47
47
  embeddingClause = formatEmbedding(entry.embedding);
48
48
  }
49
- return `INSERT INTO claude_flow.memory_entries (key, value, embedding, namespace, metadata, created_at, updated_at)
50
- VALUES (
51
- '${key}',
52
- '${value}',
53
- ${embeddingClause},
54
- '${namespace}',
55
- '${metadata}'::jsonb,
56
- ${entry.created_at ? `'${entry.created_at}'::timestamptz` : 'NOW()'},
57
- ${entry.updated_at ? `'${entry.updated_at}'::timestamptz` : 'NOW()'}
58
- )
59
- ON CONFLICT (key, namespace) DO UPDATE SET
60
- value = EXCLUDED.value,
61
- embedding = COALESCE(EXCLUDED.embedding, claude_flow.memory_entries.embedding),
62
- metadata = EXCLUDED.metadata,
49
+ return `INSERT INTO claude_flow.memory_entries (key, value, embedding, namespace, metadata, created_at, updated_at)
50
+ VALUES (
51
+ '${key}',
52
+ '${value}',
53
+ ${embeddingClause},
54
+ '${namespace}',
55
+ '${metadata}'::jsonb,
56
+ ${entry.created_at ? `'${entry.created_at}'::timestamptz` : 'NOW()'},
57
+ ${entry.updated_at ? `'${entry.updated_at}'::timestamptz` : 'NOW()'}
58
+ )
59
+ ON CONFLICT (key, namespace) DO UPDATE SET
60
+ value = EXCLUDED.value,
61
+ embedding = COALESCE(EXCLUDED.embedding, claude_flow.memory_entries.embedding),
62
+ metadata = EXCLUDED.metadata,
63
63
  updated_at = NOW();`;
64
64
  }
65
65
  /**