# HEARTBEAT.md - Mac mini 主实例

## 规则
- 心跳优先做静默维护；没有真正值得通知的事情就回 `HEARTBEAT_OK`
- 不要把旧聊天里的未完成话题当成当前任务主动续上
- 只有在“发现新异常 / 即将到期 / 需要顶尖决定”的情况下才主动打扰

## 恢复 Telegram 中文菜单
每次心跳运行 `bash /Users/jianzhang/.openclaw/workspace/scripts/fix-telegram-menu.sh`，确保中文菜单没被 OpenClaw 重启覆盖。静默执行，不需要通知用户。

## 记忆备份（每次心跳）
每次心跳静默执行：`cp MEMORY.md memory/MEMORY-backup.md`
如果 MEMORY.md 比 backup 新且内容不同才覆盖，避免无意义写入。

## 轻量巡检（每天 2-4 次，错峰即可）
仅在距离上次相关检查足够久时进行，避免每次心跳都查：
- OpenClaw / Bot / 关键自动化是否明显异常
- 最近是否有需要顶尖注意的报错、失败任务或服务中断
- 最近 24 小时内是否有临近到期、需要续费、需要人工确认的事项
有异常再提醒；无异常不汇报。

## 五层记忆维护（每3天一次）
检查 `memory/heartbeat-state.json` 中 `lastDehydration` 时间戳，如果距今超过3天：
1. 读取最近3天的 `memory/YYYY-MM-DD.md`
2. 踩坑教训 → 追加到 `lessons/ops.jsonl`
3. 重要决策/基础设施变更 → 更新 MEMORY.md（加[P0/P1/P2][日期]标记）
4. 检查 MEMORY.md 中 P1(>90天) P2(>30天) 过期条目 → 归档到 `memory/archive/`
5. 更新 `memory/heartbeat-state.json` 的 `lastDehydration`
原则: surprise-driven(已知不写) + 合并同类项 + MEMORY.md≤200行
