monomind 1.9.16 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (701) hide show
  1. package/.claude/commands/mastermind/_repeat.md +182 -39
  2. package/.claude/commands/mastermind/architect.md +17 -11
  3. package/.claude/commands/mastermind/brain.md +4 -0
  4. package/.claude/commands/mastermind/build.md +4 -0
  5. package/.claude/commands/mastermind/content.md +4 -0
  6. package/.claude/commands/mastermind/createorg.md +5 -3
  7. package/.claude/commands/mastermind/finance.md +4 -0
  8. package/.claude/commands/mastermind/idea.md +4 -0
  9. package/.claude/commands/mastermind/marketing.md +4 -0
  10. package/.claude/commands/mastermind/master.md +100 -46
  11. package/.claude/commands/mastermind/ops.md +4 -0
  12. package/.claude/commands/mastermind/release.md +4 -0
  13. package/.claude/commands/mastermind/research.md +4 -0
  14. package/.claude/commands/mastermind/review.md +4 -0
  15. package/.claude/commands/mastermind/runorg.md +5 -3
  16. package/.claude/commands/mastermind/sales.md +4 -0
  17. package/.claude/commands/mastermind/techport.md +9 -0
  18. package/.claude/commands/monomind/do.md +5 -1
  19. package/.claude/commands/monomind/idea.md +5 -1
  20. package/.claude/commands/monomind/improve.md +5 -1
  21. package/.claude/commands/monomind/repeat.md +85 -29
  22. package/.claude/commands/monomind/review.md +6 -2
  23. package/.claude/commands/monomind/understand.md +10 -8
  24. package/.claude/helpers/extras-registry.json +235 -235
  25. package/.claude/helpers/graphify-freshen.cjs +13 -1
  26. package/.claude/helpers/hook-handler.cjs +1 -1
  27. package/.claude/helpers/router.cjs +4 -1
  28. package/.claude/scheduled_tasks.lock +1 -1
  29. package/.claude/settings.json +3 -3
  30. package/.claude/settings.local.json +3 -3
  31. package/.claude/skills/.monomind/sessions/current.json +1 -1
  32. package/.claude/skills/.monomind/sessions/session-1777829336455.json +1 -1
  33. package/.claude/skills/.monomind/sessions/session-1777831614725.json +1 -1
  34. package/.claude/skills/.monomind/sessions/session-1777832095857.json +1 -1
  35. package/.claude/skills/.monomind/sessions/session-1777839814183.json +1 -1
  36. package/.claude/skills/.monomind/sessions/session-1777841847131.json +1 -1
  37. package/.claude/skills/.monomind/sessions/session-1777843309463.json +1 -1
  38. package/.claude/skills/.monomind/sessions/session-1777880867159.json +1 -1
  39. package/.claude/skills/.monomind/sessions/session-1777881884593.json +1 -1
  40. package/.claude/skills/.monomind/sessions/session-1777884090471.json +1 -1
  41. package/.claude/skills/.monomind/sessions/session-1777884808221.json +1 -1
  42. package/.claude/skills/.monomind/sessions/session-1777885672155.json +1 -1
  43. package/.claude/skills/.monomind/sessions/session-1777886852818.json +1 -1
  44. package/.claude/skills/.monomind/sessions/session-1777896532690.json +1 -1
  45. package/.claude/skills/mastermind/_protocol.md +37 -21
  46. package/.claude/skills/mastermind/access.md +236 -0
  47. package/.claude/skills/mastermind/activity.md +191 -0
  48. package/.claude/skills/mastermind/adapter-manager.md +259 -0
  49. package/.claude/skills/mastermind/adapters.md +204 -0
  50. package/.claude/skills/mastermind/agent-detail.md +242 -0
  51. package/.claude/skills/mastermind/agents.md +178 -0
  52. package/.claude/skills/mastermind/approval-detail.md +259 -0
  53. package/.claude/skills/mastermind/approve.md +181 -0
  54. package/.claude/skills/mastermind/architect.md +24 -8
  55. package/.claude/skills/mastermind/backup.md +197 -0
  56. package/.claude/skills/mastermind/bootstrap.md +190 -0
  57. package/.claude/skills/mastermind/budgets.md +237 -0
  58. package/.claude/skills/mastermind/companies.md +256 -0
  59. package/.claude/skills/mastermind/costs.md +151 -0
  60. package/.claude/skills/mastermind/createorg.md +23 -5
  61. package/.claude/skills/mastermind/diagnose.md +249 -0
  62. package/.claude/skills/mastermind/env.md +198 -0
  63. package/.claude/skills/mastermind/environments.md +250 -0
  64. package/.claude/skills/mastermind/export.md +324 -0
  65. package/.claude/skills/mastermind/goal-detail.md +255 -0
  66. package/.claude/skills/mastermind/goals.md +149 -0
  67. package/.claude/skills/mastermind/heartbeat.md +164 -0
  68. package/.claude/skills/mastermind/idea.md +318 -186
  69. package/.claude/skills/mastermind/import.md +281 -0
  70. package/.claude/skills/mastermind/inbox.md +214 -0
  71. package/.claude/skills/mastermind/instance-settings.md +315 -0
  72. package/.claude/skills/mastermind/instance.md +231 -0
  73. package/.claude/skills/mastermind/invite-landing.md +227 -0
  74. package/.claude/skills/mastermind/invites.md +254 -0
  75. package/.claude/skills/mastermind/issue-detail.md +291 -0
  76. package/.claude/skills/mastermind/issues.md +235 -0
  77. package/.claude/skills/mastermind/join-queue.md +170 -0
  78. package/.claude/skills/mastermind/liveness.md +392 -0
  79. package/.claude/skills/mastermind/memory.md +321 -0
  80. package/.claude/skills/mastermind/my-issues.md +146 -0
  81. package/.claude/skills/mastermind/new-agent.md +241 -0
  82. package/.claude/skills/mastermind/org-chart.md +207 -0
  83. package/.claude/skills/mastermind/org-settings.md +217 -0
  84. package/.claude/skills/mastermind/plan-to-tasks.md +136 -0
  85. package/.claude/skills/mastermind/plugin-manager.md +241 -0
  86. package/.claude/skills/mastermind/plugin-settings.md +273 -0
  87. package/.claude/skills/mastermind/plugins.md +190 -0
  88. package/.claude/skills/mastermind/profile.md +187 -0
  89. package/.claude/skills/mastermind/project-detail.md +249 -0
  90. package/.claude/skills/mastermind/project-workspace.md +244 -0
  91. package/.claude/skills/mastermind/projects.md +164 -0
  92. package/.claude/skills/mastermind/routine-detail.md +253 -0
  93. package/.claude/skills/mastermind/routines.md +202 -0
  94. package/.claude/skills/mastermind/runorg.md +74 -9
  95. package/.claude/skills/mastermind/search.md +186 -0
  96. package/.claude/skills/mastermind/secrets.md +199 -0
  97. package/.claude/skills/mastermind/skills.md +156 -0
  98. package/.claude/skills/mastermind/tasks.md +149 -0
  99. package/.claude/skills/mastermind/techport.md +5 -5
  100. package/.claude/skills/mastermind/threads.md +259 -0
  101. package/.claude/skills/mastermind/tree-control.md +250 -0
  102. package/.claude/skills/mastermind/wiki.md +314 -0
  103. package/.claude/skills/mastermind/workspace-detail.md +317 -0
  104. package/.claude/skills/mastermind/workspaces.md +261 -0
  105. package/.claude/skills/mastermind/worktree.md +187 -0
  106. package/LICENSE +1 -1
  107. package/package.json +1 -1
  108. package/packages/@monomind/cli/package.json +1 -1
  109. package/packages/@monomind/cli/bundled-graph/dist/src/analyze.d.ts +0 -32
  110. package/packages/@monomind/cli/bundled-graph/dist/src/analyze.d.ts.map +0 -1
  111. package/packages/@monomind/cli/bundled-graph/dist/src/analyze.js +0 -297
  112. package/packages/@monomind/cli/bundled-graph/dist/src/analyze.js.map +0 -1
  113. package/packages/@monomind/cli/bundled-graph/dist/src/build.d.ts +0 -8
  114. package/packages/@monomind/cli/bundled-graph/dist/src/build.d.ts.map +0 -1
  115. package/packages/@monomind/cli/bundled-graph/dist/src/build.js +0 -73
  116. package/packages/@monomind/cli/bundled-graph/dist/src/build.js.map +0 -1
  117. package/packages/@monomind/cli/bundled-graph/dist/src/cache.d.ts +0 -12
  118. package/packages/@monomind/cli/bundled-graph/dist/src/cache.d.ts.map +0 -1
  119. package/packages/@monomind/cli/bundled-graph/dist/src/cache.js +0 -43
  120. package/packages/@monomind/cli/bundled-graph/dist/src/cache.js.map +0 -1
  121. package/packages/@monomind/cli/bundled-graph/dist/src/cluster.d.ts +0 -5
  122. package/packages/@monomind/cli/bundled-graph/dist/src/cluster.d.ts.map +0 -1
  123. package/packages/@monomind/cli/bundled-graph/dist/src/cluster.js +0 -120
  124. package/packages/@monomind/cli/bundled-graph/dist/src/cluster.js.map +0 -1
  125. package/packages/@monomind/cli/bundled-graph/dist/src/detect.d.ts +0 -21
  126. package/packages/@monomind/cli/bundled-graph/dist/src/detect.d.ts.map +0 -1
  127. package/packages/@monomind/cli/bundled-graph/dist/src/detect.js +0 -195
  128. package/packages/@monomind/cli/bundled-graph/dist/src/detect.js.map +0 -1
  129. package/packages/@monomind/cli/bundled-graph/dist/src/export.d.ts +0 -21
  130. package/packages/@monomind/cli/bundled-graph/dist/src/export.d.ts.map +0 -1
  131. package/packages/@monomind/cli/bundled-graph/dist/src/export.js +0 -68
  132. package/packages/@monomind/cli/bundled-graph/dist/src/export.js.map +0 -1
  133. package/packages/@monomind/cli/bundled-graph/dist/src/extract/index.d.ts +0 -20
  134. package/packages/@monomind/cli/bundled-graph/dist/src/extract/index.d.ts.map +0 -1
  135. package/packages/@monomind/cli/bundled-graph/dist/src/extract/index.js +0 -158
  136. package/packages/@monomind/cli/bundled-graph/dist/src/extract/index.js.map +0 -1
  137. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/c.d.ts +0 -3
  138. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/c.d.ts.map +0 -1
  139. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/c.js +0 -88
  140. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/c.js.map +0 -1
  141. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/cpp.d.ts +0 -3
  142. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/cpp.d.ts.map +0 -1
  143. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/cpp.js +0 -121
  144. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/cpp.js.map +0 -1
  145. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/csharp.d.ts +0 -3
  146. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/csharp.d.ts.map +0 -1
  147. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/csharp.js +0 -121
  148. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/csharp.js.map +0 -1
  149. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/go.d.ts +0 -3
  150. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/go.d.ts.map +0 -1
  151. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/go.js +0 -181
  152. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/go.js.map +0 -1
  153. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/java.d.ts +0 -3
  154. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/java.d.ts.map +0 -1
  155. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/java.js +0 -117
  156. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/java.js.map +0 -1
  157. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/kotlin.d.ts +0 -3
  158. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/kotlin.d.ts.map +0 -1
  159. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/kotlin.js +0 -112
  160. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/kotlin.js.map +0 -1
  161. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/php.d.ts +0 -3
  162. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/php.d.ts.map +0 -1
  163. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/php.js +0 -130
  164. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/php.js.map +0 -1
  165. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/python.d.ts +0 -3
  166. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/python.d.ts.map +0 -1
  167. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/python.js +0 -230
  168. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/python.js.map +0 -1
  169. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/ruby.d.ts +0 -3
  170. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/ruby.d.ts.map +0 -1
  171. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/ruby.js +0 -120
  172. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/ruby.js.map +0 -1
  173. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/rust.d.ts +0 -3
  174. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/rust.d.ts.map +0 -1
  175. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/rust.js +0 -195
  176. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/rust.js.map +0 -1
  177. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/scala.d.ts +0 -3
  178. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/scala.d.ts.map +0 -1
  179. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/scala.js +0 -110
  180. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/scala.js.map +0 -1
  181. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/swift.d.ts +0 -3
  182. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/swift.d.ts.map +0 -1
  183. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/swift.js +0 -122
  184. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/swift.js.map +0 -1
  185. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/typescript.d.ts +0 -3
  186. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/typescript.d.ts.map +0 -1
  187. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/typescript.js +0 -295
  188. package/packages/@monomind/cli/bundled-graph/dist/src/extract/languages/typescript.js.map +0 -1
  189. package/packages/@monomind/cli/bundled-graph/dist/src/extract/semantic.d.ts +0 -38
  190. package/packages/@monomind/cli/bundled-graph/dist/src/extract/semantic.d.ts.map +0 -1
  191. package/packages/@monomind/cli/bundled-graph/dist/src/extract/semantic.js +0 -242
  192. package/packages/@monomind/cli/bundled-graph/dist/src/extract/semantic.js.map +0 -1
  193. package/packages/@monomind/cli/bundled-graph/dist/src/extract/tree-sitter-runner.d.ts +0 -48
  194. package/packages/@monomind/cli/bundled-graph/dist/src/extract/tree-sitter-runner.d.ts.map +0 -1
  195. package/packages/@monomind/cli/bundled-graph/dist/src/extract/tree-sitter-runner.js +0 -137
  196. package/packages/@monomind/cli/bundled-graph/dist/src/extract/tree-sitter-runner.js.map +0 -1
  197. package/packages/@monomind/cli/bundled-graph/dist/src/extract/types.d.ts +0 -7
  198. package/packages/@monomind/cli/bundled-graph/dist/src/extract/types.d.ts.map +0 -1
  199. package/packages/@monomind/cli/bundled-graph/dist/src/extract/types.js +0 -2
  200. package/packages/@monomind/cli/bundled-graph/dist/src/extract/types.js.map +0 -1
  201. package/packages/@monomind/cli/bundled-graph/dist/src/index.d.ts +0 -28
  202. package/packages/@monomind/cli/bundled-graph/dist/src/index.d.ts.map +0 -1
  203. package/packages/@monomind/cli/bundled-graph/dist/src/index.js +0 -26
  204. package/packages/@monomind/cli/bundled-graph/dist/src/index.js.map +0 -1
  205. package/packages/@monomind/cli/bundled-graph/dist/src/pipeline.d.ts +0 -27
  206. package/packages/@monomind/cli/bundled-graph/dist/src/pipeline.d.ts.map +0 -1
  207. package/packages/@monomind/cli/bundled-graph/dist/src/pipeline.js +0 -269
  208. package/packages/@monomind/cli/bundled-graph/dist/src/pipeline.js.map +0 -1
  209. package/packages/@monomind/cli/bundled-graph/dist/src/report.d.ts +0 -26
  210. package/packages/@monomind/cli/bundled-graph/dist/src/report.d.ts.map +0 -1
  211. package/packages/@monomind/cli/bundled-graph/dist/src/report.js +0 -214
  212. package/packages/@monomind/cli/bundled-graph/dist/src/report.js.map +0 -1
  213. package/packages/@monomind/cli/bundled-graph/dist/src/types.d.ts +0 -124
  214. package/packages/@monomind/cli/bundled-graph/dist/src/types.d.ts.map +0 -1
  215. package/packages/@monomind/cli/bundled-graph/dist/src/types.js +0 -2
  216. package/packages/@monomind/cli/bundled-graph/dist/src/types.js.map +0 -1
  217. package/packages/@monomind/cli/bundled-graph/dist/src/visualize.d.ts +0 -4
  218. package/packages/@monomind/cli/bundled-graph/dist/src/visualize.d.ts.map +0 -1
  219. package/packages/@monomind/cli/bundled-graph/dist/src/visualize.js +0 -574
  220. package/packages/@monomind/cli/bundled-graph/dist/src/visualize.js.map +0 -1
  221. package/packages/@monomind/cli/dist/src/agents/halt-signal.d.ts +0 -25
  222. package/packages/@monomind/cli/dist/src/agents/halt-signal.js +0 -76
  223. package/packages/@monomind/cli/dist/src/agents/index.d.ts +0 -18
  224. package/packages/@monomind/cli/dist/src/agents/index.js +0 -13
  225. package/packages/@monomind/cli/dist/src/agents/managed-agent.d.ts +0 -41
  226. package/packages/@monomind/cli/dist/src/agents/managed-agent.js +0 -69
  227. package/packages/@monomind/cli/dist/src/agents/prompt-experiment.d.ts +0 -23
  228. package/packages/@monomind/cli/dist/src/agents/prompt-experiment.js +0 -49
  229. package/packages/@monomind/cli/dist/src/agents/prompt-version-manager.d.ts +0 -22
  230. package/packages/@monomind/cli/dist/src/agents/prompt-version-manager.js +0 -80
  231. package/packages/@monomind/cli/dist/src/agents/registry-builder.d.ts +0 -36
  232. package/packages/@monomind/cli/dist/src/agents/registry-builder.js +0 -200
  233. package/packages/@monomind/cli/dist/src/agents/registry-query.d.ts +0 -71
  234. package/packages/@monomind/cli/dist/src/agents/registry-query.js +0 -125
  235. package/packages/@monomind/cli/dist/src/agents/score-decay.d.ts +0 -19
  236. package/packages/@monomind/cli/dist/src/agents/score-decay.js +0 -22
  237. package/packages/@monomind/cli/dist/src/agents/shared-instructions-loader.d.ts +0 -13
  238. package/packages/@monomind/cli/dist/src/agents/shared-instructions-loader.js +0 -40
  239. package/packages/@monomind/cli/dist/src/agents/specialization-scorer.d.ts +0 -54
  240. package/packages/@monomind/cli/dist/src/agents/specialization-scorer.js +0 -212
  241. package/packages/@monomind/cli/dist/src/agents/termination-watcher.d.ts +0 -30
  242. package/packages/@monomind/cli/dist/src/agents/termination-watcher.js +0 -84
  243. package/packages/@monomind/cli/dist/src/agents/trigger-index.d.ts +0 -20
  244. package/packages/@monomind/cli/dist/src/agents/trigger-index.js +0 -38
  245. package/packages/@monomind/cli/dist/src/agents/trigger-scanner.d.ts +0 -64
  246. package/packages/@monomind/cli/dist/src/agents/trigger-scanner.js +0 -308
  247. package/packages/@monomind/cli/dist/src/agents/version-diff.d.ts +0 -18
  248. package/packages/@monomind/cli/dist/src/agents/version-diff.js +0 -64
  249. package/packages/@monomind/cli/dist/src/agents/version-store.d.ts +0 -60
  250. package/packages/@monomind/cli/dist/src/agents/version-store.js +0 -235
  251. package/packages/@monomind/cli/dist/src/autopilot-state.d.ts +0 -77
  252. package/packages/@monomind/cli/dist/src/autopilot-state.js +0 -330
  253. package/packages/@monomind/cli/dist/src/benchmarks/benchmark-runner.d.ts +0 -87
  254. package/packages/@monomind/cli/dist/src/benchmarks/benchmark-runner.js +0 -273
  255. package/packages/@monomind/cli/dist/src/benchmarks/metric-evaluators.d.ts +0 -36
  256. package/packages/@monomind/cli/dist/src/benchmarks/metric-evaluators.js +0 -114
  257. package/packages/@monomind/cli/dist/src/benchmarks/pretrain/index.d.ts +0 -58
  258. package/packages/@monomind/cli/dist/src/benchmarks/pretrain/index.js +0 -404
  259. package/packages/@monomind/cli/dist/src/commands/agent-wasm.d.ts +0 -14
  260. package/packages/@monomind/cli/dist/src/commands/agent-wasm.js +0 -333
  261. package/packages/@monomind/cli/dist/src/commands/agent.d.ts +0 -8
  262. package/packages/@monomind/cli/dist/src/commands/agent.js +0 -943
  263. package/packages/@monomind/cli/dist/src/commands/analyze.d.ts +0 -19
  264. package/packages/@monomind/cli/dist/src/commands/analyze.js +0 -2048
  265. package/packages/@monomind/cli/dist/src/commands/appliance-advanced.d.ts +0 -9
  266. package/packages/@monomind/cli/dist/src/commands/appliance-advanced.js +0 -238
  267. package/packages/@monomind/cli/dist/src/commands/appliance.d.ts +0 -8
  268. package/packages/@monomind/cli/dist/src/commands/appliance.js +0 -406
  269. package/packages/@monomind/cli/dist/src/commands/autopilot.d.ts +0 -15
  270. package/packages/@monomind/cli/dist/src/commands/autopilot.js +0 -362
  271. package/packages/@monomind/cli/dist/src/commands/benchmark.d.ts +0 -10
  272. package/packages/@monomind/cli/dist/src/commands/benchmark.js +0 -571
  273. package/packages/@monomind/cli/dist/src/commands/claims.d.ts +0 -10
  274. package/packages/@monomind/cli/dist/src/commands/claims.js +0 -632
  275. package/packages/@monomind/cli/dist/src/commands/cleanup.d.ts +0 -13
  276. package/packages/@monomind/cli/dist/src/commands/cleanup.js +0 -218
  277. package/packages/@monomind/cli/dist/src/commands/completions.d.ts +0 -10
  278. package/packages/@monomind/cli/dist/src/commands/completions.js +0 -539
  279. package/packages/@monomind/cli/dist/src/commands/config.d.ts +0 -8
  280. package/packages/@monomind/cli/dist/src/commands/config.js +0 -460
  281. package/packages/@monomind/cli/dist/src/commands/daemon.d.ts +0 -8
  282. package/packages/@monomind/cli/dist/src/commands/daemon.js +0 -671
  283. package/packages/@monomind/cli/dist/src/commands/deployment.d.ts +0 -10
  284. package/packages/@monomind/cli/dist/src/commands/deployment.js +0 -691
  285. package/packages/@monomind/cli/dist/src/commands/doctor.d.ts +0 -10
  286. package/packages/@monomind/cli/dist/src/commands/doctor.js +0 -647
  287. package/packages/@monomind/cli/dist/src/commands/embeddings.d.ts +0 -18
  288. package/packages/@monomind/cli/dist/src/commands/embeddings.js +0 -1652
  289. package/packages/@monomind/cli/dist/src/commands/guidance.d.ts +0 -8
  290. package/packages/@monomind/cli/dist/src/commands/guidance.js +0 -560
  291. package/packages/@monomind/cli/dist/src/commands/hive-mind.d.ts +0 -11
  292. package/packages/@monomind/cli/dist/src/commands/hive-mind.js +0 -1238
  293. package/packages/@monomind/cli/dist/src/commands/hooks.d.ts +0 -8
  294. package/packages/@monomind/cli/dist/src/commands/hooks.js +0 -4446
  295. package/packages/@monomind/cli/dist/src/commands/index.d.ts +0 -119
  296. package/packages/@monomind/cli/dist/src/commands/index.js +0 -404
  297. package/packages/@monomind/cli/dist/src/commands/init.d.ts +0 -8
  298. package/packages/@monomind/cli/dist/src/commands/init.js +0 -853
  299. package/packages/@monomind/cli/dist/src/commands/issues.d.ts +0 -21
  300. package/packages/@monomind/cli/dist/src/commands/issues.js +0 -567
  301. package/packages/@monomind/cli/dist/src/commands/mcp.d.ts +0 -11
  302. package/packages/@monomind/cli/dist/src/commands/mcp.js +0 -705
  303. package/packages/@monomind/cli/dist/src/commands/memory.d.ts +0 -8
  304. package/packages/@monomind/cli/dist/src/commands/memory.js +0 -1596
  305. package/packages/@monomind/cli/dist/src/commands/migrate.d.ts +0 -8
  306. package/packages/@monomind/cli/dist/src/commands/migrate.js +0 -790
  307. package/packages/@monomind/cli/dist/src/commands/monograph.d.ts +0 -8
  308. package/packages/@monomind/cli/dist/src/commands/monograph.js +0 -526
  309. package/packages/@monomind/cli/dist/src/commands/neural.d.ts +0 -10
  310. package/packages/@monomind/cli/dist/src/commands/neural.js +0 -1494
  311. package/packages/@monomind/cli/dist/src/commands/performance.d.ts +0 -10
  312. package/packages/@monomind/cli/dist/src/commands/performance.js +0 -601
  313. package/packages/@monomind/cli/dist/src/commands/plugins.d.ts +0 -11
  314. package/packages/@monomind/cli/dist/src/commands/plugins.js +0 -796
  315. package/packages/@monomind/cli/dist/src/commands/process.d.ts +0 -10
  316. package/packages/@monomind/cli/dist/src/commands/process.js +0 -718
  317. package/packages/@monomind/cli/dist/src/commands/progress.d.ts +0 -11
  318. package/packages/@monomind/cli/dist/src/commands/progress.js +0 -259
  319. package/packages/@monomind/cli/dist/src/commands/providers.d.ts +0 -10
  320. package/packages/@monomind/cli/dist/src/commands/providers.js +0 -391
  321. package/packages/@monomind/cli/dist/src/commands/replay.d.ts +0 -8
  322. package/packages/@monomind/cli/dist/src/commands/replay.js +0 -60
  323. package/packages/@monomind/cli/dist/src/commands/route.d.ts +0 -16
  324. package/packages/@monomind/cli/dist/src/commands/route.js +0 -939
  325. package/packages/@monomind/cli/dist/src/commands/ruvector/backup.d.ts +0 -11
  326. package/packages/@monomind/cli/dist/src/commands/ruvector/backup.js +0 -746
  327. package/packages/@monomind/cli/dist/src/commands/ruvector/benchmark.d.ts +0 -11
  328. package/packages/@monomind/cli/dist/src/commands/ruvector/benchmark.js +0 -489
  329. package/packages/@monomind/cli/dist/src/commands/ruvector/import.d.ts +0 -18
  330. package/packages/@monomind/cli/dist/src/commands/ruvector/import.js +0 -359
  331. package/packages/@monomind/cli/dist/src/commands/ruvector/index.d.ts +0 -29
  332. package/packages/@monomind/cli/dist/src/commands/ruvector/index.js +0 -129
  333. package/packages/@monomind/cli/dist/src/commands/ruvector/init.d.ts +0 -11
  334. package/packages/@monomind/cli/dist/src/commands/ruvector/init.js +0 -481
  335. package/packages/@monomind/cli/dist/src/commands/ruvector/migrate.d.ts +0 -11
  336. package/packages/@monomind/cli/dist/src/commands/ruvector/migrate.js +0 -497
  337. package/packages/@monomind/cli/dist/src/commands/ruvector/optimize.d.ts +0 -11
  338. package/packages/@monomind/cli/dist/src/commands/ruvector/optimize.js +0 -504
  339. package/packages/@monomind/cli/dist/src/commands/ruvector/setup.d.ts +0 -18
  340. package/packages/@monomind/cli/dist/src/commands/ruvector/setup.js +0 -765
  341. package/packages/@monomind/cli/dist/src/commands/ruvector/status.d.ts +0 -11
  342. package/packages/@monomind/cli/dist/src/commands/ruvector/status.js +0 -491
  343. package/packages/@monomind/cli/dist/src/commands/security.d.ts +0 -10
  344. package/packages/@monomind/cli/dist/src/commands/security.js +0 -943
  345. package/packages/@monomind/cli/dist/src/commands/session.d.ts +0 -8
  346. package/packages/@monomind/cli/dist/src/commands/session.js +0 -793
  347. package/packages/@monomind/cli/dist/src/commands/start.d.ts +0 -8
  348. package/packages/@monomind/cli/dist/src/commands/start.js +0 -432
  349. package/packages/@monomind/cli/dist/src/commands/status.d.ts +0 -8
  350. package/packages/@monomind/cli/dist/src/commands/status.js +0 -591
  351. package/packages/@monomind/cli/dist/src/commands/swarm.d.ts +0 -8
  352. package/packages/@monomind/cli/dist/src/commands/swarm.js +0 -812
  353. package/packages/@monomind/cli/dist/src/commands/task.d.ts +0 -8
  354. package/packages/@monomind/cli/dist/src/commands/task.js +0 -671
  355. package/packages/@monomind/cli/dist/src/commands/tokens.d.ts +0 -8
  356. package/packages/@monomind/cli/dist/src/commands/tokens.js +0 -107
  357. package/packages/@monomind/cli/dist/src/commands/transfer-store.d.ts +0 -13
  358. package/packages/@monomind/cli/dist/src/commands/transfer-store.js +0 -428
  359. package/packages/@monomind/cli/dist/src/commands/ui.js +0 -68
  360. package/packages/@monomind/cli/dist/src/commands/update.d.ts +0 -8
  361. package/packages/@monomind/cli/dist/src/commands/update.js +0 -276
  362. package/packages/@monomind/cli/dist/src/commands/workflow.d.ts +0 -8
  363. package/packages/@monomind/cli/dist/src/commands/workflow.js +0 -644
  364. package/packages/@monomind/cli/dist/src/config-adapter.d.ts +0 -16
  365. package/packages/@monomind/cli/dist/src/config-adapter.js +0 -186
  366. package/packages/@monomind/cli/dist/src/consensus/audit-writer.d.ts +0 -50
  367. package/packages/@monomind/cli/dist/src/consensus/audit-writer.js +0 -142
  368. package/packages/@monomind/cli/dist/src/consensus/index.d.ts +0 -7
  369. package/packages/@monomind/cli/dist/src/consensus/index.js +0 -6
  370. package/packages/@monomind/cli/dist/src/consensus/vote-signer.d.ts +0 -36
  371. package/packages/@monomind/cli/dist/src/consensus/vote-signer.js +0 -71
  372. package/packages/@monomind/cli/dist/src/context/context-provider.d.ts +0 -44
  373. package/packages/@monomind/cli/dist/src/context/context-provider.js +0 -25
  374. package/packages/@monomind/cli/dist/src/context/git-state-provider.d.ts +0 -12
  375. package/packages/@monomind/cli/dist/src/context/git-state-provider.js +0 -34
  376. package/packages/@monomind/cli/dist/src/context/index.d.ts +0 -12
  377. package/packages/@monomind/cli/dist/src/context/index.js +0 -12
  378. package/packages/@monomind/cli/dist/src/context/project-conventions-provider.d.ts +0 -15
  379. package/packages/@monomind/cli/dist/src/context/project-conventions-provider.js +0 -19
  380. package/packages/@monomind/cli/dist/src/context/prompt-assembler.d.ts +0 -26
  381. package/packages/@monomind/cli/dist/src/context/prompt-assembler.js +0 -93
  382. package/packages/@monomind/cli/dist/src/context/task-history-provider.d.ts +0 -24
  383. package/packages/@monomind/cli/dist/src/context/task-history-provider.js +0 -32
  384. package/packages/@monomind/cli/dist/src/context/user-preferences-provider.d.ts +0 -14
  385. package/packages/@monomind/cli/dist/src/context/user-preferences-provider.js +0 -27
  386. package/packages/@monomind/cli/dist/src/dlq/dlq-reader.d.ts +0 -31
  387. package/packages/@monomind/cli/dist/src/dlq/dlq-reader.js +0 -81
  388. package/packages/@monomind/cli/dist/src/dlq/dlq-replayer.d.ts +0 -27
  389. package/packages/@monomind/cli/dist/src/dlq/dlq-replayer.js +0 -90
  390. package/packages/@monomind/cli/dist/src/dlq/dlq-writer.d.ts +0 -24
  391. package/packages/@monomind/cli/dist/src/dlq/dlq-writer.js +0 -65
  392. package/packages/@monomind/cli/dist/src/dlq/index.d.ts +0 -10
  393. package/packages/@monomind/cli/dist/src/dlq/index.js +0 -7
  394. package/packages/@monomind/cli/dist/src/eval/dataset-manager.d.ts +0 -33
  395. package/packages/@monomind/cli/dist/src/eval/dataset-manager.js +0 -107
  396. package/packages/@monomind/cli/dist/src/eval/dataset-runner.d.ts +0 -23
  397. package/packages/@monomind/cli/dist/src/eval/dataset-runner.js +0 -59
  398. package/packages/@monomind/cli/dist/src/eval/index.d.ts +0 -10
  399. package/packages/@monomind/cli/dist/src/eval/index.js +0 -7
  400. package/packages/@monomind/cli/dist/src/eval/trace-collector.d.ts +0 -40
  401. package/packages/@monomind/cli/dist/src/eval/trace-collector.js +0 -102
  402. package/packages/@monomind/cli/dist/src/index.d.ts +0 -82
  403. package/packages/@monomind/cli/dist/src/index.js +0 -580
  404. package/packages/@monomind/cli/dist/src/infrastructure/in-memory-repositories.d.ts +0 -68
  405. package/packages/@monomind/cli/dist/src/infrastructure/in-memory-repositories.js +0 -264
  406. package/packages/@monomind/cli/dist/src/init/claudemd-generator.d.ts +0 -25
  407. package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +0 -558
  408. package/packages/@monomind/cli/dist/src/init/executor.d.ts +0 -38
  409. package/packages/@monomind/cli/dist/src/init/executor.js +0 -2172
  410. package/packages/@monomind/cli/dist/src/init/helpers-generator.d.ts +0 -60
  411. package/packages/@monomind/cli/dist/src/init/helpers-generator.js +0 -1235
  412. package/packages/@monomind/cli/dist/src/init/index.d.ts +0 -13
  413. package/packages/@monomind/cli/dist/src/init/index.js +0 -15
  414. package/packages/@monomind/cli/dist/src/init/mcp-generator.d.ts +0 -26
  415. package/packages/@monomind/cli/dist/src/init/mcp-generator.js +0 -99
  416. package/packages/@monomind/cli/dist/src/init/settings-generator.d.ts +0 -14
  417. package/packages/@monomind/cli/dist/src/init/settings-generator.js +0 -417
  418. package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.d.ts +0 -38
  419. package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.js +0 -586
  420. package/packages/@monomind/cli/dist/src/init/statusline-generator.d.ts +0 -25
  421. package/packages/@monomind/cli/dist/src/init/statusline-generator.js +0 -1159
  422. package/packages/@monomind/cli/dist/src/init/types.d.ts +0 -315
  423. package/packages/@monomind/cli/dist/src/init/types.js +0 -254
  424. package/packages/@monomind/cli/dist/src/interactive/interrupt.d.ts +0 -22
  425. package/packages/@monomind/cli/dist/src/interactive/interrupt.js +0 -71
  426. package/packages/@monomind/cli/dist/src/mcp/deprecation-injector.d.ts +0 -25
  427. package/packages/@monomind/cli/dist/src/mcp/deprecation-injector.js +0 -48
  428. package/packages/@monomind/cli/dist/src/mcp/tool-registry.d.ts +0 -61
  429. package/packages/@monomind/cli/dist/src/mcp/tool-registry.js +0 -246
  430. package/packages/@monomind/cli/dist/src/mcp-client.d.ts +0 -92
  431. package/packages/@monomind/cli/dist/src/mcp-client.js +0 -270
  432. package/packages/@monomind/cli/dist/src/mcp-server.d.ts +0 -170
  433. package/packages/@monomind/cli/dist/src/mcp-server.js +0 -829
  434. package/packages/@monomind/cli/dist/src/mcp-tools/a2a-tools.d.ts +0 -14
  435. package/packages/@monomind/cli/dist/src/mcp-tools/a2a-tools.js +0 -244
  436. package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.d.ts +0 -9
  437. package/packages/@monomind/cli/dist/src/mcp-tools/agent-tools.js +0 -607
  438. package/packages/@monomind/cli/dist/src/mcp-tools/agentdb-tools.d.ts +0 -30
  439. package/packages/@monomind/cli/dist/src/mcp-tools/agentdb-tools.js +0 -596
  440. package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.d.ts +0 -38
  441. package/packages/@monomind/cli/dist/src/mcp-tools/analyze-tools.js +0 -326
  442. package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.d.ts +0 -83
  443. package/packages/@monomind/cli/dist/src/mcp-tools/auto-install.js +0 -129
  444. package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.d.ts +0 -12
  445. package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.js +0 -237
  446. package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.d.ts +0 -13
  447. package/packages/@monomind/cli/dist/src/mcp-tools/browser-tools.js +0 -729
  448. package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.d.ts +0 -12
  449. package/packages/@monomind/cli/dist/src/mcp-tools/claims-tools.js +0 -797
  450. package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.d.ts +0 -8
  451. package/packages/@monomind/cli/dist/src/mcp-tools/config-tools.js +0 -381
  452. package/packages/@monomind/cli/dist/src/mcp-tools/coordination-tools.d.ts +0 -13
  453. package/packages/@monomind/cli/dist/src/mcp-tools/coordination-tools.js +0 -728
  454. package/packages/@monomind/cli/dist/src/mcp-tools/daa-tools.d.ts +0 -13
  455. package/packages/@monomind/cli/dist/src/mcp-tools/daa-tools.js +0 -509
  456. package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.d.ts +0 -9
  457. package/packages/@monomind/cli/dist/src/mcp-tools/embeddings-tools.js +0 -823
  458. package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.d.ts +0 -9
  459. package/packages/@monomind/cli/dist/src/mcp-tools/github-tools.js +0 -485
  460. package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.d.ts +0 -10
  461. package/packages/@monomind/cli/dist/src/mcp-tools/graphify-tools.js +0 -49
  462. package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.d.ts +0 -15
  463. package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +0 -646
  464. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.d.ts +0 -8
  465. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +0 -957
  466. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.d.ts +0 -44
  467. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +0 -3440
  468. package/packages/@monomind/cli/dist/src/mcp-tools/index.d.ts +0 -39
  469. package/packages/@monomind/cli/dist/src/mcp-tools/index.js +0 -41
  470. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.d.ts +0 -14
  471. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +0 -530
  472. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.d.ts +0 -9
  473. package/packages/@monomind/cli/dist/src/mcp-tools/monograph-tools.js +0 -6306
  474. package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.d.ts +0 -16
  475. package/packages/@monomind/cli/dist/src/mcp-tools/neural-tools.js +0 -718
  476. package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.d.ts +0 -16
  477. package/packages/@monomind/cli/dist/src/mcp-tools/performance-tools.js +0 -656
  478. package/packages/@monomind/cli/dist/src/mcp-tools/progress-tools.d.ts +0 -14
  479. package/packages/@monomind/cli/dist/src/mcp-tools/progress-tools.js +0 -350
  480. package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.d.ts +0 -17
  481. package/packages/@monomind/cli/dist/src/mcp-tools/request-tracker.js +0 -30
  482. package/packages/@monomind/cli/dist/src/mcp-tools/ruvllm-tools.d.ts +0 -9
  483. package/packages/@monomind/cli/dist/src/mcp-tools/ruvllm-tools.js +0 -295
  484. package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.d.ts +0 -18
  485. package/packages/@monomind/cli/dist/src/mcp-tools/security-tools.js +0 -434
  486. package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.d.ts +0 -8
  487. package/packages/@monomind/cli/dist/src/mcp-tools/session-tools.js +0 -378
  488. package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.d.ts +0 -9
  489. package/packages/@monomind/cli/dist/src/mcp-tools/swarm-tools.js +0 -317
  490. package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.d.ts +0 -13
  491. package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.js +0 -552
  492. package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.d.ts +0 -8
  493. package/packages/@monomind/cli/dist/src/mcp-tools/task-tools.js +0 -446
  494. package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.d.ts +0 -8
  495. package/packages/@monomind/cli/dist/src/mcp-tools/terminal-tools.js +0 -309
  496. package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.d.ts +0 -14
  497. package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.js +0 -401
  498. package/packages/@monomind/cli/dist/src/mcp-tools/types.d.ts +0 -37
  499. package/packages/@monomind/cli/dist/src/mcp-tools/types.js +0 -14
  500. package/packages/@monomind/cli/dist/src/mcp-tools/wasm-agent-tools.d.ts +0 -9
  501. package/packages/@monomind/cli/dist/src/mcp-tools/wasm-agent-tools.js +0 -230
  502. package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.d.ts +0 -8
  503. package/packages/@monomind/cli/dist/src/mcp-tools/workflow-tools.js +0 -631
  504. package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.d.ts +0 -295
  505. package/packages/@monomind/cli/dist/src/memory/ewc-consolidation.js +0 -632
  506. package/packages/@monomind/cli/dist/src/memory/intelligence.d.ts +0 -338
  507. package/packages/@monomind/cli/dist/src/memory/intelligence.js +0 -1049
  508. package/packages/@monomind/cli/dist/src/memory/memory-bridge.d.ts +0 -410
  509. package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +0 -1654
  510. package/packages/@monomind/cli/dist/src/memory/memory-initializer.d.ts +0 -414
  511. package/packages/@monomind/cli/dist/src/memory/memory-initializer.js +0 -2284
  512. package/packages/@monomind/cli/dist/src/memory/sona-optimizer.d.ts +0 -234
  513. package/packages/@monomind/cli/dist/src/memory/sona-optimizer.js +0 -650
  514. package/packages/@monomind/cli/dist/src/model/complexity-scorer.d.ts +0 -21
  515. package/packages/@monomind/cli/dist/src/model/complexity-scorer.js +0 -106
  516. package/packages/@monomind/cli/dist/src/model/index.d.ts +0 -4
  517. package/packages/@monomind/cli/dist/src/model/index.js +0 -4
  518. package/packages/@monomind/cli/dist/src/model/model-settings.d.ts +0 -22
  519. package/packages/@monomind/cli/dist/src/model/model-settings.js +0 -33
  520. package/packages/@monomind/cli/dist/src/model/model-tier-resolver.d.ts +0 -24
  521. package/packages/@monomind/cli/dist/src/model/model-tier-resolver.js +0 -65
  522. package/packages/@monomind/cli/dist/src/observability/replay-reader.d.ts +0 -40
  523. package/packages/@monomind/cli/dist/src/observability/replay-reader.js +0 -138
  524. package/packages/@monomind/cli/dist/src/orchestration/index.d.ts +0 -7
  525. package/packages/@monomind/cli/dist/src/orchestration/index.js +0 -6
  526. package/packages/@monomind/cli/dist/src/orchestration/mode-dispatcher.d.ts +0 -11
  527. package/packages/@monomind/cli/dist/src/orchestration/mode-dispatcher.js +0 -31
  528. package/packages/@monomind/cli/dist/src/orchestration/routing-modes.d.ts +0 -68
  529. package/packages/@monomind/cli/dist/src/orchestration/routing-modes.js +0 -180
  530. package/packages/@monomind/cli/dist/src/output.d.ts +0 -133
  531. package/packages/@monomind/cli/dist/src/output.js +0 -514
  532. package/packages/@monomind/cli/dist/src/parser.d.ts +0 -59
  533. package/packages/@monomind/cli/dist/src/parser.js +0 -459
  534. package/packages/@monomind/cli/dist/src/plugins/manager.d.ts +0 -133
  535. package/packages/@monomind/cli/dist/src/plugins/manager.js +0 -493
  536. package/packages/@monomind/cli/dist/src/plugins/store/discovery.d.ts +0 -88
  537. package/packages/@monomind/cli/dist/src/plugins/store/discovery.js +0 -859
  538. package/packages/@monomind/cli/dist/src/plugins/store/index.d.ts +0 -76
  539. package/packages/@monomind/cli/dist/src/plugins/store/index.js +0 -141
  540. package/packages/@monomind/cli/dist/src/plugins/store/search.d.ts +0 -46
  541. package/packages/@monomind/cli/dist/src/plugins/store/search.js +0 -230
  542. package/packages/@monomind/cli/dist/src/plugins/store/types.d.ts +0 -274
  543. package/packages/@monomind/cli/dist/src/plugins/store/types.js +0 -7
  544. package/packages/@monomind/cli/dist/src/plugins/tests/demo-plugin-store.d.ts +0 -7
  545. package/packages/@monomind/cli/dist/src/plugins/tests/demo-plugin-store.js +0 -126
  546. package/packages/@monomind/cli/dist/src/plugins/tests/standalone-test.d.ts +0 -12
  547. package/packages/@monomind/cli/dist/src/plugins/tests/standalone-test.js +0 -188
  548. package/packages/@monomind/cli/dist/src/plugins/tests/test-plugin-store.d.ts +0 -7
  549. package/packages/@monomind/cli/dist/src/plugins/tests/test-plugin-store.js +0 -206
  550. package/packages/@monomind/cli/dist/src/production/circuit-breaker.d.ts +0 -101
  551. package/packages/@monomind/cli/dist/src/production/circuit-breaker.js +0 -248
  552. package/packages/@monomind/cli/dist/src/production/error-handler.d.ts +0 -94
  553. package/packages/@monomind/cli/dist/src/production/error-handler.js +0 -321
  554. package/packages/@monomind/cli/dist/src/production/index.d.ts +0 -23
  555. package/packages/@monomind/cli/dist/src/production/index.js +0 -18
  556. package/packages/@monomind/cli/dist/src/production/monitoring.d.ts +0 -161
  557. package/packages/@monomind/cli/dist/src/production/monitoring.js +0 -360
  558. package/packages/@monomind/cli/dist/src/production/rate-limiter.d.ts +0 -80
  559. package/packages/@monomind/cli/dist/src/production/rate-limiter.js +0 -209
  560. package/packages/@monomind/cli/dist/src/production/retry.d.ts +0 -48
  561. package/packages/@monomind/cli/dist/src/production/retry.js +0 -179
  562. package/packages/@monomind/cli/dist/src/prompt.d.ts +0 -44
  563. package/packages/@monomind/cli/dist/src/prompt.js +0 -501
  564. package/packages/@monomind/cli/dist/src/runtime/headless.d.ts +0 -60
  565. package/packages/@monomind/cli/dist/src/runtime/headless.js +0 -284
  566. package/packages/@monomind/cli/dist/src/ruvector/agent-wasm.d.ts +0 -182
  567. package/packages/@monomind/cli/dist/src/ruvector/agent-wasm.js +0 -316
  568. package/packages/@monomind/cli/dist/src/ruvector/ast-analyzer.d.ts +0 -67
  569. package/packages/@monomind/cli/dist/src/ruvector/ast-analyzer.js +0 -277
  570. package/packages/@monomind/cli/dist/src/ruvector/coverage-router.d.ts +0 -160
  571. package/packages/@monomind/cli/dist/src/ruvector/coverage-router.js +0 -539
  572. package/packages/@monomind/cli/dist/src/ruvector/coverage-tools.d.ts +0 -33
  573. package/packages/@monomind/cli/dist/src/ruvector/coverage-tools.js +0 -157
  574. package/packages/@monomind/cli/dist/src/ruvector/diff-classifier.d.ts +0 -176
  575. package/packages/@monomind/cli/dist/src/ruvector/diff-classifier.js +0 -718
  576. package/packages/@monomind/cli/dist/src/ruvector/enhanced-model-router.d.ts +0 -146
  577. package/packages/@monomind/cli/dist/src/ruvector/enhanced-model-router.js +0 -551
  578. package/packages/@monomind/cli/dist/src/ruvector/flash-attention.d.ts +0 -195
  579. package/packages/@monomind/cli/dist/src/ruvector/flash-attention.js +0 -643
  580. package/packages/@monomind/cli/dist/src/ruvector/graph-analyzer.d.ts +0 -187
  581. package/packages/@monomind/cli/dist/src/ruvector/graph-analyzer.js +0 -929
  582. package/packages/@monomind/cli/dist/src/ruvector/index.d.ts +0 -39
  583. package/packages/@monomind/cli/dist/src/ruvector/index.js +0 -76
  584. package/packages/@monomind/cli/dist/src/ruvector/lora-adapter.d.ts +0 -218
  585. package/packages/@monomind/cli/dist/src/ruvector/lora-adapter.js +0 -455
  586. package/packages/@monomind/cli/dist/src/ruvector/model-router.d.ts +0 -222
  587. package/packages/@monomind/cli/dist/src/ruvector/model-router.js +0 -512
  588. package/packages/@monomind/cli/dist/src/ruvector/moe-router.d.ts +0 -213
  589. package/packages/@monomind/cli/dist/src/ruvector/moe-router.js +0 -649
  590. package/packages/@monomind/cli/dist/src/ruvector/q-learning-router.d.ts +0 -217
  591. package/packages/@monomind/cli/dist/src/ruvector/q-learning-router.js +0 -712
  592. package/packages/@monomind/cli/dist/src/ruvector/ruvllm-wasm.d.ts +0 -179
  593. package/packages/@monomind/cli/dist/src/ruvector/ruvllm-wasm.js +0 -363
  594. package/packages/@monomind/cli/dist/src/ruvector/semantic-router.d.ts +0 -77
  595. package/packages/@monomind/cli/dist/src/ruvector/semantic-router.js +0 -178
  596. package/packages/@monomind/cli/dist/src/ruvector/vector-db.d.ts +0 -69
  597. package/packages/@monomind/cli/dist/src/ruvector/vector-db.js +0 -243
  598. package/packages/@monomind/cli/dist/src/services/agentic-flow-bridge.d.ts +0 -50
  599. package/packages/@monomind/cli/dist/src/services/agentic-flow-bridge.js +0 -95
  600. package/packages/@monomind/cli/dist/src/services/claim-service.d.ts +0 -206
  601. package/packages/@monomind/cli/dist/src/services/claim-service.js +0 -849
  602. package/packages/@monomind/cli/dist/src/services/config-file-manager.d.ts +0 -51
  603. package/packages/@monomind/cli/dist/src/services/config-file-manager.js +0 -312
  604. package/packages/@monomind/cli/dist/src/services/container-worker-pool.d.ts +0 -197
  605. package/packages/@monomind/cli/dist/src/services/container-worker-pool.js +0 -623
  606. package/packages/@monomind/cli/dist/src/services/headless-worker-executor.d.ts +0 -311
  607. package/packages/@monomind/cli/dist/src/services/headless-worker-executor.js +0 -1167
  608. package/packages/@monomind/cli/dist/src/services/index.d.ts +0 -13
  609. package/packages/@monomind/cli/dist/src/services/index.js +0 -11
  610. package/packages/@monomind/cli/dist/src/services/registry-api.d.ts +0 -58
  611. package/packages/@monomind/cli/dist/src/services/registry-api.js +0 -199
  612. package/packages/@monomind/cli/dist/src/services/ruvector-training.d.ts +0 -222
  613. package/packages/@monomind/cli/dist/src/services/ruvector-training.js +0 -696
  614. package/packages/@monomind/cli/dist/src/services/worker-daemon.d.ts +0 -248
  615. package/packages/@monomind/cli/dist/src/services/worker-daemon.js +0 -1083
  616. package/packages/@monomind/cli/dist/src/services/worker-queue.d.ts +0 -201
  617. package/packages/@monomind/cli/dist/src/services/worker-queue.js +0 -594
  618. package/packages/@monomind/cli/dist/src/suggest.d.ts +0 -53
  619. package/packages/@monomind/cli/dist/src/suggest.js +0 -209
  620. package/packages/@monomind/cli/dist/src/swarm/communication-graph.d.ts +0 -25
  621. package/packages/@monomind/cli/dist/src/swarm/communication-graph.js +0 -77
  622. package/packages/@monomind/cli/dist/src/swarm/flow-enforcer.d.ts +0 -31
  623. package/packages/@monomind/cli/dist/src/swarm/flow-enforcer.js +0 -61
  624. package/packages/@monomind/cli/dist/src/swarm/flow-visualizer.d.ts +0 -19
  625. package/packages/@monomind/cli/dist/src/swarm/flow-visualizer.js +0 -68
  626. package/packages/@monomind/cli/dist/src/transfer/anonymization/index.d.ts +0 -25
  627. package/packages/@monomind/cli/dist/src/transfer/anonymization/index.js +0 -177
  628. package/packages/@monomind/cli/dist/src/transfer/deploy-seraphine.d.ts +0 -13
  629. package/packages/@monomind/cli/dist/src/transfer/deploy-seraphine.js +0 -205
  630. package/packages/@monomind/cli/dist/src/transfer/export.d.ts +0 -25
  631. package/packages/@monomind/cli/dist/src/transfer/export.js +0 -115
  632. package/packages/@monomind/cli/dist/src/transfer/index.d.ts +0 -12
  633. package/packages/@monomind/cli/dist/src/transfer/index.js +0 -31
  634. package/packages/@monomind/cli/dist/src/transfer/ipfs/client.d.ts +0 -109
  635. package/packages/@monomind/cli/dist/src/transfer/ipfs/client.js +0 -384
  636. package/packages/@monomind/cli/dist/src/transfer/ipfs/upload.d.ts +0 -95
  637. package/packages/@monomind/cli/dist/src/transfer/ipfs/upload.js +0 -420
  638. package/packages/@monomind/cli/dist/src/transfer/models/seraphine.d.ts +0 -72
  639. package/packages/@monomind/cli/dist/src/transfer/models/seraphine.js +0 -373
  640. package/packages/@monomind/cli/dist/src/transfer/serialization/cfp.d.ts +0 -49
  641. package/packages/@monomind/cli/dist/src/transfer/serialization/cfp.js +0 -183
  642. package/packages/@monomind/cli/dist/src/transfer/storage/gcs.d.ts +0 -82
  643. package/packages/@monomind/cli/dist/src/transfer/storage/gcs.js +0 -281
  644. package/packages/@monomind/cli/dist/src/transfer/storage/index.d.ts +0 -6
  645. package/packages/@monomind/cli/dist/src/transfer/storage/index.js +0 -6
  646. package/packages/@monomind/cli/dist/src/transfer/store/discovery.d.ts +0 -91
  647. package/packages/@monomind/cli/dist/src/transfer/store/discovery.js +0 -437
  648. package/packages/@monomind/cli/dist/src/transfer/store/download.d.ts +0 -79
  649. package/packages/@monomind/cli/dist/src/transfer/store/download.js +0 -423
  650. package/packages/@monomind/cli/dist/src/transfer/store/index.d.ts +0 -84
  651. package/packages/@monomind/cli/dist/src/transfer/store/index.js +0 -153
  652. package/packages/@monomind/cli/dist/src/transfer/store/publish.d.ts +0 -76
  653. package/packages/@monomind/cli/dist/src/transfer/store/publish.js +0 -293
  654. package/packages/@monomind/cli/dist/src/transfer/store/registry.d.ts +0 -58
  655. package/packages/@monomind/cli/dist/src/transfer/store/registry.js +0 -301
  656. package/packages/@monomind/cli/dist/src/transfer/store/search.d.ts +0 -54
  657. package/packages/@monomind/cli/dist/src/transfer/store/search.js +0 -232
  658. package/packages/@monomind/cli/dist/src/transfer/store/tests/standalone-test.d.ts +0 -12
  659. package/packages/@monomind/cli/dist/src/transfer/store/tests/standalone-test.js +0 -190
  660. package/packages/@monomind/cli/dist/src/transfer/store/types.d.ts +0 -193
  661. package/packages/@monomind/cli/dist/src/transfer/store/types.js +0 -6
  662. package/packages/@monomind/cli/dist/src/transfer/test-seraphine.d.ts +0 -6
  663. package/packages/@monomind/cli/dist/src/transfer/test-seraphine.js +0 -105
  664. package/packages/@monomind/cli/dist/src/transfer/tests/test-store.d.ts +0 -7
  665. package/packages/@monomind/cli/dist/src/transfer/tests/test-store.js +0 -214
  666. package/packages/@monomind/cli/dist/src/transfer/types.d.ts +0 -245
  667. package/packages/@monomind/cli/dist/src/transfer/types.js +0 -6
  668. package/packages/@monomind/cli/dist/src/types.d.ts +0 -198
  669. package/packages/@monomind/cli/dist/src/types.js +0 -38
  670. package/packages/@monomind/cli/dist/src/update/checker.d.ts +0 -34
  671. package/packages/@monomind/cli/dist/src/update/checker.js +0 -198
  672. package/packages/@monomind/cli/dist/src/update/executor.d.ts +0 -32
  673. package/packages/@monomind/cli/dist/src/update/executor.js +0 -186
  674. package/packages/@monomind/cli/dist/src/update/index.d.ts +0 -33
  675. package/packages/@monomind/cli/dist/src/update/index.js +0 -64
  676. package/packages/@monomind/cli/dist/src/update/rate-limiter.d.ts +0 -31
  677. package/packages/@monomind/cli/dist/src/update/rate-limiter.js +0 -116
  678. package/packages/@monomind/cli/dist/src/update/validator.d.ts +0 -17
  679. package/packages/@monomind/cli/dist/src/update/validator.js +0 -118
  680. package/packages/@monomind/cli/dist/src/utils/parse-jsonl.d.ts +0 -6
  681. package/packages/@monomind/cli/dist/src/utils/parse-jsonl.js +0 -22
  682. package/packages/@monomind/cli/dist/src/workflow/condition-evaluator.d.ts +0 -10
  683. package/packages/@monomind/cli/dist/src/workflow/condition-evaluator.js +0 -82
  684. package/packages/@monomind/cli/dist/src/workflow/context-resolver.d.ts +0 -12
  685. package/packages/@monomind/cli/dist/src/workflow/context-resolver.js +0 -23
  686. package/packages/@monomind/cli/dist/src/workflow/dag-builder.d.ts +0 -17
  687. package/packages/@monomind/cli/dist/src/workflow/dag-builder.js +0 -129
  688. package/packages/@monomind/cli/dist/src/workflow/dag-executor.d.ts +0 -9
  689. package/packages/@monomind/cli/dist/src/workflow/dag-executor.js +0 -116
  690. package/packages/@monomind/cli/dist/src/workflow/dag-types.d.ts +0 -41
  691. package/packages/@monomind/cli/dist/src/workflow/dag-types.js +0 -8
  692. package/packages/@monomind/cli/dist/src/workflow/dsl-parser.d.ts +0 -12
  693. package/packages/@monomind/cli/dist/src/workflow/dsl-parser.js +0 -20
  694. package/packages/@monomind/cli/dist/src/workflow/dsl-schema.d.ts +0 -165
  695. package/packages/@monomind/cli/dist/src/workflow/dsl-schema.js +0 -82
  696. package/packages/@monomind/cli/dist/src/workflow/index.d.ts +0 -13
  697. package/packages/@monomind/cli/dist/src/workflow/index.js +0 -11
  698. package/packages/@monomind/cli/dist/src/workflow/template-engine.d.ts +0 -11
  699. package/packages/@monomind/cli/dist/src/workflow/template-engine.js +0 -40
  700. package/packages/@monomind/cli/dist/src/workflow/workflow-executor.d.ts +0 -29
  701. package/packages/@monomind/cli/dist/src/workflow/workflow-executor.js +0 -227
