Apple Mail Search Safe (fruitmail)

📧 Apple Mail 极速全文搜索专家

macOS专属Apple Mail极速搜索工具,SQLite直读130k邮件仅50ms,支持全文检索与AppleScript安全读信

收藏
10.2k
安装
4.3k
版本
5.0.2
CLS 安全性认证2026-07-03
点击查看完整报告 >

使用说明

核心用法

fruitmail 是一款专为 macOS Apple Mail.app 设计的命令行搜索工具,通过直接读取本地 SQLite 数据库(Envelope Index)实现毫秒级邮件检索,彻底告别 AppleScript 全量遍历的分钟级等待。

主要命令:

  • fruitmail search — 复合条件搜索(主题、时间、未读状态)
  • fruitmail sender <domain> — 按发件人域名筛选
  • fruitmail unread — 快速列出未读邮件
  • fruitmail body <id> — 调用 AppleScript 读取完整邮件正文
  • fruitmail open <id> — 一键在 Mail.app 中打开邮件
  • fruitmail stats — 查看数据库统计信息

性能对比: 对于 13 万封邮件的搜索场景,传统 AppleScript 遍历需 8 分钟以上,而 SQLite 直读仅需约 50 毫秒,提升超过 9600 倍

显著优点

1. 极致性能:绕过 Mail.app 应用层,直接查询底层数据库,适合海量邮箱用户
2. 零配置依赖:仅依赖 Node.js 与 npm,安装后即用

3. 安全设计:默认只读模式,可选 --copy 参数先复制数据库再查询,彻底避免对生产数据的任何风险

4. 结构化输出:支持 --json 输出,便于与 jq 等工具链整合自动化处理

5. 精准定位:支持邮件 ID 直达打开,快速定位历史邮件

潜在缺点与局限性

  • macOS 独占:完全依赖 Apple Mail 的数据库结构,无法用于 Linux 或 Windows
  • 只读约束:仅能搜索和阅读,无法发送、回复或修改邮件状态(需配合 himalaya 等工具)
  • 数据库版本敏感:支持 Mail V9/V10/V11 数据库格式,未来 macOS 更新可能导致兼容性问题
  • 正文读取仍依赖 AppleScript:虽然搜索极快,但读取完整邮件正文时仍需调用 AppleScript,性能回退
  • 无图形界面:纯 CLI 工具,对非技术用户有一定门槛

适合人群

  • 邮箱体量巨大(10万+邮件)的 Mac 重度用户
  • 需要将邮件数据自动化导出、分析的开发者和数据工作者
  • 追求效率、习惯命令行工作流的极客用户
  • 需快速审计历史邮件的财务/法务人员

常规风险

| 风险类型 | 等级 | 说明 |
|---------|------|------|
| 数据损坏 | 极低 | 只读查询 + 可选 `--copy` 模式,理论上零风险 |
| 隐私泄露 | 低 | 本地执行,不经过云端;但 JSON 输出可能意外暴露敏感内容 |
| 兼容性 | 中 | macOS 或 Mail.app 升级可能破坏数据库路径解析 |
| 误操作 | 低 | CLI 操作需准确输入邮件 ID,建议配合 `open` 命令可视化确认 |

建议定期关注上游仓库更新,确保与新版本 macOS 兼容。

安全解读

核心用法

Apple Mail Search(Fruitmail)是一款针对 macOS Apple Mail.app 的本地邮件搜索 CLI 工具,通过直接查询 Mail.app 的 SQLite 数据库(~/Library/Mail/V*/MailData/Envelope Index)实现毫秒级邮件检索。

主要功能:

  • 复杂搜索:支持按主题、时间范围、未读状态组合筛选(--subject, --days, --unread
  • 发件人查询:快速定位特定域名或邮箱的邮件(fruitmail sender "@amazon.com"
  • 全文内容读取:通过 AppleScript 获取邮件完整正文(fruitmail body <id>
  • 系统集成:可直接在 Mail.app 中打开邮件(fruitmail open

性能对比:对于 13 万封邮件的库,传统 AppleScript 遍历需 8 分钟以上,本工具仅需约 50 毫秒。

显著优点

1. 极速性能:基于 SQLite 索引查询,避免 AppleScript 全量遍历
2. 只读安全:默认只读模式,可选 --copy 模式先复制数据库再查询,零数据损坏风险

3. JSON 输出:支持结构化数据导出,便于与 jq 等工具链集成

4. 精准定位:支持邮件 ID 直接跳转,快速打开或读取完整内容

潜在缺点与局限性

  • 平台限制:仅限 macOS,依赖 Apple Mail.app 的本地数据库结构
  • 功能边界:仅支持搜索和读取,无法发送邮件(需配合 himalaya 等 SMTP 工具)
  • 版本依赖:随 Mail.app 版本升级,数据库路径(V9/V10/V11)可能需适配
  • 第三方工具:核心功能依赖 fruitmail npm 包的本地安装

适合人群

  • 需要处理大量 Apple Mail 本地归档的 macOS 用户
  • 开发者/运维人员希望将邮件搜索集成到自动化脚本或工作流
  • 对邮件搜索速度有要求,不满于 Mail.app 原生搜索体验的高级用户

常规风险

  • 数据库锁定:若 Mail.app 正在压缩或重建索引,SQLite 查询可能暂时失败
  • 隐私注意:邮件内容通过 AppleScript 提取时,需授权终端访问 Mail.app
  • 版本兼容性:未来 macOS/Mail.app 更新可能改变数据库结构,需关注上游维护

Apple Mail Search Safe (fruitmail) 内容

手动下载zip · 1.5 kB
SKILL.mdtext/markdown
请选择文件