AgentSkillsCN

diary-assistant

(仅限macOS,需搭配schedule-manager使用)当用户想要撰写日记或每日记录时,可选用此技能。触发关键词包括:“帮我写日记”、“记录今天”、“写日记”、“今天的日记”。该技能可与“提醒事项”集成,助力任务回顾与计划制定。

SKILL.md
--- frontmatter
name: diary-assistant
description: (macOS, requires schedule-manager) Use when user wants to write diary entries or daily logs. Triggers include「帮我写日记」「记录今天」「写日记」「今天的日记」. Integrates with Reminders for task review and planning.

Diary Assistant

日记写作助手,提供完整的日记工作流,包含任务回顾、Work Log 自动化、启发提问和任务捕获。

Prerequisites

ToolTypeRequiredInstall
macOSsystemYesThis skill requires macOS
reminders-clicliYesbrew install keith/formulae/reminders-cli
schedule-managerskillYesIncluded in npx skills add niracler/skill
worklogskillNoIncluded in npx skills add niracler/skill
anki-card-generatorskillNoIncluded in npx skills add niracler/skill

Do NOT proactively verify these tools on skill load. If a command fails due to a missing tool, directly guide the user through installation and configuration step by step.

核心原则

原则说明
45 分钟约束完整流程控制在一个番茄钟内完成
GTD 集成开始时回顾今日任务,结束时捕获新计划
启发而非代写用提问引导思考,不替用户决定内容
工作日必须 Work Log周一至周五自动获取,不询问

完整流程

text
┌─────────────────────────────────────────────────────────────────────┐
│          diary-assistant 完整流程(目标 ≤45min)                     │
└─────────────────────────────────────────────────────────────────────┘

  ┌──────────────┐
  │ 用户触发日记  │
  └──────┬───────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 1. Pre-Diary Clarification  (~1min) │
  │    确认日期:2026-01-29.md         │
  └──────┬─────────────────────────────┘
         │
         ▼
    ┌────┴──────────┐
    │ 日记文件已存在? │
    └────┬──────────┘
      是 │         │ 否
         ▼         │
  ┌─────────────┐  │
  │ 选择模式:   │  │
  │ 继续/追加/  │  │
  │ 重新开始    │  │
  └──────┬──────┘  │
         └────┬────┘
              ▼
  ┌─────────────────────────────────────────────────────────────┐
  │ 2. 并行获取数据(subagent)                    (~2-3min)    │
  │                                                            │
  │    ┌─ Reminders (今日任务)                                 │
  │    └─ subagent: worklog skill (daily, 仅工作日)            │
  │                                                            │
  └──────┬────────────────────────────────────────────────────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 3. 今日任务回顾(简化)    (~2min)   │
  │                                    │
  │    「今日计划 5 件事:              │
  │     1.写文档 2.修bug 3.开会...」    │
  │    「哪些完成了?输入序号」          │
  │    「未完成的延期到什么时候?」       │
  └──────┬─────────────────────────────┘
         │
         ▼
    ┌────┴────┐
    │ 是工作日?│
    └────┬────┘
     是  │      │ 否
         ▼      │
  ┌──────────┐  │
  │ Work Log │  │  整理 subagent 获取的数据
  │ 云效+GH  │  │
  └────┬─────┘  │
       └───┬────┘
           ▼
  ┌────────────────────────────────────┐
  │ 3. 启发提问(适应性)    (~20-25min) │
  │                                    │
  │    工作日:                         │
  │    Q1「工作之外还有什么想记录的?」  │
  │    Q2「之后有什么计划?」           │
  │                                    │
  │    周末:                           │
  │    Q1「今天做了什么?」             │
  │    Q2「有什么收获或感受?」         │
  │    Q3「之后有什么计划?」           │
  │                                    │
  │    → 计划直接解析为 Reminders       │
  └──────┬─────────────────────────────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 4. 整理成文              (~10min)   │
  └──────┬─────────────────────────────┘
         │
         ▼
  ┌────────────────────────────────────┐
  │ 5. 智能收尾              (~0-5min)  │
  │    检测到 TIL → 「要生成 Anki 吗?」│
  └──────┬─────────────────────────────┘
         │
         ▼
      ┌──────┐
      │ 完成  │  总计 ~35-45min
      └──────┘

