用途:通过 IMAP 协议读取、搜索和管理邮件,通过 SMTP 协议发送邮件,兼容 Gmail、Outlook、163.com、vip.163.com、126.com、vip.126.com、188.com、vip.188.com、yeah.net、QQ Mail 及任何标准 IMAP/SMTP 服务器。
主要能力:IMAP 侧支持 check(查看新/未读邮件)、fetch(按 UID 获取完整内容)、download(下载全部或指定附件)、search(按未读/已读、发件人、主题、时间范围、日期过滤)、mark-read/mark-unread(标记已读/未读)、list-mailboxes(列出邮箱文件夹)。SMTP 侧支持 send(发送纯文本、HTML、带附件、多收件人、抄送密送的邮件)和 test(向自己发送测试邮件验证连接)。
使用方式:在技能目录创建 .env 或设置环境变量,配置 IMAP_HOST、IMAP_PORT、IMAP_USER、IMAP_PASS、IMAP_TLS、IMAP_REJECT_UNAUTHORIZED、IMAP_MAILBOX,以及 SMTP_HOST、SMTP_PORT、SMTP_SECURE、SMTP_USER、SMTP_PASS、SMTP_FROM、SMTP_REJECT_UNAUTHORIZED。依赖安装执行 npm install。命令示例:node scripts/imap.js check --limit 10;node scripts/imap.js search --unseen --from someone@example.com;node scripts/smtp.js send --to recipient@example.com --subject "Hello" --body "World" --attach report.pdf。
适用场景:自动化收发与整理邮件、按条件检索邮箱、批量下载附件、发送通知或报表邮件。
限制与注意:Gmail 不接受普通账户密码,需在 https://myaccount.google.com/apppasswords 生成 16 位应用专用密码并启用两步验证;163.com 需使用授权码而非账户密码,并先在网页设置中开启 IMAP/SMTP。凭据应存入 .env 并加入 .gitignore。自签名证书需将 IMAP_REJECT_UNAUTHORIZED 或 SMTP_REJECT_UNAUTHORIZED 设为 false。常见问题包括连接超时(检查主机/端口)、认证失败(核对用户名与密码类型)、TLS/SSL 错误(匹配 IMAP_TLS/SMTP_SECURE 设置)。