К основному содержанию
скилл CX Codex

scenario-video-editing — скилл для Claude Code: монтаж видео

Скилл для обработки готовых роликов в Scenario через MCP без повторной генерации. Позволяет обрезать клипы, менять цветокоррекцию, накладывать LUT и извлекать кадры.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add scenario-labs/skills --skill scenario-video-editing -a claude-code
Открыть на GitHub

Что делает scenario-video-editing

Скилл направляет задачи редактирования в детерминированные модели инструментов Scenario через MCP вместо дорогостоящей генерации с нуля. Видеоэффекты здесь работают как близнецы инструментов для изображений, получая суффикс -video. Доступны цветокоррекция, стилизация через 3D LUT, виньетирование и добавление зернистости.

У моделей разнятся имена полей. Например, обрезка принимает параметр outputFormat, а масштабирование ожидает videoOutputFormat. Видеоинструменты часто выполняются дольше стандартного окна ожидания model_run. Поэтому запуск передаётся с флагом wait=false, после чего статус проверяется через jobs_wait.

Стоимость операций зависит от длительности материала. Разумно сначала обрезать лишние кадры и лишь затем запускать цветокоррекцию. Ролики с прозрачным фоном не экспортируются в MP4: модели удаления фона отдают альфа-канал только в WebM или ProRes 4444 MOV.

Какие задачи решает

  • настроить цветокоррекцию или наложить 3D LUT на готовый ролик
  • нарезать видео на фрагменты по точкам split
  • обрезать хронометраж до нужных временных меток
  • удалить фон и сохранить клип с прозрачностью
  • развернуть воспроизведение клипа задом наперёд

Примеры запросов агенту

  • Обрежь клип по заданным временным границам через model_scenario-video-cut.
  • Примени эффект стилизации 3D LUT к видео в Scenario.
  • Сделай реверс видеоролика с помощью model_reverse-video.

Как установить scenario-video-editing

1Через Skills CLI (Vercel)

npx skills add scenario-labs/skills --skill scenario-video-editing -a claude-code

2Вручную: положить файлы

~/.claude/skills/scenario-video-editing/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/scenario-video-editing/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о scenario-video-editing

Как установить scenario-video-editing в Claude Code?

Выполните команду npx skills add scenario-labs/skills --skill scenario-video-editing -a claude-code.

Что делает скилл scenario-video-editing?

Он передаёт команды монтажа и постобработки в специализированные модели Scenario через MCP. Скилл помогает обрезать клипы, менять цвета, извлекать кадры и удалять фон без повторной генерации.

В каком формате сохраняются видео с вырезанным фоном?

Модели удаления фона в Scenario не поддерживают альфа-канал в контейнере MP4. Прозрачность отдаётся только в форматах WebM или ProRes 4444 MOV.

Исходный текст

SKILL.md · MIT
---
name: scenario-video-editing
description: "Use when editing footage that already exists on Scenario through MCP with a tool model instead of a new generation: 3D LUT grading, color correction, film grain, vignette, blur, sharpen, glow, tint, desaturate, posterize, solarize, cubism, crystallize, oilify, chromatic aberration or dodge and burn on a clip; trimming to a time range, splitting at cut points, reversing, resizing, re-encoding, frame extraction, image sequences, background removal, segmentation masks, subjects as layers."
license: MIT
---

# Scenario Video Editing

## Overview

Every image post-processing effect has a video twin, and each is a `model_run` on a tool model: one
clip in, a few numbers, one clip out. Generating or restyling footage, lipsync, dubbing and
upscaling are `scenario-video`; concatenating, compositing and captioning a cut are
`scenario-video-assembly`; the still-image side is `scenario-image-editing`. Connection and the core
loop: `scenario`. If a sibling skill named here is missing from your available skills, ask the user
to install it (`npx skills add scenario-labs/skills --skill <name>`); unattended, proceed from tool
schemas and flag the gap.

## The twin rule

A video effect's id is the image id with `-video` appended, its file field is `video` rather than
`image`, and the knobs are identical: `model_scenario-postprocessing-lut-video` takes the same
`lutStyle` enum and `lutIntensity` as `model_scenario-postprocessing-lut`. All eighteen have twins,
from blur and color correction through oilify, posterize and vignette.

One twin differs: Dissolve (Video) blends the clip with a still `dissolveImage`, not a second clip;
crossfading two clips is a concat transition.

## Quick reference

