Skills auto-diary
Automatically write daily/weekly/monthly diary summaries and extract insights to auto-learn.md for HexaLoop.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/0xcjl/auto-diary-0xcjl" ~/.claude/skills/openclaw-skills-auto-diary && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/0xcjl/auto-diary-0xcjl" ~/.openclaw/skills/openclaw-skills-auto-diary && rm -rf "$T"
manifest:
skills/0xcjl/auto-diary-0xcjl/SKILL.mdtags
source content
Auto-Diary Skill
自动写日记(中英双语)、提取洞察、推送飞书卡片、闭环 HexaLoop。
三句话核心:
- 每天 08:20 总结昨天,中英双语写日记
- 提取 1-3 条价值洞察 →
(供冥想层)auto-learn.md - 推飞书卡片到
oc_15949806c...
工作流程
Cron 触发 │ ▼ 读取上下文(按优先级): 1. `memory/YYYY-MM-DD.md`(昨日工作日志,若有) 2. `memory/auto-learn.md`(近期洞察,供关联参考) 3. `farm/farm.json`(能量值、活跃种子数、待确认收获) 4. `NOW.md`(当前 session 状态) 5. `memory/heartbeat-state.json`(近期心跳检查结果) │ ▼ AI 写结构化日记,必须包含: - **中文摘要**(Jialin 看):≤3句话,结论先行 - **关键决策**(中文):1-3条,每条含「决定内容」和「原因」 - **收获教训**(中文 + 英文):从工作/系统运行中学到的 - **下一步**(中文 + 英文):今天或近期要做的具体行动 - **HexaLoop 状态**(英文):farm energy、seeds、harvests,N/A 若无数据 - **English System Notes**(英文):任务类型、决策点、教训、可操作下一步,供 OPD Scorer 使用 - **HexaLoop Hints**(英文,1-2句):对冥想/农场最有价值的信号,如"farm energy dropped significantly"或"new agent pattern learned" │ ├─→ 保存本地文件 │ `~/.openclaw/workspace/memory/diary/YYYY-MM-DD.md`(每日) │ `~/.openclaw/workspace/memory/diary/WWWW-MM-DD_weekly.md`(每周) │ `~/.openclaw/workspace/memory/diary/YYYY-MM_monthly.md`(每月) │ ├─→ 提取价值片段 → auto-learn.md(格式 A,每次 1-3 条) │ - 从日记中提取最有价值的 1-3 条:关键决策 / 教训 / 可操作改进点 │ └─→ 推送飞书卡片(oc_15949806c791613dbf45b872e8bc111a)
脚本索引
| 脚本 | 用途 | 被谁调用 |
|---|---|---|
| 读取上下文 → AI 写日记 → 保存本地 → 提取 insights | main agent |
| 构建飞书 Interactive 卡片 JSON → 推送 | main agent |
| 聚合7天日记 → 生成周度卡片 | main agent |
| 聚合30天日记 → 生成月度卡片 | main agent |
日记格式模板
见
templates/diary_template.md(main agent 参考该模板生成日记 Markdown)
价值片段格式(写入 auto-learn.md)
追加到
memory/auto-learn.md,使用格式 A:
## 学习记录 ### 2026-03-30 08:20 **任务类型**: diary **涉及 Skill**: auto-diary **关键决策**: 发现昨日无 memory 文件,改用 farm.json + NOW.md 作为主要上下文 **教训**: 即使无主动工作,系统状态变化(如农场能量涨跌)也值得记入日记 **下次应用**: 日记生成前检查 memory/ 日期文件,缺失时自动降级到系统状态摘要
判断标准:
- ✅ 好的洞察:有具体行动(「下次应用」可操作)
- ❌ 差的洞察:模糊总结(「总体不错」之类,无执行方向)
触发消息格式
cron 触发时 main agent 收到纯文本消息:
→ 生成昨日日记diary write
→ 聚合上周7天diary weekly
→ 聚合上月全月diary monthly
典型执行场景:
:读 memory/2026-03-30.md + farm.json + NOW.md → 生成双语日记 → 写文件 → extract insights → 推卡片diary write
:读 DIARY_DIR 下 7 个 .md → 聚合成周报 → 写 _weekly.md → 推卡片diary weekly
:读 DIARY_DIR 下 ~30 个 .md → 聚合成月报 → 写 _monthly.md → 推卡片diary monthly
周度回顾(diary weekly)特殊要求
- 读取
(仅每日日记文件,排除memory/diary/YYYY-MM-DD.md
/_weekly.md
)_monthly.md - 生成:本周概览、关键进展、问题反思、下周计划(均中英双语)
- 聚合计分:记录天数、洞察总数
- 写入
memory/diary/WWWW-MM-DD_weekly.md - 追加格式 A 洞察到
auto-learn.md
月度回顾(diary monthly)特殊要求
- 读取
(仅每日日记文件,排除memory/diary/YYYY-MM-DD.md
/_weekly.md
)_monthly.md - 生成:月度主题、里程碑、挑战反思、下月重点(均中英双语)
- 聚合计分:记录天数、核心洞察、HexaLoop 进化信号
- 写入
memory/diary/YYYY-MM_monthly.md - 追加格式 A 洞察到
auto-learn.md
HexaLoop 集成
- 输入 → auto-learn.md:日记洞察以格式 A 追加,作为冥想层的输入素材
- 流转路径:diary insights → auto-learn.md → Meditation (02:30) → 反思 → 农场种子
- 参考:
memory/HexaLoop系统架构-2026-03-31.md
飞书卡片格式
使用飞书 Interactive 卡片,JSON 结构如下:
{ "msg_type": "interactive", "card": { "header": { "title": {"tag": "plain_text", "text": "📓 YYYY-MM-DD 日记"}, "template": "blue" // daily=blue, weekly=purple, monthly=orange }, "elements": [ {"tag": "div", "text": {"tag": "lark_md", "content": "**中文摘要**\n{内容}"}}, {"tag": "hr"}, {"tag": "div", "text": {"tag": "lark_md", "content": "**HexaLoop**\n{能量/洞察状态}"}}, {"tag": "note", "elements": [{"tag": "plain_text", "text": "Generated by auto-diary | YYYY-MM-DD HH:MM"}]} ] } }
:receive_idoc_15949806c791613dbf45b872e8bc111a
:receive_id_typechat_id
手动触发(测试用)
在飞书向皮皮虾发消息:
— 立即生成昨日日记diary write
— 立即生成周度回顾diary weekly
— 立即生成月度回顾diary monthly
Cron 配置与交付
cron 触发后,main agent 在 isolated session 中执行。执行完成后:
- 日记保存本地
- 飞书卡片推送至
(飞书群)oc_15949806c791613dbf45b872e8bc111a - cron 默认开启
模式(结果推送至 last channel)announce
# 日记(每天 08:20) openclaw cron add --name "每日日记" --cron "20 8 * * *" --tz "Asia/Shanghai" --message "diary write" --session isolated --agent main # 周度回顾(周六 09:00) openclaw cron add --name "周度日记回顾" --cron "0 9 * * 6" --tz "Asia/Shanghai" --message "diary weekly" --session isolated --agent main # 月度回顾(每月1日 09:00) openclaw cron add --name "月度日记回顾" --cron "0 9 1 * *" --tz "Asia/Shanghai" --message "diary monthly" --session isolated --agent main
错误处理
| 场景 | 行为 |
|---|---|
| 无 memory/YYYY-MM-DD.md 文件 | 仍写日记,用"(无主动工作记录,基于系统状态生成)"标注 |
| farm.json 不存在或格式错误 | 跳过 HexaLoop 状态模块,继续写日记 |
| 飞书推送失败(网络/权限) | 打印错误日志至 stdout,不阻塞日记保存 |
| auto-learn.md 写失败 | 打印警告,不阻塞主流程 |
| DIARY_DIR 不存在 | 自动创建 |
| 周/月度无任何日记文件 | 输出"无记录",不生成空白卡片 |
指标说明
| 指标 | 来源 | 含义 |
|---|---|---|
| farm energy | farm.json | 0.0~1.0,低于 0.3 说明需要关注 |
| 活跃种子 | farm.json seeds[].status | "growing" 状态的种子数 |
| 待确认收获 | farm.json harvested[] | pending review 的收获数 |
| 洞察数 | auto-learn.md 新增条数 | 本次日记提炼出的可操作洞察 |
| 记录天数 | DIARY_DIR 中对应周期的 .md | 当期有日记的天数 |
依赖
工具调用(以用户身份发飞书卡片):
feishu_im_user_message( action="send", receive_id_type="chat_id", receive_id="oc_15949806c791613dbf45b872e8bc111a", msg_type="interactive", content=json.dumps(card) # card 由 send_diary.py 生成 )
文件路径:
- 日记:
~/.openclaw/workspace/memory/diary/YYYY-MM-DD.md - auto-learn:
~/.openclaw/workspace/memory/auto-learn.md - 农场状态:
~/.openclaw/workspace/farm/farm.json