odd-flow 1.0.1 → 1.2.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 (376) hide show
  1. package/bin/cli.js +2 -2
  2. package/package.json +12 -12
  3. package/v3/{@claude-flow → @odd-flow}/cli/README.md +118 -4
  4. package/v3/{@claude-flow → @odd-flow}/cli/bin/cli.js +4 -4
  5. package/v3/{@claude-flow → @odd-flow}/cli/bin/mcp-server.js +2 -2
  6. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/gguf-engine.d.ts +1 -1
  7. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/gguf-engine.js +1 -1
  8. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/ruvllm-bridge.d.ts +1 -1
  9. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/ruvllm-bridge.js +1 -1
  10. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-runner.d.ts +1 -1
  11. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-runner.js +1 -1
  12. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-signing.d.ts +1 -1
  13. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-signing.js +1 -1
  14. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/autopilot-state.d.ts +3 -3
  15. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/autopilot-state.js +3 -3
  16. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/agent-wasm.js +7 -7
  17. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/agent.js +15 -15
  18. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/analyze.js +52 -52
  19. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/appliance.js +1 -1
  20. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/autopilot.js +4 -4
  21. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/benchmark.js +16 -16
  22. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/claims.js +21 -21
  23. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/cleanup.d.ts +1 -1
  24. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/cleanup.js +9 -9
  25. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/completions.js +41 -41
  26. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/config.js +9 -9
  27. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/daemon.js +27 -27
  28. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/deployment.js +20 -20
  29. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/doctor.js +24 -24
  30. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/embeddings.js +58 -58
  31. package/v3/@odd-flow/cli/dist/src/commands/escalation.d.ts +7 -0
  32. package/v3/@odd-flow/cli/dist/src/commands/escalation.js +115 -0
  33. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/guidance.js +30 -30
  34. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/hive-mind.js +20 -20
  35. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/hooks.js +103 -103
  36. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/index.d.ts +3 -0
  37. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/index.js +20 -0
  38. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/init.js +49 -48
  39. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/issues.js +6 -6
  40. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/mcp.d.ts +1 -1
  41. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/mcp.js +14 -14
  42. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/memory.js +33 -33
  43. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/migrate.js +28 -28
  44. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/neural.js +35 -35
  45. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/performance.js +13 -13
  46. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/plugins.js +33 -33
  47. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/process.js +36 -36
  48. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/progress.d.ts +1 -1
  49. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/progress.js +7 -7
  50. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/providers.js +13 -13
  51. package/v3/@odd-flow/cli/dist/src/commands/refinery.d.ts +7 -0
  52. package/v3/@odd-flow/cli/dist/src/commands/refinery.js +64 -0
  53. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/route.js +26 -26
  54. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/backup.js +9 -9
  55. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/benchmark.js +4 -4
  56. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/import.d.ts +3 -3
  57. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/import.js +11 -11
  58. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/index.js +9 -9
  59. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/init.js +7 -7
  60. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/migrate.js +5 -5
  61. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/optimize.js +7 -7
  62. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/setup.d.ts +3 -3
  63. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/setup.js +14 -14
  64. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/status.js +4 -4
  65. package/v3/@odd-flow/cli/dist/src/commands/scheduler.d.ts +7 -0
  66. package/v3/@odd-flow/cli/dist/src/commands/scheduler.js +86 -0
  67. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/security.js +22 -22
  68. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/session.js +13 -13
  69. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/start.js +16 -16
  70. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/status.js +9 -9
  71. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/swarm.js +10 -10
  72. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/task.js +9 -9
  73. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/transfer-store.js +17 -17
  74. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/update.d.ts +1 -1
  75. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/update.js +8 -8
  76. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/workflow.js +13 -13
  77. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/config-adapter.d.ts +1 -1
  78. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/config-adapter.js +1 -1
  79. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/index.js +2 -2
  80. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/infrastructure/in-memory-repositories.d.ts +4 -4
  81. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/claudemd-generator.js +31 -31
  82. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/executor.js +63 -63
  83. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/helpers-generator.d.ts +1 -1
  84. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/helpers-generator.js +19 -19
  85. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/mcp-generator.js +1 -1
  86. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/settings-generator.js +6 -6
  87. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/statusline-generator.js +16 -16
  88. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/types.d.ts +3 -3
  89. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-server.d.ts +2 -2
  90. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-server.js +15 -15
  91. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/agent-tools.js +36 -1
  92. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/agentdb-tools.js +1 -1
  93. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/claims-tools.d.ts +1 -1
  94. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/claims-tools.js +2 -2
  95. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/config-tools.js +12 -1
  96. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/coordination-tools.js +1 -1
  97. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/embeddings-tools.js +1 -1
  98. package/v3/@odd-flow/cli/dist/src/mcp-tools/escalation-tools.d.ts +15 -0
  99. package/v3/@odd-flow/cli/dist/src/mcp-tools/escalation-tools.js +153 -0
  100. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/hive-mind-tools.js +4 -4
  101. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/hooks-tools.js +3 -3
  102. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/index.d.ts +3 -0
  103. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/index.js +4 -0
  104. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/memory-tools.js +1 -1
  105. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/neural-tools.d.ts +3 -3
  106. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/neural-tools.js +8 -8
  107. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/performance-tools.js +1 -1
  108. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/progress-tools.d.ts +1 -1
  109. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/progress-tools.js +8 -8
  110. package/v3/@odd-flow/cli/dist/src/mcp-tools/refinery-tools.d.ts +16 -0
  111. package/v3/@odd-flow/cli/dist/src/mcp-tools/refinery-tools.js +223 -0
  112. package/v3/@odd-flow/cli/dist/src/mcp-tools/scheduler-tools.d.ts +16 -0
  113. package/v3/@odd-flow/cli/dist/src/mcp-tools/scheduler-tools.js +72 -0
  114. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/security-tools.js +3 -3
  115. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/session-tools.js +1 -1
  116. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/swarm-tools.js +123 -1
  117. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/system-tools.js +2 -2
  118. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/task-tools.js +1 -1
  119. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/workflow-tools.js +1 -1
  120. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/intelligence.js +5 -5
  121. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/memory-bridge.js +2 -2
  122. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/memory-initializer.js +3 -3
  123. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/manager.js +10 -10
  124. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/store/discovery.js +99 -99
  125. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/tests/demo-plugin-store.js +6 -6
  126. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/tests/standalone-test.js +6 -6
  127. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/tests/test-plugin-store.js +2 -2
  128. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/circuit-breaker.d.ts +1 -1
  129. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/circuit-breaker.js +1 -1
  130. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/error-handler.d.ts +1 -1
  131. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/error-handler.js +1 -1
  132. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/index.d.ts +1 -1
  133. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/index.js +1 -1
  134. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/monitoring.d.ts +1 -1
  135. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/monitoring.js +1 -1
  136. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/rate-limiter.d.ts +1 -1
  137. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/rate-limiter.js +1 -1
  138. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/retry.d.ts +1 -1
  139. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/production/retry.js +1 -1
  140. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/runtime/headless.d.ts +3 -3
  141. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/runtime/headless.js +3 -3
  142. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/agent-wasm.d.ts +1 -1
  143. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/agent-wasm.js +1 -1
  144. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/graph-analyzer.d.ts +1 -1
  145. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/graph-analyzer.js +1 -1
  146. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/index.d.ts +1 -1
  147. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/index.js +1 -1
  148. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/ruvllm-wasm.d.ts +1 -1
  149. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/ruvllm-wasm.js +1 -1
  150. package/v3/@odd-flow/cli/dist/src/services/checkpoint-manager.d.ts +46 -0
  151. package/v3/@odd-flow/cli/dist/src/services/checkpoint-manager.js +114 -0
  152. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/claim-service.js +1 -1
  153. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/config-file-manager.js +2 -2
  154. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/container-worker-pool.js +6 -6
  155. package/v3/@odd-flow/cli/dist/src/services/escalation-router.d.ts +46 -0
  156. package/v3/@odd-flow/cli/dist/src/services/escalation-router.js +138 -0
  157. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/headless-worker-executor.js +2 -2
  158. package/v3/@odd-flow/cli/dist/src/services/refinery.d.ts +66 -0
  159. package/v3/@odd-flow/cli/dist/src/services/refinery.js +165 -0
  160. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/registry-api.js +1 -1
  161. package/v3/@odd-flow/cli/dist/src/services/scheduler.d.ts +66 -0
  162. package/v3/@odd-flow/cli/dist/src/services/scheduler.js +228 -0
  163. package/v3/@odd-flow/cli/dist/src/services/watchdog-deacon.d.ts +20 -0
  164. package/v3/@odd-flow/cli/dist/src/services/watchdog-deacon.js +52 -0
  165. package/v3/@odd-flow/cli/dist/src/services/watchdog-dogs.d.ts +42 -0
  166. package/v3/@odd-flow/cli/dist/src/services/watchdog-dogs.js +81 -0
  167. package/v3/@odd-flow/cli/dist/src/services/watchdog-witness.d.ts +38 -0
  168. package/v3/@odd-flow/cli/dist/src/services/watchdog-witness.js +57 -0
  169. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/worker-daemon.d.ts +1 -1
  170. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/worker-daemon.js +18 -18
  171. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/worker-queue.js +1 -1
  172. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/suggest.js +1 -1
  173. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/ipfs/upload.d.ts +1 -1
  174. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/ipfs/upload.js +1 -1
  175. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/models/seraphine.js +2 -2
  176. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/serialization/cfp.js +1 -1
  177. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/storage/gcs.d.ts +1 -1
  178. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/storage/gcs.js +4 -4
  179. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/discovery.js +7 -7
  180. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/registry.js +4 -4
  181. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/tests/standalone-test.js +4 -4
  182. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/test-seraphine.js +1 -1
  183. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/checker.d.ts +1 -1
  184. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/checker.js +11 -11
  185. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/executor.js +1 -1
  186. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/index.d.ts +1 -1
  187. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/index.js +1 -1
  188. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/rate-limiter.js +1 -1
  189. package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/validator.js +11 -11
  190. package/v3/{@claude-flow → @odd-flow}/cli/package.json +5 -5
  191. package/v3/{@claude-flow → @odd-flow}/shared/README.md +35 -35
  192. package/v3/{@claude-flow → @odd-flow}/shared/package.json +1 -1
  193. package/v3/README.md +55 -55
  194. /package/v3/{@claude-flow → @odd-flow}/cli/bin/preinstall.cjs +0 -0
  195. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-builder.d.ts +0 -0
  196. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-builder.js +0 -0
  197. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-distribution.d.ts +0 -0
  198. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-distribution.js +0 -0
  199. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-format.d.ts +0 -0
  200. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/appliance/rvfa-format.js +0 -0
  201. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/benchmarks/pretrain/index.d.ts +0 -0
  202. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/benchmarks/pretrain/index.js +0 -0
  203. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/agent-wasm.d.ts +0 -0
  204. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/agent.d.ts +0 -0
  205. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/analyze.d.ts +0 -0
  206. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/appliance-advanced.d.ts +0 -0
  207. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/appliance-advanced.js +0 -0
  208. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/appliance.d.ts +0 -0
  209. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/autopilot.d.ts +0 -0
  210. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/benchmark.d.ts +0 -0
  211. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/claims.d.ts +0 -0
  212. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/completions.d.ts +0 -0
  213. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/config.d.ts +0 -0
  214. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/daemon.d.ts +0 -0
  215. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/deployment.d.ts +0 -0
  216. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/doctor.d.ts +0 -0
  217. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/embeddings.d.ts +0 -0
  218. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/guidance.d.ts +0 -0
  219. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/hive-mind.d.ts +0 -0
  220. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/hooks.d.ts +0 -0
  221. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/init.d.ts +0 -0
  222. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/issues.d.ts +0 -0
  223. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/memory.d.ts +0 -0
  224. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/migrate.d.ts +0 -0
  225. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/neural.d.ts +0 -0
  226. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/performance.d.ts +0 -0
  227. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/plugins.d.ts +0 -0
  228. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/process.d.ts +0 -0
  229. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/providers.d.ts +0 -0
  230. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/route.d.ts +0 -0
  231. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/backup.d.ts +0 -0
  232. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/benchmark.d.ts +0 -0
  233. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/index.d.ts +0 -0
  234. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/init.d.ts +0 -0
  235. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/migrate.d.ts +0 -0
  236. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/optimize.d.ts +0 -0
  237. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/ruvector/status.d.ts +0 -0
  238. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/security.d.ts +0 -0
  239. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/session.d.ts +0 -0
  240. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/start.d.ts +0 -0
  241. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/status.d.ts +0 -0
  242. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/swarm.d.ts +0 -0
  243. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/task.d.ts +0 -0
  244. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/transfer-store.d.ts +0 -0
  245. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/commands/workflow.d.ts +0 -0
  246. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/index.d.ts +0 -0
  247. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/infrastructure/in-memory-repositories.js +0 -0
  248. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/claudemd-generator.d.ts +0 -0
  249. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/executor.d.ts +0 -0
  250. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/index.d.ts +0 -0
  251. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/index.js +0 -0
  252. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/mcp-generator.d.ts +0 -0
  253. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/settings-generator.d.ts +0 -0
  254. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/statusline-generator.d.ts +0 -0
  255. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/init/types.js +0 -0
  256. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-client.d.ts +0 -0
  257. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-client.js +0 -0
  258. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/agent-tools.d.ts +0 -0
  259. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/agentdb-tools.d.ts +0 -0
  260. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/analyze-tools.d.ts +0 -0
  261. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/analyze-tools.js +0 -0
  262. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/config-tools.d.ts +0 -0
  263. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/coordination-tools.d.ts +0 -0
  264. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/embeddings-tools.d.ts +0 -0
  265. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +0 -0
  266. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/hooks-tools.d.ts +0 -0
  267. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/memory-tools.d.ts +0 -0
  268. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/performance-tools.d.ts +0 -0
  269. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/security-tools.d.ts +0 -0
  270. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/session-tools.d.ts +0 -0
  271. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/swarm-tools.d.ts +0 -0
  272. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/system-tools.d.ts +0 -0
  273. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/task-tools.d.ts +0 -0
  274. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/types.d.ts +0 -0
  275. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/types.js +0 -0
  276. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/mcp-tools/workflow-tools.d.ts +0 -0
  277. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/ewc-consolidation.d.ts +0 -0
  278. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/ewc-consolidation.js +0 -0
  279. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/intelligence.d.ts +0 -0
  280. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/memory-bridge.d.ts +0 -0
  281. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/memory-initializer.d.ts +0 -0
  282. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/sona-optimizer.d.ts +0 -0
  283. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/memory/sona-optimizer.js +0 -0
  284. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/output.d.ts +0 -0
  285. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/output.js +0 -0
  286. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/parser.d.ts +0 -0
  287. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/parser.js +0 -0
  288. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/manager.d.ts +0 -0
  289. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/store/discovery.d.ts +0 -0
  290. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/store/index.d.ts +0 -0
  291. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/store/index.js +0 -0
  292. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/store/search.d.ts +0 -0
  293. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/store/search.js +0 -0
  294. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/store/types.d.ts +0 -0
  295. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/store/types.js +0 -0
  296. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/tests/demo-plugin-store.d.ts +0 -0
  297. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/tests/standalone-test.d.ts +0 -0
  298. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/plugins/tests/test-plugin-store.d.ts +0 -0
  299. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/prompt.d.ts +0 -0
  300. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/prompt.js +0 -0
  301. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/ast-analyzer.d.ts +0 -0
  302. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/ast-analyzer.js +0 -0
  303. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/coverage-router.d.ts +0 -0
  304. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/coverage-router.js +0 -0
  305. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/coverage-tools.d.ts +0 -0
  306. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/coverage-tools.js +0 -0
  307. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/diff-classifier.d.ts +0 -0
  308. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/diff-classifier.js +0 -0
  309. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/enhanced-model-router.d.ts +0 -0
  310. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/enhanced-model-router.js +0 -0
  311. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/flash-attention.d.ts +0 -0
  312. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/flash-attention.js +0 -0
  313. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/lora-adapter.d.ts +0 -0
  314. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/lora-adapter.js +0 -0
  315. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/model-router.d.ts +0 -0
  316. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/model-router.js +0 -0
  317. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/moe-router.d.ts +0 -0
  318. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/moe-router.js +0 -0
  319. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/q-learning-router.d.ts +0 -0
  320. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/q-learning-router.js +0 -0
  321. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/semantic-router.d.ts +0 -0
  322. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/semantic-router.js +0 -0
  323. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/vector-db.d.ts +0 -0
  324. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/ruvector/vector-db.js +0 -0
  325. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/agentic-flow-bridge.d.ts +0 -0
  326. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/agentic-flow-bridge.js +0 -0
  327. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/claim-service.d.ts +0 -0
  328. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/config-file-manager.d.ts +0 -0
  329. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/container-worker-pool.d.ts +0 -0
  330. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/headless-worker-executor.d.ts +0 -0
  331. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/index.d.ts +0 -0
  332. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/index.js +0 -0
  333. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/registry-api.d.ts +0 -0
  334. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/ruvector-training.d.ts +0 -0
  335. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/ruvector-training.js +0 -0
  336. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/services/worker-queue.d.ts +0 -0
  337. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/suggest.d.ts +0 -0
  338. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/anonymization/index.d.ts +0 -0
  339. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/anonymization/index.js +0 -0
  340. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/deploy-seraphine.d.ts +0 -0
  341. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/deploy-seraphine.js +0 -0
  342. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/export.d.ts +0 -0
  343. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/export.js +0 -0
  344. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/index.d.ts +0 -0
  345. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/index.js +0 -0
  346. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/ipfs/client.d.ts +0 -0
  347. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/ipfs/client.js +0 -0
  348. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/models/seraphine.d.ts +0 -0
  349. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/serialization/cfp.d.ts +0 -0
  350. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/storage/index.d.ts +0 -0
  351. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/storage/index.js +0 -0
  352. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/discovery.d.ts +0 -0
  353. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/download.d.ts +0 -0
  354. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/download.js +0 -0
  355. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/index.d.ts +0 -0
  356. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/index.js +0 -0
  357. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/publish.d.ts +0 -0
  358. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/publish.js +0 -0
  359. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/registry.d.ts +0 -0
  360. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/search.d.ts +0 -0
  361. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/search.js +0 -0
  362. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/tests/standalone-test.d.ts +0 -0
  363. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/types.d.ts +0 -0
  364. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/store/types.js +0 -0
  365. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/test-seraphine.d.ts +0 -0
  366. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/tests/test-store.d.ts +0 -0
  367. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/tests/test-store.js +0 -0
  368. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/types.d.ts +0 -0
  369. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/transfer/types.js +0 -0
  370. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/types.d.ts +0 -0
  371. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/types.js +0 -0
  372. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/executor.d.ts +0 -0
  373. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/rate-limiter.d.ts +0 -0
  374. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/update/validator.d.ts +0 -0
  375. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/utils/path-validation.d.ts +0 -0
  376. /package/v3/{@claude-flow → @odd-flow}/cli/dist/src/utils/path-validation.js +0 -0
