Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Peon works for you while you are developing (think autotest).
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
tests renamed checkSumRecursive to checksum_recursively and changed main's …
.gitignore added tests for checksum stuff
Makefile added tests for checksum stuff
README.rst Update README with info about using the --no-reset option. Version ++ for release.



Peon works for you while you are developing.

It runs any command you tell it and execute the command when some file that matches a pattern is changed.


Just install using:

python install


By default Peon looks for changes in python files (*.py) and if no command is specified, it run nosetests.

Peon will keep running that command whenever a file changes.

For example, take the following directory tree as example:

|-- Makefile
|-- peon
|   |--
|   |--
|   |-- stop.png
|   `-- tick.png
`-- tests

If I want Peon watches for changes in all my "*.py" files and run "make" when something changes, I could do simply:

$ peon make # run make in the current dir, looking for changes in *.py files

It is possible to specify the directory to watch (-d or --directory option):

$ peon make -d peon

It is possible to tell peon what is your pattern too, through -p or --patern option:

$ peon make -p '*.png' -d peon

If you do not want peon to reset/clear your terminal before each run, you may use the --no-reset option:

$ peon make --no-reset
Something went wrong with that request. Please try again.