关于 motion-graphics
motion-graphics 是面向 AI 视频制作的技能,负责需求确认、素材研究、视觉参考、质量检查和交付授权。它通过强制门禁控制从调研到独立审片的流程,并要求使用真实素材,避免虚构界面与数据。
主要功能
- 01确认画幅、背景与脚本需求
- 02研究产品并收集真实素材
- 03选择并检查已批准的视觉参考
- 04通过门禁授权构建与交付
- 05要求独立审片和视频验证
适用场景
- 01依据产品资料制作动态视频
- 02为视频选择适合故事机制的参考作品
- 03检查候选视频并在通过授权后交付
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ liamrjohnston/ remotion-motion-graphics-skill --skill motion-graphics安装后在 Claude Code 中输入/motion-graphics确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/logos/claude-mark.svgcursor.svgdeepseek.svggithub.svggoogle-gemini.svglinear.svgnotion.svgplaywright.svgreferences/approved-references.mdlogo-library.mdrejected-patterns.mdresearch-and-assets.mdvisual-critic.mdscripts/promptible-gate.mjstemplates/critic-output.example.json详细介绍
AI 视频动态图形
与 remotion-best-practices 和 cinematic-camera 配合使用。此技能负责需求收集、研究、真实素材、参考选择、视觉质量和交付授权。
严格执行约定
每次构建都必须通过 scripts/promptible-gate.mjs。
常见路径:
- Claude Code:
.claude/skills/motion-graphics/scripts/promptible-gate.mjs - 其他 Agent:
.agents/skills/motion-graphics/scripts/promptible-gate.mjs
在脚本打印 BUILD AUTHORIZED 之前,不要编写合成代码。在脚本打印 DELIVERY AUTHORIZED 之前,不要交付渲染结果。命令失败即必须停止。
阶段 1 — 简洁收集需求
仅询问尚未明确的选项:
- 格式:4:3 Instagram 半屏插入画面(1440×1080)或9:16 Instagram 全屏画面(1080×1920)。仅在用户明确要求时使用 16:9。
- 表面风格:暖色浅色、简洁深色、浅色网格或深色网格。
- 准确的脚本节拍、时长、产品名称、已核实的声明以及提供的素材。
切勿默认使用深色风格。若用户将表面风格选择交由你决定,则使用暖色浅色。
阶段 2 — 研究与真实素材
阅读 references/research-and-assets.md 和 references/logo-library.md。
在构思前,开展最精简且有用的研究:
- 用户提供的素材具有权威性。应原样使用,绝不重绘或替换。
- 对于常见产品,从
assets/logos/中复制合适的捆绑 Logo 到项目中,并保留其来源信息。 - 若未找到,则查看 1–3 个权威页面:官方品牌资料包/主页、官方文档/产品页面,然后是可靠的精选图标来源。
- 优先使用透明 SVG。切勿使用 Logo 截图、搜索结果缩略图、带有棋盘格/灰色背景的图片、非官方重制图,或通过远程链接引用的素材。
- 对于仪表板/产品界面,获取真实的用户提供截图/录屏,或官方公开的产品/文档截图。如果没有,请先询问;不要编造仪表板。
- 研究可见结构、术语、品牌颜色,以及与该节拍相关的确切操作/状态。不要复制缺乏依据的指标、私人信息或声明。
- 将素材和笔记缓存到
.promptible/research/。若产品、来源、素材哈希和参考机制均未变化,则复用缓存。
只选择该节拍所需的视觉模式:logo-system、product-ui、terminal、editorial 或 abstract。不要在每个图形中都强行加入简报、仪表板、终端或复杂的运镜。
使用以下标题编写 .promptible/research-brief.md:
## Product or concept
## Authoritative sources
## Real visual language
## Closest approved mechanism
## Motion plan
## Avoid
然后运行:
node <skill-dir>/scripts/promptible-gate.mjs research \
--project . \
--research-mode authentic \
--visual-mode product-ui \
--product "Slack" \
--reference kickbacks-same-run-editor \
--brief .promptible/research-brief.md \
--source https://slack.com/ \
--logo public/research/slack.svg \
--surface public/research/slack-dashboard.png
对于未命名的概念作品,使用 --research-mode abstract --visual-mode abstract;仍须编写简报并进行已批准参考的对比,但无需开展不必要的网络/Logo 研究。
阶段 3 — 已核实参考的预检
阅读 references/approved-references.md。根据故事机制而非颜色进行选择。可以创作更贴合请求的新概念,但必须明确继承最接近的已批准机制中的摄影机语言、尺度、克制和因果运动。最多组合两种机制。
运行:
node <skill-dir>/scripts/promptible-gate.mjs init \
--project . \
--research .promptible/research-manifest.json \
--format 9:16 \
--background warm-light \
--claim-source user \
--beat "Exact visual idea being supported" \
--duration 6
init 会重新验证研究/素材,使用 SHA-256 校验捆绑的已批准 MP4/联系表,并写入 .promptible/render-brief.json。
检查实际捆绑的 MP4/联系表和经过研究的产品依据。使用以下标题编写 .promptible/reference-observations.md:
## Composition
## Camera
## Identity
## Research match
## Anti-pattern
然后运行:
node <skill-dir>/scripts/promptible-gate.mjs inspect \
--project . \
--observations .promptible/reference-observations.md
只有出现 BUILD AUTHORIZED 后才允许开始实现。
阶段 4 — 构建
使用调研得出的身份定位,以及所选参考作品的因果机制。首次呈现就应显得具体,而不是像等待后续提示来修正的模板。
硬性规则:
- 禁止使用霓虹、辉光、泛光、发光边缘、彩色阴影、渐变光球/光晕、青紫渐变、玻璃拟态、赛博朋克灯光或氛围编码式 AI 风格。
- 不得退而采用通用收据、发票、档案卷宗、剪贴板、浮动卡片、条形码、橡皮图章、证书、价格卡片、伪造仪表板或互不关联的卡片网格。
- 只有在所提供或权威的产品证据支持时,才可采用写实仪表板。忠实复现可见结构;绝不捏造指标、声明、控件或产品状态。
- 不得捏造 UI、徽标、价格、排名、互动数据、序列号或证明材料。
- 不得添加多余的旁白文字。允许使用真实数据、产品 UI、命令、代码、文件名和简短的结构性标签。
- 动画必须展现因果关系、缩放、替换、导航或状态变化。如果徽标切换或真实的 UI 操作能清晰传达这一节拍,动画可以克制。
- 静态居中对象配合逐行出现和缓慢缩放,不算电影化呈现。
- 减少焦点对象的数量,并放大它们。当前操作应居中,在最终显示尺寸下完整可见且清晰可读。
- 深色场景须谨慎选用。深色场景应采用中性炭灰色搭配纯色点缀,绝不使用发光面板。
选定概念前,请阅读 references/rejected-patterns.md。
阶段 5 — 候选版本证据
渲染候选版本。生成三帧联系表和 ffprobe JSON。以六秒为例:
mkdir -p .promptible
ffmpeg -y -hide_banner -loglevel error -i out/candidate.mp4 \
-vf "fps=3/6,scale=480:-1,tile=3x1:padding=12:margin=12:color=white" \
-frames:v 1 .promptible/candidate-contact-sheet.jpg
ffprobe -v error -select_streams v:0 \
-show_entries stream=width,height:format=duration -of json \
out/candidate.mp4 > .promptible/candidate-probe.json
然后运行:
node <skill-dir>/scripts/promptible-gate.mjs candidate \
--project . \
--render out/candidate.mp4 \
--contact-sheet .promptible/candidate-contact-sheet.jpg \
--probe .promptible/candidate-probe.json
阶段 6 — 独立视觉评审
构建者不能为自己的作品打分。启动一个独立、干净的评审器/子 Agent,并提供:
references/visual-critic.md- 调研简报/清单和真实素材
- 选定的已批准 MP4/联系表
- 候选 MP4/联系表
.promptible/render-brief.json
评审器检查实际媒体,并返回符合 templates/critic-output.example.json 格式的 JSON。如果无法进行独立评审,就停止;绝不自行批准。
阶段 7 — 交付审核
node <skill-dir>/scripts/promptible-gate.mjs qa \
--project . \
--critic .promptible/critic.json
审核会拒绝任何硬性失败项、任何低于 8/10 的类别、低于 8.5 的平均分、经过修改/缺失的调研或证据,以及非独立评审。持续修改,直至获得 DELIVERY AUTHORIZED。
技术与交付规则
- 使用
useCurrentFrame()、spring()和interpolate()控制动画;不得使用 CSS 动画。 - 在移动有帮助时,采用静止 → 移动 → 静止的节奏。操作应在静止阶段完成。
- 结尾应保持稳定的编辑器画面。
- 执行类型检查,或运行最精简但有意义的构建验证。
- 只有获得授权后,才交付 MP4,并注明精确尺寸、时长、渲染命令和编辑器放置说明。