Hermes 操作者可以为周期任务附加经过审核的 skill,让每次运行从相同流程开始。真正有用的检查是:一次定时运行是否读取了获准的输入、生成了合格的本地报告,并记录了实际使用的模型与主机。本指南面向掌控 Hermes 配置环境、供应商账户和网关主机的操作者。BIG CHANGE 于 2026 年 10 月 19 日查阅了官方 cron 手册及相关文档;我们没有安装 Hermes,也没有运行任务。

关键变化

  • 发生了什么变化: Hermes 能在定时提示词之前加载已审核的 skill,在指定工作区运行,并将结果保存在本地。操作者可以创建暂停状态的任务,检查后再以同一任务 ID 恢复。
  • 为什么重要: 可重复的信息处理任务能够使用同一套已审核流程。不过,操作者仍须将一次到期运行与获准输入进行核对;保存的时间表无法证明实际运行的 skill 版本或模型,也不能证明报告准确。
  • 需要关注什么: 是否继续使用,取决于网关主机能否保持可用,以及首次运行是否满足报告标准。让任务保持活动前,检查运行尝试、输出以及可获得的供应商和模型证据;发生任何中断后,都要重新检查其确切状态。

开始计划任务之前

选择一个小型、获准使用的输入文件和一个现有的隔离工作区。确定一份正确的简短报告应包含什么、如何引用输入,以及缺失哪些数据时必须停止。首次任务仅用于提供信息:不向外部发布、不修改记录,也不在输出中包含秘密。另行取得设置周期运行的授权。还需要已配置的 Hermes、可用的模型及供应商连接和凭据,以及能在定时运行期间保持可用的网关主机。检查已安装的版本和 hermes cron create --help,因为公开手册未逐项注明选项所属版本。快速入门指南介绍初始设置;供应商指南介绍推理连接路径。可以先用一次无风险的单次对话检查该路径,再设置周期任务,但这并不能证明定时运行成功。

一个 skill 是经过审核的 SKILL.md 操作流程,而不是权限边界。将 skills/local-input-report/SKILL.md 放在实际所属配置环境的 HERMES_HOME 下;~/.hermes/skills/local-input-report/SKILL.md 是默认配置环境的示例。使用前,先按获准输入和报告标准调整以下最小流程:

Markdown
---
name: local-input-report
description: Report checked facts from one approved local input.
---

Read only <absolute-permitted-input-path> in the job workspace. In a short report, name that file, state only facts supported by it, and cite the relevant part. Flag missing data and stop. Do not send messages or change files or external records.

检查实际文件,并在同一配置环境中使用 hermes skills list 确认 Hermes 能发现它。如果改用项目本地的 skill,skills 手册要求在非交互式 cron 运行前,先完成交互式信任与扫描决定;cron 本身不会授予信任。另行审查已启用工具和实际文件访问权限。记录 skill 的内容或版本,不能只凭名称代替审核。

创建一个任务,然后检查

  1. 所有命令都应针对同一所属配置环境运行:以下示例使用默认环境;具名环境则需要在每条命令中使用其选择器,例如 hermes -p NAME。使用 hermes model 检查该环境的当前模型,使用 hermes cron status 检查网关和定时触发器的健康状态。决定是明确固定供应商与模型,还是固定当前主模型。单个任务的固定选择优先于 cron.model 和 cron.model_provider;这两个全局任务设置又优先于当前主模型。因此,未固定选择的任务可能随适用默认值的变化而更换模型。保存的配置仍不能证明实际运行使用了哪个模型。
  2. 取得周期运行授权后,将以下 POSIX shell 命令行示例调整为已审核的 skill 和现有工作区的绝对路径。先在已安装的帮助中确认每个参数。示例以反斜杠续行,属于 POSIX shell 语法;其他平台应采用相应 shell 的语法。提示词有意限制范围,本地交付会把首次输出保存在所属配置环境中:
Terminal
   hermes cron create "every 1h" \
     "Use the attached reviewed skill to read only the permitted input. Return a short local report with its source and missing-data note. Do not send or change external records." \
     --skill local-input-report \
     --name "Local input report" \
     --workdir "/absolute/existing/workspace" \
     --pin \
     --paused --paused-reason "Awaiting owner review"

