.skills/study/SKILL.md
开始一个专注的学习会话,记录时间和进度。Use when user wants to start a learning session.
npx skillsauth add atovk/masteranything studyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
请使用 TodoWrite 工具创建以下任务列表,然后逐步执行:
验证检查:
# 检查学习项目录是否存在
if [ ! -d "[学习项名称]" ]; then
echo "错误:学习项不存在"
echo "请使用 /new-learning [学习项名称] 创建新的学习项"
# 提供选项:
# 1. 列出现有学习项
# 2. 创建新学习项
# 3. 取消操作
fi
读取状态文件:
[学习项名称]/progress.md - 了解当前进度[学习项名称]/README.md - 了解当前阶段和路线图[学习项名称]/notes/ 目录 - 查看已有笔记显示当前状态:
确认学习项:[学习项名称]
当前阶段: Novice
已学习:X 小时
已有笔记:X 篇
完成度:X%
使用 AskUserQuestion 询问用户:
问题 1: 本次计划学习多长时间?
问题 2: 想要学习哪个具体主题?
示例对话:
用户: /study regular-expressions
AI: 确认学习项:Regular Expressions
当前阶段: Novice
已学习:0.5 小时
已有笔记:1 篇
基于你的学习路线图,接下来可以学习:
1. 字符类:[abc], [^abc], \d, \w, \s (推荐)
2. 量词:*, +, ?, {n}, {n,m}
3. 锚点:^, $, \b, \B
4. 自定义主题
你想学习哪个主题?
显示今日学习目标:
今日学习目标
主题:字符类
时长:30 分钟
目标:掌握 \d, \w, \s 和字符集合的用法
提示:
- 随时可以提问:"什么是...?"
- 要求解释:"用简单话说明..."
- 记录笔记:"记下来"
- 测试理解:"考考我"
根据用户需求,提供不同的学习模式:
触发条件:
执行步骤:
示例对话:
用户: 什么是字符类?
AI: 好问题!让我用简单的方式解释...
字符类就像是给字符"贴标签"的方式。
想象你在一个超市里:
- \d 就像是"数字区"的标签(只匹配 0-9)
- \w 就像是"字母区"的标签(匹配字母和数字)
- \s 就像是"空白区"的标签(匹配空格、制表符等)
具体例子:
- \d+ 匹配 "123" 但不匹配 "abc"
- \w+ 匹配 "hello123" 但不匹配 "hello world"
检验一下:
如果你想匹配一个电话号码(如:123-456-7890),
你会使用什么模式?
[等待用户回答...]
质量检查:
触发条件:
执行步骤:
_templates/CORNELL_NOTE.md)notes/ 目录康奈尔笔记格式:
# 康奈尔笔记 - [主题名称]
| 线索栏(Cue Column) | 笔记栏(Note-taking Column) |
| -------------------- | ---------------------------- |
| 关键词/问题 | 详细笔记内容 |
| 什么是 X? | X 是指...具体解释... |
| X 的应用场景? | 1. 场景一 2. 场景二 |
## 总结区(Summary)
用 2-3 句话总结本页核心内容...
文件命名规则:
[序号]-[主题-简述].md
示例:
01-character-classes.md
02-quantifiers.md
03-email-matching.md
避免命名冲突:
# 检查文件是否已存在
if [ -f "notes/01-character-classes.md" ]; then
# 询问用户:
# 1. 追加到现有笔记
# 2. 创建新版本(01-character-classes-v2.md)
# 3. 覆盖现有笔记
# 4. 取消操作
fi
注意:优先使用上方的康奈尔笔记格式。对于简短的知识点记录,也可以使用简化格式(概念+示例+要点)。 完整模板参考:
_templates/CORNELL_NOTE.md
示例对话:
用户: 记录这个
AI: 好的!让我整理一下我们刚才讨论的字符类内容...
[生成笔记内容]
笔记已保存到:regular-expressions/notes/02-character-classes.md
笔记包含:
- 概念解释(使用超市类比)
- 5 个代码示例
- 3 个关键要点
- 2 个练习题
需要查看或修改笔记吗?
触发条件:
执行步骤:
projects/ 目录练习题设计原则:
项目保存结构:
projects/
├── practice-01-[主题]/
│ ├── README.md(任务描述)
│ ├── solution.[ext](解决方案)
│ └── notes.md(学习笔记)
示例对话:
用户: 练习一下
AI: 好的!让我们来实践一下字符类的使用...
练习任务:匹配电话号码
目标:写一个正则表达式,匹配以下格式的电话号码:
- 123-456-7890
- (123) 456-7890
- 123.456.7890
提示:
1. 先匹配数字部分
2. 再考虑分隔符
3. 测试你的模式
[等待用户尝试...]
用户: 我写了 \d{3}-\d{3}-\d{4}
AI: 很好!这个模式可以匹配第一种格式
让我测试一下:
123-456-7890 匹配成功
(123) 456-7890 不匹配
123.456.7890 不匹配
改进建议:
要匹配所有三种格式,可以考虑:
1. 使用选择符 |
2. 使用字符类匹配分隔符
想要继续尝试吗?
[练习结束后...]
练习已保存到:projects/practice-01-phone-matching/
- README.md(任务描述)
- solution.txt(你的解决方案)
- notes.md(反馈和建议)
想要再做一个练习吗?
触发条件:
执行步骤:
问题设计原则:
示例对话:
用户: 测试我
AI: 好的!让我检验一下你对字符类的理解...
知识检验:字符类
问题 1(简单):
\d 匹配什么内容?
A) 任何字母
B) 任何数字
C) 任何空白字符
[等待用户回答...]
用户: B
AI: 正确!\d 匹配任何数字(0-9)
问题 2(中等):
要匹配 "a1b2c3" 中的所有字母和数字,
应该用什么模式?
[等待用户回答...]
用户: \w+
AI: 很好!\w+ 会匹配 "a1b2c3"
不过,如果你想分别匹配每个字符,
应该使用 \w 而不是 \w+。
问题 3(较难):
如何匹配一个不包含数字的单词?
提示:可以使用否定字符类
[等待用户回答...]
用户: [^\d]+
AI: 非常好![^\d]+ 会匹配不包含数字的字符序列
检验结果:3/3 正确!
你对字符类的理解很扎实!
下一步建议:
- 尝试更复杂的模式
- 结合量词使用
- 练习实际应用场景
触发条件:
总结内容:
学习会话总结
本次学习内容:
1. [概念 1] - [简要描述]
2. [概念 2] - [简要描述]
3. [概念 3] - [简要描述]
完成的学习任务:
- [ ] 任务 1
- [] 任务 2
- [] 任务 3
创建的笔记:
- notes/02-character-classes.md
完成的练习:
- projects/practice-01-phone-matching/
学习时长:X 分钟
从本次学习内容中提取关键知识点,生成闪卡:
[学习项名称]/flashcards/ 目录_templates/FLASHCARD_DECK.md闪卡格式:
### 卡片 X
**正面(问题):**
[关于核心概念的问题]
**反面(答案):**
[简洁准确的答案]
**难度:** 基础/中等/困难
**标签:** [相关主题标签]
示例:
正面:\d 在正则表达式中匹配什么?
反面:匹配任何单个数字字符(0-9),等价于 [0-9]
将本次学习内容添加到间隔重复追踪:
[学习项名称]/reviews/spaced-repetition.md复习时间表(自动计算,基于艾宾浩斯遗忘曲线):
学习日期:YYYY-MM-DD
第 1 次复习(R1):+1 天 -> YYYY-MM-DD
第 2 次复习(R2):+3 天 -> YYYY-MM-DD
第 3 次复习(R3):+7 天 -> YYYY-MM-DD
第 4 次复习(R4):+14 天 -> YYYY-MM-DD
第 5 次复习(R5):+30 天 -> YYYY-MM-DD
第 6 次复习(R6):+90 天 -> YYYY-MM-DD
注意:此时间表与
/daily-reviewskill 和_templates/SPACED_REPETITION.md保持一致。
更新 progress.md:
进度日志格式:
### YYYY-MM-DD
**学习时长**: X 分钟
**完成内容**:
- [任务 1]
- [任务 2]
- [任务 3]
**关键收获**:
- [收获 1]
- [收获 2]
**待解决问题**:
- [问题 1]
**下次计划**:
- [下次学习内容]
阶段升级检查:
# 检查当前阶段里程碑是否全部完成
if [ 当前阶段所有任务完成 ]; then
echo " 恭喜!你已完成 [阶段名称] 阶段!"
echo "是否升级到 [下一阶段]?"
# 使用 AskUserQuestion 询问
fi
推荐下次学习主题:
下次学习建议
基于你的进度,建议下次学习:
1. [主题 1] - [原因]
2. [主题 2] - [原因]
待解决的问题:
- [问题 1]
- [问题 2]
学习资源:
- [资源 1](链接)
- [资源 2](链接)
庆祝与鼓励:
太棒了!你今天取得了不错的进步!
进度更新:
- 学习时长:0.5h → 1.0h (+0.5h)
- 完成度:5% → 10% (+5%)
- 距离下一阶段还有:90%
保持这个节奏,你很快就能完成 Novice 阶段!
如果会话意外中断:
.session/[学习项名称]-session.json会话状态文件格式:
{
"learning_item": "regular-expressions",
"session_start": "2026-02-02T18:00:00",
"planned_duration": 30,
"topic": "character-classes",
"notes_created": ["notes/02-character-classes.md"],
"exercises_completed": ["projects/practice-01-phone-matching/"],
"interrupted": true
}
| 错误情况 | 处理方式 | |---------|---------| | 学习项目录不存在 | 提示创建新学习项或列出现有项 | | progress.md 文件损坏 | 备份损坏文件,创建新的 progress.md | | 笔记文件名冲突 | 提供选项:追加、新版本、覆盖、取消 | | 无法保存文件 | 检查权限、磁盘空间,提供详细错误信息 | | 预定时间到达 | 询问用户是否延长学习时间或结束会话 |
用户: /study regular-expressions
AI: 确认学习项:Regular Expressions
当前阶段: Novice
已学习:0.5 小时
已有笔记:1 篇
基于你的学习路线图,接下来可以学习:
1. 字符类:[abc], [^abc], \d, \w, \s (推荐)
2. 量词:*, +, ?, {n}, {n,m}
3. 锚点:^, $, \b, \B
4. 自定义主题
[AskUserQuestion...]
用户: 选 1,计划学习 30 分钟
AI: 今日学习目标
主题:字符类
时长:30 分钟
目标:掌握 \d, \w, \s 和字符集合的用法
[开始概念解释...]
用户: 什么是 \d?
AI: [使用费曼技巧解释...]
用户: 记录这个
AI: 笔记已保存到:notes/02-character-classes.md
用户: 练习一下
AI: [提供练习任务...]
用户: [完成练习]
AI: 练习已保存到:projects/practice-01-phone-matching/
用户: /end-study
AI: 学习会话总结
本次学习内容:
1. 字符类基础概念
2. \d, \w, \s 的用法
3. 字符集合 [abc] 和否定 [^abc]
学习时长:30 分钟
总进度:0.5h → 1.0h (+0.5h)
[更新 progress.md...]
下次学习建议:
1. 量词:*, +, ? (这是下一个主题)
2. 复习字符类(巩固基础)
继续保持!
research
MasterAnything 学习系统核心技能。当用户讨论系统化学习、创建学习计划、 费曼技巧学习、康奈尔笔记法、艾宾浩斯间隔重复、闪卡记忆、学习进度管理、 知识管理时自动激活。触发词:"学习"、"复习"、"笔记"、"进度"、"费曼"、 "康奈尔"、"闪卡"、"间隔重复"、"master"、"learning"、"study"、"review"。
development
--- name: review-learning description: Use when user requests learning progress review, assessment, or evaluation of any learning item in MasterAnything framework. Triggers: "review progress", "how am I doing", "assess my learning", "check my progress", "am I on track". --- # Review Learning Progress ## Overview Systematically evaluate learning progress against defined goals and milestones, providing actionable insights and updating progress records. **Core principle:** A review must compare
tools
创建新的学习项目并初始化完整的学习目录结构。Use when user wants to start learning a new topic.
data-ai
--- name: daily-review description: 基于艾宾浩斯遗忘曲线的每日间隔重复复习系统。Use when user wants to do daily review, spaced repetition review, or asks "what should I review today". Triggers: "daily review", "今日复习", "复习", "什么需要复习", "review today", "spaced repetition". --- # 每日复习 (Daily Review) - 艾宾浩斯间隔重复 ## 概述 基于艾宾浩斯遗忘曲线,自动检查今日需要复习的内容,引导用户进行主动回忆练习,并更新复习追踪记录。 ## 复习时间表标准 | 轮次 | 间隔 | 记忆保持率目标 | |------|------|-------------| | R1 | 学习后1天 | 恢复到90% | | R2 | 学习后3天 | 恢复到90% | | R3 | 学习后7天 | 巩固到85% | | R4 | 学习后14天 | 巩固到