plzplz
A simple cross-platform task runner with helpful defaults. Tasks are stored
in plz.toml and run with plz [task]
# Build, development mode
[]
= "cargo build && plz schema"
Install
When you first install plzplz, you can run
to configure some global defaults.
Add it to a project
In a rust, uv, or pnpm repo run this to initialize a new plz.toml:
To add a new task, you can run:
TOML Reference
Basic task
[]
= "cargo build"
Run commands in parallel or serial
[]
= ["plz lint", "plz format"]
[]
= ["cargo fmt", "cargo clippy --fix --allow-dirty"]
Working directory
[]
= "packages/web"
= "pnpm dev"
Failure hooks
On failure, suggest a command for the user to run:
[]
= ["plz lint", "plz format"]
= { = "plz fix" }
Display a message on failure:
[]
= "deploy.sh"
= { = "Check the deploy logs at /var/log/deploy.log" }
Run a shell command on failure:
[]
= "cargo test"
= "notify-send 'Tests failed'"