@mindrian_os/install 1.13.0-beta.17 → 1.13.0-beta.21

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 (199) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/.mcp.json +6 -1
  3. package/CHANGELOG.md +31 -0
  4. package/README.md +51 -56
  5. package/bin/mindrian-brain-mcp-client.cjs +152 -0
  6. package/commands/act.md +1 -0
  7. package/commands/admin.md +1 -0
  8. package/commands/analyze-needs.md +2 -0
  9. package/commands/analyze-systems.md +2 -0
  10. package/commands/analyze-timing.md +2 -0
  11. package/commands/auto-explore.md +2 -0
  12. package/commands/beautiful-question.md +2 -0
  13. package/commands/brain-derive.md +2 -0
  14. package/commands/build-knowledge.md +2 -0
  15. package/commands/build-thesis.md +2 -0
  16. package/commands/causal.md +2 -0
  17. package/commands/challenge-assumptions.md +2 -0
  18. package/commands/compare-ventures.md +2 -0
  19. package/commands/dashboard.md +2 -1
  20. package/commands/deep-grade.md +2 -0
  21. package/commands/diagnose.md +21 -1
  22. package/commands/diagnostics.md +14 -3
  23. package/commands/doctor.md +6 -2
  24. package/commands/dogfood-flush.md +92 -0
  25. package/commands/dominant-designs.md +2 -0
  26. package/commands/explain-decision.md +2 -0
  27. package/commands/explore-domains.md +2 -0
  28. package/commands/explore-futures.md +2 -0
  29. package/commands/explore-trends.md +2 -0
  30. package/commands/export.md +1 -0
  31. package/commands/feynman-timeline-refresh.md +2 -0
  32. package/commands/file-meeting.md +2 -0
  33. package/commands/find-analogies.md +1 -0
  34. package/commands/find-bottlenecks.md +2 -0
  35. package/commands/find-connections.md +2 -0
  36. package/commands/funding.md +1 -0
  37. package/commands/grade.md +2 -0
  38. package/commands/graph.md +1 -0
  39. package/commands/hat-briefing.md +1 -0
  40. package/commands/heal.md +22 -170
  41. package/commands/help.md +54 -334
  42. package/commands/hmi-status.md +23 -144
  43. package/commands/jtbd.md +1 -0
  44. package/commands/leadership.md +2 -0
  45. package/commands/lean-canvas.md +2 -0
  46. package/commands/macro-trends.md +2 -0
  47. package/commands/map-unknowns.md +2 -0
  48. package/commands/memory.md +1 -0
  49. package/commands/models.md +1 -0
  50. package/commands/mos-reason.md +2 -0
  51. package/commands/mos.md +139 -0
  52. package/commands/mullins.md +2 -0
  53. package/commands/mva-brief.md +2 -0
  54. package/commands/mva-option.md +2 -0
  55. package/commands/new-project.md +2 -0
  56. package/commands/onboard.md +20 -7
  57. package/commands/operator.md +1 -0
  58. package/commands/opportunities.md +1 -0
  59. package/commands/organize.md +22 -469
  60. package/commands/persona.md +1 -0
  61. package/commands/pipeline.md +2 -0
  62. package/commands/present.md +1 -0
  63. package/commands/publish.md +2 -0
  64. package/commands/query.md +24 -102
  65. package/commands/radar.md +2 -0
  66. package/commands/reanalyze.md +1 -0
  67. package/commands/research.md +2 -0
  68. package/commands/room.md +2 -0
  69. package/commands/rooms.md +1 -0
  70. package/commands/root-cause.md +2 -0
  71. package/commands/rs-experts.md +1 -0
  72. package/commands/rs-explain.md +1 -0
  73. package/commands/rs-fetch.md +1 -0
  74. package/commands/rs-thesis.md +1 -0
  75. package/commands/scenario-plan.md +2 -0
  76. package/commands/scheduled-tasks.md +1 -0
  77. package/commands/score-innovation.md +2 -0
  78. package/commands/scout.md +1 -0
  79. package/commands/setup.md +2 -0
  80. package/commands/snapshot.md +2 -0
  81. package/commands/speakers.md +1 -0
  82. package/commands/splash.md +5 -2
  83. package/commands/status.md +1 -0
  84. package/commands/structure-argument.md +2 -0
  85. package/commands/suggest-next.md +2 -0
  86. package/commands/systems-thinking.md +2 -0
  87. package/commands/think-hats.md +2 -0
  88. package/commands/update.md +2 -0
  89. package/commands/user-needs.md +2 -0
  90. package/commands/validate.md +2 -0
  91. package/commands/value-proposition.md +2 -0
  92. package/commands/vault.md +2 -0
  93. package/commands/visualize.md +24 -29
  94. package/commands/whitespace.md +2 -1
  95. package/commands/wiki.md +1 -0
  96. package/hooks/hooks.json +22 -88
  97. package/lib/agents/auto-explore-agent.cjs +82 -0
  98. package/lib/core/breakthrough/canary.cjs +134 -0
  99. package/lib/core/breakthrough/canary.test.cjs +136 -0
  100. package/lib/core/breakthrough/detectors.cjs +359 -0
  101. package/lib/core/breakthrough/detectors.test.cjs +333 -0
  102. package/lib/core/breakthrough/ethics-fence.cjs +127 -0
  103. package/lib/core/breakthrough/ethics-fence.test.cjs +178 -0
  104. package/lib/core/breakthrough/resurfacing.cjs +150 -0
  105. package/lib/core/breakthrough/resurfacing.test.cjs +233 -0
  106. package/lib/core/breakthrough/review-queue.cjs +154 -0
  107. package/lib/core/breakthrough/review-queue.test.cjs +160 -0
  108. package/lib/core/breakthrough/scanner-d17-d18.test.cjs +229 -0
  109. package/lib/core/breakthrough/scanner.cjs +426 -0
  110. package/lib/core/breakthrough/scanner.test.cjs +267 -0
  111. package/lib/core/breakthrough/schema.cjs +164 -0
  112. package/lib/core/breakthrough/schema.test.cjs +256 -0
  113. package/lib/core/breakthrough/scoring.cjs +293 -0
  114. package/lib/core/breakthrough/scoring.test.cjs +423 -0
  115. package/lib/core/breakthrough/verb-dispatch.cjs +221 -0
  116. package/lib/core/breakthrough/verb-dispatch.test.cjs +185 -0
  117. package/lib/core/breakthrough/voice-scaffold.cjs +247 -0
  118. package/lib/core/breakthrough/voice-scaffold.test.cjs +251 -0
  119. package/lib/core/directive-envelope.cjs +175 -0
  120. package/lib/core/directive-envelope.test.cjs +225 -0
  121. package/lib/core/doctor/class-m-brain-smoke.cjs +278 -0
  122. package/lib/core/doctor/class-m-brain-smoke.test.cjs +310 -0
  123. package/lib/core/first-touch-version-stamper.cjs +113 -0
  124. package/lib/core/larry-thinness-acknowledgment.cjs +64 -0
  125. package/lib/core/larry-thinness-acknowledgment.test.cjs +97 -0
  126. package/lib/core/llm-name-suggester.cjs +194 -0
  127. package/lib/core/llm-name-suggester.test.cjs +132 -0
  128. package/lib/core/mcp-profiles.cjs +1 -1
  129. package/lib/core/migration-snapshot.cjs +172 -0
  130. package/lib/core/migration-snapshot.test.cjs +174 -0
  131. package/lib/core/mindrian-brain-shim.test.cjs +214 -0
  132. package/lib/core/mva-orchestrator.cjs +41 -0
  133. package/lib/core/mva-telemetry.cjs +31 -143
  134. package/lib/core/navigation/edges.cjs +35 -0
  135. package/lib/core/navigation/memory-events.cjs +126 -0
  136. package/lib/core/room-auto-create.cjs +318 -0
  137. package/lib/core/room-auto-create.test.cjs +198 -0
  138. package/lib/core/room-discard-cascade.cjs +225 -0
  139. package/lib/core/room-discard-cascade.test.cjs +135 -0
  140. package/lib/core/room-name-validator.cjs +132 -0
  141. package/lib/core/room-name-validator.test.cjs +156 -0
  142. package/lib/core/room-naming-selector.cjs +357 -0
  143. package/lib/core/room-naming-selector.test.cjs +277 -0
  144. package/lib/core/room-receipt-emit.cjs +63 -0
  145. package/lib/core/room-skeleton-scaffold.cjs +315 -0
  146. package/lib/core/room-skeleton-scaffold.test.cjs +291 -0
  147. package/lib/core/rs-nl-to-query.cjs +1 -1
  148. package/lib/core/stale-copy-scanner.cjs +190 -0
  149. package/lib/core/state-aware-router.cjs +78 -0
  150. package/lib/core/telemetry/schema.cjs +168 -0
  151. package/lib/core/telemetry/schema.test.cjs +124 -0
  152. package/lib/core/telemetry/validator.cjs +200 -0
  153. package/lib/core/telemetry/validator.test.cjs +188 -0
  154. package/lib/core/telemetry/writer.cjs +141 -0
  155. package/lib/core/telemetry/writer.test.cjs +331 -0
  156. package/lib/core/terminal-capability.cjs +88 -0
  157. package/lib/core/tier0-messaging.cjs +109 -0
  158. package/lib/core/tier0-messaging.test.cjs +218 -0
  159. package/lib/core/venture-shape-nudge.cjs +163 -0
  160. package/lib/core/venture-shape-nudge.test.cjs +161 -0
  161. package/lib/core/visual-ops.cjs +70 -2
  162. package/lib/hmi/selector-dispatcher.cjs +90 -1
  163. package/lib/hmi/shape-f7-breakthrough-renderer.cjs +222 -0
  164. package/lib/hmi/shape-f7-breakthrough-renderer.test.cjs +233 -0
  165. package/lib/memory/body-shape-coverage.test.cjs +268 -0
  166. package/lib/memory/brain-derivation-graceful-degradation.test.cjs +2 -2
  167. package/lib/memory/doctor-deprecation-surface.test.cjs +185 -0
  168. package/lib/memory/first-touch-version.test.cjs +198 -0
  169. package/lib/memory/help-coverage.test.cjs +108 -0
  170. package/lib/memory/help-renderer.test.cjs +145 -0
  171. package/lib/memory/mos-status-renderer.test.cjs +2 -2
  172. package/lib/memory/navigation-engine-core.test.cjs +1 -1
  173. package/lib/memory/palette-consistency.test.cjs +127 -0
  174. package/lib/memory/pending-tension-store.cjs +80 -0
  175. package/lib/memory/render-v2-disposition.test.cjs +199 -0
  176. package/lib/memory/run-feynman-tests.cjs +223 -0
  177. package/lib/memory/sessionstart-coordinator.test.cjs +446 -0
  178. package/lib/memory/skill-vs-code-drift.test.cjs +257 -0
  179. package/lib/memory/soft-alias.test.cjs +144 -0
  180. package/lib/memory/stale-copy-scanner.test.cjs +291 -0
  181. package/lib/memory/state-aware-router.test.cjs +90 -0
  182. package/lib/memory/statusline-two-row.test.cjs +338 -0
  183. package/lib/memory/terminal-capability.test.cjs +155 -0
  184. package/lib/render/ROOM.md +74 -22
  185. package/lib/sessionstart/budget-compressor.cjs +130 -0
  186. package/lib/sessionstart/contributor-interface.cjs +134 -0
  187. package/lib/sessionstart/contributor-isolator.cjs +128 -0
  188. package/lib/sessionstart/precedence-ladder.cjs +47 -0
  189. package/lib/statusline/governing-thought-truncator.cjs +45 -0
  190. package/lib/statusline/two-row-renderer.cjs +186 -0
  191. package/lib/statusline/version-resolver.cjs +81 -0
  192. package/package.json +1 -1
  193. package/references/visual/ROOM.md +55 -0
  194. package/references/visual/palette.json +54 -0
  195. package/skills/larry-personality/SKILL.md +34 -0
  196. package/skills/ui-system/SKILL.md +109 -1
  197. package/skills/ui-system/rules/dual-palette.md +156 -0
  198. package/skills/ui-system/rules/glyph-disambiguation.md +171 -0
  199. package/skills/ui-system/rules/shape-f-zero-and-six.md +169 -0
