dsh-mnemon 0.1.2 → 0.1.4

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 (138) hide show
  1. package/README.md +103 -129
  2. package/README.zh-CN.md +173 -0
  3. package/SECURITY.md +2 -2
  4. package/docs/README.md +4 -4
  5. package/docs/assets/diagrams/en/memory-system-flow.png +0 -0
  6. package/docs/assets/diagrams/zh-CN/memory-system-flow.png +0 -0
  7. package/docs/assets/media/dsh-mnemon-memory-system-demo-poster.jpg +0 -0
  8. package/docs/assets/media/dsh-mnemon-memory-system-demo.gif +0 -0
  9. package/docs/assets/media/dsh-mnemon-memory-system-demo.mp4 +0 -0
  10. package/docs/assets/screenshots/conversation-memory-jump.png +0 -0
  11. package/docs/assets/screenshots/conversation-save-dialog.png +0 -0
  12. package/docs/assets/screenshots/conversation-turn-memory.png +0 -0
  13. package/docs/assets/screenshots/document-create-dialog.png +0 -0
  14. package/docs/assets/screenshots/documents-markdown.png +0 -0
  15. package/docs/assets/screenshots/entities-context.png +0 -0
  16. package/docs/assets/screenshots/memory-content.png +0 -0
  17. package/docs/assets/screenshots/overview-memory-graph.png +0 -0
  18. package/docs/assets/screenshots/recall-agent-answer.png +0 -0
  19. package/docs/assets/screenshots/remember-dialog.png +0 -0
  20. package/docs/assets/screenshots/runtime-memory-add.png +0 -0
  21. package/docs/assets/screenshots/runtime-memory.png +0 -0
  22. package/docs/assets/screenshots/settings-memory-system.png +0 -0
  23. package/docs/assets/screenshots/status-overview.png +0 -0
  24. package/docs/assets/screenshots/version-check.png +0 -0
  25. package/docs/en/README.md +40 -32
  26. package/docs/en/architecture.md +6 -2
  27. package/docs/en/configuration.md +15 -6
  28. package/docs/en/development.md +24 -4
  29. package/docs/en/getting-started.md +77 -87
  30. package/docs/en/interfaces.md +98 -90
  31. package/docs/en/operations.md +103 -93
  32. package/docs/en/project-overview.md +90 -194
  33. package/docs/en/storage-model.md +6 -0
  34. package/docs/en/ui-guide.md +156 -0
  35. package/docs/zh-CN/README.md +37 -29
  36. package/docs/zh-CN/architecture.md +6 -2
  37. package/docs/zh-CN/configuration.md +15 -6
  38. package/docs/zh-CN/development.md +24 -4
  39. package/docs/zh-CN/getting-started.md +70 -80
  40. package/docs/zh-CN/interfaces.md +84 -76
  41. package/docs/zh-CN/operations.md +96 -86
  42. package/docs/zh-CN/project-overview.md +86 -190
  43. package/docs/zh-CN/storage-model.md +6 -0
  44. package/docs/zh-CN/ui-guide.md +160 -0
  45. package/lib/client.js +2354 -1944
  46. package/lib/client.js.map +1 -1
  47. package/lib/index.js +446 -39
  48. package/lib/types/channels.d.ts +4 -0
  49. package/lib/types/channels.d.ts.map +1 -0
  50. package/lib/types/channels.js +4 -0
  51. package/lib/types/channels.js.map +1 -0
  52. package/lib/types/client/MnemonSaveAction.d.ts.map +1 -1
  53. package/lib/types/client/MnemonSaveAction.js +4 -55
  54. package/lib/types/client/MnemonSaveAction.js.map +1 -1
  55. package/lib/types/client/MnemonSettingsCard.d.ts.map +1 -1
  56. package/lib/types/client/MnemonSettingsCard.js +4 -5
  57. package/lib/types/client/MnemonSettingsCard.js.map +1 -1
  58. package/lib/types/client/MnemonTurnTail.d.ts +3 -0
  59. package/lib/types/client/MnemonTurnTail.d.ts.map +1 -1
  60. package/lib/types/client/MnemonTurnTail.js +15 -3
  61. package/lib/types/client/MnemonTurnTail.js.map +1 -1
  62. package/lib/types/client/MnemonView.d.ts +4 -0
  63. package/lib/types/client/MnemonView.d.ts.map +1 -1
  64. package/lib/types/client/MnemonView.js +424 -97
  65. package/lib/types/client/MnemonView.js.map +1 -1
  66. package/lib/types/client/MnemonViewAppearance.d.ts +21 -0
  67. package/lib/types/client/MnemonViewAppearance.d.ts.map +1 -0
  68. package/lib/types/client/MnemonViewAppearance.js +67 -0
  69. package/lib/types/client/MnemonViewAppearance.js.map +1 -0
  70. package/lib/types/client/anchor.d.ts +1 -1
  71. package/lib/types/client/anchor.js +1 -1
  72. package/lib/types/client/api.d.ts +4 -0
  73. package/lib/types/client/api.d.ts.map +1 -1
  74. package/lib/types/client/api.js +10 -1
  75. package/lib/types/client/api.js.map +1 -1
  76. package/lib/types/client/index.d.ts.map +1 -1
  77. package/lib/types/client/index.js +22 -25
  78. package/lib/types/client/index.js.map +1 -1
  79. package/lib/types/client/locales.d.ts +126 -294
  80. package/lib/types/client/locales.d.ts.map +1 -1
  81. package/lib/types/client/locales.js +140 -308
  82. package/lib/types/client/locales.js.map +1 -1
  83. package/lib/types/client/settings.d.ts +1 -1
  84. package/lib/types/client/settings.d.ts.map +1 -1
  85. package/lib/types/client/settings.js +1 -1
  86. package/lib/types/client/settings.js.map +1 -1
  87. package/lib/types/client/sidebar-entry.d.ts +1 -1
  88. package/lib/types/client/sidebar-entry.d.ts.map +1 -1
  89. package/lib/types/client/sidebar-entry.js +3 -1
  90. package/lib/types/client/sidebar-entry.js.map +1 -1
  91. package/lib/types/client/workspace-mount.d.ts.map +1 -1
  92. package/lib/types/client/workspace-mount.js +8 -5
  93. package/lib/types/client/workspace-mount.js.map +1 -1
  94. package/lib/types/config.d.ts +1 -3
  95. package/lib/types/config.d.ts.map +1 -1
  96. package/lib/types/config.js +10 -12
  97. package/lib/types/config.js.map +1 -1
  98. package/lib/types/index.d.ts +2 -1
  99. package/lib/types/index.d.ts.map +1 -1
  100. package/lib/types/index.js +2 -1
  101. package/lib/types/index.js.map +1 -1
  102. package/lib/types/lifecycle.js +3 -3
  103. package/lib/types/lifecycle.js.map +1 -1
  104. package/lib/types/memory-bodies.d.ts +1 -0
  105. package/lib/types/memory-bodies.d.ts.map +1 -1
  106. package/lib/types/memory-bodies.js +7 -0
  107. package/lib/types/memory-bodies.js.map +1 -1
  108. package/lib/types/rpc.d.ts +5 -7
  109. package/lib/types/rpc.d.ts.map +1 -1
  110. package/lib/types/rpc.js +28 -8
  111. package/lib/types/rpc.js.map +1 -1
  112. package/lib/types/service.d.ts +2 -0
  113. package/lib/types/service.d.ts.map +1 -1
  114. package/lib/types/service.js +4 -0
  115. package/lib/types/service.js.map +1 -1
  116. package/lib/types/settings.d.ts.map +1 -1
  117. package/lib/types/settings.js +1 -2
  118. package/lib/types/settings.js.map +1 -1
  119. package/lib/types/version-updates.d.ts +61 -0
  120. package/lib/types/version-updates.d.ts.map +1 -0
  121. package/lib/types/version-updates.js +377 -0
  122. package/lib/types/version-updates.js.map +1 -0
  123. package/package.json +23 -8
  124. package/README.en.md +0 -199
  125. package/docs/zh-CN/assets/screenshots/conversation-recall.png +0 -0
  126. package/docs/zh-CN/assets/screenshots/conversation-writeback.png +0 -0
  127. package/docs/zh-CN/assets/screenshots/documents-markdown.png +0 -0
  128. package/docs/zh-CN/assets/screenshots/entities-context.png +0 -0
  129. package/docs/zh-CN/assets/screenshots/memory-content.png +0 -0
  130. package/docs/zh-CN/assets/screenshots/overview-memory-graph.png +0 -0
  131. package/docs/zh-CN/assets/screenshots/recall-agent-answer.png +0 -0
  132. package/docs/zh-CN/assets/screenshots/runtime-memory.png +0 -0
  133. package/lib/types/client/MnemonToolviews.d.ts +0 -19
  134. package/lib/types/client/MnemonToolviews.d.ts.map +0 -1
  135. package/lib/types/client/MnemonToolviews.js +0 -172
  136. package/lib/types/client/MnemonToolviews.js.map +0 -1
  137. /package/docs/{en/assets → assets/diagrams/en}/project-architecture.svg +0 -0
  138. /package/docs/{zh-CN/assets → assets/diagrams/zh-CN}/project-architecture.svg +0 -0
