feat: initialize Knowledge vault with PARA + Zettelkasten system

- PARA folder structure (Inbox, Projects, Areas, Resources, Archive)
- Zettelkasten folder for atomic permanent notes
- Daily Notes folder with template
- 6 note templates (Inbox, Daily, Zettelkasten, Project, Resource, MOC)
- System folder for Attachments and Templates
- Home dashboard with Dataview query
- CLAUDE.md with knowledge-vault skill integration
- README with complete usage guide

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Yaojia Wang
2026-03-07 17:27:51 +01:00
commit 50d7d1de3d
30 changed files with 13332 additions and 0 deletions

9
.gitignore vendored Normal file
View File

@@ -0,0 +1,9 @@
# Obsidian
.obsidian/workspace.json
.obsidian/workspace-mobile.json
.obsidian/graph.json
.trash/
*.base
# Claude Code
.claude/

1
.obsidian/app.json vendored Normal file
View File

@@ -0,0 +1 @@
{}

1
.obsidian/appearance.json vendored Normal file
View File

@@ -0,0 +1 @@
{}

3
.obsidian/community-plugins.json vendored Normal file
View File

@@ -0,0 +1,3 @@
[
"obsidian-checklist-plugin"
]

33
.obsidian/core-plugins.json vendored Normal file
View File

@@ -0,0 +1,33 @@
{
"file-explorer": true,
"global-search": true,
"switcher": true,
"graph": true,
"backlink": true,
"canvas": true,
"outgoing-link": true,
"tag-pane": true,
"footnotes": false,
"properties": true,
"page-preview": true,
"daily-notes": true,
"templates": true,
"note-composer": true,
"command-palette": true,
"slash-command": false,
"editor-status": true,
"bookmarks": true,
"markdown-importer": false,
"zk-prefixer": false,
"random-note": false,
"outline": true,
"word-count": true,
"slides": false,
"audio-recorder": false,
"workspaces": false,
"file-recovery": true,
"publish": false,
"sync": true,
"bases": true,
"webviewer": false
}

4
.obsidian/daily-notes.json vendored Normal file
View File

@@ -0,0 +1,4 @@
{
"folder": "0 - Daily Notes",
"template": "System/Templates/Daily Note"
}

4459
.obsidian/plugins/calendar/main.js vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,10 @@
{
"id": "calendar",
"name": "Calendar",
"description": "Calendar view of your daily notes",
"version": "1.5.10",
"author": "Liam Cain",
"authorUrl": "https://github.com/liamcain/",
"isDesktopOnly": false,
"minAppVersion": "0.9.11"
}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,9 @@
{
"id": "obsidian-checklist-plugin",
"name": "Checklist",
"version": "2.2.14",
"minAppVersion": "0.14.5",
"description": "Combines checklists across pages into users sidebar",
"author": "delashum",
"isDesktopOnly": false
}

View File

@@ -0,0 +1,51 @@
/* no content */
.checklist-plugin-main {
--checklist-checkboxSize: 20px;
--checklist-checkboxCheckedSize: 12px;
--checklist-checkboxBorder: 2px solid var(--text-muted);
--checklist-checkboxFill: var(--text-muted);
--checklist-listItemBorderRadius: 8px;
--checklist-listItemMargin: 0 0 12px;
--checklist-listItemBackground: var(--interactive-normal);
--checklist-listItemBackground--hover: var(--interactive-hover);
--checklist-listItemMargin--compact: 0 0 8px;
--checklist-listItemBoxShadow: none;
--checklist-headerMargin: 0 0 8px;
--checklist-headerGap: 4px;
--checklist-headerFontSize: 18px;
--checklist-headerFontWeight: 600;
--checklist-iconSize: 24px;
--checklist-iconFill: var(--text-normal);
--checklist-iconFill--accent: #777;
--checklist-textColor: var(--text-muted);
--checklist-accentColor: var(--text-accent);
--checklist-accentColor--active: var(--text-accent-hover);
--checklist-pageMargin: 0 0 4px;
--checklist-loaderSize: 16px;
--checklist-loaderBorderColor: var(--text-muted) var(--text-muted)
var(--text-normal);
--checklist-buttonPadding: 0 5px;
--checklist-buttonBoxShadow: none;
--checklist-countPadding: 0 6px;
--checklist-countBackground: var(--interactive-normal);
--checklist-countFontSize: 13px;
--checklist-togglePadding: 8px 8px 8px 12px;
--checklist-contentPadding: 8px 12px 8px 0;
--checklist-contentPadding--compact: 4px 8px;
--checklist-togglePadding--compact: 4px 8px;
--checklist-countBorderRadius: 4px;
--checklist-tagBaseColor: var(--text-faint);
--checklist-tagSubColor: #bbb;
--checklist-groupMargin: 8px;
--checklist-contentFontSize: var(--editor-font-size);
--checklist-searchBackground: var(--background-primary);
}
.checklist-plugin-main button {
margin: initial;
}
.checklist-plugin-main p {
margin: initial;
word-break: break-word;
}

