Morning Email Rollup
2026-03-28
新闻来源:网淘吧
围观:13
电脑广告
手机广告
晨间邮件汇总
自动生成重要邮件的每日摘要,并在丹佛时间上午8点发送至Telegram。
设置
必需项:设置您的Gmail账户邮箱:
export GOG_ACCOUNT="your-email@gmail.com"
或直接编辑脚本以设置默认值。
功能说明
- 每日上午8:00运行(时区可配置)
- 显示今日的日历事件来自Google日历
- 搜索标记为重要或已加星标的过去24小时内的邮件
- 使用AI(Gemini CLI)为每封邮件生成自然语言摘要
- 显示最多20封最重要的邮件,包含:
- 🔴 未读指示器(红色)
- 🟢 已读指示器(绿色)
- 发件人姓名/邮箱
- 邮件主题行
- AI生成单句摘要(自然语言,非抓取内容)
- 将格式化摘要发送至Telegram
使用方式
手动运行
# Default (10 emails)
bash skills/morning-email-rollup/rollup.sh
# Custom number of emails
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
工作原理
- 检查日历- 通过 gog 列出Google日历中的今日事件
gog - 搜索Gmail- 查询条件:
is:important OR is:starred newer_than:1d - 获取详细信息- 获取每封邮件的发件人、主题、日期和正文
- AI摘要生成- 使用Gemini CLI生成自然语言摘要
- 格式化输出- 创建带已读/未读标记的可读摘要
- 发送至Telegram- 通过Clawdbot的消息系统发送
日历集成
该脚本会自动从您的Google日历中获取今日日程,使用与查询Gmail相同的gog
命令行工具。
- 优雅降级处理:
若gog - 未安装 → 日历部分将被静默跳过(不报错)
- 若今日无日程 → 日历部分将被静默跳过
若存在日程 → 显示格式化列表,包含12小时制时间和标题
要求:gog- 必须已安装并完成身份验证
使用为Gmail配置的同一Google账户(通过GOG_ACCOUNT
环境变量设置)
邮件筛选条件符合以下任意条件
- 的邮件将被包含:被Gmail标记为重要邮件
- 手动已加星标由您
- 在过去24小时内收到
AI摘要
每封邮件都使用 Gemini CLI (gemini) 进行摘要:
- 提取邮件正文(清理HTML/CSS)
- 发送至
gemini --model gemini-2.0-flash附带提示要求用1句话总结 - 摘要为中等至较长长度的自然语言(非抓取内容)
- 如果Gemini不可用,则回退到清理后的正文文本
重要提示:邮件正文作为提示的一部分传递(而非通过stdin),因为gemini CLI无法正确处理带提示的管道输入。
示例输出:
🔴 **William Ryan: Invitation to team meeting**
The email invites you to a team meeting tomorrow at 2pm to discuss the Q1 roadmap and assign tasks for the upcoming sprint.
已读/未读指示器
- 🔴 红点 = 未读邮件
- 🟢 绿点 = 已读邮件
所有邮件都显示这些标记之一,以保持视觉一致性。
格式说明
主题和摘要清理:
- 主题行中的额外引号会被自动去除(例如,
""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}" # Change 10 to your preferred number
编辑
skills/morning-email-rollup/rollup.sh:更改时间
# Current: important or starred from last 24h
IMPORTANT_EMAILS=$(gog gmail search 'is:important OR is:starred newer_than:1d' --max 20 ...)
# Examples of other searches:
# Unread important emails only
IMPORTANT_EMAILS=$(gog gmail search 'is:important is:unread newer_than:1d' --max 20 ...)
# Specific senders
IMPORTANT_EMAILS=$(gog gmail search 'from:boss@company.com OR from:client@example.com newer_than:1d' --max 20 ...)
# By label/category
IMPORTANT_EMAILS=$(gog gmail search 'label:work is:important newer_than:1d' --max 20 ...)
更新 cron 计划:
更改摘要样式
# List cron jobs to get the ID
cron list
# Update schedule (example: 7am instead of 8am)
cron update <job-id> --schedule "0 7 * * *" --tz "America/Denver"
编辑
rollup.sh中summarize_email()函数内的提示词:更改 AI 模型
# Current: medium-to-long 1 sentence
"Summarize this email in exactly 1 sentence of natural language. Make it medium to long length. Don't use quotes:"
# Shorter summaries
"Summarize in 1 short sentence:"
# More detail
"Summarize in 2-3 sentences with key details:"
编辑
summarize_email()中的 gemini 命令:故障排除
# Current: gemini-2.0-flash (fast)
gemini --model gemini-2.0-flash "Summarize..."
# Use a different model
gemini --model gemini-pro "Summarize..."
未收到汇总邮件
邮件缺失
# Check if cron job is enabled
cron list
# Check last run status
cron runs <job-id>
# Test manually
bash skills/morning-email-rollup/rollup.sh
Gmail 的重要性标记可能过滤掉了预期邮件
- 检查邮件在 Gmail 中是否确实被标记为重要/加星标
- 尝试运行手动搜索:
- gog gmail search 'is:important newer_than:1d'
gog gmail search 'is:important newer_than:1d'
摘要未显示
- 检查
geminiCLI 是否已安装: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] 🔄 Starting morning email rollup
- [2026-01-15 08:00:02] ✅ Rollup complete: 15 emails
文章底部电脑广告
手机广告位-内容正文底部
上一篇:Tailscale
下一篇:Youtube Factory


微信扫一扫,打赏作者吧~