@mindrian_os/cli 1.13.0-beta.10

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 (590) hide show
  1. package/.claude-plugin/plugin.json +21 -0
  2. package/.mcp.json +9 -0
  3. package/CHANGELOG.md +3329 -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 +93 -0
  16. package/bin/mindrian-mcp-server.cjs +182 -0
  17. package/bin/mindrian-tools.cjs +765 -0
  18. package/commands/act.md +433 -0
  19. package/commands/admin.md +404 -0
  20. package/commands/analyze-needs.md +36 -0
  21. package/commands/analyze-systems.md +33 -0
  22. package/commands/analyze-timing.md +36 -0
  23. package/commands/auto-explore.md +64 -0
  24. package/commands/beautiful-question.md +34 -0
  25. package/commands/brain-derive.md +78 -0
  26. package/commands/build-knowledge.md +36 -0
  27. package/commands/build-thesis.md +40 -0
  28. package/commands/causal.md +228 -0
  29. package/commands/challenge-assumptions.md +33 -0
  30. package/commands/compare-ventures.md +77 -0
  31. package/commands/dashboard.md +110 -0
  32. package/commands/deep-grade.md +76 -0
  33. package/commands/diagnose.md +52 -0
  34. package/commands/diagnostics.md +145 -0
  35. package/commands/doctor.md +151 -0
  36. package/commands/dominant-designs.md +34 -0
  37. package/commands/explain-decision.md +87 -0
  38. package/commands/explore-domains.md +36 -0
  39. package/commands/explore-futures.md +34 -0
  40. package/commands/explore-trends.md +36 -0
  41. package/commands/export.md +103 -0
  42. package/commands/file-meeting.md +724 -0
  43. package/commands/find-analogies.md +182 -0
  44. package/commands/find-bottlenecks.md +56 -0
  45. package/commands/find-connections.md +70 -0
  46. package/commands/funding.md +81 -0
  47. package/commands/grade.md +197 -0
  48. package/commands/graph.md +128 -0
  49. package/commands/hat-briefing.md +119 -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 +34 -0
  56. package/commands/macro-trends.md +34 -0
  57. package/commands/map-unknowns.md +34 -0
  58. package/commands/memory.md +173 -0
  59. package/commands/models.md +175 -0
  60. package/commands/mos-reason.md +279 -0
  61. package/commands/mullins.md +114 -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 +192 -0
  68. package/commands/pipeline.md +106 -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 +190 -0
  75. package/commands/room.md +352 -0
  76. package/commands/rooms.md +598 -0
  77. package/commands/root-cause.md +34 -0
  78. package/commands/rs-experts.md +79 -0
  79. package/commands/rs-explain.md +94 -0
  80. package/commands/rs-fetch.md +88 -0
  81. package/commands/rs-thesis.md +79 -0
  82. package/commands/scenario-plan.md +34 -0
  83. package/commands/scheduled-tasks.md +285 -0
  84. package/commands/score-innovation.md +37 -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 +36 -0
  92. package/commands/suggest-next.md +74 -0
  93. package/commands/systems-thinking.md +34 -0
  94. package/commands/think-hats.md +36 -0
  95. package/commands/update.md +181 -0
  96. package/commands/user-needs.md +34 -0
  97. package/commands/validate.md +34 -0
  98. package/commands/value-proposition.md +55 -0
  99. package/commands/vault.md +180 -0
  100. package/commands/visualize.md +52 -0
  101. package/commands/whitespace.md +501 -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/chat/chat-context.js +185 -0
  111. package/lib/chat/chat-panel.js +721 -0
  112. package/lib/chat/fabric-chat.cjs +288 -0
  113. package/lib/chat/generative-tools.js +219 -0
  114. package/lib/conversation/ROOM.md +39 -0
  115. package/lib/conversation/classifier-rules.json +38 -0
  116. package/lib/conversation/classifier.cjs +264 -0
  117. package/lib/conversation/operator.cjs +287 -0
  118. package/lib/copy/115-spec-strings.cjs +55 -0
  119. package/lib/core/__init__.py +0 -0
  120. package/lib/core/__nav-stub.cjs +14 -0
  121. package/lib/core/__pycache__/__init__.cpython-312.pyc +0 -0
  122. package/lib/core/__pycache__/rs-math.cpython-312.pyc +0 -0
  123. package/lib/core/__pycache__/rs_cache.cpython-312.pyc +0 -0
  124. package/lib/core/__pycache__/rs_corpus.cpython-312.pyc +0 -0
  125. package/lib/core/__pycache__/rs_hybrid.cpython-312.pyc +0 -0
  126. package/lib/core/__pycache__/rs_math.cpython-312.pyc +0 -0
  127. package/lib/core/__pycache__/rs_rooms.cpython-312.pyc +0 -0
  128. package/lib/core/artifact-id.cjs +148 -0
  129. package/lib/core/asset-ops.cjs +151 -0
  130. package/lib/core/auto-commit-throttle.cjs +129 -0
  131. package/lib/core/bearer-token.cjs +199 -0
  132. package/lib/core/brain-client.cjs +865 -0
  133. package/lib/core/brain-derivation-prompts.cjs +326 -0
  134. package/lib/core/brain-derivation-queue.cjs +431 -0
  135. package/lib/core/brain-derivation.cjs +580 -0
  136. package/lib/core/brain-md-schema.cjs +528 -0
  137. package/lib/core/brain-md-staleness.cjs +357 -0
  138. package/lib/core/brain-response-sanitize.cjs +188 -0
  139. package/lib/core/bridge-writer.cjs +477 -0
  140. package/lib/core/chat-context-builder.cjs +253 -0
  141. package/lib/core/cross-room-aggregator.cjs +762 -0
  142. package/lib/core/daily-briefing.cjs +438 -0
  143. package/lib/core/decision-capture.cjs +618 -0
  144. package/lib/core/deep-links.cjs +82 -0
  145. package/lib/core/dispatch-optimizer.cjs +354 -0
  146. package/lib/core/dual-path-detector.cjs +84 -0
  147. package/lib/core/dual-path-detector.test.cjs +334 -0
  148. package/lib/core/exports-log.cjs +79 -0
  149. package/lib/core/feynman-minto-invariants.cjs +605 -0
  150. package/lib/core/folder-memory-async.cjs +338 -0
  151. package/lib/core/folder-memory-shared.cjs +890 -0
  152. package/lib/core/folder-memory.cjs +416 -0
  153. package/lib/core/framework-chain-composer.cjs +411 -0
  154. package/lib/core/frontmatter-schemas.cjs +330 -0
  155. package/lib/core/git-ops.cjs +141 -0
  156. package/lib/core/graph-ops.cjs +258 -0
  157. package/lib/core/hat-persistence.cjs +362 -0
  158. package/lib/core/index.cjs +60 -0
  159. package/lib/core/integration-registry.cjs +232 -0
  160. package/lib/core/intelligence-cascade.cjs +661 -0
  161. package/lib/core/lazygraph-ops.cjs +1057 -0
  162. package/lib/core/lru-cache.cjs +139 -0
  163. package/lib/core/mcp-profiles.cjs +182 -0
  164. package/lib/core/meeting-ops.cjs +54 -0
  165. package/lib/core/memory-ops.cjs +600 -0
  166. package/lib/core/migrations/ROOM.md +33 -0
  167. package/lib/core/migrations/phase-109-nodes-provenance.cjs +339 -0
  168. package/lib/core/migrations/phase-109-session-focus.cjs +99 -0
  169. package/lib/core/model-profiles.cjs +246 -0
  170. package/lib/core/mullins-scaffold.cjs +160 -0
  171. package/lib/core/nav-dial.cjs +316 -0
  172. package/lib/core/navigation/ROOM.md +15 -0
  173. package/lib/core/navigation/explanation.cjs +43 -0
  174. package/lib/core/navigation/focus.cjs +135 -0
  175. package/lib/core/navigation/ingestion.cjs +82 -0
  176. package/lib/core/navigation/insights.cjs +350 -0
  177. package/lib/core/navigation/memory-events.cjs +118 -0
  178. package/lib/core/navigation/neighborhood.cjs +78 -0
  179. package/lib/core/navigation/packet.cjs +182 -0
  180. package/lib/core/navigation/room-home.cjs +127 -0
  181. package/lib/core/navigation/transitions.cjs +82 -0
  182. package/lib/core/navigation-engine-shared.cjs +242 -0
  183. package/lib/core/navigation-engine.cjs +664 -0
  184. package/lib/core/navigation.cjs +60 -0
  185. package/lib/core/nl-graph-queries.cjs +164 -0
  186. package/lib/core/offer-presenter.cjs +406 -0
  187. package/lib/core/opportunity-extractor.cjs +183 -0
  188. package/lib/core/opportunity-ops.cjs +1371 -0
  189. package/lib/core/persona-ops.cjs +537 -0
  190. package/lib/core/persona-taxonomy.cjs +190 -0
  191. package/lib/core/platform-gates.cjs +120 -0
  192. package/lib/core/platform.cjs +257 -0
  193. package/lib/core/proactive-intelligence.cjs +528 -0
  194. package/lib/core/problem-type-router.cjs +315 -0
  195. package/lib/core/reasoning-ops.cjs +639 -0
  196. package/lib/core/reverse-salient-persona-suffix.cjs +115 -0
  197. package/lib/core/room-classifier-strict-mode.cjs +229 -0
  198. package/lib/core/room-db.cjs +127 -0
  199. package/lib/core/room-ops-async.cjs +92 -0
  200. package/lib/core/room-ops-shared.cjs +64 -0
  201. package/lib/core/room-ops-sync.cjs +70 -0
  202. package/lib/core/room-ops.cjs +32 -0
  203. package/lib/core/room-type-detector.cjs +386 -0
  204. package/lib/core/rs-brain-substrate-prompts.cjs +129 -0
  205. package/lib/core/rs-brain-substrate.cjs +570 -0
  206. package/lib/core/rs-breakthrough-scorer.cjs +255 -0
  207. package/lib/core/rs-canon-violations.cjs +82 -0
  208. package/lib/core/rs-chain-feeder.cjs +343 -0
  209. package/lib/core/rs-commercial-assessor.cjs +280 -0
  210. package/lib/core/rs-differential-scorer.cjs +376 -0
  211. package/lib/core/rs-domain-analyzer.cjs +385 -0
  212. package/lib/core/rs-egress-prompts.cjs +113 -0
  213. package/lib/core/rs-egress-telemetry.cjs +225 -0
  214. package/lib/core/rs-egress-violations.cjs +53 -0
  215. package/lib/core/rs-expert-mapper.cjs +467 -0
  216. package/lib/core/rs-fetcher-academic.cjs +697 -0
  217. package/lib/core/rs-fetcher-experts.cjs +314 -0
  218. package/lib/core/rs-fetcher-industry.cjs +731 -0
  219. package/lib/core/rs-fetcher-patents.cjs +564 -0
  220. package/lib/core/rs-innovation-classifier.cjs +194 -0
  221. package/lib/core/rs-mind-map.cjs +656 -0
  222. package/lib/core/rs-neo4j-writer.cjs +388 -0
  223. package/lib/core/rs-nl-to-query.cjs +425 -0
  224. package/lib/core/rs-pinecone-bridge.cjs +303 -0
  225. package/lib/core/rs-preprocessor.cjs +350 -0
  226. package/lib/core/rs-query-matrix.cjs +316 -0
  227. package/lib/core/rs-query-to-text.cjs +438 -0
  228. package/lib/core/rs-sqlite-mirror.cjs +443 -0
  229. package/lib/core/rs-thesis-generator.cjs +188 -0
  230. package/lib/core/rs_cache.py +479 -0
  231. package/lib/core/rs_corpus.py +468 -0
  232. package/lib/core/rs_hybrid.py +586 -0
  233. package/lib/core/rs_math.py +287 -0
  234. package/lib/core/rs_rooms.py +193 -0
  235. package/lib/core/scheduled-scanner.cjs +463 -0
  236. package/lib/core/scratchpad-ops.cjs +201 -0
  237. package/lib/core/section-8-trace-schema.cjs +138 -0
  238. package/lib/core/section-registry.cjs +111 -0
  239. package/lib/core/session-state.cjs +144 -0
  240. package/lib/core/shallow-doc-parser.cjs +174 -0
  241. package/lib/core/shallow-doc-parser.test.cjs +226 -0
  242. package/lib/core/skill-activation-router.cjs +284 -0
  243. package/lib/core/state-ops.cjs +46 -0
  244. package/lib/core/statusline-cache.cjs +266 -0
  245. package/lib/core/token-estimator.cjs +348 -0
  246. package/lib/core/user-archetype.cjs +239 -0
  247. package/lib/core/user-md-ops.cjs +524 -0
  248. package/lib/core/visual-ops.cjs +624 -0
  249. package/lib/core/write-lock.cjs +149 -0
  250. package/lib/graph/canvas-graph.js +467 -0
  251. package/lib/graph/constellation-config.cjs +299 -0
  252. package/lib/graph/graph-detail-panel.js +165 -0
  253. package/lib/hmi/ROOM.md +47 -0
  254. package/lib/hmi/across-session-memory.cjs +604 -0
  255. package/lib/hmi/cross-room-memory.cjs +575 -0
  256. package/lib/hmi/decoy-tier.cjs +395 -0
  257. package/lib/hmi/jtbd-classifier.cjs +219 -0
  258. package/lib/hmi/jtbd-state.cjs +199 -0
  259. package/lib/hmi/jtbd-taxonomy.json +392 -0
  260. package/lib/hmi/selector-dispatcher.cjs +546 -0
  261. package/lib/hmi/selector-telemetry.cjs +263 -0
  262. package/lib/hmi/shape-f0-renderer.cjs +139 -0
  263. package/lib/hmi/shape-f1-fallback.cjs +80 -0
  264. package/lib/hmi/shape-f1-renderer.cjs +138 -0
  265. package/lib/hmi/shape-f2-renderer.cjs +132 -0
  266. package/lib/hmi/shape-f3-renderer.cjs +66 -0
  267. package/lib/hmi/shape-f4-renderer.cjs +72 -0
  268. package/lib/hmi/shape-f5-renderer.cjs +155 -0
  269. package/lib/hmi/shape-f6-plan-review-renderer.cjs +312 -0
  270. package/lib/hmi/shape-f6-renderer.cjs +144 -0
  271. package/lib/hmi/shape-g-renderer.cjs +219 -0
  272. package/lib/hmi/shape-h-renderer.cjs +222 -0
  273. package/lib/hmi/tier-check.cjs +63 -0
  274. package/lib/import/PRECONDITIONS.md +41 -0
  275. package/lib/import/branding.cjs +210 -0
  276. package/lib/import/branding.test.cjs +235 -0
  277. package/lib/import/classifications-sync.cjs +104 -0
  278. package/lib/import/classifications-sync.test.cjs +129 -0
  279. package/lib/import/enricher.cjs +296 -0
  280. package/lib/import/enricher.test.cjs +273 -0
  281. package/lib/import/integration.test.cjs +376 -0
  282. package/lib/import/manifest.cjs +129 -0
  283. package/lib/import/manifest.schema.json +185 -0
  284. package/lib/import/manifest.test.cjs +123 -0
  285. package/lib/import/meeting-detector.cjs +92 -0
  286. package/lib/import/meeting-detector.test.cjs +100 -0
  287. package/lib/import/person-detector.cjs +229 -0
  288. package/lib/import/person-detector.test.cjs +149 -0
  289. package/lib/import/report.cjs +186 -0
  290. package/lib/import/report.test.cjs +186 -0
  291. package/lib/import/room-md-scaffolder.cjs +49 -0
  292. package/lib/import/router.cjs +224 -0
  293. package/lib/import/router.test.cjs +356 -0
  294. package/lib/import/run-all-tests.cjs +36 -0
  295. package/lib/import/smoke-test.cjs +213 -0
  296. package/lib/import/smoke-test.test.cjs +148 -0
  297. package/lib/import/test-fixtures/collision-vault/preexisting-room/STATE.md +8 -0
  298. package/lib/import/test-fixtures/collision-vault/preexisting-room/problem-definition/onboarding/onboarding.md +7 -0
  299. package/lib/import/test-fixtures/collision-vault/source/onboarding.md +5 -0
  300. package/lib/import/test-fixtures/obsidian-vault/.obsidian/workspace.json +1 -0
  301. package/lib/import/test-fixtures/obsidian-vault/notes/with-wikilinks.md +4 -0
  302. package/lib/import/test-fixtures/tiny-vault/notes/2026-01-15-team-sync.md +9 -0
  303. package/lib/import/test-fixtures/tiny-vault/notes/empty.md +3 -0
  304. package/lib/import/test-fixtures/tiny-vault/notes/onboarding.md +5 -0
  305. package/lib/import/test-fixtures/tiny-vault/notes/pricing.md +5 -0
  306. package/lib/import/test-fixtures/tiny-vault/notes/random.md +4 -0
  307. package/lib/import/undo.test.cjs +199 -0
  308. package/lib/import/vault-scanner.cjs +105 -0
  309. package/lib/import/vault-scanner.test.cjs +67 -0
  310. package/lib/mcp/app-html/dashboard.html +316 -0
  311. package/lib/mcp/app-html/graph.html +428 -0
  312. package/lib/mcp/app-html/mindrian-platform.html +1841 -0
  313. package/lib/mcp/app-html/wiki.html +383 -0
  314. package/lib/mcp/app-views.cjs +322 -0
  315. package/lib/mcp/brain-router.cjs +418 -0
  316. package/lib/mcp/capability-registry.cjs +62 -0
  317. package/lib/mcp/larry-context.cjs +46 -0
  318. package/lib/mcp/larry-server-instructions.md +114 -0
  319. package/lib/mcp/pipeline-state.cjs +275 -0
  320. package/lib/mcp/prompts.cjs +302 -0
  321. package/lib/mcp/resources.cjs +227 -0
  322. package/lib/mcp/session-catchup.cjs +327 -0
  323. package/lib/mcp/surface-detect.cjs +75 -0
  324. package/lib/mcp/tool-router.cjs +1034 -0
  325. package/lib/memory/aaak-compress.cjs +403 -0
  326. package/lib/memory/aaak-compress.test.cjs +288 -0
  327. package/lib/memory/async-artifact-auto-commit.test.cjs +223 -0
  328. package/lib/memory/bearer-token.test.cjs +315 -0
  329. package/lib/memory/brain-cache-lru.test.cjs +259 -0
  330. package/lib/memory/brain-client-query-shape.test.cjs +160 -0
  331. package/lib/memory/brain-derivation-graceful-degradation.test.cjs +1019 -0
  332. package/lib/memory/brain-derivation-queue.test.cjs +539 -0
  333. package/lib/memory/brain-derivation.test.cjs +634 -0
  334. package/lib/memory/brain-derive-command.test.cjs +534 -0
  335. package/lib/memory/brain-md-invariants-validator.test.cjs +704 -0
  336. package/lib/memory/brain-md-schema.test.cjs +467 -0
  337. package/lib/memory/brain-md-staleness.test.cjs +525 -0
  338. package/lib/memory/brain-server-resolution.test.cjs +314 -0
  339. package/lib/memory/chat-context.test.cjs +128 -0
  340. package/lib/memory/cross-room-aggregator.test.cjs +909 -0
  341. package/lib/memory/dashboard-server.test.cjs +256 -0
  342. package/lib/memory/debouncer-drain-at-prompt.test.cjs +389 -0
  343. package/lib/memory/decision-capture.test.cjs +632 -0
  344. package/lib/memory/decision-capture.worker.cjs +70 -0
  345. package/lib/memory/explain-decision-command.test.cjs +521 -0
  346. package/lib/memory/explain-decision-footer.test.cjs +316 -0
  347. package/lib/memory/explored-materials-store.cjs +392 -0
  348. package/lib/memory/feynman-minto-guardian.test.cjs +736 -0
  349. package/lib/memory/feynman-minto-invariants.test.cjs +511 -0
  350. package/lib/memory/feynman-prompts-drift.test.cjs +144 -0
  351. package/lib/memory/feynman-prompts.cjs +151 -0
  352. package/lib/memory/feynman-prompts.test.cjs +96 -0
  353. package/lib/memory/folder-memory-quadruple.test.cjs +548 -0
  354. package/lib/memory/folder-memory.test.cjs +503 -0
  355. package/lib/memory/framework-chain-composer.test.cjs +515 -0
  356. package/lib/memory/frontmatter-schema-validator.test.cjs +290 -0
  357. package/lib/memory/heal-command.test.cjs +604 -0
  358. package/lib/memory/index-artifact-transaction.test.cjs +333 -0
  359. package/lib/memory/lazygraph-rs-discoveries-view.test.cjs +122 -0
  360. package/lib/memory/mcp-input-validation.test.cjs +240 -0
  361. package/lib/memory/mcp-server-brain-deps.test.cjs +270 -0
  362. package/lib/memory/mcp-stack-fallback.test.cjs +433 -0
  363. package/lib/memory/minto-debouncer.test.cjs +407 -0
  364. package/lib/memory/minto-debouncer.worker.cjs +46 -0
  365. package/lib/memory/minto-migration-v88.test.cjs +265 -0
  366. package/lib/memory/minto-schema-v88.test.cjs +390 -0
  367. package/lib/memory/mos-status-renderer.test.cjs +631 -0
  368. package/lib/memory/narrative-schema.cjs +376 -0
  369. package/lib/memory/narrative-schema.test.cjs +209 -0
  370. package/lib/memory/nav-dial.test.cjs +414 -0
  371. package/lib/memory/navigation-engine-core.test.cjs +722 -0
  372. package/lib/memory/navigation-invariants.test.cjs +483 -0
  373. package/lib/memory/offer-presenter.test.cjs +554 -0
  374. package/lib/memory/on-stop-snapshot.test.cjs +404 -0
  375. package/lib/memory/pending-tension-store.cjs +373 -0
  376. package/lib/memory/post-compact-reinjection.test.cjs +854 -0
  377. package/lib/memory/post-write-triple.test.cjs +317 -0
  378. package/lib/memory/pre-compact-snapshot.test.cjs +495 -0
  379. package/lib/memory/problem-type-router.test.cjs +656 -0
  380. package/lib/memory/query-efficiency-telemetry.test.cjs +370 -0
  381. package/lib/memory/recompile-room-references.test.cjs +392 -0
  382. package/lib/memory/recompile-room-references.worker.cjs +42 -0
  383. package/lib/memory/record-decision-dual-write.test.cjs +454 -0
  384. package/lib/memory/room-classifier-strict-mode.test.cjs +417 -0
  385. package/lib/memory/room-minto-hook.test.cjs +398 -0
  386. package/lib/memory/rs-discovery-engine.test.cjs +323 -0
  387. package/lib/memory/run-feynman-tests.cjs +1239 -0
  388. package/lib/memory/security-trifecta.test.cjs +312 -0
  389. package/lib/memory/session-start-brain-staleness.test.cjs +363 -0
  390. package/lib/memory/session-start-triple-injection.test.cjs +514 -0
  391. package/lib/memory/sessionstart-banner-formatter.cjs +318 -0
  392. package/lib/memory/sessionstart-minto-banner.test.cjs +373 -0
  393. package/lib/memory/skill-activation-router.test.cjs +419 -0
  394. package/lib/memory/stamp-artifact-write.test.cjs +304 -0
  395. package/lib/memory/statusline-active-room.test.cjs +315 -0
  396. package/lib/memory/statusline-minto-segment.test.cjs +292 -0
  397. package/lib/memory/sync-async-entry-points.test.cjs +204 -0
  398. package/lib/memory/test-bridge-writer-enhanced.cjs +452 -0
  399. package/lib/memory/test-rs-brain-substrate-shape.cjs +529 -0
  400. package/lib/memory/test-rs-brain-substrate.cjs +636 -0
  401. package/lib/memory/test-rs-breakthrough-scorer.cjs +375 -0
  402. package/lib/memory/test-rs-canon-violations.cjs +218 -0
  403. package/lib/memory/test-rs-chain-feeder-core.cjs +344 -0
  404. package/lib/memory/test-rs-chain-feeder-skill-spawn.cjs +297 -0
  405. package/lib/memory/test-rs-commercial-assessor.cjs +385 -0
  406. package/lib/memory/test-rs-differential-scorer.cjs +480 -0
  407. package/lib/memory/test-rs-discovery-engine.cjs +603 -0
  408. package/lib/memory/test-rs-domain-analyzer.cjs +492 -0
  409. package/lib/memory/test-rs-egress-primitives.cjs +420 -0
  410. package/lib/memory/test-rs-expert-mapper.cjs +547 -0
  411. package/lib/memory/test-rs-explain-command.cjs +443 -0
  412. package/lib/memory/test-rs-fetcher-academic.cjs +848 -0
  413. package/lib/memory/test-rs-fetcher-experts.cjs +496 -0
  414. package/lib/memory/test-rs-fetcher-industry.cjs +702 -0
  415. package/lib/memory/test-rs-fetcher-patents.cjs +674 -0
  416. package/lib/memory/test-rs-innovation-classifier.cjs +301 -0
  417. package/lib/memory/test-rs-mind-map.cjs +646 -0
  418. package/lib/memory/test-rs-neo4j-writer.cjs +518 -0
  419. package/lib/memory/test-rs-nl-to-query.cjs +449 -0
  420. package/lib/memory/test-rs-pinecone-bridge.cjs +277 -0
  421. package/lib/memory/test-rs-preprocessor.cjs +433 -0
  422. package/lib/memory/test-rs-query-matrix.cjs +391 -0
  423. package/lib/memory/test-rs-query-to-text.cjs +551 -0
  424. package/lib/memory/test-rs-sqlite-mirror.cjs +649 -0
  425. package/lib/memory/test-rs-thesis-generator.cjs +360 -0
  426. package/lib/memory/triple-context-formatter.cjs +473 -0
  427. package/lib/memory/triple-context-formatter.test.cjs +442 -0
  428. package/lib/memory/user-md-persona.test.cjs +565 -0
  429. package/lib/memory/userpromptsubmit-integration.test.cjs +690 -0
  430. package/lib/memory/validators/README.md +157 -0
  431. package/lib/memory/validators/brain-md-invariants.cjs +475 -0
  432. package/lib/memory/validators/brain-substrate-invariants.cjs +285 -0
  433. package/lib/memory/validators/external-academic-invariants.cjs +249 -0
  434. package/lib/memory/validators/external-industry-invariants.cjs +271 -0
  435. package/lib/memory/validators/external-patents-invariants.cjs +266 -0
  436. package/lib/memory/validators/minto-invariants.cjs +62 -0
  437. package/lib/memory/validators/navigation-invariants.cjs +340 -0
  438. package/lib/memory/validators/queue-health.cjs +95 -0
  439. package/lib/memory/validators/snapshot-integrity.cjs +129 -0
  440. package/lib/memory/validators/stale-lifecycle.cjs +116 -0
  441. package/lib/memory/vault-section-minto-generator-atomic.test.cjs +556 -0
  442. package/lib/memory/vault-section-minto-generator-atomic.worker.cjs +73 -0
  443. package/lib/memory/write-lock-atomic.test.cjs +137 -0
  444. package/lib/memory/write-lock-atomic.worker.cjs +55 -0
  445. package/lib/parity/check-parity.cjs +83 -0
  446. package/lib/presentation/presentation-server.cjs +101 -0
  447. package/lib/presentation/presentation-watcher.cjs +123 -0
  448. package/lib/quickview/hub-server.cjs +719 -0
  449. package/lib/quickview/server.cjs +533 -0
  450. package/lib/render/JTBD-PALETTES.md +145 -0
  451. package/lib/render/ROOM.md +59 -0
  452. package/lib/render/render-v2.cjs +486 -0
  453. package/lib/render/render-v2.test.cjs +267 -0
  454. package/lib/render/render.cjs +65 -0
  455. package/lib/state/ROOM.md +46 -0
  456. package/lib/state/state-md-parser.cjs +215 -0
  457. package/lib/statusline/ROOM.md +38 -0
  458. package/lib/statusline/banner-suppression.cjs +50 -0
  459. package/lib/statusline/surface-detect.cjs +85 -0
  460. package/lib/update-bootstrap.sh.template +145 -0
  461. package/lib/vault/frontmatter-schema.cjs +297 -0
  462. package/lib/vault/room-scanner.cjs +352 -0
  463. package/lib/vault/wikilink-builder.cjs +231 -0
  464. package/lib/vault/wikilink-builder.test.cjs +182 -0
  465. package/lib/wiki/graph-links.cjs +281 -0
  466. package/lib/wiki/page-renderer.cjs +229 -0
  467. package/lib/wiki/wiki-chat.cjs +81 -0
  468. package/lib/wiki/wiki-layout.cjs +1459 -0
  469. package/lib/wiki/wiki-search.cjs +142 -0
  470. package/lib/wiki/wiki-server.cjs +678 -0
  471. package/lib/wiki/wiki-watcher.cjs +105 -0
  472. package/package.json +44 -0
  473. package/pipelines/analogy/01-decompose.md +80 -0
  474. package/pipelines/analogy/02-abstract.md +87 -0
  475. package/pipelines/analogy/03-search.md +135 -0
  476. package/pipelines/analogy/04-transfer.md +101 -0
  477. package/pipelines/analogy/05-validate.md +106 -0
  478. package/pipelines/analogy/CHAIN.md +56 -0
  479. package/pipelines/discovery/01-explore-domains.md +44 -0
  480. package/pipelines/discovery/02-think-hats.md +50 -0
  481. package/pipelines/discovery/03-analyze-needs.md +54 -0
  482. package/pipelines/discovery/CHAIN.md +37 -0
  483. package/pipelines/thesis/01-structure-argument.md +45 -0
  484. package/pipelines/thesis/02-challenge-assumptions.md +48 -0
  485. package/pipelines/thesis/03-build-thesis.md +54 -0
  486. package/pipelines/thesis/CHAIN.md +37 -0
  487. package/references/brain/causal-directives.md +91 -0
  488. package/references/brain/causal-enrichment.cypher +165 -0
  489. package/references/brain/command-triggers-schema.md +226 -0
  490. package/references/brain/graph-architecture.md +317 -0
  491. package/references/brain/query-patterns.md +460 -0
  492. package/references/brain/room-hierarchy-schema.md +218 -0
  493. package/references/brain/schema.md +76 -0
  494. package/references/capability-radar/capabilities-index.md +241 -0
  495. package/references/capability-radar/changelog-cache.md +81 -0
  496. package/references/causal/causal-schema.md +103 -0
  497. package/references/design/email-template-standard.md +155 -0
  498. package/references/design/graph-visualization-standard.md +178 -0
  499. package/references/document-generation.md +179 -0
  500. package/references/hsi/HSI-TOOLS-REFERENCE.md +222 -0
  501. package/references/import-config.md +141 -0
  502. package/references/integrations/detection-patterns.md +101 -0
  503. package/references/meeting/artifact-template.md +377 -0
  504. package/references/meeting/cross-meeting-intelligence.md +216 -0
  505. package/references/meeting/cross-relationship-patterns.md +202 -0
  506. package/references/meeting/live-join-interface.md +244 -0
  507. package/references/meeting/section-mapping.md +192 -0
  508. package/references/meeting/segment-classification.md +258 -0
  509. package/references/meeting/speaker-profile-template.md +219 -0
  510. package/references/meeting/summary-template.md +348 -0
  511. package/references/meeting/transcript-patterns.md +226 -0
  512. package/references/methodology/analyze-needs.md +135 -0
  513. package/references/methodology/analyze-systems.md +121 -0
  514. package/references/methodology/analyze-timing.md +149 -0
  515. package/references/methodology/beautiful-question.md +109 -0
  516. package/references/methodology/build-knowledge.md +161 -0
  517. package/references/methodology/build-thesis.md +237 -0
  518. package/references/methodology/challenge-assumptions.md +127 -0
  519. package/references/methodology/diagnose.md +169 -0
  520. package/references/methodology/dominant-designs.md +212 -0
  521. package/references/methodology/explore-domains.md +147 -0
  522. package/references/methodology/explore-futures.md +163 -0
  523. package/references/methodology/explore-trends.md +129 -0
  524. package/references/methodology/find-bottlenecks.md +131 -0
  525. package/references/methodology/grade.md +211 -0
  526. package/references/methodology/index.md +97 -0
  527. package/references/methodology/leadership.md +200 -0
  528. package/references/methodology/lean-canvas.md +116 -0
  529. package/references/methodology/macro-trends.md +192 -0
  530. package/references/methodology/map-unknowns.md +137 -0
  531. package/references/methodology/mullins-7-domains.md +104 -0
  532. package/references/methodology/problem-types.md +65 -0
  533. package/references/methodology/root-cause.md +178 -0
  534. package/references/methodology/sapphire-encoding.md +355 -0
  535. package/references/methodology/scenario-plan.md +178 -0
  536. package/references/methodology/score-innovation.md +154 -0
  537. package/references/methodology/structure-argument.md +158 -0
  538. package/references/methodology/systems-thinking.md +159 -0
  539. package/references/methodology/think-hats.md +147 -0
  540. package/references/methodology/triz-matrix.json +751 -0
  541. package/references/methodology/triz-principles.md +501 -0
  542. package/references/methodology/user-needs.md +199 -0
  543. package/references/methodology/validate.md +163 -0
  544. package/references/methodology/value-proposition.md +244 -0
  545. package/references/opportunities/funding-lifecycle.md +103 -0
  546. package/references/opportunities/grant-api-patterns.md +99 -0
  547. package/references/opportunities/opportunity-template.md +84 -0
  548. package/references/personality/assessment-philosophy.md +72 -0
  549. package/references/personality/lexicon.md +100 -0
  550. package/references/personality/persona-chains.md +56 -0
  551. package/references/personality/pws-lexicon-full.md +499 -0
  552. package/references/personality/voice-dna.md +156 -0
  553. package/references/personas/hat-perspectives.md +76 -0
  554. package/references/personas/persona-template.md +63 -0
  555. package/references/pipeline/act-output-contract.md +88 -0
  556. package/references/pipeline/chains-index.md +39 -0
  557. package/references/pws-profile-generation.md +79 -0
  558. package/references/reasoning/reasoning-schema.md +143 -0
  559. package/references/reasoning/reasoning-template.md +68 -0
  560. package/references/reasoning/run-template.md +38 -0
  561. package/references/research/RESEARCH_14_CLAUDE_CODE_SOURCE_ARCHITECTURE.md +209 -0
  562. package/references/research/RESEARCH_15_V1.8_OPTIMIZATION_JTBD.md +375 -0
  563. package/references/research/RESEARCH_16_NATIVE_FIRST_PLUGIN_ARCHITECTURE.md +575 -0
  564. package/references/research/RESEARCH_17_MCP_UI_FRAMEWORKS.md +272 -0
  565. package/references/taxonomy/TAXONOMY.md +192 -0
  566. package/references/templates/MINTO.md +36 -0
  567. package/references/user-research/2026-04-05-leah-lawrence-session.md +202 -0
  568. package/references/vault-kit/README.md +35 -0
  569. package/references/vault-kit/app.json +12 -0
  570. package/references/vault-kit/appearance.json +12 -0
  571. package/references/vault-kit/graph.json +35 -0
  572. package/references/vault-kit/snippets/mindrian-destijl.css +297 -0
  573. package/references/vault-kit/templates/new-artifact.md +37 -0
  574. package/references/vault-kit/templates/new-meeting-note.md +35 -0
  575. package/references/vault-kit/templates/new-team-profile.md +29 -0
  576. package/references/vault-kit/templates/new-xref.md +35 -0
  577. package/references/visual/symbol-system.md +151 -0
  578. package/skills/MOSDeckEngine/SKILL.md +325 -0
  579. package/skills/brain-connector/SKILL.md +114 -0
  580. package/skills/context-engine/SKILL.md +147 -0
  581. package/skills/conversation-mode/SKILL.md +102 -0
  582. package/skills/larry-personality/SKILL.md +219 -0
  583. package/skills/larry-personality/framework-chains.md +92 -0
  584. package/skills/larry-personality/mode-engine.md +185 -0
  585. package/skills/mullins-scaffold/SKILL.md +61 -0
  586. package/skills/mullins-scaffold/scaffold.json +146 -0
  587. package/skills/pws-methodology/SKILL.md +49 -0
  588. package/skills/room-passive/SKILL.md +165 -0
  589. package/skills/room-proactive/SKILL.md +250 -0
  590. package/skills/ui-system/SKILL.md +277 -0