View File

@@ -0,0 +1,19 @@
---
created: "2026-03-07"
type: daily
---
# 2026-03-07 Saturday
## 今日捕捉
-
## 待办
- [ ]
## 回顾
<!-- 今天学到了什么?有什么想法值得发展成 Zettel -->

View File

@@ -0,0 +1,9 @@
# Daily Notes
每日笔记存放在此文件夹。
## 使用方式
- 每天打开 Obsidian 时,通过 Calendar 插件或快捷键自动创建当天日记
- 文件名格式:`YYYY-MM-DD`(由 Obsidian 自动生成)
- 使用 `System/Templates/Daily Note` 模板

13
1 - Inbox/README.md Normal file
View File

@@ -0,0 +1,13 @@
# Inbox
快速捕捉想法、链接、灵感的地方。
## 使用原则
- 任何新想法先丢到这里,不用管格式
- 定期(每周)清理 Inbox将笔记移到适当位置
- 可执行的任务 → `2 - Projects`
- 持续关注的主题 → `3 - Areas`
- 参考资料 → `4 - Resources`
- 值得发展的想法 → `6 - Zettelkasten`(用原子笔记模板重写)
- 不需要的 → 删除

9
2 - Projects/README.md Normal file
View File

@@ -0,0 +1,9 @@
# Projects
有明确目标和截止日期的项目。
## 使用原则
- 每个项目一个文件夹或一个 MOCMap of Content笔记
- 项目完成后移到 `5 - Archive`
- 问自己:"这件事有明确的完成标准吗?" — 有的话就是 Project

9
3 - Areas/README.md Normal file
View File

@@ -0,0 +1,9 @@
# Areas
持续关注、没有截止日期的责任领域。
## 使用原则
- 例如:健康、财务、职业发展、技术学习
- 每个 Area 可以有自己的 MOC 笔记来组织相关内容
- 问自己:"这是我需要长期维护的标准吗?" — 是的话就是 Area

9
4 - Resources/README.md Normal file
View File

@@ -0,0 +1,9 @@
# Resources
感兴趣的主题参考资料。
## 使用原则
- 按主题分类,例如:编程、读书笔记、工具教程
- 不需要是你自己的想法,可以是外部资料的整理
- 问自己:"这个信息未来可能有用吗?" — 是的话就是 Resource

9
5 - Archive/README.md Normal file
View File

@@ -0,0 +1,9 @@
# Archive
已完成的项目、不再活跃的领域。
## 使用原则
- 完成的 Project 整个移到这里
- 不再关注的 Area 移到这里
- 不要删除,留着以备未来查询

View File

