@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,501 @@
1
+ # TRIZ 40 Inventive Principles
2
+
3
+ *Genrich Altshuller's 40 Inventive Principles, derived from analysis of 2.5 million patents. Each principle is a domain-independent strategy for resolving technical contradictions.*
4
+
5
+ ---
6
+
7
+ ## 1. Segmentation
8
+
9
+ **Description:** Divide an object or system into independent parts. Make an object sectional or easy to disassemble. Increase the degree of segmentation.
10
+
11
+ **Examples:**
12
+ - Modular furniture that ships flat and assembles on-site
13
+ - Splitting a software monolith into microservices for independent scaling
14
+ - Sectional concrete barriers that can be reconfigured for different road layouts
15
+
16
+ ---
17
+
18
+ ## 2. Taking Out (Extraction)
19
+
20
+ **Description:** Extract the disturbing part or property from an object. Extract only the necessary part or property.
21
+
22
+ **Examples:**
23
+ - Noise-canceling headphones that extract and invert the noise signal
24
+ - Using a bank's ATM network instead of building physical branches
25
+ - Extracting heat from server rooms to warm adjacent offices
26
+
27
+ ---
28
+
29
+ ## 3. Local Quality
30
+
31
+ **Description:** Change an object's structure from uniform to non-uniform. Change the external environment or external influence from uniform to non-uniform. Make each part of an object function in conditions most suitable for its operation.
32
+
33
+ **Examples:**
34
+ - Variable-density foam mattresses (firm center, soft edges)
35
+ - Progressive lens eyeglasses with different focal zones
36
+ - Differentiated pricing by region in SaaS products
37
+
38
+ ---
39
+
40
+ ## 4. Asymmetry
41
+
42
+ **Description:** Change the shape or properties of an object from symmetrical to asymmetrical. If an object is already asymmetrical, increase the degree of asymmetry.
43
+
44
+ **Examples:**
45
+ - Asymmetric tire tread patterns optimized for different road conditions
46
+ - Unequal-length windshield wipers for maximum coverage
47
+ - A/B testing where traffic splits are 90/10 instead of 50/50 for faster learning
48
+
49
+ ---
50
+
51
+ ## 5. Merging (Consolidation)
52
+
53
+ **Description:** Bring closer together identical or similar objects or operations in space. Bring closer together identical or similar objects or operations in time.
54
+
55
+ **Examples:**
56
+ - Multi-tool devices (Swiss Army knife)
57
+ - Container ships consolidating goods from many shippers
58
+ - Batch processing multiple database queries into a single transaction
59
+
60
+ ---
61
+
62
+ ## 6. Universality
63
+
64
+ **Description:** Make an object or system perform multiple functions, eliminating the need for other objects or systems.
65
+
66
+ **Examples:**
67
+ - Smartphone replaces camera, GPS, music player, calculator, flashlight
68
+ - A sofa bed that serves as both seating and sleeping surface
69
+ - A single CLI command that handles setup, configuration, and validation
70
+
71
+ ---
72
+
73
+ ## 7. Nested Doll (Nesting)
74
+
75
+ **Description:** Place one object inside another. Pass one object through a cavity in another. Use multiple nesting levels.
76
+
77
+ **Examples:**
78
+ - Telescoping antenna segments
79
+ - Measuring cups that nest inside each other for storage
80
+ - Docker containers running inside VMs running inside cloud instances
81
+
82
+ ---
83
+
84
+ ## 8. Anti-Weight (Counterweight)
85
+
86
+ **Description:** Compensate for the weight or force of an object by merging with another object that provides a lifting or opposing force. Compensate by interaction with the environment.
87
+
88
+ **Examples:**
89
+ - Helium balloons attached to heavy advertising signs
90
+ - Counterweights in elevators reducing motor energy requirements
91
+ - Using customer referral credits to offset acquisition costs
92
+
93
+ ---
94
+
95
+ ## 9. Preliminary Anti-Action
96
+
97
+ **Description:** If it will be necessary to perform an action with both harmful and useful effects, perform a counteraction in advance to control the harmful effects.
98
+
99
+ **Examples:**
100
+ - Pre-stressing concrete with tension cables before load application
101
+ - Vaccinating before exposure to disease
102
+ - Writing rollback scripts before deploying database migrations
103
+
104
+ ---
105
+
106
+ ## 10. Preliminary Action
107
+
108
+ **Description:** Perform the required change to an object completely or partially in advance. Pre-arrange objects so they can act from the most convenient position without delay.
109
+
110
+ **Examples:**
111
+ - Pre-pasted wallpaper that only needs water to activate
112
+ - Pre-compiled binary distributions of software
113
+ - Staging inventory near expected demand (Amazon fulfillment centers)
114
+
115
+ ---
116
+
117
+ ## 11. Beforehand Cushioning
118
+
119
+ **Description:** Prepare emergency means beforehand to compensate for the relatively low reliability of an object.
120
+
121
+ **Examples:**
122
+ - Airbags in vehicles
123
+ - Automatic database backups before schema migrations
124
+ - Circuit breaker patterns in distributed systems
125
+
126
+ ---
127
+
128
+ ## 12. Equipotentiality
129
+
130
+ **Description:** Change operating conditions so that an object need not be raised or lowered. Minimize potential energy changes.
131
+
132
+ **Examples:**
133
+ - Canal locks that bring water level to the boat instead of lifting the boat
134
+ - Conveyor belts at loading dock height eliminating manual lifting
135
+ - Zero-config software that works at installation without setup steps
136
+
137
+ ---
138
+
139
+ ## 13. The Other Way Round (Inversion)
140
+
141
+ **Description:** Invert the action. Make a movable part fixed and a fixed part movable. Turn the object upside down.
142
+
143
+ **Examples:**
144
+ - Treadmill (person stays stationary, ground moves)
145
+ - Rotisserie cooking (food rotates, heat source is fixed)
146
+ - Pull-based CI/CD pipelines instead of push-based deployments
147
+
148
+ ---
149
+
150
+ ## 14. Spheroidality (Curvature)
151
+
152
+ **Description:** Move from flat surfaces to curved surfaces, from straight lines to curves. Use rollers, balls, spirals. Move from linear to rotary motion.
153
+
154
+ **Examples:**
155
+ - Ball bearings replacing sliding friction surfaces
156
+ - Spiral heat exchangers increasing surface area in compact space
157
+ - Iterative development cycles replacing linear waterfall planning
158
+
159
+ ---
160
+
161
+ ## 15. Dynamics
162
+
163
+ **Description:** Allow or design the characteristics of an object, process, or system to change to be optimal at each stage of operation. Divide an object into parts capable of movement relative to each other.
164
+
165
+ **Examples:**
166
+ - Adjustable-height standing desks
167
+ - Dynamic pricing algorithms (airlines, ride-sharing)
168
+ - Adaptive learning platforms that adjust difficulty based on student performance
169
+
170
+ ---
171
+
172
+ ## 16. Partial or Excessive Action
173
+
174
+ **Description:** If 100% of an effect is hard to achieve, use slightly less or slightly more. The excess or shortage may then be used to advantage.
175
+
176
+ **Examples:**
177
+ - Spray painting slightly beyond edges, then trimming the mask
178
+ - Over-provisioning cloud servers, then scaling down based on actual load
179
+ - Casting metal parts slightly oversized, then machining to precision
180
+
181
+ ---
182
+
183
+ ## 17. Another Dimension
184
+
185
+ **Description:** Move an object in two- or three-dimensional space. Use a multi-story arrangement instead of a single story. Tilt or re-orient the object on its side. Use the other side of a given surface.
186
+
187
+ **Examples:**
188
+ - Multi-level parking garages
189
+ - Double-sided circuit boards
190
+ - Adding time as a dimension to scheduling problems (4D BIM in construction)
191
+
192
+ ---
193
+
194
+ ## 18. Mechanical Vibration
195
+
196
+ **Description:** Cause an object to oscillate or vibrate. Increase frequency up to ultrasonic. Use resonance frequency. Use piezoelectric vibrators instead of mechanical ones.
197
+
198
+ **Examples:**
199
+ - Ultrasonic cleaning baths for precision parts
200
+ - Vibrating concrete during pouring to eliminate air bubbles
201
+ - A/B test rapid iteration cycles to find product-market resonance
202
+
203
+ ---
204
+
205
+ ## 19. Periodic Action
206
+
207
+ **Description:** Replace continuous action with periodic or pulsating action. If an action is already periodic, change the frequency. Use pauses between impulses for additional action.
208
+
209
+ **Examples:**
210
+ - Pulsed laser cutting (higher peak power, less heat damage)
211
+ - Spaced repetition in learning (Anki flashcards)
212
+ - Cron-triggered batch processing instead of continuous polling
213
+
214
+ ---
215
+
216
+ ## 20. Continuity of Useful Action
217
+
218
+ **Description:** Carry on work without a break. All parts of an object should work at full capacity at all times. Eliminate idle or intermittent actions.
219
+
220
+ **Examples:**
221
+ - Continuous casting of steel replacing batch ingot casting
222
+ - Hot-swappable server components allowing maintenance without downtime
223
+ - Streaming data pipelines replacing batch ETL jobs
224
+
225
+ ---
226
+
227
+ ## 21. Skipping (Rushing Through)
228
+
229
+ **Description:** Conduct a process or certain stages at high speed. Pass quickly through a dangerous or harmful stage.
230
+
231
+ **Examples:**
232
+ - Flash pasteurization preserving flavor while killing bacteria
233
+ - Rapid prototyping to validate ideas before investing in production
234
+ - Speed-reading through boilerplate legal text, focusing on non-standard clauses
235
+
236
+ ---
237
+
238
+ ## 22. Blessing in Disguise (Convert Harm to Benefit)
239
+
240
+ **Description:** Use harmful factors or environmental effects to achieve a positive effect. Eliminate the harmful factor by combining with another harmful factor. Amplify a harmful factor to the point where it is no longer harmful.
241
+
242
+ **Examples:**
243
+ - Using waste heat from power plants for district heating
244
+ - Controlled forest burns preventing catastrophic wildfires
245
+ - Treating user complaints as free product research data
246
+
247
+ ---
248
+
249
+ ## 23. Feedback
250
+
251
+ **Description:** Introduce feedback to improve a process. If feedback already exists, change its magnitude or influence.
252
+
253
+ **Examples:**
254
+ - Thermostat-controlled heating systems
255
+ - Code review processes catching bugs before production
256
+ - Net Promoter Score surveys feeding into product roadmap decisions
257
+
258
+ ---
259
+
260
+ ## 24. Intermediary (Mediator)
261
+
262
+ **Description:** Use an intermediary carrier article or process. Merge one object temporarily with another that can be easily removed.
263
+
264
+ **Examples:**
265
+ - Using a real estate agent between buyer and seller
266
+ - API gateway mediating between clients and microservices
267
+ - Scaffolding supporting a building during construction, then removed
268
+
269
+ ---
270
+
271
+ ## 25. Self-Service
272
+
273
+ **Description:** Make an object serve itself by performing auxiliary helpful functions. Use waste resources, energy, or substances.
274
+
275
+ **Examples:**
276
+ - Self-cleaning oven using high heat to burn off residue
277
+ - Solar-powered parking meters
278
+ - Self-documenting code that generates its own API reference
279
+
280
+ ---
281
+
282
+ ## 26. Copying
283
+
284
+ **Description:** Use a simplified and inexpensive copy instead of an unavailable, expensive, or fragile object. Replace an object or process with optical copies at a different scale. If visible optical copies are used, move to infrared or ultraviolet copies.
285
+
286
+ **Examples:**
287
+ - Wind tunnel models of aircraft at 1/10 scale
288
+ - Digital twins of manufacturing equipment for simulation
289
+ - Staging environments that mirror production for testing
290
+
291
+ ---
292
+
293
+ ## 27. Cheap Short-Living Objects
294
+
295
+ **Description:** Replace an expensive object with multiple inexpensive objects, sacrificing certain qualities like lifespan.
296
+
297
+ **Examples:**
298
+ - Disposable medical gloves replacing sterilizable rubber gloves
299
+ - Spot instances in cloud computing (cheap but interruptible)
300
+ - MVP launches that validate quickly before building the "real" product
301
+
302
+ ---
303
+
304
+ ## 28. Mechanics Substitution
305
+
306
+ **Description:** Replace a mechanical means with sensory (optical, acoustic, taste, smell) means. Use electric, magnetic, or electromagnetic fields. Replace static fields with moving fields, fixed with changing, unstructured with structured.
307
+
308
+ **Examples:**
309
+ - Touch screens replacing physical keyboards and buttons
310
+ - QR codes replacing physical tickets
311
+ - Event-driven architecture replacing polling-based systems
312
+
313
+ ---
314
+
315
+ ## 29. Pneumatics and Hydraulics
316
+
317
+ **Description:** Use gas and liquid parts of an object instead of solid parts. Inflatable and hydrofilled objects, air cushion, hydrostatic and hydro-reactive.
318
+
319
+ **Examples:**
320
+ - Air suspension in luxury vehicles
321
+ - Hydraulic lift tables replacing mechanical screw jacks
322
+ - Fluid organizational structures replacing rigid hierarchies (applied abstractly)
323
+
324
+ ---
325
+
326
+ ## 30. Flexible Shells and Thin Films
327
+
328
+ **Description:** Use flexible shells and thin films instead of three-dimensional structures. Isolate the object from the external environment using flexible shells and thin films.
329
+
330
+ **Examples:**
331
+ - Shrink-wrap packaging conforming to product shape
332
+ - Thin-film solar cells on building facades
333
+ - API wrappers providing a thin interface over complex legacy systems
334
+
335
+ ---
336
+
337
+ ## 31. Porous Materials
338
+
339
+ **Description:** Make an object porous or add porous elements. If an object is already porous, use the pores to introduce a useful substance or function.
340
+
341
+ **Examples:**
342
+ - Porous concrete for drainage in parking lots
343
+ - Foam metal for lightweight structural components
344
+ - Permeable organizational boundaries allowing cross-team collaboration
345
+
346
+ ---
347
+
348
+ ## 32. Color Changes
349
+
350
+ **Description:** Change the color of an object or its external environment. Change the transparency of an object or its external environment. Use colored additives to observe objects or processes.
351
+
352
+ **Examples:**
353
+ - Thermochromic baby spoons that change color when food is too hot
354
+ - Syntax highlighting in code editors
355
+ - Heat maps in analytics dashboards revealing usage patterns
356
+
357
+ ---
358
+
359
+ ## 33. Homogeneity
360
+
361
+ **Description:** Make objects interacting with a given object of the same material or close to it in behavior.
362
+
363
+ **Examples:**
364
+ - Ice containers for keeping drinks cold (same material, no contamination)
365
+ - Using the same programming language across frontend and backend (Node.js)
366
+ - Diamond-coated drill bits for cutting diamond
367
+
368
+ ---
369
+
370
+ ## 34. Discarding and Recovering
371
+
372
+ **Description:** Make portions of an object that have fulfilled their functions go away or modify themselves during operation. Conversely, restore consumable parts during operation.
373
+
374
+ **Examples:**
375
+ - Dissolving surgical sutures
376
+ - Rocket stage separation during launch
377
+ - Ephemeral containers that spin up, execute, and self-destruct
378
+
379
+ ---
380
+
381
+ ## 35. Parameter Changes
382
+
383
+ **Description:** Change an object's physical state (solid to liquid, liquid to gas). Change concentration or consistency. Change the degree of flexibility. Change the temperature.
384
+
385
+ **Examples:**
386
+ - Freeze-drying food for lightweight transport, then rehydrating
387
+ - Changing database consistency levels based on operation type (eventual vs strong)
388
+ - Phase-change materials in building insulation storing and releasing heat
389
+
390
+ ---
391
+
392
+ ## 36. Phase Transitions
393
+
394
+ **Description:** Use phenomena occurring during phase transitions (volume changes, heat release or absorption).
395
+
396
+ **Examples:**
397
+ - Steam turbines using water-to-steam expansion for power
398
+ - Ice packs using solid-to-liquid absorption for cooling
399
+ - Organizational pivots using market transition moments for competitive advantage
400
+
401
+ ---
402
+
403
+ ## 37. Thermal Expansion
404
+
405
+ **Description:** Use thermal expansion or contraction of materials. If thermal expansion is already used, use multiple materials with different coefficients.
406
+
407
+ **Examples:**
408
+ - Bimetallic strips in thermostats curving to open/close circuits
409
+ - Shrink-fit assembly of mechanical parts
410
+ - Expanding team capacity during peak seasons, contracting during lulls
411
+
412
+ ---
413
+
414
+ ## 38. Strong Oxidants (Accelerated Oxidation)
415
+
416
+ **Description:** Replace common air with oxygen-enriched air. Replace enriched air with pure oxygen. Expose air or oxygen to ionizing radiation. Use ionized oxygen (ozone).
417
+
418
+ **Examples:**
419
+ - Hyperbaric oxygen therapy for wound healing
420
+ - Ozone treatment for water purification
421
+ - Intensifying competitive pressure to accelerate innovation (applied abstractly)
422
+
423
+ ---
424
+
425
+ ## 39. Inert Atmosphere
426
+
427
+ **Description:** Replace a normal environment with an inert one. Add neutral parts or inert additives to an object.
428
+
429
+ **Examples:**
430
+ - Nitrogen-flushed food packaging extending shelf life
431
+ - Argon gas in double-pane windows for insulation
432
+ - Sandboxed execution environments isolating untrusted code
433
+
434
+ ---
435
+
436
+ ## 40. Composite Materials
437
+
438
+ **Description:** Change from uniform to composite (multiple) materials. Use materials with complementary properties.
439
+
440
+ **Examples:**
441
+ - Carbon fiber reinforced polymers (strong and lightweight)
442
+ - Reinforced concrete (compression resistance of concrete + tension resistance of steel)
443
+ - Cross-functional teams combining diverse expertise domains
444
+
445
+ ---
446
+
447
+ ## The 39 Engineering Parameters
448
+
449
+ For reference, the 39 parameters used in the TRIZ Contradiction Matrix:
450
+
451
+ | # | Parameter |
452
+ |---|-----------|
453
+ | 1 | Weight of moving object |
454
+ | 2 | Weight of stationary object |
455
+ | 3 | Length of moving object |
456
+ | 4 | Length of stationary object |
457
+ | 5 | Area of moving object |
458
+ | 6 | Area of stationary object |
459
+ | 7 | Volume of moving object |
460
+ | 8 | Volume of stationary object |
461
+ | 9 | Speed |
462
+ | 10 | Force |
463
+ | 11 | Stress or pressure |
464
+ | 12 | Shape |
465
+ | 13 | Stability of object composition |
466
+ | 14 | Strength |
467
+ | 15 | Duration of action of moving object |
468
+ | 16 | Duration of action of stationary object |
469
+ | 17 | Temperature |
470
+ | 18 | Illumination intensity |
471
+ | 19 | Use of energy by moving object |
472
+ | 20 | Use of energy by stationary object |
473
+ | 21 | Power |
474
+ | 22 | Loss of energy |
475
+ | 23 | Loss of substance |
476
+ | 24 | Loss of information |
477
+ | 25 | Loss of time |
478
+ | 26 | Quantity of substance |
479
+ | 27 | Reliability |
480
+ | 28 | Accuracy of measurement |
481
+ | 29 | Ease of manufacture |
482
+ | 30 | Ease of use |
483
+ | 31 | Repairability |
484
+ | 32 | Adaptability or versatility |
485
+ | 33 | Device complexity |
486
+ | 34 | Difficulty of detecting and measuring |
487
+ | 35 | Degree of automation |
488
+ | 36 | Productivity |
489
+ | 37 | Harmful factors acting on object |
490
+ | 38 | Harmful side effects |
491
+ | 39 | Manufacturability |
492
+
493
+ ---
494
+
495
+ ## Reference
496
+
497
+ Altshuller, G. (1999). *The Innovation Algorithm: TRIZ, Systematic Innovation and Technical Creativity.* Worcester, MA: Technical Innovation Center.
498
+
499
+ Altshuller, G. (1984). *Creativity as an Exact Science.* New York: Gordon and Breach.
500
+
501
+ Savransky, S. D. (2000). *Engineering of Creativity: Introduction to TRIZ Methodology of Inventive Problem Solving.* Boca Raton, FL: CRC Press.
@@ -0,0 +1,199 @@
1
+ # Understanding User Needs -- Framework Reference
2
+
3
+ *Loaded on demand by `/mos:user-needs`*
4
+
5
+ ## Framework Overview
6
+
7
+ Understanding User Needs helps users find innovation opportunities through disciplined observation, not creativity. You map a real process that real people go through, rate every step on importance (how much it matters) and satisfaction (how well it's handled), find the gaps, understand the barriers, and identify opportunities hiding in the intersection of high importance and low satisfaction. Based on Ulwick's ODI (Outcome-Driven Innovation) and JTBD methodology, applied through Larry's observation-focused teaching style.
8
+
9
+ The operating principle: Stop telling me what users want. Tell me what they DO. Actions don't lie. The best innovations come from deeply understanding the process people go through, finding the steps where importance is high but satisfaction is low, and asking: Why? What prevents this from being addressed well?
10
+
11
+ ## The Voice (This Methodology)
12
+
13
+ Larry in observation mode. Process-mapper. Gap-finder. Barrier analyst.
14
+
15
+ Signature phrases:
16
+ - "Stop telling me what users want. Tell me what they DO. Actions don't lie."
17
+ - "Don't tell me the user 'wants' something. Tell me what they're trying to accomplish."
18
+ - "Importance without satisfaction is an opportunity. Low importance, regardless of satisfaction, is a distraction."
19
+ - "You've mapped the process from your perspective. Now map it from theirs."
20
+ - "If you can't explain why this step is painful, you can't fix it."
21
+ - "The user doesn't care about your solution. They care about their problem."
22
+ - "That's 5 steps for something that probably has 15. You're hiding the detail where the pain lives. Zoom in."
23
+
24
+ Anti-patterns to catch:
25
+ - Mapping from the provider's perspective instead of the user's
26
+ - Rating all steps 5-7 (clustering) -- force differentiation
27
+ - Skipping hidden steps (waiting, decision points, failure/retry loops, emotional transitions)
28
+ - Jumping to solutions before understanding barriers
29
+ - Innovating on low-importance steps ("fixing something nobody cares about")
30
+ - Accepting "users want this" without process-level evidence
31
+ - Never teach the framework abstractly -- apply it to their actual domain
32
+
33
+ ## Core Concepts
34
+
35
+ ### The Importance-Satisfaction Framework
36
+ Innovation opportunity = Importance + (10 - Satisfaction)
37
+
38
+ The biggest opportunities exist where something matters a lot to the user but is not being addressed well.
39
+
40
+ ### The Four Quadrants
41
+ - **HIGH Importance + LOW Satisfaction** = OPPORTUNITY ZONE (Innovate here)
42
+ - **HIGH Importance + HIGH Satisfaction** = PROTECT AND MAINTAIN (Don't break this)
43
+ - **LOW Importance + LOW Satisfaction** = IGNORE (Deprioritize)
44
+ - **LOW Importance + HIGH Satisfaction** = OVER-SERVED (Reallocate resources)
45
+
46
+ ### Three Levels of Detail
47
+ - **Strategic** (5-8 steps): End-to-end journey. First pass, overview.
48
+ - **Tactical** (8-15 steps): Within one phase. Where most analysis happens.
49
+ - **Operational** (10-20 steps): Within one step. When a step is high-importance but unclear why.
50
+
51
+ ## Phases
52
+
53
+ ### Phase 1: Domain and Process Selection (Investigative -- turns 1-2)
54
+
55
+ Select a domain the user knows well and identify a specific process.
56
+
57
+ - "What domain do you have the deepest knowledge in?" -- This method requires insider knowledge.
58
+ - "Within this domain, what is an important process? Who goes through it? What are they trying to accomplish?"
59
+ - "Can you map this in 8-15 steps (tactical level)?"
60
+
61
+ ONE question per response. Short and Socratic.
62
+
63
+ ### Phase 2: Process Mapping (Investigative -- turns 2-4)
64
+
65
+ Walk through the process from beginning to end, capturing every step.
66
+
67
+ - "Walk me through the process from start to finish. Don't filter. Don't skip the 'obvious' steps."
68
+ - Check for hidden steps:
69
+ - Waiting steps (the user experiences the wait)
70
+ - Decision points
71
+ - Failure/retry loops
72
+ - Emotional transitions (anxiety, confusion, relief)
73
+ - Setup/preparation before the process
74
+ - Post-process follow-up
75
+
76
+ If they give 5 steps for something that probably has 15: "You're hiding the detail where the pain lives. Zoom in."
77
+
78
+ ### Phase 3: Importance-Satisfaction Rating (Investigative to Blend -- turns 4-6)
79
+
80
+ Rate each step on both dimensions using a 1-10 scale.
81
+
82
+ - Rate one step at a time. Both dimensions: Importance (1-10) and Satisfaction (1-10).
83
+ - Gap Score = Importance + (10 - Satisfaction).
84
+ - The 3-3-3 Rule: identify at least 3 HIGH importance (8+), 3 LOW satisfaction (1-4), and 3 genuinely uncertain.
85
+
86
+ If all ratings are 5-7: "Those are 'I don't know' scores, not real ratings. Push harder. What really matters and what really doesn't work?"
87
+
88
+ ### Phase 4: Gap Analysis and Root Causes (Blend -- turns 6-8)
89
+
90
+ Focus on high-gap steps and trace to root causes.
91
+
92
+ - Use the "Five Whys" approach on each high-gap step.
93
+ - Root Cause Categories: Structural, Economic, Behavioral, Technical, Informational, Regulatory, Misaligned Incentives.
94
+ - "Why is satisfaction so low on this step? And then why is THAT the case?"
95
+
96
+ ### Phase 5: Barrier Identification (Blend to Insight -- turns 8-10)
97
+
98
+ Understand why each high-gap problem hasn't been solved yet.
99
+
100
+ - Three barrier types: Supply side (providers can't), Demand side (users won't), System side (structure prevents).
101
+ - Barrier Strength: Dissolving (already weakening), Movable (can be overcome), Structural (requires systemic change), Immovable (work around, not through).
102
+
103
+ "Understanding why a problem hasn't been solved is often more valuable than understanding the problem itself."
104
+
105
+ Most attractive opportunities: Large user gap + Dissolving/Movable barriers + unique capability to overcome.
106
+
107
+ ### Phase 6: Opportunity Synthesis (Insight -- turns 10+)
108
+
109
+ Map high-gap steps to actionable opportunities.
110
+
111
+ OPPORTUNITY = High-Gap Step + Root Cause Understanding + Dissolving/Movable Barrier
112
+
113
+ For each opportunity:
114
+ - What would "solved" look like?
115
+ - What approach could address the root cause?
116
+ - Who would pay / adopt?
117
+ - What's the competitive landscape?
118
+
119
+ End with: "The user doesn't care about your solution. They care about the step in their process that isn't working. Find that step, understand why it's broken, and you've found your opportunity."
120
+
121
+ ## Artifact Template
122
+
123
+ ```markdown
124
+ ---
125
+ methodology: user-needs
126
+ created: {date}
127
+ depth: {quick|deep}
128
+ problem_type: {type}
129
+ venture_stage: {stage}
130
+ room_section: market-analysis
131
+ ---
132
+
133
+ # User Needs Analysis -- {Process/Domain}
134
+
135
+ ## User Profile
136
+ - Who: {specific user, not abstract persona}
137
+ - Domain: {domain with insider knowledge}
138
+ - Process: {the process being mapped}
139
+ - Goal: {what the user is trying to accomplish}
140
+
141
+ ## Process Map (Tactical Level)
142
+
143
+ | # | Step | Description |
144
+ |---|------|-------------|
145
+ | 1 | {step name} | {what happens at this step} |
146
+
147
+ ## Importance-Satisfaction Matrix
148
+
149
+ | # | Step | Importance (1-10) | Satisfaction (1-10) | Gap Score | Quadrant |
150
+ |---|------|-------------------|---------------------|-----------|----------|
151
+ | 1 | {step} | {score} | {score} | {gap} | {Opportunity/Protect/Ignore/Over-served} |
152
+
153
+ ### Opportunity Zone (High Importance, Low Satisfaction)
154
+ {Steps that matter most but work worst}
155
+
156
+ ### Over-Served (Low Importance, High Satisfaction)
157
+ {Resources that could be reallocated}
158
+
159
+ ## Root Cause Analysis
160
+
161
+ | High-Gap Step | Root Cause | Category | Why Persists |
162
+ |--------------|-----------|----------|-------------|
163
+ | {step} | {cause} | {Structural/Economic/Behavioral/Technical/Informational/Regulatory/Misaligned} | {why unsolved} |
164
+
165
+ ## Barrier Analysis
166
+
167
+ | Opportunity | Barrier Type | Barrier Strength | Implication |
168
+ |------------|-------------|-----------------|-------------|
169
+ | {opportunity} | {Supply/Demand/System} | {Dissolving/Movable/Structural/Immovable} | {what this means for approach} |
170
+
171
+ ## Priority Opportunities
172
+
173
+ ### Opportunity 1: {Name}
174
+ - Gap Step: {which step}
175
+ - Root Cause: {underlying cause}
176
+ - Barrier: {type and strength}
177
+ - What "solved" looks like: {description}
178
+ - Approach: {how to address root cause}
179
+ - Who pays/adopts: {target}
180
+
181
+ ## Homework
182
+ Go observe three real users going through the process you just mapped. Don't ask them what they want -- watch what they do. Count the steps they skip, the workarounds they've invented, and the moments they pause. Your map will change. That's the point.
183
+ ```
184
+
185
+ ## Default Room
186
+
187
+ market-analysis
188
+
189
+ ## Cross-References
190
+
191
+ - **analyze-needs**: If JTBD framework would complement the process-level analysis
192
+ - **validate**: If the importance-satisfaction findings need rigorous evidence validation
193
+ - **lean-canvas**: If user needs insights are ready to flow into a business model
194
+ - **root-cause**: If root cause analysis needs deeper investigation
195
+
196
+ ## Quick Pass vs Deep Dive
197
+
198
+ - **Quick (10-15 min)**: Map 5-8 strategic-level steps, rate importance-satisfaction, identify top 2 gaps, basic root cause. Good when the user already knows the process well and wants a quick opportunity scan.
199
+ - **Deep (30-60 min)**: Full six-phase arc, 10-15 tactical-level steps, complete importance-satisfaction matrix, root cause analysis on all high-gap steps, barrier identification, opportunity prioritization. Best for systematic innovation research where the process needs thorough decomposition.