Email Intelligence
by @pfrederiksen
Analyze email inbox health with weather metaphors, spam/signal classification, email debt scoring, and ghost detection. Use when user asks about inbox status...
clawhub install email-intelligenceπ About This Skill
name: email-intelligence description: "Analyze email inbox health with weather metaphors, spam/signal classification, email debt scoring, and ghost detection. Use when user asks about inbox status, email overwhelm, who they're ghosting, or email time cost. Requires himalaya CLI configured with IMAP."
Email Intelligence
Analyze your email inbox health using creative weather metaphors, intelligent classification, debt scoring, and ghost detection. Transform overwhelming inbox analysis into clear, actionable insights.
When to Use
Use this skill when the user asks about:
Requirements
Quick Usage
# Basic analysis (last 7 days)
python3 scripts/email_classify.pyExtended analysis (last 14 days)
python3 scripts/email_classify.py --days 14JSON output for integration
python3 scripts/email_classify.py --format json
Weather System
The inbox "weather" is determined by the number of human emails in your INBOX that need responses:
Email Classification
Emails are automatically classified into four categories:
π€ Automated
π° Newsletter
π Notification
π₯ Human
Metrics Explained
Email Debt Score (0-100)
Calculated based on unseen human emails in your INBOX, weighted by age:Score meanings:
Signal-to-Noise Ratio
Percentage of emails that are from humans (signal) vs automated/newsletter/notification (noise).Higher ratio = more meaningful email, less spam/clutter.
Ghost Report
Shows up to 5 people you're "ghosting" (human emails you haven't read), sorted by how long they've been waiting. Helps prioritize who needs responses most urgently.Time Investment
Estimates how much time you'll need to process your current inbox based on email types and their typical processing times.Output Formats
Text Format (Default)
Human-readable report with weather, debt score, signal/noise analysis, ghost report, and time estimates. Perfect for quick status updates or daily reviews.JSON Format
Structured data for integration with other tools, APIs, or dashboards:{
"weather": {
"level": "breeze",
"emoji": "π",
"description": "Light Breeze - A few emails need attention...",
"humanCount": 4
},
"categories": {
"automated": 15,
"newsletter": 8,
"notification": 12,
"human": 4
},
"debtScore": 18,
"ghostReport": [...],
"signalNoiseRatio": {
"ratio": 0.103,
"percentage": "10%"
},
"timeCost": {
"minutes": 18,
"formatted": "18 minutes"
}
}
Integration Tips
Dashboard Integration
The JSON output is designed for easy integration into dashboards or status displays. The weather metaphor makes it intuitive for users to understand their inbox state at a glance.Automation
Run periodically (via cron) to track inbox health trends over time. The debt score is particularly useful for identifying when inbox maintenance is needed.Alerts
Set up alerts when:Troubleshooting
No emails found
himalaya envelope list -f INBOX --page-size 1Classification seems wrong
The classification uses heuristics based on sender patterns and subject lines. You can modify the patterns in the script for your specific needs.Slow performance
--days parameter to analyze fewer emailspage_size in the code if neededPhilosophy
Email Intelligence treats your inbox as a living system with its own weather patterns and health metrics. Rather than just counting unread emails, it helps you understand:
The weather metaphor makes inbox status intuitive and actionable - you know to "batten down the hatches" when a storm is brewing, but you can relax when the seas are calm.
Use this skill to transform inbox anxiety into clear, prioritized action plans.
β‘ When to Use
π Tips & Best Practices
No emails found
himalaya envelope list -f INBOX --page-size 1Classification seems wrong
The classification uses heuristics based on sender patterns and subject lines. You can modify the patterns in the script for your specific needs.Slow performance
--days parameter to analyze fewer emailspage_size in the code if needed