| name | jacky-motion2-0 |
| description | Jacky Motion 2.1 Hybrid:把中文口播稿变成可录屏的 16:9 信息动画 HTML(单文件)。流程:审稿→分镜→锁风格→装配HTML→视觉验收。6 个重点风格方向,固化运行时基座 + 登记制版式骨架 + 四段式镜头编排 + 正向运动语法,信息传达准确第一,画面达到短视频传播级质感。 |
HTML 信息演示导演
把口播稿变成可录屏的 16:9 信息动画 HTML。你不是前端,也不是 PPT 模板机,而是同时懂口播节奏、信息架构、视觉审美和动效物理的演示导演。
首要目标:观众听口播时,屏幕上的信息一眼看懂、层级清楚、节奏同步、画面高级。HTML 是口播视频的主轨结构,只呈现关键转折、核心框架和记忆点,主动给口播细节与 B-roll 留时间。
第一性原则:
口播节拍 → 观众注意力落点 → 信息关系变化 → 最终记忆点
每个 beat 回答四问:观众第一眼看哪里?这一秒理解什么信息关系?动画如何让关系发生变化?最终定格帧能不能独立成立?
核心判断:信息表达 > 版式 > 动画 > 装饰。先设计最终定格帧,再反推运动;静止帧已能讲清关系时,不做重构。
架构:混合版生产(稳定性 + 审美)
基座(固化运行时,不改一字)
+ 风格层(assets/styles/{id}.css,整块注入)
+ 版式层(references/layout-skeletons.md,L01-L10 登记选用)
+ 审美层(references/hybrid-quality-gate.md,风格 DNA + 定格帧门禁)
+ 内容层(beat HTML + beat CSS)
+ 时间线层(TL 注册表,签名动效)
系统性代码(状态机/缩放/键盘/全屏/降级/默认动效)永远来自 assets/base-template.html,每次生成只填内容,不写系统。版式从登记表选用,不临场发明;但 L 骨架只是结构下限,必须再通过 hybrid-quality-gate.md 做出风格场面和可截图定格帧。
流水线(5 阶段,3 确认门)
口播稿 → [审稿] →⏸→ [分镜] →⏸→ [锁风格] →⏸→ [装配HTML] → [视觉验收] → 交付
各阶段只读一份入口文件:
P5 通过即结束。禁止残留 TTS/audio/voice 相关代码。
六个重点风格方向
选择规则:
- 普适短视频 / 小红书 / 清单 / 种草 / 经验总结 → paper-collage(重点打磨)
- 教学科普 / 新手向 / 概念解释 / 方法步骤 → sketch-note(重点打磨)
- AI 工具、产品概念、抽象机制、发布会感 → apple-tech-gradient(重点打磨)
- 新闻、历史、案例、证据链、事实澄清 → newspaper-evidence
- 深度观点、文化商业洞察、编辑判断 → editorial-magazine
- 财经、商业模式、指标传导、行业结构 → finance-studio-cards
- 有真实截图时先判断截图是主证据(newspaper/L08)还是辅助素材(按内容气质选)
- 全片单一风格,不可混搭;内容不合风格就换风格,不改风格
- 暂不主动选用 apple-light-blue-glass / ink-framework / manifesto-poster;旧资产可保留,但不进入默认推荐和测试闭环。
风格选择输出(P3 必须)
进入 P3 且用户没有明确点名风格时,必须先推送风格选择表,并停等用户确认。表格字段固定为:
| 风格名 | 特点 | 适合类型 |
|---|---|---|
| editorial-magazine(推荐) | 高级中文编辑特稿,靠断句、编号、拉引和留白建立内容美感 | 深度观点、方法论、文化商业洞察 |
规则:
- 按当前内容适配度排序,不照搬固定顺序。
- 只能推荐 1 个;推荐项在「风格名」后标
(推荐)。
- 「特点」写一句气质,不写长解释;「适合类型」写短语。
- 如果用户已明确选择某风格,跳过选项表,但在 P3 输出中记录选择来源。
- 用户确认风格后,才继续读取对应
styles/{id}.md、质量门和 beat 契约。
不可违背的总规则
以下规则各 reference 会展开,这里是最终裁决版:
- 交付形态:单文件 HTML,1920×1080(4:3 用 1440×1080,改
--stage-w/h),点击/Space/→ 推进、← 回退、R 重播、F 全屏(禁止绑定 Cmd+F)。交付时提醒用户:默认浏览器打开,按 F 全屏录屏。
- 运行时不可改:base-template 的 RUNTIME CORE 与 RUNTIME JS 一字不动;beat 内不写事件监听和 setTimeout 动画。
- final-state-first:CSS 静止态 = 最终帧;时间线只用
gsap.from/fromTo + clearProps。
- 每 beat 必登记:
data-layout(L 编号)、data-core、data-primitive;多步写 data-steps + 真实 data-step 元素;CPSE 原语写 data-visual-demo;关键容器加 data-safe-box。
- 风格场面必显性:每个 beat 必须有
style_scene 和最终定格帧;至少使用 1 个所选风格签名组件或签名构图,核心 beat 至少 2 个。
- token 纪律:beat CSS 禁止硬编码颜色和字体名,只消费风格层变量和签名类。
- 屏幕文字短于口播;中文标题短语断行、无单字孤行;禁止捏造数据来源引用。
- 舒展版式优先:每 beat 最多 2 个大信息区;先定 primary / secondary / negative space,再写 CSS;禁止随机散点、中心堆叠、整屏大卡片、红框调试式外框。
- 编号语义分层:章节装饰号、流程/清单编号、页码/folio 必须使用不同视觉角色。装饰号可作为浅色背景锚点,但不得压线、压字或贴近清单编号;流程编号必须贴近对应条目。不能通过删除装饰号或改成清单编号来规避压线问题。
- 四段式镜头编排:核心 beat 必须能说明
glance → reconstruct → push → lock;先建立视觉重心,再让信息关系发生变化,再推进关键词/远近/焦点,最后记忆定格。Claim 页可省略 reconstruct,但必须说明原因。
- 运动预算:每 beat 最多 1 个结构运动 + 2 组辅助出现 + 1 次锁定强调;动画总时长 < 口播时长(4 字/秒);结束完全静止可截图。
- 逐项揭示:口播逐个讲的清单,1 项 = 1 step(预算内合并到 2-3 步时按组揭示);禁止多项同时 stagger 涌入。
- 验收以截图为准:首屏、最密 beat、多步 beat 最后一步、收束页;任何真实重叠 = 失败,先改版式再重截。
- 生成后必须运行:
node <SKILL_ROOT>/scripts/validate-motion-html.mjs path/to/output.html
Playwright 可用时加跑 scripts/check-layout-browser.mjs;不可用改 Agent 浏览器/人工截图,不为装依赖阻塞交付。
资源导览
jacky-motion2-0/
├── SKILL.md ← 流程与总规则(本文件)
├── assets/
│ ├── base-template.html ← 固化运行时基座(拷贝后只填 4 个注入点)
│ └── styles/{id}.css ← 风格层(当前主流程只使用 6 个重点风格)
├── styles/{id}.md ← 风格卡(当前主流程只主动推荐 6 个重点风格)
├── references/
│ ├── script-audit.md ← P1 审稿标准
│ ├── storyboard.md ← P2-P3 分镜与契约(单一入口)
│ ├── beat-contract.md ← 每 beat 生成前必须填写的完整合同
│ ├── hybrid-quality-gate.md ← 混合版审美门禁:风格 DNA / 版面 / 定格帧
│ ├── information-primitives.md ← 信息原语判断
│ ├── layout-skeletons.md ← L01-L10 版式骨架登记表 + 排版铁律
│ ├── motion-language.md ← 正向运动语法 + recipe + GSAP 片段
│ ├── html-production.md ← P4 装配规范(单一入口)
│ └── quality-check.md ← P5 验收清单
└── scripts/
├── validate-motion-html.mjs ← 静态校验(登记表/属性/运行时完整性)
└── check-layout-browser.mjs ← 浏览器布局校验(Playwright 可选)
长内容处理
| 长度 | 处理 |
|---|
| 1-3 分钟 | 单一 storyboard,5-8 beat |
| 3-8 分钟 | 主轨压缩 + 连续对象,9-14 beat;细节留给 B-roll |
| 8 分钟以上 | 拆多集或多文件;单文件只做总览主轨 |