# Knowledge Planning

> 笔记创建前的知识规划。扫描同级目录、分析关系、输出规划卡，防止重复笔记。写任何笔记前强制执行。

- Skill: `photonics-dhl/knowledge-planning` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add photonics-dhl/knowledge-planning`
- Raw SKILL.md: https://api.skillmd.com/api/skills/photonics-dhl/knowledge-planning/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: photonics-dhl (https://skillmd.com/u/photonics-dhl)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/photonics-dhl/knowledge-planning

---


# 知识规划技能 (Knowledge Planning)

## 核心原则

**在写任何笔记之前，必须先回答三个问题：**
1. 这篇笔记在全局知识树中的位置是什么？（父话题 / 子话题 / 独立话题）
2. 它与已有笔记的关系是什么？（包含、被包含、交叉、重复）
3. 它的独特价值是什么？（这篇笔记必须回答、而其他笔记不会深入回答的核心问题）

---

## 强制流程：知识规划四步法

### 第一步：全局知识地图扫描（必须执行）

**写任何笔记前，先扫描同级目录**，回答：

```
已有的笔记有哪些？
每个笔记的核心定位是什么？
新笔记与它们的关系是什么？
```

**关系判定表**：

| 关系 | 代码 | 处理方式 |
|------|------|----------|
| 完全重复 | `DUPLICATE` | 追加到已有笔记，不创建新的 |
| 被包含 | `SUBSUMED` | 作为子话题深度展开，引用父话题 |
| 包含 | `CONTAINS` | 作为父话题统览全局，引用子话题 |
| 交叉 | `OVERLAPS` | 明确划分边界，避免重复内容 |
| 独立 | `INDEPENDENT` | 新建笔记 |

### 第二步：定位规划（必须输出）

**在开始写之前，明确输出以下内容**：

```
## [笔记名] 规划卡

### 核心定位
[一句话说明这篇笔记在知识树中的位置]

### 知识树关系
- 父话题: [XXX]
- 子话题: [XXX, XXX]
- 兄弟话题: [XXX, XXX] — 与它们的区别是...

### 这篇笔记必须回答的核心问题
[1-3个问题，这篇笔记必须回答而其他笔记不会深入回答的]

### 禁止重复的内容
[明确说明这篇笔记不覆盖的内容，引导读者去对应笔记]
```

### 第三步：防重复检查清单

写完后对照检查：

```
[ ] 开头与父话题的开头是否重复？（父话题开头应该是"这个领域研究什么"，子话题开头应该是具体问题）
[ ] 子话题是否引用了父话题？（避免重复定义）
[ ] 父话题是否引用了子话题？（形成知识网络）
[ ] 与兄弟话题是否有交叉重复？（如果交叉，明确说明差异）
```

### 第四步：父子话题差异化模板

**父话题模板**（如「太赫兹光电子学」）：

```
# [领域名]

## 一、这个领域研究什么？（一句话定位）

## 二、知识树全景图
[mermaid graph 展示所有子话题及关系]

## 三、子话题速览
每个子话题一句话概括 + 链接

## 四、核心文献
2-3篇必读经典

## 五、延伸阅读
链接到各子话题详细笔记
```

**子话题模板**（如「太赫兹辐射源」）：

```
# [子话题名]

## 一、[具体问题]（如：为什么需要这个技术？它解决什么？）

## 二、核心原理

## 三、技术细节

## 四、与其他子话题的关系
[对比表或选择指南]

## 五、相关文献

## 六、延伸阅读
- 父话题: [[父话题名]]
- 兄弟话题: [[兄弟话题名]]
```

---

## 示例：太赫兹辐射源 vs 太赫兹光电子学

**太赫兹光电子学（父话题）**：
```
核心定位: 太赫兹光电子学领域全景——辐射源、探测、TDS三大方向的关系是什么？
必须回答: 这个领域研究哪些方向？它们之间的联系和区别？经典文献有哪些？
禁止重复: 具体的PCA天线设计细节 → 引导到「太赫兹辐射源」
```

**太赫兹辐射源（子话题）**：
```
核心定位: 具体深入PCA、光学整流、QCL的技术原理和设计选择
必须回答: 三种辐射源各自的物理原理是什么？如何选择？
禁止重复: 探测原理、TDS系统 → 引导到对应笔记
```

---

## 第五步：可视化资源规划（重要！）

**在写笔记之前，必须规划可视化资源的位置和类型**：

### 可视化放置原则

```
核心原则：可视化必须出现在对应概念被介绍的章节

正确示例：
- Fock态可视化 → 放在"三、Fock态"章节
- Rabi振荡可视化 → 放在"六、光与物质相互作用/Rabi振荡"子节
- 压缩态可视化 → 放在"五、压缩态"章节

错误示例：
- 还在讲Hilbert空间就放了Fock态可视化（Fock态还没介绍！）
- 量子化还没讲就放了真空涨落图
```

### 可视化类型选择

| 概念类型 | 推荐可视化 | 说明 |
|----------|-----------|------|
| 公式推导 | **静态图（matplotlib）** | 公式旁边的示意图 |
| 概率分布 | **静态图 + 交互滑块** | 可调整参数观察变化 |
| 过程演示 | **流程图（Mermaid）** | 步骤流程、状态变化 |
| 对比分析 | **对比表格/柱状图** | 不同方案的优缺点 |

### 交互相可视化规划

**何时需要交互式可视化**：
- 参数可以连续变化的场景（如耦合强度g、压缩参数r）
- 需要观察动态演化的场景（如Rabi振荡的周期）
- 不同分布对比（如泊松vs热光）

**HTML交互组件结构**：
```
HTML文件结构：
├── 参数控制区（滑块、按钮）
├── 画布区（Canvas绑定）
└── 公式显示区（实时更新参数）

JavaScript函数：
├── update[Concept]() - 主更新函数
├── draw[Concept]() - 绑定到各canvas
└── showViz(name) - 切换不同可视化
```

### 防可视化乱码检查

```
生成可视化后必须检查：
[ ] 图片中的文字是否正常显示（非乱码/方块）
[ ] 中文路径是否正确处理
[ ] 字体是否嵌入或使用系统字体
[ ] 数学公式渲染是否正确

常见问题解决方案：
- 中文字体：使用 matplotlib.rcParams['font.sans-serif']
- LaTeX公式：改用Unicode字符或图片
- 中文路径：复制到ASCII路径后再处理
```

---

## 与其他技能的关系

- **knowledge-structure** (知识脉络): 定义单篇笔记内部的写作方法
- **knowledge-planning** (知识规划): 定义写笔记前的全局规划流程
- **beautiful-notes** (精美排版): 定义最终输出格式

执行顺序：
```
knowledge-planning（规划）→ knowledge-structure（脉络）→ beautiful-notes（排版）
```

---

*本技能确保每篇笔记在知识树中有独特位置，避免重复和堆砌*

