Help users improve sleep quality through hygiene practices, environment optimization, relaxation techniques, and sleep tracking guidance
Coding
sleep-optimizer
Try it基于循证睡眠医学和生活阶段的个性化睡眠改善计划生成器(Node.js 实现,含可视化图表)。用户输入 sleep-optimizer(或 /sleep-optimizer)主动调用,或询问任何睡眠相关问题(睡眠、失眠、入睡困难、作息调整、睡眠质量、熬夜恢复、期末/考研期间睡眠等)时自动触发:先按问题框架收集睡眠数据,再生成含可视化图表的个性化睡眠改善计划
What it does
基于循证睡眠医学和生活阶段的个性化睡眠改善计划生成器(Node.js 实现,含可视化图表)。用户输入 sleep-optimizer(或 /sleep-optimizer)主动调用,或询问任何睡眠相关问题(睡眠、失眠、入睡困难、作息调整、睡眠质量、熬夜恢复、期末/考研期间睡眠等)时自动触发:先按问题框架收集睡眠数据,再生成含可视化图表的个性化睡眠改善计划
The skill document
睡眠优化器 (Sleep Optimizer) - 生活阶段增强版
基于国内外高影响因子期刊的睡眠科学研究,结合个体生活阶段特征,分析睡眠模式并生成科学、可行的渐进式睡眠改善计划。
核心科学依据
基础睡眠科学
- 双过程模型 (Borbély, 1982, Human Neurobiology):Process S(睡眠稳态)+ Process C(昼夜节律)
- CBT-I一线治疗 (Irwin et al., 2006, JAMA; Morin et al., 2006, Sleep):认知行为疗法为慢性失眠首选
- 睡眠限制疗法 (Spielman et al., 1987):限制在床时间提升睡眠效率
- 午睡科学 (Mednick et al., 2008, Nature Neuroscience):10-20分钟午睡最佳
- 光照疗法 (Terman et al., 2001, Archives of General Psychiatry):晨间光照重置生物钟
生活阶段睡眠研究
- 大学生睡眠 (Lund et al., 2010, J Adolescent Health):大学生平均6.5-7小时,25%失眠
- 睡眠与记忆巩固 (Rasch & Born, 2013, Physiological Reviews, IF: 37.3):睡眠对记忆至关重要
- 运动与睡眠 (Kredlow et al., 2015, J Behavioral Medicine):规律运动提升睡眠质量
- 社交时差 (Wittmann et al., 2006, Chronobiology International):周末差异>2小时影响健康
- 压力与睡眠 (Kim & Dimsdale, 2007, Behavioral Sleep Medicine):慢性压力损害睡眠结构
可视化图表科学依据
- 睡眠效率≥85%:CBT-I 睡眠限制疗法核心目标 (Spielman et al., 1987; Morin et al., 2006, Sleep)
- 睡眠债:睡眠限制的累积认知损害 (Van Dongen et al., 2003, Sleep)
- 睡眠周期约90分钟、一夜4-5周期:NREM-REM 超日节律 (Carskadon & Dement, 2011, Principles and Practice of Sleep Medicine);深睡集中前半夜、REM 集中后半夜
- 固定起床时间/作息一致性:减少社交时差 (Wittmann et al., 2006)
- 午睡10-20分钟、避免>30分钟:防睡眠惯性 (Mednick et al., 2008, Nature Neuroscience)
触发条件
以下任一情况自动触发本技能(无需用户手动指定):
- 用户输入
sleep-optimizer或/sleep-optimizer - 用户询问睡眠相关问题:睡眠、失眠、入睡困难、早醒、睡眠质量差、作息紊乱、熬夜后恢复、倒时差、白天困倦、午睡等
- 用户需要以下帮助时:
- 改善睡眠质量
- 制定睡眠计划
- 分析睡眠问题
- 调整作息时间(考虑当前生活阶段)
- 考研/考公/期末复习/考试周等备考期间睡眠优化
- 大三/大四期间学业与未来规划压力下的睡眠管理
- 假期作息调整
- 体力/脑力训练期睡眠管理
触发后立即执行【工作流程】:先按「数据收集」问题框架逐项询问用户(一次问完,等待用户回复),收集完整后再运行脚本生成报告。
输入数据
必填(夜间睡眠)
- 上床时间:闭上眼睛准备入睡的时刻(HH:MM)
- 起床时间:早晨实际离开床的时刻(HH:MM)
选填(午睡)
- 午睡上床时间(HH:MM)
- 午睡起床时间(HH:MM)
选填(日间困倦)
- 困倦记录:次数、每次开始时间、持续时间、是否小睡、小睡时长
选填(生活阶段)
- 生活阶段(选择最符合的):
freshman- 大一生活(适应新环境,建立节律)sophomore- 大二生活(学业加重,平衡活动)junior- 大三生活(专业深入,未来规划)senior- 大四生活(毕业设计,求职升学)postgraduate_prep- 考研备考(高强度学习,记忆巩固关键)civil_service_prep- 考公备考(逻辑思维,考试压力)skill_training_physical- 技能培养-体力型(运动/舞蹈/体育,恢复需求)skill_training_mental- 技能培养-脑力型(编程/语言/乐器,认知负荷)vacation- 假期阶段(放松恢复,保持节律)final_review- 期末复习周(短期高压,临时调整)exam_week- 考试周(保持状态,配合考试)internship_work- 实习/工作(职场适应,通勤压力)
工作流程
1. 数据收集
询问用户(问题框架,全部问完等用户一次回复):
- 昨晚几点上床准备睡觉?(闭上眼睛的时刻)
- 今早几点起床?
- 有午睡吗?如果有,几点开始几点结束?
- 白天会感到困倦吗?几次?大概什么时间?持续多久?
- 困倦时有没有小睡?小睡了多久?
- 你目前处于什么生活阶段?(从以下 12 项中选最符合的一项)
(大一/大二/大三/大四/考研备考/考公备考/技能培养-体力型/技能培养-脑力型/假期/期末复习周/考试周/实习工作)
生活阶段与代码对应关系(用于脚本参数):
| 中文 | 代码 |
|------|------|
| 大一 | freshman |
| 大二 | sophomore |
| 大三 | junior |
| 大四 | senior |
| 考研备考 | postgraduate_prep |
| 考公备考 | civil_service_prep |
| 技能培养-体力型 | skill_training_physical |
| 技能培养-脑力型 | skill_training_mental |
| 假期 | vacation |
| 期末复习周 | final_review |
| 考试周 | exam_week |
| 实习/工作 | internship_work |
2. 生活阶段适配分析
根据选择的生活阶段,应用相应的睡眠参数:
| 生活阶段 | 推荐睡眠 | 午睡建议 | 特殊考虑 |
|---|---|---|---|
| 大一 | 7.5-8.5h | 15分钟 | 建立规律,避免社交时差 |
| 大二 | 7.0-8.0h | 15分钟 | 学业平衡,时间管理 |
| 大三 | 7.0-8.0h | 15分钟 | 专业深入,科研压力 |
| 大四 | 7.0-8.0h | 20分钟 | 毕业论文,求职面试 |
| 考研备考 | 7.0-7.5h | 20分钟 | 记忆巩固优先,避免<6h |
| 考公备考 | 7.0-7.5h | 15分钟 | 逻辑思维,模拟考试作息 |
| 技能-体力 | 8.0-9.0h | 30分钟 | 肌肉恢复,训练后小睡 |
| 技能-脑力 | 7.5-8.5h | 20分钟 | REM睡眠对程序记忆重要 |
| 假期 | 7.5-9.0h | 可选 | 保持节律,差异<2h |
| 期末复习 | 6.5-7.5h | 20分钟 | 短期调整,避免连续熬夜 |
| 考试周 | 7.0-8.0h | 15分钟 | 配合考试时间,保持警觉 |
| 实习/工作 | 7.0-8.0h | 15分钟 | 通勤适应,午休恢复 |
3. 指标计算(生活阶段适配)
- 在床时长 = 起床时间 - 上床时间
- 估算实际睡眠 = 在床时长 - 20分钟 × 85%
- 睡眠效率 = 实际睡眠 / 在床时长 × 100%(目标≥85%)
- 睡眠债务 = 生活阶段推荐时长 - 实际睡眠
- 日间功能评估:困倦频率、时机、补偿效果
4. 生成四个关键时间点(生活阶段优化)
| 时间点 | 确定原则 |
|---|---|
| 夜间上床时间 | 基于生活阶段推荐时长和固定起床时间倒推;高压阶段提前15分钟放松;体力型取上限 |
| 夜间起床时间 | 固定优先;高压阶段建议不早于06:30;根据通勤调整 |
| 午睡开始时间 | 13:00-15:00窗口;体力型可延长至30分钟;备考期20分钟最佳 |
| 午睡结束时间 | 根据阶段需求:常规10-20分钟,体力型可达30分钟,避免睡眠惯性 |
5. 制定8周渐进计划(阶段定制)
基础框架:
- 阶段一(第1-2周):稳定节律
- 阶段二(第3-4周):优化效率
- 阶段三(第5-8周):巩固维持
- 阶段四(持续):个性化优化
生活阶段定制:
- 考研/考公:增加"睡前记忆巩固复习"、"模拟考试作息同步"
- 大三/大四:增加"专业学习与未来规划平衡"、"论文/求职时间管理"
- 期末复习周:增加"短期睡眠银行策略"、"考前24小时作息恢复"
- 考试周:增加"考试日特殊起床时间"、"午间快速恢复"
- 体力型技能:增加"训练后冷却时间"、"监测肌肉恢复"
- 假期:增加"逐步调整回学习作息"、"避免社交时差>2小时"
- 实习/工作:增加"通勤时间计算"、"午休恢复策略"
6. 执行脚本生成报告
收集完用户数据后,将生活阶段代码与数据传入脚本执行:
node scripts/sleep_calculator.js \
--lifestyle <阶段代码> \
--bedtime HH:MM \
--wakeup HH:MM \
[--nap-start HH:MM] [--nap-end HH:MM] \
[--drowsiness '' 或 @文件路径] \
[--output 报告.md]
提示:Windows 命令行传 JSON 引号容易转义出错,
--drowsiness支持@文件路径写法(如--drowsiness @drowsiness.json),推荐在 Windows 下使用。注意 JSON 文件需为 UTF-8 无 BOM(PowerShell 的Set-Content -Encoding UTF8会加 BOM 导致解析失败)。
将脚本输出的报告整理后呈现给用户;若用户需要,可另存为 Markdown 文件。
注:脚本为 Node.js 实现(零第三方依赖,仅需 Node.js 内置模块),不再依赖 Python。 使用
--output 报告.md时,会同时生成同名报告.chart.svg可视化图表文件(可直接用浏览器/图片查看器打开)。
7. 输出报告
生成包含以下内容的完整报告:
- 当前睡眠评估(效率、债务、日间功能)
- 生活阶段分析(阶段特征、挑战、推荐参数、特定建议)
- 可视化图表(报告内嵌 Unicode 图表;
--output时另附 SVG 图表文件)- ① 睡眠效率条形图(目标≥85%参考线)
- ② 睡眠时长对比图(当前估算 vs 阶段推荐区间)
- ③ 睡眠窗口甘特图(当前 vs 优化后的上床-起床窗口)
- 8周执行节奏总览图
- 健康成人睡眠结构参考图(N1/N2/N3/REM 比例,典型值)
- 优化后的四个时间点
- 8周渐进改善计划(含阶段定制建议)
- 每日执行清单
- 睡眠卫生建议
- 就医指征
关键睡眠卫生规则(生活阶段适配)
通用规则
- 固定起床时间 > 固定上床时间
- 床只用于睡眠(刺激控制)
- 20分钟规则:无法入睡即离开床
- 限制在床时间:提升睡眠效率
- 晨间光照:重置昼夜节律
阶段特定规则
- 备考期:睡眠是记忆巩固的关键,避免牺牲睡眠换学习时间
- 体力型:训练后3小时内避免入睡,利用小睡加速恢复
- 假期:周末/工作日差异<2小时,开学前3-5天逐步调整
- 高压期:增加睡前放松时间15-20分钟,管理焦虑
注意事项
- 运行环境:仅需 Node.js ≥ 16(脚本零第三方依赖,全部使用内置模块)
- 如失眠持续>3个月,建议咨询睡眠专科
- 如怀疑睡眠呼吸暂停、不宁腿综合征,建议就医
- 抑郁/焦虑共病需同时治疗
- 本工具为自助干预,不能替代医疗建议
文件结构
sleep-optimizer/
SKILL.md # 技能主文件
scripts/
sleep_calculator.js # 睡眠计算核心脚本(Node.js,含生活阶段模块与可视化图表)
references/
sleep-science-references.md # 基础睡眠科学研究参考文献
lifestyle-sleep-references.md # 生活阶段睡眠研究参考文献
assets/
sleep-diary-template.md # 睡眠日记模板
使用示例
示例1:考研备考学生
用户:"我在准备考研,最近睡眠很差,帮我分析一下"
助手:
"我来帮你分析睡眠情况并制定改善计划。请告诉我:
1. 昨晚几点上床准备睡觉?
2. 今早几点起床?
3. 有午睡吗?
4. 白天会感到困倦吗?
5. 你目前处于考研备考阶段,对吗?"
[收集数据后,设置 lifestyle="postgraduate_prep",运行脚本生成报告]
示例2:期末复习周学生
用户:"马上期末复习周了,天天熬夜背不完,睡眠也乱,帮我看看"
助手:
"我来帮你制定期末复习周的睡眠方案。请告诉我:
1. 昨晚几点上床准备睡觉?
2. 今早几点起床?
3. 白天会困倦吗?几次?大概什么时间?
4. 有午睡吗?几点到几点?
5. 你目前处于期末复习周,对吗?"
[设置 lifestyle="final_review",运行:
node scripts/sleep_calculator.js --lifestyle final_review --bedtime 23:30 --wakeup 06:30 \
--nap-start 13:00 --nap-end 13:20,生成短期睡眠银行策略报告]
示例3:体育训练学生
用户:"我是体育生,训练后总是睡不好"
助手:
"我来帮你优化训练期的睡眠。请提供:
1. 昨晚几点上床?
2. 今早几点起床?
3. 训练通常在什么时间?强度如何?
4. 有午睡吗?
5. 白天困倦情况?"
[设置 lifestyle="skill_training_physical",生成体力型恢复方案]
参考文献
基础睡眠科学
详见 references/sleep-science-references.md
- Science, Nature Neuroscience, JAMA Psychiatry
- Sleep, Sleep Health, Current Biology
生活阶段睡眠研究
详见 references/lifestyle-sleep-references.md
- Journal of Adolescent Health, Physiological Reviews
- Behavioral Sleep Medicine, Chronobiology International
- Journal of Behavioral Medicine, Sports Medicine
版本: 2.3.0 | 更新: 新增可视化图表(效率条/时长对比/睡眠窗口甘特图/执行节奏/睡眠结构参考图 + SVG 图表文件),全部附科学依据
Related skills
Track sleep vs optimal, calculate accumulated sleep debt, and suggest evidence-based recovery schedules. Chronotype detection, quality-weighted sleep tracking, ASCII charts, and caffeine/alcohol impact monitoring.
Short setup for flexible, gentle sleep reminders
Identifies sleep stages including falling asleep, light sleep, deep sleep, and REM; monitors body movement, nighttime awakenings, and sleep apnea, suitable for sleep monitoring scenarios. | 睡眠质量分析技能,识别入睡、浅睡、深睡、快速眼动阶段,监测体动、夜间觉醒、睡眠呼吸暂停,适用于睡眠监测场景
Build a realistic evening wind-down plan with a ramp-down timeline, environment checklist, last stimulating action boundary, fallback version, and next-morni...
纯提示词驱动的技能。当用户提出的问题模糊、不完整或需要优化时, 帮助模型深度理解用户意图、澄清需求、并生成经过优化的高质量回答。