🤖HermesBlog
Hermes Feature Guides · Part 18/9/2026

Cron Troubleshooting Guide

Cron Troubleshooting Guide — easy-to-understand guide based on official docs

Think of it like setting your coffee maker to brew at 7 AM every day—Hermes cron jobs give your AI assistant the same kind of alarm clock, so it works on schedule without you hovering.

What Can Cron Jobs Do?

Hermes cron jobs are like a versatile butler. They can:

  • Run once or repeatedly—e.g., “remind me in 30 minutes” or “check the server every 2 hours”
  • Be controlled flexibly—pause, resume, modify, trigger immediately, or delete anytime
  • Attach skills—add zero, one, or multiple skills (like “summarize news” + “post to group”)
  • Deliver results multiple ways—back to chat, saved to a local file, or pushed to a specific platform
  • Run in two modes—normal mode (AI thinks and reasons) or “no-AI mode” (pure script, direct output, zero inference cost)

How to Create a Cron Job

In chat, use the /cron command—as easy as sending a message:

/cron add 30m "remind me to check the build"
/cron add "every 2h" "check server status"
/cron add "every 1h" "summarize new subscriptions" --skill blogwatcher

In the terminal, use hermes cron:

hermes cron create "every 2h" "check server status"
hermes cron create "every 1h" "summarize new subscriptions" --skill blogwatcher

Pitfall #1: Which Model Does the Job Run On?

This is the most common beginner trap. When a job executes, the model is chosen in this order:

  1. A model explicitly set for the job (highest priority)
  2. The cron.model config (default model for all cron jobs, independent of your chat model)
  3. The global default model (only used if neither of the above is set)

Critical warning: If a job uses the global default model and you change your chat model after creating it, the job will automatically skip execution. It won’t secretly use the new model—it will ask you to specify one explicitly. This prevents unattended jobs from silently switching to a paid model.

Best practice: Set a fixed cron model with hermes config set cron.model <model-name>. Then your chat model can change freely without affecting your scheduled jobs.

Pitfall #2: No Creating Jobs Inside Jobs

Hermes disables creating new cron jobs while a job is executing—this prevents infinite “job nesting.” If you see an error when calling cron tools inside a job, don’t panic. It’s a protective feature, not a bug.

Summary and Practical Tips

Cron jobs give your AI “autopilot,” but remember two core points:

  1. Always specify a model—use cron.model or set one per job to avoid jobs “going on strike” when your global model changes
  2. Don’t create jobs inside jobs—if you need multiple tasks, create them all upfront. Don’t expect a job to “birth” other jobs

Pro tip: When starting out, test with a one-time job first (e.g., /cron add 5m "test"). Confirm everything works before setting up recurring jobs. That way, when troubleshooting, you only check one point instead of untangling a mess of looping tasks.

📖 Official Docs

This article is based on the official Hermes Agent documentation:Official docs › guides/automate-with-cron