DiaryVault/diaryvault-memory-layer
GitHub: DiaryVault/diaryvault-memory-layer
一个开源的加密记忆层 SDK,让用户以选择性共享和加密验证的方式,安全地向 AI agent 提供个人上下文数据。
Stars: 1 | Forks: 0
# 🧠 DiaryVault 记忆层
**在不泄露数据的前提下,为 agent 提供上下文。**
一个开源、经过加密验证的 memory layer,让 AI agent 能够访问用户上下文——具备选择性共享、哈希验证和完全由用户掌控的特性。
[](LICENSE) []() []() []() []()
## 问题所在
AI agent 无处不在。它们为你安排会议、管理任务,并代你做出决定。但它们都面临同样的问题:**它们对你一无所知。**
目前的情况是:
- **Agent** 掌控执行和行为
- **平台** 掌控记忆(日志、embedding、上下文)
- **用户** 无法掌控任何持久化或可移植的东西
每个平台都存储了它自己版本的你——而你无法验证它、控制它、移动它,也无法证明它没有被篡改。
**目前不存在规范化的、用户拥有的 memory layer。直到现在。**
## 快速开始
```
pip install diaryvault-memory
```
### 创建你的 vault
```
from diaryvault_memory import MemoryVault
vault = MemoryVault(encryption_key="your-secret-key")
vault.create(content="I'm allergic to shellfish", tags=["health"])
vault.create(content="I work at a fintech startup in Seoul", tags=["work"])
vault.create(content="I prefer morning meetings before 10am", tags=["preference"])
vault.create(content="My salary is 150k", tags=["financial", "private"])
```
每一条记忆都经过 SHA-256 哈希处理、AES-256 加密、HMAC 签名,并打上了时间戳。
### 选择性地与 agent 共享上下文
```
from diaryvault_memory import ContextRequest
# Agent 请求 context
request = ContextRequest(
agent_id="scheduling-agent-001",
scope=["preference", "work"],
purpose="Personalize meeting scheduling",
)
# 用户控制共享内容(健康和财务数据已被阻止)
response = vault.share(request, denied_tags=["health", "financial", "private"])
print(response.memory_count) # 2 (only preference + work)
print(response.scope_granted) # ['preference', 'work']
print(response.scope_denied) # []
print(response.verify_all()) # True — every memory is hash-verified
# Agent 获取已验证的 context:
for mem in response.shared_memories:
print(f" [{', '.join(mem.tags)}] {mem.content} (verified={mem.verified})")
# [preference] I prefer morning meetings before 10am (verified=True)
# [work] I work at a fintech startup in Seoul (verified=True)
# Agent 无法看到:健康数据、薪资以及任何未经你批准的内容
```
agent 会获得加密证明,确信上下文是真实且未被修改的。用户则保留对共享内容的完全控制权。
## 为什么这很重要
| 如今 | 使用 DiaryVault Memory Layer |
|---|---|
| 每个平台都存储它自己版本的你 | 你拥有一个规范的 memory vault |
| 你无法验证 agent “记住”了关于你的什么 | 每一条记忆都经过 SHA-256 哈希处理且可验证 |
| 上下文是孤立的且不可移植 | 开放的 `.dvmem` 格式——自由导出和转移 |
| 平台可以在你不知情的情况下修改你的数据 | HMAC 签名可以检测出任何篡改行为 |
| agent 要么获取所有信息,要么什么也得不到 | 基于标签的选择性共享——由你决定共享什么 |
| 没有证据证明数据是何时创建的 | RFC 3339 时间戳,支持可选的区块链锚定 |
## 工作原理
```
┌─────────────────────────────────────────────────────────┐
│ USER'S VAULT │
│ preferences · health · work · financial · personal │
│ All encrypted. All hashed. All signed. │
└─────────────────┬───────────────────────────────────────┘
│
Agent requests context
(scope + purpose)
│
▼
┌─────────────────────────────────────────────────────────┐
│ SELECTIVE SHARING │
│ User (or policy) decides what tags to share │
│ Denied tags are never exposed │
│ Each shared memory includes hash + signature │
└─────────────────┬───────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ VERIFIED CONTEXT │
│ Agent receives: content + hash + signature │
│ Agent can verify: integrity, authenticity │
│ Agent cannot: access other memories, forge proofs │
│ Vault merkle root included for full integrity check │
└─────────────────────────────────────────────────────────┘
```
## 核心功能
**🔐 AES-256-GCM 加密** —— 每一条记忆都在客户端进行加密。你的密钥永远不会离开你的设备。
**🔗 SHA-256 + HMAC 验证** —— 内容哈希处理与签名。哪怕篡改一个字节,验证也会失败。
**🤖 Agent 上下文层** —— `ContextRequest` / `ContextResponse` 协议,供 agent 请求和接收经过验证的用户上下文。
**🏷️ 选择性共享** —— 按标签共享。按标签屏蔽。用户可以针对每次请求决定 agent 能看到什么。
**🌳 Merkle Tree 完整性** —— 为你的整个 vault 计算出一个单一的哈希值。证明没有任何内容被添加、删除或修改。
**📦 开放的 `.dvmem` 格式** —— 公开的 JSON 格式。没有供应商锁定。自由导入和导出。
**🌐 区块链锚定** —— 可选地将哈希锚定到 Arweave 或 Ethereum L2,以获得永久的、可被第三方验证的证明。
**🏠 支持自托管** —— 完全在你的硬件上运行。没有云。没有账户。无需信任。
## 应用场景
| 用例 | 描述 |
|---|---|
| **Agent 个性化** | 在不放弃数据的前提下,为 agent 提供经过验证的上下文 |
| **便携的身份** | 一个 vault,适配多个 agent——你的上下文随你而动 |
| **数据主权** | 证明你分享了什么、何时分享以及与谁分享 |
| **AI Twin 训练** | 用于训练你的个人 AI 的结构化、可验证的生活数据 |
| **数字遗产** | 以加密的持久性保存你的人生故事 |
| **法律证据** | 带有时间戳、防篡改的个人记录 |
| **健康时间线** | 可验证的病史和症状追踪 |
## 架构
基于四个原则构建:
1. **隐私至上** —— 加密在任何数据离开你的设备之前就在客户端完成
2. **验证一切** —— 每一个操作都会产生加密证明
3. **拥有你的数据** —— 开放格式、开放代码、随时导出
4. **持久化可选** —— 选择你的存储后端:本地、云或区块链
有关完整的技术深入探讨、威胁模型和 `.dvmem` 格式规范,请参阅 [ARCHITECTURE.md](docs/ARCHITECTURE.md)。
## 宏伟蓝图
DiaryVault Memory Layer 是 agent 时代信任方程式的一半:
- **Agent 信任** —— 我能信任这个 agent 做了什么吗? → [authe.me](https://authe.me)
- **数据信任** —— 我能信任 agent 正在使用的关于我的数据吗? → DiaryVault Memory Layer
**信任 = Agent 行为 + 数据完整性。**
## 路线图
- [x] v0.1 — 核心 SDK:哈希、加密、验证、存储、`.dvmem` 格式
- [x] v0.2 — Agent 上下文层:选择性、经过验证的共享
- [ ] v0.3 — 个人 AI 导出:fine-tuning 数据集、RAG embedding、知识图谱
- [ ] v0.4 — 区块链锚定:Arweave + Ethereum L2 (Base)
- [ ] v0.5 — AI Synthesis Agents:日历捕获、每日摘要、照片描述
- [ ] v0.6 — 丰富捕获:照片、语音、健康数据 agent
- [ ] v0.7 — Dead Man's Switch:非活动阈值、受益人访问
- [ ] v0.8 — 移动 SDK (iOS/Android)
- [ ] v1.0 — DiaryVault app 集成
## 理念
你的记忆属于你。不属于任何平台。不属于任何公司。也不属于任何算法。
Memory Layer 是为未来打造的基础设施,在那个未来里,每个人都拥有自己存在记录的经过验证的、可移植且隐私的凭证——而每一个与之交互的 agent 都能获得确切的、必需的上下文,仅此而已。
**这不是一个产品。这是一个协议。在它之上构建吧。**
## 许可证
MIT — 尽情使用它。Fork 它。在它之上构建。
**拥有你的数据。按你的条件去共享。**
[diaryvault.com](https://diaryvault.com) · [@diaryvault](https://twitter.com/diaryvaultinc)
标签:AI, Python, 数据加密, 无后门, 网络安全, 自动化代码审查, 记忆层, 逆向工具, 隐私保护