@@ -0,0 +1,25 @@
---
created: "2026-03-07 12:00"
type: zettel
tags: [concept, PKM]
source: "Tiago Forte - Building a Second Brain / Niklas Luhmann - Zettelkasten"
---
# PARA 与 Zettelkasten 的互补关系
PARA 提供"行动导向"的组织框架 — 按照可执行性分类Projects > Areas > Resources > Archive让你知道现在该做什么。
Zettelkasten 提供"知识导向"的思考框架 — 把想法拆成原子单位,通过链接产生新洞察。
两者结合PARA 管理你的"做"Zettelkasten 管理你的"想"。当你在 Project 中产生了有价值的洞察,就提炼成 Zettel当你的 Zettel 积累到足以支撑一个行动,就建立 Project。
---
## Related
- [[1 - Inbox/README|Inbox 是两个系统的入口]]
## Source
- Tiago Forte, *Building a Second Brain*
- Sonke Ahrens, *How to Take Smart Notes*

View File

@@ -0,0 +1,19 @@
# Zettelkasten
原子化的永久笔记 — 你的"第二大脑"核心。
## 使用原则
- **一则笔记 = 一个想法**(原子性)
- 用自己的话写(不是复制粘贴)
- 重点是**笔记之间的链接** `[[]]`,而非分类
- 用 tags 辅助搜索,例如 `#concept` `#insight` `#question`
- 文件名格式:`YYYYMMDDHHMMSS 标题`(时间戳确保唯一性)
## 常用 Tags
- `#concept` — 概念定义
- `#insight` — 个人洞察
- `#question` — 待探索的问题
- `#principle` — 原则或心法
- `#connection` — 跨领域链接

19
CLAUDE.md Normal file
View File

@@ -0,0 +1,19 @@
# Knowledge Vault
This is an Obsidian knowledge base using PARA + Zettelkasten methodology.
## Skill
Use the `knowledge-vault` skill (`~/.claude/skills/knowledge-vault/SKILL.md`) for all note management operations.
## Quick Reference
| Command | Action |
|---------|--------|
| "新建笔记 [内容]" | Create an Inbox note in `1 - Inbox/` |
| "新建日记" | Create today's Daily Note in `0 - Daily Notes/` |
| "新建卡片 [想法]" | Create a Zettelkasten note in `6 - Zettelkasten/` |
| "整理收件箱" | Review and organize `1 - Inbox/` |
| "搜索 [关键词]" | Search across all notes |
| "找关联" | Find related notes and suggest links |
| "健康检查" | Review orphan notes, missing tags, suggest connections |

29
Home.md Normal file
View File

@@ -0,0 +1,29 @@
# Home
> 个人知识管理系统 — PARA + Zettelkasten
## Quick Capture
- [[1 - Inbox/新笔记]]
## Navigation
| Folder | Purpose |
|--------|---------|
| [[0 - Daily Notes]] | 每日笔记 |
| [[1 - Inbox]] | 快速捕捉,稍后整理 |
| [[2 - Projects]] | 进行中的项目 |
| [[3 - Areas]] | 持续关注的领域 |
| [[4 - Resources]] | 主题参考资料 |
| [[5 - Archive]] | 已完成或暂停的内容 |
| [[6 - Zettelkasten]] | 原子化永久笔记 |
## Recent Notes
```dataview
TABLE file.mtime AS "Modified"
FROM ""
WHERE file.name != "Home"
SORT file.mtime DESC
LIMIT 10
```

164
README.md Normal file
View File

