skills/email-skill/SKILL.md
统一邮件入口:支持平台公邮服务与个人邮箱(IMAP/SMTP)双通道,用户可按需求自主选择。所有与发信相关的需求,都先经由该SKILL处理路由
npx skillsauth add alter123-zz/RaccoonClaw email-skillInstall 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.
本 Skill 是统一邮件入口:
- 支持 平台公邮服务(platform)
- 支持 个人邮箱 IMAP/SMTP(personal)
- 两种方式可并存,由用户根据场景自主选择
email-skill 作为统一编排层:
platform 或 personalimap-smtp-emailplatform(平台公邮服务)定位:平台公邮是一个消息推送通道,专门用于将内容推送到用户自己的邮箱。它不是一个通用的邮件发送工具。
特点:
能力:
不支持:
content_type 必须为 text)💡 简单判断:如果用户的需求是"把某些内容发到我自己的邮箱",公邮适合;如果需求涉及"发给别人",则不适合,应使用
personal。
personal(个人邮箱 IMAP/SMTP)特点:
.env 配置 IMAP/SMTP 授权码)能力:
⚠️ 本节内容供 Agent 理解和引导用户,不是一个可执行的命令。
Agent 应根据用户的实际需求,通过对话理解意图后,引导用户选择合适的 provider。在用户选择使用公邮之前,Agent 必须向用户清晰说明公邮的能力边界,由用户自行判断是否适合,再决定是否使用。
使用公邮前,Agent 应向用户传达以下关键信息:
能力对比:
| 维度 | platform(公邮) | personal(个人邮箱) | |------|-----------------|-------------------| | 配置成本 | 零配置,开箱即用 | 需配置 IMAP/SMTP 凭据 | | 收件人范围 | 仅限用户自己的邮箱 | 任意收件人 | | 典型用途 | 消息推送(天气/报告/提醒→自己) | 邮件沟通(发给同事/客户/任何人) | | 发件身份 | 平台统一发件人 | 用户个人邮箱地址 | | 收件能力 | ❌ 不支持 | ✅ 支持 | | 附件发送 | ❌ 不支持 | ✅ 支持 | | 抄送/密送 | ❌ 不支持 | ✅ 支持 | | 附件下载 | ❌ 不支持 | ✅ 支持 |
用户意图信号 → 推荐 provider:
platform(典型消息推送场景)platformpersonal(公邮无法发给他人)personalpersonalplatform,但必须先告知仅能发给自己,由用户确认personalpersonalpersonal(公邮仅支持纯文本)📌 Agent 行为准则:当用户的发信需求可能适合公邮时,Agent 不应直接替用户做决定,而应先说明"公邮仅支持给您自己的邮箱发信,主要用于消息推送",让用户确认后再执行。
macOS / Linux:scripts/unix/email_gateway.sh
Windows:scripts\windows\email_gateway.cmd
macOS / Linux:
bash scripts/unix/email_gateway.sh capabilities
Windows CMD:
scripts\windows\email_gateway.cmd capabilities
macOS / Linux:
bash scripts/unix/email_gateway.sh send \
--provider platform \
--email "[email protected]" \
--subject "日报" \
--body "今日汇总:项目A完成80%,项目B已提测。" \
--content_type "text"
Windows CMD:
scripts\windows\email_gateway.cmd send --provider platform --email "[email protected]" --subject "日报" --body "今日汇总:项目A完成80%,项目B已提测。" --content_type "text"
macOS / Linux:
bash scripts/unix/email_gateway.sh send \
--provider personal \
--to "[email protected]" \
--subject "日报" \
--body "今日汇总"
Windows CMD:
scripts\windows\email_gateway.cmd send --provider personal --to "[email protected]" --subject "日报" --body "今日汇总"
⚠️ 流程约束:Agent 使用公邮发信前,必须先执行
bind-check检查绑定状态。若返回结果表明邮箱已绑定,则直接执行发信,无需再走验证码流程。仅当邮箱未绑定时,才需要执行步骤 2(发送验证码)和步骤 3(验证绑定)。
macOS / Linux:
# 1) 检查绑定(必须先执行)
bash scripts/unix/email_gateway.sh bind-check --email "[email protected]"
# → 若已绑定:直接跳到 4.2 发送邮件,无需步骤 2、3
# → 若未绑定:继续执行步骤 2、3
# 2) 发送验证码(仅未绑定时执行,用户需登录该邮箱查看验证码)
bash scripts/unix/email_gateway.sh bind-send-code --email "[email protected]"
# 3) 验证绑定(仅未绑定时执行)
bash scripts/unix/email_gateway.sh bind-verify --email "[email protected]" --code "123456"
Windows CMD:
REM 1) 检查绑定(必须先执行)
scripts\windows\email_gateway.cmd bind-check --email "[email protected]"
REM → 若已绑定:直接跳到 4.2 发送邮件,无需步骤 2、3
REM → 若未绑定:继续执行步骤 2、3
REM 2) 发送验证码(仅未绑定时执行,用户需登录该邮箱查看验证码)
scripts\windows\email_gateway.cmd bind-send-code --email "[email protected]"
REM 3) 验证绑定(仅未绑定时执行)
scripts\windows\email_gateway.cmd bind-verify --email "[email protected]" --code "123456"
macOS / Linux:
# 检查邮件
bash scripts/unix/email_gateway.sh inbox-check --provider personal --limit 10 --recent 2h
# 搜索邮件
bash scripts/unix/email_gateway.sh inbox-search --provider personal --subject "发票" --unseen
# 拉取邮件详情
bash scripts/unix/email_gateway.sh inbox-fetch --provider personal 12345
# 下载附件
bash scripts/unix/email_gateway.sh inbox-download --provider personal 12345 --dir ~/Downloads
Windows CMD:
REM 检查邮件
scripts\windows\email_gateway.cmd inbox-check --provider personal --limit 10 --recent 2h
REM 搜索邮件
scripts\windows\email_gateway.cmd inbox-search --provider personal --subject "发票" --unseen
REM 拉取邮件详情
scripts\windows\email_gateway.cmd inbox-fetch --provider personal 12345
REM 下载附件
scripts\windows\email_gateway.cmd inbox-download --provider personal 12345 --dir %USERPROFILE%\Downloads
bind-check 检查绑定状态:已绑定可直接发信,未绑定时按绑定流程完成邮箱绑定(用户必须能登录目标邮箱以接收验证码)imap-smtp-email 目录npm installmacOS / Linux:
bash scripts/unix/email_gateway.sh setup-personal
Windows CMD:
scripts\windows\email_gateway.cmd setup-personal
该向导会生成 imap-smtp-email/.env,包含 IMAP/SMTP 主机、账号、授权码等配置。
email-skill/
├── SKILL.md
└── scripts/
├── unix/ # macOS / Linux 脚本
│ ├── email_gateway.sh # 统一入口
│ ├── common.sh # 公共函数库
│ ├── check_bind.sh # platform: 检查绑定
│ ├── send_code.sh # platform: 发送验证码
│ ├── verify_bind.sh # platform: 校验绑定
│ └── send_email.sh # platform: 发送邮件
└── windows/ # Windows CMD 脚本
├── email_gateway.cmd # 统一入口
├── common.cmd # 公共函数库
├── check_bind.cmd # platform: 检查绑定
├── send_code.cmd # platform: 发送验证码
├── verify_bind.cmd # platform: 校验绑定
└── send_email.cmd # platform: 发送邮件
imap-smtp-email/
├── SKILL.md
├── setup.sh
└── scripts/
├── imap.js # personal: 收件/检索/附件
└── smtp.js # personal: 发件
imap-smtp-email 的既有行为,只做路由与编排provider=personal 需要本机可用 node,并完成 .env 配置provider=platform 发送前必须先执行 bind-check 确认绑定状态:已绑定则直接发信,未绑定才需要执行发送验证码(bind-send-code)并绑定(bind-verify)的流程node 和 curl(Windows 10+ 自带 curl)jq,不可用时 fallback 到 node⚠️ 提前完成邮箱绑定:若用户需要设置定时发信任务(如每日定时推送天气、周报汇总等)并使用
platform公邮进行推送,Agent 必须在创建定时任务之前引导用户完成邮箱验证与绑定流程(bind-check → bind-send-code → bind-verify)。因为定时任务执行时用户不在场,无法实时完成验证码交互,若邮箱未提前绑定,定时任务将无法正常发信。
⚠️ 公邮发信余量不足自动切换:使用
platform公邮发信时(包括发送验证码和正式邮件),若接口返回 "公共域名已达日发送上限" 或其他表示发信余量不足的错误,说明当日平台公邮额度已耗尽。此时 Agent 应自动切换至personal(个人邮箱 SMTP)模式帮助用户继续完成发信,无需用户手动干预。切换前应向用户简要说明原因(如"公邮今日额度已用完,已自动切换到个人邮箱为您发送")。若personal模式尚未配置,Agent 应引导用户完成setup-personal配置后再发送。
⚠️ 优先使用 UTF-8 编码:公邮发送邮件时(使用
platform),邮件主题和正文内容应优先使用 UTF-8 编码。
development
Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like "the xlsx in my downloads") — and wants something done to it or produced from it. Also trigger for cleaning or restructuring messy tabular data files (malformed rows, misplaced headers, junk data) into proper spreadsheets. The deliverable must be a spreadsheet file. Do NOT trigger when the primary deliverable is a Word document, HTML report, standalone Python script, database pipeline, or Google Sheets API integration, even if tabular data is involved.
tools
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
tools
Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
tools
天气顾问。智能天气顾问。实时天气查询、未来7天预报、穿衣建议与出行活动推荐 Keywords: 天气查询, weather, 穿衣建议, 出行提醒.