apple-mail-search

📧 极速安全的本地邮件搜索专家

基于 SQLite 的 Apple Mail 本地邮件极速搜索工具,只读模式保障数据安全,支持全文检索与 JSON 输出,专为 macOS 命令行用户打造高效邮件工作流。

收藏
11.2k
安装
2.7k
版本
v1.0.0
CLS 安全性认证2026-05-14
点击查看完整报告 >

使用说明

核心用法

Fruitmail 是一款专为 macOS 设计的 Apple Mail 搜索增强工具,通过直接读取本地 SQLite 数据库(~/Library/Mail/V*/MailData/Envelope Index)实现毫秒级邮件检索。用户可通过 fruitmail search 执行复杂条件查询(主题、时间范围、未读状态),使用 fruitmail sender 按发件人筛选,,fruitmail body <id>> 读取完整邮件正文(借助 AppleScript),并支持 --json 格式输出便于管道处理。工具还提供 --copy 安全模式,先复制数据库再查询以彻底避免任何误操作风险。

显著优点

极致性能:相比原生 AppleScript 遍历 13 万封邮件需 8 分钟以上,SQLite 查询仅需约 50 毫秒,性能提升近万倍。只读安全:设计上严格只读,无法修改或删除邮件,从源头杜绝数据损坏风险。灵活输出:支持 JSON 格式与 jq 等工具链集成,方便开发者构建自动化工作流。精准定位:支持邮件 ID 直接跳转 Mail.app 打开,实现「搜索-预览-处理」无缝衔接。透明可控:开源 CLI 工具,所有操作本地完成,无云端传输隐私顾虑。

潜在缺点与局限性

平台锁定:仅支持 macOS 及 Apple Mail.app,Windows/Linux 用户或 Thunderbird/Outlook 用户无法使用。功能单一:纯搜索工具,不支持邮件撰写、发送、移动、标记等管理操作,需配合 himalaya 等 IMAP 工具完成完整工作流。依赖外部包:Skill 本身为文档型,实际功能依赖 npm 全局安装的 apple-mail-search-cli,版本管理和供应链安全需用户自行把控。正文读取瓶颈:邮件正文仍需调用 AppleScript 获取,大量正文导出时性能会下降。无图形界面:纯命令行工具,对非技术用户门槛较高。

适合的目标群体

开发者与运维工程师:习惯终端工作流,需要将邮件搜索集成到脚本或 CI/CD 流程。效率极客:追求极致搜索速度,对 Apple Mail 原生搜索性能不满的重度用户。数据分析师:需要批量导出邮件元数据进行统计或审计。隐私敏感用户:希望邮件数据完全本地处理,拒绝云端索引服务。

使用风险

依赖项风险:npm 包的维护状态、漏洞修复依赖上游社区,建议定期审计。数据库兼容性:Apple Mail 版本升级可能导致数据库结构变化,需关注工具更新。敏感信息暴露:JSON 输出或终端历史可能留存邮件内容,共享环境需注意清理。AppleScript 权限:首次使用需授权终端访问 Mail.app,权限管理不当可能引发误操作。无事务回滚:虽为只读,但 --copy 模式产生的临时副本需手动清理,长期运行可能占用磁盘空间。

安全解读

核心用法

apple-mail-search-safe 是一个基于 Node.js 的 CLI 工具,专为 macOS Apple Mail 用户提供高性能邮件检索能力。其核心机制是直接读取 Mail.app 的本地 SQLite 数据库(~/Library/Mail/V{9,10,11}/MailData/Envelope Index),实现毫秒级搜索,而非依赖传统 AppleScript 的逐封遍历。

关键功能

  • 复杂搜索:支持按主题、时间范围、未读状态等多维度过滤
  • 发送者定向:快速定位特定域名或邮箱地址的邮件
  • 内容读取:通过 AppleScript 获取完整邮件正文(支持 JSON 输出)
  • 系统集成:可直接在 Mail.app 中打开指定邮件

性能对比

| 方法 | 13 万封邮件检索时间 |
|------|------------------|
| AppleScript 全遍历 | 8 分钟以上 |
| SQLite 直查(本工具) | **约 50 毫秒** |

显著优点

1. 极致性能:相比原生 AppleScript 方案提速 9600 倍以上,解决大规模邮箱用户的检索痛点
2. 安全设计:默认只读模式,可选 --copy 参数先复制数据库再查询,彻底避免误操作风险

3. 输出灵活:支持 --json 管道输出,便于与 jq 等工具链集成自动化处理

4. 零网络依赖:纯本地操作,邮件数据不外泄

潜在局限

  • 平台锁定:仅支持 macOS,且需本地 Mail.app 数据库
  • 功能边界:仅搜索/读取,不支持发送邮件(需配合 himalaya 等 IMAP/SMTP 工具)
  • 外部依赖:运行时依赖 fruitmail npm 包,需 Node.js 环境
  • 正文获取瓶颈:邮件正文仍需 AppleScript 介入,非纯 SQLite 查询

适合人群

  • 开发者/运维:需要批量处理邮件、构建自动化工作流
  • 重度邮件用户:邮箱规模 10 万+,原生搜索卡顿明显
  • 隐私敏感用户:偏好本地工具、拒绝云端邮件索引服务
  • CLI 爱好者:习惯终端操作,追求效率最大化

常规风险

| 风险点 | 说明 | 缓解措施 |
|--------|------|---------|
| 数据库损坏(极低) | 即使只读,异常 IO 仍可能引发 SQLite 锁定 | 使用 `--copy` 安全模式 |
| 权限过度授予 | `fruitmail` 可能请求超出必要的文件访问 | 审查 macOS 隐私设置,仅授权 `~/Library/Mail/` 读取 |
| 上游供应链 | npm 包更新可能引入变更 | 锁定版本、审查 `apple-mail-search-cli` 仓库动态 |
| T3 来源持续性 | 个人开发者维护,长期更新存疑 | 关注 GitHub 活跃度,准备替代方案 |

技术信任度

本 Skill 经 CLS-Certify v2.1.0 扫描认证:S 级安全(满分 100),无敏感信息泄露、无可执行代码注入、无网络异常行为。核心风险集中于外部 CLI 依赖的运行时行为监控,建议用户自行审计 fruitmail 二进制。

apple-mail-search 内容

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