Communitygithub.com

AlemTuzlak/skills

Use when the user wants YouTube metadata for a video — a click-worthy title, an SEO/above-the-fold description, tags, and timestamped chapters. Accepts a transcript (ideally timestamped SRT), a topic, a PR, or a freeform description. Used standalone and by /produce-video. Triggers on "youtube title", "youtube description", "youtube chapters", "youtube tags", "youtube metadata", "youtube-copy".

O que é skills?

skills is a Claude Code agent skill that use when the user wants YouTube metadata for a video — a click-worthy title, an SEO/above-the-fold description, tags, and timestamped chapters. Accepts a transcript (ideally timestamped SRT), a topic, a PR, or a freeform description. Used standalone and by /produce-video. Triggers on "youtube title", "youtube description", "youtube chapters", "youtube tags", "youtube metadata", "youtube-copy".

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AlemTuzlak/skills/tree/HEAD/skills/youtube-copy

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

YouTube Copy

Write the four pieces of YouTube metadata that drive clicks and rank: title, description, tags, chapters. Ground everything in the provided source (transcript / topic) — never invent claims the source doesn't support. For chapters you need a timestamped source (SRT or words.json); without timestamps, ask for them or skip chapters.

Output format

Write youtube.md (or print the same structure) exactly like this:

# YouTube

**Title**

<title>

**Description**

<description>

**Tags**

#tag1 #tag2 #tag3 ...

**Chapters**

00:00 - <chapter>
01:15 - <chapter>
...

(When /produce-video calls this skill, write youtube.md into the output folder.)

Writing rule (non-negotiable)

Never use em-dashes (— or –). Use a hyphen - instead. This applies to the title, description, chapter separators, everything.

