A Protocol for Remotely Managing Sieve Scripts.
python-managesieve has moved to a new home. Please visit

A MANGAGESIEVE client library for remotely managing Sieve scripts, including an interactive 'sieveshell'.

This module allows accessing a Sieve-Server for managing Sieve scripts there. For more information about the MANAGESIEVE protocol see draft


Sieve scripts allow users to filter incoming email. Message stores are commonly sealed servers so users cannot log into them, yet users must be able to update their scripts on them. This module implements a protocol "managesieve" for securely managing Sieve scripts on a remote server. This protocol allows a user to have multiple scripts, and also alerts a user to syntactically flawed scripts.

This an interim measure as it is hoped that eventually Sieve scripts will be stored on ACAP.


Requires Python >= 2.0


Version 0.3 by Hartmut Goebel
* managesieve:
  - MANAGESIEVE.authenticate() now only returns a OK/NO/BYE result
    like any command not asking data from the server

* sieveshell:
  - added 'edit', which may create scripts, too. (posix only)
  - now prints out the server capabilities, thus the user knows what
    ther server is capable of (and which Sieve-Commands may be used).
  - fixed some minor bugs

Not yet implemented

  • Only athentication method LOGIN is currently supported.
  • STARTTLS is not yet implemented.
  • sieve-names are only quoted dump (put into quotes, but no escapes yet).


(C) Copyright 2003 by Hartmut Goebel

License: Python Software Foundation License

License for 'sieveshell' and test suite: GPL


Based on from Ulrich Eck which is part of of ImapClient, a Zope product. Some ideas taken from imaplib written by Piers Lauder et al.

© Copyright 2004 · Hartmut Goebel, 09/03/04