@monoes/monomindcli 2.5.1 → 2.5.3

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 (371) hide show
  1. package/.claude/agents/design/design-monodesign.md +6 -6
  2. package/.claude/agents/github/repo-architect.md +3 -3
  3. package/.claude/agents/github/sync-coordinator.md +2 -2
  4. package/.claude/agents/specialists/integration-architect.md +4 -4
  5. package/.claude/commands/github/repo-architect.md +4 -4
  6. package/.claude/commands/github/sync-coordinator.md +2 -2
  7. package/.claude/commands/mastermind/_repeat.md +4 -4
  8. package/.claude/commands/mastermind/approvev1.md +4 -4
  9. package/.claude/commands/mastermind/architect.md +6 -6
  10. package/.claude/commands/mastermind/autodev.md +5 -5
  11. package/.claude/commands/mastermind/brain.md +2 -2
  12. package/.claude/commands/mastermind/build.md +6 -6
  13. package/.claude/commands/mastermind/code-review.md +2 -2
  14. package/.claude/commands/mastermind/content.md +6 -6
  15. package/.claude/commands/mastermind/createorg.md +4 -4
  16. package/.claude/commands/mastermind/createtask.md +3 -3
  17. package/.claude/commands/mastermind/debug.md +5 -5
  18. package/.claude/commands/mastermind/design.md +5 -5
  19. package/.claude/commands/mastermind/do.md +2 -2
  20. package/.claude/commands/mastermind/execute.md +5 -5
  21. package/.claude/commands/mastermind/finance.md +6 -6
  22. package/.claude/commands/mastermind/finish.md +5 -5
  23. package/.claude/commands/mastermind/idea.md +6 -6
  24. package/.claude/commands/mastermind/ideate.md +5 -5
  25. package/.claude/commands/mastermind/improve.md +6 -6
  26. package/.claude/commands/mastermind/marketing.md +6 -6
  27. package/.claude/commands/mastermind/master.md +54 -54
  28. package/.claude/commands/mastermind/ops.md +6 -6
  29. package/.claude/commands/mastermind/orgs.md +2 -2
  30. package/.claude/commands/mastermind/orgstatus.md +2 -2
  31. package/.claude/commands/mastermind/plan.md +5 -5
  32. package/.claude/commands/mastermind/receive-review.md +5 -5
  33. package/.claude/commands/mastermind/release.md +6 -6
  34. package/.claude/commands/mastermind/research.md +6 -6
  35. package/.claude/commands/mastermind/review.md +6 -6
  36. package/.claude/commands/mastermind/runorg.md +4 -4
  37. package/.claude/commands/mastermind/runorgv1.md +5 -5
  38. package/.claude/commands/mastermind/sales.md +6 -6
  39. package/.claude/commands/mastermind/skill-builder.md +5 -5
  40. package/.claude/commands/mastermind/stoporg.md +3 -3
  41. package/.claude/commands/mastermind/taskdev.md +5 -5
  42. package/.claude/commands/mastermind/tdd.md +5 -5
  43. package/.claude/commands/mastermind/techport.md +5 -5
  44. package/.claude/commands/mastermind/verify.md +5 -5
  45. package/.claude/commands/mastermind/worktree.md +5 -5
  46. package/.claude/helpers/control-start.cjs +30 -0
  47. package/.claude/helpers/event-logger.cjs +2 -2
  48. package/.claude/helpers/extras-registry.json +1 -1
  49. package/.claude/helpers/handlers/agent-start-handler.cjs +2 -2
  50. package/.claude/helpers/handlers/edit-handler.cjs +2 -2
  51. package/.claude/helpers/handlers/gates-handler.cjs +1 -1
  52. package/.claude/helpers/handlers/route-handler.cjs +1 -1
  53. package/.claude/helpers/handlers/session-handler.cjs +1 -1
  54. package/.claude/helpers/handlers/session-restore-handler.cjs +11 -11
  55. package/.claude/helpers/handlers/task-handler.cjs +2 -2
  56. package/.claude/helpers/hook-handler.cjs +8 -8
  57. package/.claude/helpers/utils/monograph.cjs +44 -12
  58. package/.claude/skills/{mastermind-skills/access.md → mastermind-access/SKILL.md} +2 -2
  59. package/.claude/skills/{mastermind-skills/activity.md → mastermind-activity/SKILL.md} +2 -2
  60. package/.claude/skills/{mastermind-skills/adapter-manager.md → mastermind-adapter-manager/SKILL.md} +2 -2
  61. package/.claude/skills/{mastermind-skills/adapters.md → mastermind-adapters/SKILL.md} +2 -2
  62. package/.claude/skills/{mastermind-skills/agent-detail.md → mastermind-agent-detail/SKILL.md} +2 -2
  63. package/.claude/skills/{mastermind-skills/agents.md → mastermind-agents/SKILL.md} +2 -2
  64. package/.claude/skills/{mastermind-skills/approval-detail.md → mastermind-approval-detail/SKILL.md} +2 -2
  65. package/.claude/skills/{mastermind-skills/approvev1.md → mastermind-approvev1/SKILL.md} +2 -2
  66. package/.claude/skills/{mastermind-skills/architect.md → mastermind-architect/SKILL.md} +7 -7
  67. package/.claude/skills/{mastermind-skills/autodev.md → mastermind-autodev/SKILL.md} +10 -10
  68. package/.claude/skills/{mastermind-skills/backup.md → mastermind-backup/SKILL.md} +2 -2
  69. package/.claude/skills/{mastermind-skills/bootstrap.md → mastermind-bootstrap/SKILL.md} +2 -2
  70. package/.claude/skills/{mastermind-skills/budgets.md → mastermind-budgets/SKILL.md} +2 -2
  71. package/.claude/skills/{mastermind-skills/build.md → mastermind-build/SKILL.md} +5 -5
  72. package/.claude/skills/{mastermind-skills/companies.md → mastermind-companies/SKILL.md} +2 -2
  73. package/.claude/skills/{mastermind-skills/content.md → mastermind-content/SKILL.md} +5 -5
  74. package/.claude/skills/{mastermind-skills/costs.md → mastermind-costs/SKILL.md} +2 -2
  75. package/.claude/skills/{mastermind-skills/createorg.md → mastermind-createorg/SKILL.md} +3 -3
  76. package/.claude/skills/{mastermind-skills/debug.md → mastermind-debug/SKILL.md} +4 -4
  77. package/.claude/skills/{mastermind-skills/_delegation.md → mastermind-delegation/SKILL.md} +1 -1
  78. package/.claude/skills/{mastermind-skills/design.md → mastermind-design/SKILL.md} +9 -9
  79. package/.claude/skills/{mastermind-skills/diagnose.md → mastermind-diagnose/SKILL.md} +2 -2
  80. package/.claude/skills/{mastermind-skills/env.md → mastermind-env/SKILL.md} +2 -2
  81. package/.claude/skills/{mastermind-skills/environments.md → mastermind-environments/SKILL.md} +2 -2
  82. package/.claude/skills/{mastermind-skills/execute.md → mastermind-execute/SKILL.md} +10 -10
  83. package/.claude/skills/{mastermind-skills/export.md → mastermind-export/SKILL.md} +2 -2
  84. package/.claude/skills/{mastermind-skills/finance.md → mastermind-finance/SKILL.md} +5 -5
  85. package/.claude/skills/{mastermind-skills/goal-detail.md → mastermind-goal-detail/SKILL.md} +2 -2
  86. package/.claude/skills/{mastermind-skills/goals.md → mastermind-goals/SKILL.md} +2 -2
  87. package/.claude/skills/{mastermind-skills/heartbeatv1.md → mastermind-heartbeatv1/SKILL.md} +2 -2
  88. package/.claude/skills/{mastermind-skills/idea.md → mastermind-idea/SKILL.md} +7 -7
  89. package/.claude/skills/{mastermind-skills/import.md → mastermind-import/SKILL.md} +2 -2
  90. package/.claude/skills/{mastermind-skills/inbox.md → mastermind-inbox/SKILL.md} +2 -2
  91. package/.claude/skills/{mastermind-skills/instance.md → mastermind-instance/SKILL.md} +2 -2
  92. package/.claude/skills/{mastermind-skills/instance-settings.md → mastermind-instance-settings/SKILL.md} +2 -2
  93. package/.claude/skills/{mastermind-skills/invite-landing.md → mastermind-invite-landing/SKILL.md} +2 -2
  94. package/.claude/skills/{mastermind-skills/invites.md → mastermind-invites/SKILL.md} +2 -2
  95. package/.claude/skills/{mastermind-skills/issue-detail.md → mastermind-issue-detail/SKILL.md} +2 -2
  96. package/.claude/skills/{mastermind-skills/issues.md → mastermind-issues/SKILL.md} +2 -2
  97. package/.claude/skills/{mastermind-skills/join-queue.md → mastermind-join-queue/SKILL.md} +2 -2
  98. package/.claude/skills/{mastermind-skills/liveness.md → mastermind-liveness/SKILL.md} +2 -2
  99. package/.claude/skills/{mastermind-skills/marketing.md → mastermind-marketing/SKILL.md} +8 -8
  100. package/.claude/skills/{mastermind-skills/memory.md → mastermind-memory/SKILL.md} +2 -2
  101. package/.claude/skills/{mastermind-skills/monitor.md → mastermind-monitor/SKILL.md} +2 -2
  102. package/.claude/skills/{mastermind-skills/my-issues.md → mastermind-my-issues/SKILL.md} +2 -2
  103. package/.claude/skills/{mastermind-skills/new-agent.md → mastermind-new-agent/SKILL.md} +2 -2
  104. package/.claude/skills/{mastermind-skills/ops.md → mastermind-ops/SKILL.md} +5 -5
  105. package/.claude/skills/{mastermind-skills/org-chart.md → mastermind-org-chart/SKILL.md} +2 -2
  106. package/.claude/skills/{mastermind-skills/org-settings.md → mastermind-org-settings/SKILL.md} +2 -2
  107. package/.claude/skills/{mastermind-skills/orgs.md → mastermind-orgs/SKILL.md} +1 -1
  108. package/.claude/skills/{mastermind-skills/orgstatus.md → mastermind-orgstatus/SKILL.md} +2 -2
  109. package/.claude/skills/{mastermind-skills/plan.md → mastermind-plan/SKILL.md} +7 -7
  110. package/.claude/skills/{mastermind-skills/plan-to-tasks.md → mastermind-plan-to-tasks/SKILL.md} +2 -2
  111. package/.claude/skills/{mastermind-skills/plugin-manager.md → mastermind-plugin-manager/SKILL.md} +2 -2
  112. package/.claude/skills/{mastermind-skills/plugin-settings.md → mastermind-plugin-settings/SKILL.md} +2 -2
  113. package/.claude/skills/{mastermind-skills/plugins.md → mastermind-plugins/SKILL.md} +2 -2
  114. package/.claude/skills/{mastermind-skills/profile.md → mastermind-profile/SKILL.md} +2 -2
  115. package/.claude/skills/{mastermind-skills/project-detail.md → mastermind-project-detail/SKILL.md} +2 -2
  116. package/.claude/skills/{mastermind-skills/project-workspace.md → mastermind-project-workspace/SKILL.md} +2 -2
  117. package/.claude/skills/{mastermind-skills/projects.md → mastermind-projects/SKILL.md} +2 -2
  118. package/.claude/skills/{mastermind-skills/_protocol.md → mastermind-protocol/SKILL.md} +3 -3
  119. package/.claude/skills/{mastermind-skills/release.md → mastermind-release/SKILL.md} +5 -5
  120. package/.claude/skills/{mastermind-skills/_repeat.md → mastermind-repeat/SKILL.md} +2 -2
  121. package/.claude/skills/{mastermind-skills/research.md → mastermind-research/SKILL.md} +5 -5
  122. package/.claude/skills/{mastermind-skills/review.md → mastermind-review/SKILL.md} +5 -5
  123. package/.claude/skills/{mastermind-skills/routine-detail.md → mastermind-routine-detail/SKILL.md} +2 -2
  124. package/.claude/skills/{mastermind-skills/routines.md → mastermind-routines/SKILL.md} +2 -2
  125. package/.claude/skills/{mastermind-skills/runorgv1.md → mastermind-runorgv1/SKILL.md} +2 -2
  126. package/.claude/skills/{mastermind-skills/sales.md → mastermind-sales/SKILL.md} +5 -5
  127. package/.claude/skills/{mastermind-skills/search.md → mastermind-search/SKILL.md} +2 -2
  128. package/.claude/skills/{mastermind-skills/secrets.md → mastermind-secrets/SKILL.md} +2 -2
  129. package/.claude/skills/{mastermind-skills/skill-builder.md → mastermind-skill-builder/SKILL.md} +16 -14
  130. package/.claude/skills/mastermind-skills/{skills.md → SKILL.md} +2 -2
  131. package/.claude/skills/{mastermind-skills/stoporg.md → mastermind-stoporg/SKILL.md} +2 -2
  132. package/.claude/skills/{mastermind-skills/taskdev.md → mastermind-taskdev/SKILL.md} +6 -6
  133. package/.claude/skills/{mastermind-skills → mastermind-taskdev}/implementer-prompt.md +1 -1
  134. package/.claude/skills/{mastermind-skills/tasks.md → mastermind-tasks/SKILL.md} +2 -2
  135. package/.claude/skills/{mastermind-skills/tdd.md → mastermind-tdd/SKILL.md} +4 -4
  136. package/.claude/skills/{mastermind-skills/techport.md → mastermind-techport/SKILL.md} +6 -6
  137. package/.claude/skills/{mastermind-skills/threads.md → mastermind-threads/SKILL.md} +2 -2
  138. package/.claude/skills/{mastermind-skills/tree-control.md → mastermind-tree-control/SKILL.md} +2 -2
  139. package/.claude/skills/{mastermind-skills/verify.md → mastermind-verify/SKILL.md} +1 -1
  140. package/.claude/skills/{mastermind-skills/wiki.md → mastermind-wiki/SKILL.md} +2 -2
  141. package/.claude/skills/{mastermind-skills/workspace-detail.md → mastermind-workspace-detail/SKILL.md} +2 -2
  142. package/.claude/skills/{mastermind-skills/workspaces.md → mastermind-workspaces/SKILL.md} +2 -2
  143. package/.claude/skills/monodesign/SKILL.md +114 -190
  144. package/.claude/skills/monodesign/adapt.md +1 -1
  145. package/.claude/skills/monodesign/agents/monodesign-asset-producer.md +4 -4
  146. package/.claude/skills/monodesign/agents/monodesign-manual-edit-applier.md +103 -0
  147. package/.claude/skills/monodesign/audit.md +1 -1
  148. package/.claude/skills/monodesign/craft.md +2 -2
  149. package/.claude/skills/monodesign/critique.md +1 -1
  150. package/.claude/skills/monodesign/init.md +30 -0
  151. package/.claude/skills/monodesign/layout.md +36 -0
  152. package/.claude/skills/monodesign/live.md +19 -44
  153. package/.claude/skills/monodesign/reference/adapt.md +122 -0
  154. package/.claude/skills/monodesign/reference/adapt.native.md +58 -0
  155. package/.claude/skills/monodesign/reference/android.md +40 -0
  156. package/.claude/skills/monodesign/reference/animate.md +39 -11
  157. package/.claude/skills/monodesign/reference/antipatterns-catalog.md +67 -16
  158. package/.claude/skills/monodesign/reference/audit.md +5 -3
  159. package/.claude/skills/monodesign/reference/audit.native.md +139 -0
  160. package/.claude/skills/monodesign/reference/bolder.md +71 -64
  161. package/.claude/skills/monodesign/reference/brand.md +12 -18
  162. package/.claude/skills/monodesign/reference/clarify.md +114 -0
  163. package/.claude/skills/monodesign/reference/codex.md +4 -6
  164. package/.claude/skills/monodesign/reference/colorize.md +108 -5
  165. package/.claude/skills/monodesign/reference/craft.md +70 -143
  166. package/.claude/skills/monodesign/reference/critique.md +635 -68
  167. package/.claude/skills/monodesign/reference/delight.md +1 -1
  168. package/.claude/skills/monodesign/reference/distill.md +1 -1
  169. package/.claude/skills/monodesign/reference/document.md +24 -22
  170. package/.claude/skills/monodesign/reference/extract.md +1 -1
  171. package/.claude/skills/monodesign/reference/hooks.md +22 -29
  172. package/.claude/skills/monodesign/reference/init.md +221 -0
  173. package/.claude/skills/monodesign/reference/interaction-design.md +0 -6
  174. package/.claude/skills/monodesign/reference/ios.md +45 -0
  175. package/.claude/skills/monodesign/reference/layout.md +57 -13
  176. package/.claude/skills/monodesign/reference/live.md +159 -71
  177. package/.claude/skills/monodesign/reference/overdrive.md +1 -1
  178. package/.claude/skills/monodesign/reference/personas.md +1 -1
  179. package/.claude/skills/monodesign/reference/polish.md +16 -8
  180. package/.claude/skills/monodesign/reference/pre-delivery-checklist.md +1 -1
  181. package/.claude/skills/monodesign/reference/product.md +1 -3
  182. package/.claude/skills/monodesign/reference/quieter.md +1 -1
  183. package/.claude/skills/monodesign/reference/shape.md +27 -13
  184. package/.claude/skills/monodesign/reference/teach.md +6 -152
  185. package/.claude/skills/monodesign/reference/typeset.md +180 -3
  186. package/.claude/skills/monodesign/scripts/command-metadata.json +94 -0
  187. package/.claude/skills/monodesign/scripts/context-signals.mjs +260 -0
  188. package/.claude/skills/monodesign/scripts/context.mjs +1061 -0
  189. package/.claude/skills/monodesign/scripts/critique-storage.mjs +416 -0
  190. package/.claude/skills/monodesign/scripts/detect-csp.mjs +198 -0
  191. package/.claude/skills/monodesign/scripts/detect.mjs +33 -0
  192. package/.claude/skills/monodesign/scripts/detector/browser/injected/index.mjs +1962 -0
  193. package/.claude/skills/monodesign/scripts/detector/cli/main.mjs +321 -0
  194. package/.claude/skills/monodesign/scripts/detector/design-system.mjs +814 -0
  195. package/.claude/skills/monodesign/scripts/detector/detect-antipatterns-browser.js +5601 -0
  196. package/.claude/skills/monodesign/scripts/detector/detect-antipatterns.mjs +50 -0
  197. package/.claude/skills/monodesign/scripts/detector/engines/browser/detect-url.mjs +259 -0
  198. package/.claude/skills/monodesign/scripts/detector/engines/browser/drivers.mjs +258 -0
  199. package/.claude/skills/monodesign/scripts/detector/engines/regex/detect-text.mjs +636 -0
  200. package/.claude/skills/monodesign/scripts/detector/engines/static-html/css-cascade.mjs +1015 -0
  201. package/.claude/skills/monodesign/scripts/detector/engines/static-html/detect-html.mjs +253 -0
  202. package/.claude/skills/monodesign/scripts/detector/engines/visual/screenshot-contrast.mjs +198 -0
  203. package/.claude/skills/monodesign/scripts/detector/findings.mjs +12 -0
  204. package/.claude/skills/monodesign/scripts/detector/fix/css-regions.mjs +181 -0
  205. package/.claude/skills/monodesign/scripts/detector/fix/fixers.mjs +373 -0
  206. package/.claude/skills/monodesign/scripts/detector/fix/index.mjs +426 -0
  207. package/.claude/skills/monodesign/scripts/detector/node/file-system.mjs +198 -0
  208. package/.claude/skills/monodesign/scripts/detector/profile/profiler.mjs +166 -0
  209. package/.claude/skills/monodesign/scripts/detector/registry/antipatterns.mjs +563 -0
  210. package/.claude/skills/monodesign/scripts/detector/rules/checks.mjs +2995 -0
  211. package/.claude/skills/monodesign/scripts/detector/shared/color.mjs +124 -0
  212. package/.claude/skills/monodesign/scripts/detector/shared/constants.mjs +101 -0
  213. package/.claude/skills/monodesign/scripts/detector/shared/fonts.mjs +30 -0
  214. package/.claude/skills/monodesign/scripts/detector/shared/inline-ignores.mjs +148 -0
  215. package/.claude/skills/monodesign/scripts/detector/shared/page.mjs +7 -0
  216. package/.claude/skills/monodesign/scripts/hook-admin.mjs +661 -0
  217. package/.claude/skills/monodesign/scripts/hook-before-edit.mjs +516 -0
  218. package/.claude/skills/monodesign/scripts/hook-lib.mjs +1776 -0
  219. package/.claude/skills/monodesign/scripts/hook.mjs +61 -0
  220. package/.claude/skills/monodesign/scripts/lib/design-parser.mjs +842 -0
  221. package/.claude/skills/monodesign/scripts/lib/is-generated.mjs +69 -0
  222. package/.claude/skills/monodesign/scripts/lib/monodesign-config.mjs +640 -0
  223. package/.claude/skills/monodesign/scripts/lib/monodesign-paths.mjs +129 -0
  224. package/.claude/skills/monodesign/scripts/lib/provider.mjs +4 -0
  225. package/.claude/skills/monodesign/scripts/lib/target-args.mjs +42 -0
  226. package/.claude/skills/monodesign/scripts/live/browser-script-parts.mjs +50 -0
  227. package/.claude/skills/monodesign/scripts/live/completion.mjs +19 -0
  228. package/.claude/skills/monodesign/scripts/live/event-validation.mjs +137 -0
  229. package/.claude/skills/monodesign/scripts/live/insert-ui.mjs +458 -0
  230. package/.claude/skills/monodesign/scripts/live/manual-apply.mjs +939 -0
  231. package/.claude/skills/monodesign/scripts/live/manual-edit-routes.mjs +357 -0
  232. package/.claude/skills/monodesign/scripts/live/manual-edits-buffer.mjs +152 -0
  233. package/.claude/skills/monodesign/scripts/live/session-store.mjs +293 -0
  234. package/.claude/skills/monodesign/scripts/live/svelte-component.mjs +826 -0
  235. package/.claude/skills/monodesign/scripts/live/sveltekit-adapter.mjs +274 -0
  236. package/.claude/skills/monodesign/scripts/live/ui-core.mjs +180 -0
  237. package/.claude/skills/monodesign/scripts/live/vocabulary.mjs +36 -0
  238. package/.claude/skills/monodesign/scripts/live-accept.mjs +812 -0
  239. package/.claude/skills/monodesign/scripts/live-browser-dom.js +146 -0
  240. package/.claude/skills/monodesign/scripts/live-browser-session.js +123 -0
  241. package/.claude/skills/monodesign/scripts/live-browser.js +11240 -0
  242. package/.claude/skills/monodesign/scripts/live-commit-manual-edits.mjs +1241 -0
  243. package/.claude/skills/monodesign/scripts/live-complete.mjs +75 -0
  244. package/.claude/skills/monodesign/scripts/live-copy-edit-agent.mjs +683 -0
  245. package/.claude/skills/monodesign/scripts/live-discard-manual-edits.mjs +51 -0
  246. package/.claude/skills/monodesign/scripts/live-inject.mjs +583 -0
  247. package/.claude/skills/monodesign/scripts/live-insert.mjs +272 -0
  248. package/.claude/skills/monodesign/scripts/live-manual-edit-evidence.mjs +363 -0
  249. package/.claude/skills/monodesign/scripts/live-poll.mjs +384 -0
  250. package/.claude/skills/monodesign/scripts/live-resume.mjs +94 -0
  251. package/.claude/skills/monodesign/scripts/live-server.mjs +1137 -0
  252. package/.claude/skills/monodesign/scripts/live-status.mjs +61 -0
  253. package/.claude/skills/monodesign/scripts/live-target.mjs +30 -0
  254. package/.claude/skills/monodesign/scripts/live-wrap.mjs +894 -0
  255. package/.claude/skills/monodesign/scripts/live.mjs +297 -0
  256. package/.claude/skills/monodesign/scripts/modern-screenshot.umd.js +14 -0
  257. package/.claude/skills/monodesign/scripts/palette.mjs +633 -0
  258. package/.claude/skills/monodesign/scripts/pin.mjs +221 -0
  259. package/.claude/skills/monodesign/teach.md +7 -58
  260. package/README.md +1 -1
  261. package/dist/src/commands/design-detect.d.ts +7 -1
  262. package/dist/src/commands/design-detect.d.ts.map +1 -1
  263. package/dist/src/commands/design-detect.js +131 -38
  264. package/dist/src/commands/design-detect.js.map +1 -1
  265. package/dist/src/commands/design-palette.d.ts +0 -1
  266. package/dist/src/commands/design-palette.d.ts.map +1 -1
  267. package/dist/src/commands/design-palette.js +2 -3
  268. package/dist/src/commands/design-palette.js.map +1 -1
  269. package/dist/src/commands/doc.d.ts.map +1 -1
  270. package/dist/src/commands/doc.js +72 -15
  271. package/dist/src/commands/doc.js.map +1 -1
  272. package/dist/src/commands/doctor-project-checks.d.ts +5 -1
  273. package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
  274. package/dist/src/commands/doctor-project-checks.js +24 -1
  275. package/dist/src/commands/doctor-project-checks.js.map +1 -1
  276. package/dist/src/commands/doctor.js +3 -3
  277. package/dist/src/commands/doctor.js.map +1 -1
  278. package/dist/src/commands/hooks-workers.d.ts +1 -1
  279. package/dist/src/commands/hooks-workers.js +8 -8
  280. package/dist/src/commands/hooks-workers.js.map +1 -1
  281. package/dist/src/commands/init.js +2 -2
  282. package/dist/src/commands/init.js.map +1 -1
  283. package/dist/src/commands/org.d.ts.map +1 -1
  284. package/dist/src/commands/org.js +109 -9
  285. package/dist/src/commands/org.js.map +1 -1
  286. package/dist/src/index.d.ts +1 -1
  287. package/dist/src/index.js +3 -3
  288. package/dist/src/index.js.map +1 -1
  289. package/dist/src/init/claudemd-generator.js +5 -5
  290. package/dist/src/init/claudemd-generator.js.map +1 -1
  291. package/dist/src/init/executor.d.ts.map +1 -1
  292. package/dist/src/init/executor.js +17 -6
  293. package/dist/src/init/executor.js.map +1 -1
  294. package/dist/src/knowledge/document-pipeline.d.ts +2 -0
  295. package/dist/src/knowledge/document-pipeline.d.ts.map +1 -1
  296. package/dist/src/knowledge/document-pipeline.js +4 -1
  297. package/dist/src/knowledge/document-pipeline.js.map +1 -1
  298. package/dist/src/mcp-server.js +2 -2
  299. package/dist/src/mcp-server.js.map +1 -1
  300. package/dist/src/mcp-tools/hooks-intelligence.d.ts +1 -1
  301. package/dist/src/mcp-tools/hooks-intelligence.js +1 -1
  302. package/dist/src/mcp-tools/hooks-routing.js +2 -2
  303. package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
  304. package/dist/src/mcp-tools/hooks-tools.js +1 -1
  305. package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
  306. package/dist/src/mcp-tools/knowledge-tools.d.ts.map +1 -1
  307. package/dist/src/mcp-tools/knowledge-tools.js +38 -7
  308. package/dist/src/mcp-tools/knowledge-tools.js.map +1 -1
  309. package/dist/src/mcp-tools/memory-tools.d.ts +8 -3
  310. package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
  311. package/dist/src/mcp-tools/memory-tools.js +193 -31
  312. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  313. package/dist/src/memory/memory-bridge.d.ts +33 -0
  314. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  315. package/dist/src/memory/memory-bridge.js +166 -17
  316. package/dist/src/memory/memory-bridge.js.map +1 -1
  317. package/dist/src/memory/memory-kg.d.ts +186 -0
  318. package/dist/src/memory/memory-kg.d.ts.map +1 -0
  319. package/dist/src/memory/memory-kg.js +450 -0
  320. package/dist/src/memory/memory-kg.js.map +1 -0
  321. package/dist/src/memory/query-router.d.ts +44 -0
  322. package/dist/src/memory/query-router.d.ts.map +1 -0
  323. package/dist/src/memory/query-router.js +113 -0
  324. package/dist/src/memory/query-router.js.map +1 -0
  325. package/dist/src/orgrt/daemon.d.ts +18 -0
  326. package/dist/src/orgrt/daemon.d.ts.map +1 -1
  327. package/dist/src/orgrt/daemon.js +249 -12
  328. package/dist/src/orgrt/daemon.js.map +1 -1
  329. package/dist/src/orgrt/migrate.d.ts.map +1 -1
  330. package/dist/src/orgrt/migrate.js +7 -0
  331. package/dist/src/orgrt/migrate.js.map +1 -1
  332. package/dist/src/orgrt/policy.d.ts.map +1 -1
  333. package/dist/src/orgrt/policy.js +7 -0
  334. package/dist/src/orgrt/policy.js.map +1 -1
  335. package/dist/src/orgrt/session.d.ts +24 -1
  336. package/dist/src/orgrt/session.d.ts.map +1 -1
  337. package/dist/src/orgrt/session.js +18 -3
  338. package/dist/src/orgrt/session.js.map +1 -1
  339. package/dist/src/orgrt/templates.d.ts +1 -0
  340. package/dist/src/orgrt/templates.d.ts.map +1 -1
  341. package/dist/src/orgrt/templates.js +9 -4
  342. package/dist/src/orgrt/templates.js.map +1 -1
  343. package/dist/src/orgrt/types.d.ts +15 -0
  344. package/dist/src/orgrt/types.d.ts.map +1 -1
  345. package/dist/src/orgrt/types.js +2 -0
  346. package/dist/src/orgrt/types.js.map +1 -1
  347. package/dist/src/routing/embed-worker.js +1 -1
  348. package/dist/src/routing/embed-worker.js.map +1 -1
  349. package/dist/src/routing/llm-caller.js +1 -1
  350. package/dist/src/routing/route-layer-factory.js +1 -1
  351. package/dist/src/routing/route-layer-factory.js.map +1 -1
  352. package/dist/src/ui/dashboard.html +176 -26
  353. package/dist/src/ui/data/sessions/final-sess-001.jsonl +180 -180
  354. package/dist/src/ui/orgs.html +24 -0
  355. package/dist/src/ui/server.mjs +162 -12
  356. package/dist/src/update/checker.js +3 -3
  357. package/dist/src/update/checker.js.map +1 -1
  358. package/dist/tsconfig.tsbuildinfo +1 -1
  359. package/package.json +8 -6
  360. /package/.claude/skills/{mastermind-skills/_agent-select.md → mastermind-agent-select/SKILL.md} +0 -0
  361. /package/.claude/skills/{mastermind-skills/finish.md → mastermind-finish/SKILL.md} +0 -0
  362. /package/.claude/skills/{mastermind-skills/_intake.md → mastermind-intake/SKILL.md} +0 -0
  363. /package/.claude/skills/{mastermind-skills → mastermind-marketing}/references/copywriting-frameworks.md +0 -0
  364. /package/.claude/skills/{mastermind-skills → mastermind-marketing}/references/persuasion-psychology.md +0 -0
  365. /package/.claude/skills/{mastermind-skills/monotask.md → mastermind-monotask/SKILL.md} +0 -0
  366. /package/.claude/skills/{mastermind-skills/receive-review.md → mastermind-receive-review/SKILL.md} +0 -0
  367. /package/.claude/skills/{mastermind-skills/runorg.md → mastermind-runorg/SKILL.md} +0 -0
  368. /package/.claude/skills/{mastermind-skills → mastermind-taskdev}/code-quality-reviewer-prompt.md +0 -0
  369. /package/.claude/skills/{mastermind-skills → mastermind-taskdev}/final-reviewer-prompt.md +0 -0
  370. /package/.claude/skills/{mastermind-skills → mastermind-taskdev}/spec-reviewer-prompt.md +0 -0
  371. /package/.claude/skills/{mastermind-skills/worktree.md → mastermind-worktree/SKILL.md} +0 -0
