Scheduled Tasks
Run hara on a schedule with hara cron — cron expressions, intervals, and one-shots, fired by your OS scheduler.
hara cron schedules tasks that run unattended. There's no daemon — a per-minute tick is registered
with your OS scheduler (launchd on macOS, crontab on Linux), and hara runs whatever is due.
Schedule a task
hara cron add "0 9 * * 1" "summarize last week's commits" --name weekly-digest
hara cron add "every 30m" "run the test suite and report failures"
hara cron add "in 2h" "draft release notes for the next version"A schedule can be a cron expression, a relative interval (every 30m, in 2h), or an ISO
timestamp. Add --org to route the task through role dispatch instead
of a plain headless run.
Install the tick
hara cron install # register the per-minute tick with launchd / crontab
hara cron uninstall # remove itManage jobs
| Command | Does |
|---|---|
| hara cron list | list jobs (alias ls) |
| hara cron remove <id> | delete a job (alias rm) |
| hara cron enable <id> · disable <id> | keep a job but stop / resume firing |
| hara cron run <id> | run a job now, ignoring its schedule |
| hara cron logs <id> | show a job's recent run output |
| hara cron tick | run everything due now (this is what the OS scheduler calls) |
Jobs live in ~/.hara/cron/jobs.json. Headless runs use a resumable session, so a recurring job can
build on its own prior output.