Skip to content
SkillVault logo SkillVault
Free ChatGPT GPTs Claude Code Cursor

youtube-downloader

Download YouTube videos with customizable quality and format options. Use this skill when the user asks to download, save, or grab YouTube videos. Supports various quality settings (best, 1080p, 720p, 480p, 360p), multiple formats (mp4, webm, mkv), and audio-only downloads as MP3.

0 downloads 0 views Updated Oct 31, 2026 v1.0.0
youtube-downloader skill cover

Overview

Download YouTube videos with customizable quality and format options. Use this skill when the user asks to download, save, or grab YouTube videos. Supports various quality settings (best, 1080p, 720p, 480p, 360p), multiple formats (mp4, webm, mkv), and audio-only downloads as MP3.

Source: https://github.com/ComposioHQ/awesome-claude-skills · APACHE-2.0 · ComposioHQ

System prompt

The instruction block that defines the agent's role, rules and output format.

system-prompt.txt
# YouTube Video Downloader

Download YouTube videos with full control over quality and format settings.

## Quick Start

The simplest way to download a video:

```bash
python scripts/download_video.py "https://www.youtube.com/watch?v=VIDEO_ID"
```

This downloads the video in best available quality as MP4 to `/mnt/user-data/outputs/`.

## Options

### Quality Settings

Use `-q` or `--quality` to specify video quality:

- `best` (default): Highest quality available
- `1080p`: Full HD
- `720p`: HD
- `480p`: Standard definition
- `360p`: Lower quality
- `worst`: Lowest quality available

Example:
```bash
python scripts/download_video.py "URL" -q 720p
```

### Format Options

Use `-f` or `--format` to specify output format (video downloads only):

- `mp4` (default): Most compatible
- `webm`: Modern format
- `mkv`: Matroska container

Example:
```bash
python scripts/download_video.py "URL" -f webm
```

### Audio Only

Use `-a` or `--audio-only` to download only audio as MP3:

```bash
python scripts/download_video.py "URL" -a
```

### Custom Output Directory

Use `-o` or `--output` to specify a different output directory:

```bash
python scripts/download_video.py "URL" -o /path/to/directory
```

## Complete Examples

1. Download video in 1080p as MP4:
```bash
python scripts/download_video.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -q 1080p
```

2. Download audio only as MP3:
```bash
python scripts/download_video.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -a
```

3. Download in 720p as WebM to custom directory:
```bash
python scripts/download_video.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -q 720p -f webm -o /custom/path
```

## How It Works

The skill uses `yt-dlp`, a robust YouTube downloader that:
- Automatically installs itself if not present
- Fetches video information before downloading
- Selects the best available streams matching your criteria
- Merges video and audio streams when needed
- Supports a wide range of YouTube video formats

## Important Notes

- Downloads are saved to `/mnt/user-data/outputs/` by default
- Video filename is automatically generated from the video title
- The script handles installation of yt-dlp automatically
- Only single videos are downloaded (playlists are skipped by default)
- Higher quality videos may take longer to download and use more disk space

User prompt template

Fill in the variables and send it to run the skill: {{variables}}

user-template.txt

Variables

Name Required Description Example

Full skill configuration

The standard .aiskill file in JSON and YAML.

