monomind 2.7.11 → 2.7.13

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 (1002) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/bin/cli.js +55 -4
  4. package/package.json +4 -47
  5. package/bin/npx-safe-launch.js +0 -9
  6. package/packages/@monomind/cli/.claude/agents/architecture/system-design/arch-system-design.md +0 -54
  7. package/packages/@monomind/cli/.claude/agents/consensus/crdt-synchronizer.md +0 -977
  8. package/packages/@monomind/cli/.claude/agents/consensus/quorum-manager.md +0 -106
  9. package/packages/@monomind/cli/.claude/agents/consensus/security-manager.md +0 -602
  10. package/packages/@monomind/cli/.claude/agents/core/coder.md +0 -271
  11. package/packages/@monomind/cli/.claude/agents/core/coordinator.md +0 -133
  12. package/packages/@monomind/cli/.claude/agents/core/planner.md +0 -179
  13. package/packages/@monomind/cli/.claude/agents/core/researcher.md +0 -197
  14. package/packages/@monomind/cli/.claude/agents/core/reviewer.md +0 -336
  15. package/packages/@monomind/cli/.claude/agents/core/tester.md +0 -326
  16. package/packages/@monomind/cli/.claude/agents/design/design-monodesign.md +0 -121
  17. package/packages/@monomind/cli/.claude/agents/engineering/engineering-ai-data-remediation-engineer.md +0 -212
  18. package/packages/@monomind/cli/.claude/agents/engineering/engineering-ai-engineer.md +0 -165
  19. package/packages/@monomind/cli/.claude/agents/engineering/engineering-autonomous-optimization-architect.md +0 -108
  20. package/packages/@monomind/cli/.claude/agents/engineering/engineering-backend-architect.md +0 -254
  21. package/packages/@monomind/cli/.claude/agents/engineering/engineering-code-reviewer.md +0 -95
  22. package/packages/@monomind/cli/.claude/agents/engineering/engineering-data-engineer.md +0 -307
  23. package/packages/@monomind/cli/.claude/agents/engineering/engineering-database-optimizer.md +0 -200
  24. package/packages/@monomind/cli/.claude/agents/engineering/engineering-devops-automator.md +0 -430
  25. package/packages/@monomind/cli/.claude/agents/engineering/engineering-embedded-firmware-engineer.md +0 -174
  26. package/packages/@monomind/cli/.claude/agents/engineering/engineering-feishu-integration-developer.md +0 -607
  27. package/packages/@monomind/cli/.claude/agents/engineering/engineering-frontend-developer.md +0 -249
  28. package/packages/@monomind/cli/.claude/agents/engineering/engineering-git-workflow-master.md +0 -108
  29. package/packages/@monomind/cli/.claude/agents/engineering/engineering-incident-response-commander.md +0 -482
  30. package/packages/@monomind/cli/.claude/agents/engineering/engineering-mobile-app-builder.md +0 -499
  31. package/packages/@monomind/cli/.claude/agents/engineering/engineering-rapid-prototyper.md +0 -463
  32. package/packages/@monomind/cli/.claude/agents/engineering/engineering-security-engineer.md +0 -303
  33. package/packages/@monomind/cli/.claude/agents/engineering/engineering-senior-developer.md +0 -195
  34. package/packages/@monomind/cli/.claude/agents/engineering/engineering-software-architect.md +0 -100
  35. package/packages/@monomind/cli/.claude/agents/engineering/engineering-solidity-smart-contract-engineer.md +0 -528
  36. package/packages/@monomind/cli/.claude/agents/engineering/engineering-sre.md +0 -114
  37. package/packages/@monomind/cli/.claude/agents/engineering/engineering-technical-writer.md +0 -412
  38. package/packages/@monomind/cli/.claude/agents/engineering/engineering-threat-detection-engineer.md +0 -540
  39. package/packages/@monomind/cli/.claude/agents/engineering/engineering-wechat-mini-program-developer.md +0 -351
  40. package/packages/@monomind/cli/.claude/agents/github/code-review-swarm.md +0 -557
  41. package/packages/@monomind/cli/.claude/agents/github/github-modes.md +0 -154
  42. package/packages/@monomind/cli/.claude/agents/github/issue-tracker.md +0 -297
  43. package/packages/@monomind/cli/.claude/agents/github/multi-repo-swarm.md +0 -525
  44. package/packages/@monomind/cli/.claude/agents/github/pr-manager.md +0 -161
  45. package/packages/@monomind/cli/.claude/agents/github/project-board-sync.md +0 -478
  46. package/packages/@monomind/cli/.claude/agents/github/release-manager.md +0 -296
  47. package/packages/@monomind/cli/.claude/agents/github/repo-architect.md +0 -351
  48. package/packages/@monomind/cli/.claude/agents/github/swarm-issue.md +0 -548
  49. package/packages/@monomind/cli/.claude/agents/github/swarm-pr.md +0 -427
  50. package/packages/@monomind/cli/.claude/agents/github/sync-coordinator.md +0 -355
  51. package/packages/@monomind/cli/.claude/agents/github/workflow-automation.md +0 -640
  52. package/packages/@monomind/cli/.claude/agents/goal/goal-planner.md +0 -167
  53. package/packages/@monomind/cli/.claude/agents/hive-mind/collective-intelligence-coordinator.md +0 -93
  54. package/packages/@monomind/cli/.claude/agents/hive-mind/scout-explorer.md +0 -241
  55. package/packages/@monomind/cli/.claude/agents/hive-mind/swarm-memory-manager.md +0 -192
  56. package/packages/@monomind/cli/.claude/agents/hive-mind/worker-specialist.md +0 -216
  57. package/packages/@monomind/cli/.claude/agents/marketing/marketing-competitive-content.md +0 -155
  58. package/packages/@monomind/cli/.claude/agents/marketing/marketing-cro-specialist.md +0 -147
  59. package/packages/@monomind/cli/.claude/agents/marketing/marketing-email-specialist.md +0 -90
  60. package/packages/@monomind/cli/.claude/agents/marketing/marketing-launch-strategist.md +0 -129
  61. package/packages/@monomind/cli/.claude/agents/marketing/marketing-pricing-strategist.md +0 -127
  62. package/packages/@monomind/cli/.claude/agents/optimization/benchmark-suite.md +0 -665
  63. package/packages/@monomind/cli/.claude/agents/optimization/load-balancer.md +0 -431
  64. package/packages/@monomind/cli/.claude/agents/optimization/performance-monitor.md +0 -672
  65. package/packages/@monomind/cli/.claude/agents/optimization/resource-allocator.md +0 -674
  66. package/packages/@monomind/cli/.claude/agents/optimization/topology-optimizer.md +0 -808
  67. package/packages/@monomind/cli/.claude/agents/schemas/architecture-output.json +0 -43
  68. package/packages/@monomind/cli/.claude/agents/schemas/code-review-output.json +0 -28
  69. package/packages/@monomind/cli/.claude/agents/schemas/generic-task-input.json +0 -12
  70. package/packages/@monomind/cli/.claude/agents/schemas/implementation-output.json +0 -18
  71. package/packages/@monomind/cli/.claude/agents/schemas/research-output.json +0 -31
  72. package/packages/@monomind/cli/.claude/agents/schemas/security-audit-output.json +0 -29
  73. package/packages/@monomind/cli/.claude/agents/schemas/test-report-output.json +0 -29
  74. package/packages/@monomind/cli/.claude/agents/specialists/integration-architect.md +0 -94
  75. package/packages/@monomind/cli/.claude/agents/specialized/agentic-identity-trust.md +0 -388
  76. package/packages/@monomind/cli/.claude/agents/specialized/agents-orchestrator.md +0 -368
  77. package/packages/@monomind/cli/.claude/agents/specialized/automation-governance-architect.md +0 -217
  78. package/packages/@monomind/cli/.claude/agents/specialized/blockchain-security-auditor.md +0 -497
  79. package/packages/@monomind/cli/.claude/agents/specialized/compliance-auditor.md +0 -159
  80. package/packages/@monomind/cli/.claude/agents/specialized/identity-graph-operator.md +0 -261
  81. package/packages/@monomind/cli/.claude/agents/specialized/lsp-index-engineer.md +0 -315
  82. package/packages/@monomind/cli/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -89
  83. package/packages/@monomind/cli/.claude/agents/specialized/specialized-cultural-intelligence-strategist.md +0 -89
  84. package/packages/@monomind/cli/.claude/agents/specialized/specialized-developer-advocate.md +0 -318
  85. package/packages/@monomind/cli/.claude/agents/specialized/specialized-document-generator.md +0 -56
  86. package/packages/@monomind/cli/.claude/agents/specialized/specialized-mcp-builder.md +0 -64
  87. package/packages/@monomind/cli/.claude/agents/specialized/specialized-model-qa.md +0 -489
  88. package/packages/@monomind/cli/.claude/agents/specialized/specialized-workflow-architect.md +0 -595
  89. package/packages/@monomind/cli/.claude/agents/specialized/zk-steward.md +0 -212
  90. package/packages/@monomind/cli/.claude/agents/swarm/mesh-coordinator.md +0 -97
  91. package/packages/@monomind/cli/.claude/agents/templates/automation-smart-agent.md +0 -185
  92. package/packages/@monomind/cli/.claude/agents/templates/coordinator-swarm-init.md +0 -83
  93. package/packages/@monomind/cli/.claude/agents/testing/production-validator.md +0 -375
  94. package/packages/@monomind/cli/.claude/agents/testing/tdd-london-swarm.md +0 -241
  95. package/packages/@monomind/cli/.claude/agents/testing/testing-accessibility-auditor.md +0 -322
  96. package/packages/@monomind/cli/.claude/agents/testing/testing-api-tester.md +0 -307
  97. package/packages/@monomind/cli/.claude/agents/testing/testing-evidence-collector.md +0 -213
  98. package/packages/@monomind/cli/.claude/agents/testing/testing-performance-benchmarker.md +0 -269
  99. package/packages/@monomind/cli/.claude/agents/testing/testing-test-results-analyzer.md +0 -306
  100. package/packages/@monomind/cli/.claude/agents/testing/testing-tool-evaluator.md +0 -395
  101. package/packages/@monomind/cli/.claude/agents/testing/testing-workflow-optimizer.md +0 -451
  102. package/packages/@monomind/cli/.claude/commands/agents/README.md +0 -14
  103. package/packages/@monomind/cli/.claude/commands/agents/agent-capabilities.md +0 -25
  104. package/packages/@monomind/cli/.claude/commands/agents/agent-coordination.md +0 -32
  105. package/packages/@monomind/cli/.claude/commands/agents/agent-spawning.md +0 -32
  106. package/packages/@monomind/cli/.claude/commands/agents/agent-types.md +0 -30
  107. package/packages/@monomind/cli/.claude/commands/analysis/README.md +0 -18
  108. package/packages/@monomind/cli/.claude/commands/analysis/bottleneck-detect.md +0 -69
  109. package/packages/@monomind/cli/.claude/commands/analysis/performance-bottlenecks.md +0 -59
  110. package/packages/@monomind/cli/.claude/commands/analysis/performance-report.md +0 -52
  111. package/packages/@monomind/cli/.claude/commands/analysis/token-usage.md +0 -47
  112. package/packages/@monomind/cli/.claude/commands/automation/README.md +0 -19
  113. package/packages/@monomind/cli/.claude/commands/automation/auto-agent.md +0 -86
  114. package/packages/@monomind/cli/.claude/commands/automation/self-healing.md +0 -108
  115. package/packages/@monomind/cli/.claude/commands/automation/session-memory.md +0 -89
  116. package/packages/@monomind/cli/.claude/commands/automation/smart-agents.md +0 -81
  117. package/packages/@monomind/cli/.claude/commands/automation/smart-spawn.md +0 -66
  118. package/packages/@monomind/cli/.claude/commands/automation/workflow-select.md +0 -60
  119. package/packages/@monomind/cli/.claude/commands/coordination/README.md +0 -13
  120. package/packages/@monomind/cli/.claude/commands/coordination/agent-spawn.md +0 -69
  121. package/packages/@monomind/cli/.claude/commands/coordination/swarm-init.md +0 -82
  122. package/packages/@monomind/cli/.claude/commands/coordination/task-orchestrate.md +0 -79
  123. package/packages/@monomind/cli/.claude/commands/github/README.md +0 -24
  124. package/packages/@monomind/cli/.claude/commands/github/github-modes.md +0 -151
  125. package/packages/@monomind/cli/.claude/commands/github/issue-tracker.md +0 -291
  126. package/packages/@monomind/cli/.claude/commands/github/pr-manager.md +0 -171
  127. package/packages/@monomind/cli/.claude/commands/github/release-manager.md +0 -343
  128. package/packages/@monomind/cli/.claude/commands/github/repo-architect.md +0 -372
  129. package/packages/@monomind/cli/.claude/commands/github/sync-coordinator.md +0 -297
  130. package/packages/@monomind/cli/.claude/commands/hive-mind/README.md +0 -42
  131. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-consensus.md +0 -72
  132. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-init.md +0 -68
  133. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-memory.md +0 -73
  134. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-spawn.md +0 -82
  135. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-status.md +0 -56
  136. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind-stop.md +0 -55
  137. package/packages/@monomind/cli/.claude/commands/hive-mind/hive-mind.md +0 -87
  138. package/packages/@monomind/cli/.claude/commands/hooks/README.md +0 -66
  139. package/packages/@monomind/cli/.claude/commands/hooks/overview.md +0 -112
  140. package/packages/@monomind/cli/.claude/commands/hooks/post-edit.md +0 -78
  141. package/packages/@monomind/cli/.claude/commands/hooks/post-task.md +0 -62
  142. package/packages/@monomind/cli/.claude/commands/hooks/pre-edit.md +0 -81
  143. package/packages/@monomind/cli/.claude/commands/hooks/pre-task.md +0 -73
  144. package/packages/@monomind/cli/.claude/commands/hooks/session-end.md +0 -82
  145. package/packages/@monomind/cli/.claude/commands/hooks/setup.md +0 -132
  146. package/packages/@monomind/cli/.claude/commands/mastermind/_repeat.md +0 -492
  147. package/packages/@monomind/cli/.claude/commands/mastermind/_taskfile.md +0 -232
  148. package/packages/@monomind/cli/.claude/commands/mastermind/adr.md +0 -9
  149. package/packages/@monomind/cli/.claude/commands/mastermind/approvev1.md +0 -94
  150. package/packages/@monomind/cli/.claude/commands/mastermind/architect.md +0 -52
  151. package/packages/@monomind/cli/.claude/commands/mastermind/autodev.md +0 -28
  152. package/packages/@monomind/cli/.claude/commands/mastermind/brain.md +0 -99
  153. package/packages/@monomind/cli/.claude/commands/mastermind/budget.md +0 -5
  154. package/packages/@monomind/cli/.claude/commands/mastermind/build.md +0 -23
  155. package/packages/@monomind/cli/.claude/commands/mastermind/code-review.md +0 -314
  156. package/packages/@monomind/cli/.claude/commands/mastermind/content.md +0 -23
  157. package/packages/@monomind/cli/.claude/commands/mastermind/createorg.md +0 -143
  158. package/packages/@monomind/cli/.claude/commands/mastermind/createtask.md +0 -372
  159. package/packages/@monomind/cli/.claude/commands/mastermind/debug.md +0 -19
  160. package/packages/@monomind/cli/.claude/commands/mastermind/design.md +0 -17
  161. package/packages/@monomind/cli/.claude/commands/mastermind/do.md +0 -525
  162. package/packages/@monomind/cli/.claude/commands/mastermind/execute.md +0 -17
  163. package/packages/@monomind/cli/.claude/commands/mastermind/finance.md +0 -23
  164. package/packages/@monomind/cli/.claude/commands/mastermind/finish.md +0 -17
  165. package/packages/@monomind/cli/.claude/commands/mastermind/graph-status.md +0 -5
  166. package/packages/@monomind/cli/.claude/commands/mastermind/help.md +0 -133
  167. package/packages/@monomind/cli/.claude/commands/mastermind/idea.md +0 -23
  168. package/packages/@monomind/cli/.claude/commands/mastermind/ideate.md +0 -258
  169. package/packages/@monomind/cli/.claude/commands/mastermind/improve.md +0 -342
  170. package/packages/@monomind/cli/.claude/commands/mastermind/loops.md +0 -5
  171. package/packages/@monomind/cli/.claude/commands/mastermind/marketing.md +0 -23
  172. package/packages/@monomind/cli/.claude/commands/mastermind/master.md +0 -1140
  173. package/packages/@monomind/cli/.claude/commands/mastermind/memory.md +0 -227
  174. package/packages/@monomind/cli/.claude/commands/mastermind/okf-export.md +0 -14
  175. package/packages/@monomind/cli/.claude/commands/mastermind/okf-import.md +0 -15
  176. package/packages/@monomind/cli/.claude/commands/mastermind/ops.md +0 -23
  177. package/packages/@monomind/cli/.claude/commands/mastermind/orgs.md +0 -18
  178. package/packages/@monomind/cli/.claude/commands/mastermind/orgstatus.md +0 -56
  179. package/packages/@monomind/cli/.claude/commands/mastermind/plan.md +0 -23
  180. package/packages/@monomind/cli/.claude/commands/mastermind/receive-review.md +0 -17
  181. package/packages/@monomind/cli/.claude/commands/mastermind/references/antigravity-tools.md +0 -60
  182. package/packages/@monomind/cli/.claude/commands/mastermind/references/claude-code-tools.md +0 -50
  183. package/packages/@monomind/cli/.claude/commands/mastermind/references/codex-tools.md +0 -64
  184. package/packages/@monomind/cli/.claude/commands/mastermind/references/copilot-tools.md +0 -49
  185. package/packages/@monomind/cli/.claude/commands/mastermind/references/gemini-tools.md +0 -63
  186. package/packages/@monomind/cli/.claude/commands/mastermind/references/pi-tools.md +0 -28
  187. package/packages/@monomind/cli/.claude/commands/mastermind/release.md +0 -23
  188. package/packages/@monomind/cli/.claude/commands/mastermind/repeat.md +0 -254
  189. package/packages/@monomind/cli/.claude/commands/mastermind/research.md +0 -23
  190. package/packages/@monomind/cli/.claude/commands/mastermind/review.md +0 -34
  191. package/packages/@monomind/cli/.claude/commands/mastermind/runorg.md +0 -71
  192. package/packages/@monomind/cli/.claude/commands/mastermind/runorgv1.md +0 -159
  193. package/packages/@monomind/cli/.claude/commands/mastermind/sales.md +0 -23
  194. package/packages/@monomind/cli/.claude/commands/mastermind/skill-builder.md +0 -17
  195. package/packages/@monomind/cli/.claude/commands/mastermind/specialagents.md +0 -122
  196. package/packages/@monomind/cli/.claude/commands/mastermind/stoporg.md +0 -78
  197. package/packages/@monomind/cli/.claude/commands/mastermind/swarm.md +0 -158
  198. package/packages/@monomind/cli/.claude/commands/mastermind/taskdev.md +0 -23
  199. package/packages/@monomind/cli/.claude/commands/mastermind/tdd.md +0 -19
  200. package/packages/@monomind/cli/.claude/commands/mastermind/techport.md +0 -27
  201. package/packages/@monomind/cli/.claude/commands/mastermind/topology.md +0 -121
  202. package/packages/@monomind/cli/.claude/commands/mastermind/understand.md +0 -136
  203. package/packages/@monomind/cli/.claude/commands/mastermind/verify.md +0 -19
  204. package/packages/@monomind/cli/.claude/commands/mastermind/worktree.md +0 -17
  205. package/packages/@monomind/cli/.claude/commands/mastermind.md +0 -140
  206. package/packages/@monomind/cli/.claude/commands/memory/README.md +0 -79
  207. package/packages/@monomind/cli/.claude/commands/memory/memory-search.md +0 -77
  208. package/packages/@monomind/cli/.claude/commands/monitoring/README.md +0 -69
  209. package/packages/@monomind/cli/.claude/commands/monitoring/agent-metrics.md +0 -65
  210. package/packages/@monomind/cli/.claude/commands/monitoring/agents.md +0 -71
  211. package/packages/@monomind/cli/.claude/commands/monitoring/status.md +0 -108
  212. package/packages/@monomind/cli/.claude/commands/monobrowse.md +0 -21
  213. package/packages/@monomind/cli/.claude/commands/monoes/README.md +0 -30
  214. package/packages/@monomind/cli/.claude/commands/monoes/install.md +0 -163
  215. package/packages/@monomind/cli/.claude/commands/monoes/monoagent.md +0 -148
  216. package/packages/@monomind/cli/.claude/commands/monoes/monoclip.md +0 -64
  217. package/packages/@monomind/cli/.claude/commands/monoes/monotask.md +0 -137
  218. package/packages/@monomind/cli/.claude/commands/monograph/README.md +0 -102
  219. package/packages/@monomind/cli/.claude/commands/monograph/monograph-build.md +0 -79
  220. package/packages/@monomind/cli/.claude/commands/monograph/monograph-search.md +0 -96
  221. package/packages/@monomind/cli/.claude/commands/monograph/monograph-stats.md +0 -53
  222. package/packages/@monomind/cli/.claude/commands/monograph/monograph-watch.md +0 -63
  223. package/packages/@monomind/cli/.claude/commands/monograph/monograph-wiki.md +0 -91
  224. package/packages/@monomind/cli/.claude/commands/optimization/auto-topology.md +0 -85
  225. package/packages/@monomind/cli/.claude/commands/optimization/performance-optimize.md +0 -79
  226. package/packages/@monomind/cli/.claude/commands/pair/README.md +0 -79
  227. package/packages/@monomind/cli/.claude/commands/pair/examples.md +0 -156
  228. package/packages/@monomind/cli/.claude/commands/pair/modes.md +0 -122
  229. package/packages/@monomind/cli/.claude/commands/pair/session.md +0 -124
  230. package/packages/@monomind/cli/.claude/commands/stream-chain/pipeline.md +0 -116
  231. package/packages/@monomind/cli/.claude/commands/stream-chain/run.md +0 -156
  232. package/packages/@monomind/cli/.claude/commands/swarm/README.md +0 -40
  233. package/packages/@monomind/cli/.claude/commands/swarm/analysis.md +0 -73
  234. package/packages/@monomind/cli/.claude/commands/swarm/development.md +0 -72
  235. package/packages/@monomind/cli/.claude/commands/swarm/examples.md +0 -103
  236. package/packages/@monomind/cli/.claude/commands/swarm/maintenance.md +0 -75
  237. package/packages/@monomind/cli/.claude/commands/swarm/optimization.md +0 -84
  238. package/packages/@monomind/cli/.claude/commands/swarm/research.md +0 -76
  239. package/packages/@monomind/cli/.claude/commands/swarm/swarm.md +0 -79
  240. package/packages/@monomind/cli/.claude/commands/swarm/testing.md +0 -80
  241. package/packages/@monomind/cli/.claude/commands/tokens.md +0 -18
  242. package/packages/@monomind/cli/.claude/commands/truth/start.md +0 -121
  243. package/packages/@monomind/cli/.claude/commands/ts.md +0 -14
  244. package/packages/@monomind/cli/.claude/commands/workflows/README.md +0 -64
  245. package/packages/@monomind/cli/.claude/commands/workflows/development.md +0 -86
  246. package/packages/@monomind/cli/.claude/commands/workflows/research.md +0 -89
  247. package/packages/@monomind/cli/.claude/commands/workflows/workflow-create.md +0 -83
  248. package/packages/@monomind/cli/.claude/commands/workflows/workflow-execute.md +0 -101
  249. package/packages/@monomind/cli/.claude/commands/workflows/workflow-export.md +0 -88
  250. package/packages/@monomind/cli/.claude/helpers/build-skill-registry.cjs +0 -323
  251. package/packages/@monomind/cli/.claude/helpers/control-start.cjs +0 -327
  252. package/packages/@monomind/cli/.claude/helpers/control-stop.cjs +0 -95
  253. package/packages/@monomind/cli/.claude/helpers/event-logger.cjs +0 -266
  254. package/packages/@monomind/cli/.claude/helpers/graphify-freshen.cjs +0 -148
  255. package/packages/@monomind/cli/.claude/helpers/handlers/adr-draft-handler.cjs +0 -78
  256. package/packages/@monomind/cli/.claude/helpers/handlers/agent-start-handler.cjs +0 -132
  257. package/packages/@monomind/cli/.claude/helpers/handlers/budget-status-handler.cjs +0 -14
  258. package/packages/@monomind/cli/.claude/helpers/handlers/capture-handler.cjs +0 -736
  259. package/packages/@monomind/cli/.claude/helpers/handlers/compact-handler.cjs +0 -35
  260. package/packages/@monomind/cli/.claude/helpers/handlers/edit-handler.cjs +0 -178
  261. package/packages/@monomind/cli/.claude/helpers/handlers/gates-handler.cjs +0 -494
  262. package/packages/@monomind/cli/.claude/helpers/handlers/graph-status-handler.cjs +0 -45
  263. package/packages/@monomind/cli/.claude/helpers/handlers/loops-status-handler.cjs +0 -48
  264. package/packages/@monomind/cli/.claude/helpers/handlers/route-handler.cjs +0 -770
  265. package/packages/@monomind/cli/.claude/helpers/handlers/session-handler.cjs +0 -286
  266. package/packages/@monomind/cli/.claude/helpers/handlers/session-restore-handler.cjs +0 -573
  267. package/packages/@monomind/cli/.claude/helpers/handlers/stats-handler.cjs +0 -14
  268. package/packages/@monomind/cli/.claude/helpers/handlers/task-handler.cjs +0 -241
  269. package/packages/@monomind/cli/.claude/helpers/hook-handler.cjs +0 -951
  270. package/packages/@monomind/cli/.claude/helpers/intelligence.cjs +0 -510
  271. package/packages/@monomind/cli/.claude/helpers/learning-service.mjs +0 -61
  272. package/packages/@monomind/cli/.claude/helpers/loop-tracker.cjs +0 -119
  273. package/packages/@monomind/cli/.claude/helpers/mastermind-activate.cjs +0 -35
  274. package/packages/@monomind/cli/.claude/helpers/memory-palace.cjs +0 -461
  275. package/packages/@monomind/cli/.claude/helpers/memory.cjs +0 -193
  276. package/packages/@monomind/cli/.claude/helpers/metrics-db.mjs +0 -87
  277. package/packages/@monomind/cli/.claude/helpers/monolean-activate.cjs +0 -30
  278. package/packages/@monomind/cli/.claude/helpers/monolean-config.cjs +0 -76
  279. package/packages/@monomind/cli/.claude/helpers/monolean-instructions.cjs +0 -109
  280. package/packages/@monomind/cli/.claude/helpers/monolean-propagate.cjs +0 -13
  281. package/packages/@monomind/cli/.claude/helpers/monolean-tracker.cjs +0 -18
  282. package/packages/@monomind/cli/.claude/helpers/router.cjs +0 -571
  283. package/packages/@monomind/cli/.claude/helpers/session.cjs +0 -145
  284. package/packages/@monomind/cli/.claude/helpers/skill-registry.json +0 -4948
  285. package/packages/@monomind/cli/.claude/helpers/statusline.cjs +0 -1368
  286. package/packages/@monomind/cli/.claude/helpers/toggle-statusline.cjs +0 -73
  287. package/packages/@monomind/cli/.claude/helpers/token-tracker.cjs +0 -1034
  288. package/packages/@monomind/cli/.claude/helpers/utils/agent-registrations.cjs +0 -41
  289. package/packages/@monomind/cli/.claude/helpers/utils/fs-helpers.cjs +0 -183
  290. package/packages/@monomind/cli/.claude/helpers/utils/micro-agents.cjs +0 -358
  291. package/packages/@monomind/cli/.claude/helpers/utils/monograph.cjs +0 -692
  292. package/packages/@monomind/cli/.claude/helpers/utils/system-pressure.cjs +0 -46
  293. package/packages/@monomind/cli/.claude/helpers/utils/telemetry.cjs +0 -162
  294. package/packages/@monomind/cli/.claude/settings.json +0 -448
  295. package/packages/@monomind/cli/.claude/skills/agent-browser-testing/SKILL.md +0 -964
  296. package/packages/@monomind/cli/.claude/skills/agentic-jujutsu/SKILL.md +0 -645
  297. package/packages/@monomind/cli/.claude/skills/github-issue-triage/SKILL.md +0 -354
  298. package/packages/@monomind/cli/.claude/skills/github-repo-recap/SKILL.md +0 -207
  299. package/packages/@monomind/cli/.claude/skills/hive-mind-advanced/SKILL.md +0 -694
  300. package/packages/@monomind/cli/.claude/skills/hooks-automation/SKILL.md +0 -1192
  301. package/packages/@monomind/cli/.claude/skills/mastermind-access/SKILL.md +0 -236
  302. package/packages/@monomind/cli/.claude/skills/mastermind-activity/SKILL.md +0 -191
  303. package/packages/@monomind/cli/.claude/skills/mastermind-adapter-manager/SKILL.md +0 -259
  304. package/packages/@monomind/cli/.claude/skills/mastermind-adapters/SKILL.md +0 -204
  305. package/packages/@monomind/cli/.claude/skills/mastermind-agent-detail/SKILL.md +0 -242
  306. package/packages/@monomind/cli/.claude/skills/mastermind-agent-select/SKILL.md +0 -132
  307. package/packages/@monomind/cli/.claude/skills/mastermind-agents/SKILL.md +0 -182
  308. package/packages/@monomind/cli/.claude/skills/mastermind-approval-detail/SKILL.md +0 -259
  309. package/packages/@monomind/cli/.claude/skills/mastermind-approvev1/SKILL.md +0 -191
  310. package/packages/@monomind/cli/.claude/skills/mastermind-architect/SKILL.md +0 -862
  311. package/packages/@monomind/cli/.claude/skills/mastermind-autodev/SKILL.md +0 -360
  312. package/packages/@monomind/cli/.claude/skills/mastermind-backup/SKILL.md +0 -197
  313. package/packages/@monomind/cli/.claude/skills/mastermind-bootstrap/SKILL.md +0 -190
  314. package/packages/@monomind/cli/.claude/skills/mastermind-budgets/SKILL.md +0 -237
  315. package/packages/@monomind/cli/.claude/skills/mastermind-build/SKILL.md +0 -169
  316. package/packages/@monomind/cli/.claude/skills/mastermind-companies/SKILL.md +0 -256
  317. package/packages/@monomind/cli/.claude/skills/mastermind-content/SKILL.md +0 -197
  318. package/packages/@monomind/cli/.claude/skills/mastermind-costs/SKILL.md +0 -151
  319. package/packages/@monomind/cli/.claude/skills/mastermind-createorg/SKILL.md +0 -247
  320. package/packages/@monomind/cli/.claude/skills/mastermind-debug/SKILL.md +0 -277
  321. package/packages/@monomind/cli/.claude/skills/mastermind-delegation/SKILL.md +0 -83
  322. package/packages/@monomind/cli/.claude/skills/mastermind-design/SKILL.md +0 -190
  323. package/packages/@monomind/cli/.claude/skills/mastermind-diagnose/SKILL.md +0 -249
  324. package/packages/@monomind/cli/.claude/skills/mastermind-env/SKILL.md +0 -203
  325. package/packages/@monomind/cli/.claude/skills/mastermind-environments/SKILL.md +0 -250
  326. package/packages/@monomind/cli/.claude/skills/mastermind-execute/SKILL.md +0 -104
  327. package/packages/@monomind/cli/.claude/skills/mastermind-export/SKILL.md +0 -333
  328. package/packages/@monomind/cli/.claude/skills/mastermind-finance/SKILL.md +0 -166
  329. package/packages/@monomind/cli/.claude/skills/mastermind-finish/SKILL.md +0 -251
  330. package/packages/@monomind/cli/.claude/skills/mastermind-goal-detail/SKILL.md +0 -255
  331. package/packages/@monomind/cli/.claude/skills/mastermind-goals/SKILL.md +0 -149
  332. package/packages/@monomind/cli/.claude/skills/mastermind-heartbeatv1/SKILL.md +0 -167
  333. package/packages/@monomind/cli/.claude/skills/mastermind-idea/SKILL.md +0 -1142
  334. package/packages/@monomind/cli/.claude/skills/mastermind-import/SKILL.md +0 -281
  335. package/packages/@monomind/cli/.claude/skills/mastermind-inbox/SKILL.md +0 -226
  336. package/packages/@monomind/cli/.claude/skills/mastermind-instance/SKILL.md +0 -235
  337. package/packages/@monomind/cli/.claude/skills/mastermind-instance-settings/SKILL.md +0 -315
  338. package/packages/@monomind/cli/.claude/skills/mastermind-intake/SKILL.md +0 -83
  339. package/packages/@monomind/cli/.claude/skills/mastermind-invite-landing/SKILL.md +0 -227
  340. package/packages/@monomind/cli/.claude/skills/mastermind-invites/SKILL.md +0 -254
  341. package/packages/@monomind/cli/.claude/skills/mastermind-issue-detail/SKILL.md +0 -291
  342. package/packages/@monomind/cli/.claude/skills/mastermind-issues/SKILL.md +0 -235
  343. package/packages/@monomind/cli/.claude/skills/mastermind-join-queue/SKILL.md +0 -170
  344. package/packages/@monomind/cli/.claude/skills/mastermind-liveness/SKILL.md +0 -392
  345. package/packages/@monomind/cli/.claude/skills/mastermind-marketing/SKILL.md +0 -228
  346. package/packages/@monomind/cli/.claude/skills/mastermind-marketing/references/copywriting-frameworks.md +0 -181
  347. package/packages/@monomind/cli/.claude/skills/mastermind-marketing/references/persuasion-psychology.md +0 -158
  348. package/packages/@monomind/cli/.claude/skills/mastermind-memory/SKILL.md +0 -321
  349. package/packages/@monomind/cli/.claude/skills/mastermind-monitor/SKILL.md +0 -1284
  350. package/packages/@monomind/cli/.claude/skills/mastermind-monotask/SKILL.md +0 -350
  351. package/packages/@monomind/cli/.claude/skills/mastermind-my-issues/SKILL.md +0 -146
  352. package/packages/@monomind/cli/.claude/skills/mastermind-new-agent/SKILL.md +0 -241
  353. package/packages/@monomind/cli/.claude/skills/mastermind-ops/SKILL.md +0 -168
  354. package/packages/@monomind/cli/.claude/skills/mastermind-org-chart/SKILL.md +0 -209
  355. package/packages/@monomind/cli/.claude/skills/mastermind-org-settings/SKILL.md +0 -274
  356. package/packages/@monomind/cli/.claude/skills/mastermind-orgs/SKILL.md +0 -120
  357. package/packages/@monomind/cli/.claude/skills/mastermind-orgstatus/SKILL.md +0 -254
  358. package/packages/@monomind/cli/.claude/skills/mastermind-plan/SKILL.md +0 -217
  359. package/packages/@monomind/cli/.claude/skills/mastermind-plan-to-tasks/SKILL.md +0 -136
  360. package/packages/@monomind/cli/.claude/skills/mastermind-plugin-manager/SKILL.md +0 -241
  361. package/packages/@monomind/cli/.claude/skills/mastermind-plugin-settings/SKILL.md +0 -273
  362. package/packages/@monomind/cli/.claude/skills/mastermind-plugins/SKILL.md +0 -190
  363. package/packages/@monomind/cli/.claude/skills/mastermind-profile/SKILL.md +0 -187
  364. package/packages/@monomind/cli/.claude/skills/mastermind-project-detail/SKILL.md +0 -249
  365. package/packages/@monomind/cli/.claude/skills/mastermind-project-workspace/SKILL.md +0 -244
  366. package/packages/@monomind/cli/.claude/skills/mastermind-projects/SKILL.md +0 -167
  367. package/packages/@monomind/cli/.claude/skills/mastermind-protocol/SKILL.md +0 -404
  368. package/packages/@monomind/cli/.claude/skills/mastermind-receive-review/SKILL.md +0 -213
  369. package/packages/@monomind/cli/.claude/skills/mastermind-release/SKILL.md +0 -168
  370. package/packages/@monomind/cli/.claude/skills/mastermind-repeat/SKILL.md +0 -171
  371. package/packages/@monomind/cli/.claude/skills/mastermind-research/SKILL.md +0 -168
  372. package/packages/@monomind/cli/.claude/skills/mastermind-review/SKILL.md +0 -233
  373. package/packages/@monomind/cli/.claude/skills/mastermind-routine-detail/SKILL.md +0 -253
  374. package/packages/@monomind/cli/.claude/skills/mastermind-routines/SKILL.md +0 -203
  375. package/packages/@monomind/cli/.claude/skills/mastermind-runorg/SKILL.md +0 -43
  376. package/packages/@monomind/cli/.claude/skills/mastermind-runorgv1/SKILL.md +0 -731
  377. package/packages/@monomind/cli/.claude/skills/mastermind-sales/SKILL.md +0 -170
  378. package/packages/@monomind/cli/.claude/skills/mastermind-search/SKILL.md +0 -186
  379. package/packages/@monomind/cli/.claude/skills/mastermind-secrets/SKILL.md +0 -199
  380. package/packages/@monomind/cli/.claude/skills/mastermind-skill-builder/SKILL.md +0 -447
  381. package/packages/@monomind/cli/.claude/skills/mastermind-skills/SKILL.md +0 -156
  382. package/packages/@monomind/cli/.claude/skills/mastermind-stoporg/SKILL.md +0 -147
  383. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/SKILL.md +0 -377
  384. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/code-quality-reviewer-prompt.md +0 -60
  385. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/final-reviewer-prompt.md +0 -144
  386. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/implementer-prompt.md +0 -114
  387. package/packages/@monomind/cli/.claude/skills/mastermind-taskdev/spec-reviewer-prompt.md +0 -80
  388. package/packages/@monomind/cli/.claude/skills/mastermind-tasks/SKILL.md +0 -152
  389. package/packages/@monomind/cli/.claude/skills/mastermind-tdd/SKILL.md +0 -424
  390. package/packages/@monomind/cli/.claude/skills/mastermind-techport/SKILL.md +0 -777
  391. package/packages/@monomind/cli/.claude/skills/mastermind-threads/SKILL.md +0 -259
  392. package/packages/@monomind/cli/.claude/skills/mastermind-tree-control/SKILL.md +0 -250
  393. package/packages/@monomind/cli/.claude/skills/mastermind-verify/SKILL.md +0 -196
  394. package/packages/@monomind/cli/.claude/skills/mastermind-wiki/SKILL.md +0 -314
  395. package/packages/@monomind/cli/.claude/skills/mastermind-workspace-detail/SKILL.md +0 -317
  396. package/packages/@monomind/cli/.claude/skills/mastermind-workspaces/SKILL.md +0 -261
  397. package/packages/@monomind/cli/.claude/skills/mastermind-worktree/SKILL.md +0 -215
  398. package/packages/@monomind/cli/.claude/skills/monolean/SKILL.md +0 -118
  399. package/packages/@monomind/cli/.claude/skills/monolean-audit/SKILL.md +0 -41
  400. package/packages/@monomind/cli/.claude/skills/monolean-debt/SKILL.md +0 -46
  401. package/packages/@monomind/cli/.claude/skills/monolean-help/SKILL.md +0 -60
  402. package/packages/@monomind/cli/.claude/skills/monolean-review/SKILL.md +0 -57
  403. package/packages/@monomind/cli/.claude/skills/monomind/browse-agentcore.md +0 -115
  404. package/packages/@monomind/cli/.claude/skills/monomind/browse-electron.md +0 -188
  405. package/packages/@monomind/cli/.claude/skills/monomind/browse-qa.md +0 -228
  406. package/packages/@monomind/cli/.claude/skills/monomind/browse-references/authentication.md +0 -161
  407. package/packages/@monomind/cli/.claude/skills/monomind/browse-references/trust-boundaries.md +0 -40
  408. package/packages/@monomind/cli/.claude/skills/monomind/browse-references/video-recording.md +0 -83
  409. package/packages/@monomind/cli/.claude/skills/monomind/browse-slack.md +0 -188
  410. package/packages/@monomind/cli/.claude/skills/monomind/browse-vercel.md +0 -239
  411. package/packages/@monomind/cli/.claude/skills/monomind/browse.md +0 -724
  412. package/packages/@monomind/cli/.claude/skills/monomotion/SKILL.md +0 -145
  413. package/packages/@monomind/cli/.claude/skills/monomotion/rules/api-control.md +0 -139
  414. package/packages/@monomind/cli/.claude/skills/monomotion/rules/effects.md +0 -109
  415. package/packages/@monomind/cli/.claude/skills/monomotion/rules/integration.md +0 -140
  416. package/packages/@monomind/cli/.claude/skills/monomotion/rules/scroll.md +0 -131
  417. package/packages/@monomind/cli/.claude/skills/monomotion/rules/sequencing.md +0 -105
  418. package/packages/@monomind/cli/.claude/skills/monomotion/rules/svg.md +0 -101
  419. package/packages/@monomind/cli/.claude/skills/monomotion/rules/text.md +0 -119
  420. package/packages/@monomind/cli/.claude/skills/pair-programming/SKILL.md +0 -1202
  421. package/packages/@monomind/cli/.claude/skills/performance-analysis/SKILL.md +0 -560
  422. package/packages/@monomind/cli/.claude/skills/skill-builder/SKILL.md +0 -910
  423. package/packages/@monomind/cli/.claude/skills/specialagent/SKILL.md +0 -206
  424. package/packages/@monomind/cli/.claude/skills/stop-slop/SKILL.md +0 -67
  425. package/packages/@monomind/cli/.claude/skills/stop-slop/references/examples.md +0 -61
  426. package/packages/@monomind/cli/.claude/skills/stop-slop/references/phrases.md +0 -130
  427. package/packages/@monomind/cli/.claude/skills/stop-slop/references/structures.md +0 -136
  428. package/packages/@monomind/cli/.claude/skills/swarm-advanced/SKILL.md +0 -936
  429. package/packages/@monomind/cli/.claude/skills/swarm-orchestration/SKILL.md +0 -179
  430. package/packages/@monomind/cli/.claude/skills/verification-quality/SKILL.md +0 -674
  431. package/packages/@monomind/cli/README.md +0 -414
  432. package/packages/@monomind/cli/bin/cli.js +0 -379
  433. package/packages/@monomind/cli/bin/mcp-server.js +0 -208
  434. package/packages/@monomind/cli/bin/preinstall.cjs +0 -2
  435. package/packages/@monomind/cli/dist/src/agents/registry-builder.d.ts +0 -64
  436. package/packages/@monomind/cli/dist/src/agents/registry-builder.js +0 -228
  437. package/packages/@monomind/cli/dist/src/autopilot-state.d.ts +0 -77
  438. package/packages/@monomind/cli/dist/src/autopilot-state.js +0 -336
  439. package/packages/@monomind/cli/dist/src/browser/action-builder/analyzer.d.ts +0 -11
  440. package/packages/@monomind/cli/dist/src/browser/action-builder/analyzer.js +0 -64
  441. package/packages/@monomind/cli/dist/src/browser/action-builder/types.d.ts +0 -47
  442. package/packages/@monomind/cli/dist/src/browser/action-builder/types.js +0 -2
  443. package/packages/@monomind/cli/dist/src/browser/adapters/gemini.d.ts +0 -3
  444. package/packages/@monomind/cli/dist/src/browser/adapters/gemini.js +0 -16
  445. package/packages/@monomind/cli/dist/src/browser/adapters/index.d.ts +0 -19
  446. package/packages/@monomind/cli/dist/src/browser/adapters/index.js +0 -23
  447. package/packages/@monomind/cli/dist/src/browser/adapters/instagram.d.ts +0 -3
  448. package/packages/@monomind/cli/dist/src/browser/adapters/instagram.js +0 -17
  449. package/packages/@monomind/cli/dist/src/browser/adapters/linkedin.d.ts +0 -3
  450. package/packages/@monomind/cli/dist/src/browser/adapters/linkedin.js +0 -19
  451. package/packages/@monomind/cli/dist/src/browser/adapters/x.d.ts +0 -3
  452. package/packages/@monomind/cli/dist/src/browser/adapters/x.js +0 -19
  453. package/packages/@monomind/cli/dist/src/browser/dashboard/server.d.ts +0 -9
  454. package/packages/@monomind/cli/dist/src/browser/dashboard/server.js +0 -215
  455. package/packages/@monomind/cli/dist/src/browser/dashboard/ui.html +0 -261
  456. package/packages/@monomind/cli/dist/src/browser/workflow/engine.d.ts +0 -15
  457. package/packages/@monomind/cli/dist/src/browser/workflow/engine.js +0 -127
  458. package/packages/@monomind/cli/dist/src/browser/workflow/expression.d.ts +0 -4
  459. package/packages/@monomind/cli/dist/src/browser/workflow/expression.js +0 -64
  460. package/packages/@monomind/cli/dist/src/browser/workflow/store.d.ts +0 -24
  461. package/packages/@monomind/cli/dist/src/browser/workflow/store.js +0 -145
  462. package/packages/@monomind/cli/dist/src/browser/workflow/types.d.ts +0 -48
  463. package/packages/@monomind/cli/dist/src/browser/workflow/types.js +0 -2
  464. package/packages/@monomind/cli/dist/src/capabilities/cap-code.d.ts +0 -3
  465. package/packages/@monomind/cli/dist/src/capabilities/cap-code.js +0 -20
  466. package/packages/@monomind/cli/dist/src/capabilities/cap-data.d.ts +0 -3
  467. package/packages/@monomind/cli/dist/src/capabilities/cap-data.js +0 -165
  468. package/packages/@monomind/cli/dist/src/capabilities/cap-documents.d.ts +0 -5
  469. package/packages/@monomind/cli/dist/src/capabilities/cap-documents.js +0 -139
  470. package/packages/@monomind/cli/dist/src/capabilities/cap-graph.d.ts +0 -3
  471. package/packages/@monomind/cli/dist/src/capabilities/cap-graph.js +0 -84
  472. package/packages/@monomind/cli/dist/src/capabilities/cap-media.d.ts +0 -3
  473. package/packages/@monomind/cli/dist/src/capabilities/cap-media.js +0 -147
  474. package/packages/@monomind/cli/dist/src/capabilities/cap-timeline.d.ts +0 -3
  475. package/packages/@monomind/cli/dist/src/capabilities/cap-timeline.js +0 -90
  476. package/packages/@monomind/cli/dist/src/capabilities/index.d.ts +0 -10
  477. package/packages/@monomind/cli/dist/src/capabilities/index.js +0 -18
  478. package/packages/@monomind/cli/dist/src/capabilities/manager.d.ts +0 -13
  479. package/packages/@monomind/cli/dist/src/capabilities/manager.js +0 -79
  480. package/packages/@monomind/cli/dist/src/capabilities/scanner.d.ts +0 -10
  481. package/packages/@monomind/cli/dist/src/capabilities/scanner.js +0 -125
  482. package/packages/@monomind/cli/dist/src/capabilities/types.d.ts +0 -64
  483. package/packages/@monomind/cli/dist/src/capabilities/types.js +0 -2
  484. package/packages/@monomind/cli/dist/src/commands/agent-lifecycle.d.ts +0 -17
  485. package/packages/@monomind/cli/dist/src/commands/agent-lifecycle.js +0 -346
  486. package/packages/@monomind/cli/dist/src/commands/agent-ops.d.ts +0 -8
  487. package/packages/@monomind/cli/dist/src/commands/agent-ops.js +0 -277
  488. package/packages/@monomind/cli/dist/src/commands/agent.d.ts +0 -8
  489. package/packages/@monomind/cli/dist/src/commands/agent.js +0 -40
  490. package/packages/@monomind/cli/dist/src/commands/analyze-ast.d.ts +0 -26
  491. package/packages/@monomind/cli/dist/src/commands/analyze-ast.js +0 -284
  492. package/packages/@monomind/cli/dist/src/commands/analyze-diff.d.ts +0 -8
  493. package/packages/@monomind/cli/dist/src/commands/analyze-diff.js +0 -395
  494. package/packages/@monomind/cli/dist/src/commands/analyze-imports.d.ts +0 -11
  495. package/packages/@monomind/cli/dist/src/commands/analyze-imports.js +0 -287
  496. package/packages/@monomind/cli/dist/src/commands/analyze-symbols.d.ts +0 -14
  497. package/packages/@monomind/cli/dist/src/commands/analyze-symbols.js +0 -302
  498. package/packages/@monomind/cli/dist/src/commands/analyze.d.ts +0 -53
  499. package/packages/@monomind/cli/dist/src/commands/analyze.js +0 -217
  500. package/packages/@monomind/cli/dist/src/commands/autopilot.d.ts +0 -15
  501. package/packages/@monomind/cli/dist/src/commands/autopilot.js +0 -370
  502. package/packages/@monomind/cli/dist/src/commands/browse-action.d.ts +0 -4
  503. package/packages/@monomind/cli/dist/src/commands/browse-action.js +0 -244
  504. package/packages/@monomind/cli/dist/src/commands/browse-platform.d.ts +0 -4
  505. package/packages/@monomind/cli/dist/src/commands/browse-platform.js +0 -117
  506. package/packages/@monomind/cli/dist/src/commands/browse-workflow.d.ts +0 -4
  507. package/packages/@monomind/cli/dist/src/commands/browse-workflow.js +0 -183
  508. package/packages/@monomind/cli/dist/src/commands/browse.d.ts +0 -12
  509. package/packages/@monomind/cli/dist/src/commands/browse.js +0 -17
  510. package/packages/@monomind/cli/dist/src/commands/cleanup.d.ts +0 -45
  511. package/packages/@monomind/cli/dist/src/commands/cleanup.js +0 -581
  512. package/packages/@monomind/cli/dist/src/commands/completions.d.ts +0 -10
  513. package/packages/@monomind/cli/dist/src/commands/completions.js +0 -261
  514. package/packages/@monomind/cli/dist/src/commands/config.d.ts +0 -8
  515. package/packages/@monomind/cli/dist/src/commands/config.js +0 -462
  516. package/packages/@monomind/cli/dist/src/commands/crash-reporting.d.ts +0 -8
  517. package/packages/@monomind/cli/dist/src/commands/crash-reporting.js +0 -50
  518. package/packages/@monomind/cli/dist/src/commands/design-detect.d.ts +0 -27
  519. package/packages/@monomind/cli/dist/src/commands/design-detect.js +0 -220
  520. package/packages/@monomind/cli/dist/src/commands/design-palette.d.ts +0 -21
  521. package/packages/@monomind/cli/dist/src/commands/design-palette.js +0 -538
  522. package/packages/@monomind/cli/dist/src/commands/doc.d.ts +0 -7
  523. package/packages/@monomind/cli/dist/src/commands/doc.js +0 -268
  524. package/packages/@monomind/cli/dist/src/commands/doctor-env-checks.d.ts +0 -26
  525. package/packages/@monomind/cli/dist/src/commands/doctor-env-checks.js +0 -194
  526. package/packages/@monomind/cli/dist/src/commands/doctor-monoes-checks.d.ts +0 -12
  527. package/packages/@monomind/cli/dist/src/commands/doctor-monoes-checks.js +0 -160
  528. package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.d.ts +0 -46
  529. package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.js +0 -764
  530. package/packages/@monomind/cli/dist/src/commands/doctor.d.ts +0 -10
  531. package/packages/@monomind/cli/dist/src/commands/doctor.js +0 -232
  532. package/packages/@monomind/cli/dist/src/commands/guidance.d.ts +0 -12
  533. package/packages/@monomind/cli/dist/src/commands/guidance.js +0 -163
  534. package/packages/@monomind/cli/dist/src/commands/hooks-core-commands.d.ts +0 -10
  535. package/packages/@monomind/cli/dist/src/commands/hooks-core-commands.js +0 -377
  536. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-commands.d.ts +0 -11
  537. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-commands.js +0 -417
  538. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-gaps.d.ts +0 -6
  539. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-gaps.js +0 -219
  540. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-routing.d.ts +0 -7
  541. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-routing.js +0 -399
  542. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-utils.d.ts +0 -42
  543. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-utils.js +0 -220
  544. package/packages/@monomind/cli/dist/src/commands/hooks-extended-commands.d.ts +0 -11
  545. package/packages/@monomind/cli/dist/src/commands/hooks-extended-commands.js +0 -243
  546. package/packages/@monomind/cli/dist/src/commands/hooks-formatting.d.ts +0 -9
  547. package/packages/@monomind/cli/dist/src/commands/hooks-formatting.js +0 -25
  548. package/packages/@monomind/cli/dist/src/commands/hooks-routing-commands.d.ts +0 -15
  549. package/packages/@monomind/cli/dist/src/commands/hooks-routing-commands.js +0 -725
  550. package/packages/@monomind/cli/dist/src/commands/hooks-workers.d.ts +0 -9
  551. package/packages/@monomind/cli/dist/src/commands/hooks-workers.js +0 -547
  552. package/packages/@monomind/cli/dist/src/commands/hooks.d.ts +0 -16
  553. package/packages/@monomind/cli/dist/src/commands/hooks.js +0 -497
  554. package/packages/@monomind/cli/dist/src/commands/index.d.ts +0 -65
  555. package/packages/@monomind/cli/dist/src/commands/index.js +0 -236
  556. package/packages/@monomind/cli/dist/src/commands/init-subcommands.d.ts +0 -8
  557. package/packages/@monomind/cli/dist/src/commands/init-subcommands.js +0 -156
  558. package/packages/@monomind/cli/dist/src/commands/init-upgrade.d.ts +0 -6
  559. package/packages/@monomind/cli/dist/src/commands/init-upgrade.js +0 -203
  560. package/packages/@monomind/cli/dist/src/commands/init-wizard.d.ts +0 -6
  561. package/packages/@monomind/cli/dist/src/commands/init-wizard.js +0 -244
  562. package/packages/@monomind/cli/dist/src/commands/init.d.ts +0 -8
  563. package/packages/@monomind/cli/dist/src/commands/init.js +0 -411
  564. package/packages/@monomind/cli/dist/src/commands/mcp.d.ts +0 -11
  565. package/packages/@monomind/cli/dist/src/commands/mcp.js +0 -747
  566. package/packages/@monomind/cli/dist/src/commands/memory-admin.d.ts +0 -9
  567. package/packages/@monomind/cli/dist/src/commands/memory-admin.js +0 -345
  568. package/packages/@monomind/cli/dist/src/commands/memory-crud.d.ts +0 -9
  569. package/packages/@monomind/cli/dist/src/commands/memory-crud.js +0 -389
  570. package/packages/@monomind/cli/dist/src/commands/memory-list.d.ts +0 -10
  571. package/packages/@monomind/cli/dist/src/commands/memory-list.js +0 -321
  572. package/packages/@monomind/cli/dist/src/commands/memory-transfer.d.ts +0 -8
  573. package/packages/@monomind/cli/dist/src/commands/memory-transfer.js +0 -199
  574. package/packages/@monomind/cli/dist/src/commands/memory.d.ts +0 -14
  575. package/packages/@monomind/cli/dist/src/commands/memory.js +0 -282
  576. package/packages/@monomind/cli/dist/src/commands/monograph.d.ts +0 -8
  577. package/packages/@monomind/cli/dist/src/commands/monograph.js +0 -548
  578. package/packages/@monomind/cli/dist/src/commands/neural-core.d.ts +0 -10
  579. package/packages/@monomind/cli/dist/src/commands/neural-core.js +0 -413
  580. package/packages/@monomind/cli/dist/src/commands/neural-optimize.d.ts +0 -7
  581. package/packages/@monomind/cli/dist/src/commands/neural-optimize.js +0 -330
  582. package/packages/@monomind/cli/dist/src/commands/neural-registry.d.ts +0 -7
  583. package/packages/@monomind/cli/dist/src/commands/neural-registry.js +0 -290
  584. package/packages/@monomind/cli/dist/src/commands/org-observe.d.ts +0 -18
  585. package/packages/@monomind/cli/dist/src/commands/org-observe.js +0 -353
  586. package/packages/@monomind/cli/dist/src/commands/org.d.ts +0 -25
  587. package/packages/@monomind/cli/dist/src/commands/org.js +0 -860
  588. package/packages/@monomind/cli/dist/src/commands/performance.d.ts +0 -10
  589. package/packages/@monomind/cli/dist/src/commands/performance.js +0 -656
  590. package/packages/@monomind/cli/dist/src/commands/platforms.d.ts +0 -11
  591. package/packages/@monomind/cli/dist/src/commands/platforms.js +0 -600
  592. package/packages/@monomind/cli/dist/src/commands/providers.d.ts +0 -10
  593. package/packages/@monomind/cli/dist/src/commands/providers.js +0 -351
  594. package/packages/@monomind/cli/dist/src/commands/report-crash.d.ts +0 -10
  595. package/packages/@monomind/cli/dist/src/commands/report-crash.js +0 -66
  596. package/packages/@monomind/cli/dist/src/commands/route.d.ts +0 -16
  597. package/packages/@monomind/cli/dist/src/commands/route.js +0 -944
  598. package/packages/@monomind/cli/dist/src/commands/search-universal.d.ts +0 -19
  599. package/packages/@monomind/cli/dist/src/commands/search-universal.js +0 -151
  600. package/packages/@monomind/cli/dist/src/commands/security-cve.d.ts +0 -6
  601. package/packages/@monomind/cli/dist/src/commands/security-cve.js +0 -308
  602. package/packages/@monomind/cli/dist/src/commands/security-misc.d.ts +0 -8
  603. package/packages/@monomind/cli/dist/src/commands/security-misc.js +0 -336
  604. package/packages/@monomind/cli/dist/src/commands/security-scan.d.ts +0 -47
  605. package/packages/@monomind/cli/dist/src/commands/security-scan.js +0 -447
  606. package/packages/@monomind/cli/dist/src/commands/security.d.ts +0 -10
  607. package/packages/@monomind/cli/dist/src/commands/security.js +0 -41
  608. package/packages/@monomind/cli/dist/src/commands/session.d.ts +0 -8
  609. package/packages/@monomind/cli/dist/src/commands/session.js +0 -660
  610. package/packages/@monomind/cli/dist/src/commands/start.d.ts +0 -8
  611. package/packages/@monomind/cli/dist/src/commands/start.js +0 -490
  612. package/packages/@monomind/cli/dist/src/commands/status.d.ts +0 -8
  613. package/packages/@monomind/cli/dist/src/commands/status.js +0 -642
  614. package/packages/@monomind/cli/dist/src/commands/swarm.d.ts +0 -8
  615. package/packages/@monomind/cli/dist/src/commands/swarm.js +0 -906
  616. package/packages/@monomind/cli/dist/src/commands/task.d.ts +0 -8
  617. package/packages/@monomind/cli/dist/src/commands/task.js +0 -639
  618. package/packages/@monomind/cli/dist/src/commands/tokens.d.ts +0 -8
  619. package/packages/@monomind/cli/dist/src/commands/tokens.js +0 -206
  620. package/packages/@monomind/cli/dist/src/commands/update.d.ts +0 -8
  621. package/packages/@monomind/cli/dist/src/commands/update.js +0 -288
  622. package/packages/@monomind/cli/dist/src/consensus/audit-writer.d.ts +0 -77
  623. package/packages/@monomind/cli/dist/src/consensus/audit-writer.js +0 -196
  624. package/packages/@monomind/cli/dist/src/consensus/tally.d.ts +0 -19
  625. package/packages/@monomind/cli/dist/src/consensus/tally.js +0 -34
  626. package/packages/@monomind/cli/dist/src/index.d.ts +0 -81
  627. package/packages/@monomind/cli/dist/src/index.js +0 -574
  628. package/packages/@monomind/cli/dist/src/init/claudemd-generator.d.ts +0 -25
  629. package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +0 -624
  630. package/packages/@monomind/cli/dist/src/init/executor.d.ts +0 -47
  631. package/packages/@monomind/cli/dist/src/init/executor.js +0 -2387
  632. package/packages/@monomind/cli/dist/src/init/helpers-generator.d.ts +0 -73
  633. package/packages/@monomind/cli/dist/src/init/helpers-generator.js +0 -1335
  634. package/packages/@monomind/cli/dist/src/init/index.d.ts +0 -13
  635. package/packages/@monomind/cli/dist/src/init/index.js +0 -15
  636. package/packages/@monomind/cli/dist/src/init/mcp-generator.d.ts +0 -26
  637. package/packages/@monomind/cli/dist/src/init/mcp-generator.js +0 -107
  638. package/packages/@monomind/cli/dist/src/init/settings-generator.d.ts +0 -14
  639. package/packages/@monomind/cli/dist/src/init/settings-generator.js +0 -487
  640. package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.d.ts +0 -38
  641. package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.js +0 -602
  642. package/packages/@monomind/cli/dist/src/init/statusline-generator.d.ts +0 -25
  643. package/packages/@monomind/cli/dist/src/init/statusline-generator.js +0 -1358
  644. package/packages/@monomind/cli/dist/src/init/types.d.ts +0 -308
  645. package/packages/@monomind/cli/dist/src/init/types.js +0 -247
  646. package/packages/@monomind/cli/dist/src/knowledge/document-pipeline.d.ts +0 -75
  647. package/packages/@monomind/cli/dist/src/knowledge/document-pipeline.js +0 -556
  648. package/packages/@monomind/cli/dist/src/mcp-client.d.ts +0 -64
  649. package/packages/@monomind/cli/dist/src/mcp-client.js +0 -338
  650. package/packages/@monomind/cli/dist/src/mcp-server.d.ts +0 -170
  651. package/packages/@monomind/cli/dist/src/mcp-server.js +0 -964
  652. package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.d.ts +0 -30
  653. package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.js +0 -603
  654. package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.d.ts +0 -38
  655. package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.js +0 -389
  656. package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.d.ts +0 -75
  657. package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.js +0 -125
  658. package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.d.ts +0 -12
  659. package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.js +0 -237
  660. package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.d.ts +0 -11
  661. package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.js +0 -1111
  662. package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.d.ts +0 -12
  663. package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.js +0 -827
  664. package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.d.ts +0 -8
  665. package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.js +0 -447
  666. package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.d.ts +0 -11
  667. package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.js +0 -866
  668. package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.d.ts +0 -9
  669. package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.js +0 -582
  670. package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.d.ts +0 -10
  671. package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.js +0 -58
  672. package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.d.ts +0 -15
  673. package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +0 -634
  674. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +0 -17
  675. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +0 -1237
  676. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-embedding.d.ts +0 -161
  677. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-embedding.js +0 -516
  678. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.d.ts +0 -22
  679. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.js +0 -888
  680. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.d.ts +0 -26
  681. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.js +0 -1582
  682. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.d.ts +0 -9
  683. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +0 -51
  684. package/packages/@monomind/cli/dist/src/mcp-tools/index.d.ts +0 -31
  685. package/packages/@monomind/cli/dist/src/mcp-tools/index.js +0 -31
  686. package/packages/@monomind/cli/dist/src/mcp-tools/knowledge-tools.d.ts +0 -6
  687. package/packages/@monomind/cli/dist/src/mcp-tools/knowledge-tools.js +0 -156
  688. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.d.ts +0 -35
  689. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +0 -776
  690. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-compat.d.ts +0 -26
  691. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-compat.js +0 -136
  692. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.d.ts +0 -27
  693. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +0 -2443
  694. package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.d.ts +0 -15
  695. package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.js +0 -506
  696. package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.d.ts +0 -16
  697. package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.js +0 -680
  698. package/packages/@monomind/cli/dist/src/mcp-tools/quality/coverage-analysis/prioritize-gaps.d.ts +0 -261
  699. package/packages/@monomind/cli/dist/src/mcp-tools/quality/coverage-analysis/prioritize-gaps.js +0 -423
  700. package/packages/@monomind/cli/dist/src/mcp-tools/quality/security-compliance/detect-secrets.d.ts +0 -137
  701. package/packages/@monomind/cli/dist/src/mcp-tools/quality/security-compliance/detect-secrets.js +0 -383
  702. package/packages/@monomind/cli/dist/src/mcp-tools/quality-tools.d.ts +0 -14
  703. package/packages/@monomind/cli/dist/src/mcp-tools/quality-tools.js +0 -58
  704. package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.d.ts +0 -17
  705. package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.js +0 -44
  706. package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.d.ts +0 -18
  707. package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.js +0 -576
  708. package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.d.ts +0 -8
  709. package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.js +0 -431
  710. package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.d.ts +0 -9
  711. package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.js +0 -411
  712. package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.d.ts +0 -13
  713. package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.js +0 -561
  714. package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.d.ts +0 -28
  715. package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.js +0 -514
  716. package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.d.ts +0 -10
  717. package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.js +0 -397
  718. package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.d.ts +0 -27
  719. package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.js +0 -76
  720. package/packages/@monomind/cli/dist/src/mcp-tools/types.d.ts +0 -58
  721. package/packages/@monomind/cli/dist/src/mcp-tools/types.js +0 -98
  722. package/packages/@monomind/cli/dist/src/memory/embedding-operations.d.ts +0 -58
  723. package/packages/@monomind/cli/dist/src/memory/embedding-operations.js +0 -262
  724. package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.d.ts +0 -319
  725. package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.js +0 -698
  726. package/packages/@monomind/cli/dist/src/memory/hnsw-operations.d.ts +0 -142
  727. package/packages/@monomind/cli/dist/src/memory/hnsw-operations.js +0 -465
  728. package/packages/@monomind/cli/dist/src/memory/intelligence.d.ts +0 -368
  729. package/packages/@monomind/cli/dist/src/memory/intelligence.js +0 -1456
  730. package/packages/@monomind/cli/dist/src/memory/memory-bridge.d.ts +0 -333
  731. package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +0 -1104
  732. package/packages/@monomind/cli/dist/src/memory/memory-crud.d.ts +0 -67
  733. package/packages/@monomind/cli/dist/src/memory/memory-crud.js +0 -454
  734. package/packages/@monomind/cli/dist/src/memory/memory-initializer.d.ts +0 -101
  735. package/packages/@monomind/cli/dist/src/memory/memory-initializer.js +0 -431
  736. package/packages/@monomind/cli/dist/src/memory/memory-kg.d.ts +0 -186
  737. package/packages/@monomind/cli/dist/src/memory/memory-kg.js +0 -450
  738. package/packages/@monomind/cli/dist/src/memory/memory-migrations.d.ts +0 -30
  739. package/packages/@monomind/cli/dist/src/memory/memory-migrations.js +0 -136
  740. package/packages/@monomind/cli/dist/src/memory/memory-read.d.ts +0 -87
  741. package/packages/@monomind/cli/dist/src/memory/memory-read.js +0 -333
  742. package/packages/@monomind/cli/dist/src/memory/memory-schema.d.ts +0 -13
  743. package/packages/@monomind/cli/dist/src/memory/memory-schema.js +0 -167
  744. package/packages/@monomind/cli/dist/src/memory/query-router.d.ts +0 -44
  745. package/packages/@monomind/cli/dist/src/memory/query-router.js +0 -113
  746. package/packages/@monomind/cli/dist/src/memory/sona-optimizer.d.ts +0 -237
  747. package/packages/@monomind/cli/dist/src/memory/sona-optimizer.js +0 -647
  748. package/packages/@monomind/cli/dist/src/monovector/command-outcomes.d.ts +0 -37
  749. package/packages/@monomind/cli/dist/src/monovector/command-outcomes.js +0 -126
  750. package/packages/@monomind/cli/dist/src/monovector/coverage-router.d.ts +0 -103
  751. package/packages/@monomind/cli/dist/src/monovector/coverage-router.js +0 -341
  752. package/packages/@monomind/cli/dist/src/monovector/coverage-tools.d.ts +0 -14
  753. package/packages/@monomind/cli/dist/src/monovector/coverage-tools.js +0 -115
  754. package/packages/@monomind/cli/dist/src/monovector/diff-classifier.d.ts +0 -174
  755. package/packages/@monomind/cli/dist/src/monovector/diff-classifier.js +0 -738
  756. package/packages/@monomind/cli/dist/src/monovector/index.d.ts +0 -54
  757. package/packages/@monomind/cli/dist/src/monovector/index.js +0 -55
  758. package/packages/@monomind/cli/dist/src/monovector/init-state.d.ts +0 -35
  759. package/packages/@monomind/cli/dist/src/monovector/init-state.js +0 -36
  760. package/packages/@monomind/cli/dist/src/monovector/route-outcomes.d.ts +0 -56
  761. package/packages/@monomind/cli/dist/src/monovector/route-outcomes.js +0 -189
  762. package/packages/@monomind/cli/dist/src/observability/replay-reader.d.ts +0 -40
  763. package/packages/@monomind/cli/dist/src/observability/replay-reader.js +0 -138
  764. package/packages/@monomind/cli/dist/src/orgrt/broker.d.ts +0 -26
  765. package/packages/@monomind/cli/dist/src/orgrt/broker.js +0 -73
  766. package/packages/@monomind/cli/dist/src/orgrt/bus.d.ts +0 -27
  767. package/packages/@monomind/cli/dist/src/orgrt/bus.js +0 -71
  768. package/packages/@monomind/cli/dist/src/orgrt/daemon.d.ts +0 -175
  769. package/packages/@monomind/cli/dist/src/orgrt/daemon.js +0 -965
  770. package/packages/@monomind/cli/dist/src/orgrt/forwarder.d.ts +0 -16
  771. package/packages/@monomind/cli/dist/src/orgrt/forwarder.js +0 -171
  772. package/packages/@monomind/cli/dist/src/orgrt/inbox.d.ts +0 -11
  773. package/packages/@monomind/cli/dist/src/orgrt/inbox.js +0 -91
  774. package/packages/@monomind/cli/dist/src/orgrt/mailbox.d.ts +0 -49
  775. package/packages/@monomind/cli/dist/src/orgrt/mailbox.js +0 -75
  776. package/packages/@monomind/cli/dist/src/orgrt/migrate.d.ts +0 -26
  777. package/packages/@monomind/cli/dist/src/orgrt/migrate.js +0 -118
  778. package/packages/@monomind/cli/dist/src/orgrt/policy.d.ts +0 -28
  779. package/packages/@monomind/cli/dist/src/orgrt/policy.js +0 -146
  780. package/packages/@monomind/cli/dist/src/orgrt/provider.d.ts +0 -9
  781. package/packages/@monomind/cli/dist/src/orgrt/provider.js +0 -55
  782. package/packages/@monomind/cli/dist/src/orgrt/reporting.d.ts +0 -40
  783. package/packages/@monomind/cli/dist/src/orgrt/reporting.js +0 -134
  784. package/packages/@monomind/cli/dist/src/orgrt/scheduler.d.ts +0 -13
  785. package/packages/@monomind/cli/dist/src/orgrt/scheduler.js +0 -48
  786. package/packages/@monomind/cli/dist/src/orgrt/server.d.ts +0 -9
  787. package/packages/@monomind/cli/dist/src/orgrt/server.js +0 -88
  788. package/packages/@monomind/cli/dist/src/orgrt/session.d.ts +0 -62
  789. package/packages/@monomind/cli/dist/src/orgrt/session.js +0 -157
  790. package/packages/@monomind/cli/dist/src/orgrt/templates.d.ts +0 -17
  791. package/packages/@monomind/cli/dist/src/orgrt/templates.js +0 -62
  792. package/packages/@monomind/cli/dist/src/orgrt/test-loop.d.ts +0 -12
  793. package/packages/@monomind/cli/dist/src/orgrt/test-loop.js +0 -108
  794. package/packages/@monomind/cli/dist/src/orgrt/types.d.ts +0 -910
  795. package/packages/@monomind/cli/dist/src/orgrt/types.js +0 -57
  796. package/packages/@monomind/cli/dist/src/output.d.ts +0 -133
  797. package/packages/@monomind/cli/dist/src/output.js +0 -529
  798. package/packages/@monomind/cli/dist/src/parser.d.ts +0 -93
  799. package/packages/@monomind/cli/dist/src/parser.js +0 -651
  800. package/packages/@monomind/cli/dist/src/pricing/model-pricing.d.ts +0 -41
  801. package/packages/@monomind/cli/dist/src/pricing/model-pricing.js +0 -61
  802. package/packages/@monomind/cli/dist/src/production/circuit-breaker.d.ts +0 -121
  803. package/packages/@monomind/cli/dist/src/production/circuit-breaker.js +0 -262
  804. package/packages/@monomind/cli/dist/src/production/error-handler.d.ts +0 -119
  805. package/packages/@monomind/cli/dist/src/production/error-handler.js +0 -324
  806. package/packages/@monomind/cli/dist/src/production/index.d.ts +0 -6
  807. package/packages/@monomind/cli/dist/src/production/index.js +0 -6
  808. package/packages/@monomind/cli/dist/src/production/monitoring.d.ts +0 -181
  809. package/packages/@monomind/cli/dist/src/production/monitoring.js +0 -375
  810. package/packages/@monomind/cli/dist/src/production/rate-limiter.d.ts +0 -125
  811. package/packages/@monomind/cli/dist/src/production/rate-limiter.js +0 -218
  812. package/packages/@monomind/cli/dist/src/production/retry.d.ts +0 -48
  813. package/packages/@monomind/cli/dist/src/production/retry.js +0 -189
  814. package/packages/@monomind/cli/dist/src/prompt.d.ts +0 -44
  815. package/packages/@monomind/cli/dist/src/prompt.js +0 -501
  816. package/packages/@monomind/cli/dist/src/routing/embed-worker.d.ts +0 -2
  817. package/packages/@monomind/cli/dist/src/routing/embed-worker.js +0 -79
  818. package/packages/@monomind/cli/dist/src/routing/embedder.d.ts +0 -31
  819. package/packages/@monomind/cli/dist/src/routing/embedder.js +0 -0
  820. package/packages/@monomind/cli/dist/src/routing/llm-caller.d.ts +0 -24
  821. package/packages/@monomind/cli/dist/src/routing/llm-caller.js +0 -134
  822. package/packages/@monomind/cli/dist/src/routing/route-layer-factory.d.ts +0 -24
  823. package/packages/@monomind/cli/dist/src/routing/route-layer-factory.js +0 -239
  824. package/packages/@monomind/cli/dist/src/services/config-file-manager.d.ts +0 -80
  825. package/packages/@monomind/cli/dist/src/services/config-file-manager.js +0 -401
  826. package/packages/@monomind/cli/dist/src/services/crash-reporter.d.ts +0 -42
  827. package/packages/@monomind/cli/dist/src/services/crash-reporter.js +0 -374
  828. package/packages/@monomind/cli/dist/src/suggest.d.ts +0 -53
  829. package/packages/@monomind/cli/dist/src/suggest.js +0 -197
  830. package/packages/@monomind/cli/dist/src/sync/checker.d.ts +0 -12
  831. package/packages/@monomind/cli/dist/src/sync/checker.js +0 -26
  832. package/packages/@monomind/cli/dist/src/transfer/anonymization/index.d.ts +0 -22
  833. package/packages/@monomind/cli/dist/src/transfer/anonymization/index.js +0 -192
  834. package/packages/@monomind/cli/dist/src/transfer/types.d.ts +0 -245
  835. package/packages/@monomind/cli/dist/src/transfer/types.js +0 -6
  836. package/packages/@monomind/cli/dist/src/types.d.ts +0 -190
  837. package/packages/@monomind/cli/dist/src/types.js +0 -20
  838. package/packages/@monomind/cli/dist/src/ui/collector.mjs +0 -879
  839. package/packages/@monomind/cli/dist/src/ui/dashboard.html +0 -13949
  840. package/packages/@monomind/cli/dist/src/ui/data/agent-avatars.html +0 -763
  841. package/packages/@monomind/cli/dist/src/ui/data/agent-avatars.json +0 -966
  842. package/packages/@monomind/cli/dist/src/ui/data/avatars/account-strategist.svg +0 -58
  843. package/packages/@monomind/cli/dist/src/ui/data/avatars/accounts-payable.svg +0 -54
  844. package/packages/@monomind/cli/dist/src/ui/data/avatars/adaptive-coordinator.svg +0 -55
  845. package/packages/@monomind/cli/dist/src/ui/data/avatars/adaptive-coordinator2.svg +0 -54
  846. package/packages/@monomind/cli/dist/src/ui/data/avatars/ai-citation.svg +0 -57
  847. package/packages/@monomind/cli/dist/src/ui/data/avatars/ai-engineer.svg +0 -61
  848. package/packages/@monomind/cli/dist/src/ui/data/avatars/analytics-reporter.svg +0 -53
  849. package/packages/@monomind/cli/dist/src/ui/data/avatars/api-tester.svg +0 -53
  850. package/packages/@monomind/cli/dist/src/ui/data/avatars/architecture.svg +0 -54
  851. package/packages/@monomind/cli/dist/src/ui/data/avatars/automation-governance.svg +0 -55
  852. package/packages/@monomind/cli/dist/src/ui/data/avatars/backend-dev.svg +0 -53
  853. package/packages/@monomind/cli/dist/src/ui/data/avatars/benchmarker.svg +0 -54
  854. package/packages/@monomind/cli/dist/src/ui/data/avatars/blockchain-auditor.svg +0 -53
  855. package/packages/@monomind/cli/dist/src/ui/data/avatars/byzantine-coord.svg +0 -57
  856. package/packages/@monomind/cli/dist/src/ui/data/avatars/case-analyst.svg +0 -57
  857. package/packages/@monomind/cli/dist/src/ui/data/avatars/cicd-engineer.svg +0 -55
  858. package/packages/@monomind/cli/dist/src/ui/data/avatars/cloud-architect.svg +0 -54
  859. package/packages/@monomind/cli/dist/src/ui/data/avatars/code-review-swarm.svg +0 -57
  860. package/packages/@monomind/cli/dist/src/ui/data/avatars/coder-v119.svg +0 -57
  861. package/packages/@monomind/cli/dist/src/ui/data/avatars/coder.svg +0 -58
  862. package/packages/@monomind/cli/dist/src/ui/data/avatars/collective-coord.svg +0 -54
  863. package/packages/@monomind/cli/dist/src/ui/data/avatars/compliance-auditor.svg +0 -58
  864. package/packages/@monomind/cli/dist/src/ui/data/avatars/consensus-coordinator.svg +0 -54
  865. package/packages/@monomind/cli/dist/src/ui/data/avatars/content-creator.svg +0 -54
  866. package/packages/@monomind/cli/dist/src/ui/data/avatars/crdt-synchronizer.svg +0 -53
  867. package/packages/@monomind/cli/dist/src/ui/data/avatars/cro-specialist.svg +0 -58
  868. package/packages/@monomind/cli/dist/src/ui/data/avatars/data-consolidator.svg +0 -54
  869. package/packages/@monomind/cli/dist/src/ui/data/avatars/data-engineer.svg +0 -53
  870. package/packages/@monomind/cli/dist/src/ui/data/avatars/database-optimizer.svg +0 -61
  871. package/packages/@monomind/cli/dist/src/ui/data/avatars/deal-strategist.svg +0 -54
  872. package/packages/@monomind/cli/dist/src/ui/data/avatars/defender.svg +0 -53
  873. package/packages/@monomind/cli/dist/src/ui/data/avatars/devops-automator.svg +0 -56
  874. package/packages/@monomind/cli/dist/src/ui/data/avatars/discovery-coach.svg +0 -54
  875. package/packages/@monomind/cli/dist/src/ui/data/avatars/email-marketing.svg +0 -57
  876. package/packages/@monomind/cli/dist/src/ui/data/avatars/embedded-firmware.svg +0 -61
  877. package/packages/@monomind/cli/dist/src/ui/data/avatars/evidence-collector.svg +0 -57
  878. package/packages/@monomind/cli/dist/src/ui/data/avatars/experiment-tracker.svg +0 -53
  879. package/packages/@monomind/cli/dist/src/ui/data/avatars/feedback-synthesizer.svg +0 -54
  880. package/packages/@monomind/cli/dist/src/ui/data/avatars/finance-tracker.svg +0 -54
  881. package/packages/@monomind/cli/dist/src/ui/data/avatars/frontend-developer.svg +0 -54
  882. package/packages/@monomind/cli/dist/src/ui/data/avatars/game-audio-engineer.svg +0 -59
  883. package/packages/@monomind/cli/dist/src/ui/data/avatars/game-designer.svg +0 -54
  884. package/packages/@monomind/cli/dist/src/ui/data/avatars/gossip-coordinator.svg +0 -54
  885. package/packages/@monomind/cli/dist/src/ui/data/avatars/hierarchical-coord.svg +0 -54
  886. package/packages/@monomind/cli/dist/src/ui/data/avatars/incident-commander.svg +0 -57
  887. package/packages/@monomind/cli/dist/src/ui/data/avatars/infrastructure.svg +0 -54
  888. package/packages/@monomind/cli/dist/src/ui/data/avatars/input-validator.svg +0 -53
  889. package/packages/@monomind/cli/dist/src/ui/data/avatars/ios-developer.svg +0 -54
  890. package/packages/@monomind/cli/dist/src/ui/data/avatars/issue-tracker.svg +0 -53
  891. package/packages/@monomind/cli/dist/src/ui/data/avatars/judge.svg +0 -55
  892. package/packages/@monomind/cli/dist/src/ui/data/avatars/launch-strategist.svg +0 -54
  893. package/packages/@monomind/cli/dist/src/ui/data/avatars/legal-compliance.svg +0 -53
  894. package/packages/@monomind/cli/dist/src/ui/data/avatars/level-designer.svg +0 -53
  895. package/packages/@monomind/cli/dist/src/ui/data/avatars/load-balancer.svg +0 -57
  896. package/packages/@monomind/cli/dist/src/ui/data/avatars/mcp-builder.svg +0 -53
  897. package/packages/@monomind/cli/dist/src/ui/data/avatars/memory-coordinator.svg +0 -55
  898. package/packages/@monomind/cli/dist/src/ui/data/avatars/mesh-coordinator.svg +0 -55
  899. package/packages/@monomind/cli/dist/src/ui/data/avatars/ml-developer.svg +0 -58
  900. package/packages/@monomind/cli/dist/src/ui/data/avatars/mobile-app-builder.svg +0 -53
  901. package/packages/@monomind/cli/dist/src/ui/data/avatars/mobile-dev.svg +0 -54
  902. package/packages/@monomind/cli/dist/src/ui/data/avatars/model-qa.svg +0 -58
  903. package/packages/@monomind/cli/dist/src/ui/data/avatars/narrative-designer.svg +0 -58
  904. package/packages/@monomind/cli/dist/src/ui/data/avatars/outbound-strategist.svg +0 -55
  905. package/packages/@monomind/cli/dist/src/ui/data/avatars/path-validator.svg +0 -54
  906. package/packages/@monomind/cli/dist/src/ui/data/avatars/payment-agent.svg +0 -53
  907. package/packages/@monomind/cli/dist/src/ui/data/avatars/perf-analyzer.svg +0 -58
  908. package/packages/@monomind/cli/dist/src/ui/data/avatars/pipeline-analyst.svg +0 -54
  909. package/packages/@monomind/cli/dist/src/ui/data/avatars/planner.svg +0 -55
  910. package/packages/@monomind/cli/dist/src/ui/data/avatars/pr-manager.svg +0 -54
  911. package/packages/@monomind/cli/dist/src/ui/data/avatars/pricing-strategist.svg +0 -54
  912. package/packages/@monomind/cli/dist/src/ui/data/avatars/product-manager.svg +0 -54
  913. package/packages/@monomind/cli/dist/src/ui/data/avatars/production-validator.svg +0 -54
  914. package/packages/@monomind/cli/dist/src/ui/data/avatars/project-shepherd.svg +0 -54
  915. package/packages/@monomind/cli/dist/src/ui/data/avatars/proposal-strategist.svg +0 -54
  916. package/packages/@monomind/cli/dist/src/ui/data/avatars/prosecutor.svg +0 -57
  917. package/packages/@monomind/cli/dist/src/ui/data/avatars/pseudocode.svg +0 -53
  918. package/packages/@monomind/cli/dist/src/ui/data/avatars/queen-coordinator.svg +0 -55
  919. package/packages/@monomind/cli/dist/src/ui/data/avatars/quorum-manager.svg +0 -53
  920. package/packages/@monomind/cli/dist/src/ui/data/avatars/raft-manager.svg +0 -53
  921. package/packages/@monomind/cli/dist/src/ui/data/avatars/reality-checker.svg +0 -58
  922. package/packages/@monomind/cli/dist/src/ui/data/avatars/recruitment.svg +0 -58
  923. package/packages/@monomind/cli/dist/src/ui/data/avatars/refinement.svg +0 -53
  924. package/packages/@monomind/cli/dist/src/ui/data/avatars/release-manager.svg +0 -54
  925. package/packages/@monomind/cli/dist/src/ui/data/avatars/repo-architect.svg +0 -54
  926. package/packages/@monomind/cli/dist/src/ui/data/avatars/researcher.svg +0 -58
  927. package/packages/@monomind/cli/dist/src/ui/data/avatars/resource-allocator.svg +0 -53
  928. package/packages/@monomind/cli/dist/src/ui/data/avatars/reviewer.svg +0 -53
  929. package/packages/@monomind/cli/dist/src/ui/data/avatars/safe-executor.svg +0 -53
  930. package/packages/@monomind/cli/dist/src/ui/data/avatars/sales-coach.svg +0 -53
  931. package/packages/@monomind/cli/dist/src/ui/data/avatars/sales-engineer.svg +0 -58
  932. package/packages/@monomind/cli/dist/src/ui/data/avatars/scout-explorer.svg +0 -58
  933. package/packages/@monomind/cli/dist/src/ui/data/avatars/security-architect.svg +0 -54
  934. package/packages/@monomind/cli/dist/src/ui/data/avatars/security-auditor.svg +0 -55
  935. package/packages/@monomind/cli/dist/src/ui/data/avatars/senior-developer.svg +0 -58
  936. package/packages/@monomind/cli/dist/src/ui/data/avatars/senior-pm.svg +0 -58
  937. package/packages/@monomind/cli/dist/src/ui/data/avatars/seo-specialist.svg +0 -57
  938. package/packages/@monomind/cli/dist/src/ui/data/avatars/social-media.svg +0 -54
  939. package/packages/@monomind/cli/dist/src/ui/data/avatars/solidity-engineer.svg +0 -58
  940. package/packages/@monomind/cli/dist/src/ui/data/avatars/sparc-coder.svg +0 -58
  941. package/packages/@monomind/cli/dist/src/ui/data/avatars/sparc-coord.svg +0 -56
  942. package/packages/@monomind/cli/dist/src/ui/data/avatars/specification.svg +0 -57
  943. package/packages/@monomind/cli/dist/src/ui/data/avatars/sprint-prioritizer.svg +0 -53
  944. package/packages/@monomind/cli/dist/src/ui/data/avatars/sre.svg +0 -54
  945. package/packages/@monomind/cli/dist/src/ui/data/avatars/studio-operations.svg +0 -53
  946. package/packages/@monomind/cli/dist/src/ui/data/avatars/studio-producer.svg +0 -55
  947. package/packages/@monomind/cli/dist/src/ui/data/avatars/support-responder.svg +0 -56
  948. package/packages/@monomind/cli/dist/src/ui/data/avatars/system-architect.svg +0 -54
  949. package/packages/@monomind/cli/dist/src/ui/data/avatars/task-orchestrator.svg +0 -56
  950. package/packages/@monomind/cli/dist/src/ui/data/avatars/technical-artist.svg +0 -53
  951. package/packages/@monomind/cli/dist/src/ui/data/avatars/technical-writer.svg +0 -59
  952. package/packages/@monomind/cli/dist/src/ui/data/avatars/tester.svg +0 -53
  953. package/packages/@monomind/cli/dist/src/ui/data/avatars/threat-detection.svg +0 -61
  954. package/packages/@monomind/cli/dist/src/ui/data/avatars/trend-researcher.svg +0 -54
  955. package/packages/@monomind/cli/dist/src/ui/data/avatars/trial-director.svg +0 -55
  956. package/packages/@monomind/cli/dist/src/ui/data/avatars/unity-architect.svg +0 -54
  957. package/packages/@monomind/cli/dist/src/ui/data/avatars/visionos-engineer.svg +0 -57
  958. package/packages/@monomind/cli/dist/src/ui/data/avatars/worker-specialist.svg +0 -55
  959. package/packages/@monomind/cli/dist/src/ui/data/avatars/workflow-architect.svg +0 -57
  960. package/packages/@monomind/cli/dist/src/ui/data/avatars/workflow-automation.svg +0 -54
  961. package/packages/@monomind/cli/dist/src/ui/data/avatars/zk-steward.svg +0 -54
  962. package/packages/@monomind/cli/dist/src/ui/mastermind-diagram-fallback.html +0 -1069
  963. package/packages/@monomind/cli/dist/src/ui/orgs-files.js +0 -192
  964. package/packages/@monomind/cli/dist/src/ui/orgs.html +0 -2513
  965. package/packages/@monomind/cli/dist/src/ui/server.mjs +0 -7256
  966. package/packages/@monomind/cli/dist/src/ui/sse-manager.mjs +0 -119
  967. package/packages/@monomind/cli/dist/src/update/checker.d.ts +0 -34
  968. package/packages/@monomind/cli/dist/src/update/checker.js +0 -278
  969. package/packages/@monomind/cli/dist/src/update/executor.d.ts +0 -32
  970. package/packages/@monomind/cli/dist/src/update/executor.js +0 -235
  971. package/packages/@monomind/cli/dist/src/update/index.d.ts +0 -43
  972. package/packages/@monomind/cli/dist/src/update/index.js +0 -108
  973. package/packages/@monomind/cli/dist/src/update/rate-limiter.d.ts +0 -37
  974. package/packages/@monomind/cli/dist/src/update/rate-limiter.js +0 -190
  975. package/packages/@monomind/cli/dist/src/update/validator.d.ts +0 -17
  976. package/packages/@monomind/cli/dist/src/update/validator.js +0 -166
  977. package/packages/@monomind/cli/dist/src/utils/cosine-similarity.d.ts +0 -22
  978. package/packages/@monomind/cli/dist/src/utils/cosine-similarity.js +0 -38
  979. package/packages/@monomind/cli/dist/src/utils/input-guards.d.ts +0 -66
  980. package/packages/@monomind/cli/dist/src/utils/input-guards.js +0 -263
  981. package/packages/@monomind/cli/dist/src/utils/json-file.d.ts +0 -33
  982. package/packages/@monomind/cli/dist/src/utils/json-file.js +0 -57
  983. package/packages/@monomind/cli/dist/src/utils/parse-jsonl.d.ts +0 -6
  984. package/packages/@monomind/cli/dist/src/utils/parse-jsonl.js +0 -22
  985. package/packages/@monomind/cli/dist/src/utils/resource-governor.d.ts +0 -32
  986. package/packages/@monomind/cli/dist/src/utils/resource-governor.js +0 -115
  987. package/packages/@monomind/cli/package.json +0 -127
  988. package/packages/@monomind/cli/scripts/deploy-ipfs-node.sh +0 -153
  989. package/packages/@monomind/cli/scripts/publish.sh +0 -61
  990. package/packages/@monomind/cli/scripts/sync-claude-assets.sh +0 -19
  991. package/packages/@monomind/cli/scripts/understand-analyze.mjs +0 -1078
  992. package/scripts/build-fs.mjs +0 -75
  993. package/scripts/build-monovector.sh +0 -10
  994. package/scripts/generate-agent-avatars.mjs +0 -492
  995. package/scripts/generate-channel-profile-assets.sh +0 -67
  996. package/scripts/growth-content-calendar.mjs +0 -260
  997. package/scripts/growth-profile-kit.mjs +0 -156
  998. package/scripts/install.sh +0 -392
  999. package/scripts/publish-monovector.sh +0 -20
  1000. package/scripts/ua-enrich.mjs +0 -229
  1001. package/scripts/ua-import.mjs +0 -288
  1002. package/scripts/verify-appliance.sh +0 -571
