openclaw 系统性入门06 – 这些重复活,交给AI自动做

什么是自动化任务?
想象一下:每天早上 8 点自动发送今日工作摘要,GitHub 有新 PR 时自动审查并推送结果到 Telegram,每周一自动生成周报——这些重复性工作,OpenClaw 可以帮你自动完成。
OpenClaw 自动化的核心能力
定时任务(Cron):按照设定的时间自动执行任务,比如每天、每周、每月的固定操作。
Webhook:监听外部事件并自动响应,比如 GitHub push、TradingView 告警、传感器触发等。
真实价值:把你从重复性工作中解放出来,专注于更重要的事情。
哪些任务适合自动化?
真实用户场景
根据官方 Showcase 中的真实案例,以下是用户已经在使用的自动化场景:
开发工作流:
-
自动审查 GitHub PR 并推送结果到 Telegram -
Linear 项目状态同步 -
代码格式化和提交
个人效率:
-
每日早晨自动发送工作摘要 -
每周自动生成周报 -
定时提醒重要事项
家庭生活:
-
自动购物(Tesco 全自动购物) -
自动预订球场(Padel Booking) -
智能家居定时控制
金融分析:
-
TradingView 告警触发分析 -
定时获取股票/加密货币价格 -
自动生成交易报告
内容创作:
-
定时收集灵感 -
自动生成内容摘要 -
多平台一键发布
自动化价值判断
适合自动化的任务:
-
重复性高:每天/每周都要做的事 -
规律性强:有固定时间或触发条件 -
耗时但简单:不需要复杂决策 -
容易忘记:经常错过的事情
不适合自动化的任务:
-
需要创意思考 -
需要复杂判断 -
一次性操作 -
变化频繁的任务
定时任务配置(Cron)
Cron 表达式基础
Cron 是一个用于配置定时任务的标准格式,由 5 个字段组成:
分钟 小时 日期 月份 星期
* * * * *
|
|
|
|
|---|---|---|
|
|
|
0
30 = 半点 |
|
|
|
8
20 = 晚上 8 点 |
|
|
|
1
|
|
|
|
1
|
|
|
|
1
|
常用 Cron 表达式:
|
|
|
|---|---|
0 8 * * * |
|
0 */6 * * * |
|
0 0 * * 1 |
|
0 9 1 * * |
|
*/30 * * * * |
|
配置定时任务
编辑配置文件 ~/.openclaw/openclaw.json:
{
"automation":{
"crons":{
"morning-briefing":{
"schedule":"0 8 * * *",
"target":"telegram",
"message":"/briefing"
}
}
}
}
配置参数说明:
morning-briefing
:任务名称(可自定义) schedule
:Cron 表达式,定义执行时间 target
:目标平台(telegram、wechat、discord 等) message
:要发送的命令或消息
定时任务实例
以下是几个实用的定时任务配置:
每日晨报:
{
"daily-briefing":{
"schedule":"0 8 * * *",
"target":"telegram",
"message":"帮我生成今日工作摘要"
}
}
每日晚安:
{
"daily-summary":{
"schedule":"0 22 * * *",
"target":"telegram",
"message":"总结今天的工作"
}
}
每周周报:
{
"weekly-report":{
"schedule":"0 9 * * 1",
"target":"telegram",
"message":"生成本周工作总结"
}
}
每小时提醒喝水:
{
"drink-water":{
"schedule":"0 * * * *",
"target":"telegram",
"message":"该喝水了!"
}
}
成本考虑
使用自动化任务时,需要注意以下成本因素:
AI调用成本:
-
定时任务频率建议:最低5分钟间隔,避免过度调用 -
不同模型的成本差异: -
GPT-4o:约$0.005/1K tokens(适合复杂任务) -
GPT-4o-mini:约$0.00015/1K tokens(适合简单任务)
成本优化建议:
-
合理设置频率:
-
晨报/周报:每天/每周一次 -
提醒类:每小时或每2小时 -
实时响应:使用Webhook而非高频定时任务 -
选择合适的模型:
-
简单提醒:使用gpt-4o-mini -
代码审查:使用gpt-4o -
合并相似任务:
{
"automation":{
"crons":{
"morning-routine":{
"schedule":"0 8 * * *",
"message":"/briefing && /weather && /calendar"
}
}
}
}
月成本估算示例:
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Webhook 配置
什么是 Webhook?
Webhook 是一种”事件驱动”的自动化方式:当某个外部事件发生时(比如 GitHub 有新提交),OpenClaw 会自动收到通知并执行相应的任务。
与定时任务不同,Webhook 不需要固定时间,而是由外部事件触发。
配置 Webhook
在 ~/.openclaw/openclaw.json 中添加 Webhook 配置:
{
"automation":{
"webhooks":{
"github-events":{
"url":"/webhooks/github",
"events":["push","pull_request"]
}
}
}
}
配置参数说明:
url
:Webhook 接收路径 events
:要监听的事件类型
Webhook 安全配置
在生产环境中,建议验证Webhook请求的合法性,防止恶意请求触发自动化任务。
签名验证配置:
{
"automation":{
"webhooks":{
"github-events":{
"url":"/webhooks/github",
"events":["push","pull_request"],
"secret":"your-webhook-secret"
}
}
}
}
安全最佳实践:
- 使用密钥验证
:为每个Webhook设置唯一的secret - 限制事件类型
:只监听必要的事件,减少攻击面 - 监控异常请求
:记录来源IP和请求频率 - 定期轮换密钥
:建议每3-6个月更换webhook secret
Webhook 实例
GitHub 事件监听:
{
"github-webhook":{
"url":"/webhooks/github",
"events":["push","pull_request","issue"]
}
}
TradingView 告警:
{
"tradingview-alerts":{
"url":"/webhooks/tradingview",
"events":["alert"]
}
}
自定义服务触发:
{
"custom-trigger":{
"url":"/webhooks/custom",
"events":["update","notification"]
}
}
真实案例:自动预订球场
案例背景
用户 joshp123 创建了 Padel Booking 技能,实现全自动预订网球场:
问题:热门网球场很难预订,经常需要手动刷新页面抢场地
解决方案:使用 OpenClaw 自动化任务定时检查场地可用性,发现开放时段自动预订
结果:再也不会错过想要的时间段
实现步骤
步骤1:安装相关技能
openclaw skills install joshp123/padel-cli
步骤2:配置定时任务
在 ~/.openclaw/openclaw.json 中添加:
{
"automation":{
"crons":{
"check-booking":{
"schedule":"*/10 * * * *",
"target":"telegram",
"message":"/padel-check"
}
}
}
}
这个配置每 10 分钟检查一次场地可用性。
步骤3:配置自动预订
当检测到可用场地时,自动发送预订请求:
{
"automation":{
"webhooks":{
"padel-available":{
"url":"/webhooks/padel",
"events":["available"],
"action":"book"
}
}
}
}
步骤4:接收确认通知
预订成功后,在 Telegram 收到确认消息。
其他真实案例
案例1:自动代码审查
用户 bangnokia 创建了完整的 PR 审查自动化:
-
OpenCode 完成代码更改,打开 PR -
OpenClaw 自动审查 diff -
在 Telegram 中回复建议和明确的合并结论
配置示例:
{
"automation":{
"webhooks":{
"pr-review":{
"url":"/webhooks/github",
"events":["pull_request"],
"agent":"coder",
"action":"review"
}
}
}
}
案例2:自动购物
用户使用 Tesco Shop 技能实现全自动购物:
-
定时检查购物清单 -
自动下单购买 -
推送确认消息
完整配置示例
多自动化任务配置
以下是一个完整的自动化配置示例,包含多个定时任务和 Webhook:
{
"automation":{
"crons":{
"morning-briefing":{
"schedule":"0 8 * * *",
"target":"telegram",
"message":"/briefing"
},
"daily-summary":{
"schedule":"0 20 * * *",
"target":"telegram",
"message":"/summary"
},
"weekly-report":{
"schedule":"0 9 * * 1",
"target":"telegram",
"message":"/weekly"
},
"drink-water":{
"schedule":"0 */2 * * *",
"target":"telegram",
"message":"该喝水了!"
}
},
"webhooks":{
"github-events":{
"url":"/webhooks/github",
"events":["push","pull_request"]
},
"tradingview-alerts":{
"url":"/webhooks/tradingview",
"events":["alert"]
}
}
}
}
多代理自动化
可以为不同的自动化任务指定不同的代理:
{
"agents":{
"coder":{
"systemPrompt":"你是一个编程专家",
"model":"gpt-4o"
},
"assistant":{
"systemPrompt":"你是一个生活助手",
"model":"gpt-4o-mini"
}
},
"automation":{
"crons":{
"code-review":{
"schedule":"0 10 * * *",
"target":"telegram",
"agent":"coder",
"message":"/review-prs"
},
"morning-reminder":{
"schedule":"0 8 * * *",
"target":"telegram",
"agent":"assistant",
"message":"/morning-briefing"
}
}
}
}
常见问题
Q1:修改配置后如何生效?
A:修改配置文件后,需要重启 Gateway:
# 停止现有 Gateway(按 Ctrl+C)
# 重新启动
openclaw gateway --port18789--verbose
Q2:如何测试自动化任务?
A:可以使用以下方法:
- 缩短测试间隔
:把 */10 * * * *改为*/1 * * * *(每分钟) - 查看日志
:使用 --verbose查看详细日志 - 手动触发
:发送测试消息验证功能
Q3:定时任务没有执行怎么办?
A:按以下步骤排查:
- 检查 Cron 表达式
:确保格式正确 - 检查配置文件
:确保 JSON 格式无误 - 检查 Gateway 日志
:查看是否有错误信息 - 确认时区设置
:OpenClaw 默认使用系统时区
Q4:任务失败时如何处理?
A:OpenClaw提供以下错误处理机制:
- 查看失败日志
:
# 查看详细日志
openclaw gateway --verbose
# 查看特定任务执行历史
openclaw cron runs --id morning-briefing
-
自动重试:任务失败时会自动重试3次,间隔逐渐增加
-
配置告警:可以配置失败时发送通知:
{
"automation":{
"crons":{
"morning-briefing":{
"schedule":"0 8 * * *",
"target":"telegram",
"message":"/briefing",
"onError":{
"notify":"telegram",
"retry":true,
"maxRetries":3
}
}
}
}
}
- 手动重试
:失败的任务可以手动触发重试
Q5:可以配置多少个自动化任务?
A:理论上没有限制。但建议:
-
合并相似任务,避免过度分散 -
定期清理不再使用的任务 -
注意任务执行频率,避免资源浪费
性能优化建议:
-
任务频率控制:
-
最低间隔:5分钟 -
高频任务:考虑使用Webhook替代 -
批量处理:合并多个小任务 -
并发限制:
{
"automation":{
"settings":{
"maxConcurrent":5,
"queueSize":100
}
}
}
- 资源监控
: -
定期检查内存使用 -
监控任务执行时长 -
设置超时时间
Q6:如何验证配置是否正确?
A:使用以下方法验证配置:
- 检查JSON格式
:
# 验证JSON语法
cat ~/.openclaw/openclaw.json | jq .
- 测试Cron表达式
:
# 预览下次执行时间
openclaw cron preview "0 8 * * *"
- 测试Webhook
:
# 发送测试webhook
curl-X POST http://localhost:18789/webhooks/github \
-H"Content-Type: application/json"\
-d'{"event":"push"}'
- 查看任务状态
:
# 列出所有任务
openclaw cron list
# 查看任务详情
openclaw cron status --id morning-briefing
下一步
配置好自动化任务后,你可以:
- 安装更多技能
:为不同场景安装专业技能 - 配置语音功能
:使用语音命令触发自动化 - 探索 Canvas 功能
:可视化管理和监控自动化任务 - 学习高级技巧
:任务链、条件判断、错误处理等
本专栏接下来的文章会详细介绍这些内容。
进阶版预告
你正在阅读的是本专栏的基础版,涵盖 OpenClaw 的自动化任务配置、定时任务和 Webhook 基础使用。
进阶版将带你进入真正的深度实践:复杂任务编排、多服务联动、企业级自动化架构、监控和告警等高级主题,完整掌握 OpenClaw 自动化的强大能力。
专属交流群
关注本专栏公众号,在公众号首页可以添加我的企微。
加入后你会获得:进阶版更新提醒、开发者交流群、以及专栏相关的专属资源。
夜雨聆风