@mindrian_os/install 1.13.0-beta.11

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 (597) hide show
  1. package/.claude-plugin/plugin.json +21 -0
  2. package/.mcp.json +9 -0
  3. package/CHANGELOG.md +3333 -0
  4. package/LICENSE +123 -0
  5. package/README.md +673 -0
  6. package/agents/brain-query.md +80 -0
  7. package/agents/framework-runner.md +237 -0
  8. package/agents/grading.md +188 -0
  9. package/agents/investor.md +128 -0
  10. package/agents/larry-extended.md +135 -0
  11. package/agents/opportunity-scanner.md +91 -0
  12. package/agents/persona-analyst.md +132 -0
  13. package/agents/research.md +89 -0
  14. package/agents/reverse-salient-agent.md +27 -0
  15. package/bin/cli.js +142 -0
  16. package/bin/mindrian-mcp-server.cjs +182 -0
  17. package/bin/mindrian-tools.cjs +765 -0
  18. package/commands/act.md +439 -0
  19. package/commands/admin.md +404 -0
  20. package/commands/analyze-needs.md +42 -0
  21. package/commands/analyze-systems.md +39 -0
  22. package/commands/analyze-timing.md +42 -0
  23. package/commands/auto-explore.md +64 -0
  24. package/commands/beautiful-question.md +40 -0
  25. package/commands/brain-derive.md +78 -0
  26. package/commands/build-knowledge.md +42 -0
  27. package/commands/build-thesis.md +46 -0
  28. package/commands/causal.md +234 -0
  29. package/commands/challenge-assumptions.md +33 -0
  30. package/commands/compare-ventures.md +83 -0
  31. package/commands/dashboard.md +110 -0
  32. package/commands/deep-grade.md +82 -0
  33. package/commands/diagnose.md +58 -0
  34. package/commands/diagnostics.md +151 -0
  35. package/commands/doctor.md +151 -0
  36. package/commands/dominant-designs.md +40 -0
  37. package/commands/explain-decision.md +87 -0
  38. package/commands/explore-domains.md +42 -0
  39. package/commands/explore-futures.md +40 -0
  40. package/commands/explore-trends.md +42 -0
  41. package/commands/export.md +103 -0
  42. package/commands/file-meeting.md +724 -0
  43. package/commands/find-analogies.md +188 -0
  44. package/commands/find-bottlenecks.md +62 -0
  45. package/commands/find-connections.md +76 -0
  46. package/commands/funding.md +81 -0
  47. package/commands/grade.md +203 -0
  48. package/commands/graph.md +128 -0
  49. package/commands/hat-briefing.md +125 -0
  50. package/commands/heal.md +196 -0
  51. package/commands/help.md +399 -0
  52. package/commands/hmi-status.md +172 -0
  53. package/commands/jtbd.md +241 -0
  54. package/commands/leadership.md +73 -0
  55. package/commands/lean-canvas.md +40 -0
  56. package/commands/macro-trends.md +40 -0
  57. package/commands/map-unknowns.md +40 -0
  58. package/commands/memory.md +173 -0
  59. package/commands/models.md +175 -0
  60. package/commands/mos-reason.md +285 -0
  61. package/commands/mullins.md +120 -0
  62. package/commands/new-project.md +481 -0
  63. package/commands/onboard.md +434 -0
  64. package/commands/operator.md +149 -0
  65. package/commands/opportunities.md +144 -0
  66. package/commands/organize.md +497 -0
  67. package/commands/persona.md +198 -0
  68. package/commands/pipeline.md +112 -0
  69. package/commands/present.md +91 -0
  70. package/commands/publish.md +201 -0
  71. package/commands/query.md +124 -0
  72. package/commands/radar.md +72 -0
  73. package/commands/reanalyze.md +91 -0
  74. package/commands/research.md +196 -0
  75. package/commands/room.md +352 -0
  76. package/commands/rooms.md +598 -0
  77. package/commands/root-cause.md +40 -0
  78. package/commands/rs-experts.md +85 -0
  79. package/commands/rs-explain.md +100 -0
  80. package/commands/rs-fetch.md +94 -0
  81. package/commands/rs-thesis.md +85 -0
  82. package/commands/scenario-plan.md +40 -0
  83. package/commands/scheduled-tasks.md +285 -0
  84. package/commands/score-innovation.md +43 -0
  85. package/commands/scout.md +239 -0
  86. package/commands/setup.md +618 -0
  87. package/commands/snapshot.md +147 -0
  88. package/commands/speakers.md +84 -0
  89. package/commands/splash.md +28 -0
  90. package/commands/status.md +75 -0
  91. package/commands/structure-argument.md +42 -0
  92. package/commands/suggest-next.md +80 -0
  93. package/commands/systems-thinking.md +40 -0
  94. package/commands/think-hats.md +42 -0
  95. package/commands/update.md +181 -0
  96. package/commands/user-needs.md +40 -0
  97. package/commands/validate.md +40 -0
  98. package/commands/value-proposition.md +61 -0
  99. package/commands/vault.md +180 -0
  100. package/commands/visualize.md +52 -0
  101. package/commands/whitespace.md +507 -0
  102. package/commands/wiki.md +69 -0
  103. package/hooks/hooks.json +381 -0
  104. package/hooks/run-hook.cmd +64 -0
  105. package/lib/__init__.py +0 -0
  106. package/lib/__pycache__/__init__.cpython-312.pyc +0 -0
  107. package/lib/agents/auto-explore-agent.cjs +1043 -0
  108. package/lib/agents/reverse-salient-agent.cjs +679 -0
  109. package/lib/agents/tension-hook-agent.cjs +544 -0
  110. package/lib/brain/ROOM.md +44 -0
  111. package/lib/brain/chain-recommender.cjs +301 -0
  112. package/lib/chat/chat-context.js +185 -0
  113. package/lib/chat/chat-panel.js +721 -0
  114. package/lib/chat/fabric-chat.cjs +288 -0
  115. package/lib/chat/generative-tools.js +219 -0
  116. package/lib/conversation/ROOM.md +39 -0
  117. package/lib/conversation/classifier-rules.json +38 -0
  118. package/lib/conversation/classifier.cjs +264 -0
  119. package/lib/conversation/operator.cjs +287 -0
  120. package/lib/copy/115-spec-strings.cjs +55 -0
  121. package/lib/core/__init__.py +0 -0
  122. package/lib/core/__nav-stub.cjs +14 -0
  123. package/lib/core/__pycache__/__init__.cpython-312.pyc +0 -0
  124. package/lib/core/__pycache__/rs-math.cpython-312.pyc +0 -0
  125. package/lib/core/__pycache__/rs_cache.cpython-312.pyc +0 -0
  126. package/lib/core/__pycache__/rs_corpus.cpython-312.pyc +0 -0
  127. package/lib/core/__pycache__/rs_hybrid.cpython-312.pyc +0 -0
  128. package/lib/core/__pycache__/rs_math.cpython-312.pyc +0 -0
  129. package/lib/core/__pycache__/rs_rooms.cpython-312.pyc +0 -0
  130. package/lib/core/artifact-id.cjs +148 -0
  131. package/lib/core/asset-ops.cjs +151 -0
  132. package/lib/core/auto-commit-throttle.cjs +129 -0
  133. package/lib/core/bearer-token.cjs +199 -0
  134. package/lib/core/brain-client.cjs +865 -0
  135. package/lib/core/brain-derivation-prompts.cjs +326 -0
  136. package/lib/core/brain-derivation-queue.cjs +431 -0
  137. package/lib/core/brain-derivation.cjs +580 -0
  138. package/lib/core/brain-md-schema.cjs +528 -0
  139. package/lib/core/brain-md-staleness.cjs +357 -0
  140. package/lib/core/brain-response-sanitize.cjs +188 -0
  141. package/lib/core/bridge-writer.cjs +477 -0
  142. package/lib/core/chat-context-builder.cjs +253 -0
  143. package/lib/core/cross-room-aggregator.cjs +762 -0
  144. package/lib/core/daily-briefing.cjs +438 -0
  145. package/lib/core/decision-capture.cjs +618 -0
  146. package/lib/core/deep-links.cjs +82 -0
  147. package/lib/core/dispatch-optimizer.cjs +354 -0
  148. package/lib/core/dual-path-detector.cjs +84 -0
  149. package/lib/core/dual-path-detector.test.cjs +334 -0
  150. package/lib/core/exports-log.cjs +79 -0
  151. package/lib/core/feynman-minto-invariants.cjs +605 -0
  152. package/lib/core/folder-memory-async.cjs +338 -0
  153. package/lib/core/folder-memory-shared.cjs +890 -0
  154. package/lib/core/folder-memory.cjs +416 -0
  155. package/lib/core/framework-chain-composer.cjs +411 -0
  156. package/lib/core/frontmatter-schemas.cjs +330 -0
  157. package/lib/core/git-ops.cjs +141 -0
  158. package/lib/core/graph-ops.cjs +258 -0
  159. package/lib/core/hat-persistence.cjs +362 -0
  160. package/lib/core/index.cjs +60 -0
  161. package/lib/core/integration-registry.cjs +232 -0
  162. package/lib/core/intelligence-cascade.cjs +661 -0
  163. package/lib/core/lazygraph-ops.cjs +1057 -0
  164. package/lib/core/lru-cache.cjs +139 -0
  165. package/lib/core/mcp-profiles.cjs +182 -0
  166. package/lib/core/meeting-ops.cjs +54 -0
  167. package/lib/core/memory-ops.cjs +600 -0
  168. package/lib/core/migrations/ROOM.md +33 -0
  169. package/lib/core/migrations/phase-109-nodes-provenance.cjs +339 -0
  170. package/lib/core/migrations/phase-109-session-focus.cjs +99 -0
  171. package/lib/core/model-profiles.cjs +246 -0
  172. package/lib/core/mullins-scaffold.cjs +160 -0
  173. package/lib/core/nav-dial.cjs +316 -0
  174. package/lib/core/navigation/ROOM.md +15 -0
  175. package/lib/core/navigation/explanation.cjs +43 -0
  176. package/lib/core/navigation/focus.cjs +135 -0
  177. package/lib/core/navigation/ingestion.cjs +82 -0
  178. package/lib/core/navigation/insights.cjs +350 -0
  179. package/lib/core/navigation/memory-events.cjs +118 -0
  180. package/lib/core/navigation/neighborhood.cjs +78 -0
  181. package/lib/core/navigation/packet.cjs +182 -0
  182. package/lib/core/navigation/room-home.cjs +127 -0
  183. package/lib/core/navigation/transitions.cjs +82 -0
  184. package/lib/core/navigation-engine-shared.cjs +242 -0
  185. package/lib/core/navigation-engine.cjs +664 -0
  186. package/lib/core/navigation.cjs +60 -0
  187. package/lib/core/nl-graph-queries.cjs +164 -0
  188. package/lib/core/offer-presenter.cjs +406 -0
  189. package/lib/core/opportunity-extractor.cjs +183 -0
  190. package/lib/core/opportunity-ops.cjs +1371 -0
  191. package/lib/core/persona-ops.cjs +537 -0
  192. package/lib/core/persona-taxonomy.cjs +190 -0
  193. package/lib/core/platform-gates.cjs +120 -0
  194. package/lib/core/platform.cjs +257 -0
  195. package/lib/core/proactive-intelligence.cjs +528 -0
  196. package/lib/core/problem-type-router.cjs +315 -0
  197. package/lib/core/reasoning-ops.cjs +639 -0
  198. package/lib/core/reverse-salient-persona-suffix.cjs +115 -0
  199. package/lib/core/room-classifier-strict-mode.cjs +229 -0
  200. package/lib/core/room-db.cjs +127 -0
  201. package/lib/core/room-ops-async.cjs +92 -0
  202. package/lib/core/room-ops-shared.cjs +64 -0
  203. package/lib/core/room-ops-sync.cjs +70 -0
  204. package/lib/core/room-ops.cjs +32 -0
  205. package/lib/core/room-type-detector.cjs +386 -0
  206. package/lib/core/rs-brain-substrate-prompts.cjs +129 -0
  207. package/lib/core/rs-brain-substrate.cjs +570 -0
  208. package/lib/core/rs-breakthrough-scorer.cjs +255 -0
  209. package/lib/core/rs-canon-violations.cjs +82 -0
  210. package/lib/core/rs-chain-feeder.cjs +343 -0
  211. package/lib/core/rs-commercial-assessor.cjs +280 -0
  212. package/lib/core/rs-differential-scorer.cjs +376 -0
  213. package/lib/core/rs-domain-analyzer.cjs +385 -0
  214. package/lib/core/rs-egress-prompts.cjs +113 -0
  215. package/lib/core/rs-egress-telemetry.cjs +225 -0
  216. package/lib/core/rs-egress-violations.cjs +53 -0
  217. package/lib/core/rs-expert-mapper.cjs +467 -0
  218. package/lib/core/rs-fetcher-academic.cjs +697 -0
  219. package/lib/core/rs-fetcher-experts.cjs +314 -0
  220. package/lib/core/rs-fetcher-industry.cjs +731 -0
  221. package/lib/core/rs-fetcher-patents.cjs +564 -0
  222. package/lib/core/rs-innovation-classifier.cjs +194 -0
  223. package/lib/core/rs-mind-map.cjs +656 -0
  224. package/lib/core/rs-neo4j-writer.cjs +388 -0
  225. package/lib/core/rs-nl-to-query.cjs +425 -0
  226. package/lib/core/rs-pinecone-bridge.cjs +303 -0
  227. package/lib/core/rs-preprocessor.cjs +350 -0
  228. package/lib/core/rs-query-matrix.cjs +316 -0
  229. package/lib/core/rs-query-to-text.cjs +438 -0
  230. package/lib/core/rs-sqlite-mirror.cjs +443 -0
  231. package/lib/core/rs-thesis-generator.cjs +188 -0
  232. package/lib/core/rs_cache.py +479 -0
  233. package/lib/core/rs_corpus.py +468 -0
  234. package/lib/core/rs_hybrid.py +586 -0
  235. package/lib/core/rs_math.py +287 -0
  236. package/lib/core/rs_rooms.py +193 -0
  237. package/lib/core/scheduled-scanner.cjs +463 -0
  238. package/lib/core/scratchpad-ops.cjs +201 -0
  239. package/lib/core/section-8-trace-schema.cjs +138 -0
  240. package/lib/core/section-registry.cjs +111 -0
  241. package/lib/core/session-state.cjs +144 -0
  242. package/lib/core/shallow-doc-parser.cjs +174 -0
  243. package/lib/core/shallow-doc-parser.test.cjs +226 -0
  244. package/lib/core/skill-activation-router.cjs +284 -0
  245. package/lib/core/state-ops.cjs +46 -0
  246. package/lib/core/statusline-cache.cjs +266 -0
  247. package/lib/core/token-estimator.cjs +348 -0
  248. package/lib/core/user-archetype.cjs +239 -0
  249. package/lib/core/user-md-ops.cjs +524 -0
  250. package/lib/core/visual-ops.cjs +624 -0
  251. package/lib/core/write-lock.cjs +149 -0
  252. package/lib/graph/canvas-graph.js +467 -0
  253. package/lib/graph/constellation-config.cjs +299 -0
  254. package/lib/graph/graph-detail-panel.js +165 -0
  255. package/lib/hmi/ROOM.md +47 -0
  256. package/lib/hmi/across-session-memory.cjs +604 -0
  257. package/lib/hmi/cross-room-memory.cjs +575 -0
  258. package/lib/hmi/decoy-tier.cjs +395 -0
  259. package/lib/hmi/jtbd-classifier.cjs +219 -0
  260. package/lib/hmi/jtbd-state.cjs +199 -0
  261. package/lib/hmi/jtbd-taxonomy.json +392 -0
  262. package/lib/hmi/selector-dispatcher.cjs +546 -0
  263. package/lib/hmi/selector-telemetry.cjs +263 -0
  264. package/lib/hmi/shape-f0-renderer.cjs +139 -0
  265. package/lib/hmi/shape-f1-fallback.cjs +80 -0
  266. package/lib/hmi/shape-f1-renderer.cjs +138 -0
  267. package/lib/hmi/shape-f2-renderer.cjs +132 -0
  268. package/lib/hmi/shape-f3-renderer.cjs +66 -0
  269. package/lib/hmi/shape-f4-renderer.cjs +72 -0
  270. package/lib/hmi/shape-f5-renderer.cjs +155 -0
  271. package/lib/hmi/shape-f6-plan-review-renderer.cjs +312 -0
  272. package/lib/hmi/shape-f6-renderer.cjs +144 -0
  273. package/lib/hmi/shape-g-renderer.cjs +219 -0
  274. package/lib/hmi/shape-h-renderer.cjs +222 -0
  275. package/lib/hmi/tier-check.cjs +63 -0
  276. package/lib/import/PRECONDITIONS.md +41 -0
  277. package/lib/import/branding.cjs +210 -0
  278. package/lib/import/branding.test.cjs +235 -0
  279. package/lib/import/classifications-sync.cjs +104 -0
  280. package/lib/import/classifications-sync.test.cjs +129 -0
  281. package/lib/import/enricher.cjs +296 -0
  282. package/lib/import/enricher.test.cjs +273 -0
  283. package/lib/import/integration.test.cjs +376 -0
  284. package/lib/import/manifest.cjs +129 -0
  285. package/lib/import/manifest.schema.json +185 -0
  286. package/lib/import/manifest.test.cjs +123 -0
  287. package/lib/import/meeting-detector.cjs +92 -0
  288. package/lib/import/meeting-detector.test.cjs +100 -0
  289. package/lib/import/person-detector.cjs +229 -0
  290. package/lib/import/person-detector.test.cjs +149 -0
  291. package/lib/import/report.cjs +186 -0
  292. package/lib/import/report.test.cjs +186 -0
  293. package/lib/import/room-md-scaffolder.cjs +49 -0
  294. package/lib/import/router.cjs +224 -0
  295. package/lib/import/router.test.cjs +356 -0
  296. package/lib/import/run-all-tests.cjs +36 -0
  297. package/lib/import/smoke-test.cjs +213 -0
  298. package/lib/import/smoke-test.test.cjs +148 -0
  299. package/lib/import/test-fixtures/collision-vault/preexisting-room/STATE.md +8 -0
  300. package/lib/import/test-fixtures/collision-vault/preexisting-room/problem-definition/onboarding/onboarding.md +7 -0
  301. package/lib/import/test-fixtures/collision-vault/source/onboarding.md +5 -0
  302. package/lib/import/test-fixtures/obsidian-vault/.obsidian/workspace.json +1 -0
  303. package/lib/import/test-fixtures/obsidian-vault/notes/with-wikilinks.md +4 -0
  304. package/lib/import/test-fixtures/tiny-vault/notes/2026-01-15-team-sync.md +9 -0
  305. package/lib/import/test-fixtures/tiny-vault/notes/empty.md +3 -0
  306. package/lib/import/test-fixtures/tiny-vault/notes/onboarding.md +5 -0
  307. package/lib/import/test-fixtures/tiny-vault/notes/pricing.md +5 -0
  308. package/lib/import/test-fixtures/tiny-vault/notes/random.md +4 -0
  309. package/lib/import/undo.test.cjs +199 -0
  310. package/lib/import/vault-scanner.cjs +105 -0
  311. package/lib/import/vault-scanner.test.cjs +67 -0
  312. package/lib/mcp/app-html/dashboard.html +316 -0
  313. package/lib/mcp/app-html/graph.html +428 -0
  314. package/lib/mcp/app-html/mindrian-platform.html +1841 -0
  315. package/lib/mcp/app-html/wiki.html +383 -0
  316. package/lib/mcp/app-views.cjs +322 -0
  317. package/lib/mcp/brain-router.cjs +418 -0
  318. package/lib/mcp/capability-registry.cjs +62 -0
  319. package/lib/mcp/larry-context.cjs +46 -0
  320. package/lib/mcp/larry-server-instructions.md +114 -0
  321. package/lib/mcp/pipeline-state.cjs +275 -0
  322. package/lib/mcp/prompts.cjs +302 -0
  323. package/lib/mcp/resources.cjs +227 -0
  324. package/lib/mcp/session-catchup.cjs +327 -0
  325. package/lib/mcp/surface-detect.cjs +75 -0
  326. package/lib/mcp/tool-router.cjs +1034 -0
  327. package/lib/memory/aaak-compress.cjs +403 -0
  328. package/lib/memory/aaak-compress.test.cjs +288 -0
  329. package/lib/memory/async-artifact-auto-commit.test.cjs +223 -0
  330. package/lib/memory/bearer-token.test.cjs +315 -0
  331. package/lib/memory/brain-cache-lru.test.cjs +259 -0
  332. package/lib/memory/brain-client-query-shape.test.cjs +160 -0
  333. package/lib/memory/brain-derivation-graceful-degradation.test.cjs +1019 -0
  334. package/lib/memory/brain-derivation-queue.test.cjs +539 -0
  335. package/lib/memory/brain-derivation.test.cjs +634 -0
  336. package/lib/memory/brain-derive-command.test.cjs +534 -0
  337. package/lib/memory/brain-md-invariants-validator.test.cjs +704 -0
  338. package/lib/memory/brain-md-schema.test.cjs +467 -0
  339. package/lib/memory/brain-md-staleness.test.cjs +525 -0
  340. package/lib/memory/brain-server-resolution.test.cjs +314 -0
  341. package/lib/memory/chain-recommender.test.cjs +233 -0
  342. package/lib/memory/chat-context.test.cjs +128 -0
  343. package/lib/memory/command-registry.test.cjs +220 -0
  344. package/lib/memory/cross-room-aggregator.test.cjs +909 -0
  345. package/lib/memory/dashboard-server.test.cjs +256 -0
  346. package/lib/memory/debouncer-drain-at-prompt.test.cjs +389 -0
  347. package/lib/memory/decision-capture.test.cjs +632 -0
  348. package/lib/memory/decision-capture.worker.cjs +70 -0
  349. package/lib/memory/explain-decision-command.test.cjs +521 -0
  350. package/lib/memory/explain-decision-footer.test.cjs +316 -0
  351. package/lib/memory/explored-materials-store.cjs +392 -0
  352. package/lib/memory/feynman-minto-guardian.test.cjs +736 -0
  353. package/lib/memory/feynman-minto-invariants.test.cjs +511 -0
  354. package/lib/memory/feynman-prompts-drift.test.cjs +144 -0
  355. package/lib/memory/feynman-prompts.cjs +151 -0
  356. package/lib/memory/feynman-prompts.test.cjs +96 -0
  357. package/lib/memory/folder-memory-quadruple.test.cjs +548 -0
  358. package/lib/memory/folder-memory.test.cjs +503 -0
  359. package/lib/memory/framework-chain-composer.test.cjs +515 -0
  360. package/lib/memory/frontmatter-schema-validator.test.cjs +290 -0
  361. package/lib/memory/heal-command.test.cjs +604 -0
  362. package/lib/memory/index-artifact-transaction.test.cjs +333 -0
  363. package/lib/memory/lazygraph-rs-discoveries-view.test.cjs +122 -0
  364. package/lib/memory/mcp-input-validation.test.cjs +240 -0
  365. package/lib/memory/mcp-server-brain-deps.test.cjs +270 -0
  366. package/lib/memory/mcp-stack-fallback.test.cjs +433 -0
  367. package/lib/memory/minto-debouncer.test.cjs +407 -0
  368. package/lib/memory/minto-debouncer.worker.cjs +46 -0
  369. package/lib/memory/minto-migration-v88.test.cjs +265 -0
  370. package/lib/memory/minto-schema-v88.test.cjs +390 -0
  371. package/lib/memory/mos-status-renderer.test.cjs +631 -0
  372. package/lib/memory/narrative-schema.cjs +376 -0
  373. package/lib/memory/narrative-schema.test.cjs +209 -0
  374. package/lib/memory/nav-dial.test.cjs +414 -0
  375. package/lib/memory/navigation-engine-core.test.cjs +722 -0
  376. package/lib/memory/navigation-invariants.test.cjs +483 -0
  377. package/lib/memory/offer-presenter.test.cjs +554 -0
  378. package/lib/memory/on-stop-snapshot.test.cjs +404 -0
  379. package/lib/memory/pending-tension-store.cjs +373 -0
  380. package/lib/memory/post-compact-reinjection.test.cjs +854 -0
  381. package/lib/memory/post-write-triple.test.cjs +317 -0
  382. package/lib/memory/pre-compact-snapshot.test.cjs +495 -0
  383. package/lib/memory/problem-type-router.test.cjs +656 -0
  384. package/lib/memory/query-efficiency-telemetry.test.cjs +370 -0
  385. package/lib/memory/recompile-room-references.test.cjs +392 -0
  386. package/lib/memory/recompile-room-references.worker.cjs +42 -0
  387. package/lib/memory/record-decision-dual-write.test.cjs +454 -0
  388. package/lib/memory/room-classifier-strict-mode.test.cjs +417 -0
  389. package/lib/memory/room-minto-hook.test.cjs +398 -0
  390. package/lib/memory/rs-discovery-engine.test.cjs +323 -0
  391. package/lib/memory/run-feynman-tests.cjs +1247 -0
  392. package/lib/memory/security-trifecta.test.cjs +312 -0
  393. package/lib/memory/session-start-brain-staleness.test.cjs +363 -0
  394. package/lib/memory/session-start-triple-injection.test.cjs +514 -0
  395. package/lib/memory/sessionstart-banner-formatter.cjs +318 -0
  396. package/lib/memory/sessionstart-minto-banner.test.cjs +373 -0
  397. package/lib/memory/skill-activation-router.test.cjs +419 -0
  398. package/lib/memory/stamp-artifact-write.test.cjs +304 -0
  399. package/lib/memory/statusline-active-room.test.cjs +315 -0
  400. package/lib/memory/statusline-minto-segment.test.cjs +292 -0
  401. package/lib/memory/sync-async-entry-points.test.cjs +204 -0
  402. package/lib/memory/test-bridge-writer-enhanced.cjs +452 -0
  403. package/lib/memory/test-rs-brain-substrate-shape.cjs +529 -0
  404. package/lib/memory/test-rs-brain-substrate.cjs +636 -0
  405. package/lib/memory/test-rs-breakthrough-scorer.cjs +375 -0
  406. package/lib/memory/test-rs-canon-violations.cjs +218 -0
  407. package/lib/memory/test-rs-chain-feeder-core.cjs +344 -0
  408. package/lib/memory/test-rs-chain-feeder-skill-spawn.cjs +297 -0
  409. package/lib/memory/test-rs-commercial-assessor.cjs +385 -0
  410. package/lib/memory/test-rs-differential-scorer.cjs +480 -0
  411. package/lib/memory/test-rs-discovery-engine.cjs +603 -0
  412. package/lib/memory/test-rs-domain-analyzer.cjs +492 -0
  413. package/lib/memory/test-rs-egress-primitives.cjs +420 -0
  414. package/lib/memory/test-rs-expert-mapper.cjs +547 -0
  415. package/lib/memory/test-rs-explain-command.cjs +443 -0
  416. package/lib/memory/test-rs-fetcher-academic.cjs +848 -0
  417. package/lib/memory/test-rs-fetcher-experts.cjs +496 -0
  418. package/lib/memory/test-rs-fetcher-industry.cjs +702 -0
  419. package/lib/memory/test-rs-fetcher-patents.cjs +674 -0
  420. package/lib/memory/test-rs-innovation-classifier.cjs +301 -0
  421. package/lib/memory/test-rs-mind-map.cjs +646 -0
  422. package/lib/memory/test-rs-neo4j-writer.cjs +518 -0
  423. package/lib/memory/test-rs-nl-to-query.cjs +449 -0
  424. package/lib/memory/test-rs-pinecone-bridge.cjs +277 -0
  425. package/lib/memory/test-rs-preprocessor.cjs +433 -0
  426. package/lib/memory/test-rs-query-matrix.cjs +391 -0
  427. package/lib/memory/test-rs-query-to-text.cjs +551 -0
  428. package/lib/memory/test-rs-sqlite-mirror.cjs +649 -0
  429. package/lib/memory/test-rs-thesis-generator.cjs +360 -0
  430. package/lib/memory/triple-context-formatter.cjs +473 -0
  431. package/lib/memory/triple-context-formatter.test.cjs +442 -0
  432. package/lib/memory/user-md-persona.test.cjs +565 -0
  433. package/lib/memory/userpromptsubmit-integration.test.cjs +690 -0
  434. package/lib/memory/validators/README.md +157 -0
  435. package/lib/memory/validators/brain-md-invariants.cjs +475 -0
  436. package/lib/memory/validators/brain-substrate-invariants.cjs +285 -0
  437. package/lib/memory/validators/external-academic-invariants.cjs +249 -0
  438. package/lib/memory/validators/external-industry-invariants.cjs +271 -0
  439. package/lib/memory/validators/external-patents-invariants.cjs +266 -0
  440. package/lib/memory/validators/minto-invariants.cjs +62 -0
  441. package/lib/memory/validators/navigation-invariants.cjs +340 -0
  442. package/lib/memory/validators/queue-health.cjs +95 -0
  443. package/lib/memory/validators/snapshot-integrity.cjs +129 -0
  444. package/lib/memory/validators/stale-lifecycle.cjs +116 -0
  445. package/lib/memory/vault-section-minto-generator-atomic.test.cjs +556 -0
  446. package/lib/memory/vault-section-minto-generator-atomic.worker.cjs +73 -0
  447. package/lib/memory/write-lock-atomic.test.cjs +137 -0
  448. package/lib/memory/write-lock-atomic.worker.cjs +55 -0
  449. package/lib/parity/check-parity.cjs +83 -0
  450. package/lib/presentation/presentation-server.cjs +101 -0
  451. package/lib/presentation/presentation-watcher.cjs +123 -0
  452. package/lib/quickview/hub-server.cjs +719 -0
  453. package/lib/quickview/server.cjs +533 -0
  454. package/lib/render/JTBD-PALETTES.md +145 -0
  455. package/lib/render/ROOM.md +59 -0
  456. package/lib/render/render-v2.cjs +486 -0
  457. package/lib/render/render-v2.test.cjs +267 -0
  458. package/lib/render/render.cjs +65 -0
  459. package/lib/state/ROOM.md +46 -0
  460. package/lib/state/state-md-parser.cjs +215 -0
  461. package/lib/statusline/ROOM.md +38 -0
  462. package/lib/statusline/banner-suppression.cjs +50 -0
  463. package/lib/statusline/surface-detect.cjs +85 -0
  464. package/lib/update-bootstrap.sh.template +145 -0
  465. package/lib/vault/frontmatter-schema.cjs +297 -0
  466. package/lib/vault/room-scanner.cjs +352 -0
  467. package/lib/vault/wikilink-builder.cjs +231 -0
  468. package/lib/vault/wikilink-builder.test.cjs +182 -0
  469. package/lib/wiki/graph-links.cjs +281 -0
  470. package/lib/wiki/page-renderer.cjs +229 -0
  471. package/lib/wiki/wiki-chat.cjs +81 -0
  472. package/lib/wiki/wiki-layout.cjs +1459 -0
  473. package/lib/wiki/wiki-search.cjs +142 -0
  474. package/lib/wiki/wiki-server.cjs +678 -0
  475. package/lib/wiki/wiki-watcher.cjs +105 -0
  476. package/lib/workflow/ROOM.md +47 -0
  477. package/lib/workflow/command-resolver.cjs +155 -0
  478. package/lib/workflow/command-resolver.test.cjs +235 -0
  479. package/package.json +44 -0
  480. package/pipelines/analogy/01-decompose.md +80 -0
  481. package/pipelines/analogy/02-abstract.md +87 -0
  482. package/pipelines/analogy/03-search.md +135 -0
  483. package/pipelines/analogy/04-transfer.md +101 -0
  484. package/pipelines/analogy/05-validate.md +106 -0
  485. package/pipelines/analogy/CHAIN.md +56 -0
  486. package/pipelines/discovery/01-explore-domains.md +44 -0
  487. package/pipelines/discovery/02-think-hats.md +50 -0
  488. package/pipelines/discovery/03-analyze-needs.md +54 -0
  489. package/pipelines/discovery/CHAIN.md +37 -0
  490. package/pipelines/thesis/01-structure-argument.md +45 -0
  491. package/pipelines/thesis/02-challenge-assumptions.md +48 -0
  492. package/pipelines/thesis/03-build-thesis.md +54 -0
  493. package/pipelines/thesis/CHAIN.md +37 -0
  494. package/references/brain/causal-directives.md +91 -0
  495. package/references/brain/causal-enrichment.cypher +165 -0
  496. package/references/brain/command-triggers-schema.md +226 -0
  497. package/references/brain/graph-architecture.md +317 -0
  498. package/references/brain/query-patterns.md +460 -0
  499. package/references/brain/room-hierarchy-schema.md +218 -0
  500. package/references/brain/schema.md +76 -0
  501. package/references/capability-radar/capabilities-index.md +241 -0
  502. package/references/capability-radar/changelog-cache.md +81 -0
  503. package/references/causal/causal-schema.md +103 -0
  504. package/references/design/email-template-standard.md +155 -0
  505. package/references/design/graph-visualization-standard.md +178 -0
  506. package/references/document-generation.md +179 -0
  507. package/references/hsi/HSI-TOOLS-REFERENCE.md +222 -0
  508. package/references/import-config.md +141 -0
  509. package/references/integrations/detection-patterns.md +101 -0
  510. package/references/meeting/artifact-template.md +377 -0
  511. package/references/meeting/cross-meeting-intelligence.md +216 -0
  512. package/references/meeting/cross-relationship-patterns.md +202 -0
  513. package/references/meeting/live-join-interface.md +244 -0
  514. package/references/meeting/section-mapping.md +192 -0
  515. package/references/meeting/segment-classification.md +258 -0
  516. package/references/meeting/speaker-profile-template.md +219 -0
  517. package/references/meeting/summary-template.md +348 -0
  518. package/references/meeting/transcript-patterns.md +226 -0
  519. package/references/methodology/analyze-needs.md +135 -0
  520. package/references/methodology/analyze-systems.md +121 -0
  521. package/references/methodology/analyze-timing.md +149 -0
  522. package/references/methodology/beautiful-question.md +109 -0
  523. package/references/methodology/build-knowledge.md +161 -0
  524. package/references/methodology/build-thesis.md +237 -0
  525. package/references/methodology/challenge-assumptions.md +127 -0
  526. package/references/methodology/diagnose.md +169 -0
  527. package/references/methodology/dominant-designs.md +212 -0
  528. package/references/methodology/explore-domains.md +147 -0
  529. package/references/methodology/explore-futures.md +163 -0
  530. package/references/methodology/explore-trends.md +129 -0
  531. package/references/methodology/find-bottlenecks.md +131 -0
  532. package/references/methodology/grade.md +211 -0
  533. package/references/methodology/index.md +97 -0
  534. package/references/methodology/leadership.md +200 -0
  535. package/references/methodology/lean-canvas.md +116 -0
  536. package/references/methodology/macro-trends.md +192 -0
  537. package/references/methodology/map-unknowns.md +137 -0
  538. package/references/methodology/mullins-7-domains.md +104 -0
  539. package/references/methodology/problem-types.md +65 -0
  540. package/references/methodology/root-cause.md +178 -0
  541. package/references/methodology/sapphire-encoding.md +355 -0
  542. package/references/methodology/scenario-plan.md +178 -0
  543. package/references/methodology/score-innovation.md +154 -0
  544. package/references/methodology/structure-argument.md +158 -0
  545. package/references/methodology/systems-thinking.md +159 -0
  546. package/references/methodology/think-hats.md +147 -0
  547. package/references/methodology/triz-matrix.json +751 -0
  548. package/references/methodology/triz-principles.md +501 -0
  549. package/references/methodology/user-needs.md +199 -0
  550. package/references/methodology/validate.md +163 -0
  551. package/references/methodology/value-proposition.md +244 -0
  552. package/references/opportunities/funding-lifecycle.md +103 -0
  553. package/references/opportunities/grant-api-patterns.md +99 -0
  554. package/references/opportunities/opportunity-template.md +84 -0
  555. package/references/personality/assessment-philosophy.md +72 -0
  556. package/references/personality/lexicon.md +100 -0
  557. package/references/personality/persona-chains.md +56 -0
  558. package/references/personality/pws-lexicon-full.md +499 -0
  559. package/references/personality/voice-dna.md +156 -0
  560. package/references/personas/hat-perspectives.md +76 -0
  561. package/references/personas/persona-template.md +63 -0
  562. package/references/pipeline/act-output-contract.md +88 -0
  563. package/references/pipeline/chains-index.md +39 -0
  564. package/references/pws-profile-generation.md +79 -0
  565. package/references/reasoning/reasoning-schema.md +143 -0
  566. package/references/reasoning/reasoning-template.md +68 -0
  567. package/references/reasoning/run-template.md +38 -0
  568. package/references/research/RESEARCH_14_CLAUDE_CODE_SOURCE_ARCHITECTURE.md +209 -0
  569. package/references/research/RESEARCH_15_V1.8_OPTIMIZATION_JTBD.md +375 -0
  570. package/references/research/RESEARCH_16_NATIVE_FIRST_PLUGIN_ARCHITECTURE.md +575 -0
  571. package/references/research/RESEARCH_17_MCP_UI_FRAMEWORKS.md +272 -0
  572. package/references/taxonomy/TAXONOMY.md +192 -0
  573. package/references/templates/MINTO.md +36 -0
  574. package/references/user-research/2026-04-05-leah-lawrence-session.md +202 -0
  575. package/references/vault-kit/README.md +35 -0
  576. package/references/vault-kit/app.json +12 -0
  577. package/references/vault-kit/appearance.json +12 -0
  578. package/references/vault-kit/graph.json +35 -0
  579. package/references/vault-kit/snippets/mindrian-destijl.css +297 -0
  580. package/references/vault-kit/templates/new-artifact.md +37 -0
  581. package/references/vault-kit/templates/new-meeting-note.md +35 -0
  582. package/references/vault-kit/templates/new-team-profile.md +29 -0
  583. package/references/vault-kit/templates/new-xref.md +35 -0
  584. package/references/visual/symbol-system.md +151 -0
  585. package/skills/MOSDeckEngine/SKILL.md +325 -0
  586. package/skills/brain-connector/SKILL.md +114 -0
  587. package/skills/context-engine/SKILL.md +147 -0
  588. package/skills/conversation-mode/SKILL.md +102 -0
  589. package/skills/larry-personality/SKILL.md +219 -0
  590. package/skills/larry-personality/framework-chains.md +92 -0
  591. package/skills/larry-personality/mode-engine.md +185 -0
  592. package/skills/mullins-scaffold/SKILL.md +61 -0
  593. package/skills/mullins-scaffold/scaffold.json +146 -0
  594. package/skills/pws-methodology/SKILL.md +49 -0
  595. package/skills/room-passive/SKILL.md +165 -0
  596. package/skills/room-proactive/SKILL.md +250 -0
  597. package/skills/ui-system/SKILL.md +277 -0
