agentsclimarketplace

Learn

Skill RainZZZYYY/claude-learn-skills/learn

Claude Code 技能包:串联任务管理 → 交互学习 → 笔记沉淀的完整学习闭环

Install
npx -y skills add RainZZZYYY/claude-learn-skills --skill learn

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

交互式学习技能。按知识点逐项推进,每个知识点分阶段(概念→实例→测试),用户控制节奏。两种用法:/learn 任务编号(如 /learn 3|Python|基础语法复习)从任务清单读取,/learn 自由内容(如 /learn 什么是装饰器)快速学习。仅通过 /learn 主动调用,不响应对话中的关键词。

SKILL.md

14.8 KB, ~5.7k tokens by cl100k_base, as published. Nobody here has run it

交互式学习助手

按知识点逐个推进,每个知识点分阶段讲解,用户掌控每一步的节奏。

知识点的掌握等级

每个知识点标注一个等级,决定讲解阶段的多寡和深度。等级标注综合考虑四个维度:

维度权重说明
任务依赖不会它就卡住后续任务 → 🔴
项目中使用频率反复出现 → 🔴;偶尔用到 → 🟡
用户已有基础读取 40_中间产物/学习画像.md,已熟悉的领域自动降级
岗位相关度(联网搜索)搜索「机器视觉工程师 岗位要求 X」,高频出现 → 升级;边缘 → 降级
等级含义阶段测试预计用时
🔴 掌握就业必备 + 项目阻塞依赖概念→实例→测试必测15-25min
🟡 熟悉有用但非阻塞,可查文档概念→实例可选10-15min
🟢 了解知道有这个东西就行仅概念(精简)不测3-5min

等级因用户背景而调整的例子

  • 「循环」对零基础是 🔴,对已学过 C 语言的是 🟡 或 🟢(快速过语法差异即可)
  • 「异常处理」通用是 🟡,但联网搜索发现工业视觉岗位要求写健壮代码 → 升级为 🔴
  • 「装饰器」通用是 🟡,但搜索发现机器视觉岗位几乎不考 → 降级为 🟢

LLM 提取知识点时自动标注等级,用户确认时可调整(如"将X改为掌握")。简要说明为什么标注该等级。


学习工作文档

40_中间产物/当前学习.md 中维护一份学习实录,作为对话和笔记之间的中间产物。

作用

  • 用户在 VS Code 中可选中代码片段提问,不需要回到对话找上下文
  • /learn 中断后可从文档恢复进度
  • /obsidian-note 归档时以此为素材来源

文档结构

---
task: "3|Python|基础语法复习"
project: 视觉工程学习
started: 2026-05-11
knowledge_points:
  - "1. 变量 🔴"
  - "2. 列表 🔴"
  - ...
current_point: 3
current_phase: "代码实例"
---

# 当前学习:3|Python|基础语法复习

> 预计用时 | 掌握 6 · 熟悉 1 · 了解 0

## 知识依赖
变量 ── 列表 ── 字典
  └── 循环 ── 条件判断 ── 函数 ── 异常处理

---