@@ -0,0 +1,164 @@
# Knowledge — 个人知识管理系统
基于 PARA 方法论和 Zettelkasten 卡片盒笔记法的 Obsidian 知识库。
## 系统结构
```
Knowledge/
├── Home.md # 仪表板,每次打开 Obsidian 的起点
├── 0 - Daily Notes/ # 每日笔记
├── 1 - Inbox/ # 快速捕捉,稍后整理
├── 2 - Projects/ # 有明确目标和截止日期的项目
├── 3 - Areas/ # 长期关注的责任领域
├── 4 - Resources/ # 主题参考资料
├── 5 - Archive/ # 已完成或暂停的内容
├── 6 - Zettelkasten/ # 原子化永久笔记
└── System/ # 系统文件
├── Attachments/ # 图片、PDF 等附件
└── Templates/ # 笔记模板
```
## 两套方法论如何协作
**PARA** 管理"做" — 按可执行性组织内容,让你知道现在该做什么。
**Zettelkasten** 管理"想" — 把想法拆成原子单位,通过链接产生新洞察。
```
捕捉想法 → Inbox → 整理到 PARA 或提炼到 Zettelkasten
↓ ↓
执行和推进 积累和连接
↓ ↓
项目完成 → Archive 洞察成熟 → 新项目
```
## 快速开始
### 第一步:设置 Obsidian
1. 打开 Settings → Core plugins → 启用 **Templates**
2. 设置 Template folder location 为 `System/Templates`
3. 打开 Settings → Core plugins → 启用 **Daily notes**
4. 设置 Daily notes 的 New file location 为 `0 - Daily Notes`Template file 为 `System/Templates/Daily Note`
5. 设置 Settings → Files & Links → Default location for new notes 为 `1 - Inbox`
6. 设置 Settings → Files & Links → Attachment folder path 为 `System/Attachments`
7. 安装社区插件 **Dataview**(让 Home 页面的最近笔记查询生效)
8. 安装社区插件 **Calendar**(侧边栏日历视图,点击日期自动创建/跳转日记)
9. 安装社区插件 **Checklist**(汇总所有笔记中的待办事项到一个面板)
10. 安装社区插件 **HomeTab**(打开 Obsidian 时显示自定义首页,可配合 Home.md 使用)
### 第二步:开始记笔记
任何想法,直接在 `1 - Inbox` 新建笔记,插入 `Inbox Note` 模板,写下内容。不用纠结分类,先写下来再说。
### 第三步:每周清理 Inbox
每周花 15 分钟,把 Inbox 里的笔记移到合适的位置:
| 笔记类型 | 移动到 | 使用模板 |
|---------|--------|---------|
| 可执行的任务 | `2 - Projects` | Project Note |
| 持续关注的主题 | `3 - Areas` | — |
| 参考资料 | `4 - Resources` | Resource Note |
| 有价值的个人想法 | `6 - Zettelkasten` | Zettelkasten Note |
| 过时或无用的 | 直接删除 | — |
## 判断笔记放哪里
问自己三个问题,按顺序判断:
1. **这件事有明确的完成标准吗?**`2 - Projects`
2. **这是我需要长期维护的标准吗?**`3 - Areas`
3. **这个信息未来可能有用吗?**`4 - Resources`
如果是**你自己的原创想法、洞察或概念**,不管属于哪个类别,都值得在 `6 - Zettelkasten` 写一则原子笔记。
不确定?先丢 `1 - Inbox`
## 写好 Zettelkasten 笔记的要点
Zettelkasten 是这套系统的核心,笔记质量决定了知识库的长期价值。
### 原则
- **一则笔记 = 一个想法** — 如果你想写两件事,就写两则笔记然后互相链接
- **用自己的话写** — 不是复制粘贴,而是消化后用自己的语言表达
- **重链接、轻分类** — 用 `[[]]` 把相关笔记连起来,不用纠结它该放哪个子文件夹
- **写给未来的自己** — 几个月后再看,你还能理解这则笔记在说什么
### 文件命名
使用时间戳前缀确保唯一性:`YYYYMMDDHHMMSS 标题`
例如:`20260307120000 PARA 与 Zettelkasten 的互补关系`
### 常用 Tags
| Tag | 用途 |
|-----|------|
| `#concept` | 概念定义 |
| `#insight` | 个人洞察 |
| `#question` | 待探索的问题 |
| `#principle` | 原则或心法 |
| `#connection` | 跨领域链接 |
## 模板说明
| 模板 | 用途 | 使用场景 |
|------|------|---------|
| Inbox Note | 快速捕捉 | 任何新想法 |
| Daily Note | 每日日记 | 每天打开 Obsidian 时自动创建 |
| Zettelkasten Note | 原子笔记 | 提炼个人洞察 |
| Project Note | 项目管理 | 新项目启动 |
| Resource Note | 资料整理 | 收集参考信息 |
| MOC | 主题索引 | 某个领域笔记积累到 5+ 则时建立 |
使用方式:新建笔记 → Ctrl/Cmd + T → 选择模板
## 日常习惯建议
| 频率 | 动作 |
|------|------|
| 随时 | 有想法就丢进 Inbox |
| 每天 | 花 5 分钟回顾今天的笔记,补充链接 |
| 每周 | 花 15 分钟清理 Inbox整理到对应文件夹 |
| 每月 | 用 Graph View 浏览笔记网络,发现新连接 |
| 每季 | 把完成的 Project 移到 Archive审视 Areas 是否需要调整 |
## Daily Notes 使用方式
Daily Note 存放在独立的 `0 - Daily Notes/` 文件夹,与 Inbox 分开管理。
- 每天打开 Obsidian 时点击左侧日历图标(或 Ctrl/Cmd + P 搜索 "Daily note")自动创建当天日记
- 在"今日捕捉"里随手记录想法
- 在"回顾"里思考哪些想法值得发展成 Zettelkasten 笔记
- 安装 **Calendar** 插件后,侧边栏会出现日历视图,点击日期即可跳转或创建对应日记
## MOC 使用方式
MOCMap of Content是主题索引笔记当某个领域的笔记积累到 5 则以上时,建一个 MOC 把它们串起来。
例如在 `3 - Areas` 中建一个 `技术学习 MOC.md`
```markdown
# 技术学习 MOC
## Python
- [[20260307xxxx 装饰器的本质是闭包]]
- [[20260308xxxx Python 类型提示最佳实践]]
## 架构
- [[20260310xxxx 六边形架构的核心思想]]
```
MOC 不是死板的目录,而是你对某个领域理解的地图,随时可以重新组织。
## 进阶建议
随着笔记增多,可以逐步引入:
- **Templater 插件** — 自动生成时间戳文件名,简化 Zettelkasten 笔记创建流程
- **Excalidraw 插件** — 在笔记中画概念图,可视化笔记之间的关系
- **Git 同步** — 已配置 `.gitignore`,可以用 Git 做版本管理和多设备同步
- **外部捕捉工具**(如 Antigravity— 用 AI 工具快速整理想法,再导入 Obsidian 做长期知识管理

View File

@@ -0,0 +1,5 @@
# Attachments
图片、PDF、音频等附件统一存放在此文件夹。
在 Obsidian 中设置Settings → Files & Links → Attachment folder path → `System/Attachments`

View File

@@ -0,0 +1,19 @@
---
created: "{{date:YYYY-MM-DD}}"
type: daily
---
# {{date:YYYY-MM-DD dddd}}
## 今日捕捉
-
## 待办
- [ ]
## 回顾
<!-- 今天学到了什么?有什么想法值得发展成 Zettel -->

View File

@@ -0,0 +1,10 @@
---
created: "{{date:YYYY-MM-DD HH:mm}}"
type: inbox
---
# {{title}}
<!-- 快速记下你的想法,之后再整理 -->

20
System/Templates/MOC.md Normal file
View File

@@ -0,0 +1,20 @@
---
created: "{{date:YYYY-MM-DD}}"
type: moc
---
# {{title}}
<!-- 这个主题的索引笔记,链接所有相关内容 -->
## Overview
-
## Key Notes
-
## Related MOCs
-

View File

@@ -0,0 +1,24 @@
---
created: "{{date:YYYY-MM-DD}}"
type: project
status: active
deadline: ""
---
# {{title}}
## Goal
<!-- 这个项目要达成什么? -->
## Tasks
- [ ]
## Notes
-
## Related
-

View File

@@ -0,0 +1,20 @@
---
created: "{{date:YYYY-MM-DD}}"
type: resource
tags: []
source: ""
---
# {{title}}
## Summary
<!-- 用自己的话总结重点 -->
## Key Points
-
## Related
-

View File

@@ -0,0 +1,22 @@
---
created: "{{date:YYYY-MM-DD HH:mm}}"
type: zettel
tags: []
source: ""
---
# {{title}}
<!-- 用自己的话写下一个想法 -->
---
## Related
-
## Source
-