@@ -1,1237 +0,0 @@
1
- /**
2
- * Hive-Mind MCP Tools for CLI
3
- *
4
- * Tool definitions for multi-agent coordination and voting.
5
- *
6
- * Honest scope note: the "consensus strategies" here are vote-count thresholds
7
- * applied to a single in-process tally — NOT distributed consensus protocols.
8
- * There is no log replication, leader election, network partitioning, or
9
- * adversarial fault model. 'bft' = require 2f+1 votes, 'raft' = require
10
- * majority, 'quorum' = configurable preset (majority/supermajority/unanimous).
11
- * The names are kept for CLI/API compatibility.
12
- */
13
- import { existsSync, readFileSync, statSync, writeFileSync, renameSync, mkdirSync } from 'node:fs';
14
- import { randomBytes } from 'node:crypto';
15
- import { join } from 'node:path';
16
- import { getProjectCwd, getMonomindDataRoot, migrateLegacyStoreFile } from './types.js';
17
- import { weightedTally } from '../consensus/tally.js';
18
- // Reuse agent-tools.ts's hardened store loader (50MB size cap + __proto__
19
- // rejection) instead of maintaining a second, weaker copy that reads the
20
- // same physical file — see loadAgentStore export note there.
21
- import { loadAgentStore, loadAgentStoreOrNull } from './agent-tools.js';
22
- // Storage paths
23
- const STORAGE_DIR = '.monomind';
24
- const HIVE_DIR = 'hive-mind';
25
- const HIVE_FILE = 'state.json';
26
- /**
27
- * Calculate required votes for a given strategy and total node count.
28
- */
29
- function calculateRequiredVotes(strategy, totalNodes, quorumPreset = 'majority') {
30
- if (totalNodes <= 0)
31
- return 1;
32
- switch (strategy) {
33
- case 'bft':
34
- // BFT: requires 2/3 + 1 of total nodes
35
- return Math.floor((totalNodes * 2) / 3) + 1;
36
- case 'raft':
37
- // Raft: simple majority
38
- return Math.floor(totalNodes / 2) + 1;
39
- case 'quorum':
40
- switch (quorumPreset) {
41
- case 'unanimous':
42
- return totalNodes;
43
- case 'supermajority':
44
- return Math.floor((totalNodes * 2) / 3) + 1;
45
- case 'majority':
46
- default:
47
- return Math.floor(totalNodes / 2) + 1;
48
- }
49
- default:
50
- return Math.floor(totalNodes / 2) + 1;
51
- }
52
- }
53
- /**
54
- * Detect Byzantine behavior: a voter who has cast conflicting votes
55
- * across proposals in the same round (same type, overlapping time).
56
- * Here we check if the voter already voted differently on this proposal
57
- * (which shouldn't happen if we block double-votes, so this checks
58
- * cross-proposal conflicting votes for same type within the pending set).
59
- */
60
- function detectByzantineVoters(pending, currentProposal, voterId, newVote) {
61
- // Check if voter cast opposite votes on proposals of the same type
62
- for (const p of pending) {
63
- if (p.proposalId === currentProposal.proposalId)
64
- continue;
65
- if (p.type !== currentProposal.type)
66
- continue;
67
- if (voterId in p.votes && p.votes[voterId] !== newVote) {
68
- return true; // Conflicting vote detected
69
- }
70
- }
71
- return false;
72
- }
73
- /**
74
- * Try to resolve a proposal based on its strategy.
75
- * Returns 'approved', 'rejected', or null if still pending.
76
- */
77
- function tryResolveProposal(proposal, totalNodes) {
78
- const votesFor = Object.values(proposal.votes).filter(v => v).length;
79
- const votesAgainst = Object.values(proposal.votes).filter(v => !v).length;
80
- const required = calculateRequiredVotes(proposal.strategy, totalNodes, proposal.quorumPreset);
81
- if (votesFor >= required)
82
- return 'approved';
83
- if (votesAgainst >= required)
84
- return 'rejected';
85
- // For quorum with 'unanimous', also reject if any vote is against
86
- if (proposal.strategy === 'quorum' && proposal.quorumPreset === 'unanimous' && votesAgainst > 0) {
87
- return 'rejected';
88
- }
89
- // Check if it's impossible to reach quorum (remaining potential votes can't tip it)
90
- const totalVotes = Object.keys(proposal.votes).length;
91
- const remaining = totalNodes - totalVotes;
92
- if (votesFor + remaining < required && votesAgainst + remaining < required) {
93
- // Deadlock: neither side can win -- reject
94
- return 'rejected';
95
- }
96
- return null;
97
- }
98
- function getHiveDir() {
99
- return join(getMonomindDataRoot(), HIVE_DIR);
100
- }
101
- function getHivePath() {
102
- return join(getHiveDir(), HIVE_FILE);
103
- }
104
- function ensureHiveDir() {
105
- const dir = getHiveDir();
106
- if (!existsSync(dir)) {
107
- mkdirSync(dir, { recursive: true });
108
- }
109
- }
110
- const MAX_HIVE_STATE_BYTES = 10 * 1024 * 1024; // 10 MB
111
- function loadHiveState() {
112
- try {
113
- const path = getHivePath();
114
- migrateLegacyStoreFile(path, join(HIVE_DIR, HIVE_FILE));
115
- if (existsSync(path) && statSync(path).size <= MAX_HIVE_STATE_BYTES) {
116
- const data = readFileSync(path, 'utf-8');
117
- return JSON.parse(data);
118
- }
119
- }
120
- catch (e) {
121
- if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
122
- console.error('[hive-mind-tools] failed to parse hive state.json — resetting to default state:', e);
123
- }
124
- return {
125
- initialized: false,
126
- topology: 'mesh',
127
- workers: [],
128
- consensus: { pending: [], history: [] },
129
- sharedMemory: {},
130
- createdAt: new Date().toISOString(),
131
- updatedAt: new Date().toISOString(),
132
- };
133
- }
134
- function saveHiveState(state) {
135
- ensureHiveDir();
136
- state.updatedAt = new Date().toISOString();
137
- const dest = getHivePath();
138
- const tmp = `${dest}.${process.pid}.${Date.now()}.tmp`;
139
- writeFileSync(tmp, JSON.stringify(state, null, 2), 'utf-8');
140
- renameSync(tmp, dest);
141
- }
142
- const SESSION_SECRET_FILE = 'session-secret';
143
- /**
144
- * Resolve the HMAC signing secret used for consensus vote/audit records.
145
- *
146
- * Previously this was read exclusively from MONOMIND_SESSION_SECRET, which
147
- * nothing in `init`/`doctor`/docs ever sets — so by default every consensus
148
- * decision silently produced zero audit records (writes were skipped, and
149
- * hive-mind_audit_verify refused to run at all). To make the audit trail
150
- * work out of the box, fall back to a per-project secret generated once and
151
- * persisted alongside the hive state (0600-equivalent: kept out of state.json
152
- * and never returned by any tool). MONOMIND_SESSION_SECRET still takes
153
- * precedence for callers that want to manage/rotate the secret themselves.
154
- */
155
- function getOrCreateSessionSecret() {
156
- const envSecret = process.env.MONOMIND_SESSION_SECRET;
157
- if (envSecret)
158
- return envSecret;
159
- const path = join(getHiveDir(), SESSION_SECRET_FILE);
160
- try {
161
- if (existsSync(path)) {
162
- const existing = readFileSync(path, 'utf-8').trim();
163
- if (existing)
164
- return existing;
165
- }
166
- }
167
- catch { /* fall through to regeneration */ }
168
- try {
169
- ensureHiveDir();
170
- // eslint-disable-next-line @typescript-eslint/no-var-requires
171
- const secret = randomBytes(32).toString('hex');
172
- const tmp = `${path}.${process.pid}.${Date.now()}.tmp`;
173
- writeFileSync(tmp, secret, 'utf-8');
174
- renameSync(tmp, path);
175
- return secret;
176
- }
177
- catch {
178
- // Filesystem unavailable — fall back to an ephemeral in-process secret.
179
- // Audit records signed with this won't verify across process restarts,
180
- // but propose/vote/resolve still function.
181
- return randomBytes(32).toString('hex');
182
- }
183
- }
184
- // Import agent store helpers for spawn functionality
185
- import { existsSync as agentStoreExists, writeFileSync as writeAgentStore, mkdirSync as mkdirAgentStore } from 'node:fs';
186
- const HIVE_RESERVED_KEYS = new Set(['__proto__', 'constructor', 'prototype']);
187
- function saveAgentStore(store) {
188
- const storeDir = join(getMonomindDataRoot(), 'agents');
189
- if (!agentStoreExists(storeDir)) {
190
- mkdirAgentStore(storeDir, { recursive: true });
191
- }
192
- const dest = join(storeDir, 'store.json');
193
- const tmp = `${dest}.${process.pid}.${Date.now()}.tmp`;
194
- writeAgentStore(tmp, JSON.stringify(store, null, 2), 'utf-8');
195
- renameSync(tmp, dest);
196
- }
197
- // Every hive-mind_* tool operates on a single JSON state file in one process —
198
- // "consensus"/"spawn"/"broadcast" etc. are vote-threshold bookkeeping and
199
- // record-keeping, not real distributed coordination (see CLAUDE.md's Hive-Mind
200
- // Consensus section and hive-mind_consensus's own description). Only status/join
201
- // are legitimate no-drama primitives (read state / register into it) and stay
202
- // visible by default; everything else is gated behind MONOMIND_MCP_SPECULATIVE=1.
203
- /** Ungated — internal/test use only. MCP clients get `hiveMindTools` below. */
204
- export const allHiveMindTools = [
205
- {
206
- name: 'hive-mind_spawn',
207
- description: 'Write worker agent records into the agent store and register their ids on the hive state file (combines agent_spawn + hive-mind_join). Creates bookkeeping entries only — no process, thread, or agent is started. Real concurrency comes from Claude Code\'s Task tool.',
208
- category: 'hive-mind',
209
- inputSchema: {
210
- type: 'object',
211
- properties: {
212
- count: { type: 'number', description: 'Number of workers to spawn (default: 1)', default: 1 },
213
- role: { type: 'string', enum: ['worker', 'specialist', 'scout'], description: 'Worker role in hive', default: 'worker' },
214
- agentType: { type: 'string', description: 'Agent type for spawned workers', default: 'worker' },
215
- prefix: { type: 'string', description: 'Prefix for worker IDs', default: 'hive-worker' },
216
- },
217
- },
218
- handler: async (input) => {
219
- const state = loadHiveState();
220
- if (!state.initialized) {
221
- return { success: false, error: 'Hive-mind not initialized. Run hive-mind/init first.' };
222
- }
223
- const count = Math.min(Math.max(1, input.count || 1), 20); // Cap at 20
224
- // Cap role/agentType/prefix: used as JSON keys and stored values in agentStore
225
- // on disk; an oversized prefix inflates the generated agentId key and config.
226
- const MAX_HIVE_ROLE_LEN = 256;
227
- const MAX_HIVE_PREFIX_LEN = 128;
228
- const rawRole = input.role || 'worker';
229
- const role = typeof rawRole === 'string' && rawRole.length > MAX_HIVE_ROLE_LEN
230
- ? rawRole.slice(0, MAX_HIVE_ROLE_LEN) : rawRole;
231
- const rawAgentType = input.agentType || 'worker';
232
- const agentType = typeof rawAgentType === 'string' && rawAgentType.length > MAX_HIVE_ROLE_LEN
233
- ? rawAgentType.slice(0, MAX_HIVE_ROLE_LEN) : rawAgentType;
234
- const rawPrefix = input.prefix || 'hive-worker';
235
- const prefix = typeof rawPrefix === 'string' && rawPrefix.length > MAX_HIVE_PREFIX_LEN
236
- ? rawPrefix.slice(0, MAX_HIVE_PREFIX_LEN) : rawPrefix;
237
- // Must use the null-aware loader here (this handler mutates and saves)
238
- // — loadAgentStore() on a corrupt/oversized store.json now returns the
239
- // empty default, and saving that back would wipe every real agent.
240
- const agentStore = loadAgentStoreOrNull();
241
- if (!agentStore) {
242
- return { success: false, error: 'Agent store is unreadable/corrupt — refusing to spawn hive workers to avoid overwriting real agent data.' };
243
- }
244
- const spawnedWorkers = [];
245
- for (let i = 0; i < count; i++) {
246
- const agentId = `${prefix}-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`;
247
- if (HIVE_RESERVED_KEYS.has(agentId))
248
- continue;
249
- // Create agent record (like agent/spawn)
250
- agentStore.agents[agentId] = {
251
- agentId,
252
- agentType,
253
- status: 'idle',
254
- health: 1.0,
255
- taskCount: 0,
256
- config: { role, hiveRole: role },
257
- createdAt: new Date().toISOString(),
258
- domain: 'hive-mind',
259
- };
260
- // Join to hive-mind (like hive-mind/join)
261
- const MAX_HIVE_AGENTS = 100;
262
- if (!state.workers.includes(agentId)) {
263
- if (state.workers.length >= MAX_HIVE_AGENTS) {
264
- return { success: false, error: `Hive has reached max agent capacity (${MAX_HIVE_AGENTS})` };
265
- }
266
- state.workers.push(agentId);
267
- }
268
- spawnedWorkers.push({
269
- agentId,
270
- role,
271
- joinedAt: new Date().toISOString(),
272
- });
273
- }
274
- saveAgentStore(agentStore);
275
- saveHiveState(state);
276
- return {
277
- success: true,
278
- spawned: count,
279
- workers: spawnedWorkers,
280
- totalWorkers: state.workers.length,
281
- hiveStatus: 'active',
282
- message: `Spawned ${count} worker(s) and joined them to the hive-mind`,
283
- };
284
- },
285
- },
286
- {
287
- name: 'hive-mind_init',
288
- description: 'Create the hive state file recording topology, consensus strategy, and an empty worker list. Writes JSON state only — nothing is started, and no collective process exists. Note "gossip" and "crdt" strategies are rejected: they are not implemented.',
289
- category: 'hive-mind',
290
- inputSchema: {
291
- type: 'object',
292
- properties: {
293
- topology: { type: 'string', enum: ['mesh', 'hierarchical', 'ring', 'star'], description: 'Network topology' },
294
- queenId: { type: 'string', description: 'Initial queen agent ID' },
295
- consensus: { type: 'string', enum: ['byzantine', 'bft', 'raft', 'quorum'], description: 'Consensus strategy to govern hive-mind_consensus propose/vote (gossip/crdt are planned but not implemented and fall back to byzantine). Default: byzantine.' },
296
- maxAgents: { type: 'number', description: 'Maximum number of agents in the hive. Default: 15.' },
297
- persist: { type: 'boolean', description: 'Whether to persist hive state to disk. Default: true.' },
298
- memoryBackend: { type: 'string', description: 'Shared memory backend for the hive. Default: hybrid.' },
299
- },
300
- },
301
- handler: async (input) => {
302
- const hiveId = `hive-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
303
- // Cap queenId: stored in hive state JSON as the queen's agentId field.
304
- const MAX_QUEEN_ID_LEN = 256;
305
- const rawQueenId = input.queenId || `queen-${Date.now()}`;
306
- const queenId = typeof rawQueenId === 'string' && rawQueenId.length > MAX_QUEEN_ID_LEN
307
- ? rawQueenId.slice(0, MAX_QUEEN_ID_LEN) : rawQueenId;
308
- const now = new Date().toISOString();
309
- // Validate consensus strategy: gossip and crdt are planned but not implemented
310
- const SUPPORTED_CONSENSUS = ['byzantine', 'bft', 'raft', 'quorum'];
311
- const PLANNED_CONSENSUS = ['gossip', 'crdt'];
312
- const requestedConsensus = input.consensus || 'byzantine';
313
- const consensusWarning = PLANNED_CONSENSUS.includes(requestedConsensus)
314
- ? `Strategy "${requestedConsensus}" is planned but not yet implemented; defaulting to "byzantine".`
315
- : undefined;
316
- const effectiveConsensus = PLANNED_CONSENSUS.includes(requestedConsensus)
317
- ? 'byzantine'
318
- : (SUPPORTED_CONSENSUS.includes(requestedConsensus) ? requestedConsensus : 'byzantine');
319
- const state = {
320
- initialized: true,
321
- hiveId,
322
- topology: input.topology || 'mesh',
323
- queen: { agentId: queenId, electedAt: now, term: 1 },
324
- workers: [],
325
- // Persist the chosen strategy on the hive state so hive-mind_consensus
326
- // propose/vote default to it instead of silently using 'raft'.
327
- // 'byzantine' is the CLI-facing name; the internal ConsensusStrategy type uses 'bft'.
328
- consensusStrategy: (effectiveConsensus === 'byzantine' ? 'bft' : effectiveConsensus),
329
- consensus: { pending: [], history: [] },
330
- sharedMemory: {},
331
- createdAt: now,
332
- updatedAt: now,
333
- };
334
- // Single write — a prior version of this handler saved state twice
335
- // (once before setting consensusStrategy, once after), which was
336
- // redundant.
337
- saveHiveState(state);
338
- return {
339
- success: true,
340
- hiveId,
341
- topology: state.topology,
342
- consensus: effectiveConsensus,
343
- queenId,
344
- neuralLearning: 'unavailable',
345
- status: 'initialized',
346
- ...(consensusWarning ? { warning: consensusWarning } : {}),
347
- config: {
348
- topology: state.topology,
349
- consensus: effectiveConsensus,
350
- maxAgents: input.maxAgents || 15,
351
- persist: input.persist !== false,
352
- memoryBackend: input.memoryBackend || 'hybrid',
353
- },
354
- createdAt: state.createdAt,
355
- };
356
- },
357
- },
358
- {
359
- name: 'hive-mind_status',
360
- description: 'Get hive-mind status',
361
- category: 'hive-mind',
362
- inputSchema: {
363
- type: 'object',
364
- properties: {
365
- verbose: { type: 'boolean', description: 'Include detailed information' },
366
- },
367
- },
368
- handler: async (input) => {
369
- const state = loadHiveState();
370
- const uptime = state.createdAt ? Date.now() - new Date(state.createdAt).getTime() : 0;
371
- // Load agent store once for all workers
372
- const agentStore = loadAgentStore();
373
- // Compute real task metrics from task store
374
- const taskStorePath = join(getMonomindDataRoot(), 'tasks', 'store.json');
375
- migrateLegacyStoreFile(taskStorePath, join('tasks', 'store.json'));
376
- let pendingTaskCount = 0;
377
- let activeTaskCount = 0;
378
- let completedTaskCount = 0;
379
- try {
380
- if (existsSync(taskStorePath) && statSync(taskStorePath).size <= MAX_HIVE_STATE_BYTES) {
381
- const taskStore = JSON.parse(readFileSync(taskStorePath, 'utf-8'));
382
- for (const task of Object.values(taskStore.tasks || {})) {
383
- if (task.status === 'pending')
384
- pendingTaskCount++;
385
- else if (task.status === 'in_progress')
386
- activeTaskCount++;
387
- else if (task.status === 'completed')
388
- completedTaskCount++;
389
- }
390
- }
391
- }
392
- catch (e) {
393
- if (process.env.DEBUG || process.env.MONOMIND_DEBUG)
394
- console.error('[hive-mind-tools] failed to parse task store — task counts default to 0:', e);
395
- }
396
- const workerCount = Math.max(1, state.workers.length);
397
- const realLoad = activeTaskCount / workerCount;
398
- const status = {
399
- // CLI expected fields
400
- hiveId: state.hiveId ?? `hive-${state.createdAt ? new Date(state.createdAt).getTime() : Date.now()}`,
401
- status: state.initialized ? 'active' : 'offline',
402
- topology: state.topology,
403
- // Reflect the strategy actually chosen at hive-mind_init (persisted
404
- // as state.consensusStrategy so it "actually governs voting" — see
405
- // the field's doc comment) instead of hardcoding a default that
406
- // ignored what was configured. 'bft' is the internal name for the
407
- // CLI-facing 'byzantine' strategy.
408
- consensus: state.consensusStrategy
409
- ? (state.consensusStrategy === 'bft' ? 'byzantine' : state.consensusStrategy)
410
- : 'byzantine',
411
- queen: state.queen ? {
412
- id: state.queen.agentId,
413
- agentId: state.queen.agentId,
414
- status: 'active',
415
- load: Math.round(realLoad * 1000) / 1000,
416
- tasksQueued: pendingTaskCount,
417
- electedAt: state.queen.electedAt,
418
- term: state.queen.term,
419
- } : { id: 'N/A', status: 'offline', load: 0, tasksQueued: 0 },
420
- workers: state.workers.map(w => {
421
- const agent = agentStore.agents[w];
422
- return {
423
- id: w,
424
- type: agent?.agentType || 'worker',
425
- status: agent?.status || 'unknown',
426
- // AgentRecord has no currentTask field — always null. Kept in the
427
- // response shape for API stability; was already dead before this
428
- // (the previous `as unknown as Record<string, unknown>` cast hid
429
- // that `agent?.currentTask` never matched a real field).
430
- currentTask: null,
431
- tasksCompleted: agent?.taskCount || 0,
432
- };
433
- }),
434
- metrics: {
435
- totalTasks: pendingTaskCount + activeTaskCount + completedTaskCount,
436
- completedTasks: completedTaskCount,
437
- activeTasks: activeTaskCount,
438
- pendingTasks: pendingTaskCount,
439
- failedTasks: 0,
440
- consensusRounds: state.consensus.history.length,
441
- memoryUsage: `${Object.keys(state.sharedMemory).length * 2} KB`,
442
- },
443
- health: {
444
- overall: 'healthy',
445
- queen: state.queen ? 'healthy' : 'unhealthy',
446
- workers: state.workers.length > 0 ? 'healthy' : 'degraded',
447
- consensus: 'healthy',
448
- memory: 'healthy',
449
- },
450
- // Additional fields
451
- id: state.hiveId ?? `hive-${state.createdAt ? new Date(state.createdAt).getTime() : Date.now()}`,
452
- initialized: state.initialized,
453
- workerCount: state.workers.length,
454
- pendingConsensus: state.consensus.pending.length,
455
- sharedMemoryKeys: Object.keys(state.sharedMemory).length,
456
- uptime,
457
- createdAt: state.createdAt,
458
- updatedAt: state.updatedAt,
459
- };
460
- if (input.verbose) {
461
- return {
462
- ...status,
463
- workerDetails: state.workers,
464
- consensusHistory: state.consensus.history.slice(-10),
465
- sharedMemory: state.sharedMemory,
466
- };
467
- }
468
- return status;
469
- },
470
- },
471
- {
472
- name: 'hive-mind_join',
473
- description: 'Join an agent to the hive-mind',
474
- category: 'hive-mind',
475
- inputSchema: {
476
- type: 'object',
477
- properties: {
478
- agentId: { type: 'string', description: 'Agent ID to join' },
479
- role: { type: 'string', enum: ['worker', 'specialist', 'scout'], description: 'Agent role in hive' },
480
- },
481
- required: ['agentId'],
482
- },
483
- handler: async (input) => {
484
- const state = loadHiveState();
485
- const agentId = input.agentId;
486
- // Reject IDs that would mutate Object.prototype when used as a key on the
487
- // JSON-loaded plain object `agentStore.agents` (read in hive-mind_status).
488
- if (typeof agentId !== 'string' || agentId.length === 0 || agentId.length > 128 ||
489
- HIVE_RESERVED_KEYS.has(agentId) || !/^[a-zA-Z0-9_-]+$/.test(agentId)) {
490
- return { success: false, error: 'Invalid agentId' };
491
- }
492
- if (!state.initialized) {
493
- return { success: false, error: 'Hive-mind not initialized' };
494
- }
495
- const MAX_HIVE_AGENTS = 100;
496
- if (!state.workers.includes(agentId)) {
497
- if (state.workers.length >= MAX_HIVE_AGENTS) {
498
- return { success: false, error: `Hive has reached max agent capacity (${MAX_HIVE_AGENTS})` };
499
- }
500
- state.workers.push(agentId);
501
- saveHiveState(state);
502
- }
503
- return {
504
- success: true,
505
- agentId,
506
- role: input.role || 'worker',
507
- totalWorkers: state.workers.length,
508
- joinedAt: new Date().toISOString(),
509
- };
510
- },
511
- },
512
- {
513
- name: 'hive-mind_leave',
514
- description: 'Remove an agent from the hive-mind',
515
- category: 'hive-mind',
516
- inputSchema: {
517
- type: 'object',
518
- properties: {
519
- agentId: { type: 'string', description: 'Agent ID to remove' },
520
- },
521
- required: ['agentId'],
522
- },
523
- handler: async (input) => {
524
- const state = loadHiveState();
525
- const agentId = input.agentId;
526
- if (typeof agentId !== 'string' || agentId.length === 0 || agentId.length > 128 ||
527
- HIVE_RESERVED_KEYS.has(agentId) || !/^[a-zA-Z0-9_-]+$/.test(agentId)) {
528
- return { success: false, error: 'Invalid agentId' };
529
- }
530
- const index = state.workers.indexOf(agentId);
531
- if (index > -1) {
532
- state.workers.splice(index, 1);
533
- saveHiveState(state);
534
- return {
535
- success: true,
536
- agentId,
537
- leftAt: new Date().toISOString(),
538
- remainingWorkers: state.workers.length,
539
- };
540
- }
541
- return { success: false, agentId, error: 'Agent not in hive' };
542
- },
543
- },
544
- {
545
- name: 'hive-mind_consensus',
546
- description: 'Propose or vote on a threshold-based decision, single-process only. "bft"/"raft"/"quorum" are vote-count thresholds (2f+1 / majority / configurable preset) over one JSON state file — NOT real distributed consensus protocols (no leader election, log replication, or network model). Names kept for CLI/API compatibility.',
547
- category: 'hive-mind',
548
- inputSchema: {
549
- type: 'object',
550
- properties: {
551
- action: { type: 'string', enum: ['propose', 'vote', 'status', 'list'], description: 'Consensus action' },
552
- proposalId: { type: 'string', description: 'Proposal ID (for vote/status)' },
553
- type: { type: 'string', description: 'Proposal type (for propose)' },
554
- value: { description: 'Proposal value (for propose)' },
555
- vote: { type: 'boolean', description: 'Vote (true=for, false=against)' },
556
- voterId: { type: 'string', description: 'Voter agent ID' },
557
- strategy: { type: 'string', enum: ['bft', 'raft', 'quorum'], description: 'Consensus strategy (default: raft)' },
558
- quorumPreset: { type: 'string', enum: ['unanimous', 'majority', 'supermajority'], description: 'Quorum threshold preset (for quorum strategy, default: majority)' },
559
- term: { type: 'number', description: 'Term number (for raft strategy)' },
560
- timeoutMs: { type: 'number', description: 'Timeout in ms for raft re-proposal (default: 30000)' },
561
- minDivergenceRounds: { type: 'number', description: 'O-Information anti-groupthink gate: minimum rounds with divergent votes required before resolution (arXiv:2510.05174). Default: 0 (disabled).' },
562
- },
563
- required: ['action'],
564
- },
565
- handler: async (input) => {
566
- const state = loadHiveState();
567
- const action = input.action;
568
- // Default to the strategy chosen at hive-mind_init (state.consensusStrategy);
569
- // fall back to 'raft' only when the hive hasn't been initialized with one.
570
- const rawStrategy = input.strategy || state.consensusStrategy || 'raft';
571
- // Gossip and CRDT are planned but not yet implemented -- reject early
572
- // with an honest message instead of silently falling through.
573
- const UNIMPLEMENTED_STRATEGIES = ['gossip', 'crdt'];
574
- if (UNIMPLEMENTED_STRATEGIES.includes(rawStrategy)) {
575
- return {
576
- action,
577
- error: `Strategy "${rawStrategy}" is planned but not yet implemented. Available strategies: bft, raft, quorum.`,
578
- availableStrategies: ['bft', 'raft', 'quorum'],
579
- };
580
- }
581
- const strategy = rawStrategy;
582
- const totalNodes = state.workers.length;
583
- if (action === 'propose') {
584
- const proposalId = `proposal-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
585
- const quorumPreset = input.quorumPreset || 'majority';
586
- const term = input.term || (state.queen?.term ?? 1);
587
- const timeoutMs = input.timeoutMs || 30000;
588
- // Raft: check if there's already a pending proposal for this term
589
- if (strategy === 'raft') {
590
- const existingTermProposal = state.consensus.pending.find(p => p.strategy === 'raft' && p.term === term && p.status === 'pending');
591
- if (existingTermProposal) {
592
- return {
593
- action,
594
- error: `Raft term ${term} already has a pending proposal: ${existingTermProposal.proposalId}. Wait for resolution or use a higher term.`,
595
- existingProposalId: existingTermProposal.proposalId,
596
- term,
597
- };
598
- }
599
- }
600
- const required = calculateRequiredVotes(strategy, totalNodes, quorumPreset);
601
- const minDivergenceRounds = typeof input.minDivergenceRounds === 'number'
602
- ? Math.max(0, input.minDivergenceRounds)
603
- : 0;
604
- // Cap proposal fields: stored in state.consensus.pending and then
605
- // state.consensus.history (up to 1000 entries). An unbounded value
606
- // inflates the on-disk hive state by up to 1000 × value size.
607
- const MAX_PROPOSAL_TYPE_LEN = 128;
608
- const MAX_PROPOSAL_VOTER_ID_LEN = 256;
609
- const MAX_PROPOSAL_VALUE_BYTES = 64 * 1024; // 64 KB
610
- const rawProposalType = input.type || 'general';
611
- const proposalType = typeof rawProposalType === 'string' && rawProposalType.length > MAX_PROPOSAL_TYPE_LEN
612
- ? rawProposalType.slice(0, MAX_PROPOSAL_TYPE_LEN) : rawProposalType;
613
- const rawVoterId = input.voterId || 'system';
614
- const proposedBy = typeof rawVoterId === 'string' && rawVoterId.length > MAX_PROPOSAL_VOTER_ID_LEN
615
- ? rawVoterId.slice(0, MAX_PROPOSAL_VOTER_ID_LEN) : rawVoterId;
616
- // Cap value if it's a string; leave non-string values as-is (they are
617
- // JSON-serialised by saveHiveState which uses JSON.stringify — bounded
618
- // objects are fine).
619
- const rawValue = input.value;
620
- const cappedValue = typeof rawValue === 'string' && rawValue.length > MAX_PROPOSAL_VALUE_BYTES
621
- ? rawValue.slice(0, MAX_PROPOSAL_VALUE_BYTES) : rawValue;
622
- const proposal = {
623
- proposalId,
624
- type: proposalType,
625
- value: cappedValue,
626
- proposedBy,
627
- proposedAt: new Date().toISOString(),
628
- votes: {},
629
- status: 'pending',
630
- strategy,
631
- term: strategy === 'raft' ? term : undefined,
632
- quorumPreset: strategy === 'quorum' ? quorumPreset : undefined,
633
- byzantineVoters: strategy === 'bft' ? [] : undefined,
634
- timeoutAt: strategy === 'raft' ? new Date(Date.now() + timeoutMs).toISOString() : undefined,
635
- minDivergenceRounds: minDivergenceRounds > 0 ? minDivergenceRounds : undefined,
636
- divergenceRoundsSeen: 0,
637
- };
638
- state.consensus.pending.push(proposal);
639
- saveHiveState(state);
640
- return {
641
- action,
642
- proposalId,
643
- type: proposal.type,
644
- strategy,
645
- status: 'pending',
646
- required,
647
- totalNodes,
648
- term: proposal.term,
649
- quorumPreset: proposal.quorumPreset,
650
- timeoutAt: proposal.timeoutAt,
651
- minDivergenceRounds: proposal.minDivergenceRounds,
652
- };
653
- }
654
- if (action === 'vote') {
655
- const proposal = state.consensus.pending.find(p => p.proposalId === input.proposalId);
656
- if (!proposal) {
657
- return { action, error: 'Proposal not found or already resolved' };
658
- }
659
- const voterId = input.voterId;
660
- if (!voterId) {
661
- return { action, error: 'voterId is required for voting' };
662
- }
663
- if (totalNodes === 0) {
664
- return { action, error: 'No workers in hive — cannot vote' };
665
- }
666
- if (!state.workers.includes(voterId)) {
667
- return { action, error: `Voter ${voterId} is not a member of this hive` };
668
- }
669
- const voteValue = input.vote;
670
- const proposalStrategy = proposal.strategy || 'raft';
671
- const required = calculateRequiredVotes(proposalStrategy, totalNodes, proposal.quorumPreset);
672
- // Prevent double-voting
673
- if (voterId in proposal.votes) {
674
- const previousVote = proposal.votes[voterId];
675
- if (previousVote === voteValue) {
676
- return {
677
- action,
678
- error: `Voter ${voterId} has already cast the same vote on this proposal`,
679
- proposalId: proposal.proposalId,
680
- existingVote: previousVote,
681
- };
682
- }
683
- // Conflicting vote from same voter
684
- if (proposalStrategy === 'bft') {
685
- // BFT: detect as Byzantine behavior
686
- if (!proposal.byzantineVoters)
687
- proposal.byzantineVoters = [];
688
- if (!proposal.byzantineVoters.includes(voterId)) {
689
- proposal.byzantineVoters.push(voterId);
690
- }
691
- // Remove their vote entirely -- Byzantine voter is excluded
692
- delete proposal.votes[voterId];
693
- saveHiveState(state);
694
- return {
695
- action,
696
- proposalId: proposal.proposalId,
697
- voterId,
698
- byzantineDetected: true,
699
- message: `Byzantine behavior detected: voter ${voterId} attempted conflicting vote. Vote invalidated.`,
700
- byzantineVoters: proposal.byzantineVoters,
701
- status: proposal.status,
702
- };
703
- }
704
- if (proposalStrategy === 'raft') {
705
- // Raft: only one vote per node per term, reject the change
706
- return {
707
- action,
708
- error: `Raft: voter ${voterId} already voted in term ${proposal.term}. Cannot change vote.`,
709
- proposalId: proposal.proposalId,
710
- term: proposal.term,
711
- };
712
- }
713
- // Quorum: reject double-vote
714
- return {
715
- action,
716
- error: `Voter ${voterId} has already voted on this proposal`,
717
- proposalId: proposal.proposalId,
718
- };
719
- }
720
- // BFT: check for cross-proposal Byzantine behavior
721
- if (proposalStrategy === 'bft') {
722
- const isByzantine = detectByzantineVoters(state.consensus.pending, proposal, voterId, voteValue);
723
- if (isByzantine) {
724
- if (!proposal.byzantineVoters)
725
- proposal.byzantineVoters = [];
726
- if (!proposal.byzantineVoters.includes(voterId)) {
727
- proposal.byzantineVoters.push(voterId);
728
- }
729
- saveHiveState(state);
730
- return {
731
- action,
732
- proposalId: proposal.proposalId,
733
- voterId,
734
- byzantineDetected: true,
735
- message: `Byzantine behavior detected: voter ${voterId} cast conflicting votes across proposals of same type. Vote rejected.`,
736
- byzantineVoters: proposal.byzantineVoters,
737
- status: proposal.status,
738
- };
739
- }
740
- }
741
- // Record the vote
742
- proposal.votes[voterId] = voteValue;
743
- const votesFor = Object.values(proposal.votes).filter(v => v).length;
744
- const votesAgainst = Object.values(proposal.votes).filter(v => !v).length;
745
- // O-Information divergence tracking (arXiv:2510.05174)
746
- // Count this voting round as divergent if not all votes are the same direction.
747
- // A divergent round signals synergy is still "in play" among agents.
748
- const allVotes = Object.values(proposal.votes);
749
- const isUnanimous = allVotes.every(v => v) || allVotes.every(v => !v);
750
- if (!isUnanimous && allVotes.length >= 2) {
751
- proposal.divergenceRoundsSeen = (proposal.divergenceRoundsSeen ?? 0) + 1;
752
- }
753
- // CP-WBFT: weighted tally using uniform confidence (1.0) until probe scores available
754
- // Source: https://arxiv.org/abs/2511.10400
755
- const weightedVotes = Object.entries(proposal.votes).map(([aid, v]) => ({
756
- agentId: aid,
757
- vote: v,
758
- confidence: 1.0, // uniform until confidence-probe is wired
759
- }));
760
- const cpwbftTally = weightedTally(weightedVotes);
761
- // O-Information gate: defer resolution if we haven't seen enough divergent rounds.
762
- // BUT: if every expected voter has already cast a vote (electorate
763
- // exhausted), no more votes can ever arrive to produce a divergent
764
- // round — a unanimous first-round vote would otherwise deadlock the
765
- // proposal permanently since divergenceRoundsSeen only increments on
766
- // disagreement. Treat electorate exhaustion as a terminal condition
767
- // that opens the gate regardless of divergence.
768
- const totalVotesCast = Object.keys(proposal.votes).length;
769
- const electorateExhausted = totalNodes > 0 && totalVotesCast >= totalNodes;
770
- const divergenceGateOpen = !proposal.minDivergenceRounds
771
- || (proposal.divergenceRoundsSeen ?? 0) >= proposal.minDivergenceRounds
772
- || electorateExhausted;
773
- // Try to resolve
774
- const resolution = divergenceGateOpen ? tryResolveProposal(proposal, totalNodes) : null;
775
- let resolved = false;
776
- if (resolution !== null) {
777
- resolved = true;
778
- proposal.status = resolution;
779
- state.consensus.history.push({
780
- proposalId: proposal.proposalId,
781
- type: proposal.type,
782
- result: resolution,
783
- votes: { for: votesFor, against: votesAgainst },
784
- decidedAt: new Date().toISOString(),
785
- strategy: proposalStrategy,
786
- term: proposal.term,
787
- byzantineDetected: proposal.byzantineVoters?.length ? proposal.byzantineVoters : undefined,
788
- });
789
- if (state.consensus.history.length > 1000) {
790
- state.consensus.history = state.consensus.history.slice(-1000);
791
- }
792
- state.consensus.pending = state.consensus.pending.filter(p => p.proposalId !== proposal.proposalId);
793
- }
794
- saveHiveState(state);
795
- // Persist consensus result for searchable history
796
- if (resolved) {
797
- try {
798
- const bridge = await import('../memory/memory-bridge.js');
799
- await bridge.bridgeStoreEntry({
800
- key: `consensus-${proposal.proposalId}`,
801
- value: JSON.stringify({
802
- proposalId: proposal.proposalId,
803
- type: proposal.type,
804
- strategy: proposalStrategy,
805
- status: proposal.status,
806
- votes: proposal.votes,
807
- resolvedAt: new Date().toISOString(),
808
- }),
809
- namespace: 'hive-consensus',
810
- tags: [proposal.type, proposalStrategy || 'raft', proposal.status],
811
- });
812
- }
813
- catch { /* SQLite memory backend not available — JSON store is primary */ }
814
- // Persist consensus audit record — uses MONOMIND_SESSION_SECRET when
815
- // set, otherwise a per-project generated-and-persisted secret so the
816
- // audit trail is populated by default (see getOrCreateSessionSecret).
817
- const sessionSecret = getOrCreateSessionSecret();
818
- try {
819
- const { AuditWriter } = await import('../consensus/audit-writer.js');
820
- const auditDir = join(getProjectCwd(), STORAGE_DIR, 'consensus');
821
- const writer = new AuditWriter(auditDir);
822
- const now = new Date().toISOString();
823
- const voteEntries = Object.entries(proposal.votes).map(([agentId, vote]) => ({
824
- agentId,
825
- agentSlug: agentId,
826
- vote,
827
- votedAt: now,
828
- }));
829
- writer.record({
830
- decisionId: proposal.proposalId,
831
- swarmId: `hive-${state.createdAt ? new Date(state.createdAt).getTime() : Date.now()}`,
832
- protocol: (proposalStrategy === 'bft' ? 'byzantine' : proposalStrategy === 'raft' ? 'raft' : 'quorum'),
833
- topic: proposal.type,
834
- decision: resolution,
835
- votes: voteEntries,
836
- quorumRequired: required,
837
- quorumThreshold: required / Math.max(totalNodes, 1),
838
- round: (proposal.divergenceRoundsSeen ?? 0) + 1,
839
- startedAt: proposal.proposedAt,
840
- completedAt: now,
841
- sessionSecret,
842
- });
843
- }
844
- catch (e) {
845
- if (process.env.MONOMIND_LOG_LEVEL === 'debug') {
846
- process.stderr.write(`[hive-consensus] Audit write failed: ${e.message}\n`);
847
- }
848
- }
849
- }
850
- return {
851
- action,
852
- proposalId: proposal.proposalId,
853
- voterId,
854
- vote: voteValue,
855
- strategy: proposalStrategy,
856
- votesFor,
857
- votesAgainst,
858
- required,
859
- totalNodes,
860
- resolved,
861
- result: resolved ? resolution : undefined,
862
- status: proposal.status,
863
- term: proposal.term,
864
- byzantineVoters: proposal.byzantineVoters?.length ? proposal.byzantineVoters : undefined,
865
- cpwbft: cpwbftTally,
866
- // O-Information divergence gate status
867
- divergenceGateOpen,
868
- divergenceRoundsSeen: proposal.divergenceRoundsSeen ?? 0,
869
- minDivergenceRounds: proposal.minDivergenceRounds,
870
- divergenceHint: !divergenceGateOpen
871
- ? `O-Information gate: ${proposal.divergenceRoundsSeen ?? 0}/${proposal.minDivergenceRounds} divergent rounds seen. Resolution deferred to prevent groupthink.`
872
- : undefined,
873
- };
874
- }
875
- if (action === 'status') {
876
- const proposal = state.consensus.pending.find(p => p.proposalId === input.proposalId);
877
- if (!proposal) {
878
- // Check history
879
- const historical = state.consensus.history.find(h => h.proposalId === input.proposalId);
880
- if (historical) {
881
- return { action, ...historical, historical: true, resolved: true };
882
- }
883
- return { action, error: 'Proposal not found' };
884
- }
885
- const votesFor = Object.values(proposal.votes).filter(v => v).length;
886
- const votesAgainst = Object.values(proposal.votes).filter(v => !v).length;
887
- const proposalStrategy = proposal.strategy || 'raft';
888
- const required = calculateRequiredVotes(proposalStrategy, totalNodes, proposal.quorumPreset);
889
- // Raft: check timeout
890
- let timedOut = false;
891
- if (proposalStrategy === 'raft' && proposal.timeoutAt) {
892
- timedOut = new Date().getTime() > new Date(proposal.timeoutAt).getTime();
893
- }
894
- return {
895
- action,
896
- proposalId: proposal.proposalId,
897
- type: proposal.type,
898
- strategy: proposalStrategy,
899
- status: proposal.status,
900
- votesFor,
901
- votesAgainst,
902
- totalVotes: Object.keys(proposal.votes).length,
903
- required,
904
- totalNodes,
905
- resolved: false,
906
- term: proposal.term,
907
- quorumPreset: proposal.quorumPreset,
908
- byzantineVoters: proposal.byzantineVoters?.length ? proposal.byzantineVoters : undefined,
909
- timedOut,
910
- timeoutAt: proposal.timeoutAt,
911
- hint: timedOut ? `Raft timeout reached. Re-propose with term ${(proposal.term || 1) + 1}.` : undefined,
912
- };
913
- }
914
- if (action === 'list') {
915
- return {
916
- action,
917
- pending: state.consensus.pending.map(p => ({
918
- proposalId: p.proposalId,
919
- type: p.type,
920
- strategy: p.strategy || 'raft',
921
- proposedAt: p.proposedAt,
922
- totalVotes: Object.keys(p.votes).length,
923
- required: calculateRequiredVotes(p.strategy || 'raft', totalNodes, p.quorumPreset),
924
- term: p.term,
925
- status: p.status,
926
- })),
927
- recentHistory: state.consensus.history.slice(-5),
928
- };
929
- }
930
- return { action, error: 'Unknown action' };
931
- },
932
- },
933
- {
934
- name: 'hive-mind_broadcast',
935
- description: 'Append a message to a shared array on the hive state file (capped at 100 entries). This is a noticeboard, not message delivery — there are no live listeners, and a worker only sees it if something later reads that state. The reported recipient count is just the number of ids in the worker list.',
936
- category: 'hive-mind',
937
- inputSchema: {
938
- type: 'object',
939
- properties: {
940
- message: { type: 'string', description: 'Message to broadcast' },
941
- priority: { type: 'string', enum: ['low', 'normal', 'high', 'critical'], description: 'Message priority' },
942
- fromId: { type: 'string', description: 'Sender agent ID' },
943
- },
944
- required: ['message'],
945
- },
946
- handler: async (input) => {
947
- const state = loadHiveState();
948
- if (!state.initialized) {
949
- return { success: false, error: 'Hive-mind not initialized' };
950
- }
951
- // Cap inputs: message/fromId are stored directly in the shared-memory JSON
952
- // state (up to 100 broadcasts kept). An uncapped message lets an attacker
953
- // inflate the on-disk hive state by up to 100 × message size per call.
954
- const MAX_BROADCAST_MSG_LEN = 1024 * 1024; // 1 MB
955
- const MAX_FROM_ID_LEN = 256;
956
- const MAX_PRIORITY_LEN = 16;
957
- const rawMessage = input.message;
958
- const message = typeof rawMessage === 'string' && rawMessage.length > MAX_BROADCAST_MSG_LEN
959
- ? rawMessage.slice(0, MAX_BROADCAST_MSG_LEN)
960
- : rawMessage;
961
- const rawFromId = input.fromId || 'system';
962
- const fromId = typeof rawFromId === 'string' && rawFromId.length > MAX_FROM_ID_LEN
963
- ? rawFromId.slice(0, MAX_FROM_ID_LEN)
964
- : rawFromId;
965
- const rawPriority = input.priority || 'normal';
966
- const priority = typeof rawPriority === 'string' && rawPriority.length > MAX_PRIORITY_LEN
967
- ? rawPriority.slice(0, MAX_PRIORITY_LEN)
968
- : rawPriority;
969
- const messageId = `msg-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
970
- // Store in shared memory
971
- const messages = state.sharedMemory.broadcasts || [];
972
- messages.push({
973
- messageId,
974
- message,
975
- priority,
976
- fromId,
977
- timestamp: new Date().toISOString(),
978
- });
979
- // Keep only last 100 broadcasts
980
- state.sharedMemory.broadcasts = messages.slice(-100);
981
- saveHiveState(state);
982
- return {
983
- success: true,
984
- messageId,
985
- recipients: state.workers.length,
986
- priority,
987
- broadcastAt: new Date().toISOString(),
988
- };
989
- },
990
- },
991
- {
992
- name: 'hive-mind_shutdown',
993
- description: 'Shutdown the hive-mind and terminate all workers',
994
- category: 'hive-mind',
995
- inputSchema: {
996
- type: 'object',
997
- properties: {
998
- graceful: { type: 'boolean', description: 'Graceful shutdown (wait for pending tasks)', default: true },
999
- force: { type: 'boolean', description: 'Force immediate shutdown', default: false },
1000
- },
1001
- },
1002
- handler: async (input) => {
1003
- const state = loadHiveState();
1004
- if (!state.initialized) {
1005
- return { success: false, error: 'Hive-mind not initialized or already shut down' };
1006
- }
1007
- const graceful = input.graceful !== false;
1008
- const force = input.force === true;
1009
- const workerCount = state.workers.length;
1010
- const pendingConsensus = state.consensus.pending.length;
1011
- // If graceful and there are pending consensus items, warn (unless forced)
1012
- if (graceful && pendingConsensus > 0 && !force) {
1013
- return {
1014
- success: false,
1015
- error: `Cannot gracefully shutdown with ${pendingConsensus} pending consensus items. Use force: true to override.`,
1016
- pendingConsensus,
1017
- workerCount,
1018
- };
1019
- }
1020
- // Clear workers from agent store. Must use the null-aware loader here
1021
- // (this handler mutates and saves) — loadAgentStore() on a corrupt/
1022
- // oversized store.json now returns the empty default, and deleting
1023
- // from + saving that back would wipe every real agent, not just the
1024
- // hive workers being shut down.
1025
- const agentStore = loadAgentStoreOrNull();
1026
- if (!agentStore) {
1027
- return { success: false, error: 'Agent store is unreadable/corrupt — refusing to shut down to avoid overwriting real agent data.', pendingConsensus, workerCount };
1028
- }
1029
- for (const workerId of state.workers) {
1030
- if (agentStore.agents[workerId]) {
1031
- delete agentStore.agents[workerId];
1032
- }
1033
- }
1034
- saveAgentStore(agentStore);
1035
- // Reset hive state
1036
- const shutdownTime = new Date().toISOString();
1037
- const previousQueen = state.queen?.agentId;
1038
- state.initialized = false;
1039
- state.queen = undefined;
1040
- state.workers = [];
1041
- state.consensus.pending = [];
1042
- // Keep history for reference
1043
- state.sharedMemory = {};
1044
- saveHiveState(state);
1045
- return {
1046
- success: true,
1047
- shutdownAt: shutdownTime,
1048
- graceful,
1049
- workersTerminated: workerCount,
1050
- previousQueen,
1051
- consensusCleared: pendingConsensus,
1052
- message: `Hive-mind shutdown complete. ${workerCount} workers terminated.`,
1053
- };
1054
- },
1055
- },
1056
- {
1057
- name: 'hive-mind_memory',
1058
- description: 'Read or write a shared JSON blob on the hive state file. Plain key/value bookkeeping in a single local file — not a distributed or replicated store.',
1059
- category: 'hive-mind',
1060
- inputSchema: {
1061
- type: 'object',
1062
- properties: {
1063
- action: { type: 'string', enum: ['get', 'set', 'delete', 'list'], description: 'Memory action' },
1064
- key: { type: 'string', description: 'Memory key' },
1065
- value: { description: 'Value to store (for set)' },
1066
- },
1067
- required: ['action'],
1068
- },
1069
- handler: async (input) => {
1070
- const state = loadHiveState();
1071
- const action = input.action;
1072
- const key = input.key;
1073
- const MAX_HIVE_MEMORY_KEY_LEN = 256;
1074
- const MAX_HIVE_MEMORY_VALUE_BYTES = 1024 * 1024; // 1 MB
1075
- const MAX_HIVE_MEMORY_KEYS = 1000;
1076
- if (action === 'get') {
1077
- if (!key)
1078
- return { action, error: 'Key required' };
1079
- if (typeof key !== 'string' || key.length > MAX_HIVE_MEMORY_KEY_LEN || HIVE_RESERVED_KEYS.has(key)) {
1080
- return { action, error: 'Invalid key' };
1081
- }
1082
- return {
1083
- action,
1084
- key,
1085
- value: Object.hasOwn(state.sharedMemory, key) ? state.sharedMemory[key] : undefined,
1086
- exists: Object.hasOwn(state.sharedMemory, key),
1087
- };
1088
- }
1089
- if (action === 'set') {
1090
- if (!key)
1091
- return { action, error: 'Key required' };
1092
- if (typeof key !== 'string' || key.length > MAX_HIVE_MEMORY_KEY_LEN || HIVE_RESERVED_KEYS.has(key)) {
1093
- return { action, error: 'Invalid key' };
1094
- }
1095
- // Cap value if it's a string; otherwise serialize and check byte size
1096
- const rawValue = input.value;
1097
- const cappedValue = typeof rawValue === 'string' && rawValue.length > MAX_HIVE_MEMORY_VALUE_BYTES
1098
- ? rawValue.slice(0, MAX_HIVE_MEMORY_VALUE_BYTES)
1099
- : rawValue;
1100
- // Enforce max number of distinct keys to prevent unbounded growth
1101
- const keyCount = Object.keys(state.sharedMemory).length;
1102
- if (!Object.hasOwn(state.sharedMemory, key) && keyCount >= MAX_HIVE_MEMORY_KEYS) {
1103
- return { action, error: `Shared memory full (max ${MAX_HIVE_MEMORY_KEYS} keys)` };
1104
- }
1105
- state.sharedMemory[key] = cappedValue;
1106
- saveHiveState(state);
1107
- // Also store for searchable hive memory
1108
- try {
1109
- const bridge = await import('../memory/memory-bridge.js');
1110
- await bridge.bridgeStoreEntry({
1111
- key: `hive-memory-${key}`,
1112
- value: JSON.stringify(input.value),
1113
- namespace: 'hive-memory',
1114
- });
1115
- }
1116
- catch { /* SQLite memory backend not available */ }
1117
- return {
1118
- action,
1119
- key,
1120
- success: true,
1121
- updatedAt: new Date().toISOString(),
1122
- };
1123
- }
1124
- if (action === 'delete') {
1125
- if (!key)
1126
- return { action, error: 'Key required' };
1127
- if (typeof key !== 'string' || key.length > MAX_HIVE_MEMORY_KEY_LEN || HIVE_RESERVED_KEYS.has(key)) {
1128
- return { action, error: 'Invalid key' };
1129
- }
1130
- const existed = Object.hasOwn(state.sharedMemory, key);
1131
- delete state.sharedMemory[key];
1132
- saveHiveState(state);
1133
- return {
1134
- action,
1135
- key,
1136
- deleted: existed,
1137
- };
1138
- }
1139
- if (action === 'list') {
1140
- return {
1141
- action,
1142
- keys: Object.keys(state.sharedMemory),
1143
- count: Object.keys(state.sharedMemory).length,
1144
- };
1145
- }
1146
- return { action, error: 'Unknown action' };
1147
- },
1148
- },
1149
- {
1150
- name: 'hive-mind_audit_list',
1151
- description: 'List tamper-evident consensus audit records (HMAC-signed JSONL trail)',
1152
- category: 'hive-mind',
1153
- inputSchema: {
1154
- type: 'object',
1155
- properties: {
1156
- swarmId: { type: 'string', description: 'Filter by swarm ID (optional)' },
1157
- limit: { type: 'number', description: 'Max records to return (default: 50, max: 500)' },
1158
- },
1159
- },
1160
- handler: async (input) => {
1161
- try {
1162
- const { AuditWriter } = await import('../consensus/audit-writer.js');
1163
- const auditDir = join(getProjectCwd(), STORAGE_DIR, 'consensus');
1164
- const writer = new AuditWriter(auditDir);
1165
- const limit = Math.min(Math.max(1, input.limit || 50), 500);
1166
- const swarmId = input.swarmId;
1167
- const records = writer.listDecisions(swarmId, limit);
1168
- return {
1169
- success: true,
1170
- count: records.length,
1171
- records: records.map(r => ({
1172
- decisionId: r.decisionId,
1173
- swarmId: r.swarmId,
1174
- protocol: r.protocol,
1175
- topic: r.topic,
1176
- decision: r.decision,
1177
- voteCount: r.votes.length,
1178
- quorumAchieved: r.quorumAchieved,
1179
- round: r.round,
1180
- durationMs: r.durationMs,
1181
- completedAt: r.completedAt,
1182
- signed: !!r.recordSignature,
1183
- })),
1184
- };
1185
- }
1186
- catch (e) {
1187
- return { success: false, error: `Audit trail unavailable: ${e.message}` };
1188
- }
1189
- },
1190
- },
1191
- {
1192
- name: 'hive-mind_audit_verify',
1193
- description: 'Verify tamper-evidence of a consensus decision (checks HMAC signatures on all votes and the record itself)',
1194
- category: 'hive-mind',
1195
- inputSchema: {
1196
- type: 'object',
1197
- properties: {
1198
- decisionId: { type: 'string', description: 'Decision/proposal ID to verify' },
1199
- },
1200
- required: ['decisionId'],
1201
- },
1202
- handler: async (input) => {
1203
- // Uses MONOMIND_SESSION_SECRET when set, otherwise the same
1204
- // per-project generated-and-persisted secret used to sign records
1205
- // in hive-mind_consensus (see getOrCreateSessionSecret).
1206
- const sessionSecret = getOrCreateSessionSecret();
1207
- const decisionId = input.decisionId;
1208
- if (typeof decisionId !== 'string' || decisionId.length === 0 || decisionId.length > 256) {
1209
- return { success: false, error: 'Invalid decisionId' };
1210
- }
1211
- try {
1212
- const { AuditWriter } = await import('../consensus/audit-writer.js');
1213
- const auditDir = join(getProjectCwd(), STORAGE_DIR, 'consensus');
1214
- const writer = new AuditWriter(auditDir);
1215
- const result = writer.verifyDecision(decisionId, sessionSecret);
1216
- return {
1217
- success: true,
1218
- decisionId,
1219
- valid: result.valid,
1220
- invalidVotes: result.invalidVotes,
1221
- message: result.valid
1222
- ? 'All vote signatures and record signature verified — no tampering detected.'
1223
- : `Verification failed: ${result.invalidVotes.length} invalid vote(s) or record signature mismatch.`,
1224
- };
1225
- }
1226
- catch (e) {
1227
- return { success: false, error: `Audit verification failed: ${e.message}` };
1228
- }
1229
- },
1230
- },
1231
- ];
1232
- const SPECULATIVE = process.env['MONOMIND_MCP_SPECULATIVE'] === '1';
1233
- const CORE_HIVE_MIND_NAMES = new Set(['hive-mind_status', 'hive-mind_join']);
1234
- export const hiveMindTools = SPECULATIVE
1235
- ? allHiveMindTools
1236
- : allHiveMindTools.filter(t => CORE_HIVE_MIND_NAMES.has(t.name));
1237
- //# sourceMappingURL=hive-mind-tools.js.map