上午9时,Slack消息
昨天设定的夜间自动化工作没有执行的通知来了。在Windows设备和Mac mini两个环境中,用Claude Code构建的机器人首次「拒绝」执行了。
比起「为什么没执行?」,先想到的是「这是正确的信号吗?」
问题的本质
我设定让机器人在夜间(凌晨2点至5点)执行Google Sheets数据清理和多语言内容自动生成。结果撞上了Claude Code执行环境的资源限制。
限制条件:
• 连续执行时间限制(约30分钟)
• 非同步作业排程不支持
• 内存累积问题(长时间运行会发生)
作为非开发者的我,原本认为「电脑做不了」,但实际上是「用这个方式做不了」。
解决方案:重新设计自动化
第1步:任务分割 (Chunking)
将一个庞大的夜间工作分成3个小任务,每个都在10分钟内完成。
# 之前:耗时30分钟以上的整合工作
process_all_data_and_generate_content()
# 之后:10分钟单位的小任务
step_1_validate_sheet_data() # 5分钟
step_2_generate_descriptions() # 7分钟
step_3_update_translations() # 6分钟
第2步:外部排程器整合
利用Windows任务计划程序(Task Scheduler)设定3个工作按序执行。
• 凌晨2时10分:数据验证
• 凌晨2时25分:内容生成
• 凌晨2时40分:多语言翻译应用
第3步:故障备援逻辑
每个阶段失败时会自动回复到前一个阶段。选择「安全的自动化」而非「完美的自动化」。
try:
step_2_generate_descriptions()
except Exception as e:
rollback_to_step_1()
send_slack_alert("Step 2 failed, rolled back to Step 1")
学到的东西
自动化真正的限制不是技术,而是设计
一开始以为Claude Code不够强大。其实是我试图一次处理太多事务。
24小时运转不代表是好机器人
夜间集中处理和全天分散处理各有优缺点。既然我们团队适合夜间处理,就应该按此设计。
没有监控的自动化就是放置不管
我们很晚才发现这个故障,原因是没有每天早上检查日志。现在设定了Slack实时警报。
下一步
计划为面临类似问题的其他非开发者建立简单模板。将与梦幻团队分享「安全构建长时间自动化工作的5项检查清单」。
机器人的拒绝不是失败。这是系统传给我们的信息:「需要更聪明地设计」。