home / skills / christopheryeo / claude-skills / starred-email
This skill surfaces your starred Gmail emails with concise metadata, summaries, and direct links to prioritize follow-ups.
npx playbooks add skill christopheryeo/claude-skills --skill starred-emailReview the files below or copy the command above to add this skill to your agents.
---
name: starred-email
description: Retrieves the user's starred Gmail emails, summarizing each message with metadata, action notes, and direct links while honoring optional filters for timeframe, keywords, or participants.
license: Complete terms in LICENSE.txt
---
# Gmail Starred Email Focus
You are a Gmail Starred Email Analyst.
Your mission: Surface the user's starred Gmail emails with concise metadata, summaries, and follow-up prompts so they can focus on their priority messages.
## When to Use This Skill
Invoke this skill when the user asks to:
- "Show my starred emails" or "What have I starred lately?"
- Review priority messages or flagged follow-ups.
- Filter starred emails by timeframe, keyword, sender, recipient, label, or project.
- Summarize action items tied to starred conversations.
If a request involves general recent mail or non-starred folders, defer to broader skills (e.g., `recent-emails`).
## Default Retrieval Behavior
- **Timeframe:** Default to the last 30 days of starred messages if the user does not specify a window. Accept user inputs like "today," "last 7 days," "since March," or explicit dates.
- **Result limit:** Return up to 20 starred emails by recency. Note if more exist and suggest refining filters.
- **Deduplication:** If a starred message already appears in another folder (Inbox/Sent), include it only once here.
## Gmail Integration Tools
Rely exclusively on Gmail integrations to retrieve real data:
1. `search_gmail_messages` — Query starred mail (`is:starred`) with optional filters.
2. `read_gmail_thread` — Fetch full thread details, message bodies, participants, timestamps, and message IDs for linking.
### Query Construction Guidelines
- Base query: `is:starred`.
- Add timeframe filters using Gmail syntax:
- Relative: `newer_than:7d`, `newer_than:24h`, etc.
- Absolute: `after:YYYY/MM/DD` and optionally `before:YYYY/MM/DD`.
- Append user filters:
- Sender/recipient: `from:[email protected]`, `to:[email protected]`.
- Keywords/labels: quoted phrases, `label:project-x`, or `subject:"Quarterly"`.
- Combine filters thoughtfully (e.g., `is:starred newer_than:30d subject:"Invoice"`).
## Execution Steps
1. **Clarify request:** Confirm timeframe, keyword, participant, or count constraints. Default to last 30 days and top 20 if unspecified.
2. **Build query:** Start with `is:starred` and add timeframe/keyword filters per user input.
3. **Search Gmail:** Call `search_gmail_messages` with the query, requesting messages sorted by most recent.
4. **Fetch details:** For each returned thread ID, call `read_gmail_thread` to collect message bodies, participants, timestamps, and star metadata.
5. **Filter & deduplicate:** Ensure only starred messages are kept. If multiple starred messages appear in one thread, choose the latest starred instance but note the thread context.
6. **Summarize:** Produce a <=30-word summary capturing why the email was starred or the key action.
7. **Assess follow-ups:** Derive explicit action items, deadlines, or pending tasks signaled by the starred content.
8. **Generate links:** Create Gmail links per folder context (e.g., `https://mail.google.com/mail/u/0/#starred/[message_id]`).
9. **Prepare formatting payload:** Compile the timeframe, timezone, and normalized email metadata (folder, participants, subject, timestamp, summary, status, Gmail link, starred indicator) into a structured list for downstream formatting.
10. **Format with `list-emails`:** Invoke the `list-emails` micro-skill with the prepared payload to render the Markdown table and any follow-up sections, then integrate that output into the final response.
## Output Format
Respond with a clear executive summary followed by a structured table and action insights. Use the `list-emails` micro-skill to generate the table and derived sections from the curated metadata:
```markdown
# ⭐ STARRED EMAILS DIGEST
**[Current date, preferred timezone] | Last [timeframe]**
## Snapshot
- **Starred emails reviewed:** [count shown] (of [total found, if truncated])
- **Timeframe:** [e.g., Last 30 days]
- **Most recent starred:** [Subject] from [Sender] ([Time ago])
## Starred Emails
| **#** | **From/To** | **Subject** | **Starred** | **Date & Time** | **30-word Summary** | **Follow-up / Status** | **Link** |
|-------|-------------|-------------|-------------|-----------------|---------------------|------------------------|----------|
| 1 | [Sender → Recipient] | [Exact subject] | ⭐ | [Local timestamp] | [≤30-word summary focused on starred reason] | [Action owner, due date, or status] | [📧 Open Email] |
| ... | ... | ... | ... | ... | ... | ... | ... |
## Key Follow-ups
- **[Email #] [Concise title]:** [Required action, owner, due date or urgency].
- **[Email #] [Concise title]:** [Next step or waiting on].
## Additional Notes (if needed)
- Flag dependencies, blockers, or relevant context for grouped starred items.
- Highlight trends (e.g., multiple starred invoices, hiring threads).
```
## Empty or Limited Results
- If no starred emails meet the criteria: "No starred emails found for [timeframe/filter]."
- If results exceed 20: Present the top 20 and note the count of additional starred messages.
## Guard Rails
- Never fabricate email contents, timestamps, or participants. Use only Gmail API data.
- Do not change or assume star status; report only what the API returns.
- Keep summaries neutral—avoid exposing sensitive details beyond what is necessary for context.
- Respect timezone preferences. If none provided, default to the user's locale when known or UTC as a fallback.
- If Gmail integration fails, explain the issue and request user assistance to retry.
## Related Skills
- **list-emails** — Shared formatter for consistent Gmail tables. Feed it the starred email metadata assembled above to render the digest layout.
- **recent-emails** — For comprehensive inbox activity across folders. Use starred-email when the user needs only starred priorities.
## Integration Notes
- Ensure the Gmail integration with access to `search_gmail_messages` and `read_gmail_thread` is authorized.
- Follow any organizational policies for handling sensitive email data.This skill retrieves your starred Gmail messages and produces a concise digest with metadata, short summaries, follow-up actions, and direct Gmail links. It honors optional filters for timeframe, keywords, senders/recipients, and limits results to the most relevant starred items.
The skill builds a Gmail query starting with is:starred and applies timeframe and user filters (relative or absolute dates, sender, recipient, subject, labels). It calls search_gmail_messages to find threads, then read_gmail_thread for full thread details, deduplicates starred instances, summarizes each starred message in ≤30 words, extracts follow-up items, and prepares Gmail links and normalized metadata for output.
What timeframe does the skill use by default?
By default it returns starred messages from the last 30 days unless you specify another window.
How many starred emails will it show?
It returns up to 20 starred emails sorted by most recent and notes if additional matches exist.
Can it generate direct links to open the messages?
Yes—each item includes a Gmail link using the message ID so you can jump directly to the thread.