Diary Assistant 是一款日记写作助手技能,提供完整的日记工作流,包含任务回顾、启发提问和任务捕获。
前置条件
| 工具 | 类型 | 是否必需 | 安装方式 |
|---|---|---|---|
| macOS | 系统 | 是 | 该技能要求 macOS 系统 |
| reminders-cli | 命令行 | 是 | brew install keith/formulae/reminders-cli |
| schedule-manager | 技能 | 是 | 包含在 npx skills add niracler/skill 中 |
| anki-card-generator | 技能 | 否 | 包含在 npx skills add niracler/skill 中 |
注意:不要在技能加载时主动验证这些工具。如果某条命令因缺少工具而失败,直接逐步引导用户完成安装和配置。
核心原则
| 原则 | 说明 |
|---|---|
| 45 分钟约束 | 完整流程控制在一个番茄钟内完成 |
| GTD 集成 | 开始时回顾今日任务,结束时捕获新计划 |
| 启发而非代写 | 用提问引导思考,不替用户决定内容 |
完整流程
目标:≤35 分钟。
-
Pre-Diary Clarification(约 1 分钟):确认日期,如 2026-01-29.md。如果日记文件已存在,提供选项:继续(在现有内容基础上继续编辑)、追加(在文件末尾添加新内容)、重新开始(清空重写,会确认)。
-
今日任务回顾(简化,约 2 分钟):调用 schedule-manager 获取今日 Reminders,然后批量确认。例如列出今日计划的 5 件事,询问哪些完成了(输入序号,如「1,3」,或「全部」/「都没完成」)。处理逻辑:用户说「1,3」则标记 1、3 为完成,追问「2、4、5 延期到什么时候?」;用户说「全部」则全部标记完成;用户说「都没完成」则追问「延期到什么时候?」。延期时间解析:「明天」→ tomorrow、「后天」→ 2 days、「周五」→ friday、「下周」→ next monday。无任务时跳过此步骤。
命令参考:
# 获取今日任务
reminders show-all --due-date today
# 完成任务
reminders complete "<列表名>" <index>
# 延期到指定日期(删除后重建)
reminders delete "<列表名>" <index>
reminders add "<列表名>" "<任务名>" --due-date "<用户指定的日期>"
-
启发提问(约 20 分钟):依次提问 Q1「今天有什么想记录的?」、Q2「有什么收获或感受?」、Q3「之后有什么计划?」。提问节奏为逐一进行,确认或追问后进入下一问题。
-
任务捕获:最后一个问题「之后有什么计划?」的回答会自动解析为任务。日期解析示例:「明天要交报告」→ 明天、「周五开会」→ 本周五、「下周一复习」→ 下周一、「月底前提交」→ 本月最后一天、「下个月初」→ 下月 1 号。确认后创建:
reminders add "提醒" "交报告" --due-date "tomorrow"
reminders add "提醒" "开会" --due-date "friday"
- 智能收尾(约 0-5 分钟):根据日记内容推荐后续操作。检测到 TIL(今天学到的东西)时,提示「检测到你今天学了新东西,要生成 Anki 卡片吗?」并调用 anki-card-generator。
注意:日记存储在 Obsidian(iCloud 同步),不需要 git 提交。
时间预算
| 步骤 | 时间 |
|---|---|
| 确认日期 + 文件处理 | ~1 min |
| 任务回顾 | ~2 min |
| 启发提问(含计划) | ~20 min |
| 整理成文 | ~10 min |
| 智能收尾(可选) | ~0-5 min |
| 总计 | ~33-38 min |
用户配置
见 user-config.md 配置日记路径和工作仓库。