Expand description
zkv — Zero Knowledge Vault
本地优先、端到端加密的个人数据保险箱。详见 docs/prd/zkv.md。
Modules§
- agent
- agent 守护进程:无感缓存「已派生主密钥」,跳过每条命令的 Argon2id 派生(Unix-only)。
- app
- 应用状态机:连接 UI 与数据层(MVC 中的 Model+Controller)。对应 PRD §8。
- cli
- 无头(headless)CLI 命令层。对应 PRD §8(可脚本化命令行)。
- clipboard
- 剪贴板:复制 + 定时自动清空。对应 PRD §7(安全特性)。
- crypto
- 加密原语:Argon2id 派生 + XChaCha20-Poly1305(L1)。
- db
- 内存 SQLite 数据库:连接管理 + schema(含 FTS5)。对应 PRD §5。
- error
- 统一错误类型,全 crate 共用(L0)。
- model
- 数据模型(L1)。对应 PRD §5 / §5.1。
- search
- 搜索与过滤。对应 PRD §6。
- store
- 数据操作 CRUD。基于
rusqlite::Connection(由crate::db::Database::conn提供)与crate::model。对应 PRD §5/§6。 - style
- 统一主题源:
ratatui_style解析一份编译期 CSS,同时供给 TUI(ratatui::Style) 与 CLI(ANSI 字符串)。TUI 与 CLI 同源,改这一处即可整体换肤。 - totp
- TOTP 验证码生成(RFC 6238)。对应 PRD §安全特性 —— 为 password 条目的
totp_secret实时生成 6 位验证码,供 CLIotp命令与cp -f otp复用。 - ui
- TUI 主循环:终端初始化、事件循环、渲染分发、终端恢复。对应 PRD §8。
- vault
.zkv加密容器:文件头、解锁/保存/锁定。对应 PRD §3、§4。