Communitygithub.com

metatools2023/pikpak-agent-skills

Tubería completa: descarga con yt-dlp, sube a PikPak, visualiza en línea y limpia local. Reanudable, verificación antes de borrar, soporta listas de URLs. Cubre YouTube, TikTok, X(Twitter), Facebook, Bilibili y más. Compatible con Windows / macOS / Linux.

¿Qué es pikpak-agent-skills?

Este skill implementa una tubería (pipeline) completa para descargar videos con yt-dlp, subirlos automáticamente a PikPak mediante WebDAV, y luego eliminar las copias locales solo después de verificar que la subida fue exitosa. Es ideal para usuarios que quieren ahorrar espacio en disco, procesar lotes de enlaces de plataformas como YouTube, TikTok, X(Twitter), Facebook o Bilibili, y disfrutar del contenido directamente desde la nube. El skill es reanudable: mantiene un estado de progreso en archivos JSON, por lo que si se interrumpe, al reanudar salta los elementos ya completados. Soporta múltiples parámetros, como directorio remoto, directorio de trabajo temporal, número de reintentos de subida, y modo solo simulación (dry-run). Es compatible con Windows, macOS y Linux, y requiere PikPak Premium y yt-dlp instalado. Su uso principal es cuando el usuario desea transferir descargas directamente a la nube, liberando espacio local, o procesar listas de enlaces de redes sociales de forma masiva.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/metatools2023/pikpak-agent-skills/tree/HEAD/skills/pikpak-yt-dlp-pipeline

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Tubería yt-dlp → PikPak / Pipeline de descarga a la nube

Un comando: yt-dlp descarga un video, lo sube a PikPak por WebDAV, lo verifica y luego elimina la copia local.

Promesa de seguridad / Safety promise: Los archivos locales solo se eliminan después de una subida verificada (restricción a nivel de código, cleanup_local solo procesa archivos verificados).

Cobertura de sitios / Site coverage: yt-dlp admite más de 1000 sitios, incluidos YouTube, TikTok, X(Twitter), Facebook, Instagram, Bilibili, Vimeo, etc., justo los casos de uso principales de PikPak para guardar contenido de redes sociales. PikPak ofrece esta funcionalidad solo en su app; esta tubería la lleva al modo por lotes en línea de comandos. Las reglas de sitios como TikTok/X cambian rápidamente; si falla la extracción, prueba primero yt-dlp -U para actualizar.

0. Requisitos previos / Prerequisites

  1. PikPak Premium (WebDAV solo para miembros premium). ¿No tienes cuenta? Comienza con el skill pikpak-onboarding para registrarte. WebDAV requires PikPak Premium. No account? Start with the pikpak-onboarding skill.
  2. yt-dlp: pip install yt-dlp (o winget install yt-dlp).
  3. Python 3.8+ con requests.
  4. Copia webdav.config.json.example como webdav.config.json y completa las credenciales WebDAV (contraseña en texto plano, ya está en git-ignore, no la compartas).

1. Uso / Usage

# Un solo enlace / single URL
python scripts/pipeline.py "https://youtube.com/watch?v=..." --remote-dir my_videos

# Lista por lotes / URL list
python scripts/pipeline.py --url-file urls.txt --remote-dir my_videos

# Simulación (sin descargar ni subir) / dry run
python scripts/pipeline.py --url-file urls.txt --remote-dir my_videos --dry-run

# Conservar copias locales / keep local copies
python scripts/pipeline.py "URL" --remote-dir my_videos --keep-local
Parámetro / ArgumentDescripción / Description
URL... / --url-fileEnlaces compatibles con yt-dlp; en la lista, uno por línea, líneas que comienzan con # son comentarios
--remote-dirCarpeta de destino en PikPak (se crea automáticamente) / remote folder, auto-created
--work-dirDirectorio temporal local para descargas, por defecto scripts/../downloads_tmp
--keep-localConservar archivos locales después de la subida / keep local files after upload
--retryNúmero de reintentos de subida por archivo, por defecto 5
--dry-runSolo imprime el plan de procesamiento / print plan only
--yt-dlp-argsArgumentos adicionales para pasar a yt-dlp, ej. --yt-dlp-args -f best

2. Flujo de trabajo (para explicar al usuario) / How it works

Cuatro pasos por cada URL / four steps per URL:

  1. Descarga yt-dlp → --work-dir (detección de archivos nuevos mediante comparación de instantáneas / new files detected by snapshot)
  2. Subida PUT streaming archivo por archivo → PikPak, verificación de tamaño remoto / streaming PUT + size verify
  3. Limpieza Eliminación de copias locales verificadas (a menos que --keep-local) / verified local copies removed
  4. Registro state/pipeline_<carpeta>.json guarda el estado de cada URL: hecho/fallido → al reanudar, salta los ya completados / resume-safe state

3. Problemas comunes / Gotchas

  • Si yt-dlp no está en PATH, el script falla de inmediato: primero verifica que yt-dlp --version funcione.
  • Ejecutar la misma URL dos veces la salta (estado marcado como hecho); para reprocesar, elimina el registro correspondiente en state/.
  • WebDAV no puede eliminar archivos de la nube permanentemente; para limpiar en la nube usa la app/sitio oficial.
  • Algunos sitios requieren cookies/inicio de sesión; usa --yt-dlp-args --cookies-from-browser chrome para pasar las cookies.
  • Aviso de cumplimiento: Descarga solo contenido que tengas derecho a acceder. Only download content you have the right to access.

4. Skills relacionados / Related skills

  • pikpak-onboarding: ¿Aún no tienes cuenta en PikPak? Empieza desde el registro (incluye guía de instalación de la CLI oficial).
  • pikpak-webdav-upload: ¿Ya tienes descargas locales? Súbelas directamente por lotes.

Skills relacionados