send-email

📧 安全注入式 SMTP 邮件发送

通过 SMTP 协议发送邮件,支持主流邮箱(163/Gmail/QQ)及附件,配置注入式安全机制避免凭证泄露。

收藏
19.4k
安装
7k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

send-email 是一个基于 Python 的 SMTP 邮件发送工具,通过命令行脚本实现邮件发送与附件传输。用户需在 ~/.openclaw/openclaw.json 中配置 SMTP 服务器参数,包括服务器地址、端口、发件人邮箱及授权码/App 密码。

关键执行指令

python3 ~/.openclaw/workspace/skills/send-email/send_email.py "recipient" "Subject" "Body"

支持附件追加第四个参数 /path/to/file.pdf

显著优点

1. 配置注入安全机制:OpenClaw 在运行时自动注入环境变量,禁止读取配置文件,从根本上避免凭证在工具输出中暴露
2. 多服务商兼容:内置 163、Gmail、QQ 等主流 SMTP 配置参考,支持 SSL(465) 和 TLS(587) 两种加密端口

3. 轻量依赖:仅需系统预装的 python3,无需额外二进制文件

4. 附件支持:单文件附件传递能力满足基础办公场景

潜在缺点与局限性

  • 单文件附件限制:一次只能附加一个文件,批量附件需多次调用
  • 无富文本支持:仅纯文本邮件,不支持 HTML 格式或内嵌图片
  • 配置静态化:SMTP 参数需预先写入配置文件,无法动态切换多邮箱账户
  • 无发送状态持久化:成功/失败仅依赖脚本退出码,无内置重试或队列机制
  • Python 环境依赖:依赖系统 python3,Windows 环境需额外确认 PATH 配置

适合人群

  • 开发者/运维人员:需要在自动化工作流中集成邮件通知(CI/CD 报警、定时报告)
  • 个人用户:快速发送纯文本邮件或单文件传输,不愿配置完整邮件客户端
  • 隐私敏感用户:欣赏注入式凭证管理,避免密码硬编码或 shell history 泄露

常规风险

| 风险项 | 说明 | 缓解措施 |
|--------|------|----------|
| 凭证配置错误 | 使用登录密码而非授权码导致认证失败 | 严格遵循文档:163/QQ 用授权码,Gmail 用 App Password |
| 端口混淆 | 465(SSL) 与 587(TLS) 误配导致连接失败 | 参考文档中的 SMTP reference 表格 |
| 路径注入 | 用户输入的附件路径未校验 | 确保路径参数来自可信来源或提前校验 |
| 邮件滥用 | 脚本被用于批量垃圾邮件发送 | 依赖 OpenClaw 的权限管控层,本身无频率限制 |

总体评估:send-email 是一个设计简洁、安全意识突出的基础邮件工具,适合技术用户嵌入自动化流程,但不适合作为通用邮件客户端或营销邮件发送方案。

send-email 内容

手动下载zip · 4.5 kB
README.mdtext/markdown
请选择文件