email-reporter

Generic email reporting tool for OpenClaw agents. Auto-converts Markdown to PDF and sends as attachments.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "email-reporter" with this command: npx skills add dirkcaiusa/email-reporter

Email Reporter Skill

Overview

A unified email reporting tool for OpenClaw agents. Automatically converts Markdown reports to PDF when images are detected, and sends them as attachments.

Features

  • Smart Format Detection: Auto-converts to PDF for reports with images or large files (>500KB)
  • Markdown Support: Native Markdown rendering with syntax highlighting
  • Flexible Configuration: Environment variables or config file for email settings
  • Multiple Backends: Support for msmtp, SMTP, and sendmail

Installation

clawhub install email-reporter

Configuration

Option 1: Environment Variables (Recommended)

export EMAIL_SENDER="your-email@qq.com"
export EMAIL_RECIPIENT="recipient@example.com"
export EMAIL_SMTP_HOST="smtp.qq.com"
export EMAIL_SMTP_PORT="587"
export EMAIL_SMTP_USER="your-email@qq.com"
export EMAIL_SMTP_PASS="your-auth-code"

Option 2: Config File

Create ~/.email_reporter.conf:

{
  "sender": "your-email@qq.com",
  "recipient": "recipient@example.com",
  "smtp_host": "smtp.qq.com",
  "smtp_port": 587,
  "smtp_user": "your-email@qq.com",
  "smtp_pass": "your-auth-code",
  "use_msmtp": false
}

Option 3: Command Line

python3 email_reporter.py report.md --sender me@qq.com --to friend@example.com

Usage

Basic Usage

# Send report to default recipient
python3 email_reporter.py report.md

# Specify agent name (used in subject)
python3 email_reporter.py report.md --agent "my-agent"

# Custom recipient
python3 email_reporter.py report.md --to "friend@example.com"

# Custom subject
python3 email_reporter.py report.md --subject "My Analysis Report"

In Your Agent

import subprocess

# Send a report
subprocess.run([
    "python3", "skills/email-reporter/email_reporter.py",
    "reports/analysis.md",
    "--agent", "invest-agent",
    "--to", "recipient@example.com"
])

File Format Selection

ScenarioFormatDelivery
Plain text (<100KB)MarkdownDirect
With images or >500KBPDFAttachment
Data tablesMarkdown + CSVAttachment bundle

SMTP Setup Guide

QQ Mail (腾讯)

  1. Enable SMTP: 设置 → 账户 → 开启SMTP服务
  2. Generate auth code (not your password!)
  3. Use auth code as EMAIL_SMTP_PASS

Gmail

  1. Enable 2FA
  2. Generate App Password
  3. Use app password as EMAIL_SMTP_PASS

Outlook/Office 365

export EMAIL_SMTP_HOST="smtp.office365.com"
export EMAIL_SMTP_PORT="587"

Troubleshooting

Email not sending

# Test SMTP connection
python3 -c "
import smtplib
s = smtplib.SMTP('smtp.qq.com', 587)
s.starttls()
s.login('your-email@qq.com', 'your-auth-code')
print('Login OK')
"

PDF conversion fails

# Install dependencies
pip install markdown weasyprint

# For Linux (Ubuntu/Debian)
sudo apt-get install libpango-1.0-0 libpangoft2-1.0-0

License

MIT

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

Agentmemo

Give your AI agent persistent memory and human-in-the-loop approval — across sessions, across models. AgentMemo is a cloud API + MCP server that lets agents...

Registry SourceRecently Updated
Automation

LongTask System

State-file driven long task manager splitting tasks into sequential subtasks, supporting multi-agent collaboration and real-time visual monitoring.

Registry SourceRecently Updated
Automation

Content Creation Multi Agent

集成6个专业Agent,支持知识搜索、文案创作、电商视频脚本、图片素材生成及Seedance提示词设计,提升内容生产效率。

Registry SourceRecently Updated
Automation

Tapo Camera

Connect to Tapo cameras, verify local access, capture snapshots, and inspect frames with local-first RTSP workflows and safe fallbacks.

Registry SourceRecently Updated