| name | daily-digest |
| description | 每天早上 7 点(或手动触发)汇总主人前一天的活动产出 — 读取 Claude Code/Codex 对话、邮件、日历、推特书签、微信对话、本地新增文件,按统一 frontmatter 格式写入 iCloud 中的 Obsidian vault,并合成一篇日报。Use when user types /daily-digest, asks for daily summary, or when launchd triggers the skill. Designed to be reusable — each user customizes via `profile.md` and `tools-and-sources.md`. |
Daily Digest — 个人信息中枢
⚠️ 本模板基于以下默认环境:
- macOS(依赖 launchd 定时、AppleScript、Mail.app、Calendar.app)
- iCloud Drive(Obsidian vault 存储位置)
- 微信 CLI(用于聊天采集和人物档案)
- 推特 CLI(用于书签采集)
不在此环境的用户自行替换对应模块:Linux/Windows 改用 cron / 任务计划程序;不用 iCloud 改本地路径或 Git 同步;没有微信/推特 CLI 就在 tools-and-sources.md 里关掉对应数据源即可。整套框架的设计是可裁剪的,关任何一个数据源都不影响其他源运行。
这是一个思路框架,不是固定流程。每个人按自己的工具和习惯改 profile.md 和 tools-and-sources.md 即可。
总思路
采集 → 摘要 → 归档 → 合成日报 → 通知
四层各自可替换:
| 层 | 干什么 | 可替换点 |
|---|
| 采集 | 拉取昨天的原始数据 | 数据源(见 tools-and-sources.md) |
| 摘要 | 压缩成一句话/一段话 | 摘要风格(profile.md) |
| 归档 | 按 frontmatter 写入 vault | 目录结构(profile.md) |
| 日报 | 综合产物 | 模板(profile.md) |
何时触发
- launchd 每日 07:00(macOS)— 主要触发点(夜间不消耗 token,早上 12 点 quota 已重置)
- 用户手动
/daily-digest — 补跑或调试用
- 用户说"帮我跑一下日报"等同义请求
核心规则(所有实现必须遵守)
- 统一 frontmatter — 所有写入 vault 的
.md 文件必须带 frontmatter,规范见 format-spec.md
- 同日重跑追加,不覆盖 — 7 点跑过后用户 10 点又触发,则在原文件下加 "## 晚间补充" 区块,不动已有内容
- 失败容忍 — 任一数据源失败(如微信 CLI 挂了),日报里标注 "⚠️ 微信数据本日不可用" 并继续,不要中断整个流程
- 隐私过滤 — 邮件/对话内容里的密码、验证码、token 不得写入 vault;账户名、金额可以写
- AI 对话颗粒度 — Claude Code / Codex 按 一个 project 一条摘要,不合并不拆分
- 日历写入直接执行 — 经简单合理性判断后直接写日历(不要每条都问用户),用户有判断能力会自己删
这套 skill 用到了哪些工具/数据源
详见 tools-and-sources.md。新用户装这个 skill 后,先看那个文件,把不用的工具注释掉、把自己有的工具加上。
这套 skill 的用户画像
详见 profile.md。新用户必须填这个文件,否则 skill 不知道你是谁、要做什么。
实现路线
详见 implementation-plan.md。分 Phase 0 ~ Phase 6,建议交给 Codex 按阶段实现,每个 Phase 独立可跑。
文件清单
SKILL.md — 你正在看的这个,总览
profile.md — 用户画像(每人一份,必填)
format-spec.md — frontmatter 统一规范
tools-and-sources.md — 数据源清单(可裁剪)
implementation-plan.md — 给 Codex 的实现任务书
README.md — 给人看的安装/使用说明