跳到主要内容
Markdown DB Engine

产品愿景

产品使命

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、编辑器、任意 Agent

Runtime 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、DataviewMarkdown 编辑与数据视图提供独立 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 场景;总量可以较大,但每个直接编辑单元必须保持有界。