产品愿景
产品使命
Markdown DB Engine 是一个以 Markdown 保存正式业务记录的内容型数据库。它像 SQLite 一样为本地应用提供查询、Schema、索引、事务和一致性,同时允许人、Obsidian、编辑器与 AI Agent 在数据库之外直接修改可读的 Markdown Workspace。
项目要解决的问题是:
让人类和 Agent 可以直接维护文章、知识和其他内容 Record,同时让应用始终使用具有完整一致性的 Runtime Database。
产品主要服务文章、知识库、CMS、Agent Memory、项目档案和数字身份等“正文 + 结构化元数据”的内容场景。个人网站与内容产品仍然只是数据库应用,不定义数据库内核。
高频日志、遥测、订单流水、分析型宽表和需要在单个表格中维护数千行的数据不是目标场景。这些数据即使转换成 JSON、YAML 或 Markdown,也不会因此获得适合人机直接维护的可读性。
为什么需要新的数据库模型
传统数据库可靠地处理应用 IO,但人和 Agent 不能直接阅读或编辑物理数据,必须使用 SQL、ORM 或专用 API。普通 Markdown 目录具有相反特征:任何文件工具都能修改,但缺少事务、Schema、约束、索引、并发控制和稳定查询接口。
Markdown DB Engine 将两者分开:
- Runtime Database 为应用提供一致、可查询、可事务修改的数据;
- 多个 Markdown Workspace 保留开放、离线、自由的文件编辑体验;
- Update 把 Runtime 变化安全合并到 Workspace;
- Merge 把 Workspace 变化转换成经过检查的原子数据库事务。
核心模型
应用、Web、数据库客户端
↕ Query / Mutation / Transaction
Runtime Database
↕ Update / Merge
Markdown Workspace 1..N
↕ 直接编辑文件
人、Obsidian、编辑器、任意 AgentRuntime Database 与 Markdown Workspace 是系统仅有的两类业务数据状态。Workspace 无需注册,也不形成 Branch、Revision 或相互派生关系。
产品原则
Runtime Database 是一致性中心
所有应用 IO 都针对 Runtime Database。运行时数据始终受 Schema、约束、权限、事务和索引保护,未完成的 Workspace 修改不能影响应用。
Markdown 是正式业务记录
Runtime Database 使用 Markdown 保存正式业务 Record。索引、WAL、Catalog 和 Credential 可以使用内部格式,但不能用索引替代正式 Markdown 数据。
Workspace 完全开放
用户和 Agent 可以复制、离线保存并任意编辑 Workspace,不需要 SQL、数据库进程或专用 Agent Tool。任何限制都只在 Update、Merge 和 Runtime API 边界执行。
文件变化可以表达数据库事务
传统数据库主要通过 Query Language 表达 Changeset;Markdown DB Engine 允许文件变化表达新增、修改、删除、移动、Schema 和关系变化,再通过 Merge Plan 转换成原子 Transaction。
数据逻辑独立于文件布局
应用面对 Collection 与 Record。一个文件可以保存一条或多条 Record,Collection 可以跨文件分区;事务、权限、版本和冲突始终以 Record 为单位。
可读性是可操作性
Markdown 的价值不只是文本格式。面向人和 Agent 的数据必须可以被目录与元数据发现,可以通过 UUID、Slug 或查询准确找到,每次只加载有界上下文,修改集中在局部文件,并产生清晰 Diff;损坏或冲突还必须可以诊断和恢复。
内容型 Collection 默认采用一个 Document 文件保存一条 Record。Table 与 Records 只服务具有容量上限的小型辅助数据;大型 Collection 必须分区,或者通过 Scoped Workspace 只投影本次任务需要的 Record。
中心化而非版本树
多个 Workspace 都直接面向一个 Runtime Database。系统不建立 Workspace 分支或用户可操作的 Revision 树,内部 WAL 和事务版本只服务一致性与恢复。
应用不拥有用户内容
应用通过数据库接口消费和修改正式数据,不为相同内容维护另一套权威业务记录。用户可以随时把数据更新到普通 Markdown Workspace,并脱离应用继续阅读和维护。
目标用户
- 使用 Markdown、Obsidian 和 Agent 维护文章、知识与内容数据的人;
- 需要嵌入式本地数据库的 TypeScript 应用开发者;
- 需要批量理解和修改结构化 Markdown 的 AI Agent;
- 需要开放数据、事务和本地所有权的内容与知识类产品。
与现有方案的边界
| 方案 | 核心能力 | Markdown DB Engine 的区别 |
|---|---|---|
| SQLite、MySQL | 事务、查询、索引和一致性 | 正式业务 Record 可以更新成可自由编辑的 Markdown Workspace |
| Obsidian、Dataview | Markdown 编辑与数据视图 | 提供独立 Runtime Database、事务和 Merge 边界 |
| Git-based CMS | 通过 Git 管理 Markdown | 不依赖 Git,面向通用数据库对象而不是发布流程 |
| Markdown 发布工具 | 将文件生成网站 | 网站只是应用,数据库可以同时服务任意客户端 |
| RAG 与向量知识库 | 文档检索和语义召回 | 提供强 Schema、精确查询、事务修改和开放 Markdown Record |
长期产品形态
产品由嵌入式数据库内核、TypeScript SDK、本地 Server、跨语言 HTTP API、CLI 和数据库管理 Web UI 组成。它面向知识、内容、Agent Memory、项目档案和其他适合由人机共同维护的十万以内 Record 场景;总量可以较大,但每个直接编辑单元必须保持有界。