个人知识库管理系统,遵循 Raw → Wiki → Outputs 三层架构。
层目录说明权限Rawraw/原始素材(文章、剪藏、图片、PDF、笔记、个人写作)只读,由人类拥有Wikiwiki/结构化知识(来源页、概念卡片、实体页、综合分析)完全读写Outputswiki/outputs/输出产物(QUERY 答案、LINT 报告、Gap 报告等)写入,graph-excluded
核心原则:
wiki/ 目录的读取和写入权限raw/ 目录由人类拥有,LLM 只能读取, 绝不修改yaml
vault_root: "D:\\obsidian-job\\job"
qmd_cmd: "D:\\obsidian-job\\job\\qmd.bat" # qmd 封装脚本
触发词: ingest、 摄入、 处理这个
type: personal-writing → 走「个人写作」流程raw/personal/ → 走「个人写作」流程type: pdf-reference → 走「PDF 参考」流程win_web_read 获取页面完整内容,转换为 Markdownraw/clippings/ 目录raw_file 和 source_url# 标题提取 title;若无标题则从文件名推断source 字段留空,在 source 页中标注「来源未知」date 使用文件系统修改时间Step 1:读取目标原始来源
Step 2:计算 SHA-256 哈希(Python hashlib)
Step 3:与用户确认核心要点
Step 4:生成 slug(小写英文,用连字符)
Step 5:创建 wiki/sources/<slug>.md,frontmatter 写入:
raw_file:相对路径raw_sha256:SHA-256 哈希值last_verified:摄入日期canonical_source:翻译/转述来源同源标记possibly_outdated: trueStep 5.5 — canonical_source 译文同源检测:
canonical_source 字段Step 6 — 概念名称对齐检查:
aliases 字段Step 7:为每个概念:更新或创建 concept 页
Step 8:为每个实体:同上逻辑
Step 9:更新 wiki/index.md
Step 10:检查 wiki/QUESTIONS.md 匹配
Step 11:追加 wiki/log.md
Step 12(索引同步):执行 qmd update + qmd embed,报错则跳过记录
## My Position 节(标注「个人认知」)source_count 计数触发词:直接提问,或「根据我的知识库」
Step Q1:执行 qmd search "<query>" -n 5 --json(本机环境 qmd query 的 LLM 扩充会超时,故用 search 替代)
wiki/index.mdStep Q2:逐一完整读取 top 5 文件
Step Q3:合成答案
wiki/sources/<slug>.mdStep Q4:若答案有复用价值,写入 wiki/outputs/
问题类型输出格式普通问题Markdown 正文比较类Markdown 表格演示类Marp 幻灯片趋势类Python matplotlib 代码块清单类结构化 bullet list
触发词: lint、 检查、 健康检查
scripts/lint.py(9 项检查)wiki/outputs/lint-YYYY-MM-DD.mdqmd status,对比索引;落后则执行 qmd update触发词: reflect、 综合分析、 发现规律
Stage 0 — 反向检验:主动搜索反驳证据,无则标注「⚠ 回音室风险」
Stage 1 — 模式扫描:
qmd multi-get "wiki/concepts/*.md" -l 40qmd multi-get "wiki/entities/*.md" -l 40qmd multi-get "wiki/synthesis/*.md" -l 60Stage 2 — 深度合成:写入 wiki/synthesis/<topic>-synthesis.md
Stage 3 — Gap Analysis:
wiki/outputs/gap-report-YYYY-MM-DD.md触发词: merge、 去重
触发词: 我想搞清楚、 add question、 记录一个问题
wiki/QUESTIONS.md(checkbox 格式)wiki/log.md所有 wikilink 目标必须使用 英文小写连字符格式:
✅ 正确❌ 错误[[value-investing]]``[[价值投资]]``[[attention-mechanism]]``[[ValueInvesting]]
中文名称写入 concept 页 aliases 字段。
[[log]] [[index]] [[overview]] [[QUESTIONS]][[outputs/lint-xxx]][[ingest]] [[query]]title 使用中文主名称aliases 覆盖中英文所有叫法来源数Confidence处理1 个low自动设置3+ 个medium自动设置5+ 个无矛盾候选 high需用户确认
个人写作不参与 count。
⚠ SOURCE MODIFIED 时重新摄入possibly_outdated: true以下文件 frontmatter 含 graph-excluded: true:
wiki/log.md、 wiki/index.md、 wiki/overview.md、 wiki/QUESTIONS.mdwiki/outputs/ 下所有文件当此 skill 规则更新时,同步更新 USER_GUIDE.md 对应章节。