email-manager-liteLightweight email manager with IMAP/SMTP support, advanced search, folder management, and attachment detection. Works with Zoho, Gmail, Outlook, and any IMAP/SMTP provider.
Install via ClawdBot CLI:
clawdbot install jorgermp/email-manager-liteA fully self-contained email management skill for OpenClaw. Uses standard IMAP and SMTP protocols with zero external dependencies.
--from)--subject)--since, --before)--seen, --unseen)--body, warning: can be slow)folders commandmove commandread and search resultscd skills/portable-email-manager
npm install
Dependencies are bundled in package.json:
nodemailer - SMTP email sendingimap-simple - IMAP operationsmailparser - Email parsing and attachment detectionSet these environment variables:
export EMAIL_USER="your.email@domain.com"
export EMAIL_PASS="your-app-password"
Recommended: Use App Passwords for Gmail, Outlook, Zoho instead of main password.
Zoho Mail (default):
smtp.zoho.eu and imap.zoho.euGmail:
scripts/email.js and change:
host: 'smtp.gmail.com' // SMTP
host: 'imap.gmail.com' // IMAP
Outlook/Hotmail:
smtp.office365.com / outlook.office365.com./scripts/email.js send "recipient@example.com" "Subject" "Email body text"
Example:
./scripts/email.js send "boss@company.com" "Weekly Report" "Attached is this week's summary."
./scripts/email.js read [limit]
Examples:
# Read last 5 emails (default)
./scripts/email.js read
# Read last 20 emails
./scripts/email.js read 20
Output includes:
./scripts/email.js search [options]
Search Options:
| Option | Description | Example |
|--------|-------------|---------|
| --from | Filter by sender | --from "boss@company.com" |
| --subject | Filter by subject keywords | --subject "invoice" |
| --since | Emails after date | --since "Jan 1, 2026" |
| --before | Emails before date | --before "Feb 1, 2026" |
| --unseen | Only unread emails | --unseen |
| --seen | Only read emails | --seen |
| --body | Search in body (slow!) | --body "meeting" |
| --limit | Max results | --limit 10 |
Examples:
# Find unread emails from specific sender
./scripts/email.js search --from "client@example.com" --unseen
# Search by subject
./scripts/email.js search --subject "invoice" --limit 5
# Date range search
./scripts/email.js search --since "Jan 15, 2026" --before "Feb 1, 2026"
# Search in body (use sparingly - can be slow)
./scripts/email.js search --body "quarterly review"
# Combine multiple filters
./scripts/email.js search --from "boss@company.com" --subject "urgent" --unseen --limit 3
./scripts/email.js folders
Shows hierarchical tree of all IMAP folders with attributes.
Example output:
š INBOX
š Sent
š Archive
š Drafts
š Spam
š Trash
./scripts/email.js move <uid> <folder-name>
Important:
uid from read or search outputExamples:
# First, find the email and note its UID
./scripts/email.js search --from "newsletter@example.com"
# Output shows: UID: 12345
# Move to Archive folder
./scripts/email.js move 12345 "Archive"
# Move to custom folder
./scripts/email.js move 67890 "Projects/Work"
Error handling:
./scripts/email.js help
Shows complete usage guide with all commands and examples.
# Check unread emails
./scripts/email.js search --unseen --limit 10
# Move newsletters to folder
./scripts/email.js search --from "newsletter@site.com" --limit 1
./scripts/email.js move <uid> "Newsletters"
# Search by sender and subject
./scripts/email.js search --from "client@example.com" --subject "proposal"
# Search by date
./scripts/email.js search --since "Jan 20, 2026" --subject "meeting notes"
# Find old read emails
./scripts/email.js search --before "Dec 1, 2025" --seen --limit 50
# Move each to Archive (use UID from output)
./scripts/email.js move <uid> "Archive"
# Read recent emails and see attachment info
./scripts/email.js read 10
# Search output automatically shows:
# - Number of attachments
# - Filename, type, and size for each
Default configuration is optimized for Zoho Mail EU.
To use another provider, edit scripts/email.js:
// SMTP Configuration
const smtpConfig = {
host: 'smtp.your-provider.com',
port: 465, // or 587 for TLS
secure: true, // true for SSL (465), false for TLS (587)
auth: {
user: EMAIL_USER,
pass: EMAIL_PASS
}
};
// IMAP Configuration
const imapConfig = {
imap: {
user: EMAIL_USER,
password: EMAIL_PASS,
host: 'imap.your-provider.com',
port: 993,
tls: true,
authTimeout: 20000
}
};
--body) can be slow on large mailboxes - use sparingly--limit for faster responses"Authentication failed"
"Folder not found"
folders command to see exact folder names"Connection timeout"
authTimeout in config"No emails found"
Tested with:
ISC - Use freely in your OpenClaw setup.
Generated Mar 1, 2026
A small business owner uses the skill to filter and organize daily emails efficiently. They search for unread messages from clients, move newsletters to a dedicated folder, and quickly find invoices by subject, saving time on manual sorting.
A freelancer leverages the skill to track project-related emails by searching for specific senders and dates. They archive old correspondence and ensure attachments like contracts are easily accessible, streamlining client follow-ups.
An IT support team uses the skill to search for urgent emails from internal users by subject keywords and unread status. They move resolved tickets to an archive folder, maintaining an organized inbox for faster response times.
A marketing professional employs the skill to analyze email campaign responses by searching for specific senders and date ranges. They check attachment details for reports and move successful campaign data to a dedicated folder for review.
An individual uses the skill to declutter their personal inbox by moving old emails to archive folders based on date filters. They search for specific messages like travel confirmations and manage subscriptions efficiently.
Offer a basic version of this skill for free to attract users, then charge for premium features like advanced analytics, bulk email management, or integration with CRM systems. Revenue comes from subscription fees and upselling to enterprise clients.
License the skill as a white-label email management tool for companies to rebrand and use internally. Provide customization options and support services, generating revenue through one-time licensing fees and ongoing maintenance contracts.
Offer consulting services to help businesses integrate and optimize this skill for their specific workflows, such as automating email sorting or enhancing security. Revenue is generated from hourly rates or project-based fees for custom modifications.
š¬ Integration Tip
Ensure environment variables for email credentials are securely set up before use, and test with a small email batch to verify provider compatibility and avoid connection issues.
CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
Read and send email via IMAP/SMTP. Check for new/unread messages, fetch content, search mailboxes, mark as read/unread, and send emails with attachments. Works with any IMAP/SMTP server including Gmail, Outlook, 163.com, vip.163.com, 126.com, vip.126.com, 188.com, and vip.188.com.
Gmail API integration with managed OAuth. Read, send, and manage emails, threads, labels, and drafts. Use this skill when users want to interact with Gmail. For other third party apps, use the api-gateway skill (https://clawhub.ai/byungkyu/api-gateway).
Automatically logs into email accounts (Gmail, Outlook, QQ Mail, etc.) and generates daily email summaries. Use when the user wants to get a summary of their emails, check important messages, or create daily email digests.
Fetch content from Feishu (Lark) Wiki, Docs, Sheets, and Bitable. Automatically resolves Wiki URLs to real entities and converts content to Markdown.
Manage Feishu (Lark) calendars by listing, searching, checking schedules, syncing events, and marking tasks with automated date extraction.