专业、紧凑、信息密度高、简约现代的 KeePass 客户端,基于 Svelte 5 + Tauri 2 + Rust 构建。界面语言与视觉体系取自 Clipboard Desktop(同级项目的设置样式规约),本地优先、无同步上传。
- 标准 KDBX 4.0:通过
keepasscrate 读写(打开 / 新建 / 原子保存)。 - 三栏紧凑布局:分组树 → 条目列表 → 详情面板;全屏无状态栏的信息密度。
- 条目与分组 CRUD:新建 / 编辑 / 删除,条目标题、用户名、密码(掩码 + 显示切换)、URL、备注、TOTP 种子。
- 密码生成器:字符集开关、排除相似 / 易混字符、实时熵值读数。
- 搜索过滤:跨标题 / 用户名 / URL / 备注即时过滤,按分组筛选。
- 剪贴板安全:复制密码后按设定秒数自动清空;锁定策略(自动锁定、锁定即清剪贴板)。
- 设置页:外观 / 显示 / 紧凑 / 安全 / 数据库默认值 / 关于,修改即时生效,视觉与 Clipboard 设置页一致。
| 层 | 选型 |
|---|---|
| 前端 | Svelte 5(runes)+ SvelteKit(adapter-static SPA) |
| 桌面壳 | Tauri 2(Rust) |
| 后端 | Rust:keepass(KDBX)、serde、tauri 命令 |
| 样式 | 20 语义主题色 + 共享设置原语(源自 Clipboard 规约) |
- Node.js 24(
.nvmrc已固定;类型检查与构建依赖其原生 TS 剥离) - Rust stable(版本由根目录
rust-toolchain.toml固定,rustup 会自动安装) - Windows:Visual Studio Build Tools(MSVC)+ WebView2 运行时;首次
cargo build需要联网拉取 crates - Android 构建需另备 JDK 17 + Android SDK/NDK(见
docs/android.md)
npm install
npm run dev # 浏览器预览(demo 金库,localStorage 演示)
npm run tauri dev # Tauri 桌面运行
npm run verify # 全量校验:格式化 + svelte-check + build + rust test + clippy浏览器模式仅用于 UI 开发;真实 KDBX 读写行为以 Rust 后端为准。
发现安全漏洞请不要提交公开 issue:通过 GitHub Security Advisories(仓库 Security 标签页 → Report a vulnerability)私密报告。密钥与主密码从不离开本机会话;报告请附复现步骤与影响范围,我们会在修复发布前保持保密。
- 开发规约与任务流程:
skills/secpivot-dev/SKILL.md - 样式与主题规约:
skills/secpivot-dev/references/css-theming.md - 前后端契约:
skills/secpivot-dev/references/data-contracts.md - 安全模型:
skills/secpivot-dev/references/security-model.md - 路线图与验收:
TODO.md· 坑位清单:docs/PITFALLS.md
MIT