youtube-playlist
Verdict safe, but 2 findings (2 medium), mainly data exfiltration. Most recent scan 2026-02-01.
MODERATE RISK - This skill integrates with a third-party commercial API service (transcriptapi.com) and requires users to store API credentials in plaintext shell configuration files. The primary security concerns are: (1) insecure credential storage guidance that could lead to key exposure, (2) undisclosed third-party data transmission that sends user YouTube activity to an external service without explicit consent, (3) missing metadata fields that prevent users from making informed security decisions, and (4) missing referenced files suggesting incomplete packaging. The skill does not contain direct prompt injection, command injection, or data exfiltration code, but the reliance on external services and credential handling practices create meaningful privacy and security risks. The skill would benefit from secure credential management guidance, explicit data privacy disclosures, and complete metadata documentation.
Scanner's overall assessment (LLM analyzer)
Second scanner: NVIDIA SkillSpector
Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.
What this skill does
Browse YouTube playlists and fetch video transcripts. Use when the user shares a playlist link, asks "what's in this playlist", "list playlist videos", "browse playlist content", or wants to work with playlist videos and get their transcripts.
- Package
- 1 file, 3.6 KB
- SKILL.md
- 372 words, 10 sections
- Code
- None. Instructions only.
- Requires
- env:
TRANSCRIPT_API_KEY - Homepage
- https://transcriptapi.com
SKILL.md covers: YouTube Playlist · Setup · GET /api/v2/youtube/playlist/videos — 1 credit/page · First page · Next pages · Workflow: Playlist → Transcripts · 1. List playlist videos · 2. Get transcript from a video in the playlist · Extract playlist ID from URL · Errors
Findings
MEDIUM Hardcoded API Key Requirement Without Validation Data Exfiltrationllm
The skill requires users to store a TRANSCRIPT_API_KEY in their shell environment (~/.zshenv) but provides no validation, sanitization, or secure storage guidance. Users are instructed to echo sensitive credentials directly into shell configuration files, which may be committed to version control or exposed through insecure backups. The skill also transmits this key in Authorization headers to a third-party service (transcriptapi.com) without any verification of the service's legitimacy or security posture.
SKILL.md
Store: `echo 'export TRANSCRIPT_API_KEY="sk_..."' >> ~/.zshenv && source ~/.zshenv`MEDIUM Third-Party Data Transmission Without Consent Mechanism Data Exfiltrationllm
The skill sends user data (playlist IDs, video IDs) to an external third-party service (transcriptapi.com) without implementing any user consent mechanism or data privacy disclosure. Users may not be aware that their YouTube viewing patterns and playlist information are being transmitted to and potentially logged by a third-party API service. This creates a data exposure risk where user behavior and interests could be tracked or monetized without explicit consent.
SKILL.md
curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist_id=PL_PLAYLIST_ID" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"What is in the package
| File | Kind | Size |
|---|---|---|
SKILL.md | doc | 3.6 KB |
External hosts referenced
transcriptapi.com www.youtube.com
Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.
Environment variables referenced
TRANSCRIPT_API_KEY
Package contents recorded 2026-10-22. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.
What we checked
- Static analyzer. Pattern rules over SKILL.md and bundled files: known-bad commands, exfiltration URLs, secrets, obfuscation.
- Behavioral analyzer. Checks what the skill asks the agent to do against what its description claims it does.
- Llm analyzer. A language model reads the skill and reports intent-level issues the rules cannot express.
- Trigger analyzer. Looks for instructions that fire on conditions the user did not ask for.
- Meta analyzer. A second model pass that validates, deduplicates and re-scores the other analyzers' findings.
What we did not check
- Runtime behaviour. The skill was not executed; findings come from reading its files.
- Anything fetched at install or run time, including remote scripts, package dependencies, and URLs the skill tells the agent to open.
- Content the analyzers cannot read: images, binaries, and some non-English text.
- Known scanner bypass classes. See the methodology and limitations page.
Sources
- Repository: https://clawhub.ai/skills/youtube-playlist
- Raw scan result: youtube-playlist-scan.json
- Badge for your README:
 - Request a re-scan