video-downloader.aiskill (JSON)
{
  "format": "aiskill/v1",
  "skill": {
    "name": "youtube-downloader",
    "slug": "video-downloader",
    "version": "1.0.0",
    "description": "Download YouTube videos with customizable quality and format options. Use this skill when the user asks to download, save, or grab YouTube videos. Supports various quality settings (best, 1080p, 720p, 480p, 360p), multiple formats (mp4, webm, mkv), and audio-only downloads as MP3.",
    "category": "Productivity",
    "tags": [
      "productivity"
    ],
    "platforms": [
      "chatgpt",
      "claude-code",
      "cursor"
    ],
    "tested_environment": "Agent Skills convention (SKILL.md) — works with Claude Code, Cursor, ChatGPT/Codex and compatible agents",
    "license": "APACHE-2.0"
  },
  "prompts": {
    "system": "# YouTube Video Downloader\r\n\r\nDownload YouTube videos with full control over quality and format settings.\r\n\r\n## Quick Start\r\n\r\nThe simplest way to download a video:\r\n\r\n```bash\r\npython scripts/download_video.py \"https://www.youtube.com/watch?v=VIDEO_ID\"\r\n```\r\n\r\nThis downloads the video in best available quality as MP4 to `/mnt/user-data/outputs/`.\r\n\r\n## Options\r\n\r\n### Quality Settings\r\n\r\nUse `-q` or `--quality` to specify video quality:\r\n\r\n- `best` (default): Highest quality available\r\n- `1080p`: Full HD\r\n- `720p`: HD\r\n- `480p`: Standard definition\r\n- `360p`: Lower quality\r\n- `worst`: Lowest quality available\r\n\r\nExample:\r\n```bash\r\npython scripts/download_video.py \"URL\" -q 720p\r\n```\r\n\r\n### Format Options\r\n\r\nUse `-f` or `--format` to specify output format (video downloads only):\r\n\r\n- `mp4` (default): Most compatible\r\n- `webm`: Modern format\r\n- `mkv`: Matroska container\r\n\r\nExample:\r\n```bash\r\npython scripts/download_video.py \"URL\" -f webm\r\n```\r\n\r\n### Audio Only\r\n\r\nUse `-a` or `--audio-only` to download only audio as MP3:\r\n\r\n```bash\r\npython scripts/download_video.py \"URL\" -a\r\n```\r\n\r\n### Custom Output Directory\r\n\r\nUse `-o` or `--output` to specify a different output directory:\r\n\r\n```bash\r\npython scripts/download_video.py \"URL\" -o /path/to/directory\r\n```\r\n\r\n## Complete Examples\r\n\r\n1. Download video in 1080p as MP4:\r\n```bash\r\npython scripts/download_video.py \"https://www.youtube.com/watch?v=dQw4w9WgXcQ\" -q 1080p\r\n```\r\n\r\n2. Download audio only as MP3:\r\n```bash\r\npython scripts/download_video.py \"https://www.youtube.com/watch?v=dQw4w9WgXcQ\" -a\r\n```\r\n\r\n3. Download in 720p as WebM to custom directory:\r\n```bash\r\npython scripts/download_video.py \"https://www.youtube.com/watch?v=dQw4w9WgXcQ\" -q 720p -f webm -o /custom/path\r\n```\r\n\r\n## How It Works\r\n\r\nThe skill uses `yt-dlp`, a robust YouTube downloader that:\r\n- Automatically installs itself if not present\r\n- Fetches video information before downloading\r\n- Selects the best available streams matching your criteria\r\n- Merges video and audio streams when needed\r\n- Supports a wide range of YouTube video formats\r\n\r\n## Important Notes\r\n\r\n- Downloads are saved to `/mnt/user-data/outputs/` by default\r\n- Video filename is automatically generated from the video title\r\n- The script handles installation of yt-dlp automatically\r\n- Only single videos are downloaded (playlists are skipped by default)\r\n- Higher quality videos may take longer to download and use more disk space",
    "user_template": ""
  },
  "variables": [],
  "install": {
    "steps": [
      {
        "title": "Download & unzip",
        "detail": "Download the .zip package from SkillVault and unzip it. The video-downloader/ folder contains SKILL.md plus any companion scripts, references and assets."
      },
      {
        "title": "Copy into your agent skills directory",
        "detail": "Move the folder into your agent's skills directory — e.g. ~/.claude/skills/ (Claude Code), .codex/skills/, .cursor/skills/ or your project's .claude/skills/ folder — then restart or reload the session."
      },
      {
        "title": "Use it",
        "detail": "Describe the task in natural language; the agent loads the skill automatically when the request matches the skill description."
      }
    ]
  },
  "usage": {
    "steps": []
  },
  "metadata": {
    "author": "SkillVault",
    "source": "https://skillvault.top/skills/video-downloader",
    "exported_at": "2026-11-03T07:44:34.178Z"
  }
}
video-downloader.aiskill (YAML)
format: aiskill/v1
skill:
  name: youtube-downloader
  slug: video-downloader
  version: 1.0.0
  description: >-
    Download YouTube videos with customizable quality and format options. Use this skill when the
    user asks to download, save, or grab YouTube videos. Supports various quality settings (best,
    1080p, 720p, 480p, 360p), multiple formats (mp4, webm, mkv), and audio-only downloads as MP3.
  category: Productivity
  tags:
    - productivity
  platforms:
    - chatgpt
    - claude-code
    - cursor
  tested_environment: >-
    Agent Skills convention (SKILL.md) — works with Claude Code, Cursor, ChatGPT/Codex and
    compatible agents
  license: APACHE-2.0
