Transiever.ManageSieve.Cli 1.3.0

dotnet tool install --global Transiever.ManageSieve.Cli --version 1.3.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local Transiever.ManageSieve.Cli --version 1.3.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Transiever.ManageSieve.Cli&version=1.3.0
                    
nuke :add-package Transiever.ManageSieve.Cli --version 1.3.0
                    

msieve

This guide is the canonical command reference for the ManageSieve CLI. See the ManageSieve project overview and ManageSieve library guide for the public client API.

Install

dotnet tool install --global Transiever.ManageSieve.Cli

The global-tool package is available on NuGet.org. For a tool-selection guide and self-contained installation options, see the Transiever ManageSieve CLI guide.

Commands:

msieve capabilities
msieve list
msieve get active --output active.sieve
msieve check --file candidate.sieve
msieve put candidate --file candidate.sieve
msieve put candidate --file candidate.sieve --activate
msieve activate candidate
msieve deactivate
msieve delete old-script

During development, replace msieve with:

dotnet run --project src/Transiever.ManageSieve.Cli --

Install the self-contained Linux x64 build with Homebrew:

brew install SeWieland/transiever/msieve

GitHub releases attach self-contained msieve assets for win-x64, win-x86, and linux-x64. .NET does not define a portable linux-x86 RID, so no Linux x86 asset is produced.

Commands

capabilities connects to the server, applies the configured transport security, and prints advertised capabilities. It does not authenticate and requires only host, port, and security configuration.

list prints server-side script names and marks the active script with *.

get <script-name> downloads one script. Use --output <file> to write the exact script bytes to disk. Without --output, the raw script bytes are written to standard output.

check --file <file> validates a local script with CHECKSCRIPT. It does not store or activate the content.

put <script-name> --file <file> uploads the exact file bytes with PUTSCRIPT. Use --activate to run SETACTIVE after a successful upload.

activate <script-name> activates an existing script. deactivate disables active Sieve processing. delete <script-name> deletes a server-side script.

The CLI is policy-neutral. It does not reconcile scripts, create backups, manage history, import Outlook rules, generate Sieve, or apply provider-specific policy.

Server Configuration

Configure ManageSieve through environment variables:

TRANSIEVER_SIEVE_HOST=sieve.example.com
TRANSIEVER_SIEVE_PORT=4190
TRANSIEVER_SIEVE_USERNAME=user@example.com
TRANSIEVER_SIEVE_PASSWORD=secret
TRANSIEVER_SIEVE_SECURITY_MODE=StartTlsRequired
TRANSIEVER_SIEVE_SASL_MECHANISM=auto

Use --sieve-host, --sieve-port, --sieve-username, --sieve-password, --sieve-security-mode, and --sieve-sasl-mechanism to override those values for a targeted command. The port and security mode are optional. The default is port 4190 with required STARTTLS. ImplicitTls is also supported.

Authentication uses --sieve-sasl-mechanism auto|plain|scram-sha-256 or the TRANSIEVER_SIEVE_SASL_MECHANISM environment variable. The precedence is command-line option, environment variable, then the default auto. In auto mode, the CLI selects SCRAM-SHA-256 when the server advertises it and otherwise uses PLAIN when advertised. An explicit plain or scram-sha-256 selection never downgrades to another mechanism if that mechanism is unavailable. Use msieve capabilities to inspect the server's advertised SASL mechanisms before choosing an explicit mechanism; this command does not authenticate.

Authenticated commands refuse plaintext credentials. If the password variable is absent, an interactive terminal prompts without echoing it.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.3.0 97 9/7/2026
1.2.0 105 9/2/2026
1.1.2 119 8/3/2026
1.1.1 118 7/21/2026
1.1.0 109 7/21/2026
1.0.1 106 7/20/2026
1.0.0 116 7/10/2026
1.0.0-beta.3 67 7/9/2026