Title (the single highest-leverage element)

  • 60-70 characters (hard max 100; anything past ~70 truncates on most surfaces).
  • Primary keyword near the front so YouTube and viewers see the topic immediately.
  • Do all three: spark curiosity/emotion (surprise, urgency, FOMO, benefit), include the keyword, and set honest expectations (a title that oversells tanks watch-time and is clickbait — avoid it).
  • Use a number when natural (numbers attract the eye) and emotive/power words ("actually", "finally", "stop", "the right way", "type-safe", "without").
  • Use the audience's real lingo, not generic phrasing.
  • Optional: 1-2 relevant hashtags only if they add discovery; usually skip in the title.
  • Avoid: misleading bait, ALL CAPS spam, profanity, >70 chars.
  • Useful formula starters (pick what fits, don't force): "How to X (without Y)", "The X that Y", "Stop doing X - do this instead", "X explained in N minutes", "I tried X so you don't have to", "N ways to X".

Description

Structure, front-loaded (the first ~100-160 chars show above the fold / in search):

  1. Hook (first 1-2 sentences) containing the primary keyword — answer "what is this and why watch it?". Promise the outcome.
  2. A short paragraph (2-4 sentences) expanding what the viewer learns.
  3. Chapters/timestamps (see below) for videos > ~10 min (or whenever there are clear sections).
  4. Optional links/CTA (main link, "watch next", subscribe) - only if the user provided them; don't fabricate URLs.
  5. 2-3 relevant hashtags at the very end.
  • Length: tight and useful, roughly 150-300 words / under ~1000 characters. Write for humans; weave related keywords naturally, never keyword-stuff.

Tags

  • 5-15 tags, comma/space free per tag (no spaces inside a multi-word tag is not required, but keep them clean).
  • Primary keyword/phrase first, then a mix of broad (e.g. react, webdev) and specific (e.g. react router loader data, unstable_useRouteLoaderData).
  • Quality over quantity; all tags must genuinely describe the content. No unrelated/spam tags, no competitor names.
  • Output them prefixed with # in youtube.md for readability (they're entered without # in YouTube's tag box).

Chapters (need a timestamped source)

YouTube's hard rules: first chapter must be 00:00, at least 3 chapters in ascending order, each chapter >= 10 seconds long.

  • First chapter (00:00) answers "why did they click?" - name it the payoff/topic (e.g. "Type-safe loader data", "The final result"), NOT "Intro".
  • Titles: 3-8 words, one clear noun phrase (mobile crops long ones). Replace useless labels ("Intro", "Demo", "Conclusion", "Q&A") with the actual topic of that section.
  • Frequency: roughly every 2-4 minutes for tutorials, 5-10 minutes for long-form; aim for 5-15 chapters total, never > ~20.
  • Derive each MM:SS start from the timestamped source (the moment that section actually begins). Use MM:SS (or H:MM:SS past an hour). Separator is - (a hyphen), never an em-dash.

Process

  1. Read the source. If it's an SRT/words.json, use the timestamps for chapters; if it's plain text or a topic, write title/description/tags and note that chapters need a timestamped source.
  2. Identify the primary keyword/topic (what someone would search) and the payoff (why they'd click).
  3. Draft 2-3 title options, pick the strongest against the rules above, then write description, tags, chapters.
  4. Self-check: title <= 70 chars and keyword-forward; description hook has the keyword in the first sentence; tags 5-15 and relevant; chapters start at 00:00, ascending, >=3, descriptive; no em-dashes anywhere.

References

Individual skills in this repo

This repo contains 14 individual skills — each has its own dedicated page.

AlemTuzlak/skills

Use when the user wants to write a blog post about a feature, product change, PR, git diff, or any technical topic - accepts marketing briefs, PRs, git refs, codebase paths, or freeform descriptions as input

AlemTuzlak/skills

Use when the user wants to generate a changelog, release notes, or document what changed between versions, tags, or PRs

AlemTuzlak/skills

Use when writing, editing, or organizing documentation, when planning what docs a feature needs, and whenever planning or implementing a new feature or change in a repo (docs ship with the code). Also use when tempted to write docs without showing the discovered readers to the user, without asking for tone, or without loading simple-english and i-have-adhd. Triggers on "write docs for X", "document this feature", "add a guide", "update the docs", "reorganize the docs", "plan feature X", "implement X", or /docs.

AlemTuzlak/skills

Use when a bug is in play: a test fails, CI is red, an API returns the wrong result, a stack trace appears, or the user says it is broken or fix this. Don't use for a new feature with no failure, for types-only work, or for docs.

AlemTuzlak/skills

Use when the user invokes /i-have-adhd, says they have ADHD, or asks for ADHD-friendly output. Also used as a required writing filter by the docs skill. Don't use for marketing copy or after the user says "stop adhd mode" or "normal mode".

AlemTuzlak/skills

Use when a settled change must be turned into an ordered stack of small blocks before anyone implements. Don't use for unsettled intent, typos, comments, formatting, docs-only work, or writing the implementation itself.

AlemTuzlak/skills

Use when the user wants to write a product update email, feature announcement newsletter, or digest email for users or subscribers

AlemTuzlak/skills

Use when the user wants to turn a raw talking-head / screen-share recording into a finished, edited, annotated video plus a full content package. Removes silences, flags mistakes for the user to cut, transcribes, adds transcript-synced overlays (code, on-screen code highlights, word highlights, lists, comparisons, diagrams, section labels, punch-in zooms), renders with original audio, then generates blog/socials/YouTube content. Triggers on "produce a video", "edit my video", "annotate my recording", "/produce-video".

AlemTuzlak/skills

Use when the user runs /prove-it or says prove it, prove the changes, show me in the browser, or asks to prove a UI or API change. Don't use only because the agent is about to say done, for types-only work, or for docs with no behavior to prove.

AlemTuzlak/skills

Use when the user wants to write, draft, or author an RFC (Request for Comments) / technical design doc for a feature, change, or architectural decision. Interactively interviews the user, grounds the proposal in the actual codebase, presents 2-3 concrete API/code-snippet approaches to choose from, then writes a review-ready RFC. Triggers on "write an RFC", "draft an RFC", "RFC for X", "design doc for X", or /rfc.

AlemTuzlak/skills

Use when the user wants to deeply learn a new topic from scratch. Runs a pre-interview (current knowledge, end-goal proficiency, depth, practice load, background, scope), researches online (articles, niche-influencer blogs, canonical docs, subtopic landscape), then produces a structured markdown course with mandatory visual diagrams, evidence-based learning-science features (retrieval practice, spaced callbacks, worked-example fading, concept ledger, jargon gate, analogy hygiene), and a self-contained interactive HTML mini-course. Triggers on /teach-me, "teach me about X", "I want to learn X", "deep dive on X", "create a course on X", "study X with me".

AlemTuzlak/skills

Use when the change intent is already settled and the agent must map what a behavior change touches before an implementation plan or any code. Use for new features, bug fixes, and refactors that move a boundary. Don't use for typos, comments, formatting, lockfile-only diffs, docs with no code, or while the user is still deciding what they want.

AlemTuzlak/skills

Use when the user wants to transcribe a video or audio file to text with word-level timestamps — spins up a self-contained local Whisper (whisper.cpp) Docker service bundled in this skill and returns transcript.txt, transcript.srt, and word-level transcript.words.json. Also used as a building block by /produce-video. Triggers on "transcribe this video", "get a transcript", "transcribe-video".

AlemTuzlak/skills

Use when the user wants to write a video script for a product demo, feature walkthrough, launch video, or social media video about a feature or product change

Habilidades Relacionadas