Appearance
能力展示
send-qq-email 把邮件正文和附件构造成可复核的 .eml 快照,返回结构化结果。下面的公开样例来自一次隔离的 --dry-run,展示中文纯文本、HTML 正文和附件的实际 MIME 构造结果。
打开公开预览
报告包含邮件主题、正文、附件和结果状态,并链接同目录的 message.eml、result.json 与演示附件。它是静态交付件,可在线打开;不是邮件客户端或发送按钮。
| Case | 输入 | 实际输出 | 已证明的能力 |
|---|---|---|---|
| 中文邮件离线预览 | 保留示例收发地址、中文主题、纯文本和 HTML 正文、一个公开文本附件 | status: dry_run、dry_run: true、完整 MIME 快照和结构化结果 | 中文编码、双正文、附件打包和预演结果生成 |
示例来源与处理
- 生成时间:2026-10-16;来源实现为本子仓
scripts/send_qq_email.py,使用--subject、--text、--html、--attach、--dry-run和必需的--output-dir。 - 收发地址均使用保留域
example.invalid,配置只包含无效占位值;清除了继承的 SMTP 环境变量,并显式指向不存在的示例配置文件,未读取真实私有配置。 - 验证进程将
smtplib.SMTP和socket.create_connection替换为遇调用即失败的防护,结果正常返回dry_run;没有建立 SMTP 连接或发送邮件。 .eml保留脚本生成的正文与 MIME 附件;生成时把 Message-ID 的主机域固定为example.invalid,避免暴露机器名。公开result.json仅把运行目录中的eml_path规范成同目录的message.eml,其余结果字段保持生成值。- 原有
send-email-showcase.png为未附原始交付证据的展示图,不作为真实投递的证明;本页的结果证据以本次公开 dry-run 为准。
复现时,从 workspace 根目录调用使用方式的自定义 dry-run 命令,并补上 --html 和 --attach <公开附件路径>。普通 dry-run 会读取调用方的配置;若要制作公开样例,须像本例一样隔离配置、使用示例地址,并检查交付物没有真实地址、正文或机器信息。
能力边界
| 可由本例复核 | 本例没有验证 |
|---|---|
| 中文文本与 HTML 正文同时进入 MIME | QQ 账号或授权码有效 |
| 附件文件名、类型和内容进入快照 | QQ SMTP 网络或 STARTTLS 可用 |
| 返回预演状态和文件路径 | SMTP 登录、真实发送、收件箱投递或阅读 |
sent_at 在 dry-run 中同样有值,只表示结果生成时间。本例的 status: dry_run 明确表示没有发送。真实发送需要有效私有配置和用户明确的发送意图、收件人;它不属于本次展示验证范围。
适合场景
- 发送前检查日报、通知或材料邮件的标题、正文和附件。
- 先生成
.eml快照供用户复核,再按已明确的发送意图执行。 - 用结构化结果区分成功预演、SMTP 调用成功和失败原因。
可复制的任务 prompt:
text
请用 QQ 邮箱 SMTP dry-run 这段中文正文和指定附件,不要真实发送;把 message.eml 与 result.json 写入本次 run root 的 send-qq-email/preview/,并汇报预演状态和产物路径。