Obsidian+WorkBuddy+Gitee:打造AI驱动的个人知识库管理方案
一直有个说不出口的困惑我用 Obsidian 记了两年多笔记文件越来越多可真到要用的时候还是习惯性地打开搜索引擎重新查一遍。三千多个 Markdown 文件像一座没人整理的仓库存得进去取不出来。后来我试着把 AI 接进笔记库陆陆续续换过好几个方案最后稳定跑起来的就是这套 Obsidian WorkBuddy Gitee 三联组合。这套组合的定位很清晰Obsidian 负责本地数据的存储、双链和插件生态WorkBuddy 负责把大模型能力“挂”到你的笔记上Gitee 负责把整个库同步到云端并保留每一次修改历史。它解决的是个人知识管理里的三个核心问题笔记怎么存、笔记怎么被 AI 用起来、笔记怎么多端安全备份。适合已经积累了大量 Markdown 笔记、想让笔记被“问回来”的人也适合想用 AI 做资料整理、卡片复习和项目记录的朋友。1. 为什么是 Obsidian WorkBuddy Gitee方案选型背后的真实需求1.1 个人知识库的四大痛点正好对应三件套个人知识库听起来很高级但实际用起来绕不开四个问题散、乱、死、险。“散”指的是笔记分散在各处——微信收藏夹里有文章、备忘录里有灵感、Zotero 里有文献笔记、本地还有一堆 Word 文档。等你真想整理的时候根本不知道去哪找。“乱”更常见好不容易把文件收进同一个文件夹命名规则却不统一今天叫“AIGC 笔记”明天叫“ai_gc_final_v3”到月底自己都看不懂。“死”是说笔记只是静态的文字堆存完就再也没有被翻出来使用过写的时候花了两小时读的时候只花了两分钟过两个月连自己写了什么都不记得。“险”字最容易被忽略——本地笔记如果没做同步硬盘坏一次、电脑丢一次几年积累直接清零。三联组合恰好一一对应Obsidian 用一个 vault 文件夹把零散内容收成统一格式解决“散”和“乱”WorkBuddy 提供 AI 问答和自动整理让笔记从“死文字”变成“可检索、可提问”的活数据Gitee 作为远程 Git 仓库负责备份、同步和历史版本解决“险”。1.2 三件套职责拆解存储、智能、同步各司其职先说 Obsidian。它本质上不是一个“软件”而是一个围绕纯文本 Markdown 文件运行的编辑器。每个 vault 就是一个普通文件夹里面的每篇笔记都是一个 .md 文件。这种设计的优势被很多人低估了纯文本意味着 20 年后文件依然能打开意味着可以在任何设备上用任何工具处理也意味着 AI 可以直接读取整个目录而不需要解析私有数据库。双链功能是另一个卖点。笔记之间的 [[双向链接]] 不是摆设它能在文件之间建立真实的关联网络。AI 自动生成的标签和链接会被 Obsidian 识别成知识图谱这个图谱反过来又是一层可视化索引。再说 WorkBuddy。把它理解为一个 AI 工作台可能更准确。它做的事情可以粗分为两层会话层让你能和云端的语言模型对话上下文层则把本地 vault 目录作为检索来源回答问题时能引用你自己记过的内容。也就是说你问“我去年关于 RLHF 的笔记里提到了哪三个关键观点”它能在你的笔记里找答案而不是凭空给你编一段。最后是 Gitee。它负责版本管理、云端镜像和多人协作。每次修改都可以 commit 一次哪天改乱了一条命令就能回到之前的版本。对比网盘同步Git 同步的粒度细得多——网盘只能恢复“覆盖前的文件”Git 能恢复“上一次提交时的整个目录快照”。1.3 对比其他方案为什么不用“全家桶”有人会问市面上的 AI 知识库工具那么多为什么要自己拼这一套原因有三点数据主权、成本、自由度。第一数据主权。用第三方在线笔记工具数据永远在别人的服务器上。而 Obsidian Gitee 这套方案里笔记本体在你硬盘上Gitee 只扮演备份仓库的角色你的核心数据没有被任何 AI 服务商拿去训练。WorkBuddy 只在需要问答或整理时把相关内容发送给模型你可以按需控制而不是把所有笔记一股脑托管出去。第二成本。很多“AI 知识库”产品按年订阅动辄几百上千免费额度还非常抠门。自己接线模型按 token 计费日常整理和问答一个月可能就是一杯奶茶钱。Gitee 的私有仓库免费Obsidian 对个人用户免费真正的边际成本几乎为零。第三自由度。现成的知识库产品把模板、数据结构、导入导出格式都给你定死了想做一个自定义工作流非常痛苦。而三联组合的每一层都可以替换不想用 WorkBuddy 可以换其他 AI 助手客户端不想用 Gitee 可以换国外的 GitHub 或 GitLab甚至想加一层自动化脚本也随便写。这种“非绑定”的架构长期使用下来才是最省心的。对比维度在线全功能知识库网盘同步笔记Obsidian WorkBuddy Gitee数据所有权平台方掌控平台方掌控本地优先完全自控离线可用依赖网络依赖网络完全可用版本管理简单回收站简单覆盖记录Git 全量历史AI 增强内置但受限无通过 WorkBuddy 自由配置成本年费订阅会员费几乎零成本可扩展性低低高2. 环境搭建三联组合的安装与连通性验证2.1 Obsidian 初始化第一次打开就做好这 3 件事Obsidian 安装很简单官方下载稳定版后一路下一步即可。但初始化阶段有三件事容易被忽略建议第一次打开 vault 时顺手做完。第一件事vault 路径不要带中文和空格。虽然 Obsidian 本身能处理中文文件名但 Git 在 Windows 下对中文路径的处理偶尔会出幺蛾子比如 commit 后显示乱码、文件名冲突等。一开始就放在D:\Notes或~/Documents/vault后面能省掉很多排查时间。第二件事关闭“自动更新链接”之外不必要的插件。新建 vault 后 Obsidian 默认只开启几个核心插件其他全部关掉。我见过很多人一上来就装二十个插件结果哪个都不熟出了问题还分不清是谁的锅。正确的做法是先熟悉核心用法等流程稳定了按需加插件。核心插件里建议开启的是“标签列表”“大纲”“关系图谱”和“模板”暂时不用碰一堆社区插件。第三件事配置“模板”和“附件默认保存路径”。Obsidian 设置里有一项“文件与链接 附件默认存放路径”建议设置成 vault 下的/assets目录。不然你每次粘贴图片PNG 文件就会和笔记文件混在一个目录里时间一长Git 仓库里全是类似Pasted Image 20240101120000.png的文件提交记录没法看。提示Obsidian 的配置文件obsidian.json和.obsidian目录记录了工作区布局、插件状态等信息。要不要纳入 Git 同步取决于你是否希望多个设备保持完全相同的界面和插件配置。我的建议是同步但排除workspace.json因为它记录了窗口位置和打开的文件跨设备同步容易出现布局错乱。2.2 Gitee 仓库与 SSH 配置把本地库接到云端Gitee 这一步先在网页上注册账号然后新建仓库。这里有一个很多新手纠结的问题开源许可证选什么我的建议很简单如果你建的是私有仓库许可证完全不用管直接跳过如果是公开仓库想省事选 MIT想让代码/笔记被别人使用且保留版权声明选 Apache-2.0一般个人笔记仓库用 MIT 就够了。公开仓库的许可证本质上是告诉别人“你可以怎么用”没有许可证的公开仓库在法律上反而默认保留所有权利。仓库建好之后本地要生成 SSH 密钥并配置到 Gitee避免每次推送都输密码。打开终端执行ssh-keygen -t ed25519 -C 你的邮箱example.com一路回车生成密钥后复制公钥内容cat ~/.ssh/id_ed25519.pub然后到 Gitee 网页端“设置 安全设置 SSH 公钥”里粘贴保存。验证是否生效ssh -T gitgitee.com如果看到类似“欢迎使用 Gitee”的提示就说明 SSH 通了。接下来在 Obsidian 的 vault 目录里初始化 Gitcd /path/to/vault git init git add . git commit -m first commit: init vault git remote add origin gitgitee.com:你的用户名/仓库名.git git push -u origin master这里有个细节值得多说一句Gitee 新建仓库时默认分支名可能是master也可能是main取决于你在创建页面选了什么。如果远程分支是main而本地提交在master推送会报错。最稳的做法是推送前先查一次分支名git branch -M main git push -u origin maingit branch -M main会把本地当前分支重命名为 main然后再推送两边就对齐了。2.3 WorkBuddy 接入给知识库装上 AI 引擎WorkBuddy 的安装不复杂拿到安装包后按提示安装即可。装完以后核心的配置项有三个模型 API 配置、知识库目录、索引构建。模型配置这一块WorkBuddy 通常支持自定义大模型的 API 地址和密钥。建议填写你正在使用的大模型服务品牌的密钥填写完之后先发一条简单的消息测试连通性能正常回复再做下一步。知识库目录配置指定到 Obsidian 的 vault 文件夹。此时 WorkBuddy 会读取目录下的结构包含所有 .md 文件。有的版本会做本地向量索引把笔记内容切块并生成向量有的版本只是建立文件清单靠每次对话时实时检索。无论哪种模式添加目录之后都需要等它完成一次索引构建。索引完成前AI 能回答但大概率会漏掉文件这一步不能跳。全部配置完成后在 WorkBuddy 的对话框中直接提问如果它能引用你笔记里的信息来回答说明组合已经打通了。这时候整条链路是这样的Obsidian 提供数据文件和双链关系Gitee 负责仓库版本和远程备份WorkBuddy 提供模型会话和本地检索增强。三个角色各管一段互不干扰。3. AI 核心玩法让知识库从“存笔记”变成“被提问”3.1 AI 自动标签与笔记结构化组合打通之后第一个值得做的是用 WorkBuddy 给旧笔记批量生成标签和元信息。这类任务不需要一次性全库处理建议按文件夹分批处理效果更好。操作方式在 WorkBuddy 里选中一个目录范围然后给一段提示词。我常用的一段提示词模板如下可以直接复用角色你是我的笔记整理助手。 任务为下面的笔记生成结构化元信息。 要求 1. 提取 3 到 5 个具体标签 2. 用两句话写一个摘要 3. 推荐 3 个可能在库内相关的主题或关键词 4. 给出一个建议存储路径一级分类/二级分类/文件名.md。 笔记内容开始 把笔记内容粘贴到这里处理完毕后把 AI 生成的摘要和标签填到笔记顶部的 frontmatter 区域。例如--- tags: [大模型, RLHF, 对齐] summary: 这篇笔记记录了 RLHF 的核心流程和三个常见失败模式。 aliases: [RLHF失败模式, 人类反馈强化学习] --- # 强化学习笔记 ...Obsidian 会自动识别tags、aliases这些字段。之后你在左侧栏点一个标签所有相关笔记就全出来了点一个别名也能跳到同一条内容。这个过程看起来简单但实际把几千条旧笔记全部手工补完大概要花一个周末而 AI 半小时能跑完一批你要做的只是抽查和修正。3.2 基于本地笔记的智能问答这里的核心机制是 RAG检索增强生成。用生活化的比喻传统大模型聊天相当于一个记忆力有限的图书管理员你问什么他凭记忆答什么RAG 则像是先让管理员去书架上翻找相关段落再结合这些段落组织回答。个人知识库的问答必须走后者否则模型没有见过你的私有笔记不可能凭空知道你在某次会议里记录了什么结论。在 WorkBuddy 里开启知识库问答模式后提问时要注意方式。直接问“我关于写作的笔记有哪些”效果一般更好的问法是“我记录过哪些关于写作技巧的具体方法请给出笔记链接和原文引用”。后者更符合检索逻辑回答也会更准确。如果回答里引用了某篇笔记的具体内容建议顺手点开验证一遍。RAG 系统有一个通病检索到的内容里如果恰好有三五段自相矛盾的信息模型会把它们揉在一起产出一个四不像答案。这不是哪一家产品的问题而是这个技术路线本身的特性。3.3 AI 生成复习卡片与知识回顾知识库的另一个大用途是间隔重复。人在短时间学大量知识后遗忘很快传统做法是手动做 Anki 卡片。我不止一次在这些步骤里半途而废因为摘录笔记已经够费时间了再做卡片根本没有精力。用 WorkBuddy 把笔记转成卡片能省下大部分时间。提示词大概是请根据以下笔记内容生成 5 张问答题卡片。 格式问题 换行 答案 空行用制表符分隔问题和答案。 每张卡片必须来自笔记的真实内容禁止编造。生成后直接复制到 Anki 或复用制表符导入。还有一个比较省事的用法让 WorkBuddy 按主题做每周总结比如“整理本周新增笔记中最重要的 10 个观点”然后把总结存成一篇新的weekly/2024-W22.md。这样既保留了原始笔记又形成了一次人工知识压缩复习密度比单看笔记高很多。3.4 Git 提交信息也交给 AI用 Git 管理 vault 时最麻烦的不是 push 代码而是写提交信息。每天改几个文件还要写清楚改了什么真的很烦。后来我直接把这件事交给了 WorkBuddy。具体做法在 WorkBuddy 里执行git status和git diff然后把输出丢给它让它生成一条符合 Conventional Commits 规范的提交信息。比如git status git diff把输出粘贴给 WorkBuddy加上一句请根据以上的 git 变更内容生成一条简洁的提交信息格式为 type(scope): description。它会生成类似docs(rlhf): 补充 PPO 训练稳定性的三组实践参数这样的信息。复制回来执行提交即可。这一步极大地提升了同步频率因为提交的成本降低了我更愿意用多次小提交替代一次大提交版本历史也干净得多。4. 同步与版本管理Gitee 在组合中的保姆级用法4.1 日常推送与拉取的完整流程联组合跑起来之后每天的标准流程其实非常固定。早上到了工位先打开终端执行git pull origin main这个动作把昨晚在其他设备上改的内容拉下来。晚上结束工作前执行git add -A git commit -m daily update git push origin main两句话知识库就能在 Gitee 上存一份快照。如果嫌敲命令麻烦给 Git 配置别名会更顺手git config --global alias.vault-sync !git add -A git commit -m sync $(date) git push origin main之后只需要执行git vault-sync就能完成提交并推送。如果你是 Windows 用户不想每次都手动敲可以开发一个简单的自动同步脚本让系统每两小时自动执行一次。但这里有需要特别提醒的地方自动同步必须建立在“工作区平时是干净”的前提下。如果你经常同时在手机和电脑上改同一个文件自动 pull 和 push 会造成大量冲突处理起来比手动麻烦得多。我的建议是先手动同步一到两周等养成了“改完即提交、开机先拉取”的习惯后再考虑上自动化。否则你以为它自动化了实际是自动化地制造冲突。4.2 多设备冲突的处理方式冲突几乎是不可避免的。尤其 Obsidian 这类本地优先工具如果你在 Windows 上改了abc.md又在手机上改了同一个文件两边都提交后下一次 pull 就会提示CONFLICT.碰到冲突别慌Git 会在文件里插入类似这样的标记 HEAD 第一台设备的修改内容 第二台设备的修改内容 其他分支我的处理步骤很简单打开冲突文件手动判断两边的内容哪边是最终想要的然后把标记和不需要的部分一起删掉。如果你完全看不懂那些标记说明这个文件根本还没被熟练同步过建议先检查一下是不是每次都把所有设备上的文件都拉到了最新再开始改。避免冲突的核心原则只有一条同一时间只在一台设备上改同一个文件。Obsidian 本身就是单机软件不存在多人实时协作的需求别给自己制造。4.3 大文件上传策略Gitee 不是网盘Gitee 的仓库有容量限制单仓库建议保持在 1GB 以内单文件不能超过 50MB。个人笔记库如果只存文字和少量截图问题不大但如果你把 PDF、高清图、视频素材全部塞进 vault很快就会到红线。应对策略有两种。第一种走 Git LFSLarge File Storage把大文件用指针替换内容存在 LFS 服务器上。操作方法git lfs install git lfs track *.pdf git lfs track *.zip git add .gitattributes git add 你的大文件 git commit -m add big files git push origin main第二种干脆不放进 Git。对大文件单独做一层归档PDF、电子书、课程视频统一放在网盘或本地硬盘的归档目录vault 里只存一个链接笔记.md写上“源文件见 xxx 网盘链接”。我强烈推荐第二种。知识库的价值在于文本内容的组织和关联电子书和视频本身不该参与双链和版本管理。把大文件挡在 Git 门外仓库会保持轻量push/pull 速度始终很快。4.4 保护隐私私有仓库与 .gitignore 配置Gitee 上建议默认创建私有仓库特别是知识库里可能包含工作资料、个人日记、未公开的想法。即使仓库内容不敏感私有仓库也能避免被搜索引擎收录。同时在 vault 根目录创建.gitignore文件把不该进版本库的文件排除在外。我的模板.obsidian/workspace.json .trash/ .DS_Store Thumbs.db *.tmp.obsidian/workspace.json是 Obsidian 的窗口布局文件每台设备各不相同纳入版本库只会每次同步都产生一次无意义的 diff。.trash/则是 Obsidian 的回收站如果里面存着已经删除的旧文件同步它们没有意义。仓库创建时如果选了公开许可证注意内容可能被搜索和克隆。公开笔记要做一次内容自查把包含密码、身份信息、公司内部信息的文件移到私有仓库或独立目录。我个人的做法是知识库整体是私有仓库只有那些明确希望分享的笔记才单独复制到另一个公开仓库。5. 实战排雷高频问题与解决速查5.1 启动异常Obsidian 打不开怎么办热词里有人搜“obsidian 打不开”这个我遇到过不止一次。大多数时候问题出在第三方插件上。Obsidian 启动时如果某插件崩溃可能导致整个应用闪退。解决第一步在团队设置里找到“安全模式”。Obsidian 自带的“限制模式”其实就是安全模式打开它后禁用所有第三方插件基础功能不受影响。如果安全模式下能打开说明是某插件的问题手动排查最近安装的新插件即可。如果安全模式也打不开检查 vault 文件夹的.obsidian/plugins目录把可疑插件文件夹临时改名逐一排除。更省事的做法是直接删除.obsidian/workspace.json再启动这个文件损坏也会导致黑屏或无法加载。5.2 SSH 与拉取推送类故障SSH 配置完后 push 报Permission denied (publickey)十有八九是公钥没配对。重启终端后先测ssh -T gitgitee.com如果还是报错检查~/.ssh下是不是有多个 key 文件确认 Gitee 上粘贴的公钥和本机默认使用的私钥是否匹配。有时~/.ssh/config里写了错误的IdentityFile路径也会导致认证失败删除这个文件或修正其中内容即可。push 时报rejected: non-fast-forward说明远程仓库有你本地没有的提交。执行git pull --rebase origin main把远程提交拉下来本地提交放在上面然后再 push。这个方式能保持提交历史是一条直线比直接 pull 产生 merge commit 更干净。5.3 AI 回答不准确、引用不到笔记内容如果你发现 WorkBuddy 回答质量很差经常答非所问先别急着怪模型。大概率是知识库索引没有更新。每当你新增或修改了大量笔记需要触发一次重新索引。相当于你把新书放上了书架但图书管理员还没登记。排查顺序第一确认输入的提问范围足够具体附带“根据我在笔记中的记录”这样的限定词第二确认 vault 目录已经授权给 WorkBuddy且没有被系统安全策略拦截第三查看索引状态面板确认没有被跳过的文件。最后一个小技巧提问时直接在问题里带上笔记关键词比如“我在RLHF 对齐那篇笔记里写了什么”检索命中率会明显更高。5.4 同步冲突和内容错乱的实战处理比较常见的坏场景是你出差时在飞机上离线改了文件同时家里另一台电脑也改了同一批文件等两边都 push 后才发现冲突。这时别直接git add -A把冲突标记提交进去要先把冲突文件处理完。如果冲突文件比较多可以用git status查看列表git status然后逐个打开搜索定位冲突区域处理完后再统一提交。处理技巧同样是按照“保留哪一边、删除标记”来做不需要看懂整篇内容。还有一个容易被忽略的点Obsidian 的双链本质上是文件名引用如果修改了文件名所有指向它的 [[链接]] 会在 Git 历史里保留旧名字但实际文件已经改名。Obsidian 有“自动更新内部链接”的能力前提是你通过 Obsidian 左侧栏“重命名”操作而不是直接在操作系统文件管理器里改文件名。直接改文件名会导致链接断裂这是新手最容易踩的坑。5.5 不要太早追求自动化最后分享一个观念上的提醒。三联组合的最大价值不是“全自动”而是“低摩擦”。我看到很多朋友在搭建这类知识库时第一件事就想去配自动化脚本、做全库向量化、接十几个 AI 工作流结果还没存几篇笔记就先花了三天调工具。我个人的经验是先用最简单的方式把闭环跑起来。哪怕是手动git push、手动复制笔记给 AI 整理先坚持一个月。如果这套习惯能留存下来再逐步加入索引优化、定时同步、自动标签、知识回顾卡片之类的进阶功能。工具组合本身不会让知识库变好持续记录并持续使用才会。知识库的核心永远是“用起来”而不是“攒得多”。我从一开始也想上全套自动化后来发现真正有用的自动化只有两类一类是 Git 同步脚本另一类是生成提交信息提示词。其他自动化要么不稳定要么不常需要。先把这两件事做熟其余功能按需加这个组合就能陪你走很久。
上一篇/下一篇内容由系统自动关联
返回资讯列表 →