
概述 #
OpenClaw 的核心价值在于自动化。本文讲解如何构建完整的自动化系统。
自动化核心:cron + message #
工作原理 #
cron (调度器)
↓
OpenClaw Agent
↓
message (推送)
↓
用户 (Telegram/WhatsApp/Slack)cron 任务配置 #
基础配置 #
{
"cron": {
"enabled": true,
"jobs": [
{
"name": "daily-brief",
"schedule": "0 9 * * *",
"prompt": "生成今日简报",
"target": "direct"
}
]
}
}定时任务示例 #
{
"cron": {
"jobs": [
{
"name": "morning-brief",
"schedule": "0 7 * * *",
"prompt": "生成清晨简报:天气、日程、未读邮件",
"model": "bailian/qwen3.5-plus"
},
{
"name": " noon-check",
"schedule": "0 12 * * *",
"prompt": "检查午餐选择建议"
},
{
"name": "evening-summary",
"schedule": "0 18 * * *",
"prompt": "生成今日总结:完成任务、未完成项、明日计划"
},
{
"name": "weekly-review",
"schedule": "0 10 * * 1",
"prompt": "生成周报:本周成就、问题、下周计划"
},
{
"name": "git-status",
"schedule": "0 */2 * * *",
"prompt": "检查代码仓库状态"
}
]
}
}实战:Daily Brief 系统 #
任务分解 #
- 获取今日日程
- 检查未读邮件
- 获取天气预报
- 汇总生成简报
- 发送到 Telegram
实现代码 #
{
"cron": {
"jobs": [
{
"name": "daily-brief",
"schedule": "0 7 0 * * *",
"prompt": "你是一位专业的助理,负责生成每日简报。\n\n请生成今日简报,包含以下内容:\n\n1. 今日天气:使用 weather 工具获取\n2. 今日日程:使用 gog 日历工具获取未来24小时事件\n3. 待回复邮件:使用 gog 邮件工具获取未读且重要的邮件\n4. 今日提醒:使用记忆工具获取重要的 reminder\n\n格式要求:\n- 使用 Markdown 格式\n- 每个部分用二级标题\n- 简洁明了,不超过 500 字\n- 最后添加「Good Morning!」\n\n请直接输出简报内容,不要添加额外说明。",
"target": "user:ou_0a17656201924ba55e34b8ad7e0d3f2d"
}
]
}
}详细的 cron 配置 #
{
"cron": {
"enabled": true,
"jobs": [
{
"name": "daily-brief-zh",
"schedule": "0 7 * * *",
"timezone": "Asia/Shanghai",
"prompt": "你是一位专业的中文助理。\n\n请生成今日简报,包含:\n\n1. 今日天气:获取北京天气
2. 今日日程:获取未来24小时API日程事件
3. 待回复邮件:检查未读重要邮件
4. 待办事项:查看未完成的待办任务
要求:
- 使用 Markdown 格式
- 语言:中文
- 长度:300-500 字
- 添加 emoji 增强可读性
- 提供简短建议
直接输出简报内容。",
"model": "bailian/qwen3.5-plus"
},
{
"name": "mail-trie",
"schedule": "0 10,15 * * *",
"prompt": "检收索取收件箱,分类邮件:\n\n1. 紧急:需要立即回复\n2. 重要:今日内回复\n3. 一般:漂流\n4. 垃圾:归档\n\n输出简短分类摘要。",
"model": "bailian/qwen3-plus"
},
{
"name": "ci-cd-monitor",
"schedule": "0 * * * *",
"prompt": "检查代码仓库的 CI/CD 状态,报告失败的构建。\n\n使用 github 工具获取仓库状态。",
"tools": ["github"]
},
{
"name": "github-trending",
"schedule": "0 9 * * 1-5",
"prompt": "收集 GitHub Trending Python/Go/JS 项目,生成本周推荐列表。",
"tools": ["web_search", "web_fetch"]
}
]
}
}消息推送配置 #
Telegram 配置 #
{
"irc": {
"server": "irc.freenode.net:6697",
"use_ssl": true,
"nickname": "openclaw-bot",
"channels": ["#openclaw"]
}
}WhatsApp 配置 #
{
"wacli": {
"enabled": true,
"webhook_url": "https://your-domain.com/webhook",
"phone_number": "+8613800138000"
}
}状态监控系统 #
系统监控 #
{
"cron": {
"jobs": [
{
"name": "health-check",
"schedule": "0 * * * *",
"prompt": "检查系统健康状态:磁盘、内存、网络。\n\n使用 exec 工具运行检查命令:\n- df -h (磁盘)\n- free -h (内存)\n- ping -c 3 8.8.8.8 (网络)\n\n将结果格式化输出。",
"tools": ["exec"]
},
{
"name": "disk-warning",
"schedule": "0 */6 * * *",
"prompt": "检查磁盘使用率,如果 > 80% 发出警告。",
"tools": ["exec"]
}
]
}
}邮件处理自动化 #
邮件分类 #
{
"cron": {
"jobs": [
{
"name": "email-categorize",
"schedule": "0 */2 * * *",
"prompt": "检查未读邮件,进行分类:\n\n1. 工作相关:标记为重要\n2. 会议邀请:添加到日历\n3. 营销邮件:归档\n4. 垃圾邮件:删除\n\n使用 gog 工具处理邮件。",
"tools": ["gog"]
}
]
}
}多 Agent 协作 #
架构设计 #
Main Agent (调度器)
├── Research Agent (搜索)
├── Writing Agent (写作)
├── Code Agent (编程)
└── Review Agent (审查)配置示例 #
{
"agents": {
"research": {
"prompt": "你是一位专业的研究员,擅长搜索和整理信息。",
"tools": ["web_search", "web_fetch", "memory_search"]
},
"writing": {
"prompt": "你是一位经验丰富的技术作家,擅长撰写清晰、准确的技术文档。",
"tools": ["read", "write", "edit", "memory_search"]
},
"coding": {
"prompt": "你是一位高级工程师,代码质量高,善于解决问题。",
"tools": ["exec", "read", "write", "edit"]
}
}
}协作流程 #
{
"cron": {
"jobs": [
{
"name": "content-research",
"schedule": "0 8 * * 1-5",
"prompt": "请搜索并整理本周技术热点:\n1. GitHub Trending\n2. Hacker News 热门\n3. arXiv 最新论文\n\n输出整理后的要点列表。",
"target_agent": "research"
},
{
"name": "write-digest",
"schedule": "0 9 * * 1-5",
"prompt": "请基于以下要点,撰写技术周报:\n\n[要点列表]\n\n要求:\n- 中文撰写\n- 每个主题 300-500 字\n- 总字数 2000-3000 字\n- 添加技术深度和实践指导",
"target_agent": "writing"
}
]
}
}最佳实践 #
1. 任务拆分 #
不要在一个任务中做太多事情:
{
"cron": {
"jobs": [
{
"name": "get-weather",
"schedule": "0 7 * * *",
"prompt": "获取天气预报"
},
{
"name": "get-calendar",
"schedule": "0 7 * * *",
"prompt": "获取日程"
},
{
"name": "get-emails",
"schedule": "0 7 * * *",
"prompt": "获取未读邮件"
}
]
}
}2. 错误处理 #
{
"cron": {
"jobs": [
{
"name": "daily-brief",
"schedule": "0 9 * * *",
"on_error": "notify",
"error_message": "每日简报生成失败,请检查配置。",
"retry": 3,
"retry_delay": "5m"
}
]
}
}3. 限流和保护 #
{
"tools": {
"allow": ["exec", "web_search", "web_fetch"],
"limits": {
"exec": {
"max_calls_per_hour": 10,
"max_calls_per_day": 50
},
"web_search": {
"max_calls_per_hour": 20
}
}
}
}安全考虑 #
1. 环境变量 #
{
"env": {
"OPENAI_API_KEY": "${OPENAI_API_KEY}",
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
}
}2. 访问控制 #
{
"permissions": {
"allow_ranges": ["192.168.1.0/24"],
"deny_ranges": ["0.0.0.0/0"]
}
}3. 审计日志 #
{
"logs": {
"level": "info",
"output": "/var/log/openclaw/cron.log",
"rotate": {
"max_size_mb": 100,
"max_age_days": 30
}
}
}故障排查 #
查看 cron 状态 #
openclaw cron status
# 查看任务执行历史
openclaw cron history调试任务 #
# 手动执行任务
openclaw cron run daily-brief
# 查看任务日志
openclaw cron logs daily-brief总结 #
OpenClaw 的自动化系统强大而灵活,合理配置可以大幅提升工作效率。
相关链接 #
[1] OpenClaw 部署成本指南
https://yu-wenhao.com/en/blog/2026-02-01-openclaw-deploy-cost-guide
[2] OpenClaw 安全配置
https://yu-wenhao.com/en/blog/2026-02-04-is-openclaw-safe-security-guide