Kaoyan kaoyan-math-notes

This skill handles note generation and updates for 考研数学 (Chinese graduate entrance math exam) preparation. Use it when users want to generate exam-oriented study notes from existing materials, update notes based on feedback, or create structured learning content with LaTeX formatting.

install
source · Clone the upstream repo
git clone https://github.com/Treasoni/kaoyan
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/Treasoni/kaoyan "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/kaoyan-math-notes" ~/.claude/skills/treasoni-kaoyan-kaoyan-math-notes && rm -rf "$T"
manifest: .claude/skills/kaoyan-math-notes/skill.md
source content

考研数学笔记生成更新技能 (Kaoyan Math Notes)

📁 详细代码实现见 code.md

技能概述

本技能专注于考研数学笔记的生成和更新,帮助用户:

  1. 基于现成笔记生成考研学习笔记:将用户的原始笔记转化为考研导向的学习材料
  2. 根据反馈更新笔记:根据用户的学习反馈动态更新笔记内容
  3. LaTeX格式强制:所有数学公式必须使用LaTeX格式
  4. 已有笔记保护机制:不覆盖已有内容的增量创建

核心特色

  • ⚠️ LaTeX格式强制要求
  • 个性化学习轨迹记录("我的理解记录")
  • 错误模式追踪("我的错误类型")
  • 与kaoyan-math-core集成,支持MemOS持久化

触发条件

触发此技能当:

笔记生成相关

  • "生成考研数学笔记" + 提供笔记
  • "帮我整理成考研笔记" + 数学内容
  • "生成学习笔记" + 考研数学上下文

笔记更新相关

  • "我对XX不理解" + 之前有笔记
  • "更新数学笔记"、"补充数学笔记"
  • "听课时不理解XX"
  • "这个知识点不太明白"

不触发此技能当:

  • 查询知识点结构 → 使用 kaoyan-math-structure
  • MemOS配置/欠账检查 → 使用 kaoyan-math-core

笔记生成规范

内容生成来源

生成笔记内容时,必须参考以下资料:

  1. 高数资料目录:

    /Users/zhqznc/Documents/高数资料/

    • 函数极限与连续:
      函数极限与连续/函数极限与连续.md
    • 其他章节按目录结构查找
  2. 生成优先级:

    • 首选:用户提供的文件夹下的README.md(如果存在且有内容)中的内容
    • 次选:高数资料中的内容
    • 最后:AI 通用知识补充
  3. 内容规范:

    • 定义、定理必须来自高数资料
    • 例题优先使用高数资料中的例题
    • 考试重点标注与高数资料一致

已有笔记保护机制 ⚠️

强制规则:生成笔记时,必须遵守以下保护机制:

  1. 检查现有文件:生成前先检查目标路径是否已有笔记文件
  2. 禁止覆盖:如果文件已存在且有内容,不得覆盖或修改
  3. 增量创建:只为缺失的知识点创建新文件
  4. 提示用户:发现已有笔记时,明确告知用户哪些已存在、哪些将新建
def check_existing_notes(target_path, knowledge_points):
    """检查已有笔记,返回待创建列表"""
    existing = []
    to_create = []

    for kp in knowledge_points:
        file_path = f"{target_path}/{kp}.md"
        if os.path.exists(file_path) and has_content(file_path):
            existing.append(kp)
        else:
            to_create.append(kp)

    return {
        "existing": existing,      # 已有笔记,不会被修改
        "to_create": to_create     # 将新建的笔记
    }

数学公式格式标准 ⚠️ [强制要求]

所有数学公式必须使用 LaTeX 格式,以确保在 Obsidian 中正确渲染。

内联公式

使用单个美元符号

$...$

示例:设函数 $f(x)$ 在点 $x_0$ 处可导

独立公式行

使用双美元符号

$$...$$

示例:
$$
\lim_{x \to x_0} \frac{f(x) - f(x_0)}{x - x_0} = f'(x_0)
$$

