Docs · Sheet 05 of 05

CLI

The cuckoo command checks Job files, and runs, pauses or stops a Job from the terminal. It works with the app closed.

Install

cuckoo ships inside the app, at /Applications/Cuckoo.app/Contents/Helpers/cuckoo. Link it into a folder on your PATH:

$ ln -s /Applications/Cuckoo.app/Contents/Helpers/cuckoo ~/.local/bin/cuckoo

Prototype: how people who install from the .dmg get cuckoo on their PATH is still open on the map.

Usage

usage: cuckoo check <file>...
       cuckoo run <file> [--from phone]
       cuckoo pause <file>
       cuckoo resume <file>
       cuckoo stop <file>

cuckoo check

Checks one or more Job files, by path. It prints ok, or one line per problem, as path:line: reason. It changes nothing: no Job, no .error file.

$ cuckoo check back-up-photos.toml
back-up-photos.toml:7: unknown key "timout"
$ cuckoo check back-up-photos.toml disk-space.toml
back-up-photos.toml: ok
disk-space.toml: ok

run, pause, resume, stop

These take the Job's file name without .toml. They do what the buttons in the app do, even while the app is closed.

$ cuckoo run back-up-photos
$ cuckoo pause homebrew-outdated
$ cuckoo run nothing-here
Job not found: nothing-here

Exit status

StatusMeaning
0Done, or every file is valid.
1A file is invalid, or the Job doesn't exist.
2Wrong usage.