Docs › OpenClaw scheduled task monitoring with RunVouch
OpenClaw scheduled task monitoring with RunVouch
OpenClaw tasks on a schedule are agents talking to themselves at 7 in the morning: nobody is watching when the task does not start, or starts and writes nothing. The verified-run skill turns each task into a run with a start, an end and a file that proves the work.
How it runs on OpenClaw (verified-run skill)
Copy integrations/openclaw/verified-run (and optionally runvouch, the check-in skill for long sessions) into ~/.openclaw/skills/, or load the folder as a plugin via its openclaw.plugin.json. The skill ships scripts/verified-run.sh for cron and instructions the agent follows when it does the task itself. Source and README: integrations/openclaw.
Store the key
RUNVOUCH_KEY in the OpenClaw environment, or skills.entries.verified-run.apiKey in openclaw.json; the skill stays hidden until the key is there.
Wrap the job
# crontab on the OpenClaw host 0 7 * * * ~/.openclaw/skills/verified-run/scripts/verified-run.sh inbox-digest --every 24h --grace 30m --evidence-file ~/out/digest.md -- openclaw task run inbox-digest # the same wrapper with the rv CLI, if installed 0 7 * * * rv run inbox-digest --evidence-file ~/out/digest.md -- openclaw task run inbox-digest
rv fails open: if RunVouch is unreachable the job still runs and you get one warning line.
Register the cadence and caps
rv agent nightly-report --cadence 24h --grace 30m --max-runtime 1h --evidence --cap-run-cost 2
Register the agent once, from anywhere with the key. Cadence is what turns a schedule that stopped into an alert; --evidence makes a run without evidence a failure; the caps pause the agent when it overspends.
What goes silent on OpenClaw (verified-run skill)
- The gateway is down at 7:00: no start call, MISSED at 7:30.
- The task exits 0 without writing the digest: the wrapper reports
failwithevidence_file: false; yesterday's file is removed first so it cannot pass as today's. - The agent loops on the same tool call: the companion
runvouchskill reports tool calls, RETRY_STORM stops it.
What OpenClaw (verified-run skill) does not tell you
OpenClaw runs scheduled tasks and keeps a session log, but it has no notion of an expected run: a task that never starts leaves no trace, and a task that starts, calls no tools and writes no file finishes as a normal session. OpenClaw issue #16808 (a polling loop that cost $150 with no alert) is the documented case.
What RunVouch detects
| Alert | What it means here |
|---|---|
| MISSED | cadence plus grace passed and no run started |
| FAILED | non-zero exit or a reported failure, with the stderr excerpt |
| NO_EVIDENCE | the run said ok but the file, URL or assertion you required is missing |
| STALLED | a run started and never ended within max runtime |
| RETRY_STORM | the same tool called with identical input many times in one run |
| BUDGET_RUN / BUDGET_DAY | cost cap crossed; the agent is paused until you resume it |
| DRIFT | duration or output size far off its 7-run baseline |
Set up in two minutes
- Get a free key (3 agents, no card) and store it where this page says.
- wrap the job: copy the snippet above into the scheduled job.
- Register the cadence once:
rv agent nightly-report --cadence 24h --grace 30m --evidence, or let the first run create the agent and set the cadence on the dashboard. - Send one test alert:
curl -X POST https://api.runvouch.com/v1/settings/test-alert -H "X-API-Key: $RUNVOUCH_KEY". The next missed, failed or empty run reaches the same channels.
Also running agent frameworks?
LangGraph. CrewAI. AutoGen. OpenAI Agents SDK. The full list of runtimes is on integrations, and the same agent can report from several of them: one job, one cadence, wherever it happens to run.
Need a key? Get a free key · Stuck? contact