package/bin/cli.js CHANGED
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
3
  * odd-flow CLI - Entry point
4
- * Proxies to @claude-flow/cli bin for cross-platform compatibility.
4
+ * Proxies to @odd-flow/cli bin for cross-platform compatibility.
5
5
  */
6
6
  import { pathToFileURL, fileURLToPath } from 'node:url';
7
7
  import { dirname, join } from 'node:path';
8
8
 
9
9
  const __dirname = dirname(fileURLToPath(import.meta.url));
10
- const cliPath = join(__dirname, '..', 'v3', '@claude-flow', 'cli', 'bin', 'cli.js');
10
+ const cliPath = join(__dirname, '..', 'v3', '@odd-flow', 'cli', 'bin', 'cli.js');
11
11
  await import(pathToFileURL(cliPath).href);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "odd-flow",
3
- "version": "1.0.1",
3
+ "version": "1.2.0",
4
4
  "description": "AI agent orchestration for Claude Code — swarm coordination, vector memory, self-learning hooks, and MCP tools",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -9,15 +9,15 @@
9
9
  },
10
10
  "files": [
11
11
  "bin/**",
12
- "v3/@claude-flow/cli/bin/**",
13
- "v3/@claude-flow/cli/dist/**/*.js",
14
- "v3/@claude-flow/cli/dist/**/*.d.ts",
15
- "!v3/@claude-flow/cli/dist/**/*.map",
16
- "v3/@claude-flow/cli/package.json",
17
- "v3/@claude-flow/shared/dist/**/*.js",
18
- "v3/@claude-flow/shared/dist/**/*.d.ts",
19
- "!v3/@claude-flow/shared/dist/**/*.map",
20
- "v3/@claude-flow/shared/package.json",
12
+ "v3/@odd-flow/cli/bin/**",
13
+ "v3/@odd-flow/cli/dist/**/*.js",
14
+ "v3/@odd-flow/cli/dist/**/*.d.ts",
15
+ "!v3/@odd-flow/cli/dist/**/*.map",
16
+ "v3/@odd-flow/cli/package.json",
17
+ "v3/@odd-flow/shared/dist/**/*.js",
18
+ "v3/@odd-flow/shared/dist/**/*.d.ts",
19
+ "!v3/@odd-flow/shared/dist/**/*.map",
20
+ "v3/@odd-flow/shared/package.json",
21
21
  ".claude-plugin/**",
22
22
  ".claude/**",
23
23
  "!.claude/**/*.db",
@@ -28,11 +28,11 @@
28
28
  "scripts": {
29
29
  "dev": "tsx watch src/index.ts",
30
30
  "build": "tsc",
31
- "build:ts": "cd v3/@claude-flow/cli && npm run build || true",
31
+ "build:ts": "cd v3/@odd-flow/cli && npm run build || true",
32
32
  "test": "vitest",
33
33
  "test:ui": "vitest --ui",
34
34
  "test:security": "vitest run v3/__tests__/security/",
35
- "lint": "cd v3/@claude-flow/cli && npm run lint || true",
35
+ "lint": "cd v3/@odd-flow/cli && npm run lint || true",
36
36
  "security:audit": "npm audit --audit-level high",
37
37
  "security:fix": "npm audit fix",
38
38
  "security:test": "npm run test:security"
@@ -17,12 +17,17 @@ odd-flow is a focused agent coordination package for [Claude Code](https://docs.
17
17
  - **Hive mind consensus** — Byzantine fault-tolerant coordination across agents
18
18
  - **Security scanning** — built-in AIDefence integration for prompt injection detection
19
19
  - **Embeddings** — ONNX-powered 384-dim vector embeddings with hyperbolic geometry support
20
+ - **Watchdog** — three-tier agent liveness monitoring (Witness → Deacon → Dogs) with automatic termination and orphan task recovery
21
+ - **Session recovery** — periodic checkpointing of full swarm state for crash recovery
22
+ - **Merge queue** — conflict detection when multiple agents modify overlapping files or contracts
23
+ - **Escalation routing** — automatic severity classification (P0 halt / P1 pause / P2 log) with regex-based pattern matching
24
+ - **Capacity governance** — dynamic agent scaling based on workload, idle detection, and configurable limits
20
25
 
21
- ## How it differs from ruflo/claude-flow
26
+ ## How it differs from odd-flow/odd-flow
22
27
 
23
- odd-flow is extracted from the ruflo v3 codebase with a security-first approach:
28
+ odd-flow is extracted from the odd-flow v3 codebase with a security-first approach:
24
29
 
25
- | | ruflo v3 | odd-flow |
30
+ | | odd-flow v3 | odd-flow |
26
31
  |---|---|---|
27
32
  | **Scope** | Full enterprise platform (60+ packages, WASM kernels, deployment infra, plugins) | Focused CLI + MCP tools for agent coordination |
28
33
  | **Security** | Broad surface area, auto-install, terminal execution | Dangerous code removed, path validation on all file ops, file permissions hardened (0o600), prototype pollution prevention |
@@ -79,6 +84,9 @@ odd-flow doctor --fix
79
84
  | `performance` | Benchmarking and profiling |
80
85
  | `analyze` | Diff analysis and risk assessment |
81
86
  | `claims` | Work-stealing task distribution |
87
+ | `refinery` | Merge queue — submit, status, resolve conflicts |
88
+ | `escalation` | Severity routing — report, status, resolve |
89
+ | `scheduler` | Capacity governance — status, report |
82
90
 
83
91
  ## MCP tools
84
92
 
@@ -97,6 +105,9 @@ When running as an MCP server, odd-flow exposes tools in these categories:
97
105
  - **`claims_*`** — claim, release, steal, rebalance work items
98
106
  - **`analyze_*`** — diff stats, risk assessment, reviewer suggestions
99
107
  - **`progress_*`** — check, sync, watch, summary
108
+ - **`refinery_*`** — submit changesets, check merge queue status, resolve conflicts
109
+ - **`escalation_*`** — report problems, check escalation status, resolve/reclassify events
110
+ - **`scheduler_*`** — check capacity status and scaling reports
100
111
  - **`security_*`** — scan for prompt injection and manipulation
101
112
  - **`system_*`** — health, status, metrics, info
102
113
 
@@ -155,6 +166,109 @@ odd-flow hooks model-stats
155
166
 
156
167
  The hook system uses Q-learning to optimise model routing (which model handles which task type) based on observed outcomes.
157
168
 
169
+ ## Gastown orchestration (v1.2.0)
170
+
171
+ Gastown adds five coordination layers that run automatically when a swarm is initialised. They keep multi-agent builds stable without manual intervention.
172
+
173
+ ### Watchdog (D1)
174
+
175
+ Three-tier liveness monitoring — Witness, Deacon, Dogs — that detects unresponsive agents and recovers their work.
176
+
177
+ - **Witness** checks heartbeats every 15 seconds. If an agent misses the threshold, it emits `agent:unresponsive`.
178
+ - **Deacon** tracks consecutive misses per agent: 1 → warning, 2 → wake attempt, 3+ → terminate.
179
+ - **Dogs** handles termination: marks the agent as `terminated`, creates recovery tasks for any in-progress work, and logs the event.
180
+
181
+ ```bash
182
+ # Agents send heartbeats while working (MCP tool)
183
+ odd-flow agent heartbeat --agent-id my-agent
184
+
185
+ # Check watchdog state via swarm status
186
+ odd-flow swarm status
187
+ ```
188
+
189
+ Watchdog behaviour is configurable:
190
+
191
+ ```bash
192
+ odd-flow config set --key "watchdog.enabled" --value true
193
+ odd-flow config set --key "watchdog.checkInterval" --value 15000
194
+ odd-flow config set --key "watchdog.heartbeatThreshold" --value 60000
195
+ odd-flow config set --key "watchdog.maxMissedBeats" --value 3
196
+ ```
197
+
198
+ ### Session recovery (D2)
199
+
200
+ The CheckpointManager periodically snapshots full swarm state (agents, tasks, config) to `.odd-flow/recovery/checkpoint-latest.json`. After a crash or session drop, the recovery plan identifies which agents to respawn and which tasks to restart.
201
+
202
+ ```bash
203
+ odd-flow config set --key "recovery.checkpointInterval" --value 60000
204
+ odd-flow config set --key "recovery.staleThreshold" --value 86400000
205
+ ```
206
+
207
+ ### Merge queue (D3)
208
+
209
+ The Refinery queues concurrent agent output and detects conflicts before merging:
210
+
211
+ - **File overlap** — two agents modifying the same file path
212
+ - **Contract mismatch** — two agents defining the same contract with divergent fields
213
+
214
+ ```bash
215
+ # Submit agent work (MCP tool)
216
+ odd-flow refinery submit --agent-id dev-1 --files '[{"path":"src/api.ts","content":"..."}]'
217
+
218
+ # Check queue status
219
+ odd-flow refinery status
220
+
221
+ # Resolve a conflict
222
+ odd-flow refinery resolve --conflict-id cf-123 --resolution A
223
+ ```
224
+
225
+ ### Escalation routing (D4)
226
+
227
+ The EscalationRouter classifies problems by severity using regex pattern matching:
228
+
229
+ | Severity | Patterns | Action |
230
+ |----------|----------|--------|
231
+ | **P0** | security, data loss, injection, credential leak, contract violation | Halt swarm |
232
+ | **P1** | build failure, test failure, type error, file conflict, compile error | Pause agent, attempt autofix |
233
+ | **P2** | lint warning, style issue, minor | Log only |
234
+
235
+ ```bash
236
+ # Report a problem (auto-classified or explicit severity)
237
+ odd-flow escalation report --source qa-agent --description "SQL injection in user handler"
238
+
239
+ # Check open escalations
240
+ odd-flow escalation status --severity p0
241
+
242
+ # Resolve or reclassify
243
+ odd-flow escalation resolve --event-id evt-123
244
+ odd-flow escalation resolve --event-id evt-456 --reclassify-to p2
245
+ ```
246
+
247
+ Cross-service wiring runs automatically:
248
+ - Watchdog terminations → P1 escalation
249
+ - Refinery contract conflicts → P0 escalation
250
+
251
+ ### Capacity governance (D5)
252
+
253
+ The Scheduler dynamically scales agents up or down based on workload:
254
+
255
+ - **Scale up** when all agents are busy, ready tasks are waiting, and the pool is under `maxAgents`
256
+ - **Scale down** when an agent has been idle beyond the `idleThreshold` with no matching work
257
+ - **Blocked detection** when no tasks are ready or in-progress (possible deadlock)
258
+
259
+ ```bash
260
+ # Check scheduler status
261
+ odd-flow scheduler status
262
+
263
+ # Include capacity report
264
+ odd-flow scheduler status --include-report
265
+
266
+ # Configure
267
+ odd-flow config set --key "scheduler.checkInterval" --value 30000
268
+ odd-flow config set --key "scheduler.idleThreshold" --value 2
269
+ odd-flow config set --key "scheduler.rampUp" --value true
270
+ ```
271
+
158
272
  ## Configuration
159
273
 
160
274
  ```bash
@@ -172,7 +286,7 @@ Configuration is stored in `.odd-flow/config.json` in the project root with `0o6
172
286
 
173
287
  ## Security model
174
288
 
175
- odd-flow was hardened from the ruflo v3 codebase with these measures:
289
+ odd-flow was hardened from the odd-flow v3 codebase with these measures:
176
290
 
177
291
  - **Path containment** — all file operations validated against project root via `validatePath()`
178
292
  - **No arbitrary execution** — `terminal_execute` tool removed entirely
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * @claude-flow/cli - CLI Entry Point
3
+ * @odd-flow/cli - CLI Entry Point
4
4
  *
5
5
  * Claude Flow V3 Command Line Interface
6
6
  *
7
7
  * Auto-detects MCP mode when stdin is piped and no args provided.
8
- * This allows: echo '{"jsonrpc":"2.0",...}' | npx @claude-flow/cli
8
+ * This allows: echo '{"jsonrpc":"2.0",...}' | npx @odd-flow/cli
9
9
  */
10
10
 
11
11
  import { randomUUID } from 'crypto';
@@ -13,7 +13,7 @@ import { randomUUID } from 'crypto';
13
13
  // Check if we should run in MCP server mode
14
14
  // Conditions:
15
15
  // 1. stdin is being piped AND no CLI arguments provided (auto-detect)
16
- // 2. stdin is being piped AND args are "mcp start" (explicit, e.g. npx claude-flow@alpha mcp start)
16
+ // 2. stdin is being piped AND args are "mcp start" (explicit, e.g. npx odd-flow@alpha mcp start)
17
17
  const cliArgs = process.argv.slice(2);
18
18
  const isExplicitMCP = cliArgs.length >= 1 && cliArgs[0] === 'mcp' && (cliArgs.length === 1 || cliArgs[1] === 'start');
19
19
  const isMCPMode = !process.stdin.isTTY && (process.argv.length === 2 || isExplicitMCP);
@@ -22,7 +22,7 @@ if (isMCPMode) {
22
22
  // Run MCP server mode
23
23
  const { listMCPTools, callMCPTool, hasTool } = await import('../dist/src/mcp-client.js');
24
24
 
25
- const VERSION = '1.0.1';
25
+ const VERSION = '1.2.0';
26
26
  const sessionId = `mcp-${Date.now()}-${randomUUID().slice(0, 8)}`;
27
27
 
28
28
  console.error(
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * @claude-flow/cli - MCP Server Entry Point
3
+ * @odd-flow/cli - MCP Server Entry Point
4
4
  *
5
5
  * Direct stdio MCP server for Claude Code integration.
6
6
  * This entry point handles stdin/stdout directly for MCP protocol
@@ -10,7 +10,7 @@
10
10
  import { randomUUID } from 'crypto';
11
11
  import { listMCPTools, callMCPTool, hasTool } from '../dist/src/mcp-client.js';
12
12
 
13
- const VERSION = '1.0.1';
13
+ const VERSION = '1.2.0';
14
14
  const sessionId = `mcp-${Date.now()}-${randomUUID().slice(0, 8)}`;
15
15
 
16
16
  // Log to stderr (doesn't corrupt stdout for MCP protocol)
@@ -9,7 +9,7 @@
9
9
  *
10
10
  * Zero external dependencies. node-llama-cpp is an optional peer.
11
11
  *
12
- * @module @claude-flow/cli/appliance/gguf-engine
12
+ * @module @odd-flow/cli/appliance/gguf-engine
13
13
  */
14
14
  export interface GgufMetadata {
15
15
  magic: string;
@@ -9,7 +9,7 @@
9
9
  *
10
10
  * Zero external dependencies. node-llama-cpp is an optional peer.
11
11
  *
12
- * @module @claude-flow/cli/appliance/gguf-engine
12
+ * @module @odd-flow/cli/appliance/gguf-engine
13
13
  */
14
14
  import { open, readFile, writeFile, stat as fsStat } from 'node:fs/promises';
15
15
  import { createHash } from 'node:crypto';
@@ -10,7 +10,7 @@
10
10
  * All @ruvector/* packages are optional peer dependencies.
11
11
  * The bridge degrades gracefully when they are absent.
12
12
  *
13
- * @module @claude-flow/cli/appliance/ruvllm-bridge
13
+ * @module @odd-flow/cli/appliance/ruvllm-bridge
14
14
  */
15
15
  export interface RuvllmConfig {
16
16
  modelsDir: string;
@@ -10,7 +10,7 @@
10
10
  * All @ruvector/* packages are optional peer dependencies.
11
11
  * The bridge degrades gracefully when they are absent.
12
12
  *
13
- * @module @claude-flow/cli/appliance/ruvllm-bridge
13
+ * @module @odd-flow/cli/appliance/ruvllm-bridge
14
14
  */
15
15
  import { readdir, stat } from 'node:fs/promises';
16
16
  import { join, extname, basename } from 'node:path';
@@ -4,7 +4,7 @@
4
4
  * Supports three run modes (cli, mcp, verify) and two isolation
5
5
  * strategies (native Node.js, container via Docker).
6
6
  *
7
- * @module @claude-flow/cli/appliance/rvfa-runner
7
+ * @module @odd-flow/cli/appliance/rvfa-runner
8
8
  */
9
9
  import type { RvfaHeader } from './rvfa-format.js';
10
10
  export interface RunOptions {
@@ -4,7 +4,7 @@
4
4
  * Supports three run modes (cli, mcp, verify) and two isolation
5
5
  * strategies (native Node.js, container via Docker).
6
6
  *
7
- * @module @claude-flow/cli/appliance/rvfa-runner
7
+ * @module @odd-flow/cli/appliance/rvfa-runner
8
8
  */
9
9
  import { writeFile, mkdir, rm } from 'node:fs/promises';
10
10
  import { join } from 'node:path';
@@ -4,7 +4,7 @@
4
4
  * Provides tamper detection and publisher identity verification using
5
5
  * Ed25519 (RFC 8032) via Node.js native crypto. Zero external dependencies.
6
6
  *
7
- * @module @claude-flow/cli/appliance/rvfa-signing
7
+ * @module @odd-flow/cli/appliance/rvfa-signing
8
8
  */
9
9
  export interface RvfaKeyPair {
10
10
  publicKey: Buffer;
@@ -4,7 +4,7 @@
4
4
  * Provides tamper detection and publisher identity verification using
5
5
  * Ed25519 (RFC 8032) via Node.js native crypto. Zero external dependencies.
6
6
  *
7
- * @module @claude-flow/cli/appliance/rvfa-signing
7
+ * @module @odd-flow/cli/appliance/rvfa-signing
8
8
  */
9
9
  import { generateKeyPairSync, createHash, sign, verify, createPublicKey, createPrivateKey, } from 'node:crypto';
10
10
  import { readFile, writeFile, stat, chmod, mkdir } from 'node:fs/promises';
@@ -7,9 +7,9 @@
7
7
  * ADR-072: Autopilot Integration
8
8
  * Security: Addresses prototype pollution, NaN bypass, input validation
9
9
  */
10
- export declare const STATE_DIR = ".claude-flow/data";
11
- export declare const STATE_FILE = ".claude-flow/data/autopilot-state.json";
12
- export declare const LOG_FILE = ".claude-flow/data/autopilot-log.json";
10
+ export declare const STATE_DIR = ".odd-flow/data";
11
+ export declare const STATE_FILE = ".odd-flow/data/autopilot-state.json";
12
+ export declare const LOG_FILE = ".odd-flow/data/autopilot-log.json";
13
13
  /** Allowlist for valid task sources */
14
14
  export declare const VALID_TASK_SOURCES: Set<string>;
15
15
  /** Terminal task statuses */
@@ -8,7 +8,7 @@
8
8
  * Security: Addresses prototype pollution, NaN bypass, input validation
9
9
  */
10
10
  // ── Constants ─────────────────────────────────────────────────
11
- export const STATE_DIR = '.claude-flow/data';
11
+ export const STATE_DIR = '.odd-flow/data';
12
12
  export const STATE_FILE = `${STATE_DIR}/autopilot-state.json`;
13
13
  export const LOG_FILE = `${STATE_DIR}/autopilot-log.json`;
14
14
  /** Maximum entries kept in state.history (prevents unbounded growth) */
@@ -201,7 +201,7 @@ export function discoverTasks(sources) {
201
201
  catch { /* skip source */ }
202
202
  }
203
203
  if (source === 'swarm-tasks') {
204
- const swarmFile = path.resolve('.claude-flow/swarm-tasks.json');
204
+ const swarmFile = path.resolve('.odd-flow/swarm-tasks.json');
205
205
  try {
206
206
  if (fs.existsSync(swarmFile)) {
207
207
  const data = safeJsonParse(fs.readFileSync(swarmFile, 'utf-8'));
@@ -222,7 +222,7 @@ export function discoverTasks(sources) {
222
222
  catch { /* skip source */ }
223
223
  }
224
224
  if (source === 'file-checklist') {
225
- const checklistFile = path.resolve('.claude-flow/data/checklist.json');
225
+ const checklistFile = path.resolve('.odd-flow/data/checklist.json');
226
226
  try {
227
227
  if (fs.existsSync(checklistFile)) {
228
228
  const data = safeJsonParse(fs.readFileSync(checklistFile, 'utf-8'));
@@ -17,7 +17,7 @@ export const wasmStatusCommand = {
17
17
  description: 'Check rvagent-wasm availability, version, and capabilities',
18
18
  options: [],
19
19
  examples: [
20
- { command: 'claude-flow agent wasm-status', description: 'Check WASM agent runtime status' },
20
+ { command: 'odd-flow agent wasm-status', description: 'Check WASM agent runtime status' },
21
21
  ],
22
22
  action: async (ctx) => {
23
23
  try {
@@ -123,9 +123,9 @@ export const wasmCreateCommand = {
123
123
  },
124
124
  ],
125
125
  examples: [
126
- { command: 'claude-flow agent wasm-create', description: 'Create a default WASM agent' },
127
- { command: 'claude-flow agent wasm-create -t coder', description: 'Create from gallery template' },
128
- { command: 'claude-flow agent wasm-create -m "anthropic:claude-sonnet-4-20250514" -i "You are a security auditor"', description: 'Create with custom config' },
126
+ { command: 'odd-flow agent wasm-create', description: 'Create a default WASM agent' },
127
+ { command: 'odd-flow agent wasm-create -t coder', description: 'Create from gallery template' },
128
+ { command: 'odd-flow agent wasm-create -m "anthropic:claude-sonnet-4-20250514" -i "You are a security auditor"', description: 'Create with custom config' },
129
129
  ],
130
130
  action: async (ctx) => {
131
131
  try {
@@ -198,7 +198,7 @@ export const wasmPromptCommand = {
198
198
  },
199
199
  ],
200
200
  examples: [
201
- { command: 'claude-flow agent wasm-prompt -a wasm-agent-1-abc -i "Write a hello world"', description: 'Send prompt to WASM agent' },
201
+ { command: 'odd-flow agent wasm-prompt -a wasm-agent-1-abc -i "Write a hello world"', description: 'Send prompt to WASM agent' },
202
202
  ],
203
203
  action: async (ctx) => {
204
204
  const agentId = ctx.flags['agent-id'] || ctx.args[0];
@@ -261,8 +261,8 @@ export const wasmGalleryCommand = {
261
261
  },
262
262
  ],
263
263
  examples: [
264
- { command: 'claude-flow agent wasm-gallery', description: 'List all gallery templates' },
265
- { command: 'claude-flow agent wasm-gallery -s coder', description: 'Search gallery templates' },
264
+ { command: 'odd-flow agent wasm-gallery', description: 'List all gallery templates' },
265
+ { command: 'odd-flow agent wasm-gallery -s coder', description: 'Search gallery templates' },
266
266
  ],
267
267
  action: async (ctx) => {
268
268
  try {
@@ -14,7 +14,7 @@ import * as path from 'path';
14
14
  */
15
15
  function updateSwarmActivityMetrics(agentCountDelta) {
16
16
  try {
17
- const metricsDir = path.join(process.cwd(), '.claude-flow', 'metrics');
17
+ const metricsDir = path.join(process.cwd(), '.odd-flow', 'metrics');
18
18
  const activityPath = path.join(metricsDir, 'swarm-activity.json');
19
19
  let data = {
20
20
  timestamp: new Date().toISOString(),
@@ -108,8 +108,8 @@ const spawnCommand = {
108
108
  }
109
109
  ],
110
110
  examples: [
111
- { command: 'claude-flow agent spawn --type coder --name bot-1', description: 'Spawn a coder agent' },
112
- { command: 'claude-flow agent spawn -t researcher --task "Research React 19"', description: 'Spawn researcher with task' }
111
+ { command: 'odd-flow agent spawn --type coder --name bot-1', description: 'Spawn a coder agent' },
112
+ { command: 'odd-flow agent spawn -t researcher --task "Research React 19"', description: 'Spawn researcher with task' }
113
113
  ],
114
114
  action: async (ctx) => {
115
115
  let agentType = ctx.flags.type;
@@ -579,8 +579,8 @@ const poolCommand = {
579
579
  }
580
580
  ],
581
581
  examples: [
582
- { command: 'claude-flow agent pool --size 5', description: 'Set pool size' },
583
- { command: 'claude-flow agent pool --min 2 --max 15', description: 'Configure auto-scaling' }
582
+ { command: 'odd-flow agent pool --size 5', description: 'Set pool size' },
583
+ { command: 'odd-flow agent pool --min 2 --max 15', description: 'Configure auto-scaling' }
584
584
  ],
585
585
  action: async (ctx) => {
586
586
  try {
@@ -656,8 +656,8 @@ const healthCommand = {
656
656
  }
657
657
  ],
658
658
  examples: [
659
- { command: 'claude-flow agent health', description: 'Show all agents health' },
660
- { command: 'claude-flow agent health -i agent-001 -d', description: 'Detailed health for specific agent' }
659
+ { command: 'odd-flow agent health', description: 'Show all agents health' },
660
+ { command: 'odd-flow agent health -i agent-001 -d', description: 'Detailed health for specific agent' }
661
661
  ],
662
662
  action: async (ctx) => {
663
663
  const agentId = ctx.args[0] || ctx.flags.id;
@@ -779,9 +779,9 @@ const logsCommand = {
779
779
  }
780
780
  ],
781
781
  examples: [
782
- { command: 'claude-flow agent logs -i agent-001', description: 'Show agent logs' },
783
- { command: 'claude-flow agent logs -i agent-001 -f', description: 'Follow agent logs' },
784
- { command: 'claude-flow agent logs -l error --since 1h', description: 'Show errors from last hour' }
782
+ { command: 'odd-flow agent logs -i agent-001', description: 'Show agent logs' },
783
+ { command: 'odd-flow agent logs -i agent-001 -f', description: 'Follow agent logs' },
784
+ { command: 'odd-flow agent logs -l error --since 1h', description: 'Show errors from last hour' }
785
785
  ],
786
786
  action: async (ctx) => {
787
787
  const agentId = ctx.args[0] || ctx.flags.id;
@@ -861,16 +861,16 @@ export const agentCommand = {
861
861
  subcommands: [spawnCommand, listCommand, statusCommand, stopCommand, metricsCommand, poolCommand, healthCommand, logsCommand, ...wasmSubcommands],
862
862
  options: [],
863
863
  examples: [
864
- { command: 'claude-flow agent spawn -t coder', description: 'Spawn a coder agent' },
865
- { command: 'claude-flow agent list', description: 'List all agents' },
866
- { command: 'claude-flow agent status agent-001', description: 'Show agent status' }
864
+ { command: 'odd-flow agent spawn -t coder', description: 'Spawn a coder agent' },
865
+ { command: 'odd-flow agent list', description: 'List all agents' },
866
+ { command: 'odd-flow agent status agent-001', description: 'Show agent status' }
867
867
  ],
868
868
  action: async (ctx) => {
869
869
  // Show help if no subcommand
870
870
  output.writeln();
871
871
  output.writeln(output.bold('Agent Management Commands'));
872
872
  output.writeln();
873
- output.writeln('Usage: claude-flow agent <subcommand> [options]');
873
+ output.writeln('Usage: odd-flow agent <subcommand> [options]');
874
874
  output.writeln();
875
875
  output.writeln('Subcommands:');
876
876
  output.printList([
@@ -888,7 +888,7 @@ export const agentCommand = {
888
888
  `${output.highlight('wasm-gallery')} - List WASM agent gallery templates`,
889
889
  ]);
890
890
  output.writeln();
891
- output.writeln('Run "claude-flow agent <subcommand> --help" for subcommand help');
891
+ output.writeln('Run "odd-flow agent <subcommand> --help" for subcommand help');
892
892
  return { success: true };
893
893
  }
894
894
  };