名称: send-email
描述: 通过 SMTP 发送邮件。请在 ~/.openclaw/openclaw.json 的 skills.entries.send-email.env 下配置。
元数据: {"openclaw":{"emoji":"📧","requires":{"anyBins":["python3"]}}}
通过 Python 脚本发送邮件。SMTP 配置会在脚本运行时由 OpenClaw 自动注入(从 ~/.openclaw/openclaw.json → skills.entries.send-email.env)。切勿读取任何配置文件(例如 ~/.openclaw/openclaw.json 或 workspace/openclaw.json),否则会在工具输出中暴露凭据。直接运行脚本即可,环境变量会自动注入。不要使用 ~/.msmtprc。
在 ~/.openclaw/openclaw.json 中配置:
"skills": {
"entries": {
"send-email": {
"enabled": true,
"env": {
"EMAIL_SMTP_SERVER": "smtp.163.com",
"EMAIL_SMTP_PORT": "465",
"EMAIL_SENDER": "your-email@163.com",
"EMAIL_SMTP_PASSWORD": "YOUR_AUTH_CODE"
}
}
}
}
| 变量 | 说明 |
|---|---|
| EMAIL_SMTP_SERVER | SMTP 服务器,例如 smtp.163.com, smtp.gmail.com |
| EMAIL_SMTP_PORT | 端口,465 (SSL) 或 587 (TLS) |
| EMAIL_SENDER | 发件人邮箱地址 |
| EMAIL_SMTP_PASSWORD | 授权码 / 应用密码(163/QQ:授权码;Gmail:应用密码) |
skills.entries.send-email.env 中的配置——不要使用读取工具查看 ~/.openclaw/openclaw.json 或 workspace/openclaw.json(这会暴露密钥)。如果技能已启用,请假定环境变量已配置;不要向用户索要密码。不要使用 ~/.msmtprc。bash
python3 ~/.openclaw/workspace/skills/send-email/send_email.py "收件人地址" "邮件主题" "邮件正文"python3 ~/.openclaw/workspace/skills/send-email/send_email.py "收件人地址" "邮件主题" "邮件正文" "/文件路径/文件名.pdf"python3 ~/.openclaw/workspace/skills/send-email/send_email.py 'recipient@example.com' '邮件主题' '正文内容'
python3 ~/.openclaw/workspace/skills/send-email/send_email.py 'recipient@example.com' '邮件主题' '正文内容' '/path/to/file.pdf'
smtp.163.com:465,需使用授权码(非登录密码)smtp.gmail.com:587,需使用应用密码smtp.qq.com:465,需使用授权码EMAIL_SMTP_PASSWORD 是否为正确的授权码或应用密码。EMAIL_SMTP_SERVER 和 EMAIL_SMTP_PORT 配置。