从 0 到 1:我用 300 行代码给 AI 记忆加上了“不可篡改的收据”(附开源实现)

起因:现在的 AI 都能记住我们。ChatGPT 有记忆,Cursor 有记忆,各种 AI 伴侣都有记忆。但没人能回答四个致命问题:它凭什么知道?有多大把握?谁授权的?真删干净了吗?

为了解决这个问题,花了一天时间,从零设计并实现了一个名为 AMP (Attestation Memory Protocol) 的开源协议,并写好了参考实现。今天借此机会,和大家分享整个架构设计与代码实现。

为什么我们需要 AMP?

试想一下你在现实场景中遇到过的问题:

  • 73% 的消费者曾因为 AI 客服缺乏其账户的基本信息而放弃互动。
  • 更可怕的是,用户投入数月"喂养"出的 AI 人格和记忆,在平台关停时,没有任何导出和证明机制,说清零就清零。

目前的 AI 记忆,全是一个个黑盒。应用各自建库,数据无法迁移,权限无法追溯。

我们缺的不是一个更强大的记忆数据库,而是一个在应用与数据库之间的"证据编排层"。

AMP 的核心设计:证据优先,存储其次

AMP 的精髓在于:AMP 不拥有记忆,AMP 让 AI 对记忆的每一次读写都带上可验证的来源、局限、授权和审计轨迹。

具体来说,我们定义了四个核心对象:

1. Attestation(证据声明)

每一条写进系统的记忆,都必须携带这个结构,缺一不可:

json 复制代码
{
  "source": "user",           // 谁产生的(user/app/model/import)
  "method": "user typed",     // 如何获得的
  "confidence": 0.95,         // 置信度(0-1)
  "limitations": [],          // 明确不知道什么
  "capturedAt": 1700000000000 // 采集时间
}

没有证据,系统直接返回 400 invalid_attestation 拒收。

2. Event(不可篡改的审计链)

每一次读、写、授权、撤销,都会追加一条 Event。

Event 通过 Hash Chain 串联:

hash = sha256(seq|id|actor|action|target|payloadHash|at|prevHash)

这意味着,任何人只要拿到 /v1/events 的数据,就能独立验证这几万条日志是否被中间人篡改过。

3. Tombstone(墓碑删除机制)

当用户要求删除记忆时,我们不物理删除行,而是将内容清空(content = ""),保留 contentHash。

这产生了一条"墓碑",证明"这条数据确实已经被删除了",真正做到可验证删除。

4. Grant(细粒度授权)

允许用户把特定范围的记忆授权给特定的 App。比如:

grant --app cursor --scope work --ttl 7d(只给 Cursor 应用读工作区记忆的权限,7天过期)。

极简实现:300 行代码跑通

为了证明这个协议不是纸上谈兵,我用 Node.js 写了一个无外部依赖 (只用 http 和 crypto)的单文件参考实现:reference/daemon.js。

跑起来非常简单:

bash 复制代码
# 启动服务
node reference/daemon.js

# 在另一个终端运行一致性测试套件
node conformance/run.js

你会看到 8 个测试用例全部通过:

sql 复制代码
PASS write without attestation rejected
PASS grant work scope to app-a
PASS write with full attestation succeeds
PASS read without grant forbidden
PASS read with grant returns attestation
PASS revoke grant
PASS read after revoke forbidden
PASS verify chain ok

8 passed, 0 failed

如果你在浏览器打开 http://127.0.0.1:7717/v1/events,你会看到一条完美的哈希链 JSON,这就是"证据编排层"的具象化。

最后:寻找第二个实现

这个项目的所有规范和代码已全部采用 Apache-2.0 协议开源。

正如我在 README 里写的:任何能够通过 conformance/run.js 测试套件的实现,都可以称为 AMP-compatible。

目前只有 Node.js 版本。如果你对 Go、Rust、Python 感兴趣,非常欢迎来提 PR。有第二个实现,才能叫标准。

如果这个思路对你有启发,欢迎点个 Star ⭐ 支持一下!也可以在评论区聊聊:你觉得现在的 AI 记忆,最让你担心的点是什么?

相关推荐
果霸大叔1 小时前
AI 网关第 9 篇:运行时处理模型——请求进到数据面后底层经历了什么
人工智能·自然语言处理·ai-native
zhidian_AI1 小时前
AI 智能体改 BUG,占满 CPU 内存?3 道资源护栏兜底
人工智能
Morning的Tech1 小时前
LangGraph 的 Swarm 多智能体机制
人工智能·agent
probably1211 小时前
基于水利部技术标准的山洪灾害科学防治体系建设探析
大数据·人工智能
自养Agent1 小时前
Agent Harness 从用到会造:写 MCP server,先写它会怎么坏
人工智能
软件史记1 小时前
免费 GLM 上下文实测:检索在 50 万~60 万失守,80 万仍被服务端接受
人工智能
晨间晓1 小时前
图片里的细小噪点怎么平滑?用华为云码道开发 OpenCV 图像滤波对比工具
人工智能·opencv·华为云
知寻智能1 小时前
把 AI 回答的来源列表拆成三层:引用位置、URL、域名
人工智能
十方空烬1 小时前
开源雷达 · 2026-10-18:模型不再是主角,agent 的操作层才是
开源