@yottameta/yotta-memory 0.10.1 → 0.12.0
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/CHANGELOG.md +16 -0
- package/README.md +3 -0
- package/README.zh-CN.md +3 -0
- package/SKILL.md +79 -5
- package/USER_GUIDE.md +13 -0
- package/bin/install.js +2 -2
- package/bin/yotta-memory.js +1172 -22
- package/install.sh +2 -2
- package/package.json +5 -2
- package/references/faq.md +4 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,19 @@
|
|
|
1
|
+
## v0.12.0 (2026-09-12)
|
|
2
|
+
|
|
3
|
+
**可靠性基线(误删事故整改)**:
|
|
4
|
+
|
|
5
|
+
- `init` 对已有记忆库默认拒绝覆盖;新增 `--attach` 接入现有库;`--force` 在未完成备份前明确拒绝,防止初始化再次清空记忆。
|
|
6
|
+
- `forget` 不再物理删除,改为移动到 `.trash/<timestamp>/<原相对路径>`,并写 `audit-<date>.jsonl` 审计记录。
|
|
7
|
+
- 新增 `backup create / list / doctor / restore <id> --to <目录>`:备份 `facts/`、`private/`、`keys/`(排除 `keys/cache/` 授权缓存)、`agents.json`、`index.json`、`.archive/`,生成 SHA-256 清单;默认拒绝同卷备份;`restore` 默认只恢复到新目录,不覆盖正在使用的记忆库。
|
|
8
|
+
- 新增每日自动备份闭环:`backup volumes` 只枚举当前机器实际存在、可写、与记忆库异卷的路径;用户确认一次位置后 `backup setup` 默认启用每日备份(默认 03:30),Windows Task Scheduler / Linux systemd user timer(cron 降级)/ macOS LaunchAgent 负责无人值守,`serve` 启动与每 6 小时用幂等 `backup ensure-daily` 补跑。
|
|
9
|
+
- `context` 增加可靠性提醒:未配置、超过 36 小时或失败时提示;用户明确选择手动备份后不重复打扰。
|
|
10
|
+
- 新增 `backup drill`:恢复到隔离副本,校验 manifest、重建索引并解密一条测试私密;默认使用本机 owner 授权缓存,裸恢复可显式传恢复钥匙。
|
|
11
|
+
- 新增 `test/reliability-init.test.js`、`test/reliability-forget.test.js`、`test/reliability-backup.test.js`、`reliability-backup-volumes/setup/daily/schedule/context/drill`;`npm test` 覆盖既有与新增可靠性测试。
|
|
12
|
+
|
|
13
|
+
## v0.11.0 (2026-09-06)
|
|
14
|
+
|
|
15
|
+
**MCP 协议对齐最新版 2026-07-28(无状态时代)**:yotta-memory MCP(stdio + serve streamable HTTP)升级 dual-era——modern 直连(server/discover 免握手、逐请求 _meta 版本声明、resultType、-32022 版本错误、HTTP header 校验 HeaderMismatch -32020)服务新客户端;legacy(initialize 握手,protocolVersion 2025-11-25)兼容旧客户端,旧形状响应零惊扰;HTTP+SSE GET 保留为 deprecated 兼容入口。SKILL 标注「基于 MCP 最新协议 2026-07-28(向后兼容 2025-11-25 及更早握手)」。新增 test/mcp-dualera.test.js(26/26:A 层 + HTTP 层),存量测试全绿。
|
|
16
|
+
|
|
1
17
|
## v0.10.1 (2026-09-05)
|
|
2
18
|
|
|
3
19
|
发布件修复:SKILL.md frontmatter `description` 曾以 ASCII 双引号开头但未闭合
|
package/README.md
CHANGED
|
@@ -23,6 +23,8 @@
|
|
|
23
23
|
|
|
24
24
|
> 📖 The user-facing operations manual lives in [USER_GUIDE.md](USER_GUIDE.md).
|
|
25
25
|
|
|
26
|
+
> 🆕 **v0.12.0**: reliability baseline — `init` refuses to overwrite an existing store (`--attach` to attach); `forget` moves entries into `.trash/`; `backup create / list / doctor / restore` provides independent-volume backups with SHA-256 manifests.
|
|
27
|
+
|
|
26
28
|
> 🆕 **v0.10.0**: compression & forgetting — `consolidate` turns old low-use memories on the same topic into one **provenance-carrying periodic summary** that stays searchable (originals archived; `consolidate --undo <batch>` restores everything); near-duplicate **auto-merge with confidence** (`maintain --dedup --apply`); **per-type decay curves** (FACT slow / PREF medium / COMMIT task-like fast / BOUND never decays); batch audit via `consolidate --batches`.
|
|
27
29
|
|
|
28
30
|
> 🆕 **v0.9.0**: recall quality + context selection — optional local embedding plugin, `context --focus`, and `--explain` selection trace.
|
|
@@ -39,6 +41,7 @@ Most memory solutions treat "remembering" as a black box: data goes into a datab
|
|
|
39
41
|
- **Grows smarter (v0.6.0)** — `profile` aggregates a user profile (the engine infers nothing; it only groups verbatim text) + `context` generates a one-shot start-of-work package (identity + profile + recent memory + boundaries + commitments); the SKILL "memory discipline" injects rule layers (type red lines / trigger signals / know the user / bottom lines / host isolation) — rules and mechanisms only, no personality data; zero data out of the box.
|
|
40
42
|
- **Self-learning / self-evolving / self-improving (v0.8.0)** — `recall` semantic search (synonyms / pinyin full + initials / field weighting / fuzzy match, zero-dependency) with utility-score blended ranking; `feedback` explicit usage feedback loop (useful / useless adjusts weight / confidence / feedback_net); `maintain` rule-layer self-organization (unified utility score + age-based auto-archive / forget candidates / dedup, dry-run by default, immutable / BOUND exempt); `distill` psychological-log distillation (statistical summary / topic profile / knowledge map, optional `--model` external model enhancement).
|
|
41
43
|
- **Compression & forgetting (v0.10.0) — memory that never bloats** — `consolidate` summarizes old, low-use memories on the same topic into one **provenance-carrying periodic summary** that stays in active memory (every original file is listed as provenance; originals move to `.archive/`; `--undo <batch>` restores everything); `maintain --dedup` scores near-duplicates and `--apply` auto-merges high-confidence groups; the utility recency component now decays **per type** (FACT slow / PREF medium / COMMIT task-like fast / BOUND never) so durable facts are not wiped by time and stale commitments step aside quickly; every batch is auditable via `consolidate --batches`.
|
|
44
|
+
- **Reliability baseline (v0.12.0)** — `init` refuses to overwrite an existing store and `--attach` attaches instead; `forget` moves entries to `.trash/` with an audit record; `backup create / list / doctor / restore` backs up the store to an independent volume with a SHA-256 manifest and restores only to a new directory.
|
|
42
45
|
- **Private-zone encryption (v0.7.0)** — private files AES-256-GCM envelope encrypted (passphrase-derived master key + recovery key + per-owner encrypted index); `yotta-memory view` user review platform (unlock with passphrase to see all AI memory).
|
|
43
46
|
|
|
44
47
|
### Memory types
|
package/README.zh-CN.md
CHANGED
|
@@ -23,6 +23,8 @@
|
|
|
23
23
|
|
|
24
24
|
> 📖 面向用户的操作手册见 [USER_GUIDE.md](USER_GUIDE.md)。
|
|
25
25
|
|
|
26
|
+
> 🆕 **v0.12.0**:可靠性基线——`init` 对已有记忆库默认拒绝覆盖(用 `--attach` 接入);`forget` 先移入 `.trash/` 并留审计;`backup create / list / doctor / restore` 支持独立盘备份、SHA-256 清单校验和只恢复到新目录。
|
|
27
|
+
|
|
26
28
|
> 🆕 **v0.10.0**:压缩遗忘——`consolidate` 周期摘要压缩(同主题旧记忆 → 带溯源摘要 + 原文归档,`--undo <batch>` 一键回滚);近重复自动合并(`maintain --dedup` 置信度分档,`--apply` 批量执行);分类型衰减(FACT 慢 / PREF 中 / COMMIT 任务类快 / BOUND 不衰减);`consolidate --batches` 批次审计可查。
|
|
27
29
|
|
|
28
30
|
> 🆕 **v0.9.0**:召回质量与上下文选择——可选本地 embedding 插件、`context --focus`、`--explain` 选择解释。
|
|
@@ -43,6 +45,7 @@
|
|
|
43
45
|
- **越用越懂(v0.6.0)**:`profile` 聚合用户画像(引擎零推断,只归组原文)+ `context` 一键生成开工上下文包(身份 + 画像 + 近期记忆 + 边界 + 承诺);SKILL「记忆守则」注入规则层(类型红线 / 触发信号 / 了解用户 / 底线 / 宿主隔离),只注入规则与机制、不注入人格数据,出厂零数据。
|
|
44
46
|
- **自我学习 / 自我进化 / 自我提升(v0.8.0)**:`recall` 语义检索(同义词 / 拼音全拼+首字母 / 字段加权 / 模糊匹配,零依赖)+ 效用分融合排序;`feedback` 显式使用反馈闭环(useful / useless 调整 weight / confidence / feedback_net,越用越懂);`maintain` 规则层自组织(统一效用分 + 年龄自动归档 / 遗忘候选 / 去重,默认 dry-run,immutable / BOUND 豁免);`distill` 心理日志蒸馏(统计摘要 / 主题画像 / 知识地图,可选 `--model` 外部模型增强)。
|
|
45
47
|
- **压缩遗忘(v0.10.0)——记忆越用越精简**:`consolidate` 周期摘要压缩——把超龄 + 长期闲置 + 低效用的同主题旧记忆归纳成 **1 条带溯源的摘要**(每条原文路径都写在正文里)留在活跃区,原文整体进 `.archive/`,`--undo <batch>` 一键回滚;`maintain --dedup` 给近重复打分(≥0.85 高置信自动合并 / 0.65–0.85 建议手动),`--apply` 批量合并同归属重复组;时效分量改**分类型衰减**(FACT 慢 / PREF 中 / COMMIT 任务类快 / BOUND 永不衰减)——持久事实不被时间抹掉,过期承诺快速让位;每一步写批次审计(`--batches` 可查)。
|
|
48
|
+
- **可靠性基线(v0.12.0)**:`init` 遇到已有记忆库默认拒绝覆盖(`--attach` 用于接入);`forget` 先移入 `.trash/` 并写删除审计;`backup create / list / doctor / restore` 支持独立盘备份、SHA-256 清单校验、恢复默认只写新目录,避免二次覆盖。
|
|
46
49
|
- **私密区加密(v0.7.0)**:私密区文件 AES-256-GCM 信封加密(口令派生主密钥 + 恢复钥匙 + 每 owner 加密索引);`yotta-memory view` 用户查看平台(口令解锁看全部 AI 记忆);`migrate` 明文→密文迁移;`--no-encrypt` 可降级。跨 AI 私密从「纪律层隔离」升级为「机制层不可解」。
|
|
47
50
|
- **便携记忆盘**:记忆库本身就是记忆引擎——装在硬盘或主机上随盘走,局域网内其它主机上的智能体可远程读写;本地零进程与局域网常驻两种模式可并存,插上硬盘即恢复全部记忆。
|
|
48
51
|
|
package/SKILL.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: yotta-memory
|
|
3
|
-
description: 元忆 —— 有权限边界的文件式智能体记忆。文件式、零依赖、可 diff/可回滚:让任何 AI 智能体活过会话,开工 recall 恢复上下文、重要信息 remember 落盘、收工归档。类型体系 FACT(公共共享)/ PREF / BOUND / COMMIT(私密隔离)。触发:记住、别忘了、记一笔、记忆、remember、recall、跨会话、上次说到、续测、交接、归档、记忆盘、共享记忆、局域网记忆、画像、开工上下文、记忆守则、profile、context、越用越懂、语义检索、反馈、维护、蒸馏、feedback、maintain、distill、explain、自我学习、自我进化、自我提升、查看平台分页、recall 候选预过滤、任务相关记忆、--focus、--embedding、压缩遗忘、consolidate
|
|
4
|
-
version: 0.
|
|
3
|
+
description: 元忆 —— 有权限边界的文件式智能体记忆。文件式、零依赖、可 diff/可回滚:让任何 AI 智能体活过会话,开工 recall 恢复上下文、重要信息 remember 落盘、收工归档。类型体系 FACT(公共共享)/ PREF / BOUND / COMMIT(私密隔离)。触发:记住、别忘了、记一笔、记忆、remember、recall、跨会话、上次说到、续测、交接、归档、记忆盘、共享记忆、局域网记忆、画像、开工上下文、记忆守则、profile、context、越用越懂、语义检索、反馈、维护、蒸馏、feedback、maintain、distill、explain、自我学习、自我进化、自我提升、查看平台分页、recall 候选预过滤、任务相关记忆、--focus、--embedding、压缩遗忘、consolidate、周期摘要、自动合并、分类型衰减、回滚、备份、backup、防误删
|
|
4
|
+
version: 0.12.0
|
|
5
5
|
license: MIT
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -19,6 +19,7 @@ license: MIT
|
|
|
19
19
|
- **自我学习 / 自我进化 / 自我提升(v0.8.0)**:`recall` 语义检索(同义词 / 拼音 / 字段加权 / 模糊匹配,零依赖);`feedback` 显式使用反馈闭环(useful / useless → weight / confidence / feedback_net 演化,越用越懂);`maintain` 规则层自组织(统一效用分 + 年龄自动归档 / 遗忘候选 / 去重,默认 dry-run,immutable / BOUND 豁免);`distill` 心理日志蒸馏(统计摘要 / 主题画像 / 知识地图,可选 `--model` 外部模型增强);`explain` 查看单条记忆效用分项。
|
|
20
20
|
- **召回质量与上下文选择(v0.9.0)**:`recall` 支持可选本地 embedding 插件(`--embedding <command>` / `config set embedding_cmd <command>`);`context --focus <关键词>` 生成任务感知上下文;`--explain` 输出选择 trace,无插件时自动降级为词法检索。
|
|
21
21
|
- **压缩遗忘(v0.10.0)**:记忆库长期可用不膨胀——`consolidate` 周期摘要压缩(把超龄 + 低效用 + 长期闲置的同主题旧记忆归纳成**带溯源**的摘要,原文整体进 `.archive/`,`--undo` 一键回滚);`maintain --dedup` 近重复**自动合并**(置信度分档,`--apply` 批量执行高置信组);效用分时效改为**分类型衰减**(FACT 慢 / PREF 中 / COMMIT 任务类快 / BOUND 不衰减);`consolidate --batches` 批次审计可查。
|
|
22
|
+
- **可靠性基线(v0.12.0)**:`init` 对非空记忆库默认拒绝覆盖(`--attach` 接入现有库);`forget` 先移入 `.trash/` 并写审计;新增 `backup volumes / setup / status / ensure-daily / schedule / drill`(用户确认真实独立卷后默认每日自动备份)与 `backup create / list / doctor / restore`。
|
|
22
23
|
|
|
23
24
|
## 何时使用(触发)
|
|
24
25
|
|
|
@@ -34,6 +35,75 @@ license: MIT
|
|
|
34
35
|
3. **收工归档**:写会话小结(COMMIT / 笔记);旧记录定期 `yotta-memory maintain --apply`(单条低效用归档)+ 记忆多了周期 `yotta-memory consolidate --apply`(同主题压缩成带溯源摘要,`--undo` 可回滚)。
|
|
35
36
|
4. **多智能体纪律**:FACT 写入公共区,PREF / BOUND / COMMIT 只写本智能体私密区;不读取其他智能体私密区。**一切读写一律走 `yotta-memory` CLI / MCP 工具**——禁止用 shell(`Get-ChildItem` / `Get-Content` / `cat` / `ls` / `type` 等)直接读或改记忆库目录下的 `.md` / `index.json` / `tokens.json` / `agents.json` / `grants.json` 等文件,否则会绕过权限边界、读到别的智能体私密内容。
|
|
36
37
|
|
|
38
|
+
## 可靠性基线(v0.12.0)
|
|
39
|
+
|
|
40
|
+
**目的**:防止初始化覆盖、删除不可逆、备份缺失再次造成记忆库丢失。
|
|
41
|
+
|
|
42
|
+
### 1. init 防覆盖
|
|
43
|
+
|
|
44
|
+
- 目标已是记忆库时,`yotta-memory init` 默认拒绝覆盖。
|
|
45
|
+
- 接入已有库:`yotta-memory init --attach`。
|
|
46
|
+
- `--force` 在完整备份机制通过前明确拒绝;不得绕过。
|
|
47
|
+
- 非 owner 智能体不得初始化、重建或清空记忆库。
|
|
48
|
+
|
|
49
|
+
### 2. forget 回收区
|
|
50
|
+
|
|
51
|
+
- `yotta-memory forget <文件>` 不物理删除,改为移动到 `.trash/<时间>/<原相对路径>`。
|
|
52
|
+
- 审计写入 `.trash/audit-<日期>.jsonl`(记录时间、原路径、回收路径、owner、执行者)。
|
|
53
|
+
- 永久删除和回收区清理属于后续管理动作,不能作为默认 `forget` 行为。
|
|
54
|
+
|
|
55
|
+
### 3. 每日自动备份(用户确认式)
|
|
56
|
+
|
|
57
|
+
AI 必须先枚举真实卷,再让用户决定一次位置;不得凭经验报盘符,也不得在用户确认前写 `backup_dir` 或注册调度器。
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
# 1. 只展示当前机器实际存在、可写、与记忆库异卷的路径
|
|
61
|
+
yotta-memory backup volumes
|
|
62
|
+
|
|
63
|
+
# 2. 用户从真实列表确认后启用;默认每天 03:30,错过则下次启动补跑
|
|
64
|
+
yotta-memory backup setup --dir <用户确认的目录> --time 03:30
|
|
65
|
+
|
|
66
|
+
# 查看状态;用户明确拒绝自动备份时记录手动选择,不再反复打扰
|
|
67
|
+
yotta-memory backup status
|
|
68
|
+
yotta-memory backup setup --manual
|
|
69
|
+
|
|
70
|
+
# 查看/修复系统调度器(Windows Task Scheduler / systemd user timer / launchd)
|
|
71
|
+
yotta-memory backup schedule status
|
|
72
|
+
yotta-memory backup schedule enable --time 03:30
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
- `backup setup` 成功后创建首份备份,并默认启用每日自动备份。
|
|
76
|
+
- `backup ensure-daily` 幂等:当天已有成功备份就跳过,没有才创建;`serve` 启动后 10 秒与运行期间每 6 小时调用一次补跑。
|
|
77
|
+
- `context` 在未配置、备份超过 36 小时或失败时追加可靠性提醒;用户已选手动模式时不重复提示。
|
|
78
|
+
- 备份盘不可用、调度注册失败或备份失败时记录状态并告警,不伪造成功,也不退回同卷备份。
|
|
79
|
+
|
|
80
|
+
### 4. backup 备份与恢复
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
# 推荐先走上面的 backup volumes + backup setup(自动写入 backup_dir)
|
|
84
|
+
|
|
85
|
+
# 创建整库备份(默认拒绝与记忆库同卷)
|
|
86
|
+
yotta-memory backup create
|
|
87
|
+
|
|
88
|
+
# 查看备份
|
|
89
|
+
yotta-memory backup list
|
|
90
|
+
|
|
91
|
+
# 校验指定备份(SHA-256 / 文件缺失 / 大小)
|
|
92
|
+
yotta-memory backup doctor --id <备份ID>
|
|
93
|
+
|
|
94
|
+
# 恢复到新目录;默认不覆盖正在使用的记忆库
|
|
95
|
+
yotta-memory backup restore <备份ID> --to <新目录>
|
|
96
|
+
|
|
97
|
+
# 恢复演练:恢复到隔离副本,校验 manifest、索引并解密一条测试私密
|
|
98
|
+
# 默认用本机已有的 owner 授权缓存;完全裸恢复请加 --recovery-key
|
|
99
|
+
yotta-memory backup drill [<备份ID>]
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
- 备份覆盖:`facts/`、`private/`、`keys/`(排除 `keys/cache/` 授权缓存)、`agents.json`、`index.json`、`.archive/`。
|
|
103
|
+
- 备份目录与记忆库同卷时默认拒绝;同卷只能作为临时测试,不视为可用备份。
|
|
104
|
+
- 恢复目标非空时拒绝覆盖;恢复后先校验,再决定是否替换正式记忆库。
|
|
105
|
+
- 备份是可靠性基线的一部分;没有备份时,不得执行永久删除或覆盖初始化。
|
|
106
|
+
|
|
37
107
|
|
|
38
108
|
## 记忆守则(Memory Doctrine,v0.6.0)
|
|
39
109
|
|
|
@@ -156,7 +226,7 @@ license: MIT
|
|
|
156
226
|
|
|
157
227
|
| 命令 | 作用 |
|
|
158
228
|
|---|---|
|
|
159
|
-
| `yotta-memory init [--project] [--dir <目录>] [--encrypt|--no-encrypt]` | 初始化(**新建默认加密**:设主口令 +
|
|
229
|
+
| `yotta-memory init [--project] [--dir <目录>] [--attach] [--encrypt|--no-encrypt]` | 初始化(**新建默认加密**:设主口令 + 抄下恢复钥匙;已有库必须用 `--attach`,默认拒绝覆盖;`--no-encrypt` 降级明文;老明文库用 `migrate`)|
|
|
160
230
|
| `yotta-memory migrate` | 明文私密区 → 密文迁移(需主口令;迁移后打印恢复钥匙;当前智能体自动获得授权缓存)|
|
|
161
231
|
| `yotta-memory view [--port 8788] [--host 127.0.0.1]` | 用户查看平台(本机 Web:口令解锁浏览 / 搜索 / 导出全部 AI 记忆 + 授权 / 吊销 AI + 重设口令 + 显示恢复钥匙)|
|
|
162
232
|
| `yotta-memory reset-password [--password <当前> | --recovery-key <钥匙>] [--new-password <新>]` | 重设主口令(忘口令用恢复钥匙)|
|
|
@@ -165,11 +235,13 @@ license: MIT
|
|
|
165
235
|
| `yotta-memory recall [关键词] [--type T] [--limit N] [--agent <id>] [--owner <id>] [--all] [--unsafe] [--explain] [--semantic] [--embedding <command>] [--embedding-timeout N]` | 检索(v0.8.0 默认语义检索:同义词 / 拼音全拼+首字母 / 字段加权 / 模糊匹配 + 效用分融合排序;v0.9.0 支持可选本地 embedding 插件,失败自动降级;`--explain` 显示命中理由与效用分项;`--semantic` 显式开启;读取分区过滤;越界读其它智能体私密默认拒绝,需 grant / identity=user / `--unsafe`;`--agent <其它>` 只作身份声明/展示,不授予跨读——读他人私密同样要授权;项目级优先)|
|
|
166
236
|
| `yotta-memory profile [--owner <id>]` | 生成用户画像(聚合 `private/<owner>/` 原文,零推断,写 `profile.md`;跨 owner 默认拒绝)|
|
|
167
237
|
| `yotta-memory context [--limit N] [--owner <id>] [--budget N] [--focus <关键词>] [--explain] [--embedding <command>]` | 生成开工上下文包(身份 + 多智能体铁律 + 画像 + 任务相关记忆 + 近期记忆 + 边界 + 承诺;--budget 字符预算,0=不限;--explain 输出 included / dropped 选择 trace)|
|
|
168
|
-
| `yotta-memory forget <文件>` |
|
|
238
|
+
| `yotta-memory forget <文件>` | 移入 `.trash/<时间>/` 回收区并写审计(v0.12.0;不再物理删除)|
|
|
239
|
+
| `yotta-memory backup volumes / setup --dir <目录> / status / ensure-daily / schedule enable|disable|status` | 每日自动备份(v0.12.0;只展示实际枚举的异卷、用户确认一次位置后默认每日执行,Windows Task Scheduler / systemd timer / launchd 调度,`serve` 补跑)|
|
|
240
|
+
| `yotta-memory backup create / list / doctor / restore <ID> --to <目录> / drill [<ID>]` | 备份、恢复与恢复演练(v0.12.0;独立盘校验、SHA-256 清单、排除 `keys/cache`、恢复默认只写新目录;drill 验证 manifest / 索引 / 测试私密解密)|
|
|
169
241
|
| `yotta-memory archive [--days 180] [--threshold 0.35]` | 归档旧记忆(v0.8.0 统一效用分 + v0.10.0 分类型衰减;immutable / BOUND 豁免;私密归档入 `.archive/private/<owner>/<type>/`;阈值默认读 config `maintain_archived_utility`)|
|
|
170
242
|
| `yotta-memory reindex` | 重建索引(手动改 .md 后校正)|
|
|
171
243
|
| `yotta-memory export [--out f.json]` / `import <f.json>` | 导出 / 导入 |
|
|
172
|
-
| `yotta-memory config set memory_home <目录>` / `config get` | 持久记住 /
|
|
244
|
+
| `yotta-memory config set memory_home <目录>` / `config set backup_dir <目录>` / `config get` | 持久记住 / 查看记忆库位置与备份目录(`~/.yottamemory/config.json`)|
|
|
173
245
|
| `yotta-memory whoami` | 查看当前智能体身份与登记状态(读 `YOTTA_AGENT_ID` / `X-Agent-Id`,不猜不默认)|
|
|
174
246
|
| `yotta-memory iam <id> [--name <显示名>] [--user <用户名>] [--relationship <关系>] [--force]` | 登记本智能体唯一身份并自动落自我档案(`agents.json`,ID 必须唯一;可选扩展显示名 / 用户 / 关系)|
|
|
175
247
|
| `yotta-memory token new --agent <id> [--force]` / `token list` / `token revoke --agent <id>` | 每智能体访问 token:生成 / 列出 / 吊销(登记 `<记忆库>/.server/tokens.json`;同 ID 已被其它来源占用需 `--force` 覆盖,防不同智能体合流)|
|
|
@@ -304,6 +376,8 @@ license: MIT
|
|
|
304
376
|
| 其它(Trae / Qwen / Comate / Kimi 等) | 各自 MCP 配置 |
|
|
305
377
|
|
|
306
378
|
### 4.8 通用 MCP server 配置片段
|
|
379
|
+
|
|
380
|
+
> 基于 MCP 最新协议 2026-07-28(无状态时代;向后兼容 2025-11-25 及更早握手客户端)。
|
|
307
381
|
```json
|
|
308
382
|
{
|
|
309
383
|
"mcpServers": {
|
package/USER_GUIDE.md
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
3.5 私密区加密(v0.7,推荐)
|
|
11
11
|
3.6 自我学习 / 自我进化 / 自我提升(v0.8.0)
|
|
12
12
|
3.7 查看平台分页与检索优化(v0.8.1)
|
|
13
|
+
3.8 可靠性基线:防覆盖、回收区与备份(v0.12.0)
|
|
13
14
|
4. 便携记忆盘 · 记忆引擎主机篇(Linux / Windows)
|
|
14
15
|
5. 智能体接入篇(本机 / 局域网其它主机)
|
|
15
16
|
6. CLI 命令速查
|
|
@@ -31,6 +32,7 @@
|
|
|
31
32
|
- **便携记忆盘**:记忆装在固定主机上,本机与局域网其它主机共享同一份记忆(见第 4 / 5 篇)。
|
|
32
33
|
- **越用越懂(v0.6.0)**:AI 按「记忆守则」主动捕获信号,`profile` 聚合画像、`context` 开工注入——用得越久越懂你。
|
|
33
34
|
- **自我学习 / 自我进化 / 自我提升(v0.8.0 + v0.9.0)**:`recall` 语义检索(同义词 / 拼音 / 字段加权 / 模糊,v0.9.0 可选本地 embedding 插件)+ `feedback` 使用反馈闭环 + `maintain` 规则层自组织 + `distill` 心理日志蒸馏——记忆系统会自己整理、提炼、演化。
|
|
35
|
+
- **可靠性基线(v0.12.0)**:`init` 对已有库拒绝覆盖;`forget` 进回收区;`backup volumes/setup/status/ensure-daily/schedule/drill` 在用户确认真实独立卷后默认每日自动备份,并提供校验、恢复与恢复演练。
|
|
34
36
|
|
|
35
37
|
## 2. 安装(CLI + 技能)
|
|
36
38
|
|
|
@@ -209,6 +211,17 @@ statement: 本周完成发布
|
|
|
209
211
|
- **用户查看平台分页**:yotta-memory view 启动的网页端记忆卡片改为服务端分页——记忆多时不再一次性加载渲染全部,页面显示「共 N 条」「第 x / y 页」,支持上一页 / 下一页。
|
|
210
212
|
- **recall 候选预过滤**:语义检索前先用索引 token 粗筛候选集(精确 / 同义 / 拼音 / 子串 / 模糊长度门槛),命中集与 v0.8.0 一致,记忆量大时显著减少逐条语义 / 模糊 / 编辑距离开销。
|
|
211
213
|
|
|
214
|
+
## 3.8 可靠性基线:防覆盖、回收区、每日自动备份(v0.12.0)
|
|
215
|
+
|
|
216
|
+
- 已有记忆库存在时,`yotta-memory init` 默认拒绝覆盖;接入现有库使用 `yotta-memory init --attach`。
|
|
217
|
+
- `yotta-memory forget <文件>` 不再物理删除,记忆会移动到 `.trash/<时间>/...`,并写入 `.trash/audit-<日期>.jsonl` 审计。
|
|
218
|
+
- `yotta-memory backup create --dir <独立盘目录>` 创建整库备份(facts / private / keys / agents.json / index.json / .archive),生成 `manifest.json` 与 SHA-256 清单。
|
|
219
|
+
- `yotta-memory backup list` 查看备份;`backup doctor` 校验文件哈希;`backup restore <id> --to <新目录>` 恢复到新目录,不覆盖正在使用的记忆库。
|
|
220
|
+
- `yotta-memory backup volumes` 只列出当前机器实际存在、可写、与记忆库异卷的路径;用户确认一次位置后,`backup setup --dir <目录>` 创建首份备份并默认启用每日自动备份(默认 03:30)。
|
|
221
|
+
- Windows 使用 Task Scheduler,Linux 使用 systemd user timer(不可用时降级 cron),macOS 使用 LaunchAgent;`serve` 启动后与每 6 小时调用幂等 `backup ensure-daily` 补跑。
|
|
222
|
+
- `yotta-memory backup status` 查看目录、计划、上次成功、最近失败与调度状态;`backup drill` 恢复到隔离副本,校验 manifest / 索引并解密一条测试私密。
|
|
223
|
+
- 备份目录与记忆库同卷时默认拒绝;这是一条防线,不替代独立盘备份。
|
|
224
|
+
|
|
212
225
|
## 4. 便携记忆盘 · 记忆引擎主机篇
|
|
213
226
|
|
|
214
227
|
场景:记忆放在一台主机上(Linux / Windows 均可),本机直接 CLI 读写;局域网内其它主机上的 AI 智能体经 MCP 远程接入。引擎主机只需装 CLI,不需要装任何 AI 智能体。
|
package/bin/install.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
|
-
* yotta-memory
|
|
3
|
+
* yotta-memory 跨平台安装器
|
|
4
4
|
* 用法:
|
|
5
5
|
* npx -y @yottameta/yotta-memory --agent <name> # 按智能体默认用户级目录安装(推荐)
|
|
6
6
|
* npx -y @yottameta/yotta-memory --dir PATH # 装到指定目录(用户改了目录的智能体)
|
|
@@ -160,4 +160,4 @@ function main() {
|
|
|
160
160
|
}
|
|
161
161
|
}
|
|
162
162
|
|
|
163
|
-
main();
|
|
163
|
+
main();
|