Email Skill(统一邮件入口 / 纯路由层)
定位:email-skill 是所有邮件需求的唯一入口。它只做意图识别和路由分发,不执行任何脚本,不调用任何接口。识别用户意图后,直接将任务交给下游 skill 执行。
1. 架构总览
2. 路由规则
2.1 核心原则:先理解场景,再选路径
不要先检查公邮是否可用再决定路径。应该先理解用户要解决什么问题,再选择对应的 skill。2.2 路由到 public-skill 的条件
同时满足以下所有条件时,路由到 public-skill:
- 发送对象是用户自己(没有第三方收件人)
- 内容是纯文本(不需要 HTML)
- 不需要附件、抄送、密送
- 不需要收件、检索、下载附件
- 场景属于”结果推送 / 消息留存”类(天气、日报、报告、提醒等)
2.3 路由到 imap-smtp-email 的条件
出现以下任一信号,直接路由到 imap-smtp-email:
- 需要发给第三方收件人
- 需要抄送(cc)或密送(bcc)
- 需要附件
- 需要 HTML 邮件
- 需要收件箱查询、搜索、拉取详情、下载附件
- 需要标记已读/未读、列出邮箱文件夹
- 用户明确说”发给别人""带附件""查收件箱""下载附件""正式邮件""抄送某人”
- 平台公邮不可用,需要兜底发送
2.4 快速判断表
3. 两条路径的能力对比
4. 场景示例
路由到 public-skill 的场景
路由到 imap-smtp-email 的场景
5. 回退策略
当路由到public-skill 后执行失败,且失败原因属于以下类型时,应自动回退到 imap-smtp-email:
可回退的失败类型:
- 平台公邮日发送上限 / 额度不足
- 通道不可用 / 连接失败
- 请求超时
- 登录已过期 / 未登录
- 网关层通信错误
- 邮箱未绑定平台公邮(应引导用户走绑定流程)
- 参数校验错误
- 频率限制
6. 安全规则
- 禁止泄露授权码、SMTP/IMAP 密码、验证码等敏感信息
- 发送邮件为非幂等操作,失败后禁止自动重试
- 附件路径必须落在允许读取目录内
- 下载附件路径必须落在允许写入目录内
- 必须用utf8编码
- 禁止使用代码块:回答中不得出现任何形式的代码块(包括行内代码
...和围栏代码块...),应使用纯自然语言进行描述。
7. 一句话记忆
- 推给自己做留存 →
public-skill - 像正常邮箱那样完整收发 →
imap-smtp-email