JavaDog程序狗
发布于 2026-09-13 / 5 阅读
0
0

【实操】一比一复刻狗哥的WorkBuddy+Obsidian知识库搭建

前言

🍊缘由

😈这篇是小伙伴催出来的

之前发过一篇 WorkBuddy + Obsidian 的知识库文章,公众号的小伙伴看完,来问具体怎么搭。

读者询问知识库搭建教程

行,这篇就把目录、模板和定时任务的设置都放出来,照着一步步建。

我这套用法很简单:笔记存在 Obsidian 的本地文件夹里,平时有资料先放进收集箱,WorkBuddy 每天定时整理。写博客时,再从整理好的笔记里找素材。

下面用的是我自己的目录。你可以先照着建,哪些用不上,后面再删。刚接触这两个软件的话,先做到能存笔记、能找到笔记就行,月检和写作管理可以晚点再加。


正文

🎯主要目标

  1. 建好 Obsidian 仓库,配上首页、收集箱和索引页。
  2. 统一笔记属性、标签和双链的写法。
  3. 配置 WorkBuddy 每日整理和月检任务,需要写博客的再加发布表。

🍪目标讲解

一. 先看我的目录

我的分类参考了 PARA。它原本只有项目、领域、资源、归档四类;收集箱、学习、写作和元信息,是我按自己的用途加上的,合起来才有下面这八个目录。PARA 作者的说明

文件夹放什么
00-Inbox刚记下的想法、剪藏和还没整理的笔记
10-Projects正在做的项目,有明确目标和截止时间
20-Areas需要长期关注的事,比如健康管理、运维值守
30-Resources整理后可以反复查阅的知识
40-Archives已结束的项目、旧资料,以及发布后的博客归档
50-Learning读书笔记、课程记录、学习复盘
60-Writing选题、文章草稿和发布记录
90-Meta笔记规范、标签说明、模板等

另外还有 DailyAttachments,分别放每日笔记和图片附件。

Obsidian 知识库目录结构

**前面的数字只是为了排序。**至于一条内容该放哪,可以拿你正在做的事来判断:有期限、要交付的,放项目;平时要持续维护的,放领域;查资料时还会用到的,放资源。

刚收进来的内容不用当场决定,先放 00-Inbox。但既然叫收集箱,后面就得有整理的动作,否则只是换了个收藏夹。


二. 装软件,把文件夹建起来

1. 创建 Obsidian 仓库

Obsidian 官网 下载对应系统的安装包,安装后打开,选择创建新仓库。

仓库也叫 vault,本质上就是你电脑上的一个文件夹。名字可以叫 MyBrain,位置选一个自己找得到、方便备份的地方,例如 D:/Notes/MyBrain

💡 记住这个完整路径,后面要让 WorkBuddy 打开同一个文件夹。

2. 让 WorkBuddy 访问这个仓库

还没安装的同学,可以从 WorkBuddy 官网 下载桌面端,按提示安装、登录。

在 WorkBuddy 中选择刚建的仓库文件夹作为工作空间,并按软件提示授予需要的访问权限。先发一句话检查路径有没有选对:

请列出当前工作空间根目录下的文件和文件夹,不要修改文件。

把返回结果和 Obsidian 左侧的目录对一下。新仓库还没内容的话,也可以先完成下面的建目录步骤,再回来检查。

下图是我已有的定时任务,截图中的 WorkBuddy 版本是 5.5.3。先看一下界面,具体设置放在第四节。

WorkBuddy 每日整理任务配置与运行历史

3. 创建目录

在 Obsidian 左侧文件列表中,新建下面这些文件夹:

00-Inbox
10-Projects
20-Areas
30-Resources
40-Archives
50-Learning
60-Writing
90-Meta
Daily
Attachments

先把名称对齐。后面的首页链接和提示词都用了这些名字,改目录名时,相关位置也要一起改。

4. 建一张首页

在仓库根目录新建 00-首页.md,把下面的内容放进去。示例中的日期换成你建库当天的日期。

Obsidian 首页导航

---
type: moc
title: 首页
tags: [type/moc, topic/meta]
created: 2026-09-13
updated: 2026-09-13
status: wip
---

# 首页

## 常用入口
- [[00-Inbox/收集箱|收集箱]]
- [[10-Projects/项目索引|项目]]
- [[20-Areas/领域索引|领域]]
- [[30-Resources/资源索引|资源]]
- [[40-Archives/归档索引|归档]]
- [[50-Learning/学习索引|学习]]
- [[60-Writing/写作索引|写作]]
- [[90-Meta/知识库规范|知识库规范]]
- [[90-Meta/标签体系|标签体系]]

