Skip to content
← Guides

Your Claude Code scheduled task didn't run. Here's how to know next time.

Loops get dropped after a compaction or resume, sessions end, laptops sleep. The fix is a heartbeat that expects the job to check in.

Why scheduled Claude Code jobs go missing

  • Session-bound loops. /loop-style and in-session schedules live as long as the session. A resume, a compaction, or a closed terminal can end them without telling you.
  • The host is asleep. Jobs triggered from a laptop's cron or launchd don't run while it sleeps.
  • The run "succeeds" but does nothing. The agent hits a permission prompt, a missing tool, or an empty input and exits cleanly.

Add a heartbeat in one line

Because Claude Code can run shell commands, end the task prompt with:

text
When you're done, run: curl -fsS -m 10 --retry 3 -X POST <your ping URL> -d '{"items": <count>, "text": "<summary>"}'

Create a Did It Run? watch with the schedule you expect (e.g. every day by 7:30am) and a grace window. If the check-in doesn't arrive, you're alerted. Report failures straight away with /fail.

Headless runs from cron or CI

Wrap claude -p in a script that pings /start, sends the output to the ping URL on success, and to /fail on a non-zero exit. The output body powers sanity checks like minimum size or a required keyword.

No shell? Email check-ins are coming soon

If your Claude routine only delivers by email, there's no direct way to check in yet: email check-ins aren't live. For now, relay those emails to the ping URL with an automation tool that watches your inbox (n8n, Make or Zapier), or run the job somewhere that can make an HTTP request.

FAQ

Does the agent need special permissions?

Only permission to run curl (or any HTTP client). You can allow just that command.

Is the ping URL secret?

Treat it like a password: anyone with it can check in for that watch. You can regenerate it from the watch page.

Can I see what each run produced?

Yes. The first 500 characters of each check-in and its size and item count are kept in the watch history.

Know the next time it doesn't run

Know when your AI agents and automations didn't run. Free for 3 watches.

Start free