IMAP Email Reader
2026-03-28
新闻来源:网淘吧
围观:16
电脑广告
手机广告
IMAP 电子邮件阅读器
通过 IMAP 协议读取、搜索和管理电子邮件。支持 ProtonMail Bridge、Gmail IMAP 以及任何标准 IMAP 服务器。
快速开始
检查新邮件:
node skills/imap-email/scripts/imap.js check
获取特定邮件:
node skills/imap-email/scripts/imap.js fetch <uid>
标记为已读:
node skills/imap-email/scripts/imap.js mark-read <uid>
搜索邮箱:
node skills/imap-email/scripts/imap.js search --from "sender@example.com" --unseen
配置
快速设置(ProtonMail Bridge):
cd skills/imap-email
./setup.sh
设置助手将提示输入 Bridge 凭据并测试连接。
手动设置:
- 复制
.env.example到.env在技能文件夹中 - 填写您的 IMAP 凭据
- 该
.env文件会被 git 自动忽略
环境变量:
IMAP_HOST=127.0.0.1 # Server hostname
IMAP_PORT=1143 # Server port
IMAP_USER=your@email.com
IMAP_PASS=your_password
IMAP_TLS=false # Use TLS/SSL connection
IMAP_REJECT_UNAUTHORIZED=false # Set to false for self-signed certs (optional)
IMAP_MAILBOX=INBOX # Default mailbox
⚠️ 安全提示:切勿提交您的.env 文件!它已经在.gitignore中以防止意外。
ProtonMail Bridge 设置:
- 安装并运行 ProtonMail Bridge
- 使用
127.0.0.1:1143作为 IMAP 服务器 - 密码由 Bridge 生成(不是您的 ProtonMail 密码)
- TLS:使用
false(Bridge 使用 STARTTLS) REJECT_UNAUTHORIZED:设置为false(Bridge 使用自签名证书)
Gmail IMAP 设置:
- 主机:
imap.gmail.com - 端口:
993 - TLS:
true - 启用“安全性较低的应用的访问权限”或使用应用专用密码
REJECT_UNAUTHORIZED:省略或设置为true(默认值)
命令
check
检查邮箱中未读/新邮件。
node scripts/imap.js check [--limit 10] [--mailbox INBOX] [--recent 2h]
选项:
--limit <n>:最大结果数(默认:10)--mailbox <name>:要检查的邮箱(默认:INBOX)--recent <time>:仅显示最近 X 时间内的邮件(例如:30m、2h、7d)
返回包含以下信息的 JSON 数组:
- uid、from、subject、date、snippet、flags
fetch
通过 UID 获取完整的邮件内容。
node scripts/imap.js fetch <uid> [--mailbox INBOX]
返回包含完整正文(文本 + HTML)的 JSON。
search
使用过滤器搜索邮件。
node scripts/imap.js search [options]
Options:
--unseen Only unread messages
--seen Only read messages
--from <email> From address contains
--subject <text> Subject contains
--recent <time> From last X time (e.g., 30m, 2h, 7d)
--since <date> After date (YYYY-MM-DD)
--before <date> Before date (YYYY-MM-DD)
--limit <n> Max results (default: 20)
--mailbox <name> Mailbox to search (default: INBOX)
时间格式示例:
30m= 最近30分钟2小时= 最近2小时7天= 最近7天
标记为已读 / 标记为未读
将邮件标记为已读或未读。
node scripts/imap.js mark-read <uid> [uid2 uid3...]
node scripts/imap.js mark-unread <uid> [uid2 uid3...]
列出邮箱
列出所有可用的邮箱/文件夹。
node scripts/imap.js list-mailboxes
Cron 集成
使用 Clawdbot cron 设置定期邮件检查:
# Check email every 15 minutes, deliver to iMessage
clawdbot cron add \
--name "email-check" \
--cron "*/15 * * * *" \
--session isolated \
--message "Check for new ProtonMail emails and summarize them" \
--deliver \
--channel imessage \
--to "+15085600825"
在隔离会话中,代理可以运行:
node /Users/mike/clawd/skills/imap-email/scripts/imap.js check --limit 5
工作流示例
早晨邮件摘要:
- 运行
check --limit 10 --recent 12h - 总结夜间未读邮件
- 将摘要发送到首选频道
检查来自特定发件人的最近邮件:
- 运行
search --from "important@company.com" --recent 24h - 如有需要,获取完整内容
- 处理完毕后标记为已读
每小时紧急邮件检查:
- 运行
搜索 --recent 1h --unseen - 筛选重要关键词
- 提取待办事项
- 如紧急则发送通知
每周摘要:
- 运行
搜索 --recent 7d --limit 20 - 汇总活动
- 生成周报
依赖项
所需软件包:imap-simple, mailparser, dotenv
安装:
cd skills/imap-email
npm install
这将安装package.json中列出的所有依赖项
。
- 安全注意事项
将凭据存储在.env文件中ProtonMail Bridge密码不是您的账户密码 - 必须运行Bridge才能访问ProtonMail IMAP
- 考虑为Gmail使用应用专用密码
- 故障排除
连接超时:
验证IMAP服务器是否正在运行且可访问
- 检查主机/端口配置
- 使用以下命令测试:
- telnet <主机> <端口>
认证失败:
验证用户名(通常是完整电子邮件地址)
- 检查密码是否正确
- 对于ProtonMail Bridge:使用Bridge生成的密码,而非账户密码
- 对于Gmail:如果启用了双重验证,请使用应用密码
- TLS/SSL错误:
使
- IMAP_TLS
设置符合服务器要求(SSL为true,STARTTLS为false)对于自签名证书(例如,ProtonMail Bridge):设置 - IMAP_REJECT_UNAUTHORIZED=false
IMAP_REJECT_UNAUTHORIZED=false - 检查端口是否与TLS设置匹配(SSL对应993,STARTTLS对应143)
结果为空:
- 验证邮箱名称(区分大小写)
- 检查搜索条件
- 列出包含以下内容的邮箱
list-mailboxes
文章底部电脑广告
手机广告位-内容正文底部
上一篇:Claude Code Usage
下一篇:Deep Research


微信扫一扫,打赏作者吧~