Skill

cross-tool-action-items

Find untracked commitments and action items across email, Slack, and issue trackers. Trigger on "what am I forgetting", "any action items I missed", "what's falling through the cracks", "am I dropping anything", "what did I promise to do".

From daily-productivity
Install
1
Run in your terminal
$
npx claudepluginhub gpsandhu23/daily_productivity_plugin
Tool Access

This skill uses the workspace's default tool permissions.

Skill Content

Cross-Tool Action Items

Surface commitments and action items you may have forgotten — things you said you'd do in email or Slack that aren't tracked anywhere.

When to Use

Apply this skill when the user asks about forgotten or untracked items:

  • "What am I forgetting?"
  • "Any action items I missed?"
  • "What's falling through the cracks?"
  • "Am I dropping anything?"
  • "What did I promise to do?"

How It Works

┌─────────────────────────────────────────────────────────────────┐
│                 CROSS-TOOL ACTION ITEMS                          │
├─────────────────────────────────────────────────────────────────┤
│  STANDALONE (always works)                                       │
│  ✓ User describes recent conversations and commitments          │
│  ✓ Identify potential untracked items                            │
│  ✓ Offer to add to task list                                     │
├─────────────────────────────────────────────────────────────────┤
│  SUPERCHARGED (when you connect your tools)                      │
│  + Email: scan sent messages for commitment language             │
│  + Chat: scan Slack messages for promises and requests          │
│  + Issue tracker: cross-reference with tracked work              │
│  + TASKS.md: compare against existing task list                  │
└─────────────────────────────────────────────────────────────────┘

Execution Flow

Step 1: Search for Your Commitments

From ~~email (if connected):

  • gmail_search_messages with from:me after:<7 days ago> — your sent emails
  • gmail_read_message for each — scan for commitment language:
    • "I'll send...", "I'll follow up...", "Let me get back to you..."
    • "I'll have that by...", "I'll take care of...", "I'll loop in..."
    • "Will do", "On it", "I'll handle..."

From ~~chat (if connected):

  • slack_search_public_and_private with from:me after:<7 days ago> — your sent messages
  • Scan for the same commitment language patterns
  • Also search for: "action item", "TODO", "I owe you"

Step 2: Search for Requests Directed at You

From ~~email (if connected):

  • gmail_search_messages with to:me after:<7 days ago> — emails you received
  • gmail_read_message — scan for request language:
    • "Can you...", "Could you...", "Would you mind..."
    • "Please send...", "Please review...", "Please update..."
    • "Need you to...", "Waiting on you for..."
    • Direct questions requiring action

From ~~chat (if connected):

  • slack_search_public_and_private with <@USER_ID> after:<7 days ago> — mentions of you
  • Scan for request patterns directed at you

Step 3: Cross-Reference Against Tracked Work

Check TASKS.md (if exists):

  • Read Active, Waiting On, and Done sections
  • For each discovered commitment/request, check if it's already tracked
  • Flag items that appear untracked

Check ~~issue tracker (if connected):

  • Fetch issues assigned to you
  • Cross-reference with discovered items

Step 4: Present Findings

## Untracked Action Items

Items from the past week that don't appear in your task list or issue tracker:

### Your Commitments (things you said you'd do)

| # | Source | Date | What You Said | To Whom | Tracked? |
|---|--------|------|---------------|---------|----------|
| 1 | Email | [Date] | "I'll send the updated proposal" | [Name] | Not in TASKS.md |
| 2 | Slack #design | [Date] | "Let me follow up with the vendor" | [Name] | Not tracked |
| 3 | Email | [Date] | "I'll review by Friday" | [Name] | Not tracked |

### Requests to You (things others asked you to do)

| # | Source | Date | Request | From | Tracked? |
|---|--------|------|---------|------|----------|
| 4 | Email | [Date] | "Can you review the contract?" | [Name] | Not in TASKS.md |
| 5 | Slack DM | [Date] | "Could you share the metrics?" | [Name] | Not tracked |

### Already Tracked
- ✓ "Update the API docs" — In TASKS.md (Active)
- ✓ "Fix login bug" — In Linear (In Progress)

Step 5: Offer to Add to TASKS.md

If TASKS.md exists and untracked items were found:

"Found [N] untracked items. Want me to add them to your task list?"

If user confirms, show exactly what will be added:

I'll add these to TASKS.md → Active:

- [ ] **Send updated proposal** - for [Name], committed [Date] via email
- [ ] **Follow up with vendor** - for [Name], committed [Date] in #design
- [ ] **Review contract** - for [Name], requested [Date] via email

Wait for explicit confirmation before writing to TASKS.md. Follow the format conventions from the productivity plugin's task-management skill.


Graceful Degradation

Tool MissingImpact
~~emailCannot scan sent/received emails — skip email commitments
~~chatCannot scan Slack messages — skip chat commitments
~~issue trackerCannot cross-reference with tracked issues
TASKS.mdCannot cross-reference with task list — show all items as potentially untracked
All tools missingAsk user to describe recent commitments and conversations

Related

  • /email-triage — Extracts action items from email during triage
  • /end-of-day — Surfaces loose ends at end of day
  • /morning-briefing — Includes open tasks and issues in morning view
Stats
Stars0
Forks0
Last CommitMar 1, 2026