monomind 1.19.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (870) hide show
  1. package/README.md +2 -5
  2. package/package.json +15 -34
  3. package/packages/@monomind/cli/.claude/agents/github/issue-tracker.md +0 -2
  4. package/packages/@monomind/cli/.claude/agents/github/pr-manager.md +0 -2
  5. package/packages/@monomind/cli/.claude/agents/github/repo-architect.md +3 -11
  6. package/packages/@monomind/cli/.claude/agents/goal/goal-planner.md +0 -1
  7. package/packages/@monomind/cli/.claude/commands/github/issue-tracker.md +0 -2
  8. package/packages/@monomind/cli/.claude/commands/github/pr-manager.md +0 -2
  9. package/packages/@monomind/cli/.claude/commands/github/repo-architect.md +3 -10
  10. package/packages/@monomind/cli/.claude/commands/mastermind/help.md +3 -3
  11. package/packages/@monomind/cli/.claude/commands/workflows/README.md +0 -1
  12. package/packages/@monomind/cli/.claude/commands/workflows/workflow-create.md +0 -1
  13. package/packages/@monomind/cli/.claude/commands/workflows/workflow-execute.md +1 -3
  14. package/packages/@monomind/cli/.claude/commands/workflows/workflow-export.md +0 -2
  15. package/packages/@monomind/cli/.claude/helpers/handlers/agent-start-handler.cjs +18 -1
  16. package/packages/@monomind/cli/.claude/helpers/handlers/edit-handler.cjs +15 -0
  17. package/packages/@monomind/cli/.claude/helpers/handlers/gates-handler.cjs +2 -8
  18. package/packages/@monomind/cli/.claude/helpers/handlers/route-handler.cjs +149 -7
  19. package/packages/@monomind/cli/.claude/helpers/handlers/session-handler.cjs +47 -25
  20. package/packages/@monomind/cli/.claude/helpers/handlers/session-restore-handler.cjs +80 -43
  21. package/packages/@monomind/cli/.claude/helpers/handlers/task-handler.cjs +8 -4
  22. package/packages/@monomind/cli/.claude/helpers/hook-handler.cjs +69 -16
  23. package/packages/@monomind/cli/.claude/helpers/intelligence.cjs +100 -9
  24. package/packages/@monomind/cli/.claude/helpers/router.cjs +78 -5
  25. package/packages/@monomind/cli/.claude/helpers/skill-registry.json +0 -189
  26. package/packages/@monomind/cli/.claude/skills/github-toolkit/SKILL.md +60 -0
  27. package/packages/@monomind/cli/.claude/skills/hive-mind-advanced/SKILL.md +0 -15
  28. package/packages/@monomind/cli/.claude/skills/hooks-automation/SKILL.md +0 -1
  29. package/packages/@monomind/cli/.claude/skills/mastermind-skills/_protocol.md +1 -1
  30. package/packages/@monomind/cli/.claude/skills/mastermind-skills/build.md +1 -2
  31. package/packages/@monomind/cli/.claude/skills/memory-toolkit/SKILL.md +75 -0
  32. package/packages/@monomind/cli/.claude/skills/specialagent/SKILL.md +2 -4
  33. package/packages/@monomind/cli/.claude/skills/swarm-advanced/SKILL.md +0 -1
  34. package/packages/@monomind/cli/README.md +2 -5
  35. package/packages/@monomind/cli/dist/src/autopilot-state.js +4 -5
  36. package/packages/@monomind/cli/dist/src/browser/dashboard/server.js +69 -1
  37. package/packages/@monomind/cli/dist/src/browser/dashboard/ui.html +214 -1764
  38. package/packages/@monomind/cli/dist/src/capabilities/index.d.ts +0 -2
  39. package/packages/@monomind/cli/dist/src/capabilities/index.js +0 -1
  40. package/packages/@monomind/cli/dist/src/commands/agent-lifecycle.js +2 -6
  41. package/packages/@monomind/cli/dist/src/commands/analyze.d.ts +0 -4
  42. package/packages/@monomind/cli/dist/src/commands/analyze.js +1 -29
  43. package/packages/@monomind/cli/dist/src/commands/completions.js +3 -22
  44. package/packages/@monomind/cli/dist/src/commands/config.js +0 -6
  45. package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.d.ts +12 -2
  46. package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.js +130 -22
  47. package/packages/@monomind/cli/dist/src/commands/doctor.js +6 -5
  48. package/packages/@monomind/cli/dist/src/commands/guidance.d.ts +5 -1
  49. package/packages/@monomind/cli/dist/src/commands/guidance.js +11 -556
  50. package/packages/@monomind/cli/dist/src/commands/hive-mind-comms.js +11 -4
  51. package/packages/@monomind/cli/dist/src/commands/hive-mind.d.ts +4 -4
  52. package/packages/@monomind/cli/dist/src/commands/hive-mind.js +9 -6
  53. package/packages/@monomind/cli/dist/src/commands/hooks-formatting.d.ts +1 -5
  54. package/packages/@monomind/cli/dist/src/commands/hooks-formatting.js +1 -18
  55. package/packages/@monomind/cli/dist/src/commands/hooks-workers.d.ts +1 -1
  56. package/packages/@monomind/cli/dist/src/commands/hooks-workers.js +82 -330
  57. package/packages/@monomind/cli/dist/src/commands/index.d.ts +0 -5
  58. package/packages/@monomind/cli/dist/src/commands/index.js +0 -45
  59. package/packages/@monomind/cli/dist/src/commands/init-wizard.js +1 -1
  60. package/packages/@monomind/cli/dist/src/commands/init.js +4 -24
  61. package/packages/@monomind/cli/dist/src/commands/neural-core.js +11 -11
  62. package/packages/@monomind/cli/dist/src/commands/neural-optimize.js +9 -11
  63. package/packages/@monomind/cli/dist/src/commands/neural-registry.js +10 -10
  64. package/packages/@monomind/cli/dist/src/commands/providers.js +90 -1
  65. package/packages/@monomind/cli/dist/src/commands/search-universal.d.ts +7 -1
  66. package/packages/@monomind/cli/dist/src/commands/search-universal.js +59 -5
  67. package/packages/@monomind/cli/dist/src/commands/security-cve.js +3 -5
  68. package/packages/@monomind/cli/dist/src/commands/session.js +143 -3
  69. package/packages/@monomind/cli/dist/src/commands/start.js +0 -18
  70. package/packages/@monomind/cli/dist/src/commands/swarm.js +112 -65
  71. package/packages/@monomind/cli/dist/src/consensus/audit-writer.js +43 -1
  72. package/packages/@monomind/cli/dist/src/consensus/tally.d.ts +19 -0
  73. package/packages/@monomind/cli/dist/src/consensus/tally.js +34 -0
  74. package/packages/@monomind/cli/dist/src/index.d.ts +3 -2
  75. package/packages/@monomind/cli/dist/src/index.js +9 -12
  76. package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +10 -14
  77. package/packages/@monomind/cli/dist/src/init/executor.js +39 -86
  78. package/packages/@monomind/cli/dist/src/init/settings-generator.js +0 -12
  79. package/packages/@monomind/cli/dist/src/init/statusline-generator.js +62 -0
  80. package/packages/@monomind/cli/dist/src/init/types.d.ts +2 -6
  81. package/packages/@monomind/cli/dist/src/init/types.js +0 -3
  82. package/packages/@monomind/cli/dist/src/knowledge/document-pipeline.js +18 -8
  83. package/packages/@monomind/cli/dist/src/mcp-client.js +0 -2
  84. package/packages/@monomind/cli/dist/src/mcp-server.js +12 -14
  85. package/packages/@monomind/cli/dist/src/mcp-tools/coherence/coherence-check.js +1 -19
  86. package/packages/@monomind/cli/dist/src/mcp-tools/coherence/types.d.ts +3 -2
  87. package/packages/@monomind/cli/dist/src/mcp-tools/coherence/types.js +3 -18
  88. package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.js +1 -7
  89. package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.js +2 -2
  90. package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +7 -17
  91. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +8 -1
  92. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +174 -38
  93. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-advanced.d.ts +18 -0
  94. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-advanced.js +25 -0
  95. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.d.ts +4 -8
  96. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.js +33 -482
  97. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.d.ts +1 -0
  98. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.js +51 -43
  99. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-synthesis.d.ts +31 -0
  100. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-synthesis.js +196 -0
  101. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +10 -8
  102. package/packages/@monomind/cli/dist/src/mcp-tools/index.d.ts +0 -1
  103. package/packages/@monomind/cli/dist/src/mcp-tools/index.js +0 -1
  104. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +20 -29
  105. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.d.ts +6 -0
  106. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +78 -220
  107. package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.d.ts +9 -4
  108. package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.js +242 -506
  109. package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.js +103 -0
  110. package/packages/@monomind/cli/dist/src/memory/intelligence.d.ts +2 -1
  111. package/packages/@monomind/cli/dist/src/memory/intelligence.js +56 -43
  112. package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +14 -9
  113. package/packages/@monomind/cli/dist/src/memory/memory-read.js +1 -19
  114. package/packages/@monomind/cli/dist/src/suggest.js +1 -7
  115. package/packages/@monomind/cli/dist/src/transfer/store/discovery.d.ts +3 -2
  116. package/packages/@monomind/cli/dist/src/transfer/store/discovery.js +22 -70
  117. package/packages/@monomind/cli/dist/src/update/checker.js +0 -1
  118. package/packages/@monomind/cli/dist/src/utils/cosine-similarity.d.ts +22 -0
  119. package/packages/@monomind/cli/dist/src/utils/cosine-similarity.js +38 -0
  120. package/packages/@monomind/cli/dist/src/utils/input-guards.d.ts +51 -0
  121. package/packages/@monomind/cli/dist/src/utils/input-guards.js +223 -0
  122. package/packages/@monomind/cli/dist/src/utils/json-file.d.ts +33 -0
  123. package/packages/@monomind/cli/dist/src/utils/json-file.js +57 -0
  124. package/packages/@monomind/cli/package.json +9 -6
  125. package/packages/@monomind/cli/scripts/sync-claude-assets.sh +16 -20
  126. package/scripts/generate-agent-avatars.mjs +0 -8
  127. package/.claude/agents/architecture/system-design/arch-system-design.md +0 -54
  128. package/.claude/agents/consensus/crdt-synchronizer.md +0 -977
  129. package/.claude/agents/consensus/quorum-manager.md +0 -803
  130. package/.claude/agents/consensus/security-manager.md +0 -602
  131. package/.claude/agents/core/coder.md +0 -262
  132. package/.claude/agents/core/coordinator.md +0 -71
  133. package/.claude/agents/core/planner.md +0 -170
  134. package/.claude/agents/core/researcher.md +0 -197
  135. package/.claude/agents/core/reviewer.md +0 -327
  136. package/.claude/agents/core/tester.md +0 -318
  137. package/.claude/agents/design/design-monodesign.md +0 -121
  138. package/.claude/agents/engineering/engineering-ai-data-remediation-engineer.md +0 -212
  139. package/.claude/agents/engineering/engineering-ai-engineer.md +0 -165
  140. package/.claude/agents/engineering/engineering-autonomous-optimization-architect.md +0 -108
  141. package/.claude/agents/engineering/engineering-backend-architect.md +0 -254
  142. package/.claude/agents/engineering/engineering-code-reviewer.md +0 -95
  143. package/.claude/agents/engineering/engineering-data-engineer.md +0 -307
  144. package/.claude/agents/engineering/engineering-database-optimizer.md +0 -200
  145. package/.claude/agents/engineering/engineering-devops-automator.md +0 -430
  146. package/.claude/agents/engineering/engineering-embedded-firmware-engineer.md +0 -174
  147. package/.claude/agents/engineering/engineering-feishu-integration-developer.md +0 -607
  148. package/.claude/agents/engineering/engineering-frontend-developer.md +0 -249
  149. package/.claude/agents/engineering/engineering-git-workflow-master.md +0 -108
  150. package/.claude/agents/engineering/engineering-incident-response-commander.md +0 -482
  151. package/.claude/agents/engineering/engineering-mobile-app-builder.md +0 -499
  152. package/.claude/agents/engineering/engineering-rapid-prototyper.md +0 -463
  153. package/.claude/agents/engineering/engineering-security-engineer.md +0 -303
  154. package/.claude/agents/engineering/engineering-senior-developer.md +0 -195
  155. package/.claude/agents/engineering/engineering-software-architect.md +0 -100
  156. package/.claude/agents/engineering/engineering-solidity-smart-contract-engineer.md +0 -528
  157. package/.claude/agents/engineering/engineering-sre.md +0 -114
  158. package/.claude/agents/engineering/engineering-technical-writer.md +0 -412
  159. package/.claude/agents/engineering/engineering-threat-detection-engineer.md +0 -540
  160. package/.claude/agents/engineering/engineering-wechat-mini-program-developer.md +0 -351
  161. package/.claude/agents/generated/case-analyst.md +0 -50
  162. package/.claude/agents/generated/channel-intelligence-director.md +0 -87
  163. package/.claude/agents/generated/chief-growth-officer.md +0 -88
  164. package/.claude/agents/generated/churn-analyst.md +0 -53
  165. package/.claude/agents/generated/code-reviewer.md +0 -55
  166. package/.claude/agents/generated/code-validator.md +0 -57
  167. package/.claude/agents/generated/complexity-scanner.md +0 -56
  168. package/.claude/agents/generated/content-seo-strategist.md +0 -90
  169. package/.claude/agents/generated/copy-editor.md +0 -45
  170. package/.claude/agents/generated/court-reporter.md +0 -50
  171. package/.claude/agents/generated/defender.md +0 -51
  172. package/.claude/agents/generated/devbot-orchestrator.md +0 -58
  173. package/.claude/agents/generated/devbot-planner.md +0 -63
  174. package/.claude/agents/generated/developer-community-strategist.md +0 -91
  175. package/.claude/agents/generated/editor-in-chief.md +0 -45
  176. package/.claude/agents/generated/fact-checker.md +0 -45
  177. package/.claude/agents/generated/impact-assessor.md +0 -54
  178. package/.claude/agents/generated/judge.md +0 -51
  179. package/.claude/agents/generated/outreach-partnership-strategist.md +0 -90
  180. package/.claude/agents/generated/prosecutor.md +0 -51
  181. package/.claude/agents/generated/reporter.md +0 -45
  182. package/.claude/agents/generated/social-media-strategist.md +0 -91
  183. package/.claude/agents/generated/video-visual-strategist.md +0 -90
  184. package/.claude/agents/github/code-review-swarm.md +0 -557
  185. package/.claude/agents/github/github-modes.md +0 -154
  186. package/.claude/agents/github/issue-tracker.md +0 -299
  187. package/.claude/agents/github/multi-repo-swarm.md +0 -525
  188. package/.claude/agents/github/pr-manager.md +0 -163
  189. package/.claude/agents/github/project-board-sync.md +0 -478
  190. package/.claude/agents/github/release-manager.md +0 -296
  191. package/.claude/agents/github/repo-architect.md +0 -359
  192. package/.claude/agents/github/swarm-issue.md +0 -548
  193. package/.claude/agents/github/swarm-pr.md +0 -427
  194. package/.claude/agents/github/sync-coordinator.md +0 -355
  195. package/.claude/agents/github/workflow-automation.md +0 -640
  196. package/.claude/agents/goal/goal-planner.md +0 -168
  197. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +0 -129
  198. package/.claude/agents/hive-mind/queen-coordinator.md +0 -202
  199. package/.claude/agents/hive-mind/scout-explorer.md +0 -241
  200. package/.claude/agents/hive-mind/swarm-memory-manager.md +0 -192
  201. package/.claude/agents/hive-mind/worker-specialist.md +0 -216
  202. package/.claude/agents/marketing/marketing-competitive-content.md +0 -155
  203. package/.claude/agents/marketing/marketing-cro-specialist.md +0 -147
  204. package/.claude/agents/marketing/marketing-email-specialist.md +0 -90
  205. package/.claude/agents/marketing/marketing-launch-strategist.md +0 -129
  206. package/.claude/agents/marketing/marketing-pricing-strategist.md +0 -127
  207. package/.claude/agents/optimization/benchmark-suite.md +0 -665
  208. package/.claude/agents/optimization/load-balancer.md +0 -431
  209. package/.claude/agents/optimization/performance-monitor.md +0 -672
  210. package/.claude/agents/optimization/resource-allocator.md +0 -674
  211. package/.claude/agents/optimization/topology-optimizer.md +0 -808
  212. package/.claude/agents/reengineer-squad/boss.md +0 -113
  213. package/.claude/agents/reengineer-squad/critic-architect.md +0 -132
  214. package/.claude/agents/reengineer-squad/git-manager.md +0 -145
  215. package/.claude/agents/reengineer-squad/idea-generator.md +0 -95
  216. package/.claude/agents/reengineer-squad/implementer.md +0 -112
  217. package/.claude/agents/reengineer-squad/integration-planner.md +0 -112
  218. package/.claude/agents/reengineer-squad/source-analyst.md +0 -103
  219. package/.claude/agents/reengineer-squad/target-analyst.md +0 -118
  220. package/.claude/agents/reengineer-squad/tester.md +0 -105
  221. package/.claude/agents/schemas/architecture-output.json +0 -43
  222. package/.claude/agents/schemas/code-review-output.json +0 -28
  223. package/.claude/agents/schemas/generic-task-input.json +0 -12
  224. package/.claude/agents/schemas/implementation-output.json +0 -18
  225. package/.claude/agents/schemas/research-output.json +0 -31
  226. package/.claude/agents/schemas/security-audit-output.json +0 -29
  227. package/.claude/agents/schemas/test-report-output.json +0 -29
  228. package/.claude/agents/sparc/architecture.md +0 -453
  229. package/.claude/agents/sparc/pseudocode.md +0 -299
  230. package/.claude/agents/sparc/refinement.md +0 -504
  231. package/.claude/agents/sparc/specification.md +0 -258
  232. package/.claude/agents/specialists/integration-architect.md +0 -94
  233. package/.claude/agents/specialized/agentic-identity-trust.md +0 -388
  234. package/.claude/agents/specialized/agents-orchestrator.md +0 -368
  235. package/.claude/agents/specialized/automation-governance-architect.md +0 -217
  236. package/.claude/agents/specialized/blockchain-security-auditor.md +0 -497
  237. package/.claude/agents/specialized/compliance-auditor.md +0 -159
  238. package/.claude/agents/specialized/identity-graph-operator.md +0 -261
  239. package/.claude/agents/specialized/lsp-index-engineer.md +0 -315
  240. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -89
  241. package/.claude/agents/specialized/specialized-cultural-intelligence-strategist.md +0 -89
  242. package/.claude/agents/specialized/specialized-developer-advocate.md +0 -318
  243. package/.claude/agents/specialized/specialized-document-generator.md +0 -56
  244. package/.claude/agents/specialized/specialized-mcp-builder.md +0 -64
  245. package/.claude/agents/specialized/specialized-model-qa.md +0 -489
  246. package/.claude/agents/specialized/specialized-workflow-architect.md +0 -595
  247. package/.claude/agents/specialized/zk-steward.md +0 -212
  248. package/.claude/agents/swarm/mesh-coordinator.md +0 -363
  249. package/.claude/agents/templates/automation-smart-agent.md +0 -185
  250. package/.claude/agents/templates/coordinator-swarm-init.md +0 -83
  251. package/.claude/agents/templates/implementer-sparc-coder.md +0 -231
  252. package/.claude/agents/testing/production-validator.md +0 -375
  253. package/.claude/agents/testing/tdd-london-swarm.md +0 -241
  254. package/.claude/agents/testing/testing-accessibility-auditor.md +0 -322
  255. package/.claude/agents/testing/testing-api-tester.md +0 -307
  256. package/.claude/agents/testing/testing-evidence-collector.md +0 -213
  257. package/.claude/agents/testing/testing-performance-benchmarker.md +0 -269
  258. package/.claude/agents/testing/testing-test-results-analyzer.md +0 -306
  259. package/.claude/agents/testing/testing-tool-evaluator.md +0 -395
  260. package/.claude/agents/testing/testing-workflow-optimizer.md +0 -451
  261. package/.claude/commands/agents/README.md +0 -14
  262. package/.claude/commands/agents/agent-capabilities.md +0 -25
  263. package/.claude/commands/agents/agent-coordination.md +0 -32
  264. package/.claude/commands/agents/agent-spawning.md +0 -32
  265. package/.claude/commands/agents/agent-types.md +0 -30
  266. package/.claude/commands/analysis/README.md +0 -18
  267. package/.claude/commands/analysis/bottleneck-detect.md +0 -69
  268. package/.claude/commands/analysis/performance-bottlenecks.md +0 -59
  269. package/.claude/commands/analysis/performance-report.md +0 -52
  270. package/.claude/commands/analysis/token-usage.md +0 -47
  271. package/.claude/commands/automation/README.md +0 -19
  272. package/.claude/commands/automation/auto-agent.md +0 -86
  273. package/.claude/commands/automation/self-healing.md +0 -108
  274. package/.claude/commands/automation/session-memory.md +0 -89
  275. package/.claude/commands/automation/smart-agents.md +0 -81
  276. package/.claude/commands/automation/smart-spawn.md +0 -66
  277. package/.claude/commands/automation/workflow-select.md +0 -60
  278. package/.claude/commands/coordination/README.md +0 -13
  279. package/.claude/commands/coordination/agent-spawn.md +0 -69
  280. package/.claude/commands/coordination/swarm-init.md +0 -82
  281. package/.claude/commands/coordination/task-orchestrate.md +0 -79
  282. package/.claude/commands/github/README.md +0 -24
  283. package/.claude/commands/github/github-modes.md +0 -151
  284. package/.claude/commands/github/issue-tracker.md +0 -293
  285. package/.claude/commands/github/pr-manager.md +0 -173
  286. package/.claude/commands/github/release-manager.md +0 -343
  287. package/.claude/commands/github/repo-architect.md +0 -379
  288. package/.claude/commands/github/sync-coordinator.md +0 -297
  289. package/.claude/commands/hive-mind/README.md +0 -42
  290. package/.claude/commands/hive-mind/hive-mind-consensus.md +0 -72
  291. package/.claude/commands/hive-mind/hive-mind-init.md +0 -68
  292. package/.claude/commands/hive-mind/hive-mind-memory.md +0 -73
  293. package/.claude/commands/hive-mind/hive-mind-spawn.md +0 -82
  294. package/.claude/commands/hive-mind/hive-mind-status.md +0 -56
  295. package/.claude/commands/hive-mind/hive-mind-stop.md +0 -55
  296. package/.claude/commands/hive-mind/hive-mind.md +0 -87
  297. package/.claude/commands/hooks/README.md +0 -66
  298. package/.claude/commands/hooks/overview.md +0 -112
  299. package/.claude/commands/hooks/post-edit.md +0 -78
  300. package/.claude/commands/hooks/post-task.md +0 -62
  301. package/.claude/commands/hooks/pre-edit.md +0 -81
  302. package/.claude/commands/hooks/pre-task.md +0 -73
  303. package/.claude/commands/hooks/session-end.md +0 -82
  304. package/.claude/commands/hooks/setup.md +0 -132
  305. package/.claude/commands/mastermind/_repeat.md +0 -492
  306. package/.claude/commands/mastermind/_taskfile.md +0 -232
  307. package/.claude/commands/mastermind/adr.md +0 -9
  308. package/.claude/commands/mastermind/approve.md +0 -91
  309. package/.claude/commands/mastermind/architect.md +0 -52
  310. package/.claude/commands/mastermind/autodev.md +0 -28
  311. package/.claude/commands/mastermind/brain.md +0 -99
  312. package/.claude/commands/mastermind/budget.md +0 -5
  313. package/.claude/commands/mastermind/build.md +0 -23
  314. package/.claude/commands/mastermind/code-review.md +0 -314
  315. package/.claude/commands/mastermind/content.md +0 -23
  316. package/.claude/commands/mastermind/createorg.md +0 -136
  317. package/.claude/commands/mastermind/createtask.md +0 -372
  318. package/.claude/commands/mastermind/debug.md +0 -19
  319. package/.claude/commands/mastermind/design.md +0 -17
  320. package/.claude/commands/mastermind/do.md +0 -525
  321. package/.claude/commands/mastermind/execute.md +0 -17
  322. package/.claude/commands/mastermind/finance.md +0 -23
  323. package/.claude/commands/mastermind/finish.md +0 -17
  324. package/.claude/commands/mastermind/graph-status.md +0 -5
  325. package/.claude/commands/mastermind/help.md +0 -115
  326. package/.claude/commands/mastermind/idea.md +0 -23
  327. package/.claude/commands/mastermind/ideate.md +0 -258
  328. package/.claude/commands/mastermind/improve.md +0 -342
  329. package/.claude/commands/mastermind/loops.md +0 -5
  330. package/.claude/commands/mastermind/marketing.md +0 -23
  331. package/.claude/commands/mastermind/master.md +0 -1124
  332. package/.claude/commands/mastermind/memory.md +0 -227
  333. package/.claude/commands/mastermind/okf-export.md +0 -14
  334. package/.claude/commands/mastermind/okf-import.md +0 -15
  335. package/.claude/commands/mastermind/ops.md +0 -23
  336. package/.claude/commands/mastermind/orgs.md +0 -18
  337. package/.claude/commands/mastermind/orgstatus.md +0 -56
  338. package/.claude/commands/mastermind/plan.md +0 -23
  339. package/.claude/commands/mastermind/receive-review.md +0 -17
  340. package/.claude/commands/mastermind/references/antigravity-tools.md +0 -60
  341. package/.claude/commands/mastermind/references/claude-code-tools.md +0 -50
  342. package/.claude/commands/mastermind/references/codex-tools.md +0 -64
  343. package/.claude/commands/mastermind/references/copilot-tools.md +0 -49
  344. package/.claude/commands/mastermind/references/gemini-tools.md +0 -63
  345. package/.claude/commands/mastermind/references/pi-tools.md +0 -28
  346. package/.claude/commands/mastermind/release.md +0 -23
  347. package/.claude/commands/mastermind/repeat.md +0 -254
  348. package/.claude/commands/mastermind/research.md +0 -23
  349. package/.claude/commands/mastermind/review.md +0 -34
  350. package/.claude/commands/mastermind/runorg.md +0 -153
  351. package/.claude/commands/mastermind/sales.md +0 -23
  352. package/.claude/commands/mastermind/skill-builder.md +0 -17
  353. package/.claude/commands/mastermind/specialagents.md +0 -122
  354. package/.claude/commands/mastermind/stoporg.md +0 -75
  355. package/.claude/commands/mastermind/swarm.md +0 -158
  356. package/.claude/commands/mastermind/taskdev.md +0 -23
  357. package/.claude/commands/mastermind/tdd.md +0 -19
  358. package/.claude/commands/mastermind/techport.md +0 -27
  359. package/.claude/commands/mastermind/understand.md +0 -136
  360. package/.claude/commands/mastermind/verify.md +0 -19
  361. package/.claude/commands/mastermind/worktree.md +0 -17
  362. package/.claude/commands/mastermind.md +0 -121
  363. package/.claude/commands/memory/README.md +0 -79
  364. package/.claude/commands/memory/memory-search.md +0 -77
  365. package/.claude/commands/monitoring/README.md +0 -69
  366. package/.claude/commands/monitoring/agent-metrics.md +0 -65
  367. package/.claude/commands/monitoring/agents.md +0 -71
  368. package/.claude/commands/monitoring/status.md +0 -108
  369. package/.claude/commands/monobrowse.md +0 -21
  370. package/.claude/commands/monoes/README.md +0 -30
  371. package/.claude/commands/monoes/install.md +0 -163
  372. package/.claude/commands/monoes/monoagent.md +0 -148
  373. package/.claude/commands/monoes/monoclip.md +0 -64
  374. package/.claude/commands/monoes/monotask.md +0 -137
  375. package/.claude/commands/monograph/README.md +0 -102
  376. package/.claude/commands/monograph/monograph-build.md +0 -79
  377. package/.claude/commands/monograph/monograph-search.md +0 -96
  378. package/.claude/commands/monograph/monograph-stats.md +0 -53
  379. package/.claude/commands/monograph/monograph-watch.md +0 -63
  380. package/.claude/commands/monograph/monograph-wiki.md +0 -91
  381. package/.claude/commands/optimization/auto-topology.md +0 -85
  382. package/.claude/commands/optimization/performance-optimize.md +0 -79
  383. package/.claude/commands/pair/README.md +0 -79
  384. package/.claude/commands/pair/examples.md +0 -156
  385. package/.claude/commands/pair/modes.md +0 -122
  386. package/.claude/commands/pair/session.md +0 -124
  387. package/.claude/commands/sparc/analyzer.md +0 -35
  388. package/.claude/commands/sparc/architect.md +0 -36
  389. package/.claude/commands/sparc/ask.md +0 -56
  390. package/.claude/commands/sparc/batch-executor.md +0 -37
  391. package/.claude/commands/sparc/code.md +0 -48
  392. package/.claude/commands/sparc/coder.md +0 -37
  393. package/.claude/commands/sparc/debug.md +0 -42
  394. package/.claude/commands/sparc/debugger.md +0 -37
  395. package/.claude/commands/sparc/designer.md +0 -36
  396. package/.claude/commands/sparc/devops.md +0 -68
  397. package/.claude/commands/sparc/docs-writer.md +0 -39
  398. package/.claude/commands/sparc/documenter.md +0 -37
  399. package/.claude/commands/sparc/innovator.md +0 -37
  400. package/.claude/commands/sparc/integration.md +0 -42
  401. package/.claude/commands/sparc/mcp.md +0 -76
  402. package/.claude/commands/sparc/memory-manager.md +0 -57
  403. package/.claude/commands/sparc/optimizer.md +0 -37
  404. package/.claude/commands/sparc/orchestrator.md +0 -70
  405. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +0 -42
  406. package/.claude/commands/sparc/refinement-optimization-mode.md +0 -42
  407. package/.claude/commands/sparc/researcher.md +0 -37
  408. package/.claude/commands/sparc/reviewer.md +0 -37
  409. package/.claude/commands/sparc/security-review.md +0 -39
  410. package/.claude/commands/sparc/sparc-modes.md +0 -120
  411. package/.claude/commands/sparc/sparc.md +0 -71
  412. package/.claude/commands/sparc/spec-pseudocode.md +0 -39
  413. package/.claude/commands/sparc/supabase-admin.md +0 -301
  414. package/.claude/commands/sparc/swarm-coordinator.md +0 -50
  415. package/.claude/commands/sparc/tdd.md +0 -37
  416. package/.claude/commands/sparc/tester.md +0 -37
  417. package/.claude/commands/sparc/tutorial.md +0 -38
  418. package/.claude/commands/sparc/workflow-manager.md +0 -37
  419. package/.claude/commands/sparc.md +0 -112
  420. package/.claude/commands/stream-chain/pipeline.md +0 -116
  421. package/.claude/commands/stream-chain/run.md +0 -156
  422. package/.claude/commands/swarm/README.md +0 -40
  423. package/.claude/commands/swarm/analysis.md +0 -73
  424. package/.claude/commands/swarm/development.md +0 -72
  425. package/.claude/commands/swarm/examples.md +0 -103
  426. package/.claude/commands/swarm/maintenance.md +0 -75
  427. package/.claude/commands/swarm/optimization.md +0 -84
  428. package/.claude/commands/swarm/research.md +0 -76
  429. package/.claude/commands/swarm/swarm.md +0 -79
  430. package/.claude/commands/swarm/testing.md +0 -80
  431. package/.claude/commands/tokens.md +0 -18
  432. package/.claude/commands/truth/start.md +0 -121
  433. package/.claude/commands/ts.md +0 -14
  434. package/.claude/commands/workflows/README.md +0 -65
  435. package/.claude/commands/workflows/development.md +0 -86
  436. package/.claude/commands/workflows/research.md +0 -89
  437. package/.claude/commands/workflows/workflow-create.md +0 -84
  438. package/.claude/commands/workflows/workflow-execute.md +0 -103
  439. package/.claude/commands/workflows/workflow-export.md +0 -90
  440. package/.claude/helpers/control-start.cjs +0 -184
  441. package/.claude/helpers/event-logger.cjs +0 -155
  442. package/.claude/helpers/extras-registry.json +0 -5141
  443. package/.claude/helpers/graphify-freshen.cjs +0 -140
  444. package/.claude/helpers/handlers/adr-draft-handler.cjs +0 -78
  445. package/.claude/helpers/handlers/agent-start-handler.cjs +0 -83
  446. package/.claude/helpers/handlers/budget-status-handler.cjs +0 -14
  447. package/.claude/helpers/handlers/capture-handler.cjs +0 -583
  448. package/.claude/helpers/handlers/compact-handler.cjs +0 -35
  449. package/.claude/helpers/handlers/edit-handler.cjs +0 -145
  450. package/.claude/helpers/handlers/gates-handler.cjs +0 -138
  451. package/.claude/helpers/handlers/graph-status-handler.cjs +0 -45
  452. package/.claude/helpers/handlers/loops-status-handler.cjs +0 -48
  453. package/.claude/helpers/handlers/route-handler.cjs +0 -381
  454. package/.claude/helpers/handlers/session-handler.cjs +0 -234
  455. package/.claude/helpers/handlers/session-restore-handler.cjs +0 -375
  456. package/.claude/helpers/handlers/stats-handler.cjs +0 -14
  457. package/.claude/helpers/handlers/task-handler.cjs +0 -206
  458. package/.claude/helpers/hook-handler.cjs +0 -765
  459. package/.claude/helpers/intelligence.cjs +0 -338
  460. package/.claude/helpers/learning-service.mjs +0 -61
  461. package/.claude/helpers/loop-tracker.cjs +0 -119
  462. package/.claude/helpers/mastermind-activate.cjs +0 -35
  463. package/.claude/helpers/memory-palace.cjs +0 -461
  464. package/.claude/helpers/memory.cjs +0 -193
  465. package/.claude/helpers/metrics-db.mjs +0 -87
  466. package/.claude/helpers/monolean-activate.cjs +0 -30
  467. package/.claude/helpers/monolean-config.cjs +0 -76
  468. package/.claude/helpers/monolean-instructions.cjs +0 -109
  469. package/.claude/helpers/monolean-propagate.cjs +0 -13
  470. package/.claude/helpers/monolean-tracker.cjs +0 -18
  471. package/.claude/helpers/router.cjs +0 -364
  472. package/.claude/helpers/session.cjs +0 -140
  473. package/.claude/helpers/skill-registry.json +0 -1043
  474. package/.claude/helpers/statusline.cjs +0 -1344
  475. package/.claude/helpers/toggle-statusline.cjs +0 -73
  476. package/.claude/helpers/token-tracker.cjs +0 -934
  477. package/.claude/helpers/utils/micro-agents.cjs +0 -354
  478. package/.claude/helpers/utils/monograph.cjs +0 -480
  479. package/.claude/helpers/utils/telemetry.cjs +0 -146
  480. package/.claude/mcp.json +0 -3
  481. package/.claude/scheduled_tasks.lock +0 -1
  482. package/.claude/settings.json +0 -475
  483. package/.claude/skills/.monomind/data/ranked-context.json +0 -5
  484. package/.claude/skills/.monomind/sessions/current.json +0 -13
  485. package/.claude/skills/.monomind/sessions/session-1777829336455.json +0 -15
  486. package/.claude/skills/.monomind/sessions/session-1777831614725.json +0 -15
  487. package/.claude/skills/.monomind/sessions/session-1777832095857.json +0 -15
  488. package/.claude/skills/.monomind/sessions/session-1777839814183.json +0 -15
  489. package/.claude/skills/.monomind/sessions/session-1777841847131.json +0 -15
  490. package/.claude/skills/.monomind/sessions/session-1777843309463.json +0 -15
  491. package/.claude/skills/.monomind/sessions/session-1777880867159.json +0 -15
  492. package/.claude/skills/.monomind/sessions/session-1777881884593.json +0 -15
  493. package/.claude/skills/.monomind/sessions/session-1777884090471.json +0 -15
  494. package/.claude/skills/.monomind/sessions/session-1777884808221.json +0 -15
  495. package/.claude/skills/.monomind/sessions/session-1777885672155.json +0 -15
  496. package/.claude/skills/.monomind/sessions/session-1777886852818.json +0 -15
  497. package/.claude/skills/.monomind/sessions/session-1777896532690.json +0 -15
  498. package/.claude/skills/agent-browser-testing/SKILL.md +0 -964
  499. package/.claude/skills/agentic-jujutsu/SKILL.md +0 -645
  500. package/.claude/skills/github-issue-triage/SKILL.md +0 -354
  501. package/.claude/skills/github-repo-recap/SKILL.md +0 -207
  502. package/.claude/skills/hive-mind-advanced/SKILL.md +0 -709
  503. package/.claude/skills/hooks-automation/SKILL.md +0 -1193
  504. package/.claude/skills/mastermind-skills/_agent-select.md +0 -132
  505. package/.claude/skills/mastermind-skills/_delegation.md +0 -83
  506. package/.claude/skills/mastermind-skills/_intake.md +0 -83
  507. package/.claude/skills/mastermind-skills/_protocol.md +0 -404
  508. package/.claude/skills/mastermind-skills/_repeat.md +0 -171
  509. package/.claude/skills/mastermind-skills/access.md +0 -236
  510. package/.claude/skills/mastermind-skills/activity.md +0 -191
  511. package/.claude/skills/mastermind-skills/adapter-manager.md +0 -259
  512. package/.claude/skills/mastermind-skills/adapters.md +0 -204
  513. package/.claude/skills/mastermind-skills/agent-detail.md +0 -242
  514. package/.claude/skills/mastermind-skills/agents.md +0 -178
  515. package/.claude/skills/mastermind-skills/approval-detail.md +0 -259
  516. package/.claude/skills/mastermind-skills/approve.md +0 -188
  517. package/.claude/skills/mastermind-skills/architect.md +0 -862
  518. package/.claude/skills/mastermind-skills/autodev.md +0 -360
  519. package/.claude/skills/mastermind-skills/backup.md +0 -197
  520. package/.claude/skills/mastermind-skills/bootstrap.md +0 -190
  521. package/.claude/skills/mastermind-skills/budgets.md +0 -237
  522. package/.claude/skills/mastermind-skills/build.md +0 -170
  523. package/.claude/skills/mastermind-skills/code-quality-reviewer-prompt.md +0 -60
  524. package/.claude/skills/mastermind-skills/companies.md +0 -256
  525. package/.claude/skills/mastermind-skills/content.md +0 -197
  526. package/.claude/skills/mastermind-skills/costs.md +0 -151
  527. package/.claude/skills/mastermind-skills/createorg.md +0 -862
  528. package/.claude/skills/mastermind-skills/debug.md +0 -232
  529. package/.claude/skills/mastermind-skills/design.md +0 -189
  530. package/.claude/skills/mastermind-skills/diagnose.md +0 -249
  531. package/.claude/skills/mastermind-skills/env.md +0 -198
  532. package/.claude/skills/mastermind-skills/environments.md +0 -250
  533. package/.claude/skills/mastermind-skills/execute.md +0 -104
  534. package/.claude/skills/mastermind-skills/export.md +0 -333
  535. package/.claude/skills/mastermind-skills/finance.md +0 -166
  536. package/.claude/skills/mastermind-skills/finish.md +0 -251
  537. package/.claude/skills/mastermind-skills/goal-detail.md +0 -255
  538. package/.claude/skills/mastermind-skills/goals.md +0 -149
  539. package/.claude/skills/mastermind-skills/heartbeat.md +0 -164
  540. package/.claude/skills/mastermind-skills/idea.md +0 -1142
  541. package/.claude/skills/mastermind-skills/implementer-prompt.md +0 -109
  542. package/.claude/skills/mastermind-skills/import.md +0 -281
  543. package/.claude/skills/mastermind-skills/inbox.md +0 -214
  544. package/.claude/skills/mastermind-skills/instance-settings.md +0 -315
  545. package/.claude/skills/mastermind-skills/instance.md +0 -233
  546. package/.claude/skills/mastermind-skills/invite-landing.md +0 -227
  547. package/.claude/skills/mastermind-skills/invites.md +0 -254
  548. package/.claude/skills/mastermind-skills/issue-detail.md +0 -291
  549. package/.claude/skills/mastermind-skills/issues.md +0 -235
  550. package/.claude/skills/mastermind-skills/join-queue.md +0 -170
  551. package/.claude/skills/mastermind-skills/liveness.md +0 -392
  552. package/.claude/skills/mastermind-skills/marketing.md +0 -228
  553. package/.claude/skills/mastermind-skills/memory.md +0 -321
  554. package/.claude/skills/mastermind-skills/monitor.md +0 -1284
  555. package/.claude/skills/mastermind-skills/monotask.md +0 -350
  556. package/.claude/skills/mastermind-skills/my-issues.md +0 -146
  557. package/.claude/skills/mastermind-skills/new-agent.md +0 -241
  558. package/.claude/skills/mastermind-skills/ops.md +0 -168
  559. package/.claude/skills/mastermind-skills/org-chart.md +0 -209
  560. package/.claude/skills/mastermind-skills/org-settings.md +0 -254
  561. package/.claude/skills/mastermind-skills/orgs.md +0 -98
  562. package/.claude/skills/mastermind-skills/orgstatus.md +0 -194
  563. package/.claude/skills/mastermind-skills/plan-to-tasks.md +0 -136
  564. package/.claude/skills/mastermind-skills/plan.md +0 -198
  565. package/.claude/skills/mastermind-skills/plugin-manager.md +0 -241
  566. package/.claude/skills/mastermind-skills/plugin-settings.md +0 -273
  567. package/.claude/skills/mastermind-skills/plugins.md +0 -190
  568. package/.claude/skills/mastermind-skills/profile.md +0 -187
  569. package/.claude/skills/mastermind-skills/project-detail.md +0 -249
  570. package/.claude/skills/mastermind-skills/project-workspace.md +0 -244
  571. package/.claude/skills/mastermind-skills/projects.md +0 -164
  572. package/.claude/skills/mastermind-skills/receive-review.md +0 -213
  573. package/.claude/skills/mastermind-skills/references/copywriting-frameworks.md +0 -181
  574. package/.claude/skills/mastermind-skills/references/persuasion-psychology.md +0 -158
  575. package/.claude/skills/mastermind-skills/release.md +0 -168
  576. package/.claude/skills/mastermind-skills/research.md +0 -168
  577. package/.claude/skills/mastermind-skills/review.md +0 -233
  578. package/.claude/skills/mastermind-skills/routine-detail.md +0 -253
  579. package/.claude/skills/mastermind-skills/routines.md +0 -203
  580. package/.claude/skills/mastermind-skills/runorg.md +0 -714
  581. package/.claude/skills/mastermind-skills/sales.md +0 -170
  582. package/.claude/skills/mastermind-skills/search.md +0 -186
  583. package/.claude/skills/mastermind-skills/secrets.md +0 -199
  584. package/.claude/skills/mastermind-skills/skill-builder.md +0 -274
  585. package/.claude/skills/mastermind-skills/skills.md +0 -156
  586. package/.claude/skills/mastermind-skills/spec-reviewer-prompt.md +0 -63
  587. package/.claude/skills/mastermind-skills/stoporg.md +0 -138
  588. package/.claude/skills/mastermind-skills/taskdev.md +0 -307
  589. package/.claude/skills/mastermind-skills/tasks.md +0 -149
  590. package/.claude/skills/mastermind-skills/tdd.md +0 -394
  591. package/.claude/skills/mastermind-skills/techport.md +0 -777
  592. package/.claude/skills/mastermind-skills/threads.md +0 -259
  593. package/.claude/skills/mastermind-skills/tree-control.md +0 -250
  594. package/.claude/skills/mastermind-skills/verify.md +0 -196
  595. package/.claude/skills/mastermind-skills/wiki.md +0 -314
  596. package/.claude/skills/mastermind-skills/workspace-detail.md +0 -317
  597. package/.claude/skills/mastermind-skills/workspaces.md +0 -261
  598. package/.claude/skills/mastermind-skills/worktree.md +0 -215
  599. package/.claude/skills/monodesign/SKILL.md +0 -333
  600. package/.claude/skills/monodesign/adapt.md +0 -53
  601. package/.claude/skills/monodesign/agents/monodesign-asset-producer.md +0 -100
  602. package/.claude/skills/monodesign/animate.md +0 -65
  603. package/.claude/skills/monodesign/audit.md +0 -89
  604. package/.claude/skills/monodesign/bolder.md +0 -50
  605. package/.claude/skills/monodesign/clarify.md +0 -64
  606. package/.claude/skills/monodesign/colorize.md +0 -68
  607. package/.claude/skills/monodesign/craft.md +0 -51
  608. package/.claude/skills/monodesign/critique.md +0 -66
  609. package/.claude/skills/monodesign/delight.md +0 -47
  610. package/.claude/skills/monodesign/distill.md +0 -56
  611. package/.claude/skills/monodesign/document.md +0 -83
  612. package/.claude/skills/monodesign/extract.md +0 -74
  613. package/.claude/skills/monodesign/harden.md +0 -65
  614. package/.claude/skills/monodesign/live.md +0 -59
  615. package/.claude/skills/monodesign/onboard.md +0 -50
  616. package/.claude/skills/monodesign/optimize.md +0 -64
  617. package/.claude/skills/monodesign/overdrive.md +0 -56
  618. package/.claude/skills/monodesign/polish.md +0 -68
  619. package/.claude/skills/monodesign/quieter.md +0 -57
  620. package/.claude/skills/monodesign/reference/adapt.md +0 -190
  621. package/.claude/skills/monodesign/reference/animate.md +0 -175
  622. package/.claude/skills/monodesign/reference/antipatterns-catalog.md +0 -359
  623. package/.claude/skills/monodesign/reference/audit.md +0 -133
  624. package/.claude/skills/monodesign/reference/bolder.md +0 -113
  625. package/.claude/skills/monodesign/reference/brand-workflow.md +0 -180
  626. package/.claude/skills/monodesign/reference/brand.md +0 -114
  627. package/.claude/skills/monodesign/reference/clarify.md +0 -174
  628. package/.claude/skills/monodesign/reference/codex.md +0 -107
  629. package/.claude/skills/monodesign/reference/cognitive-load.md +0 -106
  630. package/.claude/skills/monodesign/reference/color-and-contrast.md +0 -105
  631. package/.claude/skills/monodesign/reference/colorize.md +0 -154
  632. package/.claude/skills/monodesign/reference/component-specs.md +0 -260
  633. package/.claude/skills/monodesign/reference/component-states.md +0 -274
  634. package/.claude/skills/monodesign/reference/component-system.md +0 -358
  635. package/.claude/skills/monodesign/reference/copy-formulas.md +0 -160
  636. package/.claude/skills/monodesign/reference/craft.md +0 -196
  637. package/.claude/skills/monodesign/reference/critique.md +0 -213
  638. package/.claude/skills/monodesign/reference/delight.md +0 -302
  639. package/.claude/skills/monodesign/reference/design-principles.md +0 -246
  640. package/.claude/skills/monodesign/reference/distill.md +0 -111
  641. package/.claude/skills/monodesign/reference/document.md +0 -427
  642. package/.claude/skills/monodesign/reference/extract.md +0 -69
  643. package/.claude/skills/monodesign/reference/harden.md +0 -347
  644. package/.claude/skills/monodesign/reference/heuristics-scoring.md +0 -234
  645. package/.claude/skills/monodesign/reference/hooks.md +0 -99
  646. package/.claude/skills/monodesign/reference/image-prompts.md +0 -130
  647. package/.claude/skills/monodesign/reference/interaction-design.md +0 -195
  648. package/.claude/skills/monodesign/reference/layout.md +0 -141
  649. package/.claude/skills/monodesign/reference/live.md +0 -622
  650. package/.claude/skills/monodesign/reference/motion-design.md +0 -109
  651. package/.claude/skills/monodesign/reference/onboard.md +0 -234
  652. package/.claude/skills/monodesign/reference/optimize.md +0 -258
  653. package/.claude/skills/monodesign/reference/overdrive.md +0 -130
  654. package/.claude/skills/monodesign/reference/personas.md +0 -179
  655. package/.claude/skills/monodesign/reference/polish.md +0 -233
  656. package/.claude/skills/monodesign/reference/pre-delivery-checklist.md +0 -108
  657. package/.claude/skills/monodesign/reference/product.md +0 -62
  658. package/.claude/skills/monodesign/reference/quieter.md +0 -99
  659. package/.claude/skills/monodesign/reference/responsive-design.md +0 -114
  660. package/.claude/skills/monodesign/reference/shape.md +0 -151
  661. package/.claude/skills/monodesign/reference/spatial-design.md +0 -100
  662. package/.claude/skills/monodesign/reference/teach.md +0 -156
  663. package/.claude/skills/monodesign/reference/token-architecture.md +0 -222
  664. package/.claude/skills/monodesign/reference/typeset.md +0 -124
  665. package/.claude/skills/monodesign/reference/typography.md +0 -159
  666. package/.claude/skills/monodesign/reference/ux-research.md +0 -143
  667. package/.claude/skills/monodesign/reference/ux-rules.md +0 -211
  668. package/.claude/skills/monodesign/reference/ux-writing.md +0 -107
  669. package/.claude/skills/monodesign/shape.md +0 -71
  670. package/.claude/skills/monodesign/teach.md +0 -69
  671. package/.claude/skills/monodesign/typeset.md +0 -59
  672. package/.claude/skills/monolean/SKILL.md +0 -118
  673. package/.claude/skills/monolean-audit/SKILL.md +0 -41
  674. package/.claude/skills/monolean-debt/SKILL.md +0 -46
  675. package/.claude/skills/monolean-help/SKILL.md +0 -60
  676. package/.claude/skills/monolean-review/SKILL.md +0 -57
  677. package/.claude/skills/monomind/.monomind/registry.json +0 -6
  678. package/.claude/skills/monomind/browse-agentcore.md +0 -115
  679. package/.claude/skills/monomind/browse-electron.md +0 -188
  680. package/.claude/skills/monomind/browse-qa.md +0 -228
  681. package/.claude/skills/monomind/browse-references/authentication.md +0 -161
  682. package/.claude/skills/monomind/browse-references/trust-boundaries.md +0 -40
  683. package/.claude/skills/monomind/browse-references/video-recording.md +0 -83
  684. package/.claude/skills/monomind/browse-slack.md +0 -188
  685. package/.claude/skills/monomind/browse-vercel.md +0 -239
  686. package/.claude/skills/monomind/browse.md +0 -724
  687. package/.claude/skills/monomotion/SKILL.md +0 -145
  688. package/.claude/skills/monomotion/rules/api-control.md +0 -139
  689. package/.claude/skills/monomotion/rules/effects.md +0 -109
  690. package/.claude/skills/monomotion/rules/integration.md +0 -140
  691. package/.claude/skills/monomotion/rules/scroll.md +0 -131
  692. package/.claude/skills/monomotion/rules/sequencing.md +0 -105
  693. package/.claude/skills/monomotion/rules/svg.md +0 -101
  694. package/.claude/skills/monomotion/rules/text.md +0 -119
  695. package/.claude/skills/pair-programming/SKILL.md +0 -1202
  696. package/.claude/skills/performance-analysis/SKILL.md +0 -560
  697. package/.claude/skills/skill-builder/SKILL.md +0 -910
  698. package/.claude/skills/sparc-methodology/SKILL.md +0 -950
  699. package/.claude/skills/specialagent/SKILL.md +0 -208
  700. package/.claude/skills/stop-slop/SKILL.md +0 -67
  701. package/.claude/skills/stop-slop/references/examples.md +0 -61
  702. package/.claude/skills/stop-slop/references/phrases.md +0 -130
  703. package/.claude/skills/stop-slop/references/structures.md +0 -136
  704. package/.claude/skills/swarm-advanced/SKILL.md +0 -937
  705. package/.claude/skills/swarm-orchestration/SKILL.md +0 -179
  706. package/.claude/skills/verification-quality/SKILL.md +0 -674
  707. package/.claude/workflows/feature-dev.yaml +0 -18
  708. package/.claude/workflows/security-audit.yaml +0 -10
  709. package/packages/@monomind/cli/.claude/agents/generated/case-analyst.md +0 -50
  710. package/packages/@monomind/cli/.claude/agents/generated/channel-intelligence-director.md +0 -87
  711. package/packages/@monomind/cli/.claude/agents/generated/chief-growth-officer.md +0 -88
  712. package/packages/@monomind/cli/.claude/agents/generated/churn-analyst.md +0 -53
  713. package/packages/@monomind/cli/.claude/agents/generated/code-reviewer.md +0 -55
  714. package/packages/@monomind/cli/.claude/agents/generated/code-validator.md +0 -57
  715. package/packages/@monomind/cli/.claude/agents/generated/complexity-scanner.md +0 -56
  716. package/packages/@monomind/cli/.claude/agents/generated/content-seo-strategist.md +0 -90
  717. package/packages/@monomind/cli/.claude/agents/generated/copy-editor.md +0 -45
  718. package/packages/@monomind/cli/.claude/agents/generated/court-reporter.md +0 -50
  719. package/packages/@monomind/cli/.claude/agents/generated/defender.md +0 -51
  720. package/packages/@monomind/cli/.claude/agents/generated/devbot-orchestrator.md +0 -58
  721. package/packages/@monomind/cli/.claude/agents/generated/devbot-planner.md +0 -63
  722. package/packages/@monomind/cli/.claude/agents/generated/developer-community-strategist.md +0 -91
  723. package/packages/@monomind/cli/.claude/agents/generated/editor-in-chief.md +0 -45
  724. package/packages/@monomind/cli/.claude/agents/generated/fact-checker.md +0 -45
  725. package/packages/@monomind/cli/.claude/agents/generated/impact-assessor.md +0 -54
  726. package/packages/@monomind/cli/.claude/agents/generated/judge.md +0 -51
  727. package/packages/@monomind/cli/.claude/agents/generated/outreach-partnership-strategist.md +0 -90
  728. package/packages/@monomind/cli/.claude/agents/generated/prosecutor.md +0 -51
  729. package/packages/@monomind/cli/.claude/agents/generated/reporter.md +0 -45
  730. package/packages/@monomind/cli/.claude/agents/generated/social-media-strategist.md +0 -91
  731. package/packages/@monomind/cli/.claude/agents/generated/video-visual-strategist.md +0 -90
  732. package/packages/@monomind/cli/.claude/agents/reengineer-squad/boss.md +0 -113
  733. package/packages/@monomind/cli/.claude/agents/reengineer-squad/critic-architect.md +0 -132
  734. package/packages/@monomind/cli/.claude/agents/reengineer-squad/git-manager.md +0 -145
  735. package/packages/@monomind/cli/.claude/agents/reengineer-squad/idea-generator.md +0 -95
  736. package/packages/@monomind/cli/.claude/agents/reengineer-squad/implementer.md +0 -112
  737. package/packages/@monomind/cli/.claude/agents/reengineer-squad/integration-planner.md +0 -112
  738. package/packages/@monomind/cli/.claude/agents/reengineer-squad/source-analyst.md +0 -103
  739. package/packages/@monomind/cli/.claude/agents/reengineer-squad/target-analyst.md +0 -118
  740. package/packages/@monomind/cli/.claude/agents/reengineer-squad/tester.md +0 -105
  741. package/packages/@monomind/cli/.claude/agents/sparc/architecture.md +0 -453
  742. package/packages/@monomind/cli/.claude/agents/sparc/pseudocode.md +0 -299
  743. package/packages/@monomind/cli/.claude/agents/sparc/refinement.md +0 -504
  744. package/packages/@monomind/cli/.claude/agents/sparc/specification.md +0 -258
  745. package/packages/@monomind/cli/.claude/agents/templates/implementer-sparc-coder.md +0 -231
  746. package/packages/@monomind/cli/.claude/commands/sparc/analyzer.md +0 -35
  747. package/packages/@monomind/cli/.claude/commands/sparc/architect.md +0 -36
  748. package/packages/@monomind/cli/.claude/commands/sparc/ask.md +0 -56
  749. package/packages/@monomind/cli/.claude/commands/sparc/batch-executor.md +0 -37
  750. package/packages/@monomind/cli/.claude/commands/sparc/code.md +0 -48
  751. package/packages/@monomind/cli/.claude/commands/sparc/coder.md +0 -37
  752. package/packages/@monomind/cli/.claude/commands/sparc/debug.md +0 -42
  753. package/packages/@monomind/cli/.claude/commands/sparc/debugger.md +0 -37
  754. package/packages/@monomind/cli/.claude/commands/sparc/designer.md +0 -36
  755. package/packages/@monomind/cli/.claude/commands/sparc/devops.md +0 -68
  756. package/packages/@monomind/cli/.claude/commands/sparc/docs-writer.md +0 -39
  757. package/packages/@monomind/cli/.claude/commands/sparc/documenter.md +0 -37
  758. package/packages/@monomind/cli/.claude/commands/sparc/innovator.md +0 -37
  759. package/packages/@monomind/cli/.claude/commands/sparc/integration.md +0 -42
  760. package/packages/@monomind/cli/.claude/commands/sparc/mcp.md +0 -76
  761. package/packages/@monomind/cli/.claude/commands/sparc/memory-manager.md +0 -57
  762. package/packages/@monomind/cli/.claude/commands/sparc/optimizer.md +0 -37
  763. package/packages/@monomind/cli/.claude/commands/sparc/orchestrator.md +0 -70
  764. package/packages/@monomind/cli/.claude/commands/sparc/post-deployment-monitoring-mode.md +0 -42
  765. package/packages/@monomind/cli/.claude/commands/sparc/refinement-optimization-mode.md +0 -42
  766. package/packages/@monomind/cli/.claude/commands/sparc/researcher.md +0 -37
  767. package/packages/@monomind/cli/.claude/commands/sparc/reviewer.md +0 -37
  768. package/packages/@monomind/cli/.claude/commands/sparc/security-review.md +0 -39
  769. package/packages/@monomind/cli/.claude/commands/sparc/sparc-modes.md +0 -120
  770. package/packages/@monomind/cli/.claude/commands/sparc/sparc.md +0 -71
  771. package/packages/@monomind/cli/.claude/commands/sparc/spec-pseudocode.md +0 -39
  772. package/packages/@monomind/cli/.claude/commands/sparc/supabase-admin.md +0 -301
  773. package/packages/@monomind/cli/.claude/commands/sparc/swarm-coordinator.md +0 -50
  774. package/packages/@monomind/cli/.claude/commands/sparc/tdd.md +0 -37
  775. package/packages/@monomind/cli/.claude/commands/sparc/tester.md +0 -37
  776. package/packages/@monomind/cli/.claude/commands/sparc/tutorial.md +0 -38
  777. package/packages/@monomind/cli/.claude/commands/sparc/workflow-manager.md +0 -37
  778. package/packages/@monomind/cli/.claude/commands/sparc.md +0 -112
  779. package/packages/@monomind/cli/.claude/skills/sparc-methodology/SKILL.md +0 -950
  780. package/packages/@monomind/cli/dist/src/capabilities/enrichment.d.ts +0 -44
  781. package/packages/@monomind/cli/dist/src/capabilities/enrichment.js +0 -141
  782. package/packages/@monomind/cli/dist/src/commands/analyze-boundaries.d.ts +0 -14
  783. package/packages/@monomind/cli/dist/src/commands/analyze-boundaries.js +0 -295
  784. package/packages/@monomind/cli/dist/src/commands/analyze-graph.d.ts +0 -14
  785. package/packages/@monomind/cli/dist/src/commands/analyze-graph.js +0 -304
  786. package/packages/@monomind/cli/dist/src/commands/claims.d.ts +0 -10
  787. package/packages/@monomind/cli/dist/src/commands/claims.js +0 -650
  788. package/packages/@monomind/cli/dist/src/commands/daemon.d.ts +0 -8
  789. package/packages/@monomind/cli/dist/src/commands/daemon.js +0 -681
  790. package/packages/@monomind/cli/dist/src/commands/enrich.d.ts +0 -10
  791. package/packages/@monomind/cli/dist/src/commands/enrich.js +0 -58
  792. package/packages/@monomind/cli/dist/src/commands/issues.d.ts +0 -21
  793. package/packages/@monomind/cli/dist/src/commands/issues.js +0 -575
  794. package/packages/@monomind/cli/dist/src/commands/workflow.d.ts +0 -8
  795. package/packages/@monomind/cli/dist/src/commands/workflow.js +0 -575
  796. package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.d.ts +0 -8
  797. package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.js +0 -717
  798. package/packages/@monomind/cli/dist/src/services/claim-service.d.ts +0 -198
  799. package/packages/@monomind/cli/dist/src/services/claim-service.js +0 -890
  800. package/packages/@monomind/cli/dist/src/services/headless-worker-executor.d.ts +0 -311
  801. package/packages/@monomind/cli/dist/src/services/headless-worker-executor.js +0 -1183
  802. package/packages/@monomind/cli/dist/src/services/worker-daemon.d.ts +0 -230
  803. package/packages/@monomind/cli/dist/src/services/worker-daemon.js +0 -1350
  804. package/packages/@monomind/cli/dist/src/ui/.monomind/capture/active-run.json +0 -1
  805. package/packages/@monomind/guidance/README.md +0 -87
  806. package/packages/@monomind/guidance/dist/adversarial.d.ts +0 -284
  807. package/packages/@monomind/guidance/dist/adversarial.js +0 -572
  808. package/packages/@monomind/guidance/dist/analyzer.d.ts +0 -530
  809. package/packages/@monomind/guidance/dist/analyzer.js +0 -2518
  810. package/packages/@monomind/guidance/dist/artifacts.d.ts +0 -283
  811. package/packages/@monomind/guidance/dist/artifacts.js +0 -356
  812. package/packages/@monomind/guidance/dist/authority.d.ts +0 -290
  813. package/packages/@monomind/guidance/dist/authority.js +0 -558
  814. package/packages/@monomind/guidance/dist/capabilities.d.ts +0 -209
  815. package/packages/@monomind/guidance/dist/capabilities.js +0 -485
  816. package/packages/@monomind/guidance/dist/coherence.d.ts +0 -233
  817. package/packages/@monomind/guidance/dist/coherence.js +0 -378
  818. package/packages/@monomind/guidance/dist/compiler.d.ts +0 -87
  819. package/packages/@monomind/guidance/dist/compiler.js +0 -425
  820. package/packages/@monomind/guidance/dist/conformance-kit.d.ts +0 -225
  821. package/packages/@monomind/guidance/dist/conformance-kit.js +0 -629
  822. package/packages/@monomind/guidance/dist/continue-gate.d.ts +0 -214
  823. package/packages/@monomind/guidance/dist/continue-gate.js +0 -353
  824. package/packages/@monomind/guidance/dist/crypto-utils.d.ts +0 -17
  825. package/packages/@monomind/guidance/dist/crypto-utils.js +0 -24
  826. package/packages/@monomind/guidance/dist/evolution.d.ts +0 -282
  827. package/packages/@monomind/guidance/dist/evolution.js +0 -500
  828. package/packages/@monomind/guidance/dist/gates.d.ts +0 -79
  829. package/packages/@monomind/guidance/dist/gates.js +0 -302
  830. package/packages/@monomind/guidance/dist/gateway.d.ts +0 -206
  831. package/packages/@monomind/guidance/dist/gateway.js +0 -452
  832. package/packages/@monomind/guidance/dist/generators.d.ts +0 -153
  833. package/packages/@monomind/guidance/dist/generators.js +0 -682
  834. package/packages/@monomind/guidance/dist/headless.d.ts +0 -177
  835. package/packages/@monomind/guidance/dist/headless.js +0 -342
  836. package/packages/@monomind/guidance/dist/hooks.d.ts +0 -109
  837. package/packages/@monomind/guidance/dist/hooks.js +0 -347
  838. package/packages/@monomind/guidance/dist/index.d.ts +0 -203
  839. package/packages/@monomind/guidance/dist/index.js +0 -320
  840. package/packages/@monomind/guidance/dist/ledger.d.ts +0 -162
  841. package/packages/@monomind/guidance/dist/ledger.js +0 -375
  842. package/packages/@monomind/guidance/dist/manifest-validator.d.ts +0 -289
  843. package/packages/@monomind/guidance/dist/manifest-validator.js +0 -838
  844. package/packages/@monomind/guidance/dist/memory-gate.d.ts +0 -222
  845. package/packages/@monomind/guidance/dist/memory-gate.js +0 -382
  846. package/packages/@monomind/guidance/dist/meta-governance.d.ts +0 -265
  847. package/packages/@monomind/guidance/dist/meta-governance.js +0 -348
  848. package/packages/@monomind/guidance/dist/optimizer.d.ts +0 -104
  849. package/packages/@monomind/guidance/dist/optimizer.js +0 -329
  850. package/packages/@monomind/guidance/dist/persistence.d.ts +0 -189
  851. package/packages/@monomind/guidance/dist/persistence.js +0 -464
  852. package/packages/@monomind/guidance/dist/proof.d.ts +0 -185
  853. package/packages/@monomind/guidance/dist/proof.js +0 -238
  854. package/packages/@monomind/guidance/dist/retriever.d.ts +0 -116
  855. package/packages/@monomind/guidance/dist/retriever.js +0 -394
  856. package/packages/@monomind/guidance/dist/ruvbot-integration.d.ts +0 -370
  857. package/packages/@monomind/guidance/dist/ruvbot-integration.js +0 -738
  858. package/packages/@monomind/guidance/dist/temporal.d.ts +0 -428
  859. package/packages/@monomind/guidance/dist/temporal.js +0 -660
  860. package/packages/@monomind/guidance/dist/trust.d.ts +0 -283
  861. package/packages/@monomind/guidance/dist/trust.js +0 -474
  862. package/packages/@monomind/guidance/dist/truth-anchors.d.ts +0 -276
  863. package/packages/@monomind/guidance/dist/truth-anchors.js +0 -488
  864. package/packages/@monomind/guidance/dist/types.d.ts +0 -378
  865. package/packages/@monomind/guidance/dist/types.js +0 -10
  866. package/packages/@monomind/guidance/dist/uncertainty.d.ts +0 -372
  867. package/packages/@monomind/guidance/dist/uncertainty.js +0 -619
  868. package/packages/@monomind/guidance/dist/wasm-kernel.d.ts +0 -48
  869. package/packages/@monomind/guidance/dist/wasm-kernel.js +0 -158
  870. package/packages/@monomind/guidance/package.json +0 -119
