Email Webhook

📬 实时邮件唤醒,安全边缘网关

安全接收邮件 webhook 并实时唤醒 AI Agent,支持 Cloudflare 边缘部署,具备命令注入和路径遍历防护。

收藏
3.4k
安装
1.6k
版本
1.8.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

Email Webhook Receiver 综合评估

核心用法

Email Webhook Receiver 是一个专为 AI Commander 设计的邮件接收网关,将传统邮件转换为标准化的 JSON webhook 推送。该 skill 监听 HTTP 端点接收邮件内容,并立即通过 openclaw system event --mode now 唤醒 agent 处理,消除心跳轮询的延迟。

部署模式

  • 本地/服务器:直接运行 Node.js 服务,默认监听 19192 端口
  • Cloudflare 边缘:通过 Workers 路由邮件到 2082 端口,支持 Flexible SSL

关键特性

  • 邮件元数据与正文持久化到 inbox.jsonl(JSON Lines 格式)
  • 环境变量驱动配置,零代码修改即可部署
  • openclaw CLI 深度集成,形成邮件→唤醒→处理的闭环

显著优点

1. 实时响应:强制 now 模式唤醒,相比轮询方案延迟从分钟级降至毫秒级
2. 边缘原生:2082 端口是 Cloudflare 原生支持的 HTTP origin 端口,无需复杂反向代理

3. 安全设计分层

4. 运维友好:单文件依赖(express@4.21.2),日志式存储便于审计和清理

  • 输入层:邮件头字段禁止参与 shell 命令构造(spawn + 参数数组)
  • 文件层:path.basename() 强制截断路径,阻止 ../../../etc/passwd 类攻击
  • 认证层:强制 Bearer Token,无默认值,服务拒绝无密钥启动

潜在缺点与局限性

  • 单点持久化inbox.jsonl 无分片、无压缩、无自动轮换,高流量场景可能快速膨胀
  • 无内置 TLS:本地部署需自行配置反向代理(如 nginx)处理 HTTPS
  • Cloudflare 锁定:2082 端口优化隐含对 Cloudflare 生态的偏好,其他 CDN 可能需要端口映射
  • 无邮件发送能力:纯接收端,如需双向通信需配合其他 skill
  • Node 版本依赖:express@4.21.2 要求 Node.js 环境,轻量级边缘函数场景可能显臃肿

适合人群

  • 使用 AI Commander 构建邮件自动化工作流的技术用户
  • 需要在 Cloudflare 边缘网络部署邮件触发器的开发者
  • 对实时性敏感、不愿维护 IMAP/SMTP 长连接的场景

常规风险

| 风险类型 | 等级 | 说明 |
|---------|------|------|
| 密钥泄露 | 中 | `WEBHOOK_SECRET` 硬编码或提交到代码仓库将导致未授权邮件注入 |
| 存储泄露 | 中 | `inbox.jsonl` 包含完整邮件内容,需设置文件权限并定期清理 |
| DDoS/滥用 | 低 | 端点暴露后可能被滥用于触发 agent 计算,需配合 Cloudflare 速率限制 |
| 供应链 | 低 | express@4.21.2 为固定版本,需关注 CVE 更新 |

使用建议

1. 生产环境将 WEBHOOK_SECRET 注入为 Docker secret 或云厂商密钥管理服务
2. 配置 logrotate 或定时任务压缩/删除 inbox.jsonl,建议保留 7 天滚动窗口

3. Cloudflare 部署时务必显式指定 :2082 端口,避免 80/443 默认行为陷阱

Email Webhook 内容

scripts文件夹
手动下载zip · 3.5 kB
webhook_server.jstext/javascript
请选择文件