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

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

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

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

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

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

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

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

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

Event 通过 Hash Chain 串联: hash = sha256(seq|id|actor|action|target|payloadHash|at|prevHash)

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

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

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

允许用户把特定范围的记忆授权给特定的 App。比如: grant --app cursor --scope work --ttl 7d(只给 Cursor 应用读工作区记忆的权限,7天过期)。

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

如果你在浏览器打开 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 记忆,最让你担心的点是什么?

来源:稀土掘金 原文