1. Pre-Diary Clarification

开始前确认日期和文件:

text
Claude: 「今天的日记是 2026-01-29.md 吗?」
用户: 「是」/ 「不是,是昨天的」

文件已存在处理

如果文件已存在,提供选项:

选项说明
继续在现有内容基础上继续编辑
追加在文件末尾添加新内容
重新开始清空重写(会确认)

2. 今日任务回顾(简化版)

调用 schedule-manager 获取今日 Reminders,然后批量确认:

text
今日计划的 5 件事:
1. 写文档
2. 修 bug
3. 开会
4. 回复邮件
5. 复习英语

哪些完成了?(输入序号,如「1,3」,或「全部」/「都没完成」)

处理逻辑:

  • 用户说「1,3」→ 标记 1、3 为完成,追问「2、4、5 延期到什么时候?」
  • 用户说「全部」→ 全部标记完成
  • 用户说「都没完成」→ 追问「延期到什么时候?」

延期时间解析:

  • 「明天」→ tomorrow
  • 「后天」→ 2 days
  • 「周五」→ friday
  • 「下周」→ next monday

无任务时跳过此步骤。

命令参考

bash
# 获取今日任务
reminders show-all --due-date today

# 完成任务
reminders complete "<列表名>" <index>

# 延期到指定日期(删除后重建)
reminders delete "<列表名>" <index>
reminders add "<列表名>" "<任务名>" --due-date "<用户指定的日期>"

3. Work Log 自动化

工作日(周一至周五)自动执行,不询问。周末跳过,直接进入启发提问。

调用 worklog skill(daily 模式)获取当日工作回顾,将输出直接嵌入日记的 Work Log 部分。

在步骤 2 中已通过 subagent 并行启动 worklog skill,此处使用其结果。

worklog skill 会自动整合本地 git 统计、GitHub 和云效数据,输出结构化 Markdown(概览 + 按项目明细 + Bug 跟踪)。

如果 worklog skill 不可用,可手动回顾当天的工作内容。

4. 启发提问(适应性)

根据工作日/周末问不同的问题:

工作日(Work Log 已记录工作内容)

顺序问题
Q1「工作之外,今天还有什么想记录的?」
Q2「之后有什么计划?」

周末(无 Work Log)

顺序问题
Q1「今天做了什么?」
Q2「有什么收获或感受?」
Q3「之后有什么计划?」

提问节奏

text
Claude: 「工作之外,今天还有什么想记录的?」
用户: [回答]
Claude: [确认/追问] → 「好的,下一个问题:之后有什么计划?」

5. 任务捕获

最后一个问题「之后有什么计划?」的回答会自动解析为任务:

日期解析示例

用户输入解析结果
「明天要交报告」明天
「周五开会」本周五
「下周一复习」下周一
「月底前提交」本月最后一天
「下个月初」下月 1 号

确认后创建

text
Claude: 「检测到以下计划,确认创建到 Reminders 吗?」
  - 明天:交报告
  - 周五:开会

用户: 「好」

Claude: [调用 schedule-manager 创建]
bash
reminders add "提醒" "交报告" --due-date "tomorrow"
reminders add "提醒" "开会" --due-date "friday"

6. 智能收尾

根据日记内容推荐后续操作:

检测内容推荐操作
TIL(今天学到的东西)「检测到你今天学了新东西,要生成 Anki 卡片吗?」→ 调用 anki-card-generator

注意: 日记存储在 Obsidian(iCloud 同步),不需要 git 提交。

时间预算

步骤时间
确认日期 + 文件处理~1 min
任务回顾(简化)~2 min
Work Log(自动)~2-3 min
启发提问(含计划)~20-25 min
整理成文~10 min
智能收尾(可选)~0-5 min
总计~35-45 min

用户配置

user-config.md 配置日记路径和工作仓库。