基于 Obsidian + Submodule 的“外接知识库”方案
  AI

基于 Obsidian + Submodule 的“外接知识库”方案

 次点击
13 分钟阅读

在多人的研发团队中,文档往往是“熵增”最快的地方。为了解决文档没人写、没人看、没人同步的顽疾,我们引入了一套结合 Obsidian 思想与 Git Submodule 隔离机制的全新文档工作流。


一、 核心理念:从“手动维护”转向“自动化编译”

我们不再把文档看作死板的文字,而将其视为 “可编译的语料”

  • 输入 (Raw): 研发过程中的碎片资料(SQL、代码、草案)。

  • 编译器 (AI Agent): 负责理解逻辑、建立关联。

  • 产出 (Wiki): 最终呈现在 Obsidian 中的结构化、可跳转的知识体系。


二、 目录规范:隔离与引用的艺术

我们在项目根目录约定了严格的 /docs/ 规范(本章着重讲 /docs/lib 文件夹),并通过 CLAUDE.md 约束 AI 行为:

/docs/
├── raw/                 # 📦 原始资料输入区 (Read Only)
│   ├── 01-prd/          # 产品需求 / 业务流程
│   ├── 02-architecture/ # 架构草案
│   └── ...              # 其他原始输入
├── wiki/                # 🧠 正式知识库输出区 (Write/Read)
│   ├── sources/         # AI 编译出的标准系统笔记
│   └── index.md         # 知识库入口导览
├── lib/                 # 📚 公共依赖层 (Git Submodule - Read Only)
│   ├── arch-kb/         # 全局架构规范
│   └── test-kb/         # 自动化测试标准
└── assets/              # 🖼️ 静态资源区 (Canvas, Images)

三、 深度解析:为什么 lib/ 规划为 Git Submodule?

这是本套方案中最具“架构感”的设计:在物理层面做“硬隔离”,在逻辑层面做“无感集成”。

1. 物理隔离:解决“知识腐烂”

  • 单点维护: 架构规范和测试标准是公司级的资产。通过 Submodule 引入,意味着项目引用的永远是“标准源”。

  • 版本锁死: 我们通过 Git 的 Commit ID 锁死依赖版本。当全局规范更新时,项目组可以根据自身节奏决定何时 git pull 更新,避免文档内容产生“非预期抖动”。

2. 逻辑统一:对 Obsidian 的“透明性”

  • 无感使用: Obsidian 并不感知 Submodule 的存在。对它而言,lib/ 只是一个普通的文件夹。

  • 双向链接: 我们在项目 Wiki 中可以直接使用 [[lib/arch-kb/Auth-Standard]] 引用全局规范。

  • 价值: 这种设计实现了 “分布式的管理权限”“单体式的知识搜索体验”

3. 项目独立:对 CI/CD 与新人友好

  • 独立存在: 每个项目都是自洽的。如果不使用 Obsidian,它依然是一个标准的代码+文档库。

  • 隔离修改: Submodule 机制强制了“只读”习惯。新人改不动 lib/,这保护了全局规范不被业务代码中的特例逻辑所污染。


四、 落地:AI 如何与这套结构协作?

当我们需要更新业务逻辑文档时,工作流如下:

  1. 投放语料: 将新的代码片段或设计草案丢进 /docs/raw/

  2. 调用编译器: 唤起 AI Agent:“请对比 raw/ 里的新 SQL 和 lib/arch-kb 里的设计规范,为我更新 wiki/sources/ 下的领域模型笔记。”

  3. 自动关联: AI 会在生成笔记时,自动识别 lib/ 下的外部依赖并打上双向链接。

  4. 视觉观测: 开发者在 Obsidian 中打开 wiki/,通过 Graph View (关系图谱) 确认业务逻辑是否符合 lib/ 定义的架构边界。


五、 给团队的建议

这套方案的目标是:让文档在 raw 里野蛮生长,在 wiki 里优雅编译,在 lib 里严谨统一。

作为研发成员,你只需要:

  1. 克隆时带上递归(如有外部依赖): git clone --recursive

  2. 维护好 raw/ 给 AI 提供真实的原材料。

  3. 享受 Obsidian: 把它当作你理解复杂项目的 IDE。


一句话总结:
我们通过 Git Submodule 在各个项目间共享“法律”(lib),通过 AI 编译器在项目内生成“历史”(wiki),最终在 Obsidian 中统一我们的“认知”。

这种方案不仅是对独立项目最友好的管理方式,也是 AI 时代构建企业级知识图谱的最短路径。

© 本文著作权归作者所有,未经许可不得转载使用。