NousResearch/hermes-agent · error · ValueError
monitor_script and monitor_url are mutually exclusive — a jo
Error message
monitor_script and monitor_url are mutually exclusive — a job can only have one monitor source.
What it means
Error "monitor_script and monitor_url are mutually exclusive — a job can only have one monitor source." thrown in NousResearch/hermes-agent.
Source
Thrown at cron/jobs.py:1552
_normalize_job_optional_text(job.get("base_url"), strip_trailing_slash=True),
bool(job.get("no_agent")),
)
def _validate_job_mode_invariants(
monitor_script: Optional[str],
monitor_url: Optional[str],
no_agent: bool,
script: Optional[str],
) -> None:
"""Shared create/update validation for job execution-mode invariants.
ONE owner for the class: create_job and update_job both call this so an
invariant enforced at create time cannot be violated through the update
door (monitor jobs silently degrading when no_agent is flipped on, etc.).
"""
if monitor_script and monitor_url:
raise ValueError(
"monitor_script and monitor_url are mutually exclusive — a job "
"can only have one monitor source."
)
if (monitor_script or monitor_url) and no_agent:
raise ValueError(
"monitor_script/monitor_url cannot be combined with no_agent=True — "
"the whole point of a monitor job is to suppress or wake the AGENT "
"based on source changes. Use a plain no_agent script job instead."
)
if no_agent and not script:
raise ValueError(
"no_agent=True requires a script — with no agent and no script "
"there is nothing for the job to run."
)
def create_job(
prompt: Optional[str],View on GitHub (pinned to c896c09c42)
Solutions
- Configure only one monitor source: monitor_script or monitor_url, not both.
When it happens
Trigger: Thrown at cron/jobs.py:1552 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/0536d4ccc9546d3b.
Report an issue: GitHub.