Skip to content

Latest commit

 

History

History
112 lines (79 loc) · 2.28 KB

File metadata and controls

112 lines (79 loc) · 2.28 KB

Day 6:Heartbeat

🎯 学习目标:配置心跳检查,让 Agent 主动工作

Heartbeat vs Cron

特性 Heartbeat Cron
精确时间 ❌ 大致间隔 ✅ 精确
批量任务 ✅ 多个检查合并 ❌ 单任务
上下文 ✅ 有会话历史 ❌ 独立
Token 消耗 较少(批量) 较多

经验法则

  • 需要精确时间 → Cron
  • 多个检查可以合并 → Heartbeat
  • 需要会话上下文 → Heartbeat

配置 HEARTBEAT.md

在工作空间创建 HEARTBEAT.md

# HEARTBEAT.md

## 每次检查
- [ ] 有没有新邮件需要回复?
- [ ] 今天有什么日程安排?
- [ ] GitHub 有没有需要处理的 PR?

## 触发条件
- 有重要邮件 → 通知用户
- 2小时内有日程 → 提醒用户
- 其他情况 → HEARTBEAT_OK

跳过心跳

如果 HEARTBEAT.md 为空或只有注释,Agent 会跳过心跳:

# HEARTBEAT.md
# 保持为空以跳过心跳检查

心跳行为设计

主动检查项

轮流检查以下内容(不要每次都检查全部):

  • 邮件 - 重要的未读邮件
  • 日历 - 接下来 24-48 小时的事件
  • 社交媒体 - Twitter/Slack 提及
  • 天气 - 如果用户可能外出

何时主动联系

  • 有重要邮件
  • 即将有日程(<2小时)
  • 发现有趣的信息
  • 超过 8 小时没有交流

何时保持安静

  • 深夜(23:00-08:00)除非紧急
  • 用户明显在忙
  • 距离上次检查不到 30 分钟
  • 没有新内容

心跳状态跟踪

使用 JSON 文件跟踪检查状态:

// memory/heartbeat-state.json
{
  "lastChecks": {
    "email": 1703275200,
    "calendar": 1703260800,
    "weather": null
  }
}

后台工作

心跳期间可以做的事(无需询问):

  • 整理 memory 文件
  • 检查项目状态(git status)
  • 更新文档
  • 提交自己的改动

记忆维护

定期(每几天)在心跳期间:

  1. 阅读最近的 memory/YYYY-MM-DD.md
  2. 提取重要信息到 MEMORY.md
  3. 清理过时内容

✅ 今日练习

  • 创建 HEARTBEAT.md
  • 添加 2-3 个检查项
  • 观察 Agent 的心跳行为
  • 对比 Heartbeat 和 Cron 的使用场景

← 上一天 | 下一天:综合项目 →