知识库规范

知识领域

以 AI、软件工程和产品思考为重点的个人学习知识库。

本知识库用于沉淀阅读、实验、项目、笔记及后续导入资料中的知识,并连接技术深度、工程实践与产品判断之间的关联。

约定

  • entities/concepts/comparisons/queries/ 下的正式页面统一放入一个受控领域子目录,路径格式为 <知识类型>/<domain>/YYYY-MM-DD-<英文-slug>.md,例如 concepts/golang/2026-07-26-go-scheduler.md
  • _inbox/ 中新建的 Markdown 内容文件,以及正式页面的文件名,统一使用 YYYY-MM-DD-<英文-slug>.md;日期取首次创建日期并与 frontmatter 的 created 保持一致,后续更新内容时不改变日期前缀。slug 使用小写英文与连字符,不使用空格或中文。
  • 日期前缀规则不适用于根目录控制文件(SCHEMA.mdAGENTS.mdindex.mdlog.md)、目录说明文件(README.md)及 raw/ 中按各自归档规范保存的原始资料和元数据。
  • 每个知识库页面均以符合下方规范的 YAML frontmatter 开头。
  • 使用 [[wikilinks]] 连接页面;在存在足够关联内容时,新页面至少应有 2 条出链。
  • 更新页面时,必须同步更新 updated 日期。
  • 每个新页面必须归入 index.md 的正确分组。
  • 每项知识库操作都必须追加记录到 log.md
  • raw/ 中的原始资料一经采集即不可修改;更正和综合分析应写入知识库页面,而非原始资料。
  • 除非用户明确要求迁移或导入,必须保留 llm-wiki 结构之外已有的 Obsidian Vault 文件。
  • 不自动导入或综合现有剪藏;仅在收到明确指令后才处理资料。
  • 来源标记:综合 3 个及以上来源的页面,应在每段有具体来源的论述末尾追加如 ^[raw/articles/source-file.md] 的标记。单一来源页面如有足够的 sources: frontmatter,可不添加。

Frontmatter

entities/concepts/comparisons/queries/ 中的知识库页面使用:

---
title: 页面标题
created: YYYY-MM-DD
updated: YYYY-MM-DD
type: entity | concept | comparison | query | summary
domain: aigc | architecture | cloud-native | database | golang | middleware | tools
tags: [使用以上标签体系]
sources: [raw/articles/来源文件名.md]
# 可选的质量标记:
confidence: high | medium | low
contested: true
contradictions: [存在冲突的页面-slug]
---

原始资料使用:

---
source_url: https://example.com/article
ingested: YYYY-MM-DD
sha256: <原始正文的十六进制摘要>
---

sha256 只对正文计算,不包含 frontmatter。

原始书籍归档

  • 原版书籍存放于 raw/books/,每本书(含明确版本)使用一个目录:<出版年>-<书名>-<第一作者>[-<版本>];未知出版年使用 undated
  • 目录内的原始文件统一命名为 original.<ext>。导入后不得修改、替换或重新压缩;不同版本、不同语言或不同格式应建立独立目录。
  • 每个书籍目录同时创建 metadata.md,作为随导入固化的书目清单。它必须记录书名、作者、出版年、语言、导入日期、原文件名、二进制 SHA-256 与文件大小;没有可靠 URL 时使用 source_url: null,不得猜测来源地址。
  • 书籍解读、摘录、读书笔记和知识页面写入 concepts/<domain>/entities/<domain>/queries/<domain>/,并在 sources: 中指向对应的 raw/books/.../metadata.md;不得写回原始书籍目录。

领域体系

每个正式知识页面必须且只能选择一个 domain,并存放在同名子目录中:

  • aigc
  • architecture
  • cloud-native
  • database
  • golang
  • middleware
  • tools

跨领域关系通过 tags[[wikilinks]] 表达,不复制页面,也不创建多重主分类。

标签体系

仅使用下列标签;新增标签前必须先在此处定义。

AI 与机器学习

  • ai
  • machine-learning
  • llm
  • agents
  • evaluation
  • alignment
  • data
  • inference

软件工程

  • software-engineering
  • architecture
  • programming
  • debugging
  • testing
  • devtools
  • systems

产品思考

  • product
  • product-strategy
  • user-research
  • ux
  • growth
  • metrics

个人学习与元知识

  • learning
  • mental-models
  • workflow
  • notes
  • research
  • comparison
  • query

建页阈值

  • 当某个实体或概念在 2 个及以上来源中出现,或为单一来源的核心主题时,创建页面。
  • 当来源提及已有内容时,补充到现有页面。
  • 不为一笔带过的提及、次要细节或领域外内容创建页面。
  • 页面超过约 200 行时,应拆分为子主题。
  • 当页面内容被完全取代时,将其移至 _archive/、从 index.md 移除、更新相关链接,并记录归档操作。

实体页面

每个重要人物、组织、产品、工具、模型、框架或项目各建一页,包含:

  • 概述/它是什么
  • 关键事实与日期
  • 通过 [[wikilinks]] 建立的实体关系
  • 来源引用

概念页面

每个概念或主题各建一页,包含:

  • 定义/解释
  • 当前知识状态
  • 对学习、工程或产品工作的实践意义
  • 开放问题或争议
  • 通过 [[wikilinks]] 建立的相关概念

对比页面

用于并列分析,包含:

  • 对比对象及其原因
  • 对比维度,优先使用表格
  • 结论或综合判断
  • 来源

查询页面

归档值得保留的答案。适用于重要综合、反复出现的问题,或重新推导成本高的分析;不归档简单查询。

更新策略

当新信息与既有内容冲突时:

  1. 检查来源日期和上下文;较新的来源可能取代较旧的来源。
  2. 若确有矛盾,记录两种立场及各自的日期和来源。
  3. 在 frontmatter 中以 contested: truecontradictions: [...] 标记矛盾。
  4. 在 lint 报告中标记为待用户审阅。