cron-monitor
Send heartbeat pings to cron-monitor after cron job completion, check job status, and register new jobs. Use when you need to confirm a scheduled task ran successfully, check if a cron job is healthy, or add monitoring to a new cron script. Triggers include "ping cron-monitor", "check job status", "register cron job", "heartbeat", "cron health check", or any task involving scheduled job monitoring.
Best use case
cron-monitor is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Send heartbeat pings to cron-monitor after cron job completion, check job status, and register new jobs. Use when you need to confirm a scheduled task ran successfully, check if a cron job is healthy, or add monitoring to a new cron script. Triggers include "ping cron-monitor", "check job status", "register cron job", "heartbeat", "cron health check", or any task involving scheduled job monitoring.
Teams using cron-monitor should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/cron-monitor/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How cron-monitor Compares
| Feature / Agent | cron-monitor | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Send heartbeat pings to cron-monitor after cron job completion, check job status, and register new jobs. Use when you need to confirm a scheduled task ran successfully, check if a cron job is healthy, or add monitoring to a new cron script. Triggers include "ping cron-monitor", "check job status", "register cron job", "heartbeat", "cron health check", or any task involving scheduled job monitoring.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# cron-monitor
Send heartbeat pings and check scheduled job health.
## When to use
- After a cron job runs successfully (send a ping to confirm completion)
- Checking whether a scheduled job is healthy or has missed its window
- Registering a new job to be monitored
- Investigating why an alert fired
## Prerequisites
1. A running cron-monitor server
2. An API key (`cm_...`) from the server admin
3. The `cm` CLI installed, or use curl directly
## Quick Start (CLI)
```bash
# Install CLI globally
npm install -g @cron-monitor/cli
# Configure
cm config set server https://monitor.example.com
cm config set key cm_...
# Send a ping after your cron job succeeds
/path/to/script.sh && cm ping daily-backup
```
## Sending pings via curl (no CLI required)
```bash
# Simple success ping
curl -s "https://monitor.example.com/api/ping/daily-backup?key=cm_..."
# Ping with duration (milliseconds)
curl -s -X POST "https://monitor.example.com/api/ping/daily-backup?key=cm_..." \
-H "Content-Type: application/json" \
-d '{ "durationMs": 4250, "exitCode": 0 }'
# Failure ping
curl -s -X POST "https://monitor.example.com/api/ping/daily-backup?key=cm_..." \
-H "Content-Type: application/json" \
-d '{ "status": "failure", "exitCode": 1, "output": "Connection timeout" }'
```
## Checking job status
```bash
# List all jobs
cm list
# List only failing/missed jobs
cm list --status failing
cm list --status missed
# JSON output (for scripting)
cm list --json | jq '.[] | select(.status != "healthy")'
```
## Registering a new job
```bash
cm register \
--name "Daily Backup" \
--schedule "0 3 * * *" \
--grace 5
# With timezone
cm register --name "Morning Report" --schedule "0 9 * * 1" --tz "America/New_York"
```
## CLI Reference
| Command | Description |
|---|---|
| `cm ping <slug>` | Send success ping |
| `cm ping <slug> --fail` | Send failure ping |
| `cm ping <slug> --duration <ms>` | Ping with execution duration |
| `cm ping <slug> --exit-code <n>` | Ping with exit code |
| `cm list` | List all jobs with status |
| `cm list --status <status>` | Filter by status: healthy, missed, failing, paused |
| `cm register` | Register a new job |
| `cm config set server <url>` | Set server URL |
| `cm config set key <cm_...>` | Set API key |
| `cm config show` | Show current config |
## Adding monitoring to a cron script
```bash
#!/bin/bash
# /etc/cron.d/daily-backup
set -euo pipefail
START=$(date +%s%3N)
# Your backup command
/usr/local/bin/backup.sh
# Send success ping with duration
DURATION=$(( $(date +%s%3N) - START ))
curl -sf "https://monitor.example.com/api/ping/daily-backup?key=cm_..." \
-d "{\"durationMs\": $DURATION}" -H "Content-Type: application/json"
```
## Environment Variables
| Variable | Description |
|---|---|
| `CM_SERVER` | Server URL (overrides config file) |
| `CM_KEY` | API key (overrides config file) |
## Troubleshooting
### "404 Not Found" on ping URL
The job slug does not exist. Register the job first with `cm register` or in the dashboard.
### "401 Unauthorized"
API key is invalid or revoked. Check with `cm config show` and verify with the server admin.
### Job shows as "missed" but the script ran
The ping URL was not called after the job, or the ping failed silently. Check that the curl/cm command in your script has no silent failure (`|| true`) masking errors.Related Skills
Skill: Uptime Monitoring
## Overview
serial-monitor
No description provided.
ssl-cert-monitor
Operate ssl-cert-monitor -- add hosts, configure alert rules, trigger checks, review history, and deploy the stack.
backup-monitor
Track backup jobs via heartbeat pings, alert on missed or failed backups. Use when you need to monitor scheduled backup scripts, get alerted when a backup misses its window, or track backup execution history. Triggers include "backup monitoring", "backup alerts", "missed backup", "backup heartbeat", "backup job tracking", or any task involving backup reliability verification.
database-size-monitor
Dashboard for monitoring PostgreSQL and MySQL table sizes over time, with growth tracking, threshold alerts, and snapshot comparison
data-pipeline-monitor
Track ETL and data pipeline jobs with success/failure status, duration tracking, heartbeat monitoring, and dependency visualization. Use when you need to monitor scheduled jobs, detect failures, track pipeline health over time, or visualize ETL step dependencies. Triggers include "pipeline monitoring", "job tracking", "ETL status", "cron job health", "heartbeat monitor", "pipeline failed", or any task involving monitoring data workflows.
process-monitor
Monitor system processes for resource usage using process-tree watch mode. Use when tracking CPU or memory usage over time, finding resource hogs, or watching a specific process. Triggers include "monitor processes", "watch cpu usage", "process monitor", "top processes", "resource usage", "ptree watch".
Skill: Status Page
## Overview
Skill: unit-conversion
## Overview
Skill: recipe-scaler
## Overview
reading-list
Operate the reading-list API to save, manage, tag, search, and export articles.
email-digest
Configure, test, and troubleshoot the reading-list daily email digest delivered via nodemailer.