Send email with Mail Master 万能邮箱助手
通过阿里云邮箱、QQ邮箱或163邮箱等发送和接收邮件。支持发送普通邮件、带附件邮件、接收邮件、检查新邮件。当用户要求发送邮件、查看邮件、检查新邮件时使用。
MIT-0 · Free to use, modify, and redistribute. No attribution required.
⭐ 1 · 903 · 3 current installs · 4 all-time installs
byAI-4-Chinese@jaccchina-ai
MIT-0
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
The name/description promise (send/receive via QQ/163/Alipay-like email providers) matches the shipped Python code and SKILL.md. The code uses imaplib/poplib/smtplib and implements send, receive, check-new, and delete operations as described; required resources are limited to the mailbox credentials present in scripts/config.json.
Instruction Scope
SKILL.md directs the user to edit scripts/config.json with email addresses and authorization codes and to invoke the provided mail.py CLI. The instructions do not ask the agent to read unrelated system files, but the implementation will read any file paths provided as attachments — this grants the skill the ability to read and send arbitrary local files when attachments are specified. The docs also imply (and the config contains) a last_check_time field that the code likely updates; this is expected for a mailbox checker.
Install Mechanism
There is no install spec and the code relies only on Python standard libraries (imaplib, poplib, smtplib, email). No remote downloads or third‑party packages are required. This minimizes installation risk.
Credentials
No environment variables or external credentials are required, which matches the skill. However credentials are stored in a plaintext scripts/config.json file (the package contains an example config with placeholder auth codes). Keeping mailbox auth codes in a file inside the skill directory is a sensitive design choice — it increases risk if the repository or host is exposed. Also, because the skill can attach arbitrary local files to outgoing mail, it can be used to exfiltrate files if misused.
Persistence & Privilege
The skill is not always-enabled and does not declare special privileges. It does not modify other skills' configs or request system-wide credentials. Autonomous invocation of skills is the platform default; this skill can send mail when invoked, which is expected for its purpose.
Assessment
Before installing or enabling this skill:
- Do not put real mailbox credentials into the package copy that will be uploaded/shared. Replace scripts/config.json with a copy that contains placeholder values, and store real auth codes only on your host in a secure location.
- Prefer using a dedicated mailbox and a generated SMTP/IMAP authorization code (not your full login password). That limits blast radius if the credentials are leaked.
- Be aware that when asked to attach files, the skill will read arbitrary local file paths and send them as attachments — avoid giving it access to sensitive folders, and do not let the agent autonomously attach files you care about.
- If you want stronger security, modify the code to read credentials from environment variables or from a secure secrets store rather than a plaintext config file.
- Note POP3 behavior: deletions for 163/POP3 are permanent. Review delete behavior before using deletion commands.
- If you need higher assurance, review the full email_manager.py and mail.py (they are included) or run them in a sandboxed environment. The current package contains no obfuscated code or external endpoints beyond the configured mail servers.Like a lobster shell, security has layers — review code before you run it.
Current versionv1.0.0
Download ziplatest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
SKILL.md
邮件管理
通过阿里云邮箱、QQ邮箱或163邮箱等发送和接收邮件。
配置
编辑 skills/email/scripts/config.json,填写邮箱地址和授权码(非登录密码)。
授权码获取:
- QQ 邮箱:设置 > 账户 > 开启 IMAP/SMTP > 生成授权码
- 163 邮箱:设置 > POP3/SMTP/IMAP > 开启服务 > 设置授权密码
可通过 default_mailbox 字段设置默认邮箱("qq" 或 "163")。
命令行调用
# 发送邮件
python3 skills/email/scripts/mail.py send --to user@example.com --subject "主题" --content "内容"
# 发送带附件
python3 skills/email/scripts/mail.py send --to user@example.com --subject "报告" --content "请查收" --attach report.pdf
# 接收最新邮件
python3 skills/email/scripts/mail.py receive --limit 5
# 接收邮件(JSON 输出,推荐 AI 使用)
python3 skills/email/scripts/mail.py receive --limit 5 --json
# 检查新邮件(最近 N 天)
python3 skills/email/scripts/mail.py check-new --since 1
# 检查新邮件(JSON 输出)
python3 skills/email/scripts/mail.py check-new --since 1 --json
# 删除邮件(移到已删除文件夹,QQ邮箱可恢复)
python3 skills/email/scripts/mail.py delete --ids 123
# 批量删除
python3 skills/email/scripts/mail.py delete --ids 123 124 125
# 彻底删除(不可恢复)
python3 skills/email/scripts/mail.py delete --ids 123 --permanent
# 指定邮箱类型
python3 skills/email/scripts/mail.py --mailbox 163 send --to user@example.com --subject "测试"
删除邮件说明
- QQ 邮箱(IMAP):默认移到「已删除」文件夹,可以从已删除中恢复。加
--permanent彻底删除。 - 163 邮箱(POP3):POP3 协议不支持文件夹操作,删除始终是永久的,不可恢复。
Files
6 totalSelect a file
Select a file to preview.
Comments
Loading comments…
