实战:自动把邮件转为日历事件
在上一节中,我们学习了如何将你的 AI 代理连接到 Gmail、日历等真实世界的工具。现在,是时候将这些知识付诸实践,构建一个能真正为你节省时间的自动化流程了。
我们将创建一个名为 “邮件日历小助手” 的代理。它的核心任务是:自动扫描你的 Gmail 收件箱,识别出包含会议、预约或活动信息的邮件,并自动在你的 Google 日历中创建相应的事件。
这个代理将完美展示 Agentic AI 的“自主性”和“工具使用”能力。它不再是被动等待你提问的聊天机器人,而是一个主动工作、帮你处理重复性任务的智能员工。
第一步:明确任务流程
在开始构建之前,我们先理清代理需要执行的逻辑步骤:
- 触发:定期(例如每15分钟)或由新邮件到达事件触发。
- 读取:连接到你的 Gmail,读取最新的、未处理的邮件。
- 理解:分析邮件内容,判断它是否包含一个“事件”(如会议邀请、预约确认、活动通知)。
- 提取:如果包含事件,则从中提取关键信息:事件标题、开始时间、结束时间、地点、参与者、描述。
- 创建:连接到你的 Google 日历,使用提取的信息创建一个新的事件。
- 标记:在 Gmail 中为该邮件添加一个标签(如
已添加到日历),避免重复处理。 - 通知:(可选)通过 Slack、短信或邮件通知你它已完成操作。
第二步:选择并配置工具平台
我们将以 Gumloop 为例进行演示,因为它提供了直观的拖拽式界面和强大的逻辑控制能力。你也可以在 Lindy、n8n 或 Make 等平台上找到类似的模块。
- 创建新代理:在你的 Gumloop 工作区中,点击“创建新代理”,命名为“邮件日历小助手”。
- 连接数据源(工具):
- 点击“添加步骤”,选择 Gmail 连接器。按照指引授权 Gumloop 访问你的 Gmail(通常为只读和修改标签权限)。
- 再次“添加步骤”,选择 Google Calendar 连接器。授权其访问你的日历(创建事件权限)。
第三步:构建代理逻辑链
这是核心部分,我们将使用 Gumloop 的“流程”或“工作流”视图来搭建。
模块 1:触发器
- 添加一个 “定时触发器”,设置为每15分钟运行一次。或者,如果平台支持,使用更高效的 “Gmail 新邮件触发器”。
模块 2:获取邮件
- 添加一个 “搜索 Gmail” 动作。
- 配置搜索条件,例如:
is:unread(未读)且不包含标签已添加到日历。你可以进一步限定发件人(如from:event@meeting.com)或包含特定关键词(如会议、邀请、Appointment)。
模块 3:循环与判断
- 由于可能有多封符合条件的邮件,添加一个 “循环” 模块,对搜索到的每一封邮件进行处理。
- 在循环内,首先添加一个 “AI 判断” 模块。向 AI 模型(如 GPT-4)提供邮件的主题和正文,并提问:“这封邮件是否包含一个需要添加到日历的会议、预约或活动?请只回答‘是’或‘否’。”
- 添加一个 “条件分支”(If/Else)。如果 AI 回答“是”,则继续执行下面的步骤;如果“否”,则跳过这封邮件,处理下一封。
模块 4:信息提取
- (在“是”的分支下)添加一个 “AI 提取” 模块。
- 给 AI 模型清晰的指令和示例:
请从以下邮件内容中,提取出日历事件所需的详细信息。如果某些信息缺失,请留空。 邮件内容:
[循环中的当前邮件正文]请以 JSON 格式返回: { “event_summary”: “事件的标题,如‘与张三的项目会议’”, “start_time”: “开始时间,格式必须为 YYYY-MM-DDTHH:MM:SS,如 2025-10-26T14:30:00”, “end_time”: “结束时间,格式同上”, “location”: “地点,如‘三楼会议室’或‘Zoom链接’”, “attendees”: [“邮箱1”, “邮箱2”], “description”: “事件的详细描述,可从邮件中提炼” }
模块 5:创建日历事件
- 添加一个 “创建 Google 日历事件” 动作。
- 将上一步 AI 提取出的 JSON 中的每个字段(
event_summary,start_time等),映射到创建事件动作的对应输入框中。
模块 6:后续处理
- 添加一个 “为 Gmail 邮件添加标签” 动作,为当前处理的这封邮件打上
已添加到日历的标签,或将其标记为已读。 - (可选)添加一个 “发送 Slack 消息” 或 “发送邮件” 动作,通知你:“已自动将邮件《[邮件主题]》中的事件添加到您的日历。”
模块 7:错误处理
- 在关键步骤(尤其是 AI 提取和创建日历)周围,可以添加 “错误捕获” 模块。如果出错,可以记录日志或发送警报给你,而不是让整个代理静默失败。
第四步:测试与优化
- 保存并启用你的代理。
- 发送测试邮件:给自己发一封包含清晰会议信息的邮件(例如:“明天下午3点,团队周会,地点:101会议室”)。
- 等待触发或手动运行一次代理。
- 检查结果:
- 查看你的 Google 日历,事件是否被正确创建?
- 检查原邮件,是否被打上了标签?
- 检查 Gumloop 的运行日志,查看每一步的输出,尤其是 AI 提取的 JSON 是否正确。
- 迭代优化:
- Prompt 优化:如果 AI 提取信息不准,调整你的指令,提供更多例子。
- 过滤条件优化:如果代理处理了太多无关邮件,收紧 Gmail 的搜索条件。
- 增加规则:例如,对于全天事件(如“假期”),需要特殊处理;或者忽略来自某些发件人的邮件。
成功的关键与扩展思路
- 成功关键:清晰的邮件格式有助于 AI 理解。虽然我们的代理能处理一定程度的模糊信息,但发送方使用标准的日历邀请(.ics附件)仍然是100%准确的最佳实践。你可以让代理优先处理带附件的邮件。
- 扩展思路:
- 双向同步:不仅可以“邮件转日历”,还可以构建“日历事件转待办事项”,自动将你接受的会议添加到 Notion 或 Todoist 的任务列表中。
- 智能建议:让代理在创建事件前,先检查你日历上的空闲时间,如果时间冲突,可以建议替代时间并自动回复邮件询问。
- 多邮箱管理:将这个代理配置用于你的工作邮箱、个人邮箱等多个账户。
恭喜你!你已经成功构建了一个能够自主工作、连接两个重要工具(Gmail 和 Google Calendar)、并完成多步骤逻辑判断的智能代理。这个“邮件日历小助手”只是开始,它为你打开了自动化世界的大门。接下来,你可以尝试更复杂的规划任务,比如让代理帮你规划整个周末的行程。