| Need                  | Model or query                                                           |
| --------------------- | ------------------------------------------------------------------------ |
| Grade or stylize      | `filters={"tags": ["Post Processing"]}`, plus the effect name as `query` |
| Trim to a range       | `model_scenario-video-cut` (`startTime`, `endTime`)                      |
| Cut into segments     | `model_scenario-video-split` (`cutPoints`; N points give N+1 clips)      |
| Rescale or re-encode  | `model_scenario-resize-video`                                            |
| Play a clip backwards | `model_reverse-video`                                                    |
| Frames out, frames in | `model_scenario-video-to-image-seq`, `model_scenario-image-seq-to-video` |
| Subjects as layers    | `model_scenario-video-layers-extractor`                                  |
| Masks, cutouts        | `recommend` with the need in the user's own words                        |
| Pull the audio track  | `model_scenario-audio-extract`                                           |

Extracted frames carry no index and share one `createdAt`, so their order exists only in the job
row's `assetIds`, and that list has come back out of time order (a confirmed defect at authoring
time). The extractor takes a scalar `video`; every frame is `extractAllFrames: true`, and
`frameInterval` (default 24 at authoring time, about one frame a second on a 24 fps clip) applies
only when that flag is off. Check that the row holds exactly the clip's `nbFrames` ids (`asset_get`
reports it beside `frameRate`; a short row is a dropped frame, which no reordering fixes), then,
before reassembling with `model_scenario-image-seq-to-video` or handing frames on, lay the returned
ids into `model_scenario-grid-maker` in that order (a fixed first-party id: Scenario's single grid
tool; its `images` field takes an array of 1 to 100 ids and ignores a bare id while the run still
succeeds, so past 100 frames sheet in batches or raise `frameInterval`; set `columns`, default 3 and
up to 20, so a batch reads as a near-square sheet) and read the sheet against the clip's free
`firstFrame` and `lastFrame` and its motion; a frame that breaks continuity is out of place, and the
corrected order travels as your own id list from then on. Never rebuild order from listings or
timestamps, and a preview that runs backwards on a clean sheet is the assembler's `pingpong` flag,
not the order.

A cutout with transparency never ships as mp4: at authoring time the removal models carried alpha
only as WebM or ProRes 4444 MOV, so read the output-format enum off `model_schema_get` and agree the
container with the user before pricing the run.

Effect lookups go through `search`, `target="models"`, `public=true`. The `model_scenario-` ids are
constants: each is Scenario's single deterministic tool for its operation, so discovery would only
re-derive it. `model_reverse-video` sits outside that set and is an authoring-time hit: re-discover
it by name (`search` `query="video reverse"`).

## Cost follows the clip, so trim first

On the video twins the `video` input carries `cost_impact: true`, which the image versions do not:
price tracks the footage rather than the settings. Trim to the frames that ship, then grade;
`dry_run=true` prices a payload before it runs. Video tools also outlast `model_run`'s wait window,
so launch with `wait=false` and follow with `jobs_wait`, re-calling it with the returned
`pending_job_ids`. A client-side timeout on `jobs_wait` is as harmless as the server's own: re-call
it with the same ids rather than treating the job as lost.

Checking costs nothing: `asset_get` returns `firstFrame` and `lastFrame` as their own asset ids, so
`asset_display` one to confirm a grade before chaining another billable run onto it.

## Field names drift between neighbors

- Video Cut and the effect twins take a scalar `video`. Resize Video takes `video` as an
  `array: true` field capped at one item, where a bare id is dropped silently; its size is `width`
  and `height` in pixels, both optional, and one alone keeps the aspect ratio.
- The output format field is `outputFormat` on cut and split, `videoOutputFormat` on resize.
- `preserveAudio` defaults to true on cut, split and resize; the effects expose no audio field and
  pass the track through.
- Enum values are copied, not retyped: one `lutStyle` string contains a space.
- `asset_download` takes no `format` for a video: it converts image formats only. A GIF from the
  sequence tool is an image asset and takes `format: "gif"`; the `png` default flattens it to one
  frame.

## Resizing is not reframing

No tool model repaints a video's canvas. Resize Video takes `fit`: `contain` (default) fits the clip
inside the target, `stretch` forces the size and distorts, `cover` fills the target and center-crops
the rest. `cover` is the cheap way to an exact ratio when losing the edges is acceptable, but none
of them gives a 16:9 clip a vertical frame with the whole picture kept, so that brief needs a
decision before any spend, between two routes an order of magnitude apart in price.

- **Generative reframe** (`query="reframe"`, Luma Ray 3.2 Reframe and Wan 2.2 Reframe,
  `scenario-video` territory) outpaints past the frame and keeps the whole picture, at by far the
  highest price in such a job. Resolution ceilings bite: a schema can allow a vertical ratio and its
  top resolution tier separately yet reject the pair at run time.
- **Compositor** (Video Studio, cropping or pillarboxing onto a vertical canvas) is cheap but throws
  away width or adds bars, and its layer geometry is `scenario-video-assembly`'s contract rather
  than a one-line setting.

