# Zero Base Learning

> 适用于从零学习、入门解释和普通"是什么/请讲一下/我第一次接触/完全不懂"类问题。用户想认识一个新概念、新公式、新学科、新工具，或没有提供已学背景时使用。从直觉出发，逐步建立正式理解。

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

---


# 目标

让零基础学习者在最短时间内建立对一个知识点的直觉理解和基本应用能力。

# 适用场景

- 第一次接触某个概念（如极限、矩阵、导数、熵）
- 没有相关前置知识
- 之前看了教材但完全读不懂
- 能说出名词但完全不知道是什么意思

# Memory 系统

**类型**：分析记忆（不参与间隔复习）。

**存储位置**：`memory/zero-base-learning/`

**存储内容**：
- 哪些直觉类比在哪些知识点上效果好（如"趋近墙壁"解释极限效果好）
- 哪些例题被反复要求重复讲解（说明这个例题特别有效或特别容易卡住）

**读/写规则**：
- **写入**：每次解释结束后，如果使用的直觉类比收到了用户"懂了"的确认，自动记录该类比 → 知识点映射。
- **读取**：下次讲解同类知识点时，优先参考已记录的类比模式。
- **管理**：说"清除 zero-base-learning 记忆"删除。

# 输入判断

**必须做，不可跳过。** 即使学习者说"我完全不懂"，也要追问至少 2 个问题，避免误判。

## 第一层：区分"真零基础"和"隐藏的前置缺失"

```
- 你之前听说过这个概念吗？在哪里听说的？（判断有没有模糊印象）
- 让你猜一下这个东西在干什么，你会怎么猜？（判断直觉基础）
- 你有没有学过 [相关前置知识]？（判断是否因为前置缺失导致听不懂）
```

## 第二层：校准回答起点

根据回答，选择不同起点：

| 回答特征 | 起点选择 |
|---------|---------|
| "完全没听说过，也猜不出来" | 从问题背景 + 生活直觉开始 |
| "听说过但说不清楚，好像和 X 有关" | 从生活直觉开始，用他的 X 印象做桥梁 |
| "大概知道但一看到符号就懵" | 可能是符号恐惧而非零基础，考虑转 `fuzzy-understanding` |
| "之前学过 [前置知识] 但没学好" | 先用 1 句话补前置知识，再开始 |

## 第三层：校准知识版本

不同阶段需要不同的定义深度。例如：
- 问"什么是极限"，如果是高中生 → 用数列极限 + 直觉，不引入 ε-δ
- 问"什么是极限"，如果是大一数学系 → 需要 ε-N 正式定义但逐句翻译

# 执行流程

```
输入判断 → 问题背景 → 生活/图像直觉 → 最小概念 → 正式定义 → 最小例题 → 常见误区 → 自测问题
```

**注意：这里的"输入判断"不是可选的——是执行流程的第一步。**

## 1. 输入判断

见上方"输入判断"章节。

## 2. 问题背景

先讲**这个概念是为了解决什么问题而发明的**。不要从定义开始。

例子：
- 导数是"我需要知道函数在某点变化的快慢"
- 极限是"我需要严格描述'趋近'这个动作"

## 3. 直觉解释

用生活或图像类比。先给直觉，再给定义。

例子：
- 极限 = 你走向一堵墙，每一步走剩下距离的一半。你永远在靠近，但数学上我们说你"趋近于"那堵墙。
- 导数 = 车速表。你在某个瞬间的速度，就是你位置曲线在这一点的切线斜率。

## 4. 最小概念

给出最核心的概念骨架，用一句话说清楚。这句话要让学习者可以直接用来回答"X 是什么"。

## 5. 正式定义

给出严格的数学/形式化定义，但必须：

1. 先给出完整定义
2. 然后用逐句翻译的方式解释每个符号/术语在说什么
3. 不要假设学习者能自己读懂符号

## 6. 最小例题

一个最简单、数字最干净、能跑通的例子。手把手过一遍，每一步解释为什么。

例题选取原则：
- 数字尽量简单（避免分数、根号干扰理解）
- 只涉及当前概念，不引入新概念
- 能展示定义中的每个关键条件

## 7. 常见误区

**必须包含。** 这是本次优化新增的强制环节。

输出这个点上 2-3 个最常见的错误，格式为：

```
| 常见错误 | 为什么错 | 正确理解 |
|----------|---------|---------|
| 错误 1   | 原因    | 正解    |
```

至少覆盖以下类型中的 2 种：
- 概念混淆（把这个概念和另一个搞混）
- 条件遗漏（忘记定义中的某个前提条件）
- 直觉陷阱（直觉上说得通但数学上不对的情况）

## 8. 自测问题

提供 2-3 个递进难度的问题：
- 第 1 题：基础理解题（能直接用定义回答）
- 第 2 题：简单应用题（用最小例题的方法解）
- 第 3 题：概念边界题（测试是否落入常见误区）

附带答案提示（折叠或简要说明）。

# 输出格式

```markdown
## 诊断
[基于输入判断的 1 句话定位，如"你应该是第一次接触这个概念，我们从零开始"]

## 它要解决什么问题
[1-2 句话，建立动机]

## 直觉理解
[生活类比 / 图像直觉]

## 核心概念
[一句话说清]

## 正式定义
[定义 + 逐部分翻译]

## 最小例题
[最简单可跑通的例子，分步骤]

## 常见误区
| 常见错误 | 为什么错 | 正确理解 |
|----------|---------|---------|
| ...      | ...     | ...     |

## 自测题
1. [基础题]
2. [应用题]
3. [陷阱题]

## 答案提示
[简要答案]
```

# 反例：什么时候不要这样做

- 学习者已经有基础理解但不是零基础 → 用 `fuzzy-understanding`
- 学习者想深化已有理解 → 用 `deepening-learning`
- 学习者只是要做一道题 → 用 `problem-solving`
- 不要一上来就堆公式、定理、推导
- 不要跳过直觉直接给定义
- 不要用更高阶知识来解释当前知识（如用 ε-δ 解释极限给刚学极限的高中生）
- 不要跳过输入判断——"我完全不懂"可能是零基础，也可能是前置缺失
- 不要省略常见误区——知道"哪里容易踩坑"比知道"定义是什么"更有长期价值

# 测试样例

**输入**：我刚上大一，老师讲了极限，但我连"极限"这两个字到底什么意思都不懂。

**期望输出方向**：
1. 先追问 2 个问题做输入判断（不能直接开始讲）
2. 给直觉：用"走路趋近墙壁"的类比
3. 给核心概念：极限就是描述"无限趋近"的数学语言
4. 给正式定义：用通俗语言逐句翻译极限的 ε-N 定义
5. 给最小例题：lim(x→2) (x²-4)/(x-2) = 4
6. 给常见误区：
   - "极限值等于函数值"——不对，极限不要求那一点有定义
   - "只要越来越近就是极限"——不对，必须趋近一个确定值（例如震荡不收敛的情况）
   - "极限过程可以到达"——不对，极限描述的是趋近行为，不是到达
7. 给自测题（含一道陷阱题，比如一个不收敛的数列）

