毎朝6時と6時30分—Hermes cronで日次処理を組む
日次ノートの処理を手動で確認した後、Hermes Agentのcronへ二つのジョブを登録しました。一つは朝6時のAIニュース確認、もう一つは6時30分の前日記録統合です。
30分ずらした理由
記録統合はニュースジョブの出力も材料にします。同時刻に起動すると、どちらが先に終わるか分かりません。依存する処理は開始時刻をずらし、後段が前段の最終成功を確認する設計にします。
“`text
06:00 ニュース収集・要約
↓ 成功結果を保存
06:30 前日分のPLAUD・メモ・ニュース・ChatGPTを統合
↓
Obsidian日次ノート
“`
単に30分待つだけでなく、ニュース出力が対象日と一致するか、成功した実行結果かを確認します。見つからなければ「ニュース取得なし」と明示して日次処理自体は続けられます。
cron登録後に見るもの
“`bash
hermes cron list
hermes cron status
hermes cron runs JOB_ID
“`
次回実行時刻、タイムゾーン、active状態、直近結果、配信先、実行スクリプトを確認します。最初は手動実行し、生成されたノートとログを読みます。
Gatewayが止まると自動実行されない
HermesのローカルcronはGatewayが実行基盤です。ジョブがactiveでもGatewayが止まっていれば予定時刻に動きません。手元では2026年7月20日朝の二ジョブが成功している一方、同日の確認時点で`Gateway is not running`という警告が出ました。これは「直近成功」と「次回も動く」が同義ではない例です。
記事公開時点では、Gatewayサービスの復旧と自動起動確認を未完了事項として扱います。成功した実績だけを見て常時稼働と断定しません。
ヘッドレス実行の安全設定
人が応答できないcronでは、危険な操作の承認待ちが問題になります。Hermes Agentの公式Securityでは、cron時の危険コマンドを既定で拒否する`cron_mode: deny`が案内されています。自動ジョブへ外部書き込みを許可する場合も、専用Toolの条件と保存先制限を使います。
再現チェック
- [ ] 依存ジョブの時刻をずらした
- [ ] 前段の成功と対象日を後段で確認する
- [ ] 登録直後に手動実行した
- [ ] Gateway稼働を別に確認した
- [ ] 最終成功時刻と失敗通知がある
- [ ] cronの危険操作を既定拒否にした
次回は、Obsidian連携をLocal REST API案から公式CLIへ切り替えた経緯をまとめます。
参考にした一次情報
- [Hermes Agent Cron Scheduling](https://hermes-agent.nousresearch.com/docs/user-guide/features/cron)
- [Hermes Agent Security—Approval Modes](https://hermes-agent.nousresearch.com/docs/user-guide/security/)
- [Hermes Agent公式リポジトリ](https://github.com/NousResearch/hermes-agent)
