Перейти к основному содержимому

Youtube Content

Расшифровки YouTube в саммари, треды, блоги.

Метаданные навыка​

ИсточникВстроенный (установлен по умолчанию)
Путьskills/media/youtube-content
Платформыlinux, macos, windows

Справочник: полный SKILL.md​

к сведению

Ниже приведено полное описание навыка, которое VibeOS загружает при его активации. Агент видит эти инструкции, когда навык активен.

Инструмент YouTube Content

Когда использовать​

Используйте, когда пользователь делится ссылкой на YouTube или видео, просит сделать саммари видео, запрашивает расшифровку или хочет извлечь и переформатировать содержимое любого видео с YouTube. Преобразует расшифровки в структурированный контент (главы, саммари, треды, посты для блога).

Извлекайте расшифровки из видео YouTube и конвертируйте их в полезные форматы.

Настройка​

Используйте uv, чтобы зависимость была установлена в то же окружение под управлением VibeOS, которое запускает вспомогательный скрипт:

uv pip install youtube-transcript-api

Вспомогательный скрипт​

SKILL_DIR — это каталог, содержащий данный файл SKILL.md. Скрипт принимает любые стандартные форматы URL YouTube, короткие ссылки (youtu.be), shorts, embeds, live-ссылки или сырой 11-символьный ID видео.

# JSON-вывод с метаданными
uv run python3 SKILL_DIR/scripts/fetch_transcript.py "https://youtube.com/watch?v=VIDEO_ID"

# Простой текст (удобно для передачи в дальнейшую обработку)
uv run python3 SKILL_DIR/scripts/fetch_transcript.py "URL" --text-only

# С таймстемпами
uv run python3 SKILL_DIR/scripts/fetch_transcript.py "URL" --timestamps

# Конкретный язык с цепочкой запасных вариантов
uv run python3 SKILL_DIR/scripts/fetch_transcript.py "URL" --language tr,en

Форматы вывода​

После получения расшифровки отформатируйте её в зависимости от запроса пользователя:

  • Главы: группировка по смене темы, вывод списка глав с таймстемпами
  • Саммари: краткий обзор всего видео из 5–10 предложений
  • Саммари по главам: главы с кратким абзацем-резюме для каждой
  • Тред: формат треда Twitter/X — пронумерованные посты, каждый не длиннее 280 символов
  • Пост для блога: полноценная статья с заголовком, разделами и ключевыми выводами
  • Цитаты: примечательные цитаты с таймстемпами

Пример — вывод глав​

00:00 Введение — ведущий начинает с постановки проблемы
03:45 Предыстория — предыдущие работы и почему существующие решения неудовлетворительны
12:20 Основной метод — разбор предлагаемого подхода
24:10 Результаты — сравнение бенчмарков и ключевые выводы
31:55 Вопросы и ответы — вопросы аудитории о масштабируемости и следующих шагах

Рабочий процесс​

  1. Получите расшифровку с помощью вспомогательного скрипта с флагами --text-only --timestamps через uv run python3.
  2. Проверьте: убедитесь, что вывод непустой и на ожидаемом языке. Если пусто, повторите без --language, чтобы получить любую доступную расшифровку. Если всё ещё пусто, сообщите пользователю, что у видео, скорее всего, отключены субтитры.
  3. Разбейте на части при необходимости: если расшифровка превышает ~50 000 символов, разделите на перекрывающиеся части (~40 000 с перекрытием 2000) и сделайте саммари каждой части перед объединением.
  4. Преобразуйте в запрошенный формат вывода. Если пользователь не указал формат, по умолчанию используйте саммари.
  5. Проверьте: перечитайте преобразованный вывод на предмет связности, корректности таймстемпов и полноты перед представлением.

Обработка ошибок​

  • Субтитры отключены: сообщите пользователю; предложите проверить, доступны ли субтитры на странице видео.
  • Приватное/недоступное видео: передайте ошибку и попросите пользователя проверить URL.
  • Нет подходящего языка: повторите без --language, чтобы получить любую доступную расшифровку, затем сообщите пользователю фактический язык.
  • Отсутствует зависимость: выполните uv pip install youtube-transcript-api и повторите попытку.