执行前,替换工作区路径,选择唯一任务名,并替换 skill 文件中的输入占位符。命令行默认使用本地交付。cron 手册也记载了用于明确固定选择的 --model 和 --provider。选择这种方式时,请使用实际安装环境中的供应商和模型标识符。不要把凭据写进提示词或 shell 历史。--workdir 会让 Hermes 发现工作区指令;未设置时,cron 会脱离代码仓库运行。新建且暂停的任务在恢复前不会有 next_run_at。

本地交付只决定最终报告保存到哪里。提示词及用于推理的任何输入内容仍沿所选模型及供应商路径处理;恢复任务前,应批准这条数据流。

  1. 保留返回的任务 ID。使用 hermes cron list 回读 skill、工作区、交付方式和暂停状态;使用 hermes cron status 检查调度器健康状态。当前官方 CLI 源代码的列表行不显示已保存的模型或供应商字段。请在所属配置环境中,针对 cron/jobs.json 仅以只读方式检查确切 ID 的记录,以核对已保存的固定选择、模型、供应商和推理覆盖设置;也可使用已安装版本确实支持的任务详情视图。不要打印凭据。将已保存设置与获准文件、报告标准和范围核对。需要时,用 hermes cron edit <job_id> ... 修正同一任务,没有必要再建一个副本。
  2. 准备好观察到期运行时,使用 hermes cron resume <job_id>。回读实际的下次运行时刻,以及网关最近一次成功触发时间。网关约每分钟检查一次;前台运行的网关需要主机保持开机。hermes cron tick 不会为代理任务启动网关。服务或可在重启后存续的工作进程有各自主机要求,应检查所选主机,不要假定笔记本关机或重启后仍有运行保证。
  3. 在一个预定时刻到期后,检查 hermes cron runs <job_id> --limit 20 以及所属配置环境下 cron/output/<job_id>/ 中的对应文件。将报告与实际输入和验收标准比较。检查该次尝试的计划时间、领取时间、最终状态,以及可获得的记录或运行遥测,确认实际供应商和模型。若已安装环境的记录无法显示这些信息,就将其记为未知。调度器的一次触发、一次获准开始的运行,或 completed 状态,都不能单独证明报告合格。
  4. 使用 hermes cron pause <job_id> 暂停确切任务,再通过 hermes cron list 回读状态。这会阻止今后的自动调度,但不会终止正在进行的尝试。即使任务处于暂停状态,显式手动运行仍是操作者的覆盖操作。保留历史和本地输出,再决定任务是否符合验收标准。

失败时,恢复同一任务

先阅读确切运行尝试及其输出,再查看任务的 last_error、last_fire_error 和 last_delivery_error(如果存在)。hermes cron status 能区分触发器停止、cron 存储不可写,与任务实际运行后失败。修改供应商设置前,先检查所属配置环境和网关主机:交互式 shell 与服务可能读取不同凭据。仅修正受影响设置,重新核对状态,并仅在范围仍获批准时恢复同一 ID。交付情况不明确时,重试前先检查目标位置;适配器可能已经接受发送,之后才发生超时。

该 cron 手册的准入恢复章节说明,中断的执行或找不到的预备触发会保持暂停,等待检查;执行历史章节则说明,未知尝试从不自动重跑。重启后,在决定如何恢复前,检查已安装任务的暂停状态及确切尝试身份。不要重复触发活跃尝试来测试重叠。Hermes 有调度触发锁、防止同一任务再次准入的运行中保护,以及可配置的整体并发上限。这些控制不能保证外部系统中的效果恰好发生一次。

供应商调用和持续在线的主机都可能产生费用。先处理一个有界输入,在到期运行后检查供应商用量,再决定是否持续运行及其频率。文档中运行前的脚本超时不会限制 skill 驱动的一轮模型处理或账单;清理和空闲时间限制是另行设置的。写在提示词中的截止时间只是指令,不是强制支出上限。如果不能接受无明确上限的模型处理或不确定的副作用,就保持任务暂停,直到具备合适控制。本指南报告文档记载的行为,并非实测运行、价格、可靠性结果或节省承诺。