dsh-mnemon 0.1.2 → 0.1.3
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/README.en.md +87 -120
- package/README.md +88 -121
- package/docs/assets/diagrams/en/memory-system-flow.png +0 -0
- package/docs/assets/diagrams/zh-CN/memory-system-flow.png +0 -0
- package/docs/assets/media/dsh-mnemon-memory-system-demo-poster.jpg +0 -0
- package/docs/assets/media/dsh-mnemon-memory-system-demo.gif +0 -0
- package/docs/assets/media/dsh-mnemon-memory-system-demo.mp4 +0 -0
- package/docs/assets/screenshots/conversation-memory-jump.png +0 -0
- package/docs/assets/screenshots/conversation-save-dialog.png +0 -0
- package/docs/assets/screenshots/conversation-turn-memory.png +0 -0
- package/docs/assets/screenshots/document-create-dialog.png +0 -0
- package/docs/assets/screenshots/documents-markdown.png +0 -0
- package/docs/assets/screenshots/entities-context.png +0 -0
- package/docs/assets/screenshots/memory-content.png +0 -0
- package/docs/assets/screenshots/overview-memory-graph.png +0 -0
- package/docs/assets/screenshots/recall-agent-answer.png +0 -0
- package/docs/assets/screenshots/remember-dialog.png +0 -0
- package/docs/assets/screenshots/runtime-memory-add.png +0 -0
- package/docs/assets/screenshots/runtime-memory.png +0 -0
- package/docs/assets/screenshots/settings-memory-system.png +0 -0
- package/docs/assets/screenshots/status-overview.png +0 -0
- package/docs/assets/screenshots/version-check.png +0 -0
- package/docs/en/README.md +38 -32
- package/docs/en/architecture.md +3 -1
- package/docs/en/configuration.md +4 -5
- package/docs/en/development.md +24 -4
- package/docs/en/getting-started.md +77 -87
- package/docs/en/interfaces.md +98 -90
- package/docs/en/operations.md +103 -93
- package/docs/en/project-overview.md +82 -198
- package/docs/en/ui-guide.md +156 -0
- package/docs/zh-CN/README.md +35 -29
- package/docs/zh-CN/architecture.md +3 -1
- package/docs/zh-CN/configuration.md +4 -5
- package/docs/zh-CN/development.md +24 -4
- package/docs/zh-CN/getting-started.md +70 -80
- package/docs/zh-CN/interfaces.md +84 -76
- package/docs/zh-CN/operations.md +96 -86
- package/docs/zh-CN/project-overview.md +78 -194
- package/docs/zh-CN/ui-guide.md +160 -0
- package/lib/client.js +2358 -1948
- package/lib/client.js.map +1 -1
- package/lib/index.js +446 -39
- package/lib/types/channels.d.ts +4 -0
- package/lib/types/channels.d.ts.map +1 -0
- package/lib/types/channels.js +4 -0
- package/lib/types/channels.js.map +1 -0
- package/lib/types/client/MnemonSaveAction.d.ts.map +1 -1
- package/lib/types/client/MnemonSaveAction.js +4 -55
- package/lib/types/client/MnemonSaveAction.js.map +1 -1
- package/lib/types/client/MnemonSettingsCard.d.ts.map +1 -1
- package/lib/types/client/MnemonSettingsCard.js +4 -5
- package/lib/types/client/MnemonSettingsCard.js.map +1 -1
- package/lib/types/client/MnemonTurnTail.d.ts +3 -0
- package/lib/types/client/MnemonTurnTail.d.ts.map +1 -1
- package/lib/types/client/MnemonTurnTail.js +15 -3
- package/lib/types/client/MnemonTurnTail.js.map +1 -1
- package/lib/types/client/MnemonView.d.ts +4 -0
- package/lib/types/client/MnemonView.d.ts.map +1 -1
- package/lib/types/client/MnemonView.js +424 -97
- package/lib/types/client/MnemonView.js.map +1 -1
- package/lib/types/client/MnemonViewAppearance.d.ts +21 -0
- package/lib/types/client/MnemonViewAppearance.d.ts.map +1 -0
- package/lib/types/client/MnemonViewAppearance.js +67 -0
- package/lib/types/client/MnemonViewAppearance.js.map +1 -0
- package/lib/types/client/anchor.d.ts +1 -1
- package/lib/types/client/anchor.js +1 -1
- package/lib/types/client/api.d.ts +4 -0
- package/lib/types/client/api.d.ts.map +1 -1
- package/lib/types/client/api.js +10 -1
- package/lib/types/client/api.js.map +1 -1
- package/lib/types/client/index.d.ts.map +1 -1
- package/lib/types/client/index.js +22 -25
- package/lib/types/client/index.js.map +1 -1
- package/lib/types/client/locales.d.ts +126 -294
- package/lib/types/client/locales.d.ts.map +1 -1
- package/lib/types/client/locales.js +140 -308
- package/lib/types/client/locales.js.map +1 -1
- package/lib/types/client/settings.d.ts +1 -1
- package/lib/types/client/settings.d.ts.map +1 -1
- package/lib/types/client/settings.js +1 -1
- package/lib/types/client/settings.js.map +1 -1
- package/lib/types/client/sidebar-entry.d.ts +1 -1
- package/lib/types/client/sidebar-entry.d.ts.map +1 -1
- package/lib/types/client/sidebar-entry.js +3 -1
- package/lib/types/client/sidebar-entry.js.map +1 -1
- package/lib/types/client/workspace-mount.d.ts.map +1 -1
- package/lib/types/client/workspace-mount.js +8 -5
- package/lib/types/client/workspace-mount.js.map +1 -1
- package/lib/types/config.d.ts +1 -3
- package/lib/types/config.d.ts.map +1 -1
- package/lib/types/config.js +10 -12
- package/lib/types/config.js.map +1 -1
- package/lib/types/index.d.ts +2 -1
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +2 -1
- package/lib/types/index.js.map +1 -1
- package/lib/types/lifecycle.js +3 -3
- package/lib/types/lifecycle.js.map +1 -1
- package/lib/types/memory-bodies.d.ts +1 -0
- package/lib/types/memory-bodies.d.ts.map +1 -1
- package/lib/types/memory-bodies.js +7 -0
- package/lib/types/memory-bodies.js.map +1 -1
- package/lib/types/rpc.d.ts +5 -7
- package/lib/types/rpc.d.ts.map +1 -1
- package/lib/types/rpc.js +28 -8
- package/lib/types/rpc.js.map +1 -1
- package/lib/types/service.d.ts +2 -0
- package/lib/types/service.d.ts.map +1 -1
- package/lib/types/service.js +4 -0
- package/lib/types/service.js.map +1 -1
- package/lib/types/settings.d.ts.map +1 -1
- package/lib/types/settings.js +1 -2
- package/lib/types/settings.js.map +1 -1
- package/lib/types/version-updates.d.ts +61 -0
- package/lib/types/version-updates.d.ts.map +1 -0
- package/lib/types/version-updates.js +377 -0
- package/lib/types/version-updates.js.map +1 -0
- package/package.json +4 -1
- package/docs/zh-CN/assets/screenshots/conversation-recall.png +0 -0
- package/docs/zh-CN/assets/screenshots/conversation-writeback.png +0 -0
- package/docs/zh-CN/assets/screenshots/documents-markdown.png +0 -0
- package/docs/zh-CN/assets/screenshots/entities-context.png +0 -0
- package/docs/zh-CN/assets/screenshots/memory-content.png +0 -0
- package/docs/zh-CN/assets/screenshots/overview-memory-graph.png +0 -0
- package/docs/zh-CN/assets/screenshots/recall-agent-answer.png +0 -0
- package/docs/zh-CN/assets/screenshots/runtime-memory.png +0 -0
- package/lib/types/client/MnemonToolviews.d.ts +0 -19
- package/lib/types/client/MnemonToolviews.d.ts.map +0 -1
- package/lib/types/client/MnemonToolviews.js +0 -172
- package/lib/types/client/MnemonToolviews.js.map +0 -1
- /package/docs/{en/assets → assets/diagrams/en}/project-architecture.svg +0 -0
- /package/docs/{zh-CN/assets → assets/diagrams/zh-CN}/project-architecture.svg +0 -0
|
@@ -12,7 +12,7 @@ $DSH_HOME/settings.yaml
|
|
|
12
12
|
|
|
13
13
|
默认通常是 `~/.dsh/settings.yaml`。当前全部配置标记为 `live` 生效;保存后会先初始化候选运行图,再原子切换 Host 服务。
|
|
14
14
|
|
|
15
|
-
Web
|
|
15
|
+
Web 设置页编辑 `displayMode`、`storageScope`、`dataDir`,以及 `mnemon-ui` 下的回合记忆条和存入记忆按钮;同页还提供当前有效目录的 ZIP 导入 / 导出。其他高级项需要直接修改 YAML。
|
|
16
16
|
|
|
17
17
|
## 完整示例
|
|
18
18
|
|
|
@@ -52,9 +52,8 @@ mnemon:
|
|
|
52
52
|
| `idleReviewMs` | `30000` | 5000–600000 ms | 达标后需要连续空闲的时间 |
|
|
53
53
|
| `tabEnabled` | `true` | boolean | 是否挂载 `displayMode` 指定的 Web 入口;关闭后 Host RPC、命令和 Agent 工具保持注册 |
|
|
54
54
|
| `writeEnabled` | `true` | boolean | 是否暴露语义写工具、写 RPC 和写命令 |
|
|
55
|
-
| `mnemon-ui.
|
|
56
|
-
| `mnemon-ui.
|
|
57
|
-
| `mnemon-ui.saveAction` | `false` | boolean | 已定稿助手回复旁的「存入记忆」按钮;默认关闭(opt-in),**保存后实时生效** |
|
|
55
|
+
| `mnemon-ui.turnBar` | `true` | boolean | 回合尾记忆活动条;默认开启,**保存后实时生效** |
|
|
56
|
+
| `mnemon-ui.saveAction` | `true` | boolean | 已定稿助手回复旁的「存入记忆」图标与确认弹窗;默认开启,**保存后实时生效** |
|
|
58
57
|
|
|
59
58
|
`mnemon` Host/存储命名空间和 `mnemon-ui` 浏览器呈现命名空间都实时生效。存储根只会在新运行图初始化成功后原子切换;旧版 `mnemon.conversationInteraction` 仍会作为迁移默认值读取,但新保存只写入 `mnemon-ui`。
|
|
60
59
|
|
|
@@ -173,7 +172,7 @@ routingGuidance=false
|
|
|
173
172
|
|
|
174
173
|
## 展示形态与 `tabEnabled` 界面开关
|
|
175
174
|
|
|
176
|
-
`displayMode=sidebar
|
|
175
|
+
`displayMode=sidebar`(默认)会挂载“记忆系统”侧边栏入口和独立主内容区工作台,并使用无 Mnemon Logo 的 DSH 官方风格极简皮肤;`displayMode=buildin` 会改为注册原有的 DSH `conversation.view` 内嵌标签页并保持既有视觉。两者共享功能工作台,但外观定义隔离。设置页保存后会先卸载当前入口再挂载目标入口,因此两种形态不会同时出现。
|
|
177
176
|
|
|
178
177
|
`tabEnabled=false` 会实时移除当前形态的 Web 入口。为避免运行中的 Agent 或命令因界面设置变化而失效,Host RPC、命令和工具不会随展示形态或总开关卸载。
|
|
179
178
|
|
|
@@ -106,10 +106,29 @@ local link installation
|
|
|
106
106
|
7. Documents:创建、检索、更新、人工归档和原项目文件不变。
|
|
107
107
|
8. 评分审查:轻任务不触发;达标后等待 idle;新 turn 能取消并保留水位。
|
|
108
108
|
9. 只读:写工具、写命令和写 RPC 被拒绝,读取仍可用。
|
|
109
|
-
10.
|
|
109
|
+
10. Sidebar:四个一级标签、记忆体四个二级标签、固定页头、筛选与加载更多均正常。
|
|
110
|
+
11. 对话内交互:本回合记忆只在已完成且有活动的回合出现;跳转目标正确;存入记忆取消不写入。
|
|
111
|
+
12. 设置:Sidebar / Buildin、存储范围与两个对话开关保存后实时生效,不需要刷新。
|
|
112
|
+
13. ZIP:导出后可预检,并能在隔离 custom 根完成合并恢复;损坏 checksum 必须拒绝。
|
|
113
|
+
14. 版本:检查不会安装;link / 手工来源不显示不安全更新;更新完成后自动重新检查状态。
|
|
114
|
+
15. 状态和浏览器控制台:无未处理错误或警告。
|
|
110
115
|
|
|
111
116
|
容量极限、CLI 超时、revision 冲突和 Host 重启应在专用故障注入环境验证。
|
|
112
117
|
|
|
118
|
+
## 维护文档视觉素材
|
|
119
|
+
|
|
120
|
+
公开 UI 截图统一位于 `docs/assets/screenshots/`,中英文文档复用同一组实机画面;语言相关架构图分别保存在 `docs/assets/diagrams/zh-CN/` 与 `docs/assets/diagrams/en/`。界面结构、主要文案或默认行为变化时:
|
|
121
|
+
|
|
122
|
+
1. 使用真实 DSH Web profile,但先检查画面中没有 token、凭据或不应公开的个人数据;
|
|
123
|
+
2. 只做查看、筛选、展开与打开弹窗等可逆交互;需要展示写入前流程时停在最终确认之前;
|
|
124
|
+
3. 覆盖同职责截图,避免按版本不断累积文件名;只有新增用户任务时才增加素材;
|
|
125
|
+
4. 同步 README 海报、GIF / MP4 演示和 `ui-guide.md`;
|
|
126
|
+
5. 检查 PNG / JPEG 扩展名与真实编码一致,并在原始分辨率下确认文字可读;
|
|
127
|
+
6. 删除已无引用、展示旧 Buildin 布局或术语过时的截图;
|
|
128
|
+
7. 运行链接与图片检查,再人工打开中英文 README 和 UI 指南。
|
|
129
|
+
|
|
130
|
+
README 演示资源位于 `docs/assets/media/dsh-mnemon-memory-system-demo.*`。演示应覆盖状态、运行时、记忆体、档案和对话内确认,但不要用自动化真正提交记忆、更新组件或更改设置。
|
|
131
|
+
|
|
113
132
|
## 修改 subagent schema
|
|
114
133
|
|
|
115
134
|
DSH structured output 只支持一个紧凑 JSON Schema 子集:
|
|
@@ -142,7 +161,8 @@ Runtime、Documents 和 Memory Space registry 都带版本字段或固定结构
|
|
|
142
161
|
- 保持命令、配置键、路径和代码符号完全一致;
|
|
143
162
|
- 使用相对路径互链对应语言页面;
|
|
144
163
|
- 架构总览优先使用可访问、无脚本和无外部资源的 SVG;目录树、命令、公式与短协议仍使用可复制的 `text` / ASCII;
|
|
145
|
-
- 根 README 只保留摘要,把细节放到单一权威 docs
|
|
164
|
+
- 根 README 只保留摘要,把细节放到单一权威 docs 页面;
|
|
165
|
+
- 所有用户可感知界面变化同步检查 `ui-guide.md`、`getting-started.md`、`configuration.md` 与 `operations.md`。
|
|
146
166
|
|
|
147
167
|
Web locale 变更时,中文键集合仍是类型事实源;英文词典必须满足 `Record<MnemonKey, string>`,并保持占位符一致。
|
|
148
168
|
|
|
@@ -151,7 +171,7 @@ Web locale 变更时,中文键集合仍是类型事实源;英文词典必须
|
|
|
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.en.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 @@ Web locale 变更时,中文键集合仍是类型事实源;英文词典必须
|
|
|
160
180
|
[ ] back up any data root used for upgrade testing
|
|
161
181
|
```
|
|
162
182
|
|
|
163
|
-
`package.json.files` 当前发布 `lib`、patch、两份根 README
|
|
183
|
+
`package.json.files` 当前发布 `lib`、patch、两份根 README、统一管理的文档视觉素材、双语公开 docs 和 License。
|
|
164
184
|
|
|
165
185
|
## 发布到 npm
|
|
166
186
|
|
|
@@ -2,33 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
**简体中文** | [English](../en/getting-started.md) | [文档中心](./README.md)
|
|
4
4
|
|
|
5
|
+
本页从空白环境走到第一次可验证召回。默认采用 Sidebar 和全局存储;如果你已经安装完成,可直接跳到[首次验证](#6-完成第一次验证)。
|
|
6
|
+
|
|
5
7
|
## 1. 前置条件
|
|
6
8
|
|
|
7
9
|
你需要:
|
|
8
10
|
|
|
9
11
|
- 一个可以启动的 DSH Web profile;
|
|
10
12
|
- 本地可执行的 `mnemon` CLI;
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
provider 的准确要求如下:
|
|
13
|
+
- 一个可用于隔离记忆任务的 DSH subagent Provider。
|
|
14
14
|
|
|
15
|
-
|
|
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
|
+
普通语义任务优先使用名为 `spawn` 的 Provider,并要求 `outputSchema`、`toolFilter`、`persona` 与 `depthLimit`。可选的评分后台审查还要求名为 `fork`、且 `inheritsParentContext=true` 的 Provider。缺少 `fork` 不影响确定性页面读取和普通手动操作。
|
|
30
16
|
|
|
31
|
-
|
|
17
|
+
项目当前不声明固定的 DSH / Mnemon 最低版本矩阵。本文与截图以 dsh-mnemon v0.1.3 为基线;升级前先备份,并在隔离目录重复本页验证。
|
|
32
18
|
|
|
33
19
|
## 2. 安装 Mnemon
|
|
34
20
|
|
|
@@ -38,7 +24,7 @@ macOS 推荐 Homebrew Cask:
|
|
|
38
24
|
brew install --cask mnemon-dev/tap/mnemon
|
|
39
25
|
```
|
|
40
26
|
|
|
41
|
-
macOS 或 Linux
|
|
27
|
+
macOS 或 Linux 也可通过 Go 安装:
|
|
42
28
|
|
|
43
29
|
```sh
|
|
44
30
|
go install github.com/mnemon-dev/mnemon@latest
|
|
@@ -50,11 +36,9 @@ go install github.com/mnemon-dev/mnemon@latest
|
|
|
50
36
|
mnemon --version
|
|
51
37
|
```
|
|
52
38
|
|
|
53
|
-
|
|
39
|
+
如果 DSH 无法从 `PATH` 找到它,可设置 `MNEMON_CLI_PATH`,或把绝对路径写入 `mnemon.cliPath`。`mnemon status` 会打开有效 Store,可能初始化数据或执行上游迁移,不要把它当作完全无副作用的安装探测。
|
|
54
40
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
## 3. 安装插件
|
|
41
|
+
## 3. 安装 dsh-mnemon
|
|
58
42
|
|
|
59
43
|
安装到 Web profile:
|
|
60
44
|
|
|
@@ -62,104 +46,110 @@ mnemon --version
|
|
|
62
46
|
dsh plugin --profile web add dsh-mnemon
|
|
63
47
|
```
|
|
64
48
|
|
|
65
|
-
|
|
49
|
+
开发检出使用绝对路径:
|
|
66
50
|
|
|
67
51
|
```sh
|
|
68
|
-
dsh plugin --profile web add "
|
|
52
|
+
dsh plugin --profile web add "link:/absolute/path/to/dsh-mnemon"
|
|
69
53
|
```
|
|
70
54
|
|
|
71
|
-
|
|
55
|
+
然后启动或重启 profile:
|
|
72
56
|
|
|
73
57
|
```sh
|
|
74
|
-
dsh
|
|
58
|
+
dsh --profile web
|
|
75
59
|
```
|
|
76
60
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
### 升级与卸载
|
|
80
|
-
|
|
81
|
-
`dsh plugin` 是 pnpm 转发器,在 profile 目录下执行:
|
|
61
|
+
升级与卸载:
|
|
82
62
|
|
|
83
63
|
```sh
|
|
84
|
-
# 升级
|
|
85
64
|
dsh plugin --profile web update dsh-mnemon
|
|
86
|
-
|
|
87
|
-
# 卸载(同时从 profile 移除其 bundle 注册)
|
|
88
65
|
dsh plugin --profile web remove dsh-mnemon
|
|
89
66
|
```
|
|
90
67
|
|
|
91
|
-
|
|
68
|
+
卸载只移除插件注册,不删除全局、工作区或自定义目录中的记忆数据。
|
|
92
69
|
|
|
93
|
-
|
|
70
|
+
## 4. 选择入口与存储位置
|
|
94
71
|
|
|
95
|
-
|
|
72
|
+
打开“设置 → 记忆系统”:
|
|
96
73
|
|
|
97
|
-
|
|
74
|
+
[](../assets/screenshots/settings-memory-system.png)
|
|
98
75
|
|
|
99
|
-
|
|
100
|
-
dsh --profile web
|
|
101
|
-
```
|
|
76
|
+
### 展示形态
|
|
102
77
|
|
|
103
|
-
|
|
78
|
+
- **Sidebar**(默认):从 DSH 左侧栏进入独立工作台;适合绝大多数用户。
|
|
79
|
+
- **Buildin**:使用原有对话区标签页,并保留既有视觉。
|
|
80
|
+
|
|
81
|
+
### 存储位置
|
|
104
82
|
|
|
105
83
|
| 范围 | 根目录 | 适合场景 |
|
|
106
84
|
|---|---|---|
|
|
107
|
-
|
|
|
108
|
-
|
|
|
109
|
-
|
|
|
85
|
+
| **全局**(默认) | `MNEMON_DATA_DIR` 或 `~/.mnemon` | 多个工作区共享同一套记忆 |
|
|
86
|
+
| **工作区** | `<workspace>/.mnemon` | 项目隔离,并允许在工作台切换查看其他工作区 |
|
|
87
|
+
| **自定义** | `dataDir` | 专用磁盘、挂载卷或明确的数据目录 |
|
|
110
88
|
|
|
111
|
-
|
|
89
|
+
点击保存后会先初始化新运行图,再原子切换 Host;页面自动清理旧状态并重新读取,无需刷新浏览器。切换范围不会自动迁移、合并或删除旧数据。
|
|
112
90
|
|
|
113
|
-
|
|
91
|
+
在工作区模式下,工作台选择器只决定“正在查看哪套数据”;Agent、工具与生命周期实际使用的目录始终跟随当前会话。两者不一致时顶部会提示并提供一键对齐。
|
|
114
92
|
|
|
115
|
-
## 5.
|
|
93
|
+
## 5. 打开 Sidebar 工作台
|
|
116
94
|
|
|
117
|
-
|
|
95
|
+
点击左侧栏“记忆系统”,先查看“状态”:
|
|
118
96
|
|
|
119
|
-
|
|
120
|
-
2. 创建一个主题明确的记忆体,例如“项目决策”。
|
|
121
|
-
3. description 应说明“哪些内容属于这里,以及什么任务应召回它”。
|
|
122
|
-
4. 开启读取开关,或在第一次写入后让插件自动激活它。
|
|
97
|
+
[](../assets/screenshots/status-overview.png)
|
|
123
98
|
|
|
124
|
-
|
|
99
|
+
确认:
|
|
125
100
|
|
|
126
|
-
|
|
101
|
+
- 右上角显示“已连接”;
|
|
102
|
+
- Mnemon 与 dsh-mnemon 能显示当前版本;
|
|
103
|
+
- 存储根与刚才选择的范围一致;
|
|
104
|
+
- Runtime、Memory Spaces 和 Documents 没有错误提示。
|
|
127
105
|
|
|
128
|
-
|
|
106
|
+
如果 Mnemon 不可用,先运行 `command -v mnemon` 与 `mnemon --version`。更多症状见[故障排查](./operations.md#故障排查)。
|
|
129
107
|
|
|
130
|
-
|
|
131
|
-
/mnemon status
|
|
132
|
-
```
|
|
108
|
+
## 6. 完成第一次验证
|
|
133
109
|
|
|
134
|
-
|
|
110
|
+
### 创建记忆体
|
|
135
111
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
112
|
+
1. 打开“记忆体 → 概览”。
|
|
113
|
+
2. 点击“创建记忆体”。
|
|
114
|
+
3. 使用主题明确的名称,例如“项目决策”。
|
|
115
|
+
4. 在说明中写清“哪些内容属于这里,以及什么任务应召回它”。
|
|
116
|
+
5. 开启读取激活开关。
|
|
117
|
+
|
|
118
|
+
### 沉淀一条测试信息
|
|
139
119
|
|
|
140
|
-
|
|
120
|
+
点击右上角“沉淀记忆”,填写一条稳定、自包含、未来仍有用且不含秘密的信息。默认不要展开高级选项,让记忆子 Agent 自己选择目标、查重与提炼。
|
|
141
121
|
|
|
142
|
-
|
|
143
|
-
- “内容”能看到写入项及所属记忆体;
|
|
144
|
-
- “状态”中 CLI、运行时、记忆体目录和 subagent 均正常;
|
|
145
|
-
- 召回结果包含完整 `memoryBodyId` 和记忆 ID。
|
|
122
|
+
只有点击“调度子 Agent 判断并沉淀”才会启动写入;取消弹窗不会改变状态。
|
|
146
123
|
|
|
147
|
-
|
|
124
|
+
### 验证召回
|
|
148
125
|
|
|
149
|
-
|
|
126
|
+
1. 打开“记忆体 → 检索”。
|
|
127
|
+
2. 输入一个能命中刚才内容的具体问题。
|
|
128
|
+
3. 先用“直接检索”检查原始证据。
|
|
129
|
+
4. 确认结果包含记忆体来源、分类、重要性、分数和 ID。
|
|
130
|
+
|
|
131
|
+
也可以在对话中运行:
|
|
150
132
|
|
|
151
133
|
```text
|
|
152
|
-
|
|
153
|
-
|
|
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 <聚焦查询>
|
|
157
136
|
```
|
|
158
137
|
|
|
138
|
+
## 7. 验证对话内记忆
|
|
139
|
+
|
|
140
|
+
在一个确实依赖历史信息的问题中,让 Agent 自主判断是否需要召回。完成后:
|
|
141
|
+
|
|
142
|
+
- 若本轮调用了记忆工具,回复下方会出现“本回合记忆”;
|
|
143
|
+
- 展开后可以看到具体工具名,并点击跳到对应页面;
|
|
144
|
+
- “存入记忆”会先打开可编辑确认弹窗,取消不会写入。
|
|
145
|
+
|
|
146
|
+
[](../assets/screenshots/conversation-turn-memory.png)
|
|
147
|
+
|
|
159
148
|
普通聊天不应强制召回。当前请求、现有源文件和实时工具结果应优先于历史内容。
|
|
160
149
|
|
|
161
150
|
## 8. 下一步
|
|
162
151
|
|
|
163
|
-
-
|
|
164
|
-
-
|
|
165
|
-
-
|
|
152
|
+
- 用 [Sidebar 与对话交互指南](./ui-guide.md) 认识全部页面。
|
|
153
|
+
- 用[存储模型](./storage-model.md)决定信息应进入运行时、档案还是记忆体。
|
|
154
|
+
- 用[配置参考](./configuration.md)设置工作区范围、只读模式或生命周期开关。
|
|
155
|
+
- 用[运维指南](./operations.md)导出第一份 ZIP 备份并建立升级前检查流程。
|
package/docs/zh-CN/interfaces.md
CHANGED
|
@@ -2,34 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
**简体中文** | [English](../en/interfaces.md) | [文档中心](./README.md)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
本页是集成参考。日常使用请先看 [Sidebar 与对话交互指南](./ui-guide.md)。
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
## 用户界面入口
|
|
8
8
|
|
|
9
|
-
|
|
|
10
|
-
|
|
11
|
-
|
|
|
12
|
-
|
|
|
13
|
-
|
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
|
17
|
-
| 实体 | 高频实体和实体相关上下文 | 直接服务读取 |
|
|
18
|
-
| 内容 | 无 recall 副作用地浏览已激活记忆体、复制、克隆或软删除 | 图谱读取;删除走 worker |
|
|
19
|
-
|
|
20
|
-
图谱每 15 秒同步一次,也可以手动刷新。自然布局、均匀重置、拖拽和键盘微调只影响客户端展示,不修改 Mnemon 数据。
|
|
21
|
-
|
|
22
|
-
### 对话内交互
|
|
23
|
-
|
|
24
|
-
记忆系统在对话流内以三个 DSH 原生槽位呈现,全部为纯增量注册,不替换任何官方渲染:
|
|
25
|
-
|
|
26
|
-
| 槽位 | 呈现 | 数据与交互 |
|
|
27
|
-
|---|---|---|
|
|
28
|
-
| `tool.call.toolview`(按工具名 keyed) | 每个 `mnemon_*` 工具调用渲染为记忆风格卡片行:状态点、Mnemon 标、召回/沉淀标题与工具专属摘要;悬停出现「在记忆视图中打开」与「查看轨迹」 | 摘要从调用参数与已定稿结果 JSON 提取(recall/document-search 显示命中数、status 显示引擎健康、bodies 显示目录统计等);展开显示参数与结果原文;跳转经 `mnemon:anchor` 事件通道落到记忆视图对应页(带查询 seed) |
|
|
29
|
-
| `conversation.chat.turnTail`(chain) | 回合尾动作行上方一行「本回合记忆 · 召回 N · 沉淀 M · 档案检索 K」;展开列出具体工具名,并可跳到状态页 | 通过只读 RPC `turn-activity` 从宿主持久会话日志按 turn 统计 `mnemon_*` 调用;chain `select` 拒绝未完成回合,无记忆活动的回合不渲染任何内容 |
|
|
30
|
-
| `conversation.chat.assistant-actions`(list,id `mnemon-save`) | 已定稿助手回复动作区(反馈按钮旁)的「存入记忆」按钮;点击展开候选面板 | 面板经只读 RPC `assistant-message` 按 messageId 提取消息文本为可编辑候选;提交走既有写 RPC `supervise`(受监督写回:记忆子 Agent 判断、查重、选择记忆体),显示子 Agent 回执;只读部署提前禁用并提示 |
|
|
9
|
+
| 入口 | 默认 | 说明 |
|
|
10
|
+
|---|---:|---|
|
|
11
|
+
| Sidebar | 是 | 左侧栏独立“记忆系统”工作台;状态、运行时、记忆体、档案四个一级标签 |
|
|
12
|
+
| Buildin | 否 | 原有 `conversation.view` 内嵌标签页,保留既有视觉 |
|
|
13
|
+
| 本回合记忆 | 是 | 已完成回合的记忆工具摘要;展开后按工具名跳到对应页面 |
|
|
14
|
+
| 存入记忆 | 是 | 已定稿助手回复旁的操作;确认后调用监督写入 |
|
|
15
|
+
| `/mnemon` | — | 对话命令入口 |
|
|
16
|
+
| 模型工具 | — | Root Agent 的结构化读写入口 |
|
|
31
17
|
|
|
32
|
-
|
|
18
|
+
Sidebar 与 Buildin 实时互斥挂载,共享功能、数据和 Host 服务。对话内两个入口可在 `mnemon-ui` 设置中分别关闭。
|
|
33
19
|
|
|
34
20
|
## 模型工具
|
|
35
21
|
|
|
@@ -37,37 +23,37 @@
|
|
|
37
23
|
|
|
38
24
|
| 工具 | 用途 | Root Agent 路径 |
|
|
39
25
|
|---|---|---|
|
|
40
|
-
| `
|
|
41
|
-
| `
|
|
42
|
-
| `
|
|
43
|
-
| `
|
|
44
|
-
| `mnemon_document_search` |
|
|
26
|
+
| `mnemon_status` | CLI、配置、存储与目录聚合状态 | 直接服务 |
|
|
27
|
+
| `mnemon_memory_bodies` | 读取记忆体目录与统计 | 直接服务 |
|
|
28
|
+
| `mnemon_recall` | 从一个或多个 active 记忆体召回 | `spawn` recall worker |
|
|
29
|
+
| `mnemon_related` | 从已知 ID 遍历关系 | `spawn` related worker;Root 默认两跳 |
|
|
30
|
+
| `mnemon_document_search` | 确定性搜索受管档案 | Documents 控制层 |
|
|
45
31
|
|
|
46
|
-
|
|
32
|
+
“只读”表示不修改受管正文或长期语义内容。`mnemon_document_search` 命中后仍会更新 `lastAccessedAt`,用于 LRU 排序,因此功能只读不等于磁盘只读。
|
|
47
33
|
|
|
48
34
|
### `writeEnabled=true` 时的工具
|
|
49
35
|
|
|
50
36
|
| 工具 | 用途 | Root Agent 路径 |
|
|
51
37
|
|---|---|---|
|
|
52
|
-
| `mnemon_runtime_memory` | `add` / `replace` / `remove` 热记忆 |
|
|
53
|
-
| `mnemon_document_manage` |
|
|
54
|
-
| `mnemon_remember` |
|
|
38
|
+
| `mnemon_runtime_memory` | `add` / `replace` / `remove` 热记忆 | 确定性控制;add 溢出时可能启动 worker |
|
|
39
|
+
| `mnemon_document_manage` | 创建、更新或归档档案 | 创建/更新确定性;归档使用 worker |
|
|
40
|
+
| `mnemon_remember` | 沉淀一条长期洞察 | `spawn` write worker |
|
|
55
41
|
| `mnemon_link` | 建立 typed relationship | `spawn` write worker |
|
|
56
42
|
| `mnemon_forget` | 按精确 ID 软删除 | `spawn` write worker |
|
|
57
|
-
| `mnemon_memory_body_create` |
|
|
58
|
-
| `mnemon_memory_body_update` |
|
|
43
|
+
| `mnemon_memory_body_create` | 创建独立记忆体 | `spawn` write worker |
|
|
44
|
+
| `mnemon_memory_body_update` | 更新名称、说明或 active | `spawn` write worker |
|
|
59
45
|
| `mnemon_memory_body_merge` | 非破坏性导入合并 | `spawn` write worker |
|
|
60
46
|
|
|
61
|
-
worker
|
|
47
|
+
worker 内调用同名工具时直接进入服务层,不再递归委派。
|
|
62
48
|
|
|
63
49
|
## 工具准入建议
|
|
64
50
|
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
-
|
|
68
|
-
-
|
|
51
|
+
- **运行时**:明确偏好、稳定项目约定、环境事实和高频经验。
|
|
52
|
+
- **档案**:具有完整结构和理由的设计、调查、流程、复盘或交接。
|
|
53
|
+
- **记忆体**:需要跨任务保留,或适合图关系与深召回的稳定事实、决策和洞察。
|
|
54
|
+
- **跳过**:问题、猜测、临时进度、完成日志、原始输出、秘密和可轻易从仓库重新发现的普通事实。
|
|
69
55
|
|
|
70
|
-
`mnemon_forget`
|
|
56
|
+
`mnemon_forget` 是破坏性语义操作;只有用户明确要求,或内容已确认错误 / 过时时才应执行。
|
|
71
57
|
|
|
72
58
|
## `/mnemon` 命令
|
|
73
59
|
|
|
@@ -81,17 +67,32 @@ worker 内调用同名工具时直接到服务层,不再委派。
|
|
|
81
67
|
```
|
|
82
68
|
|
|
83
69
|
- 空 `/mnemon` 等价于 `status`。
|
|
84
|
-
- `status`
|
|
85
|
-
- `recall`、`related`、`remember
|
|
70
|
+
- `status` 是确定性读取,不启动模型。
|
|
71
|
+
- `recall`、`related`、`remember`、`forget` 使用命令所在 live Agent 作为 worker parent。
|
|
86
72
|
- 命令 recall 最多返回 10 条。
|
|
87
|
-
- `forget`
|
|
88
|
-
- 当前命令帮助和结果主要为中文,尚未跟随 Web locale。
|
|
73
|
+
- `forget` 必须接收一个不含空格的精确 ID。
|
|
89
74
|
|
|
90
|
-
##
|
|
75
|
+
## 对话内交互契约
|
|
76
|
+
|
|
77
|
+
| DSH 槽位 | 注册 | 行为 |
|
|
78
|
+
|---|---|---|
|
|
79
|
+
| `conversation.chat.turnTail` | chain | 通过 `turn-activity` 汇总完成回合中的 `mnemon_*` 调用;无活动或未完成回合不渲染 |
|
|
80
|
+
| `conversation.chat.assistant-actions` | list,`id=mnemon-save` | 通过 `assistant-message` 读取已定稿文本;只在用户确认后调用 `supervise` |
|
|
81
|
+
|
|
82
|
+
两者都是增量注册,不替换 DSH 官方渲染。`assistant-message` 读取的候选可编辑,长回复会按界面上限截取;写入结果以记忆子 Agent 回执为准。
|
|
83
|
+
|
|
84
|
+
## 工作区路由
|
|
85
|
+
|
|
86
|
+
工作台请求携带 `sessionId` 和可选 `workspaceId`。Host 只接受 `workspaceRegistry` 已登记的 ID:
|
|
91
87
|
|
|
92
|
-
|
|
88
|
+
- 确定性读取与人工维护可以路由到 `workspaceId` 选择的查看根;
|
|
89
|
+
- Agent、工具、命令和生命周期仍按 `sessionId` 对应 Agent cwd 路由;
|
|
90
|
+
- `status.workspaceContext` 返回 selected / effective roots 与 `aligned`;
|
|
91
|
+
- 需要 Agent 的操作在未对齐时拒绝。
|
|
93
92
|
|
|
94
|
-
|
|
93
|
+
## RPC 通道
|
|
94
|
+
|
|
95
|
+
RPC 是 DSH Host 与插件客户端之间的内部桥,不是稳定外部 HTTP API。
|
|
95
96
|
|
|
96
97
|
### 读通道
|
|
97
98
|
|
|
@@ -102,18 +103,15 @@ authority: trusted-host
|
|
|
102
103
|
|
|
103
104
|
| Endpoint | 行为 |
|
|
104
105
|
|---|---|
|
|
105
|
-
| `
|
|
106
|
-
| `
|
|
107
|
-
| `
|
|
108
|
-
| `document` |
|
|
109
|
-
| `
|
|
110
|
-
| `
|
|
111
|
-
| `
|
|
112
|
-
| `
|
|
113
|
-
| `
|
|
114
|
-
| `search` | 直接 Mnemon 检索 |
|
|
115
|
-
| `agent-search` | 直接检索后做证据限定回答 |
|
|
116
|
-
| `related` | 直接关系遍历 |
|
|
106
|
+
| `status` | 服务、版本、生命周期、档案与存储上下文聚合状态 |
|
|
107
|
+
| `versions` | 检查 Mnemon 与 dsh-mnemon 当前 / 最新版本和安装来源 |
|
|
108
|
+
| `runtime-memory` | 运行时快照 |
|
|
109
|
+
| `documents` / `document` / `document-search` | 档案目录、正文与确定性搜索 |
|
|
110
|
+
| `graph` / `bodies` | active 多空间图谱与记忆体目录 |
|
|
111
|
+
| `list` / `entities` | 内容列表与实体聚合 |
|
|
112
|
+
| `search` / `agent-search` / `related` | 直接检索、证据回答与关系遍历 |
|
|
113
|
+
| `turn-activities` / `turn-activity` | 会话或单回合的记忆工具活动 |
|
|
114
|
+
| `assistant-message` | 按 messageId 读取已定稿助手文本 |
|
|
117
115
|
|
|
118
116
|
### 写通道
|
|
119
117
|
|
|
@@ -125,25 +123,40 @@ authority: loopback
|
|
|
125
123
|
| Endpoint | 行为 |
|
|
126
124
|
|---|---|
|
|
127
125
|
| `runtime-memory` | 热记忆 mutation |
|
|
128
|
-
| `supervise` |
|
|
126
|
+
| `supervise` | 把候选交给记忆 worker |
|
|
129
127
|
| `document` | create / update / archive |
|
|
130
|
-
| `remember` |
|
|
131
|
-
| `
|
|
132
|
-
| `
|
|
133
|
-
|
|
134
|
-
|
|
128
|
+
| `remember` / `link` / `forget` | 长期语义写入、关系与软删除 |
|
|
129
|
+
| `body-create` / `body-update` / `body-delete` | 记忆体创建、编辑与确认后的物理删除 |
|
|
130
|
+
| `version-update` | 更新明确组件;Host 固定命令与参数 |
|
|
131
|
+
|
|
132
|
+
`writeEnabled=false` 时通道仍稳定注册,但所有 mutation 在 Host 边界拒绝。
|
|
133
|
+
|
|
134
|
+
### 备份通道
|
|
135
|
+
|
|
136
|
+
```text
|
|
137
|
+
channel: /dsh-mnemon-pack
|
|
138
|
+
authority: loopback
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
| Endpoint | 行为 |
|
|
142
|
+
|---|---|
|
|
143
|
+
| `target` | 当前有效根与范围 |
|
|
144
|
+
| `export` | 导出完整、带 manifest 与 SHA-256 校验的 ZIP |
|
|
145
|
+
| `inspect` | 解析并校验待导入 ZIP,返回组件与占用预览 |
|
|
146
|
+
| `import` | 把 ZIP 安全合并到当前有效根;只读模式拒绝 |
|
|
135
147
|
|
|
136
|
-
|
|
148
|
+
备份包含私有记忆,因此整个通道保持 loopback-only。
|
|
137
149
|
|
|
138
150
|
### 设置通道
|
|
139
151
|
|
|
140
152
|
```text
|
|
141
153
|
channel: /dsh-mnemon-settings
|
|
142
154
|
authority: loopback
|
|
155
|
+
namespaces: mnemon, mnemon-ui
|
|
143
156
|
endpoints: get, mutate
|
|
144
157
|
```
|
|
145
158
|
|
|
146
|
-
mutation 使用 settings revision
|
|
159
|
+
mutation 使用 settings revision 防止覆盖并发编辑。`mnemon` 管理 Host / 存储设置;`mnemon-ui` 管理 `turnBar` 与 `saveAction`。
|
|
147
160
|
|
|
148
161
|
## npm 导出
|
|
149
162
|
|
|
@@ -161,13 +174,8 @@ MnemonSubagentCoordinator
|
|
|
161
174
|
MnemonLifecycle
|
|
162
175
|
```
|
|
163
176
|
|
|
164
|
-
`dsh-mnemon/client`
|
|
177
|
+
`dsh-mnemon/client` 导出 DSH client bundle 的 `apply` 与 `inject`。客户端实现类与 RPC endpoint 目前均属于内部实现,不应当作稳定公共 SDK。
|
|
165
178
|
|
|
166
179
|
## 国际化范围
|
|
167
180
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
- `/mnemon` 命令输出;
|
|
171
|
-
- 模型工具展示卡标题;
|
|
172
|
-
- 部分 Host 校验和诊断错误;
|
|
173
|
-
- 兼容发现旧 Store 时写入的默认名称和说明。
|
|
181
|
+
主要 Sidebar / Buildin 工作台、设置与对话内入口支持中文和英文,并跟随 DSH locale 实时切换。品牌名、工具名和配置键不翻译。`/mnemon` 命令、模型工具卡、部分 Host 错误与兼容元数据尚未完全国际化。
|