Himalaya Email CLI
Himalaya is a CLI email client that lets you manage emails from the terminal using IMAP, SMTP, Notmuch, or Sendmail backends.
Prerequisites
- •Himalaya CLI installed (
himalaya --versionto verify) - •A configuration file at
~/.config/himalaya/config.toml - •IMAP/SMTP credentials configured (password stored securely)
Configuration Setup
Run the interactive wizard to set up an account:
bash
himalaya account configure
Or create ~/.config/himalaya/config.toml manually:
toml
[accounts.personal] email = "you@example.com" display-name = "Your Name" default = true backend.type = "imap" backend.host = "imap.example.com" backend.port = 993 backend.encryption.type = "tls" backend.login = "you@example.com" backend.auth.type = "password" backend.auth.cmd = "pass show email/imap" # or use keyring message.send.backend.type = "smtp" message.send.backend.host = "smtp.example.com" message.send.backend.port = 587 message.send.backend.encryption.type = "start-tls" message.send.backend.login = "you@example.com" message.send.backend.auth.type = "password" message.send.backend.auth.cmd = "pass show email/smtp"
Common Operations
List Folders
bash
himalaya folder list
List Emails
List emails in INBOX (default):
bash
himalaya envelope list
List emails in a specific folder:
bash
himalaya envelope list --folder "Sent"
Search Emails
bash
himalaya envelope list from john@example.com subject meeting
Read an Email
bash
himalaya message read 42
Reply to an Email
bash
himalaya message reply 42
Reply-all:
bash
himalaya message reply 42 --all
Write a New Email
Interactive compose:
bash
himalaya message write
Send directly:
bash
cat << 'EOF' | himalaya template send From: you@example.com To: recipient@example.com Subject: Test Message Hello from Himalaya! EOF
Move/Delete Emails
bash
himalaya message move 42 "Archive" himalaya message delete 42
Multiple Accounts
bash
himalaya account list himalaya --account work envelope list