skills/gmail/SKILL.md
Gmail integration. List, read, search, send, reply, archive, trash, mark-read emails. Natural language commands like "clear my inbox" or "summarize unread". Requires gog CLI authenticated with Gmail.
npx skillsauth add bishwashere/cowcode GmailInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Manage Gmail using semantically named actions. All operations use the gog CLI (which handles Google OAuth). Requires gog to be installed and authenticated (gog auth).
list_emailsList recent emails from inbox (or any label).
INBOX, SENT, UNREAD, STARRED, TRASH, etc. (default: INBOX)is:unread)read_emailRead the full content of an email by its ID.
search_inboxSearch emails with a Gmail query string.
from:[email protected] newer_than:7d, subject:invoice, is:unread)send_emailSend an email (requires user confirmation).
true to actually sendreply_emailReply to an existing email thread (requires user confirmation).
true to actually sendarchiveArchive (remove from inbox, keep in All Mail) one or more emails.
"inbox" to archive entire inboxolder_than:30d is:read)trashMove emails to Trash.
mark_readMark emails as read.
queryis:unread in:inbox)label_emailAdd or remove a label from emails.
summarize_inboxSummarize unread or recent inbox. Returns sender breakdown, subject lines, oldest unread.
is:unread in:inbox)| User says | Action |
|---|---|
| "What's in my inbox?" | list_emails label: INBOX |
| "Show me unread emails" | list_emails query: is:unread |
| "Search for emails from john" | search_inbox query: from:john |
| "Summarize my inbox" | summarize_inbox |
| "Clear my inbox" | archive ids: "inbox" (ask user to confirm) |
| "Send email to [email protected] about the report" | send_email (compose + confirm) |
| "Archive all emails older than 30 days" | archive query: older_than:30d |
| "Mark all unread as read" | mark_read query: is:unread in:inbox |
Behavior policy:
send_email and reply_email ALWAYS require confirm: true.Privacy:
MEMORY.md or chat logs unless the user explicitly asks.gmail_list_emails
description: List recent emails from Gmail inbox or a label.
parameters:
label: string (optional)
max: number (optional)
query: string (optional)
gmail_read_email
description: Read the full content of a Gmail message by ID.
parameters:
id: string
gmail_search_inbox
description: Search Gmail with a query string (Gmail search syntax).
parameters:
query: string
max: number (optional)
gmail_send_email
description: Send a new email. Requires confirm=true.
parameters:
to: string
subject: string
body: string
cc: string (optional)
confirm: boolean
gmail_reply_email
description: Reply to an email thread. Requires confirm=true.
parameters:
id: string
body: string
confirm: boolean
gmail_archive
description: Archive emails from inbox. Use ids array or query to select messages.
parameters:
ids: array (optional)
query: string (optional)
gmail_trash
description: Move emails to Trash.
parameters:
ids: array (optional)
query: string (optional)
gmail_mark_read
description: Mark emails as read.
parameters:
ids: array (optional)
query: string (optional)
gmail_summarize_inbox
description: Summarize unread or recent inbox messages.
parameters:
max: number (optional)
query: string (optional)
tools
Policy-gated command execution for package managers, project generators, build/test scripts, dev servers, and one-off CLIs. Disabled by default; add "exec" to skills.enabled to expose it. Prefer go-read/go-write for stable filesystem primitives.
data-ai
Plain HTTP fetch (GET/POST/etc.) for JSON or text endpoints, including localhost / LAN / Pasture's own dashboard. Use this instead of browse for non-rendered URLs.
testing
Bridge conversation to dashboard Projects and Missions — list configured projects, register new ones with setup details, health-check, propose tasks, create missions after user approval, log progress, and update task status. Use when the user wants to work on, track, or manage a project.
documentation
GitHub integration. Read repos, list/read issues and PRs, create branches, post comments, create PRs. Requires GitHub token in ~/.pasture/secrets.json or GITHUB_TOKEN env var.