一、从被动工具到主动管家
传统的 ChatGPT 式交互,本质上仍是'你问它答'的被动模式:用户不发起对话,助手什么都不会做。 这在许多场景里是致命限制:重要邮件堆积、会议即将开始、网站流量骤降,助手却不会主动提醒你任何事情。
在 OpenClaw 的设计中,这个问题被明确视为'助手是否真正算得上助理'的分水岭:
- 只在被询问时响应,更像工具而不是助手
- 会'定时醒来'检查世界变化、判断是否需要通知你,才称得上'主动管家'
OpenClaw 为此引入了三个关键能力:
- 心跳机制 Heartbeat:让助手按固定间隔自动醒来巡检任务
- 定时任务 Cron:在精确时间点触发自动化动作
- 记忆系统 Memory:记录每天发生的事、稳定偏好与长期知识,让助手越用越懂你
接下来我将围绕这三者展开,既讲清原理,也给出可以直接照抄改造的实战模板。
二、心跳机制:让助手'按时醒来'
2.1 Heartbeat 的设计目标
Heartbeat 是 OpenClaw 的核心机制之一,它解决的是一个朴素但关键的问题:如果你不说话,助手该不该自己干点什么? 在 OpenClaw 中答案是:该,而且要有节制、有边界地干。
Heartbeat 的职责可以总结为四个动作:
- 在固定时间间隔被唤醒(默认 30 分钟一次)
- 读取
HEARTBEAT.md中配置好的'巡检任务清单' - 逐项检查(邮件、日历、网站、数据等)
- 有事就发消息提醒,无事只返回
HEARTBEAT_OK安静退出
这个模式有两个隐含但非常重要的设计原则:
- 用户完全掌控助手能主动做什么:所有主动行为都来自
HEARTBEAT.md的显式配置 - 无事不打扰:绝大多数心跳周期只会默默返回一个
HEARTBEAT_OK,既保证覆盖,又控制噪音
2.2 配置 HEARTBEAT.md:定义你的巡检清单
Heartbeat 的行为全部由 ~/clawd/HEARTBEAT.md 决定,这个文件可以看作是'主动任务的声明式配置中心'。
示例配置:
# 心跳任务 # 每次检查 - 查看 Gmail 是否有重要邮件 - 查看日历,2 小时内有没有会议要提醒 # 每天检查 2-3 次 - 检查网站是否正常访问 - 查看 GSC 有没有异常数据波动 # 不需要主动做 - 天气查询(等我问再查) - 社交媒体(除非被 @ 了)
这个结构非常简单,但表达力足够强:
- '每次检查':适合实时性要求高的项目,比如重要邮件、临近会议提醒
- '每天检查 2–3 次':适合趋势性、容忍一定延迟的数据,如网站可用性、搜索流量波动
- '不需要主动做':明确告诉助手哪些事情只在你主动询问时才触发,避免信息骚扰
作为开发者,你完全可以把这里当作 DSL(领域特定语言)来设计和扩展,例如:
- 按项目分组:
# 工作相关、# 个人生活 - 按优先级标注:
[HIGH]、[LOW] - 为每条任务附加执行策略说明(如'仅工作日'、'仅 9–18 点')
2.3 设置心跳间隔:效率与成本的平衡
Heartbeat 间隔可以通过命令行配置:
openclaw configure --section gateway
或直接修改配置文件中的 heartbeat.interval 字段。
常见选项及适用场景:


