<< All versions
Skill v1.0.1
currentAutomated scan100/100team-attention/plugins-for-claude-natives/gmail
18 files
──Details
PublishedSeptember 30, 2026 at 03:10 AM
Content Hashsha256:29be04b15e7aa9ac...
Git SHAfd9c20754dba
Bump Typepatch
──Files
Files (1 file, 3.9 KB)
SKILL.md3.9 KBactive
SKILL.md · 112 lines · 3.9 KB
version: "1.0.1" name: gmail description: This skill should be used when the user asks to "check email", "read emails", "send email", "reply to email", "search inbox", or manages Gmail. Supports multi-account Gmail integration for reading, searching, sending, and label management.
Gmail Skill
Manage emails through Gmail API - read, search, send, and organize across multiple Google accounts.
Account Setup
Before running any command, read `accounts.yaml` to check registered accounts.
Ifaccounts.yamlis missing or empty → Readreferences/setup-guide.mdfor initial setup
yaml
# accounts.yaml exampleaccounts:personal:email: user@gmail.comdescription: Personal Gmailwork:email: user@company.comdescription: Work account
Email Sending Workflow (5 Steps)
When sending emails, create 5 Tasks with TaskCreate and execute sequentially:
| Step | Task | Key Action | |
|---|---|---|---|
| 1 | Gather context | Run Explore SubAgents in parallel: recipient info, related projects, background context | |
| 2 | Check previous conversations | Search --query "to:recipient OR from:recipient newer_than:90d" → AskUserQuestion for thread selection | |
| 3 | Draft email | Compose draft → AskUserQuestion for feedback | |
| 4 | Test send | Send [TEST] email to user's own address → Open in Gmail web → Request confirmation | |
| 5 | Actual send | Send to recipient → Report completion |
Signature: Append ---\nSent with Claude Code to all outgoing emails
Workflow Example: "Send a meeting email to John"
1. Create 5 Tasks2. Step 1: Run parallel Explore SubAgents- Search recipient (John) info (partners/, projects/, context.md, etc.)- Search meeting context (calendar, recent meeting notes, etc.)3. Step 2: Search "to:john@company.com OR from:john@company.com"→ If previous conversation exists, AskUserQuestion (reply/new email)4. Step 3: Draft email → AskUserQuestion (proceed/revise)5. Step 4: Test send to my email → Open in Gmail web (`open "https://mail.google.com/mail/u/0/#inbox/{message_id}"`) → Request confirmation6. Step 5: Actual send → Done
CLI Quick Reference
bash
# List messagesuv run python scripts/list_messages.py --account work --query "is:unread" --max 10# Send emailuv run python scripts/send_message.py --account work --to "user@example.com" --subject "Subject" --body "Content"# Check profileuv run python scripts/manage_labels.py --account work profile
Detailed CLI usage:references/cli-usage.mdSearch query reference:references/search-queries.md
View Email in Web
After sending, use the returned Message ID to view directly in Gmail web:
bash
# URL formathttps://mail.google.com/mail/u/0/#inbox/{message_id}# Example: Open in browser after test sendopen "https://mail.google.com/mail/u/0/#inbox/19c145bbd47ddd01"
Note:u/0is the first logged-in account,u/1is the second account
File Structure
skills/gmail/├── SKILL.md├── accounts.yaml # Account metadata├── scripts/ # CLI scripts├── references/│ ├── setup-guide.md # Initial setup guide│ ├── cli-usage.md # Detailed CLI usage│ ├── search-queries.md # Search query reference│ └── credentials.json # OAuth Client ID (gitignore)├── assets/│ ├── accounts.default.yaml # Account config template│ ├── email-templates.md # Email body templates│ └── signatures.md # Signature templates (Plain/HTML)└── accounts/ # Per-account tokens (gitignore)
Error Handling
| Situation | Resolution | |
|---|---|---|
| accounts.yaml missing | Read references/setup-guide.md for initial setup | |
| Token missing | Guide user to run setup_auth.py --account <name> | |
| Token expired | Auto-refresh; if failed, guide re-authentication |