@@ -976,6 +976,7 @@ html, body {
976
976
  <div id="health-grid" class="health-grid"></div>
977
977
  <div id="health-detail"></div>
978
978
  <div id="health-history"></div>
979
+ <div id="health-memory"></div>
979
980
  </div>
980
981
  </div>
981
982
 
@@ -1762,6 +1763,7 @@ function renderHealth() {
1762
1763
  }
1763
1764
 
1764
1765
  loadRunHistory();
1766
+ loadOrgMemory();
1765
1767
  }
1766
1768
 
1767
1769
  // Run history (history.jsonl, written by the daemon at each stopOrg): outcome,
@@ -1793,6 +1795,28 @@ async function loadRunHistory() {
1793
1795
  } catch (_) { el.innerHTML = ''; }
1794
1796
  }
1795
1797
 
1798
+ // Org memory: knowledge-graph size, learned entities, and distilled rules
1799
+ // (accumulated across runs via org_learn / heuristic extraction).
1800
+ async function loadOrgMemory() {
1801
+ const el = document.getElementById('health-memory');
1802
+ if (!el || !selectedOrg) return;
1803
+ try {
1804
+ const listOrg = allOrgs.find(o => o.name === selectedOrg) || {};
1805
+ const r = await fetch(`/api/orgs/${encodeURIComponent(selectedOrg)}/memory?dir=${encodeURIComponent(listOrg.projectDir || '')}`);
1806
+ if (!r.ok) { el.innerHTML = ''; return; }
1807
+ const m = await r.json();
1808
+ if (!m.nodes && !m.rules) { el.innerHTML = ''; return; }
1809
+ el.innerHTML = `
1810
+ <div style="margin-top:16px">
1811
+ <div style="font-size:8px;letter-spacing:2px;color:var(--dim);margin-bottom:8px">ORG MEMORY — ${Number(m.nodes) || 0} ENTITIES · ${Number(m.edges) || 0} RELATIONS · ${Number(m.rules) || 0} RULES</div>
1812
+ ${Array.isArray(m.glossary) && m.glossary.length ? `
1813
+ <div style="font-size:9px;color:var(--muted);line-height:1.7">${m.glossary.map(g => `<span style="border:1px solid oklch(50% 0 0 / 0.25);border-radius:3px;padding:1px 5px;margin-right:4px;white-space:nowrap;display:inline-block;margin-bottom:3px">${esc(g)}</span>`).join('')}</div>` : ''}
1814
+ ${Array.isArray(m.ruleTexts) && m.ruleTexts.length ? m.ruleTexts.map(t => `
1815
+ <div style="font-size:9px;padding:4px 0;border-bottom:1px solid oklch(50% 0 0 / 0.1);color:var(--muted)">▸ ${esc(t)}</div>`).join('') : ''}
1816
+ </div>`;
1817
+ } catch (_) { el.innerHTML = ''; }
1818
+ }
1819
+
1796
1820
  // ── CHAT TAB ──────────────────────────────────────────────────────
