Copaw Cron Heartbeat
CoPaw 定时任务与心跳机制
CoPaw 支持定时任务和心跳机制,可以按预设时间自动执行任务或定期检查。本文介绍定时任务和心跳的配置和使用。
定时任务
定时任务(Cron Jobs)允许你在指定时间自动执行任务。
任务类型
CoPaw 支持两种定时任务类型:
文本类型
:发送固定消息
Agent 类型
:向 CoPaw 提问并转发回复
配置定时任务
通过控制台
- 进入控制台 控制 → 定时任务
- 点击 + 创建任务
- 填写表单:
基本信息
:
- 任务 ID:如
job-001 - 任务名称:如「每日摘要」
- 启用:打开开关
调度
:
- Cron 表达式:如
0 9(每天上午 9 点) - 时区:选择时区
任务类型及内容
:
- 选择类型:文本或 Agent
- 填入内容:
文本类型:
早上好!今天是 2024年3月15日,祝你有愉快的一天。
Agent 类型:
总结今天的待办事项和重要通知。
投递
:
- 目标频道:如 Console、钉钉
- 目标用户:选择用户
- 投递方式:流式(实时发送)或最终(完成后一次性发送)
高级选项
:
- 最大并发数:默认 10
- 超时时间:默认 300 秒
- 宽限时间:默认 60 秒
- 点击保存
通过对话创建
最简单的方式是直接与 CoPaw 对话:
你:帮我创建一个定时任务,每隔 5 分钟提醒我喝水。
CoPaw:好的,我已经为你创建了一个定时任务,每隔 5 分钟会提醒你喝水。
通过 CLI
# 创建定时任务
copaw cron create
列出所有任务
copaw cron list
暂停任务
copaw cron pause <task_id>
恢复任务
copaw cron resume <task_id>
删除任务
copaw cron delete <task_id>
立即执行任务
copaw cron run <task_id>
Cron 表达式
Cron 表达式由 5 个字段组成:
分 时 日 月 周
| 字段 | 范围 | 说明 |
|------|------|------|
| 分 | 0-59 | 分钟 |
| 时 | 0-23 | 小时 |
| 日 | 1-31 | 日期 |
| 月 | 1-12 | 月份 |
| 周 | 0-7 | 星期(0 和 7 都是周日) |
常用 Cron 表达式
| 表达式 | 说明 |
|--------|------|
| 0 9
| 每天上午 9 点 |
| 0 /2
| 每 2 小时 |
| 0 0 0
| 每周日午夜 |
| 0 9 1-5
| 周一到周五上午 9 点 |
| 0 0 1
| 每月 1 日午夜 |
| /15
| 每 15 分钟 |
管理定时任务
编辑任务
:
- 进入控制台 控制 → 定时任务
- 点击任务行的编辑按钮
- 修改任意字段
- 点击保存
启用 / 禁用任务
:
- 点击任务行内的开关即可
立即执行一次
:
- 点击立即执行 → 确认
删除任务
:
- 点击删除 → 确认
心跳机制
心跳(Heartbeat)是 CoPaw 的定期检查机制,可以按固定间隔用预设的问题询问 CoPaw,并可选择将回答发到指定频道。
配置心跳
通过控制台
- 进入控制台 控制 → 心跳
- 填写配置:
基本信息
:
- 心跳 ID:如
heartbeat-daily - 心跳名称:如「每日检查」
调度
:
- 间隔时间:如
3600(秒,即 1 小时)
提示词
:
检查今天的待办事项、重要通知和最新消息。
投递
:
- 目标频道:如钉钉
- 目标用户:选择用户
- 点击保存
通过工作区文件
编辑 ~/.copaw/HEARTBEAT.md
:
# 心跳检查
每日检查
提示词:
检查今天的待办事项和重要通知。
间隔:3600 秒
频道:钉钉
每周检查
提示词:
总结本周工作和计划下周。
间隔:604800 秒
频道:钉钉
心跳场景
场景 1:定期检查待办
## 待办检查
提示词:列出今天的待办事项。
间隔:3600 秒(每小时)
频道:钉钉
场景 2:定期汇总新闻
## 新闻汇总
提示词:汇总最新的科技新闻。
间隔:7200 秒(每 2 小时)
频道:Discord
场景 3:定期自我检查
## 系统检查
提示词:
检查系统状态和重要事项。
- 检查是否有未读邮件
- 检查日程安排
- 检查项目进度
间隔:28800 秒(每 8 小时)
频道:Console
定时任务 vs 心跳
| 特性 | 定时任务 | 心跳 |
|------|----------|------|
| 配置方式 | 控制台或 CLI | 控制台或文件 |
| 触发方式 | Cron 表达式 | 固定间隔 |
| 任务内容 | 文本或 Agent 提问 | Agent 提问 |
| 灵活性 | 高(支持复杂 Cron) | 中(固定间隔) |
| 适用场景 | 精确时间、定期执行 | 定期检查、监控 |
实战案例
案例 1:每日工作提醒
需求
:每个工作日早上 9 点发送工作提醒
配置
:
- Cron 表达式:
0 9 1-5 - 任务类型:Agent
- 提示词:
列出今天的工作计划、会议安排和重要待办。
- 目标频道:钉钉
案例 2:喝水提醒
需求
:每隔 2 小时提醒喝水
配置
:
- Cron 表达式:
0 /2 - 任务类型:文本
- 内容:
记得喝水!保持健康 💧 - 目标频道:钉钉
案例 3:每周总结
需求
:每周日晚上生成工作总结
配置
:
- Cron 表达式:
0 20 0 - 任务类型:Agent
- 提示词:
总结本周完成的工作、遇到的问题和下周计划。
- 目标频道:钉钉
案例 4:定期检查邮件
需求
:每小时检查一次新邮件
配置
(心跳):
- 间隔:3600 秒
- 提示词:
检查是否有新邮件,如有则汇总。
- 频道:钉钉
命令行操作
# 定时任务
copaw cron create # 创建任务
copaw cron list # 列出任务
copaw cron pause <id> # 暂停任务
copaw cron resume <id> # 恢复任务
copaw cron delete <id> # 删除任务
copaw cron run <id> # 立即执行
查看心跳配置
cat ~/.copaw/HEARTBEAT.md
常见问题
Q: Cron 表达式 0 9 * 1-5 是什么意思?
A: 表示周一到周五每天上午 9 点执行。
Q: 如何测试定时任务?
A: 可以点击控制台中的「立即执行」按钮,或使用 CLI 命令 copaw cron run
。
Q: 心跳和定时任务有什么区别?
A: 心跳使用固定间隔,适合定期检查;定时任务使用 Cron 表达式,适合精确时间执行。
Q: 如何临时禁用定时任务?
A: 在控制台中关闭任务开关即可,或使用 CLI copaw cron pause
。







