Guard::Zeus automatically starts and stops Zeus, and, through Guard, runs your tests when your files change.
Clone or download
Pull request Compare This branch is 2 commits ahead, 8 commits behind guard:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.


Guard::Zeus automatically starts and stops Zeus.

Build Status Code Climate


Please be sure to have Guard and Zeus installed before continuing.

Install the gem:

$ gem install guard-zeus

Add it to your Gemfile (inside development group):

gem 'guard-zeus'

Add guard definition to your Guardfile by running this command:

$ guard init zeus


Please read Guard usage doc


Please read Guard doc for more information about the Guardfile DSL.


Available options:

:rspec => false          # Don't use RSpec
:test_unit => false      # Don't use Test::Unit
:bundler => false        # Don't use "bundle exec"
:cli => '--time'         # Pass options to zeus. `zeus commands` for more zeus options
:run_all => true         # Run all tests when hitting enter in guard

Known Issues

Use with pry

There is a known issue when using guard-zeus with pry, notably the zeus output appear on top of the pry console.

The workaround is to add the cli setting in your Guardfile, e.g.

guard 'zeus', cli: '> /dev/null' do

Lingering zeus process

If you have issues with zeus lingering around after exiting guard, you can add the following to the top of your Guardfile.

at_exit {exec('pkill -f zeus')}


Pull requests are very welcome! Make sure your patches are well tested. Please create a topic branch for every separate change you make.


Based on the awesome guard-spin. Original authors include:

Ported to use zeus by:

Many Thanks To