package/docs/en/README.md CHANGED
@@ -1,40 +1,48 @@
1
1
  # dsh-mnemon Documentation
2
2
 
3
- [简体中文](../zh-CN/README.md) | **English** | [Back to project home](../../README.en.md)
3
+ [简体中文](../zh-CN/README.md) | **English** | [Project home](../../README.md)
4
4
 
5
- These documents use the current implementation as the source of truth. The root README provides a quick overview; this section expands on design rationale, boundaries, transactional workflows, configuration, and operations.
5
+ This hub is organized by what you need to accomplish. New users should follow Getting Started, then use the visual guide for the interface. Reference documents are for deployment, integration, and development work.
6
6
 
7
- ## Recommended Reading Path
7
+ ## New-user path
8
8
 
9
- 1. [Project Overview](./project-overview.md): project positioning, the Mnemon-to-DSH integration boundary, the three-tier model, system architecture, and good fits.
10
- 2. [Getting Started](./getting-started.md): installation, initial configuration, and basic verification.
11
- 3. [Architecture](./architecture.md): boundaries between the DSH Host, Web Client, control layer, subagents, and the Mnemon CLI.
12
- 4. [Storage and the Three-Layer Memory Model](./storage-model.md): semantics and directory layout of Runtime Memory, Documents, and Memory Spaces.
13
- 5. [Lifecycle and Core Workflows](./workflows.md): recall, writes, background review, capacity maintenance, and archiving.
14
- 6. [Configuration Reference](./configuration.md): all settings, defaults, precedence, and provider requirements.
15
- 7. [WebUI, Tools, Commands, and RPC](./interfaces.md): all user-facing and model-facing entry points.
16
- 8. [Operations, Security, and Troubleshooting](./operations.md): locks, permissions, backup, recovery, and known limitations.
17
- 9. [Development and Verification](./development.md): module structure, tests, builds, and release checks.
18
- 10. [Roadmap](./roadmap.md): unfinished reliability, operations, and internationalization work.
19
- 11. [Security Policy](../../SECURITY.md): supported versions, private vulnerability-reporting channels, and scope.
9
+ 1. [Getting Started](./getting-started.md): install Mnemon and the plugin, choose storage, and complete first-run verification.
10
+ 2. [Sidebar and conversation UI guide](./ui-guide.md): learn Status, Runtime, Memory Spaces, Documents, and in-conversation entry points.
11
+ 3. [Project overview](./project-overview.md): understand the three-tier model, cross-agent sharing boundary, read/write boundaries, and complete flow.
20
12
 
