name: 智能复习路由器 description: 智能复习路由器。检测上下文(早晨、星期日、月末)并启动合适的复习工作流。随时使用以获得正确的复习时间。 allowed-tools: Read, Write, Edit, Glob, Grep, Bash, TaskCreate, TaskUpdate, TaskList, TaskGet model: sonnet user-invocable: true
复习技能
智能路由器,检测上下文并启动合适的复习工作流。
用法
/review # 自动检测基于时间/上下文的正确复习
/review daily # 强制日常复习
/review weekly # 强制周度复习
/review monthly # 强制月度复习
或简单地说:“帮助我复习” — 然后正确的工作流开始。
自动检测逻辑
当没有参数调用时,使用以下规则检测上下文:
1. 检查一天中的时间
HOUR=$(date +%H)
- 中午前 (< 12): 早晨日常 — 委托给
/daily早晨工作流 - 下午5点后 (>= 17): 晚间关闭 — 委托给
/daily晚间工作流 - 中午 (12-17): 中午签到 — 委托给
/daily中午工作流
2. 检查一周中的天
DAY_OF_WEEK=$(date +%u) # 1=星期一, 7=星期日
- 星期日 (7) 或 星期一 (1): 周度复习 — 委托给
/weekly- 覆盖时间检测
- 在继续前询问:“准备好进行您的周度复习了吗?”
3. 检查一个月中的天
DAY_OF_MONTH=$(date +%d)
DAYS_IN_MONTH=$(date -v+1m -v1d -v-1d +%d 2>/dev/null || date -d "$(date +%Y-%m-01) +1 month -1 day" +%d)
-
月末最后3天 (DAY_OF_MONTH >= DAYS_IN_MONTH - 2): 月度复习 — 委托给
/monthly- 覆盖时间检测和周度检测
- 在继续前询问:“月末 — 准备好进行您的月度复习了吗?”
-
月初第一天 (DAY_OF_MONTH == 1): 也建议月度复习
- “这是本月的第一天。想为上月进行月度复习吗?”
4. 检查陈旧性
在路由前,检查过期的复习:
# 读取周度复习文件的最后日期
WEEKLY_REVIEW="Goals/3. Weekly Review.md"
# 如果最后一次周度复习 > 7 天前,建议周度复习,无论天
- 周度复习过期 (>7 天): 建议周度复习
- “您的最后一次周度复习是 N 天前。想赶上吗?”
- 如果用户说不,则回落到时间检测
路由行为
检测上下文后:
- 告诉用户检测到什么:“这是星期日晚上 — 启动您的周度复习。”
- 委托给合适技能的的工作流
- 委托的技能从那里处理一切
委托
这个技能不重复 /daily、/weekly 或 /monthly 的逻辑。它:
- 检测上下文
- 通知用户
- 遵循目标技能的 SKILL.md 中的指令
显式覆盖
如果用户指定类型 (/review weekly),完全跳过自动检测并直接进入该复习类型。
检测输出
### 复习路由器
**时间:** 7:15 AM (早晨)
**天:** 星期日
**月天:** 15th
**检测到:** 周度复习 (星期日覆盖)
**最后一次周度复习:** 3 天前 (未过期)
启动周度复习...
边缘情况
- 多个触发器 (例如,月末星期日): 月度优先于周度
- 没有日常笔记存在: 先创建一个,然后继续复习
- 用户对建议说 “不”: 回落到下一个检测级别
- 显式参数覆盖一切:
/review monthly即使在星期二早晨也运行月度复习
集成
与以下一起工作:
/daily— 早晨、中午和晚间日常/weekly— 完整周度复习过程/monthly— 月度复习和规划- 会话初始化钩 — 陈旧性数据已计算