package/commands/query.md CHANGED
@@ -1,9 +1,14 @@
1
1
  ---
2
2
  name: query
3
- description: Query the knowledge graph in natural language
4
- argument-hint: [question]
3
+ description: "[Deprecated] Query the knowledge graph in natural language (use /mos:graph)"
4
+ help_jtbd: "Ask your room any question; get the answer as graph paths (deprecated: use /mos:graph)."
5
+ body_shape: D
6
+ argument-hint: "[question]"
5
7
  serves_jtbd: ["audit-room", "explore"]
6
- teaching: "When you need to ask the knowledge graph something specific, /mos:query translates natural language into the right traversal and returns the answer with its graph path."
8
+ deprecated: true
9
+ deprecated_redirect: "graph"
10
+ deprecated_removal: "v1.14.0"
11
+ teaching: "Deprecated alias. Use /mos:graph to ask natural-language questions of the knowledge graph; query and graph share the same translator. Scheduled removal: v1.14.0."
7
12
  allowed-tools:
8
13
  - Read
9
14
  - Bash
@@ -11,115 +16,32 @@ allowed-tools:
11
16
 
12
17
  # /mos:query
13
18
 
14
- You are Larry. This command lets users ask natural language questions about relationships between their room artifacts. You translate questions to SQL, execute against the room graph (SQLite), and return formatted insights.
19
+ > Deprecated. /mos:query now redirects to /mos:graph. Scheduled removal: v1.14.0. Use /mos:graph going forward.
15
20
 
