返回顶部
i

imap-idle-watcherIMAP空闲监控

>

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.1.0
安全检测
已通过
157
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

imap-idle-watcher

IMAP IDLE 监视器

实时邮件监视器。使用 IMAP IDLE(服务器推送)而非轮询。
使用应用密码而非 OAuth — 无令牌过期,无需重新认证。

快速开始

交互式

bash bash scripts/setup_service.sh

提示输入邮箱,自动检测提供商,提供应用密码链接,测试连接,安装服务。

非交互式

bash bash scripts/setup_service.sh \ --account user@gmail.com \ --password xxxx xxxx xxxx xxxx \ --command python3 /path/to/handler.py \ --service-name my-watcher

仅测试连接

bash bash scripts/setup_service.sh --test --account user@gmail.com --password xxxx

配置(环境变量)

变量默认值描述
IMAPACCOUNT(必填)邮箱地址
IMAPPASSWORD
(必填) | 应用密码 | | IMAP_HOST | imap.gmail.com | IMAP 服务器(从邮箱自动检测) | | IMAP_PORT | 993 | IMAP 端口 | | IMAP_FOLDER | INBOX | 要监视的文件夹 | | ONNEWMAIL_CMD | (可选) | 新邮件到达时运行的 Shell 命令 | | FILTER_FROM | (可选) | 仅触发来自这些发件人的邮件(逗号分隔,子字符串匹配) | | FILTER_SUBJECT | (可选) | 仅触发包含这些主题的邮件(逗号分隔,子字符串匹配) | | IDLE_TIMEOUT | 1200 | IDLE 续订前的秒数(最大 1740) | | DEBOUNCE_SECONDS | 10 | 命令运行之间的最小秒数 |

过滤

仅处理匹配特定发件人或主题的邮件:

bash
FILTER_FROM=paypal.com,stripe.com # 发件人包含任一(OR)
FILTER_SUBJECT=payment,invoice # 主题包含任一(OR)

  • - 不区分大小写的子字符串匹配
  • 如果同时设置了 FROM 和 SUBJECT,两者必须都匹配(AND)
  • 在每个过滤器内,任意值匹配(OR)
  • 未设置过滤器 = 处理所有邮件

编写处理器

代理应根据用户意图编写处理器脚本。守护进程通过环境变量传递邮件元数据:

变量示例
MAILFROMJohn Doe <john@example.com>
MAILSUBJECT
Your order has shipped |
| MAIL_DATE | Mon, 17 Mar 2026 10:30:00 +0700 |
| MAIL_UID | 12345 |

工作流程

  1. 1. 用户描述他们想要的功能(例如监视我的收件箱,总结新邮件)
  2. 代理编写一个处理器脚本(Python/Bash),读取环境变量并执行用户要求的操作
  3. 代理将其保存在持久化位置(例如 ~/email-handler.py)
  4. 代理运行 setup_service.sh,参数为 --command python3 ~/email-handler.py

示例:用户说有新邮件时通知我

代理编写 ~/email-handler.py:
python
#!/usr/bin/env python3
import os
print(f来自 {os.environ.get(MAILFROM, ?)} 的新邮件:{os.environ.get(MAILSUBJECT, ?)})

然后进行配置:
bash
bash scripts/setup_service.sh --account user@gmail.com --password xxxx \
--command python3 ~/email-handler.py

处理器是代理的任务 — 根据用户需求进行调整。

工作原理

  1. 1. 使用应用密码连接到 IMAP 服务器(SSL)
  2. 进入 IDLE 模式 — 服务器保持连接打开
  3. 新邮件到达时服务器推送通知(即时,无需轮询)
  4. 守护进程运行 ONNEWMAILCMD,并将邮件元数据作为环境变量传递(MAILFROM、MAILSUBJECT、MAILDATE、MAIL_UID)
  5. 返回 IDLE 模式。根据 RFC 2177 每 20 分钟续订一次。
  6. 断开连接时自动重连(退避策略:5秒 → 10秒 → 30秒 → 60秒 → 120秒)

服务管理

bash
systemctl status
journalctl -u -f
systemctl restart
systemctl stop

卸载

bash
bash scripts/setup_service.sh --uninstall --service-name

提供商设置指南

故障排除

常见错误及修复方法,请参见 references/troubleshooting.md

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 imap-idle-watcher-1776205097 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 imap-idle-watcher-1776205097 技能

通过命令行安装

skillhub install imap-idle-watcher-1776205097

下载

⬇ 下载 imap-idle-watcher v1.1.0(免费)

文件大小: 12.52 KB | 发布时间: 2026-4-17 15:05

v1.1.0 最新 2026-4-17 15:05
Add agent guidance for writing handlers, FROM/SUBJECT filtering docs

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部