himalaya

Manage emails via IMAP and SMTP from the terminal using the himalaya CLI.

14|5|Updated Apr 9, 2026
One-click install
npx skills add https://github.com/MLT-OSS/hermes-agent-go --skill himalaya-mlt-oss
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: himalaya
Source: https://github.com/MLT-OSS/hermes-agent-go/tree/main/skills/email/himalaya
Command: npx skills add https://github.com/MLT-OSS/hermes-agent-go --skill himalaya-mlt-oss

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Reading, searching, and sending email usually requires a GUI client or web interface, which blocks terminal-based automation. This Skill lets an agent perform full email workflows—listing, reading, replying, forwarding, moving, and deleting messages—directly through the himalaya CLI over IMAP/SMTP. ## Core Features & Use Cases - Full mailbox operations: List folders and envelopes, search by sender or subject, read messages, download attachments, and manage flags across multiple accounts. - Non-interactive composition: Send, reply, and forward by piping MML (MIME Meta Language) templates via stdin, supporting HTML bodies, attachments, and inline images. - Structured output: Use --output json for machine-parseable results, with multi-account support via --account. - Use Case: Ask the agent to check your inbox for unread messages from a client, summarize them, and send a reply—all without leaving the terminal. ## Quick Start Use the himalaya skill to list the ten most recent emails in my inbox and show their senders and subjects.

Frequently Asked Questions about himalaya

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I send an email from the command line with himalaya?

Pipe a message with headers and body via stdin using cat with a heredoc into himalaya template send. This non-interactive approach avoids opening an editor and works reliably in automated environments.

How do I configure himalaya for Gmail or iCloud?

Create a config.toml under ~/.config/himalaya with an IMAP backend (imap.gmail.com:993 or imap.mail.me.com:993) and SMTP backend for sending. Both providers require an app-specific password when two-factor authentication is enabled.

Does himalaya support multiple email accounts?

Yes, define multiple account sections in config.toml and mark one as default. Switch between accounts at runtime using the --account flag, for example himalaya --account work envelope list.

How do I attach files to an email in himalaya?

Use MML syntax in the message body with a part tag specifying the filename, such as <#part filename=/path/to/file.pdf>. MML compiles these tags into proper MIME attachments when the message is sent.

Why does himalaya message write open an editor instead of sending?

Without piped input, himalaya message write launches $EDITOR for interactive composition. For scripted use, pipe the message via stdin to himalaya template send or pass headers with -H flags.