himalaya

CLI to manage emails

TLDR

List email envelopes in the inbox
$ himalaya envelope list
Read a specific email
$ himalaya message read [id]
Compose and send a new email
$ himalaya message write
Reply to an email
$ himalaya message reply [id]
Forward an email
$ himalaya message forward [id]
List folders
$ himalaya folder list
Download attachments
$ himalaya attachment download [id]
Use a specific account
$ himalaya -a [account_name] envelope list

SYNOPSIS

himalaya [options] command subcommand [arguments]

DESCRIPTION

himalaya is a command-line interface for managing emails. Unlike TUI email clients like mutt or aerc, himalaya is a pure CLI with no event loop — you interact with your emails using shell commands in a stateless way. This makes it composable with pipes and scripts, and freely integrable with other CLI tools.It supports multiple backends including IMAP, SMTP, Maildir, and Notmuch, with features like multi-account support, PGP encryption, and OAuth 2.0 authentication. Himalaya is designed to extract email logic into a simple CLI API that can be used directly from the terminal, from scripts, and from UIs.

PARAMETERS

-a, --account name

Use a specific email account.
envelope list
List email envelopes in the current folder.
envelope watch
Watch for new envelope changes in real time.
message read id
Read a specific email message.
message write
Compose a new email message.
message reply id
Reply to an email message.
message forward id
Forward an email message.
message delete id
Delete an email message.
folder list
List mail folders.
folder create name
Create a new mail folder.
attachment download id
Download attachments from a message.

CONFIGURATION

Configuration is stored in $XDG_CONFIG_HOME/himalaya/config.toml (or ~/.config/himalaya/config.toml) and defines accounts with backend settings for IMAP, SMTP, Maildir, or Notmuch. Run himalaya account configure for an interactive setup wizard.

INSTALL

sudo pacman -S himalaya
sudo apk add himalaya
sudo zypper install himalaya
brew install himalaya
nix profile install nixpkgs#himalaya

CAVEATS

Initial configuration requires manual setup of mail accounts. OAuth 2.0 setup may require additional steps depending on the provider. PGP encryption requires GPG to be installed and configured.

HISTORY

himalaya was created by Clément DOUIN as part of the Pimalaya project and is written in Rust. It was designed as a Unix-philosophy approach to email, providing simple composable commands rather than a monolithic TUI application.

SEE ALSO

mutt(1), aerc(1), neomutt(1), mail(1)