Video Download FaaS
Analysis
The downloader mostly matches its stated purpose, but it overstates container isolation and its process-kill helper is not tightly scoped to only its own downloads.
Findings (5)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
Download videos in MP4 format using yt-dlp with FaaS (Firecracker/Container) isolation... ./run-in-container.sh scripts/download.sh "URL"
The documentation presents isolation as part of the skill and references a container wrapper, but the provided manifest does not include run-in-container.sh and the included download script runs yt-dlp directly with nohup.
SESSION_ID="$1" ... PID_FILE="/tmp/${SESSION_ID}.pid" ... PID=$(cat "$PID_FILE") ... kill -9 "$PID"The script builds the PID-file path from caller-controlled input and kills the PID read from that file, without validating that the PID belongs to a yt-dlp process or to a session created by this skill.
nohup yt-dlp ... "$URL" > "$LOG_FILE" 2>&1 &
Downloads are intentionally started as background processes that continue after the command returns; this is disclosed and purpose-aligned, but it is persistent activity the user should track.
Requirements - yt-dlp installed and in PATH - Bash 4.0+ - Write access to /tmp and output directory
The skill depends on local tools, especially yt-dlp, but the registry metadata declares no required binaries and provides no install spec, so dependency provenance and availability are left to the user environment.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
SESSION_FILE="/tmp/${SESSION_NAME}.session" ... "url": "$URL", "output_dir": "$OUTPUT_DIR", "log_file": "$LOG_FILE"The skill writes session metadata, URLs, output paths, and logs into /tmp for later status checks; this is useful for the workflow but creates local retained state.
