"一个你要主动去问的助手,只是一个工具。一个主动来找你的助手,才是真正的助手。今天之后,你再也不需要'记得检查邮件'了——因为有人帮你记着。"
📖 本章导读
这一小时,我们将完成OpenClaw助手从「被动工具」到「主动管家」的核心升级,彻底解决「你不喊它,它就不动」的痛点。
你将系统掌握两大核心自动化能力:
- 理解心跳机制(Heartbeat)——给助手装上「生物钟」,实现循环巡检
- 掌握定时任务(Cron)——配置精确到分钟的自动化执行规则
- 分清两大机制的适用场景,选对工具不踩坑
- 学会平衡助手的主动性,做到「有事及时说,没事不打扰」
学完本章,你的助手将实现24小时全自动值守:邮件检查、日程提醒、数据监控、定时报告,全部无需手动触发。
从「你问它答」到「它主动找你」
在前序学习中,你已经让助手拥有了对话交互、工具调用、多平台接入的能力,但它始终有一个核心短板:你不发起指令,它就什么都不做。
邮件堆满未读它不会主动筛选,会议临近它不会提前提醒,网站宕机它不会第一时间告警,它始终在原地等待你的指令。这就像雇了一个全能管家,却只会站在门口等你下命令,完全失去了「助理」的核心价值。
今天,我们就用心跳机制+定时任务,彻底解决这个问题。
心跳机制(Heartbeat)💓
心跳机制是OpenClaw实现主动工作的核心基础,它就像助手的「生物钟」,能让助手按照固定间隔自动「唤醒」,主动完成预设的巡检任务。
核心原理
OpenClaw会按照你设定的时间间隔(默认30分钟),向助手发送一次心跳信号。助手收到信号后,会按固定流程执行操作:
- 读取
HEARTBEAT.md中预设的巡检任务清单 - 逐项完成清单中的检查项
- 发现需要通知你的重要事项,立即主动发消息告知
- 无异常情况则静默返回
HEARTBEAT_OK,不产生任何打扰
配置心跳任务清单
心跳任务的核心配置文件为 ~/clawd/HEARTBEAT.md,你可以通过编辑该文件,自由定义助手的巡检范围,参考配置示例如下:
# 心跳任务
## 每次检查必做
- 查看Gmail收件箱,筛选重要未读邮件(标星/来自重要联系人)
- 查看日历,检查2小时内是否有需要提醒的会议(含会议链接+参会人)
- 检查即时通讯工具未读消息,筛选@我的高优先级内容
## 每天检查2-3次
- 检查核心网站是否可正常访问(响应时间<3s为正常)
- 查看GSC搜索数据是否出现异常波动(流量变化±20%需提醒)
- 检查服务器核心指标(CPU/内存使用率<80%为正常)
## 无需主动执行
- 天气查询(仅用户主动询问时响应)
- 社交媒体消息(仅被@时处理)
- 非紧急的文件整理需求(仅按需触发)
调整心跳间隔
你可以根据自身使用场景,灵活调整心跳触发的间隔时长,支持两种配置方式:
方式1:向导式配置(新手推荐)
# 启动网关配置向导
openclaw configure --section gateway
在弹出的配置向导中,找到 heartbeat.interval 字段,输入数值+单位(如15m/30m/1h),按回车确认即可完成调整。
方式2:直接编辑配置文件
- 打开OpenClaw主配置文件(路径:
~/.openclaw/config.yaml) - 找到
gateway模块下的heartbeat.interval字段 - 修改为目标间隔值,保存文件后执行
openclaw restart生效
常用配置参考:
- 15m:高频巡检,适合工作日白天高优先级监控场景(如电商大促、核心系统监控)
- 30m:系统默认值,平衡巡检效率与使用成本(通用办公场景首选)
- 1h:低频巡检,适合非工作时间、低优先级监控场景(如夜间/周末)
- 6h:超低频巡检,适合长期无人值守的轻量监控场景
心跳机制常见问题排查
| 问题现象 | 排查步骤 | 解决方案 |
|---|---|---|
| 心跳未触发 | 1. 检查配置文件中interval字段格式 2. 执行openclaw status查看网关状态 | 1. 确保格式为「数字+单位」(如30m) 2. 执行openclaw restart重启网关 |
| 频繁收到无意义提醒 | 1. 检查HEARTBEAT.md中巡检项阈值 2. 确认通知分级规则 | 1. 提高异常判定阈值(如流量波动±30%) 2. 新增「次要事项汇总通知」规则 |
定时任务(Cron)⏰
心跳机制适合「每隔一段时间循环巡检」的场景,但对于需要精确时间点执行的固定任务,我们需要用到Cron定时任务。
核心作用
Cron基于Linux crontab语法实现,能让助手在你指定的精确时间,自动执行预设指令,完美适配以下场景:
- 每天早上8:00推送当日晨间简报
- 每周一上午9:00生成上周工作周报
- 每月1号上午10:00核对服务器账单
- 工作日固定时段推送健康工作提醒
Cron表达式语法
Cron表达式标准格式为 分 时 日 月 周,5个字段分别对应不同的时间维度,字段取值范围:
| 字段 | 取值范围 | 特殊符号说明 |
|---|---|---|
| 分 | 0-59 | (任意)、/n(每隔n分钟)、n1,n2(指定多个值) |
| 时 | 0-23 | *(任意)、n1-n2(指定时间段) |
| 日 | 1-31 | *(任意)、L(当月最后一天) |
| 月 | 1-12 / Jan-Dec | *(任意) |
| 周 | 0-7 / Sun-Sat(0/7均为周日) | *(任意)、n1-n2(指定周几范围) |
常用示例如下:
分 时 日 月 周 说明
0 8 * * * → 每天早上8:00执行
0 9 * * 1 → 每周一早上9:00执行
0 10 1 * * → 每月1号早上10:00执行
*/30 9-18 * * 1-5 → 工作日9:00-18:00,每30分钟执行一次
0 18 * * 1-5 → 工作日下午6:00执行
0 0 L * * → 每月最后一天午夜执行
创建/管理Cron任务
1. 创建Cron任务
通过 openclaw cron add 命令创建定时任务,核心参数说明:
--name:任务名称(唯一,便于管理)--cron:Cron时间表达式(必填)--system-event:任务触发时执行的指令(支持多行文本)--enabled:是否启用(默认true,false为禁用)
2. 常用管理命令
# 查看所有Cron任务
openclaw cron list
# 编辑已有任务(修改名称/表达式/指令)
openclaw cron edit --name "晨间简报"
# 禁用/启用任务
openclaw cron disable --name "工作健康提醒"
openclaw cron enable --name "工作健康提醒"
# 删除任务
openclaw cron delete --name "每周工作周报"
高频实用Cron任务示例
1. 晨间简报(每天8:00执行)
openclaw cron add --name "晨间简报" --cron "0 8 * * *" \
--system-event "生成今日晨间简报,要求:
1) 摘要未读邮件中的重要内容(仅标星/重要联系人,控制在3条内)
2) 整理当日日历会议安排(含时间、会议名称、参会人、会议链接)
3) 检查核心网站运行状态(响应时间+可用性)
4) 汇总为一条简洁消息,控制在200字以内发送。"
2. 周报生成(每周一9:00执行)
openclaw cron add --name "每周工作周报" --cron "0 9 * * 1" \
--system-event "生成上周工作周报,结构要求:
1) 核心完成事项(3-5条,量化成果)
2) 待跟进事项(标注优先级)
3) 核心项目数据变化(环比/同比)
4) 重要邮件/沟通记录摘要
5) 本周计划(简明列出重点)。"
3. 工作健康提醒(工作日每2小时执行)
openclaw cron add --name "工作健康提醒" --cron "0 10,12,14,16 * * 1-5" \
--system-event "发送温馨健康提醒,要求:
1) 语气亲切,不生硬
2) 提醒内容:起身活动5分钟,补充水分;若已连续工作超2小时,建议休息10分钟
3) 附加1条简短的护眼小技巧(每次不同)。"
4. 每日数据备份(每天23:00执行)
openclaw cron add --name "每日数据备份" --cron "0 23 * * *" \
--system-event "执行每日数据备份流程:
1) 备份核心工作文档至云盘
2) 备份数据库至本地+异地存储
3) 检查备份文件完整性
4) 若备份失败,立即发送告警消息;备份成功则静默不通知。"
心跳 vs Cron:场景选择指南
两大机制都能实现助手的主动工作,但适用场景差异显著,选错工具会导致效果大打折扣,可参考下表快速选择:
| 维度 | 心跳机制(Heartbeat) | 定时任务(Cron) |
|---|---|---|
| 触发方式 | 固定间隔循环触发 | 精确时间点/时间段触发 |
| 核心适配场景 | 常规巡检、状态监控、异常告警、实时响应 | 定时报告、固定时间提醒、周期性批量任务、数据备份 |
| 时间精度 | 允许几分钟的偏差(±1-2分钟) | 精确到分钟(系统级精准触发) |
| 执行上下文 | 可调用完整对话历史与记忆(有上下文) | 独立执行,无上下文依赖(纯指令执行) |
| 使用成本 | 无异常则静默,成本极低(仅异常时产生交互) | 每次触发均执行指令,成本固定(按执行次数计费) |
| 配置复杂度 | 低(仅需编辑清单+调整间隔) | 中(需掌握Cron表达式语法) |
| 灵活性 | 高(随时调整间隔,即时生效) | 中(修改后需重启Cron服务生效) |
极简选择规则:
- 需要「隔一会儿看一眼」的巡检类工作 → 心跳机制
- 需要「几点几分必须做」的固定任务 → Cron定时任务
- 实时性要求高的异常监控 → 心跳机制(短间隔)
- 批量处理/报告生成类任务 → Cron定时任务
平衡的艺术:主动但不烦人
「主动工作」和「信息骚扰」只有一线之隔,遵循以下4个核心原则,就能让助手的主动服务恰到好处。
原则1:分级推送,重要的立即说,次要的攒起来
| 信息等级 | 推送策略 | 示例场景 |
|---|---|---|
| 紧急(P0) | 立即推送,5分钟内必达 | 网站宕机、紧急会议提醒、重要客户邮件 |
| 重要(P1) | 15分钟内推送,不延迟 | 核心数据异常、待办事项到期提醒 |
| 次要(P2) | 攒到固定时段汇总推送 | 普通邮件、常规数据更新、非紧急通知 |
| 低优先级(P3) | 仅用户主动查询时展示 | 非重要的社交媒体消息、普通资讯 |
原则2:尊重静默时间,非必要不打扰
- 基础静默时段:深夜(23:00-次日8:00)、周末节假日,除非P0级紧急事项,否则停止主动推送
- 自定义静默配置:
# 配置静默时段(支持多时段) openclaw configure --section gateway --key heartbeat.silent_hours --value "23:00-08:00,12:00-13:00" # 配置紧急例外项(P0级仍推送) openclaw configure --section gateway --key heartbeat.urgent_exceptions --value "website_down,emergency_meeting"
原则3:频率适配,找到舒适区间
- 初期试运营阶段(1-3天):可适当提高推送频率,熟悉助手的能力边界
- 稳定使用阶段:建议将每日主动消息控制在3-5条,避免信息过载
- 频率调整技巧:
- 高频→低频:调大心跳间隔(如15m→30m)+ 删减非必要巡检项
- 低频→高频:缩小心跳间隔(如1h→30m)+ 新增核心监控项
原则4:全量可配置,随时可调整
所有主动行为均支持精细化配置,核心配置入口:
- 心跳任务:
~/clawd/HEARTBEAT.md(编辑后即时生效) - 心跳间隔/静默时段:
~/.openclaw/config.yaml(修改后重启生效) - Cron任务:
openclaw cron命令集(支持实时编辑/禁用/删除) - 推送渠道:可单独配置不同场景的推送方式(如紧急项→短信+APP,次要项→仅APP)
🔧 实操演练:搭建你的主动助手
目标
- 配置心跳任务清单,实现核心工作场景的自动巡检
- 创建2个实用的Cron定时任务
- 配置静默时段,避免夜间打扰
步骤
步骤1:配置心跳任务清单
# 打开心跳任务配置文件
vim ~/clawd/HEARTBEAT.md
按前文示例,编辑适合自己的巡检任务,保存退出。
步骤2:调整心跳间隔为20分钟(工作日)
# 向导式配置
openclaw configure --section gateway
# 在向导中找到heartbeat.interval,输入20m
# 配置周末间隔为1h
openclaw configure --section gateway --key heartbeat.weekend_interval --value "1h"
步骤3:创建晨间简报和健康提醒Cron任务
执行前文对应的2个Cron命令,完成任务创建。
步骤4:配置静默时段
# 配置夜间+午休静默时段
openclaw configure --section gateway --key heartbeat.silent_hours --value "22:30-08:30,12:00-13:00"
步骤5:验证配置生效
# 查看心跳配置
openclaw configure --section gateway --list
# 查看Cron任务列表
openclaw cron list
# 重启服务使配置生效
openclaw restart
🔑 本章核心要点回顾
- 心跳 = 助手的生物钟:按固定间隔自动唤醒,完成循环巡检与异常告警,是常规监控的首选(低成本、高灵活)
- Cron = 精准闹钟:基于时间表达式精确触发,适配定时报告、固定提醒、数据备份等场景(高精度、强可控)
- 场景选择核心规则:批量巡检/实时监控用心跳,精确定时/批量任务用Cron
- 主动工作的核心准则:分级推送、尊重静默时间、控制推送频率,做到「主动但不烦人」
- 配置核心逻辑:所有主动行为均可配置、可调整、可禁用,完全掌控在你手中
- 主动工作,才是AI私人助理的真正价值(从「被动响应」到「主动服务」的质变)
今日成就 🎉
恭喜你,完成了OpenClaw助手的质变升级!今天你已经:
- ✅ 理解了心跳机制的核心原理,完成了个性化心跳任务清单的配置
- ✅ 掌握了Cron表达式语法,能独立创建/管理定时任务
- ✅ 精准区分两大机制的适用场景,能根据需求选对工具
- ✅ 学会了平衡助手的主动性,通过分级推送+静默时段避免信息骚扰
- ✅ 完成了实操演练,搭建了属于自己的主动助手体系
- ✅ 让助手从「被动响应的工具」,变成了「24小时在线的主动管家」
从今天开始,那些琐碎的、重复的、总需要你「记着去看一眼」的事,终于有人帮你全天候盯着了。你可以彻底解放精力,专注于更核心、更有价值的工作。
常见问题Q&A
Q1:心跳机制和Cron可以同时使用吗?
A:完全可以,且推荐组合使用。例如:用心跳机制做实时监控,用Cron做定时报告,两者互补,覆盖全场景主动工作需求。
Q2:如何降低主动推送的信息干扰?
A:核心方法:1) 严格执行分级推送,次要信息汇总发送;2) 配置合理的静默时段;3) 定期清理非必要的巡检项/Cron任务,保持「少而精」。
Q3:Cron任务执行失败怎么办?
A:1) 执行openclaw cron logs --name 任务名称查看日志;2) 检查Cron表达式语法是否正确;3) 确认指令是否可独立执行(无上下文依赖);4) 重启Cron服务openclaw cron restart。
Q4:心跳间隔设置得越短越好吗?
A:不是。过短的间隔(如5m)会增加使用成本,且可能导致频繁的无意义检查;建议根据场景选择:工作日15-30m,非工作日1-6h。
预告:总结&展望😚
- 我们都学习了什么(全5小时核心知识点复盘)
- 使用OpenClaw 的 AI 助手有哪些要注意的关键问题(避坑指南)
- 如何让你的AI 助手越变越聪明(记忆系统+个性化训练) 最终实现:让你的AI助手为你打工,你可以尽情享受快乐的生活
下一章 👉 总结&展望:复盘收获并持续进化