Codex Whiteboard Video Skill
Скилл для Codex рисует на белой доске видео из картинок, SVG и сценариев с 30 готовыми стилями, подбором стиля и озвучкой
- 350 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Движок ставится командой pip install прямо из Git-репозитория другого автора и выполняет локальные скрипты и FFmpeg
- Сценарий и раскадровки уходят в стороннее API генерации картинок и озвучки, если настроены ключи
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/codex-whiteboard-video-skillОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Движок ставится командой pip install прямо из Git-репозитория другого автора и выполняет локальные скрипты и FFmpeg
- Сценарий и раскадровки уходят в стороннее API генерации картинок и озвучки, если настроены ключи
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Скилл подключает Codex к локальному движку whiteboard-video-engine: агент вызывает его из командной строки и получает MP4, где рисунок появляется штрих за штрихом под рукой с пером. Исходником служат фото, плотная иллюстрация, SVG, готовая линейная графика или сценарий в Markdown. Фото и иллюстрации превращаются в линии локально, нейросетями Informative Drawings и Anime2Sketch. Запасного детектора границ в скилле нет: если ни одна из двух моделей не установлена, команды `extract-lineart` и `render-photo` останавливаются с ошибкой. Для сценариев скилл ведет историю по сценам. Цветные раскадровки рисует `gpt-image-2`, линии из этих же кадров выделяет локальная модель, а озвучку делают Doubao Voice 2 или Edge TTS. FFmpeg собирает ролик, а субтитры по умолчанию лежат отдельным файлом SRT. В движке 30 стилей, названных по материалу: от `warm-crayon-storybook` до `blueprint-pencil`. Команда `recommend-styles` показывает подходящие по тексту сценария, а ключ `--style auto` выбирает первый из них без обращения к модели.
Для кого. Авторам обучающих и объясняющих роликов, которые делают видео в стиле рисования на доске через Codex и не хотят платить за облачные конструкторы.
Подходит, если
- Есть иллюстрация или фото, которое надо превратить в 15-секундный ролик, где оно прорисовывается линиями
- Короткий сценарий в Markdown должен стать озвученным роликом с раскадровкой по сценам
- Стиль не выбран, и перед рендером хочется посмотреть пять подходящих вариантов командой `recommend-styles`
- Все линии должны строиться на своей машине, а не уходить на онлайн-сервис векторизации
- Нужен быстрый пробный прогон без ключей: MOCK=1 запускает пример из examples/ten-second-demo.md
Не подходит, если
- Требуется готовый ролик без Python и локальных моделей: скилл только адаптер, рендер выполняет отдельный движок
- Источник состоит из плотной текстуры, черных пятен или слабых контуров, и трассировка штрихов может дать грязный результат
- Нужны другие агенты, а не Codex: скилл написан под CODEX_HOME и каталог ~/.codex/skills
- Видео должно собираться в облаке без локальной установки FFmpeg и нейросетей
Пример запроса к агенту
Преврати эту картинку в 15-секундное рисованное видео на белой доске. Сначала предложи стили для моего сценария story.mdОграничения
- Репозиторий содержит только SKILL.md и обертку whiteboard_cli.py. Движок whiteboard-video-engine ставится отдельно из другого репозитория командой pip install.
- Для линейной графики нужна одна из локальных моделей Informative Drawings или Anime2Sketch. Запасного варианта нет, без моделей команды останавливаются.
- Цветные раскадровки требуют доступа к `gpt-image-2`, озвучка требует Doubao Voice 2 или Edge TTS, сборка идет через FFmpeg.
- Стили делятся на `native`, `adaptive` и `experimental`. Для готовых роликов без присмотра лучше `native`, для `adaptive` сначала делают короткий предпросмотр.
Как отключить. Скилл снимают удалением папки ~/.codex/skills/whiteboard-video. Движок убирает команда `pip uninstall` с именем его пакета.
Частые вопросы
Как поставить скилл whiteboard-video в Codex?
Поставьте движок командой pip install из репозитория whiteboard-video-engine, затем клонируйте этот репозиторий в ~/.codex/skills/whiteboard-video. Команда python3 ~/.codex/skills/whiteboard-video/scripts/whiteboard_cli.py doctor проверит, что обертка видит движок и локальные модели.
Можно ли сделать пробный ролик без ключей API?
Да, запуск с переменной MOCK=1 прогоняет пример из examples/ten-second-demo.md на заглушках провайдеров. Он нужен для проверки сборки на размере 640 на 360, настоящих раскадровок и озвучки при этом нет.
Почему команда `render-photo` завершилась ошибкой про линии?
Ни одна из локальных нейромоделей Informative Drawings или Anime2Sketch не установлена. Грубого запасного детектора границ в скилле нет, поэтому после установки одной из моделей команду нужно запустить снова.
Как выбрать визуальный стиль ролика?
Команда `list-styles` выводит все 30 стилей, `recommend-styles` с файлом сценария и параметром --limit 5 показывает пять подходящих. Ключ --style передают команде `run`, а `render-photo` и `render-image` стиль не принимают.
Что нужно поставить, кроме самого скилла?
Движок whiteboard-video-engine из отдельного репозитория, одну из локальных нейромоделей Informative Drawings или Anime2Sketch и FFmpeg. Для цветных раскадровок нужен доступ к `gpt-image-2`, для озвучки Doubao Voice 2 или Edge TTS.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыСкилл делает из сценария видео, где схемы и подписи рисуются штрихами в момент реплики диктора, а кадры считаются локально.
Скилл превращает текст объяснения в видео: рисунки чертятся от руки, текст пишется по буквам, генераторы картинок не нужны.
Скилл рисует видео кодом: объясняющие ролики с озвучкой и промо-ролики для сайтов в 35 визуальных стилях, 16:9 и 9:16.
Скилл делает 20–60-секундный ролик из вашей озвучки и реальных материалов в выбранном стиле, MP4 собирается локально.
Скилл превращает закадровый текст в 20-секундный пиксельный ролик 1920×1080 с озвучкой и проектом для правок.
Скилл Video by Reference учится стилю у ролика-образца и собирает из кода анимированный короткий фильм с оригинальным саундтреком
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| Codex Whiteboard Video Skill (эта карточка) | нет | 350 | |
| Video Studio Skill | нет | 396 | снимает продукт в браузере и монтирует ролик с главами, а не рисует картинки линиями |
| claude-video-kit | нет | 124 | собирает вертикальный ролик 9:16 на Remotion из сценария |
Коротко о README
README объясняет разделение на два репозитория: движок с рендером и моделями отдельно, скилл со SKILL.md и оберткой отдельно. Дальше показаны установка, проверка командой doctor и пример запроса в Codex. Большая часть текста описывает 30 стилей по уровням совместимости и способы задать свой стиль через JSON с наследованием.
Бейдж для README
Исходный SKILL.md
---
name: whiteboard-video
description: Generate smooth hand-drawn whiteboard and story videos directly inside Codex from text scripts, GPT Image 2 color storyboards, scene plans, SVGs, line art, or local images. Supports 30 built-in visual styles, automatic recommendations, custom media recipes, natural-block coarse/detail drawing with block-local or whole-scene color reveal, local image-to-line-art extraction, stroke/path drawing, hand/pen-tip following, narration/TTS including Doubao Voice 2, and FFmpeg composition.
---
# Whiteboard Video
Use this skill to create local-first whiteboard videos without Canva. This skill is an adapter for the separately installed `whiteboard-video-engine` Python package. Uploaded photos and dense illustrations are converted to line art locally; do not use GPT Image 2 to generate final line art. For script-driven story videos, keep one registered asset pair per scene: GPT Image 2 creates the **color storyboard**, then a local neural extractor derives line art from that exact color file. The preferred stack is:
1. `gpt-image-2` for full-color storyboard frames only, never production line art or embedded captions.
2. `Informative Drawings` local model, preferably `anime_style`, for registered line-art extraction.
3. `Anime2Sketch` local model for illustration/anime-like sources or as the neural fallback.
4. Optional `vtracer` SVG vectorization when installed.
5. Optional Doubao Voice 2 (`seed-tts-2.0`) or Edge TTS for narration. Keep the default sidecar SRT for editing, or explicitly use `--burn-subtitles` for a ready-to-publish subtitled MP4.
There is no edge-detection fallback. If neither neural model is installed, `extract-lineart` and `render-photo` must fail instead of silently producing a weak outline.
## Quick Start
Install the engine before using this skill:
```bash
python3 -m pip install "git+https://github.com/gnipbao/whiteboard-video-engine.git"
```
For local engine development:
```bash
python3 -m pip install -e /path/to/whiteboard-video-engine
```
When the engine is installed in a virtual environment, invoke the wrapper with that environment's Python, or set `WHITEBOARD_ENGINE_PYTHON=/absolute/path/to/venv/bin/python`. The wrapper will re-exec only the explicitly configured interpreter.
Run commands from the project root that contains `tools/lineart`, but always call the installed Skill wrapper by absolute path. The wrapper delegates to the installed engine package while local model wrappers are auto-discovered from the current working directory.
Never call a project-local `whiteboard-video/scripts/whiteboard_cli.py`. Old project copies may prepend a bundled `src` directory and silently shadow the installed engine, causing stale defaults such as the procedural hand cursor to reappear.
```bash
MOCK=1 python3 "${CODEX_HOME:-$HOME/.codex}/skills/whiteboard-video/scripts/whiteboard_cli.py" run examples/ten-second-demo.md -o /tmp/whiteboard-demo.mp4 --scenes 2 --fps 30 --width 640 --height 360 --scene-assets direct-lineart --animation-preset block-speedpaint
python3 "${CODEX_HOME:-$HOME/.codex}/skills/whiteboard-video/scripts/whiteboard_cli.py" extract-lineart photo.png -o lineart.png --provider auto
python3 "${CODEX_HOME:-$HOME/.codex}/skills/whiteboard-video/scripts/whiteboard_cli.py" render-photo photo.png -o /tmp/photo-whiteboard.mp4 --duration 15 --fps 30 --lineart-provider auto --stroke-detail rich --hand asian
python3 "${CODEX_HOME:-$HOME/.codex}/skills/whiteboard-video/scripts/whiteboard_cli.py" render-image lineart.png --source-image photo.png --source-fit exact --size-from-image --color-fill contour-wipe -o /tmp/color-fill-whiteboard.mp4 --duration 15 --fps 30 --tail-color 4.5 --hand asian
python3 "${CODEX_HOME:-$HOME/.codex}/skills/whiteboard-video/scripts/whiteboard_cli.py" render-image examples/apple.svg -o /tmp/apple-whiteboard.mp4 --duration 2 --fps 24 --width 640 --height 360 --hand asian
python3 "${CODEX_HOME:-$HOME/.codex}/skills/whiteboard-video/scripts/whiteboard_cli.py" render-image examples/apple.svg -o /tmp/multiline-text.mp4 --duration 6 --fps 24 --width 720 --height 960 --draw-text-file caption.txt --draw-text-position top --draw-text-align left --draw-text-reveal line-wipe --draw-text-order before --hand none
python3 "${CODEX_HOME:-$HOME/.codex}/skills/whiteboard-video/scripts/whiteboard_cli.py" list-styles