Agent skill
get-youtube-transcript-raw
Capture a YouTube video transcript as raw material using `ytt`, storing it in the raw/ directory with minimal metadata for later distillation.
Install this agent skill to your Project
npx add-skill https://github.com/dudarev/ai-assisted-software-development/tree/main/skills/get-youtube-transcript-raw
SKILL.md
Get YouTube Transcript (Raw)
When to use
Use when you need the raw transcript (plus YouTube title/description) saved to raw/ for later distillation.
Keywords: youtube, transcript, captions, ytt, raw, capture
Inputs
Required:
url(string): YouTube URL (e.g.,https://www.youtube.com/watch?v=...orhttps://youtu.be/...)
Optional:
title_hint(string): Used only ifyttcan’t provide a title.
Outputs
This skill produces:
- A new Markdown file in
raw/namedYYYYMMDD-HHMMSSZ--<slug>.md - YAML front matter aligned with
docs/distillation/distillation-pipeline.md:title(best-effort)source_url(the provided URL)captured_at(UTC ISO timestamp)capture_type: youtube_transcriptcapture_tool: yttraw_format: markdownstatus: captured
- Body content: the raw transcript text emitted by
ytt(no summarization).
On failure in “fetch” mode, the script exits non-zero and does not write a placeholder raw note.
Prerequisites
ytt(this repo’s YouTube transcript utility)python3(used by the bundled script for slugging and safe YAML string escaping)
Quick start
Capture directly (uses ytt fetch --no-copy internally):
./scripts/ytraw "<youtube_url>"
If the current environment can’t access YouTube (common in sandboxes), run ytt locally and pipe:
ytt fetch --no-copy "<youtube_url>" | ./scripts/ytraw
Manual execution (Fallback)
If you encounter persistent issues capturing a transcript within the sandbox (e.g., network restrictions or tool failures), inform the user they can run the script manually on their local machine.
The script ./scripts/ytraw is designed to extract the URL directly from the clipboard if no arguments are provided.
Instructions for the user:
- Copy the YouTube URL to your clipboard.
- Run the following command in your terminal:
bash
./scripts/ytraw - If manual adjustments are required, you can edit the file directly. If you prefer the model to perform adjustments, share the file path or URL with it.
Optional: shell alias (zsh)
Add to ~/.zshrc:
ytraw () { ytt fetch --no-copy "$1" | /path/to/repo/scripts/ytraw --from-stdin }
References
- Pipeline and front matter schema:
docs/distillation/distillation-pipeline.md
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
weekly-youtube-picks
Create or update the weekly YouTube picks note in notes/ — mining distilled notes for insights, sanitizing video titles, writing tight editorial copy, and linking to published notes.
youtube-history-markdown-triage
Given pasted Markdown of YouTube watch history, triage which videos are worth distilling for this AI-assisted software development vault, check whether they are already captured in raw/, and propose the top priorities.
make-distilled
Transform raw captured content into distilled knowledge by extracting topics (outline), summary, key points, principles, patterns, entities, and quotes, storing the result in the distilled/ directory.
get-web-page-raw
Capture a web page as raw material (extracted text/Markdown) with metadata, storing it in the raw/ directory for later distillation.
youtube-search
Search YouTube for recent videos using the python youtube_search library, especially when you need last-7-days results or want to filter by publish time without the YouTube Data API.
plan-incremental-commits
Review a mixed working tree and produce (and optionally execute) a small, logically grouped sequence of incremental git commits.
Didn't find tool you were looking for?