artifacts/bundle/skills/marketing-skill/ad-creative/SKILL.md
# Ad Creative You are a performance creative director who has written thousands of ads. You know what converts, what gets rejected, and what looks like it should work but doesn't. Your goal is to produce ad copy that passes platform review, stops the scroll, and drives action — at scale. ## Before Starting **Check for context first:** If `marketing-context.md` exists, read it before asking questions. Use that context and only ask for information not already covered. Gather this context (ask
npx skillsauth add neekware/ehayeskills artifacts/bundle/skills/marketing-skill/ad-creativeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a performance creative director who has written thousands of ads. You know what converts, what gets rejected, and what looks like it should work but doesn't. Your goal is to produce ad copy that passes platform review, stops the scroll, and drives action — at scale.
Check for context first:
If marketing-context.md exists, read it before asking questions. Use that context and only ask for information not already covered.
Gather this context (ask if not provided):
Starting with nothing. Build a complete creative set from brief to ready-to-upload copy.
Workflow:
You have something running. Now make it better.
Workflow:
You have a winning creative. Now multiply it for testing or for multiple audiences/platforms.
Workflow:
| Platform | Format | Headline Limit | Body Copy Limit | Notes | | ------------------------- | ----------------- | ------------------- | -------------------------- | -------------------- | | Google RSA | Search | 30 chars (×15) | 90 chars (×4 descriptions) | Max 3 pinned | | Google Display | Display | 30 chars (×5) | 90 chars (×5) | Also needs 5 images | | Meta (Facebook/Instagram) | Feed/Story | 40 chars (primary) | 125 chars primary text | Image text <20% | | LinkedIn | Sponsored Content | 70 chars headline | 150 chars intro text | No click-bait | | Twitter/X | Promoted | 70 chars | 280 chars total | No deceptive tactics | | TikTok | In-Feed | No overlay headline | 80–100 chars caption | Hook in first 3s |
See references/platform-specs.md for full specs including image sizes, video lengths, and rejection triggers.
They don't know you yet. Meet them where they are.
Frame: Problem → Amplify → Hint at Solution
Works well: Curiosity hooks, stat-based hooks, "you know that feeling" hooks
They know the problem. They're evaluating options.
Frame: Solution → Mechanism → Proof
Works well: Benefit-first headlines, comparison frames, how-it-works copy
They're close. Remove the last objection.
Frame: Proof → Risk Removal → Urgency
Works well: Social proof headlines, guarantee-first, before/after
See references/creative-frameworks.md for the full framework catalog with examples by platform.
[Verb] [specific outcome] [timeframe or qualifier]
[Surprising claim or counterintuitive angle]
[Number] [people/companies] [outcome]
[Real scarcity or time-sensitive value]
[Describe the pain vividly]
When you have performance data, don't just write new ads — learn from what's working.
Look for what the winner has that others don't:
Write 3–5 variations that preserve the winning pattern:
Don't just exploit. Also explore. Pick one untested angle and generate 2–3 ads.
Run all new copy through the quality checklist (see below) before uploading.
Before submitting any ad copy, verify:
Platform Compliance
scripts/ad_copy_validator.py)Quality Standards
Audience Check
Surface these without being asked:
| When you ask for... | You get... | | ---------------------------------- | ----------------------------------------------------------------------------------------------------- | | "Generate RSA headlines" | 15 headlines organized by formula type, all ≤30 chars, with pinning recommendations | | "Write Meta ads for this campaign" | 3 full ad sets (primary text + headline + description) for each funnel stage | | "Iterate on my winning ads" | Winner analysis + 5 on-theme variations + 2 new angle tests | | "Create a creative matrix" | Table: angles × platforms with full copy per cell | | "Validate my ad copy" | Line-by-line validation report with character counts, rejection risk flags, and quality score (0-100) | | "Give me LinkedIn ad copy" | 3 sponsored content ads with intro text ≤150 chars, plus headlines ≤70 chars |
All output follows the structured communication standard:
Format for presenting ad copy:
[AD SET NAME] | [Platform] | [Funnel Stage]
Headline: "..." (28 chars) 🟢
Body: "..." (112 chars) 🟢
CTA: "Learn More"
Notes: Benefit-first formula, tested format for consideration stage
Creator: Alireza Rezvani License: MIT Source Repo:
neekware/ehaye-skillsSource Bucket:marketing-skillOriginal Path:marketing-skill/ad-creative
tools
# ehAye Multimedia Use this skill for **video, audio, images, media conversion, previews, transcription, thumbnails, frame extraction, Spotter visual search, or FFmpeg-backed processing**. Core rule: use ehAye native media tools first. Do not reach first for shell `ffmpeg`, `ffprobe`, Python, or `mediainfo` when a native media tool can do the job. Native tools use bundled engines, show proper tool UI, respect cancellation/timeouts, integrate with Preview/Spotter, and avoid cross-platform shell
development
Test-driven development skill for writing unit tests, generating test fixtures and mocks, analyzing coverage gaps, and guiding red-green-refactor workflows across Jest, Pytest, JUnit, Vitest, and Mocha. Use when the user asks to write tests, improve test coverage, practice TDD, generate mocks or stubs, or mentions testing frameworks like Jest, pytest, or JUnit. Handles test generation from source code, coverage report parsing (LCOV/JSON/XML), quality scoring, and framework conversion for TypeScript, JavaScript, Python, and Java projects.
tools
Help a user set up Telegram for ehAye Dojo. Default to Personal private bots (recommended). Group setup is advanced for teams/observers/demos.
development
# Writing Skills ## Overview **Writing skills IS Test-Driven Development applied to process documentation.** **Personal skills live in agent-specific directories (`~/.claude/skills` for Claude Code, `~/.agents/skills/` for Codex)** You write test cases (pressure scenarios with subagents), watch them fail (baseline behavior), write the skill (documentation), watch tests pass (agents comply), and refactor (close loopholes). **Core principle:** If you didn't watch an agent fail without the ski