# Video Downloader

> |

- **Type:** Skill
- **Install:** `agentstack add skill-humancto-indic-voice-pipeline-video-downloader`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [humancto](https://agentstack.voostack.com/s/humancto)
- **Installs:** 0
- **Category:** [Content & Media](https://agentstack.voostack.com/c/content-and-media)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [humancto](https://github.com/humancto)
- **Source:** https://github.com/humancto/indic-voice-pipeline/tree/main/skills/video-downloader
- **Website:** https://humancto.github.io/indic-voice-pipeline/

## Install

```sh
agentstack add skill-humancto-indic-voice-pipeline-video-downloader
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Video Downloader

Download videos, audio, and playlists from any URL. Supports 1000+ sites via yt-dlp.

## Prerequisites

Run once to install dependencies:

```bash
pip install yt-dlp --quiet
```

ffmpeg is also required for audio extraction and format merging:

```bash
brew install ffmpeg  # macOS
```

## Step-by-Step Workflow

**For ANY video download request, follow these steps:**

### Step 1: Check dependencies

```bash
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/check_deps.py
```

### Step 2: Determine intent and run the appropriate command

**User wants to download a video:**

```bash
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py download "" --output-dir ~/Downloads
```

**User wants audio only (music, podcast, etc.):**

```bash
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py audio "" --output-dir ~/Downloads --audio-format mp3
```

**User wants a full playlist:**

```bash
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py playlist "" --output-dir ~/Downloads
```

**User wants to see available formats/qualities:**

```bash
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py formats ""
```

**User wants video info without downloading:**

```bash
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py info ""
```

### Step 3: Report results

Tell the user:

- Where the file was saved (full path)
- File size
- Video title and duration
- Any subtitles that were downloaded

## All Commands

```bash
# Download single video (default: best quality up to 1080p, saved to ~/Downloads)
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py download ""

# Download with quality cap
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py download "" --quality 720

# Download with specific format ID (use 'formats' command to find IDs)
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py download "" --format 137

# Download without subtitles
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py download "" --no-subs

# Download to custom directory
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py download "" --output-dir ~/Videos

# Download audio only as MP3
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py audio ""

# Download audio as M4A or Opus
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py audio "" --audio-format m4a
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py audio "" --audio-format opus

# Download entire playlist
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py playlist ""

# List available formats
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py formats ""

# Show video info without downloading
/usr/local/opt/python@3.11/bin/python3.11 ~/.claude/skills/video-downloader/scripts/video_downloader.py info ""
```

## Important Notes

- Default download location is `~/Downloads`
- All output is JSON to stdout, status messages go to stderr
- A `download_meta.json` file is saved alongside each download
- Quality options: 360, 480, 720, 1080, 4k (default: 1080)
- Audio format options: mp3, m4a, opus (default: mp3)
- yt-dlp supports 1000+ sites: YouTube, Vimeo, Twitter/X, TikTok, Instagram, Reddit, Twitch, etc.
- Subtitles are downloaded by default (English, SRT format)
- Playlist videos are numbered with zero-padded index prefix

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [humancto](https://github.com/humancto)
- **Source:** [humancto/indic-voice-pipeline](https://github.com/humancto/indic-voice-pipeline)
- **License:** MIT
- **Homepage:** https://humancto.github.io/indic-voice-pipeline/

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-humancto-indic-voice-pipeline-video-downloader
- Seller: https://agentstack.voostack.com/s/humancto
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
