记录一个后端开发者如何从零开始搭建自己的夜间自动化系统,每天节省30分钟
📖 前言
作为一名后端开发者,我一直在思考一个问题:能不能让AI在我睡觉的时候悄悄工作,第二天醒来就能看到成果?
经过几天的实践,我实现了一个完整的夜间自动化系统:
✅ 每天早上8点自动发送早间简报到飞书
✅ 夜间自动收集AI行业最新动态
✅ 定时任务自动执行和状态监控
✅ 任务看板自动归档旧任务
这个系统每天为我节省30分钟,一个月就是15小时。
这些时间可以用来写文章、学习新技术、开发自己的项目,或者陪伴家人。
🏗️ 一、系统架构
1.1 技术栈选择
我的系统运行在树莓派上,技术栈很简洁:
OpenClaw (AI助手框架)
├── cron jobs (定时任务调度)
├── daily-report skill (早间简报生成)
├── auto_execute_tasks.py (任务自动执行)
└── 爱弥儿任务看板 (任务管理)
系统架构图
┌─────────────────────────────────────────┐
│ OpenClaw Gateway │
│ (调度器 + AI执行引擎) │
└────────────┬────────────────────────┘
│
┌────────┴────────┬────────────┐
│ │ │
┌───▼───┐ ┌────▼────┐ ┌────▼────┐
│Cron │ │AI Agent │ │Skill │
│Scheduler│ │ (爱弥儿) │ │ (daily │
└─────────┘ └────┬────┘ │-report) │
│ └─────────┘
┌──────────┴──────────┐
│ 各种定时任务 │
├─────────┬──────────┤
┌────▼─────┐ ┌──▼──────┐
│早间简报 │ │素材收集 │
│(08:00) │ │(02:00) │
└───────────┘ └─────────┘
💻 二、核心功能实现
2.1 自动生成早间简报
目标:每天早上8点自动发送包含系统状态、昨日记录、素材摘要的简报到飞书。
实现内容:
- 系统状态收集(磁盘、内存、负载)
- 昨日memory记录检查
- 对话总结统计
- 素材摘要提取
- 自动发送到飞书
踩坑:
- 时间格式不统一 → 统一使用
%Y-%m-%d - 路径带空格 → 所有路径用引号包裹
- 权限问题 → 添加
chmod +x赋予执行权限 - 记住,让OpenClaw按照你自己的要求和格式创建每日简报的Skill
2.2 自动执行任务
目标:分配给AI的任务,在指定时间自动执行。
数据库设计:
ALTER TABLE tasks ADD COLUMN assignee TEXT DEFAULT 'user';
ALTER TABLE tasks ADD COLUMN scheduled_time TEXT;
assignee字段:
user- 用户手动执行ai- AI自动执行subagent- 子代理执行
任务处理器:
TASK_HANDLERS = {
'daily-report': 'bash .../send_report.sh feishu',
'简报': 'bash .../send_report.sh feishu',
'更新': 'openclaw update',
}
踩坑:
- 时间解析错误 → 统一使用
'%Y-%m-%d %H:%M' - 死循环执行 → 完成后立即标记为done
- 数据库锁定 → 添加
timeout=10.0参数
2.3 定时任务配置
Cron表达式:
早间简报:0 8 * * * (每天8点)
素材收集:0 2 * * * (每天凌晨2点)
自动执行:0 * * * * (每分钟检查,实际每5分钟)
Cron表达式解释:
0 8 * * *
│ │ │ │ │
│ │ │ │ └─ 星期几 (0-6, 0=周日)
│ │ │ └─── 月份 (1-12)
│ │ └───── 日期 (1-31)
│ └─────── 小时 (0-23)
└───────── 分钟 (0-59)
踩坑:
- 时区问题 → 指定
"tz": "Asia/Shanghai" - 任务竞争 → 添加
staggerMs错峰启动 - 失败未通知 → 配置
consecutiveErrors阈值,超过后自动通知
⏰ 三、完整的一天
02:00 - 夜间素材收集
爱弥儿自动醒来,使用Tavily搜索收集昨日的AI行业动态。
🤖 爱弥儿开始夜间素材收集...
✅ 收集到5篇行业动态
✅ 生成收集摘要
✅ 归档到第二大脑
08:00 - 早间简报生成并发送
爱弥儿再次醒来,生成完整的早间简报并发送到飞书。
📊 收集系统状态...
✅ 磁盘: 23G/60G (38%)
✅ 内存: 3.2G/8G (40%)
✅ 负载: 0.45, 0.52, 0.48
📝 检查昨日memory...
✅ 发现 2026-02-21.md 记录
🗣️ 统计会话...
✅ 昨日会话数: 23个
📚 检查素材收集...
✅ 新增素材: 2篇
⏰ 检查定时任务...
✅ 定时任务总数: 5
✅ 昨日执行: 1个
💾 生成简报完成
📤 发送到飞书...
✅ 发送成功
09:00 - 我醒来查看飞书
打开飞书,看到完整的早间简报:
- 系统状态正常 ✅
- 昨日记录完整 ✅
- 素材已收集 ✅
- 定时任务正常运行 ✅
一切井然有序,美好的一天开始了! ☀️
⚠️ 四、遇到的问题和解决方案
问题1:早间简报发送失败
现象:08:00定时任务执行,但简报没有发送到飞书
原因:飞书插件版本过旧(2026.2.19),最新版本是2026.2.21
解决:
npm update -g @openclaw/feishu
openclaw gateway restart
教训:定期检查插件更新
问题2:任务没有自动归档
现象:任务完成后,旧任务没有自动归档到归档表
原因:任务执行完成后只更新为in_progress,没有更新为done
解决:完成时立即标记为done,触发自动归档
教训:确保状态流转完整
问题3:数据库锁定
现象:多个进程同时访问数据库,导致操作失败
原因:Gateway重启时,旧的进程没有完全停止
解决:pkill 旧进程,添加超时
教训:确保单例运行,合理设置超时
📈 五、系统收益
5.1 时间节省
每天节省30分钟:
- 查看系统状态:2分钟 → 自动
- 阅读AI动态:15分钟 → 自动
- 整理素材:10分钟 → 自动
- 发送简报:3分钟 → 自动
每月节省15小时,每年节省180小时
5.2 信息质量提升
之前:被动接收、信息碎片化、无法追踪 现在:主动收集、系统化整理、可追溯来源
5.3 生产力提升
- 任务自动追踪和实时更新
- 自动执行和自动归档
- 自动生成早间简报
💡 六、给你的建议
1. 从小处开始
- 先实现一个简单的定时任务
- 例如:每天早上发送一句励志语录
- 成功后再逐步增加功能
2. 善用现有工具
- 不要重复造轮子
- OpenClaw、GitHub Actions、IFTTT等
- 组合使用效果更好
3. 充分测试
- 先在测试环境验证
- 手动执行验证结果
- 再配置为自动任务
4. 记录日志
- 所有的自动化都要有日志
- 出问题时能快速定位
- 优化时有数据支撑
5. 持续迭代
- 不要追求一步到位
- 先跑起来,再持续优化
- 记录每次改进的收获
📝 结语
经过几天的实践,我的夜间自动化系统已经稳定运行:
✅ 每天08:00自动发送早间简报到飞书
✅ 每天02:00自动收集AI行业动态
✅ 每小时自动检查并执行任务
✅ 任务完成后自动归档
我学会了一个重要道理:
自动化不是减少工作量,而是让工作更有价值。
机器做的,是重复的、机械的、可预测的工作。人做的,是创造性的、决策性的、需要智慧的工作。
这才是AI时代人机协作的正确姿势。
感谢阅读!如果你也想搭建自己的自动化系统,欢迎在评论区讨论。