乐于分享
好东西不私藏

你的AI不用请安,它自己会来上班:Hermes Cron Job 定时任务实战

你的AI不用请安,它自己会来上班:Hermes Cron Job 定时任务实战

你的AI不用请安,它自己会来上班:Hermes Cron Job 定时任务实战

                                            图1

你有没有遇到过这种情况。

每天早上到公司,第一件事是让AI帮你汇总昨天的数据。每周一,手动让它生成上周的工作周报。每天下午五点,让它检查一遍所有项目的进度。

这些事不难,但每次都要手动触发——忘了就忘了,没有任何补救。

我以前也是这么干的,直到我发现 Hermes 的 Cron Job 功能。

Cron Job 是什么

                                             图2

简单说,就是给 AI 设一个闹钟。到了时间,自动触发一个对话,AI 按你预设的指令干活,然后把结果推送到你的 Telegram、微信、邮件或者直接存到桌面。

不需要你在电脑前。不需要手动输入命令。不需要记”今天还没让AI查进度”。

这跟 Linux 的 cron 一个逻辑,只不过它不是跑 shell 脚本,而是跑一个完整的 AI 对话。

适用场景

                                            图3

在开始操作之前,先看看哪些场景最适合用 Cron Job:

数据监控:每天早上8点,让AI检查昨天某个API的调用量、错误率,超过阈值就告警。

日报/周报:每周五下午5点自动汇总本周的任务完成情况,生成报告。

内容推送:每天上午10点自动搜集某个领域的新闻,整理成早报推送到群聊。

文件巡检:每小时检查某个文件夹,发现有新文件就自动处理(比如PDF转文本、图片分类)。

定时提醒:到了某个时间点自动检查依赖更新、证书到期、备份状态。

不适合的场景:需要实时响应的(用 Webhook)、每次指令差异很大的(手动对话更快)、涉及多轮复杂交互的(Cron Job 是一次性触发)。

实战:三步设置一个 Cron Job

                                             图4

我拿一个真实场景演示——每天早上9点,让AI检查服务器状态并推送报告到 Telegram。

第一步:创建 Cron Job

打开终端,输入:

hermes cron create "0 9 * * *"

这里的 "0 9  *" 是标准的 cron 表达式,表示每天早上9点。

Hermes 会进入交互式引导,让你填写:

  • Job 名称(可以用中文,比如”每日服务器巡检”)
  • 任务指令(给AI的prompt)
  • 消息投递目标(可以选 Telegram、Discord、Email 等)

如果你不喜欢交互式,也可以一行搞定:

hermes cron create "0 9 * * *" --name "每日服务器巡检" --prompt "用 terminal 检查服务器 CPU、内存、磁盘使用率,如果超过80%就告警。检查最近1小时错误日志数量,汇总成报告。" --delivery telegram

第二步:验证和测试

创建完成后,先手动触发一次看看效果:

hermes cron run <job_id>

这会立即执行一次这个任务,你可以检查输出是否符合预期。如果不对,用 hermes cron edit <job_id> 调整指令。

常见坑:AI执行任务后可能不会自动发送报告——你需要明确在 prompt 里写”把结果推送给我”。

修正后的 prompt 示例:

用 terminal 检查以下内容: 
1. 服务器 CPU 使用率(top -l 1) 
2. 内存使用率(vm_stat) 
3. 磁盘使用率(df -h) 
4. 最近1小时的错误日志(如果存在日志文件)  如果任何指标超过80%,标注为⚠️告警。 最后用一句话汇总状态,通过 delivery 推送给我。

第三步:管理运行中的 Job

hermes cron list         
 # 查看所有定时任务 
hermes cron status        
# 查看调度器状态 
hermes cron pause <id>   
 # 暂停某个任务 
hermes cron resume <id>  
 # 恢复任务 
hermes cron remove <id>   
# 删除任务

进阶技巧

使用模糊时间

cron 表达式太硬核?Hermes 支持更人性化的写法:

hermes cron create "30m"     
  # 每30分钟执行一次 
hermes cron create "every 2h" 
 # 每2小时 hermes cron create "daily"    
 # 每天执行

多个 Cron Job 串联

你可以设置多个相关的 Cron Job:

  • Job A:每天早上8点,抓取最新行业新闻
  • Job B:每天早上8:10,基于抓取的新闻写一篇摘要
  • Job C:每天早上8:15,把摘要推送到群聊

注意:不要试图让多个Job同时操作同一个文件——加一些时间间隔避免竞态。

配合 Memory 使用

如果你的任务需要”记住”上次执行的结果,可以在 prompt 里让 AI 把关键数据存到 memory:

prompt: "读取昨天的服务器指标(从 memory 获取),对比今天的指标,计算变化趋势,推送到 Telegram。完成后把今天的指标存到 memory。"

条件触发(高级玩法)

Cron Job 本身不能做条件判断,但你可以让 AI 在任务里自己判断:

prompt: "检查 data.csv 是否有更新(比对文件修改时间)。如果有更新,运行数据处理脚本。如果没有,直接结束,不推送报告。"

常见坑

坑1:prompt 太模糊。AI 不知道你要检查什么、用什么命令、输出什么格式。把步骤写清楚,像给实习生布置任务一样。

坑2:忘记配置 delivery。默认情况下 Cron Job 的输出不会自动推送。创建时选好 delivery 目标,或者在 prompt 里明确说”推送结果”。

坑3:时区问题。cron 表达式用的是系统时区,先确认你的服务器时区是否正确。

坑4:工具权限。如果你的任务需要执行 terminal 命令,确保 Hermes 有相应的权限。被 approvals 拦截的命令在 Cron Job 里不会执行,因为没有人点”允许”。

坑5:依赖链断裂。如果你改了一个文件路径、换了一个 API key,Cron Job 不会自动感知——它会在下一次执行时失败。定期跑一下 hermes cron run <id> 做冒烟测试。

业务价值

设置好 Cron Job 之后最大的感受是什么?不是省了几分钟手动操作的时间,而是”你不会忘了”。

该做的事不再依赖你的记忆力。AI 到了时间就干活,干完了把结果推给你。你只需要看结果,不需要记”该干了”。

对于一个每天被消息淹没的运营、产品、技术负责人来说,这种确定性比省时间更有价值。

开始试试吧。先用 hermes cron create "30m" 建一个最简单的——”每30分钟提醒我站起来喝水”。然后你就能体会到”AI 准时出现”是什么感觉了。

2026-05-04 03:22:44