Non-portable shortcut
@reboot0 0 * * *The @ shortcuts — @yearly, @annually, @monthly, @weekly, @daily, @midnight, @hourly and @reboot — are a readability convenience that classic Unix cron added on top of the five-field syntax. They are genuinely nice to read, but they are not part of the portable core, and support for them varies from one scheduler to the next.
@reboot is the sharpest case, and it earns a stronger note than the others. It does not describe a clock time at all — it means "once, when cron starts up", typically at boot. That concept simply does not exist in many schedulers: Quartz, AWS EventBridge, Kubernetes CronJobs and most hosted CI cron fields have no equivalent, so an @reboot entry is meaningless or rejected there. It also has no "next run" you can predict, which is why this tool shows a startup note instead of an upcoming-runs table for it.
The time-based shortcuts are safer but still not universal. @daily expands to 0 0 * * * and @weekly to 0 0 * * 0 on systems that support them, but GitHub Actions, for instance, accepts only the five-field form and will not take an @ shortcut at all. If you are writing a crontab that stays on one Linux host, the shortcuts are fine. If the expression might travel — into a CI config, a container scheduler, or a cloud rule — spell it out.
The fix is to use the explicit five-field equivalent: 0 0 * * * for daily, 0 * * * * for hourly, 0 0 1 * * for monthly. For @reboot specifically, there is no cron equivalent — a start-up task belongs in your init system (a systemd unit, a container entrypoint, or a startup script), not in a time-based scheduler.
Watch the linter flag it live — the finding below appears the moment the expression is entered: