--- name: xmemory-maintain description: "查看或修正 XMemory 的过期对象、断链和格式问题,或按用户要求遗忘指定会话,并清理所有对象中仅由它支撑的内容。" --- # 维护与遗忘 先读 [共同规则](../xmemory/SKILL.md) 和 [status 报告约定](../xmemory/references/status.md)。查看状态只读;有修正任务时才修改对应文件。定期整理项目内容使用 [对象工序](../xmemory/references/objects.md#项目总结)。 ## 普通问题 - 断链先确认是文件移动、命名改变还是已删除,再修链接或重新核对结论;断链本身不是删除整段结论的理由。 - 缺来源、缺时间或部分读取:回到原件补证据,无法取得就注明缺口;不能用当前时间补造历史时间。 - 超限:压缩重复表达,把细节放回记录或主题,保留条件、未知和出处。 - 疑似秘密:核对命中,确认后移除秘密值;保留类型和定位线索,不在报告中回显原值。 ## 遗忘一个会话 仅对用户指定的会话执行。先核实完整的客户端与原生会话身份;只有模糊标题时先定位,不能按标题批量删除。 1. 按 [身份约定](../xmemory/references/format.md#会话身份) 核实 `client:<原生 ID>`,加入 `exclude_sessions` 并读回。旧库或来源仍使用的读取器引用同时保留在排除列表;不能直接删除引用中间字段来猜原生身份,也不从 ID 尾八位推测。身份仍无法核实时只排除用户已明确指定的完整引用,并说明跨来源清理的缺口。 2. 找出会话各日期的原始记录、导入摘要和笔记;同时按 `session_refs`、来源定位与已有链接核查。保存这些记录路径到本轮上下文,便于删除后继续追溯,不另建撤回账本。 3. 删除仅属于该会话的记录。混合了多个会话的导入记录,移除目标会话对应部分及 `session_refs`,重新核对 `event_days`,保留其他来源并使用真实 `updated`;无法区分支持关系的内容先停止使用,注明尚未完成的清理范围。 4. 沿记录路径及会话身份查日总结、主题、索引、意识、`USER.md` 和全局摘要。只删除仅由目标支撑的内容;独立来源仍支持时保留内容并移除失效引用。高层入口只链接项目文件时,继续沿该项目文件复查,不能只 grep 会话 ID 就结束。 5. 检查 `.xmemory/backups/` 中本库自己的副本;对其中的目标记录及相应派生内容同样清理。遗忘时不先制作一份含目标内容的新备份。不要修改外部客户端原始会话或它们自己的记忆。 6. 读回排除列表及修改文件,再运行 `status`。报告清理到的对象、保留的独立依据、仍无法判断的混合来源;不能把“搜索无命中”单独当作语义清除完成的证明。 后续采集在读取前应用排除列表,也检查导入摘要携带的会话身份。二手材料没有原始会话身份时无法保证自动识别所有转述,发现明确关联就排除相应内容,关联不明时如实说明边界。