The Manager and Context are two of the main classes you will interact with. The Manager is used to register your inventory and the context is used to execute commands on remote hosts.

simple_automation.manager.Manager(…[, …])

A class that manages a set of global variables, hosts, groups, and tasks.

simple_automation.context.Context(manager, host)

A context is a wrapper object around a host and an ssh connection to that host.

The following classes are instanciated by registering things in your inventory and are also used regularly. The most important classes are the Task and TrackedTask from which you can derive your own tasks.


An inventory is a collection of definitions for vaults, tasks, global variables, hosts and groups.

simple_automation.host.Host(manager, …)

A Host represents a machine that can be reached via ssh, and which should be managed by simple_automation.

simple_automation.group.Group(manager, …)

A group for hosts.


A base class for tasks.


A base class for tasks which want to track changes in a git repository.

simple_automation.vault.GpgVault(manager, …)

A GpgVault is a Vault which saves its context encrypted with gpg.


A SymmetricVault is a Vault which saves its context symmetrically encrypted.