关于 video-shortform
Video Shortform 是用于制作短视频的技能,面向通过文本转视频模型或 hyperframes-html 生成单镜头内容的用户。它指导镜头规划、提示词编写和媒体分发。
主要功能
- 01按单镜头规划短视频
- 02依据项目元数据约束时长和画幅
- 03按模型特点编写生成提示词
- 04通过统一媒体分发器生成视频
- 05提供文件交付和变体建议
适用场景
- 01为短视频模型编写单镜头计划
- 02依据指定画幅和时长生成视频
- 03使用 hyperframes-html 制作动效卡片
- 04将生成的视频保存到项目文件中
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ nexu-io/ open-design --skill video-shortform安装后在 Claude Code 中输入/video-shortform确认已加载。
附带文件example.html
详细介绍
视频短视频技能
短视频(≤ 10s)是当前文生视频模型的最佳时长—— 它们擅长呈现一个镜头和一个创意,但不擅长多剪辑 叙事。每次调用规划一个镜头。
特殊情况:hyperframes-html 不是写实文生视频
模型,而是本地 HTML 转 MP4 渲染器。对于该模型,不要模拟
电影摄影手法或“现实世界”的摄像机物理特性。将需求视为动态
设计卡片/标题画面/产品转场,最多提出一个
澄清问题,然后立即执行。
资源映射
video-shortform/
├── SKILL.md
└── example.html
工作流
步骤 0 — 阅读项目元数据
videoModel、videoLength(秒)、videoAspect。这些是
硬性限制——将提示词限制在所选模型支持的范围内(Seedance 2 最长
10s;Kling 4 支持最长 10s + 图生视频;Veo 3 支持 8s 并带音频)。
步骤 1 — 规划镜头
调用模型之前先写好镜头清单:
| 项目 | 内容 |
|---|---|
| 主体 | 画面中有什么? |
| 摄像机 | 固定/摇摄/推进/环绕? |
| 光线 | 主光方向 + 色温 |
| 动态 | 什么在动、节奏如何?主体运动还是摄像机运动。 |
| 声音 | 环境音底?(仅当模型支持音频时) |
通常,在执行之前先用一句话向用户展示计划——这样他们可以轻松调整方向。
对于 hyperframes-html,用户回答完需求采集表后,跳过执行前的额外说明。将计划整合进实际生成提示词,然后立即执行。
步骤 2 — 编写提示词
使用上游模型偏好的格式(Seedance:运动 + 摄像机 + 氛围;Kling:主体 + 摄像机 + 风格;Veo:主体 + 电影摄影 + 声音)。将项目的 videoAspect 和 videoLength 直接绑定到 API 参数;绝不要将它们写进文字描述。
对于 hyperframes-html,撰写简洁的动态设计需求,而不是追求摄像机真实感的提示词。重点描述主体、布局、配色、动态特征和整体氛围。不要花时间逐条说明环境检查、缺失的辅助文件或“即将执行”的状态更新。
步骤 3 — 通过媒体契约执行
使用统一调度器——不要手动调用供应商 API:
"$OD_NODE_BIN" "$OD_BIN" media generate \
--project "$OD_PROJECT_ID" \
--surface video \
--model "<videoModel from metadata>" \
--aspect "<videoAspect from metadata>" \
--length <videoLength seconds> \
--output "<short-slug>-<seconds>s.mp4" \
--prompt "<assembled shot prompt from Step 2>"
该命令会打印一行 JSON:{"file": {"name": "...", ...}}。
文件字节会写入项目;FileViewer 会自动播放。
步骤 4 — 交付
回复内容包括:镜头摘要、调度器返回的文件名,以及一句用户想要变体时可以尝试的内容。
对于 hyperframes-html,回复要格外简短:渲染了什么、文件名,以及一个具体的变体创意。
硬性规则
- 每轮只处理一个镜头。多镜头时间线应交给 hyperframes/ 交互式视频技能处理,而不是本技能。
- 严格匹配
videoAspect——重新渲染很慢。 - 视频必须保存为文件后才能交付——用户期望能在文件查看器中播放。
- 底层模型失败时(NSFW 筛选器、内容政策、超时),逐字报告错误。不要悄悄重试。
- 除非已经调用
"$OD_NODE_BIN" "$OD_BIN" media generate,否则不要声称渲染已“发送”“开始”或“正在运行”。