Skill detail

buda-youtube-to-script

Turns a YouTube or video URL into a new talking/voiceover script by downloading, transcribing, and rewriting the content.

MatchDirectReviewed for Video Editing
Sourcebuda-ai/​buda-marketplaceExternal source
Reported installs21Popularity signal only

Inspect before use

Automated review checks relevance, not safety or endorsement. Read the source instructions before using this skill.

Saved source preview

SKILL.md

The saved excerpt is a snapshot from review. The external source remains the complete and most current version.

---
name: buda-youtube-to-script
description: >-
  Use this skill whenever the user provides a YouTube or other video URL and
  asks to create, generate, rewrite, repurpose, summarize into, or get a new
  talking script, voiceover script, or short-form video script. Trigger
  strongly when this skill is selected and the user sends only a video URL,
  or on phrases like "get new talking script", "rewrite this video as
  a script", "turn this YouTube video into a voiceover", or when the user
  gives a video URL plus an angle or prompt. This skill is fully
  self-contained — it downloads the source video and audio with
  the bundled yt-dlp helper, transcribes the audio with Whisper, reads the
  bundled assets/talking-script-template.md, then produces a new
  template-based talking script. No other skill needs to be installed.
---

# YouTube to Talking Script

Turn a video URL into a new talking script by downloading the source video and audio, transcribing it, and rewriting the content into the user's requested angle.

This skill is self-contained. It does NOT depend on any separate downloader skill. The yt-dlp download logic ships with this skill at `scripts/download-audio.sh`, and the output template ships at `assets/talking-script-template.md`.

Important default: for Buda demos and script-generation tasks, keep the source video as a user-facing artifact together with the MP3, transcript, and final script.

## Default behavior

Unless the user says otherwise:

- Output language: English
- Script style: short-form talking script suitable for Red Note / TikTok / YouTube Shorts
- Target length: 60–90 seconds
- Rewrite mode: creative repurposing, not a literal translation or transcript summary
- Preserve the source video's core idea, but make the final script natural for a human to speak
- Include a strong 0–3 second hook
- Save all artifacts under `/agent/outputs/talking-scripts/<safe-title-or-id>-<YYYYMMDD-HHMMSS>/`
- By default keep the downloaded source video, MP3 audio, transcript, and final script

## Inputs to extract from the user

Required:

- Video URL

Optional:

- Angle / prompt, for example: `get new talking script`, `for entrepreneurs`, `make it 60 seconds`, `Red Note style`, `focus on how AI tools boost efficiency`
- Target platform
- Target audience
- Target duration
- Output language
- Whether to include timestamps, subtitles, or title ideas

If the user gives only a URL, proceed with the defaults. Do not ask unnecessary clarification questions.

## Workflow

### 1. Prepare a task folder

Create a durable output directory, not scratch files in `/agent` root.

```bash
mkdir -p /agent/outputs/talking-scripts
WORKDIR="/agent/outputs/talking-scripts/$(date +%Y%m%d-%H%M%S)"
mkdir -p "$WORKDIR"
```

If possible, use `yt-dlp --print title` or `yt-dlp --print id` to create a more descriptive folder name. Sanitize names so they are safe as file paths.

### 2. Verify dependencies

```bash
which ffmpeg || echo "ffmpeg missing — install with: brew install ffmpeg"
```

You normally do NOT need to install yt-dlp manually. The bundled download script resolves `yt-dlp` in this order:

1. `yt-dlp` on PATH
2. `/agent/.local/bin/yt-dlp`
3. If still missing, it auto-installs into a dedicated venv at `/agent/.local/venvs/yt-dlp` and symlinks `/agent/.local/bin/yt-dlp` — this persists across sandbox restarts.

Auto-install needs `python3` (or `python`) available, which the Buda sandbox provides by default. `ffmpeg` is required for MP3 extraction and is also preinstalled.

### 3. Download source video and audio with the bundled helper

Keep both source video and MP3 audio as user-facing artifacts. Use the bundled script. Resolve its path against this skill directory:

```text
/space/.agents/skills/buda-youtube-to-script/scripts/download-audio.sh
```

```bash
bash /space/.agents/skills/buda-youtube-to-script/scripts/download-audio.sh \
  -o "$WORKDIR" --video \
  "VIDEO_URL"
```

The helper:

- Saves the source video to `$WORKDIR/video/`
Read the full source on GitHub (opens external page)
Context

Related work