Automating tasks for git users.

git, flow, local, commandline
pip install flowtool-githooks==0.7.46


PyPI Python Versions PyPI Latest Version PyPI Distribution Format ReadTheDocs Documentation build-status Coverage Status


An extensible command line tool for various software development tasks. flowtool is developed to become a platform for universal task automatisation through the power of the Python Programming Language and it's many libraries.


Choose your favourite components from:

Try it out:

pip install flowtool-gitflow
pip install flowtool-githooks
pip install flowtool-githook-demo
pip install flowtool-python
pip install flowtool-versioning
pip install flowtool-release

pip install flowtool-all


flowtool installs a new shell command into your (virtual) environment. The command is obviously named flowtool and has also a quick alias: ft.

Freshly installed flowtool-base brings only one command:

flowtool --help
flowtool self-info
ft self-info

Keep it up to date via:

ft self-update --help
ft self-update -a -y


To enable completion in your current shell session, run:

eval "$(_FLOWTOOL_COMPLETE=source flowtool)"
eval "$(_FT_COMPLETE=source ft)"

You can also add the output of

_FLOWTOOL_COMPLETE=source flowtool
_FT_COMPLETE=source ft

to your .bashrc or hook it up in /etc/ somewhere. Maybe one day flowtool will have an even more convenient distribution method (than python packages), that can install the completion into your system automatically. The current method (virtualenv) does not allow this, and installing the completion system-wide without the tool is currently possible, but will yield ugly errors, if you try to complete outside of your virtual environment.


Release Plan

  • 0.8: convert (most) doctests to "real" (py-)tests
  • 0.9: code cleanups, restructuring and a "real" documentation


  • Convert more READMEs to rst, as a first initiative to start a sphinx documentation.
  • flowtool-versioning does work now, and also for a lot of scenarios, but the version meta-information is still poor. The code can now be up-cycled for this to become great.
  • flowtool-releasing requires quite a complex test-setup. With the new pytest tests this is almost build completely. With proper tests in place the releasing mechaninsm will need to be generalized greatly for more use cases.