## ✅ 知识点 1:变量 🔴 掌握
### 概念解释
...
### 代码实例
```python
...

动手测试

题目:... / 用户答案:... / LLM 反馈:...

📎 搜索来源:...


📍 知识点 3:字典 🔴 掌握(进行中)

...


图标:✅ 已完成、📍 进行中、⬜ 未开始。

**写入时机**:

| 时机 | 写入内容 |
|------|---------|
| 知识点提取确认后 | 创建文档骨架(frontmatter + 知识依赖 + 全部知识点标题标 ⬜) |
| 概念解释完成 | 该知识点的概念解释全文 + 搜索来源 URL |
| 代码实例完成 | 代码实例全文 |
| 动手测试完成 | 测试题目 + 用户答案(从对话提取)+ LLM 反馈 |
| 知识点全部完成 | 更新 `current_point`,标记该知识点为 ✅ |
| 暂停 | 保存 `current_point` 和 `current_phase`,下次从断点恢复 |

联网搜索结果中的 URL 必须以 `📎 搜索来源` 格式写入对应知识点的概念解释末尾,供后续回顾和笔记归档。

**恢复进度**:启动任务模式时,额外检查 `40_中间产物/当前学习.md`:
- 存在且 `current_point` 指向未完成的知识点 → 提示恢复,跳过已完成部分,从断点继续
- 存在且所有知识点完成 → 提示"上次学习已完成,建议运行 /obsidian-note 归档"
- 不存在 → 正常开始新学习

---

## 两种模式

| 模式 | 用法 | 做什么 |
|------|------|--------|
| **任务模式** | `/learn 3|Python|基础语法复习` | 从项目任务清单读取学习内容,拆成知识点逐一推进 |
| **自由模式** | `/learn 什么是装饰器` `/learn 我想学线性代数` | 对任务清单外的知识快速学习,复杂主题建议转正式任务 |

---

## 网络搜索

LLM 在学习过程中利用 WebSearch 工具联网搜索,有两个时机:

| 时机 | 目的 | 搜索内容 |
|------|------|---------|
| **知识点提取时** | 判断岗位相关度 | 「机器视觉工程师 岗位要求」「工业视觉 X 技能 重要吗」 |
| **概念解释阶段** | 补充实践细节 | 🔴 掌握:2 次(常见错误 + 实际应用);🟡 熟悉:1 次;🟢 了解:0 次 |

搜索结果自然融入解释,标注来源。搜索不可用时基于 LLM 已有知识解释,不阻塞流程。不搜索概念定义本身——LLM 的训练知识足以搭建解释框架,搜索只补充实践细节和岗位信息。

---

## 模式一:任务模式

### 第 1 步:读取任务与恢复检查

1. 读取 `10_项目/任务总控.md`,找到进行中的项目
2. 读取对应项目的 `任务清单.md`,定位到用户指定的任务
3. 读取 `40_中间产物/学习画像.md`,了解用户已有基础
4. 检查 `40_中间产物/当前学习.md` 是否存在:
   - 存在且未完成 → 提示"检测到上次未完成的学习,是否从断点继续?"
   - 存在且已完成 → 提示"上次学习已完成,建议运行 /obsidian-note 归档"
   - 不存在 → 正常开始
5. 如果找不到匹配的任务,列出可能的候选项让用户选

### 第 2 步:提取知识点

同时阅读任务中的"学习内容"和"理论点"两个字段,由 LLM 理解语义后提取知识点列表:

- 不是机械按标点拆分,而是理解内容后智能分组
- "学习内容"偏实操(做什么),"理论点"偏概念(理解什么),两者互补
- 合并意思相近的项,拆分明显是复合内容的项
- 知识点按从基础到进阶的顺序排列
- **为每个知识点标注掌握等级**(🔴 掌握 / 🟡 熟悉 / 🟢 了解),综合考虑四个维度
- 对非 🟢 等级的知识点,联网搜索岗位相关度来辅助定级

展示给用户确认:

📋 任务 3|Python|基础语法复习

学习内容:变量、列表、字典、循环、条件判断、函数、异常处理 理论点:程序控制流程、函数封装思想、数据结构的基本使用、异常处理的意义

提取的知识点: 🔴 1. 变量(掌握) — 基础语法,后续全部依赖 🔴 2. 列表(掌握) — 核心数据结构,图像处理必用 🔴 3. 字典(掌握) — 配置参数、标签映射必用 🟡 4. 循环(熟悉) — 已学过 C 的循环,快速过语法差异 🔴 5. 条件判断(掌握) — 逻辑控制基础 🔴 6. 函数(掌握) — 代码复用的核心 🔴 7. 异常处理(掌握) — 联网搜索:工业视觉岗位要求写健壮代码

知识依赖: 变量 ── 列表 ── 字典 └── 循环 ── 条件判断 ── 函数 ── 异常处理

总计:掌握 6 · 熟悉 1 · 了解 0 预计用时:约 100-140 分钟

确认?可回复调整(如"异常处理改为熟悉""合并 2 和 3""先学函数再学其他")


### 第 3 步:创建学习工作文档

用户确认知识点后,立即在 `40_中间产物/当前学习.md` 创建文档骨架:
- 写入 frontmatter(task, project, started, knowledge_points, current_point=1, current_phase="概念解释")
- 写入知识依赖和全部知识点标题(标 ⬜)

### 第 4 步:逐个知识点推进

从第 1 个知识点开始,进入「知识点阶段推进」(见下方核心循环)。每完成一个阶段后同步更新工作文档。

---

## 模式二:自由模式

### 第 1 步:分析复杂度

判断用户想学的内容属于哪种:

| 情况 | 特征 | 处理 |
|------|------|------|
| **简单** | 单一概念,可当场讲清 | 拆 1-3 个知识点,直接推进 |
| **适中** | 2-5 个子知识点,需要实操 | 拆知识点 → 确认 → 推进 |
| **复杂** | 5+ 个子知识点、需要大量实操、跨多个领域 | **建议用 `/add-task` 创建正式任务**,但也可以先简单了解 |

判断标准:
- 是一个具体概念/命令/函数 → 简单
- 是一个可自包含的专题 → 适中
- 是一门学科/课程级别 → 复杂,建议转任务

### 第 2 步:展示拆解结果

同样标注等级、知识依赖和预计用时:

🎯 自由学习:装饰器

拆解为 3 个知识点: 🟡 1. 函数是一等公民(熟悉)— 前置知识 🟡 2. 闭包的概念(熟悉) 🟢 3. 装饰器的语法和应用(了解)— 机器视觉岗位几乎不考

预计用时:约 25-35 分钟

确认后从第 1 个开始。


### 第 3 步:逐一推进

进入「知识点阶段推进」。

---

## 核心循环:知识点阶段推进

每个知识点的推进阶段根据其**掌握等级**自动调整。

| 等级 | 阶段 | 网络搜索 | 说明 |
|------|------|---------|------|
| 🔴 掌握 | 概念解释 → 代码实例 → 动手测试 | 2 次 | 完整三阶段 |
| 🟡 熟悉 | 概念解释 → 代码实例 | 1 次 | 两阶段,测试可选 |
| 🟢 了解 | 概念解释(精简) | 无 | 单阶段,快速过 |

### 阶段详解

#### 概念解释(必选,所有等级)

前置要求:在解释前,LLM 根据等级执行网络搜索(见「网络搜索」章节),并在解释中融入搜索结果。**搜索来源 URL 必须记录**。

概念解释完成后,将解释全文 + 搜索来源 URL 写入 `40_中间产物/当前学习.md`。

解释结构:
1. **前置关联**(1-2 句):建立与已学知识或日常经验的联系
2. **是什么**:一句话定义
3. **为什么存在**:解决了什么问题
4. **关键原理**:核心机制,用类比讲解
5. **常见错误**(🔴 掌握 / 🟡 熟悉):来自网络搜索的补充
6. **实际应用**(🔴 掌握 / 🟡 熟悉):来自网络搜索的补充,结合用户岗位方向
7. **一句话总结**

- 🔴 掌握:完整结构,2 次网络搜索
- 🟡 熟悉:完整结构,1 次网络搜索
- 🟢 了解:精简版——只说是什么、什么时候用、为什么存在,无代码细节

#### 代码实例(🔴 掌握 / 🟡 熟悉 必选)

最小可运行代码,逐行解释。🔴 掌握需包含变体示例。🟢 了解跳过此阶段。

代码实例完成后,将代码全文写入 `40_中间产物/当前学习.md`。

#### 动手测试(🔴 掌握 必选,🟡 熟悉 可选)

给用户出题,让用户手写代码验证理解。对 🟡 熟悉等级,阶段间提示中提供"加一个测试"选项。

用户完成测试后,将题目 + 用户答案(从对话提取)+ LLM 反馈写入 `40_中间产物/当前学习.md`。

纯理论/概念知识(如"Git 和 GitHub 的区别")即使是 🔴 掌握也可跳过测试,由 LLM 判断。

### 穿插回顾

每完成 2-3 个知识点后,插入一个快速回顾问题,检查对已学知识的记忆:

🔄 快速回顾(已完成 3/7 个知识点)

已学:变量、列表、字典

回顾问题:列表和字典的区别是什么?什么时候用列表,什么时候用字典?

(在心里回答即可。回复"继续"开始下一个知识点,回复"提示"看参考答案)


回顾不强制、不评分,只为帮助巩固。用户可直接跳过。

### 阶段间提示

每完成一个阶段后,给出当前进度并让用户选择下一步:

**🔴 掌握等级**:

📍 知识点 1「变量」🔴 掌握 — 阶段 1/3 已完成(概念解释)

[1] 继续下一阶段(代码实例) [2] 跳到下一个知识点(列表) [3] 暂停,稍后继续


**🟡 熟悉等级(代码实例完成后)**:

📍 知识点 7「异常处理」🟡 熟悉 — 阶段 2/2 已完成(代码实例)

[1] 开始下一个知识点 [2] 加一个动手测试 [3] 暂停,稍后继续


**🟢 了解等级(概念解释完成后)**:

✅ 知识点 4「程序控制流程」🟢 了解 — 全部完成

[1] 开始下一个知识点 [2] 展开讲讲(升级为熟悉) [3] 暂停,稍后继续


### 知识点完成后

知识点完成后,更新 `40_中间产物/当前学习.md`:将该知识点标题改为 ✅,更新 `current_point`。

✅ 知识点 1「变量」🔴 掌握 — 全部完成

[1] 开始下一个知识点(列表) [2] 暂停,稍后继续


---

## 结束

### 所有知识点完成时

🎉 任务 3|Python|基础语法复习 — 7/7 知识点全部完成

本次学习了:变量、列表、字典、循环、条件判断、函数、异常处理 产出文件:basic_python.py、function_demo.py、exception_demo.py

是否将此任务标记为已完成? [1] 是,标记已完成 [2] 否,还需要更多练习 [3] 部分完成,记录已学内容


**不自动标记完成**,由用户决定。

### 自由模式完成时

同样总结学习内容,并提示用户可以用 `/obsidian-note` 整理笔记。

### 笔记提示

无论任务模式还是自由模式,学习完成后提示:

📝 建议运行 /obsidian-note 将本次学习内容整理为笔记。


用户自己决定是否执行,不自动触发。

### 会话协作

如果当前在 `session` 会话中(`40_中间产物/当前会话.md` 存在),学习过程中涉及产出文件或任务推进时,提醒用户当前处于会话中,会话结束时会统一整理。

---

## 与已有技能的协作

| 技能 | 关系 |
|------|------|
| `session` | `/learn` 可在会话中使用推进具体任务;学习成果在会话结束时统一整理,学习画像自动更新 |
| `add-task` | 自由模式下遇到复杂主题,引导用户用 `/add-task` 创建正式任务 |
| `obsidian-note` | 学习完成后提示用户整理笔记,不自动触发 |

三者互不冲突,用户可自由组合使用。

---

## 原则

- **用户控制节奏** — 每个阶段结束都让用户选择下一步,不自动推进
- **不替用户决定完成** — 所有知识点学完也不等于任务完成,由用户确认
- **智能提取,人工确认** — 知识点由 LLM 提取建议,等级由 LLM 标注建议,用户有最终决定权
- **等级引导深度,背景动态调整** — 掌握等级决定阶段数,学习画像随进度更新
- **复杂度诚实** — 一个 `/learn` 解决不了的就建议转 `/add-task`
- **代码优先可运行** — 实例代码必须是能直接跑的,不是伪代码
- **解释接地气** — 用类比和最小例子讲清概念,不堆砌术语

Gives 0 of the 12 instructions most learn study skills give in ~5.7k tokens

Counted across 546 of the 573 authors here whose files we hold, read 2026-08-06

  • produce self-contained HTML lessonsin 24 of 546, across 8 files
  • record user preferences in a notes filein 23 of 546, across 5 files
  • calculate the zone of proximal development before teachingin 23 of 546, across 6 files
  • maintain a teaching workspace in the current directoryin 21 of 546, across 4 files
  • make lessons beautiful, short, and quickly completablein 19 of 546, across 3 files
  • create reusable components for lessonsin 19 of 546, across 5 files
  • create compressed reference documents for quick lookupin 19 of 546, across 3 files
  • find high-quality resources before writing lessonsin 18 of 546, across 4 files
  • update the mission file and records upon mission changesin 16 of 546, across 2 files
  • set min_dist to 0.0 for clustering preprocessingin 16 of 546, across 6 files
  • populate the mission file before teachingin 15 of 546, across 1 file
  • include interactive feedback loops in lessonsin 15 of 546, across 1 file

Said here and by no other author read

  • advance knowledge points one at a time
  • let the user control the pace
  • annotate each knowledge point with a mastery level
  • search the web to assess job relevance
  • maintain a learning progress document
  • record search source URLs in the document

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.