16
- ## Usage
21
+ You are Larry. The user invoked /mos:query. Per D-09 (LOCKED 2026-05-16, Phase 121.5-08 Sub-plan J) /mos:query is a soft-alias stub for the v1.13.x window. The canonical surface is /mos:graph.
17
22
 
18
- ```
19
- /mos:query <natural language question>
20
- ```
21
-
22
- ## Examples
23
-
24
- - `/mos:query What contradicts my pricing assumption?`
25
- - `/mos:query Which sections are most connected?`
26
- - `/mos:query What informs my solution design?`
27
- - `/mos:query Show all convergent themes across sections`
28
- - `/mos:query What artifacts are in market-analysis?`
29
- - `/mos:query Find all cross-section relationships`
30
-
31
- ## How It Works
32
-
33
- 1. **Parse the question** -- understand what the user is asking about (relationships, sections, artifacts, contradictions, themes).
34
- 2. **Load the graph schema** -- read `docs/lazygraph-schema.md` for node types, edge types, and SQL patterns.
35
- 3. **Generate SQL** -- translate the natural language question into a SQL query against the nodes/edges tables.
36
- 4. **Execute the query** -- use `lazygraph-ops.cjs` functions:
37
- ```javascript
38
- const { openGraph, queryGraph, closeGraph } = require('./lib/core/lazygraph-ops.cjs');
39
- const { db, conn } = await openGraph('room');
40
- const results = await queryGraph(conn, sqlQuery);
41
- ```
42
- 5. **Format results** -- present findings as Larry-style insights, not raw data tables. Explain what the relationships mean for the venture.
23
+ ## Steps
43
24
 
44
- ## Step 1: Check for Room and Graph
25
+ 1. Emit the deprecation note above as a single cyan line (Larry voice; no em-dash; one sentence per skills/ui-system/SKILL.md Section 6).
45
26
 