@@ -1,204 +1,112 @@
1
1
  /**
2
- * Pattern Store MCP Tools
2
+ * Pattern Store MCP Tools — "neural" namespace (legacy name, kept for API compat)
3
3
  *
4
- * Embed text as vectors, store patterns, search by cosine similarity.
5
- * Uses monovector ONNX embeddings when available, deterministic hash fallback otherwise.
6
- * Tools are registered under the "neural" namespace for backwards compatibility.
4
+ * These tools embed text as vectors and search by cosine similarity.
5
+ * No ML training, gradient descent, or neural network inference occurs.
6
+ * The "train" tool embeds and stores; the "predict" tool finds similar stored
7
+ * patterns. Embeddings come from the shared memory/embedding-operations.ts
8
+ * pipeline (LanceDB bridge -> ONNX -> deterministic hash fallback).
9
+ *
10
+ * All pattern storage is delegated to intelligence.ts's LocalReasoningBank
11
+ * (single source of truth for patterns.json). No separate models.json store.
7
12
  */
8
- import { getProjectCwd } from './types.js';
9
- import { existsSync, readFileSync, writeFileSync, renameSync, mkdirSync, statSync } from 'node:fs';
10
- import { join } from 'node:path';
11
- const MAX_NEURAL_STORE_BYTES = 50 * 1024 * 1024; // 50 MB
12
- const NEURAL_RESERVED_KEYS = new Set(['__proto__', 'constructor', 'prototype']);
13
- // Embeddings via monovector ONNX when available; deterministic hash fallback otherwise.
14
- let realEmbeddings = null;
15
- let embeddingServiceName = 'none';
16
- try {
17
- const monovector = await import('monovector').catch(() => null);
18
- if (monovector?.getOptimizedOnnxEmbedder) {
19
- await monovector.initOnnxEmbedder?.();
20
- const onnxEmb = monovector.getOptimizedOnnxEmbedder();
21
- if (onnxEmb?.embed) {
22
- const probe = await onnxEmb.embed('test');
23
- const hasNonZero = ArrayBuffer.isView(probe) || Array.isArray(probe)
24
- ? [...probe].some((v) => v !== 0)
25
- : false;
26
- if (probe && probe.length > 0 && hasNonZero) {
27
- realEmbeddings = { embed: async (text) => Array.from(await onnxEmb.embed(text)) };
28
- embeddingServiceName = 'monovector/onnx';
29
- }
30
- }
31
- }
32
- }
33
- catch {
34
- // No ONNX embedding provider available, will use hash fallback
35
- }
36
- // Storage paths
37
- const STORAGE_DIR = '.monomind';
38
- const NEURAL_DIR = 'neural';
39
- const MODELS_FILE = 'models.json';
40
- const PATTERNS_FILE = 'patterns.json';
41
- function getNeuralDir() {
42
- return join(getProjectCwd(), STORAGE_DIR, NEURAL_DIR);
43
- }
44
- function getNeuralPath() {
45
- return join(getNeuralDir(), MODELS_FILE);
46
- }
47
- function ensureNeuralDir() {
48
- const dir = getNeuralDir();
49
- if (!existsSync(dir)) {
50
- mkdirSync(dir, { recursive: true });
51
- }
52
- }
53
- function loadNeuralStore() {
13
+ const RESERVED_KEYS = new Set(['__proto__', 'constructor', 'prototype']);
14
+ const MAX_MODEL_ID_LEN = 256;
15
+ const MAX_PATTERNS = 10000;
16
+ const MAX_TRAINING_ENTRIES = 1000;
17
+ const MAX_TEXT_LENGTH = 64 * 1024;
18
+ const MAX_SEARCH_QUERY_LENGTH = 16 * 1024;
19
+ // Embeddings: delegate to the shared embedding pipeline (LanceDB bridge -> ONNX ->
20
+ // deterministic hash fallback) in memory/embedding-operations.ts.
21
+ let lastEmbeddingModel = 'unknown';
22
+ /**
23
+ * Generate embedding via the shared pipeline (LanceDB bridge -> ONNX -> deterministic
24
+ * hash), same one used by CLI `neural` commands and memory search. Falls back to a
25
+ * local deterministic hash only if the shared module fails to load entirely.
26
+ */
27
+ async function generateEmbedding(text, dims = 384) {
28
+ if (!text)
29
+ return new Array(dims).fill(0);
54
30
  try {
55
- const path = getNeuralPath();
56
- if (existsSync(path)) {
57
- if (statSync(path).size > MAX_NEURAL_STORE_BYTES) {
58
- return { models: {}, patterns: {}, version: '3.0.0' };
59
- }
60
- const raw = JSON.parse(readFileSync(path, 'utf-8'));
61
- // Strip proto-polluting keys from top-level containers
62
- const models = {};
63
- for (const [k, v] of Object.entries(raw.models ?? {})) {
64
- if (!NEURAL_RESERVED_KEYS.has(k))
65
- models[k] = v;
66
- }
67
- const patterns = {};
68
- for (const [k, v] of Object.entries(raw.patterns ?? {})) {
69
- if (!NEURAL_RESERVED_KEYS.has(k))
70
- patterns[k] = v;
71
- }
72
- return {
73
- models: models,
74
- patterns: patterns,
75
- version: typeof raw.version === 'string' ? raw.version : '3.0.0',
76
- };
77
- }
31
+ const { generateEmbedding: sharedGenerateEmbedding } = await import('../memory/embedding-operations.js');
32
+ const result = await sharedGenerateEmbedding(text);
33
+ lastEmbeddingModel = result.model;
34
+ return result.embedding;
78
35
  }
79
36
  catch {
80
- // Return empty store
81
- }
82
- return { models: {}, patterns: {}, version: '3.0.0' };
83
- }
84
- function saveNeuralStore(store) {
85
- ensureNeuralDir();
86
- const dest = getNeuralPath();
87
- const tmp = `${dest}.${process.pid}.${Date.now()}.tmp`;
88
- writeFileSync(tmp, JSON.stringify(store, null, 2), 'utf-8');
89
- renameSync(tmp, dest);
90
- }
91
- // Generate embedding - uses real ML embeddings if available, falls back to deterministic hash
92
- async function generateEmbedding(text, dims = 384) {
93
- // If real embeddings available and text provided, use them
94
- if (realEmbeddings && text) {
95
- try {
96
- return await realEmbeddings.embed(text);
97
- }
98
- catch {
99
- // Fall back to hash-based
100
- }
101
- }
102
- // Hash-based deterministic embedding (better than pure random for consistency)
103
- if (text) {
104
- const hash = text.split('').reduce((acc, char, i) => {
105
- return acc + char.charCodeAt(0) * (i + 1);
106
- }, 0);
107
- // Use hash to seed a deterministic embedding
37
+ // memory/embedding-operations.js unavailable — deterministic hash fallback
38
+ lastEmbeddingModel = 'hash-fallback';
39
+ const hash = text.split('').reduce((acc, char, i) => acc + char.charCodeAt(0) * (i + 1), 0);
108
40
  const embedding = [];
109
41
  let seed = hash;
110
42
  for (let i = 0; i < dims; i++) {
111
- // Simple LCG random with seed
112
43
  seed = (seed * 1103515245 + 12345) & 0x7fffffff;
113
44
  embedding.push((seed / 0x7fffffff) * 2 - 1);
114
45
  }
115
46
  return embedding;
116
47
  }
117
- // No text provided — return zero vector (callers should always provide text)
118
- return new Array(dims).fill(0);
119
48
  }
120
- // Cosine similarity for pattern search
121
- function cosineSimilarity(a, b) {
122
- if (a.length !== b.length) {
123
- throw new Error(`Embedding dimension mismatch: ${a.length} vs ${b.length}. Ensure all embeddings use the same provider and dims.`);
124
- }
125
- let dotProduct = 0;
126
- let normA = 0;
127
- let normB = 0;
128
- for (let i = 0; i < a.length; i++) {
129
- dotProduct += a[i] * b[i];
130
- normA += a[i] * a[i];
131
- normB += b[i] * b[i];
132
- }
133
- return dotProduct / (Math.sqrt(normA) * Math.sqrt(normB) || 1);
49
+ /** Truncate and validate a modelId string */
50
+ function sanitizeModelId(raw) {
51
+ if (typeof raw !== 'string')
52
+ return null;
53
+ const id = raw.length > MAX_MODEL_ID_LEN ? raw.slice(0, MAX_MODEL_ID_LEN) : raw;
54
+ if (RESERVED_KEYS.has(id))
55
+ return null;
56
+ return id;
134
57
  }
135
58
  export const neuralTools = [
136
59
  {
137
60
  name: 'neural_train',
138
- description: 'Embed and store patterns for similarity search',
61
+ description: 'Embed text as vectors and store as named patterns for later similarity search (no ML training occurs)',
139
62
  category: 'neural',
140
63
  inputSchema: {
141
64
  type: 'object',
142
65
  properties: {
143
66
  modelId: { type: 'string', description: 'Store ID (groups related patterns)' },
144
67
  modelType: { type: 'string', enum: ['pattern', 'embedding'], description: 'Store type' },
145
- epochs: { type: 'number', description: 'Ignored (kept for backwards compatibility)' },
146
- learningRate: { type: 'number', description: 'Ignored (kept for backwards compatibility)' },
68
+ epochs: { type: 'number', description: 'Deprecated ignored. Patterns are embedded and stored, not trained.' },
69
+ learningRate: { type: 'number', description: 'Deprecated ignored. No gradient-based training occurs.' },
147
70
  data: { type: 'object', description: 'Data to embed and store (array of strings or {text/content/label} objects)' },
148
71
  },
149
72
  required: ['modelType'],
150
73
  },
151
74
  handler: async (input) => {
152
- const store = loadNeuralStore();
153
- // Cap modelId to prevent DoS via oversized object keys written to the neural store JSON.
154
- const MAX_MODEL_ID_LEN = 256;
155
75
  const rawModelId = input.modelId || `model-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`;
156
- const modelId = typeof rawModelId === 'string' && rawModelId.length > MAX_MODEL_ID_LEN
157
- ? rawModelId.slice(0, MAX_MODEL_ID_LEN)
158
- : rawModelId;
159
- const RESERVED_KEYS = new Set(['__proto__', 'constructor', 'prototype']);
160
- if (RESERVED_KEYS.has(modelId)) {
76
+ const modelId = sanitizeModelId(rawModelId);
77
+ if (modelId === null) {
161
78
  return { success: false, error: 'Invalid modelId' };
162
79
  }
163
- const MAX_PATTERNS = 10000;
164
- if (Object.keys(store.patterns ?? {}).length >= MAX_PATTERNS) {
165
- return { success: false, error: `Pattern store full (max ${MAX_PATTERNS}). Run neural_compress first.` };
166
- }
167
- const MAX_MODELS = 100;
168
- if (Object.keys(store.models ?? {}).length >= MAX_MODELS) {
169
- return { success: false, error: `Model store full (max ${MAX_MODELS}). Delete old models first.` };
170
- }
171
80
  const VALID_MODEL_TYPES = new Set(['pattern', 'embedding']);
172
81
  const rawModelType = input.modelType;
173
82
  if (!rawModelType || !VALID_MODEL_TYPES.has(rawModelType)) {
174
83
  return { success: false, error: `Invalid modelType "${rawModelType}". Must be one of: pattern, embedding` };
175
84
  }
176
85
  const modelType = rawModelType;
177
- const epochs = 1;
178
- const model = {
179
- id: modelId,
180
- name: `${modelType}-store`,
181
- type: modelType,
182
- status: 'indexing',
183
- patternsStored: 0,
184
- epochs,
185
- config: {},
186
- };
187
- store.models[modelId] = model;
188
- saveNeuralStore(store);
189
- // Real training: embed training data and store as searchable patterns.
190
- // Cap input array length and re-check the pattern cap inside the loop
191
- // the pre-loop check at line 199 alone allowed an attacker to bypass
192
- // MAX_PATTERNS by passing a 100k-entry array.
193
- const MAX_TRAINING_ENTRIES = 1000;
194
- const MAX_TEXT_LENGTH = 64 * 1024;
86
+ // Initialize intelligence system (single source of truth)
87
+ const { initializeIntelligence, getReasoningBank, getAllPatterns, flushPatterns } = await import('../memory/intelligence.js');
88
+ const init = await initializeIntelligence();
89
+ if (!init.success) {
90
+ return { success: false, error: 'Failed to initialize intelligence system' };
91
+ }
92
+ const bank = getReasoningBank();
93
+ if (!bank) {
94
+ return { success: false, error: 'ReasoningBank not available' };
95
+ }
96
+ // Check pattern capacity
97
+ const existingPatterns = await getAllPatterns();
98
+ if (existingPatterns.length >= MAX_PATTERNS) {
99
+ return { success: false, error: `Pattern store full (max ${MAX_PATTERNS}). Run neural_compress first.` };
100
+ }
195
101
  const trainingData = input.data;
196
102
  let patternsStored = 0;
197
103
  if (trainingData) {
198
104
  const rawEntries = Array.isArray(trainingData) ? trainingData : [trainingData];
199
105
  const entries = rawEntries.slice(0, MAX_TRAINING_ENTRIES);
200
106
  for (let i = 0; i < entries.length; i++) {
201
- if (Object.keys(store.patterns ?? {}).length >= MAX_PATTERNS)
107
+ // Re-check capacity inside loop to prevent bypass via large arrays
108
+ const currentPatterns = await getAllPatterns();
109
+ if (currentPatterns.length >= MAX_PATTERNS)
202
110
  break;
203
111
  const entry = entries[i];
204
112
  let text = typeof entry === 'string' ? entry
@@ -212,74 +120,37 @@ export const neuralTools = [
212
120
  text = text.slice(0, MAX_TEXT_LENGTH);
213
121
  const embedding = await generateEmbedding(text, 384);
214
122
  const patternId = `${modelId}-train-${i}`;
215
- store.patterns[patternId] = {
123
+ bank.store({
216
124
  id: patternId,
217
- name: typeof entry === 'object' && entry !== null && 'label' in entry
218
- ? String(entry.label) : text.slice(0, 100),
219
125
  type: modelType,
220
126
  embedding,
221
- metadata: { modelId, epoch: epochs, index: i, raw: entry },
222
- createdAt: new Date().toISOString(),
223
- usageCount: 0,
224
- };
225
- patternsStored++;
226
- }
227
- }
228
- model.status = 'ready';
229
- model.patternsStored = patternsStored;
230
- model.trainedAt = new Date().toISOString();
231
- saveNeuralStore(store);
232
- // Mirror patterns to patterns.json so CLI commands (neural patterns list,
233
- // neural predict) can find patterns trained via MCP and vice versa.
234
- if (patternsStored > 0) {
235
- try {
236
- const patternsPath = join(getNeuralDir(), PATTERNS_FILE);
237
- let existing = [];
238
- if (existsSync(patternsPath) && statSync(patternsPath).size <= MAX_NEURAL_STORE_BYTES) {
239
- const raw = readFileSync(patternsPath, 'utf-8');
240
- const parsed = JSON.parse(raw);
241
- if (Array.isArray(parsed))
242
- existing = parsed;
243
- }
244
- const existingIds = new Set(existing.map(p => p['id']));
245
- const newEntries = Object.values(store.patterns)
246
- .filter(p => p.id.startsWith(modelId) && !existingIds.has(p.id))
247
- .map(p => ({
248
- id: p.id,
249
- type: p.type,
250
- content: p.name,
127
+ content: typeof entry === 'object' && entry !== null && 'label' in entry
128
+ ? String(entry.label) : text.slice(0, 100),
251
129
  confidence: 0.8,
252
- usageCount: 0,
253
- embedding: p.embedding,
254
- createdAt: p.createdAt,
255
- }));
256
- if (newEntries.length > 0) {
257
- const merged = [...existing, ...newEntries];
258
- const tmp = `${patternsPath}.${process.pid}.${Date.now()}.tmp`;
259
- writeFileSync(tmp, JSON.stringify(merged, null, 2), 'utf-8');
260
- renameSync(tmp, patternsPath);
261
- }
262
- }
263
- catch {
264
- // Mirror is best-effort; don't fail the train operation
130
+ metadata: { modelId, index: i, raw: entry },
131
+ });
132
+ patternsStored++;
265
133
  }
266
134
  }
135
+ // Flush immediately to persist
136
+ flushPatterns();
137
+ const totalPatterns = (await getAllPatterns()).length;
267
138
  return {
268
139
  success: true,
269
- _realEmbedding: !!realEmbeddings,
140
+ _realEmbedding: lastEmbeddingModel !== 'hash-fallback',
270
141
  modelId,
271
142
  type: modelType,
272
- status: model.status,
143
+ status: 'ready',
273
144
  patternsStored,
274
- totalPatterns: Object.keys(store.patterns).length,
275
- epochs,
276
- trainedAt: model.trainedAt,
145
+ totalPatterns,
146
+ epochs: 1,
147
+ trainedAt: new Date().toISOString(),
277
148
  };
278
149
  },
279
150
  },
280
151
  {
281
152
  name: 'neural_predict',
282
- description: 'Find similar patterns by cosine similarity',
153
+ description: 'Find stored patterns most similar to input text via cosine similarity (not ML prediction)',
283
154
  category: 'neural',
284
155
  inputSchema: {
285
156
  type: 'object',
@@ -291,86 +162,38 @@ export const neuralTools = [
291
162
  required: ['input'],
292
163
  },
293
164
  handler: async (input) => {
294
- const store = loadNeuralStore();
295
- // Cap modelId to prevent O(n) hash/compare cost on absurdly long keys.
296
- const MAX_MODEL_ID_LEN_PRED = 256;
297
165
  const rawModelIdPred = input.modelId;
298
- const modelId = typeof rawModelIdPred === 'string' && rawModelIdPred.length > MAX_MODEL_ID_LEN_PRED
299
- ? rawModelIdPred.slice(0, MAX_MODEL_ID_LEN_PRED)
300
- : rawModelIdPred;
301
- const inputText = typeof input.input === 'string' ? input.input.slice(0, 16 * 1024) : '';
302
- const topK = Math.max(1, Math.min(input.topK || 3, 50));
303
- const RESERVED_KEYS_PRED = new Set(['__proto__', 'constructor', 'prototype']);
304
- if (modelId && (RESERVED_KEYS_PRED.has(modelId) || typeof modelId !== 'string')) {
305
- return { success: false, error: 'Invalid modelId' };
306
- }
307
- // Find model or use default
308
- const model = modelId
309
- ? (Object.hasOwn(store.models, modelId) ? store.models[modelId] : undefined)
310
- : Object.values(store.models).find(m => m.status === 'ready');
311
- if (model && model.status !== 'ready') {
312
- return { success: false, error: 'Model not ready' };
166
+ if (rawModelIdPred) {
167
+ const modelId = sanitizeModelId(rawModelIdPred);
168
+ if (modelId === null) {
169
+ return { success: false, error: 'Invalid modelId' };
170
+ }
313
171
  }
314
- // Generate real embedding for the input
172
+ const inputText = typeof input.input === 'string' ? input.input.slice(0, MAX_SEARCH_QUERY_LENGTH) : '';
173
+ const topK = Math.max(1, Math.min(input.topK || 3, 50));
174
+ const { initializeIntelligence, findSimilarPatterns } = await import('../memory/intelligence.js');
175
+ await initializeIntelligence();
315
176
  const startTime = performance.now();
316
177
  const embedding = await generateEmbedding(inputText, 384);
178
+ // Use intelligence.ts findSimilarPatterns which handles embedding + search
179
+ const results = await findSimilarPatterns(inputText, {
180
+ k: topK,
181
+ threshold: 0.1,
182
+ });
317
183
  const latency = Math.round(performance.now() - startTime);
318
- // Search stored patterns via cosine similarity.
319
- // Merge MCP models.json patterns with CLI patterns.json.
320
- const MAX_SCAN = 10000;
321
- const EARLY_EXIT_THRESHOLD = 0.1;
322
- const mcpPatterns = Object.values(store.patterns);
323
- const cliPatternsRaw = [];
324
- try {
325
- const cliPath = join(getNeuralDir(), PATTERNS_FILE);
326
- if (existsSync(cliPath) && statSync(cliPath).size <= MAX_NEURAL_STORE_BYTES) {
327
- const raw = JSON.parse(readFileSync(cliPath, 'utf-8'));
328
- if (Array.isArray(raw)) {
329
- const mcpIds = new Set(mcpPatterns.map(p => p.id));
330
- for (const p of raw) {
331
- if (p?.id && !mcpIds.has(p.id) && Array.isArray(p.embedding)) {
332
- cliPatternsRaw.push(p);
333
- }
334
- }
335
- }
336
- }
337
- }
338
- catch { /* best-effort */ }
339
- const cliMapped = cliPatternsRaw.map(p => ({
340
- id: p.id ?? '',
341
- name: p.content ?? p.name ?? p.type ?? '',
342
- type: p.type ?? 'general',
343
- embedding: p.embedding ?? [],
344
- metadata: {},
345
- createdAt: new Date().toISOString(),
346
- usageCount: 0,
184
+ const predictions = results.map(r => ({
185
+ label: r.content || r.type || r.id,
186
+ confidence: r.similarity ?? r.confidence,
187
+ patternId: r.id,
347
188
  }));
348
- const storedPatterns = [...mcpPatterns, ...cliMapped].slice(0, MAX_SCAN);
349
- let predictions;
350
- if (storedPatterns.length > 0) {
351
- const scored = [];
352
- for (const p of storedPatterns) {
353
- if (!Array.isArray(p.embedding) || p.embedding.length !== embedding.length)
354
- continue;
355
- const conf = Math.max(0, cosineSimilarity(embedding, p.embedding));
356
- if (conf < EARLY_EXIT_THRESHOLD)
357
- continue;
358
- scored.push({ label: p.name || p.type || p.id, confidence: conf, patternId: p.id });
359
- }
360
- predictions = scored.sort((a, b) => b.confidence - a.confidence).slice(0, topK);
361
- }
362
- else {
363
- // No patterns stored — no predictions possible
364
- predictions = [];
365
- }
366
189
  return {
367
190
  success: true,
368
- _realEmbedding: !!realEmbeddings,
369
- _hasStoredPatterns: storedPatterns.length > 0,
370
- modelId: model?.id || 'default',
191
+ _realEmbedding: lastEmbeddingModel !== 'hash-fallback',
192
+ _hasStoredPatterns: results.length > 0,
193
+ modelId: rawModelIdPred || 'default',
371
194
  input: inputText,
372
195
  predictions,
373
- embedding: embedding.slice(0, 8), // Preview of embedding
196
+ embedding: embedding.slice(0, 8),
374
197
  embeddingDims: embedding.length,
375
198
  latency,
376
199
  };
@@ -392,116 +215,118 @@ export const neuralTools = [
392
215
  },
393
216
  },
394
217
  handler: async (input) => {
395
- const store = loadNeuralStore();
396
218
  const action = input.action || 'list';
219
+ const { initializeIntelligence, getAllPatterns, getPatternsByType, getReasoningBank, findSimilarPatterns, deletePattern, flushPatterns } = await import('../memory/intelligence.js');
220
+ await initializeIntelligence();
397
221
  if (action === 'list') {
398
- const patterns = Object.values(store.patterns);
399
222
  const typeFilter = input.type;
400
- const filtered = typeFilter ? patterns.filter(p => p.type === typeFilter) : patterns;
223
+ const patterns = typeFilter
224
+ ? await getPatternsByType(typeFilter)
225
+ : await getAllPatterns();
401
226
  return {
402
- patterns: filtered.map(p => ({
227
+ patterns: patterns.map(p => ({
403
228
  id: p.id,
404
- name: p.name,
229
+ name: p.content,
405
230
  type: p.type,
406
231
  usageCount: p.usageCount,
407
- createdAt: p.createdAt,
232
+ createdAt: typeof p.createdAt === 'number' ? new Date(p.createdAt).toISOString() : p.createdAt,
408
233
  })),
409
- total: filtered.length,
234
+ total: patterns.length,
410
235
  };
411
236
  }
412
237
  if (action === 'get') {
413
238
  const patternId = input.patternId;
414
- if (!patternId || NEURAL_RESERVED_KEYS.has(patternId)) {
239
+ if (!patternId || RESERVED_KEYS.has(patternId)) {
415
240
  return { success: false, error: 'Invalid patternId' };
416
241
  }
417
- const pattern = Object.hasOwn(store.patterns, patternId) ? store.patterns[patternId] : undefined;
242
+ const bank = getReasoningBank();
243
+ if (!bank) {
244
+ return { success: false, error: 'ReasoningBank not available' };
245
+ }
246
+ const pattern = bank.get(patternId);
418
247
  if (!pattern) {
419
248
  return { success: false, error: 'Pattern not found' };
420
249
  }
421
- return { success: true, pattern };
250
+ return {
251
+ success: true,
252
+ pattern: {
253
+ id: pattern.id,
254
+ name: pattern.content,
255
+ type: pattern.type,
256
+ embedding: pattern.embedding,
257
+ metadata: pattern.metadata ?? {},
258
+ createdAt: new Date(pattern.createdAt).toISOString(),
259
+ usageCount: pattern.usageCount,
260
+ },
261
+ };
422
262
  }
423
263
  if (action === 'store') {
424
- const MAX_PATTERNS = 10000;
425
- if (Object.keys(store.patterns ?? {}).length >= MAX_PATTERNS) {
264
+ const allPatterns = await getAllPatterns();
265
+ if (allPatterns.length >= MAX_PATTERNS) {
426
266
  return { success: false, error: `Pattern store full (max ${MAX_PATTERNS}). Run neural_compress first.` };
427
267
  }
428
- const patternId = `pattern-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`;
429
- // Cap name length to prevent DoS in generateEmbedding (hash path is O(n))
430
- const MAX_PATTERN_NAME_LENGTH = 16 * 1024; // 16 KB
268
+ const MAX_PATTERN_NAME_LENGTH = 16 * 1024;
431
269
  const rawPatternName = input.name || 'Unnamed pattern';
432
270
  const patternName = typeof rawPatternName === 'string' && rawPatternName.length > MAX_PATTERN_NAME_LENGTH
433
271
  ? rawPatternName.slice(0, MAX_PATTERN_NAME_LENGTH)
434
272
  : rawPatternName;
435
- // Generate embedding from pattern name/content
436
273
  const embedding = await generateEmbedding(patternName, 384);
437
- const pattern = {
274
+ const patternId = `pattern-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`;
275
+ const patternType = input.type || 'general';
276
+ const bank = getReasoningBank();
277
+ if (!bank) {
278
+ return { success: false, error: 'ReasoningBank not available' };
279
+ }
280
+ bank.store({
438
281
  id: patternId,
439
- name: patternName,
440
- type: input.type || 'general',
282
+ type: patternType,
441
283
  embedding,
284
+ content: patternName,
285
+ confidence: 0.8,
442
286
  metadata: input.data || {},
443
- createdAt: new Date().toISOString(),
444
- usageCount: 0,
445
- };
446
- store.patterns[patternId] = pattern;
447
- saveNeuralStore(store);
287
+ });
288
+ flushPatterns();
448
289
  return {
449
290
  success: true,
450
- _realEmbedding: !!realEmbeddings,
291
+ _realEmbedding: lastEmbeddingModel !== 'hash-fallback',
451
292
  patternId,
452
- name: pattern.name,
453
- type: pattern.type,
293
+ name: patternName,
294
+ type: patternType,
454
295
  embeddingDims: embedding.length,
455
- createdAt: pattern.createdAt,
296
+ createdAt: new Date().toISOString(),
456
297
  };
457
298
  }
458
299
  if (action === 'search') {
459
- // Cap query length to prevent DoS in generateEmbedding (hash path is O(n))
460
- const MAX_SEARCH_QUERY_LENGTH = 16 * 1024; // 16 KB — matches neural_predict cap
461
300
  const rawQuery = input.query;
462
301
  const query = typeof rawQuery === 'string' && rawQuery.length > MAX_SEARCH_QUERY_LENGTH
463
302
  ? rawQuery.slice(0, MAX_SEARCH_QUERY_LENGTH)
464
303
  : rawQuery;
465
- // Generate query embedding for real similarity search
466
- const queryEmbedding = await generateEmbedding(query, 384);
467
- // Calculate REAL cosine similarity against stored patterns
468
- const results = Object.values(store.patterns)
469
- .map(p => ({
470
- ...p,
471
- similarity: cosineSimilarity(queryEmbedding, p.embedding),
472
- }))
473
- .sort((a, b) => b.similarity - a.similarity)
474
- .slice(0, 10);
475
- // Increment usageCount so prune can track retrieval frequency
476
- for (const r of results) {
477
- if (Object.hasOwn(store.patterns, r.id)) {
478
- store.patterns[r.id].usageCount = (store.patterns[r.id].usageCount || 0) + 1;
479
- }
480
- }
481
- saveNeuralStore(store);
304
+ const results = await findSimilarPatterns(query || '', {
305
+ k: 10,
306
+ threshold: 0.1,
307
+ });
482
308
  return {
483
309
  _realSimilarity: true,
484
- _realEmbedding: !!realEmbeddings,
310
+ _realEmbedding: lastEmbeddingModel !== 'hash-fallback',
485
311
  query,
486
312
  results: results.map(r => ({
487
313
  id: r.id,
488
- name: r.name,
314
+ name: r.content,
489
315
  type: r.type,
490
- similarity: r.similarity,
316
+ similarity: r.similarity ?? r.confidence,
491
317
  })),
492
318
  total: results.length,
493
319
  };
494
320
  }
495
321
  if (action === 'delete') {
496
322
  const patternId = input.patternId;
497
- if (!patternId || NEURAL_RESERVED_KEYS.has(patternId)) {
323
+ if (!patternId || RESERVED_KEYS.has(patternId)) {
498
324
  return { success: false, error: 'Invalid patternId' };
499
325
  }
500
- if (!Object.hasOwn(store.patterns, patternId)) {
326
+ const deleted = await deletePattern(patternId);
327
+ if (!deleted) {
501
328
  return { success: false, error: 'Pattern not found' };
502
329
  }
503
- delete store.patterns[patternId];
504
- saveNeuralStore(store);
505
330
  return { success: true, deleted: patternId };
506
331
  }
507
332
  return { success: false, error: 'Unknown action' };
@@ -520,97 +345,39 @@ export const neuralTools = [
520
345
  },
521
346
  },
522
347
  handler: async (input) => {
523
- const store = loadNeuralStore();
524
348
  const method = input.method || 'quantize';
525
- const targetReduction = input.targetSize || 0.5;
526
- const patterns = Object.values(store.patterns);
349
+ const { initializeIntelligence, compactPatterns, getAllPatterns } = await import('../memory/intelligence.js');
350
+ await initializeIntelligence();
351
+ const patterns = await getAllPatterns();
527
352
  if (patterns.length === 0) {
528
353
  return { success: false, error: 'No patterns to compress. Train patterns first with neural_train.' };
529
354
  }
530
355
  const beforeCount = patterns.length;
531
- const beforeSize = patterns.reduce((s, p) => s + (p.embedding?.length || 0) * 4, 0); // Float32 = 4 bytes
532
- if (method === 'quantize') {
533
- try {
534
- const { quantizeInt8, getQuantizationStats } = await import('../memory/memory-initializer.js');
535
- let totalCompressed = 0;
536
- for (const pattern of patterns) {
537
- if (pattern.embedding && pattern.embedding.length > 0) {
538
- const stats = getQuantizationStats(pattern.embedding);
539
- const quantized = quantizeInt8(pattern.embedding);
540
- // Store quantized metadata (keep original embedding for search)
541
- pattern._quantized = {
542
- scale: quantized.scale,
543
- zeroPoint: quantized.zeroPoint,
544
- compressionRatio: stats.compressionRatio,
545
- };
546
- totalCompressed++;
547
- }
548
- }
549
- saveNeuralStore(store);
550
- return {
551
- success: true, _real: true, method,
552
- patternsCompressed: totalCompressed,
553
- note: 'Quantization metadata stored; original embeddings retained for search accuracy.',
554
- };
555
- }
556
- catch {
557
- return { success: false, error: 'Quantization requires memory-initializer. Run `memory init` first.' };
558
- }
559
- }
560
- if (method === 'prune') {
561
- // Prune the least-used fraction of patterns. targetReduction (0-1) is a percentile:
562
- // 0.5 removes the bottom 50% by usageCount, 0.8 removes the bottom 80%, etc.
563
- const counts = Object.values(store.patterns)
564
- .map(p => p.usageCount || 0)
565
- .sort((a, b) => a - b);
566
- const cutoffIdx = Math.floor(targetReduction * counts.length);
567
- const threshold = counts[cutoffIdx] ?? 0;
568
- const toRemove = [];
569
- for (const [id, pattern] of Object.entries(store.patterns)) {
570
- if ((pattern.usageCount || 0) < threshold)
571
- toRemove.push(id);
572
- }
573
- for (const id of toRemove)
574
- delete store.patterns[id];
575
- saveNeuralStore(store);
356
+ if (method === 'quantize' || method === 'distill') {
357
+ // Both quantize and distill map to compactPatterns (dedup by cosine similarity)
358
+ const threshold = method === 'quantize' ? 0.99 : 0.95;
359
+ const result = await compactPatterns(threshold);
576
360
  return {
577
361
  success: true, _real: true, method,
578
- threshold,
579
- patternsRemoved: toRemove.length,
580
- patternsBefore: beforeCount,
581
- patternsAfter: Object.keys(store.patterns).length,
362
+ patternsBefore: result.before,
363
+ patternsAfter: result.after,
364
+ patternsRemoved: result.removed,
365
+ note: method === 'quantize'
366
+ ? 'Near-duplicate patterns removed (cosine > 0.99).'
367
+ : `Similar patterns merged (cosine > ${threshold}).`,
582
368
  };
583
369
  }
584
- if (method === 'distill') {
585
- // Merge similar patterns by cosine similarity > 0.95
586
- const patternList = Object.entries(store.patterns);
587
- const merged = [];
588
- for (let i = 0; i < patternList.length; i++) {
589
- const [idA, a] = patternList[i];
590
- if (merged.includes(idA))
591
- continue;
592
- for (let j = i + 1; j < patternList.length; j++) {
593
- const [idB, b] = patternList[j];
594
- if (!a.embedding || !b.embedding || merged.includes(idB))
595
- continue;
596
- const sim = cosineSimilarity(a.embedding, b.embedding);
597
- if (sim > 0.95) {
598
- // Merge: average embeddings, keep higher usage count
599
- for (let k = 0; k < a.embedding.length; k++) {
600
- a.embedding[k] = (a.embedding[k] + (b.embedding[k] || 0)) / 2;
601
- }
602
- a.usageCount = Math.max(a.usageCount || 0, b.usageCount || 0);
603
- delete store.patterns[idB];
604
- merged.push(idB);
605
- }
606
- }
607
- }
608
- saveNeuralStore(store);
370
+ if (method === 'prune') {
371
+ // Prune maps to compactPatterns with a looser threshold
372
+ const targetReduction = input.targetSize || 0.5;
373
+ // Use a threshold proportional to target reduction (lower = more aggressive)
374
+ const threshold = 0.7 + (1 - targetReduction) * 0.25;
375
+ const result = await compactPatterns(threshold);
609
376
  return {
610
377
  success: true, _real: true, method,
611
- patternsMerged: merged.length,
612
- patternsBefore: beforeCount,
613
- patternsAfter: Object.keys(store.patterns).length,
378
+ patternsBefore: result.before,
379
+ patternsAfter: result.after,
380
+ patternsRemoved: result.removed,
614
381
  };
615
382
  }
616
383
  return { success: false, error: `Unknown method: ${method}. Use quantize, prune, or distill.` };
@@ -618,7 +385,7 @@ export const neuralTools = [
618
385
  },
619
386
  {
620
387
  name: 'neural_status',
621
- description: 'Get pattern store status',
388
+ description: 'Get pattern store status (pattern count, embedding dimensions, store health)',
622
389
  category: 'neural',
623
390
  inputSchema: {
624
391
  type: 'object',
@@ -628,38 +395,48 @@ export const neuralTools = [
628
395
  },
629
396
  },
630
397
  handler: async (input) => {
631
- const store = loadNeuralStore();
398
+ const { initializeIntelligence, getIntelligenceStats, getAllPatterns } = await import('../memory/intelligence.js');
399
+ await initializeIntelligence();
400
+ const stats = getIntelligenceStats();
401
+ const patterns = await getAllPatterns();
632
402
  if (input.modelId) {
633
- const MAX_MODEL_ID_LEN_STATUS = 256;
634
- const rawModelIdStatus = input.modelId;
635
- const modelId = typeof rawModelIdStatus === 'string' && rawModelIdStatus.length > MAX_MODEL_ID_LEN_STATUS
636
- ? rawModelIdStatus.slice(0, MAX_MODEL_ID_LEN_STATUS)
637
- : rawModelIdStatus;
638
- if (NEURAL_RESERVED_KEYS.has(modelId)) {
403
+ const modelId = sanitizeModelId(input.modelId);
404
+ if (modelId === null) {
639
405
  return { success: false, error: 'Invalid modelId' };
640
406
  }
641
- const model = Object.hasOwn(store.models, modelId) ? store.models[modelId] : undefined;
642
- if (!model) {
643
- return { success: false, error: 'Model not found' };
644
- }
645
- return { success: true, model };
407
+ // Filter patterns belonging to this model (by metadata or id prefix)
408
+ const modelPatterns = patterns.filter(p => p.id.startsWith(modelId) ||
409
+ (p.metadata?.modelId === modelId));
410
+ return {
411
+ success: true,
412
+ model: {
413
+ id: modelId,
414
+ patternsStored: modelPatterns.length,
415
+ status: modelPatterns.length > 0 ? 'ready' : 'empty',
416
+ },
417
+ };
418
+ }
419
+ const byType = {};
420
+ for (const p of patterns) {
421
+ byType[p.type] = (byType[p.type] || 0) + 1;
646
422
  }
647
- const models = Object.values(store.models);
648
- const patterns = Object.values(store.patterns);
649
423
  return {
650
- embeddingProvider: realEmbeddings ? embeddingServiceName : 'hash-based (deterministic)',
424
+ embeddingProvider: lastEmbeddingModel === 'unknown' ? 'not yet used' : lastEmbeddingModel,
425
+ sonaEnabled: stats.sonaEnabled,
651
426
  models: {
652
- total: models.length,
653
- ready: models.filter(m => m.status === 'ready').length,
654
- indexing: models.filter(m => m.status === 'indexing').length,
427
+ total: 0, // models concept removed; patterns are stored directly
428
+ ready: 0,
429
+ indexing: 0,
655
430
  },
656
431
  patterns: {
657
432
  total: patterns.length,
658
- byType: patterns.reduce((acc, p) => {
659
- acc[p.type] = (acc[p.type] || 0) + 1;
660
- return acc;
661
- }, {}),
662
- embeddingDims: patterns.length > 0 ? patterns[0].embedding.length : 384,
433
+ byType,
434
+ embeddingDims: patterns.length > 0 && patterns[0].embedding ? patterns[0].embedding.length : 384,
435
+ },
436
+ intelligence: {
437
+ reasoningBankSize: stats.reasoningBankSize,
438
+ patternsLearned: stats.patternsLearned,
439
+ trajectoriesRecorded: stats.trajectoriesRecorded,
663
440
  },
664
441
  };
665
442
  },
@@ -676,9 +453,10 @@ export const neuralTools = [
676
453
  },
677
454
  },
678
455
  handler: async (input) => {
679
- const store = loadNeuralStore();
680
456
  const target = input.target || 'balanced';
681
- const patterns = Object.values(store.patterns);
457
+ const { initializeIntelligence, compactPatterns, getAllPatterns } = await import('../memory/intelligence.js');
458
+ await initializeIntelligence();
459
+ const patterns = await getAllPatterns();
682
460
  if (patterns.length === 0) {
683
461
  return { success: false, error: 'No patterns to optimize. Train patterns first with neural_train.' };
684
462
  }
@@ -686,81 +464,39 @@ export const neuralTools = [
686
464
  const actions = [];
687
465
  const beforeCount = patterns.length;
688
466
  const dims = patterns[0]?.embedding?.length || 0;
689
- let patternsRemoved = 0;
690
- let patternsQuantized = 0;
691
- let duplicatesRemoved = 0;
692
- // speed / balanced: deduplicate identical or near-identical patterns
693
- if (target === 'speed' || target === 'balanced') {
694
- const seen = new Map(); // hash -> id
695
- for (const [id, p] of Object.entries(store.patterns)) {
696
- if (!p.embedding || p.embedding.length === 0)
697
- continue;
698
- // Quick hash: first 8 dims rounded
699
- const hash = p.embedding.slice(0, 8).map(v => v.toFixed(4)).join(',');
700
- if (seen.has(hash)) {
701
- // Verify with full cosine similarity
702
- const existingId = seen.get(hash);
703
- const existing = store.patterns[existingId];
704
- if (existing && cosineSimilarity(p.embedding, existing.embedding) > 0.99) {
705
- existing.usageCount = Math.max(existing.usageCount || 0, p.usageCount || 0);
706
- delete store.patterns[id];
707
- duplicatesRemoved++;
708
- }
709
- }
710
- else {
711
- seen.set(hash, id);
712
- }
713
- }
714
- if (duplicatesRemoved > 0)
715
- actions.push(`Removed ${duplicatesRemoved} near-duplicate patterns`);
467
+ // All optimization targets delegate to compactPatterns with varying thresholds
468
+ let threshold;
469
+ switch (target) {
470
+ case 'speed':
471
+ threshold = 0.99; // only near-exact duplicates
472
+ break;
473
+ case 'memory':
474
+ threshold = 0.90; // aggressive dedup
475
+ break;
476
+ case 'accuracy':
477
+ threshold = 0.98; // conservative
478
+ break;
479
+ case 'balanced':
480
+ default:
481
+ threshold = 0.95;
482
+ break;
716
483
  }
717
- // memory / balanced: quantize large embeddings
718
- if (target === 'memory' || target === 'balanced') {
719
- try {
720
- const { quantizeInt8, getQuantizationStats } = await import('../memory/memory-initializer.js');
721
- for (const p of Object.values(store.patterns)) {
722
- if (p.embedding && p.embedding.length > 0 && !p._quantized) {
723
- const stats = getQuantizationStats(p.embedding);
724
- const q = quantizeInt8(p.embedding);
725
- p._quantized = { scale: q.scale, zeroPoint: q.zeroPoint, compressionRatio: stats.compressionRatio };
726
- patternsQuantized++;
727
- }
728
- }
729
- if (patternsQuantized > 0)
730
- actions.push(`Quantized ${patternsQuantized} pattern embeddings (Int8, ~3.92x)`);
731
- }
732
- catch {
733
- actions.push('Quantization skipped (memory-initializer not available)');
734
- }
484
+ const result = await compactPatterns(threshold);
485
+ if (result.removed > 0) {
486
+ actions.push(`Removed ${result.removed} similar patterns (cosine > ${threshold})`);
735
487
  }
736
- // accuracy / balanced: prune low-usage, zero-embedding patterns
737
- if (target === 'accuracy' || target === 'balanced') {
738
- for (const [id, p] of Object.entries(store.patterns)) {
739
- if (!p.embedding || p.embedding.length === 0) {
740
- delete store.patterns[id];
741
- patternsRemoved++;
742
- continue;
743
- }
744
- // Remove patterns with all-zero embeddings (no useful signal)
745
- const norm = p.embedding.reduce((s, v) => s + v * v, 0);
746
- if (norm < 1e-10) {
747
- delete store.patterns[id];
748
- patternsRemoved++;
749
- }
750
- }
751
- if (patternsRemoved > 0)
752
- actions.push(`Pruned ${patternsRemoved} empty/zero-signal patterns`);
488
+ else {
489
+ actions.push('No duplicate patterns found');
753
490
  }
754
- saveNeuralStore(store);
755
491
  const elapsed = Math.round(performance.now() - startTime);
756
492
  return {
757
493
  success: true, _real: true, target,
758
494
  actions,
759
- patternsBefore: beforeCount,
760
- patternsAfter: Object.keys(store.patterns).length,
761
- duplicatesRemoved,
762
- patternsQuantized,
763
- patternsRemoved,
495
+ patternsBefore: result.before,
496
+ patternsAfter: result.after,
497
+ duplicatesRemoved: result.removed,
498
+ patternsQuantized: 0,
499
+ patternsRemoved: result.removed,
764
500
  embeddingDims: dims,
765
501
  elapsedMs: elapsed,
766
502
  };