@@ -0,0 +1,165 @@
1
+ // Brain Causal Framework Enrichment
2
+ // Phase 52: BRAIN-01 through BRAIN-06
3
+ // Execute via mcp__neo4j-brain__write_neo4j_cypher
4
+ //
5
+ // IMPORTANT: Before running any write statements, run the discovery queries
6
+ // in the "Discovery" section to verify exact node names. Replace placeholder
7
+ // names below with exact names from discovery results.
8
+ //
9
+ // Generated: 2026-04-05
10
+ // Requirements: BRAIN-01, BRAIN-02, BRAIN-03, BRAIN-04, BRAIN-05, BRAIN-06
11
+
12
+ // ============================================================================
13
+ // SECTION 0: DISCOVERY (run FIRST via mcp__neo4j-brain__read_neo4j_cypher)
14
+ // ============================================================================
15
+
16
+ // Query A: Get all Framework node names (verify exact spelling)
17
+ // MATCH (f:Framework) RETURN f.name AS name LIMIT 50
18
+
19
+ // Query B: Get all Concept node names
20
+ // MATCH (c:Concept) RETURN c.name AS name LIMIT 50
21
+
22
+ // Query C: Check VentureStage nodes
23
+ // MATCH (v:VentureStage) RETURN v.name AS name LIMIT 20
24
+
25
+ // Query D: Check existing edge types on Framework nodes
26
+ // MATCH (f:Framework)-[r]->() RETURN DISTINCT type(r) AS rel_type LIMIT 30
27
+
28
+ // Query E: Check if Falsifiability or Hypothesis Tree exist
29
+ // MATCH (f:Framework) WHERE f.name CONTAINS 'Falsif' OR f.name CONTAINS 'Hypothesis' RETURN f.name LIMIT 10
30
+
31
+ // ============================================================================
32
+ // SECTION 1: BRAIN-03 -- Create Theory of Change Framework node
33
+ // ============================================================================
34
+
35
+ MERGE (f:Framework {name: 'Theory of Change'})
36
+ ON CREATE SET f.description = 'Forward causal reasoning: articulate the causal pathway from activities to outcomes. Maps assumptions about how change happens.',
37
+ f.category = 'causal',
38
+ f.created = datetime()
39
+
40
+ // ============================================================================
41
+ // SECTION 2: BRAIN-04 -- Create Causal Reasoning parent Concept node
42
+ // ============================================================================
43
+
44
+ MERGE (c:Concept {name: 'Causal Reasoning'})
45
+ ON CREATE SET c.description = 'Parent concept connecting causal analysis frameworks: root cause analysis, systems thinking, causal loop diagrams, scenario analysis, and theory of change.',
46
+ c.created = datetime()
47
+
48
+ // Link each causal framework to the Causal Reasoning concept
49
+ // NOTE: Use exact names from Query A. Names below are best-guess from Brain schema.
50
+
51
+ MATCH (f:Framework {name: 'Root Cause Analysis'}), (c:Concept {name: 'Causal Reasoning'})
52
+ MERGE (f)-[:RELATED_TO]->(c)
53
+
54
+ MATCH (f:Framework {name: 'Systems Thinking'}), (c:Concept {name: 'Causal Reasoning'})
55
+ MERGE (f)-[:RELATED_TO]->(c)
56
+
57
+ MATCH (f:Framework {name: 'Causal Loop Diagrams'}), (c:Concept {name: 'Causal Reasoning'})
58
+ MERGE (f)-[:RELATED_TO]->(c)
59
+
60
+ MATCH (f:Framework {name: 'Scenario Analysis Framework'}), (c:Concept {name: 'Causal Reasoning'})
61
+ MERGE (f)-[:RELATED_TO]->(c)
62
+
63
+ MATCH (f:Framework {name: 'Theory of Change'}), (c:Concept {name: 'Causal Reasoning'})
64
+ MERGE (f)-[:RELATED_TO]->(c)
65
+
66
+ // ============================================================================
67
+ // SECTION 3: BRAIN-01 -- Wire FEEDS_INTO chains
68
+ // ============================================================================
69
+
70
+ // Chain: Root Cause Analysis -> Systems Thinking -> Causal Loop Diagrams -> Scenario Analysis
71
+ MATCH (a:Framework {name: 'Root Cause Analysis'}), (b:Framework {name: 'Systems Thinking'})
72
+ MERGE (a)-[:FEEDS_INTO]->(b)
73
+
74
+ MATCH (a:Framework {name: 'Systems Thinking'}), (b:Framework {name: 'Causal Loop Diagrams'})
75
+ MERGE (a)-[:FEEDS_INTO]->(b)
76
+
77
+ MATCH (a:Framework {name: 'Causal Loop Diagrams'}), (b:Framework {name: 'Scenario Analysis Framework'})
78
+ MERGE (a)-[:FEEDS_INTO]->(b)
79
+
80
+ // Branch: Systems Thinking -> Reverse Salient Analysis
81
+ MATCH (a:Framework {name: 'Systems Thinking'}), (b:Framework {name: 'Reverse Salient Analysis'})
82
+ MERGE (a)-[:FEEDS_INTO]->(b)
83
+
84
+ // ============================================================================
85
+ // SECTION 4: BRAIN-02 -- CO_OCCURS edges (bidirectional)
86
+ // ============================================================================
87
+
88
+ // Root Cause Analysis <-> Six Thinking Hats
89
+ MATCH (a:Framework {name: 'Root Cause Analysis'}), (b:Framework {name: 'Six Thinking Hats'})
90
+ MERGE (a)-[:CO_OCCURS]->(b)
91
+ MERGE (b)-[:CO_OCCURS]->(a)
92
+
93
+ // Systems Thinking <-> Reverse Salient Analysis
94
+ MATCH (a:Framework {name: 'Systems Thinking'}), (b:Framework {name: 'Reverse Salient Analysis'})
95
+ MERGE (a)-[:CO_OCCURS]->(b)
96
+ MERGE (b)-[:CO_OCCURS]->(a)
97
+
98
+ // Cynefin <-> Root Cause Analysis
99
+ MATCH (a:Framework {name: 'Cynefin Framework'}), (b:Framework {name: 'Root Cause Analysis'})
100
+ MERGE (a)-[:CO_OCCURS]->(b)
101
+ MERGE (b)-[:CO_OCCURS]->(a)
102
+
103
+ // ============================================================================
104
+ // SECTION 5: BRAIN-05 -- TYPICAL_AT venture stage mappings
105
+ // ============================================================================
106
+
107
+ // Create VentureStage nodes if they do not exist (verify with Query C first)
108
+ MERGE (s:VentureStage {name: 'Pre-Opportunity'})
109
+ MERGE (s2:VentureStage {name: 'Opportunity Identified'})
110
+ MERGE (s3:VentureStage {name: 'Problem Validation'})
111
+
112
+ // Map causal frameworks to venture stages
113
+ MATCH (f:Framework {name: 'Root Cause Analysis'}), (s:VentureStage {name: 'Opportunity Identified'})
114
+ MERGE (f)-[:TYPICAL_AT]->(s)
115
+
116
+ MATCH (f:Framework {name: 'Systems Thinking'}), (s:VentureStage {name: 'Pre-Opportunity'})
117
+ MERGE (f)-[:TYPICAL_AT]->(s)
118
+
119
+ MATCH (f:Framework {name: 'Reverse Salient Analysis'}), (s:VentureStage {name: 'Pre-Opportunity'})
120
+ MERGE (f)-[:TYPICAL_AT]->(s)
121
+
122
+ MATCH (f:Framework {name: 'Theory of Change'}), (s:VentureStage {name: 'Problem Validation'})
123
+ MERGE (f)-[:TYPICAL_AT]->(s)
124
+
125
+ // ============================================================================
126
+ // SECTION 6: BRAIN-06 -- Link Falsifiability and Hypothesis Tree
127
+ // ============================================================================
128
+
129
+ // NOTE: Use exact names from Query E. Names below are best-guess.
130
+
131
+ // Link to Causal Reasoning concept
132
+ // NOTE: Falsifiability is a Concept, Logic Trees is a Concept (not Framework labels)
133
+ MATCH (f:Concept {name: 'Falsifiability'}), (c:Concept {name: 'Causal Reasoning'})
134
+ MERGE (f)-[:RELATED_TO]->(c)
135
+
136
+ MATCH (f:Concept {name: 'Logic Trees (Issue, Hypothesis, Decision)'}), (c:Concept {name: 'Causal Reasoning'})
137
+ MERGE (f)-[:RELATED_TO]->(c)
138
+
139
+ // FEEDS_INTO from Theory of Change to Logic Trees
140
+ MATCH (a:Framework {name: 'Theory of Change'}), (b:Concept {name: 'Logic Trees (Issue, Hypothesis, Decision)'})
141
+ MERGE (a)-[:FEEDS_INTO]->(b)
142
+
143
+ // FEEDS_INTO from Logic Trees to Falsifiability
144
+ MATCH (a:Concept {name: 'Logic Trees (Issue, Hypothesis, Decision)'}), (b:Concept {name: 'Falsifiability'})
145
+ MERGE (a)-[:FEEDS_INTO]->(b)
146
+
147
+ // ============================================================================
148
+ // VERIFICATION QUERIES (run via mcp__neo4j-brain__read_neo4j_cypher)
149
+ // ============================================================================
150
+
151
+ // Verify BRAIN-01: FEEDS_INTO chain
152
+ // MATCH (a:Framework)-[:FEEDS_INTO]->(b:Framework)
153
+ // WHERE a.name CONTAINS 'Root Cause' OR a.name CONTAINS 'Systems' OR a.name CONTAINS 'Causal Loop'
154
+ // RETURN a.name AS from_fw, b.name AS to_fw
155
+ // LIMIT 10
156
+
157
+ // Verify BRAIN-04: Causal Reasoning concept connections
158
+ // MATCH (f:Framework)-[:RELATED_TO]->(c:Concept {name: 'Causal Reasoning'})
159
+ // RETURN f.name AS framework
160
+ // LIMIT 10
161
+
162
+ // Verify BRAIN-05: TYPICAL_AT edges
163
+ // MATCH (f:Framework)-[:TYPICAL_AT]->(s:VentureStage)
164
+ // RETURN f.name AS framework, s.name AS stage
165
+ // LIMIT 10
@@ -0,0 +1,226 @@
1
+ # Brain Command Trigger Schema
2
+
3
+ ## Purpose
4
+
5
+ Commands are first-class nodes in the Neo4j Brain. They have typed relationships to Frameworks, ProblemTypes, VentureStages, and Signals that define WHEN they should fire. The Brain doesn't just recommend frameworks -- it recommends ACTIONS mapped to specific /mos: commands with trigger conditions.
6
+
7
+ ## Node: Command
8
+
9
+ ```cypher
10
+ CREATE (c:Command {
11
+ name: '/mos:find-analogies',
12
+ slug: 'find-analogies',
13
+ category: 'intelligence', // infrastructure | methodology | intelligence | export | meeting | funding
14
+ description: 'Cross-domain analogy discovery via structural isomorphism',
15
+ jtbd_when: 'stuck on a problem that feels unique to your domain',
16
+ jtbd_want: 'discover that other industries already solved the same structural conflict',
17
+ jtbd_so: 'adapt their approach instead of inventing from scratch',
18
+ time_estimate: '5 minutes',
19
+ flags: ['--brain', '--external'], // available flags
20
+ min_sections: 2, // minimum populated sections to be relevant
21
+ requires_brain: false, // works without Brain (but better with)
22
+ powerhouse: true // v1.6.0+ feature
23
+ })
24
+ ```
25
+
26
+ ## Relationships
27
+
28
+ ### TRIGGERED_BY_SIGNAL
29
+
30
+ Links a Command to the Room Signal types that should trigger it.
31
+
32
+ ```cypher
33
+ // When a CONTRADICTS edge exists between sections -> suggest find-analogies
34
+ CREATE (cmd:Command {name: '/mos:find-analogies'})-[:TRIGGERED_BY_SIGNAL {
35
+ signal_type: 'TENSION', // TENSION | BLIND_SPOT | BOTTLENECK | PATTERN | SURPRISE
36
+ priority: 1, // 1=highest, 5=lowest
37
+ condition: 'contradicts_count >= 1',
38
+ jtbd_framing: 'When your Sections have unresolved Tensions, you want to see how other domains resolved the same structural conflict'
39
+ }]->(sig:SignalType {name: 'TENSION'})
40
+
41
+ // When 3+ sections have gaps -> suggest act --swarm
42
+ CREATE (cmd:Command {name: '/mos:act --swarm'})-[:TRIGGERED_BY_SIGNAL {
43
+ signal_type: 'BLIND_SPOT',
44
+ priority: 1,
45
+ condition: 'gap_count >= 3',
46
+ jtbd_framing: 'When 3+ Sections have Blind Spots, you want to fill them all at once instead of one at a time'
47
+ }]->(sig:SignalType {name: 'BLIND_SPOT'})
48
+
49
+ // When reverse salients detected -> suggest specific methodology for lagging section
50
+ CREATE (cmd:Command {name: '/mos:act'})-[:TRIGGERED_BY_SIGNAL {
51
+ signal_type: 'BOTTLENECK',
52
+ priority: 2,
53
+ condition: 'reverse_salient_count >= 1',
54
+ jtbd_framing: 'When a Section lags behind the others, you want to close the gap before it compounds'
55
+ }]->(sig:SignalType {name: 'BOTTLENECK'})
56
+ ```
57
+
58
+ ### FOLLOWS_FRAMEWORK
59
+
60
+ Links a Command to the Framework it should follow (chaining).
61
+
62
+ ```cypher
63
+ // After JTBD analysis -> suggest Blue Ocean
64
+ CREATE (cmd:Command {name: '/mos:dominant-designs'})-[:FOLLOWS_FRAMEWORK {
65
+ confidence: 0.85,
66
+ reason: 'JTBD reveals customer needs; dominant designs reveals competitive whitespace',
67
+ hop_distance: 1
68
+ }]->(f:Framework {name: 'Jobs-to-Be-Done'})
69
+
70
+ // After find-analogies -> suggest validate (stress-test the analogy)
71
+ CREATE (cmd:Command {name: '/mos:validate'})-[:FOLLOWS_FRAMEWORK {
72
+ confidence: 0.90,
73
+ reason: 'Analogies must be stress-tested before acting on them',
74
+ hop_distance: 1
75
+ }]->(f:Framework {name: 'Design-by-Analogy'})
76
+
77
+ // After grade --full -> suggest act --swarm on weak sections
78
+ CREATE (cmd:Command {name: '/mos:act --swarm'})-[:FOLLOWS_FRAMEWORK {
79
+ confidence: 0.80,
80
+ reason: 'Grading reveals gaps; swarm attacks them in parallel',
81
+ hop_distance: 1
82
+ }]->(f:Framework {name: 'Assessment'})
83
+ ```
84
+
85
+ ### RELEVANT_AT_STAGE
86
+
87
+ Links a Command to VentureStages where it's most impactful.
88
+
89
+ ```cypher
90
+ // find-analogies is most powerful at Discovery and Design stages
91
+ CREATE (cmd:Command {name: '/mos:find-analogies'})-[:RELEVANT_AT_STAGE {
92
+ impact: 'high',
93
+ reason: 'Discovery needs fresh perspectives; Design needs proven patterns'
94
+ }]->(stage:VentureStage {name: 'Discovery'})
95
+
96
+ // grade --full becomes critical at Investment stage
97
+ CREATE (cmd:Command {name: '/mos:grade --full'})-[:RELEVANT_AT_STAGE {
98
+ impact: 'critical',
99
+ reason: 'Investment stage demands rigor across every Section'
100
+ }]->(stage:VentureStage {name: 'Investment'})
101
+
102
+ // scout is always relevant but especially at Validation
103
+ CREATE (cmd:Command {name: '/mos:scout'})-[:RELEVANT_AT_STAGE {
104
+ impact: 'high',
105
+ reason: 'Validation stage has deadlines and competitor dynamics'
106
+ }]->(stage:VentureStage {name: 'Validation'})
107
+ ```
108
+
109
+ ### ADDRESSES_PROBLEM_TYPE
110
+
111
+ Links a Command to ProblemTypes it solves (via multi-hop through Frameworks).
112
+
113
+ ```cypher
114
+ // find-analogies addresses wicked problems (via Design-by-Analogy framework)
115
+ CREATE (cmd:Command {name: '/mos:find-analogies'})-[:ADDRESSES_PROBLEM_TYPE {
116
+ via_framework: 'Design-by-Analogy',
117
+ effectiveness: 0.85
118
+ }]->(pt:ProblemType {name: 'wicked'})
119
+
120
+ // act --swarm addresses complex problems with multiple dimensions
121
+ CREATE (cmd:Command {name: '/mos:act --swarm'})-[:ADDRESSES_PROBLEM_TYPE {
122
+ via_framework: 'Multiple simultaneous frameworks',
123
+ effectiveness: 0.90
124
+ }]->(pt:ProblemType {name: 'ill-defined-complex'})
125
+ ```
126
+
127
+ ### RESOLVES_TENSION_BETWEEN
128
+
129
+ Links a Command to Framework pairs that commonly produce contradictions.
130
+
131
+ ```cypher
132
+ // find-analogies resolves tensions between pricing frameworks and competitive positioning
133
+ CREATE (cmd:Command {name: '/mos:find-analogies'})-[:RESOLVES_TENSION_BETWEEN {
134
+ framework_a: 'Lean Canvas',
135
+ framework_b: 'Competitive Analysis',
136
+ resolution_pattern: 'Cross-domain structural isomorphism finds how other industries resolved pricing vs positioning'
137
+ }]->(tension:TensionType {name: 'pricing_vs_positioning'})
138
+ ```
139
+
140
+ ## Multi-Hop Proactive Query
141
+
142
+ The power of this schema is MULTI-HOP reasoning. The Brain can traverse:
143
+
144
+ ```
145
+ User's Room State
146
+ -> Current Frameworks (from Room artifacts)
147
+ -> FEEDS_INTO relationships (what comes next)
148
+ -> Command nodes (which /mos: command delivers it)
149
+ -> TRIGGERED_BY_SIGNAL (is the trigger condition met?)
150
+ -> Return ranked command suggestion with full JTBD framing
151
+ ```
152
+
153
+ ### Query: brain_proactive_command (Pattern 10d)
154
+
155
+ ```cypher
156
+ // Multi-hop: Room frameworks -> next framework -> command -> trigger check
157
+ MATCH (current:Framework)<-[:FOLLOWS_FRAMEWORK]-(cmd:Command)
158
+ WHERE current.name IN $room_frameworks
159
+
160
+ // Check if command is relevant at this venture stage
161
+ OPTIONAL MATCH (cmd)-[stage_rel:RELEVANT_AT_STAGE]->(stage:VentureStage {name: $venture_stage})
162
+
163
+ // Check if command is triggered by current signals
164
+ OPTIONAL MATCH (cmd)-[trigger:TRIGGERED_BY_SIGNAL]->(sig:SignalType)
165
+
166
+ // Get success data
167
+ OPTIONAL MATCH (current)-[:APPLIED_IN]->(example:Example)
168
+ WHERE example.grade_numeric >= 80
169
+
170
+ RETURN cmd.name AS command,
171
+ cmd.jtbd_when AS when_situation,
172
+ cmd.jtbd_want AS want_motivation,
173
+ cmd.jtbd_so AS so_outcome,
174
+ cmd.time_estimate AS time,
175
+ cmd.flags AS available_flags,
176
+ stage_rel.impact AS stage_impact,
177
+ trigger.signal_type AS triggered_by,
178
+ trigger.condition AS trigger_condition,
179
+ trigger.jtbd_framing AS trigger_framing,
180
+ count(example) AS success_count
181
+ ORDER BY stage_rel.impact DESC, trigger.priority ASC, success_count DESC
182
+ LIMIT 5
183
+ ```
184
+
185
+ **Parameters:**
186
+ - `$room_frameworks` -- frameworks used in Room (from artifact frontmatter)
187
+ - `$venture_stage` -- from STATE.md
188
+
189
+ **Output:** Ranked command suggestions with full JTBD framing, trigger conditions, and success data from real projects.
190
+
191
+ ## Seeding Script
192
+
193
+ The Command nodes and trigger relationships need to be seeded into Neo4j. Create a script that:
194
+
195
+ 1. Reads all commands/*.md files
196
+ 2. Extracts: name, description, allowed-tools, category
197
+ 3. Generates JTBD statements from the command's purpose
198
+ 4. Creates Command nodes with relationships to:
199
+ - Frameworks they follow (from methodology chaining rules)
200
+ - VentureStages they're relevant at (from problem-types.md)
201
+ - SignalTypes that trigger them (from proactive-intelligence patterns)
202
+ 5. Runs the Cypher via `mcp__neo4j-brain__write_neo4j_cypher`
203
+
204
+ Script location: `scripts/seed-brain-commands.cjs`
205
+
206
+ ## The Intelligence Hierarchy (Updated)
207
+
208
+ ```
209
+ LEVEL 3 (Brain + Room + Signals):
210
+ brain_proactive_command (Pattern 10d)
211
+ Multi-hop: frameworks -> commands -> triggers -> JTBD
212
+ Calibrated from 100+ real projects
213
+ Knows which sequences ACTUALLY produced results
214
+
215
+ LEVEL 2 (Room + Local Fabric):
216
+ Larry's JTBD provoked suggestions (every 3-7 turns)
217
+ KuzuDB Tensions, Bottlenecks, Surprises, Convergences
218
+ Good but not cross-venture calibrated
219
+
220
+ LEVEL 1 (No Room):
221
+ Generic stage-based defaults
222
+ methodology/index.md routing table
223
+ Better than nothing
224
+ ```
225
+
226
+ Brain-connected users get LEVEL 3: the Brain literally tells Larry which command to suggest, when, and why -- backed by data from 100+ real ventures. The JTBD framing is baked into the Command node itself. Larry just reads it and presents it naturally.