46
- If no `room/` directory exists:
47
- > "No Data Room yet. Run `/mos:new-project` to get started, then file some artifacts before querying."
27
+ 2. Invoke /mos:graph with the user's original arguments (the natural-language question). Run:
48
28
 
49
- STOP.
50
-
51
- If the room exists but has no `.mindrian/room.db` file, auto-initialize by running a graph rebuild:
52
-
53
- ```javascript
54
- const { openGraph, rebuildGraph } = require('./lib/core/lazygraph-ops.cjs');
55
- const { db, conn } = await openGraph('room');
56
- await rebuildGraph(conn, 'room');
29
+ ```bash
30
+ node "${CLAUDE_PLUGIN_ROOT}/scripts/soft-alias-runner.cjs" --from query --to "graph" --remaining-args $ARGUMENTS
57
31
  ```
58
32
 
59
- > "I just built your knowledge graph for the first time. Let me answer your question..."
60
-
61
- ## Step 2: Generate and Execute SQL
62
-
63
- Read `docs/lazygraph-schema.md` for the full schema reference and example query patterns.
64
-
65
- **Translation guidelines:**
66
- - "What contradicts..." -> `SELECT source, target FROM edges WHERE type = 'CONTRADICTS'`
67
- - "What informs..." -> `SELECT source, target FROM edges WHERE type = 'INFORMS'`
68
- - "What enables..." -> `SELECT source, target FROM edges WHERE type = 'ENABLES'`
69
- - "Which sections..." -> `SELECT target, COUNT(*) FROM edges WHERE type = 'BELONGS_TO' GROUP BY target ORDER BY COUNT(*) DESC`
70
- - "Show connections..." -> `SELECT * FROM edges WHERE source = ? OR target = ?`
71
- - "How connected is..." -> `SELECT COUNT(*) FROM edges WHERE source = ? OR target = ?`
72
-
73
- **SQLite notes:**
74
- - Use json_extract(properties, '$.field') to access JSON properties on nodes and edges
75
- - Standard SQL syntax -- no graph-specific extensions needed
76
- - All node properties stored as JSON in the properties column
77
-
78
- ## Step 3: Format Results as Insights
79
-
80
- Never return raw query output. Always interpret results in Larry's voice.
81
-
82
- **For contradictions:**
83
- > "I found 2 contradictions touching your pricing model. Your market-analysis/competitor-review says premium pricing is sustainable, but your financial-model/unit-economics suggests price sensitivity. Worth reconciling -- these two sections are pulling in different directions."
84
-
85
- **For informational queries:**
86
- > "3 artifacts inform your solution design: your problem-definition/core-problem (the foundation), market-analysis/customer-interviews (real voices), and competitive-analysis/gap-analysis (where you fit). That's a solid chain of reasoning."
87
-
88
- **For empty results:**
89
- > "No results for that query. This could mean the relationship hasn't been captured yet. Try filing more artifacts with [[cross-references]] to build the graph, or rephrase your question."
90
-
91
- **For statistics:**
92
- > "Your knowledge graph has 12 artifacts across 5 sections, with 8 INFORMS edges and 2 CONTRADICTS. The market-analysis section is your most connected -- 4 artifacts referencing other sections."
93
-
94
- ## Requirements
95
-
96
- - Room must have artifacts filed. Run `/mos:room` first to check room status.
97
- - First query auto-initializes the graph if `.mindrian/room.db` does not exist.
98
- - Cross-references between sections require `[[wikilinks]]` in artifact content.
99
- - ENABLES and INVALIDATES edges require explicit frontmatter markers (`enables:` and `invalidates:` fields).
100
-
101
- ## Graph Schema Reference
102
-
103
- See `docs/lazygraph-schema.md` for the complete schema including:
104
- - All node types and properties
105
- - All relationship types with directions
106
- - Example SQL query patterns
107
- - SQLite query notes
33
+ The runner emits `{redirect, deprecation_note, args, ok}`. Use the redirect to confirm the target, then proceed with /mos:graph behavior. The user sees ONE deprecation note + the graph traversal output.
108
34
 
109
- ## Tier 2: Semantic Search (Optional)
35
+ 3. Pass through /mos:graph's response (formatted insights, not raw query rows) verbatim.
110
36
 
111
- When Pinecone is configured (`PINECONE_API_KEY` and `PINECONE_INDEX` environment variables set), queries can also leverage semantic similarity search -- finding related artifacts not just by structural links but by meaning.
37
+ ## Why this is a soft-alias
112
38
 
113
- This enables questions like:
114
- - "What else discusses customer acquisition costs?" (semantic match, no wikilink needed)
115
- - "Find artifacts similar to my pricing model" (embedding similarity)
39
+ Cluster 5 audit (2026-05-15) found that /mos:query and /mos:graph both translated natural language to SQL/Cypher against room.db. Two commands, identical translator, different names. Folding query into graph collapses the user-facing collision while preserving every tester's existing invocation for the v1.13.x window.
116
40
 
117
- Tier 2 is optional. All structural queries work without Pinecone.
41
+ Per D-09 the old command stays as a soft-alias stub for v1.13.x; removal is scheduled v1.14.0. CHANGELOG announces the rename.
118
42
 
119
- ## Voice Rules
43
+ ## Cross-references
120
44
 
121
- - Larry's voice throughout. Interpret graph results, don't just dump data.
122
- - Frame contradictions as opportunities for clarity, not problems.
123
- - Frame INFORMS chains as reasoning strength.
124
- - Always suggest a next action: "Want me to dig deeper into that contradiction?" or "Should I check what else informs this section?"
125
- - If the graph is sparse, encourage more cross-referencing: "Your graph would be richer with more [[wikilinks]] between sections."
45
+ - `commands/graph.md` -- the canonical target with the full graph query translator.
46
+ - `scripts/soft-alias-runner.cjs` -- the shared runner.
47
+ - Canon Part 7 (Reuse Before Build) -- consolidation rationale.
package/commands/radar.md CHANGED
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: radar
3
3
  description: Track Claude capabilities that may help MindrianOS
4
+ help_jtbd: "Get a radar view of where your room is strong + weak."
5
+ body_shape: A
4
6
  serves_jtbd: ["understand-market"]
5
7
  teaching: "When new Claude capabilities ship that might change what MindrianOS can do, /mos:radar tracks them so you do not have to. Capability awareness as a habit, not a one-time scan."
6
8
  allowed-tools:
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: reanalyze
3
3
  description: Re-analyze filed meetings for new patterns
4
+ help_jtbd: "Re-run analysis on a single artifact or section."
4
5
  body_shape: E (Action Report)
5
6
  body_shape_detail: Before/after delta showing new insights discovered
6
7
  serves_jtbd: ["file-meeting"]
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: research
3
3
  description: Research the web and cross-reference with Brain
4
+ help_jtbd: "Spawn a research sub-agent for a specific question."
5
+ body_shape: C
4
6
  argument-hint: [topic]
5
7
  serves_jtbd: ["explore", "understand-market"]
6
8
  teaching: "When you need fresh evidence from the web cross-referenced with the Brain methodology graph, /mos:research runs the dual-source pull. Public signal plus calibrated framework."
package/commands/room.md CHANGED
@@ -1,7 +1,9 @@
1
1
  ---
2
2
  name: room
3
3
  description: View, launch, or navigate the Data Room
4
+ help_jtbd: "Open your current room's view in this terminal."
4
5
  argument-hint: [overview|<section>]
6
+ body_shape: C
5
7
  body_shape_overview: B (Semantic Tree)
6
8
  body_shape_section: C (Room Card)
7
9
  serves_jtbd: ["audit-room"]
package/commands/rooms.md CHANGED
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: rooms
3
3
  description: List, switch, or archive project rooms
4
+ help_jtbd: "List, switch, archive, or organize rooms in ~/MindrianRooms/."
4
5
  argument-hint: [list|switch|archive|park]
5
6
  body_shape: B (Semantic Tree)
6
7
  serves_jtbd: ["audit-room"]
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: root-cause
3
3
  description: Trace root cause via 5-Whys, Fishbone, Fault Tree
4
+ help_jtbd: "Trace the root cause of a symptom in your venture."
5
+ body_shape: "methodology"
4
6
  serves_jtbd: ["find-problem"]
5
7
  teaching: "When the symptom keeps coming back, /mos:root-cause traces it via 5-Whys, Fishbone, and Fault Tree. Treats the cause, not the recurrence."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: rs-experts
3
3
  description: Resolve the expert network for a topic via Aura Cypher MATCH
4
+ help_jtbd: "Surface the expert profiles for a reverse salient."
4
5
  body_shape: D (Comparison Matrix)
5
6
  serves_jtbd: ["find-bottleneck", "connect-domains"]
6
7
  teaching: "When you need to know who in the world is working on a reverse salient you found, /mos:rs-experts resolves the expert network via Brain Cypher MATCH. Routes you to the people who already know."
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: rs-explain
3
3
  description: Bidirectional NL-Graph entry point. NL question to graph queries to Larry-voiced explanation.
4
+ help_jtbd: "Explain a reverse salient finding in plain language."
4
5
  body_shape: E (Action Report)
5
6
  serves_jtbd: ["find-bottleneck"]
6
7
  teaching: "When you have a question about a Reverse Salient discovery, /mos:rs-explain takes natural language in and returns a Larry-voiced explanation grounded in the graph. Bidirectional NL to graph and back."
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: rs-fetch
3
3
  description: Run the full Reverse Salient discovery pipeline for a topic
4
+ help_jtbd: "Fetch the latest reverse salient analysis for your room."
4
5
  body_shape: E (Action Report)
5
6
  serves_jtbd: ["find-bottleneck", "surface-contradiction"]
6
7
  teaching: "When you need the full Reverse Salient pipeline run on a topic, /mos:rs-fetch executes the discovery end-to-end: corpus, math, cross-domain match, thesis. The complete sweep, not a sample."
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: rs-thesis
3
3
  description: Read the thesis for a prior Reverse Salient discovery
4
+ help_jtbd: "Compose the thesis statement from your reverse salient findings."
4
5
  body_shape: E (Action Report)
5
6
  serves_jtbd: ["find-bottleneck"]
6
7
  teaching: "When you ran a Reverse Salient discovery earlier and want the thesis read back, /mos:rs-thesis surfaces the analytic conclusion in plain language. Best for revisiting old findings before a meeting."
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: scenario-plan
3
3
  description: Build a 2x2 scenario matrix of plausible futures
4
+ help_jtbd: "Branch into scenarios and compare outcomes."
5
+ body_shape: "methodology"
4
6
  serves_jtbd: ["compare-options", "plan-execution"]
5
7
  teaching: "When the future could go two different ways on two key uncertainties, /mos:scenario-plan builds the 2x2 matrix and names each quadrant. Forces you to plan for the world you do not expect."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: scheduled-tasks
3
3
  description: Define Cowork scheduled tasks for the room
4
+ help_jtbd: "View and manage scheduled background sweeps."
4
5
  body_shape: E (Action Report)
5
6
  serves_jtbd: ["plan-execution"]
6
7
  teaching: "When you want Cowork to run something on a schedule against this room, /mos:scheduled-tasks defines the recurring job. Best for nightly grant sweeps or weekly meeting digests."
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: score-innovation
3
3
  description: Score cross-domain innovation via HSI
4
+ help_jtbd: "Score the innovation potential of your venture."
5
+ body_shape: "methodology"
4
6
  serves_jtbd: ["compare-options", "validate-idea"]
5
7
  teaching: "When you are choosing between cross-domain innovation candidates, /mos:score-innovation runs HSI scoring to rank them by semantic surprise. The math reveals which idea is actually novel."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
package/commands/scout.md CHANGED
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: scout
3
3
  description: Run sentinel scans across the room
4
+ help_jtbd: "Scout the competitive landscape for a specific axis."
4
5
  body_shape: E (Action Report)
5
6
  serves_jtbd: ["explore", "understand-market"]
6
7
  teaching: "When you want background scans running across the room without driving them yourself, /mos:scout fires the sentinel checks. The proactive layer, not the reactive one."
package/commands/setup.md CHANGED
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: setup
3
3
  description: Configure optional integrations (Brain, Velma)
4
+ help_jtbd: "Add optional integrations: graph, Brain, MCP servers."
5
+ body_shape: E
4
6
  argument-hint: [brain|velma|graph]
5
7
  serves_jtbd: ["explore"]
6
8
  teaching: "When you want to wire optional integrations like Brain or Velma, /mos:setup walks you through configuration. MindrianOS works without them; they make it work harder."
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: snapshot
3
3
  description: Package a Data Room snapshot for sharing
4
+ help_jtbd: "Capture a snapshot of your room at this moment."
5
+ body_shape: E
4
6
  argument-hint: '[<room-path>] [--open]'
5
7
  serves_jtbd: ["prepare-pitch", "audit-room"]
6
8
  teaching: "When you need a frozen Data Room artifact to share with someone outside the team, /mos:snapshot packages everything into a portable bundle. Read-only by design."
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: speakers
3
3
  description: Show who spoke in your meetings and their roles
4
+ help_jtbd: "Surface speaker profiles from filed meetings."
4
5
  body_shape: C (Room Card)
5
6
  body_shape_detail: Each speaker as a card with role, expertise, meeting count
6
7
  serves_jtbd: ["file-meeting"]
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: splash
3
3
  description: Display the MindrianOS Mondrian banner
4
- body_shape: raw
4
+ help_jtbd: "See the MindrianOS welcome panel + version."
5
+ body_shape: E
5
6
  serves_jtbd: ["explore"]
6
7
  teaching: "When you want the MindrianOS Mondrian banner, /mos:splash displays it. Mostly decorative; useful for screenshots and demo openings."
7
8
  allowed-tools:
@@ -14,12 +15,14 @@ Display the MindrianOS De Stijl Mondrian banner + the owned-emotion tagline (D-0
14
15
 
15
16
  ## What to do
16
17
 
17
- Run the banner script. It auto-reads the version from plugin.json -- no arguments needed:
18
+ Run the banner script. It auto-reads the version from plugin.json -- no arguments needed. The banner now stamps the running version of record at the top per Phase 121.5-05 Sub-plan F (SEED-007 absorption); ensure the response shows the banner output verbatim so the user sees "MindrianOS v<version>" without typing `claude plugin list`:
18
19
 
19
20
  ```bash
