Himalaya Cli

📧 终端邮件管理,极客效率之选

终端原生邮件管理工具,支持IMAP/SMTP多账户,适合开发者高效处理邮件。

收藏
4.2k
安装
1.6k
版本
0.0.1
CLS 安全性认证2026-07-14
点击查看完整报告 >

使用说明

核心用法

Himalaya 是一款面向开发者的终端邮件客户端,通过 IMAP/SMTP 协议实现完整的邮件生命周期管理。其核心设计遵循 CLI 原生哲学:所有操作均以子命令形式组织(如 himalaya envelope list、himalaya message read),而非传统顶层命令。用户可通过 TOML 配置文件管理多账户,支持密码命令集成(如 pass、keyring)实现安全凭据存储。

关键功能矩阵:

  • 查询检索:envelope list 支持分页、JSON 输出、关键词搜索
  • 阅读处理:message read/export 查看正文或导出原始 MIME
  • 撰写发送:message write/reply/forward 调用 $EDITOR,支持 MML 语法构建复杂邮件
  • 组织管理:message move/copy/delete、flag add/remove 实现归档与标记
  • 附件处理:attachment download 提取附件至指定目录

显著优点

1. 终端原生集成:与 tmux、脚本管道无缝协作,输出格式可解析(JSON/plain)
2. 多后端灵活:除 IMAP/SMTP 外,支持 Notmuch、Sendmail,适应不同工作流

3. 安全凭据管理:通过 auth.cmd 对接密码管理器,避免明文存储

4. MML 邮件语言:提供结构化方式定义 MIME 多部分邮件,适合自动化场景

潜在局限

  • 学习曲线陡峭:子命令层级较深(envelope vs message vs folder),与 mutt/neomutt 等传统客户端命令差异大
  • GUI 功能缺失:无内联图片查看、HTML 渲染需外部工具
  • 配置复杂度:TOML 结构嵌套较深,多账户场景配置冗余
  • 生态成熟度:Rust 生态较新,插件系统不如 Emacs/NeoVim 邮件方案丰富

适合人群

  • 高频使用终端的开发者、运维工程师
  • 需要将邮件处理集成至 CI/CD 或自动化脚本的用户
  • 追求"Unix 哲学"、偏好可组合工具链的极客
  • 对现有邮件客户端(如 Thunderbird、Apple Mail)资源占用敏感的用户

常规风险

  • 凭据泄露风险:配置文件中 auth.cmd 若指向不安全脚本,可能导致密码暴露
  • 误操作不可逆:message delete 直接作用于服务器,无本地回收站机制
  • 网络同步异常:IMAP 连接中断可能导致本地状态与服务器不一致
  • TLS 配置错误:错误指定 encryption.type(如将 465 端口配为 tls 而非 start-tls)会造成凭据明文传输

安全解读

核心用法

Himalaya CLI 是一款面向终端用户的 IMAP/SMTP 邮件客户端,支持在命令行完成收发件、搜索、归档等全流程操作。该 Skill 为纯 Markdown 文档,无可执行代码,仅提供详细使用指南。

关键命令结构:Himalaya 采用子命令层级(非扁平命令),核心操作围绕 envelope(邮件列表)、message(单封操作)、folder(文件夹管理)三大命名空间展开。例如查看邮件需执行 himalaya envelope list 而非 himalaya list,读信则是 himalaya message read <id>。

多账户与后端支持:支持同时配置多个邮箱账户(通过 --account 切换),后端兼容 IMAP/SMTP、Notmuch 索引及 Sendmail 发送。配置采用 TOML 格式,密码支持通过 pass 密码管理器或系统 keyring 安全读取,避免明文存储。

消息撰写:交互式编辑依赖 $EDITOR 环境变量;也支持通过模板直接发送或 MML(MIME Meta Language)语法编写带附件的富文本邮件。

显著优点

  • 终端原生体验:无需 GUI,适合 SSH 远程服务器、tmux 会话或追求效率的开发者工作流
  • 结构化输出:多数命令支持 --output json,便于与脚本、自动化工具链集成
  • 安全凭证管理:配置原生集成外部密码命令(auth.cmd),强制分离敏感信息
  • 轻量零依赖:Skill 本身无代码、无第三方库,纯文档交付

局限性与注意事项

  • 学习曲线陡峭:子命令层级较深(如 himalaya message reply 42 --all),初学者易混淆 envelope/message 命名空间
  • 邮件 ID 作用域限制:ID 相对于当前文件夹有效,切换文件夹后需重新 list 确认
  • 附件处理较底层:下载附件需手动执行 attachment download,不如 GUI 客户端直观
  • 需外部 SMTP/IMAP 服务:本身不提供邮件托管,依赖用户自有邮箱服务商

适合人群

  • 偏好终端工作流的开发者、运维工程师
  • 需要在服务器/无图形环境处理邮件的场景
  • 追求邮箱自动化、与 shell 脚本集成的用户

常规风险

该 Skill 为纯文档型,无代码执行风险。实际使用 Himalaya CLI 时需注意:

  • 配置文件中的 auth.cmd 若配置不当可能导致密码泄露,建议使用 pass 或 keyring
  • 在共享环境中注意 ~/.config/himalaya/config.toml 的权限设置(建议 600)
  • 邮件删除操作不可逆,建议配合 --dry-run 或先验证再执行

Himalaya Cli 内容

.clawhub文件夹
references文件夹
手动下载zip · 5.3 kB
origin.jsonapplication/json
请选择文件