Triage and prioritize inbox emails. Summarize unread messages, classify by urgency and category, propose actions (reply, archive, schedule, create task). Use when user wants to review inbox, process unread emails, or needs help prioritizing messages. Outputs structured summary with top priorities and suggested next actions.
Efficiently review and prioritize your inbox by classifying emails and suggesting actions.
Use this skill when:
Important: This skill is READ-ONLY. It analyzes and proposes actions but NEVER sends, archives, or modifies emails.
The following live data is available:
Unread emails:
!`gog gmail search "is:unread" --max 25 --json 2>/dev/null || echo "GOG_NOT_CONFIGURED"`
Before triaging:
User preferences (ask if not known):
Context clues (extract from conversation):
If dynamic context shows GOG_NOT_CONFIGURED:
skills/gog/_shared/references/gog-interface.mdIf email list is empty:
gog gmail search "is:inbox" --max 25 --jsonFor each email, determine:
Urgency Level:
Category:
Suggested Action:
Output in this format:
# Email Triage Summary
📧 **Total Unread**: [N] messages
⚠️ **Urgent**: [N] | 🔴 **High**: [N] | 🟡 **Medium**: [N] | 🟢 **Low**: [N]
## Top 3 Priorities
1. **[Subject]** from [Sender]
- Urgency: [urgent/high/medium/low]
- Reason: [1-line rationale]
- Suggested action: [action]
2. [...]
3. [...]
## All Messages
| ID (last 6) | From | Subject (truncated) | Urgency | Category | Action | Rationale |
|-------------|------|---------------------|---------|----------|--------|-----------|
| abc123 | [email protected] | Meeting tomorrow? | high | meeting | reply | Needs response by EOD |
| def456 | newsletter@... | Weekly update | low | newsletter | archive | FYI only |
| [...] | [...] | [...] | [...] | [...] | [...] | [...] |
## Suggested Next Actions
- [ ] **Reply to [N] urgent/high priority emails** (IDs: abc123, def456)
- [ ] **Create tasks for [N] action items** (IDs: ghi789)
- [ ] **Schedule meeting for [topic]** (ID: jkl012)
- [ ] **Archive [N] newsletters and FYI messages**
- [ ] **Block [N] spam senders**
---
**Next Steps**:
- To draft a reply: "Draft a reply to [email ID or subject]"
- To create task: "Create a task for [email ID or subject]"
- To schedule meeting: "Schedule meeting about [topic]"
- To see email content: "Show me email [ID]"
Read the template at .claude/templates/html/custom/email-triage.html, fill all {{PLACEHOLDER}} values with the data from Step 3 (email counts, priority groups, suggested actions), and save the completed HTML to workspace/daily-logs/[C] YYYY-MM-DD-email-triage.html.
Create the workspace/daily-logs/ directory if it does not exist.
After presenting the triage:
Do NOT proceed to take actions without user confirmation.
The triage summary MUST include:
Table columns (in order):
User: "Review my inbox"
Assistant:
Let me triage your unread emails.
[Fetches emails...]
# Email Triage Summary
📧 **Total Unread**: 12 messages
⚠️ **Urgent**: 1 | 🔴 **High**: 3 | 🟡 **Medium**: 5 | 🟢 **Low**: 3
## Top 3 Priorities
1. **Budget approval needed** from [email protected]
- Urgency: urgent
- Reason: Blocks Q2 planning, needs approval by noon today
- Suggested action: reply
2. **Client demo tomorrow** from [email protected]
- Urgency: high
- Reason: Meeting in < 24h, needs confirmation of attendees
- Suggested action: reply
3. **Code review request** from [email protected]
- Urgency: high
- Reason: Blocking deployment, requested 2 days ago
- Suggested action: create-task
## All Messages
| ID | From | Subject | Urgency | Category | Action | Rationale |
|----|------|---------|---------|----------|--------|-----------|
| 7a3f2e | [email protected] | Budget approval needed | urgent | action-required | reply | Blocks Q2 planning |
| 9b4c1d | [email protected] | Client demo tomorrow | high | meeting | reply | Needs confirmation |
| 2e8f6a | [email protected] | Code review request | high | action-required | create-task | Review needed |
| [...] | [...] | [...] | [...] | [...] | [...] | [...] |
## Suggested Next Actions
- [ ] **Reply to 4 urgent/high emails** (IDs: 7a3f2e, 9b4c1d, 5d7e3c, 8f1a9b)
- [ ] **Create task for code review** (ID: 2e8f6a)
- [ ] **Archive 3 newsletters** (IDs: 4c9e2f, 6a3d8b, 1f7c5e)
---
**Next Steps**: Which email would you like to tackle first? I can draft replies for the top priorities or create tasks for follow-up items.
User: "Show me only urgent and high priority emails"
Assistant:
Let me filter for urgent and high priority emails only.
[Fetches and filters...]
# Email Triage Summary (Urgent + High Only)
📧 **Total Unread**: 12 messages (showing 4 urgent/high)
⚠️ **Urgent**: 1 | 🔴 **High**: 3
## Top Priorities
1. **Budget approval needed** from [email protected]
- Urgency: urgent
- Action: reply
[...]
[Table with only urgent/high priority emails]
The remaining 8 emails are medium/low priority. Want to see those too?
Symptom: Dynamic context shows GOG_NOT_CONFIGURED
Resolution:
skills/gog/_shared/references/gog-interface.mdgog auth login to authenticate"Symptom: Email list is empty []
Resolution:
Symptom: jq parse error or non-JSON output
Resolution:
--json flagSymptom: User has 100+ unread emails
Resolution:
Symptom: Can't determine urgency or category from email metadata
Resolution:
gog email get --id <id>To safely test this skill using only [email protected]:
Read-only test (always safe):
gog gmail search "is:unread (to:[email protected] OR from:[email protected])" --max 10 --json
In Claude Code:
See skills/gog/_shared/references/testing.md for complete test plan.
This skill integrates with:
gog-email-draft: For drafting replies to prioritized emailsgog-tasks: For converting emails to tasksgog-calendar: For scheduling meetings mentioned in emailsgog-followups: For tracking emails awaiting responsesConsider user's timezone when assessing urgency (EOD means their EOD)
If email subject/sender contains obvious credentials or secrets, redact in output
For recurring newsletters, suggest creating a filter/rule rather than manual archiving
Upon completion, send a short summary via Telegram to the user:
reply(chat_id="YOUR_CHAT_ID", text="...")