@monoes/monomindcli 1.11.14 → 1.13.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 (434) hide show
  1. package/.claude/agents/generated/channel-intelligence-director.md +87 -0
  2. package/.claude/agents/generated/chief-growth-officer.md +88 -0
  3. package/.claude/agents/generated/content-seo-strategist.md +90 -0
  4. package/.claude/agents/generated/developer-community-strategist.md +91 -0
  5. package/.claude/agents/generated/outreach-partnership-strategist.md +90 -0
  6. package/.claude/agents/generated/social-media-strategist.md +91 -0
  7. package/.claude/agents/generated/video-visual-strategist.md +90 -0
  8. package/.claude/commands/mastermind/master.md +1 -1
  9. package/.claude/helpers/auto-memory-hook.mjs +13 -4
  10. package/.claude/helpers/control-start.cjs +5 -0
  11. package/.claude/helpers/event-logger.cjs +114 -0
  12. package/.claude/helpers/handlers/adr-draft-handler.cjs +19 -5
  13. package/.claude/helpers/handlers/agent-start-handler.cjs +13 -4
  14. package/.claude/helpers/handlers/compact-handler.cjs +2 -0
  15. package/.claude/helpers/handlers/edit-handler.cjs +1 -1
  16. package/.claude/helpers/handlers/gates-handler.cjs +3 -0
  17. package/.claude/helpers/handlers/graph-status-handler.cjs +14 -8
  18. package/.claude/helpers/handlers/loops-status-handler.cjs +5 -2
  19. package/.claude/helpers/handlers/route-handler.cjs +24 -10
  20. package/.claude/helpers/handlers/session-handler.cjs +11 -4
  21. package/.claude/helpers/handlers/session-restore-handler.cjs +35 -19
  22. package/.claude/helpers/handlers/task-handler.cjs +13 -5
  23. package/.claude/helpers/hook-handler.cjs +40 -0
  24. package/.claude/helpers/intelligence.cjs +130 -53
  25. package/.claude/helpers/loop-tracker.cjs +15 -3
  26. package/.claude/helpers/memory-palace.cjs +461 -0
  27. package/.claude/helpers/memory.cjs +138 -14
  28. package/.claude/helpers/metrics-db.mjs +87 -0
  29. package/.claude/helpers/router.cjs +300 -42
  30. package/.claude/helpers/session.cjs +89 -30
  31. package/.claude/helpers/statusline.cjs +148 -4
  32. package/.claude/helpers/toggle-statusline.cjs +73 -0
  33. package/.claude/helpers/token-tracker.cjs +934 -0
  34. package/.claude/helpers/utils/micro-agents.cjs +20 -4
  35. package/.claude/helpers/utils/monograph.cjs +39 -4
  36. package/.claude/helpers/utils/telemetry.cjs +3 -3
  37. package/.claude/skills/mastermind/_protocol.md +25 -15
  38. package/.claude/skills/mastermind/architect.md +3 -3
  39. package/.claude/skills/mastermind/autodev.md +4 -2
  40. package/.claude/skills/mastermind/idea.md +10 -0
  41. package/.claude/skills/mastermind/ops.md +3 -3
  42. package/.claude/skills/mastermind/runorg.md +153 -86
  43. package/dist/src/agents/registry-builder.d.ts.map +1 -1
  44. package/dist/src/agents/registry-builder.js +2 -0
  45. package/dist/src/agents/registry-builder.js.map +1 -1
  46. package/dist/src/autopilot-state.d.ts.map +1 -1
  47. package/dist/src/autopilot-state.js +10 -5
  48. package/dist/src/autopilot-state.js.map +1 -1
  49. package/dist/src/benchmarks/benchmark-runner.d.ts.map +1 -1
  50. package/dist/src/benchmarks/benchmark-runner.js +13 -0
  51. package/dist/src/benchmarks/benchmark-runner.js.map +1 -1
  52. package/dist/src/benchmarks/metric-evaluators.d.ts.map +1 -1
  53. package/dist/src/benchmarks/metric-evaluators.js +20 -9
  54. package/dist/src/benchmarks/metric-evaluators.js.map +1 -1
  55. package/dist/src/browser/actions.d.ts.map +1 -1
  56. package/dist/src/browser/actions.js +10 -3
  57. package/dist/src/browser/actions.js.map +1 -1
  58. package/dist/src/browser/browser.d.ts.map +1 -1
  59. package/dist/src/browser/browser.js +12 -2
  60. package/dist/src/browser/browser.js.map +1 -1
  61. package/dist/src/browser/cdp.d.ts.map +1 -1
  62. package/dist/src/browser/cdp.js +21 -3
  63. package/dist/src/browser/cdp.js.map +1 -1
  64. package/dist/src/browser/har.d.ts.map +1 -1
  65. package/dist/src/browser/har.js +27 -5
  66. package/dist/src/browser/har.js.map +1 -1
  67. package/dist/src/commands/agent.d.ts.map +1 -1
  68. package/dist/src/commands/agent.js +11 -8
  69. package/dist/src/commands/agent.js.map +1 -1
  70. package/dist/src/commands/analyze.d.ts.map +1 -1
  71. package/dist/src/commands/analyze.js +36 -21
  72. package/dist/src/commands/analyze.js.map +1 -1
  73. package/dist/src/commands/autopilot.d.ts.map +1 -1
  74. package/dist/src/commands/autopilot.js +12 -4
  75. package/dist/src/commands/autopilot.js.map +1 -1
  76. package/dist/src/commands/benchmark.d.ts.map +1 -1
  77. package/dist/src/commands/benchmark.js +51 -8
  78. package/dist/src/commands/benchmark.js.map +1 -1
  79. package/dist/src/commands/browse.d.ts.map +1 -1
  80. package/dist/src/commands/browse.js +5 -2
  81. package/dist/src/commands/browse.js.map +1 -1
  82. package/dist/src/commands/claims.d.ts.map +1 -1
  83. package/dist/src/commands/claims.js +29 -11
  84. package/dist/src/commands/claims.js.map +1 -1
  85. package/dist/src/commands/cleanup.d.ts.map +1 -1
  86. package/dist/src/commands/cleanup.js +25 -5
  87. package/dist/src/commands/cleanup.js.map +1 -1
  88. package/dist/src/commands/config.d.ts.map +1 -1
  89. package/dist/src/commands/config.js +15 -7
  90. package/dist/src/commands/config.js.map +1 -1
  91. package/dist/src/commands/daemon.d.ts.map +1 -1
  92. package/dist/src/commands/daemon.js +6 -0
  93. package/dist/src/commands/daemon.js.map +1 -1
  94. package/dist/src/commands/deployment.d.ts.map +1 -1
  95. package/dist/src/commands/deployment.js +34 -19
  96. package/dist/src/commands/deployment.js.map +1 -1
  97. package/dist/src/commands/doctor.d.ts.map +1 -1
  98. package/dist/src/commands/doctor.js +133 -15
  99. package/dist/src/commands/doctor.js.map +1 -1
  100. package/dist/src/commands/guidance.d.ts.map +1 -1
  101. package/dist/src/commands/guidance.js +15 -2
  102. package/dist/src/commands/guidance.js.map +1 -1
  103. package/dist/src/commands/hive-mind.d.ts.map +1 -1
  104. package/dist/src/commands/hive-mind.js +37 -14
  105. package/dist/src/commands/hive-mind.js.map +1 -1
  106. package/dist/src/commands/hooks.d.ts.map +1 -1
  107. package/dist/src/commands/hooks.js +42 -25
  108. package/dist/src/commands/hooks.js.map +1 -1
  109. package/dist/src/commands/init.d.ts.map +1 -1
  110. package/dist/src/commands/init.js +9 -4
  111. package/dist/src/commands/init.js.map +1 -1
  112. package/dist/src/commands/issues.d.ts.map +1 -1
  113. package/dist/src/commands/issues.js +29 -26
  114. package/dist/src/commands/issues.js.map +1 -1
  115. package/dist/src/commands/mcp.d.ts.map +1 -1
  116. package/dist/src/commands/mcp.js +11 -5
  117. package/dist/src/commands/mcp.js.map +1 -1
  118. package/dist/src/commands/memory.d.ts.map +1 -1
  119. package/dist/src/commands/memory.js +10 -0
  120. package/dist/src/commands/memory.js.map +1 -1
  121. package/dist/src/commands/migrate.js +5 -5
  122. package/dist/src/commands/migrate.js.map +1 -1
  123. package/dist/src/commands/monograph.d.ts.map +1 -1
  124. package/dist/src/commands/monograph.js +18 -5
  125. package/dist/src/commands/monograph.js.map +1 -1
  126. package/dist/src/commands/monovector/backup.d.ts.map +1 -1
  127. package/dist/src/commands/monovector/backup.js +8 -2
  128. package/dist/src/commands/monovector/backup.js.map +1 -1
  129. package/dist/src/commands/monovector/benchmark.d.ts.map +1 -1
  130. package/dist/src/commands/monovector/benchmark.js +20 -7
  131. package/dist/src/commands/monovector/benchmark.js.map +1 -1
  132. package/dist/src/commands/monovector/import.d.ts.map +1 -1
  133. package/dist/src/commands/monovector/import.js +15 -0
  134. package/dist/src/commands/monovector/import.js.map +1 -1
  135. package/dist/src/commands/monovector/migrate.d.ts.map +1 -1
  136. package/dist/src/commands/monovector/migrate.js +4 -1
  137. package/dist/src/commands/monovector/migrate.js.map +1 -1
  138. package/dist/src/commands/monovector/optimize.d.ts.map +1 -1
  139. package/dist/src/commands/monovector/optimize.js +11 -0
  140. package/dist/src/commands/monovector/optimize.js.map +1 -1
  141. package/dist/src/commands/monovector/setup.d.ts.map +1 -1
  142. package/dist/src/commands/monovector/setup.js +11 -1
  143. package/dist/src/commands/monovector/setup.js.map +1 -1
  144. package/dist/src/commands/neural.js +1 -1
  145. package/dist/src/commands/neural.js.map +1 -1
  146. package/dist/src/commands/performance.d.ts.map +1 -1
  147. package/dist/src/commands/performance.js +20 -7
  148. package/dist/src/commands/performance.js.map +1 -1
  149. package/dist/src/commands/platforms.d.ts.map +1 -1
  150. package/dist/src/commands/platforms.js +90 -8
  151. package/dist/src/commands/platforms.js.map +1 -1
  152. package/dist/src/commands/plugins.d.ts.map +1 -1
  153. package/dist/src/commands/plugins.js +12 -5
  154. package/dist/src/commands/plugins.js.map +1 -1
  155. package/dist/src/commands/process.d.ts.map +1 -1
  156. package/dist/src/commands/process.js +33 -10
  157. package/dist/src/commands/process.js.map +1 -1
  158. package/dist/src/commands/progress.d.ts.map +1 -1
  159. package/dist/src/commands/progress.js +5 -3
  160. package/dist/src/commands/progress.js.map +1 -1
  161. package/dist/src/commands/providers.js +5 -5
  162. package/dist/src/commands/providers.js.map +1 -1
  163. package/dist/src/commands/replay.d.ts.map +1 -1
  164. package/dist/src/commands/replay.js +8 -2
  165. package/dist/src/commands/replay.js.map +1 -1
  166. package/dist/src/commands/route.d.ts.map +1 -1
  167. package/dist/src/commands/route.js +27 -7
  168. package/dist/src/commands/route.js.map +1 -1
  169. package/dist/src/commands/security.d.ts.map +1 -1
  170. package/dist/src/commands/security.js +4 -0
  171. package/dist/src/commands/security.js.map +1 -1
  172. package/dist/src/commands/session.d.ts.map +1 -1
  173. package/dist/src/commands/session.js +12 -1
  174. package/dist/src/commands/session.js.map +1 -1
  175. package/dist/src/commands/start.d.ts.map +1 -1
  176. package/dist/src/commands/start.js +11 -4
  177. package/dist/src/commands/start.js.map +1 -1
  178. package/dist/src/commands/status.d.ts.map +1 -1
  179. package/dist/src/commands/status.js +7 -4
  180. package/dist/src/commands/status.js.map +1 -1
  181. package/dist/src/commands/swarm.d.ts.map +1 -1
  182. package/dist/src/commands/swarm.js +27 -13
  183. package/dist/src/commands/swarm.js.map +1 -1
  184. package/dist/src/commands/task.d.ts.map +1 -1
  185. package/dist/src/commands/task.js +26 -11
  186. package/dist/src/commands/task.js.map +1 -1
  187. package/dist/src/commands/tokens.d.ts.map +1 -1
  188. package/dist/src/commands/tokens.js +7 -2
  189. package/dist/src/commands/tokens.js.map +1 -1
  190. package/dist/src/commands/transfer-store.d.ts.map +1 -1
  191. package/dist/src/commands/transfer-store.js +36 -22
  192. package/dist/src/commands/transfer-store.js.map +1 -1
  193. package/dist/src/commands/update.d.ts.map +1 -1
  194. package/dist/src/commands/update.js +15 -3
  195. package/dist/src/commands/update.js.map +1 -1
  196. package/dist/src/commands/workflow.d.ts.map +1 -1
  197. package/dist/src/commands/workflow.js +39 -6
  198. package/dist/src/commands/workflow.js.map +1 -1
  199. package/dist/src/consensus/audit-writer.d.ts.map +1 -1
  200. package/dist/src/consensus/audit-writer.js +18 -7
  201. package/dist/src/consensus/audit-writer.js.map +1 -1
  202. package/dist/src/consensus/vote-signer.d.ts.map +1 -1
  203. package/dist/src/consensus/vote-signer.js +25 -8
  204. package/dist/src/consensus/vote-signer.js.map +1 -1
  205. package/dist/src/index.d.ts.map +1 -1
  206. package/dist/src/index.js +7 -3
  207. package/dist/src/index.js.map +1 -1
  208. package/dist/src/init/executor.d.ts.map +1 -1
  209. package/dist/src/init/executor.js +14 -11
  210. package/dist/src/init/executor.js.map +1 -1
  211. package/dist/src/init/shared-instructions-generator.d.ts.map +1 -1
  212. package/dist/src/init/shared-instructions-generator.js +20 -4
  213. package/dist/src/init/shared-instructions-generator.js.map +1 -1
  214. package/dist/src/init/statusline-generator.d.ts.map +1 -1
  215. package/dist/src/init/statusline-generator.js +36 -15
  216. package/dist/src/init/statusline-generator.js.map +1 -1
  217. package/dist/src/mcp-tools/a2a-tools.d.ts.map +1 -1
  218. package/dist/src/mcp-tools/a2a-tools.js +98 -13
  219. package/dist/src/mcp-tools/a2a-tools.js.map +1 -1
  220. package/dist/src/mcp-tools/agent-tools.d.ts.map +1 -1
  221. package/dist/src/mcp-tools/agent-tools.js +16 -3
  222. package/dist/src/mcp-tools/agent-tools.js.map +1 -1
  223. package/dist/src/mcp-tools/analyze-tools.d.ts.map +1 -1
  224. package/dist/src/mcp-tools/analyze-tools.js +80 -17
  225. package/dist/src/mcp-tools/analyze-tools.js.map +1 -1
  226. package/dist/src/mcp-tools/browser-tools.d.ts.map +1 -1
  227. package/dist/src/mcp-tools/browser-tools.js +84 -22
  228. package/dist/src/mcp-tools/browser-tools.js.map +1 -1
  229. package/dist/src/mcp-tools/claims-tools.d.ts.map +1 -1
  230. package/dist/src/mcp-tools/claims-tools.js +35 -7
  231. package/dist/src/mcp-tools/claims-tools.js.map +1 -1
  232. package/dist/src/mcp-tools/config-tools.d.ts.map +1 -1
  233. package/dist/src/mcp-tools/config-tools.js +82 -17
  234. package/dist/src/mcp-tools/config-tools.js.map +1 -1
  235. package/dist/src/mcp-tools/coordination-tools.d.ts.map +1 -1
  236. package/dist/src/mcp-tools/coordination-tools.js +37 -4
  237. package/dist/src/mcp-tools/coordination-tools.js.map +1 -1
  238. package/dist/src/mcp-tools/daa-tools.d.ts.map +1 -1
  239. package/dist/src/mcp-tools/daa-tools.js +49 -7
  240. package/dist/src/mcp-tools/daa-tools.js.map +1 -1
  241. package/dist/src/mcp-tools/embeddings-tools.d.ts.map +1 -1
  242. package/dist/src/mcp-tools/embeddings-tools.js +45 -18
  243. package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
  244. package/dist/src/mcp-tools/github-tools.d.ts.map +1 -1
  245. package/dist/src/mcp-tools/github-tools.js +75 -25
  246. package/dist/src/mcp-tools/github-tools.js.map +1 -1
  247. package/dist/src/mcp-tools/guidance-tools.d.ts.map +1 -1
  248. package/dist/src/mcp-tools/guidance-tools.js +32 -10
  249. package/dist/src/mcp-tools/guidance-tools.js.map +1 -1
  250. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -1
  251. package/dist/src/mcp-tools/hive-mind-tools.js +91 -20
  252. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
  253. package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
  254. package/dist/src/mcp-tools/hooks-tools.js +188 -29
  255. package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
  256. package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
  257. package/dist/src/mcp-tools/memory-tools.js +25 -7
  258. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  259. package/dist/src/mcp-tools/monograph-compat.d.ts.map +1 -1
  260. package/dist/src/mcp-tools/monograph-compat.js +11 -2
  261. package/dist/src/mcp-tools/monograph-compat.js.map +1 -1
  262. package/dist/src/mcp-tools/monograph-tools.d.ts.map +1 -1
  263. package/dist/src/mcp-tools/monograph-tools.js +476 -62
  264. package/dist/src/mcp-tools/monograph-tools.js.map +1 -1
  265. package/dist/src/mcp-tools/neural-tools.d.ts.map +1 -1
  266. package/dist/src/mcp-tools/neural-tools.js +44 -9
  267. package/dist/src/mcp-tools/neural-tools.js.map +1 -1
  268. package/dist/src/mcp-tools/performance-tools.d.ts.map +1 -1
  269. package/dist/src/mcp-tools/performance-tools.js +45 -10
  270. package/dist/src/mcp-tools/performance-tools.js.map +1 -1
  271. package/dist/src/mcp-tools/progress-tools.d.ts.map +1 -1
  272. package/dist/src/mcp-tools/progress-tools.js +7 -4
  273. package/dist/src/mcp-tools/progress-tools.js.map +1 -1
  274. package/dist/src/mcp-tools/request-tracker.d.ts.map +1 -1
  275. package/dist/src/mcp-tools/request-tracker.js +15 -1
  276. package/dist/src/mcp-tools/request-tracker.js.map +1 -1
  277. package/dist/src/mcp-tools/security-tools.d.ts.map +1 -1
  278. package/dist/src/mcp-tools/security-tools.js +61 -9
  279. package/dist/src/mcp-tools/security-tools.js.map +1 -1
  280. package/dist/src/mcp-tools/session-tools.d.ts.map +1 -1
  281. package/dist/src/mcp-tools/session-tools.js +45 -14
  282. package/dist/src/mcp-tools/session-tools.js.map +1 -1
  283. package/dist/src/mcp-tools/swarm-tools.d.ts.map +1 -1
  284. package/dist/src/mcp-tools/swarm-tools.js +15 -3
  285. package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
  286. package/dist/src/mcp-tools/system-tools.d.ts.map +1 -1
  287. package/dist/src/mcp-tools/system-tools.js +14 -7
  288. package/dist/src/mcp-tools/system-tools.js.map +1 -1
  289. package/dist/src/mcp-tools/task-tools.d.ts.map +1 -1
  290. package/dist/src/mcp-tools/task-tools.js +52 -10
  291. package/dist/src/mcp-tools/task-tools.js.map +1 -1
  292. package/dist/src/mcp-tools/terminal-tools.d.ts.map +1 -1
  293. package/dist/src/mcp-tools/terminal-tools.js +40 -6
  294. package/dist/src/mcp-tools/terminal-tools.js.map +1 -1
  295. package/dist/src/mcp-tools/transfer-tools.d.ts.map +1 -1
  296. package/dist/src/mcp-tools/transfer-tools.js +37 -4
  297. package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
  298. package/dist/src/mcp-tools/workflow-tools.d.ts.map +1 -1
  299. package/dist/src/mcp-tools/workflow-tools.js +29 -6
  300. package/dist/src/mcp-tools/workflow-tools.js.map +1 -1
  301. package/dist/src/memory/ewc-consolidation.d.ts.map +1 -1
  302. package/dist/src/memory/ewc-consolidation.js +26 -10
  303. package/dist/src/memory/ewc-consolidation.js.map +1 -1
  304. package/dist/src/memory/intelligence.d.ts.map +1 -1
  305. package/dist/src/memory/intelligence.js +80 -19
  306. package/dist/src/memory/intelligence.js.map +1 -1
  307. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  308. package/dist/src/memory/memory-bridge.js +21 -2
  309. package/dist/src/memory/memory-bridge.js.map +1 -1
  310. package/dist/src/memory/memory-initializer.d.ts.map +1 -1
  311. package/dist/src/memory/memory-initializer.js +67 -3
  312. package/dist/src/memory/memory-initializer.js.map +1 -1
  313. package/dist/src/memory/sona-optimizer.d.ts.map +1 -1
  314. package/dist/src/memory/sona-optimizer.js +14 -4
  315. package/dist/src/memory/sona-optimizer.js.map +1 -1
  316. package/dist/src/monovector/command-outcomes.d.ts.map +1 -1
  317. package/dist/src/monovector/command-outcomes.js +43 -7
  318. package/dist/src/monovector/command-outcomes.js.map +1 -1
  319. package/dist/src/monovector/coverage-router.d.ts.map +1 -1
  320. package/dist/src/monovector/coverage-router.js +8 -4
  321. package/dist/src/monovector/coverage-router.js.map +1 -1
  322. package/dist/src/monovector/coverage-tools.d.ts.map +1 -1
  323. package/dist/src/monovector/coverage-tools.js +6 -3
  324. package/dist/src/monovector/coverage-tools.js.map +1 -1
  325. package/dist/src/monovector/diff-classifier.d.ts.map +1 -1
  326. package/dist/src/monovector/diff-classifier.js +13 -0
  327. package/dist/src/monovector/diff-classifier.js.map +1 -1
  328. package/dist/src/monovector/route-outcomes.d.ts +2 -1
  329. package/dist/src/monovector/route-outcomes.d.ts.map +1 -1
  330. package/dist/src/monovector/route-outcomes.js +46 -4
  331. package/dist/src/monovector/route-outcomes.js.map +1 -1
  332. package/dist/src/plugins/manager.d.ts.map +1 -1
  333. package/dist/src/plugins/manager.js +8 -3
  334. package/dist/src/plugins/manager.js.map +1 -1
  335. package/dist/src/plugins/store/discovery.d.ts.map +1 -1
  336. package/dist/src/plugins/store/discovery.js +46 -2
  337. package/dist/src/plugins/store/discovery.js.map +1 -1
  338. package/dist/src/plugins/store/search.d.ts.map +1 -1
  339. package/dist/src/plugins/store/search.js +5 -4
  340. package/dist/src/plugins/store/search.js.map +1 -1
  341. package/dist/src/production/circuit-breaker.d.ts.map +1 -1
  342. package/dist/src/production/circuit-breaker.js +17 -3
  343. package/dist/src/production/circuit-breaker.js.map +1 -1
  344. package/dist/src/production/error-handler.d.ts.map +1 -1
  345. package/dist/src/production/error-handler.js +3 -0
  346. package/dist/src/production/error-handler.js.map +1 -1
  347. package/dist/src/production/monitoring.d.ts.map +1 -1
  348. package/dist/src/production/monitoring.js +20 -3
  349. package/dist/src/production/monitoring.js.map +1 -1
  350. package/dist/src/production/rate-limiter.d.ts.map +1 -1
  351. package/dist/src/production/rate-limiter.js +13 -4
  352. package/dist/src/production/rate-limiter.js.map +1 -1
  353. package/dist/src/production/retry.d.ts.map +1 -1
  354. package/dist/src/production/retry.js +17 -9
  355. package/dist/src/production/retry.js.map +1 -1
  356. package/dist/src/routing/embed-worker.js +6 -2
  357. package/dist/src/routing/embed-worker.js.map +1 -1
  358. package/dist/src/routing/embedder.d.ts.map +1 -1
  359. package/dist/src/routing/embedder.js +0 -0
  360. package/dist/src/routing/embedder.js.map +1 -1
  361. package/dist/src/routing/llm-caller.d.ts.map +1 -1
  362. package/dist/src/routing/llm-caller.js +13 -2
  363. package/dist/src/routing/llm-caller.js.map +1 -1
  364. package/dist/src/routing/route-layer-factory.d.ts.map +1 -1
  365. package/dist/src/routing/route-layer-factory.js +18 -3
  366. package/dist/src/routing/route-layer-factory.js.map +1 -1
  367. package/dist/src/services/claim-service.d.ts +1 -0
  368. package/dist/src/services/claim-service.d.ts.map +1 -1
  369. package/dist/src/services/claim-service.js +8 -0
  370. package/dist/src/services/claim-service.js.map +1 -1
  371. package/dist/src/services/config-file-manager.d.ts.map +1 -1
  372. package/dist/src/services/config-file-manager.js +14 -2
  373. package/dist/src/services/config-file-manager.js.map +1 -1
  374. package/dist/src/services/headless-worker-executor.d.ts.map +1 -1
  375. package/dist/src/services/headless-worker-executor.js +18 -2
  376. package/dist/src/services/headless-worker-executor.js.map +1 -1
  377. package/dist/src/services/worker-daemon.d.ts.map +1 -1
  378. package/dist/src/services/worker-daemon.js +348 -17
  379. package/dist/src/services/worker-daemon.js.map +1 -1
  380. package/dist/src/transfer/anonymization/index.d.ts +0 -3
  381. package/dist/src/transfer/anonymization/index.d.ts.map +1 -1
  382. package/dist/src/transfer/anonymization/index.js +16 -1
  383. package/dist/src/transfer/anonymization/index.js.map +1 -1
  384. package/dist/src/transfer/export.d.ts.map +1 -1
  385. package/dist/src/transfer/export.js +8 -0
  386. package/dist/src/transfer/export.js.map +1 -1
  387. package/dist/src/transfer/ipfs/upload.d.ts.map +1 -1
  388. package/dist/src/transfer/ipfs/upload.js +33 -3
  389. package/dist/src/transfer/ipfs/upload.js.map +1 -1
  390. package/dist/src/transfer/serialization/cfp.d.ts.map +1 -1
  391. package/dist/src/transfer/serialization/cfp.js +8 -2
  392. package/dist/src/transfer/serialization/cfp.js.map +1 -1
  393. package/dist/src/transfer/storage/gcs.d.ts.map +1 -1
  394. package/dist/src/transfer/storage/gcs.js +37 -3
  395. package/dist/src/transfer/storage/gcs.js.map +1 -1
  396. package/dist/src/transfer/store/discovery.d.ts.map +1 -1
  397. package/dist/src/transfer/store/discovery.js +45 -3
  398. package/dist/src/transfer/store/discovery.js.map +1 -1
  399. package/dist/src/transfer/store/download.d.ts.map +1 -1
  400. package/dist/src/transfer/store/download.js +5 -0
  401. package/dist/src/transfer/store/download.js.map +1 -1
  402. package/dist/src/transfer/store/publish.d.ts.map +1 -1
  403. package/dist/src/transfer/store/publish.js +13 -1
  404. package/dist/src/transfer/store/publish.js.map +1 -1
  405. package/dist/src/transfer/store/registry.d.ts +8 -0
  406. package/dist/src/transfer/store/registry.d.ts.map +1 -1
  407. package/dist/src/transfer/store/registry.js +30 -5
  408. package/dist/src/transfer/store/registry.js.map +1 -1
  409. package/dist/src/transfer/store/search.d.ts.map +1 -1
  410. package/dist/src/transfer/store/search.js +20 -5
  411. package/dist/src/transfer/store/search.js.map +1 -1
  412. package/dist/src/ui/collector.mjs +39 -5
  413. package/dist/src/ui/dashboard.html +1603 -1284
  414. package/dist/src/ui/orgs.html +722 -12
  415. package/dist/src/ui/server.mjs +717 -136
  416. package/dist/src/update/checker.d.ts.map +1 -1
  417. package/dist/src/update/checker.js +59 -7
  418. package/dist/src/update/checker.js.map +1 -1
  419. package/dist/src/update/executor.d.ts.map +1 -1
  420. package/dist/src/update/executor.js +50 -3
  421. package/dist/src/update/executor.js.map +1 -1
  422. package/dist/src/update/index.d.ts.map +1 -1
  423. package/dist/src/update/index.js +18 -1
  424. package/dist/src/update/index.js.map +1 -1
  425. package/dist/src/update/rate-limiter.d.ts +6 -0
  426. package/dist/src/update/rate-limiter.d.ts.map +1 -1
  427. package/dist/src/update/rate-limiter.js +79 -7
  428. package/dist/src/update/rate-limiter.js.map +1 -1
  429. package/dist/src/update/validator.d.ts.map +1 -1
  430. package/dist/src/update/validator.js +52 -1
  431. package/dist/src/update/validator.js.map +1 -1
  432. package/dist/tsconfig.tsbuildinfo +1 -1
  433. package/package.json +2 -3
  434. package/dist/src/ui/data/mastermind-events.jsonl +0 -59
