我用AI搓了个Outlook邮箱管理程序
我用AI搓了个Outlook邮箱管理程序
项目地址:https://github.com/fengyuanluo/FireMail
前缘
最近想研究大模型的逆向拿来自己用,之前也买过一些 Outlook 邮箱,但是都是拿 Thunderbird 管理的。这么做有啥坏处呢?一方面是雷鸟上放一大堆不常用的邮箱严重影响美观,另外一方面,雷鸟导入的过程也挺繁琐的… 当然,市面上也有类似功能的程序,比如心蓝邮件助手什么的,但是…收费
所以就起了想法,一个代码小白,能不能完全依靠 AI,完成一个项目?
过程简单回顾
很庆幸肝了两天经过三次彻底重构最后是让我搞成了,感谢 Cursor 的大力支持,愣生生让我用废了将近 3 个号的额度。
至于过程真是一言难尽,这里放一个最初版的首 Prompt,虽然最后这个版本是没有成功的,oauth2_imap_demo.py 是一个发卡网提供的收件模板…最后还得感谢这个模板,因为喂的官方教程根本用不了一点
1 | 我想建立一个名为花火邮箱助手的程序,具体功能如下 |
在折腾这玩意的时候遇到哪些问题呢?简单的梳理总结一下仅供参考。
- 首 Prompt 非常重要,它会定下整个程序的框架和基调,所以我在折腾过程中两次从头开始,就是因为首 Prompt 写得不够好导致代码变成了屎山…推倒重来都比缝缝补补来得简单
- 如果有 docker 化需求一定要提前做好准备,在把一个开发环境能正常用的代码 docker 化的过程中,我遇到的问题包括但不限于:前后端无法通信,Websocket 无法连接,前端后端 Websocket 一人一个端口导致必须映射三个端口还不能反代
- 继续说 Docker,选择基础镜像很重要。我现在是采用基于 Debian12 的 python:3.12-slim,除了体积大点其他都没啥,想过换了 Alpine 的来节省空间但是实在跑不起来,后续有时间再改改吧
- 从来没有想过日常使用的 Websocket 在实现上会这么困难前前后后改了不知道多少次……
- 尽量一次对话解决一个问题,新的问题换到新的对话解决,不然旧信息影响巨大
- 尽量不要使用最新的编译器版本,尤其当你没有自行处理依赖关系的时候,我第二版就是因为这个原因被毙掉了…
🔥 FireMail - 花火邮箱助手
🌟 一款专为 Microsoft 邮箱设计的批量收件工具,提供简单高效的邮件管理解决方案。
https://github.com/fengyuanluo/FireMail
🖼️ 项目截图
📋 项目功能
- 📥 批量导入邮箱:支持”邮箱—-密码—-客户端 ID—-RefreshToken”的批量导入格式
- 📊 邮箱管理:批量操作多个邮箱账户
- 📬 自动收信:对导入的邮箱进行自动收信操作
- 👥 多用户系统:支持用户注册、登录,权限分级管理
- 🔐 安全管理:数据存储在本地 SQLite 数据库,确保安全性
✨ 项目特点
- 🚀 批量管理:支持多选、全选邮箱,进行批量删除、收信操作
- 🔄 WebSocket 实时通信:及时反馈处理进度和结果
- 🧵 多线程处理:提高邮件收取效率,支持并行处理多个邮箱
- 🎨 简洁界面:简约现代的用户界面,操作简单直观
- 💻 跨平台支持:支持 Windows 和 Linux 平台
- 🔧 Docker 支持:可打包为 Docker 容器快速部署
🛠️ 技术栈
- 后端:Python 3.13, Flask, SQLite, WebSocket
- 前端:Vue 3, Vite, Element Plus
- 其他:OAuth 2.0, IMAP, Docker
🚀 部署教程
🐳 Docker 部署
1 | # 拉取镜像 |
🐙 Docker-Compose 部署
- 创建
docker-compose.yml
文件:
1 | version: '3' |
- 启动服务:
1 | docker-compose up -d |
📦 源代码部署
- 克隆仓库:
1 | git clone https://github.com/fengyuanluo/FireMail.git |
- 安装后端依赖:
1 | pip install -r requirements.txt |
- 安装前端依赖并构建:
1 | cd frontend |
- 启动后端服务:
1 | cd ../backend |
- 在浏览器中访问
http://localhost:3000
📝 使用说明
- 导入邮箱:在”批量导入”页面,按照”邮箱—-密码—-客户端 ID—-RefreshToken”格式导入邮箱
- 管理邮箱:在”邮箱管理”页面查看所有导入的邮箱,进行单个或批量操作
- 收取邮件:点击”收信”按钮开始收取邮件,实时查看进度
- 查看邮件:点击邮箱可以查看已收取的所有邮件内容
👤 用户认证
- 🔐 系统默认开启注册功能
- 👑 第一个注册的用户自动成为管理员
- 🔒 管理员可以开启或关闭注册功能
- 👥 管理员可以手动添加、删除用户和重置用户密码
🔮 未来开发计划
📧 支持更多邮箱类型:
- Gmail
- Yahoo
- 163 邮箱
- QQ 邮箱
- 其他主流邮箱服务
🏗️ 优化 Docker 镜像:
- 使用 Alpine Linux 作为基础镜像,大幅减小镜像体积
- 进一步优化构建流程,提高镜像构建效率
🔍 更多功能:
- 邮件内容搜索
- 邮件分类与标签
- 自动回复功能
📄 开源协议
本项目采用 Apache License 2.0 许可证进行开源。
⚠️ 免责声明
- 本工具仅用于方便用户管理自己的邮箱账户,请勿用于非法用途。
- 使用本工具过程中产生的任何数据安全问题、账户安全问题或违反相关服务条款的行为,均由用户自行承担责任。
- 开发者不对使用本工具过程中可能出现的任何损失或风险负责。
- 本工具与 Microsoft 等邮箱服务提供商没有任何官方关联,使用时请遵守相关服务条款。
- 邮箱账号和密码等敏感信息仅存储在本地 SQLite 数据库中,请确保服务器安全,防止数据泄露。
🔗 相关链接
- 项目地址:https://github.com/fengyuanluo/FireMail
- 问题反馈:请在项目的 Issues 页面提交
💖 如果您喜欢这个项目,请给它一个 Star!
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 洛风缘的小屋!