NousResearch/hermes-agent · error · CronSchedulerRegistrationError

Cron job '{job_id}' was saved, but its first scheduler regis

Error message

Cron job '{job_id}' was saved, but its first scheduler registration failed ({cause_type}). Do not create a duplicate. Pause/resume or update the job to retry registration.

What it means

Error "Cron job '{job_id}' was saved, but its first scheduler registration failed ({cause_type}). Do not create a duplicate. Pause/resume or update the job to retry registration." thrown in NousResearch/hermes-agent.

Source

Thrown at cron/scheduler.py:5144

        return {
            "error": str(self),
            "job_id": self.job["id"],
            "job_saved": True,
            "scheduler_registered": False,
            "retry_create": False,
        }


def create_job_with_scheduler_registration(**kwargs) -> dict:
    """Persist one job and register its first trigger with the active provider."""
    from cron.jobs import create_job
    from cron.scheduler_provider import resolve_cron_scheduler

    job = create_job(**kwargs)
    try:
        resolve_cron_scheduler().register_job(job)
    except Exception as exc:
        raise CronSchedulerRegistrationError(job, exc) from exc
    return job


def tick(
    verbose: bool = True,
    adapters=None,
    loop=None,
    sync: bool = True,
    *,
    can_dispatch=None,
):
    """
    Check and run all due jobs.
    
    Uses a file lock so only one tick runs at a time, even if the gateway's
    in-process ticker and a standalone daemon or manual tick overlap.
    
    Args:

View on GitHub (pinned to c896c09c42)

Solutions

  1. Do not create a duplicate job; pause/resume or update the saved job to retry scheduler registration.
  2. Check the registration cause type in the message and fix the underlying error.

When it happens

Trigger: Thrown at cron/scheduler.py:5144 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of NousResearch/hermes-agent@c896c09c42 (2026-08-14). Data as JSON: /api/errors/8af72b272b4414ba. Report an issue: GitHub.