1797
1821
  let chatSessions = []; // all sessions from /api/mastermind/sessions
1798
1822
  let chatCurrentId = null; // currently viewed session id
@@ -686,11 +686,72 @@ export async function startServer({ port = 4242, projectDir, openBrowser = true
686
686
  // back via an auth header or query param on non-GET requests.
687
687
  const authBytes = crypto.randomBytes(24);
688
688
  const dashboardAuthValue = authBytes.toString('hex');
689
- try {
690
- const authFileDir = path.join(projectDir || process.cwd(), '.monomind');
691
- fs.mkdirSync(authFileDir, { recursive: true });
692
- fs.writeFileSync(path.join(authFileDir, 'dashboard-token'), dashboardAuthValue, { mode: 0o600 });
693
- } catch (_) {}
689
+ // A project has ONE primary token file (read by hooks, the CLI, and cross-
690
+ // project callers). Writing it eagerly here would let a SECONDARY instance
691
+ // (scratch port, tests, a second `serve`) clobber the live control server's
692
+ // token after which every hook call to the primary 401s until it restarts,
693
+ // silently degrading per-prompt Second Brain injection to keyword fallback.
694
+ // So the write is deferred to bind time and gated: primary instances write
695
+ // `dashboard-token`; secondaries write `dashboard-token-<port>` instead.
696
+ async function writeDashboardToken(actualPort) {
697
+ try {
698
+ actualPort = Number(actualPort);
699
+ const authFileDir = path.join(projectDir || process.cwd(), '.monomind');
700
+ fs.mkdirSync(authFileDir, { recursive: true });
701
+ // Primary = control.json absent/invalid, or it names this port, or
702
+ // nothing answers on the port it names (stale record from a previous
703
+ // run). Liveness is an HTTP probe, not a pid check — control-start may
704
+ // record pid 0 for adopted servers, and dead pids get recycled; a probe
705
+ // is authoritative either way. Anything answering on the claimed port
706
+ // means "don't clobber" (conservative on ambiguity).
707
+ let primary = true;
708
+ try {
709
+ const ctl = JSON.parse(fs.readFileSync(path.join(authFileDir, 'control.json'), 'utf8'));
710
+ const ctlPort = Number(ctl.port || (String(ctl.url || '').match(/:(\d+)/) || [])[1]);
711
+ if (ctlPort && ctlPort !== actualPort && !(Number.isInteger(ctl.pid) && ctl.pid === process.pid)) {
712
+ try {
713
+ await fetch(`http://127.0.0.1:${ctlPort}/api/status`, { signal: AbortSignal.timeout(800) });
714
+ primary = false; // something answered — a live server owns the primary token
715
+ } catch (_) { primary = true; } // nothing answering — stale record
716
+ }
717
+ } catch (_) { /* no readable control.json — treat as primary */ }
718
+ fs.writeFileSync(
719
+ path.join(authFileDir, primary ? 'dashboard-token' : `dashboard-token-${actualPort}`),
720
+ dashboardAuthValue, { mode: 0o600 },
721
+ );
722
+ // Sweep stale secondary tokens (dead scratch/test instances) so they
723
+ // don't accumulate as orphaned credential files.
724
+ // monolean: age-based sweep only — no on-exit unlink plumbing.
725
+ try {
726
+ const weekMs = 7 * 24 * 3600 * 1000;
727
+ for (const f of fs.readdirSync(authFileDir)) {
728
+ if (!/^dashboard-token-\d+$/.test(f) || f === `dashboard-token-${actualPort}`) continue;
729
+ const fp = path.join(authFileDir, f);
730
+ if (Date.now() - fs.statSync(fp).mtimeMs > weekMs) fs.unlinkSync(fp);
731
+ }
732
+ } catch (_) {}
733
+ } catch (_) {}
734
+ }
735
+ // Propagate the fresh token to every known project whose control.json points
736
+ // at this server — otherwise each restart silently orphans cross-project
737
+ // callers (their curls/CLI reads a stale token and 401s forever).
738
+ // Called after bind so the match uses the ACTUAL bound port.
739
+ function propagateDashboardToken(actualPort) {
740
+ try {
741
+ const _kpFile = path.join(projectDir || process.cwd(), 'data', 'known-projects.json');
742
+ if (!fs.existsSync(_kpFile)) return;
743
+ for (const _kp of JSON.parse(fs.readFileSync(_kpFile, 'utf8'))) {
744
+ try {
745
+ const _kpMono = path.join(_kp, '.monomind');
746
+ const _kpCtl = JSON.parse(fs.readFileSync(path.join(_kpMono, 'control.json'), 'utf8'));
747
+ // Only pair projects that direct their traffic to this server's port.
748
+ if (_kpCtl && String(_kpCtl.url || '').includes(`:${actualPort}`)) {
749
+ fs.writeFileSync(path.join(_kpMono, 'dashboard-token'), dashboardAuthValue, { mode: 0o600 });
750
+ }
751
+ } catch (_) { /* project missing/unreadable — skip */ }
752
+ }
753
+ } catch (_) {}
754
+ }
694
755
 
695
756
  // Parse a .claude/agents/*.md definition into { name, description, capability{}, document }.
696
757
  // Tolerant line-based parse of the YAML frontmatter (expertise / task_types as lists).
@@ -763,7 +824,14 @@ export async function startServer({ port = 4242, projectDir, openBrowser = true
763
824
  eventProject = _norm;
764
825
  }
765
826
  }
766
- const root = eventProject || projectDir || process.cwd();
827
+ // Forwarder events omit `project` on everything but org:start — resolve the
828
+ // org's home from known-projects so run-file writes land in the ORG's git
829
+ // dir, not the server's (the dashboard reads the org project's run files).
830
+ let _orgHome = null;
831
+ if (!eventProject && event.org) {
832
+ try { _orgHome = _resolveOrgProjectDir(String(event.org).trim(), projectDir || process.cwd()); } catch (_) {}
833
+ }
834
+ const root = eventProject || _orgHome || projectDir || process.cwd();
767
835
  const dataDir = path.join(root, 'data');
768
836
  try { fs.mkdirSync(dataDir, { recursive: true }); } catch (_) {}
769
837
  // Track known project dirs for aggregated session listing
@@ -5996,6 +6064,34 @@ new Sigma(g,document.getElementById('g'),{renderEdgeLabels:false,labelColor:{col
5996
6064
  return;
5997
6065
  }
5998
6066
 
6067
+ // GET /api/orgs/:name/memory — org knowledge-graph stats + glossary + rules
6068
+ if (req.method === 'GET' && /^\/api\/orgs\/[^/]+\/memory$/.test(url)) {
6069
+ try {
6070
+ const orgName = decodeURIComponent(url.split('/')[3]);
6071
+ const _memQs = new URL(req.url, 'http://localhost').searchParams;
6072
+ const root = path.resolve(_memQs.get('dir') || projectDir || process.cwd());
6073
+ if (!orgName || orgName.length > 64 || !/^[a-z0-9][a-z0-9_-]*$/i.test(orgName)) {
6074
+ res.writeHead(400); res.end('{"error":"invalid org name"}'); return;
6075
+ }
6076
+ const monoDir = _getGitMonomindDir(root) || path.join(root, '.monomind');
6077
+ const dbPath = path.join(monoDir, 'org-memory');
6078
+ if (!fs.existsSync(dbPath)) {
6079
+ res.writeHead(200, { 'Content-Type': 'application/json', ...(corsOrigin ? { 'Access-Control-Allow-Origin': corsOrigin } : {}) });
6080
+ res.end(JSON.stringify({ nodes: 0, edges: 0, rules: 0, glossary: [], ruleTexts: [] }));
6081
+ return;
6082
+ }
6083
+ const kg = await import('../memory/memory-kg.js');
6084
+ const [stats, glossary, ruleList] = await Promise.all([
6085
+ kg.kgStats({ dbPath }), kg.kgGlossary({ dbPath, limit: 12 }), kg.kgListRules({ dbPath, limit: 10 }),
6086
+ ]);
6087
+ res.writeHead(200, { 'Content-Type': 'application/json', ...(corsOrigin ? { 'Access-Control-Allow-Origin': corsOrigin } : {}) });
6088
+ res.end(JSON.stringify({ ...stats, glossary, ruleTexts: ruleList.map(r => r.rule.slice(0, 200)) }));
6089
+ } catch(err) {
6090
+ res.writeHead(500); res.end(JSON.stringify({ error: err.message }));
6091
+ }
6092
+ return;
6093
+ }
6094
+
5999
6095
  // POST /api/knowledge/search — warm semantic knowledge search for hooks.
6000
6096
  // The dashboard server is the one long-lived process on the machine, so it
6001
6097
  // holds the local embedding model warm; per-prompt hook subprocesses (which
@@ -6036,17 +6132,69 @@ new Sigma(g,document.getElementById('g'),{renderEdgeLabels:false,labelColor:{col
6036
6132
  // scope: project | global | all (default all) — project results get a
6037
6133
  // small tie boost; global hits are flagged so callers can show origin.
6038
6134
  const scope = payload.scope === 'project' || payload.scope === 'global' ? payload.scope : 'all';
6039
- const [proj, glob] = await Promise.all([
6135
+ // Rule-based router (no LLM): chunks always run (this endpoint's
6136
+ // bread and butter); the auxiliary surfaces — distilled rules,
6137
+ // knowledge-graph triplets, pattern memories — only spend a query
6138
+ // when the router votes for them or routing is unconfident.
6139
+ let wantRules = true, wantKg = true, wantMemory = true;
6140
+ let rrfFuse = null;
6141
+ try {
6142
+ const routerMod = await import('../memory/query-router.js');
6143
+ const route = routerMod.routeQuery(query);
6144
+ rrfFuse = routerMod.rrfFuse;
6145
+ wantRules = !route.confident || route.surfaces.includes('rules');
6146
+ wantKg = !route.confident || route.surfaces.includes('kg');
6147
+ wantMemory = !route.confident || route.surfaces.includes('memory');
6148
+ } catch { /* router unavailable — keep all surfaces on */ }
6149
+ let kgSearch = null;
6150
+ if (wantKg && scope !== 'global') {
6151
+ try { kgSearch = (await import('../memory/memory-kg.js')).kgSearch; } catch { /* kg unavailable */ }
6152
+ }
6153
+ const [proj, glob, rules, graph, mems] = await Promise.all([
6040
6154
  scope !== 'global' ? bridge.bridgeSearchEntries({ query, namespace, limit }).catch(() => null) : null,
6041
6155
  scope !== 'project' ? bridge.bridgeSearchEntries({ query, namespace: 'knowledge:global', limit, dbPath: '@global' }).catch(() => null) : null,
6156
+ // Distilled rules ("when X do Y") learned from sessions/runs —
6157
+ // small namespace, high injection value, threshold keeps it quiet.
6158
+ scope !== 'global' && wantRules ? bridge.bridgeSearchEntries({ query, namespace: 'rules', limit: 2, threshold: 0.45 }).catch(() => null) : null,
6159
+ // Knowledge-graph triplets: relationship-shaped queries surface
6160
+ // facts no chunk contains. Triplet scores derive from seeded
6161
+ // cosine matches (≥0.35), so they clear callers' relevance floors.
6162
+ scope !== 'global' && kgSearch ? kgSearch({ query, limit: 4 }).catch(() => null) : null,
6163
+ // Past patterns/decisions for "last time / previously" queries.
6164
+ scope !== 'global' && wantMemory ? bridge.bridgeSearchEntries({ query, namespace: 'patterns', limit: 2, threshold: 0.4 }).catch(() => null) : null,
6042
6165
  ]);
6043
- const merged = [
6044
- ...(proj?.results || []).map(r => ({ key: r.key, content: String(r.content || '').slice(0, 2000), score: r.score + 0.05, global: false, tags: r.tags })),
6045
- ...(glob?.results || []).map(r => ({ key: r.key, content: String(r.content || '').slice(0, 2000), score: r.score, global: true, tags: r.tags })),
6046
- ].sort((a, b) => b.score - a.score).slice(0, limit);
6166
+ const lists = [
6167
+ (proj?.results || []).map(r => ({ id: r.id, key: r.key, content: String(r.content || '').slice(0, 2000), score: r.score + 0.05, global: false, tags: r.tags, importance: 0.6 })),
6168
+ (glob?.results || []).map(r => ({ id: r.id, key: r.key, content: String(r.content || '').slice(0, 2000), score: r.score, global: true, tags: r.tags })),
6169
+ (rules?.results || []).map(r => ({ id: r.id, key: r.key, content: String(r.content || '').slice(0, 2000), score: r.score + 0.05, global: false, rule: true, tags: r.tags, importance: 0.7 })),
6170
+ (graph?.triplets || []).map((t, i) => ({
6171
+ id: 'kg:' + i + ':' + t.source + '|' + t.relation + '|' + t.target,
6172
+ key: 'kg:' + t.source,
6173
+ content: String(t.source + ' —' + t.relation + '→ ' + t.target + (t.fact && t.fact !== (t.source + ' ' + t.relation + ' ' + t.target) ? ' (' + String(t.fact).slice(0, 300) + ')' : '')).slice(0, 2000),
6174
+ score: t.score, global: false, triplet: true,
6175
+ })),
6176
+ (mems?.results || []).map(r => ({ id: r.id, key: r.key, content: String(r.content || '').slice(0, 2000), score: r.score, global: false, memory: true, tags: r.tags })),
6177
+ ];
6178
+ // Rank-fuse across surfaces (raw scores aren't comparable between
6179
+ // cosine chunks and blended triplets); each item keeps its native
6180
+ // score so downstream relevance floors still apply. Fallback: flat
6181
+ // score sort when the router module failed to load.
6182
+ const merged = (rrfFuse
6183
+ ? rrfFuse(lists, limit)
6184
+ : lists.flat().sort((a, b) => b.score - a.score).slice(0, limit)
6185
+ ).map(({ importance, rrf, ...r }) => r);
6186
+ // Served excerpts are (very likely) injected into the caller's prompt —
6187
+ // that IS usage. Reinforce frequency_weight, per-store, fire-and-forget.
6188
+ try {
6189
+ const projIds = merged.filter(m => !m.global && !m.triplet && m.id).map(m => m.id);
6190
+ const globIds = merged.filter(m => m.global && m.id).map(m => m.id);
6191
+ if (projIds.length) bridge.bridgeRecordUsage?.({ entryIds: projIds }).catch(() => {});
6192
+ if (globIds.length) bridge.bridgeRecordUsage?.({ entryIds: globIds, dbPath: '@global' }).catch(() => {});
6193
+ } catch { /* best effort */ }
6047
6194
  res.writeHead(200, { 'Content-Type': 'application/json', ...(corsOrigin ? { 'Access-Control-Allow-Origin': corsOrigin } : {}) });
6048
6195
  res.end(JSON.stringify({
6049
- method: proj?.searchMethod || glob?.searchMethod || 'none',
6196
+ method: proj?.searchMethod || glob?.searchMethod || rules?.searchMethod || mems?.searchMethod
6197
+ || (merged.length ? 'mixed' : 'none'),
6050
6198
  results: merged,
6051
6199
  }));
6052
6200
  } catch (err) {
@@ -6438,6 +6586,8 @@ new Sigma(g,document.getElementById('g'),{renderEdgeLabels:false,labelColor:{col
6438
6586
  fs.writeFileSync(process.env.MONOMIND_BOUND_REPORT, JSON.stringify({ pid: process.pid, port: boundPort, ts: Date.now() }));
6439
6587
  } catch (_) { /* non-fatal — spawner falls back to pid-matched HTTP probe */ }
6440
6588
  }
6589
+ await writeDashboardToken(boundPort);
6590
+ propagateDashboardToken(boundPort);
6441
6591
 
6442
6592
  // ── One-time migration: mastermind-sessions.json → per-session JSONL ─────
6443
6593
  // Runs once on startup. Existing sessions in the old monolithic format are
@@ -46,9 +46,9 @@ const MONOMIND_PACKAGES = [
46
46
  '@monoes/monograph',
47
47
  '@monoes/memory',
48
48
  '@monoes/monodesign',
49
- '@monomind/hooks',
50
- '@monomind/mcp',
51
- '@monomind/routing',
49
+ '@monoes/hooks',
50
+ '@monoes/mcp',
51
+ '@monoes/routing',
52
52
  ];
53
53
  // npm package name regex — covers plain names and @scope/name forms.
54
54
  // Validates before using the name in URLs or filesystem paths.
@@ -1 +1 @@
1
- {"version":3,"file":"checker.js","sourceRoot":"","sources":["../../../src/update/checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checker.js","sourceRoot":"","sources":["../../../src/update/checker.ts"],"names":[],"mappings":"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"}