monomind 1.9.17 → 1.10.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 (701) hide show
  1. package/.claude/commands/mastermind/_repeat.md +182 -39
  2. package/.claude/commands/mastermind/architect.md +17 -11
  3. package/.claude/commands/mastermind/brain.md +4 -0
  4. package/.claude/commands/mastermind/build.md +4 -0
  5. package/.claude/commands/mastermind/content.md +4 -0
  6. package/.claude/commands/mastermind/createorg.md +5 -3
  7. package/.claude/commands/mastermind/finance.md +4 -0
  8. package/.claude/commands/mastermind/idea.md +4 -0
  9. package/.claude/commands/mastermind/marketing.md +4 -0
  10. package/.claude/commands/mastermind/master.md +63 -37
  11. package/.claude/commands/mastermind/ops.md +4 -0
  12. package/.claude/commands/mastermind/release.md +4 -0
  13. package/.claude/commands/mastermind/research.md +4 -0
  14. package/.claude/commands/mastermind/review.md +4 -0
  15. package/.claude/commands/mastermind/runorg.md +5 -3
  16. package/.claude/commands/mastermind/sales.md +4 -0
  17. package/.claude/commands/mastermind/techport.md +9 -0
  18. package/.claude/commands/monomind/do.md +5 -1
  19. package/.claude/commands/monomind/idea.md +5 -1
  20. package/.claude/commands/monomind/improve.md +5 -1
  21. package/.claude/commands/monomind/repeat.md +85 -29
  22. package/.claude/commands/monomind/review.md +6 -2
  23. package/.claude/commands/monomind/understand.md +10 -8
  24. package/.claude/helpers/extras-registry.json +235 -235
  25. package/.claude/helpers/graphify-freshen.cjs +13 -1
  26. package/.claude/helpers/hook-handler.cjs +1 -1
  27. package/.claude/helpers/router.cjs +4 -1
  28. package/.claude/scheduled_tasks.lock +1 -1
  29. package/.claude/settings.json +3 -3
  30. package/.claude/settings.local.json +3 -3
  31. package/.claude/skills/.monomind/sessions/current.json +1 -1
  32. package/.claude/skills/.monomind/sessions/session-1777829336455.json +1 -1
  33. package/.claude/skills/.monomind/sessions/session-1777831614725.json +1 -1
  34. package/.claude/skills/.monomind/sessions/session-1777832095857.json +1 -1
  35. package/.claude/skills/.monomind/sessions/session-1777839814183.json +1 -1
  36. package/.claude/skills/.monomind/sessions/session-1777841847131.json +1 -1
  37. package/.claude/skills/.monomind/sessions/session-1777843309463.json +1 -1
  38. package/.claude/skills/.monomind/sessions/session-1777880867159.json +1 -1
  39. package/.claude/skills/.monomind/sessions/session-1777881884593.json +1 -1
  40. package/.claude/skills/.monomind/sessions/session-1777884090471.json +1 -1
  41. package/.claude/skills/.monomind/sessions/session-1777884808221.json +1 -1
  42. package/.claude/skills/.monomind/sessions/session-1777885672155.json +1 -1
  43. package/.claude/skills/.monomind/sessions/session-1777886852818.json +1 -1
  44. package/.claude/skills/.monomind/sessions/session-1777896532690.json +1 -1
  45. package/.claude/skills/mastermind/_protocol.md +28 -21
  46. package/.claude/skills/mastermind/access.md +236 -0
  47. package/.claude/skills/mastermind/activity.md +191 -0
  48. package/.claude/skills/mastermind/adapter-manager.md +259 -0
  49. package/.claude/skills/mastermind/adapters.md +204 -0
  50. package/.claude/skills/mastermind/agent-detail.md +242 -0
  51. package/.claude/skills/mastermind/agents.md +178 -0
  52. package/.claude/skills/mastermind/approval-detail.md +259 -0
  53. package/.claude/skills/mastermind/approve.md +181 -0
  54. package/.claude/skills/mastermind/architect.md +24 -8
  55. package/.claude/skills/mastermind/backup.md +197 -0
  56. package/.claude/skills/mastermind/bootstrap.md +190 -0
  57. package/.claude/skills/mastermind/budgets.md +237 -0
  58. package/.claude/skills/mastermind/companies.md +256 -0
  59. package/.claude/skills/mastermind/costs.md +151 -0
  60. package/.claude/skills/mastermind/createorg.md +23 -5
  61. package/.claude/skills/mastermind/diagnose.md +249 -0
  62. package/.claude/skills/mastermind/env.md +198 -0
  63. package/.claude/skills/mastermind/environments.md +250 -0
  64. package/.claude/skills/mastermind/export.md +324 -0
  65. package/.claude/skills/mastermind/goal-detail.md +255 -0
  66. package/.claude/skills/mastermind/goals.md +149 -0
  67. package/.claude/skills/mastermind/heartbeat.md +164 -0
  68. package/.claude/skills/mastermind/idea.md +250 -122
  69. package/.claude/skills/mastermind/import.md +281 -0
  70. package/.claude/skills/mastermind/inbox.md +214 -0
  71. package/.claude/skills/mastermind/instance-settings.md +315 -0
  72. package/.claude/skills/mastermind/instance.md +231 -0
  73. package/.claude/skills/mastermind/invite-landing.md +227 -0
  74. package/.claude/skills/mastermind/invites.md +254 -0
  75. package/.claude/skills/mastermind/issue-detail.md +291 -0
  76. package/.claude/skills/mastermind/issues.md +235 -0
  77. package/.claude/skills/mastermind/join-queue.md +170 -0
  78. package/.claude/skills/mastermind/liveness.md +392 -0
  79. package/.claude/skills/mastermind/memory.md +321 -0
  80. package/.claude/skills/mastermind/my-issues.md +146 -0
  81. package/.claude/skills/mastermind/new-agent.md +241 -0
  82. package/.claude/skills/mastermind/org-chart.md +207 -0
  83. package/.claude/skills/mastermind/org-settings.md +217 -0
  84. package/.claude/skills/mastermind/plan-to-tasks.md +136 -0
  85. package/.claude/skills/mastermind/plugin-manager.md +241 -0
  86. package/.claude/skills/mastermind/plugin-settings.md +273 -0
  87. package/.claude/skills/mastermind/plugins.md +190 -0
  88. package/.claude/skills/mastermind/profile.md +187 -0
  89. package/.claude/skills/mastermind/project-detail.md +249 -0
  90. package/.claude/skills/mastermind/project-workspace.md +244 -0
  91. package/.claude/skills/mastermind/projects.md +164 -0
  92. package/.claude/skills/mastermind/routine-detail.md +253 -0
  93. package/.claude/skills/mastermind/routines.md +202 -0
  94. package/.claude/skills/mastermind/runorg.md +74 -9
  95. package/.claude/skills/mastermind/search.md +186 -0
  96. package/.claude/skills/mastermind/secrets.md +199 -0
  97. package/.claude/skills/mastermind/skills.md +156 -0
  98. package/.claude/skills/mastermind/tasks.md +149 -0
  99. package/.claude/skills/mastermind/techport.md +5 -5
  100. package/.claude/skills/mastermind/threads.md +259 -0
  101. package/.claude/skills/mastermind/tree-control.md +250 -0
  102. package/.claude/skills/mastermind/wiki.md +314 -0
  103. package/.claude/skills/mastermind/workspace-detail.md +317 -0
  104. package/.claude/skills/mastermind/workspaces.md +261 -0
  105. package/.claude/skills/mastermind/worktree.md +187 -0
  106. package/LICENSE +1 -1
  107. package/package.json +1 -1
  108. package/packages/@monomind/cli/package.json +1 -1
  109. package/packages/@monomind/cli/bundled-graph/dist/src/analyze.d.ts +0 -32
  110. package/packages/@monomind/cli/bundled-graph/dist/src/analyze.d.ts.map +0 -1
  111. package/packages/@monomind/cli/bundled-graph/dist/src/analyze.js +0 -297
  112. package/packages/@monomind/cli/bundled-graph/dist/src/analyze.js.map +0 -1
  113. package/packages/@monomind/cli/bundled-graph/dist/src/build.d.ts +0 -8
  114. package/packages/@monomind/cli/bundled-graph/dist/src/build.d.ts.map +0 -1
  115. package/packages/@monomind/cli/bundled-graph/dist/src/build.js +0 -73
  116. package/packages/@monomind/cli/bundled-graph/dist/src/build.js.map +0 -1
  117. package/packages/@monomind/cli/bundled-graph/dist/src/cache.d.ts +0 -12
  118. package/packages/@monomind/cli/bundled-graph/dist/src/cache.d.ts.map +0 -1
  119. package/packages/@monomind/cli/bundled-graph/dist/src/cache.js +0 -43
  120. package/packages/@monomind/cli/bundled-graph/dist/src/cache.js.map +0 -1
  121. package/packages/@monomind/cli/bundled-graph/dist/src/cluster.d.ts +0 -5
  122. package/packages/@monomind/cli/bundled-graph/dist/src/cluster.d.ts.map +0 -1
  123. package/packages/@monomind/cli/bundled-graph/dist/src/cluster.js +0 -120
  124. package/packages/@monomind/cli/bundled-graph/dist/src/cluster.js.map +0 -1
  125. package/packages/@monomind/cli/bundled-graph/dist/src/detect.d.ts +0 -21
  126. package/packages/@monomind/cli/bundled-graph/dist/src/detect.d.ts.map +0 -1
  127. package/packages/@monomind/cli/bundled-graph/dist/src/detect.js +0 -195
  128. package/packages/@monomind/cli/bundled-graph/dist/src/detect.js.map +0 -1
  129. package/packages/@monomind/cli/bundled-graph/dist/src/export.d.ts +0 -21
  130. package/packages/@monomind/cli/bundled-graph/dist/src/export.d.ts.map +0 -1
  131. package/packages/@monomind/cli/bundled-graph/dist/src/export.js +0 -68
  132. package/packages/@monomind/cli/bundled-graph/dist/src/export.js.map +0 -1
  133. package/packages/@monomind/cli/bundled-graph/dist/src/extract/index.d.ts +0 -20
  134. package/packages/@monomind/cli/bundled-graph/dist/src/extract/index.d.ts.map +0 -1
  135. package/packages/@monomind/cli/bundled-graph/dist/src/extract/index.js +0 -158
  136. package/packages/@monomind/cli/bundled-graph/dist/src/extract/index.js.map +0 -1
  137. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/c.d.ts +0 -3
  138. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/c.d.ts.map +0 -1
  139. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/c.js +0 -88
  140. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/c.js.map +0 -1
  141. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/cpp.d.ts +0 -3
  142. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/cpp.d.ts.map +0 -1
  143. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/cpp.js +0 -121
  144. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/cpp.js.map +0 -1
  145. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/csharp.d.ts +0 -3
  146. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/csharp.d.ts.map +0 -1
  147. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/csharp.js +0 -121
  148. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/csharp.js.map +0 -1
  149. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/go.d.ts +0 -3
  150. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/go.d.ts.map +0 -1
  151. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/go.js +0 -181
  152. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/go.js.map +0 -1
  153. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/java.d.ts +0 -3
  154. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/java.d.ts.map +0 -1
  155. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/java.js +0 -117
  156. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/java.js.map +0 -1
  157. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/kotlin.d.ts +0 -3
  158. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/kotlin.d.ts.map +0 -1
  159. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/kotlin.js +0 -112
  160. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/kotlin.js.map +0 -1
  161. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/php.d.ts +0 -3
  162. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/php.d.ts.map +0 -1
  163. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/php.js +0 -130
  164. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/php.js.map +0 -1
  165. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/python.d.ts +0 -3
  166. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/python.d.ts.map +0 -1
  167. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/python.js +0 -230
  168. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/python.js.map +0 -1
  169. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/ruby.d.ts +0 -3
  170. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/ruby.d.ts.map +0 -1
  171. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/ruby.js +0 -120
  172. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/ruby.js.map +0 -1
  173. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/rust.d.ts +0 -3
  174. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/rust.d.ts.map +0 -1
  175. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/rust.js +0 -195
  176. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/rust.js.map +0 -1
  177. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/scala.d.ts +0 -3
  178. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/scala.d.ts.map +0 -1
  179. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/scala.js +0 -110
  180. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/scala.js.map +0 -1
  181. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/swift.d.ts +0 -3
  182. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/swift.d.ts.map +0 -1
  183. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/swift.js +0 -122
  184. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/swift.js.map +0 -1
  185. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/typescript.d.ts +0 -3
  186. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/typescript.d.ts.map +0 -1
  187. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/typescript.js +0 -295
  188. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/typescript.js.map +0 -1
  189. package/packages/@monomind/cli/bundled-graph/dist/src/extract/semantic.d.ts +0 -38
  190. package/packages/@monomind/cli/bundled-graph/dist/src/extract/semantic.d.ts.map +0 -1
  191. package/packages/@monomind/cli/bundled-graph/dist/src/extract/semantic.js +0 -242
  192. package/packages/@monomind/cli/bundled-graph/dist/src/extract/semantic.js.map +0 -1
  193. package/packages/@monomind/cli/bundled-graph/dist/src/extract/tree-sitter-runner.d.ts +0 -48
  194. package/packages/@monomind/cli/bundled-graph/dist/src/extract/tree-sitter-runner.d.ts.map +0 -1
  195. package/packages/@monomind/cli/bundled-graph/dist/src/extract/tree-sitter-runner.js +0 -137
  196. package/packages/@monomind/cli/bundled-graph/dist/src/extract/tree-sitter-runner.js.map +0 -1
  197. package/packages/@monomind/cli/bundled-graph/dist/src/extract/types.d.ts +0 -7
  198. package/packages/@monomind/cli/bundled-graph/dist/src/extract/types.d.ts.map +0 -1
  199. package/packages/@monomind/cli/bundled-graph/dist/src/extract/types.js +0 -2
  200. package/packages/@monomind/cli/bundled-graph/dist/src/extract/types.js.map +0 -1
  201. package/packages/@monomind/cli/bundled-graph/dist/src/index.d.ts +0 -28
  202. package/packages/@monomind/cli/bundled-graph/dist/src/index.d.ts.map +0 -1
  203. package/packages/@monomind/cli/bundled-graph/dist/src/index.js +0 -26
  204. package/packages/@monomind/cli/bundled-graph/dist/src/index.js.map +0 -1
  205. package/packages/@monomind/cli/bundled-graph/dist/src/pipeline.d.ts +0 -27
  206. package/packages/@monomind/cli/bundled-graph/dist/src/pipeline.d.ts.map +0 -1
  207. package/packages/@monomind/cli/bundled-graph/dist/src/pipeline.js +0 -269
  208. package/packages/@monomind/cli/bundled-graph/dist/src/pipeline.js.map +0 -1
  209. package/packages/@monomind/cli/bundled-graph/dist/src/report.d.ts +0 -26
  210. package/packages/@monomind/cli/bundled-graph/dist/src/report.d.ts.map +0 -1
  211. package/packages/@monomind/cli/bundled-graph/dist/src/report.js +0 -214
  212. package/packages/@monomind/cli/bundled-graph/dist/src/report.js.map +0 -1
  213. package/packages/@monomind/cli/bundled-graph/dist/src/types.d.ts +0 -124
  214. package/packages/@monomind/cli/bundled-graph/dist/src/types.d.ts.map +0 -1
  215. package/packages/@monomind/cli/bundled-graph/dist/src/types.js +0 -2
  216. package/packages/@monomind/cli/bundled-graph/dist/src/types.js.map +0 -1
  217. package/packages/@monomind/cli/bundled-graph/dist/src/visualize.d.ts +0 -4
  218. package/packages/@monomind/cli/bundled-graph/dist/src/visualize.d.ts.map +0 -1
  219. package/packages/@monomind/cli/bundled-graph/dist/src/visualize.js +0 -574
  220. package/packages/@monomind/cli/bundled-graph/dist/src/visualize.js.map +0 -1
  221. package/packages/@monomind/cli/dist/src/agents/halt-signal.d.ts +0 -25
  222. package/packages/@monomind/cli/dist/src/agents/halt-signal.js +0 -76
  223. package/packages/@monomind/cli/dist/src/agents/index.d.ts +0 -18
  224. package/packages/@monomind/cli/dist/src/agents/index.js +0 -13
  225. package/packages/@monomind/cli/dist/src/agents/managed-agent.d.ts +0 -41
  226. package/packages/@monomind/cli/dist/src/agents/managed-agent.js +0 -69
  227. package/packages/@monomind/cli/dist/src/agents/prompt-experiment.d.ts +0 -23
  228. package/packages/@monomind/cli/dist/src/agents/prompt-experiment.js +0 -49
  229. package/packages/@monomind/cli/dist/src/agents/prompt-version-manager.d.ts +0 -22
  230. package/packages/@monomind/cli/dist/src/agents/prompt-version-manager.js +0 -80
  231. package/packages/@monomind/cli/dist/src/agents/registry-builder.d.ts +0 -36
  232. package/packages/@monomind/cli/dist/src/agents/registry-builder.js +0 -200
  233. package/packages/@monomind/cli/dist/src/agents/registry-query.d.ts +0 -71
  234. package/packages/@monomind/cli/dist/src/agents/registry-query.js +0 -125
  235. package/packages/@monomind/cli/dist/src/agents/score-decay.d.ts +0 -19
  236. package/packages/@monomind/cli/dist/src/agents/score-decay.js +0 -22
  237. package/packages/@monomind/cli/dist/src/agents/shared-instructions-loader.d.ts +0 -13
  238. package/packages/@monomind/cli/dist/src/agents/shared-instructions-loader.js +0 -40
  239. package/packages/@monomind/cli/dist/src/agents/specialization-scorer.d.ts +0 -54
  240. package/packages/@monomind/cli/dist/src/agents/specialization-scorer.js +0 -212
  241. package/packages/@monomind/cli/dist/src/agents/termination-watcher.d.ts +0 -30
  242. package/packages/@monomind/cli/dist/src/agents/termination-watcher.js +0 -84
  243. package/packages/@monomind/cli/dist/src/agents/trigger-index.d.ts +0 -20
  244. package/packages/@monomind/cli/dist/src/agents/trigger-index.js +0 -38
  245. package/packages/@monomind/cli/dist/src/agents/trigger-scanner.d.ts +0 -64
  246. package/packages/@monomind/cli/dist/src/agents/trigger-scanner.js +0 -308
  247. package/packages/@monomind/cli/dist/src/agents/version-diff.d.ts +0 -18
  248. package/packages/@monomind/cli/dist/src/agents/version-diff.js +0 -64
  249. package/packages/@monomind/cli/dist/src/agents/version-store.d.ts +0 -60
  250. package/packages/@monomind/cli/dist/src/agents/version-store.js +0 -235
  251. package/packages/@monomind/cli/dist/src/autopilot-state.d.ts +0 -77
  252. package/packages/@monomind/cli/dist/src/autopilot-state.js +0 -330
  253. package/packages/@monomind/cli/dist/src/benchmarks/benchmark-runner.d.ts +0 -87
  254. package/packages/@monomind/cli/dist/src/benchmarks/benchmark-runner.js +0 -273
  255. package/packages/@monomind/cli/dist/src/benchmarks/metric-evaluators.d.ts +0 -36
  256. package/packages/@monomind/cli/dist/src/benchmarks/metric-evaluators.js +0 -114
  257. package/packages/@monomind/cli/dist/src/benchmarks/pretrain/index.d.ts +0 -58
  258. package/packages/@monomind/cli/dist/src/benchmarks/pretrain/index.js +0 -404
  259. package/packages/@monomind/cli/dist/src/commands/agent-wasm.d.ts +0 -14
  260. package/packages/@monomind/cli/dist/src/commands/agent-wasm.js +0 -333
  261. package/packages/@monomind/cli/dist/src/commands/agent.d.ts +0 -8
  262. package/packages/@monomind/cli/dist/src/commands/agent.js +0 -943
  263. package/packages/@monomind/cli/dist/src/commands/analyze.d.ts +0 -19
  264. package/packages/@monomind/cli/dist/src/commands/analyze.js +0 -2048
  265. package/packages/@monomind/cli/dist/src/commands/appliance-advanced.d.ts +0 -9
  266. package/packages/@monomind/cli/dist/src/commands/appliance-advanced.js +0 -238
  267. package/packages/@monomind/cli/dist/src/commands/appliance.d.ts +0 -8
  268. package/packages/@monomind/cli/dist/src/commands/appliance.js +0 -406
  269. package/packages/@monomind/cli/dist/src/commands/autopilot.d.ts +0 -15
  270. package/packages/@monomind/cli/dist/src/commands/autopilot.js +0 -362
  271. package/packages/@monomind/cli/dist/src/commands/benchmark.d.ts +0 -10
  272. package/packages/@monomind/cli/dist/src/commands/benchmark.js +0 -571
  273. package/packages/@monomind/cli/dist/src/commands/claims.d.ts +0 -10
  274. package/packages/@monomind/cli/dist/src/commands/claims.js +0 -632
  275. package/packages/@monomind/cli/dist/src/commands/cleanup.d.ts +0 -13
  276. package/packages/@monomind/cli/dist/src/commands/cleanup.js +0 -218
  277. package/packages/@monomind/cli/dist/src/commands/completions.d.ts +0 -10
  278. package/packages/@monomind/cli/dist/src/commands/completions.js +0 -539
  279. package/packages/@monomind/cli/dist/src/commands/config.d.ts +0 -8
  280. package/packages/@monomind/cli/dist/src/commands/config.js +0 -460
  281. package/packages/@monomind/cli/dist/src/commands/daemon.d.ts +0 -8
  282. package/packages/@monomind/cli/dist/src/commands/daemon.js +0 -671
  283. package/packages/@monomind/cli/dist/src/commands/deployment.d.ts +0 -10
  284. package/packages/@monomind/cli/dist/src/commands/deployment.js +0 -691
  285. package/packages/@monomind/cli/dist/src/commands/doctor.d.ts +0 -10
  286. package/packages/@monomind/cli/dist/src/commands/doctor.js +0 -647
  287. package/packages/@monomind/cli/dist/src/commands/embeddings.d.ts +0 -18
  288. package/packages/@monomind/cli/dist/src/commands/embeddings.js +0 -1652
  289. package/packages/@monomind/cli/dist/src/commands/guidance.d.ts +0 -8
  290. package/packages/@monomind/cli/dist/src/commands/guidance.js +0 -560
  291. package/packages/@monomind/cli/dist/src/commands/hive-mind.d.ts +0 -11
  292. package/packages/@monomind/cli/dist/src/commands/hive-mind.js +0 -1238
  293. package/packages/@monomind/cli/dist/src/commands/hooks.d.ts +0 -8
  294. package/packages/@monomind/cli/dist/src/commands/hooks.js +0 -4446
  295. package/packages/@monomind/cli/dist/src/commands/index.d.ts +0 -119
  296. package/packages/@monomind/cli/dist/src/commands/index.js +0 -404
  297. package/packages/@monomind/cli/dist/src/commands/init.d.ts +0 -8
  298. package/packages/@monomind/cli/dist/src/commands/init.js +0 -853
  299. package/packages/@monomind/cli/dist/src/commands/issues.d.ts +0 -21
  300. package/packages/@monomind/cli/dist/src/commands/issues.js +0 -567
  301. package/packages/@monomind/cli/dist/src/commands/mcp.d.ts +0 -11
  302. package/packages/@monomind/cli/dist/src/commands/mcp.js +0 -705
  303. package/packages/@monomind/cli/dist/src/commands/memory.d.ts +0 -8
  304. package/packages/@monomind/cli/dist/src/commands/memory.js +0 -1596
  305. package/packages/@monomind/cli/dist/src/commands/migrate.d.ts +0 -8
  306. package/packages/@monomind/cli/dist/src/commands/migrate.js +0 -790
  307. package/packages/@monomind/cli/dist/src/commands/monograph.d.ts +0 -8
  308. package/packages/@monomind/cli/dist/src/commands/monograph.js +0 -526
  309. package/packages/@monomind/cli/dist/src/commands/neural.d.ts +0 -10
  310. package/packages/@monomind/cli/dist/src/commands/neural.js +0 -1494
  311. package/packages/@monomind/cli/dist/src/commands/performance.d.ts +0 -10
  312. package/packages/@monomind/cli/dist/src/commands/performance.js +0 -601
  313. package/packages/@monomind/cli/dist/src/commands/plugins.d.ts +0 -11
  314. package/packages/@monomind/cli/dist/src/commands/plugins.js +0 -796
  315. package/packages/@monomind/cli/dist/src/commands/process.d.ts +0 -10
  316. package/packages/@monomind/cli/dist/src/commands/process.js +0 -718
  317. package/packages/@monomind/cli/dist/src/commands/progress.d.ts +0 -11
  318. package/packages/@monomind/cli/dist/src/commands/progress.js +0 -259
  319. package/packages/@monomind/cli/dist/src/commands/providers.d.ts +0 -10
  320. package/packages/@monomind/cli/dist/src/commands/providers.js +0 -391
  321. package/packages/@monomind/cli/dist/src/commands/replay.d.ts +0 -8
  322. package/packages/@monomind/cli/dist/src/commands/replay.js +0 -60
  323. package/packages/@monomind/cli/dist/src/commands/route.d.ts +0 -16
  324. package/packages/@monomind/cli/dist/src/commands/route.js +0 -939
  325. package/packages/@monomind/cli/dist/src/commands/ruvector/backup.d.ts +0 -11
  326. package/packages/@monomind/cli/dist/src/commands/ruvector/backup.js +0 -746
  327. package/packages/@monomind/cli/dist/src/commands/ruvector/benchmark.d.ts +0 -11
  328. package/packages/@monomind/cli/dist/src/commands/ruvector/benchmark.js +0 -489
  329. package/packages/@monomind/cli/dist/src/commands/ruvector/import.d.ts +0 -18
  330. package/packages/@monomind/cli/dist/src/commands/ruvector/import.js +0 -359
  331. package/packages/@monomind/cli/dist/src/commands/ruvector/index.d.ts +0 -29
  332. package/packages/@monomind/cli/dist/src/commands/ruvector/index.js +0 -129
  333. package/packages/@monomind/cli/dist/src/commands/ruvector/init.d.ts +0 -11
  334. package/packages/@monomind/cli/dist/src/commands/ruvector/init.js +0 -481
  335. package/packages/@monomind/cli/dist/src/commands/ruvector/migrate.d.ts +0 -11
  336. package/packages/@monomind/cli/dist/src/commands/ruvector/migrate.js +0 -497
  337. package/packages/@monomind/cli/dist/src/commands/ruvector/optimize.d.ts +0 -11
  338. package/packages/@monomind/cli/dist/src/commands/ruvector/optimize.js +0 -504
  339. package/packages/@monomind/cli/dist/src/commands/ruvector/setup.d.ts +0 -18
  340. package/packages/@monomind/cli/dist/src/commands/ruvector/setup.js +0 -765
  341. package/packages/@monomind/cli/dist/src/commands/ruvector/status.d.ts +0 -11
  342. package/packages/@monomind/cli/dist/src/commands/ruvector/status.js +0 -491
  343. package/packages/@monomind/cli/dist/src/commands/security.d.ts +0 -10
  344. package/packages/@monomind/cli/dist/src/commands/security.js +0 -943
  345. package/packages/@monomind/cli/dist/src/commands/session.d.ts +0 -8
  346. package/packages/@monomind/cli/dist/src/commands/session.js +0 -793
  347. package/packages/@monomind/cli/dist/src/commands/start.d.ts +0 -8
  348. package/packages/@monomind/cli/dist/src/commands/start.js +0 -432
  349. package/packages/@monomind/cli/dist/src/commands/status.d.ts +0 -8
  350. package/packages/@monomind/cli/dist/src/commands/status.js +0 -591
  351. package/packages/@monomind/cli/dist/src/commands/swarm.d.ts +0 -8
  352. package/packages/@monomind/cli/dist/src/commands/swarm.js +0 -812
  353. package/packages/@monomind/cli/dist/src/commands/task.d.ts +0 -8
  354. package/packages/@monomind/cli/dist/src/commands/task.js +0 -671
  355. package/packages/@monomind/cli/dist/src/commands/tokens.d.ts +0 -8
  356. package/packages/@monomind/cli/dist/src/commands/tokens.js +0 -107
  357. package/packages/@monomind/cli/dist/src/commands/transfer-store.d.ts +0 -13
  358. package/packages/@monomind/cli/dist/src/commands/transfer-store.js +0 -428
  359. package/packages/@monomind/cli/dist/src/commands/ui.js +0 -68
  360. package/packages/@monomind/cli/dist/src/commands/update.d.ts +0 -8
  361. package/packages/@monomind/cli/dist/src/commands/update.js +0 -276
  362. package/packages/@monomind/cli/dist/src/commands/workflow.d.ts +0 -8
  363. package/packages/@monomind/cli/dist/src/commands/workflow.js +0 -644
  364. package/packages/@monomind/cli/dist/src/config-adapter.d.ts +0 -16
  365. package/packages/@monomind/cli/dist/src/config-adapter.js +0 -186
  366. package/packages/@monomind/cli/dist/src/consensus/audit-writer.d.ts +0 -50
  367. package/packages/@monomind/cli/dist/src/consensus/audit-writer.js +0 -142
  368. package/packages/@monomind/cli/dist/src/consensus/index.d.ts +0 -7
  369. package/packages/@monomind/cli/dist/src/consensus/index.js +0 -6
  370. package/packages/@monomind/cli/dist/src/consensus/vote-signer.d.ts +0 -36
  371. package/packages/@monomind/cli/dist/src/consensus/vote-signer.js +0 -71
  372. package/packages/@monomind/cli/dist/src/context/context-provider.d.ts +0 -44
  373. package/packages/@monomind/cli/dist/src/context/context-provider.js +0 -25
  374. package/packages/@monomind/cli/dist/src/context/git-state-provider.d.ts +0 -12
  375. package/packages/@monomind/cli/dist/src/context/git-state-provider.js +0 -34
  376. package/packages/@monomind/cli/dist/src/context/index.d.ts +0 -12
  377. package/packages/@monomind/cli/dist/src/context/index.js +0 -12
  378. package/packages/@monomind/cli/dist/src/context/project-conventions-provider.d.ts +0 -15
  379. package/packages/@monomind/cli/dist/src/context/project-conventions-provider.js +0 -19
  380. package/packages/@monomind/cli/dist/src/context/prompt-assembler.d.ts +0 -26
  381. package/packages/@monomind/cli/dist/src/context/prompt-assembler.js +0 -93
  382. package/packages/@monomind/cli/dist/src/context/task-history-provider.d.ts +0 -24
  383. package/packages/@monomind/cli/dist/src/context/task-history-provider.js +0 -32
  384. package/packages/@monomind/cli/dist/src/context/user-preferences-provider.d.ts +0 -14
  385. package/packages/@monomind/cli/dist/src/context/user-preferences-provider.js +0 -27
  386. package/packages/@monomind/cli/dist/src/dlq/dlq-reader.d.ts +0 -31
  387. package/packages/@monomind/cli/dist/src/dlq/dlq-reader.js +0 -81
  388. package/packages/@monomind/cli/dist/src/dlq/dlq-replayer.d.ts +0 -27
  389. package/packages/@monomind/cli/dist/src/dlq/dlq-replayer.js +0 -90
  390. package/packages/@monomind/cli/dist/src/dlq/dlq-writer.d.ts +0 -24
  391. package/packages/@monomind/cli/dist/src/dlq/dlq-writer.js +0 -65
  392. package/packages/@monomind/cli/dist/src/dlq/index.d.ts +0 -10
  393. package/packages/@monomind/cli/dist/src/dlq/index.js +0 -7
  394. package/packages/@monomind/cli/dist/src/eval/dataset-manager.d.ts +0 -33
  395. package/packages/@monomind/cli/dist/src/eval/dataset-manager.js +0 -107
  396. package/packages/@monomind/cli/dist/src/eval/dataset-runner.d.ts +0 -23
  397. package/packages/@monomind/cli/dist/src/eval/dataset-runner.js +0 -59
  398. package/packages/@monomind/cli/dist/src/eval/index.d.ts +0 -10
  399. package/packages/@monomind/cli/dist/src/eval/index.js +0 -7
  400. package/packages/@monomind/cli/dist/src/eval/trace-collector.d.ts +0 -40
  401. package/packages/@monomind/cli/dist/src/eval/trace-collector.js +0 -102
  402. package/packages/@monomind/cli/dist/src/index.d.ts +0 -82
  403. package/packages/@monomind/cli/dist/src/index.js +0 -580
  404. package/packages/@monomind/cli/dist/src/infrastructure/in-memory-repositories.d.ts +0 -68
  405. package/packages/@monomind/cli/dist/src/infrastructure/in-memory-repositories.js +0 -264
  406. package/packages/@monomind/cli/dist/src/init/claudemd-generator.d.ts +0 -25
  407. package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +0 -558
  408. package/packages/@monomind/cli/dist/src/init/executor.d.ts +0 -38
  409. package/packages/@monomind/cli/dist/src/init/executor.js +0 -2172
  410. package/packages/@monomind/cli/dist/src/init/helpers-generator.d.ts +0 -60
  411. package/packages/@monomind/cli/dist/src/init/helpers-generator.js +0 -1235
  412. package/packages/@monomind/cli/dist/src/init/index.d.ts +0 -13
  413. package/packages/@monomind/cli/dist/src/init/index.js +0 -15
  414. package/packages/@monomind/cli/dist/src/init/mcp-generator.d.ts +0 -26
  415. package/packages/@monomind/cli/dist/src/init/mcp-generator.js +0 -99
  416. package/packages/@monomind/cli/dist/src/init/settings-generator.d.ts +0 -14
  417. package/packages/@monomind/cli/dist/src/init/settings-generator.js +0 -417
  418. package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.d.ts +0 -38
  419. package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.js +0 -586
  420. package/packages/@monomind/cli/dist/src/init/statusline-generator.d.ts +0 -25
  421. package/packages/@monomind/cli/dist/src/init/statusline-generator.js +0 -1159
  422. package/packages/@monomind/cli/dist/src/init/types.d.ts +0 -315
  423. package/packages/@monomind/cli/dist/src/init/types.js +0 -254
  424. package/packages/@monomind/cli/dist/src/interactive/interrupt.d.ts +0 -22
  425. package/packages/@monomind/cli/dist/src/interactive/interrupt.js +0 -71
  426. package/packages/@monomind/cli/dist/src/mcp/deprecation-injector.d.ts +0 -25
  427. package/packages/@monomind/cli/dist/src/mcp/deprecation-injector.js +0 -48
  428. package/packages/@monomind/cli/dist/src/mcp/tool-registry.d.ts +0 -61
  429. package/packages/@monomind/cli/dist/src/mcp/tool-registry.js +0 -246
  430. package/packages/@monomind/cli/dist/src/mcp-client.d.ts +0 -92
  431. package/packages/@monomind/cli/dist/src/mcp-client.js +0 -270
  432. package/packages/@monomind/cli/dist/src/mcp-server.d.ts +0 -170
  433. package/packages/@monomind/cli/dist/src/mcp-server.js +0 -829
  434. package/packages/@monomind/cli/dist/src/mcp-tools/a2a-tools.d.ts +0 -14
  435. package/packages/@monomind/cli/dist/src/mcp-tools/a2a-tools.js +0 -244
  436. package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.d.ts +0 -9
  437. package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.js +0 -607
  438. package/packages/@monomind/cli/dist/src/mcp-tools/agentdb-tools.d.ts +0 -30
  439. package/packages/@monomind/cli/dist/src/mcp-tools/agentdb-tools.js +0 -596
  440. package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.d.ts +0 -38
  441. package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.js +0 -326
  442. package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.d.ts +0 -83
  443. package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.js +0 -129
  444. package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.d.ts +0 -12
  445. package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.js +0 -237
  446. package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.d.ts +0 -13
  447. package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.js +0 -729
  448. package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.d.ts +0 -12
  449. package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.js +0 -797
  450. package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.d.ts +0 -8
  451. package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.js +0 -381
  452. package/packages/@monomind/cli/dist/src/mcp-tools/coordination-tools.d.ts +0 -13
  453. package/packages/@monomind/cli/dist/src/mcp-tools/coordination-tools.js +0 -728
  454. package/packages/@monomind/cli/dist/src/mcp-tools/daa-tools.d.ts +0 -13
  455. package/packages/@monomind/cli/dist/src/mcp-tools/daa-tools.js +0 -509
  456. package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.d.ts +0 -9
  457. package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.js +0 -823
  458. package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.d.ts +0 -9
  459. package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.js +0 -485
  460. package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.d.ts +0 -10
  461. package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.js +0 -49
  462. package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.d.ts +0 -15
  463. package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +0 -646
  464. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +0 -8
  465. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +0 -957
  466. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.d.ts +0 -44
  467. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +0 -3440
  468. package/packages/@monomind/cli/dist/src/mcp-tools/index.d.ts +0 -39
  469. package/packages/@monomind/cli/dist/src/mcp-tools/index.js +0 -41
  470. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.d.ts +0 -14
  471. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +0 -530
  472. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.d.ts +0 -9
  473. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +0 -6306
  474. package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.d.ts +0 -16
  475. package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.js +0 -718
  476. package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.d.ts +0 -16
  477. package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.js +0 -656
  478. package/packages/@monomind/cli/dist/src/mcp-tools/progress-tools.d.ts +0 -14
  479. package/packages/@monomind/cli/dist/src/mcp-tools/progress-tools.js +0 -350
  480. package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.d.ts +0 -17
  481. package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.js +0 -30
  482. package/packages/@monomind/cli/dist/src/mcp-tools/ruvllm-tools.d.ts +0 -9
  483. package/packages/@monomind/cli/dist/src/mcp-tools/ruvllm-tools.js +0 -295
  484. package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.d.ts +0 -18
  485. package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.js +0 -434
  486. package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.d.ts +0 -8
  487. package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.js +0 -378
  488. package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.d.ts +0 -9
  489. package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.js +0 -317
  490. package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.d.ts +0 -13
  491. package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.js +0 -552
  492. package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.d.ts +0 -8
  493. package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.js +0 -446
  494. package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.d.ts +0 -8
  495. package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.js +0 -309
  496. package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.d.ts +0 -14
  497. package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.js +0 -401
  498. package/packages/@monomind/cli/dist/src/mcp-tools/types.d.ts +0 -37
  499. package/packages/@monomind/cli/dist/src/mcp-tools/types.js +0 -14
  500. package/packages/@monomind/cli/dist/src/mcp-tools/wasm-agent-tools.d.ts +0 -9
  501. package/packages/@monomind/cli/dist/src/mcp-tools/wasm-agent-tools.js +0 -230
  502. package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.d.ts +0 -8
  503. package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.js +0 -631
  504. package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.d.ts +0 -295
  505. package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.js +0 -632
  506. package/packages/@monomind/cli/dist/src/memory/intelligence.d.ts +0 -338
  507. package/packages/@monomind/cli/dist/src/memory/intelligence.js +0 -1049
  508. package/packages/@monomind/cli/dist/src/memory/memory-bridge.d.ts +0 -410
  509. package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +0 -1654
  510. package/packages/@monomind/cli/dist/src/memory/memory-initializer.d.ts +0 -414
  511. package/packages/@monomind/cli/dist/src/memory/memory-initializer.js +0 -2284
  512. package/packages/@monomind/cli/dist/src/memory/sona-optimizer.d.ts +0 -234
  513. package/packages/@monomind/cli/dist/src/memory/sona-optimizer.js +0 -650
  514. package/packages/@monomind/cli/dist/src/model/complexity-scorer.d.ts +0 -21
  515. package/packages/@monomind/cli/dist/src/model/complexity-scorer.js +0 -106
  516. package/packages/@monomind/cli/dist/src/model/index.d.ts +0 -4
  517. package/packages/@monomind/cli/dist/src/model/index.js +0 -4
  518. package/packages/@monomind/cli/dist/src/model/model-settings.d.ts +0 -22
  519. package/packages/@monomind/cli/dist/src/model/model-settings.js +0 -33
  520. package/packages/@monomind/cli/dist/src/model/model-tier-resolver.d.ts +0 -24
  521. package/packages/@monomind/cli/dist/src/model/model-tier-resolver.js +0 -65
  522. package/packages/@monomind/cli/dist/src/observability/replay-reader.d.ts +0 -40
  523. package/packages/@monomind/cli/dist/src/observability/replay-reader.js +0 -138
  524. package/packages/@monomind/cli/dist/src/orchestration/index.d.ts +0 -7
  525. package/packages/@monomind/cli/dist/src/orchestration/index.js +0 -6
  526. package/packages/@monomind/cli/dist/src/orchestration/mode-dispatcher.d.ts +0 -11
  527. package/packages/@monomind/cli/dist/src/orchestration/mode-dispatcher.js +0 -31
  528. package/packages/@monomind/cli/dist/src/orchestration/routing-modes.d.ts +0 -68
  529. package/packages/@monomind/cli/dist/src/orchestration/routing-modes.js +0 -180
  530. package/packages/@monomind/cli/dist/src/output.d.ts +0 -133
  531. package/packages/@monomind/cli/dist/src/output.js +0 -514
  532. package/packages/@monomind/cli/dist/src/parser.d.ts +0 -59
  533. package/packages/@monomind/cli/dist/src/parser.js +0 -459
  534. package/packages/@monomind/cli/dist/src/plugins/manager.d.ts +0 -133
  535. package/packages/@monomind/cli/dist/src/plugins/manager.js +0 -493
  536. package/packages/@monomind/cli/dist/src/plugins/store/discovery.d.ts +0 -88
  537. package/packages/@monomind/cli/dist/src/plugins/store/discovery.js +0 -859
  538. package/packages/@monomind/cli/dist/src/plugins/store/index.d.ts +0 -76
  539. package/packages/@monomind/cli/dist/src/plugins/store/index.js +0 -141
  540. package/packages/@monomind/cli/dist/src/plugins/store/search.d.ts +0 -46
  541. package/packages/@monomind/cli/dist/src/plugins/store/search.js +0 -230
  542. package/packages/@monomind/cli/dist/src/plugins/store/types.d.ts +0 -274
  543. package/packages/@monomind/cli/dist/src/plugins/store/types.js +0 -7
  544. package/packages/@monomind/cli/dist/src/plugins/tests/demo-plugin-store.d.ts +0 -7
  545. package/packages/@monomind/cli/dist/src/plugins/tests/demo-plugin-store.js +0 -126
  546. package/packages/@monomind/cli/dist/src/plugins/tests/standalone-test.d.ts +0 -12
  547. package/packages/@monomind/cli/dist/src/plugins/tests/standalone-test.js +0 -188
  548. package/packages/@monomind/cli/dist/src/plugins/tests/test-plugin-store.d.ts +0 -7
  549. package/packages/@monomind/cli/dist/src/plugins/tests/test-plugin-store.js +0 -206
  550. package/packages/@monomind/cli/dist/src/production/circuit-breaker.d.ts +0 -101
  551. package/packages/@monomind/cli/dist/src/production/circuit-breaker.js +0 -248
  552. package/packages/@monomind/cli/dist/src/production/error-handler.d.ts +0 -94
  553. package/packages/@monomind/cli/dist/src/production/error-handler.js +0 -321
  554. package/packages/@monomind/cli/dist/src/production/index.d.ts +0 -23
  555. package/packages/@monomind/cli/dist/src/production/index.js +0 -18
  556. package/packages/@monomind/cli/dist/src/production/monitoring.d.ts +0 -161
  557. package/packages/@monomind/cli/dist/src/production/monitoring.js +0 -360
  558. package/packages/@monomind/cli/dist/src/production/rate-limiter.d.ts +0 -80
  559. package/packages/@monomind/cli/dist/src/production/rate-limiter.js +0 -209
  560. package/packages/@monomind/cli/dist/src/production/retry.d.ts +0 -48
  561. package/packages/@monomind/cli/dist/src/production/retry.js +0 -179
  562. package/packages/@monomind/cli/dist/src/prompt.d.ts +0 -44
  563. package/packages/@monomind/cli/dist/src/prompt.js +0 -501
  564. package/packages/@monomind/cli/dist/src/runtime/headless.d.ts +0 -60
  565. package/packages/@monomind/cli/dist/src/runtime/headless.js +0 -284
  566. package/packages/@monomind/cli/dist/src/ruvector/agent-wasm.d.ts +0 -182
  567. package/packages/@monomind/cli/dist/src/ruvector/agent-wasm.js +0 -316
  568. package/packages/@monomind/cli/dist/src/ruvector/ast-analyzer.d.ts +0 -67
  569. package/packages/@monomind/cli/dist/src/ruvector/ast-analyzer.js +0 -277
  570. package/packages/@monomind/cli/dist/src/ruvector/coverage-router.d.ts +0 -160
  571. package/packages/@monomind/cli/dist/src/ruvector/coverage-router.js +0 -539
  572. package/packages/@monomind/cli/dist/src/ruvector/coverage-tools.d.ts +0 -33
  573. package/packages/@monomind/cli/dist/src/ruvector/coverage-tools.js +0 -157
  574. package/packages/@monomind/cli/dist/src/ruvector/diff-classifier.d.ts +0 -176
  575. package/packages/@monomind/cli/dist/src/ruvector/diff-classifier.js +0 -718
  576. package/packages/@monomind/cli/dist/src/ruvector/enhanced-model-router.d.ts +0 -146
  577. package/packages/@monomind/cli/dist/src/ruvector/enhanced-model-router.js +0 -551
  578. package/packages/@monomind/cli/dist/src/ruvector/flash-attention.d.ts +0 -195
  579. package/packages/@monomind/cli/dist/src/ruvector/flash-attention.js +0 -643
  580. package/packages/@monomind/cli/dist/src/ruvector/graph-analyzer.d.ts +0 -187
  581. package/packages/@monomind/cli/dist/src/ruvector/graph-analyzer.js +0 -929
  582. package/packages/@monomind/cli/dist/src/ruvector/index.d.ts +0 -39
  583. package/packages/@monomind/cli/dist/src/ruvector/index.js +0 -76
  584. package/packages/@monomind/cli/dist/src/ruvector/lora-adapter.d.ts +0 -218
  585. package/packages/@monomind/cli/dist/src/ruvector/lora-adapter.js +0 -455
  586. package/packages/@monomind/cli/dist/src/ruvector/model-router.d.ts +0 -222
  587. package/packages/@monomind/cli/dist/src/ruvector/model-router.js +0 -512
  588. package/packages/@monomind/cli/dist/src/ruvector/moe-router.d.ts +0 -213
  589. package/packages/@monomind/cli/dist/src/ruvector/moe-router.js +0 -649
  590. package/packages/@monomind/cli/dist/src/ruvector/q-learning-router.d.ts +0 -217
  591. package/packages/@monomind/cli/dist/src/ruvector/q-learning-router.js +0 -712
  592. package/packages/@monomind/cli/dist/src/ruvector/ruvllm-wasm.d.ts +0 -179
  593. package/packages/@monomind/cli/dist/src/ruvector/ruvllm-wasm.js +0 -363
  594. package/packages/@monomind/cli/dist/src/ruvector/semantic-router.d.ts +0 -77
  595. package/packages/@monomind/cli/dist/src/ruvector/semantic-router.js +0 -178
  596. package/packages/@monomind/cli/dist/src/ruvector/vector-db.d.ts +0 -69
  597. package/packages/@monomind/cli/dist/src/ruvector/vector-db.js +0 -243
  598. package/packages/@monomind/cli/dist/src/services/agentic-flow-bridge.d.ts +0 -50
  599. package/packages/@monomind/cli/dist/src/services/agentic-flow-bridge.js +0 -95
  600. package/packages/@monomind/cli/dist/src/services/claim-service.d.ts +0 -206
  601. package/packages/@monomind/cli/dist/src/services/claim-service.js +0 -849
  602. package/packages/@monomind/cli/dist/src/services/config-file-manager.d.ts +0 -51
  603. package/packages/@monomind/cli/dist/src/services/config-file-manager.js +0 -312
  604. package/packages/@monomind/cli/dist/src/services/container-worker-pool.d.ts +0 -197
  605. package/packages/@monomind/cli/dist/src/services/container-worker-pool.js +0 -623
  606. package/packages/@monomind/cli/dist/src/services/headless-worker-executor.d.ts +0 -311
  607. package/packages/@monomind/cli/dist/src/services/headless-worker-executor.js +0 -1167
  608. package/packages/@monomind/cli/dist/src/services/index.d.ts +0 -13
  609. package/packages/@monomind/cli/dist/src/services/index.js +0 -11
  610. package/packages/@monomind/cli/dist/src/services/registry-api.d.ts +0 -58
  611. package/packages/@monomind/cli/dist/src/services/registry-api.js +0 -199
  612. package/packages/@monomind/cli/dist/src/services/ruvector-training.d.ts +0 -222
  613. package/packages/@monomind/cli/dist/src/services/ruvector-training.js +0 -696
  614. package/packages/@monomind/cli/dist/src/services/worker-daemon.d.ts +0 -248
  615. package/packages/@monomind/cli/dist/src/services/worker-daemon.js +0 -1083
  616. package/packages/@monomind/cli/dist/src/services/worker-queue.d.ts +0 -201
  617. package/packages/@monomind/cli/dist/src/services/worker-queue.js +0 -594
  618. package/packages/@monomind/cli/dist/src/suggest.d.ts +0 -53
  619. package/packages/@monomind/cli/dist/src/suggest.js +0 -209
  620. package/packages/@monomind/cli/dist/src/swarm/communication-graph.d.ts +0 -25
  621. package/packages/@monomind/cli/dist/src/swarm/communication-graph.js +0 -77
  622. package/packages/@monomind/cli/dist/src/swarm/flow-enforcer.d.ts +0 -31
  623. package/packages/@monomind/cli/dist/src/swarm/flow-enforcer.js +0 -61
  624. package/packages/@monomind/cli/dist/src/swarm/flow-visualizer.d.ts +0 -19
  625. package/packages/@monomind/cli/dist/src/swarm/flow-visualizer.js +0 -68
  626. package/packages/@monomind/cli/dist/src/transfer/anonymization/index.d.ts +0 -25
  627. package/packages/@monomind/cli/dist/src/transfer/anonymization/index.js +0 -177
  628. package/packages/@monomind/cli/dist/src/transfer/deploy-seraphine.d.ts +0 -13
  629. package/packages/@monomind/cli/dist/src/transfer/deploy-seraphine.js +0 -205
  630. package/packages/@monomind/cli/dist/src/transfer/export.d.ts +0 -25
  631. package/packages/@monomind/cli/dist/src/transfer/export.js +0 -115
  632. package/packages/@monomind/cli/dist/src/transfer/index.d.ts +0 -12
  633. package/packages/@monomind/cli/dist/src/transfer/index.js +0 -31
  634. package/packages/@monomind/cli/dist/src/transfer/ipfs/client.d.ts +0 -109
  635. package/packages/@monomind/cli/dist/src/transfer/ipfs/client.js +0 -384
  636. package/packages/@monomind/cli/dist/src/transfer/ipfs/upload.d.ts +0 -95
  637. package/packages/@monomind/cli/dist/src/transfer/ipfs/upload.js +0 -420
  638. package/packages/@monomind/cli/dist/src/transfer/models/seraphine.d.ts +0 -72
  639. package/packages/@monomind/cli/dist/src/transfer/models/seraphine.js +0 -373
  640. package/packages/@monomind/cli/dist/src/transfer/serialization/cfp.d.ts +0 -49
  641. package/packages/@monomind/cli/dist/src/transfer/serialization/cfp.js +0 -183
  642. package/packages/@monomind/cli/dist/src/transfer/storage/gcs.d.ts +0 -82
  643. package/packages/@monomind/cli/dist/src/transfer/storage/gcs.js +0 -281
  644. package/packages/@monomind/cli/dist/src/transfer/storage/index.d.ts +0 -6
  645. package/packages/@monomind/cli/dist/src/transfer/storage/index.js +0 -6
  646. package/packages/@monomind/cli/dist/src/transfer/store/discovery.d.ts +0 -91
  647. package/packages/@monomind/cli/dist/src/transfer/store/discovery.js +0 -437
  648. package/packages/@monomind/cli/dist/src/transfer/store/download.d.ts +0 -79
  649. package/packages/@monomind/cli/dist/src/transfer/store/download.js +0 -423
  650. package/packages/@monomind/cli/dist/src/transfer/store/index.d.ts +0 -84
  651. package/packages/@monomind/cli/dist/src/transfer/store/index.js +0 -153
  652. package/packages/@monomind/cli/dist/src/transfer/store/publish.d.ts +0 -76
  653. package/packages/@monomind/cli/dist/src/transfer/store/publish.js +0 -293
  654. package/packages/@monomind/cli/dist/src/transfer/store/registry.d.ts +0 -58
  655. package/packages/@monomind/cli/dist/src/transfer/store/registry.js +0 -301
  656. package/packages/@monomind/cli/dist/src/transfer/store/search.d.ts +0 -54
  657. package/packages/@monomind/cli/dist/src/transfer/store/search.js +0 -232
  658. package/packages/@monomind/cli/dist/src/transfer/store/tests/standalone-test.d.ts +0 -12
  659. package/packages/@monomind/cli/dist/src/transfer/store/tests/standalone-test.js +0 -190
  660. package/packages/@monomind/cli/dist/src/transfer/store/types.d.ts +0 -193
  661. package/packages/@monomind/cli/dist/src/transfer/store/types.js +0 -6
  662. package/packages/@monomind/cli/dist/src/transfer/test-seraphine.d.ts +0 -6
  663. package/packages/@monomind/cli/dist/src/transfer/test-seraphine.js +0 -105
  664. package/packages/@monomind/cli/dist/src/transfer/tests/test-store.d.ts +0 -7
  665. package/packages/@monomind/cli/dist/src/transfer/tests/test-store.js +0 -214
  666. package/packages/@monomind/cli/dist/src/transfer/types.d.ts +0 -245
  667. package/packages/@monomind/cli/dist/src/transfer/types.js +0 -6
  668. package/packages/@monomind/cli/dist/src/types.d.ts +0 -198
  669. package/packages/@monomind/cli/dist/src/types.js +0 -38
  670. package/packages/@monomind/cli/dist/src/update/checker.d.ts +0 -34
  671. package/packages/@monomind/cli/dist/src/update/checker.js +0 -198
  672. package/packages/@monomind/cli/dist/src/update/executor.d.ts +0 -32
  673. package/packages/@monomind/cli/dist/src/update/executor.js +0 -186
  674. package/packages/@monomind/cli/dist/src/update/index.d.ts +0 -33
  675. package/packages/@monomind/cli/dist/src/update/index.js +0 -64
  676. package/packages/@monomind/cli/dist/src/update/rate-limiter.d.ts +0 -31
  677. package/packages/@monomind/cli/dist/src/update/rate-limiter.js +0 -116
  678. package/packages/@monomind/cli/dist/src/update/validator.d.ts +0 -17
  679. package/packages/@monomind/cli/dist/src/update/validator.js +0 -118
  680. package/packages/@monomind/cli/dist/src/utils/parse-jsonl.d.ts +0 -6
  681. package/packages/@monomind/cli/dist/src/utils/parse-jsonl.js +0 -22
  682. package/packages/@monomind/cli/dist/src/workflow/condition-evaluator.d.ts +0 -10
  683. package/packages/@monomind/cli/dist/src/workflow/condition-evaluator.js +0 -82
  684. package/packages/@monomind/cli/dist/src/workflow/context-resolver.d.ts +0 -12
  685. package/packages/@monomind/cli/dist/src/workflow/context-resolver.js +0 -23
  686. package/packages/@monomind/cli/dist/src/workflow/dag-builder.d.ts +0 -17
  687. package/packages/@monomind/cli/dist/src/workflow/dag-builder.js +0 -129
  688. package/packages/@monomind/cli/dist/src/workflow/dag-executor.d.ts +0 -9
  689. package/packages/@monomind/cli/dist/src/workflow/dag-executor.js +0 -116
  690. package/packages/@monomind/cli/dist/src/workflow/dag-types.d.ts +0 -41
  691. package/packages/@monomind/cli/dist/src/workflow/dag-types.js +0 -8
  692. package/packages/@monomind/cli/dist/src/workflow/dsl-parser.d.ts +0 -12
  693. package/packages/@monomind/cli/dist/src/workflow/dsl-parser.js +0 -20
  694. package/packages/@monomind/cli/dist/src/workflow/dsl-schema.d.ts +0 -165
  695. package/packages/@monomind/cli/dist/src/workflow/dsl-schema.js +0 -82
  696. package/packages/@monomind/cli/dist/src/workflow/index.d.ts +0 -13
  697. package/packages/@monomind/cli/dist/src/workflow/index.js +0 -11
  698. package/packages/@monomind/cli/dist/src/workflow/template-engine.d.ts +0 -11
  699. package/packages/@monomind/cli/dist/src/workflow/template-engine.js +0 -40
  700. package/packages/@monomind/cli/dist/src/workflow/workflow-executor.d.ts +0 -29
  701. package/packages/@monomind/cli/dist/src/workflow/workflow-executor.js +0 -227
