GitHub 仓库 ·
快速开始 ·
批量恶搞 ·
常见问题
🚀 AI 自动写情书,批量发送到好友邮箱,把"社死"进行到底!
基于 CrewAI 多智能体框架:作家 Agent 创作 → 编辑 Agent 润色 → 寄信人 Agent 一键投递
好友的邮箱,就是你的表白现场 💘
| 功能 | 说明 |
|---|---|
| 🤖 三 Agent 流水线 | 浪漫作家 → 资深编辑 → 邮件投递员,协作完成全流程 |
| ✍️ 情书自动生成 | 输入一句话请求,自动生成 300-500 字真情实感情书 |
| 🧹 自动润色 | 编辑 Agent 修正语法、优化表达,署名自然不"出戏" |
| 📁 本地存档 | 每封情书自动保存为 output/love_letter_时间戳.txt |
| 📧 SMTP 一键发送 | 通过 163 邮箱 SSL 加密发送,无需额外邮件库 |
| ⚡ 批量恶搞 | run_concurrent.py 支持多任务并发,一次恶搞一群好友 |
| 🎭 匿名防追踪 | 纯邮箱地址发件,不暴露真实姓名 |
给我的爱人:
提笔时,窗外夜色正温柔……是你让我明白,最深沉的爱意,原来可以如此安静。它不喧哗,不索取,只是安然存在于那里——像大地承托万物,像星辰点亮长夜……
永远属于你的人
pip install -r requirements.txtcp .env.example .env编辑 .env 填入配置:
# LLM API(支持任意 OpenAI 兼容接口,默认小米 MIMO)
OPENAI_API_KEY=你的_API_密钥
OPENAI_API_BASE=https://api.openai.com/v1
OPENAI_MODEL_NAME=mimo-v2.5-pro
# 163 邮箱 SMTP(需要开启 SMTP 服务并获取授权码)
SENDER_EMAIL=你的邮箱@163.com
SENDER_PASSWORD=你的163授权码
# 收件人邮箱
RECEIVER_EMAIL=好基友的邮箱@example.com📌 163 授权码获取:登录 163 邮箱 → 设置 → POP3/SMTP/IMAP → 开启 SMTP 服务 → 按提示获取授权码(不是登录密码!)
python love_letter_agent.py程序自动完成:创作 → 润色 → 保存 → 发送,收件人邮箱收到一封深情款款的情书 💘
对一群好友"雨露均沾"?用并发脚本一次搞定:
# 用法:python run_concurrent.py [任务总数] [并发数]
# 发 10 封,3 个并发
python run_concurrent.py 10 3
# 发 5 封,5 个并发(默认并发 = 总数)
python run_concurrent.py 5每个任务会独立生成一封独一无二的情书(AI 每次创作内容都不同),全部发送到 .env 中配置的收件人邮箱。
编辑 love_letter_agent.py 末尾的 user_request:
# 深情守护版(默认)
user_request = "帮我写一封深情的情书,表达对爱人默默守护的感激之情"
# 花式恶搞版
user_request = "以一只舔狗的口吻写一封卑微又好笑的情书"
user_request = "写一封霸道总裁风格的情书,命令对方爱上我"
user_request = "用文言文写一封含蓄的情书,但结尾突然破防"编辑 love_letter_agent.py 中的邮件主题:
msg["Subject"] = "一封来自心底的情书" # 改成任何你想写的标题- 方式 1:修改
.env中的RECEIVER_EMAIL - 方式 2:直接调用函数指定收件人
你的请求(一句话)
↓
┌────────────────────────────────────────────────┐
│ CrewAI 多智能体流水线 │
│ │
│ 📝 浪漫情书作家 → 创作 300-500 字初稿 │
│ ↓ │
│ ✂️ 资深内容编辑 → 语法修正 + 情感润色 │
│ ↓ │
│ 📨 邮件投递员 → 保存 txt + SMTP 发送 │
└────────────────────────────────────────────────┘
↓ ↓
output/*.txt 📧 好友邮箱收到情书
本地存档 (恶搞成功 🎉)
- 框架:CrewAI(
Process.sequential顺序执行) - LLM 网关:LiteLLM(支持 OpenAI / Anthropic / 小米 MIMO 等任意格式)
- 邮件:Python 标准库
smtplib+email,SSL 连接smtp.163.com:465
love_letter_agent/
├── love_letter_agent.py # 主程序(三 Agent 情书流水线)
├── run_concurrent.py # 并发批量发送脚本
├── requirements.txt # 依赖清单
├── .env.example # 环境变量模板(复制为 .env)
├── .env # 环境变量配置(⚠️ 已被 gitignore,勿提交)
└── output/ # 情书输出目录(自动创建,gitignore)
└── love_letter_*.txt # 生成的情书存档
.env 未创建或未填写 API 密钥。先执行 cp .env.example .env 并填写。
- 检查
SENDER_PASSWORD是否填的授权码而非登录密码 - 确认已在 163 邮箱设置中开启 SMTP 服务
- 确认网络可访问
smtp.163.com:465 - 某些网络环境会屏蔽 SMTP 端口,可尝试更换网络
概率极低(模型偶尔犯傻)。重新运行一次即可,或修改 Task 描述强化署名要求。
- 本项目仅用于学习和技术交流,请确保收件人为知情同意的朋友
- 请勿用于骚扰、诈骗、恶意攻击等非法用途
- 请遵守所在地区的法律法规及邮件服务商的使用条款
- 滥用导致的任何后果由使用者自行承担
MIT License
Made with 💘 + 🤖 for friends who deserve a little chaos