BC video-subtitle-extractor
Кроссплатформенное извлечение субтитров из видео с использованием многодвижковой ASR (речь в текст). Загружает аудио из URL-адресов видео через yt-dlp, транскрибирует с помощью SenseVoice / whisper.cpp / openai-whisper (по умолчанию: SenseVoice Small для китайского языка) и применяет калибровку текста на основе LLM для китайского финансового/технического контента. Используйте, когда: (1) нужно извлечь субтитры из Bilibili, Xiaohongshu, YouTube или любой платформы, поддерживаемой yt-dlp, (2) у видео нет встроенных субтитров, (3) пользователи говорят "下载字幕", "提取字幕", "语音转文字", "视频转文字", "字幕提取", "ASR转写", (4) нужно транскрибировать аудиофайлы в текст, (5) работаете с китайскоязычным видеоконтентом, требующим высокоточной транскрибации. Автоматически обрабатывает установку зависимостей (ffmpeg, yt-dlp, ASR-бэкенды) и загрузку моделей.
машинный переводПоказать оригиналСкрыть оригинал«Cross-platform video subtitle extraction using multi-engine ASR (speec…»
Cross-platform video subtitle extraction using multi-engine ASR (speech-to-text). Downloads audio from video URLs via yt-dlp, transcribes with SenseVoice / whisper.cpp / openai-whisper (default: SenseVoice Small for Chinese), and applies LLM-based text calibration for Chinese financial/technical content. Use when: (1) extracting subtitles from Bilibili, Xiaohongshu, YouTube, or any yt-dlp-supported platform, (2) the video has no built-in subtitles, (3) users say "下载字幕", "提取字幕", "语音转文字", "视频转文字", "字幕提取", "ASR转写", (4) needing to transcribe audio files to text, (5) working with Chinese-language video content requiring high-accuracy transcription. Automatically handles dependency installation (ffmpeg, yt-dlp, ASR backends) and model downloads.
Кроссплатформенное извлечение субтитров из видео с использованием многодвижковой ASR (речь в текст).
Как процесс C 53/100 · Есть пробелы — слабые места: результат и критерий готовности, когда включается, входы и предусловия
Чем это грозит
Скилл содержит фрагменты, которые в чужих руках стоят денег или данных. Ниже, что рискует потерять тот, кто установит, и что должен сделать автор.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Как улучшить
- Разберите находки высокой серьёзности: каждая стоит 18 баллов безопасности. Если это ложное срабатывание, добавьте код правила в guard.allow в spec.yaml.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 1
-
высокая Утечка данных
intent-browser-credential-storeSKILL.md:91Доступ к хранилищу паролей / cookies браузераyt-dlp --cookies-from-browser chrome <url>
Просканировано файлов: 10. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
✓ По спецификации Agent Skills замечаний нет
Процессный рейтинг: все десять параметров 53/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 30Повторный запуск. Изменяющих операций: 4, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (bash, python), но во frontmatter они не объявлены
- 100Шаги. Шагов: 54
- 100Ошибки и развилки. Развилок: 1, есть раздел про ошибки
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 3939 токенов
- low Ответ описан самодельной разметкой (8 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -223 эмодзи в инструкциях: шум для модели
- +2Инструкции на одном языке
- +3Длина description 749 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 30 заголовков
- +3Пошаговые инструкции: 54 пунктов
- +4Есть примеры (10 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (1 из 2)
- +3Все 5 скриптов описаны в инструкциях
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 90.