Gen thumbnail
Skill OpenSIN-AI/OpenSIN-Skills/operations/media/gen-thumbnail
The world's largest open-source AI agent skill library — 280+ skills across 9 knowledge domains + 46 operational actions. Built on alirezarezvani/claude-skills + OpenSIN-AI.
npx -y skills add OpenSIN-AI/OpenSIN-Skills --skill gen-thumbnailAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
If ANY rule is violated the output is INVALID. Regenerate.
SKILL.md
3.9 KB, as published. Nobody here has run it
/gen-thumbnail
Mode: STRICT PRO CREATOR
If ANY rule is violated the output is INVALID. Regenerate.
Core Principle
Thumbnail = Emotion + Curiosity. NOT information. Think like a Click Psychologist, not a Designer.
Architecture
The pipeline uses a 3-layer composite approach:
- Layer 1 (Background): AI generates ONLY a dark cinematic scene with secondary elements (money, laptop, particles). NO face, NO character, NO text.
- Layer 2 (Mascot): The real
assets/mascot.pngis composited onto the left side at ~60-70% of the frame. The mascot IS the face. AI never generates a face. - Layer 3 (Typography): Huge, slanted, multi-weight text with heavy drop shadows is rendered by the compositor. AI never generates text.
Hard Rules (Non-Negotiable)
1. TEXT
- MAX 3 words per thumbnail
- First word = white, huge, top area
- Second word = yellow, even bigger, below first
- Optional subline in smaller green
- Slanted ~5-8 degrees for dynamism
- Heavy black stroke + drop shadow
- MUST be readable at 168x94px (mobile search size)
- ONE text block only, right side of frame
If text is cut, small, or too long → FAIL
2. FACE (MANDATORY)
assets/mascot.pngis ALWAYS the main subject- Composited by code, NEVER generated by AI
- Occupies 60-70% of image, left-dominant
- Subtle glow effect around mascot edges
- AI prompt must say "NO face, NO character, NO person, empty dark left side"
If AI generates a face → FAIL
3. ELEMENT LIMIT
MAX 3 total elements in the AI-generated background:
- ONE object (money stack / laptop with graph / glowing screen)
- ONE effect (floating bills / spark particles / green streaks)
- Dark atmospheric background
If more than 3 → FAIL
4. BACKGROUND
- Simple dark studio / dark gradient ONLY
- Green/cyan neon accents allowed
- NO busy scenes, NO landscapes, NO rooms
- EACH variation must use DIFFERENT background mood
5. SAFE AREA
- All important elements inside center 80%
- NOTHING important near edges
- Bottom-right reserved for YouTube timestamp
6. A/B TEST (CRITICAL)
Generate EXACTLY 2 variations. They MUST be fundamentally different:
Variation A (MINIMAL):
- Fewer background elements
- Clean dark space
- Question-style text ("REPLACED?" / "OBSOLET?")
Variation B (DRAMATIC):
- Explosive particles, flying money
- Intense neon glow
- Statement-style text ("KILLS AI" / "ZERSTÖRT SIE")
If A and B look similar → FAIL
7. FORBIDDEN
- Human faces or generic masked characters in AI generation
- Small text or multiple text blocks
- Paragraphs or explanations
- Technical diagrams or charts
- More than 3 visual elements in background
- Clutter of any kind
- Text generated inside the AI image
Execution
node ~/.config/opencode/skills/gen-thumbnail/scripts/generate_thumbnail_pipeline.js "YOUR TOPIC"
Output
outputs/thumbnails/thumbnail_A.png(1920x1080)outputs/thumbnails/thumbnail_B.png(1920x1080)outputs/previews/preview.html(inline base64, works offline)outputs/data/last_run.json
Quality Gate (MANDATORY)
- Understood in less than 1 second?
- Only ONE focus (mascot face)?
- Text readable at mobile size?
- 3 or fewer background elements?
- A and B clearly different?
- Real mascot.png used, not AI face?
If ANY = NO → regenerate
Learning Loop
node ~/.config/opencode/skills/gen-thumbnail/scripts/track_ctr.js A 8.2 5.1 \
--do-more "clean dark background" \
--do-less "clutter" \
--brand-token "green-masked mascot" \
--visual-motif "floating money"
Performance memory stores ONLY short traits (max 5 words each), never full prompts.
Related Skills
- See Skill Catalog for related skills