Youtube transcript to skill
Skill az9713/youtube-transcript-to-skills/.claude/skills/youtube-transcript-to-skill
Extract Claude Code skills from AI workflow YouTube transcripts. 10 ready-to-use skills + a meta-skill that automates the extraction process. Built from John Kim's 50 Claude Code tips.
npx -y skills add az9713/youtube-transcript-to-skills --skill youtube-transcript-to-skillAssembled 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.
- 0 stars0 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
Convert a YouTube video transcript into Claude Code skills. Extracts tips, evaluates against selection criteria, and generates SKILL.md files with full transparency.
SKILL.md
7.6 KB, ~1.8k tokens by cl100k_base, as published. Nobody here has run it
YouTube Transcript to Skill
Convert a video transcript (or article) about Claude Code / AI coding tools into reusable skills. Extracts discrete tips, evaluates each against a structured selection framework, and generates SKILL.md files for tips that qualify — with full transparency at every step.
Usage
/youtube-transcript-to-skill path/to/transcript.txt
Supported file types: .txt, .md, .pdf
Procedure
Step 1: Load and Validate Transcript
- If
$ARGUMENTSis empty, ask the user: "Please provide a file path to the transcript (.txt,.md, or.pdf)." - Check the file extension:
- Supported:
.txt,.md,.pdf— proceed - Unsupported: Stop and tell the user: "I can't read
.<ext>files directly. Please convert it to.txt,.md, or.pdffirst, then re-run the skill."
- Supported:
- Read the file using the Read tool. For large PDFs (10+ pages), read in chunks using the
pagesparameter. - Estimate the word count and assess the topic.
- Topic check: If the content is clearly unrelated to Claude Code, AI coding tools, or developer workflows (e.g., a cooking tutorial, a political speech), warn the user:
"This transcript appears to be about [detected topic], not about Claude Code or AI-assisted development workflows. No skills can be extracted. Would you like me to proceed anyway in case I missed something?" If the user says stop, end here. If they say proceed, continue but expect zero skill-worthy tips.
- Show: "Loaded transcript: ~N words from
[filename], appears to be about [topic]."
Step 2: Extract Discrete Tips
- Parse the transcript into individually actionable tips or techniques. A tip is a discrete, specific piece of advice that describes something a developer could DO — not a general observation or opinion.
- Number them sequentially starting from 1.
- For each tip, extract:
- Short name: 3-6 word label (e.g., "Plan before coding", "Auto-format with hooks")
- Description: 1-2 sentences explaining what the tip recommends
- Show the full numbered list to the user.
- If zero tips were extracted, report:
"I couldn't extract any discrete, actionable tips from this transcript. The content appears to be [description]. Tips need to be specific techniques or workflows that Claude could execute. No skills can be generated." Write the analysis report (Step 8) explaining why, then stop.
- Ask: "I found N tips. Any to add, remove, or split?"
- Incorporate the user's feedback before proceeding.
Step 3: Load Selection Criteria
Read the selection criteria reference file bundled with this skill:
.claude/skills/youtube-transcript-to-skill/selection-criteria.md
This contains the full Gate (G1-G4), Value (V1-V4), and Exclusion (E1-E6) framework used for evaluation.
Step 4: Evaluate Each Tip
For EACH extracted tip (show results as you go, not batched at the end):
- Gate G1 — Automatable: Can Claude execute this programmatically? If no, classify as UI/Shortcut and move on.
- Gate G2 — Recurring: Would someone invoke this more than once? If no, classify as One-time.
- Gate G3 — Not built-in: Does Claude Code already do this? If yes, classify as Built-in.
- Gate G4 — Best mechanism: Is a Skill the right mechanism?
- If it should always apply -> classify as CLAUDE.md
- If it must run deterministically on events -> classify as Hook
- If it requires external service connection -> classify as MCP
- Value check: For tips that pass all gates, check V1-V4. At least one must pass. If none pass, note why.
- Exclusion check: Check E1-E6. If any exclusion applies, classify accordingly.
For each tip, show a brief verdict:
"Tip N: [name] — [PASS/FAIL] — [reason]. Category: [category]"
Step 5: Present Classification Summary
- Show a summary table grouping all tips by their classification category:
| Category | Count | Tip Numbers |
|----------------|-------|--------------------|
| Skill-worthy | N | #3, #7, #12, ... |
| UI/Shortcut | N | #1, #6, ... |
| Built-in | N | #4, ... |
| One-time | N | #2, ... |
| Philosophy | N | #8, ... |
| CLAUDE.md | N | #5, ... |
| Hook | N | #9, ... |
| MCP | N | #11, ... |
- For each rejected tip, show the specific gate/exclusion that failed and what mechanism would be better.
- If zero tips are skill-worthy, report:
"I extracted N tips, but none passed the skill selection criteria. Here's why: [summary]. No SKILL.md files will be generated, but the full analysis is saved to [report path]." Write the analysis report (Step 8), then stop.
- Ask: "Any disagreements with this classification?"
- Incorporate feedback before proceeding.
Step 6: Group Tips into Skills
- Examine the skill-worthy tips for natural groupings:
- Shared domain: Tips about the same subsystem or feature area
- Sequential workflow: Tips that form a natural ordered sequence
- Setup + usage: Configuration tip paired with a usage tip
- For each proposed skill, define:
- Skill name (kebab-case)
- Description (one sentence)
- Source tips (which tip numbers it covers)
- Grouping rationale (why these tips belong together)
- Prefer fewer, more capable skills over many tiny ones. A skill with 3-6 steps is ideal.
- Show the grouping to the user.
- Ask: "Should I adjust any groupings?"
- Incorporate feedback before proceeding.
Step 7: Generate Skills
For each proposed skill:
- Generate a complete SKILL.md following project conventions:
- YAML frontmatter with
name,description,disable-model-invocation: true, andargument-hint(if the skill takes input) - H1 title and brief description
## Usagesection with invocation syntax## Proceduresection with numbered steps (### Step N: Name)- Each step should have clear, specific instructions Claude can follow
- YAML frontmatter with
- Show the full generated SKILL.md to the user.
- After showing all generated skills, ask: "Write these skills to disk?"
- If the user wants changes, revise and re-show before writing.
Step 8: Write Output
- Write SKILL.md files to the current project's
.claude/skills/<skill-name>/SKILL.md.- NEVER write to
~/.claude/skills/(user-global scope). - Create the directory if it doesn't exist.
- NEVER write to
- Write the analysis report to the current project's
docs/<video-slug>-analysis.md. Derive the slug from the video title or filename (kebab-case, lowercase). The report contains:
# Transcript Analysis: [Title]
**Source**: [filename]
**Author**: [if known]
**Topic**: [detected topic]
**Tips extracted**: N
**Skills generated**: M
## Extracted Tips
[Numbered list of all tips with short name and description]
## Evaluation Results
[Per-tip evaluation showing gates, values, exclusions, and verdict]
## Classification Summary
[Summary table by category]
## Skill Grouping
[Which tips combined into which skills, with rationale]
## Generated Skills
[List of skills created with file paths]
## Non-Skill Recommendations
[Tips better served by other mechanisms, with specific guidance]
- Show a final summary:
"Done. Extracted N tips, created M skills, redirected K tips to other mechanisms. Analysis report:
docs/[slug]-analysis.md. Skills installed to.claude/skills/(project-local only)."
What ships with it: 1 file
4.5 KB alongside SKILL.md
- selection-criteria.md4.5 KB
Gives 0 of the 12 instructions most video audio skills give in ~1.8k tokens
Counted across 622 of the 795 authors here whose files we hold, read 2026-08-07
- Read individual rule files for detailed explanationsin 21 of 622, across 10 files
- Render final videoin 13 of 622, across 6 files
- Use WAV PCM 16kHz mono audio formatin 12 of 622, across 3 files
- Use this skill when dealing with Remotion codein 11 of 622, across 4 files
- Save generated audio to a WAV filein 11 of 622, across 4 files
- Handle conversion errors gracefullyin 10 of 622, across 6 files
- Add captions to videos alwaysin 10 of 622, across 4 files
- Generate music from text descriptions using MusicGenin 9 of 622, across 2 files
- Do not skip pipeline layersin 9 of 622, across 3 files
- Do not make one tool do everythingin 9 of 622, across 3 files
- Use Azure Document Intelligence for complex PDFsin 9 of 622, across 4 files
- Never ask the user to paste their full API keyin 9 of 622, across 3 files
Said here and by no other author read
- ask for a file path if arguments are empty
- stop on unsupported file types
- warn if content is off-topic
- extract actionable tips from the transcript
- load selection criteria from the reference file
- evaluate each tip against selection criteria
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.