OpenClaw主动工作教程:让AI助手不再等你问

"一个你要主动去问的助手,只是一个工具。一个主动来找你的助手,才是真正的助手。今天之后,你再也不需要提醒AI'记得检查邮件'了——因为有人帮你记着。"

📖 本章导读

今天你将让助手从「被动工具」升级为「主动管家」:

  • 理解心跳机制(Heartbeat)— 助手的「生物钟」
  • 配置定时任务(Cron)— 精确到分钟的自动化
  • 实现主动工作 — 邮件检查、日程提醒、数据监控全自动

🌟 从「你问它答」到「它主动找你」

过去六天,你的助手已经很能干了。它有灵魂、懂你、能读日程、写文档、上网搜索、浏览网页。但它有一个致命的问题——你不找它,它就什么都不做

邮件堆了50封它不看。日历上的会议快开始了它不提醒。网站挂了它不告诉你。它就静静地坐在那里,等你开口。

这就像雇了一个全能管家,但他每天就站在门口等你下达命令——你不说话他就不动。这不叫管家,这叫雕像。

今天我们解决这个问题,让助手从「被动工具」升级为「主动管家」。

🔄 心跳与定时任务:主动工作的两种方式

OpenClaw提供了两种让助手主动工作的机制:

  1. 心跳机制(Heartbeat):周期性的上下文感知检查,让AI判断是否需要打扰你
  2. 定时任务(Cron):精确时间表上的固定任务执行

这两种机制各有所长,应当根据不同场景选择使用。

🕒 心跳机制(Heartbeat)

心跳机制是OpenClaw最强大的特性之一,它让AI助手拥有了「生物钟」,能够定期自动运行并判断是否需要通知你。

心跳工作原理

  1. 定期唤醒:系统会按照设定的频率自动唤醒AI助手
  2. 执行检查:AI会检查是否有需要处理的事项
  3. 智能决策:AI自主判断是否需要通知你
  4. 静默确认:如果没有需要注意的事项,AI会回复HEARTBEAT_OK(默认不会发送给你)