prompts:
  system: "# YouTube Video Downloader\r\n\r\nDownload YouTube videos with full control over quality and format settings.\r\n\r\n## Quick Start\r\n\r\nThe simplest way to download a video:\r\n\r\n```bash\r\npython scripts/download_video.py \"https://www.youtube.com/watch?v=VIDEO_ID\"\r\n```\r\n\r\nThis downloads the video in best available quality as MP4 to `/mnt/user-data/outputs/`.\r\n\r\n## Options\r\n\r\n### Quality Settings\r\n\r\nUse `-q` or `--quality` to specify video quality:\r\n\r\n- `best` (default): Highest quality available\r\n- `1080p`: Full HD\r\n- `720p`: HD\r\n- `480p`: Standard definition\r\n- `360p`: Lower quality\r\n- `worst`: Lowest quality available\r\n\r\nExample:\r\n```bash\r\npython scripts/download_video.py \"URL\" -q 720p\r\n```\r\n\r\n### Format Options\r\n\r\nUse `-f` or `--format` to specify output format (video downloads only):\r\n\r\n- `mp4` (default): Most compatible\r\n- `webm`: Modern format\r\n- `mkv`: Matroska container\r\n\r\nExample:\r\n```bash\r\npython scripts/download_video.py \"URL\" -f webm\r\n```\r\n\r\n### Audio Only\r\n\r\nUse `-a` or `--audio-only` to download only audio as MP3:\r\n\r\n```bash\r\npython scripts/download_video.py \"URL\" -a\r\n```\r\n\r\n### Custom Output Directory\r\n\r\nUse `-o` or `--output` to specify a different output directory:\r\n\r\n```bash\r\npython scripts/download_video.py \"URL\" -o /path/to/directory\r\n```\r\n\r\n## Complete Examples\r\n\r\n1. Download video in 1080p as MP4:\r\n```bash\r\npython scripts/download_video.py \"https://www.youtube.com/watch?v=dQw4w9WgXcQ\" -q 1080p\r\n```\r\n\r\n2. Download audio only as MP3:\r\n```bash\r\npython scripts/download_video.py \"https://www.youtube.com/watch?v=dQw4w9WgXcQ\" -a\r\n```\r\n\r\n3. Download in 720p as WebM to custom directory:\r\n```bash\r\npython scripts/download_video.py \"https://www.youtube.com/watch?v=dQw4w9WgXcQ\" -q 720p -f webm -o /custom/path\r\n```\r\n\r\n## How It Works\r\n\r\nThe skill uses `yt-dlp`, a robust YouTube downloader that:\r\n- Automatically installs itself if not present\r\n- Fetches video information before downloading\r\n- Selects the best available streams matching your criteria\r\n- Merges video and audio streams when needed\r\n- Supports a wide range of YouTube video formats\r\n\r\n## Important Notes\r\n\r\n- Downloads are saved to `/mnt/user-data/outputs/` by default\r\n- Video filename is automatically generated from the video title\r\n- The script handles installation of yt-dlp automatically\r\n- Only single videos are downloaded (playlists are skipped by default)\r\n- Higher quality videos may take longer to download and use more disk space"
  user_template: ""
