skills/disabled/gmail-automation/SKILL.md
Automate Gmail tasks via Rube MCP (Composio): send/reply, search, labels, drafts, attachments. Always search tools first for current schemas.
npx skillsauth add aaaaqwq/claude-code-skills gmail-automationInstall 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.
Automate Gmail operations through Composio's Gmail toolkit via Rube MCP.
RUBE_MANAGE_CONNECTIONS with toolkit gmailRUBE_SEARCH_TOOLS first to get current tool schemasGet Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
RUBE_SEARCH_TOOLS respondsRUBE_MANAGE_CONNECTIONS with toolkit gmailWhen to use: User wants to compose and send a new email
Tool sequence:
GMAIL_SEARCH_PEOPLE - Resolve contact name to email address [Optional]GMAIL_SEND_EMAIL - Send the email [Required]Key parameters:
recipient_email: Email address or 'me' for selfsubject: Email subject linebody: Email content (plain text or HTML)is_html: Must be true if body contains HTML markupcc/bcc: Arrays of email addressesattachment: Object with {s3key, mimetype, name} from prior downloadPitfalls:
recipient_email, cc, or bcc requiredsubject or body requiredmimetype MUST contain '/' (e.g., 'application/pdf', not 'pdf')from_email only for verified aliases in Gmail 'Send mail as' settingsWhen to use: User wants to reply to an existing email conversation
Tool sequence:
GMAIL_FETCH_EMAILS - Find the email/thread to reply to [Prerequisite]GMAIL_REPLY_TO_THREAD - Send reply within the thread [Required]Key parameters:
thread_id: Hex string from FETCH_EMAILS (e.g., '169eefc8138e68ca')message_body: Reply contentrecipient_email: Reply recipientis_html: Set true for HTML contentPitfalls:
thread_id must be hex string; prefixes like 'msg-f:' are auto-strippedWhen to use: User wants to find specific emails by sender, subject, date, label, etc.
Tool sequence:
GMAIL_FETCH_EMAILS - Search with Gmail query syntax [Required]GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID - Get full message details for selected results [Optional]Key parameters:
query: Gmail search syntax (from:, to:, subject:, is:unread, has:attachment, after:YYYY/MM/DD, before:YYYY/MM/DD)max_results: 1-500 messages per pagelabel_ids: System IDs like 'INBOX', 'UNREAD'include_payload: Set true to get full message contentids_only: Set true for just message IDspage_token: For pagination (from nextPageToken)Pitfalls:
nextPageToken via page_token until absentresultSizeEstimate is approximate, not exact countinclude_payload=true on broad searches creates huge responses; default to metadataWhen to use: User wants to create, modify, or organize labels
Tool sequence:
GMAIL_LIST_LABELS - List all labels to find IDs and detect conflicts [Required]GMAIL_CREATE_LABEL - Create a new label [Optional]GMAIL_PATCH_LABEL - Rename or change label colors/visibility [Optional]GMAIL_DELETE_LABEL - Delete a user-created label (irreversible) [Optional]Key parameters:
label_name: Max 225 chars, no commas, '/' for nesting (e.g., 'Work/Projects')background_color/text_color: Hex values from Gmail's predefined paletteid: Label ID for PATCH/DELETE operationsPitfalls:
When to use: User wants to label, archive, or mark emails as read/unread
Tool sequence:
GMAIL_LIST_LABELS - Get label IDs for custom labels [Prerequisite]GMAIL_FETCH_EMAILS - Find target messages [Prerequisite]GMAIL_BATCH_MODIFY_MESSAGES - Bulk add/remove labels (up to 1000 messages) [Required]GMAIL_ADD_LABEL_TO_EMAIL - Single-message label changes [Fallback]Key parameters:
messageIds: Array of message IDs (max 1000)addLabelIds: Array of label IDs to addremoveLabelIds: Array of label IDs to removemessage_id: 15-16 char hex string for single operationsPitfalls:
message_id must be 15-16 char hex, NOT UUIDs or web UI IDsWhen to use: User wants to create, edit, or send email drafts, possibly with attachments
Tool sequence:
GMAIL_CREATE_EMAIL_DRAFT - Create a new draft [Required]GMAIL_UPDATE_DRAFT - Edit draft content [Optional]GMAIL_LIST_DRAFTS - List existing drafts [Optional]GMAIL_SEND_DRAFT - Send a draft (requires explicit user approval) [Optional]GMAIL_GET_ATTACHMENT - Download attachment from existing message [Optional]Key parameters:
recipient_email: Draft recipientsubject: Draft subject (omit for reply drafts to stay in thread)body: Draft contentis_html: Set true for HTML contentattachment: Object with {s3key, mimetype, name}thread_id: For reply drafts (leave subject empty to stay in thread)Pitfalls:
data.id (draft_id) AND data.message.id; use data.id for draft operationsLabel name → Label ID:
1. Call GMAIL_LIST_LABELS
2. Find label by name in response
3. Extract id field (e.g., 'Label_123')
Contact name → Email:
1. Call GMAIL_SEARCH_PEOPLE with query=contact_name
2. Extract emailAddresses from response
Thread ID from search:
1. Call GMAIL_FETCH_EMAILS or GMAIL_LIST_THREADS
2. Extract threadId (15-16 char hex string)
max_results up to 500 per pagenextPageTokenpage_token in next requestnextPageToken is absent or empty stringresultSizeEstimate is approximate, not exactOperators:
from:[email protected] - Emails from senderto:[email protected] - Emails to recipientsubject:"exact phrase" - Subject contains exact phraseis:unread - Unread messagesis:starred - Starred messagesis:snoozed - Snoozed messageshas:attachment - Has attachmentsafter:2024/01/01 - After date (YYYY/MM/DD)before:2024/12/31 - Before datelabel:custom_label - User-created label (use label ID)in:sent - In sent foldercategory:primary - Primary categoryCombinators:
AND - Both conditions (default)OR - Either conditionNOT - Exclude condition() - Group conditionsExamples:
from:[email protected] is:unread - Unread emails from bosssubject:invoice has:attachment after:2024/01/01 - Invoices with attachments this year(from:alice OR from:bob) is:starred - Starred emails from Alice or BobID Formats:
Query Syntax:
Rate Limits:
Response Parsing:
data_preview or data.messagesmessageTimestamp uses RFC3339 with 'Z' suffixAttachments:
s3key from prior download may expire| Task | Tool Slug | Key Params | |------|-----------|------------| | Send email | GMAIL_SEND_EMAIL | recipient_email, subject, body, is_html | | Reply to thread | GMAIL_REPLY_TO_THREAD | thread_id, message_body, recipient_email | | Search emails | GMAIL_FETCH_EMAILS | query, max_results, label_ids, page_token | | Get message details | GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID | message_id | | List labels | GMAIL_LIST_LABELS | (none) | | Create label | GMAIL_CREATE_LABEL | label_name, background_color, text_color | | Modify labels bulk | GMAIL_BATCH_MODIFY_MESSAGES | messageIds, addLabelIds, removeLabelIds | | Create draft | GMAIL_CREATE_EMAIL_DRAFT | recipient_email, subject, body, thread_id | | Send draft | GMAIL_SEND_DRAFT | draft_id | | Get attachment | GMAIL_GET_ATTACHMENT | message_id, attachment_id | | Search contacts | GMAIL_SEARCH_PEOPLE | query | | Get profile | GMAIL_GET_PROFILE | (none) |
testing
通用自媒体文章自动发布工具。支持百家号、搜狐号、知乎、微信公众号、小红书、抖音号六个平台的自动化发布流程。使用Playwright自动化实现平台导航和发布,支持通过storageState管理Cookie实现账号切换。
development
# SKILL.md - Model Configuration Status (mcstatus) ## 触发条件 - `/mcstatus` 命令 - 用户询问模型配备、模型配置、model status、模型列表等 ## 功能 实时生成 Agent + Cron 的模型配置报告,展示当前所有 agent 的主模型/fallback链和所有 cron 任务的模型分配。 ## 执行步骤 ### Step 1: 收集 Agent 模型配置 读取各 agent 的 models.json 获取主模型和 fallback 链: ```bash for agent in main ops code quant data research content market finance pm law product sales batch; do config=$(cat ~/.openclaw/agents/$agent/agent/models.json 2>/dev/null) if [ -n "$config" ]; then echo "=== $agent
tools
MCP 服务器智能管理助手。自动检测 MCP 可用性、智能开关、功能问答,提供人性化的 MCP 管理体验。
tools
从GitHub搜索并自动安装配置MCP(Model Context Protocol)服务器工具到Claude配置文件。当用户需要安装MCP工具时触发此技能。工作流程:搜索GitHub上的MCP项目 -> 提取npx配置 -> 添加到~/.claude.json -> 处理API密钥(如有)。