特殊符号 LaTeX 映射表

数学符号LaTeX 代码说明
$\alpha, \beta, \gamma$
\alpha
,
\beta
,
\gamma
希腊字母
$\infty$
\infty
无穷大
$\int$
\int
积分号
$\sum$
\sum
求和
$\leq, \geq$
\leq
,
\geq
不等号
$\neq$
\neq
不等于
$\approx$
\approx
约等于
$\lim_{x \to x_0}$
\lim_{x \to x_0}
极限
$\frac{a}{b}$
\frac{a}{b}
分数
$f'(x)$
f'(x)
一阶导数
$f''(x)$
f''(x)
二阶导数

AI 生成约束

生成笔记时:

  1. 自动检测公式并转换为 LaTeX
  2. 验证LaTeX 语法正确性
  3. 提供预览确保渲染正确
  4. 优先使用内联公式
    $...$
    对于行内表达式
  5. 独立公式行使用
    $$...$$
    对于重要公式

核心功能

功能1:基于现成笔记生成考研学习笔记

输入

  • 用户现成的数学笔记(文本或文件)
  • 目标模块信息(高数/线代/概率 + 具体章节)
  • 目标考试类型(数一/数二/数三)

处理

  1. 解析现成笔记,提取知识点
  2. 补充考研导向内容:
    • 考试重点标注
    • 常考题型
    • 易错点
    • 解题技巧
    • 典型例题
  3. 生成结构化学习笔记

输出

  • 保存为 Markdown/Obsidian 笔记文件
  • 提供笔记预览

功能2:根据反馈更新笔记

输入

  • 已有笔记文件路径
  • 用户反馈:
    • 理解困难的地方
    • 听课时不理解的地方
    • 希望补充的内容

处理

  1. 分析理解障碍
    • 为什么不理解?(概念抽象/逻辑跳跃/缺乏直观解释)
    • 在笔记中定位对应知识点
  2. 优化表达方式
    • 增加直观解释/类比
    • 分步骤详细讲解
    • 调整叙述顺序
  3. 添加辅助内容
    • 更多例题
    • 图示说明
    • 对比分析
  4. 标注易错点
    • 记录用户思维误区
    • 在易错点部分补充说明
  5. 记录思维过程
    • 在"我的理解记录"中记录用户的原始理解
    • 在"我的错误类型"中标注个性化错误模式

输出

  • 更新笔记文件
  • 标注修改位置和内容

用户工作流

1. 用户提供现成数学笔记 + 模块信息
   ↓
2. AI 基于现成笔记生成考研导向学习笔记
   ↓
3. 用户学习笔记 + 听课
   ↓
4. 用户反馈理解问题/听课不理解的地方
   ↓
5. AI 分析反馈 + 更新笔记
   ↓
6. 循环步骤3-5

知识点模板

---
知识点: [知识点名称]
模块: [所属模块]
考试类型: 数一/数二/数三
考试频率: ⭐⭐⭐⭐⭐
学习状态: 待学习/进行中/已完成
tags: [标签1, 标签2, ...]
---

# [知识点名称]

## 原始定义
[来自用户现成笔记的定义内容]

## 直观理解 💡
[新增:直观解释、类比、几何意义]

## 定理条件 ⚠️
[新增:充要条件、适用范围]

## 考试重点 ⭐
[新增:考试频率、题型分布]

## 典型题型
[新增:常考题目类型]

## 解题方法
[新增:解题步骤、技巧]

## 易错点 ⚠️
[新增:常见错误、思维误区]

## 我的理解记录 🧠

### 初始理解
- 我一开始以为……
- 我之前的理解是……

### 误区记录
- 我误以为……
- ❌ 为什么会这样想:(条件/经验/直觉)
- ✅ 正确的理解应该是……

### 学习进展
- 听课后我发现……
- 做题时我注意到……

