summond
Schedule and manage macOS background jobs without writing a single plist.
launchd is powerful but painful to use directly. Summond wraps it with a CLI
that handles plist generation, log management, and job lifecycle — so you can focus on
what the job actually does.
Install
brew install --cask joshgummersall/summond/summond
Or from source (requires Go 1.24+):
go install github.com/joshgummersall/summond/cmd/summond@latest
How it works
Define jobs in a TOML file and apply them:
[jobs.cleanup]
command = "/usr/local/bin/my-script"
schedule = "daily"
hour = 3
minute = 0
[jobs.cleanup.env]
MODE = "nightly"
summond apply
That's it. Summond generates and loads the launchd plist, creates log files, configures
newsyslog rotation, and tracks execution history. When you delete a job from
the config, summond apply --prune removes it cleanly.