variables: []
install:
  steps:
    - title: Download & unzip
      detail: >-
        Download the .zip package from SkillVault and unzip it. The video-downloader/ folder
        contains SKILL.md plus any companion scripts, references and assets.
    - title: Copy into your agent skills directory
      detail: >-
        Move the folder into your agent's skills directory — e.g. ~/.claude/skills/ (Claude Code),
        .codex/skills/, .cursor/skills/ or your project's .claude/skills/ folder — then restart or
        reload the session.
    - title: Use it
      detail: >-
        Describe the task in natural language; the agent loads the skill automatically when the
        request matches the skill description.
usage:
  steps: []
metadata:
  author: SkillVault
  source: https://skillvault.top/skills/video-downloader
  exported_at: "2026-11-03T07:44:34.178Z"

Installation guide

  1. 1

    Download & unzip

    Download the .zip package from SkillVault and unzip it. The video-downloader/ folder contains SKILL.md plus any companion scripts, references and assets.

  2. 2

    Copy into your agent skills directory

    Move the folder into your agent's skills directory — e.g. ~/.claude/skills/ (Claude Code), .codex/skills/, .cursor/skills/ or your project's .claude/skills/ folder — then restart or reload the session.

  3. 3

    Use it

    Describe the task in natural language; the agent loads the skill automatically when the request matches the skill description.

How to use

Platform compatibility

ChatGPT GPTs

OpenAI

Paste the system prompt into the GPT "Instructions" field and keep the user template as your starter message.

Official docs

Claude Code

Anthropic

Save the exported .aiskill JSON as a skill file in your project or paste the system prompt into CLAUDE.md / a slash-command markdown file.

Official docs

Cursor

Anysphere

Copy the system prompt into .cursor/rules/*.mdc (or Project Rules in Settings) and reference the user template in your agent prompts.

Official docs

Related skills

capture AI agent skill cover
Free
ChatGPT GPTs Claude Code Cursor

capture

Captures and organizes chaotic brain dumps into a structured, actionable system with zero information loss. Use this skill whenever the user says 'capture this', 'brain dump', 'let me dump some ideas', 'I've got a bunch of thoughts', 'here's everything on my mind', 'idea dump', 'let me get this out of my head', 'I need to organize my thoughts', 'here's what I'm thinking', or any variation where someone is unloading a messy stream of ideas, tasks, thoughts, and plans wanting them turned into something coherent. Also trigger when the user pastes or dictates a long, unstructured block of mixed ideas — even without the exact phrase — the intent is the same. Fast-to-action by design: no upfront intake. Output is four sections (Projects/Ideas, Tasks, Connections, How I Can Help) ending with a directive question. Asks at most one mid-organization clarifying question when a single item is genuinely ambiguous between task and project.

#productivity
0 0 v1.0.0
confluence-expert AI agent skill cover
Free
ChatGPT GPTs Claude Code Cursor

confluence-expert

Atlassian Confluence expert for creating and managing spaces, knowledge bases, and documentation. Configures space permissions and hierarchies, creates page templates with macros, sets up documentation taxonomies, designs page layouts, and manages content governance. Use when users need to build or restructure a Confluence space, design page hierarchies with permission structures, author or standardise documentation templates, embed Jira reports in pages, run knowledge base audits, or establish documentation standards and collaborative workflows.

#productivity
0 0 v1.0.0
deep-work AI agent skill cover
Free
ChatGPT GPTs Claude Code Cursor

deep-work

Use when someone wants to plan a deep work day, time-block their calendar or task list, budget or cut shallow work, protect focus hours, track deep-work sessions and streaks, run an end-of-day shutdown ritual, or says "/deep-work" or "/time-block". Classifies tasks deep vs shallow, builds an energy-first time-blocked schedule that refuses deep demand past the 4-hour ceiling, batches shallow work into at most two windows, and logs focus sessions against a weekly target.

#productivity
0 0 v1.0.0