inbox-triage
ABOUTME: Gmail inbox triage - classify unread by priority, suggest actions
ABOUTME: P1-P4 priority system with CLI tool for classification and batch archival
Inbox Triage Skill
Gmail: See ../_GMAIL.md for account config and commands.
Workflow
Step 1: Classify Inbox
Pipe gog search output through the CLI tool:
gog gmail search "is:unread in:inbox" --json --max=30 --account=maroffo@gmail.com \
| uv run --project ~/.claude/skills/inbox-triage -- inbox-triage classify
This outputs a markdown summary grouped by priority and saves state to /tmp/inbox-triage-state.json.
Step 2: Review with User
Present the CLI output to the user. The summary includes:
- P1 - Urgent: Direct messages from known contacts, time-sensitive
- P2 - Important: Work-related, newsletters worth reading, personal correspondence
- P3 - Normal: General updates, notifications
- P4 - Low Priority: Promotions, social, automated noise
Step 3: Archive
Use the archive subcommand for batch operations:
# Dry run (shows commands without executing)
uv run --project ~/.claude/skills/inbox-triage -- inbox-triage archive p3 p4
# Execute
uv run --project ~/.claude/skills/inbox-triage -- inbox-triage archive p3 p4 --yes
Step 4: Handle Remaining Items
For P1/P2 threads that need action:
# Open in browser
gog gmail url <threadId>
# Star for follow-up
gog gmail thread modify <threadId> --account=maroffo@gmail.com --add=STARRED
# Mark as read without archiving
gog gmail thread modify <threadId> --account=maroffo@gmail.com --remove=UNREAD
Classification Rules
Rules are in ~/.claude/skills/inbox-triage/rules.yaml (user-editable). First match wins:
- Sender exact email match
- Sender domain match (
@domain.com) - Gmail label match
- Gmail category fallback (
CATEGORY_PROMOTIONS, etc.) - Default (P3)
Rules
- Summarize first - don't read full content unless asked
- Respect privacy - don't read personal emails in detail without permission
- Batch operations - group similar actions (archive all promos, etc.)
- Confirm destructive actions - always confirm before trash/delete
- Open in browser - use
gog gmail url <threadId>for user to read full email
More from maroffo/claude-forge
email-cleanup
Clean up Gmail - archive old emails, delete promotions, manage storage. Use when user wants to clean inbox, archive emails, or free up space.
25newsletter-digest
Process newsletters into Second Brain digest. Use when user wants to process newsletters, create digest, or catch up on subscriptions. Not for web clippings (use process-clippings) or email bookmarks (use process-email-bookmarks).
22table-image
Render markdown tables as hand-drawn sketch images. Use when user wants a table rendered as an image, visual table, or diagram illustration.
21apple-swift
Apple platform development with Swift, SwiftUI, async/await, and performance. Use when working with .swift files, Package.swift, Xcode projects, or building for iOS/macOS/watchOS/visionOS.
20react-nextjs
React + Next.js App Router development. Use when working with .tsx/.jsx files, next.config, or user asks about Server Components, data fetching, state management, forms, or React testing.
20project-analyzer
Analyze codebase and create CLAUDE.md documentation. Use when analyzing project, understanding codebase, or creating documentation.
17