@@ -19,11 +19,23 @@ function getStatePath(cwd) {
19
19
  function emptyState() {
20
20
  return { environments: {}, history: [], activeDeployment: undefined };
21
21
  }
22
+ const MAX_DEPLOYMENT_STATE_BYTES = 10 * 1024 * 1024; // 10 MB
23
+ // Input length caps to prevent DoS via unbounded strings stored to disk
24
+ const MAX_ENV_NAME_LEN = 128;
25
+ const MAX_VERSION_LEN = 64;
26
+ const MAX_DESCRIPTION_LEN = 1024;
27
+ const MAX_URL_LEN = 2048;
28
+ const MAX_ENV_TYPE_LEN = 64;
29
+ const MAX_HISTORY_LIMIT = 1000;
30
+ const MAX_LOGS_LIMIT = 1000;
22
31
  function loadDeploymentState(cwd) {
23
32
  const filePath = getStatePath(cwd);
24
33
  if (!fs.existsSync(filePath)) {
25
34
  return emptyState();
26
35
  }
36
+ if (fs.statSync(filePath).size > MAX_DEPLOYMENT_STATE_BYTES) {
37
+ return emptyState();
38
+ }
27
39
  try {
28
40
  const raw = fs.readFileSync(filePath, 'utf-8');
29
41
  const parsed = JSON.parse(raw);
@@ -66,6 +78,9 @@ function readProjectVersion(cwd) {
66
78
  if (!fs.existsSync(pkgPath)) {
67
79
  return null;
68
80
  }
81
+ if (fs.statSync(pkgPath).size > 1024 * 1024) {
82
+ return null;
83
+ }
69
84
  try {
70
85
  const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
71
86
  return pkg.version ?? null;
@@ -92,10 +107,10 @@ const deployCommand = {
92
107
  ],
93
108
  action: async (ctx) => {
94
109
  try {
95
- const envName = String(ctx.flags['env'] || 'staging');
110
+ const envName = String(ctx.flags['env'] || 'staging').slice(0, MAX_ENV_NAME_LEN);
96
111
  const dryRun = Boolean(ctx.flags['dry-run']);
97
- const description = ctx.flags['description'] ? String(ctx.flags['description']) : undefined;
98
- let version = ctx.flags['version'] ? String(ctx.flags['version']) : null;
112
+ const description = ctx.flags['description'] ? String(ctx.flags['description']).slice(0, MAX_DESCRIPTION_LEN) : undefined;
113
+ let version = ctx.flags['version'] ? String(ctx.flags['version']).slice(0, MAX_VERSION_LEN) : null;
99
114
  if (!version) {
100
115
  version = readProjectVersion(ctx.cwd) || '0.0.0';
101
116
  }
@@ -181,7 +196,7 @@ const statusCommand = {
181
196
  action: async (ctx) => {
182
197
  try {
183
198
  const state = loadDeploymentState(ctx.cwd);
184
- const filterEnv = ctx.flags['env'] ? String(ctx.flags['env']) : null;
199
+ const filterEnv = ctx.flags['env'] ? String(ctx.flags['env']).slice(0, MAX_ENV_NAME_LEN) : null;
185
200
  output.writeln();
186
201
  output.writeln(output.bold('Deployment Status'));
187
202
  output.writeln();
@@ -277,13 +292,13 @@ const rollbackCommand = {
277
292
  ],
278
293
  action: async (ctx) => {
279
294
  try {
280
- const envName = String(ctx.flags['env'] || '');
295
+ const envName = String(ctx.flags['env'] || '').slice(0, MAX_ENV_NAME_LEN);
281
296
  if (!envName) {
282
297
  output.printError('Environment is required', 'Use --env or -e to specify');
283
298
  return { success: false, exitCode: 1 };
284
299
  }
285
- const targetVersion = ctx.flags['version'] ? String(ctx.flags['version']) : null;
286
- const steps = parseInt(ctx.flags.steps || '1', 10);
300
+ const targetVersion = ctx.flags['version'] ? String(ctx.flags['version']).slice(0, MAX_VERSION_LEN) : null;
301
+ const steps = Math.min(Math.max(parseInt(ctx.flags.steps || '1', 10), 1), 100);
287
302
  if (steps > 1) {
288
303
  output.printWarning(`Multi-step rollback (--steps ${steps}) is not yet implemented. Rolling back 1 step only.`);
289
304
  }
@@ -370,8 +385,8 @@ const historyCommand = {
370
385
  action: async (ctx) => {
371
386
  try {
372
387
  const state = loadDeploymentState(ctx.cwd);
373
- const filterEnv = ctx.flags['env'] ? String(ctx.flags['env']) : null;
374
- const limit = Number(ctx.flags['limit']) || 10;
388
+ const filterEnv = ctx.flags['env'] ? String(ctx.flags['env']).slice(0, MAX_ENV_NAME_LEN) : null;
389
+ const limit = Math.min(Math.max(Number(ctx.flags['limit']) || 10, 1), MAX_HISTORY_LIMIT);
375
390
  let records = [...state.history].reverse();
376
391
  if (filterEnv) {
377
392
  records = records.filter(r => r.environment === filterEnv);
@@ -455,7 +470,7 @@ const environmentsCommand = {
455
470
  return { success: true };
456
471
  }
457
472
  if (action === 'add') {
458
- const name = ctx.flags['name'] ? String(ctx.flags['name']) : null;
473
+ const name = ctx.flags['name'] ? String(ctx.flags['name']).slice(0, MAX_ENV_NAME_LEN) : null;
459
474
  if (!name) {
460
475
  output.printError('Environment name is required', 'Use --name or -n to specify');
461
476
  return { success: false, exitCode: 1 };
@@ -464,8 +479,8 @@ const environmentsCommand = {
464
479
  output.printWarning(`Environment '${name}' already exists`);
465
480
  return { success: false, exitCode: 1 };
466
481
  }
467
- const envType = String(ctx.flags['type'] || 'local');
468
- const url = ctx.flags['url'] ? String(ctx.flags['url']) : undefined;
482
+ const envType = String(ctx.flags['type'] || 'local').slice(0, MAX_ENV_TYPE_LEN);
483
+ const url = ctx.flags['url'] ? String(ctx.flags['url']).slice(0, MAX_URL_LEN) : undefined;
469
484
  state.environments[name] = {
470
485
  name,
471
486
  type: envType,
@@ -481,7 +496,7 @@ const environmentsCommand = {
481
496
  return { success: true };
482
497
  }
483
498
  if (action === 'remove') {
484
- const name = ctx.flags['name'] ? String(ctx.flags['name']) : null;
499
+ const name = ctx.flags['name'] ? String(ctx.flags['name']).slice(0, MAX_ENV_NAME_LEN) : null;
485
500
  if (!name) {
486
501
  output.printError('Environment name is required', 'Use --name or -n to specify');
487
502
  return { success: false, exitCode: 1 };
@@ -524,9 +539,9 @@ const logsCommand = {
524
539
  action: async (ctx) => {
525
540
  try {
526
541
  const state = loadDeploymentState(ctx.cwd);
527
- const filterEnv = ctx.flags['env'] ? String(ctx.flags['env']) : null;
528
- const deploymentId = ctx.flags['deployment'] ? String(ctx.flags['deployment']) : null;
529
- const limit = Number(ctx.flags['lines']) || 50;
542
+ const filterEnv = ctx.flags['env'] ? String(ctx.flags['env']).slice(0, MAX_ENV_NAME_LEN) : null;
543
+ const deploymentId = ctx.flags['deployment'] ? String(ctx.flags['deployment']).slice(0, 64) : null;
544
+ const limit = Math.min(Math.max(Number(ctx.flags['lines']) || 50, 1), MAX_LOGS_LIMIT);
530
545
  output.writeln();
531
546
  output.writeln(output.bold('Deployment Logs'));
532
547
  output.writeln();
@@ -588,9 +603,9 @@ const releaseCommand = {
588
603
  ],
589
604
  action: async (ctx) => {
590
605
  try {
591
- const envName = String(ctx.flags['env'] || 'production');
592
- const description = ctx.flags['description'] ? String(ctx.flags['description']) : undefined;
593
- let version = ctx.flags['version'] ? String(ctx.flags['version']) : null;
606
+ const envName = String(ctx.flags['env'] || 'production').slice(0, MAX_ENV_NAME_LEN);
607
+ const description = ctx.flags['description'] ? String(ctx.flags['description']).slice(0, MAX_DESCRIPTION_LEN) : undefined;
608
+ let version = ctx.flags['version'] ? String(ctx.flags['version']).slice(0, MAX_VERSION_LEN) : null;
594
609
  if (!version) {
595
610
  const pkgVersion = readProjectVersion(ctx.cwd);
596
611
  if (!pkgVersion) {
@@ -1 +1 @@
1
- {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../src/commands/deployment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../src/commands/deployment.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AA2tB1E,eAAO,MAAM,aAAa,EAAE,OA2M3B,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAg2B1E,eAAO,MAAM,aAAa,EAAE,OA0N3B,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -7,6 +7,11 @@
7
7
  import { output } from '../output.js';
8
8
  import { existsSync, readFileSync, statSync } from 'fs';
9
9
  import { join, dirname } from 'path';
10
+ const MAX_DOCTOR_PKG_BYTES = 1024 * 1024; // 1 MB — package.json / settings.json
11
+ const MAX_DOCTOR_CONFIG_BYTES = 10 * 1024 * 1024; // 10 MB — monomind.config.json / MCP configs
12
+ const MAX_DOCTOR_GITIGNORE_BYTES = 512 * 1024; // 512 KB — .gitignore
13
+ const MAX_DOCTOR_PID_BYTES = 64; // 64 bytes — daemon PID file
14
+ const MAX_DOCTOR_HELPER_BYTES = 2 * 1024 * 1024; // 2 MB — hook helper .cjs bundles
10
15
  import { fileURLToPath } from 'url';
11
16
  import { execSync, exec } from 'child_process';
12
17
  import { homedir } from 'os';
@@ -67,7 +72,7 @@ async function checkConfigFile() {
67
72
  '.monomind.json'
68
73
  ];
69
74
  for (const configPath of jsonPaths) {
70
- if (existsSync(configPath)) {
75
+ if (existsSync(configPath) && statSync(configPath).size <= MAX_DOCTOR_CONFIG_BYTES) {
71
76
  try {
72
77
  const content = readFileSync(configPath, 'utf8');
73
78
  JSON.parse(content);
@@ -95,7 +100,7 @@ async function checkConfigFile() {
95
100
  async function checkDaemonStatus() {
96
101
  try {
97
102
  const pidFile = '.monomind/daemon.pid';
98
- if (existsSync(pidFile)) {
103
+ if (existsSync(pidFile) && statSync(pidFile).size <= MAX_DOCTOR_PID_BYTES) {
99
104
  const pid = readFileSync(pidFile, 'utf8').trim();
100
105
  try {
101
106
  process.kill(parseInt(pid, 10), 0); // Check if process exists
@@ -184,7 +189,7 @@ async function checkMcpServers() {
184
189
  '.mcp.json'
185
190
  ];
186
191
  for (const configPath of mcpConfigPaths) {
187
- if (existsSync(configPath)) {
192
+ if (existsSync(configPath) && statSync(configPath).size <= MAX_DOCTOR_CONFIG_BYTES) {
188
193
  try {
189
194
  const content = JSON.parse(readFileSync(configPath, 'utf8'));
190
195
  const servers = content.mcpServers || content.servers || {};
@@ -260,7 +265,7 @@ async function checkVersionFreshness() {
260
265
  for (;;) {
261
266
  const candidate = join(dir, 'package.json');
262
267
  try {
263
- if (existsSync(candidate)) {
268
+ if (existsSync(candidate) && statSync(candidate).size <= MAX_DOCTOR_PKG_BYTES) {
264
269
  const pkg = JSON.parse(readFileSync(candidate, 'utf8'));
265
270
  if (pkg.version &&
266
271
  typeof pkg.name === 'string' &&
@@ -389,18 +394,23 @@ async function checkMonograph() {
389
394
  const __filename = fileURLToPath(import.meta.url);
390
395
  const _base = dirname(__filename);
391
396
  let _globalRoot = '';
392
- try { _globalRoot = execSync('npm root -g', { encoding: 'utf8', timeout: 3000 }).trim(); } catch { /* no npm */ }
397
+ try {
398
+ _globalRoot = execSync('npm root -g', { encoding: 'utf8', timeout: 3000 }).trim();
399
+ }
400
+ catch { /* no npm */ }
393
401
  const candidates = [
402
+ // local dev monorepo paths (both old @monomind and published @monoes scope)
394
403
  join(_base, '..', '..', 'node_modules', '@monomind', 'monograph', 'package.json'),
395
404
  join(_base, '..', '..', '..', '..', 'node_modules', '@monomind', 'monograph', 'package.json'),
396
405
  join(_base, '..', '..', 'node_modules', '@monoes', 'monograph', 'package.json'),
397
406
  join(_base, '..', '..', '..', '..', 'node_modules', '@monoes', 'monograph', 'package.json'),
407
+ // global install paths
398
408
  ...(_globalRoot ? [
399
409
  join(_globalRoot, '@monomind', 'monograph', 'package.json'),
400
410
  join(_globalRoot, '@monoes', 'monograph', 'package.json'),
401
411
  ] : []),
402
412
  ];
403
- const found = candidates.find(p => existsSync(p));
413
+ const found = candidates.find(p => existsSync(p) && statSync(p).size <= MAX_DOCTOR_PKG_BYTES);
404
414
  if (found) {
405
415
  try {
406
416
  const pkg = JSON.parse(readFileSync(found, 'utf-8'));
@@ -426,19 +436,100 @@ async function checkMonograph() {
426
436
  };
427
437
  }
428
438
  }
439
+ // Check monograph graph freshness (is the graph built? how stale?)
440
+ async function checkMonographFreshness() {
441
+ try {
442
+ const cwd = process.cwd();
443
+ const dbPath = join(cwd, '.monomind', 'monograph.db');
444
+ const lockPath = join(cwd, '.monomind', 'graph', '.rebuild-lock');
445
+ const statsPath = join(cwd, '.monomind', 'graph', 'stats.json');
446
+ // Check if graph exists at all
447
+ const hasDb = existsSync(dbPath);
448
+ const hasLock = existsSync(lockPath);
449
+ const hasStats = existsSync(statsPath);
450
+ if (!hasDb && !hasStats) {
451
+ return {
452
+ name: 'Graph freshness',
453
+ status: 'warn',
454
+ message: 'No monograph graph built yet',
455
+ fix: 'mcp__monomind__monograph_build codeOnly:true — or run npx monomind@latest hooks graph-status',
456
+ };
457
+ }
458
+ // Determine last build time
459
+ let buildMs = 0;
460
+ if (hasDb) {
461
+ try {
462
+ buildMs = Math.max(buildMs, statSync(dbPath).mtimeMs);
463
+ }
464
+ catch { /* ignore */ }
465
+ }
466
+ if (hasLock) {
467
+ try {
468
+ buildMs = Math.max(buildMs, statSync(lockPath).mtimeMs);
469
+ }
470
+ catch { /* ignore */ }
471
+ }
472
+ if (hasStats) {
473
+ try {
474
+ buildMs = Math.max(buildMs, statSync(statsPath).mtimeMs);
475
+ }
476
+ catch { /* ignore */ }
477
+ }
478
+ if (buildMs === 0) {
479
+ return { name: 'Graph freshness', status: 'warn', message: 'Graph exists but build time unknown' };
480
+ }
481
+ // Count commits since last build
482
+ const buildIso = new Date(buildMs).toISOString();
483
+ let commitsBehind = 0;
484
+ try {
485
+ const out = execSync(`git rev-list --count --since='${buildIso}' HEAD 2>/dev/null`, {
486
+ encoding: 'utf8', timeout: 2000, cwd,
487
+ }).trim();
488
+ commitsBehind = parseInt(out, 10) || 0;
489
+ }
490
+ catch { /* git not available or not a git repo */ }
491
+ const ageMinutes = Math.floor((Date.now() - buildMs) / 60000);
492
+ const ageStr = ageMinutes < 60 ? `${ageMinutes}m ago` : `${Math.floor(ageMinutes / 60)}h ago`;
493
+ if (commitsBehind === 0) {
494
+ return { name: 'Graph freshness', status: 'pass', message: `FRESH — built ${ageStr}, 0 commits behind` };
495
+ }
496
+ else if (commitsBehind <= 5) {
497
+ return {
498
+ name: 'Graph freshness',
499
+ status: 'warn',
500
+ message: `${commitsBehind} commit(s) behind — built ${ageStr}`,
501
+ fix: 'mcp__monomind__monograph_build codeOnly:true',
502
+ };
503
+ }
504
+ else {
505
+ return {
506
+ name: 'Graph freshness',
507
+ status: 'fail',
508
+ message: `STALE — ${commitsBehind} commits behind (built ${ageStr})`,
509
+ fix: 'mcp__monomind__monograph_build codeOnly:true',
510
+ };
511
+ }
512
+ }
513
+ catch {
514
+ return { name: 'Graph freshness', status: 'warn', message: 'Could not check graph freshness' };
515
+ }
516
+ }
429
517
  // Check @monoes/memory (optional HNSW vector search package)
430
518
  async function checkMonoesMemory() {
431
519
  try {
432
520
  const __filename = fileURLToPath(import.meta.url);
433
521
  const _base = dirname(__filename);
434
522
  let _globalRoot = '';
435
- try { _globalRoot = execSync('npm root -g', { encoding: 'utf8', timeout: 3000 }).trim(); } catch { /* no npm */ }
523
+ try {
524
+ _globalRoot = execSync('npm root -g', { encoding: 'utf8', timeout: 3000 }).trim();
525
+ }
526
+ catch { /* no npm */ }
436
527
  const candidates = [
437
528
  join(_base, '..', '..', 'node_modules', '@monoes', 'memory', 'package.json'),
438
529
  join(_base, '..', '..', '..', '..', 'node_modules', '@monoes', 'memory', 'package.json'),
439
530
  ...(_globalRoot ? [join(_globalRoot, '@monoes', 'memory', 'package.json')] : []),
440
531
  ];
441
- const found = candidates.find(p => existsSync(p));
532
+ const found = candidates.find(p => existsSync(p) && statSync(p).size <= MAX_DOCTOR_PKG_BYTES);
442
533
  if (found) {
443
534
  try {
444
535
  const pkg = JSON.parse(readFileSync(found, 'utf-8'));
@@ -469,10 +560,10 @@ function _resolveBundledHelper(relativePath) {
469
560
  let dir = dirname(thisFile);
470
561
  for (;;) {
471
562
  const candidate = join(dir, 'package.json');
472
- if (existsSync(candidate)) {
563
+ if (existsSync(candidate) && statSync(candidate).size <= MAX_DOCTOR_PKG_BYTES) {
473
564
  try {
474
565
  const pkg = JSON.parse(readFileSync(candidate, 'utf8'));
475
- if (pkg.name === '@monomind/cli' || pkg.name === 'monomind') {
566
+ if (pkg.name === '@monomind/cli' || pkg.name === 'monomind' || pkg.name === '@monoes/monomindcli') {
476
567
  const helperPath = join(dir, relativePath);
477
568
  return existsSync(helperPath) ? helperPath : null;
478
569
  }
@@ -500,11 +591,15 @@ async function _detectStaleHelpers() {
500
591
  const local = join(process.cwd(), '.claude', 'helpers', name);
501
592
  if (!existsSync(local))
502
593
  continue;
594
+ if (statSync(local).size > MAX_DOCTOR_HELPER_BYTES)
595
+ continue; // skip oversized helper
503
596
  const bundled = _resolveBundledHelper(join('.claude', 'helpers', name));
504
597
  if (!bundled) {
505
598
  missing.push(name);
506
599
  continue;
507
600
  }
601
+ if (statSync(bundled).size > MAX_DOCTOR_HELPER_BYTES)
602
+ continue; // skip oversized bundled
508
603
  try {
509
604
  const hashLocal = crypto.createHash('sha256').update(readFileSync(local)).digest('hex');
510
605
  const hashBundled = crypto.createHash('sha256').update(readFileSync(bundled)).digest('hex');
@@ -562,6 +657,9 @@ async function checkAgenticFlow() {
562
657
  fix: 'npm install agentic-flow@latest'
563
658
  };
564
659
  }
660
+ if (statSync(pkgJsonPath).size > MAX_DOCTOR_PKG_BYTES) {
661
+ return { name: 'agentic-flow', status: 'warn', message: 'package.json too large to parse' };
662
+ }
565
663
  const pkg = JSON.parse(readFileSync(pkgJsonPath, 'utf-8'));
566
664
  const version = pkg.version || 'unknown';
567
665
  const exports = pkg.exports || {};
@@ -573,7 +671,7 @@ async function checkAgenticFlow() {
573
671
  return {
574
672
  name: 'agentic-flow',
575
673
  status: 'pass',
576
- message: `v${version} (${features.join(', ')})`
674
+ message: `v${version}${features.length ? ' (' + features.join(', ') + ')' : ' (installed)'}`
577
675
  };
578
676
  }
579
677
  catch {
@@ -658,6 +756,9 @@ async function checkGitignoreCoverage() {
658
756
  fix: 'echo ".monomind/\\n**/.monomind/" >> .gitignore',
659
757
  };
660
758
  }
759
+ if (statSync(gitignorePath).size > MAX_DOCTOR_GITIGNORE_BYTES) {
760
+ return { name: 'Gitignore Coverage', status: 'warn', message: '.gitignore too large to parse' };
761
+ }
661
762
  const content = readFileSync(gitignorePath, 'utf-8');
662
763
  const lines = content.split('\n').map(l => l.trim()).filter(l => l && !l.startsWith('#'));
663
764
  const missing = REQUIRED_GITIGNORE_PATTERNS.filter(({ pattern }) => {
@@ -700,6 +801,9 @@ async function checkGuidanceGates() {
700
801
  };
701
802
  }
702
803
  try {
804
+ if (statSync(settingsPath).size > MAX_DOCTOR_CONFIG_BYTES) {
805
+ return { name: 'Guidance Gates', status: 'warn', message: 'settings.json too large to parse' };
806
+ }
703
807
  const settings = JSON.parse(readFileSync(settingsPath, 'utf-8'));
704
808
  const preToolUse = settings?.hooks?.PreToolUse ?? [];
705
809
  const hasPreWrite = preToolUse.some(e => e.matcher === 'Write|Edit|MultiEdit' && e.hooks.some(h => h.command?.includes('pre-write')));
@@ -772,7 +876,7 @@ export const doctorCommand = {
772
876
  {
773
877
  name: 'component',
774
878
  short: 'c',
775
- description: 'Check specific component (version, node, npm, config, daemon, memory, api, git, mcp, claude, disk, typescript, monograph, helpers, monoes, gates, gitignore)',
879
+ description: 'Check specific component (version, node, npm, config, daemon, memory, api, git, mcp, claude, disk, typescript, monograph, graph-freshness, memory-pkg, helpers, agentic-flow, monoes, gates, gitignore)',
776
880
  type: 'string'
777
881
  },
778
882
  {
@@ -815,6 +919,7 @@ export const doctorCommand = {
815
919
  checkDiskSpace,
816
920
  checkBuildTools,
817
921
  checkMonograph,
922
+ checkMonographFreshness,
818
923
  checkMonoesMemory,
819
924
  checkHelpersFresh,
820
925
  checkAgenticFlow,
@@ -837,6 +942,7 @@ export const doctorCommand = {
837
942
  'disk': checkDiskSpace,
838
943
  'typescript': checkBuildTools,
839
944
  'monograph': checkMonograph,
945
+ 'graph-freshness': checkMonographFreshness,
840
946
  'memory-pkg': checkMonoesMemory,
841
947
  'helpers': checkHelpersFresh,
842
948
  'agentic-flow': checkAgenticFlow,
@@ -863,6 +969,14 @@ export const doctorCommand = {
863
969
  const result = settledResult.value;
864
970
  results.push(result);
865
971
  output.writeln(formatCheck(result));
972
+ if (result.fix && result.status === 'fail') {
973
+ // Always show fix inline for failures — no flag needed
974
+ output.writeln(output.dim(` Fix: ${result.fix}`));
975
+ }
976
+ else if (result.fix && result.status === 'warn') {
977
+ // Show fix inline for warnings too, so users don't need --fix for common issues
978
+ output.writeln(output.dim(` Hint: ${result.fix}`));
979
+ }
866
980
  if (result.fix && (result.status === 'fail' || result.status === 'warn')) {
867
981
  fixes.push(`${result.name}: ${result.fix}`);
868
982
  }
@@ -923,9 +1037,13 @@ export const doctorCommand = {
923
1037
  output.writeln(output.dim(` ${fix}`));
924
1038
  }
925
1039
  }
926
- else if (fixes.length > 0 && !showFix) {
927
- output.writeln();
928
- output.writeln(output.dim(`Run with --fix to see ${fixes.length} suggested fix${fixes.length > 1 ? 'es' : ''}`));
1040
+ else if (!showFix) {
1041
+ // Only nudge about --fix for warnings (failures already showed their fix inline)
1042
+ const warnFixes = results.filter(r => r.status === 'warn' && r.fix).length;
1043
+ if (warnFixes > 0) {
1044
+ output.writeln();
1045
+ output.writeln(output.dim(`Run with --fix to see ${warnFixes} suggested fix${warnFixes > 1 ? 'es' : ''} for warnings`));
1046
+ }
929
1047
  }
930
1048
  // Overall result
931
1049
  if (failed > 0) {