adversarial-review
Review existing work with independent fresh reviewers and fresh synthesis. Use for an adversarial review, review-plan request, or…
Process emails in a configured task label into Apple Reminders, including timing details. Requires macOS and connected email.
Claude Code
$ npx -y skills add chrisblattman/claudeblattman --skill todo-queue --agent claude-code
Codex
$ npx skills add chrisblattman/claudeblattman --skill todo-queue -a codex -y
Cursor
$ npx skills add chrisblattman/claudeblattman --skill todo-queue -a cursor -y
Gemini CLI
$ npx skills add chrisblattman/claudeblattman --skill todo-queue -a gemini-cli -y
GitHub Copilot
$ npx skills add chrisblattman/claudeblattman --skill todo-queue -a github-copilot -y
OpenCode
$ npx skills add chrisblattman/claudeblattman --skill todo-queue -a opencode -y
Windsurf
$ npx skills add chrisblattman/claudeblattman --skill todo-queue -a windsurf -y
name: todo-queue description: "Process emails in a configured task label into Apple Reminders, including timing details. Requires macOS and connected email."
*v1.1 — Adapted for public use*
Batch-process emails in a designated Gmail label, converting them to Apple Reminders with timing extracted from the email body.
/todo-queue
This skill processes emails sent to `your-email+todo@gmail.com` (or manually labeled @ToSelf). It: 1. Searches for unread @ToSelf emails 2. Parses timing syntax from the email body 3. Creates Apple Reminders automatically (no confirmation needed) 4. Marks emails as read and archives them
**Note:** Auto-processing is enabled. Use `dryrun` argument to preview without creating.
**Platform note:** This skill uses `osascript` for Apple Reminders, which is **macOS-only**. On other platforms, you would need to replace Step 3 with a different reminder/task API.
Search Gmail: `label:@ToSelf is:unread`
**If no emails found:**
No pending todo emails in @ToSelf. To add emails to the queue: - Forward any email to: your-email+todo@gmail.com - Add timing in the body: "due:Friday" or "due:tomorrow list:Personal"
Stop here.
For each email found:
1. **Get email content** using `mcp__google_workspace__get_gmail_message_content`
2. **Extract task title:**
3. **Parse timing syntax from body** (case-insensitive, colon required):
| Syntax | Parsed As | |--------|-----------| | `due:tomorrow` | Tomorrow 9am | | `due:Friday` | Next Friday 9am | | `due:Feb 15` or `due:February 15` | Feb 15 9am | | `due:next week` | Next Monday 9am | | `due:3 days` or `due:in 3 days` | 3 days from now, 9am | | `due:2 weeks` | 14 days from now, 9am | | `time:2pm` or `time:14:00` | Overrides default 9am | | `list:Personal` | Personal list (default: Work) | | `list:Someday` | Someday list | | `list:Work` | Work list (explicit) | | `tag:#waiting` | Add #waiting tag | | `tags:#project #budget` | Multiple tags (space-separated) | | No timing found | No due date (task still created) |
**Parsing rules:**
**Day name parsing:**
**Process each email automatically** — no confirmation needed.
For each task:
1. **Create Apple Reminder** using osascript:
osascript -e '
tell application "Reminders"
set targetList to list "[List Name]"
set newReminder to make new reminder at end of targetList with properties {name:"[Task Title]", body:"[Gmail Link]\n\n[Any tags]"}
[If due date:] set due date of newReminder to date "[formatted date]"
end tell
'**Date format for osascript:** "February 7, 2026 at 9:00:00 AM"
**Gmail link format:** `https://mail.google.com/mail/u/0/#inbox/[message_id]`
2. **Archive the email:**
Use `mcp__google_workspace__modify_gmail_message_labels` with:
COMPLETE Created 3 reminders: 1. Reply to [Name] about grant proposal → Work (due Fri Feb 7) 2. Review proposal draft → Work (no due date) 3. Book dentist appointment → Personal (due Mon Feb 10) Processed emails archived (kept in @ToSelf for history) To find these reminders: - Mac: Reminders app → Work / Personal lists - iPhone: Reminders app → Work / Personal lists
/todo-queue # Process all pending /todo-queue dryrun # Preview only /todo-queue limit:5 # Process first 5 only
**Example 1: Forward with timing**
Forward email from a colleague to: your-email+todo@gmail.com Add to body before forwarded content: "due:Friday ---------- Forwarded message ----------" → Creates: "Reply to [Name] about [subject]" due Friday 9am in Work list
**Example 2: Self-email quick capture**
Send to: your-email+todo@gmail.com Subject: Book flights for March trip Body: "due:next week list:Personal" → Creates: "Book flights for March trip" due Monday in Personal list
**Example 3: No timing**
Forward email to: your-email+todo@gmail.com Body: (empty, just forward) → Creates: "Review: [subject]" with no due date in Work list
**Example 4: Multiple tags**
Send to: your-email+todo@gmail.com Subject: Review project budget Body: "due:Feb 15 tags:#project #budget" → Creates: "Review project budget" due Feb 15 in Work list with tags
Claude Code for professionals who don't code — Skills, agents, and setup guides
Review existing work with independent fresh reviewers and fresh synthesis. Use for an adversarial review, review-plan request, or…
Ask the specific Claude, Codex, Gemini, or Grok agent the user names and automatically retrieve its response. Use for targeted…
Develop independent approaches to a task, decision, plan, or draft, then use a fresh worker to synthesize them. Use for an…
Close out current work by saving decisions, unresolved tasks, useful artifacts, a session log and a current-state handoff for the…
Check the installed starter kit, prerequisites, and next step without calling external models.
Discover and test optional Claude, Codex, Gemini through Antigravity, and Grok subscription connections. Help with missing CLI or…
Draws static SVG figures for lessons, READMEs and manuals in the AI Engineering from Scratch look: paper panel, blueprint accent,…
End-to-end workflow for creating complete JavaScript concept documentation, orchestrating all skills from research to final review
Test a learner on a single Claude Code tutorial lesson (01-10) with 10 questions, scoring answers and flagging weak spots. Use…