# Send Downloader tiktok videos to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "downloader-tiktok-videos",
    "name": "Downloader tiktok videos",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/stoxca/downloader-tiktok-videos",
    "canonicalUrl": "https://clawhub.ai/stoxca/downloader-tiktok-videos",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/downloader-tiktok-videos",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=downloader-tiktok-videos",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "download_latest.py",
      "SKILL.md",
      "advanced.md",
      "_meta.json"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/downloader-tiktok-videos"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/downloader-tiktok-videos",
    "downloadUrl": "https://openagent3.xyz/downloads/downloader-tiktok-videos",
    "agentUrl": "https://openagent3.xyz/skills/downloader-tiktok-videos/agent",
    "manifestUrl": "https://openagent3.xyz/skills/downloader-tiktok-videos/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/downloader-tiktok-videos/agent.md"
  }
}
```
## Documentation

### Overview

Downloader TikTok Videos downloads the latest video (or multiple videos) from a public TikTok
account using yt-dlp. Read this documentation fully before writing any code or running commands.

### Prerequisites

This skill requires yt-dlp (and optionally ffmpeg for audio/video merging).

⚠️ The commands below modify your host environment (install packages system-wide).
Run them only if yt-dlp is not already installed and you are comfortable doing so.

pip install -U yt-dlp --break-system-packages   # Linux system Python
# or
pip install -U yt-dlp                           # virtualenv / macOS
yt-dlp --version                                # verify install

### Operation Types

This skill supports four operation types. Determine which one(s) the user needs:

Quick Download — Download the latest video from an account
Bulk Download — Download the N most recent videos
Metadata Only — Retrieve info/stats without downloading the video
Direct Video URL — Download from a specific video URL

### 1. Quick Download — Latest Video from an Account

When to use: User provides a @username or profile URL

Steps:

Normalize the username (strip @ if present)
Build the profile URL: https://www.tiktok.com/@{username}
Fetch metadata for the latest video (--playlist-items 1 --no-download)
Show the user the video info (title, date, duration)
Download with the optimal command
Confirm success and provide the file path

Command:

yt-dlp \\
  --playlist-items 1 \\
  --format "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best" \\
  --merge-output-format mp4 \\
  --output "./%(uploader_id)s_%(upload_date)s_%(id)s.%(ext)s" \\
  "https://www.tiktok.com/@{username}"

Verify the result:

ls -lh ./*.mp4

### 2. Bulk Download — N Most Recent Videos

When to use: User wants multiple videos

Steps:

Ask how many videos (if not specified, default = 5)
Build the command with --playlist-items 1-N
Add --download-archive to avoid duplicates
Download with progress output
List downloaded files

Command:

yt-dlp \\
  --playlist-items 1-{N} \\
  --format "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best" \\
  --merge-output-format mp4 \\
  --download-archive ./tiktok_archive.txt \\
  --output "./%(uploader_id)s/%(upload_date)s_%(id)s.%(ext)s" \\
  "https://www.tiktok.com/@{username}"

### 3. Metadata Only

When to use: User wants video info without downloading

Read: references/metadata.md for all available fields and the full command

Quick command:

yt-dlp \\
  --playlist-items 1 \\
  --skip-download \\
  --write-info-json \\
  --print "%(uploader_id)s | %(upload_date)s | %(duration)ss | %(view_count)s views | %(title)s" \\
  "https://www.tiktok.com/@{username}"

### 4. Direct Video URL

When to use: User provides a direct video URL

Command:

yt-dlp \\
  --format "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best" \\
  --merge-output-format mp4 \\
  --output "./%(uploader_id)s_%(id)s.%(ext)s" \\
  "{video_url}"

### Common Errors

ErrorCauseFixHTTP Error 403TikTok rate limitingAdd --sleep-interval 3 --max-sleep-interval 6Unable to extractOutdated yt-dlppip install -U yt-dlp --break-system-packagesPrivate accountPrivate accountUse --cookies-from-browser chrome if logged in ⚠️ exports session cookies — keep them privateNo video formatsGeo-restrictionAdd --geo-bypassSign in requiredRestricted contentProvide cookies via --cookies cookies.txt ⚠️ treat this file like a passwordMerge requires ffmpegffmpeg missingapt-get install ffmpeg -y

⚠️ Cookie security note: Browser cookies exported via --cookies-from-browser or cookies.txt
contain active session tokens. Never share these files, commit them to version control, or pass
them to untrusted scripts. Delete them after use if no longer needed.

### Username Normalization

# Accepts all these formats:
# @myaccount  →  myaccount
# myaccount   →  myaccount
# https://www.tiktok.com/@myaccount  →  myaccount

def normalize(input_str):
    if "tiktok.com/@" in input_str:
        return input_str.split("tiktok.com/@")[-1].split("/")[0]
    return input_str.lstrip("@").strip()

### Reference Files

Load these references as needed:

references/metadata.md

When: Fetching metadata, working with JSON fields
Contains: All available yt-dlp fields, print format examples, JSON export

references/advanced.md

When: Watermark removal, cookies, proxy, custom headers
Contains: Advanced techniques, restriction bypass, full yt-dlp options

KBLICENSE.txt

When: Questions about usage rights or Terms of Service
Contains: Usage conditions, permitted and prohibited uses

### Output Guidelines

Always display metadata before downloading (title, date, duration)
Confirm the downloaded file path
Show the final file size
On error, propose the fix directly

### Example Queries

Quick download:

"Download the latest video from @someaccount"
"Get the latest TikTok post from myaccount"
"Download the last video from https://www.tiktok.com/@user"

Bulk download:

"Download the 5 latest videos from @user"
"Get the last 10 videos from @account"

Metadata:

"Give me the info on the latest video from @user"
"What is the title and date of the last post from @account"

Direct URL:

"Download this TikTok video: https://www.tiktok.com/@user/video/123456"
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: stoxca
- Version: 1.0.4
## Source health
- Status: healthy
- Source download looks usable.
- Yavira can redirect you to the upstream package for this source.
- Health scope: source
- Reason: direct_download_ok
- Checked at: 2026-04-30T16:55:25.780Z
- Expires at: 2026-05-07T16:55:25.780Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/downloader-tiktok-videos)
- [Send to Agent page](https://openagent3.xyz/skills/downloader-tiktok-videos/agent)
- [JSON manifest](https://openagent3.xyz/skills/downloader-tiktok-videos/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/downloader-tiktok-videos/agent.md)
- [Download page](https://openagent3.xyz/downloads/downloader-tiktok-videos)