video-download-faas

Download videos in MP4 format using yt-dlp with FaaS (Firecracker/Container) isolation. Start downloads, check status, and kill processes. Videos are automatically converted to MP4 format.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "video-download-faas" with this command: npx skills add LAsurvivor/video-download-faas

Video Download FaaS

Download videos asynchronously using yt-dlp in isolated background processes. All downloads are saved as MP4 files.

Overview

This skill manages video downloads as background tasks that:

  • Start immediately and return control to the user
  • Continue running even if the session disconnects
  • Can be monitored for progress
  • Can be terminated when needed

When to Use

Use this skill when:

  • Downloading large videos that take time
  • Processing multiple videos concurrently
  • Running downloads on remote/headless systems
  • Need to continue working while downloading

Quick Start

Start a Download

scripts/download.sh "https://youtube.com/watch?v=..."

Returns immediately with:

  • Session ID
  • Process ID (PID)
  • Log file location

Check Status

# List all active downloads
scripts/check-status.sh

# Check specific download
scripts/check-status.sh video_dl_1234567890_12345

Kill Download

# Graceful stop
scripts/kill-download.sh video_dl_1234567890_12345

# Force kill
scripts/kill-download.sh video_dl_1234567890_12345 --force

Commands

download.sh

Start a video download in background with MP4 output format.

Usage:

download.sh <URL> [output_directory]

Parameters:

  • URL - Video URL to download (required)
  • output_directory - Where to save video (optional, default: ~/Downloads)

Output Format:

  • Downloads are automatically converted to MP4 format
  • Uses best available MP4 video + M4A audio, merged into MP4
  • If source isn't MP4, it will be re-encoded to MP4

Returns:

  • Session ID for tracking
  • PID for process management
  • Paths to log and session files

Example:

scripts/download.sh "https://www.youtube.com/watch?v=dQw4w9WgXcQ" /tmp/videos

check-status.sh

Check download progress and status.

Usage:

# List all sessions
check-status.sh

# Check specific session
check-status.sh <session_id>

Returns:

  • Process status (running/completed)
  • Download progress (if running)
  • Downloaded files (if completed)
  • Error information (if failed)

kill-download.sh

Terminate a running download.

Usage:

kill-download.sh <session_id> [--force]

Parameters:

  • session_id - The session ID from download.sh
  • --force - Use SIGKILL instead of SIGTERM

Session Management

Session files are stored in /tmp/ with format:

  • video_dl_{timestamp}_{pid}.session - Session metadata
  • video_dl_{timestamp}_{pid}.pid - Process ID
  • video_dl_{timestamp}_{pid}.log - Download log

Sessions are automatically cleaned up when:

  • Download completes successfully
  • Process is killed via kill-download.sh

FaaS Integration

For containerized/Firecracker execution:

# Run download in isolated container
./run-in-container.sh scripts/download.sh "URL"

# Check from host
scripts/check-status.sh

Troubleshooting

Download not starting:

  • Check yt-dlp is installed: yt-dlp --version
  • Verify URL is accessible: curl -I "URL"

Process not found:

  • Session may have completed and auto-cleaned
  • Check ~/Downloads for finished files

Permission denied:

  • Ensure scripts are executable: chmod +x scripts/*.sh

Requirements

  • yt-dlp installed and in PATH
  • Bash 4.0+
  • Write access to /tmp and output directory

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Charging Ledger

充电记录账本 - 从截图提取充电信息并记录,支持按周、月查询汇总。**快速暗号**: 充电记录、充电账本、充电汇总。**自然触发**: 记录充电、查询充电费用、充电统计。

Registry SourceRecently Updated
General

qg-skill-sync

从团队 Git 仓库同步最新技能到本机 OpenClaw。支持首次设置、定时自动更新、手动同步和卸载。当用户需要同步技能、设置技能同步、安装或更新团队技能,或提到「技能同步」「同步技能」时使用。

Registry SourceRecently Updated
General

Ad Manager

广告投放管理 - 自动管理广告投放、优化ROI、生成报告。适合:营销人员、电商运营。

Registry SourceRecently Updated