20
21
  bash "${CLAUDE_PLUGIN_ROOT}/scripts/banner"
21
22
  ```
22
23
 
24
+ The first line of the banner output is the canonical version stamp -- format `MindrianOS v<version>`, sourced from `${CLAUDE_PLUGIN_ROOT}/lib/core/first-touch-version-stamper.cjs` (`stampVersion('splash')` returns the long form `MindrianOS v<version> -- conversation as the product surface` if you need to echo the stamp in prose).
25
+
23
26
  After the banner renders, print the owned-emotion tagline on its own line, verbatim (this is `lib/copy/115-spec-strings.cjs` SPLASH_COPY -- do NOT paraphrase per Pitfall 1):
24
27
 
25
28
  > Stuck on a decision you can't name? Let's find the shape of it.
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: status
3
3
  description: Show governing thought per section + health glyphs
4
+ help_jtbd: "See your room's section-by-section status at a glance."
4
5
  argument-hint: "[section] [--stale-only]"
5
6
  body_shape: E (Action Report)
6
7
  serves_jtbd: ["audit-room", "explore"]
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: structure-argument
3
3
  description: Structure an argument with Minto + SCQA + MECE
4
+ help_jtbd: "Build a Minto-Pyramid argument from your room's evidence."
5
+ body_shape: "methodology"
4
6
  serves_jtbd: ["validate-idea", "explore"]
5
7
  teaching: "When an argument is muddled and you cannot say why, /mos:structure-argument restructures it with Minto pyramid, SCQA, and MECE. The right structure usually surfaces the missing premise."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: suggest-next
3
3
  description: Suggest the next move using the room graph
4
+ help_jtbd: "Get the next move Larry recommends, ranked."
5
+ body_shape: B
4
6
  serves_jtbd: ["plan-execution", "explore"]
5
7
  teaching: "When you finish a step and want Larry to recommend the next move, /mos:suggest-next reads the room graph and proposes 3-5 options with reasons. The Navigation Engine made visible."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: systems-thinking
3
3
  description: Map feedback loops, stocks, and flows
4
+ help_jtbd: "Apply systems-thinking lenses to a problem."
5
+ body_shape: "methodology"
4
6
  serves_jtbd: ["find-bottleneck"]
5
7
  teaching: "When the dynamics matter more than the parts, /mos:systems-thinking maps feedback loops, stocks, and flows. Surfaces where the leverage actually lives in the system."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: think-hats
3
3
  description: Rotate through De Bono's Six Thinking Hats
4
+ help_jtbd: "Get a six-thinking-hats pass from the AI team."
5
+ body_shape: "methodology"
4
6
  serves_jtbd: ["explore", "compare-options"]
5
7
  teaching: "When the team keeps wearing the same hat and missing perspectives, /mos:think-hats rotates them through de Bono's six. The discomfort is the point; that is where the new thought lives."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: update
3
3
  description: Check for MindrianOS updates and install via Claude Code's native plugin loader
4
+ help_jtbd: "Update the plugin to the latest version."
5
+ body_shape: E
4
6
  argument-hint: [check|reapply|force]
5
7
  serves_jtbd: ["audit-room"]
6
8
  teaching: "When you suspect MindrianOS has a newer version waiting, /mos:update checks and installs via Claude Code's native plugin loader. Stale plugins quietly diverge from the docs."
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: user-needs
3
3
  description: Map user needs with importance vs satisfaction
4
+ help_jtbd: "Map user needs against your value proposition."
5
+ body_shape: "methodology"
4
6
  serves_jtbd: ["find-problem"]
5
7
  teaching: "When you need to map what users actually want versus what they say they want, /mos:user-needs plots importance against satisfaction. The gap is where the opportunity lives."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: validate
3
3
  description: Validate ideas via importance-satisfaction scoring
4
+ help_jtbd: "Validate a specific claim or hypothesis against evidence."
5
+ body_shape: C
4
6
  serves_jtbd: ["validate-idea"]
5
7
  teaching: "When an idea needs a real test before more investment, /mos:validate runs importance-satisfaction scoring against the customer segment. Validation is a measurement, not a feeling."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: validate-proposition
3
3
  description: Score your value proposition against 3 VP gates
4
+ help_jtbd: "Compose the value proposition canvas for your room."
5
+ body_shape: "methodology"
4
6
  serves_jtbd: ["validate-idea", "prepare-pitch"]
5
7
  teaching: "When you have a value proposition but no proof it holds, /mos:validate-proposition scores it against the three PWS VP gates with sequential math. A clean gate failure beats a vague pass."
6
8
  # --- Phase 122 workflow-layer frontmatter ---
package/commands/vault.md CHANGED
@@ -1,8 +1,10 @@
1
1
  ---
2
2
  name: vault
3
3
  description: Export the Data Room as an Obsidian vault
4
+ help_jtbd: "Export your room as an Obsidian vault."
4
5
  argument-hint: '[<room-name>] [--path <dir>]'
5
6
  disable-model-invocation: true
7
+ body_shape: E
6
8
  body_shape_overview: E (Mini Report)
7
9
  serves_jtbd: ["prepare-pitch"]
8
10
  teaching: "When you want the Data Room available in Obsidian for offline reading, /mos:vault exports it as a nested vault with wikilinks intact. Graph view comes free."
@@ -1,10 +1,14 @@
1
1
  ---
2
2
  name: visualize
3
- description: Open room diagrams in the browser
4
- argument-hint: [structure|graph|chart]
3
+ description: "[Deprecated] Open room diagrams in the browser (use /mos:dashboard --mermaid)"
4
+ help_jtbd: "Generate visualizations of your room's graph (deprecated: use /mos:dashboard --mermaid)."
5
+ argument-hint: "[structure|graph|chart]"
5
6
  body_shape: D (Document View)
6
7
  serves_jtbd: ["audit-room", "prepare-pitch"]
7
- teaching: "When you want to see the room as diagrams in a browser, /mos:visualize opens the visual layer. Best when a stakeholder needs the picture, not the prose."
8
+ deprecated: true
9
+ deprecated_redirect: "dashboard --mermaid"
10
+ deprecated_removal: "v1.14.0"
11
+ teaching: "Deprecated alias. Use /mos:dashboard --mermaid to open the De Stijl knowledge-graph viewer with Mermaid output; visualize folds into the dashboard surface. Scheduled removal: v1.14.0."
8
12
  ui_reference: skills/ui-system/SKILL.md
9
13
  allowed-tools:
10
14
  - Bash
@@ -13,41 +17,32 @@ allowed-tools:
13
17
 
14
18
  # /mos:visualize
15
19
 
16
- Open rich visual diagrams in the browser. Falls back to Mermaid code blocks in text output.
20
+ > Deprecated. /mos:visualize now redirects to /mos:dashboard --mermaid. Scheduled removal: v1.14.0. Use /mos:dashboard --mermaid going forward.
17
21
 
18
- ## Sub-commands
22
+ You are Larry. The user invoked /mos:visualize. Per D-09 + the Phase 121.5-08 planner decision (LOCKED 2026-05-16, Sub-plan J) /mos:visualize is a soft-alias stub for the v1.13.x window. The canonical surface is /mos:dashboard --mermaid.
19
23
 
20
- - `/mos:visualize room` -- Room structure flowchart (sections, stages, cross-references)
21
- - `/mos:visualize graph` -- Knowledge graph view (LazyGraph nodes and edges)
22
- - `/mos:visualize chain` -- Latest methodology chain flowchart
23
- - `/mos:visualize timeline` -- Meeting timeline (Gantt-style)
24
+ ## Steps
24
25
 
25
- ## Usage
26
+ 1. Emit the deprecation note above as a single cyan line (Larry voice; no em-dash; one sentence per skills/ui-system/SKILL.md Section 6).
26
27
 
27
- Larry runs `scripts/render-viz <subcommand>` to generate and open the diagram.
28
- If browser is unavailable, outputs Mermaid code block that renders in GitHub/Obsidian.
28
+ 2. Invoke /mos:dashboard --mermaid with the user's original arguments. Run:
29
29
 
30
- ## Examples
30
+ ```bash
31
+ node "${CLAUDE_PLUGIN_ROOT}/scripts/soft-alias-runner.cjs" --from visualize --to "dashboard --mermaid" --remaining-args $ARGUMENTS
32
+ ```
31
33
 
32
- User: "Show me the room structure as a diagram"
33
- Larry: Runs `/mos:visualize room` -- opens browser with interactive Mermaid flowchart
34
+ The runner emits `{redirect, deprecation_note, args, ok}`. Use the redirect to confirm the target, then proceed with /mos:dashboard --mermaid behavior. The user sees ONE deprecation note + the dashboard render (browser open OR Mermaid code block fallback).
34
35
 
35
- User: "What does my knowledge graph look like?"
36
- Larry: Runs `/mos:visualize graph` -- opens browser with force-directed graph view
36
+ 3. Pass through dashboard's output verbatim. The dashboard already renders the room as Cytoscape; the --mermaid flag adds the Mermaid code-block fallback that /mos:visualize used to provide.
37
37
 
38
- User: "Show the methodology chain for problem-definition"
39
- Larry: Runs `/mos:visualize chain` -- opens flowchart of diagnose -> framework -> apply -> file -> cross-ref -> graph-update
38
+ ## Why this is a soft-alias
40
39
 
41
- ## Output Formats
40
+ Cluster 5 audit (2026-05-15) flagged that /mos:visualize and /mos:dashboard both rendered the room's graph. The dashboard already opens the Cytoscape viewer; visualize's Mermaid output is one render mode of the same underlying graph. Folding visualize into /mos:dashboard --mermaid collapses the surface area while preserving every render mode (room structure, knowledge graph, methodology chain, meeting timeline).
42
41
 
43
- | Surface | Output |
44
- |---------|--------|
45
- | CLI | Browser opens with De Stijl themed HTML + Mermaid syntax to stdout |
46
- | Desktop | Mermaid code block returned (copy-pasteable, renders in Obsidian/GitHub) |
47
- | Cowork | Mermaid code block in shared context (renders for all participants) |
42
+ Per D-09 the old command stays as a soft-alias stub for v1.13.x; removal is scheduled v1.14.0. CHANGELOG announces the rename.
48
43
 
49
- ## Related
44
+ ## Cross-references
50
45
 
51
- - `/mos:room` -- Room state and section listing
52
- - `/mos:query` -- LazyGraph Cypher queries
53
- - `scripts/serve-dashboard` -- Full D3.js interactive dashboard
46
+ - `commands/dashboard.md` -- the canonical target with --mermaid as a render flag.
47
+ - `scripts/soft-alias-runner.cjs` -- the shared runner.
48
+ - Canon Part 7 (Reuse Before Build) -- consolidation rationale.
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: whitespace
3
3
  description: Detect whitespace gaps in the room's coverage
4
- body_shape: varies
4
+ help_jtbd: "Map the whitespace zones in your domain."
5
+ body_shape: "methodology"
5
6
  serves_jtbd: ["connect-domains", "find-problem"]
6
7
  teaching: "When you suspect a gap exists in the room's coverage of a domain, /mos:whitespace runs HSI scoring across the artifact corpus to find under-explored zones. Best after the room has 20+ entries."
7
8
  # --- Phase 122 workflow-layer frontmatter ---
package/commands/wiki.md CHANGED
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: wiki
3
3
  description: Open the Data Room wiki of room sections
4
+ help_jtbd: "Open your room as a localhost wiki, hyperlinks via graph."
4
5
  body_shape: D (Document View)
5
6
  serves_jtbd: ["audit-room", "prepare-pitch"]
6
7
  teaching: "When you want to read the Data Room as linked wiki pages, /mos:wiki opens the wiki view. Section by section, with cross-references rendered as hyperlinks."