moemail

GitHub

提供临时邮箱服务,支持创建收件箱、等待并读取邮件内容。适用于接收验证码、测试邮件集成或需要一次性邮箱的场景,通过CLI实现程序化操作。

packages/cli/skill/SKILL.md beilunyang/moemail

Trigger Scenarios

需要临时邮箱地址 接收验证邮件 测试邮件发送功能

Install

npx skills add beilunyang/moemail --skill moemail -g -y
More Options

Non-standard path

npx skills add https://github.com/beilunyang/moemail/tree/master/packages/cli/skill -g -y

Use without installing

npx skills use beilunyang/moemail@moemail

指定 Agent (Claude Code)

npx skills add beilunyang/moemail --skill moemail -a claude-code -g -y

安装 repo 全部 skill

npx skills add beilunyang/moemail --all -g -y

预览 repo 内 skill

npx skills add beilunyang/moemail --list

SKILL.md

Frontmatter
{
    "name": "moemail",
    "description": "Use when an AI agent needs a temporary\/disposable email address — for receiving verification emails, testing email integrations, or any task requiring a temporary inbox via the moemail CLI"
}

MoeMail — Temporary Email for AI Agents

Overview

MoeMail provides disposable email addresses with an agent-first CLI (moemail). Create inboxes, wait for messages, read content, and send emails programmatically.

Install

Install the MoeMail CLI globally when it is not already available:

npm i -g @moemail/cli

Then confirm the binary is available:

moemail --help

Setup

Configure once per environment:

moemail config set api-url https://moemail.app
moemail config set api-key YOUR_API_KEY

Or via environment variables: MOEMAIL_API_URL, MOEMAIL_API_KEY.

Core Workflow: Receive an Email

# 1. Create inbox — capture ONCE, parse both fields
RESULT=$(moemail --json create --expiry 1h)
ID=$(echo "$RESULT" | jq -r '.id')
EMAIL=$(echo "$RESULT" | jq -r '.address')

# 2. Use $EMAIL wherever needed (registration, forms, etc.)

# 3. Wait for message (exits when message arrives or times out)
MSG=$(moemail --json wait --email-id "$ID" --timeout 120)
MSG_ID=$(echo "$MSG" | jq -r '.messageId')

# 4. Read full message content
moemail --json read --email-id "$ID" --message-id "$MSG_ID"

Command Reference

Command Required Options Notable Options
config set <key> <value> keys: api-url, api-key
create --name, --domain, --expiry (1h|24h|3d|permanent)
list --email-id (lists messages in mailbox), --cursor
wait --email-id --timeout (default 120s), --interval (default 5s)
read --email-id, --message-id --format (text|html)
send --email-id, --to, --subject, --content
delete --email-id

--json is a global flag — it works before or after the subcommand:

moemail --json create --expiry 24h   # both work
moemail create --expiry 24h --json

JSON Output Shapes

create: { "id": "...", "address": "user@domain.com", "expiresAt": "2025-..." }

wait: { "messageId": "...", "from": "...", "subject": "...", "receivedAt": "2025-..." }

read: { "id": "...", "from": "...", "to": "...", "subject": "...", "content": "plain text", "html": "...", "receivedAt": "..." }

send: { "success": true, "remainingEmails": 10 }

Common Mistakes

Mistake Fix
Calling create twice to get id + address Call once, save to variable, parse both fields
Timeout too short for slow services Use --timeout 300 for unreliable senders
Inbox expired mid-test Use --expiry permanent for long-running workflows
Using content field for HTML emails Check both content (plain text) and html fields

Version History

  • 2c97914 Current 2026-07-24 16:27

Same Skill Collection

.claude/skills/moemail/SKILL.md

Metadata

Files
0
Version
6c19aef
Hash
f49ecee4
Indexed
2026-07-24 16:27

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-18 04:18
浙ICP备14020137号-1 $mapa de visitantes$