## 整理安排
- 新内容先放收集箱。
- 每天由 WorkBuddy 整理,处理情况记在收集箱页。
- 每周查看整理记录,修正不合适的分类。
- 每月检查笔记属性和链接。

首页就是一张导航页。这里的 moc 是索引页的类型标记,后面普通笔记用 note

💡 建文件夹不会自动生成里面的索引页。 上面链接到的文件,接下来还要逐个建好。没建完时链接暂时没有目标,属于正常情况。

5. 建收集箱页

00-Inbox 里新建 收集箱.md

---
type: moc
title: 收集箱
tags: [type/moc, topic/inbox]
created: 2026-09-13
updated: 2026-09-13
status: wip
---

# 收集箱

临时笔记单独建成文件,放在这个目录下。
本页保留在原位,用来记录整理结果。

## 归档处置记录

## 待确认

Obsidian 收集箱页面

以后收进来的资料各存一篇,别全粘进这张收集箱页。WorkBuddy 整理时会跳过这张常驻页,把处理记录追加到下面。

6. 建各目录的索引页

按首页中的路径,分别创建 项目索引.md领域索引.md资源索引.md 等页面。暂时只有标题也行,有内容了再加链接。

我的资源库还分了九个子目录:

01-编程语言
02-前端工程
03-后端与框架
04-数据库与存储
05-架构与系统设计
06-DevOps与云原生
07-计算机基础
08-软技能与成长
09-工具与效率

这套分类偏程序员,你可以按自己的工作改。每个子目录再建一张索引页,比如 07-计算机基础/计算机基础-索引.md,然后从 30-Resources/资源索引.md 链过去。

资源库分类与索引页

到这里,回首页点一遍链接,确认能打开对应页面。目录建得漂不漂亮先放一边,入口能用更要紧。


三. 写笔记,先统一几个约定

文件夹建好了,接下来是往里面放什么、怎么写。

我主要约定三项:笔记顶部填属性,标签别乱起名,长内容按主题拆开。这些是我为了方便整理定的规矩,Obsidian 本身并不要求每篇笔记都这样写。

1. 笔记顶部放哪些字段

下面是一份普通笔记模板。顶部两条 --- 中间的部分叫 frontmatter,用 YAML 写,Obsidian 可以把它显示成属性。

---
type: note
title: 笔记标题
tags: [type/note, topic/java]
created: 2026-09-13
updated: 2026-09-13
status: wip
source: ""
---

# 笔记标题

正文……

type 写笔记类型,title 写标题,createdupdated 分别记创建、更新日期。引用网页时,把原文地址填进 source;没有外部来源就留空。

status 用来区分进度:还在整理填 wip,整理完成填 done,归档填 archived。写文章另用 draftpublished 表示草稿和已发布,别把笔记整理完成当成文章发布完成。

笔记 frontmatter 属性示例

💡 注意,type: note 是属性,type/note 是标签,两者不会因为写了其中一个就自动同步。这里沿用我的用法,都保留;整理时要检查它们是否一致。

可以把这份模板放进 90-Meta,以后新建笔记时复制。日期、标题和主题标签记得改,别把示例里的 Java 标签带到所有笔记上。

2. 标签怎么起名

我主要用下面几组:

标签用途示例
type/区分笔记类型type/notetype/moctype/article
topic/按主题查找topic/javatopic/networktopic/tool
status/按进度筛选,可选status/wipstatus/done

标签用小写英文,多词之间用连字符。已有 topic/tool 就接着用,别又建一个同义标签。

知识库标签体系

把常用标签和含义记到 90-Meta/标签体系.md。状态已经写在 status 属性里,不需要按标签筛选的话,可以不加 status/ 标签;加了就要和属性保持一致。

90-Meta/知识库规范.md 则记录目录用途、必填字段,以及后面确定的整理规则。让 WorkBuddy 每次先读这两份文件,比每次重新解释省事。

3. 一篇笔记尽量只讲清一个主题

比如 我的学习笔记.md,只看文件名,你不知道里面写了什么。换成 MySQL 索引为什么用 B+ 树.md,下次找这个问题时就容易认出来。

标题能写成结论就写结论,问题式标题也可以,前提是具体。没必要为了符合某个格式,把正常标题改得别扭。

