File contents CLI Reference
Load this when you need full flag details or pipeline composition patterns beyond what
--help provides.
Global Flags
These flags work on any subcommand:
Flag
Purpose
-f json/text
Output format (default: json for search/metadata/channel, text for transcript)
-t <topic>
Topic subdirectory for saved files (default: general)
-d <path>
Override base dir (default: ~/youtube-research, env: YT_RESEARCH_DIR)
--cookies <browser>
Browser cookie auth for age-restricted/private content (chrome, firefox, safari, brave, edge)
-q
Suppress progress messages on stderr
--dry-run
Show yt-dlp command without executing
-b <file> / --batch <file>
Read URLs from file, one per line. Use - for stdin. Not available on search.
--no-color
Disable colored output (also auto-disabled when NO_COLOR is set or stdout is not a TTY)
Environment Variables
Variable
Equivalent flag
YT_RESEARCH_DIR
--dir
YT_RESEARCH_TOPIC
--topic
YT_RESEARCH_COOKIES
--cookies
NO_COLOR
--no-color
Precedence: flags > env vars > defaults.
Exit Codes
Code
Meaning
0
Success
1
Usage error (invalid args, unknown subcommand)
2
yt-dlp not found or incompatible version
3
Network/download error (yt-dlp failed, URL unreachable, private video)
4
No results (search empty, no subtitles available, channel has no videos)
On batch operations: exit 0 if at least one URL succeeded. Exit 3 only if every URL failed.
Pipeline Patterns
Chain subcommands with standard Unix tools for multi-step workflows:
# Search, filter with jq, extract transcripts
python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py search "topic" --count 20 \
| jq -r '.[].url' \
| python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py transcript --batch - --save -t topic
# Filter search results by duration before processing
python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py search "topic" --count 20 \
| jq '[.[] | select(.duration > 300)]' \
| jq -r '.[].url' \
| python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py transcript --batch - --save -t topic
# Channel audit: get all videos, then deep metadata for each
python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py channel "@someone" --limit 100 \
| jq -r '.[].url' \
| python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py metadata --batch - > channel_metadata.json
1 --- 2 name: 428-cli-reference-d6f5e806 3 description: CLI Reference 4 --- 5 # CLI Reference 6 7 Load this when you need full flag details or pipeline composition patterns beyond what 8 `--help` provides. 9 10 ## Global Flags 11 12 These flags work on any subcommand: 13 14 | Flag | Purpose | 15 |------|---------| 16 | `-f json/text` | Output format (default: json for search/metadata/channel, text for transcript) | 17 | `-t <topic>` | Topic subdirectory for saved files (default: general) | 18 | `-d <path>` | Override base dir (default: ~/youtube-research, env: `YT_RESEARCH_DIR`) | 19 | `--cookies <browser>` | Browser cookie auth for age-restricted/private content (chrome, firefox, safari, brave, edge) | 20 | `-q` | Suppress progress messages on stderr | 21 | `--dry-run` | Show yt-dlp command without executing | 22 | `-b <file>` / `--batch <file>` | Read URLs from file, one per line. Use `-` for stdin. Not available on `search`. | 23 | `--no-color` | Disable colored output (also auto-disabled when `NO_COLOR` is set or stdout is not a TTY) | 24 25 ## Environment Variables 26 27 | Variable | Equivalent flag | 28 |----------|-----------------| 29 | `YT_RESEARCH_DIR` | `--dir` | 30 | `YT_RESEARCH_TOPIC` | `--topic` | 31 | `YT_RESEARCH_COOKIES` | `--cookies` | 32 | `NO_COLOR` | `--no-color` | 33 34 Precedence: flags > env vars > defaults. 35 36 ## Exit Codes 37 38 | Code | Meaning | 39 |------|---------| 40 | 0 | Success | 41 | 1 | Usage error (invalid args, unknown subcommand) | 42 | 2 | yt-dlp not found or incompatible version | 43 | 3 | Network/download error (yt-dlp failed, URL unreachable, private video) | 44 | 4 | No results (search empty, no subtitles available, channel has no videos) | 45 46 On batch operations: exit 0 if at least one URL succeeded. Exit 3 only if every URL failed. 47 48 ## Pipeline Patterns 49 50 Chain subcommands with standard Unix tools for multi-step workflows: 51 52 ```bash 53 # Search, filter with jq, extract transcripts 54 python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py search "topic" --count 20 \ 55 | jq -r '.[].url' \ 56 | python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py transcript --batch - --save -t topic 57 58 # Filter search results by duration before processing 59 python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py search "topic" --count 20 \ 60 | jq '[.[] | select(.duration > 300)]' \ 61 | jq -r '.[].url' \ 62 | python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py transcript --batch - --save -t topic 63 64 # Channel audit: get all videos, then deep metadata for each 65 python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py channel "@someone" --limit 100 \ 66 | jq -r '.[].url' \ 67 | python3 ${CLAUDE_PLUGIN_ROOT}/skills/search-youtube/scripts/yt_research.py metadata --batch - > channel_metadata.json 68 ```
tools-only/X-Skills/tree/main/automation/workflow/428-cli-reference_d6f5e806 commit 093ce7ea1d
Frequently asked questions How do I install the 428 CLI Reference D6f5e806 skill? Run npx skillmds@latest add tools-only/428-cli-reference-d6f5e806 in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
What does the 428 CLI Reference D6f5e806 skill do? CLI Reference It is listed under Productivity on SkillMD.
Is 428 CLI Reference D6f5e806 safe to use? This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
Which AI agents work with 428 CLI Reference D6f5e806? This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Is 428 CLI Reference D6f5e806 free to use? Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
Who published 428 CLI Reference D6f5e806? tools-only (@tools-only) published this skill. Their other Agent Skills are listed on their SkillMD profile.