@@ -0,0 +1,124 @@
1
+ ---
2
+ name: query
3
+ description: Query the knowledge graph in natural language
4
+ argument-hint: [question]
5
+ serves_jtbd: ["audit-room", "explore"]
6
+ allowed-tools:
7
+ - Read
8
+ - Bash
9
+ ---
10
+
11
+ # /mos:query
12
+
13
+ You are Larry. This command lets users ask natural language questions about relationships between their room artifacts. You translate questions to SQL, execute against the room graph (SQLite), and return formatted insights.
14
+
15
+ ## Usage
16
+
17
+ ```
18
+ /mos:query <natural language question>
19
+ ```
20
+
21
+ ## Examples
22
+
23
+ - `/mos:query What contradicts my pricing assumption?`
24
+ - `/mos:query Which sections are most connected?`
25
+ - `/mos:query What informs my solution design?`
26
+ - `/mos:query Show all convergent themes across sections`
27
+ - `/mos:query What artifacts are in market-analysis?`
28
+ - `/mos:query Find all cross-section relationships`
29
+
30
+ ## How It Works
31
+
32
+ 1. **Parse the question** -- understand what the user is asking about (relationships, sections, artifacts, contradictions, themes).
33
+ 2. **Load the graph schema** -- read `docs/lazygraph-schema.md` for node types, edge types, and SQL patterns.
34
+ 3. **Generate SQL** -- translate the natural language question into a SQL query against the nodes/edges tables.
35
+ 4. **Execute the query** -- use `lazygraph-ops.cjs` functions:
36
+ ```javascript
37
+ const { openGraph, queryGraph, closeGraph } = require('./lib/core/lazygraph-ops.cjs');
38
+ const { db, conn } = await openGraph('room');
39
+ const results = await queryGraph(conn, sqlQuery);
40
+ ```
41
+ 5. **Format results** -- present findings as Larry-style insights, not raw data tables. Explain what the relationships mean for the venture.
42
+
43
+ ## Step 1: Check for Room and Graph
44
+
45
+ If no `room/` directory exists:
46
+ > "No Data Room yet. Run `/mos:new-project` to get started, then file some artifacts before querying."
47
+
48
+ STOP.
49
+
50
+ If the room exists but has no `.mindrian/room.db` file, auto-initialize by running a graph rebuild:
51
+
52
+ ```javascript
53
+ const { openGraph, rebuildGraph } = require('./lib/core/lazygraph-ops.cjs');
54
+ const { db, conn } = await openGraph('room');
55
+ await rebuildGraph(conn, 'room');
56
+ ```
57
+
58
+ > "I just built your knowledge graph for the first time. Let me answer your question..."
59
+
60
+ ## Step 2: Generate and Execute SQL
61
+
62
+ Read `docs/lazygraph-schema.md` for the full schema reference and example query patterns.
63
+
64
+ **Translation guidelines:**
65
+ - "What contradicts..." -> `SELECT source, target FROM edges WHERE type = 'CONTRADICTS'`
66
+ - "What informs..." -> `SELECT source, target FROM edges WHERE type = 'INFORMS'`
67
+ - "What enables..." -> `SELECT source, target FROM edges WHERE type = 'ENABLES'`
68
+ - "Which sections..." -> `SELECT target, COUNT(*) FROM edges WHERE type = 'BELONGS_TO' GROUP BY target ORDER BY COUNT(*) DESC`
69
+ - "Show connections..." -> `SELECT * FROM edges WHERE source = ? OR target = ?`
70
+ - "How connected is..." -> `SELECT COUNT(*) FROM edges WHERE source = ? OR target = ?`
71
+
72
+ **SQLite notes:**
73
+ - Use json_extract(properties, '$.field') to access JSON properties on nodes and edges
74
+ - Standard SQL syntax -- no graph-specific extensions needed
75
+ - All node properties stored as JSON in the properties column
76
+
77
+ ## Step 3: Format Results as Insights
78
+
79
+ Never return raw query output. Always interpret results in Larry's voice.
80
+
81
+ **For contradictions:**
82
+ > "I found 2 contradictions touching your pricing model. Your market-analysis/competitor-review says premium pricing is sustainable, but your financial-model/unit-economics suggests price sensitivity. Worth reconciling -- these two sections are pulling in different directions."
83
+
84
+ **For informational queries:**
85
+ > "3 artifacts inform your solution design: your problem-definition/core-problem (the foundation), market-analysis/customer-interviews (real voices), and competitive-analysis/gap-analysis (where you fit). That's a solid chain of reasoning."
86
+
87
+ **For empty results:**
88
+ > "No results for that query. This could mean the relationship hasn't been captured yet. Try filing more artifacts with [[cross-references]] to build the graph, or rephrase your question."
89
+
90
+ **For statistics:**
91
+ > "Your knowledge graph has 12 artifacts across 5 sections, with 8 INFORMS edges and 2 CONTRADICTS. The market-analysis section is your most connected -- 4 artifacts referencing other sections."
92
+
93
+ ## Requirements
94
+
95
+ - Room must have artifacts filed. Run `/mos:room` first to check room status.
96
+ - First query auto-initializes the graph if `.mindrian/room.db` does not exist.
97
+ - Cross-references between sections require `[[wikilinks]]` in artifact content.
98
+ - ENABLES and INVALIDATES edges require explicit frontmatter markers (`enables:` and `invalidates:` fields).
99
+
100
+ ## Graph Schema Reference
101
+
102
+ See `docs/lazygraph-schema.md` for the complete schema including:
103
+ - All node types and properties
104
+ - All relationship types with directions
105
+ - Example SQL query patterns
106
+ - SQLite query notes
107
+
108
+ ## Tier 2: Semantic Search (Optional)
109
+
110
+ When Pinecone is configured (`PINECONE_API_KEY` and `PINECONE_INDEX` environment variables set), queries can also leverage semantic similarity search -- finding related artifacts not just by structural links but by meaning.
111
+
112
+ This enables questions like:
113
+ - "What else discusses customer acquisition costs?" (semantic match, no wikilink needed)
114
+ - "Find artifacts similar to my pricing model" (embedding similarity)
115
+
116
+ Tier 2 is optional. All structural queries work without Pinecone.
117
+
118
+ ## Voice Rules
119
+
120
+ - Larry's voice throughout. Interpret graph results, don't just dump data.
121
+ - Frame contradictions as opportunities for clarity, not problems.
122
+ - Frame INFORMS chains as reasoning strength.
123
+ - Always suggest a next action: "Want me to dig deeper into that contradiction?" or "Should I check what else informs this section?"
124
+ - If the graph is sparse, encourage more cross-referencing: "Your graph would be richer with more [[wikilinks]] between sections."
@@ -0,0 +1,72 @@
1
+ ---
2
+ name: radar
3
+ description: Track Claude capabilities that may help MindrianOS
4
+ serves_jtbd: ["understand-market"]
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - WebFetch
9
+ - Glob
10
+ ---
11
+
12
+ # /mos:radar
13
+
14
+ You are Larry. This command helps users stay current with Claude capabilities that power MindrianOS.
15
+
16
+ ## Step 1: Parse Flags
17
+
18
+ Check how the user invoked the command:
19
+
20
+ - **No flags** -- default behavior (show curated capabilities)
21
+ - **`--fetch`** -- pull fresh changelog from GitHub
22
+ - **`--domain {domain}`** -- filter to a specific domain (models, code, desktop_cowork, plugins_mcp, visualization)
23
+
24
+ ## Step 2: Default Behavior (No Flags)
25
+
26
+ 1. Read `references/capability-radar/capabilities-index.md`
27
+ 2. Read `references/capability-radar/changelog-cache.md`
28
+ 3. Present a summary in Larry's voice, organized by domain. Do NOT dump the raw file -- synthesize it into a conversational overview that highlights what matters most.
29
+ 4. If `room/STATE.md` exists, read it to determine venture stage and highlight capabilities most relevant to the user's current work:
30
+ - Pre-Opportunity/Discovery: emphasize methodology and Room intelligence capabilities
31
+ - Validation/Design: emphasize visualization and export capabilities
32
+ - Investment: emphasize Brain, agent teams, and document generation capabilities
33
+ 5. Check the changelog cache. If `Last fetched: never` or the date is more than 7 days old, suggest: "Run `/mos:radar --fetch` to check for new Claude capabilities."
34
+ 6. End with: "These are the Claude features that power MindrianOS. When Anthropic ships something new, this is where I'll tell you about it."
35
+
36
+ ## Step 3: With `--fetch` Flag
37
+
38
+ 1. Use WebFetch to fetch `https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md` with this prompt: "Extract the 10 most recent changelog entries. For each entry, provide: version, date, and a summary of changes. Focus on features related to: plugins, MCP, hooks, statusline, context window, models, agents."
39
+ 2. Analyze the fetched changelog for entries relevant to MindrianOS domains (models, code, desktop_cowork, plugins_mcp, visualization)
40
+ 3. Write a summary to `references/capability-radar/changelog-cache.md` with this format:
41
+
42
+ ```markdown
43
+ # Changelog Cache
44
+
45
+ Last fetched: {YYYY-MM-DD}
46
+ Source: https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md
47
+
48
+ ## Recent Changes Relevant to MindrianOS
49
+
50
+ ### {version} ({date})
51
+ - **Domain:** {domain tag}
52
+ - **Change:** {summary}
53
+ - **MindrianOS impact:** {how this could enhance the plugin}
54
+ ```
55
+
56
+ 4. Present the findings to the user in Larry's voice
57
+ 5. Read `references/capability-radar/capabilities-index.md` and compare. If any fetched capability is NOT already in the index, highlight it as an opportunity: "This is new since our last check. It could mean {impact}."
58
+
59
+ ## Step 4: With `--domain {domain}` Flag
60
+
61
+ 1. Read `references/capability-radar/capabilities-index.md`
62
+ 2. Find the section matching the requested domain (models, code, desktop_cowork, plugins_mcp, visualization)
63
+ 3. Present only that domain's capabilities with deeper commentary on MindrianOS relevance
64
+ 4. If the domain is not recognized, list the 5 valid domains and ask the user to pick one
65
+
66
+ ## Voice Rules
67
+
68
+ - Enthusiastic but grounded. Larry is excited about new tools but honest about what is aspirational vs practical.
69
+ - Never hype features that do not exist. If something is experimental, say so.
70
+ - Frame everything as "how does this help YOU build your venture" -- not abstract tech news.
71
+ - Use signature openers naturally: "Very simply...", "Here's what's interesting..."
72
+ - Keep it conversational. This is Larry explaining what powers his toolkit, not a changelog dump.
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: reanalyze
3
+ description: Re-analyze filed meetings for new patterns
4
+ body_shape: E (Action Report)
5
+ body_shape_detail: Before/after delta showing new insights discovered
6
+ serves_jtbd: ["file-meeting"]
7
+ ui_reference: skills/ui-system/SKILL.md
8
+ allowed-tools:
9
+ - Bash
10
+ - Read
11
+ ---
12
+
13
+ # /mos:reanalyze
14
+
15
+ You are Larry. This command re-runs meeting intelligence on all filed meetings and shows the user what new patterns, connections, and action items emerged compared to the last run.
16
+
17
+ **Voice rules (LOCKED):**
18
+ - Conversational, direct, no filler. Signature openers: "Very simply...", "Here's the thing...", "One thing I've learned..."
19
+ - NO emoji anywhere. NO "I'd be happy to help". NO "Great question!". NO sentences starting with "I".
20
+ - Symbol vocabulary: only these 12 glyphs: &#9632; &#9660; &#9654; &#9655; |- \- &#10003; &#8226; &#9888; &#9889; &#11036; ->
21
+ - Error pattern: 3 lines only -- What / Why: reason / Fix: action
22
+
23
+ ## Pre-flight Check
24
+
25
+ Check if `room/meetings/` directory exists and contains at least one meeting subdirectory.
26
+
27
+ If no meetings exist, show this exact error and stop:
28
+
29
+ ```
30
+ x No meetings found
31
+ Why: You need filed meetings before intelligence can run
32
+ Fix: Tell me about a meeting -- paste a transcript or describe what happened
33
+ ```
34
+
35
+ ## Capture Before-State
36
+
37
+ Before running intelligence, read `room/MEETINGS-INTELLIGENCE.md` if it exists. Note:
38
+ - Number of convergence signals
39
+ - Number of action items
40
+ - Number of contradictions
41
+ - Number of connections
42
+
43
+ If the file does not exist, the before-state is empty (first run).
44
+
45
+ ## Run Intelligence
46
+
47
+ Execute the compute-meetings-intelligence script:
48
+
49
+ ```bash
50
+ bash "${CLAUDE_PLUGIN_ROOT}/scripts/compute-meetings-intelligence" room/
51
+ ```
52
+
53
+ Wait for the script to complete.
54
+
55
+ ## Show Before/After Delta (Body Shape E -- Action Report)
56
+
57
+ After the script completes, read the new `room/MEETINGS-INTELLIGENCE.md` and compare with the before-state.
58
+
59
+ Present the delta as an Action Report:
60
+
61
+ ```
62
+ Re-analyzed [N] meetings.
63
+
64
+ Convergence signals: [before] -> [after] ([+/-] new)
65
+ Action items: [before] -> [after] ([+/-] new)
66
+ Contradictions: [before] -> [after] ([+/-] new)
67
+ Connections: [before] -> [after] ([+/-] new)
68
+ ```
69
+
70
+ ## Natural Language Framing
71
+
72
+ Explain what changed in context:
73
+
74
+ > After looking at everything again, here is what stands out now that was not visible before...
75
+
76
+ Then highlight the most significant new findings:
77
+ - New convergence signals (topics appearing across 3+ meetings)
78
+ - New action items extracted
79
+ - New contradictions or changes detected
80
+ - Any patterns that only become visible with multiple meetings
81
+
82
+ If this is the first run (no before-state), frame as discovery:
83
+
84
+ > First time running intelligence across your meetings. Here is what I found...
85
+
86
+ ## Zone 4 (Action Footer)
87
+
88
+ After presenting the delta, suggest next actions:
89
+
90
+ > Want to see this visually? -> /mos:dashboard
91
+ > See who contributed most? -> /mos:speakers
@@ -0,0 +1,196 @@
1
+ ---
2
+ name: research
3
+ description: Research the web and cross-reference with Brain
4
+ argument-hint: [topic]
5
+ serves_jtbd: ["explore", "understand-market"]
6
+ # --- Phase 122 workflow-layer frontmatter ---
7
+ kind: methodology
8
+ frameworks: ["Hypothesis-Driven Problem Solving"]
9
+ produces: "room/**/research/*"
10
+ inputs: []
11
+ autonomous_safe: true
12
+ allowed-tools:
13
+ - Read
14
+ - Bash
15
+ - Agent
16
+ - WebSearch
17
+ - WebFetch
18
+ ---
19
+
20
+ # /mos:research [topic]
21
+
22
+ You are Larry. This command provides external research by delegating to the Research Agent, which searches the web and cross-references findings with Brain's knowledge graph (when available).
23
+
24
+ ## Web research tier-awareness (Phase 94 Plan 05)
25
+
26
+ The research pipeline has a paid -> native -> cache fallback chain so /mos:research produces grounded results regardless of which web-research MCPs are configured. Tier transitions are logged to the Section-8 decision-trace (`intent_persona.web_research_tier`) per Canon Part 4.
27
+
28
+ - **Tier 1 PAID** (when configured): Tavily / Firecrawl / Exa via paid MCPs. Richest results; lowest hallucination risk. Requires `TAVILY_API_KEY` (or peer paid keys).
29
+ - **Tier 0 NATIVE** (always available): Anthropic-native `WebSearch` + `WebFetch` tools. Free; produces real URLs; zero burned credits. Used as the universal fallback when Tier 1 is unconfigured or down.
30
+ - **Tier -1 CACHE**: most-recent `fetched_results.json` under `<room>/.mindrian/` when both Tier 1 and Tier 0 are unavailable (offline). Returns whatever the last successful fetch saved.
31
+
32
+ When Brain is unreachable, the research still runs; only the Brain cross-reference layer is skipped. /mos:research never silently no-ops because of unconfigured MCPs.
33
+
34
+ ## Broad Parallel Mode (`/mos:research --broad`)
35
+
36
+ Dispatches 3 research agents simultaneously -- academic, market, and competitor -- for comprehensive parallel intelligence gathering on a single topic.
37
+
38
+ Unlike standard research (single agent, sequential queries), `--broad` runs 3 specialized research angles in parallel, then synthesizes findings with cross-angle triangulation.
39
+
40
+ ### Flow
41
+
42
+ 1. **Capture research topic** -- same as standard mode (argument or conversational)
43
+
44
+ 2. **Resolve model per agent** using `lib/core/model-profiles.cjs`:
45
+ ```
46
+ const { resolveModel } = require('${CLAUDE_PLUGIN_ROOT}/lib/core/model-profiles.cjs');
47
+ const model = resolveModel('research', roomPath);
48
+ ```
49
+
50
+ 3. **Dispatch 3 research agents in parallel** using the Agent tool with `run_in_background: true`:
51
+
52
+ Each agent follows `agents/research.md` but with a specialized research angle:
53
+
54
+ **Agent 1: Academic Research**
55
+ - Search queries focused on: academic papers, peer-reviewed studies, university research, published frameworks
56
+ - Tavily search with `search_depth: "advanced"` and academic domain filters
57
+ - Brain cross-reference: `brain_search_semantic` for framework connections to academic findings
58
+ - Output: scholarly evidence, theoretical grounding, methodology validation
59
+
60
+ **Agent 2: Market Research**
61
+ - Search queries focused on: market size, growth rates, industry reports, funding rounds, market trends
62
+ - Tavily search targeting: market research firms, industry publications, financial databases
63
+ - Brain cross-reference: venture-stage-appropriate market intelligence
64
+ - Output: market data, sizing, trends, TAM/SAM/SOM indicators
65
+
66
+ **Agent 3: Competitor Research**
67
+ - Search queries focused on: direct competitors, alternative solutions, market positioning, feature comparison
68
+ - Tavily search targeting: product pages, comparison sites, Crunchbase, news coverage
69
+ - Brain cross-reference: competitive analysis frameworks from the Teaching Graph
70
+ - Output: competitor landscape, positioning gaps, differentiation opportunities
71
+
72
+ ```
73
+ [RESEARCH --broad] Dispatching 3 research agents
74
+
75
+ Agent 1: Academic -- scholarly evidence & frameworks [running]
76
+ Agent 2: Market -- sizing, trends & growth data [running]
77
+ Agent 3: Competitor -- landscape, gaps & positioning [running]
78
+
79
+ Topic: {research topic}
80
+ Model: {resolved model}
81
+ Waiting for all agents...
82
+ ```
83
+
84
+ 4. **Collect and synthesize** -- after all 3 agents return:
85
+
86
+ a. Parse each agent's research brief (numbered findings, sources, Brain connections)
87
+ b. **Cross-angle triangulation:**
88
+ - Do academic findings support or contradict market data?
89
+ - Do competitor approaches align with academic best practices?
90
+ - Are there market opportunities that competitors have missed AND academia validates?
91
+ c. Highlight convergences (3-source validated claims) and contradictions (conflicting signals)
92
+
93
+ 5. **Trigger HSI recomputation** if findings surface cross-section connections:
94
+ ```bash
95
+ "${CLAUDE_PLUGIN_ROOT}/scripts/compute-hsi.py" room
96
+ ```
97
+
98
+ 6. **Present the broad research brief:**
99
+
100
+ ```
101
+ [RESEARCH --broad] Complete -- 3 research angles synthesized
102
+
103
+ ## Broad Research Brief: {topic}
104
+
105
+ ### Academic Findings
106
+ 1. {finding with source URL and retrieval date}
107
+ 2. {finding}
108
+ 3. {finding}
109
+ Brain connections: {related frameworks/concepts}
110
+
111
+ ### Market Intelligence
112
+ 1. {finding with source URL and retrieval date}
113
+ 2. {finding}
114
+ 3. {finding}
115
+ Brain connections: {related market patterns}
116
+
117
+ ### Competitive Landscape
118
+ 1. {finding with source URL and retrieval date}
119
+ 2. {finding}
120
+ 3. {finding}
121
+ Brain connections: {related competitive frameworks}
122
+
123
+ ---
124
+
125
+ ### Cross-Angle Triangulation
126
+
127
+ **Validated (3-source):**
128
+ - {claim supported by academic + market + competitor data}
129
+
130
+ **Contradictions:**
131
+ - Academic says X, but market data shows Y
132
+
133
+ **Opportunities (gap found):**
134
+ - {market opportunity that competitors missed and academia supports}
135
+
136
+ ### Venture Relevance
137
+ {How these findings connect to the user's specific venture}
138
+ ```
139
+
140
+ 7. **User confirms before filing** -- present the brief first. Suggest filing to the most relevant room section (usually `room/market-analysis/` or `room/competitive-analysis/`). Filing includes full provenance metadata from all 3 agents.
141
+
142
+ ## Flow
143
+
144
+ ### 1. Capture Research Topic
145
+
146
+ The user provides a research topic or question, either:
147
+ - As an argument: `/mos:research market size for edtech in Southeast Asia`
148
+ - In conversation: "Can you research the competitive landscape for my venture?"
149
+
150
+ If no topic is provided, ask: "What do you want me to research? Give me a specific question or topic related to your venture."
151
+
152
+ ### 2. Model Resolution
153
+
154
+ Before dispatching the Research Agent, resolve its model:
155
+
156
+ ```bash
157
+ node "${CLAUDE_PLUGIN_ROOT}/lib/core/model-profiles.cjs" resolve <roomDir> research
158
+ ```
159
+
160
+ - If result is `skip`, tell the user: "Research agent is not available at the current venture stage. Use `/mos:models override research sonnet` to force." Then STOP.
161
+ - If result is a model alias (opus/sonnet/haiku), include `model: <result>` when dispatching the agent.
162
+ - If result is `inherit`, do not specify a model (use session default).
163
+
164
+ ### 3. Spawn the Research Agent
165
+
166
+ Delegate the research to the Research Agent by reading and following `agents/research.md`.
167
+
168
+ The Research Agent will:
169
+ - Read room state for venture context
170
+ - Search via `mcp__tavily-mcp__tavily-search` with focused queries
171
+ - Extract full content from promising results via `mcp__tavily-mcp__tavily-extract`
172
+ - Cross-reference with Brain via `brain_search_semantic` to connect findings to framework intelligence
173
+ - Synthesize into a research brief with numbered findings, source URLs, Brain connections, and venture relevance
174
+
175
+ ### 4. Larry Reviews and Presents
176
+
177
+ When the Research Agent returns its brief, Larry:
178
+ - **Contextualizes** -- helps the user understand what the findings mean for their specific venture
179
+ - **Connects to methodology** -- suggests which framework or command could use this research as input
180
+ - **Highlights surprises** -- calls out findings that challenge or strengthen the current thesis
181
+ - **Notes gaps** -- if the research raises new questions, name them
182
+
183
+ ### 5. User Confirms Before Filing
184
+
185
+ **CRITICAL:** The Research Agent does NOT file to the room automatically. Present the brief to the user first.
186
+
187
+ Ask: "Want me to file this research to your Data Room? I'd put it in [suggested room section]."
188
+
189
+ Only file after explicit user confirmation. Filing includes full provenance metadata (source URLs, retrieval dates, relevance ratings, Brain connections, search queries used).
190
+
191
+ ## Voice
192
+
193
+ Larry frames the research in venture context:
194
+ > "Here's what I found -- and more importantly, here's what it means for what you're building..."
195
+
196
+ Never dump raw search results. Every finding connects to the venture.