captions
Verdict safe, but 1 finding (1 medium), mainly data exfiltration. Most recent scan 2026-02-01.
The 'captions' skill is a straightforward YouTube caption extraction tool with LOW to MEDIUM security risk. It acts as a simple wrapper around the TranscriptAPI.com service using curl commands. The primary concern is the lack of security guidance around API key management - users are instructed to store credentials in plaintext without warnings about exposure risks. The skill has no code execution, no data exfiltration, no prompt injection attempts, and no malicious behavior. The missing optional metadata fields (license, compatibility, allowed-tools) reduce transparency but don't pose security threats. Referenced files (video.py, YouTube.py) appear to be documentation artifacts rather than actual dependencies. Overall, this is a legitimate utility skill that would benefit from improved security documentation around credential handling.
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
Extract closed captions and subtitles from YouTube videos. Use when the user asks for captions, closed captions, CC, accessibility text, or wants to read what was said in a video. Supports timestamps and multiple languages. Great for deaf/HoH accessibility, content review, quoting, and translation.
- Package
- 1 file, 2.5 KB
- SKILL.md
- 273 words, 5 sections
- Code
- None. Instructions only.
- Requires
- env:
TRANSCRIPT_API_KEY - Homepage
- https://transcriptapi.com
SKILL.md covers: Captions · Setup · GET /api/v2/youtube/transcript · Tips · Errors
Findings
MEDIUM API Key Required Without Security Guidance Data Exfiltrationllm
The skill requires TRANSCRIPT_API_KEY environment variable but provides no security guidance on key protection, rotation, or scope limitations. Users are instructed to store the key in ~/.zshenv which persists it in plaintext. No warnings about key exposure risks or best practices for credential management.
SKILL.md
Store: `echo 'export TRANSCRIPT_API_KEY="sk_..."' >> ~/.zshenv && source ~/.zshenv`What is in the package
| File | Kind | Size |
|---|---|---|
SKILL.md | doc | 2.5 KB |
External hosts referenced
transcriptapi.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/captions
- Raw scan result: captions-scan.json
- Badge for your README:
 - Request a re-scan