$ crontab -e ← never again

croncron

The easiest way to run cron jobs. Plain-English schedules, automatic logs & history, retries, failure alerts, missed-run catch-up — and your AI agent can drive it. Cron that never fails silently.

npm install -g git+https://github.com/itsnotrwanman/croncron.git

Needs Node ≥ 23.6 (runs TypeScript natively — zero dependencies, no build step). macOS & Linux.

$ croncron add "every day at 3am" ./backup.sh

backup — daily at 03:00 (0 3 * * *)

next run in 11.2h · logs: croncron logs backup

$ croncron list

backup daily at 03:00 next in 11.2h last: 21h ago · 340ms

English in, English out

"every 5 minutes", "weekdays at 9:30", "monthly on the 1st". Raw cron works too.

Logs & history, zero config

Every run's output, duration and exit code captured. croncron logs, croncron runs. No more >> /tmp/x.log 2>&1.

Survives laptop sleep

cron silently skips jobs while your Mac sleeps. The launchd watchdog catches missed runs minutes after wake.

Your crontab stays yours

One clearly-marked block, backups before every write, croncron import adopts existing entries.

Never fails silently

Native notification when a job starts failing, another when it recovers. No alert storms, no SaaS, no account. Telegram optional.

Retries, locks & pings

--retry 2 re-attempts failures, overlapping runs are skipped, --ping hits your healthchecks URL after every run.

Built for AI agents

Ships an MCP server. Tell Claude "schedule my backup every night at 3" and it's done.

# Claude Code

claude mcp add --scope user croncron -- croncron mcp

# Codex, Kimi, any MCP client

{ "mcpServers": { "croncron": { "command": "croncron", "args": ["mcp"] } } }

# shell-only agents

croncron list --json