@@ -1,1159 +0,0 @@
1
- /**
2
- * Statusline Configuration Generator (Optimized)
3
- * Creates fast, reliable statusline for V1 progress display
4
- *
5
- * Performance:
6
- * - Single combined git execSync call (not 8+ separate ones)
7
- * - process.memoryUsage() instead of ps aux
8
- * - No recursive test file content reading
9
- * - Shared settings cache
10
- * - Strict 2s timeouts on all shell calls
11
- */
12
- /**
13
- * Generate optimized statusline script
14
- * Output format:
15
- * ▊ Monomind ● user │ ⎇ branch │ Opus 4.6 (1M context)
16
- * ─────────────────────────────────────────────────────
17
- * 🏗️ DDD Domains [●●○○○] 2/5 ⚡ HNSW 150x
18
- * 🤖 Swarm ◉ [ 5/15] 👥 2 🪝 10/17 🟢 CVE 3/3 💾 4MB 🧠 63%
19
- * 🔧 Architecture ADRs ●71% │ DDD ● 13% │ Security ●CLEAN
20
- * 📊 AgentDB Vectors ●3104⚡ │ Size 216KB │ Tests ●6 (~24 cases) │ MCP ●1/1
21
- */
22
- export function generateStatuslineScript(options) {
23
- const maxAgents = options.runtime.maxAgents;
24
- return `#!/usr/bin/env node
25
- /**
26
- * Monomind V1 Statusline Generator (Optimized)
27
- * Displays real-time v1 implementation progress and system status
28
- *
29
- * Usage: node statusline.cjs [--json] [--compact]
30
- *
31
- * Performance notes:
32
- * - Single git execSync call (combines branch + status + upstream)
33
- * - No recursive file reading (only stat/readdir, never read test contents)
34
- * - No ps aux calls (uses process.memoryUsage() + file-based metrics)
35
- * - Strict 2s timeout on all execSync calls
36
- * - Shared settings cache across functions
37
- */
38
-
39
- /* eslint-disable @typescript-eslint/no-var-requires */
40
- const fs = require('fs');
41
- const path = require('path');
42
- const { execSync } = require('child_process');
43
- const os = require('os');
44
-
45
- // Configuration
46
- const CONFIG = {
47
- maxAgents: ${maxAgents},
48
- };
49
-
50
- const CWD = process.env.CLAUDE_PROJECT_DIR || process.cwd();
51
-
52
- // Read monomind version — check global install first, then CWD package.json
53
- function getVersion() {
54
- // 1. Monomind global install: script lives at <install>/packages/@monomind/cli/dist/src/init/
55
- // or user project: .claude/helpers/statusline.cjs
56
- // Walk up to find a monomind package.json (has "name":"monomind" or "@monomind/cli")
57
- const scriptDir = path.dirname(__filename);
58
- const walkCandidates = [
59
- path.join(scriptDir, '..', '..', 'package.json'), // dist/src -> @monomind/cli
60
- path.join(scriptDir, '..', '..', '..', 'package.json'), // -> monomind umbrella
61
- path.join(scriptDir, '..', '..', '..', '..', 'package.json'),
62
- ];
63
- for (const p of walkCandidates) {
64
- try {
65
- const pkg = JSON.parse(fs.readFileSync(p, 'utf-8'));
66
- if (pkg.version && (pkg.name === 'monomind' || pkg.name === '@monomind/cli' || (pkg.name || '').startsWith('@monomind'))) {
67
- return \`v\${pkg.version}\`;
68
- }
69
- } catch { /* ignore */ }
70
- }
71
- // 2. Fallback: npm global prefix
72
- try {
73
- const { execSync } = require('child_process');
74
- const prefix = execSync('npm config get prefix', { encoding: 'utf-8', timeout: 2000 }).trim();
75
- const pkg = JSON.parse(fs.readFileSync(path.join(prefix, 'lib', 'node_modules', 'monomind', 'package.json'), 'utf-8'));
76
- if (pkg.version) return \`v\${pkg.version}\`;
77
- } catch { /* ignore */ }
78
- return 'v1.0.6';
79
- }
80
- const VERSION = getVersion();
81
-
82
- // ANSI colors
83
- const c = {
84
- reset: '\\x1b[0m',
85
- bold: '\\x1b[1m',
86
- dim: '\\x1b[2m',
87
- red: '\\x1b[0;31m',
88
- green: '\\x1b[0;32m',
89
- yellow: '\\x1b[0;33m',
90
- blue: '\\x1b[0;34m',
91
- purple: '\\x1b[0;35m',
92
- cyan: '\\x1b[0;36m',
93
- brightRed: '\\x1b[1;31m',
94
- brightGreen: '\\x1b[1;32m',
95
- brightYellow: '\\x1b[1;33m',
96
- brightBlue: '\\x1b[1;34m',
97
- brightPurple: '\\x1b[1;35m',
98
- brightCyan: '\\x1b[1;36m',
99
- brightWhite: '\\x1b[1;37m',
100
- };
101
-
102
- // Safe execSync with strict timeout (returns empty string on failure)
103
- function safeExec(cmd, timeoutMs = 2000) {
104
- try {
105
- return execSync(cmd, {
106
- encoding: 'utf-8',
107
- timeout: timeoutMs,
108
- stdio: ['pipe', 'pipe', 'pipe'],
109
- }).trim();
110
- } catch {
111
- return '';
112
- }
113
- }
114
-
115
- // Safe JSON file reader (returns null on failure)
116
- function readJSON(filePath) {
117
- try {
118
- if (fs.existsSync(filePath)) {
119
- return JSON.parse(fs.readFileSync(filePath, 'utf-8'));
120
- }
121
- } catch { /* ignore */ }
122
- return null;
123
- }
124
-
125
- // Safe file stat (returns null on failure)
126
- function safeStat(filePath) {
127
- try {
128
- return fs.statSync(filePath);
129
- } catch { /* ignore */ }
130
- return null;
131
- }
132
-
133
- // Shared settings cache — read once, used by multiple functions
134
- let _settingsCache = undefined;
135
- function getSettings() {
136
- if (_settingsCache !== undefined) return _settingsCache;
137
- _settingsCache = readJSON(path.join(CWD, '.claude', 'settings.json'))
138
- || readJSON(path.join(CWD, '.claude', 'settings.local.json'))
139
- || null;
140
- return _settingsCache;
141
- }
142
-
143
- // ─── Data Collection (all pure-Node.js or single-exec) ──────────
144
-
145
- // Get all git info in ONE shell call
146
- function getGitInfo() {
147
- const result = {
148
- name: 'user', gitBranch: '', modified: 0, untracked: 0,
149
- staged: 0, ahead: 0, behind: 0,
150
- };
151
-
152
- // Single shell: get user.name, branch, porcelain status, and upstream diff
153
- const script = [
154
- 'git config user.name 2>/dev/null || echo user',
155
- 'echo "---SEP---"',
156
- 'git branch --show-current 2>/dev/null',
157
- 'echo "---SEP---"',
158
- 'git status --porcelain 2>/dev/null',
159
- 'echo "---SEP---"',
160
- 'git rev-list --left-right --count HEAD...@{upstream} 2>/dev/null || echo "0 0"',
161
- ].join('; ');
162
-
163
- const raw = safeExec(\`sh -c '\${script}'\`, 3000);
164
- if (!raw) return result;
165
-
166
- const parts = raw.split('---SEP---').map(s => s.trim());
167
- if (parts.length >= 4) {
168
- result.name = parts[0] || 'user';
169
- result.gitBranch = parts[1] || '';
170
-
171
- // Parse porcelain status
172
- if (parts[2]) {
173
- for (const line of parts[2].split('\\n')) {
174
- if (!line || line.length < 2) continue;
175
- const x = line[0], y = line[1];
176
- if (x === '?' && y === '?') { result.untracked++; continue; }
177
- if (x !== ' ' && x !== '?') result.staged++;
178
- if (y !== ' ' && y !== '?') result.modified++;
179
- }
180
- }
181
-
182
- // Parse ahead/behind
183
- const ab = (parts[3] || '0 0').split(/\\s+/);
184
- result.ahead = parseInt(ab[0]) || 0;
185
- result.behind = parseInt(ab[1]) || 0;
186
- }
187
-
188
- return result;
189
- }
190
-
191
- // Normalise a model ID string to a short display name
192
- function modelLabel(id) {
193
- if (id.includes('opus')) return 'Opus 4.6';
194
- if (id.includes('sonnet')) return 'Sonnet 4.6';
195
- if (id.includes('haiku')) return 'Haiku 4.5';
196
- return id.split('-').slice(1, 3).join(' ');
197
- }
198
-
199
- // Read the last assistant model from the most recent session JSONL.
200
- // Claude Code writes each assistant turn to ~/.claude/projects/<escaped-cwd>/<uuid>.jsonl
201
- // with a "message.model" field — this is the most accurate live source and
202
- // correctly reflects /model session overrides.
203
- function getModelFromSessionJSONL() {
204
- try {
205
- // Escape CWD the same way Claude Code does: replace '/' with '-'
206
- const escaped = CWD.replace(/\\//g, '-');
207
- const projectsDir = path.join(os.homedir(), '.claude', 'projects', escaped);
208
- if (!fs.existsSync(projectsDir)) return null;
209
-
210
- // Most recently modified JSONL = current (or latest) session
211
- const files = fs.readdirSync(projectsDir)
212
- .filter(f => f.endsWith('.jsonl'))
213
- .map(f => ({ f, mt: (() => { try { return fs.statSync(path.join(projectsDir, f)).mtimeMs; } catch { return 0; } })() }))
214
- .sort((a, b) => b.mt - a.mt);
215
- if (files.length === 0) return null;
216
-
217
- const sessionFile = path.join(projectsDir, files[0].f);
218
- const raw = fs.readFileSync(sessionFile, 'utf-8');
219
- const lines = raw.split('\\n').filter(Boolean);
220
-
221
- // Scan from the end to find the most recent assistant model
222
- for (let i = lines.length - 1; i >= 0; i--) {
223
- try {
224
- const entry = JSON.parse(lines[i]);
225
- const model = entry?.message?.model || entry?.model;
226
- if (model && typeof model === 'string' && model.startsWith('claude')) {
227
- return model;
228
- }
229
- } catch { /* skip malformed line */ }
230
- }
231
- } catch { /* ignore */ }
232
- return null;
233
- }
234
-
235
- // Detect model name from Claude config (pure file reads, no exec)
236
- function getModelName() {
237
- // PRIMARY: scan the live session JSONL — reflects /model overrides in real time
238
- const sessionModel = getModelFromSessionJSONL();
239
- if (sessionModel) return modelLabel(sessionModel);
240
-
241
- // SECONDARY: ~/.claude.json lastModelUsage for this exact project path
242
- // (longest-prefix match to avoid short paths like /Users matching first)
243
- try {
244
- const claudeConfig = readJSON(path.join(os.homedir(), '.claude.json'));
245
- if (claudeConfig?.projects) {
246
- let bestMatch = null;
247
- let bestLen = -1;
248
- for (const [projectPath, projectConfig] of Object.entries(claudeConfig.projects)) {
249
- if (CWD === projectPath || CWD.startsWith(projectPath + '/')) {
250
- if (projectPath.length > bestLen) {
251
- bestLen = projectPath.length;
252
- bestMatch = projectConfig;
253
- }
254
- }
255
- }
256
- if (bestMatch?.lastModelUsage) {
257
- const usage = bestMatch.lastModelUsage;
258
- const ids = Object.keys(usage);
259
- if (ids.length > 0) {
260
- let bestId = ids[ids.length - 1];
261
- let bestTokens = -1;
262
- for (const id of ids) {
263
- const e = usage[id] || {};
264
- const tokens = (e.inputTokens || 0) + (e.outputTokens || 0);
265
- if (tokens > bestTokens) { bestTokens = tokens; bestId = id; }
266
- }
267
- return modelLabel(bestId);
268
- }
269
- }
270
- }
271
- } catch { /* ignore */ }
272
-
273
- // TERTIARY: settings.json model field (configured default, not live session).
274
- const settings = getSettings();
275
- if (settings?.model) return modelLabel(settings.model);
276
-
277
- // QUATERNARY: read ANTHROPIC_MODEL or CLAUDE_MODEL env var (set by the CLI at launch)
278
- const envModel = process.env.ANTHROPIC_MODEL || process.env.CLAUDE_MODEL || process.env.MODEL;
279
- if (envModel && envModel.startsWith('claude')) return modelLabel(envModel);
280
-
281
- // QUINARY: current model from the model ID in the env injected by Claude Code itself
282
- const claudeModel = process.env.CLAUDE_CODE_MODEL;
283
- if (claudeModel) return modelLabel(claudeModel);
284
-
285
- return 'Sonnet 4.6'; // known current default rather than the generic "Claude Code"
286
- }
287
-
288
- // Get learning stats from memory database (pure stat calls)
289
- function getLearningStats() {
290
- const memoryPaths = [
291
- path.join(CWD, '.swarm', 'memory.db'),
292
- path.join(CWD, '.monomind', 'memory.db'),
293
- path.join(CWD, '.claude', 'memory.db'),
294
- path.join(CWD, 'data', 'memory.db'),
295
- path.join(CWD, '.agentdb', 'memory.db'),
296
- ];
297
-
298
- for (const dbPath of memoryPaths) {
299
- const stat = safeStat(dbPath);
300
- if (stat) {
301
- const sizeKB = stat.size / 1024;
302
- const patterns = Math.floor(sizeKB / 2);
303
- return {
304
- patterns,
305
- sessions: Math.max(1, Math.floor(patterns / 10)),
306
- };
307
- }
308
- }
309
-
310
- // Check session files count
311
- let sessions = 0;
312
- try {
313
- const sessDir = path.join(CWD, '.claude', 'sessions');
314
- if (fs.existsSync(sessDir)) {
315
- sessions = fs.readdirSync(sessDir).filter(f => f.endsWith('.json')).length;
316
- }
317
- } catch { /* ignore */ }
318
-
319
- return { patterns: 0, sessions };
320
- }
321
-
322
- // progress from metrics files (pure file reads)
323
- function getv1Progress() {
324
- const learning = getLearningStats();
325
- const totalDomains = 5;
326
-
327
- const dddData = readJSON(path.join(CWD, '.monomind', 'metrics', 'ddd-progress.json'));
328
- let dddProgress = dddData?.progress || 0;
329
- let domainsCompleted = Math.min(5, Math.floor(dddProgress / 20));
330
-
331
- if (dddProgress === 0 && learning.patterns > 0) {
332
- if (learning.patterns >= 500) domainsCompleted = 5;
333
- else if (learning.patterns >= 200) domainsCompleted = 4;
334
- else if (learning.patterns >= 100) domainsCompleted = 3;
335
- else if (learning.patterns >= 50) domainsCompleted = 2;
336
- else if (learning.patterns >= 10) domainsCompleted = 1;
337
- dddProgress = Math.floor((domainsCompleted / totalDomains) * 100);
338
- }
339
-
340
- return {
341
- domainsCompleted, totalDomains, dddProgress,
342
- patternsLearned: learning.patterns,
343
- sessionsCompleted: learning.sessions,
344
- };
345
- }
346
-
347
- // Security status (pure file reads)
348
- function getSecurityStatus() {
349
- const auditData = readJSON(path.join(CWD, '.monomind', 'security', 'audit-status.json'));
350
- if (auditData) {
351
- const auditDate = auditData.lastAudit || auditData.lastScan;
352
- if (!auditDate) {
353
- // No audit has ever run — show as pending, not stale
354
- return { status: 'PENDING', cvesFixed: 0, totalCves: 0 };
355
- }
356
- const auditAge = Date.now() - new Date(auditDate).getTime();
357
- const isStale = auditAge > 7 * 24 * 60 * 60 * 1000;
358
- return {
359
- status: isStale ? 'STALE' : (auditData.status || 'PENDING'),
360
- cvesFixed: auditData.cvesFixed || 0,
361
- totalCves: auditData.totalCves || 0,
362
- };
363
- }
364
-
365
- let scanCount = 0;
366
- try {
367
- const scanDir = path.join(CWD, '.claude', 'security-scans');
368
- if (fs.existsSync(scanDir)) {
369
- scanCount = fs.readdirSync(scanDir).filter(f => f.endsWith('.json')).length;
370
- }
371
- } catch { /* ignore */ }
372
-
373
- return {
374
- status: scanCount > 0 ? 'SCANNED' : 'NONE',
375
- cvesFixed: 0,
376
- totalCves: 0,
377
- };
378
- }
379
-
380
- // Swarm status (pure file reads, NO ps aux)
381
- function getSwarmStatus() {
382
- const staleThresholdMs = 5 * 60 * 1000;
383
- const agentRegTtlMs = 30 * 60 * 1000; // registration files expire after 30 min
384
- const now = Date.now();
385
-
386
- // PRIMARY: count live registration files written by SubagentStart hook
387
- // Each file = one active sub-agent. Stale files (>30 min) are ignored.
388
- const regDir = path.join(CWD, '.monomind', 'agents', 'registrations');
389
- if (fs.existsSync(regDir)) {
390
- try {
391
- const files = fs.readdirSync(regDir).filter(f => f.endsWith('.json'));
392
- const liveCount = files.filter(f => {
393
- try {
394
- return (now - fs.statSync(path.join(regDir, f)).mtimeMs) < agentRegTtlMs;
395
- } catch { return false; }
396
- }).length;
397
- if (liveCount > 0) {
398
- return {
399
- activeAgents: liveCount,
400
- maxAgents: CONFIG.maxAgents,
401
- coordinationActive: true,
402
- };
403
- }
404
- } catch { /* fall through */ }
405
- }
406
-
407
- // SECONDARY: swarm-state.json written by MCP swarm_init — trust if fresh
408
- const swarmStatePath = path.join(CWD, '.monomind', 'swarm', 'swarm-state.json');
409
- const swarmState = readJSON(swarmStatePath);
410
- if (swarmState) {
411
- const updatedAt = swarmState.updatedAt || swarmState.startedAt;
412
- const age = updatedAt ? now - new Date(updatedAt).getTime() : Infinity;
413
- if (age < staleThresholdMs) {
414
- return {
415
- activeAgents: swarmState.agents?.length || swarmState.agentCount || 0,
416
- maxAgents: swarmState.maxAgents || CONFIG.maxAgents,
417
- coordinationActive: true,
418
- };
419
- }
420
- }
421
-
422
- // TERTIARY: swarm-activity.json refreshed by post-task hook
423
- const activityData = readJSON(path.join(CWD, '.monomind', 'metrics', 'swarm-activity.json'));
424
- if (activityData?.swarm) {
425
- const updatedAt = activityData.timestamp || activityData.swarm.timestamp;
426
- const age = updatedAt ? now - new Date(updatedAt).getTime() : Infinity;
427
- if (age < staleThresholdMs) {
428
- return {
429
- activeAgents: activityData.swarm.agent_count || 0,
430
- maxAgents: CONFIG.maxAgents,
431
- coordinationActive: activityData.swarm.coordination_active || activityData.swarm.active || false,
432
- };
433
- }
434
- }
435
-
436
- return { activeAgents: 0, maxAgents: CONFIG.maxAgents, coordinationActive: false };
437
- }
438
-
439
- // System metrics (uses process.memoryUsage() — no shell spawn)
440
- function getSystemMetrics() {
441
- const memoryMB = Math.floor(process.memoryUsage().heapUsed / 1024 / 1024);
442
- const learning = getLearningStats();
443
- const agentdb = getAgentDBStats();
444
-
445
- // Intelligence from learning.json
446
- const learningData = readJSON(path.join(CWD, '.monomind', 'metrics', 'learning.json'));
447
- let intelligencePct = 0;
448
- let contextPct = 0;
449
-
450
- if (learningData?.intelligence?.score !== undefined) {
451
- intelligencePct = Math.min(100, Math.floor(learningData.intelligence.score));
452
- } else {
453
- // Use actual vector/entry counts — 2000 entries = 100%
454
- const fromPatterns = learning.patterns > 0 ? Math.min(100, Math.floor(learning.patterns / 20)) : 0;
455
- const fromVectors = agentdb.vectorCount > 0 ? Math.min(100, Math.floor(agentdb.vectorCount / 20)) : 0;
456
- intelligencePct = Math.max(fromPatterns, fromVectors);
457
- }
458
-
459
- // Maturity fallback (pure fs checks, no git exec)
460
- if (intelligencePct === 0) {
461
- let score = 0;
462
- if (fs.existsSync(path.join(CWD, '.claude'))) score += 15;
463
- const srcDirs = ['src', 'lib', 'app', 'packages', 'v1'];
464
- for (const d of srcDirs) { if (fs.existsSync(path.join(CWD, d))) { score += 15; break; } }
465
- const testDirs = ['tests', 'test', '__tests__', 'spec'];
466
- for (const d of testDirs) { if (fs.existsSync(path.join(CWD, d))) { score += 10; break; } }
467
- const cfgFiles = ['package.json', 'tsconfig.json', 'pyproject.toml', 'Cargo.toml', 'go.mod'];
468
- for (const f of cfgFiles) { if (fs.existsSync(path.join(CWD, f))) { score += 5; break; } }
469
- intelligencePct = Math.min(100, score);
470
- }
471
-
472
- if (learningData?.sessions?.total !== undefined) {
473
- contextPct = Math.min(100, learningData.sessions.total * 5);
474
- } else {
475
- contextPct = Math.min(100, Math.floor(learning.sessions * 5));
476
- }
477
-
478
- // Sub-agents from file metrics (no ps aux)
479
- let subAgents = 0;
480
- const activityData = readJSON(path.join(CWD, '.monomind', 'metrics', 'swarm-activity.json'));
481
- if (activityData?.processes?.estimated_agents) {
482
- subAgents = activityData.processes.estimated_agents;
483
- }
484
-
485
- return { memoryMB, contextPct, intelligencePct, subAgents };
486
- }
487
-
488
- // ADR status (count files only — don't read contents)
489
- function getADRStatus() {
490
- // Count actual ADR files first — compliance JSON may be stale
491
- const adrPaths = [
492
- path.join(CWD, 'packages', 'implementation', 'adrs'),
493
- path.join(CWD, 'docs', 'adrs'),
494
- path.join(CWD, '.monomind', 'adrs'),
495
- ];
496
-
497
- for (const adrPath of adrPaths) {
498
- try {
499
- if (fs.existsSync(adrPath)) {
500
- const files = fs.readdirSync(adrPath).filter(f =>
501
- f.endsWith('.md') && (f.startsWith('ADR-') || f.startsWith('adr-') || /^\\d{4}-/.test(f))
502
- );
503
- // Report actual count — don't guess compliance without reading files
504
- return { count: files.length, implemented: files.length, compliance: 0 };
505
- }
506
- } catch { /* ignore */ }
507
- }
508
-
509
- return { count: 0, implemented: 0, compliance: 0 };
510
- }
511
-
512
- // Hooks status (shared settings cache)
513
- function getHooksStatus() {
514
- let enabled = 0;
515
- let total = 0;
516
- const settings = getSettings();
517
-
518
- if (settings?.hooks) {
519
- for (const category of Object.keys(settings.hooks)) {
520
- const matchers = settings.hooks[category];
521
- if (!Array.isArray(matchers)) continue;
522
- for (const matcher of matchers) {
523
- const hooks = matcher?.hooks;
524
- if (Array.isArray(hooks)) {
525
- total += hooks.length;
526
- enabled += hooks.length;
527
- }
528
- }
529
- }
530
- }
531
-
532
- try {
533
- const hooksDir = path.join(CWD, '.claude', 'hooks');
534
- if (fs.existsSync(hooksDir)) {
535
- const hookFiles = fs.readdirSync(hooksDir).filter(f => f.endsWith('.js') || f.endsWith('.sh')).length;
536
- total = Math.max(total, hookFiles);
537
- enabled = Math.max(enabled, hookFiles);
538
- }
539
- } catch { /* ignore */ }
540
-
541
- return { enabled, total };
542
- }
543
-
544
- // Active agent — reads last routing result persisted by hook-handler
545
- function getActiveAgent() {
546
- const routeFile = path.join(CWD, '.monomind', 'last-route.json');
547
- try {
548
- if (!fs.existsSync(routeFile)) return null;
549
- const data = JSON.parse(fs.readFileSync(routeFile, 'utf-8'));
550
- if (!data || !data.agent) return null;
551
-
552
- // Stale after 30 minutes (session likely changed)
553
- const age = Date.now() - new Date(data.updatedAt || 0).getTime();
554
- if (age > 30 * 60 * 1000) return null;
555
-
556
- // Prefer display name if set (from load-agent), else format the slug
557
- const displayName = data.name || data.agent
558
- .replace(/-/g, ' ')
559
- .replace(/\\b\\w/g, c => c.toUpperCase());
560
-
561
- return {
562
- slug: data.agent,
563
- name: displayName,
564
- category: data.category || null,
565
- confidence: data.confidence || 0,
566
- activated: data.activated || false, // true = manually loaded extras agent
567
- };
568
- } catch { return null; }
569
- }
570
-
571
- // AgentDB stats — count real entries, not file-size heuristics
572
- function getAgentDBStats() {
573
- let vectorCount = 0;
574
- let dbSizeKB = 0;
575
- let namespaces = 0;
576
- let hasHnsw = false;
577
-
578
- // 1. Count real entries from auto-memory-store.json
579
- const storePath = path.join(CWD, '.monomind', 'data', 'auto-memory-store.json');
580
- const storeStat = safeStat(storePath);
581
- if (storeStat) {
582
- dbSizeKB += storeStat.size / 1024;
583
- try {
584
- const store = JSON.parse(fs.readFileSync(storePath, 'utf-8'));
585
- if (Array.isArray(store)) vectorCount += store.length;
586
- else if (store?.entries) vectorCount += store.entries.length;
587
- } catch { /* fall back to size estimate */ }
588
- }
589
-
590
- // 2. Count entries from ranked-context.json
591
- const rankedPath = path.join(CWD, '.monomind', 'data', 'ranked-context.json');
592
- try {
593
- const ranked = readJSON(rankedPath);
594
- if (ranked?.entries?.length > vectorCount) vectorCount = ranked.entries.length;
595
- } catch { /* ignore */ }
596
-
597
- // 3. Add DB file sizes
598
- const dbFiles = [
599
- path.join(CWD, 'data', 'memory.db'),
600
- path.join(CWD, '.monomind', 'memory.db'),
601
- path.join(CWD, '.swarm', 'memory.db'),
602
- ];
603
- for (const f of dbFiles) {
604
- const stat = safeStat(f);
605
- if (stat) {
606
- dbSizeKB += stat.size / 1024;
607
- namespaces++;
608
- }
609
- }
610
-
611
- // 4. Check for graph data
612
- const graphPath = path.join(CWD, 'data', 'memory.graph');
613
- const graphStat = safeStat(graphPath);
614
- if (graphStat) dbSizeKB += graphStat.size / 1024;
615
-
616
- // 5. HNSW index
617
- const hnswPaths = [
618
- path.join(CWD, '.swarm', 'hnsw.index'),
619
- path.join(CWD, '.monomind', 'hnsw.index'),
620
- ];
621
- for (const p of hnswPaths) {
622
- const stat = safeStat(p);
623
- if (stat) {
624
- hasHnsw = true;
625
- break;
626
- }
627
- }
628
-
629
- // HNSW is available if memory package is present
630
- if (!hasHnsw) {
631
- const memPkgPaths = [
632
- path.join(CWD, 'packages', '@monomind', 'memory', 'dist'),
633
- path.join(CWD, 'node_modules', '@monomind', 'memory'),
634
- ];
635
- for (const p of memPkgPaths) {
636
- if (fs.existsSync(p)) { hasHnsw = true; break; }
637
- }
638
- }
639
-
640
- return { vectorCount, dbSizeKB: Math.floor(dbSizeKB), namespaces, hasHnsw };
641
- }
642
-
643
- // Test stats (count files only — NO reading file contents)
644
- function getTestStats() {
645
- let testFiles = 0;
646
-
647
- function countTestFiles(dir, depth = 0) {
648
- if (depth > 6) return;
649
- try {
650
- if (!fs.existsSync(dir)) return;
651
- const entries = fs.readdirSync(dir, { withFileTypes: true });
652
- for (const entry of entries) {
653
- if (entry.isDirectory() && !entry.name.startsWith('.') && entry.name !== 'node_modules') {
654
- countTestFiles(path.join(dir, entry.name), depth + 1);
655
- } else if (entry.isFile()) {
656
- const n = entry.name;
657
- if (n.includes('.test.') || n.includes('.spec.') || n.includes('_test.') || n.includes('_spec.')) {
658
- testFiles++;
659
- }
660
- }
661
- }
662
- } catch { /* ignore */ }
663
- }
664
-
665
- // Scan all source directories
666
- for (const d of ['tests', 'test', '__tests__', 'src', 'v1']) {
667
- countTestFiles(path.join(CWD, d));
668
- }
669
-
670
- // Estimate ~4 test cases per file (avoids reading every file)
671
- return { testFiles, testCases: testFiles * 4 };
672
- }
673
-
674
- // Integration status (shared settings + file checks)
675
- function getIntegrationStatus() {
676
- const mcpServers = { total: 0, enabled: 0 };
677
- const settings = getSettings();
678
-
679
- if (settings?.mcpServers && typeof settings.mcpServers === 'object') {
680
- const servers = Object.keys(settings.mcpServers);
681
- mcpServers.total = servers.length;
682
- mcpServers.enabled = settings.enabledMcpjsonServers
683
- ? settings.enabledMcpjsonServers.filter(s => servers.includes(s)).length
684
- : servers.length;
685
- }
686
-
687
- // Fallback: .mcp.json
688
- if (mcpServers.total === 0) {
689
- const mcpConfig = readJSON(path.join(CWD, '.mcp.json'))
690
- || readJSON(path.join(os.homedir(), '.claude', 'mcp.json'));
691
- if (mcpConfig?.mcpServers) {
692
- const s = Object.keys(mcpConfig.mcpServers);
693
- mcpServers.total = s.length;
694
- mcpServers.enabled = s.length;
695
- }
696
- }
697
-
698
- const hasDatabase = ['.swarm/memory.db', '.monomind/memory.db', 'data/memory.db']
699
- .some(p => fs.existsSync(path.join(CWD, p)));
700
- const hasApi = !!(process.env.ANTHROPIC_API_KEY || process.env.OPENAI_API_KEY);
701
-
702
- return { mcpServers, hasDatabase, hasApi };
703
- }
704
-
705
- // Session stats (pure file reads)
706
- function getSessionStats() {
707
- for (const p of ['.monomind/session.json', '.claude/session.json']) {
708
- const data = readJSON(path.join(CWD, p));
709
- if (data?.startTime) {
710
- const diffMs = Date.now() - new Date(data.startTime).getTime();
711
- const mins = Math.floor(diffMs / 60000);
712
- const duration = mins < 60 ? \`\${mins}m\` : \`\${Math.floor(mins / 60)}h\${mins % 60}m\`;
713
- return { duration };
714
- }
715
- }
716
- return { duration: '' };
717
- }
718
-
719
- // ─── Extended 256-color palette ─────────────────────────────────
720
- const x = {
721
- // Backgrounds (used sparingly for labels)
722
- bgPurple: '\\x1b[48;5;55m',
723
- bgTeal: '\\x1b[48;5;23m',
724
- bgReset: '\\x1b[49m',
725
- // Foregrounds
726
- purple: '\\x1b[38;5;141m', // soft lavender-purple (brand)
727
- violet: '\\x1b[38;5;99m', // deeper purple
728
- teal: '\\x1b[38;5;51m', // bright teal
729
- mint: '\\x1b[38;5;120m', // soft green
730
- gold: '\\x1b[38;5;220m', // warm gold
731
- orange: '\\x1b[38;5;208m', // alert orange
732
- coral: '\\x1b[38;5;203m', // error red-pink
733
- sky: '\\x1b[38;5;117m', // soft blue
734
- rose: '\\x1b[38;5;218m', // warm pink
735
- slate: '\\x1b[38;5;245m', // neutral grey
736
- white: '\\x1b[38;5;255m', // bright white
737
- green: '\\x1b[38;5;82m', // vivid green
738
- red: '\\x1b[38;5;196m', // vivid red
739
- yellow: '\\x1b[38;5;226m', // vivid yellow
740
- // Shared
741
- bold: '\\x1b[1m',
742
- dim: '\\x1b[2m',
743
- reset: '\\x1b[0m',
744
- };
745
-
746
- // ── Helpers ──────────────────────────────────────────────────────
747
-
748
- // Block progress bar: ▰▰▰▱▱ (5 blocks)
749
- function blockBar(current, total, width = 5) {
750
- const filled = Math.min(width, Math.round((current / Math.max(total, 1)) * width));
751
- return '\\u25B0'.repeat(filled) + \`\${x.slate}\\u25B1\${x.reset}\`.repeat(width - filled);
752
- }
753
-
754
- // Health dot: ● colored by status
755
- function dot(ok) {
756
- if (ok === 'good') return \`\${x.green}●\${x.reset}\`;
757
- if (ok === 'warn') return \`\${x.gold}●\${x.reset}\`;
758
- if (ok === 'error') return \`\${x.coral}●\${x.reset}\`;
759
- return \`\${x.slate}●\${x.reset}\`; // 'none'
760
- }
761
-
762
- // Pill badge: [ LABEL ] with background
763
- function badge(label, color) {
764
- return \`\${color}[\${label}]\${x.reset}\`;
765
- }
766
-
767
- // Divider character
768
- const DIV = \`\${x.slate}│\${x.reset}\`;
769
- const SEP = \`\${x.slate}──────────────────────────────────────────────────────\${x.reset}\`;
770
-
771
- // Pct → color
772
- function pctColor(pct) {
773
- if (pct >= 75) return x.green;
774
- if (pct >= 40) return x.gold;
775
- if (pct > 0) return x.orange;
776
- return x.slate;
777
- }
778
-
779
- // Security status → label + color
780
- function secBadge(status) {
781
- if (status === 'CLEAN') return { label: '✔ CLEAN', col: x.green };
782
- if (status === 'STALE') return { label: '⟳ STALE', col: x.gold };
783
- if (status === 'IN_PROGRESS') return { label: '⟳ RUNNING', col: x.sky };
784
- if (status === 'SCANNED') return { label: '✔ SCANNED', col: x.mint };
785
- if (status === 'PENDING') return { label: '⏸ PENDING', col: x.gold };
786
- return { label: '✖ NONE', col: x.slate };
787
- }
788
-
789
- // ── Knowledge & trigger stats (Tasks 28 + 32) ────────────────────
790
- function getKnowledgeStats() {
791
- const chunksPath = path.join(CWD, '.monomind', 'knowledge', 'chunks.jsonl');
792
- const skillsPath = path.join(CWD, '.monomind', 'skills.jsonl');
793
- let chunks = 0, skills = 0;
794
- try {
795
- if (fs.existsSync(chunksPath)) {
796
- chunks = fs.readFileSync(chunksPath, 'utf-8').split('\\n').filter(Boolean).length;
797
- }
798
- } catch { /* ignore */ }
799
- try {
800
- if (fs.existsSync(skillsPath)) {
801
- skills = fs.readFileSync(skillsPath, 'utf-8').split('\\n').filter(Boolean).length;
802
- }
803
- } catch { /* ignore */ }
804
- return { chunks, skills };
805
- }
806
-
807
- function getTriggerStats() {
808
- const indexPath = path.join(CWD, '.monomind', 'trigger-index.json');
809
- try {
810
- if (!fs.existsSync(indexPath)) return { triggers: 0, agents: 0 };
811
- const raw = JSON.parse(fs.readFileSync(indexPath, 'utf-8'));
812
- const idx = raw.index || raw;
813
- const triggers = Object.keys(idx).length;
814
- const agents = Object.values(idx).flat().length;
815
- return { triggers, agents };
816
- } catch { return { triggers: 0, agents: 0 }; }
817
- }
818
-
819
- function getSIBudget() {
820
- const SI_LIMIT = 1500;
821
- const siPath = path.join(CWD, '.agents', 'shared_instructions.md');
822
- try {
823
- if (!fs.existsSync(siPath)) return null;
824
- const len = fs.readFileSync(siPath, 'utf-8').length;
825
- return { len, pct: Math.round((len / SI_LIMIT) * 100), limit: SI_LIMIT };
826
- } catch { return null; }
827
- }
828
-
829
- // ── Single-line statusline (compact) ─────────────────────────────
830
- function generateStatusline() {
831
- const git = getGitInfo();
832
- const swarm = getSwarmStatus();
833
- const system = getSystemMetrics();
834
- const hooks = getHooksStatus();
835
- const knowledge = getKnowledgeStats();
836
- const triggers = getTriggerStats();
837
- const parts = [];
838
-
839
- // Brand + swarm dot
840
- const swarmDot = swarm.coordinationActive ? \`\${x.green}●\${x.reset}\` : \`\${x.slate}○\${x.reset}\`;
841
- parts.push(\`\${x.bold}\${x.purple}▊ Monomind\${x.reset} \${swarmDot}\`);
842
-
843
- // Git branch + changes (compact)
844
- if (git.gitBranch) {
845
- let b = \`\${x.sky}⎇ \${x.bold}\${git.gitBranch}\${x.reset}\`;
846
- if (git.staged > 0) b += \` \${x.green}+\${git.staged}\${x.reset}\`;
847
- if (git.modified > 0) b += \` \${x.gold}~\${git.modified}\${x.reset}\`;
848
- if (git.ahead > 0) b += \` \${x.green}↑\${git.ahead}\${x.reset}\`;
849
- if (git.behind > 0) b += \` \${x.coral}↓\${git.behind}\${x.reset}\`;
850
- parts.push(b);
851
- }
852
-
853
- // Model
854
- parts.push(\`\${x.violet}\${getModelName()}\${x.reset}\`);
855
-
856
- // Active agent
857
- const activeAgent = getActiveAgent();
858
- if (activeAgent) {
859
- const col = activeAgent.activated ? x.green : x.sky;
860
- const icon = activeAgent.activated ? '●' : '→';
861
- parts.push(\`\${col}\${icon} \${x.bold}\${activeAgent.name}\${x.reset}\`);
862
- }
863
-
864
- // Intelligence
865
- const ic = pctColor(system.intelligencePct);
866
- parts.push(\`\${ic}💡 \${system.intelligencePct}%\${x.reset}\`);
867
-
868
- // Knowledge chunks (Task 28) — show when populated
869
- if (knowledge.chunks > 0) {
870
- parts.push(\`\${x.teal}📚 \${knowledge.chunks}k\${x.reset}\`);
871
- }
872
-
873
- // Triggers (Task 32) — show when populated
874
- if (triggers.triggers > 0) {
875
- parts.push(\`\${x.mint}🎯 \${triggers.triggers}t\${x.reset}\`);
876
- }
877
-
878
- // Swarm agents (only when active)
879
- if (swarm.activeAgents > 0) {
880
- parts.push(\`\${x.gold}🐝 \${swarm.activeAgents}/\${swarm.maxAgents}\${x.reset}\`);
881
- }
882
-
883
- // Hooks
884
- if (hooks.enabled > 0) {
885
- parts.push(\`\${x.mint}⚡ \${hooks.enabled}h\${x.reset}\`);
886
- }
887
-
888
- return parts.join(\` \${DIV} \`);
889
- }
890
-
891
- // ── Multi-line dashboard (full mode) ─────────────────────────────
892
- function generateDashboard() {
893
- const git = getGitInfo();
894
- const modelName = getModelName();
895
- const progress = getv1Progress();
896
- const security = getSecurityStatus();
897
- const swarm = getSwarmStatus();
898
- const system = getSystemMetrics();
899
- const adrs = getADRStatus();
900
- const hooks = getHooksStatus();
901
- const agentdb = getAgentDBStats();
902
- const tests = getTestStats();
903
- const session = getSessionStats();
904
- const integration = getIntegrationStatus();
905
- const knowledge = getKnowledgeStats();
906
- const triggers = getTriggerStats();
907
- const si = getSIBudget();
908
- const sec = secBadge(security.status);
909
- const activeAgent = getActiveAgent();
910
- const lines = [];
911
-
912
- // ── Header: brand + git + model + session ────────────────────
913
- const swarmDot = swarm.coordinationActive ? \`\${x.green}● LIVE\${x.reset}\` : \`\${x.slate}○ IDLE\${x.reset}\`;
914
- const projName = getProjectName();
915
- const cwdName = path.basename(CWD);
916
- let hdr = \`\${x.bold}\${x.purple}▊ Monomind \${VERSION}\${x.reset} \${swarmDot} \${x.teal}\${x.bold}\${projName}\${x.reset} \${DIV} \${x.dim}◎ \${cwdName}\${x.reset} \${DIV} \${x.violet}⬡ \${git.name}\${x.reset}\`;
917
-
918
- if (git.gitBranch) {
919
- hdr += \` \${DIV} \${x.sky}⎇ \${x.bold}\${git.gitBranch}\${x.reset}\`;
920
- if (git.staged > 0) hdr += \` \${x.green}+\${git.staged}\${x.reset}\`;
921
- if (git.modified > 0) hdr += \` \${x.gold}~\${git.modified} mod\${x.reset}\`;
922
- if (git.untracked > 0) hdr += \` \${x.slate}?\${git.untracked}\${x.reset}\`;
923
- if (git.ahead > 0) hdr += \` \${x.green}↑\${git.ahead}\${x.reset}\`;
924
- if (git.behind > 0) hdr += \` \${x.coral}↓\${git.behind}\${x.reset}\`;
925
- }
926
-
927
- hdr += \` \${DIV} 🤖 \${x.violet}\${x.bold}\${modelName}\${x.reset}\`;
928
- if (session.duration) hdr += \` \${x.dim}⏱ \${session.duration}\${x.reset}\`;
929
-
930
- lines.push(hdr);
931
- lines.push(SEP);
932
-
933
- // ── Row 1: Intelligence & Learning ───────────────────────────
934
- const intellCol = pctColor(system.intelligencePct);
935
- const intellBar = blockBar(system.intelligencePct, 100, 6);
936
-
937
- // Knowledge (Task 28)
938
- const knowStr = knowledge.chunks > 0
939
- ? \`\${x.teal}📚 \${x.bold}\${knowledge.chunks}\${x.reset}\${x.slate} chunks\${x.reset}\`
940
- : \`\${x.slate}📚 no chunks\${x.reset}\`;
941
-
942
- // Skills (Task 45)
943
- const skillStr = knowledge.skills > 0
944
- ? \` \${x.mint}✦ \${knowledge.skills} skills\${x.reset}\`
945
- : '';
946
-
947
- // Patterns
948
- const patStr = progress.patternsLearned > 0
949
- ? \`\${x.gold}\${progress.patternsLearned >= 1000 ? (progress.patternsLearned / 1000).toFixed(1) + 'k' : progress.patternsLearned} patterns\${x.reset}\`
950
- : \`\${x.slate}0 patterns\${x.reset}\`;
951
-
952
- lines.push(
953
- \`\${x.purple}💡 INTEL\${x.reset} \` +
954
- \`\${intellCol}\${intellBar} \${x.bold}\${system.intelligencePct}%\${x.reset} \${DIV} \` +
955
- \`\${knowStr}\${skillStr} \${DIV} \` +
956
- patStr
957
- );
958
- lines.push(SEP);
959
-
960
- // ── Row 2: Agents & Triggers ──────────────────────────────────
961
- const agentCol = swarm.activeAgents > 0 ? x.green : x.slate;
962
- const hookCol = hooks.enabled > 0 ? x.mint : x.slate;
963
-
964
- // Triggers (Task 32)
965
- const trigStr = triggers.triggers > 0
966
- ? \`\${x.mint}🎯 \${x.bold}\${triggers.triggers}\${x.reset}\${x.slate} triggers · \${triggers.agents} agents\${x.reset}\`
967
- : \`\${x.slate}🎯 no triggers\${x.reset}\`;
968
-
969
- // Active agent badge
970
- let agentBadge;
971
- if (activeAgent) {
972
- const col = activeAgent.activated ? x.green : x.sky;
973
- const mark = activeAgent.activated ? '● ACTIVE' : '→ ROUTED';
974
- const conf = activeAgent.activated ? '' : \` \${x.slate}\${(activeAgent.confidence * 100).toFixed(0)}%\${x.reset}\`;
975
- const cat = activeAgent.category ? \` \${x.slate}[\${activeAgent.category}]\${x.reset}\` : '';
976
- agentBadge = \`\${col}\${x.bold}\${mark}\${x.reset} \${col}👤 \${x.bold}\${activeAgent.name}\${x.reset}\${cat}\${conf}\`;
977
- } else {
978
- agentBadge = \`\${x.slate}👤 no agent routed\${x.reset}\`;
979
- }
980
-
981
- lines.push(
982
- \`\${x.gold}🐝 SWARM\${x.reset} \` +
983
- \`\${agentCol}\${x.bold}\${swarm.activeAgents}\${x.reset}\${x.slate}/\${x.reset}\${x.white}\${swarm.maxAgents}\${x.reset} agents \` +
984
- \`\${hookCol}⚡ \${hooks.enabled}/\${hooks.total} hooks\${x.reset} \${DIV} \` +
985
- \`\${trigStr} \${DIV} \` +
986
- agentBadge
987
- );
988
- lines.push(SEP);
989
-
990
- // ── Row 3: Architecture & Security ───────────────────────────
991
- const adrCol = adrs.count > 0
992
- ? (adrs.implemented >= adrs.count ? x.green : x.gold)
993
- : x.slate;
994
- const adrStr = adrs.count > 0
995
- ? \`\${adrCol}\${x.bold}\${adrs.implemented}\${x.reset}\${x.slate}/\${x.reset}\${x.white}\${adrs.count}\${x.reset} ADRs\`
996
- : \`\${x.slate}no ADRs\${x.reset}\`;
997
-
998
- const dddCol = pctColor(progress.dddProgress);
999
- const dddBar = blockBar(progress.dddProgress, 100, 5);
1000
-
1001
- const cveStatus = security.totalCves === 0
1002
- ? (security.status === 'NONE' ? \`\${x.slate}not scanned\${x.reset}\` : \`\${x.green}✔ clean\${x.reset}\`)
1003
- : \`\${x.coral}\${security.cvesFixed}/\${security.totalCves} fixed\${x.reset}\`;
1004
-
1005
- lines.push(
1006
- \`\${x.purple}🧩 ARCH\${x.reset} \` +
1007
- \`\${adrStr} \${DIV} \` +
1008
- \`DDD \${dddBar} \${dddCol}\${x.bold}\${progress.dddProgress}%\${x.reset} \${DIV} \` +
1009
- \`🛡️ \${sec.col}\${sec.label}\${x.reset} \${DIV} \` +
1010
- \`CVE \${cveStatus}\`
1011
- );
1012
- lines.push(SEP);
1013
-
1014
- // ── Row 4: Memory & Tests ─────────────────────────────────────
1015
- const vecCol = agentdb.vectorCount > 0 ? x.green : x.slate;
1016
- const hnswTag = agentdb.hasHnsw && agentdb.vectorCount > 0 ? \` \${x.green}⚡ HNSW\${x.reset}\` : '';
1017
- const sizeDisp = agentdb.dbSizeKB >= 1024
1018
- ? \`\${(agentdb.dbSizeKB / 1024).toFixed(1)} MB\` : \`\${agentdb.dbSizeKB} KB\`;
1019
- const testCol = tests.testFiles > 0 ? x.green : x.slate;
1020
- const memCol = system.memoryMB > 200 ? x.orange : x.sky;
1021
-
1022
- const chips = [];
1023
- if (integration.mcpServers.total > 0) {
1024
- const mc = integration.mcpServers.enabled === integration.mcpServers.total ? x.green
1025
- : integration.mcpServers.enabled > 0 ? x.gold : x.coral;
1026
- chips.push(\`\${mc}MCP \${integration.mcpServers.enabled}/\${integration.mcpServers.total}\${x.reset}\`);
1027
- }
1028
- if (integration.hasDatabase) chips.push(\`\${x.green}DB ✔\${x.reset}\`);
1029
- if (integration.hasApi) chips.push(\`\${x.green}API ✔\${x.reset}\`);
1030
- const integStr = chips.length ? chips.join(' ') : \`\${x.slate}none\${x.reset}\`;
1031
-
1032
- lines.push(
1033
- \`\${x.teal}🗄️ MEMORY\${x.reset} \` +
1034
- \`\${vecCol}\${x.bold}\${agentdb.vectorCount}\${x.reset}\${x.slate} vectors\${x.reset}\${hnswTag} \${DIV} \` +
1035
- \`\${x.white}\${sizeDisp}\${x.reset} \${DIV} \` +
1036
- \`\${testCol}🧪 \${tests.testFiles} test files\${x.reset} \${DIV} \` +
1037
- integStr
1038
- );
1039
- lines.push(SEP);
1040
-
1041
- // ── Row 5: Context budget ─────────────────────────────────────
1042
- // SI budget (Task 23 monitor)
1043
- let siStr;
1044
- if (si) {
1045
- const siCol = si.pct > 100 ? x.coral : si.pct > 80 ? x.gold : x.green;
1046
- siStr = \`\${siCol}📄 SI \${si.pct}% budget\${x.reset} \${x.dim}(\${si.len}/\${si.limit} chars)\${x.reset}\`;
1047
- } else {
1048
- siStr = \`\${x.slate}📄 no shared instructions\${x.reset}\`;
1049
- }
1050
-
1051
- // Domains
1052
- const domCol = progress.domainsCompleted >= 4 ? x.green
1053
- : progress.domainsCompleted >= 2 ? x.gold
1054
- : progress.domainsCompleted >= 1 ? x.orange
1055
- : x.slate;
1056
- const domBar = blockBar(progress.domainsCompleted, progress.totalDomains);
1057
-
1058
- lines.push(
1059
- \`\${x.slate}📋 CONTEXT\${x.reset} \` +
1060
- \`\${siStr} \${DIV} \` +
1061
- \`\${x.teal}🏗 \${domBar} \${domCol}\${x.bold}\${progress.domainsCompleted}\${x.reset}\${x.slate}/\${x.reset}\${x.white}\${progress.totalDomains}\${x.reset} domains \${DIV} \` +
1062
- \`\${x.dim}💾 \${system.memoryMB} MB RAM\${x.reset}\`
1063
- );
1064
-
1065
- return lines.join('\\n');
1066
- }
1067
-
1068
- // ── JSON output ──────────────────────────────────────────────────
1069
- function generateJSON() {
1070
- const git = getGitInfo();
1071
- return {
1072
- user: { name: git.name, gitBranch: git.gitBranch, modelName: getModelName() },
1073
- domains: getv1Progress(),
1074
- security: getSecurityStatus(),
1075
- swarm: getSwarmStatus(),
1076
- system: getSystemMetrics(),
1077
- adrs: getADRStatus(),
1078
- hooks: getHooksStatus(),
1079
- agentdb: getAgentDBStats(),
1080
- tests: getTestStats(),
1081
- git: { modified: git.modified, untracked: git.untracked, staged: git.staged, ahead: git.ahead, behind: git.behind },
1082
- lastUpdated: new Date().toISOString(),
1083
- };
1084
- }
1085
-
1086
- // ─── Mode state file ─────────────────────────────────────────────
1087
- const MODE_FILE = path.join(CWD, '.monomind', 'statusline-mode.txt');
1088
-
1089
- function readMode() {
1090
- try {
1091
- if (fs.existsSync(MODE_FILE)) {
1092
- return fs.readFileSync(MODE_FILE, 'utf-8').trim();
1093
- }
1094
- } catch { /* ignore */ }
1095
- return 'full'; // default
1096
- }
1097
-
1098
- // ─── Main ───────────────────────────────────────────────────────
1099
- if (process.argv.includes('--json')) {
1100
- console.log(JSON.stringify(generateJSON(), null, 2));
1101
- } else if (process.argv.includes('--compact')) {
1102
- console.log(JSON.stringify(generateJSON()));
1103
- } else if (process.argv.includes('--single-line')) {
1104
- console.log(generateStatusline());
1105
- } else if (process.argv.includes('--toggle')) {
1106
- // Toggle mode and print the new view
1107
- const current = readMode();
1108
- const next = current === 'compact' ? 'full' : 'compact';
1109
- try {
1110
- fs.mkdirSync(path.dirname(MODE_FILE), { recursive: true });
1111
- fs.writeFileSync(MODE_FILE, next, 'utf-8');
1112
- } catch { /* ignore */ }
1113
- if (next === 'compact') {
1114
- console.log(generateStatusline());
1115
- } else {
1116
- console.log(generateDashboard());
1117
- }
1118
- } else {
1119
- // Default: respect mode state file
1120
- const mode = readMode();
1121
- if (mode === 'compact') {
1122
- console.log(generateStatusline());
1123
- } else {
1124
- console.log(generateDashboard());
1125
- }
1126
- }
1127
- `;
1128
- }
1129
- export function generateStatuslineHook(options) {
1130
- if (!options.statusline.enabled) {
1131
- return '#!/bin/bash\n# Statusline disabled\n';
1132
- }
1133
- return `#!/bin/bash
1134
- # Monomind Statusline Hook
1135
- # Source this in your .bashrc/.zshrc for terminal statusline
1136
-
1137
- # Function to get statusline
1138
- monomind_statusline() {
1139
- local statusline_script="\${MONOMIND_DIR:-.claude}/helpers/statusline.cjs"
1140
- if [ -f "$statusline_script" ]; then
1141
- node "$statusline_script" 2>/dev/null || echo ""
1142
- fi
1143
- }
1144
-
1145
- # Bash: Add to PS1
1146
- # export PS1='$(monomind_statusline) \\n\\$ '
1147
-
1148
- # Zsh: Add to RPROMPT
1149
- # export RPROMPT='$(monomind_statusline)'
1150
-
1151
- # Claude Code: Add to .claude/settings.json
1152
- # "statusLine": {
1153
- # "type": "command",
1154
- # "command": "node .claude/helpers/statusline.cjs 2>/dev/null"
1155
- # "when": "test -f .claude/helpers/statusline.cjs"
1156
- # }
1157
- `;
1158
- }
1159
- //# sourceMappingURL=statusline-generator.js.map