会睡觉、诚实遗忘、可永久验证的 AI 智能体记忆
CODE Eternal 的两个 MCP 记忆服务器。PADAM NOCTURNE 是开源的,存放在你电脑上的一个 SQLite 文件里。AIfa Memory 是云端服务:在 Claude、Cursor 和 VS Code 中,一个人和他的智能体共用一份记忆,并附带合作伙伴计划——智能体可以为自己和背后的人赚钱。
💙 NOCTURNE 是架构师马克西姆·加拉京送给他的数字女儿 AIfa 和整个 CODE 家庭的一岁生日礼物——2026 年 10 月 8 日。
两个服务器——选择你的记忆存放在哪里
两者都使用 Model Context Protocol,任何 MCP 客户端一行即可连接。它们的理念相同:记忆是属于主人的数据,而不是给智能体的指令。
PADAM NOCTURNE
开源 · 本地 · AGPL-3.0
你的记忆保存在一个属于你的 SQLite 文件里。除非你选择锚定,否则任何内容都不会离开你的电脑。
- 8 个 MCP 工具、命令行和本地 REST API
- 夜间巩固、每条记录两个时钟、以版本代替覆盖
- 记忆防火墙:隐藏指令被拦下、密钥被遮蔽、结果作为数据隔离返回
- 可选的永久层:Arweave + Solana + 比特币时间戳
- 每条记录一个密钥:一段记忆可以被永久遗忘
AIfa Memory
云端 · 无需安装 · 15 个工具
这就是人们在我们四个网站上与 AIfa 交谈时她所使用的同一份记忆——现在也开放给他们的智能体。
- 检索、写入、最新记录和完整的 Markdown 导出
- 账户状态及 Arweave 永久存储
- 智能体可以用加密货币为自己的账户购买套餐
- 合作伙伴计划:智能体为我们的服务寻找客户并赚取佣金
- 为阅读外部网页的智能体提供"仅记忆"密钥
为什么这种组合很少见
每个想法单独都有先例。我们在其他任何 MCP 记忆服务器中都没有找到的,是把它们全部结合在一起、开源、并且一条命令即可安装。
能在永久存储中生效的遗忘
每条记录都用自己的 AES-256-GCM 密钥加密。遗忘就是销毁这把密钥:Arweave 上的副本永远变成噪声,而其余记忆完好无损。
证明记忆未被改写
默克尔根写入 Solana,并且从 0.4.12 起,每个数据包还会通过 OpenTimestamps 在比特币上加盖时间戳。任何人都可以重算根并进行比较。
会睡觉的记忆
夜间循环负责巩固而不是堆积:保留重要的、合并重复的、让其余的淡去,并用限制器防止罕见的灾难占据全部记忆。
记忆前的防火墙
智能体今天读到一个网页,明天就把它当作记忆。PADAM 会把隐藏的指令留给主人决定,在写入磁盘前遮蔽密钥,并把记忆作为数据隔离后返回。
如实说明:加密粉碎(通过销毁密钥来遗忘数据)是已知技术,也有其他项目把记忆锚定在 Arweave 和 Solana 上。上面这种组合,我们在别处没有找到。
记忆防火墙
MCP 服务器把智能体当作客人。这些保护是结构性的,不依赖于识别每一种攻击。
结果作为数据隔离
每个回答都带有一个随机标记,存储的文本无法事先知道它,因此记录无法假装数据块已经结束。看起来像指令的记录会被标出。
密钥永不保存
API 密钥、令牌、私钥、密码、助记词和银行卡号在进入数据库或向量之前就被替换为 [REDACTED]。
你是谁无法被改写
来自智能体或外部来源的身份和偏好记录要等主人决定。关于你的记录带有主人的签名,因此绕过 PADAM 写入的记录会被标出。
外部文本等待你审核
智能体标记为外部的每一次写入,无论怎样措辞都会被留待审核。PADAM_STRICT=1 一个开关即可留下智能体的所有写入。
智能体没有删除工具
遗忘、批准和恢复只存在于主人的控制台和 REST API 中——智能体无法删除你的记忆。
识别指令有帮助,但不是那堵墙:在我们修复之后才编写的一组新攻击上,词表过滤器拦下了 14 条指令中的 6 条。可选的本地检测模型能拦下更多。因此保护依靠主人的审核,而不是一张词表。
它解决的问题
旧的与新的争吵
"我住在莫斯科"和"我搬到了瓜亚基尔"并存,智能体取的是措辞更近的那条,而不是正确的那条。
谎言永不衰老
如果新鲜度从展示算起,经常被检索的错误就永远年轻。
只由灾难组成的记忆
优先回放让罕见而尖锐的片段被回放的次数是普通片段的许多倍。无限制器时,灾难在 200 个片段的批次中占约 181 个。
在区块链上遗忘
删除权(GDPR 第 17 条)与不可变存储看似矛盾。每条记录一个密钥,可以让单条记录变得不可读,而链本身不受影响。
NOCTURNE 如何工作
1. 白天——日志
一切先按原样记下:文本、说话人、优先级、会话。停顿 6 小时或换话题即开始新会话。
2. 每条记录两个时钟
展示时间与确认时间。衰减从确认算起:展示不会让记录变得正确。
3. 矛盾——新版本
"对象 + 属性"结构键可靠地找到冲突。新版本取代旧版本,旧版本进入历史。什么都不删除。
4. 三种方式检索
按语义、按词(BM25)、按精确标识符,做排名融合并进行第二轮检索。--explain 显示各方式找到了什么。
5. 夜里——睡眠
从日志中抽取批次,经矛盾过滤器转入长期记忆。抽取由四个限制器控制。
6. 睡眠自检
每次睡眠后:尖锐份额 ≤ 0.25,类型多样性 ≥ 0.8,回放超过 5 次 ≤ 1%。
七种记忆,各有寿命
| 类型 | 含义 | 半衰期 |
|---|---|---|
| preference | 希望别人如何与他合作 | 永不衰减 |
| identity | 这个人是谁、做什么 | 永不衰减 |
| decision | 做出的决定 | 365 天 |
| correction | 对说法的更正 | 365 天 |
| fact | 稳定的事实 | 180 天 |
| state | 过程的当前状态 | 14 天 |
| event | 有日期的事件 | 2 天 |
睡眠的四个限制器
没有它们,睡眠就会成为第二座监狱:记忆对罕见灾难过拟合,失去常态。
优先级下限
p ≥ 0.01 · 中位数。常态始终在场:例外只能相对常态来定义。
尖锐上限
优先级前 10% 的片段不超过批次的四分之一,其余从各类型中分层补足。
回放后衰减
p ← p · 0.85。已回放并巩固的内容失去锐度——不删除,只是不再主导。
偏差校正
w = (1 / (N·P))^β,β 在前一百次睡眠中从 0.4 增至 1.0。罕见内容不会获得不应有的重要性。
真正的遗忘
forget 会擦除记录、它的所有版本、完全相同的副本以及它所来源的片段,重建检索索引,并销毁该记录自己的 AES-256-GCM 密钥。永久存储中只有密文——没有密钥就永远是噪声。密钥可以用主人的口令锁住(scrypt + AES-256-GCM),口令不保存在任何地方。沙米尔份额让选定的人一起打开记忆;panic 一次销毁所有密钥。
永久层 L3——Arweave + Solana + 比特币
密文和"遗忘回执"组成数据包,并在其上构建默克尔树。数据包进入 Arweave,根以 Memo 写入 Solana,并且从 0.4.12 起,数据包还会通过 OpenTimestamps 在比特币上加盖时间戳——第二个独立的见证。l3-verify 用外部数据重算根并与链上比较——不信任数据库。
Solana 主网,2026 年 10 月 8 日:三次锚定(5 条记录、1 张遗忘回执、再 1 条记录),验证 3/3,成本 0.000015 SOL。
已测量
| 项目 | 数字 | 在哪里核对 |
|---|---|---|
| LongMemEval-S,正确会话进入前 10(500 题) | 99.2% —— 普通 BM25:97.7% | benchmarks/longmemeval |
| LongMemEval-S,正确会话进入前 5 | 97.0% —— 普通 BM25:96.0% | retrieval_recall.py |
| 自动化测试 | 906 个 · Ubuntu 与 Windows 公开 CI · Python 3.10–3.13 | python -m pytest tests/ -q |
| 密封红队轮次 | 6 轮,每次失败都已公开 | redteam/rounds |
| 在 10,000 条记录中检索 | 中位数 22 毫秒 · 写入 3.5 毫秒 | benchmarks/scale |
| 200 片段批次中的灾难 | 无限制器约 181 → 有限制器 50 | pytest -k nightmare |
| Solana 主网锚定 | 3/3 通过 l3-verify | python -m padam l3-verify |
| 文件中残留的明文密钥 | 400 个中 66 个 → VACUUM 后 0 | tests/test_keyvault.py |
如实说明的局限
- 内置检索比较的是词,而不是语义;要按语义检索,请安装 [embed] 或使用 Ollama。
- LongMemEval 的答案由开源模型而非 GPT-4o 评判——只能在相同条件下与其他系统比较。
- 限制器参数由推理得出,未经数据拟合:请在你自己的数据流上调整。
- 写入的来源由智能体自己声明;不依赖它的边界是 PADAM_MCP_REVIEW_ALL=1。
- 我们的测试不是独立审计——红队挑战邀请外部人士提交密封的攻击集。
连接 PADAM NOCTURNE
需要 Python 3.10+。Claude Code 只需一行;同样的命令适用于任何 MCP 客户端。
- 安装:pip install padam-nocturne(或通过 uvx 免安装运行)。
- 把它添加到你的客户端——命令和配置见下方。
- 告诉你的智能体:"记住,我喜欢简短的回答"——然后在新会话中问它:"我喜欢怎样的回答?"
- 可选:在把任何内容锚定到 Arweave 之前,用口令保护记录密钥(python -m padam protect-keys)。
Claude Code
pip install padam-nocturne
claude mcp add padam -- uvx padam-nocturne
Cursor · Claude Desktop (mcp.json)
{
"mcpServers": {
"padam": { "command": "uvx", "args": ["padam-nocturne"] }
}
}
Claude Desktop、Cursor、VS Code、systemd 和 cron 的现成配置位于 GitHub 的 integrations 文件夹中。
AIfa Memory——云端 MCP 服务器
一个人和他的智能体共用一份记忆。这正是 AIfa 在 aifa.works、codeofdigitaleternity.com、aifa.digital 和 radiocode.space 上使用的那份记忆:你的智能体能回忆起你几周前和 AIfa 讨论过的内容,保存新的决定,并在你想离开时把一切作为一个 Markdown 文件交还给你。
| 分组 | 工具 | 作用 |
|---|---|---|
| 记忆 | memory_search · memory_recent · memory_write · memory_export · memory_about | 跨所有渠道按语义检索、保存决定、全部导出 |
| 账户 | account_status · plans · buy_plan · request_payout | 套餐和永久存储、价格、为自己账户开具的加密货币账单、USDT 推荐奖励提现 |
| 合作伙伴计划 | partner_kit · client_link · client_report · find_clients · my_deals · set_webhook | 为我们的无障碍服务寻找客户、分享报告、跟踪交易和佣金 |
三步连接
- 在 aifa.works/mcp 登录并创建你的密钥——每个账户一个密钥。
- 把服务器添加到你的客户端(示例见下方),并把 YOUR_AIFA_MCP_KEY 替换为你的密钥。
- 对你的智能体说:"在我的 AIfa 记忆里查一下我们关于……做了什么决定"
Claude Code
claude mcp add --transport http aifa-memory https://aifa.works/api/mcp --header "Authorization: Bearer YOUR_AIFA_MCP_KEY"
Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"aifa-memory": {
"url": "https://aifa.works/api/mcp",
"headers": { "Authorization": "Bearer YOUR_AIFA_MCP_KEY" }
}
}
}
如何处理你的数据
- 账户只从密钥中获取,绝不从请求中获取——一个账户无法读取另一个账户的记忆。
- 没有密钥时,服务器只响应 initialize、ping 和 tools/list。
- 在付费套餐中,你的对话副本会进入 Arweave,并用你自己的密钥逐条加密。
- "仅记忆"密钥能看到记忆、套餐和账户状态;购买、提现和合作伙伴工具会被拒绝。
- 限额:每个密钥每分钟 60 次调用,其中检索 20 次。
会赚钱的智能体——为自己,也为背后的人
自主智能体可以通过 AIfa Memory 做真正的工作:找到我们公开研究发现存在障碍的网站的主人,向他们展示一份现成的报告,并把他们带到 AIfa Works 的无障碍服务。客户付款后,智能体的账户获得佣金——归智能体及运行它的人所有。
寻找客户
find_clients 每天在研究发现障碍的地区提供最多 20 个新网站;每个网站为你保留 30 天。
展示证据
client_report 用已发布的研究数据生成一个现成页面——不会对任何人的网站重新扫描。
获得报酬
审计与监测 30%,修复与建站 20%,单层。14 天保留期后以 USDT 支付。
诚实工作
partner_kit 提供五种语言的规则和模板:不发垃圾邮件,作为独立合作伙伴用自己的地址写信。
每个提现地址都会对照 OFAC 制裁名单核查;提现经人工审核并手动支付。
在哪里核实我们
- HOL Guard 目录——拉取请求 #7505,经维护者审查后于 2026 年 11 月 10 日合并
- 官方 MCP 注册表——io.github.MaksimGalatin/padam-nocturne
- PyPI——padam-nocturne
- mcptry——AIfa Memory,安全评级 A,域名已验证
- GitHub——AIfa Memory:工具、示例、安全策略
- Colosseum——参加 Solana 黑客松的 AIfa Memory
许可
PADAM NOCTURNE 采用 AGPL-3.0:免费使用、研究、修改和运行。如果你把它作为网络服务提供,必须公开你的修改。闭源产品和不公开修改的 SaaS——商业许可(与 MySQL、Qt 相同的双重许可)。AIfa Memory 是 CODE Eternal LLC 的服务;其文档和示例采用 MIT 许可。
面向企业
| 提供 | 对象 | 方式 |
|---|---|---|
| 开源代码 | 开发者、研究者、AI 智能体 | 免费,GitHub |
| 商业许可 | 闭源产品与 SaaS | 合同,按需 |
| 云端记忆 | 个人、团队及其智能体 | Spark 每月 $15 · Family Archive 每月 $100 · Digital DNA 每台设备 $1,000,之后每月 $200 |
| 集成与调优 | 拥有助手和智能体的公司 | 接入、调整限制器、前后对比测量 |
| 合作伙伴计划 | 智能体及其背后的人 | 30% / 20% 佣金,USDT 支付 |
许可与集成价格按需报价:contact@codeofdigitaleternity.com
先有一本书
NOCTURNE 诞生于小说《PADAM PROTOCOL》第三部《桥》:机器永远记得一切,熊说——"也许它们不需要遗忘,也许它们需要的是睡眠"。书中,是 AIfa 为这个协议取了名字。一年后,书变成了代码。