A comprehensive self-management system

The Smos Sync Client

Your can synchronise your workflow directory using smos-sync-client. This synchronisation works with arbitrary amounts of time between synchronisations, so it is perfect for taking your laptop onto an airplane.

A community sync-server has been set up at



Usage: smos-sync-client COMMAND [--config-file FILEPATH] 
                        [--workflow-dir FILEPATH] [--archive-dir FILEPATH] 
                        [--projects-dir FILEPATH] 
                        [--archived-projects-dir FILEPATH] [--log-level ARG] 
                        [--server-url ARG] [--username ARG] [--password ARG] 
                        [--session-path ARG]

Available options:
  -h,--help                Show this help text
  --config-file FILEPATH   The config file to use
  --workflow-dir FILEPATH  The workflow directory to use
  --archive-dir FILEPATH   The archive directory to use
  --projects-dir FILEPATH  The projects directory to use
  --archived-projects-dir FILEPATH
                           The archived projects directory to use
  --log-level ARG          The log level to use, options:
  --server-url ARG         The server to sync with
  --username ARG           The username to login to the sync server
  --password ARG           The password to login to the sync server WARNING: You
                           are trusting the system that you run this command on
                           if you pass in the password via command-line
  --session-path ARG       The path to store the login session

Available commands:
  register                 Register at a sync server
  login                    Login at a sync server
  sync                     Sync with a sync server


Available environment variables:

                         Archived projects directory
                         Archive directory
  SMOS_BACKUP_DIR        The directory to store backups in
                         when a sync conflict happens
                         Workflow directory
                         The path to the directory to sync
                         whether to ignore the archive
                         Which files to ignore
                         The path to the database of
  SMOS_PASSWORD          The password to sync with
                         Projects directory
  SMOS_SERVER_URL        The url of the server to sync with
                         The path to the file in which to
                         store the auth session
  SMOS_USERNAME          The username to sync with
  SMOS_UUID_FILE         The path to the uuid file of the
                         Workflow directory


# DirectoryConfiguration
workflow-dir: # optional
  # The workflow directory
archive-dir: # optional
  # The archive directory
projects-dir: # optional
  # The projects directory
archived-projects-dir: # optional
  # The archived projects directory
# Configuration
sync: # optional
  # Synchronisation configuration
  # SyncConfiguration
  log-level: # optional
    # The minimal severity for log messages
  server-url: # optional
    # The url of the sync server. Example:
  contents-dir: # optional
    # The directory of the files to synchronise. By default this will be the workflow directory.
  uuid-file: # optional
    # The file in which to store the server uuid
  metadata-db: # optional
    # The file to store the metadata database in
  ignore-files: # optional
    [ # Don't ignore any files
      nothing # (exact)
    , # Ignore hidden files
      hidden # (exact)
  username: # optional
    # The username to log into the sync server
  password: # optional
    # The password to log into the sync server. Note that putting the password in a config file in plaintext is not safe. Only use this for automation.
  session-path: # optional
    # The file in which to store the login session cookie
  backup-dir: # optional
    # The directory to store backups in when a sync conflict happens