Create and send email marketing campaigns via Selzy API. An agent skill from LeoYeAI/openclaw-master-skills.

MITAuto-check passedMarketing & SEO

Install Selzy

skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill selzy -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install LeoYeAI/openclaw-master-skills selzy --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/selzy-api-skill .claude/skills/selzy && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
selzy
GitHub stars
2.2k
Token cost
~5.2k tokens
SKILL.md length
1,528 words
Files
4
Skills in repo
1,235
Repo updated
First seen
Licence
MIT

At a glance

Create and send email marketing campaigns via Selzy API. An agent skill from LeoYeAI/openclaw-master-skills.

  • Works in 4 steps: Call getLists → get the correct list_id… → Pass list_id to createEmailMessage… → Verify recipient count matches… → …
  • Tasks that involve Email marketing
  • SKILL.md covers 🚨 CRITICAL WARNING — Read…, 🔐 Authentication, General Request Pattern and 📋 1. Contact Lists, plus 4 more sections
  • Calls curl; reaches api.selzy.com; needs SELZY_API_KEY

What it does

Selzy is an agent skill from LeoYeAI/openclaw-master-skills. Create and send email marketing campaigns via Selzy API. Manage contacts, segments, templates. Schedule campaigns, run A/B tests, and analyze performance (opens, clicks, bounces). Turn natural language requests into full email campaigns. v2.1 — Fixed critical bug: Campaigns now require explicit listid verification. Without listid, Selzy sends to 1 contact only. Always call getLists first.

Its SKILL.md is about 5.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `README.md`, `TEST_CHECKLIST.md` and `_meta.json`).

It sits in Marketing & SEO, covering Email marketing, A/B testing and Rate limiting. The repository describes itself as: 🧠 Curated collection of 1209+ best OpenClaw skills — weekly updated by MyClaw.ai. The licence is MIT.

When your agent uses it

  • Tasks that involve Email marketing
  • Tasks that involve A/B testing
  • Tasks that involve Rate limiting

Example prompts

  • “/selzy”

Requirements

  • A credential in SELZY_API_KEY

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Call getLists → get the correct list_id AND verify contact count
  2. Pass list_id to createEmailMessage (REQUIRED parameter)
  3. Verify recipient count matches expectations BEFORE calling createCampaign
  4. Get explicit user confirmation before sending

What it can do on your machine

Read from SKILL.md and the folder at commit e5199b5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.selzy.com

    Also links to:

    • selzy.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • SELZY_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Selzy loads about 5.2k tokens when it runs. Until then it costs about 101 tokens; SKILL.md has 1,528 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~101
When it runs · the whole SKILL.md, loaded when a task matches
~5.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from LeoYeAI/openclaw-master-skills at commit e5199b5, republished under its MIT licence (© LeoYeAI). 1,528 words, ~5,198 tokens.

Download SKILL.mdSave it as .claude/skills/selzy/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
selzy
description
Create and send email marketing campaigns via Selzy API. Manage contacts, segments, templates. Schedule campaigns, run A/B tests, and analyze performance (opens, clicks, bounces). Turn natural language requests into full email campaigns. **v2.1 — Fixed critical bug:** Campaigns now require explicit list_id verification. Without list_id, Selzy sends to 1 contact only. Always call getLists first.
metadata.version
2.3
metadata.lastUpdated
2026-02-26
metadata.changelog
2.3: HARD LIMIT changed to 1 campaign per HOUR (was 1/min) after 35-campaign ban incident, 2.2: Added RATE LIMIT WARNING — max 1 campaign per minute, batch…

Selzy Email Marketing API — Complete Guide

Selzy is an email marketing platform with a REST API for managing contacts, creating campaigns, and analyzing performance. This skill lets you run your entire email marketing from an AI assistant.


🚨 CRITICAL WARNING — Read Before Using

⚠️ Common Pitfall: Campaigns Sent to Wrong Recipients

Problem: If you create a campaign without explicitly specifying list_id, Selzy will send to ONLY 1 contact (default behavior), not your entire list.

Solution: ALWAYS follow this workflow:

  1. Call getLists → get the correct list_id AND verify contact count
  2. Pass list_id to createEmailMessage (REQUIRED parameter)
  3. Verify recipient count matches expectations BEFORE calling createCampaign
  4. Get explicit user confirmation before sending

