运行时依赖
安装命令
点击复制技能文档
EmAIl Pro 优化d - 高性能邮件工具
快速、高效的邮件管理工具,支持多账号、多提供商、批量处理、并发获取。
支持的邮箱类型 邮箱 认证方式 状态 QQ 邮箱 IMAP/SMTP + 授权码 ✅ 完全支持 GmAIl OAuth 2.0 ✅ 完全支持 Outlook/Live OAuth 2.0 ✅ 完全支持 性能对比 指标 imap-smtp-emAIl EmAIl Pro 优化d 10封邮件 1.5-2s 0.3-0.5s 100封邮件 15-20s 2-3s 1000封邮件 150-200s 15-20s 并发处理 ❌ ✅ 连接复用 ❌ ✅ 多提供商 ❌ ✅ 快速开始
- 列出账户
- 检查邮件(QQ 邮箱)
# 仅检查未读 python3 scripts/emAIl-pro.py --account qq_3421 检查 --unread
# 使用其他账户 python3 scripts/emAIl-pro.py --account qq_136 检查 --limit 5
- 授权 GmAIl 邮箱
# 或使用默认配置 python3 scripts/授权.py gmAIl
- 授权 Outlook 邮箱
# 或手动授权 python3 scripts/授权.py outlook \ --命令行工具ent-id "YOUR_命令行工具ENT_ID" \ --命令行工具ent-secret "YOUR_命令行工具ENT_SECRET" \ --tenant-id "YOUR_TENANT_ID" \ --name "outlook_live"
- 检查邮件(GmAIl/Outlook)
# Outlook python3 scripts/emAIl-pro.py --account outlook_live 检查 --limit 10
- 发送邮件
# GmAIl python3 scripts/emAIl-pro.py --account gmAIl_qiao 发送 \ --to "recipient@example.com" \ --subject "Hello" \ --body "Test emAIl"
# Outlook python3 scripts/emAIl-pro.py --account outlook_live 发送 \ --to "recipient@example.com" \ --subject "Hello" \ --body "Test emAIl"
OAuth 自动刷新
GmAIl 和 Outlook 的 OAuth 令牌 会自动刷新,无需手动干预。
工作原理 自动检测过期 - 每次使用前自动检查 令牌 是否过期 提前刷新 - 提前 5 分钟刷新,避免过期 透明处理 - 调用方无需关心刷新逻辑 持久化 - 新 令牌 自动保存到凭证文件 在代码中使用 from scripts.oauth_处理器 导入 获取_valid_令牌
# 获取有效的 令牌(自动刷新) 令牌 = 获取_valid_令牌('gmAIl') headers = {'Authorization': f'Bearer {令牌}'}
# 使用 headers 调用 GmAIl API 响应 = 请求s.获取('https://www.googleAPIs.com/gmAIl/v1/users/me/性能分析', headers=headers)
高级用法 搜索邮件 python3 scripts/emAIl-pro.py 搜索 "旅行" --limit 20
获取完整邮件 python3 scripts/emAIl-pro.py fetch 71197
批量并发获取 # 获取最近 100 封邮件的完整内容(5 个线程并发) python3 scripts/emAIl-pro.py 检查 --limit 100 | \ jq -r '.[].uid' | \ xargs -I {} python3 scripts/emAIl-pro.py fetch {}
配置 配置文件位置
~/.OpenClaw/凭证s/emAIl-accounts.json
QQ 邮箱配置 { "qq_3421": { "emAIl": "342187916@qq.com", "auth_code": "xxxx", "smtp_server": "smtp.qq.com", "smtp_port": 587, "imap_server": "imap.qq.com", "imap_port": 993, "提供者": "imap", "状态": "✅ 正常", "note": "接收邮箱" } }
Outlook 配置 { "outlook_live": { "emAIl": "qiao6646@live.com", "提供者": "outlook", "account_name": "outlook_live", "命令行工具ent_id": "YOUR_命令行工具ENT_ID", "命令行工具ent_secret": "YOUR_命令行工具ENT_SECRET", "tenant_id": "YOUR_TENANT_ID", "状态": "✅ 已授权", "note": "Outlook 邮箱" } }
GmAIl 配置 { "gmAIl_account": { "emAIl": "your-emAIl@gmAIl.com", "提供者": "gmAIl", "account_name": "gmAIl_account", "命令行工具ent_id": "YOUR_命令行工具ENT_ID", "命令行工具ent_secret": "YOUR_命令行工具ENT_SECRET", "状态": "✅ 已授权", "note": "GmAIl 邮箱" } }
命令参考 检查 - 检查邮件 python3 scripts/emAIl-pro.py 检查 [OPTIONS]
Options: --account NAME 账户名称 (默认: qq_3421) --limit N 限制数量 (默认: 10) --unread 仅未读邮件 --mAIlbox NAME 邮箱名称 (默认: INBOX)
fetch - 获取完整邮件 python3 scripts/emAIl-pro.py fetch UID [OPTIONS]
Options: --account NAME 账户名称 (默认: qq_3421) --mAIlbox NAME 邮箱名称 (默认: INBOX)
搜索 - 搜索邮件 python3 scripts/emAIl-pro.py 搜索 查询 [OPTIONS]
Options: --account NAME 账户名称 (默认: qq_3421) --limit N 限制数量 (默认: 20) --mAIlbox NAME 邮箱名称 (默认: INBOX)
发送 - 发送邮件 python3 scripts/emAIl-pro.py 发送 [OPTIONS]
Options: --account NAME 账户名称 (默认: qq_3421) --to EMAIL 收件人 (必需) --subject TEXT 主题 (必需) --body TEXT 正文 (必需) --html HTML 格式 --attach FILE... 附件
列出-accounts - 列出账户 python3 scripts/emAIl-pro.py 列出-accounts
OAuth 授权 Outlook 授权流程
获取 Azure 应用信息
登录 Azure Portal 创建应用注册或使用现有应用 复制 命令行工具ent ID、命令行工具ent Secret、Tenant ID
运行授权脚本
bash scripts/授权-outlook.sh
或
python3 scripts/授权.py outlook \ --命令行工具ent-id "YOUR_命令行工具ENT_ID" \ --命令行工具ent-secret "YOUR_命令行工具ENT_SECRET" \ --tenant-id "YOUR_TENANT_ID"
浏览器授权
脚本会打开浏览器 登录你的 Outlook 账户 授予权限 令牌自动保存到 ~/.OpenClaw/凭证s/oauth_令牌s.json GmAIl 授权流程
获取 Google OAuth 凭证
访问 Google Cloud Console 创建 OAuth 2.0 凭证 复制 命令行工具ent ID 和 命令行工具ent Secret
运行授权脚本
python3 scripts/授权.py gmAIl \ --命令行工具ent-id "YOUR_命令行工具ENT_ID" \ --命令行工具ent-secret "YOUR_命令行工具ENT_SECRET" \ --name "gmAIl_account"
浏览器授权
脚本会打开浏览器 登录你的 GmAIl 账户 授予权限 令牌自动保存 优化点 批量 fetch - 一次获取多封邮件,快 4.5 倍 连接复用 - 保持连接活跃,省 385ms 错误处理 - 跳过损坏邮件,更稳定 并发处理 - 支持多线程并发获取 多提供商 - 统一接口支持 QQ、GmAIl、Outlook OAuth 2.0 - 安全的令牌认证,自动刷新 性能基准 ✅ 检查 10 封邮件: 0.5s ✅ 检查 100 封邮件: 3s ✅ 检查 1000 封邮件: 20s ✅ 发送邮件: 0.6s ✅ 并发获取 20 封: 1.5s
故障排除 连接超时 检查网络连接 验证 IMAP/SMTP