From social-media-creator
Create multi-slide carousel posts for Instagram and social media. Use when the user asks to "create a carousel", "make a swipe post", "design carousel slides", "multi-slide post", "Instagram carousel", or wants a series of connected slides on a topic.
How this skill is triggered — by the user, by Claude, or both
Slash command
/social-media-creator:create-carouselThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Create multi-slide carousel posts using the same HTML→PNG design system as static posts, but with multiple connected slides.
Create multi-slide carousel posts using the same HTML→PNG design system as static posts, but with multiple connected slides.
A typical carousel has 4-10 slides:
All slides in a carousel must share:
ALL text must be clearly readable on mobile. Same rules as static posts:
| Text Role | Size | Weight | Color |
|---|---|---|---|
| Title / Headline | 48–56px | 900 | #ffffff |
| Subtitle / Subheading | 24–28px | 600–700 | rgba(255,255,255,0.8) |
| Body / Detail text | 22–26px | 600 | rgba(255,255,255,0.85) |
| Card text | 20–24px | 500–600 | rgba(255,255,255,0.8) |
| Labels / Slide numbers | 18–20px | 600–700 | rgba(255,255,255,0.75) |
HARD RULES:
Each slide is a separate 1080×1080px HTML file following the same design system as static posts. Use the same SVG icon approach — never emojis.
Render each HTML slide to PNG individually using the same Playwright process:
for (const slideHtml of slideFiles) {
await page.goto(`file://${slideHtml}`, { waitUntil: "networkidle" });
await page.screenshot({ path: `slide${i}.png`, type: "png" });
}
Use media_type=CAROUSEL with the publish-post skill:
-F 'media_type=CAROUSEL' \
-F 'photos[][email protected]' \
-F 'photos[][email protected]' \
-F 'photos[][email protected]' \
Every carousel MUST be organized into its own folder, named by content topic.
outputs/
5-ways-to-validate-idea/
slide-01-cover.html
slide-01-cover.png
slide-02-research.html
slide-02-research.png
...
captions.md
Folder and file naming: Use kebab-case descriptive topic slugs. NEVER use generic names like post15 or carousel_3.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub michalvarys/claude-plugins --plugin social-media-creator