@@ -1,957 +0,0 @@
1
- /**
2
- * Hive-Mind MCP Tools for CLI
3
- *
4
- * Tool definitions for collective intelligence and swarm coordination.
5
- */
6
- import { existsSync, readFileSync, writeFileSync, renameSync, mkdirSync } from 'node:fs';
7
- import { join } from 'node:path';
8
- import { getProjectCwd } from './types.js';
9
- import { weightedTally } from '../consensus/vote-signer.js';
10
- // Storage paths
11
- const STORAGE_DIR = '.monomind';
12
- const HIVE_DIR = 'hive-mind';
13
- const HIVE_FILE = 'state.json';
14
- /**
15
- * Calculate required votes for a given strategy and total node count.
16
- */
17
- function calculateRequiredVotes(strategy, totalNodes, quorumPreset = 'majority') {
18
- if (totalNodes <= 0)
19
- return 1;
20
- switch (strategy) {
21
- case 'bft':
22
- // BFT: requires 2/3 + 1 of total nodes
23
- return Math.floor((totalNodes * 2) / 3) + 1;
24
- case 'raft':
25
- // Raft: simple majority
26
- return Math.floor(totalNodes / 2) + 1;
27
- case 'quorum':
28
- switch (quorumPreset) {
29
- case 'unanimous':
30
- return totalNodes;
31
- case 'supermajority':
32
- return Math.floor((totalNodes * 2) / 3) + 1;
33
- case 'majority':
34
- default:
35
- return Math.floor(totalNodes / 2) + 1;
36
- }
37
- default:
38
- return Math.floor(totalNodes / 2) + 1;
39
- }
40
- }
41
- /**
42
- * Detect Byzantine behavior: a voter who has cast conflicting votes
43
- * across proposals in the same round (same type, overlapping time).
44
- * Here we check if the voter already voted differently on this proposal
45
- * (which shouldn't happen if we block double-votes, so this checks
46
- * cross-proposal conflicting votes for same type within the pending set).
47
- */
48
- function detectByzantineVoters(pending, currentProposal, voterId, newVote) {
49
- // Check if voter cast opposite votes on proposals of the same type
50
- for (const p of pending) {
51
- if (p.proposalId === currentProposal.proposalId)
52
- continue;
53
- if (p.type !== currentProposal.type)
54
- continue;
55
- if (voterId in p.votes && p.votes[voterId] !== newVote) {
56
- return true; // Conflicting vote detected
57
- }
58
- }
59
- return false;
60
- }
61
- /**
62
- * Try to resolve a proposal based on its strategy.
63
- * Returns 'approved', 'rejected', or null if still pending.
64
- */
65
- function tryResolveProposal(proposal, totalNodes) {
66
- const votesFor = Object.values(proposal.votes).filter(v => v).length;
67
- const votesAgainst = Object.values(proposal.votes).filter(v => !v).length;
68
- const required = calculateRequiredVotes(proposal.strategy, totalNodes, proposal.quorumPreset);
69
- if (votesFor >= required)
70
- return 'approved';
71
- if (votesAgainst >= required)
72
- return 'rejected';
73
- // For quorum with 'unanimous', also reject if any vote is against
74
- if (proposal.strategy === 'quorum' && proposal.quorumPreset === 'unanimous' && votesAgainst > 0) {
75
- return 'rejected';
76
- }
77
- // Check if it's impossible to reach quorum (remaining potential votes can't tip it)
78
- const totalVotes = Object.keys(proposal.votes).length;
79
- const remaining = totalNodes - totalVotes;
80
- if (votesFor + remaining < required && votesAgainst + remaining < required) {
81
- // Deadlock: neither side can win -- reject
82
- return 'rejected';
83
- }
84
- return null;
85
- }
86
- function getHiveDir() {
87
- return join(getProjectCwd(), STORAGE_DIR, HIVE_DIR);
88
- }
89
- function getHivePath() {
90
- return join(getHiveDir(), HIVE_FILE);
91
- }
92
- function ensureHiveDir() {
93
- const dir = getHiveDir();
94
- if (!existsSync(dir)) {
95
- mkdirSync(dir, { recursive: true });
96
- }
97
- }
98
- function loadHiveState() {
99
- try {
100
- const path = getHivePath();
101
- if (existsSync(path)) {
102
- const data = readFileSync(path, 'utf-8');
103
- return JSON.parse(data);
104
- }
105
- }
106
- catch {
107
- // Return default state on error
108
- }
109
- return {
110
- initialized: false,
111
- topology: 'mesh',
112
- workers: [],
113
- consensus: { pending: [], history: [] },
114
- sharedMemory: {},
115
- createdAt: new Date().toISOString(),
116
- updatedAt: new Date().toISOString(),
117
- };
118
- }
119
- function saveHiveState(state) {
120
- ensureHiveDir();
121
- state.updatedAt = new Date().toISOString();
122
- const dest = getHivePath();
123
- const tmp = `${dest}.${process.pid}.${Date.now()}.tmp`;
124
- writeFileSync(tmp, JSON.stringify(state, null, 2), 'utf-8');
125
- renameSync(tmp, dest);
126
- }
127
- // Import agent store helpers for spawn functionality
128
- import { existsSync as agentStoreExists, readFileSync as readAgentStore, writeFileSync as writeAgentStore, mkdirSync as mkdirAgentStore } from 'node:fs';
129
- // Canonical agent store path matches agent-tools.ts: .monomind/agents/store.json
130
- function loadAgentStore() {
131
- const storePath = join(getProjectCwd(), '.monomind', 'agents', 'store.json');
132
- try {
133
- if (agentStoreExists(storePath)) {
134
- return JSON.parse(readAgentStore(storePath, 'utf-8'));
135
- }
136
- }
137
- catch { /* ignore */ }
138
- return { agents: {} };
139
- }
140
- const HIVE_RESERVED_KEYS = new Set(['__proto__', 'constructor', 'prototype']);
141
- function saveAgentStore(store) {
142
- const storeDir = join(getProjectCwd(), '.monomind', 'agents');
143
- if (!agentStoreExists(storeDir)) {
144
- mkdirAgentStore(storeDir, { recursive: true });
145
- }
146
- const dest = join(storeDir, 'store.json');
147
- const tmp = `${dest}.${process.pid}.${Date.now()}.tmp`;
148
- writeAgentStore(tmp, JSON.stringify(store, null, 2), 'utf-8');
149
- renameSync(tmp, dest);
150
- }
151
- export const hiveMindTools = [
152
- {
153
- name: 'hive-mind_spawn',
154
- description: 'Spawn workers and automatically join them to the hive-mind (combines agent/spawn + hive-mind/join)',
155
- category: 'hive-mind',
156
- inputSchema: {
157
- type: 'object',
158
- properties: {
159
- count: { type: 'number', description: 'Number of workers to spawn (default: 1)', default: 1 },
160
- role: { type: 'string', enum: ['worker', 'specialist', 'scout'], description: 'Worker role in hive', default: 'worker' },
161
- agentType: { type: 'string', description: 'Agent type for spawned workers', default: 'worker' },
162
- prefix: { type: 'string', description: 'Prefix for worker IDs', default: 'hive-worker' },
163
- },
164
- },
165
- handler: async (input) => {
166
- const state = loadHiveState();
167
- if (!state.initialized) {
168
- return { success: false, error: 'Hive-mind not initialized. Run hive-mind/init first.' };
169
- }
170
- const count = Math.min(Math.max(1, input.count || 1), 20); // Cap at 20
171
- const role = input.role || 'worker';
172
- const agentType = input.agentType || 'worker';
173
- const prefix = input.prefix || 'hive-worker';
174
- const agentStore = loadAgentStore();
175
- const spawnedWorkers = [];
176
- for (let i = 0; i < count; i++) {
177
- const agentId = `${prefix}-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`;
178
- if (HIVE_RESERVED_KEYS.has(agentId))
179
- continue;
180
- // Create agent record (like agent/spawn)
181
- agentStore.agents[agentId] = {
182
- agentId,
183
- agentType,
184
- status: 'idle',
185
- health: 1.0,
186
- taskCount: 0,
187
- config: { role, hiveRole: role },
188
- createdAt: new Date().toISOString(),
189
- domain: 'hive-mind',
190
- };
191
- // Join to hive-mind (like hive-mind/join)
192
- const MAX_HIVE_AGENTS = 100;
193
- if (!state.workers.includes(agentId)) {
194
- if (state.workers.length >= MAX_HIVE_AGENTS) {
195
- return { success: false, error: `Hive has reached max agent capacity (${MAX_HIVE_AGENTS})` };
196
- }
197
- state.workers.push(agentId);
198
- }
199
- spawnedWorkers.push({
200
- agentId,
201
- role,
202
- joinedAt: new Date().toISOString(),
203
- });
204
- }
205
- saveAgentStore(agentStore);
206
- saveHiveState(state);
207
- return {
208
- success: true,
209
- spawned: count,
210
- workers: spawnedWorkers,
211
- totalWorkers: state.workers.length,
212
- hiveStatus: 'active',
213
- message: `Spawned ${count} worker(s) and joined them to the hive-mind`,
214
- };
215
- },
216
- },
217
- {
218
- name: 'hive-mind_init',
219
- description: 'Initialize the hive-mind collective',
220
- category: 'hive-mind',
221
- inputSchema: {
222
- type: 'object',
223
- properties: {
224
- topology: { type: 'string', enum: ['mesh', 'hierarchical', 'ring', 'star'], description: 'Network topology' },
225
- queenId: { type: 'string', description: 'Initial queen agent ID' },
226
- },
227
- },
228
- handler: async (input) => {
229
- const hiveId = `hive-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
230
- const queenId = input.queenId || `queen-${Date.now()}`;
231
- const now = new Date().toISOString();
232
- const state = {
233
- initialized: true,
234
- hiveId,
235
- topology: input.topology || 'mesh',
236
- queen: { agentId: queenId, electedAt: now, term: 1 },
237
- workers: [],
238
- consensus: { pending: [], history: [] },
239
- sharedMemory: {},
240
- createdAt: now,
241
- updatedAt: now,
242
- };
243
- saveHiveState(state);
244
- return {
245
- success: true,
246
- hiveId,
247
- topology: state.topology,
248
- consensus: input.consensus || 'byzantine',
249
- queenId,
250
- status: 'initialized',
251
- config: {
252
- topology: state.topology,
253
- consensus: input.consensus || 'byzantine',
254
- maxAgents: input.maxAgents || 15,
255
- persist: input.persist !== false,
256
- memoryBackend: input.memoryBackend || 'hybrid',
257
- },
258
- createdAt: state.createdAt,
259
- };
260
- },
261
- },
262
- {
263
- name: 'hive-mind_status',
264
- description: 'Get hive-mind status',
265
- category: 'hive-mind',
266
- inputSchema: {
267
- type: 'object',
268
- properties: {
269
- verbose: { type: 'boolean', description: 'Include detailed information' },
270
- },
271
- },
272
- handler: async (input) => {
273
- const state = loadHiveState();
274
- const uptime = state.createdAt ? Date.now() - new Date(state.createdAt).getTime() : 0;
275
- // Load agent store once for all workers
276
- const agentStore = loadAgentStore();
277
- // Compute real task metrics from task store
278
- const taskStorePath = join(getProjectCwd(), '.monomind', 'tasks', 'store.json');
279
- let pendingTaskCount = 0;
280
- let activeTaskCount = 0;
281
- let completedTaskCount = 0;
282
- try {
283
- if (existsSync(taskStorePath)) {
284
- const taskStore = JSON.parse(readFileSync(taskStorePath, 'utf-8'));
285
- for (const task of Object.values(taskStore.tasks || {})) {
286
- if (task.status === 'pending')
287
- pendingTaskCount++;
288
- else if (task.status === 'in_progress')
289
- activeTaskCount++;
290
- else if (task.status === 'completed')
291
- completedTaskCount++;
292
- }
293
- }
294
- }
295
- catch { /* ignore */ }
296
- const workerCount = Math.max(1, state.workers.length);
297
- const realLoad = activeTaskCount / workerCount;
298
- const status = {
299
- // CLI expected fields
300
- hiveId: state.hiveId ?? `hive-${state.createdAt ? new Date(state.createdAt).getTime() : Date.now()}`,
301
- status: state.initialized ? 'active' : 'offline',
302
- topology: state.topology,
303
- consensus: 'byzantine', // Default consensus type
304
- queen: state.queen ? {
305
- id: state.queen.agentId,
306
- agentId: state.queen.agentId,
307
- status: 'active',
308
- load: Math.round(realLoad * 1000) / 1000,
309
- tasksQueued: pendingTaskCount,
310
- electedAt: state.queen.electedAt,
311
- term: state.queen.term,
312
- } : { id: 'N/A', status: 'offline', load: 0, tasksQueued: 0 },
313
- workers: state.workers.map(w => {
314
- const agent = agentStore.agents[w];
315
- return {
316
- id: w,
317
- type: agent?.agentType || 'worker',
318
- status: agent?.status || 'unknown',
319
- currentTask: agent?.currentTask || null,
320
- tasksCompleted: agent?.taskCount || 0,
321
- };
322
- }),
323
- metrics: {
324
- totalTasks: pendingTaskCount + activeTaskCount + completedTaskCount,
325
- completedTasks: completedTaskCount,
326
- activeTasks: activeTaskCount,
327
- pendingTasks: pendingTaskCount,
328
- failedTasks: 0,
329
- consensusRounds: state.consensus.history.length,
330
- memoryUsage: `${Object.keys(state.sharedMemory).length * 2} KB`,
331
- },
332
- health: {
333
- overall: 'healthy',
334
- queen: state.queen ? 'healthy' : 'unhealthy',
335
- workers: state.workers.length > 0 ? 'healthy' : 'degraded',
336
- consensus: 'healthy',
337
- memory: 'healthy',
338
- },
339
- // Additional fields
340
- id: state.hiveId ?? `hive-${state.createdAt ? new Date(state.createdAt).getTime() : Date.now()}`,
341
- initialized: state.initialized,
342
- workerCount: state.workers.length,
343
- pendingConsensus: state.consensus.pending.length,
344
- sharedMemoryKeys: Object.keys(state.sharedMemory).length,
345
- uptime,
346
- createdAt: state.createdAt,
347
- updatedAt: state.updatedAt,
348
- };
349
- if (input.verbose) {
350
- return {
351
- ...status,
352
- workerDetails: state.workers,
353
- consensusHistory: state.consensus.history.slice(-10),
354
- sharedMemory: state.sharedMemory,
355
- };
356
- }
357
- return status;
358
- },
359
- },
360
- {
361
- name: 'hive-mind_join',
362
- description: 'Join an agent to the hive-mind',
363
- category: 'hive-mind',
364
- inputSchema: {
365
- type: 'object',
366
- properties: {
367
- agentId: { type: 'string', description: 'Agent ID to join' },
368
- role: { type: 'string', enum: ['worker', 'specialist', 'scout'], description: 'Agent role in hive' },
369
- },
370
- required: ['agentId'],
371
- },
372
- handler: async (input) => {
373
- const state = loadHiveState();
374
- const agentId = input.agentId;
375
- // Reject IDs that would mutate Object.prototype when used as a key on the
376
- // JSON-loaded plain object `agentStore.agents` (read in hive-mind_status).
377
- if (typeof agentId !== 'string' || agentId.length === 0 || agentId.length > 128 ||
378
- HIVE_RESERVED_KEYS.has(agentId) || !/^[a-zA-Z0-9_-]+$/.test(agentId)) {
379
- return { success: false, error: 'Invalid agentId' };
380
- }
381
- if (!state.initialized) {
382
- return { success: false, error: 'Hive-mind not initialized' };
383
- }
384
- const MAX_HIVE_AGENTS = 100;
385
- if (!state.workers.includes(agentId)) {
386
- if (state.workers.length >= MAX_HIVE_AGENTS) {
387
- return { success: false, error: `Hive has reached max agent capacity (${MAX_HIVE_AGENTS})` };
388
- }
389
- state.workers.push(agentId);
390
- saveHiveState(state);
391
- }
392
- return {
393
- success: true,
394
- agentId,
395
- role: input.role || 'worker',
396
- totalWorkers: state.workers.length,
397
- joinedAt: new Date().toISOString(),
398
- };
399
- },
400
- },
401
- {
402
- name: 'hive-mind_leave',
403
- description: 'Remove an agent from the hive-mind',
404
- category: 'hive-mind',
405
- inputSchema: {
406
- type: 'object',
407
- properties: {
408
- agentId: { type: 'string', description: 'Agent ID to remove' },
409
- },
410
- required: ['agentId'],
411
- },
412
- handler: async (input) => {
413
- const state = loadHiveState();
414
- const agentId = input.agentId;
415
- if (typeof agentId !== 'string' || agentId.length === 0 || agentId.length > 128 ||
416
- HIVE_RESERVED_KEYS.has(agentId) || !/^[a-zA-Z0-9_-]+$/.test(agentId)) {
417
- return { success: false, error: 'Invalid agentId' };
418
- }
419
- const index = state.workers.indexOf(agentId);
420
- if (index > -1) {
421
- state.workers.splice(index, 1);
422
- saveHiveState(state);
423
- return {
424
- success: true,
425
- agentId,
426
- leftAt: new Date().toISOString(),
427
- remainingWorkers: state.workers.length,
428
- };
429
- }
430
- return { success: false, agentId, error: 'Agent not in hive' };
431
- },
432
- },
433
- {
434
- name: 'hive-mind_consensus',
435
- description: 'Propose or vote on consensus with BFT, Raft, or Quorum strategies',
436
- category: 'hive-mind',
437
- inputSchema: {
438
- type: 'object',
439
- properties: {
440
- action: { type: 'string', enum: ['propose', 'vote', 'status', 'list'], description: 'Consensus action' },
441
- proposalId: { type: 'string', description: 'Proposal ID (for vote/status)' },
442
- type: { type: 'string', description: 'Proposal type (for propose)' },
443
- value: { description: 'Proposal value (for propose)' },
444
- vote: { type: 'boolean', description: 'Vote (true=for, false=against)' },
445
- voterId: { type: 'string', description: 'Voter agent ID' },
446
- strategy: { type: 'string', enum: ['bft', 'raft', 'quorum'], description: 'Consensus strategy (default: raft)' },
447
- quorumPreset: { type: 'string', enum: ['unanimous', 'majority', 'supermajority'], description: 'Quorum threshold preset (for quorum strategy, default: majority)' },
448
- term: { type: 'number', description: 'Term number (for raft strategy)' },
449
- timeoutMs: { type: 'number', description: 'Timeout in ms for raft re-proposal (default: 30000)' },
450
- minDivergenceRounds: { type: 'number', description: 'O-Information anti-groupthink gate: minimum rounds with divergent votes required before resolution (arXiv:2510.05174). Default: 0 (disabled).' },
451
- },
452
- required: ['action'],
453
- },
454
- handler: async (input) => {
455
- const state = loadHiveState();
456
- const action = input.action;
457
- const strategy = input.strategy || 'raft';
458
- const totalNodes = state.workers.length;
459
- if (action === 'propose') {
460
- const proposalId = `proposal-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
461
- const quorumPreset = input.quorumPreset || 'majority';
462
- const term = input.term || (state.queen?.term ?? 1);
463
- const timeoutMs = input.timeoutMs || 30000;
464
- // Raft: check if there's already a pending proposal for this term
465
- if (strategy === 'raft') {
466
- const existingTermProposal = state.consensus.pending.find(p => p.strategy === 'raft' && p.term === term && p.status === 'pending');
467
- if (existingTermProposal) {
468
- return {
469
- action,
470
- error: `Raft term ${term} already has a pending proposal: ${existingTermProposal.proposalId}. Wait for resolution or use a higher term.`,
471
- existingProposalId: existingTermProposal.proposalId,
472
- term,
473
- };
474
- }
475
- }
476
- const required = calculateRequiredVotes(strategy, totalNodes, quorumPreset);
477
- const minDivergenceRounds = typeof input.minDivergenceRounds === 'number'
478
- ? Math.max(0, input.minDivergenceRounds)
479
- : 0;
480
- const proposal = {
481
- proposalId,
482
- type: input.type || 'general',
483
- value: input.value,
484
- proposedBy: input.voterId || 'system',
485
- proposedAt: new Date().toISOString(),
486
- votes: {},
487
- status: 'pending',
488
- strategy,
489
- term: strategy === 'raft' ? term : undefined,
490
- quorumPreset: strategy === 'quorum' ? quorumPreset : undefined,
491
- byzantineVoters: strategy === 'bft' ? [] : undefined,
492
- timeoutAt: strategy === 'raft' ? new Date(Date.now() + timeoutMs).toISOString() : undefined,
493
- minDivergenceRounds: minDivergenceRounds > 0 ? minDivergenceRounds : undefined,
494
- divergenceRoundsSeen: 0,
495
- };
496
- state.consensus.pending.push(proposal);
497
- saveHiveState(state);
498
- return {
499
- action,
500
- proposalId,
501
- type: proposal.type,
502
- strategy,
503
- status: 'pending',
504
- required,
505
- totalNodes,
506
- term: proposal.term,
507
- quorumPreset: proposal.quorumPreset,
508
- timeoutAt: proposal.timeoutAt,
509
- minDivergenceRounds: proposal.minDivergenceRounds,
510
- };
511
- }
512
- if (action === 'vote') {
513
- const proposal = state.consensus.pending.find(p => p.proposalId === input.proposalId);
514
- if (!proposal) {
515
- return { action, error: 'Proposal not found or already resolved' };
516
- }
517
- const voterId = input.voterId;
518
- if (!voterId) {
519
- return { action, error: 'voterId is required for voting' };
520
- }
521
- if (totalNodes === 0) {
522
- return { action, error: 'No workers in hive — cannot vote' };
523
- }
524
- if (!state.workers.includes(voterId)) {
525
- return { action, error: `Voter ${voterId} is not a member of this hive` };
526
- }
527
- const voteValue = input.vote;
528
- const proposalStrategy = proposal.strategy || 'raft';
529
- const required = calculateRequiredVotes(proposalStrategy, totalNodes, proposal.quorumPreset);
530
- // Prevent double-voting
531
- if (voterId in proposal.votes) {
532
- const previousVote = proposal.votes[voterId];
533
- if (previousVote === voteValue) {
534
- return {
535
- action,
536
- error: `Voter ${voterId} has already cast the same vote on this proposal`,
537
- proposalId: proposal.proposalId,
538
- existingVote: previousVote,
539
- };
540
- }
541
- // Conflicting vote from same voter
542
- if (proposalStrategy === 'bft') {
543
- // BFT: detect as Byzantine behavior
544
- if (!proposal.byzantineVoters)
545
- proposal.byzantineVoters = [];
546
- if (!proposal.byzantineVoters.includes(voterId)) {
547
- proposal.byzantineVoters.push(voterId);
548
- }
549
- // Remove their vote entirely -- Byzantine voter is excluded
550
- delete proposal.votes[voterId];
551
- saveHiveState(state);
552
- return {
553
- action,
554
- proposalId: proposal.proposalId,
555
- voterId,
556
- byzantineDetected: true,
557
- message: `Byzantine behavior detected: voter ${voterId} attempted conflicting vote. Vote invalidated.`,
558
- byzantineVoters: proposal.byzantineVoters,
559
- status: proposal.status,
560
- };
561
- }
562
- if (proposalStrategy === 'raft') {
563
- // Raft: only one vote per node per term, reject the change
564
- return {
565
- action,
566
- error: `Raft: voter ${voterId} already voted in term ${proposal.term}. Cannot change vote.`,
567
- proposalId: proposal.proposalId,
568
- term: proposal.term,
569
- };
570
- }
571
- // Quorum: reject double-vote
572
- return {
573
- action,
574
- error: `Voter ${voterId} has already voted on this proposal`,
575
- proposalId: proposal.proposalId,
576
- };
577
- }
578
- // BFT: check for cross-proposal Byzantine behavior
579
- if (proposalStrategy === 'bft') {
580
- const isByzantine = detectByzantineVoters(state.consensus.pending, proposal, voterId, voteValue);
581
- if (isByzantine) {
582
- if (!proposal.byzantineVoters)
583
- proposal.byzantineVoters = [];
584
- if (!proposal.byzantineVoters.includes(voterId)) {
585
- proposal.byzantineVoters.push(voterId);
586
- }
587
- saveHiveState(state);
588
- return {
589
- action,
590
- proposalId: proposal.proposalId,
591
- voterId,
592
- byzantineDetected: true,
593
- message: `Byzantine behavior detected: voter ${voterId} cast conflicting votes across proposals of same type. Vote rejected.`,
594
- byzantineVoters: proposal.byzantineVoters,
595
- status: proposal.status,
596
- };
597
- }
598
- }
599
- // Record the vote
600
- proposal.votes[voterId] = voteValue;
601
- const votesFor = Object.values(proposal.votes).filter(v => v).length;
602
- const votesAgainst = Object.values(proposal.votes).filter(v => !v).length;
603
- // O-Information divergence tracking (arXiv:2510.05174)
604
- // Count this voting round as divergent if not all votes are the same direction.
605
- // A divergent round signals synergy is still "in play" among agents.
606
- const allVotes = Object.values(proposal.votes);
607
- const isUnanimous = allVotes.every(v => v) || allVotes.every(v => !v);
608
- if (!isUnanimous && allVotes.length >= 2) {
609
- proposal.divergenceRoundsSeen = (proposal.divergenceRoundsSeen ?? 0) + 1;
610
- }
611
- // CP-WBFT: weighted tally using uniform confidence (1.0) until probe scores available
612
- // Source: https://arxiv.org/abs/2511.10400
613
- const weightedVotes = Object.entries(proposal.votes).map(([aid, v]) => ({
614
- agentId: aid,
615
- vote: v,
616
- confidence: 1.0, // uniform until confidence-probe is wired
617
- }));
618
- const cpwbftTally = weightedTally(weightedVotes);
619
- // O-Information gate: defer resolution if we haven't seen enough divergent rounds
620
- const divergenceGateOpen = !proposal.minDivergenceRounds
621
- || (proposal.divergenceRoundsSeen ?? 0) >= proposal.minDivergenceRounds;
622
- // Try to resolve
623
- const resolution = divergenceGateOpen ? tryResolveProposal(proposal, totalNodes) : null;
624
- let resolved = false;
625
- if (resolution !== null) {
626
- resolved = true;
627
- proposal.status = resolution;
628
- state.consensus.history.push({
629
- proposalId: proposal.proposalId,
630
- type: proposal.type,
631
- result: resolution,
632
- votes: { for: votesFor, against: votesAgainst },
633
- decidedAt: new Date().toISOString(),
634
- strategy: proposalStrategy,
635
- term: proposal.term,
636
- byzantineDetected: proposal.byzantineVoters?.length ? proposal.byzantineVoters : undefined,
637
- });
638
- if (state.consensus.history.length > 1000) {
639
- state.consensus.history = state.consensus.history.slice(-1000);
640
- }
641
- state.consensus.pending = state.consensus.pending.filter(p => p.proposalId !== proposal.proposalId);
642
- }
643
- saveHiveState(state);
644
- // Persist consensus result in AgentDB for searchable history
645
- if (resolved) {
646
- try {
647
- const bridge = await import('../memory/memory-bridge.js');
648
- await bridge.bridgeStoreEntry({
649
- key: `consensus-${proposal.proposalId}`,
650
- value: JSON.stringify({
651
- proposalId: proposal.proposalId,
652
- type: proposal.type,
653
- strategy: proposalStrategy,
654
- status: proposal.status,
655
- votes: proposal.votes,
656
- resolvedAt: new Date().toISOString(),
657
- }),
658
- namespace: 'hive-consensus',
659
- tags: [proposal.type, proposalStrategy || 'raft', proposal.status],
660
- });
661
- }
662
- catch { /* AgentDB not available — JSON store is primary */ }
663
- // Persist consensus audit record
664
- const sessionSecret = process.env.MONOMIND_SESSION_SECRET;
665
- if (!sessionSecret) {
666
- process.stderr.write('[hive-consensus] Audit write skipped: MONOMIND_SESSION_SECRET not set\n');
667
- }
668
- else {
669
- try {
670
- const { AuditWriter } = await import('../consensus/audit-writer.js');
671
- const auditDir = join(getProjectCwd(), STORAGE_DIR, 'consensus');
672
- const writer = new AuditWriter(auditDir);
673
- const now = new Date().toISOString();
674
- const voteEntries = Object.entries(proposal.votes).map(([agentId, vote]) => ({
675
- agentId,
676
- agentSlug: agentId,
677
- vote,
678
- votedAt: now,
679
- }));
680
- writer.record({
681
- decisionId: proposal.proposalId,
682
- swarmId: `hive-${state.createdAt ? new Date(state.createdAt).getTime() : Date.now()}`,
683
- protocol: (proposalStrategy === 'bft' ? 'byzantine' : proposalStrategy === 'raft' ? 'raft' : 'quorum'),
684
- topic: proposal.type,
685
- decision: resolution,
686
- votes: voteEntries,
687
- quorumRequired: required,
688
- quorumThreshold: required / Math.max(totalNodes, 1),
689
- round: (proposal.divergenceRoundsSeen ?? 0) + 1,
690
- startedAt: proposal.proposedAt,
691
- completedAt: now,
692
- sessionSecret,
693
- });
694
- }
695
- catch (e) {
696
- if (process.env.MONOMIND_LOG_LEVEL === 'debug') {
697
- process.stderr.write(`[hive-consensus] Audit write failed: ${e.message}\n`);
698
- }
699
- }
700
- }
701
- }
702
- return {
703
- action,
704
- proposalId: proposal.proposalId,
705
- voterId,
706
- vote: voteValue,
707
- strategy: proposalStrategy,
708
- votesFor,
709
- votesAgainst,
710
- required,
711
- totalNodes,
712
- resolved,
713
- result: resolved ? resolution : undefined,
714
- status: proposal.status,
715
- term: proposal.term,
716
- byzantineVoters: proposal.byzantineVoters?.length ? proposal.byzantineVoters : undefined,
717
- cpwbft: cpwbftTally,
718
- // O-Information divergence gate status
719
- divergenceGateOpen,
720
- divergenceRoundsSeen: proposal.divergenceRoundsSeen ?? 0,
721
- minDivergenceRounds: proposal.minDivergenceRounds,
722
- divergenceHint: !divergenceGateOpen
723
- ? `O-Information gate: ${proposal.divergenceRoundsSeen ?? 0}/${proposal.minDivergenceRounds} divergent rounds seen. Resolution deferred to prevent groupthink.`
724
- : undefined,
725
- };
726
- }
727
- if (action === 'status') {
728
- const proposal = state.consensus.pending.find(p => p.proposalId === input.proposalId);
729
- if (!proposal) {
730
- // Check history
731
- const historical = state.consensus.history.find(h => h.proposalId === input.proposalId);
732
- if (historical) {
733
- return { action, ...historical, historical: true, resolved: true };
734
- }
735
- return { action, error: 'Proposal not found' };
736
- }
737
- const votesFor = Object.values(proposal.votes).filter(v => v).length;
738
- const votesAgainst = Object.values(proposal.votes).filter(v => !v).length;
739
- const proposalStrategy = proposal.strategy || 'raft';
740
- const required = calculateRequiredVotes(proposalStrategy, totalNodes, proposal.quorumPreset);
741
- // Raft: check timeout
742
- let timedOut = false;
743
- if (proposalStrategy === 'raft' && proposal.timeoutAt) {
744
- timedOut = new Date().getTime() > new Date(proposal.timeoutAt).getTime();
745
- }
746
- return {
747
- action,
748
- proposalId: proposal.proposalId,
749
- type: proposal.type,
750
- strategy: proposalStrategy,
751
- status: proposal.status,
752
- votesFor,
753
- votesAgainst,
754
- totalVotes: Object.keys(proposal.votes).length,
755
- required,
756
- totalNodes,
757
- resolved: false,
758
- term: proposal.term,
759
- quorumPreset: proposal.quorumPreset,
760
- byzantineVoters: proposal.byzantineVoters?.length ? proposal.byzantineVoters : undefined,
761
- timedOut,
762
- timeoutAt: proposal.timeoutAt,
763
- hint: timedOut ? `Raft timeout reached. Re-propose with term ${(proposal.term || 1) + 1}.` : undefined,
764
- };
765
- }
766
- if (action === 'list') {
767
- return {
768
- action,
769
- pending: state.consensus.pending.map(p => ({
770
- proposalId: p.proposalId,
771
- type: p.type,
772
- strategy: p.strategy || 'raft',
773
- proposedAt: p.proposedAt,
774
- totalVotes: Object.keys(p.votes).length,
775
- required: calculateRequiredVotes(p.strategy || 'raft', totalNodes, p.quorumPreset),
776
- term: p.term,
777
- status: p.status,
778
- })),
779
- recentHistory: state.consensus.history.slice(-5),
780
- };
781
- }
782
- return { action, error: 'Unknown action' };
783
- },
784
- },
785
- {
786
- name: 'hive-mind_broadcast',
787
- description: 'Broadcast message to all workers',
788
- category: 'hive-mind',
789
- inputSchema: {
790
- type: 'object',
791
- properties: {
792
- message: { type: 'string', description: 'Message to broadcast' },
793
- priority: { type: 'string', enum: ['low', 'normal', 'high', 'critical'], description: 'Message priority' },
794
- fromId: { type: 'string', description: 'Sender agent ID' },
795
- },
796
- required: ['message'],
797
- },
798
- handler: async (input) => {
799
- const state = loadHiveState();
800
- if (!state.initialized) {
801
- return { success: false, error: 'Hive-mind not initialized' };
802
- }
803
- const messageId = `msg-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
804
- // Store in shared memory
805
- const messages = state.sharedMemory.broadcasts || [];
806
- messages.push({
807
- messageId,
808
- message: input.message,
809
- priority: input.priority || 'normal',
810
- fromId: input.fromId || 'system',
811
- timestamp: new Date().toISOString(),
812
- });
813
- // Keep only last 100 broadcasts
814
- state.sharedMemory.broadcasts = messages.slice(-100);
815
- saveHiveState(state);
816
- return {
817
- success: true,
818
- messageId,
819
- recipients: state.workers.length,
820
- priority: input.priority || 'normal',
821
- broadcastAt: new Date().toISOString(),
822
- };
823
- },
824
- },
825
- {
826
- name: 'hive-mind_shutdown',
827
- description: 'Shutdown the hive-mind and terminate all workers',
828
- category: 'hive-mind',
829
- inputSchema: {
830
- type: 'object',
831
- properties: {
832
- graceful: { type: 'boolean', description: 'Graceful shutdown (wait for pending tasks)', default: true },
833
- force: { type: 'boolean', description: 'Force immediate shutdown', default: false },
834
- },
835
- },
836
- handler: async (input) => {
837
- const state = loadHiveState();
838
- if (!state.initialized) {
839
- return { success: false, error: 'Hive-mind not initialized or already shut down' };
840
- }
841
- const graceful = input.graceful !== false;
842
- const force = input.force === true;
843
- const workerCount = state.workers.length;
844
- const pendingConsensus = state.consensus.pending.length;
845
- // If graceful and there are pending consensus items, warn (unless forced)
846
- if (graceful && pendingConsensus > 0 && !force) {
847
- return {
848
- success: false,
849
- error: `Cannot gracefully shutdown with ${pendingConsensus} pending consensus items. Use force: true to override.`,
850
- pendingConsensus,
851
- workerCount,
852
- };
853
- }
854
- // Clear workers from agent store
855
- const agentStore = loadAgentStore();
856
- for (const workerId of state.workers) {
857
- if (agentStore.agents[workerId]) {
858
- delete agentStore.agents[workerId];
859
- }
860
- }
861
- saveAgentStore(agentStore);
862
- // Reset hive state
863
- const shutdownTime = new Date().toISOString();
864
- const previousQueen = state.queen?.agentId;
865
- state.initialized = false;
866
- state.queen = undefined;
867
- state.workers = [];
868
- state.consensus.pending = [];
869
- // Keep history for reference
870
- state.sharedMemory = {};
871
- saveHiveState(state);
872
- return {
873
- success: true,
874
- shutdownAt: shutdownTime,
875
- graceful,
876
- workersTerminated: workerCount,
877
- previousQueen,
878
- consensusCleared: pendingConsensus,
879
- message: `Hive-mind shutdown complete. ${workerCount} workers terminated.`,
880
- };
881
- },
882
- },
883
- {
884
- name: 'hive-mind_memory',
885
- description: 'Access hive shared memory',
886
- category: 'hive-mind',
887
- inputSchema: {
888
- type: 'object',
889
- properties: {
890
- action: { type: 'string', enum: ['get', 'set', 'delete', 'list'], description: 'Memory action' },
891
- key: { type: 'string', description: 'Memory key' },
892
- value: { description: 'Value to store (for set)' },
893
- },
894
- required: ['action'],
895
- },
896
- handler: async (input) => {
897
- const state = loadHiveState();
898
- const action = input.action;
899
- const key = input.key;
900
- if (action === 'get') {
901
- if (!key)
902
- return { action, error: 'Key required' };
903
- return {
904
- action,
905
- key,
906
- value: state.sharedMemory[key],
907
- exists: key in state.sharedMemory,
908
- };
909
- }
910
- if (action === 'set') {
911
- if (!key)
912
- return { action, error: 'Key required' };
913
- if (HIVE_RESERVED_KEYS.has(key))
914
- return { action, error: 'Forbidden key' };
915
- state.sharedMemory[key] = input.value;
916
- saveHiveState(state);
917
- // Also store in AgentDB for searchable hive memory
918
- try {
919
- const bridge = await import('../memory/memory-bridge.js');
920
- await bridge.bridgeStoreEntry({
921
- key: `hive-memory-${key}`,
922
- value: JSON.stringify(input.value),
923
- namespace: 'hive-memory',
924
- });
925
- }
926
- catch { /* AgentDB not available */ }
927
- return {
928
- action,
929
- key,
930
- success: true,
931
- updatedAt: new Date().toISOString(),
932
- };
933
- }
934
- if (action === 'delete') {
935
- if (!key)
936
- return { action, error: 'Key required' };
937
- const existed = key in state.sharedMemory;
938
- delete state.sharedMemory[key];
939
- saveHiveState(state);
940
- return {
941
- action,
942
- key,
943
- deleted: existed,
944
- };
945
- }
946
- if (action === 'list') {
947
- return {
948
- action,
949
- keys: Object.keys(state.sharedMemory),
950
- count: Object.keys(state.sharedMemory).length,
951
- };
952
- }
953
- return { action, error: 'Unknown action' };
954
- },
955
- },
956
- ];
957
- //# sourceMappingURL=hive-mind-tools.js.map