Awesome
duty
A simple task runner.
Inspired by Invoke.
Installation
pip install duty
With uv
:
uv tool install duty
Quick start
Create a duties.py
file at the root of your repository.
from duty import duty
@duty
def docs(ctx):
ctx.run("mkdocs build", title="Building documentation")
You can now use the command line tool to run it:
duty docs
See the Usage section in the documentation for more examples.
Also see "Why choosing duty over...".