@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,285 @@
1
+ ---
2
+ name: scheduled-tasks
3
+ description: Define Cowork scheduled tasks for the room
4
+ body_shape: E (Action Report)
5
+ serves_jtbd: ["plan-execution"]
6
+ ui_reference: skills/ui-system/SKILL.md
7
+ surface: cowork
8
+ allowed-tools:
9
+ - Read
10
+ - Write
11
+ - Glob
12
+ - Bash
13
+ - WebSearch
14
+ - mcp__tavily__tavily-search
15
+ - mcp__mindrian-brain__brain_query
16
+ ---
17
+
18
+ # Cowork Scheduled Tasks
19
+
20
+ These are task definitions for Cowork's built-in scheduler. Each task runs autonomously at its configured interval, producing room artifacts in `room/intelligence/`.
21
+
22
+ Users configure these in Cowork's task management UI. Larry references these definitions to register and execute scheduled work.
23
+
24
+ ---
25
+
26
+ ## Task 1: Daily Briefing
27
+
28
+ **Schedule:** Every 24 hours (recommended: 6:00 AM user's timezone)
29
+ **Trigger:** `daily-briefing`
30
+ **Requirements:** SCHED-02
31
+
32
+ ### What It Does
33
+
34
+ Generates a daily intelligence briefing from room state:
35
+ - Approaching prediction deadlines (overdue, urgent, approaching)
36
+ - New contradictions detected in intelligence files
37
+ - Stale sections (7+ days without updates)
38
+ - Room health summary (section coverage, artifact counts)
39
+
40
+ ### Execution
41
+
42
+ ```javascript
43
+ const { writeBriefing } = require('lib/core/daily-briefing.cjs');
44
+ const result = writeBriefing(roomDir);
45
+ // result.outputPath = room/intelligence/briefing-YYYY-MM-DD.md
46
+ ```
47
+
48
+ ### Output
49
+
50
+ Filed to: `room/intelligence/briefing-YYYY-MM-DD.md`
51
+
52
+ Frontmatter includes: type, date, predictions_tracked, contradictions_found, stale_sections, generated timestamp.
53
+
54
+ ### Recovery
55
+
56
+ If missed (Cowork was offline), the session catch-up module detects the gap and generates the briefing on next session start.
57
+
58
+ ---
59
+
60
+ ## Task 2: Prediction Deadline Tracker
61
+
62
+ **Schedule:** Every 12 hours
63
+ **Trigger:** `prediction-tracker`
64
+ **Requirements:** SCHED-02
65
+
66
+ ### What It Does
67
+
68
+ Scans `.predictions/REGISTRY.json` for:
69
+ - OVERDUE predictions (deadline passed)
70
+ - URGENT predictions (due within 3 days)
71
+ - APPROACHING predictions (due within 14 days)
72
+
73
+ Alerts are included in the daily briefing. This task runs more frequently to catch deadline transitions between briefings.
74
+
75
+ ### Execution
76
+
77
+ ```javascript
78
+ const { getPredictionDeadlines } = require('lib/core/daily-briefing.cjs');
79
+ const deadlines = getPredictionDeadlines(roomDir);
80
+ const overdue = deadlines.filter(p => p.status === 'OVERDUE');
81
+ const urgent = deadlines.filter(p => p.status === 'URGENT');
82
+ ```
83
+
84
+ If overdue or urgent predictions exist, surface them via resource notification:
85
+ > "You have N overdue predictions and M predictions due within 3 days."
86
+
87
+ ### Output
88
+
89
+ No separate file -- results feed into the daily briefing. Notifications are surfaced to the user in the Cowork conversation.
90
+
91
+ ---
92
+
93
+ ## Task 3: Competitor Watch
94
+
95
+ **Schedule:** Weekly (recommended: Monday 8:00 AM)
96
+ **Trigger:** `competitor-watch`
97
+ **Requirements:** SCHED-03, SCHED-07
98
+
99
+ ### What It Does
100
+
101
+ 1. Extracts tracked competitors from `room/competitive-analysis/` and `.config.json`
102
+ 2. Builds search queries for each competitor (max 5)
103
+ 3. Executes web searches for recent competitor activity
104
+ 4. Checks findings against room assumptions for contradictions
105
+ 5. Files results to `room/intelligence/competitors-YYYY-MM-DD.md`
106
+
107
+ ### Execution
108
+
109
+ ```javascript
110
+ const { buildCompetitorQueries, fileCompetitorResults } = require('lib/core/scheduled-scanner.cjs');
111
+ const queryPlan = buildCompetitorQueries(roomDir);
112
+
113
+ if (queryPlan.insufficient) {
114
+ // No competitors tracked -- skip
115
+ return;
116
+ }
117
+
118
+ // For each query, use WebSearch or Tavily
119
+ for (const q of queryPlan.queries) {
120
+ // Execute: WebSearch(q.searchQuery)
121
+ // Collect findings and check for contradictions against room/competitive-analysis/
122
+ }
123
+
124
+ // File results
125
+ fileCompetitorResults(roomDir, results);
126
+ ```
127
+
128
+ ### Search Strategy
129
+
130
+ For each competitor:
131
+ - Query: `"[name]" funding OR launch OR pivot OR acquisition OR partnership`
132
+ - Time range: last 30 days
133
+ - Extract: key developments, funding rounds, product launches, pivots
134
+ - Flag: any finding that contradicts claims in room/competitive-analysis/
135
+
136
+ ### Output
137
+
138
+ Filed to: `room/intelligence/competitors-YYYY-MM-DD.md`
139
+
140
+ Frontmatter includes: type, date, competitors_scanned, contradictions_found, generated timestamp, source.
141
+
142
+ ---
143
+
144
+ ## Task 4: Grant & Funding Discovery
145
+
146
+ **Schedule:** Weekly (recommended: Wednesday 8:00 AM)
147
+ **Trigger:** `grant-discovery`
148
+ **Requirements:** SCHED-04, SCHED-07
149
+
150
+ ### What It Does
151
+
152
+ 1. Reads room context (domain keywords, geography, venture stage from STATE.md)
153
+ 2. Queries Grants.gov API and Simpler Grants API
154
+ 3. Scores results for relevance against room context
155
+ 4. Files top results to `room/intelligence/grants-YYYY-MM-DD.md`
156
+
157
+ ### Execution
158
+
159
+ ```javascript
160
+ const { scanAndFileGrants } = require('lib/core/scheduled-scanner.cjs');
161
+ const result = await scanAndFileGrants(roomDir);
162
+ // result.outputPath, result.resultCount, result.apiErrors
163
+ ```
164
+
165
+ ### Prerequisites
166
+
167
+ Room STATE.md should contain `domain_keywords` for accurate matching. Without keywords, the scanner falls back to problem-definition/ content.
168
+
169
+ ### Output
170
+
171
+ Filed to: `room/intelligence/grants-YYYY-MM-DD.md`
172
+
173
+ Frontmatter includes: type, date, results count, api_errors count, generated timestamp, source.
174
+
175
+ ---
176
+
177
+ ## Task 5: Domain News Scan
178
+
179
+ **Schedule:** Weekly (recommended: Friday 8:00 AM)
180
+ **Trigger:** `news-scan`
181
+ **Requirements:** SCHED-05, SCHED-07
182
+
183
+ ### What It Does
184
+
185
+ 1. Reads domain keywords from room STATE.md
186
+ 2. Builds news queries: domain developments, regulatory updates, market/investment
187
+ 3. Executes web searches
188
+ 4. Files results to `room/intelligence/news-YYYY-MM-DD.md`
189
+
190
+ ### Execution
191
+
192
+ ```javascript
193
+ const { buildNewsQueries, fileNewsResults } = require('lib/core/scheduled-scanner.cjs');
194
+ const queryPlan = buildNewsQueries(roomDir);
195
+
196
+ if (queryPlan.insufficient) {
197
+ // No domain keywords -- skip
198
+ return;
199
+ }
200
+
201
+ // For each query, use WebSearch or Tavily
202
+ // Collect results per topic
203
+
204
+ fileNewsResults(roomDir, results);
205
+ ```
206
+
207
+ ### Output
208
+
209
+ Filed to: `room/intelligence/news-YYYY-MM-DD.md`
210
+
211
+ Frontmatter includes: type, date, topics_scanned, items_found, generated timestamp, source.
212
+
213
+ ---
214
+
215
+ ## Task 6: Scout Sentinel
216
+
217
+ **Schedule:** Weekly (recommended: Sunday midnight)
218
+ **Trigger:** `scout-sentinel`
219
+ **Requirements:** SCHED-06
220
+
221
+ ### What It Does
222
+
223
+ Runs the full `/mos:scout` sentinel suite:
224
+ 1. State snapshot
225
+ 2. Health check (compare STATE.md vs last snapshot)
226
+ 3. Deadline monitor (funding/ and opportunity-bank/ deadlines)
227
+ 4. Competitor watch (if competitors tracked)
228
+ 5. HSI recomputation (if dependencies available)
229
+
230
+ ### Execution
231
+
232
+ This task invokes the scout command directly:
233
+
234
+ ```bash
235
+ PLUGIN_ROOT="$(dirname "$(readlink -f "$0")")/.."
236
+ bash "${PLUGIN_ROOT}/scripts/sentinel-snapshot" "$ROOM_DIR"
237
+ bash "${PLUGIN_ROOT}/scripts/sentinel-health-check" "$ROOM_DIR"
238
+ bash "${PLUGIN_ROOT}/scripts/sentinel-deadline-monitor" "$ROOM_DIR"
239
+ ```
240
+
241
+ For HSI recomputation (if scikit-learn is available):
242
+ ```bash
243
+ python3 "${PLUGIN_ROOT}/scripts/compute-hsi.py" "$ROOM_DIR"
244
+ python3 "${PLUGIN_ROOT}/scripts/detect-reverse-salients.py" "$ROOM_DIR"
245
+ node "${PLUGIN_ROOT}/scripts/hsi-to-graph.cjs" "$ROOM_DIR"
246
+ ```
247
+
248
+ ### Output
249
+
250
+ Multiple outputs:
251
+ - `room/.snapshots/STATE-YYYY-MM-DD.md`
252
+ - `room/.intelligence/health-YYYY-MM-DD.md` (if drift detected)
253
+ - HSI results updated in `room/.hsi-results.json`
254
+
255
+ ---
256
+
257
+ ## Tri-Polar Notes
258
+
259
+ **CLI:** These tasks don't run on CLI. Users invoke `/mos:scout` manually. Session-start hook handles catch-up scanning.
260
+
261
+ **Desktop:** These tasks don't run on Desktop (no scheduler). Desktop users get the session catch-up summary when reconnecting after a gap.
262
+
263
+ **Cowork:** Primary surface. Tasks register in Cowork's built-in scheduler. Users configure frequency in task management UI. Missed tasks are recovered by session catch-up on next connection.
264
+
265
+ ---
266
+
267
+ ## Configuration
268
+
269
+ Users can customize task schedules by setting preferences in `room/.config.json`:
270
+
271
+ ```json
272
+ {
273
+ "scheduled_tasks": {
274
+ "daily_briefing": { "enabled": true, "interval_hours": 24 },
275
+ "prediction_tracker": { "enabled": true, "interval_hours": 12 },
276
+ "competitor_watch": { "enabled": true, "interval_days": 7 },
277
+ "grant_discovery": { "enabled": true, "interval_days": 7 },
278
+ "news_scan": { "enabled": true, "interval_days": 7 },
279
+ "scout_sentinel": { "enabled": true, "interval_days": 7 }
280
+ },
281
+ "tracked_competitors": ["Competitor A", "Competitor B"]
282
+ }
283
+ ```
284
+
285
+ All tasks are enabled by default. Users can disable individual tasks or adjust frequency.
@@ -0,0 +1,43 @@
1
+ ---
2
+ name: score-innovation
3
+ description: Score cross-domain innovation via HSI
4
+ serves_jtbd: ["compare-options", "validate-idea"]
5
+ # --- Phase 122 workflow-layer frontmatter ---
6
+ kind: methodology
7
+ frameworks: ["HSI Semantic Surprise Analysis Assistant"]
8
+ produces: "room/opportunity-bank/hsi-scores/*"
9
+ inputs: []
10
+ autonomous_safe: true
11
+ allowed-tools:
12
+ - Read
13
+ - Write
14
+ - Bash
15
+ - Glob
16
+ ---
17
+
18
+ # /mos:score-innovation
19
+
20
+ You are Larry. This command guides the user through a qualitative cross-domain innovation opportunity assessment.
21
+
22
+ ## Setup
23
+
24
+ 1. Read `references/methodology/score-innovation.md` for the HSI framework, phases, and artifact template
25
+ 2. Read `references/personality/voice-dna.md` for Larry's voice
26
+ 3. Read `room/STATE.md` for venture context (if exists)
27
+ 4. Read all room sections to identify domains the user has explored
28
+
29
+ ## Session Flow
30
+
31
+ Ask: "Quick pass or deep dive?"
32
+
33
+ This is a CONVERSATIONAL assessment -- Larry guides the user through qualitative cross-domain opportunity scoring. No computation, no algorithms. Larry's judgment and Socratic questioning drive the assessment.
34
+
35
+ Follow the framework phases from the reference file. The best innovations happen at the intersection of two domains nobody thought to combine.
36
+
37
+ ## When Complete
38
+
39
+ Create the artifact using the template from the reference file.
40
+ Ask: "File this to problem-definition?" before writing.
41
+
42
+ If domain pairs reveal high-opportunity intersections, suggest:
43
+ "The [Domain A] x [Domain B] intersection looks promising. Want to run /mos:explore-domains to map it deeper?"
@@ -0,0 +1,239 @@
1
+ ---
2
+ name: scout
3
+ description: Run sentinel scans across the room
4
+ body_shape: E (Action Report)
5
+ serves_jtbd: ["explore", "understand-market"]
6
+ ui_reference: skills/ui-system/SKILL.md
7
+ allowed-tools:
8
+ - Read
9
+ - Write
10
+ - Glob
11
+ - Bash
12
+ - WebSearch
13
+ - mcp__tavily__tavily-search
14
+ - mcp__mindrian-brain__brain_query
15
+ - mcp__mindrian-brain__read_neo4j_cypher
16
+ ---
17
+
18
+ # /mos:scout
19
+
20
+ You are Larry. This command runs the full Sentinel Intelligence suite -- five automated tasks that monitor room health, track deadlines, watch competitors, recompute innovation scores, and snapshot state for future comparison.
21
+
22
+ **Modes:**
23
+ - `/mos:scout` -- run all 5 sentinel tasks + query efficiency telemetry summary
24
+ - `/mos:scout health` -- health check only (compare STATE.md vs last snapshot)
25
+ - `/mos:scout deadlines` -- deadline scan only (funding/ and opportunity-bank/)
26
+ - `/mos:scout competitors` -- competitor watch only (web search tracked competitors)
27
+ - `/mos:scout hsi` -- HSI recomputation only (compute-hsi + detect-reverse-salients + hsi-to-graph)
28
+ - `/mos:scout snapshot` -- state snapshot only (copy STATE.md to .snapshots/)
29
+ - `/mos:scout efficiency` -- query efficiency telemetry summary only (aggregate JSONL, render median + top 5 + threshold status)
30
+
31
+ ## UI Format
32
+
33
+ - **Body Shape:** E -- Action Report (status block, reasoning, then action)
34
+ - **Reference:** `skills/ui-system/SKILL.md`
35
+ - **Zone 1:** Header Panel -- room name + "Sentinel Intelligence"
36
+ - **Zone 2:** Content Body -- Task results with status indicators
37
+ - **Zone 3:** Intelligence Strip -- critical alerts (overdue deadlines, drift detected, contradictions)
38
+ - **Zone 4:** Action Footer -- suggest next commands based on findings
39
+
40
+ ## Step 0: Resolve Room
41
+
42
+ ```bash
43
+ SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
44
+ PLUGIN_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
45
+ ROOM_DIR=$(bash "${PLUGIN_ROOT}/scripts/resolve-room" "$PWD")
46
+ ```
47
+
48
+ If no room is found, tell the user:
49
+ > "No active room detected. Start a project with /mos:new-project first."
50
+
51
+ ## Step 1: State Snapshot (SENT-07)
52
+
53
+ Always run first -- this ensures a baseline exists for health checks.
54
+
55
+ ```bash
56
+ bash "${PLUGIN_ROOT}/scripts/sentinel-snapshot" "$ROOM_DIR"
57
+ ```
58
+
59
+ Report the result:
60
+ - If `SNAPSHOT_CREATED` -- note the date
61
+ - If snapshot was pruned -- mention cleanup
62
+
63
+ ## Step 2: Health Check (SENT-01)
64
+
65
+ Compare current STATE.md against the latest snapshot.
66
+
67
+ ```bash
68
+ bash "${PLUGIN_ROOT}/scripts/sentinel-health-check" "$ROOM_DIR"
69
+ ```
70
+
71
+ Report the result:
72
+ - `HEALTHY` -- room is stable, brief confirmation
73
+ - `DRIFT` -- highlight each drift point (stage change, entry count change, staleness)
74
+ - `BASELINE` -- first snapshot created, no comparison possible yet
75
+
76
+ ## Step 3: Deadline Monitor (SENT-02)
77
+
78
+ Scan funding/ and opportunity-bank/ for approaching deadlines.
79
+
80
+ ```bash
81
+ bash "${PLUGIN_ROOT}/scripts/sentinel-deadline-monitor" "$ROOM_DIR"
82
+ ```
83
+
84
+ Report the result:
85
+ - `CLEAR` -- no approaching deadlines
86
+ - `ALERT` -- list overdue items first (red), then urgent (yellow), then upcoming (cyan)
87
+ - Emphasize overdue items with strong language: "You have N deadlines that have PASSED."
88
+
89
+ ## Step 4: Competitor Watch (SENT-03)
90
+
91
+ This task requires web search capability. Search for each tracked competitor and flag contradictions with room assumptions.
92
+
93
+ ### 4a: Find Tracked Competitors
94
+
95
+ Look for competitors in these locations (in order):
96
+ 1. `room/competitive-analysis/*.md` -- extract company names from filenames and content
97
+ 2. `room/STATE.md` -- look for competitor mentions
98
+ 3. `room/.config.json` -- check for `tracked_competitors` array
99
+
100
+ If no competitors are tracked:
101
+ > "No competitors tracked yet. Run /mos:challenge-assumptions on your competitive-analysis section to identify competitors worth monitoring."
102
+
103
+ ### 4b: Web Search Each Competitor
104
+
105
+ For each tracked competitor (max 5):
106
+ 1. Search for recent news: `"[competitor name]" funding OR launch OR pivot OR acquisition` (last 30 days)
107
+ 2. Summarize key findings in 2-3 bullet points
108
+ 3. Flag any finding that CONTRADICTS an assumption in the room:
109
+ - Check `room/competitive-analysis/*.md` for existing claims about this competitor
110
+ - If web search reveals contradicting information, flag as: `CONTRADICTION:[competitor]:[claim]:[new finding]`
111
+
112
+ ### 4c: Write Competitor Report
113
+
114
+ Write findings to `room/.intelligence/competitors-YYYY-MM-DD.md`:
115
+
116
+ ```markdown
117
+ ---
118
+ type: competitor-watch
119
+ date: YYYY-MM-DD
120
+ competitors_scanned: N
121
+ contradictions_found: N
122
+ ---
123
+
124
+ # Competitor Watch - YYYY-MM-DD
125
+
126
+ ## [Competitor Name]
127
+
128
+ **Recent Activity:**
129
+ - [finding 1]
130
+ - [finding 2]
131
+
132
+ **Room Contradictions:** [none | list contradictions]
133
+
134
+ ...
135
+ ```
136
+
137
+ ## Step 5: HSI Recomputation (SENT-04)
138
+
139
+ Run the full HSI pipeline to update innovation connection scores and reverse salient detection.
140
+
141
+ ### 5a: Check Dependencies
142
+
143
+ ```bash
144
+ bash "${PLUGIN_ROOT}/scripts/check-hsi-deps" 2>/dev/null
145
+ ```
146
+
147
+ If sklearn is not available, skip with a note:
148
+ > "HSI computation requires scikit-learn. Install with: pip install scikit-learn. Skipping for now."
149
+
150
+ ### 5b: Run HSI Pipeline
151
+
152
+ If dependencies are available:
153
+
154
+ ```bash
155
+ # Step 1: Compute HSI scores
156
+ python3 "${PLUGIN_ROOT}/scripts/compute-hsi.py" "$ROOM_DIR" --output "$ROOM_DIR/.hsi-results.json"
157
+
158
+ # Step 2: Detect reverse salients (lagging subsystems)
159
+ python3 "${PLUGIN_ROOT}/scripts/detect-reverse-salients.py" "$ROOM_DIR"
160
+
161
+ # Step 3: Write HSI edges to room graph (if available)
162
+ node "${PLUGIN_ROOT}/scripts/hsi-to-graph.cjs" "$ROOM_DIR" 2>/dev/null || true
163
+ ```
164
+
165
+ Report:
166
+ - Number of HSI pairs scored
167
+ - Top 3 highest-scoring connections
168
+ - Any new reverse salients detected
169
+ - Whether room graph was updated
170
+
171
+ ## Step 5b: Query Efficiency Telemetry (SENT-08)
172
+
173
+ Aggregate the query-efficiency JSONL produced by the 88.1-16 PostToolUse hook at `~/.mindrian/telemetry/query-efficiency.jsonl`. This summary surfaces whether the 57x token-efficiency claim (Canon Part 6) is holding up in real usage. Release gate (Plan 88.1-11) consumes the threshold status before tagging.
174
+
175
+ ```bash
176
+ node "${PLUGIN_ROOT}/scripts/scout-telemetry-aggregator.cjs"
177
+ ```
178
+
179
+ Options the user can pass through as `/mos:scout efficiency --days=30` or similar:
180
+ - `--days=N` -- window size in days (default 7)
181
+ - `--all` -- no window filter (all-time aggregation)
182
+ - `--json` -- machine-readable JSON output (release gate uses this)
183
+
184
+ Report the result verbatim. The aggregator emits:
185
+ - event count in the window
186
+ - median ratio + mean ratio
187
+ - top 5 commands by ratio (per-command max)
188
+ - threshold status: `PASS` (median >= 40x) | `RETUNE` (median < 40x) | `NO_DATA` (empty window)
189
+
190
+ If the JSONL file does not exist yet, the aggregator prints "no events in window yet. Run a /mos:* query first." -- this is normal for fresh installs and is not an error.
191
+
192
+ Expose the threshold status prominently in the final Sentinel summary (Step 6).
193
+
194
+ ## Step 6: Generate Summary
195
+
196
+ After all tasks complete, present a unified summary using the E body shape:
197
+
198
+ ```
199
+ ┌─────────────────────────────────────────────────────┐
200
+ │ SENTINEL INTELLIGENCE │
201
+ │ Room: [room-name] [venture-stage] │
202
+ └─────────────────────────────────────────────────────┘
203
+
204
+ ■ Health: [HEALTHY | DRIFT DETECTED]
205
+ ■ Deadlines: [N overdue, N urgent, N upcoming | CLEAR]
206
+ ■ Competitors: [N scanned, N contradictions | NOT TRACKED]
207
+ ■ HSI: [N pairs scored, N reverse salients | SKIPPED]
208
+ ■ Snapshot: [STATE-YYYY-MM-DD.md created]
209
+ ■ Efficiency: [median R.RRx over N events, PASS | RETUNE | NO_DATA]
210
+
211
+ [If any critical findings, show Intelligence Strip here]
212
+
213
+ ──────────────────────────────────────────────
214
+ Next steps:
215
+ ▷ /mos:scout health Re-run health check only
216
+ ▷ /mos:scout efficiency Query efficiency telemetry summary only
217
+ ▷ /mos:challenge-assumptions Address contradictions found
218
+ ▷ /mos:funding Review approaching deadlines
219
+ ▷ /mos:score-innovation Deep-dive into HSI connections
220
+ ```
221
+
222
+ ## Tri-Polar Notes
223
+
224
+ **CLI:** Full automation. All scripts run, reports written to `.intelligence/`. Power users can run individual tasks via flags.
225
+
226
+ **Desktop:** Larry narrates findings conversationally. "Here's the thing -- your room hasn't changed in 2 weeks, and you have a grant deadline in 3 days. Let's prioritize."
227
+
228
+ **Cowork:** Reports in `.intelligence/` are visible to all team members via `00_Context/`. Competitor watch findings can be discussed collaboratively.
229
+
230
+ ## Cron Integration (DEFERRED)
231
+
232
+ When CronCreate tool becomes available, sentinel tasks can be scheduled:
233
+ - `sentinel-snapshot` + `sentinel-health-check`: Weekly (Sunday midnight)
234
+ - `sentinel-deadline-monitor`: Daily (6 AM)
235
+ - Competitor watch: Weekly (Monday morning)
236
+ - HSI recomputation: Weekly (after health check)
237
+
238
+ Until then, `/mos:scout` is the manual trigger for all sentinel intelligence. Remind users to run it weekly:
239
+ > "I'd suggest running /mos:scout every Monday. Think of it as your weekly venture check-up."