关于 apple-mail
用于在 macOS 上搜索、读取 Apple Mail 本地邮件并提取附件的技能。其 Bash 脚本读取 SQLite 索引和 `.emlx` 文件,不会修改邮件数据。
主要功能
- 01按发件人、收件人和主题搜索
- 02按日期、邮箱或状态筛选
- 03以 RFC822 格式读取邮件
- 04将附件提取到临时目录
- 05只读访问本地邮件
适用场景
- 01查找符合条件的邮件
- 02读取邮件并查看其元数据
- 03提取邮件中的附件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mitsuhiko/ agent-stuff --skill apple-mail安装后在 Claude Code 中输入/apple-mail确认已加载。
附带文件apple-mail.sh
详细介绍
Apple Mail 技能
在 macOS 上搜索、读取 Apple Mail 的本地存储,并提取附件。
工具
apple-mail.sh — 一个 Bash 脚本,用于查询 Apple Mail 的 SQLite 邮件索引,并从磁盘读取 .emlx 文件。只读——不会修改邮件数据。
快速参考
TOOL=~/Development/agent-stuff/skills/apple-mail/apple-mail.sh
# Search emails
$TOOL search --from "peter@" --subject "dinner" --limit 5
$TOOL search --after 2026-02-01 --has-attachment
$TOOL search --body "invoice" --mailbox "INBOX" --unread
$TOOL search --to "armin@" --before 2025-12-31
# Show message metadata, recipients, attachments, and summary
$TOOL info 783660
# Read the raw RFC822 email (headers + body)
$TOOL read 783660
# Extract attachments to a temp directory (prints the path)
$TOOL attachment 783660 # all attachments
$TOOL attachment 783660 "Rechnung.pdf" # specific file
# List all mailboxes with counts
$TOOL mailboxes
搜索选项
| 标志 | 说明 |
|---|---|
--from <addr> | 发件人地址子字符串 |
--to <addr> | 收件人地址子字符串 |
--subject <text> | 主题子字符串 |
--body <text> | 正文/摘要文本子字符串 |
--mailbox <name> | 邮箱 URL 子字符串(例如 INBOX、Sent、Trash) |
--after <YYYY-MM-DD> | 接收日期晚于指定日期 |
--before <YYYY-MM-DD> | 接收日期早于指定日期 |
--unread | 仅显示未读邮件 |
--flagged | 仅显示已标记邮件 |
--has-attachment | 仅显示带附件的邮件 |
--limit <n> | 最大结果数(默认值:20) |
输出格式
search返回以竖线分隔的表格,并带有标题行:id|sender|sender_name|subject|received|status|flagged|mailbox|attachmentsinfo返回结构化元数据部分read将原始 RFC822 邮件输出到 stdoutattachment将临时目录路径输出到 stdout,将文件列表输出到 stderr
注意事项
- 邮件 ID 是 Apple Mail 内部 ROWID(整数),显示在
id列中 .partial.emlx文件仅包含邮件头(未下载正文);read会对此发出警告- 附件会复制到
/tmp/下的临时目录;完成后请清理 body搜索会查询summaries表(Apple Mail 的纯文本预览),而非完整邮件正文- 邮箱 URL 使用百分号编码(例如
%5BGmail%5D=[Gmail],%20= 空格) - 默认情况下,搜索会排除已删除的邮件
评论
支持 Markdown