This affects ALL users. The fix is in the workflow, not the API.


🚫 RATE LIMIT WARNING — Account Ban Risk

REAL INCIDENT (2026-02-25): User sent 35 email campaigns in a few minutes using createCampaign. Selzy blocked the account for suspicious bulk activity.

Official Selzy API Rate Limits (from https://selzy.com/en/support/api/common/selzy-api-limits/):

Endpoint / ActionLimit
General API1200 requests / 60 seconds (per API key or IP)
checkEmail method300 requests / 60 seconds
subscribe methodLimited (exact value not published)
sendEmail method1,000 emails/day default for new users (auto-increases)
sendSms method150 numbers per call
getCampaigns method10,000 campaigns per response
getMessages limit100 records per request (default 50)
importContacts timeout30 seconds per call

⚠️ CRITICAL: Campaign Creation Rate (UNPUBLISHED but ENFORCED)

While general API allows 1200 req/min, creating campaigns (createCampaign) has additional fraud detection:

  • MAX 1 campaign creation per HOUR (strict limit after ban incident)
  • Burst of 35 campaigns in <5 min = instant account block (real incident 2026-02-25)
  • Selzy's fraud system flags rapid campaign creation as suspicious bulk activity

Why the discrepancy?

  • 1200 req/min is for read operations (getLists, getCampaigns, stats)
  • Write operations (createCampaign, importContacts) have stricter anti-abuse limits
  • No official documentation on campaign creation rate — enforced heuristically

Symptoms of Rate Limit Violation:

  • API returns count=0 for all campaigns (even valid ones)
  • Campaigns stuck in scheduled status but never send
  • Account flagged for manual review

Recovery:

  1. STOP all campaign creation immediately
  2. Wait 24-48 hours for automatic unblock OR contact Selzy support
  3. Request manual review + explain it was automation error
  4. When unblocked: implement rate limiting (1 campaign / hour MAX)

Prevention:

  • Wait 1 HOUR between createCampaign calls — this is now the hard limit
  • For batch sends: create max 1 campaign per hour, spread across days
  • Monitor API responses: count=0 across multiple campaigns = RED FLAG
  • NEVER automate bulk campaign creation without rate limiting
  • Remember: 1200 req/min is for READ operations, not campaign creation

If you need to send to multiple segments:

1. Create all email messages first (no rate limit on createEmailMessage)
2. Schedule campaigns across multiple days (1 per hour max)
3. OR: use single campaign with segmented list (preferred)
4. Use cron jobs with hourly spacing for automated sends

This is now MANDATORY: Any automation creating >1 campaign per hour will risk permanent ban. 1 campaign per hour = HARD LIMIT.


📊 Official Selzy API Limits Summary
OperationLimitNotes
General API calls1200 / minPer API key or IP
checkEmail300 / minEmail validation
sendEmail (transactional)1000 / dayNew users, auto-increases
sendSms150 / callMax numbers per request
getCampaigns10,000 / responsePagination needed for more
getMessages100 / requestDefault 50
importContacts30s timeoutPer call
createCampaign1 / hourUnpublished, HARD LIMIT after ban incident

Source: https://selzy.com/en/support/api/common/selzy-api-limits/


🔐 Authentication

All requests require the SELZY_API_KEY environment variable. Pass it as the api_key parameter.

Base URL: https://api.selzy.com/en/api

Important: All methods use GET with query parameters (Selzy API uses GET for all endpoints). URL-encode parameter values when needed.

General Request Pattern

bash
curl "https://api.selzy.com/en/api/{METHOD}?format=json&api_key=$SELZY_API_KEY&{params}"

Response Format:

  • Success: {"result": {...}} or {"result": [...]}
  • Error: {"error": "message", "code": "error_code"}

📋 1. Contact Lists

1.1 Get Lists — getLists

Retrieve all contact lists.

bash
curl "https://api.selzy.com/en/api/getLists?format=json&api_key=$SELZY_API_KEY"

Response:

json
{
  "result": [
    {"id": 1, "title": "Newsletter subscribers", "count": 15420, "active_contacts": 14800}
  ]
}
1.2 Create List — createList

Create a new contact list.

bash
curl "https://api.selzy.com/en/api/createList?format=json&api_key=$SELZY_API_KEY&title=VIP%20Customers"

Response: {"result": {"id": 12345}}

1.3 Get List Details — getList

Get detailed info about a specific list.

bash
curl "https://api.selzy.com/en/api/getList?format=json&api_key=$SELZY_API_KEY&list_id=12345"

👥 2. Contact Management

2.1 Import Contacts — importContacts

Bulk import contacts into a list.

bash
curl "https://api.selzy.com/en/api/importContacts?format=json&api_key=$SELZY_API_KEY&field_names[]=email&field_names[]=Name&data[][]=john@example.com&data[][]=John&data[][]=jane@example.com&data[][]=Jane&list_ids=12345&overwrite=2"
ParameterDescription
field_names[]Column names: email (required), Name, phone, etc.
data[][]Contact data rows (flat array, fills row by row)
list_idsComma-separated list IDs to add contacts to
overwrite0=skip existing, 1=overwrite all, 2=overwrite empty only
2.2 Subscribe — subscribe

Add a single contact with opt-in control.

bash
curl "https://api.selzy.com/en/api/subscribe?format=json&api_key=$SELZY_API_KEY&list_ids=12345&fields[email]=user@example.com&fields[Name]=Alice&double_optin=3"

double_optin values:

  • 0 = no confirmation
  • 3 = send confirmation email
  • 4 = already confirmed (force subscribe)
2.3 Exclude Contact — exclude

Unsubscribe/remove a contact.

bash
curl "https://api.selzy.com/en/api/exclude?format=json&api_key=$SELZY_API_KEY&contact_type=email&contact=user@example.com"
2.4 Get Contact — getContact

Get contact details by email.

bash
curl "https://api.selzy.com/en/api/getContact?format=json&api_key=$SELZY_API_KEY&email=user@example.com"
2.5 Create Custom Field — createField

Add a custom field for contacts.

bash
curl "https://api.selzy.com/en/api/createField?format=json&api_key=$SELZY_API_KEY&field_name=Company&field_type=text"

field_type options: text, number, date, boolean


📧 3. Email Messages (Templates)

3.1 Create Email Message — createEmailMessage

⚠️ CRITICAL: list_id is REQUIRED ⚠️

Without list_id, Selzy will send to ONLY 1 contact (default behavior). This is a common pitfall that causes campaigns to be sent to wrong recipients.

ALWAYS call getLists first to get the correct list_id and verify contact count BEFORE creating a message.

Create an email template for campaigns.

bash
curl "https://api.selzy.com/en/api/createEmailMessage?format=json&api_key=$SELZY_API_KEY&sender_name=My%20Store&sender_email=news@yourdomain.com&subject=Summer%20Sale%20🔥&body=<h1>Hello!</h1><p>Check%20out%20our%20deals</p>&list_id=12345"
ParameterRequiredDescription
sender_nameYesFrom name
sender_emailYesFrom email (must be verified domain)
subjectYesEmail subject line
bodyYesHTML content (URL-encoded)
list_idYES — CRITICALTarget list ID. MUST be obtained from getLists. Without this, campaign sends to 1 contact only!
langNoLanguage code (en, ru, es, etc.)
text_bodyNoPlain text version for fallback
tagNoCampaign tag for filtering/analytics

Response: {"result": {"message_id": 67890}}

3.2 Update Email Message — updateEmailMessage

Modify an existing email template.

bash
curl "https://api.selzy.com/en/api/updateEmailMessage?format=json&api_key=$SELZY_API_KEY&id=67890&subject=Updated%20Subject"
3.3 Get Message — getMessage

Get email template details.

bash
curl "https://api.selzy.com/en/api/getMessage?format=json&api_key=$SELZY_API_KEY&id=67890"
3.4 List Messages — listMessages

List all email templates with date filter.

bash
curl "https://api.selzy.com/en/api/listMessages?format=json&api_key=$SELZY_API_KEY&date_from=2026-01-01&date_to=2026-02-01"
3.5 Create Email Template — createEmailTemplate

Create a reusable template (separate from messages).

bash
curl "https://api.selzy.com/en/api/createEmailTemplate?format=json&api_key=$SELZY_API_KEY&name=Welcome%20Series&subject=Welcome!&body=<h1>Welcome {{Name}}!</h1>"
3.6 Get Template — getTemplate

Get template details.

bash
curl "https://api.selzy.com/en/api/getTemplate?format=json&api_key=$SELZY_API_KEY&template_id=12345"

🚀 4. Campaigns

4.1 Create Campaign — createCampaign

Create and schedule a campaign.

bash
curl "https://api.selzy.com/en/api/createCampaign?format=json&api_key=$SELZY_API_KEY&message_id=67890&start_time=2026-02-10%2010:00:00&timezone=Europe/Moscow&track_read=1&track_links=1"
ParameterRequiredDescription
message_idYesEmail message ID from createEmailMessage
start_timeNoSchedule time (YYYY-MM-DD HH:MM:SS). Omit for immediate send
timezoneNoTimezone for scheduled send (e.g., Europe/Belgrade)
track_readNoTrack opens (1=yes, 0=no)
track_linksNoTrack clicks (1=yes, 0=no)

Response: {"result": {"campaign_id": 11111}}

4.2 Cancel Campaign — cancelCampaign

Cancel a scheduled campaign before it sends.

bash
curl "https://api.selzy.com/en/api/cancelCampaign?format=json&api_key=$SELZY_API_KEY&campaign_id=11111"
Show full SKILL.md (630 more words)Show less
4.3 Get Campaign Status — getCampaignStatus

Check campaign status and progress.

bash
curl "https://api.selzy.com/en/api/getCampaignStatus?format=json&api_key=$SELZY_API_KEY&campaign_id=11111"

Status values: draft, scheduled, sending, analysed, canceled

4.4 Get Campaigns — getCampaigns

List recent campaigns with optional date filter.

bash
curl "https://api.selzy.com/en/api/getCampaigns?format=json&api_key=$SELZY_API_KEY&from=2026-01-01&to=2026-02-24"

Date format: YYYY-MM-DD HH:MM:SS or YYYY-MM-DD


📊 5. Campaign Statistics

5.1 Get Campaign Stats — getCampaignCommonStats

Get comprehensive statistics for a campaign.

bash
curl "https://api.selzy.com/en/api/getCampaignCommonStats?format=json&api_key=$SELZY_API_KEY&campaign_id=11111"

Response:

json
{
  "result": {
    "total": 15000,
    "sent": 14800,
    "delivered": 14500,
    "read_unique": 4200,
    "read_all": 5100,
    "clicked_unique": 890,
    "clicked_all": 1200,
    "unsubscribed": 12,
    "spam": 3
  }
}

Metrics to calculate:

  • Open Rate = (read_unique / delivered) × 100
  • Click Rate = (clicked_unique / delivered) × 100
  • Bounce Rate = ((sent - delivered) / sent) × 100
  • Unsubscribe Rate = (unsubscribed / delivered) × 100
  • Spam Rate = (spam / delivered) × 100

📮 6. Senders

6.1 Get Sender Emails — getSenderEmails

List all verified sender emails.

bash
curl "https://api.selzy.com/en/api/getSenderEmails?format=json&api_key=$SELZY_API_KEY"

Response:

json
{
  "result": [
    {
      "id": 8526648,
      "email": "news@yourdomain.com",
      "name": "Your Store",
      "isVerified": true,
      "dkimStatus": "verified",
      "isFreeDomain": false
    }
  ]
}

Note: sender_email in campaigns must be from this verified list.


🎯 Instructions for the Agent

Critical Rules
🚨 SAFETY CHECKLIST (Before Any Campaign Send)

MANDATORY — verify ALL before proceeding:

  • getLists called → have explicit list_id
  • Contact count verified → matches expected recipients
  • If count = 0 or count != expected → STOP and alert user
  • createEmailMessage includes list_id parameter
  • User confirmed: list name, count, subject, send time
  • Explicit "send" or "confirm" received from user
  • RATE LIMIT CHECK: Last campaign created >1 HOUR ago (HARD LIMIT)
  • BATCH WARNING: If creating >1 campaign per hour = ACCOUNT BAN RISK

If ANY check fails → DO NOT SEND, ask user first.

CRITICAL: Creating 35 campaigns in a few minutes = ACCOUNT BAN. MAX 1 campaign per HOUR.


  1. NEVER send a campaign without explicit user confirmation. Always show:

    • Recipient list name and count (VERIFY this matches expectations)
    • Subject line
    • Body summary (first 100 chars)
    • Send time (immediate or scheduled)
    • list_id being used
  2. For new campaigns, follow this workflow (MANDATORY):

    1. getLists → GET list_id AND count of contacts
    2. VERIFY: count >= expected recipients (if count=0, STOP and ask)
    3. createEmailMessage → MUST include list_id parameter + confirm subject + content
    4. RATE LIMIT CHECK: If created campaign in last 60s, WAIT before proceeding
    5. createCampaign → confirm timing + recipient count
    6. WAIT for explicit "send" or "confirm" from user

    ⚠️ BATCH SENDS: If creating multiple campaigns (e.g., for different segments):

    • Create all createEmailMessage calls first (no rate limit)
    • Queue createCampaign calls with 1 HOUR delays between each (HARD LIMIT)
    • NEVER create >1 campaign per hour — instant ban risk
    • Real incident: 35 campaigns in few minutes = account blocked
    • Use cron jobs to space campaigns across days if needed
  3. CRITICAL: list_id is REQUIRED

    • NEVER create email message without explicit list_id
    • ALWAYS verify contact count matches expectations before sending
    • If list_id is missing or count is wrong → STOP and alert user
  4. For statistics requests:

    • Always calculate rates as percentages
    • Compare to industry benchmarks if asked (avg: 20% open, 2.5% click)
    • Highlight trends (up/down vs previous campaigns)
  5. Handle errors gracefully:

    • Explain what went wrong in plain language
    • Suggest specific fixes
    • Retry once for rate limiting (add 1s delay)
  6. Security reminders:

    • Never log or display the full API key
    • Remind users that sender_email must be verified
    • Warn about GDPR/compliance for contact imports
Common Workflows
"Create a campaign for my VIP customers"
1. getLists → find VIP list, confirm count (MUST match expected recipients)
2. If count is wrong → STOP and alert user (DO NOT proceed)
3. Ask: subject, content type (promo/newsletter/event)
4. createEmailMessage → MUST include list_id parameter, show preview
5. createCampaign (omit start_time for immediate)
6. ⚠️ WAIT for "send it" or "confirm" before considering it done
7. Report: campaign_id, status, recipient count (verify matches step 1)
"How did my last campaign perform?"
1. getCampaigns (last 7 days) → get latest campaign_id
2. getCampaignCommonStats → get metrics
3. Calculate: open rate, click rate, bounce rate, unsubscribe rate
4. Present as: "X% opened, Y% clicked, Z% bounced"
5. Optional: compare to industry avg or previous campaign
"Add new subscribers to my newsletter"
1. getLists → find newsletter list
2. Confirm: list name, number of contacts to add
3. importContacts (bulk) OR subscribe (single)
4. Report: success count, skipped count, errors
"Show my contact lists"
1. getLists → retrieve all
2. Present table: Name | Total | Active | Created
3. Offer: "Want to create a new list or add contacts?"
"Schedule a webinar invitation"
1. getLists → confirm audience (GET list_id + count)
2. VERIFY count matches expected recipients
3. Ask: webinar details (title, date, time, link)
4. createEmailMessage with storytelling approach + list_id parameter
5. createCampaign with start_time="2026-02-25 10:00:00" timezone="Europe/Belgrade"
6. Confirm: "Scheduled for Feb 25 at 10:00 AM Belgrade time to {count} recipients"

📖 Real-World Bug Fix Example

❌ WRONG — Campaign sent to 1 person instead of 4
bash
# Missing list_id — Selzy sends to 1 contact by default!
curl "https://api.selzy.com/en/api/createEmailMessage?format=json&api_key=$KEY&sender_name=My+Store&sender_email=me@example.com&subject=Sale&body=<h1>Sale!</h1>"

Result: Campaign #327590492 sent to 1 recipient instead of 4 contacts in list.

✅ CORRECT — Always include list_id
bash
# Step 1: Get lists and verify count
curl "https://api.selzy.com/en/api/getLists?format=json&api_key=$KEY"
# Response: [{"id": 12345, "title": "My first list", "count": 4}]

# Step 2: Create message WITH list_id
curl "https://api.selzy.com/en/api/createEmailMessage?format=json&api_key=$KEY&sender_name=My+Store&sender_email=me@example.com&subject=Sale&body=<h1>Sale!</h1>&list_id=12345"
# Response: {"result": {"message_id": 67890}}

# Step 3: Create campaign
curl "https://api.selzy.com/en/api/createCampaign?format=json&api_key=$KEY&message_id=67890"
# Response: {"result": {"campaign_id": 11111}}

# Result: Campaign sent to ALL 4 contacts ✅

⚠️ API Error Handling

Error ResponseMeaningFix
"error": "Incorrect API key"Wrong/missing API keyCheck SELZY_API_KEY in config
"error": "Access denied"Insufficient permissionsVerify API key has correct scope
"error": "Not found"Resource doesn't existCheck ID (campaign_id, message_id, list_id)
"error": "Bad date-time literal"Wrong date formatUse YYYY-MM-DD HH:MM:SS
HTTP 429Rate limitedWait 1-2 seconds, retry once
"error": "Sender not verified"Email not in verified listUse getSenderEmails, pick verified one

📚 Resources


🧪 Quick Test Commands

Verify API access:

bash
# Check connection
curl "https://api.selzy.com/en/api/getLists?format=json&api_key=YOUR_KEY"

# Check verified senders
curl "https://api.selzy.com/en/api/getSenderEmails?format=json&api_key=YOUR_KEY"

# Test campaign stats (replace ID)
curl "https://api.selzy.com/en/api/getCampaignCommonStats?format=json&api_key=YOUR_KEY&campaign_id=123456"

Skill Version: 2.0 (Complete)
Last Updated: 2026-02-24
Tested Methods: getLists, getSenderEmails, getCampaigns, getCampaignCommonStats, createEmailMessage, createCampaign, getTemplates

© LeoYeAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files in skills/selzy-api-skill of LeoYeAI/openclaw-master-skills.

  • SKILL.md
  • README.md
  • TEST_CHECKLIST.md
  • _meta.json

Open the folder on GitHubat commit e5199b5

Compare with similar skills

Selzy next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Selzy compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Selzy this skillLeoYeAI/openclaw-master-skills2.2k—~5.2kAutomated safety check: PassMIT
Email Creative Builderaaron-he-zhu/aaron-marketing-skills2.9k2 repos~3.1kAutomated safety check: PassApache-2.0
AI Persuasive Email WriterILoveDotNet/ilovedotnet155—~3kAutomated safety check: PassCC0-1.0
Autoresearchericosiu/ai-marketing-skills3.6k2 repos~2.2kAutomated safety check: PassMIT
14 Email Marketingminhnv0807/ai-business-skills610—~4.7kAutomated safety check: PassMIT
Sales MasteryaAAaqwq/AGI-Super-Team1051 repos~4.5kAutomated safety check: PassMIT

Similar skills

  • Email Creative Builder

    aaron-he-zhu/aaron-marketing-skills

    A skill your agent uses when the user asks to "write the email", "draft subject lines", or "build email creative"; produces the pre-click unit — subject-line variants + preheader, body copy, one…

    2.9k GitHub starsUsed in 2 repos~3.1k tokens
    Marketing & SEOAuto-check passed
  • AI Persuasive Email Writer

    ILoveDotNet/ilovedotnet

    Craft persuasive, goal-driven emails using AI. An agent skill from ILoveDotNet/ilovedotnet.

    155 GitHub stars~3k tokensUpdated 3 days ago
    Marketing & SEOAuto-check passed
  • Autoresearch

    ericosiu/ai-marketing-skills

    Run Karpathy-style autoresearch optimization on any content.

    3.6k GitHub starsUsed in 2 repos~2.2k tokens
    Marketing & SEOAuto-check passed
  • 14 Email Marketing

    minhnv0807/ai-business-skills

    Dung khi can xay chuoi email hoac Zalo OA gui theo kich ban — welcome series, nurture, promotion, win-back: phan tep, luong automation, subject line, tan suat gui, A/B test va KPI open/click.

    610 GitHub stars~4.7k tokensUpdated 27 days ago
    Marketing & SEOAuto-check passed
  • Sales Mastery

    aAAaqwq/AGI-Super-Team

    World-class autonomous sales and revenue skill system. An agent skill from aAAaqwq/AGI-Super-Team.

    105 GitHub starsUsed in 1 repo~4.5k tokens
    Marketing & SEOAuto-check passed
  • Conversion Rate Optimization

    manojbajaj95/claude-gtm-plugin

    Conversion rate optimization for marketing pages and lead-capture forms.

    105 GitHub stars~1.2k tokensUpdated 21 days ago
    Marketing & SEOAuto-check passed

More from LeoYeAI/openclaw-master-skills

All 1,235 skills in this repo
  • DevOps Pipeline Management

    LeoYeAI/openclaw-master-skills

    Manages pipelines on a DevOps quality and efficiency platform through its OpenAPI: list workspaces and templates, create, update, run and cancel pipelines, and read run records.

    2.2k GitHub stars~4.2k tokensUpdated 2 mo ago
    Auto-check: notes
  • Feishu Document Collaboration

    LeoYeAI/openclaw-master-skills

    Patches OpenClaw's Feishu extension so an edited document triggers an isolated agent session that reads the doc and replies inline, turning it into a live chat space.

    2.2k GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed
  • Files Memory System

    LeoYeAI/openclaw-master-skills

    Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.

    2.2k GitHub stars~3.8k tokensUpdated 2 mo ago
    Auto-check passed
  • GEO-Claw AI Visibility Agent

    LeoYeAI/openclaw-master-skills

    Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.

    2.2k GitHub stars~4.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Google Workspace CLI

    LeoYeAI/openclaw-master-skills

    Installs and authenticates the gws CLI, then automates Gmail, Drive, Sheets, Calendar, Docs, Chat and Tasks with ready-made recipes, persona bundles and security audits.

    2.2k GitHub stars~2.6k tokensUpdated 2 mo ago
    Auto-check: notes
  • HealthFit Health Advisors

    LeoYeAI/openclaw-master-skills

    Runs four advisor roles, a fitness coach, nutritionist, data analyst and TCM practitioner, to build a health profile and track workouts, diet and wellness over time.

    2.2k GitHub stars~4.4k tokensUpdated 2 mo ago
    Auto-check passed

Categories

Questions about Selzy

What does Selzy do?

Create and send email marketing campaigns via Selzy API. An agent skill from LeoYeAI/openclaw-master-skills. Selzy is an agent skill from LeoYeAI/openclaw-master-skills. Create and send email marketing campaigns via Selzy API.

When should I use Selzy?

Selzy fits situations like: tasks that involve Email marketing; tasks that involve A/B testing; tasks that involve Rate limiting.

How do I install Selzy in Claude Code?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill selzy -a claude-code`. Or copy the skill folder (skills/selzy-api-skill in LeoYeAI/openclaw-master-skills) into .claude/skills/selzy in your project. Claude Code loads it when a task matches its description.

How do I install Selzy in Codex?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill selzy -a codex`. Or copy the skill folder (skills/selzy-api-skill in LeoYeAI/openclaw-master-skills) into .agents/skills/selzy in your project. Codex loads it when a task matches its description.

Can I use Selzy in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add LeoYeAI/openclaw-master-skills --skill selzy -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/selzy, .gemini/skills/selzy, .github/skills/selzy and .opencode/skills/selzy in your project.

What does Selzy need to run?

Going by SKILL.md and its folder, Selzy needs the command-line tools its instructions call (curl) and credentials named SELZY_API_KEY. Our summary lists: A credential in SELZY_API_KEY.

Does Selzy access the network?

SKILL.md names 2 domains. In commands or code: api.selzy.com; the agent is likely to contact it when it follows the instructions. As links in the text: selzy.com. This is read from the text; nothing was executed.

Is Selzy safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Selzy use?

Selzy is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Selzy use?

About 5.2k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Selzy?

Skills that share tags, products or a category with Selzy: Email Creative Builder (aaron-he-zhu/aaron-marketing-skills, 2.9k stars), AI Persuasive Email Writer (ILoveDotNet/ilovedotnet, 155 stars), Autoresearch (ericosiu/ai-marketing-skills, 3.6k stars) and 14 Email Marketing (minhnv0807/ai-business-skills, 610 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Selzy?

LeoYeAI (a GitHub user) maintains it in LeoYeAI/openclaw-master-skills, which has 2,160 GitHub stars. The repository holds 1,235 skills in this directory. The repository was last updated on July 20, 2026.

Source: LeoYeAI/openclaw-master-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.