SuperAPI AI 工具集

gmail

办公与效率

查看项目

更新于 10-15 08:15

技能介绍

用途

Gmail 技能用于自动化 Gmail 操作,包括读取、发送、回复、转发和管理邮件。适用于邮件自动化、收件箱管理和沟通工作流。该技能通过 OAuth 认证访问 Gmail。

主要能力

  • 列出邮件、列出未读邮件、搜索邮件、读取邮件内容
  • 发送邮件、回复邮件、转发邮件
  • 创建草稿、列出草稿、列出标签
  • 删除邮件、归档邮件、标记已读
  • 获取附件

安全规则(强制)

  1. 未经明确批准绝不发送:发送前必须向用户展示完整邮件(收件人、主题、正文),并询问“是否要发送此邮件?(是/否)”。即使用户说“给 X 发邮件”,也绝不自动发送;绝不在循环中未经逐封确认发送多封邮件。
  2. 草稿优先工作流(默认行为):所有发送、回复、转发操作先创建草稿。用户看到草稿后选择:是(立即发送)、否(删除草稿)或保留草稿(在 Gmail 中审阅)。这确保用户始终可以在 Gmail 界面中审阅后再发送。
  3. 敏感操作需要确认:发送邮件、回复邮件、转发邮件、发送草稿、删除草稿、删除邮件均需确认。
  4. 读取操作安全:列出邮件、搜索邮件、读取邮件内容、列出标签、列出草稿、获取附件无需确认。

使用方式

预检(始终首先运行)

python3 00-system/skills/google/google-master/scripts/google_auth.py --check --service gmail

退出码:

  • 0:就绪,继续处理用户请求
  • 1:需要登录,运行 python3 00-system/skills/google/google-master/scripts/google_auth.py --login
  • 2:缺少凭据或依赖,参见 ../google-master/references/setup-guide.md

常用命令

列出邮件:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py list --max 10

列出未读邮件:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py list --query "is:unread" --max 10

搜索邮件:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py search "from:user@example.com subject:report"

读取邮件:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py read <message_id>

发送邮件:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py send --to "user@example.com" --subject "Hello" --body "Message body"

回复邮件:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py reply <message_id> --body "Reply text"

转发邮件:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py forward <message_id> --to "user@example.com"

创建草稿:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py draft --to "user@example.com" --subject "Draft" --body "Content"

列出草稿:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py drafts

列出标签:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py labels

删除/归档/标记已读:

python3 00-system/skills/google/gmail/scripts/gmail_operations.py trash <message_id>
python3 00-system/skills/google/gmail/scripts/gmail_operations.py archive <message_id>
python3 00-system/skills/google/gmail/scripts/gmail_operations.py mark-read <message_id>

Gmail 搜索语法

操作符 示例 说明
from: from:user@example.com 来自发件人的邮件
to: to:me@example.com 发给收件人的邮件
subject: subject:meeting 主题包含某词
is:unread is:unread 未读邮件
has:attachment has:attachment 有附件
after: after:2024/01/01 某日期之后
before: before:2024/12/31 某日期之前
label: label:important 有某标签

适用场景

  • 邮件自动化:批量读取、搜索、整理邮件
  • 收件箱管理:列出未读、标记已读、归档、删除
  • 沟通工作流:起草、回复、转发邮件,并在发送前人工确认

限制

  • 需要 OAuth 认证,首次使用需在 Google Cloud Console 创建凭据并配置环境变量
  • 所有发送类操作必须经用户明确确认,不能自动发送
  • 错误处理参见 ../google-master/references/error-handling.md

设置

首次设置参见 ../google-master/references/setup-guide.md。

快速开始:

  1. 安装依赖:
pip install google-auth google-auth-oauthlib google-api-python-client
  1. 在 Google Cloud Console 创建 OAuth 凭据(启用 Gmail API,选择“桌面应用”)
  2. 在 Nexus 根目录的 .env 文件中添加:
GOOGLE_CLIENT_ID=your-client-id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=your-client-secret
GOOGLE_PROJECT_ID=your-project-id
  1. 运行登录:
python3 00-system/skills/google/google-master/scripts/google_auth.py --login