| name | self-study-guide |
| description | Transform outlines, syllabi, or knowledge point lists into structured self-study materials. Breaks down topics into digestible learning units with explanations, examples, exercises, and review questions. Searches for supplementary resources to enrich understanding. Helps users independently master any subject. Triggered by: "自学", "学习大纲", "知识点", "自学资料", "学习指南", "self-study", "study guide", "学习计划", "自学指导", "整理学习资料", "自学材料". |
| version | 1.0.0 |
| allowed-tools | Read Write WebSearch |
| metadata | {"tags":"education, self-study, learning, knowledge-organization"} |
Self-Study Guide
Purpose
将用户提供的大纲、知识点列表或课程提纲,转化为系统化的自学材料。通过拆解学习单元、补充解释资料、设计练习和复习环节,帮助用户在没有老师指导的情况下独立掌握知识。
When to Use
- 用户提供了一份课程大纲或学习计划,需要生成配套的自学材料
- 用户列出了若干知识点,需要整合为系统化的学习内容
- 用户需要为某个领域或课程生成完整的学习指南
- 用户需要将碎片化的知识提纲转化为结构化的自学资料
- 用户说"帮我整理一下这些知识点"、"给我做个学习计划"、"从这个大纲出一套自学材料"
When NOT to Use
- 用户只需要某个概念的单句定义或简短解释 —— 应直接回答,无需生成材料
- 用户需要的是考试押题或应试技巧 —— 这不是自学导向的目标
- 用户提供的内容已经是完整的教材、教程或已结构化的学习资料 —— 无需再组织
- 用户的问题是纯操作性质的(如"如何安装 X")—— 应直接给出步骤
Workflow / Steps
Step 1: 接收并解析输入
解析用户提供的大纲、知识点列表或课程提纲:
- 如果用户通过斜杠命令传递参数(
/self-study-guide <内容>),直接使用参数内容
- 如果用户通过自然语言描述需求,提取其中的大纲信息
- 如果内容为空或过于模糊(如只有"帮我整理学习资料"而无具体主题),要求用户补充:学习领域、目标水平、具体知识点列表或大纲
识别输入中的结构信息:
- 章节标题和子主题
- 层级关系(哪些是父主题,哪些是子主题)
- 可能的前置知识依赖关系
- 如果输入中的层级关系不明确,按合理逻辑推断并重组(例如:内容涉及"变量→循环→函数",自动推断出学习顺序)
Step 2: 拆分为学习单元
根据解析结果,将整体内容拆分为若干学习单元:
- 每个单元体量适中,对应约 30-60 分钟的自学量
- 按知识点依赖关系排列单元顺序
- 标注每个单元的前置知识要求(来自之前的单元或其他基础)
- 为每个单元确定 2-4 个明确的学习目标(以"学完后能够…"的格式表述)
- 主题数量超过 10 个时,先分组为"模块"(Module),模块下再分单元(Unit)
在材料生成阶段,使用以下统一的文件命名格式:
study-materials/
├── index.md
├── 01-模块-1/
│ ├── 01-单元名称.md
│ ├── 02-单元名称.md
│ └── 03-单元名称.md
├── 02-模块-2/
│ └── ...
└── ...
如果主题数量不超过 10 个,直接按单元编号扁平存放:
study-materials/
├── index.md
├── 01-单元名称.md
├── 02-单元名称.md
└── ...
Step 3: 搜索补充资料
对每个学习单元的核心知识点,使用 WebSearch 搜索补充教学资料:
- 每个单元至少搜索 1-2 个核心概念的教学资料
- 优先搜索:教程文章、官方文档、实践指南
- 对编程/技术类主题,搜索代码示例和最佳实践
- 记录搜索结果的标题、摘要和 URL
异常处理:
- 搜索无结果时,降级为使用已有的知识进行解释,并在材料中标注"无外部资料参考"
- 搜索到的资料与单元主题不相关时,跳过该结果,不强行使用
Step 4: 生成学习材料
在 self-study-guide/study-materials/ 下为每个学习单元创建独立文件。每个文件使用统一模板:
---
unit: "单元编号及名称"
prerequisites: ["前置知识1", "前置知识2"]
objectives:
- "学完后能够..."
- "学完后能够..."
estimated_time: "预估学习时间"
---
## 概述
<200-300字的核心概念引入,用日常语言说明"这是什么"和"为什么重要">
## 核心概念
### 概念 1:<名称>
- **通俗解释**:用类比或日常场景解释
- **要点**:关键知识点,每个点 1-2 句
- **示例**:具体实例说明
### 概念 2:<名称>
...
## 实践练习
### 基础练习
1. 练习 1(简单)
2. 练习 2(中等)
### 进阶挑战(可选)
- 挑战性问题或综合应用
## 检查理解
回答以下问题检验是否掌握了本单元:
1. 问题 1
2. 问题 2
## 总结
<150-200字的本单元要点回顾>
## 扩展阅读
- [标题](URL) — 来源说明
异常处理:
- 单元只有少量内容时,不强行填充模板,保持简洁
- 同一单元内容过长时(超过 500 行),拆分为子文件或精简内容
Step 5: 生成学习计划与索引
在 study-materials/index.md 中生成完整的学习计划和索引文件:
- 所有单元的导航链接(按推荐学习顺序排列)
- 每个单元的学习目标和预估时间
- 学习路线图(用
→ 箭头表示依赖关系)
- 复习建议节点(建议每学习 3-4 个单元后安排一次复习)
索引内容示例:
# 学习指南:<主题名称>
## 学习路线图
<单元1> → <单元2> → <单元3>
↓
<单元4> → <单元5>
## 学习计划
| 单元 | 学习目标 | 预估时间 |
|------|---------|---------|
| 01-xxx | 能够... | 45 min |
| 02-xxx | 能够... | 60 min |
## 复习节点
- 学完单元 01-03 后:复习日
- 学完单元 04-06 后:复习日
Step 6: 输出报告
向用户报告生成结果:
- 生成了多少个学习单元,保存在哪个路径
- 建议的学习顺序和总预估时间
- 如何使用这些材料(建议每天学习 1-2 个单元,配合练习)
- 提示用户可以通过再次调用本 Skill 补充新的学习单元或调整已有内容
Constraints
- Always 在
self-study-guide/study-materials/ 下输出所有学习材料文件
- Always 先解析用户输入的结构再拆分单元 —— 不凭空编造大纲
- Always 为每个单元标注前置知识依赖,确保学习路径合理
- Always 使用日常语言和类比来解释概念,避免过于学术化的表述
- Always 在生成材料前搜索补充资料,而非仅依赖内置知识
- Always 每个学习单元文件头部包含 YAML 元数据块(unit, prerequisites, objectives, estimated_time)
- Always 步骤之间保持输入输出衔接:Step 2 的单元拆分 → Step 3 的搜索关键词 → Step 4 的材料模板 → Step 5 的索引
- Never 直接粘贴搜索结果原文 —— 用自己的话重新组织和解释
- Never 跳过练习环节 —— 每个单元至少包含 2 个基础练习
- Never 生成超过 500 行的单个学习文件 —— 过长时拆分为子文件
- 搜索到的外部资料来源在"扩展阅读"中标注 URL
- 当用户输入过于模糊时,必须追问补充信息而非强行生成
Examples
✅ Do This — 用户提供完整大纲
用户输入:
/self-study-guide 我想学 Python 基础,大纲是:
1. 变量和数据类型
2. 条件判断
3. 循环
4. 函数
期望做法:
- 解析出 4 个章节,自动拆分为 4 个学习单元
- 依赖关系:变量→条件→循环→函数
- 搜索 Python 变量、条件判断、循环、函数的相关教学资料
- 在
self-study-guide/study-materials/ 下创建各单元文件
- 每个文件包含概念解释、代码示例、练习题
- 生成
index.md 索引和学习计划
✅ Do This — 用户提供知识点列表
用户输入:
帮我整理一下这些机器学习知识点的自学材料:
- 线性回归
- 逻辑回归
- 决策树
- SVM
- 聚类
期望做法:
- 识别为机器学习基础算法列表
- 按推荐学习顺序排列:线性回归→逻辑回归→决策树→SVM→聚类
- 推断共性前置知识:基础概率统计
- 在第一个单元(线性回归)中补充前置知识说明
- 搜索各算法的教程资料
- 每个文件包含:概念、数学原理(简化)、Python 实现示例、练习题
❌ Not This — 用户提供模糊需求
用户输入:
帮我整理学习资料
错误做法:
- 直接猜测主题并生成材料(可能完全偏离用户需求)
- 不追问就生成通用内容
正确做法: 追问用户:你想学习哪个领域或课程?有没有大纲或知识点列表?你的当前水平是什么?
❌ Not This — 跳过搜索直接生成
用户输入:
/self-study-guide 量子力学基础大纲:...
错误做法:
- 仅依赖内置知识解释量子力学
- 用过于学术化的语言
- 不提供练习和检查理解环节
正确做法:
- 搜索量子力学的教学资料和通俗解释
- 用类比和日常场景解释抽象概念(如"薛定谔的猫"类比)
- 设计概念检查题而非数学计算题(基础阶段)
Notes
- 该 Skill 适用于任何学科:编程、数学、物理、语言学习等
- 对于编程/技术类主题,单元模板会自动包含代码示例和运行说明
- 对于文科/理论类主题,单元模板会调整为重点概念辨析和案例分析
- 生成的
study-materials/ 目录可以复制到其他设备或分享给他人
- 如果用户发现某个单元太难或太简单,可以通过再次调用 Skill 请求调整
- 学习材料的质量取决于用户输入大纲的详细程度 —— 输入越详细,生成的材料越精准
- WebSearch 搜索的参考资料在"扩展阅读"中标注,用户可自行前往查看原文