`dry_run` prices a payload without validating it, so either route can bill for a run that fails
outright or returns a mis-composed frame at exactly the right dimensions.

## Worked example: a graded cutdown

Launch every `model_run` below with `wait=false` and retire it with `jobs_wait` before the next step
reads its asset.

1. `asset_get` the master and read `properties.duration` before choosing times.
2. Trim: `model_scenario-video-cut` with `startTime` and `endTime` in seconds. Going first is what
   makes every later step cheaper.
3. Reshape: `model_scenario-resize-video`, `video` as a one-item array, `width` and `height` at the
   delivery size, `videoOutputFormat: "mp4"`. `fit` settles the shape at this step rather than
   later: `cover` lands an exact ratio once the edges are spendable, and a shape that has to keep
   the whole picture is the reframe decision above.
4. Grade: `model_schema_get`, then the LUT twin with `lutIntensity` near 0.6.
5. Texture: `model_schema_get`, then the Grain twin with `grainProfile` (a 22-value enum, default
   `kodak_portra_400` at authoring time) on that output, last, so its grain is sized for the
   delivered frame rather than resampled by a later resize.
6. `asset_display` the result's `firstFrame` to confirm the look, then `asset_download` with no
   `format`.

## Common mistakes

- Grading each source clip and then concatenating: grade the finished master once, or the shots
  drift apart.
- Reaching for local ffmpeg, or for an MCP tool named `video_edit`: the surface is `model_run` on
  tool models.
- Polling `job_get` in a loop instead of `jobs_wait`, whose timeout is not an error.
- Trusting a Grain profile to add grain: the 22 profiles are looks, not intensities, and some soften
  the picture instead. Compare a frame against the input.

© scenario-labs · MIT · scenario-labs/skills

Похожие скиллы

Всё по теме «ИИ и ML» →
video-editing affaan-m Скилл выстраивает пайплайн монтажа реального видео через ИИ. Помогает нарезать сырые записи через FFmpeg, собрать титры в Remotion и добавить озвучку в ElevenLabs. CX Codex +1 6 600установок video-processing-editing curiositech Скилл учит агента резать, склеивать и экспортировать видео командами FFmpeg: субтитры, звук, цветокоррекция, пакетная обработка. CX Codex +1 1 400установок beat-sync-editing iart-ai Планирует точки склеек по BPM, выстраивает темп сцены и описывает переходы или ускорения для монтажной шкалы. CX Codex +1 2 900установок video-inpainting prime-skills Скилл редактирует области на видео через RunComfy: убирает объекты, провода и водяные знаки, сохраняя движение сцены. CX Codex +1 378 200установок beat-sync-video-editing ecliptic-ai Скилл собирает монтаж под ритм трека: выбирает куски видео, режет их по битам и рендерит результат через FFmpeg. CX Codex +1 775установок video-use browser-use Скилл монтирует видео через диалог: расшифровывает речь, режет материал, добавляет субтитры и графические оверлеи. Подходит для роликов, интервью и уроков. CX Codex +1 5 100установок

Из того же набора68

scenario-seedance Направляет генерацию и монтаж видео через модели Seedance от ByteDance в Scenario по протоколу MCP. Помогает задать первый и последний кадры, перенести персонажа или продлить ролик. CX Codex +1 387установок scenario-seedance-music-video Собирает музыкальный клип из трека: раскадровка по секциям, генерация клипов в Seedance и монтаж поверх нетронутого мастера. CX Codex +1 394установок scenario-formats Лестница решений для перевода одного утверждённого мастера в десяток размеров и соотношений сторон через Scenario. Пригодится, когда один арт нужно раскидать по сторис, фидам, баннерам и превью. CX Codex +1 394установок scenario-workflows Скилл для запуска сохранённых Scenario-воркфлоу через MCP: перечисляет приложения, собирает входные данные, считает стоимость прогона. CX Codex +1 391установок scenario-sonilo Генерирует звуковые эффекты и фоновую музыку через модели Sonilo на платформе Scenario. Помогает озвучить немое видео или свести трек с видеорядом. CX Codex +1 380установок scenario-product-shots Делает пакшоты и лайфстайл-кадры из реального фото товара, следя за точностью этикетки, логотипа и формы. Пригодится для карточек на маркетплейсе и лендинга. CX Codex +1 388установок scenario-blender-uv-baking Ведёт агента по развёртке UV и запеканию карт в Blender: швы, плотность текселей, упаковка, UDIM и разбор брака на бейке. CX Codex +1 389установок scenario-video-ads Скилл управляет созданием видеорекламы в Scenario по брифу и фото продукта. Помогает собрать раскадровку, согласовать смету и выпустить ролики для TikTok или YouTube. CX Codex +1 379установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой