360 Secure SkillHub
360 安全技能中心

Lel Mail

该 Skill 组合 Python 与 Bash 脚本,借助宿主 Agent 的推理能力完成 Gmail SMTP/IMAP 邮件的检查、发送与待发队列管理;支持 cron 定时轮询收件、列出或删除排队邮件,并可将邮件内容写入记忆或向用户请求回复输入。

leli1024
leli1024
热度 63.25
最近更新 2026-05-18 12:06:14
分类:协作依赖:代码执行 / 读写文件 / 第三方 API应用场景:邮件起草 / 自动化脚本 / 日程安排

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add lel-mail
Metadata
name
lel-mail
description
Send and read email via a combination of python and bash scripts which makes use of the main agent for reasoning and logic. This skill enables the agent to write to memory based on contents in the email and to reach out to the user either to notify them of happenings or to request inputs to respond. This skill also contains a python script to read and manage the email queue containing functionality to list pending outgoing emails and delete emails before they can be sent out. Please note that this skill enables the agent to act upon received emails by adding to agent memory and sending responses
metadata
{"clawdbot":{"emoji":"📧","requires":{"bins":["python3"]}}}

Lel Mail

Important Note If Running On the Cloud/VPS

  • Some cloud providers explicitly disable email leading to failiure of these scripts, services like tailscale will be needed to bypass these blocks

Setup

Setting up the Config File

Create ~/.config/lel-mail/config.json:

[
  {
    "provider": "gmail",
    "config": {
        "smtp": {
        "server": "smtp.gmail.com", //Default url
        "port": 587 //Default port
      },
      "imap": {
        "server": "imap.gmail.com", //Default url
        "port": 993 //Default port
      }
    },
    "auth": {
      "user": "example@gmail.com",
      "password": "XXXX XXXX XXXX XXXX" //Gmail Requires App Specific Password Rather Than Your Normal Password
    },
    "can_send": true,
    "can_read": true
  }
]

Setting up cron job

Set up a simple cron job which runs the following command every 5 minutes with a randomised 30-90 second delay. Confirm with user the interval to be used: ~/.openclaw/workspace/skills/lel-mail/scripts/email_sender_daemon.sh

Quick Reference

Read Email

  1. Make sure config exists, if not create it with input of user
  2. Reference USERS.md (or whatever USER reference file your system uses) to see what email(s) you need to check unless user explicitly defines the email(s)
  3. Run the following command ~/.openclaw/workspace/skills/lel-mail/scripts/check_email.sh <USER_EMAIL>

Send Email

Note, this script does not send the data directly but sends it to a scheduler which will automatically send it in approximately 5.5 minutes

  1. Make sure you have the necessary data to send the email from the user, that includes sender, recipient and body, everything else is optional
  2. Run the following command ~/.openclaw/workspace/skills/lel-mail/scripts/email_send.sh --sender <sender> --recipient <recipient> --subject <subject> --body <body> [--cc ...] [--bcc ...] Note: if using BCC/CC note that CC/BCC are comma-separated lists

3. Manage Outgoing Queue

Outgoing emails are scheduled to send with a random delay (30-90 seconds). You can list or delete these before they are sent.

List all queued emails:

python3 ~/.openclaw/workspace/skills/lel-mail/scripts/manage_queue.py --list

Delete a specific email by ID:

python3 ~/.openclaw/workspace/skills/lel-mail/scripts/manage_queue.py --delete <ID>

Troubleshooting

Prompt user to assist when errors occur due to missing/invalid credentials/configuration

  • If emails aren't sending at all check that a cron job for the daemon is running