yt-thumbnail-brief
Turn a YouTube video idea into a designer-ready thumbnail brief: focal subject, face and emotion, a text overlay of 4 words or fewer that the title does not…
Skill by sergebulaev
Chalk Labs
Need help deploying yt-thumbnail-brief?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/sergebulaev-yt-thumbnail-brief
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: testing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/yt-thumbnail-brief
What's inside
- Skill name
yt-thumbnail-brief- Description
- Turn a YouTube video idea into a designer-ready thumbnail brief: focal subject, face and emotion, a text overlay of 4 words or fewer that the title does not repeat, contrast and composition, and 2 to 3 A/B concepts for Test and Compare. Built on 2026 principles (one focal point, legible at 120 pixels, complements the title). Outputs the brief plus the Publora attach step (the image upload itself is out of band). Use to plan a thumbnail. Not for title words (use yt-title-optimizer).
- License
- MIT
- Instructions
- 107 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- brief-template.md · references/
SKILL.md (first lines)
# YouTube Thumbnail Brief
This skill does not generate an image. It writes the brief a human designer (or
an image tool) executes, grounded in what actually drives the click in 2026, and
documents how a custom thumbnail gets attached when you auto-publish.
## When to use
- User says "what should the thumbnail be for this video"
- User wants a brief to hand to a designer or paste into an image generator
- User wants 2 to 3 thumbnail concepts to A/B test
- User is auto-publishing and needs the thumbnail upload steps
## What the brief contains
For each concept the skill outputs:
- **Concept name and the angle** it sells (and how it complements the title).
- **Focal subject:** a face plus the specific emotion, or the object/result.
- **Text overlay:** the exact words (4 or fewer), and where they sit. Never the
same words as the title.
- **Background and contrast:** color, lighting, and how the subject separates.
- **Composition:** rule-of-thirds placement, gaze direction, crop.
- **120-pixel test note:** what must still read when shrunk to mobile size.
## Steps
1. **Gather inputs.** The title (so the thumbnail complements, never repeats it),
the video's payoff and emotional tone, whether there is a face available, the
single most visual moment or result, and long-form vs Short. If a URL is
given, parse it with `lib/url_parser.py`.
2. **Split the load with the title.** Decide what the title already says and make
the thumbnail carry the rest (the face/emotion, the result, the object). List
the split explicitly.
3. **Write 2 to 3 concepts.** Vary one big element between them (face vs object,
text vs no text, color), not five small things, so the A/B test is readable.
Each concept fills the six fields above.
4. **Apply the non-negotiables.** One focal point, a legible real emotion, high
contrast, 4 words or fewer of text, and it must read at 120 px. Flag any
concept that risks failing the shrink test.
5. **Recommend the lead concept** for YouTube's Test & Compare and say why.
6. **Hand off the brief.** The user gives it to a designer or an image tool. This
skill writes words, not pixels.
7. **If auto-publishing, give the upload flow** (see below). Otherwise the user
sets the thumbnail in YouTube Studio.
## The thumbnail flow (auto-publish)
A custom thumbnail cannot be set on `create-post` because the thumbnail upload
needs a `postGroupId` first. The order is:
1. Create the video post as a **draft** (`create-post`, no scheduledTime) ->
returns the `postGroupId`.
2. **Upload the thumbnail image out of band.** Publora requires the thumbnail to
be a tracked media asset from its dedicated YouTube thumbnail endpoint (JPEG
or PNG, max 2 MB, 1280x720 recommended). That upload is **not wired into this
bundle**: do it in the Publora dashboard (or via the dedicated endpoint once
available). The generic `get-upload-url` media flow is not accepted for
thumbnails. The upload returns a `mediaId` and `url`.
3. Attach it: call `update-post` with
`platformSettings.youtube.thumbnail = {mediaId, url}` (the
`lib.PubloraClient.set_thumbnail(post_group_id, media_id=, url=)` helper wraps
this attach step). This is the part the bundle automates.
4. Schedule the post.
So this skill outputs the thumbnail **brief plus the attach instructions**, not a
one-call thumbnail upload. If you do not have a tracked `{mediaId, url}` yet, ship
the video without the custom thumbnail and set it in YouTube Studio.
Constraints: the channel must be **verified**; the apply is **best-effort** (a
rejected thumbnail does not block the video, it just ships without the custom
one); and you cannot change the thumbnail while the post is `processing`.
## Hard rules
Global voice rules: see root `SKILL.md` Voice rules. Additional skill-specific
rules:
- Text overlay is 4 words or fewer, and never repeats the title's words.
- One focal point per concept. Two competing subjects halve the click.
- The emotion on a face must match the video. A shocked face on a calm tutorial
is a broken promise the retention graph punishes.
- Every concept must pass the 120-pixel mobile read test.
- Always produce 2 to 3 concepts, each varying one big element.
## Anti-patterns (skill will refuse)
- Repeating the full title as the thumbnail text.
- A face with a fake exaggerated expression that the video does not earn.
- A busy collage with no single focal point.
- Tiny text or full sentences that vanish at 120 px.
- A thumbnail showing a moment that is not in the video.
- Punctuation in overlay text, em dashes included (a 3-word overlay is read at thumbnail size; it carries words, not clauses).
## Resources
- `../../references/thumbnail-principles.md` - the full design language and the upload flow
- `../../references/algorithm-heuristics.md` - packaging, CTR, Test & Compare
- `references/brief-template.md` - the fill-in brief a designer or image tool can execute
## Related skills
- `yt-title-optimizer` - the other half of the click; build them as a pair
- `yt-hook-scripter` - the spoken open should match the thumbnail's emotion
- `yt-content-planner` - pair titles and thumbnails across a weekFrom sergebulaev/youtube-skills, MIT.
More from sergebulaev/youtube-skills
- 0.673score
yt-title-optimizer
sergebulaev
Write high-CTR YouTube and YouTube Shorts titles under 100 characters using 2026 packaging formulas (curiosity-gap, number, how-I outcome, mistake/loss…
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-community-post-writer
sergebulaev
Write YouTube community-tab posts: text updates, polls, image-caption posts, and questions that drive comments and bring subscribers back between video uploads.
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-content-planner
sergebulaev
Build a weekly YouTube upload plan: long-form vs YouTube Shorts mix, posting cadence, per-slot title and thumbnail pairing, hook angle, community-tab posts…
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-description-writer
sergebulaev
Write a full YouTube video description under 5,000 characters with a first-150-character hook (the only part visible before Show more, and what shows in…
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-hook-scripter
sergebulaev
Script the spoken opening that decides retention: the first 30 seconds of a long-form YouTube video or the first 3 seconds of a YouTube Short.
SkillAFreshness: A★ 69Claude Code +9 - 0.669score
youtube-marketing
sergebulaev
Plan, write, and publish for YouTube and YouTube Shorts.
SkillAFreshness: A★ 69Claude Code +9 - 0.668score
yt-repurposer
sergebulaev
Repurpose off-platform content into a native YouTube surface.
SkillAFreshness: A★ 69Claude Code +9 - 0.668score
yt-audience-insights
sergebulaev
Read your YouTube audience from the comments: pull commenters and top comments on any video, surface recurring questions and themes (content ideas), repeat…
SkillAFreshness: A★ 69Claude Code +9 - 0.668score
yt-channel-optimizer
sergebulaev
Audit and rewrite a YouTube channel end-to-end for 2026: name and @handle, banner (2560x1440 with the 1235x338 mobile/TV safe area), profile picture, About…
SkillAFreshness: A★ 69Claude Code +9
Signals
- Stars
- 69
- Forks
- 17
- Open issues
- 0
- Last commit (this folder)
- Sep 9, 2026 (1 month ago)
- Last release
- Oct 15, 2026 (15 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/sergebulaev/youtube-skills
- Website
- cccrafts.ai
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from sergebulaev
- 0.851score
linkedin-comment-drafter
sergebulaev
Draft a LinkedIn comment on someone else's post from its URL, or reshare (repost) it to your feed with optional commentary.
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-content-planner
sergebulaev
Generate a 7-day LinkedIn content plan from a theme, audience, and pillars.
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-engager-analytics
sergebulaev
Pull the people who liked or commented on any LinkedIn post and segment them by ICP fit (peer / aspirational / prospect / other).
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-hook-extractor
sergebulaev
Reverse-engineer the hook formula from a viral LinkedIn post URL.
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-humanizer
sergebulaev
Remove AI tells from LinkedIn posts/comments: 2026 vocabulary density, reveal bridges, staccato fragments, stacked triads, performed sincerity.
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-post-writer
sergebulaev
Draft a new LinkedIn post from scratch using one of 20 2026 hook formulas (anaphora, R.I.P., time-anchor, curiosity-gap, contrarian, controlled A/B…
SkillAFreshness: A★ 5.1KClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get yt-thumbnail-brief running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
yt-thumbnail-brief skill. Agent Mart. https://agentmart.dev/skills/sergebulaev-yt-thumbnail-brief (last updated 2026-10-24)