心跳的默认设置

  • 默认间隔:30分钟(使用Anthropic OAuth/setup-token时为1小时)
  • 默认不发送消息(target: "none"
  • 默认提示:检查HEARTBEAT.md文件(如果存在),如无需处理的事项则回复HEARTBEAT_OK

配置心跳功能

编辑配置文件,启用并自定义心跳功能:

Code
agents:
  defaults:
    heartbeat:
      every: "30m"  # 心跳间隔,0m表示禁用
      target: "last"  # 发送到最后一个联系渠道(默认为"none"不发送)
      directPolicy: "allow"  # 允许直接/私信投递
      activeHours:  # 可选:限制在活动时间内运行
        start: "09:00"
        end: "22:00"
        timezone: "Asia/Shanghai"  # 或其他时区
      includeReasoning: true  # 可选:同时发送推理过程

创建HEARTBEAT.md文件

在工作空间创建一个HEARTBEAT.md文件作为心跳检查清单,告诉助手应该定期检查什么:

Code
# 心跳检查清单

- 检查是否有未回复的重要邮件
- 检查接下来1小时内是否有会议安排
- 如果是工作时间(9:00-18:00)且没有紧急事项,可以进行轻量级的问候
- 检查我的待办事项列表,提醒即将到期的任务
- 检查网站运行状态,发现异常立即通知

这个文件应保持简短,避免提示词膨胀和不必要的API消耗。

控制心跳消息的可见性

你可以控制不同渠道上心跳消息的可见性:

Code
channels:
  defaults:
    heartbeat:
      showOk: false    # 隐藏HEARTBEAT_OK确认(默认)
      showAlerts: true # 显示提醒消息(默认)
      useIndicator: true # 发出指示器事件(默认)
  feishu:
    heartbeat:
      showOk: true     # 在飞书上显示OK确认
  whatsapp:
    accounts:
      work:
        heartbeat:
          showAlerts: false # 抑制此账户的提醒投递

手动触发心跳

你可以通过命令行手动触发心跳检查,无需等待下一个计划时间点:

Code
openclaw system event --text "Check for urgent follow-ups" --mode now

⏰ 定时任务(Cron)

与心跳机制不同,定时任务(Cron)用于按照精确的时间表自动执行特定任务,更适合固定的报告或检查。

使用CLI管理Cron任务

根据文档,OpenClaw提供了命令行工具来管理定时任务:

Code
# 查看帮助
openclaw cron --help

# 添加新的定时任务(默认会发送结果)
openclaw cron add "检查我的邮箱" --schedule "*/30 * * * *" 

# 添加定时任务但不发送结果(保持内部)
openclaw cron add "内部日志检查" --schedule "0 * * * *" --no-deliver

# 添加一次性任务(默认成功后会删除)
openclaw cron add "提醒下午的会议" --at "2026-03-01T14:30:00"

# 添加一次性任务并保留(即使成功后)
openclaw cron add "提醒下午的会议" --at "2026-03-01T14:30:00" --keep-after-run

# 更新任务的投递设置
openclaw cron edit <任务ID> --announce --channel telegram --to "123456789"

# 禁用任务的投递
openclaw cron edit <任务ID> --no-deliver

定时任务的重要特性

  • 独立任务默认会公布(--announce)结果
  • 一次性任务(使用--at)默认成功后会删除
  • 重复任务在连续错误后会使用指数退避策略重试(30秒→1分钟→5分钟→15分钟→60分钟)
  • 下一次成功运行后,任务会恢复正常调度

在配置文件中设置定时任务

除了命令行,你也可以在配置文件中设置定时任务:

Code
cron:
  - name: "邮件检查"
    schedule: "*/30 * * * *"  # 每30分钟执行一次
    prompt: "检查我的邮箱,如果有重要邮件请通知我"
    announce: true  # 公布结果
    channel: "feishu"  # 发送到特定渠道
    
  - name: "日程提醒"
    schedule: "0 8 * * *"  # 每天早上8点执行
    prompt: "检查我今天的日程,并给我一个简要概述"
    
  - name: "网站监控"
    schedule: "*/15 * * * *"  # 每15分钟执行一次
    prompt: "检查我的网站是否正常运行,如果发现问题立即通知我"

Cron表达式说明

Cron表达式由五部分组成,分别表示:分钟、小时、日、月、星期

Code
* * * * *
│ │ │ │ └── 星期 (0-7,0和7都表示周日)
│ │ │ └──── 月 (1-12)
│ │ └────── 日 (1-31)
│ └──────── 小时 (0-23)
└────────── 分钟 (0-59)

常见模式:

  • */15 * * * *: 每15分钟
  • 0 * * * *: 每小时整点
  • 0 8 * * *: 每天早上8点
  • 0 8 * * 1-5: 周一至周五早上8点

🔄 心跳 vs 定时任务:如何选择?

两种机制各有优势,可以根据需求选择:

正在加载表格预览...

🛠️ 实际应用场景示例

个人助手配置

结合心跳和定时任务,打造全方位的个人助手:

Code
# 心跳配置 - 用于需要上下文感知的检查
agents:
  defaults:
    heartbeat:
      every: "30m"
      target: "last"
      activeHours: { start: "09:00", end: "22:00" }
      
# 定时任务 - 用于固定的报告和任务
# 通过CLI添加:
# openclaw cron add "准备今日简报" --schedule "0 8 * * *" --announce --channel feishu
# openclaw cron add "整理本周工作完成情况" --schedule "0 17 * * 5" --announce --channel feishu

邮件助手

Code
# HEARTBEAT.md文件内容:
# - 检查未读邮件,寻找重要邮件
# - 如发现紧急邮件,立即通知我
# - 对于需要回复的邮件,提醒我处理
Code
agents:
  defaults:
    heartbeat:
      every: "15m"
      target: "feishu"
      activeHours: { start: "09:00", end: "22:00" }

会议提醒助手

Code
# 使用CLI添加定时任务
openclaw cron add "检查今天的会议安排,给我一个简要概述" --schedule "0 8 * * *" --announce --channel feishu

openclaw cron add "检查接下来30分钟内的会议,如有即将开始的会议,请提前15分钟通知我,包括会议主题、时间、地点/链接" --schedule "*/10 * * * *" --announce --channel feishu

数据监控助手

Code
# 使用CLI添加定时任务
openclaw cron add "检查我的网站是否正常运行,检查API响应时间和错误率,如果发现异常立即通知我" --schedule "*/5 * * * *" --announce --channel feishu

# 添加一次性任务
openclaw cron add "执行数据库备份" --at "2026-03-01T23:00:00" --announce --channel feishu

新闻摘要助手

Code
# 使用CLI添加定时任务
openclaw cron add "搜索与我们行业相关的最新新闻,筛选出最重要的3-5条,为每条创建简短摘要,发送给我这个简报" --schedule "0 8 * * *" --announce --channel feishu

📱 通知渠道整合

确保你的助手能够通过多种渠道联系到你:

Code
notification:
  enabled: true
  channels:
    - type: feishu
      webhook: "https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxxx"
    - type: email
      address: "your-email@example.com"
    - type: sms
      number: "+1234567890"
  priority_rules:
    - condition: "紧急事项"
      channels: ["sms", "feishu"]
    - condition: "重要提醒"
      channels: ["feishu"]
    - condition: "日常信息"
      channels: ["email"]

🔄 全自动工作流示例

下面是一个综合的自动化工作日助手配置示例:

Code
# 心跳配置
agents:
  defaults:
    heartbeat:
      every: "20m"
      target: "last"
      activeHours: 
        start: "08:00"
        end: "22:00"
        timezone: "Asia/Shanghai"
      includeReasoning: true
Code
# 通过CLI添加定时任务
# 早晨简报
openclaw cron add "1. 汇总今天的日程安排
2. 检查重要邮件
3. 提供今日天气预报
4. 准备行业新闻简报
5. 以友好的方式向我问好并提供以上信息" --schedule "0 7 * * 1-5" --announce --channel feishu

# 工作日结束总结
openclaw cron add "1. 总结今天完成的工作事项
2. 提醒我明天的重要日程
3. 建议我是否需要为明天准备什么" --schedule "0 18 * * 1-5" --announce --channel feishu

# 周末计划
openclaw cron add "1. 回顾本周完成的工作
2. 检查周末是否有安排
3. 提供周末天气预报
4. 询问是否需要帮我安排周末活动" --schedule "0 20 * * 5" --announce --channel feishu

🧠 使用记忆系统增强主动工作能力

结合Day 6学习的记忆管理,可以让你的主动工作更加智能:

Code
# HEARTBEAT.md文件内容示例:
# - 检查记忆库中标记为"跟进"的事项,如到期则提醒
# - 检查记忆库中的重要联系人,是否有需要定期联系的人
# - 回顾最近的对话,确认是否有遗漏的待办事项

🎯 总结与下一步

通过本章的学习,你的AI助手已经从被动工具升级为主动管家。它不再只是等待你的指令,而是能够自主判断何时需要联系你,真正成为你的得力助手。

这也是我们OpenClaw 7天教程的最终章节。到此,你已经掌握了:

  1. 基础安装与配置(Day 1)
  2. 个性化与定制(Day 2)
  3. 飞书集成(Day 3)
  4. 工具使用(Day 4)
  5. 技能扩展(Day 5)
  6. 记忆管理(Day 6)
  7. 主动工作模式(Day 7)

你的AI助手现在已经具备了真正个人助手的全部能力,能够主动、智能地辅助你的日常工作和生活。

🚀 课后练习

  1. 设置一个心跳机制,让助手每30分钟检查一次你的邮箱和日程
  2. 创建一个HEARTBEAT.md文件,列出助手应该定期检查的事项
  3. 使用CLI添加至少两个定时任务:
Code
openclaw cron add "准备每日简报" --schedule "0 8 * * *" --announce
openclaw cron add "检查未完成的任务" --schedule "0 18 * * 1-5" --announce
  1. 测试手动触发心跳的命令
  2. 尝试添加一个一次性任务:
Code
openclaw cron add "提醒下午的重要会议" --at "2026-03-02T14:00:00" --keep-after-run
  1. 思考:你的工作或生活中有哪些任务可以交给助手主动处理?

恭喜你完成OpenClaw 7天教程的学习!现在,你的AI助手已经从一个简单的聊天工具变成了一个真正的智能助手,可以主动为你工作,让你的生活和工作更加高效。享受与你的新助手的合作吧!

📚 相关链接


同专题推荐