AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Mail Action Items

skill-aashari-ai-agent-skills-mail-action-items · by aashari

>-

No reviews yet
0 installs
31 views
0.0% view→install

Install

$ agentstack add skill-aashari-ai-agent-skills-mail-action-items

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-aashari-ai-agent-skills-mail-action-items)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
6mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Mail Action Items? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Mail Action Items — Extract Tasks from Email

Time window: $ARGUMENTS (default: last 3 days)

Step 1: Find candidate emails with action signals

Subject-line signals

DB="$HOME/Library/Mail/V10/MailData/Envelope Index"
SINCE=$(($(date +%s) - 259200))  # 3 days default; adjust per $ARGUMENTS

sqlite3 "$DB" "
SELECT datetime(m.date_received,'unixepoch','localtime') as dt,
       s.subject, a.address as sender, a.comment as name,
       mb.url as mailbox, m.ROWID, m.read, m.is_urgent
FROM messages m
JOIN subjects  s  ON m.subject = s.ROWID
JOIN addresses a  ON m.sender  = a.ROWID
JOIN mailboxes mb ON m.mailbox = mb.ROWID
WHERE m.date_received >= ${SINCE}
  AND m.deleted = 0
  AND m.automated_conversation != 2
  AND mb.url NOT LIKE '%Spam%' AND mb.url NOT LIKE '%Trash%'
  AND mb.url NOT LIKE '%Sent%'
  AND (
    s.subject LIKE '%action required%'
    OR s.subject LIKE '%please review%'
    OR s.subject LIKE '%approval%'
    OR s.subject LIKE '%approve%'
    OR s.subject LIKE '%sign off%'
    OR s.subject LIKE '%deadline%'
    OR s.subject LIKE '%due%'
    OR s.subject LIKE '%RSVP%'
    OR s.subject LIKE '%respond by%'
    OR s.subject LIKE '%feedback%'
    OR s.subject LIKE '%request%'
    OR m.is_urgent = 1
    OR m.flagged = 1
  )
ORDER BY m.is_urgent DESC, m.date_received DESC;" 2>/dev/null

Urgent/flagged unread (always surface)

sqlite3 "$DB" "
SELECT datetime(m.date_received,'unixepoch','localtime') as dt,
       s.subject, a.address as sender, m.ROWID
FROM messages m
JOIN subjects s ON m.subject = s.ROWID
JOIN addresses a ON m.sender = a.ROWID
JOIN mailboxes mb ON m.mailbox = mb.ROWID
WHERE m.date_received >= ${SINCE}
  AND m.read = 0 AND m.deleted = 0
  AND m.automated_conversation != 2
  AND m.unsubscribe_type = 0
  AND mb.url NOT LIKE '%Spam%' AND mb.url NOT LIKE '%Trash%'
  AND mb.url NOT LIKE '%Sent%'
ORDER BY m.date_received DESC;" 2>/dev/null

Step 2: Read bodies and extract action items

For each candidate email, parse the body:

python3 ~/.claude/skills/_mail-shared/parser.py   ...

Look for action-item patterns in the body text:

  • "Please [verb]..." → direct request
  • "Could you..." / "Can you..." → request
  • "By [date]" / "Before [date]" / "Due [date]" → deadline
  • "Let me know..." → response expected
  • "Your approval is needed" / "Please approve" → approval required
  • "Next steps:" / "Action items:" / "TODO:" → explicit task lists
  • "Waiting on you" / "Pending your" → you're the blocker
  • Meeting notes with "Suggested next steps" or your name + "will"

Step 3: Deduplicate and prioritize

  • Group by sender/thread
  • Prioritize: overdue deadlines > urgent flagged > approval requests > general requests
  • For Jira/project management alerts, extract ticket ID and description

Output Format

Action Items from Your Email (last 3 days)

For each item:

  • [ ] Task description — from [Sender], received [date]
  • Context: [1-line summary from email body]
  • Deadline: [if mentioned]

Group by: Overdue → Today → This week → No deadline Mark items from unread emails with [UNREAD].

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.