qq-email
何时使用
用户要使用 QQ 邮箱 发邮件、收邮件、查邮件、代发邮件或配置 QQ 邮箱时使用本 skill。
QQ 邮箱收发
面向 QQ 邮箱:通过 IMAP 收取邮件、SMTP 发送邮件。账号与授权码仅从环境变量读取,不在代码或配置中硬编码。
凭证(环境变量)
| 变量 | 说明 |
|---|---|
| QQ_EMAIL_ACCOUNT | QQ 邮箱账号(完整地址,如 xxx@qq.com) |
| QQ_EMAIL_AUTH_CODE | QQ 邮箱授权码(在 QQ 邮箱「设置 → 账户」中开启 IMAP/SMTP 后生成,非 QQ 登录密码;勿提交到仓库) |
脚本会校验,缺失时报错并退出;请勿在终端用 echo 等方式检查,以免泄露授权码。
QQ 邮箱服务器
- IMAP:
imap.qq.com,端口 993(SSL) - SMTP:
smtp.qq.com,端口 465(SSL)
脚本
| 脚本 | 作用 |
|---|---|
scripts/send.js |
从环境变量读凭证,用 nodemailer 连接 QQ 邮箱 SMTP 发信;支持收件人、主题、正文(CLI 参数)。 |
scripts/receive.js |
从环境变量读凭证,用 imap + mailparser 连接 QQ 邮箱 IMAP 收信;支持「最近 N 条」或「最近 N 天」,输出主题、发件人、日期、UID、正文摘要。 |
scripts/get-body.js |
按 UID 获取指定邮件的完整正文(纯文本,无摘要截断)。必须传入 --uid(值为收信列表中的 UID)。 |
发信流程
在 skill 根目录下执行(需已 npm install):
node scripts/send.js <收件人> <主题> <正文>
正文若含空格,请用引号包裹;或只传收件人和主题,正文从 stdin 读入(见脚本 --stdin)。
示例:
node scripts/send.js "recipient@example.com" "测试主题" "邮件正文内容"
收信流程
# 收取最近 10 条(默认)
node scripts/receive.js
# 收取最近 N 条
node scripts/receive.js --limit 20
# 收取最近 N 天的邮件(如 7、30、90)
node scripts/receive.js --days 7
输出:每封邮件的主题、发件人、日期、UID(收件箱内唯一标识,用于按 UID 取正文)、正文摘要(前约 200 字),便于查看。
获取邮件正文
需要某封邮件的完整正文时,使用 get-body.js,传入收信列表中该邮件的 UID:
node scripts/get-body.js --uid 12345
未传 --uid 时会提示并退出。UID 与收件箱绑定,邮件移动或删除后可能失效。
- 输出:完整正文输出到 stdout(纯文本;若原邮件仅有 HTML,会做简单去标签后输出)。可重定向到文件或管道给其它命令。
- 环境变量:与收信相同,需
QQ_EMAIL_ACCOUNT、QQ_EMAIL_AUTH_CODE。
可选能力(与「收取选项」对应)
- 收取时间范围:通过
--days 7/--days 30/--days 90使用 IMAP SINCE 条件。 - 收取「我的文件夹」:当前脚本默认 INBOX;若需自定义文件夹,可扩展脚本中的
openBox(如openBox('我的文件夹', ...))。
安全提醒
- QQ 邮箱授权码需在「设置 → 账户」中开启 IMAP/SMTP 服务后生成,与 QQ 登录密码不同,不要混淆。
- 不要将
QQ_EMAIL_ACCOUNT、QQ_EMAIL_AUTH_CODE的真实值写入代码或提交到仓库;仅通过环境变量或本地.env配置。
More from shadowcz007/skills
daily-briefing
从 mixdao latest 获取数据 → 用 MiniMax-M2.5 做分类整理(agent loop:至多5组、每组至少3条)并生成分组摘要与每条推荐语 → 按 cachedStoryId 提交推荐语并上传简报到 mixdao。需配置 MIXDAO_API_KEY、ANTHROPIC_API_KEY。自然语言触发示例:「执行 daily briefing」「做今日 mixdao 简报」。
14solo-scope
从 Solo Scope RSS(https://www.mixdao.world/feed)拉取条目,按主题整理成 3~6 类,每类生成 140 字核心价值摘要,并附每条原标题与 URL 输出简报。由 Agent 自行完成拉取、整理、写简报。触发示例:「做 Solo Scope」「 solo Scope」「整理 mixdao feed」「RSS 分类简报」。
14todo-list
智能待办事项管理技能。支持自然语言时间解析、事项记录与追踪、进度更新,数据持久化到本 skill 目录下 temp 的 Markdown;可通过 node scripts/time.js 与 node scripts/todo.js 调用。
13minimax-search-vlm
使用 MiniMax Coding Plan API 进行网络搜索(web_search)和图像理解(understand_image)。需配置 MINIMAX_CP_API_KEY(MiniMax API Key,一般为 sk-cp- 开头)。触发示例:「MiniMax 搜索」「图像理解」「web search」「understand image」「minimax 搜一下」「描述这张图」。
10fill-content
筛出 mixdao 无正文条目(hasContent 为 false),按 URL 抓取正文;上传前用 AI 梳理为约 250 字案例描述(简体中文、突出人物/公司等)并以此替代正文回写。需 MIXDAO_API_KEY;更新时另需 ANTHROPIC_API_KEY。触发示例:「补全正文」「拉取无正文条目的正文并更新」「fill content」「无正文」「抓正文」「补全内容」「更新正文」「mixdao 正文」。
6article-drafts
批量提交或获取 mixdao 文章初稿(文件路径入参、列表)。需 MIXDAO_API_KEY。触发:更新初稿、获取初稿列表、article-drafts。
6