跳到主要内容
版本:Future

人类掌控的内存协议

AI 聊天审批

在 AI 代理聊天中,Engram 的审批是对话式的。代理会先展示整理后的 TYPE: ... | TEXT: ... 候选内容;如果是规则记忆,还会同时展示 Light/Balanced/Strict 变体。回复 yes 表示按当前候选原样保存,回复 audit 表示继续修改,回复 cancel 表示取消。收到 yes 后,代理会使用 engram save-session --accept-all 写入刚刚获批的候选内容。直接在 CLI 中保存时,除非明确调用了 accept-all 命令,否则仍然使用 A/B/C。

Engram 不仅仅是“智能体内存”。它是一个使内存可检查、可移植且由人类治理的协议。

契约

Markdown 是持久的内存。

JSON 索引和图谱文件是加速层。

批准(Approval)是信任的边界。

哈希(Hashes)是完整性检查。

忽略规则(Ignore rules)是隐私控制。

Git 是可移植性和审计历史。

智能体适配器(Agent adapters)是便利层,而不是权威来源。

智能体可以建议内存,但人类拥有并决定什么成为内存。

内存类型

类型用途
Rule用户偏好、修正、约束、“总是/绝不”的指导原则
Skill可重复的工作流、清单、步骤、操作手册(runbook)
Knowledge客观的项目事实、决策、实现细节

每个激活的内存文件都必须有 ContextContentExample 部分。规则内存还针对简明的行数限制,以便加载的指南能保持实用价值。

写入流 (Write Flow)

  1. 智能体提议一个或多个候选。 使用 save-session --query-level <n> 时,智能体可以考虑最多 n 个可访问的最近人类-智能体聊天,但这只作为候选提议的上下文。 自然写法 /engram ss -a last 50 sessions 使用相同范围并带有显式一键批准:engram save-session --query-level 50 --accept-all
  2. Engram 解析候选类型和目标作用域(scope)。
  3. Engram 检查 Schema、秘密信息、提示词注入模式和路径安全。
  4. 人类看到预览。
  5. 人类回复 A(全部批准)、A 1,3(批准指定)、B <说明>(添加注释批准)或 C(拒绝)。
  6. 只有获得批准的内存才会被写入。
  7. 索引、图谱、哈希和变更历史(changelog)会被刷新。

读取流 (Read Flow)

  1. Engram 加载工作区和可选的全局索引。
  2. 当 ID 重复时,工作区条目胜过全局条目。
  3. 忽略规则和角色过滤器隐藏无关条目。
  4. 图谱感知路由选择一个紧凑的上下文包。
  5. 在输出内容之前运行哈希和安全检查。

为什么这很重要

如果没有协议,内存可能会变成不可见的状态(invisible state)。不可见的状态难以评审、难以共享,并且极易被智能体意外污染。

Engram 故意让内存管理变得简单无趣:文件、差异对比(diffs)、哈希、评审门槛以及人类可以重新运行的的命令。

下一步:操作指南