21
- ## Terminology
13
+ ## Find a task
22
14
 
23
- | 中文 | English | Meaning |
15
+ | I want to… | Document |
16
+ |---|---|
17
+ | Decide which tier should retain something | [Storage and the three-tier model](./storage-model.md) |
18
+ | Share durable memory between DSH and other Mnemon-enabled agents | [Project overview: Cross-agent sharing](./project-overview.md#cross-agent-sharing-boundary) · [Configuration: Sharing scope](./configuration.md#choose-a-cross-agent-sharing-scope) |
19
+ | Learn when injection, recall, remembering, and archiving happen | [Lifecycle and workflows](./workflows.md) |
20
+ | Switch Sidebar / Buildin or global / workspace / custom storage | [Configuration reference](./configuration.md) |
21
+ | Understand workspace inspection versus the Agent's effective directory | [UI guide: Workspace mode](./ui-guide.md#workspace-mode-separating-inspection-from-execution) |
22
+ | Check or update Mnemon and dsh-mnemon | [Operations: Version checks and updates](./operations.md#version-checks-and-updates) |
23
+ | Back up, restore, or migrate the complete memory root | [Operations: Backup and recovery](./operations.md#backup-and-recovery) |
24
+ | Troubleshoot empty recall, misalignment, CLI, or provider errors | [Operations and troubleshooting](./operations.md#troubleshooting) |
25
+ | Use model tools, `/mnemon` commands, or internal RPC | [Interface reference](./interfaces.md) |
26
+ | Understand Host, workers, control plane, and data plane | [Architecture](./architecture.md) |
27
+ | Modify code, screenshots, tests, or releases | [Development and verification](./development.md) |
28
+ | See planned work | [Roadmap](./roadmap.md) |
29
+
30
+ ## Core terms
31
+
32
+ | Term | Code / alternate name | Meaning |
24
33
  |---|---|---|
25
- | 记忆体 | Memory Space | A native named Mnemon Store with its own `mnemon.db` |
26
- | 运行时热记忆 | Runtime Memory / hot memory | Compact user profile and working memory injected directly into every turn |
27
- | 项目档案 | Project Documents | Complete Markdown project knowledge managed by the plugin |
28
- | 活跃档案 | Active Document | A Document included in default near-field search |
29
- | 归档 | Archive | Original text that has a long-term index and does not count toward active capacity |
30
- | 沉淀 | Distill / supervised writeback | Persistent writes after LLM judgment, deduplication, and routing |
31
- | 召回 | Recall | Reading historical evidence from active Memory Spaces |
32
-
33
- Brand names, commands, tool names, configuration keys, RPC endpoints, and code symbols remain untranslated.
34
-
35
- ## Documentation Boundaries
36
-
37
- - Current user instructions and repository facts take precedence over historical memory.
38
- - `state/` is currently reserved; background review watermarks still exist only in Host process memory.
39
- - The main Web workspace is available in Chinese and English; command output, tool cards, and some backend diagnostics are not yet fully internationalized.
40
- - `docs/sedimentation-research.md` is a historical research record, not a specification or user guide.
34
+ | Memory System | 记忆系统 | The complete dsh-mnemon entry in DSH |
35
+ | Runtime Memory | USER / MEMORY | Hot memory projected into every turn |
36
+ | Project Documents | Documents / 档案 | Managed, searchable project knowledge that keeps full Markdown structure |
37
+ | Memory Space | 记忆体 | An independent, activatable, on-demand Mnemon Store |
38
+ | Cross-agent memory sharing | 跨 Agent 共享 | Mnemon-enabled agents use the same root and Store to share durable memory, not the complete DSH context |
39
+ | Remember | Distill / 沉淀 | Submit a candidate to a supervised subagent for qualification, dedupe, and writing |
40
+ | Recall | 召回 | Retrieve bounded evidence from active Memory Spaces |
41
+ | Archive | 归档 | Create a cold reference before moving an infrequently used Document out of active storage |
42
+
43
+ ## Documentation boundaries
44
+
45
+ - User documentation targets the v0.1.4 Sidebar-default experience while covering the compatible Buildin presentation.
46
+ - Architecture diagrams describe stable execution boundaries, not live monitoring. Use Status for current counts and versions.
47
+ - RPC is an internal Host-to-client protocol, not a promised stable external API.
48
+ - There is no formal fixed DSH / Mnemon version matrix yet. Back up and validate in an isolated root before upgrading.
@@ -8,14 +8,16 @@
8
8
 
9
9
  - DSH provides the root Agent, lifecycle events, subagent providers, tools, commands, settings, and Web extension points;
10
10
  - the plugin provides the control plane for three knowledge layers, routing policies, transactional barriers, and UI;
11
- - the local `mnemon` CLI provides named Stores, SQLite persistence, four graph types, recall, relationships, and soft deletion.
11
+ - the local `mnemon` CLI provides named Stores, SQLite persistence, four graph types, recall, relationships, and soft deletion, and defines the durable-data boundary shared with other Mnemon-enabled agents.
12
12
 
13
13
  ## Component Diagram
14
14
 
15
- [![dsh-mnemon runtime architecture](./assets/project-architecture.svg)](./assets/project-architecture.svg)
15
+ [![dsh-mnemon runtime architecture](../assets/diagrams/en/project-architecture.svg)](../assets/diagrams/en/project-architecture.svg)
16
16
 
17
17
  Solid lines show deterministic data or control paths; purple dashed lines show LLM-supervised paths. Runtime Memory and Documents use managed files directly. Only Memory Spaces call the local Mnemon CLI through `MnemonRunner`. Click the image to open the original SVG.
18
18
 
19
+ Cross-agent interoperability therefore applies only to Memory Spaces in the diagram: agents share durable memories and relations inside Mnemon Stores, not DSH conversation context, Runtime projections, or the Documents control plane. The plugin never pushes data to another agent; participants share by aligning their local Mnemon root and Store.
20
+
19
21
  ## Host Composition Root
20
22
 
21
23
  `src/index.ts::apply()` assembles the plugin in this order:
@@ -51,6 +53,8 @@ root Agent calls mnemon_recall
51
53
 
52
54
  Long-term semantic writes, relationships, soft deletion, and Memory Space creation, updates, and merges use the same pattern. Ordinary Runtime Memory and Document mutations first pass through the coordinator but are usually committed directly by the deterministic control layer; only capacity maintenance or archiving requires an additional worker.
53
55
 
56
+ Physical Memory Space deletion is a separate deterministic destructive action. The WebUI must show a second confirmation, then invoke native Mnemon `store remove` through the loopback write RPC; the directory registration is removed only after the CLI deletion succeeds.
57
+
54
58
  ## Two Types of Subagent
55
59
 
56
60
  ### `spawn`
@@ -12,7 +12,7 @@ $DSH_HOME/settings.yaml
12
12
 
13
13
  The default is commonly `~/.dsh/settings.yaml`. All current settings are marked `live`; after Save, the Host initializes a candidate runtime graph and then switches to it atomically.
14
14
 
15
- The Web settings card edits `displayMode`, `storageScope`, and `dataDir`. Other advanced settings must be changed directly in YAML.
15
+ The Web settings page edits `displayMode`, `storageScope`, and `dataDir`, plus the Turn memory and Save-to-memory switches under `mnemon-ui`. The same page also imports or exports a ZIP for the effective root. Other advanced settings must be changed directly in YAML.
16
16
 
17
17
  ## Complete Example
18
18
 
@@ -52,9 +52,8 @@ mnemon:
52
52
  | `idleReviewMs` | `30000` | 5000–600000 ms | Required continuous idle time after the threshold is reached |
53
53
  | `tabEnabled` | `true` | boolean | Whether to mount the Web entry selected by `displayMode`; Host RPC, commands, and Agent tools remain registered when off |
54
54
  | `writeEnabled` | `true` | boolean | Whether to expose semantic write tools, write RPC, and write commands |
55
- | `mnemon-ui.toolviews` | `false` | boolean | In-conversation memory tool cards for `mnemon_*` calls; off by default (opt-in), **applies live after saving** |
56
- | `mnemon-ui.turnBar` | `false` | boolean | Turn-tail memory activity bar; off by default (opt-in), **applies live after saving** |
57
- | `mnemon-ui.saveAction` | `false` | boolean | “Save to memory” action on finalized assistant replies; off by default (opt-in), **applies live after saving** |
55
+ | `mnemon-ui.turnBar` | `true` | boolean | Turn-tail memory activity bar; on by default, **applies live after saving** |
56
+ | `mnemon-ui.saveAction` | `true` | boolean | “Save to memory” icon and confirmation on finalized assistant replies; on by default, **applies live after saving** |
58
57
 
59
58
  Both the `mnemon` Host/storage namespace and the `mnemon-ui` browser-presentation namespace apply live. The storage root switches atomically only after the new runtime graph initializes successfully. Legacy `mnemon.conversationInteraction` values remain a migration default, but new saves write only to `mnemon-ui`.
60
59
 
@@ -67,7 +66,7 @@ MNEMON_DATA_DIR when non-empty
67
66
  otherwise ~/.mnemon
68
67
  ```
69
68
 
70
- Suitable for users who want Runtime, Documents, and Memory Spaces shared across multiple workspaces.
69
+ Suitable for users who want Runtime, Documents, and Memory Spaces shared across multiple workspaces. Other Mnemon-enabled agents can also share the Mnemon Memory Spaces when they use the same root.
71
70
 
72
71
  ### `workspace`
73
72
 
@@ -88,6 +87,16 @@ mnemon:
88
87
 
89
88
  `~` and `~/...` are also allowed. Relative paths are rejected.
90
89
 
90
+ ### Choose a Cross-Agent Sharing Scope
91
+
92
+ | Goal | Recommended scope | Notes |
93
+ |---|---|---|
94
+ | Share durable memory among local agents | `global` | Every participant uses `~/.mnemon` or the same `MNEMON_DATA_DIR` |
95
+ | Share one explicit data root | `custom` | Every participant configures the same absolute directory for isolation and backup |
96
+ | Share only inside one project | `workspace` | Every participant aligns its Mnemon root to that project's `<workspace>/.mnemon` |
97
+
98
+ Only the Mnemon durable tier under `data/<store>/mnemon.db` has native cross-agent interoperability. Runtime, Documents, DSH activation state, and UI metadata remain managed by dsh-mnemon.
99
+
91
100
  ## CLI Discovery Precedence
92
101
 
93
102
  ```text
@@ -173,7 +182,7 @@ routingGuidance=false
173
182
 
174
183
  ## Display Mode and the `tabEnabled` UI Switch
175
184
 
176
- `displayMode=sidebar` (the default) mounts the “Memory System” sidebar entry and its dedicated center-column workbench. `displayMode=buildin` instead registers the original DSH `conversation.view` tab. Saving first disposes the active entry and then mounts the target, so the two modes never appear simultaneously.
185
+ `displayMode=sidebar` (the default) mounts the “Memory System” sidebar entry and its dedicated center-column workbench with a minimal, logo-free skin aligned with official DSH panels. `displayMode=buildin` instead registers the original DSH `conversation.view` tab and preserves its existing visuals. The modes share the functional workbench while keeping appearance definitions isolated. Saving first disposes the active entry and then mounts the target, so the two modes never appear simultaneously.
177
186
 
178
187
  `tabEnabled=false` removes the currently selected Web entry live. Host RPC, commands, and tools remain registered across display-mode and enablement changes so an Agent or command already in progress stays valid.
179
188
 
@@ -106,10 +106,29 @@ Recommended scenarios:
106
106
  7. Documents: create, retrieve, update, manually archive, and leave original project files unchanged.
107
107
  8. Score-based review: light tasks do not trigger it; after reaching the threshold it waits for idle; a new turn can cancel it while preserving the watermark.
108
108
  9. Read-only: write tools, write commands, and write RPC are rejected while reads remain available.
109
- 10. Status and browser console: no unhandled errors or warnings.
109
+ 10. Sidebar: all four primary tabs, four Memory Space secondary tabs, stable headings, filters, and progressive loading work.
110
+ 11. Conversation UI: Turn memory appears only for completed turns with activity; links land correctly; canceling Save to memory performs no write.
111
+ 12. Settings: Sidebar / Buildin, storage scopes, and both conversation switches apply live without refresh.
112
+ 13. ZIP: export can be previewed and merged into an isolated custom root; damaged checksums are rejected.
113
+ 14. Versions: checking never installs; link/manual sources offer no unsafe update; successful updates trigger a fresh status check.
114
+ 15. Status and browser console: no unhandled errors or warnings.
110
115
 
111
116
  Capacity limits, CLI timeouts, revision conflicts, and Host restarts should be verified in a dedicated fault-injection environment.
112
117
 
118
+ ## Maintaining Documentation Visuals
119
+
120
+ Public UI screenshots live under `docs/assets/screenshots/`, shared by both language editions. Language-specific architecture diagrams live under `docs/assets/diagrams/zh-CN/` and `docs/assets/diagrams/en/`. When layout, primary copy, or defaults change:
121
+
122
+ 1. Use a real DSH Web profile, but first check that the frame contains no token, credential, or private personal data.
123
+ 2. Limit capture to inspection, filtering, expansion, and opening dialogs. When showing a write flow, stop before final confirmation.
124
+ 3. Replace screenshots with the same responsibility instead of accumulating versioned filenames. Add an asset only for a new user task.
125
+ 4. Refresh the README poster, GIF / MP4 demo, and both `ui-guide.md` files.
126
+ 5. Confirm PNG / JPEG extensions match actual encoding and that text is readable at original resolution.
127
+ 6. Remove unreferenced assets, stale Buildin layouts, and obsolete terminology.
128
+ 7. Run link/image checks, then open both READMEs and UI guides manually.
129
+
130
+ README demo assets are `docs/assets/media/dsh-mnemon-memory-system-demo.*`. The demo should cover Status, Runtime, Memory Spaces, Documents, and in-conversation confirmation without actually submitting memory, updating components, or changing settings through automation.
131
+
113
132
  ## Modifying Subagent Schemas
114
133
 
115
134
  DSH structured output supports only a compact JSON Schema subset:
@@ -142,7 +161,8 @@ There is currently no formal schema-migration framework, so persistent formats m
142
161
  - keep commands, configuration keys, paths, and code symbols exactly the same;
143
162
  - cross-link corresponding language pages with relative paths;
144
163
  - prefer accessible SVGs with no scripts or external resources for architecture overviews; keep directory trees, commands, formulas, and short protocols as copyable `text` / ASCII;
145
- - keep only summaries in the root READMEs and place details on one authoritative docs page.
164
+ - keep only summaries in the root READMEs and place details on one authoritative docs page;
165
+ - for every user-visible interface change, also inspect `ui-guide.md`, `getting-started.md`, `configuration.md`, and `operations.md`.
146
166
 
147
167
  When the Web locale changes, the Chinese key set remains the type source of truth. The English dictionary must satisfy `Record<MnemonKey, string>` and preserve the same placeholders.
148
168
 
@@ -151,7 +171,7 @@ When the Web locale changes, the Chinese key set remains the type source of trut
151
171
  ```text
152
172
  [ ] pnpm run verify
153
173
  [ ] review source and generated lib diffs
154
- [ ] validate package file list includes README.en.md and docs
174
+ [ ] validate package file list includes README.md, README.zh-CN.md, docs/assets, and bilingual docs
155
175
  [ ] install the built/local bundle into an isolated Web profile
156
176
  [ ] run real Mnemon CLI and WebUI smoke tests
157
177
  [ ] verify Chinese and English workspaces
@@ -160,7 +180,7 @@ When the Web locale changes, the Chinese key set remains the type source of trut
160
180
  [ ] back up any data root used for upgrade testing
161
181
  ```
162
182
 
163
- `package.json.files` currently publishes `lib`, the patch, both root READMEs, the public bilingual docs, and the License; the historical research ledger is excluded from the installed package.
183
+ `package.json.files` currently publishes `lib`, the patch, both root READMEs, centrally managed documentation visuals, the public bilingual docs, and the License.
164
184
 
165
185
  ## Publishing to npm
166
186
 
@@ -1,44 +1,30 @@
1
1
  # Getting Started
2
2
 
3
- [简体中文](../zh-CN/getting-started.md) | **English** | [Documentation Center](./README.md)
3
+ [简体中文](../zh-CN/getting-started.md) | **English** | [Documentation hub](./README.md)
4
+
5
+ This guide goes from a blank environment to the first verified recall. It uses Sidebar and global storage by default. If installation is complete, jump to [First verification](#6-complete-first-verification).
4
6
 
5
7
  ## 1. Prerequisites
6
8
 
7
9
  You need:
8
10
 
9
- - a DSH Web profile that can start successfully;
11
+ - a DSH Web profile that starts successfully;
10
12
  - a locally executable `mnemon` CLI;
11
- - a DSH subagent provider available for bounded subtasks.
12
-
13
- The exact provider requirements are:
13
+ - a DSH subagent provider for isolated memory tasks.
14
14
 
15
- ```text
16
- regular semantic operations
17
- -> prefer provider named "spawn"
18
- -> may fall back to another compatible provider
19
-
20
- scored background review
21
- -> requires provider named "fork"
22
- -> inheritsParentContext = true
23
-
24
- both paths require
25
- -> outputSchema
26
- -> toolFilter
27
- -> persona
28
- -> depthLimit
29
- ```
15
+ Regular semantic work prefers a provider named `spawn` with `outputSchema`, `toolFilter`, `persona`, and `depthLimit`. Optional score-based background review additionally requires a provider named `fork` with `inheritsParentContext=true`. Missing `fork` does not block deterministic pages or regular manual actions.
30
16
 
31
- The plugin does not declare a fixed minimum-version matrix for DSH and Mnemon in its code. **Verified baseline**: `dsh-mnemon` 0.1.0 has been verified end-to-end on a live web profile running `@deepseek-ai/dsh` 0.1.0-rc.6 (2026-08-13 snapshot); last verified 2026-08-14. Before upgrading, run the verification steps on this page against an isolated data directory.
17
+ The project does not declare a fixed minimum DSH / Mnemon matrix. This guide and its screenshots target dsh-mnemon v0.1.4. Back up and repeat this verification against an isolated root before upgrading.
32
18
 
33
19
  ## 2. Install Mnemon
34
20
 
35
- On macOS, the recommended installation method is Homebrew Cask:
21
+ Homebrew Cask is recommended on macOS:
36
22
 
37
23
  ```sh
38
24
  brew install --cask mnemon-dev/tap/mnemon
39
25
  ```
40
26
 
41
- On macOS or Linux, you can also install it with Go:
27
+ On macOS or Linux, Go is another option:
42
28
 
43
29
  ```sh
44
30
  go install github.com/mnemon-dev/mnemon@latest
@@ -50,116 +36,120 @@ Verify the binary:
50
36
  mnemon --version
51
37
  ```
52
38
 
53
- To inspect an upstream Store directly, you can also run `mnemon status`. This command opens the effective Store and may initialize default data or run migrations; do not treat it as a completely side-effect-free installation probe.
39
+ If DSH cannot find it on `PATH`, set `MNEMON_CLI_PATH` or configure an absolute `mnemon.cliPath`. `mnemon status` opens the effective Store and may initialize data or run upstream migrations, so it is not a side-effect-free installation probe.
54
40
 
55
- If DSH cannot find it on `PATH`, set `MNEMON_CLI_PATH` or configure an absolute path in `mnemon.cliPath`.
41
+ ## 3. Install dsh-mnemon
56
42
 
57
- ## 3. Install the Plugin
58
-
59
- Install it into the Web profile:
43
+ Install into the Web profile:
60
44
 
61
45
  ```sh
62
46
  dsh plugin --profile web add dsh-mnemon
63
47
  ```
64
48
 
65
- Pre-release builds not yet published to npm can be installed from git:
49
+ Use an absolute path for a development checkout:
66
50
 
67
51
  ```sh
68
- dsh plugin --profile web add "github:omdsh-dev/dsh-mnemon"
52
+ dsh plugin --profile web add "link:/absolute/path/to/dsh-mnemon"
69
53
  ```
70
54
 
71
- For a local development checkout:
55
+ Then start or restart the profile:
72
56
 
73
57
  ```sh
74
- dsh plugin --profile web add "link:/absolute/path/to/dsh-mnemon"
58
+ dsh --profile web
75
59
  ```
76
60
 
77
- The plugin package's `cordis.patch.yml` mounts the Host plugin; the Web client bundle registers the session workspace and plugin settings card.
78
-
79
- ### Upgrade and uninstall
80
-
81
- `dsh plugin` is a pnpm forwarder that runs inside the profile directory:
61
+ Upgrade and uninstall:
82
62
 
83
63
  ```sh
84
- # Upgrade
85
64
  dsh plugin --profile web update dsh-mnemon
86
-
87
- # Uninstall (also removes its bundle registration from the profile)
88
65
  dsh plugin --profile web remove dsh-mnemon
89
66
  ```
90
67
 
91
- Uninstalling never deletes memory data: `global` data stays in `~/.mnemon`, and `workspace` / `custom` data stays in their directories, so reinstalling picks up where you left off.
68
+ Uninstall removes the plugin registration, not memory data in global, workspace, or custom roots.
92
69
 
93
- To pause automatic reads/writes without uninstalling, turn off `writebackMode` / `recallMode` / `lifecycleEnabled` in the plugin configuration (see the [configuration reference](./configuration.md), “Toggle interactions”). To hide only the Web workspace, set `tabEnabled=false`; Host RPC, commands, and Agent tools remain available.
70
+ ## 4. Choose entry point and storage
94
71
 
95
- ## 4. Choose a Storage Scope
72
+ Open **Settings → Memory System**:
96
73
 
97
- Start the DSH Web profile:
74
+ [![Memory System settings for display, storage, conversation UI, and backup](../assets/screenshots/settings-memory-system.png)](../assets/screenshots/settings-memory-system.png)
98
75
 
99
- ```sh
100
- dsh --profile web
101
- ```
76
+ ### Display mode
102
77
 
103
- On the dedicated “Settings -> Memory System” page, first choose a display mode: the default `sidebar` uses a dedicated sidebar workbench, while `buildin` uses the original conversation-area tab. Saving switches live. Then choose a storage scope:
78
+ - **Sidebar** (default): a dedicated workbench opened from the DSH sidebar; recommended for most users.
79
+ - **Buildin**: the original conversation-area tab with its established visuals.
104
80
 
105
- | Scope | Root directory | Best suited for |
81
+ ### Storage location
82
+
83
+ | Scope | Root | Best suited for |
106
84
  |---|---|---|
107
- | `global` | `MNEMON_DATA_DIR` or `~/.mnemon` | Sharing one memory set across multiple workspaces |
108
- | `workspace` | `.mnemon` under each DSH workspace root | Project isolation and cross-workspace inspection |
109
- | `custom` | `dataDir` | An explicit disk, mounted volume, or dedicated data directory |
85
+ | **Global** (default) | `MNEMON_DATA_DIR` or `~/.mnemon` | Sharing one memory set across workspaces |
86
+ | **Workspace** | `<workspace>/.mnemon` | Project isolation with cross-workspace inspection in the workbench |
87
+ | **Custom** | `dataDir` | A dedicated disk, mounted volume, or explicit directory |
110
88
 
111
- Settings are written to `$DSH_HOME/settings.yaml` and apply live after Save. Switching scopes does not move existing data; to preserve it, stop writes first and migrate with a complete ZIP backup.
89
+ Save initializes a candidate runtime graph before atomically switching the Host. The page clears stale state and reloads automatically—no browser refresh is needed. Changing scope never migrates, merges, or deletes old data.
112
90
 
113
- After selecting `workspace`, the workbench header can switch the workspace being inspected. This choice controls only which memory set the workbench displays and maintains; Agent execution always follows the current session. A global warning appears when the two differ and offers one-click alignment.
91
+ In Workspace mode, the workbench selector changes only what data is being inspected. Agents, tools, and lifecycle hooks always use the current conversation's effective root. The header reports a mismatch and offers one-click alignment.
114
92
 
115
- ## 5. Create Your First Memory Space
93
+ ## 5. Open the Sidebar workbench
116
94
 
117
- With the default `sidebar` mode, click “Memory System” in the DSH sidebar. With `buildin`, open the “Memory System” tab in the conversation area:
95
+ Click **Memory System** in the sidebar, then start on **Status**:
118
96
 
119
- 1. Open the “Memory Spaces” page.
120
- 2. Create a narrowly scoped Memory Space, such as “Project Decisions.”
121
- 3. Its description should explain what belongs there and which tasks should recall it.
122
- 4. Enable its read toggle, or let the plugin activate it automatically after the first write.
97
+ [![Status with CLI, versions, Runtime, Memory Spaces, Documents, and storage root](../assets/screenshots/status-overview.png)](../assets/screenshots/status-overview.png)
123
98
 
124
- An empty Memory Space may remain inactive by default. Activation controls only the read scope; writes may target any registered Memory Space, and a successful write automatically activates the target.
99
+ Confirm that:
125
100
 
126
- ## 6. Verify the Complete Path
101
+ - the top right says Connected;
102
+ - Mnemon and dsh-mnemon show installed versions;
103
+ - the storage root matches your chosen scope;
104
+ - Runtime, Memory Spaces, and Documents report no errors.
127
105
 
128
- First inspect deterministic status:
106
+ If Mnemon is unavailable, run `command -v mnemon` and `mnemon --version`. See [Troubleshooting](./operations.md#troubleshooting) for other symptoms.
129
107
 
130
- ```text
131
- /mnemon status
132
- ```
108
+ ## 6. Complete first verification
133
109
 
134
- Then submit a stable, self-contained item that will remain useful in the future on the “Distill” page. The worker selects a Memory Space, checks for duplicates, and returns a structured receipt. Then verify recall:
110
+ ### Create a Memory Space
135
111
 
136
- ```text
137
- /mnemon recall <a focused query that should match the new item>
138
- ```
112
+ 1. Open **Memory Spaces → Overview**.
113
+ 2. Select **Create Memory Space**.
114
+ 3. Use a narrow name such as “Project Decisions.”
115
+ 4. Describe what belongs there and which tasks should recall it.
116
+ 5. Enable read activation.
117
+
118
+ ### Remember one test item
139
119
 
140
- Finally, check that:
120
+ Open **Remember** and enter something stable, self-contained, future-useful, and secret-free. Leave advanced options collapsed so the memory subagent can select a target, deduplicate, and distill.
141
121
 
142
- - the “Memory Spaces” page shows the active Memory Space and graph;
143
- - “Content” shows the new item and its Memory Space;
144
- - CLI, runtime memory, Memory Space catalog, and subagent status are all healthy under “Status”;
145
- - the recall result includes a complete `memoryBodyId` and memory ID.
122
+ Writing starts only after confirmation. Canceling the dialog changes no state.
146
123
 
147
- ## 7. Recommended First Real Conversation
124
+ ### Verify recall
148
125
 
149
- Choose a question that genuinely depends on a historical decision instead of instructing the model to invoke memory tools unconditionally. The expected flow is:
126
+ 1. Open **Memory Spaces → Recall**.
127
+ 2. Ask a concrete question that should match the item.
128
+ 3. Use **Direct recall** first to inspect raw evidence.
129
+ 4. Confirm the result retains its Memory Space, category, importance, score, and ID.
130
+
131
+ You can also use conversation commands:
150
132
 
151
133
  ```text
152
- user asks a history-dependent question
153
- -> pre-step adds a short optional cue
154
- -> main Agent decides whether history matters
155
- -> recall worker selects active Memory Spaces
156
- -> only useful evidence returns to the main Agent
134
+ /mnemon status
135
+ /mnemon recall <focused query>
157
136
  ```
158
137
 
159
- Ordinary conversation should not force recall. The current request, existing source files, and live tool results should take precedence over historical content.
138
+ ## 7. Verify memory inside a conversation
139
+
140
+ Ask a question that genuinely depends on history and allow the Agent to decide whether recall helps. After completion:
141
+
142
+ - Turn memory appears below the reply if the turn used memory tools.
143
+ - Expanding shows exact tools and links to their pages.
144
+ - Save to memory opens an editable confirmation; canceling performs no write.
145
+
146
+ [![Turn memory and exact tool navigation](../assets/screenshots/conversation-turn-memory.png)](../assets/screenshots/conversation-turn-memory.png)
147
+
148
+ Ordinary conversation should not force recall. Current requests, repository files, and live tool results outrank historical content.
160
149
 
161
- ## 8. Next Steps
150
+ ## 8. Next steps
162
151
 
163
- - Read the [storage model](./storage-model.md) before choosing `storageScope`.
164
- - Read the [configuration reference](./configuration.md) to configure read-only mode or disable lifecycle cues.
165
- - Read the [operations guide](./operations.md) to establish backup and pre-upgrade verification procedures.
152
+ - Use the [Sidebar and conversation UI guide](./ui-guide.md) to learn every page.
153
+ - Use the [storage model](./storage-model.md) to choose Runtime, Documents, or Memory Spaces.
154
+ - Use the [configuration reference](./configuration.md) for Workspace scope, read-only behavior, and lifecycle switches.
155
+ - Use the [operations guide](./operations.md) to export your first ZIP backup and establish a pre-upgrade checklist.