✓ Verified 💻 Development ✓ Enhanced Data

Cron Doctor

Diagnose and triage cron job failures.

Rating
5 (266 reviews)
Downloads
26,528 downloads
Version
1.0.0

Overview

Diagnose and triage cron job failures.

Complete Documentation

View Source →

Compatible with Claude Code, Codex CLI, Cursor, Windsurf, and any SKILL.md-compatible agent.

Cron Doctor

Diagnose and triage cron job failures.

Usage

When asked to check cron health or diagnose failures:

1. List All Jobs

bash
# List user's crontab
crontab -l

# List system crontabs
sudo cat /etc/crontab
ls -la /etc/cron.d/

2. Check Recent Execution

bash
# Check cron logs (location varies by system)
# Debian/Ubuntu:
grep CRON /var/log/syslog | tail -50

# RHEL/CentOS:
tail -50 /var/log/cron

# macOS:
log show --predicate 'process == "cron"' --last 1h

# Check for specific job output
grep "your_job_name" /var/log/syslog | tail -20

3. Identify Problems

Error patterns to watch:

  • "command not found" — Missing executable or PATH issue
  • "Permission denied" — File/directory permissions wrong
  • "No such file or directory" — Script path incorrect
  • "timeout" — Job took too long
  • "ECONNREFUSED" — Network/service down
  • "rate limit" — API throttling
  • Missing output — Job may not be running at all

4. Triage Priority

PriorityCriteria
🔴 CriticalTrading, backup, security jobs
🟠 HighUser-facing deliveries
🟡 MediumMonitoring, research jobs
🟢 LowNice-to-have, non-essential

5. Generate Report

Write to ~/workspace/reports/cron-health-YYYY-MM-DD.md:

markdown
# Cron Health Report - [DATE]

## Summary
- ✅ Healthy: X jobs
- ⚠️ Warning: X jobs  
- ❌ Failed: X jobs

## Failed Jobs

### [Job Name]
- **Error:** [message]
- **Last Success:** [date]
- **Priority:** [level]
- **Fix:** [suggested action]

## Recommendations
1. [Action item]
2. [Action item]

6. Common Fixes

ErrorFix
Command not foundUse full path to executable, or set PATH in crontab
Permission deniedCheck file permissions, run chmod +x script.sh
No outputAdd >> /tmp/job.log 2>&1 to capture output
Wrong timezoneSet TZ= in crontab or use system timezone
Rate limitReduce frequency or add backoff

7. Debugging Tips

bash
# Test cron environment (cron has minimal PATH)
env -i /bin/sh -c 'echo $PATH'

# Verify script runs manually
/path/to/your/script.sh

# Check if cron daemon is running
systemctl status cron   # Linux
launchctl list | grep cron  # macOS

Escalation

If 3+ critical jobs failed, alert the user immediately.

Verification Gates

Before claiming diagnosis complete:

  • [ ] All failed jobs listed — none skipped or ignored
  • [ ] Priority assigned — based on impact, not just recency
  • [ ] Fix suggested — actionable next step for each failure
  • [ ] Report written — to ~/workspace/reports/cron-health-YYYY-MM-DD.md
  • [ ] Critical failures escalated — 3+ critical = alert user

Installation

Terminal bash

openclaw install cron-doctor
    
Copied!

💻Code Examples

grep "your_job_name" /var/log/syslog | tail -20

grep-yourjobname-varlogsyslog--tail--20.txt
### 3. Identify Problems

**Error patterns to watch:**
- `"command not found"` — Missing executable or PATH issue
- `"Permission denied"` — File/directory permissions wrong
- `"No such file or directory"` — Script path incorrect
- `"timeout"` — Job took too long
- `"ECONNREFUSED"` — Network/service down
- `"rate limit"` — API throttling
- Missing output — Job may not be running at all

### 4. Triage Priority

| Priority | Criteria |
|----------|----------|
| 🔴 Critical | Trading, backup, security jobs |
| 🟠 High | User-facing deliveries |
| 🟡 Medium | Monitoring, research jobs |
| 🟢 Low | Nice-to-have, non-essential |

### 5. Generate Report

Write to `~/workspace/reports/cron-health-YYYY-MM-DD.md`:

2. [Action item]

2-action-item.txt
### 6. Common Fixes

| Error | Fix |
|-------|-----|
| Command not found | Use full path to executable, or set PATH in crontab |
| Permission denied | Check file permissions, run `chmod +x script.sh` |
| No output | Add `>> /tmp/job.log 2>&1` to capture output |
| Wrong timezone | Set `TZ=` in crontab or use system timezone |
| Rate limit | Reduce frequency or add backoff |

### 7. Debugging Tips
example.sh
# List user's crontab
crontab -l

# List system crontabs
sudo cat /etc/crontab
ls -la /etc/cron.d/
example.sh
# Check cron logs (location varies by system)
# Debian/Ubuntu:
grep CRON /var/log/syslog | tail -50

# RHEL/CentOS:
tail -50 /var/log/cron

# macOS:
log show --predicate 'process == "cron"' --last 1h

# Check for specific job output
grep "your_job_name" /var/log/syslog | tail -20
example.md
# Cron Health Report - [DATE]

## Summary
- ✅ Healthy: X jobs
- ⚠️ Warning: X jobs  
- ❌ Failed: X jobs

## Failed Jobs

### [Job Name]
- **Error:** [message]
- **Last Success:** [date]
- **Priority:** [level]
- **Fix:** [suggested action]

## Recommendations
1. [Action item]
2. [Action item]
example.sh
# Test cron environment (cron has minimal PATH)
env -i /bin/sh -c 'echo $PATH'

# Verify script runs manually
/path/to/your/script.sh

# Check if cron daemon is running
systemctl status cron   # Linux
launchctl list | grep cron  # macOS

Tags

#coding_agents-and-ides

Quick Info

Category Development
Model Claude 3.5
Complexity One-Click
Author suryast
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install cron-doctor