全功能邮件管理助手
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_fcba917f/email-master。
技能介绍
为什么需要它
在 Agent 或自动化脚本里处理邮件,常见做法是堆 requests 调各家 REST API,或引入较重的第三方库。本技能走另一条路:只用 Python 标准库 smtplib 与 imaplib,在本地脚本里完成 SMTP 发信与 IMAP 收信,不增加 requirements.txt 里的依赖项。
能力概览
发送侧(scripts/send_email.py):纯文本或 HTML 正文(也可传 HTML 文件路径)、多附件、内嵌图片、多收件人与抄送/密送、回复/转发、高优先级;发送失败时可配置重试。
接收与管理侧(scripts/mail_client.py):列出文件夹与邮件、分页、仅未读;按主题、发件人、收件人、日期、未读状态搜索;查看正文、HTML、附件列表与回复链;批量删除、标记已读/未读/星标、移动文件夹;单个或全部附件落盘;支持 JSON 输出便于下游程序消费。
配置识别(scripts/email_config.py):根据邮箱域名自动匹配 SMTP/IMAP 主机与端口,覆盖 163、QQ、126、Gmail、Outlook、阿里云等 30+ 域名;详细表见 references/email_providers.md。
典型流程:先用配置脚本确认服务器参数 → 在网页邮箱开启 POP3/SMTP/IMAP 并拿到授权码/应用密码(多数厂商不接受登录密码)→ 再调用发送或 mail_client 子命令。
边界与注意点
- 认证失败多半是用了账户密码而非授权码;Gmail 等需两步验证下的应用密码。
- 端口与加密要一致:常见 465 用 SSL,587 用 STARTTLS。
- 163/126/Yeah:IMAP 可能报「Unsafe Login」;脚本内置 ID 命令缓解,仍失败时需网页端确认 IMAP 已开并授权。
- 文件夹名因服务商而异,移动或 select 前先用
folders查看实际名称。
使用场景
- 运维脚本需按发件人/主题筛出告警邮件后批量删除或移到归档文件夹
- Agent 在对话中根据未读列表拉取正文,生成回复并通过 SMTP 带附件回传
- 定时任务用 JSON 输出解析收件箱,把含特定关键词的邮件附件全部下载到本地目录
- 市场同事要把 HTML 周报、多份 PDF 一次发给多人并抄送负责人,且需设置高优先级
适合人员
- 要在无第三方邮件库的前提下,用 cron 或 Agent 直连企业/个人邮箱的后端工程师
- 每天按未读与主题分拣工单邮件,并批量标记已读或星标的客服或 IT 支持负责人
- 需要把网易 163/126 等 IMAP「Unsafe Login」场景纳入自动化、并愿意用授权码配置的发信脚本维护者
- 编写内部工具、要根据邮箱域名自动填 SMTP/IMAP 主机与端口再调用收发脚本的自动化作者