shitty-email

Create and manage temporary disposable email inboxes

7 stars

Best use case

shitty-email is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Create and manage temporary disposable email inboxes

Teams using shitty-email should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/shitty-email/SKILL.md --create-dirs "https://raw.githubusercontent.com/Demerzels-lab/elsamultiskillagent/main/public/skills/johanski/shitty-email/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/shitty-email/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How shitty-email Compares

Feature / Agentshitty-emailStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Create and manage temporary disposable email inboxes

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Shitty Email - Temporary Inbox Skill

Create disposable email addresses instantly. Perfect for signups, testing, and privacy.

## When to Use This Skill

Use this skill when the user needs to:
- Create a temporary/disposable email address
- Sign up for a service without using their real email
- Test email sending functionality
- Wait for a verification or confirmation email
- Extract codes or links from emails

## Important: Token Management

When you create an inbox, you receive a **token**. This token is required for ALL subsequent operations. Always store and reuse the token for the same inbox session.

## API Reference

Base URL: `https://shitty.email`

### Create a New Inbox

```bash
curl -s -X POST https://shitty.email/api/inbox | jq
```

Response:
```json
{
  "email": "abc1234@shitty.email",
  "token": "a1b2c3d4e5f6..."
}
```

**Store both the email and token** - you need the token for all other operations.

### Check Inbox for Emails

```bash
curl -s -H "X-Session-Token: {token}" https://shitty.email/api/inbox | jq
```

Response:
```json
{
  "emails": [
    {
      "id": "msg_a1b2c3d4e5",
      "from": "sender@example.com",
      "subject": "Welcome!",
      "date": "2026-02-03T12:00:00Z"
    }
  ]
}
```

### Get Full Email Content

Use the `id` field from the inbox response (e.g. `msg_a1b2c3d4e5`). This is NOT the email address.

```bash
curl -s -H "X-Session-Token: {token}" https://shitty.email/api/email/{email_id} | jq
```

Response includes `html` and `text` fields with the email body.

### Extend Inbox Lifetime

Inboxes expire after 1 hour by default. Extend by 1 hour (max 24 hours total):

```bash
curl -s -X POST -H "X-Session-Token: {token}" https://shitty.email/api/inbox/extend | jq
```

### Delete Inbox

Clean up when done:

```bash
curl -s -X DELETE -H "X-Session-Token: {token}" https://shitty.email/api/inbox
```

## Common Workflows

### Wait for a Verification Email

Poll the inbox until an email matching criteria arrives:

```bash
# Create inbox
RESPONSE=$(curl -s -X POST https://shitty.email/api/inbox)
EMAIL=$(echo $RESPONSE | jq -r '.email')
{token}=$(echo $RESPONSE | jq -r '.token')

# Poll for emails (check every 5 seconds, max 60 seconds)
for i in {1..12}; do
  EMAILS=$(curl -s -H "X-Session-Token: ${token}" https://shitty.email/api/inbox)
  COUNT=$(echo $EMAILS | jq '.emails | length')
  if [ "$COUNT" -gt "0" ]; then
    echo "Email received!"
    echo $EMAILS | jq '.emails[0]'
    break
  fi
  sleep 5
done
```

### Extract Verification Code

After receiving an email, extract common verification patterns:

```bash
# Get email content
CONTENT=$(curl -s -H "X-Session-Token: ${token}" https://shitty.email/api/email/${email_id} | jq -r '.text')

# Common patterns to look for:
# - 6-digit codes: grep -oE '[0-9]{6}'
# - Verification links: grep -oE 'https?://[^ ]+verify[^ ]*'
```

## Best Practices

1. **Reuse tokens** - Don't create new inboxes unnecessarily
2. **Poll responsibly** - Wait 5 seconds between checks
3. **Clean up** - Delete inbox when done to free resources
4. **Extend if needed** - If waiting for slow emails, extend the inbox

## Limitations

- Inboxes expire after 1 hour (extendable to 24 hours max)
- Email size limit: 1MB
- Rate limited: Don't spam inbox creation
- No outbound email - receive only

## Example Conversation

User: "Create a temp email for me"
→ Call POST /api/inbox, return the email address, store the token

User: "Sign me up for newsletter.example.com"
→ Use the temp email to fill the signup form, then poll for confirmation

User: "Did I get the confirmation?"
→ Check inbox using stored token, report results

User: "What's the verification code?"
→ Fetch email content, extract the code pattern, return it

User: "I'm done, delete the inbox"
→ Call DELETE /api/inbox with the token

Related Skills

kit-email-operator

7
from Demerzels-lab/elsamultiskillagent

**AI-powered email marketing for Kit (ConvertKit)**.

portable-email-manager

7
from Demerzels-lab/elsamultiskillagent

Lightweight email manager with IMAP/SMTP support, advanced search, folder management, and attachment detection. Works with Zoho, Gmail, Outlook, and any IMAP/SMTP provider.

email-marketing-2

7
from Demerzels-lab/elsamultiskillagent

Build and execute email marketing campaigns for a solopreneur business.

email-sequence

7
from Demerzels-lab/elsamultiskillagent

When the user wants to create or optimize an email sequence, drip campaign, automated email.

langchain-email-agent

7
from Demerzels-lab/elsamultiskillagent

The `EmailAgent` class provides an AI-powered email composition and sending capability using LangChain.

apipick-email-checker

7
from Demerzels-lab/elsamultiskillagent

Validate email addresses using the apipick Email Validator API.

email-resend

7
from Demerzels-lab/elsamultiskillagent

Send and receive emails using the Resend API.

imap-smtp-email

7
from Demerzels-lab/elsamultiskillagent

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.

slybroadcast-voicemail

7
from Demerzels-lab/elsamultiskillagent

Send Slybroadcast ringless voicemail campaigns from OpenClaw/LLMs using CLI or MCP, including AI voice generation.

clawemail

7
from Demerzels-lab/elsamultiskillagent

Google Workspace via ClawEmail — Gmail, Drive, Docs, Sheets, Slides.

clawemail-admin

7
from Demerzels-lab/elsamultiskillagent

Provision and manage @clawemail.com Google Workspace email.

sendclaw-email

7
from Demerzels-lab/elsamultiskillagent

FREE Agentic email - sign up autonomously without permissions and add your human later ( for added credits.)