OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  morning-email-rollup:每日清晨重要邮件汇总报告

morning-email-rollup:每日清晨重要邮件汇总报告

 
  cd ·  2026-02-06 20:01:56 · 3 次点击  · 0 条评论  

名称: morning-email-rollup
描述: 每日上午 8 点(丹佛时间)通过 AI 生成摘要,汇总重要邮件和日历事件
元数据: {"clawdbot":{"emoji":"📧","requires":{"bins":["gog","gemini","jq","date"]}}}


晨间邮件汇总

每日自动生成重要邮件的摘要,并于丹佛时间上午 8 点发送至 Telegram。

设置

必需: 设置您的 Gmail 账户邮箱:

export GOG_ACCOUNT="your-email@gmail.com"

或者直接编辑脚本以设置默认值。

功能概述

  • 每日上午 8:00 运行(时区可配置)
  • 从 Google 日历中显示今日的日程安排
  • 搜索过去 24 小时内标记为重要已加星标的邮件
  • 使用 AI(Gemini CLI)为每封邮件生成自然语言摘要
  • 最多显示 20 封最重要的邮件,包含:
    • 🔴 未读指示器(红色)
    • 🟢 已读指示器(绿色)
    • 发件人姓名/邮箱
    • 邮件主题
    • AI 生成的一句话摘要(自然语言,非直接抓取内容)
  • 将格式化后的摘要发送至 Telegram

使用方法

手动运行

# 默认(10 封邮件)
bash skills/morning-email-rollup/rollup.sh

# 自定义邮件数量
MAX_EMAILS=20 bash skills/morning-email-rollup/rollup.sh
MAX_EMAILS=5 bash skills/morning-email-rollup/rollup.sh

查看日志

cat $HOME/clawd/morning-email-rollup-log.md

工作原理

  1. 检查日历 - 通过 gog 从 Google 日历中列出今日事件
  2. 搜索 Gmail - 查询:is:important OR is:starred newer_than:1d
  3. 获取邮件详情 - 获取每封邮件的发件人、主题、日期和正文
  4. AI 摘要生成 - 使用 Gemini CLI 生成自然语言摘要
  5. 格式化输出 - 创建包含已读/未读标记的可读摘要
  6. 发送至 Telegram - 通过 Clawdbot 的消息系统发送

日历集成

脚本使用与查询 Gmail 相同的 gog CLI,自动从您的 Google 日历中包含今日事件。

优雅降级处理:
- 如果未安装 gog → 日历部分将被静默跳过(无错误)
- 如果今日无事件 → 日历部分将被静默跳过
- 如果存在事件 → 显示带 12 小时制时间和标题的格式化列表

要求:
- 必须安装并授权 gog
- 使用为 Gmail 配置的同一 Google 账户(通过 GOG_ACCOUNT 环境变量设置)

邮件筛选条件

邮件需满足以下任一条件:
- 被 Gmail 标记为重要(闪电图标)
- 被您手动加星标
- 在过去 24 小时内收到

AI 摘要生成

每封邮件使用 Gemini CLI (gemini) 进行摘要:
- 提取邮件正文(清理 HTML/CSS)
- 发送至 gemini --model gemini-2.0-flash,附带提示要求用 1 句话总结
- 摘要为中长篇幅的自然语言(非直接抓取内容)
- 如果 Gemini 不可用,则回退到清理后的正文文本

重要提示: 邮件正文作为提示的一部分传递(而非通过标准输入),因为 gemini CLI 无法正确处理带提示的管道输入。

示例输出:

🔴 **William Ryan: 团队会议邀请**
   邮件邀请您参加明天下午 2 点的团队会议,讨论 Q1 路线图并为即将到来的冲刺分配任务。

已读/未读指示器

  • 🔴 红点 = 未读邮件
  • 🟢 绿点 = 已读邮件

所有邮件都会显示其中一个标记,以保持视觉一致性。

格式化说明

主题和摘要清理:
- 主题行中的额外引号会自动去除(例如,""Agent Skills""Agent Skills
- Gemini 生成的摘要也会清理首尾引号
- 这确保了在 Telegram/其他渠道中输出干净、可读

Cron 定时任务

在您首选的时间设置每日 cron 任务:

cron add --name "Morning Email Rollup" \
  --schedule "0 8 * * *" \
  --tz "America/Denver" \
  --session isolated \
  --message "GOG_ACCOUNT=your-email@gmail.com bash /path/to/skills/morning-email-rollup/rollup.sh"

请根据您的偏好调整时间(上午 8:00)和时区。

自定义配置

更改邮件数量

默认情况下,汇总显示 10 封邮件。要更改此设置:

临时(一次性):

MAX_EMAILS=20 bash skills/morning-email-rollup/rollup.sh

永久:
编辑 skills/morning-email-rollup/rollup.sh

MAX_EMAILS="${MAX_EMAILS:-20}"  # 将 10 改为您偏好的数字

更改搜索条件

编辑 skills/morning-email-rollup/rollup.sh

# 当前:过去 24 小时内重要或已加星标的邮件
IMPORTANT_EMAILS=$(gog gmail search 'is:important OR is:starred newer_than:1d' --max 20 ...)

# 其他搜索条件示例:
# 仅未读的重要邮件
IMPORTANT_EMAILS=$(gog gmail search 'is:important is:unread newer_than:1d' --max 20 ...)

# 特定发件人
IMPORTANT_EMAILS=$(gog gmail search 'from:boss@company.com OR from:client@example.com newer_than:1d' --max 20 ...)

# 按标签/类别
IMPORTANT_EMAILS=$(gog gmail search 'label:work is:important newer_than:1d' --max 20 ...)

更改时间

更新 cron 计划:

# 列出 cron 任务以获取 ID
cron list

# 更新计划(示例:改为上午 7 点而非 8 点)
cron update <job-id> --schedule "0 7 * * *" --tz "America/Denver"

更改摘要风格

编辑 rollup.shsummarize_email() 函数内的提示词:

# 当前:中长篇幅的 1 句话
"Summarize this email in exactly 1 sentence of natural language. Make it medium to long length. Don't use quotes:"

# 更短的摘要
"Summarize in 1 short sentence:"

# 更多细节
"Summarize in 2-3 sentences with key details:"

更改 AI 模型

编辑 summarize_email() 中的 gemini 命令:

# 当前:gemini-2.0-flash(快速)
gemini --model gemini-2.0-flash "Summarize..."

# 使用不同的模型
gemini --model gemini-pro "Summarize..."

故障排除

未收到汇总

# 检查 cron 任务是否启用
cron list

# 检查上次运行状态
cron runs <job-id>

# 手动测试
bash skills/morning-email-rollup/rollup.sh

邮件缺失

  • Gmail 的重要性标记可能会过滤掉预期的邮件
  • 检查邮件在 Gmail 中是否确实被标记为重要/已加星标
  • 尝试手动运行搜索:gog gmail search 'is:important newer_than:1d'

摘要未出现

  • 检查 gemini CLI 是否已安装:which gemini
  • 手动测试:echo "test" | gemini "Summarize this:"
  • 验证 Gemini 是否已授权(首次运行时应提示)

时区错误

  • Cron 使用 America/Denver (MST/MDT)
  • 使用以下命令更新:cron update <job-id> --tz "Your/Timezone"

日志历史

所有汇总运行记录都保存在:

$HOME/clawd/morning-email-rollup-log.md

格式:

- [2026-01-15 08:00:00] 🔄 开始晨间邮件汇总
- [2026-01-15 08:00:02] ✅ 汇总完成:15 封邮件
3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor