# Case 03943

> Kai YouTube Skill

- Skill: `knownasnaffy/case-03943` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add knownasnaffy/case-03943`
- Raw SKILL.md: https://api.skillmd.com/api/skills/knownasnaffy/case-03943/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: knownasnaffy (https://skillmd.com/u/knownasnaffy)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/knownasnaffy/case-03943

---


# Kai YouTube Skill

Watch YouTube videos by downloading audio and transcribing with Whisper.

## Organization

- **Download folder:** `/home/kai/.openclaw/workspace/kai-yt-videos/`
- **Audio files:** `kai-yt-videos/kai_yt_${VIDEO_ID}.mp3`
- **Transcripts:** `kai-yt-videos/kai_yt_${VIDEO_ID}.txt`

## Workflow

1. **Download audio** using yt-dlp:
```bash
yt-dlp --extract-audio --audio-format mp3 --output "{WORKSPACE}/kai_yt_${VIDEO_ID}.mp3" "<URL>"
```

2. **Transcribe** using Whisper CLI:
```bash
whisper "{WORKSPACE}/kai_yt_${VIDEO_ID}.mp3" --model base --output_format txt --output_dir "{WORKSPACE}"
```

3. **Read transcript** from `{WORKSPACE}/kai_yt_${VIDEO_ID}.txt`

## Requirements

- `yt-dlp` - YouTube audio downloader (brew install yt-dlp)
- `whisper` - OpenAI Whisper CLI (brew install openai-whisper)

## Usage

```bash
bash {baseDir}/scripts/youtube.sh "<YouTube_URL>" [--language <lang>]
```

## Tips

- Each video gets unique files (no caching issues)
- Long videos may take several minutes to transcribe
- Language auto-detected if not specified
- Add `--language <lang>` for specific language (e.g., `--language Spanish`)
- All files organized in `kai-yt-videos/` folder

## Video ID Extraction

Handles both URL formats:
- `https://www.youtube.com/watch?v=VIDEO_ID`
- `https://youtu.be/VIDEO_ID`

