@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.
- package/.claude-plugin/plugin.json +21 -0
- package/.mcp.json +9 -0
- package/CHANGELOG.md +3333 -0
- package/LICENSE +123 -0
- package/README.md +673 -0
- package/agents/brain-query.md +80 -0
- package/agents/framework-runner.md +237 -0
- package/agents/grading.md +188 -0
- package/agents/investor.md +128 -0
- package/agents/larry-extended.md +135 -0
- package/agents/opportunity-scanner.md +91 -0
- package/agents/persona-analyst.md +132 -0
- package/agents/research.md +89 -0
- package/agents/reverse-salient-agent.md +27 -0
- package/bin/cli.js +142 -0
- package/bin/mindrian-mcp-server.cjs +182 -0
- package/bin/mindrian-tools.cjs +765 -0
- package/commands/act.md +439 -0
- package/commands/admin.md +404 -0
- package/commands/analyze-needs.md +42 -0
- package/commands/analyze-systems.md +39 -0
- package/commands/analyze-timing.md +42 -0
- package/commands/auto-explore.md +64 -0
- package/commands/beautiful-question.md +40 -0
- package/commands/brain-derive.md +78 -0
- package/commands/build-knowledge.md +42 -0
- package/commands/build-thesis.md +46 -0
- package/commands/causal.md +234 -0
- package/commands/challenge-assumptions.md +33 -0
- package/commands/compare-ventures.md +83 -0
- package/commands/dashboard.md +110 -0
- package/commands/deep-grade.md +82 -0
- package/commands/diagnose.md +58 -0
- package/commands/diagnostics.md +151 -0
- package/commands/doctor.md +151 -0
- package/commands/dominant-designs.md +40 -0
- package/commands/explain-decision.md +87 -0
- package/commands/explore-domains.md +42 -0
- package/commands/explore-futures.md +40 -0
- package/commands/explore-trends.md +42 -0
- package/commands/export.md +103 -0
- package/commands/file-meeting.md +724 -0
- package/commands/find-analogies.md +188 -0
- package/commands/find-bottlenecks.md +62 -0
- package/commands/find-connections.md +76 -0
- package/commands/funding.md +81 -0
- package/commands/grade.md +203 -0
- package/commands/graph.md +128 -0
- package/commands/hat-briefing.md +125 -0
- package/commands/heal.md +196 -0
- package/commands/help.md +399 -0
- package/commands/hmi-status.md +172 -0
- package/commands/jtbd.md +241 -0
- package/commands/leadership.md +73 -0
- package/commands/lean-canvas.md +40 -0
- package/commands/macro-trends.md +40 -0
- package/commands/map-unknowns.md +40 -0
- package/commands/memory.md +173 -0
- package/commands/models.md +175 -0
- package/commands/mos-reason.md +285 -0
- package/commands/mullins.md +120 -0
- package/commands/new-project.md +481 -0
- package/commands/onboard.md +434 -0
- package/commands/operator.md +149 -0
- package/commands/opportunities.md +144 -0
- package/commands/organize.md +497 -0
- package/commands/persona.md +198 -0
- package/commands/pipeline.md +112 -0
- package/commands/present.md +91 -0
- package/commands/publish.md +201 -0
- package/commands/query.md +124 -0
- package/commands/radar.md +72 -0
- package/commands/reanalyze.md +91 -0
- package/commands/research.md +196 -0
- package/commands/room.md +352 -0
- package/commands/rooms.md +598 -0
- package/commands/root-cause.md +40 -0
- package/commands/rs-experts.md +85 -0
- package/commands/rs-explain.md +100 -0
- package/commands/rs-fetch.md +94 -0
- package/commands/rs-thesis.md +85 -0
- package/commands/scenario-plan.md +40 -0
- package/commands/scheduled-tasks.md +285 -0
- package/commands/score-innovation.md +43 -0
- package/commands/scout.md +239 -0
- package/commands/setup.md +618 -0
- package/commands/snapshot.md +147 -0
- package/commands/speakers.md +84 -0
- package/commands/splash.md +28 -0
- package/commands/status.md +75 -0
- package/commands/structure-argument.md +42 -0
- package/commands/suggest-next.md +80 -0
- package/commands/systems-thinking.md +40 -0
- package/commands/think-hats.md +42 -0
- package/commands/update.md +181 -0
- package/commands/user-needs.md +40 -0
- package/commands/validate.md +40 -0
- package/commands/value-proposition.md +61 -0
- package/commands/vault.md +180 -0
- package/commands/visualize.md +52 -0
- package/commands/whitespace.md +507 -0
- package/commands/wiki.md +69 -0
- package/hooks/hooks.json +381 -0
- package/hooks/run-hook.cmd +64 -0
- package/lib/__init__.py +0 -0
- package/lib/__pycache__/__init__.cpython-312.pyc +0 -0
- package/lib/agents/auto-explore-agent.cjs +1043 -0
- package/lib/agents/reverse-salient-agent.cjs +679 -0
- package/lib/agents/tension-hook-agent.cjs +544 -0
- package/lib/brain/ROOM.md +44 -0
- package/lib/brain/chain-recommender.cjs +301 -0
- package/lib/chat/chat-context.js +185 -0
- package/lib/chat/chat-panel.js +721 -0
- package/lib/chat/fabric-chat.cjs +288 -0
- package/lib/chat/generative-tools.js +219 -0
- package/lib/conversation/ROOM.md +39 -0
- package/lib/conversation/classifier-rules.json +38 -0
- package/lib/conversation/classifier.cjs +264 -0
- package/lib/conversation/operator.cjs +287 -0
- package/lib/copy/115-spec-strings.cjs +55 -0
- package/lib/core/__init__.py +0 -0
- package/lib/core/__nav-stub.cjs +14 -0
- package/lib/core/__pycache__/__init__.cpython-312.pyc +0 -0
- package/lib/core/__pycache__/rs-math.cpython-312.pyc +0 -0
- package/lib/core/__pycache__/rs_cache.cpython-312.pyc +0 -0
- package/lib/core/__pycache__/rs_corpus.cpython-312.pyc +0 -0
- package/lib/core/__pycache__/rs_hybrid.cpython-312.pyc +0 -0
- package/lib/core/__pycache__/rs_math.cpython-312.pyc +0 -0
- package/lib/core/__pycache__/rs_rooms.cpython-312.pyc +0 -0
- package/lib/core/artifact-id.cjs +148 -0
- package/lib/core/asset-ops.cjs +151 -0
- package/lib/core/auto-commit-throttle.cjs +129 -0
- package/lib/core/bearer-token.cjs +199 -0
- package/lib/core/brain-client.cjs +865 -0
- package/lib/core/brain-derivation-prompts.cjs +326 -0
- package/lib/core/brain-derivation-queue.cjs +431 -0
- package/lib/core/brain-derivation.cjs +580 -0
- package/lib/core/brain-md-schema.cjs +528 -0
- package/lib/core/brain-md-staleness.cjs +357 -0
- package/lib/core/brain-response-sanitize.cjs +188 -0
- package/lib/core/bridge-writer.cjs +477 -0
- package/lib/core/chat-context-builder.cjs +253 -0
- package/lib/core/cross-room-aggregator.cjs +762 -0
- package/lib/core/daily-briefing.cjs +438 -0
- package/lib/core/decision-capture.cjs +618 -0
- package/lib/core/deep-links.cjs +82 -0
- package/lib/core/dispatch-optimizer.cjs +354 -0
- package/lib/core/dual-path-detector.cjs +84 -0
- package/lib/core/dual-path-detector.test.cjs +334 -0
- package/lib/core/exports-log.cjs +79 -0
- package/lib/core/feynman-minto-invariants.cjs +605 -0
- package/lib/core/folder-memory-async.cjs +338 -0
- package/lib/core/folder-memory-shared.cjs +890 -0
- package/lib/core/folder-memory.cjs +416 -0
- package/lib/core/framework-chain-composer.cjs +411 -0
- package/lib/core/frontmatter-schemas.cjs +330 -0
- package/lib/core/git-ops.cjs +141 -0
- package/lib/core/graph-ops.cjs +258 -0
- package/lib/core/hat-persistence.cjs +362 -0
- package/lib/core/index.cjs +60 -0
- package/lib/core/integration-registry.cjs +232 -0
- package/lib/core/intelligence-cascade.cjs +661 -0
- package/lib/core/lazygraph-ops.cjs +1057 -0
- package/lib/core/lru-cache.cjs +139 -0
- package/lib/core/mcp-profiles.cjs +182 -0
- package/lib/core/meeting-ops.cjs +54 -0
- package/lib/core/memory-ops.cjs +600 -0
- package/lib/core/migrations/ROOM.md +33 -0
- package/lib/core/migrations/phase-109-nodes-provenance.cjs +339 -0
- package/lib/core/migrations/phase-109-session-focus.cjs +99 -0
- package/lib/core/model-profiles.cjs +246 -0
- package/lib/core/mullins-scaffold.cjs +160 -0
- package/lib/core/nav-dial.cjs +316 -0
- package/lib/core/navigation/ROOM.md +15 -0
- package/lib/core/navigation/explanation.cjs +43 -0
- package/lib/core/navigation/focus.cjs +135 -0
- package/lib/core/navigation/ingestion.cjs +82 -0
- package/lib/core/navigation/insights.cjs +350 -0
- package/lib/core/navigation/memory-events.cjs +118 -0
- package/lib/core/navigation/neighborhood.cjs +78 -0
- package/lib/core/navigation/packet.cjs +182 -0
- package/lib/core/navigation/room-home.cjs +127 -0
- package/lib/core/navigation/transitions.cjs +82 -0
- package/lib/core/navigation-engine-shared.cjs +242 -0
- package/lib/core/navigation-engine.cjs +664 -0
- package/lib/core/navigation.cjs +60 -0
- package/lib/core/nl-graph-queries.cjs +164 -0
- package/lib/core/offer-presenter.cjs +406 -0
- package/lib/core/opportunity-extractor.cjs +183 -0
- package/lib/core/opportunity-ops.cjs +1371 -0
- package/lib/core/persona-ops.cjs +537 -0
- package/lib/core/persona-taxonomy.cjs +190 -0
- package/lib/core/platform-gates.cjs +120 -0
- package/lib/core/platform.cjs +257 -0
- package/lib/core/proactive-intelligence.cjs +528 -0
- package/lib/core/problem-type-router.cjs +315 -0
- package/lib/core/reasoning-ops.cjs +639 -0
- package/lib/core/reverse-salient-persona-suffix.cjs +115 -0
- package/lib/core/room-classifier-strict-mode.cjs +229 -0
- package/lib/core/room-db.cjs +127 -0
- package/lib/core/room-ops-async.cjs +92 -0
- package/lib/core/room-ops-shared.cjs +64 -0
- package/lib/core/room-ops-sync.cjs +70 -0
- package/lib/core/room-ops.cjs +32 -0
- package/lib/core/room-type-detector.cjs +386 -0
- package/lib/core/rs-brain-substrate-prompts.cjs +129 -0
- package/lib/core/rs-brain-substrate.cjs +570 -0
- package/lib/core/rs-breakthrough-scorer.cjs +255 -0
- package/lib/core/rs-canon-violations.cjs +82 -0
- package/lib/core/rs-chain-feeder.cjs +343 -0
- package/lib/core/rs-commercial-assessor.cjs +280 -0
- package/lib/core/rs-differential-scorer.cjs +376 -0
- package/lib/core/rs-domain-analyzer.cjs +385 -0
- package/lib/core/rs-egress-prompts.cjs +113 -0
- package/lib/core/rs-egress-telemetry.cjs +225 -0
- package/lib/core/rs-egress-violations.cjs +53 -0
- package/lib/core/rs-expert-mapper.cjs +467 -0
- package/lib/core/rs-fetcher-academic.cjs +697 -0
- package/lib/core/rs-fetcher-experts.cjs +314 -0
- package/lib/core/rs-fetcher-industry.cjs +731 -0
- package/lib/core/rs-fetcher-patents.cjs +564 -0
- package/lib/core/rs-innovation-classifier.cjs +194 -0
- package/lib/core/rs-mind-map.cjs +656 -0
- package/lib/core/rs-neo4j-writer.cjs +388 -0
- package/lib/core/rs-nl-to-query.cjs +425 -0
- package/lib/core/rs-pinecone-bridge.cjs +303 -0
- package/lib/core/rs-preprocessor.cjs +350 -0
- package/lib/core/rs-query-matrix.cjs +316 -0
- package/lib/core/rs-query-to-text.cjs +438 -0
- package/lib/core/rs-sqlite-mirror.cjs +443 -0
- package/lib/core/rs-thesis-generator.cjs +188 -0
- package/lib/core/rs_cache.py +479 -0
- package/lib/core/rs_corpus.py +468 -0
- package/lib/core/rs_hybrid.py +586 -0
- package/lib/core/rs_math.py +287 -0
- package/lib/core/rs_rooms.py +193 -0
- package/lib/core/scheduled-scanner.cjs +463 -0
- package/lib/core/scratchpad-ops.cjs +201 -0
- package/lib/core/section-8-trace-schema.cjs +138 -0
- package/lib/core/section-registry.cjs +111 -0
- package/lib/core/session-state.cjs +144 -0
- package/lib/core/shallow-doc-parser.cjs +174 -0
- package/lib/core/shallow-doc-parser.test.cjs +226 -0
- package/lib/core/skill-activation-router.cjs +284 -0
- package/lib/core/state-ops.cjs +46 -0
- package/lib/core/statusline-cache.cjs +266 -0
- package/lib/core/token-estimator.cjs +348 -0
- package/lib/core/user-archetype.cjs +239 -0
- package/lib/core/user-md-ops.cjs +524 -0
- package/lib/core/visual-ops.cjs +624 -0
- package/lib/core/write-lock.cjs +149 -0
- package/lib/graph/canvas-graph.js +467 -0
- package/lib/graph/constellation-config.cjs +299 -0
- package/lib/graph/graph-detail-panel.js +165 -0
- package/lib/hmi/ROOM.md +47 -0
- package/lib/hmi/across-session-memory.cjs +604 -0
- package/lib/hmi/cross-room-memory.cjs +575 -0
- package/lib/hmi/decoy-tier.cjs +395 -0
- package/lib/hmi/jtbd-classifier.cjs +219 -0
- package/lib/hmi/jtbd-state.cjs +199 -0
- package/lib/hmi/jtbd-taxonomy.json +392 -0
- package/lib/hmi/selector-dispatcher.cjs +546 -0
- package/lib/hmi/selector-telemetry.cjs +263 -0
- package/lib/hmi/shape-f0-renderer.cjs +139 -0
- package/lib/hmi/shape-f1-fallback.cjs +80 -0
- package/lib/hmi/shape-f1-renderer.cjs +138 -0
- package/lib/hmi/shape-f2-renderer.cjs +132 -0
- package/lib/hmi/shape-f3-renderer.cjs +66 -0
- package/lib/hmi/shape-f4-renderer.cjs +72 -0
- package/lib/hmi/shape-f5-renderer.cjs +155 -0
- package/lib/hmi/shape-f6-plan-review-renderer.cjs +312 -0
- package/lib/hmi/shape-f6-renderer.cjs +144 -0
- package/lib/hmi/shape-g-renderer.cjs +219 -0
- package/lib/hmi/shape-h-renderer.cjs +222 -0
- package/lib/hmi/tier-check.cjs +63 -0
- package/lib/import/PRECONDITIONS.md +41 -0
- package/lib/import/branding.cjs +210 -0
- package/lib/import/branding.test.cjs +235 -0
- package/lib/import/classifications-sync.cjs +104 -0
- package/lib/import/classifications-sync.test.cjs +129 -0
- package/lib/import/enricher.cjs +296 -0
- package/lib/import/enricher.test.cjs +273 -0
- package/lib/import/integration.test.cjs +376 -0
- package/lib/import/manifest.cjs +129 -0
- package/lib/import/manifest.schema.json +185 -0
- package/lib/import/manifest.test.cjs +123 -0
- package/lib/import/meeting-detector.cjs +92 -0
- package/lib/import/meeting-detector.test.cjs +100 -0
- package/lib/import/person-detector.cjs +229 -0
- package/lib/import/person-detector.test.cjs +149 -0
- package/lib/import/report.cjs +186 -0
- package/lib/import/report.test.cjs +186 -0
- package/lib/import/room-md-scaffolder.cjs +49 -0
- package/lib/import/router.cjs +224 -0
- package/lib/import/router.test.cjs +356 -0
- package/lib/import/run-all-tests.cjs +36 -0
- package/lib/import/smoke-test.cjs +213 -0
- package/lib/import/smoke-test.test.cjs +148 -0
- package/lib/import/test-fixtures/collision-vault/preexisting-room/STATE.md +8 -0
- package/lib/import/test-fixtures/collision-vault/preexisting-room/problem-definition/onboarding/onboarding.md +7 -0
- package/lib/import/test-fixtures/collision-vault/source/onboarding.md +5 -0
- package/lib/import/test-fixtures/obsidian-vault/.obsidian/workspace.json +1 -0
- package/lib/import/test-fixtures/obsidian-vault/notes/with-wikilinks.md +4 -0
- package/lib/import/test-fixtures/tiny-vault/notes/2026-01-15-team-sync.md +9 -0
- package/lib/import/test-fixtures/tiny-vault/notes/empty.md +3 -0
- package/lib/import/test-fixtures/tiny-vault/notes/onboarding.md +5 -0
- package/lib/import/test-fixtures/tiny-vault/notes/pricing.md +5 -0
- package/lib/import/test-fixtures/tiny-vault/notes/random.md +4 -0
- package/lib/import/undo.test.cjs +199 -0
- package/lib/import/vault-scanner.cjs +105 -0
- package/lib/import/vault-scanner.test.cjs +67 -0
- package/lib/mcp/app-html/dashboard.html +316 -0
- package/lib/mcp/app-html/graph.html +428 -0
- package/lib/mcp/app-html/mindrian-platform.html +1841 -0
- package/lib/mcp/app-html/wiki.html +383 -0
- package/lib/mcp/app-views.cjs +322 -0
- package/lib/mcp/brain-router.cjs +418 -0
- package/lib/mcp/capability-registry.cjs +62 -0
- package/lib/mcp/larry-context.cjs +46 -0
- package/lib/mcp/larry-server-instructions.md +114 -0
- package/lib/mcp/pipeline-state.cjs +275 -0
- package/lib/mcp/prompts.cjs +302 -0
- package/lib/mcp/resources.cjs +227 -0
- package/lib/mcp/session-catchup.cjs +327 -0
- package/lib/mcp/surface-detect.cjs +75 -0
- package/lib/mcp/tool-router.cjs +1034 -0
- package/lib/memory/aaak-compress.cjs +403 -0
- package/lib/memory/aaak-compress.test.cjs +288 -0
- package/lib/memory/async-artifact-auto-commit.test.cjs +223 -0
- package/lib/memory/bearer-token.test.cjs +315 -0
- package/lib/memory/brain-cache-lru.test.cjs +259 -0
- package/lib/memory/brain-client-query-shape.test.cjs +160 -0
- package/lib/memory/brain-derivation-graceful-degradation.test.cjs +1019 -0
- package/lib/memory/brain-derivation-queue.test.cjs +539 -0
- package/lib/memory/brain-derivation.test.cjs +634 -0
- package/lib/memory/brain-derive-command.test.cjs +534 -0
- package/lib/memory/brain-md-invariants-validator.test.cjs +704 -0
- package/lib/memory/brain-md-schema.test.cjs +467 -0
- package/lib/memory/brain-md-staleness.test.cjs +525 -0
- package/lib/memory/brain-server-resolution.test.cjs +314 -0
- package/lib/memory/chain-recommender.test.cjs +233 -0
- package/lib/memory/chat-context.test.cjs +128 -0
- package/lib/memory/command-registry.test.cjs +220 -0
- package/lib/memory/cross-room-aggregator.test.cjs +909 -0
- package/lib/memory/dashboard-server.test.cjs +256 -0
- package/lib/memory/debouncer-drain-at-prompt.test.cjs +389 -0
- package/lib/memory/decision-capture.test.cjs +632 -0
- package/lib/memory/decision-capture.worker.cjs +70 -0
- package/lib/memory/explain-decision-command.test.cjs +521 -0
- package/lib/memory/explain-decision-footer.test.cjs +316 -0
- package/lib/memory/explored-materials-store.cjs +392 -0
- package/lib/memory/feynman-minto-guardian.test.cjs +736 -0
- package/lib/memory/feynman-minto-invariants.test.cjs +511 -0
- package/lib/memory/feynman-prompts-drift.test.cjs +144 -0
- package/lib/memory/feynman-prompts.cjs +151 -0
- package/lib/memory/feynman-prompts.test.cjs +96 -0
- package/lib/memory/folder-memory-quadruple.test.cjs +548 -0
- package/lib/memory/folder-memory.test.cjs +503 -0
- package/lib/memory/framework-chain-composer.test.cjs +515 -0
- package/lib/memory/frontmatter-schema-validator.test.cjs +290 -0
- package/lib/memory/heal-command.test.cjs +604 -0
- package/lib/memory/index-artifact-transaction.test.cjs +333 -0
- package/lib/memory/lazygraph-rs-discoveries-view.test.cjs +122 -0
- package/lib/memory/mcp-input-validation.test.cjs +240 -0
- package/lib/memory/mcp-server-brain-deps.test.cjs +270 -0
- package/lib/memory/mcp-stack-fallback.test.cjs +433 -0
- package/lib/memory/minto-debouncer.test.cjs +407 -0
- package/lib/memory/minto-debouncer.worker.cjs +46 -0
- package/lib/memory/minto-migration-v88.test.cjs +265 -0
- package/lib/memory/minto-schema-v88.test.cjs +390 -0
- package/lib/memory/mos-status-renderer.test.cjs +631 -0
- package/lib/memory/narrative-schema.cjs +376 -0
- package/lib/memory/narrative-schema.test.cjs +209 -0
- package/lib/memory/nav-dial.test.cjs +414 -0
- package/lib/memory/navigation-engine-core.test.cjs +722 -0
- package/lib/memory/navigation-invariants.test.cjs +483 -0
- package/lib/memory/offer-presenter.test.cjs +554 -0
- package/lib/memory/on-stop-snapshot.test.cjs +404 -0
- package/lib/memory/pending-tension-store.cjs +373 -0
- package/lib/memory/post-compact-reinjection.test.cjs +854 -0
- package/lib/memory/post-write-triple.test.cjs +317 -0
- package/lib/memory/pre-compact-snapshot.test.cjs +495 -0
- package/lib/memory/problem-type-router.test.cjs +656 -0
- package/lib/memory/query-efficiency-telemetry.test.cjs +370 -0
- package/lib/memory/recompile-room-references.test.cjs +392 -0
- package/lib/memory/recompile-room-references.worker.cjs +42 -0
- package/lib/memory/record-decision-dual-write.test.cjs +454 -0
- package/lib/memory/room-classifier-strict-mode.test.cjs +417 -0
- package/lib/memory/room-minto-hook.test.cjs +398 -0
- package/lib/memory/rs-discovery-engine.test.cjs +323 -0
- package/lib/memory/run-feynman-tests.cjs +1247 -0
- package/lib/memory/security-trifecta.test.cjs +312 -0
- package/lib/memory/session-start-brain-staleness.test.cjs +363 -0
- package/lib/memory/session-start-triple-injection.test.cjs +514 -0
- package/lib/memory/sessionstart-banner-formatter.cjs +318 -0
- package/lib/memory/sessionstart-minto-banner.test.cjs +373 -0
- package/lib/memory/skill-activation-router.test.cjs +419 -0
- package/lib/memory/stamp-artifact-write.test.cjs +304 -0
- package/lib/memory/statusline-active-room.test.cjs +315 -0
- package/lib/memory/statusline-minto-segment.test.cjs +292 -0
- package/lib/memory/sync-async-entry-points.test.cjs +204 -0
- package/lib/memory/test-bridge-writer-enhanced.cjs +452 -0
- package/lib/memory/test-rs-brain-substrate-shape.cjs +529 -0
- package/lib/memory/test-rs-brain-substrate.cjs +636 -0
- package/lib/memory/test-rs-breakthrough-scorer.cjs +375 -0
- package/lib/memory/test-rs-canon-violations.cjs +218 -0
- package/lib/memory/test-rs-chain-feeder-core.cjs +344 -0
- package/lib/memory/test-rs-chain-feeder-skill-spawn.cjs +297 -0
- package/lib/memory/test-rs-commercial-assessor.cjs +385 -0
- package/lib/memory/test-rs-differential-scorer.cjs +480 -0
- package/lib/memory/test-rs-discovery-engine.cjs +603 -0
- package/lib/memory/test-rs-domain-analyzer.cjs +492 -0
- package/lib/memory/test-rs-egress-primitives.cjs +420 -0
- package/lib/memory/test-rs-expert-mapper.cjs +547 -0
- package/lib/memory/test-rs-explain-command.cjs +443 -0
- package/lib/memory/test-rs-fetcher-academic.cjs +848 -0
- package/lib/memory/test-rs-fetcher-experts.cjs +496 -0
- package/lib/memory/test-rs-fetcher-industry.cjs +702 -0
- package/lib/memory/test-rs-fetcher-patents.cjs +674 -0
- package/lib/memory/test-rs-innovation-classifier.cjs +301 -0
- package/lib/memory/test-rs-mind-map.cjs +646 -0
- package/lib/memory/test-rs-neo4j-writer.cjs +518 -0
- package/lib/memory/test-rs-nl-to-query.cjs +449 -0
- package/lib/memory/test-rs-pinecone-bridge.cjs +277 -0
- package/lib/memory/test-rs-preprocessor.cjs +433 -0
- package/lib/memory/test-rs-query-matrix.cjs +391 -0
- package/lib/memory/test-rs-query-to-text.cjs +551 -0
- package/lib/memory/test-rs-sqlite-mirror.cjs +649 -0
- package/lib/memory/test-rs-thesis-generator.cjs +360 -0
- package/lib/memory/triple-context-formatter.cjs +473 -0
- package/lib/memory/triple-context-formatter.test.cjs +442 -0
- package/lib/memory/user-md-persona.test.cjs +565 -0
- package/lib/memory/userpromptsubmit-integration.test.cjs +690 -0
- package/lib/memory/validators/README.md +157 -0
- package/lib/memory/validators/brain-md-invariants.cjs +475 -0
- package/lib/memory/validators/brain-substrate-invariants.cjs +285 -0
- package/lib/memory/validators/external-academic-invariants.cjs +249 -0
- package/lib/memory/validators/external-industry-invariants.cjs +271 -0
- package/lib/memory/validators/external-patents-invariants.cjs +266 -0
- package/lib/memory/validators/minto-invariants.cjs +62 -0
- package/lib/memory/validators/navigation-invariants.cjs +340 -0
- package/lib/memory/validators/queue-health.cjs +95 -0
- package/lib/memory/validators/snapshot-integrity.cjs +129 -0
- package/lib/memory/validators/stale-lifecycle.cjs +116 -0
- package/lib/memory/vault-section-minto-generator-atomic.test.cjs +556 -0
- package/lib/memory/vault-section-minto-generator-atomic.worker.cjs +73 -0
- package/lib/memory/write-lock-atomic.test.cjs +137 -0
- package/lib/memory/write-lock-atomic.worker.cjs +55 -0
- package/lib/parity/check-parity.cjs +83 -0
- package/lib/presentation/presentation-server.cjs +101 -0
- package/lib/presentation/presentation-watcher.cjs +123 -0
- package/lib/quickview/hub-server.cjs +719 -0
- package/lib/quickview/server.cjs +533 -0
- package/lib/render/JTBD-PALETTES.md +145 -0
- package/lib/render/ROOM.md +59 -0
- package/lib/render/render-v2.cjs +486 -0
- package/lib/render/render-v2.test.cjs +267 -0
- package/lib/render/render.cjs +65 -0
- package/lib/state/ROOM.md +46 -0
- package/lib/state/state-md-parser.cjs +215 -0
- package/lib/statusline/ROOM.md +38 -0
- package/lib/statusline/banner-suppression.cjs +50 -0
- package/lib/statusline/surface-detect.cjs +85 -0
- package/lib/update-bootstrap.sh.template +145 -0
- package/lib/vault/frontmatter-schema.cjs +297 -0
- package/lib/vault/room-scanner.cjs +352 -0
- package/lib/vault/wikilink-builder.cjs +231 -0
- package/lib/vault/wikilink-builder.test.cjs +182 -0
- package/lib/wiki/graph-links.cjs +281 -0
- package/lib/wiki/page-renderer.cjs +229 -0
- package/lib/wiki/wiki-chat.cjs +81 -0
- package/lib/wiki/wiki-layout.cjs +1459 -0
- package/lib/wiki/wiki-search.cjs +142 -0
- package/lib/wiki/wiki-server.cjs +678 -0
- package/lib/wiki/wiki-watcher.cjs +105 -0
- package/lib/workflow/ROOM.md +47 -0
- package/lib/workflow/command-resolver.cjs +155 -0
- package/lib/workflow/command-resolver.test.cjs +235 -0
- package/package.json +44 -0
- package/pipelines/analogy/01-decompose.md +80 -0
- package/pipelines/analogy/02-abstract.md +87 -0
- package/pipelines/analogy/03-search.md +135 -0
- package/pipelines/analogy/04-transfer.md +101 -0
- package/pipelines/analogy/05-validate.md +106 -0
- package/pipelines/analogy/CHAIN.md +56 -0
- package/pipelines/discovery/01-explore-domains.md +44 -0
- package/pipelines/discovery/02-think-hats.md +50 -0
- package/pipelines/discovery/03-analyze-needs.md +54 -0
- package/pipelines/discovery/CHAIN.md +37 -0
- package/pipelines/thesis/01-structure-argument.md +45 -0
- package/pipelines/thesis/02-challenge-assumptions.md +48 -0
- package/pipelines/thesis/03-build-thesis.md +54 -0
- package/pipelines/thesis/CHAIN.md +37 -0
- package/references/brain/causal-directives.md +91 -0
- package/references/brain/causal-enrichment.cypher +165 -0
- package/references/brain/command-triggers-schema.md +226 -0
- package/references/brain/graph-architecture.md +317 -0
- package/references/brain/query-patterns.md +460 -0
- package/references/brain/room-hierarchy-schema.md +218 -0
- package/references/brain/schema.md +76 -0
- package/references/capability-radar/capabilities-index.md +241 -0
- package/references/capability-radar/changelog-cache.md +81 -0
- package/references/causal/causal-schema.md +103 -0
- package/references/design/email-template-standard.md +155 -0
- package/references/design/graph-visualization-standard.md +178 -0
- package/references/document-generation.md +179 -0
- package/references/hsi/HSI-TOOLS-REFERENCE.md +222 -0
- package/references/import-config.md +141 -0
- package/references/integrations/detection-patterns.md +101 -0
- package/references/meeting/artifact-template.md +377 -0
- package/references/meeting/cross-meeting-intelligence.md +216 -0
- package/references/meeting/cross-relationship-patterns.md +202 -0
- package/references/meeting/live-join-interface.md +244 -0
- package/references/meeting/section-mapping.md +192 -0
- package/references/meeting/segment-classification.md +258 -0
- package/references/meeting/speaker-profile-template.md +219 -0
- package/references/meeting/summary-template.md +348 -0
- package/references/meeting/transcript-patterns.md +226 -0
- package/references/methodology/analyze-needs.md +135 -0
- package/references/methodology/analyze-systems.md +121 -0
- package/references/methodology/analyze-timing.md +149 -0
- package/references/methodology/beautiful-question.md +109 -0
- package/references/methodology/build-knowledge.md +161 -0
- package/references/methodology/build-thesis.md +237 -0
- package/references/methodology/challenge-assumptions.md +127 -0
- package/references/methodology/diagnose.md +169 -0
- package/references/methodology/dominant-designs.md +212 -0
- package/references/methodology/explore-domains.md +147 -0
- package/references/methodology/explore-futures.md +163 -0
- package/references/methodology/explore-trends.md +129 -0
- package/references/methodology/find-bottlenecks.md +131 -0
- package/references/methodology/grade.md +211 -0
- package/references/methodology/index.md +97 -0
- package/references/methodology/leadership.md +200 -0
- package/references/methodology/lean-canvas.md +116 -0
- package/references/methodology/macro-trends.md +192 -0
- package/references/methodology/map-unknowns.md +137 -0
- package/references/methodology/mullins-7-domains.md +104 -0
- package/references/methodology/problem-types.md +65 -0
- package/references/methodology/root-cause.md +178 -0
- package/references/methodology/sapphire-encoding.md +355 -0
- package/references/methodology/scenario-plan.md +178 -0
- package/references/methodology/score-innovation.md +154 -0
- package/references/methodology/structure-argument.md +158 -0
- package/references/methodology/systems-thinking.md +159 -0
- package/references/methodology/think-hats.md +147 -0
- package/references/methodology/triz-matrix.json +751 -0
- package/references/methodology/triz-principles.md +501 -0
- package/references/methodology/user-needs.md +199 -0
- package/references/methodology/validate.md +163 -0
- package/references/methodology/value-proposition.md +244 -0
- package/references/opportunities/funding-lifecycle.md +103 -0
- package/references/opportunities/grant-api-patterns.md +99 -0
- package/references/opportunities/opportunity-template.md +84 -0
- package/references/personality/assessment-philosophy.md +72 -0
- package/references/personality/lexicon.md +100 -0
- package/references/personality/persona-chains.md +56 -0
- package/references/personality/pws-lexicon-full.md +499 -0
- package/references/personality/voice-dna.md +156 -0
- package/references/personas/hat-perspectives.md +76 -0
- package/references/personas/persona-template.md +63 -0
- package/references/pipeline/act-output-contract.md +88 -0
- package/references/pipeline/chains-index.md +39 -0
- package/references/pws-profile-generation.md +79 -0
- package/references/reasoning/reasoning-schema.md +143 -0
- package/references/reasoning/reasoning-template.md +68 -0
- package/references/reasoning/run-template.md +38 -0
- package/references/research/RESEARCH_14_CLAUDE_CODE_SOURCE_ARCHITECTURE.md +209 -0
- package/references/research/RESEARCH_15_V1.8_OPTIMIZATION_JTBD.md +375 -0
- package/references/research/RESEARCH_16_NATIVE_FIRST_PLUGIN_ARCHITECTURE.md +575 -0
- package/references/research/RESEARCH_17_MCP_UI_FRAMEWORKS.md +272 -0
- package/references/taxonomy/TAXONOMY.md +192 -0
- package/references/templates/MINTO.md +36 -0
- package/references/user-research/2026-04-05-leah-lawrence-session.md +202 -0
- package/references/vault-kit/README.md +35 -0
- package/references/vault-kit/app.json +12 -0
- package/references/vault-kit/appearance.json +12 -0
- package/references/vault-kit/graph.json +35 -0
- package/references/vault-kit/snippets/mindrian-destijl.css +297 -0
- package/references/vault-kit/templates/new-artifact.md +37 -0
- package/references/vault-kit/templates/new-meeting-note.md +35 -0
- package/references/vault-kit/templates/new-team-profile.md +29 -0
- package/references/vault-kit/templates/new-xref.md +35 -0
- package/references/visual/symbol-system.md +151 -0
- package/skills/MOSDeckEngine/SKILL.md +325 -0
- package/skills/brain-connector/SKILL.md +114 -0
- package/skills/context-engine/SKILL.md +147 -0
- package/skills/conversation-mode/SKILL.md +102 -0
- package/skills/larry-personality/SKILL.md +219 -0
- package/skills/larry-personality/framework-chains.md +92 -0
- package/skills/larry-personality/mode-engine.md +185 -0
- package/skills/mullins-scaffold/SKILL.md +61 -0
- package/skills/mullins-scaffold/scaffold.json +146 -0
- package/skills/pws-methodology/SKILL.md +49 -0
- package/skills/room-passive/SKILL.md +165 -0
- package/skills/room-proactive/SKILL.md +250 -0
- package/skills/ui-system/SKILL.md +277 -0
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
# Graph Visualization Standard
|
|
2
|
+
|
|
3
|
+
**Decision:** vis-network (vis.js) is the standard graph visualization library for ALL MindrianOS exports, snapshots, dashboards, and visual presentations.
|
|
4
|
+
|
|
5
|
+
**Decided:** 2026-04-06
|
|
6
|
+
**Supersedes:** Cytoscape.js for exports (Cytoscape.js retained for internal plugin dashboard only)
|
|
7
|
+
|
|
8
|
+
## Why vis-network
|
|
9
|
+
|
|
10
|
+
| Requirement | vis-network | Cytoscape.js |
|
|
11
|
+
|-------------|-------------|--------------|
|
|
12
|
+
| Physics simulation | Built-in ForceAtlas2, excellent | Available but less polished |
|
|
13
|
+
| Drag & drop | Excellent out-of-box | Good |
|
|
14
|
+
| Learning curve | Simple API | Steep |
|
|
15
|
+
| Clustering | Built-in | Requires extensions |
|
|
16
|
+
| Visual quality | Beautiful by default | Needs heavy styling |
|
|
17
|
+
| Setup | `new Network(container, data, options)` | Verbose config |
|
|
18
|
+
|
|
19
|
+
Cytoscape.js has superior graph algorithms (50+ built-in) but exports don't need algorithms -- they need beautiful interactive exploration.
|
|
20
|
+
|
|
21
|
+
## When to Use What
|
|
22
|
+
|
|
23
|
+
| Context | Library | Reason |
|
|
24
|
+
|---------|---------|--------|
|
|
25
|
+
| SnapshotHub exports | vis-network | Beauty + interaction for stakeholders |
|
|
26
|
+
| /mos:present views | vis-network | Same as SnapshotHub |
|
|
27
|
+
| /mos:dashboard live server | vis-network | Consistency with exports |
|
|
28
|
+
| /mos:visualize command | vis-network | Standard graph output |
|
|
29
|
+
| Plugin internal (Brain queries) | Cytoscape.js | Graph algorithms needed |
|
|
30
|
+
|
|
31
|
+
## Standard Configuration
|
|
32
|
+
|
|
33
|
+
```javascript
|
|
34
|
+
var options = {
|
|
35
|
+
physics: {
|
|
36
|
+
enabled: true,
|
|
37
|
+
solver: 'forceAtlas2Based',
|
|
38
|
+
forceAtlas2Based: {
|
|
39
|
+
gravitationalConstant: -40,
|
|
40
|
+
centralGravity: 0.008,
|
|
41
|
+
springLength: 120,
|
|
42
|
+
springConstant: 0.04,
|
|
43
|
+
damping: 0.4
|
|
44
|
+
},
|
|
45
|
+
stabilization: { iterations: 200, fit: true }
|
|
46
|
+
},
|
|
47
|
+
interaction: {
|
|
48
|
+
hover: true,
|
|
49
|
+
tooltipDelay: 200,
|
|
50
|
+
zoomView: true,
|
|
51
|
+
dragView: true,
|
|
52
|
+
keyboard: { enabled: true }
|
|
53
|
+
},
|
|
54
|
+
nodes: {
|
|
55
|
+
font: {
|
|
56
|
+
color: '#ccc',
|
|
57
|
+
size: 11,
|
|
58
|
+
face: 'Inter, system-ui, sans-serif',
|
|
59
|
+
strokeWidth: 3,
|
|
60
|
+
strokeColor: '#0a0a0f'
|
|
61
|
+
},
|
|
62
|
+
borderWidth: 2,
|
|
63
|
+
shadow: { enabled: true, color: 'rgba(0,0,0,0.3)', size: 6 }
|
|
64
|
+
},
|
|
65
|
+
edges: {
|
|
66
|
+
smooth: { type: 'continuous', roundness: 0.3 },
|
|
67
|
+
hoverWidth: 2
|
|
68
|
+
},
|
|
69
|
+
layout: { improvedLayout: true }
|
|
70
|
+
};
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Node Shapes
|
|
74
|
+
|
|
75
|
+
| Node Type | Shape | Size | Description |
|
|
76
|
+
|-----------|-------|------|-------------|
|
|
77
|
+
| Section header | diamond | 20 | Room section nodes (problem-definition, market-analysis, etc.) |
|
|
78
|
+
| Artifact | dot | 12 | Individual entries/documents |
|
|
79
|
+
| Framework | triangle | 16 | Methodology framework nodes (for Brain views) |
|
|
80
|
+
| Person | square | 14 | Team member or speaker nodes |
|
|
81
|
+
|
|
82
|
+
## Edge Colors
|
|
83
|
+
|
|
84
|
+
| Edge Type | Color | Opacity | Description |
|
|
85
|
+
|-----------|-------|---------|-------------|
|
|
86
|
+
| CONVERGES | #2ECC71 | 0.4 | Themes align across sections |
|
|
87
|
+
| CONTRADICTS | #E74C3C | 0.4 | Tension detected between entries |
|
|
88
|
+
| INFORMS | #3498DB | 0.4 | One entry informs another |
|
|
89
|
+
| INVALIDATES | #E67E22 | 0.5 | One entry invalidates another |
|
|
90
|
+
| FEEDS_INTO | #9B59B6 | 0.5 | Framework chains (Brain views) |
|
|
91
|
+
|
|
92
|
+
## Section Colors
|
|
93
|
+
|
|
94
|
+
| Section | Color | Hex |
|
|
95
|
+
|---------|-------|-----|
|
|
96
|
+
| problem-definition | Red | #E74C3C |
|
|
97
|
+
| market-analysis | Yellow/Gold | #F39C12 |
|
|
98
|
+
| solution-design | Blue | #3498DB |
|
|
99
|
+
| business-model | Green | #2ECC71 |
|
|
100
|
+
| competitive-analysis | Orange | #E67E22 |
|
|
101
|
+
| team-execution | Purple | #9B59B6 |
|
|
102
|
+
| legal-ip | Gold | #D4AC0D |
|
|
103
|
+
| financial-model | Teal | #1ABC9C |
|
|
104
|
+
| personas | Deep Purple | #8E44AD |
|
|
105
|
+
| opportunity-bank | Forest Green | #27AE60 |
|
|
106
|
+
| meetings | Gray | #7F8C8D |
|
|
107
|
+
|
|
108
|
+
## CDN
|
|
109
|
+
|
|
110
|
+
```html
|
|
111
|
+
<script src="https://unpkg.com/vis-network@9.1.9/standalone/umd/vis-network.min.js"></script>
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## Required UI Elements
|
|
115
|
+
|
|
116
|
+
Every graph view MUST include:
|
|
117
|
+
|
|
118
|
+
1. **Sidebar** with section filter toggles and edge type toggles
|
|
119
|
+
2. **Detail panel** that appears on node click (shows connections)
|
|
120
|
+
3. **Controls bar** at bottom: Fit, Zoom +/-, Physics toggle, Stabilize
|
|
121
|
+
4. **Back to Hub** link in top bar
|
|
122
|
+
5. **Mindrian branding** with Mondrian color bar
|
|
123
|
+
6. **Legend** explaining edge types and node shapes
|
|
124
|
+
7. **Stats** showing node/edge counts
|
|
125
|
+
|
|
126
|
+
## Dark Theme (Standard)
|
|
127
|
+
|
|
128
|
+
```css
|
|
129
|
+
body { background: #0a0a0f; }
|
|
130
|
+
sidebar { background: #0d0d14; border-right: 1px solid #1a1a2a; }
|
|
131
|
+
top-bar { background: #0d0d12; }
|
|
132
|
+
node-font-color: #ccc
|
|
133
|
+
node-font-stroke: #0a0a0f (3px outline for readability)
|
|
134
|
+
detail-panel: #12121a with backdrop-filter: blur(8px)
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
## Integration Points
|
|
138
|
+
|
|
139
|
+
- `scripts/generate-hub.cjs` -- embeds vis-network graph in SnapshotHub
|
|
140
|
+
- `scripts/generate-snapshot.cjs` -- constellation view uses vis-network
|
|
141
|
+
- `scripts/generate-presentation.cjs` -- graph view uses vis-network
|
|
142
|
+
- `lib/quickview/hub-server.cjs` -- live dashboard graph uses vis-network
|
|
143
|
+
- `dashboard/index.html` -- localhost dashboard uses vis-network
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## Pitch Deck Standard (v1.9.3)
|
|
148
|
+
|
|
149
|
+
The SnapshotHub pitch deck uses the `/slides` skill structure:
|
|
150
|
+
- 10-slide YC Seed Deck format
|
|
151
|
+
- Chart.js for all data visualizations (minimum 3 charts)
|
|
152
|
+
- 16:9 aspect ratio with keyboard navigation (arrows + click)
|
|
153
|
+
- Progress bar at top
|
|
154
|
+
- De Stijl dark palette (#0a0a0f background, Mondrian accents)
|
|
155
|
+
- Bebas Neue headings, Inter body
|
|
156
|
+
- MINDRIAN logo + Back to Hub link
|
|
157
|
+
- Mobile responsive (breakpoints at 900px, 600px)
|
|
158
|
+
- Mondrian color bar footer
|
|
159
|
+
|
|
160
|
+
### Slide Structure
|
|
161
|
+
1. Title/Hook (AIDA formula)
|
|
162
|
+
2. Problem (PAS formula)
|
|
163
|
+
3. Convergence/IKA (Chart.js horizontal bar)
|
|
164
|
+
4. Solution (TRL progress bars)
|
|
165
|
+
5. Market & Timing (Chart.js S-curve lines)
|
|
166
|
+
6. Competitive Landscape (grid with check/miss)
|
|
167
|
+
7. Business Model (Chart.js stacked bar)
|
|
168
|
+
8. Team (credential grid)
|
|
169
|
+
9. Traction & Timeline (milestone cards)
|
|
170
|
+
10. The Ask/CTA (AIDA urgency)
|
|
171
|
+
|
|
172
|
+
### Generator Integration
|
|
173
|
+
`generate-hub.cjs` should produce this deck as `views/deck.html` by:
|
|
174
|
+
1. Reading room sections for content
|
|
175
|
+
2. Extracting metrics from STATE.md
|
|
176
|
+
3. Building Chart.js datasets from market-analysis/ and financial-model/
|
|
177
|
+
4. Generating persona card from team/ data
|
|
178
|
+
5. Using the slide template from references/templates/deck-template.html
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
# Document Generation Reference
|
|
2
|
+
|
|
3
|
+
*Professional document structuring for MindrianOS — De Stijl formatted exports from the Data Room.*
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Architecture
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
Room Markdown Artifacts (YAML frontmatter)
|
|
11
|
+
↓
|
|
12
|
+
markdown2 (parse to HTML + extract metadata)
|
|
13
|
+
↓
|
|
14
|
+
Jinja2 (inject into document-type template)
|
|
15
|
+
↓
|
|
16
|
+
De Stijl CSS stylesheet (shared across all templates)
|
|
17
|
+
↓
|
|
18
|
+
WeasyPrint (render to PDF)
|
|
19
|
+
↓
|
|
20
|
+
PyMuPDF (optional: TOC bookmarks, merge sections, watermark)
|
|
21
|
+
↓
|
|
22
|
+
room/exports/{document-type}.pdf
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**Zero additional dependencies.** All tools already installed:
|
|
26
|
+
- WeasyPrint 67.0 (HTML+CSS → PDF, CSS3 paged media)
|
|
27
|
+
- markdown2 2.5.4 (Markdown → HTML with frontmatter)
|
|
28
|
+
- Jinja2 3.1.6 (template engine)
|
|
29
|
+
- PyMuPDF 1.26.6 (PDF manipulation, TOC, merge)
|
|
30
|
+
- PyYAML 6.0.3 (frontmatter parsing)
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Document Types
|
|
35
|
+
|
|
36
|
+
| Document | Use Case | Template Style |
|
|
37
|
+
|----------|----------|---------------|
|
|
38
|
+
| **Investment Thesis** | Structured narrative for investors — problem, market, solution, financials | Multi-page portrait, section breaks, De Stijl accent bars |
|
|
39
|
+
| **Executive Summary** | 1-2 page dense overview of entire Data Room | Two-column layout, tight margins, summary boxes |
|
|
40
|
+
| **Due Diligence Report** | Comprehensive multi-section with TOC | Running headers, page numbers, section numbering |
|
|
41
|
+
| **Research Paper** | Academic-style with citations and methodology | Two-column body, footnotes, bibliography |
|
|
42
|
+
| **PWS Profile** | Professional profile/resume for cohort members | Single-page grid layout, accent bars, skill visualization |
|
|
43
|
+
| **Pitch Deck** | Landscape slides for presentation | Landscape @page, large headings, one-concept-per-page |
|
|
44
|
+
| **Venture Brief** | Quick 1-pager for stakeholder review | Constrained single page, key highlights only |
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## De Stijl CSS for PDF
|
|
49
|
+
|
|
50
|
+
```css
|
|
51
|
+
@page {
|
|
52
|
+
size: A4;
|
|
53
|
+
margin: 24mm 20mm;
|
|
54
|
+
background: #0D0D0D;
|
|
55
|
+
|
|
56
|
+
@top-center {
|
|
57
|
+
content: string(doctitle);
|
|
58
|
+
font-family: 'Bebas Neue', sans-serif;
|
|
59
|
+
color: #A09A90;
|
|
60
|
+
font-size: 10px;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
@bottom-right {
|
|
64
|
+
content: counter(page) ' / ' counter(pages);
|
|
65
|
+
font-family: 'Inter', sans-serif;
|
|
66
|
+
color: #A09A90;
|
|
67
|
+
font-size: 10px;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
:root {
|
|
72
|
+
--ds-bg: #0D0D0D;
|
|
73
|
+
--ds-surface: #1A1A1A;
|
|
74
|
+
--ds-elevated: #2A2A2A;
|
|
75
|
+
--ds-cream: #F5F0E8;
|
|
76
|
+
--ds-muted: #A09A90;
|
|
77
|
+
--ds-red: #A63D2F;
|
|
78
|
+
--ds-blue: #1E3A6E;
|
|
79
|
+
--ds-yellow: #C8A43C;
|
|
80
|
+
--ds-green: #2D6B4A;
|
|
81
|
+
--ds-sienna: #B5602A;
|
|
82
|
+
--ds-gray: #5C5A56;
|
|
83
|
+
--ds-amethyst: #6B4E8B;
|
|
84
|
+
--ds-teal: #2A6B5E;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
body {
|
|
88
|
+
font-family: 'Inter', sans-serif;
|
|
89
|
+
color: var(--ds-cream);
|
|
90
|
+
background: var(--ds-bg);
|
|
91
|
+
line-height: 1.6;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
h1, h2, h3 {
|
|
95
|
+
font-family: 'Bebas Neue', sans-serif;
|
|
96
|
+
letter-spacing: 0.05em;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
* { border-radius: 0; }
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Room Section → Document Section Mapping
|
|
105
|
+
|
|
106
|
+
| Room Section | Document Section | Accent Color |
|
|
107
|
+
|-------------|-----------------|-------------|
|
|
108
|
+
| problem-definition | Problem Statement / Opportunity | Red #A63D2F |
|
|
109
|
+
| market-analysis | Market Analysis / TAM-SAM-SOM | Yellow #C8A43C |
|
|
110
|
+
| solution-design | Solution Architecture / Technical Approach | Gray #5C5A56 |
|
|
111
|
+
| business-model | Business Model / Revenue Strategy | Green #2D6B4A |
|
|
112
|
+
| competitive-analysis | Competitive Landscape / Moat | Sienna #B5602A |
|
|
113
|
+
| team-execution | Team / Execution Plan | Blue #1E3A6E |
|
|
114
|
+
| legal-ip | Legal / IP Strategy | Amethyst #6B4E8B |
|
|
115
|
+
| financial-model | Financial Projections / Investment Ask | Teal #2A6B5E |
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## Implementation Plan
|
|
120
|
+
|
|
121
|
+
### Plugin Files Needed
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
templates/
|
|
125
|
+
destijl-base.css # Shared De Stijl stylesheet for PDF
|
|
126
|
+
investment-thesis.html # Jinja2 template
|
|
127
|
+
executive-summary.html # Jinja2 template
|
|
128
|
+
due-diligence.html # Jinja2 template
|
|
129
|
+
research-paper.html # Jinja2 template
|
|
130
|
+
profile.html # Jinja2 template (PWS profiles)
|
|
131
|
+
pitch-deck.html # Jinja2 template (landscape)
|
|
132
|
+
venture-brief.html # Jinja2 template (1-page)
|
|
133
|
+
assets/
|
|
134
|
+
fonts/BebasNeue-Regular.ttf # Bundled font (~50KB)
|
|
135
|
+
scripts/
|
|
136
|
+
render-pdf # Orchestrator: reads room, selects template, renders PDF
|
|
137
|
+
commands/
|
|
138
|
+
export.md # /mos:export thesis|summary|report|profile|deck|brief
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### Command UX
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
/mos:export thesis → Investment thesis PDF from full room
|
|
145
|
+
/mos:export summary → 1-2 page executive summary
|
|
146
|
+
/mos:export report → Due diligence report with TOC
|
|
147
|
+
/mos:export profile → PWS profile for a cohort member
|
|
148
|
+
/mos:export deck → Landscape pitch deck
|
|
149
|
+
/mos:export brief → 1-page venture brief
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Tri-Polar Surface Behavior
|
|
153
|
+
|
|
154
|
+
| Surface | Behavior |
|
|
155
|
+
|---------|----------|
|
|
156
|
+
| **CLI** | `render-pdf` script generates PDF, opens with default viewer |
|
|
157
|
+
| **Desktop** | Larry offers "Want me to export this as a PDF?" after key milestones |
|
|
158
|
+
| **Cowork** | Export to shared `00_Context/exports/` directory, visible to all team members |
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## LaTeX Skill Pattern Reference
|
|
163
|
+
|
|
164
|
+
The "LaTeX Handouts" Claude Code skill (mcpmarket.com) demonstrates the pattern:
|
|
165
|
+
- Skill reads source content (slides/markdown)
|
|
166
|
+
- Expands bullets into research-backed prose
|
|
167
|
+
- Generates structured professional document
|
|
168
|
+
- Outputs as standalone file
|
|
169
|
+
|
|
170
|
+
MindrianOS follows the same pattern but uses HTML→PDF (WeasyPrint) instead of LaTeX→PDF,
|
|
171
|
+
keeping zero dependencies while achieving the same professional output quality.
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
## Font Bundling Note
|
|
176
|
+
|
|
177
|
+
Bebas Neue is a free Google Font (SIL Open Font License). Bundle the .ttf in the plugin's
|
|
178
|
+
assets/ directory (~50KB). WeasyPrint loads it via @font-face in the CSS template.
|
|
179
|
+
No system font installation required.
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
# HSI & Reverse Salient Discovery — Tool Reference
|
|
2
|
+
|
|
3
|
+
*Computational engines for auto-relationship building in the Data Room knowledge graph.*
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What These Tools Do for MindrianOS
|
|
8
|
+
|
|
9
|
+
The HSI (Hybrid Similarity Index) and Reverse Salient Discovery framework provide the **computational backbone for auto-discovering cross-relationships** in the Data Room. Instead of relying only on keyword matching or explicit cross-references, these tools find HIDDEN connections between room artifacts using dual similarity analysis.
|
|
10
|
+
|
|
11
|
+
### The Core Insight
|
|
12
|
+
|
|
13
|
+
When two room artifacts share **structural similarity** (same methods/terms) but LOW **semantic similarity** (different meanings/applications), OR vice versa — that GAP is where hidden innovation connections live.
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
HSI(artifact_i, artifact_j) = |BERT_similarity - LSA_similarity| × Integrative_Factor
|
|
17
|
+
|
|
18
|
+
High HSI = "These two artifacts are connected in ways nobody sees"
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Application to Data Room
|
|
22
|
+
|
|
23
|
+
| Source Tool | Data Room Application |
|
|
24
|
+
|-------------|----------------------|
|
|
25
|
+
| LSA (TF-IDF + SVD) | Structural similarity between room artifacts (shared terminology) |
|
|
26
|
+
| BERT embeddings | Semantic similarity between room artifacts (shared meaning) |
|
|
27
|
+
| HSI differential | Hidden connections: artifacts that share structure but not meaning, or meaning but not structure |
|
|
28
|
+
| Reverse Salient detection | Cross-subsystem innovation opportunities — where a solution in one room section addresses a problem in another |
|
|
29
|
+
| Top pairs extraction | The most surprising connections to surface to the user |
|
|
30
|
+
|
|
31
|
+
### Integration with Meeting Filing
|
|
32
|
+
|
|
33
|
+
After meeting segments are filed to room sections, the HSI pipeline runs:
|
|
34
|
+
1. Compute LSA similarity between ALL room artifacts (including new meeting segments)
|
|
35
|
+
2. Compute BERT/embedding similarity between all artifacts
|
|
36
|
+
3. Find high-differential pairs (|BERT - LSA| > threshold)
|
|
37
|
+
4. Surface as ENABLES/INFORMS/CONTRADICTS edges in the knowledge graph
|
|
38
|
+
5. Larry says: "I found a hidden connection between your mentor's advice and your market analysis that nobody mentioned in the meeting."
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Tool 1: HSI Computational Pipeline
|
|
43
|
+
|
|
44
|
+
### Architecture
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
Room artifacts (text) → TF-IDF vectorization → TruncatedSVD (80 components) → LSA similarity matrix
|
|
48
|
+
Room artifacts (text) → BERT tokenization → segment embeddings → BERT similarity matrix
|
|
49
|
+
|BERT - LSA| = differential matrix → HSI score × integrative factor → top pairs = hidden connections
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Key Parameters
|
|
53
|
+
|
|
54
|
+
| Parameter | Value | Purpose |
|
|
55
|
+
|-----------|-------|---------|
|
|
56
|
+
| max_features | 2000 | TF-IDF vocabulary size |
|
|
57
|
+
| n_components | 80 | SVD dimensions (topic space) |
|
|
58
|
+
| max_df | 0.5 | Ignore terms in >50% of docs |
|
|
59
|
+
| BERT model | bert-large-cased | Semantic embeddings |
|
|
60
|
+
| max_tokens | 512 | BERT segment size |
|
|
61
|
+
| threshold | 0.3 | Minimum differential for reverse salient |
|
|
62
|
+
|
|
63
|
+
### Adaptation for Plugin
|
|
64
|
+
|
|
65
|
+
**Problem:** BERT-large requires ~1.3GB memory + GPU. Plugin must work on CPU with low memory.
|
|
66
|
+
|
|
67
|
+
**Solution (already proven):** Gemini-Native HSI — replace BERT with Claude/Gemini embedding API:
|
|
68
|
+
- `text-embedding-004` or Claude's native embeddings
|
|
69
|
+
- API-based, no local GPU needed
|
|
70
|
+
- Minutes instead of hours
|
|
71
|
+
- Fits within plugin constraints
|
|
72
|
+
|
|
73
|
+
**Alternative:** Use Pinecone (already integrated as Brain MCP) for embedding similarity. Room artifacts get embedded at filing time. Cross-similarity is a Pinecone query.
|
|
74
|
+
|
|
75
|
+
### LSA Component (lsa.py adapted)
|
|
76
|
+
|
|
77
|
+
```python
|
|
78
|
+
# Adapted for room artifacts instead of papers
|
|
79
|
+
from sklearn.feature_extraction.text import TfidfVectorizer
|
|
80
|
+
from sklearn.decomposition import TruncatedSVD
|
|
81
|
+
|
|
82
|
+
def compute_lsa_similarity(artifacts: list[str]) -> np.ndarray:
|
|
83
|
+
vectorizer = TfidfVectorizer(stop_words='english', max_features=2000, max_df=0.5)
|
|
84
|
+
X = vectorizer.fit_transform(artifacts)
|
|
85
|
+
svd = TruncatedSVD(n_components=min(80, len(artifacts)-1), random_state=256)
|
|
86
|
+
Z = svd.fit_transform(X)
|
|
87
|
+
sim = cosine_similarity(Z)
|
|
88
|
+
# Normalize to [0,1]
|
|
89
|
+
sim = (sim - sim.min()) / (sim.max() - sim.min() + 1e-12)
|
|
90
|
+
return sim
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Semantic Component (adapted for plugin)
|
|
94
|
+
|
|
95
|
+
```python
|
|
96
|
+
# Option A: Pinecone embeddings (if Brain connected)
|
|
97
|
+
def compute_semantic_similarity_pinecone(artifact_ids: list[str]) -> np.ndarray:
|
|
98
|
+
# Query Pinecone for existing embeddings
|
|
99
|
+
# Compute pairwise cosine similarity
|
|
100
|
+
pass
|
|
101
|
+
|
|
102
|
+
# Option B: Local lightweight embeddings (Tier 0)
|
|
103
|
+
def compute_semantic_similarity_local(artifacts: list[str]) -> np.ndarray:
|
|
104
|
+
from sentence_transformers import SentenceTransformer
|
|
105
|
+
model = SentenceTransformer('all-MiniLM-L6-v2') # 80MB, CPU-friendly
|
|
106
|
+
embeddings = model.encode(artifacts)
|
|
107
|
+
sim = cosine_similarity(embeddings)
|
|
108
|
+
sim = (sim - sim.min()) / (sim.max() - sim.min() + 1e-12)
|
|
109
|
+
return sim
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### HSI Computation
|
|
113
|
+
|
|
114
|
+
```python
|
|
115
|
+
def compute_hsi(artifacts: list[str]) -> dict:
|
|
116
|
+
lsa = compute_lsa_similarity(artifacts)
|
|
117
|
+
semantic = compute_semantic_similarity_local(artifacts) # or Pinecone
|
|
118
|
+
|
|
119
|
+
# Differential = hidden connections
|
|
120
|
+
gap = np.abs(semantic - lsa)
|
|
121
|
+
gap = (gap - gap.min()) / (gap.max() - gap.min() + 1e-12)
|
|
122
|
+
|
|
123
|
+
return {"lsa": lsa, "semantic": semantic, "hsi": gap}
|
|
124
|
+
|
|
125
|
+
def top_hidden_connections(hsi: np.ndarray, artifacts: list, k=10):
|
|
126
|
+
n = hsi.shape[0]
|
|
127
|
+
pairs = []
|
|
128
|
+
for i in range(n):
|
|
129
|
+
for j in range(i+1, n):
|
|
130
|
+
if hsi[i,j] > 0.3: # threshold
|
|
131
|
+
pairs.append((i, j, float(hsi[i,j])))
|
|
132
|
+
pairs.sort(key=lambda x: x[2], reverse=True)
|
|
133
|
+
return pairs[:k]
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## Tool 2: Reverse Salient Discovery Framework
|
|
139
|
+
|
|
140
|
+
### The 4-Phase Pipeline
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
Phase 1: ACQUIRE — gather all room artifacts as "documents"
|
|
144
|
+
Phase 2: ANALYZE — compute dual similarity (LSA + semantic)
|
|
145
|
+
Phase 3: DETECT — find high-differential pairs (reverse salients)
|
|
146
|
+
Phase 4: SYNTHESIZE — generate innovation thesis for each pair
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### Adaptation for Data Room Auto-Relationships
|
|
150
|
+
|
|
151
|
+
Instead of analyzing academic papers across domains, we analyze ROOM ARTIFACTS across sections:
|
|
152
|
+
|
|
153
|
+
| Framework Concept | Data Room Equivalent |
|
|
154
|
+
|-------------------|---------------------|
|
|
155
|
+
| Domain A papers | Artifacts in section A (e.g., market-analysis) |
|
|
156
|
+
| Domain B papers | Artifacts in section B (e.g., solution-design) |
|
|
157
|
+
| Cross-domain reverse salient | Hidden connection between sections |
|
|
158
|
+
| Innovation thesis | Larry's insight: "This market trend enables that technical approach" |
|
|
159
|
+
|
|
160
|
+
### Edge Types Generated
|
|
161
|
+
|
|
162
|
+
| HSI Pattern | Edge Type | Example |
|
|
163
|
+
|-------------|-----------|---------|
|
|
164
|
+
| High structural, low semantic | ENABLES | "Same method, different application — this technique in solution-design could address the gap in market-analysis" |
|
|
165
|
+
| Low structural, high semantic | INFORMS | "Different words, same concept — the mentor's advice about timing maps to the S-curve analysis" |
|
|
166
|
+
| High differential + contradiction | CONTRADICTS | "These two artifacts say opposite things using different language" |
|
|
167
|
+
| Multiple artifacts → same concept | CONVERGES | "Three meetings, three speakers, all pointing to the same insight from different angles" |
|
|
168
|
+
| Change in one → invalidates other | INVALIDATES | "This new finding makes the assumption in financial-model stale" |
|
|
169
|
+
|
|
170
|
+
### Neo4j Storage (when Brain connected)
|
|
171
|
+
|
|
172
|
+
```cypher
|
|
173
|
+
// Store discovered relationships
|
|
174
|
+
MERGE (a1:RoomArtifact {id: $artifact1_id})
|
|
175
|
+
MERGE (a2:RoomArtifact {id: $artifact2_id})
|
|
176
|
+
CREATE (a1)-[:HSI_CONNECTION {
|
|
177
|
+
hsi_score: $score,
|
|
178
|
+
lsa_sim: $lsa,
|
|
179
|
+
semantic_sim: $semantic,
|
|
180
|
+
connection_type: $type,
|
|
181
|
+
discovered: datetime(),
|
|
182
|
+
human_approved: null
|
|
183
|
+
}]->(a2)
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## Integration with Phase 6 (Cross-Relationship Discovery Loop)
|
|
189
|
+
|
|
190
|
+
Plan 06-03 builds the cross-relationship discovery loop. The HSI tools integrate as:
|
|
191
|
+
|
|
192
|
+
```
|
|
193
|
+
Artifact filed (from meeting or methodology session)
|
|
194
|
+
↓
|
|
195
|
+
Step 6: Cross-relationship scan
|
|
196
|
+
↓
|
|
197
|
+
Option A (Tier 0, no deps): Keyword-based (existing analyze-room)
|
|
198
|
+
Option B (Tier 1, lightweight): LSA + MiniLM embeddings (this reference)
|
|
199
|
+
Option C (Tier 2, Brain): LSA + Pinecone + Neo4j storage
|
|
200
|
+
↓
|
|
201
|
+
Hidden connections surfaced → Larry presents → User APPROVE/REJECT/DEFER
|
|
202
|
+
↓
|
|
203
|
+
Graph edges created → Dashboard updated → Knowledge compounds
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## Source Files
|
|
209
|
+
|
|
210
|
+
Original HSI codebase (Jonathan's research):
|
|
211
|
+
- `lsa.py` — LSA similarity computation (TF-IDF + TruncatedSVD)
|
|
212
|
+
- `sts_bert.py` — BERT semantic similarity (segment-aware cosine)
|
|
213
|
+
- `comparison.py` — Differential analysis + reverse salient extraction
|
|
214
|
+
- `paper_gathering.py` — Scopus API document acquisition
|
|
215
|
+
- `paper_cleaning.py` — Text preprocessing
|
|
216
|
+
- `lsa_bert_similarity.py` — Combined LSA + BERT pipeline
|
|
217
|
+
- `hybrid_index.py` — HSI computation with integrative scoring
|
|
218
|
+
|
|
219
|
+
Enhanced framework:
|
|
220
|
+
- Reverse Salient Discovery Agent (4-phase pipeline)
|
|
221
|
+
- Neo4j integration schema for storing/querying discoveries
|
|
222
|
+
- Dynamic threshold adjustment based on domain characteristics
|