邮件管理器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_a3ed06bc/mail-agent-goose。
技能介绍
要解决什么问题
在 Agent 或 Gateway 里,你往往只想用一句话完成「查收件箱」「给某人发通知」「按主题搜邮件」或「把附件落到本地」,而不是每次打开网页邮箱或手写一套 IMAP/SMTP 脚本。本技能把常见邮箱操作封装成可对话触发的流程,底层仍是标准 IMAP / SMTP 协议,不依赖网页登录。
核心能力怎么工作
- 配置:交互向导或手写
.env,按邮箱类型填写主机、端口与账号;Gmail 需 App Password,163/QQ 等需 授权码(不是网页登录密码)。 - 收信与检索:通过
node imap.js check查看最近或未读邮件,可用--recent 2h限定时间;search支持按发件人、主题等条件查找;fetch拉取单封正文。 - 发信:
node smtp.js send支持纯文本、HTML(--html)、多收件人(逗号分隔)及--attach附件。 - 本地管理:
download将指定邮件附件写入允许目录(需在ALLOWED_WRITE_DIRS中配置);mark-read标记已读。
自然语言侧可用「查收件箱」「发邮件给 xxx」「搜索 xxx 的邮件」「下载附件」「配置邮箱」等说法唤醒,由技能映射到上述 CLI。
边界与注意点
- 必须在邮箱服务商处开启 IMAP/SMTP;不支持仅靠网页会话登录。
- 不支持定时发送、发送后删除对方邮件、营销式千人千面群发;附件大小受各厂商限制(如 Gmail 约 25MB)。
- 连接失败时优先核对主机/端口、是否用对密码类型,以及国内邮箱开启服务后可能需要等待数分钟生效。可与 html-mail-goose 搭配生成 HTML 正文后再发送。
使用场景
- 在 Gateway 对话里说「查收件箱」,用 `imap.js check --unseen` 确认过去几小时有没有未读告警邮件
- 需要给多位同事发同一封带 PDF 的通知,用 `smtp.js send` 的逗号分隔 `--to` 和 `--attach` 一次发出
- 客户说「订单邮件发过了」,用 `imap.js search --subject 订单` 或 `--from` 在邮箱里定位对应会话
- 收到带报表的邮件后,用 `imap.js download` 把指定 UID 的附件落到 `~/Downloads` 再交给本地工具处理
适合人员
- 用 OpenClaw Gateway 跑自动化、希望用自然语言查 163/QQ/Gmail 收件箱而不是切网页的后端或运维
- 每周要把固定附件(周报、对账单)邮件发给同一组地址的小团队负责人或行政
- 在 Agent 流程里要根据发件人或主题回溯邮件、并把附件下载到白名单目录的客服或实施同学
- 刚接入企业邮箱、需要在 `.env` 里区分 App Password/授权码并验证 `smtp.js test` 的集成开发者