我整理 SSL 证书资料时,就把证书用途、TLS 握手、证书验证等级、域名覆盖范围和自签名证书分开记了。查其中一项时,不用从一篇长文里来回翻。

SSL 资料拆分为独立笔记

不过,拆笔记也得看内容。一段话拆成五个文件,打开哪个都得跳去看另外四个,查起来反而更累。能单独看懂、以后可能单独查阅的内容,再拆出去。

学习当天的流水记录可以留在 Daily50-Learning。等想清楚了,再把值得复用的部分整理进 30-Resources

4. 给相关笔记加链接

在正文里输入 [[,搜索并选择已有笔记,就能加上内部链接。例如:

关于握手过程,见 [[TLS 握手过程]]。

这里的标题是写法示例,实际操作时要选你库里已有的文件。链接后面可以用 | 换一个显示名称:

[[30-Resources/07-计算机基础/计算机基础-索引|计算机基础]]

跨文件夹也可以只写笔记名,只要能唯一定位。遇到同名笔记,再带上目录区分。上面的写法从仓库根目录开始,也不是相对于当前文件的路径。Obsidian 的链接设置说明

Obsidian 内部链接输入与选择

笔记末尾可以留一段相关内容,放上级索引,以及读这篇时可能顺手查的笔记:

## 相关
- [[30-Resources/07-计算机基础/计算机基础-索引|计算机基础索引]]

Obsidian 笔记关系图谱

先从确实相关的几篇开始。链接加完点一下,看看有没有连错。图谱里的线多不多,我觉得不用太在意,找资料时能少翻几次目录就够了。


四. 每天 17:00,让 WorkBuddy 整理收集箱

我设的是每天下午五点整理,正好狗哥五点下班。😄

任务会读取 00-Inbox 里的临时笔记,分类、提炼内容、补属性和链接,最后留下处理记录。

💡 第一次建议先备份仓库,再放几条测试笔记手动运行。确认它整理出来的东西符合你的习惯,再设成每天执行。

1. 创建定时任务

在我截图中的版本里,左侧点「自动化」,再点右上角「添加自动化」。

WorkBuddy 添加自动化入口

名称填「知识库每日整理」,选择你的仓库作为工作空间,把执行频率设成每天 17:00。下面这份提示词按前文的目录和字段写,使用前把路径换成自己的。

请整理我的 Obsidian 仓库。
仓库根目录:<你的vault路径>

先读取 90-Meta/知识库规范.md 和 90-Meta/标签体系.md。
规则缺失或互相矛盾时,列出问题,暂停修改相关笔记。

扫描 00-Inbox 下的 Markdown 临时笔记,包括子目录。
跳过收集箱.md、type 为 moc 的索引页,以及归档处置记录中已处理且内容未变化的笔记。

按以下规则处理:
1. 有明确目标和截止时间的,移到 10-Projects;长期需要维护的,移到 20-Areas。
2. 可以反复查阅的知识,整理为能独立读懂的笔记,写入 30-Resources 已有的对应主题目录。保留来源,不添加原文没有依据的事实。
3. 提炼出新笔记后,检查文件已写入、内容完整,再把原始资料移到 40-Archives/Inbox归档/<年>-<月>/,保留新旧文件的对应关系。
4. 过时但需要备查的资料,移入同一归档目录。无法判断去向的留在原处,列入待确认。
5. 按仓库规范补齐 type、title、tags、created、updated、status。保留原有创建日期;无法确定的日期不要猜。普通知识笔记使用 type: note、type/note 和合适的 topic 标签。
6. 检查链接目标存在,再添加相关链接,并把新笔记加入对应索引。移动文件时检查受影响的链接;不能可靠修复时保留原文件并报告。
7. 在 00-Inbox/收集箱.md 的「归档处置记录」追加日期、原路径、新路径和处理方式;不确定的内容记到「待确认」。

不要删除原始资料,不要覆盖已有文件,也不要重复生成相同笔记。
遇到同名文件、疑似重复内容或已有笔记发生变化,先列入待确认。
文章草稿留在 60-Writing/20-草稿,只有我明确确认发布完成后才能移入博客归档。

完成后报告本次处理数量、文件去向、待确认事项和失败项。

这里的根目录是第二节创建的仓库路径,例如 D:/Notes/MyBrain。工作空间和提示词里的路径要指向同一个地方。

每日整理提示词与执行时间设置

截图保留了我已有任务的配置。上面的文字版补上了原文保留、重名处理和待确认规则,适合先用小样本试;这些要求仍然要靠实际结果检查,写进提示词不代表每次都能做到。

2. 跑完以后看哪里

可以先按下面这个方式试一次:在收集箱放一条带来源的测试笔记,手动触发任务,然后检查新文件写到了哪里、原文还在不在、相关链接能不能打开。再运行一次,看看是否重复生成内容。

下面是我已有任务的配置和执行结果截图。

每日整理任务运行中

每日整理任务执行结果

**运行记录显示成功后,也要打开实际笔记看一眼。**尤其是 AI 提炼出的结论,有没有把原文中的条件省掉,有没有把不确定的说法改成确定结论。

定时任务保存后,下一次到点也检查一下运行记录。如果没有执行,再检查电脑、客户端和任务的运行状态。不要只看见任务建好了,就默认以后每天都会按时完成。


五. 每月检查一次漏项

日常整理之外,我还做一次月检,看看有没有漏填属性、连错文件,或者新建后一直没加到索引的笔记。

仍然在 WorkBuddy 里新建自动化任务,名称可以填「知识库月检」,选择仓库工作空间,执行时间选每月一个方便查看结果的时段。

WorkBuddy 月检任务配置

截图是原来的月检配置。新建时可以用下面这版,先生成检查报告,修复另做一步:

请检查我的 Obsidian 仓库:<你的vault路径>。
先读取 90-Meta/知识库规范.md 和 90-Meta/标签体系.md。
本次只检查,不修改文件。

按规范检查:
- 应填写 frontmatter 的笔记是否缺失,必填字段是否齐全。
- type 属性与 type/ 标签是否一致。
- 是否缺少适用的 topic/ 标签。
- 内部链接能否找到目标,有没有同名文件引起的歧义。
- 哪些笔记没有被其他页面引用,是否需要加入索引。

排除 .obsidian 配置、附件和代码块中的示例链接。
模板按模板用途检查,不要把占位内容当作正式笔记错误。
没有其他页面引用的笔记单独列出,不能直接判为错误或删除。

报告中写明文件路径、问题、判断依据和建议处理方式。
无法确定的项目标注待确认,不要为了减少问题数量而补造内容或链接。

确认报告后,再让 WorkBuddy 按具体清单修改。动文件前备份一份;改完用同样的规则复查,确认没产生新的问题。

知识库检查与修复记录

这类检查通常叫 Lint,可以理解成按约定查漏项。**检查结果不用非得归零。**比如一张新写的笔记暂时没人引用,只能说明它还没接到其他页面,不能说明它没价值。


六. 写博客的话,再加一张发布表

我把可复用的技术笔记放在 30-Resources,选题、草稿和发布记录放在 60-Writing

两边会有联系。比如资源库里有一条 MySQL 回表笔记,写博客时引用它,再补文章需要的例子、截图和上下文。

写作目录是这样分的:

60-Writing
  10-已发布
  20-草稿
  30-选题灵感
  40-系列策划
  90-写作资产

草稿正文放 20-草稿。等确认发布完成,再把正文移到 40-Archives/博客归档10-已发布 留发布记录和链接。写完、排完版,都还不等于已经发布。

Obsidian 写作发布看板

60-Writing/写作索引.md 可以放一张表。下面只是填写示例,不代表文章已经发布:

文章标题状态关联技术笔记平台链接发布日期
MySQL 回表:加了索引为什么还慢草稿填入库内笔记链接待发布待发布
WorkBuddy 的 Skill 分享选题待补待发布待发布

有了这张表,哪些还没写、哪些已经发过,翻一下就知道。不写博客的同学就不用看了。


总结

🍯最后说几句

这套目录和规则放在一起,看着不少。刚开始不用一次做完:先建仓库,存几条笔记,找到它们;再试一次自动整理。分类不合适就改,标签用不上就减。

路径也不用一律改成英文。我的目录里本来就有中文,关键是软件和脚本能正确处理;把路径粘进命令时,带空格的完整路径要加引号,别让命令把它拆开。

比起目录怎么命名,我更在意两点:**原始资料有没有留住,AI 改出来的内容有没有看过。**定期把整个仓库备份一份,批量整理前再留一份,至少改错了还能找回来。

至于要不要用这套工具,看你自己。用有道云笔记能记清楚、找得到,就继续用。花了半天搭目录,最后还是不打开,那这半天确实有点亏。


🍈猜你想问

如何与狗哥联系进行探讨?

加瓦狗联系方式

关注公众号【JavaDog程序狗】,回复【入群】或【加入】,一起聊技术、聊踩坑。


评论