Sheet 01 · The menu bar
The state of every Job, one click away.
- A red dot on the icon while any Job is failing.
- One row per Job, with its last Run and its next one.
- Hover a row for Run Now and Pause. Open it for the last lines of its Run Log.
- Quit closes the app. The Jobs keep running.
- Back up photosfailed at 15:41 · exit 11 · next 16:00rsync(86611): error: /Users/jfontes/Pictures/Exports/: (l)stat: No such file or directoryrsync: /Volumes/Backup/Photos/: mkpath: Permission deniedrsync(86611): error: unexpected end of file
- Check jonathan.pt is up✓ 15:45 · next 16:00
- Disk space✓ 15:41 · next 16:00
- Homebrew outdatedhasn't run yet · next 18:00
Sheet 02 · The window
All Jobs in a table, with their recent Runs.
- The header says it in a sentence: All running fine. or which Jobs are failing.
- One bar per Run, colored by result, as tall as the Run was long.
- Turn Active off to pause a Job. Run Now still works.
- The window has a Dock icon only while it is open.
Sheet 03 · A Run and its Run Log
Every Run is written down, line by line.
Each line has the time it was printed and where it came from: O for stdout, E for stderr, S for Cuckoo itself. The first lines say how the Command was run.
115:41:38.963 S shell: /bin/zsh -l -c215:41:38.963 S directory: /Users/jfontes315:41:38.963 S PATH: /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/homebrew/bin415:41:38.963 S Command:515:41:38.963 S rsync -a --delete ~/Pictures/Exports/ /Volumes/Backup/Photos/615:41:38.980 E rsync(86611): error: /Users/jfontes/Pictures/Exports/: (l)stat: No such file or directory715:41:38.980 E rsync: /Volumes/Backup/Photos/: mkpath: Permission denied815:41:38.980 E rsync(86611): error: unexpected end of file
- Watch it live in the Run panel. Show All lines or Errors only.
- Copy the text, or Save… the whole log.
- Stop a Run that hangs. A
timeoutdoes it for you.
Sheet 04 · The editor
See the environment before the first Run.
- Environment the Job will see shows the login shell, the PATH, and where each tool in the Command was found.
- A tool marked not found shows up here, before the first Run fails on it.
- Next Runs lists when the Schedule will fire.
- Saving writes the Job file. You can edit the same file in your editor.
Sheet 05 · ⌘K
Every action, from the keyboard.
- Press ⌘K in the window and type part of an action or a Job's name.
- Run Now, Stop, Pause, Resume, Open, Edit, Last Run Log, for every Job.
- Case and accents don't matter.
Sheet 06 · In the background
Quit the app. The Jobs keep running.
A small agent, registered with macOS, does the running. The app only shows you what it did.
- Login Items
Approve it once
On first launch, macOS asks you to allow Cuckoo in the background. Until you do, no Job runs.
- Sleep
Missed a time?
A Job set for 09:00 runs once when the Mac wakes, marked late. Interval Jobs wait for their next time.
- One at a time
No pile-ups
If a Job is still running when its next time comes, that time is skipped and noted in the Run Log.