Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
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. Wor...
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. Wor...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Read, search, and manage email via IMAP protocol. Send email via SMTP. Supports Gmail, Outlook, 163.com, vip.163.com, 126.com, vip.126.com, 188.com, vip.188.com, and any standard IMAP/SMTP server.
Create .env in the skill folder or set environment variables: # IMAP Configuration (receiving email) IMAP_HOST=imap.gmail.com # Server hostname IMAP_PORT=993 # Server port IMAP_USER=your@email.com IMAP_PASS=your_password IMAP_TLS=true # Use TLS/SSL connection IMAP_REJECT_UNAUTHORIZED=true # Set to false for self-signed certs IMAP_MAILBOX=INBOX # Default mailbox # SMTP Configuration (sending email) SMTP_HOST=smtp.gmail.com # SMTP server hostname SMTP_PORT=587 # SMTP port (587 for STARTTLS, 465 for SSL) SMTP_SECURE=false # true for SSL (465), false for STARTTLS (587) SMTP_USER=your@gmail.com # Your email address SMTP_PASS=your_password # Your password or app password SMTP_FROM=your@gmail.com # Default sender email (optional) SMTP_REJECT_UNAUTHORIZED=true # Set to false for self-signed certs
ProviderIMAP HostIMAP PortSMTP HostSMTP Port163.comimap.163.com993smtp.163.com465vip.163.comimap.vip.163.com993smtp.vip.163.com465126.comimap.126.com993smtp.126.com465vip.126.comimap.vip.126.com993smtp.vip.126.com465188.comimap.188.com993smtp.188.com465vip.188.comimap.vip.188.com993smtp.vip.188.com465yeah.netimap.yeah.net993smtp.yeah.net465Gmailimap.gmail.com993smtp.gmail.com587Outlookoutlook.office365.com993smtp.office365.com587QQ Mailimap.qq.com993smtp.qq.com587 Important for 163.com: Use authorization code (ๆๆ็ ), not account password Enable IMAP/SMTP in web settings first
Check for new/unread emails. node scripts/imap.js check [--limit 10] [--mailbox INBOX] [--recent 2h] Options: --limit <n>: Max results (default: 10) --mailbox <name>: Mailbox to check (default: INBOX) --recent <time>: Only show emails from last X time (e.g., 30m, 2h, 7d)
Fetch full email content by UID. node scripts/imap.js fetch <uid> [--mailbox INBOX]
Download all attachments from an email, or a specific attachment. node scripts/imap.js download <uid> [--mailbox INBOX] [--dir <path>] [--file <filename>] Options: --mailbox <name>: Mailbox (default: INBOX) --dir <path>: Output directory (default: current directory) --file <filename>: Download only the specified attachment (default: download all)
Search emails with filters. node scripts/imap.js search [options] Options: --unseen Only unread messages --seen Only read messages --from <email> From address contains --subject <text> Subject contains --recent <time> From last X time (e.g., 30m, 2h, 7d) --since <date> After date (YYYY-MM-DD) --before <date> Before date (YYYY-MM-DD) --limit <n> Max results (default: 20) --mailbox <name> Mailbox to search (default: INBOX)
Mark message(s) as read or unread. node scripts/imap.js mark-read <uid> [uid2 uid3...] node scripts/imap.js mark-unread <uid> [uid2 uid3...]
Move message(s) to another mailbox/folder. Useful for archiving emails. node scripts/imap.js move <target-mailbox> <uid> [uid2 uid3...] [--mailbox <source>] Examples: # Archive to Gmail "All Mail" (ๅฝๆกฃๅฐๆๆ้ฎไปถ) node scripts/imap.js move "[Gmail]/ๆๆ้ฎไปถ" 123 456 # Move to a custom folder node scripts/imap.js move "Work" 123 # Move from a specific mailbox node scripts/imap.js move "Archive" 123 --mailbox INBOX
List all available mailboxes/folders. node scripts/imap.js list-mailboxes
Send email via SMTP. node scripts/smtp.js send --to <email> --subject <text> [options] Required: --to <email>: Recipient (comma-separated for multiple) --subject <text>: Email subject, or --subject-file <file> Optional: --body <text>: Plain text body --html: Send body as HTML --body-file <file>: Read body from file --html-file <file>: Read HTML from file --cc <email>: CC recipients --bcc <email>: BCC recipients --attach <file>: Attachments (comma-separated) --from <email>: Override default sender Examples: # Simple text email node scripts/smtp.js send --to recipient@example.com --subject "Hello" --body "World" # HTML email node scripts/smtp.js send --to recipient@example.com --subject "Newsletter" --html --body "<h1>Welcome</h1>" # Email with attachment node scripts/smtp.js send --to recipient@example.com --subject "Report" --body "Please find attached" --attach report.pdf # Multiple recipients node scripts/smtp.js send --to "a@example.com,b@example.com" --cc "c@example.com" --subject "Update" --body "Team update"
Test SMTP connection by sending a test email to yourself. node scripts/smtp.js test
npm install
Store credentials in .env (add to .gitignore) For Gmail: use App Password if 2FA is enabled For 163.com: use authorization code (ๆๆ็ ), not account password
Connection timeout: Verify server is running and accessible Check host/port configuration Authentication failed: Verify username (usually full email address) Check password is correct For 163.com: use authorization code, not account password For Gmail: use App Password if 2FA enabled TLS/SSL errors: Match IMAP_TLS/SMTP_SECURE setting to server requirements For self-signed certs: set IMAP_REJECT_UNAUTHORIZED=false or SMTP_REJECT_UNAUTHORIZED=false
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.