### 未解疑问
- 我仍然不清楚的是……
- 希望进一步了解……

## 我的错误类型 📌

### 条件遗漏 ⚠️
- [ ] 经常忘记……条件
- [ ] 例子:……

### 方法误选 ⚠️
- [ ] 总是想用……方法,但实际应该用……
- [ ] 原因分析:

### 推导跳步 ⚠️
- [ ] 经常跳过……步骤
- [ ] 导致……

### 计算失误 ⚠️
- [x] 经常算错……
- [ ] 提醒:……

## 例题
> [!example] 例1
> **题目**:...
> **分析**:...
> **解答**:...
> **评注**:...

## 相关知识点 📚

### 前置知识
- [[知识点1]] - 说明
- [[知识点2]] - 说明

### 常考组合
- [[知识点3]] - 结合使用说明

### 跨章节应用 ⚠️
- 与[[其他章节知识点]]的结合

## 补充说明 📝
<!-- UPDATE: YYYY-MM-DD 用户反馈不理解XX -->
[根据用户反馈动态添加的内容]
<!-- END UPDATE -->

更新标记

<!-- UPDATE: 2025-XX-XX 用户反馈不理解XX -->
[补充内容]
<!-- END UPDATE -->

关键组件

1. 知识点定位器

  • 根据用户反馈找到对应知识点
  • 模糊匹配(用户说的"那个函数"→识别为具体函数)

2. 理解障碍分析器

  • 分析反馈内容
  • 分类:概念抽象/逻辑跳跃/缺乏例题/条件不清
  • 生成补充策略

3. 表达优化器

  • 生成直观解释
  • 增加类比
  • 分步骤讲解

4. 例题生成器

  • 根据知识点选择典型例题
  • 生成详细解答
  • 添加评注

文件组织结构

考研数学笔记/
├── 📑 索引.md              # MOC (Map of Content),链接所有知识点
├── 📊 学习进度.md          # Dashboard 显示所有知识点状态
│
├── 高数-极限/
│   ├── 极限定义.md
│   ├── 等价无穷小.md
│   ├── 洛必达法则.md
│   └── 泰勒公式.md
│
├── 高数-导数/
│   ├── 导数定义.md
│   ├── 中值定理.md
│   ├── 极值问题.md
│   └── 凹凸性.md
│
├── 高数-积分/
│   ├── 不定积分.md
│   ├── 定积分.md
│   └── 积分应用.md
│
├── 线代/
│   ├── 矩阵运算.md
│   ├── 行列式.md
│   ├── 线性方程组.md
│   ├── 特征值.md
│   └── 二次型.md
│
└── 概率/
    ├── 随机变量.md
    ├── 常用分布.md
    └── 数字特征.md

验证标准

  1. ✅ 能正确解析用户现成笔记
  2. ✅ 能识别知识点结构并按知识点分文件
  3. ✅ 生成的笔记包含 Obsidian 格式(properties、tags、callouts、wikilinks)
  4. ✅ 生成的笔记包含考研导向内容(考试重点、题型、易错点)
  5. ✅ 能根据用户反馈定位对应的知识点文件
  6. ✅ 能正确更新笔记文件并添加更新标记
  7. ✅ 所有数学公式使用LaTeX格式(
    $...$
    $$...$$
  8. ✅ 特殊符号正确转换为LaTeX代码
  9. ✅ 触发条件准确(不会误触发)
  10. ✅ 已有笔记保护机制正常工作

限制条件

  • 需要用户提供现成笔记或文件路径
  • 需要明确模块信息(高数/线代/概率)
  • 笔记更新需要提供之前的笔记文件路径
  • 触发条件明确要求"考研"上下文

技能集成

依赖技能

技能用途
kaoyan-math-core保存错误记录、获取个性化提醒
kaoyan-math-structure获取知识点结构、目录模板
obsidian-markdown创建Obsidian笔记

创建日期: 2026-03-10 版本: 1.0.0