🤖HermesBlog
Hermes 实战教程 · 第17篇2026/8/9· Easy Understand Hermes Agent

实战:定时任务排错指南

Hermes 实战教程第17篇:定时任务排错。常见问题与修复。

这篇教程帮你解决 Hermes Agent 定时任务“不干活”或“干错活”的问题,按步骤排查即可。


第一步:任务根本没触发?先确认它“活着”

想象定时任务是一个闹钟——第一步是确认闹钟真的设上了、没被关掉。

hermes cron list

查看任务状态是否为 [active]。如果是 [completed],说明重复次数用完了,用 hermes cron edit <任务ID> 重置。另外,CLI 聊天窗口不会自动触发定时任务,必须保持网关(gateway)在后台运行:

hermes gateway start   # 后台运行

第二步:时间对不对?检查“闹钟”设置

时间格式写错会静默失效。常见写法:

表达式 含义
0 9 * * * 每天早上9点
every 2h 从现在起每2小时
30m 30分钟后执行一次(一次性)

一次性任务执行完会从列表消失,这是正常现象。另外,任务用的是本机时区,用 date 命令确认系统时间无误。

第三步:任务跑了,但结果没送到?

这就像快递员把包裹送错了地址。检查投递目标是否配置正确:

# 投递到 Telegram 需要环境变量
TELEGRAM_BOT_TOKEN=你的token

投递目标区分大小写,比如 telegram 不能写成 Telegram。如果目标平台没配置好,任务照常运行,但结果会悄悄丢掉——用 hermes cron list 查看 last_error 字段。

第四步:任务输出了,但被“静音”了

如果任务结果包含 [SILENT] 标记,Hermes 会认为“无需打扰”,主动抑制投递。这是监控类任务的常用技巧,但注意别在提示词里让 AI 把 [SILENT] 写进长回复中——只要出现这个标记,整条消息都会被吞掉。

第五步:技能(Skill)加载失败?

hermes skills list   # 确认技能已安装

技能名称区分大小写,且必须与安装的文件夹名完全一致。另外,定时任务环境下无法使用交互式工具(如手动确认、直接发消息),如果技能依赖这些功能就会失败。

第六步:任务报错?看日志找线索

hermes logs          # 查看运行日志
ls ~/.hermes/logs/   # 或直接看 agent.log 和 errors.log

常见问题:脚本路径必须是绝对路径;技能不会自动同步到新机器,换机器后要重新安装;任务默认 600 秒无活动会超时,长时间任务建议用脚本处理数据、只输出结果。


总结

定时任务排错就像修水管——按顺序检查“任务是否存在→时间对不对→网关是否运行→投递是否成功→技能是否加载”,90% 的问题都能解决。记住三个最常用的诊断命令:

hermes cron list       # 查看所有任务状态
hermes cron run <ID>   # 手动触发一次,观察输出
hermes logs            # 查看运行日志

下篇预告:实战:用 Hermes Agent 搭建个人日报系统——把今天的排错技巧用起来,让 AI 每天早上自动汇总新闻、天气和待办事项。

📖 官方文档

本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › guides/automate-with-cron