搜索

PythonReactSEOPDF
GitHub Skill

inbox-summary

Smart email triage from Gmail and iCloud. Highlights what needs attention based on priority senders and mission context. Trigger phrases include "email" or "mail" - use when "check my email", "triage my email", "what emails need attention", "email summary", "mail inbox".

Eddale☆ 0 仓库 Stars0 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

Inbox Triage

What This Does

Fetches the last 24 hours of email from Gmail and iCloud, then intelligently triages into:

  • Needs Attention - Priority senders, mission-relevant, questions needing replies
  • Worth Knowing - Receipts, notifications, first-time senders (flagged as unusual)
  • Filtered - Newsletters, promos, automated (count only)

The skill learns your priority senders over time as you mark them.

Instructions

Step 1: Fetch and Triage Emails

Run the triage script:

python3 skills/inbox-summary/scripts/fetch_inbox_summary.py

Filter by sender domain:

python3 skills/inbox-summary/scripts/fetch_inbox_summary.py --sender blackbelt.com

The --sender flag filters results to only show emails from that domain (e.g., --sender stripe.com for payment notifications). Still applies the 24-hour window.

This returns JSON with:

  • triage.attention - Emails needing attention with reasons
  • triage.knowing - Worth knowing, grouped
  • triage.filtered - Noise (stats only)
  • priority_domains - Currently marked priority senders
Step 2: Present the Triage Summary

Format the output like this:

## Inbox Triage (Last 24 Hours)

**Gmail:** [X] emails | **iCloud:** [Y] emails

### Needs Attention

- **[sender]** - [subject]
  [reason: Priority sender / Mission-context: BlackBelt / Looks like it needs a reply]

- **[sender]** - [subject]
  [reason]

### Worth Knowing

- **[domain]** ([count]) - [brief description: Receipts / Calendar updates]
- **[sender]** - [subject]
  *Unusual: First time seeing this sender*

### Filtered ([count] emails)

- Newsletters: [X]
- Promotions: [Y]
- Automated: [Z]

---
*[X] priority senders configured. Say "mark [domain] as priority" to add more.*
Step 3: Handle Priority Domain Requests

When the user says "mark [domain] as priority":

  1. Read the config file:
cat skills/inbox-summary/config/priority-domains.json
  1. Add the domain to the domains array and added object with today's date

  2. Write back using Edit tool

  3. Confirm: "Added [domain] to priority senders. Future emails will appear in Needs Attention."

Step 4: Offer Next Steps

After presenting the summary:

"Want to mark any senders as priority? Or dive into a specific email?"

Classification Logic

Signal Classification
Domain in priority-domains.json Needs Attention
Mentions BlackBelt, AI Powerhouse, Little Blue Report Needs Attention + mission flag
Subject has ?, "can you", "please review", "urgent" Needs Attention
First-time sender Worth Knowing + unusual flag
Receipt, calendar, shipping Worth Knowing (grouped)
Newsletter, promo, marketing patterns Filtered

Mission Context Keywords

The skill watches for these (from Ed's mission-context):

  • BlackBelt, Taki Moore
  • AI Amplified, AI Powerhouse, Coaching Powerhouse
  • Little Blue Report, Substack
  • 30 Day Challenge

When detected, emails are flagged with the matching context.

Guidelines

  • Read-only - Never send, delete, or modify emails
  • Privacy first - Show subjects and snippets, not full content
  • Learn over time - Priority domains persist between sessions
  • Flag the unusual - First-time senders get highlighted
  • Summarize noise - Don't list every newsletter, just count them

Error Handling

If the script fails:

  1. Check credential issues (token expired, wrong password)
  2. For Gmail OAuth: Browser will open to re-authenticate
  3. For iCloud: Verify ICLOUD_APP_PASSWORD is set in environment

File Locations

File Purpose
scripts/fetch_inbox_summary.py Main fetch + triage script
scripts/classify_emails.py Classification logic
config/priority-domains.json Learned priority senders
tests/test_classification.py Automated tests

Examples

User: "check my email"

Response:

## Inbox Triage (Last 24 Hours)

**Gmail:** 18 emails | **iCloud:** 4 emails

### Needs Attention

- **taki@blackbelt.com** - Quick question about the workshop
  Mission-context: BlackBelt

- **prospect@business.com** - Can you send me the pricing?
  Looks like it needs a reply

### Worth Knowing

- **stripe.com** (3) - Payment receipts
- **google.com** (2) - Calendar notifications
- **unknown@newstartup.io** - Partnership inquiry
  *Unusual: First time seeing this sender*

### Filtered (13 emails)

- Newsletters: 8
- Promotions: 3
- Automated: 2

---
*2 priority senders configured. Say "mark [domain] as priority" to add more.*

User: "mark newstartup.io as priority"

Response:

Added newstartup.io to priority senders. Future emails from this domain will appear in Needs Attention.

Current priority senders: blackbelt.com, newstartup.io

User: "show me emails from blackbelt.com"

Response:

## Emails from blackbelt.com (Last 24 Hours)

**Gmail:** 3 emails | **iCloud:** 0 emails

### All Emails

- **taki@blackbelt.com** - Quick question about the workshop
  Mission-context: BlackBelt

- **support@blackbelt.com** - Your invoice for January

- **team@blackbelt.com** - Weekly team update

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-01-20
索引更新时间
2026-01-26
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!