溯源
默认的 OpenClaw 记忆后端保留 Markdown 工件以及 SQLite 索引和元数据(内存架构)。每个被索引的块都带有存储在正文之外的来源类别(owner、agent、untrusted、system)。因此,被回忆出的文本无法提升自身的信任等级,分类也永远不会默认设为 owner。像 Zep 的 Graphiti 这样的图记忆层也会将事实追溯至其来源。OpenClaw 新增的是一个消费该来源信息的门控。dreaming 整合过程甚至在构建整合提示词之前,就会丢弃 untrusted 和 system 候选。自动会话摄取会排除 cron、heartbeat 和 subagent 会话。这些排除并不阻止拥有所需访问权限的工具直接写入文件。污染也会在单轮对话内跟随内容传播。在来自网络的工具结果之后,该轮次中后续的每条助手消息都会被标记为受污染,并在记忆中归类为 untrusted,无论说话者是谁。跨会话回忆有一个固定边界:群组和频道既不是来源也不是目标(活动记忆)。
相关研究提供的是背景,而不是对 OpenClaw 实现的验证。Generative Agents 探讨了检索中的相关性、时效性和重要性。MMR 在相关性和多样性之间取得平衡。Sleep-time compute 研究查询前有用的预计算。LongMemEval 表明保留细节、索引、检索和阅读策略都会影响长期回忆。诸如 MINJA 和 OWASP ASI06 之类的记忆投毒研究促使我们谨慎设定信任边界。基于来源的门控提升并不能保证对所有投毒攻击免疫。TriggerBench 研究前瞻性记忆,OpenClaw 也通过显式的常驻意图来解决这个问题。
删除需要单独区分。Ghost Vectors 考察从软删除的向量存储中恢复的可能性。遗忘会话记录可防止通过 OpenClaw 相关路径重新摄入数据,但并不保证底层存储的物理或加密擦除。
通过自动会话摄取和回填跟踪的条目在整合期间保留其来源会话。来源在合并时取并集,在取代时重新键控,而模型本身从不携带来源信息。准入策略通过已记录且可撤销的排除规则,将指定会话排除在 dreaming 摄取和会话回填之外。openclaw memory forget 会清除可归属条目、精确日记引用、索引行、向量、嵌入缓存和重写备份。随后,它会用持久的遗忘会话记录阻止所选会话被重新摄入。参与者选择器会选择涉及该参与者的整个会话,而不仅仅是其消息。直接编辑、未跟踪的记忆和转述、原始记录、其他智能体的存储、导出以及外部副本需要单独审查。准入和遗忘都不是通用的擦除保证(删除边界)。
遗忘会话记录保护一个特定边界:OpenClaw 自身的摄取、回填和索引路径不会从这些会话 ID 恢复该智能体存储中的数据。它们不能阻止后续对话、直接文件写入或其他记忆插件引入相同信息。来源和删除应依据这些已记录的边界进行评估,而不应视为普遍不可复活或合规性的证明。
审计账本存储身份、顺序、操作和结果代码。它从不存储提示词、正文、参数或文件名。查询强制执行 30 天保留截止期限并设有行数上限,物理修剪采用批量方式。决策回执使用封闭词汇表,其中 enforced 标记来自实际约束该操作的门控的决策。单纯的成功永远不会被升级为授权证明。文档发布了自身的非承诺,包括“没有行记录并不能证明什么”以及假名化只是关联而非匿名化。OpenTelemetry 可以将操作诊断导出到你的 SIEM,但有界队列、采样、关闭和导出器故障可能会导致数据丢失。这两个接口都不承诺提供无损的合规存档。
相关通道的入站队列会将耗尽重试策略的事件保留在可检查、可重新提交的死信队列中。这并不覆盖所有入站路径:IMAP 触发器通过单独的 hook 路径进行分派,没有通道死信重新提交。出站消息带有分阶段的终态。设计目标是让每个动作都有可见结果,或一个已记录且有意的非结果。上述审计覆盖范围和丢失限制仍然适用。
独立验证存在于三个层面。有一个社区映射到 MITRE ATLAS 的威胁模型。针对风险最高的授权和隔离路径,有 TLA+ 模型。这些是设计模型,在有界状态空间中进行了检查,它们并不能证明“TypeScript 已通过验证”,正如文档所言。还有一份公开的成熟度记分卡,对我们的覆盖范围进行评级。
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw