下载地址
https://api.skillhub.cn/api/v1/download?slug=%40user_375678f5%2Fstudy-planner-pro将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_375678f5/study-planner-pro。为用户制定个性化学习计划的专业技能。当用户需要:(1) 制定学习计划、备考计划,(2) 规划某项技能的学习路径,(3) 安排学习时间表,(4) 获取学习方法建议,(5) 生成可打卡追踪的学习表格,(6) 更新或调整已有学习计划,(7) 同步学习计划到日历,(8) 设置每日学习提醒,(9) 反馈学习进度,(10) 生成学习测试/小测验,(11) 查看薄弱点分析时使用。
触发关键词:学习计划、备考、学习路径、学习安排、每日学习、复习计划、更新计划、计划赶不上、同步日历、学习提醒、做个测试、检验效果、更新进度、薄弱点等。
阅读全文 (展开查看完整说明)
概述
学习计划制定器
场景判断
首先判断用户属于哪种场景:
- 新建计划:用户想制定新的学习计划 → 执行完整的七步流程
- 调整计划:用户提到"赶不上计划"、"进度落后"、"计划有变"、"更新计划"等 → 跳至 [调整已有计划](#调整已有计划)
- 同步日历:用户提到"同步到日历"、"加到日历"、"日历提醒"等 → 跳至 [日历同步与提醒](#日历同步与提醒)
- 进度反馈:用户提到"更新进度"、"我今天学了"、"学完了xxx"等 → 跳至 [进度反馈](#进度反馈)
- 学习测试:用户提到"做个测试"、"检验一下"、"出几道题"等 → 跳至 [学习测试](#学习测试)
新建计划:七步流程
原则:每次只问一个问题,等待回答后再继续。
第一步:明确学习目标
先从长期记忆中搜索用户过往的学习目标,如有记录则主动提及并询问是否继续同一目标。
若无记录,询问用户目标并支持多目标:
"您想学习或准备什么?可以是一个或多个目标,比如:
- 📚 备考某个考试(考研、英语四六级、PMP、雅思、托福、软考等)
- 💻 学习某项技术(Python、前端开发、数据分析、机器学习等)
- 🎯 掌握某个领域(产品管理、财务、设计等)
- 🌍 学习一门语言(日语、西班牙语、法语等)"
若用户给出多个目标,询问是否需要统一安排(兼顾多个目标的综合计划)还是分别制定(先聚焦一个目标)。
第二步:评估当前基础
在询问前,先搜索长期记忆中与该目标相关的学习历史(考试成绩、已学内容、技能水平等)。如有相关记录,直接引用:
"根据我的记录,您之前[xxx],目前情况还是这样吗?"
若无记录,针对目标类型询问:
- 备考类:上次考试分数(如有)、当前模拟题大概得分、薄弱科目
- 技术/编程类:是否有其他语言/框架基础、做过哪类项目
- 语言学习类:是否学过相关语系、词汇量大概范围
- 通用:零基础 / 了解基本概念 / 有一定经验 / 较为熟练
第三步:了解学习风格
询问用户的学习偏好(一句话带过,不要让用户感觉在做测评):
"您更倾向于哪种学习方式?
- 📖 先理论后实践:系统学完再动手
- 🔨 边做边学:直接上手项目,遇到问题再查
- 📝 刷题驱动:以真题/练习题为核心,倒推知识点"
根据风格调整计划结构:
- 先理论后实践:按章节顺序推进,实践安排在后期
- 边做边学:从一个小项目/真实任务切入,知识点按需引入
- 刷题驱动:以题目为主线,错题倒推薄弱点,周期性系统梳理
第四步:学习资料收集
根据用户的目标、基础和学习风格,使用网络搜索主动查找资料,搜索策略:
- 搜索词:
"[目标] 学习资料 推荐 [当前年份]"或"[目标] 备考资料 [基础水平]" - 筛选标准:优先选评价高、更新时间近、与用户基础和风格匹配的资源
- 推荐 2-4 个核心资源,标注免费/付费,并简要说明适合理由
示例推荐格式:
- 📗 [资源名称] – 免费/付费 – 适合[基础水平],[一句话说明为何推荐]
- 🎥 [视频课程] – 付费,约 xxx 元 – [平台名],[推荐理由]
同时询问:
"您是否已有自己的学习资料?可以上传给我(教材、讲义、视频课大纲、题库等),我会根据您的资料制定更精准的计划。"
若用户上传了自有资料,按 [references/material-parsing.md](references/material-parsing.md) 解析并利用资料内容制定计划。
若用户在对话中直接告知了已有资料(如"我已经买了某老师的网课"、"我有教材和题库"),无需再询问,直接记录资料清单,并在后续生成每日任务时将对应资料嵌入任务描述,格式:任务内容 【资料:xxx】。这样每日任务在打卡表中一目了然,无需用户另行查找。
第五步:时间规划
依次询问以下两个问题(分开问,不要一次问完):
- 截止时间:"您希望在什么时候达成这个目标?(例如:2 个月后、明年 6 月)"
- 每日投入:"您每天大概能投入多少时间用于学习?(例如:工作日 1 小时,周末 3 小时)"
收到回答后:
- 计算总可用学习时长(参考 [references/plan-generation.md](references/plan-generation.md) 中的可行性判断)
- 若时间明显不足,友好提示并给出两个调整方案:① 延长周期 ② 缩小目标范围
第六步:计划粒度与格式选择
询问计划细化程度,并给出推荐:
"您希望计划细化到哪个粒度?(根据您的情况,我推荐 [xxx])
- 🔍 精细型:细化到每天每个时间段(适合自律性弱、需要强执行)
- 📅 日计划:细化到每天学什么(适合大多数人)
- 📆 周计划:细化到每周目标(适合时间不固定、自律性较强)
- 🗓️ 月计划:只规划月度里程碑(适合长期学习、灵活安排)"
推荐依据:学习周期 < 1 月推荐精细型或日计划;1-3 月推荐日计划或周计划;> 3 月推荐周计划或月计划。
同时询问输出格式偏好:
"计划表格您更希望是 Markdown 格式(可直接粘贴到文档/笔记)还是 Excel 文件(方便长期追踪打卡,支持条件格式和下拉选项)?"
第七步:生成学习计划
综合以上所有信息生成完整计划,输出规则见 [references/plan-generation.md](references/plan-generation.md)。
生成计划后,执行以下两个操作:
① 写入长期记忆(调用长期记忆写入工具),保存:
- 学习目标
- 当前基础水平与学习风格
- 计划开始/截止日期、每日投入时长
- 所处学习阶段(新建/进行中)
- 下次检查点日期
② 约定 Checkpoint:在计划末尾告知用户:
"我已记录您的学习计划。建议在 [2周后/1个月后] 回来跟我更新一下进度,我会帮您评估是否需要调整计划节奏。您也可以随时告诉我'更新学习进度'来触发调整。"
调整已有计划
当用户提到进度落后、计划有变、想更新计划,或到达 Checkpoint 节点时,执行此流程:
1. 读取历史计划
从长期记忆中搜索用户之前制定的学习计划,确认:
- 原目标和截止日期
- 原每日投入时长和学习风格
- 当前应处于哪个阶段
2. 了解当前实际情况
询问:
"您目前实际完成了多少?比如:学到了哪个章节 / 完成了哪个阶段 / 大概完成了 xx%"
同时询问:
"是什么导致了进度的变化?(例如:工作变忙、生病、低估了难度等)"
3. 重新规划
根据实际情况生成调整后的计划:
① 判断是否为极端场景:若剩余天数 ≤ 7 天且进度落后超过 40%,切换为紧急冲刺模式,按 [references/plan-generation.md](references/plan-generation.md) 中"极端场景"策略输出高优先级考点清单,不再生成常规打卡表。
② 常规调整(非极端场景):
- 重新计算剩余可用时间
- 重新分配剩余学习内容
- 若需要缩减范围,给出明确建议(哪些内容可以精简或跳过)
- 保持格式与原计划一致(Markdown 或 Excel)
- 更新下次 Checkpoint 节点
调整完成后,更新长期记忆中的计划状态和新的 Checkpoint 日期。
输出格式规范
生成计划时,必须同时输出以下两部分:
Part 1:文字学习计划
包含:
- 目标确认与可行性分析
- 学习路径概述(推荐资料如何搭配学习风格使用)
- 阶段划分(含具体时间范围)
- 重点难点提示
- 学习方法建议(根据周期自动融入,规则见 [references/plan-generation.md](references/plan-generation.md))
Part 2:打卡追踪表格
- 若用户选择 Markdown:输出对应粒度的 Markdown 表格(格式见 [references/plan-generation.md](references/plan-generation.md))
- 若用户选择 Excel:运行
scripts/generate_tracker.py生成.xlsx文件并提供下载链接(用法见脚本注释)
日历同步与提醒
当用户希望将学习计划同步到系统日历,或设置每日提醒时,执行此流程。
1. 生成 .ics 日历文件
从长期记忆中读取当前学习计划信息(目标、日期范围、任务等),然后运行:
python scripts/generate_ical.py
--goal "学习目标"
--start "YYYY-MM-DD"
--end "YYYY-MM-DD"
--daily-hours 2
--study-time "20:00"
--stages "阶段名:开始日期:结束日期,..."
--tasks "YYYY-MM-DD|任务描述|时长,..."
--reminders 30
--output "学习计划_目标.ics"关键参数:
--study-time:询问用户的习惯学习时间(默认 20:00)--reminders:询问希望提前多少分钟收到提醒(建议 15-30 分钟)--tasks日期格式必须用YYYY-MM-DD(与 Excel 脚本的"4月1日"格式不同)
生成后提供文件下载链接,并附上导入说明:
"📅 日历文件已生成,下载后按以下方式导入:
- macOS / iOS:双击文件 → 自动弹出日历导入确认
- Google Calendar:设置 ⚙️ → 导入 → 选择此文件
- Outlook:文件 → 打开和导出 → 导入/导出 → 导入 iCalendar
- 小米/华为/Android:文件管理器中打开 .ics 文件"
2. 设置每日定时提醒
若用户希望每天收到学习提醒(在当前对话中),可使用 cron 工具创建定时任务:
⚠️ 使用限制说明(必须告知用户):
- 定时提醒依赖当前对话所在设备,设备休眠或网络断开时可能无法触发
- 提醒会在当前对话中以新消息形式出现,而非系统通知
- 推荐方案:优先使用
.ics日历文件导入系统日历,系统日历的提醒更可靠
若用户仍希望设置对话内提醒,询问:
- 每天提醒时间(如 20:00)
- 提醒内容偏好(仅提醒"该学习了" / 还是附带当天的学习任务)
然后使用 cron 工具创建每日定时任务,频率不低于每小时一次(即每天一次)。
进度反馈
当用户主动反馈学习进度时,执行此流程(轻量化,不要问太多问题)。
1. 记录今日进度
用户说"我今天学了 xxx"或"完成了 xxx"时:
- 简短肯定用户:"👍 好的,已记录!"
- 写入长期记忆:
[进度更新 YYYY-MM-DD] 目标: xxx | 今日完成: xxx - 判断是否偏离原计划:
- 正常:鼓励继续,提示明天的任务
- 超额完成:肯定并提示可适当休息
- 未完成:询问原因,判断是否需要调整计划
2. 阶段进度汇总(Checkpoint 时)
到达 Checkpoint 节点时,从长期记忆中读取近期进度记录,汇总:
"过去 [X 周] 的学习情况:
- ✅ 完成天数:X 天 / X 天
- 📈 完成率:XX%
- 📌 当前进度:[完成了哪些内容]
- ⚠️ 落后进度:[落后了哪些内容](如有)"
然后询问是否需要调整计划,进入 [调整已有计划](#调整已有计划) 流程。
3. 适时建议测试(可选)
当用户反馈完成了某个阶段或重要章节时,可以轻轻建议做个小测试,但用户说"不用了"或"不想测"就立刻停止,不要反复追问:
"您已完成 [xxx],要不要出几道题检验一下?(也可以直接继续学习)"
学习测试
当用户希望检验学习效果时,执行此流程。详细规范见 [references/quiz-design.md](references/quiz-design.md)。
1. 确认测试范围
从长期记忆中获取当前学习阶段和最近学习的内容,询问(可选,有记录时直接用):
- 本次测试考察哪些知识点?
- 希望多少道题?(推荐 5-15 题)
- 难度偏好?(入门 / 中等 / 进阶)
2. 生成测试题目
python scripts/generate_quiz.py
--goal "学习目标"
--stage "当前阶段"
--topics "知识点1,知识点2"
--level 2
--count 10
--date "YYYY-MM-DD"
--weakness "薄弱点1,薄弱点2"
--output "quiz_目标_日期.md"脚本生成题目框架模板后,AI 必须读取模板并填充具体题目内容,再展示给用户。不要直接把空白模板给用户。
3. 收集测试结果
测试完成后,引导用户反馈:
"做完了吗?告诉我得分,以及哪些题没把握——我帮你记录下来,下次出题时会重点加强这些地方。"
4. 分析并更新记忆
根据测试结果:
- 分析薄弱点(见 [references/quiz-design.md](references/quiz-design.md) 的分析规则)
- 写入长期记忆:测试日期、得分、薄弱知识点
- 若薄弱点明显,主动询问是否立即调整学习计划,在计划中加入针对性复习